diff --git a/-- 第一次使用需要手动安装插件 --.rar b/-- 第一次使用需要手动安装插件 --.rar new file mode 100644 index 0000000..0eeab5d Binary files /dev/null and b/-- 第一次使用需要手动安装插件 --.rar differ diff --git a/README.md b/README.md index 00e7d2d..6557ec1 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,18 @@ -# we-soui +## 说明 -SoUI 0.5版本占坑 \ No newline at end of file +说明版本:2022年9月12日 + +0.5版本是一个理论上与此前版本的SoUI互不兼容的版本。 + +## 模块 + +- 简化:针对原版函数、运算或功能的简单优化 +- 鸽子:偷懒专用的功能 + +## 关于网易界面UI + +- 目前没有要涉及这个方向的内容 + +``` +By Soul2 For SoUI v0.5.0 +``` \ No newline at end of file diff --git a/WorldEdit.exe b/WorldEdit.exe new file mode 100644 index 0000000..1c514f7 Binary files /dev/null and b/WorldEdit.exe differ diff --git a/bin/CJassHelper.exe b/bin/CJassHelper.exe new file mode 100644 index 0000000..d0f0af7 Binary files /dev/null and b/bin/CJassHelper.exe differ diff --git a/bin/DuiLib.dll b/bin/DuiLib.dll new file mode 100644 index 0000000..a4e26a6 Binary files /dev/null and b/bin/DuiLib.dll differ diff --git a/bin/EverConfig.cfg b/bin/EverConfig.cfg new file mode 100644 index 0000000..805553c --- /dev/null +++ b/bin/EverConfig.cfg @@ -0,0 +1,39 @@ +[FeatureToggle] +EnableManualNewId = 0 +EnableShowInternalAttributeId = 0 +EnableTriggerCopyEncodingAutoConversion = 1 +[Font] +FontEnable = 0 +FontName = +FontSize = 12 +[HostTest] +Option = 0 +[MapSave] +Option = 0 +[MapTest] +EnableHost = 0 +LaunchDisableSecurityAccess = 0 +LaunchFixedRatioWindowed = 1 +LaunchFullWindowed = 0 +LaunchLockingMouse = 0 +LaunchRenderingEngine = Direct3D 9 +LaunchWideScreenSupport = 0 +LaunchWindowed = 1 +UserName = +VirtualMpq = +[PJass] +Option = 0 +[ScriptCompiler] +EnableCJass = 0 +EnableJassHelper = 1 +EnableJassHelperDebug = 0 +EnableJassHelperOptimization = 0 +EnableJassHelperScriptOnly = 0 +[ScriptInjection] +Option = 0 +[ThirdPartyPlugin] +EnableDotNetSupport = 0 +EnableTesh = 1 +EnableYDTrigger = 1 +[War3Patch] +Option = 0 diff --git a/bin/LuaEngine.dll b/bin/LuaEngine.dll new file mode 100644 index 0000000..fa2e2a2 Binary files /dev/null and b/bin/LuaEngine.dll differ diff --git a/bin/SlkLib.dll b/bin/SlkLib.dll new file mode 100644 index 0000000..0716376 Binary files /dev/null and b/bin/SlkLib.dll differ diff --git a/bin/StormLib.dll b/bin/StormLib.dll new file mode 100644 index 0000000..f5b9314 Binary files /dev/null and b/bin/StormLib.dll differ diff --git a/bin/YDDllFixer.dll b/bin/YDDllFixer.dll new file mode 100644 index 0000000..fdb7f03 Binary files /dev/null and b/bin/YDDllFixer.dll differ diff --git a/bin/YDWEConfig.exe b/bin/YDWEConfig.exe new file mode 100644 index 0000000..0cb662d Binary files /dev/null and b/bin/YDWEConfig.exe differ diff --git a/bin/YDWEStartup.dll b/bin/YDWEStartup.dll new file mode 100644 index 0000000..a2c7dec Binary files /dev/null and b/bin/YDWEStartup.dll differ diff --git a/bin/api-ms-win-core-console-l1-1-0.dll b/bin/api-ms-win-core-console-l1-1-0.dll new file mode 100644 index 0000000..7679d1b Binary files /dev/null and b/bin/api-ms-win-core-console-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-datetime-l1-1-0.dll b/bin/api-ms-win-core-datetime-l1-1-0.dll new file mode 100644 index 0000000..8bd0484 Binary files /dev/null and b/bin/api-ms-win-core-datetime-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-debug-l1-1-0.dll b/bin/api-ms-win-core-debug-l1-1-0.dll new file mode 100644 index 0000000..924fce6 Binary files /dev/null and b/bin/api-ms-win-core-debug-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-errorhandling-l1-1-0.dll b/bin/api-ms-win-core-errorhandling-l1-1-0.dll new file mode 100644 index 0000000..dc57624 Binary files /dev/null and b/bin/api-ms-win-core-errorhandling-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-file-l1-1-0.dll b/bin/api-ms-win-core-file-l1-1-0.dll new file mode 100644 index 0000000..ca4c01c Binary files /dev/null and b/bin/api-ms-win-core-file-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-file-l1-2-0.dll b/bin/api-ms-win-core-file-l1-2-0.dll new file mode 100644 index 0000000..a41425b Binary files /dev/null and b/bin/api-ms-win-core-file-l1-2-0.dll differ diff --git a/bin/api-ms-win-core-file-l2-1-0.dll b/bin/api-ms-win-core-file-l2-1-0.dll new file mode 100644 index 0000000..f5008fd Binary files /dev/null and b/bin/api-ms-win-core-file-l2-1-0.dll differ diff --git a/bin/api-ms-win-core-handle-l1-1-0.dll b/bin/api-ms-win-core-handle-l1-1-0.dll new file mode 100644 index 0000000..1202a2d Binary files /dev/null and b/bin/api-ms-win-core-handle-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-heap-l1-1-0.dll b/bin/api-ms-win-core-heap-l1-1-0.dll new file mode 100644 index 0000000..1a66e5f Binary files /dev/null and b/bin/api-ms-win-core-heap-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-interlocked-l1-1-0.dll b/bin/api-ms-win-core-interlocked-l1-1-0.dll new file mode 100644 index 0000000..76d7b5a Binary files /dev/null and b/bin/api-ms-win-core-interlocked-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-libraryloader-l1-1-0.dll b/bin/api-ms-win-core-libraryloader-l1-1-0.dll new file mode 100644 index 0000000..2281564 Binary files /dev/null and b/bin/api-ms-win-core-libraryloader-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-localization-l1-2-0.dll b/bin/api-ms-win-core-localization-l1-2-0.dll new file mode 100644 index 0000000..0e95ba6 Binary files /dev/null and b/bin/api-ms-win-core-localization-l1-2-0.dll differ diff --git a/bin/api-ms-win-core-memory-l1-1-0.dll b/bin/api-ms-win-core-memory-l1-1-0.dll new file mode 100644 index 0000000..e96d917 Binary files /dev/null and b/bin/api-ms-win-core-memory-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-namedpipe-l1-1-0.dll b/bin/api-ms-win-core-namedpipe-l1-1-0.dll new file mode 100644 index 0000000..960c0fd Binary files /dev/null and b/bin/api-ms-win-core-namedpipe-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-processenvironment-l1-1-0.dll b/bin/api-ms-win-core-processenvironment-l1-1-0.dll new file mode 100644 index 0000000..1775d7c Binary files /dev/null and b/bin/api-ms-win-core-processenvironment-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-processthreads-l1-1-0.dll b/bin/api-ms-win-core-processthreads-l1-1-0.dll new file mode 100644 index 0000000..087edfd Binary files /dev/null and b/bin/api-ms-win-core-processthreads-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-processthreads-l1-1-1.dll b/bin/api-ms-win-core-processthreads-l1-1-1.dll new file mode 100644 index 0000000..ff19bbe Binary files /dev/null and b/bin/api-ms-win-core-processthreads-l1-1-1.dll differ diff --git a/bin/api-ms-win-core-profile-l1-1-0.dll b/bin/api-ms-win-core-profile-l1-1-0.dll new file mode 100644 index 0000000..f03941c Binary files /dev/null and b/bin/api-ms-win-core-profile-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-rtlsupport-l1-1-0.dll b/bin/api-ms-win-core-rtlsupport-l1-1-0.dll new file mode 100644 index 0000000..b3514d1 Binary files /dev/null and b/bin/api-ms-win-core-rtlsupport-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-string-l1-1-0.dll b/bin/api-ms-win-core-string-l1-1-0.dll new file mode 100644 index 0000000..e404df2 Binary files /dev/null and b/bin/api-ms-win-core-string-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-synch-l1-1-0.dll b/bin/api-ms-win-core-synch-l1-1-0.dll new file mode 100644 index 0000000..ee01be0 Binary files /dev/null and b/bin/api-ms-win-core-synch-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-synch-l1-2-0.dll b/bin/api-ms-win-core-synch-l1-2-0.dll new file mode 100644 index 0000000..886daa7 Binary files /dev/null and b/bin/api-ms-win-core-synch-l1-2-0.dll differ diff --git a/bin/api-ms-win-core-sysinfo-l1-1-0.dll b/bin/api-ms-win-core-sysinfo-l1-1-0.dll new file mode 100644 index 0000000..b951d3d Binary files /dev/null and b/bin/api-ms-win-core-sysinfo-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-timezone-l1-1-0.dll b/bin/api-ms-win-core-timezone-l1-1-0.dll new file mode 100644 index 0000000..79f5ad0 Binary files /dev/null and b/bin/api-ms-win-core-timezone-l1-1-0.dll differ diff --git a/bin/api-ms-win-core-util-l1-1-0.dll b/bin/api-ms-win-core-util-l1-1-0.dll new file mode 100644 index 0000000..cb5c1db Binary files /dev/null and b/bin/api-ms-win-core-util-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-conio-l1-1-0.dll b/bin/api-ms-win-crt-conio-l1-1-0.dll new file mode 100644 index 0000000..2db267d Binary files /dev/null and b/bin/api-ms-win-crt-conio-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-convert-l1-1-0.dll b/bin/api-ms-win-crt-convert-l1-1-0.dll new file mode 100644 index 0000000..dc5438e Binary files /dev/null and b/bin/api-ms-win-crt-convert-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-environment-l1-1-0.dll b/bin/api-ms-win-crt-environment-l1-1-0.dll new file mode 100644 index 0000000..84b5f05 Binary files /dev/null and b/bin/api-ms-win-crt-environment-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-filesystem-l1-1-0.dll b/bin/api-ms-win-crt-filesystem-l1-1-0.dll new file mode 100644 index 0000000..5ca7f67 Binary files /dev/null and b/bin/api-ms-win-crt-filesystem-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-heap-l1-1-0.dll b/bin/api-ms-win-crt-heap-l1-1-0.dll new file mode 100644 index 0000000..1b10d30 Binary files /dev/null and b/bin/api-ms-win-crt-heap-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-locale-l1-1-0.dll b/bin/api-ms-win-crt-locale-l1-1-0.dll new file mode 100644 index 0000000..5924657 Binary files /dev/null and b/bin/api-ms-win-crt-locale-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-math-l1-1-0.dll b/bin/api-ms-win-crt-math-l1-1-0.dll new file mode 100644 index 0000000..f4251e1 Binary files /dev/null and b/bin/api-ms-win-crt-math-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-multibyte-l1-1-0.dll b/bin/api-ms-win-crt-multibyte-l1-1-0.dll new file mode 100644 index 0000000..4a53805 Binary files /dev/null and b/bin/api-ms-win-crt-multibyte-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-private-l1-1-0.dll b/bin/api-ms-win-crt-private-l1-1-0.dll new file mode 100644 index 0000000..d9ed04c Binary files /dev/null and b/bin/api-ms-win-crt-private-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-process-l1-1-0.dll b/bin/api-ms-win-crt-process-l1-1-0.dll new file mode 100644 index 0000000..32a702b Binary files /dev/null and b/bin/api-ms-win-crt-process-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-runtime-l1-1-0.dll b/bin/api-ms-win-crt-runtime-l1-1-0.dll new file mode 100644 index 0000000..d32887e Binary files /dev/null and b/bin/api-ms-win-crt-runtime-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-stdio-l1-1-0.dll b/bin/api-ms-win-crt-stdio-l1-1-0.dll new file mode 100644 index 0000000..d6b6171 Binary files /dev/null and b/bin/api-ms-win-crt-stdio-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-string-l1-1-0.dll b/bin/api-ms-win-crt-string-l1-1-0.dll new file mode 100644 index 0000000..7e9afd1 Binary files /dev/null and b/bin/api-ms-win-crt-string-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-time-l1-1-0.dll b/bin/api-ms-win-crt-time-l1-1-0.dll new file mode 100644 index 0000000..2c47654 Binary files /dev/null and b/bin/api-ms-win-crt-time-l1-1-0.dll differ diff --git a/bin/api-ms-win-crt-utility-l1-1-0.dll b/bin/api-ms-win-crt-utility-l1-1-0.dll new file mode 100644 index 0000000..1e01fda Binary files /dev/null and b/bin/api-ms-win-crt-utility-l1-1-0.dll differ diff --git a/bin/d3d8proxy.dll b/bin/d3d8proxy.dll new file mode 100644 index 0000000..af5d29c Binary files /dev/null and b/bin/d3d8proxy.dll differ diff --git a/bin/debugger.dll b/bin/debugger.dll new file mode 100644 index 0000000..dd87fe9 Binary files /dev/null and b/bin/debugger.dll differ diff --git a/bin/logo.ico b/bin/logo.ico new file mode 100644 index 0000000..05a4a51 Binary files /dev/null and b/bin/logo.ico differ diff --git a/bin/luacore.dll b/bin/luacore.dll new file mode 100644 index 0000000..91f1153 Binary files /dev/null and b/bin/luacore.dll differ diff --git a/bin/minizip.dll b/bin/minizip.dll new file mode 100644 index 0000000..5dacd25 Binary files /dev/null and b/bin/minizip.dll differ diff --git a/bin/modules/clr.dll b/bin/modules/clr.dll new file mode 100644 index 0000000..3b42fdd Binary files /dev/null and b/bin/modules/clr.dll differ diff --git a/bin/modules/event.dll b/bin/modules/event.dll new file mode 100644 index 0000000..4c7c009 Binary files /dev/null and b/bin/modules/event.dll differ diff --git a/bin/modules/ffi.dll b/bin/modules/ffi.dll new file mode 100644 index 0000000..87ff10a Binary files /dev/null and b/bin/modules/ffi.dll differ diff --git a/bin/modules/filesystem.dll b/bin/modules/filesystem.dll new file mode 100644 index 0000000..e72fbcd Binary files /dev/null and b/bin/modules/filesystem.dll differ diff --git a/bin/modules/gui.dll b/bin/modules/gui.dll new file mode 100644 index 0000000..1b30430 Binary files /dev/null and b/bin/modules/gui.dll differ diff --git a/bin/modules/i18n.dll b/bin/modules/i18n.dll new file mode 100644 index 0000000..7c2c263 Binary files /dev/null and b/bin/modules/i18n.dll differ diff --git a/bin/modules/lni-c.dll b/bin/modules/lni-c.dll new file mode 100644 index 0000000..aa075e3 Binary files /dev/null and b/bin/modules/lni-c.dll differ diff --git a/bin/modules/lpeg.dll b/bin/modules/lpeg.dll new file mode 100644 index 0000000..0fcea13 Binary files /dev/null and b/bin/modules/lpeg.dll differ diff --git a/bin/modules/maphash.dll b/bin/modules/maphash.dll new file mode 100644 index 0000000..5e6cee2 Binary files /dev/null and b/bin/modules/maphash.dll differ diff --git a/bin/modules/registry.dll b/bin/modules/registry.dll new file mode 100644 index 0000000..50c0fae Binary files /dev/null and b/bin/modules/registry.dll differ diff --git a/bin/modules/sys.dll b/bin/modules/sys.dll new file mode 100644 index 0000000..9d4037c Binary files /dev/null and b/bin/modules/sys.dll differ diff --git a/bin/modules/virtual_mpq.dll b/bin/modules/virtual_mpq.dll new file mode 100644 index 0000000..16ad5d1 Binary files /dev/null and b/bin/modules/virtual_mpq.dll differ diff --git a/bin/modules/w3xparser.dll b/bin/modules/w3xparser.dll new file mode 100644 index 0000000..df0c7b8 Binary files /dev/null and b/bin/modules/w3xparser.dll differ diff --git a/bin/skin.zip b/bin/skin.zip new file mode 100644 index 0000000..ce74087 Binary files /dev/null and b/bin/skin.zip differ diff --git a/bin/ucrtbase.dll b/bin/ucrtbase.dll new file mode 100644 index 0000000..2e1c4ff Binary files /dev/null and b/bin/ucrtbase.dll differ diff --git a/bin/worldedit.exe b/bin/worldedit.exe new file mode 100644 index 0000000..04891e9 Binary files /dev/null and b/bin/worldedit.exe differ diff --git a/bin/ydbase.dll b/bin/ydbase.dll new file mode 100644 index 0000000..f6f3e39 Binary files /dev/null and b/bin/ydbase.dll differ diff --git a/example(演示地图)/AI/AI——RPG佣兵AI.w3x b/example(演示地图)/AI/AI——RPG佣兵AI.w3x new file mode 100644 index 0000000..9579005 Binary files /dev/null and b/example(演示地图)/AI/AI——RPG佣兵AI.w3x differ diff --git a/example(演示地图)/AI/AI——自动学习技能.w3x b/example(演示地图)/AI/AI——自动学习技能.w3x new file mode 100644 index 0000000..197be57 Binary files /dev/null and b/example(演示地图)/AI/AI——自动学习技能.w3x differ diff --git a/example(演示地图)/JAPI/Lua-Debug.w3x b/example(演示地图)/JAPI/Lua-Debug.w3x new file mode 100644 index 0000000..b040dab Binary files /dev/null and b/example(演示地图)/JAPI/Lua-Debug.w3x differ diff --git a/example(演示地图)/JAPI/Lua-导入外部脚本.w3x b/example(演示地图)/JAPI/Lua-导入外部脚本.w3x new file mode 100644 index 0000000..b1d4ba4 Binary files /dev/null and b/example(演示地图)/JAPI/Lua-导入外部脚本.w3x differ diff --git a/example(演示地图)/JAPI/Lua-控制台输入.w3x b/example(演示地图)/JAPI/Lua-控制台输入.w3x new file mode 100644 index 0000000..7f90e7c Binary files /dev/null and b/example(演示地图)/JAPI/Lua-控制台输入.w3x differ diff --git a/example(演示地图)/JAPI/Lua-智能施法.w3x b/example(演示地图)/JAPI/Lua-智能施法.w3x new file mode 100644 index 0000000..a597127 Binary files /dev/null and b/example(演示地图)/JAPI/Lua-智能施法.w3x differ diff --git a/example(演示地图)/JAPI/Lua-计时器-圣光.w3x b/example(演示地图)/JAPI/Lua-计时器-圣光.w3x new file mode 100644 index 0000000..4e58b40 Binary files /dev/null and b/example(演示地图)/JAPI/Lua-计时器-圣光.w3x differ diff --git a/example(演示地图)/JAPI/lua/blizzard.lua b/example(演示地图)/JAPI/lua/blizzard.lua new file mode 100644 index 0000000..7ed39ac --- /dev/null +++ b/example(演示地图)/JAPI/lua/blizzard.lua @@ -0,0 +1,13 @@ +-- 简易的blizzard.lua,若需要完整的blizzard.lua,可以使用jass2lua工具,自行转换。 + +local CJ = require "jass.common" +local BJ = {} + +BJ.bj_MAX_PLAYER_SLOTS = 16 +function BJ.TriggerRegisterAnyUnitEventBJ(trig, event) + for i = 0, BJ.bj_MAX_PLAYER_SLOTS-1 do + CJ.TriggerRegisterPlayerUnitEvent(trig, CJ.Player(i), event, nil) + end +end + +return BJ diff --git a/example(演示地图)/JAPI/lua/main.lua b/example(演示地图)/JAPI/lua/main.lua new file mode 100644 index 0000000..bbc10ee --- /dev/null +++ b/example(演示地图)/JAPI/lua/main.lua @@ -0,0 +1,41 @@ +local CJ = require "jass.common" +local BJ = require "blizzard" + +local trig = CJ.CreateTrigger() +BJ.TriggerRegisterAnyUnitEventBJ(trig, CJ.EVENT_PLAYER_UNIT_SPELL_EFFECT) + +-- 下面大量使用了函数定义后直接使用的技巧,这样甚至不需要给函数安一个名字,所以称之为‘匿名函数’。 +-- 好处是代码结构更加紧密,也省去了给函数想名字的烦恼。 +-- zinc也有匿名函数,如果你使用过zinc,应该不会陌生。 +CJ.TriggerAddCondition(trig, CJ.Condition( + function () + -- |xxxx|不是一个标准的lua语法,而是ydwe lua的扩展语法,值和jass里'xxxx'一样 + -- 注意,在lua里'xxxx'是一个字符串,和"xxxx"一样。 + return CJ.GetSpellAbilityId() == 1095264354 --'AHhb' + end +)) +CJ.TriggerAddAction(trig, + function () + local u = CJ.GetSpellTargetUnit() + local n = 0 + -- 这里定义的两个局部变量,可以直接在下面的计时器函数直接使用。当然你依然可以使用hashtable来传递(但不推荐)。 + -- 这是和jass的最大差别。 + CJ.TimerStart(CJ.CreateTimer(), 1.00, true, + function () + if n == 8 then + CJ.DestroyTimer(CJ.GetExpiredTimer()) + else + n = n + 1 + CJ.SetUnitState(u, CJ.UNIT_STATE_LIFE, 10 + CJ.GetUnitState(u, CJ.UNIT_STATE_LIFE)) + CJ.DestroyEffect(CJ.AddSpecialEffectTarget("Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl", u, "overhead")) + end + end + ) + end +) + +CJ.TimerStart(CJ.CreateTimer(), 0.1, true, + function () + print('ha!') + end +) diff --git a/example(演示地图)/JAPI/lua/runtime_init.lua b/example(演示地图)/JAPI/lua/runtime_init.lua new file mode 100644 index 0000000..1bb5f68 --- /dev/null +++ b/example(演示地图)/JAPI/lua/runtime_init.lua @@ -0,0 +1,46 @@ +local console = require "jass.console" + +-- 开启一个调试窗口,用于显示调试信息,正式的版本请去掉。 +-- 注:若在本文件内有语法错误,这行代码就不会被执行,语法错误也无法显示。所以 +-- 需要在一切都开始前,执行它;并确保本文件内没有错误。 +console.enable = true + +local runtime = require "jass.runtime" + +-- 注册错误回调函数,当执行lua发生错误时,会调用此函数。 +-- 注:注册此函数会略微增加运行时消耗(即使没有发生错误)。 +function runtime.error_handle(msg) + print("---------------------------------------") + print(" LUA ERROR ") + print("---------------------------------------") + print(tostring(msg) .. "\n") + print(debug.traceback()) + print("---------------------------------------") +end + +-- +-- 设定调用cj函数返回的handle的type。(默认值为2) +-- 安全性依次递增,同时效率也会依次下降。 +-- 0: 返回number。 +---- 没有任何额外的安全性控制。 +-- +-- 1: 返回lightuserdata。 +---- 只能判断是否相等,无法比较大小,并且不能隐式转换为整数。这和jass内的行为保持一致。 +---- 但支持tostring,可以用于debug。 +-- +-- 2: 返回userdata。 +---- lua持有handle时会增加handle的引用计数,并在__gc元方法中释放handle。 +---- 0不再能被隐式转换为nil,对应jass里的null请使用nil。 +-- +runtime.handle_level = 2 + +-- 开启此项(默认开启),调用jass.xxx/japi.xxx发生崩溃时,会生产一个lua错误,并忽略这个崩溃。 +-- 你可以注册jass_ext.runtime.error_handle,来获得这个错误。 +-- 注:开启此项会略微增加运行时消耗(即使没有发生错误)。 +runtime.catch_crash = true + +-- 此项默认为开启。common.j中包含sleep操作的函数有4个,TriggerSleepAction/TriggerSyncReady +-- /TriggerWaitForSound/SyncSelections。当此项为false时,lua引擎会忽略这4个函数的调用,并给 +-- 予运行时警告。当此项为true时,这4个函数将会得到正确的执行。 +-- 注:开启此项会增加运行时消耗,即使你没有使用这4个函数。 +runtime.sleep = true diff --git a/example(演示地图)/JAPI/伤害属性.w3x b/example(演示地图)/JAPI/伤害属性.w3x new file mode 100644 index 0000000..cf99389 Binary files /dev/null and b/example(演示地图)/JAPI/伤害属性.w3x differ diff --git a/example(演示地图)/JAPI/单位变身.w3x b/example(演示地图)/JAPI/单位变身.w3x new file mode 100644 index 0000000..a8cf7cd Binary files /dev/null and b/example(演示地图)/JAPI/单位变身.w3x differ diff --git a/example(演示地图)/JAPI/单位晕眩.w3x b/example(演示地图)/JAPI/单位晕眩.w3x new file mode 100644 index 0000000..e03f7cd Binary files /dev/null and b/example(演示地图)/JAPI/单位晕眩.w3x differ diff --git a/example(演示地图)/JAPI/技能属性.w3x b/example(演示地图)/JAPI/技能属性.w3x new file mode 100644 index 0000000..1f2badc Binary files /dev/null and b/example(演示地图)/JAPI/技能属性.w3x differ diff --git a/example(演示地图)/JAPI/物品属性.w3x b/example(演示地图)/JAPI/物品属性.w3x new file mode 100644 index 0000000..5ce0881 Binary files /dev/null and b/example(演示地图)/JAPI/物品属性.w3x differ diff --git a/example(演示地图)/JAPI/特效.w3x b/example(演示地图)/JAPI/特效.w3x new file mode 100644 index 0000000..a53262f Binary files /dev/null and b/example(演示地图)/JAPI/特效.w3x differ diff --git a/example(演示地图)/JAPI/移动类型.w3x b/example(演示地图)/JAPI/移动类型.w3x new file mode 100644 index 0000000..9f47216 Binary files /dev/null and b/example(演示地图)/JAPI/移动类型.w3x differ diff --git a/example(演示地图)/JAPI/获取攻击和护甲.w3x b/example(演示地图)/JAPI/获取攻击和护甲.w3x new file mode 100644 index 0000000..2e6c51a Binary files /dev/null and b/example(演示地图)/JAPI/获取攻击和护甲.w3x differ diff --git a/example(演示地图)/JAPI/读取物体编辑器数据.w3x b/example(演示地图)/JAPI/读取物体编辑器数据.w3x new file mode 100644 index 0000000..61aa6eb Binary files /dev/null and b/example(演示地图)/JAPI/读取物体编辑器数据.w3x differ diff --git a/example(演示地图)/事件/事件——任意单位伤害事件-显示伤害.w3x b/example(演示地图)/事件/事件——任意单位伤害事件-显示伤害.w3x new file mode 100644 index 0000000..4ee0406 Binary files /dev/null and b/example(演示地图)/事件/事件——任意单位伤害事件-显示伤害.w3x differ diff --git a/example(演示地图)/其他/ScriptSystem-获得WC3大奖的电影系统(By YDWE).w3x b/example(演示地图)/其他/ScriptSystem-获得WC3大奖的电影系统(By YDWE).w3x new file mode 100644 index 0000000..f879b09 Binary files /dev/null and b/example(演示地图)/其他/ScriptSystem-获得WC3大奖的电影系统(By YDWE).w3x differ diff --git a/example(演示地图)/其他/新增的魔兽隐藏资源.w3x b/example(演示地图)/其他/新增的魔兽隐藏资源.w3x new file mode 100644 index 0000000..7a5f1fe Binary files /dev/null and b/example(演示地图)/其他/新增的魔兽隐藏资源.w3x differ diff --git a/example(演示地图)/函数/函数——获取护甲.w3x b/example(演示地图)/函数/函数——获取护甲.w3x new file mode 100644 index 0000000..38cbf5e Binary files /dev/null and b/example(演示地图)/函数/函数——获取护甲.w3x differ diff --git a/example(演示地图)/存储/存储系统-CD中物品不能丢弃(新增局部变量).w3x b/example(演示地图)/存储/存储系统-CD中物品不能丢弃(新增局部变量).w3x new file mode 100644 index 0000000..8f5e4bc Binary files /dev/null and b/example(演示地图)/存储/存储系统-CD中物品不能丢弃(新增局部变量).w3x differ diff --git a/example(演示地图)/存储/禁止移动物品.w3x b/example(演示地图)/存储/禁止移动物品.w3x new file mode 100644 index 0000000..d2e6801 Binary files /dev/null and b/example(演示地图)/存储/禁止移动物品.w3x differ diff --git a/example(演示地图)/存档/RPG积分.w3m b/example(演示地图)/存档/RPG积分.w3m new file mode 100644 index 0000000..30739b2 Binary files /dev/null and b/example(演示地图)/存档/RPG积分.w3m differ diff --git a/example(演示地图)/存档/演示-存档系统(复杂版).w3x b/example(演示地图)/存档/演示-存档系统(复杂版).w3x new file mode 100644 index 0000000..8703b1b Binary files /dev/null and b/example(演示地图)/存档/演示-存档系统(复杂版).w3x differ diff --git a/example(演示地图)/存档/演示-存档系统(简化版).w3x b/example(演示地图)/存档/演示-存档系统(简化版).w3x new file mode 100644 index 0000000..a7d3f8e Binary files /dev/null and b/example(演示地图)/存档/演示-存档系统(简化版).w3x differ diff --git a/example(演示地图)/存档/演示-网游(服务器存档).w3x b/example(演示地图)/存档/演示-网游(服务器存档).w3x new file mode 100644 index 0000000..8cfca38 Binary files /dev/null and b/example(演示地图)/存档/演示-网游(服务器存档).w3x differ diff --git a/example(演示地图)/存档/註冊.reg b/example(演示地图)/存档/註冊.reg new file mode 100644 index 0000000..7cad553 --- /dev/null +++ b/example(演示地图)/存档/註冊.reg @@ -0,0 +1,3 @@ +Windows Registry Editor Version 5.00 +[HKEY_CURRENT_USER\Software\Blizzard Entertainment\Warcraft III] +"Allow Local Files"=dword:00000001 diff --git a/example(演示地图)/存档/说明.txt b/example(演示地图)/存档/说明.txt new file mode 100644 index 0000000..0c2d293 --- /dev/null +++ b/example(演示地图)/存档/说明.txt @@ -0,0 +1,44 @@ +----------------------------------------------------- +-------------SL浵ϵͳ by actboy168-------------- +----------------------------------------------------- + +ʾҪϵͳħ޶ȡļʾͼлȡ浵ʧܣ˫ע.reg޸ע + +ṩSL浵ϵͳʾΪ򵥰͸Ӱ棬ṩӢͺƷĴ浵 + +һʾͼԷ +1.Ӱ +ٽϷڶԻ壬ѡ½ +ڴ浵ϣѡһʱѡΪnullΪûд浵 +ѡʥʿʰȡƷ +ܰEscѡ񡰱桱 +˳Ϸ½루ֱӰEscѡ񡰶ȡ +ڶԻѡ񡰶ȡ +ڴ浵壬ԿΪʥʿĴ浵ѡȡ֮ +ʥʿϣ֮ܿǰʰȡƷ˵浵ʾɹ + +2.򻯰 +ٽϷ롰-New´浵 +ѡʥʿʰȡƷ +롰-SaveȻ˳Ϸ +½Ϸ롰-LoadܿӢƷ˵ɹ + +SLϵͳʹ÷ +SLϵͳصUIһ6ɴ浵ֻҪ4ڸ߼ܣUIС浵ĺ׺עС߼ܡעʾͼУӰõȫ6UI򻯰ֻõ˻4 +1. +浵ûƣɴ浵֣ÿ浵Դ500ݡ +ٱҴ浵 +Ϊxxұһ浵ءSaveļxxĿ¼£ԶԴ浵עעô浵洢ݸʾӢ͡6Ʒݣ7 +ڶȡҴ浵 +ΪxxȥءSaveʹ浵ȡ浵עͬҪעȡô浵洢ݸ +Ӵ浵 +ڵǰ浵£ijݶΣһݣΪ˷߷ijݶεãиע͡дöݵעͣ硰λIDƷ֮ࣻ +ܶȡ浵 +ӵǰ浵ijݶζע͡ԽӰ죬Ϊʹɶǿдע͵ϰߡ + +2.߼ +߼ܼ浵ܣһĿ¼ж浵ʱԸÿ浵һţȻֱͨŻøô浵֡ĺôǣҪȥס浵֡ע÷Χ1-16浵޶࣬бŵĴ浵ֻ16 +ô浵 +xxұءSaveļxx·£ij浵һ +ڻȡ浵 +xxұءSaveļ£ȡΪijĴ浵 \ No newline at end of file diff --git a/example(演示地图)/技能/技能——[Demo] Around - 单位环绕模板 [技能召集].w3x b/example(演示地图)/技能/技能——[Demo] Around - 单位环绕模板 [技能召集].w3x new file mode 100644 index 0000000..c1384cb Binary files /dev/null and b/example(演示地图)/技能/技能——[Demo] Around - 单位环绕模板 [技能召集].w3x differ diff --git a/example(演示地图)/技能/技能——[Demo] Around - 经典单位环绕演示 [Fetrix_sai].w3x b/example(演示地图)/技能/技能——[Demo] Around - 经典单位环绕演示 [Fetrix_sai].w3x new file mode 100644 index 0000000..6ac0174 Binary files /dev/null and b/example(演示地图)/技能/技能——[Demo] Around - 经典单位环绕演示 [Fetrix_sai].w3x differ diff --git a/example(演示地图)/技能/技能——月神箭、跳劈、冲锋(Warft_TigerCN原作,fetrix_sai修正版) v1.3.w3x b/example(演示地图)/技能/技能——月神箭、跳劈、冲锋(Warft_TigerCN原作,fetrix_sai修正版) v1.3.w3x new file mode 100644 index 0000000..41c5f50 Binary files /dev/null and b/example(演示地图)/技能/技能——月神箭、跳劈、冲锋(Warft_TigerCN原作,fetrix_sai修正版) v1.3.w3x differ diff --git a/example(演示地图)/技能/技能——跳跃(空格键释放技能).w3x b/example(演示地图)/技能/技能——跳跃(空格键释放技能).w3x new file mode 100644 index 0000000..c754b47 Binary files /dev/null and b/example(演示地图)/技能/技能——跳跃(空格键释放技能).w3x differ diff --git a/example(演示地图)/技能/技能——钩子.w3x b/example(演示地图)/技能/技能——钩子.w3x new file mode 100644 index 0000000..076a73d Binary files /dev/null and b/example(演示地图)/技能/技能——钩子.w3x differ diff --git a/example(演示地图)/物体编辑器/第一课-简单的演示.w3x b/example(演示地图)/物体编辑器/第一课-简单的演示.w3x new file mode 100644 index 0000000..fb3a91a Binary files /dev/null and b/example(演示地图)/物体编辑器/第一课-简单的演示.w3x differ diff --git a/example(演示地图)/物体编辑器/第三课-物体编辑器数据的读取.w3x b/example(演示地图)/物体编辑器/第三课-物体编辑器数据的读取.w3x new file mode 100644 index 0000000..9731791 Binary files /dev/null and b/example(演示地图)/物体编辑器/第三课-物体编辑器数据的读取.w3x differ diff --git a/example(演示地图)/物体编辑器/第二课-lua模版基础.w3x b/example(演示地图)/物体编辑器/第二课-lua模版基础.w3x new file mode 100644 index 0000000..e0170d2 Binary files /dev/null and b/example(演示地图)/物体编辑器/第二课-lua模版基础.w3x differ diff --git a/example(演示地图)/物体编辑器/第五课-完整的演示.w3x b/example(演示地图)/物体编辑器/第五课-完整的演示.w3x new file mode 100644 index 0000000..4c505b0 Binary files /dev/null and b/example(演示地图)/物体编辑器/第五课-完整的演示.w3x differ diff --git a/example(演示地图)/物体编辑器/第四课-物体编辑器数据的生成.w3x b/example(演示地图)/物体编辑器/第四课-物体编辑器数据的生成.w3x new file mode 100644 index 0000000..aa648db Binary files /dev/null and b/example(演示地图)/物体编辑器/第四课-物体编辑器数据的生成.w3x differ diff --git a/example(演示地图)/物体编辑器/第零课-说明.txt b/example(演示地图)/物体编辑器/第零课-说明.txt new file mode 100644 index 0000000..c4824ec --- /dev/null +++ b/example(演示地图)/物体编辑器/第零课-说明.txt @@ -0,0 +1,8 @@ + ǹ༭ݶȡĽ̳̺ʾý̳̼ٶĶѾʹJassδգĶJassĽ̡̳ + + ħ沢δڵͼн׶ζ༭ݶдĽӿڣĶдڵͼı׶νеġǿͨݱ浽gamecache/hashtable/ȫֱ/űȷﵽڵͼн׶ζ༭ݵʹõĿġ + + YDWEȡ༭ݵĺ˼ǣڵͼ׶Σ༭Ƕ뵽JassűΪˣluaģ﷨̳̻̽ʹüluaģ﷨luaģ༭Ƕ뵽Jassű + + Ȼ̳̲ҪĶѾʹluaоcoolĹܣѧϰluaıزٵģΪ̳ͨ㽫ῴYDWEѾΪڽű༭мlua﷨luaκ顣 + diff --git a/example(演示地图)/特效/特效——单位环绕.w3x b/example(演示地图)/特效/特效——单位环绕.w3x new file mode 100644 index 0000000..1fc7319 Binary files /dev/null and b/example(演示地图)/特效/特效——单位环绕.w3x differ diff --git a/example(演示地图)/系统/[Demo]新中心计时器-YDWE储存系统应用-复活系统 [Fetrix_sai].w3x b/example(演示地图)/系统/[Demo]新中心计时器-YDWE储存系统应用-复活系统 [Fetrix_sai].w3x new file mode 100644 index 0000000..f32820d Binary files /dev/null and b/example(演示地图)/系统/[Demo]新中心计时器-YDWE储存系统应用-复活系统 [Fetrix_sai].w3x differ diff --git a/example(演示地图)/系统/中心计时器-单位头上飘字.w3x b/example(演示地图)/系统/中心计时器-单位头上飘字.w3x new file mode 100644 index 0000000..e64a54f Binary files /dev/null and b/example(演示地图)/系统/中心计时器-单位头上飘字.w3x differ diff --git a/example(演示地图)/系统/中心计时器-单位环绕(全局变量版).w3x b/example(演示地图)/系统/中心计时器-单位环绕(全局变量版).w3x new file mode 100644 index 0000000..df58265 Binary files /dev/null and b/example(演示地图)/系统/中心计时器-单位环绕(全局变量版).w3x differ diff --git a/example(演示地图)/系统/新中心计时器 - 野蛮冲撞 [Fetrix_sai]_YDWE.w3x b/example(演示地图)/系统/新中心计时器 - 野蛮冲撞 [Fetrix_sai]_YDWE.w3x new file mode 100644 index 0000000..17eebee Binary files /dev/null and b/example(演示地图)/系统/新中心计时器 - 野蛮冲撞 [Fetrix_sai]_YDWE.w3x differ diff --git a/example(演示地图)/系统/新中心计时器-单位环绕[Fetrix_sai].w3x b/example(演示地图)/系统/新中心计时器-单位环绕[Fetrix_sai].w3x new file mode 100644 index 0000000..2345d0c Binary files /dev/null and b/example(演示地图)/系统/新中心计时器-单位环绕[Fetrix_sai].w3x differ diff --git a/example(演示地图)/系统/系统——3C刷兵.w3x b/example(演示地图)/系统/系统——3C刷兵.w3x new file mode 100644 index 0000000..3093154 Binary files /dev/null and b/example(演示地图)/系统/系统——3C刷兵.w3x differ diff --git a/example(演示地图)/系统/系统——万能属性系统.w3x b/example(演示地图)/系统/系统——万能属性系统.w3x new file mode 100644 index 0000000..2d568af Binary files /dev/null and b/example(演示地图)/系统/系统——万能属性系统.w3x differ diff --git a/example(演示地图)/系统/系统——泄漏检测.w3x b/example(演示地图)/系统/系统——泄漏检测.w3x new file mode 100644 index 0000000..84f0f87 Binary files /dev/null and b/example(演示地图)/系统/系统——泄漏检测.w3x differ diff --git a/example(演示地图)/系统/系统——翻页保留属性的多重物品栏.w3x b/example(演示地图)/系统/系统——翻页保留属性的多重物品栏.w3x new file mode 100644 index 0000000..c954f6c Binary files /dev/null and b/example(演示地图)/系统/系统——翻页保留属性的多重物品栏.w3x differ diff --git a/example(演示地图)/系统/系统——通用物品合成 v1.03[Fetrix_sai].w3x b/example(演示地图)/系统/系统——通用物品合成 v1.03[Fetrix_sai].w3x new file mode 100644 index 0000000..5ce8a03 Binary files /dev/null and b/example(演示地图)/系统/系统——通用物品合成 v1.03[Fetrix_sai].w3x differ diff --git a/example(演示地图)/综合——UI测试地图1.19.w3x b/example(演示地图)/综合——UI测试地图1.19.w3x new file mode 100644 index 0000000..d80f895 Binary files /dev/null and b/example(演示地图)/综合——UI测试地图1.19.w3x differ diff --git a/example(演示地图)/说明.txt b/example(演示地图)/说明.txt new file mode 100644 index 0000000..686d746 --- /dev/null +++ b/example(演示地图)/说明.txt @@ -0,0 +1 @@ +ʾͼֱӵԡ벻Ϸʱ뱣µͼYDWEڱͼʱ뺯⣬Ĭ뵱ǰħް汾ĺ⣩ͿԽϷˡ \ No newline at end of file diff --git a/example(演示地图)/逆天/逆天-CD中物品不能丢弃(新增局部变量).w3x b/example(演示地图)/逆天/逆天-CD中物品不能丢弃(新增局部变量).w3x new file mode 100644 index 0000000..4b77411 Binary files /dev/null and b/example(演示地图)/逆天/逆天-CD中物品不能丢弃(新增局部变量).w3x differ diff --git a/example(演示地图)/逆天/逆天-局部变量循环-不冲突的计数.w3x b/example(演示地图)/逆天/逆天-局部变量循环-不冲突的计数.w3x new file mode 100644 index 0000000..35fc0b0 Binary files /dev/null and b/example(演示地图)/逆天/逆天-局部变量循环-不冲突的计数.w3x differ diff --git a/example(演示地图)/逆天/逆天-按Esc生成随机数.w3x b/example(演示地图)/逆天/逆天-按Esc生成随机数.w3x new file mode 100644 index 0000000..50badcc Binary files /dev/null and b/example(演示地图)/逆天/逆天-按Esc生成随机数.w3x differ diff --git a/example(演示地图)/逆天/逆天-新局部变量.w3x b/example(演示地图)/逆天/逆天-新局部变量.w3x new file mode 100644 index 0000000..1e2b40e Binary files /dev/null and b/example(演示地图)/逆天/逆天-新局部变量.w3x differ diff --git a/example(演示地图)/逆天/逆天-触发器-休眠.w3x b/example(演示地图)/逆天/逆天-触发器-休眠.w3x new file mode 100644 index 0000000..b6a1722 Binary files /dev/null and b/example(演示地图)/逆天/逆天-触发器-休眠.w3x differ diff --git a/example(演示地图)/逆天/逆天-触发器-动态注册.w3x b/example(演示地图)/逆天/逆天-触发器-动态注册.w3x new file mode 100644 index 0000000..6551676 Binary files /dev/null and b/example(演示地图)/逆天/逆天-触发器-动态注册.w3x differ diff --git a/example(演示地图)/逆天/逆天-触发器-运行.w3x b/example(演示地图)/逆天/逆天-触发器-运行.w3x new file mode 100644 index 0000000..2e4462f Binary files /dev/null and b/example(演示地图)/逆天/逆天-触发器-运行.w3x differ diff --git a/example(演示地图)/逆天/逆天-计时器-圣光.w3x b/example(演示地图)/逆天/逆天-计时器-圣光.w3x new file mode 100644 index 0000000..6d0c375 Binary files /dev/null and b/example(演示地图)/逆天/逆天-计时器-圣光.w3x differ diff --git a/example(演示地图)/逆天/逆天-计时器-投射物.w3x b/example(演示地图)/逆天/逆天-计时器-投射物.w3x new file mode 100644 index 0000000..7af1c72 Binary files /dev/null and b/example(演示地图)/逆天/逆天-计时器-投射物.w3x differ diff --git a/example(演示地图)/逆天/逆天-计时器-英雄复活.w3x b/example(演示地图)/逆天/逆天-计时器-英雄复活.w3x new file mode 100644 index 0000000..55e9dd0 Binary files /dev/null and b/example(演示地图)/逆天/逆天-计时器-英雄复活.w3x differ diff --git a/example(演示地图)/逆天/逆天-选取单位做动作.w3x b/example(演示地图)/逆天/逆天-选取单位做动作.w3x new file mode 100644 index 0000000..84691e4 Binary files /dev/null and b/example(演示地图)/逆天/逆天-选取单位做动作.w3x differ diff --git a/jass/AntiBJLeak/MainMacro.h b/jass/AntiBJLeak/MainMacro.h new file mode 100644 index 0000000..8ed74de --- /dev/null +++ b/jass/AntiBJLeak/MainMacro.h @@ -0,0 +1,81 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK + +#ifndef INCLUDE_YDWE_ANTI_BJ_LEAK_H +#define INCLUDE_YDWE_ANTI_BJ_LEAK_H + +#ifdef SCRIPT_INJECTION + +#define PolledWait(a) YDWEPolledWaitNull(a) +#define PlaySound(a) YDWEPlaySoundNull(a) +#define GetCurrentCameraSetup() YDWEGetCurrentCameraSetupNull() +#define TriggerRegisterEnterRectSimple(a,b) YDWETriggerRegisterEnterRectSimpleNull(a,b) +#define TriggerRegisterLeaveRectSimple(a,b) YDWETriggerRegisterLeaveRectSimpleNull(a,b) +#define IssueHauntOrderAtLocBJ(a,b) YDWEIssueHauntOrderAtLocBJNull(a,b) +#define IssueBuildOrderByIdLocBJ(a,b,c) YDWEIssueBuildOrderByIdLocBJNull(a,b,c) +#define WakePlayerUnits(a) YDWEWakePlayerUnitsNull(a) +#define EnableCreepSleepBJ(a) YDWEEnableCreepSleepBJNull(a) +#define PauseAllUnitsBJ(a) YDWEPauseAllUnitsBJNull(a) +#define ReplaceUnitBJ(a,b,c) YDWEReplaceUnitBJNull(a,b,c) +#define EnumDestructablesInCircleBJFilter() YDWEEnumDestructablesInCircleBJFilterNull() +#define EnumDestructablesInCircleBJ(a,b,c) YDWEEnumDestructablesInCircleBJNull(a,b,c) +#define NudgeUnitsInRectEnum() YDWENudgeUnitsInRectEnumNull() +#define NudgeItemsInRectEnum() YDWENudgeItemsInRectEnumNull() +#define NudgeObjectsInRect(a) YDWENudgeObjectsInRectNull(a) +#define NearbyElevatorExistsEnum() YDWENearbyElevatorExistsEnumNull() +#define NearbyElevatorExists(a,b) YDWENearbyElevatorExistsNull(a,b) +#define EnumUnitsSelected(a,b,c) YDWEEnumUnitsSelectedNull(a,b,c) +#define ChangeElevatorWallBlocker(a,b,c,d) YDWEChangeElevatorWallBlockerNull(a,b,c,d) +#define ChangeElevatorWalls(a,b,c) YDWEChangeElevatorWallsNull(a,b,c) +#define GetUnitsInRectMatching(a,b) YDWEGetUnitsInRectMatchingNull(a,b) +#define GetUnitsInRectAll(a) YDWEGetUnitsInRectAllNull(a) +#define GetUnitsInRectOfPlayer(a,b) YDWEGetUnitsInRectOfPlayerNull(a,b) +#define GetUnitsInRangeOfLocMatching(a,b,c) YDWEGetUnitsInRangeOfLocMatchingNull(a,b,c) +#define GetUnitsInRangeOfLocAll(a,b) YDWEGetUnitsInRangeOfLocAllNull(a,b) +#define GetUnitsOfTypeIdAll(a) YDWEGetUnitsOfTypeIdAllNull(a) +#define GetUnitsOfPlayerMatching(a,b) YDWEGetUnitsOfPlayerMatchingNull(a,b) +#define GetUnitsOfPlayerAll(a) YDWEGetUnitsOfPlayerAllNull(a) +#define GetUnitsOfPlayerAndTypeId(a,b) YDWEGetUnitsOfPlayerAndTypeIdNull(a,b) +#define GetUnitsSelectedAll(a) YDWEGetUnitsSelectedAllNull(a) +#define GetForceOfPlayer(a) YDWEGetForceOfPlayerNull(a) +#define GetPlayersByMapControl(a) YDWEGetPlayersByMapControlNull(a) +#define GetPlayersAllies(a) YDWEGetPlayersAlliesNull(a) +#define GetPlayersEnemies(a) YDWEGetPlayersEnemiesNull(a) +#define GetPlayersMatching(a) YDWEGetPlayersMatchingNull(a) +#define GetRandomSubGroupEnum() YDWEGetRandomSubGroupEnumNull() +#define GetRandomSubGroup(a,b) YDWEGetRandomSubGroupNull(a,b) +#define CountLivingPlayerUnitsOfTypeId(a,b) YDWECountLivingPlayerUnitsOfTypeIdNull(a,b) +#define SetUnitFacingToFaceLocTimed(a,b,c) YDWESetUnitFacingToFaceLocTimedNull(a,b,c) +#define SetUnitFacingToFaceUnitTimed(a,b,c) YDWESetUnitFacingToFaceUnitTimedNull(a,b,c) +#define MakeUnitsPassiveForPlayer(a) YDWEMakeUnitsPassiveForPlayerNull(a) +#define MakeUnitsPassiveForTeam(a) YDWEMakeUnitsPassiveForTeamNull(a) +#define MultiboardSetItemStyleBJ(a,b,c,d,e) YDWEMultiboardSetItemStyleBJNull(a,b,c,d,e) +#define MultiboardSetItemValueBJ(a,b,c,d) YDWEMultiboardSetItemValueBJNull(a,b,c,d) +#define MultiboardSetItemColorBJ(a,b,c,d,e,f,g) YDWEMultiboardSetItemColorBJNull(a,b,c,d,e,f,g) +#define MultiboardSetItemWidthBJ(a,b,c,d) YDWEMultiboardSetItemWidthBJNull(a,b,c,d) +#define MultiboardSetItemIconBJ(a,b,c,d) YDWEMultiboardSetItemIconBJNull(a,b,c,d) +#define TriggerActionUnitRescuedBJ() YDWETriggerActionUnitRescuedBJNull() +#define TryInitRescuableTriggersBJ() YDWETryInitRescuableTriggersBJNull() +#define MakeUnitRescuableToForceBJEnum() YDWEMakeUnitRescuableToForceBJEnumNull() +#define MakeUnitRescuableToForceBJ(a,b,c) YDWEMakeUnitRescuableToForceBJNull(a,b,c) +#define BlightGoldMineForPlayerBJ(a,b) YDWEBlightGoldMineForPlayerBJNull(a,b) +#define BlightGoldMineForPlayer(a,b) YDWEBlightGoldMineForPlayerNull(a,b) +#define SetPlayerColorBJ(a,b,c) YDWESetPlayerColorBJNull(a,b,c) +#define InitRescuableBehaviorBJ() YDWEInitRescuableBehaviorBJNull() +#define DelayedSuspendDecayStopAnimEnum() YDWEDelayedSuspendDecayStopAnimEnumNull() +#define DelayedSuspendDecayFleshEnum() YDWEDelayedSuspendDecayFleshEnumNull() +#define DelayedSuspendDecayBoneEnum() YDWEDelayedSuspendDecayBoneEnumNull() +#define DelayedSuspendDecay() YDWEDelayedSuspendDecayNull() +#define SmartCameraPanBJ(a,b,c) YDWESmartCameraPanBJNull(a,b,c) +#define GetInventoryIndexOfItemTypeBJ(a,b) YDWEGetInventoryIndexOfItemTypeBJNull(a,b) +#define GetItemOfTypeFromUnitBJ(a,b) YDWEGetItemOfTypeFromUnitBJNull(a,b) +#define UnitHasItemOfTypeBJ(a,b) YDWEUnitHasItemOfTypeBJNull(a,b) + +#endif +#endif +#endif diff --git a/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.cfg b/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.cfg new file mode 100644 index 0000000..0e985d0 --- /dev/null +++ b/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.cfg @@ -0,0 +1 @@ +BlightGoldMineForPlayer diff --git a/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.j b/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.j new file mode 100644 index 0000000..01a5f34 --- /dev/null +++ b/jass/AntiBJLeak/detail/BlightGoldMineForPlayer.j @@ -0,0 +1,23 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEBlightGoldMineForPlayerNullIncluded +#define YDWEBlightGoldMineForPlayerNullIncluded + +#include "AntiBJLeak/detail/BlightGoldMineForPlayerBJ.j" + +library YDWEBlightGoldMineForPlayerNull requires YDWEBlightGoldMineForPlayerBJNull + +function YDWEBlightGoldMineForPlayerNull takes unit goldMine, player whichPlayer returns unit + set bj_lastHauntedGoldMine = YDWEBlightGoldMineForPlayerBJNull(goldMine, whichPlayer) + return bj_lastHauntedGoldMine +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.cfg b/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.cfg new file mode 100644 index 0000000..03d9e15 --- /dev/null +++ b/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.cfg @@ -0,0 +1 @@ +BlightGoldMineForPlayerBJ diff --git a/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.j b/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.j new file mode 100644 index 0000000..5250c82 --- /dev/null +++ b/jass/AntiBJLeak/detail/BlightGoldMineForPlayerBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEBlightGoldMineForPlayerBJNullIncluded +#define YDWEBlightGoldMineForPlayerBJNullIncluded + + +library YDWEBlightGoldMineForPlayerBJNull + +globals +#ifndef YDWE_NNULLTEMPUNIT_DEFVAR +#define YDWE_NNULLTEMPUNIT_DEFVAR + unit yd_NullTempUnit +#endif +endglobals + +function YDWEBlightGoldMineForPlayerBJNull takes unit goldMine, player whichPlayer returns unit + local real mineX + local real mineY + local integer mineGold + local unit newMine + + // Make sure we're replacing a Gold Mine and not some other type of unit. + if GetUnitTypeId(goldMine) != 'ngol' then + return null + endif + + // Save the Gold Mine's properties and remove it. + set mineX = GetUnitX(goldMine) + set mineY = GetUnitY(goldMine) + set mineGold = GetResourceAmount(goldMine) + call RemoveUnit(goldMine) + + // Create a Haunted Gold Mine to replace the Gold Mine. + set newMine = CreateBlightedGoldmine(whichPlayer, mineX, mineY, bj_UNIT_FACING) + call SetResourceAmount(newMine, mineGold) + set yd_NullTempUnit = newMine + set newMine = null + return yd_NullTempUnit +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.cfg b/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.cfg new file mode 100644 index 0000000..7986018 --- /dev/null +++ b/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.cfg @@ -0,0 +1 @@ +ChangeElevatorWallBlocker diff --git a/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.j b/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.j new file mode 100644 index 0000000..2a6e5a6 --- /dev/null +++ b/jass/AntiBJLeak/detail/ChangeElevatorWallBlocker.j @@ -0,0 +1,69 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEChangeElevatorWallBlockerNullIncluded +#define YDWEChangeElevatorWallBlockerNullIncluded + +#include "AntiBJLeak/detail/NudgeObjectsInRect.j" + +library YDWEChangeElevatorWallBlockerNull requires YDWENudgeObjectsInRectNull + +function YDWEChangeElevatorWallBlockerNull takes real x, real y, real facing, boolean open returns nothing + local destructable blocker = null + local real findThreshold = 32 + local real nudgeLength = 4.25 * bj_CELLWIDTH + local real nudgeWidth = 1.25 * bj_CELLWIDTH + local rect r + + // Search for the pathing blocker within the general area. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorWallBlocker = null + call EnumDestructablesInRect(r, null, function FindElevatorWallBlockerEnum) + call RemoveRect(r) + set blocker = bj_elevatorWallBlocker + + // Ensure that the blocker exists. + if (blocker == null) then + set blocker = CreateDeadDestructable(bj_ELEVATOR_BLOCKER_CODE, x, y, facing, 1, 0) + elseif (GetDestructableTypeId(blocker) != bj_ELEVATOR_BLOCKER_CODE) then + // If a different destructible exists in the blocker's spot, ignore + // the request. (Two destructibles cannot occupy the same location + // on the map, so we cannot create an elevator blocker here.) + return + endif + + if (open) then + // Ensure that the blocker is dead. + if (GetDestructableLife(blocker) > 0) then + call KillDestructable(blocker) + endif + else + // Ensure that the blocker is alive. + if (GetDestructableLife(blocker) <= 0) then + call DestructableRestoreLife(blocker, GetDestructableMaxLife(blocker), false) + endif + + // Nudge any objects standing in the blocker's way. + if (facing == 0) then + set r = Rect(x - nudgeWidth/2, y - nudgeLength/2, x + nudgeWidth/2, y + nudgeLength/2) + call YDWENudgeObjectsInRectNull(r) + call RemoveRect(r) + elseif (facing == 90) then + set r = Rect(x - nudgeLength/2, y - nudgeWidth/2, x + nudgeLength/2, y + nudgeWidth/2) + call YDWENudgeObjectsInRectNull(r) + call RemoveRect(r) + else + // Unrecognized blocker angle - don't nudge anything. + endif + endif + set blocker = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/ChangeElevatorWalls.cfg b/jass/AntiBJLeak/detail/ChangeElevatorWalls.cfg new file mode 100644 index 0000000..4ff0811 --- /dev/null +++ b/jass/AntiBJLeak/detail/ChangeElevatorWalls.cfg @@ -0,0 +1 @@ +ChangeElevatorWalls diff --git a/jass/AntiBJLeak/detail/ChangeElevatorWalls.j b/jass/AntiBJLeak/detail/ChangeElevatorWalls.j new file mode 100644 index 0000000..0f1328e --- /dev/null +++ b/jass/AntiBJLeak/detail/ChangeElevatorWalls.j @@ -0,0 +1,50 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEChangeElevatorWallsNullIncluded +#define YDWEChangeElevatorWallsNullIncluded + +#include "AntiBJLeak/detail/ChangeElevatorWallBlocker.j" +#include "AntiBJLeak/detail/NearbyElevatorExists.j" + +library YDWEChangeElevatorWallsNull requires YDWEChangeElevatorWallBlockerNull, YDWENearbyElevatorExistsNull + +function YDWEChangeElevatorWallsNull takes boolean open, integer walls, destructable d returns nothing + local real x = GetDestructableX(d) + local real y = GetDestructableY(d) + local real distToBlocker = 192 + local real distToNeighbor = 256 + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_EAST) then + if (not YDWENearbyElevatorExistsNull(x + distToNeighbor, y)) then + call YDWEChangeElevatorWallBlockerNull(x + distToBlocker, y, 0, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_NORTH) then + if (not YDWENearbyElevatorExistsNull(x, y + distToNeighbor)) then + call YDWEChangeElevatorWallBlockerNull(x, y + distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_SOUTH) then + if (not YDWENearbyElevatorExistsNull(x, y - distToNeighbor)) then + call YDWEChangeElevatorWallBlockerNull(x, y - distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_WEST) then + if (not YDWENearbyElevatorExistsNull(x - distToNeighbor, y)) then + call YDWEChangeElevatorWallBlockerNull(x - distToBlocker, y, 0, open) + endif + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.cfg b/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.cfg new file mode 100644 index 0000000..60566ac --- /dev/null +++ b/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.cfg @@ -0,0 +1 @@ +CountLivingPlayerUnitsOfTypeId diff --git a/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.j b/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.j new file mode 100644 index 0000000..ba12705 --- /dev/null +++ b/jass/AntiBJLeak/detail/CountLivingPlayerUnitsOfTypeId.j @@ -0,0 +1,31 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWECountLivingPlayerUnitsOfTypeIdNullIncluded +#define YDWECountLivingPlayerUnitsOfTypeIdNullIncluded + + +library YDWECountLivingPlayerUnitsOfTypeIdNull + +function YDWECountLivingPlayerUnitsOfTypeIdNull takes integer unitId, player whichPlayer returns integer + local group g + local integer matchedCount + + set g = CreateGroup() + set bj_livingPlayerUnitsTypeId = unitId + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterLivingPlayerUnitsOfTypeId) + set matchedCount = CountUnitsInGroup(g) + call DestroyGroup(g) + set g = null + + return matchedCount +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecay.cfg b/jass/AntiBJLeak/detail/DelayedSuspendDecay.cfg new file mode 100644 index 0000000..a2e282f --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecay.cfg @@ -0,0 +1 @@ +DelayedSuspendDecay diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecay.j b/jass/AntiBJLeak/detail/DelayedSuspendDecay.j new file mode 100644 index 0000000..1e82a89 --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecay.j @@ -0,0 +1,48 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEDelayedSuspendDecayNullIncluded +#define YDWEDelayedSuspendDecayNullIncluded + +#include "AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.j" +#include "AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.j" +#include "AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.j" + +library YDWEDelayedSuspendDecayNull requires YDWEDelayedSuspendDecayFleshEnumNull, YDWEDelayedSuspendDecayBoneEnumNull, YDWEDelayedSuspendDecayStopAnimEnumNull + +function YDWEDelayedSuspendDecayNull takes nothing returns nothing + local group boneGroup + local group fleshGroup + + // Switch the global unit groups over to local variables and recreate + // the global versions, so that this function YDWEcan handle overlapping + // calls. + set boneGroup = bj_suspendDecayBoneGroup + set fleshGroup = bj_suspendDecayFleshGroup + set bj_suspendDecayBoneGroup = CreateGroup() + set bj_suspendDecayFleshGroup = CreateGroup() + + call ForGroup(fleshGroup, function YDWEDelayedSuspendDecayStopAnimEnumNull) + call ForGroup(boneGroup, function YDWEDelayedSuspendDecayStopAnimEnumNull) + + call TriggerSleepAction(bj_CORPSE_MAX_DEATH_TIME) + call ForGroup(fleshGroup, function YDWEDelayedSuspendDecayFleshEnumNull) + call ForGroup(boneGroup, function YDWEDelayedSuspendDecayBoneEnumNull) + + call TriggerSleepAction(0.05) + call ForGroup(fleshGroup, function YDWEDelayedSuspendDecayStopAnimEnumNull) + + call DestroyGroup(boneGroup) + call DestroyGroup(fleshGroup) + set boneGroup = null + set fleshGroup = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.cfg b/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.cfg new file mode 100644 index 0000000..3c139ad --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.cfg @@ -0,0 +1 @@ +DelayedSuspendDecayBoneEnum diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.j b/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.j new file mode 100644 index 0000000..c781606 --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayBoneEnum.j @@ -0,0 +1,27 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEDelayedSuspendDecayBoneEnumNullIncluded +#define YDWEDelayedSuspendDecayBoneEnumNullIncluded + + +library YDWEDelayedSuspendDecayBoneEnumNull + +function YDWEDelayedSuspendDecayBoneEnumNull takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 0.0001) + endif + set enumUnit = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.cfg b/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.cfg new file mode 100644 index 0000000..026ef66 --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.cfg @@ -0,0 +1 @@ +DelayedSuspendDecayFleshEnum diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.j b/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.j new file mode 100644 index 0000000..d922fa8 --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayFleshEnum.j @@ -0,0 +1,28 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEDelayedSuspendDecayFleshEnumNullIncluded +#define YDWEDelayedSuspendDecayFleshEnumNullIncluded + + +library YDWEDelayedSuspendDecayFleshEnumNull + +function YDWEDelayedSuspendDecayFleshEnumNull takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 10.0) + call SetUnitAnimation(enumUnit, "decay flesh") + endif + set enumUnit = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.cfg b/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.cfg new file mode 100644 index 0000000..3b3534c --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.cfg @@ -0,0 +1 @@ +DelayedSuspendDecayStopAnimEnum diff --git a/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.j b/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.j new file mode 100644 index 0000000..3552c10 --- /dev/null +++ b/jass/AntiBJLeak/detail/DelayedSuspendDecayStopAnimEnum.j @@ -0,0 +1,26 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEDelayedSuspendDecayStopAnimEnumNullIncluded +#define YDWEDelayedSuspendDecayStopAnimEnumNullIncluded + + +library YDWEDelayedSuspendDecayStopAnimEnumNull + +function YDWEDelayedSuspendDecayStopAnimEnumNull takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call SetUnitTimeScale(enumUnit, 0.0001) + endif + set enumUnit = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/EnableCreepSleepBJ.cfg b/jass/AntiBJLeak/detail/EnableCreepSleepBJ.cfg new file mode 100644 index 0000000..8ec5faa --- /dev/null +++ b/jass/AntiBJLeak/detail/EnableCreepSleepBJ.cfg @@ -0,0 +1 @@ +EnableCreepSleepBJ diff --git a/jass/AntiBJLeak/detail/EnableCreepSleepBJ.j b/jass/AntiBJLeak/detail/EnableCreepSleepBJ.j new file mode 100644 index 0000000..b16c679 --- /dev/null +++ b/jass/AntiBJLeak/detail/EnableCreepSleepBJ.j @@ -0,0 +1,27 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEEnableCreepSleepBJNullIncluded +#define YDWEEnableCreepSleepBJNullIncluded + +#include "AntiBJLeak/detail/WakePlayerUnits.j" + +library YDWEEnableCreepSleepBJNull requires YDWEWakePlayerUnitsNull + +function YDWEEnableCreepSleepBJNull takes boolean enable returns nothing + call SetPlayerState(Player(PLAYER_NEUTRAL_AGGRESSIVE), PLAYER_STATE_NO_CREEP_SLEEP, IntegerTertiaryOp(enable, 0, 1)) + + // If we're disabling, attempt to wake any already-sleeping creeps. + if (not enable) then + call YDWEWakePlayerUnitsNull(Player(PLAYER_NEUTRAL_AGGRESSIVE)) + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.cfg b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.cfg new file mode 100644 index 0000000..1fd457a --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.cfg @@ -0,0 +1 @@ +EnumDestructablesInCircleBJ diff --git a/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.j b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.j new file mode 100644 index 0000000..bb11bda --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJ.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEEnumDestructablesInCircleBJNullIncluded +#define YDWEEnumDestructablesInCircleBJNullIncluded + +#include "AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.j" + +library YDWEEnumDestructablesInCircleBJNull requires YDWEEnumDestructablesInCircleBJFilterNull + +function YDWEEnumDestructablesInCircleBJNull takes real radius, location loc, code actionFunc returns nothing + local rect r + local real centerX = GetLocationX(loc) + local real centerY = GetLocationY(loc) + if radius >= 0 then + set bj_enumDestructableCenter = loc + set bj_enumDestructableRadius = radius + set r = Rect(centerX - radius, centerY - radius, centerX + radius, centerY + radius) + call EnumDestructablesInRect(r, Filter(function YDWEEnumDestructablesInCircleBJFilterNull), actionFunc) + call RemoveRect(r) + set r = null + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.cfg b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.cfg new file mode 100644 index 0000000..71c3173 --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.cfg @@ -0,0 +1 @@ +EnumDestructablesInCircleBJFilter diff --git a/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.j b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.j new file mode 100644 index 0000000..f2d5f97 --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumDestructablesInCircleBJFilter.j @@ -0,0 +1,23 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEEnumDestructablesInCircleBJFilterNullIncluded +#define YDWEEnumDestructablesInCircleBJFilterNullIncluded + + +library YDWEEnumDestructablesInCircleBJFilterNull + +function YDWEEnumDestructablesInCircleBJFilterNull takes nothing returns boolean + local real dx = GetDestructableX(GetFilterDestructable()) - GetLocationX(bj_enumDestructableCenter) + local real dy = GetDestructableY(GetFilterDestructable()) - GetLocationY(bj_enumDestructableCenter) + return dx * dx + dy * dy <= bj_enumDestructableRadius * bj_enumDestructableRadius +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/EnumUnitsSelected.cfg b/jass/AntiBJLeak/detail/EnumUnitsSelected.cfg new file mode 100644 index 0000000..2776248 --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumUnitsSelected.cfg @@ -0,0 +1 @@ +EnumUnitsSelected diff --git a/jass/AntiBJLeak/detail/EnumUnitsSelected.j b/jass/AntiBJLeak/detail/EnumUnitsSelected.j new file mode 100644 index 0000000..340c67a --- /dev/null +++ b/jass/AntiBJLeak/detail/EnumUnitsSelected.j @@ -0,0 +1,27 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEEnumUnitsSelectedNullIncluded +#define YDWEEnumUnitsSelectedNullIncluded + + +library YDWEEnumUnitsSelectedNull + +function YDWEEnumUnitsSelectedNull takes player whichPlayer, boolexpr enumFilter, code enumAction returns nothing + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, enumFilter) + call DestroyBoolExpr(enumFilter) + call ForGroup(g, enumAction) + call DestroyGroup(g) + set g = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetCurrentCameraSetup.cfg b/jass/AntiBJLeak/detail/GetCurrentCameraSetup.cfg new file mode 100644 index 0000000..dd187c8 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetCurrentCameraSetup.cfg @@ -0,0 +1 @@ +GetCurrentCameraSetup diff --git a/jass/AntiBJLeak/detail/GetCurrentCameraSetup.j b/jass/AntiBJLeak/detail/GetCurrentCameraSetup.j new file mode 100644 index 0000000..087a6de --- /dev/null +++ b/jass/AntiBJLeak/detail/GetCurrentCameraSetup.j @@ -0,0 +1,40 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetCurrentCameraSetupNullIncluded +#define YDWEGetCurrentCameraSetupNullIncluded + + +library YDWEGetCurrentCameraSetupNull + +globals +#ifndef YDWE_NNULLTEMPCAM_DEFVAR +#define YDWE_NNULLTEMPCAM_DEFVAR + camerasetup yd_NullTempCam +#endif +endglobals + +function YDWEGetCurrentCameraSetupNull takes nothing returns camerasetup + local camerasetup theCam = CreateCameraSetup() + local real duration = 0 + call CameraSetupSetField(theCam, CAMERA_FIELD_TARGET_DISTANCE, GetCameraField(CAMERA_FIELD_TARGET_DISTANCE), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FARZ, GetCameraField(CAMERA_FIELD_FARZ), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ZOFFSET, GetCameraField(CAMERA_FIELD_ZOFFSET), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ANGLE_OF_ATTACK, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FIELD_OF_VIEW, bj_RADTODEG * GetCameraField(CAMERA_FIELD_FIELD_OF_VIEW), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROLL, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROLL), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROTATION, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROTATION), duration) + call CameraSetupSetDestPosition(theCam, GetCameraTargetPositionX(), GetCameraTargetPositionY(), duration) + set yd_NullTempCam = theCam + set theCam = null + return yd_NullTempCam +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetForceOfPlayer.cfg b/jass/AntiBJLeak/detail/GetForceOfPlayer.cfg new file mode 100644 index 0000000..0c8d749 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetForceOfPlayer.cfg @@ -0,0 +1 @@ +GetForceOfPlayer diff --git a/jass/AntiBJLeak/detail/GetForceOfPlayer.j b/jass/AntiBJLeak/detail/GetForceOfPlayer.j new file mode 100644 index 0000000..e943461 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetForceOfPlayer.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetForceOfPlayerNullIncluded +#define YDWEGetForceOfPlayerNullIncluded + + +library YDWEGetForceOfPlayerNull + +globals +#ifndef YDWE_NNULLTEMPFORCE_DEFVAR +#define YDWE_NNULLTEMPFORCE_DEFVAR + force yd_NullTempForce +#endif +endglobals + +function YDWEGetForceOfPlayerNull takes player whichPlayer returns force + local force f = CreateForce() + call ForceAddPlayer(f, whichPlayer) + set yd_NullTempForce = f + set f = null + return yd_NullTempForce +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.cfg b/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.cfg new file mode 100644 index 0000000..d5c6c66 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.cfg @@ -0,0 +1 @@ +GetInventoryIndexOfItemTypeBJ diff --git a/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.j b/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.j new file mode 100644 index 0000000..9ce313e --- /dev/null +++ b/jass/AntiBJLeak/detail/GetInventoryIndexOfItemTypeBJ.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetInventoryIndexOfItemTypeBJNullIncluded +#define YDWEGetInventoryIndexOfItemTypeBJNullIncluded + + +library YDWEGetInventoryIndexOfItemTypeBJNull + +function YDWEGetInventoryIndexOfItemTypeBJNull takes unit whichUnit, integer itemId returns integer + local integer index = 0 + + if itemId != 0 then + loop + if GetItemTypeId(UnitItemInSlot(whichUnit, index)) == itemId then + return index + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + return 0 +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.cfg b/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.cfg new file mode 100644 index 0000000..591410c --- /dev/null +++ b/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.cfg @@ -0,0 +1 @@ +GetItemOfTypeFromUnitBJ diff --git a/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.j b/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.j new file mode 100644 index 0000000..438b889 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetItemOfTypeFromUnitBJ.j @@ -0,0 +1,38 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetItemOfTypeFromUnitBJNullIncluded +#define YDWEGetItemOfTypeFromUnitBJNullIncluded + + +library YDWEGetItemOfTypeFromUnitBJNull + +globals +#ifndef YDWE_NNULLTEMPITEM_DEFVAR +#define YDWE_NNULLTEMPITEM_DEFVAR + item yd_NullTempItem +#endif +endglobals + +function YDWEGetItemOfTypeFromUnitBJNull takes unit whichUnit, integer itemId returns item + local integer index = 0 + loop + set yd_NullTempItem = UnitItemInSlot(whichUnit, index) + if GetItemTypeId(yd_NullTempItem) == itemId then + return yd_NullTempItem + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + return null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetPlayersAllies.cfg b/jass/AntiBJLeak/detail/GetPlayersAllies.cfg new file mode 100644 index 0000000..d849b6f --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersAllies.cfg @@ -0,0 +1 @@ +GetPlayersAllies diff --git a/jass/AntiBJLeak/detail/GetPlayersAllies.j b/jass/AntiBJLeak/detail/GetPlayersAllies.j new file mode 100644 index 0000000..c029c0b --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersAllies.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetPlayersAlliesNullIncluded +#define YDWEGetPlayersAlliesNullIncluded + + +library YDWEGetPlayersAlliesNull + +globals +#ifndef YDWE_NNULLTEMPFORCE_DEFVAR +#define YDWE_NNULLTEMPFORCE_DEFVAR + force yd_NullTempForce +#endif +endglobals + +function YDWEGetPlayersAlliesNull takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumAllies(f, whichPlayer, null) + set yd_NullTempForce = f + set f = null + return yd_NullTempForce +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetPlayersByMapControl.cfg b/jass/AntiBJLeak/detail/GetPlayersByMapControl.cfg new file mode 100644 index 0000000..5dcf5eb --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersByMapControl.cfg @@ -0,0 +1 @@ +GetPlayersByMapControl diff --git a/jass/AntiBJLeak/detail/GetPlayersByMapControl.j b/jass/AntiBJLeak/detail/GetPlayersByMapControl.j new file mode 100644 index 0000000..2ac8db8 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersByMapControl.j @@ -0,0 +1,45 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetPlayersByMapControlNullIncluded +#define YDWEGetPlayersByMapControlNullIncluded + + +library YDWEGetPlayersByMapControlNull + +globals +#ifndef YDWE_NNULLTEMPFORCE_DEFVAR +#define YDWE_NNULLTEMPFORCE_DEFVAR + force yd_NullTempForce +#endif +endglobals + +function YDWEGetPlayersByMapControlNull takes mapcontrol whichControl returns force + local force f = CreateForce() + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if GetPlayerController(indexPlayer) == whichControl then + call ForceAddPlayer(f, indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYER_SLOTS + endloop + set indexPlayer = null + set yd_NullTempForce = f + set f = null + return yd_NullTempForce +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetPlayersEnemies.cfg b/jass/AntiBJLeak/detail/GetPlayersEnemies.cfg new file mode 100644 index 0000000..1dadecb --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersEnemies.cfg @@ -0,0 +1 @@ +GetPlayersEnemies diff --git a/jass/AntiBJLeak/detail/GetPlayersEnemies.j b/jass/AntiBJLeak/detail/GetPlayersEnemies.j new file mode 100644 index 0000000..a2a771f --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersEnemies.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetPlayersEnemiesNullIncluded +#define YDWEGetPlayersEnemiesNullIncluded + + +library YDWEGetPlayersEnemiesNull + +globals +#ifndef YDWE_NNULLTEMPFORCE_DEFVAR +#define YDWE_NNULLTEMPFORCE_DEFVAR + force yd_NullTempForce +#endif +endglobals + +function YDWEGetPlayersEnemiesNull takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumEnemies(f, whichPlayer, null) + set yd_NullTempForce = f + set f = null + return yd_NullTempForce +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetPlayersMatching.cfg b/jass/AntiBJLeak/detail/GetPlayersMatching.cfg new file mode 100644 index 0000000..ff3185d --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersMatching.cfg @@ -0,0 +1 @@ +GetPlayersMatching diff --git a/jass/AntiBJLeak/detail/GetPlayersMatching.j b/jass/AntiBJLeak/detail/GetPlayersMatching.j new file mode 100644 index 0000000..7994891 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetPlayersMatching.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetPlayersMatchingNullIncluded +#define YDWEGetPlayersMatchingNullIncluded + + +library YDWEGetPlayersMatchingNull + +globals +#ifndef YDWE_NNULLTEMPFORCE_DEFVAR +#define YDWE_NNULLTEMPFORCE_DEFVAR + force yd_NullTempForce +#endif +endglobals + +function YDWEGetPlayersMatchingNull takes boolexpr filter returns force + local force f = CreateForce() + call ForceEnumPlayers(f, filter) + call DestroyBoolExpr(filter) + set yd_NullTempForce = f + set f =null + return yd_NullTempForce +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetRandomSubGroup.cfg b/jass/AntiBJLeak/detail/GetRandomSubGroup.cfg new file mode 100644 index 0000000..4f3ad9f --- /dev/null +++ b/jass/AntiBJLeak/detail/GetRandomSubGroup.cfg @@ -0,0 +1 @@ +GetRandomSubGroup diff --git a/jass/AntiBJLeak/detail/GetRandomSubGroup.j b/jass/AntiBJLeak/detail/GetRandomSubGroup.j new file mode 100644 index 0000000..c7efefd --- /dev/null +++ b/jass/AntiBJLeak/detail/GetRandomSubGroup.j @@ -0,0 +1,31 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetRandomSubGroupNullIncluded +#define YDWEGetRandomSubGroupNullIncluded + +#include "AntiBJLeak/detail/GetRandomSubGroupEnum.j" + +library YDWEGetRandomSubGroupNull requires YDWEGetRandomSubGroupEnumNull + +function YDWEGetRandomSubGroupNull takes integer count, group sourceGroup returns group + set bj_randomSubGroupGroup = CreateGroup() + set bj_randomSubGroupWant = count + set bj_randomSubGroupTotal = CountUnitsInGroup(sourceGroup) + + if (bj_randomSubGroupWant <= 0 or bj_randomSubGroupTotal <= 0) then + return bj_randomSubGroupGroup + endif + + call ForGroup(sourceGroup, function YDWEGetRandomSubGroupEnumNull) + return bj_randomSubGroupGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.cfg b/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.cfg new file mode 100644 index 0000000..e0e1f34 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.cfg @@ -0,0 +1 @@ +GetRandomSubGroupEnum diff --git a/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.j b/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.j new file mode 100644 index 0000000..8aa9dff --- /dev/null +++ b/jass/AntiBJLeak/detail/GetRandomSubGroupEnum.j @@ -0,0 +1,28 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetRandomSubGroupEnumNullIncluded +#define YDWEGetRandomSubGroupEnumNullIncluded + + +library YDWEGetRandomSubGroupEnumNull + +function YDWEGetRandomSubGroupEnumNull takes nothing returns nothing + if (bj_randomSubGroupWant > 0) then + if (bj_randomSubGroupWant >= bj_randomSubGroupTotal) or (GetRandomInt(1,bj_randomSubGroupTotal) <= bj_randomSubGroupWant) then + // We either need every remaining unit, or the unit passed its chance check. + call GroupAddUnit(bj_randomSubGroupGroup, GetEnumUnit()) + set bj_randomSubGroupWant = bj_randomSubGroupWant - 1 + endif + endif + set bj_randomSubGroupTotal = bj_randomSubGroupTotal - 1 +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.cfg b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.cfg new file mode 100644 index 0000000..e5a86ad --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.cfg @@ -0,0 +1 @@ +GetUnitsInRangeOfLocAll diff --git a/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.j b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.j new file mode 100644 index 0000000..d7dae90 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocAll.j @@ -0,0 +1,22 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsInRangeOfLocAllNullIncluded +#define YDWEGetUnitsInRangeOfLocAllNullIncluded + +#include "AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.j" + +library YDWEGetUnitsInRangeOfLocAllNull requires YDWEGetUnitsInRangeOfLocMatchingNull + +function YDWEGetUnitsInRangeOfLocAllNull takes real radius, location whichLocation returns group + return YDWEGetUnitsInRangeOfLocMatchingNull(radius, whichLocation, null) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.cfg b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.cfg new file mode 100644 index 0000000..961bae3 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.cfg @@ -0,0 +1 @@ +GetUnitsInRangeOfLocMatching diff --git a/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.j b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.j new file mode 100644 index 0000000..772a74f --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRangeOfLocMatching.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsInRangeOfLocMatchingNullIncluded +#define YDWEGetUnitsInRangeOfLocMatchingNullIncluded + + +library YDWEGetUnitsInRangeOfLocMatchingNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsInRangeOfLocMatchingNull takes real radius, location whichLocation, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter) + call DestroyBoolExpr(filter) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectAll.cfg b/jass/AntiBJLeak/detail/GetUnitsInRectAll.cfg new file mode 100644 index 0000000..c41aa0c --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectAll.cfg @@ -0,0 +1 @@ +GetUnitsInRectAll diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectAll.j b/jass/AntiBJLeak/detail/GetUnitsInRectAll.j new file mode 100644 index 0000000..7dcdeff --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectAll.j @@ -0,0 +1,22 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsInRectAllNullIncluded +#define YDWEGetUnitsInRectAllNullIncluded + +#include "AntiBJLeak/detail/GetUnitsInRectMatching.j" + +library YDWEGetUnitsInRectAllNull requires YDWEGetUnitsInRectMatchingNull + +function YDWEGetUnitsInRectAllNull takes rect r returns group + return YDWEGetUnitsInRectMatchingNull(r, null) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectMatching.cfg b/jass/AntiBJLeak/detail/GetUnitsInRectMatching.cfg new file mode 100644 index 0000000..c59dd4f --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectMatching.cfg @@ -0,0 +1 @@ +GetUnitsInRectMatching diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectMatching.j b/jass/AntiBJLeak/detail/GetUnitsInRectMatching.j new file mode 100644 index 0000000..6d3d2c4 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectMatching.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsInRectMatchingNullIncluded +#define YDWEGetUnitsInRectMatchingNullIncluded + + +library YDWEGetUnitsInRectMatchingNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsInRectMatchingNull takes rect r, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRect(g, r, filter) + call DestroyBoolExpr(filter) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.cfg b/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.cfg new file mode 100644 index 0000000..0b0c841 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.cfg @@ -0,0 +1 @@ +GetUnitsInRectOfPlayer diff --git a/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.j b/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.j new file mode 100644 index 0000000..6e87c80 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsInRectOfPlayer.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsInRectOfPlayerNullIncluded +#define YDWEGetUnitsInRectOfPlayerNullIncluded + + +library YDWEGetUnitsInRectOfPlayerNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsInRectOfPlayerNull takes rect r, player whichPlayer returns group + local group g = CreateGroup() + set bj_groupEnumOwningPlayer = whichPlayer + call GroupEnumUnitsInRect(g, r, filterGetUnitsInRectOfPlayer) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.cfg b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.cfg new file mode 100644 index 0000000..140de1c --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.cfg @@ -0,0 +1 @@ +GetUnitsOfPlayerAll diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.j b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.j new file mode 100644 index 0000000..f2a300c --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAll.j @@ -0,0 +1,22 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsOfPlayerAllNullIncluded +#define YDWEGetUnitsOfPlayerAllNullIncluded + +#include "AntiBJLeak/detail/GetUnitsOfPlayerMatching.j" + +library YDWEGetUnitsOfPlayerAllNull requires YDWEGetUnitsOfPlayerMatchingNull + +function YDWEGetUnitsOfPlayerAllNull takes player whichPlayer returns group + return YDWEGetUnitsOfPlayerMatchingNull(whichPlayer, null) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.cfg b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.cfg new file mode 100644 index 0000000..af7663d --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.cfg @@ -0,0 +1 @@ +GetUnitsOfPlayerAndTypeId diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.j b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.j new file mode 100644 index 0000000..9cef180 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerAndTypeId.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsOfPlayerAndTypeIdNullIncluded +#define YDWEGetUnitsOfPlayerAndTypeIdNullIncluded + + +library YDWEGetUnitsOfPlayerAndTypeIdNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsOfPlayerAndTypeIdNull takes player whichPlayer, integer unitid returns group + local group g = CreateGroup() + set bj_groupEnumTypeId = unitid + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.cfg b/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.cfg new file mode 100644 index 0000000..a6cf8ed --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.cfg @@ -0,0 +1 @@ +GetUnitsOfPlayerMatching diff --git a/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.j b/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.j new file mode 100644 index 0000000..5b855f2 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfPlayerMatching.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsOfPlayerMatchingNullIncluded +#define YDWEGetUnitsOfPlayerMatchingNullIncluded + + +library YDWEGetUnitsOfPlayerMatchingNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsOfPlayerMatchingNull takes player whichPlayer, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, filter) + call DestroyBoolExpr(filter) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.cfg b/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.cfg new file mode 100644 index 0000000..fa48495 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.cfg @@ -0,0 +1 @@ +GetUnitsOfTypeIdAll diff --git a/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.j b/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.j new file mode 100644 index 0000000..77048c9 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsOfTypeIdAll.j @@ -0,0 +1,46 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsOfTypeIdAllNullIncluded +#define YDWEGetUnitsOfTypeIdAllNullIncluded + + +library YDWEGetUnitsOfTypeIdAllNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsOfTypeIdAllNull takes integer unitid returns group + local group result = CreateGroup() + local group g = CreateGroup() + local integer index + + set index = 0 + loop + set bj_groupEnumTypeId = unitid + call GroupClear(g) + call GroupEnumUnitsOfPlayer(g, Player(index), filterGetUnitsOfTypeIdAll) + call GroupAddGroup(g, result) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) + set g = null + set yd_NullTempGroup = result + set result = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/GetUnitsSelectedAll.cfg b/jass/AntiBJLeak/detail/GetUnitsSelectedAll.cfg new file mode 100644 index 0000000..435c300 --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsSelectedAll.cfg @@ -0,0 +1 @@ +GetUnitsSelectedAll diff --git a/jass/AntiBJLeak/detail/GetUnitsSelectedAll.j b/jass/AntiBJLeak/detail/GetUnitsSelectedAll.j new file mode 100644 index 0000000..59dc5cf --- /dev/null +++ b/jass/AntiBJLeak/detail/GetUnitsSelectedAll.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEGetUnitsSelectedAllNullIncluded +#define YDWEGetUnitsSelectedAllNullIncluded + + +library YDWEGetUnitsSelectedAllNull + +globals +#ifndef YDWE_NNULLTEMPGROUP_DEFVAR +#define YDWE_NNULLTEMPGROUP_DEFVAR + group yd_NullTempGroup +#endif +endglobals + +function YDWEGetUnitsSelectedAllNull takes player whichPlayer returns group + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, null) + set yd_NullTempGroup = g + set g = null + return yd_NullTempGroup +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.cfg b/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.cfg new file mode 100644 index 0000000..0684ed7 --- /dev/null +++ b/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.cfg @@ -0,0 +1 @@ +InitRescuableBehaviorBJ diff --git a/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.j b/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.j new file mode 100644 index 0000000..56e1e32 --- /dev/null +++ b/jass/AntiBJLeak/detail/InitRescuableBehaviorBJ.j @@ -0,0 +1,34 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEInitRescuableBehaviorBJNullIncluded +#define YDWEInitRescuableBehaviorBJNullIncluded + +#include "AntiBJLeak/detail/TryInitRescuableTriggersBJ.j" + +library YDWEInitRescuableBehaviorBJNull requires YDWETryInitRescuableTriggersBJNull + +function YDWEInitRescuableBehaviorBJNull takes nothing returns nothing + local integer index + + set index = 0 + loop + // If at least one player slot is "Rescuable"-controlled, init the + // rescue behavior triggers. + if (GetPlayerController(Player(index)) == MAP_CONTROL_RESCUABLE) then + call YDWETryInitRescuableTriggersBJNull() + return + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.cfg b/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.cfg new file mode 100644 index 0000000..829fe15 --- /dev/null +++ b/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.cfg @@ -0,0 +1 @@ +IssueBuildOrderByIdLocBJ diff --git a/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.j b/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.j new file mode 100644 index 0000000..331fc43 --- /dev/null +++ b/jass/AntiBJLeak/detail/IssueBuildOrderByIdLocBJ.j @@ -0,0 +1,26 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEIssueBuildOrderByIdLocBJNullIncluded +#define YDWEIssueBuildOrderByIdLocBJNullIncluded + +#include "AntiBJLeak/detail/IssueHauntOrderAtLocBJ.j" + +library YDWEIssueBuildOrderByIdLocBJNull requires YDWEIssueHauntOrderAtLocBJNull + +function YDWEIssueBuildOrderByIdLocBJNull takes unit whichPeon, integer unitId, location loc returns boolean + if (unitId == 'ugol') then + return YDWEIssueHauntOrderAtLocBJNull(whichPeon, loc) + else + return IssueBuildOrderById(whichPeon, unitId, GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.cfg b/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.cfg new file mode 100644 index 0000000..450ae52 --- /dev/null +++ b/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.cfg @@ -0,0 +1 @@ +IssueHauntOrderAtLocBJ diff --git a/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.j b/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.j new file mode 100644 index 0000000..8366abf --- /dev/null +++ b/jass/AntiBJLeak/detail/IssueHauntOrderAtLocBJ.j @@ -0,0 +1,45 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEIssueHauntOrderAtLocBJNullIncluded +#define YDWEIssueHauntOrderAtLocBJNullIncluded + + +library YDWEIssueHauntOrderAtLocBJNull + +globals +#ifndef YDWE_NNULLTEMPUNIT_DEFVAR +#define YDWE_NNULLTEMPUNIT_DEFVAR + unit yd_NullTempUnit +#endif +endglobals + +function YDWEIssueHauntOrderAtLocBJNull takes unit whichPeon, location loc returns boolean + local group g = null + local unit goldMine = null + + // Search for a gold mine within a 1-cell radius of the specified location. + set g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, loc, 2*bj_CELLWIDTH, filterIssueHauntOrderAtLocBJ) + set goldMine = FirstOfGroup(g) + call DestroyGroup(g) + set g = null + + // If no mine was found, abort the request. + if (goldMine == null) then + return false + endif + set yd_NullTempUnit = goldMine + set goldMine = null + // Issue the Haunt Gold Mine order. + return IssueTargetOrderById(whichPeon, 'ugol', yd_NullTempUnit) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.cfg b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.cfg new file mode 100644 index 0000000..166a35a --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.cfg @@ -0,0 +1 @@ +MakeUnitRescuableToForceBJ diff --git a/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.j b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.j new file mode 100644 index 0000000..76468d0 --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJ.j @@ -0,0 +1,25 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMakeUnitRescuableToForceBJNullIncluded +#define YDWEMakeUnitRescuableToForceBJNullIncluded + +#include "AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.j" + +library YDWEMakeUnitRescuableToForceBJNull requires YDWEMakeUnitRescuableToForceBJEnumNull + +function YDWEMakeUnitRescuableToForceBJNull takes unit whichUnit, boolean isRescuable, force whichForce returns nothing + // Flag the unit as rescuable/unrescuable for the appropriate players. + set bj_makeUnitRescuableUnit = whichUnit + set bj_makeUnitRescuableFlag = isRescuable + call ForForce(whichForce, function YDWEMakeUnitRescuableToForceBJEnumNull) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.cfg b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.cfg new file mode 100644 index 0000000..e0169ce --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.cfg @@ -0,0 +1 @@ +MakeUnitRescuableToForceBJEnum diff --git a/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.j b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.j new file mode 100644 index 0000000..c04aefd --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitRescuableToForceBJEnum.j @@ -0,0 +1,23 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMakeUnitRescuableToForceBJEnumNullIncluded +#define YDWEMakeUnitRescuableToForceBJEnumNullIncluded + +#include "AntiBJLeak/detail/TryInitRescuableTriggersBJ.j" + +library YDWEMakeUnitRescuableToForceBJEnumNull requires YDWETryInitRescuableTriggersBJNull + +function YDWEMakeUnitRescuableToForceBJEnumNull takes nothing returns nothing + call YDWETryInitRescuableTriggersBJNull() + call SetUnitRescuable(bj_makeUnitRescuableUnit, GetEnumPlayer(), bj_makeUnitRescuableFlag) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.cfg b/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.cfg new file mode 100644 index 0000000..f851066 --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.cfg @@ -0,0 +1 @@ +MakeUnitsPassiveForPlayer diff --git a/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.j b/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.j new file mode 100644 index 0000000..5c1f41e --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitsPassiveForPlayer.j @@ -0,0 +1,26 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMakeUnitsPassiveForPlayerNullIncluded +#define YDWEMakeUnitsPassiveForPlayerNullIncluded + + +library YDWEMakeUnitsPassiveForPlayerNull + +function YDWEMakeUnitsPassiveForPlayerNull takes player whichPlayer returns nothing + local group playerUnits = CreateGroup() + call CachePlayerHeroData(whichPlayer) + call GroupEnumUnitsOfPlayer(playerUnits, whichPlayer, null) + call ForGroup(playerUnits, function MakeUnitsPassiveForPlayerEnum) + call DestroyGroup(playerUnits) + set playerUnits = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.cfg b/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.cfg new file mode 100644 index 0000000..c9c1cea --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.cfg @@ -0,0 +1 @@ +MakeUnitsPassiveForTeam diff --git a/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.j b/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.j new file mode 100644 index 0000000..29ecae4 --- /dev/null +++ b/jass/AntiBJLeak/detail/MakeUnitsPassiveForTeam.j @@ -0,0 +1,35 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMakeUnitsPassiveForTeamNullIncluded +#define YDWEMakeUnitsPassiveForTeamNullIncluded + +#include "AntiBJLeak/detail/MakeUnitsPassiveForPlayer.j" + +library YDWEMakeUnitsPassiveForTeamNull requires YDWEMakeUnitsPassiveForPlayerNull + +function YDWEMakeUnitsPassiveForTeamNull takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) then + call YDWEMakeUnitsPassiveForPlayerNull(indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + set indexPlayer = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.cfg b/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.cfg new file mode 100644 index 0000000..4aa6329 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.cfg @@ -0,0 +1 @@ +MultiboardSetItemColorBJ diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.j b/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.j new file mode 100644 index 0000000..5bc227b --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemColorBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMultiboardSetItemColorBJNullIncluded +#define YDWEMultiboardSetItemColorBJNullIncluded + + +library YDWEMultiboardSetItemColorBJNull + +function YDWEMultiboardSetItemColorBJNull takes multiboard mb, integer col, integer row, real red, real green, real blue, real transparency returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValueColor(mbitem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop + set mbitem = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.cfg b/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.cfg new file mode 100644 index 0000000..84991a8 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.cfg @@ -0,0 +1 @@ +MultiboardSetItemIconBJ diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.j b/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.j new file mode 100644 index 0000000..deca518 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemIconBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMultiboardSetItemIconBJNullIncluded +#define YDWEMultiboardSetItemIconBJNullIncluded + + +library YDWEMultiboardSetItemIconBJNull + +function YDWEMultiboardSetItemIconBJNull takes multiboard mb, integer col, integer row, string iconFileName returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemIcon(mbitem, iconFileName) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop + set mbitem = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.cfg b/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.cfg new file mode 100644 index 0000000..2616c29 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.cfg @@ -0,0 +1 @@ +MultiboardSetItemStyleBJ diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.j b/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.j new file mode 100644 index 0000000..a4b631a --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemStyleBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMultiboardSetItemStyleBJNullIncluded +#define YDWEMultiboardSetItemStyleBJNullIncluded + + +library YDWEMultiboardSetItemStyleBJNull + +function YDWEMultiboardSetItemStyleBJNull takes multiboard mb, integer col, integer row, boolean showValue, boolean showIcon returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemStyle(mbitem, showValue, showIcon) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop + set mbitem = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.cfg b/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.cfg new file mode 100644 index 0000000..94c20d5 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.cfg @@ -0,0 +1 @@ +MultiboardSetItemValueBJ diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.j b/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.j new file mode 100644 index 0000000..40082fd --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemValueBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMultiboardSetItemValueBJNullIncluded +#define YDWEMultiboardSetItemValueBJNullIncluded + + +library YDWEMultiboardSetItemValueBJNull + +function YDWEMultiboardSetItemValueBJNull takes multiboard mb, integer col, integer row, string val returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValue(mbitem, val) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop + set mbitem = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.cfg b/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.cfg new file mode 100644 index 0000000..09df1c4 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.cfg @@ -0,0 +1 @@ +MultiboardSetItemWidthBJ diff --git a/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.j b/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.j new file mode 100644 index 0000000..de0b819 --- /dev/null +++ b/jass/AntiBJLeak/detail/MultiboardSetItemWidthBJ.j @@ -0,0 +1,49 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEMultiboardSetItemWidthBJNullIncluded +#define YDWEMultiboardSetItemWidthBJNullIncluded + + +library YDWEMultiboardSetItemWidthBJNull + +function YDWEMultiboardSetItemWidthBJNull takes multiboard mb, integer col, integer row, real width returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemWidth(mbitem, width/100.0) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop + set mbitem = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/NearbyElevatorExists.cfg b/jass/AntiBJLeak/detail/NearbyElevatorExists.cfg new file mode 100644 index 0000000..4e6b4a6 --- /dev/null +++ b/jass/AntiBJLeak/detail/NearbyElevatorExists.cfg @@ -0,0 +1 @@ +NearbyElevatorExists diff --git a/jass/AntiBJLeak/detail/NearbyElevatorExists.j b/jass/AntiBJLeak/detail/NearbyElevatorExists.j new file mode 100644 index 0000000..51c5e18 --- /dev/null +++ b/jass/AntiBJLeak/detail/NearbyElevatorExists.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWENearbyElevatorExistsNullIncluded +#define YDWENearbyElevatorExistsNullIncluded + +#include "AntiBJLeak/detail/NearbyElevatorExistsEnum.j" + +library YDWENearbyElevatorExistsNull requires YDWENearbyElevatorExistsEnumNull + +function YDWENearbyElevatorExistsNull takes real x, real y returns boolean + local real findThreshold = 32 + local rect r + + // If another elevator is overlapping this one, ignore the wall. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorNeighbor = null + call EnumDestructablesInRect(r, null, function YDWENearbyElevatorExistsEnumNull) + call RemoveRect(r) + set r = null + + return bj_elevatorNeighbor != null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.cfg b/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.cfg new file mode 100644 index 0000000..32b7477 --- /dev/null +++ b/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.cfg @@ -0,0 +1 @@ +NearbyElevatorExistsEnum diff --git a/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.j b/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.j new file mode 100644 index 0000000..8ec090b --- /dev/null +++ b/jass/AntiBJLeak/detail/NearbyElevatorExistsEnum.j @@ -0,0 +1,27 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWENearbyElevatorExistsEnumNullIncluded +#define YDWENearbyElevatorExistsEnumNullIncluded + + +library YDWENearbyElevatorExistsEnumNull + +function YDWENearbyElevatorExistsEnumNull takes nothing returns nothing + local destructable d = GetEnumDestructable() + local integer dType = GetDestructableTypeId(d) + + if (dType == bj_ELEVATOR_CODE01) or (dType == bj_ELEVATOR_CODE02) then + set bj_elevatorNeighbor = d + endif + set d = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.cfg b/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.cfg new file mode 100644 index 0000000..6b88375 --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.cfg @@ -0,0 +1 @@ +NudgeItemsInRectEnum diff --git a/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.j b/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.j new file mode 100644 index 0000000..df5c414 --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeItemsInRectEnum.j @@ -0,0 +1,24 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWENudgeItemsInRectEnumNullIncluded +#define YDWENudgeItemsInRectEnumNullIncluded + + +library YDWENudgeItemsInRectEnumNull + +function YDWENudgeItemsInRectEnumNull takes nothing returns nothing + local item nudgee = GetEnumItem() + + call SetItemPosition(nudgee, GetItemX(nudgee), GetItemY(nudgee)) + set nudgee = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/NudgeObjectsInRect.cfg b/jass/AntiBJLeak/detail/NudgeObjectsInRect.cfg new file mode 100644 index 0000000..3df4f99 --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeObjectsInRect.cfg @@ -0,0 +1 @@ +NudgeObjectsInRect diff --git a/jass/AntiBJLeak/detail/NudgeObjectsInRect.j b/jass/AntiBJLeak/detail/NudgeObjectsInRect.j new file mode 100644 index 0000000..ed7842e --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeObjectsInRect.j @@ -0,0 +1,29 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWENudgeObjectsInRectNullIncluded +#define YDWENudgeObjectsInRectNullIncluded + +#include "AntiBJLeak/detail/NudgeUnitsInRectEnum.j" +#include "AntiBJLeak/detail/NudgeItemsInRectEnum.j" + +library YDWENudgeObjectsInRectNull requires YDWENudgeUnitsInRectEnumNull, YDWENudgeItemsInRectEnumNull + +function YDWENudgeObjectsInRectNull takes rect nudgeArea returns nothing + local group g = CreateGroup() + call GroupEnumUnitsInRect(g, nudgeArea, null) + call ForGroup(g, function YDWENudgeUnitsInRectEnumNull) + call DestroyGroup(g) + set g = null + + call EnumItemsInRect(nudgeArea, null, function YDWENudgeItemsInRectEnumNull) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.cfg b/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.cfg new file mode 100644 index 0000000..11f932b --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.cfg @@ -0,0 +1 @@ +NudgeUnitsInRectEnum diff --git a/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.j b/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.j new file mode 100644 index 0000000..c029b8f --- /dev/null +++ b/jass/AntiBJLeak/detail/NudgeUnitsInRectEnum.j @@ -0,0 +1,24 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWENudgeUnitsInRectEnumNullIncluded +#define YDWENudgeUnitsInRectEnumNullIncluded + + +library YDWENudgeUnitsInRectEnumNull + +function YDWENudgeUnitsInRectEnumNull takes nothing returns nothing + local unit nudgee = GetEnumUnit() + + call SetUnitPosition(nudgee, GetUnitX(nudgee), GetUnitY(nudgee)) + set nudgee = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/PauseAllUnitsBJ.cfg b/jass/AntiBJLeak/detail/PauseAllUnitsBJ.cfg new file mode 100644 index 0000000..7127ba8 --- /dev/null +++ b/jass/AntiBJLeak/detail/PauseAllUnitsBJ.cfg @@ -0,0 +1 @@ +PauseAllUnitsBJ diff --git a/jass/AntiBJLeak/detail/PauseAllUnitsBJ.j b/jass/AntiBJLeak/detail/PauseAllUnitsBJ.j new file mode 100644 index 0000000..5b33110 --- /dev/null +++ b/jass/AntiBJLeak/detail/PauseAllUnitsBJ.j @@ -0,0 +1,45 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEPauseAllUnitsBJNullIncluded +#define YDWEPauseAllUnitsBJNullIncluded + + +library YDWEPauseAllUnitsBJNull + +function YDWEPauseAllUnitsBJNull takes boolean pause returns nothing + local integer index + local player indexPlayer + local group g + + set bj_pauseAllUnitsFlag = pause + set g = CreateGroup() + set index = 0 + loop + set indexPlayer = Player( index ) + + // If this is a computer slot, pause/resume the AI. + if (GetPlayerController( indexPlayer ) == MAP_CONTROL_COMPUTER) then + call PauseCompAI( indexPlayer, pause ) + endif + + // Enumerate and unpause every unit owned by the player. + call GroupEnumUnitsOfPlayer( g, indexPlayer, null ) + call ForGroup( g, function PauseAllUnitsBJEnum ) + call GroupClear( g ) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) + set g = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/PlaySound.cfg b/jass/AntiBJLeak/detail/PlaySound.cfg new file mode 100644 index 0000000..75ac336 --- /dev/null +++ b/jass/AntiBJLeak/detail/PlaySound.cfg @@ -0,0 +1 @@ +PlaySound diff --git a/jass/AntiBJLeak/detail/PlaySound.j b/jass/AntiBJLeak/detail/PlaySound.j new file mode 100644 index 0000000..9f6d21d --- /dev/null +++ b/jass/AntiBJLeak/detail/PlaySound.j @@ -0,0 +1,24 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEPlaySoundNullIncluded +#define YDWEPlaySoundNullIncluded + + +library YDWEPlaySoundNull + +function YDWEPlaySoundNull takes string soundName returns nothing + local sound soundHandle = CreateSound(soundName, false, false, true, 12700, 12700, "") + call StartSound(soundHandle) + call KillSoundWhenDone(soundHandle) + set soundHandle = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/PolledWait.cfg b/jass/AntiBJLeak/detail/PolledWait.cfg new file mode 100644 index 0000000..c324475 --- /dev/null +++ b/jass/AntiBJLeak/detail/PolledWait.cfg @@ -0,0 +1 @@ +PolledWait diff --git a/jass/AntiBJLeak/detail/PolledWait.j b/jass/AntiBJLeak/detail/PolledWait.j new file mode 100644 index 0000000..29c32ce --- /dev/null +++ b/jass/AntiBJLeak/detail/PolledWait.j @@ -0,0 +1,42 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEPolledWaitNullIncluded +#define YDWEPolledWaitNullIncluded + + +library YDWEPolledWaitNull + +function YDWEPolledWaitNull takes real duration returns nothing + local timer t + local real timeRemaining + + if (duration > 0) then + set t = CreateTimer() + call TimerStart(t, duration, false, null) + loop + set timeRemaining = TimerGetRemaining(t) + exitwhen timeRemaining <= 0 + + // If we have a bit of time left, skip past 10% of the remaining + // duration instead of checking every interval, to minimize the + // polling on long waits. + if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then + call TriggerSleepAction(0.1 * timeRemaining) + else + call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL) + endif + endloop + call DestroyTimer(t) + endif + set t = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/ReplaceUnitBJ.cfg b/jass/AntiBJLeak/detail/ReplaceUnitBJ.cfg new file mode 100644 index 0000000..bc439f9 --- /dev/null +++ b/jass/AntiBJLeak/detail/ReplaceUnitBJ.cfg @@ -0,0 +1 @@ +ReplaceUnitBJ diff --git a/jass/AntiBJLeak/detail/ReplaceUnitBJ.j b/jass/AntiBJLeak/detail/ReplaceUnitBJ.j new file mode 100644 index 0000000..898bb19 --- /dev/null +++ b/jass/AntiBJLeak/detail/ReplaceUnitBJ.j @@ -0,0 +1,109 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEReplaceUnitBJNullIncluded +#define YDWEReplaceUnitBJNullIncluded + + +library YDWEReplaceUnitBJNull + +function YDWEReplaceUnitBJNull takes unit whichUnit, integer newUnitId, integer unitStateMethod returns unit + local unit oldUnit = whichUnit + local unit newUnit + local boolean wasHidden + local integer index + local item indexItem + local real oldRatio + + // If we have bogus data, don't attempt the replace. + if (whichUnit == null) then + set bj_lastReplacedUnit = whichUnit + return bj_lastReplacedUnit + endif + + // Hide the original unit. + set wasHidden = IsUnitHidden(oldUnit) + call ShowUnit(oldUnit, false) + + // Create the replacement unit. + if (newUnitId == 'ugol') then + set newUnit = CreateBlightedGoldmine(GetOwningPlayer(oldUnit), GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + else + set newUnit = CreateUnit(GetOwningPlayer(oldUnit), newUnitId, GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + endif + + // Set the unit's life and mana according to the requested method. + if (unitStateMethod == bj_UNIT_STATE_METHOD_RELATIVE) then + // Set the replacement's current/max life ratio to that of the old unit. + // If both units have mana, do the same for mana. + if (GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_LIFE) / GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) + call SetUnitState(newUnit, UNIT_STATE_LIFE, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + endif + + if (GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) > 0) and (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_MANA) / GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) + call SetUnitState(newUnit, UNIT_STATE_MANA, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_ABSOLUTE) then + // Set the replacement's current life to that of the old unit. + // If the new unit has mana, do the same for mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(oldUnit, UNIT_STATE_LIFE)) + if (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(oldUnit, UNIT_STATE_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_DEFAULTS) then + // The newly created unit should already have default life and mana. + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_MAXIMUM) then + // Use max life and mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + else + // Unrecognized unit state method - ignore the request. + endif + + // Mirror properties of the old unit onto the new unit. + //call PauseUnit(newUnit, IsUnitPaused(oldUnit)) + call SetResourceAmount(newUnit, GetResourceAmount(oldUnit)) + + // If both the old and new units are heroes, handle their hero info. + if (IsUnitType(oldUnit, UNIT_TYPE_HERO) and IsUnitType(newUnit, UNIT_TYPE_HERO)) then + call SetHeroXP(newUnit, GetHeroXP(oldUnit), false) + + set index = 0 + loop + set indexItem = UnitItemInSlot(oldUnit, index) + if (indexItem != null) then + call UnitRemoveItem(oldUnit, indexItem) + call UnitAddItem(newUnit, indexItem) + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + + // Remove or kill the original unit. It is sometimes unsafe to remove + // hidden units, so kill the original unit if it was previously hidden. + if wasHidden then + call KillUnit(oldUnit) + call RemoveUnit(oldUnit) + else + call RemoveUnit(oldUnit) + endif + + set bj_lastReplacedUnit = newUnit + set oldUnit = null + set newUnit = null + set indexItem = null + return bj_lastReplacedUnit +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/SetPlayerColorBJ.cfg b/jass/AntiBJLeak/detail/SetPlayerColorBJ.cfg new file mode 100644 index 0000000..fa86580 --- /dev/null +++ b/jass/AntiBJLeak/detail/SetPlayerColorBJ.cfg @@ -0,0 +1 @@ +SetPlayerColorBJ diff --git a/jass/AntiBJLeak/detail/SetPlayerColorBJ.j b/jass/AntiBJLeak/detail/SetPlayerColorBJ.j new file mode 100644 index 0000000..8db0fd8 --- /dev/null +++ b/jass/AntiBJLeak/detail/SetPlayerColorBJ.j @@ -0,0 +1,31 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWESetPlayerColorBJNullIncluded +#define YDWESetPlayerColorBJNullIncluded + + +library YDWESetPlayerColorBJNull + +function YDWESetPlayerColorBJNull takes player whichPlayer, playercolor color, boolean changeExisting returns nothing + local group g + + call SetPlayerColor(whichPlayer, color) + if changeExisting then + set bj_setPlayerTargetColor = color + set g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function SetPlayerColorBJEnum) + call DestroyGroup(g) + endif + set g = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.cfg b/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.cfg new file mode 100644 index 0000000..05c9e51 --- /dev/null +++ b/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.cfg @@ -0,0 +1 @@ +SetUnitFacingToFaceLocTimed diff --git a/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.j b/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.j new file mode 100644 index 0000000..101e9cb --- /dev/null +++ b/jass/AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.j @@ -0,0 +1,25 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWESetUnitFacingToFaceLocTimedNullIncluded +#define YDWESetUnitFacingToFaceLocTimedNullIncluded + + +library YDWESetUnitFacingToFaceLocTimedNull + +function YDWESetUnitFacingToFaceLocTimedNull takes unit whichUnit, location target, real duration returns nothing + local location unitLoc = GetUnitLoc(whichUnit) + + call SetUnitFacingTimed(whichUnit, AngleBetweenPoints(unitLoc, target), duration) + call RemoveLocation(unitLoc) + set unitLoc = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.cfg b/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.cfg new file mode 100644 index 0000000..831fb63 --- /dev/null +++ b/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.cfg @@ -0,0 +1 @@ +SetUnitFacingToFaceUnitTimed diff --git a/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.j b/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.j new file mode 100644 index 0000000..97edd18 --- /dev/null +++ b/jass/AntiBJLeak/detail/SetUnitFacingToFaceUnitTimed.j @@ -0,0 +1,26 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWESetUnitFacingToFaceUnitTimedNullIncluded +#define YDWESetUnitFacingToFaceUnitTimedNullIncluded + +#include "AntiBJLeak/detail/SetUnitFacingToFaceLocTimed.j" + +library YDWESetUnitFacingToFaceUnitTimedNull requires YDWESetUnitFacingToFaceLocTimedNull + +function YDWESetUnitFacingToFaceUnitTimedNull takes unit whichUnit, unit target, real duration returns nothing + local location unitLoc = GetUnitLoc(target) + + call YDWESetUnitFacingToFaceLocTimedNull(whichUnit, unitLoc, duration) + call RemoveLocation(unitLoc) + set unitLoc = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/SmartCameraPanBJ.cfg b/jass/AntiBJLeak/detail/SmartCameraPanBJ.cfg new file mode 100644 index 0000000..90163df --- /dev/null +++ b/jass/AntiBJLeak/detail/SmartCameraPanBJ.cfg @@ -0,0 +1 @@ +SmartCameraPanBJ diff --git a/jass/AntiBJLeak/detail/SmartCameraPanBJ.j b/jass/AntiBJLeak/detail/SmartCameraPanBJ.j new file mode 100644 index 0000000..5c2f5d5 --- /dev/null +++ b/jass/AntiBJLeak/detail/SmartCameraPanBJ.j @@ -0,0 +1,38 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWESmartCameraPanBJNullIncluded +#define YDWESmartCameraPanBJNullIncluded + + +library YDWESmartCameraPanBJNull + +function YDWESmartCameraPanBJNull takes player whichPlayer, location loc, real duration returns nothing + local real dist2 + local real dx + local real dy + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + set dx = GetCameraTargetPositionX() - GetLocationX(loc) + set dy = GetCameraTargetPositionY() - GetLocationY(loc) + set dist2 = dx * dx + dy * dy + if (dist2 >= bj_SMARTPAN_TRESHOLD_SNAP*bj_SMARTPAN_TRESHOLD_SNAP) then + // If the user is too far away, snap the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), 0) + elseif (dist2 >= bj_SMARTPAN_TRESHOLD_PAN*bj_SMARTPAN_TRESHOLD_PAN) then + // If the user is moderately close, pan the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + else + // User is close enough, so don't touch the camera. + endif + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.cfg b/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.cfg new file mode 100644 index 0000000..953927f --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.cfg @@ -0,0 +1 @@ +TriggerActionUnitRescuedBJ diff --git a/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.j b/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.j new file mode 100644 index 0000000..0936520 --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerActionUnitRescuedBJ.j @@ -0,0 +1,28 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWETriggerActionUnitRescuedBJNullIncluded +#define YDWETriggerActionUnitRescuedBJNullIncluded + + +library YDWETriggerActionUnitRescuedBJNull + +function YDWETriggerActionUnitRescuedBJNull takes nothing returns nothing + local unit theUnit = GetTriggerUnit() + + if IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorBldg) + else + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorUnit) + endif + set theUnit = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.cfg b/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.cfg new file mode 100644 index 0000000..6e74cec --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.cfg @@ -0,0 +1 @@ +TriggerRegisterEnterRectSimple diff --git a/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.j b/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.j new file mode 100644 index 0000000..1f13ebe --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerRegisterEnterRectSimple.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWETriggerRegisterEnterRectSimpleNullIncluded +#define YDWETriggerRegisterEnterRectSimpleNullIncluded + + +library YDWETriggerRegisterEnterRectSimpleNull + +globals +#ifndef YDWE_NNULLTEMPREGION_DEFVAR +#define YDWE_NNULLTEMPREGION_DEFVAR + region yd_NullTempRegion +#endif +endglobals + +function YDWETriggerRegisterEnterRectSimpleNull takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + set yd_NullTempRegion = rectRegion + set rectRegion = null + return TriggerRegisterEnterRegion(trig, yd_NullTempRegion, null) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.cfg b/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.cfg new file mode 100644 index 0000000..1534a80 --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.cfg @@ -0,0 +1 @@ +TriggerRegisterLeaveRectSimple diff --git a/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.j b/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.j new file mode 100644 index 0000000..a345aa3 --- /dev/null +++ b/jass/AntiBJLeak/detail/TriggerRegisterLeaveRectSimple.j @@ -0,0 +1,32 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWETriggerRegisterLeaveRectSimpleNullIncluded +#define YDWETriggerRegisterLeaveRectSimpleNullIncluded + + +library YDWETriggerRegisterLeaveRectSimpleNull + +globals +#ifndef YDWE_NNULLTEMPREGION_DEFVAR +#define YDWE_NNULLTEMPREGION_DEFVAR + region yd_NullTempRegion +#endif +endglobals + +function YDWETriggerRegisterLeaveRectSimpleNull takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + set yd_NullTempRegion = rectRegion + set rectRegion = null + return TriggerRegisterLeaveRegion(trig, yd_NullTempRegion, null) +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.cfg b/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.cfg new file mode 100644 index 0000000..670f0b6 --- /dev/null +++ b/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.cfg @@ -0,0 +1 @@ +TryInitRescuableTriggersBJ diff --git a/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.j b/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.j new file mode 100644 index 0000000..c855f71 --- /dev/null +++ b/jass/AntiBJLeak/detail/TryInitRescuableTriggersBJ.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWETryInitRescuableTriggersBJNullIncluded +#define YDWETryInitRescuableTriggersBJNullIncluded + +#include "AntiBJLeak/detail/TriggerActionUnitRescuedBJ.j" + +library YDWETryInitRescuableTriggersBJNull requires YDWETriggerActionUnitRescuedBJNull + +function YDWETryInitRescuableTriggersBJNull takes nothing returns nothing + local integer index + + if (bj_rescueUnitBehavior == null) then + set bj_rescueUnitBehavior = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(bj_rescueUnitBehavior, Player(index), EVENT_PLAYER_UNIT_RESCUED, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call TriggerAddAction(bj_rescueUnitBehavior, function YDWETriggerActionUnitRescuedBJNull) + endif +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.cfg b/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.cfg new file mode 100644 index 0000000..36bc9d5 --- /dev/null +++ b/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.cfg @@ -0,0 +1 @@ +UnitHasItemOfTypeBJ diff --git a/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.j b/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.j new file mode 100644 index 0000000..bdb023a --- /dev/null +++ b/jass/AntiBJLeak/detail/UnitHasItemOfTypeBJ.j @@ -0,0 +1,33 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEUnitHasItemOfTypeBJNullIncluded +#define YDWEUnitHasItemOfTypeBJNullIncluded + + +library YDWEUnitHasItemOfTypeBJNull + +function YDWEUnitHasItemOfTypeBJNull takes unit whichUnit, integer itemId returns boolean + local integer index = 0 + + if itemId != 0 then + loop + if GetItemTypeId(UnitItemInSlot(whichUnit, index)) == itemId then + return true + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + return false +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/AntiBJLeak/detail/WakePlayerUnits.cfg b/jass/AntiBJLeak/detail/WakePlayerUnits.cfg new file mode 100644 index 0000000..b215890 --- /dev/null +++ b/jass/AntiBJLeak/detail/WakePlayerUnits.cfg @@ -0,0 +1 @@ +WakePlayerUnits diff --git a/jass/AntiBJLeak/detail/WakePlayerUnits.j b/jass/AntiBJLeak/detail/WakePlayerUnits.j new file mode 100644 index 0000000..7fcdd5b --- /dev/null +++ b/jass/AntiBJLeak/detail/WakePlayerUnits.j @@ -0,0 +1,25 @@ +#if 0 +//--------------------------------------------// +// 本文件为自动生成,请勿编辑 // +// thanks to 最萌小汐 // +//--------------------------------------------// +#endif +#ifdef USE_BJ_ANTI_LEAK +#ifndef YDWEWakePlayerUnitsNullIncluded +#define YDWEWakePlayerUnitsNullIncluded + + +library YDWEWakePlayerUnitsNull + +function YDWEWakePlayerUnitsNull takes player whichPlayer returns nothing + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function WakePlayerUnitsEnum) + call DestroyGroup(g) + set g = null +endfunction + +endlibrary + +#endif +#endif diff --git a/jass/Base/YDWEBase_common.j b/jass/Base/YDWEBase_common.j new file mode 100644 index 0000000..566c0c0 --- /dev/null +++ b/jass/Base/YDWEBase_common.j @@ -0,0 +1,281 @@ +globals + string bj_AllString=".................................!.#$%&'()*+,-./0123456789:;<=>.@ABCDEFGHIJKLMNOPQRSTUVWXYZ[.]^_`abcdefghijklmnopqrstuvwxyz{|}~................................................................................................................................" +//全局系统变量 + unit bj_lastAbilityCastingUnit=null + unit bj_lastAbilityTargetUnit=null + unit bj_lastPoolAbstractedUnit=null + unitpool bj_lastCreatedUnitPool=null + item bj_lastPoolAbstractedItem=null + itempool bj_lastCreatedItemPool=null + attacktype bj_lastSetAttackType = ATTACK_TYPE_NORMAL + damagetype bj_lastSetDamageType = DAMAGE_TYPE_NORMAL + weapontype bj_lastSetWeaponType = WEAPON_TYPE_WHOKNOWS + real yd_MapMaxX = 0 + real yd_MapMinX = 0 + real yd_MapMaxY = 0 + real yd_MapMinY = 0 + private string array yd_PlayerColor +endglobals + +//=========================================================================== +//返回参数 +//=========================================================================== +//地图边界判断 +function YDWECoordinateX takes real x returns real + return RMinBJ(RMaxBJ(x, yd_MapMinX), yd_MapMaxX) +endfunction + +function YDWECoordinateY takes real y returns real + return RMinBJ(RMaxBJ(y, yd_MapMinY), yd_MapMaxY) +endfunction +//两个单位之间的距离 +function YDWEDistanceBetweenUnits takes unit a,unit b returns real + return SquareRoot((GetUnitX(a)-GetUnitX(b))*(GetUnitX(a)-GetUnitX(b))+(GetUnitY(a)-GetUnitY(b))*(GetUnitY(a)-GetUnitY(b))) +endfunction +//两个单位之间的角度 +function YDWEAngleBetweenUnits takes unit fromUnit, unit toUnit returns real + return bj_RADTODEG * Atan2(GetUnitY(toUnit) - GetUnitY(fromUnit), GetUnitX(toUnit) - GetUnitX(fromUnit)) +endfunction +//生成区域 +function YDWEGetRect takes real x,real y,real width, real height returns rect + return Rect( x - width*0.5, y - height*0.5, x + width*0.5, y + height*0.5 ) +endfunction + +//=========================================================================== +//设置单位可以飞行 +//=========================================================================== +function YDWEFlyEnable takes unit u returns nothing + call UnitAddAbility(u,'Amrf') + call UnitRemoveAbility(u,'Amrf') +endfunction + +//=========================================================================== +//字符窜与ID转换 +//=========================================================================== +function YDWEId2S takes integer value returns string + local string charMap=bj_AllString + local string result = "" + local integer remainingValue = value + local integer charValue + local integer byteno + set byteno = 0 + loop + set charValue = ModuloInteger(remainingValue, 256) + set remainingValue = remainingValue / 256 + set result = SubString(charMap, charValue, charValue + 1) + result + set byteno = byteno + 1 + exitwhen byteno == 4 + endloop + return result +endfunction + +function YDWES2Id takes string targetstr returns integer + local string originstr=bj_AllString + local integer strlength=StringLength(targetstr) + local integer a=0 //分部当前数字 + local integer b=0 //当前处理字 + local integer numx=1 //位权 + local integer result=0 + loop + exitwhen b>strlength-1 + set numx=R2I(Pow(256,strlength-1-b)) + set a=1 + loop + exitwhen a>255 + if SubString(targetstr,b,b+1)==SubString(originstr,a,a+1) then + set result=result+a*numx + set a=256 + endif + set a=a+1 + endloop + set b=b+1 + endloop + return result +endfunction + +function YDWES2UnitId takes string targetstr returns integer + return YDWES2Id(targetstr) +endfunction + +function YDWES2ItemId takes string targetstr returns integer + return YDWES2Id(targetstr) +endfunction + +function GetLastAbilityCastingUnit takes nothing returns unit + return bj_lastAbilityCastingUnit +endfunction + +function GetLastAbilityTargetUnit takes nothing returns unit + return bj_lastAbilityTargetUnit +endfunction + +function YDWESetMapLimitCoordinate takes real MinX,real MaxX,real MinY,real MaxY returns nothing + set yd_MapMaxX=MaxX + set yd_MapMinX=MinX + set yd_MapMaxY=MaxY + set yd_MapMinY=MinY +endfunction + +//=========================================================================== +//=========================================================================== +//地图初始化 +//=========================================================================== + + +//YDWE特殊技能结束事件 +globals + private trigger array AbilityCastingOverEventQueue + private integer array AbilityCastingOverEventType + private integer AbilityCastingOverEventNumber = 0 +endglobals + +function YDWESyStemAbilityCastingOverTriggerAction takes unit hero, integer index returns nothing + local integer i = 0 + loop + exitwhen i >= AbilityCastingOverEventNumber + if AbilityCastingOverEventType[i] == index then + set bj_lastAbilityCastingUnit = hero + if AbilityCastingOverEventQueue[i] != null and TriggerEvaluate(AbilityCastingOverEventQueue[i]) and IsTriggerEnabled(AbilityCastingOverEventQueue[i]) then + call TriggerExecute(AbilityCastingOverEventQueue[i]) + endif + endif + set i = i + 1 + endloop +endfunction + +//=========================================================================== +//YDWE技能捕捉事件 +//=========================================================================== +function YDWESyStemAbilityCastingOverRegistTrigger takes trigger trg,integer index returns nothing + set AbilityCastingOverEventQueue[AbilityCastingOverEventNumber] = trg + set AbilityCastingOverEventType[AbilityCastingOverEventNumber] = index + set AbilityCastingOverEventNumber = AbilityCastingOverEventNumber + 1 +endfunction + +//=========================================================================== +//系统函数完善 +//=========================================================================== +function YDWECreateUnitPool takes nothing returns nothing + set bj_lastCreatedUnitPool=CreateUnitPool() +endfunction + +function YDWEPlaceRandomUnit takes unitpool up,player p,real x,real y,real face returns nothing //unitpool,player,real,real,real + set bj_lastPoolAbstractedUnit=PlaceRandomUnit(up,p,x,y,face) +endfunction + +function YDWEGetLastUnitPool takes nothing returns unitpool + return bj_lastCreatedUnitPool +endfunction + +function YDWEGetLastPoolAbstractedUnit takes nothing returns unit + return bj_lastPoolAbstractedUnit +endfunction + +function YDWECreateItemPool takes nothing returns nothing + set bj_lastCreatedItemPool=CreateItemPool() +endfunction + +function YDWEPlaceRandomItem takes itempool ip,real x,real y returns nothing //unitpool,player,real,real,real + set bj_lastPoolAbstractedItem=PlaceRandomItem(ip,x,y) +endfunction + +function YDWEGetLastItemPool takes nothing returns itempool + return bj_lastCreatedItemPool +endfunction + +function YDWEGetLastPoolAbstractedItem takes nothing returns item + return bj_lastPoolAbstractedItem +endfunction + +function YDWESetAttackDamageWeaponType takes attacktype at,damagetype dt,weapontype wt returns nothing + set bj_lastSetAttackType=at + set bj_lastSetDamageType=dt + set bj_lastSetWeaponType=wt +endfunction +//unitpool bj_lastCreatedPool=null +//unit bj_lastPoolAbstractedUnit=null + +function YDWEGetPlayerColorString takes player p, string s returns string + return yd_PlayerColor[GetHandleId(GetPlayerColor(p))] + s + "|r" +endfunction + +//=========================================================================== +//=========================================================================== +//系统函数补充 +//=========================================================================== +//=========================================================================== +function YDWEGetUnitItemSoftId takes unit hero,item it returns integer + local integer i = 0 + loop + exitwhen i > 5 + if UnitItemInSlot(hero, i) == it then + return i + 1 + endif + set i = i + 1 + endloop + return 0 +endfunction +//=========================================================================== +//=========================================================================== +//地图初始化 +//=========================================================================== +//=========================================================================== + +//显示版本 +function YDWEVersion_Display takes nothing returns boolean + call DisplayTimedTextToPlayer(GetTriggerPlayer(), 0, 0, 30,"|cFF1E90FF当前编辑器版本为: |r|cFF00FF00YDWE " + YDWE_VERSION_STRING) + return false +endfunction + +function YDWEVersion_Init takes nothing returns nothing + local trigger t = CreateTrigger() + local integer i = 0 + loop + exitwhen i == 12 + call TriggerRegisterPlayerChatEvent(t, Player(i), "YDWE Version", true) + set i = i + 1 + endloop + call TriggerAddCondition(t, Condition(function YDWEVersion_Display)) + set t = null +endfunction + +function InitializeYD takes nothing returns nothing +#if WARCRAFT_VERSION >= 124 +# ifndef YDWE_HASH_INITVAR +# define YDWE_HASH_INITVAR + set YDHT=InitHashtable() +# endif +#else +# ifndef YDWE_HASH_INITVAR +# define YDWE_HASH_INITVAR + call FlushGameCache(InitGameCache("YDWE.wav")) + set YDGC=InitGameCache("YDWE.wav") +# endif +#endif + + //=================设置变量===================== + set yd_MapMinX = GetCameraBoundMinX() - GetCameraMargin(CAMERA_MARGIN_LEFT) + set yd_MapMinY = GetCameraBoundMinY() - GetCameraMargin(CAMERA_MARGIN_BOTTOM) + set yd_MapMaxX = GetCameraBoundMaxX() + GetCameraMargin(CAMERA_MARGIN_RIGHT) + set yd_MapMaxY = GetCameraBoundMaxY() + GetCameraMargin(CAMERA_MARGIN_TOP) + + + set yd_PlayerColor [0] = "|cFFFF0303" + set yd_PlayerColor [1] = "|cFF0042FF" + set yd_PlayerColor [2] = "|cFF1CE6B9" + set yd_PlayerColor [3] = "|cFF540081" + set yd_PlayerColor [4] = "|cFFFFFC01" + set yd_PlayerColor [5] = "|cFFFE8A0E" + set yd_PlayerColor [6] = "|cFF20C000" + set yd_PlayerColor [7] = "|cFFE55BB0" + set yd_PlayerColor [8] = "|cFF959697" + set yd_PlayerColor [9] = "|cFF7EBFF1" + set yd_PlayerColor[10] = "|cFF106246" + set yd_PlayerColor[11] = "|cFF4E2A04" + set yd_PlayerColor[12] = "|cFF282828" + set yd_PlayerColor[13] = "|cFF282828" + set yd_PlayerColor[14] = "|cFF282828" + set yd_PlayerColor[15] = "|cFF282828" + //=================显示版本===================== + call YDWEVersion_Init() +endfunction diff --git a/jass/Base/YDWEBase_hashtable.j b/jass/Base/YDWEBase_hashtable.j new file mode 100644 index 0000000..b3065a9 --- /dev/null +++ b/jass/Base/YDWEBase_hashtable.j @@ -0,0 +1,665 @@ + +//=========================================================================== +//HashTable +//=========================================================================== +globals +//ȫ�ֹ�ϣ�� +#ifndef YDWE_HASH_DEFVAR +#define YDWE_HASH_DEFVAR + hashtable YDHT = null +#endif +endglobals + +//=========================================================================== +//Return bug +//=========================================================================== +function YDWEH2I takes handle h returns integer + return GetHandleId(h) +endfunction + + +//���� +function YDWEFlushAllData takes nothing returns nothing + call FlushParentHashtable(YDHT) +endfunction + +function YDWEFlushMissionByInteger takes integer i returns nothing + call FlushChildHashtable(YDHT,i) +endfunction + +function YDWEFlushMissionByString takes string s returns nothing + call FlushChildHashtable(YDHT,StringHash(s)) +endfunction + +function YDWEFlushStoredIntegerByInteger takes integer i,integer j returns nothing + call RemoveSavedInteger(YDHT,i,j) +endfunction + +function YDWEFlushStoredIntegerByString takes string s1,string s2 returns nothing + call RemoveSavedInteger(YDHT,StringHash(s1),StringHash(s2)) +endfunction + +function YDWEHaveSavedIntegerByInteger takes integer i,integer j returns boolean + return HaveSavedInteger(YDHT,i,j) +endfunction + +function YDWEHaveSavedIntegerByString takes string s1,string s2 returns boolean + return HaveSavedInteger(YDHT,StringHash(s1),StringHash(s2)) +endfunction + +//store and get integer +function YDWESaveIntegerByInteger takes integer pTable,integer pKey,integer i returns nothing + call SaveInteger(YDHT,pTable,pKey,i) +endfunction + +function YDWESaveIntegerByString takes string pTable,string pKey,integer i returns nothing + call SaveInteger(YDHT,StringHash(pTable),StringHash(pKey),i) +endfunction + +function YDWEGetIntegerByInteger takes integer pTable,integer pKey returns integer + return LoadInteger(YDHT,pTable,pKey) +endfunction + +function YDWEGetIntegerByString takes string pTable,string pKey returns integer + return LoadInteger(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//store and get real +function YDWESaveRealByInteger takes integer pTable,integer pKey,real r returns nothing + call SaveReal(YDHT,pTable,pKey,r) +endfunction + +function YDWESaveRealByString takes string pTable,string pKey,real r returns nothing + call SaveReal(YDHT,StringHash(pTable),StringHash(pKey),r) +endfunction + +function YDWEGetRealByInteger takes integer pTable,integer pKey returns real + return LoadReal(YDHT,pTable,pKey) +endfunction + +function YDWEGetRealByString takes string pTable,string pKey returns real + return LoadReal(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//store and get string +function YDWESaveStringByInteger takes integer pTable,integer pKey,string s returns nothing + call SaveStr(YDHT,pTable,pKey,s) +endfunction + +function YDWESaveStringByString takes string pTable,string pKey,string s returns nothing + call SaveStr(YDHT,StringHash(pTable),StringHash(pKey),s) +endfunction + +function YDWEGetStringByInteger takes integer pTable,integer pKey returns string + return LoadStr(YDHT,pTable,pKey) +endfunction + +function YDWEGetStringByString takes string pTable,string pKey returns string + return LoadStr(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//store and get boolean +function YDWESaveBooleanByInteger takes integer pTable,integer pKey,boolean b returns nothing + call SaveBoolean(YDHT,pTable,pKey,b) +endfunction + +function YDWESaveBooleanByString takes string pTable,string pKey,boolean b returns nothing + call SaveBoolean(YDHT,StringHash(pTable),StringHash(pKey),b) +endfunction + +function YDWEGetBooleanByInteger takes integer pTable,integer pKey returns boolean + return LoadBoolean(YDHT,pTable,pKey) +endfunction + +function YDWEGetBooleanByString takes string pTable,string pKey returns boolean + return LoadBoolean(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Unit +function YDWESaveUnitByInteger takes integer pTable,integer pKey,unit u returns nothing + call SaveUnitHandle(YDHT,pTable,pKey,u) +endfunction + +function YDWESaveUnitByString takes string pTable,string pKey,unit u returns nothing + call SaveUnitHandle(YDHT,StringHash(pTable),StringHash(pKey),u) +endfunction + +function YDWEGetUnitByInteger takes integer pTable,integer pKey returns unit + return LoadUnitHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetUnitByString takes string pTable,string pKey returns unit + return LoadUnitHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert UnitID +function YDWESaveUnitIDByInteger takes integer pTable,integer pKey,integer uid returns nothing + call SaveInteger(YDHT,pTable,pKey,uid) +endfunction + +function YDWESaveUnitIDByString takes string pTable,string pKey,integer uid returns nothing + call SaveInteger(YDHT,StringHash(pTable),StringHash(pKey),uid) +endfunction + +function YDWEGetUnitIDByInteger takes integer pTable,integer pKey returns integer + return LoadInteger(YDHT,pTable,pKey) +endfunction + +function YDWEGetUnitIDByString takes string pTable,string pKey returns integer + return LoadInteger(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert AbilityID +function YDWESaveAbilityIDByInteger takes integer pTable,integer pKey,integer abid returns nothing + call SaveInteger(YDHT,pTable,pKey,abid) +endfunction + +function YDWESaveAbilityIDByString takes string pTable,string pKey,integer abid returns nothing + call SaveInteger(YDHT,StringHash(pTable),StringHash(pKey),abid) +endfunction + +function YDWEGetAbilityIDByInteger takes integer pTable,integer pKey returns integer + return LoadInteger(YDHT,pTable,pKey) +endfunction + +function YDWEGetAbilityIDByString takes string pTable,string pKey returns integer + return LoadInteger(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Player +function YDWESavePlayerByInteger takes integer pTable,integer pKey,player p returns nothing + call SavePlayerHandle(YDHT,pTable,pKey,p) +endfunction + +function YDWESavePlayerByString takes string pTable,string pKey,player p returns nothing + call SavePlayerHandle(YDHT,StringHash(pTable),StringHash(pKey),p) +endfunction + +function YDWEGetPlayerByInteger takes integer pTable,integer pKey returns player + return LoadPlayerHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetPlayerByString takes string pTable,string pKey returns player + return LoadPlayerHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Item +function YDWESaveItemByInteger takes integer pTable,integer pKey,item it returns nothing + call SaveItemHandle(YDHT,pTable,pKey,it) +endfunction + +function YDWESaveItemByString takes string pTable,string pKey,item it returns nothing + call SaveItemHandle(YDHT,StringHash(pTable),StringHash(pKey),it) +endfunction + +function YDWEGetItemByInteger takes integer pTable,integer pKey returns item + return LoadItemHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetItemByString takes string pTable,string pKey returns item + return LoadItemHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert ItemID +function YDWESaveItemIDByInteger takes integer pTable,integer pKey,integer itid returns nothing + call SaveInteger(YDHT,pTable,pKey,itid) +endfunction + +function YDWESaveItemIDByString takes string pTable,string pKey,integer itid returns nothing + call SaveInteger(YDHT,StringHash(pTable),StringHash(pKey),itid) +endfunction + +function YDWEGetItemIDByInteger takes integer pTable,integer pKey returns integer + return LoadInteger(YDHT,pTable,pKey) +endfunction + +function YDWEGetItemIDByString takes string pTable,string pKey returns integer + return LoadInteger(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Timer +function YDWESaveTimerByInteger takes integer pTable,integer pKey,timer t returns nothing + call SaveTimerHandle(YDHT,pTable,pKey,t) +endfunction + +function YDWESaveTimerByString takes string pTable,string pKey,timer t returns nothing + call SaveTimerHandle(YDHT,StringHash(pTable),StringHash(pKey),t) +endfunction + +function YDWEGetTimerByInteger takes integer pTable,integer pKey returns timer + return LoadTimerHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTimerByString takes string pTable,string pKey returns timer + return LoadTimerHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Trigger +function YDWESaveTriggerByInteger takes integer pTable,integer pKey,trigger trg returns nothing + call SaveTriggerHandle(YDHT,pTable,pKey,trg) +endfunction + +function YDWESaveTriggerByString takes string pTable,string pKey,trigger trg returns nothing + call SaveTriggerHandle(YDHT,StringHash(pTable),StringHash(pKey),trg) +endfunction + +function YDWEGetTriggerByInteger takes integer pTable,integer pKey returns trigger + return LoadTriggerHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTriggerByString takes string pTable,string pKey returns trigger + return LoadTriggerHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Location +function YDWESaveLocationByInteger takes integer pTable,integer pKey,location pt returns nothing + call SaveLocationHandle(YDHT,pTable,pKey,pt) +endfunction + +function YDWESaveLocationByString takes string pTable,string pKey,location pt returns nothing + call SaveLocationHandle(YDHT,StringHash(pTable),StringHash(pKey),pt) +endfunction + +function YDWEGetLocationByInteger takes integer pTable,integer pKey returns location + return LoadLocationHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetLocationByString takes string pTable,string pKey returns location + return LoadLocationHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Group +function YDWESaveGroupByInteger takes integer pTable,integer pKey,group g returns nothing + call SaveGroupHandle(YDHT,pTable,pKey,g) +endfunction + +function YDWESaveGroupByString takes string pTable,string pKey,group g returns nothing + call SaveGroupHandle(YDHT,StringHash(pTable),StringHash(pKey),g) +endfunction + +function YDWEGetGroupByInteger takes integer pTable,integer pKey returns group + return LoadGroupHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetGroupByString takes string pTable,string pKey returns group + return LoadGroupHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Multiboard +function YDWESaveMultiboardByInteger takes integer pTable,integer pKey,multiboard m returns nothing + call SaveMultiboardHandle(YDHT,pTable,pKey,m) +endfunction + +function YDWESaveMultiboardByString takes string pTable,string pKey,multiboard m returns nothing + call SaveMultiboardHandle(YDHT,StringHash(pTable),StringHash(pKey),m) +endfunction + +function YDWEGetMultiboardByInteger takes integer pTable,integer pKey returns multiboard + return LoadMultiboardHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetMultiboardByString takes string pTable,string pKey returns multiboard + return LoadMultiboardHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert MultiboardItem +function YDWESaveMultiboardItemByInteger takes integer pTable,integer pKey,multiboarditem mt returns nothing + call SaveMultiboardItemHandle(YDHT,pTable,pKey,mt) +endfunction + +function YDWESaveMultiboardItemByString takes string pTable,string pKey,multiboarditem mt returns nothing + call SaveMultiboardItemHandle(YDHT,StringHash(pTable),StringHash(pKey),mt) +endfunction + +function YDWEGetMultiboardItemByInteger takes integer pTable,integer pKey returns multiboarditem + return LoadMultiboardItemHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetMultiboardItemByString takes string pTable,string pKey returns multiboarditem + return LoadMultiboardItemHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert TextTag +function YDWESaveTextTagByInteger takes integer pTable,integer pKey,texttag tt returns nothing + call SaveTextTagHandle(YDHT,pTable,pKey,tt) +endfunction + +function YDWESaveTextTagByString takes string pTable,string pKey,texttag tt returns nothing + call SaveTextTagHandle(YDHT,StringHash(pTable),StringHash(pKey),tt) +endfunction + +function YDWEGetTextTagByInteger takes integer pTable,integer pKey returns texttag + return LoadTextTagHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTextTagByString takes string pTable,string pKey returns texttag + return LoadTextTagHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Lightning +function YDWESaveLightningByInteger takes integer pTable,integer pKey,lightning ln returns nothing + call SaveLightningHandle(YDHT,pTable,pKey,ln) +endfunction + +function YDWESaveLightningByString takes string pTable,string pKey,lightning ln returns nothing + call SaveLightningHandle(YDHT,StringHash(pTable),StringHash(pKey),ln) +endfunction + +function YDWEGetLightningByInteger takes integer pTable,integer pKey returns lightning + return LoadLightningHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetLightningByString takes string pTable,string pKey returns lightning + return LoadLightningHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Region +function YDWESaveRegionByInteger takes integer pTable,integer pKey,region rn returns nothing + call SaveRegionHandle(YDHT,pTable,pKey,rn) +endfunction + +function YDWESaveRegionByString takes string pTable,string pKey,region rt returns nothing + call SaveRegionHandle(YDHT,StringHash(pTable),StringHash(pKey),rt) +endfunction + +function YDWEGetRegionByInteger takes integer pTable,integer pKey returns region + return LoadRegionHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetRegionByString takes string pTable,string pKey returns region + return LoadRegionHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Rect +function YDWESaveRectByInteger takes integer pTable,integer pKey,rect rn returns nothing + call SaveRectHandle(YDHT,pTable,pKey,rn) +endfunction + +function YDWESaveRectByString takes string pTable,string pKey,rect rt returns nothing + call SaveRectHandle(YDHT,StringHash(pTable),StringHash(pKey),rt) +endfunction + +function YDWEGetRectByInteger takes integer pTable,integer pKey returns rect + return LoadRectHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetRectByString takes string pTable,string pKey returns rect + return LoadRectHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Leaderboard +function YDWESaveLeaderboardByInteger takes integer pTable,integer pKey,leaderboard lb returns nothing + call SaveLeaderboardHandle(YDHT,pTable,pKey,lb) +endfunction + +function YDWESaveLeaderboardByString takes string pTable,string pKey,leaderboard lb returns nothing + call SaveLeaderboardHandle(YDHT,StringHash(pTable),StringHash(pKey),lb) +endfunction + +function YDWEGetLeaderboardByInteger takes integer pTable,integer pKey returns leaderboard + return LoadLeaderboardHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetLeaderboardByString takes string pTable,string pKey returns leaderboard + return LoadLeaderboardHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Effect +function YDWESaveEffectByInteger takes integer pTable,integer pKey,effect e returns nothing + call SaveEffectHandle(YDHT,pTable,pKey,e) +endfunction + +function YDWESaveEffectByString takes string pTable,string pKey,effect e returns nothing + call SaveEffectHandle(YDHT,StringHash(pTable),StringHash(pKey),e) +endfunction + +function YDWEGetEffectByInteger takes integer pTable,integer pKey returns effect + return LoadEffectHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetEffectByString takes string pTable,string pKey returns effect + return LoadEffectHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert Destructable +function YDWESaveDestructableByInteger takes integer pTable,integer pKey,destructable da returns nothing + call SaveDestructableHandle(YDHT,pTable,pKey,da) +endfunction + +function YDWESaveDestructableByString takes string pTable,string pKey,destructable da returns nothing + call SaveDestructableHandle(YDHT,StringHash(pTable),StringHash(pKey),da) +endfunction + +function YDWEGetDestructableByInteger takes integer pTable,integer pKey returns destructable + return LoadDestructableHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetDestructableByString takes string pTable,string pKey returns destructable + return LoadDestructableHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert triggercondition +function YDWESaveTriggerConditionByInteger takes integer pTable,integer pKey,triggercondition tc returns nothing + call SaveTriggerConditionHandle(YDHT,pTable,pKey,tc) +endfunction + +function YDWESaveTriggerConditionByString takes string pTable,string pKey,triggercondition tc returns nothing + call SaveTriggerConditionHandle(YDHT,StringHash(pTable),StringHash(pKey),tc) +endfunction + +function YDWEGetTriggerConditionByInteger takes integer pTable,integer pKey returns triggercondition + return LoadTriggerConditionHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTriggerConditionByString takes string pTable,string pKey returns triggercondition + return LoadTriggerConditionHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert triggeraction +function YDWESaveTriggerActionByInteger takes integer pTable,integer pKey,triggeraction ta returns nothing + call SaveTriggerActionHandle(YDHT,pTable,pKey,ta) +endfunction + +function YDWESaveTriggerActionByString takes string pTable,string pKey,triggeraction ta returns nothing + call SaveTriggerActionHandle(YDHT,StringHash(pTable),StringHash(pKey),ta) +endfunction + +function YDWEGetTriggerActionByInteger takes integer pTable,integer pKey returns triggeraction + return LoadTriggerActionHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTriggerActionByString takes string pTable,string pKey returns triggeraction + return LoadTriggerActionHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert event +function YDWESaveTriggerEventByInteger takes integer pTable,integer pKey,event et returns nothing + call SaveTriggerEventHandle(YDHT,pTable,pKey,et) +endfunction + +function YDWESaveTriggerEventByString takes string pTable,string pKey,event et returns nothing + call SaveTriggerEventHandle(YDHT,StringHash(pTable),StringHash(pKey),et) +endfunction + +function YDWEGetTriggerEventByInteger takes integer pTable,integer pKey returns event + return LoadTriggerEventHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTriggerEventByString takes string pTable,string pKey returns event + return LoadTriggerEventHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert force +function YDWESaveForceByInteger takes integer pTable,integer pKey,force fc returns nothing + call SaveForceHandle(YDHT,pTable,pKey,fc) +endfunction + +function YDWESaveForceByString takes string pTable,string pKey,force fc returns nothing + call SaveForceHandle(YDHT,StringHash(pTable),StringHash(pKey),fc) +endfunction + +function YDWEGetForceByInteger takes integer pTable,integer pKey returns force + return LoadForceHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetForceByString takes string pTable,string pKey returns force + return LoadForceHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert boolexpr +function YDWESaveBoolexprByInteger takes integer pTable,integer pKey,boolexpr be returns nothing + call SaveBooleanExprHandle(YDHT,pTable,pKey,be) +endfunction + +function YDWESaveBoolexprByString takes string pTable,string pKey,boolexpr be returns nothing + call SaveBooleanExprHandle(YDHT,StringHash(pTable),StringHash(pKey),be) +endfunction + +function YDWEGetBoolexprByInteger takes integer pTable,integer pKey returns boolexpr + return LoadBooleanExprHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetBoolexprByString takes string pTable,string pKey returns boolexpr + return LoadBooleanExprHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert sound +function YDWESaveSoundByInteger takes integer pTable,integer pKey,sound sd returns nothing + call SaveSoundHandle(YDHT,pTable,pKey,sd) +endfunction + +function YDWESaveSoundByString takes string pTable,string pKey,sound sd returns nothing + call SaveSoundHandle(YDHT,StringHash(pTable),StringHash(pKey),sd) +endfunction + +function YDWEGetSoundByInteger takes integer pTable,integer pKey returns sound + return LoadSoundHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetSoundByString takes string pTable,string pKey returns sound + return LoadSoundHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert timerdialog +function YDWESaveTimerDialogByInteger takes integer pTable,integer pKey,timerdialog td returns nothing + call SaveTimerDialogHandle(YDHT,pTable,pKey,td) +endfunction + +function YDWESaveTimerDialogByString takes string pTable,string pKey,timerdialog td returns nothing + call SaveTimerDialogHandle(YDHT,StringHash(pTable),StringHash(pKey),td) +endfunction + +function YDWEGetTimerDialogByInteger takes integer pTable,integer pKey returns timerdialog + return LoadTimerDialogHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTimerDialogByString takes string pTable,string pKey returns timerdialog + return LoadTimerDialogHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert trackable +function YDWESaveTrackableByInteger takes integer pTable,integer pKey,trackable ta returns nothing + call SaveTrackableHandle(YDHT,pTable,pKey,ta) +endfunction + +function YDWESaveTrackableByString takes string pTable,string pKey,trackable ta returns nothing + call SaveTrackableHandle(YDHT,StringHash(pTable),StringHash(pKey),ta) +endfunction + +function YDWEGetTrackableByInteger takes integer pTable,integer pKey returns trackable + return LoadTrackableHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetTrackableByString takes string pTable,string pKey returns trackable + return LoadTrackableHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert dialog +function YDWESaveDialogByInteger takes integer pTable,integer pKey,dialog d returns nothing + call SaveDialogHandle(YDHT,pTable,pKey,d) +endfunction + +function YDWESaveDialogByString takes string pTable,string pKey,dialog d returns nothing + call SaveDialogHandle(YDHT,StringHash(pTable),StringHash(pKey),d) +endfunction + +function YDWEGetDialogByInteger takes integer pTable,integer pKey returns dialog + return LoadDialogHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetDialogByString takes string pTable,string pKey returns dialog + return LoadDialogHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert button +function YDWESaveButtonByInteger takes integer pTable,integer pKey,button bt returns nothing + call SaveButtonHandle(YDHT,pTable,pKey,bt) +endfunction + +function YDWESaveButtonByString takes string pTable,string pKey,button bt returns nothing + call SaveButtonHandle(YDHT,StringHash(pTable),StringHash(pKey),bt) +endfunction + +function YDWEGetButtonByInteger takes integer pTable,integer pKey returns button + return LoadButtonHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetButtonByString takes string pTable,string pKey returns button + return LoadButtonHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert quest +function YDWESaveQuestByInteger takes integer pTable,integer pKey,quest qt returns nothing + call SaveQuestHandle(YDHT,pTable,pKey,qt) +endfunction + +function YDWESaveQuestByString takes string pTable,string pKey,quest qt returns nothing + call SaveQuestHandle(YDHT,StringHash(pTable),StringHash(pKey),qt) +endfunction + +function YDWEGetQuestByInteger takes integer pTable,integer pKey returns quest + return LoadQuestHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetQuestByString takes string pTable,string pKey returns quest + return LoadQuestHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +//Covert questitem +function YDWESaveQuestItemByInteger takes integer pTable,integer pKey,questitem qi returns nothing + call SaveQuestItemHandle(YDHT,pTable,pKey,qi) +endfunction + +function YDWESaveQuestItemByString takes string pTable,string pKey,questitem qi returns nothing + call SaveQuestItemHandle(YDHT,StringHash(pTable),StringHash(pKey),qi) +endfunction + +function YDWEGetQuestItemByInteger takes integer pTable,integer pKey returns questitem + return LoadQuestItemHandle(YDHT,pTable,pKey) +endfunction + +function YDWEGetQuestItemByString takes string pTable,string pKey returns questitem + return LoadQuestItemHandle(YDHT,StringHash(pTable),StringHash(pKey)) +endfunction + +function YDWES2I takes string s returns integer + return StringHash(s) +endfunction + + +function YDWESaveAbilityHandleBJ takes integer AbilityID, integer key, integer missionKey, hashtable table returns nothing + call SaveInteger(table,missionKey,key,AbilityID) +endfunction + +function YDWESaveAbilityHandle takes hashtable table, integer parentKey, integer childKey, integer AbilityID returns nothing + call SaveInteger(table,parentKey,childKey,AbilityID) +endfunction + +function YDWELoadAbilityHandleBJ takes integer key, integer missionKey, hashtable table returns integer + return LoadInteger(table,missionKey,key) +endfunction + +function YDWELoadAbilityHandle takes hashtable table, integer parentKey, integer childKey returns integer + return LoadInteger(table,parentKey,childKey) +endfunction + diff --git a/jass/Base/YDWEBase_returnbug.j b/jass/Base/YDWEBase_returnbug.j new file mode 100644 index 0000000..3201e31 --- /dev/null +++ b/jass/Base/YDWEBase_returnbug.j @@ -0,0 +1,829 @@ + +//=========================================================================== +//Return bug +//=========================================================================== +globals +//ȫ�ֻ��� +#ifndef YDWE_HASH_DEFVAR +#define YDWE_HASH_DEFVAR + gamecache YDGC = null +#endif +endglobals + +//=========================================================================== +//Return bug +//=========================================================================== +function YDWEH2I takes handle h returns integer + return h + return 0 +endfunction + +function YDWEI2U takes integer i returns unit + return i + return null +endfunction + +function YDWEI2It takes integer i returns item + return i + return null +endfunction + +function YDWEI2P takes integer i returns player + return i + return null +endfunction + +function YDWEI2Tm takes integer i returns timer + return i + return null +endfunction + +function YDWEI2T takes integer i returns trigger + return i + return null +endfunction + +function YDWEI2Pt takes integer i returns location + return i + return null +endfunction + +function YDWEI2G takes integer i returns group + return i + return null +endfunction + +function YDWEI2M takes integer i returns multiboard + return i + return null +endfunction + +function YDWEI2Mt takes integer i returns multiboarditem + return i + return null +endfunction + +function YDWEI2Tt takes integer i returns texttag + return i + return null +endfunction + +function YDWEI2Ln takes integer i returns lightning + return i + return null +endfunction + +function YDWEI2Rn takes integer i returns region + return i + return null +endfunction + +function YDWEI2Rt takes integer i returns rect + return i + return null +endfunction + +function YDWEI2Lb takes integer i returns leaderboard + return i + return null +endfunction + +function YDWEI2E takes integer i returns effect + return i + return null +endfunction + +function YDWEI2Da takes integer i returns destructable + return i + return null +endfunction + +function YDWEI2TC takes integer i returns triggercondition + return i + return null +endfunction + +function YDWEI2TA takes integer i returns triggeraction + return i + return null +endfunction + +function YDWEI2Et takes integer i returns event + return i + return null +endfunction + +function YDWEI2Fc takes integer i returns force + return i + return null +endfunction + +function YDWEI2BE takes integer i returns boolexpr + return i + return null +endfunction + +function YDWEI2Sd takes integer i returns sound + return i + return null +endfunction + +function YDWEI2TD takes integer i returns timerdialog + return i + return null +endfunction + +function YDWEI2Ta takes integer i returns trackable + return i + return null +endfunction + +function YDWEI2D takes integer i returns dialog + return i + return null +endfunction + +function YDWEI2Bt takes integer i returns button + return i + return null +endfunction + +function YDWEI2Qt takes integer i returns quest + return i + return null +endfunction + +function YDWEI2QI takes integer i returns questitem + return i + return null +endfunction + +function GetHandleId takes handle h returns integer + return h + return 0 +endfunction + +//���� +function YDWEFlushAllData takes nothing returns nothing + call FlushGameCache(YDGC) +endfunction + +function YDWEFlushMissionByInteger takes integer i returns nothing + call FlushStoredMission(YDGC,I2S(i)) +endfunction + +function YDWEFlushMissionByString takes string s returns nothing + call FlushStoredMission(YDGC,s) +endfunction + +function YDWEFlushStoredIntegerByInteger takes integer i,integer j returns nothing + call FlushStoredInteger(YDGC,I2S(i),I2S(j)) +endfunction + +function YDWEFlushStoredIntegerByString takes string s1,string s2 returns nothing + call FlushStoredInteger(YDGC,s1,s2) +endfunction + +function YDWEHaveSavedIntegerByInteger takes integer i,integer j returns boolean + return HaveStoredInteger(YDGC,I2S(i),I2S(j)) +endfunction + +function YDWEHaveSavedIntegerByString takes string s1,string s2 returns boolean + return HaveStoredInteger(YDGC,s1,s2) +endfunction + +//store and get integer +function YDWESaveIntegerByInteger takes integer pTable,integer pKey,integer i returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),i) +endfunction + +function YDWESaveIntegerByString takes string pTable,string pKey,integer i returns nothing + call StoreInteger(YDGC,pTable,pKey,i) +endfunction + +function YDWEGetIntegerByInteger takes integer pTable,integer pKey returns integer + return GetStoredInteger(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetIntegerByString takes string pTable,string pKey returns integer + return GetStoredInteger(YDGC,pTable,pKey) +endfunction + +//store and get real +function YDWESaveRealByInteger takes integer pTable,integer pKey,real r returns nothing + call StoreReal(YDGC,I2S(pTable),I2S(pKey),r) +endfunction + +function YDWESaveRealByString takes string pTable,string pKey,real r returns nothing + call StoreReal(YDGC,pTable,pKey,r) +endfunction + +function YDWEGetRealByInteger takes integer pTable,integer pKey returns real + return GetStoredReal(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetRealByString takes string pTable,string pKey returns real + return GetStoredReal(YDGC,pTable,pKey) +endfunction + +//store and get string +function YDWESaveStringByInteger takes integer pTable,integer pKey,string s returns nothing + call StoreString(YDGC,I2S(pTable),I2S(pKey),s) +endfunction + +function YDWESaveStringByString takes string pTable,string pKey,string s returns nothing + call StoreString(YDGC,pTable,pKey,s) +endfunction + +function YDWEGetStringByInteger takes integer pTable,integer pKey returns string + return GetStoredString(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetStringByString takes string pTable,string pKey returns string + return GetStoredString(YDGC,pTable,pKey) +endfunction + +//store and get boolean +function YDWESaveBooleanByInteger takes integer pTable,integer pKey,boolean b returns nothing + call StoreBoolean(YDGC,I2S(pTable),I2S(pKey),b) +endfunction + +function YDWESaveBooleanByString takes string pTable,string pKey,boolean b returns nothing + call StoreBoolean(YDGC,pTable,pKey,b) +endfunction + +function YDWEGetBooleanByInteger takes integer pTable,integer pKey returns boolean + return GetStoredBoolean(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetBooleanByString takes string pTable,string pKey returns boolean + return GetStoredBoolean(YDGC,pTable,pKey) +endfunction + +//Covert Unit +function YDWESaveUnitByInteger takes integer pTable,integer pKey,unit u returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(u)) +endfunction + +function YDWESaveUnitByString takes string pTable,string pKey,unit u returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(u)) +endfunction + +function YDWEGetUnitByInteger takes integer pTable,integer pKey returns unit + return YDWEI2U(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetUnitByString takes string pTable,string pKey returns unit + return YDWEI2U(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert UnitID +function YDWESaveUnitIDByInteger takes integer pTable,integer pKey,integer uid returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),uid) +endfunction + +function YDWESaveUnitIDByString takes string pTable,string pKey,integer uid returns nothing + call StoreInteger(YDGC,pTable,pKey,uid) +endfunction + +function YDWEGetUnitIDByInteger takes integer pTable,integer pKey returns integer + return GetStoredInteger(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetUnitIDByString takes string pTable,string pKey returns integer + return GetStoredInteger(YDGC,pTable,pKey) +endfunction + +//Covert AbilityID +function YDWESaveAbilityIDByInteger takes integer pTable,integer pKey,integer abid returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),abid) +endfunction + +function YDWESaveAbilityIDByString takes string pTable,string pKey,integer abid returns nothing + call StoreInteger(YDGC,pTable,pKey,abid) +endfunction + +function YDWEGetAbilityIDByInteger takes integer pTable,integer pKey returns integer + return GetStoredInteger(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetAbilityIDByString takes string pTable,string pKey returns integer + return GetStoredInteger(YDGC,pTable,pKey) +endfunction + +//Covert Player +function YDWESavePlayerByInteger takes integer pTable,integer pKey,player p returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(p)) +endfunction + +function YDWESavePlayerByString takes string pTable,string pKey,player p returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(p)) +endfunction + +function YDWEGetPlayerByInteger takes integer pTable,integer pKey returns player + return YDWEI2P(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetPlayerByString takes string pTable,string pKey returns player + return YDWEI2P(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert Item +function YDWESaveItemByInteger takes integer pTable,integer pKey,item it returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(it)) +endfunction + +function YDWESaveItemByString takes string pTable,string pKey,item it returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(it)) +endfunction + +function YDWEGetItemByInteger takes integer pTable,integer pKey returns item + return YDWEI2It(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetItemByString takes string pTable,string pKey returns item + return YDWEI2It(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert ItemID +function YDWESaveItemIDByInteger takes integer pTable,integer pKey,integer itid returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),itid) +endfunction + +function YDWESaveItemIDByString takes string pTable,string pKey,integer itid returns nothing + call StoreInteger(YDGC,pTable,pKey,itid) +endfunction + +function YDWEGetItemIDByInteger takes integer pTable,integer pKey returns integer + return GetStoredInteger(YDGC,I2S(pTable),I2S(pKey)) +endfunction + +function YDWEGetItemIDByString takes string pTable,string pKey returns integer + return GetStoredInteger(YDGC,pTable,pKey) +endfunction + +//Covert Timer +function YDWESaveTimerByInteger takes integer pTable,integer pKey,timer t returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(t)) +endfunction + +function YDWESaveTimerByString takes string pTable,string pKey,timer t returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(t)) +endfunction + +function YDWEGetTimerByInteger takes integer pTable,integer pKey returns timer + return YDWEI2Tm(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTimerByString takes string pTable,string pKey returns timer + return YDWEI2Tm(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert Trigger +function YDWESaveTriggerByInteger takes integer pTable,integer pKey,trigger trg returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(trg)) +endfunction + +function YDWESaveTriggerByString takes string pTable,string pKey,trigger trg returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(trg)) +endfunction + +function YDWEGetTriggerByInteger takes integer pTable,integer pKey returns trigger + return YDWEI2T(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTriggerByString takes string pTable,string pKey returns trigger + return YDWEI2T(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert Location +function YDWESaveLocationByInteger takes integer pTable,integer pKey,location pt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(pt)) +endfunction + +function YDWESaveLocationByString takes string pTable,string pKey,location pt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(pt)) +endfunction + +function YDWEGetLocationByInteger takes integer pTable,integer pKey returns location + return YDWEI2Pt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetLocationByString takes string pTable,string pKey returns location + return YDWEI2Pt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert Group +function YDWESaveGroupByInteger takes integer pTable,integer pKey,group g returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(g)) +endfunction + +function YDWESaveGroupByString takes string pTable,string pKey,group g returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(g)) +endfunction + +function YDWEGetGroupByInteger takes integer pTable,integer pKey returns group + return YDWEI2G(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetGroupByString takes string pTable,string pKey returns group + return YDWEI2G(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert multiboard +function YDWESaveMultiboardByInteger takes integer pTable,integer pKey,multiboard m returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(m)) +endfunction + +function YDWESaveMultiboardByString takes string pTable,string pKey,multiboard m returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(m)) +endfunction + +function YDWEGetMultiboardByInteger takes integer pTable,integer pKey returns multiboard + return YDWEI2M(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetMultiboardByString takes string pTable,string pKey returns multiboard + return YDWEI2M(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert multiboarditem +function YDWESaveMultiboardItemByInteger takes integer pTable,integer pKey,multiboarditem mt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(mt)) +endfunction + +function YDWESaveMultiboardItemByString takes string pTable,string pKey,multiboarditem mt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(mt)) +endfunction + +function YDWEGetMultiboardItemByInteger takes integer pTable,integer pKey returns multiboarditem + return YDWEI2Mt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetMultiboardItemByString takes string pTable,string pKey returns multiboarditem + return YDWEI2Mt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert Texttag +function YDWESaveTextTagByInteger takes integer pTable,integer pKey,texttag tt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(tt)) +endfunction + +function YDWESaveTextTagByString takes string pTable,string pKey,texttag tt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(tt)) +endfunction + +function YDWEGetTextTagByInteger takes integer pTable,integer pKey returns texttag + return YDWEI2Tt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTextTagByString takes string pTable,string pKey returns texttag + return YDWEI2Tt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert lightning +function YDWESaveLightningByInteger takes integer pTable,integer pKey,lightning ln returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(ln)) +endfunction + +function YDWESaveLightningByString takes string pTable,string pKey,lightning ln returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(ln)) +endfunction + +function YDWEGetLightningByInteger takes integer pTable,integer pKey returns lightning + return YDWEI2Ln(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetLightningByString takes string pTable,string pKey returns lightning + return YDWEI2Ln(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert region +function YDWESaveRegionByInteger takes integer pTable,integer pKey,region rn returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(rn)) +endfunction + +function YDWESaveRegionByString takes string pTable,string pKey,region rn returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(rn)) +endfunction + +function YDWEGetRegionByInteger takes integer pTable,integer pKey returns region + return YDWEI2Rn(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetRegionByString takes string pTable,string pKey returns region + return YDWEI2Rn(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert rect +function YDWESaveRectByInteger takes integer pTable,integer pKey,rect rt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(rt)) +endfunction + +function YDWESaveRectByString takes string pTable,string pKey,rect rt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(rt)) +endfunction + +function YDWEGetRectByInteger takes integer pTable,integer pKey returns rect + return YDWEI2Rt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetRectByString takes string pTable,string pKey returns rect + return YDWEI2Rt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert leaderboard +function YDWESaveLeaderboardByInteger takes integer pTable,integer pKey,leaderboard lb returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(lb)) +endfunction + +function YDWESaveLeaderboardByString takes string pTable,string pKey,leaderboard lb returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(lb)) +endfunction + +function YDWEGetLeaderboardByInteger takes integer pTable,integer pKey returns leaderboard + return YDWEI2Lb(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetLeaderboardByString takes string pTable,string pKey returns leaderboard + return YDWEI2Lb(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert effect +function YDWESaveEffectByInteger takes integer pTable,integer pKey,effect e returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(e)) +endfunction + +function YDWESaveEffectByString takes string pTable,string pKey,effect e returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(e)) +endfunction + +function YDWEGetEffectByInteger takes integer pTable,integer pKey returns effect + return YDWEI2E(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetEffectByString takes string pTable,string pKey returns effect + return YDWEI2E(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert destructable +function YDWESaveDestructableByInteger takes integer pTable,integer pKey,destructable da returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(da)) +endfunction + +function YDWESaveDestructableByString takes string pTable,string pKey,destructable da returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(da)) +endfunction + +function YDWEGetDestructableByInteger takes integer pTable,integer pKey returns destructable + return YDWEI2Da(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetDestructableByString takes string pTable,string pKey returns destructable + return YDWEI2Da(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert triggercondition +function YDWESaveTriggerConditionByInteger takes integer pTable,integer pKey,triggercondition tc returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(tc)) +endfunction + +function YDWESaveTriggerConditionByString takes string pTable,string pKey,triggercondition tc returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(tc)) +endfunction + +function YDWEGetTriggerConditionByInteger takes integer pTable,integer pKey returns triggercondition + return YDWEI2TC(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTriggerConditionByString takes string pTable,string pKey returns triggercondition + return YDWEI2TC(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert triggeraction +function YDWESaveTriggerActionByInteger takes integer pTable,integer pKey,triggeraction ta returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(ta)) +endfunction + +function YDWESaveTriggerActionByString takes string pTable,string pKey,triggeraction ta returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(ta)) +endfunction + +function YDWEGetTriggerActionByInteger takes integer pTable,integer pKey returns triggeraction + return YDWEI2TA(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTriggerActionByString takes string pTable,string pKey returns triggeraction + return YDWEI2TA(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert event +function YDWESaveTriggerEventByInteger takes integer pTable,integer pKey,event et returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(et)) +endfunction + +function YDWESaveTriggerEventByString takes string pTable,string pKey,event et returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(et)) +endfunction + +function YDWEGetTriggerEventByInteger takes integer pTable,integer pKey returns event + return YDWEI2Et(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTriggerEventByString takes string pTable,string pKey returns event + return YDWEI2Et(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert force +function YDWESaveForceByInteger takes integer pTable,integer pKey,force fc returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(fc)) +endfunction + +function YDWESaveForceByString takes string pTable,string pKey,force fc returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(fc)) +endfunction + +function YDWEGetForceByInteger takes integer pTable,integer pKey returns force + return YDWEI2Fc(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetForceByString takes string pTable,string pKey returns force + return YDWEI2Fc(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert boolexpr +function YDWESaveBoolexprByInteger takes integer pTable,integer pKey,boolexpr be returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(be)) +endfunction + +function YDWESaveBoolexprByString takes string pTable,string pKey,boolexpr be returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(be)) +endfunction + +function YDWEGetBoolexprByInteger takes integer pTable,integer pKey returns boolexpr + return YDWEI2BE(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetBoolexprByString takes string pTable,string pKey returns boolexpr + return YDWEI2BE(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert sound +function YDWESaveSoundByInteger takes integer pTable,integer pKey,sound sd returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(sd)) +endfunction + +function YDWESaveSoundByString takes string pTable,string pKey,sound sd returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(sd)) +endfunction + +function YDWEGetSoundByInteger takes integer pTable,integer pKey returns sound + return YDWEI2Sd(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetSoundByString takes string pTable,string pKey returns sound + return YDWEI2Sd(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert timerdialog +function YDWESaveTimerDialogByInteger takes integer pTable,integer pKey,timerdialog td returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(td)) +endfunction + +function YDWESaveTimerDialogByString takes string pTable,string pKey,timerdialog td returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(td)) +endfunction + +function YDWEGetTimerDialogByInteger takes integer pTable,integer pKey returns timerdialog + return YDWEI2TD(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTimerDialogByString takes string pTable,string pKey returns timerdialog + return YDWEI2TD(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert trackable +function YDWESaveTrackableByInteger takes integer pTable,integer pKey,trackable ta returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(ta)) +endfunction + +function YDWESaveTrackableByString takes string pTable,string pKey,trackable ta returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(ta)) +endfunction + +function YDWEGetTrackableByInteger takes integer pTable,integer pKey returns trackable + return YDWEI2Ta(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetTrackableByString takes string pTable,string pKey returns trackable + return YDWEI2Ta(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert dialog +function YDWESaveDialogByInteger takes integer pTable,integer pKey,dialog d returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(d)) +endfunction + +function YDWESaveDialogByString takes string pTable,string pKey,dialog d returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(d)) +endfunction + +function YDWEGetDialogByInteger takes integer pTable,integer pKey returns dialog + return YDWEI2D(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetDialogByString takes string pTable,string pKey returns dialog + return YDWEI2D(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert button +function YDWESaveButtonByInteger takes integer pTable,integer pKey,button bt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(bt)) +endfunction + +function YDWESaveButtonByString takes string pTable,string pKey,button bt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(bt)) +endfunction + +function YDWEGetButtonByInteger takes integer pTable,integer pKey returns button + return YDWEI2Bt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetButtonByString takes string pTable,string pKey returns button + return YDWEI2Bt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert quest +function YDWESaveQuestByInteger takes integer pTable,integer pKey,quest qt returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(qt)) +endfunction + +function YDWESaveQuestByString takes string pTable,string pKey,quest qt returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(qt)) +endfunction + +function YDWEGetQuestByInteger takes integer pTable,integer pKey returns quest + return YDWEI2Qt(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetQuestByString takes string pTable,string pKey returns quest + return YDWEI2Qt(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +//Covert questitem +function YDWESaveQuestItemByInteger takes integer pTable,integer pKey,questitem qi returns nothing + call StoreInteger(YDGC,I2S(pTable),I2S(pKey),YDWEH2I(qi)) +endfunction + +function YDWESaveQuestItemByString takes string pTable,string pKey,questitem qi returns nothing + call StoreInteger(YDGC,pTable,pKey,YDWEH2I(qi)) +endfunction + +function YDWEGetQuestItemByInteger takes integer pTable,integer pKey returns questitem + return YDWEI2QI(GetStoredInteger(YDGC,I2S(pTable),I2S(pKey))) +endfunction + +function YDWEGetQuestItemByString takes string pTable,string pKey returns questitem + return YDWEI2QI(GetStoredInteger(YDGC,pTable,pKey)) +endfunction + +function YDWES2I takes string s returns integer + return s + return 0 +endfunction + +function GetSpellTargetX takes nothing returns real + local location point=GetSpellTargetLoc() + local real x=GetLocationX(point) + call RemoveLocation(point) + set point=null + return x +endfunction + +function GetSpellTargetY takes nothing returns real + local location point=GetSpellTargetLoc() + local real y=GetLocationY(point) + call RemoveLocation(point) + set point=null + return y +endfunction + + + + + + + + + + + + + + + + + + + + diff --git a/jass/BlizzardAPI.cfg b/jass/BlizzardAPI.cfg new file mode 100644 index 0000000..13ee1d5 --- /dev/null +++ b/jass/BlizzardAPI.cfg @@ -0,0 +1,128 @@ +DzGetMouseTerrainX +DzGetMouseTerrainY +DzGetMouseTerrainZ +DzIsMouseOverUI +DzGetMouseX +DzGetMouseY +DzGetMouseXRelative +DzGetMouseYRelative +DzSetMousePos +DzTriggerRegisterMouseEvent +DzTriggerRegisterMouseEventByCode +DzTriggerRegisterKeyEvent +DzTriggerRegisterKeyEventByCode +DzTriggerRegisterMouseWheelEvent +DzTriggerRegisterMouseWheelEventByCode +DzTriggerRegisterMouseMoveEvent +DzTriggerRegisterMouseMoveEventByCode +DzGetTriggerKey +DzGetWheelDelta +DzIsKeyDown +DzGetTriggerKeyPlayer +DzGetWindowWidth +DzGetWindowHeight +DzGetWindowX +DzGetWindowY +DzTriggerRegisterWindowResizeEvent +DzTriggerRegisterWindowResizeEventByCode +DzIsWindowActive +DzDestructablePosition +DzSetUnitPosition +DzExecuteFunc +DzGetUnitUnderMouse +DzSetUnitTexture +DzSetMemory +DzSetUnitID +DzSetUnitModel +DzSetWar3MapMap +DzGetLocale +DzGetUnitNeededXP +DzTriggerRegisterSyncData +DzSyncData +DzGetTriggerSyncData +DzGetTriggerSyncPlayer +DzFrameHideInterface +DzFrameEditBlackBorders +DzFrameGetPortrait +DzFrameGetMinimap +DzFrameGetCommandBarButton +DzFrameGetHeroBarButton +DzFrameGetHeroHPBar +DzFrameGetHeroManaBar +DzFrameGetItemBarButton +DzFrameGetMinimapButton +DzFrameGetUpperButtonBarButton +DzFrameGetTooltip +DzFrameGetChatMessage +DzFrameGetUnitMessage +DzFrameGetTopMessage +DzGetColor +DzFrameSetUpdateCallback +DzFrameSetUpdateCallbackByCode +DzFrameShow +DzCreateFrame +DzCreateSimpleFrame +DzDestroyFrame +DzLoadToc +DzFrameSetPoint +DzFrameSetAbsolutePoint +DzFrameClearAllPoints +DzFrameSetEnable +DzFrameSetScript +DzFrameSetScriptByCode +DzGetTriggerUIEventPlayer +DzGetTriggerUIEventFrame +DzFrameFindByName +DzSimpleFrameFindByName +DzSimpleFontStringFindByName +DzSimpleTextureFindByName +DzGetGameUI +DzClickFrame +DzSetCustomFovFix +DzEnableWideScreen +DzFrameSetText +DzFrameGetText +DzFrameSetTextSizeLimit +DzFrameGetTextSizeLimit +DzFrameSetTextColor +DzGetMouseFocus +DzFrameSetAllPoints +DzFrameSetFocus +DzFrameSetModel +DzFrameGetEnable +DzFrameSetAlpha +DzFrameGetAlpha +DzFrameSetAnimate +DzFrameSetAnimateOffset +DzFrameSetTexture +DzFrameSetScale +DzFrameSetTooltip +DzFrameCageMouse +DzFrameGetValue +DzFrameSetMinMaxValue +DzFrameSetStepValue +DzFrameSetValue +DzFrameSetSize +DzCreateFrameByTagName +DzFrameSetVertexColor +DzOriginalUIAutoResetPoint +DzFrameSetPriority +DzFrameSetParent +DzFrameGetHeight +DzFrameSetFont +DzFrameGetParent +DzFrameSetTextAlignment +DzFrameGetName +DzTriggerRegisterMouseEventTrg +DzTriggerRegisterKeyEventTrg +DzTriggerRegisterMouseMoveEventTrg +DzTriggerRegisterMouseWheelEventTrg +DzTriggerRegisterWindowResizeEventTrg +DzF2I +DzI2F +DzK2I +DzI2K +DzTriggerRegisterMallItemSyncData +DzGetTriggerMallItemPlayer +DzGetTriggerMallItem + diff --git a/jass/BlizzardAPI.j b/jass/BlizzardAPI.j new file mode 100644 index 0000000..e1cc6e7 --- /dev/null +++ b/jass/BlizzardAPI.j @@ -0,0 +1,192 @@ +#ifndef BZAPIINCLUDE +#define BZAPIINCLUDE + +library BzAPI + //hardware + native DzGetMouseTerrainX takes nothing returns real + native DzGetMouseTerrainY takes nothing returns real + native DzGetMouseTerrainZ takes nothing returns real + native DzIsMouseOverUI takes nothing returns boolean + native DzGetMouseX takes nothing returns integer + native DzGetMouseY takes nothing returns integer + native DzGetMouseXRelative takes nothing returns integer + native DzGetMouseYRelative takes nothing returns integer + native DzSetMousePos takes integer x, integer y returns nothing + native DzTriggerRegisterMouseEvent takes trigger trig, integer btn, integer status, boolean sync, string func returns nothing + native DzTriggerRegisterMouseEventByCode takes trigger trig, integer btn, integer status, boolean sync, code funcHandle returns nothing + native DzTriggerRegisterKeyEvent takes trigger trig, integer key, integer status, boolean sync, string func returns nothing + native DzTriggerRegisterKeyEventByCode takes trigger trig, integer key, integer status, boolean sync, code funcHandle returns nothing + native DzTriggerRegisterMouseWheelEvent takes trigger trig, boolean sync, string func returns nothing + native DzTriggerRegisterMouseWheelEventByCode takes trigger trig, boolean sync, code funcHandle returns nothing + native DzTriggerRegisterMouseMoveEvent takes trigger trig, boolean sync, string func returns nothing + native DzTriggerRegisterMouseMoveEventByCode takes trigger trig, boolean sync, code funcHandle returns nothing + native DzGetTriggerKey takes nothing returns integer + native DzGetWheelDelta takes nothing returns integer + native DzIsKeyDown takes integer iKey returns boolean + native DzGetTriggerKeyPlayer takes nothing returns player + native DzGetWindowWidth takes nothing returns integer + native DzGetWindowHeight takes nothing returns integer + native DzGetWindowX takes nothing returns integer + native DzGetWindowY takes nothing returns integer + native DzTriggerRegisterWindowResizeEvent takes trigger trig, boolean sync, string func returns nothing + native DzTriggerRegisterWindowResizeEventByCode takes trigger trig, boolean sync, code funcHandle returns nothing + native DzIsWindowActive takes nothing returns boolean + //plus + native DzDestructablePosition takes destructable d, real x, real y returns nothing + native DzSetUnitPosition takes unit whichUnit, real x, real y returns nothing + native DzExecuteFunc takes string funcName returns nothing + native DzGetUnitUnderMouse takes nothing returns unit + native DzSetUnitTexture takes unit whichUnit, string path, integer texId returns nothing + native DzSetMemory takes integer address, real value returns nothing + native DzSetUnitID takes unit whichUnit, integer id returns nothing + native DzSetUnitModel takes unit whichUnit, string path returns nothing + native DzSetWar3MapMap takes string map returns nothing + native DzGetLocale takes nothing returns string + native DzGetUnitNeededXP takes unit whichUnit, integer level returns integer + //sync + native DzTriggerRegisterSyncData takes trigger trig, string prefix, boolean server returns nothing + native DzSyncData takes string prefix, string data returns nothing + native DzGetTriggerSyncData takes nothing returns string + native DzGetTriggerSyncPlayer takes nothing returns player + //gui + native DzFrameHideInterface takes nothing returns nothing + native DzFrameEditBlackBorders takes real upperHeight, real bottomHeight returns nothing + native DzFrameGetPortrait takes nothing returns integer + native DzFrameGetMinimap takes nothing returns integer + native DzFrameGetCommandBarButton takes integer row, integer column returns integer + native DzFrameGetHeroBarButton takes integer buttonId returns integer + native DzFrameGetHeroHPBar takes integer buttonId returns integer + native DzFrameGetHeroManaBar takes integer buttonId returns integer + native DzFrameGetItemBarButton takes integer buttonId returns integer + native DzFrameGetMinimapButton takes integer buttonId returns integer + native DzFrameGetUpperButtonBarButton takes integer buttonId returns integer + native DzFrameGetTooltip takes nothing returns integer + native DzFrameGetChatMessage takes nothing returns integer + native DzFrameGetUnitMessage takes nothing returns integer + native DzFrameGetTopMessage takes nothing returns integer + native DzGetColor takes integer r, integer g, integer b, integer a returns integer + native DzFrameSetUpdateCallback takes string func returns nothing + native DzFrameSetUpdateCallbackByCode takes code funcHandle returns nothing + native DzFrameShow takes integer frame, boolean enable returns nothing + native DzCreateFrame takes string frame, integer parent, integer id returns integer + native DzCreateSimpleFrame takes string frame, integer parent, integer id returns integer + native DzDestroyFrame takes integer frame returns nothing + native DzLoadToc takes string fileName returns nothing + native DzFrameSetPoint takes integer frame, integer point, integer relativeFrame, integer relativePoint, real x, real y returns nothing + native DzFrameSetAbsolutePoint takes integer frame, integer point, real x, real y returns nothing + native DzFrameClearAllPoints takes integer frame returns nothing + native DzFrameSetEnable takes integer name, boolean enable returns nothing + native DzFrameSetScript takes integer frame, integer eventId, string func, boolean sync returns nothing + native DzFrameSetScriptByCode takes integer frame, integer eventId, code funcHandle, boolean sync returns nothing + native DzGetTriggerUIEventPlayer takes nothing returns player + native DzGetTriggerUIEventFrame takes nothing returns integer + native DzFrameFindByName takes string name, integer id returns integer + native DzSimpleFrameFindByName takes string name, integer id returns integer + native DzSimpleFontStringFindByName takes string name, integer id returns integer + native DzSimpleTextureFindByName takes string name, integer id returns integer + native DzGetGameUI takes nothing returns integer + native DzClickFrame takes integer frame returns nothing + native DzSetCustomFovFix takes real value returns nothing + native DzEnableWideScreen takes boolean enable returns nothing + native DzFrameSetText takes integer frame, string text returns nothing + native DzFrameGetText takes integer frame returns string + native DzFrameSetTextSizeLimit takes integer frame, integer size returns nothing + native DzFrameGetTextSizeLimit takes integer frame returns integer + native DzFrameSetTextColor takes integer frame, integer color returns nothing + native DzGetMouseFocus takes nothing returns integer + native DzFrameSetAllPoints takes integer frame, integer relativeFrame returns boolean + native DzFrameSetFocus takes integer frame, boolean enable returns boolean + native DzFrameSetModel takes integer frame, string modelFile, integer modelType, integer flag returns nothing + native DzFrameGetEnable takes integer frame returns boolean + native DzFrameSetAlpha takes integer frame, integer alpha returns nothing + native DzFrameGetAlpha takes integer frame returns integer + native DzFrameSetAnimate takes integer frame, integer animId, boolean autocast returns nothing + native DzFrameSetAnimateOffset takes integer frame, real offset returns nothing + native DzFrameSetTexture takes integer frame, string texture, integer flag returns nothing + native DzFrameSetScale takes integer frame, real scale returns nothing + native DzFrameSetTooltip takes integer frame, integer tooltip returns nothing + native DzFrameCageMouse takes integer frame, boolean enable returns nothing + native DzFrameGetValue takes integer frame returns real + native DzFrameSetMinMaxValue takes integer frame, real minValue, real maxValue returns nothing + native DzFrameSetStepValue takes integer frame, real step returns nothing + native DzFrameSetValue takes integer frame, real value returns nothing + native DzFrameSetSize takes integer frame, real w, real h returns nothing + native DzCreateFrameByTagName takes string frameType, string name, integer parent, string template, integer id returns integer + native DzFrameSetVertexColor takes integer frame, integer color returns nothing + native DzOriginalUIAutoResetPoint takes boolean enable returns nothing + native DzFrameSetPriority takes integer frame, integer priority returns nothing + native DzFrameSetParent takes integer frame, integer parent returns nothing + native DzFrameGetHeight takes integer frame returns real + native DzFrameSetFont takes integer frame, string fileName, real height, integer flag returns nothing + native DzFrameGetParent takes integer frame returns integer + native DzFrameSetTextAlignment takes integer frame, integer align returns nothing + native DzFrameGetName takes integer frame returns string + native EXSetUnitArrayString takes integer uid, integer id,integer n,string name returns boolean + native EXSetUnitInteger takes integer uid, integer id,integer n returns boolean + + function DzTriggerRegisterMouseEventTrg takes trigger trg, integer status, integer btn returns nothing + if trg == null then + return + endif + call DzTriggerRegisterMouseEvent(trg, btn, status, true, null) + endfunction + + function DzTriggerRegisterKeyEventTrg takes trigger trg, integer status, integer btn returns nothing + if trg == null then + return + endif + call DzTriggerRegisterKeyEvent(trg, btn, status, true, null) + endfunction + + function DzTriggerRegisterMouseMoveEventTrg takes trigger trg returns nothing + if trg == null then + return + endif + call DzTriggerRegisterMouseMoveEvent(trg, true, null) + endfunction + + function DzTriggerRegisterMouseWheelEventTrg takes trigger trg returns nothing + if trg == null then + return + endif + call DzTriggerRegisterMouseWheelEvent(trg, true, null) + endfunction + + function DzTriggerRegisterWindowResizeEventTrg takes trigger trg returns nothing + if trg == null then + return + endif + call DzTriggerRegisterWindowResizeEvent(trg, true, null) + endfunction + + function DzF2I takes integer i returns integer + return i + endfunction + + function DzI2F takes integer i returns integer + return i + endfunction + + function DzK2I takes integer i returns integer + return i + endfunction + + function DzI2K takes integer i returns integer + return i + endfunction + + function DzTriggerRegisterMallItemSyncData takes trigger trig returns nothing + call DzTriggerRegisterSyncData(trig, "DZMIA", true) + endfunction + + function DzGetTriggerMallItemPlayer takes nothing returns player + return DzGetTriggerSyncPlayer() + endfunction + + function DzGetTriggerMallItem takes nothing returns string + return DzGetTriggerSyncData() + endfunction + +endlibrary + +#endif /// YDWEAddAIOrderIncluded diff --git a/jass/DzAPI.cfg b/jass/DzAPI.cfg new file mode 100644 index 0000000..401da2b --- /dev/null +++ b/jass/DzAPI.cfg @@ -0,0 +1,75 @@ +DzAPI_Map_GetMapLevel +DzAPI_Map_SaveServerValue +DzAPI_Map_GetServerValue +DzAPI_Map_StoreInteger +DzAPI_Map_GetStoredInteger +DzAPI_Map_StoreReal +DzAPI_Map_GetStoredReal +DzAPI_Map_StoreBoolean +DzAPI_Map_GetStoredBoolean +DzAPI_Map_StoreString +DzAPI_Map_GetStoredString +DzAPI_Map_FlushStoredMission +DzAPI_Map_GetLadderLevel +DzAPI_Map_IsRedVIP +DzAPI_Map_IsBlueVIP +DzAPI_Map_GetLadderRank +DzAPI_Map_GetMapLevelRank +DzAPI_Map_GetServerValueErrorCode +DzAPI_Map_GetGuildName +DzAPI_Map_GetGuildRole +GetPlayerServerValueSuccess +DzAPI_Map_IsRPGLobby +DzAPI_Map_GetStoredUnitType +DzAPI_Map_GetStoredAbilityId +DzAPI_Map_GetGameStartTime +DzAPI_Map_HasMallItem +DzAPI_Map_GetMapConfig +DzAPI_Map_SavePublicArchive +DzAPI_Map_GetPublicArchive +DzAPI_Map_UseConsumablesItem +DzAPI_Map_OrpgTrigger +DzAPI_Map_GetServerArchiveDrop +DzAPI_Map_GetServerArchiveEquip +DzAPI_Map_Global_StoreString +DzAPI_Map_Global_GetStoreString +DzAPI_Map_Global_ChangeMsg +DzAPI_Map_ServerArchive +DzAPI_Map_SaveServerArchive +DzAPI_Map_IsRPGQuickMatch +DzAPI_Map_GetMallItemCount +DzAPI_Map_ConsumeMallItem +DzAPI_Map_EnablePlatformSettings +DzAPI_Map_IsBuyReforged +DzAPI_Map_IsPlatformVIP +DzAPI_Map_PlayedGames +DzAPI_Map_CommentCount +DzAPI_Map_FriendCount +DzAPI_Map_IsConnoisseur +DzAPI_Map_IsAuthor +DzAPI_Map_IsBattleNetAccount +DzAPI_Map_CommentTotalCount +DzAPI_Map_Statistics +DzAPI_Map_Returns +DzAPI_Map_ContinuousCount +DzAPI_Map_IsPlayer +DzAPI_Map_MapsTotalPlayed +DzAPI_Map_MapsLevel +DzAPI_Map_MapsConsumeGold +DzAPI_Map_MapsConsumeLumber +DzAPI_Map_MapsConsumeLv1 +DzAPI_Map_MapsConsumeLv2 +DzAPI_Map_MapsConsumeLv3 +DzAPI_Map_MapsConsumeLv4 +DzAPI_Map_GetForumData +DzAPI_Map_OpenMall +DzAPI_Map_GameResult_CommitData +DzAPI_Map_GameResult_CommitTitle +DzAPI_Map_GameResult_CommitPlayerRank +DzAPI_Map_GameResult_CommitGameMode +DzAPI_Map_GameResult_CommitGameResult +DzAPI_Map_GameResult_CommitGameResultNoEnd +DzAPI_Map_GetLotteryUsedCount +DzAPI_Map_GetSinceLastPlayedSeconds +DzAPI_Map_CancelQuickBuy +DzAPI_Map_QuickBuy diff --git a/jass/DzAPI.j b/jass/DzAPI.j new file mode 100644 index 0000000..b098dfd --- /dev/null +++ b/jass/DzAPI.j @@ -0,0 +1,429 @@ +#ifndef DZAPIINCLUDE +#define DZAPIINCLUDE + +#include "BlizzardAPI.j" + +library DzAPI + + native DzAPI_Map_SaveServerValue takes player whichPlayer, string key, string value returns boolean + native DzAPI_Map_GetServerValue takes player whichPlayer, string key returns string + native DzAPI_Map_Ladder_SetStat takes player whichPlayer, string key, string value returns nothing + native DzAPI_Map_IsRPGLadder takes nothing returns boolean + native DzAPI_Map_GetGameStartTime takes nothing returns integer + native DzAPI_Map_Stat_SetStat takes player whichPlayer, string key, string value returns nothing + native DzAPI_Map_GetMatchType takes nothing returns integer + native DzAPI_Map_Ladder_SetPlayerStat takes player whichPlayer, string key, string value returns nothing + native DzAPI_Map_GetServerValueErrorCode takes player whichPlayer returns integer + native DzAPI_Map_GetLadderLevel takes player whichPlayer returns integer + native DzAPI_Map_IsRedVIP takes player whichPlayer returns boolean + native DzAPI_Map_IsBlueVIP takes player whichPlayer returns boolean + native DzAPI_Map_GetLadderRank takes player whichPlayer returns integer + native DzAPI_Map_GetMapLevelRank takes player whichPlayer returns integer + native DzAPI_Map_GetGuildName takes player whichPlayer returns string + native DzAPI_Map_GetGuildRole takes player whichPlayer returns integer + native DzAPI_Map_IsRPGLobby takes nothing returns boolean + native DzAPI_Map_GetMapLevel takes player whichPlayer returns integer + native DzAPI_Map_MissionComplete takes player whichPlayer, string key, string value returns nothing + native DzAPI_Map_GetActivityData takes nothing returns string + native DzAPI_Map_GetMapConfig takes string key returns string + native DzAPI_Map_HasMallItem takes player whichPlayer, string key returns boolean + native DzAPI_Map_SavePublicArchive takes player whichPlayer, string key, string value returns boolean + native DzAPI_Map_GetPublicArchive takes player whichPlayer, string key returns string + native DzAPI_Map_UseConsumablesItem takes player whichPlayer, string key returns nothing + native DzAPI_Map_OrpgTrigger takes player whichPlayer, string key returns nothing + native DzAPI_Map_GetServerArchiveDrop takes player whichPlayer, string key returns string + native DzAPI_Map_GetServerArchiveEquip takes player whichPlayer, string key returns integer + native RequestExtraIntegerData takes integer dataType, player whichPlayer, string param1, string param2, boolean param3, integer param4, integer param5, integer param6 returns integer + native RequestExtraBooleanData takes integer dataType, player whichPlayer, string param1, string param2, boolean param3, integer param4, integer param5, integer param6 returns boolean + native RequestExtraStringData takes integer dataType, player whichPlayer, string param1, string param2, boolean param3, integer param4, integer param5, integer param6 returns string + native RequestExtraRealData takes integer dataType, player whichPlayer, string param1, string param2, boolean param3, integer param4, integer param5, integer param6 returns real + native DzAPI_Map_GetPlatformVIP takes player whichPlayer returns integer + + function DzAPI_Map_IsPlatformVIP takes player whichPlayer returns boolean + return DzAPI_Map_GetPlatformVIP(whichPlayer) > 0 + endfunction + + function DzAPI_Map_Global_GetStoreString takes string key returns string + return RequestExtraStringData(36, GetLocalPlayer(), key, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_Global_StoreString takes string key, string value returns nothing + call RequestExtraStringData(37, GetLocalPlayer(), key, value, false, 0, 0, 0) + endfunction + + function DzAPI_Map_Global_ChangeMsg takes trigger trig returns nothing + call DzTriggerRegisterSyncData(trig, "DZGAU", true) + endfunction + + function DzAPI_Map_ServerArchive takes player whichPlayer, string key returns string + return RequestExtraStringData(38, whichPlayer, key, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_SaveServerArchive takes player whichPlayer, string key, string value returns nothing + call RequestExtraBooleanData(39, whichPlayer, key, value, false, 0, 0, 0) + endfunction + + function DzAPI_Map_IsRPGQuickMatch takes nothing returns boolean + return RequestExtraBooleanData(40, null, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_GetMallItemCount takes player whichPlayer, string key returns integer + return RequestExtraIntegerData(41, whichPlayer, key, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_ConsumeMallItem takes player whichPlayer, string key, integer count returns boolean + return RequestExtraBooleanData(42, whichPlayer, key, null, false, count, 0, 0) + endfunction + + function DzAPI_Map_EnablePlatformSettings takes player whichPlayer, integer option, boolean enable returns boolean + return RequestExtraBooleanData(43, whichPlayer, null, null, enable, option, 0, 0) + endfunction + + function DzAPI_Map_IsBuyReforged takes player whichPlayer returns boolean + return RequestExtraBooleanData(44, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + + + function GetPlayerServerValueSuccess takes player whichPlayer returns boolean + if(DzAPI_Map_GetServerValueErrorCode(whichPlayer)==0)then + return true + else + return false + endif + endfunction + + function DzAPI_Map_StoreIntegerEX takes player whichPlayer, string key, integer value returns nothing + set key="I"+key + call RequestExtraBooleanData(39, whichPlayer, key, I2S(value), false, 0, 0, 0) + set key=null + set whichPlayer=null + endfunction + + function DzAPI_Map_GetStoredIntegerEX takes player whichPlayer, string key returns integer + local integer value + set key="I"+key + set value=S2I(RequestExtraStringData(38, whichPlayer, key, null, false, 0, 0, 0)) + set key=null + set whichPlayer=null + return value + endfunction + + function DzAPI_Map_StoreInteger takes player whichPlayer, string key, integer value returns nothing + set key="I"+key + call DzAPI_Map_SaveServerValue(whichPlayer,key,I2S(value)) + set key=null + set whichPlayer=null + endfunction + + function DzAPI_Map_GetStoredInteger takes player whichPlayer, string key returns integer + local integer value + set key="I"+key + set value=S2I(DzAPI_Map_GetServerValue(whichPlayer,key)) + set key=null + set whichPlayer=null + return value + endfunction + + function DzAPI_Map_CommentTotalCount1 takes player whichPlayer, integer id returns integer + return RequestExtraIntegerData(52, whichPlayer, null, null, false, id, 0, 0) + endfunction + + function DzAPI_Map_StoreReal takes player whichPlayer, string key, real value returns nothing + set key="R"+key + call DzAPI_Map_SaveServerValue(whichPlayer,key,R2S(value)) + set key=null + set whichPlayer=null + endfunction + function DzAPI_Map_GetStoredReal takes player whichPlayer, string key returns real + local real value + set key="R"+key + set value=S2R(DzAPI_Map_GetServerValue(whichPlayer,key)) + set key=null + set whichPlayer=null + return value + endfunction + function DzAPI_Map_StoreBoolean takes player whichPlayer, string key, boolean value returns nothing + set key="B"+key + if(value)then + call DzAPI_Map_SaveServerValue(whichPlayer,key,"1") + else + call DzAPI_Map_SaveServerValue(whichPlayer,key,"0") + endif + set key=null + set whichPlayer=null + endfunction + function DzAPI_Map_GetStoredBoolean takes player whichPlayer, string key returns boolean + local boolean value + set key="B"+key + set key=DzAPI_Map_GetServerValue(whichPlayer,key) + if(key=="1")then + set value=true + else + set value=false + endif + set key=null + set whichPlayer=null + return value + endfunction + function DzAPI_Map_StoreString takes player whichPlayer, string key, string value returns nothing + set key="S"+key + call DzAPI_Map_SaveServerValue(whichPlayer,key,value) + set key=null + set whichPlayer=null + endfunction + function DzAPI_Map_GetStoredString takes player whichPlayer, string key returns string + return DzAPI_Map_GetServerValue(whichPlayer,"S"+key) + endfunction + function DzAPI_Map_StoreStringEX takes player whichPlayer, string key, string value returns nothing + set key="S"+key + call RequestExtraBooleanData(39, whichPlayer,key,value,false,0,0,0) + set key=null + set whichPlayer=null + endfunction + function DzAPI_Map_GetStoredStringEX takes player whichPlayer, string key returns string + return RequestExtraStringData(38, whichPlayer,"S"+key,null,false,0,0,0) + endfunction + + function DzAPI_Map_GetStoredUnitType takes player whichPlayer, string key returns integer + local integer value + set key="I"+key + set value=S2I(DzAPI_Map_GetServerValue(whichPlayer,key)) + set key=null + set whichPlayer=null + return value + endfunction + + function DzAPI_Map_GetStoredAbilityId takes player whichPlayer, string key returns integer + local integer value + set key="I"+key + set value=S2I(DzAPI_Map_GetServerValue(whichPlayer,key)) + set key=null + set whichPlayer=null + return value + endfunction + + + + + function DzAPI_Map_FlushStoredMission takes player whichPlayer, string key returns nothing + call DzAPI_Map_SaveServerValue(whichPlayer,key,null) + set key=null + set whichPlayer=null + endfunction + + function DzAPI_Map_Ladder_SubmitIntegerData takes player whichPlayer, string key, integer value returns nothing + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,I2S(value)) + endfunction + function DzAPI_Map_Stat_SubmitUnitIdData takes player whichPlayer, string key,integer value returns nothing + if(value==0)then + //call DzAPI_Map_Ladder_SetStat(whichPlayer,key,"0") + else + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,I2S(value)) + endif + endfunction + function DzAPI_Map_Stat_SubmitUnitData takes player whichPlayer, string key,unit value returns nothing + call DzAPI_Map_Stat_SubmitUnitIdData(whichPlayer,key,GetUnitTypeId(value)) + endfunction + function DzAPI_Map_Ladder_SubmitAblityIdData takes player whichPlayer, string key, integer value returns nothing + if(value==0)then + //call DzAPI_Map_Ladder_SetStat(whichPlayer,key,"0") + else + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,I2S(value)) + endif + endfunction + function DzAPI_Map_Ladder_SubmitItemIdData takes player whichPlayer, string key, integer value returns nothing + local string S + if(value==0)then + set S="0" + else + set S=I2S(value) + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,S) + endif + //call DzAPI_Map_Ladder_SetStat(whichPlayer,key,S) + set S=null + set whichPlayer=null + endfunction + function DzAPI_Map_Ladder_SubmitItemData takes player whichPlayer, string key, item value returns nothing + call DzAPI_Map_Ladder_SubmitItemIdData(whichPlayer,key,GetItemTypeId(value)) + endfunction + function DzAPI_Map_Ladder_SubmitBooleanData takes player whichPlayer, string key,boolean value returns nothing + if(value)then + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,"1") + else + call DzAPI_Map_Ladder_SetStat(whichPlayer,key,"0") + endif + endfunction + function DzAPI_Map_Ladder_SubmitTitle takes player whichPlayer, string value returns nothing + call DzAPI_Map_Ladder_SetStat(whichPlayer,value,"1") + endfunction + function DzAPI_Map_Ladder_SubmitPlayerRank takes player whichPlayer, integer value returns nothing + call DzAPI_Map_Ladder_SetPlayerStat(whichPlayer,"RankIndex",I2S(value)) + endfunction + + function DzAPI_Map_Ladder_SubmitPlayerExtraExp takes player whichPlayer, integer value returns nothing + call DzAPI_Map_Ladder_SetStat(whichPlayer,"ExtraExp",I2S(value)) + endfunction + + function DzAPI_Map_PlayedGames takes player whichPlayer returns integer + return RequestExtraIntegerData(45, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_CommentCount takes player whichPlayer returns integer + return RequestExtraIntegerData(46, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_FriendCount takes player whichPlayer returns integer + return RequestExtraIntegerData(47, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_IsConnoisseur takes player whichPlayer returns boolean + return RequestExtraBooleanData(48, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_IsBattleNetAccount takes player whichPlayer returns boolean + return RequestExtraBooleanData(49, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_IsAuthor takes player whichPlayer returns boolean + return RequestExtraBooleanData(50, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_CommentTotalCount takes nothing returns integer + return RequestExtraIntegerData(51, null, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_Statistics takes player whichPlayer, string eventKey, string eventType, integer value returns nothing + call RequestExtraBooleanData(34, whichPlayer, eventKey, "", false, value, 0, 0) + endfunction + + function DzAPI_Map_Returns takes player whichPlayer, integer label returns boolean + return RequestExtraBooleanData(53, whichPlayer, null, null, false, label, 0, 0) + endfunction + + + function DzAPI_Map_ContinuousCount takes player whichPlayer, integer id returns integer + return RequestExtraIntegerData(54, whichPlayer, null, null, false, id, 0, 0) + endfunction + + // IsPlayer, //是否为玩家 + function DzAPI_Map_IsPlayer takes player whichPlayer returns boolean + return RequestExtraBooleanData(55, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + // MapsTotalPlayed, //所有地图的总游戏时长 + function DzAPI_Map_MapsTotalPlayed takes player whichPlayer returns integer + return RequestExtraIntegerData(56, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + // MapsLevel, //指定地图的地图等级 + function DzAPI_Map_MapsLevel takes player whichPlayer, integer mapId returns integer + return RequestExtraIntegerData(57, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeGold, //所有地图的金币消耗 + function DzAPI_Map_MapsConsumeGold takes player whichPlayer, integer mapId returns integer + return RequestExtraIntegerData(58, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeLumber, //所有地图的木材消耗 + function DzAPI_Map_MapsConsumeLumber takes player whichPlayer, integer mapId returns integer + return RequestExtraIntegerData(59, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeLv1, //消费 1-199 + function DzAPI_Map_MapsConsumeLv1 takes player whichPlayer, integer mapId returns boolean + return RequestExtraBooleanData(60, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeLv2, //消费 200-499 + function DzAPI_Map_MapsConsumeLv2 takes player whichPlayer, integer mapId returns boolean + return RequestExtraBooleanData(61, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeLv3, //消费 500~999 + function DzAPI_Map_MapsConsumeLv3 takes player whichPlayer, integer mapId returns boolean + return RequestExtraBooleanData(62, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // MapsConsumeLv4, //消费 1000+ + function DzAPI_Map_MapsConsumeLv4 takes player whichPlayer, integer mapId returns boolean + return RequestExtraBooleanData(63, whichPlayer, null, null, false, mapId, 0, 0) + endfunction + + // IsPlayerUsingSkin, //检查是否装备着皮肤(skinType:头像=1、边框=2、称号=3、底纹=4) + function DzAPI_Map_IsPlayerUsingSkin takes player whichPlayer, integer skinType, integer id returns boolean + return RequestExtraBooleanData(64,whichPlayer, null, null, false, skinType, id, 0) + endfunction + //获取论坛数据(0=累计获得赞数,1=精华帖数量,2=发表回复次数,3=收到的欢乐数,4=是否发过贴子,5=是否版主,6=主题数量) + function DzAPI_Map_GetForumData takes player whichPlayer, integer whichData returns integer + return RequestExtraIntegerData(65, whichPlayer, null, null, false, whichData, 0, 0) + endfunction + + // PlayerFlags, //玩家标记 label(1=曾经是平台回流用户,2=当前是平台回流用户,4=曾经是地图回流用户,8=当前是地图回流用户,16=地图是否被玩家收藏) + function DzAPI_Map_PlayerFlags takes player whichPlayer, integer label returns boolean + return RequestExtraBooleanData(53, whichPlayer, null, null, false, label, 0, 0) + endfunction + + // GetLotteryUsedCount, // 获取宝箱抽取次数 + function DzAPI_Map_GetLotteryUsedCount takes player whichPlayer returns integer + return RequestExtraIntegerData(68, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + function DzAPI_Map_OpenMall takes player whichPlayer,string whichkey returns boolean + return RequestExtraBooleanData(66, whichPlayer, whichkey, null, false, 0, 0, 0) + endfunction + + + function DzAPI_Map_GameResult_CommitData takes player whichPlayer, string key, string value returns nothing + call RequestExtraIntegerData(69, whichPlayer, key, value, false, 0, 0, 0) + endfunction + + //游戏结算 + function DzAPI_Map_GameResult_CommitTitle takes player whichPlayer, string value returns nothing + call DzAPI_Map_GameResult_CommitData(whichPlayer,value,"1") + set whichPlayer=null + set value=null + endfunction + function DzAPI_Map_GameResult_CommitPlayerRank takes player whichPlayer, integer value returns nothing + call DzAPI_Map_GameResult_CommitData(whichPlayer,"RankIndex",I2S(value)) + set whichPlayer=null + set value=0 + endfunction + function DzAPI_Map_GameResult_CommitGameMode takes string value returns nothing + call DzAPI_Map_GameResult_CommitData(GetLocalPlayer(),"InnerGameMode",value) + set value=null + endfunction + function DzAPI_Map_GameResult_CommitGameResult takes player whichPlayer, integer value returns nothing + call DzAPI_Map_GameResult_CommitData(whichPlayer,"GameResult",I2S(value)) + set whichPlayer=null + endfunction + + function DzAPI_Map_GameResult_CommitGameResultNoEnd takes player whichPlayer, integer value returns nothing + call DzAPI_Map_GameResult_CommitData(whichPlayer,"GameResultNoEnd",I2S(value)) + set whichPlayer=null + endfunction + + // GetSinceLastPlayedSeconds, // 获取距最后一次游戏的秒数 + function DzAPI_Map_GetSinceLastPlayedSeconds takes player whichPlayer returns integer + return RequestExtraIntegerData(70, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + // QuickBuy, //游戏内快速购买 + function DzAPI_Map_QuickBuy takes player whichPlayer, string key, integer count, integer seconds returns boolean + return RequestExtraBooleanData(72, whichPlayer, key, null, false, count, seconds, 0) + endfunction + + // CancelQuickBuy, //取消快速购买 + function DzAPI_Map_CancelQuickBuy takes player whichPlayer returns boolean + return RequestExtraBooleanData(73, whichPlayer, null, null, false, 0, 0, 0) + endfunction + + //判断是加载成功某个玩家的道具 + function DzAPI_Map_PlayerLoadedItems takes player whichPlayer returns boolean + return RequestExtraBooleanData(77, whichPlayer, null, null, false, 0, 0, 0) + endfunction + +endlibrary + +#endif diff --git a/jass/PreloadSL/YDWE_PreloadSL.cfg b/jass/PreloadSL/YDWE_PreloadSL.cfg new file mode 100644 index 0000000..6ad47d5 --- /dev/null +++ b/jass/PreloadSL/YDWE_PreloadSL.cfg @@ -0,0 +1,6 @@ +YDWE_PreloadSL_SetFile +YDWE_PreloadSL_Save +YDWE_PreloadSL_Load +YDWE_PreloadSL_Set +YDWE_PreloadSL_Get +YDWE_PreloadSL_GetFile \ No newline at end of file diff --git a/jass/PreloadSL/YDWE_PreloadSL.j b/jass/PreloadSL/YDWE_PreloadSL.j new file mode 100644 index 0000000..5465c38 --- /dev/null +++ b/jass/PreloadSL/YDWE_PreloadSL.j @@ -0,0 +1,75 @@ +#define YDWE_PRELOADSL_HEAD_MASK 'YDWE' +#define YDWE_PRELOADSL_CODE_INDEX_BEG(p) (501*GetPlayerId(p)) +#define YDWE_PRELOADSL_GET_RND_MASK() GetRandomInt('0000', 'OOOO') +#define YDWE_PRELOADSL_LIST_FILE(dir) "save\\"+dir+"\\list.sav" +#define YDWE_PRELOADSL_DATA_FILE(dir, file) "save\\"+dir+"\\pre"+file+".sav" + +#define YDWE_PRELOADSL_GET_KEY(p) StringHash(GetPlayerName(p)) + + +#include "YDWEStringHash.j" +#include "Util/YDWESync.j" + +library YDWEPreloadSL initializer Init requires YDWEStringHash, YDWESync + +globals + /// + /// ÿռõĿռ[500*id, 500*(id-1)) + /// ±Խûнм飬ƺûҪ˭Ҫó500...ȥ- - + /// + private integer array Code + private integer array CodeHI + private integer array CodeLO + boolean bj_lastLoadPreloadSLResult +endglobals + +#include "PreloadSL/YDWE_PreloadSL_Pre.j" +#include "PreloadSL/YDWE_PreloadSL_Manager.j" +#include "PreloadSL/YDWE_PreloadSL_Code.j" + +#if 0 + /// + /// һ򵥵Ķ浵ӿ + /// dirĿ¼µlist.savļȡеַ + /// ڼ¼Ŀ¼µĴ浵ļȻҪ;ҲǿԵġ + /// + function YDWE_PreloadSL_SetFile takes player p, string dir, string value, integer n returns nothing + function YDWE_PreloadSL_GetFile takes player p, string dir, integer n returns string + /// + /// ȡļcode + /// ͬһʱڲһϵҶȡݣLoadlock֤㡣LoadϷء + /// falseʾȡʧܡʧʱcodeڵֵòšʧܵԭ + /// 1.Ŀ¼ļ + /// 2. nֵͱʱһ + /// 3.ͱʱһ + /// 4.浵޸Ĺ + /// + function YDWE_PreloadSL_Load takes player p, string dir, string file, integer max_n returns boolean + /// + /// code鵽ļ + /// + function YDWE_PreloadSL_Save takes player p, string dir, string file, integer max_n returns nothing + /// + /// дcodeֵ + /// + function YDWE_PreloadSL_Set takes player p, string s, integer n, integer value returns nothing + function YDWE_PreloadSL_Get takes player p, string s, integer n returns integer +#endif + +private function Init takes nothing returns nothing + local integer index = 0 + loop + exitwhen index >= 16 + set udg_YDWE_PreloadSL_List[index] = "" + set index = index + 1 + endloop +endfunction + +endlibrary + +#undef YDWE_PRELOADSL_HEAD_MASK +#undef YDWE_PRELOADSL_GET_RND_MASK +#undef YDWE_PRELOADSL_CODE_INDEX_BEG +#undef YDWE_PRELOADSL_LIST_FILE +#undef YDWE_PRELOADSL_LIST_FILE + diff --git a/jass/PreloadSL/YDWE_PreloadSL_Code.j b/jass/PreloadSL/YDWE_PreloadSL_Code.j new file mode 100644 index 0000000..180a51f --- /dev/null +++ b/jass/PreloadSL/YDWE_PreloadSL_Code.j @@ -0,0 +1,289 @@ +function YDWE_PreloadSL_GetMask takes player p returns integer + local integer value + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + local integer hi = CodeHI[beg] + local integer lo = CodeLO[beg] + if hi < $8000 then + set value = lo+hi*$10000 + else + set hi = hi-$8000 + set value = -(lo+hi*$10000) + endif + set Code[beg] = value + return value - YDWE_PRELOADSL_HEAD_MASK +endfunction + +/// +/// עЧʶǰȫƶ˵ȫ... +/// һƶ +/// +function YDWE_PreloadSL_Unmove takes integer beg, integer n, integer key returns nothing + local integer value + local integer keys = n*key + local integer index = beg + n + local integer hi + local integer lo + + set beg = beg + 1 + loop + exitwhen index < beg + + set value = keys + (index - beg) + set value = beg + value - value/n*n + if value < beg then + set value = value + n + endif + set hi = CodeHI[value] + set CodeHI[value] = CodeHI[index] + set CodeHI[index] = hi + + set value = keys - (index - beg) + set value = beg + value - value/n*n + if value < beg then + set value = value + n + endif + set lo = CodeLO[value] + set CodeLO[value] = CodeLO[index] + set CodeLO[index] = lo + + set keys = keys - key + + set index = index - 1 + endloop +endfunction + +function YDWE_PreloadSL_GetCode takes integer beg, integer n, integer key, integer mask returns boolean + local integer hi + local integer lo + local integer value + local integer masks = 0 + local integer keys = 0 + local integer index = beg + 1 + local integer end = beg + n + + loop + exitwhen index > end + set hi = CodeHI[index] + set lo = CodeLO[index] + + // SubKey + set keys = keys + key + set hi = hi - keys + set lo = lo + keys + + // SubMask + set masks = masks + mask + set value = masks/$10000 + set hi = hi - (value - value/$100*$100)*$100 + set lo = lo - (masks - masks/$100*$100)*$10000 + + // CheckMask + if ((hi/$10000) != 0) then + return false + endif + if ((lo/$10000) != 0) then + return false + endif + + // GetCode + if hi < $8000 then + set value = lo+hi*$10000 + else + set hi = hi-$8000 + set value = -(lo+hi*$10000) + endif + + set Code[index] = value + set index = index + 1 + endloop + + return true +endfunction + +function YDWE_PreloadSL_Decode takes player p, integer n returns boolean + local integer key = YDWE_PRELOADSL_GET_KEY(p) + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + local integer mask = YDWE_PreloadSL_GetMask(p) + call YDWE_PreloadSL_Unmove(beg, n, key) + return YDWE_PreloadSL_GetCode(beg, n, key, mask) +endfunction + +function YDWE_PreloadSL_SetMask takes player p, integer mask returns nothing + local integer hi + local integer lo + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + local integer value = YDWE_PRELOADSL_HEAD_MASK + mask + if value >= 0 then + set hi = value/$10000 + set lo = value-hi*$10000 + else + set value = -value + set hi = value/$10000 + set lo = value-hi*$10000 + set hi = hi+$8000 + endif + set CodeHI[beg] = hi + set CodeLO[beg] = lo +endfunction + +function YDWE_PreloadSL_SetCode takes integer beg, integer n, integer key, integer mask returns nothing + local integer hi + local integer lo + local integer value + local integer masks = 0 + local integer keys = 0 + local integer index = beg + 1 + local integer end = beg + n + + loop + exitwhen index > end + set value = Code[index] + + // SetCode + if value >= 0 then + set hi = value/$10000 + set lo = value-hi*$10000 + else + set value = -value + set hi = value/$10000 + set lo = value-hi*$10000 + set hi = hi+$8000 + endif + // AddKey + set keys = keys + key + set hi = hi + keys + set lo = lo - keys + + // AddMask + set masks = masks + mask + set value = masks/$10000 + set hi = hi + (value - value/$100*$100)*$100 + set lo = lo + (masks - masks/$100*$100)*$10000 + + set CodeHI[index] = hi + set CodeLO[index] = lo + set index = index + 1 + endloop +endfunction + +/// +/// עЧʶǰȫƶ˵ȫ... +/// ƶԲҪ... +/// +function YDWE_PreloadSL_Move takes integer beg, integer n, integer key returns nothing + local integer value + local integer keys = 0 + local integer index = beg + 1 + local integer end = beg + n + local integer hi + local integer lo + + set beg = beg + 1 + loop + exitwhen index > end + + set keys = keys + key + + set value = keys + (index - beg) + set value = beg + value - value/n*n + if value < beg then + set value = value + n + endif + set hi = CodeHI[value] + set CodeHI[value] = CodeHI[index] + set CodeHI[index] = hi + + set value = keys - (index - beg) + set value = beg + value - value/n*n + if value < beg then + set value = value + n + endif + set lo = CodeLO[value] + set CodeLO[value] = CodeLO[index] + set CodeLO[index] = lo + + set index = index + 1 + endloop +endfunction + +function YDWE_PreloadSL_Encode takes player p, integer n, integer mask returns nothing + local integer key = YDWE_PRELOADSL_GET_KEY(p) + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + call YDWE_PreloadSL_SetMask(p, mask) + call YDWE_PreloadSL_SetCode(beg, n, key, mask) + call YDWE_PreloadSL_Move(beg, n, key) +endfunction + +/// +/// ͬ +/// ͬһʱ䲻Ҫͬһϵ +/// +function YDWE_PreloadSL_Sync takes player p, integer n returns nothing + local integer index + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + local integer end = beg + n + + if GetLocalPlayer() == p then + set index = beg + loop + exitwhen index > end + call YDWESync_Set("H", I2S(index), CodeHI[index]) + call YDWESync_Set("L", I2S(index), CodeLO[index]) + set index = index + 1 + endloop + endif + + call YDWESync_Start() + if GetLocalPlayer() == p then + set index = beg + loop + exitwhen index > end + call YDWESync_Send("H", I2S(index)) + call YDWESync_Send("L", I2S(index)) + set index = index + 1 + endloop + endif + call YDWESync_Ready() + //call TriggerSleepAction(0.2) + call YDWESync_Join(p) + set index = beg + loop + exitwhen index > end + set CodeHI[index] = YDWESync_Get("H", I2S(index)) + set CodeLO[index] = YDWESync_Get("L", I2S(index)) + set index = index + 1 + endloop +endfunction + +function YDWE_PreloadSL_Load takes player p, string dir, string file, integer n returns boolean + call YDWESync_Lock() + set n = n + 1 + + if GetLocalPlayer() == p then + call YDWE_PreloadSL_LoadPreFile(p, n, YDWE_PRELOADSL_DATA_FILE(dir, file)) + endif + + call YDWE_PreloadSL_Sync(p, n) + set bj_lastLoadPreloadSLResult = YDWE_PreloadSL_Decode(p, n) + call YDWESync_Unlock() + + return bj_lastLoadPreloadSLResult +endfunction + +function YDWE_PreloadSL_Save takes player p, string dir, string file, integer n returns nothing + local integer mask = YDWE_PRELOADSL_GET_RND_MASK() + set n = n + 1 + if GetLocalPlayer() == p then + call YDWE_PreloadSL_Encode(p, n, mask) + call YDWE_PreloadSL_SavePreFile(p, n, YDWE_PRELOADSL_DATA_FILE(dir, file)) + endif +endfunction + +function YDWE_PreloadSL_Set takes player p, string s, integer n, integer value returns nothing + set Code[n+YDWE_PRELOADSL_CODE_INDEX_BEG(p)] = value +endfunction + +function YDWE_PreloadSL_Get takes player p, string s, integer n returns integer + return Code[n+YDWE_PRELOADSL_CODE_INDEX_BEG(p)] +endfunction + diff --git a/jass/PreloadSL/YDWE_PreloadSL_Manager.j b/jass/PreloadSL/YDWE_PreloadSL_Manager.j new file mode 100644 index 0000000..491696e --- /dev/null +++ b/jass/PreloadSL/YDWE_PreloadSL_Manager.j @@ -0,0 +1,88 @@ + + +globals + string array udg_YDWE_PreloadSL_List + string udg_YDWE_PreloadSL_CurrentDir = "" +endglobals + +function YDWE_PreloadSL_OpenDir takes string dir returns nothing + local integer index + + set index = 0 + loop + exitwhen index >= 16 + set udg_YDWE_PreloadSL_List[16+index] = GetPlayerName(Player(index)) + call SetPlayerName(Player(index), udg_YDWE_PreloadSL_List[index]) + set index = index + 1 + endloop + call Preloader(YDWE_PRELOADSL_LIST_FILE(dir)) + set index = 0 + loop + exitwhen index >= 16 + set udg_YDWE_PreloadSL_List[index] = GetPlayerName(Player(index)) + call SetPlayerName(Player(index), udg_YDWE_PreloadSL_List[16+index]) + set index = index + 1 + endloop +endfunction + +function YDWE_PreloadSL_CloseDir takes string dir returns nothing + local integer index + + call PreloadGenClear() + call PreloadGenStart() + + set index = 0 + loop + exitwhen index >= 16 + call Preload("\" ) + call SetPlayerName(Player("+I2S(index)+"),\""+udg_YDWE_PreloadSL_List[index]+"\") + //") + set index = index + 1 + endloop + call Preload("\" ) +endfunction + +function YDWE_PreloadSL_ListFile takes nothing returns nothing + //") + call PreloadGenEnd(YDWE_PRELOADSL_LIST_FILE(dir)) +endfunction + +function YDWE_PreloadSL_SetFile takes player p, string dir, string value, integer n returns nothing + if GetLocalPlayer() == p then + if udg_YDWE_PreloadSL_CurrentDir == "" then + call YDWE_PreloadSL_OpenDir(dir) + set udg_YDWE_PreloadSL_CurrentDir = dir + elseif udg_YDWE_PreloadSL_CurrentDir != dir then + call YDWE_PreloadSL_CloseDir(udg_YDWE_PreloadSL_CurrentDir) + call YDWE_PreloadSL_OpenDir(dir) + set udg_YDWE_PreloadSL_CurrentDir = dir + endif + + if 0 < n and n < 16 then + set udg_YDWE_PreloadSL_List[n-1] = value + call YDWE_PreloadSL_CloseDir(udg_YDWE_PreloadSL_CurrentDir) + endif + endif +endfunction + +function YDWE_PreloadSL_GetFile takes player p, string dir, integer n returns string + if GetLocalPlayer() == p then + if udg_YDWE_PreloadSL_CurrentDir == "" then + call YDWE_PreloadSL_OpenDir(dir) + set udg_YDWE_PreloadSL_CurrentDir = dir + elseif udg_YDWE_PreloadSL_CurrentDir != dir then + call YDWE_PreloadSL_CloseDir(udg_YDWE_PreloadSL_CurrentDir) + call YDWE_PreloadSL_OpenDir(dir) + set udg_YDWE_PreloadSL_CurrentDir = dir + endif + + if 0 < n and n < 16 then + return udg_YDWE_PreloadSL_List[n-1] + else + return "" + endif + else + return "NotBelongToYou" + endif +endfunction + diff --git a/jass/PreloadSL/YDWE_PreloadSL_Pre.j b/jass/PreloadSL/YDWE_PreloadSL_Pre.j new file mode 100644 index 0000000..d7853c6 --- /dev/null +++ b/jass/PreloadSL/YDWE_PreloadSL_Pre.j @@ -0,0 +1,61 @@ +function YDWE_PreloadSL_SaveInteger takes integer key, integer value returns nothing + if value >= 0 then + call Preload("\" ) + call SetPlayerTechMaxAllowed(Player(14),"+I2S(key)+",1) + call SetPlayerTechMaxAllowed(Player(15),"+I2S(key)+","+I2S(value)+") + //") + else + call Preload("\" ) + call SetPlayerTechMaxAllowed(Player(14),"+I2S(key)+",2) + call SetPlayerTechMaxAllowed(Player(15),"+I2S(key)+","+I2S(-value)+") + //") + endif +endfunction + +function YDWE_PreloadSL_LoadInteger takes integer key returns integer + local integer var_type = GetPlayerTechMaxAllowed(Player(14), key) + + if var_type == 1 then + return GetPlayerTechMaxAllowed(Player(15), key) + elseif var_type == 2 then + return -GetPlayerTechMaxAllowed(Player(15), key) + else + return 0 + endif +endfunction + +function YDWE_PreloadSL_LoadPreFile takes player p, integer n, string strFilePath returns nothing + local integer index = 0 + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + + call Preloader(strFilePath) + + loop + exitwhen index > n + set CodeHI[beg+index] = YDWE_PreloadSL_LoadInteger(index) + set CodeLO[beg+index] = YDWE_PreloadSL_LoadInteger($200+index) + set index = index + 1 + endloop +endfunction + +function YDWE_PreloadSL_SavePreFile takes player p, integer n, string strFilePath returns nothing + local integer index = 0 + local integer beg = YDWE_PRELOADSL_CODE_INDEX_BEG(p) + + call PreloadGenClear() + call PreloadGenStart() + + loop + exitwhen index > n + call YDWE_PreloadSL_SaveInteger(index, CodeHI[beg+index]) + call YDWE_PreloadSL_SaveInteger($200+index, CodeLO[beg+index]) + set index = index + 1 + endloop + + call Preload("\" ) +endfunction +function YDWE_PreloadSL_DataFile takes nothing returns nothing + //") + call PreloadGenEnd(strFilePath) +endfunction + diff --git a/jass/Util/YDWEBitwise.j b/jass/Util/YDWEBitwise.j new file mode 100644 index 0000000..00aeb63 --- /dev/null +++ b/jass/Util/YDWEBitwise.j @@ -0,0 +1,227 @@ +#ifndef YDWEBitwiseIncluded +#define YDWEBitwiseIncluded + +library YDWEBitwise initializer onInit + globals + private integer array C2 + private constant string hexstr = "0123456789ABCDEF" + endglobals + + private function Bit takes integer x returns boolean + return (x - x/2*2) !=0 + endfunction + + private function NOT_P takes integer x returns integer + local integer z = 0 + local integer i = 0 + + loop + exitwhen (i == 31) + if not Bit(x) then + set z = z + C2[i] + endif + set x = x / 2 + set i = i + 1 + endloop + + return z + endfunction + public function NOT takes integer x returns integer + if x >= 0 then + return NOT_P(x) + C2[31] + else + return -x-1 + endif + endfunction + + private function AND_P takes integer x, integer y returns integer + local integer z = 0 + local integer i = 0 + + loop + exitwhen (i == 31) + if Bit(x) and Bit(y) then + set z = z + C2[i] + endif + set x = x / 2 + set y = y / 2 + set i = i + 1 + endloop + + return z + endfunction + public function AND takes integer x, integer y returns integer + if x >= 0 then + if y >= 0 then + return AND_P(x, y) + else + return AND_P(x, NOT_P(-y-1)) + endif + else + if y >= 0 then + return AND_P(NOT_P(-x-1), y) + else + return AND_P(NOT_P(-x-1), NOT_P(-y-1)) + C2[31] + endif + endif + endfunction + + private function OR_P takes integer x, integer y returns integer + local integer z = 0 + local integer i = 0 + + loop + exitwhen (i == 31) + if Bit(x) or Bit(y) then + set z = z + C2[i] + endif + set x = x / 2 + set y = y / 2 + set i = i + 1 + endloop + + return z + endfunction + public function OR takes integer x, integer y returns integer + if x >= 0 then + if y >= 0 then + return OR_P(x, y) + else + return OR_P(x, NOT_P(-y-1)) + C2[31] + endif + else + if y >= 0 then + return OR_P(NOT_P(-x-1), y) + C2[31] + else + return OR_P(NOT_P(-x-1), NOT_P(-y-1)) + C2[31] + endif + endif + endfunction + + private function XOR_P takes integer x, integer y returns integer + local integer z = 0 + local integer i = 0 + + loop + exitwhen (i == 31) + if Bit(x) != Bit(y) then + set z = z + C2[i] + endif + set x = x / 2 + set y = y / 2 + set i = i + 1 + endloop + + return z + endfunction + public function XOR takes integer x, integer y returns integer + if x >= 0 then + if y >= 0 then + return XOR_P(x, y) + else + return XOR_P(x, NOT_P(-y-1)) + C2[31] + endif + else + if y >= 0 then + return XOR_P(NOT_P(-x-1), y) + C2[31] + else + return XOR_P(NOT_P(-x-1), NOT_P(-y-1)) + endif + endif + endfunction + + private function LShift_P takes integer x, integer n returns integer + return x * C2[n] + endfunction + public function LShift takes integer x, integer n returns integer + return x * C2[n] + endfunction + + private function RShift_P takes integer x, integer n returns integer + return x / C2[n] + endfunction + public function RShift takes integer x, integer n returns integer + if x >= 0 then + return RShift_P(x, n) + else + return RShift_P(NOT_P(-x-1), n)+C2[31-n] + endif + endfunction + + private function ToHexChar takes integer x returns string + return SubString(hexstr, x, x+1) + endfunction + private function ToHexChar7 takes integer x returns string + local string s = "" + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + set s = ToHexChar(x-x/$10*$10) + s + set x = x/$10 + return ToHexChar(x-x/$10*$10) + s + endfunction + public function ToHexString takes integer x returns string + if x >= 0 then + return ToHexChar(x/$10000000)+ ToHexChar7(x) + else + set x = NOT_P(-x-1) + return ToHexChar($8+x/$10000000)+ ToHexChar7(x) + endif + endfunction +/* + private function UnitTest takes nothing returns nothing + local boolean b = true +#define UNIT_TEST(conf) if not (conf) then YDNL call BJDebugMsg("[BitwiseTest] " + #conf) YDNL set b = false YDNL endif + UNIT_TEST(NOT($10000007) == $EFFFFFF8) + UNIT_TEST(AND($10000007, $101) == $1) + UNIT_TEST(OR ($10000007, $101) == $10000107) + UNIT_TEST(XOR($10000007, $101) == $10000106) + UNIT_TEST(RShift($10000001, 20) == $100) + UNIT_TEST(LShift($10000001, 20) == $100000) + UNIT_TEST(LShift($F0000001, 1) == $E0000002) + UNIT_TEST(LShift($70000001, 1) == $E0000002) + UNIT_TEST(NOT($80000001) == $7FFFFFFE) + UNIT_TEST(AND($80000001, $101) == $1) + UNIT_TEST(OR ($80000001, $101) == $80000101) + UNIT_TEST(XOR($80000001, $101) == $80000100) + UNIT_TEST(RShift($80000001, 20) == $800) + UNIT_TEST(LShift($80000001, 20) == $100000) + UNIT_TEST(LShift($80000001, 0) == $80000001) + UNIT_TEST(ToHexString($34567891) == "34567891") + UNIT_TEST(ToHexString($ABCDEF02) == "ABCDEF02") + UNIT_TEST(ToHexString($FADF2312) == "FADF2312") +#undef UNIT_TEST + if b then + call BJDebugMsg("[BitwiseTest] вͨ") + endif + endfunction + private function UnitTestInit takes nothing returns nothing + local trigger t = CreateTrigger() + call TriggerRegisterPlayerEvent(t, Player(0), EVENT_PLAYER_END_CINEMATIC) + call TriggerAddAction(t, function UnitTest) + set t = null + endfunction +*/ + + private function onInit takes nothing returns nothing + local integer i = 1 + set C2[0] = 1 + loop + exitwhen (i == 32) + set C2[i] = C2[i-1]*2 + set i = i + 1 + endloop +/* + call UnitTestInit() +*/ + endfunction +endlibrary + +#endif diff --git a/jass/Util/YDWEChar.j b/jass/Util/YDWEChar.j new file mode 100644 index 0000000..6a31d94 --- /dev/null +++ b/jass/Util/YDWEChar.j @@ -0,0 +1,331 @@ +#ifndef YDWECharIncluded +#define YDWECharIncluded + +library YDWEChar + /// + /// Ԥ޷0x01~0x1Fû0x01~0x0F + /// 1.200xFFbug + /// + globals + #include "charlist.h" + endglobals + + public function chr takes integer n returns string + if $20 <= n and n < $FF then + return SubString(originstr, n-$20, n-$1F) + endif + + return "" + endfunction + + private function ord_hi takes string s returns integer + local integer a = $60 + + loop + exitwhen (a > $DE) + if (s == SubString(originstr, a, a+1)) then + return a + $20 + endif + set a = a + 1 + endloop + + return $FF + endfunction + + public function ord takes string s returns integer + if s == " " then + return 32 + endif + if s == "!" then + return 33 + endif + if s == "\"" then + return 34 + endif + if s == "#" then + return 35 + endif + if s == "$" then + return 36 + endif + if s == "%" then + return 37 + endif + if s == "&" then + return 38 + endif + if s == "'" then + return 39 + endif + if s == "(" then + return 40 + endif + if s == ")" then + return 41 + endif + if s == "*" then + return 42 + endif + if s == "+" then + return 43 + endif + if s == "," then + return 44 + endif + if s == "-" then + return 45 + endif + if s == "." then + return 46 + endif + if s == "/" then + return 47 + endif + if s == "0" then + return 48 + endif + if s == "1" then + return 49 + endif + if s == "2" then + return 50 + endif + if s == "3" then + return 51 + endif + if s == "4" then + return 52 + endif + if s == "5" then + return 53 + endif + if s == "6" then + return 54 + endif + if s == "7" then + return 55 + endif + if s == "8" then + return 56 + endif + if s == "9" then + return 57 + endif + if s == ":" then + return 58 + endif + if s == ";" then + return 59 + endif + if s == "<" then + return 60 + endif + if s == "=" then + return 61 + endif + if s == ">" then + return 62 + endif + if s == "?" then + return 63 + endif + if s == "@" then + return 64 + endif + if s == "A" then + return 65 + endif + if s == "B" then + return 66 + endif + if s == "C" then + return 67 + endif + if s == "D" then + return 68 + endif + if s == "E" then + return 69 + endif + if s == "F" then + return 70 + endif + if s == "G" then + return 71 + endif + if s == "H" then + return 72 + endif + if s == "I" then + return 73 + endif + if s == "J" then + return 74 + endif + if s == "K" then + return 75 + endif + if s == "L" then + return 76 + endif + if s == "M" then + return 77 + endif + if s == "N" then + return 78 + endif + if s == "O" then + return 79 + endif + if s == "P" then + return 80 + endif + if s == "Q" then + return 81 + endif + if s == "R" then + return 82 + endif + if s == "S" then + return 83 + endif + if s == "T" then + return 84 + endif + if s == "U" then + return 85 + endif + if s == "V" then + return 86 + endif + if s == "W" then + return 87 + endif + if s == "X" then + return 88 + endif + if s == "Y" then + return 89 + endif + if s == "Z" then + return 90 + endif + if s == "[" then + return 91 + endif + if s == "\\" then + return 92 + endif + if s == "]" then + return 93 + endif + if s == "^" then + return 94 + endif + if s == "_" then + return 95 + endif + if s == "`" then + return 96 + endif + if s == "a" then + return 97 + endif + if s == "b" then + return 98 + endif + if s == "c" then + return 99 + endif + if s == "d" then + return 100 + endif + if s == "e" then + return 101 + endif + if s == "f" then + return 102 + endif + if s == "g" then + return 103 + endif + if s == "h" then + return 104 + endif + if s == "i" then + return 105 + endif + if s == "j" then + return 106 + endif + if s == "k" then + return 107 + endif + if s == "l" then + return 108 + endif + if s == "m" then + return 109 + endif + if s == "n" then + return 110 + endif + if s == "o" then + return 111 + endif + if s == "p" then + return 112 + endif + if s == "q" then + return 113 + endif + if s == "r" then + return 114 + endif + if s == "s" then + return 115 + endif + if s == "t" then + return 116 + endif + if s == "u" then + return 117 + endif + if s == "v" then + return 118 + endif + if s == "w" then + return 119 + endif + if s == "x" then + return 120 + endif + if s == "y" then + return 121 + endif + if s == "z" then + return 122 + endif + if s == "{" then + return 123 + endif + if s == "|" then + return 124 + endif + if s == "}" then + return 125 + endif + if s == "~" then + return 126 + endif + if s == "" then + return 127 + endif + if s == "" then + return 128 + endif + return ord_hi(s) + endfunction +endlibrary + +#endif diff --git a/jass/Util/YDWECharEx.j b/jass/Util/YDWECharEx.j new file mode 100644 index 0000000..7bbaeb3 --- /dev/null +++ b/jass/Util/YDWECharEx.j @@ -0,0 +1,282 @@ +#ifndef YDWECharExIncluded +#define YDWECharExIncluded + +library YDWECharEx initializer onInit + globals + private integer array ord_hash + endglobals + + public function ord takes string s returns integer + local boolean islower = (StringCase(s, true) != s) + local integer hash = StringHash(s)/0x0010404A+3000 + if s == "/" then + return 47 + endif + if islower then + return ord_hash[hash] + 32 + else + return ord_hash[hash] + endif + endfunction + + private function onInit takes nothing returns nothing + set ord_hash[4730] = 0 + set ord_hash[1886] = 1 + set ord_hash[4309] = 2 + set ord_hash[4235] = 3 + set ord_hash[3736] = 4 + set ord_hash[3702] = 5 + set ord_hash[4206] = 6 + set ord_hash[1370] = 7 + set ord_hash[2864] = 8 + set ord_hash[3140] = 9 + set ord_hash[4116] = 10 + set ord_hash[1460] = 11 + set ord_hash[3646] = 12 + set ord_hash[1874] = 13 + set ord_hash[2551] = 14 + set ord_hash[2502] = 15 + set ord_hash[3034] = 16 + set ord_hash[2552] = 17 + set ord_hash[3972] = 18 + set ord_hash[4137] = 19 + set ord_hash[4446] = 20 + set ord_hash[4630] = 21 + set ord_hash[1834] = 22 + set ord_hash[3110] = 23 + set ord_hash[1813] = 24 + set ord_hash[1249] = 25 + set ord_hash[1929] = 26 + set ord_hash[3133] = 27 + set ord_hash[1894] = 28 + set ord_hash[3127] = 29 + set ord_hash[1513] = 30 + set ord_hash[1296] = 31 + set ord_hash[1464] = 32 + set ord_hash[4865] = 33 + set ord_hash[3594] = 34 + set ord_hash[3002] = 35 + set ord_hash[3501] = 36 + set ord_hash[2964] = 37 + set ord_hash[3526] = 38 + set ord_hash[1671] = 39 + set ord_hash[2812] = 40 + set ord_hash[2869] = 41 + set ord_hash[2838] = 42 + set ord_hash[4853] = 43 + set ord_hash[3721] = 44 + set ord_hash[4877] = 45 + set ord_hash[2746] = 46 + set ord_hash[3779] = 47 + set ord_hash[2773] = 48 + set ord_hash[4063] = 49 + set ord_hash[2392] = 50 + set ord_hash[2198] = 51 + set ord_hash[2361] = 52 + set ord_hash[2114] = 53 + set ord_hash[2370] = 54 + set ord_hash[3327] = 55 + set ord_hash[1221] = 56 + set ord_hash[1616] = 57 + set ord_hash[1257] = 58 + set ord_hash[3265] = 59 + set ord_hash[1160] = 60 + set ord_hash[3324] = 61 + set ord_hash[1184] = 62 + set ord_hash[1670] = 63 + set ord_hash[1086] = 64 + set ord_hash[1510] = 65 + set ord_hash[1426] = 66 + set ord_hash[1536] = 67 + set ord_hash[1438] = 68 + set ord_hash[3561] = 69 + set ord_hash[3741] = 70 + set ord_hash[3524] = 71 + set ord_hash[1473] = 72 + set ord_hash[3596] = 73 + set ord_hash[1486] = 74 + set ord_hash[3597] = 75 + set ord_hash[1411] = 76 + set ord_hash[3678] = 77 + set ord_hash[3652] = 78 + set ord_hash[3755] = 79 + set ord_hash[3798] = 80 + set ord_hash[3797] = 81 + set ord_hash[3752] = 82 + set ord_hash[3710] = 83 + set ord_hash[3774] = 84 + set ord_hash[2040] = 85 + set ord_hash[3885] = 86 + set ord_hash[2492] = 87 + set ord_hash[1639] = 88 + set ord_hash[2968] = 89 + set ord_hash[1159] = 90 + set ord_hash[3436] = 91 + set ord_hash[4726] = 92 + set ord_hash[4211] = 93 + set ord_hash[3791] = 94 + set ord_hash[4747] = 95 + set ord_hash[1501] = 96 + set ord_hash[3660] = 97 + set ord_hash[4333] = 98 + set ord_hash[4254] = 99 + set ord_hash[3790] = 100 + set ord_hash[2739] = 101 + set ord_hash[4696] = 102 + set ord_hash[3229] = 103 + set ord_hash[2820] = 104 + set ord_hash[1686] = 105 + set ord_hash[4351] = 106 + set ord_hash[2181] = 107 + set ord_hash[3776] = 108 + set ord_hash[4756] = 109 + set ord_hash[4603] = 110 + set ord_hash[4822] = 111 + set ord_hash[3174] = 112 + set ord_hash[2062] = 113 + set ord_hash[1739] = 114 + set ord_hash[1455] = 115 + set ord_hash[4626] = 116 + set ord_hash[2914] = 117 + set ord_hash[2828] = 118 + set ord_hash[3564] = 119 + set ord_hash[2352] = 120 + set ord_hash[1000] = 121 + set ord_hash[4059] = 122 + set ord_hash[2677] = 123 + set ord_hash[3415] = 124 + set ord_hash[2142] = 125 + set ord_hash[1197] = 126 + set ord_hash[1222] = 127 + set ord_hash[2656] = 128 + set ord_hash[2865] = 129 + set ord_hash[1396] = 130 + set ord_hash[2415] = 131 + set ord_hash[1804] = 132 + set ord_hash[3955] = 133 + set ord_hash[4370] = 134 + set ord_hash[3418] = 135 + set ord_hash[3477] = 136 + set ord_hash[1539] = 137 + set ord_hash[4912] = 138 + set ord_hash[2017] = 139 + set ord_hash[4442] = 140 + set ord_hash[4546] = 141 + set ord_hash[1966] = 142 + set ord_hash[1104] = 143 + set ord_hash[3076] = 144 + set ord_hash[4086] = 145 + set ord_hash[5014] = 146 + set ord_hash[4301] = 147 + set ord_hash[1794] = 148 + set ord_hash[3753] = 149 + set ord_hash[4212] = 150 + set ord_hash[3224] = 151 + set ord_hash[2312] = 152 + set ord_hash[4622] = 153 + set ord_hash[3408] = 154 + set ord_hash[4645] = 155 + set ord_hash[3372] = 156 + set ord_hash[3680] = 157 + set ord_hash[1976] = 158 + set ord_hash[3624] = 159 + set ord_hash[1938] = 160 + set ord_hash[2458] = 161 + set ord_hash[2009] = 162 + set ord_hash[2499] = 163 + set ord_hash[1007] = 164 + set ord_hash[3453] = 165 + set ord_hash[1058] = 166 + set ord_hash[3429] = 167 + set ord_hash[2101] = 168 + set ord_hash[3911] = 169 + set ord_hash[2692] = 170 + set ord_hash[3938] = 171 + set ord_hash[1588] = 172 + set ord_hash[4942] = 173 + set ord_hash[1610] = 174 + set ord_hash[4910] = 175 + set ord_hash[1888] = 176 + set ord_hash[3139] = 177 + set ord_hash[3304] = 178 + set ord_hash[3152] = 179 + set ord_hash[3352] = 180 + set ord_hash[2186] = 181 + set ord_hash[4433] = 182 + set ord_hash[2172] = 183 + set ord_hash[4214] = 184 + set ord_hash[2548] = 185 + set ord_hash[4465] = 186 + set ord_hash[2460] = 187 + set ord_hash[4424] = 188 + set ord_hash[3478] = 189 + set ord_hash[3404] = 190 + set ord_hash[3513] = 191 + set ord_hash[3428] = 192 + set ord_hash[1787] = 193 + set ord_hash[2230] = 194 + set ord_hash[4845] = 195 + set ord_hash[3149] = 196 + set ord_hash[4855] = 197 + set ord_hash[3161] = 198 + set ord_hash[1604] = 199 + set ord_hash[3800] = 200 + set ord_hash[1593] = 201 + set ord_hash[3364] = 202 + set ord_hash[2562] = 203 + set ord_hash[2456] = 204 + set ord_hash[2584] = 205 + set ord_hash[2404] = 206 + set ord_hash[1666] = 207 + set ord_hash[1844] = 208 + set ord_hash[1878] = 209 + set ord_hash[1925] = 210 + set ord_hash[4000] = 211 + set ord_hash[4931] = 212 + set ord_hash[2961] = 213 + set ord_hash[4964] = 214 + set ord_hash[3658] = 215 + set ord_hash[1108] = 216 + set ord_hash[3047] = 217 + set ord_hash[1840] = 218 + set ord_hash[3356] = 219 + set ord_hash[4393] = 220 + set ord_hash[3145] = 221 + set ord_hash[1853] = 222 + set ord_hash[3796] = 223 + set ord_hash[2396] = 224 + set ord_hash[4593] = 225 + set ord_hash[3142] = 226 + set ord_hash[2016] = 227 + set ord_hash[4706] = 228 + set ord_hash[4664] = 229 + set ord_hash[3210] = 230 + set ord_hash[2116] = 231 + set ord_hash[1156] = 232 + set ord_hash[1260] = 233 + set ord_hash[984] = 234 + set ord_hash[1757] = 235 + set ord_hash[2459] = 236 + set ord_hash[4681] = 237 + set ord_hash[1029] = 238 + set ord_hash[1811] = 239 + set ord_hash[4562] = 240 + set ord_hash[4236] = 241 + set ord_hash[1097] = 242 + set ord_hash[4793] = 243 + set ord_hash[3714] = 244 + set ord_hash[4220] = 245 + set ord_hash[1202] = 246 + set ord_hash[4685] = 247 + set ord_hash[1699] = 248 + set ord_hash[2574] = 249 + set ord_hash[1387] = 250 + set ord_hash[1750] = 251 + set ord_hash[3267] = 252 + set ord_hash[2747] = 253 + set ord_hash[1337] = 254 + set ord_hash[2210] = 255 + endfunction +endlibrary + +#endif diff --git a/jass/Util/YDWESync.j b/jass/Util/YDWESync.j new file mode 100644 index 0000000..3ce56ea --- /dev/null +++ b/jass/Util/YDWESync.j @@ -0,0 +1 @@ +#ifndef YDWESyncIncluded #define YDWESyncIncluded library YDWESync initializer onInit globals private gamecache m_gc private boolean m_mutex_state = false endglobals private function IsLivingPlayer takes player p returns boolean return (GetPlayerSlotState(p) == PLAYER_SLOT_STATE_PLAYING) /* */ and (GetPlayerController(p) == MAP_CONTROL_USER) endfunction private function GetLivingfPlayer takes nothing returns player local integer i = 0 loop exitwhen IsLivingPlayer(Player(i)) or i >= 11 set i = i + 1 endloop return Player(i) endfunction public function Lock takes nothing returns nothing loop if not m_mutex_state then set m_mutex_state = true return endif call TriggerSleepAction(0.2) endloop endfunction public function Unlock takes nothing returns nothing set m_mutex_state = false endfunction public function Join takes player p returns nothing if GetLocalPlayer() == p then call StoreInteger(m_gc, "-", "-", 'YDWE') endif call TriggerSyncStart() if GetLocalPlayer() == p then call SyncStoredInteger(m_gc, "-", "-") endif call StoreInteger(m_gc, "-", "-", 0) call TriggerSyncReady() loop if 'YDWE' == GetStoredInteger(m_gc, "-", "-") then return endif call TriggerSleepAction(0.2) endloop endfunction public function Set takes string table, string key, integer value returns nothing call StoreInteger(m_gc, table, key, value) endfunction public function Get takes string table, string key returns integer return GetStoredInteger(m_gc, table, key) endfunction public function Start takes nothing returns nothing call TriggerSyncStart() endfunction public function Ready takes nothing returns nothing call TriggerSyncReady() endfunction public function Send takes string table, string key returns nothing call SyncStoredInteger(m_gc, table, key) endfunction private function onInit takes nothing returns nothing call FlushGameCache(InitGameCache("@")) set m_gc = InitGameCache("@") endfunction endlibrary #endif \ No newline at end of file diff --git a/jass/Util/charlist.h b/jass/Util/charlist.h new file mode 100644 index 0000000..4693744 --- /dev/null +++ b/jass/Util/charlist.h @@ -0,0 +1 @@ +private constant string originstr = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" diff --git a/jass/YDWEAddAIOrder.cfg b/jass/YDWEAddAIOrder.cfg new file mode 100644 index 0000000..ed093b4 --- /dev/null +++ b/jass/YDWEAddAIOrder.cfg @@ -0,0 +1 @@ +YDWEAddAIOrder \ No newline at end of file diff --git a/jass/YDWEAddAIOrder.j b/jass/YDWEAddAIOrder.j new file mode 100644 index 0000000..20fc2ae --- /dev/null +++ b/jass/YDWEAddAIOrder.j @@ -0,0 +1,83 @@ +#ifndef YDWEAddAIOrderIncluded +#define YDWEAddAIOrderIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//AI-Զͷż +//=========================================================================== +library YDWEAddAIOrder requires YDWEBase +private function AIOrderRun takes nothing returns boolean + local unit u = GetTriggerUnit() + local integer count = YDWEGetIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Count") + local integer order = 0 + local integer pro = 0 + local integer index = 0 + local integer i = 0 + local integer a = 0 + set a = GetRandomInt(0,100*count) + loop + set pro = YDWEGetIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Probability"+I2S(i)) + if 100*i <= a and a < 100*i+pro then + set order = YDWEGetIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder"+I2S(i)) + set index = YDWEGetIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Index"+I2S(i)) + endif + exitwhen i >= count + set i = i + 1 + endloop + // 1Ŀ 2Ŀ 3Ŀ 4Լ + if index == 1 then + call IssueTargetOrderById(u,order,GetEventTargetUnit()) + elseif index == 2 then + call IssuePointOrderById(u,order,GetUnitX(GetEventTargetUnit()),GetUnitY(GetEventTargetUnit())) + elseif index == 3 then + call IssueImmediateOrderById(u, order) + elseif index == 4 then + call IssueTargetOrderById(u,order,u) + endif + set u = null + return false +endfunction + +function YDWEAddAIOrder takes unit u,integer N,integer index,string orderA,string orderB,string orderC,integer probability returns nothing + local integer i = YDWEGetIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Count") + local trigger trg + local string order=null + if i==0 then + set trg = CreateTrigger() + if N==1 then + call TriggerRegisterUnitEvent(trg, u, EVENT_UNIT_TARGET_IN_RANGE) //÷Ϊ¼ + else + call TriggerRegisterUnitEvent(trg, u, EVENT_UNIT_ATTACKED ) //ñΪ¼ + endif + call YDWESaveIntegerByString(I2S(YDWEH2I(u)), "MercenaryTrigger",YDWEH2I(trg)) + call YDWESaveTriggerConditionByString(I2S(YDWEH2I(trg)), "TriggerCondition",TriggerAddCondition(trg, Condition(function AIOrderRun))) //ðɣЧǷdzԵ + endif + if index == 1 then + set order=orderA + elseif index == 2 then + set order=orderB + elseif index == 3 then + set order=orderC + elseif index == 4 then + set order=orderA + endif + call YDWESaveIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder"+I2S(i), OrderId(order)) //ʹOrderIdҪOrderStringõö + call YDWESaveIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Probability"+I2S(i), probability) + call YDWESaveIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Index"+I2S(i), index) + call YDWESaveIntegerByString(I2S(YDWEH2I(u)), "MercenaryAIOrder_Count", i+1) + set trg = null +endfunction + +//պ +function YDWEFlushAIOrder takes unit u returns nothing + local trigger trg=YDWEGetTriggerByString(I2S(YDWEH2I(u)), "MercenaryTrigger") + call TriggerRemoveCondition(trg,YDWEGetTriggerConditionByString(I2S(YDWEH2I(trg)), "TriggerCondition")) + call DestroyTrigger(trg) + call YDWEFlushMissionByString(I2S(YDWEH2I(trg))) + call YDWEFlushMissionByString(I2S(YDWEH2I(u))) + set trg=null +endfunction +endlibrary + +#endif /// YDWEAddAIOrderIncluded diff --git a/jass/YDWEAdvancedUnitDataSystem.cfg b/jass/YDWEAdvancedUnitDataSystem.cfg new file mode 100644 index 0000000..15bae25 --- /dev/null +++ b/jass/YDWEAdvancedUnitDataSystem.cfg @@ -0,0 +1,7 @@ +YDWEGetUnitGoldCost +YDWEGetUnitWoodCost +YDWEGetUnitBuildTime +YDWEGetUnitCountDone +YDWEGetUnitFoodUsed +YDWEGetUnitFoodMade +YDWEGetUnitArmor \ No newline at end of file diff --git a/jass/YDWEAdvancedUnitDataSystem.j b/jass/YDWEAdvancedUnitDataSystem.j new file mode 100644 index 0000000..e5f6b26 --- /dev/null +++ b/jass/YDWEAdvancedUnitDataSystem.j @@ -0,0 +1,135 @@ +#ifndef YDWEAdvancedUnitDataSystemIncluded +#define YDWEAdvancedUnitDataSystemIncluded + +#include "YDWEBase.j" + +library YDWEAdvancedUnitDataSystem requires YDWEBase + + + +globals + private constant real ARMOR_REDUCTION_MULTIPLIER1 = + private constant real ARMOR_REDUCTION_MULTIPLIER2 = + private constant real NATLOG_094 = + private constant real ARMOR_INVULNERABLE = 917451.519 + private constant real DAMAGE_TEST = 160. + private constant real DAMAGE_LIFE = 300. +endglobals + +globals +#ifndef YDWE_DamageEventTrigger +#define YDWE_DamageEventTrigger + trigger yd_DamageEventTrigger = null +#endif +endglobals + +native GetUnitGoldCost takes integer unitid returns integer +native GetUnitWoodCost takes integer unitid returns integer +native GetUnitBuildTime takes integer unitid returns integer +native GetUnitCountDone takes integer unitid returns integer +constant native GetUnitFoodUsed takes unit whichUnit returns integer +constant native GetUnitFoodMade takes unit whichUnit returns integer + +private function Log takes real x returns real + local real min = -88.0 + local real max = 88.0 + local real mid + local integer i = 20 + loop + set mid = (min + max) / 2 + exitwhen(i <= 0) + set i = i - 1 + if(Pow(bj_E, mid) >= x) then + set max = mid + else + set min = mid + endif + endloop + return mid +endfunction + +function YDWEGetUnitGoldCost takes integer unitid returns integer + if IsHeroUnitId(unitid) == true then + return 425 + endif + return GetUnitGoldCost(unitid) +endfunction + +function YDWEGetUnitWoodCost takes integer unitid returns integer + if IsHeroUnitId(unitid) == true then + return 100 + endif + return GetUnitWoodCost(unitid) +endfunction + +function YDWEGetUnitBuildTime takes integer unitid returns integer + if IsHeroUnitId(unitid) == true then + return 55 + endif + return GetUnitBuildTime(unitid) +endfunction + +function YDWEGetUnitCountDone takes integer unitid returns integer + if IsHeroUnitId(unitid) == true then + return 0 + endif + return GetUnitCountDone(unitid) +endfunction + +function YDWEGetUnitFoodUsed takes unit whichUnit returns integer + if IsUnitType(whichUnit, UNIT_TYPE_HERO) == true then + return 5 + endif + return GetUnitFoodUsed(whichUnit) +endfunction + +function YDWEGetUnitFoodMade takes unit whichUnit returns integer + if IsUnitType(whichUnit, UNIT_TYPE_HERO) == true then + return 0 + endif + return GetUnitFoodMade(whichUnit) +endfunction + +function YDWEGetUnitArmor takes unit u,integer aid returns real + local real life = GetWidgetLife(u) + local real test = life + local real redc = 0. + local boolean enab = false + local trigger trig = GetTriggeringTrigger() + if u != null and life >= 0.405 then + if GetUnitState(u, UNIT_STATE_MAX_LIFE) <= DAMAGE_LIFE then + call UnitAddAbility(u, aid) + endif + if life <= DAMAGE_LIFE then + call SetWidgetLife(u, DAMAGE_LIFE) + set test = DAMAGE_LIFE + endif + if trig != null and IsTriggerEnabled(trig) then + call DisableTrigger(trig) + set enab = true + endif + call DisableTrigger(yd_DamageEventTrigger) + call UnitDamageTarget(u, u, DAMAGE_TEST, true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_NORMAL, null) + call EnableTrigger(yd_DamageEventTrigger) + set redc = (DAMAGE_TEST-test+GetWidgetLife(u))/DAMAGE_TEST + if enab then + call EnableTrigger(trig) + endif + call UnitRemoveAbility(u, aid) + call SetWidgetLife(u, life) + set trig = null + if redc >= 1. then + return ARMOR_INVULNERABLE + elseif redc < 0. then + return -Log(redc+1.)/NATLOG_094 + else + return redc/(ARMOR_REDUCTION_MULTIPLIER1*(1.-redc)) + endif + endif + set trig = null + return 0. +endfunction + +endlibrary + +#endif /// YDWEAdvancedUnitDataSystemIncluded diff --git a/jass/YDWEAroundSystem.cfg b/jass/YDWEAroundSystem.cfg new file mode 100644 index 0000000..256d676 --- /dev/null +++ b/jass/YDWEAroundSystem.cfg @@ -0,0 +1 @@ +YDWEAroundSystem \ No newline at end of file diff --git a/jass/YDWEAroundSystem.j b/jass/YDWEAroundSystem.j new file mode 100644 index 0000000..025773f --- /dev/null +++ b/jass/YDWEAroundSystem.j @@ -0,0 +1,100 @@ +#ifndef YDWEAroundSystemIncluded +#define YDWEAroundSystemIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//ܻģ +//=========================================================================== +library YDWEAroundSystem requires YDWEBase +//library TP1 requires YDWEBase + globals + private constant timer AROUND_TIM = CreateTimer() + private constant real AROUND_INTER = 0.01 + endglobals + + private struct Data + static thistype array Structs + static integer Total = 0 + unit caster = null + unit obj = null + real dur = 0. + real inter = 0. + real each = 0. + real rate = 0. + real dis = 0. + real rise = 0. + real angle = 0. + real radius = 0. + real height = 0 + endstruct + + private function spin takes nothing returns nothing + local Data d = 0 + local real x = 0. + local real y = 0. + local integer inst = 0 + + loop + exitwhen (inst == Data.Total) + set d = Data.Structs[inst] + if ( d.dur > 0 ) and (GetUnitState(d.caster, UNIT_STATE_LIFE)>0) and (GetUnitState(d.obj, UNIT_STATE_LIFE)>0) then + set d.each = d.each + AROUND_INTER + if ( d.each >= d.inter ) then + set d.angle = d.angle + d.rate + set d.radius = d.radius + d.dis + set d.height = d.height + d.rise + set x = GetUnitX(d.caster) + d.radius*Cos(d.angle) + set y = GetUnitY(d.caster) + d.radius*Sin(d.angle) + set x = YDWECoordinateX(x) + set y = YDWECoordinateY(y) + call SetUnitX(d.obj, x) + call SetUnitY(d.obj, y) + call SetUnitFlyHeight(d.obj, d.height, 0.) + set d.each = 0. + endif + set d.dur = d.dur - AROUND_INTER + else + set bj_lastAbilityTargetUnit=d.caster + call YDWESyStemAbilityCastingOverTriggerAction(d.obj,10) + set d.caster = null + set d.obj = null + call d.destroy() + set Data.Total = Data.Total - 1 + set Data.Structs[inst] = Data.Structs[Data.Total] + set inst = inst - 1 + endif + set inst = inst + 1 + endloop + if ( Data.Total == 0 ) then + call PauseTimer(AROUND_TIM) + endif + endfunction + + function YDWEAroundSystem takes unit satellite, unit star, real angleRate, real displacement, real riseRate,real timeout, real interval returns nothing + local Data d = Data.create() + local real x1 = GetUnitX(star) + local real y1 = GetUnitY(star) + local real x2 = GetUnitX(satellite) + local real y2 = GetUnitY(satellite) + set d.caster = star + set d.obj = satellite + set d.dur = timeout + set d.inter = interval + set d.rate = angleRate*(3.14159/180.) + set d.dis = displacement + set d.rise = riseRate + set d.angle = Atan2(y2-y1,x2-x1) + set d.radius = SquareRoot((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)) + set d.height = GetUnitFlyHeight(d.obj) + set Data.Structs[Data.Total] = integer(d) + set Data.Total = Data.Total + 1 + if ( Data.Total - 1 == 0 ) then + call TimerStart(AROUND_TIM, AROUND_INTER, true, function spin) + endif + endfunction + +endlibrary + + +#endif /// YDWEAroundSystemIncluded diff --git a/jass/YDWEAttackWaveTimer.cfg b/jass/YDWEAttackWaveTimer.cfg new file mode 100644 index 0000000..cb5d0e5 --- /dev/null +++ b/jass/YDWEAttackWaveTimer.cfg @@ -0,0 +1,4 @@ +YDWEAttackWaveTimer +YDWERemoveAttackWaveByUnitID +YDWERemoveAttackWaveByTimer +YDWERemoveAttackWaveReturnTimer \ No newline at end of file diff --git a/jass/YDWEAttackWaveTimer.j b/jass/YDWEAttackWaveTimer.j new file mode 100644 index 0000000..738e82a --- /dev/null +++ b/jass/YDWEAttackWaveTimer.j @@ -0,0 +1,74 @@ +#ifndef YDWEAttackWaveTimerIncluded +#define YDWEAttackWaveTimerIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//ˢϵͳ +//=========================================================================== +library YDWEAttackWaveTimer requires YDWEBase + private function AttackWaveProc takes nothing returns nothing + local timer t = GetExpiredTimer() + local real x1 = YDWEGetRealByString( "AttackWave"+I2S(YDWEH2I(t)), "x1") + local real y1 = YDWEGetRealByString( "AttackWave"+I2S(YDWEH2I(t)), "y1") + local real x2 = YDWEGetRealByString( "AttackWave"+I2S(YDWEH2I(t)), "x2") + local real y2 = YDWEGetRealByString( "AttackWave"+I2S(YDWEH2I(t)), "y2") + local real face = YDWEGetRealByString( "AttackWave"+I2S(YDWEH2I(t)), "face") + local integer N = YDWEGetIntegerByString( "AttackWave"+I2S(YDWEH2I(t)), "N") + local integer unitid = YDWEGetIntegerByString( "AttackWave"+I2S(YDWEH2I(t)), "unitid") + local player p = Player(YDWEGetIntegerByString("AttackWave"+I2S(YDWEH2I(t)), "playerid")) + local unit tempUnit + local integer n = 0 + call GroupClear(bj_lastCreatedGroup) + loop + exitwhen (n>=N) + set tempUnit = CreateUnit(p,unitid,x1,y1,face) + call GroupAddUnit(bj_lastCreatedGroup, tempUnit) + set bj_lastCreatedUnit=tempUnit + call IssuePointOrder(tempUnit, "attack", x2,y2) + set n=n+1 + set tempUnit = null + endloop + endfunction + + function YDWEAttackWaveTimer takes player p,integer N,integer unitid,location whichLocation,real face,location TargetLocation,real timeout returns nothing + local real x1 = GetLocationX(whichLocation) + local real y1 = GetLocationY(whichLocation) + local real x2 = GetLocationX(TargetLocation) + local real y2 = GetLocationY(TargetLocation) + local timer t = CreateTimer() + call YDWESaveIntegerByString( "AttackWave"+I2S(unitid)+R2S(x1)+R2S(y1)+R2S(timeout), "Timer", YDWEH2I(t)) + call YDWESaveIntegerByString( "AttackWave"+I2S(YDWEH2I(t)), "unitid", unitid) + call YDWESaveIntegerByString( "AttackWave"+I2S(YDWEH2I(t)), "playerid", GetPlayerId(p)) + call YDWESaveIntegerByString( "AttackWave"+I2S(YDWEH2I(t)), "N", N) + call YDWESaveRealByString( "AttackWave"+I2S(YDWEH2I(t)), "x1", x1) + call YDWESaveRealByString( "AttackWave"+I2S(YDWEH2I(t)), "y1", y1) + call YDWESaveRealByString( "AttackWave"+I2S(YDWEH2I(t)), "x2", x2) + call YDWESaveRealByString( "AttackWave"+I2S(YDWEH2I(t)), "y2", y2) + call YDWESaveRealByString( "AttackWave"+I2S(YDWEH2I(t)), "face", face) + call YDWESaveTimerByString( "AttackWaveLastTimer", "Timer", t) + call YDWESaveStringByString( "AttackWave"+I2S(YDWEH2I(t)), "Store", "AttackWave"+I2S(unitid)+R2S(x1)+R2S(y1)+R2S(timeout)) + call TimerStart(t,timeout,true,function AttackWaveProc) + call RemoveLocation(whichLocation) + set t = null + endfunction + + function YDWERemoveAttackWaveByUnitID takes integer unitid,location whichLocation,real timeout returns nothing + local integer t = YDWEGetIntegerByString( "AttackWave"+I2S(unitid)+R2S(GetLocationX(whichLocation))+R2S(GetLocationY(whichLocation))+R2S(timeout), "Timer") + call YDWEFlushMissionByString( "AttackWave"+I2S(unitid)+I2S(YDWEH2I(whichLocation))+R2S(timeout)) + call YDWEFlushMissionByString( "AttackWave"+I2S(t)) + call DestroyTimer(YDWEGetTimerByString("AttackWave"+I2S(unitid)+R2S(GetLocationX(whichLocation))+R2S(GetLocationY(whichLocation))+R2S(timeout), "Timer")) + endfunction + + function YDWERemoveAttackWaveByTimer takes timer t returns nothing + call YDWEFlushMissionByString( YDWEGetStringByString("AttackWave"+I2S(YDWEH2I(t)), "Store")) + call YDWEFlushMissionByString( "AttackWave"+I2S(YDWEH2I(t))) + call DestroyTimer(t) + endfunction + + function YDWERemoveAttackWaveReturnTimer takes nothing returns timer + return YDWEGetTimerByString("AttackWaveLastTimer","Timer") + endfunction +endlibrary + +#endif /// YDWEAttackWaveTimerIncluded diff --git a/jass/YDWEBase.cfg b/jass/YDWEBase.cfg new file mode 100644 index 0000000..c5f9f05 --- /dev/null +++ b/jass/YDWEBase.cfg @@ -0,0 +1,212 @@ +[general] +YDWEH2I + +YDWEGetUnitID +YDWEGetItemID +YDWEGetPlayerID +YDWEGetTimerID +YDWEGetTriggerID +YDWEGetGroupID +YDWEGetLocationID +YDWEGetMultiboardID +YDWEGetMultiboardItemID +YDWEGetTextTagID +YDWEGetLightningID +YDWEGetRegionID +YDWEGetRectID +YDWEGetLeaderboardID +YDWEGetEffectID +YDWEGetDestructableID +YDWEGetTriggerConditionID +YDWEGetTriggerActionID +YDWEGetTriggerEventID +YDWEGetForceID +YDWEGetBoolexprID +YDWEGetSoundID +YDWEGetTimerDialogID +YDWEGetTrackableID +YDWEGetDialogID +YDWEGetButtonID + +YDWEFlushAllData +YDWEFlushMissionByInteger +YDWEFlushMissionByString +YDWEFlushStoredIntegerByInteger +YDWEFlushStoredIntegerByString +YDWEHaveSavedIntegerByInteger +YDWEHaveSavedIntegerByString + +YDWESaveIntegerByInteger +YDWESaveIntegerByString +YDWEGetIntegerByInteger +YDWEGetIntegerByString +YDWESaveRealByInteger +YDWESaveRealByString +YDWEGetRealByInteger +YDWEGetRealByString +YDWESaveStringByInteger +YDWESaveStringByString +YDWEGetStringByInteger +YDWEGetStringByString +YDWESaveBooleanByInteger +YDWESaveBooleanByString +YDWEGetBooleanByInteger +YDWEGetBooleanByString +YDWESaveUnitByInteger +YDWESaveUnitByString +YDWEGetUnitByInteger +YDWEGetUnitByString +YDWESaveUnitIDByInteger +YDWESaveUnitIDByString +YDWEGetUnitIDByInteger +YDWEGetUnitIDByString +YDWESaveAbilityIDByInteger +YDWESaveAbilityIDByString +YDWEGetAbilityIDByInteger +YDWEGetAbilityIDByString +YDWESavePlayerByInteger +YDWESavePlayerByString +YDWEGetPlayerByInteger +YDWEGetPlayerByString +YDWESaveItemByInteger +YDWESaveItemByString +YDWEGetItemByInteger +YDWEGetItemByString +YDWESaveItemIDByInteger +YDWESaveItemIDByString +YDWEGetItemIDByInteger +YDWEGetItemIDByString +YDWESaveTimerByInteger +YDWESaveTimerByString +YDWEGetTimerByInteger +YDWEGetTimerByString +YDWESaveTriggerByInteger +YDWESaveTriggerByString +YDWEGetTriggerByInteger +YDWEGetTriggerByString +YDWESaveLocationByInteger +YDWESaveLocationByString +YDWEGetLocationByInteger +YDWEGetLocationByString +YDWESaveGroupByInteger +YDWESaveGroupByString +YDWEGetGroupByInteger +YDWEGetGroupByString +YDWESaveMultiboardByInteger +YDWESaveMultiboardByString +YDWEGetMultiboardByInteger +YDWEGetMultiboardByString +YDWESaveMultiboardItemByInteger +YDWESaveMultiboardItemByString +YDWEGetMultiboardItemByInteger +YDWEGetMultiboardItemByString +YDWESaveTextTagByInteger +YDWESaveTextTagByString +YDWEGetTextTagByInteger +YDWEGetTextTagByString +YDWESaveLightningByInteger +YDWESaveLightningByString +YDWEGetLightningByInteger +YDWEGetLightningByString +YDWESaveRegionByInteger +YDWESaveRegionByString +YDWEGetRegionByInteger +YDWEGetRegionByString +YDWESaveRectByInteger +YDWESaveRectByString +YDWEGetRectByInteger +YDWEGetRectByString +YDWESaveLeaderboardByInteger +YDWESaveLeaderboardByString +YDWEGetLeaderboardByInteger +YDWEGetLeaderboardByString +YDWESaveEffectByInteger +YDWESaveEffectByString +YDWEGetEffectByInteger +YDWEGetEffectByString +YDWESaveDestructableByInteger +YDWESaveDestructableByString +YDWEGetDestructableByInteger +YDWEGetDestructableByString +YDWESaveTriggerConditionByInteger +YDWESaveTriggerConditionByString +YDWEGetTriggerConditionByInteger +YDWEGetTriggerConditionByString +YDWESaveTriggerActionByInteger +YDWESaveTriggerActionByString +YDWEGetTriggerActionByInteger +YDWEGetTriggerActionByString +YDWESaveTriggerEventByInteger +YDWESaveTriggerEventByString +YDWEGetTriggerEventByInteger +YDWEGetTriggerEventByString +YDWESaveForceByInteger +YDWESaveForceByString +YDWEGetForceByInteger +YDWEGetForceByString +YDWESaveBoolexprByInteger +YDWESaveBoolexprByString +YDWEGetBoolexprByInteger +YDWEGetBoolexprByString +YDWESaveSoundByInteger +YDWESaveSoundByString +YDWEGetSoundByInteger +YDWEGetSoundByString +YDWESaveTimerDialogByInteger +YDWESaveTimerDialogByString +YDWEGetTimerDialogByInteger +YDWEGetTimerDialogByString +YDWESaveTrackableByInteger +YDWESaveTrackableByString +YDWEGetTrackableByInteger +YDWEGetTrackableByString +YDWESaveDialogByInteger +YDWESaveDialogByString +YDWEGetDialogByInteger +YDWEGetDialogByString +YDWESaveButtonByInteger +YDWESaveButtonByString +YDWEGetButtonByInteger +YDWEGetButtonByString +YDWESaveQuestByInteger +YDWESaveQuestByString +YDWEGetQuestByInteger +YDWEGetQuestByString +YDWESaveQuestItemByInteger +YDWESaveQuestItemBByString +YDWEGetQuestItemBByInteger +YDWEGetQuestItemBByString + +YDWEDistanceBetweenUnits +YDWEAngleBetweenUnits +YDWEGetRect +YDWEFlyEnable +YDWEId2S +YDWES2Id +YDWES2UnitId +YDWES2ItemId +YDWES2I +YDWECreateUnitPool +YDWEPlaceRandomUnit +YDWEGetLastUnitPool +YDWEGetLastPoolAbstractedUnit +YDWECreateItemPool +YDWEPlaceRandomItem +YDWEGetLastItemPool +YDWEGetLastPoolAbstractedItem +YDWESetAttackDamageWeaponType +YDWEGetPlayerColorString + +YDWEGetUnitItemSoftId +YDWESetMapLimitCoordinate + +YDWECoordinateX +YDWECoordinateY + +YDWESyStemAbilityCastingOverRegistTrigger + +[old] + +GetHandleId +GetSpellTargetX +GetSpellTargetY diff --git a/jass/YDWEBase.j b/jass/YDWEBase.j new file mode 100644 index 0000000..2d10c78 --- /dev/null +++ b/jass/YDWEBase.j @@ -0,0 +1,16 @@ +#ifndef YDWEBaseIncluded +#define YDWEBaseIncluded + +library YDWEBase initializer InitializeYD + +#if WARCRAFT_VERSION >= 124 +# include "Base/YDWEBase_hashtable.j" +#else +# include "Base/YDWEBase_returnbug.j" +#endif +# +# include "Base/YDWEBase_common.j" + +endlibrary + +#endif // YDWEBaseIncluded diff --git a/jass/YDWECinematicSystem.cfg b/jass/YDWECinematicSystem.cfg new file mode 100644 index 0000000..ff788ea --- /dev/null +++ b/jass/YDWECinematicSystem.cfg @@ -0,0 +1 @@ +YDWEInitCinematicSystem \ No newline at end of file diff --git a/jass/YDWECinematicSystem.j b/jass/YDWECinematicSystem.j new file mode 100644 index 0000000..51c64c1 --- /dev/null +++ b/jass/YDWECinematicSystem.j @@ -0,0 +1,2013 @@ +#ifndef YDWECinematicSystemIncluded +#define YDWECinematicSystemIncluded + +#include "YDWEBase.j" + +library YDWEScriptSystem requires YDWEBase + +// **************************************************************************** +// ** +// ** CALIBRATION FUNCTIONS +// ** +// **************************************************************************** +globals +//ScriptSystem + private unit array YDWE_cinS_actor + private camerasetup array YDWE_cinS_camera + private real array YDWE_cinS_act_moveX + private real array YDWE_cinS_act_moveY + private real array YDWE_cinS_act_moveZ + private real array YDWE_cinS_act_moveVX + private real array YDWE_cinS_act_moveVY + private real array YDWE_cinS_act_moveVZ + private real array YDWE_cinS_act_moveAZ + private real array YDWE_cinS_act_moveTime + private real array YDWE_cinS_act_turnFi + private real array YDWE_cinS_act_turnVFi + private real array YDWE_cinS_act_turnTime + private real array YDWE_cinS_act_colourR + private real array YDWE_cinS_act_colourG + private real array YDWE_cinS_act_colourB + private real array YDWE_cinS_act_colourA + private real array YDWE_cinS_act_colourVR + private real array YDWE_cinS_act_colourVG + private real array YDWE_cinS_act_colourVB + private real array YDWE_cinS_act_colourVA + private real array YDWE_cinS_act_colourTime + private real array YDWE_cinS_act_sizeS + private real array YDWE_cinS_act_sizeVS + private real array YDWE_cinS_act_sizeTime + private real array YDWE_cinS_cam_startval + private real array YDWE_cinS_cam_startvel + private real array YDWE_cinS_cam_accprim + private real array YDWE_cinS_cam_accsec + private real array YDWE_cinS_cam_time + private real array YDWE_cinS_cam_endtime + private group array YDWE_cinS_act_groups + private unit YDWE_cinS_cam_OvRxyzUnitPrim = null + private real array YDWE_cinS_cam_OvRoffset + private real YDWE_cinS_cam_OvRxyzTime = 0 + private real YDWE_cinS_cam_OvRxyzEndtime = 0 + private real YDWE_cinS_cam_OvRangTime = 0 + private real YDWE_cinS_cam_OvRangEndtime = 0 + private unit YDWE_cinS_cam_OvRxyzUnitSec = null + private unit YDWE_cinS_cam_OvRangUnitPrim = null + private unit YDWE_cinS_cam_OvRangUnitSec = null + private boolean YDWE_cinS_cam_OvRxyzSmooth = false + private boolean YDWE_cinS_cam_OvRangSmooth = false + private unit YDWE_cinS_cam_fadeUnit = null + private location YDWE_cinS_tempPoint = null + private boolean YDWE_cinS_cam_ignoreTerrain = false + private boolean YDWE_cinS_displaySubtitles = true + private integer YDWE_cinS_FadeFilterUnit = 'e000' + private real YDWE_cinS_ScriptSystemPeriod = 0.02 + private real YDWE_cinS_ParticlePeriod = 0.02 + private real YDWE_cinS_CameraPeriod = 0.02 +endglobals + +function YDWEScriptSystemPeriod takes real timeout returns nothing + set YDWE_cinS_ScriptSystemPeriod=timeout +endfunction + +function YDWEParticlePeriod takes real timeout returns nothing + set YDWE_cinS_ParticlePeriod=timeout +endfunction + +function YDWECameraPeriod takes real timeout returns nothing + set YDWE_cinS_CameraPeriod=timeout +endfunction + +function YDWEFadeFilterUnit takes integer uid returns nothing + set YDWE_cinS_FadeFilterUnit=uid +endfunction + +//=========================================================================== +//ϵͳ-ScriptSystem +//=========================================================================== + +function YDWECinSInitTempPoint takes location point returns nothing + set YDWE_cinS_tempPoint=point + //return +endfunction + +function YDWECinSActor takes integer i returns unit + return YDWE_cinS_actor[i] +endfunction + +// **************************************************************************** +// ** +// ** GENERAL AND MISCELANEOUS FUNCTIONS +// ** +// **************************************************************************** + +//function GC takes nothing returns gamecache +// if YDWE_cinS_GC == null then +// call FlushGameCache(InitGameCache( "CinemaCache" )) +// set YDWE_cinS_GC = InitGameCache( "CinemaCache" ) +// endif +// return YDWE_cinS_GC +//endfunction + +function YDWECameraSetupAssign takes camerasetup cs, integer actID returns nothing + set YDWE_cinS_camera[actID] = cs +endfunction + +function YDWEActorCreate takes player p, integer actID, integer unitType returns nothing + local unit u = CreateUnit(p, unitType, 0.0, 0.0, 0.0) + call SetUnitUserData(u, actID) + call YDWEFlyEnable(u) + set YDWE_cinS_actor[actID] = u + set YDWE_cinS_act_colourR[actID] = 100.0 + set YDWE_cinS_act_colourG[actID] = 100.0 + set YDWE_cinS_act_colourB[actID] = 100.0 + set YDWE_cinS_act_colourA[actID] = 100.0 + set u = null +endfunction + +// **************************************************************************** +// ** +// ** CAMERA SYSTEM +// ** +// **************************************************************************** + +function YDWECinematicCameraEnable takes nothing returns nothing + local trigger t = YDWEGetTriggerByString( "Globals", "CamTrig") + call EnableTrigger(t) + set t = null +endfunction +function YDWECinematicCameraDisable takes nothing returns nothing + local trigger t = YDWEGetTriggerByString( "Globals", "CamTrig") + call DisableTrigger(t) + set t = null +endfunction + +function YDWESetCameraZ takes real z returns nothing + //thanks to ToadCop for this function + set z = GetCameraField(CAMERA_FIELD_ZOFFSET)+z-GetCameraTargetPositionZ() + call SetCameraField(CAMERA_FIELD_ZOFFSET,z,- 0.01) + call SetCameraField(CAMERA_FIELD_ZOFFSET,z,0.01) +endfunction + +function YDWECameraMainLoop takes nothing returns nothing + local real array s + local location stupid = YDWE_cinS_tempPoint + local integer i = 0 + local real ovrFactor + + // camera motion + loop + exitwhen i == 18 + set i = i + 1 + set YDWE_cinS_cam_time[i] = YDWE_cinS_cam_time[i] + YDWE_cinS_CameraPeriod + + set s[i] = YDWE_cinS_cam_startval[i] + ( YDWE_cinS_cam_startvel[i] * YDWE_cinS_cam_time[i] ) + ( YDWE_cinS_cam_accprim[i] * YDWE_cinS_cam_time[i] * YDWE_cinS_cam_time[i] / 2 ) + + if i > 3 and i < 7 then + loop + if s[i] > 360 then + set s[i] = s[i] - 360 + elseif s[i] < 0 then + set s[i] = s[i] + 360 + else + exitwhen true + endif + endloop + endif + + if YDWE_cinS_cam_time[i] + YDWE_cinS_CameraPeriod >= YDWE_cinS_cam_endtime[i] then + if YDWE_cinS_cam_accsec[i] != 0 then + set YDWE_cinS_cam_startvel[i] = YDWE_cinS_cam_startvel[i] + ( YDWE_cinS_cam_accprim[i] * YDWE_cinS_cam_time[i] ) + set YDWE_cinS_cam_accprim[i] = YDWE_cinS_cam_accsec[i] + set YDWE_cinS_cam_startval[i] = s[i] + set YDWE_cinS_cam_time[i] = 0.0 + set YDWE_cinS_cam_accsec[i] = 0.0 + else + if i>9 then + set YDWE_cinS_cam_startvel[i] = 0.0 + set YDWE_cinS_cam_startval[i] = s[i] + set YDWE_cinS_cam_time[i] = 0.0 + endif + endif + endif + endloop + + // camera lock-to-unit override + if YDWE_cinS_cam_OvRxyzUnitPrim!=null or YDWE_cinS_cam_OvRxyzUnitSec!=null then + set YDWE_cinS_cam_OvRxyzTime = YDWE_cinS_cam_OvRxyzTime + YDWE_cinS_CameraPeriod + if YDWE_cinS_cam_OvRxyzTime > YDWE_cinS_cam_OvRxyzEndtime then + set YDWE_cinS_cam_OvRxyzTime = YDWE_cinS_cam_OvRxyzEndtime + endif + + set ovrFactor = YDWE_cinS_cam_OvRxyzTime/YDWE_cinS_cam_OvRxyzEndtime + if YDWE_cinS_cam_OvRxyzSmooth then + set ovrFactor = (1.0 - Cos(ovrFactor*bj_PI)) / 2 + endif + + call MoveLocation(stupid, GetUnitX(YDWE_cinS_cam_OvRxyzUnitPrim),GetUnitY(YDWE_cinS_cam_OvRxyzUnitPrim)) + set s[19] = GetLocationZ(stupid) + call MoveLocation(stupid, GetUnitX(YDWE_cinS_cam_OvRxyzUnitSec),GetUnitY(YDWE_cinS_cam_OvRxyzUnitSec)) + set s[20] = GetLocationZ(stupid) + + if YDWE_cinS_cam_OvRxyzUnitSec==null then //going from null to unit + set s[1] = s[1]*(1-ovrFactor) + (GetUnitX(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[1])*ovrFactor + set s[2] = s[2]*(1-ovrFactor) + (GetUnitY(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[2])*ovrFactor + set s[3] = s[3]*(1-ovrFactor) + (s[19]+GetUnitFlyHeight(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[3])*ovrFactor + elseif YDWE_cinS_cam_OvRxyzUnitPrim==null then //going from unit to null + set s[1] = s[1]*ovrFactor + (GetUnitX(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[7])*(1.0-ovrFactor) + set s[2] = s[2]*ovrFactor + (GetUnitY(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[8])*(1.0-ovrFactor) + set s[3] = s[3]*ovrFactor + (s[20]+GetUnitFlyHeight(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[9])*(1.0-ovrFactor) + else //going from unit to unit + set s[1] = (GetUnitX(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[7])*(1-ovrFactor) + (GetUnitX(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[1])*ovrFactor + set s[2] = (GetUnitY(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[8])*(1-ovrFactor) + (GetUnitY(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[2])*ovrFactor + set s[3] = (s[20]+GetUnitFlyHeight(YDWE_cinS_cam_OvRxyzUnitSec)+YDWE_cinS_cam_OvRoffset[9])*(1-ovrFactor) + (s[19]+GetUnitFlyHeight(YDWE_cinS_cam_OvRxyzUnitPrim)+YDWE_cinS_cam_OvRoffset[3])*ovrFactor + endif + if YDWE_cinS_cam_OvRxyzTime == YDWE_cinS_cam_OvRxyzEndtime then + if YDWE_cinS_cam_OvRxyzUnitPrim==null then + set YDWE_cinS_cam_OvRxyzUnitSec = null + endif + endif + endif + + // camera face-to-unit override + if YDWE_cinS_cam_OvRangUnitPrim!=null or YDWE_cinS_cam_OvRangUnitSec!=null then + set YDWE_cinS_cam_OvRangTime = YDWE_cinS_cam_OvRangTime + YDWE_cinS_CameraPeriod + if YDWE_cinS_cam_OvRangTime > YDWE_cinS_cam_OvRangEndtime then + set YDWE_cinS_cam_OvRangTime = YDWE_cinS_cam_OvRangEndtime + endif + + set ovrFactor = YDWE_cinS_cam_OvRangTime/YDWE_cinS_cam_OvRangEndtime + if YDWE_cinS_cam_OvRangSmooth then + set ovrFactor = (1.0 - Cos(ovrFactor*bj_PI)) / 2 + endif + + call MoveLocation(stupid, GetUnitX(YDWE_cinS_cam_OvRangUnitPrim),GetUnitY(YDWE_cinS_cam_OvRangUnitPrim)) + set s[19] = GetLocationZ(stupid) + call MoveLocation(stupid, GetUnitX(YDWE_cinS_cam_OvRangUnitSec),GetUnitY(YDWE_cinS_cam_OvRangUnitSec)) + set s[20] = GetLocationZ(stupid) + + if YDWE_cinS_cam_OvRangUnitPrim!=null then + set s[21]=(GetUnitX(YDWE_cinS_cam_OvRangUnitPrim)+YDWE_cinS_cam_OvRoffset[4])-s[1] + set s[22]=(GetUnitY(YDWE_cinS_cam_OvRangUnitPrim)+YDWE_cinS_cam_OvRoffset[5])-s[2] + set s[23]=(s[19]+GetUnitFlyHeight(YDWE_cinS_cam_OvRangUnitPrim)+YDWE_cinS_cam_OvRoffset[6])-s[3] + set s[24]=Atan2(s[22], s[21]) * bj_RADTODEG + set s[25]=Atan2(s[23], SquareRoot(s[21]*s[21]+s[22]*s[22])) * bj_RADTODEG + else + set s[24]=s[4] + set s[25]=s[5] + endif + + if YDWE_cinS_cam_OvRangUnitSec!=null then + set s[21]=(GetUnitX(YDWE_cinS_cam_OvRangUnitSec)+YDWE_cinS_cam_OvRoffset[10])-s[1] + set s[22]=(GetUnitY(YDWE_cinS_cam_OvRangUnitSec)+YDWE_cinS_cam_OvRoffset[11])-s[2] + set s[23]=(s[20]+GetUnitFlyHeight(YDWE_cinS_cam_OvRangUnitSec)+YDWE_cinS_cam_OvRoffset[12])-s[3] + set s[26]=Atan2(s[22], s[21]) * bj_RADTODEG + set s[27]=Atan2(s[23], SquareRoot(s[21]*s[21]+s[22]*s[22])) * bj_RADTODEG + else + set s[26]=s[4] + set s[27]=s[5] + endif + + if (s[26] - s[24]) > 180 then + set s[24] = s[24] + 360 + elseif (s[26] - s[24]) < -180 then + set s[24] = s[24] - 360 + endif + set s[4] = ovrFactor * s[24] + (1-ovrFactor) * s[26] + + if (s[27] - s[25]) > 180 then + set s[25] = s[25] + 360 + elseif (s[27] - s[25]) < -180 then + set s[25] = s[25] - 360 + endif + set s[5] = ovrFactor * s[25] + (1-ovrFactor) * s[27] + + if YDWE_cinS_cam_OvRangTime == YDWE_cinS_cam_OvRangEndtime then + if YDWE_cinS_cam_OvRangUnitPrim==null then + set YDWE_cinS_cam_OvRangUnitSec = null + endif + endif + endif + + if s[9]<100.0 then + set s[9]=100.0 + endif + + // camera fade filter unit + if s[18]>0 then + set s[23]=Sin(s[5]*bj_DEGTORAD) + set s[20]=Cos(s[5]*bj_DEGTORAD) + set s[21]=Cos(s[4]*bj_DEGTORAD)*s[20] + set s[22]=Sin(s[4]*bj_DEGTORAD)*s[20] + + set s[19]=(s[9]-128.0) + set s[20]=Tan(s[7]*bj_DEGTORAD/2) *40 + + set s[21]=s[1]-s[19]*s[21] + set s[22]=s[2]-s[19]*s[22] + set s[23]=s[3]-s[19]*s[23] + + call MoveLocation(stupid, s[21], s[22]) + set s[23]=s[23]-GetLocationZ(stupid) + call SetUnitX(YDWE_cinS_cam_fadeUnit, s[21]) + call SetUnitY(YDWE_cinS_cam_fadeUnit, s[22]) + call SetUnitFlyHeight(YDWE_cinS_cam_fadeUnit, s[23], 0.0) + call SetUnitScale(YDWE_cinS_cam_fadeUnit, s[20],s[20],s[20]) + endif + + call PanCameraToTimed( s[1], s[2], 0.0 ) + call MoveLocation(stupid, s[1], s[2]) + if YDWE_cinS_cam_ignoreTerrain then + call YDWESetCameraZ(s[3]) + else + call SetCameraField( CAMERA_FIELD_ZOFFSET, s[3]-GetLocationZ(stupid), 0.00 ) + endif + call SetCameraField( CAMERA_FIELD_ROTATION, s[4], 0.00 ) + call SetCameraField( CAMERA_FIELD_ANGLE_OF_ATTACK, s[5], 0.00 ) + call SetCameraField( CAMERA_FIELD_ROLL, s[6], 0.00 ) + call SetCameraField( CAMERA_FIELD_FIELD_OF_VIEW, s[7], 0.00 ) + call SetCameraField( CAMERA_FIELD_FARZ, s[8], 0.00 ) + call SetCameraField( CAMERA_FIELD_TARGET_DISTANCE, s[9], 0.00 ) + + call SetUnitVertexColor(YDWE_cinS_cam_fadeUnit, R2I(s[15]*256), R2I(s[16]*256), R2I(s[17]*256), R2I(s[18]*256)) + call SetTerrainFogEx(0, s[10], s[11], 0.0, s[12], s[13], s[14]) + + set stupid = null +endfunction + + +function YDWECameraStatChangeLin takes integer stat, real endvalue, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + + set YDWE_cinS_cam_startval[stat] = startvalue + set YDWE_cinS_cam_startvel[stat] = (endvalue - startvalue)/time + set YDWE_cinS_cam_accprim[stat] = 0.0 + set YDWE_cinS_cam_accsec[stat] = 0.0 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time +endfunction + +function YDWECameraStatChangeLinRad takes integer stat, real endvalue, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + local real distance = endvalue - startvalue + + local real velocity1 = distance/time + local real velocity2 = -( RSignBJ(distance) * (360 - RAbsBJ(distance)) )/time + + set YDWE_cinS_cam_startval[stat] = startvalue + if RAbsBJ(velocity1) < RAbsBJ(velocity2) then + set YDWE_cinS_cam_startvel[stat] = velocity1 + else + set YDWE_cinS_cam_startvel[stat] = velocity2 + endif + set YDWE_cinS_cam_accprim[stat] = 0.0 + set YDWE_cinS_cam_accsec[stat] = 0.0 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time +endfunction + +function YDWECameraStatChange takes integer stat, real endvalue, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + local real startvelocity = YDWE_cinS_cam_startvel[stat] + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] ) + local real distance = endvalue - startvalue + + local real accel = 2 * ( distance - startvelocity * time ) / ( time * time ) + + set YDWE_cinS_cam_startval[stat] = startvalue + set YDWE_cinS_cam_startvel[stat] = startvelocity + set YDWE_cinS_cam_accprim[stat] = accel + set YDWE_cinS_cam_accsec[stat] = 0.0 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time +endfunction + +function YDWECameraStatChangeRad takes integer stat, real endvalue, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + local real startvelocity = YDWE_cinS_cam_startvel[stat] + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] ) + local real distance = endvalue - startvalue + + local real accel1 = 2 * ( distance - startvelocity * time ) / ( time * time ) + local real accel2 = 2 * ( -( RSignBJ(distance) * (360 - RAbsBJ(distance)) ) - startvelocity * time ) / ( time * time ) + + set YDWE_cinS_cam_startval[stat] = startvalue + set YDWE_cinS_cam_startvel[stat] = startvelocity + if RAbsBJ(accel1) < RAbsBJ(accel2) then + set YDWE_cinS_cam_accprim[stat] = accel1 + else + set YDWE_cinS_cam_accprim[stat] = accel2 + endif + set YDWE_cinS_cam_accsec[stat] = 0.0 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time +endfunction + +function YDWECameraStatChangeAdv takes integer stat, real endvalue, real endvelocity, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + local real startvelocity = YDWE_cinS_cam_startvel[stat] + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] ) + local real distance = endvalue - startvalue + + local real accel1 = 4 * ( distance ) / ( time * time ) - ( endvelocity + 3 * startvelocity ) / time + local real accel2 = ( 3 * endvelocity + startvelocity ) / time - 4 * ( distance ) / ( time * time ) + + set YDWE_cinS_cam_startval[stat] = startvalue + set YDWE_cinS_cam_startvel[stat] = startvelocity + set YDWE_cinS_cam_accprim[stat] = accel1 + set YDWE_cinS_cam_accsec[stat] = accel2 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time/2 +endfunction + +function YDWECameraStatChangeAdvRad takes integer stat, real endvalue, real endvelocity, real time returns nothing + local real startvalue = YDWE_cinS_cam_startval[stat] + ( YDWE_cinS_cam_startvel[stat] * YDWE_cinS_cam_time[stat] ) + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] * YDWE_cinS_cam_time[stat] / 2 ) + local real startvelocity = YDWE_cinS_cam_startvel[stat] + ( YDWE_cinS_cam_accprim[stat] * YDWE_cinS_cam_time[stat] ) + local real distance = endvalue - startvalue + + local real accel1 = 4 * ( distance ) / ( time * time ) - ( endvelocity + 3 * startvelocity ) / time + local real accel2 = ( 3 * endvelocity + startvelocity ) / time - 4 * ( distance ) / ( time * time ) + local real accel3 = 4 * ( -( RSignBJ(distance) * (360 - RAbsBJ(distance)) ) ) / ( time * time ) - ( endvelocity + 3 * startvelocity ) / time + local real accel4 = ( 3 * endvelocity + startvelocity ) / time - 4 * ( -( RSignBJ(distance) * (360 - RAbsBJ(distance)) ) ) / ( time * time ) + + set YDWE_cinS_cam_startval[stat] = startvalue + set YDWE_cinS_cam_startvel[stat] = startvelocity + if (RAbsBJ(accel3) + RAbsBJ(accel4)) > (RAbsBJ(accel1) + RAbsBJ(accel2)) then + set YDWE_cinS_cam_accprim[stat] = accel1 + set YDWE_cinS_cam_accsec[stat] = accel2 + else + set YDWE_cinS_cam_accprim[stat] = accel3 + set YDWE_cinS_cam_accsec[stat] = accel4 + endif + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = time/2 + +endfunction + + +function YDWECameraLockToUnitOverride takes unit u, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + + set YDWE_cinS_cam_OvRxyzUnitSec = YDWE_cinS_cam_OvRxyzUnitPrim + set YDWE_cinS_cam_OvRxyzUnitPrim = u + set YDWE_cinS_cam_OvRxyzSmooth = smooth + + set YDWE_cinS_cam_OvRoffset[7]=YDWE_cinS_cam_OvRoffset[1] + set YDWE_cinS_cam_OvRoffset[8]=YDWE_cinS_cam_OvRoffset[2] + set YDWE_cinS_cam_OvRoffset[9]=YDWE_cinS_cam_OvRoffset[3] + + set YDWE_cinS_cam_OvRoffset[1]=xoff + set YDWE_cinS_cam_OvRoffset[2]=yoff + set YDWE_cinS_cam_OvRoffset[3]=zoff + + set YDWE_cinS_cam_OvRxyzTime = 0.0 + set YDWE_cinS_cam_OvRxyzEndtime = duration +endfunction +function YDWECameraLockToUnitReset takes boolean smooth, real duration returns nothing + call YDWECameraLockToUnitOverride(null, 0.0,0.0,0.0, smooth, duration) +endfunction + +function YDWECameraFaceToUnitOverride takes unit u, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + + set YDWE_cinS_cam_OvRangUnitSec = YDWE_cinS_cam_OvRangUnitPrim + set YDWE_cinS_cam_OvRangUnitPrim = u + set YDWE_cinS_cam_OvRangSmooth = smooth + + set YDWE_cinS_cam_OvRoffset[10]=YDWE_cinS_cam_OvRoffset[4] + set YDWE_cinS_cam_OvRoffset[11]=YDWE_cinS_cam_OvRoffset[5] + set YDWE_cinS_cam_OvRoffset[12]=YDWE_cinS_cam_OvRoffset[6] + + set YDWE_cinS_cam_OvRoffset[4]=xoff + set YDWE_cinS_cam_OvRoffset[5]=yoff + set YDWE_cinS_cam_OvRoffset[6]=zoff + + set YDWE_cinS_cam_OvRangTime = 0.0 + set YDWE_cinS_cam_OvRangEndtime = duration +endfunction +function YDWECameraFaceToUnitReset takes boolean smooth, real duration returns nothing + call YDWECameraFaceToUnitOverride(null, 0.0,0.0,0.0, smooth, duration) +endfunction + + +function YDWEApplyCameraInstantly takes camerasetup whichSetup returns nothing + local integer i = 0 + + set YDWE_cinS_cam_startval[1] = CameraSetupGetDestPositionX( whichSetup ) + set YDWE_cinS_cam_startval[2] = CameraSetupGetDestPositionY( whichSetup ) + call MoveLocation(YDWE_cinS_tempPoint, CameraSetupGetDestPositionX( whichSetup ), CameraSetupGetDestPositionY( whichSetup )) + set YDWE_cinS_cam_startval[3] = CameraSetupGetField( whichSetup, CAMERA_FIELD_ZOFFSET) + GetLocationZ(YDWE_cinS_tempPoint) + set YDWE_cinS_cam_startval[4] = CameraSetupGetField( whichSetup, CAMERA_FIELD_ROTATION ) + set YDWE_cinS_cam_startval[5] = CameraSetupGetField( whichSetup, CAMERA_FIELD_ANGLE_OF_ATTACK ) + set YDWE_cinS_cam_startval[6] = CameraSetupGetField( whichSetup, CAMERA_FIELD_ROLL ) + set YDWE_cinS_cam_startval[7] = CameraSetupGetField( whichSetup, CAMERA_FIELD_FIELD_OF_VIEW ) + set YDWE_cinS_cam_startval[8] = CameraSetupGetField( whichSetup, CAMERA_FIELD_FARZ ) + set YDWE_cinS_cam_startval[9] = CameraSetupGetField( whichSetup, CAMERA_FIELD_TARGET_DISTANCE ) + + loop + set i = i + 1 + exitwhen i > 9 + set YDWE_cinS_cam_startvel[i] = 0.0 + set YDWE_cinS_cam_accprim[i] = 0.0 + set YDWE_cinS_cam_accsec[i] = 0.0 + set YDWE_cinS_cam_time[i] = 0.0 + set YDWE_cinS_cam_endtime[i] = 0.0 + endloop +endfunction + +function YDWEApplyCameraLinear takes camerasetup whichSetup, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + call YDWECameraStatChangeLin(1, CameraSetupGetDestPositionX( whichSetup ), duration) + call YDWECameraStatChangeLin(2, CameraSetupGetDestPositionY( whichSetup ), duration) + call MoveLocation(YDWE_cinS_tempPoint, CameraSetupGetDestPositionX( whichSetup ), CameraSetupGetDestPositionY( whichSetup )) + call YDWECameraStatChangeLin(3, CameraSetupGetField( whichSetup, CAMERA_FIELD_ZOFFSET ) + GetLocationZ(YDWE_cinS_tempPoint), duration) + call YDWECameraStatChangeLinRad(4, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROTATION ), duration) + call YDWECameraStatChangeLinRad(5, CameraSetupGetField( whichSetup, CAMERA_FIELD_ANGLE_OF_ATTACK ), duration) + call YDWECameraStatChangeLinRad(6, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROLL ), duration) + call YDWECameraStatChangeLin(7, CameraSetupGetField( whichSetup, CAMERA_FIELD_FIELD_OF_VIEW ), duration) + call YDWECameraStatChangeLin(8, CameraSetupGetField( whichSetup, CAMERA_FIELD_FARZ ), duration) + call YDWECameraStatChangeLin(9, CameraSetupGetField( whichSetup, CAMERA_FIELD_TARGET_DISTANCE ), duration) +endfunction + +function YDWEApplyCameraSmooth takes camerasetup whichSetup, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + call YDWECameraStatChange(1, CameraSetupGetDestPositionX( whichSetup ), duration) + call YDWECameraStatChange(2, CameraSetupGetDestPositionY( whichSetup ), duration) + call MoveLocation(YDWE_cinS_tempPoint, CameraSetupGetDestPositionX( whichSetup ), CameraSetupGetDestPositionY( whichSetup )) + call YDWECameraStatChange(3, CameraSetupGetField( whichSetup, CAMERA_FIELD_ZOFFSET ) + GetLocationZ(YDWE_cinS_tempPoint), duration) + call YDWECameraStatChangeRad(4, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROTATION ), duration) + call YDWECameraStatChangeRad(5, CameraSetupGetField( whichSetup, CAMERA_FIELD_ANGLE_OF_ATTACK ), duration) + call YDWECameraStatChangeRad(6, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROLL ), duration) + call YDWECameraStatChange(7, CameraSetupGetField( whichSetup, CAMERA_FIELD_FIELD_OF_VIEW ), duration) + call YDWECameraStatChange(8, CameraSetupGetField( whichSetup, CAMERA_FIELD_FARZ ), duration) + call YDWECameraStatChange(9, CameraSetupGetField( whichSetup, CAMERA_FIELD_TARGET_DISTANCE ), duration) +endfunction + +function YDWEApplyCameraSmoothStop takes camerasetup whichSetup, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + call YDWECameraStatChangeAdv(1, CameraSetupGetDestPositionX( whichSetup ), 0.00, duration) + call YDWECameraStatChangeAdv(2, CameraSetupGetDestPositionY( whichSetup ), 0.00, duration) + call MoveLocation(YDWE_cinS_tempPoint, CameraSetupGetDestPositionX( whichSetup ), CameraSetupGetDestPositionY( whichSetup )) + call YDWECameraStatChangeAdv(3, CameraSetupGetField( whichSetup, CAMERA_FIELD_ZOFFSET ) + GetLocationZ(YDWE_cinS_tempPoint), 0.00, duration) + call YDWECameraStatChangeAdvRad(4, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROTATION ), 0.00, duration) + call YDWECameraStatChangeAdvRad(5, CameraSetupGetField( whichSetup, CAMERA_FIELD_ANGLE_OF_ATTACK ), 0.00, duration) + call YDWECameraStatChangeAdvRad(6, CameraSetupGetField( whichSetup, CAMERA_FIELD_ROLL ), 0.00, duration) + call YDWECameraStatChangeAdv(7, CameraSetupGetField( whichSetup, CAMERA_FIELD_FIELD_OF_VIEW ), 0.00, duration) + call YDWECameraStatChangeAdv(8, CameraSetupGetField( whichSetup, CAMERA_FIELD_FARZ ), 0.00, duration) + call YDWECameraStatChangeAdv(9, CameraSetupGetField( whichSetup, CAMERA_FIELD_TARGET_DISTANCE ), 0.00, duration) +endfunction + +function YDWEApplyFog takes real startZ, real endZ, real red, real green, real blue, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + call YDWECameraStatChangeLin(10,startZ,duration) + call YDWECameraStatChangeLin(11,endZ, duration) + call YDWECameraStatChangeLin(12,red*0.01, duration) + call YDWECameraStatChangeLin(13,green*0.01, duration) + call YDWECameraStatChangeLin(14,blue*0.01, duration) +endfunction + +function YDWEApplyFade takes real red, real green, real blue, real opacity, real duration returns nothing + if duration < YDWE_cinS_CameraPeriod then + set duration = YDWE_cinS_CameraPeriod + endif + call YDWECameraStatChangeLin(15,red*0.01, duration) + call YDWECameraStatChangeLin(16,green*0.01, duration) + call YDWECameraStatChangeLin(17,blue*0.01, duration) + call YDWECameraStatChangeLin(18,opacity*0.01, duration) +endfunction + + +function YDWECameraSystemInit takes nothing returns nothing + local trigger t = CreateTrigger() + local camerasetup cs = CreateCameraSetup() + call TriggerRegisterTimerEvent(t, YDWE_cinS_CameraPeriod, true) + call TriggerAddAction( t, function YDWECameraMainLoop ) + call YDWESaveTriggerByString( "Globals", "CamTrig", t ) + set t = null + call CameraSetupSetField(cs, CAMERA_FIELD_TARGET_DISTANCE, GetCameraField(CAMERA_FIELD_TARGET_DISTANCE), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_FARZ, GetCameraField(CAMERA_FIELD_FARZ), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_ZOFFSET, GetCameraField(CAMERA_FIELD_ZOFFSET), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_ANGLE_OF_ATTACK, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_FIELD_OF_VIEW, bj_RADTODEG * GetCameraField(CAMERA_FIELD_FIELD_OF_VIEW), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_ROLL, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROLL), 0) + call CameraSetupSetField(cs, CAMERA_FIELD_ROTATION, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROTATION), 0) + call CameraSetupSetDestPosition(cs, GetCameraTargetPositionX(), GetCameraTargetPositionY(), 0) + call YDWEApplyCameraInstantly( cs ) + set cs = null + call YDWEApplyFog( 10000.0, 10000.0, 0.0,0.0,0.0, 0.0 ) + set YDWE_cinS_cam_fadeUnit = CreateUnit(Player(12), YDWE_cinS_FadeFilterUnit, 0,0,0) + call YDWEFlyEnable(YDWE_cinS_cam_fadeUnit) + set YDWE_cinS_cam_ignoreTerrain = false +endfunction + +// **************************************************************************** +// ** +// ** PARTICLE SYSTEM +// ** +// **************************************************************************** + +function YDWEParticleMove takes nothing returns nothing + local unit u = GetEnumUnit() + local integer i = GetUnitUserData(u) + local real h + local location stupid = YDWE_cinS_tempPoint + + set YDWE_cinS_act_moveTime[i] = YDWE_cinS_act_moveTime[i] - YDWE_cinS_ParticlePeriod + + set YDWE_cinS_act_moveX[i]=YDWE_cinS_act_moveX[i]+YDWE_cinS_act_moveVX[i] + set YDWE_cinS_act_moveY[i]=YDWE_cinS_act_moveY[i]+YDWE_cinS_act_moveVY[i] + + if YDWE_cinS_act_moveAZ[i] != 0 then + set YDWE_cinS_act_moveVZ[i] = YDWE_cinS_act_moveVZ[i] + YDWE_cinS_act_moveAZ[i] + set YDWE_cinS_act_moveZ[i] = YDWE_cinS_act_moveZ[i] + YDWE_cinS_act_moveVZ[i] + call MoveLocation(stupid, YDWE_cinS_act_moveX[i],YDWE_cinS_act_moveY[i]) + set h=YDWE_cinS_act_moveZ[i]-GetLocationZ(stupid) + call SetUnitFlyHeight( u, h, 0 ) + if h <= 0.0 then + call GroupRemoveUnit(YDWE_cinS_act_groups[0], u) + set YDWE_cinS_act_moveZ[i] = 0.0 + endif + elseif YDWE_cinS_act_moveTime[i]<=0.0 then + call GroupRemoveUnit(YDWE_cinS_act_groups[0], u) + endif + + call SetUnitX(u,YDWE_cinS_act_moveX[i]) + call SetUnitY(u,YDWE_cinS_act_moveY[i]) + + set stupid=null + set u = null +endfunction + +function YDWEParticleTurn takes nothing returns nothing + local unit u = GetEnumUnit() + local integer i = GetUnitUserData(u) + + set YDWE_cinS_act_turnTime[i] = YDWE_cinS_act_turnTime[i] - YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_turnFi[i] = YDWE_cinS_act_turnFi[i] + YDWE_cinS_act_turnVFi[i] + call SetUnitFacing( u, YDWE_cinS_act_turnFi[i] ) + + if YDWE_cinS_act_turnTime[i]<=0.0 then + call GroupRemoveUnit(YDWE_cinS_act_groups[1], u) + endif + set u = null +endfunction + +function YDWEParticleColour takes nothing returns nothing + local unit u = GetEnumUnit() + local integer i = GetUnitUserData(u) + + set YDWE_cinS_act_colourTime[i] = YDWE_cinS_act_colourTime[i] - YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_colourR[i] = YDWE_cinS_act_colourR[i] + YDWE_cinS_act_colourVR[i] + set YDWE_cinS_act_colourG[i] = YDWE_cinS_act_colourG[i] + YDWE_cinS_act_colourVG[i] + set YDWE_cinS_act_colourB[i] = YDWE_cinS_act_colourB[i] + YDWE_cinS_act_colourVB[i] + set YDWE_cinS_act_colourA[i] = YDWE_cinS_act_colourA[i] + YDWE_cinS_act_colourVA[i] + call SetUnitVertexColor(u, PercentTo255(YDWE_cinS_act_colourR[i]), PercentTo255(YDWE_cinS_act_colourG[i]), PercentTo255(YDWE_cinS_act_colourB[i]), PercentTo255(YDWE_cinS_act_colourA[i])) + + if YDWE_cinS_act_colourTime[i]<=0.0 then + call GroupRemoveUnit(YDWE_cinS_act_groups[2], u) + endif + set u = null +endfunction + +function YDWEParticleSize takes nothing returns nothing + local unit u = GetEnumUnit() + local integer i = GetUnitUserData(u) + + set YDWE_cinS_act_sizeTime[i] = YDWE_cinS_act_sizeTime[i] - YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_sizeS[i] = YDWE_cinS_act_sizeS[i] + YDWE_cinS_act_sizeVS[i] + call SetUnitScale(u,YDWE_cinS_act_sizeS[i],YDWE_cinS_act_sizeS[i],YDWE_cinS_act_sizeS[i]) + + if YDWE_cinS_act_sizeTime[i]<=0.0 then + call GroupRemoveUnit(YDWE_cinS_act_groups[3], u) + endif + set u = null +endfunction + +function YDWEParticleMain takes nothing returns nothing + call GroupAddUnit(YDWE_cinS_act_groups[0], null) + call ForGroup(YDWE_cinS_act_groups[0], function YDWEParticleMove ) + call GroupAddUnit(YDWE_cinS_act_groups[1], null) + call ForGroup(YDWE_cinS_act_groups[1], function YDWEParticleTurn ) + call GroupAddUnit(YDWE_cinS_act_groups[2], null) + call ForGroup(YDWE_cinS_act_groups[2], function YDWEParticleColour ) + call GroupAddUnit(YDWE_cinS_act_groups[3], null) + call ForGroup(YDWE_cinS_act_groups[3], function YDWEParticleSize ) +endfunction + + +function YDWEUnitMove takes unit u, real destX, real destY, real duration, real g returns nothing + local real x = GetUnitX( u ) + local real y = GetUnitY( u ) + local integer i = GetUnitUserData( u ) + local location stupid = YDWE_cinS_tempPoint + local real z + + if duration < YDWE_cinS_ParticlePeriod then + set duration = YDWE_cinS_ParticlePeriod + endif + + if g != 0 then + if YDWE_cinS_act_moveZ[i] == 0.0 then + call MoveLocation(stupid, x,y) + set z = GetLocationZ(stupid) + set YDWE_cinS_act_moveZ[i] = z + else + set z = YDWE_cinS_act_moveZ[i] + endif + + call MoveLocation(stupid, destX, destY) + set z = GetLocationZ(stupid)-z + + set YDWE_cinS_act_moveVZ[i] = ((g*duration/2)+(z/duration))*YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_moveAZ[i] = (-g*YDWE_cinS_ParticlePeriod*YDWE_cinS_ParticlePeriod) + else + set YDWE_cinS_act_moveAZ[i] = 0.0 + endif + + set YDWE_cinS_act_moveX[i] = x + set YDWE_cinS_act_moveY[i] = y + set YDWE_cinS_act_moveVX[i] = (destX - x)/duration*YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_moveVY[i] = (destY - y)/duration*YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_moveTime[i] = duration + + call GroupAddUnit( YDWE_cinS_act_groups[0], u ) + set stupid = null +endfunction + +function YDWEUnitTurn takes unit u, real destAng, real duration, integer clockwise returns nothing + // input angle between 0.00 and 360.00 please + + local real angle = GetUnitFacing(u) + local integer i = GetUnitUserData(u) + local real turnspeed + + if duration < YDWE_cinS_ParticlePeriod then + set duration = YDWE_cinS_ParticlePeriod + endif + + if clockwise > 0 and angle > destAng then + set destAng = destAng + 360.0 + elseif clockwise < 0 and angle < destAng then + set destAng = destAng - 360.0 + elseif clockwise == 0 then + if (angle - destAng) > 180 then + set destAng = destAng + 360 + elseif (angle - destAng) < -180 then + set destAng = destAng - 360 + endif + endif + + set turnspeed = (destAng - angle)/duration*YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_turnFi[i] = angle + set YDWE_cinS_act_turnVFi[i] = turnspeed + set YDWE_cinS_act_turnTime[i] = duration + + call GroupAddUnit( YDWE_cinS_act_groups[1], u ) +endfunction + +function YDWEUnitColour takes unit u, real red, real green, real blue, real opacity, real duration returns nothing + local integer i = GetUnitUserData(u) + + if duration < YDWE_cinS_ParticlePeriod then + set duration = YDWE_cinS_ParticlePeriod + endif + + set red = red - YDWE_cinS_act_colourR[i] + set YDWE_cinS_act_colourVR[i] = red / duration * YDWE_cinS_ParticlePeriod + set green = green - YDWE_cinS_act_colourG[i] + set YDWE_cinS_act_colourVG[i] = green / duration * YDWE_cinS_ParticlePeriod + set blue = blue - YDWE_cinS_act_colourB[i] + set YDWE_cinS_act_colourVB[i] = blue / duration * YDWE_cinS_ParticlePeriod + set opacity = opacity - YDWE_cinS_act_colourA[i] + set YDWE_cinS_act_colourVA[i] = opacity / duration * YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_colourTime[i] = duration + + call GroupAddUnit( YDWE_cinS_act_groups[2], u ) +endfunction + +function YDWEUnitSize takes unit u, real size, real duration returns nothing + local integer i = GetUnitUserData(u) + + if duration < YDWE_cinS_ParticlePeriod then + set duration = YDWE_cinS_ParticlePeriod + endif + + set size = size - YDWE_cinS_act_sizeS[i] + set YDWE_cinS_act_sizeVS[i] = size / duration * YDWE_cinS_ParticlePeriod + set YDWE_cinS_act_sizeTime[i] = duration + + call GroupAddUnit( YDWE_cinS_act_groups[3], u ) +endfunction + + +function YDWEParticleInit takes nothing returns nothing + local trigger t = CreateTrigger() + set YDWE_cinS_act_groups[0]=CreateGroup() + set YDWE_cinS_act_groups[1]=CreateGroup() + set YDWE_cinS_act_groups[2]=CreateGroup() + set YDWE_cinS_act_groups[3]=CreateGroup() + call TriggerRegisterTimerEvent(t, YDWE_cinS_ParticlePeriod, true) + call TriggerAddAction( t, function YDWEParticleMain ) + set t = null +endfunction + + +// **************************************************************************** +// ** +// ** SUBTITLE ENGINE +// ** +// **************************************************************************** + +constant function DefaultCharWidth takes nothing returns real + return 1.56 +endfunction + +function YDWEDisplaySubtitle takes string line1 returns nothing + local string char + local integer i + local real charwidth + local real totalwidth + + set i = 0 + set totalwidth = 0 + + loop + set char = SubString(line1, i, i+1) + exitwhen char == "" + if StringCase(char, false)==char then + set charwidth = YDWEGetRealByString( "subtitles", "low"+char) + else + set charwidth = YDWEGetRealByString( "subtitles", "upp"+char) + endif + if charwidth == 0.0 then + set charwidth = DefaultCharWidth() + endif + set totalwidth=totalwidth+charwidth + set i = i + 1 + endloop + + set i = R2I((50.0-totalwidth/2)/YDWEGetRealByString( "subtitles", "low ")) + set char = "" + loop + exitwhen i <= 3 + set char=char+" " + set i = i-1 + endloop + set line1=char+line1 + +// call DisplayTimedTextToPlayer(GetLocalPlayer(), 0.25,0.0, 1000.0, line1) + call DisplayTimedTextToPlayer( GetLocalPlayer(), 0.25, 0.0, 1000.0, "\n\n\n\n\n\n" + line1 + "\n\n\n\n\n\n\n\n\n\n\n\n") + + //set g=null +endfunction + +function YDWEClearSubtitles takes nothing returns nothing + call ClearTextMessages() +endfunction + + +function YDWESubtitlesInit takes nothing returns nothing + + call YDWESaveRealByString("subtitles", "uppa", 2.06) + call YDWESaveRealByString("subtitles", "uppb", 1.62) + call YDWESaveRealByString("subtitles", "uppc", 1.83) + call YDWESaveRealByString("subtitles", "uppd", 1.93) + call YDWESaveRealByString("subtitles", "uppe", 1.53) + call YDWESaveRealByString("subtitles", "uppf", 1.22) + call YDWESaveRealByString("subtitles", "uppg", 2.04) + call YDWESaveRealByString("subtitles", "upph", 2.00) + call YDWESaveRealByString("subtitles", "uppi", 0.77) + call YDWESaveRealByString("subtitles", "uppj", 0.80) + call YDWESaveRealByString("subtitles", "uppk", 1.83) + call YDWESaveRealByString("subtitles", "uppl", 1.48) + call YDWESaveRealByString("subtitles", "uppm", 2.64) + call YDWESaveRealByString("subtitles", "uppn", 2.00) + call YDWESaveRealByString("subtitles", "uppo", 2.25) + call YDWESaveRealByString("subtitles", "uppp", 1.56) + call YDWESaveRealByString("subtitles", "uppq", 2.37) + call YDWESaveRealByString("subtitles", "uppr", 1.79) + call YDWESaveRealByString("subtitles", "upps", 1.56) + call YDWESaveRealByString("subtitles", "uppt", 1.51) + call YDWESaveRealByString("subtitles", "uppu", 1.87) + call YDWESaveRealByString("subtitles", "uppv", 1.83) + call YDWESaveRealByString("subtitles", "uppw", 2.82) + call YDWESaveRealByString("subtitles", "uppx", 2.04) + call YDWESaveRealByString("subtitles", "uppy", 1.79) + call YDWESaveRealByString("subtitles", "uppz", 1.79) + + call YDWESaveRealByString("subtitles", "lowa", 1.51) + call YDWESaveRealByString("subtitles", "lowb", 1.59) + call YDWESaveRealByString("subtitles", "lowc", 1.47) + call YDWESaveRealByString("subtitles", "lowd", 1.62) + call YDWESaveRealByString("subtitles", "lowe", 1.59) + call YDWESaveRealByString("subtitles", "lowf", 0.98) + call YDWESaveRealByString("subtitles", "lowg", 1.76) + call YDWESaveRealByString("subtitles", "lowh", 1.59) + call YDWESaveRealByString("subtitles", "lowi", 0.65) + call YDWESaveRealByString("subtitles", "lowj", 0.77) + call YDWESaveRealByString("subtitles", "lowk", 1.47) + call YDWESaveRealByString("subtitles", "lowl", 0.68) + call YDWESaveRealByString("subtitles", "lowm", 2.27) + call YDWESaveRealByString("subtitles", "lown", 1.56) + call YDWESaveRealByString("subtitles", "lowo", 1.66) + call YDWESaveRealByString("subtitles", "lowp", 1.62) + call YDWESaveRealByString("subtitles", "lowq", 1.62) + call YDWESaveRealByString("subtitles", "lowr", 0.98) + call YDWESaveRealByString("subtitles", "lows", 1.26) + call YDWESaveRealByString("subtitles", "lowt", 1.00) + call YDWESaveRealByString("subtitles", "lowu", 1.59) + call YDWESaveRealByString("subtitles", "lowv", 1.59) + call YDWESaveRealByString("subtitles", "loww", 2.29) + call YDWESaveRealByString("subtitles", "lowx", 1.59) + call YDWESaveRealByString("subtitles", "lowy", 1.59) + call YDWESaveRealByString("subtitles", "lowz", 1.47) + + call YDWESaveRealByString("subtitles", "low.", 0.51) + call YDWESaveRealByString("subtitles", "low,", 0.55) + call YDWESaveRealByString("subtitles", "low ", 0.80) + call YDWESaveRealByString("subtitles", "low-", 1.04) + + //set g=null +endfunction + + +// **************************************************************************** +// ** +// ** SOUND ENGINE +// ** +// **************************************************************************** + +function YDWEAllocateSound takes string path, integer id, integer volume, real pitch returns nothing + +endfunction + + +// **************************************************************************** +// ** +// ** SCRIPT SYSTEM +// ** +// **************************************************************************** + +function YDWEPlayScene takes integer scene returns nothing + call YDWESaveIntegerByString( "Interpreter", "Scene", scene ) + call YDWESaveRealByString( "Interpreter", "SceneTime", 0.00 ) + call YDWESaveIntegerByString( "Interpreter", "PendingAction", YDWEGetIntegerByString( "Scene"+I2S(scene), "FirstSpot" ) ) +endfunction + +function YDWEPlaySceneFromTime takes integer scene, real time returns nothing + local string s + local integer previous = YDWEGetIntegerByString( "Scene"+I2S(scene), "LastSpot" ) + + if time < 0.00 then + debug call BJDebugMsg( "User error: negative action time" ) + return + endif + + loop + set s = "S"+I2S(scene)+"A"+I2S(previous) + exitwhen time > YDWEGetRealByString( s, "Time" ) + set previous = YDWEGetIntegerByString( s, "PrevAction" ) + endloop + + call YDWESaveIntegerByString( "Interpreter", "Scene", scene ) + call YDWESaveRealByString( "Interpreter", "SceneTime", time ) + call YDWESaveIntegerByString( "Interpreter", "PendingAction", YDWEGetIntegerByString( s, "NextAction" ) ) +endfunction + +function YDWEScriptInterpreter takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local real time = YDWEGetRealByString( "Interpreter", "SceneTime" ) + YDWE_cinS_ScriptSystemPeriod + local string s + + if scene == 0 then + return + endif + + loop + set s = "S"+I2S(scene)+"A"+I2S(action) + exitwhen time < YDWEGetRealByString( s, "Time" ) + + if action == 0 then + return + endif + + call ExecuteFunc( YDWEGetStringByString( s, "YDWEActionType" ) ) + if scene != YDWEGetIntegerByString( "Interpreter", "Scene" ) then + return + endif + + set action = YDWEGetIntegerByString( s, "NextAction" ) + call YDWESaveIntegerByString( "Interpreter", "PendingAction", action ) + endloop + + call YDWESaveRealByString( "Interpreter", "SceneTime", time ) + +endfunction + + +function YDWEWriteToScene takes integer scene returns nothing + call YDWESaveIntegerByString( "Scripter", "Scene", scene ) +endfunction + +function YDWEGetActionSpot takes integer scene, real time returns integer + //local gamecache g = GC() + local string s + local integer previous = YDWEGetIntegerByString( "Scene"+I2S(scene), "LastSpot" ) + local integer length = YDWEGetIntegerByString( "Scene"+I2S(scene), "Length" ) + 1 + local integer next = 0 + + if time < 0.00 then + debug call BJDebugMsg( "User error: negative action time" ) + return -1 + endif + call YDWESaveIntegerByString( "Scene"+I2S(scene), "Length", length ) + + loop + if previous == 0 then + call YDWESaveIntegerByString( "Scene"+I2S(scene), "FirstSpot", length ) + endif + set s = "S"+I2S(scene)+"A"+I2S(previous) + exitwhen time >= YDWEGetRealByString( s, "Time" ) + set previous = YDWEGetIntegerByString( s, "PrevAction" ) + endloop + + if previous == YDWEGetIntegerByString( "Scene"+I2S(scene), "LastSpot" ) then + call YDWESaveIntegerByString( "Scene"+I2S(scene), "LastSpot", length ) + call YDWESaveIntegerByString( s, "NextAction", length ) + else + set next = YDWEGetIntegerByString( s, "NextAction" ) + call YDWESaveIntegerByString( s, "NextAction", length ) + set s = "S"+I2S(scene)+"A"+I2S(next) + call YDWESaveIntegerByString( s, "PrevAction", length ) + endif + + set s = "S"+I2S(scene)+"A"+I2S(length) + call YDWESaveIntegerByString( s, "PrevAction", previous ) + call YDWESaveIntegerByString( s, "NextAction", next ) + + return length +endfunction + + +// next scene +function YDWENextScene takes nothing returns nothing + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + call YDWEPlayScene(scene+1) +endfunction + +function YDWEScriptNextScene takes real time returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWENextScene" ) + call YDWESaveRealByString( s, "Time", time ) + //set g=null +endfunction + +// external function +function YDWEScriptExternalFunc takes real time, string funcName returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", funcName ) + call YDWESaveRealByString( s, "Time", time ) + //set g=null +endfunction + +// special effect +function YDWESpecialEffectDestroy takes nothing returns nothing + local timer t = GetExpiredTimer() + local effect eff = YDWEGetEffectByString( I2S(YDWEH2I(t)), "effect" ) + call DestroyEffect( eff ) + call YDWEFlushMissionByString(I2S(YDWEH2I(t))) + call DestroyTimer( t ) + set t = null + set eff = null +endfunction +function YDWESpecialEffectDestroyOverTime takes effect eff, real duration returns nothing + local timer t = CreateTimer() + call YDWESaveEffectByString( I2S(YDWEH2I(t)), "effect", eff ) + call TimerStart(t, duration, false, function YDWESpecialEffectDestroy) + set t = null +endfunction + +function YDWESpecialEffectPoint takes nothing returns nothing + //local gamecache g = GC() + local effect eff = null + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local real x = YDWEGetRealByString( s, "real1" ) + local real y = YDWEGetRealByString( s, "real2" ) + local real z = YDWEGetRealByString( s, "real3" ) + local real duration = YDWEGetRealByString( s, "real4" ) + local string path = YDWEGetStringByString( s, "str1" ) + + local destructable d = CreateDestructableZ( 'OTip', x, y, z, 0.00, 1, 0 ) + set eff = AddSpecialEffect(path, x, y) + call RemoveDestructable( d ) + + call YDWESpecialEffectDestroyOverTime(eff, duration) + + set d = null + set eff = null + //set g=null +endfunction + +function YDWEScriptPointEffect takes real time, real x, real y, real z, string path, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWESpecialEffectPoint" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", x ) + call YDWESaveRealByString( s, "real2", y ) + call YDWESaveRealByString( s, "real3", z ) + call YDWESaveRealByString( s, "real4", duration ) + call YDWESaveStringByString( s, "str1", path ) + //set g=null +endfunction + +function YDWESpecialEffectActor takes nothing returns nothing + //local gamecache g = GC() + local effect eff = null + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real duration = YDWEGetRealByString( s, "real1" ) + local string path = YDWEGetStringByString( s, "str1" ) + local string attPoint = YDWEGetStringByString( s, "str2" ) + + set eff = AddSpecialEffectTarget(path, YDWE_cinS_actor[actID], attPoint) + + call YDWESpecialEffectDestroyOverTime(eff, duration) + set eff = null + //set g=null +endfunction + +function YDWEScriptActEffect takes real time, integer actor, string path, string attachpoint, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWESpecialEffectActor" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "real1", duration ) + call YDWESaveStringByString( s, "str1", path ) + call YDWESaveStringByString( s, "str2", attachpoint ) + //set g=null +endfunction + +// play sound +function YDWEPlaySoundPath takes nothing returns nothing + //local gamecache g = GC() + local sound snd = null + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer volume = YDWEGetIntegerByString( s, "int1" ) + local real pitch = YDWEGetRealByString( s, "real1" ) + local string path = YDWEGetStringByString( s, "str1" ) + + set snd = CreateSound(path, false, false, false, 10, 10, "") + call SetSoundPitch(snd, pitch) + call SetSoundVolume(snd, volume) + call StartSound(snd) + call KillSoundWhenDone(snd) + set snd = null + //set g=null +endfunction + +function YDWEPreloadSoundPath takes nothing returns nothing + //local gamecache g = GC() + local timer t = GetExpiredTimer() + local string path = YDWEGetStringByString( I2S(YDWEH2I(t)), "path" ) + local sound snd = CreateSound(path, false, false, false, 10, 10, "") + call SetSoundVolume(snd, 0) + call StartSound(snd) + call KillSoundWhenDone(snd) + set snd = null + call YDWEFlushMissionByString( I2S(YDWEH2I(t)) ) + call DestroyTimer(t) + set t = null + //set g=null +endfunction + +function YDWEScriptPlaySound takes real time, string path, real pitch, integer volume returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local timer t + if not(YDWEGetBooleanByString("preloading", path)) then + set t = CreateTimer() + call YDWESaveStringByString( I2S(YDWEH2I(t)), "path", path ) + call TimerStart(t, 1.00, false, function YDWEPreloadSoundPath) + call YDWESaveBooleanByString("preloading", path, true) + set t = null + endif + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEPlaySoundPath" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", pitch ) + call YDWESaveIntegerByString( s, "int1", volume ) + call YDWESaveStringByString( s, "str1", path ) + //set g=null +endfunction + +// ability level +function YDWEActorAbilityLevel takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local integer abilityID = YDWEGetIntegerByString( s, "int1" ) + local integer level = YDWEGetIntegerByString( s, "int2" ) + if level>0 then + call UnitRemoveAbility( YDWE_cinS_actor[actID], abilityID ) + call UnitAddAbility( YDWE_cinS_actor[actID], abilityID ) + call SetUnitAbilityLevel( YDWE_cinS_actor[actID], abilityID, level ) + else + call UnitRemoveAbility( YDWE_cinS_actor[actID], abilityID ) + endif + //set g=null +endfunction + +function YDWEScriptActAbilityLvl takes real time, integer actor, integer abilityID, integer level returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorAbilityLevel" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveIntegerByString( s, "int1", abilityID ) + call YDWESaveIntegerByString( s, "int2", level ) + //set g=null +endfunction + +// play animation +function YDWEActorPlayAnimation takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local integer animationID = YDWEGetIntegerByString( s, "int1" ) + local real animationBlend = YDWEGetRealByString( s, "real1" ) + + call SetUnitBlendTime(YDWE_cinS_actor[actID], animationBlend) + call SetUnitAnimationByIndex( YDWE_cinS_actor[actID], animationID ) + //set g=null +endfunction + +function YDWEScriptActAnimPlay takes real time, integer actor, integer animationID, real animationBlend returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorPlayAnimation" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveIntegerByString( s, "int1", animationID ) + call YDWESaveRealByString( s, "real1", animationBlend ) + //set g=null +endfunction + +function YDWEActorResetAnimation takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + call ResetUnitAnimation( YDWE_cinS_actor[actID] ) + //set g=null +endfunction + +function YDWEScriptActAnimReset takes real time, integer actor returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorResetAnimation" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + //set g=null +endfunction + +// animation speed +function YDWEActorSpeedAnimation takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real animationSpeed = YDWEGetRealByString( s, "real1" ) + + call SetUnitTimeScale( YDWE_cinS_actor[actID], animationSpeed ) + //set g=null +endfunction + +function YDWEScriptActAnimSpeed takes real time, integer actor, real speed returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorSpeedAnimation" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", speed ) + //set g=null +endfunction + +// slide unit +function YDWEActorSlide takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real destX = YDWEGetRealByString( s, "real1" ) + local real destY = YDWEGetRealByString( s, "real2" ) + local real duration = YDWEGetRealByString( s, "real3" ) + local real gr = YDWEGetRealByString( s, "real4" ) + + call YDWEUnitMove( YDWE_cinS_actor[actID], destX, destY, duration, gr ) + //set g=null +endfunction + +function YDWEScriptActSlide takes real time, integer actor, real x, real y, real duration, real gr returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorSlide" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", x ) + call YDWESaveRealByString( s, "real2", y ) + call YDWESaveRealByString( s, "real3", duration ) + call YDWESaveRealByString( s, "real4", gr ) + //set g=null +endfunction + +// walk unit +function YDWEActorWalkProperties takes integer unitID, integer walkAnimID, real walkAnimDuration, real walkSpeed returns nothing + local real speed = walkSpeed / walkAnimDuration + local string s = "ActorStats "+I2S(unitID) + + call YDWESaveRealByString( s, "speed", speed ) + call YDWESaveIntegerByString( s, "animation", walkAnimID ) +endfunction + +function YDWEActorWalk takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real destX = YDWEGetRealByString( s, "real1" ) + local real destY = YDWEGetRealByString( s, "real2" ) + local real duration = YDWEGetRealByString( s, "real3" ) + local real animationBlend = YDWEGetRealByString( s, "real4" ) + + call YDWEUnitMove( YDWE_cinS_actor[actID], destX, destY, duration, 0 ) + + set s = "ActorStats "+I2S(GetUnitTypeId(YDWE_cinS_actor[actID])) + set destX=destX-GetUnitX(YDWE_cinS_actor[actID]) + set destY=destY-GetUnitY(YDWE_cinS_actor[actID]) + + call YDWEUnitTurn( YDWE_cinS_actor[actID], bj_RADTODEG * Atan2(destY , destX), animationBlend, 0 ) + + call SetUnitBlendTime(YDWE_cinS_actor[actID], animationBlend) + call SetUnitTimeScale( YDWE_cinS_actor[actID], (SquareRoot(destX*destX+destY*destY) / (duration+0.01) / (YDWEGetRealByString( s, "speed"))+0.01) ) + call SetUnitAnimationByIndex( YDWE_cinS_actor[actID], YDWEGetIntegerByString( s, "animation") ) + //set g=null +endfunction + +function YDWEScriptActWalk takes real time, integer actor, real x, real y, real duration, real animationBlend returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorWalk" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", x ) + call YDWESaveRealByString( s, "real2", y ) + call YDWESaveRealByString( s, "real3", duration ) + call YDWESaveRealByString( s, "real4", animationBlend ) + //set g=null +endfunction + +// turn unit +function YDWEActorTurn takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real destAng = YDWEGetRealByString( s, "real1" ) + local real duration = YDWEGetRealByString( s, "real2" ) + local integer clockwise = YDWEGetIntegerByString( s, "int1" ) + + call YDWEUnitTurn( YDWE_cinS_actor[actID], destAng, duration, clockwise ) + //set g=null +endfunction + +function YDWEScriptActTurn takes real time, integer actor, real destAng, real duration, integer clockwise returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorTurn" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", destAng ) + call YDWESaveRealByString( s, "real2", duration ) + call YDWESaveIntegerByString( s, "int1", clockwise ) + //set g=null +endfunction + +function YDWEActorFace takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local integer targetID = YDWEGetIntegerByString( s, "int1" ) + local integer headORchest = YDWEGetIntegerByString( s, "int2" ) + local real x = YDWEGetRealByString( s, "real1" ) + local real y = YDWEGetRealByString( s, "real2" ) + local real z = YDWEGetRealByString( s, "real3" ) + local real animationBlend = YDWEGetRealByString( s, "real4" ) + + if headORchest == 0 then + set s = "Bone_Head" + else + set s = "Bone_Chest" + endif + + call SetUnitBlendTime(YDWE_cinS_actor[actID], animationBlend) + call SetUnitLookAt( YDWE_cinS_actor[actID], s, YDWE_cinS_actor[targetID], x,y,z ) + //set g=null +endfunction + +function YDWEScriptActFace takes real time, integer actor, integer destActor, integer headORchest, real xoff, real yoff, real zoff, real animationBlend returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorFace" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveIntegerByString( s, "int1", destActor ) + call YDWESaveIntegerByString( s, "int2", headORchest ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", xoff ) + call YDWESaveRealByString( s, "real2", yoff ) + call YDWESaveRealByString( s, "real3", zoff ) + call YDWESaveRealByString( s, "real4", animationBlend ) + //set g=null +endfunction + +function YDWEActorFaceReset takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real animationBlend = YDWEGetRealByString( s, "real1" ) + + call SetUnitBlendTime(YDWE_cinS_actor[actID], animationBlend) + call ResetUnitLookAt( YDWE_cinS_actor[actID] ) + //set g=null +endfunction + +function YDWEScriptActFaceReset takes real time, integer actor, real animationBlend returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorFaceReset" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", animationBlend ) + //set g=null +endfunction + +// vertex colouring +function YDWEActorColour takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real red = YDWEGetRealByString( s, "real1" ) + local real green = YDWEGetRealByString( s, "real2" ) + local real blue = YDWEGetRealByString( s, "real3" ) + local real opacity = YDWEGetRealByString( s, "real4" ) + local real duration = YDWEGetRealByString( s, "real5" ) + + call YDWEUnitColour( YDWE_cinS_actor[actID], red, green, blue, opacity, duration ) + //set g=null +endfunction + +function YDWEScriptActColour takes real time, integer actor, real red, real green, real blue, real opacity, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorColour" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + + call YDWESaveRealByString( s, "real1", red ) + call YDWESaveRealByString( s, "real2", green ) + call YDWESaveRealByString( s, "real3", blue ) + call YDWESaveRealByString( s, "real4", opacity ) + call YDWESaveRealByString( s, "real5", duration ) + //set g=null +endfunction + +// size unit +function YDWEActorSize takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real size = YDWEGetRealByString( s, "real1" ) + local real duration = YDWEGetRealByString( s, "real2" ) + + call YDWEUnitSize( YDWE_cinS_actor[actID], size, duration ) + //set g=null +endfunction + +function YDWEScriptActSize takes real time, integer actor, real size, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorSize" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", size ) + call YDWESaveRealByString( s, "real2", duration ) + //set g=null +endfunction + +// camera scripting +function YDWECameraAction takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer camID = YDWEGetIntegerByString( s, "actor" ) + local integer changeType = YDWEGetIntegerByString( s, "int1" ) + local real duration = YDWEGetRealByString( s, "real1" ) + + if changeType == 1 then + call YDWEApplyCameraInstantly( YDWE_cinS_camera[camID] ) + elseif changeType == 2 then + call YDWEApplyCameraLinear( YDWE_cinS_camera[camID], duration ) + elseif changeType == 3 then + call YDWEApplyCameraSmooth( YDWE_cinS_camera[camID], duration ) + elseif changeType == 4 then + call YDWEApplyCameraSmoothStop( YDWE_cinS_camera[camID], duration ) + endif + //set g=null +endfunction + +function YDWEScriptCamera takes real time, integer camera, real duration, integer changeType returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWECameraAction" ) + + call YDWESaveIntegerByString( s, "actor", camera ) + call YDWESaveIntegerByString( s, "int1", changeType ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + //set g=null +endfunction + + +function YDWECameraStatChangeInst takes integer stat, real endvalue returns nothing + set YDWE_cinS_cam_startval[stat] = endvalue + set YDWE_cinS_cam_startvel[stat] = 0.0 + set YDWE_cinS_cam_accprim[stat] = 0.0 + set YDWE_cinS_cam_accsec[stat] = 0.0 + set YDWE_cinS_cam_time[stat] = 0.0 + set YDWE_cinS_cam_endtime[stat] = 0.0 +endfunction + +function YDWECameraStatAction takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer statID = YDWEGetIntegerByString( s, "actor" ) + local integer changeType = YDWEGetIntegerByString( s, "int1" ) + local real duration = YDWEGetRealByString( s, "real1" ) + local real endValue = YDWEGetRealByString( s, "real2" ) + local real endSpeed = YDWEGetRealByString( s, "real3" ) + + if statID==4 or statID==5 or statID==6 then + if changeType == 1 then + call YDWECameraStatChangeInst( statID, endValue ) + elseif changeType == 2 then + call YDWECameraStatChangeLinRad( statID, endValue, duration ) + elseif changeType == 3 then + call YDWECameraStatChangeRad( statID, endValue, duration ) + elseif changeType == 4 then + call YDWECameraStatChangeAdvRad( statID, endValue, endSpeed, duration ) + endif + else + if changeType == 1 then + call YDWECameraStatChangeInst( statID, endValue ) + elseif changeType == 2 then + call YDWECameraStatChangeLin( statID, endValue, duration ) + elseif changeType == 3 then + call YDWECameraStatChange( statID, endValue, duration ) + elseif changeType == 4 then + call YDWECameraStatChangeAdv( statID, endValue, endSpeed, duration ) + endif + endif + //set g=null +endfunction + +function YDWEScriptCameraStat takes real time, integer statID, real duration, real endValue, real endSpeed, integer changeType returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWECameraStatAction" ) + + call YDWESaveIntegerByString( s, "actor", statID ) + call YDWESaveIntegerByString( s, "int1", changeType ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + call YDWESaveRealByString( s, "real2", endValue ) + call YDWESaveRealByString( s, "real3", endSpeed ) + //set g=null +endfunction + +// camera statID list +// 1 - x coordinate; 2 - y coordinate; 3 - z coordinate; +// 4 - facing angle; 5 - angle of attack; 6 - roll angle; +// 7 - field ov view; 8 - far z; 9 - distance to target + +function YDWECameraIgnoreTerrain takes nothing returns nothing + set YDWE_cinS_cam_ignoreTerrain = true +endfunction +function YDWECameraUnignoreTerrain takes nothing returns nothing + set YDWE_cinS_cam_ignoreTerrain = false +endfunction + +function YDWEScriptCameraIgnoreTerrain takes real time, boolean ignore returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + if ignore then + call YDWESaveStringByString( s, "YDWEActionType", "YDWECameraIgnoreTerrain" ) + else + call YDWESaveStringByString( s, "YDWEActionType", "YDWECameraUnignoreTerrain" ) + endif + + //set g=null +endfunction + +function YDWEActorCameraLock takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real duration = YDWEGetRealByString( s, "real1" ) + local real xoff = YDWEGetRealByString( s, "real2" ) + local real yoff = YDWEGetRealByString( s, "real3" ) + local real zoff = YDWEGetRealByString( s, "real4" ) + local boolean smooth = YDWEGetIntegerByString( s, "int1" )==1 + + call YDWECameraLockToUnitOverride(YDWE_cinS_actor[actID], xoff, yoff, zoff, smooth, duration ) + //set g=null +endfunction + +function YDWEScriptActCameraLock takes real time, integer actor, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorCameraLock" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "real2", xoff ) + call YDWESaveRealByString( s, "real3", yoff ) + call YDWESaveRealByString( s, "real4", zoff ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + if smooth then + call YDWESaveIntegerByString( s, "int1", 1 ) + else + call YDWESaveIntegerByString( s, "int1", 0 ) + endif + //set g=null +endfunction + +function YDWEActorCameraLockReset takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local real duration = YDWEGetRealByString( s, "real1" ) + local boolean smooth = YDWEGetIntegerByString( s, "int1" )==1 + + call YDWECameraLockToUnitReset( smooth, duration ) + //set g=null +endfunction + +function YDWEScriptActCameraLockReset takes real time, boolean smooth, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorCameraLockReset" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + if smooth then + call YDWESaveIntegerByString( s, "int1", 1 ) + else + call YDWESaveIntegerByString( s, "int1", 0 ) + endif + //set g=null +endfunction + +function YDWEActorCameraFace takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local integer actID = YDWEGetIntegerByString( s, "actor" ) + local real duration = YDWEGetRealByString( s, "real1" ) + local real xoff = YDWEGetRealByString( s, "real2" ) + local real yoff = YDWEGetRealByString( s, "real3" ) + local real zoff = YDWEGetRealByString( s, "real4" ) + local boolean smooth = YDWEGetIntegerByString( s, "int1" )==1 + + call YDWECameraFaceToUnitOverride(YDWE_cinS_actor[actID], xoff, yoff, zoff, smooth, duration ) + //set g=null +endfunction + +function YDWEScriptActCameraFace takes real time, integer actor, real xoff, real yoff, real zoff, boolean smooth, real duration returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorCameraFace" ) + + call YDWESaveIntegerByString( s, "actor", actor ) + call YDWESaveRealByString( s, "real2", xoff ) + call YDWESaveRealByString( s, "real3", yoff ) + call YDWESaveRealByString( s, "real4", zoff ) + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + if smooth then + call YDWESaveIntegerByString( s, "int1", 1 ) + else + call YDWESaveIntegerByString( s, "int1", 0 ) + endif + //set g=null +endfunction + +function YDWEActorCameraFaceReset takes nothing returns nothing + //local gamecache g = GC() + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local real duration = YDWEGetRealByString( s, "real1" ) + local boolean smooth = YDWEGetIntegerByString( s, "int1" )==1 + + call YDWECameraFaceToUnitReset( smooth, duration ) + //set g=null +endfunction + +function YDWEScriptActCameraFaceReset takes real time, boolean smooth, real duration returns nothing + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEActorCameraFaceReset" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + if smooth then + call YDWESaveIntegerByString( s, "int1", 1 ) + else + call YDWESaveIntegerByString( s, "int1", 0 ) + endif + //set g=null +endfunction + + +function YDWEFogChange takes nothing returns nothing + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local real duration = YDWEGetRealByString( s, "real1" ) + local real startZ = YDWEGetRealByString( s, "real2" ) + local real endZ = YDWEGetRealByString( s, "real3" ) + local real red = YDWEGetRealByString( s, "real4" ) + local real green = YDWEGetRealByString( s, "real5" ) + local real blue = YDWEGetRealByString( s, "real6" ) + + call YDWEApplyFog(startZ, endZ, red, green, blue, duration) +endfunction + +function YDWEScriptFog takes real time, real startZ, real endZ, real red, real green, real blue, real duration returns nothing + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEFogChange" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + call YDWESaveRealByString( s, "real2", startZ ) + call YDWESaveRealByString( s, "real3", endZ ) + call YDWESaveRealByString( s, "real4", red ) + call YDWESaveRealByString( s, "real5", green ) + call YDWESaveRealByString( s, "real6", blue ) + //set g=null +endfunction + +function YDWEFadeChange takes nothing returns nothing + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local real duration = YDWEGetRealByString( s, "real1" ) + local real red = YDWEGetRealByString( s, "real2" ) + local real green = YDWEGetRealByString( s, "real3" ) + local real blue = YDWEGetRealByString( s, "real4" ) + local real opacity = YDWEGetRealByString( s, "real5" ) + + call YDWEApplyFade(red, green, blue, opacity, duration) +endfunction + +function YDWEScriptFade takes real time, real red, real green, real blue, real opacity, real duration returns nothing + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWEFadeChange" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveRealByString( s, "real1", duration ) + call YDWESaveRealByString( s, "real2", red ) + call YDWESaveRealByString( s, "real3", green ) + call YDWESaveRealByString( s, "real4", blue ) + call YDWESaveRealByString( s, "real5", opacity ) + //set g=null +endfunction + + + +function YDWESubtitleDisplay takes nothing returns nothing + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + local string line = YDWEGetStringByString( s, "string1" ) + if YDWE_cinS_displaySubtitles then + call YDWEDisplaySubtitle(line) + endif + //set g=null +endfunction + +function YDWEScriptSubtitleLine takes real time, string line returns nothing + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWESubtitleDisplay" ) + + call YDWESaveRealByString( s, "Time", time ) + call YDWESaveStringByString( s, "string1", line ) + //set g=null +endfunction + +function YDWESubtitleClear takes nothing returns nothing + local integer scene = YDWEGetIntegerByString( "Interpreter", "Scene" ) + local integer action = YDWEGetIntegerByString( "Interpreter", "PendingAction" ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWEClearSubtitles() + //set g=null +endfunction + +function YDWEScriptSubtitleClear takes real time returns nothing + local integer scene = YDWEGetIntegerByString( "Scripter", "Scene" ) + local integer action = YDWEGetActionSpot( scene, time ) + local string s = "S"+I2S(scene)+"A"+I2S(action) + + call YDWESaveStringByString( s, "YDWEActionType", "YDWESubtitleClear" ) + + call YDWESaveRealByString( s, "Time", time ) + //set g=null +endfunction + + +function YDWEScriptSystemInit takes nothing returns nothing + local trigger t = CreateTrigger() + call TriggerRegisterTimerEvent(t, YDWE_cinS_ScriptSystemPeriod, true) + call TriggerAddAction( t, function YDWEScriptInterpreter ) + set t = null +endfunction + +function YDWEInitCinematicSystem takes nothing returns nothing + set YDWE_cinS_tempPoint=Location(0.0,0.0) + call YDWEScriptSystemInit() + call YDWECameraSystemInit() + call YDWEParticleInit() + call YDWESubtitlesInit() +endfunction + +endlibrary + +#endif /// YDWECinematicSystemIncluded diff --git a/jass/YDWECreateEwsp.cfg b/jass/YDWECreateEwsp.cfg new file mode 100644 index 0000000..f40ac64 --- /dev/null +++ b/jass/YDWECreateEwsp.cfg @@ -0,0 +1 @@ +YDWECreateEwsp \ No newline at end of file diff --git a/jass/YDWECreateEwsp.j b/jass/YDWECreateEwsp.j new file mode 100644 index 0000000..74f7290 --- /dev/null +++ b/jass/YDWECreateEwsp.j @@ -0,0 +1,87 @@ +#ifndef YDWECreateEwspIncluded +#define YDWECreateEwspIncluded + +#include "YDWEBase.j" + +library YDWECreateEwsp requires YDWEBase +//=========================================================================== +//Ƽģ +//=========================================================================== +private function Loop takes nothing returns nothing + local timer t = GetExpiredTimer() + local string h = I2S(YDWEH2I(t)) + local unit tempUnit + local real angle + local integer i + local unit orderUnit=YDWEGetUnitByString(h,"orderUnit") + local real UnitLocX = GetUnitX(orderUnit) + local real UnitLocY = GetUnitY(orderUnit) + local real radius = YDWEGetRealByString(h,"radius") + local real speed = YDWEGetRealByString(h,"speed") + local integer number = YDWEGetIntegerByString(h,"number") + local integer steps = YDWEGetIntegerByString(h,"steps") + if steps>0 and GetUnitState(orderUnit, UNIT_STATE_LIFE)>0 then + set steps=steps-1 + call YDWESaveIntegerByString(h,"steps",steps) + set i = 0 + loop + set i = i + 1 + exitwhen i > number + set tempUnit=YDWEGetUnitByString(h,"units"+I2S(i)) + set angle=YDWEGetRealByString(h,"angles"+I2S(i)) + set angle=angle+speed + call YDWESaveRealByString(h,"angles"+I2S(i),angle) + call SetUnitX(tempUnit, YDWECoordinateX(UnitLocX + radius*Cos(angle))) + call SetUnitY(tempUnit, YDWECoordinateY(UnitLocY + radius*Sin(angle))) + endloop + else + set i = 0 + loop + set i = i + 1 + exitwhen i > number + call RemoveUnit(YDWEGetUnitByString(h,"units"+I2S(i))) + endloop + call YDWEFlushMissionByString(h) + call DestroyTimer(t) + call YDWESyStemAbilityCastingOverTriggerAction(orderUnit,1) + endif + set tempUnit=null + set orderUnit=null + set t=null +endfunction + +function YDWECreateEwsp takes unit Hero,integer ewsp,integer number,real radius,real lasttime,real interval,real speed returns nothing + local timer t = CreateTimer() + local string h = I2S(YDWEH2I(t)) + local real UnitLocX = GetUnitX(Hero) + local real UnitLocY = GetUnitY(Hero) + local unit tempUnit + local player Masterplayer = GetOwningPlayer(Hero) + local real angle + local integer i = 0 + local integer steps = R2I(lasttime/interval) + call YDWESaveUnitByString(h,"orderUnit",Hero) + call YDWESaveIntegerByString(h,"steps",steps) + call YDWESaveIntegerByString(h,"number",number) + call YDWESaveRealByString(h,"radius",radius) + call YDWESaveRealByString(h,"speed", speed*bj_DEGTORAD) + call GroupClear(bj_lastCreatedGroup) + loop + set i = i + 1 + exitwhen i > number + set angle = 2*i*bj_PI/number + call YDWESaveRealByString(h,"angles"+I2S(i),angle) + set tempUnit = CreateUnit(Masterplayer, ewsp, YDWECoordinateX(UnitLocX + radius*Cos(angle)), YDWECoordinateY(UnitLocY + radius*Sin(angle)), angle*bj_RADTODEG) + call YDWESaveUnitByString(h,"units"+I2S(i),tempUnit) + call UnitIgnoreAlarm(tempUnit, true) + call GroupAddUnit(bj_lastCreatedGroup, tempUnit) + set bj_lastCreatedUnit = tempUnit + endloop + call TimerStart(t,interval,true,function Loop) + set t=null + set tempUnit=null +endfunction + +endlibrary + +#endif /// YDWECreateEwspIncluded diff --git a/jass/YDWECreateLine.cfg b/jass/YDWECreateLine.cfg new file mode 100644 index 0000000..95ecaf3 --- /dev/null +++ b/jass/YDWECreateLine.cfg @@ -0,0 +1 @@ +YDWECreateLine \ No newline at end of file diff --git a/jass/YDWECreateLine.j b/jass/YDWECreateLine.j new file mode 100644 index 0000000..91dfcac --- /dev/null +++ b/jass/YDWECreateLine.j @@ -0,0 +1,115 @@ +#ifndef YDWECreateLineIncluded +#define YDWECreateLineIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//Ʈĺ˿ +//=========================================================================== +library YDWECreateLine requires YDWEBase +private function Setline takes nothing returns nothing + local timer t = GetExpiredTimer() + local unit tru = YDWEGetUnitByString(I2S(YDWEH2I(t)),"tru") + local integer count = YDWEGetIntegerByString(I2S(YDWEH2I(t)),"count") + local integer steps = YDWEGetIntegerByString(I2S(YDWEH2I(t)),"steps") + local integer stepscount = YDWEGetIntegerByString(I2S(YDWEH2I(t)),"stepscount") + local integer position = YDWEGetIntegerByString(I2S(YDWEH2I(t)),"position") + local real ux = GetUnitX(tru) + local real uy = GetUnitY(tru) + local real mjx + local real mjy + local real distance = YDWEGetRealByString(I2S(YDWEH2I(t)),"distance") + local real angleadd = YDWEGetRealByString(I2S(YDWEH2I(t)),"angleadd") + local unit array tempu + local real array tempx + local real array tempy + local real array angle + local integer i = 0 + local integer n = 0 + loop + exitwhen i>count + set tempu[i] = YDWEGetUnitByString(I2S(YDWEH2I(t)),"unit"+I2S(i)) + set angle[i] = YDWEGetRealByString(I2S(YDWEH2I(t)),"angle"+I2S(i)) + set tempx[i] = YDWEGetRealByString(I2S(YDWEH2I(t)),"unitx"+I2S(i)) + set tempy[i] = YDWEGetRealByString(I2S(YDWEH2I(t)),"unity"+I2S(i)) + set i = i + 1 + endloop + set i = 0 + if (steps > stepscount) or GetUnitState(tru,UNIT_STATE_LIFE)<=0 then + loop + exitwhen i == count + call RemoveUnit(YDWEGetUnitByString(I2S(YDWEH2I(t)),"unit"+I2S(i))) + set i = i + 1 + endloop + call YDWEFlushMissionByString(I2S(YDWEH2I(t))) + call PauseTimer(t) + call DestroyTimer(t) + call YDWESyStemAbilityCastingOverTriggerAction(tru,3) + //call SetUnitScalePercent( tru, 100, 100, 100 ) + return + endif + set i = 0 + loop + exitwhen i == count + set n = ModuloInteger(position + i,count) + set mjx = GetUnitX(tempu[i]) + set mjy = GetUnitY(tempu[i]) + set mjx = mjx + (tempx[n] + i*distance*CosBJ(angle[n]) - mjx) * 0.2 + set mjy = mjy + (tempy[n] + i*distance*SinBJ(angle[n]) - mjy) * 0.2 + call SetUnitX(tempu[i],YDWECoordinateX(mjx)) + call SetUnitY(tempu[i],YDWECoordinateY(mjy)) + set tempu[i]=null + set i = i + 1 + endloop + set steps = steps + 1 + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"steps",steps) + set position = ModuloInteger(position - 1 , count) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"angle"+I2S(position),GetUnitFacing(tru) + 180 + angleadd) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"unitx"+I2S(position),ux) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"unity"+I2S(position),uy) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"position",position) + set t=null + set tru=null +endfunction + + +//˿Ⱦ (udg_cinS_actor[11],'h01J',12,50,60,30,0.03,120,10,100,30) +function YDWECreateLine takes unit tru,integer ut,integer count,real angleadd,real distance,real lasttime,real eachtime,real heightstart,real heightadd,real sizestart,real sizeadd returns nothing + local timer t = CreateTimer() + local real ux = GetUnitX(tru) + local real uy = GetUnitY(tru) + local real angle = GetUnitFacing(tru) + 180 + angleadd + local player p = GetOwningPlayer(tru) + local real percentScale + local integer i = 0 + local unit tempu + call YDWESaveUnitByString(I2S(YDWEH2I(t)),"tru",tru) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"count",count) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"steps",0) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"stepscount",R2I(lasttime/eachtime)) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"distance",distance) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"angleadd",angleadd) + call GroupClear(bj_lastCreatedGroup) + loop + exitwhen i==count + set tempu = CreateUnit(p,ut,ux,uy,0) + call GroupAddUnit(bj_lastCreatedGroup, tempu) + set bj_lastCreatedUnit=tempu + call SetUnitFlyHeight(tempu,i*heightadd+heightstart+150, 75 ) + set percentScale = RMaxBJ(i*sizeadd+sizestart,1) * 0.01 + call SetUnitScale(tempu, percentScale, percentScale, percentScale) + call YDWESaveUnitByString(I2S(YDWEH2I(t)),"unit"+I2S(i),tempu) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"angle"+I2S(i),angle) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"unitx"+I2S(i),ux) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"unity"+I2S(i),uy) + set tempu=null + set i = i + 1 + endloop + call YDWESaveRealByString(I2S(YDWEH2I(t)),"position",0) + call TimerStart(t,eachtime,true,function Setline) + set t = null + set p = null +endfunction +endlibrary + +#endif /// YDWECreateLineIncluded diff --git a/jass/YDWEDoubleItemSlotByItem.cfg b/jass/YDWEDoubleItemSlotByItem.cfg new file mode 100644 index 0000000..9841260 --- /dev/null +++ b/jass/YDWEDoubleItemSlotByItem.cfg @@ -0,0 +1,3 @@ +YDWEIsItemSwitch +YDWEDoubleItemSlotByAbility +YDWEDoubleItemSlotByItem \ No newline at end of file diff --git a/jass/YDWEDoubleItemSlotByItem.j b/jass/YDWEDoubleItemSlotByItem.j new file mode 100644 index 0000000..d207aa8 --- /dev/null +++ b/jass/YDWEDoubleItemSlotByItem.j @@ -0,0 +1,211 @@ +#ifndef YDWEDoubleItemSlotByItemIncluded +#define YDWEDoubleItemSlotByItemIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//Ʒ +//=========================================================================== +library YDWEDoubleItemSlotByItem requires YDWEBase +function YDWEIsItemSwitch takes unit u returns boolean + return YDWEGetBooleanByString(I2S(YDWEH2I(u)), "YDWEItemAbilitySystemTriggerClose") +endfunction + +function YDWEItemSwitch takes unit Ua,unit Ub returns nothing + local item array Ia + local item array Ib + local integer i = 0 + call YDWESaveBooleanByString(I2S(YDWEH2I(Ua)), "YDWEItemAbilitySystemTriggerClose",true) + call SetUnitOwner(Ub,GetOwningPlayer(Ua),false) + loop + exitwhen i >5 + if UnitItemInSlot(Ua, i) != null then + set Ia[i]= UnitItemInSlot(Ua, i) + call UnitRemoveItemFromSlot(Ua,i) + endif + if UnitItemInSlot(Ub, i) != null then + set Ib[i]= UnitItemInSlot(Ub, i) + call UnitRemoveItemFromSlot(Ub,i) + endif + set i = i+1 + endloop + set i = 0 + loop + exitwhen i >5 + if Ia[i] == null then + call UnitAddItem(Ub,CreateItem('stpg',GetUnitX(Ub),GetUnitY(Ub))) + else + call UnitAddItem(Ub,Ia[i]) + endif + set i = i+1 + endloop + //AƷ + set i = 0 + loop + exitwhen i >5 + if Ib[i] == null then + call UnitAddItem(Ua,CreateItem('stpg',GetUnitX(Ua),GetUnitY(Ua))) + else + call UnitAddItem(Ua,Ib[i]) + endif + set i = i+1 + endloop + set i = 0 + loop + exitwhen i >5 + if GetItemTypeId(UnitItemInSlot(Ua,i))=='stpg' then + call RemoveItem(UnitItemInSlot(Ua,i)) + endif + if GetItemTypeId(UnitItemInSlot(Ub,i))=='stpg' then + call RemoveItem(UnitItemInSlot(Ub,i)) + endif + set i = i+1 + endloop + set i = 0 + loop + exitwhen i >5 + set Ia[i]=null + set Ib[i]=null + set i = i+1 + endloop + call SetUnitOwner(Ub,Player(PLAYER_NEUTRAL_PASSIVE),false) + call YDWESaveBooleanByString(I2S(YDWEH2I(Ua)), "YDWEItemAbilitySystemTriggerClose",false) +endfunction + +function YDWEDoubleItemSlotByAbility_CON takes nothing returns boolean + local unit u = null + local trigger trg = GetTriggeringTrigger() + local unit hero = GetTriggerUnit() + local integer ab = YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"Ability") + local integer ItemSlotMax=YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotMax") + local integer i=0 + if GetSpellAbilityId() !=ab then + set u=null + set trg=null + set hero=null + return false + endif + if ItemSlotMax == 1 then + set u=null + set trg=null + set hero=null + return false + endif + set i=YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum") + set i=i+1 + if i>ItemSlotMax then + set i=1 + endif + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum",i) + set u=YDWEGetUnitByString(I2S(YDWEH2I(trg)),I2S(i)) + call YDWEItemSwitch(hero,u) + call SetUnitAbilityLevel(hero,ab,i) + if i==1 then + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(ItemSlotMax),u) + else + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(i-1),u) + endif + set u=null + set trg=null + set hero=null + return false +endfunction + +function YDWEDoubleItemSlotByAbility takes unit hero,integer ab,integer uid,integer MaxItemSlot returns nothing + local integer i = YDWEGetIntegerByString(I2S(YDWEH2I(hero)),"MulItemSlotByAbility") + local trigger trg = null + local unit u=null + if i==0 then + set trg = CreateTrigger() + call TriggerRegisterUnitEvent(trg, hero, EVENT_UNIT_SPELL_EFFECT) + call TriggerAddCondition(trg, Condition(function YDWEDoubleItemSlotByAbility_CON)) + call YDWESaveTriggerByString(I2S(YDWEH2I(hero)),"MulItemSlotByAbility",trg) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"Ability",ab) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotMax",MaxItemSlot) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum",1) + if MaxItemSlot>1 then + loop + exitwhen MaxItemSlot==1 + set u=CreateUnit(Player(PLAYER_NEUTRAL_PASSIVE),uid,0,0,0) + call YDWESaveBooleanByString(I2S(YDWEH2I(u)), "YDWEItemAbilitySystemTriggerClose",true) + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(MaxItemSlot),u) + set MaxItemSlot=MaxItemSlot-1 + set u=null + endloop + endif + endif + set trg=null +endfunction + +function YDWEDoubleItemSlotByItem_CON takes nothing returns boolean + local unit u = null + local trigger trg = GetTriggeringTrigger() + local unit hero = GetTriggerUnit() + local integer itid = YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"ItemTypeId") + local integer ItemSlotMax=YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotMax") + local integer i=0 + if GetItemTypeId(GetManipulatedItem()) !=itid then + set u=null + set trg=null + set hero=null + return false + endif + if ItemSlotMax == 1 then + set u=null + set trg=null + set hero=null + return false + endif + set i=YDWEGetIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum") + set i=i+1 + if i>ItemSlotMax then + set i=1 + endif + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum",i) + set u=YDWEGetUnitByString(I2S(YDWEH2I(trg)),I2S(i)) + call YDWEItemSwitch(hero,u) + call SetItemCharges(UnitItemInSlot(hero,5),i) + if i==1 then + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(ItemSlotMax),u) + else + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(i-1),u) + endif + set u=null + set trg=null + set hero=null + return false +endfunction + +function YDWEDoubleItemSlotByItem takes unit hero,integer ItemTypeId,integer uid,integer MaxItemSlot returns nothing + local integer i = YDWEGetIntegerByString(I2S(YDWEH2I(hero)),"MulItemSlotByItem") + local trigger trg = null + local unit u=null + local item it=null + if i==0 then + set trg = CreateTrigger() + call TriggerRegisterUnitEvent(trg, hero, EVENT_UNIT_USE_ITEM) + call TriggerAddCondition(trg, Condition(function YDWEDoubleItemSlotByItem_CON)) + call YDWESaveTriggerByString(I2S(YDWEH2I(hero)),"MulItemSlotByItem",trg) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemTypeId",ItemTypeId) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotMax",MaxItemSlot) + call YDWESaveIntegerByString(I2S(YDWEH2I(trg)),"ItemSlotNum",1) + if MaxItemSlot>1 then + loop + exitwhen MaxItemSlot==1 + set u=CreateUnit(Player(PLAYER_NEUTRAL_PASSIVE),uid,0,0,0) + call YDWESaveBooleanByString(I2S(YDWEH2I(u)), "YDWEItemAbilitySystemTriggerClose",true) + call YDWESaveUnitByString(I2S(YDWEH2I(trg)),I2S(MaxItemSlot),u) + set it=CreateItem(ItemTypeId, 0, 0) + call UnitAddItem(u,it) + call UnitDropItemSlot(u,it,5) + set MaxItemSlot=MaxItemSlot-1 + set u=null + set it=null + endloop + endif + endif + set trg=null +endfunction +endlibrary + +#endif /// YDWEDoubleItemSlotByItemIncluded diff --git a/jass/YDWEEventDamageData.cfg b/jass/YDWEEventDamageData.cfg new file mode 100644 index 0000000..e69de29 diff --git a/jass/YDWEEventDamageData.j b/jass/YDWEEventDamageData.j new file mode 100644 index 0000000..e69de29 diff --git a/jass/YDWEGeneralBounsSystem.cfg b/jass/YDWEGeneralBounsSystem.cfg new file mode 100644 index 0000000..72f3fe9 --- /dev/null +++ b/jass/YDWEGeneralBounsSystem.cfg @@ -0,0 +1,4 @@ +YDWELifeChange +YDWEManaChange +YDWEGeneralBounsSystemUnitSetBonus +YDWEGeneralBounsSystemUnitGetBonus \ No newline at end of file diff --git a/jass/YDWEGeneralBounsSystem.j b/jass/YDWEGeneralBounsSystem.j new file mode 100644 index 0000000..da8f121 --- /dev/null +++ b/jass/YDWEGeneralBounsSystem.j @@ -0,0 +1,505 @@ +#ifndef YDWEGeneralBounsSystemIncluded +#define YDWEGeneralBounsSystemIncluded + +//=========================================================================== +//修改生命 +//=========================================================================== + +#include "YDWEBase.j" +library YDWEGeneralBounsSystem initializer Initialize + +globals + private integer array ABILITY_COUNT + private integer array ABILITY_NUM + private integer array BonusAbilitys + private integer array PowersOf2 + private integer PRELOAD_DUMMY_UNIT = 'hpea' + private integer array YDWEBONUS_MyChar + private boolean PRELOAD_ABILITYS = true + private constant integer BONUS_TYPES = 4 + private integer array MaxBonus + private integer array MinBonus + private unit array Units + private integer UnitCount = 0 +endglobals + + +//以下函数仅仅是让技能ID出现在代码里,不然SLK优化器会删除这些技能 +private function DisplayAllAbilityId takes nothing returns nothing + local integer aid=0 + set aid='YDl0' + set aid='YDl1' + set aid='YDl2' + set aid='YDl3' + set aid='YDl4' + set aid='YDl5' + set aid='YDl6' + set aid='YDl7' + set aid='YDl8' + set aid='YDl9' + set aid='YDla' + set aid='YDlb' + set aid='YDlc' + set aid='YDld' + set aid='YDle' + set aid='YDlf' + set aid='YDm0' + set aid='YDm1' + set aid='YDm2' + set aid='YDm3' + set aid='YDm4' + set aid='YDm5' + set aid='YDm6' + set aid='YDm7' + set aid='YDm8' + set aid='YDm9' + set aid='YDma' + set aid='YDmb' + set aid='YDmc' + set aid='YDmd' + set aid='YDme' + set aid='YDmf' + set aid='YDc0' + set aid='YDc1' + set aid='YDc2' + set aid='YDc3' + set aid='YDc4' + set aid='YDc5' + set aid='YDc6' + set aid='YDc7' + set aid='YDc8' + set aid='YDc9' + set aid='YDca' + set aid='YDcb' + set aid='YDcc' + set aid='YDb0' + set aid='YDb1' + set aid='YDb2' + set aid='YDb3' + set aid='YDb4' + set aid='YDb5' + set aid='YDb6' + set aid='YDb7' + set aid='YDb8' + set aid='YDb9' + set aid='YDba' + set aid='YDbb' + set aid='YDbc' + set aid='YDbd' + set aid='YDbe' + set aid='YDbf' + set aid='YDbg' + set aid='YDbh' + set aid='YDbi' + set aid='YDbj' + set aid='YDbk' + set aid='YDbl' + set aid='YDbm' + set aid='YDbn' +endfunction + + private function UnitClearBonus takes unit u, integer bonusType returns nothing + local integer i=ABILITY_COUNT[bonusType+1]-1 + loop + exitwhen i < ABILITY_COUNT[bonusType] + call UnitRemoveAbility(u,BonusAbilitys[i]) + set i=i-1 + endloop + call YDWESaveIntegerByString(I2S(YDWEH2I(u)),"bonusType"+I2S(bonusType),0) + endfunction + + private function SetUnitMaxState takes unit u,integer bonusType,real value returns boolean + local integer v=R2I(value) + local integer s=0 + local integer o=0 + local unitstate state + local integer i=ABILITY_COUNT[bonusType+1]- 2 + local integer a=ABILITY_NUM[bonusType] + if value>65535 or value<=0 then + debug call BJDebugMsg("输入数据无效") + return false + endif + + if bonusType == 0 then + set state=UNIT_STATE_MAX_LIFE + elseif bonusType == 1 then + set state=UNIT_STATE_MAX_MANA + else + debug call BJDebugMsg("无效状态") + return false + endif + set v=v-R2I(GetUnitState(u, state)) + call YDWESaveIntegerByString(I2S(YDWEH2I(u)),"bonusType"+I2S(bonusType),v) + if v>0 then + set o=3 + elseif v<0 then + set o=2 + set v=-v + else + return false + endif + loop + exitwhen i < ABILITY_COUNT[bonusType] + if v >= PowersOf2[i] then + call UnitAddAbility(u, BonusAbilitys[i]) + call SetUnitAbilityLevel(u, BonusAbilitys[i], o) + call UnitRemoveAbility(u, BonusAbilitys[i]) + set v=v-PowersOf2[i] + endif + set i=i-1 + endloop + return true + endfunction + +private function UnitSetBonus takes unit u, integer bonusType, integer ammount returns boolean + local integer i + //设置属性为0不进行Loop + if ammount==0 then + call UnitClearBonus(u,bonusType) + return false + endif + if ammount < MinBonus[bonusType] or ammount > MaxBonus[bonusType] then + debug call BJDebugMsg("BonusSystem Error: Bonus too high or low (" + I2S(ammount) + ")") + return false + elseif bonusType < 0 or bonusType >= BONUS_TYPES then + debug call BJDebugMsg("BonusSystem Error: Invalid bonus type (" + I2S(bonusType) + ")") + return false + endif + + call YDWESaveIntegerByString(I2S(YDWEH2I(u)),"bonusType"+I2S(bonusType),ammount) + if ammount < 0 then + set ammount = MaxBonus[bonusType] + ammount + 1 + call UnitAddAbility(u, BonusAbilitys[ABILITY_COUNT[bonusType+1] - 1]) + call UnitMakeAbilityPermanent(u, true, BonusAbilitys[ABILITY_COUNT[bonusType+1] - 1]) + else + call UnitRemoveAbility(u,BonusAbilitys[ABILITY_COUNT[bonusType+1] - 1]) + endif + + set i = ABILITY_COUNT[bonusType+1]-2 + loop + exitwhen i < ABILITY_COUNT[bonusType] + if ammount >= PowersOf2[i] then + call UnitAddAbility(u,BonusAbilitys[i]) + call UnitMakeAbilityPermanent(u, true, BonusAbilitys[i]) + set ammount = ammount - PowersOf2[i] + else + call UnitRemoveAbility(u,BonusAbilitys[i]) + endif + + set i = i - 1 + endloop + + if not YDWEGetBooleanByString(I2S(YDWEH2I(u)),"bonusMark") then + call YDWESaveBooleanByString(I2S(YDWEH2I(u)),"bonusMark", true) + set UnitCount = UnitCount + 1 + set Units[UnitCount] = u + endif + + return true +endfunction + +private function UnitGetBonus takes unit u, integer bonusType returns integer + return YDWEGetIntegerByString(I2S(YDWEH2I(u)),"bonusType"+I2S(bonusType)) +endfunction + +private function AddUnitMaxState takes unit u,integer bonusType,real value returns boolean + local unitstate state + if bonusType==0 then + set state=UNIT_STATE_MAX_LIFE + elseif bonusType==1 then + set state=UNIT_STATE_MAX_MANA + else + return false + endif + return SetUnitMaxState( u,bonusType, value+GetUnitState(u,state)) +endfunction + +private function UnitAddBonus takes unit u, integer bonusType, integer ammount returns boolean + return UnitSetBonus(u, bonusType, UnitGetBonus(u, bonusType) + ammount) +endfunction + +private function FlushUnits takes nothing returns nothing + local integer i = UnitCount + local string h + loop + exitwhen i < 1 + if GetUnitTypeId(Units[i]) == 0 then + set h = I2S(YDWEH2I(Units[i])) + call YDWESaveIntegerByString(h,"bonusType0",0) + call YDWESaveIntegerByString(h,"bonusType1",0) + call YDWESaveIntegerByString(h,"bonusType2",0) + call YDWESaveIntegerByString(h,"bonusType3",0) + call YDWESaveBooleanByString(h,"bonusMark",false) + set Units[i] = Units[UnitCount] + set Units[UnitCount] = null + set UnitCount = UnitCount - 1 + endif + set i = i - 1 + endloop +endfunction + +function YDWEUnitSetBonus takes unit u, integer bonusType, integer ammount returns nothing + if bonusType==0 or bonusType==1 then + call SetUnitMaxState(u,bonusType,ammount) + else + call UnitSetBonus(u,bonusType,ammount) + endif +endfunction + +function YDWEUnitAddBonus takes unit u, integer bonusType, integer ammount returns nothing + if bonusType==0 or bonusType==1 then + call AddUnitMaxState(u,bonusType,ammount) + else + call UnitAddBonus(u,bonusType,ammount) + endif +endfunction + +function YDWEGeneralBounsSystemUnitSetBonus takes unit u,integer bonusType,integer mod,integer ammount returns nothing + if mod==0 then + call YDWEUnitAddBonus(u,bonusType,ammount) + elseif mod==1 then + call YDWEUnitAddBonus(u,bonusType,0-ammount) + else + call YDWEUnitSetBonus(u,bonusType,ammount) + endif +endfunction + +function YDWEGeneralBounsSystemUnitGetBonus takes unit u,integer bonusType returns integer + return YDWEGetIntegerByString(I2S(YDWEH2I(u)),"bonusType"+I2S(bonusType)) +endfunction + +//private keyword BonusAbilitys +private function InitializeAbilitys takes nothing returns nothing + local integer i=0 + local integer m=0 + + set ABILITY_COUNT[0]=0 //life max + set ABILITY_COUNT[1]=15 //mana max + set ABILITY_COUNT[2]=30 //armor + set ABILITY_COUNT[3]=43 //attack + set ABILITY_COUNT[4]=67 + + set ABILITY_NUM[0]=15 + set ABILITY_NUM[1]=15 + set ABILITY_NUM[2]=13 + set ABILITY_NUM[3]=24 + + // Bonus Mod - armor abilitys + loop + exitwhen i>9 + set YDWEBONUS_MyChar[i]='0'+m + set m=m+1 + set i=i+1 + endloop + set m=0 + loop + exitwhen i>26 + set YDWEBONUS_MyChar[i]='a'+m + set m=m+1 + set i=i+1 + endloop + + set i =0 + set m=0 + loop + exitwhen m>(ABILITY_NUM[0]-1) + set BonusAbilitys[i] = 'YDl0' -'0'+YDWEBONUS_MyChar[m]// +1 + set i=i+1 + set m=m+1 + endloop + // Bonus Mod - Damage abilitys + set m=0 + loop + exitwhen m>(ABILITY_NUM[1]-1) + set BonusAbilitys[i] = 'YDm0' -'0'+YDWEBONUS_MyChar[m]// +1 + set i=i+1 + set m=m+1 + endloop + // Bonus Mod - Life MaxState abilitys + set m=0 + loop + exitwhen m>(ABILITY_NUM[2]-1) + set BonusAbilitys[i] = 'YDc0' -'0'+YDWEBONUS_MyChar[m]// +1 + set i=i+1 + set m=m+1 + endloop + // Bonus Mod - Mana MaxState abilitys + set m=0 + loop + exitwhen m>(ABILITY_NUM[3]-1) + set BonusAbilitys[i] = 'YDb0' -'0'+YDWEBONUS_MyChar[m]// +1 + set i=i+1 + set m=m+1 + endloop +endfunction + +private function Initialize takes nothing returns nothing + local integer i = 1 + local unit u + local integer n=0 + local integer add=0 + call InitializeAbilitys() + loop + set i=1 + set PowersOf2[add] = 1 + loop + set PowersOf2[add+1] = PowersOf2[add ] * 2 + set add=add+1 + set i = i + 1 + exitwhen i == ABILITY_NUM[n] + endloop + set MaxBonus[n] = PowersOf2[add] - 1 + set MinBonus[n] = -PowersOf2[add] + set add=add+1 + set n=n+1 + exitwhen n>=4 + endloop + //预读技能 + if PRELOAD_ABILITYS then + set u = CreateUnit(Player(15), PRELOAD_DUMMY_UNIT, 0, 0, 0) + set i = 0 + loop + exitwhen i == ABILITY_COUNT[5] + call UnitAddAbility(u, BonusAbilitys[i]) + set i = i + 1 + endloop + call RemoveUnit(u) + set u = null + endif + //回收数据 + call TimerStart(CreateTimer(), 10, true, function FlushUnits) +endfunction + +function YDWELifeChange takes unit u,integer mod,integer ch,integer id returns nothing + local integer a + local integer b + local integer c + local integer d + local integer aid = id + + if mod==1 then + set ch=-ch + elseif mod==2 then + set ch=ch-R2I(GetUnitState(u,UNIT_STATE_MAX_LIFE)) + endif + //set YDWEADDBONUS_LIFE=YDWEADDBONUS_LIFE+ch + if ch>99999 then + set ch=99999 + endif + if ch<-99999 then + set ch=-99999 + endif + if ch<0 then + set a=2 + set ch=-ch + else + set a=7 + endif + set b=0 + loop + exitwhen b==5 + set c=ch-ch/10*10 + set d=0 + loop + exitwhen d==c + call UnitAddAbility(u,aid) + call SetUnitAbilityLevel(u,aid,a) + call UnitRemoveAbility(u,aid) + set d=d+1 + endloop + set ch=ch/10 + set a=a+1 + set b=b+1 + endloop + +endfunction + +//=========================================================================== +//修改魔法 +//=========================================================================== +function YDWEManaChange takes unit u,integer mod,integer ch,integer id returns nothing + local integer a + local integer b + local integer c + local integer d + local integer aid = id + + if mod==1 then + set ch=-ch + elseif mod==2 then + set ch=ch-R2I(GetUnitState(u,UNIT_STATE_MAX_MANA)) + endif + //set YDWEADDBONUS_MANA=YDWEADDBONUS_MANA+ch + if ch>99999 then + set ch=99999 + endif + if ch<-99999 then + set ch=-99999 + endif + if ch<0 then + set a=2 + set ch=-ch + else + set a=7 + endif + + set b=0 + loop + exitwhen b==5 + set c=ch-ch/10*10 + set d=0 + loop + exitwhen d==c + call UnitAddAbility(u,aid) + call SetUnitAbilityLevel(u,aid,a) + call UnitRemoveAbility(u,aid) + set d=d+1 + endloop + set ch=ch/10 + set a=a+1 + set b=b+1 + endloop +endfunction + +endlibrary + +#endif /// YDWEGeneralBounsSystemIncluded diff --git a/jass/YDWEGetGameTime.cfg b/jass/YDWEGetGameTime.cfg new file mode 100644 index 0000000..464511d --- /dev/null +++ b/jass/YDWEGetGameTime.cfg @@ -0,0 +1 @@ +YDWEGetGameCurrentTime \ No newline at end of file diff --git a/jass/YDWEGetGameTime.j b/jass/YDWEGetGameTime.j new file mode 100644 index 0000000..20c7ec4 --- /dev/null +++ b/jass/YDWEGetGameTime.j @@ -0,0 +1,25 @@ +#ifndef YDWEGetGameTimeIncluded +#define YDWEGetGameTimeIncluded + +library YDWEGetGameTime initializer YDWEGetGameTimeInit + +globals + private timer t +endglobals + +function YDWEGetGameTime takes nothing returns real + return TimerGetElapsed(t) +endfunction + +function YDWEGetGameCurrentTime takes nothing returns integer + return R2I(TimerGetElapsed(t)) +endfunction + +function YDWEGetGameTimeInit takes nothing returns nothing + set t = CreateTimer() + call TimerStart(t, 1000000.0, false, null) +endfunction + +endlibrary + +#endif diff --git a/jass/YDWEHeroLearnSkillAI.cfg b/jass/YDWEHeroLearnSkillAI.cfg new file mode 100644 index 0000000..3988e34 --- /dev/null +++ b/jass/YDWEHeroLearnSkillAI.cfg @@ -0,0 +1,4 @@ +YDWEAIRecordAbility +YDWEAIRecordLearn_sequence +YDWEHeroLearnSkillAI +YDWEHeroMaxSkillAI \ No newline at end of file diff --git a/jass/YDWEHeroLearnSkillAI.j b/jass/YDWEHeroLearnSkillAI.j new file mode 100644 index 0000000..28fdbe8 --- /dev/null +++ b/jass/YDWEHeroLearnSkillAI.j @@ -0,0 +1,95 @@ +#ifndef YDWEHeroLearnSkillAIIncluded +#define YDWEHeroLearnSkillAIIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//AI-Զѧϰ +//=========================================================================== +library YDWEHeroLearnSkillAI requires YDWEBase + +private function AIStringFind takes string subject,string find,integer offset returns integer + local integer len = StringLength(find) + local integer pos = offset + local string s + local string str + if ( offset < 1 ) then + set pos = 1 + endif + if ( find == "" ) then + return -1 + endif + loop + set s = SubString(subject, pos-1, pos+len-1) + if ( s == find ) then + return pos + endif + if ( SubString(subject, pos-1, pos) == "" ) then + return -1 + endif + set pos = pos + 1 + endloop + return -1 +endfunction + +function YDWEAIRecordAbility takes integer uid,integer ab1,integer ab2,integer ab3,integer ab4,integer ab5 returns nothing + call YDWESaveIntegerByString(I2S(uid),"HeroAbilities_1",ab1) + call YDWESaveIntegerByString(I2S(uid),"HeroAbilities_2",ab2) + call YDWESaveIntegerByString(I2S(uid),"HeroAbilities_3",ab3) + call YDWESaveIntegerByString(I2S(uid),"HeroAbilities_4",ab4) + call YDWESaveIntegerByString(I2S(uid),"HeroAbilities_5",ab5) +endfunction + +function YDWEAIRecordLearn_sequence takes integer uid,string ls1,string ls2,string ls3,string ls4,string ls5 returns nothing + call YDWESaveStringByString(I2S(uid),"learn_quence_1",ls1) + call YDWESaveStringByString(I2S(uid),"learn_quence_2",ls2) + call YDWESaveStringByString(I2S(uid),"learn_quence_3",ls3) + call YDWESaveStringByString(I2S(uid),"learn_quence_4",ls4) + call YDWESaveStringByString(I2S(uid),"learn_quence_5",ls5) +endfunction + +function YDWEHeroLearnSkillAI takes unit hero,integer level returns integer + local string learn_sequence + local integer skills + local integer i = 1 + local integer uid=GetUnitTypeId(hero) + loop + exitwhen i > 5 + set skills = YDWEGetIntegerByString(I2S(uid),"HeroAbilities_"+I2S(i)) + set learn_sequence = YDWEGetStringByString(I2S(uid),"learn_quence_"+I2S(i)) + if AIStringFind(learn_sequence , "^" + I2S(level) + "^", 1) != -1 then + if GetUnitAbilityLevel(hero,skills)==0 then + call UnitAddAbility(hero,skills) + else + call IncUnitAbilityLevel(hero,skills) + endif + call UnitModifySkillPoints(hero, -1) + //call SelectHeroSkill(hero,skills) + //call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, 3600, ( "ѧϰ " + GetAbilityName(skills)+ "" + "ĿǰܵȼΪ" +I2S(GetUnitAbilityLevel(hero,skills)))) + return skills + endif + set i = i + 1 + endloop + return 0 +endfunction + +function YDWEHeroMaxSkillAI takes unit hero returns nothing + local integer level = GetHeroLevel(hero) + local integer uid = GetUnitTypeId(hero) + local integer i=0 + call UnitModifySkillPoints(hero, level - GetHeroSkillPoints(hero)) + loop + set i = i + 1 + exitwhen i>5 + call UnitRemoveAbility(hero,YDWEGetIntegerByString(I2S(uid),"HeroAbilities_"+I2S(i))) + endloop + set i = 0 + loop + set i = i + 1 + exitwhen i>level + call YDWEHeroLearnSkillAI(hero,i) + endloop +endfunction +endlibrary + +#endif /// YDWEHeroLearnSkillAIIncluded diff --git a/jass/YDWEItemAbilityStorage.cfg b/jass/YDWEItemAbilityStorage.cfg new file mode 100644 index 0000000..29440c1 --- /dev/null +++ b/jass/YDWEItemAbilityStorage.cfg @@ -0,0 +1 @@ +YDWEItemAbilityStorage diff --git a/jass/YDWEItemAbilityStorage.j b/jass/YDWEItemAbilityStorage.j new file mode 100644 index 0000000..58a74d4 --- /dev/null +++ b/jass/YDWEItemAbilityStorage.j @@ -0,0 +1,64 @@ +#ifndef YDWEItemAbilitySystemIncluded +#define YDWEItemAbilitySystemIncluded + +#include "YDWEBase.j" + +library YDWEItemAbilitySystem initializer YDWEItemAbilitySystemInit requires YDWEBase + +//=========================================================================== +//Ʒϵ +//=========================================================================== +function YDWEItemAbilityStorage takes integer itid,integer ab returns nothing + local integer index = YDWEGetIntegerByString(I2S(itid),"AbilityStorageIndex") + set index = index + 1 + call YDWESaveIntegerByString(I2S(itid),"AbilityStorage"+I2S(index),ab) + call YDWESaveIntegerByString(I2S(itid),"AbilityStorageIndex",index) +endfunction + +//=========================================================================== +//ʰȡƷ +//=========================================================================== +function YDWEItemAbilitySystemByAbility_CON takes nothing returns boolean + local unit hero = GetTriggerUnit() + local item it=GetManipulatedItem() + local trigger trg=YDWEGetTriggerByString(I2S(YDWEH2I(hero)), "MulItemSlotByAbility") + local integer itid=GetItemTypeId(it) + local integer index = YDWEGetIntegerByString(I2S(itid),"AbilityStorageIndex") + local integer array skills + local integer i=0 + local integer N=YDWEGetIntegerByString(I2S(YDWEH2I(trg)), "ItemSlotNum") + local boolean OnOff=YDWEGetBooleanByString(I2S(YDWEH2I(hero)), "YDWEItemAbilitySystemTriggerClose") + if index==0 or OnOff==true then + set it=null + set hero=null + set trg=null + return false + endif + loop + set i=i+1 + exitwhen i>index + set skills[i] = YDWEGetIntegerByString(I2S(itid),"AbilityStorage"+I2S(i)) + if GetTriggerEventId()==EVENT_PLAYER_UNIT_DROP_ITEM then + call UnitRemoveAbility(hero,skills[i]) + elseif GetTriggerEventId()==EVENT_PLAYER_UNIT_PICKUP_ITEM then + call UnitAddAbility(hero,skills[i]) + call UnitMakeAbilityPermanent(hero,true,skills[i]) + endif + endloop + set it=null + set hero=null + set trg=null + return false +endfunction + + function YDWEItemAbilitySystemInit takes nothing returns nothing + local trigger trg = CreateTrigger() + call TriggerRegisterAnyUnitEventBJ(trg,EVENT_PLAYER_UNIT_PICKUP_ITEM) + call TriggerRegisterAnyUnitEventBJ(trg,EVENT_PLAYER_UNIT_DROP_ITEM) + call TriggerAddCondition(trg, Condition(function YDWEItemAbilitySystemByAbility_CON)) + set trg=null +endfunction + +endlibrary + +#endif diff --git a/jass/YDWEJumpTimer.cfg b/jass/YDWEJumpTimer.cfg new file mode 100644 index 0000000..b287f15 --- /dev/null +++ b/jass/YDWEJumpTimer.cfg @@ -0,0 +1 @@ +YDWEJumpTimer \ No newline at end of file diff --git a/jass/YDWEJumpTimer.j b/jass/YDWEJumpTimer.j new file mode 100644 index 0000000..42685ab --- /dev/null +++ b/jass/YDWEJumpTimer.j @@ -0,0 +1,90 @@ +#ifndef YDWEJumpTimerIncluded +#define YDWEJumpTimerIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//Ծϵͳ +//=========================================================================== +library YDWEJumpTimer requires YDWEBase + +globals +//Ծϵͳȼ + integer MoveMoreLevel_JumpTimer=3 +endglobals + +function YDWEJumpTimerLoop takes nothing returns nothing + local timer t=GetExpiredTimer() + local unit hero=(YDWEGetUnitByString(I2S(YDWEH2I(t)),"Hero")) + local real angle=YDWEGetRealByString(I2S(YDWEH2I(t)),"Angle") + local integer steeps=YDWEGetIntegerByString(I2S(YDWEH2I(t)),"steeps") + local integer steepsMax=YDWEGetIntegerByString(I2S(YDWEH2I(t)),"steepsMax") + local real heightMax=YDWEGetRealByString(I2S(YDWEH2I(t)),"heightMax") + local real dist=YDWEGetRealByString(I2S(YDWEH2I(t)),"dist") + local real dheig=YDWEGetRealByString(I2S(YDWEH2I(t)),"dheig") + local real OriginHeight=YDWEGetRealByString(I2S(YDWEH2I(t)),"OriginHeight") + local real x=YDWEGetRealByString(I2S(YDWEH2I(t)),"X") + local real y=YDWEGetRealByString(I2S(YDWEH2I(t)),"Y") + local real x1=0 + local real y1=0 + local real height=0 + local integer lvJumpTimer=MoveMoreLevel_JumpTimer + local integer lvUnitMove=YDWEGetIntegerByString(I2S(YDWEH2I(hero)),"lvUnitMove") + if steeps=lvUnitMove then + set x1=x+steeps*dist*Cos(angle*3.14159/180.0) + set y1=y+steeps*dist*Sin(angle*3.14159/180.0) + set x1=YDWECoordinateX(x1) + set y1=YDWECoordinateY(y1) + call SetUnitX(hero,x1) + call SetUnitY(hero,y1) + set steeps=steeps+1 + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"steeps",steeps) + set height=(-(2*I2R(steeps)*dheig-1)*(2*I2R(steeps)*dheig-1)+1)*heightMax+OriginHeight + call SetUnitFlyHeight(hero,height,99999) + call SetUnitFacing(hero,angle) + else + call SetUnitFlyHeight(hero,OriginHeight,99999) + call SetUnitPathing(hero, true) + call DestroyTimer(t) + call YDWEFlushMissionByString(I2S(YDWEH2I(t))) + call YDWESaveIntegerByString(I2S(YDWEH2I(hero)),"lvUnitMove",0) + call YDWESyStemAbilityCastingOverTriggerAction(hero,2) + endif + set t=null + set hero=null +endfunction + + +function YDWEJumpTimer takes unit hero,real angle,real distance,real lasttime,real timeout,real heightMax returns nothing + local timer t=null + local real x=GetUnitX(hero) + local real y=GetUnitY(hero) + local integer steepsMax=R2I(lasttime/timeout) + local integer steeps=0 + local real dist=distance/steepsMax + local real dheig=1.0/steepsMax + local real OriginHeight=GetUnitFlyHeight(hero) + local integer lvUnitMove=YDWEGetIntegerByString(I2S(YDWEH2I(hero)),"lvUnitMove") + if MoveMoreLevel_JumpTimer<=lvUnitMove then + return + endif + set t=CreateTimer() + call YDWESaveIntegerByString(I2S(YDWEH2I(hero)),"lvUnitMove",MoveMoreLevel_JumpTimer) + call YDWEFlyEnable(hero) + call SetUnitPathing(hero,false) + call YDWESaveUnitByString(I2S(YDWEH2I(t)),"Hero",hero) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"OriginHeight",OriginHeight) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"Angle",angle) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"dist",dist) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"heightMax",heightMax) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"dheig",dheig) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"X",x) + call YDWESaveRealByString(I2S(YDWEH2I(t)),"Y",y) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"steeps",steeps) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)),"steepsMax",steepsMax) + call TimerStart(t,timeout,true,function YDWEJumpTimerLoop) + set t = null +endfunction +endlibrary + +#endif /// YDWEJumpTimerIncluded diff --git a/jass/YDWELocalVariable.cfg b/jass/YDWELocalVariable.cfg new file mode 100644 index 0000000..595ac0a --- /dev/null +++ b/jass/YDWELocalVariable.cfg @@ -0,0 +1,51 @@ +YDWELocalVariableInitiliation +YDWEWaitForLocalVariable +YDWELocalVariableEnd +YDWESetLocalVariableInteger +YDWEGetLocalVariableInteger +YDWESetLocalVariableIntegerArray +YDWEGetLocalVariableIntegerArray +YDWESetLocalVariableReal +YDWEGetLocalVariableReal +YDWESetLocalVariableRealArray +YDWEGetLocalVariableRealArray +YDWESetLocalVariableString +YDWEGetLocalVariableString +YDWESetLocalVariableStringArray +YDWEGetLocalVariableStringArray +YDWESetLocalVariableBoolean +YDWEGetLocalVariableBoolean +YDWESetLocalVariableBooleanArray +YDWEGetLocalVariableBooleanArray +YDWESetLocalVariableUnit +YDWEGetLocalVariableUnit +YDWESetLocalVariableUnitArray +YDWEGetLocalVariableUnitArray +YDWESetLocalVariableUnitID +YDWEGetLocalVariableUnitID +YDWESetLocalVariableUnitIDArray +YDWEGetLocalVariableUnitIDArray +YDWESetLocalVariableAbilityID +YDWEGetLocalVariableAbilityID +YDWESetLocalVariableAbilityIDArray +YDWEGetLocalVariableAbilityIDArray +YDWESetLocalVariableItem +YDWEGetLocalVariableItem +YDWESetLocalVariableItemArray +YDWEGetLocalVariableItemArray +YDWESetLocalVariableItemID +YDWEGetLocalVariableItemID +YDWESetLocalVariableItemIDArray +YDWEGetLocalVariableItemIDArray +YDWESetLocalVariableLocation +YDWEGetLocalVariableLocation +YDWESetLocalVariableLocationArray +YDWEGetLocalVariableLocationArray +YDWESetLocalVariableGroup +YDWEGetLocalVariableGroup +YDWESetLocalVariableGroupArray +YDWEGetLocalVariableGroupArray +YDWESetLocalVariableRect +YDWEGetLocalVariableRect +YDWESetLocalVariableRectArray +YDWEGetLocalVariableRectArray \ No newline at end of file diff --git a/jass/YDWELocalVariable.j b/jass/YDWELocalVariable.j new file mode 100644 index 0000000..fe1fe9f --- /dev/null +++ b/jass/YDWELocalVariable.j @@ -0,0 +1,348 @@ +#ifndef YDWELocalVariableIncluded +#define YDWELocalVariableIncluded + +#include "YDWEBase.j" + +library YDWELocalVariable requires YDWEBase + +function YDWELocalVariableInitiliation takes nothing returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"GlobalsTriggerRunSteps") + set TriggerRunSteps=TriggerRunSteps+1 + call YDWESaveIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"GlobalsTriggerRunSteps",TriggerRunSteps) + call YDWESaveIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps",TriggerRunSteps) +endfunction + +function YDWEWaitForLocalVariable takes real time returns nothing + local integer TriggerRunSteps=YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") +// call BJDebugMsg("等待之前TriggerRunSteps= "+I2S(TriggerRunSteps)) + call TriggerSleepAction(time) +// call BJDebugMsg("等待之后TriggerRunSteps= "+I2S(TriggerRunSteps)) + call YDWESaveIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps",TriggerRunSteps) +endfunction + +function YDWELocalVariableEnd takes nothing returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWEFlushMissionByString(dir) +endfunction + +//integer +function YDWESetLocalVariableInteger takes string s,integer i returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s,i) +endfunction + +function YDWEGetLocalVariableInteger takes string s returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s) +endfunction + +function YDWESetLocalVariableIntegerArray takes string s,integer index,integer i returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s+I2S(index),i) +endfunction + +function YDWEGetLocalVariableIntegerArray takes string s,integer index returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s+I2S(index)) +endfunction + +//real +function YDWESetLocalVariableReal takes string s,real R returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveRealByString(dir,s,R) +endfunction + +function YDWEGetLocalVariableReal takes string s returns real + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetRealByString(dir,s) +endfunction + +function YDWESetLocalVariableRealArray takes string s,integer index,real R returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveRealByString(dir,s+I2S(index),R) +endfunction + +function YDWEGetLocalVariableRealArray takes string s,integer index returns real + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetRealByString(dir,s+I2S(index)) +endfunction +//string +function YDWESetLocalVariableString takes string s,string str returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveStringByString(dir,s,str) +endfunction + +function YDWEGetLocalVariableString takes string s returns string + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetStringByString(dir,s) +endfunction + +function YDWESetLocalVariableStringArray takes string s,integer index,string str returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveStringByString(dir,s+I2S(index),str) +endfunction + +function YDWEGetLocalVariableStringArray takes string s,integer index returns string + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetStringByString(dir,s+I2S(index)) +endfunction +//boolean +function YDWESetLocalVariableBoolean takes string s,boolean bl returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveBooleanByString(dir,s,bl) +endfunction + +function YDWEGetLocalVariableBoolean takes string s returns boolean + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetBooleanByString(dir,s) +endfunction + +function YDWESetLocalVariableBooleanArray takes string s,integer index,boolean bl returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveBooleanByString(dir,s+I2S(index),bl) +endfunction + +function YDWEGetLocalVariableBooleanArray takes string s,integer index returns boolean + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetBooleanByString(dir,s+I2S(index)) +endfunction +//unit +function YDWESetLocalVariableUnit takes string s,unit u returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveUnitByString(dir,s,u) +endfunction + +function YDWEGetLocalVariableUnit takes string s returns unit + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetUnitByString(dir,s) +endfunction + +function YDWESetLocalVariableUnitArray takes string s,integer index,unit u returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveUnitByString(dir,s+I2S(index),u) +endfunction + +function YDWEGetLocalVariableUnitArray takes string s,integer index returns unit + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetUnitByString(dir,s+I2S(index)) +endfunction + +//unit code +function YDWESetLocalVariableUnitID takes string s,integer uid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s,uid) +endfunction + +function YDWEGetLocalVariableUnitID takes string s returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s) +endfunction + +function YDWESetLocalVariableUnitIDArray takes string s,integer index,integer uid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s+I2S(index),uid) +endfunction + +function YDWEGetLocalVariableUnitIDArray takes string s,integer index returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s+I2S(index)) +endfunction +//ability code +function YDWESetLocalVariableAbilityID takes string s,integer abid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s,abid) +endfunction + +function YDWEGetLocalVariableAbilityID takes string s returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s) +endfunction + +function YDWESetLocalVariableAbilityIDArray takes string s,integer index,integer abid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s+I2S(index),abid) +endfunction + +function YDWEGetLocalVariableAbilityIDArray takes string s,integer index returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s+I2S(index)) +endfunction +//item +function YDWESetLocalVariableItem takes string s,item it returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveItemByString(dir,s,it) +endfunction + +function YDWEGetLocalVariableItem takes string s returns item + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetItemByString(dir,s) +endfunction + +function YDWESetLocalVariableItemArray takes string s,integer index,item it returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveItemByString(dir,s+I2S(index),it) +endfunction + +function YDWEGetLocalVariableItemArray takes string s,integer index returns item + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetItemByString(dir,s+I2S(index)) +endfunction +//item code +function YDWESetLocalVariableItemID takes string s,integer itid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s,itid) +endfunction + +function YDWEGetLocalVariableItemID takes string s returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s) +endfunction + +function YDWESetLocalVariableItemIDArray takes string s,integer index,integer itid returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveIntegerByString(dir,s+I2S(index),itid) +endfunction + +function YDWEGetLocalVariableItemIDArray takes string s,integer index returns integer + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetIntegerByString(dir,s+I2S(index)) +endfunction +//location +function YDWESetLocalVariableLocation takes string s,location point returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveLocationByString(dir,s,point) +endfunction + +function YDWEGetLocalVariableLocation takes string s returns location + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetLocationByString(dir,s) +endfunction + +function YDWESetLocalVariableLocationArray takes string s,integer index,location point returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveLocationByString(dir,s+I2S(index),point) +endfunction + +function YDWEGetLocalVariableLocationArray takes string s,integer index returns location + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetLocationByString(dir,s+I2S(index)) +endfunction +//group +function YDWESetLocalVariableGroup takes string s,group g returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveGroupByString(dir,s,g) +endfunction + +function YDWEGetLocalVariableGroup takes string s returns group + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetGroupByString(dir,s) +endfunction + +function YDWESetLocalVariableGroupArray takes string s,integer index,group g returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveGroupByString(dir,s+I2S(index),g) +endfunction + +function YDWEGetLocalVariableGroupArray takes string s,integer index returns group + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetGroupByString(dir,s+I2S(index)) +endfunction +//effect +function YDWESetLocalVariableEffect takes string s,effect e returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveEffectByString(dir,s,e) +endfunction + +function YDWEGetLocalVariableEffect takes string s returns effect + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetEffectByString(dir,s) +endfunction + +function YDWESetLocalVariableEffectArray takes string s,integer index,effect e returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveEffectByString(dir,s+I2S(index),e) +endfunction + +function YDWEGetLocalVariableEffectArray takes string s,integer index returns effect + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetEffectByString(dir,s+I2S(index)) +endfunction + +//rect +function YDWESetLocalVariableRect takes string s,rect rt returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveRectByString(dir,s,rt) +endfunction + +function YDWEGetLocalVariableRect takes string s returns rect + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetRectByString(dir,s) +endfunction + +function YDWESetLocalVariableRectArray takes string s,integer index,rect rt returns nothing + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + call YDWESaveRectByString(dir,s+I2S(index),rt) +endfunction + +function YDWEGetLocalVariableRectArray takes string s,integer index returns rect + local integer TriggerRunSteps = YDWEGetIntegerByString(I2S(YDWEH2I(GetTriggeringTrigger())),"TriggerRunSteps") + local string dir = I2S(YDWEH2I(GetTriggeringTrigger()))+I2S(TriggerRunSteps) + return YDWEGetRectByString(dir,s+I2S(index)) +endfunction + + +endlibrary + +#endif /// YDWELocalVariableIncluded diff --git a/jass/YDWELogarithm.cfg b/jass/YDWELogarithm.cfg new file mode 100644 index 0000000..303dfae --- /dev/null +++ b/jass/YDWELogarithm.cfg @@ -0,0 +1,3 @@ +YDWELogarithmLg +YDWELogarithmLn +YDWELogarithmLog \ No newline at end of file diff --git a/jass/YDWELogarithm.j b/jass/YDWELogarithm.j new file mode 100644 index 0000000..d682ce6 --- /dev/null +++ b/jass/YDWELogarithm.j @@ -0,0 +1,119 @@ +#ifndef YDWELogarithmIncluded +#define YDWELogarithmIncluded + +#include "YDWEBase.j" + +library YDWELogarithm initializer onInit + +globals + private real array base +endglobals + +// Author : zyl910 +// Modified by : c kuhn +// [private]用级数计算以e为底的对数 +// Returns 0 if x <= 0 +private function ln_taylor takes real x returns real + // ln( (1+x) / (1-x) ) = ln(1+x) - ln(1-x) = 2 * ( x + x^3 / 3 + x^5 / 5 + ... ) + // x = (y-1) / (y+1) + // (0 < y < +∞, -1 < x < 1) + local real fRet = 0. + local real x2 // x*x + local real fCur + local real fDiv = 1. + + if x > 0 then + set x = (x-1.) / (x+1.) + set x2 = x*x + loop + set fCur = fRet + x * 2. / fDiv + exitwhen fRet >= fCur and fRet <= fCur + set fRet = fCur + set x = x * x2 + set fDiv = fDiv + 2. + endloop + endif + + return fRet +endfunction + +// Author : c kuhn +// 通过满二叉树特性快速找到大的部分 +private function Log2 takes real x returns real + local real res = 0. + local real sign =1. + local real i = 64. + local real level = 32. + local real mid + local real temp + local real fac = 0. + local integer count = 6 + + if x>0 and (x<1 or x>1) then + if x<1 then + set sign = -1. + set x = 1. / x + endif + if x >= 2. then + set mid = base[7] + loop + set temp = x / mid + exitwhen temp >= 1. and temp < 2. + if x < mid then + set i = i - level + set mid = mid / base[count] + else + set i = i + level + set mid = mid * base[count] + endif + set level = level / 2. + set count = count - 1 + endloop + set fac = i + set x = temp + endif + //根号2 + if x > 1.4142135 then + set x = x / 1.4142135 + set fac = fac + .5 + endif + set res=sign*(fac+ln_taylor(x)*1.442695) + endif + + return res +endfunction + +// 以 10 为底的对数 +// Returns 0 if x <= 0 +function YDWELogarithmLg takes real x returns real + return Log2(x) * 0.3010300 // 1/log2(10) = 0.30102999566398119521373889472449 +endfunction + +// 以 e 为底的对数 +// Returns 0 if x <= 0 +function YDWELogarithmLn takes real x returns real + return Log2(x) * 0.6931472 // 1/log2(e) = 0.69314718055994530941723212145818 +endfunction + +// 以 任意数 为底的对数 +function YDWELogarithmLog takes real a,real x returns real + if a<=0 or (a<=1 and a>=1) then + return 0. + endif + return Log2(x) / Log2(a) +endfunction + +private function onInit takes nothing returns nothing + set base[1] = 2. + set base[2] = 4. + set base[3] = 16. + set base[4] = 256. + set base[5] = 65536. + //过大的数必须用乘法 + set base[6] = 65536. * 65536. //2^32 + set base[7] = base[6] * base[6] //2^64 +endfunction + +endlibrary + +#endif /// YDWELogarithmIncluded diff --git a/jass/YDWEMeatHook.cfg b/jass/YDWEMeatHook.cfg new file mode 100644 index 0000000..08757cc --- /dev/null +++ b/jass/YDWEMeatHook.cfg @@ -0,0 +1 @@ +YDWEMeatHook \ No newline at end of file diff --git a/jass/YDWEMeatHook.j b/jass/YDWEMeatHook.j new file mode 100644 index 0000000..9c77d7d --- /dev/null +++ b/jass/YDWEMeatHook.j @@ -0,0 +1,247 @@ +#ifndef YDWEMeatHookIncluded +#define YDWEMeatHookIncluded + +#include "YDWEBase.j" + +library MeatHook requires YDWEBase +//****************************// +//* - Fetrix_sai *// +//****************************// + #define MOVE_DIST 40.0 + #define KEEP_DIST 50.0 + globals + //private constant real MOVE_DIST = 40. // + //private constant real KEEP_DIST = 50. // + // + private group Except = CreateGroup() + private location Point = Location(0.0, 0.0) + endglobals + + private function GetUnitZ takes unit u returns real + call MoveLocation(Point, GetUnitX(u), GetUnitY(u)) + return (GetUnitFlyHeight(u) + GetLocationZ(Point)) + endfunction + + private function HookAim takes string key, unit pudge, real x, real y, real z returns nothing + local real damage = YDWEGetRealByString(key, "Damage") + local group g = CreateGroup() + local unit f = null + call GroupEnumUnitsInRange(g, x, y, 120., null) + loop + set f = FirstOfGroup(g) + exitwhen f == null + if GetWidgetLife(f) > 0.405 and not(IsUnitType(f, UNIT_TYPE_STRUCTURE)) and not(IsUnitInGroup(f, Except)) and f != pudge then + if (GetUnitX(f)-x)*(GetUnitX(f)-x)+(GetUnitY(f)-y)*(GetUnitY(f)-y)+(GetUnitZ(f)-z)*(GetUnitZ(f)-z) < 14400 then + //* ұӹˣʹغһ~ + set bj_lastAbilityTargetUnit = f + call YDWESyStemAbilityCastingOverTriggerAction(pudge, 4) + call YDWESaveIntegerByString(key, "Switch", 2) + call YDWESaveUnitByString(key, "Target", f) + if IsUnitEnemy(f, GetOwningPlayer(pudge))then + call DestroyEffect(AddSpecialEffectTarget("Objects\\Spawnmodels\\Human\\HumanBlood\\BloodElfSpellThiefBlood.mdl", f, "origin")) + call UnitDamageTarget(pudge, f, damage, true, false, bj_lastSetAttackType, bj_lastSetDamageType, bj_lastSetWeaponType) + endif + call IssueImmediateOrderById(f, 851972) + call GroupAddUnit(Except, f) + exitwhen true + endif + endif + call GroupRemoveUnit(g, f) + set f = null + endloop + call DestroyGroup(g) + set g = null + set f = null + endfunction + + private function Cycle takes nothing returns nothing + local string key = I2S(YDWEH2I(GetExpiredTimer())) + local integer total = YDWEGetIntegerByString(key, "ChainLinkNumber") + local integer size = YDWEGetIntegerByString(key, "ChainLinkNumberMax") + local integer utid = YDWEGetIntegerByString(key, "ChainLinkId") + local integer switch = YDWEGetIntegerByString(key, "Switch") + local unit pudge = YDWEGetUnitByString(key, "Pudge") + local unit target = YDWEGetUnitByString(key, "Target") + local real dist = YDWEGetRealByString(key, "Distance") + local real l + local real f + local real x + local real y + local real xvel + local real yvel + local unit array part + local integer i = 0 + + loop + exitwhen i == total + set part[i] = YDWEGetUnitByString(key, "ChainLinks"+I2S(i)) + set i = i + 1 + endloop + + //*===== Hook Target =====* + if target == null then + call HookAim(key, pudge, GetUnitX(part[0]), GetUnitY(part[0]), GetUnitZ(part[0])) + else + call SetUnitX(target, GetUnitX(part[0])) + call SetUnitY(target, GetUnitY(part[0])) + if GetLocalPlayer() == GetOwningPlayer(target) then + call SelectUnit(target, false) + endif + endif + + //*===== Stretch =====* + if switch == 1 then + //*===== Chain Head =====* + set x = GetUnitX(part[0]) + YDWEGetRealByString(key, "VelocityX") + set y = GetUnitY(part[0]) + YDWEGetRealByString(key, "VelocityY") + call SetUnitX(part[0], x) + call SetUnitY(part[0], y) + //call SetUnitFacing(part[i], YDWEGetRealByString(key, "Face")) + if YDWECoordinateX(x) != x or YDWECoordinateY(y) != y then + call YDWESaveIntegerByString(key, "Switch", 2) + endif + //*===== Chain Links =====* + set i = 1 + loop + exitwhen i == total + set f = Atan2(GetUnitY(part[i-1]) - GetUnitY(part[i]), GetUnitX(part[i-1]) - GetUnitX(part[i])) + call SetUnitX(part[i], GetUnitX(part[i]) + Cos(f) * MOVE_DIST) + call SetUnitY(part[i], GetUnitY(part[i]) + Sin(f) * MOVE_DIST) + call SetUnitFacing(part[i], f * bj_RADTODEG) + set i = i + 1 + endloop + elseif switch == 2 then + set l = (KEEP_DIST + MOVE_DIST) * (KEEP_DIST + MOVE_DIST) + set i = total - 1 + //*===== Move Back =====* + loop + exitwhen i < 0 + if part[i+1] == null then + set xvel = GetUnitX(part[i]) - GetUnitX(pudge) + set yvel = GetUnitY(part[i]) - GetUnitY(pudge) + if xvel * xvel + yvel * yvel <= l then + call RemoveUnit(part[i]) + set part[i] = null + set total = total - 1 + call YDWESaveIntegerByString(key, "ChainLinkNumber", total) + endif + else + set xvel = GetUnitX(part[i]) - GetUnitX(part[i+1]) + set yvel = GetUnitY(part[i]) - GetUnitY(part[i+1]) + endif + + if part[i] != null then + set f = Atan2(yvel, xvel) + call SetUnitX(part[i], GetUnitX(part[i]) - Cos(f) * MOVE_DIST) + call SetUnitY(part[i], GetUnitY(part[i]) - Sin(f) * MOVE_DIST) + call SetUnitFacing(part[i], f * bj_RADTODEG) + endif + + set i = i - 1 + endloop + + if total < 1 then + call YDWESaveIntegerByString(key, "Switch", 0) + set switch = 0 + endif + endif + + //*===== Fill Chain =====* + if switch > 0 /*and size >= total*/ then + set x = GetUnitX(part[total-1]) + set y = GetUnitY(part[total-1]) + set xvel = x - GetUnitX(pudge) + set yvel = y - GetUnitY(pudge) + set l = SquareRoot(xvel * xvel + yvel * yvel) + + if l > dist + KEEP_DIST then + set f = bj_RADTODEG * Atan2(yvel, xvel) + set xvel = xvel * (dist / l) + set yvel = yvel * (dist / l) + loop + exitwhen l < dist + if total > size then + call YDWESaveIntegerByString(key, "Switch", 2) + exitwhen true + endif + set x = x - xvel + set y = y - yvel + set part[total] = CreateUnit(GetOwningPlayer(pudge), utid, x, y, f) + call YDWESaveUnitByString(key, "ChainLinks"+I2S(total), part[total]) + set total = total + 1 + set l = l - dist + endloop + call YDWESaveIntegerByString(key, "ChainLinkNumber", total) + endif + + if l > KEEP_DIST + MOVE_DIST * 2 then + set l = (KEEP_DIST + MOVE_DIST) / dist + set xvel = xvel * l + set yvel = yvel * l + call SetUnitX(part[total-1], GetUnitX(pudge) + xvel) + call SetUnitY(part[total-1], GetUnitY(pudge) + yvel) + call SetUnitFacing(part[total-1], Atan2(yvel, xvel) * bj_RADTODEG) + + set i = total - 2 + loop + exitwhen i < 0 + set xvel = GetUnitX(part[i]) - GetUnitX(part[i+1]) + set yvel = GetUnitY(part[i]) - GetUnitY(part[i+1]) + set l = dist / SquareRoot(xvel * xvel + yvel * yvel) + call SetUnitX(part[i], GetUnitX(part[i+1]) + xvel * l) + call SetUnitY(part[i], GetUnitY(part[i+1]) + yvel * l) + call SetUnitFacing(part[i], Atan2(yvel, xvel) * bj_RADTODEG) + set i = i - 1 + endloop + endif + endif + + //*===== Release =====* + if switch == 0 then + call YDWESyStemAbilityCastingOverTriggerAction(pudge, 5) + call YDWEFlushMissionByString(key) + call GroupRemoveUnit(Except, target) + call PauseTimer(GetExpiredTimer()) + call DestroyTimer(GetExpiredTimer()) + endif + + set i = 0 + loop + exitwhen i >= total + set part[i] = null + set i = i + 1 + endloop + + set target = null + set pudge = null + set key = "" + endfunction + + function YDWEMeatHook takes unit pudge, location point, integer headid, integer chainid, real length, real distance, real damage, real timeout returns nothing + local real f = Atan2(GetLocationY(point) - GetUnitY(pudge), GetLocationX(point) - GetUnitX(pudge)) + local real x = Cos(f) * KEEP_DIST + local real y = Sin(f) * KEEP_DIST + local unit u = CreateUnit(GetOwningPlayer(pudge), headid, GetUnitX(pudge) + x, GetUnitY(pudge) + y, f * bj_RADTODEG) + local timer t = CreateTimer() + // *===== Save =====* + call YDWESaveUnitByString(I2S(YDWEH2I(t)), "Pudge", pudge) + call YDWESaveUnitByString(I2S(YDWEH2I(t)), "ChainLinks"+I2S(0), u) + call YDWESaveRealByString(I2S(YDWEH2I(t)), "VelocityX", x * (MOVE_DIST / KEEP_DIST)) + call YDWESaveRealByString(I2S(YDWEH2I(t)), "VelocityY", y * (MOVE_DIST / KEEP_DIST)) + call YDWESaveRealByString(I2S(YDWEH2I(t)), "Face", f * bj_RADTODEG) + call YDWESaveRealByString(I2S(YDWEH2I(t)), "Distance", distance) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)), "Switch", 1) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)), "ChainLinkId", chainid) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)), "ChainLinkNumberMax", R2I(length/distance)) + call YDWESaveIntegerByString(I2S(YDWEH2I(t)), "ChainLinkNumber", 1) + call YDWESaveRealByString(I2S(YDWEH2I(t)), "Damage", damage) + call TimerStart(t, timeout, true, function Cycle) + // *===== end =====* + set u = null + set t = null + endfunction + + #undef MOVE_DIST + #undef KEEP_DIST +endlibrary +#endif /// YDWEMeatHookIncluded diff --git a/jass/YDWEMemoryLeakHelper.cfg b/jass/YDWEMemoryLeakHelper.cfg new file mode 100644 index 0000000..fdca7f4 --- /dev/null +++ b/jass/YDWEMemoryLeakHelper.cfg @@ -0,0 +1,6 @@ +YDWEMemoryLeakHelperMapIsOpenMemoryLeakHelper +YDWEMemoryLeakHelperProtectLastCaughtHandle +YDWEMemoryLeakHelperProtectLocation +YDWEMemoryLeakHelperProtectGroup +YDWEMemoryLeakHelperProtectEffect +YDWEMemoryLeakHelperDisplayLeaks \ No newline at end of file diff --git a/jass/YDWEMemoryLeakHelper.j b/jass/YDWEMemoryLeakHelper.j new file mode 100644 index 0000000..b0e6ce4 --- /dev/null +++ b/jass/YDWEMemoryLeakHelper.j @@ -0,0 +1,638 @@ +#ifndef YDWEMemoryLeakHelperIncluded +#define YDWEMemoryLeakHelperIncluded + +#include "YDWEBase.j" + + + +//library ValueIndexing initializer Init requires YDWEBase +library MemoryLeakHelper initializer Init requires YDWEBase + globals + private constant real HASH_DECAY_TIME = 500. + private constant integer CLEAR_HASH_COUNT = 8190 + private integer HashNumber = 0 + private integer array HashData + private integer array HashHash + private integer array HashPlace + private real array CreationTime + + private integer TempHashNumber = 0 + private integer array TempHashHash + private integer array TempHashPlace + private integer array TempHashData + private real array TempCreationTime + + private integer LastHashedValue = 0 + private integer LastIndex = 0 + private real GameTime = 0. + private timer GameTimeTimer = CreateTimer() + private constant real GAMETIME_TIMER_INTERVAL = 30. + private constant integer key = 0 + + private constant integer MAX_INSTANCES=8100 //400000 + + // The system fires when you do something that creates a leak. + // The data that cause leak are saved in a variable then. + // And every CLEAN_UP_INTERVAL seconds those data are destroyed. + // This shouldn't be too high, or too low. + private constant real CLEAN_UP_INTERVAL = 10 + // If this is set to true, the system will work more slowly (but you wont notice) + // and count, how much memory this system was able to save. + // This value is display by the function DisplayLeaks() then. + // WARNING: This sucks a lot of performance. I would ONLY use it when you want + // to test, if this is useful for your map. Later set it to false. + private constant boolean DISPLAY_SAVED_MEMORY = true + // The Data are only cleaned up, when that many handles were caught + private constant integer MIN_LEAK_NUMBER = 1750 + // How often are data passed to the destroyer? + // Leaks stay for a random time between CLEAN_UP_INTERVAL and CLEAN_UP_INTERVAL+PASS_INTERVAL + // in the game + private constant real PASS_INTERVAL = 2.5 + // Memory leaks occur pretty frequently. When a leak is caught it is saved in + // an array. But the array can't have more than MAX_LEAK_INSTANCES instances, so + // if more than MAX_LEAK_INSTANCES memory leaks occur during a destroy interval, + // the system fails. + private constant integer MAX_LEAK_INSTANCES = 60000 + endglobals + + private function GetElapsedGameTime takes nothing returns real + return GameTime + TimerGetElapsed(GameTimeTimer) + endfunction + + private function UpdateGameTime takes nothing returns nothing + set GameTime = GameTime + GAMETIME_TIMER_INTERVAL + endfunction + + private struct Index + static method DestroyHashes takes nothing returns nothing + local real gt = GetElapsedGameTime + local Index ind + + // Well, due to the nature of this system, the looking of the code sucks. + loop + exitwhen HashNumber == 0 + if gt - CreationTime[HashNumber] > HASH_DECAY_TIME then + set ind = HashHash[HashNumber] + call ind.destroy() + call YDWEFlushStoredIntegerByInteger(key,HashData[HashNumber]) + else + set TempHashNumber = TempHashNumber + 1 + set TempHashData[TempHashNumber] = HashData[HashNumber] + set TempHashHash[TempHashNumber] = HashHash[HashNumber] + set TempHashPlace[TempHashNumber] = HashPlace[HashNumber] + set TempCreationTime[TempHashNumber] = CreationTime[HashNumber] + endif + set HashData[HashNumber] = 0 + set HashHash[HashNumber] = 0 + set HashPlace[HashNumber] = 0 + set CreationTime[HashNumber] = 0. + set HashNumber = HashNumber - 1 + endloop + + loop + exitwhen TempHashNumber == 0 + set HashNumber = HashNumber + 1 + set HashData[HashNumber] = TempHashData[TempHashNumber] + set HashHash[HashNumber] = TempHashHash[TempHashNumber] + set HashPlace[HashNumber] = TempHashPlace[TempHashNumber] + set TempHashData[TempHashNumber] = 0 + set TempHashNumber = TempHashNumber - 1 + endloop + + endmethod + + static method GetHash takes integer value returns integer + local integer int = YDWEGetIntegerByInteger(key,value) + + if int == 0 then + set int = Index.create() + call YDWESaveIntegerByInteger(key,value,int) + + set HashNumber = HashNumber + 1 + set HashPlace[int] = HashNumber + set HashData[HashNumber] = value + set HashHash[HashNumber] = int + set CreationTime[HashNumber] = GetElapsedGameTime() + + if HashNumber >= CLEAR_HASH_COUNT then + call DestroyHashes() + endif + endif + + set LastHashedValue = value + set LastIndex = int + + return int + endmethod + endstruct + + private struct GTable[MAX_INSTANCES] + method reset takes nothing returns nothing + call YDWEFlushMissionByInteger(0) + call YDWEFlushMissionByInteger(integer(this)) + endmethod + + private method onDestroy takes nothing returns nothing + call this.reset() + endmethod + endstruct + + private struct HandleTable extends GTable + method operator [] takes handle key returns integer + return YDWEGetIntegerByInteger(integer(this), YDWEH2I(key)) + endmethod + + method operator []= takes handle key, integer value returns nothing + call YDWESaveIntegerByInteger(integer(this), YDWEH2I(key), value) + endmethod + + method flush takes handle key returns nothing + call YDWEFlushStoredIntegerByInteger(integer(this), YDWEH2I(key)) + endmethod + + method exists takes handle key returns boolean + return YDWEHaveSavedIntegerByInteger(integer(this), YDWEH2I(key)) + endmethod + + static method flush2D takes string firstkey returns nothing + call HandleTable(- YDWES2I(firstkey)).reset() + endmethod + + static method operator [] takes string firstkey returns HandleTable + return HandleTable(- YDWES2I(firstkey)) + endmethod + endstruct + +//=========================================================================== +// Trigger: MemoryLeakHelper +// +// //hook GetLocationX CatchLocation +// //hook GetLocationY CatchLocation +// //hook ForGroup FG +// 129k +// 3,02 + 43,32 + 697,86 +// 744 +//=========================================================================== + + + globals + private HandleTable IndexData + private HandleTable IsSaved + + private integer CaughtLocationLeaks = 0 + private location array LocationLeakData[MAX_LEAK_INSTANCES] + private integer LocationDestroyCount = 0 + private location array LocationDestroyData[MAX_LEAK_INSTANCES] + + private integer CaughtEffectLeaks = 0 + private effect array EffectLeakData[MAX_LEAK_INSTANCES] + private integer EffectDestroyCount = 0 + private effect array EffectDestroyData[MAX_LEAK_INSTANCES] + + private integer CaughtGroupLeaks = 0 + private group array GroupLeakData[MAX_LEAK_INSTANCES] + private integer GroupDestroyCount = 0 + private group array GroupDestroyData[MAX_LEAK_INSTANCES] + + + private integer DestroyedLeaks = 0 + private integer CaughtLeaks = 0 + private integer DestroyedLeaksUser = 0 + private handle LastCaught + private timer PassTimer = CreateTimer() + private timer CleanTimer = CreateTimer() + private timer DelayTimer = CreateTimer() + private boolean IsDestroying = false + private real SavedMemory = 0. + private real LastCheckedGroupMemoryUsage = 0. + private boolean DestroyThreadRunning = false + private boolean Disabled = false + + // These values were found out in a big leak test by gekko. + private constant real LOCATION_MEMORY_USAGE = 0.361 + private constant real GROUP_MEMORY_USAGE = 0.62 + private constant real GROUP_UNIT_MEMORY_USAGE = 0.040 + private constant real EFFECT_MEMORY_USAGE = 11.631 + private constant real REMOVED_EFFECT_MEMORY_USAGE = 0.066 + endglobals + + globals + // 用于判断是否开启内存排泄帮助 + private boolean IsOpenMemoryLeakHelper = false + private boolean IsDisplayMemoryLeakHelper = false + endglobals + + function YDWEMemoryLeakHelperGetLastCaughtHandle takes nothing returns handle + return LastCaught + endfunction + + function YDWEMemoryLeakHelperProtectHandle takes handle h returns nothing + set IsSaved[h] = 1 + endfunction + + function YDWEMemoryLeakHelperProtectVariable takes handle h returns nothing + set IsSaved[h] = 1 + endfunction + + private function EnableMMH takes nothing returns nothing + set Disabled = false + endfunction + + function YDWEMemoryLeakHelperDelayMMH takes nothing returns nothing + set Disabled = true + call TimerStart(DelayTimer,0.00,false,function EnableMMH) + endfunction + + function YDWEMemoryLeakHelperDisplayLeaks takes nothing returns nothing + local location loc=null + if IsDisplayMemoryLeakHelper == false then + call CreateNUnitsAtLoc( 1, 'hfoo', Player(15), GetRectCenter(GetPlayableMapRect()), bj_UNIT_FACING ) + call RemoveUnit(bj_lastCreatedUnit) + set loc = GetRectCenter(GetPlayableMapRect()) + call CreateNUnitsAtLoc( 1, 'hfoo', Player(15), loc, bj_UNIT_FACING ) + call RemoveUnit(bj_lastCreatedUnit) + call RemoveLocation(loc) + set loc=null + set IsDisplayMemoryLeakHelper=true + endif + call ClearTextMessages() + call BJDebugMsg("======= 自动排泄系统 =======") + call BJDebugMsg("排除的泄漏"+I2S(DestroyedLeaks)) + call BJDebugMsg("用户手动排除的泄漏"+I2S(DestroyedLeaksUser)) + call BJDebugMsg("系统排泄比例: "+R2S(I2R(DestroyedLeaks)/I2R(DestroyedLeaks+DestroyedLeaksUser)*100.)+"%") + call BJDebugMsg("作者排泄比例"+R2S(I2R(DestroyedLeaksUser)/I2R(DestroyedLeaks+DestroyedLeaksUser)*100.)+"%") + call BJDebugMsg("下次排除的泄漏"+I2S(MIN_LEAK_NUMBER-CaughtLeaks)) + call BJDebugMsg(" === 待排除的泄漏 === ") + call BJDebugMsg(" 单位组泄漏"+I2S(GroupDestroyCount)) + call BJDebugMsg(" 点泄漏"+I2S(LocationDestroyCount)) + call BJDebugMsg(" 特效泄漏: "+I2S(EffectDestroyCount)) + call BJDebugMsg(" === 还未排除的泄漏=== ") + call BJDebugMsg(" 单位组泄漏"+I2S(CaughtGroupLeaks)) + call BJDebugMsg(" 点泄漏"+I2S(CaughtLocationLeaks)) + call BJDebugMsg(" 特效泄漏: "+I2S(CaughtEffectLeaks)) + call BJDebugMsg("下次排泄时间: "+I2S(R2I(TimerGetRemaining(PassTimer)+0.5))+" seconds.") + call BJDebugMsg("======= 自动排泄系统 =======") + call BJDebugMsg("排除泄漏"+I2S(DestroyedLeaks)) + //if DISPLAY_SAVED_MEMORY then + call BJDebugMsg("自动排泄系统释放的总内存为 "+R2S(SavedMemory)+" kb.") + //endif + call BJDebugMsg("================================") + endfunction + + + private function GroupGetMemoryUsageEnum takes nothing returns nothing + set LastCheckedGroupMemoryUsage = LastCheckedGroupMemoryUsage + GROUP_UNIT_MEMORY_USAGE + endfunction + + private function GroupGetMemoryUsage takes group g returns real + set LastCheckedGroupMemoryUsage = 0. + call ForGroup(g,function GroupGetMemoryUsageEnum) + return LastCheckedGroupMemoryUsage + GROUP_MEMORY_USAGE + endfunction + + private function CatchLocation takes location l returns nothing + set LastCaught = l + + if Disabled then + return + elseif CaughtLocationLeaks == MAX_LEAK_INSTANCES then + debug call BJDebugMsg("MemoryLeakHelper: Failed to store leak because of size limitations") + return + endif + + if IndexData.exists(l) == false then + //call BJDebugMsg("Caught Location") + set CaughtLocationLeaks = CaughtLocationLeaks + 1 + set LocationLeakData[CaughtLocationLeaks] = l + set IndexData[l] = CaughtLocationLeaks + endif + endfunction + + private function AddToLocationDestroyQueue takes location l returns nothing + set LocationDestroyCount = LocationDestroyCount + 1 + set LocationDestroyData[LocationDestroyCount] = l + set IndexData[l] = LocationDestroyCount*-1 // Put his to negative, so we know that this is used in the DestroyQueue now. + endfunction + + private function ReleaseLocation takes location l returns nothing + local integer index + if IsDestroying == false and IndexData.exists(l) then + set index = IndexData[l] + // If this is true, the index wasn't put to a destroy queue yet. + if index > 0 then + set LocationLeakData[index] = LocationLeakData[CaughtLocationLeaks] + set CaughtLocationLeaks = CaughtLocationLeaks - 1 + else + set index = index * -1 + set LocationDestroyData[index] = LocationDestroyData[LocationDestroyCount] + set LocationDestroyCount = LocationDestroyCount - 1 + endif + call IndexData.flush(l) + set DestroyedLeaksUser = DestroyedLeaksUser + 1 + endif + endfunction + + private function CatchGroup takes group l returns nothing + set LastCaught = l + + if Disabled then + return + elseif CaughtGroupLeaks == MAX_LEAK_INSTANCES then + debug call BJDebugMsg("MemoryLeakHelper: Failed to store leak because of size limitations") + return + endif + + if IndexData.exists(l) == false then + //call BJDebugMsg("Caught Group") + set CaughtGroupLeaks = CaughtGroupLeaks + 1 + set GroupLeakData[CaughtGroupLeaks] = l + set IndexData[l] = CaughtGroupLeaks + endif + endfunction + + private function AddToGroupDestroyQueue takes group l returns nothing + set GroupDestroyCount = GroupDestroyCount + 1 + set GroupDestroyData[GroupDestroyCount] = l + set IndexData[l] = GroupDestroyCount*-1 // Put his to negative, so we know that this is used in the DestroyQueue now. + endfunction + + private function ReleaseGroup takes group l returns nothing + local integer index + if IsDestroying == false and IndexData.exists(l) then + set index = IndexData[l] + // If this is true, the index wasn't put to a destroy queue yet. + if index > 0 then + set GroupLeakData[index] = GroupLeakData[CaughtGroupLeaks] + set CaughtGroupLeaks = CaughtGroupLeaks - 1 + else + set index = index * -1 + set GroupDestroyData[index] = GroupDestroyData[GroupDestroyCount] + set GroupDestroyCount = GroupDestroyCount - 1 + endif + call IndexData.flush(l) + set DestroyedLeaksUser = DestroyedLeaksUser + 1 + endif + endfunction + + private function CatchEffect takes effect l returns nothing + set LastCaught = l + + if Disabled then + return + elseif CaughtEffectLeaks == MAX_LEAK_INSTANCES then + debug call BJDebugMsg("MemoryLeakHelper: Failed to store leak because of size limitations") + return + endif + + if IndexData.exists(l) == false then + //call BJDebugMsg("Caught Effect") + set CaughtEffectLeaks = CaughtEffectLeaks + 1 + set EffectLeakData[CaughtEffectLeaks] = l + set IndexData[l] = CaughtEffectLeaks + endif + endfunction + + private function AddToEffectDestroyQueue takes effect l returns nothing + set EffectDestroyCount = EffectDestroyCount + 1 + set EffectDestroyData[EffectDestroyCount] = l + set IndexData[l] = EffectDestroyCount*-1 // Put his to negative, so we know that this is used in the DestroyQueue now. + endfunction + + private function ReleaseEffect takes effect l returns nothing + local integer index + if IsDestroying == false and IndexData.exists(l) then + set index = IndexData[l] + // If this is true, the index wasn't put to a destroy queue yet. + if index > 0 then + set EffectLeakData[index] = EffectLeakData[CaughtEffectLeaks] + set CaughtEffectLeaks = CaughtEffectLeaks - 1 + else + set index = index * -1 + set EffectDestroyData[index] = EffectDestroyData[EffectDestroyCount] + set EffectDestroyCount = EffectDestroyCount - 1 + endif + call IndexData.flush(l) + set DestroyedLeaksUser = DestroyedLeaksUser + 1 + endif + endfunction + + private function DestroyMemoryLeaks takes nothing returns nothing + set IsDestroying = true + + set DestroyedLeaks = DestroyedLeaks + GroupDestroyCount + loop + exitwhen GroupDestroyCount == 0 + + if DISPLAY_SAVED_MEMORY then + set SavedMemory = SavedMemory + GroupGetMemoryUsage(GroupDestroyData[GroupDestroyCount]) + endif + + call DestroyGroup(GroupDestroyData[GroupDestroyCount]) + call IndexData.flush(GroupDestroyData[GroupDestroyCount]) + set GroupDestroyCount = GroupDestroyCount - 1 + endloop + + set DestroyedLeaks = DestroyedLeaks + LocationDestroyCount + loop + exitwhen LocationDestroyCount == 0 + + if DISPLAY_SAVED_MEMORY then + set SavedMemory = SavedMemory + LOCATION_MEMORY_USAGE + endif + + call RemoveLocation(LocationDestroyData[LocationDestroyCount]) + call IndexData.flush(LocationDestroyData[LocationDestroyCount]) + set LocationDestroyCount = LocationDestroyCount - 1 + endloop + + set DestroyedLeaks = DestroyedLeaks + EffectDestroyCount + loop + exitwhen EffectDestroyCount == 0 + + if DISPLAY_SAVED_MEMORY then + set SavedMemory = SavedMemory + EFFECT_MEMORY_USAGE + endif + + call DestroyEffect(EffectDestroyData[EffectDestroyCount]) + call IndexData.flush(EffectDestroyData[EffectDestroyCount]) + set EffectDestroyCount = EffectDestroyCount - 1 + endloop + + set IsDestroying = false + set DestroyThreadRunning = false + //call StartPassTimer.execute() // Strange. This causes bugs sometimes and the function isn't called + // This is slower, but safe. + call ExecuteFunc("YDWEMemoryLeakStartPassTimer") + endfunction + + private function StartDestroyThread takes nothing returns nothing + if DestroyThreadRunning == false then + set DestroyThreadRunning = true + call TimerStart(CleanTimer,CLEAN_UP_INTERVAL,false,function DestroyMemoryLeaks) + call PauseTimer(PassTimer) + endif + endfunction + + // hook DoNothing StartDestroyThread + + // We want that the user doesn't have to protect too many variables, but all the variables that are filled longer + // than CLEAN_UP_INTERVAL seconds. But what, when the handle thing is put into the destroy stack and the next destroy is + // in 5 seconds, because the last one was 15 seconds ago? We can simply avoid something like that by using a 2-step-system + // that goes sure, the handle is only destroyed when it passed the CLEAN_UP_INTERVAL twice. + // Having two kinds of variables is simply easier and more efficient than having another variable that refers to + // how many times the handle passed the timer; If it isn't passed/cleared in the Interval then, we can't loop + // that easily through the data and we'd have to fix gaps later; That would suck a lot of performacne. + private function PassMemoryLeaks takes nothing returns nothing + set CaughtLeaks = CaughtLeaks + CaughtGroupLeaks + loop + exitwhen CaughtGroupLeaks < 1 + if IsSaved.exists(GroupLeakData[CaughtGroupLeaks]) == false and GroupLeakData[CaughtGroupLeaks] != null then + call AddToGroupDestroyQueue(GroupLeakData[CaughtGroupLeaks]) + endif + set GroupLeakData[CaughtGroupLeaks] = null + set CaughtGroupLeaks = CaughtGroupLeaks - 1 + endloop + + set CaughtLeaks = CaughtLeaks + CaughtLocationLeaks + loop + exitwhen CaughtLocationLeaks < 1 + if IsSaved.exists(LocationLeakData[CaughtLocationLeaks]) == false and LocationLeakData[CaughtLocationLeaks] != null then + call AddToLocationDestroyQueue(LocationLeakData[CaughtLocationLeaks]) + endif + set LocationLeakData[CaughtLocationLeaks] = null + set CaughtLocationLeaks = CaughtLocationLeaks - 1 + endloop + + set CaughtLeaks = CaughtLeaks + CaughtEffectLeaks + loop + exitwhen CaughtEffectLeaks < 1 + if IsSaved.exists(EffectLeakData[CaughtEffectLeaks]) == false and EffectLeakData[CaughtEffectLeaks] != null then + call AddToEffectDestroyQueue(EffectLeakData[CaughtEffectLeaks]) + endif + set EffectLeakData[CaughtEffectLeaks] = null + set CaughtEffectLeaks = CaughtEffectLeaks - 1 + endloop + + if CaughtLeaks > MIN_LEAK_NUMBER then + set CaughtLeaks = 0 + //call BJDebugMsg("Caught Leaks: "+I2S(MIN_LEAK_NUMBER)) + //call BJDebugMsg("Now start Destroy Timer") + set DestroyThreadRunning = true + call TimerStart(CleanTimer,CLEAN_UP_INTERVAL,false,function DestroyMemoryLeaks) + // We have to pause this timer a bit; Otherwise it would break the CLEAN_UP_INTERVAL rule. + call PauseTimer(PassTimer) + endif + + endfunction + + // ================================= + // ============= Usage ============= + // ================================= + + private function PP takes location source, real dist, real angle returns nothing + call CatchLocation(source) + endfunction + + private function CU takes integer count, integer unitId, player p, location l, real face returns nothing + call CatchLocation(l) + endfunction + + private function IPO takes unit k, string order, location l returns nothing + call CatchLocation(l) + endfunction + + private function SUP takes unit who, location l returns nothing + call CatchLocation(l) + endfunction + + private function SUF takes unit who, location l, real dur returns nothing + call CatchLocation(l) + endfunction + + private function GUR takes real radius, location l, boolexpr filter returns nothing + call CatchLocation(l) + endfunction + + private function CUF takes integer count, integer unitId, player whichPlayer, location loc, location lookAt returns nothing + call CatchLocation(loc) + call CatchLocation(lookAt) + endfunction + + hook PolarProjectionBJ PP + hook CreateNUnitsAtLoc CU + hook CreateNUnitsAtLocFacingLocBJ CUF + hook IssuePointOrderLocBJ IPO + hook SetUnitPositionLoc SUP + hook SetUnitFacingToFaceLocTimed SUF + hook GetUnitsInRangeOfLocMatching GUR + + hook RemoveLocation ReleaseLocation + + private function FG takes group g, code callback returns nothing + call CatchGroup(g) + endfunction + + hook ForGroupBJ FG // :D This should catch all GUI usages for groups. + hook GroupPickRandomUnit CatchGroup + hook CountUnitsInGroup CatchGroup + + hook DestroyGroup ReleaseGroup + + private function ASETU takes string bla, widget d, string blu returns nothing + // We can not catch THIS effect, but the effect that was created before. + // So we can destroy all SpecialEffects excpet one. + call CatchEffect(GetLastCreatedEffectBJ()) + endfunction + + private function ASE takes location where, string modelName returns nothing + call CatchLocation(where) + call CatchEffect(GetLastCreatedEffectBJ()) + endfunction + + hook AddSpecialEffectLocBJ ASE + hook AddSpecialEffectTargetUnitBJ ASETU + hook DestroyEffect ReleaseEffect + hook DestroyEffectBJ ReleaseEffect + + // When I want to make the timer run the PassMemoryLeaks things, I have to use an .execute command which requires an extra func. + function YDWEMemoryLeakStartPassTimer takes nothing returns nothing + //call BJDebugMsg("Restarting PassTimer") + call TimerStart(PassTimer,PASS_INTERVAL,true,function PassMemoryLeaks) + endfunction + + // 开启接口函数 + function YDWEMemoryLeakHelperMapIsOpenMemoryLeakHelper takes boolean IsOpenMemoryLeak returns nothing + set IsOpenMemoryLeakHelper = IsOpenMemoryLeak + call PauseTimer(PassTimer) + if ( IsOpenMemoryLeak ) then + call YDWEMemoryLeakStartPassTimer() + endif + endfunction + + function YDWEMemoryLeakHelperProtectLastCaughtHandle takes nothing returns nothing + call YDWEMemoryLeakHelperProtectHandle(YDWEMemoryLeakHelperGetLastCaughtHandle()) + endfunction + + function YDWEMemoryLeakHelperProtectLocation takes location loc returns nothing + call YDWEMemoryLeakHelperProtectHandle(loc) + endfunction + + function YDWEMemoryLeakHelperProtectGroup takes group g returns nothing + call YDWEMemoryLeakHelperProtectHandle(g) + endfunction + + function YDWEMemoryLeakHelperProtectEffect takes effect e returns nothing + call YDWEMemoryLeakHelperProtectHandle(e) + endfunction + + private function Init takes nothing returns nothing + set IndexData = HandleTable.create() + set IsSaved = HandleTable.create() + + //call YDWEMemoryLeakStartPassTimer() + call TimerStart(GameTimeTimer,GAMETIME_TIMER_INTERVAL,true,function UpdateGameTime) + endfunction + +endlibrary + +#endif /// YDWEMemoryLeakHelperIncluded diff --git a/jass/YDWENewItemsFormula.cfg b/jass/YDWENewItemsFormula.cfg new file mode 100644 index 0000000..81510fb --- /dev/null +++ b/jass/YDWENewItemsFormula.cfg @@ -0,0 +1,3 @@ +GetLastCombinedItem +YDWENewItemsFormula +YDWESyStemItemCombineRegistTrigger diff --git a/jass/YDWENewItemsFormula.j b/jass/YDWENewItemsFormula.j new file mode 100644 index 0000000..c46ab9a --- /dev/null +++ b/jass/YDWENewItemsFormula.j @@ -0,0 +1,568 @@ +#ifndef YDWENewItemsFormulaIncluded +#define YDWENewItemsFormulaIncluded + +#include "YDWEBase.j" + + +library YDWEStringFormula initializer Init requires YDWEBase + +globals + item bj_lastCombinedItem=null +endglobals + +function GetLastCombinedItem takes nothing returns item + return bj_lastCombinedItem +endfunction + +//=========================================================================== +//Ʒϳ +globals + private trigger array ItemCombineEventQueue + private integer ItemCombineEventNumber = 0 +endglobals + +function YDWESyStemItemCombineTriggerAction takes nothing returns nothing + local integer i = 0 + loop + exitwhen i >= ItemCombineEventNumber + if ItemCombineEventQueue[i] != null and TriggerEvaluate(ItemCombineEventQueue[i]) and IsTriggerEnabled(ItemCombineEventQueue[i]) then + call TriggerExecute(ItemCombineEventQueue[i]) + endif + set i = i + 1 + endloop +endfunction + +//GetLastMovedItemInItemSlot +//=========================================================================== +//Ʒϳ¼ +//=========================================================================== +function YDWESyStemItemCombineRegistTrigger takes trigger trg returns nothing + set ItemCombineEventQueue[ItemCombineEventNumber] = trg + set ItemCombineEventNumber = ItemCombineEventNumber + 1 +endfunction + + private struct Inventory + method reset takes nothing returns nothing + call YDWEFlushMissionByString("YDWEStringFormula."+I2S(this)) + endmethod + + method onDestroy takes nothing returns nothing + call YDWEFlushMissionByString("YDWEStringFormula."+I2S(this)) + endmethod + endstruct + + private struct StringTable extends Inventory + method operator [] takes string key returns integer + return YDWEGetIntegerByString("YDWEStringFormula."+I2S(this), key) + endmethod + + method operator []= takes string key, integer value returns nothing + call YDWESaveIntegerByString("YDWEStringFormula."+I2S(this), key, value) + endmethod + + method flush takes string key returns nothing + call YDWEFlushStoredIntegerByString("YDWEStringFormula."+I2S(this), key) + endmethod + + method exists takes string key returns boolean + return YDWEHaveSavedIntegerByString("YDWEStringFormula."+I2S(this), key) + endmethod + endstruct + +//*************************************************************** +//* StringFormula 2.0 - Fetrix_sai +//* ------------ +//* +//*************************************************************** + + private keyword ItemIdMatrix + private keyword FormulaMatrix + private keyword Sorting + + globals + private constant integer MAX_INSTANCES = 8100 + private constant integer SEGMENT_LENGTH = 4 + endglobals + + private function Convert takes integer value, integer length returns string + local string Char = I2S(value) + local integer slen = StringLength(Char) + + loop + exitwhen slen >= length + set Char = "0" + Char + set slen = slen + 1 + endloop + + return Char + endfunction + + +//////////////////////////////////////////////////////////// +//////////////////// __ItemId Matrix__ ///////////////////// + + private struct ItemIdMatrix extends array [MAX_INSTANCES] + + static StringTable Data + static integer Total = 1 + integer itemId + + string keyStr + integer keyLen + + static method get takes integer id returns thistype + return .Data[I2S(id)] + endmethod + + static method exists takes integer id returns boolean + return .Data.exists(I2S(id)) + endmethod + + method sub takes integer segment returns integer + local integer start = .keyLen * segment + 1 + return S2I(SubString(.keyStr, start, (start + .keyLen))) + endmethod + + static method assigns takes integer id returns thistype + local thistype this = 0 + + if id == null or id == 0 then + return 0 + endif + + set this = thistype.get(id) + + if integer(this) > 0 then + return this + endif + + set this = thistype[.Total] + set this.itemId = id + set this.keyStr = I2S(SEGMENT_LENGTH) + set this.keyLen = SEGMENT_LENGTH + set .Data[I2S(id)] = integer(this) + set .Total = .Total + 1 + return this + endmethod + + method memory takes string key returns nothing + set .keyStr = .keyStr + key + //debug call BJDebugMsg("|cff00ff00KEY: |r" + .keyStr) + endmethod + + private static method onInit takes nothing returns nothing + set .Data = StringTable.create() + endmethod + + endstruct + +////////////////// __End of ItemId Matrix__ //////////////// +//////////////////////////////////////////////////////////// + + + +//////////////////////////////////////////////////////////// +//////////////////// __Formula Matrix__ //////////////////// + + globals + private FormulaMatrix FormulaData = 0 + endglobals + + private struct FormulaMatrix extends array [MAX_INSTANCES] + + static StringTable Data + static integer Total = 1 + + string formula + integer segmLen + + string model + string message + integer chance + boolean delete + + static method exists takes string s returns boolean + return .Data.exists(s) + endmethod + + method sub takes integer segment returns integer + local integer start = .segmLen * segment + 1 + return S2I(SubString(.formula, start, (start + .segmLen))) + endmethod + + static method memory takes integer lingth, string formStr, ItemIdMatrix eventually returns thistype + local thistype this = 0 + + if FormulaMatrix.exists(formStr) then + //debug call BJDebugMsg("|cffff0000Registration cannot be repeated !!|r") + return 0 + endif + + set this = thistype[thistype.Total] + set this.formula = formStr + Convert(eventually, SEGMENT_LENGTH) + set this.segmLen = lingth + + set this.model = null //"Abilities\\Spells\\Items\\AIam\\AIamTarget.mdl" + set this.message = null //"|cff00ff00ϳˣ|r" + set this.chance = 100 + set this.delete = false + set .Data[formStr] = integer(this) + set .Total = .Total + 1 + + //debug call BJDebugMsg("|cff00ff00Formula Register: |r" + I2S(integer(this)) + ". " + this.formula) + return this + endmethod + + private static method onInit takes nothing returns nothing + set .Data = StringTable.create() + endmethod + + endstruct + +////////////////// __End of Formula Matrix__ /////////////// +//////////////////////////////////////////////////////////// + + + +//////////////////////////////////////////////////////////// +//////////////////// __Formula Sorting__ /////////////////// + + private struct Sorting + ItemIdMatrix array stack[8] + integer array count[8] + integer total = 7 + + method onDestroy takes nothing returns nothing + local integer i = 0 + loop + exitwhen i == stack.size + set .stack[i] = 0 + set .count[i] = 0 + set i = i + 1 + endloop + set .char = "" + endmethod + + static method create takes integer type1, integer n1, integer type2, integer n2, integer type3, integer n3,/* + */ integer type4, integer n4, integer type5, integer n5, integer type6, integer n6, integer type7, integer n7 returns thistype + local thistype this = thistype.allocate() + + set this.stack[1] = ItemIdMatrix.assigns(type1) + set this.stack[2] = ItemIdMatrix.assigns(type2) + set this.stack[3] = ItemIdMatrix.assigns(type3) + set this.stack[4] = ItemIdMatrix.assigns(type4) + set this.stack[5] = ItemIdMatrix.assigns(type5) + set this.stack[6] = ItemIdMatrix.assigns(type6) + set this.stack[7] = ItemIdMatrix.assigns(type7) + + set this.count[1] = n1 + set this.count[2] = n2 + set this.count[3] = n3 + set this.count[4] = n4 + set this.count[5] = n5 + set this.count[6] = n6 + set this.count[7] = n7 + + return this + endmethod + + string char + method convert takes nothing returns string + local integer i = 1 + local integer j + local integer k + + set .char = "" + loop + exitwhen i > .total + if .stack[i] == 0 or .count[i] == 0 then + set .stack[i] = .stack[.total] + set .count[i] = .count[.total] + set .total = .total - 1 + set i = i - 1 + else + set j = i + 1 + loop + exitwhen j > .total + if .stack[j] == 0 or .count[j] == 0 then + set .stack[j] = .stack[.total] + set .count[j] = .count[.total] + set .total = .total - 1 + set j = j - 1 + elseif integer(.stack[i]) > integer(.stack[j]) then + set k = .stack[i] + set .stack[i] = .stack[j] + set .stack[j] = k + set k = .count[i] + set .count[i] = .count[j] + set .count[j] = k + elseif integer(.stack[i]) == integer(.stack[j]) then + set .count[i] = .count[i] + .count[j] + set .stack[j] = 0 + set j = j - 1 + endif + set j = j + 1 + endloop + + set j = .count[i] + loop + exitwhen j == 0 + set .char = .char + Convert(.stack[i], SEGMENT_LENGTH) + set j = j - 1 + endloop + endif + set i = i + 1 + endloop + + return .char + endmethod + + endstruct + +////////////////// __End of Formula Sorting__ ////////////// +//////////////////////////////////////////////////////////// + + + +//////////////////////////////////////////////////////////// +/////////////////////// __Craft Item__ ///////////////////// + + private function Adaptation takes nothing returns boolean + return true + endfunction + + private function verify takes nothing returns boolean + return ItemIdMatrix.exists(GetItemTypeId(GetManipulatedItem())) + endfunction + + private function GetCharges takes item it returns integer + local integer charges = GetItemCharges(it) + if charges == 0 then + set charges = 1 + endif + return charges + endfunction + + private function CraftItem takes nothing returns nothing + local FormulaMatrix forx = 0 + local ItemIdMatrix itmx = ItemIdMatrix.get(GetItemTypeId(GetManipulatedItem())) + local integer size = StringLength(itmx.keyStr) / itmx.keyLen + local integer inst = 0 + local integer numb = 0 + local integer sum = 0 + + local integer tmpid = 0 + local integer i = 0 + local integer j = 0 + local boolean b = false + local item it = null + + local item article = GetManipulatedItem() + local unit caster = GetTriggerUnit() + + local item array items + local integer array typeid + local integer array amount + local integer array surplus + + //* Check Slots + set i = 0 + loop + exitwhen i == 6 + set it = UnitItemInSlot(caster, i) + + if it != null then + set sum:items = it + set sum:typeid = GetItemTypeId(it) + set sum:amount = GetCharges(it) + if it == article then + set b = true + endif + set sum = sum + 1 + endif + + set i = i + 1 + set it = null + endloop + + if b == false then + set sum:items = article + set sum:typeid = GetItemTypeId(article) + set sum:amount = 1 + set sum = sum + 1 + endif + + //* Check Formulas + loop + exitwhen inst == size + set forx = FormulaMatrix(itmx.sub(inst)) + set numb = StringLength(forx.formula) / forx.segmLen - 1 + + set i = 0 + loop + exitwhen i == sum + set i:surplus = i:amount + set i = i + 1 + endloop + + //! Check Formula + set i = 0 + loop + set tmpid = ItemIdMatrix(forx.sub(i)).itemId + exitwhen i == numb + + set j = 0 + loop + exitwhen j == sum + + if j:typeid == tmpid and j:surplus > 0 then + set j:surplus = j:surplus - 1 + exitwhen true + endif + + set j = j + 1 + endloop + + exitwhen j == sum + set i = i + 1 + endloop + + //! Merge item + if i == numb then + if GetRandomInt(0, 99) < forx.chance then + //! effect and text + if forx.model != null then + call DestroyEffect(AddSpecialEffectTarget(forx.model, caster, "origin")) + endif + + if forx.message != null then + call DisplayTimedTextToPlayer(GetTriggerPlayer(), 0, 0, 30, forx.message) + endif + + //! remove item + set i = 0 + loop + exitwhen i == sum + if i:surplus > 0 and GetItemCharges(i:items) > 0 then + call SetItemCharges(i:items, i:surplus) + elseif i:surplus == 0 then + call RemoveItem(i:items) + endif + + set i = i + 1 + endloop + + //! add item + set it = CreateItem(tmpid, GetUnitX(caster), GetUnitY(caster)) + + if GetItemCharges(it) > 0 then + call SetItemCharges(it, 1) + + set i = 0 + loop + exitwhen i == sum + if i:typeid == tmpid then + call RemoveItem(i:items) + call SetItemCharges(it, i:surplus + 1) + endif + set i = i + 1 + endloop + endif + + call UnitAddItem(caster, it) + set bj_lastCombinedItem = it + call YDWESyStemItemCombineTriggerAction() + elseif forx.delete then + //! remove item + set i = 0 + loop + exitwhen i == sum + if i:surplus > 0 and GetItemCharges(i:items) > 0 then + call SetItemCharges(i:items, i:surplus) + elseif i:surplus == 0 then + call RemoveItem(i:items) + endif + + set i = i + 1 + endloop + endif + + set it = null + exitwhen true + endif + + set inst = inst + 1 + endloop + + if b == false /*and GetItemType(article) == ITEM_TYPE_POWERUP*/ then + call RemoveItem(article) + endif + + set i = 0 + loop + exitwhen i == sum + set i:items = null + set i = i + 1 + endloop + + set article = null + set caster = null + set it = null + endfunction + + private function Init takes nothing returns nothing + local filterfunc f = Filter(function Adaptation) + local trigger t = CreateTrigger() + local integer i = 0 + + loop + exitwhen i > 15 + call TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_PICKUP_ITEM, f) + set i = i + 1 + endloop + + call TriggerAddCondition(t, Condition(function verify)) + call TriggerAddAction(t, function CraftItem) + call DestroyFilter(f) + + set f = null + set t = null + endfunction + +///////////////////// __End of Craft Item__ //////////////// +//////////////////////////////////////////////////////////// + + + + // call YDWENewItemsFormula('rat6', 6, 'rat9', 5, 'ratc', 4, 'rde1', 3, 'rde2', 2, 'rde3', 1, 'mcou') + function YDWENewItemsFormula takes integer type1, integer n1, integer type2, integer n2, integer type3, integer n3, /* + */ integer type4, integer n4, integer type5, integer n5, integer type6, integer n6, integer eventually returns nothing + local Sorting sort = Sorting.create(type1, n1, type2, n2, type3, n3, type4, n4, type5, n5, type6, n6, 0, 0) + local ItemIdMatrix itmx = ItemIdMatrix.assigns(eventually) + local string f = I2S(SEGMENT_LENGTH) + sort.convert() + local string s = "" + local integer i = 0 + + set FormulaData = FormulaMatrix.memory(SEGMENT_LENGTH, f, itmx) + + if integer(FormulaData) > 0 then + set s = Convert(integer(FormulaData), SEGMENT_LENGTH) + + set i = 0 + loop + exitwhen i > sort.total + call sort.stack[i].memory(s) + set i = i + 1 + endloop + + call itmx.memory(s) + endif + + call sort.destroy() + set f = "" + set s = "" + endfunction + +endlibrary + +#endif /// YDWENewItemsFormulaIncluded diff --git a/jass/YDWESetGuard.cfg b/jass/YDWESetGuard.cfg new file mode 100644 index 0000000..406fb9f --- /dev/null +++ b/jass/YDWESetGuard.cfg @@ -0,0 +1,2 @@ +YDWESetGuard +YDWERemoveGuard \ No newline at end of file diff --git a/jass/YDWESetGuard.j b/jass/YDWESetGuard.j new file mode 100644 index 0000000..4cd5905 --- /dev/null +++ b/jass/YDWESetGuard.j @@ -0,0 +1,85 @@ +#ifndef YDWESetGuardIncluded +#define YDWESetGuardIncluded + +#include "YDWEBase.j" + +//=========================================================================== +//Ӷϵͳ +//=========================================================================== +library YDWESetGuard requires YDWEBase +private function IsUnitIdle takes unit u returns boolean + return OrderId2String(GetUnitCurrentOrder(u)) == null +endfunction + +function YDWERemoveGuard takes unit pet returns nothing + local integer tm = YDWEGetIntegerByString( I2S(YDWEH2I(pet)), "Timer") + call YDWEFlushMissionByString(I2S(YDWEH2I(pet))) + call YDWEFlushMissionByString(I2S(tm)) + call DestroyTimer(YDWEGetTimerByString(I2S(YDWEH2I(pet)), "Timer")) +endfunction + +function SetGuardTimer takes nothing returns nothing + local timer tm = GetExpiredTimer() + local unit pet = (YDWEGetUnitByString( I2S(YDWEH2I(tm)), "Pet")) + local unit captain = (YDWEGetUnitByString( I2S(YDWEH2I(tm)), "Captain")) + local real x = GetUnitX(captain) - GetUnitX(pet) + local real y = GetUnitY(captain) - GetUnitY(pet) + local real d = x*x + y*y + local real v + local real a + local effect e=null + local real life = YDWEGetRealByString( I2S(YDWEH2I(tm)), "Life") + local integer p = YDWEGetIntegerByString(I2S(YDWEH2I(tm)), "Percent") + set v = YDWEGetRealByString(I2S(YDWEH2I(tm)), "GuardRanger") + if GetUnitState(pet, UNIT_STATE_LIFE)>0 and GetUnitState(captain, UNIT_STATE_LIFE)> 0 then + if dv*v then + call SetUnitPosition(pet,GetUnitX(captain),GetUnitY(captain)) + set e =AddSpecialEffectTarget("Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" ,captain,"chest") + call DestroyEffect(e) + else + call IssuePointOrder(pet, "move", GetUnitX(captain), GetUnitY(captain)) + endif + endif + endif + else + call IssuePointOrder(pet, "attack", GetUnitX(captain), GetUnitY(captain)) + call YDWERemoveGuard(pet) + endif + set tm = null + set pet = null + set captain = null + set e=null +endfunction + + +function YDWESetGuard takes unit pet, unit captain, real timeout, real guardRanger, real returnRanger, real outRanger,integer percent returns nothing + local timer tm = CreateTimer() + call YDWESaveTimerByString(I2S(YDWEH2I(pet)), "Timer", tm) + call YDWESaveUnitByString(I2S(YDWEH2I(tm)), "pet", pet) + call YDWESaveUnitByString(I2S(YDWEH2I(tm)), "Captain", captain) + call YDWESaveIntegerByString(I2S(YDWEH2I(tm)), "Percent", percent) + call YDWESaveRealByString(I2S(YDWEH2I(tm)), "GuardRanger", guardRanger) + call YDWESaveRealByString(I2S(YDWEH2I(tm)), "ReturnRanger", returnRanger) + call YDWESaveRealByString(I2S(YDWEH2I(tm)), "OutRanger", outRanger) + call TimerStart(tm, timeout, true, function SetGuardTimer) + set tm = null +endfunction +endlibrary + +#endif /// YDWESetGuardIncluded diff --git a/jass/YDWEStringHash.cfg b/jass/YDWEStringHash.cfg new file mode 100644 index 0000000..e5f10a0 --- /dev/null +++ b/jass/YDWEStringHash.cfg @@ -0,0 +1,2 @@ +[old] +StringHash diff --git a/jass/YDWEStringHash.j b/jass/YDWEStringHash.j new file mode 100644 index 0000000..5f036ab --- /dev/null +++ b/jass/YDWEStringHash.j @@ -0,0 +1,111 @@ +#ifndef YDWEStringHashIncluded +#define YDWEStringHashIncluded + +#if WARCRAFT_VERSION >= 124 +library YDWEStringHash +endlibrary +#else +#include "Util/YDWEChar.j" +#include "Util/YDWEBitwise.j" +library YDWEStringHash requires YDWEChar, YDWEBitwise + private function SH_StringChar takes string s, integer n returns integer + local string ss = SubString(s, n, n+1) + + if (ss == "/") then + set ss = "\\" + endif + + return YDWEChar_ord(ss) + endfunction + + private function SH_StringLong takes string s, integer n returns integer + return ((SH_StringChar(s, n+3)*256+SH_StringChar(s, n+2))*256+SH_StringChar(s, n+1))*256+SH_StringChar(s, n) + endfunction + + #define T1(A, B, C) YDNL \ + set A = YDWEBitwise_XOR(YDWEBitwise_RShift(C, 13), A - B - C) YDNL \ + set B = YDWEBitwise_XOR(YDWEBitwise_LShift(A, 8), B - C - A) YDNL \ + set C = YDWEBitwise_XOR(YDWEBitwise_RShift(B, 13), C - A - B) YDNL \ + set A = YDWEBitwise_XOR(YDWEBitwise_RShift(C, 12), A - B - C) YDNL \ + set B = YDWEBitwise_XOR(YDWEBitwise_LShift(A, 16), B - C - A) YDNL \ + set C = YDWEBitwise_XOR(YDWEBitwise_RShift(B, 5), C - A - B) YDNL \ + set A = YDWEBitwise_XOR(YDWEBitwise_RShift(C, 3), A - B - C) YDNL \ + set B = YDWEBitwise_XOR(YDWEBitwise_LShift(A, 10), B - C - A) YDNL \ + set C = YDWEBitwise_XOR(YDWEBitwise_RShift(B, 15), C - A - B) + + private function StringHashEx takes string s, integer len returns integer + local integer n = 0 + local integer sizt_t = len + local integer A = $9E3779B9 + local integer B = $9E3779B9 + local integer C = 0 + + loop + exitwhen len < 12 + set A = A + SH_StringLong(s, n) + set B = B + SH_StringLong(s, n+4) + set C = C + SH_StringLong(s, n+8) + T1(A, B, C) + set n = n + 12 + set len = len - 12 + endloop + + set C = C + sizt_t + + if (len == 11) then + set C = C + SH_StringChar(s, n+10)*$01000000 + set len = len - 1 + endif + if (len == 10) then + set C = C + SH_StringChar(s, n+9)*$00010000 + set len = len - 1 + endif + if (len == 9) then + set C = C + SH_StringChar(s, n+8)*$00000100 + set len = len - 1 + endif + if (len == 8) then + set B = B + SH_StringChar(s, n+7)*$01000000 + set len = len - 1 + endif + if (len == 7) then + set B = B + SH_StringChar(s, n+6)*$00010000 + set len = len - 1 + endif + if (len == 6) then + set B = B + SH_StringChar(s, n+5)*$00000100 + set len = len - 1 + endif + if (len == 5) then + set B = B + SH_StringChar(s, n+4) + set len = len - 1 + endif + if (len == 4) then + set A = A + SH_StringChar(s, n+3)*$01000000 + set len = len - 1 + endif + if (len == 3) then + set A = A + SH_StringChar(s, n+2)*$00010000 + set len = len - 1 + endif + if (len == 2) then + set A = A + SH_StringChar(s, n+1)*$00000100 + set len = len - 1 + endif + if (len == 1) then + set A = A + SH_StringChar(s, n) + set len = len - 1 + endif + + T1(A, B, C) + #undef T1 + return C + endfunction + + function StringHash takes string s returns integer + return StringHashEx(StringCase(s, true), StringLength(s)) + endfunction +endlibrary +#endif + +#endif diff --git a/jass/YDWETPNewTimerPeriodic.cfg b/jass/YDWETPNewTimerPeriodic.cfg new file mode 100644 index 0000000..cf4a71b --- /dev/null +++ b/jass/YDWETPNewTimerPeriodic.cfg @@ -0,0 +1,5 @@ +YDWE_TP_GetExpiredTimerIndex +YDWE_TP_NewTimerPeriodic +YDWE_TP_GetElapsedTime +YDWE_TP_GetRemainingTime +YDWE_TP_GetTimeout \ No newline at end of file diff --git a/jass/YDWETPNewTimerPeriodic.j b/jass/YDWETPNewTimerPeriodic.j new file mode 100644 index 0000000..70989b0 --- /dev/null +++ b/jass/YDWETPNewTimerPeriodic.j @@ -0,0 +1,105 @@ +#ifndef YDWETPNewTimerPeriodicIncluded +#define YDWETPNewTimerPeriodicIncluded + +#include "YDWEBase.j" + +library YDWETimerPeriodic requires YDWEBase + + globals + private constant timer TIMER = CreateTimer() + private constant real INTER = 0.01 + endglobals + + globals + private integer array Structs + private integer Total = 0 + private integer Index = 0 + endglobals + + private struct TimerData + trigger trg = null + real dur = 0. + real inter = 0. + boolean perio = false + boolean pause = false + endstruct + + private function Spin takes nothing returns nothing + local TimerData data = 0 + local integer inst = 0 + loop + exitwhen inst == Total + set data = inst:Structs + set data.dur = data.dur + INTER + if data.dur == data.inter or data.dur > data.inter then + set Index = integer(data) + if not data.pause then + call TriggerExecute(data.trg) + endif + if data.perio then + set data.dur = 0. + else + set data.trg = null + call data.destroy() + + set Total = Total - 1 + set inst:Structs = Total:Structs + set inst = inst - 1 + endif + set Index = 0 + endif + set inst = inst + 1 + endloop + if Total == 0 then + call PauseTimer(TIMER) + endif + endfunction + + // ȡʱȥʱ䡢ʣʱ䡢õʱ + function YDWE_TP_GetElapsedTime takes TimerData data returns real + return data.dur + endfunction + + function YDWE_TP_GetRemainingTime takes TimerData data returns real + return data.inter - data.dur + endfunction + + function YDWE_TP_GetTimeout takes TimerData data returns real + return data.inter + endfunction + + function YDWE_TP_PauseTimerPeriodic takes TimerData data returns nothing + set data.perio = false + set data.pause = true + set data.inter = 0. + endfunction + + function YDWE_TP_SetTimeInterval takes TimerData data, real interval returns nothing + if data.perio then + set data.inter = interval + endif + endfunction + + function YDWE_TP_GetExpiredTimerIndex takes nothing returns TimerData + return Index + endfunction + + function YDWE_TP_NewTimerPeriodic takes real timeout, boolean periodic, trigger trig returns TimerData + local TimerData data = TimerData.create() + set data.inter = timeout + set data.perio = periodic + set data.trg = trig + set Total:Structs = data + set Total = Total + 1 + if Total - 1 == 0 then + call TimerStart(TIMER, INTER, true, function Spin) + endif + //call BJDebugMsg(I2S(Total)) + return data + endfunction + +endlibrary + + + +#endif /// YDWETPNewTimerPeriodicIncluded diff --git a/jass/YDWETimerPattern.cfg b/jass/YDWETimerPattern.cfg new file mode 100644 index 0000000..f1029c5 --- /dev/null +++ b/jass/YDWETimerPattern.cfg @@ -0,0 +1,4 @@ +YDWETimerPatternJumpAttack +YDWETimerPatternMoonPriestessArrow +YDWETimerPatternRushSlide +YDWEThreadSustain \ No newline at end of file diff --git a/jass/YDWETimerPattern.j b/jass/YDWETimerPattern.j new file mode 100644 index 0000000..9f1e1d0 --- /dev/null +++ b/jass/YDWETimerPattern.j @@ -0,0 +1,467 @@ +#ifndef YDWETimerPatternIncluded +#define YDWETimerPatternIncluded + +#include "YDWEBase.j" + +library_once YDWETimerPattern initializer Init requires YDWEBase + +//*************************************************** +//* - Matrix ģ庯 +//*-------------------- +//* ߣWarft_TigerCN ŻFetrix_sai +//*************************************************** + + #define TIMER_PATTERN_RADIUS 120.0 + + private keyword Thread + + globals + private boolexpr Bexpr = null + private rect Area = null + private Thread tmp_data + private location yd_loc = Location(0.0, 0.0) + endglobals + + private struct YDVector3 + real x + real y + real z + endstruct + + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + // Timer Pattern Union // + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + private function SingleMagic takes unit sour, unit targ, real x, real y, real h, integer uid, integer aid, integer lv, integer order returns nothing + local unit dummy = CreateUnit(GetOwningPlayer(sour), uid, x, y, GetUnitFacing(sour)) + call UnitApplyTimedLife(dummy, 'BHwe', 1.0) + call UnitAddAbility(dummy, aid) + call SetUnitAbilityLevel(dummy, aid, lv) + call SetUnitFlyHeight(dummy, h, 0.0) + call IssueTargetOrderById(dummy, order, targ) + //debug call BJDebugMsg("Target order") + set dummy = null + endfunction + + private function GetUnitZ takes unit u returns real + call MoveLocation(yd_loc, GetUnitX(u), GetUnitY(u)) + return GetUnitFlyHeight(u) + GetLocationZ(yd_loc) + endfunction + + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + // Filter Funcs // + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + private function EnemyFilter takes unit u, unit caster returns boolean + return IsUnitType(u, UNIT_TYPE_MAGIC_IMMUNE) == false and IsUnitType(u, UNIT_TYPE_RESISTANT) == false /* + */ and IsUnitType(u, UNIT_TYPE_SLEEPING) == false and GetUnitState(u, UNIT_STATE_LIFE) > 0.405 /* + */ and IsUnitType(u, UNIT_TYPE_STRUCTURE) == false and IsUnitIllusion(u) == false /* + */ and IsUnitHidden(u) == false and IsUnitEnemy(u, GetOwningPlayer(caster)) /* + */ and IsUnitVisible(u, GetOwningPlayer(caster)) + endfunction + + private function TreeFilter takes nothing returns boolean + local integer id = GetDestructableTypeId(GetFilterDestructable()) + return id == 'LTlt' or id == 'ATtr' or id == 'BTtw' or id == 'KTtw' /* + */or id == 'YTft' or id == 'JTct' or id == 'YTst' or id == 'YTct' /* + */or id == 'YTwt' or id == 'JTtw' or id == 'DTsh' or id == 'FTtw' /* + */or id == 'CTtr' or id == 'ITtw' or id == 'NTtw' or id == 'OTtw' /* + */or id == 'ZTtw' or id == 'WTst' or id == 'GTsh' or id == 'VTlt' /* + */or id == 'WTtw' or id == 'ATtc' or id == 'BTtc' or id == 'CTtc' /* + */or id == 'ITtc' or id == 'NTtc' or id == 'ZTtc' + endfunction + + private function DamageFilter takes nothing returns boolean + local unit u = GetFilterUnit() + local Thread d = tmp_data + if not(IsUnitInGroup(u, d.g)) and d.switch != 0 and EnemyFilter(u, d.caster) then + call UnitDamageTarget(d.caster, u, d.amount, true, true, bj_lastSetAttackType, bj_lastSetDamageType, bj_lastSetWeaponType) + call DestroyEffect(AddSpecialEffectTarget(d.dsfx, u, d.part)) + if d.skills > '0000' and d.skills != null and d.order > 0 and d.order != null then + call SingleMagic(d.caster, u, d.pos.x, d.pos.y, GetUnitFlyHeight(d.obj), d.unitid, d.skills, d.level, d.order) + endif + if not(d.recycle) then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r A one-time.") + set d.switch = 0 + endif + set d.target = u + //call GroupAddUnit(d.g, u) + set u = null + return true + endif + set u = null + return false + endfunction + + private function TreeKill takes nothing returns nothing + local destructable d = GetEnumDestructable() + if GetWidgetLife(d) > 0.405 then + call KillDestructable(d) + endif + set d = null + endfunction + + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + // Major Structure Code // + //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= + private struct Thread + YDVector3 des //destination + YDVector3 pos //position + YDVector3 vel //velocity + unit caster + unit source + unit target + unit obj + real ac + real bc + real dist + real step + real amount + integer switch + integer follow + integer unitid + integer skills + integer order + integer level + string dsfx + string gsfx + string wsfx + string part + boolean recycle + boolean killdest + boolean volume + group g + timer t + + static method operator [] takes handle h returns thistype + return YDWEGetIntegerByString("YDWETimerPattern.", I2S(YDWEH2I(h))) + endmethod + + static method operator []= takes handle h, thistype value returns nothing + call YDWESaveIntegerByString("YDWETimerPattern.", I2S(YDWEH2I(h)), value) + endmethod + + static method flush takes handle h returns nothing + call YDWEFlushStoredIntegerByString("YDWETimerPattern.", I2S(YDWEH2I(h))) + endmethod + + method operator x= takes real value returns nothing + set .pos.x = value + call SetUnitX(.obj, value) + endmethod + + method operator y= takes real value returns nothing + set .pos.y = value + call SetUnitY(.obj, value) + endmethod + + method operator z= takes real value returns nothing + set .pos.z = value + call MoveLocation(yd_loc, .pos.x, .pos.y) + call SetUnitFlyHeight(.obj, value - GetLocationZ(yd_loc), 0) + endmethod + + method onDestroy takes nothing returns nothing + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r Knockback stopped!") + call Thread.flush(.obj) + call Thread.flush(.t) + call GroupClear(.g) + call DestroyGroup(.g) + call PauseTimer(.t) + call DestroyTimer(.t) + call .des.destroy() + call .pos.destroy() + call .vel.destroy() + set .caster = null + set .target = null + set .obj = null + set .g = null + set .t = null + set .amount = 0 + set .skills = 0 + set .order = 0 + set .dsfx = "" + set .gsfx = "" + set .wsfx = "" + set .part = "" + endmethod + endstruct + + private struct Parabola extends Thread + + static method move takes nothing returns nothing + local thistype this = Thread[GetExpiredTimer()] + //local real vx = .des.x - .pos.x + //local real vy = .des.y - .pos.y + //local real vz = .des.z - .pos.z + //if vx * vx + vy * vy + vz * vz > 900.0 then + set .x = GetUnitX(.obj) + .vel.x //.pos.x + .vel.x + set .y = GetUnitY(.obj) + .vel.y //.pos.y + .vel.y + set .z = GetUnitZ(.obj) + .ac * .step * 2 + .ac * .dist + .bc //.pos.z + .ac * .step * 2 + .ac * .dist + .bc + set .step = .step + .dist + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r high = ." + R2S(GetLocationZ(yd_loc))) + if YDWECoordinateX(.pos.x) != .pos.x or YDWECoordinateY(.pos.y) != .pos.y or .pos.z <= GetLocationZ(yd_loc) then + set .switch = 0 + endif + if .amount > 0.0 then + //call this.damage(.caster, .pos.x + .vel.x, .pos.y + .vel.y, GetUnitZ(.obj), false, false) + set tmp_data = integer(this) + call GroupEnumUnitsInRange(.g, .pos.x + .vel.x, .pos.y + .vel.y, TIMER_PATTERN_RADIUS, function DamageFilter) + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r Area damage.") + endif + //else + //set .switch = 0 + //endif + + if .switch == 0 then + call SetUnitFlyHeight(.obj, GetUnitDefaultFlyHeight(.obj), 200.0) + call SetUnitTimeScale(.obj, 1) + //YDWETriggerEvent + call YDWESyStemAbilityCastingOverTriggerAction(.obj, 7) + call this.destroy() + endif + endmethod + + static method create takes unit source, unit object, real angle, real distance, real time, real interval, real high, real damage, string attach, string deff returns thistype + local thistype this = thistype.allocate() + local real vx = 0.0 + local real vy = 0.0 + local real vz = 0.0 + set .des = YDVector3.create() + set .pos = YDVector3.create() + set .vel = YDVector3.create() + set .pos.x = GetUnitX(object) + set .pos.y = GetUnitY(object) + set .pos.z = GetUnitZ(object) + set .des.x = .pos.x + distance * Cos(angle) + set .des.y = .pos.y + distance * Sin(angle) + call MoveLocation(yd_loc, .des.x, .des.y) + set .des.z = GetLocationZ(yd_loc) + if .pos.z > .des.z then + set high = high + .pos.z + else + set high = high + .des.z + endif + set .ac = (2 * (.pos.z + .des.z) - 4 * high) / (distance * distance) + set .bc = (.des.z - .pos.z - .ac * distance * distance) / distance + set .dist = distance * interval / time + set .ac = .ac * .dist + set .bc = .bc * .dist + set .vel.x = .dist * Cos(angle) + set .vel.y = .dist * Sin(angle) + set .step = 0.0 + set .caster = source + set .obj = object + set .amount = damage + set .dsfx = deff + set .part = attach + set .switch = 1 + set .recycle = true + set .t = CreateTimer() + set .g = CreateGroup() + call UnitAddAbility(.obj, 'Amrf') + call UnitRemoveAbility(.obj, 'Amrf') + call TimerStart(.t, interval, true, function thistype.move) + call GroupAddUnit(.g, object) + set Thread[object] = integer(this) + set Thread[.t] = integer(this) + return this + endmethod + + endstruct + + // uniform speed + private struct Linear extends Thread + + static method move takes nothing returns nothing + local thistype this = Thread[GetExpiredTimer()] + if .step > .dist then + set .x = GetUnitX(.obj) + .vel.x //.pos.x + .vel.x + set .y = GetUnitY(.obj) + .vel.y //.pos.y + .vel.y + //set .pos.z = GetUnitZ(.obj) + set .step = .step - .dist + //call this.damage(.caster, .pos.x, .pos.y, .pos.z, true, true) + set tmp_data = integer(this) + call GroupEnumUnitsInRange(.g, .pos.x + .vel.x, .pos.y + .vel.y, TIMER_PATTERN_RADIUS, function DamageFilter) + if YDWECoordinateX(.pos.x) != .pos.x or YDWECoordinateY(.pos.y) != .pos.y then + set .switch = 0 + endif + else + set .switch = 0 + endif + + if .switch == 0 then + // YDWETriggerEvent + if .target != null then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r |cffff0000" + GetUnitName(.target) + "|r was hit!!!") + //call YDWESaveUnitByString(I2S(YDWEH2I(.caster)), "MoonPriestessArrow", .target) + set bj_lastAbilityTargetUnit = .target + call YDWESyStemAbilityCastingOverTriggerAction(.caster, 8) + else + call YDWESyStemAbilityCastingOverTriggerAction(.caster, 9) + endif + //call KillUnit(.obj) + call RemoveUnit(.obj) + call this.destroy() + endif + endmethod + + static method create takes unit source, unit object, real angle, real distance, real time, real interval, integer uid, integer aid, integer lv, integer orderid, string attach, string sfx returns thistype + local thistype this = thistype.allocate() + set .des = YDVector3.create() + set .pos = YDVector3.create() + set .vel = YDVector3.create() + set .step = distance + set .dist = distance * interval / time + set .vel.x = .dist * Cos(angle) + set .vel.y = .dist * Sin(angle) + set .pos.x = GetUnitX(object) + set .pos.y = GetUnitY(object) + set .caster = source + set .obj = object + set .unitid = uid + set .skills = aid + set .level = lv + set .order = orderid + set .part = attach + set .gsfx = sfx + set .switch = 1 + set .recycle = false + set .t = CreateTimer() + set .g = CreateGroup() + call TimerStart(.t, interval, true, function thistype.move) + set Thread[.t] = integer(this) + return this + endmethod + + endstruct + + // Uniform deceleration + private struct Deceleration extends Thread + + static method move takes nothing returns nothing + local thistype this = Thread[GetExpiredTimer()] + local real xp = GetUnitX(.obj) + .dist * .vel.x + local real yp = GetUnitY(.obj) + .dist * .vel.y + if .volume == false then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |rPathable without terrain.") + if IsTerrainPathable(xp, yp, PATHING_TYPE_WALKABILITY) then + set .switch = 0 + else + set .x = xp + set .y = yp + endif + else + set .x = xp + set .y = yp + endif + if .follow == 0 then + if GetUnitFlyHeight(.obj) < 5. then + if IsTerrainPathable(.pos.x, .pos.y, PATHING_TYPE_FLOATABILITY) then + call DestroyEffect(AddSpecialEffect(.gsfx, .pos.x, .pos.y)) + else + call DestroyEffect(AddSpecialEffect(.wsfx, .pos.x, .pos.y)) + endif + endif + endif + set .follow = .follow + 1 + if .follow == 2 then + set .follow = 0 + endif + if .killdest then + call MoveRectTo(Area, .pos.x, .pos.y) + call EnumDestructablesInRect(Area, Bexpr, function TreeKill) + endif + if .amount > 0.0 then + //call this.damage(.caster, .pos.x, .pos.y, 0.0, false, .recycle) + set tmp_data = integer(this) + call GroupEnumUnitsInRange(.g, .pos.x, .pos.y, TIMER_PATTERN_RADIUS, function DamageFilter) + endif + set .dist = .dist - .step + if .dist <= 0.0 or YDWECoordinateX(.pos.x) != .pos.x or YDWECoordinateY(.pos.y) != .pos.y then + set .switch = 0 + endif + + if .switch == 0 then + call SetUnitFlyHeight(.obj, GetUnitDefaultFlyHeight(.obj), 200.0) + call SetUnitTimeScale(.obj, 1) + // YDWETriggerEvent + call YDWESyStemAbilityCastingOverTriggerAction(.obj, 6) + call this.destroy() + endif + endmethod + + static method create takes unit source, unit object, real angle, real distance, real time, real interval, real damage, boolean killtrees, boolean cycle, boolean path, string part, string geff, string weff returns thistype + local thistype this = thistype.allocate() //thistype(Thread[object]) + local real vx = 0.0 + local real vy = 0.0 + local real l = 0.0 + set .des = YDVector3.create() + set .pos = YDVector3.create() + set .vel = YDVector3.create() + set .vel.x = Cos(angle) + set .vel.y = Sin(angle) + set .dist = 2 * distance * interval / time + set .step = .dist * interval / time + set .pos.x = GetUnitX(object) + set .pos.y = GetUnitY(object) + set .caster = source + set .obj = object + set .amount = damage + set .killdest = killtrees + set .recycle = cycle + set .volume = path + set .gsfx = geff + set .wsfx = weff + set .switch = 1 + set .follow = 0 + set .g = CreateGroup() + set .t = CreateTimer() + call TimerStart(.t, interval, true, function thistype.move) + set Thread[.t] = integer(this) + return this + endmethod + endstruct + + + // Jump Attack PUI + function YDWETimerPatternJumpAttack takes unit u, real face, real dis, real lasttime, real timeout, real high, real damage, string part, string dsfx returns nothing + if u == null then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r No object!") + return + endif + call Parabola.create(u, u, Deg2Rad(face), RMaxBJ(dis, 0), RMaxBJ(lasttime, 0), RMaxBJ(timeout, 0), high, damage, part, dsfx) + endfunction + + // Moon Priestess Arrow PUI + function YDWETimerPatternMoonPriestessArrow takes unit u, real face, real dis, real lasttime, real timeout, integer lv, integer aid, integer uid, string order, string part, string dsfx returns nothing + local unit sour = null + if u == null then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r No object!") + return + endif + set sour = YDWEGetUnitByString(I2S(YDWEH2I(u)), "MoonPriestessArrow") + if sour == null then + set sour = u + endif + call Linear.create(sour, u, Deg2Rad(face), RMaxBJ(dis, 0), RMaxBJ(lasttime, 0), RMaxBJ(timeout, 0), uid, aid, IMaxBJ(lv, 1), OrderId(order), part, dsfx) + //call YDWEFlushMissionByString(I2S(YDWEH2I(u))) + set sour = null + endfunction + + // Rush Slide PUI + function YDWETimerPatternRushSlide takes unit u, real face, real dis, real lasttime, real timeout, real damage, boolean killtrees, boolean cycle, boolean path, string part, string gsfx, string wsfx returns nothing + if u == null then + //debug call BJDebugMsg("|cff00ff00[YDWE] Timer Pattern : |r No object!") + return + endif + call Deceleration.create(u, u, Deg2Rad(face), RMaxBJ(dis, 0), RMaxBJ(lasttime, 0), RMaxBJ(timeout, 0), damage, killtrees, cycle, path, part, gsfx, wsfx) + endfunction + + private function Init takes nothing returns nothing + set Area = Rect(-TIMER_PATTERN_RADIUS, -TIMER_PATTERN_RADIUS, TIMER_PATTERN_RADIUS, TIMER_PATTERN_RADIUS) + set Bexpr = Filter(function TreeFilter) + endfunction + + #undef TIMER_PATTERN_RADIUS +endlibrary + +#endif /// YDWETimerPatternIncluded diff --git a/jass/YDWETimerSystem.cfg b/jass/YDWETimerSystem.cfg new file mode 100644 index 0000000..6c2ebf6 --- /dev/null +++ b/jass/YDWETimerSystem.cfg @@ -0,0 +1,13 @@ +YDWETimerSystemGetRunIndex +YDWETimerRemoveUnit +YDWETimerDestroyTimer +YDWETimerRemoveItem +YDWETimerDestroyLightning +YDWETimerRunPeriodicTrigger +YDWETimerRunPeriodicTriggerOver +YDWETimerRunTrigger +YDWETimerDestroyTextTag +YDWETimerDestroyEffect + +YDWETimerSystemNewTask +YDWETimerSystemGetCurrentTask diff --git a/jass/YDWETimerSystem.j b/jass/YDWETimerSystem.j new file mode 100644 index 0000000..45dc0f3 --- /dev/null +++ b/jass/YDWETimerSystem.j @@ -0,0 +1,287 @@ +#ifndef YDWETimerSystemIncluded +#define YDWETimerSystemIncluded + +#include + +//=========================================================================== +//ϵͳ-TimerSystem +//=========================================================================== + +library YDWETimerSystem initializer Init requires YDTriggerSaveLoadSystem + +globals + private integer CurrentTime + private integer CurrentIndex + private integer TaskListHead + private integer TaskListIdleHead + private integer TaskListIdleMax + private integer array TaskListIdle + private integer array TaskListNext + private integer array TaskListTime + private trigger array TaskListProc // + private trigger fnRemoveUnit //Ƴλ + private trigger fnDestroyTimer //ݻټʱ + private trigger fnRemoveItem //ƳƷ + private trigger fnDestroyEffect //ɾЧ + private trigger fnDestroyLightning //ɾɾЧ + private trigger fnRunTrigger //д + private timer Timer //Сʱʱ ϵͳʱ һЩҪȷʱĹ + private integer TimerHandle + + private integer TimerSystem_RunIndex = 0 +endglobals + +private function NewTaskIndex takes nothing returns integer + local integer h = TaskListIdleHead + if TaskListIdleHead < 0 then + if TaskListIdleMax >= 8000 then + debug call BJDebugMsg("ļʱ") + return 8100 + else + set TaskListIdleMax = TaskListIdleMax + 1 + return TaskListIdleMax + endif + endif + set TaskListIdleHead = TaskListIdle[h] + return h +endfunction + +private function DeleteTaskIndex takes integer index returns nothing + set TaskListIdle[index] = TaskListIdleHead + set TaskListIdleHead = index +endfunction + +//úд +private function NewTask takes real time, trigger proc returns integer + local integer index = NewTaskIndex() + local integer h = TaskListHead + local integer t = R2I(100.*time) + CurrentTime + local integer p + + set TaskListProc[index] = proc + set TaskListTime[index] = t + loop + set p = TaskListNext[h] + if p < 0 or TaskListTime[p] >= t then + // call BJDebugMsg("NewTask:"+I2S(index)) + set TaskListNext[h] = index + set TaskListNext[index] = p + return index + endif + set h = p + endloop + return index +endfunction + +function YDWETimerSystemNewTask takes real time, trigger proc returns integer + return NewTask(time, proc) +endfunction +function YDWETimerSystemGetCurrentTask takes nothing returns integer + return CurrentIndex +endfunction + +//ɾλ +private function RemoveUnit_CallBack takes nothing returns nothing + call RemoveUnit(YDHashGet(YDHASH_HANDLE, unit, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, unit, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerRemoveUnit takes real time, unit u returns nothing + call YDHashSet(YDHASH_HANDLE, unit, TimerHandle, NewTask(time, fnRemoveUnit), u) +endfunction + +//ݻټʱ +private function DestroyTimer_CallBack takes nothing returns nothing + call DestroyTimer(YDHashGet(YDHASH_HANDLE, timer, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, timer, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerDestroyTimer takes real time, timer t returns nothing + call YDHashSet(YDHASH_HANDLE, timer, TimerHandle, NewTask(time, fnDestroyTimer), t) +endfunction + +//ɾƷ +private function RemoveItem_CallBack takes nothing returns nothing + call RemoveItem(YDHashGet(YDHASH_HANDLE, item, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, item, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerRemoveItem takes real time, item it returns nothing + call YDHashSet(YDHASH_HANDLE, item, TimerHandle, NewTask(time, fnRemoveItem), it) +endfunction + +//ɾЧ +private function DestroyEffect_CallBack takes nothing returns nothing + call DestroyEffect(YDHashGet(YDHASH_HANDLE, effect, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, effect, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerDestroyEffect takes real time, effect e returns nothing + call YDHashSet(YDHASH_HANDLE, effect, TimerHandle, NewTask(time, fnDestroyEffect), e) +endfunction + +//ɾЧ +private function DestroyLightning_CallBack takes nothing returns nothing + call DestroyLightning(YDHashGet(YDHASH_HANDLE, lightning, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, lightning, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerDestroyLightning takes real time, lightning lt returns nothing + local integer i = NewTask(time, fnDestroyLightning) + call YDHashSet(YDHASH_HANDLE, lightning, TimerHandle, i, lt) +endfunction + +//д +private function RunTrigger_CallBack takes nothing returns nothing + call TriggerExecute(YDHashGet(YDHASH_HANDLE, trigger, TimerHandle, CurrentIndex)) + call YDHashClear(YDHASH_HANDLE, trigger, TimerHandle, CurrentIndex) +endfunction + +function YDWETimerRunTrigger takes real time, trigger trg returns nothing + call YDHashSet(YDHASH_HANDLE, trigger, TimerHandle, NewTask(time, fnRunTrigger), trg) +endfunction + +//ɾƯ +function YDWETimerDestroyTextTag takes real time, texttag tt returns nothing + local integer N=0 + local integer i=0 + if time <= 0 then + set time = 0.01 + endif + call SetTextTagPermanent(tt,false) + call SetTextTagLifespan(tt,time) + call SetTextTagFadepoint(tt,time) +endfunction + +//ļʱ +private function Main takes nothing returns nothing + local integer h = TaskListHead + local integer p + loop + set CurrentIndex = TaskListNext[h] + exitwhen CurrentIndex < 0 or CurrentTime < TaskListTime[CurrentIndex] + //call BJDebugMsg("Task:"+I2S(CurrentIndex)) + call TriggerEvaluate(TaskListProc[CurrentIndex]) + call DeleteTaskIndex(CurrentIndex) + set TaskListNext[h] = TaskListNext[CurrentIndex] + endloop + set CurrentTime = CurrentTime + 1 +endfunction + + +//ʼ +private function Init takes nothing returns nothing + set Timer = CreateTimer() + set TimerHandle = YDHashAny2I(timer, Timer) + set CurrentTime = 0 + set TaskListHead = 0 + set TaskListNext[0] = -1 + set TaskListIdleHead = 1 + set TaskListIdleMax = 1 + set TaskListIdle[1] = -1 + + set fnRemoveUnit = CreateTrigger() + set fnDestroyTimer = CreateTrigger() + set fnRemoveItem = CreateTrigger() + set fnDestroyEffect = CreateTrigger() + set fnDestroyLightning = CreateTrigger() + set fnRunTrigger = CreateTrigger() + call TriggerAddCondition(fnRemoveUnit, Condition(function RemoveUnit_CallBack)) + call TriggerAddCondition(fnDestroyTimer, Condition(function DestroyTimer_CallBack)) + call TriggerAddCondition(fnRemoveItem, Condition(function RemoveItem_CallBack)) + call TriggerAddCondition(fnDestroyEffect, Condition(function DestroyEffect_CallBack)) + call TriggerAddCondition(fnDestroyLightning, Condition(function DestroyLightning_CallBack)) + call TriggerAddCondition(fnRunTrigger, Condition(function RunTrigger_CallBack)) + + call TimerStart(Timer, 0.01, true, function Main) +endfunction + +//ѭöʱ +function YDWETimerSystemGetRunIndex takes nothing returns integer + return TimerSystem_RunIndex +endfunction + +#define INDEX_TRIGGER $D0001 +#define INDEX_RUNINDEX $D0002 +#define INDEX_TIMES $D0003 + +private function RunPeriodicTriggerFunction takes nothing returns nothing + local integer tid = YDHashAny2I(timer, GetExpiredTimer()) + local trigger trg = YDHashGet(YDHASH_HANDLE, trigger, tid, INDEX_TRIGGER) + call YDHashSetByString(YDHASH_HANDLE, integer, I2S(YDHashAny2I(trigger, trg)), "RunIndex", YDHashGet(YDHASH_HANDLE, integer, tid, INDEX_RUNINDEX)) + if TriggerEvaluate(trg) then + call TriggerExecute(trg) + endif + set trg = null +endfunction + +private function RunPeriodicTriggerFunctionByTimes takes nothing returns nothing + local integer tid = YDHashAny2I(timer, GetExpiredTimer()) + local trigger trg = YDHashGet(YDHASH_HANDLE, trigger, tid, INDEX_TRIGGER) + local integer times = YDHashGet(YDHASH_HANDLE, integer, tid, INDEX_TIMES) + call YDHashSetByString(YDHASH_HANDLE, integer, I2S(YDHashAny2I(trigger, trg)), "RunIndex", YDHashGet(YDHASH_HANDLE, integer, tid, INDEX_RUNINDEX)) + if TriggerEvaluate(trg) then + call TriggerExecute(trg) + endif + set times = times - 1 + if times > 0 then + call YDHashSet(YDHASH_HANDLE, integer, tid, INDEX_TIMES, times) + else + call DestroyTimer(GetExpiredTimer()) + call YDHashClearTable(YDHASH_HANDLE, tid) + endif + set trg = null +endfunction + +function YDWETimerRunPeriodicTrigger takes real timeout, trigger trg, boolean b, integer times, integer data returns nothing + local timer t + local integer tid + local integer index = 0 + if timeout < 0 then + return + else + set t = CreateTimer() + set tid = YDHashAny2I(timer, t) + endif + set TimerSystem_RunIndex = TimerSystem_RunIndex + 1 + call YDHashSet(YDHASH_HANDLE, trigger, tid, INDEX_TRIGGER, trg) + call YDHashSet(YDHASH_HANDLE, integer, tid, INDEX_RUNINDEX, TimerSystem_RunIndex) + set index = YDHashGet(YDHASH_HANDLE, integer, YDHashAny2I(trigger, trg), 'YDTS'+data) + set index = index + 1 + call YDHashSet(YDHASH_HANDLE, integer, YDHashAny2I(trigger, trg), 'YDTS'+data, index) + call YDHashSet(YDHASH_HANDLE, timer, YDHashAny2I(trigger, trg), ('YDTS'+data)*index, t) + + if b == false then + call YDHashSet(YDHASH_HANDLE, integer, tid, INDEX_TIMES, times) + call TimerStart(t, timeout, true, function RunPeriodicTriggerFunctionByTimes) + else + call TimerStart(t, timeout, true, function RunPeriodicTriggerFunction) + endif + set t = null +endfunction + +function YDWETimerRunPeriodicTriggerOver takes trigger trg, integer data returns nothing + local integer trgid = YDHashAny2I(trigger, trg) + local integer index = YDHashGet(YDHASH_HANDLE, integer, trgid, 'YDTS'+data) + local timer t + loop + exitwhen index <= 0 + set t = YDHashGet(YDHASH_HANDLE, timer, trgid, ('YDTS'+data)*index) + call DestroyTimer(t) + call YDHashClearTable(YDHASH_HANDLE, YDHashAny2I(timer, t)) + call YDHashClear(YDHASH_HANDLE, timer, trgid, ('YDTS'+data)*index) + set index = index - 1 + endloop + + call YDHashClear(YDHASH_HANDLE, integer, trgid, 'YDTS'+data) + set t = null +endfunction + +#undef INDEX_TRIGGER +#undef INDEX_RUNINDEX +#undef INDEX_TIMES + +endlibrary + + +#endif /// YDWETimerSystemIncluded diff --git a/jass/YDWETriggerEvent.cfg b/jass/YDWETriggerEvent.cfg new file mode 100644 index 0000000..a8fdaa3 --- /dev/null +++ b/jass/YDWETriggerEvent.cfg @@ -0,0 +1,2 @@ +YDWESyStemAnyUnitDamagedRegistTrigger +YDWESyStemItemUnmovableRegistTrigger \ No newline at end of file diff --git a/jass/YDWETriggerEvent.j b/jass/YDWETriggerEvent.j new file mode 100644 index 0000000..b880892 --- /dev/null +++ b/jass/YDWETriggerEvent.j @@ -0,0 +1,118 @@ +#ifndef YDWETriggerEventIncluded +#define YDWETriggerEventIncluded + +//=========================================================================== +//=========================================================================== +//Զ¼ +//=========================================================================== +//=========================================================================== + +library YDWETriggerEvent + +globals +#ifndef YDWE_DamageEventTrigger +#define YDWE_DamageEventTrigger + trigger yd_DamageEventTrigger = null +#endif + private trigger array DamageEventQueue + private integer DamageEventNumber = 0 + + item bj_lastMovedItemInItemSlot = null + + private trigger MoveItemEventTrigger = null + private trigger array MoveItemEventQueue + private integer MoveItemEventNumber = 0 +endglobals + +//=========================================================================== +//ⵥλ˺¼ +//=========================================================================== +function YDWEAnyUnitDamagedTriggerAction takes nothing returns nothing + local integer i = 0 + + loop + exitwhen i >= DamageEventNumber + if DamageEventQueue[i] != null and IsTriggerEnabled(DamageEventQueue[i]) and TriggerEvaluate(DamageEventQueue[i]) then + call TriggerExecute(DamageEventQueue[i]) + endif + set i = i + 1 + endloop +endfunction + +function YDWEAnyUnitDamagedFilter takes nothing returns boolean + if GetUnitAbilityLevel(GetFilterUnit(), 'Aloc') <= 0 then + call TriggerRegisterUnitEvent(yd_DamageEventTrigger, GetFilterUnit(), EVENT_UNIT_DAMAGED) + endif + return false +endfunction + +function YDWEAnyUnitDamagedEnumUnit takes nothing returns nothing + local trigger t = CreateTrigger() + local region r = CreateRegion() + local group g = CreateGroup() + + call RegionAddRect(r, GetWorldBounds()) + call TriggerRegisterEnterRegion(t, r, Condition(function YDWEAnyUnitDamagedFilter)) + call GroupEnumUnitsInRect(g, GetWorldBounds(), Condition(function YDWEAnyUnitDamagedFilter)) + + call DestroyGroup(g) + set r = null + set t = null + set g = null +endfunction + +function YDWESyStemAnyUnitDamagedRegistTrigger takes trigger trg returns nothing + if trg == null then + return + endif + + if DamageEventNumber == 0 then + set yd_DamageEventTrigger = CreateTrigger() + call TriggerAddAction(yd_DamageEventTrigger, function YDWEAnyUnitDamagedTriggerAction) + call YDWEAnyUnitDamagedEnumUnit() + endif + + set DamageEventQueue[DamageEventNumber] = trg + set DamageEventNumber = DamageEventNumber + 1 +endfunction + +//=========================================================================== +//ƶƷ¼ +//=========================================================================== +function YDWESyStemItemUnmovableTriggerAction takes nothing returns nothing + local integer i = 0 + + if GetIssuedOrderId() >= 852002 and GetIssuedOrderId() <= 852007 then + set bj_lastMovedItemInItemSlot = GetOrderTargetItem() + loop + exitwhen i >= MoveItemEventNumber + if MoveItemEventQueue[i] != null and IsTriggerEnabled(MoveItemEventQueue[i]) and TriggerEvaluate(MoveItemEventQueue[i]) then + call TriggerExecute(MoveItemEventQueue[i]) + endif + set i = i + 1 + endloop + endif +endfunction + +function YDWESyStemItemUnmovableRegistTrigger takes trigger trg returns nothing + if trg == null then + return + endif + + if MoveItemEventNumber == 0 then + set MoveItemEventTrigger = CreateTrigger() + call TriggerAddAction(MoveItemEventTrigger, function YDWESyStemItemUnmovableTriggerAction) + call TriggerRegisterAnyUnitEventBJ(MoveItemEventTrigger, EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER) + endif + + set MoveItemEventQueue[MoveItemEventNumber] = trg + set MoveItemEventNumber = MoveItemEventNumber + 1 +endfunction + +function GetLastMovedItemInItemSlot takes nothing returns item + return bj_lastMovedItemInItemSlot +endfunction + +endlibrary + +#endif /// YDWETriggerEventIncluded diff --git a/jass/japi/YDWEAbilityState.cfg b/jass/japi/YDWEAbilityState.cfg new file mode 100644 index 0000000..459ee5a --- /dev/null +++ b/jass/japi/YDWEAbilityState.cfg @@ -0,0 +1,11 @@ +YDWEGetUnitAbilityState +YDWEGetUnitAbilityDataInteger +YDWEGetUnitAbilityDataReal +YDWEGetUnitAbilityDataString +YDWESetUnitAbilityState +YDWESetUnitAbilityDataInteger +YDWESetUnitAbilityDataReal +YDWESetUnitAbilityDataString +YDWEUnitTransform +YDWEGetItemDataString +YDWESetItemDataString diff --git a/jass/japi/YDWEAbilityState.j b/jass/japi/YDWEAbilityState.j new file mode 100644 index 0000000..11ea787 --- /dev/null +++ b/jass/japi/YDWEAbilityState.j @@ -0,0 +1,119 @@ +#ifndef YDWEAbilityStateIncluded +#define YDWEAbilityStateIncluded + +library YDWEAbilityState + globals + private constant integer ABILITY_STATE_COOLDOWN = 1 + + private constant integer ABILITY_DATA_TARGS = 100 // integer + private constant integer ABILITY_DATA_CAST = 101 // real + private constant integer ABILITY_DATA_DUR = 102 // real + private constant integer ABILITY_DATA_HERODUR = 103 // real + private constant integer ABILITY_DATA_COST = 104 // integer + private constant integer ABILITY_DATA_COOL = 105 // real + private constant integer ABILITY_DATA_AREA = 106 // real + private constant integer ABILITY_DATA_RNG = 107 // real + private constant integer ABILITY_DATA_DATA_A = 108 // real + private constant integer ABILITY_DATA_DATA_B = 109 // real + private constant integer ABILITY_DATA_DATA_C = 110 // real + private constant integer ABILITY_DATA_DATA_D = 111 // real + private constant integer ABILITY_DATA_DATA_E = 112 // real + private constant integer ABILITY_DATA_DATA_F = 113 // real + private constant integer ABILITY_DATA_DATA_G = 114 // real + private constant integer ABILITY_DATA_DATA_H = 115 // real + private constant integer ABILITY_DATA_DATA_I = 116 // real + private constant integer ABILITY_DATA_UNITID = 117 // integer + + private constant integer ABILITY_DATA_HOTKET = 200 // integer + private constant integer ABILITY_DATA_UNHOTKET = 201 // integer + private constant integer ABILITY_DATA_RESEARCH_HOTKEY = 202 // integer + private constant integer ABILITY_DATA_NAME = 203 // string + private constant integer ABILITY_DATA_ART = 204 // string + private constant integer ABILITY_DATA_TARGET_ART = 205 // string + private constant integer ABILITY_DATA_CASTER_ART = 206 // string + private constant integer ABILITY_DATA_EFFECT_ART = 207 // string + private constant integer ABILITY_DATA_AREAEFFECT_ART = 208 // string + private constant integer ABILITY_DATA_MISSILE_ART = 209 // string + private constant integer ABILITY_DATA_SPECIAL_ART = 210 // string + private constant integer ABILITY_DATA_LIGHTNING_EFFECT = 211 // string + private constant integer ABILITY_DATA_BUFF_TIP = 212 // string + private constant integer ABILITY_DATA_BUFF_UBERTIP = 213 // string + private constant integer ABILITY_DATA_RESEARCH_TIP = 214 // string + private constant integer ABILITY_DATA_TIP = 215 // string + private constant integer ABILITY_DATA_UNTIP = 216 // string + private constant integer ABILITY_DATA_RESEARCH_UBERTIP = 217 // string + private constant integer ABILITY_DATA_UBERTIP = 218 // string + private constant integer ABILITY_DATA_UNUBERTIP = 219 // string + private constant integer ABILITY_DATA_UNART = 220 // string + endglobals + + native EXGetUnitAbility takes unit u, integer abilcode returns ability + native EXGetUnitAbilityByIndex takes unit u, integer index returns ability + native EXGetAbilityId takes ability abil returns integer + native EXGetAbilityState takes ability abil, integer state_type returns real + native EXSetAbilityState takes ability abil, integer state_type, real value returns boolean + native EXGetAbilityDataReal takes ability abil, integer level, integer data_type returns real + native EXSetAbilityDataReal takes ability abil, integer level, integer data_type, real value returns boolean + native EXGetAbilityDataInteger takes ability abil, integer level, integer data_type returns integer + native EXSetAbilityDataInteger takes ability abil, integer level, integer data_type, integer value returns boolean + native EXGetAbilityDataString takes ability abil, integer level, integer data_type returns string + native EXSetAbilityDataString takes ability abil, integer level, integer data_type, string value returns boolean + + function YDWEGetUnitAbilityState takes unit u, integer abilcode, integer state_type returns real + return EXGetAbilityState(EXGetUnitAbility(u, abilcode), state_type) + endfunction + + function YDWEGetUnitAbilityDataInteger takes unit u, integer abilcode, integer level, integer data_type returns integer + return EXGetAbilityDataInteger(EXGetUnitAbility(u, abilcode), level, data_type) + endfunction + + function YDWEGetUnitAbilityDataReal takes unit u, integer abilcode, integer level, integer data_type returns real + return EXGetAbilityDataReal(EXGetUnitAbility(u, abilcode), level, data_type) + endfunction + + function YDWEGetUnitAbilityDataString takes unit u, integer abilcode, integer level, integer data_type returns string + return EXGetAbilityDataString(EXGetUnitAbility(u, abilcode), level, data_type) + endfunction + + function YDWESetUnitAbilityState takes unit u, integer abilcode, integer state_type, real value returns boolean + return EXSetAbilityState(EXGetUnitAbility(u, abilcode), state_type, value) + endfunction + + function YDWESetUnitAbilityDataInteger takes unit u, integer abilcode, integer level, integer data_type, integer value returns boolean + return EXSetAbilityDataInteger(EXGetUnitAbility(u, abilcode), level, data_type, value) + endfunction + + function YDWESetUnitAbilityDataReal takes unit u, integer abilcode, integer level, integer data_type, real value returns boolean + return EXSetAbilityDataReal(EXGetUnitAbility(u, abilcode), level, data_type, value) + endfunction + + function YDWESetUnitAbilityDataString takes unit u, integer abilcode, integer level, integer data_type, string value returns boolean + return EXSetAbilityDataString(EXGetUnitAbility(u, abilcode), level, data_type, value) + endfunction + + native EXSetAbilityAEmeDataA takes ability abil, integer unitid returns boolean + + function YDWEUnitTransform takes unit u, integer abilcode, integer targetid returns nothing + call UnitAddAbility(u, abilcode) + call EXSetAbilityDataInteger(EXGetUnitAbility(u, abilcode), 1, ABILITY_DATA_UNITID, GetUnitTypeId(u)) + call EXSetAbilityAEmeDataA(EXGetUnitAbility(u, abilcode), GetUnitTypeId(u)) + call UnitRemoveAbility(u, abilcode) + call UnitAddAbility(u, abilcode) + call EXSetAbilityAEmeDataA(EXGetUnitAbility(u, abilcode), targetid) + call UnitRemoveAbility(u, abilcode) + endfunction + + native EXGetItemDataString takes integer itemcode, integer data_type returns string + native EXSetItemDataString takes integer itemcode, integer data_type, string value returns boolean + + function YDWEGetItemDataString takes integer itemcode, integer data_type returns string + return EXGetItemDataString(itemcode, data_type) + endfunction + + function YDWESetItemDataString takes integer itemcode, integer data_type, string value returns boolean + return EXSetItemDataString(itemcode, data_type, value) + endfunction + +endlibrary + +#endif /// YDWEAbilityStateIncluded diff --git a/jass/japi/YDWEEventDamageData.cfg b/jass/japi/YDWEEventDamageData.cfg new file mode 100644 index 0000000..2341fd5 --- /dev/null +++ b/jass/japi/YDWEEventDamageData.cfg @@ -0,0 +1,7 @@ +YDWEIsEventPhysicalDamage +YDWEIsEventAttackDamage +YDWEIsEventRangedDamage +YDWEIsEventDamageType +YDWEIsEventWeaponType +YDWEIsEventAttackType +YDWESetEventDamage diff --git a/jass/japi/YDWEEventDamageData.j b/jass/japi/YDWEEventDamageData.j new file mode 100644 index 0000000..2eb70f8 --- /dev/null +++ b/jass/japi/YDWEEventDamageData.j @@ -0,0 +1,50 @@ +#ifndef YDWEEventDamageDataIncluded +#define YDWEEventDamageDataIncluded + +library YDWEEventDamageData + globals + private constant integer EVENT_DAMAGE_DATA_VAILD = 0 + private constant integer EVENT_DAMAGE_DATA_IS_PHYSICAL = 1 + private constant integer EVENT_DAMAGE_DATA_IS_ATTACK = 2 + private constant integer EVENT_DAMAGE_DATA_IS_RANGED = 3 + private constant integer EVENT_DAMAGE_DATA_DAMAGE_TYPE = 4 + private constant integer EVENT_DAMAGE_DATA_WEAPON_TYPE = 5 + private constant integer EVENT_DAMAGE_DATA_ATTACK_TYPE = 6 + endglobals + + native EXGetEventDamageData takes integer edd_type returns integer + native EXSetEventDamage takes real amount returns boolean + + function YDWEIsEventPhysicalDamage takes nothing returns boolean + return 0 != EXGetEventDamageData(EVENT_DAMAGE_DATA_IS_PHYSICAL) + endfunction + + function YDWEIsEventAttackDamage takes nothing returns boolean + return 0 != EXGetEventDamageData(EVENT_DAMAGE_DATA_IS_ATTACK) + endfunction + + function YDWEIsEventRangedDamage takes nothing returns boolean + return 0 != EXGetEventDamageData(EVENT_DAMAGE_DATA_IS_RANGED) + endfunction + + function YDWEIsEventDamageType takes damagetype damageType returns boolean + return damageType == ConvertDamageType(EXGetEventDamageData(EVENT_DAMAGE_DATA_DAMAGE_TYPE)) + endfunction + + function YDWEIsEventWeaponType takes weapontype weaponType returns boolean + return weaponType == ConvertWeaponType(EXGetEventDamageData(EVENT_DAMAGE_DATA_WEAPON_TYPE)) + endfunction + + function YDWEIsEventAttackType takes attacktype attackType returns boolean + return attackType == ConvertAttackType(EXGetEventDamageData(EVENT_DAMAGE_DATA_ATTACK_TYPE)) + endfunction + + + function YDWESetEventDamage takes real amount returns boolean + return EXSetEventDamage(amount) + endfunction + + +endlibrary + +#endif /// YDWEEventDamageDataIncluded diff --git a/jass/japi/YDWEJapiEffect.cfg b/jass/japi/YDWEJapiEffect.cfg new file mode 100644 index 0000000..ff18876 --- /dev/null +++ b/jass/japi/YDWEJapiEffect.cfg @@ -0,0 +1,14 @@ +EXGetEffectX +EXGetEffectY +EXGetEffectZ +EXSetEffectXY +EXSetEffectZ +EXGetEffectSize +EXSetEffectSize +EXEffectMatRotateX +EXEffectMatRotateY +EXEffectMatRotateZ +EXEffectMatScale +EXEffectMatReset +EXSetEffectSpeed +YDWESetEffectLoc diff --git a/jass/japi/YDWEJapiEffect.j b/jass/japi/YDWEJapiEffect.j new file mode 100644 index 0000000..3b9f05c --- /dev/null +++ b/jass/japi/YDWEJapiEffect.j @@ -0,0 +1,24 @@ +#ifndef YDWEEffectIncluded +#define YDWEEffectIncluded + +library YDWEJapiEffect + native EXGetEffectX takes effect e returns real + native EXGetEffectY takes effect e returns real + native EXGetEffectZ takes effect e returns real + native EXSetEffectXY takes effect e, real x, real y returns nothing + native EXSetEffectZ takes effect e, real z returns nothing + native EXGetEffectSize takes effect e returns real + native EXSetEffectSize takes effect e, real size returns nothing + native EXEffectMatRotateX takes effect e, real angle returns nothing + native EXEffectMatRotateY takes effect e, real angle returns nothing + native EXEffectMatRotateZ takes effect e, real angle returns nothing + native EXEffectMatScale takes effect e, real x, real y, real z returns nothing + native EXEffectMatReset takes effect e returns nothing + native EXSetEffectSpeed takes effect e, real speed returns nothing + + function YDWESetEffectLoc takes effect e, location loc returns nothing + call EXSetEffectXY(e, GetLocationX(loc), GetLocationY(loc)) + endfunction +endlibrary + +#endif /// YDWEEffectIncluded diff --git a/jass/japi/YDWEJapiOther.cfg b/jass/japi/YDWEJapiOther.cfg new file mode 100644 index 0000000..c13a9e7 --- /dev/null +++ b/jass/japi/YDWEJapiOther.cfg @@ -0,0 +1,5 @@ +YDWEDisplayChat +YDWEGetUnitId +YDWESetUnitId +YDWERevealTrainingProcess +YDWEGetGameBaseAdr \ No newline at end of file diff --git a/jass/japi/YDWEJapiOther.j b/jass/japi/YDWEJapiOther.j new file mode 100644 index 0000000..554d17a --- /dev/null +++ b/jass/japi/YDWEJapiOther.j @@ -0,0 +1,20 @@ +#ifndef YDWEYDWEJapiOtherIncluded +#define YDWEYDWEJapiOtherIncluded + +library YDWEYDWEJapiOther + globals + private constant integer CHAT_RECIPIENT_ALL = 0 // [] + private constant integer CHAT_RECIPIENT_ALLIES = 1 // [] + private constant integer CHAT_RECIPIENT_OBSERVERS = 2 // [ۿ] + private constant integer CHAT_RECIPIENT_REFEREES = 2 // [] + private constant integer CHAT_RECIPIENT_PRIVATE = 3 // [˽˵] + endglobals + + native EXDisplayChat takes player p, integer chat_recipient, string message returns nothing + + function YDWEDisplayChat takes player p, integer chat_recipient, string message returns nothing + call EXDisplayChat(p, chat_recipient, message) + endfunction +endlibrary + +#endif /// YDWEYDWEJapiOtherIncluded diff --git a/jass/japi/YDWEJapiScript.cfg b/jass/japi/YDWEJapiScript.cfg new file mode 100644 index 0000000..36a2e50 --- /dev/null +++ b/jass/japi/YDWEJapiScript.cfg @@ -0,0 +1,4 @@ +YDWEGetObjectProperty +YDWEGetObjectPropertyInteger +YDWEGetObjectPropertyReal +YDWEGetObjectPropertyString diff --git a/jass/japi/YDWEJapiScript.j b/jass/japi/YDWEJapiScript.j new file mode 100644 index 0000000..aacd586 --- /dev/null +++ b/jass/japi/YDWEJapiScript.j @@ -0,0 +1,19 @@ +#ifndef YDWEYDWEJapiScriptIncluded +#define YDWEYDWEJapiScriptIncluded + +library YDWEYDWEJapiScript + globals + constant integer YDWE_OBJECT_TYPE_ABILITY = 0 + constant integer YDWE_OBJECT_TYPE_BUFF = 1 + constant integer YDWE_OBJECT_TYPE_UNIT = 2 + constant integer YDWE_OBJECT_TYPE_ITEM = 3 + constant integer YDWE_OBJECT_TYPE_UPGRADE = 4 + constant integer YDWE_OBJECT_TYPE_DOODAD = 5 + constant integer YDWE_OBJECT_TYPE_DESTRUCTABLE = 6 + endglobals + + native EXExecuteScript takes string script returns string + +endlibrary + +#endif /// YDWEYDWEJapiScriptIncluded diff --git a/jass/japi/YDWEJapiUnit.cfg b/jass/japi/YDWEJapiUnit.cfg new file mode 100644 index 0000000..ab0bde9 --- /dev/null +++ b/jass/japi/YDWEJapiUnit.cfg @@ -0,0 +1,11 @@ +YDWEUnitAddStun +YDWEUnitRemoveStun +EXSetUnitFacing +EXSetUnitMoveType +EXSetUnitCollisionType +DzSetUnitAttackType +DzSetUnitDefenseType +DzIsUnitAttackType +DzIsUnitDefenseType +DzSetUnitTypeName +DzSetHeroTypeProperName diff --git a/jass/japi/YDWEJapiUnit.j b/jass/japi/YDWEJapiUnit.j new file mode 100644 index 0000000..6d38399 --- /dev/null +++ b/jass/japi/YDWEJapiUnit.j @@ -0,0 +1,59 @@ +#ifndef YDWEJapiUnitIncluded +#define YDWEJapiUnitIncluded + +library YDWEJapiUnit + globals + constant integer DEFENSE_TYPE_LIGHT=0 + constant integer DEFENSE_TYPE_MEDIUM=1 + constant integer DEFENSE_TYPE_LARGE=2 + constant integer DEFENSE_TYPE_FORT=3 + constant integer DEFENSE_TYPE_NORMAL=4 + constant integer DEFENSE_TYPE_HERO=5 + constant integer DEFENSE_TYPE_DIVINE=6 + constant integer DEFENSE_TYPE_NONE=7 + endglobals + + native EXSetUnitFacing takes unit u, real angle returns nothing + native EXPauseUnit takes unit u, boolean flag returns nothing + native EXSetUnitCollisionType takes boolean enable, unit u, integer t returns nothing + native EXSetUnitMoveType takes unit u, integer t returns nothing + native EXSetUnitArrayString takes integer uid, integer id,integer n,string name returns boolean + native EXSetUnitInteger takes integer uid, integer id,integer n returns boolean + + function DzIsUnitAttackType takes unit whichUnit,integer index,attacktype attackType returns boolean + return ConvertAttackType(R2I(GetUnitState(GetTriggerUnit(), ConvertUnitState(16+19*index))))==attackType + endfunction + + function DzSetUnitAttackType takes unit whichUnit,integer index,attacktype attackType returns nothing + call SetUnitState( GetTriggerUnit(), ConvertUnitState(16+19*index), GetHandleId(attackType )) + endfunction + + function DzIsUnitDefenseType takes unit whichUnit,integer defenseType returns boolean + return R2I(GetUnitState(GetTriggerUnit(), ConvertUnitState(0x50)))==defenseType + endfunction + + function DzSetUnitDefenseType takes unit whichUnit,integer defenseType returns nothing + call SetUnitState( GetTriggerUnit(), ConvertUnitState(0x50), defenseType ) + endfunction + + function YDWEUnitAddStun takes unit u returns nothing + call EXPauseUnit(u, true) + endfunction + + function YDWEUnitRemoveStun takes unit u returns nothing + call EXPauseUnit(u, false) + endfunction + + function DzSetHeroTypeProperName takes integer uid,string name returns nothing + call EXSetUnitArrayString(uid,61,0,name) + call EXSetUnitInteger(uid,61,1) + endfunction + + function DzSetUnitTypeName takes integer uid,string name returns nothing + call EXSetUnitArrayString(uid,10,0,name) + call EXSetUnitInteger(uid,10,1) + endfunction + +endlibrary + +#endif /// YDWEJapiUnitIncluded diff --git a/jass/japi/YDWEState.j b/jass/japi/YDWEState.j new file mode 100644 index 0000000..976c33a --- /dev/null +++ b/jass/japi/YDWEState.j @@ -0,0 +1,14 @@ +// globals +// private constant integer ITEM_DATA_ART = 1 +// private constant integer ITEM_DATA_UBERTIP = 3 +// private constant integer ITEM_DATA_NAME = 4 +// +// private constant integer BUFF_DATA_ART = 1 +// private constant integer BUFF_DATA_TIP = 2 +// private constant integer BUFF_DATA_UBERTIP = 3 +// endglobals +// +// native EXGetItemDataString takes integer itemcode, integer data_type returns string +// native EXSetItemDataString takes integer itemcode, integer data_type, string value returns boolean +// native EXGetBuffDataString takes integer buffcode, integer data_type returns string +// native EXSetBuffDataString takes integer buffcode, integer data_type, string value returns boolean diff --git a/jass/system/ht/blizzard.j b/jass/system/ht/blizzard.j new file mode 100644 index 0000000..38feb96 --- /dev/null +++ b/jass/system/ht/blizzard.j @@ -0,0 +1,10229 @@ +//=========================================================================== +// Blizzard.j ( define Jass2 functions that need to be in every map script ) +//=========================================================================== + + +globals + //----------------------------------------------------------------------- + // Constants + // + + // Misc constants + constant real bj_PI = 3.14159 + constant real bj_E = 2.71828 + constant real bj_CELLWIDTH = 128.0 + constant real bj_CLIFFHEIGHT = 128.0 + constant real bj_UNIT_FACING = 270.0 + constant real bj_RADTODEG = 180.0/bj_PI + constant real bj_DEGTORAD = bj_PI/180.0 + constant real bj_TEXT_DELAY_QUEST = 20.00 + constant real bj_TEXT_DELAY_QUESTUPDATE = 20.00 + constant real bj_TEXT_DELAY_QUESTDONE = 20.00 + constant real bj_TEXT_DELAY_QUESTFAILED = 20.00 + constant real bj_TEXT_DELAY_QUESTREQUIREMENT = 20.00 + constant real bj_TEXT_DELAY_MISSIONFAILED = 20.00 + constant real bj_TEXT_DELAY_ALWAYSHINT = 12.00 + constant real bj_TEXT_DELAY_HINT = 12.00 + constant real bj_TEXT_DELAY_SECRET = 10.00 + constant real bj_TEXT_DELAY_UNITACQUIRED = 15.00 + constant real bj_TEXT_DELAY_UNITAVAILABLE = 10.00 + constant real bj_TEXT_DELAY_ITEMACQUIRED = 10.00 + constant real bj_TEXT_DELAY_WARNING = 12.00 + constant real bj_QUEUE_DELAY_QUEST = 5.00 + constant real bj_QUEUE_DELAY_HINT = 5.00 + constant real bj_QUEUE_DELAY_SECRET = 3.00 + constant real bj_HANDICAP_EASY = 60.00 + constant real bj_GAME_STARTED_THRESHOLD = 0.01 + constant real bj_WAIT_FOR_COND_MIN_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_SKIP_THRESHOLD = 2.00 + + // Game constants + constant integer bj_MAX_INVENTORY = 6 + constant integer bj_MAX_PLAYERS = 12 + constant integer bj_PLAYER_NEUTRAL_VICTIM = 13 + constant integer bj_PLAYER_NEUTRAL_EXTRA = 14 + constant integer bj_MAX_PLAYER_SLOTS = 16 + constant integer bj_MAX_SKELETONS = 25 + constant integer bj_MAX_STOCK_ITEM_SLOTS = 11 + constant integer bj_MAX_STOCK_UNIT_SLOTS = 11 + constant integer bj_MAX_ITEM_LEVEL = 10 + + // Ideally these would be looked up from Units/MiscData.txt, + // but there is currently no script functionality exposed to do that + constant real bj_TOD_DAWN = 6.00 + constant real bj_TOD_DUSK = 18.00 + + // Melee game settings: + // - Starting Time of Day (TOD) + // - Starting Gold + // - Starting Lumber + // - Starting Hero Tokens (free heroes) + // - Max heroes allowed per player + // - Max heroes allowed per hero type + // - Distance from start loc to search for nearby mines + // + constant real bj_MELEE_STARTING_TOD = 8.00 + constant integer bj_MELEE_STARTING_GOLD_V0 = 750 + constant integer bj_MELEE_STARTING_GOLD_V1 = 500 + constant integer bj_MELEE_STARTING_LUMBER_V0 = 200 + constant integer bj_MELEE_STARTING_LUMBER_V1 = 150 + constant integer bj_MELEE_STARTING_HERO_TOKENS = 1 + constant integer bj_MELEE_HERO_LIMIT = 3 + constant integer bj_MELEE_HERO_TYPE_LIMIT = 1 + constant real bj_MELEE_MINE_SEARCH_RADIUS = 2000 + constant real bj_MELEE_CLEAR_UNITS_RADIUS = 1500 + constant real bj_MELEE_CRIPPLE_TIMEOUT = 120.00 + constant real bj_MELEE_CRIPPLE_MSG_DURATION = 20.00 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V0 = 3 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V1 = 1 + + // Delay between a creep's death and the time it may drop an item. + constant real bj_CREEP_ITEM_DELAY = 0.50 + + // Timing settings for Marketplace inventories. + constant real bj_STOCK_RESTOCK_INITIAL_DELAY = 120 + constant real bj_STOCK_RESTOCK_INTERVAL = 30 + constant integer bj_STOCK_MAX_ITERATIONS = 20 + + // Max events registered by a single "dest dies in region" event. + constant integer bj_MAX_DEST_IN_REGION_EVENTS = 64 + + // Camera settings + constant integer bj_CAMERA_MIN_FARZ = 100 + constant integer bj_CAMERA_DEFAULT_DISTANCE = 1650 + constant integer bj_CAMERA_DEFAULT_FARZ = 5000 + constant integer bj_CAMERA_DEFAULT_AOA = 304 + constant integer bj_CAMERA_DEFAULT_FOV = 70 + constant integer bj_CAMERA_DEFAULT_ROLL = 0 + constant integer bj_CAMERA_DEFAULT_ROTATION = 90 + + // Rescue + constant real bj_RESCUE_PING_TIME = 2.00 + + // Transmission behavior settings + constant real bj_NOTHING_SOUND_DURATION = 5.00 + constant real bj_TRANSMISSION_PING_TIME = 1.00 + constant integer bj_TRANSMISSION_IND_RED = 255 + constant integer bj_TRANSMISSION_IND_BLUE = 255 + constant integer bj_TRANSMISSION_IND_GREEN = 255 + constant integer bj_TRANSMISSION_IND_ALPHA = 255 + constant real bj_TRANSMISSION_PORT_HANGTIME = 1.50 + + // Cinematic mode settings + constant real bj_CINEMODE_INTERFACEFADE = 0.50 + constant gamespeed bj_CINEMODE_GAMESPEED = MAP_SPEED_NORMAL + + // Cinematic mode volume levels + constant real bj_CINEMODE_VOLUME_UNITMOVEMENT = 0.40 + constant real bj_CINEMODE_VOLUME_UNITSOUNDS = 0.00 + constant real bj_CINEMODE_VOLUME_COMBAT = 0.40 + constant real bj_CINEMODE_VOLUME_SPELLS = 0.40 + constant real bj_CINEMODE_VOLUME_UI = 0.00 + constant real bj_CINEMODE_VOLUME_MUSIC = 0.55 + constant real bj_CINEMODE_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_CINEMODE_VOLUME_FIRE = 0.60 + + // Speech mode volume levels + constant real bj_SPEECH_VOLUME_UNITMOVEMENT = 0.25 + constant real bj_SPEECH_VOLUME_UNITSOUNDS = 0.00 + constant real bj_SPEECH_VOLUME_COMBAT = 0.25 + constant real bj_SPEECH_VOLUME_SPELLS = 0.25 + constant real bj_SPEECH_VOLUME_UI = 0.00 + constant real bj_SPEECH_VOLUME_MUSIC = 0.55 + constant real bj_SPEECH_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_SPEECH_VOLUME_FIRE = 0.60 + + // Smart pan settings + constant real bj_SMARTPAN_TRESHOLD_PAN = 500 + constant real bj_SMARTPAN_TRESHOLD_SNAP = 3500 + + // QueuedTriggerExecute settings + constant integer bj_MAX_QUEUED_TRIGGERS = 100 + constant real bj_QUEUED_TRIGGER_TIMEOUT = 180.00 + + // Campaign indexing constants + constant integer bj_CAMPAIGN_INDEX_T = 0 + constant integer bj_CAMPAIGN_INDEX_H = 1 + constant integer bj_CAMPAIGN_INDEX_U = 2 + constant integer bj_CAMPAIGN_INDEX_O = 3 + constant integer bj_CAMPAIGN_INDEX_N = 4 + constant integer bj_CAMPAIGN_INDEX_XN = 5 + constant integer bj_CAMPAIGN_INDEX_XH = 6 + constant integer bj_CAMPAIGN_INDEX_XU = 7 + constant integer bj_CAMPAIGN_INDEX_XO = 8 + + // Campaign offset constants (for mission indexing) + constant integer bj_CAMPAIGN_OFFSET_T = 0 + constant integer bj_CAMPAIGN_OFFSET_H = 1 + constant integer bj_CAMPAIGN_OFFSET_U = 2 + constant integer bj_CAMPAIGN_OFFSET_O = 3 + constant integer bj_CAMPAIGN_OFFSET_N = 4 + constant integer bj_CAMPAIGN_OFFSET_XN = 0 + constant integer bj_CAMPAIGN_OFFSET_XH = 1 + constant integer bj_CAMPAIGN_OFFSET_XU = 2 + constant integer bj_CAMPAIGN_OFFSET_XO = 3 + + // Mission indexing constants + // Tutorial + constant integer bj_MISSION_INDEX_T00 = bj_CAMPAIGN_OFFSET_T * 1000 + 0 + constant integer bj_MISSION_INDEX_T01 = bj_CAMPAIGN_OFFSET_T * 1000 + 1 + // Human + constant integer bj_MISSION_INDEX_H00 = bj_CAMPAIGN_OFFSET_H * 1000 + 0 + constant integer bj_MISSION_INDEX_H01 = bj_CAMPAIGN_OFFSET_H * 1000 + 1 + constant integer bj_MISSION_INDEX_H02 = bj_CAMPAIGN_OFFSET_H * 1000 + 2 + constant integer bj_MISSION_INDEX_H03 = bj_CAMPAIGN_OFFSET_H * 1000 + 3 + constant integer bj_MISSION_INDEX_H04 = bj_CAMPAIGN_OFFSET_H * 1000 + 4 + constant integer bj_MISSION_INDEX_H05 = bj_CAMPAIGN_OFFSET_H * 1000 + 5 + constant integer bj_MISSION_INDEX_H06 = bj_CAMPAIGN_OFFSET_H * 1000 + 6 + constant integer bj_MISSION_INDEX_H07 = bj_CAMPAIGN_OFFSET_H * 1000 + 7 + constant integer bj_MISSION_INDEX_H08 = bj_CAMPAIGN_OFFSET_H * 1000 + 8 + constant integer bj_MISSION_INDEX_H09 = bj_CAMPAIGN_OFFSET_H * 1000 + 9 + constant integer bj_MISSION_INDEX_H10 = bj_CAMPAIGN_OFFSET_H * 1000 + 10 + constant integer bj_MISSION_INDEX_H11 = bj_CAMPAIGN_OFFSET_H * 1000 + 11 + // Undead + constant integer bj_MISSION_INDEX_U00 = bj_CAMPAIGN_OFFSET_U * 1000 + 0 + constant integer bj_MISSION_INDEX_U01 = bj_CAMPAIGN_OFFSET_U * 1000 + 1 + constant integer bj_MISSION_INDEX_U02 = bj_CAMPAIGN_OFFSET_U * 1000 + 2 + constant integer bj_MISSION_INDEX_U03 = bj_CAMPAIGN_OFFSET_U * 1000 + 3 + constant integer bj_MISSION_INDEX_U05 = bj_CAMPAIGN_OFFSET_U * 1000 + 4 + constant integer bj_MISSION_INDEX_U07 = bj_CAMPAIGN_OFFSET_U * 1000 + 5 + constant integer bj_MISSION_INDEX_U08 = bj_CAMPAIGN_OFFSET_U * 1000 + 6 + constant integer bj_MISSION_INDEX_U09 = bj_CAMPAIGN_OFFSET_U * 1000 + 7 + constant integer bj_MISSION_INDEX_U10 = bj_CAMPAIGN_OFFSET_U * 1000 + 8 + constant integer bj_MISSION_INDEX_U11 = bj_CAMPAIGN_OFFSET_U * 1000 + 9 + // Orc + constant integer bj_MISSION_INDEX_O00 = bj_CAMPAIGN_OFFSET_O * 1000 + 0 + constant integer bj_MISSION_INDEX_O01 = bj_CAMPAIGN_OFFSET_O * 1000 + 1 + constant integer bj_MISSION_INDEX_O02 = bj_CAMPAIGN_OFFSET_O * 1000 + 2 + constant integer bj_MISSION_INDEX_O03 = bj_CAMPAIGN_OFFSET_O * 1000 + 3 + constant integer bj_MISSION_INDEX_O04 = bj_CAMPAIGN_OFFSET_O * 1000 + 4 + constant integer bj_MISSION_INDEX_O05 = bj_CAMPAIGN_OFFSET_O * 1000 + 5 + constant integer bj_MISSION_INDEX_O06 = bj_CAMPAIGN_OFFSET_O * 1000 + 6 + constant integer bj_MISSION_INDEX_O07 = bj_CAMPAIGN_OFFSET_O * 1000 + 7 + constant integer bj_MISSION_INDEX_O08 = bj_CAMPAIGN_OFFSET_O * 1000 + 8 + constant integer bj_MISSION_INDEX_O09 = bj_CAMPAIGN_OFFSET_O * 1000 + 9 + constant integer bj_MISSION_INDEX_O10 = bj_CAMPAIGN_OFFSET_O * 1000 + 10 + // Night Elf + constant integer bj_MISSION_INDEX_N00 = bj_CAMPAIGN_OFFSET_N * 1000 + 0 + constant integer bj_MISSION_INDEX_N01 = bj_CAMPAIGN_OFFSET_N * 1000 + 1 + constant integer bj_MISSION_INDEX_N02 = bj_CAMPAIGN_OFFSET_N * 1000 + 2 + constant integer bj_MISSION_INDEX_N03 = bj_CAMPAIGN_OFFSET_N * 1000 + 3 + constant integer bj_MISSION_INDEX_N04 = bj_CAMPAIGN_OFFSET_N * 1000 + 4 + constant integer bj_MISSION_INDEX_N05 = bj_CAMPAIGN_OFFSET_N * 1000 + 5 + constant integer bj_MISSION_INDEX_N06 = bj_CAMPAIGN_OFFSET_N * 1000 + 6 + constant integer bj_MISSION_INDEX_N07 = bj_CAMPAIGN_OFFSET_N * 1000 + 7 + constant integer bj_MISSION_INDEX_N08 = bj_CAMPAIGN_OFFSET_N * 1000 + 8 + constant integer bj_MISSION_INDEX_N09 = bj_CAMPAIGN_OFFSET_N * 1000 + 9 + // Expansion Night Elf + constant integer bj_MISSION_INDEX_XN00 = bj_CAMPAIGN_OFFSET_XN * 1000 + 0 + constant integer bj_MISSION_INDEX_XN01 = bj_CAMPAIGN_OFFSET_XN * 1000 + 1 + constant integer bj_MISSION_INDEX_XN02 = bj_CAMPAIGN_OFFSET_XN * 1000 + 2 + constant integer bj_MISSION_INDEX_XN03 = bj_CAMPAIGN_OFFSET_XN * 1000 + 3 + constant integer bj_MISSION_INDEX_XN04 = bj_CAMPAIGN_OFFSET_XN * 1000 + 4 + constant integer bj_MISSION_INDEX_XN05 = bj_CAMPAIGN_OFFSET_XN * 1000 + 5 + constant integer bj_MISSION_INDEX_XN06 = bj_CAMPAIGN_OFFSET_XN * 1000 + 6 + constant integer bj_MISSION_INDEX_XN07 = bj_CAMPAIGN_OFFSET_XN * 1000 + 7 + constant integer bj_MISSION_INDEX_XN08 = bj_CAMPAIGN_OFFSET_XN * 1000 + 8 + constant integer bj_MISSION_INDEX_XN09 = bj_CAMPAIGN_OFFSET_XN * 1000 + 9 + constant integer bj_MISSION_INDEX_XN10 = bj_CAMPAIGN_OFFSET_XN * 1000 + 10 + // Expansion Human + constant integer bj_MISSION_INDEX_XH00 = bj_CAMPAIGN_OFFSET_XH * 1000 + 0 + constant integer bj_MISSION_INDEX_XH01 = bj_CAMPAIGN_OFFSET_XH * 1000 + 1 + constant integer bj_MISSION_INDEX_XH02 = bj_CAMPAIGN_OFFSET_XH * 1000 + 2 + constant integer bj_MISSION_INDEX_XH03 = bj_CAMPAIGN_OFFSET_XH * 1000 + 3 + constant integer bj_MISSION_INDEX_XH04 = bj_CAMPAIGN_OFFSET_XH * 1000 + 4 + constant integer bj_MISSION_INDEX_XH05 = bj_CAMPAIGN_OFFSET_XH * 1000 + 5 + constant integer bj_MISSION_INDEX_XH06 = bj_CAMPAIGN_OFFSET_XH * 1000 + 6 + constant integer bj_MISSION_INDEX_XH07 = bj_CAMPAIGN_OFFSET_XH * 1000 + 7 + constant integer bj_MISSION_INDEX_XH08 = bj_CAMPAIGN_OFFSET_XH * 1000 + 8 + constant integer bj_MISSION_INDEX_XH09 = bj_CAMPAIGN_OFFSET_XH * 1000 + 9 + // Expansion Undead + constant integer bj_MISSION_INDEX_XU00 = bj_CAMPAIGN_OFFSET_XU * 1000 + 0 + constant integer bj_MISSION_INDEX_XU01 = bj_CAMPAIGN_OFFSET_XU * 1000 + 1 + constant integer bj_MISSION_INDEX_XU02 = bj_CAMPAIGN_OFFSET_XU * 1000 + 2 + constant integer bj_MISSION_INDEX_XU03 = bj_CAMPAIGN_OFFSET_XU * 1000 + 3 + constant integer bj_MISSION_INDEX_XU04 = bj_CAMPAIGN_OFFSET_XU * 1000 + 4 + constant integer bj_MISSION_INDEX_XU05 = bj_CAMPAIGN_OFFSET_XU * 1000 + 5 + constant integer bj_MISSION_INDEX_XU06 = bj_CAMPAIGN_OFFSET_XU * 1000 + 6 + constant integer bj_MISSION_INDEX_XU07 = bj_CAMPAIGN_OFFSET_XU * 1000 + 7 + constant integer bj_MISSION_INDEX_XU08 = bj_CAMPAIGN_OFFSET_XU * 1000 + 8 + constant integer bj_MISSION_INDEX_XU09 = bj_CAMPAIGN_OFFSET_XU * 1000 + 9 + constant integer bj_MISSION_INDEX_XU10 = bj_CAMPAIGN_OFFSET_XU * 1000 + 10 + constant integer bj_MISSION_INDEX_XU11 = bj_CAMPAIGN_OFFSET_XU * 1000 + 11 + constant integer bj_MISSION_INDEX_XU12 = bj_CAMPAIGN_OFFSET_XU * 1000 + 12 + constant integer bj_MISSION_INDEX_XU13 = bj_CAMPAIGN_OFFSET_XU * 1000 + 13 + + // Expansion Orc + constant integer bj_MISSION_INDEX_XO00 = bj_CAMPAIGN_OFFSET_XO * 1000 + 0 + + // Cinematic indexing constants + constant integer bj_CINEMATICINDEX_TOP = 0 + constant integer bj_CINEMATICINDEX_HOP = 1 + constant integer bj_CINEMATICINDEX_HED = 2 + constant integer bj_CINEMATICINDEX_OOP = 3 + constant integer bj_CINEMATICINDEX_OED = 4 + constant integer bj_CINEMATICINDEX_UOP = 5 + constant integer bj_CINEMATICINDEX_UED = 6 + constant integer bj_CINEMATICINDEX_NOP = 7 + constant integer bj_CINEMATICINDEX_NED = 8 + constant integer bj_CINEMATICINDEX_XOP = 9 + constant integer bj_CINEMATICINDEX_XED = 10 + + // Alliance settings + constant integer bj_ALLIANCE_UNALLIED = 0 + constant integer bj_ALLIANCE_UNALLIED_VISION = 1 + constant integer bj_ALLIANCE_ALLIED = 2 + constant integer bj_ALLIANCE_ALLIED_VISION = 3 + constant integer bj_ALLIANCE_ALLIED_UNITS = 4 + constant integer bj_ALLIANCE_ALLIED_ADVUNITS = 5 + constant integer bj_ALLIANCE_NEUTRAL = 6 + constant integer bj_ALLIANCE_NEUTRAL_VISION = 7 + + // Keyboard Event Types + constant integer bj_KEYEVENTTYPE_DEPRESS = 0 + constant integer bj_KEYEVENTTYPE_RELEASE = 1 + + // Keyboard Event Keys + constant integer bj_KEYEVENTKEY_LEFT = 0 + constant integer bj_KEYEVENTKEY_RIGHT = 1 + constant integer bj_KEYEVENTKEY_DOWN = 2 + constant integer bj_KEYEVENTKEY_UP = 3 + + // Transmission timing methods + constant integer bj_TIMETYPE_ADD = 0 + constant integer bj_TIMETYPE_SET = 1 + constant integer bj_TIMETYPE_SUB = 2 + + // Camera bounds adjustment methods + constant integer bj_CAMERABOUNDS_ADJUST_ADD = 0 + constant integer bj_CAMERABOUNDS_ADJUST_SUB = 1 + + // Quest creation states + constant integer bj_QUESTTYPE_REQ_DISCOVERED = 0 + constant integer bj_QUESTTYPE_REQ_UNDISCOVERED = 1 + constant integer bj_QUESTTYPE_OPT_DISCOVERED = 2 + constant integer bj_QUESTTYPE_OPT_UNDISCOVERED = 3 + + // Quest message types + constant integer bj_QUESTMESSAGE_DISCOVERED = 0 + constant integer bj_QUESTMESSAGE_UPDATED = 1 + constant integer bj_QUESTMESSAGE_COMPLETED = 2 + constant integer bj_QUESTMESSAGE_FAILED = 3 + constant integer bj_QUESTMESSAGE_REQUIREMENT = 4 + constant integer bj_QUESTMESSAGE_MISSIONFAILED = 5 + constant integer bj_QUESTMESSAGE_ALWAYSHINT = 6 + constant integer bj_QUESTMESSAGE_HINT = 7 + constant integer bj_QUESTMESSAGE_SECRET = 8 + constant integer bj_QUESTMESSAGE_UNITACQUIRED = 9 + constant integer bj_QUESTMESSAGE_UNITAVAILABLE = 10 + constant integer bj_QUESTMESSAGE_ITEMACQUIRED = 11 + constant integer bj_QUESTMESSAGE_WARNING = 12 + + // Leaderboard sorting methods + constant integer bj_SORTTYPE_SORTBYVALUE = 0 + constant integer bj_SORTTYPE_SORTBYPLAYER = 1 + constant integer bj_SORTTYPE_SORTBYLABEL = 2 + + // Cinematic fade filter methods + constant integer bj_CINEFADETYPE_FADEIN = 0 + constant integer bj_CINEFADETYPE_FADEOUT = 1 + constant integer bj_CINEFADETYPE_FADEOUTIN = 2 + + // Buff removal methods + constant integer bj_REMOVEBUFFS_POSITIVE = 0 + constant integer bj_REMOVEBUFFS_NEGATIVE = 1 + constant integer bj_REMOVEBUFFS_ALL = 2 + constant integer bj_REMOVEBUFFS_NONTLIFE = 3 + + // Buff properties - polarity + constant integer bj_BUFF_POLARITY_POSITIVE = 0 + constant integer bj_BUFF_POLARITY_NEGATIVE = 1 + constant integer bj_BUFF_POLARITY_EITHER = 2 + + // Buff properties - resist type + constant integer bj_BUFF_RESIST_MAGIC = 0 + constant integer bj_BUFF_RESIST_PHYSICAL = 1 + constant integer bj_BUFF_RESIST_EITHER = 2 + constant integer bj_BUFF_RESIST_BOTH = 3 + + // Hero stats + constant integer bj_HEROSTAT_STR = 0 + constant integer bj_HEROSTAT_AGI = 1 + constant integer bj_HEROSTAT_INT = 2 + + // Hero skill point modification methods + constant integer bj_MODIFYMETHOD_ADD = 0 + constant integer bj_MODIFYMETHOD_SUB = 1 + constant integer bj_MODIFYMETHOD_SET = 2 + + // Unit state adjustment methods (for replaced units) + constant integer bj_UNIT_STATE_METHOD_ABSOLUTE = 0 + constant integer bj_UNIT_STATE_METHOD_RELATIVE = 1 + constant integer bj_UNIT_STATE_METHOD_DEFAULTS = 2 + constant integer bj_UNIT_STATE_METHOD_MAXIMUM = 3 + + // Gate operations + constant integer bj_GATEOPERATION_CLOSE = 0 + constant integer bj_GATEOPERATION_OPEN = 1 + constant integer bj_GATEOPERATION_DESTROY = 2 + + // Game cache value types + constant integer bj_GAMECACHE_BOOLEAN = 0 + constant integer bj_GAMECACHE_INTEGER = 1 + constant integer bj_GAMECACHE_REAL = 2 + constant integer bj_GAMECACHE_UNIT = 3 + constant integer bj_GAMECACHE_STRING = 4 + + // Hashtable value types + constant integer bj_HASHTABLE_BOOLEAN = 0 + constant integer bj_HASHTABLE_INTEGER = 1 + constant integer bj_HASHTABLE_REAL = 2 + constant integer bj_HASHTABLE_STRING = 3 + constant integer bj_HASHTABLE_HANDLE = 4 + + // Item status types + constant integer bj_ITEM_STATUS_HIDDEN = 0 + constant integer bj_ITEM_STATUS_OWNED = 1 + constant integer bj_ITEM_STATUS_INVULNERABLE = 2 + constant integer bj_ITEM_STATUS_POWERUP = 3 + constant integer bj_ITEM_STATUS_SELLABLE = 4 + constant integer bj_ITEM_STATUS_PAWNABLE = 5 + + // Itemcode status types + constant integer bj_ITEMCODE_STATUS_POWERUP = 0 + constant integer bj_ITEMCODE_STATUS_SELLABLE = 1 + constant integer bj_ITEMCODE_STATUS_PAWNABLE = 2 + + // Minimap ping styles + constant integer bj_MINIMAPPINGSTYLE_SIMPLE = 0 + constant integer bj_MINIMAPPINGSTYLE_FLASHY = 1 + constant integer bj_MINIMAPPINGSTYLE_ATTACK = 2 + + // Corpse creation settings + constant real bj_CORPSE_MAX_DEATH_TIME = 8.00 + + // Corpse creation styles + constant integer bj_CORPSETYPE_FLESH = 0 + constant integer bj_CORPSETYPE_BONE = 1 + + // Elevator pathing-blocker destructable code + constant integer bj_ELEVATOR_BLOCKER_CODE = 'DTep' + constant integer bj_ELEVATOR_CODE01 = 'DTrf' + constant integer bj_ELEVATOR_CODE02 = 'DTrx' + + // Elevator wall codes + constant integer bj_ELEVATOR_WALL_TYPE_ALL = 0 + constant integer bj_ELEVATOR_WALL_TYPE_EAST = 1 + constant integer bj_ELEVATOR_WALL_TYPE_NORTH = 2 + constant integer bj_ELEVATOR_WALL_TYPE_SOUTH = 3 + constant integer bj_ELEVATOR_WALL_TYPE_WEST = 4 + + //----------------------------------------------------------------------- + // Variables + // + + // Force predefs + force bj_FORCE_ALL_PLAYERS = null + force array bj_FORCE_PLAYER + + integer bj_MELEE_MAX_TWINKED_HEROES = 0 + + // Map area rects + rect bj_mapInitialPlayableArea = null + rect bj_mapInitialCameraBounds = null + + // Utility function vars + integer bj_forLoopAIndex = 0 + integer bj_forLoopBIndex = 0 + integer bj_forLoopAIndexEnd = 0 + integer bj_forLoopBIndexEnd = 0 + + boolean bj_slotControlReady = false + boolean array bj_slotControlUsed + mapcontrol array bj_slotControl + + // Game started detection vars + timer bj_gameStartedTimer = null + boolean bj_gameStarted = false + timer bj_volumeGroupsTimer = CreateTimer() + + // Singleplayer check + boolean bj_isSinglePlayer = false + + // Day/Night Cycle vars + trigger bj_dncSoundsDay = null + trigger bj_dncSoundsNight = null + sound bj_dayAmbientSound = null + sound bj_nightAmbientSound = null + trigger bj_dncSoundsDawn = null + trigger bj_dncSoundsDusk = null + sound bj_dawnSound = null + sound bj_duskSound = null + boolean bj_useDawnDuskSounds = true + boolean bj_dncIsDaytime = false + + // Triggered sounds + //sound bj_pingMinimapSound = null + sound bj_rescueSound = null + sound bj_questDiscoveredSound = null + sound bj_questUpdatedSound = null + sound bj_questCompletedSound = null + sound bj_questFailedSound = null + sound bj_questHintSound = null + sound bj_questSecretSound = null + sound bj_questItemAcquiredSound = null + sound bj_questWarningSound = null + sound bj_victoryDialogSound = null + sound bj_defeatDialogSound = null + + // Marketplace vars + trigger bj_stockItemPurchased = null + timer bj_stockUpdateTimer = null + boolean array bj_stockAllowedPermanent + boolean array bj_stockAllowedCharged + boolean array bj_stockAllowedArtifact + integer bj_stockPickedItemLevel = 0 + itemtype bj_stockPickedItemType + + // Melee vars + trigger bj_meleeVisibilityTrained = null + boolean bj_meleeVisibilityIsDay = true + boolean bj_meleeGrantHeroItems = false + location bj_meleeNearestMineToLoc = null + unit bj_meleeNearestMine = null + real bj_meleeNearestMineDist = 0.00 + boolean bj_meleeGameOver = false + boolean array bj_meleeDefeated + boolean array bj_meleeVictoried + unit array bj_ghoul + timer array bj_crippledTimer + timerdialog array bj_crippledTimerWindows + boolean array bj_playerIsCrippled + boolean array bj_playerIsExposed + boolean bj_finishSoonAllExposed = false + timerdialog bj_finishSoonTimerDialog = null + integer array bj_meleeTwinkedHeroes + + // Rescue behavior vars + trigger bj_rescueUnitBehavior = null + boolean bj_rescueChangeColorUnit = true + boolean bj_rescueChangeColorBldg = true + + // Transmission vars + timer bj_cineSceneEndingTimer = null + sound bj_cineSceneLastSound = null + trigger bj_cineSceneBeingSkipped = null + + // Cinematic mode vars + gamespeed bj_cineModePriorSpeed = MAP_SPEED_NORMAL + boolean bj_cineModePriorFogSetting = false + boolean bj_cineModePriorMaskSetting = false + boolean bj_cineModeAlreadyIn = false + boolean bj_cineModePriorDawnDusk = false + integer bj_cineModeSavedSeed = 0 + + // Cinematic fade vars + timer bj_cineFadeFinishTimer = null + timer bj_cineFadeContinueTimer = null + real bj_cineFadeContinueRed = 0 + real bj_cineFadeContinueGreen = 0 + real bj_cineFadeContinueBlue = 0 + real bj_cineFadeContinueTrans = 0 + real bj_cineFadeContinueDuration = 0 + string bj_cineFadeContinueTex = "" + + // QueuedTriggerExecute vars + integer bj_queuedExecTotal = 0 + trigger array bj_queuedExecTriggers + boolean array bj_queuedExecUseConds + timer bj_queuedExecTimeoutTimer = CreateTimer() + trigger bj_queuedExecTimeout = null + + // Helper vars (for Filter and Enum funcs) + integer bj_destInRegionDiesCount = 0 + trigger bj_destInRegionDiesTrig = null + integer bj_groupCountUnits = 0 + integer bj_forceCountPlayers = 0 + integer bj_groupEnumTypeId = 0 + player bj_groupEnumOwningPlayer = null + group bj_groupAddGroupDest = null + group bj_groupRemoveGroupDest = null + integer bj_groupRandomConsidered = 0 + unit bj_groupRandomCurrentPick = null + group bj_groupLastCreatedDest = null + group bj_randomSubGroupGroup = null + integer bj_randomSubGroupWant = 0 + integer bj_randomSubGroupTotal = 0 + real bj_randomSubGroupChance = 0 + integer bj_destRandomConsidered = 0 + destructable bj_destRandomCurrentPick = null + destructable bj_elevatorWallBlocker = null + destructable bj_elevatorNeighbor = null + integer bj_itemRandomConsidered = 0 + item bj_itemRandomCurrentPick = null + integer bj_forceRandomConsidered = 0 + player bj_forceRandomCurrentPick = null + unit bj_makeUnitRescuableUnit = null + boolean bj_makeUnitRescuableFlag = true + boolean bj_pauseAllUnitsFlag = true + location bj_enumDestructableCenter = null + real bj_enumDestructableRadius = 0 + playercolor bj_setPlayerTargetColor = null + boolean bj_isUnitGroupDeadResult = true + boolean bj_isUnitGroupEmptyResult = true + boolean bj_isUnitGroupInRectResult = true + rect bj_isUnitGroupInRectRect = null + boolean bj_changeLevelShowScores = false + string bj_changeLevelMapName = null + group bj_suspendDecayFleshGroup = CreateGroup() + group bj_suspendDecayBoneGroup = CreateGroup() + timer bj_delayedSuspendDecayTimer = CreateTimer() + trigger bj_delayedSuspendDecayTrig = null + integer bj_livingPlayerUnitsTypeId = 0 + widget bj_lastDyingWidget = null + + // Random distribution vars + integer bj_randDistCount = 0 + integer array bj_randDistID + integer array bj_randDistChance + + // Last X'd vars + unit bj_lastCreatedUnit = null + item bj_lastCreatedItem = null + item bj_lastRemovedItem = null + unit bj_lastHauntedGoldMine = null + destructable bj_lastCreatedDestructable = null + group bj_lastCreatedGroup = CreateGroup() + fogmodifier bj_lastCreatedFogModifier = null + effect bj_lastCreatedEffect = null + weathereffect bj_lastCreatedWeatherEffect = null + terraindeformation bj_lastCreatedTerrainDeformation = null + quest bj_lastCreatedQuest = null + questitem bj_lastCreatedQuestItem = null + defeatcondition bj_lastCreatedDefeatCondition = null + timer bj_lastStartedTimer = CreateTimer() + timerdialog bj_lastCreatedTimerDialog = null + leaderboard bj_lastCreatedLeaderboard = null + multiboard bj_lastCreatedMultiboard = null + sound bj_lastPlayedSound = null + string bj_lastPlayedMusic = "" + real bj_lastTransmissionDuration = 0 + gamecache bj_lastCreatedGameCache = null + hashtable bj_lastCreatedHashtable = null + unit bj_lastLoadedUnit = null + button bj_lastCreatedButton = null + unit bj_lastReplacedUnit = null + texttag bj_lastCreatedTextTag = null + lightning bj_lastCreatedLightning = null + image bj_lastCreatedImage = null + ubersplat bj_lastCreatedUbersplat = null + + // Filter function vars + boolexpr filterIssueHauntOrderAtLocBJ = null + boolexpr filterEnumDestructablesInCircleBJ = null + boolexpr filterGetUnitsInRectOfPlayer = null + boolexpr filterGetUnitsOfTypeIdAll = null + boolexpr filterGetUnitsOfPlayerAndTypeId = null + boolexpr filterMeleeTrainedUnitIsHeroBJ = null + boolexpr filterLivingPlayerUnitsOfTypeId = null + + // Memory cleanup vars + boolean bj_wantDestroyGroup = false +endglobals + + + +//*************************************************************************** +//* +//* Debugging Functions +//* +//*************************************************************************** + +//=========================================================================== +function BJDebugMsg takes string msg returns nothing + local integer i = 0 + loop + call DisplayTimedTextToPlayer(Player(i),0,0,60,msg) + set i = i + 1 + exitwhen i == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Math Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function RMinBJ takes real a, real b returns real + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function RMaxBJ takes real a, real b returns real + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function RAbsBJ takes real a returns real + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function RSignBJ takes real a returns real + if (a >= 0.0) then + return 1.0 + else + return -1.0 + endif +endfunction + +//=========================================================================== +function IMinBJ takes integer a, integer b returns integer + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function IMaxBJ takes integer a, integer b returns integer + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function IAbsBJ takes integer a returns integer + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function ISignBJ takes integer a returns integer + if (a >= 0) then + return 1 + else + return -1 + endif +endfunction + +//=========================================================================== +function SinBJ takes real degrees returns real + return Sin(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function CosBJ takes real degrees returns real + return Cos(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function TanBJ takes real degrees returns real + return Tan(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function AsinBJ takes real degrees returns real + return Asin(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AcosBJ takes real degrees returns real + return Acos(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AtanBJ takes real degrees returns real + return Atan(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function Atan2BJ takes real y, real x returns real + return Atan2(y, x) * bj_RADTODEG +endfunction + +//=========================================================================== +function AngleBetweenPoints takes location locA, location locB returns real + return bj_RADTODEG * Atan2(GetLocationY(locB) - GetLocationY(locA), GetLocationX(locB) - GetLocationX(locA)) +endfunction + +//=========================================================================== +function DistanceBetweenPoints takes location locA, location locB returns real + local real dx = GetLocationX(locB) - GetLocationX(locA) + local real dy = GetLocationY(locB) - GetLocationY(locA) + return SquareRoot(dx * dx + dy * dy) +endfunction + +//=========================================================================== +function PolarProjectionBJ takes location source, real dist, real angle returns location + local real x = GetLocationX(source) + dist * Cos(angle * bj_DEGTORAD) + local real y = GetLocationY(source) + dist * Sin(angle * bj_DEGTORAD) + return Location(x, y) +endfunction + +//=========================================================================== +function GetRandomDirectionDeg takes nothing returns real + return GetRandomReal(0, 360) +endfunction + +//=========================================================================== +function GetRandomPercentageBJ takes nothing returns real + return GetRandomReal(0, 100) +endfunction + +//=========================================================================== +function GetRandomLocInRect takes rect whichRect returns location + return Location(GetRandomReal(GetRectMinX(whichRect), GetRectMaxX(whichRect)), GetRandomReal(GetRectMinY(whichRect), GetRectMaxY(whichRect))) +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 18 mod 5 = 3. 15 mod 5 = 0. -8 mod 5 = 2. +// +function ModuloInteger takes integer dividend, integer divisor returns integer + local integer modulus = dividend - (dividend / divisor) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 13.000 mod 2.500 = 0.500. -6.000 mod 2.500 = 1.500. +// +function ModuloReal takes real dividend, real divisor returns real + local real modulus = dividend - I2R(R2I(dividend / divisor)) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +function OffsetLocation takes location loc, real dx, real dy returns location + return Location(GetLocationX(loc) + dx, GetLocationY(loc) + dy) +endfunction + +//=========================================================================== +function OffsetRectBJ takes rect r, real dx, real dy returns rect + return Rect( GetRectMinX(r) + dx, GetRectMinY(r) + dy, GetRectMaxX(r) + dx, GetRectMaxY(r) + dy ) +endfunction + +//=========================================================================== +function RectFromCenterSizeBJ takes location center, real width, real height returns rect + local real x = GetLocationX( center ) + local real y = GetLocationY( center ) + return Rect( x - width*0.5, y - height*0.5, x + width*0.5, y + height*0.5 ) +endfunction + +//=========================================================================== +function RectContainsCoords takes rect r, real x, real y returns boolean + return (GetRectMinX(r) <= x) and (x <= GetRectMaxX(r)) and (GetRectMinY(r) <= y) and (y <= GetRectMaxY(r)) +endfunction + +//=========================================================================== +function RectContainsLoc takes rect r, location loc returns boolean + return RectContainsCoords(r, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function RectContainsUnit takes rect r, unit whichUnit returns boolean + return RectContainsCoords(r, GetUnitX(whichUnit), GetUnitY(whichUnit)) +endfunction + +//=========================================================================== +function RectContainsItem takes item whichItem, rect r returns boolean + if (whichItem == null) then + return false + endif + + if (IsItemOwned(whichItem)) then + return false + endif + + return RectContainsCoords(r, GetItemX(whichItem), GetItemY(whichItem)) +endfunction + + + +//*************************************************************************** +//* +//* Utility Constructs +//* +//*************************************************************************** + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function ConditionalTriggerExecute takes trigger trig returns nothing + if TriggerEvaluate(trig) then + call TriggerExecute(trig) + endif +endfunction + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function TriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerExecute(trig) + return true +endfunction + +//=========================================================================== +// Arranges for a trigger to fire almost immediately, except that the calling +// trigger is not interrupted as is the case with a TriggerExecute call. +// Since the trigger executes normally, its conditions are still evaluated. +// +function PostTriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerRegisterTimerEvent(trig, 0, false) + return true +endfunction + +//=========================================================================== +// Debug - Display the contents of the trigger queue (as either null or "x" +// for each entry). +function QueuedTriggerCheck takes nothing returns nothing + local string s = "TrigQueue Check " + local integer i + + set i = 0 + loop + exitwhen i >= bj_queuedExecTotal + set s = s + "q[" + I2S(i) + "]=" + if (bj_queuedExecTriggers[i] == null) then + set s = s + "null " + else + set s = s + "x " + endif + set i = i + 1 + endloop + set s = s + "(" + I2S(bj_queuedExecTotal) + " total)" + call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,600,s) +endfunction + +//=========================================================================== +// Searches the queue for a given trigger, returning the index of the +// trigger within the queue if it is found, or -1 if it is not found. +// +function QueuedTriggerGetIndex takes trigger trig returns integer + // Determine which, if any, of the queued triggers is being removed. + local integer index = 0 + loop + exitwhen index >= bj_queuedExecTotal + if (bj_queuedExecTriggers[index] == trig) then + return index + endif + set index = index + 1 + endloop + return -1 +endfunction + +//=========================================================================== +// Removes a trigger from the trigger queue, shifting other triggers down +// to fill the unused space. If the currently running trigger is removed +// in this manner, this function does NOT attempt to run the next trigger. +// +function QueuedTriggerRemoveByIndex takes integer trigIndex returns boolean + local integer index + + // If the to-be-removed index is out of range, fail. + if (trigIndex >= bj_queuedExecTotal) then + return false + endif + + // Shift all queue entries down to fill in the gap. + set bj_queuedExecTotal = bj_queuedExecTotal - 1 + set index = trigIndex + loop + exitwhen index >= bj_queuedExecTotal + set bj_queuedExecTriggers[index] = bj_queuedExecTriggers[index + 1] + set bj_queuedExecUseConds[index] = bj_queuedExecUseConds[index + 1] + set index = index + 1 + endloop + return true +endfunction + +//=========================================================================== +// Attempt to execute the first trigger in the queue. If it fails, remove +// it and execute the next one. Continue this cycle until a trigger runs, +// or until the queue is empty. +// +function QueuedTriggerAttemptExec takes nothing returns boolean + loop + exitwhen bj_queuedExecTotal == 0 + + if TriggerExecuteBJ(bj_queuedExecTriggers[0], bj_queuedExecUseConds[0]) then + // Timeout the queue if it sits at the front of the queue for too long. + call TimerStart(bj_queuedExecTimeoutTimer, bj_QUEUED_TRIGGER_TIMEOUT, false, null) + return true + endif + + call QueuedTriggerRemoveByIndex(0) + endloop + return false +endfunction + +//=========================================================================== +// Queues a trigger to be executed, assuring that such triggers are not +// executed at the same time. +// +function QueuedTriggerAddBJ takes trigger trig, boolean checkConditions returns boolean + // Make sure our queue isn't full. If it is, return failure. + if (bj_queuedExecTotal >= bj_MAX_QUEUED_TRIGGERS) then + return false + endif + + // Add the trigger to an array of to-be-executed triggers. + set bj_queuedExecTriggers[bj_queuedExecTotal] = trig + set bj_queuedExecUseConds[bj_queuedExecTotal] = checkConditions + set bj_queuedExecTotal = bj_queuedExecTotal + 1 + + // If this is the only trigger in the queue, run it. + if (bj_queuedExecTotal == 1) then + call QueuedTriggerAttemptExec() + endif + return true +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, or risk stepping on the toes of other queued triggers. +// +function QueuedTriggerRemoveBJ takes trigger trig returns nothing + local integer index + local integer trigIndex + local boolean trigExecuted + + // Find the trigger's index. + set trigIndex = QueuedTriggerGetIndex(trig) + if (trigIndex == -1) then + return + endif + + // Shuffle the other trigger entries down to fill in the gap. + call QueuedTriggerRemoveByIndex(trigIndex) + + // If we just axed the currently running trigger, run the next one. + if (trigIndex == 0) then + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() + endif +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, lest you step on the toes of other queued triggers. +// +function QueuedTriggerDoneBJ takes nothing returns nothing + local integer index + + // Make sure there's something on the queue to remove. + if (bj_queuedExecTotal <= 0) then + return + endif + + // Remove the currently running trigger from the array. + call QueuedTriggerRemoveByIndex(0) + + // If other triggers are waiting to run, run one of them. + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() +endfunction + +//=========================================================================== +// Empty the trigger queue. +// +function QueuedTriggerClearBJ takes nothing returns nothing + call PauseTimer(bj_queuedExecTimeoutTimer) + set bj_queuedExecTotal = 0 +endfunction + +//=========================================================================== +// Remove all but the currently executing trigger from the trigger queue. +// +function QueuedTriggerClearInactiveBJ takes nothing returns nothing + set bj_queuedExecTotal = IMinBJ(bj_queuedExecTotal, 1) +endfunction + +//=========================================================================== +function QueuedTriggerCountBJ takes nothing returns integer + return bj_queuedExecTotal +endfunction + +//=========================================================================== +function IsTriggerQueueEmptyBJ takes nothing returns boolean + return bj_queuedExecTotal <= 0 +endfunction + +//=========================================================================== +function IsTriggerQueuedBJ takes trigger trig returns boolean + return QueuedTriggerGetIndex(trig) != -1 +endfunction + +//=========================================================================== +function GetForLoopIndexA takes nothing returns integer + return bj_forLoopAIndex +endfunction + +//=========================================================================== +function SetForLoopIndexA takes integer newIndex returns nothing + set bj_forLoopAIndex = newIndex +endfunction + +//=========================================================================== +function GetForLoopIndexB takes nothing returns integer + return bj_forLoopBIndex +endfunction + +//=========================================================================== +function SetForLoopIndexB takes integer newIndex returns nothing + set bj_forLoopBIndex = newIndex +endfunction + +//=========================================================================== +// We can't do game-time waits, so this simulates one by starting a timer +// and polling until the timer expires. +function PolledWait takes real duration returns nothing + local timer t + local real timeRemaining + + if (duration > 0) then + set t = CreateTimer() + call TimerStart(t, duration, false, null) + loop + set timeRemaining = TimerGetRemaining(t) + exitwhen timeRemaining <= 0 + + // If we have a bit of time left, skip past 10% of the remaining + // duration instead of checking every interval, to minimize the + // polling on long waits. + if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then + call TriggerSleepAction(0.1 * timeRemaining) + else + call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL) + endif + endloop + call DestroyTimer(t) + endif +endfunction + +//=========================================================================== +function IntegerTertiaryOp takes boolean flag, integer valueA, integer valueB returns integer + if flag then + return valueA + else + return valueB + endif +endfunction + + +//*************************************************************************** +//* +//* General Utility Functions +//* These functions exist purely to make the trigger dialogs cleaner and +//* more comprehensible. +//* +//*************************************************************************** + +//=========================================================================== +function DoNothing takes nothing returns nothing +endfunction + +//=========================================================================== +// This function does nothing. WorldEdit should should eventually ignore +// CommentString triggers during script generation, but until such a time, +// this function will serve as a stub. +// +function CommentString takes string commentString returns nothing +endfunction + +//=========================================================================== +// This function returns the input string, converting it from the localized text, if necessary +// +function StringIdentity takes string theString returns string + return GetLocalizedString(theString) +endfunction + +//=========================================================================== +function GetBooleanAnd takes boolean valueA, boolean valueB returns boolean + return valueA and valueB +endfunction + +//=========================================================================== +function GetBooleanOr takes boolean valueA, boolean valueB returns boolean + return valueA or valueB +endfunction + +//=========================================================================== +// Converts a percentage (real, 0..100) into a scaled integer (0..max), +// clipping the result to 0..max in case the input is invalid. +// +function PercentToInt takes real percentage, integer max returns integer + local integer result = R2I(percentage * I2R(max) * 0.01) + + if (result < 0) then + set result = 0 + elseif (result > max) then + set result = max + endif + + return result +endfunction + +//=========================================================================== +function PercentTo255 takes real percentage returns integer + return PercentToInt(percentage, 255) +endfunction + +//=========================================================================== +function GetTimeOfDay takes nothing returns real + return GetFloatGameState(GAME_STATE_TIME_OF_DAY) +endfunction + +//=========================================================================== +function SetTimeOfDay takes real whatTime returns nothing + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, whatTime) +endfunction + +//=========================================================================== +function SetTimeOfDayScalePercentBJ takes real scalePercent returns nothing + call SetTimeOfDayScale(scalePercent * 0.01) +endfunction + +//=========================================================================== +function GetTimeOfDayScalePercentBJ takes nothing returns real + return GetTimeOfDayScale() * 100 +endfunction + +//=========================================================================== +function PlaySound takes string soundName returns nothing + local sound soundHandle = CreateSound(soundName, false, false, true, 12700, 12700, "") + call StartSound(soundHandle) + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function CompareLocationsBJ takes location A, location B returns boolean + return GetLocationX(A) == GetLocationX(B) and GetLocationY(A) == GetLocationY(B) +endfunction + +//=========================================================================== +function CompareRectsBJ takes rect A, rect B returns boolean + return GetRectMinX(A) == GetRectMinX(B) and GetRectMinY(A) == GetRectMinY(B) and GetRectMaxX(A) == GetRectMaxX(B) and GetRectMaxY(A) == GetRectMaxY(B) +endfunction + +//=========================================================================== +// Returns a square rect that exactly encompasses the specified circle. +// +function GetRectFromCircleBJ takes location center, real radius returns rect + local real centerX = GetLocationX(center) + local real centerY = GetLocationY(center) + return Rect(centerX - radius, centerY - radius, centerX + radius, centerY + radius) +endfunction + + + +//*************************************************************************** +//* +//* Camera Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetCurrentCameraSetup takes nothing returns camerasetup + local camerasetup theCam = CreateCameraSetup() + local real duration = 0 + call CameraSetupSetField(theCam, CAMERA_FIELD_TARGET_DISTANCE, GetCameraField(CAMERA_FIELD_TARGET_DISTANCE), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FARZ, GetCameraField(CAMERA_FIELD_FARZ), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ZOFFSET, GetCameraField(CAMERA_FIELD_ZOFFSET), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ANGLE_OF_ATTACK, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FIELD_OF_VIEW, bj_RADTODEG * GetCameraField(CAMERA_FIELD_FIELD_OF_VIEW), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROLL, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROLL), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROTATION, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROTATION), duration) + call CameraSetupSetDestPosition(theCam, GetCameraTargetPositionX(), GetCameraTargetPositionY(), duration) + return theCam +endfunction + +//=========================================================================== +function CameraSetupApplyForPlayer takes boolean doPan, camerasetup whichSetup, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetupApplyForceDuration(whichSetup, doPan, duration) + endif +endfunction + +//=========================================================================== +function CameraSetupGetFieldSwap takes camerafield whichField, camerasetup whichSetup returns real + return CameraSetupGetField(whichSetup, whichField) +endfunction + +//=========================================================================== +function SetCameraFieldForPlayer takes player whichPlayer, camerafield whichField, real value, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraField(whichField, value, duration) + endif +endfunction + +//=========================================================================== +function SetCameraTargetControllerNoZForPlayer takes player whichPlayer, unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraTargetController(whichUnit, xoffset, yoffset, inheritOrientation) + endif +endfunction + +//=========================================================================== +function SetCameraPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function RotateCameraAroundLocBJ takes real degrees, location loc, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraRotateMode(GetLocationX(loc), GetLocationY(loc), bj_DEGTORAD * degrees, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(x, y) + endif +endfunction + +//=========================================================================== +function PanCameraToLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(x, y, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocWithZForPlayer takes player whichPlayer, location loc, real zOffset, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimedWithZ(GetLocationX(loc), GetLocationY(loc), zOffset, duration) + endif +endfunction + +//=========================================================================== +function SmartCameraPanBJ takes player whichPlayer, location loc, real duration returns nothing + local real dist + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + set dist = DistanceBetweenPoints(loc, GetCameraTargetPositionLoc()) + if (dist >= bj_SMARTPAN_TRESHOLD_SNAP) then + // If the user is too far away, snap the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), 0) + elseif (dist >= bj_SMARTPAN_TRESHOLD_PAN) then + // If the user is moderately close, pan the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + else + // User is close enough, so don't touch the camera. + endif + endif +endfunction + +//=========================================================================== +function SetCinematicCameraForPlayer takes player whichPlayer, string cameraModelFile returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCinematicCamera(cameraModelFile) + endif +endfunction + +//=========================================================================== +function ResetToGameCameraForPlayer takes player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ResetToGameCamera(duration) + endif +endfunction + +//=========================================================================== +function CameraSetSourceNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetTargetNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetEQNoiseForPlayer takes player whichPlayer, real magnitude returns nothing + local real richter = magnitude + if (richter > 5.0) then + set richter = 5.0 + endif + if (richter < 2.0) then + set richter = 2.0 + endif + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + call CameraSetSourceNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + endif +endfunction + +//=========================================================================== +function CameraClearNoiseForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(0, 0) + call CameraSetTargetNoise(0, 0) + endif +endfunction + +//=========================================================================== +// Query the current camera bounds. +// +function GetCurrentCameraBoundsMapRectBJ takes nothing returns rect + return Rect(GetCameraBoundMinX(), GetCameraBoundMinY(), GetCameraBoundMaxX(), GetCameraBoundMaxY()) +endfunction + +//=========================================================================== +// Query the initial camera bounds, as defined at map init. +// +function GetCameraBoundsMapRect takes nothing returns rect + return bj_mapInitialCameraBounds +endfunction + +//=========================================================================== +// Query the playable map area, as defined at map init. +// +function GetPlayableMapRect takes nothing returns rect + return bj_mapInitialPlayableArea +endfunction + +//=========================================================================== +// Query the entire map area, as defined at map init. +// +function GetEntireMapRect takes nothing returns rect + return GetWorldBounds() +endfunction + +//=========================================================================== +function SetCameraBoundsToRect takes rect r returns nothing + local real minX = GetRectMinX(r) + local real minY = GetRectMinY(r) + local real maxX = GetRectMaxX(r) + local real maxY = GetRectMaxY(r) + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function SetCameraBoundsToRectForPlayerBJ takes player whichPlayer, rect r returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraBoundsToRect(r) + endif +endfunction + +//=========================================================================== +function AdjustCameraBoundsBJ takes integer adjustMethod, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + local real minX = 0 + local real minY = 0 + local real maxX = 0 + local real maxY = 0 + local real scale = 0 + + if (adjustMethod == bj_CAMERABOUNDS_ADJUST_ADD) then + set scale = 1 + elseif (adjustMethod == bj_CAMERABOUNDS_ADJUST_SUB) then + set scale = -1 + else + // Unrecognized adjustment method - ignore the request. + return + endif + + // Adjust the actual camera values + set minX = GetCameraBoundMinX() - scale * dxWest + set maxX = GetCameraBoundMaxX() + scale * dxEast + set minY = GetCameraBoundMinY() - scale * dySouth + set maxY = GetCameraBoundMaxY() + scale * dyNorth + + // Make sure the camera bounds are still valid. + if (maxX < minX) then + set minX = (minX + maxX) * 0.5 + set maxX = minX + endif + if (maxY < minY) then + set minY = (minY + maxY) * 0.5 + set maxY = minY + endif + + // Apply the new camera values. + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function AdjustCameraBoundsForPlayerBJ takes integer adjustMethod, player whichPlayer, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call AdjustCameraBoundsBJ(adjustMethod, dxWest, dxEast, dyNorth, dySouth) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLoc takes location loc returns nothing + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function StopCameraForPlayerBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call StopCamera() + endif +endfunction + +//=========================================================================== +function SetCameraOrientControllerForPlayerBJ takes player whichPlayer, unit whichUnit, real xoffset, real yoffset returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraOrientController(whichUnit, xoffset, yoffset) + endif +endfunction + +//=========================================================================== +function CameraSetSmoothingFactorBJ takes real factor returns nothing + call CameraSetSmoothingFactor(factor) +endfunction + +//=========================================================================== +function CameraResetSmoothingFactorBJ takes nothing returns nothing + call CameraSetSmoothingFactor(0) +endfunction + + + +//*************************************************************************** +//* +//* Text Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayTextToForce takes force toForce, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTextToPlayer(GetLocalPlayer(), 0, 0, message) + endif +endfunction + +//=========================================================================== +function DisplayTimedTextToForce takes force toForce, real duration, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, duration, message) + endif +endfunction + +//=========================================================================== +function ClearTextMessagesBJ takes force toForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + endif +endfunction + +//=========================================================================== +// The parameters for the API Substring function are unintuitive, so this +// merely performs a translation for the starting index. +// +function SubStringBJ takes string source, integer start, integer end returns string + return SubString(source, start-1, end) +endfunction + +function GetHandleIdBJ takes handle h returns integer + return GetHandleId(h) +endfunction + +function StringHashBJ takes string s returns integer + return StringHash(s) +endfunction + + + +//*************************************************************************** +//* +//* Event Registration Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function TriggerRegisterTimerEventPeriodic takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, true) +endfunction + +//=========================================================================== +function TriggerRegisterTimerEventSingle takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, false) +endfunction + +//=========================================================================== +function TriggerRegisterTimerExpireEventBJ takes trigger trig, timer t returns event + return TriggerRegisterTimerExpireEvent(trig, t) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerUnitEventSimple takes trigger trig, player whichPlayer, playerunitevent whichEvent returns event + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, whichEvent, null) +endfunction + +//=========================================================================== +function TriggerRegisterAnyUnitEventBJ takes trigger trig, playerunitevent whichEvent returns nothing + local integer index + + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(trig, Player(index), whichEvent, null) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +function TriggerRegisterPlayerSelectionEventBJ takes trigger trig, player whichPlayer, boolean selected returns event + if selected then + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_SELECTED, null) + else + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_DESELECTED, null) + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerKeyEventBJ takes trigger trig, player whichPlayer, integer keType, integer keKey returns event + if (keType == bj_KEYEVENTTYPE_DEPRESS) then + // Depress event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_DOWN) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_DOWN) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + elseif (keType == bj_KEYEVENTTYPE_RELEASE) then + // Release event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_UP) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_UP) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_UP) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_UP) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + else + // Unrecognized type - ignore the request and return failure. + return null + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventVictory takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_VICTORY) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventDefeat takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_DEFEAT) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventLeave takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_LEAVE) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventAllianceChanged takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ALLIANCE_CHANGED) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventEndCinematic takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_END_CINEMATIC) +endfunction + +//=========================================================================== +function TriggerRegisterGameStateEventTimeOfDay takes trigger trig, limitop opcode, real limitval returns event + return TriggerRegisterGameStateEvent(trig, GAME_STATE_TIME_OF_DAY, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterEnterRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterLeaveRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterEnterRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterLeaveRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterDistanceBetweenUnits takes trigger trig, unit whichUnit, boolexpr condition, real range returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, condition) +endfunction + +//=========================================================================== +function TriggerRegisterUnitInRangeSimple takes trigger trig, real range, unit whichUnit returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, null) +endfunction + +//=========================================================================== +function TriggerRegisterUnitLifeEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_LIFE, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterUnitManaEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_MANA, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterDialogEventBJ takes trigger trig, dialog whichDialog returns event + return TriggerRegisterDialogEvent(trig, whichDialog) +endfunction + +//=========================================================================== +function TriggerRegisterShowSkillEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SHOW_SKILL) +endfunction + +//=========================================================================== +function TriggerRegisterBuildSubmenuEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_BUILD_SUBMENU) +endfunction + +//=========================================================================== +function TriggerRegisterGameLoadedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_LOADED) +endfunction + +//=========================================================================== +function TriggerRegisterGameSavedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SAVE) +endfunction + +//=========================================================================== +function RegisterDestDeathInRegionEnum takes nothing returns nothing + set bj_destInRegionDiesCount = bj_destInRegionDiesCount + 1 + if (bj_destInRegionDiesCount <= bj_MAX_DEST_IN_REGION_EVENTS) then + call TriggerRegisterDeathEvent(bj_destInRegionDiesTrig, GetEnumDestructable()) + endif +endfunction + +//=========================================================================== +function TriggerRegisterDestDeathInRegionEvent takes trigger trig, rect r returns nothing + set bj_destInRegionDiesTrig = trig + set bj_destInRegionDiesCount = 0 + call EnumDestructablesInRect(r, null, function RegisterDestDeathInRegionEnum) +endfunction + + + +//*************************************************************************** +//* +//* Environment Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddWeatherEffectSaveLast takes rect where, integer effectID returns weathereffect + set bj_lastCreatedWeatherEffect = AddWeatherEffect(where, effectID) + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function GetLastCreatedWeatherEffect takes nothing returns weathereffect + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function RemoveWeatherEffectBJ takes weathereffect whichWeatherEffect returns nothing + call RemoveWeatherEffect(whichWeatherEffect) +endfunction + +//=========================================================================== +function TerrainDeformationCraterBJ takes real duration, boolean permanent, location where, real radius, real depth returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformCrater(GetLocationX(where), GetLocationY(where), radius, depth, R2I(duration * 1000), permanent) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRippleBJ takes real duration, boolean limitNeg, location where, real startRadius, real endRadius, real depth, real wavePeriod, real waveWidth returns terraindeformation + local real spaceWave + local real timeWave + local real radiusRatio + + if (endRadius <= 0 or waveWidth <= 0 or wavePeriod <= 0) then + return null + endif + + set timeWave = 2.0 * duration / wavePeriod + set spaceWave = 2.0 * endRadius / waveWidth + set radiusRatio = startRadius / endRadius + + set bj_lastCreatedTerrainDeformation = TerrainDeformRipple(GetLocationX(where), GetLocationY(where), endRadius, depth, R2I(duration * 1000), 1, spaceWave, timeWave, radiusRatio, limitNeg) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationWaveBJ takes real duration, location source, location target, real radius, real depth, real trailDelay returns terraindeformation + local real distance + local real dirX + local real dirY + local real speed + + set distance = DistanceBetweenPoints(source, target) + if (distance == 0 or duration <= 0) then + return null + endif + + set dirX = (GetLocationX(target) - GetLocationX(source)) / distance + set dirY = (GetLocationY(target) - GetLocationY(source)) / distance + set speed = distance / duration + + set bj_lastCreatedTerrainDeformation = TerrainDeformWave(GetLocationX(source), GetLocationY(source), dirX, dirY, distance, speed, radius, depth, R2I(trailDelay * 1000), 1) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRandomBJ takes real duration, location where, real radius, real minDelta, real maxDelta, real updateInterval returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformRandom(GetLocationX(where), GetLocationY(where), radius, minDelta, maxDelta, R2I(duration * 1000), R2I(updateInterval * 1000)) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationStopBJ takes terraindeformation deformation, real duration returns nothing + call TerrainDeformStop(deformation, R2I(duration * 1000)) +endfunction + +//=========================================================================== +function GetLastCreatedTerrainDeformation takes nothing returns terraindeformation + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function AddLightningLoc takes string codeName, location where1, location where2 returns lightning + set bj_lastCreatedLightning = AddLightningEx(codeName, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function DestroyLightningBJ takes lightning whichBolt returns boolean + return DestroyLightning(whichBolt) +endfunction + +//=========================================================================== +function MoveLightningLoc takes lightning whichBolt, location where1, location where2 returns boolean + return MoveLightningEx(whichBolt, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) +endfunction + +//=========================================================================== +function GetLightningColorABJ takes lightning whichBolt returns real + return GetLightningColorA(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorRBJ takes lightning whichBolt returns real + return GetLightningColorR(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorGBJ takes lightning whichBolt returns real + return GetLightningColorG(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorBBJ takes lightning whichBolt returns real + return GetLightningColorB(whichBolt) +endfunction + +//=========================================================================== +function SetLightningColorBJ takes lightning whichBolt, real r, real g, real b, real a returns boolean + return SetLightningColor(whichBolt, r, g, b, a) +endfunction + +//=========================================================================== +function GetLastCreatedLightningBJ takes nothing returns lightning + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function GetAbilityEffectBJ takes integer abilcode, effecttype t, integer index returns string + return GetAbilityEffectById(abilcode, t, index) +endfunction + +//=========================================================================== +function GetAbilitySoundBJ takes integer abilcode, soundtype t returns string + return GetAbilitySoundById(abilcode, t) +endfunction + + +//=========================================================================== +function GetTerrainCliffLevelBJ takes location where returns integer + return GetTerrainCliffLevel(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainTypeBJ takes location where returns integer + return GetTerrainType(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainVarianceBJ takes location where returns integer + return GetTerrainVariance(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetTerrainTypeBJ takes location where, integer terrainType, integer variation, integer area, integer shape returns nothing + call SetTerrainType(GetLocationX(where), GetLocationY(where), terrainType, variation, area, shape) +endfunction + +//=========================================================================== +function IsTerrainPathableBJ takes location where, pathingtype t returns boolean + return IsTerrainPathable(GetLocationX(where), GetLocationY(where), t) +endfunction + +//=========================================================================== +function SetTerrainPathableBJ takes location where, pathingtype t, boolean flag returns nothing + call SetTerrainPathable(GetLocationX(where), GetLocationY(where), t, flag) +endfunction + +//=========================================================================== +function SetWaterBaseColorBJ takes real red, real green, real blue, real transparency returns nothing + call SetWaterBaseColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function CreateFogModifierRectSimple takes player whichPlayer, fogstate whichFogState, rect r, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function CreateFogModifierRadiusLocSimple takes player whichPlayer, fogstate whichFogState, location center, real radius, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRect that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRectBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, rect r returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRadius that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRadiusLocBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, location center, real radius returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function GetLastCreatedFogModifier takes nothing returns fogmodifier + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function FogEnableOn takes nothing returns nothing + call FogEnable(true) +endfunction + +//=========================================================================== +function FogEnableOff takes nothing returns nothing + call FogEnable(false) +endfunction + +//=========================================================================== +function FogMaskEnableOn takes nothing returns nothing + call FogMaskEnable(true) +endfunction + +//=========================================================================== +function FogMaskEnableOff takes nothing returns nothing + call FogMaskEnable(false) +endfunction + +//=========================================================================== +function UseTimeOfDayBJ takes boolean flag returns nothing + call SuspendTimeOfDay(not flag) +endfunction + +//=========================================================================== +function SetTerrainFogExBJ takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing + call SetTerrainFogEx(style, zstart, zend, density, red * 0.01, green * 0.01, blue * 0.01) +endfunction + +//=========================================================================== +function ResetTerrainFogBJ takes nothing returns nothing + call ResetTerrainFog() +endfunction + +//=========================================================================== +function SetDoodadAnimationBJ takes string animName, integer doodadID, real radius, location center returns nothing + call SetDoodadAnimation(GetLocationX(center), GetLocationY(center), radius, doodadID, false, animName, false) +endfunction + +//=========================================================================== +function SetDoodadAnimationRectBJ takes string animName, integer doodadID, rect r returns nothing + call SetDoodadAnimationRect(r, doodadID, animName, false) +endfunction + +//=========================================================================== +function AddUnitAnimationPropertiesBJ takes boolean add, string animProperties, unit whichUnit returns nothing + call AddUnitAnimationProperties(whichUnit, animProperties, add) +endfunction + + +//============================================================================ +function CreateImageBJ takes string file, real size, location where, real zOffset, integer imageType returns image + set bj_lastCreatedImage = CreateImage(file, size, size, size, GetLocationX(where), GetLocationY(where), zOffset, 0, 0, 0, imageType) + return bj_lastCreatedImage +endfunction + +//============================================================================ +function ShowImageBJ takes boolean flag, image whichImage returns nothing + call ShowImage(whichImage, flag) +endfunction + +//============================================================================ +function SetImagePositionBJ takes image whichImage, location where, real zOffset returns nothing + call SetImagePosition(whichImage, GetLocationX(where), GetLocationY(where), zOffset) +endfunction + +//============================================================================ +function SetImageColorBJ takes image whichImage, real red, real green, real blue, real alpha returns nothing + call SetImageColor(whichImage, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha)) +endfunction + +//============================================================================ +function GetLastCreatedImage takes nothing returns image + return bj_lastCreatedImage +endfunction + +//============================================================================ +function CreateUbersplatBJ takes location where, string name, real red, real green, real blue, real alpha, boolean forcePaused, boolean noBirthTime returns ubersplat + set bj_lastCreatedUbersplat = CreateUbersplat(GetLocationX(where), GetLocationY(where), name, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha), forcePaused, noBirthTime) + return bj_lastCreatedUbersplat +endfunction + +//============================================================================ +function ShowUbersplatBJ takes boolean flag, ubersplat whichSplat returns nothing + call ShowUbersplat(whichSplat, flag) +endfunction + +//============================================================================ +function GetLastCreatedUbersplat takes nothing returns ubersplat + return bj_lastCreatedUbersplat +endfunction + + +//*************************************************************************** +//* +//* Sound Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PlaySoundBJ takes sound soundHandle returns nothing + set bj_lastPlayedSound = soundHandle + if (soundHandle != null) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function StopSoundBJ takes sound soundHandle, boolean fadeOut returns nothing + call StopSound(soundHandle, false, fadeOut) +endfunction + +//=========================================================================== +function SetSoundVolumeBJ takes sound soundHandle, real volumePercent returns nothing + call SetSoundVolume(soundHandle, PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function SetSoundOffsetBJ takes real newOffset, sound soundHandle returns nothing + call SetSoundPlayPosition(soundHandle, R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function SetSoundDistanceCutoffBJ takes sound soundHandle, real cutoff returns nothing + call SetSoundDistanceCutoff(soundHandle, cutoff) +endfunction + +//=========================================================================== +function SetSoundPitchBJ takes sound soundHandle, real pitch returns nothing + call SetSoundPitch(soundHandle, pitch) +endfunction + +//=========================================================================== +function SetSoundPositionLocBJ takes sound soundHandle, location loc, real z returns nothing + call SetSoundPosition(soundHandle, GetLocationX(loc), GetLocationY(loc), z) +endfunction + +//=========================================================================== +function AttachSoundToUnitBJ takes sound soundHandle, unit whichUnit returns nothing + call AttachSoundToUnit(soundHandle, whichUnit) +endfunction + +//=========================================================================== +function SetSoundConeAnglesBJ takes sound soundHandle, real inside, real outside, real outsideVolumePercent returns nothing + call SetSoundConeAngles(soundHandle, inside, outside, PercentToInt(outsideVolumePercent, 127)) +endfunction + +//=========================================================================== +function KillSoundWhenDoneBJ takes sound soundHandle returns nothing + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundAtPointBJ takes sound soundHandle, real volumePercent, location loc, real z returns nothing + call SetSoundPositionLocBJ(soundHandle, loc, z) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundOnUnitBJ takes sound soundHandle, real volumePercent, unit whichUnit returns nothing + call AttachSoundToUnitBJ(soundHandle, whichUnit) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundFromOffsetBJ takes sound soundHandle, real volumePercent, real startingOffset returns nothing + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) + call SetSoundOffsetBJ(startingOffset, soundHandle) +endfunction + +//=========================================================================== +function PlayMusicBJ takes string musicFileName returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusic(musicFileName) +endfunction + +//=========================================================================== +function PlayMusicExBJ takes string musicFileName, real startingOffset, real fadeInTime returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusicEx(musicFileName, R2I(startingOffset * 1000), R2I(fadeInTime * 1000)) +endfunction + +//=========================================================================== +function SetMusicOffsetBJ takes real newOffset returns nothing + call SetMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function PlayThematicMusicBJ takes string musicName returns nothing + call PlayThematicMusic(musicName) +endfunction + +//=========================================================================== +function PlayThematicMusicExBJ takes string musicName, real startingOffset returns nothing + call PlayThematicMusicEx(musicName, R2I(startingOffset * 1000)) +endfunction + +//=========================================================================== +function SetThematicMusicOffsetBJ takes real newOffset returns nothing + call SetThematicMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function EndThematicMusicBJ takes nothing returns nothing + call EndThematicMusic() +endfunction + +//=========================================================================== +function StopMusicBJ takes boolean fadeOut returns nothing + call StopMusic(fadeOut) +endfunction + +//=========================================================================== +function ResumeMusicBJ takes nothing returns nothing + call ResumeMusic() +endfunction + +//=========================================================================== +function SetMusicVolumeBJ takes real volumePercent returns nothing + call SetMusicVolume(PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function GetSoundDurationBJ takes sound soundHandle returns real + if (soundHandle == null) then + return bj_NOTHING_SOUND_DURATION + else + return I2R(GetSoundDuration(soundHandle)) * 0.001 + endif +endfunction + +//=========================================================================== +function GetSoundFileDurationBJ takes string musicFileName returns real + return I2R(GetSoundFileDuration(musicFileName)) * 0.001 +endfunction + +//=========================================================================== +function GetLastPlayedSound takes nothing returns sound + return bj_lastPlayedSound +endfunction + +//=========================================================================== +function GetLastPlayedMusic takes nothing returns string + return bj_lastPlayedMusic +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeBJ takes volumegroup vgroup, real percent returns nothing + call VolumeGroupSetVolume(vgroup, percent * 0.01) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_CINEMODE_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_CINEMODE_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_CINEMODE_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_CINEMODE_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_CINEMODE_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_CINEMODE_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_CINEMODE_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_CINEMODE_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetCineModeVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetCineModeVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_SPEECH_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_SPEECH_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_SPEECH_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_SPEECH_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_SPEECH_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_SPEECH_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_SPEECH_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_SPEECH_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetSpeechVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetSpeechVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function VolumeGroupResetImmediateBJ takes nothing returns nothing + call VolumeGroupReset() +endfunction + +//=========================================================================== +function VolumeGroupResetBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call VolumeGroupResetImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function VolumeGroupResetImmediateBJ) + endif +endfunction + +//=========================================================================== +function GetSoundIsPlayingBJ takes sound soundHandle returns boolean + return GetSoundIsLoading(soundHandle) or GetSoundIsPlaying(soundHandle) +endfunction + +//=========================================================================== +function WaitForSoundBJ takes sound soundHandle, real offset returns nothing + call TriggerWaitForSound( soundHandle, offset ) +endfunction + +//=========================================================================== +function SetMapMusicIndexedBJ takes string musicName, integer index returns nothing + call SetMapMusic(musicName, false, index) +endfunction + +//=========================================================================== +function SetMapMusicRandomBJ takes string musicName returns nothing + call SetMapMusic(musicName, true, 0) +endfunction + +//=========================================================================== +function ClearMapMusicBJ takes nothing returns nothing + call ClearMapMusic() +endfunction + +//=========================================================================== +function SetStackedSoundBJ takes boolean add, sound soundHandle, rect r returns nothing + local real width = GetRectMaxX(r) - GetRectMinX(r) + local real height = GetRectMaxY(r) - GetRectMinY(r) + + call SetSoundPosition(soundHandle, GetRectCenterX(r), GetRectCenterY(r), 0) + if add then + call RegisterStackedSound(soundHandle, true, width, height) + else + call UnregisterStackedSound(soundHandle, true, width, height) + endif +endfunction + +//=========================================================================== +function StartSoundForPlayerBJ takes player whichPlayer, sound soundHandle returns nothing + if (whichPlayer == GetLocalPlayer()) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeForPlayerBJ takes player whichPlayer, volumegroup vgroup, real scale returns nothing + if (GetLocalPlayer() == whichPlayer) then + call VolumeGroupSetVolume(vgroup, scale) + endif +endfunction + +//=========================================================================== +function EnableDawnDusk takes boolean flag returns nothing + set bj_useDawnDuskSounds = flag +endfunction + +//=========================================================================== +function IsDawnDuskEnabled takes nothing returns boolean + return bj_useDawnDuskSounds +endfunction + + + +//*************************************************************************** +//* +//* Day/Night ambient sounds +//* +//*************************************************************************** + +//=========================================================================== +function SetAmbientDaySound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_dayAmbientSound != null) then + call StopSound(bj_dayAmbientSound, true, true) + endif + + // Create new sound + set bj_dayAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) then + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetAmbientNightSound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_nightAmbientSound != null) then + call StopSound(bj_nightAmbientSound, true, true) + endif + + // Create new sound + set bj_nightAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) then + call StartSound(bj_nightAmbientSound) + endif +endfunction + + + +//*************************************************************************** +//* +//* Special Effect Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddSpecialEffectLocBJ takes location where, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectLoc(modelName, where) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +function AddSpecialEffectTargetUnitBJ takes string attachPointName, widget targetWidget, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectTarget(modelName, targetWidget, attachPointName) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Destructibles have no attachment points. +// +//function AddSpecialEffectTargetDestructableBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Items have no attachment points. +// +//function AddSpecialEffectTargetItemBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +function DestroyEffectBJ takes effect whichEffect returns nothing + call DestroyEffect(whichEffect) +endfunction + +//=========================================================================== +function GetLastCreatedEffectBJ takes nothing returns effect + return bj_lastCreatedEffect +endfunction + + + +//*************************************************************************** +//* +//* Hero and Item Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetItemLoc takes item whichItem returns location + return Location(GetItemX(whichItem), GetItemY(whichItem)) +endfunction + +//=========================================================================== +function GetItemLifeBJ takes widget whichWidget returns real + return GetWidgetLife(whichWidget) +endfunction + +//=========================================================================== +function SetItemLifeBJ takes widget whichWidget, real life returns nothing + call SetWidgetLife(whichWidget, life) +endfunction + +//=========================================================================== +function AddHeroXPSwapped takes integer xpToAdd, unit whichHero, boolean showEyeCandy returns nothing + call AddHeroXP(whichHero, xpToAdd, showEyeCandy) +endfunction + +//=========================================================================== +function SetHeroLevelBJ takes unit whichHero, integer newLevel, boolean showEyeCandy returns nothing + local integer oldLevel = GetHeroLevel(whichHero) + + if (newLevel > oldLevel) then + call SetHeroLevel(whichHero, newLevel, showEyeCandy) + elseif (newLevel < oldLevel) then + call UnitStripHeroLevel(whichHero, oldLevel - newLevel) + else + // No change in level - ignore the request. + endif +endfunction + +//=========================================================================== +function DecUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return DecUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function IncUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return IncUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function SetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit, integer level returns integer + return SetUnitAbilityLevel(whichUnit, abilcode, level) +endfunction + +//=========================================================================== +function GetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return GetUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function UnitHasBuffBJ takes unit whichUnit, integer buffcode returns boolean + return (GetUnitAbilityLevel(whichUnit, buffcode) > 0) +endfunction + +//=========================================================================== +function UnitRemoveBuffBJ takes integer buffcode, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, buffcode) +endfunction + +//=========================================================================== +function UnitAddItemSwapped takes item whichItem, unit whichHero returns boolean + return UnitAddItem(whichHero, whichItem) +endfunction + +//=========================================================================== +function UnitAddItemByIdSwapped takes integer itemId, unit whichHero returns item + // Create the item at the hero's feet first, and then give it to him. + // This is to ensure that the item will be left at the hero's feet if + // his inventory is full. + set bj_lastCreatedItem = CreateItem(itemId, GetUnitX(whichHero), GetUnitY(whichHero)) + call UnitAddItem(whichHero, bj_lastCreatedItem) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function UnitRemoveItemSwapped takes item whichItem, unit whichHero returns nothing + set bj_lastRemovedItem = whichItem + call UnitRemoveItem(whichHero, whichItem) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitRemoveItemFromSlotSwapped takes integer itemSlot, unit whichHero returns item + set bj_lastRemovedItem = UnitRemoveItemFromSlot(whichHero, itemSlot-1) + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function CreateItemLoc takes integer itemId, location loc returns item + set bj_lastCreatedItem = CreateItem(itemId, GetLocationX(loc), GetLocationY(loc)) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastCreatedItem takes nothing returns item + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastRemovedItem takes nothing returns item + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function SetItemPositionLoc takes item whichItem, location loc returns nothing + call SetItemPosition(whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function GetLearnedSkillBJ takes nothing returns integer + return GetLearnedSkill() +endfunction + +//=========================================================================== +function SuspendHeroXPBJ takes boolean flag, unit whichHero returns nothing + call SuspendHeroXP(whichHero, not flag) +endfunction + +//=========================================================================== +function SetPlayerHandicapXPBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicapXP(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapXPBJ takes player whichPlayer returns real + return GetPlayerHandicapXP(whichPlayer) * 100 +endfunction + +//=========================================================================== +function SetPlayerHandicapBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicap(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapBJ takes player whichPlayer returns real + return GetPlayerHandicap(whichPlayer) * 100 +endfunction + +//=========================================================================== +function GetHeroStatBJ takes integer whichStat, unit whichHero, boolean includeBonuses returns integer + if (whichStat == bj_HEROSTAT_STR) then + return GetHeroStr(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_AGI) then + return GetHeroAgi(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_INT) then + return GetHeroInt(whichHero, includeBonuses) + else + // Unrecognized hero stat - return 0 + return 0 + endif +endfunction + +//=========================================================================== +function SetHeroStat takes unit whichHero, integer whichStat, integer value returns nothing + // Ignore requests for negative hero stats. + if (value <= 0) then + return + endif + + if (whichStat == bj_HEROSTAT_STR) then + call SetHeroStr(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_AGI) then + call SetHeroAgi(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_INT) then + call SetHeroInt(whichHero, value, true) + else + // Unrecognized hero stat - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroStat takes integer whichStat, unit whichHero, integer modifyMethod, integer value returns nothing + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) + value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) - value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + call SetHeroStat(whichHero, whichStat, value) + else + // Unrecognized modification method - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroSkillPoints takes unit whichHero, integer modifyMethod, integer value returns boolean + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + return UnitModifySkillPoints(whichHero, value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + return UnitModifySkillPoints(whichHero, -value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + return UnitModifySkillPoints(whichHero, value - GetHeroSkillPoints(whichHero)) + else + // Unrecognized modification method - ignore the request and return failure. + return false + endif +endfunction + +//=========================================================================== +function UnitDropItemPointBJ takes unit whichUnit, item whichItem, real x, real y returns boolean + return UnitDropItemPoint(whichUnit, whichItem, x, y) +endfunction + +//=========================================================================== +function UnitDropItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitDropItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function UnitDropItemSlotBJ takes unit whichUnit, item whichItem, integer slot returns boolean + return UnitDropItemSlot(whichUnit, whichItem, slot-1) +endfunction + +//=========================================================================== +function UnitDropItemTargetBJ takes unit whichUnit, item whichItem, widget target returns boolean + return UnitDropItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function UnitUseItemDestructable takes unit whichUnit, item whichItem, widget target returns boolean + return UnitUseItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +function UnitUseItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitUseItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitItemInSlotBJ takes unit whichUnit, integer itemSlot returns item + return UnitItemInSlot(whichUnit, itemSlot-1) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function GetInventoryIndexOfItemTypeBJ takes unit whichUnit, integer itemId returns integer + local integer index + local item indexItem + + set index = 0 + loop + set indexItem = UnitItemInSlot(whichUnit, index) + if (indexItem != null) and (GetItemTypeId(indexItem) == itemId) then + return index + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + return 0 +endfunction + +//=========================================================================== +function GetItemOfTypeFromUnitBJ takes unit whichUnit, integer itemId returns item + local integer index = GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) + + if (index == 0) then + return null + else + return UnitItemInSlot(whichUnit, index - 1) + endif +endfunction + +//=========================================================================== +function UnitHasItemOfTypeBJ takes unit whichUnit, integer itemId returns boolean + return GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) > 0 +endfunction + +//=========================================================================== +function UnitInventoryCount takes unit whichUnit returns integer + local integer index = 0 + local integer count = 0 + + loop + if (UnitItemInSlot(whichUnit, index) != null) then + set count = count + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + + return count +endfunction + +//=========================================================================== +function UnitInventorySizeBJ takes unit whichUnit returns integer + return UnitInventorySize(whichUnit) +endfunction + +//=========================================================================== +function SetItemInvulnerableBJ takes item whichItem, boolean flag returns nothing + call SetItemInvulnerable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDropOnDeathBJ takes item whichItem, boolean flag returns nothing + call SetItemDropOnDeath(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDroppableBJ takes item whichItem, boolean flag returns nothing + call SetItemDroppable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemPlayerBJ takes item whichItem, player whichPlayer, boolean changeColor returns nothing + call SetItemPlayer(whichItem, whichPlayer, changeColor) +endfunction + +//=========================================================================== +function SetItemVisibleBJ takes boolean show, item whichItem returns nothing + call SetItemVisible(whichItem, show) +endfunction + +//=========================================================================== +function IsItemHiddenBJ takes item whichItem returns boolean + return not IsItemVisible(whichItem) +endfunction + +//=========================================================================== +function ChooseRandomItemBJ takes integer level returns integer + return ChooseRandomItem(level) +endfunction + +//=========================================================================== +function ChooseRandomItemExBJ takes integer level, itemtype whichType returns integer + return ChooseRandomItemEx(whichType, level) +endfunction + +//=========================================================================== +function ChooseRandomNPBuildingBJ takes nothing returns integer + return ChooseRandomNPBuilding() +endfunction + +//=========================================================================== +function ChooseRandomCreepBJ takes integer level returns integer + return ChooseRandomCreep(level) +endfunction + +//=========================================================================== +function EnumItemsInRectBJ takes rect r, code actionFunc returns nothing + call EnumItemsInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomItemInRectBJEnum takes nothing returns nothing + set bj_itemRandomConsidered = bj_itemRandomConsidered + 1 + if (GetRandomInt(1, bj_itemRandomConsidered) == 1) then + set bj_itemRandomCurrentPick = GetEnumItem() + endif +endfunction + +//=========================================================================== +// Picks a random item from within a rect, matching a condition +// +function RandomItemInRectBJ takes rect r, boolexpr filter returns item + set bj_itemRandomConsidered = 0 + set bj_itemRandomCurrentPick = null + call EnumItemsInRect(r, filter, function RandomItemInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_itemRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random item from within a rect +// +function RandomItemInRectSimpleBJ takes rect r returns item + return RandomItemInRectBJ(r, null) +endfunction + +//=========================================================================== +function CheckItemStatus takes item whichItem, integer status returns boolean + if (status == bj_ITEM_STATUS_HIDDEN) then + return not IsItemVisible(whichItem) + elseif (status == bj_ITEM_STATUS_OWNED) then + return IsItemOwned(whichItem) + elseif (status == bj_ITEM_STATUS_INVULNERABLE) then + return IsItemInvulnerable(whichItem) + elseif (status == bj_ITEM_STATUS_POWERUP) then + return IsItemPowerup(whichItem) + elseif (status == bj_ITEM_STATUS_SELLABLE) then + return IsItemSellable(whichItem) + elseif (status == bj_ITEM_STATUS_PAWNABLE) then + return IsItemPawnable(whichItem) + else + // Unrecognized status - return false + return false + endif +endfunction + +//=========================================================================== +function CheckItemcodeStatus takes integer itemId, integer status returns boolean + if (status == bj_ITEMCODE_STATUS_POWERUP) then + return IsItemIdPowerup(itemId) + elseif (status == bj_ITEMCODE_STATUS_SELLABLE) then + return IsItemIdSellable(itemId) + elseif (status == bj_ITEMCODE_STATUS_PAWNABLE) then + return IsItemIdPawnable(itemId) + else + // Unrecognized status - return false + return false + endif +endfunction + + + +//*************************************************************************** +//* +//* Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function UnitId2OrderIdBJ takes integer unitId returns integer + return unitId +endfunction + +//=========================================================================== +function String2UnitIdBJ takes string unitIdString returns integer + return UnitId(unitIdString) +endfunction + +//=========================================================================== +function UnitId2StringBJ takes integer unitId returns string + local string unitString = UnitId2String(unitId) + + if (unitString != null) then + return unitString + endif + + // The unitId was not recognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function String2OrderIdBJ takes string orderIdString returns integer + local integer orderId + + // Check to see if it's a generic order. + set orderId = OrderId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Check to see if it's a (train) unit order. + set orderId = UnitId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Unrecognized - return 0 + return 0 +endfunction + +//=========================================================================== +function OrderId2StringBJ takes integer orderId returns string + local string orderString + + // Check to see if it's a generic order. + set orderString = OrderId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Check to see if it's a (train) unit order. + set orderString = UnitId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Unrecognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function GetIssuedOrderIdBJ takes nothing returns integer + return GetIssuedOrderId() +endfunction + +//=========================================================================== +function GetKillingUnitBJ takes nothing returns unit + return GetKillingUnit() +endfunction + +//=========================================================================== +function CreateUnitAtLocSaveLast takes player id, integer unitid, location loc, real face returns unit + if (unitid == 'ugol') then + set bj_lastCreatedUnit = CreateBlightedGoldmine(id, GetLocationX(loc), GetLocationY(loc), face) + else + set bj_lastCreatedUnit = CreateUnitAtLoc(id, unitid, loc, face) + endif + + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetLastCreatedUnit takes nothing returns unit + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function CreateNUnitsAtLoc takes integer count, integer unitId, player whichPlayer, location loc, real face returns group + call GroupClear(bj_lastCreatedGroup) + loop + set count = count - 1 + exitwhen count < 0 + call CreateUnitAtLocSaveLast(whichPlayer, unitId, loc, face) + call GroupAddUnit(bj_lastCreatedGroup, bj_lastCreatedUnit) + endloop + return bj_lastCreatedGroup +endfunction + +//=========================================================================== +function CreateNUnitsAtLocFacingLocBJ takes integer count, integer unitId, player whichPlayer, location loc, location lookAt returns group + return CreateNUnitsAtLoc(count, unitId, whichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastCreatedGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupLastCreatedDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GetLastCreatedGroup takes nothing returns group + set bj_groupLastCreatedDest = CreateGroup() + call ForGroup(bj_lastCreatedGroup, function GetLastCreatedGroupEnum) + return bj_groupLastCreatedDest +endfunction + +//=========================================================================== +function CreateCorpseLocBJ takes integer unitid, player whichPlayer, location loc returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), GetRandomReal(0, 360)) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function UnitSuspendDecayBJ takes boolean suspend, unit whichUnit returns nothing + call UnitSuspendDecay(whichUnit, suspend) +endfunction + +//=========================================================================== +function DelayedSuspendDecayStopAnimEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +function DelayedSuspendDecayBoneEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +// Game code explicitly sets the animation back to "decay bone" after the +// initial corpse fades away, so we reset it now. It's best not to show +// off corpses thus created until after this grace period has passed. +// +function DelayedSuspendDecayFleshEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 10.0) + call SetUnitAnimation(enumUnit, "decay flesh") + endif +endfunction + +//=========================================================================== +// Waits a short period of time to ensure that the corpse is decaying, and +// then suspend the animation and corpse decay. +// +function DelayedSuspendDecay takes nothing returns nothing + local group boneGroup + local group fleshGroup + + // Switch the global unit groups over to local variables and recreate + // the global versions, so that this function can handle overlapping + // calls. + set boneGroup = bj_suspendDecayBoneGroup + set fleshGroup = bj_suspendDecayFleshGroup + set bj_suspendDecayBoneGroup = CreateGroup() + set bj_suspendDecayFleshGroup = CreateGroup() + + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayStopAnimEnum) + + call TriggerSleepAction(bj_CORPSE_MAX_DEATH_TIME) + call ForGroup(fleshGroup, function DelayedSuspendDecayFleshEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayBoneEnum) + + call TriggerSleepAction(0.05) + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + + call DestroyGroup(boneGroup) + call DestroyGroup(fleshGroup) +endfunction + +//=========================================================================== +function DelayedSuspendDecayCreate takes nothing returns nothing + set bj_delayedSuspendDecayTrig = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_delayedSuspendDecayTrig, bj_delayedSuspendDecayTimer) + call TriggerAddAction(bj_delayedSuspendDecayTrig, function DelayedSuspendDecay) +endfunction + +//=========================================================================== +function CreatePermanentCorpseLocBJ takes integer style, integer unitid, player whichPlayer, location loc, real facing returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), facing) + call SetUnitBlendTime(bj_lastCreatedUnit, 0) + + if (style == bj_CORPSETYPE_FLESH) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay flesh") + call GroupAddUnit(bj_suspendDecayFleshGroup, bj_lastCreatedUnit) + elseif (style == bj_CORPSETYPE_BONE) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + else + // Unknown decay style - treat as skeletal. + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + endif + + call TimerStart(bj_delayedSuspendDecayTimer, 0.05, false, null) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetUnitStateSwap takes unitstate whichState, unit whichUnit returns real + return GetUnitState(whichUnit, whichState) +endfunction + +//=========================================================================== +function GetUnitStatePercent takes unit whichUnit, unitstate whichState, unitstate whichMaxState returns real + local real value = GetUnitState(whichUnit, whichState) + local real maxValue = GetUnitState(whichUnit, whichMaxState) + + // Return 0 for null units. + if (whichUnit == null) or (maxValue == 0) then + return 0.0 + endif + + return value / maxValue * 100.0 +endfunction + +//=========================================================================== +function GetUnitLifePercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE) +endfunction + +//=========================================================================== +function GetUnitManaPercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_MANA, UNIT_STATE_MAX_MANA) +endfunction + +//=========================================================================== +function SelectUnitSingle takes unit whichUnit returns nothing + call ClearSelection() + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectGroupBJEnum takes nothing returns nothing + call SelectUnit( GetEnumUnit(), true ) +endfunction + +//=========================================================================== +function SelectGroupBJ takes group g returns nothing + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) +endfunction + +//=========================================================================== +function SelectUnitAdd takes unit whichUnit returns nothing + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectUnitRemove takes unit whichUnit returns nothing + call SelectUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ClearSelectionForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + endif +endfunction + +//=========================================================================== +function SelectUnitForPlayerSingle takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectGroupForPlayerBJ takes group g, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) + endif +endfunction + +//=========================================================================== +function SelectUnitAddForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectUnitRemoveForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, false) + endif +endfunction + +//=========================================================================== +function SetUnitLifeBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitManaBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitLifePercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, GetUnitState(whichUnit, UNIT_STATE_MAX_LIFE) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function SetUnitManaPercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, GetUnitState(whichUnit, UNIT_STATE_MAX_MANA) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function IsUnitDeadBJ takes unit whichUnit returns boolean + return GetUnitState(whichUnit, UNIT_STATE_LIFE) <= 0 +endfunction + +//=========================================================================== +function IsUnitAliveBJ takes unit whichUnit returns boolean + return not IsUnitDeadBJ(whichUnit) +endfunction + +//=========================================================================== +function IsUnitGroupDeadBJEnum takes nothing returns nothing + if not IsUnitDeadBJ(GetEnumUnit()) then + set bj_isUnitGroupDeadResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is dead. +// +function IsUnitGroupDeadBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupDeadResult = true + call ForGroup(g, function IsUnitGroupDeadBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupDeadResult +endfunction + +//=========================================================================== +function IsUnitGroupEmptyBJEnum takes nothing returns nothing + set bj_isUnitGroupEmptyResult = false +endfunction + +//=========================================================================== +// Returns true if the group contains no units. +// +function IsUnitGroupEmptyBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupEmptyResult = true + call ForGroup(g, function IsUnitGroupEmptyBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupEmptyResult +endfunction + +//=========================================================================== +function IsUnitGroupInRectBJEnum takes nothing returns nothing + if not RectContainsUnit(bj_isUnitGroupInRectRect, GetEnumUnit()) then + set bj_isUnitGroupInRectResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is within the given rect. +// +function IsUnitGroupInRectBJ takes group g, rect r returns boolean + set bj_isUnitGroupInRectResult = true + set bj_isUnitGroupInRectRect = r + call ForGroup(g, function IsUnitGroupInRectBJEnum) + return bj_isUnitGroupInRectResult +endfunction + +//=========================================================================== +function IsUnitHiddenBJ takes unit whichUnit returns boolean + return IsUnitHidden(whichUnit) +endfunction + +//=========================================================================== +function ShowUnitHide takes unit whichUnit returns nothing + call ShowUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ShowUnitShow takes unit whichUnit returns nothing + // Prevent dead heroes from being unhidden. + if (IsUnitType(whichUnit, UNIT_TYPE_HERO) and IsUnitDeadBJ(whichUnit)) then + return + endif + + call ShowUnit(whichUnit, true) +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == 'ngol' +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJ takes unit whichPeon, location loc returns boolean + local group g = null + local unit goldMine = null + + // Search for a gold mine within a 1-cell radius of the specified location. + set g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, loc, 2*bj_CELLWIDTH, filterIssueHauntOrderAtLocBJ) + set goldMine = FirstOfGroup(g) + call DestroyGroup(g) + + // If no mine was found, abort the request. + if (goldMine == null) then + return false + endif + + // Issue the Haunt Gold Mine order. + return IssueTargetOrderById(whichPeon, 'ugol', goldMine) +endfunction + +//=========================================================================== +function IssueBuildOrderByIdLocBJ takes unit whichPeon, integer unitId, location loc returns boolean + if (unitId == 'ugol') then + return IssueHauntOrderAtLocBJ(whichPeon, loc) + else + return IssueBuildOrderById(whichPeon, unitId, GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function IssueTrainOrderByIdBJ takes unit whichUnit, integer unitId returns boolean + return IssueImmediateOrderById(whichUnit, unitId) +endfunction + +//=========================================================================== +function GroupTrainOrderByIdBJ takes group g, integer unitId returns boolean + return GroupImmediateOrderById(g, unitId) +endfunction + +//=========================================================================== +function IssueUpgradeOrderByIdBJ takes unit whichUnit, integer techId returns boolean + return IssueImmediateOrderById(whichUnit, techId) +endfunction + +//=========================================================================== +function GetAttackedUnitBJ takes nothing returns unit + return GetTriggerUnit() +endfunction + +//=========================================================================== +function SetUnitFlyHeightBJ takes unit whichUnit, real newHeight, real rate returns nothing + call SetUnitFlyHeight(whichUnit, newHeight, rate) +endfunction + +//=========================================================================== +function SetUnitTurnSpeedBJ takes unit whichUnit, real turnSpeed returns nothing + call SetUnitTurnSpeed(whichUnit, turnSpeed) +endfunction + +//=========================================================================== +function SetUnitPropWindowBJ takes unit whichUnit, real propWindow returns nothing + local real angle = propWindow + if (angle <= 0) then + set angle = 1 + elseif (angle >= 360) then + set angle = 359 + endif + set angle = angle * bj_DEGTORAD + + call SetUnitPropWindow(whichUnit, angle) +endfunction + +//=========================================================================== +function GetUnitPropWindowBJ takes unit whichUnit returns real + return GetUnitPropWindow(whichUnit) * bj_RADTODEG +endfunction + +//=========================================================================== +function GetUnitDefaultPropWindowBJ takes unit whichUnit returns real + return GetUnitDefaultPropWindow(whichUnit) +endfunction + +//=========================================================================== +function SetUnitBlendTimeBJ takes unit whichUnit, real blendTime returns nothing + call SetUnitBlendTime(whichUnit, blendTime) +endfunction + +//=========================================================================== +function SetUnitAcquireRangeBJ takes unit whichUnit, real acquireRange returns nothing + call SetUnitAcquireRange(whichUnit, acquireRange) +endfunction + +//=========================================================================== +function UnitSetCanSleepBJ takes unit whichUnit, boolean canSleep returns nothing + call UnitAddSleep(whichUnit, canSleep) +endfunction + +//=========================================================================== +function UnitCanSleepBJ takes unit whichUnit returns boolean + return UnitCanSleep(whichUnit) +endfunction + +//=========================================================================== +function UnitWakeUpBJ takes unit whichUnit returns nothing + call UnitWakeUp(whichUnit) +endfunction + +//=========================================================================== +function UnitIsSleepingBJ takes unit whichUnit returns boolean + return UnitIsSleeping(whichUnit) +endfunction + +//=========================================================================== +function WakePlayerUnitsEnum takes nothing returns nothing + call UnitWakeUp(GetEnumUnit()) +endfunction + +//=========================================================================== +function WakePlayerUnits takes player whichPlayer returns nothing + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function WakePlayerUnitsEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function EnableCreepSleepBJ takes boolean enable returns nothing + call SetPlayerState(Player(PLAYER_NEUTRAL_AGGRESSIVE), PLAYER_STATE_NO_CREEP_SLEEP, IntegerTertiaryOp(enable, 0, 1)) + + // If we're disabling, attempt to wake any already-sleeping creeps. + if (not enable) then + call WakePlayerUnits(Player(PLAYER_NEUTRAL_AGGRESSIVE)) + endif +endfunction + +//=========================================================================== +function UnitGenerateAlarms takes unit whichUnit, boolean generate returns boolean + return UnitIgnoreAlarm(whichUnit, not generate) +endfunction + +//=========================================================================== +function DoesUnitGenerateAlarms takes unit whichUnit returns boolean + return not UnitIgnoreAlarmToggled(whichUnit) +endfunction + +//=========================================================================== +function PauseAllUnitsBJEnum takes nothing returns nothing + call PauseUnit( GetEnumUnit(), bj_pauseAllUnitsFlag ) +endfunction + +//=========================================================================== +// Pause all units +function PauseAllUnitsBJ takes boolean pause returns nothing + local integer index + local player indexPlayer + local group g + + set bj_pauseAllUnitsFlag = pause + set g = CreateGroup() + set index = 0 + loop + set indexPlayer = Player( index ) + + // If this is a computer slot, pause/resume the AI. + if (GetPlayerController( indexPlayer ) == MAP_CONTROL_COMPUTER) then + call PauseCompAI( indexPlayer, pause ) + endif + + // Enumerate and unpause every unit owned by the player. + call GroupEnumUnitsOfPlayer( g, indexPlayer, null ) + call ForGroup( g, function PauseAllUnitsBJEnum ) + call GroupClear( g ) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) +endfunction + +//=========================================================================== +function PauseUnitBJ takes boolean pause, unit whichUnit returns nothing + call PauseUnit(whichUnit, pause) +endfunction + +//=========================================================================== +function IsUnitPausedBJ takes unit whichUnit returns boolean + return IsUnitPaused(whichUnit) +endfunction + +//=========================================================================== +function UnitPauseTimedLifeBJ takes boolean flag, unit whichUnit returns nothing + call UnitPauseTimedLife(whichUnit, flag) +endfunction + +//=========================================================================== +function UnitApplyTimedLifeBJ takes real duration, integer buffId, unit whichUnit returns nothing + call UnitApplyTimedLife(whichUnit, buffId, duration) +endfunction + +//=========================================================================== +function UnitShareVisionBJ takes boolean share, unit whichUnit, player whichPlayer returns nothing + call UnitShareVision(whichUnit, whichPlayer, share) +endfunction + +//=========================================================================== +function UnitRemoveBuffsBJ takes integer buffType, unit whichUnit returns nothing + if (buffType == bj_REMOVEBUFFS_POSITIVE) then + call UnitRemoveBuffs(whichUnit, true, false) + elseif (buffType == bj_REMOVEBUFFS_NEGATIVE) then + call UnitRemoveBuffs(whichUnit, false, true) + elseif (buffType == bj_REMOVEBUFFS_ALL) then + call UnitRemoveBuffs(whichUnit, true, true) + elseif (buffType == bj_REMOVEBUFFS_NONTLIFE) then + call UnitRemoveBuffsEx(whichUnit, true, true, false, false, false, true, false) + else + // Unrecognized dispel type - ignore the request. + endif +endfunction + +//=========================================================================== +function UnitRemoveBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns nothing + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + call UnitRemoveBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitCountBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns integer + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + return UnitCountBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitRemoveAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitAddAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitAddAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitRemoveTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitRemoveType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitAddTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitAddType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitMakeAbilityPermanentBJ takes boolean permanent, integer abilityId, unit whichUnit returns boolean + return UnitMakeAbilityPermanent(whichUnit, permanent, abilityId) +endfunction + +//=========================================================================== +function SetUnitExplodedBJ takes unit whichUnit, boolean exploded returns nothing + call SetUnitExploded(whichUnit, exploded) +endfunction + +//=========================================================================== +function ExplodeUnitBJ takes unit whichUnit returns nothing + call SetUnitExploded(whichUnit, true) + call KillUnit(whichUnit) +endfunction + +//=========================================================================== +function GetTransportUnitBJ takes nothing returns unit + return GetTransportUnit() +endfunction + +//=========================================================================== +function GetLoadedUnitBJ takes nothing returns unit + return GetLoadedUnit() +endfunction + +//=========================================================================== +function IsUnitInTransportBJ takes unit whichUnit, unit whichTransport returns boolean + return IsUnitInTransport(whichUnit, whichTransport) +endfunction + +//=========================================================================== +function IsUnitLoadedBJ takes unit whichUnit returns boolean + return IsUnitLoaded(whichUnit) +endfunction + +//=========================================================================== +function IsUnitIllusionBJ takes unit whichUnit returns boolean + return IsUnitIllusion(whichUnit) +endfunction + +//=========================================================================== +// This attempts to replace a unit with a new unit type by creating a new +// unit of the desired type using the old unit's location, facing, etc. +// +function ReplaceUnitBJ takes unit whichUnit, integer newUnitId, integer unitStateMethod returns unit + local unit oldUnit = whichUnit + local unit newUnit + local boolean wasHidden + local integer index + local item indexItem + local real oldRatio + + // If we have bogus data, don't attempt the replace. + if (oldUnit == null) then + set bj_lastReplacedUnit = oldUnit + return oldUnit + endif + + // Hide the original unit. + set wasHidden = IsUnitHidden(oldUnit) + call ShowUnit(oldUnit, false) + + // Create the replacement unit. + if (newUnitId == 'ugol') then + set newUnit = CreateBlightedGoldmine(GetOwningPlayer(oldUnit), GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + else + set newUnit = CreateUnit(GetOwningPlayer(oldUnit), newUnitId, GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + endif + + // Set the unit's life and mana according to the requested method. + if (unitStateMethod == bj_UNIT_STATE_METHOD_RELATIVE) then + // Set the replacement's current/max life ratio to that of the old unit. + // If both units have mana, do the same for mana. + if (GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_LIFE) / GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) + call SetUnitState(newUnit, UNIT_STATE_LIFE, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + endif + + if (GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) > 0) and (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_MANA) / GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) + call SetUnitState(newUnit, UNIT_STATE_MANA, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_ABSOLUTE) then + // Set the replacement's current life to that of the old unit. + // If the new unit has mana, do the same for mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(oldUnit, UNIT_STATE_LIFE)) + if (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(oldUnit, UNIT_STATE_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_DEFAULTS) then + // The newly created unit should already have default life and mana. + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_MAXIMUM) then + // Use max life and mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + else + // Unrecognized unit state method - ignore the request. + endif + + // Mirror properties of the old unit onto the new unit. + //call PauseUnit(newUnit, IsUnitPaused(oldUnit)) + call SetResourceAmount(newUnit, GetResourceAmount(oldUnit)) + + // If both the old and new units are heroes, handle their hero info. + if (IsUnitType(oldUnit, UNIT_TYPE_HERO) and IsUnitType(newUnit, UNIT_TYPE_HERO)) then + call SetHeroXP(newUnit, GetHeroXP(oldUnit), false) + + set index = 0 + loop + set indexItem = UnitItemInSlot(oldUnit, index) + if (indexItem != null) then + call UnitRemoveItem(oldUnit, indexItem) + call UnitAddItem(newUnit, indexItem) + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + + // Remove or kill the original unit. It is sometimes unsafe to remove + // hidden units, so kill the original unit if it was previously hidden. + if wasHidden then + call KillUnit(oldUnit) + call RemoveUnit(oldUnit) + else + call RemoveUnit(oldUnit) + endif + + set bj_lastReplacedUnit = newUnit + return newUnit +endfunction + +//=========================================================================== +function GetLastReplacedUnitBJ takes nothing returns unit + return bj_lastReplacedUnit +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingBJ takes unit whichUnit, location loc, real facing returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, facing) +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingLocBJ takes unit whichUnit, location loc, location lookAt returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function AddItemToStockBJ takes integer itemId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddItemToStock(whichUnit, itemId, currentStock, stockMax) +endfunction + +//=========================================================================== +function AddUnitToStockBJ takes integer unitId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddUnitToStock(whichUnit, unitId, currentStock, stockMax) +endfunction + +//=========================================================================== +function RemoveItemFromStockBJ takes integer itemId, unit whichUnit returns nothing + call RemoveItemFromStock(whichUnit, itemId) +endfunction + +//=========================================================================== +function RemoveUnitFromStockBJ takes integer unitId, unit whichUnit returns nothing + call RemoveUnitFromStock(whichUnit, unitId) +endfunction + +//=========================================================================== +function SetUnitUseFoodBJ takes boolean enable, unit whichUnit returns nothing + call SetUnitUseFood(whichUnit, enable) +endfunction + +//=========================================================================== +function UnitDamagePointLoc takes unit whichUnit, real delay, real radius, location loc, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamagePoint(whichUnit, delay, radius, GetLocationX(loc), GetLocationY(loc), amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + +//=========================================================================== +function UnitDamageTargetBJ takes unit whichUnit, unit target, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamageTarget(whichUnit, target, amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + + + +//*************************************************************************** +//* +//* Destructable Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateDestructableLoc takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function CreateDeadDestructableLocBJ takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDeadDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function GetLastCreatedDestructable takes nothing returns destructable + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function ShowDestructableBJ takes boolean flag, destructable d returns nothing + call ShowDestructable(d, flag) +endfunction + +//=========================================================================== +function SetDestructableInvulnerableBJ takes destructable d, boolean flag returns nothing + call SetDestructableInvulnerable(d, flag) +endfunction + +//=========================================================================== +function IsDestructableInvulnerableBJ takes destructable d returns boolean + return IsDestructableInvulnerable(d) +endfunction + +//=========================================================================== +function GetDestructableLoc takes destructable whichDestructable returns location + return Location(GetDestructableX(whichDestructable), GetDestructableY(whichDestructable)) +endfunction + +//=========================================================================== +function EnumDestructablesInRectAll takes rect r, code actionFunc returns nothing + call EnumDestructablesInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +function EnumDestructablesInCircleBJFilter takes nothing returns boolean + local location destLoc = GetDestructableLoc(GetFilterDestructable()) + local boolean result + + set result = DistanceBetweenPoints(destLoc, bj_enumDestructableCenter) <= bj_enumDestructableRadius + call RemoveLocation(destLoc) + return result +endfunction + +//=========================================================================== +function IsDestructableDeadBJ takes destructable d returns boolean + return GetDestructableLife(d) <= 0 +endfunction + +//=========================================================================== +function IsDestructableAliveBJ takes destructable d returns boolean + return not IsDestructableDeadBJ(d) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomDestructableInRectBJEnum takes nothing returns nothing + set bj_destRandomConsidered = bj_destRandomConsidered + 1 + if (GetRandomInt(1,bj_destRandomConsidered) == 1) then + set bj_destRandomCurrentPick = GetEnumDestructable() + endif +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect, matching a condition +// +function RandomDestructableInRectBJ takes rect r, boolexpr filter returns destructable + set bj_destRandomConsidered = 0 + set bj_destRandomCurrentPick = null + call EnumDestructablesInRect(r, filter, function RandomDestructableInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_destRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect +// +function RandomDestructableInRectSimpleBJ takes rect r returns destructable + return RandomDestructableInRectBJ(r, null) +endfunction + +//=========================================================================== +// Enumerates within a rect, with a filter to narrow the enumeration down +// objects within a circular area. +// +function EnumDestructablesInCircleBJ takes real radius, location loc, code actionFunc returns nothing + local rect r + + if (radius >= 0) then + set bj_enumDestructableCenter = loc + set bj_enumDestructableRadius = radius + set r = GetRectFromCircleBJ(loc, radius) + call EnumDestructablesInRect(r, filterEnumDestructablesInCircleBJ, actionFunc) + call RemoveRect(r) + endif +endfunction + +//=========================================================================== +function SetDestructableLifePercentBJ takes destructable d, real percent returns nothing + call SetDestructableLife(d, GetDestructableMaxLife(d) * percent * 0.01) +endfunction + +//=========================================================================== +function SetDestructableMaxLifeBJ takes destructable d, real max returns nothing + call SetDestructableMaxLife(d, max) +endfunction + +//=========================================================================== +function ModifyGateBJ takes integer gateOperation, destructable d returns nothing + if (gateOperation == bj_GATEOPERATION_CLOSE) then + if (GetDestructableLife(d) <= 0) then + call DestructableRestoreLife(d, GetDestructableMaxLife(d), true) + endif + call SetDestructableAnimation(d, "stand") + elseif (gateOperation == bj_GATEOPERATION_OPEN) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death alternate") + elseif (gateOperation == bj_GATEOPERATION_DESTROY) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death") + else + // Unrecognized gate state - ignore the request. + endif +endfunction + +//=========================================================================== +// Determine the elevator's height from its occlusion height. +// +function GetElevatorHeight takes destructable d returns integer + local integer height + + set height = 1 + R2I(GetDestructableOccluderHeight(d) / bj_CLIFFHEIGHT) + if (height < 1) or (height > 3) then + set height = 1 + endif + return height +endfunction + +//=========================================================================== +// To properly animate an elevator, we must know not only what height we +// want to change to, but also what height we are currently at. This code +// determines the elevator's current height from its occlusion height. +// Arbitrarily changing an elevator's occlusion height is thus inadvisable. +// +function ChangeElevatorHeight takes destructable d, integer newHeight returns nothing + local integer oldHeight + + // Cap the new height within the supported range. + set newHeight = IMaxBJ(1, newHeight) + set newHeight = IMinBJ(3, newHeight) + + // Find out what height the elevator is already at. + set oldHeight = GetElevatorHeight(d) + + // Set the elevator's occlusion height. + call SetDestructableOccluderHeight(d, bj_CLIFFHEIGHT*(newHeight-1)) + + if (newHeight == 1) then + if (oldHeight == 2) then + call SetDestructableAnimation(d, "birth") + call QueueDestructableAnimation(d, "stand") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth third") + call QueueDestructableAnimation(d, "stand") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand") + endif + elseif (newHeight == 2) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death") + call QueueDestructableAnimation(d, "stand second") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth second") + call QueueDestructableAnimation(d, "stand second") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand second") + endif + elseif (newHeight == 3) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death third") + call QueueDestructableAnimation(d, "stand third") + elseif (oldHeight == 2) then + call SetDestructableAnimation(d, "death second") + call QueueDestructableAnimation(d, "stand third") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand third") + endif + else + // Unrecognized new height - ignore the request. + endif +endfunction + +//=========================================================================== +// Grab the unit and throw his own coords in his face, forcing him to push +// and shove until he finds a spot where noone will bother him. +// +function NudgeUnitsInRectEnum takes nothing returns nothing + local unit nudgee = GetEnumUnit() + + call SetUnitPosition(nudgee, GetUnitX(nudgee), GetUnitY(nudgee)) +endfunction + +//=========================================================================== +function NudgeItemsInRectEnum takes nothing returns nothing + local item nudgee = GetEnumItem() + + call SetItemPosition(nudgee, GetItemX(nudgee), GetItemY(nudgee)) +endfunction + +//=========================================================================== +// Nudge the items and units within a given rect ever so gently, so as to +// encourage them to find locations where they can peacefully coexist with +// pathing restrictions and live happy, fruitful lives. +// +function NudgeObjectsInRect takes rect nudgeArea returns nothing + local group g + + set g = CreateGroup() + call GroupEnumUnitsInRect(g, nudgeArea, null) + call ForGroup(g, function NudgeUnitsInRectEnum) + call DestroyGroup(g) + + call EnumItemsInRect(nudgeArea, null, function NudgeItemsInRectEnum) +endfunction + +//=========================================================================== +function NearbyElevatorExistsEnum takes nothing returns nothing + local destructable d = GetEnumDestructable() + local integer dType = GetDestructableTypeId(d) + + if (dType == bj_ELEVATOR_CODE01) or (dType == bj_ELEVATOR_CODE02) then + set bj_elevatorNeighbor = d + endif +endfunction + +//=========================================================================== +function NearbyElevatorExists takes real x, real y returns boolean + local real findThreshold = 32 + local rect r + + // If another elevator is overlapping this one, ignore the wall. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorNeighbor = null + call EnumDestructablesInRect(r, null, function NearbyElevatorExistsEnum) + call RemoveRect(r) + + return bj_elevatorNeighbor != null +endfunction + +//=========================================================================== +function FindElevatorWallBlockerEnum takes nothing returns nothing + set bj_elevatorWallBlocker = GetEnumDestructable() +endfunction + +//=========================================================================== +// This toggles pathing on or off for one wall of an elevator by killing +// or reviving a pathing blocker at the appropriate location (and creating +// the pathing blocker in the first place, if it does not yet exist). +// +function ChangeElevatorWallBlocker takes real x, real y, real facing, boolean open returns nothing + local destructable blocker = null + local real findThreshold = 32 + local real nudgeLength = 4.25 * bj_CELLWIDTH + local real nudgeWidth = 1.25 * bj_CELLWIDTH + local rect r + + // Search for the pathing blocker within the general area. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorWallBlocker = null + call EnumDestructablesInRect(r, null, function FindElevatorWallBlockerEnum) + call RemoveRect(r) + set blocker = bj_elevatorWallBlocker + + // Ensure that the blocker exists. + if (blocker == null) then + set blocker = CreateDeadDestructable(bj_ELEVATOR_BLOCKER_CODE, x, y, facing, 1, 0) + elseif (GetDestructableTypeId(blocker) != bj_ELEVATOR_BLOCKER_CODE) then + // If a different destructible exists in the blocker's spot, ignore + // the request. (Two destructibles cannot occupy the same location + // on the map, so we cannot create an elevator blocker here.) + return + endif + + if (open) then + // Ensure that the blocker is dead. + if (GetDestructableLife(blocker) > 0) then + call KillDestructable(blocker) + endif + else + // Ensure that the blocker is alive. + if (GetDestructableLife(blocker) <= 0) then + call DestructableRestoreLife(blocker, GetDestructableMaxLife(blocker), false) + endif + + // Nudge any objects standing in the blocker's way. + if (facing == 0) then + set r = Rect(x - nudgeWidth/2, y - nudgeLength/2, x + nudgeWidth/2, y + nudgeLength/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + elseif (facing == 90) then + set r = Rect(x - nudgeLength/2, y - nudgeWidth/2, x + nudgeLength/2, y + nudgeWidth/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + else + // Unrecognized blocker angle - don't nudge anything. + endif + endif +endfunction + +//=========================================================================== +function ChangeElevatorWalls takes boolean open, integer walls, destructable d returns nothing + local real x = GetDestructableX(d) + local real y = GetDestructableY(d) + local real distToBlocker = 192 + local real distToNeighbor = 256 + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_EAST) then + if (not NearbyElevatorExists(x + distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x + distToBlocker, y, 0, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_NORTH) then + if (not NearbyElevatorExists(x, y + distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y + distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_SOUTH) then + if (not NearbyElevatorExists(x, y - distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y - distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_WEST) then + if (not NearbyElevatorExists(x - distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x - distToBlocker, y, 0, open) + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Neutral Building Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function WaygateActivateBJ takes boolean activate, unit waygate returns nothing + call WaygateActivate(waygate, activate) +endfunction + +//=========================================================================== +function WaygateIsActiveBJ takes unit waygate returns boolean + return WaygateIsActive(waygate) +endfunction + +//=========================================================================== +function WaygateSetDestinationLocBJ takes unit waygate, location loc returns nothing + call WaygateSetDestination(waygate, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function WaygateGetDestinationLocBJ takes unit waygate returns location + return Location(WaygateGetDestinationX(waygate), WaygateGetDestinationY(waygate)) +endfunction + +//=========================================================================== +function UnitSetUsesAltIconBJ takes boolean flag, unit whichUnit returns nothing + call UnitSetUsesAltIcon(whichUnit, flag) +endfunction + + + +//*************************************************************************** +//* +//* UI Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForceUIKeyBJ takes player whichPlayer, string key returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUIKey(key) + endif +endfunction + +//=========================================================================== +function ForceUICancelBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUICancel() + endif +endfunction + + + +//*************************************************************************** +//* +//* Group and Force Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForGroupBJ takes group whichGroup, code callback returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + call ForGroup(whichGroup, callback) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif +endfunction + +//=========================================================================== +function GroupAddUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupAddUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupRemoveUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupRemoveUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupAddGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupAddGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupAddGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupAddGroupDest = destGroup + call ForGroup(sourceGroup, function GroupAddGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function GroupRemoveGroupEnum takes nothing returns nothing + call GroupRemoveUnit(bj_groupRemoveGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupRemoveGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRemoveGroupDest = destGroup + call ForGroup(sourceGroup, function GroupRemoveGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function ForceAddPlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceAddPlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +function ForceRemovePlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceRemovePlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +// Consider each unit, one at a time, keeping a "current pick". Once all units +// are considered, this "current pick" will be the resulting random unit. +// +// The chance of picking a given unit over the "current pick" is 1/N, where N is +// the number of units considered thusfar (including the current consideration). +// +function GroupPickRandomUnitEnum takes nothing returns nothing + set bj_groupRandomConsidered = bj_groupRandomConsidered + 1 + if (GetRandomInt(1,bj_groupRandomConsidered) == 1) then + set bj_groupRandomCurrentPick = GetEnumUnit() + endif +endfunction + +//=========================================================================== +// Picks a random unit from a group. +// +function GroupPickRandomUnit takes group whichGroup returns unit + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRandomConsidered = 0 + set bj_groupRandomCurrentPick = null + call ForGroup(whichGroup, function GroupPickRandomUnitEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif + return bj_groupRandomCurrentPick +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function ForcePickRandomPlayerEnum takes nothing returns nothing + set bj_forceRandomConsidered = bj_forceRandomConsidered + 1 + if (GetRandomInt(1,bj_forceRandomConsidered) == 1) then + set bj_forceRandomCurrentPick = GetEnumPlayer() + endif +endfunction + +//=========================================================================== +// Picks a random player from a force. +// +function ForcePickRandomPlayer takes force whichForce returns player + set bj_forceRandomConsidered = 0 + set bj_forceRandomCurrentPick = null + call ForForce(whichForce, function ForcePickRandomPlayerEnum) + return bj_forceRandomCurrentPick +endfunction + +//=========================================================================== +function EnumUnitsSelected takes player whichPlayer, boolexpr enumFilter, code enumAction returns nothing + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, enumFilter) + call DestroyBoolExpr(enumFilter) + call ForGroup(g, enumAction) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function GetUnitsInRectMatching takes rect r, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRect(g, r, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRectAll takes rect r returns group + return GetUnitsInRectMatching(r, null) +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayerFilter takes nothing returns boolean + return GetOwningPlayer(GetFilterUnit()) == bj_groupEnumOwningPlayer +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayer takes rect r, player whichPlayer returns group + local group g = CreateGroup() + set bj_groupEnumOwningPlayer = whichPlayer + call GroupEnumUnitsInRect(g, r, filterGetUnitsInRectOfPlayer) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocAll takes real radius, location whichLocation returns group + return GetUnitsInRangeOfLocMatching(radius, whichLocation, null) +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAllFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAll takes integer unitid returns group + local group result = CreateGroup() + local group g = CreateGroup() + local integer index + + set index = 0 + loop + set bj_groupEnumTypeId = unitid + call GroupClear(g) + call GroupEnumUnitsOfPlayer(g, Player(index), filterGetUnitsOfTypeIdAll) + call GroupAddGroup(g, result) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) + + return result +endfunction + +//=========================================================================== +function GetUnitsOfPlayerMatching takes player whichPlayer, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAll takes player whichPlayer returns group + return GetUnitsOfPlayerMatching(whichPlayer, null) +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeIdFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeId takes player whichPlayer, integer unitid returns group + local group g = CreateGroup() + set bj_groupEnumTypeId = unitid + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId) + return g +endfunction + +//=========================================================================== +function GetUnitsSelectedAll takes player whichPlayer returns group + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, null) + return g +endfunction + +//=========================================================================== +function GetForceOfPlayer takes player whichPlayer returns force + local force f = CreateForce() + call ForceAddPlayer(f, whichPlayer) + return f +endfunction + +//=========================================================================== +function GetPlayersAll takes nothing returns force + return bj_FORCE_ALL_PLAYERS +endfunction + +//=========================================================================== +function GetPlayersByMapControl takes mapcontrol whichControl returns force + local force f = CreateForce() + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if GetPlayerController(indexPlayer) == whichControl then + call ForceAddPlayer(f, indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYER_SLOTS + endloop + + return f +endfunction + +//=========================================================================== +function GetPlayersAllies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumAllies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersEnemies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumEnemies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersMatching takes boolexpr filter returns force + local force f = CreateForce() + call ForceEnumPlayers(f, filter) + call DestroyBoolExpr(filter) + return f +endfunction + +//=========================================================================== +function CountUnitsInGroupEnum takes nothing returns nothing + set bj_groupCountUnits = bj_groupCountUnits + 1 +endfunction + +//=========================================================================== +function CountUnitsInGroup takes group g returns integer + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupCountUnits = 0 + call ForGroup(g, function CountUnitsInGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_groupCountUnits +endfunction + +//=========================================================================== +function CountPlayersInForceEnum takes nothing returns nothing + set bj_forceCountPlayers = bj_forceCountPlayers + 1 +endfunction + +//=========================================================================== +function CountPlayersInForceBJ takes force f returns integer + set bj_forceCountPlayers = 0 + call ForForce(f, function CountPlayersInForceEnum) + return bj_forceCountPlayers +endfunction + +//=========================================================================== +function GetRandomSubGroupEnum takes nothing returns nothing + if (bj_randomSubGroupWant > 0) then + if (bj_randomSubGroupWant >= bj_randomSubGroupTotal) or (GetRandomReal(0,1) < bj_randomSubGroupChance) then + // We either need every remaining unit, or the unit passed its chance check. + call GroupAddUnit(bj_randomSubGroupGroup, GetEnumUnit()) + set bj_randomSubGroupWant = bj_randomSubGroupWant - 1 + endif + endif + set bj_randomSubGroupTotal = bj_randomSubGroupTotal - 1 +endfunction + +//=========================================================================== +function GetRandomSubGroup takes integer count, group sourceGroup returns group + local group g = CreateGroup() + + set bj_randomSubGroupGroup = g + set bj_randomSubGroupWant = count + set bj_randomSubGroupTotal = CountUnitsInGroup(sourceGroup) + + if (bj_randomSubGroupWant <= 0 or bj_randomSubGroupTotal <= 0) then + return g + endif + + set bj_randomSubGroupChance = I2R(bj_randomSubGroupWant) / I2R(bj_randomSubGroupTotal) + call ForGroup(sourceGroup, function GetRandomSubGroupEnum) + return g +endfunction + +//=========================================================================== +function LivingPlayerUnitsOfTypeIdFilter takes nothing returns boolean + local unit filterUnit = GetFilterUnit() + return IsUnitAliveBJ(filterUnit) and GetUnitTypeId(filterUnit) == bj_livingPlayerUnitsTypeId +endfunction + +//=========================================================================== +function CountLivingPlayerUnitsOfTypeId takes integer unitId, player whichPlayer returns integer + local group g + local integer matchedCount + + set g = CreateGroup() + set bj_livingPlayerUnitsTypeId = unitId + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterLivingPlayerUnitsOfTypeId) + set matchedCount = CountUnitsInGroup(g) + call DestroyGroup(g) + + return matchedCount +endfunction + + + +//*************************************************************************** +//* +//* Animation Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ResetUnitAnimation takes unit whichUnit returns nothing + call SetUnitAnimation(whichUnit, "stand") +endfunction + +//=========================================================================== +function SetUnitTimeScalePercent takes unit whichUnit, real percentScale returns nothing + call SetUnitTimeScale(whichUnit, percentScale * 0.01) +endfunction + +//=========================================================================== +function SetUnitScalePercent takes unit whichUnit, real percentScaleX, real percentScaleY, real percentScaleZ returns nothing + call SetUnitScale(whichUnit, percentScaleX * 0.01, percentScaleY * 0.01, percentScaleZ * 0.01) +endfunction + +//=========================================================================== +// This version differs from the common.j interface in that the alpha value +// is reversed so as to be displayed as transparency, and all four parameters +// are treated as percentages rather than bytes. +// +function SetUnitVertexColorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call SetUnitVertexColor(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function UnitAddIndicatorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function DestructableAddIndicatorBJ takes destructable whichDestructable, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichDestructable, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function ItemAddIndicatorBJ takes item whichItem, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichItem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at a location. +// +function SetUnitFacingToFaceLocTimed takes unit whichUnit, location target, real duration returns nothing + local location unitLoc = GetUnitLoc(whichUnit) + + call SetUnitFacingTimed(whichUnit, AngleBetweenPoints(unitLoc, target), duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at another unit. +// +function SetUnitFacingToFaceUnitTimed takes unit whichUnit, unit target, real duration returns nothing + local location unitLoc = GetUnitLoc(target) + + call SetUnitFacingToFaceLocTimed(whichUnit, unitLoc, duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +function QueueUnitAnimationBJ takes unit whichUnit, string whichAnimation returns nothing + call QueueUnitAnimation(whichUnit, whichAnimation) +endfunction + +//=========================================================================== +function SetDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call SetDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function QueueDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call QueueDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function SetDestAnimationSpeedPercent takes destructable d, real percentScale returns nothing + call SetDestructableAnimationSpeed(d, percentScale * 0.01) +endfunction + + + +//*************************************************************************** +//* +//* Dialog Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DialogDisplayBJ takes boolean flag, dialog whichDialog, player whichPlayer returns nothing + call DialogDisplay(whichPlayer, whichDialog, flag) +endfunction + +//=========================================================================== +function DialogSetMessageBJ takes dialog whichDialog, string message returns nothing + call DialogSetMessage(whichDialog, message) +endfunction + +//=========================================================================== +function DialogAddButtonBJ takes dialog whichDialog, string buttonText returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,0) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogAddButtonWithHotkeyBJ takes dialog whichDialog, string buttonText, integer hotkey returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,hotkey) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogClearBJ takes dialog whichDialog returns nothing + call DialogClear(whichDialog) +endfunction + +//=========================================================================== +function GetLastCreatedButtonBJ takes nothing returns button + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function GetClickedButtonBJ takes nothing returns button + return GetClickedButton() +endfunction + +//=========================================================================== +function GetClickedDialogBJ takes nothing returns dialog + return GetClickedDialog() +endfunction + + + +//*************************************************************************** +//* +//* Alliance Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerAllianceBJ takes player sourcePlayer, alliancetype whichAllianceSetting, boolean value, player otherPlayer returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + call SetPlayerAlliance(sourcePlayer, otherPlayer, whichAllianceSetting, value) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Ally" checkbox. +// +function SetPlayerAllianceStateAllyBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_REQUEST, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_RESPONSE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_XP, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_SPELLS, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Vision" checkbox. +// +function SetPlayerAllianceStateVisionBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_VISION, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox. +// +function SetPlayerAllianceStateControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_CONTROL, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox with the Full +// Shared Unit Control feature enabled. +// +function SetPlayerAllianceStateFullControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, flag) +endfunction + +//=========================================================================== +function SetPlayerAllianceStateBJ takes player sourcePlayer, player otherPlayer, integer allianceState returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + if allianceState == bj_ALLIANCE_UNALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_UNALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_UNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_ADVUNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + else + // Unrecognized alliance state - ignore the request. + endif +endfunction + +//=========================================================================== +// Set the alliance states for an entire force towards another force. +// +function SetForceAllianceStateBJ takes force sourceForce, force targetForce, integer allianceState returns nothing + local integer sourceIndex + local integer targetIndex + + set sourceIndex = 0 + loop + + if (sourceForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(sourceIndex), sourceForce)) then + set targetIndex = 0 + loop + if (targetForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(targetIndex), targetForce)) then + call SetPlayerAllianceStateBJ(Player(sourceIndex), Player(targetIndex), allianceState) + endif + + set targetIndex = targetIndex + 1 + exitwhen targetIndex == bj_MAX_PLAYER_SLOTS + endloop + endif + + set sourceIndex = sourceIndex + 1 + exitwhen sourceIndex == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +// Test to see if two players are co-allied (allied with each other). +// +function PlayersAreCoAllied takes player playerA, player playerB returns boolean + // Players are considered to be allied with themselves. + if (playerA == playerB) then + return true + endif + + // Co-allies are both allied with each other. + if GetPlayerAlliance(playerA, playerB, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(playerB, playerA, ALLIANCE_PASSIVE) then + return true + endif + endif + return false +endfunction + +//=========================================================================== +// Force (whichPlayer) AI player to share vision and advanced unit control +// with all AI players of its allies. +// +function ShareEverythingWithTeamAI takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Force (whichPlayer) to share vision and advanced unit control with all of his/her allies. +// +function ShareEverythingWithTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(indexPlayer, whichPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Creates a 'Neutral Victim' player slot. This slot is passive towards all +// other players, but all other players are aggressive towards him/her. +// +function ConfigureNeutralVictim takes nothing returns nothing + local integer index + local player indexPlayer + local player neutralVictim = Player(bj_PLAYER_NEUTRAL_VICTIM) + + set index = 0 + loop + set indexPlayer = Player(index) + + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, false) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Neutral Victim and Neutral Aggressive should not fight each other. + set indexPlayer = Player(PLAYER_NEUTRAL_AGGRESSIVE) + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, true) + + // Neutral Victim does not give bounties. + call SetPlayerState(neutralVictim, PLAYER_STATE_GIVES_BOUNTY, 0) +endfunction + +//=========================================================================== +function MakeUnitsPassiveForPlayerEnum takes nothing returns nothing + call SetUnitOwner(GetEnumUnit(), Player(bj_PLAYER_NEUTRAL_VICTIM), false) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForPlayer takes player whichPlayer returns nothing + local group playerUnits = CreateGroup() + call CachePlayerHeroData(whichPlayer) + call GroupEnumUnitsOfPlayer(playerUnits, whichPlayer, null) + call ForGroup(playerUnits, function MakeUnitsPassiveForPlayerEnum) + call DestroyGroup(playerUnits) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) then + call MakeUnitsPassiveForPlayer(indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine whether or not victory/defeat is disabled via cheat codes. +// +function AllowVictoryDefeat takes playergameresult gameResult returns boolean + if (gameResult == PLAYER_GAME_RESULT_VICTORY) then + return not IsNoVictoryCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_DEFEAT) then + return not IsNoDefeatCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_NEUTRAL) then + return (not IsNoVictoryCheat()) and (not IsNoDefeatCheat()) + endif + return true +endfunction + +//=========================================================================== +function EndGameBJ takes nothing returns nothing + call EndGame( true ) +endfunction + +//=========================================================================== +function MeleeVictoryDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was victorious" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_VICTORIOUS" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_GAME" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_GAME") ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function MeleeDefeatDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was defeated" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_DEFEATED" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_DEFEAT_MSG" ) ) + + // Only show the continue button if the game is not over and observers on death are allowed + if (not bj_meleeGameOver and IsMapFlagSet(MAP_OBSERVERS_ON_DEATH)) then + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_OBSERVING" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_OBSERVING") ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function GameOverDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string s + + // Display "player left the game" message + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_LEFT_GAME" )) + + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set s = GetLocalizedString( "GAMEOVER_DISCONNECTED" ) + else + set s = GetLocalizedString( "GAMEOVER_GAME_OVER" ) + endif + + call DialogSetMessage( d, s ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_OK" ), GetLocalizedHotkey("GAMEOVER_OK") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function RemovePlayerPreserveUnitsBJ takes player whichPlayer, playergameresult gameResult, boolean leftGame returns nothing + if AllowVictoryDefeat(gameResult) then + + call RemovePlayer(whichPlayer, gameResult) + + if( gameResult == PLAYER_GAME_RESULT_VICTORY ) then + call MeleeVictoryDialogBJ( whichPlayer, leftGame ) + return + elseif( gameResult == PLAYER_GAME_RESULT_DEFEAT ) then + call MeleeDefeatDialogBJ( whichPlayer, leftGame ) + else + call GameOverDialogBJ( whichPlayer, leftGame ) + endif + + endif +endfunction + +//=========================================================================== +function CustomVictoryOkBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif +endfunction + +//=========================================================================== +function CustomVictoryQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + call EndGame( bj_changeLevelShowScores ) +endfunction + +//=========================================================================== +function CustomVictoryDialogBJ takes player whichPlayer returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE" ), GetLocalizedHotkey("GAMEOVER_CONTINUE") ) ) + call TriggerAddAction( t, function CustomVictoryOkBJ ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomVictoryQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function CustomVictorySkipBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + if bj_isSinglePlayer then + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif + endif +endfunction + +//=========================================================================== +function CustomVictoryBJ takes player whichPlayer, boolean showDialog, boolean showScores returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_VICTORY ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_VICTORY ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_VICTORIOUS" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + set bj_changeLevelShowScores = showScores + if showDialog then + call CustomVictoryDialogBJ( whichPlayer ) + else + call CustomVictorySkipBJ( whichPlayer ) + endif + endif + endif +endfunction + +//=========================================================================== +function CustomDefeatRestartBJ takes nothing returns nothing + call PauseGame( false ) + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatReduceDifficultyBJ takes nothing returns nothing + local gamedifficulty diff = GetGameDifficulty() + + call PauseGame( false ) + + // Knock the difficulty down, if possible. + if (diff == MAP_DIFFICULTY_EASY) then + // Sorry, but it doesn't get any easier than this. + elseif (diff == MAP_DIFFICULTY_NORMAL) then + call SetGameDifficulty(MAP_DIFFICULTY_EASY) + elseif (diff == MAP_DIFFICULTY_HARD) then + call SetGameDifficulty(MAP_DIFFICULTY_NORMAL) + else + // Unrecognized difficulty + endif + + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatLoadBJ takes nothing returns nothing + call PauseGame( false ) + call DisplayLoadDialog() +endfunction + +//=========================================================================== +function CustomDefeatQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + endif + + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + call EndGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatDialogBJ takes player whichPlayer, string message returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, message ) + + if bj_isSinglePlayer then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_RESTART" ), GetLocalizedHotkey("GAMEOVER_RESTART") ) ) + call TriggerAddAction( t, function CustomDefeatRestartBJ ) + + if (GetGameDifficulty() != MAP_DIFFICULTY_EASY) then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_REDUCE_DIFFICULTY" ), GetLocalizedHotkey("GAMEOVER_REDUCE_DIFFICULTY") ) ) + call TriggerAddAction( t, function CustomDefeatReduceDifficultyBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_LOAD" ), GetLocalizedHotkey("GAMEOVER_LOAD") ) ) + call TriggerAddAction( t, function CustomDefeatLoadBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomDefeatQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function CustomDefeatBJ takes player whichPlayer, string message returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_DEFEAT ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_DEFEAT ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_DEFEATED" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + call CustomDefeatDialogBJ( whichPlayer, message ) + endif + endif +endfunction + +//=========================================================================== +function SetNextLevelBJ takes string nextLevel returns nothing + if (nextLevel == "") then + set bj_changeLevelMapName = null + else + set bj_changeLevelMapName = nextLevel + endif +endfunction + +//=========================================================================== +function SetPlayerOnScoreScreenBJ takes boolean flag, player whichPlayer returns nothing + call SetPlayerOnScoreScreen(whichPlayer, flag) +endfunction + + + +//*************************************************************************** +//* +//* Quest Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateQuestBJ takes integer questType, string title, string description, string iconPath returns quest + local boolean required = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_REQ_UNDISCOVERED) + local boolean discovered = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_OPT_DISCOVERED) + + set bj_lastCreatedQuest = CreateQuest() + call QuestSetTitle(bj_lastCreatedQuest, title) + call QuestSetDescription(bj_lastCreatedQuest, description) + call QuestSetIconPath(bj_lastCreatedQuest, iconPath) + call QuestSetRequired(bj_lastCreatedQuest, required) + call QuestSetDiscovered(bj_lastCreatedQuest, discovered) + call QuestSetCompleted(bj_lastCreatedQuest, false) + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function DestroyQuestBJ takes quest whichQuest returns nothing + call DestroyQuest(whichQuest) +endfunction + +//=========================================================================== +function QuestSetEnabledBJ takes boolean enabled, quest whichQuest returns nothing + call QuestSetEnabled(whichQuest, enabled) +endfunction + +//=========================================================================== +function QuestSetTitleBJ takes quest whichQuest, string title returns nothing + call QuestSetTitle(whichQuest, title) +endfunction + +//=========================================================================== +function QuestSetDescriptionBJ takes quest whichQuest, string description returns nothing + call QuestSetDescription(whichQuest, description) +endfunction + +//=========================================================================== +function QuestSetCompletedBJ takes quest whichQuest, boolean completed returns nothing + call QuestSetCompleted(whichQuest, completed) +endfunction + +//=========================================================================== +function QuestSetFailedBJ takes quest whichQuest, boolean failed returns nothing + call QuestSetFailed(whichQuest, failed) +endfunction + +//=========================================================================== +function QuestSetDiscoveredBJ takes quest whichQuest, boolean discovered returns nothing + call QuestSetDiscovered(whichQuest, discovered) +endfunction + +//=========================================================================== +function GetLastCreatedQuestBJ takes nothing returns quest + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function CreateQuestItemBJ takes quest whichQuest, string description returns questitem + set bj_lastCreatedQuestItem = QuestCreateItem(whichQuest) + call QuestItemSetDescription(bj_lastCreatedQuestItem, description) + call QuestItemSetCompleted(bj_lastCreatedQuestItem, false) + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function QuestItemSetDescriptionBJ takes questitem whichQuestItem, string description returns nothing + call QuestItemSetDescription(whichQuestItem, description) +endfunction + +//=========================================================================== +function QuestItemSetCompletedBJ takes questitem whichQuestItem, boolean completed returns nothing + call QuestItemSetCompleted(whichQuestItem, completed) +endfunction + +//=========================================================================== +function GetLastCreatedQuestItemBJ takes nothing returns questitem + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function CreateDefeatConditionBJ takes string description returns defeatcondition + set bj_lastCreatedDefeatCondition = CreateDefeatCondition() + call DefeatConditionSetDescription(bj_lastCreatedDefeatCondition, description) + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function DestroyDefeatConditionBJ takes defeatcondition whichCondition returns nothing + call DestroyDefeatCondition(whichCondition) +endfunction + +//=========================================================================== +function DefeatConditionSetDescriptionBJ takes defeatcondition whichCondition, string description returns nothing + call DefeatConditionSetDescription(whichCondition, description) +endfunction + +//=========================================================================== +function GetLastCreatedDefeatConditionBJ takes nothing returns defeatcondition + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function FlashQuestDialogButtonBJ takes nothing returns nothing + call FlashQuestDialogButton() +endfunction + +//=========================================================================== +function QuestMessageBJ takes force f, integer messageType, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (messageType == bj_QUESTMESSAGE_DISCOVERED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, message) + call StartSound(bj_questDiscoveredSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_UPDATED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, message) + call StartSound(bj_questUpdatedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_COMPLETED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, message) + call StartSound(bj_questCompletedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_FAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, message) + call StartSound(bj_questFailedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_REQUIREMENT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTREQUIREMENT, message) + + elseif (messageType == bj_QUESTMESSAGE_MISSIONFAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, message) + call StartSound(bj_questFailedSound) + + elseif (messageType == bj_QUESTMESSAGE_HINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ALWAYSHINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_SECRET) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, message) + call StartSound(bj_questSecretSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITAVAILABLE) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ITEMACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, message) + call StartSound(bj_questItemAcquiredSound) + + elseif (messageType == bj_QUESTMESSAGE_WARNING) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, message) + call StartSound(bj_questWarningSound) + + else + // Unrecognized message type - ignore the request. + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Timer Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function StartTimerBJ takes timer t, boolean periodic, real timeout returns timer + set bj_lastStartedTimer = t + call TimerStart(t, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerBJ takes boolean periodic, real timeout returns timer + set bj_lastStartedTimer = CreateTimer() + call TimerStart(bj_lastStartedTimer, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function DestroyTimerBJ takes timer whichTimer returns nothing + call DestroyTimer(whichTimer) +endfunction + +//=========================================================================== +function PauseTimerBJ takes boolean pause, timer whichTimer returns nothing + if pause then + call PauseTimer(whichTimer) + else + call ResumeTimer(whichTimer) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTimerBJ takes nothing returns timer + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerDialogBJ takes timer t, string title returns timerdialog + set bj_lastCreatedTimerDialog = CreateTimerDialog(t) + call TimerDialogSetTitle(bj_lastCreatedTimerDialog, title) + call TimerDialogDisplay(bj_lastCreatedTimerDialog, true) + return bj_lastCreatedTimerDialog +endfunction + +//=========================================================================== +function DestroyTimerDialogBJ takes timerdialog td returns nothing + call DestroyTimerDialog(td) +endfunction + +//=========================================================================== +function TimerDialogSetTitleBJ takes timerdialog td, string title returns nothing + call TimerDialogSetTitle(td, title) +endfunction + +//=========================================================================== +function TimerDialogSetTitleColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTitleColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetTimeColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTimeColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetSpeedBJ takes timerdialog td, real speedMultFactor returns nothing + call TimerDialogSetSpeed(td, speedMultFactor) +endfunction + +//=========================================================================== +function TimerDialogDisplayForPlayerBJ takes boolean show, timerdialog td, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call TimerDialogDisplay(td, show) + endif +endfunction + +//=========================================================================== +function TimerDialogDisplayBJ takes boolean show, timerdialog td returns nothing + call TimerDialogDisplay(td, show) +endfunction + +//=========================================================================== +function GetLastCreatedTimerDialogBJ takes nothing returns timerdialog + return bj_lastCreatedTimerDialog +endfunction + + + +//*************************************************************************** +//* +//* Leaderboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function LeaderboardResizeBJ takes leaderboard lb returns nothing + local integer size = LeaderboardGetItemCount(lb) + + if (LeaderboardGetLabelText(lb) == "") then + set size = size - 1 + endif + call LeaderboardSetSizeByItemCount(lb, size) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueBJ takes player whichPlayer, leaderboard lb, integer val returns nothing + call LeaderboardSetItemValue(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelBJ takes player whichPlayer, leaderboard lb, string val returns nothing + call LeaderboardSetItemLabel(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemStyleBJ takes player whichPlayer, leaderboard lb, boolean showLabel, boolean showValue, boolean showIcon returns nothing + call LeaderboardSetItemStyle(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), showLabel, showValue, showIcon) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemLabelColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemValueColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetLabelColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetValueColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetValueColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelBJ takes leaderboard lb, string label returns nothing + call LeaderboardSetLabel(lb, label) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSetStyleBJ takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + call LeaderboardSetStyle(lb, showLabel, showNames, showValues, showIcons) +endfunction + +//=========================================================================== +function LeaderboardGetItemCountBJ takes leaderboard lb returns integer + return LeaderboardGetItemCount(lb) +endfunction + +//=========================================================================== +function LeaderboardHasPlayerItemBJ takes leaderboard lb, player whichPlayer returns boolean + return LeaderboardHasPlayerItem(lb, whichPlayer) +endfunction + +//=========================================================================== +function ForceSetLeaderboardBJ takes leaderboard lb, force toForce returns nothing + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if IsPlayerInForce(indexPlayer, toForce) then + call PlayerSetLeaderboard(indexPlayer, lb) + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function CreateLeaderboardBJ takes force toForce, string label returns leaderboard + set bj_lastCreatedLeaderboard = CreateLeaderboard() + call LeaderboardSetLabel(bj_lastCreatedLeaderboard, label) + call ForceSetLeaderboardBJ(bj_lastCreatedLeaderboard, toForce) + call LeaderboardDisplay(bj_lastCreatedLeaderboard, true) + return bj_lastCreatedLeaderboard +endfunction + +//=========================================================================== +function DestroyLeaderboardBJ takes leaderboard lb returns nothing + call DestroyLeaderboard(lb) +endfunction + +//=========================================================================== +function LeaderboardDisplayBJ takes boolean show, leaderboard lb returns nothing + call LeaderboardDisplay(lb, show) +endfunction + +//=========================================================================== +function LeaderboardAddItemBJ takes player whichPlayer, leaderboard lb, string label, integer value returns nothing + if (LeaderboardHasPlayerItem(lb, whichPlayer)) then + call LeaderboardRemovePlayerItem(lb, whichPlayer) + endif + call LeaderboardAddItem(lb, label, value, whichPlayer) + call LeaderboardResizeBJ(lb) + //call LeaderboardSetSizeByItemCount(lb, LeaderboardGetItemCount(lb)) +endfunction + +//=========================================================================== +function LeaderboardRemovePlayerItemBJ takes player whichPlayer, leaderboard lb returns nothing + call LeaderboardRemovePlayerItem(lb, whichPlayer) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSortItemsBJ takes leaderboard lb, integer sortType, boolean ascending returns nothing + if (sortType == bj_SORTTYPE_SORTBYVALUE) then + call LeaderboardSortItemsByValue(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYPLAYER) then + call LeaderboardSortItemsByPlayer(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYLABEL) then + call LeaderboardSortItemsByLabel(lb, ascending) + else + // Unrecognized sort type - ignore the request. + endif +endfunction + +//=========================================================================== +function LeaderboardSortItemsByPlayerBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByPlayer(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardSortItemsByLabelBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByLabel(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardGetPlayerIndexBJ takes player whichPlayer, leaderboard lb returns integer + return LeaderboardGetPlayerIndex(lb, whichPlayer) + 1 +endfunction + +//=========================================================================== +// Returns the player who is occupying a specified position in a leaderboard. +// The position parameter is expected in the range of 1..16. +// +function LeaderboardGetIndexedPlayerBJ takes integer position, leaderboard lb returns player + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if (LeaderboardGetPlayerIndex(lb, indexPlayer) == position - 1) then + return indexPlayer + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + return Player(PLAYER_NEUTRAL_PASSIVE) +endfunction + +//=========================================================================== +function PlayerGetLeaderboardBJ takes player whichPlayer returns leaderboard + return PlayerGetLeaderboard(whichPlayer) +endfunction + +//=========================================================================== +function GetLastCreatedLeaderboard takes nothing returns leaderboard + return bj_lastCreatedLeaderboard +endfunction + +//*************************************************************************** +//* +//* Multiboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateMultiboardBJ takes integer cols, integer rows, string title returns multiboard + set bj_lastCreatedMultiboard = CreateMultiboard() + call MultiboardSetRowCount(bj_lastCreatedMultiboard, rows) + call MultiboardSetColumnCount(bj_lastCreatedMultiboard, cols) + call MultiboardSetTitleText(bj_lastCreatedMultiboard, title) + call MultiboardDisplay(bj_lastCreatedMultiboard, true) + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function DestroyMultiboardBJ takes multiboard mb returns nothing + call DestroyMultiboard(mb) +endfunction + +//=========================================================================== +function GetLastCreatedMultiboard takes nothing returns multiboard + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function MultiboardDisplayBJ takes boolean show, multiboard mb returns nothing + call MultiboardDisplay(mb, show) +endfunction + +//=========================================================================== +function MultiboardMinimizeBJ takes boolean minimize, multiboard mb returns nothing + call MultiboardMinimize(mb, minimize) +endfunction + +//=========================================================================== +function MultiboardSetTitleTextColorBJ takes multiboard mb, real red, real green, real blue, real transparency returns nothing + call MultiboardSetTitleTextColor(mb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function MultiboardAllowDisplayBJ takes boolean flag returns nothing + call MultiboardSuppressDisplay(not flag) +endfunction + +//=========================================================================== +function MultiboardSetItemStyleBJ takes multiboard mb, integer col, integer row, boolean showValue, boolean showIcon returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemStyle(mbitem, showValue, showIcon) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemValueBJ takes multiboard mb, integer col, integer row, string val returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValue(mbitem, val) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemColorBJ takes multiboard mb, integer col, integer row, real red, real green, real blue, real transparency returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValueColor(mbitem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemWidthBJ takes multiboard mb, integer col, integer row, real width returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemWidth(mbitem, width/100.0) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemIconBJ takes multiboard mb, integer col, integer row, string iconFileName returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemIcon(mbitem, iconFileName) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + + + +//*************************************************************************** +//* +//* Text Tag Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Scale the font size linearly such that size 10 equates to height 0.023. +// Screen-relative font heights are harder to grasp and than font sizes. +// +function TextTagSize2Height takes real size returns real + return size * 0.023 / 10 +endfunction + +//=========================================================================== +// Scale the speed linearly such that speed 128 equates to 0.071. +// Screen-relative speeds are hard to grasp. +// +function TextTagSpeed2Velocity takes real speed returns real + return speed * 0.071 / 128 +endfunction + +//=========================================================================== +function SetTextTagColorBJ takes texttag tt, real red, real green, real blue, real transparency returns nothing + call SetTextTagColor(tt, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function SetTextTagVelocityBJ takes texttag tt, real speed, real angle returns nothing + local real vel = TextTagSpeed2Velocity(speed) + local real xvel = vel * Cos(angle * bj_DEGTORAD) + local real yvel = vel * Sin(angle * bj_DEGTORAD) + + call SetTextTagVelocity(tt, xvel, yvel) +endfunction + +//=========================================================================== +function SetTextTagTextBJ takes texttag tt, string s, real size returns nothing + local real textHeight = TextTagSize2Height(size) + + call SetTextTagText(tt, s, textHeight) +endfunction + +//=========================================================================== +function SetTextTagPosBJ takes texttag tt, location loc, real zOffset returns nothing + call SetTextTagPos(tt, GetLocationX(loc), GetLocationY(loc), zOffset) +endfunction + +//=========================================================================== +function SetTextTagPosUnitBJ takes texttag tt, unit whichUnit, real zOffset returns nothing + call SetTextTagPosUnit(tt, whichUnit, zOffset) +endfunction + +//=========================================================================== +function SetTextTagSuspendedBJ takes texttag tt, boolean flag returns nothing + call SetTextTagSuspended(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagPermanentBJ takes texttag tt, boolean flag returns nothing + call SetTextTagPermanent(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagAgeBJ takes texttag tt, real age returns nothing + call SetTextTagAge(tt, age) +endfunction + +//=========================================================================== +function SetTextTagLifespanBJ takes texttag tt, real lifespan returns nothing + call SetTextTagLifespan(tt, lifespan) +endfunction + +//=========================================================================== +function SetTextTagFadepointBJ takes texttag tt, real fadepoint returns nothing + call SetTextTagFadepoint(tt, fadepoint) +endfunction + +//=========================================================================== +function CreateTextTagLocBJ takes string s, location loc, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosBJ(bj_lastCreatedTextTag, loc, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function CreateTextTagUnitBJ takes string s, unit whichUnit, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosUnitBJ(bj_lastCreatedTextTag, whichUnit, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function DestroyTextTagBJ takes texttag tt returns nothing + call DestroyTextTag(tt) +endfunction + +//=========================================================================== +function ShowTextTagForceBJ takes boolean show, texttag tt, force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetTextTagVisibility(tt, show) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTextTag takes nothing returns texttag + return bj_lastCreatedTextTag +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PauseGameOn takes nothing returns nothing + call PauseGame(true) +endfunction + +//=========================================================================== +function PauseGameOff takes nothing returns nothing + call PauseGame(false) +endfunction + +//=========================================================================== +function SetUserControlForceOn takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(true) + endif +endfunction + +//=========================================================================== +function SetUserControlForceOff takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(false) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOn takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, fadeDuration) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOff takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(false, fadeDuration) + endif +endfunction + +//=========================================================================== +function PingMinimapForForce takes force whichForce, real x, real y, real duration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForce takes force whichForce, location loc, real duration returns nothing + call PingMinimapForForce(whichForce, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + call PingMinimapForPlayer(whichPlayer, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForForceEx takes force whichForce, real x, real y, real duration, integer style, real red, real green, real blue returns nothing + local integer red255 = PercentTo255(red) + local integer green255 = PercentTo255(green) + local integer blue255 = PercentTo255(blue) + + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Prevent 100% red simple and flashy pings, as they become "attack" pings. + if (red255 == 255) and (green255 == 0) and (blue255 == 0) then + set red255 = 254 + endif + + if (style == bj_MINIMAPPINGSTYLE_SIMPLE) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, false) + elseif (style == bj_MINIMAPPINGSTYLE_FLASHY) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, true) + elseif (style == bj_MINIMAPPINGSTYLE_ATTACK) then + call PingMinimapEx(x, y, duration, 255, 0, 0, false) + else + // Unrecognized ping style - ignore the request. + endif + + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForceEx takes force whichForce, location loc, real duration, integer style, real red, real green, real blue returns nothing + call PingMinimapForForceEx(whichForce, GetLocationX(loc), GetLocationY(loc), duration, style, red, green, blue) +endfunction + +//=========================================================================== +function EnableWorldFogBoundaryBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableWorldFogBoundary(enable) + endif +endfunction + +//=========================================================================== +function EnableOcclusionBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableOcclusion(enable) + endif +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Transmission Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// If cancelled, stop the sound and end the cinematic scene. +// +function CancelCineSceneBJ takes nothing returns nothing + call StopSoundBJ(bj_cineSceneLastSound, true) + call EndCinematicScene() +endfunction + +//=========================================================================== +// Init a trigger to listen for END_CINEMATIC events and respond to them if +// a cinematic scene is in progress. For performance reasons, this should +// only be called once a cinematic scene has been started, so that maps +// lacking such scenes do not bother to register for these events. +// +function TryInitCinematicBehaviorBJ takes nothing returns nothing + local integer index + + if (bj_cineSceneBeingSkipped == null) then + set bj_cineSceneBeingSkipped = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerEvent(bj_cineSceneBeingSkipped, Player(index), EVENT_PLAYER_END_CINEMATIC) + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + call TriggerAddAction(bj_cineSceneBeingSkipped, function CancelCineSceneBJ) + endif +endfunction + +//=========================================================================== +function SetCinematicSceneBJ takes sound soundHandle, integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing + set bj_cineSceneLastSound = soundHandle + call PlaySoundBJ(soundHandle) + call SetCinematicScene(portraitUnitId, color, speakerTitle, text, sceneDuration, voiceoverDuration) +endfunction + +//=========================================================================== +function GetTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns real + local real duration + + if (timeType == bj_TIMETYPE_ADD) then + set duration = GetSoundDurationBJ(soundHandle) + timeVal + elseif (timeType == bj_TIMETYPE_SET) then + set duration = timeVal + elseif (timeType == bj_TIMETYPE_SUB) then + set duration = GetSoundDurationBJ(soundHandle) - timeVal + else + // Unrecognized timeType - ignore timeVal. + set duration = GetSoundDurationBJ(soundHandle) + endif + + // Make sure we have a non-negative duration. + if (duration < 0) then + set duration = 0 + endif + return duration +endfunction + +//=========================================================================== +function WaitTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns nothing + if (timeType == bj_TIMETYPE_SET) then + // If we have a static duration wait, just perform the wait. + call TriggerSleepAction(timeVal) + + elseif (soundHandle == null) then + // If the sound does not exist, perform a default length wait. + call TriggerSleepAction(bj_NOTHING_SOUND_DURATION) + + elseif (timeType == bj_TIMETYPE_SUB) then + // If the transmission is cutting off the sound, wait for the sound + // to be mostly finished. + call WaitForSoundBJ(soundHandle, timeVal) + + elseif (timeType == bj_TIMETYPE_ADD) then + // If the transmission is extending beyond the sound's length, wait + // for it to finish, and then wait the additional time. + call WaitForSoundBJ(soundHandle, 0) + call TriggerSleepAction(timeVal) + + else + // Unrecognized timeType - ignore. + endif +endfunction + +//=========================================================================== +function DoTransmissionBasicsXYBJ takes integer unitId, playercolor color, real x, real y, sound soundHandle, string unitName, string message, real duration returns nothing + call SetCinematicSceneBJ(soundHandle, unitId, color, unitName, message, duration + bj_TRANSMISSION_PORT_HANGTIME, duration) + + if (unitId != 0) then + call PingMinimap(x, y, bj_TRANSMISSION_PING_TIME) + //call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +// Display a text message to a Player Group with an accompanying sound, +// portrait, speech indicator, and all that good stuff. +// - Query duration of sound +// - Play sound +// - Display text message for duration +// - Display animating portrait for duration +// - Display a speech indicator for the unit +// - Ping the minimap +// +function TransmissionFromUnitWithNameBJ takes force toForce, unit whichUnit, string unitName, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (whichUnit == null) then + // If the unit reference is invalid, send the transmission from the center of the map with no portrait. + call DoTransmissionBasicsXYBJ(0, PLAYER_COLOR_RED, 0, 0, soundHandle, unitName, message, bj_lastTransmissionDuration) + else + call DoTransmissionBasicsXYBJ(GetUnitTypeId(whichUnit), GetPlayerColor(GetOwningPlayer(whichUnit)), GetUnitX(whichUnit), GetUnitY(whichUnit), soundHandle, unitName, message, bj_lastTransmissionDuration) + if (not IsUnitHidden(whichUnit)) then + call UnitAddIndicator(whichUnit, bj_TRANSMISSION_IND_RED, bj_TRANSMISSION_IND_BLUE, bj_TRANSMISSION_IND_GREEN, bj_TRANSMISSION_IND_ALPHA) + endif + endif + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +// This operates like TransmissionFromUnitWithNameBJ, but for a unit type +// rather than a unit instance. As such, no speech indicator is employed. +// +function TransmissionFromUnitTypeWithNameBJ takes force toForce, player fromPlayer, integer unitId, string unitName, location loc, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + call DoTransmissionBasicsXYBJ(unitId, GetPlayerColor(fromPlayer), GetLocationX(loc), GetLocationY(loc), soundHandle, unitName, message, bj_lastTransmissionDuration) + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +function GetLastTransmissionDurationBJ takes nothing returns real + return bj_lastTransmissionDuration +endfunction + +//=========================================================================== +function ForceCinematicSubtitlesBJ takes boolean flag returns nothing + call ForceCinematicSubtitles(flag) +endfunction + + +//*************************************************************************** +//* +//* Cinematic Mode Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Makes many common UI settings changes at once, for use when beginning and +// ending cinematic sequences. Note that some affects apply to all players, +// such as game speed. This is unavoidable. +// - Clear the screen of text messages +// - Hide interface UI (letterbox mode) +// - Hide game messages (ally under attack, etc.) +// - Disable user control +// - Disable occlusion +// - Set game speed (for all players) +// - Lock game speed (for all players) +// - Disable black mask (for all players) +// - Disable fog of war (for all players) +// - Disable world boundary fog (for all players) +// - Dim non-speech sound channels +// - End any outstanding music themes +// - Fix the random seed to a set value +// - Reset the camera smoothing factor +// +function CinematicModeExBJ takes boolean cineMode, force forForce, real interfaceFadeTime returns nothing + // If the game hasn't started yet, perform interface fades immediately + if (not bj_gameStarted) then + set interfaceFadeTime = 0 + endif + + if (cineMode) then + // Save the UI state so that we can restore it later. + if (not bj_cineModeAlreadyIn) then + set bj_cineModeAlreadyIn = true + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + set bj_cineModePriorDawnDusk = IsDawnDuskEnabled() + set bj_cineModeSavedSeed = GetRandomInt(0, 1000000) + endif + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + call ShowInterface(false, interfaceFadeTime) + call EnableUserControl(false) + call EnableOcclusion(false) + call SetCineModeVolumeGroupsBJ() + endif + + // Perform global changes + call SetGameSpeed(bj_CINEMODE_GAMESPEED) + call SetMapFlag(MAP_LOCK_SPEED, true) + call FogMaskEnable(false) + call FogEnable(false) + call EnableWorldFogBoundary(false) + call EnableDawnDusk(false) + + // Use a fixed random seed, so that cinematics play consistently. + call SetRandomSeed(0) + else + set bj_cineModeAlreadyIn = false + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, interfaceFadeTime) + call EnableUserControl(true) + call EnableOcclusion(true) + call VolumeGroupReset() + call EndThematicMusic() + call CameraResetSmoothingFactorBJ() + endif + + // Perform global changes + call SetMapFlag(MAP_LOCK_SPEED, false) + call SetGameSpeed(bj_cineModePriorSpeed) + call FogMaskEnable(bj_cineModePriorMaskSetting) + call FogEnable(bj_cineModePriorFogSetting) + call EnableWorldFogBoundary(true) + call EnableDawnDusk(bj_cineModePriorDawnDusk) + call SetRandomSeed(bj_cineModeSavedSeed) + endif +endfunction + +//=========================================================================== +function CinematicModeBJ takes boolean cineMode, force forForce returns nothing + call CinematicModeExBJ(cineMode, forForce, bj_CINEMODE_INTERFACEFADE) +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Filter Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayCineFilterBJ takes boolean flag returns nothing + call DisplayCineFilter(flag) +endfunction + +//=========================================================================== +function CinematicFadeCommonBJ takes real red, real green, real blue, real duration, string tex, real startTrans, real endTrans returns nothing + if (duration == 0) then + // If the fade is instant, use the same starting and ending values, + // so that we effectively do a set rather than a fade. + set startTrans = endTrans + endif + call EnableUserUI(false) + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(BLEND_MODE_BLEND) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-startTrans)) + call SetCineFilterEndColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-endTrans)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeFinishTimer) + set bj_cineFadeFinishTimer = null + call DisplayCineFilter(false) + call EnableUserUI(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeAfterBJ takes real duration returns nothing + // Create a timer to end the cinematic fade. + set bj_cineFadeFinishTimer = CreateTimer() + call TimerStart(bj_cineFadeFinishTimer, duration, false, function FinishCinematicFadeBJ) +endfunction + +//=========================================================================== +function ContinueCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeContinueTimer) + set bj_cineFadeContinueTimer = null + call CinematicFadeCommonBJ(bj_cineFadeContinueRed, bj_cineFadeContinueGreen, bj_cineFadeContinueBlue, bj_cineFadeContinueDuration, bj_cineFadeContinueTex, bj_cineFadeContinueTrans, 100) +endfunction + +//=========================================================================== +function ContinueCinematicFadeAfterBJ takes real duration, real red, real green, real blue, real trans, string tex returns nothing + set bj_cineFadeContinueRed = red + set bj_cineFadeContinueGreen = green + set bj_cineFadeContinueBlue = blue + set bj_cineFadeContinueTrans = trans + set bj_cineFadeContinueDuration = duration + set bj_cineFadeContinueTex = tex + + // Create a timer to continue the cinematic fade. + set bj_cineFadeContinueTimer = CreateTimer() + call TimerStart(bj_cineFadeContinueTimer, duration, false, function ContinueCinematicFadeBJ) +endfunction + +//=========================================================================== +function AbortCinematicFadeBJ takes nothing returns nothing + if (bj_cineFadeContinueTimer != null) then + call DestroyTimer(bj_cineFadeContinueTimer) + endif + + if (bj_cineFadeFinishTimer != null) then + call DestroyTimer(bj_cineFadeFinishTimer) + endif +endfunction + +//=========================================================================== +function CinematicFadeBJ takes integer fadetype, real duration, string tex, real red, real green, real blue, real trans returns nothing + if (fadetype == bj_CINEFADETYPE_FADEOUT) then + // Fade out to the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, 100, trans) + elseif (fadetype == bj_CINEFADETYPE_FADEIN) then + // Fade in from the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, trans, 100) + call FinishCinematicFadeAfterBJ(duration) + elseif (fadetype == bj_CINEFADETYPE_FADEOUTIN) then + // Fade out to the requested color, and then fade back in from it. + if (duration > 0) then + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration * 0.5, tex, 100, trans) + call ContinueCinematicFadeAfterBJ(duration * 0.5, red, green, blue, trans, tex) + call FinishCinematicFadeAfterBJ(duration) + endif + else + // Unrecognized fadetype - ignore the request. + endif +endfunction + +//=========================================================================== +function CinematicFilterGenericBJ takes real duration, blendmode bmode, string tex, real red0, real green0, real blue0, real trans0, real red1, real green1, real blue1, real trans1 returns nothing + call AbortCinematicFadeBJ() + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(bmode) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red0), PercentTo255(green0), PercentTo255(blue0), PercentTo255(100-trans0)) + call SetCineFilterEndColor(PercentTo255(red1), PercentTo255(green1), PercentTo255(blue1), PercentTo255(100-trans1)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + + + +//*************************************************************************** +//* +//* Rescuable Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Rescues a unit for a player. This performs the default rescue behavior, +// including a rescue sound, flashing selection circle, ownership change, +// and optionally a unit color change. +// +function RescueUnitBJ takes unit whichUnit, player rescuer, boolean changeColor returns nothing + if IsUnitDeadBJ(whichUnit) or (GetOwningPlayer(whichUnit) == rescuer) then + return + endif + + call StartSound(bj_rescueSound) + call SetUnitOwner(whichUnit, rescuer, changeColor) + call UnitAddIndicator(whichUnit, 0, 255, 0, 255) + call PingMinimapForPlayer(rescuer, GetUnitX(whichUnit), GetUnitY(whichUnit), bj_RESCUE_PING_TIME) +endfunction + +//=========================================================================== +function TriggerActionUnitRescuedBJ takes nothing returns nothing + local unit theUnit = GetTriggerUnit() + + if IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorBldg) + else + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorUnit) + endif +endfunction + +//=========================================================================== +// Attempt to init triggers for default rescue behavior. For performance +// reasons, this should only be attempted if a player is set to Rescuable, +// or if a specific unit is thus flagged. +// +function TryInitRescuableTriggersBJ takes nothing returns nothing + local integer index + + if (bj_rescueUnitBehavior == null) then + set bj_rescueUnitBehavior = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(bj_rescueUnitBehavior, Player(index), EVENT_PLAYER_UNIT_RESCUED, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call TriggerAddAction(bj_rescueUnitBehavior, function TriggerActionUnitRescuedBJ) + endif +endfunction + +//=========================================================================== +// Determines whether or not rescued units automatically change color upon +// being rescued. +// +function SetRescueUnitColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorUnit = changeColor +endfunction + +//=========================================================================== +// Determines whether or not rescued buildings automatically change color +// upon being rescued. +// +function SetRescueBuildingColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorBldg = changeColor +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJEnum takes nothing returns nothing + call TryInitRescuableTriggersBJ() + call SetUnitRescuable(bj_makeUnitRescuableUnit, GetEnumPlayer(), bj_makeUnitRescuableFlag) +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJ takes unit whichUnit, boolean isRescuable, force whichForce returns nothing + // Flag the unit as rescuable/unrescuable for the appropriate players. + set bj_makeUnitRescuableUnit = whichUnit + set bj_makeUnitRescuableFlag = isRescuable + call ForForce(whichForce, function MakeUnitRescuableToForceBJEnum) +endfunction + +//=========================================================================== +function InitRescuableBehaviorBJ takes nothing returns nothing + local integer index + + set index = 0 + loop + // If at least one player slot is "Rescuable"-controlled, init the + // rescue behavior triggers. + if (GetPlayerController(Player(index)) == MAP_CONTROL_RESCUABLE) then + call TryInitRescuableTriggersBJ() + return + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Research and Upgrade Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerTechResearchedSwap takes integer techid, integer levels, player whichPlayer returns nothing + call SetPlayerTechResearched(whichPlayer, techid, levels) +endfunction + +//=========================================================================== +function SetPlayerTechMaxAllowedSwap takes integer techid, integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, techid, maximum) +endfunction + +//=========================================================================== +function SetPlayerMaxHeroesAllowed takes integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, 'HERO', maximum) +endfunction + +//=========================================================================== +function GetPlayerTechCountSimple takes integer techid, player whichPlayer returns integer + return GetPlayerTechCount(whichPlayer, techid, true) +endfunction + +//=========================================================================== +function GetPlayerTechMaxAllowedSwap takes integer techid, player whichPlayer returns integer + return GetPlayerTechMaxAllowed(whichPlayer, techid) +endfunction + +//=========================================================================== +function SetPlayerAbilityAvailableBJ takes boolean avail, integer abilid, player whichPlayer returns nothing + call SetPlayerAbilityAvailable(whichPlayer, abilid, avail) +endfunction + + + +//*************************************************************************** +//* +//* Campaign Utility Functions +//* +//*************************************************************************** + +function SetCampaignMenuRaceBJ takes integer campaignNumber returns nothing + if (campaignNumber == bj_CAMPAIGN_INDEX_T) then + call SetCampaignMenuRace(RACE_OTHER) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetCampaignMenuRace(RACE_HUMAN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_U) then + call SetCampaignMenuRace(RACE_UNDEAD) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_O) then + call SetCampaignMenuRace(RACE_ORC) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_N) then + call SetCampaignMenuRace(RACE_NIGHTELF) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XH) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XU) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XO) + else + // Unrecognized campaign - ignore the request + endif +endfunction + +//=========================================================================== +// Converts a single campaign mission designation into campaign and mission +// numbers. The 1000's digit is considered the campaign index, and the 1's +// digit is considered the mission index within that campaign. This is done +// so that the trigger for this can use a single drop-down to list all of +// the campaign missions. +// +function SetMissionAvailableBJ takes boolean available, integer missionIndex returns nothing + local integer campaignNumber = missionIndex / 1000 + local integer missionNumber = missionIndex - campaignNumber * 1000 + + call SetMissionAvailable(campaignNumber, missionNumber, available) +endfunction + +//=========================================================================== +function SetCampaignAvailableBJ takes boolean available, integer campaignNumber returns nothing + local integer campaignOffset + + if (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetTutorialCleared(true) + endif + + if (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XN + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XH + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XU + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XO + else + set campaignOffset = campaignNumber + endif + + call SetCampaignAvailable(campaignOffset, available) + call SetCampaignMenuRaceBJ(campaignNumber) + call ForceCampaignSelectScreen() +endfunction + +//=========================================================================== +function SetCinematicAvailableBJ takes boolean available, integer cinematicIndex returns nothing + if ( cinematicIndex == bj_CINEMATICINDEX_TOP ) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_T, available ) + call PlayCinematic( "TutorialOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_OFFSET_XN, available ) + call PlayCinematic( "IntroX" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_OFFSET_XU, available ) + call PlayCinematic( "OutroX" ) + else + // Unrecognized cinematic - ignore the request. + endif +endfunction + +//=========================================================================== +function InitGameCacheBJ takes string campaignFile returns gamecache + set bj_lastCreatedGameCache = InitGameCache(campaignFile) + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function SaveGameCacheBJ takes gamecache cache returns boolean + return SaveGameCache(cache) +endfunction + +//=========================================================================== +function GetLastCreatedGameCacheBJ takes nothing returns gamecache + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function InitHashtableBJ takes nothing returns hashtable + set bj_lastCreatedHashtable = InitHashtable() + return bj_lastCreatedHashtable +endfunction + +//=========================================================================== +function GetLastCreatedHashtableBJ takes nothing returns hashtable + return bj_lastCreatedHashtable +endfunction + +//=========================================================================== +function StoreRealBJ takes real value, string key, string missionKey, gamecache cache returns nothing + call StoreReal(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreIntegerBJ takes integer value, string key, string missionKey, gamecache cache returns nothing + call StoreInteger(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreBooleanBJ takes boolean value, string key, string missionKey, gamecache cache returns nothing + call StoreBoolean(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreStringBJ takes string value, string key, string missionKey, gamecache cache returns boolean + return StoreString(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreUnitBJ takes unit whichUnit, string key, string missionKey, gamecache cache returns boolean + return StoreUnit(cache, missionKey, key, whichUnit) +endfunction + +//=========================================================================== +function SaveRealBJ takes real value, integer key, integer missionKey, hashtable table returns nothing + call SaveReal(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveIntegerBJ takes integer value, integer key, integer missionKey, hashtable table returns nothing + call SaveInteger(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveBooleanBJ takes boolean value, integer key, integer missionKey, hashtable table returns nothing + call SaveBoolean(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveStringBJ takes string value, integer key, integer missionKey, hashtable table returns boolean + return SaveStr(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SavePlayerHandleBJ takes player whichPlayer, integer key, integer missionKey, hashtable table returns boolean + return SavePlayerHandle(table, missionKey, key, whichPlayer) +endfunction + +//=========================================================================== +function SaveWidgetHandleBJ takes widget whichWidget, integer key, integer missionKey, hashtable table returns boolean + return SaveWidgetHandle(table, missionKey, key, whichWidget) +endfunction + +//=========================================================================== +function SaveDestructableHandleBJ takes destructable whichDestructable, integer key, integer missionKey, hashtable table returns boolean + return SaveDestructableHandle(table, missionKey, key, whichDestructable) +endfunction + +//=========================================================================== +function SaveItemHandleBJ takes item whichItem, integer key, integer missionKey, hashtable table returns boolean + return SaveItemHandle(table, missionKey, key, whichItem) +endfunction + +//=========================================================================== +function SaveUnitHandleBJ takes unit whichUnit, integer key, integer missionKey, hashtable table returns boolean + return SaveUnitHandle(table, missionKey, key, whichUnit) +endfunction + +//=========================================================================== +function SaveAbilityHandleBJ takes ability whichAbility, integer key, integer missionKey, hashtable table returns boolean + return SaveAbilityHandle(table, missionKey, key, whichAbility) +endfunction + +//=========================================================================== +function SaveTimerHandleBJ takes timer whichTimer, integer key, integer missionKey, hashtable table returns boolean + return SaveTimerHandle(table, missionKey, key, whichTimer) +endfunction + +//=========================================================================== +function SaveTriggerHandleBJ takes trigger whichTrigger, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerHandle(table, missionKey, key, whichTrigger) +endfunction + +//=========================================================================== +function SaveTriggerConditionHandleBJ takes triggercondition whichTriggercondition, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerConditionHandle(table, missionKey, key, whichTriggercondition) +endfunction + +//=========================================================================== +function SaveTriggerActionHandleBJ takes triggeraction whichTriggeraction, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerActionHandle(table, missionKey, key, whichTriggeraction) +endfunction + +//=========================================================================== +function SaveTriggerEventHandleBJ takes event whichEvent, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerEventHandle(table, missionKey, key, whichEvent) +endfunction + +//=========================================================================== +function SaveForceHandleBJ takes force whichForce, integer key, integer missionKey, hashtable table returns boolean + return SaveForceHandle(table, missionKey, key, whichForce) +endfunction + +//=========================================================================== +function SaveGroupHandleBJ takes group whichGroup, integer key, integer missionKey, hashtable table returns boolean + return SaveGroupHandle(table, missionKey, key, whichGroup) +endfunction + +//=========================================================================== +function SaveLocationHandleBJ takes location whichLocation, integer key, integer missionKey, hashtable table returns boolean + return SaveLocationHandle(table, missionKey, key, whichLocation) +endfunction + +//=========================================================================== +function SaveRectHandleBJ takes rect whichRect, integer key, integer missionKey, hashtable table returns boolean + return SaveRectHandle(table, missionKey, key, whichRect) +endfunction + +//=========================================================================== +function SaveBooleanExprHandleBJ takes boolexpr whichBoolexpr, integer key, integer missionKey, hashtable table returns boolean + return SaveBooleanExprHandle(table, missionKey, key, whichBoolexpr) +endfunction + +//=========================================================================== +function SaveSoundHandleBJ takes sound whichSound, integer key, integer missionKey, hashtable table returns boolean + return SaveSoundHandle(table, missionKey, key, whichSound) +endfunction + +//=========================================================================== +function SaveEffectHandleBJ takes effect whichEffect, integer key, integer missionKey, hashtable table returns boolean + return SaveEffectHandle(table, missionKey, key, whichEffect) +endfunction + +//=========================================================================== +function SaveUnitPoolHandleBJ takes unitpool whichUnitpool, integer key, integer missionKey, hashtable table returns boolean + return SaveUnitPoolHandle(table, missionKey, key, whichUnitpool) +endfunction + +//=========================================================================== +function SaveItemPoolHandleBJ takes itempool whichItempool, integer key, integer missionKey, hashtable table returns boolean + return SaveItemPoolHandle(table, missionKey, key, whichItempool) +endfunction + +//=========================================================================== +function SaveQuestHandleBJ takes quest whichQuest, integer key, integer missionKey, hashtable table returns boolean + return SaveQuestHandle(table, missionKey, key, whichQuest) +endfunction + +//=========================================================================== +function SaveQuestItemHandleBJ takes questitem whichQuestitem, integer key, integer missionKey, hashtable table returns boolean + return SaveQuestItemHandle(table, missionKey, key, whichQuestitem) +endfunction + +//=========================================================================== +function SaveDefeatConditionHandleBJ takes defeatcondition whichDefeatcondition, integer key, integer missionKey, hashtable table returns boolean + return SaveDefeatConditionHandle(table, missionKey, key, whichDefeatcondition) +endfunction + +//=========================================================================== +function SaveTimerDialogHandleBJ takes timerdialog whichTimerdialog, integer key, integer missionKey, hashtable table returns boolean + return SaveTimerDialogHandle(table, missionKey, key, whichTimerdialog) +endfunction + +//=========================================================================== +function SaveLeaderboardHandleBJ takes leaderboard whichLeaderboard, integer key, integer missionKey, hashtable table returns boolean + return SaveLeaderboardHandle(table, missionKey, key, whichLeaderboard) +endfunction + +//=========================================================================== +function SaveMultiboardHandleBJ takes multiboard whichMultiboard, integer key, integer missionKey, hashtable table returns boolean + return SaveMultiboardHandle(table, missionKey, key, whichMultiboard) +endfunction + +//=========================================================================== +function SaveMultiboardItemHandleBJ takes multiboarditem whichMultiboarditem, integer key, integer missionKey, hashtable table returns boolean + return SaveMultiboardItemHandle(table, missionKey, key, whichMultiboarditem) +endfunction + +//=========================================================================== +function SaveTrackableHandleBJ takes trackable whichTrackable, integer key, integer missionKey, hashtable table returns boolean + return SaveTrackableHandle(table, missionKey, key, whichTrackable) +endfunction + +//=========================================================================== +function SaveDialogHandleBJ takes dialog whichDialog, integer key, integer missionKey, hashtable table returns boolean + return SaveDialogHandle(table, missionKey, key, whichDialog) +endfunction + +//=========================================================================== +function SaveButtonHandleBJ takes button whichButton, integer key, integer missionKey, hashtable table returns boolean + return SaveButtonHandle(table, missionKey, key, whichButton) +endfunction + +//=========================================================================== +function SaveTextTagHandleBJ takes texttag whichTexttag, integer key, integer missionKey, hashtable table returns boolean + return SaveTextTagHandle(table, missionKey, key, whichTexttag) +endfunction + +//=========================================================================== +function SaveLightningHandleBJ takes lightning whichLightning, integer key, integer missionKey, hashtable table returns boolean + return SaveLightningHandle(table, missionKey, key, whichLightning) +endfunction + +//=========================================================================== +function SaveImageHandleBJ takes image whichImage, integer key, integer missionKey, hashtable table returns boolean + return SaveImageHandle(table, missionKey, key, whichImage) +endfunction + +//=========================================================================== +function SaveUbersplatHandleBJ takes ubersplat whichUbersplat, integer key, integer missionKey, hashtable table returns boolean + return SaveUbersplatHandle(table, missionKey, key, whichUbersplat) +endfunction + +//=========================================================================== +function SaveRegionHandleBJ takes region whichRegion, integer key, integer missionKey, hashtable table returns boolean + return SaveRegionHandle(table, missionKey, key, whichRegion) +endfunction + +//=========================================================================== +function SaveFogStateHandleBJ takes fogstate whichFogState, integer key, integer missionKey, hashtable table returns boolean + return SaveFogStateHandle(table, missionKey, key, whichFogState) +endfunction + +//=========================================================================== +function SaveFogModifierHandleBJ takes fogmodifier whichFogModifier, integer key, integer missionKey, hashtable table returns boolean + return SaveFogModifierHandle(table, missionKey, key, whichFogModifier) +endfunction + +//=========================================================================== +function SaveAgentHandleBJ takes agent whichAgent, integer key, integer missionKey, hashtable table returns boolean + return SaveAgentHandle(table, missionKey, key, whichAgent) +endfunction + +//=========================================================================== +function SaveHashtableHandleBJ takes hashtable whichHashtable, integer key, integer missionKey, hashtable table returns boolean + return SaveHashtableHandle(table, missionKey, key, whichHashtable) +endfunction + +//=========================================================================== +function GetStoredRealBJ takes string key, string missionKey, gamecache cache returns real + //call SyncStoredReal(cache, missionKey, key) + return GetStoredReal(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredIntegerBJ takes string key, string missionKey, gamecache cache returns integer + //call SyncStoredInteger(cache, missionKey, key) + return GetStoredInteger(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredBooleanBJ takes string key, string missionKey, gamecache cache returns boolean + //call SyncStoredBoolean(cache, missionKey, key) + return GetStoredBoolean(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredStringBJ takes string key, string missionKey, gamecache cache returns string + local string s + + //call SyncStoredString(cache, missionKey, key) + set s = GetStoredString(cache, missionKey, key) + if (s == null) then + return "" + else + return s + endif +endfunction + +//=========================================================================== +function LoadRealBJ takes integer key, integer missionKey, hashtable table returns real + //call SyncStoredReal(table, missionKey, key) + return LoadReal(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadIntegerBJ takes integer key, integer missionKey, hashtable table returns integer + //call SyncStoredInteger(table, missionKey, key) + return LoadInteger(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadBooleanBJ takes integer key, integer missionKey, hashtable table returns boolean + //call SyncStoredBoolean(table, missionKey, key) + return LoadBoolean(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadStringBJ takes integer key, integer missionKey, hashtable table returns string + local string s + + //call SyncStoredString(table, missionKey, key) + set s = LoadStr(table, missionKey, key) + if (s == null) then + return "" + else + return s + endif +endfunction + +//=========================================================================== +function LoadPlayerHandleBJ takes integer key, integer missionKey, hashtable table returns player + return LoadPlayerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadWidgetHandleBJ takes integer key, integer missionKey, hashtable table returns widget + return LoadWidgetHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDestructableHandleBJ takes integer key, integer missionKey, hashtable table returns destructable + return LoadDestructableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadItemHandleBJ takes integer key, integer missionKey, hashtable table returns item + return LoadItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUnitHandleBJ takes integer key, integer missionKey, hashtable table returns unit + return LoadUnitHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadAbilityHandleBJ takes integer key, integer missionKey, hashtable table returns ability + return LoadAbilityHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTimerHandleBJ takes integer key, integer missionKey, hashtable table returns timer + return LoadTimerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerHandleBJ takes integer key, integer missionKey, hashtable table returns trigger + return LoadTriggerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerConditionHandleBJ takes integer key, integer missionKey, hashtable table returns triggercondition + return LoadTriggerConditionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerActionHandleBJ takes integer key, integer missionKey, hashtable table returns triggeraction + return LoadTriggerActionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerEventHandleBJ takes integer key, integer missionKey, hashtable table returns event + return LoadTriggerEventHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadForceHandleBJ takes integer key, integer missionKey, hashtable table returns force + return LoadForceHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadGroupHandleBJ takes integer key, integer missionKey, hashtable table returns group + return LoadGroupHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLocationHandleBJ takes integer key, integer missionKey, hashtable table returns location + return LoadLocationHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadRectHandleBJ takes integer key, integer missionKey, hashtable table returns rect + return LoadRectHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadBooleanExprHandleBJ takes integer key, integer missionKey, hashtable table returns boolexpr + return LoadBooleanExprHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadSoundHandleBJ takes integer key, integer missionKey, hashtable table returns sound + return LoadSoundHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadEffectHandleBJ takes integer key, integer missionKey, hashtable table returns effect + return LoadEffectHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUnitPoolHandleBJ takes integer key, integer missionKey, hashtable table returns unitpool + return LoadUnitPoolHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadItemPoolHandleBJ takes integer key, integer missionKey, hashtable table returns itempool + return LoadItemPoolHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadQuestHandleBJ takes integer key, integer missionKey, hashtable table returns quest + return LoadQuestHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadQuestItemHandleBJ takes integer key, integer missionKey, hashtable table returns questitem + return LoadQuestItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDefeatConditionHandleBJ takes integer key, integer missionKey, hashtable table returns defeatcondition + return LoadDefeatConditionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTimerDialogHandleBJ takes integer key, integer missionKey, hashtable table returns timerdialog + return LoadTimerDialogHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLeaderboardHandleBJ takes integer key, integer missionKey, hashtable table returns leaderboard + return LoadLeaderboardHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadMultiboardHandleBJ takes integer key, integer missionKey, hashtable table returns multiboard + return LoadMultiboardHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadMultiboardItemHandleBJ takes integer key, integer missionKey, hashtable table returns multiboarditem + return LoadMultiboardItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTrackableHandleBJ takes integer key, integer missionKey, hashtable table returns trackable + return LoadTrackableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDialogHandleBJ takes integer key, integer missionKey, hashtable table returns dialog + return LoadDialogHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadButtonHandleBJ takes integer key, integer missionKey, hashtable table returns button + return LoadButtonHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTextTagHandleBJ takes integer key, integer missionKey, hashtable table returns texttag + return LoadTextTagHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLightningHandleBJ takes integer key, integer missionKey, hashtable table returns lightning + return LoadLightningHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadImageHandleBJ takes integer key, integer missionKey, hashtable table returns image + return LoadImageHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUbersplatHandleBJ takes integer key, integer missionKey, hashtable table returns ubersplat + return LoadUbersplatHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadRegionHandleBJ takes integer key, integer missionKey, hashtable table returns region + return LoadRegionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadFogStateHandleBJ takes integer key, integer missionKey, hashtable table returns fogstate + return LoadFogStateHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadFogModifierHandleBJ takes integer key, integer missionKey, hashtable table returns fogmodifier + return LoadFogModifierHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadHashtableHandleBJ takes integer key, integer missionKey, hashtable table returns hashtable + return LoadHashtableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function RestoreUnitLocFacingAngleBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, real facing returns unit + //call SyncStoredUnit(cache, missionKey, key) + set bj_lastLoadedUnit = RestoreUnit(cache, missionKey, key, forWhichPlayer, GetLocationX(loc), GetLocationY(loc), facing) + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function RestoreUnitLocFacingPointBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, location lookAt returns unit + //call SyncStoredUnit(cache, missionKey, key) + return RestoreUnitLocFacingAngleBJ(key, missionKey, cache, forWhichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastRestoredUnitBJ takes nothing returns unit + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function FlushGameCacheBJ takes gamecache cache returns nothing + call FlushGameCache(cache) +endfunction + +//=========================================================================== +function FlushStoredMissionBJ takes string missionKey, gamecache cache returns nothing + call FlushStoredMission(cache, missionKey) +endfunction + +//=========================================================================== +function FlushParentHashtableBJ takes hashtable table returns nothing + call FlushParentHashtable(table) +endfunction + +//=========================================================================== +function FlushChildHashtableBJ takes integer missionKey, hashtable table returns nothing + call FlushChildHashtable(table, missionKey) +endfunction + +//=========================================================================== +function HaveStoredValue takes string key, integer valueType, string missionKey, gamecache cache returns boolean + if (valueType == bj_GAMECACHE_BOOLEAN) then + return HaveStoredBoolean(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_INTEGER) then + return HaveStoredInteger(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_REAL) then + return HaveStoredReal(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_UNIT) then + return HaveStoredUnit(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_STRING) then + return HaveStoredString(cache, missionKey, key) + else + // Unrecognized value type - ignore the request. + return false + endif +endfunction + +//=========================================================================== +function HaveSavedValue takes integer key, integer valueType, integer missionKey, hashtable table returns boolean + if (valueType == bj_HASHTABLE_BOOLEAN) then + return HaveSavedBoolean(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_INTEGER) then + return HaveSavedInteger(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_REAL) then + return HaveSavedReal(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_STRING) then + return HaveSavedString(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_HANDLE) then + return HaveSavedHandle(table, missionKey, key) + else + // Unrecognized value type - ignore the request. + return false + endif +endfunction + +//=========================================================================== +function ShowCustomCampaignButton takes boolean show, integer whichButton returns nothing + call SetCustomCampaignButtonVisible(whichButton - 1, show) +endfunction + +//=========================================================================== +function IsCustomCampaignButtonVisibile takes integer whichButton returns boolean + return GetCustomCampaignButtonVisible(whichButton - 1) +endfunction + +//=========================================================================== +function LoadGameBJ takes string loadFileName, boolean doScoreScreen returns nothing + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndChangeLevelBJ takes string saveFileName, string newLevel, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call ChangeLevel(newLevel, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndLoadGameBJ takes string saveFileName, string loadFileName, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function RenameSaveDirectoryBJ takes string sourceDirName, string destDirName returns boolean + return RenameSaveDirectory(sourceDirName, destDirName) +endfunction + +//=========================================================================== +function RemoveSaveDirectoryBJ takes string sourceDirName returns boolean + return RemoveSaveDirectory(sourceDirName) +endfunction + +//=========================================================================== +function CopySaveGameBJ takes string sourceSaveName, string destSaveName returns boolean + return CopySaveGame(sourceSaveName, destSaveName) +endfunction + + + +//*************************************************************************** +//* +//* Miscellaneous Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetPlayerStartLocationX takes player whichPlayer returns real + return GetStartLocationX(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationY takes player whichPlayer returns real + return GetStartLocationY(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationLoc takes player whichPlayer returns location + return GetStartLocationLoc(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetRectCenter takes rect whichRect returns location + return Location(GetRectCenterX(whichRect), GetRectCenterY(whichRect)) +endfunction + +//=========================================================================== +function IsPlayerSlotState takes player whichPlayer, playerslotstate whichState returns boolean + return GetPlayerSlotState(whichPlayer) == whichState +endfunction + +//=========================================================================== +function GetFadeFromSeconds takes real seconds returns integer + if (seconds != 0) then + return 128 / R2I(seconds) + endif + return 10000 +endfunction + +//=========================================================================== +function GetFadeFromSecondsAsReal takes real seconds returns real + if (seconds != 0) then + return 128.00 / seconds + endif + return 10000.00 +endfunction + +//=========================================================================== +function AdjustPlayerStateSimpleBJ takes player whichPlayer, playerstate whichPlayerState, integer delta returns nothing + call SetPlayerState(whichPlayer, whichPlayerState, GetPlayerState(whichPlayer, whichPlayerState) + delta) +endfunction + +//=========================================================================== +function AdjustPlayerStateBJ takes integer delta, player whichPlayer, playerstate whichPlayerState returns nothing + // If the change was positive, apply the difference to the player's + // gathered resources property as well. + if (delta > 0) then + if (whichPlayerState == PLAYER_STATE_RESOURCE_GOLD) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_GOLD_GATHERED, delta) + elseif (whichPlayerState == PLAYER_STATE_RESOURCE_LUMBER) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_LUMBER_GATHERED, delta) + endif + endif + + call AdjustPlayerStateSimpleBJ(whichPlayer, whichPlayerState, delta) +endfunction + +//=========================================================================== +function SetPlayerStateBJ takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing + local integer oldValue = GetPlayerState(whichPlayer, whichPlayerState) + call AdjustPlayerStateBJ(value - oldValue, whichPlayer, whichPlayerState) +endfunction + +//=========================================================================== +function SetPlayerFlagBJ takes playerstate whichPlayerFlag, boolean flag, player whichPlayer returns nothing + call SetPlayerState(whichPlayer, whichPlayerFlag, IntegerTertiaryOp(flag, 1, 0)) +endfunction + +//=========================================================================== +function SetPlayerTaxRateBJ takes integer rate, playerstate whichResource, player sourcePlayer, player otherPlayer returns nothing + call SetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource, rate) +endfunction + +//=========================================================================== +function GetPlayerTaxRateBJ takes playerstate whichResource, player sourcePlayer, player otherPlayer returns integer + return GetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource) +endfunction + +//=========================================================================== +function IsPlayerFlagSetBJ takes playerstate whichPlayerFlag, player whichPlayer returns boolean + return GetPlayerState(whichPlayer, whichPlayerFlag) == 1 +endfunction + +//=========================================================================== +function AddResourceAmountBJ takes integer delta, unit whichUnit returns nothing + call AddResourceAmount(whichUnit, delta) +endfunction + +//=========================================================================== +function GetConvertedPlayerId takes player whichPlayer returns integer + return GetPlayerId(whichPlayer) + 1 +endfunction + +//=========================================================================== +function ConvertedPlayer takes integer convertedPlayerId returns player + return Player(convertedPlayerId - 1) +endfunction + +//=========================================================================== +function GetRectWidthBJ takes rect r returns real + return GetRectMaxX(r) - GetRectMinX(r) +endfunction + +//=========================================================================== +function GetRectHeightBJ takes rect r returns real + return GetRectMaxY(r) - GetRectMinY(r) +endfunction + +//=========================================================================== +// Replaces a gold mine with a blighted gold mine for the given player. +// +function BlightGoldMineForPlayerBJ takes unit goldMine, player whichPlayer returns unit + local real mineX + local real mineY + local integer mineGold + local unit newMine + + // Make sure we're replacing a Gold Mine and not some other type of unit. + if GetUnitTypeId(goldMine) != 'ngol' then + return null + endif + + // Save the Gold Mine's properties and remove it. + set mineX = GetUnitX(goldMine) + set mineY = GetUnitY(goldMine) + set mineGold = GetResourceAmount(goldMine) + call RemoveUnit(goldMine) + + // Create a Haunted Gold Mine to replace the Gold Mine. + set newMine = CreateBlightedGoldmine(whichPlayer, mineX, mineY, bj_UNIT_FACING) + call SetResourceAmount(newMine, mineGold) + return newMine +endfunction + +//=========================================================================== +function BlightGoldMineForPlayer takes unit goldMine, player whichPlayer returns unit + set bj_lastHauntedGoldMine = BlightGoldMineForPlayerBJ(goldMine, whichPlayer) + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function GetLastHauntedGoldMine takes nothing returns unit + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function IsPointBlightedBJ takes location where returns boolean + return IsPointBlighted(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetPlayerColorBJEnum takes nothing returns nothing + call SetUnitColor(GetEnumUnit(), bj_setPlayerTargetColor) +endfunction + +//=========================================================================== +function SetPlayerColorBJ takes player whichPlayer, playercolor color, boolean changeExisting returns nothing + local group g + + call SetPlayerColor(whichPlayer, color) + if changeExisting then + set bj_setPlayerTargetColor = color + set g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function SetPlayerColorBJEnum) + call DestroyGroup(g) + endif +endfunction + +//=========================================================================== +function SetPlayerUnitAvailableBJ takes integer unitId, boolean allowed, player whichPlayer returns nothing + if allowed then + call SetPlayerTechMaxAllowed(whichPlayer, unitId, -1) + else + call SetPlayerTechMaxAllowed(whichPlayer, unitId, 0) + endif +endfunction + +//=========================================================================== +function LockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, true) +endfunction + +//=========================================================================== +function UnlockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, false) +endfunction + +//=========================================================================== +function IssueTargetOrderBJ takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssuePointOrderLocBJ takes unit whichUnit, string order, location whichLocation returns boolean + return IssuePointOrderLoc( whichUnit, order, whichLocation ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function IssueTargetDestructableOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +function IssueTargetItemOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssueImmediateOrderBJ takes unit whichUnit, string order returns boolean + return IssueImmediateOrder( whichUnit, order ) +endfunction + +//=========================================================================== +function GroupTargetOrderBJ takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GroupPointOrderLocBJ takes group whichGroup, string order, location whichLocation returns boolean + return GroupPointOrderLoc( whichGroup, order, whichLocation ) +endfunction + +//=========================================================================== +function GroupImmediateOrderBJ takes group whichGroup, string order returns boolean + return GroupImmediateOrder( whichGroup, order ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function GroupTargetDestructableOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +function GroupTargetItemOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GetDyingDestructable takes nothing returns destructable + return GetTriggerDestructable() +endfunction + +//=========================================================================== +// Rally point setting +// +function SetUnitRallyPoint takes unit whichUnit, location targPos returns nothing + call IssuePointOrderLocBJ(whichUnit, "setrally", targPos) +endfunction + +//=========================================================================== +function SetUnitRallyUnit takes unit whichUnit, unit targUnit returns nothing + call IssueTargetOrder(whichUnit, "setrally", targUnit) +endfunction + +//=========================================================================== +function SetUnitRallyDestructable takes unit whichUnit, destructable targDest returns nothing + call IssueTargetOrder(whichUnit, "setrally", targDest) +endfunction + +//=========================================================================== +// Utility function for use by editor-generated item drop table triggers. +// This function is added as an action to all destructable drop triggers, +// so that a widget drop may be differentiated from a unit drop. +// +function SaveDyingWidget takes nothing returns nothing + set bj_lastDyingWidget = GetTriggerWidget() +endfunction + +//=========================================================================== +function SetBlightRectBJ takes boolean addBlight, player whichPlayer, rect r returns nothing + call SetBlightRect(whichPlayer, r, addBlight) +endfunction + +//=========================================================================== +function SetBlightRadiusLocBJ takes boolean addBlight, player whichPlayer, location loc, real radius returns nothing + call SetBlightLoc(whichPlayer, loc, radius, addBlight) +endfunction + +//=========================================================================== +function GetAbilityName takes integer abilcode returns string + return GetObjectName(abilcode) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Visibility Settings +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingVisibility takes nothing returns nothing + // Start by setting the ToD. + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, bj_MELEE_STARTING_TOD) + + // call FogMaskEnable(true) + // call FogEnable(true) +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Resources +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingResources takes nothing returns nothing + local integer index + local player indexPlayer + local version v + local integer startingGold + local integer startingLumber + + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set startingGold = bj_MELEE_STARTING_GOLD_V0 + set startingLumber = bj_MELEE_STARTING_LUMBER_V0 + else + set startingGold = bj_MELEE_STARTING_GOLD_V1 + set startingLumber = bj_MELEE_STARTING_LUMBER_V1 + endif + + // Set each player's starting resources. + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_GOLD, startingGold) + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_LUMBER, startingLumber) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Hero Limit +//* +//*************************************************************************** + +//=========================================================================== +function ReducePlayerTechMaxAllowed takes player whichPlayer, integer techId, integer limit returns nothing + local integer oldMax = GetPlayerTechMaxAllowed(whichPlayer, techId) + + // A value of -1 is used to indicate no limit, so check for that as well. + if (oldMax < 0 or oldMax > limit) then + call SetPlayerTechMaxAllowed(whichPlayer, techId, limit) + endif +endfunction + +//=========================================================================== +function MeleeStartingHeroLimit takes nothing returns nothing + local integer index + + set index = 0 + loop + // max heroes per player + call SetPlayerMaxHeroesAllowed(bj_MELEE_HERO_LIMIT, Player(index)) + + // each player is restricted to a limit per hero type as well + call ReducePlayerTechMaxAllowed(Player(index), 'Hamg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hmkg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hpal', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hblm', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Obla', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ofar', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Otch', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Oshd', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Edem', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ekee', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Emoo', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ewar', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Udea', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Udre', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ulic', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ucrl', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Npbm', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbrn', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nngs', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nplh', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbst', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nalc', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ntin', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nfir', bj_MELEE_HERO_TYPE_LIMIT) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Granted Hero Items +//* +//*************************************************************************** + +//=========================================================================== +function MeleeTrainedUnitIsHeroBJFilter takes nothing returns boolean + return IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) +endfunction + +//=========================================================================== +// The first N heroes trained or hired for each player start off with a +// standard set of items. This is currently: +// - 1x Scroll of Town Portal +// +function MeleeGrantItemsToHero takes unit whichUnit returns nothing + local integer owner = GetPlayerId(GetOwningPlayer(whichUnit)) + + // If we haven't twinked N heroes for this player yet, twink away. + if (bj_meleeTwinkedHeroes[owner] < bj_MELEE_MAX_TWINKED_HEROES) then + call UnitAddItemById(whichUnit, 'stwp') + set bj_meleeTwinkedHeroes[owner] = bj_meleeTwinkedHeroes[owner] + 1 + endif +endfunction + +//=========================================================================== +function MeleeGrantItemsToTrainedHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetTrainedUnit()) +endfunction + +//=========================================================================== +function MeleeGrantItemsToHiredHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetSoldUnit()) +endfunction + +//=========================================================================== +function MeleeGrantHeroItems takes nothing returns nothing + local integer index + local trigger trig + + // Initialize the twinked hero counts. + set index = 0 + loop + set bj_meleeTwinkedHeroes[index] = 0 + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + + // Register for an event whenever a hero is trained, so that we can give + // him/her their starting items. + set index = 0 + loop + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(index), EVENT_PLAYER_UNIT_TRAIN_FINISH, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToTrainedHero) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Register for an event whenever a neutral hero is hired, so that we + // can give him/her their starting items. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToHiredHero) + + // Flag that we are giving starting items to heroes, so that the melee + // starting units code can create them as necessary. + set bj_meleeGrantHeroItems = true +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Clear Start Locations +//* +//*************************************************************************** + +//=========================================================================== +function MeleeClearExcessUnit takes nothing returns nothing + local unit theUnit = GetEnumUnit() + local integer owner = GetPlayerId(GetOwningPlayer(theUnit)) + + if (owner == PLAYER_NEUTRAL_AGGRESSIVE) then + // Remove any Neutral Hostile units from the area. + call RemoveUnit(GetEnumUnit()) + elseif (owner == PLAYER_NEUTRAL_PASSIVE) then + // Remove non-structure Neutral Passive units from the area. + if not IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RemoveUnit(GetEnumUnit()) + endif + endif +endfunction + +//=========================================================================== +function MeleeClearNearbyUnits takes real x, real y, real range returns nothing + local group nearbyUnits + + set nearbyUnits = CreateGroup() + call GroupEnumUnitsInRange(nearbyUnits, x, y, range, null) + call ForGroup(nearbyUnits, function MeleeClearExcessUnit) + call DestroyGroup(nearbyUnits) +endfunction + +//=========================================================================== +function MeleeClearExcessUnits takes nothing returns nothing + local integer index + local real locX + local real locY + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + + // If the player slot is being used, clear any nearby creeps. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set locX = GetStartLocationX(GetPlayerStartLocation(indexPlayer)) + set locY = GetStartLocationY(GetPlayerStartLocation(indexPlayer)) + + call MeleeClearNearbyUnits(locX, locY, bj_MELEE_CLEAR_UNITS_RADIUS) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Units +//* +//*************************************************************************** + +//=========================================================================== +function MeleeEnumFindNearestMine takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + local real dist + local location unitLoc + + if (GetUnitTypeId(enumUnit) == 'ngol') then + set unitLoc = GetUnitLoc(enumUnit) + set dist = DistanceBetweenPoints(unitLoc, bj_meleeNearestMineToLoc) + call RemoveLocation(unitLoc) + + // If this is our first mine, or the closest thusfar, use it instead. + if (bj_meleeNearestMineDist < 0) or (dist < bj_meleeNearestMineDist) then + set bj_meleeNearestMine = enumUnit + set bj_meleeNearestMineDist = dist + endif + endif +endfunction + +//=========================================================================== +function MeleeFindNearestMine takes location src, real range returns unit + local group nearbyMines + + set bj_meleeNearestMine = null + set bj_meleeNearestMineDist = -1 + set bj_meleeNearestMineToLoc = src + + set nearbyMines = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(nearbyMines, src, range, null) + call ForGroup(nearbyMines, function MeleeEnumFindNearestMine) + call DestroyGroup(nearbyMines) + + return bj_meleeNearestMine +endfunction + +//=========================================================================== +function MeleeRandomHeroLoc takes player p, integer id1, integer id2, integer id3, integer id4, location loc returns unit + local unit hero = null + local integer roll + local integer pick + local version v + + // The selection of heroes is dependant on the game version. + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set roll = GetRandomInt(1,3) + else + set roll = GetRandomInt(1,4) + endif + + // Translate the roll into a unitid. + if roll == 1 then + set pick = id1 + elseif roll == 2 then + set pick = id2 + elseif roll == 3 then + set pick = id3 + elseif roll == 4 then + set pick = id4 + else + // Unrecognized id index - pick the first hero in the list. + set pick = id1 + endif + + // Create the hero. + set hero = CreateUnitAtLoc(p, pick, loc, bj_UNIT_FACING) + if bj_meleeGrantHeroItems then + call MeleeGrantItemsToHero(hero) + endif + return hero +endfunction + +//=========================================================================== +// Returns a location which is (distance) away from (src) in the direction of (targ). +// +function MeleeGetProjectedLoc takes location src, location targ, real distance, real deltaAngle returns location + local real srcX = GetLocationX(src) + local real srcY = GetLocationY(src) + local real direction = Atan2(GetLocationY(targ) - srcY, GetLocationX(targ) - srcX) + deltaAngle + return Location(srcX + distance * Cos(direction), srcY + distance * Sin(direction)) +endfunction + +//=========================================================================== +function MeleeGetNearestValueWithin takes real val, real minVal, real maxVal returns real + if (val < minVal) then + return minVal + elseif (val > maxVal) then + return maxVal + else + return val + endif +endfunction + +//=========================================================================== +function MeleeGetLocWithinRect takes location src, rect r returns location + local real withinX = MeleeGetNearestValueWithin(GetLocationX(src), GetRectMinX(r), GetRectMaxX(r)) + local real withinY = MeleeGetNearestValueWithin(GetLocationY(src), GetRectMinY(r), GetRectMaxY(r)) + return Location(withinX, withinY) +endfunction + +//=========================================================================== +// Starting Units for Human Players +// - 1 Town Hall, placed at start location +// - 5 Peasants, placed between start location and nearest gold mine +// +function MeleeStartingUnitsHuman takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + local unit townHall = null + + if (doPreload) then + call Preloader( "scripts\\HumanMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'hpea', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (townHall != null) then + call UnitAddAbilityBJ('Amic', townHall) + call UnitMakeAbilityPermanentBJ(true, 'Amic', townHall) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Hamg', 'Hmkg', 'Hpal', 'Hblm', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peasants. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Orc Players +// - 1 Great Hall, placed at start location +// - 5 Peons, placed between start location and nearest gold mine +// +function MeleeStartingUnitsOrc takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + + if (doPreload) then + call Preloader( "scripts\\OrcMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'opeo', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Obla', 'Ofar', 'Otch', 'Oshd', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peons. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Undead Players +// - 1 Necropolis, placed at start location +// - 1 Haunted Gold Mine, placed on nearest gold mine +// - 3 Acolytes, placed between start location and nearest gold mine +// - 1 Ghoul, placed between start location and nearest gold mine +// - Blight, centered on nearest gold mine, spread across a "large area" +// +function MeleeStartingUnitsUndead takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location nearTownLoc + local location heroLoc + local real peonX + local real peonY + local real ghoulX + local real ghoulY + + if (doPreload) then + call Preloader( "scripts\\UndeadMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Replace the nearest gold mine with a blighted version. + set nearestMine = BlightGoldMineForPlayerBJ(nearestMine, whichPlayer) + + // Spawn Ghoul near the Necropolis. + set nearTownLoc = MeleeGetProjectedLoc(startLoc, GetUnitLoc(nearestMine), 288, 0) + set ghoulX = GetLocationX(nearTownLoc) + set ghoulY = GetLocationY(nearTownLoc) + set bj_ghoul[GetPlayerId(whichPlayer)] = CreateUnit(whichPlayer, 'ugho', ghoulX + 0.00 * unitSpacing, ghoulY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Spawn Acolytes near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.00 * unitSpacing, peonY + 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the gold mine. + call SetBlightLoc(whichPlayer,nearMineLoc, 768, true) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Spawn Acolytes and Ghoul directly south of the Necropolis. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'uaco', peonX - 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ugho', peonX + 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the start location. + call SetBlightLoc(whichPlayer,startLoc, 768, true) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Udea', 'Udre', 'Ulic', 'Ucrl', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Acolytes. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Night Elf Players +// - 1 Tree of Life, placed by nearest gold mine, already entangled +// - 5 Wisps, placed between Tree of Life and nearest gold mine +// +function MeleeStartingUnitsNightElf takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local real minTreeDist = 3.50 * bj_CELLWIDTH + local real minWispDist = 1.75 * bj_CELLWIDTH + local unit nearestMine + local location nearMineLoc + local location wispLoc + local location heroLoc + local real peonX + local real peonY + local unit tree + + if (doPreload) then + call Preloader( "scripts\\NightElfMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Tree of Life near the mine and have it entangle the mine. + // Project the Tree's coordinates from the gold mine, and then snap + // the X and Y values to within minTreeDist of the Gold Mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 650, 0) + set nearMineLoc = MeleeGetLocWithinRect(nearMineLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minTreeDist)) + set tree = CreateUnitAtLoc(whichPlayer, 'etol', nearMineLoc, bj_UNIT_FACING) + call IssueTargetOrder(tree, "entangleinstant", nearestMine) + + // Spawn Wisps at the start location. + set wispLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set wispLoc = MeleeGetLocWithinRect(wispLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minWispDist)) + set peonX = GetLocationX(wispLoc) + set peonY = GetLocationY(wispLoc) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Tree of Life at the start location. + call CreateUnitAtLoc(whichPlayer, 'etol', startLoc, bj_UNIT_FACING) + + // Spawn Wisps directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'ewsp', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Edem', 'Ekee', 'Emoo', 'Ewar', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Wisps. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Players Whose Race is Unknown +// - 12 Sheep, placed randomly around the start location +// +function MeleeStartingUnitsUnknownRace takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local integer index + + if (doPreload) then + endif + + set index = 0 + loop + call CreateUnit(whichPlayer, 'nshe', GetLocationX(startLoc) + GetRandomReal(-256, 256), GetLocationY(startLoc) + GetRandomReal(-256, 256), GetRandomReal(0, 360)) + set index = index + 1 + exitwhen index == 12 + endloop + + if (doHeroes) then + // Give them a "free hero" token, out of pity. + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + + if (doCamera) then + // Center the camera on the initial sheep. + call SetCameraPositionLocForPlayer(whichPlayer, startLoc) + call SetCameraQuickPositionLocForPlayer(whichPlayer, startLoc) + endif +endfunction + +//=========================================================================== +function MeleeStartingUnits takes nothing returns nothing + local integer index + local player indexPlayer + local location indexStartLoc + local race indexRace + + call Preloader( "scripts\\SharedMelee.pld" ) + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexStartLoc = GetStartLocationLoc(GetPlayerStartLocation(indexPlayer)) + set indexRace = GetPlayerRace(indexPlayer) + + // Create initial race-specific starting units + if (indexRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_ORC) then + call MeleeStartingUnitsOrc(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(indexPlayer, indexStartLoc, true, true, true) + else + call MeleeStartingUnitsUnknownRace(indexPlayer, indexStartLoc, true, true, true) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + +endfunction + +//=========================================================================== +function MeleeStartingUnitsForPlayer takes race whichRace, player whichPlayer, location loc, boolean doHeroes returns nothing + // Create initial race-specific starting units + if (whichRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_ORC) then + call MeleeStartingUnitsOrc(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(whichPlayer, loc, doHeroes, false, false) + else + // Unrecognized race - ignore the request. + endif +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting AI Scripts +//* +//*************************************************************************** + +//=========================================================================== +function PickMeleeAI takes player num, string s1, string s2, string s3 returns nothing + local integer pick + + // easy difficulty never uses any custom AI scripts + // that are designed to be a bit more challenging + // + if GetAIDifficulty(num) == AI_DIFFICULTY_NEWBIE then + call StartMeleeAI(num,s1) + return + endif + + if s2 == null then + set pick = 1 + elseif s3 == null then + set pick = GetRandomInt(1,2) + else + set pick = GetRandomInt(1,3) + endif + + if pick == 1 then + call StartMeleeAI(num,s1) + elseif pick == 2 then + call StartMeleeAI(num,s2) + else + call StartMeleeAI(num,s3) + endif +endfunction + +//=========================================================================== +function MeleeStartingAI takes nothing returns nothing + local integer index + local player indexPlayer + local race indexRace + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexRace = GetPlayerRace(indexPlayer) + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + // Run a race-specific melee AI script. + if (indexRace == RACE_HUMAN) then + call PickMeleeAI(indexPlayer, "human.ai", null, null) + elseif (indexRace == RACE_ORC) then + call PickMeleeAI(indexPlayer, "orc.ai", null, null) + elseif (indexRace == RACE_UNDEAD) then + call PickMeleeAI(indexPlayer, "undead.ai", null, null) + call RecycleGuardPosition(bj_ghoul[index]) + elseif (indexRace == RACE_NIGHTELF) then + call PickMeleeAI(indexPlayer, "elf.ai", null, null) + else + // Unrecognized race. + endif + call ShareEverythingWithTeamAI(indexPlayer) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +function LockGuardPosition takes unit targ returns nothing + call SetUnitCreepGuard(targ,true) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Victory / Defeat Conditions +//* +//*************************************************************************** + +//=========================================================================== +function MeleePlayerIsOpponent takes integer playerIndex, integer opponentIndex returns boolean + local player thePlayer = Player(playerIndex) + local player theOpponent = Player(opponentIndex) + + // The player himself is not an opponent. + if (playerIndex == opponentIndex) then + return false + endif + + // Unused player slots are not opponents. + if (GetPlayerSlotState(theOpponent) != PLAYER_SLOT_STATE_PLAYING) then + return false + endif + + // Players who are already defeated are not opponents. + if (bj_meleeDefeated[opponentIndex]) then + return false + endif + + // Allied players with allied victory set are not opponents. + if GetPlayerAlliance(thePlayer, theOpponent, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(theOpponent, thePlayer, ALLIANCE_PASSIVE) then + if (GetPlayerState(thePlayer, PLAYER_STATE_ALLIED_VICTORY) == 1) then + if (GetPlayerState(theOpponent, PLAYER_STATE_ALLIED_VICTORY) == 1) then + return false + endif + endif + endif + endif + + return true +endfunction + +//=========================================================================== +// Count buildings currently owned by all allies, including the player themself. +// +function MeleeGetAllyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local integer buildingCount + local player indexPlayer + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set buildingCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + // uncomment to cause defeat even if you have control of ally structures, but yours have been nixed + //if (PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex]) then + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set buildingCount = buildingCount + GetPlayerStructureCount(indexPlayer, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return buildingCount +endfunction + +//=========================================================================== +// Count allies, excluding dead players and the player themself. +// +function MeleeGetAllyCount takes player whichPlayer returns integer + local integer playerIndex + local integer playerCount + local player indexPlayer + + // Count the number of not-yet-defeated co-allies. + set playerCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex] and (whichPlayer != indexPlayer) then + set playerCount = playerCount + 1 + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return playerCount +endfunction + +//=========================================================================== +// Counts key structures owned by a player and his or her allies, including +// structures currently upgrading or under construction. +// +// Key structures: Town Hall, Great Hall, Tree of Life, Necropolis +// +function MeleeGetAllyKeyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local player indexPlayer + local integer keyStructs + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set keyStructs = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "townhall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "greathall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "treeoflife", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "necropolis", true, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return keyStructs +endfunction + +//=========================================================================== +// Enum: Draw out a specific player. +// +function MeleeDoDrawEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_TIE, false) +endfunction + +//=========================================================================== +// Enum: Victory out a specific player. +// +function MeleeDoVictoryEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + local integer playerIndex = GetPlayerId(thePlayer) + + if (not bj_meleeVictoried[playerIndex]) then + set bj_meleeVictoried[playerIndex] = true + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_VICTORY, false) + endif +endfunction + +//=========================================================================== +// Defeat out a specific player. +// +function MeleeDoDefeat takes player whichPlayer returns nothing + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, false) +endfunction + +//=========================================================================== +// Enum: Defeat out a specific player. +// +function MeleeDoDefeatEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + // needs to happen before ownership change + call CachePlayerHeroData(thePlayer) + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoDefeat(thePlayer) +endfunction + +//=========================================================================== +// A specific player left the game. +// +function MeleeDoLeave takes player whichPlayer returns nothing + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + call GameOverDialogBJ( whichPlayer, true ) + else + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, true) + endif +endfunction + +//=========================================================================== +// Remove all observers +// +function MeleeRemoveObservers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + + // Give all observers the game over dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (IsPlayerObserver(indexPlayer)) then + call RemovePlayerPreserveUnitsBJ(indexPlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Test all players to determine if a team has won. For a team to win, all +// remaining (read: undefeated) players need to be co-allied with all other +// remaining players. If even one player is not allied towards another, +// everyone must be denied victory. +// +function MeleeCheckForVictors takes nothing returns force + local integer playerIndex + local integer opponentIndex + local force opponentlessPlayers = CreateForce() + local boolean gameOver = false + + // Check to see if any players have opponents remaining. + set playerIndex = 0 + loop + if (not bj_meleeDefeated[playerIndex]) then + // Determine whether or not this player has any remaining opponents. + set opponentIndex = 0 + loop + // If anyone has an opponent, noone can be victorious yet. + if MeleePlayerIsOpponent(playerIndex, opponentIndex) then + return CreateForce() + endif + + set opponentIndex = opponentIndex + 1 + exitwhen opponentIndex == bj_MAX_PLAYERS + endloop + + // Keep track of each opponentless player so that we can give + // them a victory later. + call ForceAddPlayer(opponentlessPlayers, Player(playerIndex)) + set gameOver = true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Set the game over global flag + set bj_meleeGameOver = gameOver + + return opponentlessPlayers +endfunction + +//=========================================================================== +// Test each player to determine if anyone has been defeated. +// +function MeleeCheckForLosersAndVictors takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force defeatedPlayers = CreateForce() + local force victoriousPlayers + local boolean gameOver = false + + // If the game is already over, do nothing + if (bj_meleeGameOver) then + return + endif + + // If the game was disconnected then it is over, in this case we + // don't want to report results for anyone as they will most likely + // conflict with the actual game results + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set bj_meleeGameOver = true + return + endif + + // Check each player to see if he or she has been defeated yet. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (not bj_meleeDefeated[playerIndex] and not bj_meleeVictoried[playerIndex]) then + //call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, 60, "Player"+I2S(playerIndex)+" has "+I2S(MeleeGetAllyStructureCount(indexPlayer))+" ally buildings.") + if (MeleeGetAllyStructureCount(indexPlayer) <= 0) then + + // Keep track of each defeated player so that we can give + // them a defeat later. + call ForceAddPlayer(defeatedPlayers, Player(playerIndex)) + + // Set their defeated flag now so MeleeCheckForVictors + // can detect victors. + set bj_meleeDefeated[playerIndex] = true + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Now that the defeated flags are set, check if there are any victors + set victoriousPlayers = MeleeCheckForVictors() + + // Defeat all defeated players + call ForForce(defeatedPlayers, function MeleeDoDefeatEnum) + + // Give victory to all victorious players + call ForForce(victoriousPlayers, function MeleeDoVictoryEnum) + + // If the game is over we should remove all observers + if (bj_meleeGameOver) then + call MeleeRemoveObservers() + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X or be revealed" message. +// +function MeleeGetCrippledWarningMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_WARNING_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_WARNING_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_WARNING_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_WARNING_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledTimerMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_TIMER_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_TIMER_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_TIMER_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_TIMER_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledRevealedMessage takes player whichPlayer returns string + return GetLocalizedString("CRIPPLE_REVEALING_PREFIX") + GetPlayerName(whichPlayer) + GetLocalizedString("CRIPPLE_REVEALING_POSTFIX") +endfunction + +//=========================================================================== +function MeleeExposePlayer takes player whichPlayer, boolean expose returns nothing + local integer playerIndex + local player indexPlayer + local force toExposeTo = CreateForce() + + call CripplePlayer( whichPlayer, toExposeTo, false ) + + set bj_playerIsExposed[GetPlayerId(whichPlayer)] = expose + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (not PlayersAreCoAllied(whichPlayer, indexPlayer)) then + call ForceAddPlayer( toExposeTo, indexPlayer ) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call CripplePlayer( whichPlayer, toExposeTo, expose ) + call DestroyForce(toExposeTo) +endfunction + +//=========================================================================== +function MeleeExposeAllPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local integer playerIndex2 + local player indexPlayer2 + local force toExposeTo = CreateForce() + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + call ForceClear( toExposeTo ) + call CripplePlayer( indexPlayer, toExposeTo, false ) + + set playerIndex2 = 0 + loop + set indexPlayer2 = Player(playerIndex2) + + if playerIndex != playerIndex2 then + if (not PlayersAreCoAllied(indexPlayer, indexPlayer2)) then + call ForceAddPlayer( toExposeTo, indexPlayer2 ) + endif + endif + + set playerIndex2 = playerIndex2 + 1 + exitwhen playerIndex2 == bj_MAX_PLAYERS + endloop + + call CripplePlayer( indexPlayer, toExposeTo, true ) + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call DestroyForce( toExposeTo ) +endfunction + +//=========================================================================== +function MeleeCrippledPlayerTimeout takes nothing returns nothing + local timer expiredTimer = GetExpiredTimer() + local integer playerIndex + local player exposedPlayer + + // Determine which player's timer expired. + set playerIndex = 0 + loop + if (bj_crippledTimer[playerIndex] == expiredTimer) then + exitwhen true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + if (playerIndex == bj_MAX_PLAYERS) then + return + endif + set exposedPlayer = Player(playerIndex) + + if (GetLocalPlayer() == exposedPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + // Display a text message to all players, explaining the exposure. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledRevealedMessage(exposedPlayer)) + + // Expose the player. + call MeleeExposePlayer(exposedPlayer, true) +endfunction + +//=========================================================================== +function MeleePlayerIsCrippled takes player whichPlayer returns boolean + local integer allyStructures = MeleeGetAllyStructureCount(whichPlayer) + local integer allyKeyStructures = MeleeGetAllyKeyStructureCount(whichPlayer) + + // Dead teams are not considered to be crippled. + return (allyStructures > 0) and (allyKeyStructures <= 0) +endfunction + +//=========================================================================== +// Test each player to determine if anyone has become crippled. +// +function MeleeCheckForCrippledPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force crippledPlayers = CreateForce() + local boolean isNowCrippled + local race indexRace + + // The "finish soon" exposure of all players overrides any "crippled" exposure + if bj_finishSoonAllExposed then + return + endif + + // Check each player to see if he or she has been crippled or uncrippled. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + set isNowCrippled = MeleePlayerIsCrippled(indexPlayer) + + if (not bj_playerIsCrippled[playerIndex] and isNowCrippled) then + + // Player became crippled; start their cripple timer. + set bj_playerIsCrippled[playerIndex] = true + call TimerStart(bj_crippledTimer[playerIndex], bj_MELEE_CRIPPLE_TIMEOUT, false, function MeleeCrippledPlayerTimeout) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Show the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], true) + + // Display a warning message. + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledWarningMessage(indexPlayer)) + endif + + elseif (bj_playerIsCrippled[playerIndex] and not isNowCrippled) then + + // Player became uncrippled; stop their cripple timer. + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + + // Display a confirmation message if the player's team is still alive. + if (MeleeGetAllyStructureCount(indexPlayer) > 0) then + if (bj_playerIsExposed[playerIndex]) then + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNREVEALED")) + else + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNCRIPPLED")) + endif + endif + endif + + // If the player granted shared vision, deny that vision now. + call MeleeExposePlayer(indexPlayer, false) + + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine if the lost unit should result in any defeats or victories. +// +function MeleeCheckLostUnit takes unit lostUnit returns nothing + local player lostUnitOwner = GetOwningPlayer(lostUnit) + + // We only need to check for mortality if this was the last building. + if (GetPlayerStructureCount(lostUnitOwner, true) <= 0) then + call MeleeCheckForLosersAndVictors() + endif + + // Check if the lost unit has crippled or uncrippled the player. + // (A team with 0 units is dead, and thus considered uncrippled.) + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +// Determine if the gained unit should result in any defeats, victories, +// or cripple-status changes. +// +function MeleeCheckAddedUnit takes unit addedUnit returns nothing + local player addedUnitOwner = GetOwningPlayer(addedUnit) + + // If the player was crippled, this unit may have uncrippled him/her. + if (bj_playerIsCrippled[GetPlayerId(addedUnitOwner)]) then + call MeleeCheckForCrippledPlayers() + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionConstructCancel takes nothing returns nothing + call MeleeCheckLostUnit(GetCancelledStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitDeath takes nothing returns nothing + if (IsUnitType(GetDyingUnit(), UNIT_TYPE_STRUCTURE)) then + call MeleeCheckLostUnit(GetDyingUnit()) + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitConstructionStart takes nothing returns nothing + call MeleeCheckAddedUnit(GetConstructingStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerDefeated takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + call CachePlayerHeroData(thePlayer) + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerLeft takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + + // Just show game over for observers when they leave + if (IsPlayerObserver(thePlayer)) then + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + return + endif + + call CachePlayerHeroData(thePlayer) + + // This is the same as defeat except the player generates the message + // "player left the game" as opposed to "player was defeated". + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + call MeleeDoLeave(thePlayer) + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoLeave(thePlayer) + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionAllianceChange takes nothing returns nothing + call MeleeCheckForLosersAndVictors() + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishSoon takes nothing returns nothing + // Note: We may get this trigger multiple times + local integer playerIndex + local player indexPlayer + local real timeRemaining = GetTournamentFinishSoonTimeRemaining() + + if not bj_finishSoonAllExposed then + set bj_finishSoonAllExposed = true + + // Reset all crippled players and their timers, and hide the local crippled timer dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if bj_playerIsCrippled[playerIndex] then + // Uncripple the player + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + endif + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Expose all players + call MeleeExposeAllPlayers() + endif + + // Show the "finish soon" timer dialog and set the real time remaining + call TimerDialogDisplay(bj_finishSoonTimerDialog, true) + call TimerDialogSetRealTimeRemaining(bj_finishSoonTimerDialog, timeRemaining) +endfunction + + +//=========================================================================== +function MeleeWasUserPlayer takes player whichPlayer returns boolean + local playerslotstate slotState + + if (GetPlayerController(whichPlayer) != MAP_CONTROL_USER) then + return false + endif + + set slotState = GetPlayerSlotState(whichPlayer) + + return (slotState == PLAYER_SLOT_STATE_PLAYING or slotState == PLAYER_SLOT_STATE_LEFT) +endfunction + +//=========================================================================== +function MeleeTournamentFinishNowRuleA takes integer multiplier returns nothing + local integer array playerScore + local integer array teamScore + local force array teamForce + local integer teamCount + local integer index + local player indexPlayer + local integer index2 + local player indexPlayer2 + local integer bestTeam + local integer bestScore + local boolean draw + + // Compute individual player scores + set index = 0 + loop + set indexPlayer = Player(index) + if MeleeWasUserPlayer(indexPlayer) then + set playerScore[index] = GetTournamentScore(indexPlayer) + if playerScore[index] <= 0 then + set playerScore[index] = 1 + endif + else + set playerScore[index] = 0 + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Compute team scores and team forces + set teamCount = 0 + set index = 0 + loop + if playerScore[index] != 0 then + set indexPlayer = Player(index) + + set teamScore[teamCount] = 0 + set teamForce[teamCount] = CreateForce() + + set index2 = index + loop + if playerScore[index2] != 0 then + set indexPlayer2 = Player(index2) + + if PlayersAreCoAllied(indexPlayer, indexPlayer2) then + set teamScore[teamCount] = teamScore[teamCount] + playerScore[index2] + call ForceAddPlayer(teamForce[teamCount], indexPlayer2) + set playerScore[index2] = 0 + endif + endif + + set index2 = index2 + 1 + exitwhen index2 == bj_MAX_PLAYERS + endloop + + set teamCount = teamCount + 1 + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // The game is now over + set bj_meleeGameOver = true + + // There should always be at least one team, but continue to work if not + if teamCount != 0 then + + // Find best team score + set bestTeam = -1 + set bestScore = -1 + set index = 0 + loop + if teamScore[index] > bestScore then + set bestTeam = index + set bestScore = teamScore[index] + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Check whether the best team's score is 'multiplier' times better than + // every other team. In the case of multiplier == 1 and exactly equal team + // scores, the first team (which was randomly chosen by the server) will win. + set draw = false + set index = 0 + loop + if index != bestTeam then + if bestScore < (multiplier * teamScore[index]) then + set draw = true + endif + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + if draw then + // Give draw to all players on all teams + set index = 0 + loop + call ForForce(teamForce[index], function MeleeDoDrawEnum) + + set index = index + 1 + exitwhen index == teamCount + endloop + else + // Give defeat to all players on teams other than the best team + set index = 0 + loop + if index != bestTeam then + call ForForce(teamForce[index], function MeleeDoDefeatEnum) + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Give victory to all players on the best team + call ForForce(teamForce[bestTeam], function MeleeDoVictoryEnum) + endif + endif + +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishNow takes nothing returns nothing + local integer rule = GetTournamentFinishNowRule() + + // If the game is already over, do nothing + if bj_meleeGameOver then + return + endif + + if (rule == 1) then + // Finals games + call MeleeTournamentFinishNowRuleA(1) + else + // Preliminary games + call MeleeTournamentFinishNowRuleA(3) + endif + + // Since the game is over we should remove all observers + call MeleeRemoveObservers() + +endfunction + +//=========================================================================== +function MeleeInitVictoryDefeat takes nothing returns nothing + local trigger trig + local integer index + local player indexPlayer + + // Create a timer window for the "finish soon" timeout period, it has no timer + // because it is driven by real time (outside of the game state to avoid desyncs) + set bj_finishSoonTimerDialog = CreateTimerDialog(null) + + // Set a trigger to fire when we receive a "finish soon" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_SOON) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishSoon) + + // Set a trigger to fire when we receive a "finish now" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_NOW) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishNow) + + // Set up each player's mortality code. + set index = 0 + loop + set indexPlayer = Player(index) + + // Make sure this player slot is playing. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set bj_meleeDefeated[index] = false + set bj_meleeVictoried[index] = false + + // Create a timer and timer window in case the player is crippled. + set bj_playerIsCrippled[index] = false + set bj_playerIsExposed[index] = false + set bj_crippledTimer[index] = CreateTimer() + set bj_crippledTimerWindows[index] = CreateTimerDialog(bj_crippledTimer[index]) + call TimerDialogSetTitle(bj_crippledTimerWindows[index], MeleeGetCrippledTimerMessage(indexPlayer)) + + // Set a trigger to fire whenever a building is cancelled for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL, null) + call TriggerAddAction(trig, function MeleeTriggerActionConstructCancel) + + // Set a trigger to fire whenever a unit dies for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_DEATH, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitDeath) + + // Set a trigger to fire whenever a unit begins construction for this player + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_START, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitConstructionStart) + + // Set a trigger to fire whenever this player defeats-out + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_DEFEAT) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerDefeated) + + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + + // Set a trigger to fire whenever this player changes his/her alliances. + set trig = CreateTrigger() + call TriggerRegisterPlayerAllianceChange(trig, indexPlayer, ALLIANCE_PASSIVE) + call TriggerRegisterPlayerStateEvent(trig, indexPlayer, PLAYER_STATE_ALLIED_VICTORY, EQUAL, 1) + call TriggerAddAction(trig, function MeleeTriggerActionAllianceChange) + else + set bj_meleeDefeated[index] = true + set bj_meleeVictoried[index] = false + + // Handle leave events for observers + if (IsPlayerObserver(indexPlayer)) then + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Test for victory / defeat at startup, in case the user has already won / lost. + // Allow for a short time to pass first, so that the map can finish loading. + call TimerStart(CreateTimer(), 2.0, false, function MeleeTriggerActionAllianceChange) +endfunction + + + +//*************************************************************************** +//* +//* Player Slot Availability +//* +//*************************************************************************** + +//=========================================================================== +function CheckInitPlayerSlotAvailability takes nothing returns nothing + local integer index + + if (not bj_slotControlReady) then + set index = 0 + loop + set bj_slotControlUsed[index] = false + set bj_slotControl[index] = MAP_CONTROL_USER + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + set bj_slotControlReady = true + endif +endfunction + +//=========================================================================== +function SetPlayerSlotAvailable takes player whichPlayer, mapcontrol control returns nothing + local integer playerIndex = GetPlayerId(whichPlayer) + + call CheckInitPlayerSlotAvailability() + set bj_slotControlUsed[playerIndex] = true + set bj_slotControl[playerIndex] = control +endfunction + + + +//*************************************************************************** +//* +//* Generic Template Player-slot Initialization +//* +//*************************************************************************** + +//=========================================================================== +function TeamInitPlayerSlots takes integer teamCount returns nothing + local integer index + local player indexPlayer + local integer team + + call SetTeams(teamCount) + + call CheckInitPlayerSlotAvailability() + set index = 0 + set team = 0 + loop + if (bj_slotControlUsed[index]) then + set indexPlayer = Player(index) + call SetPlayerTeam( indexPlayer, team ) + set team = team + 1 + if (team >= teamCount) then + set team = 0 + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function MeleeInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function FFAInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function OneOnOneInitPlayerSlots takes nothing returns nothing + // Limit the game to 2 players. + call SetTeams(2) + call SetPlayers(2) + call TeamInitPlayerSlots(2) +endfunction + +//=========================================================================== +function InitGenericPlayerSlots takes nothing returns nothing + local gametype gType = GetGameTypeSelected() + + if (gType == GAME_TYPE_MELEE) then + call MeleeInitPlayerSlots() + elseif (gType == GAME_TYPE_FFA) then + call FFAInitPlayerSlots() + elseif (gType == GAME_TYPE_USE_MAP_SETTINGS) then + // Do nothing; the map-specific script handles this. + elseif (gType == GAME_TYPE_ONE_ON_ONE) then + call OneOnOneInitPlayerSlots() + elseif (gType == GAME_TYPE_TWO_TEAM_PLAY) then + call TeamInitPlayerSlots(2) + elseif (gType == GAME_TYPE_THREE_TEAM_PLAY) then + call TeamInitPlayerSlots(3) + elseif (gType == GAME_TYPE_FOUR_TEAM_PLAY) then + call TeamInitPlayerSlots(4) + else + // Unrecognized Game Type + endif +endfunction + + + +//*************************************************************************** +//* +//* Blizzard.j Initialization +//* +//*************************************************************************** + +//=========================================================================== +function SetDNCSoundsDawn takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_dawnSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDusk takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_duskSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDay takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) and not bj_dncIsDaytime then + set bj_dncIsDaytime = true + + // change ambient sounds + call StopSound(bj_nightAmbientSound, false, true) + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsNight takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) and bj_dncIsDaytime then + set bj_dncIsDaytime = false + + // change ambient sounds + call StopSound(bj_dayAmbientSound, false, true) + call StartSound(bj_nightAmbientSound) + endif +endfunction + +//=========================================================================== +function InitDNCSounds takes nothing returns nothing + // Create sounds to be played at dawn and dusk. + set bj_dawnSound = CreateSoundFromLabel("RoosterSound", false, false, false, 10000, 10000) + set bj_duskSound = CreateSoundFromLabel("WolfSound", false, false, false, 10000, 10000) + + // Set up triggers to respond to dawn and dusk. + set bj_dncSoundsDawn = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDawn, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DAWN) + call TriggerAddAction(bj_dncSoundsDawn, function SetDNCSoundsDawn) + + set bj_dncSoundsDusk = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDusk, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDusk, function SetDNCSoundsDusk) + + // Set up triggers to respond to changes from day to night or vice-versa. + set bj_dncSoundsDay = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDay, function SetDNCSoundsDay) + + set bj_dncSoundsNight = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsNight, function SetDNCSoundsNight) +endfunction + +//=========================================================================== +function InitBlizzardGlobals takes nothing returns nothing + local integer index + local integer userControlledPlayers + local version v + + // Init filter function vars + set filterIssueHauntOrderAtLocBJ = Filter(function IssueHauntOrderAtLocBJFilter) + set filterEnumDestructablesInCircleBJ = Filter(function EnumDestructablesInCircleBJFilter) + set filterGetUnitsInRectOfPlayer = Filter(function GetUnitsInRectOfPlayerFilter) + set filterGetUnitsOfTypeIdAll = Filter(function GetUnitsOfTypeIdAllFilter) + set filterGetUnitsOfPlayerAndTypeId = Filter(function GetUnitsOfPlayerAndTypeIdFilter) + set filterMeleeTrainedUnitIsHeroBJ = Filter(function MeleeTrainedUnitIsHeroBJFilter) + set filterLivingPlayerUnitsOfTypeId = Filter(function LivingPlayerUnitsOfTypeIdFilter) + + // Init force presets + set index = 0 + loop + exitwhen index == bj_MAX_PLAYER_SLOTS + set bj_FORCE_PLAYER[index] = CreateForce() + call ForceAddPlayer(bj_FORCE_PLAYER[index], Player(index)) + set index = index + 1 + endloop + + set bj_FORCE_ALL_PLAYERS = CreateForce() + call ForceEnumPlayers(bj_FORCE_ALL_PLAYERS, null) + + // Init Cinematic Mode history + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + + // Init Trigger Queue + set index = 0 + loop + exitwhen index >= bj_MAX_QUEUED_TRIGGERS + set bj_queuedExecTriggers[index] = null + set bj_queuedExecUseConds[index] = false + set index = index + 1 + endloop + + // Init singleplayer check + set bj_isSinglePlayer = false + set userControlledPlayers = 0 + set index = 0 + loop + exitwhen index >= bj_MAX_PLAYERS + if (GetPlayerController(Player(index)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(index)) == PLAYER_SLOT_STATE_PLAYING) then + set userControlledPlayers = userControlledPlayers + 1 + endif + set index = index + 1 + endloop + set bj_isSinglePlayer = (userControlledPlayers == 1) + + // Init sounds + //set bj_pingMinimapSound = CreateSoundFromLabel("AutoCastButtonClick", false, false, false, 10000, 10000) + set bj_rescueSound = CreateSoundFromLabel("Rescue", false, false, false, 10000, 10000) + set bj_questDiscoveredSound = CreateSoundFromLabel("QuestNew", false, false, false, 10000, 10000) + set bj_questUpdatedSound = CreateSoundFromLabel("QuestUpdate", false, false, false, 10000, 10000) + set bj_questCompletedSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_questFailedSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + set bj_questHintSound = CreateSoundFromLabel("Hint", false, false, false, 10000, 10000) + set bj_questSecretSound = CreateSoundFromLabel("SecretFound", false, false, false, 10000, 10000) + set bj_questItemAcquiredSound = CreateSoundFromLabel("ItemReward", false, false, false, 10000, 10000) + set bj_questWarningSound = CreateSoundFromLabel("Warning", false, false, false, 10000, 10000) + set bj_victoryDialogSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_defeatDialogSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + + // Init corpse creation triggers. + call DelayedSuspendDecayCreate() + + // Init version-specific data + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V0 + else + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V1 + endif +endfunction + +//=========================================================================== +function InitQueuedTriggers takes nothing returns nothing + set bj_queuedExecTimeout = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_queuedExecTimeout, bj_queuedExecTimeoutTimer) + call TriggerAddAction(bj_queuedExecTimeout, function QueuedTriggerDoneBJ) +endfunction + +//=========================================================================== +function InitMapRects takes nothing returns nothing + set bj_mapInitialPlayableArea = Rect(GetCameraBoundMinX()-GetCameraMargin(CAMERA_MARGIN_LEFT), GetCameraBoundMinY()-GetCameraMargin(CAMERA_MARGIN_BOTTOM), GetCameraBoundMaxX()+GetCameraMargin(CAMERA_MARGIN_RIGHT), GetCameraBoundMaxY()+GetCameraMargin(CAMERA_MARGIN_TOP)) + set bj_mapInitialCameraBounds = GetCurrentCameraBoundsMapRectBJ() +endfunction + +//=========================================================================== +function InitSummonableCaps takes nothing returns nothing + local integer index + + set index = 0 + loop + // upgraded units + // Note: Only do this if the corresponding upgrade is not yet researched + // Barrage - Siege Engines + if (not GetPlayerTechResearched(Player(index), 'Rhrt', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'hrtt', 0) + endif + + // Berserker Upgrade - Troll Berserkers + if (not GetPlayerTechResearched(Player(index), 'Robk', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'otbk', 0) + endif + + // max skeletons per player + call SetPlayerTechMaxAllowed(Player(index), 'uske', bj_MAX_SKELETONS) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Update the per-class stock limits. +// +function UpdateStockAvailability takes item whichItem returns nothing + local itemtype iType = GetItemType(whichItem) + local integer iLevel = GetItemLevel(whichItem) + + // Update allowed type/level combinations. + if (iType == ITEM_TYPE_PERMANENT) then + set bj_stockAllowedPermanent[iLevel] = true + elseif (iType == ITEM_TYPE_CHARGED) then + set bj_stockAllowedCharged[iLevel] = true + elseif (iType == ITEM_TYPE_ARTIFACT) then + set bj_stockAllowedArtifact[iLevel] = true + else + // Not interested in this item type - ignore the item. + endif +endfunction + +//=========================================================================== +// Find a sellable item of the given type and level, and then add it. +// +function UpdateEachStockBuildingEnum takes nothing returns nothing + local integer iteration = 0 + local integer pickedItemId + + loop + set pickedItemId = ChooseRandomItemEx(bj_stockPickedItemType, bj_stockPickedItemLevel) + exitwhen IsItemIdSellable(pickedItemId) + + // If we get hung up on an entire class/level combo of unsellable + // items, or a very unlucky series of random numbers, give up. + set iteration = iteration + 1 + if (iteration > bj_STOCK_MAX_ITERATIONS) then + return + endif + endloop + call AddItemToStock(GetEnumUnit(), pickedItemId, 1, 1) +endfunction + +//=========================================================================== +function UpdateEachStockBuilding takes itemtype iType, integer iLevel returns nothing + local group g + + set bj_stockPickedItemType = iType + set bj_stockPickedItemLevel = iLevel + + set g = CreateGroup() + call GroupEnumUnitsOfType(g, "marketplace", null) + call ForGroup(g, function UpdateEachStockBuildingEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +// Update stock inventory. +// +function PerformStockUpdates takes nothing returns nothing + local integer pickedItemId + local itemtype pickedItemType + local integer pickedItemLevel = 0 + local integer allowedCombinations = 0 + local integer iLevel + + // Give each type/level combination a chance of being picked. + set iLevel = 1 + loop + if (bj_stockAllowedPermanent[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_PERMANENT + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedCharged[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_CHARGED + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedArtifact[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_ARTIFACT + set pickedItemLevel = iLevel + endif + endif + + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Make sure we found a valid item type to add. + if (allowedCombinations == 0) then + return + endif + + call UpdateEachStockBuilding(pickedItemType, pickedItemLevel) +endfunction + +//=========================================================================== +// Perform the first update, and then arrange future updates. +// +function StartStockUpdates takes nothing returns nothing + call PerformStockUpdates() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INTERVAL, true, function PerformStockUpdates) +endfunction + +//=========================================================================== +function RemovePurchasedItem takes nothing returns nothing + call RemoveItemFromStock(GetSellingUnit(), GetItemTypeId(GetSoldItem())) +endfunction + +//=========================================================================== +function InitNeutralBuildings takes nothing returns nothing + local integer iLevel + + // Chart of allowed stock items. + set iLevel = 0 + loop + set bj_stockAllowedPermanent[iLevel] = false + set bj_stockAllowedCharged[iLevel] = false + set bj_stockAllowedArtifact[iLevel] = false + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Limit stock inventory slots. + call SetAllItemTypeSlots(bj_MAX_STOCK_ITEM_SLOTS) + call SetAllUnitTypeSlots(bj_MAX_STOCK_UNIT_SLOTS) + + // Arrange the first update. + set bj_stockUpdateTimer = CreateTimer() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INITIAL_DELAY, false, function StartStockUpdates) + + // Set up a trigger to fire whenever an item is sold. + set bj_stockItemPurchased = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(bj_stockItemPurchased, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL_ITEM, null) + call TriggerAddAction(bj_stockItemPurchased, function RemovePurchasedItem) +endfunction + +//=========================================================================== +function MarkGameStarted takes nothing returns nothing + set bj_gameStarted = true + call DestroyTimer(bj_gameStartedTimer) +endfunction + +//=========================================================================== +function DetectGameStarted takes nothing returns nothing + set bj_gameStartedTimer = CreateTimer() + call TimerStart(bj_gameStartedTimer, bj_GAME_STARTED_THRESHOLD, false, function MarkGameStarted) +endfunction + +//=========================================================================== +function InitBlizzard takes nothing returns nothing + // Set up the Neutral Victim player slot, to torture the abandoned units + // of defeated players. Since some triggers expect this player slot to + // exist, this is performed for all maps. + call ConfigureNeutralVictim() + + call InitBlizzardGlobals() + call InitQueuedTriggers() + call InitRescuableBehaviorBJ() + call InitDNCSounds() + call InitMapRects() + call InitSummonableCaps() + call InitNeutralBuildings() + call DetectGameStarted() +endfunction + + + +//*************************************************************************** +//* +//* Random distribution +//* +//* Used to select a random object from a given distribution of chances +//* +//* - RandomDistReset clears the distribution list +//* +//* - RandomDistAddItem adds a new object to the distribution list +//* with a given identifier and an integer chance to be chosen +//* +//* - RandomDistChoose will use the current distribution list to choose +//* one of the objects randomly based on the chance distribution +//* +//* Note that the chances are effectively normalized by their sum, +//* so only the relative values of each chance are important +//* +//*************************************************************************** + +//=========================================================================== +function RandomDistReset takes nothing returns nothing + set bj_randDistCount = 0 +endfunction + +//=========================================================================== +function RandomDistAddItem takes integer inID, integer inChance returns nothing + set bj_randDistID[bj_randDistCount] = inID + set bj_randDistChance[bj_randDistCount] = inChance + set bj_randDistCount = bj_randDistCount + 1 +endfunction + +//=========================================================================== +function RandomDistChoose takes nothing returns integer + local integer sum = 0 + local integer chance = 0 + local integer index + local integer foundID = -1 + local boolean done + + // No items? + if (bj_randDistCount == 0) then + return -1 + endif + + // Find sum of all chances + set index = 0 + loop + set sum = sum + bj_randDistChance[index] + + set index = index + 1 + exitwhen index == bj_randDistCount + endloop + + // Choose random number within the total range + set chance = GetRandomInt(1, sum) + + // Find ID which corresponds to this chance + set index = 0 + set sum = 0 + set done = false + loop + set sum = sum + bj_randDistChance[index] + + if (chance <= sum) then + set foundID = bj_randDistID[index] + set done = true + endif + + set index = index + 1 + if (index == bj_randDistCount) then + set done = true + endif + + exitwhen done == true + endloop + + return foundID +endfunction + + + +//*************************************************************************** +//* +//* Drop item +//* +//* Makes the given unit drop the given item +//* +//* Note: This could potentially cause problems if the unit is standing +//* right on the edge of an unpathable area and happens to drop the +//* item into the unpathable area where nobody can get it... +//* +//*************************************************************************** + +function UnitDropItem takes unit inUnit, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real unitX + local real unitY + local item droppedItem + + if (inItemID == -1) then + return null + endif + + set unitX = GetUnitX(inUnit) + set unitY = GetUnitY(inUnit) + + set x = GetRandomReal(unitX - radius, unitX + radius) + set y = GetRandomReal(unitY - radius, unitY + radius) + + set droppedItem = CreateItem(inItemID, x, y) + + call SetItemDropID(droppedItem, GetUnitTypeId(inUnit)) + call UpdateStockAvailability(droppedItem) + + return droppedItem +endfunction + +//=========================================================================== +function WidgetDropItem takes widget inWidget, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real widgetX + local real widgetY + + if (inItemID == -1) then + return null + endif + + set widgetX = GetWidgetX(inWidget) + set widgetY = GetWidgetY(inWidget) + + set x = GetRandomReal(widgetX - radius, widgetX + radius) + set y = GetRandomReal(widgetY - radius, widgetY + radius) + + return CreateItem(inItemID, x, y) +endfunction diff --git a/jass/system/ht/common.j b/jass/system/ht/common.j new file mode 100644 index 0000000..2672d21 --- /dev/null +++ b/jass/system/ht/common.j @@ -0,0 +1,2417 @@ +//============================================================================ +// Native types. All native functions take extended handle types when +// possible to help prevent passing bad values to native functions +// +type agent extends handle // all reference counted objects +type event extends agent // a reference to an event registration +type player extends agent // a single player reference +type widget extends agent // an interactive game object with life +type unit extends widget // a single unit reference +type destructable extends widget +type item extends widget +type ability extends agent +type buff extends ability +type force extends agent +type group extends agent +type trigger extends agent +type triggercondition extends agent +type triggeraction extends handle +type timer extends agent +type location extends agent +type region extends agent +type rect extends agent +type boolexpr extends agent +type sound extends agent +type conditionfunc extends boolexpr +type filterfunc extends boolexpr +type unitpool extends handle +type itempool extends handle +type race extends handle +type alliancetype extends handle +type racepreference extends handle +type gamestate extends handle +type igamestate extends gamestate +type fgamestate extends gamestate +type playerstate extends handle +type playerscore extends handle +type playergameresult extends handle +type unitstate extends handle +type aidifficulty extends handle + +type eventid extends handle +type gameevent extends eventid +type playerevent extends eventid +type playerunitevent extends eventid +type unitevent extends eventid +type limitop extends eventid +type widgetevent extends eventid +type dialogevent extends eventid +type unittype extends handle + +type gamespeed extends handle +type gamedifficulty extends handle +type gametype extends handle +type mapflag extends handle +type mapvisibility extends handle +type mapsetting extends handle +type mapdensity extends handle +type mapcontrol extends handle +type playerslotstate extends handle +type volumegroup extends handle +type camerafield extends handle +type camerasetup extends handle +type playercolor extends handle +type placement extends handle +type startlocprio extends handle +type raritycontrol extends handle +type blendmode extends handle +type texmapflags extends handle +type effect extends agent +type effecttype extends handle +type weathereffect extends handle +type terraindeformation extends handle +type fogstate extends handle +type fogmodifier extends agent +type dialog extends agent +type button extends agent +type quest extends agent +type questitem extends agent +type defeatcondition extends agent +type timerdialog extends agent +type leaderboard extends agent +type multiboard extends agent +type multiboarditem extends agent +type trackable extends agent +type gamecache extends agent +type version extends handle +type itemtype extends handle +type texttag extends handle +type attacktype extends handle +type damagetype extends handle +type weapontype extends handle +type soundtype extends handle +type lightning extends handle +type pathingtype extends handle +type image extends handle +type ubersplat extends handle +type hashtable extends agent + +constant native ConvertRace takes integer i returns race +constant native ConvertAllianceType takes integer i returns alliancetype +constant native ConvertRacePref takes integer i returns racepreference +constant native ConvertIGameState takes integer i returns igamestate +constant native ConvertFGameState takes integer i returns fgamestate +constant native ConvertPlayerState takes integer i returns playerstate +constant native ConvertPlayerScore takes integer i returns playerscore +constant native ConvertPlayerGameResult takes integer i returns playergameresult +constant native ConvertUnitState takes integer i returns unitstate +constant native ConvertAIDifficulty takes integer i returns aidifficulty +constant native ConvertGameEvent takes integer i returns gameevent +constant native ConvertPlayerEvent takes integer i returns playerevent +constant native ConvertPlayerUnitEvent takes integer i returns playerunitevent +constant native ConvertWidgetEvent takes integer i returns widgetevent +constant native ConvertDialogEvent takes integer i returns dialogevent +constant native ConvertUnitEvent takes integer i returns unitevent +constant native ConvertLimitOp takes integer i returns limitop +constant native ConvertUnitType takes integer i returns unittype +constant native ConvertGameSpeed takes integer i returns gamespeed +constant native ConvertPlacement takes integer i returns placement +constant native ConvertStartLocPrio takes integer i returns startlocprio +constant native ConvertGameDifficulty takes integer i returns gamedifficulty +constant native ConvertGameType takes integer i returns gametype +constant native ConvertMapFlag takes integer i returns mapflag +constant native ConvertMapVisibility takes integer i returns mapvisibility +constant native ConvertMapSetting takes integer i returns mapsetting +constant native ConvertMapDensity takes integer i returns mapdensity +constant native ConvertMapControl takes integer i returns mapcontrol +constant native ConvertPlayerColor takes integer i returns playercolor +constant native ConvertPlayerSlotState takes integer i returns playerslotstate +constant native ConvertVolumeGroup takes integer i returns volumegroup +constant native ConvertCameraField takes integer i returns camerafield +constant native ConvertBlendMode takes integer i returns blendmode +constant native ConvertRarityControl takes integer i returns raritycontrol +constant native ConvertTexMapFlags takes integer i returns texmapflags +constant native ConvertFogState takes integer i returns fogstate +constant native ConvertEffectType takes integer i returns effecttype +constant native ConvertVersion takes integer i returns version +constant native ConvertItemType takes integer i returns itemtype +constant native ConvertAttackType takes integer i returns attacktype +constant native ConvertDamageType takes integer i returns damagetype +constant native ConvertWeaponType takes integer i returns weapontype +constant native ConvertSoundType takes integer i returns soundtype +constant native ConvertPathingType takes integer i returns pathingtype + +constant native OrderId takes string orderIdString returns integer +constant native OrderId2String takes integer orderId returns string +constant native UnitId takes string unitIdString returns integer +constant native UnitId2String takes integer unitId returns string + +// Not currently working correctly... +constant native AbilityId takes string abilityIdString returns integer +constant native AbilityId2String takes integer abilityId returns string + +// Looks up the "name" field for any object (unit, item, ability) +constant native GetObjectName takes integer objectId returns string + +globals + +//=================================================== +// Game Constants +//=================================================== + + // pfff + constant boolean FALSE = false + constant boolean TRUE = true + constant integer JASS_MAX_ARRAY_SIZE = 8192 + + constant integer PLAYER_NEUTRAL_PASSIVE = 15 + constant integer PLAYER_NEUTRAL_AGGRESSIVE = 12 + + constant playercolor PLAYER_COLOR_RED = ConvertPlayerColor(0) + constant playercolor PLAYER_COLOR_BLUE = ConvertPlayerColor(1) + constant playercolor PLAYER_COLOR_CYAN = ConvertPlayerColor(2) + constant playercolor PLAYER_COLOR_PURPLE = ConvertPlayerColor(3) + constant playercolor PLAYER_COLOR_YELLOW = ConvertPlayerColor(4) + constant playercolor PLAYER_COLOR_ORANGE = ConvertPlayerColor(5) + constant playercolor PLAYER_COLOR_GREEN = ConvertPlayerColor(6) + constant playercolor PLAYER_COLOR_PINK = ConvertPlayerColor(7) + constant playercolor PLAYER_COLOR_LIGHT_GRAY = ConvertPlayerColor(8) + constant playercolor PLAYER_COLOR_LIGHT_BLUE = ConvertPlayerColor(9) + constant playercolor PLAYER_COLOR_AQUA = ConvertPlayerColor(10) + constant playercolor PLAYER_COLOR_BROWN = ConvertPlayerColor(11) + + constant race RACE_HUMAN = ConvertRace(1) + constant race RACE_ORC = ConvertRace(2) + constant race RACE_UNDEAD = ConvertRace(3) + constant race RACE_NIGHTELF = ConvertRace(4) + constant race RACE_DEMON = ConvertRace(5) + constant race RACE_OTHER = ConvertRace(7) + + constant playergameresult PLAYER_GAME_RESULT_VICTORY = ConvertPlayerGameResult(0) + constant playergameresult PLAYER_GAME_RESULT_DEFEAT = ConvertPlayerGameResult(1) + constant playergameresult PLAYER_GAME_RESULT_TIE = ConvertPlayerGameResult(2) + constant playergameresult PLAYER_GAME_RESULT_NEUTRAL = ConvertPlayerGameResult(3) + + constant alliancetype ALLIANCE_PASSIVE = ConvertAllianceType(0) + constant alliancetype ALLIANCE_HELP_REQUEST = ConvertAllianceType(1) + constant alliancetype ALLIANCE_HELP_RESPONSE = ConvertAllianceType(2) + constant alliancetype ALLIANCE_SHARED_XP = ConvertAllianceType(3) + constant alliancetype ALLIANCE_SHARED_SPELLS = ConvertAllianceType(4) + constant alliancetype ALLIANCE_SHARED_VISION = ConvertAllianceType(5) + constant alliancetype ALLIANCE_SHARED_CONTROL = ConvertAllianceType(6) + constant alliancetype ALLIANCE_SHARED_ADVANCED_CONTROL= ConvertAllianceType(7) + constant alliancetype ALLIANCE_RESCUABLE = ConvertAllianceType(8) + constant alliancetype ALLIANCE_SHARED_VISION_FORCED = ConvertAllianceType(9) + + constant version VERSION_REIGN_OF_CHAOS = ConvertVersion(0) + constant version VERSION_FROZEN_THRONE = ConvertVersion(1) + + constant attacktype ATTACK_TYPE_NORMAL = ConvertAttackType(0) + constant attacktype ATTACK_TYPE_MELEE = ConvertAttackType(1) + constant attacktype ATTACK_TYPE_PIERCE = ConvertAttackType(2) + constant attacktype ATTACK_TYPE_SIEGE = ConvertAttackType(3) + constant attacktype ATTACK_TYPE_MAGIC = ConvertAttackType(4) + constant attacktype ATTACK_TYPE_CHAOS = ConvertAttackType(5) + constant attacktype ATTACK_TYPE_HERO = ConvertAttackType(6) + + constant damagetype DAMAGE_TYPE_UNKNOWN = ConvertDamageType(0) + constant damagetype DAMAGE_TYPE_NORMAL = ConvertDamageType(4) + constant damagetype DAMAGE_TYPE_ENHANCED = ConvertDamageType(5) + constant damagetype DAMAGE_TYPE_FIRE = ConvertDamageType(8) + constant damagetype DAMAGE_TYPE_COLD = ConvertDamageType(9) + constant damagetype DAMAGE_TYPE_LIGHTNING = ConvertDamageType(10) + constant damagetype DAMAGE_TYPE_POISON = ConvertDamageType(11) + constant damagetype DAMAGE_TYPE_DISEASE = ConvertDamageType(12) + constant damagetype DAMAGE_TYPE_DIVINE = ConvertDamageType(13) + constant damagetype DAMAGE_TYPE_MAGIC = ConvertDamageType(14) + constant damagetype DAMAGE_TYPE_SONIC = ConvertDamageType(15) + constant damagetype DAMAGE_TYPE_ACID = ConvertDamageType(16) + constant damagetype DAMAGE_TYPE_FORCE = ConvertDamageType(17) + constant damagetype DAMAGE_TYPE_DEATH = ConvertDamageType(18) + constant damagetype DAMAGE_TYPE_MIND = ConvertDamageType(19) + constant damagetype DAMAGE_TYPE_PLANT = ConvertDamageType(20) + constant damagetype DAMAGE_TYPE_DEFENSIVE = ConvertDamageType(21) + constant damagetype DAMAGE_TYPE_DEMOLITION = ConvertDamageType(22) + constant damagetype DAMAGE_TYPE_SLOW_POISON = ConvertDamageType(23) + constant damagetype DAMAGE_TYPE_SPIRIT_LINK = ConvertDamageType(24) + constant damagetype DAMAGE_TYPE_SHADOW_STRIKE = ConvertDamageType(25) + constant damagetype DAMAGE_TYPE_UNIVERSAL = ConvertDamageType(26) + + constant weapontype WEAPON_TYPE_WHOKNOWS = ConvertWeaponType(0) + constant weapontype WEAPON_TYPE_METAL_LIGHT_CHOP = ConvertWeaponType(1) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_CHOP = ConvertWeaponType(2) + constant weapontype WEAPON_TYPE_METAL_HEAVY_CHOP = ConvertWeaponType(3) + constant weapontype WEAPON_TYPE_METAL_LIGHT_SLICE = ConvertWeaponType(4) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_SLICE = ConvertWeaponType(5) + constant weapontype WEAPON_TYPE_METAL_HEAVY_SLICE = ConvertWeaponType(6) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_BASH = ConvertWeaponType(7) + constant weapontype WEAPON_TYPE_METAL_HEAVY_BASH = ConvertWeaponType(8) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_STAB = ConvertWeaponType(9) + constant weapontype WEAPON_TYPE_METAL_HEAVY_STAB = ConvertWeaponType(10) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_SLICE = ConvertWeaponType(11) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_SLICE = ConvertWeaponType(12) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_SLICE = ConvertWeaponType(13) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_BASH = ConvertWeaponType(14) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_BASH = ConvertWeaponType(15) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_BASH = ConvertWeaponType(16) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_STAB = ConvertWeaponType(17) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_STAB = ConvertWeaponType(18) + constant weapontype WEAPON_TYPE_CLAW_LIGHT_SLICE = ConvertWeaponType(19) + constant weapontype WEAPON_TYPE_CLAW_MEDIUM_SLICE = ConvertWeaponType(20) + constant weapontype WEAPON_TYPE_CLAW_HEAVY_SLICE = ConvertWeaponType(21) + constant weapontype WEAPON_TYPE_AXE_MEDIUM_CHOP = ConvertWeaponType(22) + constant weapontype WEAPON_TYPE_ROCK_HEAVY_BASH = ConvertWeaponType(23) + + constant pathingtype PATHING_TYPE_ANY = ConvertPathingType(0) + constant pathingtype PATHING_TYPE_WALKABILITY = ConvertPathingType(1) + constant pathingtype PATHING_TYPE_FLYABILITY = ConvertPathingType(2) + constant pathingtype PATHING_TYPE_BUILDABILITY = ConvertPathingType(3) + constant pathingtype PATHING_TYPE_PEONHARVESTPATHING = ConvertPathingType(4) + constant pathingtype PATHING_TYPE_BLIGHTPATHING = ConvertPathingType(5) + constant pathingtype PATHING_TYPE_FLOATABILITY = ConvertPathingType(6) + constant pathingtype PATHING_TYPE_AMPHIBIOUSPATHING = ConvertPathingType(7) + +//=================================================== +// Map Setup Constants +//=================================================== + + constant racepreference RACE_PREF_HUMAN = ConvertRacePref(1) + constant racepreference RACE_PREF_ORC = ConvertRacePref(2) + constant racepreference RACE_PREF_NIGHTELF = ConvertRacePref(4) + constant racepreference RACE_PREF_UNDEAD = ConvertRacePref(8) + constant racepreference RACE_PREF_DEMON = ConvertRacePref(16) + constant racepreference RACE_PREF_RANDOM = ConvertRacePref(32) + constant racepreference RACE_PREF_USER_SELECTABLE = ConvertRacePref(64) + + constant mapcontrol MAP_CONTROL_USER = ConvertMapControl(0) + constant mapcontrol MAP_CONTROL_COMPUTER = ConvertMapControl(1) + constant mapcontrol MAP_CONTROL_RESCUABLE = ConvertMapControl(2) + constant mapcontrol MAP_CONTROL_NEUTRAL = ConvertMapControl(3) + constant mapcontrol MAP_CONTROL_CREEP = ConvertMapControl(4) + constant mapcontrol MAP_CONTROL_NONE = ConvertMapControl(5) + + constant gametype GAME_TYPE_MELEE = ConvertGameType(1) + constant gametype GAME_TYPE_FFA = ConvertGameType(2) + constant gametype GAME_TYPE_USE_MAP_SETTINGS = ConvertGameType(4) + constant gametype GAME_TYPE_BLIZ = ConvertGameType(8) + constant gametype GAME_TYPE_ONE_ON_ONE = ConvertGameType(16) + constant gametype GAME_TYPE_TWO_TEAM_PLAY = ConvertGameType(32) + constant gametype GAME_TYPE_THREE_TEAM_PLAY = ConvertGameType(64) + constant gametype GAME_TYPE_FOUR_TEAM_PLAY = ConvertGameType(128) + + constant mapflag MAP_FOG_HIDE_TERRAIN = ConvertMapFlag(1) + constant mapflag MAP_FOG_MAP_EXPLORED = ConvertMapFlag(2) + constant mapflag MAP_FOG_ALWAYS_VISIBLE = ConvertMapFlag(4) + + constant mapflag MAP_USE_HANDICAPS = ConvertMapFlag(8) + constant mapflag MAP_OBSERVERS = ConvertMapFlag(16) + constant mapflag MAP_OBSERVERS_ON_DEATH = ConvertMapFlag(32) + + constant mapflag MAP_FIXED_COLORS = ConvertMapFlag(128) + + constant mapflag MAP_LOCK_RESOURCE_TRADING = ConvertMapFlag(256) + constant mapflag MAP_RESOURCE_TRADING_ALLIES_ONLY = ConvertMapFlag(512) + + constant mapflag MAP_LOCK_ALLIANCE_CHANGES = ConvertMapFlag(1024) + constant mapflag MAP_ALLIANCE_CHANGES_HIDDEN = ConvertMapFlag(2048) + + constant mapflag MAP_CHEATS = ConvertMapFlag(4096) + constant mapflag MAP_CHEATS_HIDDEN = ConvertMapFlag(8192) + + constant mapflag MAP_LOCK_SPEED = ConvertMapFlag(8192*2) + constant mapflag MAP_LOCK_RANDOM_SEED = ConvertMapFlag(8192*4) + constant mapflag MAP_SHARED_ADVANCED_CONTROL = ConvertMapFlag(8192*8) + constant mapflag MAP_RANDOM_HERO = ConvertMapFlag(8192*16) + constant mapflag MAP_RANDOM_RACES = ConvertMapFlag(8192*32) + constant mapflag MAP_RELOADED = ConvertMapFlag(8192*64) + + constant placement MAP_PLACEMENT_RANDOM = ConvertPlacement(0) // random among all slots + constant placement MAP_PLACEMENT_FIXED = ConvertPlacement(1) // player 0 in start loc 0... + constant placement MAP_PLACEMENT_USE_MAP_SETTINGS = ConvertPlacement(2) // whatever was specified by the script + constant placement MAP_PLACEMENT_TEAMS_TOGETHER = ConvertPlacement(3) // random with allies next to each other + + constant startlocprio MAP_LOC_PRIO_LOW = ConvertStartLocPrio(0) + constant startlocprio MAP_LOC_PRIO_HIGH = ConvertStartLocPrio(1) + constant startlocprio MAP_LOC_PRIO_NOT = ConvertStartLocPrio(2) + + constant mapdensity MAP_DENSITY_NONE = ConvertMapDensity(0) + constant mapdensity MAP_DENSITY_LIGHT = ConvertMapDensity(1) + constant mapdensity MAP_DENSITY_MEDIUM = ConvertMapDensity(2) + constant mapdensity MAP_DENSITY_HEAVY = ConvertMapDensity(3) + + constant gamedifficulty MAP_DIFFICULTY_EASY = ConvertGameDifficulty(0) + constant gamedifficulty MAP_DIFFICULTY_NORMAL = ConvertGameDifficulty(1) + constant gamedifficulty MAP_DIFFICULTY_HARD = ConvertGameDifficulty(2) + constant gamedifficulty MAP_DIFFICULTY_INSANE = ConvertGameDifficulty(3) + + constant gamespeed MAP_SPEED_SLOWEST = ConvertGameSpeed(0) + constant gamespeed MAP_SPEED_SLOW = ConvertGameSpeed(1) + constant gamespeed MAP_SPEED_NORMAL = ConvertGameSpeed(2) + constant gamespeed MAP_SPEED_FAST = ConvertGameSpeed(3) + constant gamespeed MAP_SPEED_FASTEST = ConvertGameSpeed(4) + + constant playerslotstate PLAYER_SLOT_STATE_EMPTY = ConvertPlayerSlotState(0) + constant playerslotstate PLAYER_SLOT_STATE_PLAYING = ConvertPlayerSlotState(1) + constant playerslotstate PLAYER_SLOT_STATE_LEFT = ConvertPlayerSlotState(2) + +//=================================================== +// Sound Constants +//=================================================== + constant volumegroup SOUND_VOLUMEGROUP_UNITMOVEMENT = ConvertVolumeGroup(0) + constant volumegroup SOUND_VOLUMEGROUP_UNITSOUNDS = ConvertVolumeGroup(1) + constant volumegroup SOUND_VOLUMEGROUP_COMBAT = ConvertVolumeGroup(2) + constant volumegroup SOUND_VOLUMEGROUP_SPELLS = ConvertVolumeGroup(3) + constant volumegroup SOUND_VOLUMEGROUP_UI = ConvertVolumeGroup(4) + constant volumegroup SOUND_VOLUMEGROUP_MUSIC = ConvertVolumeGroup(5) + constant volumegroup SOUND_VOLUMEGROUP_AMBIENTSOUNDS = ConvertVolumeGroup(6) + constant volumegroup SOUND_VOLUMEGROUP_FIRE = ConvertVolumeGroup(7) + + +//=================================================== +// Game, Player, and Unit States +// +// For use with TriggerRegisterStateEvent +// +//=================================================== + + constant igamestate GAME_STATE_DIVINE_INTERVENTION = ConvertIGameState(0) + constant igamestate GAME_STATE_DISCONNECTED = ConvertIGameState(1) + constant fgamestate GAME_STATE_TIME_OF_DAY = ConvertFGameState(2) + + constant playerstate PLAYER_STATE_GAME_RESULT = ConvertPlayerState(0) + + // current resource levels + // + constant playerstate PLAYER_STATE_RESOURCE_GOLD = ConvertPlayerState(1) + constant playerstate PLAYER_STATE_RESOURCE_LUMBER = ConvertPlayerState(2) + constant playerstate PLAYER_STATE_RESOURCE_HERO_TOKENS = ConvertPlayerState(3) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_CAP = ConvertPlayerState(4) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_USED = ConvertPlayerState(5) + constant playerstate PLAYER_STATE_FOOD_CAP_CEILING = ConvertPlayerState(6) + + constant playerstate PLAYER_STATE_GIVES_BOUNTY = ConvertPlayerState(7) + constant playerstate PLAYER_STATE_ALLIED_VICTORY = ConvertPlayerState(8) + constant playerstate PLAYER_STATE_PLACED = ConvertPlayerState(9) + constant playerstate PLAYER_STATE_OBSERVER_ON_DEATH = ConvertPlayerState(10) + constant playerstate PLAYER_STATE_OBSERVER = ConvertPlayerState(11) + constant playerstate PLAYER_STATE_UNFOLLOWABLE = ConvertPlayerState(12) + + // taxation rate for each resource + // + constant playerstate PLAYER_STATE_GOLD_UPKEEP_RATE = ConvertPlayerState(13) + constant playerstate PLAYER_STATE_LUMBER_UPKEEP_RATE = ConvertPlayerState(14) + + // cumulative resources collected by the player during the mission + // + constant playerstate PLAYER_STATE_GOLD_GATHERED = ConvertPlayerState(15) + constant playerstate PLAYER_STATE_LUMBER_GATHERED = ConvertPlayerState(16) + + constant playerstate PLAYER_STATE_NO_CREEP_SLEEP = ConvertPlayerState(25) + + constant unitstate UNIT_STATE_LIFE = ConvertUnitState(0) + constant unitstate UNIT_STATE_MAX_LIFE = ConvertUnitState(1) + constant unitstate UNIT_STATE_MANA = ConvertUnitState(2) + constant unitstate UNIT_STATE_MAX_MANA = ConvertUnitState(3) + + constant aidifficulty AI_DIFFICULTY_NEWBIE = ConvertAIDifficulty(0) + constant aidifficulty AI_DIFFICULTY_NORMAL = ConvertAIDifficulty(1) + constant aidifficulty AI_DIFFICULTY_INSANE = ConvertAIDifficulty(2) + + // player score values + constant playerscore PLAYER_SCORE_UNITS_TRAINED = ConvertPlayerScore(0) + constant playerscore PLAYER_SCORE_UNITS_KILLED = ConvertPlayerScore(1) + constant playerscore PLAYER_SCORE_STRUCT_BUILT = ConvertPlayerScore(2) + constant playerscore PLAYER_SCORE_STRUCT_RAZED = ConvertPlayerScore(3) + constant playerscore PLAYER_SCORE_TECH_PERCENT = ConvertPlayerScore(4) + constant playerscore PLAYER_SCORE_FOOD_MAXPROD = ConvertPlayerScore(5) + constant playerscore PLAYER_SCORE_FOOD_MAXUSED = ConvertPlayerScore(6) + constant playerscore PLAYER_SCORE_HEROES_KILLED = ConvertPlayerScore(7) + constant playerscore PLAYER_SCORE_ITEMS_GAINED = ConvertPlayerScore(8) + constant playerscore PLAYER_SCORE_MERCS_HIRED = ConvertPlayerScore(9) + constant playerscore PLAYER_SCORE_GOLD_MINED_TOTAL = ConvertPlayerScore(10) + constant playerscore PLAYER_SCORE_GOLD_MINED_UPKEEP = ConvertPlayerScore(11) + constant playerscore PLAYER_SCORE_GOLD_LOST_UPKEEP = ConvertPlayerScore(12) + constant playerscore PLAYER_SCORE_GOLD_LOST_TAX = ConvertPlayerScore(13) + constant playerscore PLAYER_SCORE_GOLD_GIVEN = ConvertPlayerScore(14) + constant playerscore PLAYER_SCORE_GOLD_RECEIVED = ConvertPlayerScore(15) + constant playerscore PLAYER_SCORE_LUMBER_TOTAL = ConvertPlayerScore(16) + constant playerscore PLAYER_SCORE_LUMBER_LOST_UPKEEP = ConvertPlayerScore(17) + constant playerscore PLAYER_SCORE_LUMBER_LOST_TAX = ConvertPlayerScore(18) + constant playerscore PLAYER_SCORE_LUMBER_GIVEN = ConvertPlayerScore(19) + constant playerscore PLAYER_SCORE_LUMBER_RECEIVED = ConvertPlayerScore(20) + constant playerscore PLAYER_SCORE_UNIT_TOTAL = ConvertPlayerScore(21) + constant playerscore PLAYER_SCORE_HERO_TOTAL = ConvertPlayerScore(22) + constant playerscore PLAYER_SCORE_RESOURCE_TOTAL = ConvertPlayerScore(23) + constant playerscore PLAYER_SCORE_TOTAL = ConvertPlayerScore(24) + +//=================================================== +// Game, Player and Unit Events +// +// When an event causes a trigger to fire these +// values allow the action code to determine which +// event was dispatched and therefore which set of +// native functions should be used to get information +// about the event. +// +// Do NOT change the order or value of these constants +// without insuring that the JASS_GAME_EVENTS_WAR3 enum +// is changed to match. +// +//=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_VICTORY = ConvertGameEvent(0) + constant gameevent EVENT_GAME_END_LEVEL = ConvertGameEvent(1) + + constant gameevent EVENT_GAME_VARIABLE_LIMIT = ConvertGameEvent(2) + constant gameevent EVENT_GAME_STATE_LIMIT = ConvertGameEvent(3) + + constant gameevent EVENT_GAME_TIMER_EXPIRED = ConvertGameEvent(4) + + constant gameevent EVENT_GAME_ENTER_REGION = ConvertGameEvent(5) + constant gameevent EVENT_GAME_LEAVE_REGION = ConvertGameEvent(6) + + constant gameevent EVENT_GAME_TRACKABLE_HIT = ConvertGameEvent(7) + constant gameevent EVENT_GAME_TRACKABLE_TRACK = ConvertGameEvent(8) + + constant gameevent EVENT_GAME_SHOW_SKILL = ConvertGameEvent(9) + constant gameevent EVENT_GAME_BUILD_SUBMENU = ConvertGameEvent(10) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + constant playerevent EVENT_PLAYER_STATE_LIMIT = ConvertPlayerEvent(11) + constant playerevent EVENT_PLAYER_ALLIANCE_CHANGED = ConvertPlayerEvent(12) + + constant playerevent EVENT_PLAYER_DEFEAT = ConvertPlayerEvent(13) + constant playerevent EVENT_PLAYER_VICTORY = ConvertPlayerEvent(14) + constant playerevent EVENT_PLAYER_LEAVE = ConvertPlayerEvent(15) + constant playerevent EVENT_PLAYER_CHAT = ConvertPlayerEvent(16) + constant playerevent EVENT_PLAYER_END_CINEMATIC = ConvertPlayerEvent(17) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_ATTACKED = ConvertPlayerUnitEvent(18) + constant playerunitevent EVENT_PLAYER_UNIT_RESCUED = ConvertPlayerUnitEvent(19) + + constant playerunitevent EVENT_PLAYER_UNIT_DEATH = ConvertPlayerUnitEvent(20) + constant playerunitevent EVENT_PLAYER_UNIT_DECAY = ConvertPlayerUnitEvent(21) + + constant playerunitevent EVENT_PLAYER_UNIT_DETECTED = ConvertPlayerUnitEvent(22) + constant playerunitevent EVENT_PLAYER_UNIT_HIDDEN = ConvertPlayerUnitEvent(23) + + constant playerunitevent EVENT_PLAYER_UNIT_SELECTED = ConvertPlayerUnitEvent(24) + constant playerunitevent EVENT_PLAYER_UNIT_DESELECTED = ConvertPlayerUnitEvent(25) + + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_START = ConvertPlayerUnitEvent(26) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL = ConvertPlayerUnitEvent(27) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_FINISH = ConvertPlayerUnitEvent(28) + + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_START = ConvertPlayerUnitEvent(29) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_CANCEL = ConvertPlayerUnitEvent(30) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_FINISH = ConvertPlayerUnitEvent(31) + + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_START = ConvertPlayerUnitEvent(32) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_CANCEL = ConvertPlayerUnitEvent(33) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_FINISH = ConvertPlayerUnitEvent(34) + + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_START = ConvertPlayerUnitEvent(35) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_CANCEL = ConvertPlayerUnitEvent(36) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_FINISH = ConvertPlayerUnitEvent(37) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_ORDER = ConvertPlayerUnitEvent(38) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER = ConvertPlayerUnitEvent(39) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER = ConvertPlayerUnitEvent(40) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_UNIT_ORDER = ConvertPlayerUnitEvent(40) // for compat + + constant playerunitevent EVENT_PLAYER_HERO_LEVEL = ConvertPlayerUnitEvent(41) + constant playerunitevent EVENT_PLAYER_HERO_SKILL = ConvertPlayerUnitEvent(42) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVABLE = ConvertPlayerUnitEvent(43) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_START = ConvertPlayerUnitEvent(44) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_CANCEL = ConvertPlayerUnitEvent(45) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_FINISH = ConvertPlayerUnitEvent(46) + constant playerunitevent EVENT_PLAYER_UNIT_SUMMON = ConvertPlayerUnitEvent(47) + constant playerunitevent EVENT_PLAYER_UNIT_DROP_ITEM = ConvertPlayerUnitEvent(48) + constant playerunitevent EVENT_PLAYER_UNIT_PICKUP_ITEM = ConvertPlayerUnitEvent(49) + constant playerunitevent EVENT_PLAYER_UNIT_USE_ITEM = ConvertPlayerUnitEvent(50) + + constant playerunitevent EVENT_PLAYER_UNIT_LOADED = ConvertPlayerUnitEvent(51) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_DAMAGED = ConvertUnitEvent(52) + constant unitevent EVENT_UNIT_DEATH = ConvertUnitEvent(53) + constant unitevent EVENT_UNIT_DECAY = ConvertUnitEvent(54) + constant unitevent EVENT_UNIT_DETECTED = ConvertUnitEvent(55) + constant unitevent EVENT_UNIT_HIDDEN = ConvertUnitEvent(56) + constant unitevent EVENT_UNIT_SELECTED = ConvertUnitEvent(57) + constant unitevent EVENT_UNIT_DESELECTED = ConvertUnitEvent(58) + + constant unitevent EVENT_UNIT_STATE_LIMIT = ConvertUnitEvent(59) + + // Events which may have a filter for the "other unit" + // + constant unitevent EVENT_UNIT_ACQUIRED_TARGET = ConvertUnitEvent(60) + constant unitevent EVENT_UNIT_TARGET_IN_RANGE = ConvertUnitEvent(61) + constant unitevent EVENT_UNIT_ATTACKED = ConvertUnitEvent(62) + constant unitevent EVENT_UNIT_RESCUED = ConvertUnitEvent(63) + + constant unitevent EVENT_UNIT_CONSTRUCT_CANCEL = ConvertUnitEvent(64) + constant unitevent EVENT_UNIT_CONSTRUCT_FINISH = ConvertUnitEvent(65) + + constant unitevent EVENT_UNIT_UPGRADE_START = ConvertUnitEvent(66) + constant unitevent EVENT_UNIT_UPGRADE_CANCEL = ConvertUnitEvent(67) + constant unitevent EVENT_UNIT_UPGRADE_FINISH = ConvertUnitEvent(68) + + // Events which involve the specified unit performing + // training of other units + // + constant unitevent EVENT_UNIT_TRAIN_START = ConvertUnitEvent(69) + constant unitevent EVENT_UNIT_TRAIN_CANCEL = ConvertUnitEvent(70) + constant unitevent EVENT_UNIT_TRAIN_FINISH = ConvertUnitEvent(71) + + constant unitevent EVENT_UNIT_RESEARCH_START = ConvertUnitEvent(72) + constant unitevent EVENT_UNIT_RESEARCH_CANCEL = ConvertUnitEvent(73) + constant unitevent EVENT_UNIT_RESEARCH_FINISH = ConvertUnitEvent(74) + + constant unitevent EVENT_UNIT_ISSUED_ORDER = ConvertUnitEvent(75) + constant unitevent EVENT_UNIT_ISSUED_POINT_ORDER = ConvertUnitEvent(76) + constant unitevent EVENT_UNIT_ISSUED_TARGET_ORDER = ConvertUnitEvent(77) + + constant unitevent EVENT_UNIT_HERO_LEVEL = ConvertUnitEvent(78) + constant unitevent EVENT_UNIT_HERO_SKILL = ConvertUnitEvent(79) + + constant unitevent EVENT_UNIT_HERO_REVIVABLE = ConvertUnitEvent(80) + constant unitevent EVENT_UNIT_HERO_REVIVE_START = ConvertUnitEvent(81) + constant unitevent EVENT_UNIT_HERO_REVIVE_CANCEL = ConvertUnitEvent(82) + constant unitevent EVENT_UNIT_HERO_REVIVE_FINISH = ConvertUnitEvent(83) + + constant unitevent EVENT_UNIT_SUMMON = ConvertUnitEvent(84) + + constant unitevent EVENT_UNIT_DROP_ITEM = ConvertUnitEvent(85) + constant unitevent EVENT_UNIT_PICKUP_ITEM = ConvertUnitEvent(86) + constant unitevent EVENT_UNIT_USE_ITEM = ConvertUnitEvent(87) + + constant unitevent EVENT_UNIT_LOADED = ConvertUnitEvent(88) + + constant widgetevent EVENT_WIDGET_DEATH = ConvertWidgetEvent(89) + + constant dialogevent EVENT_DIALOG_BUTTON_CLICK = ConvertDialogEvent(90) + constant dialogevent EVENT_DIALOG_CLICK = ConvertDialogEvent(91) + + //=================================================== + // Frozen Throne Expansion Events + // Need to be added here to preserve compat + //=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_LOADED = ConvertGameEvent(256) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_SOON = ConvertGameEvent(257) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_NOW = ConvertGameEvent(258) + constant gameevent EVENT_GAME_SAVE = ConvertGameEvent(259) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + + constant playerevent EVENT_PLAYER_ARROW_LEFT_DOWN = ConvertPlayerEvent(261) + constant playerevent EVENT_PLAYER_ARROW_LEFT_UP = ConvertPlayerEvent(262) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_DOWN = ConvertPlayerEvent(263) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_UP = ConvertPlayerEvent(264) + constant playerevent EVENT_PLAYER_ARROW_DOWN_DOWN = ConvertPlayerEvent(265) + constant playerevent EVENT_PLAYER_ARROW_DOWN_UP = ConvertPlayerEvent(266) + constant playerevent EVENT_PLAYER_ARROW_UP_DOWN = ConvertPlayerEvent(267) + constant playerevent EVENT_PLAYER_ARROW_UP_UP = ConvertPlayerEvent(268) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_SELL = ConvertPlayerUnitEvent(269) + constant playerunitevent EVENT_PLAYER_UNIT_CHANGE_OWNER = ConvertPlayerUnitEvent(270) + constant playerunitevent EVENT_PLAYER_UNIT_SELL_ITEM = ConvertPlayerUnitEvent(271) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CHANNEL = ConvertPlayerUnitEvent(272) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CAST = ConvertPlayerUnitEvent(273) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_EFFECT = ConvertPlayerUnitEvent(274) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_FINISH = ConvertPlayerUnitEvent(275) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_ENDCAST = ConvertPlayerUnitEvent(276) + constant playerunitevent EVENT_PLAYER_UNIT_PAWN_ITEM = ConvertPlayerUnitEvent(277) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_SELL = ConvertUnitEvent(286) + constant unitevent EVENT_UNIT_CHANGE_OWNER = ConvertUnitEvent(287) + constant unitevent EVENT_UNIT_SELL_ITEM = ConvertUnitEvent(288) + constant unitevent EVENT_UNIT_SPELL_CHANNEL = ConvertUnitEvent(289) + constant unitevent EVENT_UNIT_SPELL_CAST = ConvertUnitEvent(290) + constant unitevent EVENT_UNIT_SPELL_EFFECT = ConvertUnitEvent(291) + constant unitevent EVENT_UNIT_SPELL_FINISH = ConvertUnitEvent(292) + constant unitevent EVENT_UNIT_SPELL_ENDCAST = ConvertUnitEvent(293) + constant unitevent EVENT_UNIT_PAWN_ITEM = ConvertUnitEvent(294) + + //=================================================== + // Limit Event API constants + // variable, player state, game state, and unit state events + // ( do NOT change the order of these... ) + //=================================================== + constant limitop LESS_THAN = ConvertLimitOp(0) + constant limitop LESS_THAN_OR_EQUAL = ConvertLimitOp(1) + constant limitop EQUAL = ConvertLimitOp(2) + constant limitop GREATER_THAN_OR_EQUAL = ConvertLimitOp(3) + constant limitop GREATER_THAN = ConvertLimitOp(4) + constant limitop NOT_EQUAL = ConvertLimitOp(5) + +//=================================================== +// Unit Type Constants for use with IsUnitType() +//=================================================== + + constant unittype UNIT_TYPE_HERO = ConvertUnitType(0) + constant unittype UNIT_TYPE_DEAD = ConvertUnitType(1) + constant unittype UNIT_TYPE_STRUCTURE = ConvertUnitType(2) + + constant unittype UNIT_TYPE_FLYING = ConvertUnitType(3) + constant unittype UNIT_TYPE_GROUND = ConvertUnitType(4) + + constant unittype UNIT_TYPE_ATTACKS_FLYING = ConvertUnitType(5) + constant unittype UNIT_TYPE_ATTACKS_GROUND = ConvertUnitType(6) + + constant unittype UNIT_TYPE_MELEE_ATTACKER = ConvertUnitType(7) + constant unittype UNIT_TYPE_RANGED_ATTACKER = ConvertUnitType(8) + + constant unittype UNIT_TYPE_GIANT = ConvertUnitType(9) + constant unittype UNIT_TYPE_SUMMONED = ConvertUnitType(10) + constant unittype UNIT_TYPE_STUNNED = ConvertUnitType(11) + constant unittype UNIT_TYPE_PLAGUED = ConvertUnitType(12) + constant unittype UNIT_TYPE_SNARED = ConvertUnitType(13) + + constant unittype UNIT_TYPE_UNDEAD = ConvertUnitType(14) + constant unittype UNIT_TYPE_MECHANICAL = ConvertUnitType(15) + constant unittype UNIT_TYPE_PEON = ConvertUnitType(16) + constant unittype UNIT_TYPE_SAPPER = ConvertUnitType(17) + constant unittype UNIT_TYPE_TOWNHALL = ConvertUnitType(18) + constant unittype UNIT_TYPE_ANCIENT = ConvertUnitType(19) + + constant unittype UNIT_TYPE_TAUREN = ConvertUnitType(20) + constant unittype UNIT_TYPE_POISONED = ConvertUnitType(21) + constant unittype UNIT_TYPE_POLYMORPHED = ConvertUnitType(22) + constant unittype UNIT_TYPE_SLEEPING = ConvertUnitType(23) + constant unittype UNIT_TYPE_RESISTANT = ConvertUnitType(24) + constant unittype UNIT_TYPE_ETHEREAL = ConvertUnitType(25) + constant unittype UNIT_TYPE_MAGIC_IMMUNE = ConvertUnitType(26) + +//=================================================== +// Unit Type Constants for use with ChooseRandomItemEx() +//=================================================== + + constant itemtype ITEM_TYPE_PERMANENT = ConvertItemType(0) + constant itemtype ITEM_TYPE_CHARGED = ConvertItemType(1) + constant itemtype ITEM_TYPE_POWERUP = ConvertItemType(2) + constant itemtype ITEM_TYPE_ARTIFACT = ConvertItemType(3) + constant itemtype ITEM_TYPE_PURCHASABLE = ConvertItemType(4) + constant itemtype ITEM_TYPE_CAMPAIGN = ConvertItemType(5) + constant itemtype ITEM_TYPE_MISCELLANEOUS = ConvertItemType(6) + constant itemtype ITEM_TYPE_UNKNOWN = ConvertItemType(7) + constant itemtype ITEM_TYPE_ANY = ConvertItemType(8) + + // Deprecated, should use ITEM_TYPE_POWERUP + constant itemtype ITEM_TYPE_TOME = ConvertItemType(2) + +//=================================================== +// Animatable Camera Fields +//=================================================== + + constant camerafield CAMERA_FIELD_TARGET_DISTANCE = ConvertCameraField(0) + constant camerafield CAMERA_FIELD_FARZ = ConvertCameraField(1) + constant camerafield CAMERA_FIELD_ANGLE_OF_ATTACK = ConvertCameraField(2) + constant camerafield CAMERA_FIELD_FIELD_OF_VIEW = ConvertCameraField(3) + constant camerafield CAMERA_FIELD_ROLL = ConvertCameraField(4) + constant camerafield CAMERA_FIELD_ROTATION = ConvertCameraField(5) + constant camerafield CAMERA_FIELD_ZOFFSET = ConvertCameraField(6) + + constant blendmode BLEND_MODE_NONE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_DONT_CARE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_KEYALPHA = ConvertBlendMode(1) + constant blendmode BLEND_MODE_BLEND = ConvertBlendMode(2) + constant blendmode BLEND_MODE_ADDITIVE = ConvertBlendMode(3) + constant blendmode BLEND_MODE_MODULATE = ConvertBlendMode(4) + constant blendmode BLEND_MODE_MODULATE_2X = ConvertBlendMode(5) + + constant raritycontrol RARITY_FREQUENT = ConvertRarityControl(0) + constant raritycontrol RARITY_RARE = ConvertRarityControl(1) + + constant texmapflags TEXMAP_FLAG_NONE = ConvertTexMapFlags(0) + constant texmapflags TEXMAP_FLAG_WRAP_U = ConvertTexMapFlags(1) + constant texmapflags TEXMAP_FLAG_WRAP_V = ConvertTexMapFlags(2) + constant texmapflags TEXMAP_FLAG_WRAP_UV = ConvertTexMapFlags(3) + + constant fogstate FOG_OF_WAR_MASKED = ConvertFogState(1) + constant fogstate FOG_OF_WAR_FOGGED = ConvertFogState(2) + constant fogstate FOG_OF_WAR_VISIBLE = ConvertFogState(4) + +//=================================================== +// Camera Margin constants for use with GetCameraMargin +//=================================================== + + constant integer CAMERA_MARGIN_LEFT = 0 + constant integer CAMERA_MARGIN_RIGHT = 1 + constant integer CAMERA_MARGIN_TOP = 2 + constant integer CAMERA_MARGIN_BOTTOM = 3 + +//=================================================== +// Effect API constants +//=================================================== + + constant effecttype EFFECT_TYPE_EFFECT = ConvertEffectType(0) + constant effecttype EFFECT_TYPE_TARGET = ConvertEffectType(1) + constant effecttype EFFECT_TYPE_CASTER = ConvertEffectType(2) + constant effecttype EFFECT_TYPE_SPECIAL = ConvertEffectType(3) + constant effecttype EFFECT_TYPE_AREA_EFFECT = ConvertEffectType(4) + constant effecttype EFFECT_TYPE_MISSILE = ConvertEffectType(5) + constant effecttype EFFECT_TYPE_LIGHTNING = ConvertEffectType(6) + + constant soundtype SOUND_TYPE_EFFECT = ConvertSoundType(0) + constant soundtype SOUND_TYPE_EFFECT_LOOPED = ConvertSoundType(1) + +endglobals + +//============================================================================ +// MathAPI +native Deg2Rad takes real degrees returns real +native Rad2Deg takes real radians returns real + +native Sin takes real radians returns real +native Cos takes real radians returns real +native Tan takes real radians returns real + +// Expect values between -1 and 1...returns 0 for invalid input +native Asin takes real y returns real +native Acos takes real x returns real + +native Atan takes real x returns real + +// Returns 0 if x and y are both 0 +native Atan2 takes real y, real x returns real + +// Returns 0 if x <= 0 +native SquareRoot takes real x returns real + +// computes x to the y power +// y == 0.0 => 1 +// x ==0.0 and y < 0 => 0 +// +native Pow takes real x, real power returns real + +//============================================================================ +// String Utility API +native I2R takes integer i returns real +native R2I takes real r returns integer +native I2S takes integer i returns string +native R2S takes real r returns string +native R2SW takes real r, integer width, integer precision returns string +native S2I takes string s returns integer +native S2R takes string s returns real +native GetHandleId takes handle h returns integer +native SubString takes string source, integer start, integer end returns string +native StringLength takes string s returns integer +native StringCase takes string source, boolean upper returns string +native StringHash takes string s returns integer + +native GetLocalizedString takes string source returns string +native GetLocalizedHotkey takes string source returns integer + +//============================================================================ +// Map Setup API +// +// These are native functions for describing the map configuration +// these funcs should only be used in the "config" function of +// a map script. The functions should also be called in this order +// ( i.e. call SetPlayers before SetPlayerColor... +// + +native SetMapName takes string name returns nothing +native SetMapDescription takes string description returns nothing + +native SetTeams takes integer teamcount returns nothing +native SetPlayers takes integer playercount returns nothing + +native DefineStartLocation takes integer whichStartLoc, real x, real y returns nothing +native DefineStartLocationLoc takes integer whichStartLoc, location whichLocation returns nothing +native SetStartLocPrioCount takes integer whichStartLoc, integer prioSlotCount returns nothing +native SetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex, integer otherStartLocIndex, startlocprio priority returns nothing +native GetStartLocPrioSlot takes integer whichStartLoc, integer prioSlotIndex returns integer +native GetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex returns startlocprio + +native SetGameTypeSupported takes gametype whichGameType, boolean value returns nothing +native SetMapFlag takes mapflag whichMapFlag, boolean value returns nothing +native SetGamePlacement takes placement whichPlacementType returns nothing +native SetGameSpeed takes gamespeed whichspeed returns nothing +native SetGameDifficulty takes gamedifficulty whichdifficulty returns nothing +native SetResourceDensity takes mapdensity whichdensity returns nothing +native SetCreatureDensity takes mapdensity whichdensity returns nothing + +native GetTeams takes nothing returns integer +native GetPlayers takes nothing returns integer + +native IsGameTypeSupported takes gametype whichGameType returns boolean +native GetGameTypeSelected takes nothing returns gametype +native IsMapFlagSet takes mapflag whichMapFlag returns boolean + +constant native GetGamePlacement takes nothing returns placement +constant native GetGameSpeed takes nothing returns gamespeed +constant native GetGameDifficulty takes nothing returns gamedifficulty +constant native GetResourceDensity takes nothing returns mapdensity +constant native GetCreatureDensity takes nothing returns mapdensity +constant native GetStartLocationX takes integer whichStartLocation returns real +constant native GetStartLocationY takes integer whichStartLocation returns real +constant native GetStartLocationLoc takes integer whichStartLocation returns location + + +native SetPlayerTeam takes player whichPlayer, integer whichTeam returns nothing +native SetPlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +// forces player to have the specified start loc and marks the start loc as occupied +// which removes it from consideration for subsequently placed players +// ( i.e. you can use this to put people in a fixed loc and then +// use random placement for any unplaced players etc ) +native ForcePlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +native SetPlayerColor takes player whichPlayer, playercolor color returns nothing +native SetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting, boolean value returns nothing +native SetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource, integer rate returns nothing +native SetPlayerRacePreference takes player whichPlayer, racepreference whichRacePreference returns nothing +native SetPlayerRaceSelectable takes player whichPlayer, boolean value returns nothing +native SetPlayerController takes player whichPlayer, mapcontrol controlType returns nothing +native SetPlayerName takes player whichPlayer, string name returns nothing + +native SetPlayerOnScoreScreen takes player whichPlayer, boolean flag returns nothing + +native GetPlayerTeam takes player whichPlayer returns integer +native GetPlayerStartLocation takes player whichPlayer returns integer +native GetPlayerColor takes player whichPlayer returns playercolor +native GetPlayerSelectable takes player whichPlayer returns boolean +native GetPlayerController takes player whichPlayer returns mapcontrol +native GetPlayerSlotState takes player whichPlayer returns playerslotstate +native GetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource returns integer +native IsPlayerRacePrefSet takes player whichPlayer, racepreference pref returns boolean +native GetPlayerName takes player whichPlayer returns string + +//============================================================================ +// Timer API +// +native CreateTimer takes nothing returns timer +native DestroyTimer takes timer whichTimer returns nothing +native TimerStart takes timer whichTimer, real timeout, boolean periodic, code handlerFunc returns nothing +native TimerGetElapsed takes timer whichTimer returns real +native TimerGetRemaining takes timer whichTimer returns real +native TimerGetTimeout takes timer whichTimer returns real +native PauseTimer takes timer whichTimer returns nothing +native ResumeTimer takes timer whichTimer returns nothing +native GetExpiredTimer takes nothing returns timer + +//============================================================================ +// Group API +// +native CreateGroup takes nothing returns group +native DestroyGroup takes group whichGroup returns nothing +native GroupAddUnit takes group whichGroup, unit whichUnit returns nothing +native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing +native GroupClear takes group whichGroup returns nothing +native GroupEnumUnitsOfType takes group whichGroup, string unitname, boolexpr filter returns nothing +native GroupEnumUnitsOfPlayer takes group whichGroup, player whichPlayer, boolexpr filter returns nothing +native GroupEnumUnitsOfTypeCounted takes group whichGroup, string unitname, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRect takes group whichGroup, rect r, boolexpr filter returns nothing +native GroupEnumUnitsInRectCounted takes group whichGroup, rect r, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRange takes group whichGroup, real x, real y, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeOfLoc takes group whichGroup, location whichLocation, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeCounted takes group whichGroup, real x, real y, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRangeOfLocCounted takes group whichGroup, location whichLocation, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsSelected takes group whichGroup, player whichPlayer, boolexpr filter returns nothing + +native GroupImmediateOrder takes group whichGroup, string order returns boolean +native GroupImmediateOrderById takes group whichGroup, integer order returns boolean +native GroupPointOrder takes group whichGroup, string order, real x, real y returns boolean +native GroupPointOrderLoc takes group whichGroup, string order, location whichLocation returns boolean +native GroupPointOrderById takes group whichGroup, integer order, real x, real y returns boolean +native GroupPointOrderByIdLoc takes group whichGroup, integer order, location whichLocation returns boolean +native GroupTargetOrder takes group whichGroup, string order, widget targetWidget returns boolean +native GroupTargetOrderById takes group whichGroup, integer order, widget targetWidget returns boolean + +// This will be difficult to support with potentially disjoint, cell-based regions +// as it would involve enumerating all the cells that are covered by a particularregion +// a better implementation would be a trigger that adds relevant units as they enter +// and removes them if they leave... +native ForGroup takes group whichGroup, code callback returns nothing +native FirstOfGroup takes group whichGroup returns unit + +//============================================================================ +// Force API +// +native CreateForce takes nothing returns force +native DestroyForce takes force whichForce returns nothing +native ForceAddPlayer takes force whichForce, player whichPlayer returns nothing +native ForceRemovePlayer takes force whichForce, player whichPlayer returns nothing +native ForceClear takes force whichForce returns nothing +native ForceEnumPlayers takes force whichForce, boolexpr filter returns nothing +native ForceEnumPlayersCounted takes force whichForce, boolexpr filter, integer countLimit returns nothing +native ForceEnumAllies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForceEnumEnemies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForForce takes force whichForce, code callback returns nothing + +//============================================================================ +// Region and Location API +// +native Rect takes real minx, real miny, real maxx, real maxy returns rect +native RectFromLoc takes location min, location max returns rect +native RemoveRect takes rect whichRect returns nothing +native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing +native SetRectFromLoc takes rect whichRect, location min, location max returns nothing +native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing +native MoveRectToLoc takes rect whichRect, location newCenterLoc returns nothing + +native GetRectCenterX takes rect whichRect returns real +native GetRectCenterY takes rect whichRect returns real +native GetRectMinX takes rect whichRect returns real +native GetRectMinY takes rect whichRect returns real +native GetRectMaxX takes rect whichRect returns real +native GetRectMaxY takes rect whichRect returns real + +native CreateRegion takes nothing returns region +native RemoveRegion takes region whichRegion returns nothing + +native RegionAddRect takes region whichRegion, rect r returns nothing +native RegionClearRect takes region whichRegion, rect r returns nothing + +native RegionAddCell takes region whichRegion, real x, real y returns nothing +native RegionAddCellAtLoc takes region whichRegion, location whichLocation returns nothing +native RegionClearCell takes region whichRegion, real x, real y returns nothing +native RegionClearCellAtLoc takes region whichRegion, location whichLocation returns nothing + +native Location takes real x, real y returns location +native RemoveLocation takes location whichLocation returns nothing +native MoveLocation takes location whichLocation, real newX, real newY returns nothing +native GetLocationX takes location whichLocation returns real +native GetLocationY takes location whichLocation returns real + +// This function is asynchronous. The values it returns are not guaranteed synchronous between each player. +// If you attempt to use it in a synchronous manner, it may cause a desync. +native GetLocationZ takes location whichLocation returns real + +native IsUnitInRegion takes region whichRegion, unit whichUnit returns boolean +native IsPointInRegion takes region whichRegion, real x, real y returns boolean +native IsLocationInRegion takes region whichRegion, location whichLocation returns boolean + +// Returns full map bounds, including unplayable borders, in world coordinates +native GetWorldBounds takes nothing returns rect + +//============================================================================ +// Native trigger interface +// +native CreateTrigger takes nothing returns trigger +native DestroyTrigger takes trigger whichTrigger returns nothing +native ResetTrigger takes trigger whichTrigger returns nothing +native EnableTrigger takes trigger whichTrigger returns nothing +native DisableTrigger takes trigger whichTrigger returns nothing +native IsTriggerEnabled takes trigger whichTrigger returns boolean + +native TriggerWaitOnSleeps takes trigger whichTrigger, boolean flag returns nothing +native IsTriggerWaitOnSleeps takes trigger whichTrigger returns boolean + +constant native GetFilterUnit takes nothing returns unit +constant native GetEnumUnit takes nothing returns unit + +constant native GetFilterDestructable takes nothing returns destructable +constant native GetEnumDestructable takes nothing returns destructable + +constant native GetFilterItem takes nothing returns item +constant native GetEnumItem takes nothing returns item + +constant native GetFilterPlayer takes nothing returns player +constant native GetEnumPlayer takes nothing returns player + +constant native GetTriggeringTrigger takes nothing returns trigger +constant native GetTriggerEventId takes nothing returns eventid +constant native GetTriggerEvalCount takes trigger whichTrigger returns integer +constant native GetTriggerExecCount takes trigger whichTrigger returns integer + +native ExecuteFunc takes string funcName returns nothing + +//============================================================================ +// Boolean Expr API ( for compositing trigger conditions and unit filter funcs...) +//============================================================================ +native And takes boolexpr operandA, boolexpr operandB returns boolexpr +native Or takes boolexpr operandA, boolexpr operandB returns boolexpr +native Not takes boolexpr operand returns boolexpr +native Condition takes code func returns conditionfunc +native DestroyCondition takes conditionfunc c returns nothing +native Filter takes code func returns filterfunc +native DestroyFilter takes filterfunc f returns nothing +native DestroyBoolExpr takes boolexpr e returns nothing + +//============================================================================ +// Trigger Game Event API +//============================================================================ + +native TriggerRegisterVariableEvent takes trigger whichTrigger, string varName, limitop opcode, real limitval returns event + + // EVENT_GAME_VARIABLE_LIMIT + //constant native string GetTriggeringVariableName takes nothing returns string + +// Creates it's own timer and triggers when it expires +native TriggerRegisterTimerEvent takes trigger whichTrigger, real timeout, boolean periodic returns event + +// Triggers when the timer you tell it about expires +native TriggerRegisterTimerExpireEvent takes trigger whichTrigger, timer t returns event + +native TriggerRegisterGameStateEvent takes trigger whichTrigger, gamestate whichState, limitop opcode, real limitval returns event + +native TriggerRegisterDialogEvent takes trigger whichTrigger, dialog whichDialog returns event +native TriggerRegisterDialogButtonEvent takes trigger whichTrigger, button whichButton returns event + +// EVENT_GAME_STATE_LIMIT +constant native GetEventGameState takes nothing returns gamestate + +native TriggerRegisterGameEvent takes trigger whichTrigger, gameevent whichGameEvent returns event + +// EVENT_GAME_VICTORY +constant native GetWinningPlayer takes nothing returns player + + +native TriggerRegisterEnterRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event + +// EVENT_GAME_ENTER_REGION +constant native GetTriggeringRegion takes nothing returns region +constant native GetEnteringUnit takes nothing returns unit + +// EVENT_GAME_LEAVE_REGION + +native TriggerRegisterLeaveRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event +constant native GetLeavingUnit takes nothing returns unit + +native TriggerRegisterTrackableHitEvent takes trigger whichTrigger, trackable t returns event +native TriggerRegisterTrackableTrackEvent takes trigger whichTrigger, trackable t returns event + +// EVENT_GAME_TRACKABLE_HIT +// EVENT_GAME_TRACKABLE_TRACK +constant native GetTriggeringTrackable takes nothing returns trackable + +// EVENT_DIALOG_BUTTON_CLICK +constant native GetClickedButton takes nothing returns button +constant native GetClickedDialog takes nothing returns dialog + +// EVENT_GAME_TOURNAMENT_FINISH_SOON +constant native GetTournamentFinishSoonTimeRemaining takes nothing returns real +constant native GetTournamentFinishNowRule takes nothing returns integer +constant native GetTournamentFinishNowPlayer takes nothing returns player +constant native GetTournamentScore takes player whichPlayer returns integer + +// EVENT_GAME_SAVE +constant native GetSaveBasicFilename takes nothing returns string + +//============================================================================ +// Trigger Player Based Event API +//============================================================================ + +native TriggerRegisterPlayerEvent takes trigger whichTrigger, player whichPlayer, playerevent whichPlayerEvent returns event + +// EVENT_PLAYER_DEFEAT +// EVENT_PLAYER_VICTORY +constant native GetTriggerPlayer takes nothing returns player + +native TriggerRegisterPlayerUnitEvent takes trigger whichTrigger, player whichPlayer, playerunitevent whichPlayerUnitEvent, boolexpr filter returns event + +// EVENT_PLAYER_HERO_LEVEL +// EVENT_UNIT_HERO_LEVEL +constant native GetLevelingUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_SKILL +// EVENT_UNIT_HERO_SKILL +constant native GetLearningUnit takes nothing returns unit +constant native GetLearnedSkill takes nothing returns integer +constant native GetLearnedSkillLevel takes nothing returns integer + +// EVENT_PLAYER_HERO_REVIVABLE +constant native GetRevivableUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_REVIVE_START +// EVENT_PLAYER_HERO_REVIVE_CANCEL +// EVENT_PLAYER_HERO_REVIVE_FINISH +// EVENT_UNIT_HERO_REVIVE_START +// EVENT_UNIT_HERO_REVIVE_CANCEL +// EVENT_UNIT_HERO_REVIVE_FINISH +constant native GetRevivingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_ATTACKED +constant native GetAttacker takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESCUED +constant native GetRescuer takes nothing returns unit + +// EVENT_PLAYER_UNIT_DEATH +constant native GetDyingUnit takes nothing returns unit +constant native GetKillingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DECAY +constant native GetDecayingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELECTED +//constant native GetSelectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_START +constant native GetConstructingStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_FINISH +// EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL +constant native GetCancelledStructure takes nothing returns unit +constant native GetConstructedStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESEARCH_START +// EVENT_PLAYER_UNIT_RESEARCH_CANCEL +// EVENT_PLAYER_UNIT_RESEARCH_FINISH +constant native GetResearchingUnit takes nothing returns unit +constant native GetResearched takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_START +// EVENT_PLAYER_UNIT_TRAIN_CANCEL +constant native GetTrainedUnitType takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_FINISH +constant native GetTrainedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DETECTED +constant native GetDetectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SUMMONED +constant native GetSummoningUnit takes nothing returns unit +constant native GetSummonedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_LOADED +constant native GetTransportUnit takes nothing returns unit +constant native GetLoadedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL +constant native GetSellingUnit takes nothing returns unit +constant native GetSoldUnit takes nothing returns unit +constant native GetBuyingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL_ITEM +constant native GetSoldItem takes nothing returns item + +// EVENT_PLAYER_UNIT_CHANGE_OWNER +constant native GetChangingUnit takes nothing returns unit +constant native GetChangingUnitPrevOwner takes nothing returns player + +// EVENT_PLAYER_UNIT_DROP_ITEM +// EVENT_PLAYER_UNIT_PICKUP_ITEM +// EVENT_PLAYER_UNIT_USE_ITEM +constant native GetManipulatingUnit takes nothing returns unit +constant native GetManipulatedItem takes nothing returns item + +// EVENT_PLAYER_UNIT_ISSUED_ORDER +constant native GetOrderedUnit takes nothing returns unit +constant native GetIssuedOrderId takes nothing returns integer + +// EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER +constant native GetOrderPointX takes nothing returns real +constant native GetOrderPointY takes nothing returns real +constant native GetOrderPointLoc takes nothing returns location + +// EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER +constant native GetOrderTarget takes nothing returns widget +constant native GetOrderTargetDestructable takes nothing returns destructable +constant native GetOrderTargetItem takes nothing returns item +constant native GetOrderTargetUnit takes nothing returns unit + +// EVENT_UNIT_SPELL_CHANNEL +// EVENT_UNIT_SPELL_CAST +// EVENT_UNIT_SPELL_EFFECT +// EVENT_UNIT_SPELL_FINISH +// EVENT_UNIT_SPELL_ENDCAST +// EVENT_PLAYER_UNIT_SPELL_CHANNEL +// EVENT_PLAYER_UNIT_SPELL_CAST +// EVENT_PLAYER_UNIT_SPELL_EFFECT +// EVENT_PLAYER_UNIT_SPELL_FINISH +// EVENT_PLAYER_UNIT_SPELL_ENDCAST +constant native GetSpellAbilityUnit takes nothing returns unit +constant native GetSpellAbilityId takes nothing returns integer +constant native GetSpellAbility takes nothing returns ability +constant native GetSpellTargetLoc takes nothing returns location +constant native GetSpellTargetX takes nothing returns real +constant native GetSpellTargetY takes nothing returns real +constant native GetSpellTargetDestructable takes nothing returns destructable +constant native GetSpellTargetItem takes nothing returns item +constant native GetSpellTargetUnit takes nothing returns unit + +native TriggerRegisterPlayerAllianceChange takes trigger whichTrigger, player whichPlayer, alliancetype whichAlliance returns event +native TriggerRegisterPlayerStateEvent takes trigger whichTrigger, player whichPlayer, playerstate whichState, limitop opcode, real limitval returns event + +// EVENT_PLAYER_STATE_LIMIT +constant native GetEventPlayerState takes nothing returns playerstate + +native TriggerRegisterPlayerChatEvent takes trigger whichTrigger, player whichPlayer, string chatMessageToDetect, boolean exactMatchOnly returns event + +// EVENT_PLAYER_CHAT + +// returns the actual string they typed in ( same as what you registered for +// if you required exact match ) +constant native GetEventPlayerChatString takes nothing returns string + +// returns the string that you registered for +constant native GetEventPlayerChatStringMatched takes nothing returns string + +native TriggerRegisterDeathEvent takes trigger whichTrigger, widget whichWidget returns event + +//============================================================================ +// Trigger Unit Based Event API +//============================================================================ + +// returns handle to unit which triggered the most recent event when called from +// within a trigger action function...returns null handle when used incorrectly + +constant native GetTriggerUnit takes nothing returns unit + +native TriggerRegisterUnitStateEvent takes trigger whichTrigger, unit whichUnit, unitstate whichState, limitop opcode, real limitval returns event + +// EVENT_UNIT_STATE_LIMIT +constant native GetEventUnitState takes nothing returns unitstate + +native TriggerRegisterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent returns event + +// EVENT_UNIT_DAMAGED +constant native GetEventDamage takes nothing returns real +constant native GetEventDamageSource takes nothing returns unit + +// EVENT_UNIT_DEATH +// EVENT_UNIT_DECAY +// Use the GetDyingUnit and GetDecayingUnit funcs above + +// EVENT_UNIT_DETECTED +constant native GetEventDetectingPlayer takes nothing returns player + +native TriggerRegisterFilterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent, boolexpr filter returns event + +// EVENT_UNIT_ACQUIRED_TARGET +// EVENT_UNIT_TARGET_IN_RANGE +constant native GetEventTargetUnit takes nothing returns unit + +// EVENT_UNIT_ATTACKED +// Use GetAttacker from the Player Unit Event API Below... + +// EVENT_UNIT_RESCUEDED +// Use GetRescuer from the Player Unit Event API Below... + +// EVENT_UNIT_CONSTRUCT_CANCEL +// EVENT_UNIT_CONSTRUCT_FINISH + +// See the Player Unit Construction Event API above for event info funcs + +// EVENT_UNIT_TRAIN_START +// EVENT_UNIT_TRAIN_CANCELLED +// EVENT_UNIT_TRAIN_FINISH + +// See the Player Unit Training Event API above for event info funcs + +// EVENT_UNIT_SELL + +// See the Player Unit Sell Event API above for event info funcs + +// EVENT_UNIT_DROP_ITEM +// EVENT_UNIT_PICKUP_ITEM +// EVENT_UNIT_USE_ITEM +// See the Player Unit/Item manipulation Event API above for event info funcs + +// EVENT_UNIT_ISSUED_ORDER +// EVENT_UNIT_ISSUED_POINT_ORDER +// EVENT_UNIT_ISSUED_TARGET_ORDER + +// See the Player Unit Order Event API above for event info funcs + +native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event + +native TriggerAddCondition takes trigger whichTrigger, boolexpr condition returns triggercondition +native TriggerRemoveCondition takes trigger whichTrigger, triggercondition whichCondition returns nothing +native TriggerClearConditions takes trigger whichTrigger returns nothing + +native TriggerAddAction takes trigger whichTrigger, code actionFunc returns triggeraction +native TriggerRemoveAction takes trigger whichTrigger, triggeraction whichAction returns nothing +native TriggerClearActions takes trigger whichTrigger returns nothing +native TriggerSleepAction takes real timeout returns nothing +native TriggerWaitForSound takes sound s, real offset returns nothing +native TriggerEvaluate takes trigger whichTrigger returns boolean +native TriggerExecute takes trigger whichTrigger returns nothing +native TriggerExecuteWait takes trigger whichTrigger returns nothing +native TriggerSyncStart takes nothing returns nothing +native TriggerSyncReady takes nothing returns nothing + +//============================================================================ +// Widget API +native GetWidgetLife takes widget whichWidget returns real +native SetWidgetLife takes widget whichWidget, real newLife returns nothing +native GetWidgetX takes widget whichWidget returns real +native GetWidgetY takes widget whichWidget returns real +constant native GetTriggerWidget takes nothing returns widget + +//============================================================================ +// Destructable Object API +// Facing arguments are specified in degrees +native CreateDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native CreateDeadDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDeadDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native RemoveDestructable takes destructable d returns nothing +native KillDestructable takes destructable d returns nothing +native SetDestructableInvulnerable takes destructable d, boolean flag returns nothing +native IsDestructableInvulnerable takes destructable d returns boolean +native EnumDestructablesInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetDestructableTypeId takes destructable d returns integer +native GetDestructableX takes destructable d returns real +native GetDestructableY takes destructable d returns real +native SetDestructableLife takes destructable d, real life returns nothing +native GetDestructableLife takes destructable d returns real +native SetDestructableMaxLife takes destructable d, real max returns nothing +native GetDestructableMaxLife takes destructable d returns real +native DestructableRestoreLife takes destructable d, real life, boolean birth returns nothing +native QueueDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimationSpeed takes destructable d, real speedFactor returns nothing +native ShowDestructable takes destructable d, boolean flag returns nothing +native GetDestructableOccluderHeight takes destructable d returns real +native SetDestructableOccluderHeight takes destructable d, real height returns nothing +native GetDestructableName takes destructable d returns string +constant native GetTriggerDestructable takes nothing returns destructable + +//============================================================================ +// Item API +native CreateItem takes integer itemid, real x, real y returns item +native RemoveItem takes item whichItem returns nothing +native GetItemPlayer takes item whichItem returns player +native GetItemTypeId takes item i returns integer +native GetItemX takes item i returns real +native GetItemY takes item i returns real +native SetItemPosition takes item i, real x, real y returns nothing +native SetItemDropOnDeath takes item whichItem, boolean flag returns nothing +native SetItemDroppable takes item i, boolean flag returns nothing +native SetItemPawnable takes item i, boolean flag returns nothing +native SetItemPlayer takes item whichItem, player whichPlayer, boolean changeColor returns nothing +native SetItemInvulnerable takes item whichItem, boolean flag returns nothing +native IsItemInvulnerable takes item whichItem returns boolean +native SetItemVisible takes item whichItem, boolean show returns nothing +native IsItemVisible takes item whichItem returns boolean +native IsItemOwned takes item whichItem returns boolean +native IsItemPowerup takes item whichItem returns boolean +native IsItemSellable takes item whichItem returns boolean +native IsItemPawnable takes item whichItem returns boolean +native IsItemIdPowerup takes integer itemId returns boolean +native IsItemIdSellable takes integer itemId returns boolean +native IsItemIdPawnable takes integer itemId returns boolean +native EnumItemsInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetItemLevel takes item whichItem returns integer +native GetItemType takes item whichItem returns itemtype +native SetItemDropID takes item whichItem, integer unitId returns nothing +constant native GetItemName takes item whichItem returns string +native GetItemCharges takes item whichItem returns integer +native SetItemCharges takes item whichItem, integer charges returns nothing +native GetItemUserData takes item whichItem returns integer +native SetItemUserData takes item whichItem, integer data returns nothing + +//============================================================================ +// Unit API +// Facing arguments are specified in degrees +native CreateUnit takes player id, integer unitid, real x, real y, real face returns unit +native CreateUnitByName takes player whichPlayer, string unitname, real x, real y, real face returns unit +native CreateUnitAtLoc takes player id, integer unitid, location whichLocation, real face returns unit +native CreateUnitAtLocByName takes player id, string unitname, location whichLocation, real face returns unit +native CreateCorpse takes player whichPlayer, integer unitid, real x, real y, real face returns unit + +native KillUnit takes unit whichUnit returns nothing +native RemoveUnit takes unit whichUnit returns nothing +native ShowUnit takes unit whichUnit, boolean show returns nothing + +native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing +native SetUnitX takes unit whichUnit, real newX returns nothing +native SetUnitY takes unit whichUnit, real newY returns nothing +native SetUnitPosition takes unit whichUnit, real newX, real newY returns nothing +native SetUnitPositionLoc takes unit whichUnit, location whichLocation returns nothing +native SetUnitFacing takes unit whichUnit, real facingAngle returns nothing +native SetUnitFacingTimed takes unit whichUnit, real facingAngle, real duration returns nothing +native SetUnitMoveSpeed takes unit whichUnit, real newSpeed returns nothing +native SetUnitFlyHeight takes unit whichUnit, real newHeight, real rate returns nothing +native SetUnitTurnSpeed takes unit whichUnit, real newTurnSpeed returns nothing +native SetUnitPropWindow takes unit whichUnit, real newPropWindowAngle returns nothing +native SetUnitAcquireRange takes unit whichUnit, real newAcquireRange returns nothing +native SetUnitCreepGuard takes unit whichUnit, boolean creepGuard returns nothing + +native GetUnitAcquireRange takes unit whichUnit returns real +native GetUnitTurnSpeed takes unit whichUnit returns real +native GetUnitPropWindow takes unit whichUnit returns real +native GetUnitFlyHeight takes unit whichUnit returns real + +native GetUnitDefaultAcquireRange takes unit whichUnit returns real +native GetUnitDefaultTurnSpeed takes unit whichUnit returns real +native GetUnitDefaultPropWindow takes unit whichUnit returns real +native GetUnitDefaultFlyHeight takes unit whichUnit returns real + +native SetUnitOwner takes unit whichUnit, player whichPlayer, boolean changeColor returns nothing +native SetUnitColor takes unit whichUnit, playercolor whichColor returns nothing + +native SetUnitScale takes unit whichUnit, real scaleX, real scaleY, real scaleZ returns nothing +native SetUnitTimeScale takes unit whichUnit, real timeScale returns nothing +native SetUnitBlendTime takes unit whichUnit, real blendTime returns nothing +native SetUnitVertexColor takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing + +native QueueUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing +native SetUnitAnimationWithRarity takes unit whichUnit, string whichAnimation, raritycontrol rarity returns nothing +native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing + +native SetUnitLookAt takes unit whichUnit, string whichBone, unit lookAtTarget, real offsetX, real offsetY, real offsetZ returns nothing +native ResetUnitLookAt takes unit whichUnit returns nothing + +native SetUnitRescuable takes unit whichUnit, player byWhichPlayer, boolean flag returns nothing +native SetUnitRescueRange takes unit whichUnit, real range returns nothing + +native SetHeroStr takes unit whichHero, integer newStr, boolean permanent returns nothing +native SetHeroAgi takes unit whichHero, integer newAgi, boolean permanent returns nothing +native SetHeroInt takes unit whichHero, integer newInt, boolean permanent returns nothing + +native GetHeroStr takes unit whichHero, boolean includeBonuses returns integer +native GetHeroAgi takes unit whichHero, boolean includeBonuses returns integer +native GetHeroInt takes unit whichHero, boolean includeBonuses returns integer + +native UnitStripHeroLevel takes unit whichHero, integer howManyLevels returns boolean + +native GetHeroXP takes unit whichHero returns integer +native SetHeroXP takes unit whichHero, integer newXpVal, boolean showEyeCandy returns nothing + +native GetHeroSkillPoints takes unit whichHero returns integer +native UnitModifySkillPoints takes unit whichHero, integer skillPointDelta returns boolean + +native AddHeroXP takes unit whichHero, integer xpToAdd, boolean showEyeCandy returns nothing +native SetHeroLevel takes unit whichHero, integer level, boolean showEyeCandy returns nothing +constant native GetHeroLevel takes unit whichHero returns integer +constant native GetUnitLevel takes unit whichUnit returns integer +native GetHeroProperName takes unit whichHero returns string +native SuspendHeroXP takes unit whichHero, boolean flag returns nothing +native IsSuspendedXP takes unit whichHero returns boolean +native SelectHeroSkill takes unit whichHero, integer abilcode returns nothing +native GetUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native DecUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native IncUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native SetUnitAbilityLevel takes unit whichUnit, integer abilcode, integer level returns integer +native ReviveHero takes unit whichHero, real x, real y, boolean doEyecandy returns boolean +native ReviveHeroLoc takes unit whichHero, location loc, boolean doEyecandy returns boolean +native SetUnitExploded takes unit whichUnit, boolean exploded returns nothing +native SetUnitInvulnerable takes unit whichUnit, boolean flag returns nothing +native PauseUnit takes unit whichUnit, boolean flag returns nothing +native IsUnitPaused takes unit whichHero returns boolean +native SetUnitPathing takes unit whichUnit, boolean flag returns nothing + +native ClearSelection takes nothing returns nothing +native SelectUnit takes unit whichUnit, boolean flag returns nothing + +native GetUnitPointValue takes unit whichUnit returns integer +native GetUnitPointValueByType takes integer unitType returns integer +//native SetUnitPointValueByType takes integer unitType, integer newPointValue returns nothing + +native UnitAddItem takes unit whichUnit, item whichItem returns boolean +native UnitAddItemById takes unit whichUnit, integer itemId returns item +native UnitAddItemToSlotById takes unit whichUnit, integer itemId, integer itemSlot returns boolean +native UnitRemoveItem takes unit whichUnit, item whichItem returns nothing +native UnitRemoveItemFromSlot takes unit whichUnit, integer itemSlot returns item +native UnitHasItem takes unit whichUnit, item whichItem returns boolean +native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item +native UnitInventorySize takes unit whichUnit returns integer + +native UnitDropItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitDropItemSlot takes unit whichUnit, item whichItem, integer slot returns boolean +native UnitDropItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +native UnitUseItem takes unit whichUnit, item whichItem returns boolean +native UnitUseItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitUseItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +constant native GetUnitX takes unit whichUnit returns real +constant native GetUnitY takes unit whichUnit returns real +constant native GetUnitLoc takes unit whichUnit returns location +constant native GetUnitFacing takes unit whichUnit returns real +constant native GetUnitMoveSpeed takes unit whichUnit returns real +constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real +constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real +constant native GetOwningPlayer takes unit whichUnit returns player +constant native GetUnitTypeId takes unit whichUnit returns integer +constant native GetUnitRace takes unit whichUnit returns race +constant native GetUnitName takes unit whichUnit returns string +constant native GetUnitFoodUsed takes unit whichUnit returns integer +constant native GetUnitFoodMade takes unit whichUnit returns integer +constant native GetFoodMade takes integer unitId returns integer +constant native GetFoodUsed takes integer unitId returns integer +native SetUnitUseFood takes unit whichUnit, boolean useFood returns nothing + +constant native GetUnitRallyPoint takes unit whichUnit returns location +constant native GetUnitRallyUnit takes unit whichUnit returns unit +constant native GetUnitRallyDestructable takes unit whichUnit returns destructable + +constant native IsUnitInGroup takes unit whichUnit, group whichGroup returns boolean +constant native IsUnitInForce takes unit whichUnit, force whichForce returns boolean +constant native IsUnitOwnedByPlayer takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitEnemy takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitVisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitDetected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitInvisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitFogged takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitMasked takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitSelected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitRace takes unit whichUnit, race whichRace returns boolean +constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean +constant native IsUnit takes unit whichUnit, unit whichSpecifiedUnit returns boolean +constant native IsUnitInRange takes unit whichUnit, unit otherUnit, real distance returns boolean +constant native IsUnitInRangeXY takes unit whichUnit, real x, real y, real distance returns boolean +constant native IsUnitInRangeLoc takes unit whichUnit, location whichLocation, real distance returns boolean +constant native IsUnitHidden takes unit whichUnit returns boolean +constant native IsUnitIllusion takes unit whichUnit returns boolean + +constant native IsUnitInTransport takes unit whichUnit, unit whichTransport returns boolean +constant native IsUnitLoaded takes unit whichUnit returns boolean + +constant native IsHeroUnitId takes integer unitId returns boolean +constant native IsUnitIdType takes integer unitId, unittype whichUnitType returns boolean + +native UnitShareVision takes unit whichUnit, player whichPlayer, boolean share returns nothing +native UnitSuspendDecay takes unit whichUnit, boolean suspend returns nothing +native UnitAddType takes unit whichUnit, unittype whichUnitType returns boolean +native UnitRemoveType takes unit whichUnit, unittype whichUnitType returns boolean + +native UnitAddAbility takes unit whichUnit, integer abilityId returns boolean +native UnitRemoveAbility takes unit whichUnit, integer abilityId returns boolean +native UnitMakeAbilityPermanent takes unit whichUnit, boolean permanent, integer abilityId returns boolean +native UnitRemoveBuffs takes unit whichUnit, boolean removePositive, boolean removeNegative returns nothing +native UnitRemoveBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns nothing +native UnitHasBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean +native UnitCountBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns integer +native UnitAddSleep takes unit whichUnit, boolean add returns nothing +native UnitCanSleep takes unit whichUnit returns boolean +native UnitAddSleepPerm takes unit whichUnit, boolean add returns nothing +native UnitCanSleepPerm takes unit whichUnit returns boolean +native UnitIsSleeping takes unit whichUnit returns boolean +native UnitWakeUp takes unit whichUnit returns nothing +native UnitApplyTimedLife takes unit whichUnit, integer buffId, real duration returns nothing +native UnitIgnoreAlarm takes unit whichUnit, boolean flag returns boolean +native UnitIgnoreAlarmToggled takes unit whichUnit returns boolean +native UnitResetCooldown takes unit whichUnit returns nothing +native UnitSetConstructionProgress takes unit whichUnit, integer constructionPercentage returns nothing +native UnitSetUpgradeProgress takes unit whichUnit, integer upgradePercentage returns nothing +native UnitPauseTimedLife takes unit whichUnit, boolean flag returns nothing +native UnitSetUsesAltIcon takes unit whichUnit, boolean flag returns nothing + +native UnitDamagePoint takes unit whichUnit, real delay, real radius, real x, real y, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean +native UnitDamageTarget takes unit whichUnit, widget target, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean + +native IssueImmediateOrder takes unit whichUnit, string order returns boolean +native IssueImmediateOrderById takes unit whichUnit, integer order returns boolean +native IssuePointOrder takes unit whichUnit, string order, real x, real y returns boolean +native IssuePointOrderLoc takes unit whichUnit, string order, location whichLocation returns boolean +native IssuePointOrderById takes unit whichUnit, integer order, real x, real y returns boolean +native IssuePointOrderByIdLoc takes unit whichUnit, integer order, location whichLocation returns boolean +native IssueTargetOrder takes unit whichUnit, string order, widget targetWidget returns boolean +native IssueTargetOrderById takes unit whichUnit, integer order, widget targetWidget returns boolean +native IssueInstantPointOrder takes unit whichUnit, string order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantPointOrderById takes unit whichUnit, integer order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantTargetOrder takes unit whichUnit, string order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueInstantTargetOrderById takes unit whichUnit, integer order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueBuildOrder takes unit whichPeon, string unitToBuild, real x, real y returns boolean +native IssueBuildOrderById takes unit whichPeon, integer unitId, real x, real y returns boolean + +native IssueNeutralImmediateOrder takes player forWhichPlayer, unit neutralStructure, string unitToBuild returns boolean +native IssueNeutralImmediateOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId returns boolean +native IssueNeutralPointOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, real x, real y returns boolean +native IssueNeutralPointOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, real x, real y returns boolean +native IssueNeutralTargetOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, widget target returns boolean +native IssueNeutralTargetOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, widget target returns boolean + +native GetUnitCurrentOrder takes unit whichUnit returns integer + +native SetResourceAmount takes unit whichUnit, integer amount returns nothing +native AddResourceAmount takes unit whichUnit, integer amount returns nothing +native GetResourceAmount takes unit whichUnit returns integer + +native WaygateGetDestinationX takes unit waygate returns real +native WaygateGetDestinationY takes unit waygate returns real +native WaygateSetDestination takes unit waygate, real x, real y returns nothing +native WaygateActivate takes unit waygate, boolean activate returns nothing +native WaygateIsActive takes unit waygate returns boolean + +native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing +native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing +native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing +native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing + +native RemoveItemFromAllStock takes integer itemId returns nothing +native RemoveItemFromStock takes unit whichUnit, integer itemId returns nothing +native RemoveUnitFromAllStock takes integer unitId returns nothing +native RemoveUnitFromStock takes unit whichUnit, integer unitId returns nothing + +native SetAllItemTypeSlots takes integer slots returns nothing +native SetAllUnitTypeSlots takes integer slots returns nothing +native SetItemTypeSlots takes unit whichUnit, integer slots returns nothing +native SetUnitTypeSlots takes unit whichUnit, integer slots returns nothing + +native GetUnitUserData takes unit whichUnit returns integer +native SetUnitUserData takes unit whichUnit, integer data returns nothing + +//============================================================================ +// Player API +constant native Player takes integer number returns player +constant native GetLocalPlayer takes nothing returns player +constant native IsPlayerAlly takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerEnemy takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerInForce takes player whichPlayer, force whichForce returns boolean +constant native IsPlayerObserver takes player whichPlayer returns boolean +constant native IsVisibleToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationVisibleToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsFoggedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationFoggedToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsMaskedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationMaskedToPlayer takes location whichLocation, player whichPlayer returns boolean + +constant native GetPlayerRace takes player whichPlayer returns race +constant native GetPlayerId takes player whichPlayer returns integer +constant native GetPlayerUnitCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerTypedUnitCount takes player whichPlayer, string unitName, boolean includeIncomplete, boolean includeUpgrades returns integer +constant native GetPlayerStructureCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerState takes player whichPlayer, playerstate whichPlayerState returns integer +constant native GetPlayerScore takes player whichPlayer, playerscore whichPlayerScore returns integer +constant native GetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting returns boolean + +constant native GetPlayerHandicap takes player whichPlayer returns real +constant native GetPlayerHandicapXP takes player whichPlayer returns real +constant native SetPlayerHandicap takes player whichPlayer, real handicap returns nothing +constant native SetPlayerHandicapXP takes player whichPlayer, real handicap returns nothing + +constant native SetPlayerTechMaxAllowed takes player whichPlayer, integer techid, integer maximum returns nothing +constant native GetPlayerTechMaxAllowed takes player whichPlayer, integer techid returns integer +constant native AddPlayerTechResearched takes player whichPlayer, integer techid, integer levels returns nothing +constant native SetPlayerTechResearched takes player whichPlayer, integer techid, integer setToLevel returns nothing +constant native GetPlayerTechResearched takes player whichPlayer, integer techid, boolean specificonly returns boolean +constant native GetPlayerTechCount takes player whichPlayer, integer techid, boolean specificonly returns integer + +native SetPlayerUnitsOwner takes player whichPlayer, integer newOwner returns nothing +native CripplePlayer takes player whichPlayer, force toWhichPlayers, boolean flag returns nothing + +native SetPlayerAbilityAvailable takes player whichPlayer, integer abilid, boolean avail returns nothing + +native SetPlayerState takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing +native RemovePlayer takes player whichPlayer, playergameresult gameResult returns nothing + +// Used to store hero level data for the scorescreen +// before units are moved to neutral passive in melee games +// +native CachePlayerHeroData takes player whichPlayer returns nothing + +//============================================================================ +// Fog of War API +native SetFogStateRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision returns nothing +native SetFogStateRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision returns nothing +native SetFogStateRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision returns nothing +native FogMaskEnable takes boolean enable returns nothing +native IsFogMaskEnabled takes nothing returns boolean +native FogEnable takes boolean enable returns nothing +native IsFogEnabled takes nothing returns boolean + +native CreateFogModifierRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native DestroyFogModifier takes fogmodifier whichFogModifier returns nothing +native FogModifierStart takes fogmodifier whichFogModifier returns nothing +native FogModifierStop takes fogmodifier whichFogModifier returns nothing + +//============================================================================ +// Game API +native VersionGet takes nothing returns version +native VersionCompatible takes version whichVersion returns boolean +native VersionSupported takes version whichVersion returns boolean + +native EndGame takes boolean doScoreScreen returns nothing + +// Async only! +native ChangeLevel takes string newLevel, boolean doScoreScreen returns nothing +native RestartGame takes boolean doScoreScreen returns nothing +native ReloadGame takes nothing returns nothing +// %%% SetCampaignMenuRace is deprecated. It must remain to support +// old maps which use it, but all new maps should use SetCampaignMenuRaceEx +native SetCampaignMenuRace takes race r returns nothing +native SetCampaignMenuRaceEx takes integer campaignIndex returns nothing +native ForceCampaignSelectScreen takes nothing returns nothing + +native LoadGame takes string saveFileName, boolean doScoreScreen returns nothing +native SaveGame takes string saveFileName returns nothing +native RenameSaveDirectory takes string sourceDirName, string destDirName returns boolean +native RemoveSaveDirectory takes string sourceDirName returns boolean +native CopySaveGame takes string sourceSaveName, string destSaveName returns boolean +native SaveGameExists takes string saveName returns boolean +native SyncSelections takes nothing returns nothing +native SetFloatGameState takes fgamestate whichFloatGameState, real value returns nothing +constant native GetFloatGameState takes fgamestate whichFloatGameState returns real +native SetIntegerGameState takes igamestate whichIntegerGameState, integer value returns nothing +constant native GetIntegerGameState takes igamestate whichIntegerGameState returns integer + + +//============================================================================ +// Campaign API +native SetTutorialCleared takes boolean cleared returns nothing +native SetMissionAvailable takes integer campaignNumber, integer missionNumber, boolean available returns nothing +native SetCampaignAvailable takes integer campaignNumber, boolean available returns nothing +native SetOpCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native SetEdCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native GetDefaultDifficulty takes nothing returns gamedifficulty +native SetDefaultDifficulty takes gamedifficulty g returns nothing +native SetCustomCampaignButtonVisible takes integer whichButton, boolean visible returns nothing +native GetCustomCampaignButtonVisible takes integer whichButton returns boolean +native DoNotSaveReplay takes nothing returns nothing + +//============================================================================ +// Dialog API +native DialogCreate takes nothing returns dialog +native DialogDestroy takes dialog whichDialog returns nothing +native DialogClear takes dialog whichDialog returns nothing +native DialogSetMessage takes dialog whichDialog, string messageText returns nothing +native DialogAddButton takes dialog whichDialog, string buttonText, integer hotkey returns button +native DialogAddQuitButton takes dialog whichDialog, boolean doScoreScreen, string buttonText, integer hotkey returns button +native DialogDisplay takes player whichPlayer, dialog whichDialog, boolean flag returns nothing + +// Creates a new or reads in an existing game cache file stored +// in the current campaign profile dir +// +native ReloadGameCachesFromDisk takes nothing returns boolean + +native InitGameCache takes string campaignFile returns gamecache +native SaveGameCache takes gamecache whichCache returns boolean + +native StoreInteger takes gamecache cache, string missionKey, string key, integer value returns nothing +native StoreReal takes gamecache cache, string missionKey, string key, real value returns nothing +native StoreBoolean takes gamecache cache, string missionKey, string key, boolean value returns nothing +native StoreUnit takes gamecache cache, string missionKey, string key, unit whichUnit returns boolean +native StoreString takes gamecache cache, string missionKey, string key, string value returns boolean + +native SyncStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredReal takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredString takes gamecache cache, string missionKey, string key returns nothing + +native HaveStoredInteger takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredReal takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredUnit takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredString takes gamecache cache, string missionKey, string key returns boolean + +native FlushGameCache takes gamecache cache returns nothing +native FlushStoredMission takes gamecache cache, string missionKey returns nothing +native FlushStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredReal takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredString takes gamecache cache, string missionKey, string key returns nothing + +// Will return 0 if the specified value's data is not found in the cache +native GetStoredInteger takes gamecache cache, string missionKey, string key returns integer +native GetStoredReal takes gamecache cache, string missionKey, string key returns real +native GetStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native GetStoredString takes gamecache cache, string missionKey, string key returns string +native RestoreUnit takes gamecache cache, string missionKey, string key, player forWhichPlayer, real x, real y, real facing returns unit + + +native InitHashtable takes nothing returns hashtable + +native SaveInteger takes hashtable table, integer parentKey, integer childKey, integer value returns nothing +native SaveReal takes hashtable table, integer parentKey, integer childKey, real value returns nothing +native SaveBoolean takes hashtable table, integer parentKey, integer childKey, boolean value returns nothing +native SaveStr takes hashtable table, integer parentKey, integer childKey, string value returns boolean +native SavePlayerHandle takes hashtable table, integer parentKey, integer childKey, player whichPlayer returns boolean +native SaveWidgetHandle takes hashtable table, integer parentKey, integer childKey, widget whichWidget returns boolean +native SaveDestructableHandle takes hashtable table, integer parentKey, integer childKey, destructable whichDestructable returns boolean +native SaveItemHandle takes hashtable table, integer parentKey, integer childKey, item whichItem returns boolean +native SaveUnitHandle takes hashtable table, integer parentKey, integer childKey, unit whichUnit returns boolean +native SaveAbilityHandle takes hashtable table, integer parentKey, integer childKey, ability whichAbility returns boolean +native SaveTimerHandle takes hashtable table, integer parentKey, integer childKey, timer whichTimer returns boolean +native SaveTriggerHandle takes hashtable table, integer parentKey, integer childKey, trigger whichTrigger returns boolean +native SaveTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey, triggercondition whichTriggercondition returns boolean +native SaveTriggerActionHandle takes hashtable table, integer parentKey, integer childKey, triggeraction whichTriggeraction returns boolean +native SaveTriggerEventHandle takes hashtable table, integer parentKey, integer childKey, event whichEvent returns boolean +native SaveForceHandle takes hashtable table, integer parentKey, integer childKey, force whichForce returns boolean +native SaveGroupHandle takes hashtable table, integer parentKey, integer childKey, group whichGroup returns boolean +native SaveLocationHandle takes hashtable table, integer parentKey, integer childKey, location whichLocation returns boolean +native SaveRectHandle takes hashtable table, integer parentKey, integer childKey, rect whichRect returns boolean +native SaveBooleanExprHandle takes hashtable table, integer parentKey, integer childKey, boolexpr whichBoolexpr returns boolean +native SaveSoundHandle takes hashtable table, integer parentKey, integer childKey, sound whichSound returns boolean +native SaveEffectHandle takes hashtable table, integer parentKey, integer childKey, effect whichEffect returns boolean +native SaveUnitPoolHandle takes hashtable table, integer parentKey, integer childKey, unitpool whichUnitpool returns boolean +native SaveItemPoolHandle takes hashtable table, integer parentKey, integer childKey, itempool whichItempool returns boolean +native SaveQuestHandle takes hashtable table, integer parentKey, integer childKey, quest whichQuest returns boolean +native SaveQuestItemHandle takes hashtable table, integer parentKey, integer childKey, questitem whichQuestitem returns boolean +native SaveDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey, defeatcondition whichDefeatcondition returns boolean +native SaveTimerDialogHandle takes hashtable table, integer parentKey, integer childKey, timerdialog whichTimerdialog returns boolean +native SaveLeaderboardHandle takes hashtable table, integer parentKey, integer childKey, leaderboard whichLeaderboard returns boolean +native SaveMultiboardHandle takes hashtable table, integer parentKey, integer childKey, multiboard whichMultiboard returns boolean +native SaveMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey, multiboarditem whichMultiboarditem returns boolean +native SaveTrackableHandle takes hashtable table, integer parentKey, integer childKey, trackable whichTrackable returns boolean +native SaveDialogHandle takes hashtable table, integer parentKey, integer childKey, dialog whichDialog returns boolean +native SaveButtonHandle takes hashtable table, integer parentKey, integer childKey, button whichButton returns boolean +native SaveTextTagHandle takes hashtable table, integer parentKey, integer childKey, texttag whichTexttag returns boolean +native SaveLightningHandle takes hashtable table, integer parentKey, integer childKey, lightning whichLightning returns boolean +native SaveImageHandle takes hashtable table, integer parentKey, integer childKey, image whichImage returns boolean +native SaveUbersplatHandle takes hashtable table, integer parentKey, integer childKey, ubersplat whichUbersplat returns boolean +native SaveRegionHandle takes hashtable table, integer parentKey, integer childKey, region whichRegion returns boolean +native SaveFogStateHandle takes hashtable table, integer parentKey, integer childKey, fogstate whichFogState returns boolean +native SaveFogModifierHandle takes hashtable table, integer parentKey, integer childKey, fogmodifier whichFogModifier returns boolean +native SaveAgentHandle takes hashtable table, integer parentKey, integer childKey, agent whichAgent returns boolean +native SaveHashtableHandle takes hashtable table, integer parentKey, integer childKey, hashtable whichHashtable returns boolean + + +native LoadInteger takes hashtable table, integer parentKey, integer childKey returns integer +native LoadReal takes hashtable table, integer parentKey, integer childKey returns real +native LoadBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native LoadStr takes hashtable table, integer parentKey, integer childKey returns string +native LoadPlayerHandle takes hashtable table, integer parentKey, integer childKey returns player +native LoadWidgetHandle takes hashtable table, integer parentKey, integer childKey returns widget +native LoadDestructableHandle takes hashtable table, integer parentKey, integer childKey returns destructable +native LoadItemHandle takes hashtable table, integer parentKey, integer childKey returns item +native LoadUnitHandle takes hashtable table, integer parentKey, integer childKey returns unit +native LoadAbilityHandle takes hashtable table, integer parentKey, integer childKey returns ability +native LoadTimerHandle takes hashtable table, integer parentKey, integer childKey returns timer +native LoadTriggerHandle takes hashtable table, integer parentKey, integer childKey returns trigger +native LoadTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey returns triggercondition +native LoadTriggerActionHandle takes hashtable table, integer parentKey, integer childKey returns triggeraction +native LoadTriggerEventHandle takes hashtable table, integer parentKey, integer childKey returns event +native LoadForceHandle takes hashtable table, integer parentKey, integer childKey returns force +native LoadGroupHandle takes hashtable table, integer parentKey, integer childKey returns group +native LoadLocationHandle takes hashtable table, integer parentKey, integer childKey returns location +native LoadRectHandle takes hashtable table, integer parentKey, integer childKey returns rect +native LoadBooleanExprHandle takes hashtable table, integer parentKey, integer childKey returns boolexpr +native LoadSoundHandle takes hashtable table, integer parentKey, integer childKey returns sound +native LoadEffectHandle takes hashtable table, integer parentKey, integer childKey returns effect +native LoadUnitPoolHandle takes hashtable table, integer parentKey, integer childKey returns unitpool +native LoadItemPoolHandle takes hashtable table, integer parentKey, integer childKey returns itempool +native LoadQuestHandle takes hashtable table, integer parentKey, integer childKey returns quest +native LoadQuestItemHandle takes hashtable table, integer parentKey, integer childKey returns questitem +native LoadDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey returns defeatcondition +native LoadTimerDialogHandle takes hashtable table, integer parentKey, integer childKey returns timerdialog +native LoadLeaderboardHandle takes hashtable table, integer parentKey, integer childKey returns leaderboard +native LoadMultiboardHandle takes hashtable table, integer parentKey, integer childKey returns multiboard +native LoadMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey returns multiboarditem +native LoadTrackableHandle takes hashtable table, integer parentKey, integer childKey returns trackable +native LoadDialogHandle takes hashtable table, integer parentKey, integer childKey returns dialog +native LoadButtonHandle takes hashtable table, integer parentKey, integer childKey returns button +native LoadTextTagHandle takes hashtable table, integer parentKey, integer childKey returns texttag +native LoadLightningHandle takes hashtable table, integer parentKey, integer childKey returns lightning +native LoadImageHandle takes hashtable table, integer parentKey, integer childKey returns image +native LoadUbersplatHandle takes hashtable table, integer parentKey, integer childKey returns ubersplat +native LoadRegionHandle takes hashtable table, integer parentKey, integer childKey returns region +native LoadFogStateHandle takes hashtable table, integer parentKey, integer childKey returns fogstate +native LoadFogModifierHandle takes hashtable table, integer parentKey, integer childKey returns fogmodifier +native LoadHashtableHandle takes hashtable table, integer parentKey, integer childKey returns hashtable + +native HaveSavedInteger takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedReal takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedString takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedHandle takes hashtable table, integer parentKey, integer childKey returns boolean + +native RemoveSavedInteger takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedReal takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedString takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedHandle takes hashtable table, integer parentKey, integer childKey returns nothing + +native FlushParentHashtable takes hashtable table returns nothing +native FlushChildHashtable takes hashtable table, integer parentKey returns nothing + + +//============================================================================ +// Randomization API +native GetRandomInt takes integer lowBound, integer highBound returns integer +native GetRandomReal takes real lowBound, real highBound returns real + +native CreateUnitPool takes nothing returns unitpool +native DestroyUnitPool takes unitpool whichPool returns nothing +native UnitPoolAddUnitType takes unitpool whichPool, integer unitId, real weight returns nothing +native UnitPoolRemoveUnitType takes unitpool whichPool, integer unitId returns nothing +native PlaceRandomUnit takes unitpool whichPool, player forWhichPlayer, real x, real y, real facing returns unit + +native CreateItemPool takes nothing returns itempool +native DestroyItemPool takes itempool whichItemPool returns nothing +native ItemPoolAddItemType takes itempool whichItemPool, integer itemId, real weight returns nothing +native ItemPoolRemoveItemType takes itempool whichItemPool, integer itemId returns nothing +native PlaceRandomItem takes itempool whichItemPool, real x, real y returns item + +// Choose any random unit/item. (NP means Neutral Passive) +native ChooseRandomCreep takes integer level returns integer +native ChooseRandomNPBuilding takes nothing returns integer +native ChooseRandomItem takes integer level returns integer +native ChooseRandomItemEx takes itemtype whichType, integer level returns integer +native SetRandomSeed takes integer seed returns nothing + +//============================================================================ +// Visual API +native SetTerrainFog takes real a, real b, real c, real d, real e returns nothing +native ResetTerrainFog takes nothing returns nothing + +native SetUnitFog takes real a, real b, real c, real d, real e returns nothing +native SetTerrainFogEx takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing +native DisplayTextToPlayer takes player toPlayer, real x, real y, string message returns nothing +native DisplayTimedTextToPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native DisplayTimedTextFromPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native ClearTextMessages takes nothing returns nothing +native SetDayNightModels takes string terrainDNCFile, string unitDNCFile returns nothing +native SetSkyModel takes string skyModelFile returns nothing +native EnableUserControl takes boolean b returns nothing +native EnableUserUI takes boolean b returns nothing +native SuspendTimeOfDay takes boolean b returns nothing +native SetTimeOfDayScale takes real r returns nothing +native GetTimeOfDayScale takes nothing returns real +native ShowInterface takes boolean flag, real fadeDuration returns nothing +native PauseGame takes boolean flag returns nothing +native UnitAddIndicator takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing +native AddIndicator takes widget whichWidget, integer red, integer green, integer blue, integer alpha returns nothing +native PingMinimap takes real x, real y, real duration returns nothing +native PingMinimapEx takes real x, real y, real duration, integer red, integer green, integer blue, boolean extraEffects returns nothing +native EnableOcclusion takes boolean flag returns nothing +native SetIntroShotText takes string introText returns nothing +native SetIntroShotModel takes string introModelPath returns nothing +native EnableWorldFogBoundary takes boolean b returns nothing +native PlayModelCinematic takes string modelName returns nothing +native PlayCinematic takes string movieName returns nothing +native ForceUIKey takes string key returns nothing +native ForceUICancel takes nothing returns nothing +native DisplayLoadDialog takes nothing returns nothing +native SetAltMinimapIcon takes string iconPath returns nothing +native DisableRestartMission takes boolean flag returns nothing + +native CreateTextTag takes nothing returns texttag +native DestroyTextTag takes texttag t returns nothing +native SetTextTagText takes texttag t, string s, real height returns nothing +native SetTextTagPos takes texttag t, real x, real y, real heightOffset returns nothing +native SetTextTagPosUnit takes texttag t, unit whichUnit, real heightOffset returns nothing +native SetTextTagColor takes texttag t, integer red, integer green, integer blue, integer alpha returns nothing +native SetTextTagVelocity takes texttag t, real xvel, real yvel returns nothing +native SetTextTagVisibility takes texttag t, boolean flag returns nothing +native SetTextTagSuspended takes texttag t, boolean flag returns nothing +native SetTextTagPermanent takes texttag t, boolean flag returns nothing +native SetTextTagAge takes texttag t, real age returns nothing +native SetTextTagLifespan takes texttag t, real lifespan returns nothing +native SetTextTagFadepoint takes texttag t, real fadepoint returns nothing + +native SetReservedLocalHeroButtons takes integer reserved returns nothing +native GetAllyColorFilterState takes nothing returns integer +native SetAllyColorFilterState takes integer state returns nothing +native GetCreepCampFilterState takes nothing returns boolean +native SetCreepCampFilterState takes boolean state returns nothing +native EnableMinimapFilterButtons takes boolean enableAlly, boolean enableCreep returns nothing +native EnableDragSelect takes boolean state, boolean ui returns nothing +native EnablePreSelect takes boolean state, boolean ui returns nothing +native EnableSelect takes boolean state, boolean ui returns nothing + +//============================================================================ +// Trackable API +native CreateTrackable takes string trackableModelPath, real x, real y, real facing returns trackable + +//============================================================================ +// Quest API +native CreateQuest takes nothing returns quest +native DestroyQuest takes quest whichQuest returns nothing +native QuestSetTitle takes quest whichQuest, string title returns nothing +native QuestSetDescription takes quest whichQuest, string description returns nothing +native QuestSetIconPath takes quest whichQuest, string iconPath returns nothing + +native QuestSetRequired takes quest whichQuest, boolean required returns nothing +native QuestSetCompleted takes quest whichQuest, boolean completed returns nothing +native QuestSetDiscovered takes quest whichQuest, boolean discovered returns nothing +native QuestSetFailed takes quest whichQuest, boolean failed returns nothing +native QuestSetEnabled takes quest whichQuest, boolean enabled returns nothing + +native IsQuestRequired takes quest whichQuest returns boolean +native IsQuestCompleted takes quest whichQuest returns boolean +native IsQuestDiscovered takes quest whichQuest returns boolean +native IsQuestFailed takes quest whichQuest returns boolean +native IsQuestEnabled takes quest whichQuest returns boolean + +native QuestCreateItem takes quest whichQuest returns questitem +native QuestItemSetDescription takes questitem whichQuestItem, string description returns nothing +native QuestItemSetCompleted takes questitem whichQuestItem, boolean completed returns nothing + +native IsQuestItemCompleted takes questitem whichQuestItem returns boolean + +native CreateDefeatCondition takes nothing returns defeatcondition +native DestroyDefeatCondition takes defeatcondition whichCondition returns nothing +native DefeatConditionSetDescription takes defeatcondition whichCondition, string description returns nothing + +native FlashQuestDialogButton takes nothing returns nothing +native ForceQuestDialogUpdate takes nothing returns nothing + +//============================================================================ +// Timer Dialog API +native CreateTimerDialog takes timer t returns timerdialog +native DestroyTimerDialog takes timerdialog whichDialog returns nothing +native TimerDialogSetTitle takes timerdialog whichDialog, string title returns nothing +native TimerDialogSetTitleColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetTimeColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetSpeed takes timerdialog whichDialog, real speedMultFactor returns nothing +native TimerDialogDisplay takes timerdialog whichDialog, boolean display returns nothing +native IsTimerDialogDisplayed takes timerdialog whichDialog returns boolean +native TimerDialogSetRealTimeRemaining takes timerdialog whichDialog, real timeRemaining returns nothing + +//============================================================================ +// Leaderboard API + +// Create a leaderboard object +native CreateLeaderboard takes nothing returns leaderboard +native DestroyLeaderboard takes leaderboard lb returns nothing + +native LeaderboardDisplay takes leaderboard lb, boolean show returns nothing +native IsLeaderboardDisplayed takes leaderboard lb returns boolean + +native LeaderboardGetItemCount takes leaderboard lb returns integer + +native LeaderboardSetSizeByItemCount takes leaderboard lb, integer count returns nothing +native LeaderboardAddItem takes leaderboard lb, string label, integer value, player p returns nothing +native LeaderboardRemoveItem takes leaderboard lb, integer index returns nothing +native LeaderboardRemovePlayerItem takes leaderboard lb, player p returns nothing +native LeaderboardClear takes leaderboard lb returns nothing + +native LeaderboardSortItemsByValue takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByPlayer takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByLabel takes leaderboard lb, boolean ascending returns nothing + +native LeaderboardHasPlayerItem takes leaderboard lb, player p returns boolean +native LeaderboardGetPlayerIndex takes leaderboard lb, player p returns integer +native LeaderboardSetLabel takes leaderboard lb, string label returns nothing +native LeaderboardGetLabelText takes leaderboard lb returns string + +native PlayerSetLeaderboard takes player toPlayer, leaderboard lb returns nothing +native PlayerGetLeaderboard takes player toPlayer returns leaderboard + +native LeaderboardSetLabelColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetValueColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetStyle takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + +native LeaderboardSetItemValue takes leaderboard lb, integer whichItem, integer val returns nothing +native LeaderboardSetItemLabel takes leaderboard lb, integer whichItem, string val returns nothing +native LeaderboardSetItemStyle takes leaderboard lb, integer whichItem, boolean showLabel, boolean showValue, boolean showIcon returns nothing +native LeaderboardSetItemLabelColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetItemValueColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing + +//============================================================================ +// Multiboard API +//============================================================================ + +// Create a multiboard object +native CreateMultiboard takes nothing returns multiboard +native DestroyMultiboard takes multiboard lb returns nothing + +native MultiboardDisplay takes multiboard lb, boolean show returns nothing +native IsMultiboardDisplayed takes multiboard lb returns boolean + +native MultiboardMinimize takes multiboard lb, boolean minimize returns nothing +native IsMultiboardMinimized takes multiboard lb returns boolean +native MultiboardClear takes multiboard lb returns nothing + +native MultiboardSetTitleText takes multiboard lb, string label returns nothing +native MultiboardGetTitleText takes multiboard lb returns string +native MultiboardSetTitleTextColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing + +native MultiboardGetRowCount takes multiboard lb returns integer +native MultiboardGetColumnCount takes multiboard lb returns integer + +native MultiboardSetColumnCount takes multiboard lb, integer count returns nothing +native MultiboardSetRowCount takes multiboard lb, integer count returns nothing + +// broadcast settings to all items +native MultiboardSetItemsStyle takes multiboard lb, boolean showValues, boolean showIcons returns nothing +native MultiboardSetItemsValue takes multiboard lb, string value returns nothing +native MultiboardSetItemsValueColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemsWidth takes multiboard lb, real width returns nothing +native MultiboardSetItemsIcon takes multiboard lb, string iconPath returns nothing + + +// funcs for modifying individual items +native MultiboardGetItem takes multiboard lb, integer row, integer column returns multiboarditem +native MultiboardReleaseItem takes multiboarditem mbi returns nothing + +native MultiboardSetItemStyle takes multiboarditem mbi, boolean showValue, boolean showIcon returns nothing +native MultiboardSetItemValue takes multiboarditem mbi, string val returns nothing +native MultiboardSetItemValueColor takes multiboarditem mbi, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemWidth takes multiboarditem mbi, real width returns nothing +native MultiboardSetItemIcon takes multiboarditem mbi, string iconFileName returns nothing + +// meant to unequivocally suspend display of existing and +// subsequently displayed multiboards +// +native MultiboardSuppressDisplay takes boolean flag returns nothing + +//============================================================================ +// Camera API +native SetCameraPosition takes real x, real y returns nothing +native SetCameraQuickPosition takes real x, real y returns nothing +native SetCameraBounds takes real x1, real y1, real x2, real y2, real x3, real y3, real x4, real y4 returns nothing +native StopCamera takes nothing returns nothing +native ResetToGameCamera takes real duration returns nothing +native PanCameraTo takes real x, real y returns nothing +native PanCameraToTimed takes real x, real y, real duration returns nothing +native PanCameraToWithZ takes real x, real y, real zOffsetDest returns nothing +native PanCameraToTimedWithZ takes real x, real y, real zOffsetDest, real duration returns nothing +native SetCinematicCamera takes string cameraModelFile returns nothing +native SetCameraRotateMode takes real x, real y, real radiansToSweep, real duration returns nothing +native SetCameraField takes camerafield whichField, real value, real duration returns nothing +native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing +native SetCameraTargetController takes unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing +native SetCameraOrientController takes unit whichUnit, real xoffset, real yoffset returns nothing + +native CreateCameraSetup takes nothing returns camerasetup +native CameraSetupSetField takes camerasetup whichSetup, camerafield whichField, real value, real duration returns nothing +native CameraSetupGetField takes camerasetup whichSetup, camerafield whichField returns real +native CameraSetupSetDestPosition takes camerasetup whichSetup, real x, real y, real duration returns nothing +native CameraSetupGetDestPositionLoc takes camerasetup whichSetup returns location +native CameraSetupGetDestPositionX takes camerasetup whichSetup returns real +native CameraSetupGetDestPositionY takes camerasetup whichSetup returns real +native CameraSetupApply takes camerasetup whichSetup, boolean doPan, boolean panTimed returns nothing +native CameraSetupApplyWithZ takes camerasetup whichSetup, real zDestOffset returns nothing +native CameraSetupApplyForceDuration takes camerasetup whichSetup, boolean doPan, real forceDuration returns nothing +native CameraSetupApplyForceDurationWithZ takes camerasetup whichSetup, real zDestOffset, real forceDuration returns nothing + +native CameraSetTargetNoise takes real mag, real velocity returns nothing +native CameraSetSourceNoise takes real mag, real velocity returns nothing + +native CameraSetTargetNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing +native CameraSetSourceNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing + +native CameraSetSmoothingFactor takes real factor returns nothing + +native SetCineFilterTexture takes string filename returns nothing +native SetCineFilterBlendMode takes blendmode whichMode returns nothing +native SetCineFilterTexMapFlags takes texmapflags whichFlags returns nothing +native SetCineFilterStartUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterEndUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterStartColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterEndColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterDuration takes real duration returns nothing +native DisplayCineFilter takes boolean flag returns nothing +native IsCineFilterDisplayed takes nothing returns boolean + +native SetCinematicScene takes integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing +native EndCinematicScene takes nothing returns nothing +native ForceCinematicSubtitles takes boolean flag returns nothing + +native GetCameraMargin takes integer whichMargin returns real + +// These return values for the local players camera only... +constant native GetCameraBoundMinX takes nothing returns real +constant native GetCameraBoundMinY takes nothing returns real +constant native GetCameraBoundMaxX takes nothing returns real +constant native GetCameraBoundMaxY takes nothing returns real +constant native GetCameraField takes camerafield whichField returns real +constant native GetCameraTargetPositionX takes nothing returns real +constant native GetCameraTargetPositionY takes nothing returns real +constant native GetCameraTargetPositionZ takes nothing returns real +constant native GetCameraTargetPositionLoc takes nothing returns location +constant native GetCameraEyePositionX takes nothing returns real +constant native GetCameraEyePositionY takes nothing returns real +constant native GetCameraEyePositionZ takes nothing returns real +constant native GetCameraEyePositionLoc takes nothing returns location + +//============================================================================ +// Sound API +// +native NewSoundEnvironment takes string environmentName returns nothing + +native CreateSound takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string eaxSetting returns sound +native CreateSoundFilenameWithLabel takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string SLKEntryName returns sound +native CreateSoundFromLabel takes string soundLabel, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate returns sound +native CreateMIDISound takes string soundLabel, integer fadeInRate, integer fadeOutRate returns sound + +native SetSoundParamsFromLabel takes sound soundHandle, string soundLabel returns nothing +native SetSoundDistanceCutoff takes sound soundHandle, real cutoff returns nothing +native SetSoundChannel takes sound soundHandle, integer channel returns nothing +native SetSoundVolume takes sound soundHandle, integer volume returns nothing +native SetSoundPitch takes sound soundHandle, real pitch returns nothing + +// the following method must be called immediately after calling "StartSound" +native SetSoundPlayPosition takes sound soundHandle, integer millisecs returns nothing + +// these calls are only valid if the sound was created with 3d enabled +native SetSoundDistances takes sound soundHandle, real minDist, real maxDist returns nothing +native SetSoundConeAngles takes sound soundHandle, real inside, real outside, integer outsideVolume returns nothing +native SetSoundConeOrientation takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundPosition takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundVelocity takes sound soundHandle, real x, real y, real z returns nothing +native AttachSoundToUnit takes sound soundHandle, unit whichUnit returns nothing + +native StartSound takes sound soundHandle returns nothing +native StopSound takes sound soundHandle, boolean killWhenDone, boolean fadeOut returns nothing +native KillSoundWhenDone takes sound soundHandle returns nothing + +// Music Interface. Note that if music is disabled, these calls do nothing +native SetMapMusic takes string musicName, boolean random, integer index returns nothing +native ClearMapMusic takes nothing returns nothing + +native PlayMusic takes string musicName returns nothing +native PlayMusicEx takes string musicName, integer frommsecs, integer fadeinmsecs returns nothing +native StopMusic takes boolean fadeOut returns nothing +native ResumeMusic takes nothing returns nothing + +native PlayThematicMusic takes string musicFileName returns nothing +native PlayThematicMusicEx takes string musicFileName, integer frommsecs returns nothing +native EndThematicMusic takes nothing returns nothing + +native SetMusicVolume takes integer volume returns nothing +native SetMusicPlayPosition takes integer millisecs returns nothing +native SetThematicMusicPlayPosition takes integer millisecs returns nothing + +// other music and sound calls +native SetSoundDuration takes sound soundHandle, integer duration returns nothing +native GetSoundDuration takes sound soundHandle returns integer +native GetSoundFileDuration takes string musicFileName returns integer + +native VolumeGroupSetVolume takes volumegroup vgroup, real scale returns nothing +native VolumeGroupReset takes nothing returns nothing + +native GetSoundIsPlaying takes sound soundHandle returns boolean +native GetSoundIsLoading takes sound soundHandle returns boolean + +native RegisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing +native UnregisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing + +//============================================================================ +// Effects API +// +native AddWeatherEffect takes rect where, integer effectID returns weathereffect +native RemoveWeatherEffect takes weathereffect whichEffect returns nothing +native EnableWeatherEffect takes weathereffect whichEffect, boolean enable returns nothing + +native TerrainDeformCrater takes real x, real y, real radius, real depth, integer duration, boolean permanent returns terraindeformation +native TerrainDeformRipple takes real x, real y, real radius, real depth, integer duration, integer count, real spaceWaves, real timeWaves, real radiusStartPct, boolean limitNeg returns terraindeformation +native TerrainDeformWave takes real x, real y, real dirX, real dirY, real distance, real speed, real radius, real depth, integer trailTime, integer count returns terraindeformation +native TerrainDeformRandom takes real x, real y, real radius, real minDelta, real maxDelta, integer duration, integer updateInterval returns terraindeformation +native TerrainDeformStop takes terraindeformation deformation, integer duration returns nothing +native TerrainDeformStopAll takes nothing returns nothing + +native AddSpecialEffect takes string modelName, real x, real y returns effect +native AddSpecialEffectLoc takes string modelName, location where returns effect +native AddSpecialEffectTarget takes string modelName, widget targetWidget, string attachPointName returns effect +native DestroyEffect takes effect whichEffect returns nothing + +native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect +native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect +native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect +native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect +native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect +native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect + +native AddLightning takes string codeName, boolean checkVisibility, real x1, real y1, real x2, real y2 returns lightning +native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning +native DestroyLightning takes lightning whichBolt returns boolean +native MoveLightning takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real x2, real y2 returns boolean +native MoveLightningEx takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns boolean +native GetLightningColorA takes lightning whichBolt returns real +native GetLightningColorR takes lightning whichBolt returns real +native GetLightningColorG takes lightning whichBolt returns real +native GetLightningColorB takes lightning whichBolt returns real +native SetLightningColor takes lightning whichBolt, real r, real g, real b, real a returns boolean + +native GetAbilityEffect takes string abilityString, effecttype t, integer index returns string +native GetAbilityEffectById takes integer abilityId, effecttype t, integer index returns string +native GetAbilitySound takes string abilityString, soundtype t returns string +native GetAbilitySoundById takes integer abilityId, soundtype t returns string + +//============================================================================ +// Terrain API +// +native GetTerrainCliffLevel takes real x, real y returns integer +native SetWaterBaseColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetWaterDeforms takes boolean val returns nothing +native GetTerrainType takes real x, real y returns integer +native GetTerrainVariance takes real x, real y returns integer +native SetTerrainType takes real x, real y, integer terrainType, integer variation, integer area, integer shape returns nothing +native IsTerrainPathable takes real x, real y, pathingtype t returns boolean +native SetTerrainPathable takes real x, real y, pathingtype t, boolean flag returns nothing + +//============================================================================ +// Image API +// +native CreateImage takes string file, real sizeX, real sizeY, real sizeZ, real posX, real posY, real posZ, real originX, real originY, real originZ, integer imageType returns image +native DestroyImage takes image whichImage returns nothing +native ShowImage takes image whichImage, boolean flag returns nothing +native SetImageConstantHeight takes image whichImage, boolean flag, real height returns nothing +native SetImagePosition takes image whichImage, real x, real y, real z returns nothing +native SetImageColor takes image whichImage, integer red, integer green, integer blue, integer alpha returns nothing +native SetImageRender takes image whichImage, boolean flag returns nothing +native SetImageRenderAlways takes image whichImage, boolean flag returns nothing +native SetImageAboveWater takes image whichImage, boolean flag, boolean useWaterAlpha returns nothing +native SetImageType takes image whichImage, integer imageType returns nothing + +//============================================================================ +// Ubersplat API +// +native CreateUbersplat takes real x, real y, string name, integer red, integer green, integer blue, integer alpha, boolean forcePaused, boolean noBirthTime returns ubersplat +native DestroyUbersplat takes ubersplat whichSplat returns nothing +native ResetUbersplat takes ubersplat whichSplat returns nothing +native FinishUbersplat takes ubersplat whichSplat returns nothing +native ShowUbersplat takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRender takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRenderAlways takes ubersplat whichSplat, boolean flag returns nothing + +//============================================================================ +// Blight API +// +native SetBlight takes player whichPlayer, real x, real y, real radius, boolean addBlight returns nothing +native SetBlightRect takes player whichPlayer, rect r, boolean addBlight returns nothing +native SetBlightPoint takes player whichPlayer, real x, real y, boolean addBlight returns nothing +native SetBlightLoc takes player whichPlayer, location whichLocation, real radius, boolean addBlight returns nothing +native CreateBlightedGoldmine takes player id, real x, real y, real face returns unit +native IsPointBlighted takes real x, real y returns boolean + +//============================================================================ +// Doodad API +// +native SetDoodadAnimation takes real x, real y, real radius, integer doodadID, boolean nearestOnly, string animName, boolean animRandom returns nothing +native SetDoodadAnimationRect takes rect r, integer doodadID, string animName, boolean animRandom returns nothing + +//============================================================================ +// Computer AI interface +// +native StartMeleeAI takes player num, string script returns nothing +native StartCampaignAI takes player num, string script returns nothing +native CommandAI takes player num, integer command, integer data returns nothing +native PauseCompAI takes player p, boolean pause returns nothing +native GetAIDifficulty takes player num returns aidifficulty + +native RemoveGuardPosition takes unit hUnit returns nothing +native RecycleGuardPosition takes unit hUnit returns nothing +native RemoveAllGuardPositions takes player num returns nothing + +//============================================================================ +native Cheat takes string cheatStr returns nothing +native IsNoVictoryCheat takes nothing returns boolean +native IsNoDefeatCheat takes nothing returns boolean + +native Preload takes string filename returns nothing +native PreloadEnd takes real timeout returns nothing + +native PreloadStart takes nothing returns nothing +native PreloadRefresh takes nothing returns nothing +native PreloadEndEx takes nothing returns nothing + +native PreloadGenClear takes nothing returns nothing +native PreloadGenStart takes nothing returns nothing +native PreloadGenEnd takes string filename returns nothing +native Preloader takes string filename returns nothing diff --git a/jass/system/rb/blizzard.j b/jass/system/rb/blizzard.j new file mode 100644 index 0000000..dff5fae --- /dev/null +++ b/jass/system/rb/blizzard.j @@ -0,0 +1,9732 @@ +//=========================================================================== +// Blizzard.j ( define Jass2 functions that need to be in every map script ) +//=========================================================================== + + +globals + //----------------------------------------------------------------------- + // Constants + // + + // Misc constants + constant real bj_PI = 3.14159 + constant real bj_E = 2.71828 + constant real bj_CELLWIDTH = 128.0 + constant real bj_CLIFFHEIGHT = 128.0 + constant real bj_UNIT_FACING = 270.0 + constant real bj_RADTODEG = 180.0/bj_PI + constant real bj_DEGTORAD = bj_PI/180.0 + constant real bj_TEXT_DELAY_QUEST = 20.00 + constant real bj_TEXT_DELAY_QUESTUPDATE = 20.00 + constant real bj_TEXT_DELAY_QUESTDONE = 20.00 + constant real bj_TEXT_DELAY_QUESTFAILED = 20.00 + constant real bj_TEXT_DELAY_QUESTREQUIREMENT = 20.00 + constant real bj_TEXT_DELAY_MISSIONFAILED = 20.00 + constant real bj_TEXT_DELAY_ALWAYSHINT = 12.00 + constant real bj_TEXT_DELAY_HINT = 12.00 + constant real bj_TEXT_DELAY_SECRET = 10.00 + constant real bj_TEXT_DELAY_UNITACQUIRED = 15.00 + constant real bj_TEXT_DELAY_UNITAVAILABLE = 10.00 + constant real bj_TEXT_DELAY_ITEMACQUIRED = 10.00 + constant real bj_TEXT_DELAY_WARNING = 12.00 + constant real bj_QUEUE_DELAY_QUEST = 5.00 + constant real bj_QUEUE_DELAY_HINT = 5.00 + constant real bj_QUEUE_DELAY_SECRET = 3.00 + constant real bj_HANDICAP_EASY = 60.00 + constant real bj_GAME_STARTED_THRESHOLD = 0.01 + constant real bj_WAIT_FOR_COND_MIN_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_SKIP_THRESHOLD = 2.00 + + // Game constants + constant integer bj_MAX_INVENTORY = 6 + constant integer bj_MAX_PLAYERS = 12 + constant integer bj_PLAYER_NEUTRAL_VICTIM = 13 + constant integer bj_PLAYER_NEUTRAL_EXTRA = 14 + constant integer bj_MAX_PLAYER_SLOTS = 16 + constant integer bj_MAX_SKELETONS = 25 + constant integer bj_MAX_STOCK_ITEM_SLOTS = 11 + constant integer bj_MAX_STOCK_UNIT_SLOTS = 11 + constant integer bj_MAX_ITEM_LEVEL = 10 + + // Ideally these would be looked up from Units/MiscData.txt, + // but there is currently no script functionality exposed to do that + constant real bj_TOD_DAWN = 6.00 + constant real bj_TOD_DUSK = 18.00 + + // Melee game settings: + // - Starting Time of Day (TOD) + // - Starting Gold + // - Starting Lumber + // - Starting Hero Tokens (free heroes) + // - Max heroes allowed per player + // - Max heroes allowed per hero type + // - Distance from start loc to search for nearby mines + // + constant real bj_MELEE_STARTING_TOD = 8.00 + constant integer bj_MELEE_STARTING_GOLD_V0 = 750 + constant integer bj_MELEE_STARTING_GOLD_V1 = 500 + constant integer bj_MELEE_STARTING_LUMBER_V0 = 200 + constant integer bj_MELEE_STARTING_LUMBER_V1 = 150 + constant integer bj_MELEE_STARTING_HERO_TOKENS = 1 + constant integer bj_MELEE_HERO_LIMIT = 3 + constant integer bj_MELEE_HERO_TYPE_LIMIT = 1 + constant real bj_MELEE_MINE_SEARCH_RADIUS = 2000 + constant real bj_MELEE_CLEAR_UNITS_RADIUS = 1500 + constant real bj_MELEE_CRIPPLE_TIMEOUT = 120.00 + constant real bj_MELEE_CRIPPLE_MSG_DURATION = 20.00 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V0 = 3 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V1 = 1 + + // Delay between a creep's death and the time it may drop an item. + constant real bj_CREEP_ITEM_DELAY = 0.50 + + // Timing settings for Marketplace inventories. + constant real bj_STOCK_RESTOCK_INITIAL_DELAY = 120 + constant real bj_STOCK_RESTOCK_INTERVAL = 30 + constant integer bj_STOCK_MAX_ITERATIONS = 20 + + // Max events registered by a single "dest dies in region" event. + constant integer bj_MAX_DEST_IN_REGION_EVENTS = 64 + + // Camera settings + constant integer bj_CAMERA_MIN_FARZ = 100 + constant integer bj_CAMERA_DEFAULT_DISTANCE = 1650 + constant integer bj_CAMERA_DEFAULT_FARZ = 5000 + constant integer bj_CAMERA_DEFAULT_AOA = 304 + constant integer bj_CAMERA_DEFAULT_FOV = 70 + constant integer bj_CAMERA_DEFAULT_ROLL = 0 + constant integer bj_CAMERA_DEFAULT_ROTATION = 90 + + // Rescue + constant real bj_RESCUE_PING_TIME = 2.00 + + // Transmission behavior settings + constant real bj_NOTHING_SOUND_DURATION = 5.00 + constant real bj_TRANSMISSION_PING_TIME = 1.00 + constant integer bj_TRANSMISSION_IND_RED = 255 + constant integer bj_TRANSMISSION_IND_BLUE = 255 + constant integer bj_TRANSMISSION_IND_GREEN = 255 + constant integer bj_TRANSMISSION_IND_ALPHA = 255 + constant real bj_TRANSMISSION_PORT_HANGTIME = 1.50 + + // Cinematic mode settings + constant real bj_CINEMODE_INTERFACEFADE = 0.50 + constant gamespeed bj_CINEMODE_GAMESPEED = MAP_SPEED_NORMAL + + // Cinematic mode volume levels + constant real bj_CINEMODE_VOLUME_UNITMOVEMENT = 0.40 + constant real bj_CINEMODE_VOLUME_UNITSOUNDS = 0.00 + constant real bj_CINEMODE_VOLUME_COMBAT = 0.40 + constant real bj_CINEMODE_VOLUME_SPELLS = 0.40 + constant real bj_CINEMODE_VOLUME_UI = 0.00 + constant real bj_CINEMODE_VOLUME_MUSIC = 0.55 + constant real bj_CINEMODE_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_CINEMODE_VOLUME_FIRE = 0.60 + + // Speech mode volume levels + constant real bj_SPEECH_VOLUME_UNITMOVEMENT = 0.25 + constant real bj_SPEECH_VOLUME_UNITSOUNDS = 0.00 + constant real bj_SPEECH_VOLUME_COMBAT = 0.25 + constant real bj_SPEECH_VOLUME_SPELLS = 0.25 + constant real bj_SPEECH_VOLUME_UI = 0.00 + constant real bj_SPEECH_VOLUME_MUSIC = 0.55 + constant real bj_SPEECH_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_SPEECH_VOLUME_FIRE = 0.60 + + // Smart pan settings + constant real bj_SMARTPAN_TRESHOLD_PAN = 500 + constant real bj_SMARTPAN_TRESHOLD_SNAP = 3500 + + // QueuedTriggerExecute settings + constant integer bj_MAX_QUEUED_TRIGGERS = 100 + constant real bj_QUEUED_TRIGGER_TIMEOUT = 180.00 + + // Campaign indexing constants + constant integer bj_CAMPAIGN_INDEX_T = 0 + constant integer bj_CAMPAIGN_INDEX_H = 1 + constant integer bj_CAMPAIGN_INDEX_U = 2 + constant integer bj_CAMPAIGN_INDEX_O = 3 + constant integer bj_CAMPAIGN_INDEX_N = 4 + constant integer bj_CAMPAIGN_INDEX_XN = 5 + constant integer bj_CAMPAIGN_INDEX_XH = 6 + constant integer bj_CAMPAIGN_INDEX_XU = 7 + constant integer bj_CAMPAIGN_INDEX_XO = 8 + + // Campaign offset constants (for mission indexing) + constant integer bj_CAMPAIGN_OFFSET_T = 0 + constant integer bj_CAMPAIGN_OFFSET_H = 1 + constant integer bj_CAMPAIGN_OFFSET_U = 2 + constant integer bj_CAMPAIGN_OFFSET_O = 3 + constant integer bj_CAMPAIGN_OFFSET_N = 4 + constant integer bj_CAMPAIGN_OFFSET_XN = 0 + constant integer bj_CAMPAIGN_OFFSET_XH = 1 + constant integer bj_CAMPAIGN_OFFSET_XU = 2 + constant integer bj_CAMPAIGN_OFFSET_XO = 3 + + // Mission indexing constants + // Tutorial + constant integer bj_MISSION_INDEX_T00 = bj_CAMPAIGN_OFFSET_T * 1000 + 0 + constant integer bj_MISSION_INDEX_T01 = bj_CAMPAIGN_OFFSET_T * 1000 + 1 + // Human + constant integer bj_MISSION_INDEX_H00 = bj_CAMPAIGN_OFFSET_H * 1000 + 0 + constant integer bj_MISSION_INDEX_H01 = bj_CAMPAIGN_OFFSET_H * 1000 + 1 + constant integer bj_MISSION_INDEX_H02 = bj_CAMPAIGN_OFFSET_H * 1000 + 2 + constant integer bj_MISSION_INDEX_H03 = bj_CAMPAIGN_OFFSET_H * 1000 + 3 + constant integer bj_MISSION_INDEX_H04 = bj_CAMPAIGN_OFFSET_H * 1000 + 4 + constant integer bj_MISSION_INDEX_H05 = bj_CAMPAIGN_OFFSET_H * 1000 + 5 + constant integer bj_MISSION_INDEX_H06 = bj_CAMPAIGN_OFFSET_H * 1000 + 6 + constant integer bj_MISSION_INDEX_H07 = bj_CAMPAIGN_OFFSET_H * 1000 + 7 + constant integer bj_MISSION_INDEX_H08 = bj_CAMPAIGN_OFFSET_H * 1000 + 8 + constant integer bj_MISSION_INDEX_H09 = bj_CAMPAIGN_OFFSET_H * 1000 + 9 + constant integer bj_MISSION_INDEX_H10 = bj_CAMPAIGN_OFFSET_H * 1000 + 10 + constant integer bj_MISSION_INDEX_H11 = bj_CAMPAIGN_OFFSET_H * 1000 + 11 + // Undead + constant integer bj_MISSION_INDEX_U00 = bj_CAMPAIGN_OFFSET_U * 1000 + 0 + constant integer bj_MISSION_INDEX_U01 = bj_CAMPAIGN_OFFSET_U * 1000 + 1 + constant integer bj_MISSION_INDEX_U02 = bj_CAMPAIGN_OFFSET_U * 1000 + 2 + constant integer bj_MISSION_INDEX_U03 = bj_CAMPAIGN_OFFSET_U * 1000 + 3 + constant integer bj_MISSION_INDEX_U05 = bj_CAMPAIGN_OFFSET_U * 1000 + 4 + constant integer bj_MISSION_INDEX_U07 = bj_CAMPAIGN_OFFSET_U * 1000 + 5 + constant integer bj_MISSION_INDEX_U08 = bj_CAMPAIGN_OFFSET_U * 1000 + 6 + constant integer bj_MISSION_INDEX_U09 = bj_CAMPAIGN_OFFSET_U * 1000 + 7 + constant integer bj_MISSION_INDEX_U10 = bj_CAMPAIGN_OFFSET_U * 1000 + 8 + constant integer bj_MISSION_INDEX_U11 = bj_CAMPAIGN_OFFSET_U * 1000 + 9 + // Orc + constant integer bj_MISSION_INDEX_O00 = bj_CAMPAIGN_OFFSET_O * 1000 + 0 + constant integer bj_MISSION_INDEX_O01 = bj_CAMPAIGN_OFFSET_O * 1000 + 1 + constant integer bj_MISSION_INDEX_O02 = bj_CAMPAIGN_OFFSET_O * 1000 + 2 + constant integer bj_MISSION_INDEX_O03 = bj_CAMPAIGN_OFFSET_O * 1000 + 3 + constant integer bj_MISSION_INDEX_O04 = bj_CAMPAIGN_OFFSET_O * 1000 + 4 + constant integer bj_MISSION_INDEX_O05 = bj_CAMPAIGN_OFFSET_O * 1000 + 5 + constant integer bj_MISSION_INDEX_O06 = bj_CAMPAIGN_OFFSET_O * 1000 + 6 + constant integer bj_MISSION_INDEX_O07 = bj_CAMPAIGN_OFFSET_O * 1000 + 7 + constant integer bj_MISSION_INDEX_O08 = bj_CAMPAIGN_OFFSET_O * 1000 + 8 + constant integer bj_MISSION_INDEX_O09 = bj_CAMPAIGN_OFFSET_O * 1000 + 9 + constant integer bj_MISSION_INDEX_O10 = bj_CAMPAIGN_OFFSET_O * 1000 + 10 + // Night Elf + constant integer bj_MISSION_INDEX_N00 = bj_CAMPAIGN_OFFSET_N * 1000 + 0 + constant integer bj_MISSION_INDEX_N01 = bj_CAMPAIGN_OFFSET_N * 1000 + 1 + constant integer bj_MISSION_INDEX_N02 = bj_CAMPAIGN_OFFSET_N * 1000 + 2 + constant integer bj_MISSION_INDEX_N03 = bj_CAMPAIGN_OFFSET_N * 1000 + 3 + constant integer bj_MISSION_INDEX_N04 = bj_CAMPAIGN_OFFSET_N * 1000 + 4 + constant integer bj_MISSION_INDEX_N05 = bj_CAMPAIGN_OFFSET_N * 1000 + 5 + constant integer bj_MISSION_INDEX_N06 = bj_CAMPAIGN_OFFSET_N * 1000 + 6 + constant integer bj_MISSION_INDEX_N07 = bj_CAMPAIGN_OFFSET_N * 1000 + 7 + constant integer bj_MISSION_INDEX_N08 = bj_CAMPAIGN_OFFSET_N * 1000 + 8 + constant integer bj_MISSION_INDEX_N09 = bj_CAMPAIGN_OFFSET_N * 1000 + 9 + // Expansion Night Elf + constant integer bj_MISSION_INDEX_XN00 = bj_CAMPAIGN_OFFSET_XN * 1000 + 0 + constant integer bj_MISSION_INDEX_XN01 = bj_CAMPAIGN_OFFSET_XN * 1000 + 1 + constant integer bj_MISSION_INDEX_XN02 = bj_CAMPAIGN_OFFSET_XN * 1000 + 2 + constant integer bj_MISSION_INDEX_XN03 = bj_CAMPAIGN_OFFSET_XN * 1000 + 3 + constant integer bj_MISSION_INDEX_XN04 = bj_CAMPAIGN_OFFSET_XN * 1000 + 4 + constant integer bj_MISSION_INDEX_XN05 = bj_CAMPAIGN_OFFSET_XN * 1000 + 5 + constant integer bj_MISSION_INDEX_XN06 = bj_CAMPAIGN_OFFSET_XN * 1000 + 6 + constant integer bj_MISSION_INDEX_XN07 = bj_CAMPAIGN_OFFSET_XN * 1000 + 7 + constant integer bj_MISSION_INDEX_XN08 = bj_CAMPAIGN_OFFSET_XN * 1000 + 8 + constant integer bj_MISSION_INDEX_XN09 = bj_CAMPAIGN_OFFSET_XN * 1000 + 9 + constant integer bj_MISSION_INDEX_XN10 = bj_CAMPAIGN_OFFSET_XN * 1000 + 10 + // Expansion Human + constant integer bj_MISSION_INDEX_XH00 = bj_CAMPAIGN_OFFSET_XH * 1000 + 0 + constant integer bj_MISSION_INDEX_XH01 = bj_CAMPAIGN_OFFSET_XH * 1000 + 1 + constant integer bj_MISSION_INDEX_XH02 = bj_CAMPAIGN_OFFSET_XH * 1000 + 2 + constant integer bj_MISSION_INDEX_XH03 = bj_CAMPAIGN_OFFSET_XH * 1000 + 3 + constant integer bj_MISSION_INDEX_XH04 = bj_CAMPAIGN_OFFSET_XH * 1000 + 4 + constant integer bj_MISSION_INDEX_XH05 = bj_CAMPAIGN_OFFSET_XH * 1000 + 5 + constant integer bj_MISSION_INDEX_XH06 = bj_CAMPAIGN_OFFSET_XH * 1000 + 6 + constant integer bj_MISSION_INDEX_XH07 = bj_CAMPAIGN_OFFSET_XH * 1000 + 7 + constant integer bj_MISSION_INDEX_XH08 = bj_CAMPAIGN_OFFSET_XH * 1000 + 8 + constant integer bj_MISSION_INDEX_XH09 = bj_CAMPAIGN_OFFSET_XH * 1000 + 9 + // Expansion Undead + constant integer bj_MISSION_INDEX_XU00 = bj_CAMPAIGN_OFFSET_XU * 1000 + 0 + constant integer bj_MISSION_INDEX_XU01 = bj_CAMPAIGN_OFFSET_XU * 1000 + 1 + constant integer bj_MISSION_INDEX_XU02 = bj_CAMPAIGN_OFFSET_XU * 1000 + 2 + constant integer bj_MISSION_INDEX_XU03 = bj_CAMPAIGN_OFFSET_XU * 1000 + 3 + constant integer bj_MISSION_INDEX_XU04 = bj_CAMPAIGN_OFFSET_XU * 1000 + 4 + constant integer bj_MISSION_INDEX_XU05 = bj_CAMPAIGN_OFFSET_XU * 1000 + 5 + constant integer bj_MISSION_INDEX_XU06 = bj_CAMPAIGN_OFFSET_XU * 1000 + 6 + constant integer bj_MISSION_INDEX_XU07 = bj_CAMPAIGN_OFFSET_XU * 1000 + 7 + constant integer bj_MISSION_INDEX_XU08 = bj_CAMPAIGN_OFFSET_XU * 1000 + 8 + constant integer bj_MISSION_INDEX_XU09 = bj_CAMPAIGN_OFFSET_XU * 1000 + 9 + constant integer bj_MISSION_INDEX_XU10 = bj_CAMPAIGN_OFFSET_XU * 1000 + 10 + constant integer bj_MISSION_INDEX_XU11 = bj_CAMPAIGN_OFFSET_XU * 1000 + 11 + constant integer bj_MISSION_INDEX_XU12 = bj_CAMPAIGN_OFFSET_XU * 1000 + 12 + constant integer bj_MISSION_INDEX_XU13 = bj_CAMPAIGN_OFFSET_XU * 1000 + 13 + + // Expansion Orc + constant integer bj_MISSION_INDEX_XO00 = bj_CAMPAIGN_OFFSET_XO * 1000 + 0 + + // Cinematic indexing constants + constant integer bj_CINEMATICINDEX_TOP = 0 + constant integer bj_CINEMATICINDEX_HOP = 1 + constant integer bj_CINEMATICINDEX_HED = 2 + constant integer bj_CINEMATICINDEX_OOP = 3 + constant integer bj_CINEMATICINDEX_OED = 4 + constant integer bj_CINEMATICINDEX_UOP = 5 + constant integer bj_CINEMATICINDEX_UED = 6 + constant integer bj_CINEMATICINDEX_NOP = 7 + constant integer bj_CINEMATICINDEX_NED = 8 + constant integer bj_CINEMATICINDEX_XOP = 9 + constant integer bj_CINEMATICINDEX_XED = 10 + + // Alliance settings + constant integer bj_ALLIANCE_UNALLIED = 0 + constant integer bj_ALLIANCE_UNALLIED_VISION = 1 + constant integer bj_ALLIANCE_ALLIED = 2 + constant integer bj_ALLIANCE_ALLIED_VISION = 3 + constant integer bj_ALLIANCE_ALLIED_UNITS = 4 + constant integer bj_ALLIANCE_ALLIED_ADVUNITS = 5 + constant integer bj_ALLIANCE_NEUTRAL = 6 + constant integer bj_ALLIANCE_NEUTRAL_VISION = 7 + + // Keyboard Event Types + constant integer bj_KEYEVENTTYPE_DEPRESS = 0 + constant integer bj_KEYEVENTTYPE_RELEASE = 1 + + // Keyboard Event Keys + constant integer bj_KEYEVENTKEY_LEFT = 0 + constant integer bj_KEYEVENTKEY_RIGHT = 1 + constant integer bj_KEYEVENTKEY_DOWN = 2 + constant integer bj_KEYEVENTKEY_UP = 3 + + // Transmission timing methods + constant integer bj_TIMETYPE_ADD = 0 + constant integer bj_TIMETYPE_SET = 1 + constant integer bj_TIMETYPE_SUB = 2 + + // Camera bounds adjustment methods + constant integer bj_CAMERABOUNDS_ADJUST_ADD = 0 + constant integer bj_CAMERABOUNDS_ADJUST_SUB = 1 + + // Quest creation states + constant integer bj_QUESTTYPE_REQ_DISCOVERED = 0 + constant integer bj_QUESTTYPE_REQ_UNDISCOVERED = 1 + constant integer bj_QUESTTYPE_OPT_DISCOVERED = 2 + constant integer bj_QUESTTYPE_OPT_UNDISCOVERED = 3 + + // Quest message types + constant integer bj_QUESTMESSAGE_DISCOVERED = 0 + constant integer bj_QUESTMESSAGE_UPDATED = 1 + constant integer bj_QUESTMESSAGE_COMPLETED = 2 + constant integer bj_QUESTMESSAGE_FAILED = 3 + constant integer bj_QUESTMESSAGE_REQUIREMENT = 4 + constant integer bj_QUESTMESSAGE_MISSIONFAILED = 5 + constant integer bj_QUESTMESSAGE_ALWAYSHINT = 6 + constant integer bj_QUESTMESSAGE_HINT = 7 + constant integer bj_QUESTMESSAGE_SECRET = 8 + constant integer bj_QUESTMESSAGE_UNITACQUIRED = 9 + constant integer bj_QUESTMESSAGE_UNITAVAILABLE = 10 + constant integer bj_QUESTMESSAGE_ITEMACQUIRED = 11 + constant integer bj_QUESTMESSAGE_WARNING = 12 + + // Leaderboard sorting methods + constant integer bj_SORTTYPE_SORTBYVALUE = 0 + constant integer bj_SORTTYPE_SORTBYPLAYER = 1 + constant integer bj_SORTTYPE_SORTBYLABEL = 2 + + // Cinematic fade filter methods + constant integer bj_CINEFADETYPE_FADEIN = 0 + constant integer bj_CINEFADETYPE_FADEOUT = 1 + constant integer bj_CINEFADETYPE_FADEOUTIN = 2 + + // Buff removal methods + constant integer bj_REMOVEBUFFS_POSITIVE = 0 + constant integer bj_REMOVEBUFFS_NEGATIVE = 1 + constant integer bj_REMOVEBUFFS_ALL = 2 + constant integer bj_REMOVEBUFFS_NONTLIFE = 3 + + // Buff properties - polarity + constant integer bj_BUFF_POLARITY_POSITIVE = 0 + constant integer bj_BUFF_POLARITY_NEGATIVE = 1 + constant integer bj_BUFF_POLARITY_EITHER = 2 + + // Buff properties - resist type + constant integer bj_BUFF_RESIST_MAGIC = 0 + constant integer bj_BUFF_RESIST_PHYSICAL = 1 + constant integer bj_BUFF_RESIST_EITHER = 2 + constant integer bj_BUFF_RESIST_BOTH = 3 + + // Hero stats + constant integer bj_HEROSTAT_STR = 0 + constant integer bj_HEROSTAT_AGI = 1 + constant integer bj_HEROSTAT_INT = 2 + + // Hero skill point modification methods + constant integer bj_MODIFYMETHOD_ADD = 0 + constant integer bj_MODIFYMETHOD_SUB = 1 + constant integer bj_MODIFYMETHOD_SET = 2 + + // Unit state adjustment methods (for replaced units) + constant integer bj_UNIT_STATE_METHOD_ABSOLUTE = 0 + constant integer bj_UNIT_STATE_METHOD_RELATIVE = 1 + constant integer bj_UNIT_STATE_METHOD_DEFAULTS = 2 + constant integer bj_UNIT_STATE_METHOD_MAXIMUM = 3 + + // Gate operations + constant integer bj_GATEOPERATION_CLOSE = 0 + constant integer bj_GATEOPERATION_OPEN = 1 + constant integer bj_GATEOPERATION_DESTROY = 2 + + // Game cache value types + constant integer bj_GAMECACHE_BOOLEAN = 0 + constant integer bj_GAMECACHE_INTEGER = 1 + constant integer bj_GAMECACHE_REAL = 2 + constant integer bj_GAMECACHE_UNIT = 3 + constant integer bj_GAMECACHE_STRING = 4 + + // Item status types + constant integer bj_ITEM_STATUS_HIDDEN = 0 + constant integer bj_ITEM_STATUS_OWNED = 1 + constant integer bj_ITEM_STATUS_INVULNERABLE = 2 + constant integer bj_ITEM_STATUS_POWERUP = 3 + constant integer bj_ITEM_STATUS_SELLABLE = 4 + constant integer bj_ITEM_STATUS_PAWNABLE = 5 + + // Itemcode status types + constant integer bj_ITEMCODE_STATUS_POWERUP = 0 + constant integer bj_ITEMCODE_STATUS_SELLABLE = 1 + constant integer bj_ITEMCODE_STATUS_PAWNABLE = 2 + + // Minimap ping styles + constant integer bj_MINIMAPPINGSTYLE_SIMPLE = 0 + constant integer bj_MINIMAPPINGSTYLE_FLASHY = 1 + constant integer bj_MINIMAPPINGSTYLE_ATTACK = 2 + + // Corpse creation settings + constant real bj_CORPSE_MAX_DEATH_TIME = 8.00 + + // Corpse creation styles + constant integer bj_CORPSETYPE_FLESH = 0 + constant integer bj_CORPSETYPE_BONE = 1 + + // Elevator pathing-blocker destructable code + constant integer bj_ELEVATOR_BLOCKER_CODE = 'DTep' + constant integer bj_ELEVATOR_CODE01 = 'DTrf' + constant integer bj_ELEVATOR_CODE02 = 'DTrx' + + // Elevator wall codes + constant integer bj_ELEVATOR_WALL_TYPE_ALL = 0 + constant integer bj_ELEVATOR_WALL_TYPE_EAST = 1 + constant integer bj_ELEVATOR_WALL_TYPE_NORTH = 2 + constant integer bj_ELEVATOR_WALL_TYPE_SOUTH = 3 + constant integer bj_ELEVATOR_WALL_TYPE_WEST = 4 + + //----------------------------------------------------------------------- + // Variables + // + + // Force predefs + force bj_FORCE_ALL_PLAYERS = null + force array bj_FORCE_PLAYER + + integer bj_MELEE_MAX_TWINKED_HEROES = 0 + + // Map area rects + rect bj_mapInitialPlayableArea = null + rect bj_mapInitialCameraBounds = null + + // Utility function vars + integer bj_forLoopAIndex = 0 + integer bj_forLoopBIndex = 0 + integer bj_forLoopAIndexEnd = 0 + integer bj_forLoopBIndexEnd = 0 + + boolean bj_slotControlReady = false + boolean array bj_slotControlUsed + mapcontrol array bj_slotControl + + // Game started detection vars + timer bj_gameStartedTimer = null + boolean bj_gameStarted = false + timer bj_volumeGroupsTimer = CreateTimer() + + // Singleplayer check + boolean bj_isSinglePlayer = false + + // Day/Night Cycle vars + trigger bj_dncSoundsDay = null + trigger bj_dncSoundsNight = null + sound bj_dayAmbientSound = null + sound bj_nightAmbientSound = null + trigger bj_dncSoundsDawn = null + trigger bj_dncSoundsDusk = null + sound bj_dawnSound = null + sound bj_duskSound = null + boolean bj_useDawnDuskSounds = true + boolean bj_dncIsDaytime = false + + // Triggered sounds + //sound bj_pingMinimapSound = null + sound bj_rescueSound = null + sound bj_questDiscoveredSound = null + sound bj_questUpdatedSound = null + sound bj_questCompletedSound = null + sound bj_questFailedSound = null + sound bj_questHintSound = null + sound bj_questSecretSound = null + sound bj_questItemAcquiredSound = null + sound bj_questWarningSound = null + sound bj_victoryDialogSound = null + sound bj_defeatDialogSound = null + + // Marketplace vars + trigger bj_stockItemPurchased = null + timer bj_stockUpdateTimer = null + boolean array bj_stockAllowedPermanent + boolean array bj_stockAllowedCharged + boolean array bj_stockAllowedArtifact + integer bj_stockPickedItemLevel = 0 + itemtype bj_stockPickedItemType + + // Melee vars + trigger bj_meleeVisibilityTrained = null + boolean bj_meleeVisibilityIsDay = true + boolean bj_meleeGrantHeroItems = false + location bj_meleeNearestMineToLoc = null + unit bj_meleeNearestMine = null + real bj_meleeNearestMineDist = 0.00 + boolean bj_meleeGameOver = false + boolean array bj_meleeDefeated + boolean array bj_meleeVictoried + unit array bj_ghoul + timer array bj_crippledTimer + timerdialog array bj_crippledTimerWindows + boolean array bj_playerIsCrippled + boolean array bj_playerIsExposed + boolean bj_finishSoonAllExposed = false + timerdialog bj_finishSoonTimerDialog = null + integer array bj_meleeTwinkedHeroes + + // Rescue behavior vars + trigger bj_rescueUnitBehavior = null + boolean bj_rescueChangeColorUnit = true + boolean bj_rescueChangeColorBldg = true + + // Transmission vars + timer bj_cineSceneEndingTimer = null + sound bj_cineSceneLastSound = null + trigger bj_cineSceneBeingSkipped = null + + // Cinematic mode vars + gamespeed bj_cineModePriorSpeed = MAP_SPEED_NORMAL + boolean bj_cineModePriorFogSetting = false + boolean bj_cineModePriorMaskSetting = false + boolean bj_cineModeAlreadyIn = false + boolean bj_cineModePriorDawnDusk = false + integer bj_cineModeSavedSeed = 0 + + // Cinematic fade vars + timer bj_cineFadeFinishTimer = null + timer bj_cineFadeContinueTimer = null + real bj_cineFadeContinueRed = 0 + real bj_cineFadeContinueGreen = 0 + real bj_cineFadeContinueBlue = 0 + real bj_cineFadeContinueTrans = 0 + real bj_cineFadeContinueDuration = 0 + string bj_cineFadeContinueTex = "" + + // QueuedTriggerExecute vars + integer bj_queuedExecTotal = 0 + trigger array bj_queuedExecTriggers + boolean array bj_queuedExecUseConds + timer bj_queuedExecTimeoutTimer = CreateTimer() + trigger bj_queuedExecTimeout = null + + // Helper vars (for Filter and Enum funcs) + integer bj_destInRegionDiesCount = 0 + trigger bj_destInRegionDiesTrig = null + integer bj_groupCountUnits = 0 + integer bj_forceCountPlayers = 0 + integer bj_groupEnumTypeId = 0 + player bj_groupEnumOwningPlayer = null + group bj_groupAddGroupDest = null + group bj_groupRemoveGroupDest = null + integer bj_groupRandomConsidered = 0 + unit bj_groupRandomCurrentPick = null + group bj_groupLastCreatedDest = null + group bj_randomSubGroupGroup = null + integer bj_randomSubGroupWant = 0 + integer bj_randomSubGroupTotal = 0 + real bj_randomSubGroupChance = 0 + integer bj_destRandomConsidered = 0 + destructable bj_destRandomCurrentPick = null + destructable bj_elevatorWallBlocker = null + destructable bj_elevatorNeighbor = null + integer bj_itemRandomConsidered = 0 + item bj_itemRandomCurrentPick = null + integer bj_forceRandomConsidered = 0 + player bj_forceRandomCurrentPick = null + unit bj_makeUnitRescuableUnit = null + boolean bj_makeUnitRescuableFlag = true + boolean bj_pauseAllUnitsFlag = true + location bj_enumDestructableCenter = null + real bj_enumDestructableRadius = 0 + playercolor bj_setPlayerTargetColor = null + boolean bj_isUnitGroupDeadResult = true + boolean bj_isUnitGroupEmptyResult = true + boolean bj_isUnitGroupInRectResult = true + rect bj_isUnitGroupInRectRect = null + boolean bj_changeLevelShowScores = false + string bj_changeLevelMapName = null + group bj_suspendDecayFleshGroup = CreateGroup() + group bj_suspendDecayBoneGroup = CreateGroup() + timer bj_delayedSuspendDecayTimer = CreateTimer() + trigger bj_delayedSuspendDecayTrig = null + integer bj_livingPlayerUnitsTypeId = 0 + widget bj_lastDyingWidget = null + + // Random distribution vars + integer bj_randDistCount = 0 + integer array bj_randDistID + integer array bj_randDistChance + + // Last X'd vars + unit bj_lastCreatedUnit = null + item bj_lastCreatedItem = null + item bj_lastRemovedItem = null + unit bj_lastHauntedGoldMine = null + destructable bj_lastCreatedDestructable = null + group bj_lastCreatedGroup = CreateGroup() + fogmodifier bj_lastCreatedFogModifier = null + effect bj_lastCreatedEffect = null + weathereffect bj_lastCreatedWeatherEffect = null + terraindeformation bj_lastCreatedTerrainDeformation = null + quest bj_lastCreatedQuest = null + questitem bj_lastCreatedQuestItem = null + defeatcondition bj_lastCreatedDefeatCondition = null + timer bj_lastStartedTimer = CreateTimer() + timerdialog bj_lastCreatedTimerDialog = null + leaderboard bj_lastCreatedLeaderboard = null + multiboard bj_lastCreatedMultiboard = null + sound bj_lastPlayedSound = null + string bj_lastPlayedMusic = "" + real bj_lastTransmissionDuration = 0 + gamecache bj_lastCreatedGameCache = null + unit bj_lastLoadedUnit = null + button bj_lastCreatedButton = null + unit bj_lastReplacedUnit = null + texttag bj_lastCreatedTextTag = null + lightning bj_lastCreatedLightning = null + image bj_lastCreatedImage = null + ubersplat bj_lastCreatedUbersplat = null + + // Filter function vars + boolexpr filterIssueHauntOrderAtLocBJ = null + boolexpr filterEnumDestructablesInCircleBJ = null + boolexpr filterGetUnitsInRectOfPlayer = null + boolexpr filterGetUnitsOfTypeIdAll = null + boolexpr filterGetUnitsOfPlayerAndTypeId = null + boolexpr filterMeleeTrainedUnitIsHeroBJ = null + boolexpr filterLivingPlayerUnitsOfTypeId = null + + // Memory cleanup vars + boolean bj_wantDestroyGroup = false +endglobals + + + +//*************************************************************************** +//* +//* Debugging Functions +//* +//*************************************************************************** + +//=========================================================================== +function BJDebugMsg takes string msg returns nothing + local integer i = 0 + loop + call DisplayTimedTextToPlayer(Player(i),0,0,60,msg) + set i = i + 1 + exitwhen i == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Math Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function RMinBJ takes real a, real b returns real + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function RMaxBJ takes real a, real b returns real + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function RAbsBJ takes real a returns real + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function RSignBJ takes real a returns real + if (a >= 0.0) then + return 1.0 + else + return -1.0 + endif +endfunction + +//=========================================================================== +function IMinBJ takes integer a, integer b returns integer + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function IMaxBJ takes integer a, integer b returns integer + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function IAbsBJ takes integer a returns integer + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function ISignBJ takes integer a returns integer + if (a >= 0) then + return 1 + else + return -1 + endif +endfunction + +//=========================================================================== +function SinBJ takes real degrees returns real + return Sin(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function CosBJ takes real degrees returns real + return Cos(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function TanBJ takes real degrees returns real + return Tan(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function AsinBJ takes real degrees returns real + return Asin(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AcosBJ takes real degrees returns real + return Acos(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AtanBJ takes real degrees returns real + return Atan(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function Atan2BJ takes real y, real x returns real + return Atan2(y, x) * bj_RADTODEG +endfunction + +//=========================================================================== +function AngleBetweenPoints takes location locA, location locB returns real + return bj_RADTODEG * Atan2(GetLocationY(locB) - GetLocationY(locA), GetLocationX(locB) - GetLocationX(locA)) +endfunction + +//=========================================================================== +function DistanceBetweenPoints takes location locA, location locB returns real + local real dx = GetLocationX(locB) - GetLocationX(locA) + local real dy = GetLocationY(locB) - GetLocationY(locA) + return SquareRoot(dx * dx + dy * dy) +endfunction + +//=========================================================================== +function PolarProjectionBJ takes location source, real dist, real angle returns location + local real x = GetLocationX(source) + dist * Cos(angle * bj_DEGTORAD) + local real y = GetLocationY(source) + dist * Sin(angle * bj_DEGTORAD) + return Location(x, y) +endfunction + +//=========================================================================== +function GetRandomDirectionDeg takes nothing returns real + return GetRandomReal(0, 360) +endfunction + +//=========================================================================== +function GetRandomPercentageBJ takes nothing returns real + return GetRandomReal(0, 100) +endfunction + +//=========================================================================== +function GetRandomLocInRect takes rect whichRect returns location + return Location(GetRandomReal(GetRectMinX(whichRect), GetRectMaxX(whichRect)), GetRandomReal(GetRectMinY(whichRect), GetRectMaxY(whichRect))) +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 18 mod 5 = 3. 15 mod 5 = 0. -8 mod 5 = 2. +// +function ModuloInteger takes integer dividend, integer divisor returns integer + local integer modulus = dividend - (dividend / divisor) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 13.000 mod 2.500 = 0.500. -6.000 mod 2.500 = 1.500. +// +function ModuloReal takes real dividend, real divisor returns real + local real modulus = dividend - I2R(R2I(dividend / divisor)) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +function OffsetLocation takes location loc, real dx, real dy returns location + return Location(GetLocationX(loc) + dx, GetLocationY(loc) + dy) +endfunction + +//=========================================================================== +function OffsetRectBJ takes rect r, real dx, real dy returns rect + return Rect( GetRectMinX(r) + dx, GetRectMinY(r) + dy, GetRectMaxX(r) + dx, GetRectMaxY(r) + dy ) +endfunction + +//=========================================================================== +function RectFromCenterSizeBJ takes location center, real width, real height returns rect + local real x = GetLocationX( center ) + local real y = GetLocationY( center ) + return Rect( x - width*0.5, y - height*0.5, x + width*0.5, y + height*0.5 ) +endfunction + +//=========================================================================== +function RectContainsCoords takes rect r, real x, real y returns boolean + return (GetRectMinX(r) <= x) and (x <= GetRectMaxX(r)) and (GetRectMinY(r) <= y) and (y <= GetRectMaxY(r)) +endfunction + +//=========================================================================== +function RectContainsLoc takes rect r, location loc returns boolean + return RectContainsCoords(r, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function RectContainsUnit takes rect r, unit whichUnit returns boolean + return RectContainsCoords(r, GetUnitX(whichUnit), GetUnitY(whichUnit)) +endfunction + +//=========================================================================== +function RectContainsItem takes item whichItem, rect r returns boolean + if (whichItem == null) then + return false + endif + + if (IsItemOwned(whichItem)) then + return false + endif + + return RectContainsCoords(r, GetItemX(whichItem), GetItemY(whichItem)) +endfunction + + + +//*************************************************************************** +//* +//* Utility Constructs +//* +//*************************************************************************** + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function ConditionalTriggerExecute takes trigger trig returns nothing + if TriggerEvaluate(trig) then + call TriggerExecute(trig) + endif +endfunction + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function TriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerExecute(trig) + return true +endfunction + +//=========================================================================== +// Arranges for a trigger to fire almost immediately, except that the calling +// trigger is not interrupted as is the case with a TriggerExecute call. +// Since the trigger executes normally, its conditions are still evaluated. +// +function PostTriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerRegisterTimerEvent(trig, 0, false) + return true +endfunction + +//=========================================================================== +// Debug - Display the contents of the trigger queue (as either null or "x" +// for each entry). +function QueuedTriggerCheck takes nothing returns nothing + local string s = "TrigQueue Check " + local integer i + + set i = 0 + loop + exitwhen i >= bj_queuedExecTotal + set s = s + "q[" + I2S(i) + "]=" + if (bj_queuedExecTriggers[i] == null) then + set s = s + "null " + else + set s = s + "x " + endif + set i = i + 1 + endloop + set s = s + "(" + I2S(bj_queuedExecTotal) + " total)" + call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,600,s) +endfunction + +//=========================================================================== +// Searches the queue for a given trigger, returning the index of the +// trigger within the queue if it is found, or -1 if it is not found. +// +function QueuedTriggerGetIndex takes trigger trig returns integer + // Determine which, if any, of the queued triggers is being removed. + local integer index = 0 + loop + exitwhen index >= bj_queuedExecTotal + if (bj_queuedExecTriggers[index] == trig) then + return index + endif + set index = index + 1 + endloop + return -1 +endfunction + +//=========================================================================== +// Removes a trigger from the trigger queue, shifting other triggers down +// to fill the unused space. If the currently running trigger is removed +// in this manner, this function does NOT attempt to run the next trigger. +// +function QueuedTriggerRemoveByIndex takes integer trigIndex returns boolean + local integer index + + // If the to-be-removed index is out of range, fail. + if (trigIndex >= bj_queuedExecTotal) then + return false + endif + + // Shift all queue entries down to fill in the gap. + set bj_queuedExecTotal = bj_queuedExecTotal - 1 + set index = trigIndex + loop + exitwhen index >= bj_queuedExecTotal + set bj_queuedExecTriggers[index] = bj_queuedExecTriggers[index + 1] + set bj_queuedExecUseConds[index] = bj_queuedExecUseConds[index + 1] + set index = index + 1 + endloop + return true +endfunction + +//=========================================================================== +// Attempt to execute the first trigger in the queue. If it fails, remove +// it and execute the next one. Continue this cycle until a trigger runs, +// or until the queue is empty. +// +function QueuedTriggerAttemptExec takes nothing returns boolean + loop + exitwhen bj_queuedExecTotal == 0 + + if TriggerExecuteBJ(bj_queuedExecTriggers[0], bj_queuedExecUseConds[0]) then + // Timeout the queue if it sits at the front of the queue for too long. + call TimerStart(bj_queuedExecTimeoutTimer, bj_QUEUED_TRIGGER_TIMEOUT, false, null) + return true + endif + + call QueuedTriggerRemoveByIndex(0) + endloop + return false +endfunction + +//=========================================================================== +// Queues a trigger to be executed, assuring that such triggers are not +// executed at the same time. +// +function QueuedTriggerAddBJ takes trigger trig, boolean checkConditions returns boolean + // Make sure our queue isn't full. If it is, return failure. + if (bj_queuedExecTotal >= bj_MAX_QUEUED_TRIGGERS) then + return false + endif + + // Add the trigger to an array of to-be-executed triggers. + set bj_queuedExecTriggers[bj_queuedExecTotal] = trig + set bj_queuedExecUseConds[bj_queuedExecTotal] = checkConditions + set bj_queuedExecTotal = bj_queuedExecTotal + 1 + + // If this is the only trigger in the queue, run it. + if (bj_queuedExecTotal == 1) then + call QueuedTriggerAttemptExec() + endif + return true +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, or risk stepping on the toes of other queued triggers. +// +function QueuedTriggerRemoveBJ takes trigger trig returns nothing + local integer index + local integer trigIndex + local boolean trigExecuted + + // Find the trigger's index. + set trigIndex = QueuedTriggerGetIndex(trig) + if (trigIndex == -1) then + return + endif + + // Shuffle the other trigger entries down to fill in the gap. + call QueuedTriggerRemoveByIndex(trigIndex) + + // If we just axed the currently running trigger, run the next one. + if (trigIndex == 0) then + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() + endif +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, lest you step on the toes of other queued triggers. +// +function QueuedTriggerDoneBJ takes nothing returns nothing + local integer index + + // Make sure there's something on the queue to remove. + if (bj_queuedExecTotal <= 0) then + return + endif + + // Remove the currently running trigger from the array. + call QueuedTriggerRemoveByIndex(0) + + // If other triggers are waiting to run, run one of them. + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() +endfunction + +//=========================================================================== +// Empty the trigger queue. +// +function QueuedTriggerClearBJ takes nothing returns nothing + call PauseTimer(bj_queuedExecTimeoutTimer) + set bj_queuedExecTotal = 0 +endfunction + +//=========================================================================== +// Remove all but the currently executing trigger from the trigger queue. +// +function QueuedTriggerClearInactiveBJ takes nothing returns nothing + set bj_queuedExecTotal = IMinBJ(bj_queuedExecTotal, 1) +endfunction + +//=========================================================================== +function QueuedTriggerCountBJ takes nothing returns integer + return bj_queuedExecTotal +endfunction + +//=========================================================================== +function IsTriggerQueueEmptyBJ takes nothing returns boolean + return bj_queuedExecTotal <= 0 +endfunction + +//=========================================================================== +function IsTriggerQueuedBJ takes trigger trig returns boolean + return QueuedTriggerGetIndex(trig) != -1 +endfunction + +//=========================================================================== +function GetForLoopIndexA takes nothing returns integer + return bj_forLoopAIndex +endfunction + +//=========================================================================== +function SetForLoopIndexA takes integer newIndex returns nothing + set bj_forLoopAIndex = newIndex +endfunction + +//=========================================================================== +function GetForLoopIndexB takes nothing returns integer + return bj_forLoopBIndex +endfunction + +//=========================================================================== +function SetForLoopIndexB takes integer newIndex returns nothing + set bj_forLoopBIndex = newIndex +endfunction + +//=========================================================================== +// We can't do game-time waits, so this simulates one by starting a timer +// and polling until the timer expires. +function PolledWait takes real duration returns nothing + local timer t + local real timeRemaining + + if (duration > 0) then + set t = CreateTimer() + call TimerStart(t, duration, false, null) + loop + set timeRemaining = TimerGetRemaining(t) + exitwhen timeRemaining <= 0 + + // If we have a bit of time left, skip past 10% of the remaining + // duration instead of checking every interval, to minimize the + // polling on long waits. + if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then + call TriggerSleepAction(0.1 * timeRemaining) + else + call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL) + endif + endloop + call DestroyTimer(t) + endif +endfunction + +//=========================================================================== +function IntegerTertiaryOp takes boolean flag, integer valueA, integer valueB returns integer + if flag then + return valueA + else + return valueB + endif +endfunction + + +//*************************************************************************** +//* +//* General Utility Functions +//* These functions exist purely to make the trigger dialogs cleaner and +//* more comprehensible. +//* +//*************************************************************************** + +//=========================================================================== +function DoNothing takes nothing returns nothing +endfunction + +//=========================================================================== +// This function does nothing. WorldEdit should should eventually ignore +// CommentString triggers during script generation, but until such a time, +// this function will serve as a stub. +// +function CommentString takes string commentString returns nothing +endfunction + +//=========================================================================== +// This function returns the input string, converting it from the localized text, if necessary +// +function StringIdentity takes string theString returns string + return GetLocalizedString(theString) +endfunction + +//=========================================================================== +function GetBooleanAnd takes boolean valueA, boolean valueB returns boolean + return valueA and valueB +endfunction + +//=========================================================================== +function GetBooleanOr takes boolean valueA, boolean valueB returns boolean + return valueA or valueB +endfunction + +//=========================================================================== +// Converts a percentage (real, 0..100) into a scaled integer (0..max), +// clipping the result to 0..max in case the input is invalid. +// +function PercentToInt takes real percentage, integer max returns integer + local integer result = R2I(percentage * I2R(max) * 0.01) + + if (result < 0) then + set result = 0 + elseif (result > max) then + set result = max + endif + + return result +endfunction + +//=========================================================================== +function PercentTo255 takes real percentage returns integer + return PercentToInt(percentage, 255) +endfunction + +//=========================================================================== +function GetTimeOfDay takes nothing returns real + return GetFloatGameState(GAME_STATE_TIME_OF_DAY) +endfunction + +//=========================================================================== +function SetTimeOfDay takes real whatTime returns nothing + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, whatTime) +endfunction + +//=========================================================================== +function SetTimeOfDayScalePercentBJ takes real scalePercent returns nothing + call SetTimeOfDayScale(scalePercent * 0.01) +endfunction + +//=========================================================================== +function GetTimeOfDayScalePercentBJ takes nothing returns real + return GetTimeOfDayScale() * 100 +endfunction + +//=========================================================================== +function PlaySound takes string soundName returns nothing + local sound soundHandle = CreateSound(soundName, false, false, true, 12700, 12700, "") + call StartSound(soundHandle) + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function CompareLocationsBJ takes location A, location B returns boolean + return GetLocationX(A) == GetLocationX(B) and GetLocationY(A) == GetLocationY(B) +endfunction + +//=========================================================================== +function CompareRectsBJ takes rect A, rect B returns boolean + return GetRectMinX(A) == GetRectMinX(B) and GetRectMinY(A) == GetRectMinY(B) and GetRectMaxX(A) == GetRectMaxX(B) and GetRectMaxY(A) == GetRectMaxY(B) +endfunction + +//=========================================================================== +// Returns a square rect that exactly encompasses the specified circle. +// +function GetRectFromCircleBJ takes location center, real radius returns rect + local real centerX = GetLocationX(center) + local real centerY = GetLocationY(center) + return Rect(centerX - radius, centerY - radius, centerX + radius, centerY + radius) +endfunction + + + +//*************************************************************************** +//* +//* Camera Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetCurrentCameraSetup takes nothing returns camerasetup + local camerasetup theCam = CreateCameraSetup() + local real duration = 0 + call CameraSetupSetField(theCam, CAMERA_FIELD_TARGET_DISTANCE, GetCameraField(CAMERA_FIELD_TARGET_DISTANCE), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FARZ, GetCameraField(CAMERA_FIELD_FARZ), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ZOFFSET, GetCameraField(CAMERA_FIELD_ZOFFSET), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ANGLE_OF_ATTACK, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FIELD_OF_VIEW, bj_RADTODEG * GetCameraField(CAMERA_FIELD_FIELD_OF_VIEW), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROLL, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROLL), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROTATION, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROTATION), duration) + call CameraSetupSetDestPosition(theCam, GetCameraTargetPositionX(), GetCameraTargetPositionY(), duration) + return theCam +endfunction + +//=========================================================================== +function CameraSetupApplyForPlayer takes boolean doPan, camerasetup whichSetup, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetupApplyForceDuration(whichSetup, doPan, duration) + endif +endfunction + +//=========================================================================== +function CameraSetupGetFieldSwap takes camerafield whichField, camerasetup whichSetup returns real + return CameraSetupGetField(whichSetup, whichField) +endfunction + +//=========================================================================== +function SetCameraFieldForPlayer takes player whichPlayer, camerafield whichField, real value, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraField(whichField, value, duration) + endif +endfunction + +//=========================================================================== +function SetCameraTargetControllerNoZForPlayer takes player whichPlayer, unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraTargetController(whichUnit, xoffset, yoffset, inheritOrientation) + endif +endfunction + +//=========================================================================== +function SetCameraPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function RotateCameraAroundLocBJ takes real degrees, location loc, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraRotateMode(GetLocationX(loc), GetLocationY(loc), bj_DEGTORAD * degrees, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(x, y) + endif +endfunction + +//=========================================================================== +function PanCameraToLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(x, y, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocWithZForPlayer takes player whichPlayer, location loc, real zOffset, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimedWithZ(GetLocationX(loc), GetLocationY(loc), zOffset, duration) + endif +endfunction + +//=========================================================================== +function SmartCameraPanBJ takes player whichPlayer, location loc, real duration returns nothing + local real dist + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + set dist = DistanceBetweenPoints(loc, GetCameraTargetPositionLoc()) + if (dist >= bj_SMARTPAN_TRESHOLD_SNAP) then + // If the user is too far away, snap the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), 0) + elseif (dist >= bj_SMARTPAN_TRESHOLD_PAN) then + // If the user is moderately close, pan the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + else + // User is close enough, so don't touch the camera. + endif + endif +endfunction + +//=========================================================================== +function SetCinematicCameraForPlayer takes player whichPlayer, string cameraModelFile returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCinematicCamera(cameraModelFile) + endif +endfunction + +//=========================================================================== +function ResetToGameCameraForPlayer takes player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ResetToGameCamera(duration) + endif +endfunction + +//=========================================================================== +function CameraSetSourceNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetTargetNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetEQNoiseForPlayer takes player whichPlayer, real magnitude returns nothing + local real richter = magnitude + if (richter > 5.0) then + set richter = 5.0 + endif + if (richter < 2.0) then + set richter = 2.0 + endif + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + call CameraSetSourceNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + endif +endfunction + +//=========================================================================== +function CameraClearNoiseForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(0, 0) + call CameraSetTargetNoise(0, 0) + endif +endfunction + +//=========================================================================== +// Query the current camera bounds. +// +function GetCurrentCameraBoundsMapRectBJ takes nothing returns rect + return Rect(GetCameraBoundMinX(), GetCameraBoundMinY(), GetCameraBoundMaxX(), GetCameraBoundMaxY()) +endfunction + +//=========================================================================== +// Query the initial camera bounds, as defined at map init. +// +function GetCameraBoundsMapRect takes nothing returns rect + return bj_mapInitialCameraBounds +endfunction + +//=========================================================================== +// Query the playable map area, as defined at map init. +// +function GetPlayableMapRect takes nothing returns rect + return bj_mapInitialPlayableArea +endfunction + +//=========================================================================== +// Query the entire map area, as defined at map init. +// +function GetEntireMapRect takes nothing returns rect + return GetWorldBounds() +endfunction + +//=========================================================================== +function SetCameraBoundsToRect takes rect r returns nothing + local real minX = GetRectMinX(r) + local real minY = GetRectMinY(r) + local real maxX = GetRectMaxX(r) + local real maxY = GetRectMaxY(r) + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function SetCameraBoundsToRectForPlayerBJ takes player whichPlayer, rect r returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraBoundsToRect(r) + endif +endfunction + +//=========================================================================== +function AdjustCameraBoundsBJ takes integer adjustMethod, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + local real minX = 0 + local real minY = 0 + local real maxX = 0 + local real maxY = 0 + local real scale = 0 + + if (adjustMethod == bj_CAMERABOUNDS_ADJUST_ADD) then + set scale = 1 + elseif (adjustMethod == bj_CAMERABOUNDS_ADJUST_SUB) then + set scale = -1 + else + // Unrecognized adjustment method - ignore the request. + return + endif + + // Adjust the actual camera values + set minX = GetCameraBoundMinX() - scale * dxWest + set maxX = GetCameraBoundMaxX() + scale * dxEast + set minY = GetCameraBoundMinY() - scale * dySouth + set maxY = GetCameraBoundMaxY() + scale * dyNorth + + // Make sure the camera bounds are still valid. + if (maxX < minX) then + set minX = (minX + maxX) * 0.5 + set maxX = minX + endif + if (maxY < minY) then + set minY = (minY + maxY) * 0.5 + set maxY = minY + endif + + // Apply the new camera values. + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function AdjustCameraBoundsForPlayerBJ takes integer adjustMethod, player whichPlayer, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call AdjustCameraBoundsBJ(adjustMethod, dxWest, dxEast, dyNorth, dySouth) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLoc takes location loc returns nothing + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function StopCameraForPlayerBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call StopCamera() + endif +endfunction + +//=========================================================================== +function SetCameraOrientControllerForPlayerBJ takes player whichPlayer, unit whichUnit, real xoffset, real yoffset returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraOrientController(whichUnit, xoffset, yoffset) + endif +endfunction + +//=========================================================================== +function CameraSetSmoothingFactorBJ takes real factor returns nothing + call CameraSetSmoothingFactor(factor) +endfunction + +//=========================================================================== +function CameraResetSmoothingFactorBJ takes nothing returns nothing + call CameraSetSmoothingFactor(0) +endfunction + + + +//*************************************************************************** +//* +//* Text Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayTextToForce takes force toForce, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTextToPlayer(GetLocalPlayer(), 0, 0, message) + endif +endfunction + +//=========================================================================== +function DisplayTimedTextToForce takes force toForce, real duration, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, duration, message) + endif +endfunction + +//=========================================================================== +function ClearTextMessagesBJ takes force toForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + endif +endfunction + +//=========================================================================== +// The parameters for the API Substring function are unintuitive, so this +// merely performs a translation for the starting index. +// +function SubStringBJ takes string source, integer start, integer end returns string + return SubString(source, start-1, end) +endfunction + + + +//*************************************************************************** +//* +//* Event Registration Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function TriggerRegisterTimerEventPeriodic takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, true) +endfunction + +//=========================================================================== +function TriggerRegisterTimerEventSingle takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, false) +endfunction + +//=========================================================================== +function TriggerRegisterTimerExpireEventBJ takes trigger trig, timer t returns event + return TriggerRegisterTimerExpireEvent(trig, t) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerUnitEventSimple takes trigger trig, player whichPlayer, playerunitevent whichEvent returns event + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, whichEvent, null) +endfunction + +//=========================================================================== +function TriggerRegisterAnyUnitEventBJ takes trigger trig, playerunitevent whichEvent returns nothing + local integer index + + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(trig, Player(index), whichEvent, null) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +function TriggerRegisterPlayerSelectionEventBJ takes trigger trig, player whichPlayer, boolean selected returns event + if selected then + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_SELECTED, null) + else + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_DESELECTED, null) + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerKeyEventBJ takes trigger trig, player whichPlayer, integer keType, integer keKey returns event + if (keType == bj_KEYEVENTTYPE_DEPRESS) then + // Depress event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_DOWN) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_DOWN) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + elseif (keType == bj_KEYEVENTTYPE_RELEASE) then + // Release event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_UP) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_UP) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_UP) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_UP) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + else + // Unrecognized type - ignore the request and return failure. + return null + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventVictory takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_VICTORY) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventDefeat takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_DEFEAT) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventLeave takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_LEAVE) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventAllianceChanged takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ALLIANCE_CHANGED) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventEndCinematic takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_END_CINEMATIC) +endfunction + +//=========================================================================== +function TriggerRegisterGameStateEventTimeOfDay takes trigger trig, limitop opcode, real limitval returns event + return TriggerRegisterGameStateEvent(trig, GAME_STATE_TIME_OF_DAY, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterEnterRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterLeaveRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterEnterRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterLeaveRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterDistanceBetweenUnits takes trigger trig, unit whichUnit, boolexpr condition, real range returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, condition) +endfunction + +//=========================================================================== +function TriggerRegisterUnitInRangeSimple takes trigger trig, real range, unit whichUnit returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, null) +endfunction + +//=========================================================================== +function TriggerRegisterUnitLifeEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_LIFE, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterUnitManaEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_MANA, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterDialogEventBJ takes trigger trig, dialog whichDialog returns event + return TriggerRegisterDialogEvent(trig, whichDialog) +endfunction + +//=========================================================================== +function TriggerRegisterShowSkillEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SHOW_SKILL) +endfunction + +//=========================================================================== +function TriggerRegisterBuildSubmenuEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_BUILD_SUBMENU) +endfunction + +//=========================================================================== +function TriggerRegisterGameLoadedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_LOADED) +endfunction + +//=========================================================================== +function TriggerRegisterGameSavedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SAVE) +endfunction + +//=========================================================================== +function RegisterDestDeathInRegionEnum takes nothing returns nothing + set bj_destInRegionDiesCount = bj_destInRegionDiesCount + 1 + if (bj_destInRegionDiesCount <= bj_MAX_DEST_IN_REGION_EVENTS) then + call TriggerRegisterDeathEvent(bj_destInRegionDiesTrig, GetEnumDestructable()) + endif +endfunction + +//=========================================================================== +function TriggerRegisterDestDeathInRegionEvent takes trigger trig, rect r returns event + set bj_destInRegionDiesTrig = trig + set bj_destInRegionDiesCount = 0 + call EnumDestructablesInRect(r, null, function RegisterDestDeathInRegionEnum) + return trig +endfunction + + + +//*************************************************************************** +//* +//* Environment Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddWeatherEffectSaveLast takes rect where, integer effectID returns weathereffect + set bj_lastCreatedWeatherEffect = AddWeatherEffect(where, effectID) + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function GetLastCreatedWeatherEffect takes nothing returns weathereffect + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function RemoveWeatherEffectBJ takes weathereffect whichWeatherEffect returns nothing + call RemoveWeatherEffect(whichWeatherEffect) +endfunction + +//=========================================================================== +function TerrainDeformationCraterBJ takes real duration, boolean permanent, location where, real radius, real depth returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformCrater(GetLocationX(where), GetLocationY(where), radius, depth, R2I(duration * 1000), permanent) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRippleBJ takes real duration, boolean limitNeg, location where, real startRadius, real endRadius, real depth, real wavePeriod, real waveWidth returns terraindeformation + local real spaceWave + local real timeWave + local real radiusRatio + + if (endRadius <= 0 or waveWidth <= 0 or wavePeriod <= 0) then + return null + endif + + set timeWave = 2.0 * duration / wavePeriod + set spaceWave = 2.0 * endRadius / waveWidth + set radiusRatio = startRadius / endRadius + + set bj_lastCreatedTerrainDeformation = TerrainDeformRipple(GetLocationX(where), GetLocationY(where), endRadius, depth, R2I(duration * 1000), 1, spaceWave, timeWave, radiusRatio, limitNeg) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationWaveBJ takes real duration, location source, location target, real radius, real depth, real trailDelay returns terraindeformation + local real distance + local real dirX + local real dirY + local real speed + + set distance = DistanceBetweenPoints(source, target) + if (distance == 0 or duration <= 0) then + return null + endif + + set dirX = (GetLocationX(target) - GetLocationX(source)) / distance + set dirY = (GetLocationY(target) - GetLocationY(source)) / distance + set speed = distance / duration + + set bj_lastCreatedTerrainDeformation = TerrainDeformWave(GetLocationX(source), GetLocationY(source), dirX, dirY, distance, speed, radius, depth, R2I(trailDelay * 1000), 1) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRandomBJ takes real duration, location where, real radius, real minDelta, real maxDelta, real updateInterval returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformRandom(GetLocationX(where), GetLocationY(where), radius, minDelta, maxDelta, R2I(duration * 1000), R2I(updateInterval * 1000)) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationStopBJ takes terraindeformation deformation, real duration returns nothing + call TerrainDeformStop(deformation, R2I(duration * 1000)) +endfunction + +//=========================================================================== +function GetLastCreatedTerrainDeformation takes nothing returns terraindeformation + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function AddLightningLoc takes string codeName, location where1, location where2 returns lightning + set bj_lastCreatedLightning = AddLightningEx(codeName, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function DestroyLightningBJ takes lightning whichBolt returns boolean + return DestroyLightning(whichBolt) +endfunction + +//=========================================================================== +function MoveLightningLoc takes lightning whichBolt, location where1, location where2 returns boolean + return MoveLightningEx(whichBolt, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) +endfunction + +//=========================================================================== +function GetLightningColorABJ takes lightning whichBolt returns real + return GetLightningColorA(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorRBJ takes lightning whichBolt returns real + return GetLightningColorR(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorGBJ takes lightning whichBolt returns real + return GetLightningColorG(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorBBJ takes lightning whichBolt returns real + return GetLightningColorB(whichBolt) +endfunction + +//=========================================================================== +function SetLightningColorBJ takes lightning whichBolt, real r, real g, real b, real a returns boolean + return SetLightningColor(whichBolt, r, g, b, a) +endfunction + +//=========================================================================== +function GetLastCreatedLightningBJ takes nothing returns lightning + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function GetAbilityEffectBJ takes integer abilcode, effecttype t, integer index returns string + return GetAbilityEffectById(abilcode, t, index) +endfunction + +//=========================================================================== +function GetAbilitySoundBJ takes integer abilcode, soundtype t returns string + return GetAbilitySoundById(abilcode, t) +endfunction + + +//=========================================================================== +function GetTerrainCliffLevelBJ takes location where returns integer + return GetTerrainCliffLevel(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainTypeBJ takes location where returns integer + return GetTerrainType(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainVarianceBJ takes location where returns integer + return GetTerrainVariance(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetTerrainTypeBJ takes location where, integer terrainType, integer variation, integer area, integer shape returns nothing + call SetTerrainType(GetLocationX(where), GetLocationY(where), terrainType, variation, area, shape) +endfunction + +//=========================================================================== +function IsTerrainPathableBJ takes location where, pathingtype t returns boolean + return IsTerrainPathable(GetLocationX(where), GetLocationY(where), t) +endfunction + +//=========================================================================== +function SetTerrainPathableBJ takes location where, pathingtype t, boolean flag returns nothing + call SetTerrainPathable(GetLocationX(where), GetLocationY(where), t, flag) +endfunction + +//=========================================================================== +function SetWaterBaseColorBJ takes real red, real green, real blue, real transparency returns nothing + call SetWaterBaseColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function CreateFogModifierRectSimple takes player whichPlayer, fogstate whichFogState, rect r, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function CreateFogModifierRadiusLocSimple takes player whichPlayer, fogstate whichFogState, location center, real radius, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRect that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRectBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, rect r returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRadius that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRadiusLocBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, location center, real radius returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function GetLastCreatedFogModifier takes nothing returns fogmodifier + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function FogEnableOn takes nothing returns nothing + call FogEnable(true) +endfunction + +//=========================================================================== +function FogEnableOff takes nothing returns nothing + call FogEnable(false) +endfunction + +//=========================================================================== +function FogMaskEnableOn takes nothing returns nothing + call FogMaskEnable(true) +endfunction + +//=========================================================================== +function FogMaskEnableOff takes nothing returns nothing + call FogMaskEnable(false) +endfunction + +//=========================================================================== +function UseTimeOfDayBJ takes boolean flag returns nothing + call SuspendTimeOfDay(not flag) +endfunction + +//=========================================================================== +function SetTerrainFogExBJ takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing + call SetTerrainFogEx(style, zstart, zend, density, red * 0.01, green * 0.01, blue * 0.01) +endfunction + +//=========================================================================== +function ResetTerrainFogBJ takes nothing returns nothing + call ResetTerrainFog() +endfunction + +//=========================================================================== +function SetDoodadAnimationBJ takes string animName, integer doodadID, real radius, location center returns nothing + call SetDoodadAnimation(GetLocationX(center), GetLocationY(center), radius, doodadID, false, animName, false) +endfunction + +//=========================================================================== +function SetDoodadAnimationRectBJ takes string animName, integer doodadID, rect r returns nothing + call SetDoodadAnimationRect(r, doodadID, animName, false) +endfunction + +//=========================================================================== +function AddUnitAnimationPropertiesBJ takes boolean add, string animProperties, unit whichUnit returns nothing + call AddUnitAnimationProperties(whichUnit, animProperties, add) +endfunction + + +//============================================================================ +function CreateImageBJ takes string file, real size, location where, real zOffset, integer imageType returns image + set bj_lastCreatedImage = CreateImage(file, size, size, size, GetLocationX(where), GetLocationY(where), zOffset, 0, 0, 0, imageType) + return bj_lastCreatedImage +endfunction + +//============================================================================ +function ShowImageBJ takes boolean flag, image whichImage returns nothing + call ShowImage(whichImage, flag) +endfunction + +//============================================================================ +function SetImagePositionBJ takes image whichImage, location where, real zOffset returns nothing + call SetImagePosition(whichImage, GetLocationX(where), GetLocationY(where), zOffset) +endfunction + +//============================================================================ +function SetImageColorBJ takes image whichImage, real red, real green, real blue, real alpha returns nothing + call SetImageColor(whichImage, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha)) +endfunction + +//============================================================================ +function GetLastCreatedImage takes nothing returns image + return bj_lastCreatedImage +endfunction + +//============================================================================ +function CreateUbersplatBJ takes location where, string name, real red, real green, real blue, real alpha, boolean forcePaused, boolean noBirthTime returns ubersplat + set bj_lastCreatedUbersplat = CreateUbersplat(GetLocationX(where), GetLocationY(where), name, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha), forcePaused, noBirthTime) + return bj_lastCreatedUbersplat +endfunction + +//============================================================================ +function ShowUbersplatBJ takes boolean flag, ubersplat whichSplat returns nothing + call ShowUbersplat(whichSplat, flag) +endfunction + +//============================================================================ +function GetLastCreatedUbersplat takes nothing returns ubersplat + return bj_lastCreatedUbersplat +endfunction + + +//*************************************************************************** +//* +//* Sound Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PlaySoundBJ takes sound soundHandle returns nothing + set bj_lastPlayedSound = soundHandle + if (soundHandle != null) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function StopSoundBJ takes sound soundHandle, boolean fadeOut returns nothing + call StopSound(soundHandle, false, fadeOut) +endfunction + +//=========================================================================== +function SetSoundVolumeBJ takes sound soundHandle, real volumePercent returns nothing + call SetSoundVolume(soundHandle, PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function SetSoundOffsetBJ takes real newOffset, sound soundHandle returns nothing + call SetSoundPlayPosition(soundHandle, R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function SetSoundDistanceCutoffBJ takes sound soundHandle, real cutoff returns nothing + call SetSoundDistanceCutoff(soundHandle, cutoff) +endfunction + +//=========================================================================== +function SetSoundPitchBJ takes sound soundHandle, real pitch returns nothing + call SetSoundPitch(soundHandle, pitch) +endfunction + +//=========================================================================== +function SetSoundPositionLocBJ takes sound soundHandle, location loc, real z returns nothing + call SetSoundPosition(soundHandle, GetLocationX(loc), GetLocationY(loc), z) +endfunction + +//=========================================================================== +function AttachSoundToUnitBJ takes sound soundHandle, unit whichUnit returns nothing + call AttachSoundToUnit(soundHandle, whichUnit) +endfunction + +//=========================================================================== +function SetSoundConeAnglesBJ takes sound soundHandle, real inside, real outside, real outsideVolumePercent returns nothing + call SetSoundConeAngles(soundHandle, inside, outside, PercentToInt(outsideVolumePercent, 127)) +endfunction + +//=========================================================================== +function KillSoundWhenDoneBJ takes sound soundHandle returns nothing + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundAtPointBJ takes sound soundHandle, real volumePercent, location loc, real z returns nothing + call SetSoundPositionLocBJ(soundHandle, loc, z) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundOnUnitBJ takes sound soundHandle, real volumePercent, unit whichUnit returns nothing + call AttachSoundToUnitBJ(soundHandle, whichUnit) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundFromOffsetBJ takes sound soundHandle, real volumePercent, real startingOffset returns nothing + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) + call SetSoundOffsetBJ(startingOffset, soundHandle) +endfunction + +//=========================================================================== +function PlayMusicBJ takes string musicFileName returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusic(musicFileName) +endfunction + +//=========================================================================== +function PlayMusicExBJ takes string musicFileName, real startingOffset, real fadeInTime returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusicEx(musicFileName, R2I(startingOffset * 1000), R2I(fadeInTime * 1000)) +endfunction + +//=========================================================================== +function SetMusicOffsetBJ takes real newOffset returns nothing + call SetMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function PlayThematicMusicBJ takes string musicName returns nothing + call PlayThematicMusic(musicName) +endfunction + +//=========================================================================== +function PlayThematicMusicExBJ takes string musicName, real startingOffset returns nothing + call PlayThematicMusicEx(musicName, R2I(startingOffset * 1000)) +endfunction + +//=========================================================================== +function SetThematicMusicOffsetBJ takes real newOffset returns nothing + call SetThematicMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function EndThematicMusicBJ takes nothing returns nothing + call EndThematicMusic() +endfunction + +//=========================================================================== +function StopMusicBJ takes boolean fadeOut returns nothing + call StopMusic(fadeOut) +endfunction + +//=========================================================================== +function ResumeMusicBJ takes nothing returns nothing + call ResumeMusic() +endfunction + +//=========================================================================== +function SetMusicVolumeBJ takes real volumePercent returns nothing + call SetMusicVolume(PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function GetSoundDurationBJ takes sound soundHandle returns real + if (soundHandle == null) then + return bj_NOTHING_SOUND_DURATION + else + return I2R(GetSoundDuration(soundHandle)) * 0.001 + endif +endfunction + +//=========================================================================== +function GetSoundFileDurationBJ takes string musicFileName returns real + return I2R(GetSoundFileDuration(musicFileName)) * 0.001 +endfunction + +//=========================================================================== +function GetLastPlayedSound takes nothing returns sound + return bj_lastPlayedSound +endfunction + +//=========================================================================== +function GetLastPlayedMusic takes nothing returns string + return bj_lastPlayedMusic +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeBJ takes volumegroup vgroup, real percent returns nothing + call VolumeGroupSetVolume(vgroup, percent * 0.01) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_CINEMODE_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_CINEMODE_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_CINEMODE_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_CINEMODE_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_CINEMODE_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_CINEMODE_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_CINEMODE_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_CINEMODE_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetCineModeVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetCineModeVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_SPEECH_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_SPEECH_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_SPEECH_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_SPEECH_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_SPEECH_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_SPEECH_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_SPEECH_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_SPEECH_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetSpeechVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetSpeechVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function VolumeGroupResetImmediateBJ takes nothing returns nothing + call VolumeGroupReset() +endfunction + +//=========================================================================== +function VolumeGroupResetBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call VolumeGroupResetImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function VolumeGroupResetImmediateBJ) + endif +endfunction + +//=========================================================================== +function GetSoundIsPlayingBJ takes sound soundHandle returns boolean + return GetSoundIsLoading(soundHandle) or GetSoundIsPlaying(soundHandle) +endfunction + +//=========================================================================== +function WaitForSoundBJ takes sound soundHandle, real offset returns nothing + call TriggerWaitForSound( soundHandle, offset ) +endfunction + +//=========================================================================== +function SetMapMusicIndexedBJ takes string musicName, integer index returns nothing + call SetMapMusic(musicName, false, index) +endfunction + +//=========================================================================== +function SetMapMusicRandomBJ takes string musicName returns nothing + call SetMapMusic(musicName, true, 0) +endfunction + +//=========================================================================== +function ClearMapMusicBJ takes nothing returns nothing + call ClearMapMusic() +endfunction + +//=========================================================================== +function SetStackedSoundBJ takes boolean add, sound soundHandle, rect r returns nothing + local real width = GetRectMaxX(r) - GetRectMinX(r) + local real height = GetRectMaxY(r) - GetRectMinY(r) + + call SetSoundPosition(soundHandle, GetRectCenterX(r), GetRectCenterY(r), 0) + if add then + call RegisterStackedSound(soundHandle, true, width, height) + else + call UnregisterStackedSound(soundHandle, true, width, height) + endif +endfunction + +//=========================================================================== +function StartSoundForPlayerBJ takes player whichPlayer, sound soundHandle returns nothing + if (whichPlayer == GetLocalPlayer()) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeForPlayerBJ takes player whichPlayer, volumegroup vgroup, real scale returns nothing + if (GetLocalPlayer() == whichPlayer) then + call VolumeGroupSetVolume(vgroup, scale) + endif +endfunction + +//=========================================================================== +function EnableDawnDusk takes boolean flag returns nothing + set bj_useDawnDuskSounds = flag +endfunction + +//=========================================================================== +function IsDawnDuskEnabled takes nothing returns boolean + return bj_useDawnDuskSounds +endfunction + + + +//*************************************************************************** +//* +//* Day/Night ambient sounds +//* +//*************************************************************************** + +//=========================================================================== +function SetAmbientDaySound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_dayAmbientSound != null) then + call StopSound(bj_dayAmbientSound, true, true) + endif + + // Create new sound + set bj_dayAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) then + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetAmbientNightSound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_nightAmbientSound != null) then + call StopSound(bj_nightAmbientSound, true, true) + endif + + // Create new sound + set bj_nightAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) then + call StartSound(bj_nightAmbientSound) + endif +endfunction + + + +//*************************************************************************** +//* +//* Special Effect Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddSpecialEffectLocBJ takes location where, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectLoc(modelName, where) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +function AddSpecialEffectTargetUnitBJ takes string attachPointName, widget targetWidget, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectTarget(modelName, targetWidget, attachPointName) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Destructibles have no attachment points. +// +//function AddSpecialEffectTargetDestructableBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Items have no attachment points. +// +//function AddSpecialEffectTargetItemBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +function DestroyEffectBJ takes effect whichEffect returns nothing + call DestroyEffect(whichEffect) +endfunction + +//=========================================================================== +function GetLastCreatedEffectBJ takes nothing returns effect + return bj_lastCreatedEffect +endfunction + + + +//*************************************************************************** +//* +//* Hero and Item Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetItemLoc takes item whichItem returns location + return Location(GetItemX(whichItem), GetItemY(whichItem)) +endfunction + +//=========================================================================== +function GetItemLifeBJ takes widget whichWidget returns real + return GetWidgetLife(whichWidget) +endfunction + +//=========================================================================== +function SetItemLifeBJ takes widget whichWidget, real life returns nothing + call SetWidgetLife(whichWidget, life) +endfunction + +//=========================================================================== +function AddHeroXPSwapped takes integer xpToAdd, unit whichHero, boolean showEyeCandy returns nothing + call AddHeroXP(whichHero, xpToAdd, showEyeCandy) +endfunction + +//=========================================================================== +function SetHeroLevelBJ takes unit whichHero, integer newLevel, boolean showEyeCandy returns nothing + local integer oldLevel = GetHeroLevel(whichHero) + + if (newLevel > oldLevel) then + call SetHeroLevel(whichHero, newLevel, showEyeCandy) + elseif (newLevel < oldLevel) then + call UnitStripHeroLevel(whichHero, oldLevel - newLevel) + else + // No change in level - ignore the request. + endif +endfunction + +//=========================================================================== +function DecUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return DecUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function IncUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return IncUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function SetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit, integer level returns integer + return SetUnitAbilityLevel(whichUnit, abilcode, level) +endfunction + +//=========================================================================== +function GetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return GetUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function UnitHasBuffBJ takes unit whichUnit, integer buffcode returns boolean + return (GetUnitAbilityLevel(whichUnit, buffcode) > 0) +endfunction + +//=========================================================================== +function UnitRemoveBuffBJ takes integer buffcode, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, buffcode) +endfunction + +//=========================================================================== +function UnitAddItemSwapped takes item whichItem, unit whichHero returns boolean + return UnitAddItem(whichHero, whichItem) +endfunction + +//=========================================================================== +function UnitAddItemByIdSwapped takes integer itemId, unit whichHero returns item + // Create the item at the hero's feet first, and then give it to him. + // This is to ensure that the item will be left at the hero's feet if + // his inventory is full. + set bj_lastCreatedItem = CreateItem(itemId, GetUnitX(whichHero), GetUnitY(whichHero)) + call UnitAddItem(whichHero, bj_lastCreatedItem) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function UnitRemoveItemSwapped takes item whichItem, unit whichHero returns nothing + set bj_lastRemovedItem = whichItem + call UnitRemoveItem(whichHero, whichItem) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitRemoveItemFromSlotSwapped takes integer itemSlot, unit whichHero returns item + set bj_lastRemovedItem = UnitRemoveItemFromSlot(whichHero, itemSlot-1) + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function CreateItemLoc takes integer itemId, location loc returns item + set bj_lastCreatedItem = CreateItem(itemId, GetLocationX(loc), GetLocationY(loc)) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastCreatedItem takes nothing returns item + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastRemovedItem takes nothing returns item + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function SetItemPositionLoc takes item whichItem, location loc returns nothing + call SetItemPosition(whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function GetLearnedSkillBJ takes nothing returns integer + return GetLearnedSkill() +endfunction + +//=========================================================================== +function SuspendHeroXPBJ takes boolean flag, unit whichHero returns nothing + call SuspendHeroXP(whichHero, not flag) +endfunction + +//=========================================================================== +function SetPlayerHandicapXPBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicapXP(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapXPBJ takes player whichPlayer returns real + return GetPlayerHandicapXP(whichPlayer) * 100 +endfunction + +//=========================================================================== +function SetPlayerHandicapBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicap(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapBJ takes player whichPlayer returns real + return GetPlayerHandicap(whichPlayer) * 100 +endfunction + +//=========================================================================== +function GetHeroStatBJ takes integer whichStat, unit whichHero, boolean includeBonuses returns integer + if (whichStat == bj_HEROSTAT_STR) then + return GetHeroStr(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_AGI) then + return GetHeroAgi(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_INT) then + return GetHeroInt(whichHero, includeBonuses) + else + // Unrecognized hero stat - return 0 + return 0 + endif +endfunction + +//=========================================================================== +function SetHeroStat takes unit whichHero, integer whichStat, integer value returns nothing + // Ignore requests for negative hero stats. + if (value <= 0) then + return + endif + + if (whichStat == bj_HEROSTAT_STR) then + call SetHeroStr(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_AGI) then + call SetHeroAgi(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_INT) then + call SetHeroInt(whichHero, value, true) + else + // Unrecognized hero stat - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroStat takes integer whichStat, unit whichHero, integer modifyMethod, integer value returns nothing + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) + value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) - value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + call SetHeroStat(whichHero, whichStat, value) + else + // Unrecognized modification method - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroSkillPoints takes unit whichHero, integer modifyMethod, integer value returns boolean + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + return UnitModifySkillPoints(whichHero, value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + return UnitModifySkillPoints(whichHero, -value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + return UnitModifySkillPoints(whichHero, value - GetHeroSkillPoints(whichHero)) + else + // Unrecognized modification method - ignore the request and return failure. + return false + endif +endfunction + +//=========================================================================== +function UnitDropItemPointBJ takes unit whichUnit, item whichItem, real x, real y returns boolean + return UnitDropItemPoint(whichUnit, whichItem, x, y) +endfunction + +//=========================================================================== +function UnitDropItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitDropItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function UnitDropItemSlotBJ takes unit whichUnit, item whichItem, integer slot returns boolean + return UnitDropItemSlot(whichUnit, whichItem, slot-1) +endfunction + +//=========================================================================== +function UnitDropItemTargetBJ takes unit whichUnit, item whichItem, widget target returns boolean + return UnitDropItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function UnitUseItemDestructable takes unit whichUnit, item whichItem, widget target returns boolean + return UnitUseItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +function UnitUseItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitUseItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitItemInSlotBJ takes unit whichUnit, integer itemSlot returns item + return UnitItemInSlot(whichUnit, itemSlot-1) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function GetInventoryIndexOfItemTypeBJ takes unit whichUnit, integer itemId returns integer + local integer index + local item indexItem + + set index = 0 + loop + set indexItem = UnitItemInSlot(whichUnit, index) + if (indexItem != null) and (GetItemTypeId(indexItem) == itemId) then + return index + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + return 0 +endfunction + +//=========================================================================== +function GetItemOfTypeFromUnitBJ takes unit whichUnit, integer itemId returns item + local integer index = GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) + + if (index == 0) then + return null + else + return UnitItemInSlot(whichUnit, index - 1) + endif +endfunction + +//=========================================================================== +function UnitHasItemOfTypeBJ takes unit whichUnit, integer itemId returns boolean + return GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) > 0 +endfunction + +//=========================================================================== +function UnitInventoryCount takes unit whichUnit returns integer + local integer index = 0 + local integer count = 0 + + loop + if (UnitItemInSlot(whichUnit, index) != null) then + set count = count + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + + return count +endfunction + +//=========================================================================== +function UnitInventorySizeBJ takes unit whichUnit returns integer + return UnitInventorySize(whichUnit) +endfunction + +//=========================================================================== +function SetItemInvulnerableBJ takes item whichItem, boolean flag returns nothing + call SetItemInvulnerable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDropOnDeathBJ takes item whichItem, boolean flag returns nothing + call SetItemDropOnDeath(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDroppableBJ takes item whichItem, boolean flag returns nothing + call SetItemDroppable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemPlayerBJ takes item whichItem, player whichPlayer, boolean changeColor returns nothing + call SetItemPlayer(whichItem, whichPlayer, changeColor) +endfunction + +//=========================================================================== +function SetItemVisibleBJ takes boolean show, item whichItem returns nothing + call SetItemVisible(whichItem, show) +endfunction + +//=========================================================================== +function IsItemHiddenBJ takes item whichItem returns boolean + return not IsItemVisible(whichItem) +endfunction + +//=========================================================================== +function ChooseRandomItemBJ takes integer level returns integer + return ChooseRandomItem(level) +endfunction + +//=========================================================================== +function ChooseRandomItemExBJ takes integer level, itemtype whichType returns integer + return ChooseRandomItemEx(whichType, level) +endfunction + +//=========================================================================== +function ChooseRandomNPBuildingBJ takes nothing returns integer + return ChooseRandomNPBuilding() +endfunction + +//=========================================================================== +function ChooseRandomCreepBJ takes integer level returns integer + return ChooseRandomCreep(level) +endfunction + +//=========================================================================== +function EnumItemsInRectBJ takes rect r, code actionFunc returns nothing + call EnumItemsInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomItemInRectBJEnum takes nothing returns nothing + set bj_itemRandomConsidered = bj_itemRandomConsidered + 1 + if (GetRandomInt(1, bj_itemRandomConsidered) == 1) then + set bj_itemRandomCurrentPick = GetEnumItem() + endif +endfunction + +//=========================================================================== +// Picks a random item from within a rect, matching a condition +// +function RandomItemInRectBJ takes rect r, boolexpr filter returns item + set bj_itemRandomConsidered = 0 + set bj_itemRandomCurrentPick = null + call EnumItemsInRect(r, filter, function RandomItemInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_itemRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random item from within a rect +// +function RandomItemInRectSimpleBJ takes rect r returns item + return RandomItemInRectBJ(r, null) +endfunction + +//=========================================================================== +function CheckItemStatus takes item whichItem, integer status returns boolean + if (status == bj_ITEM_STATUS_HIDDEN) then + return not IsItemVisible(whichItem) + elseif (status == bj_ITEM_STATUS_OWNED) then + return IsItemOwned(whichItem) + elseif (status == bj_ITEM_STATUS_INVULNERABLE) then + return IsItemInvulnerable(whichItem) + elseif (status == bj_ITEM_STATUS_POWERUP) then + return IsItemPowerup(whichItem) + elseif (status == bj_ITEM_STATUS_SELLABLE) then + return IsItemSellable(whichItem) + elseif (status == bj_ITEM_STATUS_PAWNABLE) then + return IsItemPawnable(whichItem) + else + // Unrecognized status - return false + return false + endif +endfunction + +//=========================================================================== +function CheckItemcodeStatus takes integer itemId, integer status returns boolean + if (status == bj_ITEMCODE_STATUS_POWERUP) then + return IsItemIdPowerup(itemId) + elseif (status == bj_ITEMCODE_STATUS_SELLABLE) then + return IsItemIdSellable(itemId) + elseif (status == bj_ITEMCODE_STATUS_PAWNABLE) then + return IsItemIdPawnable(itemId) + else + // Unrecognized status - return false + return false + endif +endfunction + + + +//*************************************************************************** +//* +//* Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function UnitId2OrderIdBJ takes integer unitId returns integer + return unitId +endfunction + +//=========================================================================== +function String2UnitIdBJ takes string unitIdString returns integer + return UnitId(unitIdString) +endfunction + +//=========================================================================== +function UnitId2StringBJ takes integer unitId returns string + local string unitString = UnitId2String(unitId) + + if (unitString != null) then + return unitString + endif + + // The unitId was not recognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function String2OrderIdBJ takes string orderIdString returns integer + local integer orderId + + // Check to see if it's a generic order. + set orderId = OrderId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Check to see if it's a (train) unit order. + set orderId = UnitId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Unrecognized - return 0 + return 0 +endfunction + +//=========================================================================== +function OrderId2StringBJ takes integer orderId returns string + local string orderString + + // Check to see if it's a generic order. + set orderString = OrderId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Check to see if it's a (train) unit order. + set orderString = UnitId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Unrecognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function GetIssuedOrderIdBJ takes nothing returns integer + return GetIssuedOrderId() +endfunction + +//=========================================================================== +function GetKillingUnitBJ takes nothing returns unit + return GetKillingUnit() +endfunction + +//=========================================================================== +function CreateUnitAtLocSaveLast takes player id, integer unitid, location loc, real face returns unit + if (unitid == 'ugol') then + set bj_lastCreatedUnit = CreateBlightedGoldmine(id, GetLocationX(loc), GetLocationY(loc), face) + else + set bj_lastCreatedUnit = CreateUnitAtLoc(id, unitid, loc, face) + endif + + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetLastCreatedUnit takes nothing returns unit + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function CreateNUnitsAtLoc takes integer count, integer unitId, player whichPlayer, location loc, real face returns group + call GroupClear(bj_lastCreatedGroup) + loop + set count = count - 1 + exitwhen count < 0 + call CreateUnitAtLocSaveLast(whichPlayer, unitId, loc, face) + call GroupAddUnit(bj_lastCreatedGroup, bj_lastCreatedUnit) + endloop + return bj_lastCreatedGroup +endfunction + +//=========================================================================== +function CreateNUnitsAtLocFacingLocBJ takes integer count, integer unitId, player whichPlayer, location loc, location lookAt returns group + return CreateNUnitsAtLoc(count, unitId, whichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastCreatedGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupLastCreatedDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GetLastCreatedGroup takes nothing returns group + set bj_groupLastCreatedDest = CreateGroup() + call ForGroup(bj_lastCreatedGroup, function GetLastCreatedGroupEnum) + return bj_groupLastCreatedDest +endfunction + +//=========================================================================== +function CreateCorpseLocBJ takes integer unitid, player whichPlayer, location loc returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), GetRandomReal(0, 360)) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function UnitSuspendDecayBJ takes boolean suspend, unit whichUnit returns nothing + call UnitSuspendDecay(whichUnit, suspend) +endfunction + +//=========================================================================== +function DelayedSuspendDecayStopAnimEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +function DelayedSuspendDecayBoneEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +// Game code explicitly sets the animation back to "decay bone" after the +// initial corpse fades away, so we reset it now. It's best not to show +// off corpses thus created until after this grace period has passed. +// +function DelayedSuspendDecayFleshEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 10.0) + call SetUnitAnimation(enumUnit, "decay flesh") + endif +endfunction + +//=========================================================================== +// Waits a short period of time to ensure that the corpse is decaying, and +// then suspend the animation and corpse decay. +// +function DelayedSuspendDecay takes nothing returns nothing + local group boneGroup + local group fleshGroup + + // Switch the global unit groups over to local variables and recreate + // the global versions, so that this function can handle overlapping + // calls. + set boneGroup = bj_suspendDecayBoneGroup + set fleshGroup = bj_suspendDecayFleshGroup + set bj_suspendDecayBoneGroup = CreateGroup() + set bj_suspendDecayFleshGroup = CreateGroup() + + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayStopAnimEnum) + + call TriggerSleepAction(bj_CORPSE_MAX_DEATH_TIME) + call ForGroup(fleshGroup, function DelayedSuspendDecayFleshEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayBoneEnum) + + call TriggerSleepAction(0.05) + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + + call DestroyGroup(boneGroup) + call DestroyGroup(fleshGroup) +endfunction + +//=========================================================================== +function DelayedSuspendDecayCreate takes nothing returns nothing + set bj_delayedSuspendDecayTrig = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_delayedSuspendDecayTrig, bj_delayedSuspendDecayTimer) + call TriggerAddAction(bj_delayedSuspendDecayTrig, function DelayedSuspendDecay) +endfunction + +//=========================================================================== +function CreatePermanentCorpseLocBJ takes integer style, integer unitid, player whichPlayer, location loc, real facing returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), facing) + call SetUnitBlendTime(bj_lastCreatedUnit, 0) + + if (style == bj_CORPSETYPE_FLESH) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay flesh") + call GroupAddUnit(bj_suspendDecayFleshGroup, bj_lastCreatedUnit) + elseif (style == bj_CORPSETYPE_BONE) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + else + // Unknown decay style - treat as skeletal. + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + endif + + call TimerStart(bj_delayedSuspendDecayTimer, 0.05, false, null) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetUnitStateSwap takes unitstate whichState, unit whichUnit returns real + return GetUnitState(whichUnit, whichState) +endfunction + +//=========================================================================== +function GetUnitStatePercent takes unit whichUnit, unitstate whichState, unitstate whichMaxState returns real + local real value = GetUnitState(whichUnit, whichState) + local real maxValue = GetUnitState(whichUnit, whichMaxState) + + // Return 0 for null units. + if (whichUnit == null) or (maxValue == 0) then + return 0.0 + endif + + return value / maxValue * 100.0 +endfunction + +//=========================================================================== +function GetUnitLifePercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE) +endfunction + +//=========================================================================== +function GetUnitManaPercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_MANA, UNIT_STATE_MAX_MANA) +endfunction + +//=========================================================================== +function SelectUnitSingle takes unit whichUnit returns nothing + call ClearSelection() + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectGroupBJEnum takes nothing returns nothing + call SelectUnit( GetEnumUnit(), true ) +endfunction + +//=========================================================================== +function SelectGroupBJ takes group g returns nothing + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) +endfunction + +//=========================================================================== +function SelectUnitAdd takes unit whichUnit returns nothing + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectUnitRemove takes unit whichUnit returns nothing + call SelectUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ClearSelectionForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + endif +endfunction + +//=========================================================================== +function SelectUnitForPlayerSingle takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectGroupForPlayerBJ takes group g, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) + endif +endfunction + +//=========================================================================== +function SelectUnitAddForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectUnitRemoveForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, false) + endif +endfunction + +//=========================================================================== +function SetUnitLifeBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitManaBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitLifePercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, GetUnitState(whichUnit, UNIT_STATE_MAX_LIFE) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function SetUnitManaPercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, GetUnitState(whichUnit, UNIT_STATE_MAX_MANA) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function IsUnitDeadBJ takes unit whichUnit returns boolean + return GetUnitState(whichUnit, UNIT_STATE_LIFE) <= 0 +endfunction + +//=========================================================================== +function IsUnitAliveBJ takes unit whichUnit returns boolean + return not IsUnitDeadBJ(whichUnit) +endfunction + +//=========================================================================== +function IsUnitGroupDeadBJEnum takes nothing returns nothing + if not IsUnitDeadBJ(GetEnumUnit()) then + set bj_isUnitGroupDeadResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is dead. +// +function IsUnitGroupDeadBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupDeadResult = true + call ForGroup(g, function IsUnitGroupDeadBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupDeadResult +endfunction + +//=========================================================================== +function IsUnitGroupEmptyBJEnum takes nothing returns nothing + set bj_isUnitGroupEmptyResult = false +endfunction + +//=========================================================================== +// Returns true if the group contains no units. +// +function IsUnitGroupEmptyBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupEmptyResult = true + call ForGroup(g, function IsUnitGroupEmptyBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupEmptyResult +endfunction + +//=========================================================================== +function IsUnitGroupInRectBJEnum takes nothing returns nothing + if not RectContainsUnit(bj_isUnitGroupInRectRect, GetEnumUnit()) then + set bj_isUnitGroupInRectResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is within the given rect. +// +function IsUnitGroupInRectBJ takes group g, rect r returns boolean + set bj_isUnitGroupInRectResult = true + set bj_isUnitGroupInRectRect = r + call ForGroup(g, function IsUnitGroupInRectBJEnum) + return bj_isUnitGroupInRectResult +endfunction + +//=========================================================================== +function IsUnitHiddenBJ takes unit whichUnit returns boolean + return IsUnitHidden(whichUnit) +endfunction + +//=========================================================================== +function ShowUnitHide takes unit whichUnit returns nothing + call ShowUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ShowUnitShow takes unit whichUnit returns nothing + // Prevent dead heroes from being unhidden. + if (IsUnitType(whichUnit, UNIT_TYPE_HERO) and IsUnitDeadBJ(whichUnit)) then + return + endif + + call ShowUnit(whichUnit, true) +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == 'ngol' +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJ takes unit whichPeon, location loc returns boolean + local group g = null + local unit goldMine = null + + // Search for a gold mine within a 1-cell radius of the specified location. + set g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, loc, 2*bj_CELLWIDTH, filterIssueHauntOrderAtLocBJ) + set goldMine = FirstOfGroup(g) + call DestroyGroup(g) + + // If no mine was found, abort the request. + if (goldMine == null) then + return false + endif + + // Issue the Haunt Gold Mine order. + return IssueTargetOrderById(whichPeon, 'ugol', goldMine) +endfunction + +//=========================================================================== +function IssueBuildOrderByIdLocBJ takes unit whichPeon, integer unitId, location loc returns boolean + if (unitId == 'ugol') then + return IssueHauntOrderAtLocBJ(whichPeon, loc) + else + return IssueBuildOrderById(whichPeon, unitId, GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function IssueTrainOrderByIdBJ takes unit whichUnit, integer unitId returns boolean + return IssueImmediateOrderById(whichUnit, unitId) +endfunction + +//=========================================================================== +function GroupTrainOrderByIdBJ takes group g, integer unitId returns boolean + return GroupImmediateOrderById(g, unitId) +endfunction + +//=========================================================================== +function IssueUpgradeOrderByIdBJ takes unit whichUnit, integer techId returns boolean + return IssueImmediateOrderById(whichUnit, techId) +endfunction + +//=========================================================================== +function GetAttackedUnitBJ takes nothing returns unit + return GetTriggerUnit() +endfunction + +//=========================================================================== +function SetUnitFlyHeightBJ takes unit whichUnit, real newHeight, real rate returns nothing + call SetUnitFlyHeight(whichUnit, newHeight, rate) +endfunction + +//=========================================================================== +function SetUnitTurnSpeedBJ takes unit whichUnit, real turnSpeed returns nothing + call SetUnitTurnSpeed(whichUnit, turnSpeed) +endfunction + +//=========================================================================== +function SetUnitPropWindowBJ takes unit whichUnit, real propWindow returns nothing + local real angle = propWindow + if (angle <= 0) then + set angle = 1 + elseif (angle >= 360) then + set angle = 359 + endif + set angle = angle * bj_DEGTORAD + + call SetUnitPropWindow(whichUnit, angle) +endfunction + +//=========================================================================== +function GetUnitPropWindowBJ takes unit whichUnit returns real + return GetUnitPropWindow(whichUnit) * bj_RADTODEG +endfunction + +//=========================================================================== +function GetUnitDefaultPropWindowBJ takes unit whichUnit returns real + return GetUnitDefaultPropWindow(whichUnit) +endfunction + +//=========================================================================== +function SetUnitBlendTimeBJ takes unit whichUnit, real blendTime returns nothing + call SetUnitBlendTime(whichUnit, blendTime) +endfunction + +//=========================================================================== +function SetUnitAcquireRangeBJ takes unit whichUnit, real acquireRange returns nothing + call SetUnitAcquireRange(whichUnit, acquireRange) +endfunction + +//=========================================================================== +function UnitSetCanSleepBJ takes unit whichUnit, boolean canSleep returns nothing + call UnitAddSleep(whichUnit, canSleep) +endfunction + +//=========================================================================== +function UnitCanSleepBJ takes unit whichUnit returns boolean + return UnitCanSleep(whichUnit) +endfunction + +//=========================================================================== +function UnitWakeUpBJ takes unit whichUnit returns nothing + call UnitWakeUp(whichUnit) +endfunction + +//=========================================================================== +function UnitIsSleepingBJ takes unit whichUnit returns boolean + return UnitIsSleeping(whichUnit) +endfunction + +//=========================================================================== +function WakePlayerUnitsEnum takes nothing returns nothing + call UnitWakeUp(GetEnumUnit()) +endfunction + +//=========================================================================== +function WakePlayerUnits takes player whichPlayer returns nothing + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function WakePlayerUnitsEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function EnableCreepSleepBJ takes boolean enable returns nothing + call SetPlayerState(Player(PLAYER_NEUTRAL_AGGRESSIVE), PLAYER_STATE_NO_CREEP_SLEEP, IntegerTertiaryOp(enable, 0, 1)) + + // If we're disabling, attempt to wake any already-sleeping creeps. + if (not enable) then + call WakePlayerUnits(Player(PLAYER_NEUTRAL_AGGRESSIVE)) + endif +endfunction + +//=========================================================================== +function UnitGenerateAlarms takes unit whichUnit, boolean generate returns boolean + return UnitIgnoreAlarm(whichUnit, not generate) +endfunction + +//=========================================================================== +function DoesUnitGenerateAlarms takes unit whichUnit returns boolean + return not UnitIgnoreAlarmToggled(whichUnit) +endfunction + +//=========================================================================== +function PauseAllUnitsBJEnum takes nothing returns nothing + call PauseUnit( GetEnumUnit(), bj_pauseAllUnitsFlag ) +endfunction + +//=========================================================================== +// Pause all units +function PauseAllUnitsBJ takes boolean pause returns nothing + local integer index + local player indexPlayer + local group g + + set bj_pauseAllUnitsFlag = pause + set g = CreateGroup() + set index = 0 + loop + set indexPlayer = Player( index ) + + // If this is a computer slot, pause/resume the AI. + if (GetPlayerController( indexPlayer ) == MAP_CONTROL_COMPUTER) then + call PauseCompAI( indexPlayer, pause ) + endif + + // Enumerate and unpause every unit owned by the player. + call GroupEnumUnitsOfPlayer( g, indexPlayer, null ) + call ForGroup( g, function PauseAllUnitsBJEnum ) + call GroupClear( g ) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) +endfunction + +//=========================================================================== +function PauseUnitBJ takes boolean pause, unit whichUnit returns nothing + call PauseUnit(whichUnit, pause) +endfunction + +//=========================================================================== +function IsUnitPausedBJ takes unit whichUnit returns boolean + return IsUnitPaused(whichUnit) +endfunction + +//=========================================================================== +function UnitPauseTimedLifeBJ takes boolean flag, unit whichUnit returns nothing + call UnitPauseTimedLife(whichUnit, flag) +endfunction + +//=========================================================================== +function UnitApplyTimedLifeBJ takes real duration, integer buffId, unit whichUnit returns nothing + call UnitApplyTimedLife(whichUnit, buffId, duration) +endfunction + +//=========================================================================== +function UnitShareVisionBJ takes boolean share, unit whichUnit, player whichPlayer returns nothing + call UnitShareVision(whichUnit, whichPlayer, share) +endfunction + +//=========================================================================== +function UnitRemoveBuffsBJ takes integer buffType, unit whichUnit returns nothing + if (buffType == bj_REMOVEBUFFS_POSITIVE) then + call UnitRemoveBuffs(whichUnit, true, false) + elseif (buffType == bj_REMOVEBUFFS_NEGATIVE) then + call UnitRemoveBuffs(whichUnit, false, true) + elseif (buffType == bj_REMOVEBUFFS_ALL) then + call UnitRemoveBuffs(whichUnit, true, true) + elseif (buffType == bj_REMOVEBUFFS_NONTLIFE) then + call UnitRemoveBuffsEx(whichUnit, true, true, false, false, false, true, false) + else + // Unrecognized dispel type - ignore the request. + endif +endfunction + +//=========================================================================== +function UnitRemoveBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns nothing + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + call UnitRemoveBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitCountBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns integer + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + return UnitCountBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitRemoveAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitAddAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitAddAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitRemoveTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitRemoveType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitAddTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitAddType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitMakeAbilityPermanentBJ takes boolean permanent, integer abilityId, unit whichUnit returns boolean + return UnitMakeAbilityPermanent(whichUnit, permanent, abilityId) +endfunction + +//=========================================================================== +function SetUnitExplodedBJ takes unit whichUnit, boolean exploded returns nothing + call SetUnitExploded(whichUnit, exploded) +endfunction + +//=========================================================================== +function ExplodeUnitBJ takes unit whichUnit returns nothing + call SetUnitExploded(whichUnit, true) + call KillUnit(whichUnit) +endfunction + +//=========================================================================== +function GetTransportUnitBJ takes nothing returns unit + return GetTransportUnit() +endfunction + +//=========================================================================== +function GetLoadedUnitBJ takes nothing returns unit + return GetLoadedUnit() +endfunction + +//=========================================================================== +function IsUnitInTransportBJ takes unit whichUnit, unit whichTransport returns boolean + return IsUnitInTransport(whichUnit, whichTransport) +endfunction + +//=========================================================================== +function IsUnitLoadedBJ takes unit whichUnit returns boolean + return IsUnitLoaded(whichUnit) +endfunction + +//=========================================================================== +function IsUnitIllusionBJ takes unit whichUnit returns boolean + return IsUnitIllusion(whichUnit) +endfunction + +//=========================================================================== +// This attempts to replace a unit with a new unit type by creating a new +// unit of the desired type using the old unit's location, facing, etc. +// +function ReplaceUnitBJ takes unit whichUnit, integer newUnitId, integer unitStateMethod returns unit + local unit oldUnit = whichUnit + local unit newUnit + local boolean wasHidden + local integer index + local item indexItem + local real oldRatio + + // If we have bogus data, don't attempt the replace. + if (oldUnit == null) then + set bj_lastReplacedUnit = oldUnit + return oldUnit + endif + + // Hide the original unit. + set wasHidden = IsUnitHidden(oldUnit) + call ShowUnit(oldUnit, false) + + // Create the replacement unit. + if (newUnitId == 'ugol') then + set newUnit = CreateBlightedGoldmine(GetOwningPlayer(oldUnit), GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + else + set newUnit = CreateUnit(GetOwningPlayer(oldUnit), newUnitId, GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + endif + + // Set the unit's life and mana according to the requested method. + if (unitStateMethod == bj_UNIT_STATE_METHOD_RELATIVE) then + // Set the replacement's current/max life ratio to that of the old unit. + // If both units have mana, do the same for mana. + if (GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_LIFE) / GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) + call SetUnitState(newUnit, UNIT_STATE_LIFE, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + endif + + if (GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) > 0) and (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_MANA) / GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) + call SetUnitState(newUnit, UNIT_STATE_MANA, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_ABSOLUTE) then + // Set the replacement's current life to that of the old unit. + // If the new unit has mana, do the same for mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(oldUnit, UNIT_STATE_LIFE)) + if (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(oldUnit, UNIT_STATE_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_DEFAULTS) then + // The newly created unit should already have default life and mana. + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_MAXIMUM) then + // Use max life and mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + else + // Unrecognized unit state method - ignore the request. + endif + + // Mirror properties of the old unit onto the new unit. + //call PauseUnit(newUnit, IsUnitPaused(oldUnit)) + call SetResourceAmount(newUnit, GetResourceAmount(oldUnit)) + + // If both the old and new units are heroes, handle their hero info. + if (IsUnitType(oldUnit, UNIT_TYPE_HERO) and IsUnitType(newUnit, UNIT_TYPE_HERO)) then + call SetHeroXP(newUnit, GetHeroXP(oldUnit), false) + + set index = 0 + loop + set indexItem = UnitItemInSlot(oldUnit, index) + if (indexItem != null) then + call UnitRemoveItem(oldUnit, indexItem) + call UnitAddItem(newUnit, indexItem) + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + + // Remove or kill the original unit. It is sometimes unsafe to remove + // hidden units, so kill the original unit if it was previously hidden. + if wasHidden then + call KillUnit(oldUnit) + call RemoveUnit(oldUnit) + else + call RemoveUnit(oldUnit) + endif + + set bj_lastReplacedUnit = newUnit + return newUnit +endfunction + +//=========================================================================== +function GetLastReplacedUnitBJ takes nothing returns unit + return bj_lastReplacedUnit +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingBJ takes unit whichUnit, location loc, real facing returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, facing) +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingLocBJ takes unit whichUnit, location loc, location lookAt returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function AddItemToStockBJ takes integer itemId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddItemToStock(whichUnit, itemId, currentStock, stockMax) +endfunction + +//=========================================================================== +function AddUnitToStockBJ takes integer unitId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddUnitToStock(whichUnit, unitId, currentStock, stockMax) +endfunction + +//=========================================================================== +function RemoveItemFromStockBJ takes integer itemId, unit whichUnit returns nothing + call RemoveItemFromStock(whichUnit, itemId) +endfunction + +//=========================================================================== +function RemoveUnitFromStockBJ takes integer unitId, unit whichUnit returns nothing + call RemoveUnitFromStock(whichUnit, unitId) +endfunction + +//=========================================================================== +function SetUnitUseFoodBJ takes boolean enable, unit whichUnit returns nothing + call SetUnitUseFood(whichUnit, enable) +endfunction + +//=========================================================================== +function UnitDamagePointLoc takes unit whichUnit, real delay, real radius, location loc, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamagePoint(whichUnit, delay, radius, GetLocationX(loc), GetLocationY(loc), amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + +//=========================================================================== +function UnitDamageTargetBJ takes unit whichUnit, unit target, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamageTarget(whichUnit, target, amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + + + +//*************************************************************************** +//* +//* Destructable Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateDestructableLoc takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function CreateDeadDestructableLocBJ takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDeadDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function GetLastCreatedDestructable takes nothing returns destructable + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function ShowDestructableBJ takes boolean flag, destructable d returns nothing + call ShowDestructable(d, flag) +endfunction + +//=========================================================================== +function SetDestructableInvulnerableBJ takes destructable d, boolean flag returns nothing + call SetDestructableInvulnerable(d, flag) +endfunction + +//=========================================================================== +function IsDestructableInvulnerableBJ takes destructable d returns boolean + return IsDestructableInvulnerable(d) +endfunction + +//=========================================================================== +function GetDestructableLoc takes destructable whichDestructable returns location + return Location(GetDestructableX(whichDestructable), GetDestructableY(whichDestructable)) +endfunction + +//=========================================================================== +function EnumDestructablesInRectAll takes rect r, code actionFunc returns nothing + call EnumDestructablesInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +function EnumDestructablesInCircleBJFilter takes nothing returns boolean + local location destLoc = GetDestructableLoc(GetFilterDestructable()) + local boolean result + + set result = DistanceBetweenPoints(destLoc, bj_enumDestructableCenter) <= bj_enumDestructableRadius + call RemoveLocation(destLoc) + return result +endfunction + +//=========================================================================== +function IsDestructableDeadBJ takes destructable d returns boolean + return GetDestructableLife(d) <= 0 +endfunction + +//=========================================================================== +function IsDestructableAliveBJ takes destructable d returns boolean + return not IsDestructableDeadBJ(d) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomDestructableInRectBJEnum takes nothing returns nothing + set bj_destRandomConsidered = bj_destRandomConsidered + 1 + if (GetRandomInt(1,bj_destRandomConsidered) == 1) then + set bj_destRandomCurrentPick = GetEnumDestructable() + endif +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect, matching a condition +// +function RandomDestructableInRectBJ takes rect r, boolexpr filter returns destructable + set bj_destRandomConsidered = 0 + set bj_destRandomCurrentPick = null + call EnumDestructablesInRect(r, filter, function RandomDestructableInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_destRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect +// +function RandomDestructableInRectSimpleBJ takes rect r returns destructable + return RandomDestructableInRectBJ(r, null) +endfunction + +//=========================================================================== +// Enumerates within a rect, with a filter to narrow the enumeration down +// objects within a circular area. +// +function EnumDestructablesInCircleBJ takes real radius, location loc, code actionFunc returns nothing + local rect r + + if (radius >= 0) then + set bj_enumDestructableCenter = loc + set bj_enumDestructableRadius = radius + set r = GetRectFromCircleBJ(loc, radius) + call EnumDestructablesInRect(r, filterEnumDestructablesInCircleBJ, actionFunc) + call RemoveRect(r) + endif +endfunction + +//=========================================================================== +function SetDestructableLifePercentBJ takes destructable d, real percent returns nothing + call SetDestructableLife(d, GetDestructableMaxLife(d) * percent * 0.01) +endfunction + +//=========================================================================== +function SetDestructableMaxLifeBJ takes destructable d, real max returns nothing + call SetDestructableMaxLife(d, max) +endfunction + +//=========================================================================== +function ModifyGateBJ takes integer gateOperation, destructable d returns nothing + if (gateOperation == bj_GATEOPERATION_CLOSE) then + if (GetDestructableLife(d) <= 0) then + call DestructableRestoreLife(d, GetDestructableMaxLife(d), true) + endif + call SetDestructableAnimation(d, "stand") + elseif (gateOperation == bj_GATEOPERATION_OPEN) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death alternate") + elseif (gateOperation == bj_GATEOPERATION_DESTROY) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death") + else + // Unrecognized gate state - ignore the request. + endif +endfunction + +//=========================================================================== +// Determine the elevator's height from its occlusion height. +// +function GetElevatorHeight takes destructable d returns integer + local integer height + + set height = 1 + R2I(GetDestructableOccluderHeight(d) / bj_CLIFFHEIGHT) + if (height < 1) or (height > 3) then + set height = 1 + endif + return height +endfunction + +//=========================================================================== +// To properly animate an elevator, we must know not only what height we +// want to change to, but also what height we are currently at. This code +// determines the elevator's current height from its occlusion height. +// Arbitrarily changing an elevator's occlusion height is thus inadvisable. +// +function ChangeElevatorHeight takes destructable d, integer newHeight returns nothing + local integer oldHeight + + // Cap the new height within the supported range. + set newHeight = IMaxBJ(1, newHeight) + set newHeight = IMinBJ(3, newHeight) + + // Find out what height the elevator is already at. + set oldHeight = GetElevatorHeight(d) + + // Set the elevator's occlusion height. + call SetDestructableOccluderHeight(d, bj_CLIFFHEIGHT*(newHeight-1)) + + if (newHeight == 1) then + if (oldHeight == 2) then + call SetDestructableAnimation(d, "birth") + call QueueDestructableAnimation(d, "stand") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth third") + call QueueDestructableAnimation(d, "stand") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand") + endif + elseif (newHeight == 2) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death") + call QueueDestructableAnimation(d, "stand second") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth second") + call QueueDestructableAnimation(d, "stand second") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand second") + endif + elseif (newHeight == 3) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death third") + call QueueDestructableAnimation(d, "stand third") + elseif (oldHeight == 2) then + call SetDestructableAnimation(d, "death second") + call QueueDestructableAnimation(d, "stand third") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand third") + endif + else + // Unrecognized new height - ignore the request. + endif +endfunction + +//=========================================================================== +// Grab the unit and throw his own coords in his face, forcing him to push +// and shove until he finds a spot where noone will bother him. +// +function NudgeUnitsInRectEnum takes nothing returns nothing + local unit nudgee = GetEnumUnit() + + call SetUnitPosition(nudgee, GetUnitX(nudgee), GetUnitY(nudgee)) +endfunction + +//=========================================================================== +function NudgeItemsInRectEnum takes nothing returns nothing + local item nudgee = GetEnumItem() + + call SetItemPosition(nudgee, GetItemX(nudgee), GetItemY(nudgee)) +endfunction + +//=========================================================================== +// Nudge the items and units within a given rect ever so gently, so as to +// encourage them to find locations where they can peacefully coexist with +// pathing restrictions and live happy, fruitful lives. +// +function NudgeObjectsInRect takes rect nudgeArea returns nothing + local group g + + set g = CreateGroup() + call GroupEnumUnitsInRect(g, nudgeArea, null) + call ForGroup(g, function NudgeUnitsInRectEnum) + call DestroyGroup(g) + + call EnumItemsInRect(nudgeArea, null, function NudgeItemsInRectEnum) +endfunction + +//=========================================================================== +function NearbyElevatorExistsEnum takes nothing returns nothing + local destructable d = GetEnumDestructable() + local integer dType = GetDestructableTypeId(d) + + if (dType == bj_ELEVATOR_CODE01) or (dType == bj_ELEVATOR_CODE02) then + set bj_elevatorNeighbor = d + endif +endfunction + +//=========================================================================== +function NearbyElevatorExists takes real x, real y returns boolean + local real findThreshold = 32 + local rect r + + // If another elevator is overlapping this one, ignore the wall. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorNeighbor = null + call EnumDestructablesInRect(r, null, function NearbyElevatorExistsEnum) + call RemoveRect(r) + + return bj_elevatorNeighbor != null +endfunction + +//=========================================================================== +function FindElevatorWallBlockerEnum takes nothing returns nothing + set bj_elevatorWallBlocker = GetEnumDestructable() +endfunction + +//=========================================================================== +// This toggles pathing on or off for one wall of an elevator by killing +// or reviving a pathing blocker at the appropriate location (and creating +// the pathing blocker in the first place, if it does not yet exist). +// +function ChangeElevatorWallBlocker takes real x, real y, real facing, boolean open returns nothing + local destructable blocker = null + local real findThreshold = 32 + local real nudgeLength = 4.25 * bj_CELLWIDTH + local real nudgeWidth = 1.25 * bj_CELLWIDTH + local rect r + + // Search for the pathing blocker within the general area. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorWallBlocker = null + call EnumDestructablesInRect(r, null, function FindElevatorWallBlockerEnum) + call RemoveRect(r) + set blocker = bj_elevatorWallBlocker + + // Ensure that the blocker exists. + if (blocker == null) then + set blocker = CreateDeadDestructable(bj_ELEVATOR_BLOCKER_CODE, x, y, facing, 1, 0) + elseif (GetDestructableTypeId(blocker) != bj_ELEVATOR_BLOCKER_CODE) then + // If a different destructible exists in the blocker's spot, ignore + // the request. (Two destructibles cannot occupy the same location + // on the map, so we cannot create an elevator blocker here.) + return + endif + + if (open) then + // Ensure that the blocker is dead. + if (GetDestructableLife(blocker) > 0) then + call KillDestructable(blocker) + endif + else + // Ensure that the blocker is alive. + if (GetDestructableLife(blocker) <= 0) then + call DestructableRestoreLife(blocker, GetDestructableMaxLife(blocker), false) + endif + + // Nudge any objects standing in the blocker's way. + if (facing == 0) then + set r = Rect(x - nudgeWidth/2, y - nudgeLength/2, x + nudgeWidth/2, y + nudgeLength/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + elseif (facing == 90) then + set r = Rect(x - nudgeLength/2, y - nudgeWidth/2, x + nudgeLength/2, y + nudgeWidth/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + else + // Unrecognized blocker angle - don't nudge anything. + endif + endif +endfunction + +//=========================================================================== +function ChangeElevatorWalls takes boolean open, integer walls, destructable d returns nothing + local real x = GetDestructableX(d) + local real y = GetDestructableY(d) + local real distToBlocker = 192 + local real distToNeighbor = 256 + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_EAST) then + if (not NearbyElevatorExists(x + distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x + distToBlocker, y, 0, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_NORTH) then + if (not NearbyElevatorExists(x, y + distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y + distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_SOUTH) then + if (not NearbyElevatorExists(x, y - distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y - distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_WEST) then + if (not NearbyElevatorExists(x - distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x - distToBlocker, y, 0, open) + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Neutral Building Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function WaygateActivateBJ takes boolean activate, unit waygate returns nothing + call WaygateActivate(waygate, activate) +endfunction + +//=========================================================================== +function WaygateIsActiveBJ takes unit waygate returns boolean + return WaygateIsActive(waygate) +endfunction + +//=========================================================================== +function WaygateSetDestinationLocBJ takes unit waygate, location loc returns nothing + call WaygateSetDestination(waygate, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function WaygateGetDestinationLocBJ takes unit waygate returns location + return Location(WaygateGetDestinationX(waygate), WaygateGetDestinationY(waygate)) +endfunction + +//=========================================================================== +function UnitSetUsesAltIconBJ takes boolean flag, unit whichUnit returns nothing + call UnitSetUsesAltIcon(whichUnit, flag) +endfunction + + + +//*************************************************************************** +//* +//* UI Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForceUIKeyBJ takes player whichPlayer, string key returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUIKey(key) + endif +endfunction + +//=========================================================================== +function ForceUICancelBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUICancel() + endif +endfunction + + + +//*************************************************************************** +//* +//* Group and Force Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForGroupBJ takes group whichGroup, code callback returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + call ForGroup(whichGroup, callback) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif +endfunction + +//=========================================================================== +function GroupAddUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupAddUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupRemoveUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupRemoveUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupAddGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupAddGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupAddGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupAddGroupDest = destGroup + call ForGroup(sourceGroup, function GroupAddGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function GroupRemoveGroupEnum takes nothing returns nothing + call GroupRemoveUnit(bj_groupRemoveGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupRemoveGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRemoveGroupDest = destGroup + call ForGroup(sourceGroup, function GroupRemoveGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function ForceAddPlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceAddPlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +function ForceRemovePlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceRemovePlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +// Consider each unit, one at a time, keeping a "current pick". Once all units +// are considered, this "current pick" will be the resulting random unit. +// +// The chance of picking a given unit over the "current pick" is 1/N, where N is +// the number of units considered thusfar (including the current consideration). +// +function GroupPickRandomUnitEnum takes nothing returns nothing + set bj_groupRandomConsidered = bj_groupRandomConsidered + 1 + if (GetRandomInt(1,bj_groupRandomConsidered) == 1) then + set bj_groupRandomCurrentPick = GetEnumUnit() + endif +endfunction + +//=========================================================================== +// Picks a random unit from a group. +// +function GroupPickRandomUnit takes group whichGroup returns unit + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRandomConsidered = 0 + set bj_groupRandomCurrentPick = null + call ForGroup(whichGroup, function GroupPickRandomUnitEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif + return bj_groupRandomCurrentPick +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function ForcePickRandomPlayerEnum takes nothing returns nothing + set bj_forceRandomConsidered = bj_forceRandomConsidered + 1 + if (GetRandomInt(1,bj_forceRandomConsidered) == 1) then + set bj_forceRandomCurrentPick = GetEnumPlayer() + endif +endfunction + +//=========================================================================== +// Picks a random player from a force. +// +function ForcePickRandomPlayer takes force whichForce returns player + set bj_forceRandomConsidered = 0 + set bj_forceRandomCurrentPick = null + call ForForce(whichForce, function ForcePickRandomPlayerEnum) + return bj_forceRandomCurrentPick +endfunction + +//=========================================================================== +function EnumUnitsSelected takes player whichPlayer, boolexpr enumFilter, code enumAction returns nothing + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, enumFilter) + call DestroyBoolExpr(enumFilter) + call ForGroup(g, enumAction) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function GetUnitsInRectMatching takes rect r, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRect(g, r, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRectAll takes rect r returns group + return GetUnitsInRectMatching(r, null) +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayerFilter takes nothing returns boolean + return GetOwningPlayer(GetFilterUnit()) == bj_groupEnumOwningPlayer +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayer takes rect r, player whichPlayer returns group + local group g = CreateGroup() + set bj_groupEnumOwningPlayer = whichPlayer + call GroupEnumUnitsInRect(g, r, filterGetUnitsInRectOfPlayer) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocAll takes real radius, location whichLocation returns group + return GetUnitsInRangeOfLocMatching(radius, whichLocation, null) +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAllFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAll takes integer unitid returns group + local group result = CreateGroup() + local group g = CreateGroup() + local integer index + + set index = 0 + loop + set bj_groupEnumTypeId = unitid + call GroupClear(g) + call GroupEnumUnitsOfPlayer(g, Player(index), filterGetUnitsOfTypeIdAll) + call GroupAddGroup(g, result) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) + + return result +endfunction + +//=========================================================================== +function GetUnitsOfPlayerMatching takes player whichPlayer, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAll takes player whichPlayer returns group + return GetUnitsOfPlayerMatching(whichPlayer, null) +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeIdFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeId takes player whichPlayer, integer unitid returns group + local group g = CreateGroup() + set bj_groupEnumTypeId = unitid + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId) + return g +endfunction + +//=========================================================================== +function GetUnitsSelectedAll takes player whichPlayer returns group + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, null) + return g +endfunction + +//=========================================================================== +function GetForceOfPlayer takes player whichPlayer returns force + local force f = CreateForce() + call ForceAddPlayer(f, whichPlayer) + return f +endfunction + +//=========================================================================== +function GetPlayersAll takes nothing returns force + return bj_FORCE_ALL_PLAYERS +endfunction + +//=========================================================================== +function GetPlayersByMapControl takes mapcontrol whichControl returns force + local force f = CreateForce() + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if GetPlayerController(indexPlayer) == whichControl then + call ForceAddPlayer(f, indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYER_SLOTS + endloop + + return f +endfunction + +//=========================================================================== +function GetPlayersAllies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumAllies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersEnemies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumEnemies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersMatching takes boolexpr filter returns force + local force f = CreateForce() + call ForceEnumPlayers(f, filter) + call DestroyBoolExpr(filter) + return f +endfunction + +//=========================================================================== +function CountUnitsInGroupEnum takes nothing returns nothing + set bj_groupCountUnits = bj_groupCountUnits + 1 +endfunction + +//=========================================================================== +function CountUnitsInGroup takes group g returns integer + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupCountUnits = 0 + call ForGroup(g, function CountUnitsInGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_groupCountUnits +endfunction + +//=========================================================================== +function CountPlayersInForceEnum takes nothing returns nothing + set bj_forceCountPlayers = bj_forceCountPlayers + 1 +endfunction + +//=========================================================================== +function CountPlayersInForceBJ takes force f returns integer + set bj_forceCountPlayers = 0 + call ForForce(f, function CountPlayersInForceEnum) + return bj_forceCountPlayers +endfunction + +//=========================================================================== +function GetRandomSubGroupEnum takes nothing returns nothing + if (bj_randomSubGroupWant > 0) then + if (bj_randomSubGroupWant >= bj_randomSubGroupTotal) or (GetRandomReal(0,1) < bj_randomSubGroupChance) then + // We either need every remaining unit, or the unit passed its chance check. + call GroupAddUnit(bj_randomSubGroupGroup, GetEnumUnit()) + set bj_randomSubGroupWant = bj_randomSubGroupWant - 1 + endif + endif + set bj_randomSubGroupTotal = bj_randomSubGroupTotal - 1 +endfunction + +//=========================================================================== +function GetRandomSubGroup takes integer count, group sourceGroup returns group + local group g = CreateGroup() + + set bj_randomSubGroupGroup = g + set bj_randomSubGroupWant = count + set bj_randomSubGroupTotal = CountUnitsInGroup(sourceGroup) + + if (bj_randomSubGroupWant <= 0 or bj_randomSubGroupTotal <= 0) then + return g + endif + + set bj_randomSubGroupChance = I2R(bj_randomSubGroupWant) / I2R(bj_randomSubGroupTotal) + call ForGroup(sourceGroup, function GetRandomSubGroupEnum) + return g +endfunction + +//=========================================================================== +function LivingPlayerUnitsOfTypeIdFilter takes nothing returns boolean + local unit filterUnit = GetFilterUnit() + return IsUnitAliveBJ(filterUnit) and GetUnitTypeId(filterUnit) == bj_livingPlayerUnitsTypeId +endfunction + +//=========================================================================== +function CountLivingPlayerUnitsOfTypeId takes integer unitId, player whichPlayer returns integer + local group g + local integer matchedCount + + set g = CreateGroup() + set bj_livingPlayerUnitsTypeId = unitId + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterLivingPlayerUnitsOfTypeId) + set matchedCount = CountUnitsInGroup(g) + call DestroyGroup(g) + + return matchedCount +endfunction + + + +//*************************************************************************** +//* +//* Animation Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ResetUnitAnimation takes unit whichUnit returns nothing + call SetUnitAnimation(whichUnit, "stand") +endfunction + +//=========================================================================== +function SetUnitTimeScalePercent takes unit whichUnit, real percentScale returns nothing + call SetUnitTimeScale(whichUnit, percentScale * 0.01) +endfunction + +//=========================================================================== +function SetUnitScalePercent takes unit whichUnit, real percentScaleX, real percentScaleY, real percentScaleZ returns nothing + call SetUnitScale(whichUnit, percentScaleX * 0.01, percentScaleY * 0.01, percentScaleZ * 0.01) +endfunction + +//=========================================================================== +// This version differs from the common.j interface in that the alpha value +// is reversed so as to be displayed as transparency, and all four parameters +// are treated as percentages rather than bytes. +// +function SetUnitVertexColorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call SetUnitVertexColor(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function UnitAddIndicatorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function DestructableAddIndicatorBJ takes destructable whichDestructable, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichDestructable, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function ItemAddIndicatorBJ takes item whichItem, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichItem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at a location. +// +function SetUnitFacingToFaceLocTimed takes unit whichUnit, location target, real duration returns nothing + local location unitLoc = GetUnitLoc(whichUnit) + + call SetUnitFacingTimed(whichUnit, AngleBetweenPoints(unitLoc, target), duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at another unit. +// +function SetUnitFacingToFaceUnitTimed takes unit whichUnit, unit target, real duration returns nothing + local location unitLoc = GetUnitLoc(target) + + call SetUnitFacingToFaceLocTimed(whichUnit, unitLoc, duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +function QueueUnitAnimationBJ takes unit whichUnit, string whichAnimation returns nothing + call QueueUnitAnimation(whichUnit, whichAnimation) +endfunction + +//=========================================================================== +function SetDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call SetDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function QueueDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call QueueDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function SetDestAnimationSpeedPercent takes destructable d, real percentScale returns nothing + call SetDestructableAnimationSpeed(d, percentScale * 0.01) +endfunction + + + +//*************************************************************************** +//* +//* Dialog Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DialogDisplayBJ takes boolean flag, dialog whichDialog, player whichPlayer returns nothing + call DialogDisplay(whichPlayer, whichDialog, flag) +endfunction + +//=========================================================================== +function DialogSetMessageBJ takes dialog whichDialog, string message returns nothing + call DialogSetMessage(whichDialog, message) +endfunction + +//=========================================================================== +function DialogAddButtonBJ takes dialog whichDialog, string buttonText returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,0) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogAddButtonWithHotkeyBJ takes dialog whichDialog, string buttonText, integer hotkey returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,hotkey) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogClearBJ takes dialog whichDialog returns nothing + call DialogClear(whichDialog) +endfunction + +//=========================================================================== +function GetLastCreatedButtonBJ takes nothing returns button + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function GetClickedButtonBJ takes nothing returns button + return GetClickedButton() +endfunction + +//=========================================================================== +function GetClickedDialogBJ takes nothing returns dialog + return GetClickedDialog() +endfunction + + + +//*************************************************************************** +//* +//* Alliance Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerAllianceBJ takes player sourcePlayer, alliancetype whichAllianceSetting, boolean value, player otherPlayer returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + call SetPlayerAlliance(sourcePlayer, otherPlayer, whichAllianceSetting, value) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Ally" checkbox. +// +function SetPlayerAllianceStateAllyBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_REQUEST, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_RESPONSE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_XP, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_SPELLS, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Vision" checkbox. +// +function SetPlayerAllianceStateVisionBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_VISION, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox. +// +function SetPlayerAllianceStateControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_CONTROL, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox with the Full +// Shared Unit Control feature enabled. +// +function SetPlayerAllianceStateFullControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, flag) +endfunction + +//=========================================================================== +function SetPlayerAllianceStateBJ takes player sourcePlayer, player otherPlayer, integer allianceState returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + if allianceState == bj_ALLIANCE_UNALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_UNALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_UNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_ADVUNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + else + // Unrecognized alliance state - ignore the request. + endif +endfunction + +//=========================================================================== +// Set the alliance states for an entire force towards another force. +// +function SetForceAllianceStateBJ takes force sourceForce, force targetForce, integer allianceState returns nothing + local integer sourceIndex + local integer targetIndex + + set sourceIndex = 0 + loop + + if (sourceForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(sourceIndex), sourceForce)) then + set targetIndex = 0 + loop + if (targetForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(targetIndex), targetForce)) then + call SetPlayerAllianceStateBJ(Player(sourceIndex), Player(targetIndex), allianceState) + endif + + set targetIndex = targetIndex + 1 + exitwhen targetIndex == bj_MAX_PLAYER_SLOTS + endloop + endif + + set sourceIndex = sourceIndex + 1 + exitwhen sourceIndex == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +// Test to see if two players are co-allied (allied with each other). +// +function PlayersAreCoAllied takes player playerA, player playerB returns boolean + // Players are considered to be allied with themselves. + if (playerA == playerB) then + return true + endif + + // Co-allies are both allied with each other. + if GetPlayerAlliance(playerA, playerB, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(playerB, playerA, ALLIANCE_PASSIVE) then + return true + endif + endif + return false +endfunction + +//=========================================================================== +// Force (whichPlayer) AI player to share vision and advanced unit control +// with all AI players of its allies. +// +function ShareEverythingWithTeamAI takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Force (whichPlayer) to share vision and advanced unit control with all of his/her allies. +// +function ShareEverythingWithTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(indexPlayer, whichPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Creates a 'Neutral Victim' player slot. This slot is passive towards all +// other players, but all other players are aggressive towards him/her. +// +function ConfigureNeutralVictim takes nothing returns nothing + local integer index + local player indexPlayer + local player neutralVictim = Player(bj_PLAYER_NEUTRAL_VICTIM) + + set index = 0 + loop + set indexPlayer = Player(index) + + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, false) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Neutral Victim and Neutral Aggressive should not fight each other. + set indexPlayer = Player(PLAYER_NEUTRAL_AGGRESSIVE) + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, true) + + // Neutral Victim does not give bounties. + call SetPlayerState(neutralVictim, PLAYER_STATE_GIVES_BOUNTY, 0) +endfunction + +//=========================================================================== +function MakeUnitsPassiveForPlayerEnum takes nothing returns nothing + call SetUnitOwner(GetEnumUnit(), Player(bj_PLAYER_NEUTRAL_VICTIM), false) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForPlayer takes player whichPlayer returns nothing + local group playerUnits = CreateGroup() + call CachePlayerHeroData(whichPlayer) + call GroupEnumUnitsOfPlayer(playerUnits, whichPlayer, null) + call ForGroup(playerUnits, function MakeUnitsPassiveForPlayerEnum) + call DestroyGroup(playerUnits) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) then + call MakeUnitsPassiveForPlayer(indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine whether or not victory/defeat is disabled via cheat codes. +// +function AllowVictoryDefeat takes playergameresult gameResult returns boolean + if (gameResult == PLAYER_GAME_RESULT_VICTORY) then + return not IsNoVictoryCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_DEFEAT) then + return not IsNoDefeatCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_NEUTRAL) then + return (not IsNoVictoryCheat()) and (not IsNoDefeatCheat()) + endif + return true +endfunction + +//=========================================================================== +function EndGameBJ takes nothing returns nothing + call EndGame( true ) +endfunction + +//=========================================================================== +function MeleeVictoryDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was victorious" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_VICTORIOUS" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_GAME" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_GAME") ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function MeleeDefeatDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was defeated" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_DEFEATED" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_DEFEAT_MSG" ) ) + + // Only show the continue button if the game is not over and observers on death are allowed + if (not bj_meleeGameOver and IsMapFlagSet(MAP_OBSERVERS_ON_DEATH)) then + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_OBSERVING" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_OBSERVING") ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function GameOverDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string s + + // Display "player left the game" message + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_LEFT_GAME" )) + + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set s = GetLocalizedString( "GAMEOVER_DISCONNECTED" ) + else + set s = GetLocalizedString( "GAMEOVER_GAME_OVER" ) + endif + + call DialogSetMessage( d, s ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_OK" ), GetLocalizedHotkey("GAMEOVER_OK") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function RemovePlayerPreserveUnitsBJ takes player whichPlayer, playergameresult gameResult, boolean leftGame returns nothing + if AllowVictoryDefeat(gameResult) then + + call RemovePlayer(whichPlayer, gameResult) + + if( gameResult == PLAYER_GAME_RESULT_VICTORY ) then + call MeleeVictoryDialogBJ( whichPlayer, leftGame ) + return + elseif( gameResult == PLAYER_GAME_RESULT_DEFEAT ) then + call MeleeDefeatDialogBJ( whichPlayer, leftGame ) + else + call GameOverDialogBJ( whichPlayer, leftGame ) + endif + + endif +endfunction + +//=========================================================================== +function CustomVictoryOkBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif +endfunction + +//=========================================================================== +function CustomVictoryQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + call EndGame( bj_changeLevelShowScores ) +endfunction + +//=========================================================================== +function CustomVictoryDialogBJ takes player whichPlayer returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE" ), GetLocalizedHotkey("GAMEOVER_CONTINUE") ) ) + call TriggerAddAction( t, function CustomVictoryOkBJ ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomVictoryQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function CustomVictorySkipBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + if bj_isSinglePlayer then + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif + endif +endfunction + +//=========================================================================== +function CustomVictoryBJ takes player whichPlayer, boolean showDialog, boolean showScores returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_VICTORY ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_VICTORY ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_VICTORIOUS" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + set bj_changeLevelShowScores = showScores + if showDialog then + call CustomVictoryDialogBJ( whichPlayer ) + else + call CustomVictorySkipBJ( whichPlayer ) + endif + endif + endif +endfunction + +//=========================================================================== +function CustomDefeatRestartBJ takes nothing returns nothing + call PauseGame( false ) + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatReduceDifficultyBJ takes nothing returns nothing + local gamedifficulty diff = GetGameDifficulty() + + call PauseGame( false ) + + // Knock the difficulty down, if possible. + if (diff == MAP_DIFFICULTY_EASY) then + // Sorry, but it doesn't get any easier than this. + elseif (diff == MAP_DIFFICULTY_NORMAL) then + call SetGameDifficulty(MAP_DIFFICULTY_EASY) + elseif (diff == MAP_DIFFICULTY_HARD) then + call SetGameDifficulty(MAP_DIFFICULTY_NORMAL) + else + // Unrecognized difficulty + endif + + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatLoadBJ takes nothing returns nothing + call PauseGame( false ) + call DisplayLoadDialog() +endfunction + +//=========================================================================== +function CustomDefeatQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + endif + + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + call EndGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatDialogBJ takes player whichPlayer, string message returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, message ) + + if bj_isSinglePlayer then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_RESTART" ), GetLocalizedHotkey("GAMEOVER_RESTART") ) ) + call TriggerAddAction( t, function CustomDefeatRestartBJ ) + + if (GetGameDifficulty() != MAP_DIFFICULTY_EASY) then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_REDUCE_DIFFICULTY" ), GetLocalizedHotkey("GAMEOVER_REDUCE_DIFFICULTY") ) ) + call TriggerAddAction( t, function CustomDefeatReduceDifficultyBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_LOAD" ), GetLocalizedHotkey("GAMEOVER_LOAD") ) ) + call TriggerAddAction( t, function CustomDefeatLoadBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomDefeatQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function CustomDefeatBJ takes player whichPlayer, string message returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_DEFEAT ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_DEFEAT ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_DEFEATED" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + call CustomDefeatDialogBJ( whichPlayer, message ) + endif + endif +endfunction + +//=========================================================================== +function SetNextLevelBJ takes string nextLevel returns nothing + if (nextLevel == "") then + set bj_changeLevelMapName = null + else + set bj_changeLevelMapName = nextLevel + endif +endfunction + +//=========================================================================== +function SetPlayerOnScoreScreenBJ takes boolean flag, player whichPlayer returns nothing + call SetPlayerOnScoreScreen(whichPlayer, flag) +endfunction + + + +//*************************************************************************** +//* +//* Quest Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateQuestBJ takes integer questType, string title, string description, string iconPath returns quest + local boolean required = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_REQ_UNDISCOVERED) + local boolean discovered = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_OPT_DISCOVERED) + + set bj_lastCreatedQuest = CreateQuest() + call QuestSetTitle(bj_lastCreatedQuest, title) + call QuestSetDescription(bj_lastCreatedQuest, description) + call QuestSetIconPath(bj_lastCreatedQuest, iconPath) + call QuestSetRequired(bj_lastCreatedQuest, required) + call QuestSetDiscovered(bj_lastCreatedQuest, discovered) + call QuestSetCompleted(bj_lastCreatedQuest, false) + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function DestroyQuestBJ takes quest whichQuest returns nothing + call DestroyQuest(whichQuest) +endfunction + +//=========================================================================== +function QuestSetEnabledBJ takes boolean enabled, quest whichQuest returns nothing + call QuestSetEnabled(whichQuest, enabled) +endfunction + +//=========================================================================== +function QuestSetTitleBJ takes quest whichQuest, string title returns nothing + call QuestSetTitle(whichQuest, title) +endfunction + +//=========================================================================== +function QuestSetDescriptionBJ takes quest whichQuest, string description returns nothing + call QuestSetDescription(whichQuest, description) +endfunction + +//=========================================================================== +function QuestSetCompletedBJ takes quest whichQuest, boolean completed returns nothing + call QuestSetCompleted(whichQuest, completed) +endfunction + +//=========================================================================== +function QuestSetFailedBJ takes quest whichQuest, boolean failed returns nothing + call QuestSetFailed(whichQuest, failed) +endfunction + +//=========================================================================== +function QuestSetDiscoveredBJ takes quest whichQuest, boolean discovered returns nothing + call QuestSetDiscovered(whichQuest, discovered) +endfunction + +//=========================================================================== +function GetLastCreatedQuestBJ takes nothing returns quest + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function CreateQuestItemBJ takes quest whichQuest, string description returns questitem + set bj_lastCreatedQuestItem = QuestCreateItem(whichQuest) + call QuestItemSetDescription(bj_lastCreatedQuestItem, description) + call QuestItemSetCompleted(bj_lastCreatedQuestItem, false) + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function QuestItemSetDescriptionBJ takes questitem whichQuestItem, string description returns nothing + call QuestItemSetDescription(whichQuestItem, description) +endfunction + +//=========================================================================== +function QuestItemSetCompletedBJ takes questitem whichQuestItem, boolean completed returns nothing + call QuestItemSetCompleted(whichQuestItem, completed) +endfunction + +//=========================================================================== +function GetLastCreatedQuestItemBJ takes nothing returns questitem + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function CreateDefeatConditionBJ takes string description returns defeatcondition + set bj_lastCreatedDefeatCondition = CreateDefeatCondition() + call DefeatConditionSetDescription(bj_lastCreatedDefeatCondition, description) + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function DestroyDefeatConditionBJ takes defeatcondition whichCondition returns nothing + call DestroyDefeatCondition(whichCondition) +endfunction + +//=========================================================================== +function DefeatConditionSetDescriptionBJ takes defeatcondition whichCondition, string description returns nothing + call DefeatConditionSetDescription(whichCondition, description) +endfunction + +//=========================================================================== +function GetLastCreatedDefeatConditionBJ takes nothing returns defeatcondition + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function FlashQuestDialogButtonBJ takes nothing returns nothing + call FlashQuestDialogButton() +endfunction + +//=========================================================================== +function QuestMessageBJ takes force f, integer messageType, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (messageType == bj_QUESTMESSAGE_DISCOVERED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, message) + call StartSound(bj_questDiscoveredSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_UPDATED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, message) + call StartSound(bj_questUpdatedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_COMPLETED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, message) + call StartSound(bj_questCompletedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_FAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, message) + call StartSound(bj_questFailedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_REQUIREMENT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTREQUIREMENT, message) + + elseif (messageType == bj_QUESTMESSAGE_MISSIONFAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, message) + call StartSound(bj_questFailedSound) + + elseif (messageType == bj_QUESTMESSAGE_HINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ALWAYSHINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_SECRET) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, message) + call StartSound(bj_questSecretSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITAVAILABLE) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ITEMACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, message) + call StartSound(bj_questItemAcquiredSound) + + elseif (messageType == bj_QUESTMESSAGE_WARNING) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, message) + call StartSound(bj_questWarningSound) + + else + // Unrecognized message type - ignore the request. + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Timer Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function StartTimerBJ takes timer t, boolean periodic, real timeout returns timer + set bj_lastStartedTimer = t + call TimerStart(t, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerBJ takes boolean periodic, real timeout returns timer + set bj_lastStartedTimer = CreateTimer() + call TimerStart(bj_lastStartedTimer, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function DestroyTimerBJ takes timer whichTimer returns nothing + call DestroyTimer(whichTimer) +endfunction + +//=========================================================================== +function PauseTimerBJ takes boolean pause, timer whichTimer returns nothing + if pause then + call PauseTimer(whichTimer) + else + call ResumeTimer(whichTimer) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTimerBJ takes nothing returns timer + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerDialogBJ takes timer t, string title returns timerdialog + set bj_lastCreatedTimerDialog = CreateTimerDialog(t) + call TimerDialogSetTitle(bj_lastCreatedTimerDialog, title) + call TimerDialogDisplay(bj_lastCreatedTimerDialog, true) + return bj_lastCreatedTimerDialog +endfunction + +//=========================================================================== +function DestroyTimerDialogBJ takes timerdialog td returns nothing + call DestroyTimerDialog(td) +endfunction + +//=========================================================================== +function TimerDialogSetTitleBJ takes timerdialog td, string title returns nothing + call TimerDialogSetTitle(td, title) +endfunction + +//=========================================================================== +function TimerDialogSetTitleColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTitleColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetTimeColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTimeColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetSpeedBJ takes timerdialog td, real speedMultFactor returns nothing + call TimerDialogSetSpeed(td, speedMultFactor) +endfunction + +//=========================================================================== +function TimerDialogDisplayForPlayerBJ takes boolean show, timerdialog td, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call TimerDialogDisplay(td, show) + endif +endfunction + +//=========================================================================== +function TimerDialogDisplayBJ takes boolean show, timerdialog td returns nothing + call TimerDialogDisplay(td, show) +endfunction + +//=========================================================================== +function GetLastCreatedTimerDialogBJ takes nothing returns timerdialog + return bj_lastCreatedTimerDialog +endfunction + + + +//*************************************************************************** +//* +//* Leaderboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function LeaderboardResizeBJ takes leaderboard lb returns nothing + local integer size = LeaderboardGetItemCount(lb) + + if (LeaderboardGetLabelText(lb) == "") then + set size = size - 1 + endif + call LeaderboardSetSizeByItemCount(lb, size) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueBJ takes player whichPlayer, leaderboard lb, integer val returns nothing + call LeaderboardSetItemValue(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelBJ takes player whichPlayer, leaderboard lb, string val returns nothing + call LeaderboardSetItemLabel(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemStyleBJ takes player whichPlayer, leaderboard lb, boolean showLabel, boolean showValue, boolean showIcon returns nothing + call LeaderboardSetItemStyle(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), showLabel, showValue, showIcon) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemLabelColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemValueColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetLabelColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetValueColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetValueColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelBJ takes leaderboard lb, string label returns nothing + call LeaderboardSetLabel(lb, label) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSetStyleBJ takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + call LeaderboardSetStyle(lb, showLabel, showNames, showValues, showIcons) +endfunction + +//=========================================================================== +function LeaderboardGetItemCountBJ takes leaderboard lb returns integer + return LeaderboardGetItemCount(lb) +endfunction + +//=========================================================================== +function LeaderboardHasPlayerItemBJ takes leaderboard lb, player whichPlayer returns boolean + return LeaderboardHasPlayerItem(lb, whichPlayer) +endfunction + +//=========================================================================== +function ForceSetLeaderboardBJ takes leaderboard lb, force toForce returns nothing + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if IsPlayerInForce(indexPlayer, toForce) then + call PlayerSetLeaderboard(indexPlayer, lb) + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function CreateLeaderboardBJ takes force toForce, string label returns leaderboard + set bj_lastCreatedLeaderboard = CreateLeaderboard() + call LeaderboardSetLabel(bj_lastCreatedLeaderboard, label) + call ForceSetLeaderboardBJ(bj_lastCreatedLeaderboard, toForce) + call LeaderboardDisplay(bj_lastCreatedLeaderboard, true) + return bj_lastCreatedLeaderboard +endfunction + +//=========================================================================== +function DestroyLeaderboardBJ takes leaderboard lb returns nothing + call DestroyLeaderboard(lb) +endfunction + +//=========================================================================== +function LeaderboardDisplayBJ takes boolean show, leaderboard lb returns nothing + call LeaderboardDisplay(lb, show) +endfunction + +//=========================================================================== +function LeaderboardAddItemBJ takes player whichPlayer, leaderboard lb, string label, integer value returns nothing + if (LeaderboardHasPlayerItem(lb, whichPlayer)) then + call LeaderboardRemovePlayerItem(lb, whichPlayer) + endif + call LeaderboardAddItem(lb, label, value, whichPlayer) + call LeaderboardResizeBJ(lb) + //call LeaderboardSetSizeByItemCount(lb, LeaderboardGetItemCount(lb)) +endfunction + +//=========================================================================== +function LeaderboardRemovePlayerItemBJ takes player whichPlayer, leaderboard lb returns nothing + call LeaderboardRemovePlayerItem(lb, whichPlayer) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSortItemsBJ takes leaderboard lb, integer sortType, boolean ascending returns nothing + if (sortType == bj_SORTTYPE_SORTBYVALUE) then + call LeaderboardSortItemsByValue(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYPLAYER) then + call LeaderboardSortItemsByPlayer(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYLABEL) then + call LeaderboardSortItemsByLabel(lb, ascending) + else + // Unrecognized sort type - ignore the request. + endif +endfunction + +//=========================================================================== +function LeaderboardSortItemsByPlayerBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByPlayer(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardSortItemsByLabelBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByLabel(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardGetPlayerIndexBJ takes player whichPlayer, leaderboard lb returns integer + return LeaderboardGetPlayerIndex(lb, whichPlayer) + 1 +endfunction + +//=========================================================================== +// Returns the player who is occupying a specified position in a leaderboard. +// The position parameter is expected in the range of 1..16. +// +function LeaderboardGetIndexedPlayerBJ takes integer position, leaderboard lb returns player + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if (LeaderboardGetPlayerIndex(lb, indexPlayer) == position - 1) then + return indexPlayer + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + return Player(PLAYER_NEUTRAL_PASSIVE) +endfunction + +//=========================================================================== +function PlayerGetLeaderboardBJ takes player whichPlayer returns leaderboard + return PlayerGetLeaderboard(whichPlayer) +endfunction + +//=========================================================================== +function GetLastCreatedLeaderboard takes nothing returns leaderboard + return bj_lastCreatedLeaderboard +endfunction + +//*************************************************************************** +//* +//* Multiboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateMultiboardBJ takes integer cols, integer rows, string title returns multiboard + set bj_lastCreatedMultiboard = CreateMultiboard() + call MultiboardSetRowCount(bj_lastCreatedMultiboard, rows) + call MultiboardSetColumnCount(bj_lastCreatedMultiboard, cols) + call MultiboardSetTitleText(bj_lastCreatedMultiboard, title) + call MultiboardDisplay(bj_lastCreatedMultiboard, true) + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function DestroyMultiboardBJ takes multiboard mb returns nothing + call DestroyMultiboard(mb) +endfunction + +//=========================================================================== +function GetLastCreatedMultiboard takes nothing returns multiboard + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function MultiboardDisplayBJ takes boolean show, multiboard mb returns nothing + call MultiboardDisplay(mb, show) +endfunction + +//=========================================================================== +function MultiboardMinimizeBJ takes boolean minimize, multiboard mb returns nothing + call MultiboardMinimize(mb, minimize) +endfunction + +//=========================================================================== +function MultiboardSetTitleTextColorBJ takes multiboard mb, real red, real green, real blue, real transparency returns nothing + call MultiboardSetTitleTextColor(mb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function MultiboardAllowDisplayBJ takes boolean flag returns nothing + call MultiboardSuppressDisplay(not flag) +endfunction + +//=========================================================================== +function MultiboardSetItemStyleBJ takes multiboard mb, integer col, integer row, boolean showValue, boolean showIcon returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemStyle(mbitem, showValue, showIcon) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemValueBJ takes multiboard mb, integer col, integer row, string val returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValue(mbitem, val) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemColorBJ takes multiboard mb, integer col, integer row, real red, real green, real blue, real transparency returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValueColor(mbitem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemWidthBJ takes multiboard mb, integer col, integer row, real width returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemWidth(mbitem, width/100.0) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemIconBJ takes multiboard mb, integer col, integer row, string iconFileName returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemIcon(mbitem, iconFileName) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + + + +//*************************************************************************** +//* +//* Text Tag Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Scale the font size linearly such that size 10 equates to height 0.023. +// Screen-relative font heights are harder to grasp and than font sizes. +// +function TextTagSize2Height takes real size returns real + return size * 0.023 / 10 +endfunction + +//=========================================================================== +// Scale the speed linearly such that speed 128 equates to 0.071. +// Screen-relative speeds are hard to grasp. +// +function TextTagSpeed2Velocity takes real speed returns real + return speed * 0.071 / 128 +endfunction + +//=========================================================================== +function SetTextTagColorBJ takes texttag tt, real red, real green, real blue, real transparency returns nothing + call SetTextTagColor(tt, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function SetTextTagVelocityBJ takes texttag tt, real speed, real angle returns nothing + local real vel = TextTagSpeed2Velocity(speed) + local real xvel = vel * Cos(angle * bj_DEGTORAD) + local real yvel = vel * Sin(angle * bj_DEGTORAD) + + call SetTextTagVelocity(tt, xvel, yvel) +endfunction + +//=========================================================================== +function SetTextTagTextBJ takes texttag tt, string s, real size returns nothing + local real textHeight = TextTagSize2Height(size) + + call SetTextTagText(tt, s, textHeight) +endfunction + +//=========================================================================== +function SetTextTagPosBJ takes texttag tt, location loc, real zOffset returns nothing + call SetTextTagPos(tt, GetLocationX(loc), GetLocationY(loc), zOffset) +endfunction + +//=========================================================================== +function SetTextTagPosUnitBJ takes texttag tt, unit whichUnit, real zOffset returns nothing + call SetTextTagPosUnit(tt, whichUnit, zOffset) +endfunction + +//=========================================================================== +function SetTextTagSuspendedBJ takes texttag tt, boolean flag returns nothing + call SetTextTagSuspended(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagPermanentBJ takes texttag tt, boolean flag returns nothing + call SetTextTagPermanent(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagAgeBJ takes texttag tt, real age returns nothing + call SetTextTagAge(tt, age) +endfunction + +//=========================================================================== +function SetTextTagLifespanBJ takes texttag tt, real lifespan returns nothing + call SetTextTagLifespan(tt, lifespan) +endfunction + +//=========================================================================== +function SetTextTagFadepointBJ takes texttag tt, real fadepoint returns nothing + call SetTextTagFadepoint(tt, fadepoint) +endfunction + +//=========================================================================== +function CreateTextTagLocBJ takes string s, location loc, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosBJ(bj_lastCreatedTextTag, loc, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function CreateTextTagUnitBJ takes string s, unit whichUnit, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosUnitBJ(bj_lastCreatedTextTag, whichUnit, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function DestroyTextTagBJ takes texttag tt returns nothing + call DestroyTextTag(tt) +endfunction + +//=========================================================================== +function ShowTextTagForceBJ takes boolean show, texttag tt, force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetTextTagVisibility(tt, show) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTextTag takes nothing returns texttag + return bj_lastCreatedTextTag +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PauseGameOn takes nothing returns nothing + call PauseGame(true) +endfunction + +//=========================================================================== +function PauseGameOff takes nothing returns nothing + call PauseGame(false) +endfunction + +//=========================================================================== +function SetUserControlForceOn takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(true) + endif +endfunction + +//=========================================================================== +function SetUserControlForceOff takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(false) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOn takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, fadeDuration) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOff takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(false, fadeDuration) + endif +endfunction + +//=========================================================================== +function PingMinimapForForce takes force whichForce, real x, real y, real duration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForce takes force whichForce, location loc, real duration returns nothing + call PingMinimapForForce(whichForce, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + call PingMinimapForPlayer(whichPlayer, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForForceEx takes force whichForce, real x, real y, real duration, integer style, real red, real green, real blue returns nothing + local integer red255 = PercentTo255(red) + local integer green255 = PercentTo255(green) + local integer blue255 = PercentTo255(blue) + + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Prevent 100% red simple and flashy pings, as they become "attack" pings. + if (red255 == 255) and (green255 == 0) and (blue255 == 0) then + set red255 = 254 + endif + + if (style == bj_MINIMAPPINGSTYLE_SIMPLE) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, false) + elseif (style == bj_MINIMAPPINGSTYLE_FLASHY) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, true) + elseif (style == bj_MINIMAPPINGSTYLE_ATTACK) then + call PingMinimapEx(x, y, duration, 255, 0, 0, false) + else + // Unrecognized ping style - ignore the request. + endif + + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForceEx takes force whichForce, location loc, real duration, integer style, real red, real green, real blue returns nothing + call PingMinimapForForceEx(whichForce, GetLocationX(loc), GetLocationY(loc), duration, style, red, green, blue) +endfunction + +//=========================================================================== +function EnableWorldFogBoundaryBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableWorldFogBoundary(enable) + endif +endfunction + +//=========================================================================== +function EnableOcclusionBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableOcclusion(enable) + endif +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Transmission Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// If cancelled, stop the sound and end the cinematic scene. +// +function CancelCineSceneBJ takes nothing returns nothing + call StopSoundBJ(bj_cineSceneLastSound, true) + call EndCinematicScene() +endfunction + +//=========================================================================== +// Init a trigger to listen for END_CINEMATIC events and respond to them if +// a cinematic scene is in progress. For performance reasons, this should +// only be called once a cinematic scene has been started, so that maps +// lacking such scenes do not bother to register for these events. +// +function TryInitCinematicBehaviorBJ takes nothing returns nothing + local integer index + + if (bj_cineSceneBeingSkipped == null) then + set bj_cineSceneBeingSkipped = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerEvent(bj_cineSceneBeingSkipped, Player(index), EVENT_PLAYER_END_CINEMATIC) + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + call TriggerAddAction(bj_cineSceneBeingSkipped, function CancelCineSceneBJ) + endif +endfunction + +//=========================================================================== +function SetCinematicSceneBJ takes sound soundHandle, integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing + set bj_cineSceneLastSound = soundHandle + call PlaySoundBJ(soundHandle) + call SetCinematicScene(portraitUnitId, color, speakerTitle, text, sceneDuration, voiceoverDuration) +endfunction + +//=========================================================================== +function GetTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns real + local real duration + + if (timeType == bj_TIMETYPE_ADD) then + set duration = GetSoundDurationBJ(soundHandle) + timeVal + elseif (timeType == bj_TIMETYPE_SET) then + set duration = timeVal + elseif (timeType == bj_TIMETYPE_SUB) then + set duration = GetSoundDurationBJ(soundHandle) - timeVal + else + // Unrecognized timeType - ignore timeVal. + set duration = GetSoundDurationBJ(soundHandle) + endif + + // Make sure we have a non-negative duration. + if (duration < 0) then + set duration = 0 + endif + return duration +endfunction + +//=========================================================================== +function WaitTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns nothing + if (timeType == bj_TIMETYPE_SET) then + // If we have a static duration wait, just perform the wait. + call TriggerSleepAction(timeVal) + + elseif (soundHandle == null) then + // If the sound does not exist, perform a default length wait. + call TriggerSleepAction(bj_NOTHING_SOUND_DURATION) + + elseif (timeType == bj_TIMETYPE_SUB) then + // If the transmission is cutting off the sound, wait for the sound + // to be mostly finished. + call WaitForSoundBJ(soundHandle, timeVal) + + elseif (timeType == bj_TIMETYPE_ADD) then + // If the transmission is extending beyond the sound's length, wait + // for it to finish, and then wait the additional time. + call WaitForSoundBJ(soundHandle, 0) + call TriggerSleepAction(timeVal) + + else + // Unrecognized timeType - ignore. + endif +endfunction + +//=========================================================================== +function DoTransmissionBasicsXYBJ takes integer unitId, playercolor color, real x, real y, sound soundHandle, string unitName, string message, real duration returns nothing + call SetCinematicSceneBJ(soundHandle, unitId, color, unitName, message, duration + bj_TRANSMISSION_PORT_HANGTIME, duration) + + if (unitId != 0) then + call PingMinimap(x, y, bj_TRANSMISSION_PING_TIME) + //call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +// Display a text message to a Player Group with an accompanying sound, +// portrait, speech indicator, and all that good stuff. +// - Query duration of sound +// - Play sound +// - Display text message for duration +// - Display animating portrait for duration +// - Display a speech indicator for the unit +// - Ping the minimap +// +function TransmissionFromUnitWithNameBJ takes force toForce, unit whichUnit, string unitName, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (whichUnit == null) then + // If the unit reference is invalid, send the transmission from the center of the map with no portrait. + call DoTransmissionBasicsXYBJ(0, PLAYER_COLOR_RED, 0, 0, soundHandle, unitName, message, bj_lastTransmissionDuration) + else + call DoTransmissionBasicsXYBJ(GetUnitTypeId(whichUnit), GetPlayerColor(GetOwningPlayer(whichUnit)), GetUnitX(whichUnit), GetUnitY(whichUnit), soundHandle, unitName, message, bj_lastTransmissionDuration) + if (not IsUnitHidden(whichUnit)) then + call UnitAddIndicator(whichUnit, bj_TRANSMISSION_IND_RED, bj_TRANSMISSION_IND_BLUE, bj_TRANSMISSION_IND_GREEN, bj_TRANSMISSION_IND_ALPHA) + endif + endif + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +// This operates like TransmissionFromUnitWithNameBJ, but for a unit type +// rather than a unit instance. As such, no speech indicator is employed. +// +function TransmissionFromUnitTypeWithNameBJ takes force toForce, player fromPlayer, integer unitId, string unitName, location loc, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + call DoTransmissionBasicsXYBJ(unitId, GetPlayerColor(fromPlayer), GetLocationX(loc), GetLocationY(loc), soundHandle, unitName, message, bj_lastTransmissionDuration) + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +function GetLastTransmissionDurationBJ takes nothing returns real + return bj_lastTransmissionDuration +endfunction + +//=========================================================================== +function ForceCinematicSubtitlesBJ takes boolean flag returns nothing + call ForceCinematicSubtitles(flag) +endfunction + + +//*************************************************************************** +//* +//* Cinematic Mode Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Makes many common UI settings changes at once, for use when beginning and +// ending cinematic sequences. Note that some affects apply to all players, +// such as game speed. This is unavoidable. +// - Clear the screen of text messages +// - Hide interface UI (letterbox mode) +// - Hide game messages (ally under attack, etc.) +// - Disable user control +// - Disable occlusion +// - Set game speed (for all players) +// - Lock game speed (for all players) +// - Disable black mask (for all players) +// - Disable fog of war (for all players) +// - Disable world boundary fog (for all players) +// - Dim non-speech sound channels +// - End any outstanding music themes +// - Fix the random seed to a set value +// - Reset the camera smoothing factor +// +function CinematicModeExBJ takes boolean cineMode, force forForce, real interfaceFadeTime returns nothing + // If the game hasn't started yet, perform interface fades immediately + if (not bj_gameStarted) then + set interfaceFadeTime = 0 + endif + + if (cineMode) then + // Save the UI state so that we can restore it later. + if (not bj_cineModeAlreadyIn) then + set bj_cineModeAlreadyIn = true + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + set bj_cineModePriorDawnDusk = IsDawnDuskEnabled() + set bj_cineModeSavedSeed = GetRandomInt(0, 1000000) + endif + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + call ShowInterface(false, interfaceFadeTime) + call EnableUserControl(false) + call EnableOcclusion(false) + call SetCineModeVolumeGroupsBJ() + endif + + // Perform global changes + call SetGameSpeed(bj_CINEMODE_GAMESPEED) + call SetMapFlag(MAP_LOCK_SPEED, true) + call FogMaskEnable(false) + call FogEnable(false) + call EnableWorldFogBoundary(false) + call EnableDawnDusk(false) + + // Use a fixed random seed, so that cinematics play consistently. + call SetRandomSeed(0) + else + set bj_cineModeAlreadyIn = false + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, interfaceFadeTime) + call EnableUserControl(true) + call EnableOcclusion(true) + call VolumeGroupReset() + call EndThematicMusic() + call CameraResetSmoothingFactorBJ() + endif + + // Perform global changes + call SetMapFlag(MAP_LOCK_SPEED, false) + call SetGameSpeed(bj_cineModePriorSpeed) + call FogMaskEnable(bj_cineModePriorMaskSetting) + call FogEnable(bj_cineModePriorFogSetting) + call EnableWorldFogBoundary(true) + call EnableDawnDusk(bj_cineModePriorDawnDusk) + call SetRandomSeed(bj_cineModeSavedSeed) + endif +endfunction + +//=========================================================================== +function CinematicModeBJ takes boolean cineMode, force forForce returns nothing + call CinematicModeExBJ(cineMode, forForce, bj_CINEMODE_INTERFACEFADE) +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Filter Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayCineFilterBJ takes boolean flag returns nothing + call DisplayCineFilter(flag) +endfunction + +//=========================================================================== +function CinematicFadeCommonBJ takes real red, real green, real blue, real duration, string tex, real startTrans, real endTrans returns nothing + if (duration == 0) then + // If the fade is instant, use the same starting and ending values, + // so that we effectively do a set rather than a fade. + set startTrans = endTrans + endif + call EnableUserUI(false) + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(BLEND_MODE_BLEND) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-startTrans)) + call SetCineFilterEndColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-endTrans)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeFinishTimer) + set bj_cineFadeFinishTimer = null + call DisplayCineFilter(false) + call EnableUserUI(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeAfterBJ takes real duration returns nothing + // Create a timer to end the cinematic fade. + set bj_cineFadeFinishTimer = CreateTimer() + call TimerStart(bj_cineFadeFinishTimer, duration, false, function FinishCinematicFadeBJ) +endfunction + +//=========================================================================== +function ContinueCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeContinueTimer) + set bj_cineFadeContinueTimer = null + call CinematicFadeCommonBJ(bj_cineFadeContinueRed, bj_cineFadeContinueGreen, bj_cineFadeContinueBlue, bj_cineFadeContinueDuration, bj_cineFadeContinueTex, bj_cineFadeContinueTrans, 100) +endfunction + +//=========================================================================== +function ContinueCinematicFadeAfterBJ takes real duration, real red, real green, real blue, real trans, string tex returns nothing + set bj_cineFadeContinueRed = red + set bj_cineFadeContinueGreen = green + set bj_cineFadeContinueBlue = blue + set bj_cineFadeContinueTrans = trans + set bj_cineFadeContinueDuration = duration + set bj_cineFadeContinueTex = tex + + // Create a timer to continue the cinematic fade. + set bj_cineFadeContinueTimer = CreateTimer() + call TimerStart(bj_cineFadeContinueTimer, duration, false, function ContinueCinematicFadeBJ) +endfunction + +//=========================================================================== +function AbortCinematicFadeBJ takes nothing returns nothing + if (bj_cineFadeContinueTimer != null) then + call DestroyTimer(bj_cineFadeContinueTimer) + endif + + if (bj_cineFadeFinishTimer != null) then + call DestroyTimer(bj_cineFadeFinishTimer) + endif +endfunction + +//=========================================================================== +function CinematicFadeBJ takes integer fadetype, real duration, string tex, real red, real green, real blue, real trans returns nothing + if (fadetype == bj_CINEFADETYPE_FADEOUT) then + // Fade out to the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, 100, trans) + elseif (fadetype == bj_CINEFADETYPE_FADEIN) then + // Fade in from the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, trans, 100) + call FinishCinematicFadeAfterBJ(duration) + elseif (fadetype == bj_CINEFADETYPE_FADEOUTIN) then + // Fade out to the requested color, and then fade back in from it. + if (duration > 0) then + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration * 0.5, tex, 100, trans) + call ContinueCinematicFadeAfterBJ(duration * 0.5, red, green, blue, trans, tex) + call FinishCinematicFadeAfterBJ(duration) + endif + else + // Unrecognized fadetype - ignore the request. + endif +endfunction + +//=========================================================================== +function CinematicFilterGenericBJ takes real duration, blendmode bmode, string tex, real red0, real green0, real blue0, real trans0, real red1, real green1, real blue1, real trans1 returns nothing + call AbortCinematicFadeBJ() + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(bmode) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red0), PercentTo255(green0), PercentTo255(blue0), PercentTo255(100-trans0)) + call SetCineFilterEndColor(PercentTo255(red1), PercentTo255(green1), PercentTo255(blue1), PercentTo255(100-trans1)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + + + +//*************************************************************************** +//* +//* Rescuable Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Rescues a unit for a player. This performs the default rescue behavior, +// including a rescue sound, flashing selection circle, ownership change, +// and optionally a unit color change. +// +function RescueUnitBJ takes unit whichUnit, player rescuer, boolean changeColor returns nothing + if IsUnitDeadBJ(whichUnit) or (GetOwningPlayer(whichUnit) == rescuer) then + return + endif + + call StartSound(bj_rescueSound) + call SetUnitOwner(whichUnit, rescuer, changeColor) + call UnitAddIndicator(whichUnit, 0, 255, 0, 255) + call PingMinimapForPlayer(rescuer, GetUnitX(whichUnit), GetUnitY(whichUnit), bj_RESCUE_PING_TIME) +endfunction + +//=========================================================================== +function TriggerActionUnitRescuedBJ takes nothing returns nothing + local unit theUnit = GetTriggerUnit() + + if IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorBldg) + else + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorUnit) + endif +endfunction + +//=========================================================================== +// Attempt to init triggers for default rescue behavior. For performance +// reasons, this should only be attempted if a player is set to Rescuable, +// or if a specific unit is thus flagged. +// +function TryInitRescuableTriggersBJ takes nothing returns nothing + local integer index + + if (bj_rescueUnitBehavior == null) then + set bj_rescueUnitBehavior = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(bj_rescueUnitBehavior, Player(index), EVENT_PLAYER_UNIT_RESCUED, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call TriggerAddAction(bj_rescueUnitBehavior, function TriggerActionUnitRescuedBJ) + endif +endfunction + +//=========================================================================== +// Determines whether or not rescued units automatically change color upon +// being rescued. +// +function SetRescueUnitColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorUnit = changeColor +endfunction + +//=========================================================================== +// Determines whether or not rescued buildings automatically change color +// upon being rescued. +// +function SetRescueBuildingColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorBldg = changeColor +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJEnum takes nothing returns nothing + call TryInitRescuableTriggersBJ() + call SetUnitRescuable(bj_makeUnitRescuableUnit, GetEnumPlayer(), bj_makeUnitRescuableFlag) +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJ takes unit whichUnit, boolean isRescuable, force whichForce returns nothing + // Flag the unit as rescuable/unrescuable for the appropriate players. + set bj_makeUnitRescuableUnit = whichUnit + set bj_makeUnitRescuableFlag = isRescuable + call ForForce(whichForce, function MakeUnitRescuableToForceBJEnum) +endfunction + +//=========================================================================== +function InitRescuableBehaviorBJ takes nothing returns nothing + local integer index + + set index = 0 + loop + // If at least one player slot is "Rescuable"-controlled, init the + // rescue behavior triggers. + if (GetPlayerController(Player(index)) == MAP_CONTROL_RESCUABLE) then + call TryInitRescuableTriggersBJ() + return + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Research and Upgrade Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerTechResearchedSwap takes integer techid, integer levels, player whichPlayer returns nothing + call SetPlayerTechResearched(whichPlayer, techid, levels) +endfunction + +//=========================================================================== +function SetPlayerTechMaxAllowedSwap takes integer techid, integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, techid, maximum) +endfunction + +//=========================================================================== +function SetPlayerMaxHeroesAllowed takes integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, 'HERO', maximum) +endfunction + +//=========================================================================== +function GetPlayerTechCountSimple takes integer techid, player whichPlayer returns integer + return GetPlayerTechCount(whichPlayer, techid, true) +endfunction + +//=========================================================================== +function GetPlayerTechMaxAllowedSwap takes integer techid, player whichPlayer returns integer + return GetPlayerTechMaxAllowed(whichPlayer, techid) +endfunction + +//=========================================================================== +function SetPlayerAbilityAvailableBJ takes boolean avail, integer abilid, player whichPlayer returns nothing + call SetPlayerAbilityAvailable(whichPlayer, abilid, avail) +endfunction + + + +//*************************************************************************** +//* +//* Campaign Utility Functions +//* +//*************************************************************************** + +function SetCampaignMenuRaceBJ takes integer campaignNumber returns nothing + if (campaignNumber == bj_CAMPAIGN_INDEX_T) then + call SetCampaignMenuRace(RACE_OTHER) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetCampaignMenuRace(RACE_HUMAN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_U) then + call SetCampaignMenuRace(RACE_UNDEAD) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_O) then + call SetCampaignMenuRace(RACE_ORC) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_N) then + call SetCampaignMenuRace(RACE_NIGHTELF) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XH) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XU) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XO) + else + // Unrecognized campaign - ignore the request + endif +endfunction + +//=========================================================================== +// Converts a single campaign mission designation into campaign and mission +// numbers. The 1000's digit is considered the campaign index, and the 1's +// digit is considered the mission index within that campaign. This is done +// so that the trigger for this can use a single drop-down to list all of +// the campaign missions. +// +function SetMissionAvailableBJ takes boolean available, integer missionIndex returns nothing + local integer campaignNumber = missionIndex / 1000 + local integer missionNumber = missionIndex - campaignNumber * 1000 + + call SetMissionAvailable(campaignNumber, missionNumber, available) +endfunction + +//=========================================================================== +function SetCampaignAvailableBJ takes boolean available, integer campaignNumber returns nothing + local integer campaignOffset + + if (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetTutorialCleared(true) + endif + + if (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XN + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XH + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XU + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XO + else + set campaignOffset = campaignNumber + endif + + call SetCampaignAvailable(campaignOffset, available) + call SetCampaignMenuRaceBJ(campaignNumber) + call ForceCampaignSelectScreen() +endfunction + +//=========================================================================== +function SetCinematicAvailableBJ takes boolean available, integer cinematicIndex returns nothing + if ( cinematicIndex == bj_CINEMATICINDEX_TOP ) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_T, available ) + call PlayCinematic( "TutorialOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_OFFSET_XN, available ) + call PlayCinematic( "IntroX" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_OFFSET_XU, available ) + call PlayCinematic( "OutroX" ) + else + // Unrecognized cinematic - ignore the request. + endif +endfunction + +//=========================================================================== +function InitGameCacheBJ takes string campaignFile returns gamecache + set bj_lastCreatedGameCache = InitGameCache(campaignFile) + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function SaveGameCacheBJ takes gamecache cache returns boolean + return SaveGameCache(cache) +endfunction + +//=========================================================================== +function GetLastCreatedGameCacheBJ takes nothing returns gamecache + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function StoreRealBJ takes real value, string key, string missionKey, gamecache cache returns nothing + call StoreReal(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreIntegerBJ takes integer value, string key, string missionKey, gamecache cache returns nothing + call StoreInteger(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreBooleanBJ takes boolean value, string key, string missionKey, gamecache cache returns nothing + call StoreBoolean(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreStringBJ takes string value, string key, string missionKey, gamecache cache returns boolean + return StoreString(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreUnitBJ takes unit whichUnit, string key, string missionKey, gamecache cache returns boolean + return StoreUnit(cache, missionKey, key, whichUnit) +endfunction + +//=========================================================================== +function GetStoredRealBJ takes string key, string missionKey, gamecache cache returns real + //call SyncStoredReal(cache, missionKey, key) + return GetStoredReal(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredIntegerBJ takes string key, string missionKey, gamecache cache returns integer + //call SyncStoredInteger(cache, missionKey, key) + return GetStoredInteger(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredBooleanBJ takes string key, string missionKey, gamecache cache returns boolean + //call SyncStoredBoolean(cache, missionKey, key) + return GetStoredBoolean(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredStringBJ takes string key, string missionKey, gamecache cache returns string + local string s + + //call SyncStoredString(cache, missionKey, key) + set s = GetStoredString(cache, missionKey, key) + if (s == null) then + return "" + else + return s + endif +endfunction + +//=========================================================================== +function RestoreUnitLocFacingAngleBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, real facing returns unit + //call SyncStoredUnit(cache, missionKey, key) + set bj_lastLoadedUnit = RestoreUnit(cache, missionKey, key, forWhichPlayer, GetLocationX(loc), GetLocationY(loc), facing) + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function RestoreUnitLocFacingPointBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, location lookAt returns unit + //call SyncStoredUnit(cache, missionKey, key) + return RestoreUnitLocFacingAngleBJ(key, missionKey, cache, forWhichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastRestoredUnitBJ takes nothing returns unit + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function FlushGameCacheBJ takes gamecache cache returns nothing + call FlushGameCache(cache) +endfunction + +//=========================================================================== +function FlushStoredMissionBJ takes string missionKey, gamecache cache returns nothing + call FlushStoredMission(cache, missionKey) +endfunction + +//=========================================================================== +function HaveStoredValue takes string key, integer valueType, string missionKey, gamecache cache returns boolean + if (valueType == bj_GAMECACHE_BOOLEAN) then + return HaveStoredBoolean(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_INTEGER) then + return HaveStoredInteger(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_REAL) then + return HaveStoredReal(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_UNIT) then + return HaveStoredUnit(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_STRING) then + return HaveStoredString(cache, missionKey, key) + else + // Unrecognized value type - ignore the request. + return false + endif +endfunction + +//=========================================================================== +function ShowCustomCampaignButton takes boolean show, integer whichButton returns nothing + call SetCustomCampaignButtonVisible(whichButton - 1, show) +endfunction + +//=========================================================================== +function IsCustomCampaignButtonVisibile takes integer whichButton returns boolean + return GetCustomCampaignButtonVisible(whichButton - 1) +endfunction + +//=========================================================================== +function LoadGameBJ takes string loadFileName, boolean doScoreScreen returns nothing + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndChangeLevelBJ takes string saveFileName, string newLevel, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call ChangeLevel(newLevel, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndLoadGameBJ takes string saveFileName, string loadFileName, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function RenameSaveDirectoryBJ takes string sourceDirName, string destDirName returns boolean + return RenameSaveDirectory(sourceDirName, destDirName) +endfunction + +//=========================================================================== +function RemoveSaveDirectoryBJ takes string sourceDirName returns boolean + return RemoveSaveDirectory(sourceDirName) +endfunction + +//=========================================================================== +function CopySaveGameBJ takes string sourceSaveName, string destSaveName returns boolean + return CopySaveGame(sourceSaveName, destSaveName) +endfunction + + + +//*************************************************************************** +//* +//* Miscellaneous Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetPlayerStartLocationX takes player whichPlayer returns real + return GetStartLocationX(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationY takes player whichPlayer returns real + return GetStartLocationY(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationLoc takes player whichPlayer returns location + return GetStartLocationLoc(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetRectCenter takes rect whichRect returns location + return Location(GetRectCenterX(whichRect), GetRectCenterY(whichRect)) +endfunction + +//=========================================================================== +function IsPlayerSlotState takes player whichPlayer, playerslotstate whichState returns boolean + return GetPlayerSlotState(whichPlayer) == whichState +endfunction + +//=========================================================================== +function GetFadeFromSeconds takes real seconds returns integer + if (seconds != 0) then + return 128 / seconds + else + return 10000 + endif +endfunction + +//=========================================================================== +function AdjustPlayerStateSimpleBJ takes player whichPlayer, playerstate whichPlayerState, integer delta returns nothing + call SetPlayerState(whichPlayer, whichPlayerState, GetPlayerState(whichPlayer, whichPlayerState) + delta) +endfunction + +//=========================================================================== +function AdjustPlayerStateBJ takes integer delta, player whichPlayer, playerstate whichPlayerState returns nothing + // If the change was positive, apply the difference to the player's + // gathered resources property as well. + if (delta > 0) then + if (whichPlayerState == PLAYER_STATE_RESOURCE_GOLD) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_GOLD_GATHERED, delta) + elseif (whichPlayerState == PLAYER_STATE_RESOURCE_LUMBER) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_LUMBER_GATHERED, delta) + endif + endif + + call AdjustPlayerStateSimpleBJ(whichPlayer, whichPlayerState, delta) +endfunction + +//=========================================================================== +function SetPlayerStateBJ takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing + local integer oldValue = GetPlayerState(whichPlayer, whichPlayerState) + call AdjustPlayerStateBJ(value - oldValue, whichPlayer, whichPlayerState) +endfunction + +//=========================================================================== +function SetPlayerFlagBJ takes playerstate whichPlayerFlag, boolean flag, player whichPlayer returns nothing + call SetPlayerState(whichPlayer, whichPlayerFlag, IntegerTertiaryOp(flag, 1, 0)) +endfunction + +//=========================================================================== +function SetPlayerTaxRateBJ takes integer rate, playerstate whichResource, player sourcePlayer, player otherPlayer returns nothing + call SetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource, rate) +endfunction + +//=========================================================================== +function GetPlayerTaxRateBJ takes playerstate whichResource, player sourcePlayer, player otherPlayer returns integer + return GetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource) +endfunction + +//=========================================================================== +function IsPlayerFlagSetBJ takes playerstate whichPlayerFlag, player whichPlayer returns boolean + return GetPlayerState(whichPlayer, whichPlayerFlag) == 1 +endfunction + +//=========================================================================== +function AddResourceAmountBJ takes integer delta, unit whichUnit returns nothing + call AddResourceAmount(whichUnit, delta) +endfunction + +//=========================================================================== +function GetConvertedPlayerId takes player whichPlayer returns integer + return GetPlayerId(whichPlayer) + 1 +endfunction + +//=========================================================================== +function ConvertedPlayer takes integer convertedPlayerId returns player + return Player(convertedPlayerId - 1) +endfunction + +//=========================================================================== +function GetRectWidthBJ takes rect r returns real + return GetRectMaxX(r) - GetRectMinX(r) +endfunction + +//=========================================================================== +function GetRectHeightBJ takes rect r returns real + return GetRectMaxY(r) - GetRectMinY(r) +endfunction + +//=========================================================================== +// Replaces a gold mine with a blighted gold mine for the given player. +// +function BlightGoldMineForPlayerBJ takes unit goldMine, player whichPlayer returns unit + local real mineX + local real mineY + local integer mineGold + local unit newMine + + // Make sure we're replacing a Gold Mine and not some other type of unit. + if GetUnitTypeId(goldMine) != 'ngol' then + return null + endif + + // Save the Gold Mine's properties and remove it. + set mineX = GetUnitX(goldMine) + set mineY = GetUnitY(goldMine) + set mineGold = GetResourceAmount(goldMine) + call RemoveUnit(goldMine) + + // Create a Haunted Gold Mine to replace the Gold Mine. + set newMine = CreateBlightedGoldmine(whichPlayer, mineX, mineY, bj_UNIT_FACING) + call SetResourceAmount(newMine, mineGold) + return newMine +endfunction + +//=========================================================================== +function BlightGoldMineForPlayer takes unit goldMine, player whichPlayer returns unit + set bj_lastHauntedGoldMine = BlightGoldMineForPlayerBJ(goldMine, whichPlayer) + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function GetLastHauntedGoldMine takes nothing returns unit + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function IsPointBlightedBJ takes location where returns boolean + return IsPointBlighted(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetPlayerColorBJEnum takes nothing returns nothing + call SetUnitColor(GetEnumUnit(), bj_setPlayerTargetColor) +endfunction + +//=========================================================================== +function SetPlayerColorBJ takes player whichPlayer, playercolor color, boolean changeExisting returns nothing + local group g + + call SetPlayerColor(whichPlayer, color) + if changeExisting then + set bj_setPlayerTargetColor = color + set g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function SetPlayerColorBJEnum) + call DestroyGroup(g) + endif +endfunction + +//=========================================================================== +function SetPlayerUnitAvailableBJ takes integer unitId, boolean allowed, player whichPlayer returns nothing + if allowed then + call SetPlayerTechMaxAllowed(whichPlayer, unitId, -1) + else + call SetPlayerTechMaxAllowed(whichPlayer, unitId, 0) + endif +endfunction + +//=========================================================================== +function LockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, true) +endfunction + +//=========================================================================== +function UnlockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, false) +endfunction + +//=========================================================================== +function IssueTargetOrderBJ takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssuePointOrderLocBJ takes unit whichUnit, string order, location whichLocation returns boolean + return IssuePointOrderLoc( whichUnit, order, whichLocation ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function IssueTargetDestructableOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +function IssueTargetItemOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssueImmediateOrderBJ takes unit whichUnit, string order returns boolean + return IssueImmediateOrder( whichUnit, order ) +endfunction + +//=========================================================================== +function GroupTargetOrderBJ takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GroupPointOrderLocBJ takes group whichGroup, string order, location whichLocation returns boolean + return GroupPointOrderLoc( whichGroup, order, whichLocation ) +endfunction + +//=========================================================================== +function GroupImmediateOrderBJ takes group whichGroup, string order returns boolean + return GroupImmediateOrder( whichGroup, order ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function GroupTargetDestructableOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +function GroupTargetItemOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GetDyingDestructable takes nothing returns destructable + return GetTriggerWidget() +endfunction + +//=========================================================================== +// Rally point setting +// +function SetUnitRallyPoint takes unit whichUnit, location targPos returns nothing + call IssuePointOrderLocBJ(whichUnit, "setrally", targPos) +endfunction + +//=========================================================================== +function SetUnitRallyUnit takes unit whichUnit, unit targUnit returns nothing + call IssueTargetOrder(whichUnit, "setrally", targUnit) +endfunction + +//=========================================================================== +function SetUnitRallyDestructable takes unit whichUnit, destructable targDest returns nothing + call IssueTargetOrder(whichUnit, "setrally", targDest) +endfunction + +//=========================================================================== +// Utility function for use by editor-generated item drop table triggers. +// This function is added as an action to all destructable drop triggers, +// so that a widget drop may be differentiated from a unit drop. +// +function SaveDyingWidget takes nothing returns nothing + set bj_lastDyingWidget = GetTriggerWidget() +endfunction + +//=========================================================================== +function SetBlightRectBJ takes boolean addBlight, player whichPlayer, rect r returns nothing + call SetBlightRect(whichPlayer, r, addBlight) +endfunction + +//=========================================================================== +function SetBlightRadiusLocBJ takes boolean addBlight, player whichPlayer, location loc, real radius returns nothing + call SetBlightLoc(whichPlayer, loc, radius, addBlight) +endfunction + +//=========================================================================== +function GetAbilityName takes integer abilcode returns string + return GetObjectName(abilcode) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Visibility Settings +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingVisibility takes nothing returns nothing + // Start by setting the ToD. + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, bj_MELEE_STARTING_TOD) + + // call FogMaskEnable(true) + // call FogEnable(true) +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Resources +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingResources takes nothing returns nothing + local integer index + local player indexPlayer + local version v + local integer startingGold + local integer startingLumber + + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set startingGold = bj_MELEE_STARTING_GOLD_V0 + set startingLumber = bj_MELEE_STARTING_LUMBER_V0 + else + set startingGold = bj_MELEE_STARTING_GOLD_V1 + set startingLumber = bj_MELEE_STARTING_LUMBER_V1 + endif + + // Set each player's starting resources. + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_GOLD, startingGold) + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_LUMBER, startingLumber) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Hero Limit +//* +//*************************************************************************** + +//=========================================================================== +function ReducePlayerTechMaxAllowed takes player whichPlayer, integer techId, integer limit returns nothing + local integer oldMax = GetPlayerTechMaxAllowed(whichPlayer, techId) + + // A value of -1 is used to indicate no limit, so check for that as well. + if (oldMax < 0 or oldMax > limit) then + call SetPlayerTechMaxAllowed(whichPlayer, techId, limit) + endif +endfunction + +//=========================================================================== +function MeleeStartingHeroLimit takes nothing returns nothing + local integer index + + set index = 0 + loop + // max heroes per player + call SetPlayerMaxHeroesAllowed(bj_MELEE_HERO_LIMIT, Player(index)) + + // each player is restricted to a limit per hero type as well + call ReducePlayerTechMaxAllowed(Player(index), 'Hamg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hmkg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hpal', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hblm', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Obla', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ofar', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Otch', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Oshd', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Edem', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ekee', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Emoo', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ewar', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Udea', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Udre', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ulic', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ucrl', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Npbm', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbrn', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nngs', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nplh', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbst', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nalc', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ntin', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nfir', bj_MELEE_HERO_TYPE_LIMIT) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Granted Hero Items +//* +//*************************************************************************** + +//=========================================================================== +function MeleeTrainedUnitIsHeroBJFilter takes nothing returns boolean + return IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) +endfunction + +//=========================================================================== +// The first N heroes trained or hired for each player start off with a +// standard set of items. This is currently: +// - 1x Scroll of Town Portal +// +function MeleeGrantItemsToHero takes unit whichUnit returns nothing + local integer owner = GetPlayerId(GetOwningPlayer(whichUnit)) + + // If we haven't twinked N heroes for this player yet, twink away. + if (bj_meleeTwinkedHeroes[owner] < bj_MELEE_MAX_TWINKED_HEROES) then + call UnitAddItemById(whichUnit, 'stwp') + set bj_meleeTwinkedHeroes[owner] = bj_meleeTwinkedHeroes[owner] + 1 + endif +endfunction + +//=========================================================================== +function MeleeGrantItemsToTrainedHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetTrainedUnit()) +endfunction + +//=========================================================================== +function MeleeGrantItemsToHiredHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetSoldUnit()) +endfunction + +//=========================================================================== +function MeleeGrantHeroItems takes nothing returns nothing + local integer index + local trigger trig + + // Initialize the twinked hero counts. + set index = 0 + loop + set bj_meleeTwinkedHeroes[index] = 0 + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + + // Register for an event whenever a hero is trained, so that we can give + // him/her their starting items. + set index = 0 + loop + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(index), EVENT_PLAYER_UNIT_TRAIN_FINISH, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToTrainedHero) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Register for an event whenever a neutral hero is hired, so that we + // can give him/her their starting items. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToHiredHero) + + // Flag that we are giving starting items to heroes, so that the melee + // starting units code can create them as necessary. + set bj_meleeGrantHeroItems = true +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Clear Start Locations +//* +//*************************************************************************** + +//=========================================================================== +function MeleeClearExcessUnit takes nothing returns nothing + local unit theUnit = GetEnumUnit() + local integer owner = GetPlayerId(GetOwningPlayer(theUnit)) + + if (owner == PLAYER_NEUTRAL_AGGRESSIVE) then + // Remove any Neutral Hostile units from the area. + call RemoveUnit(GetEnumUnit()) + elseif (owner == PLAYER_NEUTRAL_PASSIVE) then + // Remove non-structure Neutral Passive units from the area. + if not IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RemoveUnit(GetEnumUnit()) + endif + endif +endfunction + +//=========================================================================== +function MeleeClearNearbyUnits takes real x, real y, real range returns nothing + local group nearbyUnits + + set nearbyUnits = CreateGroup() + call GroupEnumUnitsInRange(nearbyUnits, x, y, range, null) + call ForGroup(nearbyUnits, function MeleeClearExcessUnit) + call DestroyGroup(nearbyUnits) +endfunction + +//=========================================================================== +function MeleeClearExcessUnits takes nothing returns nothing + local integer index + local real locX + local real locY + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + + // If the player slot is being used, clear any nearby creeps. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set locX = GetStartLocationX(GetPlayerStartLocation(indexPlayer)) + set locY = GetStartLocationY(GetPlayerStartLocation(indexPlayer)) + + call MeleeClearNearbyUnits(locX, locY, bj_MELEE_CLEAR_UNITS_RADIUS) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Units +//* +//*************************************************************************** + +//=========================================================================== +function MeleeEnumFindNearestMine takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + local real dist + local location unitLoc + + if (GetUnitTypeId(enumUnit) == 'ngol') then + set unitLoc = GetUnitLoc(enumUnit) + set dist = DistanceBetweenPoints(unitLoc, bj_meleeNearestMineToLoc) + call RemoveLocation(unitLoc) + + // If this is our first mine, or the closest thusfar, use it instead. + if (bj_meleeNearestMineDist < 0) or (dist < bj_meleeNearestMineDist) then + set bj_meleeNearestMine = enumUnit + set bj_meleeNearestMineDist = dist + endif + endif +endfunction + +//=========================================================================== +function MeleeFindNearestMine takes location src, real range returns unit + local group nearbyMines + + set bj_meleeNearestMine = null + set bj_meleeNearestMineDist = -1 + set bj_meleeNearestMineToLoc = src + + set nearbyMines = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(nearbyMines, src, range, null) + call ForGroup(nearbyMines, function MeleeEnumFindNearestMine) + call DestroyGroup(nearbyMines) + + return bj_meleeNearestMine +endfunction + +//=========================================================================== +function MeleeRandomHeroLoc takes player p, integer id1, integer id2, integer id3, integer id4, location loc returns unit + local unit hero = null + local integer roll + local integer pick + local version v + + // The selection of heroes is dependant on the game version. + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set roll = GetRandomInt(1,3) + else + set roll = GetRandomInt(1,4) + endif + + // Translate the roll into a unitid. + if roll == 1 then + set pick = id1 + elseif roll == 2 then + set pick = id2 + elseif roll == 3 then + set pick = id3 + elseif roll == 4 then + set pick = id4 + else + // Unrecognized id index - pick the first hero in the list. + set pick = id1 + endif + + // Create the hero. + set hero = CreateUnitAtLoc(p, pick, loc, bj_UNIT_FACING) + if bj_meleeGrantHeroItems then + call MeleeGrantItemsToHero(hero) + endif + return hero +endfunction + +//=========================================================================== +// Returns a location which is (distance) away from (src) in the direction of (targ). +// +function MeleeGetProjectedLoc takes location src, location targ, real distance, real deltaAngle returns location + local real srcX = GetLocationX(src) + local real srcY = GetLocationY(src) + local real direction = Atan2(GetLocationY(targ) - srcY, GetLocationX(targ) - srcX) + deltaAngle + return Location(srcX + distance * Cos(direction), srcY + distance * Sin(direction)) +endfunction + +//=========================================================================== +function MeleeGetNearestValueWithin takes real val, real minVal, real maxVal returns real + if (val < minVal) then + return minVal + elseif (val > maxVal) then + return maxVal + else + return val + endif +endfunction + +//=========================================================================== +function MeleeGetLocWithinRect takes location src, rect r returns location + local real withinX = MeleeGetNearestValueWithin(GetLocationX(src), GetRectMinX(r), GetRectMaxX(r)) + local real withinY = MeleeGetNearestValueWithin(GetLocationY(src), GetRectMinY(r), GetRectMaxY(r)) + return Location(withinX, withinY) +endfunction + +//=========================================================================== +// Starting Units for Human Players +// - 1 Town Hall, placed at start location +// - 5 Peasants, placed between start location and nearest gold mine +// +function MeleeStartingUnitsHuman takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + local unit townHall = null + + if (doPreload) then + call Preloader( "scripts\\HumanMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'hpea', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (townHall != null) then + call UnitAddAbilityBJ('Amic', townHall) + call UnitMakeAbilityPermanentBJ(true, 'Amic', townHall) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Hamg', 'Hmkg', 'Hpal', 'Hblm', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peasants. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Orc Players +// - 1 Great Hall, placed at start location +// - 5 Peons, placed between start location and nearest gold mine +// +function MeleeStartingUnitsOrc takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + + if (doPreload) then + call Preloader( "scripts\\OrcMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'opeo', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Obla', 'Ofar', 'Otch', 'Oshd', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peons. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Undead Players +// - 1 Necropolis, placed at start location +// - 1 Haunted Gold Mine, placed on nearest gold mine +// - 3 Acolytes, placed between start location and nearest gold mine +// - 1 Ghoul, placed between start location and nearest gold mine +// - Blight, centered on nearest gold mine, spread across a "large area" +// +function MeleeStartingUnitsUndead takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location nearTownLoc + local location heroLoc + local real peonX + local real peonY + local real ghoulX + local real ghoulY + + if (doPreload) then + call Preloader( "scripts\\UndeadMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Replace the nearest gold mine with a blighted version. + set nearestMine = BlightGoldMineForPlayerBJ(nearestMine, whichPlayer) + + // Spawn Ghoul near the Necropolis. + set nearTownLoc = MeleeGetProjectedLoc(startLoc, GetUnitLoc(nearestMine), 288, 0) + set ghoulX = GetLocationX(nearTownLoc) + set ghoulY = GetLocationY(nearTownLoc) + set bj_ghoul[GetPlayerId(whichPlayer)] = CreateUnit(whichPlayer, 'ugho', ghoulX + 0.00 * unitSpacing, ghoulY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Spawn Acolytes near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.00 * unitSpacing, peonY + 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the gold mine. + call SetBlightLoc(whichPlayer,nearMineLoc, 768, true) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Spawn Acolytes and Ghoul directly south of the Necropolis. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'uaco', peonX - 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ugho', peonX + 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the start location. + call SetBlightLoc(whichPlayer,startLoc, 768, true) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Udea', 'Udre', 'Ulic', 'Ucrl', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Acolytes. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Night Elf Players +// - 1 Tree of Life, placed by nearest gold mine, already entangled +// - 5 Wisps, placed between Tree of Life and nearest gold mine +// +function MeleeStartingUnitsNightElf takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local real minTreeDist = 3.50 * bj_CELLWIDTH + local real minWispDist = 1.75 * bj_CELLWIDTH + local unit nearestMine + local location nearMineLoc + local location wispLoc + local location heroLoc + local real peonX + local real peonY + local unit tree + + if (doPreload) then + call Preloader( "scripts\\NightElfMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Tree of Life near the mine and have it entangle the mine. + // Project the Tree's coordinates from the gold mine, and then snap + // the X and Y values to within minTreeDist of the Gold Mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 650, 0) + set nearMineLoc = MeleeGetLocWithinRect(nearMineLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minTreeDist)) + set tree = CreateUnitAtLoc(whichPlayer, 'etol', nearMineLoc, bj_UNIT_FACING) + call IssueTargetOrder(tree, "entangleinstant", nearestMine) + + // Spawn Wisps at the start location. + set wispLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set wispLoc = MeleeGetLocWithinRect(wispLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minWispDist)) + set peonX = GetLocationX(wispLoc) + set peonY = GetLocationY(wispLoc) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Tree of Life at the start location. + call CreateUnitAtLoc(whichPlayer, 'etol', startLoc, bj_UNIT_FACING) + + // Spawn Wisps directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'ewsp', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Edem', 'Ekee', 'Emoo', 'Ewar', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Wisps. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Players Whose Race is Unknown +// - 12 Sheep, placed randomly around the start location +// +function MeleeStartingUnitsUnknownRace takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local integer index + + if (doPreload) then + endif + + set index = 0 + loop + call CreateUnit(whichPlayer, 'nshe', GetLocationX(startLoc) + GetRandomReal(-256, 256), GetLocationY(startLoc) + GetRandomReal(-256, 256), GetRandomReal(0, 360)) + set index = index + 1 + exitwhen index == 12 + endloop + + if (doHeroes) then + // Give them a "free hero" token, out of pity. + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + + if (doCamera) then + // Center the camera on the initial sheep. + call SetCameraPositionLocForPlayer(whichPlayer, startLoc) + call SetCameraQuickPositionLocForPlayer(whichPlayer, startLoc) + endif +endfunction + +//=========================================================================== +function MeleeStartingUnits takes nothing returns nothing + local integer index + local player indexPlayer + local location indexStartLoc + local race indexRace + + call Preloader( "scripts\\SharedMelee.pld" ) + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexStartLoc = GetStartLocationLoc(GetPlayerStartLocation(indexPlayer)) + set indexRace = GetPlayerRace(indexPlayer) + + // Create initial race-specific starting units + if (indexRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_ORC) then + call MeleeStartingUnitsOrc(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(indexPlayer, indexStartLoc, true, true, true) + else + call MeleeStartingUnitsUnknownRace(indexPlayer, indexStartLoc, true, true, true) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + +endfunction + +//=========================================================================== +function MeleeStartingUnitsForPlayer takes race whichRace, player whichPlayer, location loc, boolean doHeroes returns nothing + // Create initial race-specific starting units + if (whichRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_ORC) then + call MeleeStartingUnitsOrc(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(whichPlayer, loc, doHeroes, false, false) + else + // Unrecognized race - ignore the request. + endif +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting AI Scripts +//* +//*************************************************************************** + +//=========================================================================== +function PickMeleeAI takes player num, string s1, string s2, string s3 returns nothing + local integer pick + + // easy difficulty never uses any custom AI scripts + // that are designed to be a bit more challenging + // + if GetAIDifficulty(num) == AI_DIFFICULTY_NEWBIE then + call StartMeleeAI(num,s1) + return + endif + + if s2 == null then + set pick = 1 + elseif s3 == null then + set pick = GetRandomInt(1,2) + else + set pick = GetRandomInt(1,3) + endif + + if pick == 1 then + call StartMeleeAI(num,s1) + elseif pick == 2 then + call StartMeleeAI(num,s2) + else + call StartMeleeAI(num,s3) + endif +endfunction + +//=========================================================================== +function MeleeStartingAI takes nothing returns nothing + local integer index + local player indexPlayer + local race indexRace + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexRace = GetPlayerRace(indexPlayer) + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + // Run a race-specific melee AI script. + if (indexRace == RACE_HUMAN) then + call PickMeleeAI(indexPlayer, "human.ai", null, null) + elseif (indexRace == RACE_ORC) then + call PickMeleeAI(indexPlayer, "orc.ai", null, null) + elseif (indexRace == RACE_UNDEAD) then + call PickMeleeAI(indexPlayer, "undead.ai", null, null) + call RecycleGuardPosition(bj_ghoul[index]) + elseif (indexRace == RACE_NIGHTELF) then + call PickMeleeAI(indexPlayer, "elf.ai", null, null) + else + // Unrecognized race. + endif + call ShareEverythingWithTeamAI(indexPlayer) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +function LockGuardPosition takes unit targ returns nothing + call SetUnitCreepGuard(targ,true) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Victory / Defeat Conditions +//* +//*************************************************************************** + +//=========================================================================== +function MeleePlayerIsOpponent takes integer playerIndex, integer opponentIndex returns boolean + local player thePlayer = Player(playerIndex) + local player theOpponent = Player(opponentIndex) + + // The player himself is not an opponent. + if (playerIndex == opponentIndex) then + return false + endif + + // Unused player slots are not opponents. + if (GetPlayerSlotState(theOpponent) != PLAYER_SLOT_STATE_PLAYING) then + return false + endif + + // Players who are already defeated are not opponents. + if (bj_meleeDefeated[opponentIndex]) then + return false + endif + + // Allied players with allied victory set are not opponents. + if GetPlayerAlliance(thePlayer, theOpponent, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(theOpponent, thePlayer, ALLIANCE_PASSIVE) then + if (GetPlayerState(thePlayer, PLAYER_STATE_ALLIED_VICTORY) == 1) then + if (GetPlayerState(theOpponent, PLAYER_STATE_ALLIED_VICTORY) == 1) then + return false + endif + endif + endif + endif + + return true +endfunction + +//=========================================================================== +// Count buildings currently owned by all allies, including the player themself. +// +function MeleeGetAllyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local integer buildingCount + local player indexPlayer + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set buildingCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + // uncomment to cause defeat even if you have control of ally structures, but yours have been nixed + //if (PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex]) then + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set buildingCount = buildingCount + GetPlayerStructureCount(indexPlayer, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return buildingCount +endfunction + +//=========================================================================== +// Count allies, excluding dead players and the player themself. +// +function MeleeGetAllyCount takes player whichPlayer returns integer + local integer playerIndex + local integer playerCount + local player indexPlayer + + // Count the number of not-yet-defeated co-allies. + set playerCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex] and (whichPlayer != indexPlayer) then + set playerCount = playerCount + 1 + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return playerCount +endfunction + +//=========================================================================== +// Counts key structures owned by a player and his or her allies, including +// structures currently upgrading or under construction. +// +// Key structures: Town Hall, Great Hall, Tree of Life, Necropolis +// +function MeleeGetAllyKeyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local player indexPlayer + local integer keyStructs + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set keyStructs = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "townhall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "greathall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "treeoflife", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "necropolis", true, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return keyStructs +endfunction + +//=========================================================================== +// Enum: Draw out a specific player. +// +function MeleeDoDrawEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_TIE, false) +endfunction + +//=========================================================================== +// Enum: Victory out a specific player. +// +function MeleeDoVictoryEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + local integer playerIndex = GetPlayerId(thePlayer) + + if (not bj_meleeVictoried[playerIndex]) then + set bj_meleeVictoried[playerIndex] = true + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_VICTORY, false) + endif +endfunction + +//=========================================================================== +// Defeat out a specific player. +// +function MeleeDoDefeat takes player whichPlayer returns nothing + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, false) +endfunction + +//=========================================================================== +// Enum: Defeat out a specific player. +// +function MeleeDoDefeatEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + // needs to happen before ownership change + call CachePlayerHeroData(thePlayer) + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoDefeat(thePlayer) +endfunction + +//=========================================================================== +// A specific player left the game. +// +function MeleeDoLeave takes player whichPlayer returns nothing + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + call GameOverDialogBJ( whichPlayer, true ) + else + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, true) + endif +endfunction + +//=========================================================================== +// Remove all observers +// +function MeleeRemoveObservers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + + // Give all observers the game over dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (IsPlayerObserver(indexPlayer)) then + call RemovePlayerPreserveUnitsBJ(indexPlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Test all players to determine if a team has won. For a team to win, all +// remaining (read: undefeated) players need to be co-allied with all other +// remaining players. If even one player is not allied towards another, +// everyone must be denied victory. +// +function MeleeCheckForVictors takes nothing returns force + local integer playerIndex + local integer opponentIndex + local force opponentlessPlayers = CreateForce() + local boolean gameOver = false + + // Check to see if any players have opponents remaining. + set playerIndex = 0 + loop + if (not bj_meleeDefeated[playerIndex]) then + // Determine whether or not this player has any remaining opponents. + set opponentIndex = 0 + loop + // If anyone has an opponent, noone can be victorious yet. + if MeleePlayerIsOpponent(playerIndex, opponentIndex) then + return CreateForce() + endif + + set opponentIndex = opponentIndex + 1 + exitwhen opponentIndex == bj_MAX_PLAYERS + endloop + + // Keep track of each opponentless player so that we can give + // them a victory later. + call ForceAddPlayer(opponentlessPlayers, Player(playerIndex)) + set gameOver = true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Set the game over global flag + set bj_meleeGameOver = gameOver + + return opponentlessPlayers +endfunction + +//=========================================================================== +// Test each player to determine if anyone has been defeated. +// +function MeleeCheckForLosersAndVictors takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force defeatedPlayers = CreateForce() + local force victoriousPlayers + local boolean gameOver = false + + // If the game is already over, do nothing + if (bj_meleeGameOver) then + return + endif + + // If the game was disconnected then it is over, in this case we + // don't want to report results for anyone as they will most likely + // conflict with the actual game results + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set bj_meleeGameOver = true + return + endif + + // Check each player to see if he or she has been defeated yet. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (not bj_meleeDefeated[playerIndex] and not bj_meleeVictoried[playerIndex]) then + //call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, 60, "Player"+I2S(playerIndex)+" has "+I2S(MeleeGetAllyStructureCount(indexPlayer))+" ally buildings.") + if (MeleeGetAllyStructureCount(indexPlayer) <= 0) then + + // Keep track of each defeated player so that we can give + // them a defeat later. + call ForceAddPlayer(defeatedPlayers, Player(playerIndex)) + + // Set their defeated flag now so MeleeCheckForVictors + // can detect victors. + set bj_meleeDefeated[playerIndex] = true + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Now that the defeated flags are set, check if there are any victors + set victoriousPlayers = MeleeCheckForVictors() + + // Defeat all defeated players + call ForForce(defeatedPlayers, function MeleeDoDefeatEnum) + + // Give victory to all victorious players + call ForForce(victoriousPlayers, function MeleeDoVictoryEnum) + + // If the game is over we should remove all observers + if (bj_meleeGameOver) then + call MeleeRemoveObservers() + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X or be revealed" message. +// +function MeleeGetCrippledWarningMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_WARNING_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_WARNING_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_WARNING_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_WARNING_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledTimerMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_TIMER_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_TIMER_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_TIMER_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_TIMER_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledRevealedMessage takes player whichPlayer returns string + return GetLocalizedString("CRIPPLE_REVEALING_PREFIX") + GetPlayerName(whichPlayer) + GetLocalizedString("CRIPPLE_REVEALING_POSTFIX") +endfunction + +//=========================================================================== +function MeleeExposePlayer takes player whichPlayer, boolean expose returns nothing + local integer playerIndex + local player indexPlayer + local force toExposeTo = CreateForce() + + call CripplePlayer( whichPlayer, toExposeTo, false ) + + set bj_playerIsExposed[GetPlayerId(whichPlayer)] = expose + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (not PlayersAreCoAllied(whichPlayer, indexPlayer)) then + call ForceAddPlayer( toExposeTo, indexPlayer ) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call CripplePlayer( whichPlayer, toExposeTo, expose ) + call DestroyForce(toExposeTo) +endfunction + +//=========================================================================== +function MeleeExposeAllPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local integer playerIndex2 + local player indexPlayer2 + local force toExposeTo = CreateForce() + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + call ForceClear( toExposeTo ) + call CripplePlayer( indexPlayer, toExposeTo, false ) + + set playerIndex2 = 0 + loop + set indexPlayer2 = Player(playerIndex2) + + if playerIndex != playerIndex2 then + if (not PlayersAreCoAllied(indexPlayer, indexPlayer2)) then + call ForceAddPlayer( toExposeTo, indexPlayer2 ) + endif + endif + + set playerIndex2 = playerIndex2 + 1 + exitwhen playerIndex2 == bj_MAX_PLAYERS + endloop + + call CripplePlayer( indexPlayer, toExposeTo, true ) + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call DestroyForce( toExposeTo ) +endfunction + +//=========================================================================== +function MeleeCrippledPlayerTimeout takes nothing returns nothing + local timer expiredTimer = GetExpiredTimer() + local integer playerIndex + local player exposedPlayer + + // Determine which player's timer expired. + set playerIndex = 0 + loop + if (bj_crippledTimer[playerIndex] == expiredTimer) then + exitwhen true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + if (playerIndex == bj_MAX_PLAYERS) then + return + endif + set exposedPlayer = Player(playerIndex) + + if (GetLocalPlayer() == exposedPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + // Display a text message to all players, explaining the exposure. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledRevealedMessage(exposedPlayer)) + + // Expose the player. + call MeleeExposePlayer(exposedPlayer, true) +endfunction + +//=========================================================================== +function MeleePlayerIsCrippled takes player whichPlayer returns boolean + local integer allyStructures = MeleeGetAllyStructureCount(whichPlayer) + local integer allyKeyStructures = MeleeGetAllyKeyStructureCount(whichPlayer) + + // Dead teams are not considered to be crippled. + return (allyStructures > 0) and (allyKeyStructures <= 0) +endfunction + +//=========================================================================== +// Test each player to determine if anyone has become crippled. +// +function MeleeCheckForCrippledPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force crippledPlayers = CreateForce() + local boolean isNowCrippled + local race indexRace + + // The "finish soon" exposure of all players overrides any "crippled" exposure + if bj_finishSoonAllExposed then + return + endif + + // Check each player to see if he or she has been crippled or uncrippled. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + set isNowCrippled = MeleePlayerIsCrippled(indexPlayer) + + if (not bj_playerIsCrippled[playerIndex] and isNowCrippled) then + + // Player became crippled; start their cripple timer. + set bj_playerIsCrippled[playerIndex] = true + call TimerStart(bj_crippledTimer[playerIndex], bj_MELEE_CRIPPLE_TIMEOUT, false, function MeleeCrippledPlayerTimeout) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Show the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], true) + + // Display a warning message. + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledWarningMessage(indexPlayer)) + endif + + elseif (bj_playerIsCrippled[playerIndex] and not isNowCrippled) then + + // Player became uncrippled; stop their cripple timer. + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + + // Display a confirmation message if the player's team is still alive. + if (MeleeGetAllyStructureCount(indexPlayer) > 0) then + if (bj_playerIsExposed[playerIndex]) then + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNREVEALED")) + else + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNCRIPPLED")) + endif + endif + endif + + // If the player granted shared vision, deny that vision now. + call MeleeExposePlayer(indexPlayer, false) + + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine if the lost unit should result in any defeats or victories. +// +function MeleeCheckLostUnit takes unit lostUnit returns nothing + local player lostUnitOwner = GetOwningPlayer(lostUnit) + + // We only need to check for mortality if this was the last building. + if (GetPlayerStructureCount(lostUnitOwner, true) <= 0) then + call MeleeCheckForLosersAndVictors() + endif + + // Check if the lost unit has crippled or uncrippled the player. + // (A team with 0 units is dead, and thus considered uncrippled.) + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +// Determine if the gained unit should result in any defeats, victories, +// or cripple-status changes. +// +function MeleeCheckAddedUnit takes unit addedUnit returns nothing + local player addedUnitOwner = GetOwningPlayer(addedUnit) + + // If the player was crippled, this unit may have uncrippled him/her. + if (bj_playerIsCrippled[GetPlayerId(addedUnitOwner)]) then + call MeleeCheckForCrippledPlayers() + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionConstructCancel takes nothing returns nothing + call MeleeCheckLostUnit(GetCancelledStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitDeath takes nothing returns nothing + if (IsUnitType(GetDyingUnit(), UNIT_TYPE_STRUCTURE)) then + call MeleeCheckLostUnit(GetDyingUnit()) + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitConstructionStart takes nothing returns nothing + call MeleeCheckAddedUnit(GetConstructingStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerDefeated takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + call CachePlayerHeroData(thePlayer) + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerLeft takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + + // Just show game over for observers when they leave + if (IsPlayerObserver(thePlayer)) then + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + return + endif + + call CachePlayerHeroData(thePlayer) + + // This is the same as defeat except the player generates the message + // "player left the game" as opposed to "player was defeated". + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + call MeleeDoLeave(thePlayer) + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoLeave(thePlayer) + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionAllianceChange takes nothing returns nothing + call MeleeCheckForLosersAndVictors() + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishSoon takes nothing returns nothing + // Note: We may get this trigger multiple times + local integer playerIndex + local player indexPlayer + local real timeRemaining = GetTournamentFinishSoonTimeRemaining() + + if not bj_finishSoonAllExposed then + set bj_finishSoonAllExposed = true + + // Reset all crippled players and their timers, and hide the local crippled timer dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if bj_playerIsCrippled[playerIndex] then + // Uncripple the player + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + endif + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Expose all players + call MeleeExposeAllPlayers() + endif + + // Show the "finish soon" timer dialog and set the real time remaining + call TimerDialogDisplay(bj_finishSoonTimerDialog, true) + call TimerDialogSetRealTimeRemaining(bj_finishSoonTimerDialog, timeRemaining) +endfunction + + +//=========================================================================== +function MeleeWasUserPlayer takes player whichPlayer returns boolean + local playerslotstate slotState + + if (GetPlayerController(whichPlayer) != MAP_CONTROL_USER) then + return false + endif + + set slotState = GetPlayerSlotState(whichPlayer) + + return (slotState == PLAYER_SLOT_STATE_PLAYING or slotState == PLAYER_SLOT_STATE_LEFT) +endfunction + +//=========================================================================== +function MeleeTournamentFinishNowRuleA takes integer multiplier returns nothing + local integer array playerScore + local integer array teamScore + local force array teamForce + local integer teamCount + local integer index + local player indexPlayer + local integer index2 + local player indexPlayer2 + local integer bestTeam + local integer bestScore + local boolean draw + + // Compute individual player scores + set index = 0 + loop + set indexPlayer = Player(index) + if MeleeWasUserPlayer(indexPlayer) then + set playerScore[index] = GetTournamentScore(indexPlayer) + if playerScore[index] <= 0 then + set playerScore[index] = 1 + endif + else + set playerScore[index] = 0 + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Compute team scores and team forces + set teamCount = 0 + set index = 0 + loop + if playerScore[index] != 0 then + set indexPlayer = Player(index) + + set teamScore[teamCount] = 0 + set teamForce[teamCount] = CreateForce() + + set index2 = index + loop + if playerScore[index2] != 0 then + set indexPlayer2 = Player(index2) + + if PlayersAreCoAllied(indexPlayer, indexPlayer2) then + set teamScore[teamCount] = teamScore[teamCount] + playerScore[index2] + call ForceAddPlayer(teamForce[teamCount], indexPlayer2) + set playerScore[index2] = 0 + endif + endif + + set index2 = index2 + 1 + exitwhen index2 == bj_MAX_PLAYERS + endloop + + set teamCount = teamCount + 1 + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // The game is now over + set bj_meleeGameOver = true + + // There should always be at least one team, but continue to work if not + if teamCount != 0 then + + // Find best team score + set bestTeam = -1 + set bestScore = -1 + set index = 0 + loop + if teamScore[index] > bestScore then + set bestTeam = index + set bestScore = teamScore[index] + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Check whether the best team's score is 'multiplier' times better than + // every other team. In the case of multiplier == 1 and exactly equal team + // scores, the first team (which was randomly chosen by the server) will win. + set draw = false + set index = 0 + loop + if index != bestTeam then + if bestScore < (multiplier * teamScore[index]) then + set draw = true + endif + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + if draw then + // Give draw to all players on all teams + set index = 0 + loop + call ForForce(teamForce[index], function MeleeDoDrawEnum) + + set index = index + 1 + exitwhen index == teamCount + endloop + else + // Give defeat to all players on teams other than the best team + set index = 0 + loop + if index != bestTeam then + call ForForce(teamForce[index], function MeleeDoDefeatEnum) + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Give victory to all players on the best team + call ForForce(teamForce[bestTeam], function MeleeDoVictoryEnum) + endif + endif + +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishNow takes nothing returns nothing + local integer rule = GetTournamentFinishNowRule() + + // If the game is already over, do nothing + if bj_meleeGameOver then + return + endif + + if (rule == 1) then + // Finals games + call MeleeTournamentFinishNowRuleA(1) + else + // Preliminary games + call MeleeTournamentFinishNowRuleA(3) + endif + + // Since the game is over we should remove all observers + call MeleeRemoveObservers() + +endfunction + +//=========================================================================== +function MeleeInitVictoryDefeat takes nothing returns nothing + local trigger trig + local integer index + local player indexPlayer + + // Create a timer window for the "finish soon" timeout period, it has no timer + // because it is driven by real time (outside of the game state to avoid desyncs) + set bj_finishSoonTimerDialog = CreateTimerDialog(null) + + // Set a trigger to fire when we receive a "finish soon" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_SOON) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishSoon) + + // Set a trigger to fire when we receive a "finish now" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_NOW) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishNow) + + // Set up each player's mortality code. + set index = 0 + loop + set indexPlayer = Player(index) + + // Make sure this player slot is playing. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set bj_meleeDefeated[index] = false + set bj_meleeVictoried[index] = false + + // Create a timer and timer window in case the player is crippled. + set bj_playerIsCrippled[index] = false + set bj_playerIsExposed[index] = false + set bj_crippledTimer[index] = CreateTimer() + set bj_crippledTimerWindows[index] = CreateTimerDialog(bj_crippledTimer[index]) + call TimerDialogSetTitle(bj_crippledTimerWindows[index], MeleeGetCrippledTimerMessage(indexPlayer)) + + // Set a trigger to fire whenever a building is cancelled for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL, null) + call TriggerAddAction(trig, function MeleeTriggerActionConstructCancel) + + // Set a trigger to fire whenever a unit dies for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_DEATH, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitDeath) + + // Set a trigger to fire whenever a unit begins construction for this player + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_START, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitConstructionStart) + + // Set a trigger to fire whenever this player defeats-out + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_DEFEAT) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerDefeated) + + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + + // Set a trigger to fire whenever this player changes his/her alliances. + set trig = CreateTrigger() + call TriggerRegisterPlayerAllianceChange(trig, indexPlayer, ALLIANCE_PASSIVE) + call TriggerRegisterPlayerStateEvent(trig, indexPlayer, PLAYER_STATE_ALLIED_VICTORY, EQUAL, 1) + call TriggerAddAction(trig, function MeleeTriggerActionAllianceChange) + else + set bj_meleeDefeated[index] = true + set bj_meleeVictoried[index] = false + + // Handle leave events for observers + if (IsPlayerObserver(indexPlayer)) then + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Test for victory / defeat at startup, in case the user has already won / lost. + // Allow for a short time to pass first, so that the map can finish loading. + call TimerStart(CreateTimer(), 2.0, false, function MeleeTriggerActionAllianceChange) +endfunction + + + +//*************************************************************************** +//* +//* Player Slot Availability +//* +//*************************************************************************** + +//=========================================================================== +function CheckInitPlayerSlotAvailability takes nothing returns nothing + local integer index + + if (not bj_slotControlReady) then + set index = 0 + loop + set bj_slotControlUsed[index] = false + set bj_slotControl[index] = MAP_CONTROL_USER + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + set bj_slotControlReady = true + endif +endfunction + +//=========================================================================== +function SetPlayerSlotAvailable takes player whichPlayer, mapcontrol control returns nothing + local integer playerIndex = GetPlayerId(whichPlayer) + + call CheckInitPlayerSlotAvailability() + set bj_slotControlUsed[playerIndex] = true + set bj_slotControl[playerIndex] = control +endfunction + + + +//*************************************************************************** +//* +//* Generic Template Player-slot Initialization +//* +//*************************************************************************** + +//=========================================================================== +function TeamInitPlayerSlots takes integer teamCount returns nothing + local integer index + local player indexPlayer + local integer team + + call SetTeams(teamCount) + + call CheckInitPlayerSlotAvailability() + set index = 0 + set team = 0 + loop + if (bj_slotControlUsed[index]) then + set indexPlayer = Player(index) + call SetPlayerTeam( indexPlayer, team ) + set team = team + 1 + if (team >= teamCount) then + set team = 0 + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function MeleeInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function FFAInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function OneOnOneInitPlayerSlots takes nothing returns nothing + // Limit the game to 2 players. + call SetTeams(2) + call SetPlayers(2) + call TeamInitPlayerSlots(2) +endfunction + +//=========================================================================== +function InitGenericPlayerSlots takes nothing returns nothing + local gametype gType = GetGameTypeSelected() + + if (gType == GAME_TYPE_MELEE) then + call MeleeInitPlayerSlots() + elseif (gType == GAME_TYPE_FFA) then + call FFAInitPlayerSlots() + elseif (gType == GAME_TYPE_USE_MAP_SETTINGS) then + // Do nothing; the map-specific script handles this. + elseif (gType == GAME_TYPE_ONE_ON_ONE) then + call OneOnOneInitPlayerSlots() + elseif (gType == GAME_TYPE_TWO_TEAM_PLAY) then + call TeamInitPlayerSlots(2) + elseif (gType == GAME_TYPE_THREE_TEAM_PLAY) then + call TeamInitPlayerSlots(3) + elseif (gType == GAME_TYPE_FOUR_TEAM_PLAY) then + call TeamInitPlayerSlots(4) + else + // Unrecognized Game Type + endif +endfunction + + + +//*************************************************************************** +//* +//* Blizzard.j Initialization +//* +//*************************************************************************** + +//=========================================================================== +function SetDNCSoundsDawn takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_dawnSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDusk takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_duskSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDay takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) and not bj_dncIsDaytime then + set bj_dncIsDaytime = true + + // change ambient sounds + call StopSound(bj_nightAmbientSound, false, true) + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsNight takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) and bj_dncIsDaytime then + set bj_dncIsDaytime = false + + // change ambient sounds + call StopSound(bj_dayAmbientSound, false, true) + call StartSound(bj_nightAmbientSound) + endif +endfunction + +//=========================================================================== +function InitDNCSounds takes nothing returns nothing + // Create sounds to be played at dawn and dusk. + set bj_dawnSound = CreateSoundFromLabel("RoosterSound", false, false, false, 10000, 10000) + set bj_duskSound = CreateSoundFromLabel("WolfSound", false, false, false, 10000, 10000) + + // Set up triggers to respond to dawn and dusk. + set bj_dncSoundsDawn = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDawn, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DAWN) + call TriggerAddAction(bj_dncSoundsDawn, function SetDNCSoundsDawn) + + set bj_dncSoundsDusk = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDusk, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDusk, function SetDNCSoundsDusk) + + // Set up triggers to respond to changes from day to night or vice-versa. + set bj_dncSoundsDay = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDay, function SetDNCSoundsDay) + + set bj_dncSoundsNight = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsNight, function SetDNCSoundsNight) +endfunction + +//=========================================================================== +function InitBlizzardGlobals takes nothing returns nothing + local integer index + local integer userControlledPlayers + local version v + + // Init filter function vars + set filterIssueHauntOrderAtLocBJ = Filter(function IssueHauntOrderAtLocBJFilter) + set filterEnumDestructablesInCircleBJ = Filter(function EnumDestructablesInCircleBJFilter) + set filterGetUnitsInRectOfPlayer = Filter(function GetUnitsInRectOfPlayerFilter) + set filterGetUnitsOfTypeIdAll = Filter(function GetUnitsOfTypeIdAllFilter) + set filterGetUnitsOfPlayerAndTypeId = Filter(function GetUnitsOfPlayerAndTypeIdFilter) + set filterMeleeTrainedUnitIsHeroBJ = Filter(function MeleeTrainedUnitIsHeroBJFilter) + set filterLivingPlayerUnitsOfTypeId = Filter(function LivingPlayerUnitsOfTypeIdFilter) + + // Init force presets + set index = 0 + loop + exitwhen index == bj_MAX_PLAYER_SLOTS + set bj_FORCE_PLAYER[index] = CreateForce() + call ForceAddPlayer(bj_FORCE_PLAYER[index], Player(index)) + set index = index + 1 + endloop + + set bj_FORCE_ALL_PLAYERS = CreateForce() + call ForceEnumPlayers(bj_FORCE_ALL_PLAYERS, null) + + // Init Cinematic Mode history + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + + // Init Trigger Queue + set index = 0 + loop + exitwhen index >= bj_MAX_QUEUED_TRIGGERS + set bj_queuedExecTriggers[index] = null + set bj_queuedExecUseConds[index] = false + set index = index + 1 + endloop + + // Init singleplayer check + set bj_isSinglePlayer = false + set userControlledPlayers = 0 + set index = 0 + loop + exitwhen index >= bj_MAX_PLAYERS + if (GetPlayerController(Player(index)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(index)) == PLAYER_SLOT_STATE_PLAYING) then + set userControlledPlayers = userControlledPlayers + 1 + endif + set index = index + 1 + endloop + set bj_isSinglePlayer = (userControlledPlayers == 1) + + // Init sounds + //set bj_pingMinimapSound = CreateSoundFromLabel("AutoCastButtonClick", false, false, false, 10000, 10000) + set bj_rescueSound = CreateSoundFromLabel("Rescue", false, false, false, 10000, 10000) + set bj_questDiscoveredSound = CreateSoundFromLabel("QuestNew", false, false, false, 10000, 10000) + set bj_questUpdatedSound = CreateSoundFromLabel("QuestUpdate", false, false, false, 10000, 10000) + set bj_questCompletedSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_questFailedSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + set bj_questHintSound = CreateSoundFromLabel("Hint", false, false, false, 10000, 10000) + set bj_questSecretSound = CreateSoundFromLabel("SecretFound", false, false, false, 10000, 10000) + set bj_questItemAcquiredSound = CreateSoundFromLabel("ItemReward", false, false, false, 10000, 10000) + set bj_questWarningSound = CreateSoundFromLabel("Warning", false, false, false, 10000, 10000) + set bj_victoryDialogSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_defeatDialogSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + + // Init corpse creation triggers. + call DelayedSuspendDecayCreate() + + // Init version-specific data + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V0 + else + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V1 + endif +endfunction + +//=========================================================================== +function InitQueuedTriggers takes nothing returns nothing + set bj_queuedExecTimeout = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_queuedExecTimeout, bj_queuedExecTimeoutTimer) + call TriggerAddAction(bj_queuedExecTimeout, function QueuedTriggerDoneBJ) +endfunction + +//=========================================================================== +function InitMapRects takes nothing returns nothing + set bj_mapInitialPlayableArea = Rect(GetCameraBoundMinX()-GetCameraMargin(CAMERA_MARGIN_LEFT), GetCameraBoundMinY()-GetCameraMargin(CAMERA_MARGIN_BOTTOM), GetCameraBoundMaxX()+GetCameraMargin(CAMERA_MARGIN_RIGHT), GetCameraBoundMaxY()+GetCameraMargin(CAMERA_MARGIN_TOP)) + set bj_mapInitialCameraBounds = GetCurrentCameraBoundsMapRectBJ() +endfunction + +//=========================================================================== +function InitSummonableCaps takes nothing returns nothing + local integer index + + set index = 0 + loop + // upgraded units + // Note: Only do this if the corresponding upgrade is not yet researched + // Barrage - Siege Engines + if (not GetPlayerTechResearched(Player(index), 'Rhrt', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'hrtt', 0) + endif + + // Berserker Upgrade - Troll Berserkers + if (not GetPlayerTechResearched(Player(index), 'Robk', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'otbk', 0) + endif + + // max skeletons per player + call SetPlayerTechMaxAllowed(Player(index), 'uske', bj_MAX_SKELETONS) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Update the per-class stock limits. +// +function UpdateStockAvailability takes item whichItem returns nothing + local itemtype iType = GetItemType(whichItem) + local integer iLevel = GetItemLevel(whichItem) + + // Update allowed type/level combinations. + if (iType == ITEM_TYPE_PERMANENT) then + set bj_stockAllowedPermanent[iLevel] = true + elseif (iType == ITEM_TYPE_CHARGED) then + set bj_stockAllowedCharged[iLevel] = true + elseif (iType == ITEM_TYPE_ARTIFACT) then + set bj_stockAllowedArtifact[iLevel] = true + else + // Not interested in this item type - ignore the item. + endif +endfunction + +//=========================================================================== +// Find a sellable item of the given type and level, and then add it. +// +function UpdateEachStockBuildingEnum takes nothing returns nothing + local integer iteration = 0 + local integer pickedItemId + + loop + set pickedItemId = ChooseRandomItemEx(bj_stockPickedItemType, bj_stockPickedItemLevel) + exitwhen IsItemIdSellable(pickedItemId) + + // If we get hung up on an entire class/level combo of unsellable + // items, or a very unlucky series of random numbers, give up. + set iteration = iteration + 1 + if (iteration > bj_STOCK_MAX_ITERATIONS) then + return + endif + endloop + call AddItemToStock(GetEnumUnit(), pickedItemId, 1, 1) +endfunction + +//=========================================================================== +function UpdateEachStockBuilding takes itemtype iType, integer iLevel returns nothing + local group g + + set bj_stockPickedItemType = iType + set bj_stockPickedItemLevel = iLevel + + set g = CreateGroup() + call GroupEnumUnitsOfType(g, "marketplace", null) + call ForGroup(g, function UpdateEachStockBuildingEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +// Update stock inventory. +// +function PerformStockUpdates takes nothing returns nothing + local integer pickedItemId + local itemtype pickedItemType + local integer pickedItemLevel = 0 + local integer allowedCombinations = 0 + local integer iLevel + + // Give each type/level combination a chance of being picked. + set iLevel = 1 + loop + if (bj_stockAllowedPermanent[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_PERMANENT + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedCharged[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_CHARGED + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedArtifact[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_ARTIFACT + set pickedItemLevel = iLevel + endif + endif + + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Make sure we found a valid item type to add. + if (allowedCombinations == 0) then + return + endif + + call UpdateEachStockBuilding(pickedItemType, pickedItemLevel) +endfunction + +//=========================================================================== +// Perform the first update, and then arrange future updates. +// +function StartStockUpdates takes nothing returns nothing + call PerformStockUpdates() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INTERVAL, true, function PerformStockUpdates) +endfunction + +//=========================================================================== +function RemovePurchasedItem takes nothing returns nothing + call RemoveItemFromStock(GetSellingUnit(), GetItemTypeId(GetSoldItem())) +endfunction + +//=========================================================================== +function InitNeutralBuildings takes nothing returns nothing + local integer iLevel + + // Chart of allowed stock items. + set iLevel = 0 + loop + set bj_stockAllowedPermanent[iLevel] = false + set bj_stockAllowedCharged[iLevel] = false + set bj_stockAllowedArtifact[iLevel] = false + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Limit stock inventory slots. + call SetAllItemTypeSlots(bj_MAX_STOCK_ITEM_SLOTS) + call SetAllUnitTypeSlots(bj_MAX_STOCK_UNIT_SLOTS) + + // Arrange the first update. + set bj_stockUpdateTimer = CreateTimer() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INITIAL_DELAY, false, function StartStockUpdates) + + // Set up a trigger to fire whenever an item is sold. + set bj_stockItemPurchased = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(bj_stockItemPurchased, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL_ITEM, null) + call TriggerAddAction(bj_stockItemPurchased, function RemovePurchasedItem) +endfunction + +//=========================================================================== +function MarkGameStarted takes nothing returns nothing + set bj_gameStarted = true + call DestroyTimer(bj_gameStartedTimer) +endfunction + +//=========================================================================== +function DetectGameStarted takes nothing returns nothing + set bj_gameStartedTimer = CreateTimer() + call TimerStart(bj_gameStartedTimer, bj_GAME_STARTED_THRESHOLD, false, function MarkGameStarted) +endfunction + +//=========================================================================== +function InitBlizzard takes nothing returns nothing + // Set up the Neutral Victim player slot, to torture the abandoned units + // of defeated players. Since some triggers expect this player slot to + // exist, this is performed for all maps. + call ConfigureNeutralVictim() + + call InitBlizzardGlobals() + call InitQueuedTriggers() + call InitRescuableBehaviorBJ() + call InitDNCSounds() + call InitMapRects() + call InitSummonableCaps() + call InitNeutralBuildings() + call DetectGameStarted() +endfunction + + + +//*************************************************************************** +//* +//* Random distribution +//* +//* Used to select a random object from a given distribution of chances +//* +//* - RandomDistReset clears the distribution list +//* +//* - RandomDistAddItem adds a new object to the distribution list +//* with a given identifier and an integer chance to be chosen +//* +//* - RandomDistChoose will use the current distribution list to choose +//* one of the objects randomly based on the chance distribution +//* +//* Note that the chances are effectively normalized by their sum, +//* so only the relative values of each chance are important +//* +//*************************************************************************** + +//=========================================================================== +function RandomDistReset takes nothing returns nothing + set bj_randDistCount = 0 +endfunction + +//=========================================================================== +function RandomDistAddItem takes integer inID, integer inChance returns nothing + set bj_randDistID[bj_randDistCount] = inID + set bj_randDistChance[bj_randDistCount] = inChance + set bj_randDistCount = bj_randDistCount + 1 +endfunction + +//=========================================================================== +function RandomDistChoose takes nothing returns integer + local integer sum = 0 + local integer chance = 0 + local integer index + local integer foundID = -1 + local boolean done + + // No items? + if (bj_randDistCount == 0) then + return -1 + endif + + // Find sum of all chances + set index = 0 + loop + set sum = sum + bj_randDistChance[index] + + set index = index + 1 + exitwhen index == bj_randDistCount + endloop + + // Choose random number within the total range + set chance = GetRandomInt(1, sum) + + // Find ID which corresponds to this chance + set index = 0 + set sum = 0 + set done = false + loop + set sum = sum + bj_randDistChance[index] + + if (chance <= sum) then + set foundID = bj_randDistID[index] + set done = true + endif + + set index = index + 1 + if (index == bj_randDistCount) then + set done = true + endif + + exitwhen done == true + endloop + + return foundID +endfunction + + + +//*************************************************************************** +//* +//* Drop item +//* +//* Makes the given unit drop the given item +//* +//* Note: This could potentially cause problems if the unit is standing +//* right on the edge of an unpathable area and happens to drop the +//* item into the unpathable area where nobody can get it... +//* +//*************************************************************************** + +function UnitDropItem takes unit inUnit, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real unitX + local real unitY + local item droppedItem + + if (inItemID == -1) then + return null + endif + + set unitX = GetUnitX(inUnit) + set unitY = GetUnitY(inUnit) + + set x = GetRandomReal(unitX - radius, unitX + radius) + set y = GetRandomReal(unitY - radius, unitY + radius) + + set droppedItem = CreateItem(inItemID, x, y) + + call SetItemDropID(droppedItem, GetUnitTypeId(inUnit)) + call UpdateStockAvailability(droppedItem) + + return droppedItem +endfunction + +//=========================================================================== +function WidgetDropItem takes widget inWidget, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real widgetX + local real widgetY + + if (inItemID == -1) then + return null + endif + + set widgetX = GetWidgetX(inWidget) + set widgetY = GetWidgetY(inWidget) + + set x = GetRandomReal(widgetX - radius, widgetX + radius) + set y = GetRandomReal(widgetY - radius, widgetY + radius) + + return CreateItem(inItemID, x, y) +endfunction diff --git a/jass/system/rb/common.j b/jass/system/rb/common.j new file mode 100644 index 0000000..944804c --- /dev/null +++ b/jass/system/rb/common.j @@ -0,0 +1,2303 @@ +//============================================================================ +// Native types. All native functions take extended handle types when +// possible to help prevent passing bad values to native functions +// +type event extends handle // a reference to an event registration +type player extends handle // a single player reference +type widget extends handle // an interactive game object with life +type unit extends widget // a single unit reference +type destructable extends widget +type item extends widget +type ability extends handle +type buff extends ability +type force extends handle +type group extends handle +type trigger extends handle +type triggercondition extends handle +type triggeraction extends handle +type timer extends handle +type location extends handle +type region extends handle +type rect extends handle +type boolexpr extends handle +type sound extends handle +type conditionfunc extends boolexpr +type filterfunc extends boolexpr +type unitpool extends handle +type itempool extends handle +type race extends handle +type alliancetype extends handle +type racepreference extends handle +type gamestate extends handle +type igamestate extends gamestate +type fgamestate extends gamestate +type playerstate extends handle +type playerscore extends handle +type playergameresult extends handle +type unitstate extends handle +type aidifficulty extends handle + +type eventid extends handle +type gameevent extends eventid +type playerevent extends eventid +type playerunitevent extends eventid +type unitevent extends eventid +type limitop extends eventid +type widgetevent extends eventid +type dialogevent extends eventid +type unittype extends handle + +type gamespeed extends handle +type gamedifficulty extends handle +type gametype extends handle +type mapflag extends handle +type mapvisibility extends handle +type mapsetting extends handle +type mapdensity extends handle +type mapcontrol extends handle +type playerslotstate extends handle +type volumegroup extends handle +type camerafield extends handle +type camerasetup extends handle +type playercolor extends handle +type placement extends handle +type startlocprio extends handle +type raritycontrol extends handle +type blendmode extends handle +type texmapflags extends handle +type effect extends handle +type effecttype extends handle +type weathereffect extends handle +type terraindeformation extends handle +type fogstate extends handle +type fogmodifier extends handle +type dialog extends handle +type button extends handle +type quest extends handle +type questitem extends handle +type defeatcondition extends handle +type timerdialog extends handle +type leaderboard extends handle +type multiboard extends handle +type multiboarditem extends handle +type trackable extends handle +type gamecache extends handle +type version extends handle +type itemtype extends handle +type texttag extends handle +type attacktype extends handle +type damagetype extends handle +type weapontype extends handle +type soundtype extends handle +type lightning extends handle +type pathingtype extends handle +type image extends handle +type ubersplat extends handle + +constant native ConvertRace takes integer i returns race +constant native ConvertAllianceType takes integer i returns alliancetype +constant native ConvertRacePref takes integer i returns racepreference +constant native ConvertIGameState takes integer i returns igamestate +constant native ConvertFGameState takes integer i returns fgamestate +constant native ConvertPlayerState takes integer i returns playerstate +constant native ConvertPlayerScore takes integer i returns playerscore +constant native ConvertPlayerGameResult takes integer i returns playergameresult +constant native ConvertUnitState takes integer i returns unitstate +constant native ConvertAIDifficulty takes integer i returns aidifficulty +constant native ConvertGameEvent takes integer i returns gameevent +constant native ConvertPlayerEvent takes integer i returns playerevent +constant native ConvertPlayerUnitEvent takes integer i returns playerunitevent +constant native ConvertWidgetEvent takes integer i returns widgetevent +constant native ConvertDialogEvent takes integer i returns dialogevent +constant native ConvertUnitEvent takes integer i returns unitevent +constant native ConvertLimitOp takes integer i returns limitop +constant native ConvertUnitType takes integer i returns unittype +constant native ConvertGameSpeed takes integer i returns gamespeed +constant native ConvertPlacement takes integer i returns placement +constant native ConvertStartLocPrio takes integer i returns startlocprio +constant native ConvertGameDifficulty takes integer i returns gamedifficulty +constant native ConvertGameType takes integer i returns gametype +constant native ConvertMapFlag takes integer i returns mapflag +constant native ConvertMapVisibility takes integer i returns mapvisibility +constant native ConvertMapSetting takes integer i returns mapsetting +constant native ConvertMapDensity takes integer i returns mapdensity +constant native ConvertMapControl takes integer i returns mapcontrol +constant native ConvertPlayerColor takes integer i returns playercolor +constant native ConvertPlayerSlotState takes integer i returns playerslotstate +constant native ConvertVolumeGroup takes integer i returns volumegroup +constant native ConvertCameraField takes integer i returns camerafield +constant native ConvertBlendMode takes integer i returns blendmode +constant native ConvertRarityControl takes integer i returns raritycontrol +constant native ConvertTexMapFlags takes integer i returns texmapflags +constant native ConvertFogState takes integer i returns fogstate +constant native ConvertEffectType takes integer i returns effecttype +constant native ConvertVersion takes integer i returns version +constant native ConvertItemType takes integer i returns itemtype +constant native ConvertAttackType takes integer i returns attacktype +constant native ConvertDamageType takes integer i returns damagetype +constant native ConvertWeaponType takes integer i returns weapontype +constant native ConvertSoundType takes integer i returns soundtype +constant native ConvertPathingType takes integer i returns pathingtype + +constant native OrderId takes string orderIdString returns integer +constant native OrderId2String takes integer orderId returns string +constant native UnitId takes string unitIdString returns integer +constant native UnitId2String takes integer unitId returns string + +// Not currently working correctly... +constant native AbilityId takes string abilityIdString returns integer +constant native AbilityId2String takes integer abilityId returns string + +// Looks up the "name" field for any object (unit, item, ability) +constant native GetObjectName takes integer objectId returns string + +globals + +//=================================================== +// Game Constants +//=================================================== + + // pfff + constant boolean FALSE = false + constant boolean TRUE = true + constant integer JASS_MAX_ARRAY_SIZE = 8192 + + constant integer PLAYER_NEUTRAL_PASSIVE = 15 + constant integer PLAYER_NEUTRAL_AGGRESSIVE = 12 + + constant playercolor PLAYER_COLOR_RED = ConvertPlayerColor(0) + constant playercolor PLAYER_COLOR_BLUE = ConvertPlayerColor(1) + constant playercolor PLAYER_COLOR_CYAN = ConvertPlayerColor(2) + constant playercolor PLAYER_COLOR_PURPLE = ConvertPlayerColor(3) + constant playercolor PLAYER_COLOR_YELLOW = ConvertPlayerColor(4) + constant playercolor PLAYER_COLOR_ORANGE = ConvertPlayerColor(5) + constant playercolor PLAYER_COLOR_GREEN = ConvertPlayerColor(6) + constant playercolor PLAYER_COLOR_PINK = ConvertPlayerColor(7) + constant playercolor PLAYER_COLOR_LIGHT_GRAY = ConvertPlayerColor(8) + constant playercolor PLAYER_COLOR_LIGHT_BLUE = ConvertPlayerColor(9) + constant playercolor PLAYER_COLOR_AQUA = ConvertPlayerColor(10) + constant playercolor PLAYER_COLOR_BROWN = ConvertPlayerColor(11) + + constant race RACE_HUMAN = ConvertRace(1) + constant race RACE_ORC = ConvertRace(2) + constant race RACE_UNDEAD = ConvertRace(3) + constant race RACE_NIGHTELF = ConvertRace(4) + constant race RACE_DEMON = ConvertRace(5) + constant race RACE_OTHER = ConvertRace(7) + + constant playergameresult PLAYER_GAME_RESULT_VICTORY = ConvertPlayerGameResult(0) + constant playergameresult PLAYER_GAME_RESULT_DEFEAT = ConvertPlayerGameResult(1) + constant playergameresult PLAYER_GAME_RESULT_TIE = ConvertPlayerGameResult(2) + constant playergameresult PLAYER_GAME_RESULT_NEUTRAL = ConvertPlayerGameResult(3) + + constant alliancetype ALLIANCE_PASSIVE = ConvertAllianceType(0) + constant alliancetype ALLIANCE_HELP_REQUEST = ConvertAllianceType(1) + constant alliancetype ALLIANCE_HELP_RESPONSE = ConvertAllianceType(2) + constant alliancetype ALLIANCE_SHARED_XP = ConvertAllianceType(3) + constant alliancetype ALLIANCE_SHARED_SPELLS = ConvertAllianceType(4) + constant alliancetype ALLIANCE_SHARED_VISION = ConvertAllianceType(5) + constant alliancetype ALLIANCE_SHARED_CONTROL = ConvertAllianceType(6) + constant alliancetype ALLIANCE_SHARED_ADVANCED_CONTROL= ConvertAllianceType(7) + constant alliancetype ALLIANCE_RESCUABLE = ConvertAllianceType(8) + constant alliancetype ALLIANCE_SHARED_VISION_FORCED = ConvertAllianceType(9) + + constant version VERSION_REIGN_OF_CHAOS = ConvertVersion(0) + constant version VERSION_FROZEN_THRONE = ConvertVersion(1) + + constant attacktype ATTACK_TYPE_NORMAL = ConvertAttackType(0) + constant attacktype ATTACK_TYPE_MELEE = ConvertAttackType(1) + constant attacktype ATTACK_TYPE_PIERCE = ConvertAttackType(2) + constant attacktype ATTACK_TYPE_SIEGE = ConvertAttackType(3) + constant attacktype ATTACK_TYPE_MAGIC = ConvertAttackType(4) + constant attacktype ATTACK_TYPE_CHAOS = ConvertAttackType(5) + constant attacktype ATTACK_TYPE_HERO = ConvertAttackType(6) + + constant damagetype DAMAGE_TYPE_UNKNOWN = ConvertDamageType(0) + constant damagetype DAMAGE_TYPE_NORMAL = ConvertDamageType(4) + constant damagetype DAMAGE_TYPE_ENHANCED = ConvertDamageType(5) + constant damagetype DAMAGE_TYPE_FIRE = ConvertDamageType(8) + constant damagetype DAMAGE_TYPE_COLD = ConvertDamageType(9) + constant damagetype DAMAGE_TYPE_LIGHTNING = ConvertDamageType(10) + constant damagetype DAMAGE_TYPE_POISON = ConvertDamageType(11) + constant damagetype DAMAGE_TYPE_DISEASE = ConvertDamageType(12) + constant damagetype DAMAGE_TYPE_DIVINE = ConvertDamageType(13) + constant damagetype DAMAGE_TYPE_MAGIC = ConvertDamageType(14) + constant damagetype DAMAGE_TYPE_SONIC = ConvertDamageType(15) + constant damagetype DAMAGE_TYPE_ACID = ConvertDamageType(16) + constant damagetype DAMAGE_TYPE_FORCE = ConvertDamageType(17) + constant damagetype DAMAGE_TYPE_DEATH = ConvertDamageType(18) + constant damagetype DAMAGE_TYPE_MIND = ConvertDamageType(19) + constant damagetype DAMAGE_TYPE_PLANT = ConvertDamageType(20) + constant damagetype DAMAGE_TYPE_DEFENSIVE = ConvertDamageType(21) + constant damagetype DAMAGE_TYPE_DEMOLITION = ConvertDamageType(22) + constant damagetype DAMAGE_TYPE_SLOW_POISON = ConvertDamageType(23) + constant damagetype DAMAGE_TYPE_SPIRIT_LINK = ConvertDamageType(24) + constant damagetype DAMAGE_TYPE_SHADOW_STRIKE = ConvertDamageType(25) + constant damagetype DAMAGE_TYPE_UNIVERSAL = ConvertDamageType(26) + + constant weapontype WEAPON_TYPE_WHOKNOWS = ConvertWeaponType(0) + constant weapontype WEAPON_TYPE_METAL_LIGHT_CHOP = ConvertWeaponType(1) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_CHOP = ConvertWeaponType(2) + constant weapontype WEAPON_TYPE_METAL_HEAVY_CHOP = ConvertWeaponType(3) + constant weapontype WEAPON_TYPE_METAL_LIGHT_SLICE = ConvertWeaponType(4) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_SLICE = ConvertWeaponType(5) + constant weapontype WEAPON_TYPE_METAL_HEAVY_SLICE = ConvertWeaponType(6) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_BASH = ConvertWeaponType(7) + constant weapontype WEAPON_TYPE_METAL_HEAVY_BASH = ConvertWeaponType(8) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_STAB = ConvertWeaponType(9) + constant weapontype WEAPON_TYPE_METAL_HEAVY_STAB = ConvertWeaponType(10) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_SLICE = ConvertWeaponType(11) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_SLICE = ConvertWeaponType(12) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_SLICE = ConvertWeaponType(13) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_BASH = ConvertWeaponType(14) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_BASH = ConvertWeaponType(15) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_BASH = ConvertWeaponType(16) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_STAB = ConvertWeaponType(17) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_STAB = ConvertWeaponType(18) + constant weapontype WEAPON_TYPE_CLAW_LIGHT_SLICE = ConvertWeaponType(19) + constant weapontype WEAPON_TYPE_CLAW_MEDIUM_SLICE = ConvertWeaponType(20) + constant weapontype WEAPON_TYPE_CLAW_HEAVY_SLICE = ConvertWeaponType(21) + constant weapontype WEAPON_TYPE_AXE_MEDIUM_CHOP = ConvertWeaponType(22) + constant weapontype WEAPON_TYPE_ROCK_HEAVY_BASH = ConvertWeaponType(23) + + constant pathingtype PATHING_TYPE_ANY = ConvertPathingType(0) + constant pathingtype PATHING_TYPE_WALKABILITY = ConvertPathingType(1) + constant pathingtype PATHING_TYPE_FLYABILITY = ConvertPathingType(2) + constant pathingtype PATHING_TYPE_BUILDABILITY = ConvertPathingType(3) + constant pathingtype PATHING_TYPE_PEONHARVESTPATHING = ConvertPathingType(4) + constant pathingtype PATHING_TYPE_BLIGHTPATHING = ConvertPathingType(5) + constant pathingtype PATHING_TYPE_FLOATABILITY = ConvertPathingType(6) + constant pathingtype PATHING_TYPE_AMPHIBIOUSPATHING = ConvertPathingType(7) + +//=================================================== +// Map Setup Constants +//=================================================== + + constant racepreference RACE_PREF_HUMAN = ConvertRacePref(1) + constant racepreference RACE_PREF_ORC = ConvertRacePref(2) + constant racepreference RACE_PREF_NIGHTELF = ConvertRacePref(4) + constant racepreference RACE_PREF_UNDEAD = ConvertRacePref(8) + constant racepreference RACE_PREF_DEMON = ConvertRacePref(16) + constant racepreference RACE_PREF_RANDOM = ConvertRacePref(32) + constant racepreference RACE_PREF_USER_SELECTABLE = ConvertRacePref(64) + + constant mapcontrol MAP_CONTROL_USER = ConvertMapControl(0) + constant mapcontrol MAP_CONTROL_COMPUTER = ConvertMapControl(1) + constant mapcontrol MAP_CONTROL_RESCUABLE = ConvertMapControl(2) + constant mapcontrol MAP_CONTROL_NEUTRAL = ConvertMapControl(3) + constant mapcontrol MAP_CONTROL_CREEP = ConvertMapControl(4) + constant mapcontrol MAP_CONTROL_NONE = ConvertMapControl(5) + + constant gametype GAME_TYPE_MELEE = ConvertGameType(1) + constant gametype GAME_TYPE_FFA = ConvertGameType(2) + constant gametype GAME_TYPE_USE_MAP_SETTINGS = ConvertGameType(4) + constant gametype GAME_TYPE_BLIZ = ConvertGameType(8) + constant gametype GAME_TYPE_ONE_ON_ONE = ConvertGameType(16) + constant gametype GAME_TYPE_TWO_TEAM_PLAY = ConvertGameType(32) + constant gametype GAME_TYPE_THREE_TEAM_PLAY = ConvertGameType(64) + constant gametype GAME_TYPE_FOUR_TEAM_PLAY = ConvertGameType(128) + + constant mapflag MAP_FOG_HIDE_TERRAIN = ConvertMapFlag(1) + constant mapflag MAP_FOG_MAP_EXPLORED = ConvertMapFlag(2) + constant mapflag MAP_FOG_ALWAYS_VISIBLE = ConvertMapFlag(4) + + constant mapflag MAP_USE_HANDICAPS = ConvertMapFlag(8) + constant mapflag MAP_OBSERVERS = ConvertMapFlag(16) + constant mapflag MAP_OBSERVERS_ON_DEATH = ConvertMapFlag(32) + + constant mapflag MAP_FIXED_COLORS = ConvertMapFlag(128) + + constant mapflag MAP_LOCK_RESOURCE_TRADING = ConvertMapFlag(256) + constant mapflag MAP_RESOURCE_TRADING_ALLIES_ONLY = ConvertMapFlag(512) + + constant mapflag MAP_LOCK_ALLIANCE_CHANGES = ConvertMapFlag(1024) + constant mapflag MAP_ALLIANCE_CHANGES_HIDDEN = ConvertMapFlag(2048) + + constant mapflag MAP_CHEATS = ConvertMapFlag(4096) + constant mapflag MAP_CHEATS_HIDDEN = ConvertMapFlag(8192) + + constant mapflag MAP_LOCK_SPEED = ConvertMapFlag(8192*2) + constant mapflag MAP_LOCK_RANDOM_SEED = ConvertMapFlag(8192*4) + constant mapflag MAP_SHARED_ADVANCED_CONTROL = ConvertMapFlag(8192*8) + constant mapflag MAP_RANDOM_HERO = ConvertMapFlag(8192*16) + constant mapflag MAP_RANDOM_RACES = ConvertMapFlag(8192*32) + constant mapflag MAP_RELOADED = ConvertMapFlag(8192*64) + + constant placement MAP_PLACEMENT_RANDOM = ConvertPlacement(0) // random among all slots + constant placement MAP_PLACEMENT_FIXED = ConvertPlacement(1) // player 0 in start loc 0... + constant placement MAP_PLACEMENT_USE_MAP_SETTINGS = ConvertPlacement(2) // whatever was specified by the script + constant placement MAP_PLACEMENT_TEAMS_TOGETHER = ConvertPlacement(3) // random with allies next to each other + + constant startlocprio MAP_LOC_PRIO_LOW = ConvertStartLocPrio(0) + constant startlocprio MAP_LOC_PRIO_HIGH = ConvertStartLocPrio(1) + constant startlocprio MAP_LOC_PRIO_NOT = ConvertStartLocPrio(2) + + constant mapdensity MAP_DENSITY_NONE = ConvertMapDensity(0) + constant mapdensity MAP_DENSITY_LIGHT = ConvertMapDensity(1) + constant mapdensity MAP_DENSITY_MEDIUM = ConvertMapDensity(2) + constant mapdensity MAP_DENSITY_HEAVY = ConvertMapDensity(3) + + constant gamedifficulty MAP_DIFFICULTY_EASY = ConvertGameDifficulty(0) + constant gamedifficulty MAP_DIFFICULTY_NORMAL = ConvertGameDifficulty(1) + constant gamedifficulty MAP_DIFFICULTY_HARD = ConvertGameDifficulty(2) + constant gamedifficulty MAP_DIFFICULTY_INSANE = ConvertGameDifficulty(3) + + constant gamespeed MAP_SPEED_SLOWEST = ConvertGameSpeed(0) + constant gamespeed MAP_SPEED_SLOW = ConvertGameSpeed(1) + constant gamespeed MAP_SPEED_NORMAL = ConvertGameSpeed(2) + constant gamespeed MAP_SPEED_FAST = ConvertGameSpeed(3) + constant gamespeed MAP_SPEED_FASTEST = ConvertGameSpeed(4) + + constant playerslotstate PLAYER_SLOT_STATE_EMPTY = ConvertPlayerSlotState(0) + constant playerslotstate PLAYER_SLOT_STATE_PLAYING = ConvertPlayerSlotState(1) + constant playerslotstate PLAYER_SLOT_STATE_LEFT = ConvertPlayerSlotState(2) + +//=================================================== +// Sound Constants +//=================================================== + constant volumegroup SOUND_VOLUMEGROUP_UNITMOVEMENT = ConvertVolumeGroup(0) + constant volumegroup SOUND_VOLUMEGROUP_UNITSOUNDS = ConvertVolumeGroup(1) + constant volumegroup SOUND_VOLUMEGROUP_COMBAT = ConvertVolumeGroup(2) + constant volumegroup SOUND_VOLUMEGROUP_SPELLS = ConvertVolumeGroup(3) + constant volumegroup SOUND_VOLUMEGROUP_UI = ConvertVolumeGroup(4) + constant volumegroup SOUND_VOLUMEGROUP_MUSIC = ConvertVolumeGroup(5) + constant volumegroup SOUND_VOLUMEGROUP_AMBIENTSOUNDS = ConvertVolumeGroup(6) + constant volumegroup SOUND_VOLUMEGROUP_FIRE = ConvertVolumeGroup(7) + + +//=================================================== +// Game, Player, and Unit States +// +// For use with TriggerRegisterStateEvent +// +//=================================================== + + constant igamestate GAME_STATE_DIVINE_INTERVENTION = ConvertIGameState(0) + constant igamestate GAME_STATE_DISCONNECTED = ConvertIGameState(1) + constant fgamestate GAME_STATE_TIME_OF_DAY = ConvertFGameState(2) + + constant playerstate PLAYER_STATE_GAME_RESULT = ConvertPlayerState(0) + + // current resource levels + // + constant playerstate PLAYER_STATE_RESOURCE_GOLD = ConvertPlayerState(1) + constant playerstate PLAYER_STATE_RESOURCE_LUMBER = ConvertPlayerState(2) + constant playerstate PLAYER_STATE_RESOURCE_HERO_TOKENS = ConvertPlayerState(3) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_CAP = ConvertPlayerState(4) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_USED = ConvertPlayerState(5) + constant playerstate PLAYER_STATE_FOOD_CAP_CEILING = ConvertPlayerState(6) + + constant playerstate PLAYER_STATE_GIVES_BOUNTY = ConvertPlayerState(7) + constant playerstate PLAYER_STATE_ALLIED_VICTORY = ConvertPlayerState(8) + constant playerstate PLAYER_STATE_PLACED = ConvertPlayerState(9) + constant playerstate PLAYER_STATE_OBSERVER_ON_DEATH = ConvertPlayerState(10) + constant playerstate PLAYER_STATE_OBSERVER = ConvertPlayerState(11) + constant playerstate PLAYER_STATE_UNFOLLOWABLE = ConvertPlayerState(12) + + // taxation rate for each resource + // + constant playerstate PLAYER_STATE_GOLD_UPKEEP_RATE = ConvertPlayerState(13) + constant playerstate PLAYER_STATE_LUMBER_UPKEEP_RATE = ConvertPlayerState(14) + + // cumulative resources collected by the player during the mission + // + constant playerstate PLAYER_STATE_GOLD_GATHERED = ConvertPlayerState(15) + constant playerstate PLAYER_STATE_LUMBER_GATHERED = ConvertPlayerState(16) + + constant playerstate PLAYER_STATE_NO_CREEP_SLEEP = ConvertPlayerState(25) + + constant unitstate UNIT_STATE_LIFE = ConvertUnitState(0) + constant unitstate UNIT_STATE_MAX_LIFE = ConvertUnitState(1) + constant unitstate UNIT_STATE_MANA = ConvertUnitState(2) + constant unitstate UNIT_STATE_MAX_MANA = ConvertUnitState(3) + + constant aidifficulty AI_DIFFICULTY_NEWBIE = ConvertAIDifficulty(0) + constant aidifficulty AI_DIFFICULTY_NORMAL = ConvertAIDifficulty(1) + constant aidifficulty AI_DIFFICULTY_INSANE = ConvertAIDifficulty(2) + + // player score values + constant playerscore PLAYER_SCORE_UNITS_TRAINED = ConvertPlayerScore(0) + constant playerscore PLAYER_SCORE_UNITS_KILLED = ConvertPlayerScore(1) + constant playerscore PLAYER_SCORE_STRUCT_BUILT = ConvertPlayerScore(2) + constant playerscore PLAYER_SCORE_STRUCT_RAZED = ConvertPlayerScore(3) + constant playerscore PLAYER_SCORE_TECH_PERCENT = ConvertPlayerScore(4) + constant playerscore PLAYER_SCORE_FOOD_MAXPROD = ConvertPlayerScore(5) + constant playerscore PLAYER_SCORE_FOOD_MAXUSED = ConvertPlayerScore(6) + constant playerscore PLAYER_SCORE_HEROES_KILLED = ConvertPlayerScore(7) + constant playerscore PLAYER_SCORE_ITEMS_GAINED = ConvertPlayerScore(8) + constant playerscore PLAYER_SCORE_MERCS_HIRED = ConvertPlayerScore(9) + constant playerscore PLAYER_SCORE_GOLD_MINED_TOTAL = ConvertPlayerScore(10) + constant playerscore PLAYER_SCORE_GOLD_MINED_UPKEEP = ConvertPlayerScore(11) + constant playerscore PLAYER_SCORE_GOLD_LOST_UPKEEP = ConvertPlayerScore(12) + constant playerscore PLAYER_SCORE_GOLD_LOST_TAX = ConvertPlayerScore(13) + constant playerscore PLAYER_SCORE_GOLD_GIVEN = ConvertPlayerScore(14) + constant playerscore PLAYER_SCORE_GOLD_RECEIVED = ConvertPlayerScore(15) + constant playerscore PLAYER_SCORE_LUMBER_TOTAL = ConvertPlayerScore(16) + constant playerscore PLAYER_SCORE_LUMBER_LOST_UPKEEP = ConvertPlayerScore(17) + constant playerscore PLAYER_SCORE_LUMBER_LOST_TAX = ConvertPlayerScore(18) + constant playerscore PLAYER_SCORE_LUMBER_GIVEN = ConvertPlayerScore(19) + constant playerscore PLAYER_SCORE_LUMBER_RECEIVED = ConvertPlayerScore(20) + constant playerscore PLAYER_SCORE_UNIT_TOTAL = ConvertPlayerScore(21) + constant playerscore PLAYER_SCORE_HERO_TOTAL = ConvertPlayerScore(22) + constant playerscore PLAYER_SCORE_RESOURCE_TOTAL = ConvertPlayerScore(23) + constant playerscore PLAYER_SCORE_TOTAL = ConvertPlayerScore(24) + +//=================================================== +// Game, Player and Unit Events +// +// When an event causes a trigger to fire these +// values allow the action code to determine which +// event was dispatched and therefore which set of +// native functions should be used to get information +// about the event. +// +// Do NOT change the order or value of these constants +// without insuring that the JASS_GAME_EVENTS_WAR3 enum +// is changed to match. +// +//=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_VICTORY = ConvertGameEvent(0) + constant gameevent EVENT_GAME_END_LEVEL = ConvertGameEvent(1) + + constant gameevent EVENT_GAME_VARIABLE_LIMIT = ConvertGameEvent(2) + constant gameevent EVENT_GAME_STATE_LIMIT = ConvertGameEvent(3) + + constant gameevent EVENT_GAME_TIMER_EXPIRED = ConvertGameEvent(4) + + constant gameevent EVENT_GAME_ENTER_REGION = ConvertGameEvent(5) + constant gameevent EVENT_GAME_LEAVE_REGION = ConvertGameEvent(6) + + constant gameevent EVENT_GAME_TRACKABLE_HIT = ConvertGameEvent(7) + constant gameevent EVENT_GAME_TRACKABLE_TRACK = ConvertGameEvent(8) + + constant gameevent EVENT_GAME_SHOW_SKILL = ConvertGameEvent(9) + constant gameevent EVENT_GAME_BUILD_SUBMENU = ConvertGameEvent(10) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + constant playerevent EVENT_PLAYER_STATE_LIMIT = ConvertPlayerEvent(11) + constant playerevent EVENT_PLAYER_ALLIANCE_CHANGED = ConvertPlayerEvent(12) + + constant playerevent EVENT_PLAYER_DEFEAT = ConvertPlayerEvent(13) + constant playerevent EVENT_PLAYER_VICTORY = ConvertPlayerEvent(14) + constant playerevent EVENT_PLAYER_LEAVE = ConvertPlayerEvent(15) + constant playerevent EVENT_PLAYER_CHAT = ConvertPlayerEvent(16) + constant playerevent EVENT_PLAYER_END_CINEMATIC = ConvertPlayerEvent(17) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_ATTACKED = ConvertPlayerUnitEvent(18) + constant playerunitevent EVENT_PLAYER_UNIT_RESCUED = ConvertPlayerUnitEvent(19) + + constant playerunitevent EVENT_PLAYER_UNIT_DEATH = ConvertPlayerUnitEvent(20) + constant playerunitevent EVENT_PLAYER_UNIT_DECAY = ConvertPlayerUnitEvent(21) + + constant playerunitevent EVENT_PLAYER_UNIT_DETECTED = ConvertPlayerUnitEvent(22) + constant playerunitevent EVENT_PLAYER_UNIT_HIDDEN = ConvertPlayerUnitEvent(23) + + constant playerunitevent EVENT_PLAYER_UNIT_SELECTED = ConvertPlayerUnitEvent(24) + constant playerunitevent EVENT_PLAYER_UNIT_DESELECTED = ConvertPlayerUnitEvent(25) + + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_START = ConvertPlayerUnitEvent(26) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL = ConvertPlayerUnitEvent(27) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_FINISH = ConvertPlayerUnitEvent(28) + + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_START = ConvertPlayerUnitEvent(29) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_CANCEL = ConvertPlayerUnitEvent(30) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_FINISH = ConvertPlayerUnitEvent(31) + + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_START = ConvertPlayerUnitEvent(32) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_CANCEL = ConvertPlayerUnitEvent(33) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_FINISH = ConvertPlayerUnitEvent(34) + + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_START = ConvertPlayerUnitEvent(35) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_CANCEL = ConvertPlayerUnitEvent(36) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_FINISH = ConvertPlayerUnitEvent(37) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_ORDER = ConvertPlayerUnitEvent(38) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER = ConvertPlayerUnitEvent(39) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER = ConvertPlayerUnitEvent(40) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_UNIT_ORDER = ConvertPlayerUnitEvent(40) // for compat + + constant playerunitevent EVENT_PLAYER_HERO_LEVEL = ConvertPlayerUnitEvent(41) + constant playerunitevent EVENT_PLAYER_HERO_SKILL = ConvertPlayerUnitEvent(42) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVABLE = ConvertPlayerUnitEvent(43) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_START = ConvertPlayerUnitEvent(44) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_CANCEL = ConvertPlayerUnitEvent(45) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_FINISH = ConvertPlayerUnitEvent(46) + constant playerunitevent EVENT_PLAYER_UNIT_SUMMON = ConvertPlayerUnitEvent(47) + constant playerunitevent EVENT_PLAYER_UNIT_DROP_ITEM = ConvertPlayerUnitEvent(48) + constant playerunitevent EVENT_PLAYER_UNIT_PICKUP_ITEM = ConvertPlayerUnitEvent(49) + constant playerunitevent EVENT_PLAYER_UNIT_USE_ITEM = ConvertPlayerUnitEvent(50) + + constant playerunitevent EVENT_PLAYER_UNIT_LOADED = ConvertPlayerUnitEvent(51) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_DAMAGED = ConvertUnitEvent(52) + constant unitevent EVENT_UNIT_DEATH = ConvertUnitEvent(53) + constant unitevent EVENT_UNIT_DECAY = ConvertUnitEvent(54) + constant unitevent EVENT_UNIT_DETECTED = ConvertUnitEvent(55) + constant unitevent EVENT_UNIT_HIDDEN = ConvertUnitEvent(56) + constant unitevent EVENT_UNIT_SELECTED = ConvertUnitEvent(57) + constant unitevent EVENT_UNIT_DESELECTED = ConvertUnitEvent(58) + + constant unitevent EVENT_UNIT_STATE_LIMIT = ConvertUnitEvent(59) + + // Events which may have a filter for the "other unit" + // + constant unitevent EVENT_UNIT_ACQUIRED_TARGET = ConvertUnitEvent(60) + constant unitevent EVENT_UNIT_TARGET_IN_RANGE = ConvertUnitEvent(61) + constant unitevent EVENT_UNIT_ATTACKED = ConvertUnitEvent(62) + constant unitevent EVENT_UNIT_RESCUED = ConvertUnitEvent(63) + + constant unitevent EVENT_UNIT_CONSTRUCT_CANCEL = ConvertUnitEvent(64) + constant unitevent EVENT_UNIT_CONSTRUCT_FINISH = ConvertUnitEvent(65) + + constant unitevent EVENT_UNIT_UPGRADE_START = ConvertUnitEvent(66) + constant unitevent EVENT_UNIT_UPGRADE_CANCEL = ConvertUnitEvent(67) + constant unitevent EVENT_UNIT_UPGRADE_FINISH = ConvertUnitEvent(68) + + // Events which involve the specified unit performing + // training of other units + // + constant unitevent EVENT_UNIT_TRAIN_START = ConvertUnitEvent(69) + constant unitevent EVENT_UNIT_TRAIN_CANCEL = ConvertUnitEvent(70) + constant unitevent EVENT_UNIT_TRAIN_FINISH = ConvertUnitEvent(71) + + constant unitevent EVENT_UNIT_RESEARCH_START = ConvertUnitEvent(72) + constant unitevent EVENT_UNIT_RESEARCH_CANCEL = ConvertUnitEvent(73) + constant unitevent EVENT_UNIT_RESEARCH_FINISH = ConvertUnitEvent(74) + + constant unitevent EVENT_UNIT_ISSUED_ORDER = ConvertUnitEvent(75) + constant unitevent EVENT_UNIT_ISSUED_POINT_ORDER = ConvertUnitEvent(76) + constant unitevent EVENT_UNIT_ISSUED_TARGET_ORDER = ConvertUnitEvent(77) + + constant unitevent EVENT_UNIT_HERO_LEVEL = ConvertUnitEvent(78) + constant unitevent EVENT_UNIT_HERO_SKILL = ConvertUnitEvent(79) + + constant unitevent EVENT_UNIT_HERO_REVIVABLE = ConvertUnitEvent(80) + constant unitevent EVENT_UNIT_HERO_REVIVE_START = ConvertUnitEvent(81) + constant unitevent EVENT_UNIT_HERO_REVIVE_CANCEL = ConvertUnitEvent(82) + constant unitevent EVENT_UNIT_HERO_REVIVE_FINISH = ConvertUnitEvent(83) + + constant unitevent EVENT_UNIT_SUMMON = ConvertUnitEvent(84) + + constant unitevent EVENT_UNIT_DROP_ITEM = ConvertUnitEvent(85) + constant unitevent EVENT_UNIT_PICKUP_ITEM = ConvertUnitEvent(86) + constant unitevent EVENT_UNIT_USE_ITEM = ConvertUnitEvent(87) + + constant unitevent EVENT_UNIT_LOADED = ConvertUnitEvent(88) + + constant widgetevent EVENT_WIDGET_DEATH = ConvertWidgetEvent(89) + + constant dialogevent EVENT_DIALOG_BUTTON_CLICK = ConvertDialogEvent(90) + constant dialogevent EVENT_DIALOG_CLICK = ConvertDialogEvent(91) + + //=================================================== + // Frozen Throne Expansion Events + // Need to be added here to preserve compat + //=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_LOADED = ConvertGameEvent(256) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_SOON = ConvertGameEvent(257) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_NOW = ConvertGameEvent(258) + constant gameevent EVENT_GAME_SAVE = ConvertGameEvent(259) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + + constant playerevent EVENT_PLAYER_ARROW_LEFT_DOWN = ConvertPlayerEvent(261) + constant playerevent EVENT_PLAYER_ARROW_LEFT_UP = ConvertPlayerEvent(262) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_DOWN = ConvertPlayerEvent(263) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_UP = ConvertPlayerEvent(264) + constant playerevent EVENT_PLAYER_ARROW_DOWN_DOWN = ConvertPlayerEvent(265) + constant playerevent EVENT_PLAYER_ARROW_DOWN_UP = ConvertPlayerEvent(266) + constant playerevent EVENT_PLAYER_ARROW_UP_DOWN = ConvertPlayerEvent(267) + constant playerevent EVENT_PLAYER_ARROW_UP_UP = ConvertPlayerEvent(268) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_SELL = ConvertPlayerUnitEvent(269) + constant playerunitevent EVENT_PLAYER_UNIT_CHANGE_OWNER = ConvertPlayerUnitEvent(270) + constant playerunitevent EVENT_PLAYER_UNIT_SELL_ITEM = ConvertPlayerUnitEvent(271) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CHANNEL = ConvertPlayerUnitEvent(272) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CAST = ConvertPlayerUnitEvent(273) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_EFFECT = ConvertPlayerUnitEvent(274) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_FINISH = ConvertPlayerUnitEvent(275) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_ENDCAST = ConvertPlayerUnitEvent(276) + constant playerunitevent EVENT_PLAYER_UNIT_PAWN_ITEM = ConvertPlayerUnitEvent(277) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_SELL = ConvertUnitEvent(286) + constant unitevent EVENT_UNIT_CHANGE_OWNER = ConvertUnitEvent(287) + constant unitevent EVENT_UNIT_SELL_ITEM = ConvertUnitEvent(288) + constant unitevent EVENT_UNIT_SPELL_CHANNEL = ConvertUnitEvent(289) + constant unitevent EVENT_UNIT_SPELL_CAST = ConvertUnitEvent(290) + constant unitevent EVENT_UNIT_SPELL_EFFECT = ConvertUnitEvent(291) + constant unitevent EVENT_UNIT_SPELL_FINISH = ConvertUnitEvent(292) + constant unitevent EVENT_UNIT_SPELL_ENDCAST = ConvertUnitEvent(293) + constant unitevent EVENT_UNIT_PAWN_ITEM = ConvertUnitEvent(294) + + //=================================================== + // Limit Event API constants + // variable, player state, game state, and unit state events + // ( do NOT change the order of these... ) + //=================================================== + constant limitop LESS_THAN = ConvertLimitOp(0) + constant limitop LESS_THAN_OR_EQUAL = ConvertLimitOp(1) + constant limitop EQUAL = ConvertLimitOp(2) + constant limitop GREATER_THAN_OR_EQUAL = ConvertLimitOp(3) + constant limitop GREATER_THAN = ConvertLimitOp(4) + constant limitop NOT_EQUAL = ConvertLimitOp(5) + +//=================================================== +// Unit Type Constants for use with IsUnitType() +//=================================================== + + constant unittype UNIT_TYPE_HERO = ConvertUnitType(0) + constant unittype UNIT_TYPE_DEAD = ConvertUnitType(1) + constant unittype UNIT_TYPE_STRUCTURE = ConvertUnitType(2) + + constant unittype UNIT_TYPE_FLYING = ConvertUnitType(3) + constant unittype UNIT_TYPE_GROUND = ConvertUnitType(4) + + constant unittype UNIT_TYPE_ATTACKS_FLYING = ConvertUnitType(5) + constant unittype UNIT_TYPE_ATTACKS_GROUND = ConvertUnitType(6) + + constant unittype UNIT_TYPE_MELEE_ATTACKER = ConvertUnitType(7) + constant unittype UNIT_TYPE_RANGED_ATTACKER = ConvertUnitType(8) + + constant unittype UNIT_TYPE_GIANT = ConvertUnitType(9) + constant unittype UNIT_TYPE_SUMMONED = ConvertUnitType(10) + constant unittype UNIT_TYPE_STUNNED = ConvertUnitType(11) + constant unittype UNIT_TYPE_PLAGUED = ConvertUnitType(12) + constant unittype UNIT_TYPE_SNARED = ConvertUnitType(13) + + constant unittype UNIT_TYPE_UNDEAD = ConvertUnitType(14) + constant unittype UNIT_TYPE_MECHANICAL = ConvertUnitType(15) + constant unittype UNIT_TYPE_PEON = ConvertUnitType(16) + constant unittype UNIT_TYPE_SAPPER = ConvertUnitType(17) + constant unittype UNIT_TYPE_TOWNHALL = ConvertUnitType(18) + constant unittype UNIT_TYPE_ANCIENT = ConvertUnitType(19) + + constant unittype UNIT_TYPE_TAUREN = ConvertUnitType(20) + constant unittype UNIT_TYPE_POISONED = ConvertUnitType(21) + constant unittype UNIT_TYPE_POLYMORPHED = ConvertUnitType(22) + constant unittype UNIT_TYPE_SLEEPING = ConvertUnitType(23) + constant unittype UNIT_TYPE_RESISTANT = ConvertUnitType(24) + constant unittype UNIT_TYPE_ETHEREAL = ConvertUnitType(25) + constant unittype UNIT_TYPE_MAGIC_IMMUNE = ConvertUnitType(26) + +//=================================================== +// Unit Type Constants for use with ChooseRandomItemEx() +//=================================================== + + constant itemtype ITEM_TYPE_PERMANENT = ConvertItemType(0) + constant itemtype ITEM_TYPE_CHARGED = ConvertItemType(1) + constant itemtype ITEM_TYPE_POWERUP = ConvertItemType(2) + constant itemtype ITEM_TYPE_ARTIFACT = ConvertItemType(3) + constant itemtype ITEM_TYPE_PURCHASABLE = ConvertItemType(4) + constant itemtype ITEM_TYPE_CAMPAIGN = ConvertItemType(5) + constant itemtype ITEM_TYPE_MISCELLANEOUS = ConvertItemType(6) + constant itemtype ITEM_TYPE_UNKNOWN = ConvertItemType(7) + constant itemtype ITEM_TYPE_ANY = ConvertItemType(8) + + // Deprecated, should use ITEM_TYPE_POWERUP + constant itemtype ITEM_TYPE_TOME = ConvertItemType(2) + +//=================================================== +// Animatable Camera Fields +//=================================================== + + constant camerafield CAMERA_FIELD_TARGET_DISTANCE = ConvertCameraField(0) + constant camerafield CAMERA_FIELD_FARZ = ConvertCameraField(1) + constant camerafield CAMERA_FIELD_ANGLE_OF_ATTACK = ConvertCameraField(2) + constant camerafield CAMERA_FIELD_FIELD_OF_VIEW = ConvertCameraField(3) + constant camerafield CAMERA_FIELD_ROLL = ConvertCameraField(4) + constant camerafield CAMERA_FIELD_ROTATION = ConvertCameraField(5) + constant camerafield CAMERA_FIELD_ZOFFSET = ConvertCameraField(6) + + constant blendmode BLEND_MODE_NONE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_DONT_CARE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_KEYALPHA = ConvertBlendMode(1) + constant blendmode BLEND_MODE_BLEND = ConvertBlendMode(2) + constant blendmode BLEND_MODE_ADDITIVE = ConvertBlendMode(3) + constant blendmode BLEND_MODE_MODULATE = ConvertBlendMode(4) + constant blendmode BLEND_MODE_MODULATE_2X = ConvertBlendMode(5) + + constant raritycontrol RARITY_FREQUENT = ConvertRarityControl(0) + constant raritycontrol RARITY_RARE = ConvertRarityControl(1) + + constant texmapflags TEXMAP_FLAG_NONE = ConvertTexMapFlags(0) + constant texmapflags TEXMAP_FLAG_WRAP_U = ConvertTexMapFlags(1) + constant texmapflags TEXMAP_FLAG_WRAP_V = ConvertTexMapFlags(2) + constant texmapflags TEXMAP_FLAG_WRAP_UV = ConvertTexMapFlags(3) + + constant fogstate FOG_OF_WAR_MASKED = ConvertFogState(1) + constant fogstate FOG_OF_WAR_FOGGED = ConvertFogState(2) + constant fogstate FOG_OF_WAR_VISIBLE = ConvertFogState(4) + +//=================================================== +// Camera Margin constants for use with GetCameraMargin +//=================================================== + + constant integer CAMERA_MARGIN_LEFT = 0 + constant integer CAMERA_MARGIN_RIGHT = 1 + constant integer CAMERA_MARGIN_TOP = 2 + constant integer CAMERA_MARGIN_BOTTOM = 3 + +//=================================================== +// Effect API constants +//=================================================== + + constant effecttype EFFECT_TYPE_EFFECT = ConvertEffectType(0) + constant effecttype EFFECT_TYPE_TARGET = ConvertEffectType(1) + constant effecttype EFFECT_TYPE_CASTER = ConvertEffectType(2) + constant effecttype EFFECT_TYPE_SPECIAL = ConvertEffectType(3) + constant effecttype EFFECT_TYPE_AREA_EFFECT = ConvertEffectType(4) + constant effecttype EFFECT_TYPE_MISSILE = ConvertEffectType(5) + constant effecttype EFFECT_TYPE_LIGHTNING = ConvertEffectType(6) + + constant soundtype SOUND_TYPE_EFFECT = ConvertSoundType(0) + constant soundtype SOUND_TYPE_EFFECT_LOOPED = ConvertSoundType(1) + +endglobals + +//============================================================================ +// MathAPI +native Deg2Rad takes real degrees returns real +native Rad2Deg takes real radians returns real + +native Sin takes real radians returns real +native Cos takes real radians returns real +native Tan takes real radians returns real + +// Expect values between -1 and 1...returns 0 for invalid input +native Asin takes real y returns real +native Acos takes real x returns real + +native Atan takes real x returns real + +// Returns 0 if x and y are both 0 +native Atan2 takes real y, real x returns real + +// Returns 0 if x <= 0 +native SquareRoot takes real x returns real + +// computes x to the y power +// y == 0.0 => 1 +// x ==0.0 and y < 0 => 0 +// +native Pow takes real x, real power returns real + +//============================================================================ +// String Utility API +native I2R takes integer i returns real +native R2I takes real r returns integer +native I2S takes integer i returns string +native R2S takes real r returns string +native R2SW takes real r, integer width, integer precision returns string +native S2I takes string s returns integer +native S2R takes string s returns real +native SubString takes string source, integer start, integer end returns string +native StringLength takes string s returns integer +native StringCase takes string source, boolean upper returns string + +native GetLocalizedString takes string source returns string +native GetLocalizedHotkey takes string source returns integer + +//============================================================================ +// Map Setup API +// +// These are native functions for describing the map configuration +// these funcs should only be used in the "config" function of +// a map script. The functions should also be called in this order +// ( i.e. call SetPlayers before SetPlayerColor... +// + +native SetMapName takes string name returns nothing +native SetMapDescription takes string description returns nothing + +native SetTeams takes integer teamcount returns nothing +native SetPlayers takes integer playercount returns nothing + +native DefineStartLocation takes integer whichStartLoc, real x, real y returns nothing +native DefineStartLocationLoc takes integer whichStartLoc, location whichLocation returns nothing +native SetStartLocPrioCount takes integer whichStartLoc, integer prioSlotCount returns nothing +native SetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex, integer otherStartLocIndex, startlocprio priority returns nothing +native GetStartLocPrioSlot takes integer whichStartLoc, integer prioSlotIndex returns integer +native GetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex returns startlocprio + +native SetGameTypeSupported takes gametype whichGameType, boolean value returns nothing +native SetMapFlag takes mapflag whichMapFlag, boolean value returns nothing +native SetGamePlacement takes placement whichPlacementType returns nothing +native SetGameSpeed takes gamespeed whichspeed returns nothing +native SetGameDifficulty takes gamedifficulty whichdifficulty returns nothing +native SetResourceDensity takes mapdensity whichdensity returns nothing +native SetCreatureDensity takes mapdensity whichdensity returns nothing + +native GetTeams takes nothing returns integer +native GetPlayers takes nothing returns integer + +native IsGameTypeSupported takes gametype whichGameType returns boolean +native GetGameTypeSelected takes nothing returns gametype +native IsMapFlagSet takes mapflag whichMapFlag returns boolean + +constant native GetGamePlacement takes nothing returns placement +constant native GetGameSpeed takes nothing returns gamespeed +constant native GetGameDifficulty takes nothing returns gamedifficulty +constant native GetResourceDensity takes nothing returns mapdensity +constant native GetCreatureDensity takes nothing returns mapdensity +constant native GetStartLocationX takes integer whichStartLocation returns real +constant native GetStartLocationY takes integer whichStartLocation returns real +constant native GetStartLocationLoc takes integer whichStartLocation returns location + + +native SetPlayerTeam takes player whichPlayer, integer whichTeam returns nothing +native SetPlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +// forces player to have the specified start loc and marks the start loc as occupied +// which removes it from consideration for subsequently placed players +// ( i.e. you can use this to put people in a fixed loc and then +// use random placement for any unplaced players etc ) +native ForcePlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +native SetPlayerColor takes player whichPlayer, playercolor color returns nothing +native SetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting, boolean value returns nothing +native SetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource, integer rate returns nothing +native SetPlayerRacePreference takes player whichPlayer, racepreference whichRacePreference returns nothing +native SetPlayerRaceSelectable takes player whichPlayer, boolean value returns nothing +native SetPlayerController takes player whichPlayer, mapcontrol controlType returns nothing +native SetPlayerName takes player whichPlayer, string name returns nothing + +native SetPlayerOnScoreScreen takes player whichPlayer, boolean flag returns nothing + +native GetPlayerTeam takes player whichPlayer returns integer +native GetPlayerStartLocation takes player whichPlayer returns integer +native GetPlayerColor takes player whichPlayer returns playercolor +native GetPlayerSelectable takes player whichPlayer returns boolean +native GetPlayerController takes player whichPlayer returns mapcontrol +native GetPlayerSlotState takes player whichPlayer returns playerslotstate +native GetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource returns integer +native IsPlayerRacePrefSet takes player whichPlayer, racepreference pref returns boolean +native GetPlayerName takes player whichPlayer returns string + +//============================================================================ +// Timer API +// +native CreateTimer takes nothing returns timer +native DestroyTimer takes timer whichTimer returns nothing +native TimerStart takes timer whichTimer, real timeout, boolean periodic, code handlerFunc returns nothing +native TimerGetElapsed takes timer whichTimer returns real +native TimerGetRemaining takes timer whichTimer returns real +native TimerGetTimeout takes timer whichTimer returns real +native PauseTimer takes timer whichTimer returns nothing +native ResumeTimer takes timer whichTimer returns nothing +native GetExpiredTimer takes nothing returns timer + +//============================================================================ +// Group API +// +native CreateGroup takes nothing returns group +native DestroyGroup takes group whichGroup returns nothing +native GroupAddUnit takes group whichGroup, unit whichUnit returns nothing +native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing +native GroupClear takes group whichGroup returns nothing +native GroupEnumUnitsOfType takes group whichGroup, string unitname, boolexpr filter returns nothing +native GroupEnumUnitsOfPlayer takes group whichGroup, player whichPlayer, boolexpr filter returns nothing +native GroupEnumUnitsOfTypeCounted takes group whichGroup, string unitname, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRect takes group whichGroup, rect r, boolexpr filter returns nothing +native GroupEnumUnitsInRectCounted takes group whichGroup, rect r, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRange takes group whichGroup, real x, real y, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeOfLoc takes group whichGroup, location whichLocation, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeCounted takes group whichGroup, real x, real y, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRangeOfLocCounted takes group whichGroup, location whichLocation, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsSelected takes group whichGroup, player whichPlayer, boolexpr filter returns nothing + +native GroupImmediateOrder takes group whichGroup, string order returns boolean +native GroupImmediateOrderById takes group whichGroup, integer order returns boolean +native GroupPointOrder takes group whichGroup, string order, real x, real y returns boolean +native GroupPointOrderLoc takes group whichGroup, string order, location whichLocation returns boolean +native GroupPointOrderById takes group whichGroup, integer order, real x, real y returns boolean +native GroupPointOrderByIdLoc takes group whichGroup, integer order, location whichLocation returns boolean +native GroupTargetOrder takes group whichGroup, string order, widget targetWidget returns boolean +native GroupTargetOrderById takes group whichGroup, integer order, widget targetWidget returns boolean + +// This will be difficult to support with potentially disjoint, cell-based regions +// as it would involve enumerating all the cells that are covered by a particularregion +// a better implementation would be a trigger that adds relevant units as they enter +// and removes them if they leave... +native ForGroup takes group whichGroup, code callback returns nothing +native FirstOfGroup takes group whichGroup returns unit + +//============================================================================ +// Force API +// +native CreateForce takes nothing returns force +native DestroyForce takes force whichForce returns nothing +native ForceAddPlayer takes force whichForce, player whichPlayer returns nothing +native ForceRemovePlayer takes force whichForce, player whichPlayer returns nothing +native ForceClear takes force whichForce returns nothing +native ForceEnumPlayers takes force whichForce, boolexpr filter returns nothing +native ForceEnumPlayersCounted takes force whichForce, boolexpr filter, integer countLimit returns nothing +native ForceEnumAllies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForceEnumEnemies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForForce takes force whichForce, code callback returns nothing + +//============================================================================ +// Region and Location API +// +native Rect takes real minx, real miny, real maxx, real maxy returns rect +native RectFromLoc takes location min, location max returns rect +native RemoveRect takes rect whichRect returns nothing +native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing +native SetRectFromLoc takes rect whichRect, location min, location max returns nothing +native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing +native MoveRectToLoc takes rect whichRect, location newCenterLoc returns nothing + +native GetRectCenterX takes rect whichRect returns real +native GetRectCenterY takes rect whichRect returns real +native GetRectMinX takes rect whichRect returns real +native GetRectMinY takes rect whichRect returns real +native GetRectMaxX takes rect whichRect returns real +native GetRectMaxY takes rect whichRect returns real + +native CreateRegion takes nothing returns region +native RemoveRegion takes region whichRegion returns nothing + +native RegionAddRect takes region whichRegion, rect r returns nothing +native RegionClearRect takes region whichRegion, rect r returns nothing + +native RegionAddCell takes region whichRegion, real x, real y returns nothing +native RegionAddCellAtLoc takes region whichRegion, location whichLocation returns nothing +native RegionClearCell takes region whichRegion, real x, real y returns nothing +native RegionClearCellAtLoc takes region whichRegion, location whichLocation returns nothing + +native Location takes real x, real y returns location +native RemoveLocation takes location whichLocation returns nothing +native MoveLocation takes location whichLocation, real newX, real newY returns nothing +native GetLocationX takes location whichLocation returns real +native GetLocationY takes location whichLocation returns real + +// This function is asynchronous. The values it returns are not guaranteed synchronous between each player. +// If you attempt to use it in a synchronous manner, it may cause a desync. +native GetLocationZ takes location whichLocation returns real + +native IsUnitInRegion takes region whichRegion, unit whichUnit returns boolean +native IsPointInRegion takes region whichRegion, real x, real y returns boolean +native IsLocationInRegion takes region whichRegion, location whichLocation returns boolean + +// Returns full map bounds, including unplayable borders, in world coordinates +native GetWorldBounds takes nothing returns rect + +//============================================================================ +// Native trigger interface +// +native CreateTrigger takes nothing returns trigger +native DestroyTrigger takes trigger whichTrigger returns nothing +native ResetTrigger takes trigger whichTrigger returns nothing +native EnableTrigger takes trigger whichTrigger returns nothing +native DisableTrigger takes trigger whichTrigger returns nothing +native IsTriggerEnabled takes trigger whichTrigger returns boolean + +native TriggerWaitOnSleeps takes trigger whichTrigger, boolean flag returns nothing +native IsTriggerWaitOnSleeps takes trigger whichTrigger returns boolean + +constant native GetFilterUnit takes nothing returns unit +constant native GetEnumUnit takes nothing returns unit + +constant native GetFilterDestructable takes nothing returns destructable +constant native GetEnumDestructable takes nothing returns destructable + +constant native GetFilterItem takes nothing returns item +constant native GetEnumItem takes nothing returns item + +constant native GetFilterPlayer takes nothing returns player +constant native GetEnumPlayer takes nothing returns player + +constant native GetTriggeringTrigger takes nothing returns trigger +constant native GetTriggerEventId takes nothing returns eventid +constant native GetTriggerEvalCount takes trigger whichTrigger returns integer +constant native GetTriggerExecCount takes trigger whichTrigger returns integer + +native ExecuteFunc takes string funcName returns nothing + +//============================================================================ +// Boolean Expr API ( for compositing trigger conditions and unit filter funcs...) +//============================================================================ +native And takes boolexpr operandA, boolexpr operandB returns boolexpr +native Or takes boolexpr operandA, boolexpr operandB returns boolexpr +native Not takes boolexpr operand returns boolexpr +native Condition takes code func returns conditionfunc +native DestroyCondition takes conditionfunc c returns nothing +native Filter takes code func returns filterfunc +native DestroyFilter takes filterfunc f returns nothing +native DestroyBoolExpr takes boolexpr e returns nothing + +//============================================================================ +// Trigger Game Event API +//============================================================================ + +native TriggerRegisterVariableEvent takes trigger whichTrigger, string varName, limitop opcode, real limitval returns event + + // EVENT_GAME_VARIABLE_LIMIT + //constant native string GetTriggeringVariableName takes nothing returns string + +// Creates it's own timer and triggers when it expires +native TriggerRegisterTimerEvent takes trigger whichTrigger, real timeout, boolean periodic returns event + +// Triggers when the timer you tell it about expires +native TriggerRegisterTimerExpireEvent takes trigger whichTrigger, timer t returns event + +native TriggerRegisterGameStateEvent takes trigger whichTrigger, gamestate whichState, limitop opcode, real limitval returns event + +native TriggerRegisterDialogEvent takes trigger whichTrigger, dialog whichDialog returns event +native TriggerRegisterDialogButtonEvent takes trigger whichTrigger, button whichButton returns event + +// EVENT_GAME_STATE_LIMIT +constant native GetEventGameState takes nothing returns gamestate + +native TriggerRegisterGameEvent takes trigger whichTrigger, gameevent whichGameEvent returns event + +// EVENT_GAME_VICTORY +constant native GetWinningPlayer takes nothing returns player + + +native TriggerRegisterEnterRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event + +// EVENT_GAME_ENTER_REGION +constant native GetTriggeringRegion takes nothing returns region +constant native GetEnteringUnit takes nothing returns unit + +// EVENT_GAME_LEAVE_REGION + +native TriggerRegisterLeaveRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event +constant native GetLeavingUnit takes nothing returns unit + +native TriggerRegisterTrackableHitEvent takes trigger whichTrigger, trackable t returns event +native TriggerRegisterTrackableTrackEvent takes trigger whichTrigger, trackable t returns event + +// EVENT_GAME_TRACKABLE_HIT +// EVENT_GAME_TRACKABLE_TRACK +constant native GetTriggeringTrackable takes nothing returns trackable + +// EVENT_DIALOG_BUTTON_CLICK +constant native GetClickedButton takes nothing returns button +constant native GetClickedDialog takes nothing returns dialog + +// EVENT_GAME_TOURNAMENT_FINISH_SOON +constant native GetTournamentFinishSoonTimeRemaining takes nothing returns real +constant native GetTournamentFinishNowRule takes nothing returns integer +constant native GetTournamentFinishNowPlayer takes nothing returns player +constant native GetTournamentScore takes player whichPlayer returns integer + +// EVENT_GAME_SAVE +constant native GetSaveBasicFilename takes nothing returns string + +//============================================================================ +// Trigger Player Based Event API +//============================================================================ + +native TriggerRegisterPlayerEvent takes trigger whichTrigger, player whichPlayer, playerevent whichPlayerEvent returns event + +// EVENT_PLAYER_DEFEAT +// EVENT_PLAYER_VICTORY +constant native GetTriggerPlayer takes nothing returns player + +native TriggerRegisterPlayerUnitEvent takes trigger whichTrigger, player whichPlayer, playerunitevent whichPlayerUnitEvent, boolexpr filter returns event + +// EVENT_PLAYER_HERO_LEVEL +// EVENT_UNIT_HERO_LEVEL +constant native GetLevelingUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_SKILL +// EVENT_UNIT_HERO_SKILL +constant native GetLearningUnit takes nothing returns unit +constant native GetLearnedSkill takes nothing returns integer +constant native GetLearnedSkillLevel takes nothing returns integer + +// EVENT_PLAYER_HERO_REVIVABLE +constant native GetRevivableUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_REVIVE_START +// EVENT_PLAYER_HERO_REVIVE_CANCEL +// EVENT_PLAYER_HERO_REVIVE_FINISH +// EVENT_UNIT_HERO_REVIVE_START +// EVENT_UNIT_HERO_REVIVE_CANCEL +// EVENT_UNIT_HERO_REVIVE_FINISH +constant native GetRevivingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_ATTACKED +constant native GetAttacker takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESCUED +constant native GetRescuer takes nothing returns unit + +// EVENT_PLAYER_UNIT_DEATH +constant native GetDyingUnit takes nothing returns unit +constant native GetKillingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DECAY +constant native GetDecayingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELECTED +//constant native GetSelectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_START +constant native GetConstructingStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_FINISH +// EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL +constant native GetCancelledStructure takes nothing returns unit +constant native GetConstructedStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESEARCH_START +// EVENT_PLAYER_UNIT_RESEARCH_CANCEL +// EVENT_PLAYER_UNIT_RESEARCH_FINISH +constant native GetResearchingUnit takes nothing returns unit +constant native GetResearched takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_START +// EVENT_PLAYER_UNIT_TRAIN_CANCEL +constant native GetTrainedUnitType takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_FINISH +constant native GetTrainedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DETECTED +constant native GetDetectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SUMMONED +constant native GetSummoningUnit takes nothing returns unit +constant native GetSummonedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_LOADED +constant native GetTransportUnit takes nothing returns unit +constant native GetLoadedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL +constant native GetSellingUnit takes nothing returns unit +constant native GetSoldUnit takes nothing returns unit +constant native GetBuyingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL_ITEM +constant native GetSoldItem takes nothing returns item + +// EVENT_PLAYER_UNIT_CHANGE_OWNER +constant native GetChangingUnit takes nothing returns unit +constant native GetChangingUnitPrevOwner takes nothing returns player + +// EVENT_PLAYER_UNIT_DROP_ITEM +// EVENT_PLAYER_UNIT_PICKUP_ITEM +// EVENT_PLAYER_UNIT_USE_ITEM +constant native GetManipulatingUnit takes nothing returns unit +constant native GetManipulatedItem takes nothing returns item + +// EVENT_PLAYER_UNIT_ISSUED_ORDER +constant native GetOrderedUnit takes nothing returns unit +constant native GetIssuedOrderId takes nothing returns integer + +// EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER +constant native GetOrderPointX takes nothing returns real +constant native GetOrderPointY takes nothing returns real +constant native GetOrderPointLoc takes nothing returns location + +// EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER +constant native GetOrderTarget takes nothing returns widget +constant native GetOrderTargetDestructable takes nothing returns destructable +constant native GetOrderTargetItem takes nothing returns item +constant native GetOrderTargetUnit takes nothing returns unit + +// EVENT_UNIT_SPELL_CHANNEL +// EVENT_UNIT_SPELL_CAST +// EVENT_UNIT_SPELL_EFFECT +// EVENT_UNIT_SPELL_FINISH +// EVENT_UNIT_SPELL_ENDCAST +// EVENT_PLAYER_UNIT_SPELL_CHANNEL +// EVENT_PLAYER_UNIT_SPELL_CAST +// EVENT_PLAYER_UNIT_SPELL_EFFECT +// EVENT_PLAYER_UNIT_SPELL_FINISH +// EVENT_PLAYER_UNIT_SPELL_ENDCAST +constant native GetSpellAbilityUnit takes nothing returns unit +constant native GetSpellAbilityId takes nothing returns integer +constant native GetSpellAbility takes nothing returns ability +constant native GetSpellTargetLoc takes nothing returns location +constant native GetSpellTargetDestructable takes nothing returns destructable +constant native GetSpellTargetItem takes nothing returns item +constant native GetSpellTargetUnit takes nothing returns unit + +native TriggerRegisterPlayerAllianceChange takes trigger whichTrigger, player whichPlayer, alliancetype whichAlliance returns event +native TriggerRegisterPlayerStateEvent takes trigger whichTrigger, player whichPlayer, playerstate whichState, limitop opcode, real limitval returns event + +// EVENT_PLAYER_STATE_LIMIT +constant native GetEventPlayerState takes nothing returns playerstate + +native TriggerRegisterPlayerChatEvent takes trigger whichTrigger, player whichPlayer, string chatMessageToDetect, boolean exactMatchOnly returns event + +// EVENT_PLAYER_CHAT + +// returns the actual string they typed in ( same as what you registered for +// if you required exact match ) +constant native GetEventPlayerChatString takes nothing returns string + +// returns the string that you registered for +constant native GetEventPlayerChatStringMatched takes nothing returns string + +native TriggerRegisterDeathEvent takes trigger whichTrigger, widget whichWidget returns event + +//============================================================================ +// Trigger Unit Based Event API +//============================================================================ + +// returns handle to unit which triggered the most recent event when called from +// within a trigger action function...returns null handle when used incorrectly + +constant native GetTriggerUnit takes nothing returns unit + +native TriggerRegisterUnitStateEvent takes trigger whichTrigger, unit whichUnit, unitstate whichState, limitop opcode, real limitval returns event + +// EVENT_UNIT_STATE_LIMIT +constant native GetEventUnitState takes nothing returns unitstate + +native TriggerRegisterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent returns event + +// EVENT_UNIT_DAMAGED +constant native GetEventDamage takes nothing returns real +constant native GetEventDamageSource takes nothing returns unit + +// EVENT_UNIT_DEATH +// EVENT_UNIT_DECAY +// Use the GetDyingUnit and GetDecayingUnit funcs above + +// EVENT_UNIT_DETECTED +constant native GetEventDetectingPlayer takes nothing returns player + +native TriggerRegisterFilterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent, boolexpr filter returns event + +// EVENT_UNIT_ACQUIRED_TARGET +// EVENT_UNIT_TARGET_IN_RANGE +constant native GetEventTargetUnit takes nothing returns unit + +// EVENT_UNIT_ATTACKED +// Use GetAttacker from the Player Unit Event API Below... + +// EVENT_UNIT_RESCUEDED +// Use GetRescuer from the Player Unit Event API Below... + +// EVENT_UNIT_CONSTRUCT_CANCEL +// EVENT_UNIT_CONSTRUCT_FINISH + +// See the Player Unit Construction Event API above for event info funcs + +// EVENT_UNIT_TRAIN_START +// EVENT_UNIT_TRAIN_CANCELLED +// EVENT_UNIT_TRAIN_FINISH + +// See the Player Unit Training Event API above for event info funcs + +// EVENT_UNIT_SELL + +// See the Player Unit Sell Event API above for event info funcs + +// EVENT_UNIT_DROP_ITEM +// EVENT_UNIT_PICKUP_ITEM +// EVENT_UNIT_USE_ITEM +// See the Player Unit/Item manipulation Event API above for event info funcs + +// EVENT_UNIT_ISSUED_ORDER +// EVENT_UNIT_ISSUED_POINT_ORDER +// EVENT_UNIT_ISSUED_TARGET_ORDER + +// See the Player Unit Order Event API above for event info funcs + +native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event + +native TriggerAddCondition takes trigger whichTrigger, boolexpr condition returns triggercondition +native TriggerRemoveCondition takes trigger whichTrigger, triggercondition whichCondition returns nothing +native TriggerClearConditions takes trigger whichTrigger returns nothing + +native TriggerAddAction takes trigger whichTrigger, code actionFunc returns triggeraction +native TriggerRemoveAction takes trigger whichTrigger, triggeraction whichAction returns nothing +native TriggerClearActions takes trigger whichTrigger returns nothing +native TriggerSleepAction takes real timeout returns nothing +native TriggerWaitForSound takes sound s, real offset returns nothing +native TriggerEvaluate takes trigger whichTrigger returns boolean +native TriggerExecute takes trigger whichTrigger returns nothing +native TriggerExecuteWait takes trigger whichTrigger returns nothing +native TriggerSyncStart takes nothing returns nothing +native TriggerSyncReady takes nothing returns nothing + +//============================================================================ +// Widget API +native GetWidgetLife takes widget whichWidget returns real +native SetWidgetLife takes widget whichWidget, real newLife returns nothing +native GetWidgetX takes widget whichWidget returns real +native GetWidgetY takes widget whichWidget returns real +constant native GetTriggerWidget takes nothing returns widget + +//============================================================================ +// Destructable Object API +// Facing arguments are specified in degrees +native CreateDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native CreateDeadDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDeadDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native RemoveDestructable takes destructable d returns nothing +native KillDestructable takes destructable d returns nothing +native SetDestructableInvulnerable takes destructable d, boolean flag returns nothing +native IsDestructableInvulnerable takes destructable d returns boolean +native EnumDestructablesInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetDestructableTypeId takes destructable d returns integer +native GetDestructableX takes destructable d returns real +native GetDestructableY takes destructable d returns real +native SetDestructableLife takes destructable d, real life returns nothing +native GetDestructableLife takes destructable d returns real +native SetDestructableMaxLife takes destructable d, real max returns nothing +native GetDestructableMaxLife takes destructable d returns real +native DestructableRestoreLife takes destructable d, real life, boolean birth returns nothing +native QueueDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimationSpeed takes destructable d, real speedFactor returns nothing +native ShowDestructable takes destructable d, boolean flag returns nothing +native GetDestructableOccluderHeight takes destructable d returns real +native SetDestructableOccluderHeight takes destructable d, real height returns nothing +native GetDestructableName takes destructable d returns string + +//============================================================================ +// Item API +native CreateItem takes integer itemid, real x, real y returns item +native RemoveItem takes item whichItem returns nothing +native GetItemPlayer takes item whichItem returns player +native GetItemTypeId takes item i returns integer +native GetItemX takes item i returns real +native GetItemY takes item i returns real +native SetItemPosition takes item i, real x, real y returns nothing +native SetItemDropOnDeath takes item whichItem, boolean flag returns nothing +native SetItemDroppable takes item i, boolean flag returns nothing +native SetItemPawnable takes item i, boolean flag returns nothing +native SetItemPlayer takes item whichItem, player whichPlayer, boolean changeColor returns nothing +native SetItemInvulnerable takes item whichItem, boolean flag returns nothing +native IsItemInvulnerable takes item whichItem returns boolean +native SetItemVisible takes item whichItem, boolean show returns nothing +native IsItemVisible takes item whichItem returns boolean +native IsItemOwned takes item whichItem returns boolean +native IsItemPowerup takes item whichItem returns boolean +native IsItemSellable takes item whichItem returns boolean +native IsItemPawnable takes item whichItem returns boolean +native IsItemIdPowerup takes integer itemId returns boolean +native IsItemIdSellable takes integer itemId returns boolean +native IsItemIdPawnable takes integer itemId returns boolean +native EnumItemsInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetItemLevel takes item whichItem returns integer +native GetItemType takes item whichItem returns itemtype +native SetItemDropID takes item whichItem, integer unitId returns nothing +constant native GetItemName takes item whichItem returns string +native GetItemCharges takes item whichItem returns integer +native SetItemCharges takes item whichItem, integer charges returns nothing +native GetItemUserData takes item whichItem returns integer +native SetItemUserData takes item whichItem, integer data returns nothing + +//============================================================================ +// Unit API +// Facing arguments are specified in degrees +native CreateUnit takes player id, integer unitid, real x, real y, real face returns unit +native CreateUnitByName takes player whichPlayer, string unitname, real x, real y, real face returns unit +native CreateUnitAtLoc takes player id, integer unitid, location whichLocation, real face returns unit +native CreateUnitAtLocByName takes player id, string unitname, location whichLocation, real face returns unit +native CreateCorpse takes player whichPlayer, integer unitid, real x, real y, real face returns unit + +native KillUnit takes unit whichUnit returns nothing +native RemoveUnit takes unit whichUnit returns nothing +native ShowUnit takes unit whichUnit, boolean show returns nothing + +native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing +native SetUnitX takes unit whichUnit, real newX returns nothing +native SetUnitY takes unit whichUnit, real newY returns nothing +native SetUnitPosition takes unit whichUnit, real newX, real newY returns nothing +native SetUnitPositionLoc takes unit whichUnit, location whichLocation returns nothing +native SetUnitFacing takes unit whichUnit, real facingAngle returns nothing +native SetUnitFacingTimed takes unit whichUnit, real facingAngle, real duration returns nothing +native SetUnitMoveSpeed takes unit whichUnit, real newSpeed returns nothing +native SetUnitFlyHeight takes unit whichUnit, real newHeight, real rate returns nothing +native SetUnitTurnSpeed takes unit whichUnit, real newTurnSpeed returns nothing +native SetUnitPropWindow takes unit whichUnit, real newPropWindowAngle returns nothing +native SetUnitAcquireRange takes unit whichUnit, real newAcquireRange returns nothing +native SetUnitCreepGuard takes unit whichUnit, boolean creepGuard returns nothing + +native GetUnitAcquireRange takes unit whichUnit returns real +native GetUnitTurnSpeed takes unit whichUnit returns real +native GetUnitPropWindow takes unit whichUnit returns real +native GetUnitFlyHeight takes unit whichUnit returns real + +native GetUnitDefaultAcquireRange takes unit whichUnit returns real +native GetUnitDefaultTurnSpeed takes unit whichUnit returns real +native GetUnitDefaultPropWindow takes unit whichUnit returns real +native GetUnitDefaultFlyHeight takes unit whichUnit returns real + +native SetUnitOwner takes unit whichUnit, player whichPlayer, boolean changeColor returns nothing +native SetUnitColor takes unit whichUnit, playercolor whichColor returns nothing + +native SetUnitScale takes unit whichUnit, real scaleX, real scaleY, real scaleZ returns nothing +native SetUnitTimeScale takes unit whichUnit, real timeScale returns nothing +native SetUnitBlendTime takes unit whichUnit, real blendTime returns nothing +native SetUnitVertexColor takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing + +native QueueUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing +native SetUnitAnimationWithRarity takes unit whichUnit, string whichAnimation, raritycontrol rarity returns nothing +native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing + +native SetUnitLookAt takes unit whichUnit, string whichBone, unit lookAtTarget, real offsetX, real offsetY, real offsetZ returns nothing +native ResetUnitLookAt takes unit whichUnit returns nothing + +native SetUnitRescuable takes unit whichUnit, player byWhichPlayer, boolean flag returns nothing +native SetUnitRescueRange takes unit whichUnit, real range returns nothing + +native SetHeroStr takes unit whichHero, integer newStr, boolean permanent returns nothing +native SetHeroAgi takes unit whichHero, integer newAgi, boolean permanent returns nothing +native SetHeroInt takes unit whichHero, integer newInt, boolean permanent returns nothing + +native GetHeroStr takes unit whichHero, boolean includeBonuses returns integer +native GetHeroAgi takes unit whichHero, boolean includeBonuses returns integer +native GetHeroInt takes unit whichHero, boolean includeBonuses returns integer + +native UnitStripHeroLevel takes unit whichHero, integer howManyLevels returns boolean + +native GetHeroXP takes unit whichHero returns integer +native SetHeroXP takes unit whichHero, integer newXpVal, boolean showEyeCandy returns nothing + +native GetHeroSkillPoints takes unit whichHero returns integer +native UnitModifySkillPoints takes unit whichHero, integer skillPointDelta returns boolean + +native AddHeroXP takes unit whichHero, integer xpToAdd, boolean showEyeCandy returns nothing +native SetHeroLevel takes unit whichHero, integer level, boolean showEyeCandy returns nothing +constant native GetHeroLevel takes unit whichHero returns integer +constant native GetUnitLevel takes unit whichUnit returns integer +native GetHeroProperName takes unit whichHero returns string +native SuspendHeroXP takes unit whichHero, boolean flag returns nothing +native IsSuspendedXP takes unit whichHero returns boolean +native SelectHeroSkill takes unit whichHero, integer abilcode returns nothing +native GetUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native DecUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native IncUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native SetUnitAbilityLevel takes unit whichUnit, integer abilcode, integer level returns integer +native ReviveHero takes unit whichHero, real x, real y, boolean doEyecandy returns boolean +native ReviveHeroLoc takes unit whichHero, location loc, boolean doEyecandy returns boolean +native SetUnitExploded takes unit whichUnit, boolean exploded returns nothing +native SetUnitInvulnerable takes unit whichUnit, boolean flag returns nothing +native PauseUnit takes unit whichUnit, boolean flag returns nothing +native IsUnitPaused takes unit whichHero returns boolean +native SetUnitPathing takes unit whichUnit, boolean flag returns nothing + +native ClearSelection takes nothing returns nothing +native SelectUnit takes unit whichUnit, boolean flag returns nothing + +native GetUnitPointValue takes unit whichUnit returns integer +native GetUnitPointValueByType takes integer unitType returns integer +//native SetUnitPointValueByType takes integer unitType, integer newPointValue returns nothing + +native UnitAddItem takes unit whichUnit, item whichItem returns boolean +native UnitAddItemById takes unit whichUnit, integer itemId returns item +native UnitAddItemToSlotById takes unit whichUnit, integer itemId, integer itemSlot returns boolean +native UnitRemoveItem takes unit whichUnit, item whichItem returns nothing +native UnitRemoveItemFromSlot takes unit whichUnit, integer itemSlot returns item +native UnitHasItem takes unit whichUnit, item whichItem returns boolean +native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item +native UnitInventorySize takes unit whichUnit returns integer + +native UnitDropItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitDropItemSlot takes unit whichUnit, item whichItem, integer slot returns boolean +native UnitDropItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +native UnitUseItem takes unit whichUnit, item whichItem returns boolean +native UnitUseItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitUseItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +constant native GetUnitX takes unit whichUnit returns real +constant native GetUnitY takes unit whichUnit returns real +constant native GetUnitLoc takes unit whichUnit returns location +constant native GetUnitFacing takes unit whichUnit returns real +constant native GetUnitMoveSpeed takes unit whichUnit returns real +constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real +constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real +constant native GetOwningPlayer takes unit whichUnit returns player +constant native GetUnitTypeId takes unit whichUnit returns integer +constant native GetUnitRace takes unit whichUnit returns race +constant native GetUnitName takes unit whichUnit returns string +constant native GetUnitFoodUsed takes unit whichUnit returns integer +constant native GetUnitFoodMade takes unit whichUnit returns integer +constant native GetFoodMade takes integer unitId returns integer +constant native GetFoodUsed takes integer unitId returns integer +native SetUnitUseFood takes unit whichUnit, boolean useFood returns nothing + +constant native GetUnitRallyPoint takes unit whichUnit returns location +constant native GetUnitRallyUnit takes unit whichUnit returns unit +constant native GetUnitRallyDestructable takes unit whichUnit returns destructable + +constant native IsUnitInGroup takes unit whichUnit, group whichGroup returns boolean +constant native IsUnitInForce takes unit whichUnit, force whichForce returns boolean +constant native IsUnitOwnedByPlayer takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitEnemy takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitVisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitDetected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitInvisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitFogged takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitMasked takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitSelected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitRace takes unit whichUnit, race whichRace returns boolean +constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean +constant native IsUnit takes unit whichUnit, unit whichSpecifiedUnit returns boolean +constant native IsUnitInRange takes unit whichUnit, unit otherUnit, real distance returns boolean +constant native IsUnitInRangeXY takes unit whichUnit, real x, real y, real distance returns boolean +constant native IsUnitInRangeLoc takes unit whichUnit, location whichLocation, real distance returns boolean +constant native IsUnitHidden takes unit whichUnit returns boolean +constant native IsUnitIllusion takes unit whichUnit returns boolean + +constant native IsUnitInTransport takes unit whichUnit, unit whichTransport returns boolean +constant native IsUnitLoaded takes unit whichUnit returns boolean + +constant native IsHeroUnitId takes integer unitId returns boolean +constant native IsUnitIdType takes integer unitId, unittype whichUnitType returns boolean + +native UnitShareVision takes unit whichUnit, player whichPlayer, boolean share returns nothing +native UnitSuspendDecay takes unit whichUnit, boolean suspend returns nothing +native UnitAddType takes unit whichUnit, unittype whichUnitType returns boolean +native UnitRemoveType takes unit whichUnit, unittype whichUnitType returns boolean + +native UnitAddAbility takes unit whichUnit, integer abilityId returns boolean +native UnitRemoveAbility takes unit whichUnit, integer abilityId returns boolean +native UnitMakeAbilityPermanent takes unit whichUnit, boolean permanent, integer abilityId returns boolean +native UnitRemoveBuffs takes unit whichUnit, boolean removePositive, boolean removeNegative returns nothing +native UnitRemoveBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns nothing +native UnitHasBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean +native UnitCountBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns integer +native UnitAddSleep takes unit whichUnit, boolean add returns nothing +native UnitCanSleep takes unit whichUnit returns boolean +native UnitAddSleepPerm takes unit whichUnit, boolean add returns nothing +native UnitCanSleepPerm takes unit whichUnit returns boolean +native UnitIsSleeping takes unit whichUnit returns boolean +native UnitWakeUp takes unit whichUnit returns nothing +native UnitApplyTimedLife takes unit whichUnit, integer buffId, real duration returns nothing +native UnitIgnoreAlarm takes unit whichUnit, boolean flag returns boolean +native UnitIgnoreAlarmToggled takes unit whichUnit returns boolean +native UnitResetCooldown takes unit whichUnit returns nothing +native UnitSetConstructionProgress takes unit whichUnit, integer constructionPercentage returns nothing +native UnitSetUpgradeProgress takes unit whichUnit, integer upgradePercentage returns nothing +native UnitPauseTimedLife takes unit whichUnit, boolean flag returns nothing +native UnitSetUsesAltIcon takes unit whichUnit, boolean flag returns nothing + +native UnitDamagePoint takes unit whichUnit, real delay, real radius, real x, real y, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean +native UnitDamageTarget takes unit whichUnit, widget target, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean + +native IssueImmediateOrder takes unit whichUnit, string order returns boolean +native IssueImmediateOrderById takes unit whichUnit, integer order returns boolean +native IssuePointOrder takes unit whichUnit, string order, real x, real y returns boolean +native IssuePointOrderLoc takes unit whichUnit, string order, location whichLocation returns boolean +native IssuePointOrderById takes unit whichUnit, integer order, real x, real y returns boolean +native IssuePointOrderByIdLoc takes unit whichUnit, integer order, location whichLocation returns boolean +native IssueTargetOrder takes unit whichUnit, string order, widget targetWidget returns boolean +native IssueTargetOrderById takes unit whichUnit, integer order, widget targetWidget returns boolean +native IssueInstantPointOrder takes unit whichUnit, string order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantPointOrderById takes unit whichUnit, integer order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantTargetOrder takes unit whichUnit, string order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueInstantTargetOrderById takes unit whichUnit, integer order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueBuildOrder takes unit whichPeon, string unitToBuild, real x, real y returns boolean +native IssueBuildOrderById takes unit whichPeon, integer unitId, real x, real y returns boolean + +native IssueNeutralImmediateOrder takes player forWhichPlayer, unit neutralStructure, string unitToBuild returns boolean +native IssueNeutralImmediateOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId returns boolean +native IssueNeutralPointOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, real x, real y returns boolean +native IssueNeutralPointOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, real x, real y returns boolean +native IssueNeutralTargetOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, widget target returns boolean +native IssueNeutralTargetOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, widget target returns boolean + +native GetUnitCurrentOrder takes unit whichUnit returns integer + +native SetResourceAmount takes unit whichUnit, integer amount returns nothing +native AddResourceAmount takes unit whichUnit, integer amount returns nothing +native GetResourceAmount takes unit whichUnit returns integer + +native WaygateGetDestinationX takes unit waygate returns real +native WaygateGetDestinationY takes unit waygate returns real +native WaygateSetDestination takes unit waygate, real x, real y returns nothing +native WaygateActivate takes unit waygate, boolean activate returns nothing +native WaygateIsActive takes unit waygate returns boolean + +native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing +native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing +native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing +native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing + +native RemoveItemFromAllStock takes integer itemId returns nothing +native RemoveItemFromStock takes unit whichUnit, integer itemId returns nothing +native RemoveUnitFromAllStock takes integer unitId returns nothing +native RemoveUnitFromStock takes unit whichUnit, integer unitId returns nothing + +native SetAllItemTypeSlots takes integer slots returns nothing +native SetAllUnitTypeSlots takes integer slots returns nothing +native SetItemTypeSlots takes unit whichUnit, integer slots returns nothing +native SetUnitTypeSlots takes unit whichUnit, integer slots returns nothing + +native GetUnitUserData takes unit whichUnit returns integer +native SetUnitUserData takes unit whichUnit, integer data returns nothing + +//============================================================================ +// Player API +constant native Player takes integer number returns player +constant native GetLocalPlayer takes nothing returns player +constant native IsPlayerAlly takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerEnemy takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerInForce takes player whichPlayer, force whichForce returns boolean +constant native IsPlayerObserver takes player whichPlayer returns boolean +constant native IsVisibleToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationVisibleToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsFoggedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationFoggedToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsMaskedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationMaskedToPlayer takes location whichLocation, player whichPlayer returns boolean + +constant native GetPlayerRace takes player whichPlayer returns race +constant native GetPlayerId takes player whichPlayer returns integer +constant native GetPlayerUnitCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerTypedUnitCount takes player whichPlayer, string unitName, boolean includeIncomplete, boolean includeUpgrades returns integer +constant native GetPlayerStructureCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerState takes player whichPlayer, playerstate whichPlayerState returns integer +constant native GetPlayerScore takes player whichPlayer, playerscore whichPlayerScore returns integer +constant native GetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting returns boolean + +constant native GetPlayerHandicap takes player whichPlayer returns real +constant native GetPlayerHandicapXP takes player whichPlayer returns real +constant native SetPlayerHandicap takes player whichPlayer, real handicap returns nothing +constant native SetPlayerHandicapXP takes player whichPlayer, real handicap returns nothing + +constant native SetPlayerTechMaxAllowed takes player whichPlayer, integer techid, integer maximum returns nothing +constant native GetPlayerTechMaxAllowed takes player whichPlayer, integer techid returns integer +constant native AddPlayerTechResearched takes player whichPlayer, integer techid, integer levels returns nothing +constant native SetPlayerTechResearched takes player whichPlayer, integer techid, integer setToLevel returns nothing +constant native GetPlayerTechResearched takes player whichPlayer, integer techid, boolean specificonly returns boolean +constant native GetPlayerTechCount takes player whichPlayer, integer techid, boolean specificonly returns integer + +native SetPlayerUnitsOwner takes player whichPlayer, integer newOwner returns nothing +native CripplePlayer takes player whichPlayer, force toWhichPlayers, boolean flag returns nothing + +native SetPlayerAbilityAvailable takes player whichPlayer, integer abilid, boolean avail returns nothing + +native SetPlayerState takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing +native RemovePlayer takes player whichPlayer, playergameresult gameResult returns nothing + +// Used to store hero level data for the scorescreen +// before units are moved to neutral passive in melee games +// +native CachePlayerHeroData takes player whichPlayer returns nothing + +//============================================================================ +// Fog of War API +native SetFogStateRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision returns nothing +native SetFogStateRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision returns nothing +native SetFogStateRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision returns nothing +native FogMaskEnable takes boolean enable returns nothing +native IsFogMaskEnabled takes nothing returns boolean +native FogEnable takes boolean enable returns nothing +native IsFogEnabled takes nothing returns boolean + +native CreateFogModifierRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native DestroyFogModifier takes fogmodifier whichFogModifier returns nothing +native FogModifierStart takes fogmodifier whichFogModifier returns nothing +native FogModifierStop takes fogmodifier whichFogModifier returns nothing + +//============================================================================ +// Game API +native VersionGet takes nothing returns version +native VersionCompatible takes version whichVersion returns boolean +native VersionSupported takes version whichVersion returns boolean + +native EndGame takes boolean doScoreScreen returns nothing + +// Async only! +native ChangeLevel takes string newLevel, boolean doScoreScreen returns nothing +native RestartGame takes boolean doScoreScreen returns nothing +native ReloadGame takes nothing returns nothing +// %%% SetCampaignMenuRace is deprecated. It must remain to support +// old maps which use it, but all new maps should use SetCampaignMenuRaceEx +native SetCampaignMenuRace takes race r returns nothing +native SetCampaignMenuRaceEx takes integer campaignIndex returns nothing +native ForceCampaignSelectScreen takes nothing returns nothing + +native LoadGame takes string saveFileName, boolean doScoreScreen returns nothing +native SaveGame takes string saveFileName returns nothing +native RenameSaveDirectory takes string sourceDirName, string destDirName returns boolean +native RemoveSaveDirectory takes string sourceDirName returns boolean +native CopySaveGame takes string sourceSaveName, string destSaveName returns boolean +native SaveGameExists takes string saveName returns boolean +native SyncSelections takes nothing returns nothing +native SetFloatGameState takes fgamestate whichFloatGameState, real value returns nothing +constant native GetFloatGameState takes fgamestate whichFloatGameState returns real +native SetIntegerGameState takes igamestate whichIntegerGameState, integer value returns nothing +constant native GetIntegerGameState takes igamestate whichIntegerGameState returns integer + + +//============================================================================ +// Campaign API +native SetTutorialCleared takes boolean cleared returns nothing +native SetMissionAvailable takes integer campaignNumber, integer missionNumber, boolean available returns nothing +native SetCampaignAvailable takes integer campaignNumber, boolean available returns nothing +native SetOpCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native SetEdCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native GetDefaultDifficulty takes nothing returns gamedifficulty +native SetDefaultDifficulty takes gamedifficulty g returns nothing +native SetCustomCampaignButtonVisible takes integer whichButton, boolean visible returns nothing +native GetCustomCampaignButtonVisible takes integer whichButton returns boolean +native DoNotSaveReplay takes nothing returns nothing + +//============================================================================ +// Dialog API +native DialogCreate takes nothing returns dialog +native DialogDestroy takes dialog whichDialog returns nothing +native DialogClear takes dialog whichDialog returns nothing +native DialogSetMessage takes dialog whichDialog, string messageText returns nothing +native DialogAddButton takes dialog whichDialog, string buttonText, integer hotkey returns button +native DialogAddQuitButton takes dialog whichDialog, boolean doScoreScreen, string buttonText, integer hotkey returns button +native DialogDisplay takes player whichPlayer, dialog whichDialog, boolean flag returns nothing + +// Creates a new or reads in an existing game cache file stored +// in the current campaign profile dir +// +native ReloadGameCachesFromDisk takes nothing returns boolean + +native InitGameCache takes string campaignFile returns gamecache +native SaveGameCache takes gamecache whichCache returns boolean + +native StoreInteger takes gamecache cache, string missionKey, string key, integer value returns nothing +native StoreReal takes gamecache cache, string missionKey, string key, real value returns nothing +native StoreBoolean takes gamecache cache, string missionKey, string key, boolean value returns nothing +native StoreUnit takes gamecache cache, string missionKey, string key, unit whichUnit returns boolean +native StoreString takes gamecache cache, string missionKey, string key, string value returns boolean + +native SyncStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredReal takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredString takes gamecache cache, string missionKey, string key returns nothing + +// Will return 0 if the specified value's data is not found in the cache +native GetStoredInteger takes gamecache cache, string missionKey, string key returns integer +native GetStoredReal takes gamecache cache, string missionKey, string key returns real +native GetStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native GetStoredString takes gamecache cache, string missionKey, string key returns string +native RestoreUnit takes gamecache cache, string missionKey, string key, player forWhichPlayer, real x, real y, real facing returns unit + +native HaveStoredInteger takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredReal takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredUnit takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredString takes gamecache cache, string missionKey, string key returns boolean + +native FlushGameCache takes gamecache cache returns nothing +native FlushStoredMission takes gamecache cache, string missionKey returns nothing +native FlushStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredReal takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredString takes gamecache cache, string missionKey, string key returns nothing + +//============================================================================ +// Randomization API +native GetRandomInt takes integer lowBound, integer highBound returns integer +native GetRandomReal takes real lowBound, real highBound returns real + +native CreateUnitPool takes nothing returns unitpool +native DestroyUnitPool takes unitpool whichPool returns nothing +native UnitPoolAddUnitType takes unitpool whichPool, integer unitId, real weight returns nothing +native UnitPoolRemoveUnitType takes unitpool whichPool, integer unitId returns nothing +native PlaceRandomUnit takes unitpool whichPool, player forWhichPlayer, real x, real y, real facing returns unit + +native CreateItemPool takes nothing returns itempool +native DestroyItemPool takes itempool whichItemPool returns nothing +native ItemPoolAddItemType takes itempool whichItemPool, integer itemId, real weight returns nothing +native ItemPoolRemoveItemType takes itempool whichItemPool, integer itemId returns nothing +native PlaceRandomItem takes itempool whichItemPool, real x, real y returns item + +// Choose any random unit/item. (NP means Neutral Passive) +native ChooseRandomCreep takes integer level returns integer +native ChooseRandomNPBuilding takes nothing returns integer +native ChooseRandomItem takes integer level returns integer +native ChooseRandomItemEx takes itemtype whichType, integer level returns integer +native SetRandomSeed takes integer seed returns nothing + +//============================================================================ +// Visual API +native SetTerrainFog takes real a, real b, real c, real d, real e returns nothing +native ResetTerrainFog takes nothing returns nothing + +native SetUnitFog takes real a, real b, real c, real d, real e returns nothing +native SetTerrainFogEx takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing +native DisplayTextToPlayer takes player toPlayer, real x, real y, string message returns nothing +native DisplayTimedTextToPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native DisplayTimedTextFromPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native ClearTextMessages takes nothing returns nothing +native SetDayNightModels takes string terrainDNCFile, string unitDNCFile returns nothing +native SetSkyModel takes string skyModelFile returns nothing +native EnableUserControl takes boolean b returns nothing +native EnableUserUI takes boolean b returns nothing +native SuspendTimeOfDay takes boolean b returns nothing +native SetTimeOfDayScale takes real r returns nothing +native GetTimeOfDayScale takes nothing returns real +native ShowInterface takes boolean flag, real fadeDuration returns nothing +native PauseGame takes boolean flag returns nothing +native UnitAddIndicator takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing +native AddIndicator takes widget whichWidget, integer red, integer green, integer blue, integer alpha returns nothing +native PingMinimap takes real x, real y, real duration returns nothing +native PingMinimapEx takes real x, real y, real duration, integer red, integer green, integer blue, boolean extraEffects returns nothing +native EnableOcclusion takes boolean flag returns nothing +native SetIntroShotText takes string introText returns nothing +native SetIntroShotModel takes string introModelPath returns nothing +native EnableWorldFogBoundary takes boolean b returns nothing +native PlayModelCinematic takes string modelName returns nothing +native PlayCinematic takes string movieName returns nothing +native ForceUIKey takes string key returns nothing +native ForceUICancel takes nothing returns nothing +native DisplayLoadDialog takes nothing returns nothing +native SetAltMinimapIcon takes string iconPath returns nothing +native DisableRestartMission takes boolean flag returns nothing + +native CreateTextTag takes nothing returns texttag +native DestroyTextTag takes texttag t returns nothing +native SetTextTagText takes texttag t, string s, real height returns nothing +native SetTextTagPos takes texttag t, real x, real y, real heightOffset returns nothing +native SetTextTagPosUnit takes texttag t, unit whichUnit, real heightOffset returns nothing +native SetTextTagColor takes texttag t, integer red, integer green, integer blue, integer alpha returns nothing +native SetTextTagVelocity takes texttag t, real xvel, real yvel returns nothing +native SetTextTagVisibility takes texttag t, boolean flag returns nothing +native SetTextTagSuspended takes texttag t, boolean flag returns nothing +native SetTextTagPermanent takes texttag t, boolean flag returns nothing +native SetTextTagAge takes texttag t, real age returns nothing +native SetTextTagLifespan takes texttag t, real lifespan returns nothing +native SetTextTagFadepoint takes texttag t, real fadepoint returns nothing + +native SetReservedLocalHeroButtons takes integer reserved returns nothing +native GetAllyColorFilterState takes nothing returns integer +native SetAllyColorFilterState takes integer state returns nothing +native GetCreepCampFilterState takes nothing returns boolean +native SetCreepCampFilterState takes boolean state returns nothing +native EnableMinimapFilterButtons takes boolean enableAlly, boolean enableCreep returns nothing +native EnableDragSelect takes boolean state, boolean ui returns nothing +native EnablePreSelect takes boolean state, boolean ui returns nothing +native EnableSelect takes boolean state, boolean ui returns nothing + +//============================================================================ +// Trackable API +native CreateTrackable takes string trackableModelPath, real x, real y, real facing returns trackable + +//============================================================================ +// Quest API +native CreateQuest takes nothing returns quest +native DestroyQuest takes quest whichQuest returns nothing +native QuestSetTitle takes quest whichQuest, string title returns nothing +native QuestSetDescription takes quest whichQuest, string description returns nothing +native QuestSetIconPath takes quest whichQuest, string iconPath returns nothing + +native QuestSetRequired takes quest whichQuest, boolean required returns nothing +native QuestSetCompleted takes quest whichQuest, boolean completed returns nothing +native QuestSetDiscovered takes quest whichQuest, boolean discovered returns nothing +native QuestSetFailed takes quest whichQuest, boolean failed returns nothing +native QuestSetEnabled takes quest whichQuest, boolean enabled returns nothing + +native IsQuestRequired takes quest whichQuest returns boolean +native IsQuestCompleted takes quest whichQuest returns boolean +native IsQuestDiscovered takes quest whichQuest returns boolean +native IsQuestFailed takes quest whichQuest returns boolean +native IsQuestEnabled takes quest whichQuest returns boolean + +native QuestCreateItem takes quest whichQuest returns questitem +native QuestItemSetDescription takes questitem whichQuestItem, string description returns nothing +native QuestItemSetCompleted takes questitem whichQuestItem, boolean completed returns nothing + +native IsQuestItemCompleted takes questitem whichQuestItem returns boolean + +native CreateDefeatCondition takes nothing returns defeatcondition +native DestroyDefeatCondition takes defeatcondition whichCondition returns nothing +native DefeatConditionSetDescription takes defeatcondition whichCondition, string description returns nothing + +native FlashQuestDialogButton takes nothing returns nothing +native ForceQuestDialogUpdate takes nothing returns nothing + +//============================================================================ +// Timer Dialog API +native CreateTimerDialog takes timer t returns timerdialog +native DestroyTimerDialog takes timerdialog whichDialog returns nothing +native TimerDialogSetTitle takes timerdialog whichDialog, string title returns nothing +native TimerDialogSetTitleColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetTimeColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetSpeed takes timerdialog whichDialog, real speedMultFactor returns nothing +native TimerDialogDisplay takes timerdialog whichDialog, boolean display returns nothing +native IsTimerDialogDisplayed takes timerdialog whichDialog returns boolean +native TimerDialogSetRealTimeRemaining takes timerdialog whichDialog, real timeRemaining returns nothing + +//============================================================================ +// Leaderboard API + +// Create a leaderboard object +native CreateLeaderboard takes nothing returns leaderboard +native DestroyLeaderboard takes leaderboard lb returns nothing + +native LeaderboardDisplay takes leaderboard lb, boolean show returns nothing +native IsLeaderboardDisplayed takes leaderboard lb returns boolean + +native LeaderboardGetItemCount takes leaderboard lb returns integer + +native LeaderboardSetSizeByItemCount takes leaderboard lb, integer count returns nothing +native LeaderboardAddItem takes leaderboard lb, string label, integer value, player p returns nothing +native LeaderboardRemoveItem takes leaderboard lb, integer index returns nothing +native LeaderboardRemovePlayerItem takes leaderboard lb, player p returns nothing +native LeaderboardClear takes leaderboard lb returns nothing + +native LeaderboardSortItemsByValue takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByPlayer takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByLabel takes leaderboard lb, boolean ascending returns nothing + +native LeaderboardHasPlayerItem takes leaderboard lb, player p returns boolean +native LeaderboardGetPlayerIndex takes leaderboard lb, player p returns integer +native LeaderboardSetLabel takes leaderboard lb, string label returns nothing +native LeaderboardGetLabelText takes leaderboard lb returns string + +native PlayerSetLeaderboard takes player toPlayer, leaderboard lb returns nothing +native PlayerGetLeaderboard takes player toPlayer returns leaderboard + +native LeaderboardSetLabelColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetValueColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetStyle takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + +native LeaderboardSetItemValue takes leaderboard lb, integer whichItem, integer val returns nothing +native LeaderboardSetItemLabel takes leaderboard lb, integer whichItem, string val returns nothing +native LeaderboardSetItemStyle takes leaderboard lb, integer whichItem, boolean showLabel, boolean showValue, boolean showIcon returns nothing +native LeaderboardSetItemLabelColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetItemValueColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing + +//============================================================================ +// Multiboard API +//============================================================================ + +// Create a multiboard object +native CreateMultiboard takes nothing returns multiboard +native DestroyMultiboard takes multiboard lb returns nothing + +native MultiboardDisplay takes multiboard lb, boolean show returns nothing +native IsMultiboardDisplayed takes multiboard lb returns boolean + +native MultiboardMinimize takes multiboard lb, boolean minimize returns nothing +native IsMultiboardMinimized takes multiboard lb returns boolean +native MultiboardClear takes multiboard lb returns nothing + +native MultiboardSetTitleText takes multiboard lb, string label returns nothing +native MultiboardGetTitleText takes multiboard lb returns string +native MultiboardSetTitleTextColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing + +native MultiboardGetRowCount takes multiboard lb returns integer +native MultiboardGetColumnCount takes multiboard lb returns integer + +native MultiboardSetColumnCount takes multiboard lb, integer count returns nothing +native MultiboardSetRowCount takes multiboard lb, integer count returns nothing + +// broadcast settings to all items +native MultiboardSetItemsStyle takes multiboard lb, boolean showValues, boolean showIcons returns nothing +native MultiboardSetItemsValue takes multiboard lb, string value returns nothing +native MultiboardSetItemsValueColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemsWidth takes multiboard lb, real width returns nothing +native MultiboardSetItemsIcon takes multiboard lb, string iconPath returns nothing + + +// funcs for modifying individual items +native MultiboardGetItem takes multiboard lb, integer row, integer column returns multiboarditem +native MultiboardReleaseItem takes multiboarditem mbi returns nothing + +native MultiboardSetItemStyle takes multiboarditem mbi, boolean showValue, boolean showIcon returns nothing +native MultiboardSetItemValue takes multiboarditem mbi, string val returns nothing +native MultiboardSetItemValueColor takes multiboarditem mbi, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemWidth takes multiboarditem mbi, real width returns nothing +native MultiboardSetItemIcon takes multiboarditem mbi, string iconFileName returns nothing + +// meant to unequivocally suspend display of existing and +// subsequently displayed multiboards +// +native MultiboardSuppressDisplay takes boolean flag returns nothing + +//============================================================================ +// Camera API +native SetCameraPosition takes real x, real y returns nothing +native SetCameraQuickPosition takes real x, real y returns nothing +native SetCameraBounds takes real x1, real y1, real x2, real y2, real x3, real y3, real x4, real y4 returns nothing +native StopCamera takes nothing returns nothing +native ResetToGameCamera takes real duration returns nothing +native PanCameraTo takes real x, real y returns nothing +native PanCameraToTimed takes real x, real y, real duration returns nothing +native PanCameraToWithZ takes real x, real y, real zOffsetDest returns nothing +native PanCameraToTimedWithZ takes real x, real y, real zOffsetDest, real duration returns nothing +native SetCinematicCamera takes string cameraModelFile returns nothing +native SetCameraRotateMode takes real x, real y, real radiansToSweep, real duration returns nothing +native SetCameraField takes camerafield whichField, real value, real duration returns nothing +native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing +native SetCameraTargetController takes unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing +native SetCameraOrientController takes unit whichUnit, real xoffset, real yoffset returns nothing + +native CreateCameraSetup takes nothing returns camerasetup +native CameraSetupSetField takes camerasetup whichSetup, camerafield whichField, real value, real duration returns nothing +native CameraSetupGetField takes camerasetup whichSetup, camerafield whichField returns real +native CameraSetupSetDestPosition takes camerasetup whichSetup, real x, real y, real duration returns nothing +native CameraSetupGetDestPositionLoc takes camerasetup whichSetup returns location +native CameraSetupGetDestPositionX takes camerasetup whichSetup returns real +native CameraSetupGetDestPositionY takes camerasetup whichSetup returns real +native CameraSetupApply takes camerasetup whichSetup, boolean doPan, boolean panTimed returns nothing +native CameraSetupApplyWithZ takes camerasetup whichSetup, real zDestOffset returns nothing +native CameraSetupApplyForceDuration takes camerasetup whichSetup, boolean doPan, real forceDuration returns nothing +native CameraSetupApplyForceDurationWithZ takes camerasetup whichSetup, real zDestOffset, real forceDuration returns nothing + +native CameraSetTargetNoise takes real mag, real velocity returns nothing +native CameraSetSourceNoise takes real mag, real velocity returns nothing + +native CameraSetTargetNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing +native CameraSetSourceNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing + +native CameraSetSmoothingFactor takes real factor returns nothing + +native SetCineFilterTexture takes string filename returns nothing +native SetCineFilterBlendMode takes blendmode whichMode returns nothing +native SetCineFilterTexMapFlags takes texmapflags whichFlags returns nothing +native SetCineFilterStartUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterEndUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterStartColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterEndColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterDuration takes real duration returns nothing +native DisplayCineFilter takes boolean flag returns nothing +native IsCineFilterDisplayed takes nothing returns boolean + +native SetCinematicScene takes integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing +native EndCinematicScene takes nothing returns nothing +native ForceCinematicSubtitles takes boolean flag returns nothing + +native GetCameraMargin takes integer whichMargin returns real + +// These return values for the local players camera only... +constant native GetCameraBoundMinX takes nothing returns real +constant native GetCameraBoundMinY takes nothing returns real +constant native GetCameraBoundMaxX takes nothing returns real +constant native GetCameraBoundMaxY takes nothing returns real +constant native GetCameraField takes camerafield whichField returns real +constant native GetCameraTargetPositionX takes nothing returns real +constant native GetCameraTargetPositionY takes nothing returns real +constant native GetCameraTargetPositionZ takes nothing returns real +constant native GetCameraTargetPositionLoc takes nothing returns location +constant native GetCameraEyePositionX takes nothing returns real +constant native GetCameraEyePositionY takes nothing returns real +constant native GetCameraEyePositionZ takes nothing returns real +constant native GetCameraEyePositionLoc takes nothing returns location + +//============================================================================ +// Sound API +// +native NewSoundEnvironment takes string environmentName returns nothing + +native CreateSound takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string eaxSetting returns sound +native CreateSoundFilenameWithLabel takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string SLKEntryName returns sound +native CreateSoundFromLabel takes string soundLabel, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate returns sound +native CreateMIDISound takes string soundLabel, integer fadeInRate, integer fadeOutRate returns sound + +native SetSoundParamsFromLabel takes sound soundHandle, string soundLabel returns nothing +native SetSoundDistanceCutoff takes sound soundHandle, real cutoff returns nothing +native SetSoundChannel takes sound soundHandle, integer channel returns nothing +native SetSoundVolume takes sound soundHandle, integer volume returns nothing +native SetSoundPitch takes sound soundHandle, real pitch returns nothing + +// the following method must be called immediately after calling "StartSound" +native SetSoundPlayPosition takes sound soundHandle, integer millisecs returns nothing + +// these calls are only valid if the sound was created with 3d enabled +native SetSoundDistances takes sound soundHandle, real minDist, real maxDist returns nothing +native SetSoundConeAngles takes sound soundHandle, real inside, real outside, integer outsideVolume returns nothing +native SetSoundConeOrientation takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundPosition takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundVelocity takes sound soundHandle, real x, real y, real z returns nothing +native AttachSoundToUnit takes sound soundHandle, unit whichUnit returns nothing + +native StartSound takes sound soundHandle returns nothing +native StopSound takes sound soundHandle, boolean killWhenDone, boolean fadeOut returns nothing +native KillSoundWhenDone takes sound soundHandle returns nothing + +// Music Interface. Note that if music is disabled, these calls do nothing +native SetMapMusic takes string musicName, boolean random, integer index returns nothing +native ClearMapMusic takes nothing returns nothing + +native PlayMusic takes string musicName returns nothing +native PlayMusicEx takes string musicName, integer frommsecs, integer fadeinmsecs returns nothing +native StopMusic takes boolean fadeOut returns nothing +native ResumeMusic takes nothing returns nothing + +native PlayThematicMusic takes string musicFileName returns nothing +native PlayThematicMusicEx takes string musicFileName, integer frommsecs returns nothing +native EndThematicMusic takes nothing returns nothing + +native SetMusicVolume takes integer volume returns nothing +native SetMusicPlayPosition takes integer millisecs returns nothing +native SetThematicMusicPlayPosition takes integer millisecs returns nothing + +// other music and sound calls +native SetSoundDuration takes sound soundHandle, integer duration returns nothing +native GetSoundDuration takes sound soundHandle returns integer +native GetSoundFileDuration takes string musicFileName returns integer + +native VolumeGroupSetVolume takes volumegroup vgroup, real scale returns nothing +native VolumeGroupReset takes nothing returns nothing + +native GetSoundIsPlaying takes sound soundHandle returns boolean +native GetSoundIsLoading takes sound soundHandle returns boolean + +native RegisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing +native UnregisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing + +//============================================================================ +// Effects API +// +native AddWeatherEffect takes rect where, integer effectID returns weathereffect +native RemoveWeatherEffect takes weathereffect whichEffect returns nothing +native EnableWeatherEffect takes weathereffect whichEffect, boolean enable returns nothing + +native TerrainDeformCrater takes real x, real y, real radius, real depth, integer duration, boolean permanent returns terraindeformation +native TerrainDeformRipple takes real x, real y, real radius, real depth, integer duration, integer count, real spaceWaves, real timeWaves, real radiusStartPct, boolean limitNeg returns terraindeformation +native TerrainDeformWave takes real x, real y, real dirX, real dirY, real distance, real speed, real radius, real depth, integer trailTime, integer count returns terraindeformation +native TerrainDeformRandom takes real x, real y, real radius, real minDelta, real maxDelta, integer duration, integer updateInterval returns terraindeformation +native TerrainDeformStop takes terraindeformation deformation, integer duration returns nothing +native TerrainDeformStopAll takes nothing returns nothing + +native AddSpecialEffect takes string modelName, real x, real y returns effect +native AddSpecialEffectLoc takes string modelName, location where returns effect +native AddSpecialEffectTarget takes string modelName, widget targetWidget, string attachPointName returns effect +native DestroyEffect takes effect whichEffect returns nothing + +native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect +native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect +native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect +native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect +native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect +native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect + +native AddLightning takes string codeName, boolean checkVisibility, real x1, real y1, real x2, real y2 returns lightning +native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning +native DestroyLightning takes lightning whichBolt returns boolean +native MoveLightning takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real x2, real y2 returns boolean +native MoveLightningEx takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns boolean +native GetLightningColorA takes lightning whichBolt returns real +native GetLightningColorR takes lightning whichBolt returns real +native GetLightningColorG takes lightning whichBolt returns real +native GetLightningColorB takes lightning whichBolt returns real +native SetLightningColor takes lightning whichBolt, real r, real g, real b, real a returns boolean + +native GetAbilityEffect takes string abilityString, effecttype t, integer index returns string +native GetAbilityEffectById takes integer abilityId, effecttype t, integer index returns string +native GetAbilitySound takes string abilityString, soundtype t returns string +native GetAbilitySoundById takes integer abilityId, soundtype t returns string + +//============================================================================ +// Terrain API +// +native GetTerrainCliffLevel takes real x, real y returns integer +native SetWaterBaseColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetWaterDeforms takes boolean val returns nothing +native GetTerrainType takes real x, real y returns integer +native GetTerrainVariance takes real x, real y returns integer +native SetTerrainType takes real x, real y, integer terrainType, integer variation, integer area, integer shape returns nothing +native IsTerrainPathable takes real x, real y, pathingtype t returns boolean +native SetTerrainPathable takes real x, real y, pathingtype t, boolean flag returns nothing + +//============================================================================ +// Image API +// +native CreateImage takes string file, real sizeX, real sizeY, real sizeZ, real posX, real posY, real posZ, real originX, real originY, real originZ, integer imageType returns image +native DestroyImage takes image whichImage returns nothing +native ShowImage takes image whichImage, boolean flag returns nothing +native SetImageConstantHeight takes image whichImage, boolean flag, real height returns nothing +native SetImagePosition takes image whichImage, real x, real y, real z returns nothing +native SetImageColor takes image whichImage, integer red, integer green, integer blue, integer alpha returns nothing +native SetImageRender takes image whichImage, boolean flag returns nothing +native SetImageRenderAlways takes image whichImage, boolean flag returns nothing +native SetImageAboveWater takes image whichImage, boolean flag, boolean useWaterAlpha returns nothing +native SetImageType takes image whichImage, integer imageType returns nothing + +//============================================================================ +// Ubersplat API +// +native CreateUbersplat takes real x, real y, string name, integer red, integer green, integer blue, integer alpha, boolean forcePaused, boolean noBirthTime returns ubersplat +native DestroyUbersplat takes ubersplat whichSplat returns nothing +native ResetUbersplat takes ubersplat whichSplat returns nothing +native FinishUbersplat takes ubersplat whichSplat returns nothing +native ShowUbersplat takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRender takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRenderAlways takes ubersplat whichSplat, boolean flag returns nothing + +//============================================================================ +// Blight API +// +native SetBlight takes player whichPlayer, real x, real y, real radius, boolean addBlight returns nothing +native SetBlightRect takes player whichPlayer, rect r, boolean addBlight returns nothing +native SetBlightPoint takes player whichPlayer, real x, real y, boolean addBlight returns nothing +native SetBlightLoc takes player whichPlayer, location whichLocation, real radius, boolean addBlight returns nothing +native CreateBlightedGoldmine takes player id, real x, real y, real face returns unit +native IsPointBlighted takes real x, real y returns boolean + +//============================================================================ +// Doodad API +// +native SetDoodadAnimation takes real x, real y, real radius, integer doodadID, boolean nearestOnly, string animName, boolean animRandom returns nothing +native SetDoodadAnimationRect takes rect r, integer doodadID, string animName, boolean animRandom returns nothing + +//============================================================================ +// Computer AI interface +// +native StartMeleeAI takes player num, string script returns nothing +native StartCampaignAI takes player num, string script returns nothing +native CommandAI takes player num, integer command, integer data returns nothing +native PauseCompAI takes player p, boolean pause returns nothing +native GetAIDifficulty takes player num returns aidifficulty + +native RemoveGuardPosition takes unit hUnit returns nothing +native RecycleGuardPosition takes unit hUnit returns nothing +native RemoveAllGuardPositions takes player num returns nothing + +//============================================================================ +native Cheat takes string cheatStr returns nothing +native IsNoVictoryCheat takes nothing returns boolean +native IsNoDefeatCheat takes nothing returns boolean + +native Preload takes string filename returns nothing +native PreloadEnd takes real timeout returns nothing + +native PreloadStart takes nothing returns nothing +native PreloadRefresh takes nothing returns nothing +native PreloadEndEx takes nothing returns nothing + +native PreloadGenClear takes nothing returns nothing +native PreloadGenStart takes nothing returns nothing +native PreloadGenEnd takes string filename returns nothing +native Preloader takes string filename returns nothing diff --git a/logs/common.j b/logs/common.j new file mode 100644 index 0000000..2672d21 --- /dev/null +++ b/logs/common.j @@ -0,0 +1,2417 @@ +//============================================================================ +// Native types. All native functions take extended handle types when +// possible to help prevent passing bad values to native functions +// +type agent extends handle // all reference counted objects +type event extends agent // a reference to an event registration +type player extends agent // a single player reference +type widget extends agent // an interactive game object with life +type unit extends widget // a single unit reference +type destructable extends widget +type item extends widget +type ability extends agent +type buff extends ability +type force extends agent +type group extends agent +type trigger extends agent +type triggercondition extends agent +type triggeraction extends handle +type timer extends agent +type location extends agent +type region extends agent +type rect extends agent +type boolexpr extends agent +type sound extends agent +type conditionfunc extends boolexpr +type filterfunc extends boolexpr +type unitpool extends handle +type itempool extends handle +type race extends handle +type alliancetype extends handle +type racepreference extends handle +type gamestate extends handle +type igamestate extends gamestate +type fgamestate extends gamestate +type playerstate extends handle +type playerscore extends handle +type playergameresult extends handle +type unitstate extends handle +type aidifficulty extends handle + +type eventid extends handle +type gameevent extends eventid +type playerevent extends eventid +type playerunitevent extends eventid +type unitevent extends eventid +type limitop extends eventid +type widgetevent extends eventid +type dialogevent extends eventid +type unittype extends handle + +type gamespeed extends handle +type gamedifficulty extends handle +type gametype extends handle +type mapflag extends handle +type mapvisibility extends handle +type mapsetting extends handle +type mapdensity extends handle +type mapcontrol extends handle +type playerslotstate extends handle +type volumegroup extends handle +type camerafield extends handle +type camerasetup extends handle +type playercolor extends handle +type placement extends handle +type startlocprio extends handle +type raritycontrol extends handle +type blendmode extends handle +type texmapflags extends handle +type effect extends agent +type effecttype extends handle +type weathereffect extends handle +type terraindeformation extends handle +type fogstate extends handle +type fogmodifier extends agent +type dialog extends agent +type button extends agent +type quest extends agent +type questitem extends agent +type defeatcondition extends agent +type timerdialog extends agent +type leaderboard extends agent +type multiboard extends agent +type multiboarditem extends agent +type trackable extends agent +type gamecache extends agent +type version extends handle +type itemtype extends handle +type texttag extends handle +type attacktype extends handle +type damagetype extends handle +type weapontype extends handle +type soundtype extends handle +type lightning extends handle +type pathingtype extends handle +type image extends handle +type ubersplat extends handle +type hashtable extends agent + +constant native ConvertRace takes integer i returns race +constant native ConvertAllianceType takes integer i returns alliancetype +constant native ConvertRacePref takes integer i returns racepreference +constant native ConvertIGameState takes integer i returns igamestate +constant native ConvertFGameState takes integer i returns fgamestate +constant native ConvertPlayerState takes integer i returns playerstate +constant native ConvertPlayerScore takes integer i returns playerscore +constant native ConvertPlayerGameResult takes integer i returns playergameresult +constant native ConvertUnitState takes integer i returns unitstate +constant native ConvertAIDifficulty takes integer i returns aidifficulty +constant native ConvertGameEvent takes integer i returns gameevent +constant native ConvertPlayerEvent takes integer i returns playerevent +constant native ConvertPlayerUnitEvent takes integer i returns playerunitevent +constant native ConvertWidgetEvent takes integer i returns widgetevent +constant native ConvertDialogEvent takes integer i returns dialogevent +constant native ConvertUnitEvent takes integer i returns unitevent +constant native ConvertLimitOp takes integer i returns limitop +constant native ConvertUnitType takes integer i returns unittype +constant native ConvertGameSpeed takes integer i returns gamespeed +constant native ConvertPlacement takes integer i returns placement +constant native ConvertStartLocPrio takes integer i returns startlocprio +constant native ConvertGameDifficulty takes integer i returns gamedifficulty +constant native ConvertGameType takes integer i returns gametype +constant native ConvertMapFlag takes integer i returns mapflag +constant native ConvertMapVisibility takes integer i returns mapvisibility +constant native ConvertMapSetting takes integer i returns mapsetting +constant native ConvertMapDensity takes integer i returns mapdensity +constant native ConvertMapControl takes integer i returns mapcontrol +constant native ConvertPlayerColor takes integer i returns playercolor +constant native ConvertPlayerSlotState takes integer i returns playerslotstate +constant native ConvertVolumeGroup takes integer i returns volumegroup +constant native ConvertCameraField takes integer i returns camerafield +constant native ConvertBlendMode takes integer i returns blendmode +constant native ConvertRarityControl takes integer i returns raritycontrol +constant native ConvertTexMapFlags takes integer i returns texmapflags +constant native ConvertFogState takes integer i returns fogstate +constant native ConvertEffectType takes integer i returns effecttype +constant native ConvertVersion takes integer i returns version +constant native ConvertItemType takes integer i returns itemtype +constant native ConvertAttackType takes integer i returns attacktype +constant native ConvertDamageType takes integer i returns damagetype +constant native ConvertWeaponType takes integer i returns weapontype +constant native ConvertSoundType takes integer i returns soundtype +constant native ConvertPathingType takes integer i returns pathingtype + +constant native OrderId takes string orderIdString returns integer +constant native OrderId2String takes integer orderId returns string +constant native UnitId takes string unitIdString returns integer +constant native UnitId2String takes integer unitId returns string + +// Not currently working correctly... +constant native AbilityId takes string abilityIdString returns integer +constant native AbilityId2String takes integer abilityId returns string + +// Looks up the "name" field for any object (unit, item, ability) +constant native GetObjectName takes integer objectId returns string + +globals + +//=================================================== +// Game Constants +//=================================================== + + // pfff + constant boolean FALSE = false + constant boolean TRUE = true + constant integer JASS_MAX_ARRAY_SIZE = 8192 + + constant integer PLAYER_NEUTRAL_PASSIVE = 15 + constant integer PLAYER_NEUTRAL_AGGRESSIVE = 12 + + constant playercolor PLAYER_COLOR_RED = ConvertPlayerColor(0) + constant playercolor PLAYER_COLOR_BLUE = ConvertPlayerColor(1) + constant playercolor PLAYER_COLOR_CYAN = ConvertPlayerColor(2) + constant playercolor PLAYER_COLOR_PURPLE = ConvertPlayerColor(3) + constant playercolor PLAYER_COLOR_YELLOW = ConvertPlayerColor(4) + constant playercolor PLAYER_COLOR_ORANGE = ConvertPlayerColor(5) + constant playercolor PLAYER_COLOR_GREEN = ConvertPlayerColor(6) + constant playercolor PLAYER_COLOR_PINK = ConvertPlayerColor(7) + constant playercolor PLAYER_COLOR_LIGHT_GRAY = ConvertPlayerColor(8) + constant playercolor PLAYER_COLOR_LIGHT_BLUE = ConvertPlayerColor(9) + constant playercolor PLAYER_COLOR_AQUA = ConvertPlayerColor(10) + constant playercolor PLAYER_COLOR_BROWN = ConvertPlayerColor(11) + + constant race RACE_HUMAN = ConvertRace(1) + constant race RACE_ORC = ConvertRace(2) + constant race RACE_UNDEAD = ConvertRace(3) + constant race RACE_NIGHTELF = ConvertRace(4) + constant race RACE_DEMON = ConvertRace(5) + constant race RACE_OTHER = ConvertRace(7) + + constant playergameresult PLAYER_GAME_RESULT_VICTORY = ConvertPlayerGameResult(0) + constant playergameresult PLAYER_GAME_RESULT_DEFEAT = ConvertPlayerGameResult(1) + constant playergameresult PLAYER_GAME_RESULT_TIE = ConvertPlayerGameResult(2) + constant playergameresult PLAYER_GAME_RESULT_NEUTRAL = ConvertPlayerGameResult(3) + + constant alliancetype ALLIANCE_PASSIVE = ConvertAllianceType(0) + constant alliancetype ALLIANCE_HELP_REQUEST = ConvertAllianceType(1) + constant alliancetype ALLIANCE_HELP_RESPONSE = ConvertAllianceType(2) + constant alliancetype ALLIANCE_SHARED_XP = ConvertAllianceType(3) + constant alliancetype ALLIANCE_SHARED_SPELLS = ConvertAllianceType(4) + constant alliancetype ALLIANCE_SHARED_VISION = ConvertAllianceType(5) + constant alliancetype ALLIANCE_SHARED_CONTROL = ConvertAllianceType(6) + constant alliancetype ALLIANCE_SHARED_ADVANCED_CONTROL= ConvertAllianceType(7) + constant alliancetype ALLIANCE_RESCUABLE = ConvertAllianceType(8) + constant alliancetype ALLIANCE_SHARED_VISION_FORCED = ConvertAllianceType(9) + + constant version VERSION_REIGN_OF_CHAOS = ConvertVersion(0) + constant version VERSION_FROZEN_THRONE = ConvertVersion(1) + + constant attacktype ATTACK_TYPE_NORMAL = ConvertAttackType(0) + constant attacktype ATTACK_TYPE_MELEE = ConvertAttackType(1) + constant attacktype ATTACK_TYPE_PIERCE = ConvertAttackType(2) + constant attacktype ATTACK_TYPE_SIEGE = ConvertAttackType(3) + constant attacktype ATTACK_TYPE_MAGIC = ConvertAttackType(4) + constant attacktype ATTACK_TYPE_CHAOS = ConvertAttackType(5) + constant attacktype ATTACK_TYPE_HERO = ConvertAttackType(6) + + constant damagetype DAMAGE_TYPE_UNKNOWN = ConvertDamageType(0) + constant damagetype DAMAGE_TYPE_NORMAL = ConvertDamageType(4) + constant damagetype DAMAGE_TYPE_ENHANCED = ConvertDamageType(5) + constant damagetype DAMAGE_TYPE_FIRE = ConvertDamageType(8) + constant damagetype DAMAGE_TYPE_COLD = ConvertDamageType(9) + constant damagetype DAMAGE_TYPE_LIGHTNING = ConvertDamageType(10) + constant damagetype DAMAGE_TYPE_POISON = ConvertDamageType(11) + constant damagetype DAMAGE_TYPE_DISEASE = ConvertDamageType(12) + constant damagetype DAMAGE_TYPE_DIVINE = ConvertDamageType(13) + constant damagetype DAMAGE_TYPE_MAGIC = ConvertDamageType(14) + constant damagetype DAMAGE_TYPE_SONIC = ConvertDamageType(15) + constant damagetype DAMAGE_TYPE_ACID = ConvertDamageType(16) + constant damagetype DAMAGE_TYPE_FORCE = ConvertDamageType(17) + constant damagetype DAMAGE_TYPE_DEATH = ConvertDamageType(18) + constant damagetype DAMAGE_TYPE_MIND = ConvertDamageType(19) + constant damagetype DAMAGE_TYPE_PLANT = ConvertDamageType(20) + constant damagetype DAMAGE_TYPE_DEFENSIVE = ConvertDamageType(21) + constant damagetype DAMAGE_TYPE_DEMOLITION = ConvertDamageType(22) + constant damagetype DAMAGE_TYPE_SLOW_POISON = ConvertDamageType(23) + constant damagetype DAMAGE_TYPE_SPIRIT_LINK = ConvertDamageType(24) + constant damagetype DAMAGE_TYPE_SHADOW_STRIKE = ConvertDamageType(25) + constant damagetype DAMAGE_TYPE_UNIVERSAL = ConvertDamageType(26) + + constant weapontype WEAPON_TYPE_WHOKNOWS = ConvertWeaponType(0) + constant weapontype WEAPON_TYPE_METAL_LIGHT_CHOP = ConvertWeaponType(1) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_CHOP = ConvertWeaponType(2) + constant weapontype WEAPON_TYPE_METAL_HEAVY_CHOP = ConvertWeaponType(3) + constant weapontype WEAPON_TYPE_METAL_LIGHT_SLICE = ConvertWeaponType(4) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_SLICE = ConvertWeaponType(5) + constant weapontype WEAPON_TYPE_METAL_HEAVY_SLICE = ConvertWeaponType(6) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_BASH = ConvertWeaponType(7) + constant weapontype WEAPON_TYPE_METAL_HEAVY_BASH = ConvertWeaponType(8) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_STAB = ConvertWeaponType(9) + constant weapontype WEAPON_TYPE_METAL_HEAVY_STAB = ConvertWeaponType(10) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_SLICE = ConvertWeaponType(11) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_SLICE = ConvertWeaponType(12) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_SLICE = ConvertWeaponType(13) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_BASH = ConvertWeaponType(14) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_BASH = ConvertWeaponType(15) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_BASH = ConvertWeaponType(16) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_STAB = ConvertWeaponType(17) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_STAB = ConvertWeaponType(18) + constant weapontype WEAPON_TYPE_CLAW_LIGHT_SLICE = ConvertWeaponType(19) + constant weapontype WEAPON_TYPE_CLAW_MEDIUM_SLICE = ConvertWeaponType(20) + constant weapontype WEAPON_TYPE_CLAW_HEAVY_SLICE = ConvertWeaponType(21) + constant weapontype WEAPON_TYPE_AXE_MEDIUM_CHOP = ConvertWeaponType(22) + constant weapontype WEAPON_TYPE_ROCK_HEAVY_BASH = ConvertWeaponType(23) + + constant pathingtype PATHING_TYPE_ANY = ConvertPathingType(0) + constant pathingtype PATHING_TYPE_WALKABILITY = ConvertPathingType(1) + constant pathingtype PATHING_TYPE_FLYABILITY = ConvertPathingType(2) + constant pathingtype PATHING_TYPE_BUILDABILITY = ConvertPathingType(3) + constant pathingtype PATHING_TYPE_PEONHARVESTPATHING = ConvertPathingType(4) + constant pathingtype PATHING_TYPE_BLIGHTPATHING = ConvertPathingType(5) + constant pathingtype PATHING_TYPE_FLOATABILITY = ConvertPathingType(6) + constant pathingtype PATHING_TYPE_AMPHIBIOUSPATHING = ConvertPathingType(7) + +//=================================================== +// Map Setup Constants +//=================================================== + + constant racepreference RACE_PREF_HUMAN = ConvertRacePref(1) + constant racepreference RACE_PREF_ORC = ConvertRacePref(2) + constant racepreference RACE_PREF_NIGHTELF = ConvertRacePref(4) + constant racepreference RACE_PREF_UNDEAD = ConvertRacePref(8) + constant racepreference RACE_PREF_DEMON = ConvertRacePref(16) + constant racepreference RACE_PREF_RANDOM = ConvertRacePref(32) + constant racepreference RACE_PREF_USER_SELECTABLE = ConvertRacePref(64) + + constant mapcontrol MAP_CONTROL_USER = ConvertMapControl(0) + constant mapcontrol MAP_CONTROL_COMPUTER = ConvertMapControl(1) + constant mapcontrol MAP_CONTROL_RESCUABLE = ConvertMapControl(2) + constant mapcontrol MAP_CONTROL_NEUTRAL = ConvertMapControl(3) + constant mapcontrol MAP_CONTROL_CREEP = ConvertMapControl(4) + constant mapcontrol MAP_CONTROL_NONE = ConvertMapControl(5) + + constant gametype GAME_TYPE_MELEE = ConvertGameType(1) + constant gametype GAME_TYPE_FFA = ConvertGameType(2) + constant gametype GAME_TYPE_USE_MAP_SETTINGS = ConvertGameType(4) + constant gametype GAME_TYPE_BLIZ = ConvertGameType(8) + constant gametype GAME_TYPE_ONE_ON_ONE = ConvertGameType(16) + constant gametype GAME_TYPE_TWO_TEAM_PLAY = ConvertGameType(32) + constant gametype GAME_TYPE_THREE_TEAM_PLAY = ConvertGameType(64) + constant gametype GAME_TYPE_FOUR_TEAM_PLAY = ConvertGameType(128) + + constant mapflag MAP_FOG_HIDE_TERRAIN = ConvertMapFlag(1) + constant mapflag MAP_FOG_MAP_EXPLORED = ConvertMapFlag(2) + constant mapflag MAP_FOG_ALWAYS_VISIBLE = ConvertMapFlag(4) + + constant mapflag MAP_USE_HANDICAPS = ConvertMapFlag(8) + constant mapflag MAP_OBSERVERS = ConvertMapFlag(16) + constant mapflag MAP_OBSERVERS_ON_DEATH = ConvertMapFlag(32) + + constant mapflag MAP_FIXED_COLORS = ConvertMapFlag(128) + + constant mapflag MAP_LOCK_RESOURCE_TRADING = ConvertMapFlag(256) + constant mapflag MAP_RESOURCE_TRADING_ALLIES_ONLY = ConvertMapFlag(512) + + constant mapflag MAP_LOCK_ALLIANCE_CHANGES = ConvertMapFlag(1024) + constant mapflag MAP_ALLIANCE_CHANGES_HIDDEN = ConvertMapFlag(2048) + + constant mapflag MAP_CHEATS = ConvertMapFlag(4096) + constant mapflag MAP_CHEATS_HIDDEN = ConvertMapFlag(8192) + + constant mapflag MAP_LOCK_SPEED = ConvertMapFlag(8192*2) + constant mapflag MAP_LOCK_RANDOM_SEED = ConvertMapFlag(8192*4) + constant mapflag MAP_SHARED_ADVANCED_CONTROL = ConvertMapFlag(8192*8) + constant mapflag MAP_RANDOM_HERO = ConvertMapFlag(8192*16) + constant mapflag MAP_RANDOM_RACES = ConvertMapFlag(8192*32) + constant mapflag MAP_RELOADED = ConvertMapFlag(8192*64) + + constant placement MAP_PLACEMENT_RANDOM = ConvertPlacement(0) // random among all slots + constant placement MAP_PLACEMENT_FIXED = ConvertPlacement(1) // player 0 in start loc 0... + constant placement MAP_PLACEMENT_USE_MAP_SETTINGS = ConvertPlacement(2) // whatever was specified by the script + constant placement MAP_PLACEMENT_TEAMS_TOGETHER = ConvertPlacement(3) // random with allies next to each other + + constant startlocprio MAP_LOC_PRIO_LOW = ConvertStartLocPrio(0) + constant startlocprio MAP_LOC_PRIO_HIGH = ConvertStartLocPrio(1) + constant startlocprio MAP_LOC_PRIO_NOT = ConvertStartLocPrio(2) + + constant mapdensity MAP_DENSITY_NONE = ConvertMapDensity(0) + constant mapdensity MAP_DENSITY_LIGHT = ConvertMapDensity(1) + constant mapdensity MAP_DENSITY_MEDIUM = ConvertMapDensity(2) + constant mapdensity MAP_DENSITY_HEAVY = ConvertMapDensity(3) + + constant gamedifficulty MAP_DIFFICULTY_EASY = ConvertGameDifficulty(0) + constant gamedifficulty MAP_DIFFICULTY_NORMAL = ConvertGameDifficulty(1) + constant gamedifficulty MAP_DIFFICULTY_HARD = ConvertGameDifficulty(2) + constant gamedifficulty MAP_DIFFICULTY_INSANE = ConvertGameDifficulty(3) + + constant gamespeed MAP_SPEED_SLOWEST = ConvertGameSpeed(0) + constant gamespeed MAP_SPEED_SLOW = ConvertGameSpeed(1) + constant gamespeed MAP_SPEED_NORMAL = ConvertGameSpeed(2) + constant gamespeed MAP_SPEED_FAST = ConvertGameSpeed(3) + constant gamespeed MAP_SPEED_FASTEST = ConvertGameSpeed(4) + + constant playerslotstate PLAYER_SLOT_STATE_EMPTY = ConvertPlayerSlotState(0) + constant playerslotstate PLAYER_SLOT_STATE_PLAYING = ConvertPlayerSlotState(1) + constant playerslotstate PLAYER_SLOT_STATE_LEFT = ConvertPlayerSlotState(2) + +//=================================================== +// Sound Constants +//=================================================== + constant volumegroup SOUND_VOLUMEGROUP_UNITMOVEMENT = ConvertVolumeGroup(0) + constant volumegroup SOUND_VOLUMEGROUP_UNITSOUNDS = ConvertVolumeGroup(1) + constant volumegroup SOUND_VOLUMEGROUP_COMBAT = ConvertVolumeGroup(2) + constant volumegroup SOUND_VOLUMEGROUP_SPELLS = ConvertVolumeGroup(3) + constant volumegroup SOUND_VOLUMEGROUP_UI = ConvertVolumeGroup(4) + constant volumegroup SOUND_VOLUMEGROUP_MUSIC = ConvertVolumeGroup(5) + constant volumegroup SOUND_VOLUMEGROUP_AMBIENTSOUNDS = ConvertVolumeGroup(6) + constant volumegroup SOUND_VOLUMEGROUP_FIRE = ConvertVolumeGroup(7) + + +//=================================================== +// Game, Player, and Unit States +// +// For use with TriggerRegisterStateEvent +// +//=================================================== + + constant igamestate GAME_STATE_DIVINE_INTERVENTION = ConvertIGameState(0) + constant igamestate GAME_STATE_DISCONNECTED = ConvertIGameState(1) + constant fgamestate GAME_STATE_TIME_OF_DAY = ConvertFGameState(2) + + constant playerstate PLAYER_STATE_GAME_RESULT = ConvertPlayerState(0) + + // current resource levels + // + constant playerstate PLAYER_STATE_RESOURCE_GOLD = ConvertPlayerState(1) + constant playerstate PLAYER_STATE_RESOURCE_LUMBER = ConvertPlayerState(2) + constant playerstate PLAYER_STATE_RESOURCE_HERO_TOKENS = ConvertPlayerState(3) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_CAP = ConvertPlayerState(4) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_USED = ConvertPlayerState(5) + constant playerstate PLAYER_STATE_FOOD_CAP_CEILING = ConvertPlayerState(6) + + constant playerstate PLAYER_STATE_GIVES_BOUNTY = ConvertPlayerState(7) + constant playerstate PLAYER_STATE_ALLIED_VICTORY = ConvertPlayerState(8) + constant playerstate PLAYER_STATE_PLACED = ConvertPlayerState(9) + constant playerstate PLAYER_STATE_OBSERVER_ON_DEATH = ConvertPlayerState(10) + constant playerstate PLAYER_STATE_OBSERVER = ConvertPlayerState(11) + constant playerstate PLAYER_STATE_UNFOLLOWABLE = ConvertPlayerState(12) + + // taxation rate for each resource + // + constant playerstate PLAYER_STATE_GOLD_UPKEEP_RATE = ConvertPlayerState(13) + constant playerstate PLAYER_STATE_LUMBER_UPKEEP_RATE = ConvertPlayerState(14) + + // cumulative resources collected by the player during the mission + // + constant playerstate PLAYER_STATE_GOLD_GATHERED = ConvertPlayerState(15) + constant playerstate PLAYER_STATE_LUMBER_GATHERED = ConvertPlayerState(16) + + constant playerstate PLAYER_STATE_NO_CREEP_SLEEP = ConvertPlayerState(25) + + constant unitstate UNIT_STATE_LIFE = ConvertUnitState(0) + constant unitstate UNIT_STATE_MAX_LIFE = ConvertUnitState(1) + constant unitstate UNIT_STATE_MANA = ConvertUnitState(2) + constant unitstate UNIT_STATE_MAX_MANA = ConvertUnitState(3) + + constant aidifficulty AI_DIFFICULTY_NEWBIE = ConvertAIDifficulty(0) + constant aidifficulty AI_DIFFICULTY_NORMAL = ConvertAIDifficulty(1) + constant aidifficulty AI_DIFFICULTY_INSANE = ConvertAIDifficulty(2) + + // player score values + constant playerscore PLAYER_SCORE_UNITS_TRAINED = ConvertPlayerScore(0) + constant playerscore PLAYER_SCORE_UNITS_KILLED = ConvertPlayerScore(1) + constant playerscore PLAYER_SCORE_STRUCT_BUILT = ConvertPlayerScore(2) + constant playerscore PLAYER_SCORE_STRUCT_RAZED = ConvertPlayerScore(3) + constant playerscore PLAYER_SCORE_TECH_PERCENT = ConvertPlayerScore(4) + constant playerscore PLAYER_SCORE_FOOD_MAXPROD = ConvertPlayerScore(5) + constant playerscore PLAYER_SCORE_FOOD_MAXUSED = ConvertPlayerScore(6) + constant playerscore PLAYER_SCORE_HEROES_KILLED = ConvertPlayerScore(7) + constant playerscore PLAYER_SCORE_ITEMS_GAINED = ConvertPlayerScore(8) + constant playerscore PLAYER_SCORE_MERCS_HIRED = ConvertPlayerScore(9) + constant playerscore PLAYER_SCORE_GOLD_MINED_TOTAL = ConvertPlayerScore(10) + constant playerscore PLAYER_SCORE_GOLD_MINED_UPKEEP = ConvertPlayerScore(11) + constant playerscore PLAYER_SCORE_GOLD_LOST_UPKEEP = ConvertPlayerScore(12) + constant playerscore PLAYER_SCORE_GOLD_LOST_TAX = ConvertPlayerScore(13) + constant playerscore PLAYER_SCORE_GOLD_GIVEN = ConvertPlayerScore(14) + constant playerscore PLAYER_SCORE_GOLD_RECEIVED = ConvertPlayerScore(15) + constant playerscore PLAYER_SCORE_LUMBER_TOTAL = ConvertPlayerScore(16) + constant playerscore PLAYER_SCORE_LUMBER_LOST_UPKEEP = ConvertPlayerScore(17) + constant playerscore PLAYER_SCORE_LUMBER_LOST_TAX = ConvertPlayerScore(18) + constant playerscore PLAYER_SCORE_LUMBER_GIVEN = ConvertPlayerScore(19) + constant playerscore PLAYER_SCORE_LUMBER_RECEIVED = ConvertPlayerScore(20) + constant playerscore PLAYER_SCORE_UNIT_TOTAL = ConvertPlayerScore(21) + constant playerscore PLAYER_SCORE_HERO_TOTAL = ConvertPlayerScore(22) + constant playerscore PLAYER_SCORE_RESOURCE_TOTAL = ConvertPlayerScore(23) + constant playerscore PLAYER_SCORE_TOTAL = ConvertPlayerScore(24) + +//=================================================== +// Game, Player and Unit Events +// +// When an event causes a trigger to fire these +// values allow the action code to determine which +// event was dispatched and therefore which set of +// native functions should be used to get information +// about the event. +// +// Do NOT change the order or value of these constants +// without insuring that the JASS_GAME_EVENTS_WAR3 enum +// is changed to match. +// +//=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_VICTORY = ConvertGameEvent(0) + constant gameevent EVENT_GAME_END_LEVEL = ConvertGameEvent(1) + + constant gameevent EVENT_GAME_VARIABLE_LIMIT = ConvertGameEvent(2) + constant gameevent EVENT_GAME_STATE_LIMIT = ConvertGameEvent(3) + + constant gameevent EVENT_GAME_TIMER_EXPIRED = ConvertGameEvent(4) + + constant gameevent EVENT_GAME_ENTER_REGION = ConvertGameEvent(5) + constant gameevent EVENT_GAME_LEAVE_REGION = ConvertGameEvent(6) + + constant gameevent EVENT_GAME_TRACKABLE_HIT = ConvertGameEvent(7) + constant gameevent EVENT_GAME_TRACKABLE_TRACK = ConvertGameEvent(8) + + constant gameevent EVENT_GAME_SHOW_SKILL = ConvertGameEvent(9) + constant gameevent EVENT_GAME_BUILD_SUBMENU = ConvertGameEvent(10) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + constant playerevent EVENT_PLAYER_STATE_LIMIT = ConvertPlayerEvent(11) + constant playerevent EVENT_PLAYER_ALLIANCE_CHANGED = ConvertPlayerEvent(12) + + constant playerevent EVENT_PLAYER_DEFEAT = ConvertPlayerEvent(13) + constant playerevent EVENT_PLAYER_VICTORY = ConvertPlayerEvent(14) + constant playerevent EVENT_PLAYER_LEAVE = ConvertPlayerEvent(15) + constant playerevent EVENT_PLAYER_CHAT = ConvertPlayerEvent(16) + constant playerevent EVENT_PLAYER_END_CINEMATIC = ConvertPlayerEvent(17) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_ATTACKED = ConvertPlayerUnitEvent(18) + constant playerunitevent EVENT_PLAYER_UNIT_RESCUED = ConvertPlayerUnitEvent(19) + + constant playerunitevent EVENT_PLAYER_UNIT_DEATH = ConvertPlayerUnitEvent(20) + constant playerunitevent EVENT_PLAYER_UNIT_DECAY = ConvertPlayerUnitEvent(21) + + constant playerunitevent EVENT_PLAYER_UNIT_DETECTED = ConvertPlayerUnitEvent(22) + constant playerunitevent EVENT_PLAYER_UNIT_HIDDEN = ConvertPlayerUnitEvent(23) + + constant playerunitevent EVENT_PLAYER_UNIT_SELECTED = ConvertPlayerUnitEvent(24) + constant playerunitevent EVENT_PLAYER_UNIT_DESELECTED = ConvertPlayerUnitEvent(25) + + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_START = ConvertPlayerUnitEvent(26) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL = ConvertPlayerUnitEvent(27) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_FINISH = ConvertPlayerUnitEvent(28) + + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_START = ConvertPlayerUnitEvent(29) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_CANCEL = ConvertPlayerUnitEvent(30) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_FINISH = ConvertPlayerUnitEvent(31) + + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_START = ConvertPlayerUnitEvent(32) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_CANCEL = ConvertPlayerUnitEvent(33) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_FINISH = ConvertPlayerUnitEvent(34) + + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_START = ConvertPlayerUnitEvent(35) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_CANCEL = ConvertPlayerUnitEvent(36) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_FINISH = ConvertPlayerUnitEvent(37) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_ORDER = ConvertPlayerUnitEvent(38) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER = ConvertPlayerUnitEvent(39) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER = ConvertPlayerUnitEvent(40) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_UNIT_ORDER = ConvertPlayerUnitEvent(40) // for compat + + constant playerunitevent EVENT_PLAYER_HERO_LEVEL = ConvertPlayerUnitEvent(41) + constant playerunitevent EVENT_PLAYER_HERO_SKILL = ConvertPlayerUnitEvent(42) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVABLE = ConvertPlayerUnitEvent(43) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_START = ConvertPlayerUnitEvent(44) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_CANCEL = ConvertPlayerUnitEvent(45) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_FINISH = ConvertPlayerUnitEvent(46) + constant playerunitevent EVENT_PLAYER_UNIT_SUMMON = ConvertPlayerUnitEvent(47) + constant playerunitevent EVENT_PLAYER_UNIT_DROP_ITEM = ConvertPlayerUnitEvent(48) + constant playerunitevent EVENT_PLAYER_UNIT_PICKUP_ITEM = ConvertPlayerUnitEvent(49) + constant playerunitevent EVENT_PLAYER_UNIT_USE_ITEM = ConvertPlayerUnitEvent(50) + + constant playerunitevent EVENT_PLAYER_UNIT_LOADED = ConvertPlayerUnitEvent(51) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_DAMAGED = ConvertUnitEvent(52) + constant unitevent EVENT_UNIT_DEATH = ConvertUnitEvent(53) + constant unitevent EVENT_UNIT_DECAY = ConvertUnitEvent(54) + constant unitevent EVENT_UNIT_DETECTED = ConvertUnitEvent(55) + constant unitevent EVENT_UNIT_HIDDEN = ConvertUnitEvent(56) + constant unitevent EVENT_UNIT_SELECTED = ConvertUnitEvent(57) + constant unitevent EVENT_UNIT_DESELECTED = ConvertUnitEvent(58) + + constant unitevent EVENT_UNIT_STATE_LIMIT = ConvertUnitEvent(59) + + // Events which may have a filter for the "other unit" + // + constant unitevent EVENT_UNIT_ACQUIRED_TARGET = ConvertUnitEvent(60) + constant unitevent EVENT_UNIT_TARGET_IN_RANGE = ConvertUnitEvent(61) + constant unitevent EVENT_UNIT_ATTACKED = ConvertUnitEvent(62) + constant unitevent EVENT_UNIT_RESCUED = ConvertUnitEvent(63) + + constant unitevent EVENT_UNIT_CONSTRUCT_CANCEL = ConvertUnitEvent(64) + constant unitevent EVENT_UNIT_CONSTRUCT_FINISH = ConvertUnitEvent(65) + + constant unitevent EVENT_UNIT_UPGRADE_START = ConvertUnitEvent(66) + constant unitevent EVENT_UNIT_UPGRADE_CANCEL = ConvertUnitEvent(67) + constant unitevent EVENT_UNIT_UPGRADE_FINISH = ConvertUnitEvent(68) + + // Events which involve the specified unit performing + // training of other units + // + constant unitevent EVENT_UNIT_TRAIN_START = ConvertUnitEvent(69) + constant unitevent EVENT_UNIT_TRAIN_CANCEL = ConvertUnitEvent(70) + constant unitevent EVENT_UNIT_TRAIN_FINISH = ConvertUnitEvent(71) + + constant unitevent EVENT_UNIT_RESEARCH_START = ConvertUnitEvent(72) + constant unitevent EVENT_UNIT_RESEARCH_CANCEL = ConvertUnitEvent(73) + constant unitevent EVENT_UNIT_RESEARCH_FINISH = ConvertUnitEvent(74) + + constant unitevent EVENT_UNIT_ISSUED_ORDER = ConvertUnitEvent(75) + constant unitevent EVENT_UNIT_ISSUED_POINT_ORDER = ConvertUnitEvent(76) + constant unitevent EVENT_UNIT_ISSUED_TARGET_ORDER = ConvertUnitEvent(77) + + constant unitevent EVENT_UNIT_HERO_LEVEL = ConvertUnitEvent(78) + constant unitevent EVENT_UNIT_HERO_SKILL = ConvertUnitEvent(79) + + constant unitevent EVENT_UNIT_HERO_REVIVABLE = ConvertUnitEvent(80) + constant unitevent EVENT_UNIT_HERO_REVIVE_START = ConvertUnitEvent(81) + constant unitevent EVENT_UNIT_HERO_REVIVE_CANCEL = ConvertUnitEvent(82) + constant unitevent EVENT_UNIT_HERO_REVIVE_FINISH = ConvertUnitEvent(83) + + constant unitevent EVENT_UNIT_SUMMON = ConvertUnitEvent(84) + + constant unitevent EVENT_UNIT_DROP_ITEM = ConvertUnitEvent(85) + constant unitevent EVENT_UNIT_PICKUP_ITEM = ConvertUnitEvent(86) + constant unitevent EVENT_UNIT_USE_ITEM = ConvertUnitEvent(87) + + constant unitevent EVENT_UNIT_LOADED = ConvertUnitEvent(88) + + constant widgetevent EVENT_WIDGET_DEATH = ConvertWidgetEvent(89) + + constant dialogevent EVENT_DIALOG_BUTTON_CLICK = ConvertDialogEvent(90) + constant dialogevent EVENT_DIALOG_CLICK = ConvertDialogEvent(91) + + //=================================================== + // Frozen Throne Expansion Events + // Need to be added here to preserve compat + //=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_LOADED = ConvertGameEvent(256) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_SOON = ConvertGameEvent(257) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_NOW = ConvertGameEvent(258) + constant gameevent EVENT_GAME_SAVE = ConvertGameEvent(259) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + + constant playerevent EVENT_PLAYER_ARROW_LEFT_DOWN = ConvertPlayerEvent(261) + constant playerevent EVENT_PLAYER_ARROW_LEFT_UP = ConvertPlayerEvent(262) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_DOWN = ConvertPlayerEvent(263) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_UP = ConvertPlayerEvent(264) + constant playerevent EVENT_PLAYER_ARROW_DOWN_DOWN = ConvertPlayerEvent(265) + constant playerevent EVENT_PLAYER_ARROW_DOWN_UP = ConvertPlayerEvent(266) + constant playerevent EVENT_PLAYER_ARROW_UP_DOWN = ConvertPlayerEvent(267) + constant playerevent EVENT_PLAYER_ARROW_UP_UP = ConvertPlayerEvent(268) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_SELL = ConvertPlayerUnitEvent(269) + constant playerunitevent EVENT_PLAYER_UNIT_CHANGE_OWNER = ConvertPlayerUnitEvent(270) + constant playerunitevent EVENT_PLAYER_UNIT_SELL_ITEM = ConvertPlayerUnitEvent(271) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CHANNEL = ConvertPlayerUnitEvent(272) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CAST = ConvertPlayerUnitEvent(273) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_EFFECT = ConvertPlayerUnitEvent(274) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_FINISH = ConvertPlayerUnitEvent(275) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_ENDCAST = ConvertPlayerUnitEvent(276) + constant playerunitevent EVENT_PLAYER_UNIT_PAWN_ITEM = ConvertPlayerUnitEvent(277) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_SELL = ConvertUnitEvent(286) + constant unitevent EVENT_UNIT_CHANGE_OWNER = ConvertUnitEvent(287) + constant unitevent EVENT_UNIT_SELL_ITEM = ConvertUnitEvent(288) + constant unitevent EVENT_UNIT_SPELL_CHANNEL = ConvertUnitEvent(289) + constant unitevent EVENT_UNIT_SPELL_CAST = ConvertUnitEvent(290) + constant unitevent EVENT_UNIT_SPELL_EFFECT = ConvertUnitEvent(291) + constant unitevent EVENT_UNIT_SPELL_FINISH = ConvertUnitEvent(292) + constant unitevent EVENT_UNIT_SPELL_ENDCAST = ConvertUnitEvent(293) + constant unitevent EVENT_UNIT_PAWN_ITEM = ConvertUnitEvent(294) + + //=================================================== + // Limit Event API constants + // variable, player state, game state, and unit state events + // ( do NOT change the order of these... ) + //=================================================== + constant limitop LESS_THAN = ConvertLimitOp(0) + constant limitop LESS_THAN_OR_EQUAL = ConvertLimitOp(1) + constant limitop EQUAL = ConvertLimitOp(2) + constant limitop GREATER_THAN_OR_EQUAL = ConvertLimitOp(3) + constant limitop GREATER_THAN = ConvertLimitOp(4) + constant limitop NOT_EQUAL = ConvertLimitOp(5) + +//=================================================== +// Unit Type Constants for use with IsUnitType() +//=================================================== + + constant unittype UNIT_TYPE_HERO = ConvertUnitType(0) + constant unittype UNIT_TYPE_DEAD = ConvertUnitType(1) + constant unittype UNIT_TYPE_STRUCTURE = ConvertUnitType(2) + + constant unittype UNIT_TYPE_FLYING = ConvertUnitType(3) + constant unittype UNIT_TYPE_GROUND = ConvertUnitType(4) + + constant unittype UNIT_TYPE_ATTACKS_FLYING = ConvertUnitType(5) + constant unittype UNIT_TYPE_ATTACKS_GROUND = ConvertUnitType(6) + + constant unittype UNIT_TYPE_MELEE_ATTACKER = ConvertUnitType(7) + constant unittype UNIT_TYPE_RANGED_ATTACKER = ConvertUnitType(8) + + constant unittype UNIT_TYPE_GIANT = ConvertUnitType(9) + constant unittype UNIT_TYPE_SUMMONED = ConvertUnitType(10) + constant unittype UNIT_TYPE_STUNNED = ConvertUnitType(11) + constant unittype UNIT_TYPE_PLAGUED = ConvertUnitType(12) + constant unittype UNIT_TYPE_SNARED = ConvertUnitType(13) + + constant unittype UNIT_TYPE_UNDEAD = ConvertUnitType(14) + constant unittype UNIT_TYPE_MECHANICAL = ConvertUnitType(15) + constant unittype UNIT_TYPE_PEON = ConvertUnitType(16) + constant unittype UNIT_TYPE_SAPPER = ConvertUnitType(17) + constant unittype UNIT_TYPE_TOWNHALL = ConvertUnitType(18) + constant unittype UNIT_TYPE_ANCIENT = ConvertUnitType(19) + + constant unittype UNIT_TYPE_TAUREN = ConvertUnitType(20) + constant unittype UNIT_TYPE_POISONED = ConvertUnitType(21) + constant unittype UNIT_TYPE_POLYMORPHED = ConvertUnitType(22) + constant unittype UNIT_TYPE_SLEEPING = ConvertUnitType(23) + constant unittype UNIT_TYPE_RESISTANT = ConvertUnitType(24) + constant unittype UNIT_TYPE_ETHEREAL = ConvertUnitType(25) + constant unittype UNIT_TYPE_MAGIC_IMMUNE = ConvertUnitType(26) + +//=================================================== +// Unit Type Constants for use with ChooseRandomItemEx() +//=================================================== + + constant itemtype ITEM_TYPE_PERMANENT = ConvertItemType(0) + constant itemtype ITEM_TYPE_CHARGED = ConvertItemType(1) + constant itemtype ITEM_TYPE_POWERUP = ConvertItemType(2) + constant itemtype ITEM_TYPE_ARTIFACT = ConvertItemType(3) + constant itemtype ITEM_TYPE_PURCHASABLE = ConvertItemType(4) + constant itemtype ITEM_TYPE_CAMPAIGN = ConvertItemType(5) + constant itemtype ITEM_TYPE_MISCELLANEOUS = ConvertItemType(6) + constant itemtype ITEM_TYPE_UNKNOWN = ConvertItemType(7) + constant itemtype ITEM_TYPE_ANY = ConvertItemType(8) + + // Deprecated, should use ITEM_TYPE_POWERUP + constant itemtype ITEM_TYPE_TOME = ConvertItemType(2) + +//=================================================== +// Animatable Camera Fields +//=================================================== + + constant camerafield CAMERA_FIELD_TARGET_DISTANCE = ConvertCameraField(0) + constant camerafield CAMERA_FIELD_FARZ = ConvertCameraField(1) + constant camerafield CAMERA_FIELD_ANGLE_OF_ATTACK = ConvertCameraField(2) + constant camerafield CAMERA_FIELD_FIELD_OF_VIEW = ConvertCameraField(3) + constant camerafield CAMERA_FIELD_ROLL = ConvertCameraField(4) + constant camerafield CAMERA_FIELD_ROTATION = ConvertCameraField(5) + constant camerafield CAMERA_FIELD_ZOFFSET = ConvertCameraField(6) + + constant blendmode BLEND_MODE_NONE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_DONT_CARE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_KEYALPHA = ConvertBlendMode(1) + constant blendmode BLEND_MODE_BLEND = ConvertBlendMode(2) + constant blendmode BLEND_MODE_ADDITIVE = ConvertBlendMode(3) + constant blendmode BLEND_MODE_MODULATE = ConvertBlendMode(4) + constant blendmode BLEND_MODE_MODULATE_2X = ConvertBlendMode(5) + + constant raritycontrol RARITY_FREQUENT = ConvertRarityControl(0) + constant raritycontrol RARITY_RARE = ConvertRarityControl(1) + + constant texmapflags TEXMAP_FLAG_NONE = ConvertTexMapFlags(0) + constant texmapflags TEXMAP_FLAG_WRAP_U = ConvertTexMapFlags(1) + constant texmapflags TEXMAP_FLAG_WRAP_V = ConvertTexMapFlags(2) + constant texmapflags TEXMAP_FLAG_WRAP_UV = ConvertTexMapFlags(3) + + constant fogstate FOG_OF_WAR_MASKED = ConvertFogState(1) + constant fogstate FOG_OF_WAR_FOGGED = ConvertFogState(2) + constant fogstate FOG_OF_WAR_VISIBLE = ConvertFogState(4) + +//=================================================== +// Camera Margin constants for use with GetCameraMargin +//=================================================== + + constant integer CAMERA_MARGIN_LEFT = 0 + constant integer CAMERA_MARGIN_RIGHT = 1 + constant integer CAMERA_MARGIN_TOP = 2 + constant integer CAMERA_MARGIN_BOTTOM = 3 + +//=================================================== +// Effect API constants +//=================================================== + + constant effecttype EFFECT_TYPE_EFFECT = ConvertEffectType(0) + constant effecttype EFFECT_TYPE_TARGET = ConvertEffectType(1) + constant effecttype EFFECT_TYPE_CASTER = ConvertEffectType(2) + constant effecttype EFFECT_TYPE_SPECIAL = ConvertEffectType(3) + constant effecttype EFFECT_TYPE_AREA_EFFECT = ConvertEffectType(4) + constant effecttype EFFECT_TYPE_MISSILE = ConvertEffectType(5) + constant effecttype EFFECT_TYPE_LIGHTNING = ConvertEffectType(6) + + constant soundtype SOUND_TYPE_EFFECT = ConvertSoundType(0) + constant soundtype SOUND_TYPE_EFFECT_LOOPED = ConvertSoundType(1) + +endglobals + +//============================================================================ +// MathAPI +native Deg2Rad takes real degrees returns real +native Rad2Deg takes real radians returns real + +native Sin takes real radians returns real +native Cos takes real radians returns real +native Tan takes real radians returns real + +// Expect values between -1 and 1...returns 0 for invalid input +native Asin takes real y returns real +native Acos takes real x returns real + +native Atan takes real x returns real + +// Returns 0 if x and y are both 0 +native Atan2 takes real y, real x returns real + +// Returns 0 if x <= 0 +native SquareRoot takes real x returns real + +// computes x to the y power +// y == 0.0 => 1 +// x ==0.0 and y < 0 => 0 +// +native Pow takes real x, real power returns real + +//============================================================================ +// String Utility API +native I2R takes integer i returns real +native R2I takes real r returns integer +native I2S takes integer i returns string +native R2S takes real r returns string +native R2SW takes real r, integer width, integer precision returns string +native S2I takes string s returns integer +native S2R takes string s returns real +native GetHandleId takes handle h returns integer +native SubString takes string source, integer start, integer end returns string +native StringLength takes string s returns integer +native StringCase takes string source, boolean upper returns string +native StringHash takes string s returns integer + +native GetLocalizedString takes string source returns string +native GetLocalizedHotkey takes string source returns integer + +//============================================================================ +// Map Setup API +// +// These are native functions for describing the map configuration +// these funcs should only be used in the "config" function of +// a map script. The functions should also be called in this order +// ( i.e. call SetPlayers before SetPlayerColor... +// + +native SetMapName takes string name returns nothing +native SetMapDescription takes string description returns nothing + +native SetTeams takes integer teamcount returns nothing +native SetPlayers takes integer playercount returns nothing + +native DefineStartLocation takes integer whichStartLoc, real x, real y returns nothing +native DefineStartLocationLoc takes integer whichStartLoc, location whichLocation returns nothing +native SetStartLocPrioCount takes integer whichStartLoc, integer prioSlotCount returns nothing +native SetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex, integer otherStartLocIndex, startlocprio priority returns nothing +native GetStartLocPrioSlot takes integer whichStartLoc, integer prioSlotIndex returns integer +native GetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex returns startlocprio + +native SetGameTypeSupported takes gametype whichGameType, boolean value returns nothing +native SetMapFlag takes mapflag whichMapFlag, boolean value returns nothing +native SetGamePlacement takes placement whichPlacementType returns nothing +native SetGameSpeed takes gamespeed whichspeed returns nothing +native SetGameDifficulty takes gamedifficulty whichdifficulty returns nothing +native SetResourceDensity takes mapdensity whichdensity returns nothing +native SetCreatureDensity takes mapdensity whichdensity returns nothing + +native GetTeams takes nothing returns integer +native GetPlayers takes nothing returns integer + +native IsGameTypeSupported takes gametype whichGameType returns boolean +native GetGameTypeSelected takes nothing returns gametype +native IsMapFlagSet takes mapflag whichMapFlag returns boolean + +constant native GetGamePlacement takes nothing returns placement +constant native GetGameSpeed takes nothing returns gamespeed +constant native GetGameDifficulty takes nothing returns gamedifficulty +constant native GetResourceDensity takes nothing returns mapdensity +constant native GetCreatureDensity takes nothing returns mapdensity +constant native GetStartLocationX takes integer whichStartLocation returns real +constant native GetStartLocationY takes integer whichStartLocation returns real +constant native GetStartLocationLoc takes integer whichStartLocation returns location + + +native SetPlayerTeam takes player whichPlayer, integer whichTeam returns nothing +native SetPlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +// forces player to have the specified start loc and marks the start loc as occupied +// which removes it from consideration for subsequently placed players +// ( i.e. you can use this to put people in a fixed loc and then +// use random placement for any unplaced players etc ) +native ForcePlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +native SetPlayerColor takes player whichPlayer, playercolor color returns nothing +native SetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting, boolean value returns nothing +native SetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource, integer rate returns nothing +native SetPlayerRacePreference takes player whichPlayer, racepreference whichRacePreference returns nothing +native SetPlayerRaceSelectable takes player whichPlayer, boolean value returns nothing +native SetPlayerController takes player whichPlayer, mapcontrol controlType returns nothing +native SetPlayerName takes player whichPlayer, string name returns nothing + +native SetPlayerOnScoreScreen takes player whichPlayer, boolean flag returns nothing + +native GetPlayerTeam takes player whichPlayer returns integer +native GetPlayerStartLocation takes player whichPlayer returns integer +native GetPlayerColor takes player whichPlayer returns playercolor +native GetPlayerSelectable takes player whichPlayer returns boolean +native GetPlayerController takes player whichPlayer returns mapcontrol +native GetPlayerSlotState takes player whichPlayer returns playerslotstate +native GetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource returns integer +native IsPlayerRacePrefSet takes player whichPlayer, racepreference pref returns boolean +native GetPlayerName takes player whichPlayer returns string + +//============================================================================ +// Timer API +// +native CreateTimer takes nothing returns timer +native DestroyTimer takes timer whichTimer returns nothing +native TimerStart takes timer whichTimer, real timeout, boolean periodic, code handlerFunc returns nothing +native TimerGetElapsed takes timer whichTimer returns real +native TimerGetRemaining takes timer whichTimer returns real +native TimerGetTimeout takes timer whichTimer returns real +native PauseTimer takes timer whichTimer returns nothing +native ResumeTimer takes timer whichTimer returns nothing +native GetExpiredTimer takes nothing returns timer + +//============================================================================ +// Group API +// +native CreateGroup takes nothing returns group +native DestroyGroup takes group whichGroup returns nothing +native GroupAddUnit takes group whichGroup, unit whichUnit returns nothing +native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing +native GroupClear takes group whichGroup returns nothing +native GroupEnumUnitsOfType takes group whichGroup, string unitname, boolexpr filter returns nothing +native GroupEnumUnitsOfPlayer takes group whichGroup, player whichPlayer, boolexpr filter returns nothing +native GroupEnumUnitsOfTypeCounted takes group whichGroup, string unitname, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRect takes group whichGroup, rect r, boolexpr filter returns nothing +native GroupEnumUnitsInRectCounted takes group whichGroup, rect r, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRange takes group whichGroup, real x, real y, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeOfLoc takes group whichGroup, location whichLocation, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeCounted takes group whichGroup, real x, real y, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRangeOfLocCounted takes group whichGroup, location whichLocation, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsSelected takes group whichGroup, player whichPlayer, boolexpr filter returns nothing + +native GroupImmediateOrder takes group whichGroup, string order returns boolean +native GroupImmediateOrderById takes group whichGroup, integer order returns boolean +native GroupPointOrder takes group whichGroup, string order, real x, real y returns boolean +native GroupPointOrderLoc takes group whichGroup, string order, location whichLocation returns boolean +native GroupPointOrderById takes group whichGroup, integer order, real x, real y returns boolean +native GroupPointOrderByIdLoc takes group whichGroup, integer order, location whichLocation returns boolean +native GroupTargetOrder takes group whichGroup, string order, widget targetWidget returns boolean +native GroupTargetOrderById takes group whichGroup, integer order, widget targetWidget returns boolean + +// This will be difficult to support with potentially disjoint, cell-based regions +// as it would involve enumerating all the cells that are covered by a particularregion +// a better implementation would be a trigger that adds relevant units as they enter +// and removes them if they leave... +native ForGroup takes group whichGroup, code callback returns nothing +native FirstOfGroup takes group whichGroup returns unit + +//============================================================================ +// Force API +// +native CreateForce takes nothing returns force +native DestroyForce takes force whichForce returns nothing +native ForceAddPlayer takes force whichForce, player whichPlayer returns nothing +native ForceRemovePlayer takes force whichForce, player whichPlayer returns nothing +native ForceClear takes force whichForce returns nothing +native ForceEnumPlayers takes force whichForce, boolexpr filter returns nothing +native ForceEnumPlayersCounted takes force whichForce, boolexpr filter, integer countLimit returns nothing +native ForceEnumAllies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForceEnumEnemies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForForce takes force whichForce, code callback returns nothing + +//============================================================================ +// Region and Location API +// +native Rect takes real minx, real miny, real maxx, real maxy returns rect +native RectFromLoc takes location min, location max returns rect +native RemoveRect takes rect whichRect returns nothing +native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing +native SetRectFromLoc takes rect whichRect, location min, location max returns nothing +native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing +native MoveRectToLoc takes rect whichRect, location newCenterLoc returns nothing + +native GetRectCenterX takes rect whichRect returns real +native GetRectCenterY takes rect whichRect returns real +native GetRectMinX takes rect whichRect returns real +native GetRectMinY takes rect whichRect returns real +native GetRectMaxX takes rect whichRect returns real +native GetRectMaxY takes rect whichRect returns real + +native CreateRegion takes nothing returns region +native RemoveRegion takes region whichRegion returns nothing + +native RegionAddRect takes region whichRegion, rect r returns nothing +native RegionClearRect takes region whichRegion, rect r returns nothing + +native RegionAddCell takes region whichRegion, real x, real y returns nothing +native RegionAddCellAtLoc takes region whichRegion, location whichLocation returns nothing +native RegionClearCell takes region whichRegion, real x, real y returns nothing +native RegionClearCellAtLoc takes region whichRegion, location whichLocation returns nothing + +native Location takes real x, real y returns location +native RemoveLocation takes location whichLocation returns nothing +native MoveLocation takes location whichLocation, real newX, real newY returns nothing +native GetLocationX takes location whichLocation returns real +native GetLocationY takes location whichLocation returns real + +// This function is asynchronous. The values it returns are not guaranteed synchronous between each player. +// If you attempt to use it in a synchronous manner, it may cause a desync. +native GetLocationZ takes location whichLocation returns real + +native IsUnitInRegion takes region whichRegion, unit whichUnit returns boolean +native IsPointInRegion takes region whichRegion, real x, real y returns boolean +native IsLocationInRegion takes region whichRegion, location whichLocation returns boolean + +// Returns full map bounds, including unplayable borders, in world coordinates +native GetWorldBounds takes nothing returns rect + +//============================================================================ +// Native trigger interface +// +native CreateTrigger takes nothing returns trigger +native DestroyTrigger takes trigger whichTrigger returns nothing +native ResetTrigger takes trigger whichTrigger returns nothing +native EnableTrigger takes trigger whichTrigger returns nothing +native DisableTrigger takes trigger whichTrigger returns nothing +native IsTriggerEnabled takes trigger whichTrigger returns boolean + +native TriggerWaitOnSleeps takes trigger whichTrigger, boolean flag returns nothing +native IsTriggerWaitOnSleeps takes trigger whichTrigger returns boolean + +constant native GetFilterUnit takes nothing returns unit +constant native GetEnumUnit takes nothing returns unit + +constant native GetFilterDestructable takes nothing returns destructable +constant native GetEnumDestructable takes nothing returns destructable + +constant native GetFilterItem takes nothing returns item +constant native GetEnumItem takes nothing returns item + +constant native GetFilterPlayer takes nothing returns player +constant native GetEnumPlayer takes nothing returns player + +constant native GetTriggeringTrigger takes nothing returns trigger +constant native GetTriggerEventId takes nothing returns eventid +constant native GetTriggerEvalCount takes trigger whichTrigger returns integer +constant native GetTriggerExecCount takes trigger whichTrigger returns integer + +native ExecuteFunc takes string funcName returns nothing + +//============================================================================ +// Boolean Expr API ( for compositing trigger conditions and unit filter funcs...) +//============================================================================ +native And takes boolexpr operandA, boolexpr operandB returns boolexpr +native Or takes boolexpr operandA, boolexpr operandB returns boolexpr +native Not takes boolexpr operand returns boolexpr +native Condition takes code func returns conditionfunc +native DestroyCondition takes conditionfunc c returns nothing +native Filter takes code func returns filterfunc +native DestroyFilter takes filterfunc f returns nothing +native DestroyBoolExpr takes boolexpr e returns nothing + +//============================================================================ +// Trigger Game Event API +//============================================================================ + +native TriggerRegisterVariableEvent takes trigger whichTrigger, string varName, limitop opcode, real limitval returns event + + // EVENT_GAME_VARIABLE_LIMIT + //constant native string GetTriggeringVariableName takes nothing returns string + +// Creates it's own timer and triggers when it expires +native TriggerRegisterTimerEvent takes trigger whichTrigger, real timeout, boolean periodic returns event + +// Triggers when the timer you tell it about expires +native TriggerRegisterTimerExpireEvent takes trigger whichTrigger, timer t returns event + +native TriggerRegisterGameStateEvent takes trigger whichTrigger, gamestate whichState, limitop opcode, real limitval returns event + +native TriggerRegisterDialogEvent takes trigger whichTrigger, dialog whichDialog returns event +native TriggerRegisterDialogButtonEvent takes trigger whichTrigger, button whichButton returns event + +// EVENT_GAME_STATE_LIMIT +constant native GetEventGameState takes nothing returns gamestate + +native TriggerRegisterGameEvent takes trigger whichTrigger, gameevent whichGameEvent returns event + +// EVENT_GAME_VICTORY +constant native GetWinningPlayer takes nothing returns player + + +native TriggerRegisterEnterRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event + +// EVENT_GAME_ENTER_REGION +constant native GetTriggeringRegion takes nothing returns region +constant native GetEnteringUnit takes nothing returns unit + +// EVENT_GAME_LEAVE_REGION + +native TriggerRegisterLeaveRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event +constant native GetLeavingUnit takes nothing returns unit + +native TriggerRegisterTrackableHitEvent takes trigger whichTrigger, trackable t returns event +native TriggerRegisterTrackableTrackEvent takes trigger whichTrigger, trackable t returns event + +// EVENT_GAME_TRACKABLE_HIT +// EVENT_GAME_TRACKABLE_TRACK +constant native GetTriggeringTrackable takes nothing returns trackable + +// EVENT_DIALOG_BUTTON_CLICK +constant native GetClickedButton takes nothing returns button +constant native GetClickedDialog takes nothing returns dialog + +// EVENT_GAME_TOURNAMENT_FINISH_SOON +constant native GetTournamentFinishSoonTimeRemaining takes nothing returns real +constant native GetTournamentFinishNowRule takes nothing returns integer +constant native GetTournamentFinishNowPlayer takes nothing returns player +constant native GetTournamentScore takes player whichPlayer returns integer + +// EVENT_GAME_SAVE +constant native GetSaveBasicFilename takes nothing returns string + +//============================================================================ +// Trigger Player Based Event API +//============================================================================ + +native TriggerRegisterPlayerEvent takes trigger whichTrigger, player whichPlayer, playerevent whichPlayerEvent returns event + +// EVENT_PLAYER_DEFEAT +// EVENT_PLAYER_VICTORY +constant native GetTriggerPlayer takes nothing returns player + +native TriggerRegisterPlayerUnitEvent takes trigger whichTrigger, player whichPlayer, playerunitevent whichPlayerUnitEvent, boolexpr filter returns event + +// EVENT_PLAYER_HERO_LEVEL +// EVENT_UNIT_HERO_LEVEL +constant native GetLevelingUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_SKILL +// EVENT_UNIT_HERO_SKILL +constant native GetLearningUnit takes nothing returns unit +constant native GetLearnedSkill takes nothing returns integer +constant native GetLearnedSkillLevel takes nothing returns integer + +// EVENT_PLAYER_HERO_REVIVABLE +constant native GetRevivableUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_REVIVE_START +// EVENT_PLAYER_HERO_REVIVE_CANCEL +// EVENT_PLAYER_HERO_REVIVE_FINISH +// EVENT_UNIT_HERO_REVIVE_START +// EVENT_UNIT_HERO_REVIVE_CANCEL +// EVENT_UNIT_HERO_REVIVE_FINISH +constant native GetRevivingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_ATTACKED +constant native GetAttacker takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESCUED +constant native GetRescuer takes nothing returns unit + +// EVENT_PLAYER_UNIT_DEATH +constant native GetDyingUnit takes nothing returns unit +constant native GetKillingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DECAY +constant native GetDecayingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELECTED +//constant native GetSelectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_START +constant native GetConstructingStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_FINISH +// EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL +constant native GetCancelledStructure takes nothing returns unit +constant native GetConstructedStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESEARCH_START +// EVENT_PLAYER_UNIT_RESEARCH_CANCEL +// EVENT_PLAYER_UNIT_RESEARCH_FINISH +constant native GetResearchingUnit takes nothing returns unit +constant native GetResearched takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_START +// EVENT_PLAYER_UNIT_TRAIN_CANCEL +constant native GetTrainedUnitType takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_FINISH +constant native GetTrainedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DETECTED +constant native GetDetectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SUMMONED +constant native GetSummoningUnit takes nothing returns unit +constant native GetSummonedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_LOADED +constant native GetTransportUnit takes nothing returns unit +constant native GetLoadedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL +constant native GetSellingUnit takes nothing returns unit +constant native GetSoldUnit takes nothing returns unit +constant native GetBuyingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL_ITEM +constant native GetSoldItem takes nothing returns item + +// EVENT_PLAYER_UNIT_CHANGE_OWNER +constant native GetChangingUnit takes nothing returns unit +constant native GetChangingUnitPrevOwner takes nothing returns player + +// EVENT_PLAYER_UNIT_DROP_ITEM +// EVENT_PLAYER_UNIT_PICKUP_ITEM +// EVENT_PLAYER_UNIT_USE_ITEM +constant native GetManipulatingUnit takes nothing returns unit +constant native GetManipulatedItem takes nothing returns item + +// EVENT_PLAYER_UNIT_ISSUED_ORDER +constant native GetOrderedUnit takes nothing returns unit +constant native GetIssuedOrderId takes nothing returns integer + +// EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER +constant native GetOrderPointX takes nothing returns real +constant native GetOrderPointY takes nothing returns real +constant native GetOrderPointLoc takes nothing returns location + +// EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER +constant native GetOrderTarget takes nothing returns widget +constant native GetOrderTargetDestructable takes nothing returns destructable +constant native GetOrderTargetItem takes nothing returns item +constant native GetOrderTargetUnit takes nothing returns unit + +// EVENT_UNIT_SPELL_CHANNEL +// EVENT_UNIT_SPELL_CAST +// EVENT_UNIT_SPELL_EFFECT +// EVENT_UNIT_SPELL_FINISH +// EVENT_UNIT_SPELL_ENDCAST +// EVENT_PLAYER_UNIT_SPELL_CHANNEL +// EVENT_PLAYER_UNIT_SPELL_CAST +// EVENT_PLAYER_UNIT_SPELL_EFFECT +// EVENT_PLAYER_UNIT_SPELL_FINISH +// EVENT_PLAYER_UNIT_SPELL_ENDCAST +constant native GetSpellAbilityUnit takes nothing returns unit +constant native GetSpellAbilityId takes nothing returns integer +constant native GetSpellAbility takes nothing returns ability +constant native GetSpellTargetLoc takes nothing returns location +constant native GetSpellTargetX takes nothing returns real +constant native GetSpellTargetY takes nothing returns real +constant native GetSpellTargetDestructable takes nothing returns destructable +constant native GetSpellTargetItem takes nothing returns item +constant native GetSpellTargetUnit takes nothing returns unit + +native TriggerRegisterPlayerAllianceChange takes trigger whichTrigger, player whichPlayer, alliancetype whichAlliance returns event +native TriggerRegisterPlayerStateEvent takes trigger whichTrigger, player whichPlayer, playerstate whichState, limitop opcode, real limitval returns event + +// EVENT_PLAYER_STATE_LIMIT +constant native GetEventPlayerState takes nothing returns playerstate + +native TriggerRegisterPlayerChatEvent takes trigger whichTrigger, player whichPlayer, string chatMessageToDetect, boolean exactMatchOnly returns event + +// EVENT_PLAYER_CHAT + +// returns the actual string they typed in ( same as what you registered for +// if you required exact match ) +constant native GetEventPlayerChatString takes nothing returns string + +// returns the string that you registered for +constant native GetEventPlayerChatStringMatched takes nothing returns string + +native TriggerRegisterDeathEvent takes trigger whichTrigger, widget whichWidget returns event + +//============================================================================ +// Trigger Unit Based Event API +//============================================================================ + +// returns handle to unit which triggered the most recent event when called from +// within a trigger action function...returns null handle when used incorrectly + +constant native GetTriggerUnit takes nothing returns unit + +native TriggerRegisterUnitStateEvent takes trigger whichTrigger, unit whichUnit, unitstate whichState, limitop opcode, real limitval returns event + +// EVENT_UNIT_STATE_LIMIT +constant native GetEventUnitState takes nothing returns unitstate + +native TriggerRegisterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent returns event + +// EVENT_UNIT_DAMAGED +constant native GetEventDamage takes nothing returns real +constant native GetEventDamageSource takes nothing returns unit + +// EVENT_UNIT_DEATH +// EVENT_UNIT_DECAY +// Use the GetDyingUnit and GetDecayingUnit funcs above + +// EVENT_UNIT_DETECTED +constant native GetEventDetectingPlayer takes nothing returns player + +native TriggerRegisterFilterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent, boolexpr filter returns event + +// EVENT_UNIT_ACQUIRED_TARGET +// EVENT_UNIT_TARGET_IN_RANGE +constant native GetEventTargetUnit takes nothing returns unit + +// EVENT_UNIT_ATTACKED +// Use GetAttacker from the Player Unit Event API Below... + +// EVENT_UNIT_RESCUEDED +// Use GetRescuer from the Player Unit Event API Below... + +// EVENT_UNIT_CONSTRUCT_CANCEL +// EVENT_UNIT_CONSTRUCT_FINISH + +// See the Player Unit Construction Event API above for event info funcs + +// EVENT_UNIT_TRAIN_START +// EVENT_UNIT_TRAIN_CANCELLED +// EVENT_UNIT_TRAIN_FINISH + +// See the Player Unit Training Event API above for event info funcs + +// EVENT_UNIT_SELL + +// See the Player Unit Sell Event API above for event info funcs + +// EVENT_UNIT_DROP_ITEM +// EVENT_UNIT_PICKUP_ITEM +// EVENT_UNIT_USE_ITEM +// See the Player Unit/Item manipulation Event API above for event info funcs + +// EVENT_UNIT_ISSUED_ORDER +// EVENT_UNIT_ISSUED_POINT_ORDER +// EVENT_UNIT_ISSUED_TARGET_ORDER + +// See the Player Unit Order Event API above for event info funcs + +native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event + +native TriggerAddCondition takes trigger whichTrigger, boolexpr condition returns triggercondition +native TriggerRemoveCondition takes trigger whichTrigger, triggercondition whichCondition returns nothing +native TriggerClearConditions takes trigger whichTrigger returns nothing + +native TriggerAddAction takes trigger whichTrigger, code actionFunc returns triggeraction +native TriggerRemoveAction takes trigger whichTrigger, triggeraction whichAction returns nothing +native TriggerClearActions takes trigger whichTrigger returns nothing +native TriggerSleepAction takes real timeout returns nothing +native TriggerWaitForSound takes sound s, real offset returns nothing +native TriggerEvaluate takes trigger whichTrigger returns boolean +native TriggerExecute takes trigger whichTrigger returns nothing +native TriggerExecuteWait takes trigger whichTrigger returns nothing +native TriggerSyncStart takes nothing returns nothing +native TriggerSyncReady takes nothing returns nothing + +//============================================================================ +// Widget API +native GetWidgetLife takes widget whichWidget returns real +native SetWidgetLife takes widget whichWidget, real newLife returns nothing +native GetWidgetX takes widget whichWidget returns real +native GetWidgetY takes widget whichWidget returns real +constant native GetTriggerWidget takes nothing returns widget + +//============================================================================ +// Destructable Object API +// Facing arguments are specified in degrees +native CreateDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native CreateDeadDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDeadDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native RemoveDestructable takes destructable d returns nothing +native KillDestructable takes destructable d returns nothing +native SetDestructableInvulnerable takes destructable d, boolean flag returns nothing +native IsDestructableInvulnerable takes destructable d returns boolean +native EnumDestructablesInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetDestructableTypeId takes destructable d returns integer +native GetDestructableX takes destructable d returns real +native GetDestructableY takes destructable d returns real +native SetDestructableLife takes destructable d, real life returns nothing +native GetDestructableLife takes destructable d returns real +native SetDestructableMaxLife takes destructable d, real max returns nothing +native GetDestructableMaxLife takes destructable d returns real +native DestructableRestoreLife takes destructable d, real life, boolean birth returns nothing +native QueueDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimationSpeed takes destructable d, real speedFactor returns nothing +native ShowDestructable takes destructable d, boolean flag returns nothing +native GetDestructableOccluderHeight takes destructable d returns real +native SetDestructableOccluderHeight takes destructable d, real height returns nothing +native GetDestructableName takes destructable d returns string +constant native GetTriggerDestructable takes nothing returns destructable + +//============================================================================ +// Item API +native CreateItem takes integer itemid, real x, real y returns item +native RemoveItem takes item whichItem returns nothing +native GetItemPlayer takes item whichItem returns player +native GetItemTypeId takes item i returns integer +native GetItemX takes item i returns real +native GetItemY takes item i returns real +native SetItemPosition takes item i, real x, real y returns nothing +native SetItemDropOnDeath takes item whichItem, boolean flag returns nothing +native SetItemDroppable takes item i, boolean flag returns nothing +native SetItemPawnable takes item i, boolean flag returns nothing +native SetItemPlayer takes item whichItem, player whichPlayer, boolean changeColor returns nothing +native SetItemInvulnerable takes item whichItem, boolean flag returns nothing +native IsItemInvulnerable takes item whichItem returns boolean +native SetItemVisible takes item whichItem, boolean show returns nothing +native IsItemVisible takes item whichItem returns boolean +native IsItemOwned takes item whichItem returns boolean +native IsItemPowerup takes item whichItem returns boolean +native IsItemSellable takes item whichItem returns boolean +native IsItemPawnable takes item whichItem returns boolean +native IsItemIdPowerup takes integer itemId returns boolean +native IsItemIdSellable takes integer itemId returns boolean +native IsItemIdPawnable takes integer itemId returns boolean +native EnumItemsInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetItemLevel takes item whichItem returns integer +native GetItemType takes item whichItem returns itemtype +native SetItemDropID takes item whichItem, integer unitId returns nothing +constant native GetItemName takes item whichItem returns string +native GetItemCharges takes item whichItem returns integer +native SetItemCharges takes item whichItem, integer charges returns nothing +native GetItemUserData takes item whichItem returns integer +native SetItemUserData takes item whichItem, integer data returns nothing + +//============================================================================ +// Unit API +// Facing arguments are specified in degrees +native CreateUnit takes player id, integer unitid, real x, real y, real face returns unit +native CreateUnitByName takes player whichPlayer, string unitname, real x, real y, real face returns unit +native CreateUnitAtLoc takes player id, integer unitid, location whichLocation, real face returns unit +native CreateUnitAtLocByName takes player id, string unitname, location whichLocation, real face returns unit +native CreateCorpse takes player whichPlayer, integer unitid, real x, real y, real face returns unit + +native KillUnit takes unit whichUnit returns nothing +native RemoveUnit takes unit whichUnit returns nothing +native ShowUnit takes unit whichUnit, boolean show returns nothing + +native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing +native SetUnitX takes unit whichUnit, real newX returns nothing +native SetUnitY takes unit whichUnit, real newY returns nothing +native SetUnitPosition takes unit whichUnit, real newX, real newY returns nothing +native SetUnitPositionLoc takes unit whichUnit, location whichLocation returns nothing +native SetUnitFacing takes unit whichUnit, real facingAngle returns nothing +native SetUnitFacingTimed takes unit whichUnit, real facingAngle, real duration returns nothing +native SetUnitMoveSpeed takes unit whichUnit, real newSpeed returns nothing +native SetUnitFlyHeight takes unit whichUnit, real newHeight, real rate returns nothing +native SetUnitTurnSpeed takes unit whichUnit, real newTurnSpeed returns nothing +native SetUnitPropWindow takes unit whichUnit, real newPropWindowAngle returns nothing +native SetUnitAcquireRange takes unit whichUnit, real newAcquireRange returns nothing +native SetUnitCreepGuard takes unit whichUnit, boolean creepGuard returns nothing + +native GetUnitAcquireRange takes unit whichUnit returns real +native GetUnitTurnSpeed takes unit whichUnit returns real +native GetUnitPropWindow takes unit whichUnit returns real +native GetUnitFlyHeight takes unit whichUnit returns real + +native GetUnitDefaultAcquireRange takes unit whichUnit returns real +native GetUnitDefaultTurnSpeed takes unit whichUnit returns real +native GetUnitDefaultPropWindow takes unit whichUnit returns real +native GetUnitDefaultFlyHeight takes unit whichUnit returns real + +native SetUnitOwner takes unit whichUnit, player whichPlayer, boolean changeColor returns nothing +native SetUnitColor takes unit whichUnit, playercolor whichColor returns nothing + +native SetUnitScale takes unit whichUnit, real scaleX, real scaleY, real scaleZ returns nothing +native SetUnitTimeScale takes unit whichUnit, real timeScale returns nothing +native SetUnitBlendTime takes unit whichUnit, real blendTime returns nothing +native SetUnitVertexColor takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing + +native QueueUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing +native SetUnitAnimationWithRarity takes unit whichUnit, string whichAnimation, raritycontrol rarity returns nothing +native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing + +native SetUnitLookAt takes unit whichUnit, string whichBone, unit lookAtTarget, real offsetX, real offsetY, real offsetZ returns nothing +native ResetUnitLookAt takes unit whichUnit returns nothing + +native SetUnitRescuable takes unit whichUnit, player byWhichPlayer, boolean flag returns nothing +native SetUnitRescueRange takes unit whichUnit, real range returns nothing + +native SetHeroStr takes unit whichHero, integer newStr, boolean permanent returns nothing +native SetHeroAgi takes unit whichHero, integer newAgi, boolean permanent returns nothing +native SetHeroInt takes unit whichHero, integer newInt, boolean permanent returns nothing + +native GetHeroStr takes unit whichHero, boolean includeBonuses returns integer +native GetHeroAgi takes unit whichHero, boolean includeBonuses returns integer +native GetHeroInt takes unit whichHero, boolean includeBonuses returns integer + +native UnitStripHeroLevel takes unit whichHero, integer howManyLevels returns boolean + +native GetHeroXP takes unit whichHero returns integer +native SetHeroXP takes unit whichHero, integer newXpVal, boolean showEyeCandy returns nothing + +native GetHeroSkillPoints takes unit whichHero returns integer +native UnitModifySkillPoints takes unit whichHero, integer skillPointDelta returns boolean + +native AddHeroXP takes unit whichHero, integer xpToAdd, boolean showEyeCandy returns nothing +native SetHeroLevel takes unit whichHero, integer level, boolean showEyeCandy returns nothing +constant native GetHeroLevel takes unit whichHero returns integer +constant native GetUnitLevel takes unit whichUnit returns integer +native GetHeroProperName takes unit whichHero returns string +native SuspendHeroXP takes unit whichHero, boolean flag returns nothing +native IsSuspendedXP takes unit whichHero returns boolean +native SelectHeroSkill takes unit whichHero, integer abilcode returns nothing +native GetUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native DecUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native IncUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native SetUnitAbilityLevel takes unit whichUnit, integer abilcode, integer level returns integer +native ReviveHero takes unit whichHero, real x, real y, boolean doEyecandy returns boolean +native ReviveHeroLoc takes unit whichHero, location loc, boolean doEyecandy returns boolean +native SetUnitExploded takes unit whichUnit, boolean exploded returns nothing +native SetUnitInvulnerable takes unit whichUnit, boolean flag returns nothing +native PauseUnit takes unit whichUnit, boolean flag returns nothing +native IsUnitPaused takes unit whichHero returns boolean +native SetUnitPathing takes unit whichUnit, boolean flag returns nothing + +native ClearSelection takes nothing returns nothing +native SelectUnit takes unit whichUnit, boolean flag returns nothing + +native GetUnitPointValue takes unit whichUnit returns integer +native GetUnitPointValueByType takes integer unitType returns integer +//native SetUnitPointValueByType takes integer unitType, integer newPointValue returns nothing + +native UnitAddItem takes unit whichUnit, item whichItem returns boolean +native UnitAddItemById takes unit whichUnit, integer itemId returns item +native UnitAddItemToSlotById takes unit whichUnit, integer itemId, integer itemSlot returns boolean +native UnitRemoveItem takes unit whichUnit, item whichItem returns nothing +native UnitRemoveItemFromSlot takes unit whichUnit, integer itemSlot returns item +native UnitHasItem takes unit whichUnit, item whichItem returns boolean +native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item +native UnitInventorySize takes unit whichUnit returns integer + +native UnitDropItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitDropItemSlot takes unit whichUnit, item whichItem, integer slot returns boolean +native UnitDropItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +native UnitUseItem takes unit whichUnit, item whichItem returns boolean +native UnitUseItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitUseItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +constant native GetUnitX takes unit whichUnit returns real +constant native GetUnitY takes unit whichUnit returns real +constant native GetUnitLoc takes unit whichUnit returns location +constant native GetUnitFacing takes unit whichUnit returns real +constant native GetUnitMoveSpeed takes unit whichUnit returns real +constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real +constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real +constant native GetOwningPlayer takes unit whichUnit returns player +constant native GetUnitTypeId takes unit whichUnit returns integer +constant native GetUnitRace takes unit whichUnit returns race +constant native GetUnitName takes unit whichUnit returns string +constant native GetUnitFoodUsed takes unit whichUnit returns integer +constant native GetUnitFoodMade takes unit whichUnit returns integer +constant native GetFoodMade takes integer unitId returns integer +constant native GetFoodUsed takes integer unitId returns integer +native SetUnitUseFood takes unit whichUnit, boolean useFood returns nothing + +constant native GetUnitRallyPoint takes unit whichUnit returns location +constant native GetUnitRallyUnit takes unit whichUnit returns unit +constant native GetUnitRallyDestructable takes unit whichUnit returns destructable + +constant native IsUnitInGroup takes unit whichUnit, group whichGroup returns boolean +constant native IsUnitInForce takes unit whichUnit, force whichForce returns boolean +constant native IsUnitOwnedByPlayer takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitEnemy takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitVisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitDetected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitInvisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitFogged takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitMasked takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitSelected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitRace takes unit whichUnit, race whichRace returns boolean +constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean +constant native IsUnit takes unit whichUnit, unit whichSpecifiedUnit returns boolean +constant native IsUnitInRange takes unit whichUnit, unit otherUnit, real distance returns boolean +constant native IsUnitInRangeXY takes unit whichUnit, real x, real y, real distance returns boolean +constant native IsUnitInRangeLoc takes unit whichUnit, location whichLocation, real distance returns boolean +constant native IsUnitHidden takes unit whichUnit returns boolean +constant native IsUnitIllusion takes unit whichUnit returns boolean + +constant native IsUnitInTransport takes unit whichUnit, unit whichTransport returns boolean +constant native IsUnitLoaded takes unit whichUnit returns boolean + +constant native IsHeroUnitId takes integer unitId returns boolean +constant native IsUnitIdType takes integer unitId, unittype whichUnitType returns boolean + +native UnitShareVision takes unit whichUnit, player whichPlayer, boolean share returns nothing +native UnitSuspendDecay takes unit whichUnit, boolean suspend returns nothing +native UnitAddType takes unit whichUnit, unittype whichUnitType returns boolean +native UnitRemoveType takes unit whichUnit, unittype whichUnitType returns boolean + +native UnitAddAbility takes unit whichUnit, integer abilityId returns boolean +native UnitRemoveAbility takes unit whichUnit, integer abilityId returns boolean +native UnitMakeAbilityPermanent takes unit whichUnit, boolean permanent, integer abilityId returns boolean +native UnitRemoveBuffs takes unit whichUnit, boolean removePositive, boolean removeNegative returns nothing +native UnitRemoveBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns nothing +native UnitHasBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean +native UnitCountBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns integer +native UnitAddSleep takes unit whichUnit, boolean add returns nothing +native UnitCanSleep takes unit whichUnit returns boolean +native UnitAddSleepPerm takes unit whichUnit, boolean add returns nothing +native UnitCanSleepPerm takes unit whichUnit returns boolean +native UnitIsSleeping takes unit whichUnit returns boolean +native UnitWakeUp takes unit whichUnit returns nothing +native UnitApplyTimedLife takes unit whichUnit, integer buffId, real duration returns nothing +native UnitIgnoreAlarm takes unit whichUnit, boolean flag returns boolean +native UnitIgnoreAlarmToggled takes unit whichUnit returns boolean +native UnitResetCooldown takes unit whichUnit returns nothing +native UnitSetConstructionProgress takes unit whichUnit, integer constructionPercentage returns nothing +native UnitSetUpgradeProgress takes unit whichUnit, integer upgradePercentage returns nothing +native UnitPauseTimedLife takes unit whichUnit, boolean flag returns nothing +native UnitSetUsesAltIcon takes unit whichUnit, boolean flag returns nothing + +native UnitDamagePoint takes unit whichUnit, real delay, real radius, real x, real y, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean +native UnitDamageTarget takes unit whichUnit, widget target, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean + +native IssueImmediateOrder takes unit whichUnit, string order returns boolean +native IssueImmediateOrderById takes unit whichUnit, integer order returns boolean +native IssuePointOrder takes unit whichUnit, string order, real x, real y returns boolean +native IssuePointOrderLoc takes unit whichUnit, string order, location whichLocation returns boolean +native IssuePointOrderById takes unit whichUnit, integer order, real x, real y returns boolean +native IssuePointOrderByIdLoc takes unit whichUnit, integer order, location whichLocation returns boolean +native IssueTargetOrder takes unit whichUnit, string order, widget targetWidget returns boolean +native IssueTargetOrderById takes unit whichUnit, integer order, widget targetWidget returns boolean +native IssueInstantPointOrder takes unit whichUnit, string order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantPointOrderById takes unit whichUnit, integer order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantTargetOrder takes unit whichUnit, string order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueInstantTargetOrderById takes unit whichUnit, integer order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueBuildOrder takes unit whichPeon, string unitToBuild, real x, real y returns boolean +native IssueBuildOrderById takes unit whichPeon, integer unitId, real x, real y returns boolean + +native IssueNeutralImmediateOrder takes player forWhichPlayer, unit neutralStructure, string unitToBuild returns boolean +native IssueNeutralImmediateOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId returns boolean +native IssueNeutralPointOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, real x, real y returns boolean +native IssueNeutralPointOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, real x, real y returns boolean +native IssueNeutralTargetOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, widget target returns boolean +native IssueNeutralTargetOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, widget target returns boolean + +native GetUnitCurrentOrder takes unit whichUnit returns integer + +native SetResourceAmount takes unit whichUnit, integer amount returns nothing +native AddResourceAmount takes unit whichUnit, integer amount returns nothing +native GetResourceAmount takes unit whichUnit returns integer + +native WaygateGetDestinationX takes unit waygate returns real +native WaygateGetDestinationY takes unit waygate returns real +native WaygateSetDestination takes unit waygate, real x, real y returns nothing +native WaygateActivate takes unit waygate, boolean activate returns nothing +native WaygateIsActive takes unit waygate returns boolean + +native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing +native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing +native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing +native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing + +native RemoveItemFromAllStock takes integer itemId returns nothing +native RemoveItemFromStock takes unit whichUnit, integer itemId returns nothing +native RemoveUnitFromAllStock takes integer unitId returns nothing +native RemoveUnitFromStock takes unit whichUnit, integer unitId returns nothing + +native SetAllItemTypeSlots takes integer slots returns nothing +native SetAllUnitTypeSlots takes integer slots returns nothing +native SetItemTypeSlots takes unit whichUnit, integer slots returns nothing +native SetUnitTypeSlots takes unit whichUnit, integer slots returns nothing + +native GetUnitUserData takes unit whichUnit returns integer +native SetUnitUserData takes unit whichUnit, integer data returns nothing + +//============================================================================ +// Player API +constant native Player takes integer number returns player +constant native GetLocalPlayer takes nothing returns player +constant native IsPlayerAlly takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerEnemy takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerInForce takes player whichPlayer, force whichForce returns boolean +constant native IsPlayerObserver takes player whichPlayer returns boolean +constant native IsVisibleToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationVisibleToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsFoggedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationFoggedToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsMaskedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationMaskedToPlayer takes location whichLocation, player whichPlayer returns boolean + +constant native GetPlayerRace takes player whichPlayer returns race +constant native GetPlayerId takes player whichPlayer returns integer +constant native GetPlayerUnitCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerTypedUnitCount takes player whichPlayer, string unitName, boolean includeIncomplete, boolean includeUpgrades returns integer +constant native GetPlayerStructureCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerState takes player whichPlayer, playerstate whichPlayerState returns integer +constant native GetPlayerScore takes player whichPlayer, playerscore whichPlayerScore returns integer +constant native GetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting returns boolean + +constant native GetPlayerHandicap takes player whichPlayer returns real +constant native GetPlayerHandicapXP takes player whichPlayer returns real +constant native SetPlayerHandicap takes player whichPlayer, real handicap returns nothing +constant native SetPlayerHandicapXP takes player whichPlayer, real handicap returns nothing + +constant native SetPlayerTechMaxAllowed takes player whichPlayer, integer techid, integer maximum returns nothing +constant native GetPlayerTechMaxAllowed takes player whichPlayer, integer techid returns integer +constant native AddPlayerTechResearched takes player whichPlayer, integer techid, integer levels returns nothing +constant native SetPlayerTechResearched takes player whichPlayer, integer techid, integer setToLevel returns nothing +constant native GetPlayerTechResearched takes player whichPlayer, integer techid, boolean specificonly returns boolean +constant native GetPlayerTechCount takes player whichPlayer, integer techid, boolean specificonly returns integer + +native SetPlayerUnitsOwner takes player whichPlayer, integer newOwner returns nothing +native CripplePlayer takes player whichPlayer, force toWhichPlayers, boolean flag returns nothing + +native SetPlayerAbilityAvailable takes player whichPlayer, integer abilid, boolean avail returns nothing + +native SetPlayerState takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing +native RemovePlayer takes player whichPlayer, playergameresult gameResult returns nothing + +// Used to store hero level data for the scorescreen +// before units are moved to neutral passive in melee games +// +native CachePlayerHeroData takes player whichPlayer returns nothing + +//============================================================================ +// Fog of War API +native SetFogStateRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision returns nothing +native SetFogStateRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision returns nothing +native SetFogStateRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision returns nothing +native FogMaskEnable takes boolean enable returns nothing +native IsFogMaskEnabled takes nothing returns boolean +native FogEnable takes boolean enable returns nothing +native IsFogEnabled takes nothing returns boolean + +native CreateFogModifierRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native DestroyFogModifier takes fogmodifier whichFogModifier returns nothing +native FogModifierStart takes fogmodifier whichFogModifier returns nothing +native FogModifierStop takes fogmodifier whichFogModifier returns nothing + +//============================================================================ +// Game API +native VersionGet takes nothing returns version +native VersionCompatible takes version whichVersion returns boolean +native VersionSupported takes version whichVersion returns boolean + +native EndGame takes boolean doScoreScreen returns nothing + +// Async only! +native ChangeLevel takes string newLevel, boolean doScoreScreen returns nothing +native RestartGame takes boolean doScoreScreen returns nothing +native ReloadGame takes nothing returns nothing +// %%% SetCampaignMenuRace is deprecated. It must remain to support +// old maps which use it, but all new maps should use SetCampaignMenuRaceEx +native SetCampaignMenuRace takes race r returns nothing +native SetCampaignMenuRaceEx takes integer campaignIndex returns nothing +native ForceCampaignSelectScreen takes nothing returns nothing + +native LoadGame takes string saveFileName, boolean doScoreScreen returns nothing +native SaveGame takes string saveFileName returns nothing +native RenameSaveDirectory takes string sourceDirName, string destDirName returns boolean +native RemoveSaveDirectory takes string sourceDirName returns boolean +native CopySaveGame takes string sourceSaveName, string destSaveName returns boolean +native SaveGameExists takes string saveName returns boolean +native SyncSelections takes nothing returns nothing +native SetFloatGameState takes fgamestate whichFloatGameState, real value returns nothing +constant native GetFloatGameState takes fgamestate whichFloatGameState returns real +native SetIntegerGameState takes igamestate whichIntegerGameState, integer value returns nothing +constant native GetIntegerGameState takes igamestate whichIntegerGameState returns integer + + +//============================================================================ +// Campaign API +native SetTutorialCleared takes boolean cleared returns nothing +native SetMissionAvailable takes integer campaignNumber, integer missionNumber, boolean available returns nothing +native SetCampaignAvailable takes integer campaignNumber, boolean available returns nothing +native SetOpCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native SetEdCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native GetDefaultDifficulty takes nothing returns gamedifficulty +native SetDefaultDifficulty takes gamedifficulty g returns nothing +native SetCustomCampaignButtonVisible takes integer whichButton, boolean visible returns nothing +native GetCustomCampaignButtonVisible takes integer whichButton returns boolean +native DoNotSaveReplay takes nothing returns nothing + +//============================================================================ +// Dialog API +native DialogCreate takes nothing returns dialog +native DialogDestroy takes dialog whichDialog returns nothing +native DialogClear takes dialog whichDialog returns nothing +native DialogSetMessage takes dialog whichDialog, string messageText returns nothing +native DialogAddButton takes dialog whichDialog, string buttonText, integer hotkey returns button +native DialogAddQuitButton takes dialog whichDialog, boolean doScoreScreen, string buttonText, integer hotkey returns button +native DialogDisplay takes player whichPlayer, dialog whichDialog, boolean flag returns nothing + +// Creates a new or reads in an existing game cache file stored +// in the current campaign profile dir +// +native ReloadGameCachesFromDisk takes nothing returns boolean + +native InitGameCache takes string campaignFile returns gamecache +native SaveGameCache takes gamecache whichCache returns boolean + +native StoreInteger takes gamecache cache, string missionKey, string key, integer value returns nothing +native StoreReal takes gamecache cache, string missionKey, string key, real value returns nothing +native StoreBoolean takes gamecache cache, string missionKey, string key, boolean value returns nothing +native StoreUnit takes gamecache cache, string missionKey, string key, unit whichUnit returns boolean +native StoreString takes gamecache cache, string missionKey, string key, string value returns boolean + +native SyncStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredReal takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredString takes gamecache cache, string missionKey, string key returns nothing + +native HaveStoredInteger takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredReal takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredUnit takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredString takes gamecache cache, string missionKey, string key returns boolean + +native FlushGameCache takes gamecache cache returns nothing +native FlushStoredMission takes gamecache cache, string missionKey returns nothing +native FlushStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredReal takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredString takes gamecache cache, string missionKey, string key returns nothing + +// Will return 0 if the specified value's data is not found in the cache +native GetStoredInteger takes gamecache cache, string missionKey, string key returns integer +native GetStoredReal takes gamecache cache, string missionKey, string key returns real +native GetStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native GetStoredString takes gamecache cache, string missionKey, string key returns string +native RestoreUnit takes gamecache cache, string missionKey, string key, player forWhichPlayer, real x, real y, real facing returns unit + + +native InitHashtable takes nothing returns hashtable + +native SaveInteger takes hashtable table, integer parentKey, integer childKey, integer value returns nothing +native SaveReal takes hashtable table, integer parentKey, integer childKey, real value returns nothing +native SaveBoolean takes hashtable table, integer parentKey, integer childKey, boolean value returns nothing +native SaveStr takes hashtable table, integer parentKey, integer childKey, string value returns boolean +native SavePlayerHandle takes hashtable table, integer parentKey, integer childKey, player whichPlayer returns boolean +native SaveWidgetHandle takes hashtable table, integer parentKey, integer childKey, widget whichWidget returns boolean +native SaveDestructableHandle takes hashtable table, integer parentKey, integer childKey, destructable whichDestructable returns boolean +native SaveItemHandle takes hashtable table, integer parentKey, integer childKey, item whichItem returns boolean +native SaveUnitHandle takes hashtable table, integer parentKey, integer childKey, unit whichUnit returns boolean +native SaveAbilityHandle takes hashtable table, integer parentKey, integer childKey, ability whichAbility returns boolean +native SaveTimerHandle takes hashtable table, integer parentKey, integer childKey, timer whichTimer returns boolean +native SaveTriggerHandle takes hashtable table, integer parentKey, integer childKey, trigger whichTrigger returns boolean +native SaveTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey, triggercondition whichTriggercondition returns boolean +native SaveTriggerActionHandle takes hashtable table, integer parentKey, integer childKey, triggeraction whichTriggeraction returns boolean +native SaveTriggerEventHandle takes hashtable table, integer parentKey, integer childKey, event whichEvent returns boolean +native SaveForceHandle takes hashtable table, integer parentKey, integer childKey, force whichForce returns boolean +native SaveGroupHandle takes hashtable table, integer parentKey, integer childKey, group whichGroup returns boolean +native SaveLocationHandle takes hashtable table, integer parentKey, integer childKey, location whichLocation returns boolean +native SaveRectHandle takes hashtable table, integer parentKey, integer childKey, rect whichRect returns boolean +native SaveBooleanExprHandle takes hashtable table, integer parentKey, integer childKey, boolexpr whichBoolexpr returns boolean +native SaveSoundHandle takes hashtable table, integer parentKey, integer childKey, sound whichSound returns boolean +native SaveEffectHandle takes hashtable table, integer parentKey, integer childKey, effect whichEffect returns boolean +native SaveUnitPoolHandle takes hashtable table, integer parentKey, integer childKey, unitpool whichUnitpool returns boolean +native SaveItemPoolHandle takes hashtable table, integer parentKey, integer childKey, itempool whichItempool returns boolean +native SaveQuestHandle takes hashtable table, integer parentKey, integer childKey, quest whichQuest returns boolean +native SaveQuestItemHandle takes hashtable table, integer parentKey, integer childKey, questitem whichQuestitem returns boolean +native SaveDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey, defeatcondition whichDefeatcondition returns boolean +native SaveTimerDialogHandle takes hashtable table, integer parentKey, integer childKey, timerdialog whichTimerdialog returns boolean +native SaveLeaderboardHandle takes hashtable table, integer parentKey, integer childKey, leaderboard whichLeaderboard returns boolean +native SaveMultiboardHandle takes hashtable table, integer parentKey, integer childKey, multiboard whichMultiboard returns boolean +native SaveMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey, multiboarditem whichMultiboarditem returns boolean +native SaveTrackableHandle takes hashtable table, integer parentKey, integer childKey, trackable whichTrackable returns boolean +native SaveDialogHandle takes hashtable table, integer parentKey, integer childKey, dialog whichDialog returns boolean +native SaveButtonHandle takes hashtable table, integer parentKey, integer childKey, button whichButton returns boolean +native SaveTextTagHandle takes hashtable table, integer parentKey, integer childKey, texttag whichTexttag returns boolean +native SaveLightningHandle takes hashtable table, integer parentKey, integer childKey, lightning whichLightning returns boolean +native SaveImageHandle takes hashtable table, integer parentKey, integer childKey, image whichImage returns boolean +native SaveUbersplatHandle takes hashtable table, integer parentKey, integer childKey, ubersplat whichUbersplat returns boolean +native SaveRegionHandle takes hashtable table, integer parentKey, integer childKey, region whichRegion returns boolean +native SaveFogStateHandle takes hashtable table, integer parentKey, integer childKey, fogstate whichFogState returns boolean +native SaveFogModifierHandle takes hashtable table, integer parentKey, integer childKey, fogmodifier whichFogModifier returns boolean +native SaveAgentHandle takes hashtable table, integer parentKey, integer childKey, agent whichAgent returns boolean +native SaveHashtableHandle takes hashtable table, integer parentKey, integer childKey, hashtable whichHashtable returns boolean + + +native LoadInteger takes hashtable table, integer parentKey, integer childKey returns integer +native LoadReal takes hashtable table, integer parentKey, integer childKey returns real +native LoadBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native LoadStr takes hashtable table, integer parentKey, integer childKey returns string +native LoadPlayerHandle takes hashtable table, integer parentKey, integer childKey returns player +native LoadWidgetHandle takes hashtable table, integer parentKey, integer childKey returns widget +native LoadDestructableHandle takes hashtable table, integer parentKey, integer childKey returns destructable +native LoadItemHandle takes hashtable table, integer parentKey, integer childKey returns item +native LoadUnitHandle takes hashtable table, integer parentKey, integer childKey returns unit +native LoadAbilityHandle takes hashtable table, integer parentKey, integer childKey returns ability +native LoadTimerHandle takes hashtable table, integer parentKey, integer childKey returns timer +native LoadTriggerHandle takes hashtable table, integer parentKey, integer childKey returns trigger +native LoadTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey returns triggercondition +native LoadTriggerActionHandle takes hashtable table, integer parentKey, integer childKey returns triggeraction +native LoadTriggerEventHandle takes hashtable table, integer parentKey, integer childKey returns event +native LoadForceHandle takes hashtable table, integer parentKey, integer childKey returns force +native LoadGroupHandle takes hashtable table, integer parentKey, integer childKey returns group +native LoadLocationHandle takes hashtable table, integer parentKey, integer childKey returns location +native LoadRectHandle takes hashtable table, integer parentKey, integer childKey returns rect +native LoadBooleanExprHandle takes hashtable table, integer parentKey, integer childKey returns boolexpr +native LoadSoundHandle takes hashtable table, integer parentKey, integer childKey returns sound +native LoadEffectHandle takes hashtable table, integer parentKey, integer childKey returns effect +native LoadUnitPoolHandle takes hashtable table, integer parentKey, integer childKey returns unitpool +native LoadItemPoolHandle takes hashtable table, integer parentKey, integer childKey returns itempool +native LoadQuestHandle takes hashtable table, integer parentKey, integer childKey returns quest +native LoadQuestItemHandle takes hashtable table, integer parentKey, integer childKey returns questitem +native LoadDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey returns defeatcondition +native LoadTimerDialogHandle takes hashtable table, integer parentKey, integer childKey returns timerdialog +native LoadLeaderboardHandle takes hashtable table, integer parentKey, integer childKey returns leaderboard +native LoadMultiboardHandle takes hashtable table, integer parentKey, integer childKey returns multiboard +native LoadMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey returns multiboarditem +native LoadTrackableHandle takes hashtable table, integer parentKey, integer childKey returns trackable +native LoadDialogHandle takes hashtable table, integer parentKey, integer childKey returns dialog +native LoadButtonHandle takes hashtable table, integer parentKey, integer childKey returns button +native LoadTextTagHandle takes hashtable table, integer parentKey, integer childKey returns texttag +native LoadLightningHandle takes hashtable table, integer parentKey, integer childKey returns lightning +native LoadImageHandle takes hashtable table, integer parentKey, integer childKey returns image +native LoadUbersplatHandle takes hashtable table, integer parentKey, integer childKey returns ubersplat +native LoadRegionHandle takes hashtable table, integer parentKey, integer childKey returns region +native LoadFogStateHandle takes hashtable table, integer parentKey, integer childKey returns fogstate +native LoadFogModifierHandle takes hashtable table, integer parentKey, integer childKey returns fogmodifier +native LoadHashtableHandle takes hashtable table, integer parentKey, integer childKey returns hashtable + +native HaveSavedInteger takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedReal takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedString takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedHandle takes hashtable table, integer parentKey, integer childKey returns boolean + +native RemoveSavedInteger takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedReal takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedString takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedHandle takes hashtable table, integer parentKey, integer childKey returns nothing + +native FlushParentHashtable takes hashtable table returns nothing +native FlushChildHashtable takes hashtable table, integer parentKey returns nothing + + +//============================================================================ +// Randomization API +native GetRandomInt takes integer lowBound, integer highBound returns integer +native GetRandomReal takes real lowBound, real highBound returns real + +native CreateUnitPool takes nothing returns unitpool +native DestroyUnitPool takes unitpool whichPool returns nothing +native UnitPoolAddUnitType takes unitpool whichPool, integer unitId, real weight returns nothing +native UnitPoolRemoveUnitType takes unitpool whichPool, integer unitId returns nothing +native PlaceRandomUnit takes unitpool whichPool, player forWhichPlayer, real x, real y, real facing returns unit + +native CreateItemPool takes nothing returns itempool +native DestroyItemPool takes itempool whichItemPool returns nothing +native ItemPoolAddItemType takes itempool whichItemPool, integer itemId, real weight returns nothing +native ItemPoolRemoveItemType takes itempool whichItemPool, integer itemId returns nothing +native PlaceRandomItem takes itempool whichItemPool, real x, real y returns item + +// Choose any random unit/item. (NP means Neutral Passive) +native ChooseRandomCreep takes integer level returns integer +native ChooseRandomNPBuilding takes nothing returns integer +native ChooseRandomItem takes integer level returns integer +native ChooseRandomItemEx takes itemtype whichType, integer level returns integer +native SetRandomSeed takes integer seed returns nothing + +//============================================================================ +// Visual API +native SetTerrainFog takes real a, real b, real c, real d, real e returns nothing +native ResetTerrainFog takes nothing returns nothing + +native SetUnitFog takes real a, real b, real c, real d, real e returns nothing +native SetTerrainFogEx takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing +native DisplayTextToPlayer takes player toPlayer, real x, real y, string message returns nothing +native DisplayTimedTextToPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native DisplayTimedTextFromPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native ClearTextMessages takes nothing returns nothing +native SetDayNightModels takes string terrainDNCFile, string unitDNCFile returns nothing +native SetSkyModel takes string skyModelFile returns nothing +native EnableUserControl takes boolean b returns nothing +native EnableUserUI takes boolean b returns nothing +native SuspendTimeOfDay takes boolean b returns nothing +native SetTimeOfDayScale takes real r returns nothing +native GetTimeOfDayScale takes nothing returns real +native ShowInterface takes boolean flag, real fadeDuration returns nothing +native PauseGame takes boolean flag returns nothing +native UnitAddIndicator takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing +native AddIndicator takes widget whichWidget, integer red, integer green, integer blue, integer alpha returns nothing +native PingMinimap takes real x, real y, real duration returns nothing +native PingMinimapEx takes real x, real y, real duration, integer red, integer green, integer blue, boolean extraEffects returns nothing +native EnableOcclusion takes boolean flag returns nothing +native SetIntroShotText takes string introText returns nothing +native SetIntroShotModel takes string introModelPath returns nothing +native EnableWorldFogBoundary takes boolean b returns nothing +native PlayModelCinematic takes string modelName returns nothing +native PlayCinematic takes string movieName returns nothing +native ForceUIKey takes string key returns nothing +native ForceUICancel takes nothing returns nothing +native DisplayLoadDialog takes nothing returns nothing +native SetAltMinimapIcon takes string iconPath returns nothing +native DisableRestartMission takes boolean flag returns nothing + +native CreateTextTag takes nothing returns texttag +native DestroyTextTag takes texttag t returns nothing +native SetTextTagText takes texttag t, string s, real height returns nothing +native SetTextTagPos takes texttag t, real x, real y, real heightOffset returns nothing +native SetTextTagPosUnit takes texttag t, unit whichUnit, real heightOffset returns nothing +native SetTextTagColor takes texttag t, integer red, integer green, integer blue, integer alpha returns nothing +native SetTextTagVelocity takes texttag t, real xvel, real yvel returns nothing +native SetTextTagVisibility takes texttag t, boolean flag returns nothing +native SetTextTagSuspended takes texttag t, boolean flag returns nothing +native SetTextTagPermanent takes texttag t, boolean flag returns nothing +native SetTextTagAge takes texttag t, real age returns nothing +native SetTextTagLifespan takes texttag t, real lifespan returns nothing +native SetTextTagFadepoint takes texttag t, real fadepoint returns nothing + +native SetReservedLocalHeroButtons takes integer reserved returns nothing +native GetAllyColorFilterState takes nothing returns integer +native SetAllyColorFilterState takes integer state returns nothing +native GetCreepCampFilterState takes nothing returns boolean +native SetCreepCampFilterState takes boolean state returns nothing +native EnableMinimapFilterButtons takes boolean enableAlly, boolean enableCreep returns nothing +native EnableDragSelect takes boolean state, boolean ui returns nothing +native EnablePreSelect takes boolean state, boolean ui returns nothing +native EnableSelect takes boolean state, boolean ui returns nothing + +//============================================================================ +// Trackable API +native CreateTrackable takes string trackableModelPath, real x, real y, real facing returns trackable + +//============================================================================ +// Quest API +native CreateQuest takes nothing returns quest +native DestroyQuest takes quest whichQuest returns nothing +native QuestSetTitle takes quest whichQuest, string title returns nothing +native QuestSetDescription takes quest whichQuest, string description returns nothing +native QuestSetIconPath takes quest whichQuest, string iconPath returns nothing + +native QuestSetRequired takes quest whichQuest, boolean required returns nothing +native QuestSetCompleted takes quest whichQuest, boolean completed returns nothing +native QuestSetDiscovered takes quest whichQuest, boolean discovered returns nothing +native QuestSetFailed takes quest whichQuest, boolean failed returns nothing +native QuestSetEnabled takes quest whichQuest, boolean enabled returns nothing + +native IsQuestRequired takes quest whichQuest returns boolean +native IsQuestCompleted takes quest whichQuest returns boolean +native IsQuestDiscovered takes quest whichQuest returns boolean +native IsQuestFailed takes quest whichQuest returns boolean +native IsQuestEnabled takes quest whichQuest returns boolean + +native QuestCreateItem takes quest whichQuest returns questitem +native QuestItemSetDescription takes questitem whichQuestItem, string description returns nothing +native QuestItemSetCompleted takes questitem whichQuestItem, boolean completed returns nothing + +native IsQuestItemCompleted takes questitem whichQuestItem returns boolean + +native CreateDefeatCondition takes nothing returns defeatcondition +native DestroyDefeatCondition takes defeatcondition whichCondition returns nothing +native DefeatConditionSetDescription takes defeatcondition whichCondition, string description returns nothing + +native FlashQuestDialogButton takes nothing returns nothing +native ForceQuestDialogUpdate takes nothing returns nothing + +//============================================================================ +// Timer Dialog API +native CreateTimerDialog takes timer t returns timerdialog +native DestroyTimerDialog takes timerdialog whichDialog returns nothing +native TimerDialogSetTitle takes timerdialog whichDialog, string title returns nothing +native TimerDialogSetTitleColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetTimeColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetSpeed takes timerdialog whichDialog, real speedMultFactor returns nothing +native TimerDialogDisplay takes timerdialog whichDialog, boolean display returns nothing +native IsTimerDialogDisplayed takes timerdialog whichDialog returns boolean +native TimerDialogSetRealTimeRemaining takes timerdialog whichDialog, real timeRemaining returns nothing + +//============================================================================ +// Leaderboard API + +// Create a leaderboard object +native CreateLeaderboard takes nothing returns leaderboard +native DestroyLeaderboard takes leaderboard lb returns nothing + +native LeaderboardDisplay takes leaderboard lb, boolean show returns nothing +native IsLeaderboardDisplayed takes leaderboard lb returns boolean + +native LeaderboardGetItemCount takes leaderboard lb returns integer + +native LeaderboardSetSizeByItemCount takes leaderboard lb, integer count returns nothing +native LeaderboardAddItem takes leaderboard lb, string label, integer value, player p returns nothing +native LeaderboardRemoveItem takes leaderboard lb, integer index returns nothing +native LeaderboardRemovePlayerItem takes leaderboard lb, player p returns nothing +native LeaderboardClear takes leaderboard lb returns nothing + +native LeaderboardSortItemsByValue takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByPlayer takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByLabel takes leaderboard lb, boolean ascending returns nothing + +native LeaderboardHasPlayerItem takes leaderboard lb, player p returns boolean +native LeaderboardGetPlayerIndex takes leaderboard lb, player p returns integer +native LeaderboardSetLabel takes leaderboard lb, string label returns nothing +native LeaderboardGetLabelText takes leaderboard lb returns string + +native PlayerSetLeaderboard takes player toPlayer, leaderboard lb returns nothing +native PlayerGetLeaderboard takes player toPlayer returns leaderboard + +native LeaderboardSetLabelColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetValueColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetStyle takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + +native LeaderboardSetItemValue takes leaderboard lb, integer whichItem, integer val returns nothing +native LeaderboardSetItemLabel takes leaderboard lb, integer whichItem, string val returns nothing +native LeaderboardSetItemStyle takes leaderboard lb, integer whichItem, boolean showLabel, boolean showValue, boolean showIcon returns nothing +native LeaderboardSetItemLabelColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetItemValueColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing + +//============================================================================ +// Multiboard API +//============================================================================ + +// Create a multiboard object +native CreateMultiboard takes nothing returns multiboard +native DestroyMultiboard takes multiboard lb returns nothing + +native MultiboardDisplay takes multiboard lb, boolean show returns nothing +native IsMultiboardDisplayed takes multiboard lb returns boolean + +native MultiboardMinimize takes multiboard lb, boolean minimize returns nothing +native IsMultiboardMinimized takes multiboard lb returns boolean +native MultiboardClear takes multiboard lb returns nothing + +native MultiboardSetTitleText takes multiboard lb, string label returns nothing +native MultiboardGetTitleText takes multiboard lb returns string +native MultiboardSetTitleTextColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing + +native MultiboardGetRowCount takes multiboard lb returns integer +native MultiboardGetColumnCount takes multiboard lb returns integer + +native MultiboardSetColumnCount takes multiboard lb, integer count returns nothing +native MultiboardSetRowCount takes multiboard lb, integer count returns nothing + +// broadcast settings to all items +native MultiboardSetItemsStyle takes multiboard lb, boolean showValues, boolean showIcons returns nothing +native MultiboardSetItemsValue takes multiboard lb, string value returns nothing +native MultiboardSetItemsValueColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemsWidth takes multiboard lb, real width returns nothing +native MultiboardSetItemsIcon takes multiboard lb, string iconPath returns nothing + + +// funcs for modifying individual items +native MultiboardGetItem takes multiboard lb, integer row, integer column returns multiboarditem +native MultiboardReleaseItem takes multiboarditem mbi returns nothing + +native MultiboardSetItemStyle takes multiboarditem mbi, boolean showValue, boolean showIcon returns nothing +native MultiboardSetItemValue takes multiboarditem mbi, string val returns nothing +native MultiboardSetItemValueColor takes multiboarditem mbi, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemWidth takes multiboarditem mbi, real width returns nothing +native MultiboardSetItemIcon takes multiboarditem mbi, string iconFileName returns nothing + +// meant to unequivocally suspend display of existing and +// subsequently displayed multiboards +// +native MultiboardSuppressDisplay takes boolean flag returns nothing + +//============================================================================ +// Camera API +native SetCameraPosition takes real x, real y returns nothing +native SetCameraQuickPosition takes real x, real y returns nothing +native SetCameraBounds takes real x1, real y1, real x2, real y2, real x3, real y3, real x4, real y4 returns nothing +native StopCamera takes nothing returns nothing +native ResetToGameCamera takes real duration returns nothing +native PanCameraTo takes real x, real y returns nothing +native PanCameraToTimed takes real x, real y, real duration returns nothing +native PanCameraToWithZ takes real x, real y, real zOffsetDest returns nothing +native PanCameraToTimedWithZ takes real x, real y, real zOffsetDest, real duration returns nothing +native SetCinematicCamera takes string cameraModelFile returns nothing +native SetCameraRotateMode takes real x, real y, real radiansToSweep, real duration returns nothing +native SetCameraField takes camerafield whichField, real value, real duration returns nothing +native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing +native SetCameraTargetController takes unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing +native SetCameraOrientController takes unit whichUnit, real xoffset, real yoffset returns nothing + +native CreateCameraSetup takes nothing returns camerasetup +native CameraSetupSetField takes camerasetup whichSetup, camerafield whichField, real value, real duration returns nothing +native CameraSetupGetField takes camerasetup whichSetup, camerafield whichField returns real +native CameraSetupSetDestPosition takes camerasetup whichSetup, real x, real y, real duration returns nothing +native CameraSetupGetDestPositionLoc takes camerasetup whichSetup returns location +native CameraSetupGetDestPositionX takes camerasetup whichSetup returns real +native CameraSetupGetDestPositionY takes camerasetup whichSetup returns real +native CameraSetupApply takes camerasetup whichSetup, boolean doPan, boolean panTimed returns nothing +native CameraSetupApplyWithZ takes camerasetup whichSetup, real zDestOffset returns nothing +native CameraSetupApplyForceDuration takes camerasetup whichSetup, boolean doPan, real forceDuration returns nothing +native CameraSetupApplyForceDurationWithZ takes camerasetup whichSetup, real zDestOffset, real forceDuration returns nothing + +native CameraSetTargetNoise takes real mag, real velocity returns nothing +native CameraSetSourceNoise takes real mag, real velocity returns nothing + +native CameraSetTargetNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing +native CameraSetSourceNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing + +native CameraSetSmoothingFactor takes real factor returns nothing + +native SetCineFilterTexture takes string filename returns nothing +native SetCineFilterBlendMode takes blendmode whichMode returns nothing +native SetCineFilterTexMapFlags takes texmapflags whichFlags returns nothing +native SetCineFilterStartUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterEndUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterStartColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterEndColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterDuration takes real duration returns nothing +native DisplayCineFilter takes boolean flag returns nothing +native IsCineFilterDisplayed takes nothing returns boolean + +native SetCinematicScene takes integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing +native EndCinematicScene takes nothing returns nothing +native ForceCinematicSubtitles takes boolean flag returns nothing + +native GetCameraMargin takes integer whichMargin returns real + +// These return values for the local players camera only... +constant native GetCameraBoundMinX takes nothing returns real +constant native GetCameraBoundMinY takes nothing returns real +constant native GetCameraBoundMaxX takes nothing returns real +constant native GetCameraBoundMaxY takes nothing returns real +constant native GetCameraField takes camerafield whichField returns real +constant native GetCameraTargetPositionX takes nothing returns real +constant native GetCameraTargetPositionY takes nothing returns real +constant native GetCameraTargetPositionZ takes nothing returns real +constant native GetCameraTargetPositionLoc takes nothing returns location +constant native GetCameraEyePositionX takes nothing returns real +constant native GetCameraEyePositionY takes nothing returns real +constant native GetCameraEyePositionZ takes nothing returns real +constant native GetCameraEyePositionLoc takes nothing returns location + +//============================================================================ +// Sound API +// +native NewSoundEnvironment takes string environmentName returns nothing + +native CreateSound takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string eaxSetting returns sound +native CreateSoundFilenameWithLabel takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string SLKEntryName returns sound +native CreateSoundFromLabel takes string soundLabel, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate returns sound +native CreateMIDISound takes string soundLabel, integer fadeInRate, integer fadeOutRate returns sound + +native SetSoundParamsFromLabel takes sound soundHandle, string soundLabel returns nothing +native SetSoundDistanceCutoff takes sound soundHandle, real cutoff returns nothing +native SetSoundChannel takes sound soundHandle, integer channel returns nothing +native SetSoundVolume takes sound soundHandle, integer volume returns nothing +native SetSoundPitch takes sound soundHandle, real pitch returns nothing + +// the following method must be called immediately after calling "StartSound" +native SetSoundPlayPosition takes sound soundHandle, integer millisecs returns nothing + +// these calls are only valid if the sound was created with 3d enabled +native SetSoundDistances takes sound soundHandle, real minDist, real maxDist returns nothing +native SetSoundConeAngles takes sound soundHandle, real inside, real outside, integer outsideVolume returns nothing +native SetSoundConeOrientation takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundPosition takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundVelocity takes sound soundHandle, real x, real y, real z returns nothing +native AttachSoundToUnit takes sound soundHandle, unit whichUnit returns nothing + +native StartSound takes sound soundHandle returns nothing +native StopSound takes sound soundHandle, boolean killWhenDone, boolean fadeOut returns nothing +native KillSoundWhenDone takes sound soundHandle returns nothing + +// Music Interface. Note that if music is disabled, these calls do nothing +native SetMapMusic takes string musicName, boolean random, integer index returns nothing +native ClearMapMusic takes nothing returns nothing + +native PlayMusic takes string musicName returns nothing +native PlayMusicEx takes string musicName, integer frommsecs, integer fadeinmsecs returns nothing +native StopMusic takes boolean fadeOut returns nothing +native ResumeMusic takes nothing returns nothing + +native PlayThematicMusic takes string musicFileName returns nothing +native PlayThematicMusicEx takes string musicFileName, integer frommsecs returns nothing +native EndThematicMusic takes nothing returns nothing + +native SetMusicVolume takes integer volume returns nothing +native SetMusicPlayPosition takes integer millisecs returns nothing +native SetThematicMusicPlayPosition takes integer millisecs returns nothing + +// other music and sound calls +native SetSoundDuration takes sound soundHandle, integer duration returns nothing +native GetSoundDuration takes sound soundHandle returns integer +native GetSoundFileDuration takes string musicFileName returns integer + +native VolumeGroupSetVolume takes volumegroup vgroup, real scale returns nothing +native VolumeGroupReset takes nothing returns nothing + +native GetSoundIsPlaying takes sound soundHandle returns boolean +native GetSoundIsLoading takes sound soundHandle returns boolean + +native RegisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing +native UnregisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing + +//============================================================================ +// Effects API +// +native AddWeatherEffect takes rect where, integer effectID returns weathereffect +native RemoveWeatherEffect takes weathereffect whichEffect returns nothing +native EnableWeatherEffect takes weathereffect whichEffect, boolean enable returns nothing + +native TerrainDeformCrater takes real x, real y, real radius, real depth, integer duration, boolean permanent returns terraindeformation +native TerrainDeformRipple takes real x, real y, real radius, real depth, integer duration, integer count, real spaceWaves, real timeWaves, real radiusStartPct, boolean limitNeg returns terraindeformation +native TerrainDeformWave takes real x, real y, real dirX, real dirY, real distance, real speed, real radius, real depth, integer trailTime, integer count returns terraindeformation +native TerrainDeformRandom takes real x, real y, real radius, real minDelta, real maxDelta, integer duration, integer updateInterval returns terraindeformation +native TerrainDeformStop takes terraindeformation deformation, integer duration returns nothing +native TerrainDeformStopAll takes nothing returns nothing + +native AddSpecialEffect takes string modelName, real x, real y returns effect +native AddSpecialEffectLoc takes string modelName, location where returns effect +native AddSpecialEffectTarget takes string modelName, widget targetWidget, string attachPointName returns effect +native DestroyEffect takes effect whichEffect returns nothing + +native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect +native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect +native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect +native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect +native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect +native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect + +native AddLightning takes string codeName, boolean checkVisibility, real x1, real y1, real x2, real y2 returns lightning +native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning +native DestroyLightning takes lightning whichBolt returns boolean +native MoveLightning takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real x2, real y2 returns boolean +native MoveLightningEx takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns boolean +native GetLightningColorA takes lightning whichBolt returns real +native GetLightningColorR takes lightning whichBolt returns real +native GetLightningColorG takes lightning whichBolt returns real +native GetLightningColorB takes lightning whichBolt returns real +native SetLightningColor takes lightning whichBolt, real r, real g, real b, real a returns boolean + +native GetAbilityEffect takes string abilityString, effecttype t, integer index returns string +native GetAbilityEffectById takes integer abilityId, effecttype t, integer index returns string +native GetAbilitySound takes string abilityString, soundtype t returns string +native GetAbilitySoundById takes integer abilityId, soundtype t returns string + +//============================================================================ +// Terrain API +// +native GetTerrainCliffLevel takes real x, real y returns integer +native SetWaterBaseColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetWaterDeforms takes boolean val returns nothing +native GetTerrainType takes real x, real y returns integer +native GetTerrainVariance takes real x, real y returns integer +native SetTerrainType takes real x, real y, integer terrainType, integer variation, integer area, integer shape returns nothing +native IsTerrainPathable takes real x, real y, pathingtype t returns boolean +native SetTerrainPathable takes real x, real y, pathingtype t, boolean flag returns nothing + +//============================================================================ +// Image API +// +native CreateImage takes string file, real sizeX, real sizeY, real sizeZ, real posX, real posY, real posZ, real originX, real originY, real originZ, integer imageType returns image +native DestroyImage takes image whichImage returns nothing +native ShowImage takes image whichImage, boolean flag returns nothing +native SetImageConstantHeight takes image whichImage, boolean flag, real height returns nothing +native SetImagePosition takes image whichImage, real x, real y, real z returns nothing +native SetImageColor takes image whichImage, integer red, integer green, integer blue, integer alpha returns nothing +native SetImageRender takes image whichImage, boolean flag returns nothing +native SetImageRenderAlways takes image whichImage, boolean flag returns nothing +native SetImageAboveWater takes image whichImage, boolean flag, boolean useWaterAlpha returns nothing +native SetImageType takes image whichImage, integer imageType returns nothing + +//============================================================================ +// Ubersplat API +// +native CreateUbersplat takes real x, real y, string name, integer red, integer green, integer blue, integer alpha, boolean forcePaused, boolean noBirthTime returns ubersplat +native DestroyUbersplat takes ubersplat whichSplat returns nothing +native ResetUbersplat takes ubersplat whichSplat returns nothing +native FinishUbersplat takes ubersplat whichSplat returns nothing +native ShowUbersplat takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRender takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRenderAlways takes ubersplat whichSplat, boolean flag returns nothing + +//============================================================================ +// Blight API +// +native SetBlight takes player whichPlayer, real x, real y, real radius, boolean addBlight returns nothing +native SetBlightRect takes player whichPlayer, rect r, boolean addBlight returns nothing +native SetBlightPoint takes player whichPlayer, real x, real y, boolean addBlight returns nothing +native SetBlightLoc takes player whichPlayer, location whichLocation, real radius, boolean addBlight returns nothing +native CreateBlightedGoldmine takes player id, real x, real y, real face returns unit +native IsPointBlighted takes real x, real y returns boolean + +//============================================================================ +// Doodad API +// +native SetDoodadAnimation takes real x, real y, real radius, integer doodadID, boolean nearestOnly, string animName, boolean animRandom returns nothing +native SetDoodadAnimationRect takes rect r, integer doodadID, string animName, boolean animRandom returns nothing + +//============================================================================ +// Computer AI interface +// +native StartMeleeAI takes player num, string script returns nothing +native StartCampaignAI takes player num, string script returns nothing +native CommandAI takes player num, integer command, integer data returns nothing +native PauseCompAI takes player p, boolean pause returns nothing +native GetAIDifficulty takes player num returns aidifficulty + +native RemoveGuardPosition takes unit hUnit returns nothing +native RecycleGuardPosition takes unit hUnit returns nothing +native RemoveAllGuardPositions takes player num returns nothing + +//============================================================================ +native Cheat takes string cheatStr returns nothing +native IsNoVictoryCheat takes nothing returns boolean +native IsNoDefeatCheat takes nothing returns boolean + +native Preload takes string filename returns nothing +native PreloadEnd takes real timeout returns nothing + +native PreloadStart takes nothing returns nothing +native PreloadRefresh takes nothing returns nothing +native PreloadEndEx takes nothing returns nothing + +native PreloadGenClear takes nothing returns nothing +native PreloadGenStart takes nothing returns nothing +native PreloadGenEnd takes string filename returns nothing +native Preloader takes string filename returns nothing diff --git a/logs/currentmapscript.j b/logs/currentmapscript.j new file mode 100644 index 0000000..5c8dce0 --- /dev/null +++ b/logs/currentmapscript.j @@ -0,0 +1,190 @@ +globals +//globals from YDTriggerSaveLoadSystem: +constant boolean LIBRARY_YDTriggerSaveLoadSystem=true +hashtable YDHT +hashtable YDLOC +//endglobals from YDTriggerSaveLoadSystem + // Generated +trigger gg_trg_start= null +trigger gg_trg_spell= null +unit gg_unit_hfoo_0000= null + +trigger l__library_init + +//JASSHelper struct globals: + +endglobals + + +//library YDTriggerSaveLoadSystem: + function YDTriggerSaveLoadSystem___Init takes nothing returns nothing + set YDHT=InitHashtable() + set YDLOC=InitHashtable() + endfunction + +//library YDTriggerSaveLoadSystem ends +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** +function InitGlobals takes nothing returns nothing +endfunction +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p= Player(0) + local unit u + local integer unitID + local trigger t + local real life + set u=CreateUnit(p, 'htow', - 256.0, 320.0, 270.000) +endfunction +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p= Player(0) + local unit u + local integer unitID + local trigger t + local real life + set gg_unit_hfoo_0000=CreateUnit(p, 'hfoo', - 340.6, 19.9, 302.210) +endfunction +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0() +endfunction +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0() +endfunction +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings() + call CreatePlayerUnits() +endfunction +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff() + call FogMaskEnable(false) + call SetPlayerStateBJ(Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000) +endfunction +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start=CreateTrigger() + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ( ( GetSpellAbilityId() == 'AAns' ) ) +endfunction +function Trig_spellActions takes nothing returns nothing + local integer ydl_localvar_step= LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76) + set ydl_localvar_step=ydl_localvar_step + 3 + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32, GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped('AAns', gg_unit_hfoo_0000, ( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32) + 1 )) + call DisplayTextToPlayer(Player(0), 0, 0, I2S(( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32) + 1 ))) + call FlushChildHashtable(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step) +endfunction +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell=CreateTrigger() + call TriggerRegisterAnyUnitEventBJ(gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start() + call InitTrig_spell() +endfunction +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute(gg_trg_start) +endfunction +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** +function InitCustomPlayerSlots takes nothing returns nothing + // Player 0 + call SetPlayerStartLocation(Player(0), 0) + call SetPlayerColor(Player(0), ConvertPlayerColor(0)) + call SetPlayerRacePreference(Player(0), RACE_PREF_HUMAN) + call SetPlayerRaceSelectable(Player(0), true) + call SetPlayerController(Player(0), MAP_CONTROL_USER) +endfunction +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam(Player(0), 0) +endfunction +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds(- 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), - 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM)) + call SetDayNightModels("Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl") + call NewSoundEnvironment("Default") + call SetAmbientDaySound("LordaeronSummerDay") + call SetAmbientNightSound("LordaeronSummerNight") + call SetMapMusic("Music", true, 0) + call CreateAllUnits() + call InitBlizzard() + +call ExecuteFunc("YDTriggerSaveLoadSystem___Init") + + call InitGlobals() + call InitCustomTriggers() + call RunInitializationTriggers() +endfunction +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** +function config takes nothing returns nothing + call SetMapName("只是另外一张魔兽争霸的地图") + call SetMapDescription("没有说明") + call SetPlayers(1) + call SetTeams(1) + call SetGamePlacement(MAP_PLACEMENT_USE_MAP_SETTINGS) + call DefineStartLocation(0, - 256.0, 320.0) + // Player setup + call InitCustomPlayerSlots() + call SetPlayerSlotAvailable(Player(0), MAP_CONTROL_USER) + call InitGenericPlayerSlots() +endfunction + + + + +//Struct method generated initializers/callers: + diff --git a/logs/file.i b/logs/file.i new file mode 100644 index 0000000..9557156 --- /dev/null +++ b/logs/file.i @@ -0,0 +1,170 @@ +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** +library YDTriggerSaveLoadSystem initializer Init +globals + hashtable YDHT + hashtable YDLOC +endglobals + private function Init takes nothing returns nothing + set YDHT = InitHashtable() + set YDLOC = InitHashtable() + endfunction +endlibrary +globals + // Generated + trigger gg_trg_start = null + trigger gg_trg_spell = null + unit gg_unit_hfoo_0000 = null +endglobals +function InitGlobals takes nothing returns nothing +endfunction +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set u = CreateUnit( p, 'htow', -256.0, 320.0, 270.000 ) +endfunction +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set gg_unit_hfoo_0000 = CreateUnit( p, 'hfoo', -340.6, 19.9, 302.210 ) +endfunction +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0( ) +endfunction +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0( ) +endfunction +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings( ) + call CreatePlayerUnits( ) +endfunction +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff( ) + call FogMaskEnable( false ) + call SetPlayerStateBJ( Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000 ) +endfunction +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start = CreateTrigger() + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ((GetSpellAbilityId() == 'AAns')) +endfunction +function Trig_spellActions takes nothing returns nothing + local integer ydl_localvar_step = LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76) set ydl_localvar_step = ydl_localvar_step + 3 call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, , GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped( 'AAns', gg_unit_hfoo_0000, ( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, ) + 1 ) ) + call DisplayTextToPlayer( Player(0), 0, 0, I2S(( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, ) + 1 )) ) + call FlushChildHashtable(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step) +endfunction +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell = CreateTrigger() + call TriggerRegisterAnyUnitEventBJ( gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT ) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start( ) + call InitTrig_spell( ) +endfunction +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute( gg_trg_start ) +endfunction +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** +function InitCustomPlayerSlots takes nothing returns nothing + // Player 0 + call SetPlayerStartLocation( Player(0), 0 ) + call SetPlayerColor( Player(0), ConvertPlayerColor(0) ) + call SetPlayerRacePreference( Player(0), RACE_PREF_HUMAN ) + call SetPlayerRaceSelectable( Player(0), true ) + call SetPlayerController( Player(0), MAP_CONTROL_USER ) +endfunction +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam( Player(0), 0 ) +endfunction +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds( -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) ) + call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" ) + call NewSoundEnvironment( "Default" ) + call SetAmbientDaySound( "LordaeronSummerDay" ) + call SetAmbientNightSound( "LordaeronSummerNight" ) + call SetMapMusic( "Music", true, 0 ) + call CreateAllUnits( ) + call InitBlizzard( ) + call InitGlobals( ) + call InitCustomTriggers( ) + call RunInitializationTriggers( ) +endfunction +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** +function config takes nothing returns nothing + call SetMapName( "只是另外一张魔兽争霸的地图" ) + call SetMapDescription( "没有说明" ) + call SetPlayers( 1 ) + call SetTeams( 1 ) + call SetGamePlacement( MAP_PLACEMENT_USE_MAP_SETTINGS ) + call DefineStartLocation( 0, -256.0, 320.0 ) + // Player setup + call InitCustomPlayerSlots( ) + call SetPlayerSlotAvailable( Player(0), MAP_CONTROL_USER ) + call InitGenericPlayerSlots( ) +endfunction +/**/ diff --git a/logs/file.out b/logs/file.out new file mode 100644 index 0000000..1b8344b --- /dev/null +++ b/logs/file.out @@ -0,0 +1,204 @@ +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== + +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** + +#define USE_BJ_ANTI_LEAK +#include +#include +globals + // Generated + trigger gg_trg_start = null + trigger gg_trg_spell = null + unit gg_unit_hfoo_0000 = null +#include +endglobals +#include + +function InitGlobals takes nothing returns nothing +endfunction + +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** + +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + + set u = CreateUnit( p, 'htow', -256.0, 320.0, 270.000 ) +endfunction + +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + + set gg_unit_hfoo_0000 = CreateUnit( p, 'hfoo', -340.6, 19.9, 302.210 ) +endfunction + +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0( ) +endfunction + +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0( ) +endfunction + +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings( ) + call CreatePlayerUnits( ) +endfunction + +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** + +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff( ) + call FogMaskEnable( false ) + call SetPlayerStateBJ( Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000 ) +endfunction + +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start = CreateTrigger() +#ifdef DEBUG + call YDWESaveTriggerName(gg_trg_start, "start") +#endif + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction + +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ((GetSpellAbilityId() == 'AAns')) +endfunction + +function Trig_spellActions takes nothing returns nothing + YDLocalInitialize() + call YDLocal1Set(integer, "level", GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped( 'AAns', gg_unit_hfoo_0000, ( YDLocal1Get(integer, "level") + 1 ) ) + call DisplayTextToPlayer( Player(0), 0, 0, I2S(( YDLocal1Get(integer, "level") + 1 )) ) + call YDLocal1Release() +endfunction + +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell = CreateTrigger() +#ifdef DEBUG + call YDWESaveTriggerName(gg_trg_spell, "spell") +#endif + call TriggerRegisterAnyUnitEventBJ( gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT ) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction + +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start( ) + call InitTrig_spell( ) +endfunction + +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute( gg_trg_start ) +endfunction + +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** + +function InitCustomPlayerSlots takes nothing returns nothing + + // Player 0 + call SetPlayerStartLocation( Player(0), 0 ) + call SetPlayerColor( Player(0), ConvertPlayerColor(0) ) + call SetPlayerRacePreference( Player(0), RACE_PREF_HUMAN ) + call SetPlayerRaceSelectable( Player(0), true ) + call SetPlayerController( Player(0), MAP_CONTROL_USER ) + +endfunction + +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam( Player(0), 0 ) + +endfunction + +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** + +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds( -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) ) + call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" ) + call NewSoundEnvironment( "Default" ) + call SetAmbientDaySound( "LordaeronSummerDay" ) + call SetAmbientNightSound( "LordaeronSummerNight" ) + call SetMapMusic( "Music", true, 0 ) + call CreateAllUnits( ) + call InitBlizzard( ) + call InitGlobals( ) + call InitCustomTriggers( ) + call RunInitializationTriggers( ) + +endfunction + +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** + +function config takes nothing returns nothing + call SetMapName( "只是另外一张魔兽争霸的地图" ) + call SetMapDescription( "没有说明" ) + call SetPlayers( 1 ) + call SetTeams( 1 ) + call SetGamePlacement( MAP_PLACEMENT_USE_MAP_SETTINGS ) + + call DefineStartLocation( 0, -256.0, 320.0 ) + + // Player setup + call InitCustomPlayerSlots( ) + call SetPlayerSlotAvailable( Player(0), MAP_CONTROL_USER ) + call InitGenericPlayerSlots( ) +endfunction + +/**/ diff --git a/logs/inputwar3map.j b/logs/inputwar3map.j new file mode 100644 index 0000000..4668267 --- /dev/null +++ b/logs/inputwar3map.j @@ -0,0 +1,173 @@ +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** +library YDTriggerSaveLoadSystem initializer Init +globals + hashtable YDHT + hashtable YDLOC +endglobals + private function Init takes nothing returns nothing + set YDHT = InitHashtable() + set YDLOC = InitHashtable() + endfunction +endlibrary +globals + // Generated + trigger gg_trg_start = null + trigger gg_trg_spell = null + unit gg_unit_hfoo_0000 = null +endglobals +function InitGlobals takes nothing returns nothing +endfunction +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set u = CreateUnit( p, 'htow', -256.0, 320.0, 270.000 ) +endfunction +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set gg_unit_hfoo_0000 = CreateUnit( p, 'hfoo', -340.6, 19.9, 302.210 ) +endfunction +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0( ) +endfunction +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0( ) +endfunction +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings( ) + call CreatePlayerUnits( ) +endfunction +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff( ) + call FogMaskEnable( false ) + call SetPlayerStateBJ( Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000 ) +endfunction +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start = CreateTrigger() + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ((GetSpellAbilityId() == 'AAns')) +endfunction +function Trig_spellActions takes nothing returns nothing + local integer ydl_localvar_step = LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76) + set ydl_localvar_step = ydl_localvar_step + 3 + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32, GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped( 'AAns', gg_unit_hfoo_0000, ( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32) + 1 ) ) + call DisplayTextToPlayer( Player(0), 0, 0, I2S(( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32) + 1 )) ) + call FlushChildHashtable(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step) +endfunction +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell = CreateTrigger() + call TriggerRegisterAnyUnitEventBJ( gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT ) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start( ) + call InitTrig_spell( ) +endfunction +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute( gg_trg_start ) +endfunction +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** +function InitCustomPlayerSlots takes nothing returns nothing + // Player 0 + call SetPlayerStartLocation( Player(0), 0 ) + call SetPlayerColor( Player(0), ConvertPlayerColor(0) ) + call SetPlayerRacePreference( Player(0), RACE_PREF_HUMAN ) + call SetPlayerRaceSelectable( Player(0), true ) + call SetPlayerController( Player(0), MAP_CONTROL_USER ) +endfunction +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam( Player(0), 0 ) +endfunction +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds( -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) ) + call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" ) + call NewSoundEnvironment( "Default" ) + call SetAmbientDaySound( "LordaeronSummerDay" ) + call SetAmbientNightSound( "LordaeronSummerNight" ) + call SetMapMusic( "Music", true, 0 ) + call CreateAllUnits( ) + call InitBlizzard( ) + call InitGlobals( ) + call InitCustomTriggers( ) + call RunInitializationTriggers( ) +endfunction +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** +function config takes nothing returns nothing + call SetMapName( "只是另外一张魔兽争霸的地图" ) + call SetMapDescription( "没有说明" ) + call SetPlayers( 1 ) + call SetTeams( 1 ) + call SetGamePlacement( MAP_PLACEMENT_USE_MAP_SETTINGS ) + call DefineStartLocation( 0, -256.0, 320.0 ) + // Player setup + call InitCustomPlayerSlots( ) + call SetPlayerSlotAvailable( Player(0), MAP_CONTROL_USER ) + call InitGenericPlayerSlots( ) +endfunction +/**/ diff --git a/logs/lua_processed.j b/logs/lua_processed.j new file mode 100644 index 0000000..4668267 --- /dev/null +++ b/logs/lua_processed.j @@ -0,0 +1,173 @@ +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** +library YDTriggerSaveLoadSystem initializer Init +globals + hashtable YDHT + hashtable YDLOC +endglobals + private function Init takes nothing returns nothing + set YDHT = InitHashtable() + set YDLOC = InitHashtable() + endfunction +endlibrary +globals + // Generated + trigger gg_trg_start = null + trigger gg_trg_spell = null + unit gg_unit_hfoo_0000 = null +endglobals +function InitGlobals takes nothing returns nothing +endfunction +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set u = CreateUnit( p, 'htow', -256.0, 320.0, 270.000 ) +endfunction +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p = Player(0) + local unit u + local integer unitID + local trigger t + local real life + set gg_unit_hfoo_0000 = CreateUnit( p, 'hfoo', -340.6, 19.9, 302.210 ) +endfunction +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0( ) +endfunction +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0( ) +endfunction +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings( ) + call CreatePlayerUnits( ) +endfunction +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff( ) + call FogMaskEnable( false ) + call SetPlayerStateBJ( Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000 ) +endfunction +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start = CreateTrigger() + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ((GetSpellAbilityId() == 'AAns')) +endfunction +function Trig_spellActions takes nothing returns nothing + local integer ydl_localvar_step = LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76) + set ydl_localvar_step = ydl_localvar_step + 3 + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32, GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped( 'AAns', gg_unit_hfoo_0000, ( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32) + 1 ) ) + call DisplayTextToPlayer( Player(0), 0, 0, I2S(( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step, 0xB2CB6B32) + 1 )) ) + call FlushChildHashtable(YDLOC, GetHandleId(GetTriggeringTrigger())*ydl_localvar_step) +endfunction +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell = CreateTrigger() + call TriggerRegisterAnyUnitEventBJ( gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT ) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start( ) + call InitTrig_spell( ) +endfunction +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute( gg_trg_start ) +endfunction +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** +function InitCustomPlayerSlots takes nothing returns nothing + // Player 0 + call SetPlayerStartLocation( Player(0), 0 ) + call SetPlayerColor( Player(0), ConvertPlayerColor(0) ) + call SetPlayerRacePreference( Player(0), RACE_PREF_HUMAN ) + call SetPlayerRaceSelectable( Player(0), true ) + call SetPlayerController( Player(0), MAP_CONTROL_USER ) +endfunction +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam( Player(0), 0 ) +endfunction +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds( -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) ) + call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" ) + call NewSoundEnvironment( "Default" ) + call SetAmbientDaySound( "LordaeronSummerDay" ) + call SetAmbientNightSound( "LordaeronSummerNight" ) + call SetMapMusic( "Music", true, 0 ) + call CreateAllUnits( ) + call InitBlizzard( ) + call InitGlobals( ) + call InitCustomTriggers( ) + call RunInitializationTriggers( ) +endfunction +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** +function config takes nothing returns nothing + call SetMapName( "只是另外一张魔兽争霸的地图" ) + call SetMapDescription( "没有说明" ) + call SetPlayers( 1 ) + call SetTeams( 1 ) + call SetGamePlacement( MAP_PLACEMENT_USE_MAP_SETTINGS ) + call DefineStartLocation( 0, -256.0, 320.0 ) + // Player setup + call InitCustomPlayerSlots( ) + call SetPlayerSlotAvailable( Player(0), MAP_CONTROL_USER ) + call InitGenericPlayerSlots( ) +endfunction +/**/ diff --git a/logs/outputwar3map.j b/logs/outputwar3map.j new file mode 100644 index 0000000..5c8dce0 --- /dev/null +++ b/logs/outputwar3map.j @@ -0,0 +1,190 @@ +globals +//globals from YDTriggerSaveLoadSystem: +constant boolean LIBRARY_YDTriggerSaveLoadSystem=true +hashtable YDHT +hashtable YDLOC +//endglobals from YDTriggerSaveLoadSystem + // Generated +trigger gg_trg_start= null +trigger gg_trg_spell= null +unit gg_unit_hfoo_0000= null + +trigger l__library_init + +//JASSHelper struct globals: + +endglobals + + +//library YDTriggerSaveLoadSystem: + function YDTriggerSaveLoadSystem___Init takes nothing returns nothing + set YDHT=InitHashtable() + set YDLOC=InitHashtable() + endfunction + +//library YDTriggerSaveLoadSystem ends +//=========================================================================== +// +// 只是另外一张魔兽争霸的地图 +// +// Warcraft III map script +// Generated by the Warcraft III World Editor +// Date: Tue Jul 19 11:22:49 2022 +// Map Author: 未知 +// +//=========================================================================== +//*************************************************************************** +//* +//* Global Variables +//* +//*************************************************************************** +function InitGlobals takes nothing returns nothing +endfunction +//*************************************************************************** +//* +//* Unit Creation +//* +//*************************************************************************** +//=========================================================================== +function CreateBuildingsForPlayer0 takes nothing returns nothing + local player p= Player(0) + local unit u + local integer unitID + local trigger t + local real life + set u=CreateUnit(p, 'htow', - 256.0, 320.0, 270.000) +endfunction +//=========================================================================== +function CreateUnitsForPlayer0 takes nothing returns nothing + local player p= Player(0) + local unit u + local integer unitID + local trigger t + local real life + set gg_unit_hfoo_0000=CreateUnit(p, 'hfoo', - 340.6, 19.9, 302.210) +endfunction +//=========================================================================== +function CreatePlayerBuildings takes nothing returns nothing + call CreateBuildingsForPlayer0() +endfunction +//=========================================================================== +function CreatePlayerUnits takes nothing returns nothing + call CreateUnitsForPlayer0() +endfunction +//=========================================================================== +function CreateAllUnits takes nothing returns nothing + call CreatePlayerBuildings() + call CreatePlayerUnits() +endfunction +//*************************************************************************** +//* +//* Triggers +//* +//*************************************************************************** +//=========================================================================== +// Trigger: start +//=========================================================================== +function Trig_startActions takes nothing returns nothing + call FogEnableOff() + call FogMaskEnable(false) + call SetPlayerStateBJ(Player(0), PLAYER_STATE_RESOURCE_GOLD, 1000) +endfunction +//=========================================================================== +function InitTrig_start takes nothing returns nothing + set gg_trg_start=CreateTrigger() + call TriggerAddAction(gg_trg_start, function Trig_startActions) +endfunction +//=========================================================================== +// Trigger: spell +//=========================================================================== +function Trig_spellConditions takes nothing returns boolean + return ( ( GetSpellAbilityId() == 'AAns' ) ) +endfunction +function Trig_spellActions takes nothing returns nothing + local integer ydl_localvar_step= LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76) + set ydl_localvar_step=ydl_localvar_step + 3 + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) + call SaveInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32, GetUnitAbilityLevel(gg_unit_hfoo_0000, 'AAns')) + call SetUnitAbilityLevelSwapped('AAns', gg_unit_hfoo_0000, ( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32) + 1 )) + call DisplayTextToPlayer(Player(0), 0, 0, I2S(( LoadInteger(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step, 0xB2CB6B32) + 1 ))) + call FlushChildHashtable(YDLOC, GetHandleId(GetTriggeringTrigger()) * ydl_localvar_step) +endfunction +//=========================================================================== +function InitTrig_spell takes nothing returns nothing + set gg_trg_spell=CreateTrigger() + call TriggerRegisterAnyUnitEventBJ(gg_trg_spell, EVENT_PLAYER_UNIT_SPELL_EFFECT) + call TriggerAddCondition(gg_trg_spell, Condition(function Trig_spellConditions)) + call TriggerAddAction(gg_trg_spell, function Trig_spellActions) +endfunction +//=========================================================================== +function InitCustomTriggers takes nothing returns nothing + call InitTrig_start() + call InitTrig_spell() +endfunction +//=========================================================================== +function RunInitializationTriggers takes nothing returns nothing + call ConditionalTriggerExecute(gg_trg_start) +endfunction +//*************************************************************************** +//* +//* Players +//* +//*************************************************************************** +function InitCustomPlayerSlots takes nothing returns nothing + // Player 0 + call SetPlayerStartLocation(Player(0), 0) + call SetPlayerColor(Player(0), ConvertPlayerColor(0)) + call SetPlayerRacePreference(Player(0), RACE_PREF_HUMAN) + call SetPlayerRaceSelectable(Player(0), true) + call SetPlayerController(Player(0), MAP_CONTROL_USER) +endfunction +function InitCustomTeams takes nothing returns nothing + // Force: TRIGSTR_002 + call SetPlayerTeam(Player(0), 0) +endfunction +//*************************************************************************** +//* +//* Main Initialization +//* +//*************************************************************************** +//=========================================================================== +function main takes nothing returns nothing + call SetCameraBounds(- 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), - 3328.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 3072.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 3328.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), - 3584.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM)) + call SetDayNightModels("Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl") + call NewSoundEnvironment("Default") + call SetAmbientDaySound("LordaeronSummerDay") + call SetAmbientNightSound("LordaeronSummerNight") + call SetMapMusic("Music", true, 0) + call CreateAllUnits() + call InitBlizzard() + +call ExecuteFunc("YDTriggerSaveLoadSystem___Init") + + call InitGlobals() + call InitCustomTriggers() + call RunInitializationTriggers() +endfunction +//*************************************************************************** +//* +//* Map Configuration +//* +//*************************************************************************** +function config takes nothing returns nothing + call SetMapName("只是另外一张魔兽争霸的地图") + call SetMapDescription("没有说明") + call SetPlayers(1) + call SetTeams(1) + call SetGamePlacement(MAP_PLACEMENT_USE_MAP_SETTINGS) + call DefineStartLocation(0, - 256.0, 320.0) + // Player setup + call InitCustomPlayerSlots() + call SetPlayerSlotAvailable(Player(0), MAP_CONTROL_USER) + call InitGenericPlayerSlots() +endfunction + + + + +//Struct method generated initializers/callers: + diff --git a/logs/pjass.txt b/logs/pjass.txt new file mode 100644 index 0000000..d5d0e84 --- /dev/null +++ b/logs/pjass.txt @@ -0,0 +1,4 @@ +Parse successful: 2418 lines: F:\ƽ̨༭\plugin\jasshelper\common.j +Parse successful: 10230 lines: F:\ƽ̨༭\plugin\jasshelper\blizzard.j +Parse successful: 191 lines: logs\currentmapscript.j +Parse successful: 12839 lines: diff --git a/logs/ydwe.log b/logs/ydwe.log new file mode 100644 index 0000000..c1fe6af --- /dev/null +++ b/logs/ydwe.log @@ -0,0 +1,29317 @@ +2021-11-12 13:06:14.452 [root]-[info ] ------------------------------------------------------ +2021-11-12 13:06:14.457 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-12 13:06:14.457 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-12 13:06:14.457 [root]-[info ] Windows version: 10.0.18362 +2021-11-12 13:06:14.457 [root]-[debug] Initialize script engine successfully. +2021-11-12 13:06:14.457 [root]-[info ] Script engine startup complete. +2021-11-12 13:06:14.457 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-12 13:06:14.458 [lua]-[trace] Initializing 'sys' +2021-11-12 13:06:14.462 [lua]-[trace] Initializing 'filesystem' +2021-11-12 13:06:14.467 [lua]-[trace] Initializing 'gui' +2021-11-12 13:06:14.474 [lua]-[trace] Initializing 'util' +2021-11-12 13:06:14.475 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-12 13:06:14.475 [lua]-[trace] Initializing 'ffi' +2021-11-12 13:06:14.479 [lua]-[debug] ydwe path F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1 +2021-11-12 13:06:14.479 [lua]-[trace] Initializing 'event' +2021-11-12 13:06:14.485 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-12 13:06:14.491 [lua]-[trace] Initializing 'registry' +2021-11-12 13:06:14.495 [lua]-[trace] Initializing 'version' +2021-11-12 13:06:14.495 [lua]-[trace] Initializing 'localization' +2021-11-12 13:06:14.495 [lua]-[trace] Initializing 'i18n' +2021-11-12 13:06:14.500 [lua]-[trace] Initializing 'config' +2021-11-12 13:06:14.501 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-12 13:06:14.501 [lua]-[trace] Initializing 'plugin' +2021-11-12 13:06:14.502 [lua]-[trace] Initializing 'uiloader' +2021-11-12 13:06:14.502 [lua]-[trace] Initializing 'stringify_slk' +2021-11-12 13:06:14.503 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-12 13:06:14.503 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-12 13:06:14.504 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-12 13:06:14.504 [lua]-[trace] Initializing 'lni-c' +2021-11-12 13:06:14.508 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-12 13:06:14.508 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-12 13:06:14.509 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-12 13:06:14.509 [lua]-[trace] Initializing 'w3xparser' +2021-11-12 13:06:14.514 [lua]-[trace] Initializing 'check_object' +2021-11-12 13:06:14.515 [lua]-[trace] Initializing 'ffi.storm' +2021-11-12 13:06:14.516 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-12 13:06:14.517 [lua]-[trace] Initializing 'ffi.gui' +2021-11-12 13:06:14.517 [event]-[trace] RegisterEvent id: 7 +2021-11-12 13:06:14.518 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-12 13:06:14.518 [event]-[trace] RegisterEvent id: 5 +2021-11-12 13:06:14.518 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-12 13:06:14.519 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-12 13:06:14.519 [lua]-[trace] Initializing 'compile.wave' +2021-11-12 13:06:14.520 [lua]-[trace] Initializing 'compile.template' +2021-11-12 13:06:14.520 [lua]-[trace] Initializing 'compile.cjass' +2021-11-12 13:06:14.520 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-12 13:06:14.521 [lua]-[trace] Initializing 'mpq_util' +2021-11-12 13:06:14.521 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-12 13:06:14.522 [lua]-[trace] Initializing 'compile.native' +2021-11-12 13:06:14.522 [event]-[trace] RegisterEvent id: 3 +2021-11-12 13:06:14.522 [event]-[trace] RegisterEvent id: 2 +2021-11-12 13:06:14.522 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-12 13:06:14.523 [lua]-[trace] Initializing 'w3x2lni' +2021-11-12 13:06:14.523 [lua]-[trace] Initializing 'utility' +2021-11-12 13:06:14.524 [lua]-[trace] Initializing 'mapdump' +2021-11-12 13:06:14.524 [event]-[trace] RegisterEvent id: 4 +2021-11-12 13:06:14.524 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-12 13:06:14.525 [event]-[trace] RegisterEvent id: 0 +2021-11-12 13:06:14.525 [event]-[trace] RegisterEvent id: 1 +2021-11-12 13:06:14.525 [event]-[trace] RegisterEvent id: 6 +2021-11-12 13:06:14.525 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-12 13:06:14.747 [event]-[trace] RegisterEvent id: 8 +2021-11-12 13:06:14.747 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-12 13:06:14.747 [event]-[trace] RegisterEvent id: 9 +2021-11-12 13:06:14.747 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-12 13:06:14.757 [event]-[info ] Entering main program. +2021-11-12 13:06:14.757 [event]-[debug] Command line: +2021-11-12 13:06:14.761 [lua]-[debug] ********************* on startup start ********************* +2021-11-12 13:06:14.762 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-12 13:06:14.762 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-12 13:06:14.762 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-12 13:06:14.762 [lua]-[trace] check_conflicting_ui +2021-11-12 13:06:14.763 [lua]-[trace] check_conflicting_units +2021-11-12 13:06:14.763 [lua]-[trace] clear_potential_conflicting +2021-11-12 13:06:14.763 [lua]-[trace] check_war3_version +2021-11-12 13:06:14.773 [lua]-[error] Cannot find war3.mpq +2021-11-12 13:06:14.776 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\tesh\Tesh.plcfg +2021-11-12 13:06:14.893 [lua]-[debug] Tesh loaded successfully. +2021-11-12 13:06:14.910 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDClient.plcfg +2021-11-12 13:06:14.916 [lua]-[debug] YDClient loaded successfully. +2021-11-12 13:06:14.916 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDColorizer\YDColorizer.plcfg +2021-11-12 13:06:14.917 [lua]-[warn ] failed: disable +2021-11-12 13:06:14.917 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDFont\YDFont.plcfg +2021-11-12 13:06:14.918 [lua]-[warn ] failed: disable +2021-11-12 13:06:14.918 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDInternalIdShow.plcfg +2021-11-12 13:06:14.919 [lua]-[warn ] failed: disable +2021-11-12 13:06:14.919 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDTaskbarSupport.plcfg +2021-11-12 13:06:14.970 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-12 13:06:14.973 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDTrigger.plcfg +2021-11-12 13:06:14.981 [lua]-[debug] YDTrigger loaded successfully. +2021-11-12 13:06:14.982 [lua]-[trace] Load plugin config F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\YDWeHelper.plcfg +2021-11-12 13:06:14.990 [inject]-[debug] Start installing inline hooks. +2021-11-12 13:06:14.990 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-12 13:06:14.990 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-12 13:06:14.990 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-12 13:06:14.990 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-12 13:06:14.990 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-12 13:06:14.990 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-12 13:06:14.990 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-12 13:06:14.990 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-12 13:06:14.990 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-12 13:06:14.990 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-12 13:06:14.990 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-12 13:06:14.991 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-12 13:06:14.991 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-12 13:06:14.991 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-12 13:06:14.991 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-12 13:06:14.991 [inject]-[debug] Installing inline hooks complete. +2021-11-12 13:06:14.991 [inject]-[debug] IAT hook initialization started. +2021-11-12 13:06:14.991 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-12 13:06:14.991 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-12 13:06:14.991 [inject]-[debug] IAT hook initialization completed. +2021-11-12 13:06:14.991 [inject]-[debug] Patches initialization started. +2021-11-12 13:06:14.991 [inject]-[trace] Installing syntax check patch +2021-11-12 13:06:14.991 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-12 13:06:14.991 [inject]-[trace] Installing auto disable patch +2021-11-12 13:06:14.992 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-12 13:06:14.992 [inject]-[trace] Installing enable trigger check patch +2021-11-12 13:06:14.992 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-12 13:06:14.992 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-12 13:06:14.992 [inject]-[trace] Installing doodad limit patch +2021-11-12 13:06:14.992 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-12 13:06:14.992 [inject]-[trace] Installing unit/item limit patch +2021-11-12 13:06:14.992 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-12 13:06:14.992 [inject]-[trace] Installing editor multi-instance patch +2021-11-12 13:06:14.992 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-12 13:06:14.992 [inject]-[trace] Installing attack table patch +2021-11-12 13:06:14.992 [inject]-[debug] Patches initialization completed. +2021-11-12 13:06:14.992 [inject]-[info ] YDWE startup complete. +2021-11-12 13:06:14.992 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-12 13:06:14.993 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass +2021-11-12 13:06:14.993 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\AntiBJLeak +2021-11-12 13:06:14.994 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\AntiBJLeak\detail +2021-11-12 13:06:15. 10 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\Base +2021-11-12 13:06:15. 12 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\japi +2021-11-12 13:06:15. 15 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\PreloadSL +2021-11-12 13:06:15. 16 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\system +2021-11-12 13:06:15. 16 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\system\ht +2021-11-12 13:06:15. 16 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\system\rb +2021-11-12 13:06:15. 16 [lua]-[trace] Scanning for inject files in F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass\Util +2021-11-12 13:06:15. 27 [lua]-[trace] Scanned file: 99 +2021-11-12 13:06:15. 29 [lua]-[debug] ********************* on startup end ********************* +2021-11-12 13:06:15.620 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-12 13:06:15.643 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-12 13:06:15.807 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-12 13:06:15.916 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-12 13:06:15.918 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-12 13:06:15.918 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-12 13:06:15.919 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-12 13:06:15.920 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-12 13:06:17.959 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-12 13:06:17.959 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-12 13:13:43.602 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-12 13:13:43.602 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-12 13:13:43.603 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-12 13:13:43.914 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-12 13:13:43.939 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-12 13:13:44. 92 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-12 13:18:12.842 [event]-[trace] WE is about to compile maps. +2021-11-12 13:18:12.882 [lua]-[debug] ********************* on save start ********************* +2021-11-12 13:18:12.883 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-12 13:18:12.883 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\人族无敌更新\测试图\模型整理2.w3x +2021-11-12 13:18:12.883 [lua]-[trace] Save version 1.27.0.52240 +2021-11-12 13:18:12.883 [lua]-[trace] mpq_util.update_file. +2021-11-12 13:18:12.884 [lua]-[trace] war3map.j has been extracted from 模型整理2.w3x +2021-11-12 13:18:12.884 [lua]-[trace] Processing file.out +2021-11-12 13:18:12.890 [lua]-[trace] Wave compilation start. +2021-11-12 13:18:13. 90 [lua]-[trace] Executed "F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\wave\include" --sysinclude="F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin" --include="E:\Warcraft III Frozen Throne\Maps\人族无敌更新\测试图" --include="F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\logs\file.out". +2021-11-12 13:18:13.805 [lua]-[trace] Template compilation start. +2021-11-12 13:18:13.808 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-12 13:18:13.808 [lua]-[trace] Initializing 'computed.order_list' +2021-11-12 13:18:13.810 [lua]-[trace] Initializing 'computed.order_id' +2021-11-12 13:18:13.811 [lua]-[debug] Template compilation succeeded. +2021-11-12 13:18:13.814 [lua]-[trace] JassHelper compilation start. +2021-11-12 13:18:16.187 [lua]-[trace] Executed "F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\jasshelper\jasshelper.exe" "F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\jasshelper\common.j" "F:\4_we_WorldEdit v1.2.9c\WorldEdit v1.2.9C1\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\人族无敌更新\测试图\模型整理2.w3x", returned 0 +2021-11-12 13:18:16.188 [lua]-[debug] Result true +2021-11-12 13:18:16.188 [lua]-[debug] ********************* on save end ********************* +2021-11-12 16:17:54.875 [lua]-[debug] ********************* on exit start ********************* +2021-11-12 16:17:54.875 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-12 16:17:54.875 [lua]-[trace] Unload plugin Tesh. +2021-11-12 16:17:54.879 [lua]-[trace] Unload plugin YDTrigger. +2021-11-12 16:17:54.880 [lua]-[trace] Unload plugin YDClient. +2021-11-12 16:17:54.880 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-12 16:17:54.880 [inject]-[debug] IAT hook cleanup started. +2021-11-12 16:17:54.880 [inject]-[trace] WE IAT hook cleaned. +2021-11-12 16:17:54.880 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-12 16:17:54.880 [inject]-[debug] IAT hook cleanup completed. +2021-11-12 16:17:54.880 [inject]-[debug] Inline hook uninstallation begins! +2021-11-12 16:17:54.880 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-12 16:17:54.880 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-12 16:17:54.880 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-12 16:17:54.880 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-12 16:17:54.880 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-12 16:17:54.880 [inject]-[debug] Inline hook uninstallation finished! +2021-11-12 16:17:54.880 [lua]-[debug] ********************* on exit end ********************* +2021-11-12 16:17:54.880 [event]-[info ] Main program exit. +2021-11-12 16:17:55.664 [root]-[info ] Script engine has been shut down. +2021-11-16 15:40:28.973 [root]-[info ] ------------------------------------------------------ +2021-11-16 15:40:28.976 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-16 15:40:28.976 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-16 15:40:28.976 [root]-[info ] Windows version: 10.0.18362 +2021-11-16 15:40:28.978 [root]-[debug] Initialize script engine successfully. +2021-11-16 15:40:28.978 [root]-[info ] Script engine startup complete. +2021-11-16 15:40:28.978 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-16 15:40:28.979 [lua]-[trace] Initializing 'sys' +2021-11-16 15:40:28.983 [lua]-[trace] Initializing 'filesystem' +2021-11-16 15:40:28.987 [lua]-[trace] Initializing 'gui' +2021-11-16 15:40:28.992 [lua]-[trace] Initializing 'util' +2021-11-16 15:40:28.993 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-16 15:40:28.993 [lua]-[trace] Initializing 'ffi' +2021-11-16 15:40:28.997 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-16 15:40:28.997 [lua]-[trace] Initializing 'event' +2021-11-16 15:40:29. 4 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-16 15:40:29. 8 [lua]-[trace] Initializing 'registry' +2021-11-16 15:40:29. 12 [lua]-[trace] Initializing 'version' +2021-11-16 15:40:29. 12 [lua]-[trace] Initializing 'localization' +2021-11-16 15:40:29. 13 [lua]-[trace] Initializing 'i18n' +2021-11-16 15:40:29. 18 [lua]-[trace] Initializing 'config' +2021-11-16 15:40:29. 19 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:40:29. 19 [lua]-[trace] Initializing 'plugin' +2021-11-16 15:40:29. 20 [lua]-[trace] Initializing 'uiloader' +2021-11-16 15:40:29. 21 [lua]-[trace] Initializing 'stringify_slk' +2021-11-16 15:40:29. 21 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-16 15:40:29. 21 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-16 15:40:29. 22 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-16 15:40:29. 23 [lua]-[trace] Initializing 'lni-c' +2021-11-16 15:40:29. 27 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-16 15:40:29. 28 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-16 15:40:29. 29 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-16 15:40:29. 29 [lua]-[trace] Initializing 'w3xparser' +2021-11-16 15:40:29. 33 [lua]-[trace] Initializing 'check_object' +2021-11-16 15:40:29. 34 [lua]-[trace] Initializing 'ffi.storm' +2021-11-16 15:40:29. 35 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-16 15:40:29. 35 [lua]-[trace] Initializing 'ffi.gui' +2021-11-16 15:40:29. 36 [event]-[trace] RegisterEvent id: 7 +2021-11-16 15:40:29. 36 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-16 15:40:29. 37 [event]-[trace] RegisterEvent id: 5 +2021-11-16 15:40:29. 37 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-16 15:40:29. 37 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-16 15:40:29. 38 [lua]-[trace] Initializing 'compile.wave' +2021-11-16 15:40:29. 39 [lua]-[trace] Initializing 'compile.template' +2021-11-16 15:40:29. 40 [lua]-[trace] Initializing 'compile.cjass' +2021-11-16 15:40:29. 40 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-16 15:40:29. 41 [lua]-[trace] Initializing 'mpq_util' +2021-11-16 15:40:29. 42 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-16 15:40:29. 43 [lua]-[trace] Initializing 'compile.native' +2021-11-16 15:40:29. 43 [event]-[trace] RegisterEvent id: 3 +2021-11-16 15:40:29. 43 [event]-[trace] RegisterEvent id: 2 +2021-11-16 15:40:29. 43 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-16 15:40:29. 44 [lua]-[trace] Initializing 'w3x2lni' +2021-11-16 15:40:29. 45 [lua]-[trace] Initializing 'utility' +2021-11-16 15:40:29. 45 [lua]-[trace] Initializing 'mapdump' +2021-11-16 15:40:29. 46 [event]-[trace] RegisterEvent id: 4 +2021-11-16 15:40:29. 46 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-16 15:40:29. 47 [event]-[trace] RegisterEvent id: 0 +2021-11-16 15:40:29. 47 [event]-[trace] RegisterEvent id: 1 +2021-11-16 15:40:29. 47 [event]-[trace] RegisterEvent id: 6 +2021-11-16 15:40:29. 47 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-16 15:40:29.261 [event]-[trace] RegisterEvent id: 8 +2021-11-16 15:40:29.261 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-16 15:40:29.263 [event]-[trace] RegisterEvent id: 9 +2021-11-16 15:40:29.263 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-16 15:40:29.271 [event]-[info ] Entering main program. +2021-11-16 15:40:29.271 [event]-[debug] Command line: +2021-11-16 15:40:29.274 [lua]-[debug] ********************* on startup start ********************* +2021-11-16 15:40:29.275 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-16 15:40:29.275 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-16 15:40:29.275 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:40:29.275 [lua]-[trace] check_conflicting_ui +2021-11-16 15:40:29.275 [lua]-[trace] check_conflicting_units +2021-11-16 15:40:29.276 [lua]-[trace] clear_potential_conflicting +2021-11-16 15:40:29.276 [lua]-[trace] check_war3_version +2021-11-16 15:40:29.281 [lua]-[error] Cannot find war3.mpq +2021-11-16 15:40:29.284 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-16 15:40:29.323 [lua]-[debug] Tesh loaded successfully. +2021-11-16 15:40:29.341 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-16 15:40:29.345 [lua]-[debug] YDClient loaded successfully. +2021-11-16 15:40:29.345 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-16 15:40:29.346 [lua]-[warn ] failed: disable +2021-11-16 15:40:29.346 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-16 15:40:29.347 [lua]-[warn ] failed: disable +2021-11-16 15:40:29.348 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-16 15:40:29.348 [lua]-[warn ] failed: disable +2021-11-16 15:40:29.349 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-16 15:40:29.414 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-16 15:40:29.417 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-16 15:40:29.426 [lua]-[debug] YDTrigger loaded successfully. +2021-11-16 15:40:29.427 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-16 15:40:29.433 [inject]-[debug] Start installing inline hooks. +2021-11-16 15:40:29.433 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-16 15:40:29.433 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-16 15:40:29.433 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-16 15:40:29.433 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-16 15:40:29.433 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-16 15:40:29.433 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-16 15:40:29.433 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-16 15:40:29.433 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-16 15:40:29.433 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-16 15:40:29.434 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-16 15:40:29.434 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-16 15:40:29.434 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-16 15:40:29.434 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-16 15:40:29.434 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-16 15:40:29.434 [inject]-[debug] Installing inline hooks complete. +2021-11-16 15:40:29.434 [inject]-[debug] IAT hook initialization started. +2021-11-16 15:40:29.434 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-16 15:40:29.434 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-16 15:40:29.434 [inject]-[debug] IAT hook initialization completed. +2021-11-16 15:40:29.434 [inject]-[debug] Patches initialization started. +2021-11-16 15:40:29.434 [inject]-[trace] Installing syntax check patch +2021-11-16 15:40:29.434 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-16 15:40:29.434 [inject]-[trace] Installing auto disable patch +2021-11-16 15:40:29.434 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-16 15:40:29.434 [inject]-[trace] Installing enable trigger check patch +2021-11-16 15:40:29.434 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-16 15:40:29.434 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-16 15:40:29.434 [inject]-[trace] Installing doodad limit patch +2021-11-16 15:40:29.434 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-16 15:40:29.435 [inject]-[trace] Installing unit/item limit patch +2021-11-16 15:40:29.435 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-16 15:40:29.435 [inject]-[trace] Installing editor multi-instance patch +2021-11-16 15:40:29.435 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-16 15:40:29.435 [inject]-[trace] Installing attack table patch +2021-11-16 15:40:29.435 [inject]-[debug] Patches initialization completed. +2021-11-16 15:40:29.435 [inject]-[info ] YDWE startup complete. +2021-11-16 15:40:29.435 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-16 15:40:29.436 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-16 15:40:29.436 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-16 15:40:29.436 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-16 15:40:29.459 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-16 15:40:29.462 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-16 15:40:29.464 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-16 15:40:29.464 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-16 15:40:29.464 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-16 15:40:29.465 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-16 15:40:29.465 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-16 15:40:29.475 [lua]-[trace] Scanned file: 99 +2021-11-16 15:40:29.477 [lua]-[debug] ********************* on startup end ********************* +2021-11-16 15:40:30. 59 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 15:40:30. 84 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 15:40:30.255 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 15:40:30.382 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-16 15:40:30.384 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-16 15:40:30.385 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-16 15:40:30.386 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-16 15:40:30.387 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-16 15:40:32.323 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-16 15:40:32.324 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-16 15:41:26.982 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 15:41:26.982 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 15:41:26.982 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 15:41:27.272 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 15:41:27.300 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 15:41:27.455 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 15:48:47.993 [event]-[trace] WE is about to compile maps. +2021-11-16 15:48:48.178 [lua]-[debug] ********************* on save start ********************* +2021-11-16 15:48:48.179 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:48:48.179 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:48:48.179 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 15:48:48.179 [lua]-[trace] mpq_util.update_file. +2021-11-16 15:48:48.182 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:48:48.182 [lua]-[trace] Processing file.out +2021-11-16 15:48:48.212 [lua]-[trace] Writing code to file.out +2021-11-16 15:48:48.212 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 15:48:48.215 [lua]-[trace] Injection completed +2021-11-16 15:48:48.216 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 15:48:48.217 [lua]-[trace] Injection completed +2021-11-16 15:48:48.217 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 15:48:48.217 [lua]-[trace] Injection completed +2021-11-16 15:48:48.217 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 15:48:48.218 [lua]-[trace] Injection completed +2021-11-16 15:48:48.218 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 15:48:48.219 [lua]-[trace] Injection completed +2021-11-16 15:48:48.219 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 15:48:48.220 [lua]-[trace] Injection completed +2021-11-16 15:48:48.220 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 15:48:48.220 [lua]-[trace] Injection completed +2021-11-16 15:48:48.220 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 15:48:48.220 [lua]-[trace] Injection completed +2021-11-16 15:48:48.221 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 15:48:48.221 [lua]-[trace] Injection completed +2021-11-16 15:48:48.221 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 15:48:48.222 [lua]-[trace] Injection completed +2021-11-16 15:48:48.222 [lua]-[trace] Wave compilation start. +2021-11-16 15:48:48.342 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 15:48:49.734 [lua]-[trace] Template compilation start. +2021-11-16 15:48:49.758 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-16 15:48:49.759 [lua]-[trace] Initializing 'computed.order_list' +2021-11-16 15:48:49.760 [lua]-[trace] Initializing 'computed.order_id' +2021-11-16 15:48:49.766 [lua]-[debug] Template compilation succeeded. +2021-11-16 15:48:49.776 [lua]-[trace] JassHelper compilation start. +2021-11-16 15:48:51.667 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 1 +2021-11-16 15:48:51.667 [lua]-[debug] Result false +2021-11-16 15:48:51.667 [lua]-[debug] ********************* on save end ********************* +2021-11-16 15:49:01.770 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:49:01.770 [event]-[trace] No need to compile. +2021-11-16 15:49:01.770 [lua]-[debug] ********************* on test start ********************* +2021-11-16 15:49:01.771 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:49:01.771 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:49:01.771 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:49:01.771 [lua]-[debug] Testing 0 +2021-11-16 15:49:01.877 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 15:49:01.877 [lua]-[debug] ********************* on test end ********************* +2021-11-16 15:49:07.161 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\bin\YDWEConfig.exe". +2021-11-16 15:49:22.650 [event]-[trace] WE is about to compile maps. +2021-11-16 15:49:22.843 [lua]-[debug] ********************* on save start ********************* +2021-11-16 15:49:22.844 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:49:22.844 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:49:22.844 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 15:49:22.844 [lua]-[trace] mpq_util.update_file. +2021-11-16 15:49:22.847 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:49:22.847 [lua]-[trace] Processing file.out +2021-11-16 15:49:22.872 [lua]-[trace] Writing code to file.out +2021-11-16 15:49:22.872 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 15:49:22.872 [lua]-[trace] Injection completed +2021-11-16 15:49:22.872 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 15:49:22.873 [lua]-[trace] Injection completed +2021-11-16 15:49:22.873 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 15:49:22.873 [lua]-[trace] Injection completed +2021-11-16 15:49:22.873 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 15:49:22.873 [lua]-[trace] Injection completed +2021-11-16 15:49:22.873 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 15:49:22.873 [lua]-[trace] Injection completed +2021-11-16 15:49:22.873 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 15:49:22.873 [lua]-[trace] Injection completed +2021-11-16 15:49:22.873 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 15:49:22.874 [lua]-[trace] Injection completed +2021-11-16 15:49:22.874 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 15:49:22.874 [lua]-[trace] Injection completed +2021-11-16 15:49:22.874 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 15:49:22.874 [lua]-[trace] Injection completed +2021-11-16 15:49:22.874 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 15:49:22.874 [lua]-[trace] Injection completed +2021-11-16 15:49:22.874 [lua]-[trace] Wave compilation start. +2021-11-16 15:49:22.891 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 15:49:24.130 [lua]-[trace] Template compilation start. +2021-11-16 15:49:24.157 [lua]-[debug] Template compilation succeeded. +2021-11-16 15:49:24.167 [lua]-[trace] JassHelper compilation start. +2021-11-16 15:49:25.938 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 1 +2021-11-16 15:49:25.939 [lua]-[debug] Result false +2021-11-16 15:49:25.939 [lua]-[debug] ********************* on save end ********************* +2021-11-16 15:50:41.289 [event]-[trace] WE is about to compile maps. +2021-11-16 15:50:41.475 [lua]-[debug] ********************* on save start ********************* +2021-11-16 15:50:41.476 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:50:41.476 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:50:41.476 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 15:50:41.476 [lua]-[trace] mpq_util.update_file. +2021-11-16 15:50:41.481 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:50:41.481 [lua]-[trace] Processing file.out +2021-11-16 15:50:41.506 [lua]-[trace] Writing code to file.out +2021-11-16 15:50:41.507 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 15:50:41.507 [lua]-[trace] Injection completed +2021-11-16 15:50:41.507 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 15:50:41.508 [lua]-[trace] Injection completed +2021-11-16 15:50:41.508 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 15:50:41.508 [lua]-[trace] Injection completed +2021-11-16 15:50:41.508 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 15:50:41.508 [lua]-[trace] Injection completed +2021-11-16 15:50:41.508 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 15:50:41.508 [lua]-[trace] Injection completed +2021-11-16 15:50:41.509 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 15:50:41.509 [lua]-[trace] Injection completed +2021-11-16 15:50:41.509 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 15:50:41.509 [lua]-[trace] Injection completed +2021-11-16 15:50:41.509 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 15:50:41.509 [lua]-[trace] Injection completed +2021-11-16 15:50:41.509 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 15:50:41.509 [lua]-[trace] Injection completed +2021-11-16 15:50:41.509 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 15:50:41.510 [lua]-[trace] Injection completed +2021-11-16 15:50:41.510 [lua]-[trace] Wave compilation start. +2021-11-16 15:50:41.528 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 15:50:42.703 [lua]-[trace] Template compilation start. +2021-11-16 15:50:42.723 [lua]-[debug] Template compilation succeeded. +2021-11-16 15:50:42.731 [lua]-[trace] JassHelper compilation start. +2021-11-16 15:50:44.467 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 1 +2021-11-16 15:50:44.467 [lua]-[debug] Result false +2021-11-16 15:50:44.467 [lua]-[debug] ********************* on save end ********************* +2021-11-16 15:51:04.377 [event]-[trace] WE is about to compile maps. +2021-11-16 15:51:04.562 [lua]-[debug] ********************* on save start ********************* +2021-11-16 15:51:04.562 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:51:04.562 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:51:04.563 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 15:51:04.563 [lua]-[trace] mpq_util.update_file. +2021-11-16 15:51:04.565 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 15:51:04.565 [lua]-[trace] Processing file.out +2021-11-16 15:51:04.592 [lua]-[trace] Writing code to file.out +2021-11-16 15:51:04.593 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 15:51:04.593 [lua]-[trace] Injection completed +2021-11-16 15:51:04.593 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 15:51:04.593 [lua]-[trace] Injection completed +2021-11-16 15:51:04.593 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 15:51:04.593 [lua]-[trace] Injection completed +2021-11-16 15:51:04.593 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 15:51:04.594 [lua]-[trace] Injection completed +2021-11-16 15:51:04.594 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 15:51:04.594 [lua]-[trace] Injection completed +2021-11-16 15:51:04.594 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 15:51:04.594 [lua]-[trace] Injection completed +2021-11-16 15:51:04.594 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 15:51:04.594 [lua]-[trace] Injection completed +2021-11-16 15:51:04.594 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 15:51:04.595 [lua]-[trace] Injection completed +2021-11-16 15:51:04.595 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 15:51:04.595 [lua]-[trace] Injection completed +2021-11-16 15:51:04.595 [lua]-[trace] Wave compilation start. +2021-11-16 15:51:04.612 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 15:51:05.791 [lua]-[trace] Template compilation start. +2021-11-16 15:51:05.809 [lua]-[debug] Template compilation succeeded. +2021-11-16 15:51:05.818 [lua]-[trace] JassHelper compilation start. +2021-11-16 15:51:07.957 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 0 +2021-11-16 15:51:07.957 [lua]-[debug] Result true +2021-11-16 15:51:07.957 [lua]-[debug] ********************* on save end ********************* +2021-11-16 15:51:17.266 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:51:17.266 [event]-[trace] No need to compile. +2021-11-16 15:51:17.266 [lua]-[debug] ********************* on test start ********************* +2021-11-16 15:51:17.267 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 15:51:17.267 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:51:17.267 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 15:51:17.267 [lua]-[debug] Testing 0 +2021-11-16 15:51:17.379 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 15:51:17.379 [lua]-[debug] ********************* on test end ********************* +2021-11-16 16:00:12. 74 [event]-[trace] WE is about to compile maps. +2021-11-16 16:00:12.258 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:00:12.259 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:00:12.259 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:12.259 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:00:12.260 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:00:12.263 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:12.263 [lua]-[trace] Processing file.out +2021-11-16 16:00:12.292 [lua]-[trace] Writing code to file.out +2021-11-16 16:00:12.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:00:12.292 [lua]-[trace] Injection completed +2021-11-16 16:00:12.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:00:12.292 [lua]-[trace] Injection completed +2021-11-16 16:00:12.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:00:12.292 [lua]-[trace] Injection completed +2021-11-16 16:00:12.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:00:12.293 [lua]-[trace] Injection completed +2021-11-16 16:00:12.293 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:00:12.293 [lua]-[trace] Injection completed +2021-11-16 16:00:12.293 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:00:12.293 [lua]-[trace] Injection completed +2021-11-16 16:00:12.293 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:00:12.293 [lua]-[trace] Injection completed +2021-11-16 16:00:12.293 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:00:12.293 [lua]-[trace] Injection completed +2021-11-16 16:00:12.293 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:00:12.294 [lua]-[trace] Injection completed +2021-11-16 16:00:12.294 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:00:12.294 [lua]-[trace] Injection completed +2021-11-16 16:00:12.294 [lua]-[trace] Wave compilation start. +2021-11-16 16:00:12.311 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:00:14.153 [lua]-[trace] Template compilation start. +2021-11-16 16:00:14.176 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:00:14.186 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:00:15.995 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 1 +2021-11-16 16:00:15.996 [lua]-[debug] Result false +2021-11-16 16:00:15.996 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:00:40.697 [event]-[trace] WE is about to compile maps. +2021-11-16 16:00:40.874 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:00:40.875 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:00:40.875 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:40.875 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:00:40.875 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:00:40.878 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:40.878 [lua]-[trace] Processing file.out +2021-11-16 16:00:40.902 [lua]-[trace] Writing code to file.out +2021-11-16 16:00:40.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:00:40.902 [lua]-[trace] Injection completed +2021-11-16 16:00:40.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:00:40.903 [lua]-[trace] Injection completed +2021-11-16 16:00:40.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:00:40.903 [lua]-[trace] Injection completed +2021-11-16 16:00:40.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:00:40.903 [lua]-[trace] Injection completed +2021-11-16 16:00:40.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:00:40.903 [lua]-[trace] Injection completed +2021-11-16 16:00:40.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:00:40.903 [lua]-[trace] Injection completed +2021-11-16 16:00:40.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:00:40.904 [lua]-[trace] Injection completed +2021-11-16 16:00:40.904 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:00:40.904 [lua]-[trace] Injection completed +2021-11-16 16:00:40.904 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:00:40.904 [lua]-[trace] Injection completed +2021-11-16 16:00:40.905 [lua]-[trace] Wave compilation start. +2021-11-16 16:00:40.924 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:00:41.927 [lua]-[trace] Template compilation start. +2021-11-16 16:00:41.944 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:00:41.951 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:00:44. 57 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 0 +2021-11-16 16:00:44. 58 [lua]-[debug] Result true +2021-11-16 16:00:44. 58 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:00:53.143 [event]-[trace] WE is about to compile maps. +2021-11-16 16:00:53.346 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:00:53.347 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:00:53.347 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:53.347 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:00:53.347 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:00:53.355 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:00:53.355 [lua]-[trace] Processing file.out +2021-11-16 16:00:53.382 [lua]-[trace] Writing code to file.out +2021-11-16 16:00:53.382 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:00:53.382 [lua]-[trace] Injection completed +2021-11-16 16:00:53.382 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:00:53.382 [lua]-[trace] Injection completed +2021-11-16 16:00:53.382 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:00:53.382 [lua]-[trace] Injection completed +2021-11-16 16:00:53.382 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:00:53.383 [lua]-[trace] Injection completed +2021-11-16 16:00:53.383 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:00:53.383 [lua]-[trace] Injection completed +2021-11-16 16:00:53.383 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:00:53.383 [lua]-[trace] Injection completed +2021-11-16 16:00:53.383 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:00:53.383 [lua]-[trace] Injection completed +2021-11-16 16:00:53.383 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:00:53.383 [lua]-[trace] Injection completed +2021-11-16 16:00:53.383 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:00:53.384 [lua]-[trace] Injection completed +2021-11-16 16:00:53.384 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:00:53.384 [lua]-[trace] Injection completed +2021-11-16 16:00:53.384 [lua]-[trace] Wave compilation start. +2021-11-16 16:00:53.400 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:00:55.287 [lua]-[trace] Template compilation start. +2021-11-16 16:00:55.312 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:00:55.321 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:00:57. 75 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 1 +2021-11-16 16:00:57. 75 [lua]-[debug] Result false +2021-11-16 16:00:57. 75 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:01:26.783 [event]-[trace] WE is about to compile maps. +2021-11-16 16:01:26.960 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:01:26.960 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:01:26.961 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:01:26.961 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:01:26.961 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:01:26.963 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:01:26.963 [lua]-[trace] Processing file.out +2021-11-16 16:01:26.987 [lua]-[trace] Writing code to file.out +2021-11-16 16:01:26.987 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:01:26.988 [lua]-[trace] Injection completed +2021-11-16 16:01:26.988 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:01:26.988 [lua]-[trace] Injection completed +2021-11-16 16:01:26.988 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:01:26.988 [lua]-[trace] Injection completed +2021-11-16 16:01:26.988 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:01:26.989 [lua]-[trace] Injection completed +2021-11-16 16:01:26.989 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:01:26.989 [lua]-[trace] Injection completed +2021-11-16 16:01:26.989 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:01:26.990 [lua]-[trace] Injection completed +2021-11-16 16:01:26.990 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:01:26.990 [lua]-[trace] Injection completed +2021-11-16 16:01:26.990 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:01:26.990 [lua]-[trace] Injection completed +2021-11-16 16:01:26.990 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:01:26.990 [lua]-[trace] Injection completed +2021-11-16 16:01:26.990 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:01:26.991 [lua]-[trace] Injection completed +2021-11-16 16:01:26.991 [lua]-[trace] Wave compilation start. +2021-11-16 16:01:27. 11 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:01:28.876 [lua]-[trace] Template compilation start. +2021-11-16 16:01:28.899 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:01:28.908 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:01:31.129 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 0 +2021-11-16 16:01:31.130 [lua]-[debug] Result true +2021-11-16 16:01:31.130 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:02:49. 39 [event]-[trace] WE is about to compile maps. +2021-11-16 16:02:49.227 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:02:49.227 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:02:49.227 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:02:49.228 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:02:49.228 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:02:49.230 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:02:49.230 [lua]-[trace] Processing file.out +2021-11-16 16:02:49.252 [lua]-[trace] Writing code to file.out +2021-11-16 16:02:49.252 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:02:49.252 [lua]-[trace] Injection completed +2021-11-16 16:02:49.252 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:02:49.253 [lua]-[trace] Injection completed +2021-11-16 16:02:49.253 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:02:49.253 [lua]-[trace] Injection completed +2021-11-16 16:02:49.253 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:02:49.253 [lua]-[trace] Injection completed +2021-11-16 16:02:49.253 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:02:49.254 [lua]-[trace] Injection completed +2021-11-16 16:02:49.254 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:02:49.254 [lua]-[trace] Injection completed +2021-11-16 16:02:49.254 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:02:49.254 [lua]-[trace] Injection completed +2021-11-16 16:02:49.254 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:02:49.254 [lua]-[trace] Injection completed +2021-11-16 16:02:49.254 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:02:49.254 [lua]-[trace] Injection completed +2021-11-16 16:02:49.254 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:02:49.255 [lua]-[trace] Injection completed +2021-11-16 16:02:49.255 [lua]-[trace] Wave compilation start. +2021-11-16 16:02:49.273 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:02:51.102 [lua]-[trace] Template compilation start. +2021-11-16 16:02:51.123 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:02:51.133 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:02:53.312 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 0 +2021-11-16 16:02:53.312 [lua]-[debug] Result true +2021-11-16 16:02:53.312 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:03:05.153 [event]-[trace] WE is about to compile maps. +2021-11-16 16:03:05.383 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:03:05.384 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:03:05.384 [lua]-[trace] Saving C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:03:05.384 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:03:05.384 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:03:05.386 [lua]-[trace] war3map.j has been extracted from 6EA3B8E5183A59C5AB8F86C496310A12.w3x +2021-11-16 16:03:05.386 [lua]-[trace] Processing file.out +2021-11-16 16:03:05.411 [lua]-[trace] Writing code to file.out +2021-11-16 16:03:05.411 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:03:05.411 [lua]-[trace] Injection completed +2021-11-16 16:03:05.411 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:03:05.412 [lua]-[trace] Injection completed +2021-11-16 16:03:05.412 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:03:05.412 [lua]-[trace] Injection completed +2021-11-16 16:03:05.412 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:03:05.412 [lua]-[trace] Injection completed +2021-11-16 16:03:05.412 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:03:05.412 [lua]-[trace] Injection completed +2021-11-16 16:03:05.412 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:03:05.413 [lua]-[trace] Injection completed +2021-11-16 16:03:05.413 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:03:05.413 [lua]-[trace] Injection completed +2021-11-16 16:03:05.413 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:03:05.413 [lua]-[trace] Injection completed +2021-11-16 16:03:05.413 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:03:05.413 [lua]-[trace] Injection completed +2021-11-16 16:03:05.413 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:03:05.414 [lua]-[trace] Injection completed +2021-11-16 16:03:05.414 [lua]-[trace] Wave compilation start. +2021-11-16 16:03:05.434 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:03:07.383 [lua]-[trace] Template compilation start. +2021-11-16 16:03:07.403 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:03:07.412 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:03:09.542 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "C:\Users\s3830\Documents\Warcraft III\Maps\dz\rpg\6EA3B8E5183A59C5AB8F86C496310A12.w3x", returned 0 +2021-11-16 16:03:09.542 [lua]-[debug] Result true +2021-11-16 16:03:09.542 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:04:05.464 [lua]-[debug] ********************* on exit start ********************* +2021-11-16 16:04:05.464 [lua]-[trace] Unload plugin YDClient. +2021-11-16 16:04:05.464 [lua]-[trace] Unload plugin Tesh. +2021-11-16 16:04:05.469 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-16 16:04:05.469 [lua]-[trace] Unload plugin YDTrigger. +2021-11-16 16:04:05.470 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-16 16:04:05.470 [inject]-[debug] IAT hook cleanup started. +2021-11-16 16:04:05.470 [inject]-[trace] WE IAT hook cleaned. +2021-11-16 16:04:05.470 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-16 16:04:05.470 [inject]-[debug] IAT hook cleanup completed. +2021-11-16 16:04:05.470 [inject]-[debug] Inline hook uninstallation begins! +2021-11-16 16:04:05.470 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-16 16:04:05.470 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-16 16:04:05.470 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-16 16:04:05.470 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-16 16:04:05.470 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-16 16:04:05.470 [inject]-[debug] Inline hook uninstallation finished! +2021-11-16 16:04:05.470 [lua]-[debug] ********************* on exit end ********************* +2021-11-16 16:04:05.470 [event]-[info ] Main program exit. +2021-11-16 16:06:02.583 [root]-[info ] ------------------------------------------------------ +2021-11-16 16:06:02.585 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-16 16:06:02.585 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-16 16:06:02.585 [root]-[info ] Windows version: 10.0.18362 +2021-11-16 16:06:02.586 [root]-[debug] Initialize script engine successfully. +2021-11-16 16:06:02.586 [root]-[info ] Script engine startup complete. +2021-11-16 16:06:02.586 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-16 16:06:02.587 [lua]-[trace] Initializing 'sys' +2021-11-16 16:06:02.589 [lua]-[trace] Initializing 'filesystem' +2021-11-16 16:06:02.592 [lua]-[trace] Initializing 'gui' +2021-11-16 16:06:02.594 [lua]-[trace] Initializing 'util' +2021-11-16 16:06:02.595 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-16 16:06:02.596 [lua]-[trace] Initializing 'ffi' +2021-11-16 16:06:02.600 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-16 16:06:02.600 [lua]-[trace] Initializing 'event' +2021-11-16 16:06:02.605 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-16 16:06:02.609 [lua]-[trace] Initializing 'registry' +2021-11-16 16:06:02.612 [lua]-[trace] Initializing 'version' +2021-11-16 16:06:02.613 [lua]-[trace] Initializing 'localization' +2021-11-16 16:06:02.613 [lua]-[trace] Initializing 'i18n' +2021-11-16 16:06:02.616 [lua]-[trace] Initializing 'config' +2021-11-16 16:06:02.617 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:06:02.617 [lua]-[trace] Initializing 'plugin' +2021-11-16 16:06:02.618 [lua]-[trace] Initializing 'uiloader' +2021-11-16 16:06:02.618 [lua]-[trace] Initializing 'stringify_slk' +2021-11-16 16:06:02.619 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-16 16:06:02.619 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-16 16:06:02.620 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-16 16:06:02.621 [lua]-[trace] Initializing 'lni-c' +2021-11-16 16:06:02.625 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-16 16:06:02.625 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-16 16:06:02.626 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-16 16:06:02.626 [lua]-[trace] Initializing 'w3xparser' +2021-11-16 16:06:02.629 [lua]-[trace] Initializing 'check_object' +2021-11-16 16:06:02.630 [lua]-[trace] Initializing 'ffi.storm' +2021-11-16 16:06:02.631 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-16 16:06:02.631 [lua]-[trace] Initializing 'ffi.gui' +2021-11-16 16:06:02.632 [event]-[trace] RegisterEvent id: 7 +2021-11-16 16:06:02.632 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-16 16:06:02.632 [event]-[trace] RegisterEvent id: 5 +2021-11-16 16:06:02.632 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-16 16:06:02.633 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-16 16:06:02.633 [lua]-[trace] Initializing 'compile.wave' +2021-11-16 16:06:02.634 [lua]-[trace] Initializing 'compile.template' +2021-11-16 16:06:02.634 [lua]-[trace] Initializing 'compile.cjass' +2021-11-16 16:06:02.634 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-16 16:06:02.635 [lua]-[trace] Initializing 'mpq_util' +2021-11-16 16:06:02.635 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-16 16:06:02.636 [lua]-[trace] Initializing 'compile.native' +2021-11-16 16:06:02.637 [event]-[trace] RegisterEvent id: 3 +2021-11-16 16:06:02.637 [event]-[trace] RegisterEvent id: 2 +2021-11-16 16:06:02.637 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-16 16:06:02.638 [lua]-[trace] Initializing 'w3x2lni' +2021-11-16 16:06:02.638 [lua]-[trace] Initializing 'utility' +2021-11-16 16:06:02.639 [lua]-[trace] Initializing 'mapdump' +2021-11-16 16:06:02.639 [event]-[trace] RegisterEvent id: 4 +2021-11-16 16:06:02.639 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-16 16:06:02.640 [event]-[trace] RegisterEvent id: 0 +2021-11-16 16:06:02.640 [event]-[trace] RegisterEvent id: 1 +2021-11-16 16:06:02.640 [event]-[trace] RegisterEvent id: 6 +2021-11-16 16:06:02.640 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-16 16:06:02.848 [event]-[trace] RegisterEvent id: 8 +2021-11-16 16:06:02.848 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-16 16:06:02.849 [event]-[trace] RegisterEvent id: 9 +2021-11-16 16:06:02.849 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-16 16:06:02.855 [event]-[info ] Entering main program. +2021-11-16 16:06:02.855 [event]-[debug] Command line: +2021-11-16 16:06:02.858 [lua]-[debug] ********************* on startup start ********************* +2021-11-16 16:06:02.859 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-16 16:06:02.859 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-16 16:06:02.860 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:06:02.860 [lua]-[trace] check_conflicting_ui +2021-11-16 16:06:02.860 [lua]-[trace] check_conflicting_units +2021-11-16 16:06:02.860 [lua]-[trace] clear_potential_conflicting +2021-11-16 16:06:02.860 [lua]-[trace] check_war3_version +2021-11-16 16:06:02.864 [lua]-[error] Cannot find war3.mpq +2021-11-16 16:06:02.866 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-16 16:06:02.892 [lua]-[debug] Tesh loaded successfully. +2021-11-16 16:06:02.905 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-16 16:06:02.907 [lua]-[debug] YDClient loaded successfully. +2021-11-16 16:06:02.908 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-16 16:06:02.908 [lua]-[warn ] failed: disable +2021-11-16 16:06:02.909 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-16 16:06:02.909 [lua]-[warn ] failed: disable +2021-11-16 16:06:02.910 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-16 16:06:02.911 [lua]-[warn ] failed: disable +2021-11-16 16:06:02.911 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-16 16:06:02.962 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-16 16:06:02.964 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-16 16:06:02.967 [lua]-[debug] YDTrigger loaded successfully. +2021-11-16 16:06:02.967 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-16 16:06:02.972 [inject]-[debug] Start installing inline hooks. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-16 16:06:02.972 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-16 16:06:02.972 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-16 16:06:02.972 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-16 16:06:02.972 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-16 16:06:02.972 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-16 16:06:02.972 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-16 16:06:02.972 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-16 16:06:02.972 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-16 16:06:02.972 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-16 16:06:02.973 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-16 16:06:02.973 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-16 16:06:02.973 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-16 16:06:02.973 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-16 16:06:02.973 [inject]-[debug] Installing inline hooks complete. +2021-11-16 16:06:02.973 [inject]-[debug] IAT hook initialization started. +2021-11-16 16:06:02.973 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-16 16:06:02.973 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-16 16:06:02.973 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-16 16:06:02.973 [inject]-[debug] IAT hook initialization completed. +2021-11-16 16:06:02.973 [inject]-[debug] Patches initialization started. +2021-11-16 16:06:02.973 [inject]-[trace] Installing syntax check patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing auto disable patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing enable trigger check patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-16 16:06:02.973 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing doodad limit patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing unit/item limit patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing editor multi-instance patch +2021-11-16 16:06:02.973 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-16 16:06:02.973 [inject]-[trace] Installing attack table patch +2021-11-16 16:06:02.974 [inject]-[debug] Patches initialization completed. +2021-11-16 16:06:02.974 [inject]-[info ] YDWE startup complete. +2021-11-16 16:06:02.974 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-16 16:06:02.974 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-16 16:06:02.975 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-16 16:06:02.975 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-16 16:06:02.990 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-16 16:06:02.992 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-16 16:06:02.994 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-16 16:06:02.995 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-16 16:06:02.995 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-16 16:06:02.995 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-16 16:06:02.995 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-16 16:06:03. 1 [lua]-[trace] Scanned file: 99 +2021-11-16 16:06:03. 3 [lua]-[debug] ********************* on startup end ********************* +2021-11-16 16:06:03.586 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:06:03.609 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:06:03.747 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:06:03.842 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-16 16:06:03.846 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-16 16:06:03.849 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-16 16:06:03.852 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-16 16:06:03.855 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-16 16:06:05.795 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-16 16:06:05.796 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-16 16:06:19.544 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:06:19.544 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:06:19.544 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:06:19.806 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:06:19.844 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:06:19.991 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:08:24.715 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:08:24.715 [event]-[trace] No need to compile. +2021-11-16 16:08:24.715 [lua]-[debug] ********************* on test start ********************* +2021-11-16 16:08:24.716 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:08:24.716 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:08:24.716 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:08:24.716 [lua]-[debug] Testing 0 +2021-11-16 16:08:24.887 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 16:08:24.887 [lua]-[debug] ********************* on test end ********************* +2021-11-16 16:17:01.402 [event]-[trace] WE is about to compile maps. +2021-11-16 16:17:01.537 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:17:01.538 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:17:01.538 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗.w3x +2021-11-16 16:17:01.538 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:17:01.538 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:17:01.541 [lua]-[trace] war3map.j has been extracted from 破碎乱斗.w3x +2021-11-16 16:17:01.541 [lua]-[trace] Processing file.out +2021-11-16 16:17:01.566 [lua]-[trace] Writing code to file.out +2021-11-16 16:17:01.566 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-16 16:17:01.566 [lua]-[trace] Injection completed +2021-11-16 16:17:01.566 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:17:01.566 [lua]-[trace] Injection completed +2021-11-16 16:17:01.566 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-16 16:17:01.566 [lua]-[trace] Injection completed +2021-11-16 16:17:01.567 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-16 16:17:01.567 [lua]-[trace] Injection completed +2021-11-16 16:17:01.567 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-16 16:17:01.567 [lua]-[trace] Injection completed +2021-11-16 16:17:01.567 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-16 16:17:01.567 [lua]-[trace] Injection completed +2021-11-16 16:17:01.567 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-16 16:17:01.567 [lua]-[trace] Injection completed +2021-11-16 16:17:01.567 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-16 16:17:01.568 [lua]-[trace] Injection completed +2021-11-16 16:17:01.568 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-16 16:17:01.568 [lua]-[trace] Injection completed +2021-11-16 16:17:01.568 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-16 16:17:01.568 [lua]-[trace] Injection completed +2021-11-16 16:17:01.571 [lua]-[trace] Wave compilation start. +2021-11-16 16:17:01.592 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:17:03.525 [lua]-[trace] Template compilation start. +2021-11-16 16:17:03.544 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-16 16:17:03.545 [lua]-[trace] Initializing 'computed.order_list' +2021-11-16 16:17:03.546 [lua]-[trace] Initializing 'computed.order_id' +2021-11-16 16:17:03.552 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:17:03.561 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:17:05.723 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗.w3x", returned 0 +2021-11-16 16:17:05.724 [lua]-[debug] Result true +2021-11-16 16:17:05.724 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:17:06.444 [lua]-[debug] ********************* on exit start ********************* +2021-11-16 16:17:06.444 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-16 16:17:06.444 [lua]-[trace] Unload plugin YDTrigger. +2021-11-16 16:17:06.445 [lua]-[trace] Unload plugin YDClient. +2021-11-16 16:17:06.445 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-16 16:17:06.445 [inject]-[debug] IAT hook cleanup started. +2021-11-16 16:17:06.445 [inject]-[trace] WE IAT hook cleaned. +2021-11-16 16:17:06.445 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-16 16:17:06.445 [inject]-[debug] IAT hook cleanup completed. +2021-11-16 16:17:06.445 [inject]-[debug] Inline hook uninstallation begins! +2021-11-16 16:17:06.445 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-16 16:17:06.446 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-16 16:17:06.446 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-16 16:17:06.446 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-16 16:17:06.446 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-16 16:17:06.446 [inject]-[debug] Inline hook uninstallation finished! +2021-11-16 16:17:06.446 [lua]-[trace] Unload plugin Tesh. +2021-11-16 16:17:06.458 [lua]-[debug] ********************* on exit end ********************* +2021-11-16 16:17:06.458 [event]-[info ] Main program exit. +2021-11-16 16:17:06.709 [root]-[info ] Script engine has been shut down. +2021-11-16 16:23:10. 8 [root]-[info ] ------------------------------------------------------ +2021-11-16 16:23:10. 11 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-16 16:23:10. 11 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-16 16:23:10. 11 [root]-[info ] Windows version: 10.0.18362 +2021-11-16 16:23:10. 12 [root]-[debug] Initialize script engine successfully. +2021-11-16 16:23:10. 12 [root]-[info ] Script engine startup complete. +2021-11-16 16:23:10. 12 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-16 16:23:10. 12 [lua]-[trace] Initializing 'sys' +2021-11-16 16:23:10. 13 [lua]-[trace] Initializing 'filesystem' +2021-11-16 16:23:10. 14 [lua]-[trace] Initializing 'gui' +2021-11-16 16:23:10. 15 [lua]-[trace] Initializing 'util' +2021-11-16 16:23:10. 16 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-16 16:23:10. 16 [lua]-[trace] Initializing 'ffi' +2021-11-16 16:23:10. 18 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-16 16:23:10. 18 [lua]-[trace] Initializing 'event' +2021-11-16 16:23:10. 21 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-16 16:23:10. 22 [lua]-[trace] Initializing 'registry' +2021-11-16 16:23:10. 23 [lua]-[trace] Initializing 'version' +2021-11-16 16:23:10. 24 [lua]-[trace] Initializing 'localization' +2021-11-16 16:23:10. 24 [lua]-[trace] Initializing 'i18n' +2021-11-16 16:23:10. 26 [lua]-[trace] Initializing 'config' +2021-11-16 16:23:10. 26 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:23:10. 27 [lua]-[trace] Initializing 'plugin' +2021-11-16 16:23:10. 27 [lua]-[trace] Initializing 'uiloader' +2021-11-16 16:23:10. 27 [lua]-[trace] Initializing 'stringify_slk' +2021-11-16 16:23:10. 28 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-16 16:23:10. 28 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-16 16:23:10. 29 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-16 16:23:10. 29 [lua]-[trace] Initializing 'lni-c' +2021-11-16 16:23:10. 30 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-16 16:23:10. 31 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-16 16:23:10. 31 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-16 16:23:10. 32 [lua]-[trace] Initializing 'w3xparser' +2021-11-16 16:23:10. 34 [lua]-[trace] Initializing 'check_object' +2021-11-16 16:23:10. 36 [lua]-[trace] Initializing 'ffi.storm' +2021-11-16 16:23:10. 36 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-16 16:23:10. 37 [lua]-[trace] Initializing 'ffi.gui' +2021-11-16 16:23:10. 37 [event]-[trace] RegisterEvent id: 7 +2021-11-16 16:23:10. 37 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-16 16:23:10. 38 [event]-[trace] RegisterEvent id: 5 +2021-11-16 16:23:10. 38 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-16 16:23:10. 38 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-16 16:23:10. 39 [lua]-[trace] Initializing 'compile.wave' +2021-11-16 16:23:10. 39 [lua]-[trace] Initializing 'compile.template' +2021-11-16 16:23:10. 40 [lua]-[trace] Initializing 'compile.cjass' +2021-11-16 16:23:10. 40 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-16 16:23:10. 41 [lua]-[trace] Initializing 'mpq_util' +2021-11-16 16:23:10. 41 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-16 16:23:10. 42 [lua]-[trace] Initializing 'compile.native' +2021-11-16 16:23:10. 42 [event]-[trace] RegisterEvent id: 3 +2021-11-16 16:23:10. 42 [event]-[trace] RegisterEvent id: 2 +2021-11-16 16:23:10. 42 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-16 16:23:10. 43 [lua]-[trace] Initializing 'w3x2lni' +2021-11-16 16:23:10. 43 [lua]-[trace] Initializing 'utility' +2021-11-16 16:23:10. 44 [lua]-[trace] Initializing 'mapdump' +2021-11-16 16:23:10. 44 [event]-[trace] RegisterEvent id: 4 +2021-11-16 16:23:10. 44 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-16 16:23:10. 45 [event]-[trace] RegisterEvent id: 0 +2021-11-16 16:23:10. 45 [event]-[trace] RegisterEvent id: 1 +2021-11-16 16:23:10. 45 [event]-[trace] RegisterEvent id: 6 +2021-11-16 16:23:10. 45 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-16 16:23:10.296 [event]-[trace] RegisterEvent id: 8 +2021-11-16 16:23:10.296 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-16 16:23:10.297 [event]-[trace] RegisterEvent id: 9 +2021-11-16 16:23:10.297 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-16 16:23:10.305 [event]-[info ] Entering main program. +2021-11-16 16:23:10.305 [event]-[debug] Command line: +2021-11-16 16:23:10.309 [lua]-[debug] ********************* on startup start ********************* +2021-11-16 16:23:10.310 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-16 16:23:10.310 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-16 16:23:10.311 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:23:10.311 [lua]-[trace] check_conflicting_ui +2021-11-16 16:23:10.311 [lua]-[trace] check_conflicting_units +2021-11-16 16:23:10.311 [lua]-[trace] clear_potential_conflicting +2021-11-16 16:23:10.311 [lua]-[trace] check_war3_version +2021-11-16 16:23:10.315 [lua]-[error] Cannot find war3.mpq +2021-11-16 16:23:10.317 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-16 16:23:10.338 [lua]-[debug] Tesh loaded successfully. +2021-11-16 16:23:10.352 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-16 16:23:10.353 [lua]-[debug] YDClient loaded successfully. +2021-11-16 16:23:10.353 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-16 16:23:10.354 [lua]-[warn ] failed: disable +2021-11-16 16:23:10.354 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-16 16:23:10.355 [lua]-[warn ] failed: disable +2021-11-16 16:23:10.355 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-16 16:23:10.356 [lua]-[warn ] failed: disable +2021-11-16 16:23:10.356 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-16 16:23:10.395 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-16 16:23:10.396 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-16 16:23:10.398 [lua]-[debug] YDTrigger loaded successfully. +2021-11-16 16:23:10.398 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-16 16:23:10.400 [inject]-[debug] Start installing inline hooks. +2021-11-16 16:23:10.400 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-16 16:23:10.400 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-16 16:23:10.400 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-16 16:23:10.400 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-16 16:23:10.400 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-16 16:23:10.400 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-16 16:23:10.401 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-16 16:23:10.401 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-16 16:23:10.401 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-16 16:23:10.401 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-16 16:23:10.401 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-16 16:23:10.401 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-16 16:23:10.401 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-16 16:23:10.401 [inject]-[debug] Installing inline hooks complete. +2021-11-16 16:23:10.401 [inject]-[debug] IAT hook initialization started. +2021-11-16 16:23:10.401 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-16 16:23:10.401 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-16 16:23:10.401 [inject]-[debug] IAT hook initialization completed. +2021-11-16 16:23:10.401 [inject]-[debug] Patches initialization started. +2021-11-16 16:23:10.401 [inject]-[trace] Installing syntax check patch +2021-11-16 16:23:10.401 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-16 16:23:10.401 [inject]-[trace] Installing auto disable patch +2021-11-16 16:23:10.402 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-16 16:23:10.402 [inject]-[trace] Installing enable trigger check patch +2021-11-16 16:23:10.402 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-16 16:23:10.402 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-16 16:23:10.402 [inject]-[trace] Installing doodad limit patch +2021-11-16 16:23:10.402 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-16 16:23:10.402 [inject]-[trace] Installing unit/item limit patch +2021-11-16 16:23:10.402 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-16 16:23:10.402 [inject]-[trace] Installing editor multi-instance patch +2021-11-16 16:23:10.402 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-16 16:23:10.402 [inject]-[trace] Installing attack table patch +2021-11-16 16:23:10.402 [inject]-[debug] Patches initialization completed. +2021-11-16 16:23:10.402 [inject]-[info ] YDWE startup complete. +2021-11-16 16:23:10.402 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-16 16:23:10.403 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-16 16:23:10.403 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-16 16:23:10.403 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-16 16:23:10.418 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-16 16:23:10.420 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-16 16:23:10.421 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-16 16:23:10.422 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-16 16:23:10.422 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-16 16:23:10.422 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-16 16:23:10.422 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-16 16:23:10.429 [lua]-[trace] Scanned file: 99 +2021-11-16 16:23:10.430 [lua]-[debug] ********************* on startup end ********************* +2021-11-16 16:23:10.883 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:23:10.910 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:23:11. 73 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:23:11.173 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-16 16:23:11.175 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-16 16:23:11.177 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-16 16:23:11.177 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-16 16:23:11.179 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-16 16:23:13.229 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-16 16:23:13.229 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-16 16:28:20.630 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:28:20.630 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:28:20.630 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:28:20.900 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:28:20.922 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:28:21. 67 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:44:34.563 [event]-[info ] 删除不可放置的物体: 矮墙 (垂直) at (3616, 9984) +2021-11-16 16:44:34.563 [event]-[info ] 删除不可放置的物体: 短墙尽头 at (3616, 10080) +2021-11-16 16:44:34.563 [event]-[info ] 删除不可放置的物体: 矮墙 (垂直) at (3616, 10176) +2021-11-16 16:44:34.563 [event]-[info ] 删除不可放置的物体: 短墙尽头 at (3616, 10272) +2021-11-16 16:44:34.563 [event]-[info ] 删除不可放置的物体: 矮墙 (垂直) at (3616, 10368) +2021-11-16 16:44:36.901 [event]-[info ] 删除不可放置的物体: 骑士 at (10008, 7806) +2021-11-16 16:44:36.901 [event]-[info ] 删除不可放置的物体: 帐篷 at (4832, 7776) +2021-11-16 16:44:44.672 [lua]-[debug] ********************* on exit start ********************* +2021-11-16 16:44:44.672 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-16 16:44:44.672 [lua]-[trace] Unload plugin YDClient. +2021-11-16 16:44:44.672 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-16 16:44:44.672 [inject]-[debug] IAT hook cleanup started. +2021-11-16 16:44:44.672 [inject]-[trace] WE IAT hook cleaned. +2021-11-16 16:44:44.672 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-16 16:44:44.672 [inject]-[debug] IAT hook cleanup completed. +2021-11-16 16:44:44.672 [inject]-[debug] Inline hook uninstallation begins! +2021-11-16 16:44:44.673 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-16 16:44:44.673 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-16 16:44:44.673 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-16 16:44:44.673 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-16 16:44:44.673 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-16 16:44:44.673 [inject]-[debug] Inline hook uninstallation finished! +2021-11-16 16:44:44.674 [lua]-[trace] Unload plugin YDTrigger. +2021-11-16 16:44:44.675 [lua]-[trace] Unload plugin Tesh. +2021-11-16 16:44:44.678 [lua]-[debug] ********************* on exit end ********************* +2021-11-16 16:44:44.678 [event]-[info ] Main program exit. +2021-11-16 16:44:44.918 [root]-[info ] Script engine has been shut down. +2021-11-16 16:44:47.896 [root]-[info ] ------------------------------------------------------ +2021-11-16 16:44:47.899 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-16 16:44:47.899 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-16 16:44:47.899 [root]-[info ] Windows version: 10.0.18362 +2021-11-16 16:44:47.899 [root]-[debug] Initialize script engine successfully. +2021-11-16 16:44:47.899 [root]-[info ] Script engine startup complete. +2021-11-16 16:44:47.900 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-16 16:44:47.900 [lua]-[trace] Initializing 'sys' +2021-11-16 16:44:47.901 [lua]-[trace] Initializing 'filesystem' +2021-11-16 16:44:47.901 [lua]-[trace] Initializing 'gui' +2021-11-16 16:44:47.903 [lua]-[trace] Initializing 'util' +2021-11-16 16:44:47.903 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-16 16:44:47.903 [lua]-[trace] Initializing 'ffi' +2021-11-16 16:44:47.905 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-16 16:44:47.905 [lua]-[trace] Initializing 'event' +2021-11-16 16:44:47.908 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-16 16:44:47.910 [lua]-[trace] Initializing 'registry' +2021-11-16 16:44:47.911 [lua]-[trace] Initializing 'version' +2021-11-16 16:44:47.911 [lua]-[trace] Initializing 'localization' +2021-11-16 16:44:47.912 [lua]-[trace] Initializing 'i18n' +2021-11-16 16:44:47.913 [lua]-[trace] Initializing 'config' +2021-11-16 16:44:47.914 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:44:47.914 [lua]-[trace] Initializing 'plugin' +2021-11-16 16:44:47.914 [lua]-[trace] Initializing 'uiloader' +2021-11-16 16:44:47.914 [lua]-[trace] Initializing 'stringify_slk' +2021-11-16 16:44:47.915 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-16 16:44:47.915 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-16 16:44:47.916 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-16 16:44:47.916 [lua]-[trace] Initializing 'lni-c' +2021-11-16 16:44:47.917 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-16 16:44:47.917 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-16 16:44:47.918 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-16 16:44:47.918 [lua]-[trace] Initializing 'w3xparser' +2021-11-16 16:44:47.919 [lua]-[trace] Initializing 'check_object' +2021-11-16 16:44:47.920 [lua]-[trace] Initializing 'ffi.storm' +2021-11-16 16:44:47.920 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-16 16:44:47.921 [lua]-[trace] Initializing 'ffi.gui' +2021-11-16 16:44:47.921 [event]-[trace] RegisterEvent id: 7 +2021-11-16 16:44:47.921 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-16 16:44:47.922 [event]-[trace] RegisterEvent id: 5 +2021-11-16 16:44:47.922 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-16 16:44:47.922 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-16 16:44:47.923 [lua]-[trace] Initializing 'compile.wave' +2021-11-16 16:44:47.923 [lua]-[trace] Initializing 'compile.template' +2021-11-16 16:44:47.924 [lua]-[trace] Initializing 'compile.cjass' +2021-11-16 16:44:47.924 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-16 16:44:47.925 [lua]-[trace] Initializing 'mpq_util' +2021-11-16 16:44:47.925 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-16 16:44:47.926 [lua]-[trace] Initializing 'compile.native' +2021-11-16 16:44:47.926 [event]-[trace] RegisterEvent id: 3 +2021-11-16 16:44:47.926 [event]-[trace] RegisterEvent id: 2 +2021-11-16 16:44:47.926 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-16 16:44:47.927 [lua]-[trace] Initializing 'w3x2lni' +2021-11-16 16:44:47.927 [lua]-[trace] Initializing 'utility' +2021-11-16 16:44:47.928 [lua]-[trace] Initializing 'mapdump' +2021-11-16 16:44:47.928 [event]-[trace] RegisterEvent id: 4 +2021-11-16 16:44:47.928 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-16 16:44:47.928 [event]-[trace] RegisterEvent id: 0 +2021-11-16 16:44:47.928 [event]-[trace] RegisterEvent id: 1 +2021-11-16 16:44:47.928 [event]-[trace] RegisterEvent id: 6 +2021-11-16 16:44:47.928 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-16 16:44:48.156 [event]-[trace] RegisterEvent id: 8 +2021-11-16 16:44:48.156 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-16 16:44:48.157 [event]-[trace] RegisterEvent id: 9 +2021-11-16 16:44:48.157 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-16 16:44:48.165 [event]-[info ] Entering main program. +2021-11-16 16:44:48.165 [event]-[debug] Command line: +2021-11-16 16:44:48.170 [lua]-[debug] ********************* on startup start ********************* +2021-11-16 16:44:48.171 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-16 16:44:48.172 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-16 16:44:48.173 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:44:48.173 [lua]-[trace] check_conflicting_ui +2021-11-16 16:44:48.173 [lua]-[trace] check_conflicting_units +2021-11-16 16:44:48.173 [lua]-[trace] clear_potential_conflicting +2021-11-16 16:44:48.174 [lua]-[trace] check_war3_version +2021-11-16 16:44:48.179 [lua]-[error] Cannot find war3.mpq +2021-11-16 16:44:48.183 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-16 16:44:48.209 [lua]-[debug] Tesh loaded successfully. +2021-11-16 16:44:48.227 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-16 16:44:48.229 [lua]-[debug] YDClient loaded successfully. +2021-11-16 16:44:48.229 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-16 16:44:48.230 [lua]-[warn ] failed: disable +2021-11-16 16:44:48.230 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-16 16:44:48.231 [lua]-[warn ] failed: disable +2021-11-16 16:44:48.232 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-16 16:44:48.232 [lua]-[warn ] failed: disable +2021-11-16 16:44:48.232 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-16 16:44:48.279 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-16 16:44:48.282 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-16 16:44:48.284 [lua]-[debug] YDTrigger loaded successfully. +2021-11-16 16:44:48.284 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-16 16:44:48.286 [inject]-[debug] Start installing inline hooks. +2021-11-16 16:44:48.286 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-16 16:44:48.286 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-16 16:44:48.286 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-16 16:44:48.286 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-16 16:44:48.286 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-16 16:44:48.286 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-16 16:44:48.286 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-16 16:44:48.286 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-16 16:44:48.286 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-16 16:44:48.287 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-16 16:44:48.287 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-16 16:44:48.287 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-16 16:44:48.287 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-16 16:44:48.287 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-16 16:44:48.287 [inject]-[debug] Installing inline hooks complete. +2021-11-16 16:44:48.287 [inject]-[debug] IAT hook initialization started. +2021-11-16 16:44:48.287 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-16 16:44:48.287 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-16 16:44:48.287 [inject]-[debug] IAT hook initialization completed. +2021-11-16 16:44:48.287 [inject]-[debug] Patches initialization started. +2021-11-16 16:44:48.287 [inject]-[trace] Installing syntax check patch +2021-11-16 16:44:48.287 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-16 16:44:48.287 [inject]-[trace] Installing auto disable patch +2021-11-16 16:44:48.287 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-16 16:44:48.287 [inject]-[trace] Installing enable trigger check patch +2021-11-16 16:44:48.287 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-16 16:44:48.287 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-16 16:44:48.287 [inject]-[trace] Installing doodad limit patch +2021-11-16 16:44:48.287 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-16 16:44:48.287 [inject]-[trace] Installing unit/item limit patch +2021-11-16 16:44:48.287 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-16 16:44:48.288 [inject]-[trace] Installing editor multi-instance patch +2021-11-16 16:44:48.288 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-16 16:44:48.288 [inject]-[trace] Installing attack table patch +2021-11-16 16:44:48.288 [inject]-[debug] Patches initialization completed. +2021-11-16 16:44:48.288 [inject]-[info ] YDWE startup complete. +2021-11-16 16:44:48.288 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-16 16:44:48.289 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-16 16:44:48.289 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-16 16:44:48.289 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-16 16:44:48.302 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-16 16:44:48.304 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-16 16:44:48.306 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-16 16:44:48.307 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-16 16:44:48.307 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-16 16:44:48.307 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-16 16:44:48.307 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-16 16:44:48.315 [lua]-[trace] Scanned file: 99 +2021-11-16 16:44:48.316 [lua]-[debug] ********************* on startup end ********************* +2021-11-16 16:44:48.913 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:44:48.937 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:44:49. 90 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:44:49.189 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-16 16:44:49.192 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-16 16:44:49.193 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-16 16:44:49.193 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-16 16:44:49.195 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-16 16:44:51.130 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-16 16:44:51.131 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-16 16:45:03.575 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:45:03.575 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:45:03.575 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 16:45:03.873 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 16:45:03.896 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 16:45:04. 39 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 16:55:01.620 [event]-[trace] WE is about to compile maps. +2021-11-16 16:55:01.749 [lua]-[debug] ********************* on save start ********************* +2021-11-16 16:55:01.750 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:55:01.750 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 16:55:01.750 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 16:55:01.750 [lua]-[trace] mpq_util.update_file. +2021-11-16 16:55:01.753 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 16:55:01.753 [lua]-[trace] Processing file.out +2021-11-16 16:55:01.806 [lua]-[trace] Writing code to file.out +2021-11-16 16:55:01.806 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 16:55:01.809 [lua]-[trace] Injection completed +2021-11-16 16:55:01.809 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 16:55:01.810 [lua]-[trace] Injection completed +2021-11-16 16:55:01.810 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 16:55:01.810 [lua]-[trace] Injection completed +2021-11-16 16:55:01.810 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 16:55:01.810 [lua]-[trace] Injection completed +2021-11-16 16:55:01.810 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 16:55:01.811 [lua]-[trace] Injection completed +2021-11-16 16:55:01.811 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 16:55:01.811 [lua]-[trace] Injection completed +2021-11-16 16:55:01.811 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 16:55:01.812 [lua]-[trace] Injection completed +2021-11-16 16:55:01.812 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 16:55:01.812 [lua]-[trace] Injection completed +2021-11-16 16:55:01.812 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 16:55:01.812 [lua]-[trace] Injection completed +2021-11-16 16:55:01.812 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 16:55:01.812 [lua]-[trace] Injection completed +2021-11-16 16:55:01.813 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 16:55:01.813 [lua]-[trace] Injection completed +2021-11-16 16:55:01.813 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 16:55:01.813 [lua]-[trace] Injection completed +2021-11-16 16:55:01.813 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 16:55:01.813 [lua]-[trace] Injection completed +2021-11-16 16:55:01.814 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 16:55:01.814 [lua]-[trace] Injection completed +2021-11-16 16:55:01.814 [lua]-[trace] Wave compilation start. +2021-11-16 16:55:01.835 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 16:55:02. 99 [lua]-[trace] Template compilation start. +2021-11-16 16:55:02.117 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-16 16:55:02.118 [lua]-[trace] Initializing 'computed.order_list' +2021-11-16 16:55:02.118 [lua]-[trace] Initializing 'computed.order_id' +2021-11-16 16:55:02.124 [lua]-[debug] Template compilation succeeded. +2021-11-16 16:55:02.131 [lua]-[trace] JassHelper compilation start. +2021-11-16 16:55:04.917 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 16:55:04.917 [lua]-[debug] Result true +2021-11-16 16:55:04.917 [lua]-[debug] ********************* on save end ********************* +2021-11-16 16:55:12. 92 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:55:12. 92 [event]-[trace] No need to compile. +2021-11-16 16:55:12. 92 [lua]-[debug] ********************* on test start ********************* +2021-11-16 16:55:12. 93 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 16:55:12. 93 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:55:12. 93 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 16:55:12. 93 [lua]-[debug] Testing 0 +2021-11-16 16:55:12.197 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 16:55:12.197 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:01:26.788 [event]-[trace] WE is about to compile maps. +2021-11-16 17:01:26.892 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:01:26.893 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:01:26.893 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:01:26.893 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:01:26.893 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:01:26.896 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:01:26.896 [lua]-[trace] Processing file.out +2021-11-16 17:01:26.949 [lua]-[trace] Writing code to file.out +2021-11-16 17:01:26.950 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:01:26.950 [lua]-[trace] Injection completed +2021-11-16 17:01:26.950 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:01:26.950 [lua]-[trace] Injection completed +2021-11-16 17:01:26.950 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:01:26.950 [lua]-[trace] Injection completed +2021-11-16 17:01:26.950 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:01:26.951 [lua]-[trace] Injection completed +2021-11-16 17:01:26.951 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:01:26.951 [lua]-[trace] Injection completed +2021-11-16 17:01:26.951 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:01:26.951 [lua]-[trace] Injection completed +2021-11-16 17:01:26.951 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:01:26.951 [lua]-[trace] Injection completed +2021-11-16 17:01:26.951 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:01:26.952 [lua]-[trace] Injection completed +2021-11-16 17:01:26.952 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:01:26.952 [lua]-[trace] Injection completed +2021-11-16 17:01:26.952 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:01:26.952 [lua]-[trace] Injection completed +2021-11-16 17:01:26.952 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:01:26.952 [lua]-[trace] Injection completed +2021-11-16 17:01:26.952 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:01:26.953 [lua]-[trace] Injection completed +2021-11-16 17:01:26.953 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:01:26.953 [lua]-[trace] Injection completed +2021-11-16 17:01:26.953 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:01:26.953 [lua]-[trace] Injection completed +2021-11-16 17:01:26.953 [lua]-[trace] Wave compilation start. +2021-11-16 17:01:26.973 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:01:27.220 [lua]-[trace] Template compilation start. +2021-11-16 17:01:27.238 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:01:27.246 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:01:29.471 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:01:29.472 [lua]-[debug] Result true +2021-11-16 17:01:29.472 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:01:32.267 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:01:32.267 [event]-[trace] No need to compile. +2021-11-16 17:01:32.267 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:01:32.268 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:01:32.268 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:01:32.268 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:01:32.268 [lua]-[debug] Testing 0 +2021-11-16 17:01:32.373 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:01:32.373 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:02:51.739 [event]-[trace] WE is about to compile maps. +2021-11-16 17:02:51.848 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:02:51.849 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:02:51.849 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:02:51.849 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:02:51.849 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:02:51.852 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:02:51.852 [lua]-[trace] Processing file.out +2021-11-16 17:02:51.912 [lua]-[trace] Writing code to file.out +2021-11-16 17:02:51.912 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:02:51.912 [lua]-[trace] Injection completed +2021-11-16 17:02:51.912 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:02:51.912 [lua]-[trace] Injection completed +2021-11-16 17:02:51.912 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:02:51.913 [lua]-[trace] Injection completed +2021-11-16 17:02:51.913 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:02:51.913 [lua]-[trace] Injection completed +2021-11-16 17:02:51.913 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:02:51.913 [lua]-[trace] Injection completed +2021-11-16 17:02:51.913 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:02:51.913 [lua]-[trace] Injection completed +2021-11-16 17:02:51.913 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:02:51.913 [lua]-[trace] Injection completed +2021-11-16 17:02:51.913 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:02:51.914 [lua]-[trace] Injection completed +2021-11-16 17:02:51.914 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:02:51.914 [lua]-[trace] Injection completed +2021-11-16 17:02:51.914 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:02:51.914 [lua]-[trace] Injection completed +2021-11-16 17:02:51.914 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:02:51.914 [lua]-[trace] Injection completed +2021-11-16 17:02:51.914 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:02:51.914 [lua]-[trace] Injection completed +2021-11-16 17:02:51.914 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:02:51.915 [lua]-[trace] Injection completed +2021-11-16 17:02:51.915 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:02:51.915 [lua]-[trace] Injection completed +2021-11-16 17:02:51.915 [lua]-[trace] Wave compilation start. +2021-11-16 17:02:51.933 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:02:52.194 [lua]-[trace] Template compilation start. +2021-11-16 17:02:52.214 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:02:52.222 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:02:54.452 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:02:54.452 [lua]-[debug] Result true +2021-11-16 17:02:54.452 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:03:02.298 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:03:02.298 [event]-[trace] No need to compile. +2021-11-16 17:03:02.298 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:03:02.299 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:03:02.299 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:03:02.299 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:03:02.299 [lua]-[debug] Testing 0 +2021-11-16 17:03:02.389 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:03:02.389 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:06:46.289 [event]-[trace] WE is about to compile maps. +2021-11-16 17:06:46.393 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:06:46.394 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:06:46.394 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:06:46.394 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:06:46.394 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:06:46.397 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:06:46.397 [lua]-[trace] Processing file.out +2021-11-16 17:06:46.447 [lua]-[trace] Writing code to file.out +2021-11-16 17:06:46.447 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:06:46.447 [lua]-[trace] Injection completed +2021-11-16 17:06:46.447 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:06:46.448 [lua]-[trace] Injection completed +2021-11-16 17:06:46.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:06:46.449 [lua]-[trace] Injection completed +2021-11-16 17:06:46.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:06:46.450 [lua]-[trace] Injection completed +2021-11-16 17:06:46.450 [lua]-[trace] Wave compilation start. +2021-11-16 17:06:46.469 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:06:46.744 [lua]-[trace] Template compilation start. +2021-11-16 17:06:46.765 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:06:46.774 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:06:48.871 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:06:48.872 [lua]-[debug] Result true +2021-11-16 17:06:48.872 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:06:52.236 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:06:52.236 [event]-[trace] No need to compile. +2021-11-16 17:06:52.236 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:06:52.237 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:06:52.237 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:06:52.237 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:06:52.237 [lua]-[debug] Testing 0 +2021-11-16 17:06:52.324 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:06:52.325 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:09:03.465 [event]-[trace] WE is about to compile maps. +2021-11-16 17:09:03.582 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:09:03.583 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:09:03.583 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:09:03.583 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:09:03.583 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:09:03.587 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:09:03.587 [lua]-[trace] Processing file.out +2021-11-16 17:09:03.640 [lua]-[trace] Writing code to file.out +2021-11-16 17:09:03.640 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:09:03.640 [lua]-[trace] Injection completed +2021-11-16 17:09:03.640 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:09:03.641 [lua]-[trace] Injection completed +2021-11-16 17:09:03.641 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:09:03.642 [lua]-[trace] Injection completed +2021-11-16 17:09:03.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:09:03.643 [lua]-[trace] Injection completed +2021-11-16 17:09:03.643 [lua]-[trace] Wave compilation start. +2021-11-16 17:09:03.657 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:09:03.912 [lua]-[trace] Template compilation start. +2021-11-16 17:09:03.931 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:09:03.939 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:09:06. 71 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:09:06. 72 [lua]-[debug] Result true +2021-11-16 17:09:06. 72 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:09:11. 27 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:09:11. 27 [event]-[trace] No need to compile. +2021-11-16 17:09:11. 27 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:09:11. 28 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:09:11. 28 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:09:11. 28 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:09:11. 28 [lua]-[debug] Testing 0 +2021-11-16 17:09:11.116 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:09:11.116 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:10:31.827 [event]-[trace] WE is about to compile maps. +2021-11-16 17:10:31.940 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:10:31.941 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:10:31.941 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:10:31.941 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:10:31.941 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:10:31.945 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:10:31.945 [lua]-[trace] Processing file.out +2021-11-16 17:10:31.996 [lua]-[trace] Writing code to file.out +2021-11-16 17:10:31.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:10:31.997 [lua]-[trace] Injection completed +2021-11-16 17:10:31.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:10:31.997 [lua]-[trace] Injection completed +2021-11-16 17:10:31.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:10:31.997 [lua]-[trace] Injection completed +2021-11-16 17:10:31.998 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:10:31.998 [lua]-[trace] Injection completed +2021-11-16 17:10:31.998 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:10:31.998 [lua]-[trace] Injection completed +2021-11-16 17:10:31.998 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:10:31.999 [lua]-[trace] Injection completed +2021-11-16 17:10:31.999 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:10:31.999 [lua]-[trace] Injection completed +2021-11-16 17:10:31.999 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:10:31.999 [lua]-[trace] Injection completed +2021-11-16 17:10:31.999 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:10:31.999 [lua]-[trace] Injection completed +2021-11-16 17:10:31.999 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:10:32. 0 [lua]-[trace] Injection completed +2021-11-16 17:10:32. 0 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:10:32. 0 [lua]-[trace] Injection completed +2021-11-16 17:10:32. 0 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:10:32. 0 [lua]-[trace] Injection completed +2021-11-16 17:10:32. 0 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:10:32. 0 [lua]-[trace] Injection completed +2021-11-16 17:10:32. 0 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:10:32. 1 [lua]-[trace] Injection completed +2021-11-16 17:10:32. 1 [lua]-[trace] Wave compilation start. +2021-11-16 17:10:32. 16 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:10:32.308 [lua]-[trace] Template compilation start. +2021-11-16 17:10:32.328 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:10:32.336 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:10:34.243 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:10:34.244 [lua]-[debug] Result true +2021-11-16 17:10:34.244 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:10:48.290 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:10:48.290 [event]-[trace] No need to compile. +2021-11-16 17:10:48.290 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:10:48.290 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:10:48.290 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:10:48.290 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:10:48.290 [lua]-[debug] Testing 0 +2021-11-16 17:10:48.376 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:10:48.376 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:14:37.497 [event]-[trace] WE is about to compile maps. +2021-11-16 17:14:37.600 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:14:37.601 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:14:37.601 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:14:37.601 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:14:37.601 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:14:37.604 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:14:37.604 [lua]-[trace] Processing file.out +2021-11-16 17:14:37.651 [lua]-[trace] Writing code to file.out +2021-11-16 17:14:37.652 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:14:37.652 [lua]-[trace] Injection completed +2021-11-16 17:14:37.652 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:14:37.652 [lua]-[trace] Injection completed +2021-11-16 17:14:37.652 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:14:37.652 [lua]-[trace] Injection completed +2021-11-16 17:14:37.652 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:14:37.652 [lua]-[trace] Injection completed +2021-11-16 17:14:37.653 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:14:37.653 [lua]-[trace] Injection completed +2021-11-16 17:14:37.653 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:14:37.653 [lua]-[trace] Injection completed +2021-11-16 17:14:37.653 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:14:37.653 [lua]-[trace] Injection completed +2021-11-16 17:14:37.653 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:14:37.653 [lua]-[trace] Injection completed +2021-11-16 17:14:37.653 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.654 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.654 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.654 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.654 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.654 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:14:37.654 [lua]-[trace] Injection completed +2021-11-16 17:14:37.655 [lua]-[trace] Wave compilation start. +2021-11-16 17:14:37.674 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:14:37.934 [lua]-[trace] Template compilation start. +2021-11-16 17:14:37.952 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:14:37.959 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:14:40. 97 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:14:40. 97 [lua]-[debug] Result true +2021-11-16 17:14:40. 97 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:14:41.376 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:14:41.376 [event]-[trace] No need to compile. +2021-11-16 17:14:41.376 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:14:41.377 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:14:41.377 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:14:41.377 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:14:41.377 [lua]-[debug] Testing 0 +2021-11-16 17:14:41.505 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:14:41.505 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:26:14.384 [root]-[info ] ------------------------------------------------------ +2021-11-16 17:26:14.387 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-16 17:26:14.387 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-16 17:26:14.387 [root]-[info ] Windows version: 10.0.18362 +2021-11-16 17:26:14.387 [root]-[debug] Initialize script engine successfully. +2021-11-16 17:26:14.387 [root]-[info ] Script engine startup complete. +2021-11-16 17:26:14.388 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-16 17:26:14.388 [lua]-[trace] Initializing 'sys' +2021-11-16 17:26:14.389 [lua]-[trace] Initializing 'filesystem' +2021-11-16 17:26:14.390 [lua]-[trace] Initializing 'gui' +2021-11-16 17:26:14.391 [lua]-[trace] Initializing 'util' +2021-11-16 17:26:14.392 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-16 17:26:14.392 [lua]-[trace] Initializing 'ffi' +2021-11-16 17:26:14.393 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-16 17:26:14.393 [lua]-[trace] Initializing 'event' +2021-11-16 17:26:14.396 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-16 17:26:14.398 [lua]-[trace] Initializing 'registry' +2021-11-16 17:26:14.399 [lua]-[trace] Initializing 'version' +2021-11-16 17:26:14.399 [lua]-[trace] Initializing 'localization' +2021-11-16 17:26:14.399 [lua]-[trace] Initializing 'i18n' +2021-11-16 17:26:14.400 [lua]-[trace] Initializing 'config' +2021-11-16 17:26:14.402 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:26:14.402 [lua]-[trace] Initializing 'plugin' +2021-11-16 17:26:14.402 [lua]-[trace] Initializing 'uiloader' +2021-11-16 17:26:14.403 [lua]-[trace] Initializing 'stringify_slk' +2021-11-16 17:26:14.403 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-16 17:26:14.403 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-16 17:26:14.404 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-16 17:26:14.405 [lua]-[trace] Initializing 'lni-c' +2021-11-16 17:26:14.406 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-16 17:26:14.406 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-16 17:26:14.406 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-16 17:26:14.407 [lua]-[trace] Initializing 'w3xparser' +2021-11-16 17:26:14.408 [lua]-[trace] Initializing 'check_object' +2021-11-16 17:26:14.409 [lua]-[trace] Initializing 'ffi.storm' +2021-11-16 17:26:14.410 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-16 17:26:14.410 [lua]-[trace] Initializing 'ffi.gui' +2021-11-16 17:26:14.411 [event]-[trace] RegisterEvent id: 7 +2021-11-16 17:26:14.411 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-16 17:26:14.411 [event]-[trace] RegisterEvent id: 5 +2021-11-16 17:26:14.411 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-16 17:26:14.412 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-16 17:26:14.412 [lua]-[trace] Initializing 'compile.wave' +2021-11-16 17:26:14.413 [lua]-[trace] Initializing 'compile.template' +2021-11-16 17:26:14.413 [lua]-[trace] Initializing 'compile.cjass' +2021-11-16 17:26:14.414 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-16 17:26:14.414 [lua]-[trace] Initializing 'mpq_util' +2021-11-16 17:26:14.415 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-16 17:26:14.415 [lua]-[trace] Initializing 'compile.native' +2021-11-16 17:26:14.416 [event]-[trace] RegisterEvent id: 3 +2021-11-16 17:26:14.416 [event]-[trace] RegisterEvent id: 2 +2021-11-16 17:26:14.416 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-16 17:26:14.417 [lua]-[trace] Initializing 'w3x2lni' +2021-11-16 17:26:14.417 [lua]-[trace] Initializing 'utility' +2021-11-16 17:26:14.417 [lua]-[trace] Initializing 'mapdump' +2021-11-16 17:26:14.418 [event]-[trace] RegisterEvent id: 4 +2021-11-16 17:26:14.418 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-16 17:26:14.418 [event]-[trace] RegisterEvent id: 0 +2021-11-16 17:26:14.418 [event]-[trace] RegisterEvent id: 1 +2021-11-16 17:26:14.418 [event]-[trace] RegisterEvent id: 6 +2021-11-16 17:26:14.419 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-16 17:26:14.619 [event]-[trace] RegisterEvent id: 8 +2021-11-16 17:26:14.619 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-16 17:26:14.619 [event]-[trace] RegisterEvent id: 9 +2021-11-16 17:26:14.619 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-16 17:26:14.625 [event]-[info ] Entering main program. +2021-11-16 17:26:14.625 [event]-[debug] Command line: +2021-11-16 17:26:14.629 [lua]-[debug] ********************* on startup start ********************* +2021-11-16 17:26:14.630 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-16 17:26:14.630 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-16 17:26:14.630 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:26:14.630 [lua]-[trace] check_conflicting_ui +2021-11-16 17:26:14.630 [lua]-[trace] check_conflicting_units +2021-11-16 17:26:14.631 [lua]-[trace] clear_potential_conflicting +2021-11-16 17:26:14.631 [lua]-[trace] check_war3_version +2021-11-16 17:26:14.636 [lua]-[error] Cannot find war3.mpq +2021-11-16 17:26:14.638 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-16 17:26:14.661 [lua]-[debug] Tesh loaded successfully. +2021-11-16 17:26:14.674 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-16 17:26:14.675 [lua]-[debug] YDClient loaded successfully. +2021-11-16 17:26:14.675 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-16 17:26:14.676 [lua]-[warn ] failed: disable +2021-11-16 17:26:14.676 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-16 17:26:14.677 [lua]-[warn ] failed: disable +2021-11-16 17:26:14.677 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-16 17:26:14.678 [lua]-[warn ] failed: disable +2021-11-16 17:26:14.678 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-16 17:26:14.723 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-16 17:26:14.725 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-16 17:26:14.727 [lua]-[debug] YDTrigger loaded successfully. +2021-11-16 17:26:14.728 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-16 17:26:14.729 [inject]-[debug] Start installing inline hooks. +2021-11-16 17:26:14.729 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-16 17:26:14.729 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-16 17:26:14.729 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-16 17:26:14.729 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-16 17:26:14.729 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-16 17:26:14.729 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-16 17:26:14.729 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-16 17:26:14.729 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-16 17:26:14.730 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-16 17:26:14.730 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-16 17:26:14.730 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-16 17:26:14.730 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-16 17:26:14.730 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-16 17:26:14.730 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-16 17:26:14.730 [inject]-[debug] Installing inline hooks complete. +2021-11-16 17:26:14.730 [inject]-[debug] IAT hook initialization started. +2021-11-16 17:26:14.730 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-16 17:26:14.730 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-16 17:26:14.730 [inject]-[debug] IAT hook initialization completed. +2021-11-16 17:26:14.730 [inject]-[debug] Patches initialization started. +2021-11-16 17:26:14.730 [inject]-[trace] Installing syntax check patch +2021-11-16 17:26:14.730 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-16 17:26:14.730 [inject]-[trace] Installing auto disable patch +2021-11-16 17:26:14.730 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-16 17:26:14.730 [inject]-[trace] Installing enable trigger check patch +2021-11-16 17:26:14.730 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-16 17:26:14.731 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-16 17:26:14.731 [inject]-[trace] Installing doodad limit patch +2021-11-16 17:26:14.731 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-16 17:26:14.731 [inject]-[trace] Installing unit/item limit patch +2021-11-16 17:26:14.731 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-16 17:26:14.731 [inject]-[trace] Installing editor multi-instance patch +2021-11-16 17:26:14.731 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-16 17:26:14.731 [inject]-[trace] Installing attack table patch +2021-11-16 17:26:14.731 [inject]-[debug] Patches initialization completed. +2021-11-16 17:26:14.731 [inject]-[info ] YDWE startup complete. +2021-11-16 17:26:14.731 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-16 17:26:14.732 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-16 17:26:14.733 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-16 17:26:14.733 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-16 17:26:14.747 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-16 17:26:14.749 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-16 17:26:14.751 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-16 17:26:14.751 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-16 17:26:14.751 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-16 17:26:14.751 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-16 17:26:14.752 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-16 17:26:14.759 [lua]-[trace] Scanned file: 99 +2021-11-16 17:26:14.760 [lua]-[debug] ********************* on startup end ********************* +2021-11-16 17:26:15.227 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 17:26:15.249 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 17:26:15.409 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 17:26:15.507 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-16 17:26:15.509 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-16 17:26:15.509 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-16 17:26:15.510 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-16 17:26:15.511 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-16 17:26:17.356 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-16 17:26:17.357 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-16 17:26:36.977 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 17:26:36.977 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 17:26:36.977 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-16 17:26:37.260 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-16 17:26:37.288 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-16 17:26:37.450 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-16 17:28:28.853 [event]-[trace] WE is about to compile maps. +2021-11-16 17:28:28.967 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:28:28.968 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:28:28.968 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:28:28.968 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:28:28.968 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:28:28.972 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:28:28.972 [lua]-[trace] Processing file.out +2021-11-16 17:28:29. 25 [lua]-[trace] Writing code to file.out +2021-11-16 17:28:29. 25 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:28:29. 25 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 25 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:28:29. 25 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 25 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:28:29. 25 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 25 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:28:29. 26 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 26 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:28:29. 26 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 26 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:28:29. 26 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 26 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:28:29. 26 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 26 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:28:29. 26 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 27 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:28:29. 27 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 27 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:28:29. 27 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 27 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:28:29. 28 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 28 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:28:29. 28 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 28 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:28:29. 28 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 28 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:28:29. 29 [lua]-[trace] Injection completed +2021-11-16 17:28:29. 29 [lua]-[trace] Wave compilation start. +2021-11-16 17:28:29. 49 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:28:29.311 [lua]-[trace] Template compilation start. +2021-11-16 17:28:29.331 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:28:29.338 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:28:31.519 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:28:31.519 [lua]-[debug] Result true +2021-11-16 17:28:31.519 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:28:33.410 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:28:33.410 [event]-[trace] No need to compile. +2021-11-16 17:28:33.410 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:28:33.410 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:28:33.411 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:28:33.411 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:28:33.411 [lua]-[debug] Testing 0 +2021-11-16 17:28:33.504 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:28:33.504 [lua]-[debug] ********************* on test end ********************* +2021-11-16 17:58:13. 49 [event]-[trace] WE is about to compile maps. +2021-11-16 17:58:13.166 [lua]-[debug] ********************* on save start ********************* +2021-11-16 17:58:13.167 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:58:13.167 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 17:58:13.167 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 17:58:13.167 [lua]-[trace] mpq_util.update_file. +2021-11-16 17:58:13.173 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 17:58:13.173 [lua]-[trace] Processing file.out +2021-11-16 17:58:13.226 [lua]-[trace] Writing code to file.out +2021-11-16 17:58:13.226 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 17:58:13.226 [lua]-[trace] Injection completed +2021-11-16 17:58:13.226 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 17:58:13.226 [lua]-[trace] Injection completed +2021-11-16 17:58:13.226 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 17:58:13.227 [lua]-[trace] Injection completed +2021-11-16 17:58:13.227 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 17:58:13.227 [lua]-[trace] Injection completed +2021-11-16 17:58:13.227 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 17:58:13.227 [lua]-[trace] Injection completed +2021-11-16 17:58:13.227 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 17:58:13.227 [lua]-[trace] Injection completed +2021-11-16 17:58:13.227 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 17:58:13.227 [lua]-[trace] Injection completed +2021-11-16 17:58:13.227 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 17:58:13.228 [lua]-[trace] Injection completed +2021-11-16 17:58:13.228 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 17:58:13.229 [lua]-[trace] Injection completed +2021-11-16 17:58:13.229 [lua]-[trace] Wave compilation start. +2021-11-16 17:58:13.246 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 17:58:13.534 [lua]-[trace] Template compilation start. +2021-11-16 17:58:13.553 [lua]-[debug] Template compilation succeeded. +2021-11-16 17:58:13.561 [lua]-[trace] JassHelper compilation start. +2021-11-16 17:58:15.940 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 17:58:15.941 [lua]-[debug] Result true +2021-11-16 17:58:15.941 [lua]-[debug] ********************* on save end ********************* +2021-11-16 17:58:19.375 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:58:19.375 [event]-[trace] No need to compile. +2021-11-16 17:58:19.375 [lua]-[debug] ********************* on test start ********************* +2021-11-16 17:58:19.375 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 17:58:19.375 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:58:19.375 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 17:58:19.375 [lua]-[debug] Testing 0 +2021-11-16 17:58:19.464 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 17:58:19.464 [lua]-[debug] ********************* on test end ********************* +2021-11-16 18:04:21.766 [event]-[trace] WE is about to compile maps. +2021-11-16 18:04:21.877 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:04:21.878 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:04:21.878 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:04:21.878 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:04:21.878 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:04:21.881 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:04:21.881 [lua]-[trace] Processing file.out +2021-11-16 18:04:21.927 [lua]-[trace] Writing code to file.out +2021-11-16 18:04:21.927 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 18:04:21.927 [lua]-[trace] Injection completed +2021-11-16 18:04:21.927 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:04:21.927 [lua]-[trace] Injection completed +2021-11-16 18:04:21.927 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:04:21.928 [lua]-[trace] Injection completed +2021-11-16 18:04:21.928 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:04:21.928 [lua]-[trace] Injection completed +2021-11-16 18:04:21.928 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:04:21.928 [lua]-[trace] Injection completed +2021-11-16 18:04:21.928 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:04:21.929 [lua]-[trace] Injection completed +2021-11-16 18:04:21.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:04:21.929 [lua]-[trace] Injection completed +2021-11-16 18:04:21.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:04:21.929 [lua]-[trace] Injection completed +2021-11-16 18:04:21.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:04:21.929 [lua]-[trace] Injection completed +2021-11-16 18:04:21.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:04:21.930 [lua]-[trace] Injection completed +2021-11-16 18:04:21.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:04:21.930 [lua]-[trace] Injection completed +2021-11-16 18:04:21.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:04:21.930 [lua]-[trace] Injection completed +2021-11-16 18:04:21.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:04:21.930 [lua]-[trace] Injection completed +2021-11-16 18:04:21.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:04:21.930 [lua]-[trace] Injection completed +2021-11-16 18:04:21.931 [lua]-[trace] Wave compilation start. +2021-11-16 18:04:21.946 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:04:22.212 [lua]-[trace] Template compilation start. +2021-11-16 18:04:22.238 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:04:22.246 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:04:24.402 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:04:24.402 [lua]-[debug] Result true +2021-11-16 18:04:24.403 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:04:44.531 [event]-[trace] WE is about to compile maps. +2021-11-16 18:04:44.677 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:04:44.677 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:04:44.677 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:04:44.677 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:04:44.677 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:04:44.681 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:04:44.681 [lua]-[trace] Processing file.out +2021-11-16 18:04:44.729 [lua]-[trace] Writing code to file.out +2021-11-16 18:04:44.730 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 18:04:44.730 [lua]-[trace] Injection completed +2021-11-16 18:04:44.730 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:04:44.730 [lua]-[trace] Injection completed +2021-11-16 18:04:44.730 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:04:44.730 [lua]-[trace] Injection completed +2021-11-16 18:04:44.730 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:04:44.730 [lua]-[trace] Injection completed +2021-11-16 18:04:44.730 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:04:44.731 [lua]-[trace] Injection completed +2021-11-16 18:04:44.731 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:04:44.732 [lua]-[trace] Injection completed +2021-11-16 18:04:44.732 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:04:44.732 [lua]-[trace] Injection completed +2021-11-16 18:04:44.732 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:04:44.732 [lua]-[trace] Injection completed +2021-11-16 18:04:44.732 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:04:44.732 [lua]-[trace] Injection completed +2021-11-16 18:04:44.732 [lua]-[trace] Wave compilation start. +2021-11-16 18:04:44.747 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:04:44.995 [lua]-[trace] Template compilation start. +2021-11-16 18:04:45. 14 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:04:45. 21 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:04:47.128 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:04:47.128 [lua]-[debug] Result true +2021-11-16 18:04:47.128 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:09:26.360 [event]-[trace] WE is about to compile maps. +2021-11-16 18:09:26.473 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:09:26.474 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:09:26.474 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:09:26.474 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:09:26.474 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:09:26.477 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:09:26.478 [lua]-[trace] Processing file.out +2021-11-16 18:09:26.527 [lua]-[trace] Writing code to file.out +2021-11-16 18:09:26.527 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 18:09:26.527 [lua]-[trace] Injection completed +2021-11-16 18:09:26.527 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:09:26.527 [lua]-[trace] Injection completed +2021-11-16 18:09:26.527 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:09:26.528 [lua]-[trace] Injection completed +2021-11-16 18:09:26.528 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:09:26.528 [lua]-[trace] Injection completed +2021-11-16 18:09:26.528 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:09:26.528 [lua]-[trace] Injection completed +2021-11-16 18:09:26.528 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:09:26.528 [lua]-[trace] Injection completed +2021-11-16 18:09:26.528 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:09:26.528 [lua]-[trace] Injection completed +2021-11-16 18:09:26.528 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:09:26.529 [lua]-[trace] Injection completed +2021-11-16 18:09:26.529 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:09:26.530 [lua]-[trace] Injection completed +2021-11-16 18:09:26.530 [lua]-[trace] Wave compilation start. +2021-11-16 18:09:26.544 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:09:26.814 [lua]-[trace] Template compilation start. +2021-11-16 18:09:26.831 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:09:26.837 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:09:28.989 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:09:28.990 [lua]-[debug] Result true +2021-11-16 18:09:28.990 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:10:55.956 [event]-[trace] WE is about to compile maps. +2021-11-16 18:10:56. 82 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:10:56. 84 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:10:56. 84 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:10:56. 84 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:10:56. 84 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:10:56. 87 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:10:56. 87 [lua]-[trace] Processing file.out +2021-11-16 18:10:56.138 [lua]-[trace] Writing code to file.out +2021-11-16 18:10:56.138 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 18:10:56.138 [lua]-[trace] Injection completed +2021-11-16 18:10:56.138 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:10:56.138 [lua]-[trace] Injection completed +2021-11-16 18:10:56.139 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:10:56.139 [lua]-[trace] Injection completed +2021-11-16 18:10:56.139 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:10:56.139 [lua]-[trace] Injection completed +2021-11-16 18:10:56.139 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:10:56.139 [lua]-[trace] Injection completed +2021-11-16 18:10:56.139 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:10:56.139 [lua]-[trace] Injection completed +2021-11-16 18:10:56.139 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:10:56.139 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:10:56.140 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:10:56.140 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:10:56.140 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:10:56.140 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:10:56.140 [lua]-[trace] Injection completed +2021-11-16 18:10:56.140 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:10:56.141 [lua]-[trace] Injection completed +2021-11-16 18:10:56.141 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:10:56.141 [lua]-[trace] Injection completed +2021-11-16 18:10:56.142 [lua]-[trace] Wave compilation start. +2021-11-16 18:10:56.157 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:10:56.417 [lua]-[trace] Template compilation start. +2021-11-16 18:10:56.436 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:10:56.445 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:10:58.572 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:10:58.573 [lua]-[debug] Result true +2021-11-16 18:10:58.573 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:11:44.280 [event]-[trace] WE is about to compile maps. +2021-11-16 18:11:44.451 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:11:44.452 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:11:44.452 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:11:44.452 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:11:44.452 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:11:44.455 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:11:44.455 [lua]-[trace] Processing file.out +2021-11-16 18:11:44.503 [lua]-[trace] Writing code to file.out +2021-11-16 18:11:44.503 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:11:44.503 [lua]-[trace] Injection completed +2021-11-16 18:11:44.503 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:11:44.503 [lua]-[trace] Injection completed +2021-11-16 18:11:44.503 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:11:44.503 [lua]-[trace] Injection completed +2021-11-16 18:11:44.503 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:11:44.504 [lua]-[trace] Injection completed +2021-11-16 18:11:44.504 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:11:44.505 [lua]-[trace] Injection completed +2021-11-16 18:11:44.505 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:11:44.505 [lua]-[trace] Injection completed +2021-11-16 18:11:44.505 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:11:44.505 [lua]-[trace] Injection completed +2021-11-16 18:11:44.505 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:11:44.505 [lua]-[trace] Injection completed +2021-11-16 18:11:44.505 [lua]-[trace] Wave compilation start. +2021-11-16 18:11:44.522 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:11:44.759 [lua]-[trace] Template compilation start. +2021-11-16 18:11:44.778 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:11:44.786 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:11:46.840 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:11:46.840 [lua]-[debug] Result true +2021-11-16 18:11:46.840 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:12:28.283 [event]-[trace] WE is about to compile maps. +2021-11-16 18:12:28.394 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:12:28.395 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:12:28.395 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:12:28.395 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:12:28.395 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:12:28.397 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:12:28.398 [lua]-[trace] Processing file.out +2021-11-16 18:12:28.447 [lua]-[trace] Writing code to file.out +2021-11-16 18:12:28.447 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:12:28.447 [lua]-[trace] Injection completed +2021-11-16 18:12:28.447 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:12:28.447 [lua]-[trace] Injection completed +2021-11-16 18:12:28.447 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:12:28.447 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:12:28.448 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:12:28.448 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:12:28.448 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:12:28.448 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:12:28.448 [lua]-[trace] Injection completed +2021-11-16 18:12:28.448 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:12:28.449 [lua]-[trace] Injection completed +2021-11-16 18:12:28.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:12:28.449 [lua]-[trace] Injection completed +2021-11-16 18:12:28.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:12:28.449 [lua]-[trace] Injection completed +2021-11-16 18:12:28.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:12:28.449 [lua]-[trace] Injection completed +2021-11-16 18:12:28.449 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:12:28.449 [lua]-[trace] Injection completed +2021-11-16 18:12:28.450 [lua]-[trace] Wave compilation start. +2021-11-16 18:12:28.465 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:12:28.723 [lua]-[trace] Template compilation start. +2021-11-16 18:12:28.741 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:12:28.748 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:12:30.849 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:12:30.849 [lua]-[debug] Result true +2021-11-16 18:12:30.850 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:12:32.761 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:12:32.761 [event]-[trace] No need to compile. +2021-11-16 18:12:32.762 [lua]-[debug] ********************* on test start ********************* +2021-11-16 18:12:32.762 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:12:32.762 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:12:32.762 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:12:32.762 [lua]-[debug] Testing 0 +2021-11-16 18:12:32.897 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 18:12:32.897 [lua]-[debug] ********************* on test end ********************* +2021-11-16 18:32:52.402 [event]-[trace] WE is about to compile maps. +2021-11-16 18:32:52.517 [lua]-[debug] ********************* on save start ********************* +2021-11-16 18:32:52.518 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:32:52.518 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 18:32:52.518 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 18:32:52.518 [lua]-[trace] mpq_util.update_file. +2021-11-16 18:32:52.521 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 18:32:52.521 [lua]-[trace] Processing file.out +2021-11-16 18:32:52.572 [lua]-[trace] Writing code to file.out +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 18:32:52.573 [lua]-[trace] Injection completed +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 18:32:52.573 [lua]-[trace] Injection completed +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 18:32:52.573 [lua]-[trace] Injection completed +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 18:32:52.573 [lua]-[trace] Injection completed +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 18:32:52.573 [lua]-[trace] Injection completed +2021-11-16 18:32:52.573 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 18:32:52.574 [lua]-[trace] Injection completed +2021-11-16 18:32:52.574 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 18:32:52.574 [lua]-[trace] Injection completed +2021-11-16 18:32:52.574 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 18:32:52.574 [lua]-[trace] Injection completed +2021-11-16 18:32:52.574 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 18:32:52.574 [lua]-[trace] Injection completed +2021-11-16 18:32:52.574 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 18:32:52.574 [lua]-[trace] Injection completed +2021-11-16 18:32:52.574 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 18:32:52.575 [lua]-[trace] Injection completed +2021-11-16 18:32:52.575 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 18:32:52.575 [lua]-[trace] Injection completed +2021-11-16 18:32:52.575 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 18:32:52.575 [lua]-[trace] Injection completed +2021-11-16 18:32:52.575 [lua]-[trace] Wave compilation start. +2021-11-16 18:32:52.592 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 18:32:52.849 [lua]-[trace] Template compilation start. +2021-11-16 18:32:52.878 [lua]-[debug] Template compilation succeeded. +2021-11-16 18:32:52.886 [lua]-[trace] JassHelper compilation start. +2021-11-16 18:32:55. 66 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 18:32:55. 66 [lua]-[debug] Result true +2021-11-16 18:32:55. 66 [lua]-[debug] ********************* on save end ********************* +2021-11-16 18:32:57.761 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:32:57.761 [event]-[trace] No need to compile. +2021-11-16 18:32:57.761 [lua]-[debug] ********************* on test start ********************* +2021-11-16 18:32:57.762 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 18:32:57.763 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:32:57.763 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 18:32:57.763 [lua]-[debug] Testing 0 +2021-11-16 18:32:57.917 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 18:32:57.917 [lua]-[debug] ********************* on test end ********************* +2021-11-16 19:00:07.824 [event]-[trace] WE is about to compile maps. +2021-11-16 19:00:07.918 [lua]-[debug] ********************* on save start ********************* +2021-11-16 19:00:07.919 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 19:00:07.919 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 19:00:07.919 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 19:00:07.919 [lua]-[trace] mpq_util.update_file. +2021-11-16 19:00:07.923 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 19:00:07.923 [lua]-[trace] Processing file.out +2021-11-16 19:00:07.977 [lua]-[trace] Writing code to file.out +2021-11-16 19:00:07.977 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 19:00:07.977 [lua]-[trace] Injection completed +2021-11-16 19:00:07.977 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 19:00:07.978 [lua]-[trace] Injection completed +2021-11-16 19:00:07.978 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 19:00:07.979 [lua]-[trace] Injection completed +2021-11-16 19:00:07.979 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 19:00:07.979 [lua]-[trace] Injection completed +2021-11-16 19:00:07.979 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 19:00:07.979 [lua]-[trace] Injection completed +2021-11-16 19:00:07.979 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 19:00:07.980 [lua]-[trace] Injection completed +2021-11-16 19:00:07.980 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 19:00:07.980 [lua]-[trace] Injection completed +2021-11-16 19:00:07.980 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 19:00:07.980 [lua]-[trace] Injection completed +2021-11-16 19:00:07.982 [lua]-[trace] Wave compilation start. +2021-11-16 19:00:08. 0 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 19:00:08.273 [lua]-[trace] Template compilation start. +2021-11-16 19:00:08.292 [lua]-[debug] Template compilation succeeded. +2021-11-16 19:00:08.299 [lua]-[trace] JassHelper compilation start. +2021-11-16 19:00:10.270 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 19:00:10.271 [lua]-[debug] Result true +2021-11-16 19:00:10.271 [lua]-[debug] ********************* on save end ********************* +2021-11-16 19:07:14.441 [event]-[trace] WE is about to compile maps. +2021-11-16 19:07:14.573 [lua]-[debug] ********************* on save start ********************* +2021-11-16 19:07:14.574 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 19:07:14.574 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 19:07:14.574 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 19:07:14.574 [lua]-[trace] mpq_util.update_file. +2021-11-16 19:07:14.577 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 19:07:14.577 [lua]-[trace] Processing file.out +2021-11-16 19:07:14.632 [lua]-[trace] Writing code to file.out +2021-11-16 19:07:14.632 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 19:07:14.633 [lua]-[trace] Injection completed +2021-11-16 19:07:14.633 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 19:07:14.634 [lua]-[trace] Injection completed +2021-11-16 19:07:14.634 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 19:07:14.635 [lua]-[trace] Injection completed +2021-11-16 19:07:14.635 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 19:07:14.635 [lua]-[trace] Injection completed +2021-11-16 19:07:14.635 [lua]-[trace] Wave compilation start. +2021-11-16 19:07:14.652 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 19:07:14.916 [lua]-[trace] Template compilation start. +2021-11-16 19:07:14.939 [lua]-[debug] Template compilation succeeded. +2021-11-16 19:07:14.948 [lua]-[trace] JassHelper compilation start. +2021-11-16 19:07:17.147 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 19:07:17.147 [lua]-[debug] Result true +2021-11-16 19:07:17.147 [lua]-[debug] ********************* on save end ********************* +2021-11-16 19:07:29.316 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 19:07:29.316 [event]-[trace] No need to compile. +2021-11-16 19:07:29.316 [lua]-[debug] ********************* on test start ********************* +2021-11-16 19:07:29.317 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 19:07:29.317 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-16 19:07:29.317 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-16 19:07:29.317 [lua]-[debug] Testing 0 +2021-11-16 19:07:29.453 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-16 19:07:29.453 [lua]-[debug] ********************* on test end ********************* +2021-11-16 19:26:53.994 [event]-[trace] WE is about to compile maps. +2021-11-16 19:26:54.113 [lua]-[debug] ********************* on save start ********************* +2021-11-16 19:26:54.114 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-16 19:26:54.114 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-16 19:26:54.114 [lua]-[trace] Save version 1.27.0.52240 +2021-11-16 19:26:54.114 [lua]-[trace] mpq_util.update_file. +2021-11-16 19:26:54.117 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-16 19:26:54.117 [lua]-[trace] Processing file.out +2021-11-16 19:26:54.171 [lua]-[trace] Writing code to file.out +2021-11-16 19:26:54.171 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-16 19:26:54.171 [lua]-[trace] Injection completed +2021-11-16 19:26:54.171 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-16 19:26:54.171 [lua]-[trace] Injection completed +2021-11-16 19:26:54.171 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-16 19:26:54.171 [lua]-[trace] Injection completed +2021-11-16 19:26:54.171 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-16 19:26:54.172 [lua]-[trace] Injection completed +2021-11-16 19:26:54.172 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-16 19:26:54.173 [lua]-[trace] Injection completed +2021-11-16 19:26:54.173 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-16 19:26:54.173 [lua]-[trace] Injection completed +2021-11-16 19:26:54.173 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-16 19:26:54.173 [lua]-[trace] Injection completed +2021-11-16 19:26:54.173 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-16 19:26:54.173 [lua]-[trace] Injection completed +2021-11-16 19:26:54.173 [lua]-[trace] Wave compilation start. +2021-11-16 19:26:54.190 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-16 19:26:54.475 [lua]-[trace] Template compilation start. +2021-11-16 19:26:54.496 [lua]-[debug] Template compilation succeeded. +2021-11-16 19:26:54.506 [lua]-[trace] JassHelper compilation start. +2021-11-16 19:26:56.582 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-16 19:26:56.582 [lua]-[debug] Result true +2021-11-16 19:26:56.582 [lua]-[debug] ********************* on save end ********************* +2021-11-16 19:44:42.651 [lua]-[debug] ********************* on exit start ********************* +2021-11-16 19:44:42.651 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-16 19:44:42.651 [lua]-[trace] Unload plugin YDClient. +2021-11-16 19:44:42.651 [lua]-[trace] Unload plugin YDTrigger. +2021-11-16 19:44:42.652 [lua]-[trace] Unload plugin Tesh. +2021-11-16 19:44:42.655 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-16 19:44:42.655 [inject]-[debug] IAT hook cleanup started. +2021-11-16 19:44:42.655 [inject]-[trace] WE IAT hook cleaned. +2021-11-16 19:44:42.655 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-16 19:44:42.655 [inject]-[debug] IAT hook cleanup completed. +2021-11-16 19:44:42.655 [inject]-[debug] Inline hook uninstallation begins! +2021-11-16 19:44:42.655 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-16 19:44:42.655 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-16 19:44:42.655 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-16 19:44:42.655 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-16 19:44:42.655 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-16 19:44:42.655 [inject]-[debug] Inline hook uninstallation finished! +2021-11-16 19:44:42.656 [lua]-[debug] ********************* on exit end ********************* +2021-11-16 19:44:42.656 [event]-[info ] Main program exit. +2021-11-16 19:44:43.232 [root]-[info ] Script engine has been shut down. +2021-11-17 09:11:55.768 [root]-[info ] ------------------------------------------------------ +2021-11-17 09:11:55.772 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 09:11:55.772 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 09:11:55.772 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 09:11:55.772 [root]-[debug] Initialize script engine successfully. +2021-11-17 09:11:55.772 [root]-[info ] Script engine startup complete. +2021-11-17 09:11:55.773 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 09:11:55.773 [lua]-[trace] Initializing 'sys' +2021-11-17 09:11:55.776 [lua]-[trace] Initializing 'filesystem' +2021-11-17 09:11:55.779 [lua]-[trace] Initializing 'gui' +2021-11-17 09:11:55.782 [lua]-[trace] Initializing 'util' +2021-11-17 09:11:55.782 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 09:11:55.782 [lua]-[trace] Initializing 'ffi' +2021-11-17 09:11:55.786 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 09:11:55.786 [lua]-[trace] Initializing 'event' +2021-11-17 09:11:55.791 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 09:11:55.795 [lua]-[trace] Initializing 'registry' +2021-11-17 09:11:55.799 [lua]-[trace] Initializing 'version' +2021-11-17 09:11:55.799 [lua]-[trace] Initializing 'localization' +2021-11-17 09:11:55.800 [lua]-[trace] Initializing 'i18n' +2021-11-17 09:11:55.803 [lua]-[trace] Initializing 'config' +2021-11-17 09:11:55.804 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:11:55.804 [lua]-[trace] Initializing 'plugin' +2021-11-17 09:11:55.804 [lua]-[trace] Initializing 'uiloader' +2021-11-17 09:11:55.805 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 09:11:55.805 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 09:11:55.805 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 09:11:55.806 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 09:11:55.807 [lua]-[trace] Initializing 'lni-c' +2021-11-17 09:11:55.810 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 09:11:55.810 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 09:11:55.811 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 09:11:55.811 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 09:11:55.814 [lua]-[trace] Initializing 'check_object' +2021-11-17 09:11:55.815 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 09:11:55.816 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 09:11:55.816 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 09:11:55.816 [event]-[trace] RegisterEvent id: 7 +2021-11-17 09:11:55.817 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 09:11:55.817 [event]-[trace] RegisterEvent id: 5 +2021-11-17 09:11:55.817 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 09:11:55.818 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 09:11:55.818 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 09:11:55.819 [lua]-[trace] Initializing 'compile.template' +2021-11-17 09:11:55.819 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 09:11:55.819 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 09:11:55.820 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 09:11:55.820 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 09:11:55.821 [lua]-[trace] Initializing 'compile.native' +2021-11-17 09:11:55.821 [event]-[trace] RegisterEvent id: 3 +2021-11-17 09:11:55.821 [event]-[trace] RegisterEvent id: 2 +2021-11-17 09:11:55.821 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 09:11:55.822 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 09:11:55.822 [lua]-[trace] Initializing 'utility' +2021-11-17 09:11:55.823 [lua]-[trace] Initializing 'mapdump' +2021-11-17 09:11:55.823 [event]-[trace] RegisterEvent id: 4 +2021-11-17 09:11:55.823 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 09:11:55.824 [event]-[trace] RegisterEvent id: 0 +2021-11-17 09:11:55.824 [event]-[trace] RegisterEvent id: 1 +2021-11-17 09:11:55.824 [event]-[trace] RegisterEvent id: 6 +2021-11-17 09:11:55.824 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 09:11:56. 58 [event]-[trace] RegisterEvent id: 8 +2021-11-17 09:11:56. 58 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 09:11:56. 58 [event]-[trace] RegisterEvent id: 9 +2021-11-17 09:11:56. 58 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 09:11:56. 69 [event]-[info ] Entering main program. +2021-11-17 09:11:56. 69 [event]-[debug] Command line: +2021-11-17 09:11:56. 73 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 09:11:56. 74 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 09:11:56. 74 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 09:11:56. 75 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:11:56. 75 [lua]-[trace] check_conflicting_ui +2021-11-17 09:11:56. 75 [lua]-[trace] check_conflicting_units +2021-11-17 09:11:56. 75 [lua]-[trace] clear_potential_conflicting +2021-11-17 09:11:56. 75 [lua]-[trace] check_war3_version +2021-11-17 09:11:56. 82 [lua]-[error] Cannot find war3.mpq +2021-11-17 09:11:56. 84 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 09:11:56.112 [lua]-[debug] Tesh loaded successfully. +2021-11-17 09:11:56.125 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 09:11:56.128 [lua]-[debug] YDClient loaded successfully. +2021-11-17 09:11:56.128 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 09:11:56.129 [lua]-[warn ] failed: disable +2021-11-17 09:11:56.129 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 09:11:56.130 [lua]-[warn ] failed: disable +2021-11-17 09:11:56.130 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 09:11:56.130 [lua]-[warn ] failed: disable +2021-11-17 09:11:56.130 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 09:11:56.180 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 09:11:56.183 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 09:11:56.188 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 09:11:56.188 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 09:11:56.192 [inject]-[debug] Start installing inline hooks. +2021-11-17 09:11:56.192 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 09:11:56.192 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 09:11:56.192 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 09:11:56.192 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 09:11:56.192 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 09:11:56.192 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 09:11:56.192 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 09:11:56.192 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 09:11:56.192 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 09:11:56.193 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 09:11:56.193 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 09:11:56.193 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 09:11:56.193 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 09:11:56.193 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 09:11:56.193 [inject]-[debug] Installing inline hooks complete. +2021-11-17 09:11:56.193 [inject]-[debug] IAT hook initialization started. +2021-11-17 09:11:56.193 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 09:11:56.193 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 09:11:56.193 [inject]-[debug] IAT hook initialization completed. +2021-11-17 09:11:56.193 [inject]-[debug] Patches initialization started. +2021-11-17 09:11:56.193 [inject]-[trace] Installing syntax check patch +2021-11-17 09:11:56.193 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 09:11:56.193 [inject]-[trace] Installing auto disable patch +2021-11-17 09:11:56.193 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 09:11:56.193 [inject]-[trace] Installing enable trigger check patch +2021-11-17 09:11:56.193 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 09:11:56.193 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 09:11:56.193 [inject]-[trace] Installing doodad limit patch +2021-11-17 09:11:56.193 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 09:11:56.194 [inject]-[trace] Installing unit/item limit patch +2021-11-17 09:11:56.194 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 09:11:56.194 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 09:11:56.194 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 09:11:56.194 [inject]-[trace] Installing attack table patch +2021-11-17 09:11:56.194 [inject]-[debug] Patches initialization completed. +2021-11-17 09:11:56.194 [inject]-[info ] YDWE startup complete. +2021-11-17 09:11:56.194 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 09:11:56.195 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 09:11:56.195 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 09:11:56.195 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 09:11:56.211 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 09:11:56.213 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 09:11:56.215 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 09:11:56.216 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 09:11:56.216 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 09:11:56.216 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 09:11:56.216 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 09:11:56.226 [lua]-[trace] Scanned file: 99 +2021-11-17 09:11:56.228 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 09:11:56.708 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 09:11:56.730 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 09:11:56.877 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 09:11:56.978 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 09:11:56.983 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 09:11:56.987 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 09:11:56.989 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 09:11:56.992 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 09:11:59. 40 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 09:11:59. 43 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 09:12:40.629 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 09:12:40.629 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 09:12:40.629 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 09:12:40.899 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 09:12:40.922 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 09:12:41. 89 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 09:17:43.754 [event]-[trace] WE is about to compile maps. +2021-11-17 09:17:43.885 [lua]-[debug] ********************* on save start ********************* +2021-11-17 09:17:43.886 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:17:43.886 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 09:17:43.886 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 09:17:43.886 [lua]-[trace] mpq_util.update_file. +2021-11-17 09:17:43.889 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 09:17:43.889 [lua]-[trace] Processing file.out +2021-11-17 09:17:43.942 [lua]-[trace] Writing code to file.out +2021-11-17 09:17:43.942 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 09:17:43.942 [lua]-[trace] Injection completed +2021-11-17 09:17:43.942 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 09:17:43.942 [lua]-[trace] Injection completed +2021-11-17 09:17:43.942 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 09:17:43.942 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 09:17:43.943 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 09:17:43.943 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 09:17:43.943 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 09:17:43.943 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 09:17:43.943 [lua]-[trace] Injection completed +2021-11-17 09:17:43.943 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.944 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.944 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.944 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.944 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.944 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 09:17:43.944 [lua]-[trace] Injection completed +2021-11-17 09:17:43.947 [lua]-[trace] Wave compilation start. +2021-11-17 09:17:43.974 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 09:17:44.208 [lua]-[trace] Template compilation start. +2021-11-17 09:17:44.223 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-17 09:17:44.223 [lua]-[trace] Initializing 'computed.order_list' +2021-11-17 09:17:44.224 [lua]-[trace] Initializing 'computed.order_id' +2021-11-17 09:17:44.228 [lua]-[debug] Template compilation succeeded. +2021-11-17 09:17:44.235 [lua]-[trace] JassHelper compilation start. +2021-11-17 09:17:46.344 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 09:17:46.344 [lua]-[debug] Result true +2021-11-17 09:17:46.344 [lua]-[debug] ********************* on save end ********************* +2021-11-17 09:17:47.254 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:17:47.254 [event]-[trace] No need to compile. +2021-11-17 09:17:47.254 [lua]-[debug] ********************* on test start ********************* +2021-11-17 09:17:47.254 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:17:47.255 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:17:47.255 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:17:47.255 [lua]-[debug] Testing 0 +2021-11-17 09:17:47.347 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 09:17:47.347 [lua]-[debug] ********************* on test end ********************* +2021-11-17 09:24:00.450 [event]-[trace] WE is about to compile maps. +2021-11-17 09:24:00.559 [lua]-[debug] ********************* on save start ********************* +2021-11-17 09:24:00.560 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:24:00.560 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 09:24:00.560 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 09:24:00.560 [lua]-[trace] mpq_util.update_file. +2021-11-17 09:24:00.564 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 09:24:00.564 [lua]-[trace] Processing file.out +2021-11-17 09:24:00.619 [lua]-[trace] Writing code to file.out +2021-11-17 09:24:00.619 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 09:24:00.619 [lua]-[trace] Injection completed +2021-11-17 09:24:00.619 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 09:24:00.620 [lua]-[trace] Injection completed +2021-11-17 09:24:00.620 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 09:24:00.620 [lua]-[trace] Injection completed +2021-11-17 09:24:00.620 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 09:24:00.620 [lua]-[trace] Injection completed +2021-11-17 09:24:00.620 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 09:24:00.620 [lua]-[trace] Injection completed +2021-11-17 09:24:00.620 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 09:24:00.621 [lua]-[trace] Injection completed +2021-11-17 09:24:00.621 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 09:24:00.621 [lua]-[trace] Injection completed +2021-11-17 09:24:00.621 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 09:24:00.621 [lua]-[trace] Injection completed +2021-11-17 09:24:00.621 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 09:24:00.621 [lua]-[trace] Injection completed +2021-11-17 09:24:00.621 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 09:24:00.622 [lua]-[trace] Injection completed +2021-11-17 09:24:00.622 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 09:24:00.622 [lua]-[trace] Injection completed +2021-11-17 09:24:00.622 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 09:24:00.622 [lua]-[trace] Injection completed +2021-11-17 09:24:00.622 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 09:24:00.622 [lua]-[trace] Injection completed +2021-11-17 09:24:00.622 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 09:24:00.623 [lua]-[trace] Injection completed +2021-11-17 09:24:00.623 [lua]-[trace] Wave compilation start. +2021-11-17 09:24:00.665 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 09:24:00.945 [lua]-[trace] Template compilation start. +2021-11-17 09:24:00.970 [lua]-[debug] Template compilation succeeded. +2021-11-17 09:24:00.978 [lua]-[trace] JassHelper compilation start. +2021-11-17 09:24:03.353 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 09:24:03.353 [lua]-[debug] Result true +2021-11-17 09:24:03.353 [lua]-[debug] ********************* on save end ********************* +2021-11-17 09:24:04. 79 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:24:04. 79 [event]-[trace] No need to compile. +2021-11-17 09:24:04. 79 [lua]-[debug] ********************* on test start ********************* +2021-11-17 09:24:04. 79 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 09:24:04. 79 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:24:04. 79 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 09:24:04. 79 [lua]-[debug] Testing 0 +2021-11-17 09:24:04.181 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 09:24:04.181 [lua]-[debug] ********************* on test end ********************* +2021-11-17 10:20:26.691 [event]-[trace] WE is about to compile maps. +2021-11-17 10:20:26.900 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:20:26.901 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:20:26.901 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:20:26.901 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:20:26.901 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:20:26.904 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:20:26.904 [lua]-[trace] Processing file.out +2021-11-17 10:20:26.929 [lua]-[trace] Writing code to file.out +2021-11-17 10:20:26.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:20:26.929 [lua]-[trace] Injection completed +2021-11-17 10:20:26.929 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:20:26.930 [lua]-[trace] Injection completed +2021-11-17 10:20:26.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:20:26.930 [lua]-[trace] Injection completed +2021-11-17 10:20:26.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:20:26.930 [lua]-[trace] Injection completed +2021-11-17 10:20:26.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:20:26.930 [lua]-[trace] Injection completed +2021-11-17 10:20:26.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:20:26.930 [lua]-[trace] Injection completed +2021-11-17 10:20:26.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:20:26.931 [lua]-[trace] Injection completed +2021-11-17 10:20:26.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:20:26.931 [lua]-[trace] Injection completed +2021-11-17 10:20:26.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:20:26.931 [lua]-[trace] Injection completed +2021-11-17 10:20:26.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:20:26.931 [lua]-[trace] Injection completed +2021-11-17 10:20:26.931 [lua]-[trace] Wave compilation start. +2021-11-17 10:20:26.947 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:20:28.739 [lua]-[trace] Template compilation start. +2021-11-17 10:20:28.755 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-17 10:20:28.755 [lua]-[trace] Initializing 'computed.order_list' +2021-11-17 10:20:28.756 [lua]-[trace] Initializing 'computed.order_id' +2021-11-17 10:20:28.762 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:20:28.772 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:20:30.940 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:20:30.940 [lua]-[debug] Result true +2021-11-17 10:20:30.940 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:20:32.366 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:20:32.367 [event]-[trace] No need to compile. +2021-11-17 10:20:32.367 [lua]-[debug] ********************* on test start ********************* +2021-11-17 10:20:32.367 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:20:32.367 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:20:32.367 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:20:32.367 [lua]-[debug] Testing 0 +2021-11-17 10:20:32.474 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 10:20:32.475 [lua]-[debug] ********************* on test end ********************* +2021-11-17 10:22:27.888 [event]-[trace] WE is about to compile maps. +2021-11-17 10:22:28. 74 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:22:28. 75 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:22:28. 75 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:22:28. 75 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:22:28. 75 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:22:28. 77 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:22:28. 77 [lua]-[trace] Processing file.out +2021-11-17 10:22:28. 99 [lua]-[trace] Writing code to file.out +2021-11-17 10:22:28.100 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:22:28.100 [lua]-[trace] Injection completed +2021-11-17 10:22:28.100 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:22:28.100 [lua]-[trace] Injection completed +2021-11-17 10:22:28.100 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:22:28.100 [lua]-[trace] Injection completed +2021-11-17 10:22:28.100 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:22:28.101 [lua]-[trace] Injection completed +2021-11-17 10:22:28.101 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:22:28.101 [lua]-[trace] Injection completed +2021-11-17 10:22:28.101 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:22:28.101 [lua]-[trace] Injection completed +2021-11-17 10:22:28.101 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:22:28.101 [lua]-[trace] Injection completed +2021-11-17 10:22:28.101 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:22:28.101 [lua]-[trace] Injection completed +2021-11-17 10:22:28.101 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:22:28.102 [lua]-[trace] Injection completed +2021-11-17 10:22:28.102 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:22:28.102 [lua]-[trace] Injection completed +2021-11-17 10:22:28.117 [lua]-[trace] Wave compilation start. +2021-11-17 10:22:28.132 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:22:30.102 [lua]-[trace] Template compilation start. +2021-11-17 10:22:30.122 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:22:30.130 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:22:32.444 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:22:32.445 [lua]-[debug] Result true +2021-11-17 10:22:32.445 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:25:29.318 [event]-[trace] WE is about to compile maps. +2021-11-17 10:25:29.513 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:25:29.513 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:25:29.513 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:25:29.513 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:25:29.513 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:25:29.516 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:25:29.516 [lua]-[trace] Processing file.out +2021-11-17 10:25:29.538 [lua]-[trace] Writing code to file.out +2021-11-17 10:25:29.538 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:25:29.538 [lua]-[trace] Injection completed +2021-11-17 10:25:29.538 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:25:29.539 [lua]-[trace] Injection completed +2021-11-17 10:25:29.539 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:25:29.539 [lua]-[trace] Injection completed +2021-11-17 10:25:29.539 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:25:29.539 [lua]-[trace] Injection completed +2021-11-17 10:25:29.539 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:25:29.539 [lua]-[trace] Injection completed +2021-11-17 10:25:29.539 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:25:29.540 [lua]-[trace] Injection completed +2021-11-17 10:25:29.540 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:25:29.540 [lua]-[trace] Injection completed +2021-11-17 10:25:29.540 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:25:29.540 [lua]-[trace] Injection completed +2021-11-17 10:25:29.540 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:25:29.540 [lua]-[trace] Injection completed +2021-11-17 10:25:29.540 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:25:29.540 [lua]-[trace] Injection completed +2021-11-17 10:25:29.541 [lua]-[trace] Wave compilation start. +2021-11-17 10:25:29.556 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:25:31.416 [lua]-[trace] Template compilation start. +2021-11-17 10:25:31.440 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:25:31.449 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:25:33.635 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:25:33.636 [lua]-[debug] Result true +2021-11-17 10:25:33.636 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:25:36.935 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:25:36.935 [event]-[trace] No need to compile. +2021-11-17 10:25:36.935 [lua]-[debug] ********************* on test start ********************* +2021-11-17 10:25:36.936 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:25:36.936 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:25:36.936 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:25:36.936 [lua]-[debug] Testing 0 +2021-11-17 10:25:37. 36 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 10:25:37. 36 [lua]-[debug] ********************* on test end ********************* +2021-11-17 10:37:44.912 [event]-[trace] WE is about to compile maps. +2021-11-17 10:37:45. 63 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:37:45. 64 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:37:45. 64 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:37:45. 64 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:37:45. 64 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:37:45. 66 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:37:45. 66 [lua]-[trace] Processing file.out +2021-11-17 10:37:45. 92 [lua]-[trace] Writing code to file.out +2021-11-17 10:37:45. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:37:45. 93 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:37:45. 93 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:37:45. 94 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 94 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:37:45. 94 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 94 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:37:45. 94 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 94 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:37:45. 95 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 95 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:37:45. 95 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 95 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:37:45. 95 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 95 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:37:45. 95 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 95 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:37:45. 96 [lua]-[trace] Injection completed +2021-11-17 10:37:45. 96 [lua]-[trace] Wave compilation start. +2021-11-17 10:37:45.111 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:37:46.926 [lua]-[trace] Template compilation start. +2021-11-17 10:37:46.950 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:37:46.958 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:37:49.247 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:37:49.247 [lua]-[debug] Result true +2021-11-17 10:37:49.247 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:37:50.877 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:37:50.877 [event]-[trace] No need to compile. +2021-11-17 10:37:50.877 [lua]-[debug] ********************* on test start ********************* +2021-11-17 10:37:50.878 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:37:50.878 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:37:50.878 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:37:50.878 [lua]-[debug] Testing 0 +2021-11-17 10:37:50.992 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 10:37:50.992 [lua]-[debug] ********************* on test end ********************* +2021-11-17 10:39:40.792 [event]-[trace] WE is about to compile maps. +2021-11-17 10:39:40.965 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:39:40.966 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:39:40.966 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:39:40.966 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:39:40.966 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:39:40.968 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:39:40.968 [lua]-[trace] Processing file.out +2021-11-17 10:39:40.995 [lua]-[trace] Writing code to file.out +2021-11-17 10:39:40.995 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:39:40.995 [lua]-[trace] Injection completed +2021-11-17 10:39:40.995 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:39:40.996 [lua]-[trace] Injection completed +2021-11-17 10:39:40.996 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:39:40.996 [lua]-[trace] Injection completed +2021-11-17 10:39:40.996 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:39:40.996 [lua]-[trace] Injection completed +2021-11-17 10:39:40.996 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:39:40.996 [lua]-[trace] Injection completed +2021-11-17 10:39:40.996 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:39:40.996 [lua]-[trace] Injection completed +2021-11-17 10:39:40.996 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:39:40.997 [lua]-[trace] Injection completed +2021-11-17 10:39:40.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:39:40.997 [lua]-[trace] Injection completed +2021-11-17 10:39:40.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:39:40.997 [lua]-[trace] Injection completed +2021-11-17 10:39:40.997 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:39:40.997 [lua]-[trace] Injection completed +2021-11-17 10:39:40.998 [lua]-[trace] Wave compilation start. +2021-11-17 10:39:41. 13 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:39:42.885 [lua]-[trace] Template compilation start. +2021-11-17 10:39:42.908 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:39:42.918 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:39:45.172 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:39:45.173 [lua]-[debug] Result true +2021-11-17 10:39:45.173 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:39:51.981 [event]-[trace] WE is about to compile maps. +2021-11-17 10:39:52.147 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:39:52.148 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:39:52.148 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:39:52.148 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:39:52.148 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:39:52.151 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:39:52.151 [lua]-[trace] Processing file.out +2021-11-17 10:39:52.179 [lua]-[trace] Writing code to file.out +2021-11-17 10:39:52.180 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:39:52.180 [lua]-[trace] Injection completed +2021-11-17 10:39:52.180 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:39:52.180 [lua]-[trace] Injection completed +2021-11-17 10:39:52.180 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:39:52.180 [lua]-[trace] Injection completed +2021-11-17 10:39:52.180 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:39:52.181 [lua]-[trace] Injection completed +2021-11-17 10:39:52.181 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:39:52.181 [lua]-[trace] Injection completed +2021-11-17 10:39:52.181 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:39:52.181 [lua]-[trace] Injection completed +2021-11-17 10:39:52.181 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:39:52.181 [lua]-[trace] Injection completed +2021-11-17 10:39:52.181 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:39:52.182 [lua]-[trace] Injection completed +2021-11-17 10:39:52.182 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:39:52.182 [lua]-[trace] Injection completed +2021-11-17 10:39:52.182 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:39:52.183 [lua]-[trace] Injection completed +2021-11-17 10:39:52.183 [lua]-[trace] Wave compilation start. +2021-11-17 10:39:52.201 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:39:54. 82 [lua]-[trace] Template compilation start. +2021-11-17 10:39:54.108 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:39:54.125 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:39:56.491 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:39:56.491 [lua]-[debug] Result true +2021-11-17 10:39:56.491 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:40:00.847 [event]-[trace] WE is about to compile maps. +2021-11-17 10:40:01. 19 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:40:01. 20 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:40:01. 20 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:40:01. 20 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:40:01. 20 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:40:01. 23 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:40:01. 23 [lua]-[trace] Processing file.out +2021-11-17 10:40:01. 49 [lua]-[trace] Writing code to file.out +2021-11-17 10:40:01. 49 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:40:01. 49 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 49 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:40:01. 50 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 50 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:40:01. 50 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 50 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:40:01. 50 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 50 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:40:01. 50 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 50 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:40:01. 50 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 50 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:40:01. 51 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 51 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:40:01. 51 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 51 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:40:01. 51 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 51 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:40:01. 51 [lua]-[trace] Injection completed +2021-11-17 10:40:01. 52 [lua]-[trace] Wave compilation start. +2021-11-17 10:40:01. 70 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:40:03. 46 [lua]-[trace] Template compilation start. +2021-11-17 10:40:03. 74 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:40:03. 85 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:40:05.321 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:40:05.321 [lua]-[debug] Result true +2021-11-17 10:40:05.321 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:42:02.739 [event]-[trace] WE is about to compile maps. +2021-11-17 10:42:02.928 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:42:02.929 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:42:02.929 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:42:02.929 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:42:02.929 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:42:02.931 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:42:02.931 [lua]-[trace] Processing file.out +2021-11-17 10:42:02.956 [lua]-[trace] Writing code to file.out +2021-11-17 10:42:02.957 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:42:02.957 [lua]-[trace] Injection completed +2021-11-17 10:42:02.957 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:42:02.957 [lua]-[trace] Injection completed +2021-11-17 10:42:02.957 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:42:02.957 [lua]-[trace] Injection completed +2021-11-17 10:42:02.957 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.958 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:42:02.958 [lua]-[trace] Injection completed +2021-11-17 10:42:02.959 [lua]-[trace] Wave compilation start. +2021-11-17 10:42:02.975 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:42:04.842 [lua]-[trace] Template compilation start. +2021-11-17 10:42:04.867 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:42:04.876 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:42:07.127 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:42:07.127 [lua]-[debug] Result true +2021-11-17 10:42:07.127 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:50:10.615 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.622 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.623 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.623 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.624 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.624 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.624 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.625 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.625 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.626 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.626 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.627 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.627 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.627 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.628 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:10.628 [event]-[info ] 无法读取文件: Abilities\Spells\Orc\CommandAura\CommandAuraTarget0.mdl +2021-11-17 10:50:21.549 [lua]-[debug] **************** on new object id start **************** +2021-11-17 10:50:21.550 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:50:21.550 [lua]-[trace] Disable. +2021-11-17 10:50:56.517 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.519 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.520 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.520 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.521 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.522 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.523 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.523 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.524 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.524 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.525 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.525 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.526 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.526 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.527 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:50:56.528 [event]-[info ] 无法读取文件: buildings\other\CircleOfPower\CircleOfPower0.mdl +2021-11-17 10:56:44.931 [event]-[trace] WE is about to compile maps. +2021-11-17 10:56:45. 80 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:56:45. 81 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:56:45. 81 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:56:45. 81 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:56:45. 81 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:56:45. 84 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:56:45. 84 [lua]-[trace] Processing file.out +2021-11-17 10:56:45.115 [lua]-[trace] Writing code to file.out +2021-11-17 10:56:45.115 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:56:45.116 [lua]-[trace] Injection completed +2021-11-17 10:56:45.116 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:56:45.116 [lua]-[trace] Injection completed +2021-11-17 10:56:45.116 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:56:45.116 [lua]-[trace] Injection completed +2021-11-17 10:56:45.116 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:56:45.117 [lua]-[trace] Injection completed +2021-11-17 10:56:45.117 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:56:45.117 [lua]-[trace] Injection completed +2021-11-17 10:56:45.117 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:56:45.117 [lua]-[trace] Injection completed +2021-11-17 10:56:45.117 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:56:45.117 [lua]-[trace] Injection completed +2021-11-17 10:56:45.117 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:56:45.117 [lua]-[trace] Injection completed +2021-11-17 10:56:45.117 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:56:45.118 [lua]-[trace] Injection completed +2021-11-17 10:56:45.118 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:56:45.118 [lua]-[trace] Injection completed +2021-11-17 10:56:45.119 [lua]-[trace] Wave compilation start. +2021-11-17 10:56:45.135 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:56:47. 82 [lua]-[trace] Template compilation start. +2021-11-17 10:56:47.103 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:56:47.113 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:56:49.555 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:56:49.555 [lua]-[debug] Result true +2021-11-17 10:56:49.555 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:56:52.149 [event]-[trace] WE is about to compile maps. +2021-11-17 10:56:54.438 [event]-[trace] WE is about to compile maps. +2021-11-17 10:56:54.612 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:56:54.613 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:56:54.613 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:56:54.613 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:56:54.613 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:56:54.615 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:56:54.615 [lua]-[trace] Processing file.out +2021-11-17 10:56:54.642 [lua]-[trace] Writing code to file.out +2021-11-17 10:56:54.642 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:56:54.643 [lua]-[trace] Injection completed +2021-11-17 10:56:54.643 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:56:54.643 [lua]-[trace] Injection completed +2021-11-17 10:56:54.643 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:56:54.643 [lua]-[trace] Injection completed +2021-11-17 10:56:54.643 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:56:54.644 [lua]-[trace] Injection completed +2021-11-17 10:56:54.644 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:56:54.644 [lua]-[trace] Injection completed +2021-11-17 10:56:54.644 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:56:54.644 [lua]-[trace] Injection completed +2021-11-17 10:56:54.644 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:56:54.644 [lua]-[trace] Injection completed +2021-11-17 10:56:54.644 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:56:54.645 [lua]-[trace] Injection completed +2021-11-17 10:56:54.645 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:56:54.645 [lua]-[trace] Injection completed +2021-11-17 10:56:54.645 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:56:54.645 [lua]-[trace] Injection completed +2021-11-17 10:56:54.645 [lua]-[trace] Wave compilation start. +2021-11-17 10:56:54.660 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:56:56.618 [lua]-[trace] Template compilation start. +2021-11-17 10:56:56.639 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:56:56.647 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:56:58.701 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:56:58.701 [lua]-[debug] Result true +2021-11-17 10:56:58.701 [lua]-[debug] ********************* on save end ********************* +2021-11-17 10:57:00.141 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:57:00.141 [event]-[trace] No need to compile. +2021-11-17 10:57:00.141 [lua]-[debug] ********************* on test start ********************* +2021-11-17 10:57:00.142 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:57:00.142 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:57:00.142 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 10:57:00.142 [lua]-[debug] Testing 0 +2021-11-17 10:57:00.250 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 10:57:00.250 [lua]-[debug] ********************* on test end ********************* +2021-11-17 10:57:53.276 [event]-[trace] WE is about to compile maps. +2021-11-17 10:57:53.444 [lua]-[debug] ********************* on save start ********************* +2021-11-17 10:57:53.445 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 10:57:53.445 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 10:57:53.445 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 10:57:53.445 [lua]-[trace] mpq_util.update_file. +2021-11-17 10:57:53.448 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 10:57:53.448 [lua]-[trace] Processing file.out +2021-11-17 10:57:53.477 [lua]-[trace] Writing code to file.out +2021-11-17 10:57:53.477 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 10:57:53.478 [lua]-[trace] Injection completed +2021-11-17 10:57:53.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 10:57:53.478 [lua]-[trace] Injection completed +2021-11-17 10:57:53.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 10:57:53.479 [lua]-[trace] Injection completed +2021-11-17 10:57:53.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 10:57:53.479 [lua]-[trace] Injection completed +2021-11-17 10:57:53.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 10:57:53.479 [lua]-[trace] Injection completed +2021-11-17 10:57:53.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 10:57:53.480 [lua]-[trace] Injection completed +2021-11-17 10:57:53.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 10:57:53.480 [lua]-[trace] Injection completed +2021-11-17 10:57:53.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 10:57:53.480 [lua]-[trace] Injection completed +2021-11-17 10:57:53.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 10:57:53.480 [lua]-[trace] Injection completed +2021-11-17 10:57:53.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 10:57:53.481 [lua]-[trace] Injection completed +2021-11-17 10:57:53.481 [lua]-[trace] Wave compilation start. +2021-11-17 10:57:53.497 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 10:57:55.218 [lua]-[trace] Template compilation start. +2021-11-17 10:57:55.242 [lua]-[debug] Template compilation succeeded. +2021-11-17 10:57:55.251 [lua]-[trace] JassHelper compilation start. +2021-11-17 10:57:57.260 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 10:57:57.260 [lua]-[debug] Result true +2021-11-17 10:57:57.260 [lua]-[debug] ********************* on save end ********************* +2021-11-17 11:00:50.356 [event]-[trace] WE is about to compile maps. +2021-11-17 11:00:50.595 [lua]-[debug] ********************* on save start ********************* +2021-11-17 11:00:50.596 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 11:00:50.596 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 11:00:50.596 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 11:00:50.596 [lua]-[trace] mpq_util.update_file. +2021-11-17 11:00:50.599 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 11:00:50.599 [lua]-[trace] Processing file.out +2021-11-17 11:00:50.624 [lua]-[trace] Writing code to file.out +2021-11-17 11:00:50.624 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 11:00:50.625 [lua]-[trace] Injection completed +2021-11-17 11:00:50.625 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 11:00:50.625 [lua]-[trace] Injection completed +2021-11-17 11:00:50.626 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 11:00:50.626 [lua]-[trace] Injection completed +2021-11-17 11:00:50.626 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 11:00:50.626 [lua]-[trace] Injection completed +2021-11-17 11:00:50.626 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 11:00:50.626 [lua]-[trace] Injection completed +2021-11-17 11:00:50.626 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 11:00:50.627 [lua]-[trace] Injection completed +2021-11-17 11:00:50.627 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 11:00:50.627 [lua]-[trace] Injection completed +2021-11-17 11:00:50.627 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 11:00:50.627 [lua]-[trace] Injection completed +2021-11-17 11:00:50.627 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 11:00:50.628 [lua]-[trace] Injection completed +2021-11-17 11:00:50.628 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 11:00:50.628 [lua]-[trace] Injection completed +2021-11-17 11:00:50.628 [lua]-[trace] Wave compilation start. +2021-11-17 11:00:50.644 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 11:00:52.322 [lua]-[trace] Template compilation start. +2021-11-17 11:00:52.343 [lua]-[debug] Template compilation succeeded. +2021-11-17 11:00:52.352 [lua]-[trace] JassHelper compilation start. +2021-11-17 11:00:54.664 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 11:00:54.665 [lua]-[debug] Result true +2021-11-17 11:00:54.665 [lua]-[debug] ********************* on save end ********************* +2021-11-17 11:00:56.495 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 11:00:56.495 [event]-[trace] No need to compile. +2021-11-17 11:00:56.495 [lua]-[debug] ********************* on test start ********************* +2021-11-17 11:00:56.495 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 11:00:56.495 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 11:00:56.495 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 11:00:56.495 [lua]-[debug] Testing 0 +2021-11-17 11:00:56.600 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 11:00:56.600 [lua]-[debug] ********************* on test end ********************* +2021-11-17 11:14:41.724 [event]-[trace] WE is about to compile maps. +2021-11-17 11:14:41.872 [lua]-[debug] ********************* on save start ********************* +2021-11-17 11:14:41.873 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 11:14:41.873 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 11:14:41.873 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 11:14:41.873 [lua]-[trace] mpq_util.update_file. +2021-11-17 11:14:41.876 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 11:14:41.876 [lua]-[trace] Processing file.out +2021-11-17 11:14:41.900 [lua]-[trace] Writing code to file.out +2021-11-17 11:14:41.900 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 11:14:41.900 [lua]-[trace] Injection completed +2021-11-17 11:14:41.900 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 11:14:41.901 [lua]-[trace] Injection completed +2021-11-17 11:14:41.901 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 11:14:41.901 [lua]-[trace] Injection completed +2021-11-17 11:14:41.901 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 11:14:41.902 [lua]-[trace] Injection completed +2021-11-17 11:14:41.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 11:14:41.902 [lua]-[trace] Injection completed +2021-11-17 11:14:41.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 11:14:41.902 [lua]-[trace] Injection completed +2021-11-17 11:14:41.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 11:14:41.902 [lua]-[trace] Injection completed +2021-11-17 11:14:41.902 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 11:14:41.902 [lua]-[trace] Injection completed +2021-11-17 11:14:41.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 11:14:41.903 [lua]-[trace] Injection completed +2021-11-17 11:14:41.903 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 11:14:41.903 [lua]-[trace] Injection completed +2021-11-17 11:14:41.903 [lua]-[trace] Wave compilation start. +2021-11-17 11:14:41.920 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 11:14:43.595 [lua]-[trace] Template compilation start. +2021-11-17 11:14:43.621 [lua]-[debug] Template compilation succeeded. +2021-11-17 11:14:43.631 [lua]-[trace] JassHelper compilation start. +2021-11-17 11:14:45.934 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 11:14:45.934 [lua]-[debug] Result true +2021-11-17 11:14:45.934 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:11:51.387 [event]-[trace] WE is about to compile maps. +2021-11-17 12:11:51.494 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:11:51.495 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:11:51.495 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:11:51.495 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:11:51.495 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:11:51.499 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:11:51.499 [lua]-[trace] Processing file.out +2021-11-17 12:11:51.552 [lua]-[trace] Writing code to file.out +2021-11-17 12:11:51.552 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:11:51.552 [lua]-[trace] Injection completed +2021-11-17 12:11:51.552 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:11:51.553 [lua]-[trace] Injection completed +2021-11-17 12:11:51.553 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:11:51.554 [lua]-[trace] Injection completed +2021-11-17 12:11:51.554 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:11:51.554 [lua]-[trace] Injection completed +2021-11-17 12:11:51.554 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:11:51.554 [lua]-[trace] Injection completed +2021-11-17 12:11:51.554 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:11:51.554 [lua]-[trace] Injection completed +2021-11-17 12:11:51.554 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:11:51.554 [lua]-[trace] Injection completed +2021-11-17 12:11:51.554 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:11:51.555 [lua]-[trace] Injection completed +2021-11-17 12:11:51.555 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:11:51.555 [lua]-[trace] Injection completed +2021-11-17 12:11:51.555 [lua]-[trace] Wave compilation start. +2021-11-17 12:11:51.576 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:11:51.839 [lua]-[trace] Template compilation start. +2021-11-17 12:11:51.867 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:11:51.875 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:11:54.272 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:11:54.272 [lua]-[debug] Result true +2021-11-17 12:11:54.272 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:11:57.537 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:11:57.537 [event]-[trace] No need to compile. +2021-11-17 12:11:57.537 [lua]-[debug] ********************* on test start ********************* +2021-11-17 12:11:57.538 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:11:57.538 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:11:57.538 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:11:57.538 [lua]-[debug] Testing 0 +2021-11-17 12:11:57.669 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 12:11:57.669 [lua]-[debug] ********************* on test end ********************* +2021-11-17 12:16:20.712 [event]-[trace] WE is about to compile maps. +2021-11-17 12:16:20.829 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:16:20.830 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:16:20.830 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:16:20.830 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:16:20.830 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:16:20.834 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:16:20.834 [lua]-[trace] Processing file.out +2021-11-17 12:16:20.881 [lua]-[trace] Writing code to file.out +2021-11-17 12:16:20.881 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:16:20.882 [lua]-[trace] Injection completed +2021-11-17 12:16:20.882 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:16:20.883 [lua]-[trace] Injection completed +2021-11-17 12:16:20.883 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:16:20.884 [lua]-[trace] Injection completed +2021-11-17 12:16:20.884 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:16:20.884 [lua]-[trace] Injection completed +2021-11-17 12:16:20.884 [lua]-[trace] Wave compilation start. +2021-11-17 12:16:20.899 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:16:21.132 [lua]-[trace] Template compilation start. +2021-11-17 12:16:21.154 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:16:21.163 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:16:23.420 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:16:23.420 [lua]-[debug] Result true +2021-11-17 12:16:23.420 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:16:30.432 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:16:30.432 [event]-[trace] No need to compile. +2021-11-17 12:16:30.432 [lua]-[debug] ********************* on test start ********************* +2021-11-17 12:16:30.433 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:16:30.433 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:16:30.433 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:16:30.433 [lua]-[debug] Testing 0 +2021-11-17 12:16:30.521 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 12:16:30.521 [lua]-[debug] ********************* on test end ********************* +2021-11-17 12:19:50.312 [event]-[trace] WE is about to compile maps. +2021-11-17 12:19:50.418 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:19:50.419 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:19:50.419 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:19:50.419 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:19:50.419 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:19:50.424 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:19:50.424 [lua]-[trace] Processing file.out +2021-11-17 12:19:50.477 [lua]-[trace] Writing code to file.out +2021-11-17 12:19:50.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:19:50.478 [lua]-[trace] Injection completed +2021-11-17 12:19:50.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:19:50.478 [lua]-[trace] Injection completed +2021-11-17 12:19:50.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:19:50.478 [lua]-[trace] Injection completed +2021-11-17 12:19:50.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:19:50.478 [lua]-[trace] Injection completed +2021-11-17 12:19:50.478 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:19:50.479 [lua]-[trace] Injection completed +2021-11-17 12:19:50.479 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:19:50.480 [lua]-[trace] Injection completed +2021-11-17 12:19:50.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:19:50.480 [lua]-[trace] Injection completed +2021-11-17 12:19:50.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:19:50.480 [lua]-[trace] Injection completed +2021-11-17 12:19:50.480 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:19:50.480 [lua]-[trace] Injection completed +2021-11-17 12:19:50.481 [lua]-[trace] Wave compilation start. +2021-11-17 12:19:50.499 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:19:50.770 [lua]-[trace] Template compilation start. +2021-11-17 12:19:50.795 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:19:50.803 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:19:52.802 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:19:52.802 [lua]-[debug] Result true +2021-11-17 12:19:52.803 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:20:41.741 [event]-[trace] WE is about to compile maps. +2021-11-17 12:20:41.871 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:20:41.873 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:20:41.873 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:20:41.873 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:20:41.873 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:20:41.877 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:20:41.877 [lua]-[trace] Processing file.out +2021-11-17 12:20:41.930 [lua]-[trace] Writing code to file.out +2021-11-17 12:20:41.930 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:20:41.931 [lua]-[trace] Injection completed +2021-11-17 12:20:41.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:20:41.931 [lua]-[trace] Injection completed +2021-11-17 12:20:41.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:20:41.931 [lua]-[trace] Injection completed +2021-11-17 12:20:41.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:20:41.931 [lua]-[trace] Injection completed +2021-11-17 12:20:41.931 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:20:41.932 [lua]-[trace] Injection completed +2021-11-17 12:20:41.932 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:20:41.933 [lua]-[trace] Injection completed +2021-11-17 12:20:41.933 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:20:41.933 [lua]-[trace] Injection completed +2021-11-17 12:20:41.933 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:20:41.933 [lua]-[trace] Injection completed +2021-11-17 12:20:41.933 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:20:41.933 [lua]-[trace] Injection completed +2021-11-17 12:20:41.934 [lua]-[trace] Wave compilation start. +2021-11-17 12:20:41.954 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:20:42.247 [lua]-[trace] Template compilation start. +2021-11-17 12:20:42.265 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:20:42.274 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:20:44.588 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:20:44.588 [lua]-[debug] Result true +2021-11-17 12:20:44.588 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:25:25. 81 [event]-[trace] WE is about to compile maps. +2021-11-17 12:25:25.283 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:25:25.284 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:25:25.284 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x +2021-11-17 12:25:25.284 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:25:25.284 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:25:25.287 [lua]-[trace] war3map.j has been extracted from 破碎乱斗1.w3x +2021-11-17 12:25:25.287 [lua]-[trace] Processing file.out +2021-11-17 12:25:25.313 [lua]-[trace] Writing code to file.out +2021-11-17 12:25:25.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWEMemoryLeakHelper.j +2021-11-17 12:25:25.314 [lua]-[trace] Injection completed +2021-11-17 12:25:25.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 12:25:25.314 [lua]-[trace] Injection completed +2021-11-17 12:25:25.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWETimerPattern.j +2021-11-17 12:25:25.315 [lua]-[trace] Injection completed +2021-11-17 12:25:25.315 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2021-11-17 12:25:25.315 [lua]-[trace] Injection completed +2021-11-17 12:25:25.315 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 12:25:25.315 [lua]-[trace] Injection completed +2021-11-17 12:25:25.315 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2021-11-17 12:25:25.315 [lua]-[trace] Injection completed +2021-11-17 12:25:25.316 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 12:25:25.316 [lua]-[trace] Injection completed +2021-11-17 12:25:25.316 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\YDWENewItemsFormula.j +2021-11-17 12:25:25.316 [lua]-[trace] Injection completed +2021-11-17 12:25:25.316 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:25:25.316 [lua]-[trace] Injection completed +2021-11-17 12:25:25.316 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PolledWait.j +2021-11-17 12:25:25.317 [lua]-[trace] Injection completed +2021-11-17 12:25:25.317 [lua]-[trace] Wave compilation start. +2021-11-17 12:25:25.335 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:25:27. 39 [lua]-[trace] Template compilation start. +2021-11-17 12:25:27. 65 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:25:27. 75 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:25:29.412 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\破碎乱斗1.w3x", returned 0 +2021-11-17 12:25:29.413 [lua]-[debug] Result true +2021-11-17 12:25:29.413 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:25:32.381 [event]-[trace] WE is about to compile maps. +2021-11-17 12:25:32.504 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:25:32.505 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:25:32.505 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:25:32.505 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:25:32.505 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:25:32.508 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:25:32.508 [lua]-[trace] Processing file.out +2021-11-17 12:25:32.562 [lua]-[trace] Writing code to file.out +2021-11-17 12:25:32.562 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:25:32.563 [lua]-[trace] Injection completed +2021-11-17 12:25:32.563 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:25:32.563 [lua]-[trace] Injection completed +2021-11-17 12:25:32.563 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:25:32.563 [lua]-[trace] Injection completed +2021-11-17 12:25:32.563 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:25:32.563 [lua]-[trace] Injection completed +2021-11-17 12:25:32.563 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:25:32.563 [lua]-[trace] Injection completed +2021-11-17 12:25:32.563 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.564 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:25:32.564 [lua]-[trace] Injection completed +2021-11-17 12:25:32.565 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:25:32.565 [lua]-[trace] Injection completed +2021-11-17 12:25:32.565 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:25:32.565 [lua]-[trace] Injection completed +2021-11-17 12:25:32.565 [lua]-[trace] Wave compilation start. +2021-11-17 12:25:32.581 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:25:32.835 [lua]-[trace] Template compilation start. +2021-11-17 12:25:32.854 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:25:32.861 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:25:35.124 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:25:35.125 [lua]-[debug] Result true +2021-11-17 12:25:35.125 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:25:37.376 [lua]-[debug] ********************* on exit start ********************* +2021-11-17 12:25:37.376 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-17 12:25:37.376 [lua]-[trace] Unload plugin YDClient. +2021-11-17 12:25:37.376 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-17 12:25:37.376 [inject]-[debug] IAT hook cleanup started. +2021-11-17 12:25:37.376 [inject]-[trace] WE IAT hook cleaned. +2021-11-17 12:25:37.376 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-17 12:25:37.376 [inject]-[debug] IAT hook cleanup completed. +2021-11-17 12:25:37.376 [inject]-[debug] Inline hook uninstallation begins! +2021-11-17 12:25:37.376 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-17 12:25:37.376 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-17 12:25:37.376 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-17 12:25:37.376 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-17 12:25:37.376 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-17 12:25:37.377 [inject]-[debug] Inline hook uninstallation finished! +2021-11-17 12:25:37.377 [lua]-[trace] Unload plugin YDTrigger. +2021-11-17 12:25:37.377 [lua]-[trace] Unload plugin Tesh. +2021-11-17 12:25:37.382 [lua]-[debug] ********************* on exit end ********************* +2021-11-17 12:25:37.382 [event]-[info ] Main program exit. +2021-11-17 12:25:37.995 [root]-[info ] Script engine has been shut down. +2021-11-17 12:27:20.522 [event]-[trace] WE is about to compile maps. +2021-11-17 12:27:20.628 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:27:20.628 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:27:20.628 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:27:20.628 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:27:20.628 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:27:20.633 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:27:20.633 [lua]-[trace] Processing file.out +2021-11-17 12:27:20.680 [lua]-[trace] Writing code to file.out +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:27:20.681 [lua]-[trace] Injection completed +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:27:20.681 [lua]-[trace] Injection completed +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:27:20.681 [lua]-[trace] Injection completed +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:27:20.681 [lua]-[trace] Injection completed +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:27:20.681 [lua]-[trace] Injection completed +2021-11-17 12:27:20.681 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:27:20.682 [lua]-[trace] Injection completed +2021-11-17 12:27:20.682 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:27:20.683 [lua]-[trace] Injection completed +2021-11-17 12:27:20.683 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:27:20.683 [lua]-[trace] Injection completed +2021-11-17 12:27:20.683 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:27:20.683 [lua]-[trace] Injection completed +2021-11-17 12:27:20.683 [lua]-[trace] Wave compilation start. +2021-11-17 12:27:20.700 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:27:21. 1 [lua]-[trace] Template compilation start. +2021-11-17 12:27:21. 20 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:27:21. 27 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:27:22.998 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:27:22.999 [lua]-[debug] Result true +2021-11-17 12:27:22.999 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:27:28.969 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:27:28.969 [event]-[trace] No need to compile. +2021-11-17 12:27:28.970 [lua]-[debug] ********************* on test start ********************* +2021-11-17 12:27:28.970 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:27:28.970 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:27:28.970 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:27:28.970 [lua]-[debug] Testing 0 +2021-11-17 12:27:29. 95 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 12:27:29. 95 [lua]-[debug] ********************* on test end ********************* +2021-11-17 12:31:42.888 [event]-[trace] WE is about to compile maps. +2021-11-17 12:31:43. 38 [lua]-[debug] ********************* on save start ********************* +2021-11-17 12:31:43. 39 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:31:43. 39 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 12:31:43. 39 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 12:31:43. 39 [lua]-[trace] mpq_util.update_file. +2021-11-17 12:31:43. 42 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 12:31:43. 42 [lua]-[trace] Processing file.out +2021-11-17 12:31:43. 91 [lua]-[trace] Writing code to file.out +2021-11-17 12:31:43. 91 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 12:31:43. 92 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 92 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 12:31:43. 93 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 93 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 12:31:43. 94 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 94 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 12:31:43. 94 [lua]-[trace] Injection completed +2021-11-17 12:31:43. 94 [lua]-[trace] Wave compilation start. +2021-11-17 12:31:43.111 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 12:31:43.366 [lua]-[trace] Template compilation start. +2021-11-17 12:31:43.386 [lua]-[debug] Template compilation succeeded. +2021-11-17 12:31:43.393 [lua]-[trace] JassHelper compilation start. +2021-11-17 12:31:45.853 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 12:31:45.854 [lua]-[debug] Result true +2021-11-17 12:31:45.854 [lua]-[debug] ********************* on save end ********************* +2021-11-17 12:31:49.409 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:31:49.409 [event]-[trace] No need to compile. +2021-11-17 12:31:49.409 [lua]-[debug] ********************* on test start ********************* +2021-11-17 12:31:49.409 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:31:49.409 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:31:49.409 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:31:49.409 [lua]-[debug] Testing 0 +2021-11-17 12:31:49.513 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 12:31:49.513 [lua]-[debug] ********************* on test end ********************* +2021-11-17 12:47:41.933 [lua]-[debug] ********************* on exit start ********************* +2021-11-17 12:47:41.934 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-17 12:47:41.934 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-17 12:47:41.934 [inject]-[debug] IAT hook cleanup started. +2021-11-17 12:47:41.934 [inject]-[trace] WE IAT hook cleaned. +2021-11-17 12:47:41.934 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-17 12:47:41.934 [inject]-[debug] IAT hook cleanup completed. +2021-11-17 12:47:41.934 [inject]-[debug] Inline hook uninstallation begins! +2021-11-17 12:47:41.934 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-17 12:47:41.934 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-17 12:47:41.934 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-17 12:47:41.934 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-17 12:47:41.934 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-17 12:47:41.934 [inject]-[debug] Inline hook uninstallation finished! +2021-11-17 12:47:41.934 [lua]-[trace] Unload plugin Tesh. +2021-11-17 12:47:41.948 [lua]-[trace] Unload plugin YDTrigger. +2021-11-17 12:47:41.949 [lua]-[trace] Unload plugin YDClient. +2021-11-17 12:47:41.949 [lua]-[debug] ********************* on exit end ********************* +2021-11-17 12:47:41.949 [event]-[info ] Main program exit. +2021-11-17 12:47:42.254 [root]-[info ] Script engine has been shut down. +2021-11-17 12:56:34.505 [root]-[info ] ------------------------------------------------------ +2021-11-17 12:56:34.505 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 12:56:34.505 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 12:56:34.505 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 12:56:34.505 [root]-[debug] Initialize script engine successfully. +2021-11-17 12:56:34.505 [root]-[info ] Script engine startup complete. +2021-11-17 12:56:34.505 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 12:56:34.505 [lua]-[trace] Initializing 'sys' +2021-11-17 12:56:34.505 [lua]-[trace] Initializing 'filesystem' +2021-11-17 12:56:34.520 [lua]-[trace] Initializing 'gui' +2021-11-17 12:56:34.520 [lua]-[trace] Initializing 'util' +2021-11-17 12:56:34.520 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 12:56:34.520 [lua]-[trace] Initializing 'ffi' +2021-11-17 12:56:34.520 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 12:56:34.520 [lua]-[trace] Initializing 'event' +2021-11-17 12:56:34.536 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 12:56:34.536 [lua]-[trace] Initializing 'registry' +2021-11-17 12:56:34.536 [lua]-[trace] Initializing 'version' +2021-11-17 12:56:34.536 [lua]-[trace] Initializing 'localization' +2021-11-17 12:56:34.536 [lua]-[trace] Initializing 'i18n' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'config' +2021-11-17 12:56:34.552 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'plugin' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'uiloader' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'lni-c' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 12:56:34.552 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'check_object' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 12:56:34.567 [event]-[trace] RegisterEvent id: 7 +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 12:56:34.567 [event]-[trace] RegisterEvent id: 5 +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'compile.template' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 12:56:34.567 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'compile.native' +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 3 +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 2 +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'utility' +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'mapdump' +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 4 +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 0 +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 1 +2021-11-17 12:56:34.583 [event]-[trace] RegisterEvent id: 6 +2021-11-17 12:56:34.583 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 12:56:34.883 [event]-[trace] RegisterEvent id: 8 +2021-11-17 12:56:34.883 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 12:56:34.885 [event]-[trace] RegisterEvent id: 9 +2021-11-17 12:56:34.885 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 12:56:34.893 [event]-[info ] Entering main program. +2021-11-17 12:56:34.893 [event]-[debug] Command line: +2021-11-17 12:56:34.896 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 12:56:34.897 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 12:56:34.898 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 12:56:34.899 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:56:34.899 [lua]-[trace] check_conflicting_ui +2021-11-17 12:56:34.900 [lua]-[trace] check_conflicting_units +2021-11-17 12:56:34.900 [lua]-[trace] clear_potential_conflicting +2021-11-17 12:56:34.900 [lua]-[trace] check_war3_version +2021-11-17 12:56:34.906 [lua]-[error] Cannot find war3.mpq +2021-11-17 12:56:34.913 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 12:56:34.941 [lua]-[debug] Tesh loaded successfully. +2021-11-17 12:56:34.980 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 12:56:34.985 [lua]-[debug] YDClient loaded successfully. +2021-11-17 12:56:34.986 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 12:56:34.987 [lua]-[warn ] failed: disable +2021-11-17 12:56:34.988 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 12:56:34.989 [lua]-[warn ] failed: disable +2021-11-17 12:56:34.989 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 12:56:34.990 [lua]-[warn ] failed: disable +2021-11-17 12:56:34.990 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 12:56:35. 52 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 12:56:35. 59 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 12:56:35. 64 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 12:56:35. 64 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 12:56:35. 69 [inject]-[debug] Start installing inline hooks. +2021-11-17 12:56:35. 69 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 12:56:35. 69 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 12:56:35. 70 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 12:56:35. 70 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 12:56:35. 70 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 12:56:35. 70 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 12:56:35. 70 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 12:56:35. 70 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 12:56:35. 70 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 12:56:35. 70 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 12:56:35. 70 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 12:56:35. 70 [inject]-[debug] Installing inline hooks complete. +2021-11-17 12:56:35. 70 [inject]-[debug] IAT hook initialization started. +2021-11-17 12:56:35. 70 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 12:56:35. 70 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 12:56:35. 71 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 12:56:35. 71 [inject]-[debug] IAT hook initialization completed. +2021-11-17 12:56:35. 71 [inject]-[debug] Patches initialization started. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing syntax check patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing auto disable patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing enable trigger check patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 12:56:35. 71 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing doodad limit patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing unit/item limit patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 12:56:35. 71 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 12:56:35. 71 [inject]-[trace] Installing attack table patch +2021-11-17 12:56:35. 71 [inject]-[debug] Patches initialization completed. +2021-11-17 12:56:35. 71 [inject]-[info ] YDWE startup complete. +2021-11-17 12:56:35. 71 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 12:56:35. 72 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 12:56:35. 73 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 12:56:35. 73 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 12:56:35.101 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 12:56:35.105 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 12:56:35.109 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 12:56:35.110 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 12:56:35.110 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 12:56:35.111 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 12:56:35.111 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 12:56:35.129 [lua]-[trace] Scanned file: 99 +2021-11-17 12:56:35.130 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 12:56:35.698 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 12:56:35.727 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 12:56:35.958 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 12:56:36.133 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 12:56:36.135 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 12:56:36.136 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 12:56:36.137 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 12:56:36.138 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 12:56:38.705 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 12:56:38.706 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 12:57:02.258 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 12:57:02.258 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 12:57:02.258 [lua]-[info ] OpenPathAsArchive Custom_V1 +2021-11-17 12:57:02.675 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 12:57:02.712 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 12:57:02.871 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 12:57:09.610 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:57:09.610 [event]-[trace] No need to compile. +2021-11-17 12:57:09.610 [lua]-[debug] ********************* on test start ********************* +2021-11-17 12:57:09.610 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 12:57:09.610 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:57:09.610 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 12:57:09.610 [lua]-[debug] Testing 0 +2021-11-17 12:57:09.650 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 12:57:09.650 [lua]-[debug] ********************* on test end ********************* +2021-11-17 13:10:18.312 [event]-[trace] WE is about to compile maps. +2021-11-17 13:10:18.404 [lua]-[debug] ********************* on save start ********************* +2021-11-17 13:10:18.404 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:10:18.404 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 13:10:18.404 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 13:10:18.404 [lua]-[trace] mpq_util.update_file. +2021-11-17 13:10:18.408 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 13:10:18.408 [lua]-[trace] Processing file.out +2021-11-17 13:10:18.456 [lua]-[trace] Writing code to file.out +2021-11-17 13:10:18.456 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 13:10:18.457 [lua]-[trace] Injection completed +2021-11-17 13:10:18.457 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 13:10:18.457 [lua]-[trace] Injection completed +2021-11-17 13:10:18.457 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 13:10:18.457 [lua]-[trace] Injection completed +2021-11-17 13:10:18.457 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 13:10:18.458 [lua]-[trace] Injection completed +2021-11-17 13:10:18.458 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 13:10:18.458 [lua]-[trace] Injection completed +2021-11-17 13:10:18.458 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 13:10:18.458 [lua]-[trace] Injection completed +2021-11-17 13:10:18.458 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 13:10:18.459 [lua]-[trace] Injection completed +2021-11-17 13:10:18.459 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 13:10:18.459 [lua]-[trace] Injection completed +2021-11-17 13:10:18.459 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 13:10:18.459 [lua]-[trace] Injection completed +2021-11-17 13:10:18.459 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 13:10:18.460 [lua]-[trace] Injection completed +2021-11-17 13:10:18.460 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 13:10:18.460 [lua]-[trace] Injection completed +2021-11-17 13:10:18.460 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 13:10:18.460 [lua]-[trace] Injection completed +2021-11-17 13:10:18.460 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 13:10:18.461 [lua]-[trace] Injection completed +2021-11-17 13:10:18.461 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 13:10:18.461 [lua]-[trace] Injection completed +2021-11-17 13:10:18.461 [lua]-[trace] Wave compilation start. +2021-11-17 13:10:18.478 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 13:10:18.721 [lua]-[trace] Template compilation start. +2021-11-17 13:10:18.735 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-17 13:10:18.737 [lua]-[trace] Initializing 'computed.order_list' +2021-11-17 13:10:18.738 [lua]-[trace] Initializing 'computed.order_id' +2021-11-17 13:10:18.744 [lua]-[debug] Template compilation succeeded. +2021-11-17 13:10:18.753 [lua]-[trace] JassHelper compilation start. +2021-11-17 13:10:20.704 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 13:10:20.705 [lua]-[debug] Result true +2021-11-17 13:10:20.705 [lua]-[debug] ********************* on save end ********************* +2021-11-17 13:10:28.568 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:10:28.568 [event]-[trace] No need to compile. +2021-11-17 13:10:28.568 [lua]-[debug] ********************* on test start ********************* +2021-11-17 13:10:28.569 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:10:28.569 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:10:28.569 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:10:28.569 [lua]-[debug] Testing 0 +2021-11-17 13:10:28.755 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 13:10:28.755 [lua]-[debug] ********************* on test end ********************* +2021-11-17 13:25:37.307 [event]-[trace] WE is about to compile maps. +2021-11-17 13:25:37.409 [lua]-[debug] ********************* on save start ********************* +2021-11-17 13:25:37.410 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:25:37.410 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 13:25:37.410 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 13:25:37.410 [lua]-[trace] mpq_util.update_file. +2021-11-17 13:25:37.414 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 13:25:37.414 [lua]-[trace] Processing file.out +2021-11-17 13:25:37.469 [lua]-[trace] Writing code to file.out +2021-11-17 13:25:37.470 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 13:25:37.470 [lua]-[trace] Injection completed +2021-11-17 13:25:37.470 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 13:25:37.470 [lua]-[trace] Injection completed +2021-11-17 13:25:37.470 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 13:25:37.470 [lua]-[trace] Injection completed +2021-11-17 13:25:37.470 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 13:25:37.470 [lua]-[trace] Injection completed +2021-11-17 13:25:37.470 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 13:25:37.470 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 13:25:37.471 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 13:25:37.471 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 13:25:37.471 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 13:25:37.471 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 13:25:37.471 [lua]-[trace] Injection completed +2021-11-17 13:25:37.471 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 13:25:37.472 [lua]-[trace] Injection completed +2021-11-17 13:25:37.472 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 13:25:37.472 [lua]-[trace] Injection completed +2021-11-17 13:25:37.472 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 13:25:37.472 [lua]-[trace] Injection completed +2021-11-17 13:25:37.472 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 13:25:37.472 [lua]-[trace] Injection completed +2021-11-17 13:25:37.472 [lua]-[trace] Wave compilation start. +2021-11-17 13:25:37.489 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 13:25:37.741 [lua]-[trace] Template compilation start. +2021-11-17 13:25:37.768 [lua]-[debug] Template compilation succeeded. +2021-11-17 13:25:37.776 [lua]-[trace] JassHelper compilation start. +2021-11-17 13:25:39.564 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 13:25:39.565 [lua]-[debug] Result true +2021-11-17 13:25:39.565 [lua]-[debug] ********************* on save end ********************* +2021-11-17 13:27:26.174 [event]-[trace] WE is about to compile maps. +2021-11-17 13:27:26.261 [lua]-[debug] ********************* on save start ********************* +2021-11-17 13:27:26.261 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:27:26.261 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 13:27:26.261 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 13:27:26.261 [lua]-[trace] mpq_util.update_file. +2021-11-17 13:27:26.264 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 13:27:26.264 [lua]-[trace] Processing file.out +2021-11-17 13:27:26.312 [lua]-[trace] Writing code to file.out +2021-11-17 13:27:26.312 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 13:27:26.313 [lua]-[trace] Injection completed +2021-11-17 13:27:26.313 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.314 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 13:27:26.314 [lua]-[trace] Injection completed +2021-11-17 13:27:26.315 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 13:27:26.315 [lua]-[trace] Injection completed +2021-11-17 13:27:26.315 [lua]-[trace] Wave compilation start. +2021-11-17 13:27:26.331 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 13:27:26.609 [lua]-[trace] Template compilation start. +2021-11-17 13:27:26.630 [lua]-[debug] Template compilation succeeded. +2021-11-17 13:27:26.637 [lua]-[trace] JassHelper compilation start. +2021-11-17 13:27:28.312 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 13:27:28.313 [lua]-[debug] Result true +2021-11-17 13:27:28.313 [lua]-[debug] ********************* on save end ********************* +2021-11-17 13:51:04.867 [event]-[trace] WE is about to compile maps. +2021-11-17 13:51:04.959 [lua]-[debug] ********************* on save start ********************* +2021-11-17 13:51:04.960 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:51:04.960 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 13:51:04.960 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 13:51:04.960 [lua]-[trace] mpq_util.update_file. +2021-11-17 13:51:04.962 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 13:51:04.962 [lua]-[trace] Processing file.out +2021-11-17 13:51:05. 8 [lua]-[trace] Writing code to file.out +2021-11-17 13:51:05. 8 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 13:51:05. 8 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 8 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 13:51:05. 8 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 8 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 13:51:05. 8 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 8 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 13:51:05. 9 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 9 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 13:51:05. 9 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 9 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 13:51:05. 9 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 9 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 13:51:05. 9 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 9 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 13:51:05. 9 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 9 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 10 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 10 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 10 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 10 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 10 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 13:51:05. 10 [lua]-[trace] Injection completed +2021-11-17 13:51:05. 11 [lua]-[trace] Wave compilation start. +2021-11-17 13:51:05. 25 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 13:51:05.267 [lua]-[trace] Template compilation start. +2021-11-17 13:51:05.298 [lua]-[debug] Template compilation succeeded. +2021-11-17 13:51:05.306 [lua]-[trace] JassHelper compilation start. +2021-11-17 13:51:07.105 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 13:51:07.106 [lua]-[debug] Result true +2021-11-17 13:51:07.106 [lua]-[debug] ********************* on save end ********************* +2021-11-17 13:52:11. 97 [event]-[trace] WE is about to compile maps. +2021-11-17 13:52:11.187 [lua]-[debug] ********************* on save start ********************* +2021-11-17 13:52:11.188 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:52:11.188 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x +2021-11-17 13:52:11.188 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 13:52:11.188 [lua]-[trace] mpq_util.update_file. +2021-11-17 13:52:11.191 [lua]-[trace] war3map.j has been extracted from HM_062.w3x +2021-11-17 13:52:11.191 [lua]-[trace] Processing file.out +2021-11-17 13:52:11.242 [lua]-[trace] Writing code to file.out +2021-11-17 13:52:11.243 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 13:52:11.243 [lua]-[trace] Injection completed +2021-11-17 13:52:11.243 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 13:52:11.243 [lua]-[trace] Injection completed +2021-11-17 13:52:11.243 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PlaySound.j +2021-11-17 13:52:11.243 [lua]-[trace] Injection completed +2021-11-17 13:52:11.243 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 13:52:11.243 [lua]-[trace] Injection completed +2021-11-17 13:52:11.243 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 13:52:11.244 [lua]-[trace] Injection completed +2021-11-17 13:52:11.244 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 13:52:11.244 [lua]-[trace] Injection completed +2021-11-17 13:52:11.244 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 13:52:11.244 [lua]-[trace] Injection completed +2021-11-17 13:52:11.244 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetPlayerColorBJ.j +2021-11-17 13:52:11.244 [lua]-[trace] Injection completed +2021-11-17 13:52:11.244 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 13:52:11.244 [lua]-[trace] Injection completed +2021-11-17 13:52:11.245 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 13:52:11.245 [lua]-[trace] Injection completed +2021-11-17 13:52:11.245 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 13:52:11.245 [lua]-[trace] Injection completed +2021-11-17 13:52:11.245 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2021-11-17 13:52:11.245 [lua]-[trace] Injection completed +2021-11-17 13:52:11.245 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 13:52:11.245 [lua]-[trace] Injection completed +2021-11-17 13:52:11.245 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 13:52:11.245 [lua]-[trace] Injection completed +2021-11-17 13:52:11.246 [lua]-[trace] Wave compilation start. +2021-11-17 13:52:11.263 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 13:52:11.514 [lua]-[trace] Template compilation start. +2021-11-17 13:52:11.534 [lua]-[debug] Template compilation succeeded. +2021-11-17 13:52:11.541 [lua]-[trace] JassHelper compilation start. +2021-11-17 13:52:13.404 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\HM_062.w3x", returned 0 +2021-11-17 13:52:13.404 [lua]-[debug] Result true +2021-11-17 13:52:13.404 [lua]-[debug] ********************* on save end ********************* +2021-11-17 13:53:12.740 [event]-[trace] Executing map e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:53:12.740 [event]-[trace] No need to compile. +2021-11-17 13:53:12.740 [lua]-[debug] ********************* on test start ********************* +2021-11-17 13:53:12.740 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 13:53:12.740 [lua]-[debug] Testing e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:53:12.740 [lua]-[debug] Testing "e:\warcraft iii frozen throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2021-11-17 13:53:12.740 [lua]-[debug] Testing 0 +2021-11-17 13:53:12.842 [lua]-[trace] Executed "e:\warcraft iii frozen throne\war3.exe" -loadfile "e:\warcraft iii frozen throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\WorldEdit v1.2.9C". +2021-11-17 13:53:12.843 [lua]-[debug] ********************* on test end ********************* +2021-11-17 14:26:07.329 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:26:07.332 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:26:07.332 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:26:07.332 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:26:07.333 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:26:07.333 [root]-[info ] Script engine startup complete. +2021-11-17 14:26:07.333 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:26:07.333 [lua]-[trace] Initializing 'sys' +2021-11-17 14:26:07.334 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:26:07.335 [lua]-[trace] Initializing 'gui' +2021-11-17 14:26:07.336 [lua]-[trace] Initializing 'util' +2021-11-17 14:26:07.336 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:26:07.337 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:26:07.338 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:26:07.338 [lua]-[trace] Initializing 'event' +2021-11-17 14:26:07.341 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:26:07.343 [lua]-[trace] Initializing 'registry' +2021-11-17 14:26:07.344 [lua]-[trace] Initializing 'version' +2021-11-17 14:26:07.345 [lua]-[trace] Initializing 'localization' +2021-11-17 14:26:07.345 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:26:07.346 [lua]-[trace] Initializing 'config' +2021-11-17 14:26:07.348 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:26:07.348 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:26:07.349 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:26:07.349 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:26:07.350 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:26:07.350 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:26:07.351 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:26:07.352 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:26:07.353 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:26:07.353 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:26:07.353 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:26:07.354 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:26:07.356 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:26:07.357 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:26:07.358 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:26:07.358 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:26:07.359 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:26:07.359 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:26:07.359 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:26:07.360 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:26:07.360 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:26:07.360 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:26:07.361 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:26:07.361 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:26:07.362 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:26:07.362 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:26:07.362 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:26:07.363 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:26:07.363 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:26:07.363 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:26:07.363 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:26:07.364 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:26:07.365 [lua]-[trace] Initializing 'utility' +2021-11-17 14:26:07.365 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:26:07.365 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:26:07.365 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:26:07.366 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:26:07.366 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:26:07.366 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:26:07.366 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:26:07.564 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:26:07.564 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:26:07.565 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:26:07.565 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:26:07.571 [event]-[info ] Entering main program. +2021-11-17 14:26:07.571 [event]-[debug] Command line: +2021-11-17 14:26:07.573 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:26:07.574 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:26:07.574 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:26:07.575 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:26:07.575 [lua]-[trace] check_conflicting_ui +2021-11-17 14:26:07.575 [lua]-[trace] check_conflicting_units +2021-11-17 14:26:07.575 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:26:07.575 [lua]-[trace] check_war3_version +2021-11-17 14:26:07.580 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:26:07.582 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:26:07.595 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:26:07.612 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:26:07.614 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:26:07.614 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:26:07.615 [lua]-[warn ] failed: disable +2021-11-17 14:26:07.615 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:26:07.615 [lua]-[warn ] failed: disable +2021-11-17 14:26:07.616 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:26:07.616 [lua]-[warn ] failed: disable +2021-11-17 14:26:07.616 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:26:07.659 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:26:07.662 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:26:07.664 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:26:07.664 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:26:07.665 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:26:07.665 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:26:07.665 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:26:07.665 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:26:07.665 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:26:07.665 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:26:07.665 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:26:07.666 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:26:07.666 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:26:07.666 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:26:07.666 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:26:07.666 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:26:07.666 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:26:07.666 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:26:07.666 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:26:07.666 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:26:07.666 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:26:07.666 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:26:07.666 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:26:07.666 [inject]-[debug] Patches initialization started. +2021-11-17 14:26:07.666 [inject]-[trace] Installing syntax check patch +2021-11-17 14:26:07.666 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:26:07.666 [inject]-[trace] Installing auto disable patch +2021-11-17 14:26:07.666 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:26:07.666 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:26:07.666 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:26:07.666 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:26:07.666 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:26:07.666 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:26:07.667 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:26:07.667 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:26:07.667 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:26:07.667 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:26:07.667 [inject]-[trace] Installing attack table patch +2021-11-17 14:26:07.667 [inject]-[debug] Patches initialization completed. +2021-11-17 14:26:07.667 [inject]-[info ] YDWE startup complete. +2021-11-17 14:26:07.667 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:26:07.667 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:26:07.667 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:26:07.668 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:26:07.680 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:26:07.682 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:26:07.684 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:26:07.684 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:26:07.684 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:26:07.684 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:26:07.684 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:26:07.691 [lua]-[trace] Scanned file: 99 +2021-11-17 14:26:07.691 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:26:08.213 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:26:08.234 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:26:08.365 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:26:08.468 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:26:08.471 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:26:08.472 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:26:08.472 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:26:08.474 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:26:10.148 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:26:10.151 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:28:05.711 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:28:05.713 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:28:05.713 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:28:05.713 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:28:05.714 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:28:05.714 [root]-[info ] Script engine startup complete. +2021-11-17 14:28:05.714 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:28:05.714 [lua]-[trace] Initializing 'sys' +2021-11-17 14:28:05.715 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:28:05.716 [lua]-[trace] Initializing 'gui' +2021-11-17 14:28:05.717 [lua]-[trace] Initializing 'util' +2021-11-17 14:28:05.717 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:28:05.717 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:28:05.718 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:28:05.719 [lua]-[trace] Initializing 'event' +2021-11-17 14:28:05.721 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:28:05.722 [lua]-[trace] Initializing 'registry' +2021-11-17 14:28:05.723 [lua]-[trace] Initializing 'version' +2021-11-17 14:28:05.723 [lua]-[trace] Initializing 'localization' +2021-11-17 14:28:05.723 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:28:05.724 [lua]-[trace] Initializing 'config' +2021-11-17 14:28:05.725 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:28:05.725 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:28:05.726 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:28:05.726 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:28:05.726 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:28:05.727 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:28:05.727 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:28:05.727 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:28:05.729 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:28:05.730 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:28:05.730 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:28:05.731 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:28:05.732 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:28:05.733 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:28:05.733 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:28:05.734 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:28:05.734 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:28:05.734 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:28:05.735 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:28:05.735 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:28:05.735 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:28:05.735 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:28:05.736 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:28:05.736 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:28:05.736 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:28:05.737 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:28:05.737 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:28:05.738 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:28:05.738 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:28:05.738 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:28:05.738 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:28:05.739 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:28:05.739 [lua]-[trace] Initializing 'utility' +2021-11-17 14:28:05.739 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:28:05.740 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:28:05.740 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:28:05.740 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:28:05.740 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:28:05.740 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:28:05.740 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:28:05.923 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:28:05.924 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:28:05.924 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:28:05.924 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:28:05.929 [event]-[info ] Entering main program. +2021-11-17 14:28:05.929 [event]-[debug] Command line: +2021-11-17 14:28:05.934 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:28:05.935 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:28:05.935 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:28:05.936 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:28:05.936 [lua]-[trace] check_conflicting_ui +2021-11-17 14:28:05.936 [lua]-[trace] check_conflicting_units +2021-11-17 14:28:05.936 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:28:05.936 [lua]-[trace] check_war3_version +2021-11-17 14:28:05.940 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:28:05.942 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:28:05.957 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:28:05.971 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:28:05.973 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:28:05.973 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:28:05.973 [lua]-[warn ] failed: disable +2021-11-17 14:28:05.974 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:28:05.974 [lua]-[warn ] failed: disable +2021-11-17 14:28:05.974 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:28:05.975 [lua]-[warn ] failed: disable +2021-11-17 14:28:05.975 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:28:06. 12 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:28:06. 14 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:28:06. 16 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:28:06. 16 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:28:06. 17 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:28:06. 17 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:28:06. 18 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:28:06. 18 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:28:06. 18 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:28:06. 18 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:28:06. 18 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:28:06. 18 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:28:06. 18 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:28:06. 18 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:28:06. 18 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:28:06. 18 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:28:06. 18 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:28:06. 18 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:28:06. 18 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:28:06. 18 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:28:06. 18 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:28:06. 18 [inject]-[debug] Patches initialization started. +2021-11-17 14:28:06. 18 [inject]-[trace] Installing syntax check patch +2021-11-17 14:28:06. 18 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:28:06. 18 [inject]-[trace] Installing auto disable patch +2021-11-17 14:28:06. 19 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:28:06. 19 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:28:06. 19 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:28:06. 19 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:28:06. 19 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:28:06. 19 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:28:06. 19 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:28:06. 19 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:28:06. 19 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:28:06. 19 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:28:06. 19 [inject]-[trace] Installing attack table patch +2021-11-17 14:28:06. 19 [inject]-[debug] Patches initialization completed. +2021-11-17 14:28:06. 19 [inject]-[info ] YDWE startup complete. +2021-11-17 14:28:06. 19 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:28:06. 20 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:28:06. 20 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:28:06. 20 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:28:06. 33 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:28:06. 35 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:28:06. 36 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:28:06. 36 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:28:06. 36 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:28:06. 37 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:28:06. 37 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:28:06. 43 [lua]-[trace] Scanned file: 99 +2021-11-17 14:28:06. 43 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:28:06.501 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:28:06.522 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:28:06.662 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:28:06.778 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:28:06.780 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:28:06.781 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:28:06.781 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:28:06.782 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:28:08.459 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:28:08.459 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:36:41.803 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:36:41.806 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:36:41.806 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:36:41.806 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:36:41.806 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:36:41.806 [root]-[info ] Script engine startup complete. +2021-11-17 14:36:41.807 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:36:41.807 [lua]-[trace] Initializing 'sys' +2021-11-17 14:36:41.808 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:36:41.809 [lua]-[trace] Initializing 'gui' +2021-11-17 14:36:41.810 [lua]-[trace] Initializing 'util' +2021-11-17 14:36:41.810 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:36:41.811 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:36:41.812 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:36:41.812 [lua]-[trace] Initializing 'event' +2021-11-17 14:36:41.814 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:36:41.816 [lua]-[trace] Initializing 'registry' +2021-11-17 14:36:41.817 [lua]-[trace] Initializing 'version' +2021-11-17 14:36:41.818 [lua]-[trace] Initializing 'localization' +2021-11-17 14:36:41.818 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:36:41.819 [lua]-[trace] Initializing 'config' +2021-11-17 14:36:41.821 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:36:41.821 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:36:41.821 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:36:41.822 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:36:41.822 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:36:41.823 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:36:41.823 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:36:41.824 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:36:41.825 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:36:41.825 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:36:41.825 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:36:41.826 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:36:41.827 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:36:41.828 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:36:41.829 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:36:41.829 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:36:41.830 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:36:41.830 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:36:41.831 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:36:41.831 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:36:41.832 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:36:41.832 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:36:41.833 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:36:41.834 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:36:41.834 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:36:41.835 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:36:41.835 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:36:41.837 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:36:41.837 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:36:41.837 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:36:41.837 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:36:41.838 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:36:41.839 [lua]-[trace] Initializing 'utility' +2021-11-17 14:36:41.840 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:36:41.840 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:36:41.840 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:36:41.841 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:36:41.841 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:36:41.841 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:36:41.841 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:36:42. 30 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:36:42. 30 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:36:42. 31 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:36:42. 31 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:36:42. 37 [event]-[info ] Entering main program. +2021-11-17 14:36:42. 37 [event]-[debug] Command line: +2021-11-17 14:36:42. 39 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:36:42. 40 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:36:42. 40 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:36:42. 41 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:36:42. 41 [lua]-[trace] check_conflicting_ui +2021-11-17 14:36:42. 41 [lua]-[trace] check_conflicting_units +2021-11-17 14:36:42. 41 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:36:42. 41 [lua]-[trace] check_war3_version +2021-11-17 14:36:42. 44 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:36:42. 46 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:36:42. 62 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:36:42. 75 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:36:42. 76 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:36:42. 76 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:36:42. 77 [lua]-[warn ] failed: disable +2021-11-17 14:36:42. 77 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:36:42. 77 [lua]-[warn ] failed: disable +2021-11-17 14:36:42. 78 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:36:42. 78 [lua]-[warn ] failed: disable +2021-11-17 14:36:42. 78 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:36:42.121 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:36:42.124 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:36:42.126 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:36:42.126 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:36:42.127 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:36:42.127 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:36:42.128 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:36:42.128 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:36:42.128 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:36:42.128 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:36:42.128 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:36:42.128 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:36:42.128 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:36:42.128 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:36:42.128 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:36:42.129 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:36:42.129 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:36:42.129 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:36:42.129 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:36:42.129 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:36:42.129 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:36:42.129 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:36:42.129 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:36:42.129 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:36:42.129 [inject]-[debug] Patches initialization started. +2021-11-17 14:36:42.129 [inject]-[trace] Installing syntax check patch +2021-11-17 14:36:42.129 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:36:42.129 [inject]-[trace] Installing auto disable patch +2021-11-17 14:36:42.129 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:36:42.129 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:36:42.129 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:36:42.130 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:36:42.130 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:36:42.130 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:36:42.130 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:36:42.130 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:36:42.130 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:36:42.130 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:36:42.130 [inject]-[trace] Installing attack table patch +2021-11-17 14:36:42.130 [inject]-[debug] Patches initialization completed. +2021-11-17 14:36:42.130 [inject]-[info ] YDWE startup complete. +2021-11-17 14:36:42.130 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:36:42.131 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:36:42.131 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:36:42.131 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:36:42.145 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:36:42.147 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:36:42.149 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:36:42.149 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:36:42.149 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:36:42.150 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:36:42.150 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:36:42.160 [lua]-[trace] Scanned file: 99 +2021-11-17 14:36:42.161 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:36:42.672 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:36:42.697 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:36:42.843 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:36:42.945 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:36:42.947 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:36:42.948 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:36:42.949 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:36:42.950 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:36:44.639 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:36:44.639 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:37:13.764 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:37:13.766 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:37:13.766 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:37:13.766 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:37:13.766 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:37:13.766 [root]-[info ] Script engine startup complete. +2021-11-17 14:37:13.766 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:37:13.766 [lua]-[trace] Initializing 'sys' +2021-11-17 14:37:13.767 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:37:13.768 [lua]-[trace] Initializing 'gui' +2021-11-17 14:37:13.769 [lua]-[trace] Initializing 'util' +2021-11-17 14:37:13.769 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:37:13.770 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:37:13.771 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:37:13.772 [lua]-[trace] Initializing 'event' +2021-11-17 14:37:13.773 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:37:13.775 [lua]-[trace] Initializing 'registry' +2021-11-17 14:37:13.776 [lua]-[trace] Initializing 'version' +2021-11-17 14:37:13.776 [lua]-[trace] Initializing 'localization' +2021-11-17 14:37:13.776 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:37:13.777 [lua]-[trace] Initializing 'config' +2021-11-17 14:37:13.778 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:37:13.778 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:37:13.779 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:37:13.779 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:37:13.779 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:37:13.779 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:37:13.780 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:37:13.780 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:37:13.781 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:37:13.782 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:37:13.782 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:37:13.782 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:37:13.783 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:37:13.784 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:37:13.784 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:37:13.785 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:37:13.785 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:37:13.785 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:37:13.786 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:37:13.786 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:37:13.786 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:37:13.786 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:37:13.787 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:37:13.787 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:37:13.787 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:37:13.788 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:37:13.788 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:37:13.789 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:37:13.789 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:37:13.789 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:37:13.789 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:37:13.790 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:37:13.790 [lua]-[trace] Initializing 'utility' +2021-11-17 14:37:13.791 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:37:13.791 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:37:13.792 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:37:13.792 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:37:13.792 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:37:13.792 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:37:13.792 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:37:14. 17 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:37:14. 17 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:37:14. 18 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:37:14. 18 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:37:14. 24 [event]-[info ] Entering main program. +2021-11-17 14:37:14. 24 [event]-[debug] Command line: +2021-11-17 14:37:14. 27 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:37:14. 28 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:37:14. 28 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:37:14. 28 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:37:14. 28 [lua]-[trace] check_conflicting_ui +2021-11-17 14:37:14. 28 [lua]-[trace] check_conflicting_units +2021-11-17 14:37:14. 28 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:37:14. 29 [lua]-[trace] check_war3_version +2021-11-17 14:37:14. 32 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:37:14. 34 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:37:14. 51 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:37:14. 62 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:37:14. 63 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:37:14. 63 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:37:14. 63 [lua]-[warn ] failed: disable +2021-11-17 14:37:14. 64 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:37:14. 64 [lua]-[warn ] failed: disable +2021-11-17 14:37:14. 64 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:37:14. 65 [lua]-[warn ] failed: disable +2021-11-17 14:37:14. 65 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:37:14.104 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:37:14.106 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:37:14.108 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:37:14.108 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:37:14.109 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:37:14.109 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:37:14.109 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:37:14.109 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:37:14.109 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:37:14.110 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:37:14.110 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:37:14.110 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:37:14.110 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:37:14.110 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:37:14.110 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:37:14.110 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:37:14.110 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:37:14.110 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:37:14.110 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:37:14.110 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:37:14.110 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:37:14.110 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:37:14.110 [inject]-[debug] Patches initialization started. +2021-11-17 14:37:14.110 [inject]-[trace] Installing syntax check patch +2021-11-17 14:37:14.110 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:37:14.110 [inject]-[trace] Installing auto disable patch +2021-11-17 14:37:14.110 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:37:14.110 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:37:14.110 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:37:14.110 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:37:14.110 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:37:14.111 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:37:14.111 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:37:14.111 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:37:14.111 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:37:14.111 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:37:14.111 [inject]-[trace] Installing attack table patch +2021-11-17 14:37:14.111 [inject]-[debug] Patches initialization completed. +2021-11-17 14:37:14.111 [inject]-[info ] YDWE startup complete. +2021-11-17 14:37:14.111 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:37:14.112 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:37:14.112 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:37:14.112 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:37:14.123 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:37:14.125 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:37:14.126 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:37:14.127 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:37:14.127 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:37:14.127 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:37:14.127 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:37:14.134 [lua]-[trace] Scanned file: 99 +2021-11-17 14:37:14.135 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:37:14.604 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:37:14.623 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:37:14.752 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:37:14.850 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:37:14.852 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:37:14.852 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:37:14.853 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:37:14.854 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:37:16.433 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:37:16.434 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:37:33.234 [lua]-[info ] OpenPathAsArchive Melee_V1 +2021-11-17 14:37:33.234 [lua]-[info ] OpenPathAsArchive Melee_V1 +2021-11-17 14:37:33.234 [lua]-[info ] OpenPathAsArchive Melee_V1 +2021-11-17 14:37:33.463 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:37:33.494 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:37:33.623 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:38:29.377 [event]-[trace] WE is about to compile maps. +2021-11-17 14:38:29.414 [lua]-[debug] ********************* on save start ********************* +2021-11-17 14:38:29.415 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:38:29.415 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\dz\1231321测试.w3x +2021-11-17 14:38:29.415 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 14:38:29.415 [lua]-[trace] mpq_util.update_file. +2021-11-17 14:38:29.417 [lua]-[trace] war3map.j has been extracted from 1231321测试.w3x +2021-11-17 14:38:29.417 [lua]-[trace] Processing file.out +2021-11-17 14:38:29.418 [lua]-[trace] Writing code to file.out +2021-11-17 14:38:29.418 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 14:38:29.418 [lua]-[trace] Injection completed +2021-11-17 14:38:29.421 [lua]-[trace] Wave compilation start. +2021-11-17 14:38:29.440 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\dz" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 14:38:29.552 [lua]-[trace] Template compilation start. +2021-11-17 14:38:29.554 [lua]-[trace] Initializing 'computed.ability2order' +2021-11-17 14:38:29.554 [lua]-[trace] Initializing 'computed.order_list' +2021-11-17 14:38:29.555 [lua]-[trace] Initializing 'computed.order_id' +2021-11-17 14:38:29.556 [lua]-[debug] Template compilation succeeded. +2021-11-17 14:38:29.558 [lua]-[trace] JassHelper compilation start. +2021-11-17 14:38:31.142 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\dz\1231321测试.w3x", returned 0 +2021-11-17 14:38:31.142 [lua]-[debug] Result true +2021-11-17 14:38:31.142 [lua]-[debug] ********************* on save end ********************* +2021-11-17 14:38:45.739 [lua]-[debug] ********************* on exit start ********************* +2021-11-17 14:38:45.739 [lua]-[trace] Unload plugin Tesh. +2021-11-17 14:38:45.741 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-17 14:38:45.741 [lua]-[trace] Unload plugin YDClient. +2021-11-17 14:38:45.741 [lua]-[trace] Unload plugin YDTrigger. +2021-11-17 14:38:45.741 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-17 14:38:45.741 [inject]-[debug] IAT hook cleanup started. +2021-11-17 14:38:45.741 [inject]-[trace] WE IAT hook cleaned. +2021-11-17 14:38:45.741 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-17 14:38:45.742 [inject]-[debug] IAT hook cleanup completed. +2021-11-17 14:38:45.742 [inject]-[debug] Inline hook uninstallation begins! +2021-11-17 14:38:45.742 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-17 14:38:45.742 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-17 14:38:45.742 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-17 14:38:45.742 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-17 14:38:45.742 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-17 14:38:45.742 [inject]-[debug] Inline hook uninstallation finished! +2021-11-17 14:38:45.742 [lua]-[debug] ********************* on exit end ********************* +2021-11-17 14:38:45.742 [event]-[info ] Main program exit. +2021-11-17 14:40:44.243 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:40:44.245 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:40:44.245 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:40:44.245 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:40:44.245 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:40:44.245 [root]-[info ] Script engine startup complete. +2021-11-17 14:40:44.245 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:40:44.246 [lua]-[trace] Initializing 'sys' +2021-11-17 14:40:44.246 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:40:44.247 [lua]-[trace] Initializing 'gui' +2021-11-17 14:40:44.248 [lua]-[trace] Initializing 'util' +2021-11-17 14:40:44.248 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:40:44.249 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:40:44.249 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:40:44.250 [lua]-[trace] Initializing 'event' +2021-11-17 14:40:44.252 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:40:44.253 [lua]-[trace] Initializing 'registry' +2021-11-17 14:40:44.254 [lua]-[trace] Initializing 'version' +2021-11-17 14:40:44.255 [lua]-[trace] Initializing 'localization' +2021-11-17 14:40:44.255 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:40:44.256 [lua]-[trace] Initializing 'config' +2021-11-17 14:40:44.257 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:40:44.257 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:40:44.257 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:40:44.257 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:40:44.258 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:40:44.258 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:40:44.259 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:40:44.260 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:40:44.261 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:40:44.261 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:40:44.261 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:40:44.262 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:40:44.263 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:40:44.264 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:40:44.265 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:40:44.265 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:40:44.265 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:40:44.266 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:40:44.266 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:40:44.266 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:40:44.267 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:40:44.267 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:40:44.268 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:40:44.268 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:40:44.268 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:40:44.269 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:40:44.269 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:40:44.270 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:40:44.271 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:40:44.271 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:40:44.271 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:40:44.272 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:40:44.272 [lua]-[trace] Initializing 'utility' +2021-11-17 14:40:44.273 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:40:44.274 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:40:44.274 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:40:44.274 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:40:44.274 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:40:44.274 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:40:44.274 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:40:44.470 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:40:44.470 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:40:44.471 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:40:44.471 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:40:44.478 [event]-[info ] Entering main program. +2021-11-17 14:40:44.478 [event]-[debug] Command line: +2021-11-17 14:40:44.481 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:40:44.482 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:40:44.482 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:40:44.482 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:40:44.482 [lua]-[trace] check_conflicting_ui +2021-11-17 14:40:44.482 [lua]-[trace] check_conflicting_units +2021-11-17 14:40:44.483 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:40:44.483 [lua]-[trace] check_war3_version +2021-11-17 14:40:44.486 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:40:44.488 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:40:44.505 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:40:44.517 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:40:44.518 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:40:44.518 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:40:44.519 [lua]-[warn ] failed: disable +2021-11-17 14:40:44.519 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:40:44.520 [lua]-[warn ] failed: disable +2021-11-17 14:40:44.521 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:40:44.521 [lua]-[warn ] failed: disable +2021-11-17 14:40:44.521 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:40:44.559 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:40:44.561 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:40:44.563 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:40:44.564 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:40:44.566 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:40:44.566 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:40:44.566 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:40:44.566 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:40:44.566 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:40:44.566 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:40:44.566 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:40:44.566 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:40:44.566 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:40:44.567 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:40:44.567 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:40:44.567 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:40:44.567 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:40:44.567 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:40:44.567 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:40:44.567 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:40:44.567 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:40:44.567 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:40:44.568 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:40:44.568 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:40:44.568 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:40:44.568 [inject]-[debug] Patches initialization started. +2021-11-17 14:40:44.568 [inject]-[trace] Installing syntax check patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing auto disable patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:40:44.568 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:40:44.568 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:40:44.568 [inject]-[trace] Installing attack table patch +2021-11-17 14:40:44.568 [inject]-[debug] Patches initialization completed. +2021-11-17 14:40:44.568 [inject]-[info ] YDWE startup complete. +2021-11-17 14:40:44.568 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:40:44.570 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:40:44.570 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:40:44.570 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:40:44.587 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:40:44.589 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:40:44.591 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:40:44.592 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:40:44.592 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:40:44.592 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:40:44.592 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:40:44.600 [lua]-[trace] Scanned file: 99 +2021-11-17 14:40:44.600 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:40:45.114 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:40:45.137 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:40:45.271 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:40:45.367 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:40:45.368 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:40:45.369 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:40:45.370 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:40:45.370 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:40:46.997 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:40:46.998 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:42:49.573 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:42:49.575 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:42:49.575 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:42:49.575 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:42:49.576 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:42:49.576 [root]-[info ] Script engine startup complete. +2021-11-17 14:42:49.576 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:42:49.576 [lua]-[trace] Initializing 'sys' +2021-11-17 14:42:49.577 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:42:49.578 [lua]-[trace] Initializing 'gui' +2021-11-17 14:42:49.579 [lua]-[trace] Initializing 'util' +2021-11-17 14:42:49.579 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:42:49.580 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:42:49.581 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:42:49.581 [lua]-[trace] Initializing 'event' +2021-11-17 14:42:49.583 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:42:49.585 [lua]-[trace] Initializing 'registry' +2021-11-17 14:42:49.586 [lua]-[trace] Initializing 'version' +2021-11-17 14:42:49.586 [lua]-[trace] Initializing 'localization' +2021-11-17 14:42:49.586 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:42:49.587 [lua]-[trace] Initializing 'config' +2021-11-17 14:42:49.588 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:42:49.588 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:42:49.589 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:42:49.589 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:42:49.590 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:42:49.590 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:42:49.591 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:42:49.591 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:42:49.592 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:42:49.593 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:42:49.593 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:42:49.594 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:42:49.595 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:42:49.597 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:42:49.598 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:42:49.598 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:42:49.598 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:42:49.599 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:42:49.599 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:42:49.599 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:42:49.600 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:42:49.601 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:42:49.601 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:42:49.602 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:42:49.602 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:42:49.602 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:42:49.603 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:42:49.604 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:42:49.604 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:42:49.604 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:42:49.604 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:42:49.605 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:42:49.606 [lua]-[trace] Initializing 'utility' +2021-11-17 14:42:49.607 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:42:49.607 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:42:49.607 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:42:49.608 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:42:49.608 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:42:49.608 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:42:49.608 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:42:49.811 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:42:49.812 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:42:49.812 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:42:49.812 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:42:49.819 [event]-[info ] Entering main program. +2021-11-17 14:42:49.819 [event]-[debug] Command line: +2021-11-17 14:42:49.822 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:42:49.824 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:42:49.824 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:42:49.825 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:42:49.825 [lua]-[trace] check_conflicting_ui +2021-11-17 14:42:49.825 [lua]-[trace] check_conflicting_units +2021-11-17 14:42:49.825 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:42:49.825 [lua]-[trace] check_war3_version +2021-11-17 14:42:49.829 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:42:49.832 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:42:49.846 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:42:49.864 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:42:49.866 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:42:49.866 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:42:49.866 [lua]-[warn ] failed: disable +2021-11-17 14:42:49.867 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:42:49.867 [lua]-[warn ] failed: disable +2021-11-17 14:42:49.868 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:42:49.868 [lua]-[warn ] failed: disable +2021-11-17 14:42:49.868 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:42:49.914 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:42:49.918 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:42:49.921 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:42:49.921 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:42:49.922 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:42:49.923 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:42:49.923 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:42:49.923 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:42:49.923 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:42:49.923 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:42:49.923 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:42:49.923 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:42:49.923 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:42:49.923 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:42:49.923 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:42:49.923 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:42:49.923 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:42:49.923 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:42:49.923 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:42:49.924 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:42:49.924 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:42:49.924 [inject]-[debug] Patches initialization started. +2021-11-17 14:42:49.924 [inject]-[trace] Installing syntax check patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing auto disable patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:42:49.924 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:42:49.924 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:42:49.924 [inject]-[trace] Installing attack table patch +2021-11-17 14:42:49.924 [inject]-[debug] Patches initialization completed. +2021-11-17 14:42:49.924 [inject]-[info ] YDWE startup complete. +2021-11-17 14:42:49.924 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:42:49.926 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:42:49.926 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:42:49.926 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:42:49.950 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:42:49.954 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:42:49.957 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:42:49.958 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:42:49.958 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:42:49.959 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:42:49.959 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:42:49.969 [lua]-[trace] Scanned file: 99 +2021-11-17 14:42:49.969 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:42:50.486 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:42:50.506 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:42:50.752 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:42:50.854 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:42:50.855 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:42:50.856 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:42:50.857 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:42:50.858 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:42:52.886 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:42:52.886 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:46:07.865 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:46:07.868 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:46:07.868 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:46:07.868 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:46:07.868 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:46:07.868 [root]-[info ] Script engine startup complete. +2021-11-17 14:46:07.868 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:46:07.868 [lua]-[trace] Initializing 'sys' +2021-11-17 14:46:07.869 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:46:07.870 [lua]-[trace] Initializing 'gui' +2021-11-17 14:46:07.871 [lua]-[trace] Initializing 'util' +2021-11-17 14:46:07.872 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:46:07.872 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:46:07.872 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:46:07.874 [lua]-[trace] Initializing 'event' +2021-11-17 14:46:07.876 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:46:07.877 [lua]-[trace] Initializing 'registry' +2021-11-17 14:46:07.878 [lua]-[trace] Initializing 'version' +2021-11-17 14:46:07.878 [lua]-[trace] Initializing 'localization' +2021-11-17 14:46:07.879 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:46:07.880 [lua]-[trace] Initializing 'config' +2021-11-17 14:46:07.881 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:46:07.881 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:46:07.881 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:46:07.881 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:46:07.881 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:46:07.881 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:46:07.882 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:46:07.882 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:46:07.883 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:46:07.884 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:46:07.884 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:46:07.885 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:46:07.887 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:46:07.888 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:46:07.889 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:46:07.889 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:46:07.890 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:46:07.890 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:46:07.890 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:46:07.891 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:46:07.891 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:46:07.891 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:46:07.892 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:46:07.892 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:46:07.893 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:46:07.893 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:46:07.894 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:46:07.894 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:46:07.895 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:46:07.895 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:46:07.895 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:46:07.895 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:46:07.896 [lua]-[trace] Initializing 'utility' +2021-11-17 14:46:07.896 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:46:07.897 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:46:07.897 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:46:07.898 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:46:07.898 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:46:07.898 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:46:07.898 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:46:08. 82 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:46:08. 82 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:46:08. 82 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:46:08. 82 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:46:08. 89 [event]-[info ] Entering main program. +2021-11-17 14:46:08. 89 [event]-[debug] Command line: +2021-11-17 14:46:08. 91 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:46:08. 92 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:46:08. 92 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:46:08. 93 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:46:08. 93 [lua]-[trace] check_conflicting_ui +2021-11-17 14:46:08. 93 [lua]-[trace] check_conflicting_units +2021-11-17 14:46:08. 93 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:46:08. 93 [lua]-[trace] check_war3_version +2021-11-17 14:46:08. 97 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:46:08.100 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:46:08.116 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:46:08.138 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:46:08.140 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:46:08.140 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:46:08.141 [lua]-[warn ] failed: disable +2021-11-17 14:46:08.141 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:46:08.142 [lua]-[warn ] failed: disable +2021-11-17 14:46:08.142 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:46:08.143 [lua]-[warn ] failed: disable +2021-11-17 14:46:08.143 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:46:08.193 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:46:08.198 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:46:08.200 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:46:08.200 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:46:08.203 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:46:08.203 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:46:08.203 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:46:08.203 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:46:08.203 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:46:08.203 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:46:08.203 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:46:08.203 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:46:08.204 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:46:08.204 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:46:08.204 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:46:08.204 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:46:08.204 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:46:08.204 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:46:08.204 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:46:08.204 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:46:08.204 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:46:08.204 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:46:08.204 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:46:08.204 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:46:08.204 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:46:08.204 [inject]-[debug] Patches initialization started. +2021-11-17 14:46:08.204 [inject]-[trace] Installing syntax check patch +2021-11-17 14:46:08.204 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:46:08.204 [inject]-[trace] Installing auto disable patch +2021-11-17 14:46:08.204 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:46:08.204 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:46:08.204 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:46:08.204 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:46:08.204 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:46:08.204 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:46:08.204 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:46:08.204 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:46:08.205 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:46:08.205 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:46:08.205 [inject]-[trace] Installing attack table patch +2021-11-17 14:46:08.205 [inject]-[debug] Patches initialization completed. +2021-11-17 14:46:08.205 [inject]-[info ] YDWE startup complete. +2021-11-17 14:46:08.205 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:46:08.206 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:46:08.206 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:46:08.206 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:46:08.226 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:46:08.228 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:46:08.230 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:46:08.230 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:46:08.231 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:46:08.231 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:46:08.231 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:46:08.241 [lua]-[trace] Scanned file: 99 +2021-11-17 14:46:08.241 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:46:08.824 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:46:08.846 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:46:09. 81 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:46:09.233 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:46:09.236 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:46:09.237 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:46:09.238 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:46:09.239 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:46:11.173 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:46:11.174 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:47:08.142 [root]-[info ] ------------------------------------------------------ +2021-11-17 14:47:08.144 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2021-11-17 14:47:08.144 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2021-11-17 14:47:08.144 [root]-[info ] Windows version: 10.0.18362 +2021-11-17 14:47:08.144 [root]-[debug] Initialize script engine successfully. +2021-11-17 14:47:08.144 [root]-[info ] Script engine startup complete. +2021-11-17 14:47:08.145 [lua]-[debug] ********************* ydwe initialize start ********************* +2021-11-17 14:47:08.145 [lua]-[trace] Initializing 'sys' +2021-11-17 14:47:08.146 [lua]-[trace] Initializing 'filesystem' +2021-11-17 14:47:08.146 [lua]-[trace] Initializing 'gui' +2021-11-17 14:47:08.147 [lua]-[trace] Initializing 'util' +2021-11-17 14:47:08.148 [lua]-[trace] Initializing 'ffi.unicode' +2021-11-17 14:47:08.149 [lua]-[trace] Initializing 'ffi' +2021-11-17 14:47:08.150 [lua]-[debug] ydwe path F:\WorldEdit v1.2.9C +2021-11-17 14:47:08.151 [lua]-[trace] Initializing 'event' +2021-11-17 14:47:08.153 [lua]-[trace] Initializing 'virtual_mpq' +2021-11-17 14:47:08.155 [lua]-[trace] Initializing 'registry' +2021-11-17 14:47:08.156 [lua]-[trace] Initializing 'version' +2021-11-17 14:47:08.156 [lua]-[trace] Initializing 'localization' +2021-11-17 14:47:08.156 [lua]-[trace] Initializing 'i18n' +2021-11-17 14:47:08.157 [lua]-[trace] Initializing 'config' +2021-11-17 14:47:08.158 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:47:08.158 [lua]-[trace] Initializing 'plugin' +2021-11-17 14:47:08.159 [lua]-[trace] Initializing 'uiloader' +2021-11-17 14:47:08.159 [lua]-[trace] Initializing 'stringify_slk' +2021-11-17 14:47:08.160 [lua]-[trace] Initializing 'ui-builder.init' +2021-11-17 14:47:08.160 [lua]-[trace] Initializing 'ui-builder.old-reader' +2021-11-17 14:47:08.161 [lua]-[trace] Initializing 'ui-builder.new-reader' +2021-11-17 14:47:08.161 [lua]-[trace] Initializing 'lni-c' +2021-11-17 14:47:08.162 [lua]-[trace] Initializing 'ui-builder.old-writer' +2021-11-17 14:47:08.163 [lua]-[trace] Initializing 'ui-builder.new-writer' +2021-11-17 14:47:08.163 [lua]-[trace] Initializing 'ui-builder.merge' +2021-11-17 14:47:08.164 [lua]-[trace] Initializing 'w3xparser' +2021-11-17 14:47:08.166 [lua]-[trace] Initializing 'check_object' +2021-11-17 14:47:08.167 [lua]-[trace] Initializing 'ffi.storm' +2021-11-17 14:47:08.168 [lua]-[trace] Initializing 'ffi.loadlibrary' +2021-11-17 14:47:08.168 [lua]-[trace] Initializing 'ffi.gui' +2021-11-17 14:47:08.168 [event]-[trace] RegisterEvent id: 7 +2021-11-17 14:47:08.169 [lua]-[trace] Initializing 'ydwe_on_menu' +2021-11-17 14:47:08.169 [event]-[trace] RegisterEvent id: 5 +2021-11-17 14:47:08.169 [lua]-[trace] Initializing 'ydwe_on_save' +2021-11-17 14:47:08.170 [lua]-[trace] Initializing 'compile.inject_code' +2021-11-17 14:47:08.171 [lua]-[trace] Initializing 'compile.wave' +2021-11-17 14:47:08.171 [lua]-[trace] Initializing 'compile.template' +2021-11-17 14:47:08.172 [lua]-[trace] Initializing 'compile.cjass' +2021-11-17 14:47:08.173 [lua]-[trace] Initializing 'compile.jasshelper' +2021-11-17 14:47:08.173 [lua]-[trace] Initializing 'mpq_util' +2021-11-17 14:47:08.174 [lua]-[trace] Initializing 'ffi.stormlib' +2021-11-17 14:47:08.175 [lua]-[trace] Initializing 'compile.native' +2021-11-17 14:47:08.176 [event]-[trace] RegisterEvent id: 3 +2021-11-17 14:47:08.176 [event]-[trace] RegisterEvent id: 2 +2021-11-17 14:47:08.176 [lua]-[trace] Initializing 'ydwe_on_test' +2021-11-17 14:47:08.177 [lua]-[trace] Initializing 'w3x2lni' +2021-11-17 14:47:08.178 [lua]-[trace] Initializing 'utility' +2021-11-17 14:47:08.178 [lua]-[trace] Initializing 'mapdump' +2021-11-17 14:47:08.179 [event]-[trace] RegisterEvent id: 4 +2021-11-17 14:47:08.179 [lua]-[trace] Initializing 'ydwe_on_startup' +2021-11-17 14:47:08.180 [event]-[trace] RegisterEvent id: 0 +2021-11-17 14:47:08.180 [event]-[trace] RegisterEvent id: 1 +2021-11-17 14:47:08.180 [event]-[trace] RegisterEvent id: 6 +2021-11-17 14:47:08.180 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2021-11-17 14:47:08.391 [event]-[trace] RegisterEvent id: 8 +2021-11-17 14:47:08.392 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2021-11-17 14:47:08.392 [event]-[trace] RegisterEvent id: 9 +2021-11-17 14:47:08.392 [lua]-[debug] ********************* ydwe initialize end ********************* +2021-11-17 14:47:08.398 [event]-[info ] Entering main program. +2021-11-17 14:47:08.398 [event]-[debug] Command line: +2021-11-17 14:47:08.402 [lua]-[debug] ********************* on startup start ********************* +2021-11-17 14:47:08.403 [lua]-[debug] ydwe version 0.0.0.0 +2021-11-17 14:47:08.403 [lua]-[debug] war3 version 1.27.0.52240 +2021-11-17 14:47:08.404 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:47:08.404 [lua]-[trace] check_conflicting_ui +2021-11-17 14:47:08.404 [lua]-[trace] check_conflicting_units +2021-11-17 14:47:08.404 [lua]-[trace] clear_potential_conflicting +2021-11-17 14:47:08.404 [lua]-[trace] check_war3_version +2021-11-17 14:47:08.408 [lua]-[error] Cannot find war3.mpq +2021-11-17 14:47:08.411 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\tesh\Tesh.plcfg +2021-11-17 14:47:08.427 [lua]-[debug] Tesh loaded successfully. +2021-11-17 14:47:08.448 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDClient.plcfg +2021-11-17 14:47:08.449 [lua]-[debug] YDClient loaded successfully. +2021-11-17 14:47:08.449 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDColorizer\YDColorizer.plcfg +2021-11-17 14:47:08.449 [lua]-[warn ] failed: disable +2021-11-17 14:47:08.450 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDFont\YDFont.plcfg +2021-11-17 14:47:08.450 [lua]-[warn ] failed: disable +2021-11-17 14:47:08.451 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDInternalIdShow.plcfg +2021-11-17 14:47:08.452 [lua]-[warn ] failed: disable +2021-11-17 14:47:08.452 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTaskbarSupport.plcfg +2021-11-17 14:47:08.495 [lua]-[debug] YDTaskbarSupport loaded successfully. +2021-11-17 14:47:08.499 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDTrigger.plcfg +2021-11-17 14:47:08.501 [lua]-[debug] YDTrigger loaded successfully. +2021-11-17 14:47:08.501 [lua]-[trace] Load plugin config F:\WorldEdit v1.2.9C\plugin\YDWeHelper.plcfg +2021-11-17 14:47:08.502 [inject]-[debug] Start installing inline hooks. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2021-11-17 14:47:08.503 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2021-11-17 14:47:08.503 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2021-11-17 14:47:08.503 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2021-11-17 14:47:08.503 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2021-11-17 14:47:08.503 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2021-11-17 14:47:08.503 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2021-11-17 14:47:08.503 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2021-11-17 14:47:08.503 [inject]-[trace] WeStringCompare hook installation succeeded. +2021-11-17 14:47:08.503 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2021-11-17 14:47:08.503 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2021-11-17 14:47:08.504 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2021-11-17 14:47:08.504 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2021-11-17 14:47:08.504 [inject]-[debug] Installing inline hooks complete. +2021-11-17 14:47:08.504 [inject]-[debug] IAT hook initialization started. +2021-11-17 14:47:08.504 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2021-11-17 14:47:08.504 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2021-11-17 14:47:08.504 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2021-11-17 14:47:08.504 [inject]-[debug] IAT hook initialization completed. +2021-11-17 14:47:08.504 [inject]-[debug] Patches initialization started. +2021-11-17 14:47:08.504 [inject]-[trace] Installing syntax check patch +2021-11-17 14:47:08.504 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2021-11-17 14:47:08.504 [inject]-[trace] Installing auto disable patch +2021-11-17 14:47:08.504 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2021-11-17 14:47:08.504 [inject]-[trace] Installing enable trigger check patch +2021-11-17 14:47:08.504 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2021-11-17 14:47:08.504 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2021-11-17 14:47:08.504 [inject]-[trace] Installing doodad limit patch +2021-11-17 14:47:08.504 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2021-11-17 14:47:08.505 [inject]-[trace] Installing unit/item limit patch +2021-11-17 14:47:08.505 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2021-11-17 14:47:08.505 [inject]-[trace] Installing editor multi-instance patch +2021-11-17 14:47:08.505 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2021-11-17 14:47:08.505 [inject]-[trace] Installing attack table patch +2021-11-17 14:47:08.505 [inject]-[debug] Patches initialization completed. +2021-11-17 14:47:08.505 [inject]-[info ] YDWE startup complete. +2021-11-17 14:47:08.505 [lua]-[debug] YDWeHelper loaded successfully. +2021-11-17 14:47:08.507 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass +2021-11-17 14:47:08.507 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak +2021-11-17 14:47:08.507 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail +2021-11-17 14:47:08.534 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Base +2021-11-17 14:47:08.537 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\japi +2021-11-17 14:47:08.541 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\PreloadSL +2021-11-17 14:47:08.541 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system +2021-11-17 14:47:08.541 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\ht +2021-11-17 14:47:08.542 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\system\rb +2021-11-17 14:47:08.542 [lua]-[trace] Scanning for inject files in F:\WorldEdit v1.2.9C\jass\Util +2021-11-17 14:47:08.555 [lua]-[trace] Scanned file: 99 +2021-11-17 14:47:08.555 [lua]-[debug] ********************* on startup end ********************* +2021-11-17 14:47:09.203 [lua]-[trace] virtual_mpq 'worldeditstrings' +2021-11-17 14:47:09.244 [lua]-[trace] virtual_mpq 'triggerdata' +2021-11-17 14:47:09.518 [lua]-[trace] virtual_mpq 'triggerstrings' +2021-11-17 14:47:09.665 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mp3dec.asi +2021-11-17 14:47:09.668 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssdolby.m3d +2021-11-17 14:47:09.669 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Msseax2.m3d +2021-11-17 14:47:09.670 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Mssfast.m3d +2021-11-17 14:47:09.671 [lua]-[debug] Loading provider e:\warcraft iii frozen throne\redist\miles\Reverb3.flt +2021-11-17 14:47:11.790 [lua]-[debug] ********************* on menuinit start ********************* +2021-11-17 14:47:11.791 [lua]-[debug] ********************* on menuinit end ********************* +2021-11-17 14:54:27.524 [event]-[trace] WE is about to compile maps. +2021-11-17 14:54:29.141 [lua]-[debug] ********************* on save start ********************* +2021-11-17 14:54:29.142 [lua]-[debug] war3 path e:\warcraft iii frozen throne +2021-11-17 14:54:29.142 [lua]-[trace] Saving E:\Warcraft III Frozen Throne\Maps\人族无敌更新\人族2.6.0_D4.w3x +2021-11-17 14:54:29.142 [lua]-[trace] Save version 1.27.0.52240 +2021-11-17 14:54:29.142 [lua]-[trace] mpq_util.update_file. +2021-11-17 14:54:29.152 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_D4.w3x +2021-11-17 14:54:29.152 [lua]-[trace] Processing file.out +2021-11-17 14:54:29.279 [lua]-[trace] Writing code to file.out +2021-11-17 14:54:29.279 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersMatching.j +2021-11-17 14:54:29.283 [lua]-[trace] Injection completed +2021-11-17 14:54:29.283 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2021-11-17 14:54:29.283 [lua]-[trace] Injection completed +2021-11-17 14:54:29.283 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\DzAPI.j +2021-11-17 14:54:29.284 [lua]-[trace] Injection completed +2021-11-17 14:54:29.284 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2021-11-17 14:54:29.285 [lua]-[trace] Injection completed +2021-11-17 14:54:29.285 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2021-11-17 14:54:29.285 [lua]-[trace] Injection completed +2021-11-17 14:54:29.285 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2021-11-17 14:54:29.286 [lua]-[trace] Injection completed +2021-11-17 14:54:29.286 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2021-11-17 14:54:29.286 [lua]-[trace] Injection completed +2021-11-17 14:54:29.286 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersAllies.j +2021-11-17 14:54:29.286 [lua]-[trace] Injection completed +2021-11-17 14:54:29.286 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2021-11-17 14:54:29.287 [lua]-[trace] Injection completed +2021-11-17 14:54:29.287 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2021-11-17 14:54:29.287 [lua]-[trace] Injection completed +2021-11-17 14:54:29.287 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2021-11-17 14:54:29.287 [lua]-[trace] Injection completed +2021-11-17 14:54:29.287 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\DelayedSuspendDecay.j +2021-11-17 14:54:29.287 [lua]-[trace] Injection completed +2021-11-17 14:54:29.287 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2021-11-17 14:54:29.287 [lua]-[trace] Injection completed +2021-11-17 14:54:29.287 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\japi\YDWEAbilityState.j +2021-11-17 14:54:29.288 [lua]-[trace] Injection completed +2021-11-17 14:54:29.288 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\BlizzardAPI.j +2021-11-17 14:54:29.288 [lua]-[trace] Injection completed +2021-11-17 14:54:29.288 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2021-11-17 14:54:29.289 [lua]-[trace] Injection completed +2021-11-17 14:54:29.289 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2021-11-17 14:54:29.289 [lua]-[trace] Injection completed +2021-11-17 14:54:29.289 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2021-11-17 14:54:29.289 [lua]-[trace] Injection completed +2021-11-17 14:54:29.289 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2021-11-17 14:54:29.290 [lua]-[trace] Injection completed +2021-11-17 14:54:29.290 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2021-11-17 14:54:29.290 [lua]-[trace] Injection completed +2021-11-17 14:54:29.290 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2021-11-17 14:54:29.291 [lua]-[trace] Injection completed +2021-11-17 14:54:29.291 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\japi\YDWEJapiScript.j +2021-11-17 14:54:29.291 [lua]-[trace] Injection completed +2021-11-17 14:54:29.291 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2021-11-17 14:54:29.291 [lua]-[trace] Injection completed +2021-11-17 14:54:29.291 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\japi\YDWEJapiUnit.j +2021-11-17 14:54:29.291 [lua]-[trace] Injection completed +2021-11-17 14:54:29.291 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2021-11-17 14:54:29.291 [lua]-[trace] Injection completed +2021-11-17 14:54:29.291 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2021-11-17 14:54:29.292 [lua]-[trace] Injection completed +2021-11-17 14:54:29.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\InitRescuableBehaviorBJ.j +2021-11-17 14:54:29.292 [lua]-[trace] Injection completed +2021-11-17 14:54:29.292 [lua]-[trace] Injecting F:\WorldEdit v1.2.9C\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2021-11-17 14:54:29.293 [lua]-[trace] Injection completed +2021-11-17 14:54:29.293 [lua]-[trace] Wave compilation start. +2021-11-17 14:54:29.308 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\WorldEdit v1.2.9C\plugin\wave\include" --sysinclude="F:\WorldEdit v1.2.9C\plugin" --include="E:\Warcraft III Frozen Throne\Maps\人族无敌更新" --include="F:\WorldEdit v1.2.9C\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\WorldEdit v1.2.9C\logs\file.out". +2021-11-17 14:54:30.752 [lua]-[trace] Template compilation start. +2021-11-17 14:54:30.860 [lua]-[debug] Template compilation succeeded. +2021-11-17 14:54:30.900 [lua]-[trace] JassHelper compilation start. +2021-11-17 14:54:33.297 [lua]-[debug] ********************* on exit start ********************* +2021-11-17 14:54:33.297 [lua]-[trace] Unload plugin YDClient. +2021-11-17 14:54:33.297 [lua]-[trace] Unload plugin YDTrigger. +2021-11-17 14:54:33.297 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-17 14:54:33.297 [lua]-[trace] Unload plugin Tesh. +2021-11-17 14:54:33.300 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-17 14:54:33.300 [inject]-[debug] IAT hook cleanup started. +2021-11-17 14:54:33.300 [inject]-[trace] WE IAT hook cleaned. +2021-11-17 14:54:33.300 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-17 14:54:33.300 [inject]-[debug] IAT hook cleanup completed. +2021-11-17 14:54:33.300 [inject]-[debug] Inline hook uninstallation begins! +2021-11-17 14:54:33.300 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-17 14:54:33.301 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-17 14:54:33.301 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-17 14:54:33.301 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-17 14:54:33.301 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-17 14:54:33.301 [inject]-[debug] Inline hook uninstallation finished! +2021-11-17 14:54:33.301 [lua]-[debug] ********************* on exit end ********************* +2021-11-17 14:54:33.301 [event]-[info ] Main program exit. +2021-11-17 14:54:33.550 [root]-[info ] Script engine has been shut down. +2021-11-17 14:54:34.242 [lua]-[trace] Executed "F:\WorldEdit v1.2.9C\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\WorldEdit v1.2.9C\plugin\jasshelper\common.j" "F:\WorldEdit v1.2.9C\plugin\jasshelper\blizzard.j" "E:\Warcraft III Frozen Throne\Maps\人族无敌更新\人族2.6.0_D4.w3x", returned 0 +2021-11-17 14:54:34.242 [lua]-[debug] Result true +2021-11-17 14:54:34.242 [lua]-[debug] ********************* on save end ********************* +2021-11-17 14:54:34.823 [lua]-[debug] ********************* on exit start ********************* +2021-11-17 14:54:34.823 [lua]-[trace] Unload plugin YDTaskbarSupport. +2021-11-17 14:54:34.823 [lua]-[trace] Unload plugin YDWeHelper. +2021-11-17 14:54:34.823 [inject]-[debug] IAT hook cleanup started. +2021-11-17 14:54:34.823 [inject]-[trace] WE IAT hook cleaned. +2021-11-17 14:54:34.823 [inject]-[trace] Storm.dll IAT hook cleaned. +2021-11-17 14:54:34.823 [inject]-[debug] IAT hook cleanup completed. +2021-11-17 14:54:34.823 [inject]-[debug] Inline hook uninstallation begins! +2021-11-17 14:54:34.823 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2021-11-17 14:54:34.823 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2021-11-17 14:54:34.823 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2021-11-17 14:54:34.823 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2021-11-17 14:54:34.823 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2021-11-17 14:54:34.823 [inject]-[debug] Inline hook uninstallation finished! +2021-11-17 14:54:34.823 [lua]-[trace] Unload plugin YDTrigger. +2021-11-17 14:54:34.824 [lua]-[trace] Unload plugin Tesh. +2021-11-17 14:54:34.827 [lua]-[trace] Unload plugin YDClient. +2021-11-17 14:54:34.828 [lua]-[debug] ********************* on exit end ********************* +2021-11-17 14:54:34.828 [event]-[info ] Main program exit. +2021-11-17 14:54:35.619 [root]-[info ] Script engine has been shut down. +2022-03-16 01:22:38.601 [root]-[info ] ------------------------------------------------------ +2022-03-16 01:22:38.606 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 01:22:38.606 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 01:22:38.606 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 01:22:38.606 [root]-[debug] Initialize script engine successfully. +2022-03-16 01:22:38.606 [root]-[info ] Script engine startup complete. +2022-03-16 01:22:38.607 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 01:22:38.607 [lua]-[trace] Initializing 'sys' +2022-03-16 01:22:38.609 [lua]-[trace] Initializing 'filesystem' +2022-03-16 01:22:38.611 [lua]-[trace] Initializing 'gui' +2022-03-16 01:22:38.614 [lua]-[trace] Initializing 'util' +2022-03-16 01:22:38.615 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 01:22:38.615 [lua]-[trace] Initializing 'ffi' +2022-03-16 01:22:38.617 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 01:22:38.618 [lua]-[trace] Initializing 'event' +2022-03-16 01:22:38.622 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 01:22:38.627 [lua]-[trace] Initializing 'registry' +2022-03-16 01:22:38.629 [lua]-[trace] Initializing 'version' +2022-03-16 01:22:38.629 [lua]-[trace] Initializing 'localization' +2022-03-16 01:22:38.630 [lua]-[trace] Initializing 'i18n' +2022-03-16 01:22:38.634 [lua]-[trace] Initializing 'config' +2022-03-16 01:22:38.635 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:22:38.635 [lua]-[trace] Initializing 'plugin' +2022-03-16 01:22:38.635 [lua]-[trace] Initializing 'uiloader' +2022-03-16 01:22:38.637 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 01:22:38.637 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 01:22:38.637 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 01:22:38.638 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 01:22:38.638 [lua]-[trace] Initializing 'lni-c' +2022-03-16 01:22:38.640 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 01:22:38.640 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 01:22:38.640 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 01:22:38.641 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 01:22:38.642 [lua]-[trace] Initializing 'check_object' +2022-03-16 01:22:38.643 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 01:22:38.643 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 01:22:38.644 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 01:22:38.644 [event]-[trace] RegisterEvent id: 7 +2022-03-16 01:22:38.644 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 01:22:38.645 [event]-[trace] RegisterEvent id: 5 +2022-03-16 01:22:38.645 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 01:22:38.645 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 01:22:38.646 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 01:22:38.646 [lua]-[trace] Initializing 'compile.template' +2022-03-16 01:22:38.647 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 01:22:38.647 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 01:22:38.647 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 01:22:38.648 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 01:22:38.648 [lua]-[trace] Initializing 'compile.native' +2022-03-16 01:22:38.649 [event]-[trace] RegisterEvent id: 3 +2022-03-16 01:22:38.649 [event]-[trace] RegisterEvent id: 2 +2022-03-16 01:22:38.649 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 01:22:38.649 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 01:22:38.650 [lua]-[trace] Initializing 'utility' +2022-03-16 01:22:38.650 [lua]-[trace] Initializing 'mapdump' +2022-03-16 01:22:38.650 [event]-[trace] RegisterEvent id: 4 +2022-03-16 01:22:38.650 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 01:22:38.651 [event]-[trace] RegisterEvent id: 0 +2022-03-16 01:22:38.651 [event]-[trace] RegisterEvent id: 1 +2022-03-16 01:22:38.651 [event]-[trace] RegisterEvent id: 6 +2022-03-16 01:22:38.651 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 01:22:38.809 [event]-[trace] RegisterEvent id: 8 +2022-03-16 01:22:38.809 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 01:22:38.809 [event]-[trace] RegisterEvent id: 9 +2022-03-16 01:22:38.809 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 01:22:39.176 [event]-[info ] Entering main program. +2022-03-16 01:22:39.176 [event]-[debug] Command line: +2022-03-16 01:22:39.178 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 01:22:39.180 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 01:22:39.180 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 01:22:39.180 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:22:39.180 [lua]-[trace] check_conflicting_ui +2022-03-16 01:22:39.180 [lua]-[trace] check_conflicting_units +2022-03-16 01:22:39.181 [lua]-[trace] clear_potential_conflicting +2022-03-16 01:22:39.181 [lua]-[trace] check_war3_version +2022-03-16 01:22:39.184 [lua]-[error] Cannot find war3.mpq +2022-03-16 01:22:39.188 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 01:22:39.217 [lua]-[debug] Tesh loaded successfully. +2022-03-16 01:22:39.240 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 01:22:39.242 [lua]-[debug] YDClient loaded successfully. +2022-03-16 01:22:39.243 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 01:22:39.243 [lua]-[warn ] failed: disable +2022-03-16 01:22:39.244 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 01:22:39.244 [lua]-[warn ] failed: disable +2022-03-16 01:22:39.245 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 01:22:39.245 [lua]-[warn ] failed: disable +2022-03-16 01:22:39.245 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 01:22:39.319 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 01:22:39.323 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 01:22:39.325 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 01:22:39.325 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 01:22:39.328 [inject]-[debug] Start installing inline hooks. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 01:22:39.329 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 01:22:39.329 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 01:22:39.329 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 01:22:39.329 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 01:22:39.329 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 01:22:39.329 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 01:22:39.329 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 01:22:39.329 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 01:22:39.329 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 01:22:39.329 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 01:22:39.329 [inject]-[debug] Installing inline hooks complete. +2022-03-16 01:22:39.329 [inject]-[debug] IAT hook initialization started. +2022-03-16 01:22:39.329 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 01:22:39.329 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 01:22:39.329 [inject]-[debug] IAT hook initialization completed. +2022-03-16 01:22:39.329 [inject]-[debug] Patches initialization started. +2022-03-16 01:22:39.329 [inject]-[trace] Installing syntax check patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing auto disable patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing enable trigger check patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 01:22:39.329 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing doodad limit patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing unit/item limit patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 01:22:39.329 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 01:22:39.329 [inject]-[trace] Installing attack table patch +2022-03-16 01:22:39.329 [inject]-[debug] Patches initialization completed. +2022-03-16 01:22:39.329 [inject]-[info ] YDWE startup complete. +2022-03-16 01:22:39.329 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 01:22:39.330 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 01:22:39.330 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 01:22:39.330 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 01:22:39.346 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 01:22:39.348 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 01:22:39.350 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 01:22:39.350 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 01:22:39.351 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 01:22:39.351 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 01:22:39.351 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 01:22:39.359 [lua]-[trace] Scanned file: 99 +2022-03-16 01:22:39.360 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 01:22:39.924 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 01:22:39.947 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 01:22:40. 73 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 01:22:40.170 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 01:22:40.172 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 01:22:40.172 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 01:22:40.173 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 01:22:40.174 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 01:22:42.370 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 01:22:42.370 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 01:23:01.404 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 01:23:01.404 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 01:23:01.404 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 01:23:01.612 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 01:23:01.631 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 01:23:01.747 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 01:23:23.919 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 01:23:23.919 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 01:23:23.919 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 01:23:24.132 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 01:23:24.153 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 01:23:24.278 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 01:24:24.641 [event]-[trace] WE is about to compile maps. +2022-03-16 01:24:27.115 [lua]-[debug] ********************* on save start ********************* +2022-03-16 01:24:27.115 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:24:27.115 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 01:24:27.115 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 01:24:27.115 [lua]-[trace] mpq_util.update_file. +2022-03-16 01:24:27.121 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 01:24:27.121 [lua]-[trace] Processing file.out +2022-03-16 01:24:27.225 [lua]-[trace] Writing code to file.out +2022-03-16 01:24:27.226 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 01:24:27.226 [lua]-[trace] Injection completed +2022-03-16 01:24:27.226 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 01:24:27.226 [lua]-[trace] Injection completed +2022-03-16 01:24:27.226 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 01:24:27.226 [lua]-[trace] Injection completed +2022-03-16 01:24:27.226 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 01:24:27.227 [lua]-[trace] Injection completed +2022-03-16 01:24:27.227 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 01:24:27.227 [lua]-[trace] Injection completed +2022-03-16 01:24:27.227 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 01:24:27.227 [lua]-[trace] Injection completed +2022-03-16 01:24:27.227 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 01:24:27.227 [lua]-[trace] Injection completed +2022-03-16 01:24:27.227 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 01:24:27.227 [lua]-[trace] Injection completed +2022-03-16 01:24:27.227 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 01:24:27.228 [lua]-[trace] Injection completed +2022-03-16 01:24:27.228 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 01:24:27.229 [lua]-[trace] Injection completed +2022-03-16 01:24:27.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 01:24:27.229 [lua]-[trace] Injection completed +2022-03-16 01:24:27.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 01:24:27.229 [lua]-[trace] Injection completed +2022-03-16 01:24:27.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 01:24:27.229 [lua]-[trace] Injection completed +2022-03-16 01:24:27.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 01:24:27.229 [lua]-[trace] Injection completed +2022-03-16 01:24:27.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 01:24:27.230 [lua]-[trace] Injection completed +2022-03-16 01:24:27.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 01:24:27.230 [lua]-[trace] Injection completed +2022-03-16 01:24:27.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 01:24:27.230 [lua]-[trace] Injection completed +2022-03-16 01:24:27.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 01:24:27.230 [lua]-[trace] Injection completed +2022-03-16 01:24:27.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 01:24:27.230 [lua]-[trace] Injection completed +2022-03-16 01:24:27.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 01:24:27.231 [lua]-[trace] Injection completed +2022-03-16 01:24:27.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 01:24:27.231 [lua]-[trace] Injection completed +2022-03-16 01:24:27.231 [lua]-[trace] Wave compilation start. +2022-03-16 01:24:27.800 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 01:24:29.288 [lua]-[trace] Template compilation start. +2022-03-16 01:24:29.349 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 01:24:29.350 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 01:24:29.350 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 01:24:29.360 [lua]-[trace] Initializing 'slk' +2022-03-16 01:24:29.472 [lua]-[trace] Initializing 'archive' +2022-03-16 01:24:29.472 [lua]-[trace] Initializing 'archive_mpq' +2022-03-16 01:24:29.473 [lua]-[trace] Initializing 'archive_dir' +2022-03-16 01:24:29.473 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-16 01:24:29.473 [lua]-[trace] Initializing 'progress' +2022-03-16 01:24:29.474 [lua]-[trace] Initializing 'slk.frontend' +2022-03-16 01:24:29.474 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-16 01:24:29.475 [lua]-[trace] Initializing 'lpeg' +2022-03-16 01:24:29.507 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-16 01:24:29.717 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-16 01:24:29.741 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-16 01:24:29.937 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-16 01:24:29.944 [lua]-[debug] Template compilation succeeded. +2022-03-16 01:24:29.969 [lua]-[trace] JassHelper compilation start. +2022-03-16 01:24:33.790 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 01:24:33.791 [lua]-[debug] Result true +2022-03-16 01:24:33.791 [lua]-[debug] ********************* on save end ********************* +2022-03-16 01:40:21. 99 [event]-[trace] WE is about to compile maps. +2022-03-16 01:40:23.501 [lua]-[debug] ********************* on save start ********************* +2022-03-16 01:40:23.501 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:40:23.501 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 01:40:23.501 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 01:40:23.501 [lua]-[trace] mpq_util.update_file. +2022-03-16 01:40:23.503 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 01:40:23.503 [lua]-[trace] Processing file.out +2022-03-16 01:40:23.519 [lua]-[trace] Writing code to file.out +2022-03-16 01:40:23.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 01:40:23.519 [lua]-[trace] Injection completed +2022-03-16 01:40:23.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 01:40:23.520 [lua]-[trace] Injection completed +2022-03-16 01:40:23.520 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 01:40:23.520 [lua]-[trace] Injection completed +2022-03-16 01:40:23.520 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 01:40:23.520 [lua]-[trace] Injection completed +2022-03-16 01:40:23.520 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 01:40:23.520 [lua]-[trace] Injection completed +2022-03-16 01:40:23.520 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 01:40:23.520 [lua]-[trace] Injection completed +2022-03-16 01:40:23.520 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 01:40:23.521 [lua]-[trace] Injection completed +2022-03-16 01:40:23.521 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 01:40:23.521 [lua]-[trace] Injection completed +2022-03-16 01:40:23.521 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 01:40:23.521 [lua]-[trace] Injection completed +2022-03-16 01:40:23.521 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 01:40:23.521 [lua]-[trace] Injection completed +2022-03-16 01:40:23.521 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 01:40:23.521 [lua]-[trace] Injection completed +2022-03-16 01:40:23.521 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 01:40:23.522 [lua]-[trace] Injection completed +2022-03-16 01:40:23.522 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 01:40:23.522 [lua]-[trace] Injection completed +2022-03-16 01:40:23.522 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 01:40:23.522 [lua]-[trace] Injection completed +2022-03-16 01:40:23.522 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 01:40:23.522 [lua]-[trace] Injection completed +2022-03-16 01:40:23.522 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 01:40:23.522 [lua]-[trace] Injection completed +2022-03-16 01:40:23.522 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 01:40:23.523 [lua]-[trace] Injection completed +2022-03-16 01:40:23.523 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 01:40:23.523 [lua]-[trace] Injection completed +2022-03-16 01:40:23.523 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 01:40:23.523 [lua]-[trace] Injection completed +2022-03-16 01:40:23.523 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 01:40:23.523 [lua]-[trace] Injection completed +2022-03-16 01:40:23.523 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 01:40:23.523 [lua]-[trace] Injection completed +2022-03-16 01:40:23.523 [lua]-[trace] Wave compilation start. +2022-03-16 01:40:23.945 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 01:40:25.458 [lua]-[trace] Template compilation start. +2022-03-16 01:40:25.535 [lua]-[trace] Initializing 'slk' +2022-03-16 01:40:25.984 [lua]-[debug] Template compilation succeeded. +2022-03-16 01:40:26. 16 [lua]-[trace] JassHelper compilation start. +2022-03-16 01:40:28.237 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 01:40:28.238 [lua]-[debug] Result false +2022-03-16 01:40:28.238 [lua]-[debug] ********************* on save end ********************* +2022-03-16 01:40:57.833 [event]-[trace] WE is about to compile maps. +2022-03-16 01:41:00.272 [lua]-[debug] ********************* on save start ********************* +2022-03-16 01:41:00.272 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:41:00.272 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 01:41:00.272 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 01:41:00.272 [lua]-[trace] mpq_util.update_file. +2022-03-16 01:41:00.274 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 01:41:00.274 [lua]-[trace] Processing file.out +2022-03-16 01:41:00.289 [lua]-[trace] Writing code to file.out +2022-03-16 01:41:00.290 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 01:41:00.290 [lua]-[trace] Injection completed +2022-03-16 01:41:00.290 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 01:41:00.290 [lua]-[trace] Injection completed +2022-03-16 01:41:00.290 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 01:41:00.290 [lua]-[trace] Injection completed +2022-03-16 01:41:00.290 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 01:41:00.291 [lua]-[trace] Injection completed +2022-03-16 01:41:00.291 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 01:41:00.292 [lua]-[trace] Injection completed +2022-03-16 01:41:00.292 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 01:41:00.292 [lua]-[trace] Injection completed +2022-03-16 01:41:00.292 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 01:41:00.292 [lua]-[trace] Injection completed +2022-03-16 01:41:00.292 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 01:41:00.292 [lua]-[trace] Injection completed +2022-03-16 01:41:00.292 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 01:41:00.292 [lua]-[trace] Injection completed +2022-03-16 01:41:00.292 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 01:41:00.293 [lua]-[trace] Injection completed +2022-03-16 01:41:00.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 01:41:00.294 [lua]-[trace] Injection completed +2022-03-16 01:41:00.294 [lua]-[trace] Wave compilation start. +2022-03-16 01:41:00.718 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 01:41:02.235 [lua]-[trace] Template compilation start. +2022-03-16 01:41:02.314 [lua]-[trace] Initializing 'slk' +2022-03-16 01:41:02.775 [lua]-[debug] Template compilation succeeded. +2022-03-16 01:41:02.808 [lua]-[trace] JassHelper compilation start. +2022-03-16 01:41:06.210 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 01:41:06.210 [lua]-[debug] Result true +2022-03-16 01:41:06.210 [lua]-[debug] ********************* on save end ********************* +2022-03-16 01:42:52.586 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 01:42:52.586 [event]-[trace] No need to compile. +2022-03-16 01:42:52.586 [lua]-[debug] ********************* on test start ********************* +2022-03-16 01:42:52.586 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 01:42:52.586 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 01:42:52.586 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 01:42:52.586 [lua]-[debug] Testing 0 +2022-03-16 01:42:52.683 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 01:42:52.683 [lua]-[debug] ********************* on test end ********************* +2022-03-16 02:23:19.450 [event]-[trace] WE is about to compile maps. +2022-03-16 02:23:21.699 [lua]-[debug] ********************* on save start ********************* +2022-03-16 02:23:21.700 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:23:21.700 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 02:23:21.700 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 02:23:21.700 [lua]-[trace] mpq_util.update_file. +2022-03-16 02:23:21.702 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 02:23:21.702 [lua]-[trace] Processing file.out +2022-03-16 02:23:21.717 [lua]-[trace] Writing code to file.out +2022-03-16 02:23:21.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 02:23:21.717 [lua]-[trace] Injection completed +2022-03-16 02:23:21.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 02:23:21.718 [lua]-[trace] Injection completed +2022-03-16 02:23:21.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 02:23:21.719 [lua]-[trace] Injection completed +2022-03-16 02:23:21.719 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 02:23:21.720 [lua]-[trace] Injection completed +2022-03-16 02:23:21.720 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 02:23:21.721 [lua]-[trace] Injection completed +2022-03-16 02:23:21.721 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 02:23:21.721 [lua]-[trace] Injection completed +2022-03-16 02:23:21.721 [lua]-[trace] Wave compilation start. +2022-03-16 02:23:22.162 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 02:23:23.586 [lua]-[trace] Template compilation start. +2022-03-16 02:23:23.662 [lua]-[trace] Initializing 'slk' +2022-03-16 02:23:24.163 [lua]-[debug] Template compilation succeeded. +2022-03-16 02:23:24.194 [lua]-[trace] JassHelper compilation start. +2022-03-16 02:23:26.445 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 02:23:26.446 [lua]-[debug] Result false +2022-03-16 02:23:26.446 [lua]-[debug] ********************* on save end ********************* +2022-03-16 02:25:00.391 [event]-[trace] WE is about to compile maps. +2022-03-16 02:25:02.627 [lua]-[debug] ********************* on save start ********************* +2022-03-16 02:25:02.627 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:25:02.627 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 02:25:02.627 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 02:25:02.628 [lua]-[trace] mpq_util.update_file. +2022-03-16 02:25:02.629 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 02:25:02.629 [lua]-[trace] Processing file.out +2022-03-16 02:25:02.644 [lua]-[trace] Writing code to file.out +2022-03-16 02:25:02.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 02:25:02.644 [lua]-[trace] Injection completed +2022-03-16 02:25:02.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 02:25:02.645 [lua]-[trace] Injection completed +2022-03-16 02:25:02.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 02:25:02.645 [lua]-[trace] Injection completed +2022-03-16 02:25:02.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 02:25:02.645 [lua]-[trace] Injection completed +2022-03-16 02:25:02.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 02:25:02.645 [lua]-[trace] Injection completed +2022-03-16 02:25:02.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 02:25:02.645 [lua]-[trace] Injection completed +2022-03-16 02:25:02.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 02:25:02.646 [lua]-[trace] Injection completed +2022-03-16 02:25:02.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 02:25:02.647 [lua]-[trace] Injection completed +2022-03-16 02:25:02.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 02:25:02.648 [lua]-[trace] Injection completed +2022-03-16 02:25:02.648 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 02:25:02.648 [lua]-[trace] Injection completed +2022-03-16 02:25:02.648 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 02:25:02.648 [lua]-[trace] Injection completed +2022-03-16 02:25:02.648 [lua]-[trace] Wave compilation start. +2022-03-16 02:25:03. 92 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 02:25:04.596 [lua]-[trace] Template compilation start. +2022-03-16 02:25:04.673 [lua]-[trace] Initializing 'slk' +2022-03-16 02:25:05. 92 [lua]-[debug] Template compilation succeeded. +2022-03-16 02:25:05.124 [lua]-[trace] JassHelper compilation start. +2022-03-16 02:25:08.280 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 02:25:08.281 [lua]-[debug] Result false +2022-03-16 02:25:08.281 [lua]-[debug] ********************* on save end ********************* +2022-03-16 02:25:30.572 [event]-[trace] WE is about to compile maps. +2022-03-16 02:25:32.873 [lua]-[debug] ********************* on save start ********************* +2022-03-16 02:25:32.877 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:25:32.877 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 02:25:32.878 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 02:25:32.878 [lua]-[trace] mpq_util.update_file. +2022-03-16 02:25:32.879 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 02:25:32.879 [lua]-[trace] Processing file.out +2022-03-16 02:25:32.895 [lua]-[trace] Writing code to file.out +2022-03-16 02:25:32.895 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 02:25:32.895 [lua]-[trace] Injection completed +2022-03-16 02:25:32.895 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 02:25:32.895 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 02:25:32.896 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 02:25:32.896 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 02:25:32.896 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 02:25:32.896 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 02:25:32.896 [lua]-[trace] Injection completed +2022-03-16 02:25:32.896 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 02:25:32.897 [lua]-[trace] Injection completed +2022-03-16 02:25:32.897 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 02:25:32.898 [lua]-[trace] Injection completed +2022-03-16 02:25:32.898 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 02:25:32.898 [lua]-[trace] Injection completed +2022-03-16 02:25:32.898 [lua]-[trace] Wave compilation start. +2022-03-16 02:25:33.319 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 02:25:34.728 [lua]-[trace] Template compilation start. +2022-03-16 02:25:34.808 [lua]-[trace] Initializing 'slk' +2022-03-16 02:25:35.267 [lua]-[debug] Template compilation succeeded. +2022-03-16 02:25:35.299 [lua]-[trace] JassHelper compilation start. +2022-03-16 02:25:38.650 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 02:25:38.651 [lua]-[debug] Result true +2022-03-16 02:25:38.651 [lua]-[debug] ********************* on save end ********************* +2022-03-16 02:26:32.689 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:26:32.690 [event]-[trace] No need to compile. +2022-03-16 02:26:32.690 [lua]-[debug] ********************* on test start ********************* +2022-03-16 02:26:32.690 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:26:32.690 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:26:32.690 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:26:32.690 [lua]-[debug] Testing 0 +2022-03-16 02:26:32.858 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 02:26:32.858 [lua]-[debug] ********************* on test end ********************* +2022-03-16 02:45:23.303 [event]-[trace] WE is about to compile maps. +2022-03-16 02:45:25.578 [lua]-[debug] ********************* on save start ********************* +2022-03-16 02:45:25.578 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:45:25.578 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 02:45:25.579 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 02:45:25.579 [lua]-[trace] mpq_util.update_file. +2022-03-16 02:45:25.581 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 02:45:25.581 [lua]-[trace] Processing file.out +2022-03-16 02:45:25.595 [lua]-[trace] Writing code to file.out +2022-03-16 02:45:25.596 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 02:45:25.596 [lua]-[trace] Injection completed +2022-03-16 02:45:25.596 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 02:45:25.596 [lua]-[trace] Injection completed +2022-03-16 02:45:25.596 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 02:45:25.596 [lua]-[trace] Injection completed +2022-03-16 02:45:25.596 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 02:45:25.597 [lua]-[trace] Injection completed +2022-03-16 02:45:25.597 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 02:45:25.598 [lua]-[trace] Injection completed +2022-03-16 02:45:25.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 02:45:25.599 [lua]-[trace] Injection completed +2022-03-16 02:45:25.600 [lua]-[trace] Wave compilation start. +2022-03-16 02:45:26. 15 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 02:45:27.432 [lua]-[trace] Template compilation start. +2022-03-16 02:45:27.510 [lua]-[trace] Initializing 'slk' +2022-03-16 02:45:27.944 [lua]-[debug] Template compilation succeeded. +2022-03-16 02:45:27.975 [lua]-[trace] JassHelper compilation start. +2022-03-16 02:45:31.312 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 02:45:31.313 [lua]-[debug] Result true +2022-03-16 02:45:31.313 [lua]-[debug] ********************* on save end ********************* +2022-03-16 02:45:59.616 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:45:59.616 [event]-[trace] No need to compile. +2022-03-16 02:45:59.616 [lua]-[debug] ********************* on test start ********************* +2022-03-16 02:45:59.617 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:45:59.617 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:45:59.617 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:45:59.617 [lua]-[debug] Testing 0 +2022-03-16 02:45:59.684 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 02:45:59.684 [lua]-[debug] ********************* on test end ********************* +2022-03-16 02:49:42. 38 [event]-[trace] WE is about to compile maps. +2022-03-16 02:49:44.497 [lua]-[debug] ********************* on save start ********************* +2022-03-16 02:49:44.498 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:49:44.498 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 02:49:44.498 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 02:49:44.498 [lua]-[trace] mpq_util.update_file. +2022-03-16 02:49:44.500 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 02:49:44.500 [lua]-[trace] Processing file.out +2022-03-16 02:49:44.515 [lua]-[trace] Writing code to file.out +2022-03-16 02:49:44.515 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 02:49:44.516 [lua]-[trace] Injection completed +2022-03-16 02:49:44.516 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 02:49:44.516 [lua]-[trace] Injection completed +2022-03-16 02:49:44.516 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 02:49:44.516 [lua]-[trace] Injection completed +2022-03-16 02:49:44.516 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 02:49:44.516 [lua]-[trace] Injection completed +2022-03-16 02:49:44.516 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 02:49:44.517 [lua]-[trace] Injection completed +2022-03-16 02:49:44.517 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 02:49:44.518 [lua]-[trace] Injection completed +2022-03-16 02:49:44.518 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 02:49:44.519 [lua]-[trace] Injection completed +2022-03-16 02:49:44.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 02:49:44.519 [lua]-[trace] Injection completed +2022-03-16 02:49:44.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 02:49:44.519 [lua]-[trace] Injection completed +2022-03-16 02:49:44.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 02:49:44.519 [lua]-[trace] Injection completed +2022-03-16 02:49:44.519 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 02:49:44.519 [lua]-[trace] Injection completed +2022-03-16 02:49:44.520 [lua]-[trace] Wave compilation start. +2022-03-16 02:49:44.982 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 02:49:46.420 [lua]-[trace] Template compilation start. +2022-03-16 02:49:46.503 [lua]-[trace] Initializing 'slk' +2022-03-16 02:49:47. 17 [lua]-[debug] Template compilation succeeded. +2022-03-16 02:49:47. 50 [lua]-[trace] JassHelper compilation start. +2022-03-16 02:49:50.470 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 02:49:50.472 [lua]-[debug] Result true +2022-03-16 02:49:50.472 [lua]-[debug] ********************* on save end ********************* +2022-03-16 02:50:21.638 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:50:21.638 [event]-[trace] No need to compile. +2022-03-16 02:50:21.638 [lua]-[debug] ********************* on test start ********************* +2022-03-16 02:50:21.639 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 02:50:21.639 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:50:21.639 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 02:50:21.639 [lua]-[debug] Testing 0 +2022-03-16 02:50:21.714 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 02:50:21.715 [lua]-[debug] ********************* on test end ********************* +2022-03-16 03:07:14.852 [event]-[trace] WE is about to compile maps. +2022-03-16 03:07:17.348 [lua]-[debug] ********************* on save start ********************* +2022-03-16 03:07:17.348 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:07:17.348 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 03:07:17.348 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 03:07:17.348 [lua]-[trace] mpq_util.update_file. +2022-03-16 03:07:17.350 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 03:07:17.350 [lua]-[trace] Processing file.out +2022-03-16 03:07:17.365 [lua]-[trace] Writing code to file.out +2022-03-16 03:07:17.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 03:07:17.366 [lua]-[trace] Injection completed +2022-03-16 03:07:17.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 03:07:17.366 [lua]-[trace] Injection completed +2022-03-16 03:07:17.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 03:07:17.366 [lua]-[trace] Injection completed +2022-03-16 03:07:17.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 03:07:17.367 [lua]-[trace] Injection completed +2022-03-16 03:07:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 03:07:17.367 [lua]-[trace] Injection completed +2022-03-16 03:07:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 03:07:17.367 [lua]-[trace] Injection completed +2022-03-16 03:07:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 03:07:17.367 [lua]-[trace] Injection completed +2022-03-16 03:07:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 03:07:17.367 [lua]-[trace] Injection completed +2022-03-16 03:07:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 03:07:17.369 [lua]-[trace] Injection completed +2022-03-16 03:07:17.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 03:07:17.370 [lua]-[trace] Injection completed +2022-03-16 03:07:17.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 03:07:17.370 [lua]-[trace] Injection completed +2022-03-16 03:07:17.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 03:07:17.371 [lua]-[trace] Injection completed +2022-03-16 03:07:17.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 03:07:17.371 [lua]-[trace] Injection completed +2022-03-16 03:07:17.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 03:07:17.371 [lua]-[trace] Injection completed +2022-03-16 03:07:17.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 03:07:17.371 [lua]-[trace] Injection completed +2022-03-16 03:07:17.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 03:07:17.372 [lua]-[trace] Injection completed +2022-03-16 03:07:17.373 [lua]-[trace] Wave compilation start. +2022-03-16 03:07:17.846 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 03:07:19.310 [lua]-[trace] Template compilation start. +2022-03-16 03:07:19.389 [lua]-[trace] Initializing 'slk' +2022-03-16 03:07:19.961 [lua]-[debug] Template compilation succeeded. +2022-03-16 03:07:19.994 [lua]-[trace] JassHelper compilation start. +2022-03-16 03:07:23.764 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 03:07:23.764 [lua]-[debug] Result true +2022-03-16 03:07:23.764 [lua]-[debug] ********************* on save end ********************* +2022-03-16 03:07:56.281 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:07:56.281 [event]-[trace] No need to compile. +2022-03-16 03:07:56.281 [lua]-[debug] ********************* on test start ********************* +2022-03-16 03:07:56.281 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:07:56.281 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:07:56.281 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:07:56.281 [lua]-[debug] Testing 0 +2022-03-16 03:07:56.455 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 03:07:56.455 [lua]-[debug] ********************* on test end ********************* +2022-03-16 03:08:30.890 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-16 03:08:55.230 [event]-[trace] WE is about to compile maps. +2022-03-16 03:08:57.529 [lua]-[debug] ********************* on save start ********************* +2022-03-16 03:08:57.530 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:08:57.530 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 03:08:57.530 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 03:08:57.530 [lua]-[trace] mpq_util.update_file. +2022-03-16 03:08:57.532 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 03:08:57.532 [lua]-[trace] Processing file.out +2022-03-16 03:08:57.547 [lua]-[trace] Writing code to file.out +2022-03-16 03:08:57.548 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 03:08:57.548 [lua]-[trace] Injection completed +2022-03-16 03:08:57.548 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 03:08:57.548 [lua]-[trace] Injection completed +2022-03-16 03:08:57.548 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 03:08:57.548 [lua]-[trace] Injection completed +2022-03-16 03:08:57.548 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 03:08:57.548 [lua]-[trace] Injection completed +2022-03-16 03:08:57.548 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 03:08:57.549 [lua]-[trace] Injection completed +2022-03-16 03:08:57.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 03:08:57.549 [lua]-[trace] Injection completed +2022-03-16 03:08:57.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 03:08:57.549 [lua]-[trace] Injection completed +2022-03-16 03:08:57.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 03:08:57.549 [lua]-[trace] Injection completed +2022-03-16 03:08:57.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 03:08:57.549 [lua]-[trace] Injection completed +2022-03-16 03:08:57.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 03:08:57.550 [lua]-[trace] Injection completed +2022-03-16 03:08:57.550 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.551 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.551 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.551 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.551 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.551 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 03:08:57.551 [lua]-[trace] Injection completed +2022-03-16 03:08:57.552 [lua]-[trace] Wave compilation start. +2022-03-16 03:08:57.986 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 03:08:59.446 [lua]-[trace] Template compilation start. +2022-03-16 03:08:59.524 [lua]-[trace] Initializing 'slk' +2022-03-16 03:08:59.950 [lua]-[debug] Template compilation succeeded. +2022-03-16 03:08:59.983 [lua]-[trace] JassHelper compilation start. +2022-03-16 03:09:03.514 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 03:09:03.515 [lua]-[debug] Result true +2022-03-16 03:09:03.515 [lua]-[debug] ********************* on save end ********************* +2022-03-16 03:13:03.942 [event]-[trace] WE is about to compile maps. +2022-03-16 03:13:06.440 [lua]-[debug] ********************* on save start ********************* +2022-03-16 03:13:06.441 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:13:06.441 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 03:13:06.441 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 03:13:06.441 [lua]-[trace] mpq_util.update_file. +2022-03-16 03:13:06.442 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 03:13:06.442 [lua]-[trace] Processing file.out +2022-03-16 03:13:06.457 [lua]-[trace] Writing code to file.out +2022-03-16 03:13:06.458 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 03:13:06.458 [lua]-[trace] Injection completed +2022-03-16 03:13:06.458 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 03:13:06.458 [lua]-[trace] Injection completed +2022-03-16 03:13:06.458 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 03:13:06.459 [lua]-[trace] Injection completed +2022-03-16 03:13:06.459 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 03:13:06.460 [lua]-[trace] Injection completed +2022-03-16 03:13:06.460 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 03:13:06.461 [lua]-[trace] Injection completed +2022-03-16 03:13:06.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 03:13:06.461 [lua]-[trace] Injection completed +2022-03-16 03:13:06.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 03:13:06.461 [lua]-[trace] Injection completed +2022-03-16 03:13:06.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 03:13:06.461 [lua]-[trace] Injection completed +2022-03-16 03:13:06.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 03:13:06.461 [lua]-[trace] Injection completed +2022-03-16 03:13:06.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 03:13:06.462 [lua]-[trace] Injection completed +2022-03-16 03:13:06.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 03:13:06.462 [lua]-[trace] Injection completed +2022-03-16 03:13:06.462 [lua]-[trace] Wave compilation start. +2022-03-16 03:13:06.969 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 03:13:08.511 [lua]-[trace] Template compilation start. +2022-03-16 03:13:08.595 [lua]-[trace] Initializing 'slk' +2022-03-16 03:13:09.137 [lua]-[debug] Template compilation succeeded. +2022-03-16 03:13:09.170 [lua]-[trace] JassHelper compilation start. +2022-03-16 03:13:12.415 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 03:13:12.416 [lua]-[debug] Result false +2022-03-16 03:13:12.416 [lua]-[debug] ********************* on save end ********************* +2022-03-16 03:14:10. 42 [event]-[trace] WE is about to compile maps. +2022-03-16 03:14:12.350 [lua]-[debug] ********************* on save start ********************* +2022-03-16 03:14:12.351 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:14:12.351 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 03:14:12.351 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 03:14:12.351 [lua]-[trace] mpq_util.update_file. +2022-03-16 03:14:12.353 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 03:14:12.353 [lua]-[trace] Processing file.out +2022-03-16 03:14:12.368 [lua]-[trace] Writing code to file.out +2022-03-16 03:14:12.368 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 03:14:12.369 [lua]-[trace] Injection completed +2022-03-16 03:14:12.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 03:14:12.370 [lua]-[trace] Injection completed +2022-03-16 03:14:12.370 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 03:14:12.371 [lua]-[trace] Injection completed +2022-03-16 03:14:12.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 03:14:12.371 [lua]-[trace] Injection completed +2022-03-16 03:14:12.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 03:14:12.371 [lua]-[trace] Injection completed +2022-03-16 03:14:12.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 03:14:12.371 [lua]-[trace] Injection completed +2022-03-16 03:14:12.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 03:14:12.371 [lua]-[trace] Injection completed +2022-03-16 03:14:12.371 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 03:14:12.372 [lua]-[trace] Injection completed +2022-03-16 03:14:12.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 03:14:12.372 [lua]-[trace] Injection completed +2022-03-16 03:14:12.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 03:14:12.372 [lua]-[trace] Injection completed +2022-03-16 03:14:12.372 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 03:14:12.372 [lua]-[trace] Injection completed +2022-03-16 03:14:12.372 [lua]-[trace] Wave compilation start. +2022-03-16 03:14:12.831 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 03:14:14.301 [lua]-[trace] Template compilation start. +2022-03-16 03:14:14.378 [lua]-[trace] Initializing 'slk' +2022-03-16 03:14:14.805 [lua]-[debug] Template compilation succeeded. +2022-03-16 03:14:14.838 [lua]-[trace] JassHelper compilation start. +2022-03-16 03:14:18.552 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 03:14:18.552 [lua]-[debug] Result true +2022-03-16 03:14:18.552 [lua]-[debug] ********************* on save end ********************* +2022-03-16 03:14:28.743 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:14:28.743 [event]-[trace] No need to compile. +2022-03-16 03:14:28.743 [lua]-[debug] ********************* on test start ********************* +2022-03-16 03:14:28.744 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:14:28.744 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:14:28.744 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 03:14:28.744 [lua]-[debug] Testing 0 +2022-03-16 03:14:28.818 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 03:14:28.818 [lua]-[debug] ********************* on test end ********************* +2022-03-16 03:31:09.565 [root]-[info ] ------------------------------------------------------ +2022-03-16 03:31:09.570 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 03:31:09.570 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 03:31:09.570 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 03:31:09.571 [root]-[debug] Initialize script engine successfully. +2022-03-16 03:31:09.571 [root]-[info ] Script engine startup complete. +2022-03-16 03:31:09.595 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 03:31:09.595 [lua]-[trace] Initializing 'sys' +2022-03-16 03:31:09.597 [lua]-[trace] Initializing 'filesystem' +2022-03-16 03:31:09.598 [lua]-[trace] Initializing 'gui' +2022-03-16 03:31:09.600 [lua]-[trace] Initializing 'util' +2022-03-16 03:31:09.601 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 03:31:09.602 [lua]-[trace] Initializing 'ffi' +2022-03-16 03:31:09.603 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 03:31:09.603 [lua]-[trace] Initializing 'event' +2022-03-16 03:31:09.606 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 03:31:09.608 [lua]-[trace] Initializing 'registry' +2022-03-16 03:31:09.609 [lua]-[trace] Initializing 'version' +2022-03-16 03:31:09.609 [lua]-[trace] Initializing 'localization' +2022-03-16 03:31:09.610 [lua]-[trace] Initializing 'i18n' +2022-03-16 03:31:09.611 [lua]-[trace] Initializing 'config' +2022-03-16 03:31:09.612 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:31:09.612 [lua]-[trace] Initializing 'plugin' +2022-03-16 03:31:09.613 [lua]-[trace] Initializing 'uiloader' +2022-03-16 03:31:09.614 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 03:31:09.614 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 03:31:09.615 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 03:31:09.615 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 03:31:09.616 [lua]-[trace] Initializing 'lni-c' +2022-03-16 03:31:09.617 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 03:31:09.618 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 03:31:09.619 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 03:31:09.619 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 03:31:09.634 [lua]-[trace] Initializing 'check_object' +2022-03-16 03:31:09.641 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 03:31:09.642 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 03:31:09.642 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 03:31:09.643 [event]-[trace] RegisterEvent id: 7 +2022-03-16 03:31:09.643 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 03:31:09.644 [event]-[trace] RegisterEvent id: 5 +2022-03-16 03:31:09.644 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 03:31:09.645 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 03:31:09.646 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 03:31:09.646 [lua]-[trace] Initializing 'compile.template' +2022-03-16 03:31:09.647 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 03:31:09.648 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 03:31:09.648 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 03:31:09.649 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 03:31:09.651 [lua]-[trace] Initializing 'compile.native' +2022-03-16 03:31:09.651 [event]-[trace] RegisterEvent id: 3 +2022-03-16 03:31:09.651 [event]-[trace] RegisterEvent id: 2 +2022-03-16 03:31:09.651 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 03:31:09.652 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 03:31:09.653 [lua]-[trace] Initializing 'utility' +2022-03-16 03:31:09.654 [lua]-[trace] Initializing 'mapdump' +2022-03-16 03:31:09.654 [event]-[trace] RegisterEvent id: 4 +2022-03-16 03:31:09.654 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 03:31:09.655 [event]-[trace] RegisterEvent id: 0 +2022-03-16 03:31:09.655 [event]-[trace] RegisterEvent id: 1 +2022-03-16 03:31:09.655 [event]-[trace] RegisterEvent id: 6 +2022-03-16 03:31:09.655 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 03:31:09.810 [event]-[trace] RegisterEvent id: 8 +2022-03-16 03:31:09.810 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 03:31:09.811 [event]-[trace] RegisterEvent id: 9 +2022-03-16 03:31:09.811 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 03:31:09.873 [event]-[info ] Entering main program. +2022-03-16 03:31:09.873 [event]-[debug] Command line: +2022-03-16 03:31:09.875 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 03:31:09.879 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 03:31:09.879 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 03:31:09.880 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:31:09.880 [lua]-[trace] check_conflicting_ui +2022-03-16 03:31:09.880 [lua]-[trace] check_conflicting_units +2022-03-16 03:31:09.880 [lua]-[trace] clear_potential_conflicting +2022-03-16 03:31:09.881 [lua]-[trace] check_war3_version +2022-03-16 03:31:09.884 [lua]-[error] Cannot find war3.mpq +2022-03-16 03:31:09.903 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 03:31:09.927 [lua]-[debug] Tesh loaded successfully. +2022-03-16 03:31:09.953 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 03:31:09.955 [lua]-[debug] YDClient loaded successfully. +2022-03-16 03:31:09.955 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 03:31:09.969 [lua]-[warn ] failed: disable +2022-03-16 03:31:09.970 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 03:31:09.971 [lua]-[warn ] failed: disable +2022-03-16 03:31:09.971 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 03:31:09.972 [lua]-[warn ] failed: disable +2022-03-16 03:31:09.972 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 03:31:10. 43 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 03:31:10. 47 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 03:31:10. 48 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 03:31:10. 49 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 03:31:10. 50 [inject]-[debug] Start installing inline hooks. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 03:31:10. 51 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 03:31:10. 51 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 03:31:10. 51 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 03:31:10. 51 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 03:31:10. 51 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 03:31:10. 51 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 03:31:10. 51 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 03:31:10. 51 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 03:31:10. 51 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 03:31:10. 51 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 03:31:10. 51 [inject]-[debug] Installing inline hooks complete. +2022-03-16 03:31:10. 51 [inject]-[debug] IAT hook initialization started. +2022-03-16 03:31:10. 51 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 03:31:10. 51 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 03:31:10. 51 [inject]-[debug] IAT hook initialization completed. +2022-03-16 03:31:10. 51 [inject]-[debug] Patches initialization started. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing syntax check patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing auto disable patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing enable trigger check patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 03:31:10. 51 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing doodad limit patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing unit/item limit patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 03:31:10. 51 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 03:31:10. 51 [inject]-[trace] Installing attack table patch +2022-03-16 03:31:10. 51 [inject]-[debug] Patches initialization completed. +2022-03-16 03:31:10. 51 [inject]-[info ] YDWE startup complete. +2022-03-16 03:31:10. 51 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 03:31:10. 52 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 03:31:10. 52 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 03:31:10. 52 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 03:31:10. 71 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 03:31:10. 84 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 03:31:10. 87 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 03:31:10. 87 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 03:31:10. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 03:31:10. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 03:31:10. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 03:31:10.101 [lua]-[trace] Scanned file: 99 +2022-03-16 03:31:10.102 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 03:31:10.659 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 03:31:10.678 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 03:31:10.848 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 03:31:11. 0 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 03:31:11. 2 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 03:31:11. 2 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 03:31:11. 3 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 03:31:11. 4 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 03:31:13. 47 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 03:31:13. 48 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 03:31:20.933 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:31:20.933 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:31:20.933 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:31:21.138 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 03:31:21.164 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 03:31:21.285 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 03:32:05.387 [root]-[info ] ------------------------------------------------------ +2022-03-16 03:32:05.392 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 03:32:05.392 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 03:32:05.392 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 03:32:05.392 [root]-[debug] Initialize script engine successfully. +2022-03-16 03:32:05.392 [root]-[info ] Script engine startup complete. +2022-03-16 03:32:05.393 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 03:32:05.393 [lua]-[trace] Initializing 'sys' +2022-03-16 03:32:05.394 [lua]-[trace] Initializing 'filesystem' +2022-03-16 03:32:05.395 [lua]-[trace] Initializing 'gui' +2022-03-16 03:32:05.396 [lua]-[trace] Initializing 'util' +2022-03-16 03:32:05.397 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 03:32:05.397 [lua]-[trace] Initializing 'ffi' +2022-03-16 03:32:05.398 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 03:32:05.399 [lua]-[trace] Initializing 'event' +2022-03-16 03:32:05.401 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 03:32:05.403 [lua]-[trace] Initializing 'registry' +2022-03-16 03:32:05.404 [lua]-[trace] Initializing 'version' +2022-03-16 03:32:05.404 [lua]-[trace] Initializing 'localization' +2022-03-16 03:32:05.405 [lua]-[trace] Initializing 'i18n' +2022-03-16 03:32:05.406 [lua]-[trace] Initializing 'config' +2022-03-16 03:32:05.407 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:32:05.407 [lua]-[trace] Initializing 'plugin' +2022-03-16 03:32:05.407 [lua]-[trace] Initializing 'uiloader' +2022-03-16 03:32:05.408 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 03:32:05.408 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 03:32:05.408 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 03:32:05.409 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 03:32:05.409 [lua]-[trace] Initializing 'lni-c' +2022-03-16 03:32:05.410 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 03:32:05.411 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 03:32:05.411 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 03:32:05.412 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 03:32:05.413 [lua]-[trace] Initializing 'check_object' +2022-03-16 03:32:05.414 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 03:32:05.415 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 03:32:05.415 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 03:32:05.415 [event]-[trace] RegisterEvent id: 7 +2022-03-16 03:32:05.416 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 03:32:05.416 [event]-[trace] RegisterEvent id: 5 +2022-03-16 03:32:05.416 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 03:32:05.417 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 03:32:05.417 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 03:32:05.417 [lua]-[trace] Initializing 'compile.template' +2022-03-16 03:32:05.418 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 03:32:05.418 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 03:32:05.419 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 03:32:05.419 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 03:32:05.419 [lua]-[trace] Initializing 'compile.native' +2022-03-16 03:32:05.420 [event]-[trace] RegisterEvent id: 3 +2022-03-16 03:32:05.420 [event]-[trace] RegisterEvent id: 2 +2022-03-16 03:32:05.420 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 03:32:05.420 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 03:32:05.421 [lua]-[trace] Initializing 'utility' +2022-03-16 03:32:05.421 [lua]-[trace] Initializing 'mapdump' +2022-03-16 03:32:05.422 [event]-[trace] RegisterEvent id: 4 +2022-03-16 03:32:05.422 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 03:32:05.422 [event]-[trace] RegisterEvent id: 0 +2022-03-16 03:32:05.422 [event]-[trace] RegisterEvent id: 1 +2022-03-16 03:32:05.422 [event]-[trace] RegisterEvent id: 6 +2022-03-16 03:32:05.422 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 03:32:05.579 [event]-[trace] RegisterEvent id: 8 +2022-03-16 03:32:05.579 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 03:32:05.580 [event]-[trace] RegisterEvent id: 9 +2022-03-16 03:32:05.580 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 03:32:05.642 [event]-[info ] Entering main program. +2022-03-16 03:32:05.642 [event]-[debug] Command line: +2022-03-16 03:32:05.644 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 03:32:05.655 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 03:32:05.655 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 03:32:05.656 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:32:05.656 [lua]-[trace] check_conflicting_ui +2022-03-16 03:32:05.656 [lua]-[trace] check_conflicting_units +2022-03-16 03:32:05.656 [lua]-[trace] clear_potential_conflicting +2022-03-16 03:32:05.657 [lua]-[trace] check_war3_version +2022-03-16 03:32:05.660 [lua]-[error] Cannot find war3.mpq +2022-03-16 03:32:05.664 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 03:32:05.677 [lua]-[debug] Tesh loaded successfully. +2022-03-16 03:32:05.702 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 03:32:05.704 [lua]-[debug] YDClient loaded successfully. +2022-03-16 03:32:05.704 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 03:32:05.705 [lua]-[warn ] failed: disable +2022-03-16 03:32:05.705 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 03:32:05.706 [lua]-[warn ] failed: disable +2022-03-16 03:32:05.706 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 03:32:05.707 [lua]-[warn ] failed: disable +2022-03-16 03:32:05.707 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 03:32:05.789 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 03:32:05.792 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 03:32:05.794 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 03:32:05.794 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 03:32:05.796 [inject]-[debug] Start installing inline hooks. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 03:32:05.796 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 03:32:05.796 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 03:32:05.796 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 03:32:05.796 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 03:32:05.796 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 03:32:05.796 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 03:32:05.796 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 03:32:05.796 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 03:32:05.796 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 03:32:05.796 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 03:32:05.796 [inject]-[debug] Installing inline hooks complete. +2022-03-16 03:32:05.796 [inject]-[debug] IAT hook initialization started. +2022-03-16 03:32:05.796 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 03:32:05.796 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 03:32:05.796 [inject]-[debug] IAT hook initialization completed. +2022-03-16 03:32:05.796 [inject]-[debug] Patches initialization started. +2022-03-16 03:32:05.796 [inject]-[trace] Installing syntax check patch +2022-03-16 03:32:05.796 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 03:32:05.796 [inject]-[trace] Installing auto disable patch +2022-03-16 03:32:05.797 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 03:32:05.797 [inject]-[trace] Installing enable trigger check patch +2022-03-16 03:32:05.797 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 03:32:05.797 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 03:32:05.797 [inject]-[trace] Installing doodad limit patch +2022-03-16 03:32:05.797 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 03:32:05.797 [inject]-[trace] Installing unit/item limit patch +2022-03-16 03:32:05.797 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 03:32:05.797 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 03:32:05.797 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 03:32:05.797 [inject]-[trace] Installing attack table patch +2022-03-16 03:32:05.797 [inject]-[debug] Patches initialization completed. +2022-03-16 03:32:05.797 [inject]-[info ] YDWE startup complete. +2022-03-16 03:32:05.797 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 03:32:05.797 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 03:32:05.798 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 03:32:05.798 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 03:32:05.814 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 03:32:05.816 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 03:32:05.818 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 03:32:05.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 03:32:05.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 03:32:05.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 03:32:05.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 03:32:05.828 [lua]-[trace] Scanned file: 99 +2022-03-16 03:32:05.829 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 03:32:06.343 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 03:32:06.360 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 03:32:06.476 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 03:32:06.557 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 03:32:06.558 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 03:32:06.559 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 03:32:06.560 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 03:32:06.561 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 03:32:08.556 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 03:32:08.556 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 03:32:16.229 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:32:16.229 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:32:16.229 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 03:32:16.437 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 03:32:16.456 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 03:32:16.578 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 03:32:31.712 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 03:32:31.713 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 03:32:31.713 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 03:32:31.919 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 03:32:31.938 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 03:32:32. 59 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 03:37:43.964 [event]-[trace] WE is about to compile maps. +2022-03-16 03:37:46.424 [lua]-[debug] ********************* on save start ********************* +2022-03-16 03:37:46.424 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 03:37:46.424 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 03:37:46.424 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 03:37:46.424 [lua]-[trace] mpq_util.update_file. +2022-03-16 03:37:46.426 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 03:37:46.426 [lua]-[trace] Processing file.out +2022-03-16 03:37:46.441 [lua]-[trace] Writing code to file.out +2022-03-16 03:37:46.441 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 03:37:46.442 [lua]-[trace] Injection completed +2022-03-16 03:37:46.442 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 03:37:46.443 [lua]-[trace] Injection completed +2022-03-16 03:37:46.443 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 03:37:46.444 [lua]-[trace] Injection completed +2022-03-16 03:37:46.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 03:37:46.445 [lua]-[trace] Injection completed +2022-03-16 03:37:46.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 03:37:46.445 [lua]-[trace] Injection completed +2022-03-16 03:37:46.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 03:37:46.445 [lua]-[trace] Injection completed +2022-03-16 03:37:46.445 [lua]-[trace] Wave compilation start. +2022-03-16 03:37:46.873 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 03:37:48.279 [lua]-[trace] Template compilation start. +2022-03-16 03:37:48.354 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 03:37:48.392 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 03:37:48.425 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 03:37:48.436 [lua]-[trace] Initializing 'slk' +2022-03-16 03:37:48.575 [lua]-[trace] Initializing 'archive' +2022-03-16 03:37:48.586 [lua]-[trace] Initializing 'archive_mpq' +2022-03-16 03:37:48.587 [lua]-[trace] Initializing 'archive_dir' +2022-03-16 03:37:48.588 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-16 03:37:48.588 [lua]-[trace] Initializing 'progress' +2022-03-16 03:37:48.594 [lua]-[trace] Initializing 'slk.frontend' +2022-03-16 03:37:48.595 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-16 03:37:48.596 [lua]-[trace] Initializing 'lpeg' +2022-03-16 03:37:48.624 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-16 03:37:48.815 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-16 03:37:48.837 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-16 03:37:49. 9 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-16 03:37:49. 16 [lua]-[debug] Template compilation succeeded. +2022-03-16 03:37:49. 47 [lua]-[trace] JassHelper compilation start. +2022-03-16 03:37:51.386 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 03:37:51.386 [lua]-[debug] Result false +2022-03-16 03:37:51.386 [lua]-[debug] ********************* on save end ********************* +2022-03-16 03:39:17.145 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 03:39:17.145 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 03:39:17.145 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 03:39:17.145 [inject]-[debug] IAT hook cleanup started. +2022-03-16 03:39:17.145 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 03:39:17.145 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 03:39:17.145 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 03:39:17.145 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 03:39:17.145 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 03:39:17.145 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 03:39:17.145 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 03:39:17.146 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 03:39:17.146 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 03:39:17.146 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 03:39:17.146 [lua]-[trace] Unload plugin YDClient. +2022-03-16 03:39:17.146 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 03:39:17.146 [lua]-[trace] Unload plugin Tesh. +2022-03-16 03:39:17.147 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 03:39:17.147 [event]-[info ] Main program exit. +2022-03-16 03:39:17.490 [root]-[info ] Script engine has been shut down. +2022-03-16 11:18:06.213 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:18:06.235 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:18:06.235 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:18:06.235 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:18:06.237 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:18:06.237 [root]-[info ] Script engine startup complete. +2022-03-16 11:18:06.238 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:18:06.239 [lua]-[trace] Initializing 'sys' +2022-03-16 11:18:06.242 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:18:06.244 [lua]-[trace] Initializing 'gui' +2022-03-16 11:18:06.248 [lua]-[trace] Initializing 'util' +2022-03-16 11:18:06.249 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:18:06.250 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:18:06.252 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:18:06.252 [lua]-[trace] Initializing 'event' +2022-03-16 11:18:06.269 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:18:06.274 [lua]-[trace] Initializing 'registry' +2022-03-16 11:18:06.277 [lua]-[trace] Initializing 'version' +2022-03-16 11:18:06.278 [lua]-[trace] Initializing 'localization' +2022-03-16 11:18:06.278 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:18:06.280 [lua]-[trace] Initializing 'config' +2022-03-16 11:18:06.324 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:18:06.325 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:18:06.325 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:18:06.326 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:18:06.327 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:18:06.327 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:18:06.328 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:18:06.329 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:18:06.332 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:18:06.332 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:18:06.333 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:18:06.334 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:18:06.337 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:18:06.349 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:18:06.350 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:18:06.350 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:18:06.351 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:18:06.351 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:18:06.352 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:18:06.352 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:18:06.353 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:18:06.354 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:18:06.355 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:18:06.355 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:18:06.356 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:18:06.357 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:18:06.357 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:18:06.359 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:18:06.359 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:18:06.359 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:18:06.359 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:18:06.360 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:18:06.371 [lua]-[trace] Initializing 'utility' +2022-03-16 11:18:06.372 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:18:06.373 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:18:06.373 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:18:06.373 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:18:06.373 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:18:06.373 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:18:06.373 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:18:06.531 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:18:06.531 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:18:06.532 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:18:06.532 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:18:06.830 [event]-[info ] Entering main program. +2022-03-16 11:18:06.830 [event]-[debug] Command line: -loadfile F:\MapJ\2.6.0_G5.3.w3x +2022-03-16 11:18:06.832 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:18:06.882 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:18:06.882 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:18:06.882 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:18:06.882 [lua]-[trace] check_conflicting_ui +2022-03-16 11:18:06.882 [lua]-[trace] check_conflicting_units +2022-03-16 11:18:06.882 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:18:06.883 [lua]-[trace] check_war3_version +2022-03-16 11:18:06.919 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:18:06.974 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:18:07. 18 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:18:07.112 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:18:07.119 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:18:07.120 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:18:07.121 [lua]-[warn ] failed: disable +2022-03-16 11:18:07.121 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:18:07.122 [lua]-[warn ] failed: disable +2022-03-16 11:18:07.123 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:18:07.123 [lua]-[warn ] failed: disable +2022-03-16 11:18:07.124 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:18:07.203 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:18:07.210 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:18:07.254 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:18:07.254 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:18:07.258 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:18:07.259 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:18:07.259 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:18:07.259 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:18:07.259 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:18:07.259 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:18:07.259 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:18:07.259 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:18:07.259 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:18:07.259 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:18:07.259 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:18:07.259 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:18:07.259 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:18:07.259 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:18:07.259 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:18:07.259 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:18:07.259 [inject]-[debug] Patches initialization started. +2022-03-16 11:18:07.259 [inject]-[trace] Installing syntax check patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing auto disable patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:18:07.259 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:18:07.259 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:18:07.259 [inject]-[trace] Installing attack table patch +2022-03-16 11:18:07.260 [inject]-[debug] Patches initialization completed. +2022-03-16 11:18:07.260 [inject]-[info ] YDWE startup complete. +2022-03-16 11:18:07.260 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:18:07.260 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:18:07.275 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:18:07.275 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:18:07.318 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:18:07.321 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:18:07.324 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:18:07.325 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:18:07.325 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:18:07.325 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:18:07.326 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:18:07.342 [lua]-[trace] Scanned file: 99 +2022-03-16 11:18:07.365 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:18:08.638 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:18:08.735 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:18:08.887 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:18:09. 55 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:18:09. 65 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:18:09. 67 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:18:09. 76 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:18:09. 88 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:18:11.224 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:18:11.225 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:18:31. 95 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:18:31. 95 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:18:31. 95 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:18:31.340 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:18:31.362 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:18:31.490 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:26:56.537 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 11:26:56.537 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 11:26:56.537 [inject]-[debug] IAT hook cleanup started. +2022-03-16 11:26:56.537 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 11:26:56.537 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 11:26:56.537 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 11:26:56.537 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 11:26:56.537 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 11:26:56.537 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 11:26:56.537 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 11:26:56.537 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 11:26:56.537 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 11:26:56.537 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 11:26:56.552 [lua]-[trace] Unload plugin Tesh. +2022-03-16 11:26:56.555 [lua]-[trace] Unload plugin YDClient. +2022-03-16 11:26:56.555 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 11:26:56.555 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 11:26:56.556 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 11:26:56.556 [event]-[info ] Main program exit. +2022-03-16 11:26:56.880 [root]-[info ] Script engine has been shut down. +2022-03-16 11:40:03.816 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:40:03.830 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:40:03.830 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:40:03.830 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:40:03.832 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:40:03.832 [root]-[info ] Script engine startup complete. +2022-03-16 11:40:03.833 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:40:03.833 [lua]-[trace] Initializing 'sys' +2022-03-16 11:40:03.835 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:40:03.837 [lua]-[trace] Initializing 'gui' +2022-03-16 11:40:03.839 [lua]-[trace] Initializing 'util' +2022-03-16 11:40:03.841 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:40:03.841 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:40:03.844 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:40:03.844 [lua]-[trace] Initializing 'event' +2022-03-16 11:40:03.850 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:40:03.877 [lua]-[trace] Initializing 'registry' +2022-03-16 11:40:03.879 [lua]-[trace] Initializing 'version' +2022-03-16 11:40:03.879 [lua]-[trace] Initializing 'localization' +2022-03-16 11:40:03.879 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:40:03.882 [lua]-[trace] Initializing 'config' +2022-03-16 11:40:03.897 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:40:03.897 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:40:03.898 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:40:03.898 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:40:03.899 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:40:03.899 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:40:03.900 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:40:03.901 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:40:03.906 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:40:03.907 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:40:03.908 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:40:03.908 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:40:03.924 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:40:03.931 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:40:03.932 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:40:03.933 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:40:03.933 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:40:03.934 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:40:03.934 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:40:03.934 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:40:03.935 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:40:03.936 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:40:03.937 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:40:03.938 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:40:03.938 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:40:03.940 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:40:03.940 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:40:03.942 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:40:03.942 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:40:03.942 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:40:03.942 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:40:03.943 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:40:03.944 [lua]-[trace] Initializing 'utility' +2022-03-16 11:40:03.945 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:40:03.945 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:40:03.945 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:40:03.946 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:40:03.946 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:40:03.946 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:40:03.946 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:40:04.105 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:40:04.105 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:40:04.105 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:40:04.105 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:40:04.197 [event]-[info ] Entering main program. +2022-03-16 11:40:04.197 [event]-[debug] Command line: -loadfile F:\MapJ\2.6.0_G5.3.w3x +2022-03-16 11:40:04.199 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:40:04.241 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:40:04.241 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:40:04.241 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:40:04.241 [lua]-[trace] check_conflicting_ui +2022-03-16 11:40:04.242 [lua]-[trace] check_conflicting_units +2022-03-16 11:40:04.242 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:40:04.242 [lua]-[trace] check_war3_version +2022-03-16 11:40:04.280 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:40:04.328 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:40:04.391 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:40:04.445 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:40:04.469 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:40:04.470 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:40:04.471 [lua]-[warn ] failed: disable +2022-03-16 11:40:04.471 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:40:04.472 [lua]-[warn ] failed: disable +2022-03-16 11:40:04.472 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:40:04.473 [lua]-[warn ] failed: disable +2022-03-16 11:40:04.473 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:40:04.562 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:40:04.567 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:40:04.571 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:40:04.571 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:40:04.573 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:40:04.574 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:40:04.574 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:40:04.574 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:40:04.574 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:40:04.574 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:40:04.574 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:40:04.574 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:40:04.574 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:40:04.574 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:40:04.574 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:40:04.574 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:40:04.574 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:40:04.574 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:40:04.574 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:40:04.574 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:40:04.574 [inject]-[debug] Patches initialization started. +2022-03-16 11:40:04.574 [inject]-[trace] Installing syntax check patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing auto disable patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:40:04.574 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:40:04.574 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:40:04.574 [inject]-[trace] Installing attack table patch +2022-03-16 11:40:04.575 [inject]-[debug] Patches initialization completed. +2022-03-16 11:40:04.575 [inject]-[info ] YDWE startup complete. +2022-03-16 11:40:04.575 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:40:04.575 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:40:04.576 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:40:04.576 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:40:04.594 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:40:04.605 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:40:04.607 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:40:04.608 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:40:04.608 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:40:04.608 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:40:04.609 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:40:04.621 [lua]-[trace] Scanned file: 99 +2022-03-16 11:40:04.627 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:40:05.640 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:40:05.691 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:40:05.889 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:40:06. 74 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:40:06. 84 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:40:06. 87 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:40:06. 95 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:40:06.107 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:40:08.299 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:40:08.300 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:40:29.175 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:40:29.182 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:40:29.182 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:40:29.182 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:40:29.182 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:40:29.182 [root]-[info ] Script engine startup complete. +2022-03-16 11:40:29.182 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:40:29.183 [lua]-[trace] Initializing 'sys' +2022-03-16 11:40:29.184 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:40:29.185 [lua]-[trace] Initializing 'gui' +2022-03-16 11:40:29.187 [lua]-[trace] Initializing 'util' +2022-03-16 11:40:29.187 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:40:29.187 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:40:29.189 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:40:29.189 [lua]-[trace] Initializing 'event' +2022-03-16 11:40:29.192 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:40:29.194 [lua]-[trace] Initializing 'registry' +2022-03-16 11:40:29.195 [lua]-[trace] Initializing 'version' +2022-03-16 11:40:29.195 [lua]-[trace] Initializing 'localization' +2022-03-16 11:40:29.196 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:40:29.197 [lua]-[trace] Initializing 'config' +2022-03-16 11:40:29.198 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:40:29.198 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:40:29.198 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:40:29.199 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:40:29.199 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:40:29.199 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:40:29.200 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:40:29.200 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:40:29.202 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:40:29.202 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:40:29.203 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:40:29.203 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:40:29.204 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:40:29.205 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:40:29.206 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:40:29.206 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:40:29.206 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:40:29.207 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:40:29.207 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:40:29.208 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:40:29.208 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:40:29.208 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:40:29.209 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:40:29.209 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:40:29.210 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:40:29.210 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:40:29.210 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:40:29.211 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:40:29.211 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:40:29.211 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:40:29.211 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:40:29.212 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:40:29.212 [lua]-[trace] Initializing 'utility' +2022-03-16 11:40:29.213 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:40:29.213 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:40:29.213 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:40:29.214 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:40:29.214 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:40:29.214 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:40:29.214 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:40:29.370 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:40:29.370 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:40:29.371 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:40:29.371 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:40:29.497 [event]-[info ] Entering main program. +2022-03-16 11:40:29.497 [event]-[debug] Command line: -loadfile F:\MapJ\2.6.0_G5.3.w3x +2022-03-16 11:40:29.500 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:40:29.501 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:40:29.501 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:40:29.502 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:40:29.502 [lua]-[trace] check_conflicting_ui +2022-03-16 11:40:29.502 [lua]-[trace] check_conflicting_units +2022-03-16 11:40:29.502 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:40:29.503 [lua]-[trace] check_war3_version +2022-03-16 11:40:29.506 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:40:29.510 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:40:29.524 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:40:29.549 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:40:29.550 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:40:29.550 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:40:29.551 [lua]-[warn ] failed: disable +2022-03-16 11:40:29.552 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:40:29.552 [lua]-[warn ] failed: disable +2022-03-16 11:40:29.552 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:40:29.553 [lua]-[warn ] failed: disable +2022-03-16 11:40:29.553 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:40:29.627 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:40:29.631 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:40:29.633 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:40:29.633 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:40:29.634 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:40:29.635 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:40:29.635 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:40:29.635 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:40:29.635 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:40:29.635 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:40:29.635 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:40:29.635 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:40:29.635 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:40:29.635 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:40:29.635 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:40:29.635 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:40:29.635 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:40:29.635 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:40:29.635 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:40:29.635 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:40:29.635 [inject]-[debug] Patches initialization started. +2022-03-16 11:40:29.635 [inject]-[trace] Installing syntax check patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing auto disable patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:40:29.635 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:40:29.635 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:40:29.635 [inject]-[trace] Installing attack table patch +2022-03-16 11:40:29.635 [inject]-[debug] Patches initialization completed. +2022-03-16 11:40:29.635 [inject]-[info ] YDWE startup complete. +2022-03-16 11:40:29.635 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:40:29.636 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:40:29.636 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:40:29.636 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:40:29.652 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:40:29.654 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:40:29.656 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:40:29.657 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:40:29.657 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:40:29.657 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:40:29.657 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:40:29.666 [lua]-[trace] Scanned file: 99 +2022-03-16 11:40:29.671 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:40:30.390 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:40:30.408 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:40:30.524 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:40:30.605 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:40:30.607 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:40:30.608 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:40:30.609 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:40:30.634 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:40:32.620 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:40:32.620 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:40:49.821 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:40:49.821 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:40:49.821 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:40:50. 30 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:40:50. 57 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:40:50.181 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:41:13.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 11:41:13.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 11:41:13.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 11:41:13.596 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:41:13.617 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:41:13.739 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:41:30.253 [event]-[trace] WE is about to compile maps. +2022-03-16 11:41:30.400 [lua]-[debug] ********************* on save start ********************* +2022-03-16 11:41:30.400 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:41:30.400 [lua]-[trace] Saving C:\Users\mayn\Desktop\test.w3x +2022-03-16 11:41:30.400 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 11:41:30.400 [lua]-[trace] mpq_util.update_file. +2022-03-16 11:41:30.402 [lua]-[trace] war3map.j has been extracted from test.w3x +2022-03-16 11:41:30.402 [lua]-[trace] Processing file.out +2022-03-16 11:41:30.405 [lua]-[trace] Writing code to file.out +2022-03-16 11:41:30.405 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 11:41:30.469 [lua]-[trace] Injection completed +2022-03-16 11:41:30.469 [lua]-[trace] Wave compilation start. +2022-03-16 11:41:31. 67 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 11:41:31.305 [lua]-[trace] Template compilation start. +2022-03-16 11:41:31.310 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 11:41:31.339 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 11:41:31.341 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 11:41:31.347 [lua]-[debug] Template compilation succeeded. +2022-03-16 11:41:31.382 [lua]-[trace] JassHelper compilation start. +2022-03-16 11:41:33.254 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test.w3x", returned 1 +2022-03-16 11:41:33.255 [lua]-[debug] Result false +2022-03-16 11:41:33.255 [lua]-[debug] ********************* on save end ********************* +2022-03-16 11:42:52. 86 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 11:42:52. 86 [lua]-[trace] Unload plugin Tesh. +2022-03-16 11:42:52. 88 [lua]-[trace] Unload plugin YDClient. +2022-03-16 11:42:52. 88 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 11:42:52. 88 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 11:42:52. 88 [inject]-[debug] IAT hook cleanup started. +2022-03-16 11:42:52. 88 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 11:42:52. 88 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 11:42:52. 88 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 11:42:52. 88 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 11:42:52. 88 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 11:42:52. 88 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 11:42:52. 88 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 11:42:52. 88 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 11:42:52. 88 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 11:42:52. 88 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 11:42:52.102 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 11:42:52.102 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 11:42:52.102 [event]-[info ] Main program exit. +2022-03-16 11:42:52.411 [root]-[info ] Script engine has been shut down. +2022-03-16 11:45:16.703 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:45:16.709 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:45:16.709 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:45:16.709 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:45:16.709 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:45:16.709 [root]-[info ] Script engine startup complete. +2022-03-16 11:45:16.710 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:45:16.710 [lua]-[trace] Initializing 'sys' +2022-03-16 11:45:16.712 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:45:16.713 [lua]-[trace] Initializing 'gui' +2022-03-16 11:45:16.715 [lua]-[trace] Initializing 'util' +2022-03-16 11:45:16.715 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:45:16.716 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:45:16.717 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:45:16.718 [lua]-[trace] Initializing 'event' +2022-03-16 11:45:16.721 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:45:16.723 [lua]-[trace] Initializing 'registry' +2022-03-16 11:45:16.725 [lua]-[trace] Initializing 'version' +2022-03-16 11:45:16.726 [lua]-[trace] Initializing 'localization' +2022-03-16 11:45:16.726 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:45:16.728 [lua]-[trace] Initializing 'config' +2022-03-16 11:45:16.729 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:45:16.729 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:45:16.730 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:45:16.731 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:45:16.731 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:45:16.731 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:45:16.732 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:45:16.733 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:45:16.734 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:45:16.735 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:45:16.735 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:45:16.736 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:45:16.738 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:45:16.752 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:45:16.753 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:45:16.754 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:45:16.755 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:45:16.755 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:45:16.756 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:45:16.756 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:45:16.757 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:45:16.758 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:45:16.759 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:45:16.760 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:45:16.761 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:45:16.761 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:45:16.762 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:45:16.762 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:45:16.763 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:45:16.763 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:45:16.763 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:45:16.764 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:45:16.765 [lua]-[trace] Initializing 'utility' +2022-03-16 11:45:16.765 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:45:16.766 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:45:16.767 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:45:16.767 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:45:16.767 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:45:16.767 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:45:16.767 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:45:16.927 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:45:16.927 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:45:16.928 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:45:16.928 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:45:16.987 [event]-[info ] Entering main program. +2022-03-16 11:45:16.987 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test1w3x +2022-03-16 11:45:16.989 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:45:17. 35 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:45:17. 35 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:45:17. 35 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:45:17. 35 [lua]-[trace] check_conflicting_ui +2022-03-16 11:45:17. 35 [lua]-[trace] check_conflicting_units +2022-03-16 11:45:17. 35 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:45:17. 36 [lua]-[trace] check_war3_version +2022-03-16 11:45:17. 50 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:45:17. 54 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:45:17.102 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:45:17.127 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:45:17.130 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:45:17.130 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:45:17.131 [lua]-[warn ] failed: disable +2022-03-16 11:45:17.131 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:45:17.132 [lua]-[warn ] failed: disable +2022-03-16 11:45:17.132 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:45:17.133 [lua]-[warn ] failed: disable +2022-03-16 11:45:17.133 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:45:17.217 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:45:17.221 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:45:17.224 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:45:17.224 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:45:17.226 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:45:17.226 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:45:17.226 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:45:17.226 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:45:17.226 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:45:17.226 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:45:17.226 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:45:17.226 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:45:17.226 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:45:17.227 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:45:17.227 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:45:17.227 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:45:17.227 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:45:17.227 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:45:17.227 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:45:17.227 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:45:17.227 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:45:17.227 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:45:17.227 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:45:17.227 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:45:17.227 [inject]-[debug] Patches initialization started. +2022-03-16 11:45:17.227 [inject]-[trace] Installing syntax check patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing auto disable patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:45:17.227 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:45:17.227 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:45:17.227 [inject]-[trace] Installing attack table patch +2022-03-16 11:45:17.227 [inject]-[debug] Patches initialization completed. +2022-03-16 11:45:17.227 [inject]-[info ] YDWE startup complete. +2022-03-16 11:45:17.227 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:45:17.228 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:45:17.228 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:45:17.228 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:45:17.247 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:45:17.253 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:45:17.255 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:45:17.256 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:45:17.256 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:45:17.256 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:45:17.256 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:45:17.267 [lua]-[trace] Scanned file: 99 +2022-03-16 11:45:17.271 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:45:17.971 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:45:17.988 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:45:18.112 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:45:18.192 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:45:18.195 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:45:18.196 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:45:18.197 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:45:18.198 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:45:20.279 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:45:20.279 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:46:02.810 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 11:46:02.810 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 11:46:02.810 [inject]-[debug] IAT hook cleanup started. +2022-03-16 11:46:02.810 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 11:46:02.810 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 11:46:02.810 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 11:46:02.810 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 11:46:02.810 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 11:46:02.810 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 11:46:02.810 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 11:46:02.810 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 11:46:02.810 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 11:46:02.810 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 11:46:02.810 [lua]-[trace] Unload plugin Tesh. +2022-03-16 11:46:02.811 [lua]-[trace] Unload plugin YDClient. +2022-03-16 11:46:02.811 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 11:46:02.811 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 11:46:02.811 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 11:46:02.811 [event]-[info ] Main program exit. +2022-03-16 11:46:02.993 [root]-[info ] Script engine has been shut down. +2022-03-16 11:46:05.197 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:46:05.202 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:46:05.202 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:46:05.202 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:46:05.203 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:46:05.203 [root]-[info ] Script engine startup complete. +2022-03-16 11:46:05.203 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:46:05.203 [lua]-[trace] Initializing 'sys' +2022-03-16 11:46:05.205 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:46:05.206 [lua]-[trace] Initializing 'gui' +2022-03-16 11:46:05.207 [lua]-[trace] Initializing 'util' +2022-03-16 11:46:05.208 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:46:05.208 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:46:05.209 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:46:05.210 [lua]-[trace] Initializing 'event' +2022-03-16 11:46:05.212 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:46:05.214 [lua]-[trace] Initializing 'registry' +2022-03-16 11:46:05.215 [lua]-[trace] Initializing 'version' +2022-03-16 11:46:05.216 [lua]-[trace] Initializing 'localization' +2022-03-16 11:46:05.216 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:46:05.218 [lua]-[trace] Initializing 'config' +2022-03-16 11:46:05.219 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:46:05.219 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:46:05.219 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:46:05.220 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:46:05.220 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:46:05.220 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:46:05.221 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:46:05.221 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:46:05.222 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:46:05.223 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:46:05.223 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:46:05.224 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:46:05.225 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:46:05.226 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:46:05.226 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:46:05.226 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:46:05.227 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:46:05.227 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:46:05.228 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:46:05.228 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:46:05.228 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:46:05.228 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:46:05.229 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:46:05.229 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:46:05.230 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:46:05.230 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:46:05.230 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:46:05.231 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:46:05.231 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:46:05.231 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:46:05.231 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:46:05.232 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:46:05.232 [lua]-[trace] Initializing 'utility' +2022-03-16 11:46:05.233 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:46:05.233 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:46:05.233 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:46:05.234 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:46:05.234 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:46:05.234 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:46:05.234 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:46:05.394 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:46:05.394 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:46:05.395 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:46:05.395 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:46:05.458 [event]-[info ] Entering main program. +2022-03-16 11:46:05.458 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test1w3x +2022-03-16 11:46:05.460 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:46:05.462 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:46:05.462 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:46:05.463 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:46:05.463 [lua]-[trace] check_conflicting_ui +2022-03-16 11:46:05.463 [lua]-[trace] check_conflicting_units +2022-03-16 11:46:05.463 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:46:05.463 [lua]-[trace] check_war3_version +2022-03-16 11:46:05.467 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:46:05.471 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:46:05.484 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:46:05.510 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:46:05.511 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:46:05.512 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:46:05.512 [lua]-[warn ] failed: disable +2022-03-16 11:46:05.512 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:46:05.513 [lua]-[warn ] failed: disable +2022-03-16 11:46:05.513 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:46:05.514 [lua]-[warn ] failed: disable +2022-03-16 11:46:05.514 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:46:05.598 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:46:05.602 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:46:05.604 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:46:05.604 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:46:05.606 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:46:05.606 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:46:05.606 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:46:05.606 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:46:05.606 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:46:05.606 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:46:05.606 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:46:05.606 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:46:05.606 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:46:05.606 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:46:05.606 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:46:05.606 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:46:05.606 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:46:05.606 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:46:05.606 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:46:05.606 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:46:05.607 [inject]-[debug] Patches initialization started. +2022-03-16 11:46:05.607 [inject]-[trace] Installing syntax check patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing auto disable patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:46:05.607 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:46:05.607 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:46:05.607 [inject]-[trace] Installing attack table patch +2022-03-16 11:46:05.607 [inject]-[debug] Patches initialization completed. +2022-03-16 11:46:05.607 [inject]-[info ] YDWE startup complete. +2022-03-16 11:46:05.607 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:46:05.607 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:46:05.608 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:46:05.608 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:46:05.623 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:46:05.625 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:46:05.627 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:46:05.627 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:46:05.628 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:46:05.628 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:46:05.628 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:46:05.636 [lua]-[trace] Scanned file: 99 +2022-03-16 11:46:05.642 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:46:06.235 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:46:06.253 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:46:06.368 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:46:06.449 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:46:06.451 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:46:06.451 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:46:06.452 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:46:06.453 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:46:08.486 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:46:08.487 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:46:20.714 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 11:46:20.714 [lua]-[trace] Unload plugin YDClient. +2022-03-16 11:46:20.714 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 11:46:20.715 [lua]-[trace] Unload plugin Tesh. +2022-03-16 11:46:20.715 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 11:46:20.715 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 11:46:20.715 [inject]-[debug] IAT hook cleanup started. +2022-03-16 11:46:20.716 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 11:46:20.716 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 11:46:20.716 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 11:46:20.716 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 11:46:20.716 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 11:46:20.716 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 11:46:20.716 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 11:46:20.716 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 11:46:20.716 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 11:46:20.716 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 11:46:20.716 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 11:46:20.716 [event]-[info ] Main program exit. +2022-03-16 11:46:20.886 [root]-[info ] Script engine has been shut down. +2022-03-16 11:47:10.764 [root]-[info ] ------------------------------------------------------ +2022-03-16 11:47:10.770 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 11:47:10.770 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 11:47:10.770 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 11:47:10.770 [root]-[debug] Initialize script engine successfully. +2022-03-16 11:47:10.770 [root]-[info ] Script engine startup complete. +2022-03-16 11:47:10.770 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 11:47:10.771 [lua]-[trace] Initializing 'sys' +2022-03-16 11:47:10.772 [lua]-[trace] Initializing 'filesystem' +2022-03-16 11:47:10.773 [lua]-[trace] Initializing 'gui' +2022-03-16 11:47:10.774 [lua]-[trace] Initializing 'util' +2022-03-16 11:47:10.775 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 11:47:10.775 [lua]-[trace] Initializing 'ffi' +2022-03-16 11:47:10.776 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 11:47:10.777 [lua]-[trace] Initializing 'event' +2022-03-16 11:47:10.780 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 11:47:10.782 [lua]-[trace] Initializing 'registry' +2022-03-16 11:47:10.784 [lua]-[trace] Initializing 'version' +2022-03-16 11:47:10.784 [lua]-[trace] Initializing 'localization' +2022-03-16 11:47:10.784 [lua]-[trace] Initializing 'i18n' +2022-03-16 11:47:10.786 [lua]-[trace] Initializing 'config' +2022-03-16 11:47:10.786 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:47:10.786 [lua]-[trace] Initializing 'plugin' +2022-03-16 11:47:10.787 [lua]-[trace] Initializing 'uiloader' +2022-03-16 11:47:10.787 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 11:47:10.788 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 11:47:10.788 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 11:47:10.789 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 11:47:10.789 [lua]-[trace] Initializing 'lni-c' +2022-03-16 11:47:10.790 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 11:47:10.791 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 11:47:10.791 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 11:47:10.791 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 11:47:10.793 [lua]-[trace] Initializing 'check_object' +2022-03-16 11:47:10.794 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 11:47:10.794 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 11:47:10.795 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 11:47:10.795 [event]-[trace] RegisterEvent id: 7 +2022-03-16 11:47:10.796 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 11:47:10.796 [event]-[trace] RegisterEvent id: 5 +2022-03-16 11:47:10.796 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 11:47:10.796 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 11:47:10.797 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 11:47:10.797 [lua]-[trace] Initializing 'compile.template' +2022-03-16 11:47:10.798 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 11:47:10.798 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 11:47:10.798 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 11:47:10.799 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 11:47:10.799 [lua]-[trace] Initializing 'compile.native' +2022-03-16 11:47:10.800 [event]-[trace] RegisterEvent id: 3 +2022-03-16 11:47:10.800 [event]-[trace] RegisterEvent id: 2 +2022-03-16 11:47:10.800 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 11:47:10.800 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 11:47:10.801 [lua]-[trace] Initializing 'utility' +2022-03-16 11:47:10.801 [lua]-[trace] Initializing 'mapdump' +2022-03-16 11:47:10.802 [event]-[trace] RegisterEvent id: 4 +2022-03-16 11:47:10.802 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 11:47:10.802 [event]-[trace] RegisterEvent id: 0 +2022-03-16 11:47:10.802 [event]-[trace] RegisterEvent id: 1 +2022-03-16 11:47:10.802 [event]-[trace] RegisterEvent id: 6 +2022-03-16 11:47:10.802 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 11:47:10.963 [event]-[trace] RegisterEvent id: 8 +2022-03-16 11:47:10.963 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 11:47:10.964 [event]-[trace] RegisterEvent id: 9 +2022-03-16 11:47:10.964 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 11:47:11. 27 [event]-[info ] Entering main program. +2022-03-16 11:47:11. 27 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test2.w3x +2022-03-16 11:47:11. 29 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 11:47:11. 31 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 11:47:11. 31 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 11:47:11. 32 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:47:11. 32 [lua]-[trace] check_conflicting_ui +2022-03-16 11:47:11. 32 [lua]-[trace] check_conflicting_units +2022-03-16 11:47:11. 32 [lua]-[trace] clear_potential_conflicting +2022-03-16 11:47:11. 32 [lua]-[trace] check_war3_version +2022-03-16 11:47:11. 35 [lua]-[error] Cannot find war3.mpq +2022-03-16 11:47:11. 40 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 11:47:11. 53 [lua]-[debug] Tesh loaded successfully. +2022-03-16 11:47:11. 78 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 11:47:11. 80 [lua]-[debug] YDClient loaded successfully. +2022-03-16 11:47:11. 81 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 11:47:11. 81 [lua]-[warn ] failed: disable +2022-03-16 11:47:11. 82 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 11:47:11. 82 [lua]-[warn ] failed: disable +2022-03-16 11:47:11. 82 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 11:47:11. 83 [lua]-[warn ] failed: disable +2022-03-16 11:47:11. 83 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 11:47:11.150 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 11:47:11.154 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 11:47:11.156 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 11:47:11.156 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 11:47:11.157 [inject]-[debug] Start installing inline hooks. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 11:47:11.158 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 11:47:11.158 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 11:47:11.158 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 11:47:11.158 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 11:47:11.158 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 11:47:11.158 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 11:47:11.158 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 11:47:11.158 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 11:47:11.158 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 11:47:11.158 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 11:47:11.158 [inject]-[debug] Installing inline hooks complete. +2022-03-16 11:47:11.158 [inject]-[debug] IAT hook initialization started. +2022-03-16 11:47:11.158 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 11:47:11.158 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 11:47:11.158 [inject]-[debug] IAT hook initialization completed. +2022-03-16 11:47:11.158 [inject]-[debug] Patches initialization started. +2022-03-16 11:47:11.158 [inject]-[trace] Installing syntax check patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing auto disable patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing enable trigger check patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 11:47:11.158 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing doodad limit patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing unit/item limit patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 11:47:11.158 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 11:47:11.158 [inject]-[trace] Installing attack table patch +2022-03-16 11:47:11.159 [inject]-[debug] Patches initialization completed. +2022-03-16 11:47:11.159 [inject]-[info ] YDWE startup complete. +2022-03-16 11:47:11.159 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 11:47:11.159 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 11:47:11.159 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 11:47:11.160 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 11:47:11.176 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 11:47:11.178 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 11:47:11.180 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 11:47:11.180 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 11:47:11.181 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 11:47:11.181 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 11:47:11.181 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 11:47:11.190 [lua]-[trace] Scanned file: 99 +2022-03-16 11:47:11.195 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 11:47:11.791 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:47:11.808 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:47:11.930 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:47:12. 5 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 11:47:12. 6 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 11:47:12. 7 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 11:47:12. 8 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 11:47:12. 9 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 11:47:14. 35 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 11:47:14. 35 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 11:47:26.941 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:47:26.941 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:47:26.941 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 11:47:27.145 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 11:47:27.164 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 11:47:27.290 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 11:48:13.329 [event]-[trace] WE is about to compile maps. +2022-03-16 11:48:13.372 [lua]-[debug] ********************* on save start ********************* +2022-03-16 11:48:13.373 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:48:13.373 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 11:48:13.373 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 11:48:13.373 [lua]-[trace] mpq_util.update_file. +2022-03-16 11:48:13.375 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 11:48:13.375 [lua]-[trace] Processing file.out +2022-03-16 11:48:13.378 [lua]-[trace] Wave compilation start. +2022-03-16 11:48:13.857 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 11:48:14. 79 [lua]-[trace] Template compilation start. +2022-03-16 11:48:14. 82 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 11:48:14. 83 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 11:48:14. 85 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 11:48:14. 88 [lua]-[debug] Template compilation succeeded. +2022-03-16 11:48:14. 92 [lua]-[trace] JassHelper compilation start. +2022-03-16 11:48:15.661 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 11:48:15.663 [lua]-[debug] Result false +2022-03-16 11:48:15.663 [lua]-[debug] ********************* on save end ********************* +2022-03-16 11:55:33.101 [event]-[trace] WE is about to compile maps. +2022-03-16 11:55:33.225 [lua]-[debug] ********************* on save start ********************* +2022-03-16 11:55:33.226 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 11:55:33.226 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 11:55:33.226 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 11:55:33.226 [lua]-[trace] mpq_util.update_file. +2022-03-16 11:55:33.227 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 11:55:33.227 [lua]-[trace] Processing file.out +2022-03-16 11:55:33.230 [lua]-[trace] Wave compilation start. +2022-03-16 11:55:34.145 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 11:55:34.613 [lua]-[trace] Template compilation start. +2022-03-16 11:55:34.618 [lua]-[debug] Template compilation succeeded. +2022-03-16 11:55:34.621 [lua]-[trace] JassHelper compilation start. +2022-03-16 11:55:36.480 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 11:55:36.487 [lua]-[debug] Result false +2022-03-16 11:55:36.487 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:03:55.159 [root]-[info ] ------------------------------------------------------ +2022-03-16 12:03:55.165 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 12:03:55.165 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 12:03:55.165 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 12:03:55.165 [root]-[debug] Initialize script engine successfully. +2022-03-16 12:03:55.165 [root]-[info ] Script engine startup complete. +2022-03-16 12:03:55.174 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 12:03:55.175 [lua]-[trace] Initializing 'sys' +2022-03-16 12:03:55.177 [lua]-[trace] Initializing 'filesystem' +2022-03-16 12:03:55.179 [lua]-[trace] Initializing 'gui' +2022-03-16 12:03:55.180 [lua]-[trace] Initializing 'util' +2022-03-16 12:03:55.182 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 12:03:55.182 [lua]-[trace] Initializing 'ffi' +2022-03-16 12:03:55.185 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 12:03:55.185 [lua]-[trace] Initializing 'event' +2022-03-16 12:03:55.219 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 12:03:55.221 [lua]-[trace] Initializing 'registry' +2022-03-16 12:03:55.223 [lua]-[trace] Initializing 'version' +2022-03-16 12:03:55.223 [lua]-[trace] Initializing 'localization' +2022-03-16 12:03:55.224 [lua]-[trace] Initializing 'i18n' +2022-03-16 12:03:55.226 [lua]-[trace] Initializing 'config' +2022-03-16 12:03:55.242 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:03:55.242 [lua]-[trace] Initializing 'plugin' +2022-03-16 12:03:55.243 [lua]-[trace] Initializing 'uiloader' +2022-03-16 12:03:55.244 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 12:03:55.244 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 12:03:55.245 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 12:03:55.246 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 12:03:55.246 [lua]-[trace] Initializing 'lni-c' +2022-03-16 12:03:55.251 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 12:03:55.252 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 12:03:55.253 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 12:03:55.254 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 12:03:55.256 [lua]-[trace] Initializing 'check_object' +2022-03-16 12:03:55.266 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 12:03:55.267 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 12:03:55.268 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 12:03:55.268 [event]-[trace] RegisterEvent id: 7 +2022-03-16 12:03:55.269 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 12:03:55.269 [event]-[trace] RegisterEvent id: 5 +2022-03-16 12:03:55.269 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 12:03:55.270 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 12:03:55.271 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 12:03:55.272 [lua]-[trace] Initializing 'compile.template' +2022-03-16 12:03:55.273 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 12:03:55.273 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 12:03:55.274 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 12:03:55.274 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 12:03:55.276 [lua]-[trace] Initializing 'compile.native' +2022-03-16 12:03:55.276 [event]-[trace] RegisterEvent id: 3 +2022-03-16 12:03:55.276 [event]-[trace] RegisterEvent id: 2 +2022-03-16 12:03:55.276 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 12:03:55.277 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 12:03:55.289 [lua]-[trace] Initializing 'utility' +2022-03-16 12:03:55.290 [lua]-[trace] Initializing 'mapdump' +2022-03-16 12:03:55.290 [event]-[trace] RegisterEvent id: 4 +2022-03-16 12:03:55.290 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 12:03:55.291 [event]-[trace] RegisterEvent id: 0 +2022-03-16 12:03:55.291 [event]-[trace] RegisterEvent id: 1 +2022-03-16 12:03:55.291 [event]-[trace] RegisterEvent id: 6 +2022-03-16 12:03:55.291 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 12:03:55.461 [event]-[trace] RegisterEvent id: 8 +2022-03-16 12:03:55.461 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 12:03:55.462 [event]-[trace] RegisterEvent id: 9 +2022-03-16 12:03:55.462 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 12:03:55.543 [event]-[info ] Entering main program. +2022-03-16 12:03:55.543 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:03:55.545 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 12:03:55.589 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 12:03:55.589 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 12:03:55.590 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:03:55.590 [lua]-[trace] check_conflicting_ui +2022-03-16 12:03:55.590 [lua]-[trace] check_conflicting_units +2022-03-16 12:03:55.590 [lua]-[trace] clear_potential_conflicting +2022-03-16 12:03:55.590 [lua]-[trace] check_war3_version +2022-03-16 12:03:55.609 [lua]-[error] Cannot find war3.mpq +2022-03-16 12:03:55.640 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 12:03:55.678 [lua]-[debug] Tesh loaded successfully. +2022-03-16 12:03:55.770 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 12:03:55.782 [lua]-[debug] YDClient loaded successfully. +2022-03-16 12:03:55.783 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 12:03:55.784 [lua]-[warn ] failed: disable +2022-03-16 12:03:55.784 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 12:03:55.785 [lua]-[warn ] failed: disable +2022-03-16 12:03:55.785 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 12:03:55.786 [lua]-[warn ] failed: disable +2022-03-16 12:03:55.786 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 12:03:55.902 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 12:03:55.908 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 12:03:55.912 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 12:03:55.912 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 12:03:55.914 [inject]-[debug] Start installing inline hooks. +2022-03-16 12:03:55.915 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 12:03:55.915 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 12:03:55.915 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 12:03:55.915 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 12:03:55.915 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 12:03:55.915 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 12:03:55.915 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 12:03:55.915 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 12:03:55.915 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 12:03:55.915 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 12:03:55.915 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 12:03:55.916 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 12:03:55.916 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 12:03:55.916 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 12:03:55.916 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 12:03:55.916 [inject]-[debug] Installing inline hooks complete. +2022-03-16 12:03:55.916 [inject]-[debug] IAT hook initialization started. +2022-03-16 12:03:55.916 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 12:03:55.916 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 12:03:55.916 [inject]-[debug] IAT hook initialization completed. +2022-03-16 12:03:55.916 [inject]-[debug] Patches initialization started. +2022-03-16 12:03:55.916 [inject]-[trace] Installing syntax check patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing auto disable patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing enable trigger check patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 12:03:55.916 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing doodad limit patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing unit/item limit patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 12:03:55.916 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 12:03:55.916 [inject]-[trace] Installing attack table patch +2022-03-16 12:03:55.916 [inject]-[debug] Patches initialization completed. +2022-03-16 12:03:55.916 [inject]-[info ] YDWE startup complete. +2022-03-16 12:03:55.916 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 12:03:55.917 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 12:03:55.917 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 12:03:55.918 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 12:03:55.960 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 12:03:55.963 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 12:03:55.965 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 12:03:55.966 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 12:03:55.966 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 12:03:55.966 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 12:03:55.967 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 12:03:55.977 [lua]-[trace] Scanned file: 99 +2022-03-16 12:03:55.985 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 12:03:56.756 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:03:56.774 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:03:56.966 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:03:57.131 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 12:03:57.133 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 12:03:57.134 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 12:03:57.136 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 12:03:57.137 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 12:03:59.243 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 12:03:59.244 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 12:04:09. 0 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:04:09. 0 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:04:09. 0 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:04:09.213 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:04:09.235 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:04:09.361 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:06:15.407 [event]-[trace] WE is about to compile maps. +2022-03-16 12:06:15.533 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:06:15.535 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:06:15.536 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:06:15.536 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:06:15.536 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:06:15.537 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:06:15.537 [lua]-[trace] Processing file.out +2022-03-16 12:06:15.540 [lua]-[trace] Wave compilation start. +2022-03-16 12:06:16. 50 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:06:16.461 [lua]-[trace] Template compilation start. +2022-03-16 12:06:16.463 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 12:06:16.467 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 12:06:16.468 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 12:06:16.471 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:06:16.474 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:06:18.127 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:06:18.129 [lua]-[debug] Result false +2022-03-16 12:06:18.129 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:08:23.801 [root]-[info ] ------------------------------------------------------ +2022-03-16 12:08:23.807 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 12:08:23.807 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 12:08:23.807 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 12:08:23.808 [root]-[debug] Initialize script engine successfully. +2022-03-16 12:08:23.808 [root]-[info ] Script engine startup complete. +2022-03-16 12:08:23.808 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 12:08:23.808 [lua]-[trace] Initializing 'sys' +2022-03-16 12:08:23.810 [lua]-[trace] Initializing 'filesystem' +2022-03-16 12:08:23.811 [lua]-[trace] Initializing 'gui' +2022-03-16 12:08:23.812 [lua]-[trace] Initializing 'util' +2022-03-16 12:08:23.813 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 12:08:23.813 [lua]-[trace] Initializing 'ffi' +2022-03-16 12:08:23.814 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 12:08:23.815 [lua]-[trace] Initializing 'event' +2022-03-16 12:08:23.818 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 12:08:23.820 [lua]-[trace] Initializing 'registry' +2022-03-16 12:08:23.821 [lua]-[trace] Initializing 'version' +2022-03-16 12:08:23.822 [lua]-[trace] Initializing 'localization' +2022-03-16 12:08:23.822 [lua]-[trace] Initializing 'i18n' +2022-03-16 12:08:23.823 [lua]-[trace] Initializing 'config' +2022-03-16 12:08:23.824 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:08:23.824 [lua]-[trace] Initializing 'plugin' +2022-03-16 12:08:23.825 [lua]-[trace] Initializing 'uiloader' +2022-03-16 12:08:23.825 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 12:08:23.826 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 12:08:23.826 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 12:08:23.826 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 12:08:23.827 [lua]-[trace] Initializing 'lni-c' +2022-03-16 12:08:23.828 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 12:08:23.828 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 12:08:23.829 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 12:08:23.829 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 12:08:23.831 [lua]-[trace] Initializing 'check_object' +2022-03-16 12:08:23.832 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 12:08:23.833 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 12:08:23.833 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 12:08:23.834 [event]-[trace] RegisterEvent id: 7 +2022-03-16 12:08:23.834 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 12:08:23.834 [event]-[trace] RegisterEvent id: 5 +2022-03-16 12:08:23.834 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 12:08:23.835 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 12:08:23.836 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 12:08:23.836 [lua]-[trace] Initializing 'compile.template' +2022-03-16 12:08:23.836 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 12:08:23.837 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 12:08:23.837 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 12:08:23.837 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 12:08:23.838 [lua]-[trace] Initializing 'compile.native' +2022-03-16 12:08:23.838 [event]-[trace] RegisterEvent id: 3 +2022-03-16 12:08:23.838 [event]-[trace] RegisterEvent id: 2 +2022-03-16 12:08:23.838 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 12:08:23.839 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 12:08:23.840 [lua]-[trace] Initializing 'utility' +2022-03-16 12:08:23.840 [lua]-[trace] Initializing 'mapdump' +2022-03-16 12:08:23.840 [event]-[trace] RegisterEvent id: 4 +2022-03-16 12:08:23.840 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 12:08:23.841 [event]-[trace] RegisterEvent id: 0 +2022-03-16 12:08:23.841 [event]-[trace] RegisterEvent id: 1 +2022-03-16 12:08:23.841 [event]-[trace] RegisterEvent id: 6 +2022-03-16 12:08:23.841 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 12:08:24. 4 [event]-[trace] RegisterEvent id: 8 +2022-03-16 12:08:24. 4 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 12:08:24. 4 [event]-[trace] RegisterEvent id: 9 +2022-03-16 12:08:24. 4 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 12:08:24. 79 [event]-[info ] Entering main program. +2022-03-16 12:08:24. 79 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:08:24. 82 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 12:08:24. 84 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 12:08:24. 84 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 12:08:24. 85 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:08:24. 85 [lua]-[trace] check_conflicting_ui +2022-03-16 12:08:24. 85 [lua]-[trace] check_conflicting_units +2022-03-16 12:08:24. 85 [lua]-[trace] clear_potential_conflicting +2022-03-16 12:08:24. 85 [lua]-[trace] check_war3_version +2022-03-16 12:08:24. 88 [lua]-[error] Cannot find war3.mpq +2022-03-16 12:08:24. 92 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 12:08:24.106 [lua]-[debug] Tesh loaded successfully. +2022-03-16 12:08:24.133 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 12:08:24.134 [lua]-[debug] YDClient loaded successfully. +2022-03-16 12:08:24.134 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 12:08:24.135 [lua]-[warn ] failed: disable +2022-03-16 12:08:24.135 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 12:08:24.136 [lua]-[warn ] failed: disable +2022-03-16 12:08:24.136 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 12:08:24.137 [lua]-[warn ] failed: disable +2022-03-16 12:08:24.137 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 12:08:24.213 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 12:08:24.217 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 12:08:24.219 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 12:08:24.219 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 12:08:24.221 [inject]-[debug] Start installing inline hooks. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 12:08:24.221 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 12:08:24.221 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 12:08:24.221 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 12:08:24.221 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 12:08:24.221 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 12:08:24.221 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 12:08:24.221 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 12:08:24.221 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 12:08:24.222 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 12:08:24.222 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 12:08:24.222 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 12:08:24.222 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 12:08:24.222 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 12:08:24.222 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 12:08:24.222 [inject]-[debug] Installing inline hooks complete. +2022-03-16 12:08:24.222 [inject]-[debug] IAT hook initialization started. +2022-03-16 12:08:24.222 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 12:08:24.222 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 12:08:24.222 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 12:08:24.222 [inject]-[debug] IAT hook initialization completed. +2022-03-16 12:08:24.222 [inject]-[debug] Patches initialization started. +2022-03-16 12:08:24.222 [inject]-[trace] Installing syntax check patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing auto disable patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing enable trigger check patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 12:08:24.222 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing doodad limit patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing unit/item limit patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 12:08:24.222 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 12:08:24.222 [inject]-[trace] Installing attack table patch +2022-03-16 12:08:24.222 [inject]-[debug] Patches initialization completed. +2022-03-16 12:08:24.222 [inject]-[info ] YDWE startup complete. +2022-03-16 12:08:24.222 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 12:08:24.223 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 12:08:24.223 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 12:08:24.223 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 12:08:24.239 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 12:08:24.241 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 12:08:24.243 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 12:08:24.244 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 12:08:24.244 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 12:08:24.244 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 12:08:24.244 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 12:08:24.253 [lua]-[trace] Scanned file: 99 +2022-03-16 12:08:24.259 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 12:08:24.842 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:08:24.861 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:08:24.980 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:08:25. 67 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 12:08:25. 69 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 12:08:25. 70 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 12:08:25. 70 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 12:08:25. 71 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 12:08:27.156 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 12:08:27.156 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 12:08:36.638 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:08:36.638 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:08:36.638 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:08:36.852 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:08:36.881 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:08:37. 13 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:10:08.350 [event]-[trace] WE is about to compile maps. +2022-03-16 12:10:08.482 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:10:08.482 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:10:08.482 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:10:08.482 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:10:08.482 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:10:08.483 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:10:08.483 [lua]-[trace] Processing file.out +2022-03-16 12:10:08.486 [lua]-[trace] Wave compilation start. +2022-03-16 12:10:08.986 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:10:09.209 [lua]-[trace] Template compilation start. +2022-03-16 12:10:09.210 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 12:10:09.211 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 12:10:09.211 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 12:10:09.213 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:10:09.216 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:10:10.937 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:10:10.941 [lua]-[debug] Result false +2022-03-16 12:10:10.941 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:13:00.581 [root]-[info ] ------------------------------------------------------ +2022-03-16 12:13:00.587 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 12:13:00.587 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 12:13:00.587 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 12:13:00.588 [root]-[debug] Initialize script engine successfully. +2022-03-16 12:13:00.588 [root]-[info ] Script engine startup complete. +2022-03-16 12:13:00.588 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 12:13:00.589 [lua]-[trace] Initializing 'sys' +2022-03-16 12:13:00.590 [lua]-[trace] Initializing 'filesystem' +2022-03-16 12:13:00.592 [lua]-[trace] Initializing 'gui' +2022-03-16 12:13:00.594 [lua]-[trace] Initializing 'util' +2022-03-16 12:13:00.595 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 12:13:00.596 [lua]-[trace] Initializing 'ffi' +2022-03-16 12:13:00.598 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 12:13:00.598 [lua]-[trace] Initializing 'event' +2022-03-16 12:13:00.619 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 12:13:00.622 [lua]-[trace] Initializing 'registry' +2022-03-16 12:13:00.624 [lua]-[trace] Initializing 'version' +2022-03-16 12:13:00.624 [lua]-[trace] Initializing 'localization' +2022-03-16 12:13:00.625 [lua]-[trace] Initializing 'i18n' +2022-03-16 12:13:00.627 [lua]-[trace] Initializing 'config' +2022-03-16 12:13:00.642 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:13:00.642 [lua]-[trace] Initializing 'plugin' +2022-03-16 12:13:00.643 [lua]-[trace] Initializing 'uiloader' +2022-03-16 12:13:00.644 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 12:13:00.644 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 12:13:00.644 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 12:13:00.645 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 12:13:00.646 [lua]-[trace] Initializing 'lni-c' +2022-03-16 12:13:00.649 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 12:13:00.650 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 12:13:00.650 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 12:13:00.651 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 12:13:00.654 [lua]-[trace] Initializing 'check_object' +2022-03-16 12:13:00.664 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 12:13:00.665 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 12:13:00.666 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 12:13:00.667 [event]-[trace] RegisterEvent id: 7 +2022-03-16 12:13:00.667 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 12:13:00.668 [event]-[trace] RegisterEvent id: 5 +2022-03-16 12:13:00.668 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 12:13:00.670 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 12:13:00.671 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 12:13:00.672 [lua]-[trace] Initializing 'compile.template' +2022-03-16 12:13:00.673 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 12:13:00.674 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 12:13:00.675 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 12:13:00.675 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 12:13:00.677 [lua]-[trace] Initializing 'compile.native' +2022-03-16 12:13:00.679 [event]-[trace] RegisterEvent id: 3 +2022-03-16 12:13:00.679 [event]-[trace] RegisterEvent id: 2 +2022-03-16 12:13:00.679 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 12:13:00.680 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 12:13:00.681 [lua]-[trace] Initializing 'utility' +2022-03-16 12:13:00.681 [lua]-[trace] Initializing 'mapdump' +2022-03-16 12:13:00.683 [event]-[trace] RegisterEvent id: 4 +2022-03-16 12:13:00.683 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 12:13:00.684 [event]-[trace] RegisterEvent id: 0 +2022-03-16 12:13:00.684 [event]-[trace] RegisterEvent id: 1 +2022-03-16 12:13:00.684 [event]-[trace] RegisterEvent id: 6 +2022-03-16 12:13:00.684 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 12:13:00.850 [event]-[trace] RegisterEvent id: 8 +2022-03-16 12:13:00.850 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 12:13:00.851 [event]-[trace] RegisterEvent id: 9 +2022-03-16 12:13:00.851 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 12:13:00.911 [event]-[info ] Entering main program. +2022-03-16 12:13:00.911 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:13:00.915 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 12:13:00.952 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 12:13:00.952 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 12:13:00.952 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:13:00.952 [lua]-[trace] check_conflicting_ui +2022-03-16 12:13:00.952 [lua]-[trace] check_conflicting_units +2022-03-16 12:13:00.953 [lua]-[trace] clear_potential_conflicting +2022-03-16 12:13:00.953 [lua]-[trace] check_war3_version +2022-03-16 12:13:00.970 [lua]-[error] Cannot find war3.mpq +2022-03-16 12:13:00.999 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 12:13:01. 45 [lua]-[debug] Tesh loaded successfully. +2022-03-16 12:13:01.112 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 12:13:01.125 [lua]-[debug] YDClient loaded successfully. +2022-03-16 12:13:01.125 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 12:13:01.126 [lua]-[warn ] failed: disable +2022-03-16 12:13:01.126 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 12:13:01.127 [lua]-[warn ] failed: disable +2022-03-16 12:13:01.128 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 12:13:01.128 [lua]-[warn ] failed: disable +2022-03-16 12:13:01.128 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 12:13:01.203 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 12:13:01.208 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 12:13:01.210 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 12:13:01.210 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 12:13:01.212 [inject]-[debug] Start installing inline hooks. +2022-03-16 12:13:01.212 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 12:13:01.212 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 12:13:01.212 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 12:13:01.212 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 12:13:01.212 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 12:13:01.212 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 12:13:01.212 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 12:13:01.212 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 12:13:01.212 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 12:13:01.213 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 12:13:01.213 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 12:13:01.213 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 12:13:01.213 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 12:13:01.213 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 12:13:01.213 [inject]-[debug] Installing inline hooks complete. +2022-03-16 12:13:01.213 [inject]-[debug] IAT hook initialization started. +2022-03-16 12:13:01.213 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 12:13:01.213 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 12:13:01.213 [inject]-[debug] IAT hook initialization completed. +2022-03-16 12:13:01.213 [inject]-[debug] Patches initialization started. +2022-03-16 12:13:01.213 [inject]-[trace] Installing syntax check patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing auto disable patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing enable trigger check patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 12:13:01.213 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing doodad limit patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing unit/item limit patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 12:13:01.213 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 12:13:01.213 [inject]-[trace] Installing attack table patch +2022-03-16 12:13:01.213 [inject]-[debug] Patches initialization completed. +2022-03-16 12:13:01.213 [inject]-[info ] YDWE startup complete. +2022-03-16 12:13:01.213 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 12:13:01.214 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 12:13:01.214 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 12:13:01.214 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 12:13:01.234 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 12:13:01.237 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 12:13:01.239 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 12:13:01.240 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 12:13:01.240 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 12:13:01.241 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 12:13:01.241 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 12:13:01.252 [lua]-[trace] Scanned file: 99 +2022-03-16 12:13:01.259 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 12:13:02. 4 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:13:02. 25 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:13:02.199 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:13:02.342 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 12:13:02.353 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 12:13:02.355 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 12:13:02.356 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 12:13:02.358 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 12:13:04.662 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 12:13:04.663 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 12:13:14.660 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:13:14.660 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:13:14.660 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:13:14.900 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:13:14.921 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:13:15. 52 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:22:43.571 [event]-[trace] WE is about to compile maps. +2022-03-16 12:22:43.692 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:22:43.701 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:22:43.701 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:22:43.701 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:22:43.701 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:22:43.711 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:22:43.711 [lua]-[trace] Processing file.out +2022-03-16 12:22:43.714 [lua]-[trace] Wave compilation start. +2022-03-16 12:22:44.282 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:22:44.612 [lua]-[trace] Template compilation start. +2022-03-16 12:22:44.614 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 12:22:44.663 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 12:22:44.709 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 12:22:44.712 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:22:44.716 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:22:46.817 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:22:46.819 [lua]-[debug] Result false +2022-03-16 12:22:46.819 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:25:13.850 [event]-[trace] WE is about to compile maps. +2022-03-16 12:25:13.973 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:25:13.974 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:25:13.974 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:25:13.974 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:25:13.974 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:25:13.975 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:25:13.975 [lua]-[trace] Processing file.out +2022-03-16 12:25:13.979 [lua]-[trace] Wave compilation start. +2022-03-16 12:25:14.526 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:25:14.798 [lua]-[trace] Template compilation start. +2022-03-16 12:25:14.802 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:25:14.806 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:25:16.754 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:25:16.755 [lua]-[debug] Result false +2022-03-16 12:25:16.755 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:25:31.285 [event]-[trace] WE is about to compile maps. +2022-03-16 12:25:31.414 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:25:31.415 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:25:31.415 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:25:31.415 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:25:31.415 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:25:31.416 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:25:31.416 [lua]-[trace] Processing file.out +2022-03-16 12:25:31.418 [lua]-[trace] Wave compilation start. +2022-03-16 12:25:31.909 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:25:32.126 [lua]-[trace] Template compilation start. +2022-03-16 12:25:32.128 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:25:32.131 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:25:34.443 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:25:34.445 [lua]-[debug] Result false +2022-03-16 12:25:34.445 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:33:58.863 [event]-[trace] WE is about to compile maps. +2022-03-16 12:33:59. 0 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:33:59. 11 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:33:59. 12 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:33:59. 12 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:33:59. 12 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:33:59. 14 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:33:59. 14 [lua]-[trace] Processing file.out +2022-03-16 12:33:59. 17 [lua]-[trace] Wave compilation start. +2022-03-16 12:33:59.526 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:33:59.771 [lua]-[trace] Template compilation start. +2022-03-16 12:33:59.807 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:33:59.810 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:34:02.265 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:34:02.265 [lua]-[debug] Result false +2022-03-16 12:34:02.265 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:34:42.290 [event]-[trace] WE is about to compile maps. +2022-03-16 12:34:42.405 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:34:42.406 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:34:42.406 [lua]-[trace] Saving C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:34:42.406 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:34:42.406 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:34:42.407 [lua]-[trace] war3map.j has been extracted from test2.w3x +2022-03-16 12:34:42.407 [lua]-[trace] Processing file.out +2022-03-16 12:34:42.409 [lua]-[trace] Wave compilation start. +2022-03-16 12:34:42.890 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:34:43.169 [lua]-[trace] Template compilation start. +2022-03-16 12:34:43.173 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:34:43.175 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:34:45.445 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\test2.w3x", returned 1 +2022-03-16 12:34:45.447 [lua]-[debug] Result false +2022-03-16 12:34:45.447 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:38:21.773 [root]-[info ] ------------------------------------------------------ +2022-03-16 12:38:21.778 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 12:38:21.778 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 12:38:21.778 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 12:38:21.779 [root]-[debug] Initialize script engine successfully. +2022-03-16 12:38:21.780 [root]-[info ] Script engine startup complete. +2022-03-16 12:38:21.784 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 12:38:21.784 [lua]-[trace] Initializing 'sys' +2022-03-16 12:38:21.787 [lua]-[trace] Initializing 'filesystem' +2022-03-16 12:38:21.789 [lua]-[trace] Initializing 'gui' +2022-03-16 12:38:21.791 [lua]-[trace] Initializing 'util' +2022-03-16 12:38:21.792 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 12:38:21.795 [lua]-[trace] Initializing 'ffi' +2022-03-16 12:38:21.798 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 12:38:21.798 [lua]-[trace] Initializing 'event' +2022-03-16 12:38:21.805 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 12:38:21.810 [lua]-[trace] Initializing 'registry' +2022-03-16 12:38:21.812 [lua]-[trace] Initializing 'version' +2022-03-16 12:38:21.829 [lua]-[trace] Initializing 'localization' +2022-03-16 12:38:21.829 [lua]-[trace] Initializing 'i18n' +2022-03-16 12:38:21.832 [lua]-[trace] Initializing 'config' +2022-03-16 12:38:21.833 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:38:21.833 [lua]-[trace] Initializing 'plugin' +2022-03-16 12:38:21.834 [lua]-[trace] Initializing 'uiloader' +2022-03-16 12:38:21.835 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 12:38:21.835 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 12:38:21.835 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 12:38:21.836 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 12:38:21.837 [lua]-[trace] Initializing 'lni-c' +2022-03-16 12:38:21.839 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 12:38:21.839 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 12:38:21.840 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 12:38:21.840 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 12:38:21.843 [lua]-[trace] Initializing 'check_object' +2022-03-16 12:38:21.851 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 12:38:21.852 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 12:38:21.852 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 12:38:21.853 [event]-[trace] RegisterEvent id: 7 +2022-03-16 12:38:21.854 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 12:38:21.855 [event]-[trace] RegisterEvent id: 5 +2022-03-16 12:38:21.855 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 12:38:21.855 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 12:38:21.857 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 12:38:21.857 [lua]-[trace] Initializing 'compile.template' +2022-03-16 12:38:21.859 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 12:38:21.859 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 12:38:21.860 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 12:38:21.860 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 12:38:21.861 [lua]-[trace] Initializing 'compile.native' +2022-03-16 12:38:21.861 [event]-[trace] RegisterEvent id: 3 +2022-03-16 12:38:21.861 [event]-[trace] RegisterEvent id: 2 +2022-03-16 12:38:21.861 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 12:38:21.862 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 12:38:21.863 [lua]-[trace] Initializing 'utility' +2022-03-16 12:38:21.863 [lua]-[trace] Initializing 'mapdump' +2022-03-16 12:38:21.865 [event]-[trace] RegisterEvent id: 4 +2022-03-16 12:38:21.865 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 12:38:21.866 [event]-[trace] RegisterEvent id: 0 +2022-03-16 12:38:21.866 [event]-[trace] RegisterEvent id: 1 +2022-03-16 12:38:21.866 [event]-[trace] RegisterEvent id: 6 +2022-03-16 12:38:21.866 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 12:38:22. 23 [event]-[trace] RegisterEvent id: 8 +2022-03-16 12:38:22. 23 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 12:38:22. 24 [event]-[trace] RegisterEvent id: 9 +2022-03-16 12:38:22. 24 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 12:38:22.111 [event]-[info ] Entering main program. +2022-03-16 12:38:22.111 [event]-[debug] Command line: -loadfile C:\Users\mayn\Desktop\test2.w3x +2022-03-16 12:38:22.114 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 12:38:22.154 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 12:38:22.154 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 12:38:22.155 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:38:22.155 [lua]-[trace] check_conflicting_ui +2022-03-16 12:38:22.155 [lua]-[trace] check_conflicting_units +2022-03-16 12:38:22.155 [lua]-[trace] clear_potential_conflicting +2022-03-16 12:38:22.156 [lua]-[trace] check_war3_version +2022-03-16 12:38:22.184 [lua]-[error] Cannot find war3.mpq +2022-03-16 12:38:22.189 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 12:38:22.238 [lua]-[debug] Tesh loaded successfully. +2022-03-16 12:38:22.278 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 12:38:22.281 [lua]-[debug] YDClient loaded successfully. +2022-03-16 12:38:22.281 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 12:38:22.282 [lua]-[warn ] failed: disable +2022-03-16 12:38:22.282 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 12:38:22.283 [lua]-[warn ] failed: disable +2022-03-16 12:38:22.283 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 12:38:22.284 [lua]-[warn ] failed: disable +2022-03-16 12:38:22.284 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 12:38:22.428 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 12:38:22.433 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 12:38:22.437 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 12:38:22.437 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 12:38:22.440 [inject]-[debug] Start installing inline hooks. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 12:38:22.440 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 12:38:22.440 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 12:38:22.440 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 12:38:22.440 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 12:38:22.440 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 12:38:22.440 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 12:38:22.440 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 12:38:22.440 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 12:38:22.440 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 12:38:22.441 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 12:38:22.441 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 12:38:22.441 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 12:38:22.441 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 12:38:22.441 [inject]-[debug] Installing inline hooks complete. +2022-03-16 12:38:22.441 [inject]-[debug] IAT hook initialization started. +2022-03-16 12:38:22.441 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 12:38:22.441 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 12:38:22.441 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 12:38:22.441 [inject]-[debug] IAT hook initialization completed. +2022-03-16 12:38:22.441 [inject]-[debug] Patches initialization started. +2022-03-16 12:38:22.441 [inject]-[trace] Installing syntax check patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing auto disable patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing enable trigger check patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 12:38:22.441 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing doodad limit patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing unit/item limit patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 12:38:22.441 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 12:38:22.441 [inject]-[trace] Installing attack table patch +2022-03-16 12:38:22.441 [inject]-[debug] Patches initialization completed. +2022-03-16 12:38:22.441 [inject]-[info ] YDWE startup complete. +2022-03-16 12:38:22.441 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 12:38:22.442 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 12:38:22.442 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 12:38:22.442 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 12:38:22.459 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 12:38:22.462 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 12:38:22.464 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 12:38:22.464 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 12:38:22.465 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 12:38:22.465 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 12:38:22.465 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 12:38:22.475 [lua]-[trace] Scanned file: 99 +2022-03-16 12:38:22.492 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 12:38:23.395 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:38:23.435 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:38:23.595 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:38:23.800 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 12:38:23.821 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 12:38:23.823 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 12:38:23.825 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 12:38:23.826 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 12:38:25.974 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 12:38:25.974 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 12:38:35.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:38:35.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:38:35.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 12:38:36.124 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 12:38:36.143 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 12:38:36.263 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 12:40:58.527 [event]-[trace] WE is about to compile maps. +2022-03-16 12:41:01.334 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:41:01.354 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:41:01.354 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 12:41:01.354 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:41:01.354 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:41:01.356 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 12:41:01.356 [lua]-[trace] Processing file.out +2022-03-16 12:41:01.368 [lua]-[trace] Writing code to file.out +2022-03-16 12:41:01.369 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 12:41:01.397 [lua]-[trace] Injection completed +2022-03-16 12:41:01.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 12:41:01.406 [lua]-[trace] Injection completed +2022-03-16 12:41:01.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 12:41:01.408 [lua]-[trace] Injection completed +2022-03-16 12:41:01.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 12:41:01.419 [lua]-[trace] Injection completed +2022-03-16 12:41:01.420 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 12:41:01.430 [lua]-[trace] Injection completed +2022-03-16 12:41:01.430 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 12:41:01.440 [lua]-[trace] Injection completed +2022-03-16 12:41:01.440 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 12:41:01.463 [lua]-[trace] Injection completed +2022-03-16 12:41:01.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 12:41:01.473 [lua]-[trace] Injection completed +2022-03-16 12:41:01.473 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 12:41:01.485 [lua]-[trace] Injection completed +2022-03-16 12:41:01.485 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 12:41:01.541 [lua]-[trace] Injection completed +2022-03-16 12:41:01.541 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 12:41:01.549 [lua]-[trace] Injection completed +2022-03-16 12:41:01.549 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 12:41:01.561 [lua]-[trace] Injection completed +2022-03-16 12:41:01.561 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 12:41:01.573 [lua]-[trace] Injection completed +2022-03-16 12:41:01.573 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 12:41:01.583 [lua]-[trace] Injection completed +2022-03-16 12:41:01.583 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 12:41:01.593 [lua]-[trace] Injection completed +2022-03-16 12:41:01.593 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 12:41:01.607 [lua]-[trace] Injection completed +2022-03-16 12:41:01.607 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 12:41:01.616 [lua]-[trace] Injection completed +2022-03-16 12:41:01.616 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 12:41:01.627 [lua]-[trace] Injection completed +2022-03-16 12:41:01.627 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 12:41:01.638 [lua]-[trace] Injection completed +2022-03-16 12:41:01.638 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 12:41:01.649 [lua]-[trace] Injection completed +2022-03-16 12:41:01.649 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 12:41:01.660 [lua]-[trace] Injection completed +2022-03-16 12:41:01.660 [lua]-[trace] Wave compilation start. +2022-03-16 12:41:02.146 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:41:04.213 [lua]-[trace] Template compilation start. +2022-03-16 12:41:04.284 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 12:41:04.302 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 12:41:04.304 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 12:41:04.326 [lua]-[trace] Initializing 'slk' +2022-03-16 12:41:04.790 [lua]-[trace] Initializing 'archive' +2022-03-16 12:41:04.807 [lua]-[trace] Initializing 'archive_mpq' +2022-03-16 12:41:04.808 [lua]-[trace] Initializing 'archive_dir' +2022-03-16 12:41:04.809 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-16 12:41:04.809 [lua]-[trace] Initializing 'progress' +2022-03-16 12:41:04.810 [lua]-[trace] Initializing 'slk.frontend' +2022-03-16 12:41:04.812 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-16 12:41:04.812 [lua]-[trace] Initializing 'lpeg' +2022-03-16 12:41:04.853 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-16 12:41:05. 69 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-16 12:41:05. 90 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-16 12:41:05.333 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-16 12:41:05.371 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:41:05.412 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:41:11.230 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 12:41:11.232 [lua]-[debug] Result false +2022-03-16 12:41:11.232 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:42:56.573 [event]-[trace] WE is about to compile maps. +2022-03-16 12:42:59.140 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:42:59.162 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:42:59.162 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 12:42:59.162 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:42:59.162 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:42:59.166 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 12:42:59.166 [lua]-[trace] Processing file.out +2022-03-16 12:42:59.180 [lua]-[trace] Writing code to file.out +2022-03-16 12:42:59.181 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 12:42:59.195 [lua]-[trace] Injection completed +2022-03-16 12:42:59.195 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 12:42:59.203 [lua]-[trace] Injection completed +2022-03-16 12:42:59.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 12:42:59.206 [lua]-[trace] Injection completed +2022-03-16 12:42:59.206 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 12:42:59.206 [lua]-[trace] Injection completed +2022-03-16 12:42:59.206 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 12:42:59.208 [lua]-[trace] Injection completed +2022-03-16 12:42:59.208 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 12:42:59.209 [lua]-[trace] Injection completed +2022-03-16 12:42:59.209 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 12:42:59.210 [lua]-[trace] Injection completed +2022-03-16 12:42:59.210 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 12:42:59.211 [lua]-[trace] Injection completed +2022-03-16 12:42:59.211 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 12:42:59.212 [lua]-[trace] Injection completed +2022-03-16 12:42:59.212 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 12:42:59.213 [lua]-[trace] Injection completed +2022-03-16 12:42:59.213 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 12:42:59.213 [lua]-[trace] Injection completed +2022-03-16 12:42:59.213 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 12:42:59.214 [lua]-[trace] Injection completed +2022-03-16 12:42:59.214 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 12:42:59.215 [lua]-[trace] Injection completed +2022-03-16 12:42:59.215 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 12:42:59.215 [lua]-[trace] Injection completed +2022-03-16 12:42:59.215 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 12:42:59.216 [lua]-[trace] Injection completed +2022-03-16 12:42:59.216 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 12:42:59.217 [lua]-[trace] Injection completed +2022-03-16 12:42:59.217 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 12:42:59.218 [lua]-[trace] Injection completed +2022-03-16 12:42:59.218 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 12:42:59.218 [lua]-[trace] Injection completed +2022-03-16 12:42:59.218 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 12:42:59.219 [lua]-[trace] Injection completed +2022-03-16 12:42:59.219 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 12:42:59.220 [lua]-[trace] Injection completed +2022-03-16 12:42:59.220 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 12:42:59.220 [lua]-[trace] Injection completed +2022-03-16 12:42:59.220 [lua]-[trace] Wave compilation start. +2022-03-16 12:42:59.931 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:43:01.562 [lua]-[trace] Template compilation start. +2022-03-16 12:43:01.663 [lua]-[trace] Initializing 'slk' +2022-03-16 12:43:02.311 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:43:02.342 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:43:07.450 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 12:43:07.450 [lua]-[debug] Result true +2022-03-16 12:43:07.450 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:43:12.831 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:43:12.831 [event]-[trace] No need to compile. +2022-03-16 12:43:12.831 [lua]-[debug] ********************* on test start ********************* +2022-03-16 12:43:12.832 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:43:12.832 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:43:12.832 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:43:12.832 [lua]-[debug] Testing 0 +2022-03-16 12:43:13. 86 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 12:43:13. 86 [lua]-[debug] ********************* on test end ********************* +2022-03-16 12:53:10.743 [event]-[trace] WE is about to compile maps. +2022-03-16 12:53:13.217 [lua]-[debug] ********************* on save start ********************* +2022-03-16 12:53:13.237 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:53:13.237 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 12:53:13.237 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 12:53:13.237 [lua]-[trace] mpq_util.update_file. +2022-03-16 12:53:13.265 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 12:53:13.265 [lua]-[trace] Processing file.out +2022-03-16 12:53:13.279 [lua]-[trace] Writing code to file.out +2022-03-16 12:53:13.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 12:53:13.292 [lua]-[trace] Injection completed +2022-03-16 12:53:13.293 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 12:53:13.300 [lua]-[trace] Injection completed +2022-03-16 12:53:13.300 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 12:53:13.302 [lua]-[trace] Injection completed +2022-03-16 12:53:13.302 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 12:53:13.303 [lua]-[trace] Injection completed +2022-03-16 12:53:13.303 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 12:53:13.304 [lua]-[trace] Injection completed +2022-03-16 12:53:13.304 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 12:53:13.305 [lua]-[trace] Injection completed +2022-03-16 12:53:13.305 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 12:53:13.306 [lua]-[trace] Injection completed +2022-03-16 12:53:13.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 12:53:13.307 [lua]-[trace] Injection completed +2022-03-16 12:53:13.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 12:53:13.307 [lua]-[trace] Injection completed +2022-03-16 12:53:13.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 12:53:13.308 [lua]-[trace] Injection completed +2022-03-16 12:53:13.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 12:53:13.311 [lua]-[trace] Injection completed +2022-03-16 12:53:13.311 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 12:53:13.312 [lua]-[trace] Injection completed +2022-03-16 12:53:13.312 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 12:53:13.312 [lua]-[trace] Injection completed +2022-03-16 12:53:13.312 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 12:53:13.313 [lua]-[trace] Injection completed +2022-03-16 12:53:13.313 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 12:53:13.322 [lua]-[trace] Injection completed +2022-03-16 12:53:13.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 12:53:13.325 [lua]-[trace] Injection completed +2022-03-16 12:53:13.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 12:53:13.326 [lua]-[trace] Injection completed +2022-03-16 12:53:13.326 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 12:53:13.327 [lua]-[trace] Injection completed +2022-03-16 12:53:13.327 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 12:53:13.328 [lua]-[trace] Injection completed +2022-03-16 12:53:13.328 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 12:53:13.328 [lua]-[trace] Injection completed +2022-03-16 12:53:13.328 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 12:53:13.329 [lua]-[trace] Injection completed +2022-03-16 12:53:13.329 [lua]-[trace] Wave compilation start. +2022-03-16 12:53:13.833 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 12:53:15.633 [lua]-[trace] Template compilation start. +2022-03-16 12:53:15.709 [lua]-[trace] Initializing 'slk' +2022-03-16 12:53:16.309 [lua]-[debug] Template compilation succeeded. +2022-03-16 12:53:16.341 [lua]-[trace] JassHelper compilation start. +2022-03-16 12:53:19.970 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 12:53:19.971 [lua]-[debug] Result true +2022-03-16 12:53:19.971 [lua]-[debug] ********************* on save end ********************* +2022-03-16 12:53:21.781 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:53:21.781 [event]-[trace] No need to compile. +2022-03-16 12:53:21.781 [lua]-[debug] ********************* on test start ********************* +2022-03-16 12:53:21.781 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 12:53:21.781 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:53:21.781 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 12:53:21.781 [lua]-[debug] Testing 0 +2022-03-16 12:53:21.907 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 12:53:21.907 [lua]-[debug] ********************* on test end ********************* +2022-03-16 13:00:28.603 [event]-[trace] WE is about to compile maps. +2022-03-16 13:00:31. 28 [lua]-[debug] ********************* on save start ********************* +2022-03-16 13:00:31. 29 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:00:31. 29 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 13:00:31. 29 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 13:00:31. 29 [lua]-[trace] mpq_util.update_file. +2022-03-16 13:00:31. 31 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 13:00:31. 31 [lua]-[trace] Processing file.out +2022-03-16 13:00:31. 44 [lua]-[trace] Writing code to file.out +2022-03-16 13:00:31. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 13:00:31. 44 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 13:00:31. 45 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 13:00:31. 46 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 13:00:31. 46 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 13:00:31. 46 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 13:00:31. 46 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 13:00:31. 46 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 13:00:31. 47 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 13:00:31. 48 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 48 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 13:00:31. 48 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 48 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 13:00:31. 48 [lua]-[trace] Injection completed +2022-03-16 13:00:31. 48 [lua]-[trace] Wave compilation start. +2022-03-16 13:00:31.480 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 13:00:32.990 [lua]-[trace] Template compilation start. +2022-03-16 13:00:33. 73 [lua]-[trace] Initializing 'slk' +2022-03-16 13:00:33.590 [lua]-[debug] Template compilation succeeded. +2022-03-16 13:00:33.621 [lua]-[trace] JassHelper compilation start. +2022-03-16 13:00:37.487 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 13:00:37.488 [lua]-[debug] Result true +2022-03-16 13:00:37.488 [lua]-[debug] ********************* on save end ********************* +2022-03-16 13:06:32.392 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:06:32.392 [event]-[trace] No need to compile. +2022-03-16 13:06:32.392 [lua]-[debug] ********************* on test start ********************* +2022-03-16 13:06:32.393 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:06:32.393 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:06:32.393 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:06:32.393 [lua]-[debug] Testing 0 +2022-03-16 13:06:32.502 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 13:06:32.502 [lua]-[debug] ********************* on test end ********************* +2022-03-16 13:09:50.595 [event]-[trace] WE is about to compile maps. +2022-03-16 13:09:53. 11 [lua]-[debug] ********************* on save start ********************* +2022-03-16 13:09:53. 12 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:09:53. 12 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 13:09:53. 12 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 13:09:53. 12 [lua]-[trace] mpq_util.update_file. +2022-03-16 13:09:53. 15 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 13:09:53. 15 [lua]-[trace] Processing file.out +2022-03-16 13:09:53. 29 [lua]-[trace] Writing code to file.out +2022-03-16 13:09:53. 29 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 13:09:53. 29 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 29 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 13:09:53. 29 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 29 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 13:09:53. 30 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 30 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 13:09:53. 30 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 30 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 13:09:53. 30 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 30 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 13:09:53. 30 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 30 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 13:09:53. 30 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 30 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 13:09:53. 31 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 31 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 13:09:53. 32 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 32 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 13:09:53. 33 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 33 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 13:09:53. 33 [lua]-[trace] Injection completed +2022-03-16 13:09:53. 33 [lua]-[trace] Wave compilation start. +2022-03-16 13:09:53.471 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 13:09:54.881 [lua]-[trace] Template compilation start. +2022-03-16 13:09:54.956 [lua]-[trace] Initializing 'slk' +2022-03-16 13:09:55.481 [lua]-[debug] Template compilation succeeded. +2022-03-16 13:09:55.512 [lua]-[trace] JassHelper compilation start. +2022-03-16 13:09:59. 81 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 13:09:59. 82 [lua]-[debug] Result true +2022-03-16 13:09:59. 82 [lua]-[debug] ********************* on save end ********************* +2022-03-16 13:13:30.149 [event]-[trace] WE is about to compile maps. +2022-03-16 13:13:32.606 [lua]-[debug] ********************* on save start ********************* +2022-03-16 13:13:32.607 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:13:32.607 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 13:13:32.607 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 13:13:32.607 [lua]-[trace] mpq_util.update_file. +2022-03-16 13:13:32.614 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 13:13:32.614 [lua]-[trace] Processing file.out +2022-03-16 13:13:32.716 [lua]-[trace] Writing code to file.out +2022-03-16 13:13:32.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 13:13:32.717 [lua]-[trace] Injection completed +2022-03-16 13:13:32.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 13:13:32.717 [lua]-[trace] Injection completed +2022-03-16 13:13:32.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 13:13:32.717 [lua]-[trace] Injection completed +2022-03-16 13:13:32.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 13:13:32.717 [lua]-[trace] Injection completed +2022-03-16 13:13:32.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 13:13:32.717 [lua]-[trace] Injection completed +2022-03-16 13:13:32.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 13:13:32.718 [lua]-[trace] Injection completed +2022-03-16 13:13:32.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 13:13:32.718 [lua]-[trace] Injection completed +2022-03-16 13:13:32.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 13:13:32.740 [lua]-[trace] Injection completed +2022-03-16 13:13:32.740 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 13:13:32.740 [lua]-[trace] Injection completed +2022-03-16 13:13:32.740 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 13:13:32.750 [lua]-[trace] Injection completed +2022-03-16 13:13:32.750 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 13:13:32.751 [lua]-[trace] Injection completed +2022-03-16 13:13:32.751 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 13:13:32.752 [lua]-[trace] Injection completed +2022-03-16 13:13:32.752 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 13:13:32.761 [lua]-[trace] Injection completed +2022-03-16 13:13:32.761 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 13:13:32.761 [lua]-[trace] Injection completed +2022-03-16 13:13:32.761 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 13:13:32.762 [lua]-[trace] Injection completed +2022-03-16 13:13:32.762 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 13:13:32.762 [lua]-[trace] Injection completed +2022-03-16 13:13:32.762 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 13:13:32.762 [lua]-[trace] Injection completed +2022-03-16 13:13:32.762 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 13:13:32.762 [lua]-[trace] Injection completed +2022-03-16 13:13:32.762 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 13:13:32.762 [lua]-[trace] Injection completed +2022-03-16 13:13:32.762 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.763 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 13:13:32.763 [lua]-[trace] Injection completed +2022-03-16 13:13:32.764 [lua]-[trace] Wave compilation start. +2022-03-16 13:13:33.229 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 13:13:34.646 [lua]-[trace] Template compilation start. +2022-03-16 13:13:34.705 [lua]-[trace] Initializing 'slk' +2022-03-16 13:13:35.175 [lua]-[debug] Template compilation succeeded. +2022-03-16 13:13:35.252 [lua]-[trace] JassHelper compilation start. +2022-03-16 13:13:38.980 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 13:13:38.981 [lua]-[debug] Result true +2022-03-16 13:13:38.981 [lua]-[debug] ********************* on save end ********************* +2022-03-16 13:13:59.287 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:13:59.287 [event]-[trace] No need to compile. +2022-03-16 13:13:59.287 [lua]-[debug] ********************* on test start ********************* +2022-03-16 13:13:59.287 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:13:59.287 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:13:59.287 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 13:13:59.287 [lua]-[debug] Testing 0 +2022-03-16 13:13:59.581 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 13:13:59.581 [lua]-[debug] ********************* on test end ********************* +2022-03-16 13:30:12.920 [event]-[trace] WE is about to compile maps. +2022-03-16 13:30:15.472 [lua]-[debug] ********************* on save start ********************* +2022-03-16 13:30:15.473 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 13:30:15.473 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 13:30:15.473 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 13:30:15.473 [lua]-[trace] mpq_util.update_file. +2022-03-16 13:30:15.481 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 13:30:15.481 [lua]-[trace] Processing file.out +2022-03-16 13:30:15.584 [lua]-[trace] Writing code to file.out +2022-03-16 13:30:15.584 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 13:30:15.584 [lua]-[trace] Injection completed +2022-03-16 13:30:15.584 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 13:30:15.585 [lua]-[trace] Injection completed +2022-03-16 13:30:15.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 13:30:15.585 [lua]-[trace] Injection completed +2022-03-16 13:30:15.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 13:30:15.585 [lua]-[trace] Injection completed +2022-03-16 13:30:15.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 13:30:15.585 [lua]-[trace] Injection completed +2022-03-16 13:30:15.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 13:30:15.585 [lua]-[trace] Injection completed +2022-03-16 13:30:15.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 13:30:15.586 [lua]-[trace] Injection completed +2022-03-16 13:30:15.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 13:30:15.587 [lua]-[trace] Injection completed +2022-03-16 13:30:15.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 13:30:15.587 [lua]-[trace] Injection completed +2022-03-16 13:30:15.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 13:30:15.587 [lua]-[trace] Injection completed +2022-03-16 13:30:15.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 13:30:15.587 [lua]-[trace] Injection completed +2022-03-16 13:30:15.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 13:30:15.587 [lua]-[trace] Injection completed +2022-03-16 13:30:15.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 13:30:15.588 [lua]-[trace] Injection completed +2022-03-16 13:30:15.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 13:30:15.588 [lua]-[trace] Injection completed +2022-03-16 13:30:15.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 13:30:15.588 [lua]-[trace] Injection completed +2022-03-16 13:30:15.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 13:30:15.589 [lua]-[trace] Injection completed +2022-03-16 13:30:15.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 13:30:15.589 [lua]-[trace] Injection completed +2022-03-16 13:30:15.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 13:30:15.592 [lua]-[trace] Injection completed +2022-03-16 13:30:15.592 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 13:30:15.592 [lua]-[trace] Injection completed +2022-03-16 13:30:15.592 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 13:30:15.593 [lua]-[trace] Injection completed +2022-03-16 13:30:15.593 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 13:30:15.593 [lua]-[trace] Injection completed +2022-03-16 13:30:15.593 [lua]-[trace] Wave compilation start. +2022-03-16 13:30:16. 92 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 13:30:17.615 [lua]-[trace] Template compilation start. +2022-03-16 13:30:17.678 [lua]-[trace] Initializing 'slk' +2022-03-16 13:30:18.165 [lua]-[debug] Template compilation succeeded. +2022-03-16 13:30:18.191 [lua]-[trace] JassHelper compilation start. +2022-03-16 13:30:21.681 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 0 +2022-03-16 13:30:21.682 [lua]-[debug] Result true +2022-03-16 13:30:21.682 [lua]-[debug] ********************* on save end ********************* +2022-03-16 13:53:43.253 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-16 13:58:00.955 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-16 14:10:54.570 [root]-[info ] ------------------------------------------------------ +2022-03-16 14:10:54.581 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 14:10:54.581 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 14:10:54.581 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 14:10:54.584 [root]-[debug] Initialize script engine successfully. +2022-03-16 14:10:54.584 [root]-[info ] Script engine startup complete. +2022-03-16 14:10:54.584 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 14:10:54.585 [lua]-[trace] Initializing 'sys' +2022-03-16 14:10:54.587 [lua]-[trace] Initializing 'filesystem' +2022-03-16 14:10:54.591 [lua]-[trace] Initializing 'gui' +2022-03-16 14:10:54.593 [lua]-[trace] Initializing 'util' +2022-03-16 14:10:54.595 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 14:10:54.596 [lua]-[trace] Initializing 'ffi' +2022-03-16 14:10:54.598 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 14:10:54.598 [lua]-[trace] Initializing 'event' +2022-03-16 14:10:54.626 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 14:10:54.628 [lua]-[trace] Initializing 'registry' +2022-03-16 14:10:54.630 [lua]-[trace] Initializing 'version' +2022-03-16 14:10:54.631 [lua]-[trace] Initializing 'localization' +2022-03-16 14:10:54.631 [lua]-[trace] Initializing 'i18n' +2022-03-16 14:10:54.634 [lua]-[trace] Initializing 'config' +2022-03-16 14:10:54.651 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 14:10:54.651 [lua]-[trace] Initializing 'plugin' +2022-03-16 14:10:54.652 [lua]-[trace] Initializing 'uiloader' +2022-03-16 14:10:54.653 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 14:10:54.654 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 14:10:54.654 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 14:10:54.655 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 14:10:54.657 [lua]-[trace] Initializing 'lni-c' +2022-03-16 14:10:54.659 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 14:10:54.660 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 14:10:54.661 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 14:10:54.662 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 14:10:54.664 [lua]-[trace] Initializing 'check_object' +2022-03-16 14:10:54.676 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 14:10:54.677 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 14:10:54.677 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 14:10:54.678 [event]-[trace] RegisterEvent id: 7 +2022-03-16 14:10:54.678 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 14:10:54.679 [event]-[trace] RegisterEvent id: 5 +2022-03-16 14:10:54.679 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 14:10:54.680 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 14:10:54.681 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 14:10:54.682 [lua]-[trace] Initializing 'compile.template' +2022-03-16 14:10:54.682 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 14:10:54.683 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 14:10:54.684 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 14:10:54.684 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 14:10:54.685 [lua]-[trace] Initializing 'compile.native' +2022-03-16 14:10:54.686 [event]-[trace] RegisterEvent id: 3 +2022-03-16 14:10:54.686 [event]-[trace] RegisterEvent id: 2 +2022-03-16 14:10:54.686 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 14:10:54.687 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 14:10:54.698 [lua]-[trace] Initializing 'utility' +2022-03-16 14:10:54.698 [lua]-[trace] Initializing 'mapdump' +2022-03-16 14:10:54.699 [event]-[trace] RegisterEvent id: 4 +2022-03-16 14:10:54.699 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 14:10:54.700 [event]-[trace] RegisterEvent id: 0 +2022-03-16 14:10:54.700 [event]-[trace] RegisterEvent id: 1 +2022-03-16 14:10:54.700 [event]-[trace] RegisterEvent id: 6 +2022-03-16 14:10:54.700 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 14:10:54.860 [event]-[trace] RegisterEvent id: 8 +2022-03-16 14:10:54.860 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 14:10:54.860 [event]-[trace] RegisterEvent id: 9 +2022-03-16 14:10:54.861 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 14:10:54.866 [event]-[info ] Entering main program. +2022-03-16 14:10:54.866 [event]-[debug] Command line: +2022-03-16 14:10:54.867 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 14:10:54.872 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 14:10:54.872 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 14:10:54.872 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 14:10:54.872 [lua]-[trace] check_conflicting_ui +2022-03-16 14:10:54.873 [lua]-[trace] check_conflicting_units +2022-03-16 14:10:54.873 [lua]-[trace] clear_potential_conflicting +2022-03-16 14:10:54.873 [lua]-[trace] check_war3_version +2022-03-16 14:10:54.889 [lua]-[error] Cannot find war3.mpq +2022-03-16 14:10:54.923 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 14:10:54.968 [lua]-[debug] Tesh loaded successfully. +2022-03-16 14:10:55. 92 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 14:10:55. 95 [lua]-[debug] YDClient loaded successfully. +2022-03-16 14:10:55. 96 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 14:10:55. 97 [lua]-[warn ] failed: disable +2022-03-16 14:10:55. 98 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 14:10:55. 98 [lua]-[warn ] failed: disable +2022-03-16 14:10:55. 99 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 14:10:55. 99 [lua]-[warn ] failed: disable +2022-03-16 14:10:55.100 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 14:10:55.191 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 14:10:55.201 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 14:10:55.205 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 14:10:55.205 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 14:10:55.218 [inject]-[debug] Start installing inline hooks. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 14:10:55.218 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 14:10:55.218 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 14:10:55.218 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 14:10:55.218 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 14:10:55.218 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 14:10:55.218 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 14:10:55.218 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 14:10:55.218 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 14:10:55.218 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 14:10:55.218 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 14:10:55.218 [inject]-[debug] Installing inline hooks complete. +2022-03-16 14:10:55.218 [inject]-[debug] IAT hook initialization started. +2022-03-16 14:10:55.218 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 14:10:55.218 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 14:10:55.218 [inject]-[debug] IAT hook initialization completed. +2022-03-16 14:10:55.218 [inject]-[debug] Patches initialization started. +2022-03-16 14:10:55.218 [inject]-[trace] Installing syntax check patch +2022-03-16 14:10:55.218 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 14:10:55.218 [inject]-[trace] Installing auto disable patch +2022-03-16 14:10:55.218 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 14:10:55.218 [inject]-[trace] Installing enable trigger check patch +2022-03-16 14:10:55.218 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 14:10:55.218 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 14:10:55.218 [inject]-[trace] Installing doodad limit patch +2022-03-16 14:10:55.218 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 14:10:55.218 [inject]-[trace] Installing unit/item limit patch +2022-03-16 14:10:55.218 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 14:10:55.219 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 14:10:55.219 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 14:10:55.219 [inject]-[trace] Installing attack table patch +2022-03-16 14:10:55.219 [inject]-[debug] Patches initialization completed. +2022-03-16 14:10:55.219 [inject]-[info ] YDWE startup complete. +2022-03-16 14:10:55.219 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 14:10:55.220 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 14:10:55.220 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 14:10:55.242 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 14:10:55.315 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 14:10:55.338 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 14:10:55.342 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 14:10:55.343 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 14:10:55.343 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 14:10:55.344 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 14:10:55.345 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 14:10:55.361 [lua]-[trace] Scanned file: 99 +2022-03-16 14:10:55.362 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 14:10:56. 30 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 14:10:56. 59 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 14:10:56.194 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 14:10:56.319 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 14:10:56.321 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 14:10:56.323 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 14:10:56.324 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 14:10:56.327 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 14:10:58.312 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 14:10:58.312 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 14:11:06.499 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 14:11:06.499 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 14:11:06.499 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 14:11:06.701 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 14:11:06.726 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 14:11:06.843 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 14:17:49.516 [event]-[trace] WE is about to compile maps. +2022-03-16 14:17:50.636 [lua]-[debug] ********************* on save start ********************* +2022-03-16 14:17:50.637 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 14:17:50.637 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-16 14:17:50.637 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 14:17:50.637 [lua]-[trace] mpq_util.update_file. +2022-03-16 14:17:50.638 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-16 14:17:50.638 [lua]-[trace] Processing file.out +2022-03-16 14:17:50.646 [lua]-[trace] Writing code to file.out +2022-03-16 14:17:50.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiEffect.j +2022-03-16 14:17:50.670 [lua]-[trace] Injection completed +2022-03-16 14:17:50.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 14:17:50.671 [lua]-[trace] Injection completed +2022-03-16 14:17:50.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 14:17:50.672 [lua]-[trace] Injection completed +2022-03-16 14:17:50.672 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\YDWETimerSystem.j +2022-03-16 14:17:50.682 [lua]-[trace] Injection completed +2022-03-16 14:17:50.682 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 14:17:50.683 [lua]-[trace] Injection completed +2022-03-16 14:17:50.683 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\YDWEBase.j +2022-03-16 14:17:50.683 [lua]-[trace] Injection completed +2022-03-16 14:17:50.683 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 14:17:50.684 [lua]-[trace] Injection completed +2022-03-16 14:17:50.684 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 14:17:50.684 [lua]-[trace] Injection completed +2022-03-16 14:17:50.684 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 14:17:50.685 [lua]-[trace] Injection completed +2022-03-16 14:17:50.685 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 14:17:50.686 [lua]-[trace] Injection completed +2022-03-16 14:17:50.686 [lua]-[trace] Wave compilation start. +2022-03-16 14:17:51.231 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 14:17:53.262 [lua]-[trace] Template compilation start. +2022-03-16 14:17:53.359 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-16 14:17:53.410 [lua]-[trace] Initializing 'computed.order_list' +2022-03-16 14:17:53.411 [lua]-[trace] Initializing 'computed.order_id' +2022-03-16 14:17:53.438 [lua]-[debug] Template compilation succeeded. +2022-03-16 14:17:53.475 [lua]-[trace] JassHelper compilation start. +2022-03-16 14:17:55.234 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 1 +2022-03-16 14:17:55.235 [lua]-[debug] Result false +2022-03-16 14:17:55.235 [lua]-[debug] ********************* on save end ********************* +2022-03-16 14:17:58.917 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-16 14:18:03.236 [event]-[trace] WE is about to compile maps. +2022-03-16 14:18:04.494 [lua]-[debug] ********************* on save start ********************* +2022-03-16 14:18:04.495 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 14:18:04.495 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-16 14:18:04.495 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 14:18:04.495 [lua]-[trace] mpq_util.update_file. +2022-03-16 14:18:04.497 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-16 14:18:04.497 [lua]-[trace] Processing file.out +2022-03-16 14:18:04.497 [lua]-[trace] Wave compilation start. +2022-03-16 14:18:04.973 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 14:18:06.879 [lua]-[trace] Template compilation start. +2022-03-16 14:18:06.980 [lua]-[debug] Template compilation succeeded. +2022-03-16 14:18:07. 15 [lua]-[trace] JassHelper compilation start. +2022-03-16 14:18:11.923 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 0 +2022-03-16 14:18:11.923 [lua]-[debug] Result true +2022-03-16 14:18:11.923 [lua]-[debug] ********************* on save end ********************* +2022-03-16 14:18:15. 18 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-16 14:18:18.297 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-16 14:23:04.743 [event]-[trace] WE is about to compile maps. +2022-03-16 14:23:05.923 [lua]-[debug] ********************* on save start ********************* +2022-03-16 14:23:05.924 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 14:23:05.924 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-16 14:23:05.924 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 14:23:05.924 [lua]-[trace] mpq_util.update_file. +2022-03-16 14:23:05.926 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-16 14:23:05.926 [lua]-[trace] Processing file.out +2022-03-16 14:23:05.926 [lua]-[trace] Wave compilation start. +2022-03-16 14:23:06.391 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 14:23:08.287 [lua]-[trace] Template compilation start. +2022-03-16 14:23:08.392 [lua]-[debug] Template compilation succeeded. +2022-03-16 14:23:08.428 [lua]-[trace] JassHelper compilation start. +2022-03-16 14:23:12. 32 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 0 +2022-03-16 14:23:12. 33 [lua]-[debug] Result true +2022-03-16 14:23:12. 33 [lua]-[debug] ********************* on save end ********************* +2022-03-16 14:23:22.297 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-16 14:23:44. 4 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-16 15:05:04.347 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 15:05:04.348 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 15:05:04.348 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-16 15:05:04.647 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 15:05:04.692 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 15:05:04.900 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 15:07:37. 23 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:07:37. 23 [event]-[trace] No need to compile. +2022-03-16 15:07:37. 23 [lua]-[debug] ********************* on test start ********************* +2022-03-16 15:07:37. 23 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:07:37. 23 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:07:37. 24 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:07:37. 24 [lua]-[debug] Testing 0 +2022-03-16 15:07:37.286 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 15:07:37.286 [lua]-[debug] ********************* on test end ********************* +2022-03-16 15:12:57.795 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:12:57.795 [event]-[trace] No need to compile. +2022-03-16 15:12:57.796 [lua]-[debug] ********************* on test start ********************* +2022-03-16 15:12:57.797 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:12:57.797 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:12:57.797 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:12:57.797 [lua]-[debug] Testing 0 +2022-03-16 15:12:57.867 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 15:12:57.867 [lua]-[debug] ********************* on test end ********************* +2022-03-16 15:14:15.997 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:14:15.997 [event]-[trace] No need to compile. +2022-03-16 15:14:15.997 [lua]-[debug] ********************* on test start ********************* +2022-03-16 15:14:15.998 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:14:15.998 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:14:15.998 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:14:15.998 [lua]-[debug] Testing 0 +2022-03-16 15:14:16. 68 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 15:14:16. 69 [lua]-[debug] ********************* on test end ********************* +2022-03-16 15:17:55.155 [event]-[trace] WE is about to compile maps. +2022-03-16 15:17:57.378 [lua]-[debug] ********************* on save start ********************* +2022-03-16 15:17:57.378 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:17:57.378 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G5.3.w3x +2022-03-16 15:17:57.378 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 15:17:57.378 [lua]-[trace] mpq_util.update_file. +2022-03-16 15:17:57.471 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.3.w3x +2022-03-16 15:17:57.471 [lua]-[trace] Processing file.out +2022-03-16 15:17:57.471 [lua]-[trace] Wave compilation start. +2022-03-16 15:17:57.970 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 15:17:59.549 [lua]-[trace] Template compilation start. +2022-03-16 15:17:59.627 [lua]-[trace] Initializing 'slk' +2022-03-16 15:17:59.804 [lua]-[trace] Initializing 'archive' +2022-03-16 15:17:59.805 [lua]-[trace] Initializing 'archive_mpq' +2022-03-16 15:17:59.806 [lua]-[trace] Initializing 'archive_dir' +2022-03-16 15:17:59.807 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-16 15:17:59.808 [lua]-[trace] Initializing 'progress' +2022-03-16 15:17:59.808 [lua]-[trace] Initializing 'slk.frontend' +2022-03-16 15:17:59.810 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-16 15:17:59.811 [lua]-[trace] Initializing 'lpeg' +2022-03-16 15:17:59.860 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-16 15:18:00. 72 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-16 15:18:00. 94 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-16 15:18:00.368 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-16 15:18:00.380 [lua]-[debug] Template compilation succeeded. +2022-03-16 15:18:00.403 [lua]-[trace] JassHelper compilation start. +2022-03-16 15:18:04.392 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G5.3.w3x", returned 1 +2022-03-16 15:18:04.392 [lua]-[debug] Result false +2022-03-16 15:18:04.392 [lua]-[debug] ********************* on save end ********************* +2022-03-16 15:22:29.594 [event]-[trace] WE is about to compile maps. +2022-03-16 15:22:31.954 [lua]-[debug] ********************* on save start ********************* +2022-03-16 15:22:31.955 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:22:31.955 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.4.w3x +2022-03-16 15:22:31.955 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 15:22:31.955 [lua]-[trace] mpq_util.update_file. +2022-03-16 15:22:31.961 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.4.w3x +2022-03-16 15:22:31.961 [lua]-[trace] Processing file.out +2022-03-16 15:22:31.961 [lua]-[trace] Wave compilation start. +2022-03-16 15:22:32.414 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 15:22:33.772 [lua]-[trace] Template compilation start. +2022-03-16 15:22:33.830 [lua]-[trace] Initializing 'slk' +2022-03-16 15:22:34.367 [lua]-[debug] Template compilation succeeded. +2022-03-16 15:22:34.390 [lua]-[trace] JassHelper compilation start. +2022-03-16 15:22:38. 82 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.4.w3x", returned 1 +2022-03-16 15:22:38. 83 [lua]-[debug] Result false +2022-03-16 15:22:38. 83 [lua]-[debug] ********************* on save end ********************* +2022-03-16 15:22:52.618 [lua]-[error] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" failed +2022-03-16 15:22:58.455 [lua]-[error] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" failed +2022-03-16 15:23:00.219 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-16 15:23:20.260 [event]-[trace] WE is about to compile maps. +2022-03-16 15:23:22.595 [lua]-[debug] ********************* on save start ********************* +2022-03-16 15:23:22.596 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:23:22.596 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x +2022-03-16 15:23:22.596 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 15:23:22.596 [lua]-[trace] mpq_util.update_file. +2022-03-16 15:23:22.603 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.4.w3x +2022-03-16 15:23:22.603 [lua]-[trace] Processing file.out +2022-03-16 15:23:22.707 [lua]-[trace] Writing code to file.out +2022-03-16 15:23:22.707 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 15:23:22.731 [lua]-[trace] Injection completed +2022-03-16 15:23:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 15:23:22.732 [lua]-[trace] Injection completed +2022-03-16 15:23:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 15:23:22.733 [lua]-[trace] Injection completed +2022-03-16 15:23:22.733 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 15:23:22.733 [lua]-[trace] Injection completed +2022-03-16 15:23:22.733 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 15:23:22.734 [lua]-[trace] Injection completed +2022-03-16 15:23:22.734 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 15:23:22.744 [lua]-[trace] Injection completed +2022-03-16 15:23:22.744 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 15:23:22.746 [lua]-[trace] Injection completed +2022-03-16 15:23:22.746 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 15:23:22.747 [lua]-[trace] Injection completed +2022-03-16 15:23:22.747 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 15:23:22.747 [lua]-[trace] Injection completed +2022-03-16 15:23:22.747 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 15:23:22.748 [lua]-[trace] Injection completed +2022-03-16 15:23:22.748 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 15:23:22.748 [lua]-[trace] Injection completed +2022-03-16 15:23:22.748 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 15:23:22.748 [lua]-[trace] Injection completed +2022-03-16 15:23:22.748 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 15:23:22.749 [lua]-[trace] Injection completed +2022-03-16 15:23:22.749 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 15:23:22.749 [lua]-[trace] Injection completed +2022-03-16 15:23:22.749 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 15:23:22.749 [lua]-[trace] Injection completed +2022-03-16 15:23:22.749 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 15:23:22.750 [lua]-[trace] Injection completed +2022-03-16 15:23:22.750 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 15:23:22.750 [lua]-[trace] Injection completed +2022-03-16 15:23:22.750 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 15:23:22.750 [lua]-[trace] Injection completed +2022-03-16 15:23:22.750 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 15:23:22.751 [lua]-[trace] Injection completed +2022-03-16 15:23:22.751 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 15:23:22.751 [lua]-[trace] Injection completed +2022-03-16 15:23:22.751 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 15:23:22.751 [lua]-[trace] Injection completed +2022-03-16 15:23:22.751 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 15:23:22.752 [lua]-[trace] Injection completed +2022-03-16 15:23:22.752 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 15:23:22.752 [lua]-[trace] Injection completed +2022-03-16 15:23:22.752 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 15:23:22.752 [lua]-[trace] Injection completed +2022-03-16 15:23:22.752 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 15:23:22.752 [lua]-[trace] Injection completed +2022-03-16 15:23:22.753 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 15:23:22.753 [lua]-[trace] Injection completed +2022-03-16 15:23:22.753 [lua]-[trace] Wave compilation start. +2022-03-16 15:23:23.203 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 15:23:24.618 [lua]-[trace] Template compilation start. +2022-03-16 15:23:24.676 [lua]-[trace] Initializing 'slk' +2022-03-16 15:23:25.123 [lua]-[debug] Template compilation succeeded. +2022-03-16 15:23:25.147 [lua]-[trace] JassHelper compilation start. +2022-03-16 15:23:28.699 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x", returned 0 +2022-03-16 15:23:28.700 [lua]-[debug] Result true +2022-03-16 15:23:28.700 [lua]-[debug] ********************* on save end ********************* +2022-03-16 15:23:32.252 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:23:32.252 [event]-[trace] No need to compile. +2022-03-16 15:23:32.252 [lua]-[debug] ********************* on test start ********************* +2022-03-16 15:23:32.253 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:23:32.253 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:23:32.253 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:23:32.253 [lua]-[debug] Testing 0 +2022-03-16 15:23:32.323 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 15:23:32.323 [lua]-[debug] ********************* on test end ********************* +2022-03-16 15:25:26.683 [event]-[trace] WE is about to compile maps. +2022-03-16 15:25:29.121 [lua]-[debug] ********************* on save start ********************* +2022-03-16 15:25:29.122 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:25:29.122 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x +2022-03-16 15:25:29.122 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 15:25:29.122 [lua]-[trace] mpq_util.update_file. +2022-03-16 15:25:29.129 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.4.w3x +2022-03-16 15:25:29.129 [lua]-[trace] Processing file.out +2022-03-16 15:25:29.235 [lua]-[trace] Writing code to file.out +2022-03-16 15:25:29.236 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 15:25:29.236 [lua]-[trace] Injection completed +2022-03-16 15:25:29.236 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 15:25:29.236 [lua]-[trace] Injection completed +2022-03-16 15:25:29.236 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 15:25:29.236 [lua]-[trace] Injection completed +2022-03-16 15:25:29.236 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 15:25:29.236 [lua]-[trace] Injection completed +2022-03-16 15:25:29.236 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 15:25:29.237 [lua]-[trace] Injection completed +2022-03-16 15:25:29.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 15:25:29.237 [lua]-[trace] Injection completed +2022-03-16 15:25:29.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 15:25:29.237 [lua]-[trace] Injection completed +2022-03-16 15:25:29.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 15:25:29.237 [lua]-[trace] Injection completed +2022-03-16 15:25:29.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 15:25:29.237 [lua]-[trace] Injection completed +2022-03-16 15:25:29.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 15:25:29.238 [lua]-[trace] Injection completed +2022-03-16 15:25:29.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 15:25:29.239 [lua]-[trace] Injection completed +2022-03-16 15:25:29.239 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 15:25:29.239 [lua]-[trace] Injection completed +2022-03-16 15:25:29.239 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 15:25:29.239 [lua]-[trace] Injection completed +2022-03-16 15:25:29.239 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 15:25:29.240 [lua]-[trace] Injection completed +2022-03-16 15:25:29.240 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 15:25:29.240 [lua]-[trace] Injection completed +2022-03-16 15:25:29.240 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 15:25:29.240 [lua]-[trace] Injection completed +2022-03-16 15:25:29.240 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 15:25:29.241 [lua]-[trace] Injection completed +2022-03-16 15:25:29.241 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 15:25:29.241 [lua]-[trace] Injection completed +2022-03-16 15:25:29.241 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 15:25:29.241 [lua]-[trace] Injection completed +2022-03-16 15:25:29.241 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 15:25:29.241 [lua]-[trace] Injection completed +2022-03-16 15:25:29.241 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 15:25:29.241 [lua]-[trace] Injection completed +2022-03-16 15:25:29.242 [lua]-[trace] Wave compilation start. +2022-03-16 15:25:29.690 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 15:25:31.179 [lua]-[trace] Template compilation start. +2022-03-16 15:25:31.241 [lua]-[trace] Initializing 'slk' +2022-03-16 15:25:31.773 [lua]-[debug] Template compilation succeeded. +2022-03-16 15:25:31.797 [lua]-[trace] JassHelper compilation start. +2022-03-16 15:25:35.288 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x", returned 0 +2022-03-16 15:25:35.289 [lua]-[debug] Result true +2022-03-16 15:25:35.289 [lua]-[debug] ********************* on save end ********************* +2022-03-16 15:25:36.521 [event]-[trace] Executing map G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:25:36.521 [event]-[trace] No need to compile. +2022-03-16 15:25:36.521 [lua]-[debug] ********************* on test start ********************* +2022-03-16 15:25:36.522 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:25:36.522 [lua]-[debug] Testing G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:25:36.522 [lua]-[debug] Testing "G:\魔兽争霸III\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-16 15:25:36.522 [lua]-[debug] Testing 0 +2022-03-16 15:25:36.593 [lua]-[trace] Executed "G:\魔兽争霸III\Warcraft III Frozen Throne\war3.exe" -loadfile "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-16 15:25:36.593 [lua]-[debug] ********************* on test end ********************* +2022-03-16 15:27:35.223 [event]-[trace] WE is about to compile maps. +2022-03-16 15:27:51.244 [event]-[trace] WE is about to compile maps. +2022-03-16 15:27:53.555 [lua]-[debug] ********************* on save start ********************* +2022-03-16 15:27:53.556 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 15:27:53.556 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x +2022-03-16 15:27:53.556 [lua]-[trace] Save version 1.27.0.52240 +2022-03-16 15:27:53.556 [lua]-[trace] mpq_util.update_file. +2022-03-16 15:27:53.564 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.4.w3x +2022-03-16 15:27:53.564 [lua]-[trace] Processing file.out +2022-03-16 15:27:53.667 [lua]-[trace] Writing code to file.out +2022-03-16 15:27:53.667 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-16 15:27:53.668 [lua]-[trace] Injection completed +2022-03-16 15:27:53.668 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-16 15:27:53.668 [lua]-[trace] Injection completed +2022-03-16 15:27:53.668 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-16 15:27:53.668 [lua]-[trace] Injection completed +2022-03-16 15:27:53.668 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-16 15:27:53.668 [lua]-[trace] Injection completed +2022-03-16 15:27:53.668 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-16 15:27:53.668 [lua]-[trace] Injection completed +2022-03-16 15:27:53.668 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-16 15:27:53.669 [lua]-[trace] Injection completed +2022-03-16 15:27:53.669 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-16 15:27:53.669 [lua]-[trace] Injection completed +2022-03-16 15:27:53.669 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-16 15:27:53.669 [lua]-[trace] Injection completed +2022-03-16 15:27:53.669 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-16 15:27:53.669 [lua]-[trace] Injection completed +2022-03-16 15:27:53.669 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-16 15:27:53.669 [lua]-[trace] Injection completed +2022-03-16 15:27:53.669 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-16 15:27:53.670 [lua]-[trace] Injection completed +2022-03-16 15:27:53.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-16 15:27:53.670 [lua]-[trace] Injection completed +2022-03-16 15:27:53.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-16 15:27:53.670 [lua]-[trace] Injection completed +2022-03-16 15:27:53.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-16 15:27:53.670 [lua]-[trace] Injection completed +2022-03-16 15:27:53.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-16 15:27:53.670 [lua]-[trace] Injection completed +2022-03-16 15:27:53.670 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-16 15:27:53.671 [lua]-[trace] Injection completed +2022-03-16 15:27:53.671 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-16 15:27:53.672 [lua]-[trace] Injection completed +2022-03-16 15:27:53.672 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-16 15:27:53.672 [lua]-[trace] Injection completed +2022-03-16 15:27:53.672 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-16 15:27:53.672 [lua]-[trace] Injection completed +2022-03-16 15:27:53.672 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-16 15:27:53.672 [lua]-[trace] Injection completed +2022-03-16 15:27:53.672 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-16 15:27:53.672 [lua]-[trace] Injection completed +2022-03-16 15:27:53.672 [lua]-[trace] Wave compilation start. +2022-03-16 15:27:54.146 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-16 15:27:55.524 [lua]-[trace] Template compilation start. +2022-03-16 15:27:55.583 [lua]-[trace] Initializing 'slk' +2022-03-16 15:27:56.136 [lua]-[debug] Template compilation succeeded. +2022-03-16 15:27:56.161 [lua]-[trace] JassHelper compilation start. +2022-03-16 15:27:59.765 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.4.w3x", returned 0 +2022-03-16 15:27:59.766 [lua]-[debug] Result true +2022-03-16 15:27:59.766 [lua]-[debug] ********************* on save end ********************* +2022-03-16 15:28:01.224 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 15:28:01.224 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 15:28:01.247 [lua]-[trace] Unload plugin YDClient. +2022-03-16 15:28:01.247 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 15:28:01.247 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 15:28:01.250 [inject]-[debug] IAT hook cleanup started. +2022-03-16 15:28:01.251 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 15:28:01.251 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 15:28:01.251 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 15:28:01.253 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 15:28:01.253 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 15:28:01.253 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 15:28:01.253 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 15:28:01.253 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 15:28:01.253 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 15:28:01.253 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 15:28:01.253 [lua]-[trace] Unload plugin Tesh. +2022-03-16 15:28:01.276 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 15:28:01.276 [event]-[info ] Main program exit. +2022-03-16 15:28:01.740 [root]-[info ] Script engine has been shut down. +2022-03-16 17:01:37.703 [root]-[info ] ------------------------------------------------------ +2022-03-16 17:01:37.721 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-16 17:01:37.721 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-16 17:01:37.721 [root]-[info ] Windows version: 10.0.17134 +2022-03-16 17:01:37.723 [root]-[debug] Initialize script engine successfully. +2022-03-16 17:01:37.723 [root]-[info ] Script engine startup complete. +2022-03-16 17:01:37.724 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-16 17:01:37.724 [lua]-[trace] Initializing 'sys' +2022-03-16 17:01:37.727 [lua]-[trace] Initializing 'filesystem' +2022-03-16 17:01:37.729 [lua]-[trace] Initializing 'gui' +2022-03-16 17:01:37.731 [lua]-[trace] Initializing 'util' +2022-03-16 17:01:37.732 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-16 17:01:37.733 [lua]-[trace] Initializing 'ffi' +2022-03-16 17:01:37.735 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-16 17:01:37.735 [lua]-[trace] Initializing 'event' +2022-03-16 17:01:37.747 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-16 17:01:37.750 [lua]-[trace] Initializing 'registry' +2022-03-16 17:01:37.752 [lua]-[trace] Initializing 'version' +2022-03-16 17:01:37.753 [lua]-[trace] Initializing 'localization' +2022-03-16 17:01:37.753 [lua]-[trace] Initializing 'i18n' +2022-03-16 17:01:37.756 [lua]-[trace] Initializing 'config' +2022-03-16 17:01:37.769 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 17:01:37.769 [lua]-[trace] Initializing 'plugin' +2022-03-16 17:01:37.770 [lua]-[trace] Initializing 'uiloader' +2022-03-16 17:01:37.772 [lua]-[trace] Initializing 'stringify_slk' +2022-03-16 17:01:37.773 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-16 17:01:37.773 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-16 17:01:37.775 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-16 17:01:37.775 [lua]-[trace] Initializing 'lni-c' +2022-03-16 17:01:37.778 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-16 17:01:37.779 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-16 17:01:37.779 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-16 17:01:37.780 [lua]-[trace] Initializing 'w3xparser' +2022-03-16 17:01:37.800 [lua]-[trace] Initializing 'check_object' +2022-03-16 17:01:37.806 [lua]-[trace] Initializing 'ffi.storm' +2022-03-16 17:01:37.807 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-16 17:01:37.807 [lua]-[trace] Initializing 'ffi.gui' +2022-03-16 17:01:37.808 [event]-[trace] RegisterEvent id: 7 +2022-03-16 17:01:37.808 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-16 17:01:37.809 [event]-[trace] RegisterEvent id: 5 +2022-03-16 17:01:37.809 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-16 17:01:37.810 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-16 17:01:37.811 [lua]-[trace] Initializing 'compile.wave' +2022-03-16 17:01:37.812 [lua]-[trace] Initializing 'compile.template' +2022-03-16 17:01:37.812 [lua]-[trace] Initializing 'compile.cjass' +2022-03-16 17:01:37.813 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-16 17:01:37.814 [lua]-[trace] Initializing 'mpq_util' +2022-03-16 17:01:37.815 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-16 17:01:37.816 [lua]-[trace] Initializing 'compile.native' +2022-03-16 17:01:37.816 [event]-[trace] RegisterEvent id: 3 +2022-03-16 17:01:37.816 [event]-[trace] RegisterEvent id: 2 +2022-03-16 17:01:37.816 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-16 17:01:37.817 [lua]-[trace] Initializing 'w3x2lni' +2022-03-16 17:01:37.818 [lua]-[trace] Initializing 'utility' +2022-03-16 17:01:37.819 [lua]-[trace] Initializing 'mapdump' +2022-03-16 17:01:37.819 [event]-[trace] RegisterEvent id: 4 +2022-03-16 17:01:37.819 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-16 17:01:37.820 [event]-[trace] RegisterEvent id: 0 +2022-03-16 17:01:37.820 [event]-[trace] RegisterEvent id: 1 +2022-03-16 17:01:37.820 [event]-[trace] RegisterEvent id: 6 +2022-03-16 17:01:37.820 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-16 17:01:37.983 [event]-[trace] RegisterEvent id: 8 +2022-03-16 17:01:37.983 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-16 17:01:37.984 [event]-[trace] RegisterEvent id: 9 +2022-03-16 17:01:37.984 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-16 17:01:37.995 [event]-[info ] Entering main program. +2022-03-16 17:01:37.995 [event]-[debug] Command line: +2022-03-16 17:01:37.997 [lua]-[debug] ********************* on startup start ********************* +2022-03-16 17:01:38. 9 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-16 17:01:38. 9 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-16 17:01:38. 9 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-16 17:01:38. 9 [lua]-[trace] check_conflicting_ui +2022-03-16 17:01:38. 9 [lua]-[trace] check_conflicting_units +2022-03-16 17:01:38. 19 [lua]-[trace] clear_potential_conflicting +2022-03-16 17:01:38. 19 [lua]-[trace] check_war3_version +2022-03-16 17:01:38. 25 [lua]-[error] Cannot find war3.mpq +2022-03-16 17:01:38. 77 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-16 17:01:38.122 [lua]-[debug] Tesh loaded successfully. +2022-03-16 17:01:38.176 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-16 17:01:38.201 [lua]-[debug] YDClient loaded successfully. +2022-03-16 17:01:38.202 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-16 17:01:38.203 [lua]-[warn ] failed: disable +2022-03-16 17:01:38.203 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-16 17:01:38.204 [lua]-[warn ] failed: disable +2022-03-16 17:01:38.204 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-16 17:01:38.205 [lua]-[warn ] failed: disable +2022-03-16 17:01:38.205 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-16 17:01:38.282 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-16 17:01:38.287 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-16 17:01:38.290 [lua]-[debug] YDTrigger loaded successfully. +2022-03-16 17:01:38.291 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-16 17:01:38.293 [inject]-[debug] Start installing inline hooks. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-16 17:01:38.293 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-16 17:01:38.293 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-16 17:01:38.293 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-16 17:01:38.293 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-16 17:01:38.293 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-16 17:01:38.293 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-16 17:01:38.293 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-16 17:01:38.293 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-16 17:01:38.293 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-16 17:01:38.293 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-16 17:01:38.294 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-16 17:01:38.294 [inject]-[debug] Installing inline hooks complete. +2022-03-16 17:01:38.294 [inject]-[debug] IAT hook initialization started. +2022-03-16 17:01:38.294 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-16 17:01:38.294 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-16 17:01:38.294 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-16 17:01:38.294 [inject]-[debug] IAT hook initialization completed. +2022-03-16 17:01:38.294 [inject]-[debug] Patches initialization started. +2022-03-16 17:01:38.294 [inject]-[trace] Installing syntax check patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing auto disable patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing enable trigger check patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-16 17:01:38.294 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing doodad limit patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing unit/item limit patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing editor multi-instance patch +2022-03-16 17:01:38.294 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-16 17:01:38.294 [inject]-[trace] Installing attack table patch +2022-03-16 17:01:38.294 [inject]-[debug] Patches initialization completed. +2022-03-16 17:01:38.294 [inject]-[info ] YDWE startup complete. +2022-03-16 17:01:38.294 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-16 17:01:38.295 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-16 17:01:38.295 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-16 17:01:38.295 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-16 17:01:38.322 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-16 17:01:38.337 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-16 17:01:38.340 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-16 17:01:38.341 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-16 17:01:38.341 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-16 17:01:38.341 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-16 17:01:38.342 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-16 17:01:38.355 [lua]-[trace] Scanned file: 99 +2022-03-16 17:01:38.362 [lua]-[debug] ********************* on startup end ********************* +2022-03-16 17:01:39. 51 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 17:01:39. 77 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 17:01:39.273 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 17:01:39.417 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-16 17:01:39.419 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-16 17:01:39.420 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-16 17:01:39.421 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-16 17:01:39.422 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-16 17:01:41.526 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-16 17:01:41.527 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-16 17:01:49.788 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 17:01:49.788 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 17:01:49.788 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-16 17:01:50. 51 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-16 17:01:50. 70 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-16 17:01:50.193 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-16 17:32:29.202 [lua]-[debug] ********************* on exit start ********************* +2022-03-16 17:32:29.203 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-16 17:32:29.254 [inject]-[debug] IAT hook cleanup started. +2022-03-16 17:32:29.517 [inject]-[trace] WE IAT hook cleaned. +2022-03-16 17:32:29.517 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-16 17:32:29.517 [inject]-[debug] IAT hook cleanup completed. +2022-03-16 17:32:29.517 [inject]-[debug] Inline hook uninstallation begins! +2022-03-16 17:32:29.517 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-16 17:32:29.517 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-16 17:32:29.517 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-16 17:32:29.517 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-16 17:32:29.517 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-16 17:32:29.517 [inject]-[debug] Inline hook uninstallation finished! +2022-03-16 17:32:29.518 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-16 17:32:29.518 [lua]-[trace] Unload plugin YDClient. +2022-03-16 17:32:29.518 [lua]-[trace] Unload plugin Tesh. +2022-03-16 17:32:29.519 [lua]-[trace] Unload plugin YDTrigger. +2022-03-16 17:32:29.519 [lua]-[debug] ********************* on exit end ********************* +2022-03-16 17:32:29.519 [event]-[info ] Main program exit. +2022-03-16 17:32:29.684 [root]-[info ] Script engine has been shut down. +2022-03-17 18:26:42.810 [root]-[info ] ------------------------------------------------------ +2022-03-17 18:26:42.835 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-17 18:26:42.835 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-17 18:26:42.835 [root]-[info ] Windows version: 10.0.19041 +2022-03-17 18:26:42.837 [root]-[debug] Initialize script engine successfully. +2022-03-17 18:26:42.837 [root]-[info ] Script engine startup complete. +2022-03-17 18:26:42.838 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-17 18:26:42.839 [lua]-[trace] Initializing 'sys' +2022-03-17 18:26:42.841 [lua]-[trace] Initializing 'filesystem' +2022-03-17 18:26:42.844 [lua]-[trace] Initializing 'gui' +2022-03-17 18:26:42.847 [lua]-[trace] Initializing 'util' +2022-03-17 18:26:42.848 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-17 18:26:42.849 [lua]-[trace] Initializing 'ffi' +2022-03-17 18:26:42.851 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-17 18:26:42.851 [lua]-[trace] Initializing 'event' +2022-03-17 18:26:42.864 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-17 18:26:42.871 [lua]-[trace] Initializing 'registry' +2022-03-17 18:26:42.873 [lua]-[trace] Initializing 'version' +2022-03-17 18:26:42.874 [lua]-[trace] Initializing 'localization' +2022-03-17 18:26:42.874 [lua]-[trace] Initializing 'i18n' +2022-03-17 18:26:42.876 [lua]-[trace] Initializing 'config' +2022-03-17 18:26:42.884 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:26:42.884 [lua]-[trace] Initializing 'plugin' +2022-03-17 18:26:42.884 [lua]-[trace] Initializing 'uiloader' +2022-03-17 18:26:42.885 [lua]-[trace] Initializing 'stringify_slk' +2022-03-17 18:26:42.886 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-17 18:26:42.886 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-17 18:26:42.888 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-17 18:26:42.889 [lua]-[trace] Initializing 'lni-c' +2022-03-17 18:26:42.891 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-17 18:26:42.892 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-17 18:26:42.892 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-17 18:26:42.893 [lua]-[trace] Initializing 'w3xparser' +2022-03-17 18:26:42.896 [lua]-[trace] Initializing 'check_object' +2022-03-17 18:26:42.932 [lua]-[trace] Initializing 'ffi.storm' +2022-03-17 18:26:42.933 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-17 18:26:42.933 [lua]-[trace] Initializing 'ffi.gui' +2022-03-17 18:26:42.934 [event]-[trace] RegisterEvent id: 7 +2022-03-17 18:26:42.934 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-17 18:26:42.935 [event]-[trace] RegisterEvent id: 5 +2022-03-17 18:26:42.935 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-17 18:26:42.936 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-17 18:26:42.937 [lua]-[trace] Initializing 'compile.wave' +2022-03-17 18:26:42.938 [lua]-[trace] Initializing 'compile.template' +2022-03-17 18:26:42.939 [lua]-[trace] Initializing 'compile.cjass' +2022-03-17 18:26:42.939 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-17 18:26:42.940 [lua]-[trace] Initializing 'mpq_util' +2022-03-17 18:26:42.941 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-17 18:26:42.942 [lua]-[trace] Initializing 'compile.native' +2022-03-17 18:26:42.943 [event]-[trace] RegisterEvent id: 3 +2022-03-17 18:26:42.943 [event]-[trace] RegisterEvent id: 2 +2022-03-17 18:26:42.943 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-17 18:26:42.943 [lua]-[trace] Initializing 'w3x2lni' +2022-03-17 18:26:42.945 [lua]-[trace] Initializing 'utility' +2022-03-17 18:26:42.945 [lua]-[trace] Initializing 'mapdump' +2022-03-17 18:26:42.946 [event]-[trace] RegisterEvent id: 4 +2022-03-17 18:26:42.946 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-17 18:26:42.946 [event]-[trace] RegisterEvent id: 0 +2022-03-17 18:26:42.947 [event]-[trace] RegisterEvent id: 1 +2022-03-17 18:26:42.947 [event]-[trace] RegisterEvent id: 6 +2022-03-17 18:26:42.947 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-17 18:26:43. 93 [event]-[trace] RegisterEvent id: 8 +2022-03-17 18:26:43. 93 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-17 18:26:43. 94 [event]-[trace] RegisterEvent id: 9 +2022-03-17 18:26:43. 94 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-17 18:26:43.104 [event]-[info ] Entering main program. +2022-03-17 18:26:43.104 [event]-[debug] Command line: +2022-03-17 18:26:43.107 [lua]-[debug] ********************* on startup start ********************* +2022-03-17 18:26:43.151 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-17 18:26:43.151 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-17 18:26:43.151 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:26:43.151 [lua]-[trace] check_conflicting_ui +2022-03-17 18:26:43.168 [lua]-[trace] check_conflicting_units +2022-03-17 18:26:43.175 [lua]-[trace] clear_potential_conflicting +2022-03-17 18:26:43.176 [lua]-[trace] check_war3_version +2022-03-17 18:26:43.290 [lua]-[error] Cannot find war3.mpq +2022-03-17 18:26:43.413 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-17 18:26:43.471 [lua]-[debug] Tesh loaded successfully. +2022-03-17 18:26:43.621 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-17 18:26:43.636 [lua]-[debug] YDClient loaded successfully. +2022-03-17 18:26:43.715 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-17 18:26:43.735 [lua]-[warn ] failed: disable +2022-03-17 18:26:43.735 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-17 18:26:43.736 [lua]-[warn ] failed: disable +2022-03-17 18:26:43.737 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-17 18:26:43.737 [lua]-[warn ] failed: disable +2022-03-17 18:26:43.738 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-17 18:26:43.819 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-17 18:26:43.830 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-17 18:26:43.849 [lua]-[debug] YDTrigger loaded successfully. +2022-03-17 18:26:43.849 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-17 18:26:43.852 [inject]-[debug] Start installing inline hooks. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-17 18:26:43.852 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-17 18:26:43.852 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-17 18:26:43.852 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-17 18:26:43.852 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-17 18:26:43.852 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-17 18:26:43.852 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-17 18:26:43.852 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-17 18:26:43.853 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-17 18:26:43.853 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-17 18:26:43.853 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-17 18:26:43.853 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-17 18:26:43.853 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-17 18:26:43.853 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-17 18:26:43.853 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-17 18:26:43.853 [inject]-[debug] Installing inline hooks complete. +2022-03-17 18:26:43.853 [inject]-[debug] IAT hook initialization started. +2022-03-17 18:26:43.853 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-17 18:26:43.853 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-17 18:26:43.853 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-17 18:26:43.853 [inject]-[debug] IAT hook initialization completed. +2022-03-17 18:26:43.853 [inject]-[debug] Patches initialization started. +2022-03-17 18:26:43.853 [inject]-[trace] Installing syntax check patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing auto disable patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing enable trigger check patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-17 18:26:43.853 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing doodad limit patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing unit/item limit patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing editor multi-instance patch +2022-03-17 18:26:43.853 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-17 18:26:43.853 [inject]-[trace] Installing attack table patch +2022-03-17 18:26:43.853 [inject]-[debug] Patches initialization completed. +2022-03-17 18:26:43.853 [inject]-[info ] YDWE startup complete. +2022-03-17 18:26:43.853 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-17 18:26:43.854 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-17 18:26:43.854 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-17 18:26:43.854 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-17 18:26:43.883 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-17 18:26:43.893 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-17 18:26:43.896 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-17 18:26:43.896 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-17 18:26:43.896 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-17 18:26:43.897 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-17 18:26:43.897 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-17 18:26:43.915 [lua]-[trace] Scanned file: 99 +2022-03-17 18:26:43.919 [lua]-[debug] ********************* on startup end ********************* +2022-03-17 18:26:45.380 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-17 18:26:45.419 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-17 18:26:45.565 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-17 18:26:45.911 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-17 18:26:50.928 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-17 18:26:50.948 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-17 18:26:50.983 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-17 18:26:50.992 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-17 18:26:50.995 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-17 18:26:53.559 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-17 18:26:53.559 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-17 18:27:01.545 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-17 18:27:01.545 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-17 18:27:01.545 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-17 18:27:01.764 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-17 18:27:01.783 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-17 18:27:01.898 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-17 18:27:19.877 [event]-[info ] 无法读取文件: buildings\other\FountainOfLifeBlood\FountainOfLifeBlood.mdl +2022-03-17 18:28:51.918 [event]-[trace] WE is about to compile maps. +2022-03-17 18:28:53. 41 [lua]-[debug] ********************* on save start ********************* +2022-03-17 18:28:53. 42 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:28:53. 42 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-17 18:28:53. 42 [lua]-[trace] Save version 1.27.0.52240 +2022-03-17 18:28:53. 42 [lua]-[trace] mpq_util.update_file. +2022-03-17 18:28:53. 82 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-17 18:28:53. 82 [lua]-[trace] Processing file.out +2022-03-17 18:28:53.261 [lua]-[trace] Writing code to file.out +2022-03-17 18:28:53.261 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-17 18:28:53.271 [lua]-[trace] Injection completed +2022-03-17 18:28:53.271 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2022-03-17 18:28:53.271 [lua]-[trace] Injection completed +2022-03-17 18:28:53.271 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-17 18:28:53.271 [lua]-[trace] Injection completed +2022-03-17 18:28:53.271 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2022-03-17 18:28:53.272 [lua]-[trace] Injection completed +2022-03-17 18:28:53.272 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceLocTimed.j +2022-03-17 18:28:53.273 [lua]-[trace] Injection completed +2022-03-17 18:28:53.273 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-17 18:28:53.275 [lua]-[trace] Injection completed +2022-03-17 18:28:53.275 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2022-03-17 18:28:53.276 [lua]-[trace] Injection completed +2022-03-17 18:28:53.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\YDWEBase.j +2022-03-17 18:28:53.276 [lua]-[trace] Injection completed +2022-03-17 18:28:53.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiEffect.j +2022-03-17 18:28:53.276 [lua]-[trace] Injection completed +2022-03-17 18:28:53.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-17 18:28:53.278 [lua]-[trace] Injection completed +2022-03-17 18:28:53.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-17 18:28:53.278 [lua]-[trace] Injection completed +2022-03-17 18:28:53.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-17 18:28:53.279 [lua]-[trace] Injection completed +2022-03-17 18:28:53.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-17 18:28:53.280 [lua]-[trace] Injection completed +2022-03-17 18:28:53.280 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-17 18:28:53.281 [lua]-[trace] Injection completed +2022-03-17 18:28:53.281 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetRandomSubGroup.j +2022-03-17 18:28:53.281 [lua]-[trace] Injection completed +2022-03-17 18:28:53.281 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-17 18:28:53.282 [lua]-[trace] Injection completed +2022-03-17 18:28:53.282 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-17 18:28:53.283 [lua]-[trace] Injection completed +2022-03-17 18:28:53.283 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-17 18:28:53.284 [lua]-[trace] Injection completed +2022-03-17 18:28:53.284 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PlaySound.j +2022-03-17 18:28:53.284 [lua]-[trace] Injection completed +2022-03-17 18:28:53.284 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-17 18:28:53.285 [lua]-[trace] Injection completed +2022-03-17 18:28:53.285 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-17 18:28:53.286 [lua]-[trace] Injection completed +2022-03-17 18:28:53.286 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-17 18:28:53.287 [lua]-[trace] Injection completed +2022-03-17 18:28:53.287 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-17 18:28:53.288 [lua]-[trace] Injection completed +2022-03-17 18:28:53.288 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-17 18:28:53.288 [lua]-[trace] Injection completed +2022-03-17 18:28:53.288 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\YDWETimerSystem.j +2022-03-17 18:28:53.297 [lua]-[trace] Injection completed +2022-03-17 18:28:53.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PolledWait.j +2022-03-17 18:28:53.297 [lua]-[trace] Injection completed +2022-03-17 18:28:53.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-17 18:28:53.298 [lua]-[trace] Injection completed +2022-03-17 18:28:53.298 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocAll.j +2022-03-17 18:28:53.298 [lua]-[trace] Injection completed +2022-03-17 18:28:53.298 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-17 18:28:53.299 [lua]-[trace] Injection completed +2022-03-17 18:28:53.299 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-17 18:28:53.299 [lua]-[trace] Injection completed +2022-03-17 18:28:53.299 [lua]-[trace] Wave compilation start. +2022-03-17 18:28:53.783 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-17 18:28:56.535 [lua]-[trace] Template compilation start. +2022-03-17 18:28:56.649 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-17 18:28:56.654 [lua]-[trace] Initializing 'computed.order_list' +2022-03-17 18:28:56.721 [lua]-[trace] Initializing 'computed.order_id' +2022-03-17 18:28:56.777 [lua]-[debug] Template compilation succeeded. +2022-03-17 18:28:56.836 [lua]-[trace] JassHelper compilation start. +2022-03-17 18:28:58.666 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 1 +2022-03-17 18:28:58.667 [lua]-[debug] Result false +2022-03-17 18:28:58.667 [lua]-[debug] ********************* on save end ********************* +2022-03-17 18:29:08.960 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-17 18:29:14. 68 [event]-[trace] WE is about to compile maps. +2022-03-17 18:29:15.241 [lua]-[debug] ********************* on save start ********************* +2022-03-17 18:29:15.242 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:29:15.242 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-17 18:29:15.242 [lua]-[trace] Save version 1.27.0.52240 +2022-03-17 18:29:15.242 [lua]-[trace] mpq_util.update_file. +2022-03-17 18:29:15.258 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-17 18:29:15.258 [lua]-[trace] Processing file.out +2022-03-17 18:29:15.258 [lua]-[trace] Wave compilation start. +2022-03-17 18:29:15.642 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-17 18:29:18.134 [lua]-[trace] Template compilation start. +2022-03-17 18:29:18.271 [lua]-[debug] Template compilation succeeded. +2022-03-17 18:29:18.326 [lua]-[trace] JassHelper compilation start. +2022-03-17 18:29:19.861 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 1 +2022-03-17 18:29:19.861 [lua]-[debug] Result false +2022-03-17 18:29:19.861 [lua]-[debug] ********************* on save end ********************* +2022-03-17 18:29:25.657 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-17 18:30:53.723 [event]-[trace] WE is about to compile maps. +2022-03-17 18:30:54.784 [lua]-[debug] ********************* on save start ********************* +2022-03-17 18:30:54.785 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:30:54.785 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-17 18:30:54.785 [lua]-[trace] Save version 1.27.0.52240 +2022-03-17 18:30:54.785 [lua]-[trace] mpq_util.update_file. +2022-03-17 18:30:54.794 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-17 18:30:54.794 [lua]-[trace] Processing file.out +2022-03-17 18:30:54.794 [lua]-[trace] Wave compilation start. +2022-03-17 18:30:55.165 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-17 18:30:57.103 [lua]-[trace] Template compilation start. +2022-03-17 18:30:57.172 [lua]-[debug] Template compilation succeeded. +2022-03-17 18:30:57.202 [lua]-[trace] JassHelper compilation start. +2022-03-17 18:31:00.965 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 0 +2022-03-17 18:31:00.966 [lua]-[debug] Result true +2022-03-17 18:31:00.966 [lua]-[debug] ********************* on save end ********************* +2022-03-17 18:31:03.749 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:31:03.749 [event]-[trace] No need to compile. +2022-03-17 18:31:03.749 [lua]-[debug] ********************* on test start ********************* +2022-03-17 18:31:03.750 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:31:03.750 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:31:03.750 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:31:03.750 [lua]-[debug] Testing 0 +2022-03-17 18:31:11.394 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-17 18:31:11.394 [lua]-[debug] ********************* on test end ********************* +2022-03-17 18:33:51.738 [event]-[trace] WE is about to compile maps. +2022-03-17 18:33:52.849 [lua]-[debug] ********************* on save start ********************* +2022-03-17 18:33:52.850 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:33:52.850 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x +2022-03-17 18:33:52.850 [lua]-[trace] Save version 1.27.0.52240 +2022-03-17 18:33:52.850 [lua]-[trace] mpq_util.update_file. +2022-03-17 18:33:52.861 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.23.w3x +2022-03-17 18:33:52.861 [lua]-[trace] Processing file.out +2022-03-17 18:33:52.861 [lua]-[trace] Wave compilation start. +2022-03-17 18:33:53.190 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-17 18:33:55. 79 [lua]-[trace] Template compilation start. +2022-03-17 18:33:55.151 [lua]-[debug] Template compilation succeeded. +2022-03-17 18:33:55.181 [lua]-[trace] JassHelper compilation start. +2022-03-17 18:33:58.813 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.23.w3x", returned 0 +2022-03-17 18:33:58.814 [lua]-[debug] Result true +2022-03-17 18:33:58.814 [lua]-[debug] ********************* on save end ********************* +2022-03-17 18:34:12.989 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-17 18:34:22.935 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:34:22.935 [event]-[trace] No need to compile. +2022-03-17 18:34:22.935 [lua]-[debug] ********************* on test start ********************* +2022-03-17 18:34:22.936 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-17 18:34:22.936 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:34:22.936 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-17 18:34:22.936 [lua]-[debug] Testing 0 +2022-03-17 18:34:22.984 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-17 18:34:22.984 [lua]-[debug] ********************* on test end ********************* +2022-03-17 18:34:29.497 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-17 18:34:47.173 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-03-18 01:03:09.550 [lua]-[debug] ********************* on exit start ********************* +2022-03-18 01:03:09.575 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-18 01:03:09.575 [lua]-[trace] Unload plugin Tesh. +2022-03-18 01:03:09.594 [lua]-[trace] Unload plugin YDClient. +2022-03-18 01:03:09.594 [lua]-[trace] Unload plugin YDTrigger. +2022-03-18 01:03:09.596 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-18 01:03:09.597 [inject]-[debug] IAT hook cleanup started. +2022-03-18 01:03:09.597 [inject]-[trace] WE IAT hook cleaned. +2022-03-18 01:03:09.597 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-18 01:03:09.597 [inject]-[debug] IAT hook cleanup completed. +2022-03-18 01:03:09.597 [inject]-[debug] Inline hook uninstallation begins! +2022-03-18 01:03:09.597 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-18 01:03:09.597 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-18 01:03:09.597 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-18 01:03:09.597 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-18 01:03:09.597 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-18 01:03:09.597 [inject]-[debug] Inline hook uninstallation finished! +2022-03-18 01:03:09.598 [lua]-[debug] ********************* on exit end ********************* +2022-03-18 01:03:09.598 [event]-[info ] Main program exit. +2022-03-18 01:03:09.772 [root]-[info ] Script engine has been shut down. +2022-03-18 10:28:45.247 [root]-[info ] ------------------------------------------------------ +2022-03-18 10:28:45.363 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-18 10:28:45.363 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-18 10:28:45.363 [root]-[info ] Windows version: 10.0.19041 +2022-03-18 10:28:45.363 [root]-[debug] Initialize script engine successfully. +2022-03-18 10:28:45.363 [root]-[info ] Script engine startup complete. +2022-03-18 10:28:45.364 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-18 10:28:45.364 [lua]-[trace] Initializing 'sys' +2022-03-18 10:28:45.365 [lua]-[trace] Initializing 'filesystem' +2022-03-18 10:28:45.366 [lua]-[trace] Initializing 'gui' +2022-03-18 10:28:45.367 [lua]-[trace] Initializing 'util' +2022-03-18 10:28:45.368 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-18 10:28:45.368 [lua]-[trace] Initializing 'ffi' +2022-03-18 10:28:45.369 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-18 10:28:45.369 [lua]-[trace] Initializing 'event' +2022-03-18 10:28:45.372 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-18 10:28:45.374 [lua]-[trace] Initializing 'registry' +2022-03-18 10:28:45.376 [lua]-[trace] Initializing 'version' +2022-03-18 10:28:45.376 [lua]-[trace] Initializing 'localization' +2022-03-18 10:28:45.376 [lua]-[trace] Initializing 'i18n' +2022-03-18 10:28:45.378 [lua]-[trace] Initializing 'config' +2022-03-18 10:28:45.378 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:28:45.378 [lua]-[trace] Initializing 'plugin' +2022-03-18 10:28:45.379 [lua]-[trace] Initializing 'uiloader' +2022-03-18 10:28:45.379 [lua]-[trace] Initializing 'stringify_slk' +2022-03-18 10:28:45.379 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-18 10:28:45.380 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-18 10:28:45.380 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-18 10:28:45.381 [lua]-[trace] Initializing 'lni-c' +2022-03-18 10:28:45.382 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-18 10:28:45.382 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-18 10:28:45.383 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-18 10:28:45.383 [lua]-[trace] Initializing 'w3xparser' +2022-03-18 10:28:45.384 [lua]-[trace] Initializing 'check_object' +2022-03-18 10:28:45.385 [lua]-[trace] Initializing 'ffi.storm' +2022-03-18 10:28:45.386 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-18 10:28:45.386 [lua]-[trace] Initializing 'ffi.gui' +2022-03-18 10:28:45.386 [event]-[trace] RegisterEvent id: 7 +2022-03-18 10:28:45.387 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-18 10:28:45.387 [event]-[trace] RegisterEvent id: 5 +2022-03-18 10:28:45.387 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-18 10:28:45.387 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-18 10:28:45.388 [lua]-[trace] Initializing 'compile.wave' +2022-03-18 10:28:45.388 [lua]-[trace] Initializing 'compile.template' +2022-03-18 10:28:45.388 [lua]-[trace] Initializing 'compile.cjass' +2022-03-18 10:28:45.389 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-18 10:28:45.389 [lua]-[trace] Initializing 'mpq_util' +2022-03-18 10:28:45.390 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-18 10:28:45.390 [lua]-[trace] Initializing 'compile.native' +2022-03-18 10:28:45.391 [event]-[trace] RegisterEvent id: 3 +2022-03-18 10:28:45.391 [event]-[trace] RegisterEvent id: 2 +2022-03-18 10:28:45.391 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-18 10:28:45.391 [lua]-[trace] Initializing 'w3x2lni' +2022-03-18 10:28:45.392 [lua]-[trace] Initializing 'utility' +2022-03-18 10:28:45.392 [lua]-[trace] Initializing 'mapdump' +2022-03-18 10:28:45.392 [event]-[trace] RegisterEvent id: 4 +2022-03-18 10:28:45.392 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-18 10:28:45.393 [event]-[trace] RegisterEvent id: 0 +2022-03-18 10:28:45.393 [event]-[trace] RegisterEvent id: 1 +2022-03-18 10:28:45.393 [event]-[trace] RegisterEvent id: 6 +2022-03-18 10:28:45.393 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-18 10:28:45.543 [event]-[trace] RegisterEvent id: 8 +2022-03-18 10:28:45.543 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-18 10:28:45.543 [event]-[trace] RegisterEvent id: 9 +2022-03-18 10:28:45.543 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-18 10:28:45.547 [event]-[info ] Entering main program. +2022-03-18 10:28:45.547 [event]-[debug] Command line: +2022-03-18 10:28:45.551 [lua]-[debug] ********************* on startup start ********************* +2022-03-18 10:28:45.553 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-18 10:28:45.553 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-18 10:28:45.554 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:28:45.554 [lua]-[trace] check_conflicting_ui +2022-03-18 10:28:45.554 [lua]-[trace] check_conflicting_units +2022-03-18 10:28:45.554 [lua]-[trace] clear_potential_conflicting +2022-03-18 10:28:45.555 [lua]-[trace] check_war3_version +2022-03-18 10:28:45.559 [lua]-[error] Cannot find war3.mpq +2022-03-18 10:28:45.600 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-18 10:28:45.614 [lua]-[debug] Tesh loaded successfully. +2022-03-18 10:28:45.669 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-18 10:28:45.672 [lua]-[debug] YDClient loaded successfully. +2022-03-18 10:28:45.672 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-18 10:28:45.673 [lua]-[warn ] failed: disable +2022-03-18 10:28:45.673 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-18 10:28:45.674 [lua]-[warn ] failed: disable +2022-03-18 10:28:45.674 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-18 10:28:45.675 [lua]-[warn ] failed: disable +2022-03-18 10:28:45.675 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-18 10:28:45.776 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-18 10:28:45.780 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-18 10:28:45.782 [lua]-[debug] YDTrigger loaded successfully. +2022-03-18 10:28:45.783 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-18 10:28:45.784 [inject]-[debug] Start installing inline hooks. +2022-03-18 10:28:45.784 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-18 10:28:45.784 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-18 10:28:45.784 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-18 10:28:45.784 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-18 10:28:45.784 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-18 10:28:45.784 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-18 10:28:45.785 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-18 10:28:45.785 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-18 10:28:45.785 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-18 10:28:45.785 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-18 10:28:45.785 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-18 10:28:45.785 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-18 10:28:45.785 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-18 10:28:45.785 [inject]-[debug] Installing inline hooks complete. +2022-03-18 10:28:45.785 [inject]-[debug] IAT hook initialization started. +2022-03-18 10:28:45.785 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-18 10:28:45.785 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-18 10:28:45.785 [inject]-[debug] IAT hook initialization completed. +2022-03-18 10:28:45.785 [inject]-[debug] Patches initialization started. +2022-03-18 10:28:45.785 [inject]-[trace] Installing syntax check patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing auto disable patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing enable trigger check patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-18 10:28:45.785 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing doodad limit patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing unit/item limit patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing editor multi-instance patch +2022-03-18 10:28:45.785 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-18 10:28:45.785 [inject]-[trace] Installing attack table patch +2022-03-18 10:28:45.785 [inject]-[debug] Patches initialization completed. +2022-03-18 10:28:45.785 [inject]-[info ] YDWE startup complete. +2022-03-18 10:28:45.785 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-18 10:28:45.786 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-18 10:28:45.786 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-18 10:28:45.786 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-18 10:28:45.804 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-18 10:28:45.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-18 10:28:45.821 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-18 10:28:45.822 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-18 10:28:45.823 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-18 10:28:45.823 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-18 10:28:45.824 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-18 10:28:45.836 [lua]-[trace] Scanned file: 99 +2022-03-18 10:28:45.837 [lua]-[debug] ********************* on startup end ********************* +2022-03-18 10:28:46.323 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 10:28:46.340 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 10:28:46.476 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 10:28:46.583 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-18 10:28:51.493 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-18 10:28:51.523 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-18 10:28:51.538 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-18 10:28:51.547 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-18 10:28:51.549 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-18 10:28:54.353 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-18 10:28:54.353 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-18 10:29:03.338 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:29:03.338 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:29:03.338 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:29:03.558 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 10:29:03.583 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 10:29:03.707 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 10:29:16. 37 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:17.950 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:17.955 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:19.243 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:21.166 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:21.476 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:22.565 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:22.571 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:26. 57 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:29:32.778 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:29:32.778 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:29:32.778 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:29:32.977 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 10:29:33. 9 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 10:29:33.126 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 10:32:56. 41 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:32:56. 41 [event]-[trace] No need to compile. +2022-03-18 10:32:56. 41 [lua]-[debug] ********************* on test start ********************* +2022-03-18 10:32:56. 41 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:32:56. 41 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:32:56. 41 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:32:56. 41 [lua]-[debug] Testing 0 +2022-03-18 10:32:56.233 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 10:32:56.233 [lua]-[debug] ********************* on test end ********************* +2022-03-18 10:35:24.204 [event]-[trace] WE is about to compile maps. +2022-03-18 10:35:26.464 [lua]-[debug] ********************* on save start ********************* +2022-03-18 10:35:26.465 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:35:26.465 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 10:35:26.466 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 10:35:26.466 [lua]-[trace] mpq_util.update_file. +2022-03-18 10:35:26.623 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 10:35:26.623 [lua]-[trace] Processing file.out +2022-03-18 10:35:26.623 [lua]-[trace] Wave compilation start. +2022-03-18 10:35:26.960 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 10:35:28.574 [lua]-[trace] Template compilation start. +2022-03-18 10:35:28.616 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-18 10:35:28.625 [lua]-[trace] Initializing 'computed.order_list' +2022-03-18 10:35:28.628 [lua]-[trace] Initializing 'computed.order_id' +2022-03-18 10:35:28.651 [lua]-[trace] Initializing 'slk' +2022-03-18 10:35:28.864 [lua]-[trace] Initializing 'archive' +2022-03-18 10:35:28.886 [lua]-[trace] Initializing 'archive_mpq' +2022-03-18 10:35:28.887 [lua]-[trace] Initializing 'archive_dir' +2022-03-18 10:35:28.888 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-18 10:35:28.889 [lua]-[trace] Initializing 'progress' +2022-03-18 10:35:28.889 [lua]-[trace] Initializing 'slk.frontend' +2022-03-18 10:35:28.890 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-18 10:35:28.891 [lua]-[trace] Initializing 'lpeg' +2022-03-18 10:35:28.925 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-18 10:35:29.142 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-18 10:35:29.175 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-18 10:35:29.348 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-18 10:35:29.363 [lua]-[debug] Template compilation succeeded. +2022-03-18 10:35:29.507 [lua]-[trace] JassHelper compilation start. +2022-03-18 10:35:33.530 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 1 +2022-03-18 10:35:33.531 [lua]-[debug] Result false +2022-03-18 10:35:33.531 [lua]-[debug] ********************* on save end ********************* +2022-03-18 10:35:39.221 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-18 10:35:46.722 [event]-[trace] WE is about to compile maps. +2022-03-18 10:35:49. 89 [lua]-[debug] ********************* on save start ********************* +2022-03-18 10:35:49. 90 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:35:49. 90 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 10:35:49. 90 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 10:35:49. 90 [lua]-[trace] mpq_util.update_file. +2022-03-18 10:35:49. 99 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 10:35:49. 99 [lua]-[trace] Processing file.out +2022-03-18 10:35:49.206 [lua]-[trace] Writing code to file.out +2022-03-18 10:35:49.207 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 10:35:49.229 [lua]-[trace] Injection completed +2022-03-18 10:35:49.229 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 10:35:49.230 [lua]-[trace] Injection completed +2022-03-18 10:35:49.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 10:35:49.231 [lua]-[trace] Injection completed +2022-03-18 10:35:49.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 10:35:49.240 [lua]-[trace] Injection completed +2022-03-18 10:35:49.240 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 10:35:49.251 [lua]-[trace] Injection completed +2022-03-18 10:35:49.251 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 10:35:49.252 [lua]-[trace] Injection completed +2022-03-18 10:35:49.252 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 10:35:49.252 [lua]-[trace] Injection completed +2022-03-18 10:35:49.252 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 10:35:49.253 [lua]-[trace] Injection completed +2022-03-18 10:35:49.253 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 10:35:49.253 [lua]-[trace] Injection completed +2022-03-18 10:35:49.253 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 10:35:49.255 [lua]-[trace] Injection completed +2022-03-18 10:35:49.255 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 10:35:49.255 [lua]-[trace] Injection completed +2022-03-18 10:35:49.255 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 10:35:49.256 [lua]-[trace] Injection completed +2022-03-18 10:35:49.256 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 10:35:49.257 [lua]-[trace] Injection completed +2022-03-18 10:35:49.257 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 10:35:49.258 [lua]-[trace] Injection completed +2022-03-18 10:35:49.258 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 10:35:49.258 [lua]-[trace] Injection completed +2022-03-18 10:35:49.258 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 10:35:49.259 [lua]-[trace] Injection completed +2022-03-18 10:35:49.259 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 10:35:49.260 [lua]-[trace] Injection completed +2022-03-18 10:35:49.260 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 10:35:49.261 [lua]-[trace] Injection completed +2022-03-18 10:35:49.261 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 10:35:49.263 [lua]-[trace] Injection completed +2022-03-18 10:35:49.263 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 10:35:49.264 [lua]-[trace] Injection completed +2022-03-18 10:35:49.264 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 10:35:49.264 [lua]-[trace] Injection completed +2022-03-18 10:35:49.264 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 10:35:49.265 [lua]-[trace] Injection completed +2022-03-18 10:35:49.265 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 10:35:49.265 [lua]-[trace] Injection completed +2022-03-18 10:35:49.265 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 10:35:49.266 [lua]-[trace] Injection completed +2022-03-18 10:35:49.266 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 10:35:49.267 [lua]-[trace] Injection completed +2022-03-18 10:35:49.267 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 10:35:49.267 [lua]-[trace] Injection completed +2022-03-18 10:35:49.267 [lua]-[trace] Wave compilation start. +2022-03-18 10:35:49.591 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 10:35:51.159 [lua]-[trace] Template compilation start. +2022-03-18 10:35:51.214 [lua]-[trace] Initializing 'slk' +2022-03-18 10:35:51.714 [lua]-[debug] Template compilation succeeded. +2022-03-18 10:35:51.738 [lua]-[trace] JassHelper compilation start. +2022-03-18 10:35:55. 16 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 10:35:55. 16 [lua]-[debug] Result true +2022-03-18 10:35:55. 16 [lua]-[debug] ********************* on save end ********************* +2022-03-18 10:36:06.820 [event]-[trace] WE is about to compile maps. +2022-03-18 10:36:09.391 [lua]-[debug] ********************* on save start ********************* +2022-03-18 10:36:09.391 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:36:09.391 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 10:36:09.391 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 10:36:09.391 [lua]-[trace] mpq_util.update_file. +2022-03-18 10:36:09.398 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 10:36:09.398 [lua]-[trace] Processing file.out +2022-03-18 10:36:09.491 [lua]-[trace] Writing code to file.out +2022-03-18 10:36:09.491 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 10:36:09.491 [lua]-[trace] Injection completed +2022-03-18 10:36:09.491 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 10:36:09.491 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 10:36:09.492 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 10:36:09.492 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 10:36:09.492 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 10:36:09.492 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 10:36:09.492 [lua]-[trace] Injection completed +2022-03-18 10:36:09.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 10:36:09.493 [lua]-[trace] Injection completed +2022-03-18 10:36:09.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 10:36:09.494 [lua]-[trace] Injection completed +2022-03-18 10:36:09.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 10:36:09.495 [lua]-[trace] Injection completed +2022-03-18 10:36:09.495 [lua]-[trace] Wave compilation start. +2022-03-18 10:36:09.799 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 10:36:11.238 [lua]-[trace] Template compilation start. +2022-03-18 10:36:11.290 [lua]-[trace] Initializing 'slk' +2022-03-18 10:36:11.727 [lua]-[debug] Template compilation succeeded. +2022-03-18 10:36:11.795 [lua]-[trace] JassHelper compilation start. +2022-03-18 10:36:14.934 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 10:36:14.935 [lua]-[debug] Result true +2022-03-18 10:36:14.935 [lua]-[debug] ********************* on save end ********************* +2022-03-18 10:36:23.911 [event]-[info ] 无法读取文件: buildings\other\FountainOfLifeBlood\FountainOfLifeBlood.mdl +2022-03-18 10:36:24.600 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:36:24.600 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:36:24.600 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 10:36:24.815 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 10:36:24.885 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 10:36:25. 8 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 10:39:58.704 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:39:58.704 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:39:58.704 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 10:39:58.897 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 10:39:58.916 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 10:39:59. 31 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 10:40:51.153 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:40:51.153 [event]-[trace] No need to compile. +2022-03-18 10:40:51.153 [lua]-[debug] ********************* on test start ********************* +2022-03-18 10:40:51.154 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:40:51.154 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:40:51.154 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:40:51.154 [lua]-[debug] Testing 0 +2022-03-18 10:40:51.206 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 10:40:51.206 [lua]-[debug] ********************* on test end ********************* +2022-03-18 10:48:37.374 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:48:37.374 [event]-[trace] No need to compile. +2022-03-18 10:48:37.374 [lua]-[debug] ********************* on test start ********************* +2022-03-18 10:48:37.377 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:48:37.377 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:48:37.377 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:48:37.377 [lua]-[debug] Testing 0 +2022-03-18 10:48:37.428 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 10:48:37.429 [lua]-[debug] ********************* on test end ********************* +2022-03-18 10:51:07. 75 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07. 75 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.136 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.136 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.222 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.222 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.226 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.227 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:07.227 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 10:51:23.470 [event]-[trace] WE is about to compile maps. +2022-03-18 10:51:25.729 [lua]-[debug] ********************* on save start ********************* +2022-03-18 10:51:25.731 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:51:25.731 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 10:51:25.731 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 10:51:25.731 [lua]-[trace] mpq_util.update_file. +2022-03-18 10:51:25.738 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 10:51:25.738 [lua]-[trace] Processing file.out +2022-03-18 10:51:25.828 [lua]-[trace] Writing code to file.out +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 10:51:25.829 [lua]-[trace] Injection completed +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 10:51:25.829 [lua]-[trace] Injection completed +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 10:51:25.829 [lua]-[trace] Injection completed +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 10:51:25.829 [lua]-[trace] Injection completed +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 10:51:25.829 [lua]-[trace] Injection completed +2022-03-18 10:51:25.829 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 10:51:25.830 [lua]-[trace] Injection completed +2022-03-18 10:51:25.830 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.831 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.831 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.831 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.831 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.831 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 10:51:25.831 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 10:51:25.832 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 10:51:25.832 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 10:51:25.832 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 10:51:25.832 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 10:51:25.832 [lua]-[trace] Injection completed +2022-03-18 10:51:25.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 10:51:25.833 [lua]-[trace] Injection completed +2022-03-18 10:51:25.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 10:51:25.833 [lua]-[trace] Injection completed +2022-03-18 10:51:25.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 10:51:25.833 [lua]-[trace] Injection completed +2022-03-18 10:51:25.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 10:51:25.833 [lua]-[trace] Injection completed +2022-03-18 10:51:25.833 [lua]-[trace] Wave compilation start. +2022-03-18 10:51:26.142 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 10:51:27.533 [lua]-[trace] Template compilation start. +2022-03-18 10:51:27.582 [lua]-[trace] Initializing 'slk' +2022-03-18 10:51:28.224 [lua]-[debug] Template compilation succeeded. +2022-03-18 10:51:28.248 [lua]-[trace] JassHelper compilation start. +2022-03-18 10:51:31.535 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 10:51:31.536 [lua]-[debug] Result true +2022-03-18 10:51:31.536 [lua]-[debug] ********************* on save end ********************* +2022-03-18 10:52:14.722 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:52:14.722 [event]-[trace] No need to compile. +2022-03-18 10:52:14.722 [lua]-[debug] ********************* on test start ********************* +2022-03-18 10:52:14.722 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 10:52:14.722 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:52:14.722 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 10:52:14.722 [lua]-[debug] Testing 0 +2022-03-18 10:52:14.775 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 10:52:14.775 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:02:56.859 [event]-[trace] WE is about to compile maps. +2022-03-18 11:02:59.294 [lua]-[debug] ********************* on save start ********************* +2022-03-18 11:02:59.296 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:02:59.296 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 11:02:59.296 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 11:02:59.296 [lua]-[trace] mpq_util.update_file. +2022-03-18 11:02:59.303 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 11:02:59.303 [lua]-[trace] Processing file.out +2022-03-18 11:02:59.394 [lua]-[trace] Writing code to file.out +2022-03-18 11:02:59.394 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 11:02:59.394 [lua]-[trace] Injection completed +2022-03-18 11:02:59.394 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 11:02:59.394 [lua]-[trace] Injection completed +2022-03-18 11:02:59.394 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 11:02:59.395 [lua]-[trace] Injection completed +2022-03-18 11:02:59.395 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 11:02:59.396 [lua]-[trace] Injection completed +2022-03-18 11:02:59.396 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.397 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 11:02:59.397 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.398 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 11:02:59.398 [lua]-[trace] Injection completed +2022-03-18 11:02:59.399 [lua]-[trace] Wave compilation start. +2022-03-18 11:02:59.744 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 11:03:01.145 [lua]-[trace] Template compilation start. +2022-03-18 11:03:01.193 [lua]-[trace] Initializing 'slk' +2022-03-18 11:03:07.747 [lua]-[error] Template error processing: [string "..."]:23568: not enough memory for buffer allocation +stack traceback: + F:\MapJ\ٷ༭\share\script\compile\template.lua:102: in function + [C]: in function 'table.concat' + [string "..."]:23568: in main chunk + [C]: in function 'xpcall' + F:\MapJ\ٷ༭\share\script\compile\template.lua:102: in method 'do_compile' + F:\MapJ\ٷ༭\share\script\compile\template.lua:115: in method 'compile' + F:\MapJ\ٷ༭\share\script\ydwe_on_save.lua:84: in function + [C]: in function 'pcall' + F:\MapJ\ٷ༭\share\script\mpq_util.lua:30: in method 'update_file' + F:\MapJ\ٷ༭\share\script\ydwe_on_save.lua:53: in upvalue 'compile_map' + F:\MapJ\ٷ༭\share\script\ydwe_on_save.lua:175: in function +2022-03-18 11:03:07.747 [lua]-[error] Processor function cannot complete its task. +2022-03-18 11:03:07.747 [lua]-[debug] Result false +2022-03-18 11:03:07.747 [lua]-[debug] ********************* on save end ********************* +2022-03-18 11:03:27.636 [root]-[info ] ------------------------------------------------------ +2022-03-18 11:03:27.641 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-18 11:03:27.641 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-18 11:03:27.641 [root]-[info ] Windows version: 10.0.19041 +2022-03-18 11:03:27.641 [root]-[debug] Initialize script engine successfully. +2022-03-18 11:03:27.642 [root]-[info ] Script engine startup complete. +2022-03-18 11:03:27.642 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-18 11:03:27.642 [lua]-[trace] Initializing 'sys' +2022-03-18 11:03:27.643 [lua]-[trace] Initializing 'filesystem' +2022-03-18 11:03:27.644 [lua]-[trace] Initializing 'gui' +2022-03-18 11:03:27.645 [lua]-[trace] Initializing 'util' +2022-03-18 11:03:27.645 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-18 11:03:27.646 [lua]-[trace] Initializing 'ffi' +2022-03-18 11:03:27.647 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 +2022-03-18 11:03:27.647 [lua]-[trace] Initializing 'event' +2022-03-18 11:03:27.649 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-18 11:03:27.651 [lua]-[trace] Initializing 'registry' +2022-03-18 11:03:27.652 [lua]-[trace] Initializing 'version' +2022-03-18 11:03:27.652 [lua]-[trace] Initializing 'localization' +2022-03-18 11:03:27.652 [lua]-[trace] Initializing 'i18n' +2022-03-18 11:03:27.654 [lua]-[trace] Initializing 'config' +2022-03-18 11:03:27.654 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:03:27.654 [lua]-[trace] Initializing 'plugin' +2022-03-18 11:03:27.655 [lua]-[trace] Initializing 'uiloader' +2022-03-18 11:03:27.655 [lua]-[trace] Initializing 'stringify_slk' +2022-03-18 11:03:27.655 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-18 11:03:27.656 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-18 11:03:27.656 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-18 11:03:27.656 [lua]-[trace] Initializing 'lni-c' +2022-03-18 11:03:27.657 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-18 11:03:27.658 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-18 11:03:27.658 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-18 11:03:27.658 [lua]-[trace] Initializing 'w3xparser' +2022-03-18 11:03:27.660 [lua]-[trace] Initializing 'check_object' +2022-03-18 11:03:27.661 [lua]-[trace] Initializing 'ffi.storm' +2022-03-18 11:03:27.662 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-18 11:03:27.662 [lua]-[trace] Initializing 'ffi.gui' +2022-03-18 11:03:27.663 [event]-[trace] RegisterEvent id: 7 +2022-03-18 11:03:27.664 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-18 11:03:27.664 [event]-[trace] RegisterEvent id: 5 +2022-03-18 11:03:27.664 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-18 11:03:27.665 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-18 11:03:27.665 [lua]-[trace] Initializing 'compile.wave' +2022-03-18 11:03:27.665 [lua]-[trace] Initializing 'compile.template' +2022-03-18 11:03:27.666 [lua]-[trace] Initializing 'compile.cjass' +2022-03-18 11:03:27.666 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-18 11:03:27.666 [lua]-[trace] Initializing 'mpq_util' +2022-03-18 11:03:27.667 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-18 11:03:27.668 [lua]-[trace] Initializing 'compile.native' +2022-03-18 11:03:27.668 [event]-[trace] RegisterEvent id: 3 +2022-03-18 11:03:27.668 [event]-[trace] RegisterEvent id: 2 +2022-03-18 11:03:27.668 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-18 11:03:27.669 [lua]-[trace] Initializing 'w3x2lni' +2022-03-18 11:03:27.669 [lua]-[trace] Initializing 'utility' +2022-03-18 11:03:27.670 [lua]-[trace] Initializing 'mapdump' +2022-03-18 11:03:27.670 [event]-[trace] RegisterEvent id: 4 +2022-03-18 11:03:27.670 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-18 11:03:27.670 [event]-[trace] RegisterEvent id: 0 +2022-03-18 11:03:27.671 [event]-[trace] RegisterEvent id: 1 +2022-03-18 11:03:27.671 [event]-[trace] RegisterEvent id: 6 +2022-03-18 11:03:27.671 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-18 11:03:27.819 [event]-[trace] RegisterEvent id: 8 +2022-03-18 11:03:27.819 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-18 11:03:27.819 [event]-[trace] RegisterEvent id: 9 +2022-03-18 11:03:27.819 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-18 11:03:27.888 [event]-[info ] Entering main program. +2022-03-18 11:03:27.888 [event]-[debug] Command line: +2022-03-18 11:03:27.892 [lua]-[debug] ********************* on startup start ********************* +2022-03-18 11:03:27.893 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-18 11:03:27.893 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-18 11:03:27.894 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:03:27.894 [lua]-[trace] check_conflicting_ui +2022-03-18 11:03:27.894 [lua]-[trace] check_conflicting_units +2022-03-18 11:03:27.894 [lua]-[trace] clear_potential_conflicting +2022-03-18 11:03:27.895 [lua]-[trace] check_war3_version +2022-03-18 11:03:27.898 [lua]-[error] Cannot find war3.mpq +2022-03-18 11:03:27.901 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\tesh\Tesh.plcfg +2022-03-18 11:03:27.926 [lua]-[debug] Tesh loaded successfully. +2022-03-18 11:03:27.947 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDClient.plcfg +2022-03-18 11:03:27.948 [lua]-[debug] YDClient loaded successfully. +2022-03-18 11:03:27.948 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-03-18 11:03:27.949 [lua]-[warn ] failed: disable +2022-03-18 11:03:27.949 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDFont\YDFont.plcfg +2022-03-18 11:03:27.950 [lua]-[warn ] failed: disable +2022-03-18 11:03:27.950 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDInternalIdShow.plcfg +2022-03-18 11:03:27.950 [lua]-[warn ] failed: disable +2022-03-18 11:03:27.951 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTaskbarSupport.plcfg +2022-03-18 11:03:28. 39 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-18 11:03:28. 42 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDTrigger.plcfg +2022-03-18 11:03:28. 43 [lua]-[debug] YDTrigger loaded successfully. +2022-03-18 11:03:28. 44 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器\plugin\YDWeHelper.plcfg +2022-03-18 11:03:28. 45 [inject]-[debug] Start installing inline hooks. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-18 11:03:28. 45 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-18 11:03:28. 45 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-18 11:03:28. 45 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-18 11:03:28. 45 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-18 11:03:28. 45 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-18 11:03:28. 45 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-18 11:03:28. 45 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-18 11:03:28. 46 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-18 11:03:28. 46 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-18 11:03:28. 46 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-18 11:03:28. 46 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-18 11:03:28. 46 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-18 11:03:28. 46 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-18 11:03:28. 46 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-18 11:03:28. 46 [inject]-[debug] Installing inline hooks complete. +2022-03-18 11:03:28. 46 [inject]-[debug] IAT hook initialization started. +2022-03-18 11:03:28. 46 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-18 11:03:28. 46 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-18 11:03:28. 46 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-18 11:03:28. 46 [inject]-[debug] IAT hook initialization completed. +2022-03-18 11:03:28. 46 [inject]-[debug] Patches initialization started. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing syntax check patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing auto disable patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing enable trigger check patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-18 11:03:28. 46 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing doodad limit patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing unit/item limit patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing editor multi-instance patch +2022-03-18 11:03:28. 46 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-18 11:03:28. 46 [inject]-[trace] Installing attack table patch +2022-03-18 11:03:28. 46 [inject]-[debug] Patches initialization completed. +2022-03-18 11:03:28. 46 [inject]-[info ] YDWE startup complete. +2022-03-18 11:03:28. 46 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-18 11:03:28. 47 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass +2022-03-18 11:03:28. 47 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak +2022-03-18 11:03:28. 47 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\AntiBJLeak\detail +2022-03-18 11:03:28. 61 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Base +2022-03-18 11:03:28. 63 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\japi +2022-03-18 11:03:28. 65 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\PreloadSL +2022-03-18 11:03:28. 65 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system +2022-03-18 11:03:28. 65 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\ht +2022-03-18 11:03:28. 65 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\system\rb +2022-03-18 11:03:28. 66 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器\jass\Util +2022-03-18 11:03:28. 73 [lua]-[trace] Scanned file: 99 +2022-03-18 11:03:28. 75 [lua]-[debug] ********************* on startup end ********************* +2022-03-18 11:03:28.534 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 11:03:28.553 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 11:03:28.680 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 11:03:28.773 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-18 11:03:29.888 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-18 11:03:29.890 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-18 11:03:29.890 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-18 11:03:29.891 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-18 11:03:29.892 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-18 11:03:32.334 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-18 11:03:32.335 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-18 11:03:40.673 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 11:03:40.673 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 11:03:40.673 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 11:03:40.880 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 11:03:40.899 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 11:03:41. 15 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 11:04:06.155 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:07.380 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:07.384 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:08.239 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:09.497 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:09.734 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:10.466 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:10.470 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:12.673 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 11:04:17.686 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 11:04:17.686 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 11:04:17.686 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 11:04:17.908 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 11:04:17.928 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 11:04:18. 45 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 11:10:41.327 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:10:41.327 [event]-[trace] No need to compile. +2022-03-18 11:10:41.327 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:10:41.327 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:10:41.327 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:10:41.327 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:10:41.327 [lua]-[debug] Testing 0 +2022-03-18 11:10:41.390 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:10:41.390 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:10:52.238 [event]-[trace] WE is about to compile maps. +2022-03-18 11:10:54.464 [lua]-[debug] ********************* on save start ********************* +2022-03-18 11:10:54.465 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:10:54.465 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 11:10:54.465 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 11:10:54.465 [lua]-[trace] mpq_util.update_file. +2022-03-18 11:10:54.491 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 11:10:54.491 [lua]-[trace] Processing file.out +2022-03-18 11:10:54.586 [lua]-[trace] Writing code to file.out +2022-03-18 11:10:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 11:10:54.587 [lua]-[trace] Injection completed +2022-03-18 11:10:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 11:10:54.587 [lua]-[trace] Injection completed +2022-03-18 11:10:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 11:10:54.587 [lua]-[trace] Injection completed +2022-03-18 11:10:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 11:10:54.587 [lua]-[trace] Injection completed +2022-03-18 11:10:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 11:10:54.588 [lua]-[trace] Injection completed +2022-03-18 11:10:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 11:10:54.589 [lua]-[trace] Injection completed +2022-03-18 11:10:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 11:10:54.590 [lua]-[trace] Injection completed +2022-03-18 11:10:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 11:10:54.591 [lua]-[trace] Injection completed +2022-03-18 11:10:54.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 11:10:54.591 [lua]-[trace] Injection completed +2022-03-18 11:10:54.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 11:10:54.591 [lua]-[trace] Injection completed +2022-03-18 11:10:54.591 [lua]-[trace] Wave compilation start. +2022-03-18 11:10:54.902 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 11:10:56.319 [lua]-[trace] Template compilation start. +2022-03-18 11:10:56.359 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-18 11:10:56.380 [lua]-[trace] Initializing 'computed.order_list' +2022-03-18 11:10:56.382 [lua]-[trace] Initializing 'computed.order_id' +2022-03-18 11:10:56.391 [lua]-[trace] Initializing 'slk' +2022-03-18 11:10:56.532 [lua]-[trace] Initializing 'archive' +2022-03-18 11:10:56.533 [lua]-[trace] Initializing 'archive_mpq' +2022-03-18 11:10:56.533 [lua]-[trace] Initializing 'archive_dir' +2022-03-18 11:10:56.534 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-18 11:10:56.534 [lua]-[trace] Initializing 'progress' +2022-03-18 11:10:56.535 [lua]-[trace] Initializing 'slk.frontend' +2022-03-18 11:10:56.537 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-18 11:10:56.538 [lua]-[trace] Initializing 'lpeg' +2022-03-18 11:10:56.569 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-18 11:10:56.769 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-18 11:10:56.791 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-18 11:10:56.982 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-18 11:10:57. 2 [lua]-[debug] Template compilation succeeded. +2022-03-18 11:10:57. 26 [lua]-[trace] JassHelper compilation start. +2022-03-18 11:11:00.519 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 11:11:00.520 [lua]-[debug] Result true +2022-03-18 11:11:00.520 [lua]-[debug] ********************* on save end ********************* +2022-03-18 11:11:02.302 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:02.302 [event]-[trace] No need to compile. +2022-03-18 11:11:02.302 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:11:02.302 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:11:02.303 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:02.303 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:02.303 [lua]-[debug] Testing 0 +2022-03-18 11:11:02.354 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:11:02.354 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:11:11. 19 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:11. 19 [event]-[trace] No need to compile. +2022-03-18 11:11:11. 19 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:11:11. 20 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:11:11. 20 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:11. 20 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:11:11. 20 [lua]-[debug] Testing 0 +2022-03-18 11:11:11. 72 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:11:11. 72 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:12:55.546 [lua]-[trace] Executed "F:\MapJ\官方编辑器\bin\YDWEConfig.exe". +2022-03-18 11:18:45.291 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:18:45.291 [event]-[trace] No need to compile. +2022-03-18 11:18:45.291 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:18:45.293 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:18:45.293 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:18:45.293 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:18:45.293 [lua]-[debug] Testing 0 +2022-03-18 11:18:45.346 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:18:45.346 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:33:59.557 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:33:59.558 [event]-[trace] No need to compile. +2022-03-18 11:33:59.558 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:33:59.559 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:33:59.559 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:33:59.559 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:33:59.559 [lua]-[debug] Testing 0 +2022-03-18 11:33:59.613 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:33:59.613 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:35:29.501 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:35:29.501 [event]-[trace] No need to compile. +2022-03-18 11:35:29.501 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:35:29.501 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:35:29.502 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:35:29.502 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:35:29.502 [lua]-[debug] Testing 0 +2022-03-18 11:35:29.637 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:35:29.637 [lua]-[debug] ********************* on test end ********************* +2022-03-18 11:37:10.856 [event]-[trace] WE is about to compile maps. +2022-03-18 11:37:13.172 [lua]-[debug] ********************* on save start ********************* +2022-03-18 11:37:13.438 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:37:13.438 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x +2022-03-18 11:37:13.438 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 11:37:13.438 [lua]-[trace] mpq_util.update_file. +2022-03-18 11:37:13.499 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 11:37:13.499 [lua]-[trace] Processing file.out +2022-03-18 11:37:13.591 [lua]-[trace] Writing code to file.out +2022-03-18 11:37:13.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 11:37:13.599 [lua]-[trace] Injection completed +2022-03-18 11:37:13.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 11:37:13.600 [lua]-[trace] Injection completed +2022-03-18 11:37:13.600 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 11:37:13.607 [lua]-[trace] Injection completed +2022-03-18 11:37:13.607 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 11:37:13.618 [lua]-[trace] Injection completed +2022-03-18 11:37:13.618 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 11:37:13.619 [lua]-[trace] Injection completed +2022-03-18 11:37:13.619 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 11:37:13.629 [lua]-[trace] Injection completed +2022-03-18 11:37:13.629 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 11:37:13.630 [lua]-[trace] Injection completed +2022-03-18 11:37:13.630 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 11:37:13.632 [lua]-[trace] Injection completed +2022-03-18 11:37:13.632 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 11:37:13.633 [lua]-[trace] Injection completed +2022-03-18 11:37:13.633 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 11:37:13.634 [lua]-[trace] Injection completed +2022-03-18 11:37:13.634 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 11:37:13.635 [lua]-[trace] Injection completed +2022-03-18 11:37:13.635 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 11:37:13.636 [lua]-[trace] Injection completed +2022-03-18 11:37:13.636 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 11:37:13.636 [lua]-[trace] Injection completed +2022-03-18 11:37:13.636 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 11:37:13.637 [lua]-[trace] Injection completed +2022-03-18 11:37:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 11:37:13.639 [lua]-[trace] Injection completed +2022-03-18 11:37:13.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 11:37:13.639 [lua]-[trace] Injection completed +2022-03-18 11:37:13.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 11:37:13.640 [lua]-[trace] Injection completed +2022-03-18 11:37:13.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 11:37:13.641 [lua]-[trace] Injection completed +2022-03-18 11:37:13.641 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 11:37:13.642 [lua]-[trace] Injection completed +2022-03-18 11:37:13.642 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 11:37:13.642 [lua]-[trace] Injection completed +2022-03-18 11:37:13.643 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 11:37:13.643 [lua]-[trace] Injection completed +2022-03-18 11:37:13.643 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 11:37:13.644 [lua]-[trace] Injection completed +2022-03-18 11:37:13.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 11:37:13.646 [lua]-[trace] Injection completed +2022-03-18 11:37:13.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 11:37:13.646 [lua]-[trace] Injection completed +2022-03-18 11:37:13.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 11:37:13.646 [lua]-[trace] Injection completed +2022-03-18 11:37:13.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 11:37:13.648 [lua]-[trace] Injection completed +2022-03-18 11:37:13.648 [lua]-[trace] Wave compilation start. +2022-03-18 11:37:13.992 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 11:37:15.573 [lua]-[trace] Template compilation start. +2022-03-18 11:37:15.727 [lua]-[trace] Initializing 'slk' +2022-03-18 11:37:17.969 [lua]-[debug] Template compilation succeeded. +2022-03-18 11:37:17.993 [lua]-[trace] JassHelper compilation start. +2022-03-18 11:37:21.317 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 11:37:21.317 [lua]-[debug] Result true +2022-03-18 11:37:21.317 [lua]-[debug] ********************* on save end ********************* +2022-03-18 11:38:33.651 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:38:33.651 [event]-[trace] No need to compile. +2022-03-18 11:38:33.651 [lua]-[debug] ********************* on test start ********************* +2022-03-18 11:38:33.652 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 11:38:33.652 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:38:33.652 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 11:38:33.652 [lua]-[debug] Testing 0 +2022-03-18 11:38:33.703 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 11:38:33.703 [lua]-[debug] ********************* on test end ********************* +2022-03-18 12:13:30.814 [lua]-[debug] **************** on new object id start **************** +2022-03-18 12:13:30.895 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:13:30.896 [lua]-[trace] Disable. +2022-03-18 12:14:44.717 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 12:14:44.717 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 12:14:44.717 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 12:14:45.108 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 12:14:45.175 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 12:14:45.589 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 12:15:39.110 [event]-[trace] WE is about to compile maps. +2022-03-18 12:15:39.153 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:15:39.153 [event]-[trace] Need to compile... +2022-03-18 12:15:39.153 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:15:39.153 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:15:39.153 [lua]-[trace] Saving G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:15:39.153 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:15:39.153 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:15:39.166 [lua]-[trace] war3map.j has been extracted from WorldEditTestMap.w3x +2022-03-18 12:15:39.166 [lua]-[trace] Processing file.out +2022-03-18 12:15:39.167 [lua]-[trace] Writing code to file.out +2022-03-18 12:15:39.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:15:39.172 [lua]-[trace] Injection completed +2022-03-18 12:15:39.172 [lua]-[trace] Wave compilation start. +2022-03-18 12:15:39.561 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\WarcraftIII\Maps\Test" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:15:39.880 [lua]-[trace] Template compilation start. +2022-03-18 12:15:39.882 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:15:39.890 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:15:42. 75 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x", returned 0 +2022-03-18 12:15:42. 76 [lua]-[debug] Result true +2022-03-18 12:15:42. 76 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:15:42. 76 [lua]-[debug] ********************* on test start ********************* +2022-03-18 12:15:42. 77 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:15:42. 77 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:15:42. 77 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:15:42. 77 [lua]-[debug] Testing 0 +2022-03-18 12:15:42.154 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 12:15:42.154 [lua]-[debug] ********************* on test end ********************* +2022-03-18 12:17:40.171 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 12:17:40.171 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 12:17:40.171 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 12:17:40.705 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 12:17:40.725 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 12:17:40.836 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 12:20:17.604 [event]-[trace] WE is about to compile maps. +2022-03-18 12:20:20. 0 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:20:20. 1 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:20:20. 1 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.5.w3x +2022-03-18 12:20:20. 1 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:20:20. 1 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:20:20. 8 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.5.w3x +2022-03-18 12:20:20. 8 [lua]-[trace] Processing file.out +2022-03-18 12:20:20. 99 [lua]-[trace] Writing code to file.out +2022-03-18 12:20:20.100 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 12:20:20.221 [lua]-[trace] Injection completed +2022-03-18 12:20:20.221 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 12:20:20.222 [lua]-[trace] Injection completed +2022-03-18 12:20:20.222 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 12:20:20.237 [lua]-[trace] Injection completed +2022-03-18 12:20:20.237 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 12:20:20.238 [lua]-[trace] Injection completed +2022-03-18 12:20:20.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 12:20:20.238 [lua]-[trace] Injection completed +2022-03-18 12:20:20.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 12:20:20.238 [lua]-[trace] Injection completed +2022-03-18 12:20:20.238 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 12:20:20.239 [lua]-[trace] Injection completed +2022-03-18 12:20:20.239 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 12:20:20.239 [lua]-[trace] Injection completed +2022-03-18 12:20:20.239 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 12:20:20.249 [lua]-[trace] Injection completed +2022-03-18 12:20:20.249 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 12:20:20.250 [lua]-[trace] Injection completed +2022-03-18 12:20:20.250 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 12:20:20.250 [lua]-[trace] Injection completed +2022-03-18 12:20:20.250 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 12:20:20.250 [lua]-[trace] Injection completed +2022-03-18 12:20:20.251 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 12:20:20.251 [lua]-[trace] Injection completed +2022-03-18 12:20:20.251 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 12:20:20.251 [lua]-[trace] Injection completed +2022-03-18 12:20:20.251 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 12:20:20.252 [lua]-[trace] Injection completed +2022-03-18 12:20:20.252 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 12:20:20.252 [lua]-[trace] Injection completed +2022-03-18 12:20:20.252 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 12:20:20.252 [lua]-[trace] Injection completed +2022-03-18 12:20:20.252 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 12:20:20.253 [lua]-[trace] Injection completed +2022-03-18 12:20:20.253 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 12:20:20.253 [lua]-[trace] Injection completed +2022-03-18 12:20:20.253 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 12:20:20.253 [lua]-[trace] Injection completed +2022-03-18 12:20:20.253 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 12:20:20.254 [lua]-[trace] Injection completed +2022-03-18 12:20:20.254 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 12:20:20.254 [lua]-[trace] Injection completed +2022-03-18 12:20:20.254 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 12:20:20.254 [lua]-[trace] Injection completed +2022-03-18 12:20:20.254 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 12:20:20.255 [lua]-[trace] Injection completed +2022-03-18 12:20:20.255 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 12:20:20.255 [lua]-[trace] Injection completed +2022-03-18 12:20:20.255 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:20:20.255 [lua]-[trace] Injection completed +2022-03-18 12:20:20.255 [lua]-[trace] Wave compilation start. +2022-03-18 12:20:20.573 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:20:22.138 [lua]-[trace] Template compilation start. +2022-03-18 12:20:22.184 [lua]-[trace] Initializing 'slk' +2022-03-18 12:20:22.874 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:20:22.898 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:20:26.869 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.5.w3x", returned 0 +2022-03-18 12:20:26.870 [lua]-[debug] Result true +2022-03-18 12:20:26.870 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:34:33.495 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.529 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.530 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.567 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.634 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.641 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.692 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.693 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:34:33.858 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-18 12:36:40.572 [lua]-[debug] **************** on new object id start **************** +2022-03-18 12:36:40.573 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:36:40.573 [lua]-[trace] Disable. +2022-03-18 12:49:22.302 [event]-[trace] WE is about to compile maps. +2022-03-18 12:49:24.564 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:49:24.564 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:49:24.564 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 12:49:24.564 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:49:24.564 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:49:24.566 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 12:49:24.566 [lua]-[trace] Processing file.out +2022-03-18 12:49:24.581 [lua]-[trace] Writing code to file.out +2022-03-18 12:49:24.582 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 12:49:24.607 [lua]-[trace] Injection completed +2022-03-18 12:49:24.607 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 12:49:24.608 [lua]-[trace] Injection completed +2022-03-18 12:49:24.608 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 12:49:24.610 [lua]-[trace] Injection completed +2022-03-18 12:49:24.610 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 12:49:24.612 [lua]-[trace] Injection completed +2022-03-18 12:49:24.612 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 12:49:24.614 [lua]-[trace] Injection completed +2022-03-18 12:49:24.614 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 12:49:24.615 [lua]-[trace] Injection completed +2022-03-18 12:49:24.615 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 12:49:24.617 [lua]-[trace] Injection completed +2022-03-18 12:49:24.617 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 12:49:24.621 [lua]-[trace] Injection completed +2022-03-18 12:49:24.621 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 12:49:24.623 [lua]-[trace] Injection completed +2022-03-18 12:49:24.623 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 12:49:24.624 [lua]-[trace] Injection completed +2022-03-18 12:49:24.624 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 12:49:24.626 [lua]-[trace] Injection completed +2022-03-18 12:49:24.626 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 12:49:24.628 [lua]-[trace] Injection completed +2022-03-18 12:49:24.628 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 12:49:24.629 [lua]-[trace] Injection completed +2022-03-18 12:49:24.629 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 12:49:24.631 [lua]-[trace] Injection completed +2022-03-18 12:49:24.631 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 12:49:24.633 [lua]-[trace] Injection completed +2022-03-18 12:49:24.633 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 12:49:24.638 [lua]-[trace] Injection completed +2022-03-18 12:49:24.638 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 12:49:24.641 [lua]-[trace] Injection completed +2022-03-18 12:49:24.641 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 12:49:24.642 [lua]-[trace] Injection completed +2022-03-18 12:49:24.642 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 12:49:24.642 [lua]-[trace] Injection completed +2022-03-18 12:49:24.642 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:49:24.643 [lua]-[trace] Injection completed +2022-03-18 12:49:24.643 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 12:49:24.643 [lua]-[trace] Injection completed +2022-03-18 12:49:24.643 [lua]-[trace] Wave compilation start. +2022-03-18 12:49:25.562 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:49:27.258 [lua]-[trace] Template compilation start. +2022-03-18 12:49:27.322 [lua]-[trace] Initializing 'slk' +2022-03-18 12:49:28. 98 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:49:28.129 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:49:31.935 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 12:49:31.937 [lua]-[debug] Result true +2022-03-18 12:49:31.937 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:50:41. 11 [event]-[trace] WE is about to compile maps. +2022-03-18 12:50:43.357 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:50:43.359 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:50:43.359 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 12:50:43.359 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:50:43.359 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:50:43.361 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 12:50:43.361 [lua]-[trace] Processing file.out +2022-03-18 12:50:43.374 [lua]-[trace] Writing code to file.out +2022-03-18 12:50:43.374 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 12:50:43.375 [lua]-[trace] Injection completed +2022-03-18 12:50:43.375 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 12:50:43.375 [lua]-[trace] Injection completed +2022-03-18 12:50:43.375 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 12:50:43.375 [lua]-[trace] Injection completed +2022-03-18 12:50:43.375 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 12:50:43.375 [lua]-[trace] Injection completed +2022-03-18 12:50:43.375 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 12:50:43.375 [lua]-[trace] Injection completed +2022-03-18 12:50:43.375 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 12:50:43.376 [lua]-[trace] Injection completed +2022-03-18 12:50:43.376 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 12:50:43.377 [lua]-[trace] Injection completed +2022-03-18 12:50:43.377 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 12:50:43.378 [lua]-[trace] Injection completed +2022-03-18 12:50:43.378 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:50:43.378 [lua]-[trace] Injection completed +2022-03-18 12:50:43.378 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 12:50:43.378 [lua]-[trace] Injection completed +2022-03-18 12:50:43.378 [lua]-[trace] Wave compilation start. +2022-03-18 12:50:43.699 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:50:45.275 [lua]-[trace] Template compilation start. +2022-03-18 12:50:45.342 [lua]-[trace] Initializing 'slk' +2022-03-18 12:50:45.890 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:50:45.922 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:50:49.561 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 12:50:49.562 [lua]-[debug] Result true +2022-03-18 12:50:49.562 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:50:51.577 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:50:51.577 [event]-[trace] No need to compile. +2022-03-18 12:50:51.577 [lua]-[debug] ********************* on test start ********************* +2022-03-18 12:50:51.577 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:50:51.577 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:50:51.577 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:50:51.577 [lua]-[debug] Testing 0 +2022-03-18 12:50:51.678 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 12:50:51.678 [lua]-[debug] ********************* on test end ********************* +2022-03-18 12:57:00.194 [event]-[trace] WE is about to compile maps. +2022-03-18 12:57:02.490 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:57:02.538 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:57:02.538 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 12:57:02.538 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:57:02.538 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:57:02.630 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 12:57:02.630 [lua]-[trace] Processing file.out +2022-03-18 12:57:02.644 [lua]-[trace] Writing code to file.out +2022-03-18 12:57:02.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 12:57:02.713 [lua]-[trace] Injection completed +2022-03-18 12:57:02.713 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 12:57:02.714 [lua]-[trace] Injection completed +2022-03-18 12:57:02.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 12:57:02.715 [lua]-[trace] Injection completed +2022-03-18 12:57:02.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 12:57:02.817 [lua]-[trace] Injection completed +2022-03-18 12:57:02.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 12:57:02.875 [lua]-[trace] Injection completed +2022-03-18 12:57:02.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 12:57:02.875 [lua]-[trace] Injection completed +2022-03-18 12:57:02.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 12:57:02.910 [lua]-[trace] Injection completed +2022-03-18 12:57:02.910 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 12:57:02.911 [lua]-[trace] Injection completed +2022-03-18 12:57:02.911 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 12:57:02.911 [lua]-[trace] Injection completed +2022-03-18 12:57:02.911 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 12:57:02.912 [lua]-[trace] Injection completed +2022-03-18 12:57:02.912 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 12:57:02.913 [lua]-[trace] Injection completed +2022-03-18 12:57:02.913 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 12:57:02.913 [lua]-[trace] Injection completed +2022-03-18 12:57:02.913 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 12:57:02.913 [lua]-[trace] Injection completed +2022-03-18 12:57:02.913 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 12:57:02.914 [lua]-[trace] Injection completed +2022-03-18 12:57:02.914 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 12:57:02.914 [lua]-[trace] Injection completed +2022-03-18 12:57:02.914 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 12:57:02.915 [lua]-[trace] Injection completed +2022-03-18 12:57:02.915 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 12:57:02.915 [lua]-[trace] Injection completed +2022-03-18 12:57:02.915 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 12:57:02.915 [lua]-[trace] Injection completed +2022-03-18 12:57:02.915 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 12:57:02.916 [lua]-[trace] Injection completed +2022-03-18 12:57:02.916 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:57:02.917 [lua]-[trace] Injection completed +2022-03-18 12:57:02.917 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 12:57:02.917 [lua]-[trace] Injection completed +2022-03-18 12:57:02.917 [lua]-[trace] Wave compilation start. +2022-03-18 12:57:03.353 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:57:05.143 [lua]-[trace] Template compilation start. +2022-03-18 12:57:05.207 [lua]-[trace] Initializing 'slk' +2022-03-18 12:57:06. 75 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:57:06.108 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:57:09.662 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 12:57:09.663 [lua]-[debug] Result true +2022-03-18 12:57:09.663 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:57:37.424 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:57:37.424 [event]-[trace] No need to compile. +2022-03-18 12:57:37.424 [lua]-[debug] ********************* on test start ********************* +2022-03-18 12:57:37.424 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:57:37.424 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:57:37.424 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:57:37.424 [lua]-[debug] Testing 0 +2022-03-18 12:57:37.565 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 12:57:37.566 [lua]-[debug] ********************* on test end ********************* +2022-03-18 12:57:54.847 [event]-[trace] WE is about to compile maps. +2022-03-18 12:57:57.150 [lua]-[debug] ********************* on save start ********************* +2022-03-18 12:57:57.151 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:57:57.151 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 12:57:57.151 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 12:57:57.151 [lua]-[trace] mpq_util.update_file. +2022-03-18 12:57:57.153 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 12:57:57.153 [lua]-[trace] Processing file.out +2022-03-18 12:57:57.166 [lua]-[trace] Writing code to file.out +2022-03-18 12:57:57.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 12:57:57.167 [lua]-[trace] Injection completed +2022-03-18 12:57:57.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 12:57:57.167 [lua]-[trace] Injection completed +2022-03-18 12:57:57.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 12:57:57.167 [lua]-[trace] Injection completed +2022-03-18 12:57:57.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 12:57:57.167 [lua]-[trace] Injection completed +2022-03-18 12:57:57.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 12:57:57.168 [lua]-[trace] Injection completed +2022-03-18 12:57:57.168 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 12:57:57.169 [lua]-[trace] Injection completed +2022-03-18 12:57:57.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 12:57:57.169 [lua]-[trace] Injection completed +2022-03-18 12:57:57.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 12:57:57.169 [lua]-[trace] Injection completed +2022-03-18 12:57:57.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 12:57:57.169 [lua]-[trace] Injection completed +2022-03-18 12:57:57.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 12:57:57.169 [lua]-[trace] Injection completed +2022-03-18 12:57:57.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 12:57:57.170 [lua]-[trace] Injection completed +2022-03-18 12:57:57.170 [lua]-[trace] Wave compilation start. +2022-03-18 12:57:57.483 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 12:57:58.919 [lua]-[trace] Template compilation start. +2022-03-18 12:57:58.994 [lua]-[trace] Initializing 'slk' +2022-03-18 12:57:59.568 [lua]-[debug] Template compilation succeeded. +2022-03-18 12:57:59.600 [lua]-[trace] JassHelper compilation start. +2022-03-18 12:58:02.867 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 12:58:02.867 [lua]-[debug] Result true +2022-03-18 12:58:02.867 [lua]-[debug] ********************* on save end ********************* +2022-03-18 12:58:02.986 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:58:02.986 [event]-[trace] No need to compile. +2022-03-18 12:58:02.986 [lua]-[debug] ********************* on test start ********************* +2022-03-18 12:58:02.986 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 12:58:02.986 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:58:02.986 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 12:58:02.986 [lua]-[debug] Testing 0 +2022-03-18 12:58:03.100 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 12:58:03.100 [lua]-[debug] ********************* on test end ********************* +2022-03-18 13:04:14.425 [event]-[trace] WE is about to compile maps. +2022-03-18 13:04:16.689 [lua]-[debug] ********************* on save start ********************* +2022-03-18 13:04:16.818 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 13:04:16.818 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 13:04:16.818 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 13:04:16.818 [lua]-[trace] mpq_util.update_file. +2022-03-18 13:04:16.880 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 13:04:16.880 [lua]-[trace] Processing file.out +2022-03-18 13:04:16.894 [lua]-[trace] Writing code to file.out +2022-03-18 13:04:16.895 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 13:04:16.907 [lua]-[trace] Injection completed +2022-03-18 13:04:16.907 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 13:04:16.908 [lua]-[trace] Injection completed +2022-03-18 13:04:16.908 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 13:04:16.909 [lua]-[trace] Injection completed +2022-03-18 13:04:16.909 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 13:04:16.910 [lua]-[trace] Injection completed +2022-03-18 13:04:16.910 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 13:04:16.911 [lua]-[trace] Injection completed +2022-03-18 13:04:16.911 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 13:04:16.911 [lua]-[trace] Injection completed +2022-03-18 13:04:16.911 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 13:04:16.912 [lua]-[trace] Injection completed +2022-03-18 13:04:16.912 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 13:04:16.913 [lua]-[trace] Injection completed +2022-03-18 13:04:16.913 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 13:04:16.914 [lua]-[trace] Injection completed +2022-03-18 13:04:16.914 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 13:04:16.915 [lua]-[trace] Injection completed +2022-03-18 13:04:16.915 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 13:04:16.916 [lua]-[trace] Injection completed +2022-03-18 13:04:16.916 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 13:04:16.917 [lua]-[trace] Injection completed +2022-03-18 13:04:16.917 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 13:04:16.918 [lua]-[trace] Injection completed +2022-03-18 13:04:16.918 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 13:04:16.919 [lua]-[trace] Injection completed +2022-03-18 13:04:16.919 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 13:04:16.919 [lua]-[trace] Injection completed +2022-03-18 13:04:16.919 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 13:04:16.920 [lua]-[trace] Injection completed +2022-03-18 13:04:16.920 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 13:04:16.921 [lua]-[trace] Injection completed +2022-03-18 13:04:16.921 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 13:04:16.922 [lua]-[trace] Injection completed +2022-03-18 13:04:16.922 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 13:04:16.922 [lua]-[trace] Injection completed +2022-03-18 13:04:16.922 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 13:04:16.923 [lua]-[trace] Injection completed +2022-03-18 13:04:16.923 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 13:04:16.924 [lua]-[trace] Injection completed +2022-03-18 13:04:16.924 [lua]-[trace] Wave compilation start. +2022-03-18 13:04:17.265 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 13:04:18.901 [lua]-[trace] Template compilation start. +2022-03-18 13:04:18.969 [lua]-[trace] Initializing 'slk' +2022-03-18 13:04:19.791 [lua]-[debug] Template compilation succeeded. +2022-03-18 13:04:19.824 [lua]-[trace] JassHelper compilation start. +2022-03-18 13:04:23.384 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 13:04:23.385 [lua]-[debug] Result true +2022-03-18 13:04:23.385 [lua]-[debug] ********************* on save end ********************* +2022-03-18 13:04:24.682 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:04:24.682 [event]-[trace] No need to compile. +2022-03-18 13:04:24.682 [lua]-[debug] ********************* on test start ********************* +2022-03-18 13:04:24.682 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 13:04:24.682 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:04:24.682 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:04:24.682 [lua]-[debug] Testing 0 +2022-03-18 13:04:24.739 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 13:04:24.739 [lua]-[debug] ********************* on test end ********************* +2022-03-18 13:08:22.165 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:08:22.165 [event]-[trace] No need to compile. +2022-03-18 13:08:22.165 [lua]-[debug] ********************* on test start ********************* +2022-03-18 13:08:22.166 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 13:08:22.166 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:08:22.166 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 13:08:22.166 [lua]-[debug] Testing 0 +2022-03-18 13:08:22.222 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 13:08:22.222 [lua]-[debug] ********************* on test end ********************* +2022-03-18 15:47:13.659 [event]-[trace] WE is about to compile maps. +2022-03-18 15:47:16.955 [lua]-[debug] ********************* on save start ********************* +2022-03-18 15:47:17. 47 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 15:47:17. 47 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-18 15:47:17. 49 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 15:47:17. 50 [lua]-[trace] mpq_util.update_file. +2022-03-18 15:47:17.129 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-18 15:47:17.129 [lua]-[trace] Processing file.out +2022-03-18 15:47:17.272 [lua]-[trace] Writing code to file.out +2022-03-18 15:47:17.273 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEAbilityState.j +2022-03-18 15:47:17.366 [lua]-[trace] Injection completed +2022-03-18 15:47:17.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiScript.j +2022-03-18 15:47:17.367 [lua]-[trace] Injection completed +2022-03-18 15:47:17.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-18 15:47:17.374 [lua]-[trace] Injection completed +2022-03-18 15:47:17.374 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-18 15:47:17.385 [lua]-[trace] Injection completed +2022-03-18 15:47:17.385 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-18 15:47:17.387 [lua]-[trace] Injection completed +2022-03-18 15:47:17.387 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-18 15:47:17.407 [lua]-[trace] Injection completed +2022-03-18 15:47:17.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-18 15:47:17.408 [lua]-[trace] Injection completed +2022-03-18 15:47:17.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\japi\YDWEJapiUnit.j +2022-03-18 15:47:17.410 [lua]-[trace] Injection completed +2022-03-18 15:47:17.410 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-18 15:47:17.412 [lua]-[trace] Injection completed +2022-03-18 15:47:17.412 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-18 15:47:17.413 [lua]-[trace] Injection completed +2022-03-18 15:47:17.414 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-18 15:47:17.414 [lua]-[trace] Injection completed +2022-03-18 15:47:17.414 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-18 15:47:17.415 [lua]-[trace] Injection completed +2022-03-18 15:47:17.415 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-18 15:47:17.416 [lua]-[trace] Injection completed +2022-03-18 15:47:17.416 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-18 15:47:17.417 [lua]-[trace] Injection completed +2022-03-18 15:47:17.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\DzAPI.j +2022-03-18 15:47:17.419 [lua]-[trace] Injection completed +2022-03-18 15:47:17.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-18 15:47:17.420 [lua]-[trace] Injection completed +2022-03-18 15:47:17.420 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-18 15:47:17.421 [lua]-[trace] Injection completed +2022-03-18 15:47:17.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-18 15:47:17.423 [lua]-[trace] Injection completed +2022-03-18 15:47:17.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-18 15:47:17.423 [lua]-[trace] Injection completed +2022-03-18 15:47:17.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-18 15:47:17.425 [lua]-[trace] Injection completed +2022-03-18 15:47:17.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-18 15:47:17.425 [lua]-[trace] Injection completed +2022-03-18 15:47:17.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-18 15:47:17.426 [lua]-[trace] Injection completed +2022-03-18 15:47:17.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-18 15:47:17.427 [lua]-[trace] Injection completed +2022-03-18 15:47:17.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-18 15:47:17.427 [lua]-[trace] Injection completed +2022-03-18 15:47:17.428 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-18 15:47:17.429 [lua]-[trace] Injection completed +2022-03-18 15:47:17.429 [lua]-[trace] Injecting F:\MapJ\官方编辑器\jass\BlizzardAPI.j +2022-03-18 15:47:17.432 [lua]-[trace] Injection completed +2022-03-18 15:47:17.433 [lua]-[trace] Wave compilation start. +2022-03-18 15:47:18. 34 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器\logs\file.out". +2022-03-18 15:47:19.908 [lua]-[trace] Template compilation start. +2022-03-18 15:47:20. 17 [lua]-[trace] Initializing 'slk' +2022-03-18 15:47:23.997 [lua]-[debug] Template compilation succeeded. +2022-03-18 15:47:24. 24 [lua]-[trace] JassHelper compilation start. +2022-03-18 15:47:29.697 [lua]-[trace] Executed "F:\MapJ\官方编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-18 15:47:29.698 [lua]-[debug] Result true +2022-03-18 15:47:29.698 [lua]-[debug] ********************* on save end ********************* +2022-03-18 15:47:40.937 [event]-[trace] Executing map G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 15:47:40.937 [event]-[trace] No need to compile. +2022-03-18 15:47:40.937 [lua]-[debug] ********************* on test start ********************* +2022-03-18 15:47:40.938 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 15:47:40.938 [lua]-[debug] Testing G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-18 15:47:40.938 [lua]-[debug] Testing "G:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-18 15:47:40.938 [lua]-[debug] Testing 0 +2022-03-18 15:47:41. 89 [lua]-[trace] Executed "G:\WarcraftIII\war3.exe" -loadfile "G:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器". +2022-03-18 15:47:41. 89 [lua]-[debug] ********************* on test end ********************* +2022-03-18 16:50:06.977 [root]-[info ] ------------------------------------------------------ +2022-03-18 16:50:06.991 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-18 16:50:06.991 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-18 16:50:06.991 [root]-[info ] Windows version: 10.0.19041 +2022-03-18 16:50:06.993 [root]-[debug] Initialize script engine successfully. +2022-03-18 16:50:06.993 [root]-[info ] Script engine startup complete. +2022-03-18 16:50:06.993 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-18 16:50:06.994 [lua]-[trace] Initializing 'sys' +2022-03-18 16:50:07. 2 [lua]-[trace] Initializing 'filesystem' +2022-03-18 16:50:07. 12 [lua]-[trace] Initializing 'gui' +2022-03-18 16:50:07. 18 [lua]-[trace] Initializing 'util' +2022-03-18 16:50:07. 19 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-18 16:50:07. 19 [lua]-[trace] Initializing 'ffi' +2022-03-18 16:50:07. 21 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-18 16:50:07. 21 [lua]-[trace] Initializing 'event' +2022-03-18 16:50:07. 28 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-18 16:50:07. 31 [lua]-[trace] Initializing 'registry' +2022-03-18 16:50:07. 33 [lua]-[trace] Initializing 'version' +2022-03-18 16:50:07. 33 [lua]-[trace] Initializing 'localization' +2022-03-18 16:50:07. 33 [lua]-[trace] Initializing 'i18n' +2022-03-18 16:50:07. 44 [lua]-[trace] Initializing 'config' +2022-03-18 16:50:07. 56 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:50:07. 56 [lua]-[trace] Initializing 'plugin' +2022-03-18 16:50:07. 57 [lua]-[trace] Initializing 'uiloader' +2022-03-18 16:50:07. 57 [lua]-[trace] Initializing 'stringify_slk' +2022-03-18 16:50:07. 57 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-18 16:50:07. 58 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-18 16:50:07. 58 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-18 16:50:07. 59 [lua]-[trace] Initializing 'lni-c' +2022-03-18 16:50:07. 73 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-18 16:50:07. 73 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-18 16:50:07. 73 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-18 16:50:07. 74 [lua]-[trace] Initializing 'w3xparser' +2022-03-18 16:50:07. 80 [lua]-[trace] Initializing 'check_object' +2022-03-18 16:50:07. 91 [lua]-[trace] Initializing 'ffi.storm' +2022-03-18 16:50:07. 92 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-18 16:50:07. 92 [lua]-[trace] Initializing 'ffi.gui' +2022-03-18 16:50:07. 92 [event]-[trace] RegisterEvent id: 7 +2022-03-18 16:50:07. 93 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-18 16:50:07. 93 [event]-[trace] RegisterEvent id: 5 +2022-03-18 16:50:07. 93 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-18 16:50:07. 93 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-18 16:50:07. 94 [lua]-[trace] Initializing 'compile.wave' +2022-03-18 16:50:07. 94 [lua]-[trace] Initializing 'compile.template' +2022-03-18 16:50:07. 95 [lua]-[trace] Initializing 'compile.cjass' +2022-03-18 16:50:07. 95 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-18 16:50:07. 95 [lua]-[trace] Initializing 'mpq_util' +2022-03-18 16:50:07. 96 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-18 16:50:07. 96 [lua]-[trace] Initializing 'compile.native' +2022-03-18 16:50:07. 97 [event]-[trace] RegisterEvent id: 3 +2022-03-18 16:50:07. 97 [event]-[trace] RegisterEvent id: 2 +2022-03-18 16:50:07. 97 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-18 16:50:07. 97 [lua]-[trace] Initializing 'w3x2lni' +2022-03-18 16:50:07.112 [lua]-[trace] Initializing 'utility' +2022-03-18 16:50:07.113 [lua]-[trace] Initializing 'mapdump' +2022-03-18 16:50:07.113 [event]-[trace] RegisterEvent id: 4 +2022-03-18 16:50:07.113 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-18 16:50:07.113 [event]-[trace] RegisterEvent id: 0 +2022-03-18 16:50:07.113 [event]-[trace] RegisterEvent id: 1 +2022-03-18 16:50:07.113 [event]-[trace] RegisterEvent id: 6 +2022-03-18 16:50:07.114 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-18 16:50:07.263 [event]-[trace] RegisterEvent id: 8 +2022-03-18 16:50:07.263 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-18 16:50:07.264 [event]-[trace] RegisterEvent id: 9 +2022-03-18 16:50:07.264 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-18 16:50:07.338 [event]-[info ] Entering main program. +2022-03-18 16:50:07.338 [event]-[debug] Command line: +2022-03-18 16:50:07.342 [lua]-[debug] ********************* on startup start ********************* +2022-03-18 16:50:07.343 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-18 16:50:07.344 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-18 16:50:07.344 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:50:07.344 [lua]-[trace] check_conflicting_ui +2022-03-18 16:50:07.344 [lua]-[trace] check_conflicting_units +2022-03-18 16:50:07.345 [lua]-[trace] clear_potential_conflicting +2022-03-18 16:50:07.345 [lua]-[trace] check_war3_version +2022-03-18 16:50:07.351 [lua]-[error] Cannot find war3.mpq +2022-03-18 16:50:07.355 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-18 16:50:07.428 [lua]-[debug] Tesh loaded successfully. +2022-03-18 16:50:07.450 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-18 16:50:07.455 [lua]-[debug] YDClient loaded successfully. +2022-03-18 16:50:07.455 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-18 16:50:07.462 [lua]-[warn ] failed: disable +2022-03-18 16:50:07.462 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-18 16:50:07.473 [lua]-[warn ] failed: disable +2022-03-18 16:50:07.473 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-18 16:50:07.474 [lua]-[warn ] failed: disable +2022-03-18 16:50:07.474 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-18 16:50:07.581 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-18 16:50:07.585 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-18 16:50:07.599 [lua]-[debug] YDTrigger loaded successfully. +2022-03-18 16:50:07.600 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-18 16:50:07.610 [inject]-[debug] Start installing inline hooks. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-18 16:50:07.610 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-18 16:50:07.610 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-18 16:50:07.610 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-18 16:50:07.610 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-18 16:50:07.610 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-18 16:50:07.610 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-18 16:50:07.610 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-18 16:50:07.610 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-18 16:50:07.611 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-18 16:50:07.611 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-18 16:50:07.611 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-18 16:50:07.611 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-18 16:50:07.611 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-18 16:50:07.611 [inject]-[debug] Installing inline hooks complete. +2022-03-18 16:50:07.611 [inject]-[debug] IAT hook initialization started. +2022-03-18 16:50:07.611 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-18 16:50:07.611 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-18 16:50:07.611 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-18 16:50:07.611 [inject]-[debug] IAT hook initialization completed. +2022-03-18 16:50:07.611 [inject]-[debug] Patches initialization started. +2022-03-18 16:50:07.611 [inject]-[trace] Installing syntax check patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing auto disable patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing enable trigger check patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-18 16:50:07.611 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing doodad limit patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing unit/item limit patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing editor multi-instance patch +2022-03-18 16:50:07.611 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-18 16:50:07.611 [inject]-[trace] Installing attack table patch +2022-03-18 16:50:07.611 [inject]-[debug] Patches initialization completed. +2022-03-18 16:50:07.611 [inject]-[info ] YDWE startup complete. +2022-03-18 16:50:07.611 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-18 16:50:07.612 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-18 16:50:07.612 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-18 16:50:07.612 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-18 16:50:07.631 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-18 16:50:07.648 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-18 16:50:07.650 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-18 16:50:07.650 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-18 16:50:07.650 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-18 16:50:07.651 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-18 16:50:07.651 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-18 16:50:07.673 [lua]-[trace] Scanned file: 99 +2022-03-18 16:50:07.689 [lua]-[debug] ********************* on startup end ********************* +2022-03-18 16:50:08.277 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:50:08.327 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:50:08.515 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 16:50:08.796 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-18 16:50:14.702 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-18 16:50:14.718 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-18 16:50:14.769 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-18 16:50:14.820 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-18 16:50:14.906 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-18 16:50:18.128 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-18 16:50:18.128 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-18 16:50:35.402 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:50:35.402 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:50:35.402 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:50:35.665 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:50:35.693 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:50:35.813 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 16:52:42. 68 [root]-[info ] ------------------------------------------------------ +2022-03-18 16:52:42. 73 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-18 16:52:42. 73 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-18 16:52:42. 73 [root]-[info ] Windows version: 10.0.19041 +2022-03-18 16:52:42. 73 [root]-[debug] Initialize script engine successfully. +2022-03-18 16:52:42. 73 [root]-[info ] Script engine startup complete. +2022-03-18 16:52:42. 73 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-18 16:52:42. 74 [lua]-[trace] Initializing 'sys' +2022-03-18 16:52:42. 76 [lua]-[trace] Initializing 'filesystem' +2022-03-18 16:52:42. 79 [lua]-[trace] Initializing 'gui' +2022-03-18 16:52:42. 81 [lua]-[trace] Initializing 'util' +2022-03-18 16:52:42. 81 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-18 16:52:42. 82 [lua]-[trace] Initializing 'ffi' +2022-03-18 16:52:42. 83 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-18 16:52:42. 83 [lua]-[trace] Initializing 'event' +2022-03-18 16:52:42. 85 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-18 16:52:42. 87 [lua]-[trace] Initializing 'registry' +2022-03-18 16:52:42. 88 [lua]-[trace] Initializing 'version' +2022-03-18 16:52:42. 88 [lua]-[trace] Initializing 'localization' +2022-03-18 16:52:42. 89 [lua]-[trace] Initializing 'i18n' +2022-03-18 16:52:42. 90 [lua]-[trace] Initializing 'config' +2022-03-18 16:52:42. 90 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:52:42. 90 [lua]-[trace] Initializing 'plugin' +2022-03-18 16:52:42. 91 [lua]-[trace] Initializing 'uiloader' +2022-03-18 16:52:42. 91 [lua]-[trace] Initializing 'stringify_slk' +2022-03-18 16:52:42. 91 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-18 16:52:42. 92 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-18 16:52:42. 93 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-18 16:52:42. 93 [lua]-[trace] Initializing 'lni-c' +2022-03-18 16:52:42. 94 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-18 16:52:42. 94 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-18 16:52:42. 95 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-18 16:52:42. 95 [lua]-[trace] Initializing 'w3xparser' +2022-03-18 16:52:42. 97 [lua]-[trace] Initializing 'check_object' +2022-03-18 16:52:42. 97 [lua]-[trace] Initializing 'ffi.storm' +2022-03-18 16:52:42. 98 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-18 16:52:42. 98 [lua]-[trace] Initializing 'ffi.gui' +2022-03-18 16:52:42. 99 [event]-[trace] RegisterEvent id: 7 +2022-03-18 16:52:42. 99 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-18 16:52:42. 99 [event]-[trace] RegisterEvent id: 5 +2022-03-18 16:52:42. 99 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-18 16:52:42.100 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-18 16:52:42.100 [lua]-[trace] Initializing 'compile.wave' +2022-03-18 16:52:42.101 [lua]-[trace] Initializing 'compile.template' +2022-03-18 16:52:42.101 [lua]-[trace] Initializing 'compile.cjass' +2022-03-18 16:52:42.101 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-18 16:52:42.102 [lua]-[trace] Initializing 'mpq_util' +2022-03-18 16:52:42.102 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-18 16:52:42.102 [lua]-[trace] Initializing 'compile.native' +2022-03-18 16:52:42.103 [event]-[trace] RegisterEvent id: 3 +2022-03-18 16:52:42.103 [event]-[trace] RegisterEvent id: 2 +2022-03-18 16:52:42.103 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-18 16:52:42.103 [lua]-[trace] Initializing 'w3x2lni' +2022-03-18 16:52:42.104 [lua]-[trace] Initializing 'utility' +2022-03-18 16:52:42.104 [lua]-[trace] Initializing 'mapdump' +2022-03-18 16:52:42.104 [event]-[trace] RegisterEvent id: 4 +2022-03-18 16:52:42.104 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-18 16:52:42.105 [event]-[trace] RegisterEvent id: 0 +2022-03-18 16:52:42.105 [event]-[trace] RegisterEvent id: 1 +2022-03-18 16:52:42.105 [event]-[trace] RegisterEvent id: 6 +2022-03-18 16:52:42.105 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-18 16:52:42.262 [event]-[trace] RegisterEvent id: 8 +2022-03-18 16:52:42.262 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-18 16:52:42.263 [event]-[trace] RegisterEvent id: 9 +2022-03-18 16:52:42.263 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-18 16:52:42.333 [event]-[info ] Entering main program. +2022-03-18 16:52:42.333 [event]-[debug] Command line: +2022-03-18 16:52:42.336 [lua]-[debug] ********************* on startup start ********************* +2022-03-18 16:52:42.337 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-18 16:52:42.337 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-18 16:52:42.338 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:52:42.338 [lua]-[trace] check_conflicting_ui +2022-03-18 16:52:42.338 [lua]-[trace] check_conflicting_units +2022-03-18 16:52:42.338 [lua]-[trace] clear_potential_conflicting +2022-03-18 16:52:42.338 [lua]-[trace] check_war3_version +2022-03-18 16:52:42.341 [lua]-[error] Cannot find war3.mpq +2022-03-18 16:52:42.345 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-18 16:52:42.357 [lua]-[debug] Tesh loaded successfully. +2022-03-18 16:52:42.624 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-18 16:52:42.626 [lua]-[debug] YDClient loaded successfully. +2022-03-18 16:52:42.626 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-18 16:52:42.627 [lua]-[warn ] failed: disable +2022-03-18 16:52:42.635 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-18 16:52:42.636 [lua]-[warn ] failed: disable +2022-03-18 16:52:42.637 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-18 16:52:42.638 [lua]-[warn ] failed: disable +2022-03-18 16:52:42.638 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-18 16:52:42.733 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-18 16:52:42.853 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-18 16:52:42.855 [lua]-[debug] YDTrigger loaded successfully. +2022-03-18 16:52:42.855 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-18 16:52:42.857 [inject]-[debug] Start installing inline hooks. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-18 16:52:42.857 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-18 16:52:42.857 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-18 16:52:42.857 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-18 16:52:42.857 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-18 16:52:42.857 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-18 16:52:42.857 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-18 16:52:42.857 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-18 16:52:42.857 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-18 16:52:42.857 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-18 16:52:42.857 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-18 16:52:42.857 [inject]-[debug] Installing inline hooks complete. +2022-03-18 16:52:42.857 [inject]-[debug] IAT hook initialization started. +2022-03-18 16:52:42.857 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-18 16:52:42.857 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-18 16:52:42.858 [inject]-[debug] IAT hook initialization completed. +2022-03-18 16:52:42.858 [inject]-[debug] Patches initialization started. +2022-03-18 16:52:42.858 [inject]-[trace] Installing syntax check patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing auto disable patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing enable trigger check patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-18 16:52:42.858 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing doodad limit patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing unit/item limit patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing editor multi-instance patch +2022-03-18 16:52:42.858 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-18 16:52:42.858 [inject]-[trace] Installing attack table patch +2022-03-18 16:52:42.858 [inject]-[debug] Patches initialization completed. +2022-03-18 16:52:42.858 [inject]-[info ] YDWE startup complete. +2022-03-18 16:52:42.858 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-18 16:52:42.858 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-18 16:52:42.859 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-18 16:52:42.859 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-18 16:52:42.876 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-18 16:52:42.879 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-18 16:52:42.881 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-18 16:52:42.882 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-18 16:52:42.882 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-18 16:52:42.882 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-18 16:52:42.882 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-18 16:52:42.891 [lua]-[trace] Scanned file: 99 +2022-03-18 16:52:42.904 [lua]-[debug] ********************* on startup end ********************* +2022-03-18 16:52:43.486 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:52:43.503 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:52:43.740 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 16:52:43.832 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-18 16:52:45. 2 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-18 16:52:45. 4 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-18 16:52:45. 5 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-18 16:52:45. 5 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-18 16:52:45. 6 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-18 16:52:47.588 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-18 16:52:47.588 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-18 16:53:06. 20 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:53:06. 20 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:53:06. 20 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:53:06.233 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:53:06.265 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:53:06.393 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 16:56:20.962 [root]-[info ] ------------------------------------------------------ +2022-03-18 16:56:20.967 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-18 16:56:20.967 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-18 16:56:20.967 [root]-[info ] Windows version: 10.0.19041 +2022-03-18 16:56:20.968 [root]-[debug] Initialize script engine successfully. +2022-03-18 16:56:20.968 [root]-[info ] Script engine startup complete. +2022-03-18 16:56:20.995 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-18 16:56:20.996 [lua]-[trace] Initializing 'sys' +2022-03-18 16:56:20.998 [lua]-[trace] Initializing 'filesystem' +2022-03-18 16:56:21. 0 [lua]-[trace] Initializing 'gui' +2022-03-18 16:56:21. 2 [lua]-[trace] Initializing 'util' +2022-03-18 16:56:21. 17 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-18 16:56:21. 41 [lua]-[trace] Initializing 'ffi' +2022-03-18 16:56:21. 43 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-18 16:56:21. 43 [lua]-[trace] Initializing 'event' +2022-03-18 16:56:21.167 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-18 16:56:21.170 [lua]-[trace] Initializing 'registry' +2022-03-18 16:56:21.171 [lua]-[trace] Initializing 'version' +2022-03-18 16:56:21.172 [lua]-[trace] Initializing 'localization' +2022-03-18 16:56:21.172 [lua]-[trace] Initializing 'i18n' +2022-03-18 16:56:21.181 [lua]-[trace] Initializing 'config' +2022-03-18 16:56:21.193 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:56:21.193 [lua]-[trace] Initializing 'plugin' +2022-03-18 16:56:21.195 [lua]-[trace] Initializing 'uiloader' +2022-03-18 16:56:21.197 [lua]-[trace] Initializing 'stringify_slk' +2022-03-18 16:56:21.197 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-18 16:56:21.209 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-18 16:56:21.232 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-18 16:56:21.232 [lua]-[trace] Initializing 'lni-c' +2022-03-18 16:56:21.234 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-18 16:56:21.235 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-18 16:56:21.236 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-18 16:56:21.237 [lua]-[trace] Initializing 'w3xparser' +2022-03-18 16:56:21.250 [lua]-[trace] Initializing 'check_object' +2022-03-18 16:56:21.283 [lua]-[trace] Initializing 'ffi.storm' +2022-03-18 16:56:21.284 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-18 16:56:21.285 [lua]-[trace] Initializing 'ffi.gui' +2022-03-18 16:56:21.286 [event]-[trace] RegisterEvent id: 7 +2022-03-18 16:56:21.286 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-18 16:56:21.287 [event]-[trace] RegisterEvent id: 5 +2022-03-18 16:56:21.287 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-18 16:56:21.288 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-18 16:56:21.298 [lua]-[trace] Initializing 'compile.wave' +2022-03-18 16:56:21.300 [lua]-[trace] Initializing 'compile.template' +2022-03-18 16:56:21.300 [lua]-[trace] Initializing 'compile.cjass' +2022-03-18 16:56:21.301 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-18 16:56:21.302 [lua]-[trace] Initializing 'mpq_util' +2022-03-18 16:56:21.302 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-18 16:56:21.304 [lua]-[trace] Initializing 'compile.native' +2022-03-18 16:56:21.304 [event]-[trace] RegisterEvent id: 3 +2022-03-18 16:56:21.304 [event]-[trace] RegisterEvent id: 2 +2022-03-18 16:56:21.304 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-18 16:56:21.305 [lua]-[trace] Initializing 'w3x2lni' +2022-03-18 16:56:21.327 [lua]-[trace] Initializing 'utility' +2022-03-18 16:56:21.338 [lua]-[trace] Initializing 'mapdump' +2022-03-18 16:56:21.338 [event]-[trace] RegisterEvent id: 4 +2022-03-18 16:56:21.338 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-18 16:56:21.339 [event]-[trace] RegisterEvent id: 0 +2022-03-18 16:56:21.339 [event]-[trace] RegisterEvent id: 1 +2022-03-18 16:56:21.339 [event]-[trace] RegisterEvent id: 6 +2022-03-18 16:56:21.339 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-18 16:56:21.519 [event]-[trace] RegisterEvent id: 8 +2022-03-18 16:56:21.519 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-18 16:56:21.520 [event]-[trace] RegisterEvent id: 9 +2022-03-18 16:56:21.520 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-18 16:56:21.611 [event]-[info ] Entering main program. +2022-03-18 16:56:21.612 [event]-[debug] Command line: +2022-03-18 16:56:21.615 [lua]-[debug] ********************* on startup start ********************* +2022-03-18 16:56:21.617 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-18 16:56:21.617 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-18 16:56:21.617 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 16:56:21.617 [lua]-[trace] check_conflicting_ui +2022-03-18 16:56:21.618 [lua]-[trace] check_conflicting_units +2022-03-18 16:56:21.618 [lua]-[trace] clear_potential_conflicting +2022-03-18 16:56:21.618 [lua]-[trace] check_war3_version +2022-03-18 16:56:21.623 [lua]-[error] Cannot find war3.mpq +2022-03-18 16:56:21.704 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-18 16:56:21.905 [lua]-[debug] Tesh loaded successfully. +2022-03-18 16:56:21.999 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-18 16:56:22. 33 [lua]-[debug] YDClient loaded successfully. +2022-03-18 16:56:22. 34 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-18 16:56:22. 41 [lua]-[warn ] failed: disable +2022-03-18 16:56:22. 41 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-18 16:56:22. 52 [lua]-[warn ] failed: disable +2022-03-18 16:56:22. 53 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-18 16:56:22. 53 [lua]-[warn ] failed: disable +2022-03-18 16:56:22. 53 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-18 16:56:22.158 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-18 16:56:22.162 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-18 16:56:22.164 [lua]-[debug] YDTrigger loaded successfully. +2022-03-18 16:56:22.164 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-18 16:56:22.167 [inject]-[debug] Start installing inline hooks. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-18 16:56:22.167 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-18 16:56:22.167 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-18 16:56:22.167 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-18 16:56:22.167 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-18 16:56:22.167 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-18 16:56:22.167 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-18 16:56:22.167 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-18 16:56:22.167 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-18 16:56:22.167 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-18 16:56:22.167 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-18 16:56:22.167 [inject]-[debug] Installing inline hooks complete. +2022-03-18 16:56:22.167 [inject]-[debug] IAT hook initialization started. +2022-03-18 16:56:22.167 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-18 16:56:22.167 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-18 16:56:22.167 [inject]-[debug] IAT hook initialization completed. +2022-03-18 16:56:22.167 [inject]-[debug] Patches initialization started. +2022-03-18 16:56:22.167 [inject]-[trace] Installing syntax check patch +2022-03-18 16:56:22.167 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-18 16:56:22.167 [inject]-[trace] Installing auto disable patch +2022-03-18 16:56:22.167 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-18 16:56:22.167 [inject]-[trace] Installing enable trigger check patch +2022-03-18 16:56:22.167 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-18 16:56:22.167 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-18 16:56:22.167 [inject]-[trace] Installing doodad limit patch +2022-03-18 16:56:22.168 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-18 16:56:22.168 [inject]-[trace] Installing unit/item limit patch +2022-03-18 16:56:22.168 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-18 16:56:22.168 [inject]-[trace] Installing editor multi-instance patch +2022-03-18 16:56:22.168 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-18 16:56:22.168 [inject]-[trace] Installing attack table patch +2022-03-18 16:56:22.168 [inject]-[debug] Patches initialization completed. +2022-03-18 16:56:22.168 [inject]-[info ] YDWE startup complete. +2022-03-18 16:56:22.168 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-18 16:56:22.168 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-18 16:56:22.169 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-18 16:56:22.179 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-18 16:56:22.287 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-18 16:56:22.326 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-18 16:56:22.344 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-18 16:56:22.354 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-18 16:56:22.366 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-18 16:56:22.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-18 16:56:22.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-18 16:56:22.409 [lua]-[trace] Scanned file: 99 +2022-03-18 16:56:22.424 [lua]-[debug] ********************* on startup end ********************* +2022-03-18 16:56:23. 65 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:56:23.105 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:56:23.309 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 16:56:23.579 [lua]-[debug] Loading provider G:\WarcraftIII\RenderEdge_Widescreen.mix +2022-03-18 16:56:27.301 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-18 16:56:27.321 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-18 16:56:27.322 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-18 16:56:27.333 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-18 16:56:27.338 [lua]-[debug] Loading provider G:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-18 16:56:30.106 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-18 16:56:30.106 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-18 16:56:40.164 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:56:40.164 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:56:40.164 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-18 16:56:40.523 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 16:56:40.547 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 16:56:40.739 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 17:04:42.294 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 17:04:42.295 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 17:04:42.295 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-18 17:04:42.885 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-18 17:04:42.913 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-18 17:04:43.158 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-18 17:16:04.184 [lua]-[debug] ********************* on exit start ********************* +2022-03-18 17:16:04.184 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-18 17:16:04.184 [inject]-[debug] IAT hook cleanup started. +2022-03-18 17:16:04.184 [inject]-[trace] WE IAT hook cleaned. +2022-03-18 17:16:04.184 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-18 17:16:04.184 [inject]-[debug] IAT hook cleanup completed. +2022-03-18 17:16:04.184 [inject]-[debug] Inline hook uninstallation begins! +2022-03-18 17:16:04.184 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-18 17:16:04.184 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-18 17:16:04.184 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-18 17:16:04.184 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-18 17:16:04.184 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-18 17:16:04.184 [inject]-[debug] Inline hook uninstallation finished! +2022-03-18 17:16:04.185 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-18 17:16:04.185 [lua]-[trace] Unload plugin Tesh. +2022-03-18 17:16:04.189 [lua]-[trace] Unload plugin YDClient. +2022-03-18 17:16:04.189 [lua]-[trace] Unload plugin YDTrigger. +2022-03-18 17:16:04.189 [lua]-[debug] ********************* on exit end ********************* +2022-03-18 17:16:04.189 [event]-[info ] Main program exit. +2022-03-18 17:16:04.331 [root]-[info ] Script engine has been shut down. +2022-03-18 17:16:07.981 [lua]-[debug] ********************* on exit start ********************* +2022-03-18 17:16:07.982 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-18 17:16:07.982 [inject]-[debug] IAT hook cleanup started. +2022-03-18 17:16:07.982 [inject]-[trace] WE IAT hook cleaned. +2022-03-18 17:16:07.982 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-18 17:16:07.982 [inject]-[debug] IAT hook cleanup completed. +2022-03-18 17:16:07.982 [inject]-[debug] Inline hook uninstallation begins! +2022-03-18 17:16:07.982 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-18 17:16:07.982 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-18 17:16:07.982 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-18 17:16:07.982 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-18 17:16:07.982 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-18 17:16:07.982 [inject]-[debug] Inline hook uninstallation finished! +2022-03-18 17:16:07.982 [lua]-[trace] Unload plugin YDClient. +2022-03-18 17:16:07.982 [lua]-[trace] Unload plugin YDTrigger. +2022-03-18 17:16:07.983 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-18 17:16:07.983 [lua]-[trace] Unload plugin Tesh. +2022-03-18 17:16:07.986 [lua]-[debug] ********************* on exit end ********************* +2022-03-18 17:16:07.986 [event]-[info ] Main program exit. +2022-03-18 17:16:08. 93 [root]-[info ] Script engine has been shut down. +2022-03-18 19:15:45.560 [event]-[trace] WE is about to compile maps. +2022-03-18 19:15:45.683 [lua]-[debug] ********************* on save start ********************* +2022-03-18 19:15:45.757 [lua]-[debug] war3 path G:\WarcraftIII +2022-03-18 19:15:45.757 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-18 19:15:45.781 [lua]-[trace] Save version 1.27.0.52240 +2022-03-18 19:15:45.782 [lua]-[trace] mpq_util.update_file. +2022-03-18 19:15:45.824 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-18 19:15:45.825 [lua]-[trace] Processing file.out +2022-03-18 19:15:45.848 [lua]-[trace] Writing code to file.out +2022-03-18 19:15:45.849 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-18 19:15:45.881 [lua]-[trace] Injection completed +2022-03-18 19:15:45.881 [lua]-[trace] Wave compilation start. +2022-03-18 19:15:47.141 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-18 19:15:48.961 [lua]-[trace] Template compilation start. +2022-03-18 19:15:49. 8 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-18 19:15:49. 20 [lua]-[trace] Initializing 'computed.order_list' +2022-03-18 19:15:49. 26 [lua]-[trace] Initializing 'computed.order_id' +2022-03-18 19:15:49. 46 [lua]-[debug] Template compilation succeeded. +2022-03-18 19:15:49. 82 [lua]-[trace] JassHelper compilation start. +2022-03-18 19:15:55.494 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 1 +2022-03-18 19:15:55.497 [lua]-[debug] Result false +2022-03-18 19:15:55.497 [lua]-[debug] ********************* on save end ********************* +2022-03-18 19:15:57.187 [lua]-[debug] ********************* on exit start ********************* +2022-03-18 19:15:57.187 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-18 19:15:57.187 [lua]-[trace] Unload plugin YDClient. +2022-03-18 19:15:57.187 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-18 19:15:57.188 [inject]-[debug] IAT hook cleanup started. +2022-03-18 19:15:57.189 [inject]-[trace] WE IAT hook cleaned. +2022-03-18 19:15:57.189 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-18 19:15:57.189 [inject]-[debug] IAT hook cleanup completed. +2022-03-18 19:15:57.189 [inject]-[debug] Inline hook uninstallation begins! +2022-03-18 19:15:57.189 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-18 19:15:57.189 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-18 19:15:57.190 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-18 19:15:57.190 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-18 19:15:57.190 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-18 19:15:57.190 [inject]-[debug] Inline hook uninstallation finished! +2022-03-18 19:15:57.192 [lua]-[trace] Unload plugin Tesh. +2022-03-18 19:15:57.206 [lua]-[trace] Unload plugin YDTrigger. +2022-03-18 19:15:57.206 [lua]-[debug] ********************* on exit end ********************* +2022-03-18 19:15:57.206 [event]-[info ] Main program exit. +2022-03-18 19:15:57.533 [root]-[info ] Script engine has been shut down. +2022-03-21 15:01:17.499 [root]-[info ] ------------------------------------------------------ +2022-03-21 15:01:17.514 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 15:01:17.514 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 15:01:17.514 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 15:01:17.516 [root]-[debug] Initialize script engine successfully. +2022-03-21 15:01:17.516 [root]-[info ] Script engine startup complete. +2022-03-21 15:01:17.527 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 15:01:17.527 [lua]-[trace] Initializing 'sys' +2022-03-21 15:01:17.530 [lua]-[trace] Initializing 'filesystem' +2022-03-21 15:01:17.533 [lua]-[trace] Initializing 'gui' +2022-03-21 15:01:17.535 [lua]-[trace] Initializing 'util' +2022-03-21 15:01:17.537 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 15:01:17.538 [lua]-[trace] Initializing 'ffi' +2022-03-21 15:01:17.540 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 15:01:17.540 [lua]-[trace] Initializing 'event' +2022-03-21 15:01:17.552 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 15:01:17.554 [lua]-[trace] Initializing 'registry' +2022-03-21 15:01:17.556 [lua]-[trace] Initializing 'version' +2022-03-21 15:01:17.557 [lua]-[trace] Initializing 'localization' +2022-03-21 15:01:17.558 [lua]-[trace] Initializing 'i18n' +2022-03-21 15:01:17.560 [lua]-[trace] Initializing 'config' +2022-03-21 15:01:17.561 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 15:01:17.561 [lua]-[trace] Initializing 'plugin' +2022-03-21 15:01:17.562 [lua]-[trace] Initializing 'uiloader' +2022-03-21 15:01:17.563 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 15:01:17.563 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 15:01:17.565 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 15:01:17.566 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 15:01:17.566 [lua]-[trace] Initializing 'lni-c' +2022-03-21 15:01:17.568 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 15:01:17.569 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 15:01:17.570 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 15:01:17.571 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 15:01:17.574 [lua]-[trace] Initializing 'check_object' +2022-03-21 15:01:17.600 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 15:01:17.601 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 15:01:17.601 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 15:01:17.602 [event]-[trace] RegisterEvent id: 7 +2022-03-21 15:01:17.602 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 15:01:17.603 [event]-[trace] RegisterEvent id: 5 +2022-03-21 15:01:17.603 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 15:01:17.604 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 15:01:17.606 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 15:01:17.606 [lua]-[trace] Initializing 'compile.template' +2022-03-21 15:01:17.607 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 15:01:17.607 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 15:01:17.608 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 15:01:17.609 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 15:01:17.610 [lua]-[trace] Initializing 'compile.native' +2022-03-21 15:01:17.611 [event]-[trace] RegisterEvent id: 3 +2022-03-21 15:01:17.611 [event]-[trace] RegisterEvent id: 2 +2022-03-21 15:01:17.611 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 15:01:17.611 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 15:01:17.613 [lua]-[trace] Initializing 'utility' +2022-03-21 15:01:17.614 [lua]-[trace] Initializing 'mapdump' +2022-03-21 15:01:17.615 [event]-[trace] RegisterEvent id: 4 +2022-03-21 15:01:17.615 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 15:01:17.616 [event]-[trace] RegisterEvent id: 0 +2022-03-21 15:01:17.616 [event]-[trace] RegisterEvent id: 1 +2022-03-21 15:01:17.616 [event]-[trace] RegisterEvent id: 6 +2022-03-21 15:01:17.616 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 15:01:17.786 [event]-[trace] RegisterEvent id: 8 +2022-03-21 15:01:17.786 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 15:01:17.786 [event]-[trace] RegisterEvent id: 9 +2022-03-21 15:01:17.786 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 15:01:17.885 [event]-[info ] Entering main program. +2022-03-21 15:01:17.885 [event]-[debug] Command line: +2022-03-21 15:01:17.889 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 15:01:17.890 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 15:01:17.890 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 15:01:17.891 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 15:01:17.891 [lua]-[trace] check_conflicting_ui +2022-03-21 15:01:17.891 [lua]-[trace] check_conflicting_units +2022-03-21 15:01:17.891 [lua]-[trace] clear_potential_conflicting +2022-03-21 15:01:17.891 [lua]-[trace] check_war3_version +2022-03-21 15:01:17.897 [lua]-[error] Cannot find war3.mpq +2022-03-21 15:01:17.963 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 15:01:18. 18 [lua]-[debug] Tesh loaded successfully. +2022-03-21 15:01:18.248 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 15:01:18.250 [lua]-[debug] YDClient loaded successfully. +2022-03-21 15:01:18.251 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 15:01:18.252 [lua]-[warn ] failed: disable +2022-03-21 15:01:18.253 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 15:01:18.254 [lua]-[warn ] failed: disable +2022-03-21 15:01:18.255 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 15:01:18.255 [lua]-[warn ] failed: disable +2022-03-21 15:01:18.256 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 15:01:18.343 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 15:01:18.359 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 15:01:18.362 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 15:01:18.362 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 15:01:18.364 [inject]-[debug] Start installing inline hooks. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 15:01:18.365 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 15:01:18.365 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 15:01:18.365 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 15:01:18.365 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 15:01:18.365 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 15:01:18.365 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 15:01:18.365 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 15:01:18.365 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 15:01:18.365 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 15:01:18.365 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 15:01:18.365 [inject]-[debug] Installing inline hooks complete. +2022-03-21 15:01:18.365 [inject]-[debug] IAT hook initialization started. +2022-03-21 15:01:18.365 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 15:01:18.365 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 15:01:18.365 [inject]-[debug] IAT hook initialization completed. +2022-03-21 15:01:18.365 [inject]-[debug] Patches initialization started. +2022-03-21 15:01:18.365 [inject]-[trace] Installing syntax check patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing auto disable patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing enable trigger check patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 15:01:18.365 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing doodad limit patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing unit/item limit patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 15:01:18.365 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 15:01:18.365 [inject]-[trace] Installing attack table patch +2022-03-21 15:01:18.365 [inject]-[debug] Patches initialization completed. +2022-03-21 15:01:18.366 [inject]-[info ] YDWE startup complete. +2022-03-21 15:01:18.366 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 15:01:18.366 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 15:01:18.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 15:01:18.370 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 15:01:18.431 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 15:01:18.449 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 15:01:18.453 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 15:01:18.455 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 15:01:18.455 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 15:01:18.456 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 15:01:18.456 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 15:01:18.498 [lua]-[trace] Scanned file: 99 +2022-03-21 15:01:18.516 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 15:01:19.118 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 15:01:19.140 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 15:01:19.295 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 15:01:19.461 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 15:01:19.463 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 15:01:19.464 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 15:01:19.465 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 15:01:19.466 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 15:01:22.317 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 15:01:22.317 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 15:01:31.677 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 15:01:31.677 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 15:01:31.677 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 15:01:31.887 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 15:01:31.922 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 15:01:32. 63 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 15:01:59.578 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 15:01:59.578 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 15:01:59.578 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 15:01:59.985 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 15:02:00. 14 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 15:02:00.192 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 16:38:15.415 [event]-[trace] WE is about to compile maps. +2022-03-21 16:38:22.608 [lua]-[debug] ********************* on save start ********************* +2022-03-21 16:38:22.673 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 16:38:22.673 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-21 16:38:22.673 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 16:38:22.673 [lua]-[trace] mpq_util.update_file. +2022-03-21 16:38:22.726 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-21 16:38:22.726 [lua]-[trace] Processing file.out +2022-03-21 16:38:22.928 [lua]-[trace] Writing code to file.out +2022-03-21 16:38:22.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 16:38:22.994 [lua]-[trace] Injection completed +2022-03-21 16:38:22.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-21 16:38:22.995 [lua]-[trace] Injection completed +2022-03-21 16:38:22.995 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-21 16:38:22.996 [lua]-[trace] Injection completed +2022-03-21 16:38:22.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 16:38:23. 14 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 14 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 16:38:23. 23 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 23 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 16:38:23. 24 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 24 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-21 16:38:23. 25 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 25 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 16:38:23. 26 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 26 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 16:38:23. 27 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 27 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 16:38:23. 27 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 27 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 16:38:23. 40 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 16:38:23. 41 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 41 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 16:38:23. 42 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 42 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-21 16:38:23. 44 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 16:38:23. 44 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 16:38:23. 45 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 16:38:23. 45 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 16:38:23. 46 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 16:38:23. 47 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 16:38:23. 48 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 48 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 16:38:23. 48 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 48 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-21 16:38:23. 49 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 49 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 16:38:23. 49 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 16:38:23. 50 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 16:38:23. 66 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 66 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 16:38:23. 67 [lua]-[trace] Injection completed +2022-03-21 16:38:23. 67 [lua]-[trace] Wave compilation start. +2022-03-21 16:38:23.577 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 16:38:25.976 [lua]-[trace] Template compilation start. +2022-03-21 16:38:26. 54 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-21 16:38:26. 59 [lua]-[trace] Initializing 'computed.order_list' +2022-03-21 16:38:26. 61 [lua]-[trace] Initializing 'computed.order_id' +2022-03-21 16:38:26. 78 [lua]-[trace] Initializing 'slk' +2022-03-21 16:38:26.284 [lua]-[trace] Initializing 'archive' +2022-03-21 16:38:26.285 [lua]-[trace] Initializing 'archive_mpq' +2022-03-21 16:38:26.286 [lua]-[trace] Initializing 'archive_dir' +2022-03-21 16:38:26.286 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-21 16:38:26.287 [lua]-[trace] Initializing 'progress' +2022-03-21 16:38:26.288 [lua]-[trace] Initializing 'slk.frontend' +2022-03-21 16:38:26.291 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-21 16:38:26.292 [lua]-[trace] Initializing 'lpeg' +2022-03-21 16:38:26.345 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-21 16:38:43.215 [lua]-[error] Template error processing: F:\MapJ\ٷ༭ - \share\script\util.lua:58: not enough memory for buffer allocation +stack traceback: + F:\MapJ\ٷ༭ - \share\script\compile\template.lua:102: in function + [C]: in method 'read' + F:\MapJ\ٷ༭ - \share\script\util.lua:58: in function 'io.load' + F:\MapJ\ٷ༭ - \plugin\w3x2lni\script\w3x2lni.lua:74: in function + (...tail calls...) + ...ٷ༭ - \plugin\w3x2lni\script\slk\frontend.lua:174: in function 'slk.frontend' + F:\MapJ\ٷ༭ - \share\script\slk.lua:488: in local 'initialize' + F:\MapJ\ٷ༭ - \share\script\slk.lua:498: in main chunk + [C]: in upvalue 'real_require' + [string "F:\MapJ\ٷ༭ - \share\script\YDWE.l..."]:16: in function 'require' + ...ٷ༭ - \share\script\computed\ability2order.lua:13: in function 'computed.ability2order' + [string "..."]:41067: in main chunk + [C]: in function 'xpcall' + F:\MapJ\ٷ༭ - \share\script\compile\template.lua:102: in method 'do_compile' + F:\MapJ\ٷ༭ - \share\script\compile\template.lua:115: in method 'compile' + F:\MapJ\ٷ༭ - \share\script\ydwe_on_save.lua:84: in function + [C]: in function 'pcall' + F:\MapJ\ٷ༭ - \share\script\mpq_util.lua:30: in method 'update_file' + F:\MapJ\ٷ༭ - \share\script\ydwe_on_save.lua:53: in upvalue 'compile_map' + F:\MapJ\ٷ༭ - \share\script\ydwe_on_save.lua:175: in function +2022-03-21 16:38:43.215 [lua]-[error] Processor function cannot complete its task. +2022-03-21 16:38:43.215 [lua]-[debug] Result false +2022-03-21 16:38:43.215 [lua]-[debug] ********************* on save end ********************* +2022-03-21 16:40:24. 72 [event]-[trace] WE is about to compile maps. +2022-03-21 16:50:11.257 [root]-[info ] ------------------------------------------------------ +2022-03-21 16:50:11.266 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 16:50:11.279 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 16:50:11.279 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 16:50:11.282 [root]-[debug] Initialize script engine successfully. +2022-03-21 16:50:11.282 [root]-[info ] Script engine startup complete. +2022-03-21 16:50:11.282 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 16:50:11.282 [lua]-[trace] Initializing 'sys' +2022-03-21 16:50:11.284 [lua]-[trace] Initializing 'filesystem' +2022-03-21 16:50:11.286 [lua]-[trace] Initializing 'gui' +2022-03-21 16:50:11.287 [lua]-[trace] Initializing 'util' +2022-03-21 16:50:11.288 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 16:50:11.289 [lua]-[trace] Initializing 'ffi' +2022-03-21 16:50:11.292 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 16:50:11.292 [lua]-[trace] Initializing 'event' +2022-03-21 16:50:11.295 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 16:50:11.298 [lua]-[trace] Initializing 'registry' +2022-03-21 16:50:11.300 [lua]-[trace] Initializing 'version' +2022-03-21 16:50:11.301 [lua]-[trace] Initializing 'localization' +2022-03-21 16:50:11.306 [lua]-[trace] Initializing 'i18n' +2022-03-21 16:50:11.308 [lua]-[trace] Initializing 'config' +2022-03-21 16:50:11.326 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 16:50:11.326 [lua]-[trace] Initializing 'plugin' +2022-03-21 16:50:11.327 [lua]-[trace] Initializing 'uiloader' +2022-03-21 16:50:11.328 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 16:50:11.329 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 16:50:11.331 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 16:50:11.332 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 16:50:11.333 [lua]-[trace] Initializing 'lni-c' +2022-03-21 16:50:11.335 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 16:50:11.335 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 16:50:11.337 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 16:50:11.338 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 16:50:11.340 [lua]-[trace] Initializing 'check_object' +2022-03-21 16:50:11.354 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 16:50:11.355 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 16:50:11.355 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 16:50:11.356 [event]-[trace] RegisterEvent id: 7 +2022-03-21 16:50:11.357 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 16:50:11.357 [event]-[trace] RegisterEvent id: 5 +2022-03-21 16:50:11.357 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 16:50:11.358 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 16:50:11.360 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 16:50:11.360 [lua]-[trace] Initializing 'compile.template' +2022-03-21 16:50:11.361 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 16:50:11.362 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 16:50:11.363 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 16:50:11.363 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 16:50:11.364 [lua]-[trace] Initializing 'compile.native' +2022-03-21 16:50:11.365 [event]-[trace] RegisterEvent id: 3 +2022-03-21 16:50:11.365 [event]-[trace] RegisterEvent id: 2 +2022-03-21 16:50:11.365 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 16:50:11.366 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 16:50:11.379 [lua]-[trace] Initializing 'utility' +2022-03-21 16:50:11.380 [lua]-[trace] Initializing 'mapdump' +2022-03-21 16:50:11.381 [event]-[trace] RegisterEvent id: 4 +2022-03-21 16:50:11.381 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 16:50:11.381 [event]-[trace] RegisterEvent id: 0 +2022-03-21 16:50:11.381 [event]-[trace] RegisterEvent id: 1 +2022-03-21 16:50:11.381 [event]-[trace] RegisterEvent id: 6 +2022-03-21 16:50:11.381 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 16:50:11.532 [event]-[trace] RegisterEvent id: 8 +2022-03-21 16:50:11.532 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 16:50:11.532 [event]-[trace] RegisterEvent id: 9 +2022-03-21 16:50:11.532 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 16:50:11.631 [event]-[info ] Entering main program. +2022-03-21 16:50:11.631 [event]-[debug] Command line: +2022-03-21 16:50:11.635 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 16:50:11.636 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 16:50:11.636 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 16:50:11.637 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 16:50:11.637 [lua]-[trace] check_conflicting_ui +2022-03-21 16:50:11.637 [lua]-[trace] check_conflicting_units +2022-03-21 16:50:11.637 [lua]-[trace] clear_potential_conflicting +2022-03-21 16:50:11.638 [lua]-[trace] check_war3_version +2022-03-21 16:50:11.656 [lua]-[error] Cannot find war3.mpq +2022-03-21 16:50:11.674 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 16:50:11.729 [lua]-[debug] Tesh loaded successfully. +2022-03-21 16:50:11.808 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 16:50:11.810 [lua]-[debug] YDClient loaded successfully. +2022-03-21 16:50:11.811 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 16:50:11.812 [lua]-[warn ] failed: disable +2022-03-21 16:50:11.812 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 16:50:11.813 [lua]-[warn ] failed: disable +2022-03-21 16:50:11.813 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 16:50:11.814 [lua]-[warn ] failed: disable +2022-03-21 16:50:11.814 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 16:50:11.909 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 16:50:11.914 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 16:50:11.917 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 16:50:11.917 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 16:50:11.920 [inject]-[debug] Start installing inline hooks. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 16:50:11.920 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 16:50:11.920 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 16:50:11.920 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 16:50:11.920 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 16:50:11.920 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 16:50:11.920 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 16:50:11.920 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 16:50:11.920 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 16:50:11.920 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 16:50:11.920 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 16:50:11.920 [inject]-[debug] Installing inline hooks complete. +2022-03-21 16:50:11.920 [inject]-[debug] IAT hook initialization started. +2022-03-21 16:50:11.920 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 16:50:11.920 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 16:50:11.920 [inject]-[debug] IAT hook initialization completed. +2022-03-21 16:50:11.920 [inject]-[debug] Patches initialization started. +2022-03-21 16:50:11.920 [inject]-[trace] Installing syntax check patch +2022-03-21 16:50:11.920 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 16:50:11.920 [inject]-[trace] Installing auto disable patch +2022-03-21 16:50:11.920 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 16:50:11.920 [inject]-[trace] Installing enable trigger check patch +2022-03-21 16:50:11.920 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 16:50:11.921 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 16:50:11.921 [inject]-[trace] Installing doodad limit patch +2022-03-21 16:50:11.921 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 16:50:11.921 [inject]-[trace] Installing unit/item limit patch +2022-03-21 16:50:11.921 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 16:50:11.921 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 16:50:11.921 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 16:50:11.921 [inject]-[trace] Installing attack table patch +2022-03-21 16:50:11.921 [inject]-[debug] Patches initialization completed. +2022-03-21 16:50:11.921 [inject]-[info ] YDWE startup complete. +2022-03-21 16:50:11.921 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 16:50:11.921 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 16:50:11.922 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 16:50:11.922 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 16:50:11.978 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 16:50:11.980 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 16:50:11.983 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 16:50:11.984 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 16:50:11.984 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 16:50:11.985 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 16:50:11.985 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 16:50:12. 32 [lua]-[trace] Scanned file: 99 +2022-03-21 16:50:12. 45 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 16:50:12.725 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 16:50:12.770 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 16:50:12.944 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 16:50:13. 62 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 16:50:13. 63 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 16:50:13. 64 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 16:50:13. 64 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 16:50:13. 65 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 16:50:15.825 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 16:50:15.825 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 16:50:28.217 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 16:50:28.217 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 16:50:28.217 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 16:50:28.414 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 16:50:28.441 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 16:50:28.567 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 16:50:52.192 [root]-[info ] ------------------------------------------------------ +2022-03-21 16:50:52.197 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 16:50:52.197 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 16:50:52.197 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 16:50:52.198 [root]-[debug] Initialize script engine successfully. +2022-03-21 16:50:52.198 [root]-[info ] Script engine startup complete. +2022-03-21 16:50:52.199 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 16:50:52.200 [lua]-[trace] Initializing 'sys' +2022-03-21 16:50:52.201 [lua]-[trace] Initializing 'filesystem' +2022-03-21 16:50:52.203 [lua]-[trace] Initializing 'gui' +2022-03-21 16:50:52.204 [lua]-[trace] Initializing 'util' +2022-03-21 16:50:52.205 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 16:50:52.205 [lua]-[trace] Initializing 'ffi' +2022-03-21 16:50:52.207 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 16:50:52.207 [lua]-[trace] Initializing 'event' +2022-03-21 16:50:52.215 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 16:50:52.220 [lua]-[trace] Initializing 'registry' +2022-03-21 16:50:52.222 [lua]-[trace] Initializing 'version' +2022-03-21 16:50:52.223 [lua]-[trace] Initializing 'localization' +2022-03-21 16:50:52.225 [lua]-[trace] Initializing 'i18n' +2022-03-21 16:50:52.228 [lua]-[trace] Initializing 'config' +2022-03-21 16:50:52.240 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 16:50:52.240 [lua]-[trace] Initializing 'plugin' +2022-03-21 16:50:52.240 [lua]-[trace] Initializing 'uiloader' +2022-03-21 16:50:52.241 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 16:50:52.242 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 16:50:52.242 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 16:50:52.243 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 16:50:52.243 [lua]-[trace] Initializing 'lni-c' +2022-03-21 16:50:52.245 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 16:50:52.246 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 16:50:52.247 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 16:50:52.248 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 16:50:52.256 [lua]-[trace] Initializing 'check_object' +2022-03-21 16:50:52.265 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 16:50:52.267 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 16:50:52.267 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 16:50:52.268 [event]-[trace] RegisterEvent id: 7 +2022-03-21 16:50:52.269 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 16:50:52.270 [event]-[trace] RegisterEvent id: 5 +2022-03-21 16:50:52.270 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 16:50:52.271 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 16:50:52.271 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 16:50:52.272 [lua]-[trace] Initializing 'compile.template' +2022-03-21 16:50:52.273 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 16:50:52.274 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 16:50:52.276 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 16:50:52.277 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 16:50:52.278 [lua]-[trace] Initializing 'compile.native' +2022-03-21 16:50:52.279 [event]-[trace] RegisterEvent id: 3 +2022-03-21 16:50:52.279 [event]-[trace] RegisterEvent id: 2 +2022-03-21 16:50:52.279 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 16:50:52.280 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 16:50:52.281 [lua]-[trace] Initializing 'utility' +2022-03-21 16:50:52.281 [lua]-[trace] Initializing 'mapdump' +2022-03-21 16:50:52.282 [event]-[trace] RegisterEvent id: 4 +2022-03-21 16:50:52.282 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 16:50:52.283 [event]-[trace] RegisterEvent id: 0 +2022-03-21 16:50:52.283 [event]-[trace] RegisterEvent id: 1 +2022-03-21 16:50:52.283 [event]-[trace] RegisterEvent id: 6 +2022-03-21 16:50:52.283 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 16:50:52.457 [event]-[trace] RegisterEvent id: 8 +2022-03-21 16:50:52.457 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 16:50:52.458 [event]-[trace] RegisterEvent id: 9 +2022-03-21 16:50:52.458 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 16:50:52.571 [event]-[info ] Entering main program. +2022-03-21 16:50:52.571 [event]-[debug] Command line: +2022-03-21 16:50:52.575 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 16:50:52.576 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 16:50:52.576 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 16:50:52.577 [lua]-[debug] war3 path G:\魔兽争霸III\Warcraft III Frozen Throne +2022-03-21 16:50:52.577 [lua]-[trace] check_conflicting_ui +2022-03-21 16:50:52.577 [lua]-[trace] check_conflicting_units +2022-03-21 16:50:52.577 [lua]-[trace] clear_potential_conflicting +2022-03-21 16:50:52.577 [lua]-[trace] check_war3_version +2022-03-21 16:50:52.581 [lua]-[error] Cannot find war3.mpq +2022-03-21 16:50:52.585 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 16:50:52.607 [lua]-[debug] Tesh loaded successfully. +2022-03-21 16:50:52.628 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 16:50:52.631 [lua]-[debug] YDClient loaded successfully. +2022-03-21 16:50:52.631 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 16:50:52.632 [lua]-[warn ] failed: disable +2022-03-21 16:50:52.632 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 16:50:52.633 [lua]-[warn ] failed: disable +2022-03-21 16:50:52.633 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 16:50:52.634 [lua]-[warn ] failed: disable +2022-03-21 16:50:52.634 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 16:50:52.728 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 16:50:52.732 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 16:50:52.734 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 16:50:52.734 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 16:50:52.737 [inject]-[debug] Start installing inline hooks. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 16:50:52.738 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 16:50:52.738 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 16:50:52.738 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 16:50:52.738 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 16:50:52.738 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 16:50:52.738 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 16:50:52.738 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 16:50:52.738 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 16:50:52.738 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 16:50:52.738 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 16:50:52.738 [inject]-[debug] Installing inline hooks complete. +2022-03-21 16:50:52.738 [inject]-[debug] IAT hook initialization started. +2022-03-21 16:50:52.738 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 16:50:52.738 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 16:50:52.738 [inject]-[debug] IAT hook initialization completed. +2022-03-21 16:50:52.738 [inject]-[debug] Patches initialization started. +2022-03-21 16:50:52.738 [inject]-[trace] Installing syntax check patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing auto disable patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing enable trigger check patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 16:50:52.738 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing doodad limit patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing unit/item limit patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 16:50:52.738 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 16:50:52.738 [inject]-[trace] Installing attack table patch +2022-03-21 16:50:52.738 [inject]-[debug] Patches initialization completed. +2022-03-21 16:50:52.738 [inject]-[info ] YDWE startup complete. +2022-03-21 16:50:52.738 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 16:50:52.739 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 16:50:52.740 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 16:50:52.740 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 16:50:52.757 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 16:50:52.769 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 16:50:52.770 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 16:50:52.771 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 16:50:52.771 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 16:50:52.771 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 16:50:52.772 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 16:50:52.781 [lua]-[trace] Scanned file: 99 +2022-03-21 16:50:52.799 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 16:50:53.412 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 16:50:53.431 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 16:50:53.576 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 16:50:53.703 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 16:50:53.705 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 16:50:53.708 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 16:50:53.710 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 16:50:53.712 [lua]-[debug] Loading provider G:\魔兽争霸III\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 16:50:56.452 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 16:50:56.452 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 18:11:50. 57 [root]-[info ] ------------------------------------------------------ +2022-03-21 18:11:50. 73 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 18:11:50. 73 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 18:11:50. 73 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 18:11:50. 76 [root]-[debug] Initialize script engine successfully. +2022-03-21 18:11:50. 76 [root]-[info ] Script engine startup complete. +2022-03-21 18:11:50. 85 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 18:11:50. 85 [lua]-[trace] Initializing 'sys' +2022-03-21 18:11:50.106 [lua]-[trace] Initializing 'filesystem' +2022-03-21 18:11:50.107 [lua]-[trace] Initializing 'gui' +2022-03-21 18:11:50.110 [lua]-[trace] Initializing 'util' +2022-03-21 18:11:50.112 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 18:11:50.113 [lua]-[trace] Initializing 'ffi' +2022-03-21 18:11:50.116 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 18:11:50.116 [lua]-[trace] Initializing 'event' +2022-03-21 18:11:50.146 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 18:11:50.190 [lua]-[trace] Initializing 'registry' +2022-03-21 18:11:50.191 [lua]-[trace] Initializing 'version' +2022-03-21 18:11:50.192 [lua]-[trace] Initializing 'localization' +2022-03-21 18:11:50.193 [lua]-[trace] Initializing 'i18n' +2022-03-21 18:11:50.201 [lua]-[trace] Initializing 'config' +2022-03-21 18:11:50.203 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 18:11:50.203 [lua]-[trace] Initializing 'plugin' +2022-03-21 18:11:50.204 [lua]-[trace] Initializing 'uiloader' +2022-03-21 18:11:50.205 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 18:11:50.206 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 18:11:50.207 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 18:11:50.208 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 18:11:50.209 [lua]-[trace] Initializing 'lni-c' +2022-03-21 18:11:50.211 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 18:11:50.212 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 18:11:50.212 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 18:11:50.213 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 18:11:50.215 [lua]-[trace] Initializing 'check_object' +2022-03-21 18:11:50.246 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 18:11:50.247 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 18:11:50.247 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 18:11:50.278 [event]-[trace] RegisterEvent id: 7 +2022-03-21 18:11:50.279 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 18:11:50.281 [event]-[trace] RegisterEvent id: 5 +2022-03-21 18:11:50.281 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 18:11:50.282 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 18:11:50.284 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 18:11:50.286 [lua]-[trace] Initializing 'compile.template' +2022-03-21 18:11:50.287 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 18:11:50.287 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 18:11:50.288 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 18:11:50.288 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 18:11:50.290 [lua]-[trace] Initializing 'compile.native' +2022-03-21 18:11:50.290 [event]-[trace] RegisterEvent id: 3 +2022-03-21 18:11:50.290 [event]-[trace] RegisterEvent id: 2 +2022-03-21 18:11:50.290 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 18:11:50.291 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 18:11:50.292 [lua]-[trace] Initializing 'utility' +2022-03-21 18:11:50.293 [lua]-[trace] Initializing 'mapdump' +2022-03-21 18:11:50.293 [event]-[trace] RegisterEvent id: 4 +2022-03-21 18:11:50.293 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 18:11:50.294 [event]-[trace] RegisterEvent id: 0 +2022-03-21 18:11:50.294 [event]-[trace] RegisterEvent id: 1 +2022-03-21 18:11:50.294 [event]-[trace] RegisterEvent id: 6 +2022-03-21 18:11:50.294 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 18:11:50.436 [event]-[trace] RegisterEvent id: 8 +2022-03-21 18:11:50.436 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 18:11:50.451 [event]-[trace] RegisterEvent id: 9 +2022-03-21 18:11:50.451 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 18:11:50.473 [event]-[info ] Entering main program. +2022-03-21 18:11:50.474 [event]-[debug] Command line: +2022-03-21 18:11:50.477 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 18:11:50.549 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 18:11:50.549 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 18:11:50.549 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 18:11:50.549 [lua]-[trace] check_conflicting_ui +2022-03-21 18:11:50.559 [lua]-[trace] check_conflicting_units +2022-03-21 18:11:50.570 [lua]-[trace] clear_potential_conflicting +2022-03-21 18:11:50.570 [lua]-[trace] check_war3_version +2022-03-21 18:11:50.605 [lua]-[error] Cannot find war3.mpq +2022-03-21 18:11:50.634 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 18:11:50.676 [lua]-[debug] Tesh loaded successfully. +2022-03-21 18:11:50.798 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 18:11:50.799 [lua]-[debug] YDClient loaded successfully. +2022-03-21 18:11:50.800 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 18:11:50.801 [lua]-[warn ] failed: disable +2022-03-21 18:11:50.802 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 18:11:50.803 [lua]-[warn ] failed: disable +2022-03-21 18:11:50.804 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 18:11:50.804 [lua]-[warn ] failed: disable +2022-03-21 18:11:50.805 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 18:11:50.900 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 18:11:50.909 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 18:11:50.912 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 18:11:50.912 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 18:11:50.913 [inject]-[debug] Start installing inline hooks. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 18:11:50.914 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 18:11:50.914 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 18:11:50.914 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 18:11:50.914 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 18:11:50.914 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 18:11:50.914 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 18:11:50.914 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 18:11:50.914 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 18:11:50.914 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 18:11:50.914 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 18:11:50.914 [inject]-[debug] Installing inline hooks complete. +2022-03-21 18:11:50.914 [inject]-[debug] IAT hook initialization started. +2022-03-21 18:11:50.914 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 18:11:50.914 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 18:11:50.914 [inject]-[debug] IAT hook initialization completed. +2022-03-21 18:11:50.914 [inject]-[debug] Patches initialization started. +2022-03-21 18:11:50.914 [inject]-[trace] Installing syntax check patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing auto disable patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing enable trigger check patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 18:11:50.914 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing doodad limit patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing unit/item limit patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 18:11:50.914 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 18:11:50.914 [inject]-[trace] Installing attack table patch +2022-03-21 18:11:50.914 [inject]-[debug] Patches initialization completed. +2022-03-21 18:11:50.914 [inject]-[info ] YDWE startup complete. +2022-03-21 18:11:50.914 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 18:11:50.915 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 18:11:50.916 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 18:11:50.916 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 18:11:50.967 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 18:11:50.969 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 18:11:50.973 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 18:11:50.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 18:11:50.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 18:11:50.976 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 18:11:50.977 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 18:11:50.991 [lua]-[trace] Scanned file: 99 +2022-03-21 18:11:50.993 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 18:11:51.817 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 18:11:51.850 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 18:11:51.993 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 18:11:52.205 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 18:11:52.235 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 18:11:52.261 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 18:11:52.290 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 18:11:52.323 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 18:11:55.590 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 18:11:55.591 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 18:12:00.427 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:12:00.427 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:12:00.427 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:12:00.780 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 18:12:00.804 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 18:12:00.918 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 18:24:30.879 [root]-[info ] ------------------------------------------------------ +2022-03-21 18:24:30.911 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 18:24:30.911 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 18:24:30.911 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 18:24:30.914 [root]-[debug] Initialize script engine successfully. +2022-03-21 18:24:30.914 [root]-[info ] Script engine startup complete. +2022-03-21 18:24:30.951 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 18:24:30.951 [lua]-[trace] Initializing 'sys' +2022-03-21 18:24:30.971 [lua]-[trace] Initializing 'filesystem' +2022-03-21 18:24:30.974 [lua]-[trace] Initializing 'gui' +2022-03-21 18:24:30.976 [lua]-[trace] Initializing 'util' +2022-03-21 18:24:30.985 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 18:24:30.986 [lua]-[trace] Initializing 'ffi' +2022-03-21 18:24:30.987 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 18:24:30.988 [lua]-[trace] Initializing 'event' +2022-03-21 18:24:30.991 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 18:24:30.993 [lua]-[trace] Initializing 'registry' +2022-03-21 18:24:30.994 [lua]-[trace] Initializing 'version' +2022-03-21 18:24:30.996 [lua]-[trace] Initializing 'localization' +2022-03-21 18:24:31. 14 [lua]-[trace] Initializing 'i18n' +2022-03-21 18:24:31. 50 [lua]-[trace] Initializing 'config' +2022-03-21 18:24:31. 62 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 18:24:31. 62 [lua]-[trace] Initializing 'plugin' +2022-03-21 18:24:31.106 [lua]-[trace] Initializing 'uiloader' +2022-03-21 18:24:31.107 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 18:24:31.108 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 18:24:31.135 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 18:24:31.163 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 18:24:31.173 [lua]-[trace] Initializing 'lni-c' +2022-03-21 18:24:31.175 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 18:24:31.176 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 18:24:31.177 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 18:24:31.184 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 18:24:31.209 [lua]-[trace] Initializing 'check_object' +2022-03-21 18:24:31.318 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 18:24:31.339 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 18:24:31.339 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 18:24:31.350 [event]-[trace] RegisterEvent id: 7 +2022-03-21 18:24:31.350 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 18:24:31.368 [event]-[trace] RegisterEvent id: 5 +2022-03-21 18:24:31.368 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 18:24:31.369 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 18:24:31.379 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 18:24:31.405 [lua]-[trace] Initializing 'compile.template' +2022-03-21 18:24:31.416 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 18:24:31.417 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 18:24:31.418 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 18:24:31.426 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 18:24:31.428 [lua]-[trace] Initializing 'compile.native' +2022-03-21 18:24:31.429 [event]-[trace] RegisterEvent id: 3 +2022-03-21 18:24:31.429 [event]-[trace] RegisterEvent id: 2 +2022-03-21 18:24:31.429 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 18:24:31.431 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 18:24:31.437 [lua]-[trace] Initializing 'utility' +2022-03-21 18:24:31.461 [lua]-[trace] Initializing 'mapdump' +2022-03-21 18:24:31.482 [event]-[trace] RegisterEvent id: 4 +2022-03-21 18:24:31.482 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 18:24:31.483 [event]-[trace] RegisterEvent id: 0 +2022-03-21 18:24:31.483 [event]-[trace] RegisterEvent id: 1 +2022-03-21 18:24:31.483 [event]-[trace] RegisterEvent id: 6 +2022-03-21 18:24:31.483 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 18:24:31.634 [event]-[trace] RegisterEvent id: 8 +2022-03-21 18:24:31.634 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 18:24:31.635 [event]-[trace] RegisterEvent id: 9 +2022-03-21 18:24:31.635 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 18:24:31.638 [event]-[info ] Entering main program. +2022-03-21 18:24:31.638 [event]-[debug] Command line: +2022-03-21 18:24:31.640 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 18:24:31.642 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 18:24:31.642 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 18:24:31.642 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 18:24:31.642 [lua]-[trace] check_conflicting_ui +2022-03-21 18:24:31.643 [lua]-[trace] check_conflicting_units +2022-03-21 18:24:31.643 [lua]-[trace] clear_potential_conflicting +2022-03-21 18:24:31.643 [lua]-[trace] check_war3_version +2022-03-21 18:24:31.648 [lua]-[error] Cannot find war3.mpq +2022-03-21 18:24:31.696 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 18:24:31.765 [lua]-[debug] Tesh loaded successfully. +2022-03-21 18:24:31.853 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 18:24:31.881 [lua]-[debug] YDClient loaded successfully. +2022-03-21 18:24:31.908 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 18:24:31.928 [lua]-[warn ] failed: disable +2022-03-21 18:24:31.928 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 18:24:31.929 [lua]-[warn ] failed: disable +2022-03-21 18:24:31.929 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 18:24:31.929 [lua]-[warn ] failed: disable +2022-03-21 18:24:31.950 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 18:24:32. 40 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 18:24:32. 82 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 18:24:32. 85 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 18:24:32. 85 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 18:24:32. 86 [inject]-[debug] Start installing inline hooks. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 18:24:32. 87 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 18:24:32. 87 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 18:24:32. 87 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 18:24:32. 87 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 18:24:32. 87 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 18:24:32. 87 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 18:24:32. 87 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 18:24:32. 87 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 18:24:32. 87 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 18:24:32. 87 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 18:24:32. 87 [inject]-[debug] Installing inline hooks complete. +2022-03-21 18:24:32. 87 [inject]-[debug] IAT hook initialization started. +2022-03-21 18:24:32. 87 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 18:24:32. 87 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 18:24:32. 87 [inject]-[debug] IAT hook initialization completed. +2022-03-21 18:24:32. 87 [inject]-[debug] Patches initialization started. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing syntax check patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing auto disable patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing enable trigger check patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 18:24:32. 87 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing doodad limit patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing unit/item limit patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 18:24:32. 87 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 18:24:32. 87 [inject]-[trace] Installing attack table patch +2022-03-21 18:24:32. 87 [inject]-[debug] Patches initialization completed. +2022-03-21 18:24:32. 87 [inject]-[info ] YDWE startup complete. +2022-03-21 18:24:32. 87 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 18:24:32. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 18:24:32. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 18:24:32. 88 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 18:24:32.129 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 18:24:32.137 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 18:24:32.161 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 18:24:32.171 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 18:24:32.171 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 18:24:32.171 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 18:24:32.172 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 18:24:32.213 [lua]-[trace] Scanned file: 99 +2022-03-21 18:24:32.214 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 18:24:32.698 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 18:24:32.728 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 18:24:32.923 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 18:24:33.121 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 18:24:33.122 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 18:24:33.123 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 18:24:33.123 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 18:24:33.124 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 18:24:35.540 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 18:24:35.540 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 18:24:42.868 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:24:42.868 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:24:42.868 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 18:24:43. 57 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 18:24:43. 76 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 18:24:43.195 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 19:44:01.645 [root]-[info ] ------------------------------------------------------ +2022-03-21 19:44:01.649 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 19:44:01.649 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 19:44:01.649 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 19:44:01.653 [root]-[debug] Initialize script engine successfully. +2022-03-21 19:44:01.653 [root]-[info ] Script engine startup complete. +2022-03-21 19:44:01.662 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 19:44:01.662 [lua]-[trace] Initializing 'sys' +2022-03-21 19:44:01.665 [lua]-[trace] Initializing 'filesystem' +2022-03-21 19:44:01.667 [lua]-[trace] Initializing 'gui' +2022-03-21 19:44:01.669 [lua]-[trace] Initializing 'util' +2022-03-21 19:44:01.671 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 19:44:01.672 [lua]-[trace] Initializing 'ffi' +2022-03-21 19:44:01.674 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 19:44:01.674 [lua]-[trace] Initializing 'event' +2022-03-21 19:44:01.693 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 19:44:01.696 [lua]-[trace] Initializing 'registry' +2022-03-21 19:44:01.698 [lua]-[trace] Initializing 'version' +2022-03-21 19:44:01.699 [lua]-[trace] Initializing 'localization' +2022-03-21 19:44:01.699 [lua]-[trace] Initializing 'i18n' +2022-03-21 19:44:01.701 [lua]-[trace] Initializing 'config' +2022-03-21 19:44:01.703 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 19:44:01.703 [lua]-[trace] Initializing 'plugin' +2022-03-21 19:44:01.704 [lua]-[trace] Initializing 'uiloader' +2022-03-21 19:44:01.704 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 19:44:01.705 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 19:44:01.705 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 19:44:01.706 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 19:44:01.707 [lua]-[trace] Initializing 'lni-c' +2022-03-21 19:44:01.710 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 19:44:01.710 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 19:44:01.711 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 19:44:01.711 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 19:44:01.714 [lua]-[trace] Initializing 'check_object' +2022-03-21 19:44:01.757 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 19:44:01.757 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 19:44:01.758 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 19:44:01.759 [event]-[trace] RegisterEvent id: 7 +2022-03-21 19:44:01.759 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 19:44:01.760 [event]-[trace] RegisterEvent id: 5 +2022-03-21 19:44:01.760 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 19:44:01.761 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 19:44:01.762 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 19:44:01.763 [lua]-[trace] Initializing 'compile.template' +2022-03-21 19:44:01.764 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 19:44:01.765 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 19:44:01.765 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 19:44:01.766 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 19:44:01.767 [lua]-[trace] Initializing 'compile.native' +2022-03-21 19:44:01.768 [event]-[trace] RegisterEvent id: 3 +2022-03-21 19:44:01.768 [event]-[trace] RegisterEvent id: 2 +2022-03-21 19:44:01.768 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 19:44:01.768 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 19:44:01.770 [lua]-[trace] Initializing 'utility' +2022-03-21 19:44:01.771 [lua]-[trace] Initializing 'mapdump' +2022-03-21 19:44:01.771 [event]-[trace] RegisterEvent id: 4 +2022-03-21 19:44:01.771 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 19:44:01.772 [event]-[trace] RegisterEvent id: 0 +2022-03-21 19:44:01.772 [event]-[trace] RegisterEvent id: 1 +2022-03-21 19:44:01.772 [event]-[trace] RegisterEvent id: 6 +2022-03-21 19:44:01.772 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 19:44:01.929 [event]-[trace] RegisterEvent id: 8 +2022-03-21 19:44:01.929 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 19:44:01.930 [event]-[trace] RegisterEvent id: 9 +2022-03-21 19:44:01.930 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 19:44:01.933 [event]-[info ] Entering main program. +2022-03-21 19:44:01.933 [event]-[debug] Command line: +2022-03-21 19:44:01.936 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 19:44:01.938 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 19:44:01.938 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 19:44:01.938 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 19:44:01.938 [lua]-[trace] check_conflicting_ui +2022-03-21 19:44:01.938 [lua]-[trace] check_conflicting_units +2022-03-21 19:44:01.939 [lua]-[trace] clear_potential_conflicting +2022-03-21 19:44:01.939 [lua]-[trace] check_war3_version +2022-03-21 19:44:01.944 [lua]-[error] Cannot find war3.mpq +2022-03-21 19:44:01.968 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 19:44:02. 21 [lua]-[debug] Tesh loaded successfully. +2022-03-21 19:44:02.260 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 19:44:02.262 [lua]-[debug] YDClient loaded successfully. +2022-03-21 19:44:02.264 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 19:44:02.264 [lua]-[warn ] failed: disable +2022-03-21 19:44:02.265 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 19:44:02.266 [lua]-[warn ] failed: disable +2022-03-21 19:44:02.268 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 19:44:02.268 [lua]-[warn ] failed: disable +2022-03-21 19:44:02.268 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 19:44:02.353 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 19:44:02.360 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 19:44:02.363 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 19:44:02.364 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 19:44:02.365 [inject]-[debug] Start installing inline hooks. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 19:44:02.366 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 19:44:02.366 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 19:44:02.366 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 19:44:02.366 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 19:44:02.366 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 19:44:02.366 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 19:44:02.366 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 19:44:02.366 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 19:44:02.366 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 19:44:02.366 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 19:44:02.366 [inject]-[debug] Installing inline hooks complete. +2022-03-21 19:44:02.366 [inject]-[debug] IAT hook initialization started. +2022-03-21 19:44:02.366 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 19:44:02.366 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 19:44:02.366 [inject]-[debug] IAT hook initialization completed. +2022-03-21 19:44:02.366 [inject]-[debug] Patches initialization started. +2022-03-21 19:44:02.366 [inject]-[trace] Installing syntax check patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing auto disable patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing enable trigger check patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 19:44:02.366 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing doodad limit patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing unit/item limit patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 19:44:02.366 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 19:44:02.366 [inject]-[trace] Installing attack table patch +2022-03-21 19:44:02.366 [inject]-[debug] Patches initialization completed. +2022-03-21 19:44:02.366 [inject]-[info ] YDWE startup complete. +2022-03-21 19:44:02.366 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 19:44:02.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 19:44:02.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 19:44:02.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 19:44:02.391 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 19:44:02.394 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 19:44:02.395 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 19:44:02.396 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 19:44:02.396 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 19:44:02.397 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 19:44:02.397 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 19:44:02.408 [lua]-[trace] Scanned file: 99 +2022-03-21 19:44:02.409 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 19:44:03. 36 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 19:44:03. 56 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 19:44:03.202 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 19:44:03.347 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 19:44:03.349 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 19:44:03.349 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 19:44:03.350 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 19:44:03.351 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 19:44:05.807 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 19:44:05.807 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 19:44:10.368 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 19:44:10.368 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 19:44:10.368 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 19:44:10.737 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 19:44:10.756 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 19:44:10.876 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 19:44:22.973 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:23.456 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:23.461 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:23.954 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:24.549 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:24.731 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:25.150 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:25.155 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:26.567 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 19:44:29.940 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 19:44:29.940 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 19:44:29.940 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 19:44:30.135 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 19:44:30.154 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 19:44:30.266 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 19:44:35.787 [event]-[trace] WE is about to compile maps. +2022-03-21 19:44:38. 69 [lua]-[debug] ********************* on save start ********************* +2022-03-21 19:44:38. 70 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 19:44:38. 70 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-21 19:44:38. 70 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 19:44:38. 70 [lua]-[trace] mpq_util.update_file. +2022-03-21 19:44:38. 77 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-21 19:44:38. 77 [lua]-[trace] Processing file.out +2022-03-21 19:44:38.168 [lua]-[trace] Writing code to file.out +2022-03-21 19:44:38.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 19:44:38.169 [lua]-[trace] Injection completed +2022-03-21 19:44:38.169 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 19:44:38.170 [lua]-[trace] Injection completed +2022-03-21 19:44:38.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 19:44:38.170 [lua]-[trace] Injection completed +2022-03-21 19:44:38.170 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 19:44:38.171 [lua]-[trace] Injection completed +2022-03-21 19:44:38.171 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 19:44:38.171 [lua]-[trace] Injection completed +2022-03-21 19:44:38.171 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-21 19:44:38.172 [lua]-[trace] Injection completed +2022-03-21 19:44:38.172 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 19:44:38.172 [lua]-[trace] Injection completed +2022-03-21 19:44:38.172 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 19:44:38.173 [lua]-[trace] Injection completed +2022-03-21 19:44:38.173 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 19:44:38.173 [lua]-[trace] Injection completed +2022-03-21 19:44:38.173 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 19:44:38.174 [lua]-[trace] Injection completed +2022-03-21 19:44:38.174 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-21 19:44:38.174 [lua]-[trace] Injection completed +2022-03-21 19:44:38.174 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 19:44:38.174 [lua]-[trace] Injection completed +2022-03-21 19:44:38.174 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 19:44:38.175 [lua]-[trace] Injection completed +2022-03-21 19:44:38.175 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 19:44:38.175 [lua]-[trace] Injection completed +2022-03-21 19:44:38.175 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 19:44:38.175 [lua]-[trace] Injection completed +2022-03-21 19:44:38.175 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 19:44:38.176 [lua]-[trace] Injection completed +2022-03-21 19:44:38.176 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 19:44:38.176 [lua]-[trace] Injection completed +2022-03-21 19:44:38.176 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 19:44:38.176 [lua]-[trace] Injection completed +2022-03-21 19:44:38.176 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-21 19:44:38.177 [lua]-[trace] Injection completed +2022-03-21 19:44:38.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 19:44:38.177 [lua]-[trace] Injection completed +2022-03-21 19:44:38.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-21 19:44:38.177 [lua]-[trace] Injection completed +2022-03-21 19:44:38.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 19:44:38.178 [lua]-[trace] Injection completed +2022-03-21 19:44:38.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 19:44:38.178 [lua]-[trace] Injection completed +2022-03-21 19:44:38.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 19:44:38.178 [lua]-[trace] Injection completed +2022-03-21 19:44:38.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-21 19:44:38.179 [lua]-[trace] Injection completed +2022-03-21 19:44:38.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 19:44:38.179 [lua]-[trace] Injection completed +2022-03-21 19:44:38.179 [lua]-[trace] Wave compilation start. +2022-03-21 19:44:38.532 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 19:44:40.100 [lua]-[trace] Template compilation start. +2022-03-21 19:44:40.139 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-21 19:44:40.143 [lua]-[trace] Initializing 'computed.order_list' +2022-03-21 19:44:40.157 [lua]-[trace] Initializing 'computed.order_id' +2022-03-21 19:44:40.200 [lua]-[trace] Initializing 'slk' +2022-03-21 19:44:40.484 [lua]-[trace] Initializing 'archive' +2022-03-21 19:44:40.485 [lua]-[trace] Initializing 'archive_mpq' +2022-03-21 19:44:40.485 [lua]-[trace] Initializing 'archive_dir' +2022-03-21 19:44:40.486 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-21 19:44:40.486 [lua]-[trace] Initializing 'progress' +2022-03-21 19:44:40.487 [lua]-[trace] Initializing 'slk.frontend' +2022-03-21 19:44:40.488 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-21 19:44:40.489 [lua]-[trace] Initializing 'lpeg' +2022-03-21 19:44:40.530 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-21 19:44:40.741 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-21 19:44:40.763 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-21 19:44:40.937 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-21 19:44:40.944 [lua]-[debug] Template compilation succeeded. +2022-03-21 19:44:40.968 [lua]-[trace] JassHelper compilation start. +2022-03-21 19:44:44.227 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 1 +2022-03-21 19:44:44.227 [lua]-[debug] Result false +2022-03-21 19:44:44.227 [lua]-[debug] ********************* on save end ********************* +2022-03-21 19:45:44.475 [event]-[trace] WE is about to compile maps. +2022-03-21 19:45:46.718 [lua]-[debug] ********************* on save start ********************* +2022-03-21 19:45:46.718 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 19:45:46.718 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x +2022-03-21 19:45:46.718 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 19:45:46.718 [lua]-[trace] mpq_util.update_file. +2022-03-21 19:45:46.725 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.6.w3x +2022-03-21 19:45:46.725 [lua]-[trace] Processing file.out +2022-03-21 19:45:46.815 [lua]-[trace] Writing code to file.out +2022-03-21 19:45:46.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 19:45:46.816 [lua]-[trace] Injection completed +2022-03-21 19:45:46.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 19:45:46.816 [lua]-[trace] Injection completed +2022-03-21 19:45:46.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 19:45:46.816 [lua]-[trace] Injection completed +2022-03-21 19:45:46.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 19:45:46.816 [lua]-[trace] Injection completed +2022-03-21 19:45:46.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-21 19:45:46.817 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 19:45:46.818 [lua]-[trace] Injection completed +2022-03-21 19:45:46.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-21 19:45:46.819 [lua]-[trace] Injection completed +2022-03-21 19:45:46.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 19:45:46.820 [lua]-[trace] Injection completed +2022-03-21 19:45:46.820 [lua]-[trace] Wave compilation start. +2022-03-21 19:45:47.121 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 19:45:48.492 [lua]-[trace] Template compilation start. +2022-03-21 19:45:48.540 [lua]-[trace] Initializing 'slk' +2022-03-21 19:45:48.961 [lua]-[debug] Template compilation succeeded. +2022-03-21 19:45:48.984 [lua]-[trace] JassHelper compilation start. +2022-03-21 19:45:52.518 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.6.w3x", returned 0 +2022-03-21 19:45:52.519 [lua]-[debug] Result true +2022-03-21 19:45:52.519 [lua]-[debug] ********************* on save end ********************* +2022-03-21 19:46:27.587 [lua]-[debug] ********************* on exit start ********************* +2022-03-21 19:46:27.587 [lua]-[trace] Unload plugin YDClient. +2022-03-21 19:46:27.587 [lua]-[trace] Unload plugin YDTrigger. +2022-03-21 19:46:27.587 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-21 19:46:27.587 [inject]-[debug] IAT hook cleanup started. +2022-03-21 19:46:27.587 [inject]-[trace] WE IAT hook cleaned. +2022-03-21 19:46:27.587 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-21 19:46:27.587 [inject]-[debug] IAT hook cleanup completed. +2022-03-21 19:46:27.587 [inject]-[debug] Inline hook uninstallation begins! +2022-03-21 19:46:27.587 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-21 19:46:27.587 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-21 19:46:27.587 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-21 19:46:27.587 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-21 19:46:27.587 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-21 19:46:27.588 [inject]-[debug] Inline hook uninstallation finished! +2022-03-21 19:46:27.588 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-21 19:46:27.588 [lua]-[trace] Unload plugin Tesh. +2022-03-21 19:46:27.589 [lua]-[debug] ********************* on exit end ********************* +2022-03-21 19:46:27.589 [event]-[info ] Main program exit. +2022-03-21 19:46:27.787 [root]-[info ] Script engine has been shut down. +2022-03-21 22:05:49.684 [root]-[info ] ------------------------------------------------------ +2022-03-21 22:05:49.693 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-21 22:05:49.693 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-21 22:05:49.693 [root]-[info ] Windows version: 10.0.19041 +2022-03-21 22:05:49.696 [root]-[debug] Initialize script engine successfully. +2022-03-21 22:05:49.696 [root]-[info ] Script engine startup complete. +2022-03-21 22:05:49.711 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-21 22:05:49.712 [lua]-[trace] Initializing 'sys' +2022-03-21 22:05:49.714 [lua]-[trace] Initializing 'filesystem' +2022-03-21 22:05:49.716 [lua]-[trace] Initializing 'gui' +2022-03-21 22:05:49.718 [lua]-[trace] Initializing 'util' +2022-03-21 22:05:49.720 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-21 22:05:49.721 [lua]-[trace] Initializing 'ffi' +2022-03-21 22:05:49.723 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-21 22:05:49.723 [lua]-[trace] Initializing 'event' +2022-03-21 22:05:49.748 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-21 22:05:49.808 [lua]-[trace] Initializing 'registry' +2022-03-21 22:05:49.811 [lua]-[trace] Initializing 'version' +2022-03-21 22:05:49.812 [lua]-[trace] Initializing 'localization' +2022-03-21 22:05:49.812 [lua]-[trace] Initializing 'i18n' +2022-03-21 22:05:49.814 [lua]-[trace] Initializing 'config' +2022-03-21 22:05:49.839 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 22:05:49.840 [lua]-[trace] Initializing 'plugin' +2022-03-21 22:05:49.840 [lua]-[trace] Initializing 'uiloader' +2022-03-21 22:05:49.841 [lua]-[trace] Initializing 'stringify_slk' +2022-03-21 22:05:49.842 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-21 22:05:49.842 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-21 22:05:49.843 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-21 22:05:49.844 [lua]-[trace] Initializing 'lni-c' +2022-03-21 22:05:49.846 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-21 22:05:49.847 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-21 22:05:49.848 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-21 22:05:49.848 [lua]-[trace] Initializing 'w3xparser' +2022-03-21 22:05:49.855 [lua]-[trace] Initializing 'check_object' +2022-03-21 22:05:49.862 [lua]-[trace] Initializing 'ffi.storm' +2022-03-21 22:05:49.862 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-21 22:05:49.864 [lua]-[trace] Initializing 'ffi.gui' +2022-03-21 22:05:49.864 [event]-[trace] RegisterEvent id: 7 +2022-03-21 22:05:49.864 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-21 22:05:49.864 [event]-[trace] RegisterEvent id: 5 +2022-03-21 22:05:49.864 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-21 22:05:49.866 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-21 22:05:49.866 [lua]-[trace] Initializing 'compile.wave' +2022-03-21 22:05:49.867 [lua]-[trace] Initializing 'compile.template' +2022-03-21 22:05:49.868 [lua]-[trace] Initializing 'compile.cjass' +2022-03-21 22:05:49.868 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-21 22:05:49.869 [lua]-[trace] Initializing 'mpq_util' +2022-03-21 22:05:49.869 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-21 22:05:49.870 [lua]-[trace] Initializing 'compile.native' +2022-03-21 22:05:49.871 [event]-[trace] RegisterEvent id: 3 +2022-03-21 22:05:49.871 [event]-[trace] RegisterEvent id: 2 +2022-03-21 22:05:49.871 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-21 22:05:49.871 [lua]-[trace] Initializing 'w3x2lni' +2022-03-21 22:05:49.886 [lua]-[trace] Initializing 'utility' +2022-03-21 22:05:49.887 [lua]-[trace] Initializing 'mapdump' +2022-03-21 22:05:49.887 [event]-[trace] RegisterEvent id: 4 +2022-03-21 22:05:49.887 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-21 22:05:49.888 [event]-[trace] RegisterEvent id: 0 +2022-03-21 22:05:49.888 [event]-[trace] RegisterEvent id: 1 +2022-03-21 22:05:49.888 [event]-[trace] RegisterEvent id: 6 +2022-03-21 22:05:49.888 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-21 22:05:50. 54 [event]-[trace] RegisterEvent id: 8 +2022-03-21 22:05:50. 54 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-21 22:05:50. 55 [event]-[trace] RegisterEvent id: 9 +2022-03-21 22:05:50. 55 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-21 22:05:50. 61 [event]-[info ] Entering main program. +2022-03-21 22:05:50. 61 [event]-[debug] Command line: +2022-03-21 22:05:50. 64 [lua]-[debug] ********************* on startup start ********************* +2022-03-21 22:05:50.130 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-21 22:05:50.130 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-21 22:05:50.131 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 22:05:50.131 [lua]-[trace] check_conflicting_ui +2022-03-21 22:05:50.131 [lua]-[trace] check_conflicting_units +2022-03-21 22:05:50.131 [lua]-[trace] clear_potential_conflicting +2022-03-21 22:05:50.132 [lua]-[trace] check_war3_version +2022-03-21 22:05:50.167 [lua]-[error] Cannot find war3.mpq +2022-03-21 22:05:50.171 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-21 22:05:50.216 [lua]-[debug] Tesh loaded successfully. +2022-03-21 22:05:50.238 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-21 22:05:50.254 [lua]-[debug] YDClient loaded successfully. +2022-03-21 22:05:50.254 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-21 22:05:50.267 [lua]-[warn ] failed: disable +2022-03-21 22:05:50.268 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-21 22:05:50.269 [lua]-[warn ] failed: disable +2022-03-21 22:05:50.269 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-21 22:05:50.270 [lua]-[warn ] failed: disable +2022-03-21 22:05:50.270 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-21 22:05:50.357 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-21 22:05:50.360 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-21 22:05:50.363 [lua]-[debug] YDTrigger loaded successfully. +2022-03-21 22:05:50.363 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-21 22:05:50.365 [inject]-[debug] Start installing inline hooks. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-21 22:05:50.366 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-21 22:05:50.366 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-21 22:05:50.366 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-21 22:05:50.366 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-21 22:05:50.366 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-21 22:05:50.366 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-21 22:05:50.366 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-21 22:05:50.366 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-21 22:05:50.366 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-21 22:05:50.366 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-21 22:05:50.366 [inject]-[debug] Installing inline hooks complete. +2022-03-21 22:05:50.366 [inject]-[debug] IAT hook initialization started. +2022-03-21 22:05:50.366 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-21 22:05:50.366 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-21 22:05:50.366 [inject]-[debug] IAT hook initialization completed. +2022-03-21 22:05:50.366 [inject]-[debug] Patches initialization started. +2022-03-21 22:05:50.366 [inject]-[trace] Installing syntax check patch +2022-03-21 22:05:50.366 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-21 22:05:50.366 [inject]-[trace] Installing auto disable patch +2022-03-21 22:05:50.366 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-21 22:05:50.366 [inject]-[trace] Installing enable trigger check patch +2022-03-21 22:05:50.366 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-21 22:05:50.366 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-21 22:05:50.366 [inject]-[trace] Installing doodad limit patch +2022-03-21 22:05:50.366 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-21 22:05:50.366 [inject]-[trace] Installing unit/item limit patch +2022-03-21 22:05:50.366 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-21 22:05:50.366 [inject]-[trace] Installing editor multi-instance patch +2022-03-21 22:05:50.367 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-21 22:05:50.367 [inject]-[trace] Installing attack table patch +2022-03-21 22:05:50.367 [inject]-[debug] Patches initialization completed. +2022-03-21 22:05:50.367 [inject]-[info ] YDWE startup complete. +2022-03-21 22:05:50.367 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-21 22:05:50.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-21 22:05:50.367 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-21 22:05:50.368 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-21 22:05:50.384 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-21 22:05:50.400 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-21 22:05:50.402 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-21 22:05:50.403 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-21 22:05:50.403 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-21 22:05:50.403 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-21 22:05:50.403 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-21 22:05:50.414 [lua]-[trace] Scanned file: 99 +2022-03-21 22:05:50.416 [lua]-[debug] ********************* on startup end ********************* +2022-03-21 22:05:51.517 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 22:05:51.554 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 22:05:51.735 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 22:05:52. 19 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-21 22:05:52. 48 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-21 22:05:52. 74 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-21 22:05:52.105 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-21 22:05:52.135 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-21 22:05:55.149 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-21 22:05:55.149 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-21 22:05:59.899 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 22:05:59.900 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 22:05:59.900 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-21 22:06:00.309 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 22:06:00.339 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 22:06:00.474 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 22:22:34.313 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:35.784 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:35.790 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:36.730 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:37.966 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:38.225 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:39. 24 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:39. 30 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:41.481 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-21 22:22:46.593 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 22:22:46.593 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 22:22:46.593 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-21 22:22:46.818 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-21 22:22:46.840 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-21 22:22:46.969 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-21 23:09:10.904 [event]-[trace] WE is about to compile maps. +2022-03-21 23:09:13.267 [lua]-[debug] ********************* on save start ********************* +2022-03-21 23:09:13.293 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 23:09:13.293 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-21 23:09:13.293 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 23:09:13.293 [lua]-[trace] mpq_util.update_file. +2022-03-21 23:09:13.294 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-21 23:09:13.294 [lua]-[trace] Processing file.out +2022-03-21 23:09:13.306 [lua]-[trace] Writing code to file.out +2022-03-21 23:09:13.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 23:09:13.316 [lua]-[trace] Injection completed +2022-03-21 23:09:13.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 23:09:13.325 [lua]-[trace] Injection completed +2022-03-21 23:09:13.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 23:09:13.326 [lua]-[trace] Injection completed +2022-03-21 23:09:13.326 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 23:09:13.326 [lua]-[trace] Injection completed +2022-03-21 23:09:13.326 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 23:09:13.326 [lua]-[trace] Injection completed +2022-03-21 23:09:13.326 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 23:09:13.336 [lua]-[trace] Injection completed +2022-03-21 23:09:13.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 23:09:13.344 [lua]-[trace] Injection completed +2022-03-21 23:09:13.344 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 23:09:13.346 [lua]-[trace] Injection completed +2022-03-21 23:09:13.346 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 23:09:13.347 [lua]-[trace] Injection completed +2022-03-21 23:09:13.347 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 23:09:13.347 [lua]-[trace] Injection completed +2022-03-21 23:09:13.347 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 23:09:13.348 [lua]-[trace] Injection completed +2022-03-21 23:09:13.348 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 23:09:13.348 [lua]-[trace] Injection completed +2022-03-21 23:09:13.348 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 23:09:13.349 [lua]-[trace] Injection completed +2022-03-21 23:09:13.349 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 23:09:13.349 [lua]-[trace] Injection completed +2022-03-21 23:09:13.349 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 23:09:13.350 [lua]-[trace] Injection completed +2022-03-21 23:09:13.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 23:09:13.350 [lua]-[trace] Injection completed +2022-03-21 23:09:13.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 23:09:13.351 [lua]-[trace] Injection completed +2022-03-21 23:09:13.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 23:09:13.351 [lua]-[trace] Injection completed +2022-03-21 23:09:13.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 23:09:13.351 [lua]-[trace] Injection completed +2022-03-21 23:09:13.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 23:09:13.352 [lua]-[trace] Injection completed +2022-03-21 23:09:13.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 23:09:13.353 [lua]-[trace] Injection completed +2022-03-21 23:09:13.353 [lua]-[trace] Wave compilation start. +2022-03-21 23:09:13.711 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 23:09:15.335 [lua]-[trace] Template compilation start. +2022-03-21 23:09:15.390 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-21 23:09:15.398 [lua]-[trace] Initializing 'computed.order_list' +2022-03-21 23:09:15.399 [lua]-[trace] Initializing 'computed.order_id' +2022-03-21 23:09:15.410 [lua]-[trace] Initializing 'slk' +2022-03-21 23:09:15.777 [lua]-[trace] Initializing 'archive' +2022-03-21 23:09:15.778 [lua]-[trace] Initializing 'archive_mpq' +2022-03-21 23:09:15.779 [lua]-[trace] Initializing 'archive_dir' +2022-03-21 23:09:15.779 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-21 23:09:15.780 [lua]-[trace] Initializing 'progress' +2022-03-21 23:09:15.780 [lua]-[trace] Initializing 'slk.frontend' +2022-03-21 23:09:15.781 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-21 23:09:15.782 [lua]-[trace] Initializing 'lpeg' +2022-03-21 23:09:15.823 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-21 23:09:16. 74 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-21 23:09:16. 95 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-21 23:09:16.284 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-21 23:09:16.299 [lua]-[debug] Template compilation succeeded. +2022-03-21 23:09:16.341 [lua]-[trace] JassHelper compilation start. +2022-03-21 23:09:19.874 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-21 23:09:19.874 [lua]-[debug] Result false +2022-03-21 23:09:19.874 [lua]-[debug] ********************* on save end ********************* +2022-03-21 23:10:50. 29 [event]-[trace] WE is about to compile maps. +2022-03-21 23:10:52.290 [lua]-[debug] ********************* on save start ********************* +2022-03-21 23:10:52.291 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 23:10:52.291 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-21 23:10:52.291 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 23:10:52.291 [lua]-[trace] mpq_util.update_file. +2022-03-21 23:10:52.293 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-21 23:10:52.293 [lua]-[trace] Processing file.out +2022-03-21 23:10:52.305 [lua]-[trace] Writing code to file.out +2022-03-21 23:10:52.305 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 23:10:52.305 [lua]-[trace] Injection completed +2022-03-21 23:10:52.305 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 23:10:52.306 [lua]-[trace] Injection completed +2022-03-21 23:10:52.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 23:10:52.306 [lua]-[trace] Injection completed +2022-03-21 23:10:52.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 23:10:52.306 [lua]-[trace] Injection completed +2022-03-21 23:10:52.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 23:10:52.306 [lua]-[trace] Injection completed +2022-03-21 23:10:52.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 23:10:52.306 [lua]-[trace] Injection completed +2022-03-21 23:10:52.306 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 23:10:52.307 [lua]-[trace] Injection completed +2022-03-21 23:10:52.307 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.308 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 23:10:52.308 [lua]-[trace] Injection completed +2022-03-21 23:10:52.309 [lua]-[trace] Wave compilation start. +2022-03-21 23:10:52.614 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 23:10:54. 28 [lua]-[trace] Template compilation start. +2022-03-21 23:10:54. 91 [lua]-[trace] Initializing 'slk' +2022-03-21 23:10:54.533 [lua]-[debug] Template compilation succeeded. +2022-03-21 23:10:54.563 [lua]-[trace] JassHelper compilation start. +2022-03-21 23:10:57.982 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-21 23:10:57.982 [lua]-[debug] Result false +2022-03-21 23:10:57.982 [lua]-[debug] ********************* on save end ********************* +2022-03-21 23:11:57.590 [event]-[trace] WE is about to compile maps. +2022-03-21 23:11:59.978 [lua]-[debug] ********************* on save start ********************* +2022-03-21 23:11:59.979 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-21 23:11:59.979 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-21 23:11:59.979 [lua]-[trace] Save version 1.27.0.52240 +2022-03-21 23:11:59.979 [lua]-[trace] mpq_util.update_file. +2022-03-21 23:11:59.981 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-21 23:11:59.981 [lua]-[trace] Processing file.out +2022-03-21 23:11:59.992 [lua]-[trace] Writing code to file.out +2022-03-21 23:11:59.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-21 23:11:59.993 [lua]-[trace] Injection completed +2022-03-21 23:11:59.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-21 23:11:59.993 [lua]-[trace] Injection completed +2022-03-21 23:11:59.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-21 23:11:59.993 [lua]-[trace] Injection completed +2022-03-21 23:11:59.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-21 23:11:59.993 [lua]-[trace] Injection completed +2022-03-21 23:11:59.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-21 23:11:59.993 [lua]-[trace] Injection completed +2022-03-21 23:11:59.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-21 23:11:59.994 [lua]-[trace] Injection completed +2022-03-21 23:11:59.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-21 23:11:59.994 [lua]-[trace] Injection completed +2022-03-21 23:11:59.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-21 23:11:59.994 [lua]-[trace] Injection completed +2022-03-21 23:11:59.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-21 23:11:59.994 [lua]-[trace] Injection completed +2022-03-21 23:11:59.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-21 23:11:59.996 [lua]-[trace] Injection completed +2022-03-21 23:11:59.996 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-21 23:11:59.997 [lua]-[trace] Injection completed +2022-03-21 23:11:59.997 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-21 23:11:59.997 [lua]-[trace] Injection completed +2022-03-21 23:11:59.997 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-21 23:11:59.997 [lua]-[trace] Injection completed +2022-03-21 23:11:59.997 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-21 23:11:59.997 [lua]-[trace] Injection completed +2022-03-21 23:11:59.997 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-21 23:11:59.997 [lua]-[trace] Injection completed +2022-03-21 23:11:59.997 [lua]-[trace] Wave compilation start. +2022-03-21 23:12:00.311 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-21 23:12:01.745 [lua]-[trace] Template compilation start. +2022-03-21 23:12:01.810 [lua]-[trace] Initializing 'slk' +2022-03-21 23:12:02.283 [lua]-[debug] Template compilation succeeded. +2022-03-21 23:12:02.314 [lua]-[trace] JassHelper compilation start. +2022-03-21 23:12:05.591 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-21 23:12:05.592 [lua]-[debug] Result true +2022-03-21 23:12:05.592 [lua]-[debug] ********************* on save end ********************* +2022-03-22 00:08:33.863 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:08:33.863 [event]-[trace] No need to compile. +2022-03-22 00:08:33.863 [lua]-[debug] ********************* on test start ********************* +2022-03-22 00:08:33.870 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:08:33.870 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:08:33.870 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:08:33.870 [lua]-[debug] Testing 0 +2022-03-22 00:08:34.140 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 00:08:34.140 [lua]-[debug] ********************* on test end ********************* +2022-03-22 00:33:25.719 [event]-[trace] WE is about to compile maps. +2022-03-22 00:33:28. 93 [lua]-[debug] ********************* on save start ********************* +2022-03-22 00:33:28. 93 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:33:28. 93 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 00:33:28. 93 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 00:33:28. 93 [lua]-[trace] mpq_util.update_file. +2022-03-22 00:33:28. 95 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 00:33:28. 95 [lua]-[trace] Processing file.out +2022-03-22 00:33:28.108 [lua]-[trace] Writing code to file.out +2022-03-22 00:33:28.108 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 00:33:28.131 [lua]-[trace] Injection completed +2022-03-22 00:33:28.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 00:33:28.138 [lua]-[trace] Injection completed +2022-03-22 00:33:28.138 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 00:33:28.139 [lua]-[trace] Injection completed +2022-03-22 00:33:28.139 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 00:33:28.140 [lua]-[trace] Injection completed +2022-03-22 00:33:28.140 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 00:33:28.140 [lua]-[trace] Injection completed +2022-03-22 00:33:28.140 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 00:33:28.151 [lua]-[trace] Injection completed +2022-03-22 00:33:28.151 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 00:33:28.158 [lua]-[trace] Injection completed +2022-03-22 00:33:28.158 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 00:33:28.160 [lua]-[trace] Injection completed +2022-03-22 00:33:28.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 00:33:28.161 [lua]-[trace] Injection completed +2022-03-22 00:33:28.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 00:33:28.161 [lua]-[trace] Injection completed +2022-03-22 00:33:28.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 00:33:28.162 [lua]-[trace] Injection completed +2022-03-22 00:33:28.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 00:33:28.162 [lua]-[trace] Injection completed +2022-03-22 00:33:28.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 00:33:28.163 [lua]-[trace] Injection completed +2022-03-22 00:33:28.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 00:33:28.163 [lua]-[trace] Injection completed +2022-03-22 00:33:28.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 00:33:28.164 [lua]-[trace] Injection completed +2022-03-22 00:33:28.164 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 00:33:28.164 [lua]-[trace] Injection completed +2022-03-22 00:33:28.164 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 00:33:28.165 [lua]-[trace] Injection completed +2022-03-22 00:33:28.165 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 00:33:28.165 [lua]-[trace] Injection completed +2022-03-22 00:33:28.165 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 00:33:28.166 [lua]-[trace] Injection completed +2022-03-22 00:33:28.166 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 00:33:28.166 [lua]-[trace] Injection completed +2022-03-22 00:33:28.166 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 00:33:28.167 [lua]-[trace] Injection completed +2022-03-22 00:33:28.167 [lua]-[trace] Wave compilation start. +2022-03-22 00:33:28.498 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 00:33:30.127 [lua]-[trace] Template compilation start. +2022-03-22 00:33:30.189 [lua]-[trace] Initializing 'slk' +2022-03-22 00:33:30.704 [lua]-[debug] Template compilation succeeded. +2022-03-22 00:33:30.734 [lua]-[trace] JassHelper compilation start. +2022-03-22 00:33:34.706 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 00:33:34.742 [lua]-[debug] Result true +2022-03-22 00:33:34.742 [lua]-[debug] ********************* on save end ********************* +2022-03-22 00:34:40.295 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:34:40.295 [event]-[trace] No need to compile. +2022-03-22 00:34:40.295 [lua]-[debug] ********************* on test start ********************* +2022-03-22 00:34:40.296 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:34:40.296 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:34:40.296 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:34:40.296 [lua]-[debug] Testing 0 +2022-03-22 00:34:40.350 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 00:34:40.350 [lua]-[debug] ********************* on test end ********************* +2022-03-22 00:42:00.604 [event]-[trace] WE is about to compile maps. +2022-03-22 00:42:02.859 [lua]-[debug] ********************* on save start ********************* +2022-03-22 00:42:02.859 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:42:02.860 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 00:42:02.860 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 00:42:02.860 [lua]-[trace] mpq_util.update_file. +2022-03-22 00:42:02.862 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 00:42:02.862 [lua]-[trace] Processing file.out +2022-03-22 00:42:02.875 [lua]-[trace] Writing code to file.out +2022-03-22 00:42:02.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 00:42:02.876 [lua]-[trace] Injection completed +2022-03-22 00:42:02.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 00:42:02.876 [lua]-[trace] Injection completed +2022-03-22 00:42:02.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 00:42:02.876 [lua]-[trace] Injection completed +2022-03-22 00:42:02.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 00:42:02.876 [lua]-[trace] Injection completed +2022-03-22 00:42:02.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 00:42:02.876 [lua]-[trace] Injection completed +2022-03-22 00:42:02.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 00:42:02.877 [lua]-[trace] Injection completed +2022-03-22 00:42:02.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 00:42:02.878 [lua]-[trace] Injection completed +2022-03-22 00:42:02.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 00:42:02.879 [lua]-[trace] Injection completed +2022-03-22 00:42:02.879 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 00:42:02.879 [lua]-[trace] Injection completed +2022-03-22 00:42:02.879 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 00:42:02.879 [lua]-[trace] Injection completed +2022-03-22 00:42:02.879 [lua]-[trace] Wave compilation start. +2022-03-22 00:42:03.236 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 00:42:04.652 [lua]-[trace] Template compilation start. +2022-03-22 00:42:04.721 [lua]-[trace] Initializing 'slk' +2022-03-22 00:42:05.295 [lua]-[debug] Template compilation succeeded. +2022-03-22 00:42:05.326 [lua]-[trace] JassHelper compilation start. +2022-03-22 00:42:08.757 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 00:42:08.757 [lua]-[debug] Result true +2022-03-22 00:42:08.757 [lua]-[debug] ********************* on save end ********************* +2022-03-22 00:42:10.809 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:42:10.809 [event]-[trace] No need to compile. +2022-03-22 00:42:10.809 [lua]-[debug] ********************* on test start ********************* +2022-03-22 00:42:10.810 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:42:10.810 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:42:10.810 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:42:10.810 [lua]-[debug] Testing 0 +2022-03-22 00:42:10.866 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 00:42:10.866 [lua]-[debug] ********************* on test end ********************* +2022-03-22 00:50:57.531 [event]-[trace] WE is about to compile maps. +2022-03-22 00:51:00. 38 [lua]-[debug] ********************* on save start ********************* +2022-03-22 00:51:00. 39 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:51:00. 39 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 00:51:00. 39 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 00:51:00. 39 [lua]-[trace] mpq_util.update_file. +2022-03-22 00:51:00. 41 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 00:51:00. 41 [lua]-[trace] Processing file.out +2022-03-22 00:51:00. 53 [lua]-[trace] Writing code to file.out +2022-03-22 00:51:00. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 00:51:00. 53 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 00:51:00. 53 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 00:51:00. 54 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 00:51:00. 54 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 00:51:00. 54 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 00:51:00. 54 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 00:51:00. 54 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 00:51:00. 55 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 55 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 00:51:00. 56 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 56 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 00:51:00. 57 [lua]-[trace] Injection completed +2022-03-22 00:51:00. 57 [lua]-[trace] Wave compilation start. +2022-03-22 00:51:00.427 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 00:51:01.906 [lua]-[trace] Template compilation start. +2022-03-22 00:51:01.978 [lua]-[trace] Initializing 'slk' +2022-03-22 00:51:02.503 [lua]-[debug] Template compilation succeeded. +2022-03-22 00:51:02.537 [lua]-[trace] JassHelper compilation start. +2022-03-22 00:51:05.942 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 00:51:05.942 [lua]-[debug] Result true +2022-03-22 00:51:05.942 [lua]-[debug] ********************* on save end ********************* +2022-03-22 00:52:17.694 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:52:17.694 [event]-[trace] No need to compile. +2022-03-22 00:52:17.694 [lua]-[debug] ********************* on test start ********************* +2022-03-22 00:52:17.694 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 00:52:17.694 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:52:17.694 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 00:52:17.694 [lua]-[debug] Testing 0 +2022-03-22 00:52:17.749 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 00:52:17.749 [lua]-[debug] ********************* on test end ********************* +2022-03-22 01:00:04.199 [event]-[trace] WE is about to compile maps. +2022-03-22 01:00:06.459 [lua]-[debug] ********************* on save start ********************* +2022-03-22 01:00:06.460 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 01:00:06.460 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 01:00:06.460 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 01:00:06.460 [lua]-[trace] mpq_util.update_file. +2022-03-22 01:00:06.462 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 01:00:06.462 [lua]-[trace] Processing file.out +2022-03-22 01:00:06.475 [lua]-[trace] Writing code to file.out +2022-03-22 01:00:06.475 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 01:00:06.475 [lua]-[trace] Injection completed +2022-03-22 01:00:06.475 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 01:00:06.475 [lua]-[trace] Injection completed +2022-03-22 01:00:06.475 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 01:00:06.476 [lua]-[trace] Injection completed +2022-03-22 01:00:06.476 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 01:00:06.476 [lua]-[trace] Injection completed +2022-03-22 01:00:06.476 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 01:00:06.476 [lua]-[trace] Injection completed +2022-03-22 01:00:06.476 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 01:00:06.477 [lua]-[trace] Injection completed +2022-03-22 01:00:06.477 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 01:00:06.478 [lua]-[trace] Injection completed +2022-03-22 01:00:06.478 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 01:00:06.479 [lua]-[trace] Injection completed +2022-03-22 01:00:06.479 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 01:00:06.479 [lua]-[trace] Injection completed +2022-03-22 01:00:06.479 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 01:00:06.479 [lua]-[trace] Injection completed +2022-03-22 01:00:06.479 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 01:00:06.479 [lua]-[trace] Injection completed +2022-03-22 01:00:06.479 [lua]-[trace] Wave compilation start. +2022-03-22 01:00:06.788 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 01:00:08.219 [lua]-[trace] Template compilation start. +2022-03-22 01:00:08.289 [lua]-[trace] Initializing 'slk' +2022-03-22 01:00:08.826 [lua]-[debug] Template compilation succeeded. +2022-03-22 01:00:08.957 [lua]-[trace] JassHelper compilation start. +2022-03-22 01:00:12.617 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 01:00:12.618 [lua]-[debug] Result true +2022-03-22 01:00:12.618 [lua]-[debug] ********************* on save end ********************* +2022-03-22 01:00:27.773 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:00:27.773 [event]-[trace] No need to compile. +2022-03-22 01:00:27.773 [lua]-[debug] ********************* on test start ********************* +2022-03-22 01:00:27.774 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 01:00:27.774 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:00:27.774 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:00:27.774 [lua]-[debug] Testing 0 +2022-03-22 01:00:27.830 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 01:00:27.830 [lua]-[debug] ********************* on test end ********************* +2022-03-22 01:09:36.668 [event]-[trace] WE is about to compile maps. +2022-03-22 01:09:38.974 [lua]-[debug] ********************* on save start ********************* +2022-03-22 01:09:38.975 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 01:09:38.975 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 01:09:38.975 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 01:09:38.975 [lua]-[trace] mpq_util.update_file. +2022-03-22 01:09:38.978 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 01:09:38.978 [lua]-[trace] Processing file.out +2022-03-22 01:09:38.990 [lua]-[trace] Writing code to file.out +2022-03-22 01:09:38.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 01:09:38.991 [lua]-[trace] Injection completed +2022-03-22 01:09:38.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 01:09:38.991 [lua]-[trace] Injection completed +2022-03-22 01:09:38.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 01:09:38.991 [lua]-[trace] Injection completed +2022-03-22 01:09:38.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 01:09:38.991 [lua]-[trace] Injection completed +2022-03-22 01:09:38.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 01:09:38.992 [lua]-[trace] Injection completed +2022-03-22 01:09:38.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 01:09:38.993 [lua]-[trace] Injection completed +2022-03-22 01:09:38.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 01:09:38.994 [lua]-[trace] Injection completed +2022-03-22 01:09:38.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 01:09:38.994 [lua]-[trace] Injection completed +2022-03-22 01:09:38.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 01:09:38.994 [lua]-[trace] Injection completed +2022-03-22 01:09:38.994 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 01:09:38.994 [lua]-[trace] Injection completed +2022-03-22 01:09:38.994 [lua]-[trace] Wave compilation start. +2022-03-22 01:09:39.307 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 01:09:40.761 [lua]-[trace] Template compilation start. +2022-03-22 01:09:40.823 [lua]-[trace] Initializing 'slk' +2022-03-22 01:09:41.278 [lua]-[debug] Template compilation succeeded. +2022-03-22 01:09:41.310 [lua]-[trace] JassHelper compilation start. +2022-03-22 01:09:44.912 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 01:09:44.912 [lua]-[debug] Result true +2022-03-22 01:09:44.912 [lua]-[debug] ********************* on save end ********************* +2022-03-22 01:10:11.107 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:10:11.107 [event]-[trace] No need to compile. +2022-03-22 01:10:11.107 [lua]-[debug] ********************* on test start ********************* +2022-03-22 01:10:11.107 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 01:10:11.107 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:10:11.107 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 01:10:11.107 [lua]-[debug] Testing 0 +2022-03-22 01:10:11.164 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 01:10:11.164 [lua]-[debug] ********************* on test end ********************* +2022-03-22 10:57:54.671 [root]-[info ] ------------------------------------------------------ +2022-03-22 10:57:54.689 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-22 10:57:54.689 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-22 10:57:54.689 [root]-[info ] Windows version: 10.0.19041 +2022-03-22 10:57:54.697 [root]-[debug] Initialize script engine successfully. +2022-03-22 10:57:54.697 [root]-[info ] Script engine startup complete. +2022-03-22 10:57:54.711 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-22 10:57:54.711 [lua]-[trace] Initializing 'sys' +2022-03-22 10:57:54.714 [lua]-[trace] Initializing 'filesystem' +2022-03-22 10:57:54.715 [lua]-[trace] Initializing 'gui' +2022-03-22 10:57:54.717 [lua]-[trace] Initializing 'util' +2022-03-22 10:57:54.719 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-22 10:57:54.721 [lua]-[trace] Initializing 'ffi' +2022-03-22 10:57:54.722 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-22 10:57:54.722 [lua]-[trace] Initializing 'event' +2022-03-22 10:57:54.769 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-22 10:57:54.804 [lua]-[trace] Initializing 'registry' +2022-03-22 10:57:54.805 [lua]-[trace] Initializing 'version' +2022-03-22 10:57:54.806 [lua]-[trace] Initializing 'localization' +2022-03-22 10:57:54.807 [lua]-[trace] Initializing 'i18n' +2022-03-22 10:57:54.810 [lua]-[trace] Initializing 'config' +2022-03-22 10:57:54.811 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 10:57:54.811 [lua]-[trace] Initializing 'plugin' +2022-03-22 10:57:54.812 [lua]-[trace] Initializing 'uiloader' +2022-03-22 10:57:54.813 [lua]-[trace] Initializing 'stringify_slk' +2022-03-22 10:57:54.814 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-22 10:57:54.815 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-22 10:57:54.816 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-22 10:57:54.816 [lua]-[trace] Initializing 'lni-c' +2022-03-22 10:57:54.818 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-22 10:57:54.820 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-22 10:57:54.820 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-22 10:57:54.820 [lua]-[trace] Initializing 'w3xparser' +2022-03-22 10:57:54.823 [lua]-[trace] Initializing 'check_object' +2022-03-22 10:57:54.850 [lua]-[trace] Initializing 'ffi.storm' +2022-03-22 10:57:54.850 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-22 10:57:54.850 [lua]-[trace] Initializing 'ffi.gui' +2022-03-22 10:57:54.852 [event]-[trace] RegisterEvent id: 7 +2022-03-22 10:57:54.852 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-22 10:57:54.853 [event]-[trace] RegisterEvent id: 5 +2022-03-22 10:57:54.853 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-22 10:57:54.854 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-22 10:57:54.856 [lua]-[trace] Initializing 'compile.wave' +2022-03-22 10:57:54.857 [lua]-[trace] Initializing 'compile.template' +2022-03-22 10:57:54.858 [lua]-[trace] Initializing 'compile.cjass' +2022-03-22 10:57:54.858 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-22 10:57:54.858 [lua]-[trace] Initializing 'mpq_util' +2022-03-22 10:57:54.860 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-22 10:57:54.861 [lua]-[trace] Initializing 'compile.native' +2022-03-22 10:57:54.862 [event]-[trace] RegisterEvent id: 3 +2022-03-22 10:57:54.862 [event]-[trace] RegisterEvent id: 2 +2022-03-22 10:57:54.862 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-22 10:57:54.863 [lua]-[trace] Initializing 'w3x2lni' +2022-03-22 10:57:54.875 [lua]-[trace] Initializing 'utility' +2022-03-22 10:57:54.875 [lua]-[trace] Initializing 'mapdump' +2022-03-22 10:57:54.875 [event]-[trace] RegisterEvent id: 4 +2022-03-22 10:57:54.875 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-22 10:57:54.876 [event]-[trace] RegisterEvent id: 0 +2022-03-22 10:57:54.877 [event]-[trace] RegisterEvent id: 1 +2022-03-22 10:57:54.877 [event]-[trace] RegisterEvent id: 6 +2022-03-22 10:57:54.877 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-22 10:57:55. 20 [event]-[trace] RegisterEvent id: 8 +2022-03-22 10:57:55. 20 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-22 10:57:55. 21 [event]-[trace] RegisterEvent id: 9 +2022-03-22 10:57:55. 21 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-22 10:57:55. 25 [event]-[info ] Entering main program. +2022-03-22 10:57:55. 25 [event]-[debug] Command line: +2022-03-22 10:57:55. 28 [lua]-[debug] ********************* on startup start ********************* +2022-03-22 10:57:55.107 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-22 10:57:55.107 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-22 10:57:55.107 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 10:57:55.107 [lua]-[trace] check_conflicting_ui +2022-03-22 10:57:55.118 [lua]-[trace] check_conflicting_units +2022-03-22 10:57:55.120 [lua]-[trace] clear_potential_conflicting +2022-03-22 10:57:55.120 [lua]-[trace] check_war3_version +2022-03-22 10:57:55.154 [lua]-[error] Cannot find war3.mpq +2022-03-22 10:57:55.204 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-22 10:57:55.247 [lua]-[debug] Tesh loaded successfully. +2022-03-22 10:57:55.371 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-22 10:57:55.373 [lua]-[debug] YDClient loaded successfully. +2022-03-22 10:57:55.374 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-22 10:57:55.375 [lua]-[warn ] failed: disable +2022-03-22 10:57:55.376 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-22 10:57:55.377 [lua]-[warn ] failed: disable +2022-03-22 10:57:55.378 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-22 10:57:55.378 [lua]-[warn ] failed: disable +2022-03-22 10:57:55.378 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-22 10:57:55.468 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-22 10:57:55.476 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-22 10:57:55.478 [lua]-[debug] YDTrigger loaded successfully. +2022-03-22 10:57:55.478 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-22 10:57:55.480 [inject]-[debug] Start installing inline hooks. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-22 10:57:55.481 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-22 10:57:55.481 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-22 10:57:55.481 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-22 10:57:55.481 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-22 10:57:55.481 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-22 10:57:55.481 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-22 10:57:55.481 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-22 10:57:55.481 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-22 10:57:55.481 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-22 10:57:55.481 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-22 10:57:55.481 [inject]-[debug] Installing inline hooks complete. +2022-03-22 10:57:55.481 [inject]-[debug] IAT hook initialization started. +2022-03-22 10:57:55.481 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-22 10:57:55.481 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-22 10:57:55.481 [inject]-[debug] IAT hook initialization completed. +2022-03-22 10:57:55.481 [inject]-[debug] Patches initialization started. +2022-03-22 10:57:55.481 [inject]-[trace] Installing syntax check patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing auto disable patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing enable trigger check patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-22 10:57:55.481 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing doodad limit patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing unit/item limit patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing editor multi-instance patch +2022-03-22 10:57:55.481 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-22 10:57:55.481 [inject]-[trace] Installing attack table patch +2022-03-22 10:57:55.481 [inject]-[debug] Patches initialization completed. +2022-03-22 10:57:55.481 [inject]-[info ] YDWE startup complete. +2022-03-22 10:57:55.481 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-22 10:57:55.482 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-22 10:57:55.496 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-22 10:57:55.497 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-22 10:57:55.584 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-22 10:57:55.587 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-22 10:57:55.590 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-22 10:57:55.591 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-22 10:57:55.591 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-22 10:57:55.592 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-22 10:57:55.594 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-22 10:57:55.629 [lua]-[trace] Scanned file: 99 +2022-03-22 10:57:55.631 [lua]-[debug] ********************* on startup end ********************* +2022-03-22 10:57:56.553 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-22 10:57:56.586 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-22 10:57:56.726 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-22 10:57:56.897 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-22 10:57:56.927 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-22 10:57:56.953 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-22 10:57:56.983 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-22 10:57:57. 13 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-22 10:57:59.982 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-22 10:57:59.982 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-22 10:58:04.953 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-22 10:58:04.953 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-22 10:58:04.953 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-22 10:58:05.304 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-22 10:58:05.328 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-22 10:58:05.438 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-22 10:58:56.896 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:58:57.958 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:58:57.962 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:58:58.902 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:58:59.967 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:59:00.255 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:59:01. 61 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:59:01. 66 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:59:03.428 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 10:59:08.344 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-22 10:59:08.344 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-22 10:59:08.344 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-22 10:59:08.549 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-22 10:59:08.567 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-22 10:59:08.675 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-22 13:04:57.462 [event]-[trace] WE is about to compile maps. +2022-03-22 13:04:59.843 [lua]-[debug] ********************* on save start ********************* +2022-03-22 13:04:59.864 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:04:59.864 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 13:04:59.864 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 13:04:59.864 [lua]-[trace] mpq_util.update_file. +2022-03-22 13:04:59.879 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 13:04:59.879 [lua]-[trace] Processing file.out +2022-03-22 13:04:59.890 [lua]-[trace] Writing code to file.out +2022-03-22 13:04:59.891 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 13:04:59.899 [lua]-[trace] Injection completed +2022-03-22 13:04:59.899 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 13:04:59.907 [lua]-[trace] Injection completed +2022-03-22 13:04:59.907 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 13:04:59.907 [lua]-[trace] Injection completed +2022-03-22 13:04:59.907 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 13:04:59.908 [lua]-[trace] Injection completed +2022-03-22 13:04:59.908 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 13:04:59.908 [lua]-[trace] Injection completed +2022-03-22 13:04:59.908 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 13:04:59.921 [lua]-[trace] Injection completed +2022-03-22 13:04:59.921 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 13:04:59.927 [lua]-[trace] Injection completed +2022-03-22 13:04:59.927 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 13:04:59.927 [lua]-[trace] Injection completed +2022-03-22 13:04:59.927 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 13:04:59.928 [lua]-[trace] Injection completed +2022-03-22 13:04:59.928 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 13:04:59.929 [lua]-[trace] Injection completed +2022-03-22 13:04:59.929 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 13:04:59.930 [lua]-[trace] Injection completed +2022-03-22 13:04:59.930 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 13:04:59.930 [lua]-[trace] Injection completed +2022-03-22 13:04:59.930 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 13:04:59.931 [lua]-[trace] Injection completed +2022-03-22 13:04:59.931 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 13:04:59.931 [lua]-[trace] Injection completed +2022-03-22 13:04:59.931 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 13:04:59.932 [lua]-[trace] Injection completed +2022-03-22 13:04:59.932 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 13:04:59.932 [lua]-[trace] Injection completed +2022-03-22 13:04:59.932 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 13:04:59.941 [lua]-[trace] Injection completed +2022-03-22 13:04:59.941 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 13:04:59.941 [lua]-[trace] Injection completed +2022-03-22 13:04:59.941 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 13:04:59.942 [lua]-[trace] Injection completed +2022-03-22 13:04:59.942 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 13:04:59.942 [lua]-[trace] Injection completed +2022-03-22 13:04:59.942 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 13:04:59.942 [lua]-[trace] Injection completed +2022-03-22 13:04:59.943 [lua]-[trace] Wave compilation start. +2022-03-22 13:05:00.365 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 13:05:02. 51 [lua]-[trace] Template compilation start. +2022-03-22 13:05:02.113 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-22 13:05:02.124 [lua]-[trace] Initializing 'computed.order_list' +2022-03-22 13:05:02.126 [lua]-[trace] Initializing 'computed.order_id' +2022-03-22 13:05:02.138 [lua]-[trace] Initializing 'slk' +2022-03-22 13:05:02.325 [lua]-[trace] Initializing 'archive' +2022-03-22 13:05:02.325 [lua]-[trace] Initializing 'archive_mpq' +2022-03-22 13:05:02.326 [lua]-[trace] Initializing 'archive_dir' +2022-03-22 13:05:02.327 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-22 13:05:02.327 [lua]-[trace] Initializing 'progress' +2022-03-22 13:05:02.328 [lua]-[trace] Initializing 'slk.frontend' +2022-03-22 13:05:02.329 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-22 13:05:02.329 [lua]-[trace] Initializing 'lpeg' +2022-03-22 13:05:02.371 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-22 13:05:02.575 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-22 13:05:02.599 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-22 13:05:02.787 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-22 13:05:02.895 [lua]-[debug] Template compilation succeeded. +2022-03-22 13:05:02.928 [lua]-[trace] JassHelper compilation start. +2022-03-22 13:05:06.453 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-22 13:05:06.454 [lua]-[debug] Result false +2022-03-22 13:05:06.454 [lua]-[debug] ********************* on save end ********************* +2022-03-22 13:06:36.149 [event]-[trace] WE is about to compile maps. +2022-03-22 13:06:38.428 [lua]-[debug] ********************* on save start ********************* +2022-03-22 13:06:38.429 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:06:38.429 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 13:06:38.429 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 13:06:38.429 [lua]-[trace] mpq_util.update_file. +2022-03-22 13:06:38.431 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 13:06:38.431 [lua]-[trace] Processing file.out +2022-03-22 13:06:38.443 [lua]-[trace] Writing code to file.out +2022-03-22 13:06:38.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 13:06:38.444 [lua]-[trace] Injection completed +2022-03-22 13:06:38.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 13:06:38.444 [lua]-[trace] Injection completed +2022-03-22 13:06:38.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 13:06:38.444 [lua]-[trace] Injection completed +2022-03-22 13:06:38.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 13:06:38.444 [lua]-[trace] Injection completed +2022-03-22 13:06:38.444 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 13:06:38.445 [lua]-[trace] Injection completed +2022-03-22 13:06:38.445 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 13:06:38.446 [lua]-[trace] Injection completed +2022-03-22 13:06:38.446 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 13:06:38.447 [lua]-[trace] Injection completed +2022-03-22 13:06:38.447 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 13:06:38.447 [lua]-[trace] Injection completed +2022-03-22 13:06:38.447 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 13:06:38.447 [lua]-[trace] Injection completed +2022-03-22 13:06:38.447 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 13:06:38.447 [lua]-[trace] Injection completed +2022-03-22 13:06:38.447 [lua]-[trace] Wave compilation start. +2022-03-22 13:06:38.752 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 13:06:40.144 [lua]-[trace] Template compilation start. +2022-03-22 13:06:40.207 [lua]-[trace] Initializing 'slk' +2022-03-22 13:06:40.645 [lua]-[debug] Template compilation succeeded. +2022-03-22 13:06:40.677 [lua]-[trace] JassHelper compilation start. +2022-03-22 13:06:44.219 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 13:06:44.219 [lua]-[debug] Result true +2022-03-22 13:06:44.219 [lua]-[debug] ********************* on save end ********************* +2022-03-22 13:06:46.265 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:06:46.265 [event]-[trace] No need to compile. +2022-03-22 13:06:46.265 [lua]-[debug] ********************* on test start ********************* +2022-03-22 13:06:46.265 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:06:46.265 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:06:46.265 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:06:46.265 [lua]-[debug] Testing 0 +2022-03-22 13:06:46.487 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 13:06:46.487 [lua]-[debug] ********************* on test end ********************* +2022-03-22 13:10:55.699 [event]-[trace] WE is about to compile maps. +2022-03-22 13:10:58. 90 [lua]-[debug] ********************* on save start ********************* +2022-03-22 13:10:58. 91 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:10:58. 91 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 13:10:58. 91 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 13:10:58. 91 [lua]-[trace] mpq_util.update_file. +2022-03-22 13:10:58. 93 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 13:10:58. 93 [lua]-[trace] Processing file.out +2022-03-22 13:10:58.105 [lua]-[trace] Writing code to file.out +2022-03-22 13:10:58.105 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 13:10:58.105 [lua]-[trace] Injection completed +2022-03-22 13:10:58.105 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 13:10:58.105 [lua]-[trace] Injection completed +2022-03-22 13:10:58.105 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 13:10:58.105 [lua]-[trace] Injection completed +2022-03-22 13:10:58.105 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 13:10:58.106 [lua]-[trace] Injection completed +2022-03-22 13:10:58.106 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 13:10:58.107 [lua]-[trace] Injection completed +2022-03-22 13:10:58.107 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 13:10:58.108 [lua]-[trace] Injection completed +2022-03-22 13:10:58.108 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 13:10:58.108 [lua]-[trace] Injection completed +2022-03-22 13:10:58.108 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 13:10:58.108 [lua]-[trace] Injection completed +2022-03-22 13:10:58.108 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 13:10:58.108 [lua]-[trace] Injection completed +2022-03-22 13:10:58.108 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 13:10:58.108 [lua]-[trace] Injection completed +2022-03-22 13:10:58.108 [lua]-[trace] Wave compilation start. +2022-03-22 13:10:58.411 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 13:10:59.810 [lua]-[trace] Template compilation start. +2022-03-22 13:10:59.873 [lua]-[trace] Initializing 'slk' +2022-03-22 13:11:00.317 [lua]-[debug] Template compilation succeeded. +2022-03-22 13:11:00.350 [lua]-[trace] JassHelper compilation start. +2022-03-22 13:11:04. 57 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 13:11:04. 58 [lua]-[debug] Result true +2022-03-22 13:11:04. 58 [lua]-[debug] ********************* on save end ********************* +2022-03-22 13:11:11.145 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:11:11.145 [event]-[trace] No need to compile. +2022-03-22 13:11:11.145 [lua]-[debug] ********************* on test start ********************* +2022-03-22 13:11:11.145 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:11:11.145 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:11:11.145 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 13:11:11.145 [lua]-[debug] Testing 0 +2022-03-22 13:11:11.202 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 13:11:11.202 [lua]-[debug] ********************* on test end ********************* +2022-03-22 13:36:11.213 [event]-[trace] WE is about to compile maps. +2022-03-22 13:36:13.535 [lua]-[debug] ********************* on save start ********************* +2022-03-22 13:36:13.535 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 13:36:13.535 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 13:36:13.535 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 13:36:13.535 [lua]-[trace] mpq_util.update_file. +2022-03-22 13:36:13.542 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 13:36:13.542 [lua]-[trace] Processing file.out +2022-03-22 13:36:13.636 [lua]-[trace] Writing code to file.out +2022-03-22 13:36:13.636 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 13:36:13.637 [lua]-[trace] Injection completed +2022-03-22 13:36:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 13:36:13.637 [lua]-[trace] Injection completed +2022-03-22 13:36:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 13:36:13.637 [lua]-[trace] Injection completed +2022-03-22 13:36:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 13:36:13.637 [lua]-[trace] Injection completed +2022-03-22 13:36:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 13:36:13.637 [lua]-[trace] Injection completed +2022-03-22 13:36:13.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 13:36:13.658 [lua]-[trace] Injection completed +2022-03-22 13:36:13.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 13:36:13.658 [lua]-[trace] Injection completed +2022-03-22 13:36:13.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 13:36:13.658 [lua]-[trace] Injection completed +2022-03-22 13:36:13.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 13:36:13.658 [lua]-[trace] Injection completed +2022-03-22 13:36:13.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 13:36:13.659 [lua]-[trace] Injection completed +2022-03-22 13:36:13.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 13:36:13.660 [lua]-[trace] Injection completed +2022-03-22 13:36:13.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 13:36:13.660 [lua]-[trace] Injection completed +2022-03-22 13:36:13.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 13:36:13.661 [lua]-[trace] Injection completed +2022-03-22 13:36:13.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 13:36:13.661 [lua]-[trace] Injection completed +2022-03-22 13:36:13.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 13:36:13.661 [lua]-[trace] Injection completed +2022-03-22 13:36:13.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 13:36:13.661 [lua]-[trace] Injection completed +2022-03-22 13:36:13.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 13:36:13.661 [lua]-[trace] Injection completed +2022-03-22 13:36:13.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 13:36:13.666 [lua]-[trace] Injection completed +2022-03-22 13:36:13.666 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 13:36:13.666 [lua]-[trace] Injection completed +2022-03-22 13:36:13.666 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 13:36:13.667 [lua]-[trace] Injection completed +2022-03-22 13:36:13.667 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 13:36:13.667 [lua]-[trace] Injection completed +2022-03-22 13:36:13.667 [lua]-[trace] Wave compilation start. +2022-03-22 13:36:13.998 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 13:36:15.385 [lua]-[trace] Template compilation start. +2022-03-22 13:36:15.434 [lua]-[trace] Initializing 'slk' +2022-03-22 13:36:15.922 [lua]-[debug] Template compilation succeeded. +2022-03-22 13:36:15.945 [lua]-[trace] JassHelper compilation start. +2022-03-22 13:36:19.704 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 13:36:19.705 [lua]-[debug] Result true +2022-03-22 13:36:19.705 [lua]-[debug] ********************* on save end ********************* +2022-03-22 14:10:48.799 [event]-[trace] WE is about to compile maps. +2022-03-22 14:10:50.997 [lua]-[debug] ********************* on save start ********************* +2022-03-22 14:10:50.998 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:10:50.998 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 14:10:50.998 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 14:10:50.998 [lua]-[trace] mpq_util.update_file. +2022-03-22 14:10:51. 4 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 14:10:51. 4 [lua]-[trace] Processing file.out +2022-03-22 14:10:51. 95 [lua]-[trace] Writing code to file.out +2022-03-22 14:10:51. 96 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 14:10:51. 96 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 96 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 14:10:51. 96 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 96 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 14:10:51. 96 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 96 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 14:10:51. 97 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 97 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 14:10:51. 98 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 98 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 14:10:51. 99 [lua]-[trace] Injection completed +2022-03-22 14:10:51. 99 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 14:10:51.100 [lua]-[trace] Injection completed +2022-03-22 14:10:51.100 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 14:10:51.100 [lua]-[trace] Injection completed +2022-03-22 14:10:51.100 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 14:10:51.100 [lua]-[trace] Injection completed +2022-03-22 14:10:51.100 [lua]-[trace] Wave compilation start. +2022-03-22 14:10:51.408 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 14:10:52.787 [lua]-[trace] Template compilation start. +2022-03-22 14:10:52.833 [lua]-[trace] Initializing 'slk' +2022-03-22 14:10:53.336 [lua]-[debug] Template compilation succeeded. +2022-03-22 14:10:53.360 [lua]-[trace] JassHelper compilation start. +2022-03-22 14:10:57.116 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 14:10:57.117 [lua]-[debug] Result true +2022-03-22 14:10:57.117 [lua]-[debug] ********************* on save end ********************* +2022-03-22 14:21:20.987 [event]-[trace] WE is about to compile maps. +2022-03-22 14:21:23.307 [lua]-[debug] ********************* on save start ********************* +2022-03-22 14:21:23.307 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:21:23.307 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 14:21:23.307 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 14:21:23.307 [lua]-[trace] mpq_util.update_file. +2022-03-22 14:21:23.309 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 14:21:23.309 [lua]-[trace] Processing file.out +2022-03-22 14:21:23.321 [lua]-[trace] Writing code to file.out +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 14:21:23.322 [lua]-[trace] Injection completed +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 14:21:23.322 [lua]-[trace] Injection completed +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 14:21:23.322 [lua]-[trace] Injection completed +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 14:21:23.322 [lua]-[trace] Injection completed +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 14:21:23.322 [lua]-[trace] Injection completed +2022-03-22 14:21:23.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 14:21:23.323 [lua]-[trace] Injection completed +2022-03-22 14:21:23.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 14:21:23.324 [lua]-[trace] Injection completed +2022-03-22 14:21:23.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 14:21:23.325 [lua]-[trace] Injection completed +2022-03-22 14:21:23.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 14:21:23.325 [lua]-[trace] Injection completed +2022-03-22 14:21:23.325 [lua]-[trace] Wave compilation start. +2022-03-22 14:21:23.626 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 14:21:25. 26 [lua]-[trace] Template compilation start. +2022-03-22 14:21:25. 95 [lua]-[trace] Initializing 'slk' +2022-03-22 14:21:25.524 [lua]-[debug] Template compilation succeeded. +2022-03-22 14:21:25.556 [lua]-[trace] JassHelper compilation start. +2022-03-22 14:21:28.881 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 14:21:28.881 [lua]-[debug] Result true +2022-03-22 14:21:28.881 [lua]-[debug] ********************* on save end ********************* +2022-03-22 14:21:43.654 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:21:43.654 [event]-[trace] No need to compile. +2022-03-22 14:21:43.654 [lua]-[debug] ********************* on test start ********************* +2022-03-22 14:21:43.654 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:21:43.654 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:21:43.654 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:21:43.655 [lua]-[debug] Testing 0 +2022-03-22 14:21:43.778 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 14:21:43.778 [lua]-[debug] ********************* on test end ********************* +2022-03-22 14:27:41.965 [event]-[trace] WE is about to compile maps. +2022-03-22 14:27:44.187 [lua]-[debug] ********************* on save start ********************* +2022-03-22 14:27:44.188 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:27:44.188 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 14:27:44.188 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 14:27:44.188 [lua]-[trace] mpq_util.update_file. +2022-03-22 14:27:44.190 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 14:27:44.190 [lua]-[trace] Processing file.out +2022-03-22 14:27:44.201 [lua]-[trace] Writing code to file.out +2022-03-22 14:27:44.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 14:27:44.202 [lua]-[trace] Injection completed +2022-03-22 14:27:44.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 14:27:44.202 [lua]-[trace] Injection completed +2022-03-22 14:27:44.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 14:27:44.202 [lua]-[trace] Injection completed +2022-03-22 14:27:44.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 14:27:44.202 [lua]-[trace] Injection completed +2022-03-22 14:27:44.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 14:27:44.203 [lua]-[trace] Injection completed +2022-03-22 14:27:44.203 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 14:27:44.204 [lua]-[trace] Injection completed +2022-03-22 14:27:44.204 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 14:27:44.205 [lua]-[trace] Injection completed +2022-03-22 14:27:44.205 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 14:27:44.205 [lua]-[trace] Injection completed +2022-03-22 14:27:44.205 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 14:27:44.205 [lua]-[trace] Injection completed +2022-03-22 14:27:44.205 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 14:27:44.205 [lua]-[trace] Injection completed +2022-03-22 14:27:44.205 [lua]-[trace] Wave compilation start. +2022-03-22 14:27:44.512 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 14:27:45.938 [lua]-[trace] Template compilation start. +2022-03-22 14:27:46. 7 [lua]-[trace] Initializing 'slk' +2022-03-22 14:27:46.510 [lua]-[debug] Template compilation succeeded. +2022-03-22 14:27:46.543 [lua]-[trace] JassHelper compilation start. +2022-03-22 14:27:50.213 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 14:27:50.214 [lua]-[debug] Result true +2022-03-22 14:27:50.214 [lua]-[debug] ********************* on save end ********************* +2022-03-22 14:31:07.973 [event]-[trace] WE is about to compile maps. +2022-03-22 14:31:10.184 [lua]-[debug] ********************* on save start ********************* +2022-03-22 14:31:10.185 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:31:10.185 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 14:31:10.185 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 14:31:10.185 [lua]-[trace] mpq_util.update_file. +2022-03-22 14:31:10.187 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 14:31:10.187 [lua]-[trace] Processing file.out +2022-03-22 14:31:10.198 [lua]-[trace] Writing code to file.out +2022-03-22 14:31:10.199 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 14:31:10.199 [lua]-[trace] Injection completed +2022-03-22 14:31:10.199 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 14:31:10.199 [lua]-[trace] Injection completed +2022-03-22 14:31:10.199 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 14:31:10.199 [lua]-[trace] Injection completed +2022-03-22 14:31:10.199 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 14:31:10.199 [lua]-[trace] Injection completed +2022-03-22 14:31:10.199 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 14:31:10.200 [lua]-[trace] Injection completed +2022-03-22 14:31:10.200 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 14:31:10.201 [lua]-[trace] Injection completed +2022-03-22 14:31:10.201 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 14:31:10.202 [lua]-[trace] Injection completed +2022-03-22 14:31:10.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 14:31:10.202 [lua]-[trace] Injection completed +2022-03-22 14:31:10.202 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 14:31:10.202 [lua]-[trace] Injection completed +2022-03-22 14:31:10.202 [lua]-[trace] Wave compilation start. +2022-03-22 14:31:10.501 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 14:31:11.926 [lua]-[trace] Template compilation start. +2022-03-22 14:31:11.988 [lua]-[trace] Initializing 'slk' +2022-03-22 14:31:12.420 [lua]-[debug] Template compilation succeeded. +2022-03-22 14:31:12.454 [lua]-[trace] JassHelper compilation start. +2022-03-22 14:31:15.793 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 14:31:15.793 [lua]-[debug] Result true +2022-03-22 14:31:15.793 [lua]-[debug] ********************* on save end ********************* +2022-03-22 14:31:30.148 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:31:30.148 [event]-[trace] No need to compile. +2022-03-22 14:31:30.148 [lua]-[debug] ********************* on test start ********************* +2022-03-22 14:31:30.148 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 14:31:30.148 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:31:30.148 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 14:31:30.148 [lua]-[debug] Testing 0 +2022-03-22 14:31:30.201 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 14:31:30.201 [lua]-[debug] ********************* on test end ********************* +2022-03-22 15:11:23. 50 [event]-[trace] WE is about to compile maps. +2022-03-22 15:11:25.456 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:11:25.487 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:11:25.487 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:11:25.489 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:11:25.489 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:11:25.496 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:11:25.496 [lua]-[trace] Processing file.out +2022-03-22 15:11:25.527 [lua]-[trace] Writing code to file.out +2022-03-22 15:11:25.527 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:11:25.534 [lua]-[trace] Injection completed +2022-03-22 15:11:25.534 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:11:25.542 [lua]-[trace] Injection completed +2022-03-22 15:11:25.542 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:11:25.542 [lua]-[trace] Injection completed +2022-03-22 15:11:25.542 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:11:25.543 [lua]-[trace] Injection completed +2022-03-22 15:11:25.543 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:11:25.544 [lua]-[trace] Injection completed +2022-03-22 15:11:25.544 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:11:25.544 [lua]-[trace] Injection completed +2022-03-22 15:11:25.544 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:11:25.553 [lua]-[trace] Injection completed +2022-03-22 15:11:25.553 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:11:25.554 [lua]-[trace] Injection completed +2022-03-22 15:11:25.554 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:11:25.555 [lua]-[trace] Injection completed +2022-03-22 15:11:25.555 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:11:25.555 [lua]-[trace] Injection completed +2022-03-22 15:11:25.555 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:11:25.557 [lua]-[trace] Injection completed +2022-03-22 15:11:25.557 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:11:25.558 [lua]-[trace] Injection completed +2022-03-22 15:11:25.558 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:11:25.558 [lua]-[trace] Injection completed +2022-03-22 15:11:25.558 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:11:25.559 [lua]-[trace] Injection completed +2022-03-22 15:11:25.559 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:11:25.559 [lua]-[trace] Injection completed +2022-03-22 15:11:25.559 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:11:25.560 [lua]-[trace] Injection completed +2022-03-22 15:11:25.560 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:11:25.578 [lua]-[trace] Injection completed +2022-03-22 15:11:25.578 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:11:25.579 [lua]-[trace] Injection completed +2022-03-22 15:11:25.579 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:11:25.579 [lua]-[trace] Injection completed +2022-03-22 15:11:25.579 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:11:25.580 [lua]-[trace] Injection completed +2022-03-22 15:11:25.580 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:11:25.581 [lua]-[trace] Injection completed +2022-03-22 15:11:25.581 [lua]-[trace] Wave compilation start. +2022-03-22 15:11:25.979 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:11:27.593 [lua]-[trace] Template compilation start. +2022-03-22 15:11:27.835 [lua]-[trace] Initializing 'slk' +2022-03-22 15:11:29.423 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:11:29.456 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:11:31.406 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-22 15:11:31.407 [lua]-[debug] Result false +2022-03-22 15:11:31.407 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:15:36. 99 [event]-[trace] WE is about to compile maps. +2022-03-22 15:15:38.668 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:15:38.669 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:15:38.669 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:15:38.669 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:15:38.669 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:15:38.672 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:15:38.672 [lua]-[trace] Processing file.out +2022-03-22 15:15:38.685 [lua]-[trace] Writing code to file.out +2022-03-22 15:15:38.686 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:15:38.686 [lua]-[trace] Injection completed +2022-03-22 15:15:38.686 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:15:38.686 [lua]-[trace] Injection completed +2022-03-22 15:15:38.686 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:15:38.686 [lua]-[trace] Injection completed +2022-03-22 15:15:38.686 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:15:38.686 [lua]-[trace] Injection completed +2022-03-22 15:15:38.686 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:15:38.686 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:15:38.687 [lua]-[trace] Injection completed +2022-03-22 15:15:38.687 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:15:38.688 [lua]-[trace] Injection completed +2022-03-22 15:15:38.688 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:15:38.689 [lua]-[trace] Injection completed +2022-03-22 15:15:38.689 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:15:38.689 [lua]-[trace] Injection completed +2022-03-22 15:15:38.689 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:15:38.689 [lua]-[trace] Injection completed +2022-03-22 15:15:38.689 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:15:38.689 [lua]-[trace] Injection completed +2022-03-22 15:15:38.689 [lua]-[trace] Wave compilation start. +2022-03-22 15:15:39. 46 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:15:40.544 [lua]-[trace] Template compilation start. +2022-03-22 15:15:40.607 [lua]-[trace] Initializing 'slk' +2022-03-22 15:15:41.180 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:15:41.215 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:15:45.354 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 15:15:45.356 [lua]-[debug] Result true +2022-03-22 15:15:45.356 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:15:48.164 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:15:48.164 [event]-[trace] No need to compile. +2022-03-22 15:15:48.164 [lua]-[debug] ********************* on test start ********************* +2022-03-22 15:15:48.165 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:15:48.165 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:15:48.165 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:15:48.165 [lua]-[debug] Testing 0 +2022-03-22 15:15:48.279 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 15:15:48.279 [lua]-[debug] ********************* on test end ********************* +2022-03-22 15:25:06.733 [event]-[trace] WE is about to compile maps. +2022-03-22 15:25:08.967 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:25:08.993 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:25:09. 23 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:25:09. 23 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:25:09. 23 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:25:09. 24 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:25:09. 24 [lua]-[trace] Processing file.out +2022-03-22 15:25:09. 40 [lua]-[trace] Writing code to file.out +2022-03-22 15:25:09. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:25:09. 64 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 64 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:25:09. 80 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 80 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:25:09. 81 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 81 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:25:09. 86 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 86 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:25:09. 89 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 90 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:25:09. 94 [lua]-[trace] Injection completed +2022-03-22 15:25:09. 94 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:25:09.101 [lua]-[trace] Injection completed +2022-03-22 15:25:09.101 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:25:09.105 [lua]-[trace] Injection completed +2022-03-22 15:25:09.105 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:25:09.109 [lua]-[trace] Injection completed +2022-03-22 15:25:09.109 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:25:09.110 [lua]-[trace] Injection completed +2022-03-22 15:25:09.110 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:25:09.112 [lua]-[trace] Injection completed +2022-03-22 15:25:09.113 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:25:09.113 [lua]-[trace] Injection completed +2022-03-22 15:25:09.113 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:25:09.113 [lua]-[trace] Injection completed +2022-03-22 15:25:09.113 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:25:09.114 [lua]-[trace] Injection completed +2022-03-22 15:25:09.114 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:25:09.114 [lua]-[trace] Injection completed +2022-03-22 15:25:09.114 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:25:09.115 [lua]-[trace] Injection completed +2022-03-22 15:25:09.115 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:25:09.158 [lua]-[trace] Injection completed +2022-03-22 15:25:09.158 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:25:09.159 [lua]-[trace] Injection completed +2022-03-22 15:25:09.159 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:25:09.159 [lua]-[trace] Injection completed +2022-03-22 15:25:09.159 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:25:09.160 [lua]-[trace] Injection completed +2022-03-22 15:25:09.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:25:09.160 [lua]-[trace] Injection completed +2022-03-22 15:25:09.160 [lua]-[trace] Wave compilation start. +2022-03-22 15:25:09.510 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:25:11.273 [lua]-[trace] Template compilation start. +2022-03-22 15:25:11.567 [lua]-[trace] Initializing 'slk' +2022-03-22 15:25:12.131 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:25:12.163 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:25:13.618 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-22 15:25:13.620 [lua]-[debug] Result false +2022-03-22 15:25:13.620 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:25:44.947 [event]-[trace] WE is about to compile maps. +2022-03-22 15:25:47.161 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:25:47.162 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:25:47.162 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:25:47.162 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:25:47.162 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:25:47.164 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:25:47.164 [lua]-[trace] Processing file.out +2022-03-22 15:25:47.176 [lua]-[trace] Writing code to file.out +2022-03-22 15:25:47.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:25:47.177 [lua]-[trace] Injection completed +2022-03-22 15:25:47.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:25:47.177 [lua]-[trace] Injection completed +2022-03-22 15:25:47.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:25:47.177 [lua]-[trace] Injection completed +2022-03-22 15:25:47.177 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:25:47.177 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:25:47.178 [lua]-[trace] Injection completed +2022-03-22 15:25:47.178 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:25:47.179 [lua]-[trace] Injection completed +2022-03-22 15:25:47.179 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:25:47.180 [lua]-[trace] Injection completed +2022-03-22 15:25:47.180 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:25:47.180 [lua]-[trace] Injection completed +2022-03-22 15:25:47.180 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:25:47.180 [lua]-[trace] Injection completed +2022-03-22 15:25:47.180 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:25:47.180 [lua]-[trace] Injection completed +2022-03-22 15:25:47.180 [lua]-[trace] Wave compilation start. +2022-03-22 15:25:47.490 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:25:48.903 [lua]-[trace] Template compilation start. +2022-03-22 15:25:48.969 [lua]-[trace] Initializing 'slk' +2022-03-22 15:25:49.430 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:25:49.463 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:25:53.106 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 15:25:53.107 [lua]-[debug] Result true +2022-03-22 15:25:53.107 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:25:54.555 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:25:54.555 [event]-[trace] No need to compile. +2022-03-22 15:25:54.555 [lua]-[debug] ********************* on test start ********************* +2022-03-22 15:25:54.555 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:25:54.555 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:25:54.555 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:25:54.555 [lua]-[debug] Testing 0 +2022-03-22 15:25:54.656 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 15:25:54.656 [lua]-[debug] ********************* on test end ********************* +2022-03-22 15:31:58.680 [event]-[trace] WE is about to compile maps. +2022-03-22 15:32:01. 16 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:32:01. 17 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:32:01. 17 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:32:01. 17 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:32:01. 17 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:32:01. 20 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:32:01. 20 [lua]-[trace] Processing file.out +2022-03-22 15:32:01. 34 [lua]-[trace] Writing code to file.out +2022-03-22 15:32:01. 34 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:32:01. 35 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 35 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:32:01. 35 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 35 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:32:01. 35 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 35 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:32:01. 36 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 36 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:32:01. 36 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 36 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:32:01. 36 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 36 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:32:01. 36 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 36 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:32:01. 37 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:32:01. 37 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:32:01. 37 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:32:01. 37 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:32:01. 37 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:32:01. 38 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:32:01. 38 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:32:01. 38 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:32:01. 38 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:32:01. 39 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:32:01. 39 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:32:01. 39 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:32:01. 39 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:32:01. 39 [lua]-[trace] Injection completed +2022-03-22 15:32:01. 39 [lua]-[trace] Wave compilation start. +2022-03-22 15:32:01.354 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:32:02.805 [lua]-[trace] Template compilation start. +2022-03-22 15:32:02.929 [lua]-[trace] Initializing 'slk' +2022-03-22 15:32:03.355 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:32:03.514 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:32:05.772 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-22 15:32:05.772 [lua]-[debug] Result false +2022-03-22 15:32:05.772 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:32:34.588 [event]-[trace] WE is about to compile maps. +2022-03-22 15:32:36.919 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:32:36.919 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:32:36.919 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:32:36.919 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:32:36.919 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:32:36.921 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:32:36.921 [lua]-[trace] Processing file.out +2022-03-22 15:32:36.933 [lua]-[trace] Writing code to file.out +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:32:36.934 [lua]-[trace] Injection completed +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:32:36.934 [lua]-[trace] Injection completed +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:32:36.934 [lua]-[trace] Injection completed +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:32:36.934 [lua]-[trace] Injection completed +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:32:36.934 [lua]-[trace] Injection completed +2022-03-22 15:32:36.934 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:32:36.935 [lua]-[trace] Injection completed +2022-03-22 15:32:36.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:32:36.936 [lua]-[trace] Injection completed +2022-03-22 15:32:36.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:32:36.937 [lua]-[trace] Injection completed +2022-03-22 15:32:36.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:32:36.937 [lua]-[trace] Injection completed +2022-03-22 15:32:36.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:32:36.937 [lua]-[trace] Injection completed +2022-03-22 15:32:36.937 [lua]-[trace] Wave compilation start. +2022-03-22 15:32:37.245 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:32:38.685 [lua]-[trace] Template compilation start. +2022-03-22 15:32:38.747 [lua]-[trace] Initializing 'slk' +2022-03-22 15:32:39.187 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:32:39.221 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:32:41.862 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 1 +2022-03-22 15:32:41.862 [lua]-[debug] Result false +2022-03-22 15:32:41.862 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:33:16.742 [event]-[trace] WE is about to compile maps. +2022-03-22 15:33:19.145 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:33:19.146 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:33:19.146 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:33:19.146 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:33:19.146 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:33:19.148 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:33:19.148 [lua]-[trace] Processing file.out +2022-03-22 15:33:19.160 [lua]-[trace] Writing code to file.out +2022-03-22 15:33:19.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:33:19.160 [lua]-[trace] Injection completed +2022-03-22 15:33:19.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:33:19.160 [lua]-[trace] Injection completed +2022-03-22 15:33:19.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:33:19.160 [lua]-[trace] Injection completed +2022-03-22 15:33:19.160 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.161 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:33:19.161 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:33:19.162 [lua]-[trace] Injection completed +2022-03-22 15:33:19.162 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:33:19.163 [lua]-[trace] Injection completed +2022-03-22 15:33:19.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:33:19.163 [lua]-[trace] Injection completed +2022-03-22 15:33:19.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:33:19.163 [lua]-[trace] Injection completed +2022-03-22 15:33:19.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:33:19.163 [lua]-[trace] Injection completed +2022-03-22 15:33:19.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:33:19.163 [lua]-[trace] Injection completed +2022-03-22 15:33:19.163 [lua]-[trace] Wave compilation start. +2022-03-22 15:33:19.470 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:33:20.890 [lua]-[trace] Template compilation start. +2022-03-22 15:33:20.955 [lua]-[trace] Initializing 'slk' +2022-03-22 15:33:21.461 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:33:21.495 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:33:25.118 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 15:33:25.119 [lua]-[debug] Result true +2022-03-22 15:33:25.119 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:45:23.113 [event]-[trace] WE is about to compile maps. +2022-03-22 15:45:25.539 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:45:25.539 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:45:25.539 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:45:25.539 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:45:25.539 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:45:25.546 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:45:25.546 [lua]-[trace] Processing file.out +2022-03-22 15:45:25.639 [lua]-[trace] Writing code to file.out +2022-03-22 15:45:25.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:45:25.639 [lua]-[trace] Injection completed +2022-03-22 15:45:25.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:45:25.639 [lua]-[trace] Injection completed +2022-03-22 15:45:25.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:45:25.639 [lua]-[trace] Injection completed +2022-03-22 15:45:25.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:45:25.640 [lua]-[trace] Injection completed +2022-03-22 15:45:25.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:45:25.640 [lua]-[trace] Injection completed +2022-03-22 15:45:25.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 15:45:25.659 [lua]-[trace] Injection completed +2022-03-22 15:45:25.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:45:25.659 [lua]-[trace] Injection completed +2022-03-22 15:45:25.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:45:25.659 [lua]-[trace] Injection completed +2022-03-22 15:45:25.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:45:25.659 [lua]-[trace] Injection completed +2022-03-22 15:45:25.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 15:45:25.659 [lua]-[trace] Injection completed +2022-03-22 15:45:25.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:45:25.660 [lua]-[trace] Injection completed +2022-03-22 15:45:25.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 15:45:25.661 [lua]-[trace] Injection completed +2022-03-22 15:45:25.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:45:25.661 [lua]-[trace] Injection completed +2022-03-22 15:45:25.661 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:45:25.662 [lua]-[trace] Injection completed +2022-03-22 15:45:25.662 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:45:25.662 [lua]-[trace] Injection completed +2022-03-22 15:45:25.662 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:45:25.662 [lua]-[trace] Injection completed +2022-03-22 15:45:25.662 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:45:25.662 [lua]-[trace] Injection completed +2022-03-22 15:45:25.662 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 15:45:25.667 [lua]-[trace] Injection completed +2022-03-22 15:45:25.667 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:45:25.667 [lua]-[trace] Injection completed +2022-03-22 15:45:25.667 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 15:45:25.667 [lua]-[trace] Injection completed +2022-03-22 15:45:25.667 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:45:25.668 [lua]-[trace] Injection completed +2022-03-22 15:45:25.668 [lua]-[trace] Wave compilation start. +2022-03-22 15:45:25.993 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:45:27.400 [lua]-[trace] Template compilation start. +2022-03-22 15:45:27.448 [lua]-[trace] Initializing 'slk' +2022-03-22 15:45:27.887 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:45:27.916 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:45:31.570 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 15:45:31.570 [lua]-[debug] Result true +2022-03-22 15:45:31.570 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:45:40.365 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:45:40.365 [event]-[trace] No need to compile. +2022-03-22 15:45:40.366 [lua]-[debug] ********************* on test start ********************* +2022-03-22 15:45:40.366 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:45:40.366 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:45:40.366 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 15:45:40.366 [lua]-[debug] Testing 0 +2022-03-22 15:45:40.421 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 15:45:40.421 [lua]-[debug] ********************* on test end ********************* +2022-03-22 15:48:30.764 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.802 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.803 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.849 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.916 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.926 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.981 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:30.982 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:48:31.139 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-22 15:50:22.791 [event]-[trace] WE is about to compile maps. +2022-03-22 15:50:25.176 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:50:25.176 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:50:25.176 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x +2022-03-22 15:50:25.176 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:50:25.176 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:50:25.183 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.7.w3x +2022-03-22 15:50:25.183 [lua]-[trace] Processing file.out +2022-03-22 15:50:25.276 [lua]-[trace] Writing code to file.out +2022-03-22 15:50:25.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:50:25.276 [lua]-[trace] Injection completed +2022-03-22 15:50:25.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:50:25.276 [lua]-[trace] Injection completed +2022-03-22 15:50:25.276 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.277 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:50:25.277 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:50:25.278 [lua]-[trace] Injection completed +2022-03-22 15:50:25.278 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.279 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:50:25.279 [lua]-[trace] Injection completed +2022-03-22 15:50:25.280 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 15:50:25.280 [lua]-[trace] Injection completed +2022-03-22 15:50:25.280 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:50:25.280 [lua]-[trace] Injection completed +2022-03-22 15:50:25.280 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 15:50:25.280 [lua]-[trace] Injection completed +2022-03-22 15:50:25.280 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:50:25.280 [lua]-[trace] Injection completed +2022-03-22 15:50:25.280 [lua]-[trace] Wave compilation start. +2022-03-22 15:50:25.594 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:50:27. 14 [lua]-[trace] Template compilation start. +2022-03-22 15:50:27. 69 [lua]-[trace] Initializing 'slk' +2022-03-22 15:50:27.595 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:50:27.621 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:50:31.313 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.7.w3x", returned 0 +2022-03-22 15:50:31.314 [lua]-[debug] Result true +2022-03-22 15:50:31.314 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:50:56.496 [event]-[trace] WE is about to compile maps. +2022-03-22 15:50:58.719 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:50:58.720 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:50:58.720 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 15:50:58.720 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:50:58.720 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:50:58.727 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 15:50:58.727 [lua]-[trace] Processing file.out +2022-03-22 15:50:58.818 [lua]-[trace] Writing code to file.out +2022-03-22 15:50:58.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 15:50:58.818 [lua]-[trace] Injection completed +2022-03-22 15:50:58.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 15:50:58.818 [lua]-[trace] Injection completed +2022-03-22 15:50:58.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 15:50:58.819 [lua]-[trace] Injection completed +2022-03-22 15:50:58.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 15:50:58.819 [lua]-[trace] Injection completed +2022-03-22 15:50:58.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 15:50:58.819 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 15:50:58.820 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 15:50:58.820 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 15:50:58.820 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 15:50:58.820 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 15:50:58.820 [lua]-[trace] Injection completed +2022-03-22 15:50:58.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 15:50:58.821 [lua]-[trace] Injection completed +2022-03-22 15:50:58.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 15:50:58.822 [lua]-[trace] Injection completed +2022-03-22 15:50:58.822 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 15:50:58.823 [lua]-[trace] Injection completed +2022-03-22 15:50:58.823 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 15:50:58.823 [lua]-[trace] Injection completed +2022-03-22 15:50:58.823 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 15:50:58.823 [lua]-[trace] Injection completed +2022-03-22 15:50:58.823 [lua]-[trace] Wave compilation start. +2022-03-22 15:50:59.137 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:51:00.551 [lua]-[trace] Template compilation start. +2022-03-22 15:51:00.599 [lua]-[trace] Initializing 'slk' +2022-03-22 15:51:01. 34 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:51:01. 60 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:51:04.768 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 15:51:04.769 [lua]-[debug] Result true +2022-03-22 15:51:04.769 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:55:28.330 [event]-[trace] WE is about to compile maps. +2022-03-22 15:55:28.414 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:55:28.414 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:55:28.414 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-22 15:55:28.414 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:55:28.414 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:55:28.416 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-22 15:55:28.416 [lua]-[trace] Processing file.out +2022-03-22 15:55:28.426 [lua]-[trace] Writing code to file.out +2022-03-22 15:55:28.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:55:28.427 [lua]-[trace] Injection completed +2022-03-22 15:55:28.427 [lua]-[trace] Wave compilation start. +2022-03-22 15:55:28.747 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:55:29.913 [lua]-[trace] Template compilation start. +2022-03-22 15:55:29.920 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:55:29.954 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:55:32. 86 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 1 +2022-03-22 15:55:32. 87 [lua]-[debug] Result false +2022-03-22 15:55:32. 87 [lua]-[debug] ********************* on save end ********************* +2022-03-22 15:57:51. 76 [event]-[trace] WE is about to compile maps. +2022-03-22 15:57:51.145 [lua]-[debug] ********************* on save start ********************* +2022-03-22 15:57:51.146 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 15:57:51.146 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-22 15:57:51.146 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 15:57:51.146 [lua]-[trace] mpq_util.update_file. +2022-03-22 15:57:51.148 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-22 15:57:51.148 [lua]-[trace] Processing file.out +2022-03-22 15:57:51.159 [lua]-[trace] Writing code to file.out +2022-03-22 15:57:51.159 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 15:57:51.160 [lua]-[trace] Injection completed +2022-03-22 15:57:51.160 [lua]-[trace] Wave compilation start. +2022-03-22 15:57:51.499 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 15:57:52.680 [lua]-[trace] Template compilation start. +2022-03-22 15:57:52.687 [lua]-[debug] Template compilation succeeded. +2022-03-22 15:57:52.723 [lua]-[trace] JassHelper compilation start. +2022-03-22 15:57:55.323 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-22 15:57:55.324 [lua]-[debug] Result true +2022-03-22 15:57:55.324 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:31:48.957 [event]-[trace] WE is about to compile maps. +2022-03-22 16:31:51.256 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:31:51.257 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:31:51.257 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:31:51.257 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:31:51.257 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:31:51.264 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:31:51.264 [lua]-[trace] Processing file.out +2022-03-22 16:31:51.361 [lua]-[trace] Writing code to file.out +2022-03-22 16:31:51.361 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:31:51.361 [lua]-[trace] Injection completed +2022-03-22 16:31:51.361 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:31:51.362 [lua]-[trace] Injection completed +2022-03-22 16:31:51.362 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.363 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:31:51.363 [lua]-[trace] Injection completed +2022-03-22 16:31:51.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:31:51.364 [lua]-[trace] Injection completed +2022-03-22 16:31:51.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:31:51.364 [lua]-[trace] Injection completed +2022-03-22 16:31:51.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:31:51.364 [lua]-[trace] Injection completed +2022-03-22 16:31:51.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:31:51.365 [lua]-[trace] Injection completed +2022-03-22 16:31:51.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:31:51.366 [lua]-[trace] Injection completed +2022-03-22 16:31:51.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:31:51.366 [lua]-[trace] Injection completed +2022-03-22 16:31:51.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:31:51.366 [lua]-[trace] Injection completed +2022-03-22 16:31:51.366 [lua]-[trace] Wave compilation start. +2022-03-22 16:31:51.700 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:31:53.122 [lua]-[trace] Template compilation start. +2022-03-22 16:31:53.170 [lua]-[trace] Initializing 'slk' +2022-03-22 16:31:53.621 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:31:53.647 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:31:57.615 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:31:57.616 [lua]-[debug] Result true +2022-03-22 16:31:57.616 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:31:59.911 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:31:59.911 [event]-[trace] No need to compile. +2022-03-22 16:31:59.911 [lua]-[debug] ********************* on test start ********************* +2022-03-22 16:31:59.911 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:31:59.911 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:31:59.911 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:31:59.911 [lua]-[debug] Testing 0 +2022-03-22 16:31:59.971 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 16:31:59.971 [lua]-[debug] ********************* on test end ********************* +2022-03-22 16:34:33.323 [event]-[trace] WE is about to compile maps. +2022-03-22 16:34:35.696 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:34:35.696 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:34:35.696 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:34:35.696 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:34:35.696 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:34:35.703 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:34:35.703 [lua]-[trace] Processing file.out +2022-03-22 16:34:35.795 [lua]-[trace] Writing code to file.out +2022-03-22 16:34:35.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:34:35.796 [lua]-[trace] Injection completed +2022-03-22 16:34:35.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:34:35.796 [lua]-[trace] Injection completed +2022-03-22 16:34:35.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:34:35.796 [lua]-[trace] Injection completed +2022-03-22 16:34:35.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:34:35.797 [lua]-[trace] Injection completed +2022-03-22 16:34:35.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:34:35.798 [lua]-[trace] Injection completed +2022-03-22 16:34:35.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:34:35.799 [lua]-[trace] Injection completed +2022-03-22 16:34:35.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:34:35.799 [lua]-[trace] Injection completed +2022-03-22 16:34:35.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:34:35.799 [lua]-[trace] Injection completed +2022-03-22 16:34:35.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:34:35.799 [lua]-[trace] Injection completed +2022-03-22 16:34:35.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:34:35.799 [lua]-[trace] Injection completed +2022-03-22 16:34:35.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:34:35.800 [lua]-[trace] Injection completed +2022-03-22 16:34:35.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:34:35.800 [lua]-[trace] Injection completed +2022-03-22 16:34:35.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:34:35.800 [lua]-[trace] Injection completed +2022-03-22 16:34:35.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:34:35.800 [lua]-[trace] Injection completed +2022-03-22 16:34:35.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:34:35.800 [lua]-[trace] Injection completed +2022-03-22 16:34:35.800 [lua]-[trace] Wave compilation start. +2022-03-22 16:34:36.125 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:34:37.546 [lua]-[trace] Template compilation start. +2022-03-22 16:34:37.598 [lua]-[trace] Initializing 'slk' +2022-03-22 16:34:38.127 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:34:38.289 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:34:41.936 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:34:41.937 [lua]-[debug] Result true +2022-03-22 16:34:41.937 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:35:07.305 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:35:07.305 [event]-[trace] No need to compile. +2022-03-22 16:35:07.305 [lua]-[debug] ********************* on test start ********************* +2022-03-22 16:35:07.306 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:35:07.306 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:35:07.306 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:35:07.306 [lua]-[debug] Testing 0 +2022-03-22 16:35:07.360 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 16:35:07.360 [lua]-[debug] ********************* on test end ********************* +2022-03-22 16:37:52.171 [event]-[trace] WE is about to compile maps. +2022-03-22 16:37:54.408 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:37:54.408 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:37:54.408 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:37:54.408 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:37:54.408 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:37:54.415 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:37:54.415 [lua]-[trace] Processing file.out +2022-03-22 16:37:54.509 [lua]-[trace] Writing code to file.out +2022-03-22 16:37:54.509 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:37:54.509 [lua]-[trace] Injection completed +2022-03-22 16:37:54.509 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:37:54.509 [lua]-[trace] Injection completed +2022-03-22 16:37:54.509 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:37:54.510 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:37:54.511 [lua]-[trace] Injection completed +2022-03-22 16:37:54.511 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.512 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:37:54.512 [lua]-[trace] Injection completed +2022-03-22 16:37:54.513 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:37:54.513 [lua]-[trace] Injection completed +2022-03-22 16:37:54.513 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:37:54.513 [lua]-[trace] Injection completed +2022-03-22 16:37:54.513 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:37:54.513 [lua]-[trace] Injection completed +2022-03-22 16:37:54.513 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:37:54.513 [lua]-[trace] Injection completed +2022-03-22 16:37:54.513 [lua]-[trace] Wave compilation start. +2022-03-22 16:37:54.829 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:37:56.251 [lua]-[trace] Template compilation start. +2022-03-22 16:37:56.298 [lua]-[trace] Initializing 'slk' +2022-03-22 16:37:56.764 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:37:56.792 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:38:00.427 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:38:00.428 [lua]-[debug] Result true +2022-03-22 16:38:00.428 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:38:01.938 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:38:01.938 [event]-[trace] No need to compile. +2022-03-22 16:38:01.938 [lua]-[debug] ********************* on test start ********************* +2022-03-22 16:38:01.938 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:38:01.938 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:38:01.938 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:38:01.938 [lua]-[debug] Testing 0 +2022-03-22 16:38:01.995 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 16:38:01.995 [lua]-[debug] ********************* on test end ********************* +2022-03-22 16:41:45.284 [event]-[trace] WE is about to compile maps. +2022-03-22 16:41:47.613 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:41:47.614 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:41:47.614 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:41:47.614 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:41:47.614 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:41:47.621 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:41:47.621 [lua]-[trace] Processing file.out +2022-03-22 16:41:47.713 [lua]-[trace] Writing code to file.out +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:41:47.714 [lua]-[trace] Injection completed +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:41:47.714 [lua]-[trace] Injection completed +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:41:47.714 [lua]-[trace] Injection completed +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:41:47.714 [lua]-[trace] Injection completed +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:41:47.714 [lua]-[trace] Injection completed +2022-03-22 16:41:47.714 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:41:47.715 [lua]-[trace] Injection completed +2022-03-22 16:41:47.715 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:41:47.716 [lua]-[trace] Injection completed +2022-03-22 16:41:47.716 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:41:47.717 [lua]-[trace] Injection completed +2022-03-22 16:41:47.717 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:41:47.718 [lua]-[trace] Injection completed +2022-03-22 16:41:47.718 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:41:47.718 [lua]-[trace] Injection completed +2022-03-22 16:41:47.718 [lua]-[trace] Wave compilation start. +2022-03-22 16:41:48. 32 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:41:49.451 [lua]-[trace] Template compilation start. +2022-03-22 16:41:49.505 [lua]-[trace] Initializing 'slk' +2022-03-22 16:41:50. 16 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:41:50. 41 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:41:53.721 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:41:53.722 [lua]-[debug] Result true +2022-03-22 16:41:53.722 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:42:38.220 [event]-[trace] WE is about to compile maps. +2022-03-22 16:42:40.969 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:42:40.970 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:42:40.970 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:42:40.970 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:42:40.970 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:42:40.977 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:42:40.977 [lua]-[trace] Processing file.out +2022-03-22 16:42:41. 68 [lua]-[trace] Writing code to file.out +2022-03-22 16:42:41. 68 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:42:41. 68 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 68 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:42:41. 68 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 68 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:42:41. 69 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 69 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:42:41. 69 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 69 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:42:41. 69 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 69 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:42:41. 69 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 69 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:42:41. 69 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 69 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:42:41. 70 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 70 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:42:41. 71 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 71 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:42:41. 71 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 71 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:42:41. 71 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 71 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:42:41. 71 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 71 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:42:41. 71 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 71 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:42:41. 72 [lua]-[trace] Injection completed +2022-03-22 16:42:41. 72 [lua]-[trace] Wave compilation start. +2022-03-22 16:42:41.387 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:42:42.788 [lua]-[trace] Template compilation start. +2022-03-22 16:42:42.836 [lua]-[trace] Initializing 'slk' +2022-03-22 16:42:43.275 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:42:43.301 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:42:47.586 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:42:47.587 [lua]-[debug] Result true +2022-03-22 16:42:47.587 [lua]-[debug] ********************* on save end ********************* +2022-03-22 16:42:58.505 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:42:58.505 [event]-[trace] No need to compile. +2022-03-22 16:42:58.505 [lua]-[debug] ********************* on test start ********************* +2022-03-22 16:42:58.506 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:42:58.506 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:42:58.506 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 16:42:58.506 [lua]-[debug] Testing 0 +2022-03-22 16:42:58.561 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 16:42:58.561 [lua]-[debug] ********************* on test end ********************* +2022-03-22 16:43:34.422 [event]-[trace] WE is about to compile maps. +2022-03-22 16:43:36.844 [lua]-[debug] ********************* on save start ********************* +2022-03-22 16:43:36.845 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 16:43:36.845 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 16:43:36.845 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 16:43:36.845 [lua]-[trace] mpq_util.update_file. +2022-03-22 16:43:36.853 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 16:43:36.853 [lua]-[trace] Processing file.out +2022-03-22 16:43:36.954 [lua]-[trace] Writing code to file.out +2022-03-22 16:43:36.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 16:43:36.954 [lua]-[trace] Injection completed +2022-03-22 16:43:36.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 16:43:36.954 [lua]-[trace] Injection completed +2022-03-22 16:43:36.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 16:43:36.955 [lua]-[trace] Injection completed +2022-03-22 16:43:36.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 16:43:36.956 [lua]-[trace] Injection completed +2022-03-22 16:43:36.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 16:43:36.957 [lua]-[trace] Injection completed +2022-03-22 16:43:36.957 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 16:43:36.957 [lua]-[trace] Injection completed +2022-03-22 16:43:36.957 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 16:43:36.957 [lua]-[trace] Injection completed +2022-03-22 16:43:36.957 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 16:43:36.957 [lua]-[trace] Injection completed +2022-03-22 16:43:36.957 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 16:43:36.958 [lua]-[trace] Injection completed +2022-03-22 16:43:36.958 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 16:43:36.959 [lua]-[trace] Injection completed +2022-03-22 16:43:36.959 [lua]-[trace] Wave compilation start. +2022-03-22 16:43:37.279 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 16:43:38.728 [lua]-[trace] Template compilation start. +2022-03-22 16:43:38.779 [lua]-[trace] Initializing 'slk' +2022-03-22 16:43:39.337 [lua]-[debug] Template compilation succeeded. +2022-03-22 16:43:39.362 [lua]-[trace] JassHelper compilation start. +2022-03-22 16:43:43.135 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 16:43:43.136 [lua]-[debug] Result true +2022-03-22 16:43:43.136 [lua]-[debug] ********************* on save end ********************* +2022-03-22 17:34:43.160 [event]-[trace] WE is about to compile maps. +2022-03-22 17:34:45.486 [lua]-[debug] ********************* on save start ********************* +2022-03-22 17:34:45.486 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 17:34:45.486 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 17:34:45.486 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 17:34:45.486 [lua]-[trace] mpq_util.update_file. +2022-03-22 17:34:45.492 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 17:34:45.493 [lua]-[trace] Processing file.out +2022-03-22 17:34:45.586 [lua]-[trace] Writing code to file.out +2022-03-22 17:34:45.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 17:34:45.587 [lua]-[trace] Injection completed +2022-03-22 17:34:45.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 17:34:45.587 [lua]-[trace] Injection completed +2022-03-22 17:34:45.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 17:34:45.587 [lua]-[trace] Injection completed +2022-03-22 17:34:45.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 17:34:45.587 [lua]-[trace] Injection completed +2022-03-22 17:34:45.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 17:34:45.588 [lua]-[trace] Injection completed +2022-03-22 17:34:45.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 17:34:45.589 [lua]-[trace] Injection completed +2022-03-22 17:34:45.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 17:34:45.590 [lua]-[trace] Injection completed +2022-03-22 17:34:45.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 17:34:45.591 [lua]-[trace] Injection completed +2022-03-22 17:34:45.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 17:34:45.591 [lua]-[trace] Injection completed +2022-03-22 17:34:45.591 [lua]-[trace] Wave compilation start. +2022-03-22 17:34:45.914 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 17:34:47.329 [lua]-[trace] Template compilation start. +2022-03-22 17:34:47.378 [lua]-[trace] Initializing 'slk' +2022-03-22 17:34:47.895 [lua]-[debug] Template compilation succeeded. +2022-03-22 17:34:47.921 [lua]-[trace] JassHelper compilation start. +2022-03-22 17:34:51.739 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 17:34:51.740 [lua]-[debug] Result true +2022-03-22 17:34:51.740 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:28:24. 80 [event]-[trace] WE is about to compile maps. +2022-03-22 19:28:26.801 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:28:26.802 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:28:26.802 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:28:26.802 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:28:26.802 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:28:26.809 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:28:26.809 [lua]-[trace] Processing file.out +2022-03-22 19:28:26.901 [lua]-[trace] Writing code to file.out +2022-03-22 19:28:26.901 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:28:26.901 [lua]-[trace] Injection completed +2022-03-22 19:28:26.901 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:28:26.902 [lua]-[trace] Injection completed +2022-03-22 19:28:26.902 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:28:26.902 [lua]-[trace] Injection completed +2022-03-22 19:28:26.902 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:28:26.902 [lua]-[trace] Injection completed +2022-03-22 19:28:26.902 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:28:26.902 [lua]-[trace] Injection completed +2022-03-22 19:28:26.902 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 19:28:26.902 [lua]-[trace] Injection completed +2022-03-22 19:28:26.902 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:28:26.903 [lua]-[trace] Injection completed +2022-03-22 19:28:26.903 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:28:26.903 [lua]-[trace] Injection completed +2022-03-22 19:28:26.903 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:28:26.903 [lua]-[trace] Injection completed +2022-03-22 19:28:26.903 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 19:28:26.903 [lua]-[trace] Injection completed +2022-03-22 19:28:26.903 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:28:26.903 [lua]-[trace] Injection completed +2022-03-22 19:28:26.903 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:28:26.904 [lua]-[trace] Injection completed +2022-03-22 19:28:26.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:28:26.905 [lua]-[trace] Injection completed +2022-03-22 19:28:26.905 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 19:28:26.906 [lua]-[trace] Injection completed +2022-03-22 19:28:26.906 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:28:26.906 [lua]-[trace] Injection completed +2022-03-22 19:28:26.906 [lua]-[trace] Wave compilation start. +2022-03-22 19:28:27.226 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:28:28.625 [lua]-[trace] Template compilation start. +2022-03-22 19:28:28.672 [lua]-[trace] Initializing 'slk' +2022-03-22 19:28:29.112 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:28:29.137 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:28:33. 47 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:28:33. 47 [lua]-[debug] Result true +2022-03-22 19:28:33. 47 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:28:42.166 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:28:42.166 [event]-[trace] No need to compile. +2022-03-22 19:28:42.166 [lua]-[debug] ********************* on test start ********************* +2022-03-22 19:28:42.166 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:28:42.166 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:28:42.166 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:28:42.166 [lua]-[debug] Testing 0 +2022-03-22 19:28:42.303 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 19:28:42.303 [lua]-[debug] ********************* on test end ********************* +2022-03-22 19:31:25.265 [event]-[trace] WE is about to compile maps. +2022-03-22 19:31:27.759 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:31:27.760 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:31:27.760 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:31:27.760 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:31:27.760 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:31:27.767 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:31:27.767 [lua]-[trace] Processing file.out +2022-03-22 19:31:27.867 [lua]-[trace] Writing code to file.out +2022-03-22 19:31:27.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:31:27.867 [lua]-[trace] Injection completed +2022-03-22 19:31:27.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:31:27.867 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:31:27.868 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:31:27.868 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:31:27.868 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 19:31:27.868 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:31:27.868 [lua]-[trace] Injection completed +2022-03-22 19:31:27.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:31:27.869 [lua]-[trace] Injection completed +2022-03-22 19:31:27.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:31:27.870 [lua]-[trace] Injection completed +2022-03-22 19:31:27.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 19:31:27.871 [lua]-[trace] Injection completed +2022-03-22 19:31:27.871 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:31:27.872 [lua]-[trace] Injection completed +2022-03-22 19:31:27.872 [lua]-[trace] Wave compilation start. +2022-03-22 19:31:28.221 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:31:29.732 [lua]-[trace] Template compilation start. +2022-03-22 19:31:29.786 [lua]-[trace] Initializing 'slk' +2022-03-22 19:31:30.332 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:31:30.359 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:31:34.218 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:31:34.218 [lua]-[debug] Result true +2022-03-22 19:31:34.219 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:31:58.193 [event]-[trace] WE is about to compile maps. +2022-03-22 19:32:00.754 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:32:00.754 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:32:00.754 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:32:00.754 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:32:00.754 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:32:00.763 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:32:00.763 [lua]-[trace] Processing file.out +2022-03-22 19:32:00.865 [lua]-[trace] Writing code to file.out +2022-03-22 19:32:00.865 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 19:32:00.866 [lua]-[trace] Injection completed +2022-03-22 19:32:00.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:32:00.867 [lua]-[trace] Injection completed +2022-03-22 19:32:00.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:32:00.868 [lua]-[trace] Injection completed +2022-03-22 19:32:00.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:32:00.869 [lua]-[trace] Injection completed +2022-03-22 19:32:00.869 [lua]-[trace] Wave compilation start. +2022-03-22 19:32:01.225 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:32:02.769 [lua]-[trace] Template compilation start. +2022-03-22 19:32:02.818 [lua]-[trace] Initializing 'slk' +2022-03-22 19:32:03.330 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:32:03.358 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:32:07.219 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:32:07.220 [lua]-[debug] Result true +2022-03-22 19:32:07.220 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:32:20.244 [event]-[trace] WE is about to compile maps. +2022-03-22 19:32:22.711 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:32:22.712 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:32:22.712 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:32:22.712 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:32:22.712 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:32:22.713 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:32:22.714 [lua]-[trace] Processing file.out +2022-03-22 19:32:22.728 [lua]-[trace] Writing code to file.out +2022-03-22 19:32:22.728 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.729 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.729 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.729 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.729 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.729 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:32:22.729 [lua]-[trace] Injection completed +2022-03-22 19:32:22.730 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:32:22.730 [lua]-[trace] Injection completed +2022-03-22 19:32:22.730 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:32:22.731 [lua]-[trace] Injection completed +2022-03-22 19:32:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:32:22.731 [lua]-[trace] Injection completed +2022-03-22 19:32:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:32:22.731 [lua]-[trace] Injection completed +2022-03-22 19:32:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:32:22.731 [lua]-[trace] Injection completed +2022-03-22 19:32:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:32:22.731 [lua]-[trace] Injection completed +2022-03-22 19:32:22.731 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:32:22.732 [lua]-[trace] Injection completed +2022-03-22 19:32:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:32:22.732 [lua]-[trace] Injection completed +2022-03-22 19:32:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:32:22.732 [lua]-[trace] Injection completed +2022-03-22 19:32:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:32:22.732 [lua]-[trace] Injection completed +2022-03-22 19:32:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:32:22.732 [lua]-[trace] Injection completed +2022-03-22 19:32:22.732 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:32:22.733 [lua]-[trace] Injection completed +2022-03-22 19:32:22.733 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:32:22.733 [lua]-[trace] Injection completed +2022-03-22 19:32:22.733 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:32:22.733 [lua]-[trace] Injection completed +2022-03-22 19:32:22.733 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:32:22.733 [lua]-[trace] Injection completed +2022-03-22 19:32:22.733 [lua]-[trace] Wave compilation start. +2022-03-22 19:32:23. 75 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:32:24.618 [lua]-[trace] Template compilation start. +2022-03-22 19:32:24.716 [lua]-[trace] Initializing 'slk' +2022-03-22 19:32:25.174 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:32:25.213 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:32:29.180 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:32:29.181 [lua]-[debug] Result true +2022-03-22 19:32:29.181 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:32:52.443 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:32:52.444 [event]-[trace] No need to compile. +2022-03-22 19:32:52.444 [lua]-[debug] ********************* on test start ********************* +2022-03-22 19:32:52.444 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:32:52.444 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:32:52.444 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:32:52.444 [lua]-[debug] Testing 0 +2022-03-22 19:32:52.505 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 19:32:52.505 [lua]-[debug] ********************* on test end ********************* +2022-03-22 19:38:58.747 [event]-[trace] WE is about to compile maps. +2022-03-22 19:39:01.113 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:39:01.113 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:39:01.113 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:39:01.113 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:39:01.113 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:39:01.115 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:39:01.115 [lua]-[trace] Processing file.out +2022-03-22 19:39:01.127 [lua]-[trace] Writing code to file.out +2022-03-22 19:39:01.128 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:39:01.129 [lua]-[trace] Injection completed +2022-03-22 19:39:01.129 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:39:01.129 [lua]-[trace] Injection completed +2022-03-22 19:39:01.129 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:39:01.129 [lua]-[trace] Injection completed +2022-03-22 19:39:01.129 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:39:01.129 [lua]-[trace] Injection completed +2022-03-22 19:39:01.129 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:39:01.130 [lua]-[trace] Injection completed +2022-03-22 19:39:01.130 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:39:01.131 [lua]-[trace] Injection completed +2022-03-22 19:39:01.131 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:39:01.132 [lua]-[trace] Injection completed +2022-03-22 19:39:01.132 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:39:01.132 [lua]-[trace] Injection completed +2022-03-22 19:39:01.132 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:39:01.132 [lua]-[trace] Injection completed +2022-03-22 19:39:01.132 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:39:01.132 [lua]-[trace] Injection completed +2022-03-22 19:39:01.132 [lua]-[trace] Wave compilation start. +2022-03-22 19:39:01.487 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:39:02.937 [lua]-[trace] Template compilation start. +2022-03-22 19:39:03. 9 [lua]-[trace] Initializing 'slk' +2022-03-22 19:39:03.537 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:39:03.571 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:39:07.741 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:39:07.742 [lua]-[debug] Result true +2022-03-22 19:39:07.742 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:41:16.500 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:41:16.500 [event]-[trace] No need to compile. +2022-03-22 19:41:16.500 [lua]-[debug] ********************* on test start ********************* +2022-03-22 19:41:16.501 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:41:16.501 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:41:16.501 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:41:16.501 [lua]-[debug] Testing 0 +2022-03-22 19:41:16.565 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 19:41:16.565 [lua]-[debug] ********************* on test end ********************* +2022-03-22 19:48:32.683 [event]-[trace] WE is about to compile maps. +2022-03-22 19:48:34.990 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:48:34.991 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:48:34.991 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:48:34.991 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:48:34.991 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:48:34.993 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:48:34.993 [lua]-[trace] Processing file.out +2022-03-22 19:48:35. 5 [lua]-[trace] Writing code to file.out +2022-03-22 19:48:35. 6 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:48:35. 6 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 6 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:48:35. 6 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 6 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:48:35. 6 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 6 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:48:35. 6 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 6 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:48:35. 7 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 7 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:48:35. 7 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 7 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:48:35. 7 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 7 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:48:35. 7 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 7 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:48:35. 7 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 7 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:48:35. 8 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 8 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:48:35. 9 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 9 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:48:35. 9 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 9 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:48:35. 9 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 9 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:48:35. 9 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 9 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:48:35. 9 [lua]-[trace] Injection completed +2022-03-22 19:48:35. 9 [lua]-[trace] Wave compilation start. +2022-03-22 19:48:35.323 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:48:36.752 [lua]-[trace] Template compilation start. +2022-03-22 19:48:36.815 [lua]-[trace] Initializing 'slk' +2022-03-22 19:48:37.279 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:48:37.312 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:48:41. 37 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:48:41. 37 [lua]-[debug] Result true +2022-03-22 19:48:41. 37 [lua]-[debug] ********************* on save end ********************* +2022-03-22 19:49:46.464 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:49:46.464 [event]-[trace] No need to compile. +2022-03-22 19:49:46.464 [lua]-[debug] ********************* on test start ********************* +2022-03-22 19:49:46.465 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:49:46.465 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:49:46.465 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 19:49:46.465 [lua]-[debug] Testing 0 +2022-03-22 19:49:46.522 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 19:49:46.522 [lua]-[debug] ********************* on test end ********************* +2022-03-22 19:53:37.458 [event]-[trace] WE is about to compile maps. +2022-03-22 19:53:39.834 [lua]-[debug] ********************* on save start ********************* +2022-03-22 19:53:39.835 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 19:53:39.835 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 19:53:39.835 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 19:53:39.835 [lua]-[trace] mpq_util.update_file. +2022-03-22 19:53:39.842 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 19:53:39.842 [lua]-[trace] Processing file.out +2022-03-22 19:53:39.934 [lua]-[trace] Writing code to file.out +2022-03-22 19:53:39.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 19:53:39.935 [lua]-[trace] Injection completed +2022-03-22 19:53:39.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 19:53:39.935 [lua]-[trace] Injection completed +2022-03-22 19:53:39.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 19:53:39.935 [lua]-[trace] Injection completed +2022-03-22 19:53:39.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 19:53:39.935 [lua]-[trace] Injection completed +2022-03-22 19:53:39.935 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 19:53:39.936 [lua]-[trace] Injection completed +2022-03-22 19:53:39.936 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 19:53:39.937 [lua]-[trace] Injection completed +2022-03-22 19:53:39.937 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 19:53:39.938 [lua]-[trace] Injection completed +2022-03-22 19:53:39.938 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 19:53:39.938 [lua]-[trace] Injection completed +2022-03-22 19:53:39.938 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 19:53:39.938 [lua]-[trace] Injection completed +2022-03-22 19:53:39.938 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 19:53:39.939 [lua]-[trace] Injection completed +2022-03-22 19:53:39.939 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 19:53:39.939 [lua]-[trace] Injection completed +2022-03-22 19:53:39.939 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 19:53:39.939 [lua]-[trace] Injection completed +2022-03-22 19:53:39.939 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 19:53:39.939 [lua]-[trace] Injection completed +2022-03-22 19:53:39.939 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 19:53:39.940 [lua]-[trace] Injection completed +2022-03-22 19:53:39.940 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 19:53:39.940 [lua]-[trace] Injection completed +2022-03-22 19:53:39.940 [lua]-[trace] Wave compilation start. +2022-03-22 19:53:40.254 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 19:53:41.679 [lua]-[trace] Template compilation start. +2022-03-22 19:53:41.731 [lua]-[trace] Initializing 'slk' +2022-03-22 19:53:42.194 [lua]-[debug] Template compilation succeeded. +2022-03-22 19:53:42.220 [lua]-[trace] JassHelper compilation start. +2022-03-22 19:53:45.901 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 19:53:45.902 [lua]-[debug] Result true +2022-03-22 19:53:45.902 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:02:08.388 [event]-[trace] WE is about to compile maps. +2022-03-22 20:02:10.751 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:02:10.752 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:02:10.752 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:02:10.752 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:02:10.752 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:02:10.759 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:02:10.759 [lua]-[trace] Processing file.out +2022-03-22 20:02:10.851 [lua]-[trace] Writing code to file.out +2022-03-22 20:02:10.853 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:02:10.853 [lua]-[trace] Injection completed +2022-03-22 20:02:10.853 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:02:10.853 [lua]-[trace] Injection completed +2022-03-22 20:02:10.853 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:02:10.853 [lua]-[trace] Injection completed +2022-03-22 20:02:10.853 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:02:10.853 [lua]-[trace] Injection completed +2022-03-22 20:02:10.853 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:02:10.854 [lua]-[trace] Injection completed +2022-03-22 20:02:10.854 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 20:02:10.855 [lua]-[trace] Injection completed +2022-03-22 20:02:10.855 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:02:10.855 [lua]-[trace] Injection completed +2022-03-22 20:02:10.855 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:02:10.855 [lua]-[trace] Injection completed +2022-03-22 20:02:10.855 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:02:10.855 [lua]-[trace] Injection completed +2022-03-22 20:02:10.855 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:02:10.855 [lua]-[trace] Injection completed +2022-03-22 20:02:10.855 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:02:10.857 [lua]-[trace] Injection completed +2022-03-22 20:02:10.857 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 20:02:10.857 [lua]-[trace] Injection completed +2022-03-22 20:02:10.857 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:02:10.857 [lua]-[trace] Injection completed +2022-03-22 20:02:10.857 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 20:02:10.857 [lua]-[trace] Injection completed +2022-03-22 20:02:10.857 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:02:10.857 [lua]-[trace] Injection completed +2022-03-22 20:02:10.857 [lua]-[trace] Wave compilation start. +2022-03-22 20:02:11.184 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:02:12.604 [lua]-[trace] Template compilation start. +2022-03-22 20:02:12.653 [lua]-[trace] Initializing 'slk' +2022-03-22 20:02:13.160 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:02:13.214 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:02:16.568 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 20:02:16.569 [lua]-[debug] Result true +2022-03-22 20:02:16.569 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:12:18.917 [event]-[trace] WE is about to compile maps. +2022-03-22 20:12:21.236 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:12:21.237 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:12:21.237 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:12:21.237 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:12:21.237 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:12:21.243 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:12:21.243 [lua]-[trace] Processing file.out +2022-03-22 20:12:21.334 [lua]-[trace] Writing code to file.out +2022-03-22 20:12:21.334 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:12:21.334 [lua]-[trace] Injection completed +2022-03-22 20:12:21.334 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:12:21.334 [lua]-[trace] Injection completed +2022-03-22 20:12:21.334 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:12:21.335 [lua]-[trace] Injection completed +2022-03-22 20:12:21.335 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:12:21.336 [lua]-[trace] Injection completed +2022-03-22 20:12:21.336 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:12:21.337 [lua]-[trace] Injection completed +2022-03-22 20:12:21.337 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 20:12:21.337 [lua]-[trace] Injection completed +2022-03-22 20:12:21.337 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:12:21.337 [lua]-[trace] Injection completed +2022-03-22 20:12:21.337 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:12:21.337 [lua]-[trace] Injection completed +2022-03-22 20:12:21.337 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:12:21.337 [lua]-[trace] Injection completed +2022-03-22 20:12:21.337 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:12:21.338 [lua]-[trace] Injection completed +2022-03-22 20:12:21.338 [lua]-[trace] Wave compilation start. +2022-03-22 20:12:21.648 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:12:23. 54 [lua]-[trace] Template compilation start. +2022-03-22 20:12:23.101 [lua]-[trace] Initializing 'slk' +2022-03-22 20:12:23.533 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:12:23.559 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:12:26.770 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 1 +2022-03-22 20:12:26.771 [lua]-[debug] Result false +2022-03-22 20:12:26.771 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:17:00.245 [event]-[trace] WE is about to compile maps. +2022-03-22 20:17:02.641 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:17:02.642 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:17:02.642 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:17:02.642 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:17:02.642 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:17:02.644 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:17:02.644 [lua]-[trace] Processing file.out +2022-03-22 20:17:02.656 [lua]-[trace] Writing code to file.out +2022-03-22 20:17:02.657 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:17:02.657 [lua]-[trace] Injection completed +2022-03-22 20:17:02.657 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:17:02.657 [lua]-[trace] Injection completed +2022-03-22 20:17:02.657 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:17:02.657 [lua]-[trace] Injection completed +2022-03-22 20:17:02.657 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:17:02.657 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:17:02.658 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:17:02.658 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:17:02.658 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:17:02.658 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:17:02.658 [lua]-[trace] Injection completed +2022-03-22 20:17:02.658 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:17:02.659 [lua]-[trace] Injection completed +2022-03-22 20:17:02.659 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:17:02.660 [lua]-[trace] Injection completed +2022-03-22 20:17:02.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:17:02.660 [lua]-[trace] Injection completed +2022-03-22 20:17:02.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:17:02.660 [lua]-[trace] Injection completed +2022-03-22 20:17:02.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:17:02.660 [lua]-[trace] Injection completed +2022-03-22 20:17:02.660 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:17:02.660 [lua]-[trace] Injection completed +2022-03-22 20:17:02.660 [lua]-[trace] Wave compilation start. +2022-03-22 20:17:02.974 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:17:04.479 [lua]-[trace] Template compilation start. +2022-03-22 20:17:04.549 [lua]-[trace] Initializing 'slk' +2022-03-22 20:17:05. 63 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:17:05. 99 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:17:07.891 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 1 +2022-03-22 20:17:07.891 [lua]-[debug] Result false +2022-03-22 20:17:07.891 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:19:11.704 [event]-[trace] WE is about to compile maps. +2022-03-22 20:19:13.967 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:19:13.967 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:19:13.967 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:19:13.967 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:19:13.967 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:19:13.969 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:19:13.969 [lua]-[trace] Processing file.out +2022-03-22 20:19:13.981 [lua]-[trace] Writing code to file.out +2022-03-22 20:19:13.981 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:19:13.981 [lua]-[trace] Injection completed +2022-03-22 20:19:13.981 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:19:13.982 [lua]-[trace] Injection completed +2022-03-22 20:19:13.982 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:19:13.983 [lua]-[trace] Injection completed +2022-03-22 20:19:13.983 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.984 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:19:13.984 [lua]-[trace] Injection completed +2022-03-22 20:19:13.985 [lua]-[trace] Wave compilation start. +2022-03-22 20:19:14.295 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:19:15.712 [lua]-[trace] Template compilation start. +2022-03-22 20:19:15.774 [lua]-[trace] Initializing 'slk' +2022-03-22 20:19:16.211 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:19:16.245 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:19:19.905 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 20:19:19.906 [lua]-[debug] Result true +2022-03-22 20:19:19.906 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:22:53.935 [event]-[trace] WE is about to compile maps. +2022-03-22 20:22:56.362 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:22:56.363 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:22:56.363 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:22:56.363 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:22:56.363 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:22:56.369 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:22:56.369 [lua]-[trace] Processing file.out +2022-03-22 20:22:56.461 [lua]-[trace] Writing code to file.out +2022-03-22 20:22:56.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:22:56.461 [lua]-[trace] Injection completed +2022-03-22 20:22:56.461 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:22:56.462 [lua]-[trace] Injection completed +2022-03-22 20:22:56.462 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:22:56.463 [lua]-[trace] Injection completed +2022-03-22 20:22:56.463 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:22:56.464 [lua]-[trace] Injection completed +2022-03-22 20:22:56.464 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:22:56.465 [lua]-[trace] Injection completed +2022-03-22 20:22:56.465 [lua]-[trace] Wave compilation start. +2022-03-22 20:22:56.774 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:22:58.178 [lua]-[trace] Template compilation start. +2022-03-22 20:22:58.227 [lua]-[trace] Initializing 'slk' +2022-03-22 20:22:58.693 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:22:58.718 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:23:02.317 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 20:23:02.317 [lua]-[debug] Result true +2022-03-22 20:23:02.317 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:25:00.187 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:25:00.187 [event]-[trace] No need to compile. +2022-03-22 20:25:00.187 [lua]-[debug] ********************* on test start ********************* +2022-03-22 20:25:00.187 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:25:00.187 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:25:00.187 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:25:00.187 [lua]-[debug] Testing 0 +2022-03-22 20:25:00.244 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 20:25:00.244 [lua]-[debug] ********************* on test end ********************* +2022-03-22 20:33:20.645 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:33:20.645 [event]-[trace] No need to compile. +2022-03-22 20:33:20.645 [lua]-[debug] ********************* on test start ********************* +2022-03-22 20:33:20.646 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:33:20.646 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:33:20.646 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:33:20.646 [lua]-[debug] Testing 0 +2022-03-22 20:33:20.705 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 20:33:20.705 [lua]-[debug] ********************* on test end ********************* +2022-03-22 20:57:37. 91 [event]-[trace] WE is about to compile maps. +2022-03-22 20:57:39.407 [lua]-[debug] ********************* on save start ********************* +2022-03-22 20:57:39.407 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:57:39.407 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 20:57:39.407 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 20:57:39.407 [lua]-[trace] mpq_util.update_file. +2022-03-22 20:57:39.409 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 20:57:39.409 [lua]-[trace] Processing file.out +2022-03-22 20:57:39.421 [lua]-[trace] Writing code to file.out +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 20:57:39.422 [lua]-[trace] Injection completed +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 20:57:39.422 [lua]-[trace] Injection completed +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 20:57:39.422 [lua]-[trace] Injection completed +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 20:57:39.422 [lua]-[trace] Injection completed +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 20:57:39.422 [lua]-[trace] Injection completed +2022-03-22 20:57:39.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 20:57:39.423 [lua]-[trace] Injection completed +2022-03-22 20:57:39.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 20:57:39.424 [lua]-[trace] Injection completed +2022-03-22 20:57:39.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 20:57:39.425 [lua]-[trace] Injection completed +2022-03-22 20:57:39.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 20:57:39.425 [lua]-[trace] Injection completed +2022-03-22 20:57:39.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 20:57:39.425 [lua]-[trace] Injection completed +2022-03-22 20:57:39.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 20:57:39.425 [lua]-[trace] Injection completed +2022-03-22 20:57:39.425 [lua]-[trace] Wave compilation start. +2022-03-22 20:57:39.736 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 20:57:41.192 [lua]-[trace] Template compilation start. +2022-03-22 20:57:41.256 [lua]-[trace] Initializing 'slk' +2022-03-22 20:57:41.816 [lua]-[debug] Template compilation succeeded. +2022-03-22 20:57:41.850 [lua]-[trace] JassHelper compilation start. +2022-03-22 20:57:45.289 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 20:57:45.289 [lua]-[debug] Result true +2022-03-22 20:57:45.289 [lua]-[debug] ********************* on save end ********************* +2022-03-22 20:58:32.636 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:58:32.636 [event]-[trace] No need to compile. +2022-03-22 20:58:32.636 [lua]-[debug] ********************* on test start ********************* +2022-03-22 20:58:32.636 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 20:58:32.636 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:58:32.636 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 20:58:32.636 [lua]-[debug] Testing 0 +2022-03-22 20:58:32.695 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 20:58:32.695 [lua]-[debug] ********************* on test end ********************* +2022-03-22 21:01:06.115 [event]-[trace] WE is about to compile maps. +2022-03-22 21:01:08.402 [lua]-[debug] ********************* on save start ********************* +2022-03-22 21:01:08.403 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 21:01:08.403 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-22 21:01:08.403 [lua]-[trace] Save version 1.27.0.52240 +2022-03-22 21:01:08.403 [lua]-[trace] mpq_util.update_file. +2022-03-22 21:01:08.405 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-22 21:01:08.405 [lua]-[trace] Processing file.out +2022-03-22 21:01:08.416 [lua]-[trace] Writing code to file.out +2022-03-22 21:01:08.416 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-22 21:01:08.417 [lua]-[trace] Injection completed +2022-03-22 21:01:08.417 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-22 21:01:08.418 [lua]-[trace] Injection completed +2022-03-22 21:01:08.418 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-22 21:01:08.419 [lua]-[trace] Injection completed +2022-03-22 21:01:08.419 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-22 21:01:08.420 [lua]-[trace] Injection completed +2022-03-22 21:01:08.420 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-22 21:01:08.420 [lua]-[trace] Injection completed +2022-03-22 21:01:08.420 [lua]-[trace] Wave compilation start. +2022-03-22 21:01:08.738 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-22 21:01:10.208 [lua]-[trace] Template compilation start. +2022-03-22 21:01:10.271 [lua]-[trace] Initializing 'slk' +2022-03-22 21:01:10.734 [lua]-[debug] Template compilation succeeded. +2022-03-22 21:01:10.769 [lua]-[trace] JassHelper compilation start. +2022-03-22 21:01:14. 97 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-22 21:01:14. 98 [lua]-[debug] Result true +2022-03-22 21:01:14. 98 [lua]-[debug] ********************* on save end ********************* +2022-03-22 21:01:38.733 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 21:01:38.733 [event]-[trace] No need to compile. +2022-03-22 21:01:38.733 [lua]-[debug] ********************* on test start ********************* +2022-03-22 21:01:38.734 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-22 21:01:38.734 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-22 21:01:38.734 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-22 21:01:38.734 [lua]-[debug] Testing 0 +2022-03-22 21:01:38.790 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-22 21:01:38.790 [lua]-[debug] ********************* on test end ********************* +2022-03-23 01:45:52.886 [lua]-[debug] ********************* on exit start ********************* +2022-03-23 01:45:52.888 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-23 01:45:52.888 [lua]-[trace] Unload plugin Tesh. +2022-03-23 01:45:52.959 [lua]-[trace] Unload plugin YDTrigger. +2022-03-23 01:45:52.965 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-23 01:45:52.965 [inject]-[debug] IAT hook cleanup started. +2022-03-23 01:45:52.966 [inject]-[trace] WE IAT hook cleaned. +2022-03-23 01:45:52.966 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-23 01:45:52.966 [inject]-[debug] IAT hook cleanup completed. +2022-03-23 01:45:52.966 [inject]-[debug] Inline hook uninstallation begins! +2022-03-23 01:45:52.966 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-23 01:45:52.966 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-23 01:45:52.966 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-23 01:45:52.966 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-23 01:45:52.966 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-23 01:45:52.966 [inject]-[debug] Inline hook uninstallation finished! +2022-03-23 01:45:52.968 [lua]-[trace] Unload plugin YDClient. +2022-03-23 01:45:52.968 [lua]-[debug] ********************* on exit end ********************* +2022-03-23 01:45:52.968 [event]-[info ] Main program exit. +2022-03-23 01:45:54.745 [root]-[info ] Script engine has been shut down. +2022-03-23 10:11:10.191 [root]-[info ] ------------------------------------------------------ +2022-03-23 10:11:10.203 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-23 10:11:10.203 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-23 10:11:10.203 [root]-[info ] Windows version: 10.0.19041 +2022-03-23 10:11:10.205 [root]-[debug] Initialize script engine successfully. +2022-03-23 10:11:10.205 [root]-[info ] Script engine startup complete. +2022-03-23 10:11:10.206 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-23 10:11:10.206 [lua]-[trace] Initializing 'sys' +2022-03-23 10:11:10.208 [lua]-[trace] Initializing 'filesystem' +2022-03-23 10:11:10.210 [lua]-[trace] Initializing 'gui' +2022-03-23 10:11:10.212 [lua]-[trace] Initializing 'util' +2022-03-23 10:11:10.213 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-23 10:11:10.213 [lua]-[trace] Initializing 'ffi' +2022-03-23 10:11:10.215 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-23 10:11:10.215 [lua]-[trace] Initializing 'event' +2022-03-23 10:11:10.233 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-23 10:11:10.269 [lua]-[trace] Initializing 'registry' +2022-03-23 10:11:10.270 [lua]-[trace] Initializing 'version' +2022-03-23 10:11:10.271 [lua]-[trace] Initializing 'localization' +2022-03-23 10:11:10.271 [lua]-[trace] Initializing 'i18n' +2022-03-23 10:11:10.274 [lua]-[trace] Initializing 'config' +2022-03-23 10:11:10.275 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 10:11:10.275 [lua]-[trace] Initializing 'plugin' +2022-03-23 10:11:10.276 [lua]-[trace] Initializing 'uiloader' +2022-03-23 10:11:10.277 [lua]-[trace] Initializing 'stringify_slk' +2022-03-23 10:11:10.278 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-23 10:11:10.279 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-23 10:11:10.280 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-23 10:11:10.280 [lua]-[trace] Initializing 'lni-c' +2022-03-23 10:11:10.282 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-23 10:11:10.283 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-23 10:11:10.283 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-23 10:11:10.284 [lua]-[trace] Initializing 'w3xparser' +2022-03-23 10:11:10.295 [lua]-[trace] Initializing 'check_object' +2022-03-23 10:11:10.296 [lua]-[trace] Initializing 'ffi.storm' +2022-03-23 10:11:10.297 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-23 10:11:10.298 [lua]-[trace] Initializing 'ffi.gui' +2022-03-23 10:11:10.299 [event]-[trace] RegisterEvent id: 7 +2022-03-23 10:11:10.299 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-23 10:11:10.300 [event]-[trace] RegisterEvent id: 5 +2022-03-23 10:11:10.300 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-23 10:11:10.301 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-23 10:11:10.303 [lua]-[trace] Initializing 'compile.wave' +2022-03-23 10:11:10.304 [lua]-[trace] Initializing 'compile.template' +2022-03-23 10:11:10.305 [lua]-[trace] Initializing 'compile.cjass' +2022-03-23 10:11:10.306 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-23 10:11:10.307 [lua]-[trace] Initializing 'mpq_util' +2022-03-23 10:11:10.308 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-23 10:11:10.309 [lua]-[trace] Initializing 'compile.native' +2022-03-23 10:11:10.310 [event]-[trace] RegisterEvent id: 3 +2022-03-23 10:11:10.310 [event]-[trace] RegisterEvent id: 2 +2022-03-23 10:11:10.310 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-23 10:11:10.310 [lua]-[trace] Initializing 'w3x2lni' +2022-03-23 10:11:10.311 [lua]-[trace] Initializing 'utility' +2022-03-23 10:11:10.313 [lua]-[trace] Initializing 'mapdump' +2022-03-23 10:11:10.314 [event]-[trace] RegisterEvent id: 4 +2022-03-23 10:11:10.314 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-23 10:11:10.315 [event]-[trace] RegisterEvent id: 0 +2022-03-23 10:11:10.315 [event]-[trace] RegisterEvent id: 1 +2022-03-23 10:11:10.315 [event]-[trace] RegisterEvent id: 6 +2022-03-23 10:11:10.315 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-23 10:11:10.464 [event]-[trace] RegisterEvent id: 8 +2022-03-23 10:11:10.464 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-23 10:11:10.465 [event]-[trace] RegisterEvent id: 9 +2022-03-23 10:11:10.465 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-23 10:11:10.469 [event]-[info ] Entering main program. +2022-03-23 10:11:10.469 [event]-[debug] Command line: +2022-03-23 10:11:10.472 [lua]-[debug] ********************* on startup start ********************* +2022-03-23 10:11:10.538 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-23 10:11:10.538 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-23 10:11:10.538 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 10:11:10.538 [lua]-[trace] check_conflicting_ui +2022-03-23 10:11:10.549 [lua]-[trace] check_conflicting_units +2022-03-23 10:11:10.550 [lua]-[trace] clear_potential_conflicting +2022-03-23 10:11:10.551 [lua]-[trace] check_war3_version +2022-03-23 10:11:10.584 [lua]-[error] Cannot find war3.mpq +2022-03-23 10:11:10.592 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-23 10:11:10.644 [lua]-[debug] Tesh loaded successfully. +2022-03-23 10:11:10.687 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-23 10:11:10.688 [lua]-[debug] YDClient loaded successfully. +2022-03-23 10:11:10.689 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-23 10:11:10.690 [lua]-[warn ] failed: disable +2022-03-23 10:11:10.690 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-23 10:11:10.691 [lua]-[warn ] failed: disable +2022-03-23 10:11:10.691 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-23 10:11:10.691 [lua]-[warn ] failed: disable +2022-03-23 10:11:10.692 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-23 10:11:10.781 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-23 10:11:10.810 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-23 10:11:10.813 [lua]-[debug] YDTrigger loaded successfully. +2022-03-23 10:11:10.813 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-23 10:11:10.814 [inject]-[debug] Start installing inline hooks. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-23 10:11:10.815 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-23 10:11:10.815 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-23 10:11:10.815 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-23 10:11:10.815 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-23 10:11:10.815 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-23 10:11:10.815 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-23 10:11:10.815 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-23 10:11:10.815 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-23 10:11:10.815 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-23 10:11:10.815 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-23 10:11:10.815 [inject]-[debug] Installing inline hooks complete. +2022-03-23 10:11:10.815 [inject]-[debug] IAT hook initialization started. +2022-03-23 10:11:10.815 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-23 10:11:10.815 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-23 10:11:10.815 [inject]-[debug] IAT hook initialization completed. +2022-03-23 10:11:10.815 [inject]-[debug] Patches initialization started. +2022-03-23 10:11:10.815 [inject]-[trace] Installing syntax check patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing auto disable patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing enable trigger check patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-23 10:11:10.815 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing doodad limit patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing unit/item limit patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing editor multi-instance patch +2022-03-23 10:11:10.815 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-23 10:11:10.815 [inject]-[trace] Installing attack table patch +2022-03-23 10:11:10.815 [inject]-[debug] Patches initialization completed. +2022-03-23 10:11:10.815 [inject]-[info ] YDWE startup complete. +2022-03-23 10:11:10.815 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-23 10:11:10.816 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-23 10:11:10.816 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-23 10:11:10.816 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-23 10:11:10.867 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-23 10:11:10.870 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-23 10:11:10.873 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-23 10:11:10.875 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-23 10:11:10.875 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-23 10:11:10.875 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-23 10:11:10.875 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-23 10:11:10.889 [lua]-[trace] Scanned file: 99 +2022-03-23 10:11:10.891 [lua]-[debug] ********************* on startup end ********************* +2022-03-23 10:11:11.610 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 10:11:11.653 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 10:11:11.794 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 10:11:11.981 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-23 10:11:12. 15 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-23 10:11:12. 40 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-23 10:11:12. 71 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-23 10:11:12.102 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-23 10:11:15. 11 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-23 10:11:15. 11 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-23 10:11:19.687 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 10:11:19.687 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 10:11:19.687 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 10:11:20. 37 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 10:11:20. 57 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 10:11:20.168 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 10:12:09.741 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:10.758 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:10.762 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:11.702 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:12.762 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:13. 87 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:13.908 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:13.913 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:16.237 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 10:12:21.264 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 10:12:21.264 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 10:12:21.264 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 10:12:21.459 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 10:12:21.478 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 10:12:21.589 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 10:13:16.551 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 10:13:16.551 [event]-[trace] No need to compile. +2022-03-23 10:13:16.551 [lua]-[debug] ********************* on test start ********************* +2022-03-23 10:13:16.552 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 10:13:16.552 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 10:13:16.552 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 10:13:16.552 [lua]-[debug] Testing 0 +2022-03-23 10:13:16.742 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 10:13:16.742 [lua]-[debug] ********************* on test end ********************* +2022-03-23 10:15:52.248 [event]-[trace] WE is about to compile maps. +2022-03-23 10:15:54.461 [lua]-[debug] ********************* on save start ********************* +2022-03-23 10:15:54.461 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 10:15:54.461 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 10:15:54.461 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 10:15:54.461 [lua]-[trace] mpq_util.update_file. +2022-03-23 10:15:54.478 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 10:15:54.478 [lua]-[trace] Processing file.out +2022-03-23 10:15:54.569 [lua]-[trace] Writing code to file.out +2022-03-23 10:15:54.569 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 10:15:54.577 [lua]-[trace] Injection completed +2022-03-23 10:15:54.577 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 10:15:54.584 [lua]-[trace] Injection completed +2022-03-23 10:15:54.584 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 10:15:54.584 [lua]-[trace] Injection completed +2022-03-23 10:15:54.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 10:15:54.585 [lua]-[trace] Injection completed +2022-03-23 10:15:54.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 10:15:54.586 [lua]-[trace] Injection completed +2022-03-23 10:15:54.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 10:15:54.586 [lua]-[trace] Injection completed +2022-03-23 10:15:54.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 10:15:54.586 [lua]-[trace] Injection completed +2022-03-23 10:15:54.586 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 10:15:54.587 [lua]-[trace] Injection completed +2022-03-23 10:15:54.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 10:15:54.588 [lua]-[trace] Injection completed +2022-03-23 10:15:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 10:15:54.588 [lua]-[trace] Injection completed +2022-03-23 10:15:54.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 10:15:54.589 [lua]-[trace] Injection completed +2022-03-23 10:15:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 10:15:54.589 [lua]-[trace] Injection completed +2022-03-23 10:15:54.589 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 10:15:54.590 [lua]-[trace] Injection completed +2022-03-23 10:15:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 10:15:54.590 [lua]-[trace] Injection completed +2022-03-23 10:15:54.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 10:15:54.591 [lua]-[trace] Injection completed +2022-03-23 10:15:54.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 10:15:54.592 [lua]-[trace] Injection completed +2022-03-23 10:15:54.592 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 10:15:54.592 [lua]-[trace] Injection completed +2022-03-23 10:15:54.592 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 10:15:54.593 [lua]-[trace] Injection completed +2022-03-23 10:15:54.593 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 10:15:54.594 [lua]-[trace] Injection completed +2022-03-23 10:15:54.594 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 10:15:54.594 [lua]-[trace] Injection completed +2022-03-23 10:15:54.594 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 10:15:54.602 [lua]-[trace] Injection completed +2022-03-23 10:15:54.602 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 10:15:54.603 [lua]-[trace] Injection completed +2022-03-23 10:15:54.603 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 10:15:54.604 [lua]-[trace] Injection completed +2022-03-23 10:15:54.604 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 10:15:54.604 [lua]-[trace] Injection completed +2022-03-23 10:15:54.604 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 10:15:54.615 [lua]-[trace] Injection completed +2022-03-23 10:15:54.615 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 10:15:54.616 [lua]-[trace] Injection completed +2022-03-23 10:15:54.616 [lua]-[trace] Wave compilation start. +2022-03-23 10:15:54.918 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 10:15:56.471 [lua]-[trace] Template compilation start. +2022-03-23 10:15:56.511 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-23 10:15:56.525 [lua]-[trace] Initializing 'computed.order_list' +2022-03-23 10:15:56.527 [lua]-[trace] Initializing 'computed.order_id' +2022-03-23 10:15:56.536 [lua]-[trace] Initializing 'slk' +2022-03-23 10:15:56.714 [lua]-[trace] Initializing 'archive' +2022-03-23 10:15:56.716 [lua]-[trace] Initializing 'archive_mpq' +2022-03-23 10:15:56.717 [lua]-[trace] Initializing 'archive_dir' +2022-03-23 10:15:56.717 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-23 10:15:56.718 [lua]-[trace] Initializing 'progress' +2022-03-23 10:15:56.718 [lua]-[trace] Initializing 'slk.frontend' +2022-03-23 10:15:56.720 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-23 10:15:56.720 [lua]-[trace] Initializing 'lpeg' +2022-03-23 10:15:56.758 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-23 10:15:56.953 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-23 10:15:56.973 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-23 10:15:57.151 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-23 10:15:57.157 [lua]-[debug] Template compilation succeeded. +2022-03-23 10:15:57.270 [lua]-[trace] JassHelper compilation start. +2022-03-23 10:16:03.121 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 10:16:03.121 [lua]-[debug] Result true +2022-03-23 10:16:03.121 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:02:29.347 [event]-[trace] WE is about to compile maps. +2022-03-23 12:02:29.413 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:02:29.414 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:02:29.414 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 12:02:29.414 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:02:29.414 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:02:29.416 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 12:02:29.416 [lua]-[trace] Processing file.out +2022-03-23 12:02:29.427 [lua]-[trace] Writing code to file.out +2022-03-23 12:02:29.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:02:29.427 [lua]-[trace] Injection completed +2022-03-23 12:02:29.427 [lua]-[trace] Wave compilation start. +2022-03-23 12:02:29.728 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:02:30.905 [lua]-[trace] Template compilation start. +2022-03-23 12:02:30.912 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:02:30.944 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:02:33.271 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 1 +2022-03-23 12:02:33.271 [lua]-[debug] Result false +2022-03-23 12:02:33.271 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:10:31.948 [event]-[trace] WE is about to compile maps. +2022-03-23 12:10:32. 6 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:10:32. 7 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:10:32. 7 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 12:10:32. 7 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:10:32. 7 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:10:32. 8 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 12:10:32. 9 [lua]-[trace] Processing file.out +2022-03-23 12:10:32. 19 [lua]-[trace] Writing code to file.out +2022-03-23 12:10:32. 20 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:10:32. 20 [lua]-[trace] Injection completed +2022-03-23 12:10:32. 20 [lua]-[trace] Wave compilation start. +2022-03-23 12:10:32.327 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:10:33.448 [lua]-[trace] Template compilation start. +2022-03-23 12:10:33.455 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:10:33.487 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:10:35.862 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 12:10:35.863 [lua]-[debug] Result true +2022-03-23 12:10:35.863 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:10:48.620 [event]-[trace] WE is about to compile maps. +2022-03-23 12:10:48.678 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:10:48.678 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:10:48.678 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 12:10:48.678 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:10:48.678 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:10:48.680 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 12:10:48.680 [lua]-[trace] Processing file.out +2022-03-23 12:10:48.690 [lua]-[trace] Writing code to file.out +2022-03-23 12:10:48.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:10:48.691 [lua]-[trace] Injection completed +2022-03-23 12:10:48.691 [lua]-[trace] Wave compilation start. +2022-03-23 12:10:48.989 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:10:50.144 [lua]-[trace] Template compilation start. +2022-03-23 12:10:50.151 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:10:50.184 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:10:52.611 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 12:10:52.611 [lua]-[debug] Result true +2022-03-23 12:10:52.612 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:16:57.575 [lua]-[debug] **************** on new object id start **************** +2022-03-23 12:16:57.576 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:16:57.576 [lua]-[trace] Disable. +2022-03-23 12:18:12.343 [event]-[trace] WE is about to compile maps. +2022-03-23 12:18:14.608 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:18:14.609 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:18:14.609 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:18:14.609 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:18:14.609 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:18:14.615 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:18:14.615 [lua]-[trace] Processing file.out +2022-03-23 12:18:14.707 [lua]-[trace] Writing code to file.out +2022-03-23 12:18:14.708 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:18:14.708 [lua]-[trace] Injection completed +2022-03-23 12:18:14.708 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:18:14.708 [lua]-[trace] Injection completed +2022-03-23 12:18:14.708 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:18:14.708 [lua]-[trace] Injection completed +2022-03-23 12:18:14.708 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:18:14.708 [lua]-[trace] Injection completed +2022-03-23 12:18:14.708 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:18:14.709 [lua]-[trace] Injection completed +2022-03-23 12:18:14.709 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 12:18:14.710 [lua]-[trace] Injection completed +2022-03-23 12:18:14.710 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:18:14.711 [lua]-[trace] Injection completed +2022-03-23 12:18:14.711 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:18:14.712 [lua]-[trace] Injection completed +2022-03-23 12:18:14.712 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:18:14.712 [lua]-[trace] Injection completed +2022-03-23 12:18:14.712 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:18:14.712 [lua]-[trace] Injection completed +2022-03-23 12:18:14.712 [lua]-[trace] Wave compilation start. +2022-03-23 12:18:15. 23 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:18:16.409 [lua]-[trace] Template compilation start. +2022-03-23 12:18:16.456 [lua]-[trace] Initializing 'slk' +2022-03-23 12:18:16.920 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:18:16.944 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:18:20.487 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:18:20.488 [lua]-[debug] Result true +2022-03-23 12:18:20.488 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:18:29.929 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-23 12:25:02.318 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:25:02.318 [event]-[trace] No need to compile. +2022-03-23 12:25:02.318 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:25:02.318 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:25:02.318 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:25:02.318 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:25:02.318 [lua]-[debug] Testing 0 +2022-03-23 12:25:02.375 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:25:02.375 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:28:26.990 [event]-[trace] WE is about to compile maps. +2022-03-23 12:28:29.467 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:28:29.468 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:28:29.468 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:28:29.468 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:28:29.468 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:28:29.472 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:28:29.472 [lua]-[trace] Processing file.out +2022-03-23 12:28:29.485 [lua]-[trace] Writing code to file.out +2022-03-23 12:28:29.486 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:28:29.486 [lua]-[trace] Injection completed +2022-03-23 12:28:29.486 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:28:29.487 [lua]-[trace] Injection completed +2022-03-23 12:28:29.487 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:28:29.488 [lua]-[trace] Injection completed +2022-03-23 12:28:29.488 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:28:29.489 [lua]-[trace] Injection completed +2022-03-23 12:28:29.489 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:28:29.489 [lua]-[trace] Injection completed +2022-03-23 12:28:29.489 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:28:29.489 [lua]-[trace] Injection completed +2022-03-23 12:28:29.489 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:28:29.490 [lua]-[trace] Injection completed +2022-03-23 12:28:29.490 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:28:29.490 [lua]-[trace] Injection completed +2022-03-23 12:28:29.490 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:28:29.490 [lua]-[trace] Injection completed +2022-03-23 12:28:29.490 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:28:29.490 [lua]-[trace] Injection completed +2022-03-23 12:28:29.491 [lua]-[trace] Wave compilation start. +2022-03-23 12:28:29.844 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:28:31.366 [lua]-[trace] Template compilation start. +2022-03-23 12:28:31.434 [lua]-[trace] Initializing 'slk' +2022-03-23 12:28:31.926 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:28:31.960 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:28:35.571 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:28:35.572 [lua]-[debug] Result true +2022-03-23 12:28:35.572 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:28:36.329 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:28:36.329 [event]-[trace] No need to compile. +2022-03-23 12:28:36.329 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:28:36.330 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:28:36.330 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:28:36.330 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:28:36.330 [lua]-[debug] Testing 0 +2022-03-23 12:28:36.390 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:28:36.390 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:32:53.468 [event]-[trace] WE is about to compile maps. +2022-03-23 12:32:55.955 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:32:55.956 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:32:55.956 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:32:55.956 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:32:55.956 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:32:55.958 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:32:55.958 [lua]-[trace] Processing file.out +2022-03-23 12:32:55.971 [lua]-[trace] Writing code to file.out +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:32:55.972 [lua]-[trace] Injection completed +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:32:55.972 [lua]-[trace] Injection completed +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:32:55.972 [lua]-[trace] Injection completed +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:32:55.972 [lua]-[trace] Injection completed +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:32:55.972 [lua]-[trace] Injection completed +2022-03-23 12:32:55.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:32:55.973 [lua]-[trace] Injection completed +2022-03-23 12:32:55.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:32:55.973 [lua]-[trace] Injection completed +2022-03-23 12:32:55.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:32:55.973 [lua]-[trace] Injection completed +2022-03-23 12:32:55.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:32:55.973 [lua]-[trace] Injection completed +2022-03-23 12:32:55.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:32:55.974 [lua]-[trace] Injection completed +2022-03-23 12:32:55.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.975 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.975 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.975 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.975 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.975 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:32:55.975 [lua]-[trace] Injection completed +2022-03-23 12:32:55.976 [lua]-[trace] Wave compilation start. +2022-03-23 12:32:56.328 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:32:57.903 [lua]-[trace] Template compilation start. +2022-03-23 12:32:57.979 [lua]-[trace] Initializing 'slk' +2022-03-23 12:32:58.538 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:32:58.573 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:33:02.477 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:33:02.477 [lua]-[debug] Result true +2022-03-23 12:33:02.477 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:33:06.530 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:33:06.530 [event]-[trace] No need to compile. +2022-03-23 12:33:06.530 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:33:06.530 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:33:06.530 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:33:06.530 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:33:06.530 [lua]-[debug] Testing 0 +2022-03-23 12:33:06.590 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:33:06.590 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:36:24.292 [event]-[trace] WE is about to compile maps. +2022-03-23 12:36:26.682 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:36:26.683 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:36:26.683 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:36:26.683 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:36:26.683 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:36:26.685 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:36:26.685 [lua]-[trace] Processing file.out +2022-03-23 12:36:26.698 [lua]-[trace] Writing code to file.out +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:36:26.699 [lua]-[trace] Injection completed +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:36:26.699 [lua]-[trace] Injection completed +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:36:26.699 [lua]-[trace] Injection completed +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:36:26.699 [lua]-[trace] Injection completed +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:36:26.699 [lua]-[trace] Injection completed +2022-03-23 12:36:26.699 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.700 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:36:26.700 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.701 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:36:26.701 [lua]-[trace] Injection completed +2022-03-23 12:36:26.702 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:36:26.702 [lua]-[trace] Injection completed +2022-03-23 12:36:26.702 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:36:26.702 [lua]-[trace] Injection completed +2022-03-23 12:36:26.702 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:36:26.702 [lua]-[trace] Injection completed +2022-03-23 12:36:26.702 [lua]-[trace] Wave compilation start. +2022-03-23 12:36:27. 67 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:36:28.644 [lua]-[trace] Template compilation start. +2022-03-23 12:36:28.709 [lua]-[trace] Initializing 'slk' +2022-03-23 12:36:29.291 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:36:29.326 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:36:34. 16 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:36:34. 17 [lua]-[debug] Result true +2022-03-23 12:36:34. 17 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:37:29.892 [event]-[trace] WE is about to compile maps. +2022-03-23 12:37:32.387 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:37:32.388 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:37:32.388 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:37:32.388 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:37:32.388 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:37:32.390 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:37:32.390 [lua]-[trace] Processing file.out +2022-03-23 12:37:32.404 [lua]-[trace] Writing code to file.out +2022-03-23 12:37:32.405 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:37:32.405 [lua]-[trace] Injection completed +2022-03-23 12:37:32.405 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:37:32.405 [lua]-[trace] Injection completed +2022-03-23 12:37:32.405 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:37:32.406 [lua]-[trace] Injection completed +2022-03-23 12:37:32.406 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:37:32.407 [lua]-[trace] Injection completed +2022-03-23 12:37:32.407 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:37:32.408 [lua]-[trace] Injection completed +2022-03-23 12:37:32.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:37:32.408 [lua]-[trace] Injection completed +2022-03-23 12:37:32.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:37:32.408 [lua]-[trace] Injection completed +2022-03-23 12:37:32.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:37:32.408 [lua]-[trace] Injection completed +2022-03-23 12:37:32.408 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:37:32.408 [lua]-[trace] Injection completed +2022-03-23 12:37:32.408 [lua]-[trace] Wave compilation start. +2022-03-23 12:37:32.766 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:37:34.296 [lua]-[trace] Template compilation start. +2022-03-23 12:37:34.363 [lua]-[trace] Initializing 'slk' +2022-03-23 12:37:34.893 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:37:35. 61 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:37:38.605 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:37:38.605 [lua]-[debug] Result true +2022-03-23 12:37:38.605 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:38:30.888 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:38:30.889 [event]-[trace] No need to compile. +2022-03-23 12:38:30.889 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:38:30.889 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:38:30.889 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:38:30.889 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:38:30.889 [lua]-[debug] Testing 0 +2022-03-23 12:38:30.944 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:38:30.944 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:40:48.419 [event]-[trace] WE is about to compile maps. +2022-03-23 12:40:50.799 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:40:50.800 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:40:50.800 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:40:50.800 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:40:50.800 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:40:50.802 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:40:50.802 [lua]-[trace] Processing file.out +2022-03-23 12:40:50.814 [lua]-[trace] Writing code to file.out +2022-03-23 12:40:50.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:40:50.815 [lua]-[trace] Injection completed +2022-03-23 12:40:50.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:40:50.815 [lua]-[trace] Injection completed +2022-03-23 12:40:50.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:40:50.815 [lua]-[trace] Injection completed +2022-03-23 12:40:50.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:40:50.816 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:40:50.817 [lua]-[trace] Injection completed +2022-03-23 12:40:50.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:40:50.818 [lua]-[trace] Injection completed +2022-03-23 12:40:50.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:40:50.818 [lua]-[trace] Injection completed +2022-03-23 12:40:50.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:40:50.818 [lua]-[trace] Injection completed +2022-03-23 12:40:50.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:40:50.818 [lua]-[trace] Injection completed +2022-03-23 12:40:50.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:40:50.818 [lua]-[trace] Injection completed +2022-03-23 12:40:50.818 [lua]-[trace] Wave compilation start. +2022-03-23 12:40:51.129 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:40:52.571 [lua]-[trace] Template compilation start. +2022-03-23 12:40:52.634 [lua]-[trace] Initializing 'slk' +2022-03-23 12:40:53. 72 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:40:53.104 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:40:56.845 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:40:56.846 [lua]-[debug] Result true +2022-03-23 12:40:56.847 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:40:59.282 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:40:59.282 [event]-[trace] No need to compile. +2022-03-23 12:40:59.282 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:40:59.282 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:40:59.282 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:40:59.282 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:40:59.282 [lua]-[debug] Testing 0 +2022-03-23 12:40:59.344 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:40:59.344 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:43:24.142 [event]-[trace] WE is about to compile maps. +2022-03-23 12:43:26.409 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:43:26.409 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:43:26.409 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:43:26.409 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:43:26.409 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:43:26.412 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:43:26.412 [lua]-[trace] Processing file.out +2022-03-23 12:43:26.424 [lua]-[trace] Writing code to file.out +2022-03-23 12:43:26.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:43:26.424 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:43:26.425 [lua]-[trace] Injection completed +2022-03-23 12:43:26.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:43:26.426 [lua]-[trace] Injection completed +2022-03-23 12:43:26.426 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:43:26.427 [lua]-[trace] Injection completed +2022-03-23 12:43:26.427 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:43:26.428 [lua]-[trace] Injection completed +2022-03-23 12:43:26.428 [lua]-[trace] Wave compilation start. +2022-03-23 12:43:26.733 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:43:28.140 [lua]-[trace] Template compilation start. +2022-03-23 12:43:28.208 [lua]-[trace] Initializing 'slk' +2022-03-23 12:43:28.714 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:43:28.747 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:43:32.355 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:43:32.356 [lua]-[debug] Result true +2022-03-23 12:43:32.356 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:43:34.183 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:43:34.183 [event]-[trace] No need to compile. +2022-03-23 12:43:34.183 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:43:34.184 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:43:34.184 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:43:34.184 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:43:34.184 [lua]-[debug] Testing 0 +2022-03-23 12:43:34.238 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:43:34.238 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:45:24.930 [event]-[trace] WE is about to compile maps. +2022-03-23 12:45:27.299 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:45:27.300 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:45:27.300 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:45:27.300 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:45:27.300 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:45:27.302 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:45:27.302 [lua]-[trace] Processing file.out +2022-03-23 12:45:27.316 [lua]-[trace] Writing code to file.out +2022-03-23 12:45:27.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:45:27.316 [lua]-[trace] Injection completed +2022-03-23 12:45:27.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:45:27.317 [lua]-[trace] Injection completed +2022-03-23 12:45:27.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:45:27.318 [lua]-[trace] Injection completed +2022-03-23 12:45:27.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:45:27.319 [lua]-[trace] Injection completed +2022-03-23 12:45:27.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:45:27.319 [lua]-[trace] Injection completed +2022-03-23 12:45:27.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:45:27.319 [lua]-[trace] Injection completed +2022-03-23 12:45:27.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:45:27.319 [lua]-[trace] Injection completed +2022-03-23 12:45:27.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:45:27.319 [lua]-[trace] Injection completed +2022-03-23 12:45:27.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:45:27.320 [lua]-[trace] Injection completed +2022-03-23 12:45:27.320 [lua]-[trace] Wave compilation start. +2022-03-23 12:45:27.637 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:45:29. 75 [lua]-[trace] Template compilation start. +2022-03-23 12:45:29.138 [lua]-[trace] Initializing 'slk' +2022-03-23 12:45:29.581 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:45:29.614 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:45:33.381 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:45:33.383 [lua]-[debug] Result true +2022-03-23 12:45:33.383 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:45:34.725 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:45:34.725 [event]-[trace] No need to compile. +2022-03-23 12:45:34.725 [lua]-[debug] ********************* on test start ********************* +2022-03-23 12:45:34.725 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:45:34.725 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:45:34.725 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 12:45:34.725 [lua]-[debug] Testing 0 +2022-03-23 12:45:34.781 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 12:45:34.781 [lua]-[debug] ********************* on test end ********************* +2022-03-23 12:49:03.566 [event]-[trace] WE is about to compile maps. +2022-03-23 12:49:06.950 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:49:06.950 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:49:06.950 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x +2022-03-23 12:49:06.950 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:49:06.951 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:49:06.957 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G5.8.w3x +2022-03-23 12:49:06.957 [lua]-[trace] Processing file.out +2022-03-23 12:49:07. 49 [lua]-[trace] Writing code to file.out +2022-03-23 12:49:07. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:49:07. 50 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:49:07. 50 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:49:07. 50 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:49:07. 50 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 50 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 51 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:49:07. 51 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 52 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 12:49:07. 52 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:49:07. 53 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:49:07. 53 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:49:07. 53 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:49:07. 53 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:49:07. 53 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 53 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:49:07. 54 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:49:07. 54 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 54 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:49:07. 54 [lua]-[trace] Injection completed +2022-03-23 12:49:07. 54 [lua]-[trace] Wave compilation start. +2022-03-23 12:49:07.374 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:49:08.756 [lua]-[trace] Template compilation start. +2022-03-23 12:49:08.808 [lua]-[trace] Initializing 'slk' +2022-03-23 12:49:09.326 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:49:09.351 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:49:12.481 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G5.8.w3x", returned 0 +2022-03-23 12:49:12.482 [lua]-[debug] Result true +2022-03-23 12:49:12.482 [lua]-[debug] ********************* on save end ********************* +2022-03-23 12:49:37.637 [event]-[trace] WE is about to compile maps. +2022-03-23 12:49:39.871 [lua]-[debug] ********************* on save start ********************* +2022-03-23 12:49:39.871 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 12:49:39.871 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G6.0.w3x +2022-03-23 12:49:39.871 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 12:49:39.871 [lua]-[trace] mpq_util.update_file. +2022-03-23 12:49:39.878 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.0.w3x +2022-03-23 12:49:39.878 [lua]-[trace] Processing file.out +2022-03-23 12:49:39.969 [lua]-[trace] Writing code to file.out +2022-03-23 12:49:39.970 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 12:49:39.970 [lua]-[trace] Injection completed +2022-03-23 12:49:39.970 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 12:49:39.970 [lua]-[trace] Injection completed +2022-03-23 12:49:39.970 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 12:49:39.970 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.971 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 12:49:39.971 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 12:49:39.972 [lua]-[trace] Injection completed +2022-03-23 12:49:39.972 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 12:49:39.973 [lua]-[trace] Injection completed +2022-03-23 12:49:39.973 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 12:49:39.974 [lua]-[trace] Injection completed +2022-03-23 12:49:39.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 12:49:39.974 [lua]-[trace] Injection completed +2022-03-23 12:49:39.974 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 12:49:39.974 [lua]-[trace] Injection completed +2022-03-23 12:49:39.974 [lua]-[trace] Wave compilation start. +2022-03-23 12:49:40.296 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 12:49:41.690 [lua]-[trace] Template compilation start. +2022-03-23 12:49:41.737 [lua]-[trace] Initializing 'slk' +2022-03-23 12:49:42.160 [lua]-[debug] Template compilation succeeded. +2022-03-23 12:49:42.185 [lua]-[trace] JassHelper compilation start. +2022-03-23 12:49:45.718 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G6.0.w3x", returned 0 +2022-03-23 12:49:45.719 [lua]-[debug] Result true +2022-03-23 12:49:45.719 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:01:09.225 [event]-[trace] WE is about to compile maps. +2022-03-23 13:01:09.291 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:01:09.292 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:01:09.292 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:01:09.292 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:01:09.292 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:01:09.294 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:01:09.294 [lua]-[trace] Processing file.out +2022-03-23 13:01:09.304 [lua]-[trace] Writing code to file.out +2022-03-23 13:01:09.305 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:01:09.305 [lua]-[trace] Injection completed +2022-03-23 13:01:09.305 [lua]-[trace] Wave compilation start. +2022-03-23 13:01:09.604 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:01:10.780 [lua]-[trace] Template compilation start. +2022-03-23 13:01:10.788 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:01:10.825 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:01:12.926 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 1 +2022-03-23 13:01:12.927 [lua]-[debug] Result false +2022-03-23 13:01:12.927 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:02:56.415 [event]-[trace] WE is about to compile maps. +2022-03-23 13:02:56.476 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:02:56.476 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:02:56.476 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:02:56.476 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:02:56.476 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:02:56.478 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:02:56.478 [lua]-[trace] Processing file.out +2022-03-23 13:02:56.488 [lua]-[trace] Writing code to file.out +2022-03-23 13:02:56.489 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:02:56.489 [lua]-[trace] Injection completed +2022-03-23 13:02:56.489 [lua]-[trace] Wave compilation start. +2022-03-23 13:02:56.795 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:02:58. 20 [lua]-[trace] Template compilation start. +2022-03-23 13:02:58. 27 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:02:58. 61 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:03:00.458 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:03:00.458 [lua]-[debug] Result true +2022-03-23 13:03:00.458 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:14:48.850 [event]-[trace] WE is about to compile maps. +2022-03-23 13:14:48.909 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:14:48.910 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:14:48.910 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:14:48.910 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:14:48.910 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:14:48.911 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:14:48.911 [lua]-[trace] Processing file.out +2022-03-23 13:14:48.923 [lua]-[trace] Writing code to file.out +2022-03-23 13:14:48.923 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:14:48.923 [lua]-[trace] Injection completed +2022-03-23 13:14:48.923 [lua]-[trace] Wave compilation start. +2022-03-23 13:14:49.229 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:14:50.570 [lua]-[trace] Template compilation start. +2022-03-23 13:14:50.577 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:14:50.608 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:14:53.192 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:14:53.193 [lua]-[debug] Result true +2022-03-23 13:14:53.193 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:14:53.680 [lua]-[debug] ********************* on exit start ********************* +2022-03-23 13:14:53.680 [lua]-[trace] Unload plugin YDTrigger. +2022-03-23 13:14:53.680 [lua]-[trace] Unload plugin YDClient. +2022-03-23 13:14:53.680 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-23 13:14:53.680 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-23 13:14:53.680 [inject]-[debug] IAT hook cleanup started. +2022-03-23 13:14:53.680 [inject]-[trace] WE IAT hook cleaned. +2022-03-23 13:14:53.680 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-23 13:14:53.680 [inject]-[debug] IAT hook cleanup completed. +2022-03-23 13:14:53.680 [inject]-[debug] Inline hook uninstallation begins! +2022-03-23 13:14:53.680 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-23 13:14:53.680 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-23 13:14:53.680 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-23 13:14:53.680 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-23 13:14:53.680 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-23 13:14:53.680 [inject]-[debug] Inline hook uninstallation finished! +2022-03-23 13:14:53.680 [lua]-[trace] Unload plugin Tesh. +2022-03-23 13:14:53.681 [lua]-[debug] ********************* on exit end ********************* +2022-03-23 13:14:53.681 [event]-[info ] Main program exit. +2022-03-23 13:14:54.101 [root]-[info ] Script engine has been shut down. +2022-03-23 13:14:56.240 [root]-[info ] ------------------------------------------------------ +2022-03-23 13:14:56.244 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-23 13:14:56.244 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-23 13:14:56.244 [root]-[info ] Windows version: 10.0.19041 +2022-03-23 13:14:56.244 [root]-[debug] Initialize script engine successfully. +2022-03-23 13:14:56.244 [root]-[info ] Script engine startup complete. +2022-03-23 13:14:56.245 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-23 13:14:56.245 [lua]-[trace] Initializing 'sys' +2022-03-23 13:14:56.246 [lua]-[trace] Initializing 'filesystem' +2022-03-23 13:14:56.247 [lua]-[trace] Initializing 'gui' +2022-03-23 13:14:56.248 [lua]-[trace] Initializing 'util' +2022-03-23 13:14:56.249 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-23 13:14:56.249 [lua]-[trace] Initializing 'ffi' +2022-03-23 13:14:56.250 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-23 13:14:56.250 [lua]-[trace] Initializing 'event' +2022-03-23 13:14:56.252 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-23 13:14:56.254 [lua]-[trace] Initializing 'registry' +2022-03-23 13:14:56.255 [lua]-[trace] Initializing 'version' +2022-03-23 13:14:56.256 [lua]-[trace] Initializing 'localization' +2022-03-23 13:14:56.256 [lua]-[trace] Initializing 'i18n' +2022-03-23 13:14:56.257 [lua]-[trace] Initializing 'config' +2022-03-23 13:14:56.258 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:14:56.258 [lua]-[trace] Initializing 'plugin' +2022-03-23 13:14:56.258 [lua]-[trace] Initializing 'uiloader' +2022-03-23 13:14:56.259 [lua]-[trace] Initializing 'stringify_slk' +2022-03-23 13:14:56.259 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-23 13:14:56.259 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-23 13:14:56.260 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-23 13:14:56.260 [lua]-[trace] Initializing 'lni-c' +2022-03-23 13:14:56.261 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-23 13:14:56.262 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-23 13:14:56.262 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-23 13:14:56.262 [lua]-[trace] Initializing 'w3xparser' +2022-03-23 13:14:56.264 [lua]-[trace] Initializing 'check_object' +2022-03-23 13:14:56.264 [lua]-[trace] Initializing 'ffi.storm' +2022-03-23 13:14:56.265 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-23 13:14:56.265 [lua]-[trace] Initializing 'ffi.gui' +2022-03-23 13:14:56.265 [event]-[trace] RegisterEvent id: 7 +2022-03-23 13:14:56.266 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-23 13:14:56.266 [event]-[trace] RegisterEvent id: 5 +2022-03-23 13:14:56.266 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-23 13:14:56.267 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-23 13:14:56.267 [lua]-[trace] Initializing 'compile.wave' +2022-03-23 13:14:56.267 [lua]-[trace] Initializing 'compile.template' +2022-03-23 13:14:56.268 [lua]-[trace] Initializing 'compile.cjass' +2022-03-23 13:14:56.268 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-23 13:14:56.268 [lua]-[trace] Initializing 'mpq_util' +2022-03-23 13:14:56.269 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-23 13:14:56.269 [lua]-[trace] Initializing 'compile.native' +2022-03-23 13:14:56.270 [event]-[trace] RegisterEvent id: 3 +2022-03-23 13:14:56.270 [event]-[trace] RegisterEvent id: 2 +2022-03-23 13:14:56.270 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-23 13:14:56.270 [lua]-[trace] Initializing 'w3x2lni' +2022-03-23 13:14:56.271 [lua]-[trace] Initializing 'utility' +2022-03-23 13:14:56.271 [lua]-[trace] Initializing 'mapdump' +2022-03-23 13:14:56.271 [event]-[trace] RegisterEvent id: 4 +2022-03-23 13:14:56.271 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-23 13:14:56.272 [event]-[trace] RegisterEvent id: 0 +2022-03-23 13:14:56.272 [event]-[trace] RegisterEvent id: 1 +2022-03-23 13:14:56.272 [event]-[trace] RegisterEvent id: 6 +2022-03-23 13:14:56.272 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-23 13:14:56.416 [event]-[trace] RegisterEvent id: 8 +2022-03-23 13:14:56.416 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-23 13:14:56.417 [event]-[trace] RegisterEvent id: 9 +2022-03-23 13:14:56.417 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-23 13:14:56.420 [event]-[info ] Entering main program. +2022-03-23 13:14:56.420 [event]-[debug] Command line: +2022-03-23 13:14:56.423 [lua]-[debug] ********************* on startup start ********************* +2022-03-23 13:14:56.424 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-23 13:14:56.424 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-23 13:14:56.425 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:14:56.425 [lua]-[trace] check_conflicting_ui +2022-03-23 13:14:56.425 [lua]-[trace] check_conflicting_units +2022-03-23 13:14:56.425 [lua]-[trace] clear_potential_conflicting +2022-03-23 13:14:56.426 [lua]-[trace] check_war3_version +2022-03-23 13:14:56.428 [lua]-[error] Cannot find war3.mpq +2022-03-23 13:14:56.432 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-23 13:14:56.442 [lua]-[debug] Tesh loaded successfully. +2022-03-23 13:14:56.462 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-23 13:14:56.464 [lua]-[debug] YDClient loaded successfully. +2022-03-23 13:14:56.464 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-23 13:14:56.464 [lua]-[warn ] failed: disable +2022-03-23 13:14:56.465 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-23 13:14:56.465 [lua]-[warn ] failed: disable +2022-03-23 13:14:56.465 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-23 13:14:56.466 [lua]-[warn ] failed: disable +2022-03-23 13:14:56.466 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-23 13:14:56.557 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-23 13:14:56.560 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-23 13:14:56.562 [lua]-[debug] YDTrigger loaded successfully. +2022-03-23 13:14:56.562 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-23 13:14:56.563 [inject]-[debug] Start installing inline hooks. +2022-03-23 13:14:56.563 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-23 13:14:56.563 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-23 13:14:56.563 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-23 13:14:56.563 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-23 13:14:56.564 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-23 13:14:56.564 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-23 13:14:56.564 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-23 13:14:56.564 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-23 13:14:56.564 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-23 13:14:56.564 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-23 13:14:56.564 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-23 13:14:56.564 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-23 13:14:56.564 [inject]-[debug] Installing inline hooks complete. +2022-03-23 13:14:56.564 [inject]-[debug] IAT hook initialization started. +2022-03-23 13:14:56.564 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-23 13:14:56.564 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-23 13:14:56.564 [inject]-[debug] IAT hook initialization completed. +2022-03-23 13:14:56.564 [inject]-[debug] Patches initialization started. +2022-03-23 13:14:56.564 [inject]-[trace] Installing syntax check patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing auto disable patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing enable trigger check patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-23 13:14:56.564 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing doodad limit patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing unit/item limit patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing editor multi-instance patch +2022-03-23 13:14:56.564 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-23 13:14:56.564 [inject]-[trace] Installing attack table patch +2022-03-23 13:14:56.564 [inject]-[debug] Patches initialization completed. +2022-03-23 13:14:56.564 [inject]-[info ] YDWE startup complete. +2022-03-23 13:14:56.564 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-23 13:14:56.565 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-23 13:14:56.565 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-23 13:14:56.565 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-23 13:14:56.580 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-23 13:14:56.582 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-23 13:14:56.584 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-23 13:14:56.585 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-23 13:14:56.585 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-23 13:14:56.585 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-23 13:14:56.585 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-23 13:14:56.593 [lua]-[trace] Scanned file: 99 +2022-03-23 13:14:56.594 [lua]-[debug] ********************* on startup end ********************* +2022-03-23 13:14:57.211 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:14:57.228 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:14:57.353 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:14:57.432 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-23 13:14:57.434 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-23 13:14:57.434 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-23 13:14:57.435 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-23 13:14:57.436 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-23 13:14:59.887 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-23 13:14:59.887 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-23 13:15:05.914 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:15:05.914 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:15:05.914 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:15:06.113 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:15:06.132 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:15:06.248 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:16:26.471 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:16:26.471 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:16:26.471 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:16:26.679 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:16:26.698 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:16:26.816 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:21:28.817 [event]-[trace] WE is about to compile maps. +2022-03-23 13:21:28.891 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:21:28.891 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:21:28.891 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:21:28.892 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:21:28.892 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:21:28.893 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:21:28.893 [lua]-[trace] Processing file.out +2022-03-23 13:21:28.903 [lua]-[trace] Writing code to file.out +2022-03-23 13:21:28.904 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:21:28.904 [lua]-[trace] Injection completed +2022-03-23 13:21:28.904 [lua]-[trace] Wave compilation start. +2022-03-23 13:21:29.206 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:21:30.351 [lua]-[trace] Template compilation start. +2022-03-23 13:21:30.356 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-23 13:21:30.356 [lua]-[trace] Initializing 'computed.order_list' +2022-03-23 13:21:30.357 [lua]-[trace] Initializing 'computed.order_id' +2022-03-23 13:21:30.359 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:21:30.393 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:21:32.791 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:21:32.792 [lua]-[debug] Result true +2022-03-23 13:21:32.792 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:21:33.402 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:21:33.402 [event]-[trace] No need to compile. +2022-03-23 13:21:33.402 [lua]-[debug] ********************* on test start ********************* +2022-03-23 13:21:33.403 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:21:33.403 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:21:33.403 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:21:33.403 [lua]-[debug] Testing 0 +2022-03-23 13:21:33.468 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 13:21:33.468 [lua]-[debug] ********************* on test end ********************* +2022-03-23 13:42:29.773 [event]-[trace] WE is about to compile maps. +2022-03-23 13:42:29.836 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:42:29.836 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:42:29.836 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:42:29.836 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:42:29.836 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:42:29.838 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:42:29.838 [lua]-[trace] Processing file.out +2022-03-23 13:42:29.848 [lua]-[trace] Writing code to file.out +2022-03-23 13:42:29.849 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:42:29.849 [lua]-[trace] Injection completed +2022-03-23 13:42:29.849 [lua]-[trace] Wave compilation start. +2022-03-23 13:42:30.162 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:42:31.287 [lua]-[trace] Template compilation start. +2022-03-23 13:42:31.294 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:42:31.329 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:42:33.722 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:42:33.723 [lua]-[debug] Result true +2022-03-23 13:42:33.723 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:42:37.554 [lua]-[debug] ********************* on exit start ********************* +2022-03-23 13:42:37.554 [lua]-[trace] Unload plugin Tesh. +2022-03-23 13:42:37.555 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-23 13:42:37.555 [inject]-[debug] IAT hook cleanup started. +2022-03-23 13:42:37.555 [inject]-[trace] WE IAT hook cleaned. +2022-03-23 13:42:37.555 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-23 13:42:37.555 [inject]-[debug] IAT hook cleanup completed. +2022-03-23 13:42:37.555 [inject]-[debug] Inline hook uninstallation begins! +2022-03-23 13:42:37.555 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-23 13:42:37.555 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-23 13:42:37.555 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-23 13:42:37.555 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-23 13:42:37.555 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-23 13:42:37.555 [inject]-[debug] Inline hook uninstallation finished! +2022-03-23 13:42:37.555 [lua]-[trace] Unload plugin YDTrigger. +2022-03-23 13:42:37.555 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-23 13:42:37.556 [lua]-[trace] Unload plugin YDClient. +2022-03-23 13:42:37.556 [lua]-[debug] ********************* on exit end ********************* +2022-03-23 13:42:37.556 [event]-[info ] Main program exit. +2022-03-23 13:42:37.881 [root]-[info ] Script engine has been shut down. +2022-03-23 13:42:40.722 [root]-[info ] ------------------------------------------------------ +2022-03-23 13:42:40.726 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-23 13:42:40.726 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-23 13:42:40.726 [root]-[info ] Windows version: 10.0.19041 +2022-03-23 13:42:40.726 [root]-[debug] Initialize script engine successfully. +2022-03-23 13:42:40.726 [root]-[info ] Script engine startup complete. +2022-03-23 13:42:40.726 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-23 13:42:40.727 [lua]-[trace] Initializing 'sys' +2022-03-23 13:42:40.728 [lua]-[trace] Initializing 'filesystem' +2022-03-23 13:42:40.729 [lua]-[trace] Initializing 'gui' +2022-03-23 13:42:40.729 [lua]-[trace] Initializing 'util' +2022-03-23 13:42:40.730 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-23 13:42:40.730 [lua]-[trace] Initializing 'ffi' +2022-03-23 13:42:40.731 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-23 13:42:40.731 [lua]-[trace] Initializing 'event' +2022-03-23 13:42:40.733 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-23 13:42:40.735 [lua]-[trace] Initializing 'registry' +2022-03-23 13:42:40.736 [lua]-[trace] Initializing 'version' +2022-03-23 13:42:40.736 [lua]-[trace] Initializing 'localization' +2022-03-23 13:42:40.737 [lua]-[trace] Initializing 'i18n' +2022-03-23 13:42:40.738 [lua]-[trace] Initializing 'config' +2022-03-23 13:42:40.738 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:42:40.738 [lua]-[trace] Initializing 'plugin' +2022-03-23 13:42:40.739 [lua]-[trace] Initializing 'uiloader' +2022-03-23 13:42:40.739 [lua]-[trace] Initializing 'stringify_slk' +2022-03-23 13:42:40.739 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-23 13:42:40.740 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-23 13:42:40.740 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-23 13:42:40.740 [lua]-[trace] Initializing 'lni-c' +2022-03-23 13:42:40.741 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-23 13:42:40.742 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-23 13:42:40.742 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-23 13:42:40.742 [lua]-[trace] Initializing 'w3xparser' +2022-03-23 13:42:40.744 [lua]-[trace] Initializing 'check_object' +2022-03-23 13:42:40.744 [lua]-[trace] Initializing 'ffi.storm' +2022-03-23 13:42:40.745 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-23 13:42:40.745 [lua]-[trace] Initializing 'ffi.gui' +2022-03-23 13:42:40.745 [event]-[trace] RegisterEvent id: 7 +2022-03-23 13:42:40.746 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-23 13:42:40.746 [event]-[trace] RegisterEvent id: 5 +2022-03-23 13:42:40.746 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-23 13:42:40.746 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-23 13:42:40.747 [lua]-[trace] Initializing 'compile.wave' +2022-03-23 13:42:40.747 [lua]-[trace] Initializing 'compile.template' +2022-03-23 13:42:40.748 [lua]-[trace] Initializing 'compile.cjass' +2022-03-23 13:42:40.748 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-23 13:42:40.748 [lua]-[trace] Initializing 'mpq_util' +2022-03-23 13:42:40.749 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-23 13:42:40.749 [lua]-[trace] Initializing 'compile.native' +2022-03-23 13:42:40.749 [event]-[trace] RegisterEvent id: 3 +2022-03-23 13:42:40.750 [event]-[trace] RegisterEvent id: 2 +2022-03-23 13:42:40.750 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-23 13:42:40.750 [lua]-[trace] Initializing 'w3x2lni' +2022-03-23 13:42:40.750 [lua]-[trace] Initializing 'utility' +2022-03-23 13:42:40.751 [lua]-[trace] Initializing 'mapdump' +2022-03-23 13:42:40.751 [event]-[trace] RegisterEvent id: 4 +2022-03-23 13:42:40.751 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-23 13:42:40.751 [event]-[trace] RegisterEvent id: 0 +2022-03-23 13:42:40.752 [event]-[trace] RegisterEvent id: 1 +2022-03-23 13:42:40.752 [event]-[trace] RegisterEvent id: 6 +2022-03-23 13:42:40.752 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-23 13:42:40.895 [event]-[trace] RegisterEvent id: 8 +2022-03-23 13:42:40.895 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-23 13:42:40.895 [event]-[trace] RegisterEvent id: 9 +2022-03-23 13:42:40.895 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-23 13:42:40.898 [event]-[info ] Entering main program. +2022-03-23 13:42:40.898 [event]-[debug] Command line: +2022-03-23 13:42:40.902 [lua]-[debug] ********************* on startup start ********************* +2022-03-23 13:42:40.903 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-23 13:42:40.903 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-23 13:42:40.904 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:42:40.904 [lua]-[trace] check_conflicting_ui +2022-03-23 13:42:40.904 [lua]-[trace] check_conflicting_units +2022-03-23 13:42:40.904 [lua]-[trace] clear_potential_conflicting +2022-03-23 13:42:40.905 [lua]-[trace] check_war3_version +2022-03-23 13:42:40.907 [lua]-[error] Cannot find war3.mpq +2022-03-23 13:42:40.911 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-23 13:42:40.923 [lua]-[debug] Tesh loaded successfully. +2022-03-23 13:42:40.943 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-23 13:42:40.944 [lua]-[debug] YDClient loaded successfully. +2022-03-23 13:42:40.944 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-23 13:42:40.945 [lua]-[warn ] failed: disable +2022-03-23 13:42:40.945 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-23 13:42:40.946 [lua]-[warn ] failed: disable +2022-03-23 13:42:40.946 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-23 13:42:40.946 [lua]-[warn ] failed: disable +2022-03-23 13:42:40.946 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-23 13:42:41. 31 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-23 13:42:41. 34 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-23 13:42:41. 36 [lua]-[debug] YDTrigger loaded successfully. +2022-03-23 13:42:41. 36 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-23 13:42:41. 37 [inject]-[debug] Start installing inline hooks. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-23 13:42:41. 38 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-23 13:42:41. 38 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-23 13:42:41. 38 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-23 13:42:41. 38 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-23 13:42:41. 38 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-23 13:42:41. 38 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-23 13:42:41. 38 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-23 13:42:41. 38 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-23 13:42:41. 38 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-23 13:42:41. 38 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-23 13:42:41. 38 [inject]-[debug] Installing inline hooks complete. +2022-03-23 13:42:41. 38 [inject]-[debug] IAT hook initialization started. +2022-03-23 13:42:41. 38 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-23 13:42:41. 38 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-23 13:42:41. 38 [inject]-[debug] IAT hook initialization completed. +2022-03-23 13:42:41. 38 [inject]-[debug] Patches initialization started. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing syntax check patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing auto disable patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing enable trigger check patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-23 13:42:41. 38 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing doodad limit patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing unit/item limit patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing editor multi-instance patch +2022-03-23 13:42:41. 38 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-23 13:42:41. 38 [inject]-[trace] Installing attack table patch +2022-03-23 13:42:41. 38 [inject]-[debug] Patches initialization completed. +2022-03-23 13:42:41. 38 [inject]-[info ] YDWE startup complete. +2022-03-23 13:42:41. 38 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-23 13:42:41. 39 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-23 13:42:41. 39 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-23 13:42:41. 39 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-23 13:42:41. 54 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-23 13:42:41. 56 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-23 13:42:41. 58 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-23 13:42:41. 59 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-23 13:42:41. 59 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-23 13:42:41. 59 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-23 13:42:41. 59 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-23 13:42:41. 67 [lua]-[trace] Scanned file: 99 +2022-03-23 13:42:41. 68 [lua]-[debug] ********************* on startup end ********************* +2022-03-23 13:42:41.679 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:42:41.696 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:42:41.789 [lua]-[error] ...ٷ༭ - \share\script\ui-builder\old-writer.lua:22: attempt to index a nil value (field 'description') +2022-03-23 13:42:41.796 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:42:41.986 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-23 13:42:41.987 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-23 13:42:41.988 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-23 13:42:41.988 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-23 13:42:41.989 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-23 13:42:44.421 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-23 13:42:44.421 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-23 13:42:48.907 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:42:48.907 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:42:48.907 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:42:49.264 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:42:49.288 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:42:49.382 [lua]-[error] ...ٷ༭ - \share\script\ui-builder\old-writer.lua:22: attempt to index a nil value (field 'description') +2022-03-23 13:42:49.389 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:43:32.733 [lua]-[debug] ********************* on exit start ********************* +2022-03-23 13:43:32.733 [lua]-[trace] Unload plugin YDClient. +2022-03-23 13:43:32.733 [lua]-[trace] Unload plugin YDTrigger. +2022-03-23 13:43:32.734 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-23 13:43:32.734 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-23 13:43:32.734 [inject]-[debug] IAT hook cleanup started. +2022-03-23 13:43:32.734 [inject]-[trace] WE IAT hook cleaned. +2022-03-23 13:43:32.734 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-23 13:43:32.734 [inject]-[debug] IAT hook cleanup completed. +2022-03-23 13:43:32.734 [inject]-[debug] Inline hook uninstallation begins! +2022-03-23 13:43:32.734 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-23 13:43:32.734 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-23 13:43:32.734 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-23 13:43:32.734 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-23 13:43:32.734 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-23 13:43:32.734 [inject]-[debug] Inline hook uninstallation finished! +2022-03-23 13:43:32.734 [lua]-[trace] Unload plugin Tesh. +2022-03-23 13:43:32.735 [lua]-[debug] ********************* on exit end ********************* +2022-03-23 13:43:32.735 [event]-[info ] Main program exit. +2022-03-23 13:43:32.875 [root]-[info ] Script engine has been shut down. +2022-03-23 13:43:35.273 [root]-[info ] ------------------------------------------------------ +2022-03-23 13:43:35.277 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-23 13:43:35.277 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-23 13:43:35.277 [root]-[info ] Windows version: 10.0.19041 +2022-03-23 13:43:35.277 [root]-[debug] Initialize script engine successfully. +2022-03-23 13:43:35.277 [root]-[info ] Script engine startup complete. +2022-03-23 13:43:35.278 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-23 13:43:35.278 [lua]-[trace] Initializing 'sys' +2022-03-23 13:43:35.279 [lua]-[trace] Initializing 'filesystem' +2022-03-23 13:43:35.280 [lua]-[trace] Initializing 'gui' +2022-03-23 13:43:35.281 [lua]-[trace] Initializing 'util' +2022-03-23 13:43:35.281 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-23 13:43:35.282 [lua]-[trace] Initializing 'ffi' +2022-03-23 13:43:35.282 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-23 13:43:35.282 [lua]-[trace] Initializing 'event' +2022-03-23 13:43:35.284 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-23 13:43:35.285 [lua]-[trace] Initializing 'registry' +2022-03-23 13:43:35.286 [lua]-[trace] Initializing 'version' +2022-03-23 13:43:35.287 [lua]-[trace] Initializing 'localization' +2022-03-23 13:43:35.287 [lua]-[trace] Initializing 'i18n' +2022-03-23 13:43:35.288 [lua]-[trace] Initializing 'config' +2022-03-23 13:43:35.289 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:43:35.289 [lua]-[trace] Initializing 'plugin' +2022-03-23 13:43:35.289 [lua]-[trace] Initializing 'uiloader' +2022-03-23 13:43:35.290 [lua]-[trace] Initializing 'stringify_slk' +2022-03-23 13:43:35.290 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-23 13:43:35.290 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-23 13:43:35.291 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-23 13:43:35.291 [lua]-[trace] Initializing 'lni-c' +2022-03-23 13:43:35.292 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-23 13:43:35.292 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-23 13:43:35.293 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-23 13:43:35.293 [lua]-[trace] Initializing 'w3xparser' +2022-03-23 13:43:35.294 [lua]-[trace] Initializing 'check_object' +2022-03-23 13:43:35.295 [lua]-[trace] Initializing 'ffi.storm' +2022-03-23 13:43:35.296 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-23 13:43:35.296 [lua]-[trace] Initializing 'ffi.gui' +2022-03-23 13:43:35.296 [event]-[trace] RegisterEvent id: 7 +2022-03-23 13:43:35.297 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-23 13:43:35.297 [event]-[trace] RegisterEvent id: 5 +2022-03-23 13:43:35.297 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-23 13:43:35.297 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-23 13:43:35.298 [lua]-[trace] Initializing 'compile.wave' +2022-03-23 13:43:35.298 [lua]-[trace] Initializing 'compile.template' +2022-03-23 13:43:35.298 [lua]-[trace] Initializing 'compile.cjass' +2022-03-23 13:43:35.299 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-23 13:43:35.299 [lua]-[trace] Initializing 'mpq_util' +2022-03-23 13:43:35.299 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-23 13:43:35.300 [lua]-[trace] Initializing 'compile.native' +2022-03-23 13:43:35.300 [event]-[trace] RegisterEvent id: 3 +2022-03-23 13:43:35.300 [event]-[trace] RegisterEvent id: 2 +2022-03-23 13:43:35.300 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-23 13:43:35.301 [lua]-[trace] Initializing 'w3x2lni' +2022-03-23 13:43:35.301 [lua]-[trace] Initializing 'utility' +2022-03-23 13:43:35.302 [lua]-[trace] Initializing 'mapdump' +2022-03-23 13:43:35.302 [event]-[trace] RegisterEvent id: 4 +2022-03-23 13:43:35.302 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-23 13:43:35.302 [event]-[trace] RegisterEvent id: 0 +2022-03-23 13:43:35.302 [event]-[trace] RegisterEvent id: 1 +2022-03-23 13:43:35.302 [event]-[trace] RegisterEvent id: 6 +2022-03-23 13:43:35.302 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-23 13:43:35.447 [event]-[trace] RegisterEvent id: 8 +2022-03-23 13:43:35.447 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-23 13:43:35.448 [event]-[trace] RegisterEvent id: 9 +2022-03-23 13:43:35.448 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-23 13:43:35.451 [event]-[info ] Entering main program. +2022-03-23 13:43:35.451 [event]-[debug] Command line: +2022-03-23 13:43:35.455 [lua]-[debug] ********************* on startup start ********************* +2022-03-23 13:43:35.457 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-23 13:43:35.457 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-23 13:43:35.457 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:43:35.457 [lua]-[trace] check_conflicting_ui +2022-03-23 13:43:35.458 [lua]-[trace] check_conflicting_units +2022-03-23 13:43:35.458 [lua]-[trace] clear_potential_conflicting +2022-03-23 13:43:35.458 [lua]-[trace] check_war3_version +2022-03-23 13:43:35.461 [lua]-[error] Cannot find war3.mpq +2022-03-23 13:43:35.464 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-23 13:43:35.476 [lua]-[debug] Tesh loaded successfully. +2022-03-23 13:43:35.497 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-23 13:43:35.498 [lua]-[debug] YDClient loaded successfully. +2022-03-23 13:43:35.498 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-23 13:43:35.499 [lua]-[warn ] failed: disable +2022-03-23 13:43:35.499 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-23 13:43:35.499 [lua]-[warn ] failed: disable +2022-03-23 13:43:35.500 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-23 13:43:35.500 [lua]-[warn ] failed: disable +2022-03-23 13:43:35.500 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-23 13:43:35.588 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-23 13:43:35.591 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-23 13:43:35.592 [lua]-[debug] YDTrigger loaded successfully. +2022-03-23 13:43:35.593 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-23 13:43:35.594 [inject]-[debug] Start installing inline hooks. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-23 13:43:35.594 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-23 13:43:35.594 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-23 13:43:35.594 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-23 13:43:35.594 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-23 13:43:35.594 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-23 13:43:35.594 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-23 13:43:35.594 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-23 13:43:35.594 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-23 13:43:35.594 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-23 13:43:35.594 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-23 13:43:35.595 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-23 13:43:35.595 [inject]-[debug] Installing inline hooks complete. +2022-03-23 13:43:35.595 [inject]-[debug] IAT hook initialization started. +2022-03-23 13:43:35.595 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-23 13:43:35.595 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-23 13:43:35.595 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-23 13:43:35.595 [inject]-[debug] IAT hook initialization completed. +2022-03-23 13:43:35.595 [inject]-[debug] Patches initialization started. +2022-03-23 13:43:35.595 [inject]-[trace] Installing syntax check patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing auto disable patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing enable trigger check patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-23 13:43:35.595 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing doodad limit patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing unit/item limit patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing editor multi-instance patch +2022-03-23 13:43:35.595 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-23 13:43:35.595 [inject]-[trace] Installing attack table patch +2022-03-23 13:43:35.595 [inject]-[debug] Patches initialization completed. +2022-03-23 13:43:35.595 [inject]-[info ] YDWE startup complete. +2022-03-23 13:43:35.595 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-23 13:43:35.595 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-23 13:43:35.596 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-23 13:43:35.596 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-23 13:43:35.610 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-23 13:43:35.611 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-23 13:43:35.613 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-23 13:43:35.614 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-23 13:43:35.614 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-23 13:43:35.614 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-23 13:43:35.614 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-23 13:43:35.621 [lua]-[trace] Scanned file: 99 +2022-03-23 13:43:35.622 [lua]-[debug] ********************* on startup end ********************* +2022-03-23 13:43:36.234 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:43:36.251 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:43:36.364 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:43:36.442 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-23 13:43:36.442 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-23 13:43:36.443 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-23 13:43:36.443 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-23 13:43:36.444 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-23 13:43:38.881 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-23 13:43:38.882 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-23 13:43:43.428 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:43:43.428 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:43:43.428 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 13:43:43.777 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:43:43.799 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:43:43.919 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:43:53.579 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:43:53.579 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:43:53.579 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-23 13:43:53.777 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 13:43:53.796 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 13:43:53.911 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 13:50:50.674 [event]-[trace] WE is about to compile maps. +2022-03-23 13:50:50.747 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:50:50.747 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:50:50.747 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:50:50.747 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:50:50.747 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:50:50.749 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:50:50.749 [lua]-[trace] Processing file.out +2022-03-23 13:50:50.760 [lua]-[trace] Writing code to file.out +2022-03-23 13:50:50.760 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:50:50.761 [lua]-[trace] Injection completed +2022-03-23 13:50:50.761 [lua]-[trace] Wave compilation start. +2022-03-23 13:50:51.100 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:50:52.921 [lua]-[trace] Template compilation start. +2022-03-23 13:50:52.926 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-23 13:50:52.927 [lua]-[trace] Initializing 'computed.order_list' +2022-03-23 13:50:52.927 [lua]-[trace] Initializing 'computed.order_id' +2022-03-23 13:50:52.929 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:50:52.962 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:50:55.498 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:50:55.499 [lua]-[debug] Result true +2022-03-23 13:50:55.499 [lua]-[debug] ********************* on save end ********************* +2022-03-23 13:50:56.434 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:50:56.434 [event]-[trace] No need to compile. +2022-03-23 13:50:56.434 [lua]-[debug] ********************* on test start ********************* +2022-03-23 13:50:56.434 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:50:56.434 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:50:56.434 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 13:50:56.434 [lua]-[debug] Testing 0 +2022-03-23 13:50:56.498 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 13:50:56.498 [lua]-[debug] ********************* on test end ********************* +2022-03-23 13:51:45.704 [event]-[trace] WE is about to compile maps. +2022-03-23 13:51:45.781 [lua]-[debug] ********************* on save start ********************* +2022-03-23 13:51:45.782 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 13:51:45.782 [lua]-[trace] Saving C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x +2022-03-23 13:51:45.782 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 13:51:45.782 [lua]-[trace] mpq_util.update_file. +2022-03-23 13:51:45.783 [lua]-[trace] war3map.j has been extracted from war3测试1.27_模式3.w3x +2022-03-23 13:51:45.783 [lua]-[trace] Processing file.out +2022-03-23 13:51:45.795 [lua]-[trace] Writing code to file.out +2022-03-23 13:51:45.795 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 13:51:45.795 [lua]-[trace] Injection completed +2022-03-23 13:51:45.795 [lua]-[trace] Wave compilation start. +2022-03-23 13:51:46. 99 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Desktop" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 13:51:47.900 [lua]-[trace] Template compilation start. +2022-03-23 13:51:47.908 [lua]-[debug] Template compilation succeeded. +2022-03-23 13:51:47.939 [lua]-[trace] JassHelper compilation start. +2022-03-23 13:51:50.361 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Desktop\war3测试1.27_模式3.w3x", returned 0 +2022-03-23 13:51:50.361 [lua]-[debug] Result true +2022-03-23 13:51:50.361 [lua]-[debug] ********************* on save end ********************* +2022-03-23 15:17:22. 17 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:22.514 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:22.519 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:23. 25 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:23.615 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:23.801 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:24.228 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:24.233 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:25.615 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-23 15:17:56.411 [event]-[trace] WE is about to compile maps. +2022-03-23 15:17:58.729 [lua]-[debug] ********************* on save start ********************* +2022-03-23 15:17:58.730 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 15:17:58.730 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.1.w3x +2022-03-23 15:17:58.730 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 15:17:58.730 [lua]-[trace] mpq_util.update_file. +2022-03-23 15:17:58.737 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.1.w3x +2022-03-23 15:17:58.737 [lua]-[trace] Processing file.out +2022-03-23 15:17:58.832 [lua]-[trace] Writing code to file.out +2022-03-23 15:17:58.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 15:17:58.832 [lua]-[trace] Injection completed +2022-03-23 15:17:58.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 15:17:58.832 [lua]-[trace] Injection completed +2022-03-23 15:17:58.832 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 15:17:58.833 [lua]-[trace] Injection completed +2022-03-23 15:17:58.833 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 15:17:58.834 [lua]-[trace] Injection completed +2022-03-23 15:17:58.834 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 15:17:58.835 [lua]-[trace] Injection completed +2022-03-23 15:17:58.835 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 15:17:58.836 [lua]-[trace] Injection completed +2022-03-23 15:17:58.836 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 15:17:58.836 [lua]-[trace] Injection completed +2022-03-23 15:17:58.836 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 15:17:58.836 [lua]-[trace] Injection completed +2022-03-23 15:17:58.836 [lua]-[trace] Wave compilation start. +2022-03-23 15:17:59.152 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 15:18:00.596 [lua]-[trace] Template compilation start. +2022-03-23 15:18:00.646 [lua]-[trace] Initializing 'slk' +2022-03-23 15:18:00.789 [lua]-[trace] Initializing 'archive' +2022-03-23 15:18:00.790 [lua]-[trace] Initializing 'archive_mpq' +2022-03-23 15:18:00.791 [lua]-[trace] Initializing 'archive_dir' +2022-03-23 15:18:00.792 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-23 15:18:00.792 [lua]-[trace] Initializing 'progress' +2022-03-23 15:18:00.793 [lua]-[trace] Initializing 'slk.frontend' +2022-03-23 15:18:00.794 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-23 15:18:00.794 [lua]-[trace] Initializing 'lpeg' +2022-03-23 15:18:00.838 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-23 15:18:01. 42 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-23 15:18:01. 64 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-23 15:18:01.246 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-23 15:18:01.252 [lua]-[debug] Template compilation succeeded. +2022-03-23 15:18:01.276 [lua]-[trace] JassHelper compilation start. +2022-03-23 15:18:05. 58 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.1.w3x", returned 0 +2022-03-23 15:18:05. 58 [lua]-[debug] Result true +2022-03-23 15:18:05. 58 [lua]-[debug] ********************* on save end ********************* +2022-03-23 15:19:28.606 [event]-[trace] Executing map F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 15:19:28.606 [event]-[trace] No need to compile. +2022-03-23 15:19:28.606 [lua]-[debug] ********************* on test start ********************* +2022-03-23 15:19:28.607 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 15:19:28.607 [lua]-[debug] Testing F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-03-23 15:19:28.607 [lua]-[debug] Testing "F:\war3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-23 15:19:28.607 [lua]-[debug] Testing 0 +2022-03-23 15:19:28.663 [lua]-[trace] Executed "F:\war3\Warcraft III Frozen Throne\war3.exe" -loadfile "F:\war3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-23 15:19:28.664 [lua]-[debug] ********************* on test end ********************* +2022-03-23 15:23:10.292 [event]-[trace] WE is about to compile maps. +2022-03-23 15:23:12.769 [lua]-[debug] ********************* on save start ********************* +2022-03-23 15:23:12.770 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 15:23:12.770 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G6.1.w3x +2022-03-23 15:23:12.770 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 15:23:12.770 [lua]-[trace] mpq_util.update_file. +2022-03-23 15:23:12.777 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.1.w3x +2022-03-23 15:23:12.777 [lua]-[trace] Processing file.out +2022-03-23 15:23:12.873 [lua]-[trace] Writing code to file.out +2022-03-23 15:23:12.874 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 15:23:12.874 [lua]-[trace] Injection completed +2022-03-23 15:23:12.874 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 15:23:12.874 [lua]-[trace] Injection completed +2022-03-23 15:23:12.874 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 15:23:12.874 [lua]-[trace] Injection completed +2022-03-23 15:23:12.874 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-23 15:23:12.875 [lua]-[trace] Injection completed +2022-03-23 15:23:12.875 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 15:23:12.876 [lua]-[trace] Injection completed +2022-03-23 15:23:12.876 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-23 15:23:12.877 [lua]-[trace] Injection completed +2022-03-23 15:23:12.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 15:23:12.877 [lua]-[trace] Injection completed +2022-03-23 15:23:12.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-23 15:23:12.877 [lua]-[trace] Injection completed +2022-03-23 15:23:12.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 15:23:12.877 [lua]-[trace] Injection completed +2022-03-23 15:23:12.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 15:23:12.877 [lua]-[trace] Injection completed +2022-03-23 15:23:12.877 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 15:23:12.878 [lua]-[trace] Injection completed +2022-03-23 15:23:12.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 15:23:12.878 [lua]-[trace] Injection completed +2022-03-23 15:23:12.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 15:23:12.878 [lua]-[trace] Injection completed +2022-03-23 15:23:12.878 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 15:23:12.879 [lua]-[trace] Injection completed +2022-03-23 15:23:12.879 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 15:23:12.879 [lua]-[trace] Injection completed +2022-03-23 15:23:12.879 [lua]-[trace] Wave compilation start. +2022-03-23 15:23:13.197 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 15:23:14.614 [lua]-[trace] Template compilation start. +2022-03-23 15:23:14.661 [lua]-[trace] Initializing 'slk' +2022-03-23 15:23:15. 99 [lua]-[debug] Template compilation succeeded. +2022-03-23 15:23:15.122 [lua]-[trace] JassHelper compilation start. +2022-03-23 15:23:18.634 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\RZWD\人族2.6.0_G6.1.w3x", returned 0 +2022-03-23 15:23:18.635 [lua]-[debug] Result true +2022-03-23 15:23:18.635 [lua]-[debug] ********************* on save end ********************* +2022-03-23 16:43:36.886 [event]-[info ] 无法读取文件: buildings\other\FountainOfLifeBlood\FountainOfLifeBlood.mdl +2022-03-23 16:43:37.991 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 16:43:37.991 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 16:43:37.991 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-23 16:43:38.284 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-23 16:43:38.356 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-23 16:43:38.538 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-23 17:00:10. 65 [event]-[info ] 无法读取文件: buildings\other\FountainOfLifeBlood\FountainOfLifeBlood.mdl +2022-03-23 17:10:54.343 [event]-[trace] WE is about to compile maps. +2022-03-23 17:10:55.714 [lua]-[debug] ********************* on save start ********************* +2022-03-23 17:10:55.715 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 17:10:55.715 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\澄海3C_5.45.15.26.w3x +2022-03-23 17:10:55.715 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 17:10:55.715 [lua]-[trace] mpq_util.update_file. +2022-03-23 17:10:55.724 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.26.w3x +2022-03-23 17:10:55.724 [lua]-[trace] Processing file.out +2022-03-23 17:10:55.797 [lua]-[trace] Writing code to file.out +2022-03-23 17:10:55.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-23 17:10:55.798 [lua]-[trace] Injection completed +2022-03-23 17:10:55.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\YDWEBase.j +2022-03-23 17:10:55.798 [lua]-[trace] Injection completed +2022-03-23 17:10:55.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-23 17:10:55.798 [lua]-[trace] Injection completed +2022-03-23 17:10:55.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-23 17:10:55.798 [lua]-[trace] Injection completed +2022-03-23 17:10:55.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-23 17:10:55.798 [lua]-[trace] Injection completed +2022-03-23 17:10:55.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PolledWait.j +2022-03-23 17:10:55.815 [lua]-[trace] Injection completed +2022-03-23 17:10:55.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceLocTimed.j +2022-03-23 17:10:55.815 [lua]-[trace] Injection completed +2022-03-23 17:10:55.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-23 17:10:55.815 [lua]-[trace] Injection completed +2022-03-23 17:10:55.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-23 17:10:55.815 [lua]-[trace] Injection completed +2022-03-23 17:10:55.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-23 17:10:55.815 [lua]-[trace] Injection completed +2022-03-23 17:10:55.815 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-23 17:10:55.816 [lua]-[trace] Injection completed +2022-03-23 17:10:55.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-23 17:10:55.816 [lua]-[trace] Injection completed +2022-03-23 17:10:55.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-23 17:10:55.816 [lua]-[trace] Injection completed +2022-03-23 17:10:55.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-23 17:10:55.816 [lua]-[trace] Injection completed +2022-03-23 17:10:55.816 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterLeaveRectSimple.j +2022-03-23 17:10:55.817 [lua]-[trace] Injection completed +2022-03-23 17:10:55.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocAll.j +2022-03-23 17:10:55.817 [lua]-[trace] Injection completed +2022-03-23 17:10:55.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\UnitHasItemOfTypeBJ.j +2022-03-23 17:10:55.817 [lua]-[trace] Injection completed +2022-03-23 17:10:55.817 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetRandomSubGroup.j +2022-03-23 17:10:55.818 [lua]-[trace] Injection completed +2022-03-23 17:10:55.818 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\YDWETimerSystem.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-23 17:10:55.819 [lua]-[trace] Injection completed +2022-03-23 17:10:55.819 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRangeOfLocMatching.j +2022-03-23 17:10:55.820 [lua]-[trace] Injection completed +2022-03-23 17:10:55.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiEffect.j +2022-03-23 17:10:55.820 [lua]-[trace] Injection completed +2022-03-23 17:10:55.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-23 17:10:55.820 [lua]-[trace] Injection completed +2022-03-23 17:10:55.820 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-23 17:10:55.821 [lua]-[trace] Injection completed +2022-03-23 17:10:55.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-23 17:10:55.821 [lua]-[trace] Injection completed +2022-03-23 17:10:55.821 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PlaySound.j +2022-03-23 17:10:55.826 [lua]-[trace] Injection completed +2022-03-23 17:10:55.826 [lua]-[trace] Wave compilation start. +2022-03-23 17:10:56.161 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 17:10:58.250 [lua]-[trace] Template compilation start. +2022-03-23 17:10:58.382 [lua]-[debug] Template compilation succeeded. +2022-03-23 17:10:58.415 [lua]-[trace] JassHelper compilation start. +2022-03-23 17:11:00.600 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\澄海3C_5.45.15.26.w3x", returned 1 +2022-03-23 17:11:00.601 [lua]-[debug] Result false +2022-03-23 17:11:00.601 [lua]-[debug] ********************* on save end ********************* +2022-03-23 17:11:10.329 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-23 17:11:25.716 [event]-[trace] WE is about to compile maps. +2022-03-23 17:11:27. 70 [lua]-[debug] ********************* on save start ********************* +2022-03-23 17:11:27. 71 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-23 17:11:27. 71 [lua]-[trace] Saving G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.27.w3x +2022-03-23 17:11:27. 71 [lua]-[trace] Save version 1.27.0.52240 +2022-03-23 17:11:27. 71 [lua]-[trace] mpq_util.update_file. +2022-03-23 17:11:27. 81 [lua]-[trace] war3map.j has been extracted from 澄海3C_5.45.15.27.w3x +2022-03-23 17:11:27. 81 [lua]-[trace] Processing file.out +2022-03-23 17:11:27. 81 [lua]-[trace] Wave compilation start. +2022-03-23 17:11:27.415 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-23 17:11:29.420 [lua]-[trace] Template compilation start. +2022-03-23 17:11:29.517 [lua]-[debug] Template compilation succeeded. +2022-03-23 17:11:29.550 [lua]-[trace] JassHelper compilation start. +2022-03-23 17:11:33.719 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "G:\魔兽争霸III\Warcraft III Frozen Throne\Maps\3C\澄海3C_5.45.15.27.w3x", returned 0 +2022-03-23 17:11:33.720 [lua]-[debug] Result true +2022-03-23 17:11:33.720 [lua]-[debug] ********************* on save end ********************* +2022-03-23 17:12:26.413 [lua]-[debug] ********************* on exit start ********************* +2022-03-23 17:12:26.413 [lua]-[trace] Unload plugin YDClient. +2022-03-23 17:12:26.413 [lua]-[trace] Unload plugin YDTrigger. +2022-03-23 17:12:26.424 [lua]-[trace] Unload plugin Tesh. +2022-03-23 17:12:26.430 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-23 17:12:26.430 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-23 17:12:26.430 [inject]-[debug] IAT hook cleanup started. +2022-03-23 17:12:26.431 [inject]-[trace] WE IAT hook cleaned. +2022-03-23 17:12:26.431 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-23 17:12:26.431 [inject]-[debug] IAT hook cleanup completed. +2022-03-23 17:12:26.432 [inject]-[debug] Inline hook uninstallation begins! +2022-03-23 17:12:26.432 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-23 17:12:26.432 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-23 17:12:26.432 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-23 17:12:26.432 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-23 17:12:26.432 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-23 17:12:26.432 [inject]-[debug] Inline hook uninstallation finished! +2022-03-23 17:12:26.432 [lua]-[debug] ********************* on exit end ********************* +2022-03-23 17:12:26.432 [event]-[info ] Main program exit. +2022-03-23 17:12:26.899 [root]-[info ] Script engine has been shut down. +2022-03-24 10:29:35.953 [root]-[info ] ------------------------------------------------------ +2022-03-24 10:29:35.969 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-24 10:29:35.969 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-24 10:29:35.969 [root]-[info ] Windows version: 10.0.19041 +2022-03-24 10:29:35.972 [root]-[debug] Initialize script engine successfully. +2022-03-24 10:29:35.972 [root]-[info ] Script engine startup complete. +2022-03-24 10:29:35.973 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-24 10:29:35.973 [lua]-[trace] Initializing 'sys' +2022-03-24 10:29:35.975 [lua]-[trace] Initializing 'filesystem' +2022-03-24 10:29:35.977 [lua]-[trace] Initializing 'gui' +2022-03-24 10:29:35.980 [lua]-[trace] Initializing 'util' +2022-03-24 10:29:35.981 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-24 10:29:35.982 [lua]-[trace] Initializing 'ffi' +2022-03-24 10:29:35.983 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-24 10:29:35.983 [lua]-[trace] Initializing 'event' +2022-03-24 10:29:36. 2 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-24 10:29:36. 31 [lua]-[trace] Initializing 'registry' +2022-03-24 10:29:36. 32 [lua]-[trace] Initializing 'version' +2022-03-24 10:29:36. 33 [lua]-[trace] Initializing 'localization' +2022-03-24 10:29:36. 33 [lua]-[trace] Initializing 'i18n' +2022-03-24 10:29:36. 36 [lua]-[trace] Initializing 'config' +2022-03-24 10:29:36. 44 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-24 10:29:36. 44 [lua]-[trace] Initializing 'plugin' +2022-03-24 10:29:36. 45 [lua]-[trace] Initializing 'uiloader' +2022-03-24 10:29:36. 46 [lua]-[trace] Initializing 'stringify_slk' +2022-03-24 10:29:36. 47 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-24 10:29:36. 47 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-24 10:29:36. 49 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-24 10:29:36. 50 [lua]-[trace] Initializing 'lni-c' +2022-03-24 10:29:36. 51 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-24 10:29:36. 52 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-24 10:29:36. 52 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-24 10:29:36. 53 [lua]-[trace] Initializing 'w3xparser' +2022-03-24 10:29:36. 56 [lua]-[trace] Initializing 'check_object' +2022-03-24 10:29:36. 58 [lua]-[trace] Initializing 'ffi.storm' +2022-03-24 10:29:36. 58 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-24 10:29:36. 59 [lua]-[trace] Initializing 'ffi.gui' +2022-03-24 10:29:36. 59 [event]-[trace] RegisterEvent id: 7 +2022-03-24 10:29:36. 60 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-24 10:29:36. 61 [event]-[trace] RegisterEvent id: 5 +2022-03-24 10:29:36. 61 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-24 10:29:36. 62 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-24 10:29:36. 63 [lua]-[trace] Initializing 'compile.wave' +2022-03-24 10:29:36. 64 [lua]-[trace] Initializing 'compile.template' +2022-03-24 10:29:36. 64 [lua]-[trace] Initializing 'compile.cjass' +2022-03-24 10:29:36. 65 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-24 10:29:36. 66 [lua]-[trace] Initializing 'mpq_util' +2022-03-24 10:29:36. 66 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-24 10:29:36. 68 [lua]-[trace] Initializing 'compile.native' +2022-03-24 10:29:36. 68 [event]-[trace] RegisterEvent id: 3 +2022-03-24 10:29:36. 68 [event]-[trace] RegisterEvent id: 2 +2022-03-24 10:29:36. 68 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-24 10:29:36. 69 [lua]-[trace] Initializing 'w3x2lni' +2022-03-24 10:29:36. 79 [lua]-[trace] Initializing 'utility' +2022-03-24 10:29:36. 79 [lua]-[trace] Initializing 'mapdump' +2022-03-24 10:29:36. 80 [event]-[trace] RegisterEvent id: 4 +2022-03-24 10:29:36. 80 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-24 10:29:36. 81 [event]-[trace] RegisterEvent id: 0 +2022-03-24 10:29:36. 81 [event]-[trace] RegisterEvent id: 1 +2022-03-24 10:29:36. 81 [event]-[trace] RegisterEvent id: 6 +2022-03-24 10:29:36. 81 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-24 10:29:36.223 [event]-[trace] RegisterEvent id: 8 +2022-03-24 10:29:36.223 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-24 10:29:36.224 [event]-[trace] RegisterEvent id: 9 +2022-03-24 10:29:36.224 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-24 10:29:36.228 [event]-[info ] Entering main program. +2022-03-24 10:29:36.228 [event]-[debug] Command line: +2022-03-24 10:29:36.231 [lua]-[debug] ********************* on startup start ********************* +2022-03-24 10:29:36.301 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-24 10:29:36.301 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-24 10:29:36.302 [lua]-[debug] war3 path F:\war3\Warcraft III Frozen Throne +2022-03-24 10:29:36.302 [lua]-[trace] check_conflicting_ui +2022-03-24 10:29:36.311 [lua]-[trace] check_conflicting_units +2022-03-24 10:29:36.313 [lua]-[trace] clear_potential_conflicting +2022-03-24 10:29:36.313 [lua]-[trace] check_war3_version +2022-03-24 10:29:36.347 [lua]-[error] Cannot find war3.mpq +2022-03-24 10:29:36.368 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-24 10:29:36.418 [lua]-[debug] Tesh loaded successfully. +2022-03-24 10:29:36.460 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-24 10:29:36.462 [lua]-[debug] YDClient loaded successfully. +2022-03-24 10:29:36.462 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-24 10:29:36.471 [lua]-[warn ] failed: disable +2022-03-24 10:29:36.471 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-24 10:29:36.472 [lua]-[warn ] failed: disable +2022-03-24 10:29:36.472 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-24 10:29:36.473 [lua]-[warn ] failed: disable +2022-03-24 10:29:36.473 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-24 10:29:36.552 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-24 10:29:36.558 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-24 10:29:36.561 [lua]-[debug] YDTrigger loaded successfully. +2022-03-24 10:29:36.561 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-24 10:29:36.562 [inject]-[debug] Start installing inline hooks. +2022-03-24 10:29:36.562 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-24 10:29:36.562 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-24 10:29:36.563 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-24 10:29:36.563 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-24 10:29:36.563 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-24 10:29:36.563 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-24 10:29:36.563 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-24 10:29:36.563 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-24 10:29:36.563 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-24 10:29:36.563 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-24 10:29:36.563 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-24 10:29:36.563 [inject]-[debug] Installing inline hooks complete. +2022-03-24 10:29:36.563 [inject]-[debug] IAT hook initialization started. +2022-03-24 10:29:36.563 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-24 10:29:36.563 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-24 10:29:36.563 [inject]-[debug] IAT hook initialization completed. +2022-03-24 10:29:36.563 [inject]-[debug] Patches initialization started. +2022-03-24 10:29:36.563 [inject]-[trace] Installing syntax check patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing auto disable patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing enable trigger check patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-24 10:29:36.563 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing doodad limit patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing unit/item limit patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing editor multi-instance patch +2022-03-24 10:29:36.563 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-24 10:29:36.563 [inject]-[trace] Installing attack table patch +2022-03-24 10:29:36.563 [inject]-[debug] Patches initialization completed. +2022-03-24 10:29:36.563 [inject]-[info ] YDWE startup complete. +2022-03-24 10:29:36.563 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-24 10:29:36.564 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-24 10:29:36.564 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-24 10:29:36.564 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-24 10:29:36.589 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-24 10:29:36.595 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-24 10:29:36.598 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-24 10:29:36.599 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-24 10:29:36.599 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-24 10:29:36.599 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-24 10:29:36.600 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-24 10:29:36.610 [lua]-[trace] Scanned file: 99 +2022-03-24 10:29:36.611 [lua]-[debug] ********************* on startup end ********************* +2022-03-24 10:29:37.483 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 10:29:37.530 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 10:29:37.684 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 10:29:38. 2 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-03-24 10:29:38. 31 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-03-24 10:29:38. 58 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-03-24 10:29:38. 88 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-03-24 10:29:38.118 [lua]-[debug] Loading provider F:\war3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-03-24 10:29:40.991 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-24 10:29:40.992 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-24 10:29:49.329 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-24 10:29:49.329 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-24 10:29:49.329 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-24 10:29:49.518 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 10:29:49.536 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 10:29:49.648 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 10:44:36.981 [lua]-[debug] ********************* on exit start ********************* +2022-03-24 10:44:36.981 [lua]-[trace] Unload plugin YDTrigger. +2022-03-24 10:44:36.981 [lua]-[trace] Unload plugin Tesh. +2022-03-24 10:44:36.982 [lua]-[trace] Unload plugin YDClient. +2022-03-24 10:44:36.982 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-24 10:44:36.982 [inject]-[debug] IAT hook cleanup started. +2022-03-24 10:44:36.982 [inject]-[trace] WE IAT hook cleaned. +2022-03-24 10:44:36.982 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-24 10:44:36.982 [inject]-[debug] IAT hook cleanup completed. +2022-03-24 10:44:36.982 [inject]-[debug] Inline hook uninstallation begins! +2022-03-24 10:44:36.982 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-24 10:44:36.982 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-24 10:44:36.983 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-24 10:44:36.983 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-24 10:44:36.983 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-24 10:44:36.983 [inject]-[debug] Inline hook uninstallation finished! +2022-03-24 10:44:36.983 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-24 10:44:36.983 [lua]-[debug] ********************* on exit end ********************* +2022-03-24 10:44:36.983 [event]-[info ] Main program exit. +2022-03-24 10:44:37.361 [root]-[info ] Script engine has been shut down. +2022-03-24 12:14:34.184 [root]-[info ] ------------------------------------------------------ +2022-03-24 12:14:34.194 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-24 12:14:34.194 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-24 12:14:34.194 [root]-[info ] Windows version: 10.0.19041 +2022-03-24 12:14:34.196 [root]-[debug] Initialize script engine successfully. +2022-03-24 12:14:34.196 [root]-[info ] Script engine startup complete. +2022-03-24 12:14:34.210 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-24 12:14:34.211 [lua]-[trace] Initializing 'sys' +2022-03-24 12:14:34.213 [lua]-[trace] Initializing 'filesystem' +2022-03-24 12:14:34.215 [lua]-[trace] Initializing 'gui' +2022-03-24 12:14:34.217 [lua]-[trace] Initializing 'util' +2022-03-24 12:14:34.218 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-24 12:14:34.219 [lua]-[trace] Initializing 'ffi' +2022-03-24 12:14:34.221 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-24 12:14:34.221 [lua]-[trace] Initializing 'event' +2022-03-24 12:14:34.224 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-24 12:14:34.226 [lua]-[trace] Initializing 'registry' +2022-03-24 12:14:34.227 [lua]-[trace] Initializing 'version' +2022-03-24 12:14:34.228 [lua]-[trace] Initializing 'localization' +2022-03-24 12:14:34.228 [lua]-[trace] Initializing 'i18n' +2022-03-24 12:14:34.230 [lua]-[trace] Initializing 'config' +2022-03-24 12:14:34.252 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 12:14:34.252 [lua]-[trace] Initializing 'plugin' +2022-03-24 12:14:34.253 [lua]-[trace] Initializing 'uiloader' +2022-03-24 12:14:34.253 [lua]-[trace] Initializing 'stringify_slk' +2022-03-24 12:14:34.254 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-24 12:14:34.254 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-24 12:14:34.255 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-24 12:14:34.256 [lua]-[trace] Initializing 'lni-c' +2022-03-24 12:14:34.258 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-24 12:14:34.258 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-24 12:14:34.259 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-24 12:14:34.260 [lua]-[trace] Initializing 'w3xparser' +2022-03-24 12:14:34.276 [lua]-[trace] Initializing 'check_object' +2022-03-24 12:14:34.295 [lua]-[trace] Initializing 'ffi.storm' +2022-03-24 12:14:34.296 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-24 12:14:34.296 [lua]-[trace] Initializing 'ffi.gui' +2022-03-24 12:14:34.297 [event]-[trace] RegisterEvent id: 7 +2022-03-24 12:14:34.297 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-24 12:14:34.298 [event]-[trace] RegisterEvent id: 5 +2022-03-24 12:14:34.298 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-24 12:14:34.299 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-24 12:14:34.300 [lua]-[trace] Initializing 'compile.wave' +2022-03-24 12:14:34.301 [lua]-[trace] Initializing 'compile.template' +2022-03-24 12:14:34.302 [lua]-[trace] Initializing 'compile.cjass' +2022-03-24 12:14:34.302 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-24 12:14:34.303 [lua]-[trace] Initializing 'mpq_util' +2022-03-24 12:14:34.304 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-24 12:14:34.305 [lua]-[trace] Initializing 'compile.native' +2022-03-24 12:14:34.305 [event]-[trace] RegisterEvent id: 3 +2022-03-24 12:14:34.305 [event]-[trace] RegisterEvent id: 2 +2022-03-24 12:14:34.305 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-24 12:14:34.306 [lua]-[trace] Initializing 'w3x2lni' +2022-03-24 12:14:34.320 [lua]-[trace] Initializing 'utility' +2022-03-24 12:14:34.320 [lua]-[trace] Initializing 'mapdump' +2022-03-24 12:14:34.321 [event]-[trace] RegisterEvent id: 4 +2022-03-24 12:14:34.321 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-24 12:14:34.321 [event]-[trace] RegisterEvent id: 0 +2022-03-24 12:14:34.321 [event]-[trace] RegisterEvent id: 1 +2022-03-24 12:14:34.321 [event]-[trace] RegisterEvent id: 6 +2022-03-24 12:14:34.321 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-24 12:14:34.493 [event]-[trace] RegisterEvent id: 8 +2022-03-24 12:14:34.493 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-24 12:14:34.494 [event]-[trace] RegisterEvent id: 9 +2022-03-24 12:14:34.494 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-24 12:14:34.702 [event]-[info ] Entering main program. +2022-03-24 12:14:34.702 [event]-[debug] Command line: +2022-03-24 12:14:34.707 [lua]-[debug] ********************* on startup start ********************* +2022-03-24 12:14:34.709 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-24 12:14:34.709 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-24 12:14:34.709 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 12:14:34.709 [lua]-[trace] check_conflicting_ui +2022-03-24 12:14:34.709 [lua]-[trace] check_conflicting_units +2022-03-24 12:14:34.716 [lua]-[trace] clear_potential_conflicting +2022-03-24 12:14:34.717 [lua]-[trace] check_war3_version +2022-03-24 12:14:34.723 [lua]-[error] Cannot find war3.mpq +2022-03-24 12:14:34.727 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-24 12:14:34.769 [lua]-[debug] Tesh loaded successfully. +2022-03-24 12:14:34.793 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-24 12:14:34.809 [lua]-[debug] YDClient loaded successfully. +2022-03-24 12:14:34.809 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-24 12:14:34.810 [lua]-[warn ] failed: disable +2022-03-24 12:14:34.811 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-24 12:14:34.811 [lua]-[warn ] failed: disable +2022-03-24 12:14:34.812 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-24 12:14:34.813 [lua]-[warn ] failed: disable +2022-03-24 12:14:34.813 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-24 12:14:34.913 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-24 12:14:34.918 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-24 12:14:34.924 [lua]-[debug] YDTrigger loaded successfully. +2022-03-24 12:14:34.924 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-24 12:14:34.926 [inject]-[debug] Start installing inline hooks. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-24 12:14:34.927 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-24 12:14:34.927 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-24 12:14:34.927 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-24 12:14:34.927 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-24 12:14:34.927 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-24 12:14:34.927 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-24 12:14:34.927 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-24 12:14:34.927 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-24 12:14:34.927 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-24 12:14:34.927 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-24 12:14:34.927 [inject]-[debug] Installing inline hooks complete. +2022-03-24 12:14:34.927 [inject]-[debug] IAT hook initialization started. +2022-03-24 12:14:34.927 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-24 12:14:34.927 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-24 12:14:34.927 [inject]-[debug] IAT hook initialization completed. +2022-03-24 12:14:34.927 [inject]-[debug] Patches initialization started. +2022-03-24 12:14:34.927 [inject]-[trace] Installing syntax check patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing auto disable patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing enable trigger check patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-24 12:14:34.927 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing doodad limit patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing unit/item limit patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing editor multi-instance patch +2022-03-24 12:14:34.927 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-24 12:14:34.927 [inject]-[trace] Installing attack table patch +2022-03-24 12:14:34.927 [inject]-[debug] Patches initialization completed. +2022-03-24 12:14:34.927 [inject]-[info ] YDWE startup complete. +2022-03-24 12:14:34.927 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-24 12:14:34.928 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-24 12:14:34.929 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-24 12:14:34.929 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-24 12:14:34.947 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-24 12:14:34.969 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-24 12:14:34.971 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-24 12:14:34.972 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-24 12:14:34.972 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-24 12:14:34.972 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-24 12:14:34.972 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-24 12:14:34.982 [lua]-[trace] Scanned file: 99 +2022-03-24 12:14:34.984 [lua]-[debug] ********************* on startup end ********************* +2022-03-24 12:14:35.529 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 12:14:35.557 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 12:14:35.749 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 12:14:35.875 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-24 12:14:35.877 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-24 12:14:35.878 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-24 12:14:35.879 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-24 12:14:35.880 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-24 12:14:38.655 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-24 12:14:38.656 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-24 12:15:24.655 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-24 12:17:48.790 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-24 12:17:52.723 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 13:12:35. 38 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 13:12:35. 45 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 13:12:35. 45 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 13:12:35.374 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 13:12:35.489 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 13:12:35.661 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 15:53:42.634 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 15:53:42.829 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 15:53:42.995 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\Trough\Trough0.mdl +2022-03-24 15:53:44.199 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:45.345 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:45.350 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:46.175 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:47.172 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:47.482 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:48.310 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:48.315 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:49.240 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 15:53:50.590 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 15:53:50.768 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 15:53:50.773 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 15:54:00.423 [lua]-[debug] ********************* on exit start ********************* +2022-03-24 15:54:00.423 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-24 15:54:00.423 [lua]-[trace] Unload plugin Tesh. +2022-03-24 15:54:00.476 [lua]-[trace] Unload plugin YDTrigger. +2022-03-24 15:54:00.492 [lua]-[trace] Unload plugin YDClient. +2022-03-24 15:54:00.492 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-24 15:54:00.492 [inject]-[debug] IAT hook cleanup started. +2022-03-24 15:54:00.493 [inject]-[trace] WE IAT hook cleaned. +2022-03-24 15:54:00.493 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-24 15:54:00.493 [inject]-[debug] IAT hook cleanup completed. +2022-03-24 15:54:00.493 [inject]-[debug] Inline hook uninstallation begins! +2022-03-24 15:54:00.493 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-24 15:54:00.493 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-24 15:54:00.493 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-24 15:54:00.493 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-24 15:54:00.493 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-24 15:54:00.493 [inject]-[debug] Inline hook uninstallation finished! +2022-03-24 15:54:00.521 [lua]-[debug] ********************* on exit end ********************* +2022-03-24 15:54:00.521 [event]-[info ] Main program exit. +2022-03-24 15:54:00.811 [root]-[info ] Script engine has been shut down. +2022-03-24 15:55:17.134 [root]-[info ] ------------------------------------------------------ +2022-03-24 15:55:17.138 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-24 15:55:17.138 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-24 15:55:17.138 [root]-[info ] Windows version: 10.0.19041 +2022-03-24 15:55:17.147 [root]-[debug] Initialize script engine successfully. +2022-03-24 15:55:17.147 [root]-[info ] Script engine startup complete. +2022-03-24 15:55:17.148 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-24 15:55:17.148 [lua]-[trace] Initializing 'sys' +2022-03-24 15:55:17.151 [lua]-[trace] Initializing 'filesystem' +2022-03-24 15:55:17.153 [lua]-[trace] Initializing 'gui' +2022-03-24 15:55:17.154 [lua]-[trace] Initializing 'util' +2022-03-24 15:55:17.155 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-24 15:55:17.156 [lua]-[trace] Initializing 'ffi' +2022-03-24 15:55:17.158 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-24 15:55:17.158 [lua]-[trace] Initializing 'event' +2022-03-24 15:55:17.176 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-24 15:55:17.178 [lua]-[trace] Initializing 'registry' +2022-03-24 15:55:17.181 [lua]-[trace] Initializing 'version' +2022-03-24 15:55:17.182 [lua]-[trace] Initializing 'localization' +2022-03-24 15:55:17.182 [lua]-[trace] Initializing 'i18n' +2022-03-24 15:55:17.184 [lua]-[trace] Initializing 'config' +2022-03-24 15:55:17.196 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 15:55:17.196 [lua]-[trace] Initializing 'plugin' +2022-03-24 15:55:17.197 [lua]-[trace] Initializing 'uiloader' +2022-03-24 15:55:17.198 [lua]-[trace] Initializing 'stringify_slk' +2022-03-24 15:55:17.198 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-24 15:55:17.199 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-24 15:55:17.200 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-24 15:55:17.200 [lua]-[trace] Initializing 'lni-c' +2022-03-24 15:55:17.202 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-24 15:55:17.203 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-24 15:55:17.203 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-24 15:55:17.204 [lua]-[trace] Initializing 'w3xparser' +2022-03-24 15:55:17.216 [lua]-[trace] Initializing 'check_object' +2022-03-24 15:55:17.257 [lua]-[trace] Initializing 'ffi.storm' +2022-03-24 15:55:17.258 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-24 15:55:17.258 [lua]-[trace] Initializing 'ffi.gui' +2022-03-24 15:55:17.259 [event]-[trace] RegisterEvent id: 7 +2022-03-24 15:55:17.260 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-24 15:55:17.260 [event]-[trace] RegisterEvent id: 5 +2022-03-24 15:55:17.260 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-24 15:55:17.261 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-24 15:55:17.262 [lua]-[trace] Initializing 'compile.wave' +2022-03-24 15:55:17.263 [lua]-[trace] Initializing 'compile.template' +2022-03-24 15:55:17.264 [lua]-[trace] Initializing 'compile.cjass' +2022-03-24 15:55:17.264 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-24 15:55:17.265 [lua]-[trace] Initializing 'mpq_util' +2022-03-24 15:55:17.266 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-24 15:55:17.267 [lua]-[trace] Initializing 'compile.native' +2022-03-24 15:55:17.268 [event]-[trace] RegisterEvent id: 3 +2022-03-24 15:55:17.268 [event]-[trace] RegisterEvent id: 2 +2022-03-24 15:55:17.268 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-24 15:55:17.268 [lua]-[trace] Initializing 'w3x2lni' +2022-03-24 15:55:17.283 [lua]-[trace] Initializing 'utility' +2022-03-24 15:55:17.284 [lua]-[trace] Initializing 'mapdump' +2022-03-24 15:55:17.284 [event]-[trace] RegisterEvent id: 4 +2022-03-24 15:55:17.284 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-24 15:55:17.285 [event]-[trace] RegisterEvent id: 0 +2022-03-24 15:55:17.285 [event]-[trace] RegisterEvent id: 1 +2022-03-24 15:55:17.285 [event]-[trace] RegisterEvent id: 6 +2022-03-24 15:55:17.285 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-24 15:55:17.435 [event]-[trace] RegisterEvent id: 8 +2022-03-24 15:55:17.435 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-24 15:55:17.436 [event]-[trace] RegisterEvent id: 9 +2022-03-24 15:55:17.436 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-24 15:55:17.522 [event]-[info ] Entering main program. +2022-03-24 15:55:17.522 [event]-[debug] Command line: +2022-03-24 15:55:17.525 [lua]-[debug] ********************* on startup start ********************* +2022-03-24 15:55:17.527 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-24 15:55:17.527 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-24 15:55:17.528 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 15:55:17.528 [lua]-[trace] check_conflicting_ui +2022-03-24 15:55:17.528 [lua]-[trace] check_conflicting_units +2022-03-24 15:55:17.528 [lua]-[trace] clear_potential_conflicting +2022-03-24 15:55:17.529 [lua]-[trace] check_war3_version +2022-03-24 15:55:17.536 [lua]-[error] Cannot find war3.mpq +2022-03-24 15:55:17.565 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-24 15:55:17.609 [lua]-[debug] Tesh loaded successfully. +2022-03-24 15:55:17.711 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-24 15:55:17.714 [lua]-[debug] YDClient loaded successfully. +2022-03-24 15:55:17.714 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-24 15:55:17.716 [lua]-[warn ] failed: disable +2022-03-24 15:55:17.716 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-24 15:55:17.717 [lua]-[warn ] failed: disable +2022-03-24 15:55:17.718 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-24 15:55:17.719 [lua]-[warn ] failed: disable +2022-03-24 15:55:17.719 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-24 15:55:17.804 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-24 15:55:17.810 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-24 15:55:17.813 [lua]-[debug] YDTrigger loaded successfully. +2022-03-24 15:55:17.813 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-24 15:55:17.815 [inject]-[debug] Start installing inline hooks. +2022-03-24 15:55:17.815 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-24 15:55:17.815 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-24 15:55:17.815 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-24 15:55:17.815 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-24 15:55:17.816 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-24 15:55:17.816 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-24 15:55:17.816 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-24 15:55:17.816 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-24 15:55:17.816 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-24 15:55:17.816 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-24 15:55:17.816 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-24 15:55:17.816 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-24 15:55:17.816 [inject]-[debug] Installing inline hooks complete. +2022-03-24 15:55:17.816 [inject]-[debug] IAT hook initialization started. +2022-03-24 15:55:17.816 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-24 15:55:17.816 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-24 15:55:17.816 [inject]-[debug] IAT hook initialization completed. +2022-03-24 15:55:17.816 [inject]-[debug] Patches initialization started. +2022-03-24 15:55:17.816 [inject]-[trace] Installing syntax check patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing auto disable patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing enable trigger check patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-24 15:55:17.816 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing doodad limit patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing unit/item limit patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing editor multi-instance patch +2022-03-24 15:55:17.816 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-24 15:55:17.816 [inject]-[trace] Installing attack table patch +2022-03-24 15:55:17.816 [inject]-[debug] Patches initialization completed. +2022-03-24 15:55:17.816 [inject]-[info ] YDWE startup complete. +2022-03-24 15:55:17.816 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-24 15:55:17.817 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-24 15:55:17.817 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-24 15:55:17.827 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-24 15:55:17.879 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-24 15:55:17.909 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-24 15:55:17.912 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-24 15:55:17.913 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-24 15:55:17.914 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-24 15:55:17.914 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-24 15:55:17.915 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-24 15:55:17.935 [lua]-[trace] Scanned file: 99 +2022-03-24 15:55:17.937 [lua]-[debug] ********************* on startup end ********************* +2022-03-24 15:55:18.668 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 15:55:18.686 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 15:55:18.818 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 15:55:18.903 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-24 15:55:18.905 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-24 15:55:18.905 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-24 15:55:18.906 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-24 15:55:18.907 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-24 15:55:21.545 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-24 15:55:21.545 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-24 16:00:58.324 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 16:00:58.400 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 16:00:58.509 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\Trough\Trough0.mdl +2022-03-24 16:00:59.318 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:00.177 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:00.185 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:00.845 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:01.559 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:01.862 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:02.442 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:02.447 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:03. 43 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 16:01:04. 44 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 16:01:04.159 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 16:01:04.164 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 16:01:07.897 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 16:01:07.897 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 16:01:07.897 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 16:01:08.102 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 16:01:08.128 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 16:01:08.256 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 16:26:36.865 [event]-[trace] WE is about to compile maps. +2022-03-24 16:26:39.338 [lua]-[debug] ********************* on save start ********************* +2022-03-24 16:26:39.338 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 16:26:39.338 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x +2022-03-24 16:26:39.338 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 16:26:39.338 [lua]-[trace] mpq_util.update_file. +2022-03-24 16:26:39.355 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 16:26:39.355 [lua]-[trace] Processing file.out +2022-03-24 16:26:39.355 [lua]-[trace] Wave compilation start. +2022-03-24 16:26:39.791 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 16:26:41.443 [lua]-[trace] Template compilation start. +2022-03-24 16:26:41.498 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-24 16:26:41.508 [lua]-[trace] Initializing 'computed.order_list' +2022-03-24 16:26:41.510 [lua]-[trace] Initializing 'computed.order_id' +2022-03-24 16:26:41.522 [lua]-[trace] Initializing 'slk' +2022-03-24 16:26:41.702 [lua]-[trace] Initializing 'archive' +2022-03-24 16:26:41.703 [lua]-[trace] Initializing 'archive_mpq' +2022-03-24 16:26:41.704 [lua]-[trace] Initializing 'archive_dir' +2022-03-24 16:26:41.705 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-24 16:26:41.705 [lua]-[trace] Initializing 'progress' +2022-03-24 16:26:41.706 [lua]-[trace] Initializing 'slk.frontend' +2022-03-24 16:26:41.708 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-24 16:26:41.709 [lua]-[trace] Initializing 'lpeg' +2022-03-24 16:26:41.745 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-24 16:26:41.968 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-24 16:26:41.991 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-24 16:26:42.181 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-24 16:26:42.189 [lua]-[debug] Template compilation succeeded. +2022-03-24 16:26:42.232 [lua]-[trace] JassHelper compilation start. +2022-03-24 16:26:46.919 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x", returned 1 +2022-03-24 16:26:46.920 [lua]-[debug] Result false +2022-03-24 16:26:46.920 [lua]-[debug] ********************* on save end ********************* +2022-03-24 16:26:54. 73 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-24 16:27:01. 89 [event]-[trace] WE is about to compile maps. +2022-03-24 16:27:03.591 [lua]-[debug] ********************* on save start ********************* +2022-03-24 16:27:03.592 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 16:27:03.592 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x +2022-03-24 16:27:03.592 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 16:27:03.592 [lua]-[trace] mpq_util.update_file. +2022-03-24 16:27:03.594 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 16:27:03.594 [lua]-[trace] Processing file.out +2022-03-24 16:27:03.607 [lua]-[trace] Writing code to file.out +2022-03-24 16:27:03.608 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 16:27:03.634 [lua]-[trace] Injection completed +2022-03-24 16:27:03.634 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 16:27:03.636 [lua]-[trace] Injection completed +2022-03-24 16:27:03.636 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 16:27:03.637 [lua]-[trace] Injection completed +2022-03-24 16:27:03.637 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 16:27:03.638 [lua]-[trace] Injection completed +2022-03-24 16:27:03.638 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 16:27:03.638 [lua]-[trace] Injection completed +2022-03-24 16:27:03.638 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 16:27:03.639 [lua]-[trace] Injection completed +2022-03-24 16:27:03.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 16:27:03.639 [lua]-[trace] Injection completed +2022-03-24 16:27:03.639 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 16:27:03.640 [lua]-[trace] Injection completed +2022-03-24 16:27:03.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 16:27:03.640 [lua]-[trace] Injection completed +2022-03-24 16:27:03.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 16:27:03.640 [lua]-[trace] Injection completed +2022-03-24 16:27:03.640 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 16:27:03.641 [lua]-[trace] Injection completed +2022-03-24 16:27:03.641 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 16:27:03.642 [lua]-[trace] Injection completed +2022-03-24 16:27:03.642 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 16:27:03.642 [lua]-[trace] Injection completed +2022-03-24 16:27:03.642 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 16:27:03.643 [lua]-[trace] Injection completed +2022-03-24 16:27:03.643 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 16:27:03.644 [lua]-[trace] Injection completed +2022-03-24 16:27:03.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 16:27:03.644 [lua]-[trace] Injection completed +2022-03-24 16:27:03.644 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 16:27:03.645 [lua]-[trace] Injection completed +2022-03-24 16:27:03.645 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 16:27:03.646 [lua]-[trace] Injection completed +2022-03-24 16:27:03.646 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 16:27:03.647 [lua]-[trace] Injection completed +2022-03-24 16:27:03.647 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 16:27:03.651 [lua]-[trace] Injection completed +2022-03-24 16:27:03.651 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 16:27:03.651 [lua]-[trace] Injection completed +2022-03-24 16:27:03.651 [lua]-[trace] Wave compilation start. +2022-03-24 16:27:03.998 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 16:27:05.526 [lua]-[trace] Template compilation start. +2022-03-24 16:27:05.594 [lua]-[trace] Initializing 'slk' +2022-03-24 16:27:06. 72 [lua]-[debug] Template compilation succeeded. +2022-03-24 16:27:06.107 [lua]-[trace] JassHelper compilation start. +2022-03-24 16:27:09.613 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 16:27:09.614 [lua]-[debug] Result true +2022-03-24 16:27:09.614 [lua]-[debug] ********************* on save end ********************* +2022-03-24 16:51:24.471 [event]-[trace] WE is about to compile maps. +2022-03-24 16:51:27.154 [lua]-[debug] ********************* on save start ********************* +2022-03-24 16:51:27.154 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 16:51:27.154 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x +2022-03-24 16:51:27.154 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 16:51:27.154 [lua]-[trace] mpq_util.update_file. +2022-03-24 16:51:27.177 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 16:51:27.177 [lua]-[trace] Processing file.out +2022-03-24 16:51:27.190 [lua]-[trace] Writing code to file.out +2022-03-24 16:51:27.190 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 16:51:27.190 [lua]-[trace] Injection completed +2022-03-24 16:51:27.190 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 16:51:27.190 [lua]-[trace] Injection completed +2022-03-24 16:51:27.190 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 16:51:27.190 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 16:51:27.191 [lua]-[trace] Injection completed +2022-03-24 16:51:27.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 16:51:27.192 [lua]-[trace] Injection completed +2022-03-24 16:51:27.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 16:51:27.193 [lua]-[trace] Injection completed +2022-03-24 16:51:27.193 [lua]-[trace] Wave compilation start. +2022-03-24 16:51:27.526 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 16:51:29. 3 [lua]-[trace] Template compilation start. +2022-03-24 16:51:29. 65 [lua]-[trace] Initializing 'slk' +2022-03-24 16:51:29.501 [lua]-[debug] Template compilation succeeded. +2022-03-24 16:51:29.533 [lua]-[trace] JassHelper compilation start. +2022-03-24 16:51:33.460 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 16:51:33.461 [lua]-[debug] Result true +2022-03-24 16:51:33.461 [lua]-[debug] ********************* on save end ********************* +2022-03-24 16:51:39.723 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 16:51:39.723 [event]-[trace] No need to compile. +2022-03-24 16:51:39.723 [lua]-[debug] ********************* on test start ********************* +2022-03-24 16:51:39.724 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 16:51:39.724 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 16:51:39.724 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 16:51:39.724 [lua]-[debug] Testing 0 +2022-03-24 16:51:39.993 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 16:51:39.993 [lua]-[debug] ********************* on test end ********************* +2022-03-24 16:59:19.475 [event]-[trace] WE is about to compile maps. +2022-03-24 16:59:21.938 [lua]-[debug] ********************* on save start ********************* +2022-03-24 16:59:21.938 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 16:59:21.938 [lua]-[trace] Saving C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x +2022-03-24 16:59:21.938 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 16:59:21.938 [lua]-[trace] mpq_util.update_file. +2022-03-24 16:59:21.940 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 16:59:21.940 [lua]-[trace] Processing file.out +2022-03-24 16:59:21.952 [lua]-[trace] Writing code to file.out +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 16:59:21.953 [lua]-[trace] Injection completed +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 16:59:21.953 [lua]-[trace] Injection completed +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 16:59:21.953 [lua]-[trace] Injection completed +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 16:59:21.953 [lua]-[trace] Injection completed +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 16:59:21.953 [lua]-[trace] Injection completed +2022-03-24 16:59:21.953 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 16:59:21.954 [lua]-[trace] Injection completed +2022-03-24 16:59:21.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 16:59:21.954 [lua]-[trace] Injection completed +2022-03-24 16:59:21.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 16:59:21.954 [lua]-[trace] Injection completed +2022-03-24 16:59:21.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 16:59:21.954 [lua]-[trace] Injection completed +2022-03-24 16:59:21.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 16:59:21.954 [lua]-[trace] Injection completed +2022-03-24 16:59:21.954 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 16:59:21.955 [lua]-[trace] Injection completed +2022-03-24 16:59:21.955 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 16:59:21.956 [lua]-[trace] Injection completed +2022-03-24 16:59:21.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 16:59:21.956 [lua]-[trace] Injection completed +2022-03-24 16:59:21.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 16:59:21.956 [lua]-[trace] Injection completed +2022-03-24 16:59:21.956 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 16:59:21.956 [lua]-[trace] Injection completed +2022-03-24 16:59:21.956 [lua]-[trace] Wave compilation start. +2022-03-24 16:59:22.289 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="C:\Users\mayn\Documents\我的POPO" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 16:59:23.753 [lua]-[trace] Template compilation start. +2022-03-24 16:59:23.817 [lua]-[trace] Initializing 'slk' +2022-03-24 16:59:24.295 [lua]-[debug] Template compilation succeeded. +2022-03-24 16:59:24.328 [lua]-[trace] JassHelper compilation start. +2022-03-24 16:59:28.382 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "C:\Users\mayn\Documents\我的POPO\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 16:59:28.383 [lua]-[debug] Result true +2022-03-24 16:59:28.383 [lua]-[debug] ********************* on save end ********************* +2022-03-24 17:02:18.399 [event]-[trace] WE is about to compile maps. +2022-03-24 17:02:20.740 [lua]-[debug] ********************* on save start ********************* +2022-03-24 17:02:20.741 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:02:20.741 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 17:02:20.741 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 17:02:20.741 [lua]-[trace] mpq_util.update_file. +2022-03-24 17:02:20.747 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 17:02:20.747 [lua]-[trace] Processing file.out +2022-03-24 17:02:20.839 [lua]-[trace] Writing code to file.out +2022-03-24 17:02:20.839 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 17:02:20.840 [lua]-[trace] Injection completed +2022-03-24 17:02:20.840 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 17:02:20.865 [lua]-[trace] Injection completed +2022-03-24 17:02:20.865 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 17:02:20.865 [lua]-[trace] Injection completed +2022-03-24 17:02:20.865 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 17:02:20.866 [lua]-[trace] Injection completed +2022-03-24 17:02:20.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 17:02:20.866 [lua]-[trace] Injection completed +2022-03-24 17:02:20.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 17:02:20.866 [lua]-[trace] Injection completed +2022-03-24 17:02:20.866 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 17:02:20.867 [lua]-[trace] Injection completed +2022-03-24 17:02:20.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 17:02:20.867 [lua]-[trace] Injection completed +2022-03-24 17:02:20.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 17:02:20.867 [lua]-[trace] Injection completed +2022-03-24 17:02:20.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 17:02:20.867 [lua]-[trace] Injection completed +2022-03-24 17:02:20.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 17:02:20.867 [lua]-[trace] Injection completed +2022-03-24 17:02:20.867 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 17:02:20.868 [lua]-[trace] Injection completed +2022-03-24 17:02:20.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 17:02:20.868 [lua]-[trace] Injection completed +2022-03-24 17:02:20.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 17:02:20.868 [lua]-[trace] Injection completed +2022-03-24 17:02:20.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 17:02:20.868 [lua]-[trace] Injection completed +2022-03-24 17:02:20.868 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 17:02:20.869 [lua]-[trace] Injection completed +2022-03-24 17:02:20.869 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 17:02:20.870 [lua]-[trace] Injection completed +2022-03-24 17:02:20.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 17:02:20.870 [lua]-[trace] Injection completed +2022-03-24 17:02:20.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 17:02:20.870 [lua]-[trace] Injection completed +2022-03-24 17:02:20.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 17:02:20.870 [lua]-[trace] Injection completed +2022-03-24 17:02:20.870 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 17:02:20.870 [lua]-[trace] Injection completed +2022-03-24 17:02:20.870 [lua]-[trace] Wave compilation start. +2022-03-24 17:02:21.195 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 17:02:22.594 [lua]-[trace] Template compilation start. +2022-03-24 17:02:22.641 [lua]-[trace] Initializing 'slk' +2022-03-24 17:02:23.129 [lua]-[debug] Template compilation succeeded. +2022-03-24 17:02:23.154 [lua]-[trace] JassHelper compilation start. +2022-03-24 17:02:26.860 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 17:02:26.860 [lua]-[debug] Result true +2022-03-24 17:02:26.860 [lua]-[debug] ********************* on save end ********************* +2022-03-24 17:25:41.597 [event]-[trace] WE is about to compile maps. +2022-03-24 17:25:43.936 [lua]-[debug] ********************* on save start ********************* +2022-03-24 17:25:43.936 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:25:43.936 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 17:25:43.936 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 17:25:43.936 [lua]-[trace] mpq_util.update_file. +2022-03-24 17:25:43.943 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 17:25:43.943 [lua]-[trace] Processing file.out +2022-03-24 17:25:44. 36 [lua]-[trace] Writing code to file.out +2022-03-24 17:25:44. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 17:25:44. 37 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 17:25:44. 37 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 17:25:44. 37 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 17:25:44. 37 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 37 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 38 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 17:25:44. 38 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 17:25:44. 39 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 17:25:44. 39 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 17:25:44. 39 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 17:25:44. 39 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 17:25:44. 39 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 39 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 40 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 17:25:44. 40 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 41 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 17:25:44. 41 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 41 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 17:25:44. 41 [lua]-[trace] Injection completed +2022-03-24 17:25:44. 41 [lua]-[trace] Wave compilation start. +2022-03-24 17:25:44.388 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 17:25:45.824 [lua]-[trace] Template compilation start. +2022-03-24 17:25:45.872 [lua]-[trace] Initializing 'slk' +2022-03-24 17:25:46.290 [lua]-[debug] Template compilation succeeded. +2022-03-24 17:25:46.316 [lua]-[trace] JassHelper compilation start. +2022-03-24 17:25:50.180 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 17:25:50.180 [lua]-[debug] Result true +2022-03-24 17:25:50.180 [lua]-[debug] ********************* on save end ********************* +2022-03-24 17:26:13.282 [event]-[trace] WE is about to compile maps. +2022-03-24 17:26:15.587 [lua]-[debug] ********************* on save start ********************* +2022-03-24 17:26:15.588 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:26:15.588 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 17:26:15.588 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 17:26:15.588 [lua]-[trace] mpq_util.update_file. +2022-03-24 17:26:15.595 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 17:26:15.595 [lua]-[trace] Processing file.out +2022-03-24 17:26:15.690 [lua]-[trace] Writing code to file.out +2022-03-24 17:26:15.690 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 17:26:15.690 [lua]-[trace] Injection completed +2022-03-24 17:26:15.690 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 17:26:15.690 [lua]-[trace] Injection completed +2022-03-24 17:26:15.690 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 17:26:15.690 [lua]-[trace] Injection completed +2022-03-24 17:26:15.690 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 17:26:15.691 [lua]-[trace] Injection completed +2022-03-24 17:26:15.691 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 17:26:15.692 [lua]-[trace] Injection completed +2022-03-24 17:26:15.692 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 17:26:15.693 [lua]-[trace] Injection completed +2022-03-24 17:26:15.693 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 17:26:15.694 [lua]-[trace] Injection completed +2022-03-24 17:26:15.694 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 17:26:15.694 [lua]-[trace] Injection completed +2022-03-24 17:26:15.694 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 17:26:15.694 [lua]-[trace] Injection completed +2022-03-24 17:26:15.694 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 17:26:15.694 [lua]-[trace] Injection completed +2022-03-24 17:26:15.694 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 17:26:15.694 [lua]-[trace] Injection completed +2022-03-24 17:26:15.694 [lua]-[trace] Wave compilation start. +2022-03-24 17:26:16. 18 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 17:26:17.503 [lua]-[trace] Template compilation start. +2022-03-24 17:26:17.553 [lua]-[trace] Initializing 'slk' +2022-03-24 17:26:18. 31 [lua]-[debug] Template compilation succeeded. +2022-03-24 17:26:18. 55 [lua]-[trace] JassHelper compilation start. +2022-03-24 17:26:21.772 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 17:26:21.773 [lua]-[debug] Result true +2022-03-24 17:26:21.773 [lua]-[debug] ********************* on save end ********************* +2022-03-24 17:26:41.951 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:26:41.951 [event]-[trace] No need to compile. +2022-03-24 17:26:41.951 [lua]-[debug] ********************* on test start ********************* +2022-03-24 17:26:41.951 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:26:41.952 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:26:41.952 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:26:41.952 [lua]-[debug] Testing 0 +2022-03-24 17:26:42.502 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 17:26:42.502 [lua]-[debug] ********************* on test end ********************* +2022-03-24 17:28:58.748 [event]-[trace] WE is about to compile maps. +2022-03-24 17:29:01.130 [lua]-[debug] ********************* on save start ********************* +2022-03-24 17:29:01.131 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:29:01.131 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 17:29:01.131 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 17:29:01.131 [lua]-[trace] mpq_util.update_file. +2022-03-24 17:29:01.137 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 17:29:01.137 [lua]-[trace] Processing file.out +2022-03-24 17:29:01.229 [lua]-[trace] Writing code to file.out +2022-03-24 17:29:01.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 17:29:01.230 [lua]-[trace] Injection completed +2022-03-24 17:29:01.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 17:29:01.230 [lua]-[trace] Injection completed +2022-03-24 17:29:01.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 17:29:01.230 [lua]-[trace] Injection completed +2022-03-24 17:29:01.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 17:29:01.230 [lua]-[trace] Injection completed +2022-03-24 17:29:01.230 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 17:29:01.231 [lua]-[trace] Injection completed +2022-03-24 17:29:01.231 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 17:29:01.232 [lua]-[trace] Injection completed +2022-03-24 17:29:01.232 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 17:29:01.232 [lua]-[trace] Injection completed +2022-03-24 17:29:01.232 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 17:29:01.232 [lua]-[trace] Injection completed +2022-03-24 17:29:01.232 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 17:29:01.232 [lua]-[trace] Injection completed +2022-03-24 17:29:01.232 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 17:29:01.232 [lua]-[trace] Injection completed +2022-03-24 17:29:01.232 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 17:29:01.233 [lua]-[trace] Injection completed +2022-03-24 17:29:01.233 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 17:29:01.234 [lua]-[trace] Injection completed +2022-03-24 17:29:01.234 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 17:29:01.234 [lua]-[trace] Injection completed +2022-03-24 17:29:01.234 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 17:29:01.234 [lua]-[trace] Injection completed +2022-03-24 17:29:01.234 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 17:29:01.234 [lua]-[trace] Injection completed +2022-03-24 17:29:01.234 [lua]-[trace] Wave compilation start. +2022-03-24 17:29:01.556 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 17:29:02.999 [lua]-[trace] Template compilation start. +2022-03-24 17:29:03. 46 [lua]-[trace] Initializing 'slk' +2022-03-24 17:29:03.478 [lua]-[debug] Template compilation succeeded. +2022-03-24 17:29:03.503 [lua]-[trace] JassHelper compilation start. +2022-03-24 17:29:07.253 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 17:29:07.253 [lua]-[debug] Result true +2022-03-24 17:29:07.253 [lua]-[debug] ********************* on save end ********************* +2022-03-24 17:29:21. 80 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:29:21. 80 [event]-[trace] No need to compile. +2022-03-24 17:29:21. 80 [lua]-[debug] ********************* on test start ********************* +2022-03-24 17:29:21. 81 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:29:21. 81 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:29:21. 81 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 17:29:21. 81 [lua]-[debug] Testing 0 +2022-03-24 17:29:21.143 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 17:29:21.143 [lua]-[debug] ********************* on test end ********************* +2022-03-24 17:35:06.303 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-24 17:47:31.883 [event]-[trace] WE is about to compile maps. +2022-03-24 17:47:34.202 [lua]-[debug] ********************* on save start ********************* +2022-03-24 17:47:34.203 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 17:47:34.203 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 17:47:34.203 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 17:47:34.203 [lua]-[trace] mpq_util.update_file. +2022-03-24 17:47:34.210 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 17:47:34.210 [lua]-[trace] Processing file.out +2022-03-24 17:47:34.318 [lua]-[trace] Writing code to file.out +2022-03-24 17:47:34.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 17:47:34.319 [lua]-[trace] Injection completed +2022-03-24 17:47:34.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 17:47:34.319 [lua]-[trace] Injection completed +2022-03-24 17:47:34.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 17:47:34.319 [lua]-[trace] Injection completed +2022-03-24 17:47:34.319 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 17:47:34.319 [lua]-[trace] Injection completed +2022-03-24 17:47:34.320 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 17:47:34.320 [lua]-[trace] Injection completed +2022-03-24 17:47:34.320 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 17:47:34.320 [lua]-[trace] Injection completed +2022-03-24 17:47:34.320 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 17:47:34.320 [lua]-[trace] Injection completed +2022-03-24 17:47:34.320 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 17:47:34.321 [lua]-[trace] Injection completed +2022-03-24 17:47:34.321 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 17:47:34.321 [lua]-[trace] Injection completed +2022-03-24 17:47:34.321 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 17:47:34.321 [lua]-[trace] Injection completed +2022-03-24 17:47:34.321 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 17:47:34.322 [lua]-[trace] Injection completed +2022-03-24 17:47:34.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 17:47:34.322 [lua]-[trace] Injection completed +2022-03-24 17:47:34.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 17:47:34.322 [lua]-[trace] Injection completed +2022-03-24 17:47:34.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 17:47:34.322 [lua]-[trace] Injection completed +2022-03-24 17:47:34.322 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 17:47:34.323 [lua]-[trace] Injection completed +2022-03-24 17:47:34.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 17:47:34.323 [lua]-[trace] Injection completed +2022-03-24 17:47:34.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 17:47:34.323 [lua]-[trace] Injection completed +2022-03-24 17:47:34.323 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 17:47:34.324 [lua]-[trace] Injection completed +2022-03-24 17:47:34.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 17:47:34.324 [lua]-[trace] Injection completed +2022-03-24 17:47:34.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 17:47:34.324 [lua]-[trace] Injection completed +2022-03-24 17:47:34.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 17:47:34.324 [lua]-[trace] Injection completed +2022-03-24 17:47:34.324 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 17:47:34.325 [lua]-[trace] Injection completed +2022-03-24 17:47:34.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 17:47:34.325 [lua]-[trace] Injection completed +2022-03-24 17:47:34.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 17:47:34.325 [lua]-[trace] Injection completed +2022-03-24 17:47:34.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 17:47:34.325 [lua]-[trace] Injection completed +2022-03-24 17:47:34.325 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 17:47:34.325 [lua]-[trace] Injection completed +2022-03-24 17:47:34.326 [lua]-[trace] Wave compilation start. +2022-03-24 17:47:34.686 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 17:47:36.220 [lua]-[trace] Template compilation start. +2022-03-24 17:47:36.273 [lua]-[trace] Initializing 'slk' +2022-03-24 17:47:36.795 [lua]-[debug] Template compilation succeeded. +2022-03-24 17:47:36.822 [lua]-[trace] JassHelper compilation start. +2022-03-24 17:47:41.155 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 17:47:41.155 [lua]-[debug] Result true +2022-03-24 17:47:41.155 [lua]-[debug] ********************* on save end ********************* +2022-03-24 18:04:21.617 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-24 18:05:13.512 [event]-[trace] WE is about to compile maps. +2022-03-24 18:05:15.891 [lua]-[debug] ********************* on save start ********************* +2022-03-24 18:05:15.891 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 18:05:15.891 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 18:05:15.891 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 18:05:15.891 [lua]-[trace] mpq_util.update_file. +2022-03-24 18:05:15.898 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 18:05:15.898 [lua]-[trace] Processing file.out +2022-03-24 18:05:15.989 [lua]-[trace] Writing code to file.out +2022-03-24 18:05:15.989 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 18:05:15.990 [lua]-[trace] Injection completed +2022-03-24 18:05:15.990 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 18:05:15.991 [lua]-[trace] Injection completed +2022-03-24 18:05:15.991 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 18:05:15.992 [lua]-[trace] Injection completed +2022-03-24 18:05:15.992 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 18:05:15.993 [lua]-[trace] Injection completed +2022-03-24 18:05:15.993 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 18:05:15.994 [lua]-[trace] Injection completed +2022-03-24 18:05:15.994 [lua]-[trace] Wave compilation start. +2022-03-24 18:05:16.314 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 18:05:17.752 [lua]-[trace] Template compilation start. +2022-03-24 18:05:17.799 [lua]-[trace] Initializing 'slk' +2022-03-24 18:05:18.239 [lua]-[debug] Template compilation succeeded. +2022-03-24 18:05:18.266 [lua]-[trace] JassHelper compilation start. +2022-03-24 18:05:22. 47 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 18:05:22. 48 [lua]-[debug] Result true +2022-03-24 18:05:22. 48 [lua]-[debug] ********************* on save end ********************* +2022-03-24 18:05:23.376 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 18:05:23.376 [event]-[trace] No need to compile. +2022-03-24 18:05:23.376 [lua]-[debug] ********************* on test start ********************* +2022-03-24 18:05:23.377 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 18:05:23.377 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 18:05:23.377 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 18:05:23.377 [lua]-[debug] Testing 0 +2022-03-24 18:05:23.529 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 18:05:23.529 [lua]-[debug] ********************* on test end ********************* +2022-03-24 22:24:49.830 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:24:49.858 [event]-[trace] No need to compile. +2022-03-24 22:24:49.859 [lua]-[debug] ********************* on test start ********************* +2022-03-24 22:24:49.921 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:24:49.921 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:24:49.921 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:24:49.921 [lua]-[debug] Testing 0 +2022-03-24 22:24:50.400 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 22:24:50.400 [lua]-[debug] ********************* on test end ********************* +2022-03-24 22:24:55.684 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:24:56.485 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:30:03.463 [event]-[trace] WE is about to compile maps. +2022-03-24 22:30:06.313 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:30:06.346 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:30:06.346 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 22:30:06.347 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:30:06.347 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:30:06.381 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:30:06.382 [lua]-[trace] Processing file.out +2022-03-24 22:30:06.510 [lua]-[trace] Writing code to file.out +2022-03-24 22:30:06.510 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:30:06.563 [lua]-[trace] Injection completed +2022-03-24 22:30:06.563 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:30:06.563 [lua]-[trace] Injection completed +2022-03-24 22:30:06.564 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:30:06.567 [lua]-[trace] Injection completed +2022-03-24 22:30:06.567 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:30:06.569 [lua]-[trace] Injection completed +2022-03-24 22:30:06.569 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:30:06.582 [lua]-[trace] Injection completed +2022-03-24 22:30:06.582 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:30:06.583 [lua]-[trace] Injection completed +2022-03-24 22:30:06.583 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:30:06.583 [lua]-[trace] Injection completed +2022-03-24 22:30:06.584 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:30:06.585 [lua]-[trace] Injection completed +2022-03-24 22:30:06.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:30:06.585 [lua]-[trace] Injection completed +2022-03-24 22:30:06.585 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:30:06.587 [lua]-[trace] Injection completed +2022-03-24 22:30:06.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:30:06.587 [lua]-[trace] Injection completed +2022-03-24 22:30:06.587 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:30:06.588 [lua]-[trace] Injection completed +2022-03-24 22:30:06.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:30:06.588 [lua]-[trace] Injection completed +2022-03-24 22:30:06.588 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:30:06.590 [lua]-[trace] Injection completed +2022-03-24 22:30:06.590 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:30:06.591 [lua]-[trace] Injection completed +2022-03-24 22:30:06.591 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:30:06.598 [lua]-[trace] Injection completed +2022-03-24 22:30:06.598 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:30:06.599 [lua]-[trace] Injection completed +2022-03-24 22:30:06.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:30:06.599 [lua]-[trace] Injection completed +2022-03-24 22:30:06.599 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:30:06.600 [lua]-[trace] Injection completed +2022-03-24 22:30:06.600 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:30:06.600 [lua]-[trace] Injection completed +2022-03-24 22:30:06.600 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:30:06.601 [lua]-[trace] Injection completed +2022-03-24 22:30:06.601 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:30:06.602 [lua]-[trace] Injection completed +2022-03-24 22:30:06.602 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:30:06.603 [lua]-[trace] Injection completed +2022-03-24 22:30:06.603 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:30:06.604 [lua]-[trace] Injection completed +2022-03-24 22:30:06.604 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:30:06.605 [lua]-[trace] Injection completed +2022-03-24 22:30:06.605 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:30:06.606 [lua]-[trace] Injection completed +2022-03-24 22:30:06.607 [lua]-[trace] Wave compilation start. +2022-03-24 22:30:07. 63 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:30:10.286 [lua]-[trace] Template compilation start. +2022-03-24 22:30:10.375 [lua]-[trace] Initializing 'slk' +2022-03-24 22:30:11.298 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:30:11.327 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:30:16.329 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:30:16.330 [lua]-[debug] Result true +2022-03-24 22:30:16.330 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:30:22.764 [event]-[trace] Executing map H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:30:22.764 [event]-[trace] No need to compile. +2022-03-24 22:30:22.764 [lua]-[debug] ********************* on test start ********************* +2022-03-24 22:30:22.765 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:30:22.765 [lua]-[debug] Testing H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:30:22.765 [lua]-[debug] Testing "H:\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-03-24 22:30:22.765 [lua]-[debug] Testing 0 +2022-03-24 22:30:22.863 [lua]-[trace] Executed "H:\WarcraftIII\war3.exe" -loadfile "H:\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\MapJ\官方编辑器 - 副本". +2022-03-24 22:30:22.863 [lua]-[debug] ********************* on test end ********************* +2022-03-24 22:31:31.879 [event]-[trace] WE is about to compile maps. +2022-03-24 22:31:34.344 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:31:34.344 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:31:34.344 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 22:31:34.345 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:31:34.345 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:31:34.351 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:31:34.351 [lua]-[trace] Processing file.out +2022-03-24 22:31:34.448 [lua]-[trace] Writing code to file.out +2022-03-24 22:31:34.448 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:31:34.449 [lua]-[trace] Injection completed +2022-03-24 22:31:34.449 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:31:34.449 [lua]-[trace] Injection completed +2022-03-24 22:31:34.449 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:31:34.449 [lua]-[trace] Injection completed +2022-03-24 22:31:34.449 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:31:34.449 [lua]-[trace] Injection completed +2022-03-24 22:31:34.449 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:31:34.449 [lua]-[trace] Injection completed +2022-03-24 22:31:34.449 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.450 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:31:34.450 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:31:34.451 [lua]-[trace] Injection completed +2022-03-24 22:31:34.451 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:31:34.452 [lua]-[trace] Injection completed +2022-03-24 22:31:34.452 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:31:34.453 [lua]-[trace] Injection completed +2022-03-24 22:31:34.453 [lua]-[trace] Wave compilation start. +2022-03-24 22:31:34.815 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:31:36.303 [lua]-[trace] Template compilation start. +2022-03-24 22:31:36.350 [lua]-[trace] Initializing 'slk' +2022-03-24 22:31:36.892 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:31:36.919 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:31:40.985 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:31:40.985 [lua]-[debug] Result true +2022-03-24 22:31:40.985 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:31:42.606 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:31:47.828 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:34:23.365 [event]-[trace] WE is about to compile maps. +2022-03-24 22:34:25.983 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:34:26. 35 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:34:26. 35 [lua]-[trace] Saving F:\MapJ\人族2.6.0_G6.2.w3x +2022-03-24 22:34:26. 36 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:34:26. 36 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:34:26. 42 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:34:26. 42 [lua]-[trace] Processing file.out +2022-03-24 22:34:26.135 [lua]-[trace] Writing code to file.out +2022-03-24 22:34:26.136 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:34:26.163 [lua]-[trace] Injection completed +2022-03-24 22:34:26.163 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:34:26.164 [lua]-[trace] Injection completed +2022-03-24 22:34:26.164 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:34:26.166 [lua]-[trace] Injection completed +2022-03-24 22:34:26.166 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:34:26.167 [lua]-[trace] Injection completed +2022-03-24 22:34:26.167 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:34:26.172 [lua]-[trace] Injection completed +2022-03-24 22:34:26.172 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:34:26.172 [lua]-[trace] Injection completed +2022-03-24 22:34:26.172 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:34:26.173 [lua]-[trace] Injection completed +2022-03-24 22:34:26.173 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:34:26.174 [lua]-[trace] Injection completed +2022-03-24 22:34:26.174 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:34:26.174 [lua]-[trace] Injection completed +2022-03-24 22:34:26.174 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:34:26.180 [lua]-[trace] Injection completed +2022-03-24 22:34:26.180 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:34:26.181 [lua]-[trace] Injection completed +2022-03-24 22:34:26.181 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:34:26.181 [lua]-[trace] Injection completed +2022-03-24 22:34:26.181 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:34:26.182 [lua]-[trace] Injection completed +2022-03-24 22:34:26.182 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:34:26.182 [lua]-[trace] Injection completed +2022-03-24 22:34:26.182 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:34:26.183 [lua]-[trace] Injection completed +2022-03-24 22:34:26.183 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:34:26.188 [lua]-[trace] Injection completed +2022-03-24 22:34:26.188 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:34:26.189 [lua]-[trace] Injection completed +2022-03-24 22:34:26.189 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:34:26.189 [lua]-[trace] Injection completed +2022-03-24 22:34:26.189 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:34:26.190 [lua]-[trace] Injection completed +2022-03-24 22:34:26.190 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:34:26.190 [lua]-[trace] Injection completed +2022-03-24 22:34:26.190 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:34:26.190 [lua]-[trace] Injection completed +2022-03-24 22:34:26.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:34:26.191 [lua]-[trace] Injection completed +2022-03-24 22:34:26.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:34:26.191 [lua]-[trace] Injection completed +2022-03-24 22:34:26.191 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:34:26.192 [lua]-[trace] Injection completed +2022-03-24 22:34:26.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:34:26.192 [lua]-[trace] Injection completed +2022-03-24 22:34:26.192 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:34:26.193 [lua]-[trace] Injection completed +2022-03-24 22:34:26.193 [lua]-[trace] Wave compilation start. +2022-03-24 22:34:26.553 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="F:\MapJ" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:34:28.594 [lua]-[trace] Template compilation start. +2022-03-24 22:34:28.642 [lua]-[trace] Initializing 'slk' +2022-03-24 22:34:29.226 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:34:29.252 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:34:33.404 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "F:\MapJ\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:34:33.405 [lua]-[debug] Result true +2022-03-24 22:34:33.405 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:35:02.985 [event]-[trace] WE is about to compile maps. +2022-03-24 22:35:05.371 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:35:05.372 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:35:05.372 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-24 22:35:05.372 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:35:05.372 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:35:05.380 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:35:05.380 [lua]-[trace] Processing file.out +2022-03-24 22:35:05.490 [lua]-[trace] Writing code to file.out +2022-03-24 22:35:05.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:35:05.492 [lua]-[trace] Injection completed +2022-03-24 22:35:05.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:35:05.492 [lua]-[trace] Injection completed +2022-03-24 22:35:05.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:35:05.492 [lua]-[trace] Injection completed +2022-03-24 22:35:05.492 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:35:05.493 [lua]-[trace] Injection completed +2022-03-24 22:35:05.493 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:35:05.494 [lua]-[trace] Injection completed +2022-03-24 22:35:05.494 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:35:05.495 [lua]-[trace] Injection completed +2022-03-24 22:35:05.495 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:35:05.496 [lua]-[trace] Injection completed +2022-03-24 22:35:05.496 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:35:05.496 [lua]-[trace] Injection completed +2022-03-24 22:35:05.496 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:35:05.496 [lua]-[trace] Injection completed +2022-03-24 22:35:05.496 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:35:05.497 [lua]-[trace] Injection completed +2022-03-24 22:35:05.497 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:35:05.497 [lua]-[trace] Injection completed +2022-03-24 22:35:05.497 [lua]-[trace] Wave compilation start. +2022-03-24 22:35:05.846 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:35:07.392 [lua]-[trace] Template compilation start. +2022-03-24 22:35:07.440 [lua]-[trace] Initializing 'slk' +2022-03-24 22:35:07.885 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:35:07.912 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:35:11.935 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:35:11.936 [lua]-[debug] Result true +2022-03-24 22:35:11.936 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:35:15.241 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:35:34.291 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:38:40.348 [event]-[trace] WE is about to compile maps. +2022-03-24 22:38:42.935 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:38:42.935 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:38:42.935 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-24 22:38:42.936 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:38:42.936 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:38:42.943 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:38:42.943 [lua]-[trace] Processing file.out +2022-03-24 22:38:43. 42 [lua]-[trace] Writing code to file.out +2022-03-24 22:38:43. 42 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:38:43. 43 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 43 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:38:43. 43 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 43 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:38:43. 43 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 43 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:38:43. 43 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 43 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:38:43. 43 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 43 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:38:43. 44 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 44 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:38:43. 45 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:38:43. 45 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:38:43. 45 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:38:43. 45 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:38:43. 45 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 45 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:38:43. 46 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 46 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:38:43. 47 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:38:43. 47 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:38:43. 47 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 47 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:38:43. 47 [lua]-[trace] Injection completed +2022-03-24 22:38:43. 47 [lua]-[trace] Wave compilation start. +2022-03-24 22:38:43.463 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:38:45.240 [lua]-[trace] Template compilation start. +2022-03-24 22:38:45.297 [lua]-[trace] Initializing 'slk' +2022-03-24 22:38:45.865 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:38:45.894 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:38:50.193 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:38:50.194 [lua]-[debug] Result true +2022-03-24 22:38:50.194 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:43:31.220 [event]-[trace] WE is about to compile maps. +2022-03-24 22:43:33.695 [lua]-[debug] ********************* on save start ********************* +2022-03-24 22:43:33.695 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:43:33.695 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-24 22:43:33.695 [lua]-[trace] Save version 1.27.0.52240 +2022-03-24 22:43:33.695 [lua]-[trace] mpq_util.update_file. +2022-03-24 22:43:33.702 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-24 22:43:33.702 [lua]-[trace] Processing file.out +2022-03-24 22:43:33.795 [lua]-[trace] Writing code to file.out +2022-03-24 22:43:33.795 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-24 22:43:33.796 [lua]-[trace] Injection completed +2022-03-24 22:43:33.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-24 22:43:33.796 [lua]-[trace] Injection completed +2022-03-24 22:43:33.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-24 22:43:33.796 [lua]-[trace] Injection completed +2022-03-24 22:43:33.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-24 22:43:33.796 [lua]-[trace] Injection completed +2022-03-24 22:43:33.796 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-24 22:43:33.797 [lua]-[trace] Injection completed +2022-03-24 22:43:33.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-24 22:43:33.797 [lua]-[trace] Injection completed +2022-03-24 22:43:33.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-24 22:43:33.797 [lua]-[trace] Injection completed +2022-03-24 22:43:33.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-24 22:43:33.797 [lua]-[trace] Injection completed +2022-03-24 22:43:33.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-24 22:43:33.797 [lua]-[trace] Injection completed +2022-03-24 22:43:33.797 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-24 22:43:33.798 [lua]-[trace] Injection completed +2022-03-24 22:43:33.798 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-24 22:43:33.799 [lua]-[trace] Injection completed +2022-03-24 22:43:33.799 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-24 22:43:33.800 [lua]-[trace] Injection completed +2022-03-24 22:43:33.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-24 22:43:33.800 [lua]-[trace] Injection completed +2022-03-24 22:43:33.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-24 22:43:33.800 [lua]-[trace] Injection completed +2022-03-24 22:43:33.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-24 22:43:33.800 [lua]-[trace] Injection completed +2022-03-24 22:43:33.800 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-24 22:43:33.800 [lua]-[trace] Injection completed +2022-03-24 22:43:33.800 [lua]-[trace] Wave compilation start. +2022-03-24 22:43:34.132 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-24 22:43:35.572 [lua]-[trace] Template compilation start. +2022-03-24 22:43:35.621 [lua]-[trace] Initializing 'slk' +2022-03-24 22:43:36. 46 [lua]-[debug] Template compilation succeeded. +2022-03-24 22:43:36. 76 [lua]-[trace] JassHelper compilation start. +2022-03-24 22:43:39.918 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-24 22:43:39.919 [lua]-[debug] Result true +2022-03-24 22:43:39.919 [lua]-[debug] ********************* on save end ********************* +2022-03-24 22:43:48.326 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:43:49.611 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:46:03.680 [root]-[info ] ------------------------------------------------------ +2022-03-24 22:46:03.683 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-24 22:46:03.684 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-24 22:46:03.684 [root]-[info ] Windows version: 10.0.19041 +2022-03-24 22:46:03.684 [root]-[debug] Initialize script engine successfully. +2022-03-24 22:46:03.684 [root]-[info ] Script engine startup complete. +2022-03-24 22:46:03.684 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-24 22:46:03.685 [lua]-[trace] Initializing 'sys' +2022-03-24 22:46:03.687 [lua]-[trace] Initializing 'filesystem' +2022-03-24 22:46:03.688 [lua]-[trace] Initializing 'gui' +2022-03-24 22:46:03.690 [lua]-[trace] Initializing 'util' +2022-03-24 22:46:03.691 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-24 22:46:03.692 [lua]-[trace] Initializing 'ffi' +2022-03-24 22:46:03.695 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-24 22:46:03.695 [lua]-[trace] Initializing 'event' +2022-03-24 22:46:03.698 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-24 22:46:03.701 [lua]-[trace] Initializing 'registry' +2022-03-24 22:46:03.703 [lua]-[trace] Initializing 'version' +2022-03-24 22:46:03.704 [lua]-[trace] Initializing 'localization' +2022-03-24 22:46:03.714 [lua]-[trace] Initializing 'i18n' +2022-03-24 22:46:03.718 [lua]-[trace] Initializing 'config' +2022-03-24 22:46:03.718 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:46:03.718 [lua]-[trace] Initializing 'plugin' +2022-03-24 22:46:03.719 [lua]-[trace] Initializing 'uiloader' +2022-03-24 22:46:03.719 [lua]-[trace] Initializing 'stringify_slk' +2022-03-24 22:46:03.720 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-24 22:46:03.721 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-24 22:46:03.722 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-24 22:46:03.722 [lua]-[trace] Initializing 'lni-c' +2022-03-24 22:46:03.725 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-24 22:46:03.726 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-24 22:46:03.727 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-24 22:46:03.728 [lua]-[trace] Initializing 'w3xparser' +2022-03-24 22:46:03.738 [lua]-[trace] Initializing 'check_object' +2022-03-24 22:46:03.746 [lua]-[trace] Initializing 'ffi.storm' +2022-03-24 22:46:03.747 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-24 22:46:03.747 [lua]-[trace] Initializing 'ffi.gui' +2022-03-24 22:46:03.748 [event]-[trace] RegisterEvent id: 7 +2022-03-24 22:46:03.748 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-24 22:46:03.749 [event]-[trace] RegisterEvent id: 5 +2022-03-24 22:46:03.749 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-24 22:46:03.750 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-24 22:46:03.751 [lua]-[trace] Initializing 'compile.wave' +2022-03-24 22:46:03.752 [lua]-[trace] Initializing 'compile.template' +2022-03-24 22:46:03.752 [lua]-[trace] Initializing 'compile.cjass' +2022-03-24 22:46:03.753 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-24 22:46:03.754 [lua]-[trace] Initializing 'mpq_util' +2022-03-24 22:46:03.755 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-24 22:46:03.756 [lua]-[trace] Initializing 'compile.native' +2022-03-24 22:46:03.757 [event]-[trace] RegisterEvent id: 3 +2022-03-24 22:46:03.757 [event]-[trace] RegisterEvent id: 2 +2022-03-24 22:46:03.757 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-24 22:46:03.758 [lua]-[trace] Initializing 'w3x2lni' +2022-03-24 22:46:03.759 [lua]-[trace] Initializing 'utility' +2022-03-24 22:46:03.760 [lua]-[trace] Initializing 'mapdump' +2022-03-24 22:46:03.760 [event]-[trace] RegisterEvent id: 4 +2022-03-24 22:46:03.760 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-24 22:46:03.761 [event]-[trace] RegisterEvent id: 0 +2022-03-24 22:46:03.761 [event]-[trace] RegisterEvent id: 1 +2022-03-24 22:46:03.761 [event]-[trace] RegisterEvent id: 6 +2022-03-24 22:46:03.761 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-24 22:46:03.916 [event]-[trace] RegisterEvent id: 8 +2022-03-24 22:46:03.916 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-24 22:46:03.916 [event]-[trace] RegisterEvent id: 9 +2022-03-24 22:46:03.917 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-24 22:46:03.920 [event]-[info ] Entering main program. +2022-03-24 22:46:03.920 [event]-[debug] Command line: +2022-03-24 22:46:03.923 [lua]-[debug] ********************* on startup start ********************* +2022-03-24 22:46:03.945 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-24 22:46:03.945 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-24 22:46:03.945 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-24 22:46:03.945 [lua]-[trace] check_conflicting_ui +2022-03-24 22:46:03.945 [lua]-[trace] check_conflicting_units +2022-03-24 22:46:03.946 [lua]-[trace] clear_potential_conflicting +2022-03-24 22:46:03.946 [lua]-[trace] check_war3_version +2022-03-24 22:46:03.970 [lua]-[error] Cannot find war3.mpq +2022-03-24 22:46:03.974 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-24 22:46:04. 42 [lua]-[debug] Tesh loaded successfully. +2022-03-24 22:46:04. 62 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-24 22:46:04. 83 [lua]-[debug] YDClient loaded successfully. +2022-03-24 22:46:04. 84 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-24 22:46:04. 85 [lua]-[warn ] failed: disable +2022-03-24 22:46:04. 85 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-24 22:46:04. 86 [lua]-[warn ] failed: disable +2022-03-24 22:46:04. 87 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-24 22:46:04. 88 [lua]-[warn ] failed: disable +2022-03-24 22:46:04. 88 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-24 22:46:04.190 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-24 22:46:04.193 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-24 22:46:04.216 [lua]-[debug] YDTrigger loaded successfully. +2022-03-24 22:46:04.216 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-24 22:46:04.220 [inject]-[debug] Start installing inline hooks. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-24 22:46:04.220 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-24 22:46:04.220 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-24 22:46:04.220 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-24 22:46:04.220 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-24 22:46:04.220 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-24 22:46:04.220 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-24 22:46:04.220 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-24 22:46:04.220 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-24 22:46:04.220 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-24 22:46:04.220 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-24 22:46:04.220 [inject]-[debug] Installing inline hooks complete. +2022-03-24 22:46:04.220 [inject]-[debug] IAT hook initialization started. +2022-03-24 22:46:04.220 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-24 22:46:04.220 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-24 22:46:04.220 [inject]-[debug] IAT hook initialization completed. +2022-03-24 22:46:04.220 [inject]-[debug] Patches initialization started. +2022-03-24 22:46:04.220 [inject]-[trace] Installing syntax check patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing auto disable patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing enable trigger check patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-24 22:46:04.220 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing doodad limit patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing unit/item limit patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing editor multi-instance patch +2022-03-24 22:46:04.220 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-24 22:46:04.220 [inject]-[trace] Installing attack table patch +2022-03-24 22:46:04.220 [inject]-[debug] Patches initialization completed. +2022-03-24 22:46:04.220 [inject]-[info ] YDWE startup complete. +2022-03-24 22:46:04.221 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-24 22:46:04.221 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-24 22:46:04.221 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-24 22:46:04.222 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-24 22:46:04.250 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-24 22:46:04.265 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-24 22:46:04.268 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-24 22:46:04.269 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-24 22:46:04.269 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-24 22:46:04.269 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-24 22:46:04.269 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-24 22:46:04.282 [lua]-[trace] Scanned file: 99 +2022-03-24 22:46:04.283 [lua]-[debug] ********************* on startup end ********************* +2022-03-24 22:46:04.791 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 22:46:04.864 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 22:46:05. 69 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-24 22:46:05.182 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-24 22:46:05.184 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-24 22:46:05.185 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-24 22:46:05.185 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-24 22:46:05.186 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-24 22:46:08.119 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-24 22:46:08.119 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-24 22:46:26.773 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:46:30.172 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-24 22:48:17.487 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 22:48:17.557 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff1.mdl +2022-03-24 22:48:17.661 [event]-[info ] 无法读取文件: Doodads\LordaeronSummer\Props\Trough\Trough0.mdl +2022-03-24 22:48:18.333 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:18.946 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:18.951 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:19.451 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:20. 36 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:20.244 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:20.675 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:20.679 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:21.172 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 22:48:22. 26 [event]-[info ] 无法读取文件: buildings\other\Mercenary\Mercenary.mdl +2022-03-24 22:48:22.131 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 22:48:22.135 [event]-[info ] 无法读取文件: buildings\undead\HauntedMine\HauntedMine.mdl +2022-03-24 22:48:25.483 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 22:48:25.483 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 22:48:25.483 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-03-24 22:48:25.679 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-24 22:48:25.703 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-24 22:48:25.826 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 01:46:34.500 [event]-[trace] WE is about to compile maps. +2022-03-25 01:46:37.169 [lua]-[debug] ********************* on save start ********************* +2022-03-25 01:46:37.170 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 01:46:37.170 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 01:46:37.170 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 01:46:37.170 [lua]-[trace] mpq_util.update_file. +2022-03-25 01:46:37.188 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 01:46:37.188 [lua]-[trace] Processing file.out +2022-03-25 01:46:37.346 [lua]-[trace] Writing code to file.out +2022-03-25 01:46:37.347 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 01:46:37.347 [lua]-[trace] Injection completed +2022-03-25 01:46:37.347 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 01:46:37.348 [lua]-[trace] Injection completed +2022-03-25 01:46:37.348 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 01:46:37.349 [lua]-[trace] Injection completed +2022-03-25 01:46:37.349 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 01:46:37.349 [lua]-[trace] Injection completed +2022-03-25 01:46:37.349 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 01:46:37.349 [lua]-[trace] Injection completed +2022-03-25 01:46:37.349 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 01:46:37.350 [lua]-[trace] Injection completed +2022-03-25 01:46:37.350 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 01:46:37.351 [lua]-[trace] Injection completed +2022-03-25 01:46:37.351 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.352 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 01:46:37.352 [lua]-[trace] Injection completed +2022-03-25 01:46:37.353 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 01:46:37.353 [lua]-[trace] Injection completed +2022-03-25 01:46:37.353 [lua]-[trace] Wave compilation start. +2022-03-25 01:46:37.801 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 01:46:39.628 [lua]-[trace] Template compilation start. +2022-03-25 01:46:39.669 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-25 01:46:39.734 [lua]-[trace] Initializing 'computed.order_list' +2022-03-25 01:46:39.791 [lua]-[trace] Initializing 'computed.order_id' +2022-03-25 01:46:39.800 [lua]-[trace] Initializing 'slk' +2022-03-25 01:46:39.956 [lua]-[trace] Initializing 'archive' +2022-03-25 01:46:39.957 [lua]-[trace] Initializing 'archive_mpq' +2022-03-25 01:46:39.958 [lua]-[trace] Initializing 'archive_dir' +2022-03-25 01:46:39.959 [lua]-[trace] Initializing 'ffi.sleep' +2022-03-25 01:46:39.960 [lua]-[trace] Initializing 'progress' +2022-03-25 01:46:39.960 [lua]-[trace] Initializing 'slk.frontend' +2022-03-25 01:46:39.961 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-03-25 01:46:39.962 [lua]-[trace] Initializing 'lpeg' +2022-03-25 01:46:40. 4 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-03-25 01:46:40.227 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-03-25 01:46:40.249 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-03-25 01:46:40.433 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-03-25 01:46:40.506 [lua]-[debug] Template compilation succeeded. +2022-03-25 01:46:40.534 [lua]-[trace] JassHelper compilation start. +2022-03-25 01:46:44.104 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 01:46:44.105 [lua]-[debug] Result true +2022-03-25 01:46:44.105 [lua]-[debug] ********************* on save end ********************* +2022-03-25 01:49:47.571 [event]-[trace] WE is about to compile maps. +2022-03-25 01:49:49.845 [lua]-[debug] ********************* on save start ********************* +2022-03-25 01:49:49.846 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 01:49:49.846 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 01:49:49.846 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 01:49:49.846 [lua]-[trace] mpq_util.update_file. +2022-03-25 01:49:49.852 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 01:49:49.852 [lua]-[trace] Processing file.out +2022-03-25 01:49:49.943 [lua]-[trace] Writing code to file.out +2022-03-25 01:49:49.943 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 01:49:49.944 [lua]-[trace] Injection completed +2022-03-25 01:49:49.944 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 01:49:49.945 [lua]-[trace] Injection completed +2022-03-25 01:49:49.945 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 01:49:49.946 [lua]-[trace] Injection completed +2022-03-25 01:49:49.946 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.947 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.947 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.947 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.947 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.947 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 01:49:49.947 [lua]-[trace] Injection completed +2022-03-25 01:49:49.948 [lua]-[trace] Wave compilation start. +2022-03-25 01:49:50.252 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 01:49:51.603 [lua]-[trace] Template compilation start. +2022-03-25 01:49:51.654 [lua]-[trace] Initializing 'slk' +2022-03-25 01:49:52.118 [lua]-[debug] Template compilation succeeded. +2022-03-25 01:49:52.142 [lua]-[trace] JassHelper compilation start. +2022-03-25 01:49:55.676 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 01:49:55.677 [lua]-[debug] Result true +2022-03-25 01:49:55.677 [lua]-[debug] ********************* on save end ********************* +2022-03-25 01:50:11.398 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe". +2022-03-25 01:50:14.104 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 01:50:18.943 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 01:55:19. 66 [event]-[trace] WE is about to compile maps. +2022-03-25 01:55:21.322 [lua]-[debug] ********************* on save start ********************* +2022-03-25 01:55:21.323 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 01:55:21.323 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 01:55:21.323 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 01:55:21.323 [lua]-[trace] mpq_util.update_file. +2022-03-25 01:55:21.329 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 01:55:21.329 [lua]-[trace] Processing file.out +2022-03-25 01:55:21.420 [lua]-[trace] Writing code to file.out +2022-03-25 01:55:21.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 01:55:21.421 [lua]-[trace] Injection completed +2022-03-25 01:55:21.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 01:55:21.421 [lua]-[trace] Injection completed +2022-03-25 01:55:21.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 01:55:21.421 [lua]-[trace] Injection completed +2022-03-25 01:55:21.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 01:55:21.421 [lua]-[trace] Injection completed +2022-03-25 01:55:21.421 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 01:55:21.422 [lua]-[trace] Injection completed +2022-03-25 01:55:21.422 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.423 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 01:55:21.423 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 01:55:21.424 [lua]-[trace] Injection completed +2022-03-25 01:55:21.424 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 01:55:21.425 [lua]-[trace] Injection completed +2022-03-25 01:55:21.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 01:55:21.425 [lua]-[trace] Injection completed +2022-03-25 01:55:21.425 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 01:55:21.425 [lua]-[trace] Injection completed +2022-03-25 01:55:21.425 [lua]-[trace] Wave compilation start. +2022-03-25 01:55:21.729 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 01:55:23.108 [lua]-[trace] Template compilation start. +2022-03-25 01:55:23.155 [lua]-[trace] Initializing 'slk' +2022-03-25 01:55:23.586 [lua]-[debug] Template compilation succeeded. +2022-03-25 01:55:23.711 [lua]-[trace] JassHelper compilation start. +2022-03-25 01:55:27.206 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 01:55:27.207 [lua]-[debug] Result true +2022-03-25 01:55:27.207 [lua]-[debug] ********************* on save end ********************* +2022-03-25 01:55:30.821 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 01:55:34.982 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 01:58:32. 87 [event]-[trace] WE is about to compile maps. +2022-03-25 01:58:34.264 [lua]-[debug] ********************* on save start ********************* +2022-03-25 01:58:34.265 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 01:58:34.265 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 01:58:34.265 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 01:58:34.265 [lua]-[trace] mpq_util.update_file. +2022-03-25 01:58:34.271 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 01:58:34.271 [lua]-[trace] Processing file.out +2022-03-25 01:58:34.364 [lua]-[trace] Writing code to file.out +2022-03-25 01:58:34.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 01:58:34.364 [lua]-[trace] Injection completed +2022-03-25 01:58:34.364 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.365 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 01:58:34.365 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 01:58:34.366 [lua]-[trace] Injection completed +2022-03-25 01:58:34.366 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 01:58:34.367 [lua]-[trace] Injection completed +2022-03-25 01:58:34.367 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 01:58:34.368 [lua]-[trace] Injection completed +2022-03-25 01:58:34.368 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 01:58:34.368 [lua]-[trace] Injection completed +2022-03-25 01:58:34.368 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 01:58:34.368 [lua]-[trace] Injection completed +2022-03-25 01:58:34.368 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 01:58:34.368 [lua]-[trace] Injection completed +2022-03-25 01:58:34.368 [lua]-[trace] Wave compilation start. +2022-03-25 01:58:34.670 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 01:58:36. 52 [lua]-[trace] Template compilation start. +2022-03-25 01:58:36.102 [lua]-[trace] Initializing 'slk' +2022-03-25 01:58:36.585 [lua]-[debug] Template compilation succeeded. +2022-03-25 01:58:36.609 [lua]-[trace] JassHelper compilation start. +2022-03-25 01:58:40.200 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 01:58:40.201 [lua]-[debug] Result true +2022-03-25 01:58:40.201 [lua]-[debug] ********************* on save end ********************* +2022-03-25 01:58:45.333 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 01:58:49.100 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 02:04:34.687 [event]-[trace] WE is about to compile maps. +2022-03-25 02:04:36.916 [lua]-[debug] ********************* on save start ********************* +2022-03-25 02:04:36.916 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 02:04:36.916 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 02:04:36.916 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 02:04:36.916 [lua]-[trace] mpq_util.update_file. +2022-03-25 02:04:36.923 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 02:04:36.923 [lua]-[trace] Processing file.out +2022-03-25 02:04:37. 15 [lua]-[trace] Writing code to file.out +2022-03-25 02:04:37. 16 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 02:04:37. 16 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 16 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 02:04:37. 16 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 16 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 02:04:37. 16 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 16 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 02:04:37. 17 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 17 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 02:04:37. 18 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 18 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 02:04:37. 19 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 19 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 02:04:37. 20 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 20 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 02:04:37. 20 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 20 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 02:04:37. 20 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 20 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 02:04:37. 20 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 20 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 02:04:37. 20 [lua]-[trace] Injection completed +2022-03-25 02:04:37. 20 [lua]-[trace] Wave compilation start. +2022-03-25 02:04:37.342 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 02:04:38.760 [lua]-[trace] Template compilation start. +2022-03-25 02:04:38.807 [lua]-[trace] Initializing 'slk' +2022-03-25 02:04:39.338 [lua]-[debug] Template compilation succeeded. +2022-03-25 02:04:39.363 [lua]-[trace] JassHelper compilation start. +2022-03-25 02:04:42.962 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 02:04:42.963 [lua]-[debug] Result true +2022-03-25 02:04:42.963 [lua]-[debug] ********************* on save end ********************* +2022-03-25 02:04:52.233 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 02:04:53.354 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 02:07:37.797 [event]-[trace] WE is about to compile maps. +2022-03-25 02:07:40.187 [lua]-[debug] ********************* on save start ********************* +2022-03-25 02:07:40.188 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 02:07:40.188 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 02:07:40.188 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 02:07:40.188 [lua]-[trace] mpq_util.update_file. +2022-03-25 02:07:40.196 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 02:07:40.196 [lua]-[trace] Processing file.out +2022-03-25 02:07:40.293 [lua]-[trace] Writing code to file.out +2022-03-25 02:07:40.294 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 02:07:40.294 [lua]-[trace] Injection completed +2022-03-25 02:07:40.294 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 02:07:40.294 [lua]-[trace] Injection completed +2022-03-25 02:07:40.294 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 02:07:40.294 [lua]-[trace] Injection completed +2022-03-25 02:07:40.294 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 02:07:40.295 [lua]-[trace] Injection completed +2022-03-25 02:07:40.295 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 02:07:40.296 [lua]-[trace] Injection completed +2022-03-25 02:07:40.296 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 02:07:40.297 [lua]-[trace] Injection completed +2022-03-25 02:07:40.297 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 02:07:40.298 [lua]-[trace] Injection completed +2022-03-25 02:07:40.298 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 02:07:40.298 [lua]-[trace] Injection completed +2022-03-25 02:07:40.298 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 02:07:40.298 [lua]-[trace] Injection completed +2022-03-25 02:07:40.298 [lua]-[trace] Wave compilation start. +2022-03-25 02:07:40.632 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 02:07:42. 79 [lua]-[trace] Template compilation start. +2022-03-25 02:07:42.127 [lua]-[trace] Initializing 'slk' +2022-03-25 02:07:42.592 [lua]-[debug] Template compilation succeeded. +2022-03-25 02:07:42.618 [lua]-[trace] JassHelper compilation start. +2022-03-25 02:07:46.371 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 02:07:46.372 [lua]-[debug] Result true +2022-03-25 02:07:46.372 [lua]-[debug] ********************* on save end ********************* +2022-03-25 02:11:09.925 [event]-[trace] WE is about to compile maps. +2022-03-25 02:11:12.213 [lua]-[debug] ********************* on save start ********************* +2022-03-25 02:11:12.214 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 02:11:12.214 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x +2022-03-25 02:11:12.214 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 02:11:12.214 [lua]-[trace] mpq_util.update_file. +2022-03-25 02:11:12.221 [lua]-[trace] war3map.j has been extracted from 人族2.6.0_G6.2.w3x +2022-03-25 02:11:12.221 [lua]-[trace] Processing file.out +2022-03-25 02:11:12.314 [lua]-[trace] Writing code to file.out +2022-03-25 02:11:12.314 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\BlizzardAPI.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersByMapControl.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\PauseAllUnitsBJ.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetItemOfTypeFromUnitBJ.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\EnumDestructablesInCircleBJ.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectOfPlayer.j +2022-03-25 02:11:12.315 [lua]-[trace] Injection completed +2022-03-25 02:11:12.315 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAndTypeId.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersEnemies.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersMatching.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectMatching.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\ReplaceUnitBJ.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetPlayersAllies.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsInRectAll.j +2022-03-25 02:11:12.316 [lua]-[trace] Injection completed +2022-03-25 02:11:12.316 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiUnit.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEAbilityState.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\IssueHauntOrderAtLocBJ.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetCurrentCameraSetup.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\TriggerRegisterEnterRectSimple.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfTypeIdAll.j +2022-03-25 02:11:12.317 [lua]-[trace] Injection completed +2022-03-25 02:11:12.317 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetForceOfPlayer.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\japi\YDWEJapiScript.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerAll.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\SetUnitFacingToFaceUnitTimed.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail\GetUnitsOfPlayerMatching.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 02:11:12.318 [lua]-[trace] Injection completed +2022-03-25 02:11:12.318 [lua]-[trace] Wave compilation start. +2022-03-25 02:11:12.643 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 02:11:14. 74 [lua]-[trace] Template compilation start. +2022-03-25 02:11:14.125 [lua]-[trace] Initializing 'slk' +2022-03-25 02:11:14.620 [lua]-[debug] Template compilation succeeded. +2022-03-25 02:11:14.645 [lua]-[trace] JassHelper compilation start. +2022-03-25 02:11:18.336 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\人族2.6.0_G6.2.w3x", returned 0 +2022-03-25 02:11:18.336 [lua]-[debug] Result true +2022-03-25 02:11:18.336 [lua]-[debug] ********************* on save end ********************* +2022-03-25 02:11:21.283 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 02:11:26.133 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\bin\YDWEConfig.exe" -launchwar3. +2022-03-25 15:11:20.823 [root]-[info ] ------------------------------------------------------ +2022-03-25 15:11:20.830 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 15:11:20.830 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 15:11:20.830 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 15:11:20.833 [root]-[debug] Initialize script engine successfully. +2022-03-25 15:11:20.833 [root]-[info ] Script engine startup complete. +2022-03-25 15:11:20.834 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 15:11:20.834 [lua]-[trace] Initializing 'sys' +2022-03-25 15:11:20.837 [lua]-[trace] Initializing 'filesystem' +2022-03-25 15:11:20.840 [lua]-[trace] Initializing 'gui' +2022-03-25 15:11:20.842 [lua]-[trace] Initializing 'util' +2022-03-25 15:11:20.842 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 15:11:20.843 [lua]-[trace] Initializing 'ffi' +2022-03-25 15:11:20.845 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 15:11:20.845 [lua]-[trace] Initializing 'event' +2022-03-25 15:11:20.850 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 15:11:20.857 [lua]-[trace] Initializing 'registry' +2022-03-25 15:11:20.858 [lua]-[trace] Initializing 'version' +2022-03-25 15:11:20.859 [lua]-[trace] Initializing 'localization' +2022-03-25 15:11:20.859 [lua]-[trace] Initializing 'i18n' +2022-03-25 15:11:20.862 [lua]-[trace] Initializing 'config' +2022-03-25 15:11:20.871 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:11:20.871 [lua]-[trace] Initializing 'plugin' +2022-03-25 15:11:20.872 [lua]-[trace] Initializing 'uiloader' +2022-03-25 15:11:20.873 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 15:11:20.874 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 15:11:20.874 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 15:11:20.875 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 15:11:20.876 [lua]-[trace] Initializing 'lni-c' +2022-03-25 15:11:20.878 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 15:11:20.878 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 15:11:20.879 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 15:11:20.879 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 15:11:20.882 [lua]-[trace] Initializing 'check_object' +2022-03-25 15:11:20.883 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 15:11:20.884 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 15:11:20.884 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 15:11:20.885 [event]-[trace] RegisterEvent id: 7 +2022-03-25 15:11:20.885 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 15:11:20.886 [event]-[trace] RegisterEvent id: 5 +2022-03-25 15:11:20.886 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 15:11:20.888 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 15:11:20.889 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 15:11:20.889 [lua]-[trace] Initializing 'compile.template' +2022-03-25 15:11:20.890 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 15:11:20.891 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 15:11:20.892 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 15:11:20.892 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 15:11:20.893 [lua]-[trace] Initializing 'compile.native' +2022-03-25 15:11:20.894 [event]-[trace] RegisterEvent id: 3 +2022-03-25 15:11:20.894 [event]-[trace] RegisterEvent id: 2 +2022-03-25 15:11:20.894 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 15:11:20.895 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 15:11:20.896 [lua]-[trace] Initializing 'utility' +2022-03-25 15:11:20.897 [lua]-[trace] Initializing 'mapdump' +2022-03-25 15:11:20.897 [event]-[trace] RegisterEvent id: 4 +2022-03-25 15:11:20.897 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 15:11:20.898 [event]-[trace] RegisterEvent id: 0 +2022-03-25 15:11:20.898 [event]-[trace] RegisterEvent id: 1 +2022-03-25 15:11:20.898 [event]-[trace] RegisterEvent id: 6 +2022-03-25 15:11:20.898 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 15:11:21. 45 [event]-[trace] RegisterEvent id: 8 +2022-03-25 15:11:21. 45 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 15:11:21. 46 [event]-[trace] RegisterEvent id: 9 +2022-03-25 15:11:21. 46 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 15:11:21. 52 [event]-[info ] Entering main program. +2022-03-25 15:11:21. 52 [event]-[debug] Command line: +2022-03-25 15:11:21. 55 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 15:11:21.119 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 15:11:21.119 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 15:11:21.120 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:11:21.120 [lua]-[trace] check_conflicting_ui +2022-03-25 15:11:21.120 [lua]-[trace] check_conflicting_units +2022-03-25 15:11:21.141 [lua]-[trace] clear_potential_conflicting +2022-03-25 15:11:21.142 [lua]-[trace] check_war3_version +2022-03-25 15:11:21.173 [lua]-[error] Cannot find war3.mpq +2022-03-25 15:11:21.181 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 15:11:21.240 [lua]-[debug] Tesh loaded successfully. +2022-03-25 15:11:21.278 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 15:11:21.280 [lua]-[debug] YDClient loaded successfully. +2022-03-25 15:11:21.280 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 15:11:21.294 [lua]-[warn ] failed: disable +2022-03-25 15:11:21.294 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 15:11:21.295 [lua]-[warn ] failed: disable +2022-03-25 15:11:21.295 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 15:11:21.296 [lua]-[warn ] failed: disable +2022-03-25 15:11:21.296 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 15:11:21.400 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 15:11:21.405 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 15:11:21.408 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 15:11:21.408 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 15:11:21.410 [inject]-[debug] Start installing inline hooks. +2022-03-25 15:11:21.410 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 15:11:21.410 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 15:11:21.410 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 15:11:21.410 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 15:11:21.410 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 15:11:21.410 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 15:11:21.410 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 15:11:21.411 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 15:11:21.411 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 15:11:21.411 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 15:11:21.411 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 15:11:21.411 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 15:11:21.411 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 15:11:21.411 [inject]-[debug] Installing inline hooks complete. +2022-03-25 15:11:21.411 [inject]-[debug] IAT hook initialization started. +2022-03-25 15:11:21.411 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 15:11:21.411 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 15:11:21.411 [inject]-[debug] IAT hook initialization completed. +2022-03-25 15:11:21.411 [inject]-[debug] Patches initialization started. +2022-03-25 15:11:21.411 [inject]-[trace] Installing syntax check patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing auto disable patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing enable trigger check patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 15:11:21.411 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing doodad limit patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing unit/item limit patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 15:11:21.411 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 15:11:21.411 [inject]-[trace] Installing attack table patch +2022-03-25 15:11:21.411 [inject]-[debug] Patches initialization completed. +2022-03-25 15:11:21.411 [inject]-[info ] YDWE startup complete. +2022-03-25 15:11:21.411 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 15:11:21.412 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 15:11:21.412 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 15:11:21.412 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 15:11:21.452 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 15:11:21.463 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 15:11:21.465 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 15:11:21.466 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 15:11:21.466 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 15:11:21.467 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 15:11:21.467 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 15:11:21.479 [lua]-[trace] Scanned file: 99 +2022-03-25 15:11:21.480 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 15:11:22.409 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 15:11:22.448 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 15:11:22.623 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 15:11:22.760 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 15:11:22.780 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 15:11:22.783 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 15:11:22.791 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 15:11:22.795 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 15:11:26.240 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 15:11:26.241 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 15:11:37.359 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:11:37.359 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:11:37.359 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:11:37.727 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 15:11:37.751 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 15:11:37.870 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 15:16:24.249 [root]-[info ] ------------------------------------------------------ +2022-03-25 15:16:24.300 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 15:16:24.300 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 15:16:24.300 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 15:16:24.300 [root]-[debug] Initialize script engine successfully. +2022-03-25 15:16:24.300 [root]-[info ] Script engine startup complete. +2022-03-25 15:16:24.301 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 15:16:24.301 [lua]-[trace] Initializing 'sys' +2022-03-25 15:16:24.302 [lua]-[trace] Initializing 'filesystem' +2022-03-25 15:16:24.303 [lua]-[trace] Initializing 'gui' +2022-03-25 15:16:24.304 [lua]-[trace] Initializing 'util' +2022-03-25 15:16:24.304 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 15:16:24.304 [lua]-[trace] Initializing 'ffi' +2022-03-25 15:16:24.305 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 15:16:24.306 [lua]-[trace] Initializing 'event' +2022-03-25 15:16:24.308 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 15:16:24.309 [lua]-[trace] Initializing 'registry' +2022-03-25 15:16:24.310 [lua]-[trace] Initializing 'version' +2022-03-25 15:16:24.311 [lua]-[trace] Initializing 'localization' +2022-03-25 15:16:24.311 [lua]-[trace] Initializing 'i18n' +2022-03-25 15:16:24.312 [lua]-[trace] Initializing 'config' +2022-03-25 15:16:24.313 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:16:24.313 [lua]-[trace] Initializing 'plugin' +2022-03-25 15:16:24.313 [lua]-[trace] Initializing 'uiloader' +2022-03-25 15:16:24.313 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 15:16:24.314 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 15:16:24.314 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 15:16:24.314 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 15:16:24.315 [lua]-[trace] Initializing 'lni-c' +2022-03-25 15:16:24.316 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 15:16:24.316 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 15:16:24.316 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 15:16:24.317 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 15:16:24.318 [lua]-[trace] Initializing 'check_object' +2022-03-25 15:16:24.319 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 15:16:24.320 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 15:16:24.320 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 15:16:24.320 [event]-[trace] RegisterEvent id: 7 +2022-03-25 15:16:24.321 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 15:16:24.321 [event]-[trace] RegisterEvent id: 5 +2022-03-25 15:16:24.321 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 15:16:24.321 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 15:16:24.322 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 15:16:24.322 [lua]-[trace] Initializing 'compile.template' +2022-03-25 15:16:24.323 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 15:16:24.323 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 15:16:24.323 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 15:16:24.324 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 15:16:24.324 [lua]-[trace] Initializing 'compile.native' +2022-03-25 15:16:24.325 [event]-[trace] RegisterEvent id: 3 +2022-03-25 15:16:24.325 [event]-[trace] RegisterEvent id: 2 +2022-03-25 15:16:24.325 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 15:16:24.325 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 15:16:24.325 [lua]-[trace] Initializing 'utility' +2022-03-25 15:16:24.326 [lua]-[trace] Initializing 'mapdump' +2022-03-25 15:16:24.326 [event]-[trace] RegisterEvent id: 4 +2022-03-25 15:16:24.326 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 15:16:24.326 [event]-[trace] RegisterEvent id: 0 +2022-03-25 15:16:24.327 [event]-[trace] RegisterEvent id: 1 +2022-03-25 15:16:24.327 [event]-[trace] RegisterEvent id: 6 +2022-03-25 15:16:24.327 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 15:16:24.471 [event]-[trace] RegisterEvent id: 8 +2022-03-25 15:16:24.471 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 15:16:24.472 [event]-[trace] RegisterEvent id: 9 +2022-03-25 15:16:24.472 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 15:16:24.475 [event]-[info ] Entering main program. +2022-03-25 15:16:24.475 [event]-[debug] Command line: +2022-03-25 15:16:24.480 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 15:16:24.481 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 15:16:24.481 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 15:16:24.482 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:16:24.482 [lua]-[trace] check_conflicting_ui +2022-03-25 15:16:24.482 [lua]-[trace] check_conflicting_units +2022-03-25 15:16:24.482 [lua]-[trace] clear_potential_conflicting +2022-03-25 15:16:24.483 [lua]-[trace] check_war3_version +2022-03-25 15:16:24.486 [lua]-[error] Cannot find war3.mpq +2022-03-25 15:16:24.490 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 15:16:24.506 [lua]-[debug] Tesh loaded successfully. +2022-03-25 15:16:24.528 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 15:16:24.530 [lua]-[debug] YDClient loaded successfully. +2022-03-25 15:16:24.530 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 15:16:24.530 [lua]-[warn ] failed: disable +2022-03-25 15:16:24.531 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 15:16:24.531 [lua]-[warn ] failed: disable +2022-03-25 15:16:24.531 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 15:16:24.532 [lua]-[warn ] failed: disable +2022-03-25 15:16:24.532 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 15:16:24.625 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 15:16:24.628 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 15:16:24.630 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 15:16:24.630 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 15:16:24.631 [inject]-[debug] Start installing inline hooks. +2022-03-25 15:16:24.631 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 15:16:24.631 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 15:16:24.631 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 15:16:24.631 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 15:16:24.631 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 15:16:24.631 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 15:16:24.631 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 15:16:24.631 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 15:16:24.631 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 15:16:24.631 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 15:16:24.632 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 15:16:24.632 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 15:16:24.632 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 15:16:24.632 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 15:16:24.632 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 15:16:24.632 [inject]-[debug] Installing inline hooks complete. +2022-03-25 15:16:24.632 [inject]-[debug] IAT hook initialization started. +2022-03-25 15:16:24.632 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 15:16:24.632 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 15:16:24.632 [inject]-[debug] IAT hook initialization completed. +2022-03-25 15:16:24.632 [inject]-[debug] Patches initialization started. +2022-03-25 15:16:24.632 [inject]-[trace] Installing syntax check patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing auto disable patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing enable trigger check patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 15:16:24.632 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing doodad limit patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing unit/item limit patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 15:16:24.632 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 15:16:24.632 [inject]-[trace] Installing attack table patch +2022-03-25 15:16:24.632 [inject]-[debug] Patches initialization completed. +2022-03-25 15:16:24.632 [inject]-[info ] YDWE startup complete. +2022-03-25 15:16:24.632 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 15:16:24.633 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 15:16:24.633 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 15:16:24.633 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 15:16:24.647 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 15:16:24.649 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 15:16:24.651 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 15:16:24.651 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 15:16:24.651 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 15:16:24.652 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 15:16:24.652 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 15:16:24.659 [lua]-[trace] Scanned file: 99 +2022-03-25 15:16:24.660 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 15:16:25.334 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 15:16:25.351 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 15:16:25.474 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 15:16:25.554 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 15:16:25.556 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 15:16:25.557 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 15:16:25.558 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 15:16:25.560 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 15:16:28.186 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 15:16:28.186 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 15:17:11.497 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:17:11.497 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:17:11.497 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 15:17:11.857 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 15:17:11.877 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 15:17:11.997 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 15:30:19.494 [root]-[info ] ------------------------------------------------------ +2022-03-25 15:30:19.498 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 15:30:19.498 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 15:30:19.498 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 15:30:19.498 [root]-[debug] Initialize script engine successfully. +2022-03-25 15:30:19.498 [root]-[info ] Script engine startup complete. +2022-03-25 15:30:19.499 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 15:30:19.499 [lua]-[trace] Initializing 'sys' +2022-03-25 15:30:19.500 [lua]-[trace] Initializing 'filesystem' +2022-03-25 15:30:19.501 [lua]-[trace] Initializing 'gui' +2022-03-25 15:30:19.502 [lua]-[trace] Initializing 'util' +2022-03-25 15:30:19.502 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 15:30:19.502 [lua]-[trace] Initializing 'ffi' +2022-03-25 15:30:19.503 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 15:30:19.504 [lua]-[trace] Initializing 'event' +2022-03-25 15:30:19.506 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 15:30:19.507 [lua]-[trace] Initializing 'registry' +2022-03-25 15:30:19.508 [lua]-[trace] Initializing 'version' +2022-03-25 15:30:19.509 [lua]-[trace] Initializing 'localization' +2022-03-25 15:30:19.509 [lua]-[trace] Initializing 'i18n' +2022-03-25 15:30:19.510 [lua]-[trace] Initializing 'config' +2022-03-25 15:30:19.511 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:30:19.511 [lua]-[trace] Initializing 'plugin' +2022-03-25 15:30:19.511 [lua]-[trace] Initializing 'uiloader' +2022-03-25 15:30:19.511 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 15:30:19.512 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 15:30:19.512 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 15:30:19.512 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 15:30:19.513 [lua]-[trace] Initializing 'lni-c' +2022-03-25 15:30:19.514 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 15:30:19.514 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 15:30:19.514 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 15:30:19.515 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 15:30:19.516 [lua]-[trace] Initializing 'check_object' +2022-03-25 15:30:19.517 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 15:30:19.517 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 15:30:19.517 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 15:30:19.518 [event]-[trace] RegisterEvent id: 7 +2022-03-25 15:30:19.518 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 15:30:19.518 [event]-[trace] RegisterEvent id: 5 +2022-03-25 15:30:19.518 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 15:30:19.519 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 15:30:19.519 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 15:30:19.520 [lua]-[trace] Initializing 'compile.template' +2022-03-25 15:30:19.520 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 15:30:19.520 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 15:30:19.521 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 15:30:19.521 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 15:30:19.522 [lua]-[trace] Initializing 'compile.native' +2022-03-25 15:30:19.522 [event]-[trace] RegisterEvent id: 3 +2022-03-25 15:30:19.522 [event]-[trace] RegisterEvent id: 2 +2022-03-25 15:30:19.522 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 15:30:19.523 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 15:30:19.523 [lua]-[trace] Initializing 'utility' +2022-03-25 15:30:19.523 [lua]-[trace] Initializing 'mapdump' +2022-03-25 15:30:19.524 [event]-[trace] RegisterEvent id: 4 +2022-03-25 15:30:19.524 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 15:30:19.524 [event]-[trace] RegisterEvent id: 0 +2022-03-25 15:30:19.524 [event]-[trace] RegisterEvent id: 1 +2022-03-25 15:30:19.524 [event]-[trace] RegisterEvent id: 6 +2022-03-25 15:30:19.524 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 15:30:19.667 [event]-[trace] RegisterEvent id: 8 +2022-03-25 15:30:19.667 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 15:30:19.668 [event]-[trace] RegisterEvent id: 9 +2022-03-25 15:30:19.668 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 15:30:19.672 [event]-[info ] Entering main program. +2022-03-25 15:30:19.672 [event]-[debug] Command line: +2022-03-25 15:30:19.676 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 15:30:19.677 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 15:30:19.677 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 15:30:19.677 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 15:30:19.677 [lua]-[trace] check_conflicting_ui +2022-03-25 15:30:19.677 [lua]-[trace] check_conflicting_units +2022-03-25 15:30:19.678 [lua]-[trace] clear_potential_conflicting +2022-03-25 15:30:19.678 [lua]-[trace] check_war3_version +2022-03-25 15:30:19.681 [lua]-[error] Cannot find war3.mpq +2022-03-25 15:30:19.685 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 15:30:19.696 [lua]-[debug] Tesh loaded successfully. +2022-03-25 15:30:19.717 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 15:30:19.719 [lua]-[debug] YDClient loaded successfully. +2022-03-25 15:30:19.719 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 15:30:19.719 [lua]-[warn ] failed: disable +2022-03-25 15:30:19.720 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 15:30:19.720 [lua]-[warn ] failed: disable +2022-03-25 15:30:19.720 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 15:30:19.721 [lua]-[warn ] failed: disable +2022-03-25 15:30:19.721 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 15:30:19.811 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 15:30:19.814 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 15:30:19.815 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 15:30:19.816 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 15:30:19.817 [inject]-[debug] Start installing inline hooks. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 15:30:19.817 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 15:30:19.817 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 15:30:19.817 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 15:30:19.817 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 15:30:19.817 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 15:30:19.817 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 15:30:19.817 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 15:30:19.817 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 15:30:19.817 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 15:30:19.817 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 15:30:19.817 [inject]-[debug] Installing inline hooks complete. +2022-03-25 15:30:19.817 [inject]-[debug] IAT hook initialization started. +2022-03-25 15:30:19.817 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 15:30:19.817 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 15:30:19.818 [inject]-[debug] IAT hook initialization completed. +2022-03-25 15:30:19.818 [inject]-[debug] Patches initialization started. +2022-03-25 15:30:19.818 [inject]-[trace] Installing syntax check patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing auto disable patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing enable trigger check patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 15:30:19.818 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing doodad limit patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing unit/item limit patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 15:30:19.818 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 15:30:19.818 [inject]-[trace] Installing attack table patch +2022-03-25 15:30:19.818 [inject]-[debug] Patches initialization completed. +2022-03-25 15:30:19.818 [inject]-[info ] YDWE startup complete. +2022-03-25 15:30:19.818 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 15:30:19.818 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 15:30:19.818 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 15:30:19.819 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 15:30:19.834 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 15:30:19.836 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 15:30:19.838 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 15:30:19.838 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 15:30:19.838 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 15:30:19.839 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 15:30:19.839 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 15:30:19.847 [lua]-[trace] Scanned file: 99 +2022-03-25 15:30:19.848 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 15:30:20.491 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 15:30:20.508 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 15:30:20.628 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 15:30:20.704 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 15:30:20.706 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 15:30:20.707 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 15:30:20.708 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 15:30:20.710 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 15:30:23.241 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 15:30:23.241 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 16:17:34.909 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:17:34.910 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:17:34.910 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:17:34.911 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:17:34.911 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:17:34.911 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:17:34.911 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:17:34.911 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:17:34.911 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:17:34.912 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:17:34.912 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:17:34.912 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:17:34.912 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:17:34.912 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:17:34.912 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:17:34.912 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:17:34.912 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:17:34.912 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:17:34.912 [event]-[info ] Main program exit. +2022-03-25 16:17:35. 97 [root]-[info ] Script engine has been shut down. +2022-03-25 16:17:38.207 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:17:38.207 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:17:38.207 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:17:38.208 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:17:38.211 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:17:38.211 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:17:38.211 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:17:38.211 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:17:38.211 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:17:38.211 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:17:38.211 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:17:38.211 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:17:38.211 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:17:38.211 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:17:38.211 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:17:38.212 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:17:38.212 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:17:38.212 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:17:38.212 [event]-[info ] Main program exit. +2022-03-25 16:17:38.373 [root]-[info ] Script engine has been shut down. +2022-03-25 16:19:29.634 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:19:29.634 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:19:29.637 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:19:29.638 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:19:29.638 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:19:29.638 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:19:29.638 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:19:29.638 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:19:29.638 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:19:29.638 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:19:29.638 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:19:29.638 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:19:29.638 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:19:29.638 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:19:29.638 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:19:29.638 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:19:29.638 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:19:29.638 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:19:29.638 [event]-[info ] Main program exit. +2022-03-25 16:19:29.809 [root]-[info ] Script engine has been shut down. +2022-03-25 16:20:24.660 [root]-[info ] ------------------------------------------------------ +2022-03-25 16:20:24.665 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 16:20:24.665 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 16:20:24.665 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 16:20:24.665 [root]-[debug] Initialize script engine successfully. +2022-03-25 16:20:24.665 [root]-[info ] Script engine startup complete. +2022-03-25 16:20:24.665 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 16:20:24.665 [lua]-[trace] Initializing 'sys' +2022-03-25 16:20:24.667 [lua]-[trace] Initializing 'filesystem' +2022-03-25 16:20:24.668 [lua]-[trace] Initializing 'gui' +2022-03-25 16:20:24.668 [lua]-[trace] Initializing 'util' +2022-03-25 16:20:24.669 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 16:20:24.669 [lua]-[trace] Initializing 'ffi' +2022-03-25 16:20:24.670 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 16:20:24.670 [lua]-[trace] Initializing 'event' +2022-03-25 16:20:24.673 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 16:20:24.675 [lua]-[trace] Initializing 'registry' +2022-03-25 16:20:24.676 [lua]-[trace] Initializing 'version' +2022-03-25 16:20:24.676 [lua]-[trace] Initializing 'localization' +2022-03-25 16:20:24.676 [lua]-[trace] Initializing 'i18n' +2022-03-25 16:20:24.677 [lua]-[trace] Initializing 'config' +2022-03-25 16:20:24.678 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:20:24.678 [lua]-[trace] Initializing 'plugin' +2022-03-25 16:20:24.678 [lua]-[trace] Initializing 'uiloader' +2022-03-25 16:20:24.679 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 16:20:24.679 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 16:20:24.680 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 16:20:24.680 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 16:20:24.680 [lua]-[trace] Initializing 'lni-c' +2022-03-25 16:20:24.681 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 16:20:24.682 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 16:20:24.682 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 16:20:24.682 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 16:20:24.684 [lua]-[trace] Initializing 'check_object' +2022-03-25 16:20:24.685 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 16:20:24.685 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 16:20:24.685 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 16:20:24.686 [event]-[trace] RegisterEvent id: 7 +2022-03-25 16:20:24.686 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 16:20:24.686 [event]-[trace] RegisterEvent id: 5 +2022-03-25 16:20:24.686 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 16:20:24.687 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 16:20:24.687 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 16:20:24.688 [lua]-[trace] Initializing 'compile.template' +2022-03-25 16:20:24.688 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 16:20:24.688 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 16:20:24.689 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 16:20:24.689 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 16:20:24.690 [lua]-[trace] Initializing 'compile.native' +2022-03-25 16:20:24.690 [event]-[trace] RegisterEvent id: 3 +2022-03-25 16:20:24.690 [event]-[trace] RegisterEvent id: 2 +2022-03-25 16:20:24.690 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 16:20:24.691 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 16:20:24.691 [lua]-[trace] Initializing 'utility' +2022-03-25 16:20:24.691 [lua]-[trace] Initializing 'mapdump' +2022-03-25 16:20:24.692 [event]-[trace] RegisterEvent id: 4 +2022-03-25 16:20:24.692 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 16:20:24.692 [event]-[trace] RegisterEvent id: 0 +2022-03-25 16:20:24.692 [event]-[trace] RegisterEvent id: 1 +2022-03-25 16:20:24.692 [event]-[trace] RegisterEvent id: 6 +2022-03-25 16:20:24.692 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 16:20:24.860 [event]-[trace] RegisterEvent id: 8 +2022-03-25 16:20:24.860 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 16:20:24.861 [event]-[trace] RegisterEvent id: 9 +2022-03-25 16:20:24.861 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 16:20:24.865 [event]-[info ] Entering main program. +2022-03-25 16:20:24.865 [event]-[debug] Command line: +2022-03-25 16:20:24.869 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 16:20:24.870 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 16:20:24.870 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 16:20:24.870 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:20:24.870 [lua]-[trace] check_conflicting_ui +2022-03-25 16:20:24.871 [lua]-[trace] check_conflicting_units +2022-03-25 16:20:24.871 [lua]-[trace] clear_potential_conflicting +2022-03-25 16:20:24.871 [lua]-[trace] check_war3_version +2022-03-25 16:20:24.875 [lua]-[error] Cannot find war3.mpq +2022-03-25 16:20:24.878 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 16:20:24.892 [lua]-[debug] Tesh loaded successfully. +2022-03-25 16:20:24.918 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 16:20:24.920 [lua]-[debug] YDClient loaded successfully. +2022-03-25 16:20:24.920 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 16:20:24.921 [lua]-[warn ] failed: disable +2022-03-25 16:20:24.921 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 16:20:24.922 [lua]-[warn ] failed: disable +2022-03-25 16:20:24.922 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 16:20:24.922 [lua]-[warn ] failed: disable +2022-03-25 16:20:24.923 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 16:20:25. 15 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 16:20:25. 18 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 16:20:25. 20 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 16:20:25. 20 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 16:20:25. 22 [inject]-[debug] Start installing inline hooks. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 16:20:25. 22 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 16:20:25. 22 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 16:20:25. 22 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 16:20:25. 22 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 16:20:25. 22 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 16:20:25. 22 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 16:20:25. 22 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 16:20:25. 22 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 16:20:25. 22 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 16:20:25. 22 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 16:20:25. 22 [inject]-[debug] Installing inline hooks complete. +2022-03-25 16:20:25. 22 [inject]-[debug] IAT hook initialization started. +2022-03-25 16:20:25. 22 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 16:20:25. 22 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 16:20:25. 22 [inject]-[debug] IAT hook initialization completed. +2022-03-25 16:20:25. 22 [inject]-[debug] Patches initialization started. +2022-03-25 16:20:25. 22 [inject]-[trace] Installing syntax check patch +2022-03-25 16:20:25. 22 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 16:20:25. 22 [inject]-[trace] Installing auto disable patch +2022-03-25 16:20:25. 22 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 16:20:25. 22 [inject]-[trace] Installing enable trigger check patch +2022-03-25 16:20:25. 22 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 16:20:25. 22 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 16:20:25. 22 [inject]-[trace] Installing doodad limit patch +2022-03-25 16:20:25. 22 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 16:20:25. 22 [inject]-[trace] Installing unit/item limit patch +2022-03-25 16:20:25. 22 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 16:20:25. 23 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 16:20:25. 23 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 16:20:25. 23 [inject]-[trace] Installing attack table patch +2022-03-25 16:20:25. 23 [inject]-[debug] Patches initialization completed. +2022-03-25 16:20:25. 23 [inject]-[info ] YDWE startup complete. +2022-03-25 16:20:25. 23 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 16:20:25. 23 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 16:20:25. 23 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 16:20:25. 24 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 16:20:25. 40 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 16:20:25. 42 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 16:20:25. 45 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 16:20:25. 45 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 16:20:25. 45 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 16:20:25. 46 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 16:20:25. 46 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 16:20:25. 55 [lua]-[trace] Scanned file: 99 +2022-03-25 16:20:25. 56 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 16:20:25.788 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:20:25.813 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:20:25.958 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:20:26. 45 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 16:20:26. 48 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 16:20:26. 49 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 16:20:26. 49 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 16:20:26. 51 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 16:20:28.950 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 16:20:28.950 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 16:23:33.750 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:23:33.750 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:23:33.750 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:23:34.143 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:23:34.198 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:23:34.407 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:32:35.612 [event]-[trace] WE is about to compile maps. +2022-03-25 16:32:35.654 [lua]-[debug] ********************* on save start ********************* +2022-03-25 16:32:35.671 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:32:35.671 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\0.w3x +2022-03-25 16:32:35.671 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 16:32:35.671 [lua]-[trace] mpq_util.update_file. +2022-03-25 16:32:35.695 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-03-25 16:32:35.695 [lua]-[trace] Processing file.out +2022-03-25 16:32:35.696 [lua]-[trace] Writing code to file.out +2022-03-25 16:32:35.696 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 16:32:35.713 [lua]-[trace] Injection completed +2022-03-25 16:32:35.713 [lua]-[trace] Wave compilation start. +2022-03-25 16:32:36. 98 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 16:32:36.361 [lua]-[trace] Template compilation start. +2022-03-25 16:32:36.362 [lua]-[trace] Initializing 'computed.ability2order' +2022-03-25 16:32:36.367 [lua]-[trace] Initializing 'computed.order_list' +2022-03-25 16:32:36.369 [lua]-[trace] Initializing 'computed.order_id' +2022-03-25 16:32:36.371 [lua]-[debug] Template compilation succeeded. +2022-03-25 16:32:36.385 [lua]-[trace] JassHelper compilation start. +2022-03-25 16:32:39. 81 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\0.w3x", returned 0 +2022-03-25 16:32:39. 82 [lua]-[debug] Result true +2022-03-25 16:32:39. 82 [lua]-[debug] ********************* on save end ********************* +2022-03-25 16:33:00.161 [event]-[trace] WE is about to compile maps. +2022-03-25 16:33:00.186 [lua]-[debug] ********************* on save start ********************* +2022-03-25 16:33:00.187 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:33:00.187 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\0.w3x +2022-03-25 16:33:00.187 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 16:33:00.187 [lua]-[trace] mpq_util.update_file. +2022-03-25 16:33:00.188 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-03-25 16:33:00.188 [lua]-[trace] Processing file.out +2022-03-25 16:33:00.189 [lua]-[trace] Writing code to file.out +2022-03-25 16:33:00.189 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 16:33:00.190 [lua]-[trace] Injection completed +2022-03-25 16:33:00.190 [lua]-[trace] Wave compilation start. +2022-03-25 16:33:00.508 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 16:33:00.639 [lua]-[trace] Template compilation start. +2022-03-25 16:33:00.644 [lua]-[debug] Template compilation succeeded. +2022-03-25 16:33:00.646 [lua]-[trace] JassHelper compilation start. +2022-03-25 16:33:02.897 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\0.w3x", returned 0 +2022-03-25 16:33:02.897 [lua]-[debug] Result true +2022-03-25 16:33:02.897 [lua]-[debug] ********************* on save end ********************* +2022-03-25 16:33:25.114 [event]-[trace] WE is about to compile maps. +2022-03-25 16:33:25.136 [lua]-[debug] ********************* on save start ********************* +2022-03-25 16:33:25.137 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:33:25.137 [lua]-[trace] Saving H:\WarcraftIII\Maps\smdl\0.w3x +2022-03-25 16:33:25.137 [lua]-[trace] Save version 1.27.0.52240 +2022-03-25 16:33:25.137 [lua]-[trace] mpq_util.update_file. +2022-03-25 16:33:25.137 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-03-25 16:33:25.137 [lua]-[trace] Processing file.out +2022-03-25 16:33:25.138 [lua]-[trace] Writing code to file.out +2022-03-25 16:33:25.139 [lua]-[trace] Injecting F:\MapJ\官方编辑器 - 副本\jass\DzAPI.j +2022-03-25 16:33:25.139 [lua]-[trace] Injection completed +2022-03-25 16:33:25.139 [lua]-[trace] Wave compilation start. +2022-03-25 16:33:25.461 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin\wave\include" --sysinclude="F:\MapJ\官方编辑器 - 副本\plugin" --include="H:\WarcraftIII\Maps\smdl" --include="F:\MapJ\官方编辑器 - 副本\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\MapJ\官方编辑器 - 副本\logs\file.out". +2022-03-25 16:33:25.588 [lua]-[trace] Template compilation start. +2022-03-25 16:33:25.591 [lua]-[debug] Template compilation succeeded. +2022-03-25 16:33:25.592 [lua]-[trace] JassHelper compilation start. +2022-03-25 16:33:27.830 [lua]-[trace] Executed "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\common.j" "F:\MapJ\官方编辑器 - 副本\plugin\jasshelper\blizzard.j" "H:\WarcraftIII\Maps\smdl\0.w3x", returned 0 +2022-03-25 16:33:27.831 [lua]-[debug] Result true +2022-03-25 16:33:27.831 [lua]-[debug] ********************* on save end ********************* +2022-03-25 16:33:30. 48 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:33:30. 48 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:33:30. 50 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:33:30. 50 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:33:30. 50 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:33:30. 50 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:33:30. 50 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:33:30. 50 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:33:30. 50 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:33:30. 50 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:33:30. 50 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:33:30. 50 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:33:30. 50 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:33:30. 50 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:33:30. 56 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:33:30. 56 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:33:30. 56 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:33:30. 56 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:33:30. 56 [event]-[info ] Main program exit. +2022-03-25 16:33:30.272 [root]-[info ] Script engine has been shut down. +2022-03-25 16:33:47.134 [root]-[info ] ------------------------------------------------------ +2022-03-25 16:33:47.138 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 16:33:47.138 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 16:33:47.138 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 16:33:47.138 [root]-[debug] Initialize script engine successfully. +2022-03-25 16:33:47.138 [root]-[info ] Script engine startup complete. +2022-03-25 16:33:47.139 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 16:33:47.139 [lua]-[trace] Initializing 'sys' +2022-03-25 16:33:47.151 [lua]-[trace] Initializing 'filesystem' +2022-03-25 16:33:47.153 [lua]-[trace] Initializing 'gui' +2022-03-25 16:33:47.154 [lua]-[trace] Initializing 'util' +2022-03-25 16:33:47.155 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 16:33:47.156 [lua]-[trace] Initializing 'ffi' +2022-03-25 16:33:47.158 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 16:33:47.158 [lua]-[trace] Initializing 'event' +2022-03-25 16:33:47.162 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 16:33:47.165 [lua]-[trace] Initializing 'registry' +2022-03-25 16:33:47.167 [lua]-[trace] Initializing 'version' +2022-03-25 16:33:47.167 [lua]-[trace] Initializing 'localization' +2022-03-25 16:33:47.168 [lua]-[trace] Initializing 'i18n' +2022-03-25 16:33:47.170 [lua]-[trace] Initializing 'config' +2022-03-25 16:33:47.171 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:33:47.171 [lua]-[trace] Initializing 'plugin' +2022-03-25 16:33:47.171 [lua]-[trace] Initializing 'uiloader' +2022-03-25 16:33:47.172 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 16:33:47.173 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 16:33:47.173 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 16:33:47.174 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 16:33:47.174 [lua]-[trace] Initializing 'lni-c' +2022-03-25 16:33:47.176 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 16:33:47.177 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 16:33:47.177 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 16:33:47.178 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 16:33:47.185 [lua]-[trace] Initializing 'check_object' +2022-03-25 16:33:47.192 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 16:33:47.193 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 16:33:47.194 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 16:33:47.194 [event]-[trace] RegisterEvent id: 7 +2022-03-25 16:33:47.195 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 16:33:47.195 [event]-[trace] RegisterEvent id: 5 +2022-03-25 16:33:47.195 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 16:33:47.196 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 16:33:47.197 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 16:33:47.198 [lua]-[trace] Initializing 'compile.template' +2022-03-25 16:33:47.198 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 16:33:47.199 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 16:33:47.200 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 16:33:47.200 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 16:33:47.201 [lua]-[trace] Initializing 'compile.native' +2022-03-25 16:33:47.202 [event]-[trace] RegisterEvent id: 3 +2022-03-25 16:33:47.202 [event]-[trace] RegisterEvent id: 2 +2022-03-25 16:33:47.202 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 16:33:47.203 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 16:33:47.218 [lua]-[trace] Initializing 'utility' +2022-03-25 16:33:47.218 [lua]-[trace] Initializing 'mapdump' +2022-03-25 16:33:47.219 [event]-[trace] RegisterEvent id: 4 +2022-03-25 16:33:47.219 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 16:33:47.220 [event]-[trace] RegisterEvent id: 0 +2022-03-25 16:33:47.220 [event]-[trace] RegisterEvent id: 1 +2022-03-25 16:33:47.220 [event]-[trace] RegisterEvent id: 6 +2022-03-25 16:33:47.220 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 16:33:47.371 [event]-[trace] RegisterEvent id: 8 +2022-03-25 16:33:47.371 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 16:33:47.372 [event]-[trace] RegisterEvent id: 9 +2022-03-25 16:33:47.372 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 16:33:47.458 [event]-[info ] Entering main program. +2022-03-25 16:33:47.458 [event]-[debug] Command line: +2022-03-25 16:33:47.461 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 16:33:47.521 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 16:33:47.521 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 16:33:47.521 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:33:47.521 [lua]-[trace] check_conflicting_ui +2022-03-25 16:33:47.521 [lua]-[trace] check_conflicting_units +2022-03-25 16:33:47.522 [lua]-[trace] clear_potential_conflicting +2022-03-25 16:33:47.522 [lua]-[trace] check_war3_version +2022-03-25 16:33:47.530 [lua]-[error] Cannot find war3.mpq +2022-03-25 16:33:47.534 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 16:33:47.576 [lua]-[debug] Tesh loaded successfully. +2022-03-25 16:33:47.598 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 16:33:47.600 [lua]-[debug] YDClient loaded successfully. +2022-03-25 16:33:47.600 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 16:33:47.601 [lua]-[warn ] failed: disable +2022-03-25 16:33:47.602 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 16:33:47.602 [lua]-[warn ] failed: disable +2022-03-25 16:33:47.603 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 16:33:47.603 [lua]-[warn ] failed: disable +2022-03-25 16:33:47.603 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 16:33:47.706 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 16:33:47.709 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 16:33:47.711 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 16:33:47.711 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 16:33:47.713 [inject]-[debug] Start installing inline hooks. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 16:33:47.713 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 16:33:47.713 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 16:33:47.713 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 16:33:47.713 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 16:33:47.713 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 16:33:47.713 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 16:33:47.713 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 16:33:47.713 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 16:33:47.714 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 16:33:47.714 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 16:33:47.714 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 16:33:47.714 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 16:33:47.714 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 16:33:47.714 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 16:33:47.714 [inject]-[debug] Installing inline hooks complete. +2022-03-25 16:33:47.714 [inject]-[debug] IAT hook initialization started. +2022-03-25 16:33:47.714 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 16:33:47.714 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 16:33:47.714 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 16:33:47.714 [inject]-[debug] IAT hook initialization completed. +2022-03-25 16:33:47.714 [inject]-[debug] Patches initialization started. +2022-03-25 16:33:47.714 [inject]-[trace] Installing syntax check patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing auto disable patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing enable trigger check patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 16:33:47.714 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing doodad limit patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing unit/item limit patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 16:33:47.714 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 16:33:47.714 [inject]-[trace] Installing attack table patch +2022-03-25 16:33:47.714 [inject]-[debug] Patches initialization completed. +2022-03-25 16:33:47.714 [inject]-[info ] YDWE startup complete. +2022-03-25 16:33:47.714 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 16:33:47.715 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 16:33:47.715 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 16:33:47.715 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 16:33:47.730 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 16:33:47.742 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 16:33:47.744 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 16:33:47.744 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 16:33:47.744 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 16:33:47.744 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 16:33:47.745 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 16:33:47.753 [lua]-[trace] Scanned file: 99 +2022-03-25 16:33:47.754 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 16:33:48.483 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:33:48.500 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:33:48.621 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:33:48.700 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 16:33:48.730 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 16:33:48.732 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 16:33:48.733 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 16:33:48.734 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 16:33:51.362 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 16:33:51.362 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 16:34:39.314 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:34:39.314 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:34:39.314 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:34:39.669 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:34:39.688 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:34:39.809 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:36:42.250 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:36:42.250 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:36:42.250 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:36:42.250 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:36:42.250 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:36:42.250 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:36:42.250 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:36:42.250 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:36:42.250 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:36:42.251 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:36:42.251 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:36:42.251 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:36:42.251 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:36:42.251 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:36:42.251 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:36:42.254 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:36:42.254 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:36:42.254 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:36:42.254 [event]-[info ] Main program exit. +2022-03-25 16:36:42.407 [root]-[info ] Script engine has been shut down. +2022-03-25 16:36:45.580 [root]-[info ] ------------------------------------------------------ +2022-03-25 16:36:45.584 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-03-25 16:36:45.584 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-03-25 16:36:45.584 [root]-[info ] Windows version: 10.0.19041 +2022-03-25 16:36:45.585 [root]-[debug] Initialize script engine successfully. +2022-03-25 16:36:45.585 [root]-[info ] Script engine startup complete. +2022-03-25 16:36:45.585 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-03-25 16:36:45.585 [lua]-[trace] Initializing 'sys' +2022-03-25 16:36:45.586 [lua]-[trace] Initializing 'filesystem' +2022-03-25 16:36:45.587 [lua]-[trace] Initializing 'gui' +2022-03-25 16:36:45.588 [lua]-[trace] Initializing 'util' +2022-03-25 16:36:45.588 [lua]-[trace] Initializing 'ffi.unicode' +2022-03-25 16:36:45.588 [lua]-[trace] Initializing 'ffi' +2022-03-25 16:36:45.590 [lua]-[debug] ydwe path F:\MapJ\官方编辑器 - 副本 +2022-03-25 16:36:45.590 [lua]-[trace] Initializing 'event' +2022-03-25 16:36:45.592 [lua]-[trace] Initializing 'virtual_mpq' +2022-03-25 16:36:45.594 [lua]-[trace] Initializing 'registry' +2022-03-25 16:36:45.595 [lua]-[trace] Initializing 'version' +2022-03-25 16:36:45.595 [lua]-[trace] Initializing 'localization' +2022-03-25 16:36:45.595 [lua]-[trace] Initializing 'i18n' +2022-03-25 16:36:45.596 [lua]-[trace] Initializing 'config' +2022-03-25 16:36:45.597 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:36:45.597 [lua]-[trace] Initializing 'plugin' +2022-03-25 16:36:45.598 [lua]-[trace] Initializing 'uiloader' +2022-03-25 16:36:45.598 [lua]-[trace] Initializing 'stringify_slk' +2022-03-25 16:36:45.598 [lua]-[trace] Initializing 'ui-builder.init' +2022-03-25 16:36:45.599 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-03-25 16:36:45.599 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-03-25 16:36:45.599 [lua]-[trace] Initializing 'lni-c' +2022-03-25 16:36:45.600 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-03-25 16:36:45.601 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-03-25 16:36:45.601 [lua]-[trace] Initializing 'ui-builder.merge' +2022-03-25 16:36:45.601 [lua]-[trace] Initializing 'w3xparser' +2022-03-25 16:36:45.603 [lua]-[trace] Initializing 'check_object' +2022-03-25 16:36:45.603 [lua]-[trace] Initializing 'ffi.storm' +2022-03-25 16:36:45.604 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-03-25 16:36:45.604 [lua]-[trace] Initializing 'ffi.gui' +2022-03-25 16:36:45.604 [event]-[trace] RegisterEvent id: 7 +2022-03-25 16:36:45.605 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-03-25 16:36:45.605 [event]-[trace] RegisterEvent id: 5 +2022-03-25 16:36:45.605 [lua]-[trace] Initializing 'ydwe_on_save' +2022-03-25 16:36:45.606 [lua]-[trace] Initializing 'compile.inject_code' +2022-03-25 16:36:45.606 [lua]-[trace] Initializing 'compile.wave' +2022-03-25 16:36:45.607 [lua]-[trace] Initializing 'compile.template' +2022-03-25 16:36:45.607 [lua]-[trace] Initializing 'compile.cjass' +2022-03-25 16:36:45.607 [lua]-[trace] Initializing 'compile.jasshelper' +2022-03-25 16:36:45.608 [lua]-[trace] Initializing 'mpq_util' +2022-03-25 16:36:45.608 [lua]-[trace] Initializing 'ffi.stormlib' +2022-03-25 16:36:45.608 [lua]-[trace] Initializing 'compile.native' +2022-03-25 16:36:45.609 [event]-[trace] RegisterEvent id: 3 +2022-03-25 16:36:45.609 [event]-[trace] RegisterEvent id: 2 +2022-03-25 16:36:45.609 [lua]-[trace] Initializing 'ydwe_on_test' +2022-03-25 16:36:45.609 [lua]-[trace] Initializing 'w3x2lni' +2022-03-25 16:36:45.610 [lua]-[trace] Initializing 'utility' +2022-03-25 16:36:45.610 [lua]-[trace] Initializing 'mapdump' +2022-03-25 16:36:45.610 [event]-[trace] RegisterEvent id: 4 +2022-03-25 16:36:45.610 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-03-25 16:36:45.611 [event]-[trace] RegisterEvent id: 0 +2022-03-25 16:36:45.611 [event]-[trace] RegisterEvent id: 1 +2022-03-25 16:36:45.611 [event]-[trace] RegisterEvent id: 6 +2022-03-25 16:36:45.611 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-03-25 16:36:45.758 [event]-[trace] RegisterEvent id: 8 +2022-03-25 16:36:45.758 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-03-25 16:36:45.758 [event]-[trace] RegisterEvent id: 9 +2022-03-25 16:36:45.758 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-03-25 16:36:45.811 [event]-[info ] Entering main program. +2022-03-25 16:36:45.811 [event]-[debug] Command line: +2022-03-25 16:36:45.815 [lua]-[debug] ********************* on startup start ********************* +2022-03-25 16:36:45.816 [lua]-[debug] ydwe version 0.0.0.0 +2022-03-25 16:36:45.816 [lua]-[debug] war3 version 1.27.0.52240 +2022-03-25 16:36:45.817 [lua]-[debug] war3 path H:\WarcraftIII +2022-03-25 16:36:45.817 [lua]-[trace] check_conflicting_ui +2022-03-25 16:36:45.817 [lua]-[trace] check_conflicting_units +2022-03-25 16:36:45.817 [lua]-[trace] clear_potential_conflicting +2022-03-25 16:36:45.818 [lua]-[trace] check_war3_version +2022-03-25 16:36:45.822 [lua]-[error] Cannot find war3.mpq +2022-03-25 16:36:45.825 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\tesh\Tesh.plcfg +2022-03-25 16:36:45.837 [lua]-[debug] Tesh loaded successfully. +2022-03-25 16:36:45.859 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDClient.plcfg +2022-03-25 16:36:45.860 [lua]-[debug] YDClient loaded successfully. +2022-03-25 16:36:45.860 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDColorizer\YDColorizer.plcfg +2022-03-25 16:36:45.861 [lua]-[warn ] failed: disable +2022-03-25 16:36:45.862 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDFont\YDFont.plcfg +2022-03-25 16:36:45.862 [lua]-[warn ] failed: disable +2022-03-25 16:36:45.863 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDInternalIdShow.plcfg +2022-03-25 16:36:45.863 [lua]-[warn ] failed: disable +2022-03-25 16:36:45.863 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTaskbarSupport.plcfg +2022-03-25 16:36:45.946 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-03-25 16:36:45.950 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDTrigger.plcfg +2022-03-25 16:36:45.951 [lua]-[debug] YDTrigger loaded successfully. +2022-03-25 16:36:45.951 [lua]-[trace] Load plugin config F:\MapJ\官方编辑器 - 副本\plugin\YDWeHelper.plcfg +2022-03-25 16:36:45.953 [inject]-[debug] Start installing inline hooks. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-03-25 16:36:45.953 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-03-25 16:36:45.953 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-03-25 16:36:45.953 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-03-25 16:36:45.953 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-03-25 16:36:45.953 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-03-25 16:36:45.953 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-03-25 16:36:45.953 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-03-25 16:36:45.953 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-03-25 16:36:45.953 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-03-25 16:36:45.953 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-03-25 16:36:45.953 [inject]-[debug] Installing inline hooks complete. +2022-03-25 16:36:45.953 [inject]-[debug] IAT hook initialization started. +2022-03-25 16:36:45.953 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-03-25 16:36:45.953 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-03-25 16:36:45.953 [inject]-[debug] IAT hook initialization completed. +2022-03-25 16:36:45.953 [inject]-[debug] Patches initialization started. +2022-03-25 16:36:45.953 [inject]-[trace] Installing syntax check patch +2022-03-25 16:36:45.953 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-03-25 16:36:45.953 [inject]-[trace] Installing auto disable patch +2022-03-25 16:36:45.953 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-03-25 16:36:45.953 [inject]-[trace] Installing enable trigger check patch +2022-03-25 16:36:45.953 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-03-25 16:36:45.953 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-03-25 16:36:45.953 [inject]-[trace] Installing doodad limit patch +2022-03-25 16:36:45.953 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-03-25 16:36:45.953 [inject]-[trace] Installing unit/item limit patch +2022-03-25 16:36:45.954 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-03-25 16:36:45.954 [inject]-[trace] Installing editor multi-instance patch +2022-03-25 16:36:45.954 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-03-25 16:36:45.954 [inject]-[trace] Installing attack table patch +2022-03-25 16:36:45.954 [inject]-[debug] Patches initialization completed. +2022-03-25 16:36:45.954 [inject]-[info ] YDWE startup complete. +2022-03-25 16:36:45.954 [lua]-[debug] YDWeHelper loaded successfully. +2022-03-25 16:36:45.954 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass +2022-03-25 16:36:45.954 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak +2022-03-25 16:36:45.954 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\AntiBJLeak\detail +2022-03-25 16:36:45.970 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Base +2022-03-25 16:36:45.972 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\japi +2022-03-25 16:36:45.974 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\PreloadSL +2022-03-25 16:36:45.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system +2022-03-25 16:36:45.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\ht +2022-03-25 16:36:45.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\system\rb +2022-03-25 16:36:45.975 [lua]-[trace] Scanning for inject files in F:\MapJ\官方编辑器 - 副本\jass\Util +2022-03-25 16:36:45.983 [lua]-[trace] Scanned file: 99 +2022-03-25 16:36:45.984 [lua]-[debug] ********************* on startup end ********************* +2022-03-25 16:36:46.656 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:36:46.674 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:36:46.798 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:36:46.877 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mp3dec.asi +2022-03-25 16:36:46.878 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssdolby.m3d +2022-03-25 16:36:46.879 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Msseax2.m3d +2022-03-25 16:36:46.879 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Mssfast.m3d +2022-03-25 16:36:46.880 [lua]-[debug] Loading provider H:\WarcraftIII\redist\miles\Reverb3.flt +2022-03-25 16:36:49.510 [lua]-[debug] ********************* on menuinit start ********************* +2022-03-25 16:36:49.510 [lua]-[debug] ********************* on menuinit end ********************* +2022-03-25 16:37:27.117 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:37:27.117 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:37:27.117 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-03-25 16:37:27.477 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-03-25 16:37:27.495 [lua]-[trace] virtual_mpq 'triggerdata' +2022-03-25 16:37:27.615 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-03-25 16:37:52.570 [lua]-[debug] ********************* on exit start ********************* +2022-03-25 16:37:52.570 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-03-25 16:37:52.570 [lua]-[trace] Unload plugin YDTrigger. +2022-03-25 16:37:52.571 [lua]-[trace] Unload plugin Tesh. +2022-03-25 16:37:52.573 [lua]-[trace] Unload plugin YDWeHelper. +2022-03-25 16:37:52.573 [inject]-[debug] IAT hook cleanup started. +2022-03-25 16:37:52.573 [inject]-[trace] WE IAT hook cleaned. +2022-03-25 16:37:52.573 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-03-25 16:37:52.573 [inject]-[debug] IAT hook cleanup completed. +2022-03-25 16:37:52.573 [inject]-[debug] Inline hook uninstallation begins! +2022-03-25 16:37:52.573 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-03-25 16:37:52.573 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-03-25 16:37:52.573 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-03-25 16:37:52.573 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-03-25 16:37:52.573 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-03-25 16:37:52.573 [inject]-[debug] Inline hook uninstallation finished! +2022-03-25 16:37:52.573 [lua]-[trace] Unload plugin YDClient. +2022-03-25 16:37:52.573 [lua]-[debug] ********************* on exit end ********************* +2022-03-25 16:37:52.573 [event]-[info ] Main program exit. +2022-03-25 16:37:52.719 [root]-[info ] Script engine has been shut down. +2022-06-27 15:33:37.153 [root]-[info ] ------------------------------------------------------ +2022-06-27 15:33:37.157 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 15:33:37.157 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 15:33:37.157 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 15:33:37.157 [root]-[debug] Initialize script engine successfully. +2022-06-27 15:33:37.157 [root]-[info ] Script engine startup complete. +2022-06-27 15:33:37.158 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 15:33:37.158 [lua]-[trace] Initializing 'sys' +2022-06-27 15:33:37.161 [lua]-[trace] Initializing 'filesystem' +2022-06-27 15:33:37.164 [lua]-[trace] Initializing 'gui' +2022-06-27 15:33:37.167 [lua]-[trace] Initializing 'util' +2022-06-27 15:33:37.168 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 15:33:37.169 [lua]-[trace] Initializing 'ffi' +2022-06-27 15:33:37.175 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 15:33:37.175 [lua]-[trace] Initializing 'event' +2022-06-27 15:33:37.179 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 15:33:37.183 [lua]-[trace] Initializing 'registry' +2022-06-27 15:33:37.188 [lua]-[trace] Initializing 'version' +2022-06-27 15:33:37.188 [lua]-[trace] Initializing 'localization' +2022-06-27 15:33:37.189 [lua]-[trace] Initializing 'i18n' +2022-06-27 15:33:37.192 [lua]-[trace] Initializing 'config' +2022-06-27 15:33:37.193 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 15:33:37.193 [lua]-[trace] Initializing 'plugin' +2022-06-27 15:33:37.194 [lua]-[trace] Initializing 'uiloader' +2022-06-27 15:33:37.195 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 15:33:37.195 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 15:33:37.196 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 15:33:37.197 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 15:33:37.197 [lua]-[trace] Initializing 'lni-c' +2022-06-27 15:33:37.200 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 15:33:37.201 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 15:33:37.202 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 15:33:37.202 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 15:33:37.206 [lua]-[trace] Initializing 'check_object' +2022-06-27 15:33:37.207 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 15:33:37.208 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 15:33:37.208 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 15:33:37.209 [event]-[trace] RegisterEvent id: 7 +2022-06-27 15:33:37.209 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 15:33:37.210 [event]-[trace] RegisterEvent id: 5 +2022-06-27 15:33:37.210 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 15:33:37.211 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 15:33:37.212 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 15:33:37.213 [lua]-[trace] Initializing 'compile.template' +2022-06-27 15:33:37.214 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 15:33:37.214 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 15:33:37.215 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 15:33:37.216 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 15:33:37.217 [lua]-[trace] Initializing 'compile.native' +2022-06-27 15:33:37.218 [event]-[trace] RegisterEvent id: 3 +2022-06-27 15:33:37.218 [event]-[trace] RegisterEvent id: 2 +2022-06-27 15:33:37.218 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 15:33:37.218 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 15:33:37.219 [lua]-[trace] Initializing 'utility' +2022-06-27 15:33:37.220 [lua]-[trace] Initializing 'mapdump' +2022-06-27 15:33:37.220 [event]-[trace] RegisterEvent id: 4 +2022-06-27 15:33:37.220 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 15:33:37.221 [event]-[trace] RegisterEvent id: 0 +2022-06-27 15:33:37.221 [event]-[trace] RegisterEvent id: 1 +2022-06-27 15:33:37.221 [event]-[trace] RegisterEvent id: 6 +2022-06-27 15:33:37.221 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 15:33:37.375 [event]-[trace] RegisterEvent id: 8 +2022-06-27 15:33:37.375 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 15:33:37.376 [event]-[trace] RegisterEvent id: 9 +2022-06-27 15:33:37.376 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 15:33:37.380 [event]-[info ] Entering main program. +2022-06-27 15:33:37.380 [event]-[debug] Command line: +2022-06-27 15:33:37.388 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 15:33:37.389 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 15:33:37.389 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 15:33:37.389 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 15:33:37.389 [lua]-[trace] check_conflicting_ui +2022-06-27 15:33:37.390 [lua]-[trace] check_conflicting_units +2022-06-27 15:33:37.390 [lua]-[trace] clear_potential_conflicting +2022-06-27 15:33:37.390 [lua]-[trace] check_war3_version +2022-06-27 15:33:37.393 [lua]-[error] Cannot find war3.mpq +2022-06-27 15:33:37.395 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 15:33:37.484 [lua]-[debug] Tesh loaded successfully. +2022-06-27 15:33:37.495 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 15:33:37.499 [lua]-[debug] YDClient loaded successfully. +2022-06-27 15:33:37.500 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 15:33:37.501 [lua]-[warn ] failed: disable +2022-06-27 15:33:37.501 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 15:33:37.502 [lua]-[warn ] failed: disable +2022-06-27 15:33:37.502 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 15:33:37.502 [lua]-[warn ] failed: disable +2022-06-27 15:33:37.502 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 15:33:37.543 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 15:33:37.545 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 15:33:37.550 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 15:33:37.550 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 15:33:37.555 [inject]-[debug] Start installing inline hooks. +2022-06-27 15:33:37.555 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 15:33:37.555 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 15:33:37.555 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 15:33:37.555 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 15:33:37.555 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 15:33:37.555 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 15:33:37.555 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 15:33:37.555 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 15:33:37.556 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 15:33:37.556 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 15:33:37.556 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 15:33:37.556 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 15:33:37.556 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 15:33:37.556 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 15:33:37.556 [inject]-[debug] Installing inline hooks complete. +2022-06-27 15:33:37.556 [inject]-[debug] IAT hook initialization started. +2022-06-27 15:33:37.556 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 15:33:37.556 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 15:33:37.556 [inject]-[debug] IAT hook initialization completed. +2022-06-27 15:33:37.556 [inject]-[debug] Patches initialization started. +2022-06-27 15:33:37.556 [inject]-[trace] Installing syntax check patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing auto disable patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing enable trigger check patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 15:33:37.556 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing doodad limit patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing unit/item limit patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 15:33:37.556 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 15:33:37.556 [inject]-[trace] Installing attack table patch +2022-06-27 15:33:37.556 [inject]-[debug] Patches initialization completed. +2022-06-27 15:33:37.556 [inject]-[info ] YDWE startup complete. +2022-06-27 15:33:37.556 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 15:33:37.557 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 15:33:37.557 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 15:33:37.557 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 15:33:37.572 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 15:33:37.574 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 15:33:37.576 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 15:33:37.577 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 15:33:37.577 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 15:33:37.577 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 15:33:37.577 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 15:33:37.585 [lua]-[trace] Scanned file: 99 +2022-06-27 15:33:37.589 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 15:33:38.102 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 15:33:38.125 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 15:33:38.259 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 15:33:38.375 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 15:33:38.377 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 15:33:38.377 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 15:33:38.378 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 15:33:38.378 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 15:33:40.298 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 15:33:40.298 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 15:36:33.533 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 15:36:33.533 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 15:36:33.533 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 15:36:33.737 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 15:36:33.755 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 15:36:33.889 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 15:49:08.677 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 15:49:08.677 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 15:49:08.677 [inject]-[debug] IAT hook cleanup started. +2022-06-27 15:49:08.677 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 15:49:08.677 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 15:49:08.677 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 15:49:08.677 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 15:49:08.677 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 15:49:08.677 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 15:49:08.677 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 15:49:08.677 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 15:49:08.677 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 15:49:08.678 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 15:49:08.678 [lua]-[trace] Unload plugin Tesh. +2022-06-27 15:49:08.686 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 15:49:08.686 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 15:49:08.687 [lua]-[trace] Unload plugin YDClient. +2022-06-27 15:49:08.687 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 15:49:08.687 [event]-[info ] Main program exit. +2022-06-27 15:49:08.915 [root]-[info ] Script engine has been shut down. +2022-06-27 16:17:51.775 [root]-[info ] ------------------------------------------------------ +2022-06-27 16:17:51.778 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 16:17:51.778 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 16:17:51.778 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 16:17:51.778 [root]-[debug] Initialize script engine successfully. +2022-06-27 16:17:51.778 [root]-[info ] Script engine startup complete. +2022-06-27 16:17:51.778 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 16:17:51.778 [lua]-[trace] Initializing 'sys' +2022-06-27 16:17:51.779 [lua]-[trace] Initializing 'filesystem' +2022-06-27 16:17:51.780 [lua]-[trace] Initializing 'gui' +2022-06-27 16:17:51.780 [lua]-[trace] Initializing 'util' +2022-06-27 16:17:51.781 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 16:17:51.781 [lua]-[trace] Initializing 'ffi' +2022-06-27 16:17:51.783 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 16:17:51.783 [lua]-[trace] Initializing 'event' +2022-06-27 16:17:51.785 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 16:17:51.786 [lua]-[trace] Initializing 'registry' +2022-06-27 16:17:51.787 [lua]-[trace] Initializing 'version' +2022-06-27 16:17:51.787 [lua]-[trace] Initializing 'localization' +2022-06-27 16:17:51.787 [lua]-[trace] Initializing 'i18n' +2022-06-27 16:17:51.788 [lua]-[trace] Initializing 'config' +2022-06-27 16:17:51.789 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 16:17:51.789 [lua]-[trace] Initializing 'plugin' +2022-06-27 16:17:51.789 [lua]-[trace] Initializing 'uiloader' +2022-06-27 16:17:51.790 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 16:17:51.790 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 16:17:51.790 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 16:17:51.791 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 16:17:51.791 [lua]-[trace] Initializing 'lni-c' +2022-06-27 16:17:51.792 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 16:17:51.792 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 16:17:51.792 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 16:17:51.793 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 16:17:51.794 [lua]-[trace] Initializing 'check_object' +2022-06-27 16:17:51.794 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 16:17:51.795 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 16:17:51.795 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 16:17:51.796 [event]-[trace] RegisterEvent id: 7 +2022-06-27 16:17:51.796 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 16:17:51.796 [event]-[trace] RegisterEvent id: 5 +2022-06-27 16:17:51.796 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 16:17:51.796 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 16:17:51.797 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 16:17:51.798 [lua]-[trace] Initializing 'compile.template' +2022-06-27 16:17:51.798 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 16:17:51.799 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 16:17:51.799 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 16:17:51.800 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 16:17:51.800 [lua]-[trace] Initializing 'compile.native' +2022-06-27 16:17:51.801 [event]-[trace] RegisterEvent id: 3 +2022-06-27 16:17:51.801 [event]-[trace] RegisterEvent id: 2 +2022-06-27 16:17:51.801 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 16:17:51.801 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 16:17:51.802 [lua]-[trace] Initializing 'utility' +2022-06-27 16:17:51.802 [lua]-[trace] Initializing 'mapdump' +2022-06-27 16:17:51.803 [event]-[trace] RegisterEvent id: 4 +2022-06-27 16:17:51.803 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 16:17:51.803 [event]-[trace] RegisterEvent id: 0 +2022-06-27 16:17:51.803 [event]-[trace] RegisterEvent id: 1 +2022-06-27 16:17:51.803 [event]-[trace] RegisterEvent id: 6 +2022-06-27 16:17:51.803 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 16:17:51.962 [event]-[trace] RegisterEvent id: 8 +2022-06-27 16:17:51.962 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 16:17:51.962 [event]-[trace] RegisterEvent id: 9 +2022-06-27 16:17:51.962 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 16:17:51.967 [event]-[info ] Entering main program. +2022-06-27 16:17:51.967 [event]-[debug] Command line: +2022-06-27 16:17:51.969 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 16:17:51.970 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 16:17:51.970 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 16:17:51.970 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 16:17:51.970 [lua]-[trace] check_conflicting_ui +2022-06-27 16:17:51.971 [lua]-[trace] check_conflicting_units +2022-06-27 16:17:51.971 [lua]-[trace] clear_potential_conflicting +2022-06-27 16:17:51.971 [lua]-[trace] check_war3_version +2022-06-27 16:17:51.975 [lua]-[error] Cannot find war3.mpq +2022-06-27 16:17:51.977 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 16:17:51.992 [lua]-[debug] Tesh loaded successfully. +2022-06-27 16:17:52. 2 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 16:17:52. 4 [lua]-[debug] YDClient loaded successfully. +2022-06-27 16:17:52. 4 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 16:17:52. 5 [lua]-[warn ] failed: disable +2022-06-27 16:17:52. 5 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 16:17:52. 6 [lua]-[warn ] failed: disable +2022-06-27 16:17:52. 6 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 16:17:52. 7 [lua]-[warn ] failed: disable +2022-06-27 16:17:52. 7 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 16:17:52. 72 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 16:17:52. 74 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 16:17:52. 76 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 16:17:52. 76 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 16:17:52. 77 [inject]-[debug] Start installing inline hooks. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 16:17:52. 78 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 16:17:52. 78 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 16:17:52. 78 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 16:17:52. 78 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 16:17:52. 78 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 16:17:52. 78 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 16:17:52. 78 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 16:17:52. 78 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 16:17:52. 78 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 16:17:52. 78 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 16:17:52. 78 [inject]-[debug] Installing inline hooks complete. +2022-06-27 16:17:52. 78 [inject]-[debug] IAT hook initialization started. +2022-06-27 16:17:52. 78 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 16:17:52. 78 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 16:17:52. 78 [inject]-[debug] IAT hook initialization completed. +2022-06-27 16:17:52. 78 [inject]-[debug] Patches initialization started. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing syntax check patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing auto disable patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing enable trigger check patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 16:17:52. 78 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing doodad limit patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing unit/item limit patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 16:17:52. 78 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 16:17:52. 78 [inject]-[trace] Installing attack table patch +2022-06-27 16:17:52. 79 [inject]-[debug] Patches initialization completed. +2022-06-27 16:17:52. 79 [inject]-[info ] YDWE startup complete. +2022-06-27 16:17:52. 79 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 16:17:52. 79 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 16:17:52. 79 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 16:17:52. 80 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 16:17:52. 90 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 16:17:52. 92 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 16:17:52. 93 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 16:17:52. 93 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 16:17:52. 94 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 16:17:52. 94 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 16:17:52. 94 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 16:17:52.100 [lua]-[trace] Scanned file: 99 +2022-06-27 16:17:52.105 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 16:17:52.584 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 16:17:52.602 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 16:17:52.728 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 16:17:52.819 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 16:17:52.820 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 16:17:52.821 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 16:17:52.822 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 16:17:52.823 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 16:17:54.648 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 16:17:54.648 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 16:19:33.475 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 16:19:33.475 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 16:19:33.475 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 16:19:33.837 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 16:19:33.860 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 16:19:33.989 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 17:12:21.547 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 17:12:21.547 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 17:12:21.547 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 17:12:21.759 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 17:12:21.781 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 17:12:21.917 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 17:12:29.976 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:12:29.976 [event]-[trace] No need to compile. +2022-06-27 17:12:29.976 [lua]-[debug] ********************* on test start ********************* +2022-06-27 17:12:29.976 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 17:12:29.976 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:12:29.976 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:12:29.976 [lua]-[debug] Testing 0 +2022-06-27 17:12:30.181 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 17:12:30.181 [lua]-[debug] ********************* on test end ********************* +2022-06-27 17:13:27.416 [event]-[trace] WE is about to compile maps. +2022-06-27 17:13:27.545 [lua]-[debug] ********************* on save start ********************* +2022-06-27 17:13:27.545 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 17:13:27.545 [lua]-[trace] Saving D:\Program Files (x86)\POPO Files\环绕之星3.w3x +2022-06-27 17:13:27.545 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 17:13:27.545 [lua]-[trace] mpq_util.update_file. +2022-06-27 17:13:27.547 [lua]-[trace] war3map.j has been extracted from 环绕之星3.w3x +2022-06-27 17:13:27.547 [lua]-[trace] Processing file.out +2022-06-27 17:13:27.550 [lua]-[trace] Writing code to file.out +2022-06-27 17:13:27.550 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWEMemoryLeakHelper.j +2022-06-27 17:13:27.551 [lua]-[trace] Injection completed +2022-06-27 17:13:27.551 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWETimerSystem.j +2022-06-27 17:13:27.552 [lua]-[trace] Injection completed +2022-06-27 17:13:27.552 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWEBase.j +2022-06-27 17:13:27.552 [lua]-[trace] Injection completed +2022-06-27 17:13:27.553 [lua]-[trace] Wave compilation start. +2022-06-27 17:13:27.619 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="D:\Program Files (x86)\POPO Files" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 17:13:27.786 [lua]-[trace] Template compilation start. +2022-06-27 17:13:27.790 [lua]-[trace] Initializing 'computed.ability2order' +2022-06-27 17:13:27.791 [lua]-[trace] Initializing 'computed.order_list' +2022-06-27 17:13:27.792 [lua]-[trace] Initializing 'computed.order_id' +2022-06-27 17:13:27.795 [lua]-[debug] Template compilation succeeded. +2022-06-27 17:13:27.798 [lua]-[trace] JassHelper compilation start. +2022-06-27 17:13:30.214 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "D:\Program Files (x86)\POPO Files\环绕之星3.w3x", returned 0 +2022-06-27 17:13:30.215 [lua]-[debug] Result true +2022-06-27 17:13:30.215 [lua]-[debug] ********************* on save end ********************* +2022-06-27 17:13:32.234 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:13:32.234 [event]-[trace] No need to compile. +2022-06-27 17:13:32.235 [lua]-[debug] ********************* on test start ********************* +2022-06-27 17:13:32.235 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 17:13:32.235 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:13:32.235 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:13:32.235 [lua]-[debug] Testing 0 +2022-06-27 17:13:32.419 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 17:13:32.419 [lua]-[debug] ********************* on test end ********************* +2022-06-27 17:14:39.987 [event]-[trace] WE is about to compile maps. +2022-06-27 17:14:40.100 [lua]-[debug] ********************* on save start ********************* +2022-06-27 17:14:40.101 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 17:14:40.101 [lua]-[trace] Saving D:\Program Files (x86)\POPO Files\环绕之星3.w3x +2022-06-27 17:14:40.101 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 17:14:40.101 [lua]-[trace] mpq_util.update_file. +2022-06-27 17:14:40.102 [lua]-[trace] war3map.j has been extracted from 环绕之星3.w3x +2022-06-27 17:14:40.102 [lua]-[trace] Processing file.out +2022-06-27 17:14:40.106 [lua]-[trace] Writing code to file.out +2022-06-27 17:14:40.107 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWEMemoryLeakHelper.j +2022-06-27 17:14:40.107 [lua]-[trace] Injection completed +2022-06-27 17:14:40.107 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWETimerSystem.j +2022-06-27 17:14:40.107 [lua]-[trace] Injection completed +2022-06-27 17:14:40.107 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWEBase.j +2022-06-27 17:14:40.108 [lua]-[trace] Injection completed +2022-06-27 17:14:40.108 [lua]-[trace] Wave compilation start. +2022-06-27 17:14:40.125 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="D:\Program Files (x86)\POPO Files" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 17:14:40.286 [lua]-[trace] Template compilation start. +2022-06-27 17:14:40.292 [lua]-[debug] Template compilation succeeded. +2022-06-27 17:14:40.296 [lua]-[trace] JassHelper compilation start. +2022-06-27 17:14:42.181 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "D:\Program Files (x86)\POPO Files\环绕之星3.w3x", returned 0 +2022-06-27 17:14:42.182 [lua]-[debug] Result true +2022-06-27 17:14:42.182 [lua]-[debug] ********************* on save end ********************* +2022-06-27 17:14:45.690 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:14:45.690 [event]-[trace] No need to compile. +2022-06-27 17:14:45.690 [lua]-[debug] ********************* on test start ********************* +2022-06-27 17:14:45.691 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 17:14:45.691 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:14:45.691 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 17:14:45.691 [lua]-[debug] Testing 0 +2022-06-27 17:14:45.858 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 17:14:45.858 [lua]-[debug] ********************* on test end ********************* +2022-06-27 17:17:05.262 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 17:17:05.262 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 17:17:05.262 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 17:17:05.468 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 17:17:05.500 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 17:17:05.617 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:00:22.315 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 18:00:22.315 [lua]-[trace] Unload plugin Tesh. +2022-06-27 18:00:22.319 [lua]-[trace] Unload plugin YDClient. +2022-06-27 18:00:22.319 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 18:00:22.319 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 18:00:22.320 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 18:00:22.320 [inject]-[debug] IAT hook cleanup started. +2022-06-27 18:00:22.320 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 18:00:22.320 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 18:00:22.320 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 18:00:22.320 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 18:00:22.320 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 18:00:22.320 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 18:00:22.320 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 18:00:22.320 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 18:00:22.320 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 18:00:22.320 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 18:00:22.320 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 18:00:22.320 [event]-[info ] Main program exit. +2022-06-27 18:00:22.606 [root]-[info ] Script engine has been shut down. +2022-06-27 18:14:31.396 [root]-[info ] ------------------------------------------------------ +2022-06-27 18:14:31.398 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 18:14:31.398 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 18:14:31.398 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 18:14:31.398 [root]-[debug] Initialize script engine successfully. +2022-06-27 18:14:31.398 [root]-[info ] Script engine startup complete. +2022-06-27 18:14:31.399 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 18:14:31.399 [lua]-[trace] Initializing 'sys' +2022-06-27 18:14:31.400 [lua]-[trace] Initializing 'filesystem' +2022-06-27 18:14:31.400 [lua]-[trace] Initializing 'gui' +2022-06-27 18:14:31.401 [lua]-[trace] Initializing 'util' +2022-06-27 18:14:31.402 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 18:14:31.402 [lua]-[trace] Initializing 'ffi' +2022-06-27 18:14:31.403 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 18:14:31.404 [lua]-[trace] Initializing 'event' +2022-06-27 18:14:31.406 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 18:14:31.407 [lua]-[trace] Initializing 'registry' +2022-06-27 18:14:31.408 [lua]-[trace] Initializing 'version' +2022-06-27 18:14:31.408 [lua]-[trace] Initializing 'localization' +2022-06-27 18:14:31.409 [lua]-[trace] Initializing 'i18n' +2022-06-27 18:14:31.410 [lua]-[trace] Initializing 'config' +2022-06-27 18:14:31.411 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:14:31.411 [lua]-[trace] Initializing 'plugin' +2022-06-27 18:14:31.411 [lua]-[trace] Initializing 'uiloader' +2022-06-27 18:14:31.411 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 18:14:31.412 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 18:14:31.412 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 18:14:31.412 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 18:14:31.413 [lua]-[trace] Initializing 'lni-c' +2022-06-27 18:14:31.414 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 18:14:31.414 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 18:14:31.414 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 18:14:31.415 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 18:14:31.416 [lua]-[trace] Initializing 'check_object' +2022-06-27 18:14:31.417 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 18:14:31.417 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 18:14:31.417 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 18:14:31.418 [event]-[trace] RegisterEvent id: 7 +2022-06-27 18:14:31.418 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 18:14:31.418 [event]-[trace] RegisterEvent id: 5 +2022-06-27 18:14:31.418 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 18:14:31.419 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 18:14:31.419 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 18:14:31.419 [lua]-[trace] Initializing 'compile.template' +2022-06-27 18:14:31.420 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 18:14:31.420 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 18:14:31.421 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 18:14:31.421 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 18:14:31.421 [lua]-[trace] Initializing 'compile.native' +2022-06-27 18:14:31.422 [event]-[trace] RegisterEvent id: 3 +2022-06-27 18:14:31.422 [event]-[trace] RegisterEvent id: 2 +2022-06-27 18:14:31.422 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 18:14:31.422 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 18:14:31.423 [lua]-[trace] Initializing 'utility' +2022-06-27 18:14:31.423 [lua]-[trace] Initializing 'mapdump' +2022-06-27 18:14:31.423 [event]-[trace] RegisterEvent id: 4 +2022-06-27 18:14:31.423 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 18:14:31.424 [event]-[trace] RegisterEvent id: 0 +2022-06-27 18:14:31.424 [event]-[trace] RegisterEvent id: 1 +2022-06-27 18:14:31.424 [event]-[trace] RegisterEvent id: 6 +2022-06-27 18:14:31.424 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 18:14:31.585 [event]-[trace] RegisterEvent id: 8 +2022-06-27 18:14:31.585 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 18:14:31.586 [event]-[trace] RegisterEvent id: 9 +2022-06-27 18:14:31.586 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 18:14:31.590 [event]-[info ] Entering main program. +2022-06-27 18:14:31.590 [event]-[debug] Command line: +2022-06-27 18:14:31.593 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 18:14:31.594 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 18:14:31.594 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 18:14:31.595 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:14:31.595 [lua]-[trace] check_conflicting_ui +2022-06-27 18:14:31.595 [lua]-[trace] check_conflicting_units +2022-06-27 18:14:31.595 [lua]-[trace] clear_potential_conflicting +2022-06-27 18:14:31.595 [lua]-[trace] check_war3_version +2022-06-27 18:14:31.600 [lua]-[error] Cannot find war3.mpq +2022-06-27 18:14:31.603 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 18:14:31.621 [lua]-[debug] Tesh loaded successfully. +2022-06-27 18:14:31.633 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 18:14:31.635 [lua]-[debug] YDClient loaded successfully. +2022-06-27 18:14:31.636 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 18:14:31.637 [lua]-[warn ] failed: disable +2022-06-27 18:14:31.637 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 18:14:31.638 [lua]-[warn ] failed: disable +2022-06-27 18:14:31.638 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 18:14:31.639 [lua]-[warn ] failed: disable +2022-06-27 18:14:31.639 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 18:14:31.680 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 18:14:31.682 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 18:14:31.684 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 18:14:31.684 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 18:14:31.685 [inject]-[debug] Start installing inline hooks. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 18:14:31.685 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 18:14:31.685 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 18:14:31.685 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 18:14:31.685 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 18:14:31.685 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 18:14:31.685 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 18:14:31.685 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 18:14:31.685 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 18:14:31.685 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 18:14:31.685 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 18:14:31.685 [inject]-[debug] Installing inline hooks complete. +2022-06-27 18:14:31.685 [inject]-[debug] IAT hook initialization started. +2022-06-27 18:14:31.686 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 18:14:31.686 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 18:14:31.686 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 18:14:31.686 [inject]-[debug] IAT hook initialization completed. +2022-06-27 18:14:31.686 [inject]-[debug] Patches initialization started. +2022-06-27 18:14:31.686 [inject]-[trace] Installing syntax check patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing auto disable patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing enable trigger check patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 18:14:31.686 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing doodad limit patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing unit/item limit patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 18:14:31.686 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 18:14:31.686 [inject]-[trace] Installing attack table patch +2022-06-27 18:14:31.686 [inject]-[debug] Patches initialization completed. +2022-06-27 18:14:31.686 [inject]-[info ] YDWE startup complete. +2022-06-27 18:14:31.686 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 18:14:31.687 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 18:14:31.687 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 18:14:31.687 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 18:14:31.703 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 18:14:31.704 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 18:14:31.706 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 18:14:31.706 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 18:14:31.706 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 18:14:31.707 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 18:14:31.707 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 18:14:31.713 [lua]-[trace] Scanned file: 99 +2022-06-27 18:14:31.717 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 18:14:32.221 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:14:32.243 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:14:32.383 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:14:32.483 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 18:14:32.485 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 18:14:32.486 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 18:14:32.486 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 18:14:32.487 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 18:14:34.503 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 18:14:34.504 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 18:15:36.571 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:15:36.571 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:15:36.571 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:15:36.932 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:15:36.958 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:15:37. 80 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:16:21.154 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 18:16:21.154 [lua]-[trace] Unload plugin Tesh. +2022-06-27 18:16:21.160 [lua]-[trace] Unload plugin YDClient. +2022-06-27 18:16:21.160 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 18:16:21.160 [inject]-[debug] IAT hook cleanup started. +2022-06-27 18:16:21.160 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 18:16:21.160 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 18:16:21.160 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 18:16:21.160 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 18:16:21.160 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 18:16:21.160 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 18:16:21.160 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 18:16:21.160 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 18:16:21.160 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 18:16:21.160 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 18:16:21.160 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 18:16:21.160 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 18:16:21.160 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 18:16:21.160 [event]-[info ] Main program exit. +2022-06-27 18:16:21.348 [root]-[info ] Script engine has been shut down. +2022-06-27 18:16:24.248 [root]-[info ] ------------------------------------------------------ +2022-06-27 18:16:24.251 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 18:16:24.251 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 18:16:24.251 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 18:16:24.251 [root]-[debug] Initialize script engine successfully. +2022-06-27 18:16:24.251 [root]-[info ] Script engine startup complete. +2022-06-27 18:16:24.251 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 18:16:24.252 [lua]-[trace] Initializing 'sys' +2022-06-27 18:16:24.252 [lua]-[trace] Initializing 'filesystem' +2022-06-27 18:16:24.253 [lua]-[trace] Initializing 'gui' +2022-06-27 18:16:24.254 [lua]-[trace] Initializing 'util' +2022-06-27 18:16:24.254 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 18:16:24.254 [lua]-[trace] Initializing 'ffi' +2022-06-27 18:16:24.256 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 18:16:24.256 [lua]-[trace] Initializing 'event' +2022-06-27 18:16:24.259 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 18:16:24.260 [lua]-[trace] Initializing 'registry' +2022-06-27 18:16:24.261 [lua]-[trace] Initializing 'version' +2022-06-27 18:16:24.261 [lua]-[trace] Initializing 'localization' +2022-06-27 18:16:24.261 [lua]-[trace] Initializing 'i18n' +2022-06-27 18:16:24.262 [lua]-[trace] Initializing 'config' +2022-06-27 18:16:24.263 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:16:24.263 [lua]-[trace] Initializing 'plugin' +2022-06-27 18:16:24.263 [lua]-[trace] Initializing 'uiloader' +2022-06-27 18:16:24.263 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 18:16:24.264 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 18:16:24.264 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 18:16:24.264 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 18:16:24.265 [lua]-[trace] Initializing 'lni-c' +2022-06-27 18:16:24.265 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 18:16:24.266 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 18:16:24.266 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 18:16:24.266 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 18:16:24.267 [lua]-[trace] Initializing 'check_object' +2022-06-27 18:16:24.268 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 18:16:24.268 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 18:16:24.269 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 18:16:24.269 [event]-[trace] RegisterEvent id: 7 +2022-06-27 18:16:24.269 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 18:16:24.269 [event]-[trace] RegisterEvent id: 5 +2022-06-27 18:16:24.269 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 18:16:24.270 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 18:16:24.271 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 18:16:24.271 [lua]-[trace] Initializing 'compile.template' +2022-06-27 18:16:24.272 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 18:16:24.272 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 18:16:24.273 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 18:16:24.273 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 18:16:24.274 [lua]-[trace] Initializing 'compile.native' +2022-06-27 18:16:24.274 [event]-[trace] RegisterEvent id: 3 +2022-06-27 18:16:24.274 [event]-[trace] RegisterEvent id: 2 +2022-06-27 18:16:24.274 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 18:16:24.275 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 18:16:24.276 [lua]-[trace] Initializing 'utility' +2022-06-27 18:16:24.276 [lua]-[trace] Initializing 'mapdump' +2022-06-27 18:16:24.277 [event]-[trace] RegisterEvent id: 4 +2022-06-27 18:16:24.277 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 18:16:24.277 [event]-[trace] RegisterEvent id: 0 +2022-06-27 18:16:24.277 [event]-[trace] RegisterEvent id: 1 +2022-06-27 18:16:24.277 [event]-[trace] RegisterEvent id: 6 +2022-06-27 18:16:24.277 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 18:16:24.456 [event]-[trace] RegisterEvent id: 8 +2022-06-27 18:16:24.456 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 18:16:24.457 [event]-[trace] RegisterEvent id: 9 +2022-06-27 18:16:24.457 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 18:16:24.462 [event]-[info ] Entering main program. +2022-06-27 18:16:24.462 [event]-[debug] Command line: +2022-06-27 18:16:24.465 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 18:16:24.466 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 18:16:24.466 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 18:16:24.467 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:16:24.467 [lua]-[trace] check_conflicting_ui +2022-06-27 18:16:24.467 [lua]-[trace] check_conflicting_units +2022-06-27 18:16:24.467 [lua]-[trace] clear_potential_conflicting +2022-06-27 18:16:24.467 [lua]-[trace] check_war3_version +2022-06-27 18:16:24.471 [lua]-[error] Cannot find war3.mpq +2022-06-27 18:16:24.473 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 18:16:24.490 [lua]-[debug] Tesh loaded successfully. +2022-06-27 18:16:24.502 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 18:16:24.504 [lua]-[debug] YDClient loaded successfully. +2022-06-27 18:16:24.504 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 18:16:24.504 [lua]-[warn ] failed: disable +2022-06-27 18:16:24.504 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 18:16:24.505 [lua]-[warn ] failed: disable +2022-06-27 18:16:24.505 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 18:16:24.506 [lua]-[warn ] failed: disable +2022-06-27 18:16:24.506 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 18:16:24.543 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 18:16:24.545 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 18:16:24.546 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 18:16:24.546 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 18:16:24.547 [inject]-[debug] Start installing inline hooks. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 18:16:24.548 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 18:16:24.548 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 18:16:24.548 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 18:16:24.548 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 18:16:24.548 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 18:16:24.548 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 18:16:24.548 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 18:16:24.548 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 18:16:24.548 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 18:16:24.548 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 18:16:24.548 [inject]-[debug] Installing inline hooks complete. +2022-06-27 18:16:24.548 [inject]-[debug] IAT hook initialization started. +2022-06-27 18:16:24.548 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 18:16:24.548 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 18:16:24.548 [inject]-[debug] IAT hook initialization completed. +2022-06-27 18:16:24.548 [inject]-[debug] Patches initialization started. +2022-06-27 18:16:24.548 [inject]-[trace] Installing syntax check patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing auto disable patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing enable trigger check patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 18:16:24.548 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing doodad limit patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing unit/item limit patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 18:16:24.548 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 18:16:24.548 [inject]-[trace] Installing attack table patch +2022-06-27 18:16:24.548 [inject]-[debug] Patches initialization completed. +2022-06-27 18:16:24.548 [inject]-[info ] YDWE startup complete. +2022-06-27 18:16:24.549 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 18:16:24.549 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 18:16:24.549 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 18:16:24.549 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 18:16:24.562 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 18:16:24.563 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 18:16:24.564 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 18:16:24.565 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 18:16:24.565 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 18:16:24.565 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 18:16:24.565 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 18:16:24.572 [lua]-[trace] Scanned file: 99 +2022-06-27 18:16:24.576 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 18:16:25. 72 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:16:25. 89 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:16:25.213 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:16:25.295 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 18:16:25.298 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 18:16:25.298 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 18:16:25.299 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 18:16:25.300 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 18:16:27.151 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 18:16:27.151 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 18:17:12.357 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:12.357 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:12.357 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:12.752 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:17:12.776 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:17:12.916 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:17:14.119 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 18:17:14.119 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 18:17:14.120 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 18:17:14.120 [lua]-[trace] Unload plugin Tesh. +2022-06-27 18:17:14.133 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 18:17:14.133 [inject]-[debug] IAT hook cleanup started. +2022-06-27 18:17:14.133 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 18:17:14.133 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 18:17:14.134 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 18:17:14.134 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 18:17:14.134 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 18:17:14.134 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 18:17:14.134 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 18:17:14.134 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 18:17:14.134 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 18:17:14.134 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 18:17:14.134 [lua]-[trace] Unload plugin YDClient. +2022-06-27 18:17:14.134 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 18:17:14.134 [event]-[info ] Main program exit. +2022-06-27 18:17:14.349 [root]-[info ] Script engine has been shut down. +2022-06-27 18:17:17.302 [root]-[info ] ------------------------------------------------------ +2022-06-27 18:17:17.305 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 18:17:17.305 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 18:17:17.305 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 18:17:17.305 [root]-[debug] Initialize script engine successfully. +2022-06-27 18:17:17.305 [root]-[info ] Script engine startup complete. +2022-06-27 18:17:17.305 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 18:17:17.305 [lua]-[trace] Initializing 'sys' +2022-06-27 18:17:17.307 [lua]-[trace] Initializing 'filesystem' +2022-06-27 18:17:17.308 [lua]-[trace] Initializing 'gui' +2022-06-27 18:17:17.309 [lua]-[trace] Initializing 'util' +2022-06-27 18:17:17.309 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 18:17:17.310 [lua]-[trace] Initializing 'ffi' +2022-06-27 18:17:17.311 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 18:17:17.311 [lua]-[trace] Initializing 'event' +2022-06-27 18:17:17.313 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 18:17:17.314 [lua]-[trace] Initializing 'registry' +2022-06-27 18:17:17.315 [lua]-[trace] Initializing 'version' +2022-06-27 18:17:17.315 [lua]-[trace] Initializing 'localization' +2022-06-27 18:17:17.315 [lua]-[trace] Initializing 'i18n' +2022-06-27 18:17:17.316 [lua]-[trace] Initializing 'config' +2022-06-27 18:17:17.317 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:17:17.317 [lua]-[trace] Initializing 'plugin' +2022-06-27 18:17:17.317 [lua]-[trace] Initializing 'uiloader' +2022-06-27 18:17:17.318 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 18:17:17.318 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 18:17:17.318 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 18:17:17.319 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 18:17:17.319 [lua]-[trace] Initializing 'lni-c' +2022-06-27 18:17:17.320 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 18:17:17.320 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 18:17:17.321 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 18:17:17.321 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 18:17:17.324 [lua]-[trace] Initializing 'check_object' +2022-06-27 18:17:17.325 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 18:17:17.326 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 18:17:17.326 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 18:17:17.327 [event]-[trace] RegisterEvent id: 7 +2022-06-27 18:17:17.327 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 18:17:17.327 [event]-[trace] RegisterEvent id: 5 +2022-06-27 18:17:17.328 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 18:17:17.328 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 18:17:17.329 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 18:17:17.329 [lua]-[trace] Initializing 'compile.template' +2022-06-27 18:17:17.329 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 18:17:17.330 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 18:17:17.330 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 18:17:17.330 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 18:17:17.331 [lua]-[trace] Initializing 'compile.native' +2022-06-27 18:17:17.331 [event]-[trace] RegisterEvent id: 3 +2022-06-27 18:17:17.331 [event]-[trace] RegisterEvent id: 2 +2022-06-27 18:17:17.331 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 18:17:17.332 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 18:17:17.332 [lua]-[trace] Initializing 'utility' +2022-06-27 18:17:17.333 [lua]-[trace] Initializing 'mapdump' +2022-06-27 18:17:17.333 [event]-[trace] RegisterEvent id: 4 +2022-06-27 18:17:17.333 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 18:17:17.333 [event]-[trace] RegisterEvent id: 0 +2022-06-27 18:17:17.333 [event]-[trace] RegisterEvent id: 1 +2022-06-27 18:17:17.333 [event]-[trace] RegisterEvent id: 6 +2022-06-27 18:17:17.333 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 18:17:17.507 [event]-[trace] RegisterEvent id: 8 +2022-06-27 18:17:17.507 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 18:17:17.508 [event]-[trace] RegisterEvent id: 9 +2022-06-27 18:17:17.508 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 18:17:17.513 [event]-[info ] Entering main program. +2022-06-27 18:17:17.513 [event]-[debug] Command line: +2022-06-27 18:17:17.516 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 18:17:17.517 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 18:17:17.517 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 18:17:17.517 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:17:17.518 [lua]-[trace] check_conflicting_ui +2022-06-27 18:17:17.518 [lua]-[trace] check_conflicting_units +2022-06-27 18:17:17.518 [lua]-[trace] clear_potential_conflicting +2022-06-27 18:17:17.518 [lua]-[trace] check_war3_version +2022-06-27 18:17:17.522 [lua]-[error] Cannot find war3.mpq +2022-06-27 18:17:17.524 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 18:17:17.547 [lua]-[debug] Tesh loaded successfully. +2022-06-27 18:17:17.558 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 18:17:17.560 [lua]-[debug] YDClient loaded successfully. +2022-06-27 18:17:17.560 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 18:17:17.561 [lua]-[warn ] failed: disable +2022-06-27 18:17:17.561 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 18:17:17.562 [lua]-[warn ] failed: disable +2022-06-27 18:17:17.562 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 18:17:17.563 [lua]-[warn ] failed: disable +2022-06-27 18:17:17.563 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 18:17:17.604 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 18:17:17.607 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 18:17:17.609 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 18:17:17.609 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 18:17:17.610 [inject]-[debug] Start installing inline hooks. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 18:17:17.611 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 18:17:17.611 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 18:17:17.611 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 18:17:17.611 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 18:17:17.611 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 18:17:17.611 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 18:17:17.611 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 18:17:17.611 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 18:17:17.611 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 18:17:17.611 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 18:17:17.611 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 18:17:17.612 [inject]-[debug] Installing inline hooks complete. +2022-06-27 18:17:17.612 [inject]-[debug] IAT hook initialization started. +2022-06-27 18:17:17.612 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 18:17:17.612 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 18:17:17.612 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 18:17:17.612 [inject]-[debug] IAT hook initialization completed. +2022-06-27 18:17:17.612 [inject]-[debug] Patches initialization started. +2022-06-27 18:17:17.612 [inject]-[trace] Installing syntax check patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing auto disable patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing enable trigger check patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 18:17:17.612 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing doodad limit patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing unit/item limit patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 18:17:17.612 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 18:17:17.612 [inject]-[trace] Installing attack table patch +2022-06-27 18:17:17.612 [inject]-[debug] Patches initialization completed. +2022-06-27 18:17:17.612 [inject]-[info ] YDWE startup complete. +2022-06-27 18:17:17.612 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 18:17:17.613 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 18:17:17.613 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 18:17:17.613 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 18:17:17.627 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 18:17:17.628 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 18:17:17.630 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 18:17:17.630 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 18:17:17.630 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 18:17:17.631 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 18:17:17.631 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 18:17:17.637 [lua]-[trace] Scanned file: 99 +2022-06-27 18:17:17.643 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 18:17:18.155 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:17:18.172 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:17:18.308 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:17:18.396 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 18:17:18.398 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 18:17:18.399 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 18:17:18.399 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 18:17:18.400 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 18:17:20.296 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 18:17:20.296 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 18:17:49. 29 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:49. 29 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:49. 29 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-27 18:17:49.431 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:17:49.452 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:17:49.584 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:22:43.277 [event]-[trace] WE is about to compile maps. +2022-06-27 18:22:43.361 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:22:43.362 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:22:43.362 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:22:43.362 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:22:43.362 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:22:43.363 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:22:43.363 [lua]-[trace] Processing file.out +2022-06-27 18:22:43.365 [lua]-[trace] Wave compilation start. +2022-06-27 18:22:43.385 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:22:43.737 [lua]-[trace] Template compilation start. +2022-06-27 18:22:43.738 [lua]-[trace] Initializing 'computed.ability2order' +2022-06-27 18:22:43.738 [lua]-[trace] Initializing 'computed.order_list' +2022-06-27 18:22:43.739 [lua]-[trace] Initializing 'computed.order_id' +2022-06-27 18:22:43.741 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:22:43.742 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:22:45.226 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 1 +2022-06-27 18:22:45.227 [lua]-[debug] Result false +2022-06-27 18:22:45.227 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:23:19.187 [event]-[trace] WE is about to compile maps. +2022-06-27 18:23:19.244 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:23:19.244 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:23:19.244 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:23:19.244 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:23:19.244 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:23:19.246 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:23:19.246 [lua]-[trace] Processing file.out +2022-06-27 18:23:19.248 [lua]-[trace] Wave compilation start. +2022-06-27 18:23:19.267 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:23:19.604 [lua]-[trace] Template compilation start. +2022-06-27 18:23:19.608 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:23:19.609 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:23:21.386 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:23:21.387 [lua]-[debug] Result true +2022-06-27 18:23:21.387 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:23:54.474 [event]-[trace] WE is about to compile maps. +2022-06-27 18:23:54.525 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:23:54.525 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:23:54.525 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:23:54.525 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:23:54.525 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:23:54.526 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:23:54.526 [lua]-[trace] Processing file.out +2022-06-27 18:23:54.529 [lua]-[trace] Wave compilation start. +2022-06-27 18:23:54.551 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:23:54.898 [lua]-[trace] Template compilation start. +2022-06-27 18:23:54.905 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:23:54.907 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:23:56.688 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:23:56.688 [lua]-[debug] Result true +2022-06-27 18:23:56.688 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:23:57.192 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:23:57.192 [event]-[trace] No need to compile. +2022-06-27 18:23:57.192 [lua]-[debug] ********************* on test start ********************* +2022-06-27 18:23:57.193 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:23:57.193 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:23:57.193 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:23:57.193 [lua]-[debug] Testing 0 +2022-06-27 18:23:57.418 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 18:23:57.418 [lua]-[debug] ********************* on test end ********************* +2022-06-27 18:26:01.609 [event]-[trace] WE is about to compile maps. +2022-06-27 18:26:01.675 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:26:01.676 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:26:01.676 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:26:01.676 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:26:01.676 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:26:01.677 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:26:01.677 [lua]-[trace] Processing file.out +2022-06-27 18:26:01.680 [lua]-[trace] Wave compilation start. +2022-06-27 18:26:01.699 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:26:02. 43 [lua]-[trace] Template compilation start. +2022-06-27 18:26:02. 45 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:26:02. 46 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:26:03.514 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 1 +2022-06-27 18:26:03.515 [lua]-[debug] Result false +2022-06-27 18:26:03.515 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:26:50.166 [event]-[trace] WE is about to compile maps. +2022-06-27 18:26:50.251 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:26:50.252 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:26:50.252 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:26:50.252 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:26:50.252 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:26:50.253 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:26:50.253 [lua]-[trace] Processing file.out +2022-06-27 18:26:50.255 [lua]-[trace] Wave compilation start. +2022-06-27 18:26:50.272 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:26:50.618 [lua]-[trace] Template compilation start. +2022-06-27 18:26:50.619 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:26:50.624 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:26:52.463 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:26:52.463 [lua]-[debug] Result true +2022-06-27 18:26:52.463 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:26:53.617 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:26:53.617 [event]-[trace] No need to compile. +2022-06-27 18:26:53.617 [lua]-[debug] ********************* on test start ********************* +2022-06-27 18:26:53.618 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:26:53.618 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:26:53.618 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:26:53.618 [lua]-[debug] Testing 0 +2022-06-27 18:26:53.812 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 18:26:53.812 [lua]-[debug] ********************* on test end ********************* +2022-06-27 18:30:34.486 [event]-[trace] WE is about to compile maps. +2022-06-27 18:30:34.533 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:30:34.534 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:30:34.534 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:30:34.534 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:30:34.534 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:30:34.535 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:30:34.535 [lua]-[trace] Processing file.out +2022-06-27 18:30:34.539 [lua]-[trace] Wave compilation start. +2022-06-27 18:30:34.559 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:30:34.934 [lua]-[trace] Template compilation start. +2022-06-27 18:30:34.936 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:30:34.937 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:30:36.791 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:30:36.791 [lua]-[debug] Result true +2022-06-27 18:30:36.792 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:30:37. 47 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:30:37. 47 [event]-[trace] No need to compile. +2022-06-27 18:30:37. 47 [lua]-[debug] ********************* on test start ********************* +2022-06-27 18:30:37. 48 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:30:37. 48 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:30:37. 48 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:30:37. 48 [lua]-[debug] Testing 0 +2022-06-27 18:30:37.264 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 18:30:37.264 [lua]-[debug] ********************* on test end ********************* +2022-06-27 18:31:13.927 [event]-[trace] WE is about to compile maps. +2022-06-27 18:31:13.979 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:31:13.980 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:31:13.980 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:31:13.980 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:31:13.980 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:31:13.981 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:31:13.981 [lua]-[trace] Processing file.out +2022-06-27 18:31:13.984 [lua]-[trace] Wave compilation start. +2022-06-27 18:31:14. 7 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:31:14.369 [lua]-[trace] Template compilation start. +2022-06-27 18:31:14.372 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:31:14.373 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:31:16.336 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:31:16.336 [lua]-[debug] Result true +2022-06-27 18:31:16.336 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:31:18.128 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:31:18.128 [event]-[trace] No need to compile. +2022-06-27 18:31:18.128 [lua]-[debug] ********************* on test start ********************* +2022-06-27 18:31:18.129 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:31:18.129 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:31:18.129 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-06-27 18:31:18.129 [lua]-[debug] Testing 0 +2022-06-27 18:31:18.273 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-06-27 18:31:18.274 [lua]-[debug] ********************* on test end ********************* +2022-06-27 18:32:02.292 [event]-[trace] WE is about to compile maps. +2022-06-27 18:32:02.345 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:32:02.346 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:32:02.346 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:32:02.346 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:32:02.346 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:32:02.347 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:32:02.347 [lua]-[trace] Processing file.out +2022-06-27 18:32:02.349 [lua]-[trace] Wave compilation start. +2022-06-27 18:32:02.371 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:32:02.750 [lua]-[trace] Template compilation start. +2022-06-27 18:32:02.754 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:32:02.755 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:32:04.624 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:32:04.624 [lua]-[debug] Result true +2022-06-27 18:32:04.624 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:32:08.852 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 18:32:08.852 [lua]-[trace] Unload plugin YDClient. +2022-06-27 18:32:08.852 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 18:32:08.852 [lua]-[trace] Unload plugin Tesh. +2022-06-27 18:32:08.860 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 18:32:08.860 [inject]-[debug] IAT hook cleanup started. +2022-06-27 18:32:08.860 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 18:32:08.860 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 18:32:08.860 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 18:32:08.860 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 18:32:08.860 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 18:32:08.860 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 18:32:08.860 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 18:32:08.860 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 18:32:08.861 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 18:32:08.861 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 18:32:08.861 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 18:32:08.861 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 18:32:08.861 [event]-[info ] Main program exit. +2022-06-27 18:32:49.759 [root]-[info ] ------------------------------------------------------ +2022-06-27 18:32:49.763 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-27 18:32:49.763 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-27 18:32:49.763 [root]-[info ] Windows version: 10.0.19041 +2022-06-27 18:32:49.763 [root]-[debug] Initialize script engine successfully. +2022-06-27 18:32:49.763 [root]-[info ] Script engine startup complete. +2022-06-27 18:32:49.764 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-27 18:32:49.764 [lua]-[trace] Initializing 'sys' +2022-06-27 18:32:49.765 [lua]-[trace] Initializing 'filesystem' +2022-06-27 18:32:49.766 [lua]-[trace] Initializing 'gui' +2022-06-27 18:32:49.767 [lua]-[trace] Initializing 'util' +2022-06-27 18:32:49.768 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-27 18:32:49.768 [lua]-[trace] Initializing 'ffi' +2022-06-27 18:32:49.769 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-27 18:32:49.770 [lua]-[trace] Initializing 'event' +2022-06-27 18:32:49.772 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-27 18:32:49.773 [lua]-[trace] Initializing 'registry' +2022-06-27 18:32:49.774 [lua]-[trace] Initializing 'version' +2022-06-27 18:32:49.774 [lua]-[trace] Initializing 'localization' +2022-06-27 18:32:49.774 [lua]-[trace] Initializing 'i18n' +2022-06-27 18:32:49.775 [lua]-[trace] Initializing 'config' +2022-06-27 18:32:49.776 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:32:49.776 [lua]-[trace] Initializing 'plugin' +2022-06-27 18:32:49.777 [lua]-[trace] Initializing 'uiloader' +2022-06-27 18:32:49.777 [lua]-[trace] Initializing 'stringify_slk' +2022-06-27 18:32:49.778 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-27 18:32:49.778 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-27 18:32:49.779 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-27 18:32:49.779 [lua]-[trace] Initializing 'lni-c' +2022-06-27 18:32:49.780 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-27 18:32:49.781 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-27 18:32:49.781 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-27 18:32:49.782 [lua]-[trace] Initializing 'w3xparser' +2022-06-27 18:32:49.783 [lua]-[trace] Initializing 'check_object' +2022-06-27 18:32:49.785 [lua]-[trace] Initializing 'ffi.storm' +2022-06-27 18:32:49.785 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-27 18:32:49.786 [lua]-[trace] Initializing 'ffi.gui' +2022-06-27 18:32:49.786 [event]-[trace] RegisterEvent id: 7 +2022-06-27 18:32:49.786 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-27 18:32:49.787 [event]-[trace] RegisterEvent id: 5 +2022-06-27 18:32:49.787 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-27 18:32:49.787 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-27 18:32:49.788 [lua]-[trace] Initializing 'compile.wave' +2022-06-27 18:32:49.788 [lua]-[trace] Initializing 'compile.template' +2022-06-27 18:32:49.789 [lua]-[trace] Initializing 'compile.cjass' +2022-06-27 18:32:49.789 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-27 18:32:49.790 [lua]-[trace] Initializing 'mpq_util' +2022-06-27 18:32:49.790 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-27 18:32:49.791 [lua]-[trace] Initializing 'compile.native' +2022-06-27 18:32:49.791 [event]-[trace] RegisterEvent id: 3 +2022-06-27 18:32:49.791 [event]-[trace] RegisterEvent id: 2 +2022-06-27 18:32:49.791 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-27 18:32:49.791 [lua]-[trace] Initializing 'w3x2lni' +2022-06-27 18:32:49.792 [lua]-[trace] Initializing 'utility' +2022-06-27 18:32:49.792 [lua]-[trace] Initializing 'mapdump' +2022-06-27 18:32:49.793 [event]-[trace] RegisterEvent id: 4 +2022-06-27 18:32:49.793 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-27 18:32:49.794 [event]-[trace] RegisterEvent id: 0 +2022-06-27 18:32:49.794 [event]-[trace] RegisterEvent id: 1 +2022-06-27 18:32:49.794 [event]-[trace] RegisterEvent id: 6 +2022-06-27 18:32:49.794 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-27 18:32:49.977 [event]-[trace] RegisterEvent id: 8 +2022-06-27 18:32:49.977 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-27 18:32:49.978 [event]-[trace] RegisterEvent id: 9 +2022-06-27 18:32:49.978 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-27 18:32:49.983 [event]-[info ] Entering main program. +2022-06-27 18:32:49.983 [event]-[debug] Command line: +2022-06-27 18:32:49.989 [lua]-[debug] ********************* on startup start ********************* +2022-06-27 18:32:49.989 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-27 18:32:49.989 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-27 18:32:49.990 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:32:49.990 [lua]-[trace] check_conflicting_ui +2022-06-27 18:32:49.990 [lua]-[trace] check_conflicting_units +2022-06-27 18:32:49.990 [lua]-[trace] clear_potential_conflicting +2022-06-27 18:32:49.990 [lua]-[trace] check_war3_version +2022-06-27 18:32:49.994 [lua]-[error] Cannot find war3.mpq +2022-06-27 18:32:49.995 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-27 18:32:50. 25 [lua]-[debug] Tesh loaded successfully. +2022-06-27 18:32:50. 37 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-27 18:32:50. 39 [lua]-[debug] YDClient loaded successfully. +2022-06-27 18:32:50. 39 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-27 18:32:50. 39 [lua]-[warn ] failed: disable +2022-06-27 18:32:50. 40 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-27 18:32:50. 40 [lua]-[warn ] failed: disable +2022-06-27 18:32:50. 40 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-27 18:32:50. 41 [lua]-[warn ] failed: disable +2022-06-27 18:32:50. 41 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-27 18:32:50. 82 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-27 18:32:50. 84 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-27 18:32:50. 86 [lua]-[debug] YDTrigger loaded successfully. +2022-06-27 18:32:50. 86 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-27 18:32:50. 87 [inject]-[debug] Start installing inline hooks. +2022-06-27 18:32:50. 87 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-27 18:32:50. 87 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-27 18:32:50. 87 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-27 18:32:50. 87 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-27 18:32:50. 87 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-27 18:32:50. 87 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-27 18:32:50. 87 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-27 18:32:50. 87 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-27 18:32:50. 87 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-27 18:32:50. 88 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-27 18:32:50. 88 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-27 18:32:50. 88 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-27 18:32:50. 88 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-27 18:32:50. 88 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-27 18:32:50. 88 [inject]-[debug] Installing inline hooks complete. +2022-06-27 18:32:50. 88 [inject]-[debug] IAT hook initialization started. +2022-06-27 18:32:50. 88 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-27 18:32:50. 88 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-27 18:32:50. 88 [inject]-[debug] IAT hook initialization completed. +2022-06-27 18:32:50. 88 [inject]-[debug] Patches initialization started. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing syntax check patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing auto disable patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing enable trigger check patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-27 18:32:50. 88 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing doodad limit patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing unit/item limit patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing editor multi-instance patch +2022-06-27 18:32:50. 88 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-27 18:32:50. 88 [inject]-[trace] Installing attack table patch +2022-06-27 18:32:50. 88 [inject]-[debug] Patches initialization completed. +2022-06-27 18:32:50. 88 [inject]-[info ] YDWE startup complete. +2022-06-27 18:32:50. 89 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-27 18:32:50. 89 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-27 18:32:50. 90 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-27 18:32:50. 90 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-27 18:32:50.102 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-27 18:32:50.103 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-27 18:32:50.105 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-27 18:32:50.105 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-27 18:32:50.105 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-27 18:32:50.106 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-27 18:32:50.106 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-27 18:32:50.112 [lua]-[trace] Scanned file: 99 +2022-06-27 18:32:50.116 [lua]-[debug] ********************* on startup end ********************* +2022-06-27 18:32:50.669 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:32:50.696 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:32:50.842 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:32:50.935 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-27 18:32:50.937 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-27 18:32:50.938 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-27 18:32:50.939 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-27 18:32:50.940 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-27 18:32:52.846 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-27 18:32:52.847 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-27 18:34:15.524 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 18:34:15.524 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 18:34:15.524 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-06-27 18:34:15.749 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-27 18:34:15.775 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-27 18:34:15.897 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-27 18:57:22.839 [event]-[trace] WE is about to compile maps. +2022-06-27 18:57:22.881 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:57:22.881 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:57:22.881 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:57:22.881 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:57:22.881 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:57:22.883 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:57:22.883 [lua]-[trace] Processing file.out +2022-06-27 18:57:22.887 [lua]-[trace] Wave compilation start. +2022-06-27 18:57:22.908 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:57:23.239 [lua]-[trace] Template compilation start. +2022-06-27 18:57:23.240 [lua]-[trace] Initializing 'computed.ability2order' +2022-06-27 18:57:23.240 [lua]-[trace] Initializing 'computed.order_list' +2022-06-27 18:57:23.241 [lua]-[trace] Initializing 'computed.order_id' +2022-06-27 18:57:23.242 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:57:23.243 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:57:25. 8 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:57:25. 9 [lua]-[debug] Result true +2022-06-27 18:57:25. 9 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:57:39.240 [event]-[trace] WE is about to compile maps. +2022-06-27 18:57:39.287 [lua]-[debug] ********************* on save start ********************* +2022-06-27 18:57:39.287 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-27 18:57:39.287 [lua]-[trace] Saving F:\MapJ\攻防类型.w3x +2022-06-27 18:57:39.287 [lua]-[trace] Save version 1.27.0.52240 +2022-06-27 18:57:39.287 [lua]-[trace] mpq_util.update_file. +2022-06-27 18:57:39.288 [lua]-[trace] war3map.j has been extracted from 攻防类型.w3x +2022-06-27 18:57:39.288 [lua]-[trace] Processing file.out +2022-06-27 18:57:39.292 [lua]-[trace] Wave compilation start. +2022-06-27 18:57:39.309 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-06-27 18:57:39.628 [lua]-[trace] Template compilation start. +2022-06-27 18:57:39.637 [lua]-[debug] Template compilation succeeded. +2022-06-27 18:57:39.638 [lua]-[trace] JassHelper compilation start. +2022-06-27 18:57:41.254 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\攻防类型.w3x", returned 0 +2022-06-27 18:57:41.254 [lua]-[debug] Result true +2022-06-27 18:57:41.254 [lua]-[debug] ********************* on save end ********************* +2022-06-27 18:57:45.614 [lua]-[debug] ********************* on exit start ********************* +2022-06-27 18:57:45.614 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-27 18:57:45.614 [inject]-[debug] IAT hook cleanup started. +2022-06-27 18:57:45.614 [inject]-[trace] WE IAT hook cleaned. +2022-06-27 18:57:45.614 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-27 18:57:45.614 [inject]-[debug] IAT hook cleanup completed. +2022-06-27 18:57:45.614 [inject]-[debug] Inline hook uninstallation begins! +2022-06-27 18:57:45.614 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-27 18:57:45.614 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-27 18:57:45.614 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-27 18:57:45.614 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-27 18:57:45.614 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-27 18:57:45.614 [inject]-[debug] Inline hook uninstallation finished! +2022-06-27 18:57:45.615 [lua]-[trace] Unload plugin YDTrigger. +2022-06-27 18:57:45.615 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-27 18:57:45.615 [lua]-[trace] Unload plugin Tesh. +2022-06-27 18:57:45.619 [lua]-[trace] Unload plugin YDClient. +2022-06-27 18:57:45.619 [lua]-[debug] ********************* on exit end ********************* +2022-06-27 18:57:45.619 [event]-[info ] Main program exit. +2022-06-27 18:57:46.193 [root]-[info ] Script engine has been shut down. +2022-06-30 15:03:00. 47 [root]-[info ] ------------------------------------------------------ +2022-06-30 15:03:00. 50 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-06-30 15:03:00. 50 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-06-30 15:03:00. 50 [root]-[info ] Windows version: 10.0.19041 +2022-06-30 15:03:00. 52 [root]-[debug] Initialize script engine successfully. +2022-06-30 15:03:00. 52 [root]-[info ] Script engine startup complete. +2022-06-30 15:03:00. 53 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-06-30 15:03:00. 53 [lua]-[trace] Initializing 'sys' +2022-06-30 15:03:00. 55 [lua]-[trace] Initializing 'filesystem' +2022-06-30 15:03:00. 57 [lua]-[trace] Initializing 'gui' +2022-06-30 15:03:00. 59 [lua]-[trace] Initializing 'util' +2022-06-30 15:03:00. 60 [lua]-[trace] Initializing 'ffi.unicode' +2022-06-30 15:03:00. 60 [lua]-[trace] Initializing 'ffi' +2022-06-30 15:03:00. 62 [lua]-[debug] ydwe path F:\平台编辑器 +2022-06-30 15:03:00. 62 [lua]-[trace] Initializing 'event' +2022-06-30 15:03:00. 65 [lua]-[trace] Initializing 'virtual_mpq' +2022-06-30 15:03:00. 67 [lua]-[trace] Initializing 'registry' +2022-06-30 15:03:00. 68 [lua]-[trace] Initializing 'version' +2022-06-30 15:03:00. 69 [lua]-[trace] Initializing 'localization' +2022-06-30 15:03:00. 69 [lua]-[trace] Initializing 'i18n' +2022-06-30 15:03:00. 71 [lua]-[trace] Initializing 'config' +2022-06-30 15:03:00. 72 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-30 15:03:00. 72 [lua]-[trace] Initializing 'plugin' +2022-06-30 15:03:00. 73 [lua]-[trace] Initializing 'uiloader' +2022-06-30 15:03:00. 74 [lua]-[trace] Initializing 'stringify_slk' +2022-06-30 15:03:00. 75 [lua]-[trace] Initializing 'ui-builder.init' +2022-06-30 15:03:00. 75 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-06-30 15:03:00. 76 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-06-30 15:03:00. 76 [lua]-[trace] Initializing 'lni-c' +2022-06-30 15:03:00. 78 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-06-30 15:03:00. 79 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-06-30 15:03:00. 79 [lua]-[trace] Initializing 'ui-builder.merge' +2022-06-30 15:03:00. 80 [lua]-[trace] Initializing 'w3xparser' +2022-06-30 15:03:00. 82 [lua]-[trace] Initializing 'check_object' +2022-06-30 15:03:00. 84 [lua]-[trace] Initializing 'ffi.storm' +2022-06-30 15:03:00. 84 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-06-30 15:03:00. 85 [lua]-[trace] Initializing 'ffi.gui' +2022-06-30 15:03:00. 86 [event]-[trace] RegisterEvent id: 7 +2022-06-30 15:03:00. 86 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-06-30 15:03:00. 87 [event]-[trace] RegisterEvent id: 5 +2022-06-30 15:03:00. 87 [lua]-[trace] Initializing 'ydwe_on_save' +2022-06-30 15:03:00. 88 [lua]-[trace] Initializing 'compile.inject_code' +2022-06-30 15:03:00. 89 [lua]-[trace] Initializing 'compile.wave' +2022-06-30 15:03:00. 90 [lua]-[trace] Initializing 'compile.template' +2022-06-30 15:03:00. 91 [lua]-[trace] Initializing 'compile.cjass' +2022-06-30 15:03:00. 91 [lua]-[trace] Initializing 'compile.jasshelper' +2022-06-30 15:03:00. 92 [lua]-[trace] Initializing 'mpq_util' +2022-06-30 15:03:00. 92 [lua]-[trace] Initializing 'ffi.stormlib' +2022-06-30 15:03:00. 93 [lua]-[trace] Initializing 'compile.native' +2022-06-30 15:03:00. 94 [event]-[trace] RegisterEvent id: 3 +2022-06-30 15:03:00. 94 [event]-[trace] RegisterEvent id: 2 +2022-06-30 15:03:00. 94 [lua]-[trace] Initializing 'ydwe_on_test' +2022-06-30 15:03:00. 95 [lua]-[trace] Initializing 'w3x2lni' +2022-06-30 15:03:00. 96 [lua]-[trace] Initializing 'utility' +2022-06-30 15:03:00. 96 [lua]-[trace] Initializing 'mapdump' +2022-06-30 15:03:00. 96 [event]-[trace] RegisterEvent id: 4 +2022-06-30 15:03:00. 96 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-06-30 15:03:00. 98 [event]-[trace] RegisterEvent id: 0 +2022-06-30 15:03:00. 98 [event]-[trace] RegisterEvent id: 1 +2022-06-30 15:03:00. 98 [event]-[trace] RegisterEvent id: 6 +2022-06-30 15:03:00. 98 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-06-30 15:03:00.273 [event]-[trace] RegisterEvent id: 8 +2022-06-30 15:03:00.273 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-06-30 15:03:00.274 [event]-[trace] RegisterEvent id: 9 +2022-06-30 15:03:00.274 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-06-30 15:03:00.278 [event]-[info ] Entering main program. +2022-06-30 15:03:00.278 [event]-[debug] Command line: +2022-06-30 15:03:00.281 [lua]-[debug] ********************* on startup start ********************* +2022-06-30 15:03:00.282 [lua]-[debug] ydwe version 0.0.0.0 +2022-06-30 15:03:00.282 [lua]-[debug] war3 version 1.27.0.52240 +2022-06-30 15:03:00.282 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-06-30 15:03:00.282 [lua]-[trace] check_conflicting_ui +2022-06-30 15:03:00.282 [lua]-[trace] check_conflicting_units +2022-06-30 15:03:00.282 [lua]-[trace] clear_potential_conflicting +2022-06-30 15:03:00.282 [lua]-[trace] check_war3_version +2022-06-30 15:03:00.288 [lua]-[error] Cannot find war3.mpq +2022-06-30 15:03:00.294 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-06-30 15:03:00.333 [lua]-[debug] Tesh loaded successfully. +2022-06-30 15:03:00.360 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-06-30 15:03:00.363 [lua]-[debug] YDClient loaded successfully. +2022-06-30 15:03:00.363 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-06-30 15:03:00.364 [lua]-[warn ] failed: disable +2022-06-30 15:03:00.365 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-06-30 15:03:00.366 [lua]-[warn ] failed: disable +2022-06-30 15:03:00.366 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-06-30 15:03:00.367 [lua]-[warn ] failed: disable +2022-06-30 15:03:00.367 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-06-30 15:03:00.408 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-06-30 15:03:00.413 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-06-30 15:03:00.416 [lua]-[debug] YDTrigger loaded successfully. +2022-06-30 15:03:00.416 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-06-30 15:03:00.418 [inject]-[debug] Start installing inline hooks. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-06-30 15:03:00.419 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-06-30 15:03:00.419 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-06-30 15:03:00.419 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-06-30 15:03:00.419 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-06-30 15:03:00.419 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-06-30 15:03:00.419 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-06-30 15:03:00.419 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-06-30 15:03:00.419 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-06-30 15:03:00.419 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-06-30 15:03:00.419 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-06-30 15:03:00.419 [inject]-[debug] Installing inline hooks complete. +2022-06-30 15:03:00.419 [inject]-[debug] IAT hook initialization started. +2022-06-30 15:03:00.419 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-06-30 15:03:00.419 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-06-30 15:03:00.419 [inject]-[debug] IAT hook initialization completed. +2022-06-30 15:03:00.419 [inject]-[debug] Patches initialization started. +2022-06-30 15:03:00.419 [inject]-[trace] Installing syntax check patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing auto disable patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing enable trigger check patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-06-30 15:03:00.419 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing doodad limit patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing unit/item limit patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing editor multi-instance patch +2022-06-30 15:03:00.419 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-06-30 15:03:00.419 [inject]-[trace] Installing attack table patch +2022-06-30 15:03:00.419 [inject]-[debug] Patches initialization completed. +2022-06-30 15:03:00.419 [inject]-[info ] YDWE startup complete. +2022-06-30 15:03:00.420 [lua]-[debug] YDWeHelper loaded successfully. +2022-06-30 15:03:00.420 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-06-30 15:03:00.421 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-06-30 15:03:00.421 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-06-30 15:03:00.444 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-06-30 15:03:00.447 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-06-30 15:03:00.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-06-30 15:03:00.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-06-30 15:03:00.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-06-30 15:03:00.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-06-30 15:03:00.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-06-30 15:03:00.461 [lua]-[trace] Scanned file: 99 +2022-06-30 15:03:00.461 [lua]-[debug] ********************* on startup end ********************* +2022-06-30 15:03:00.954 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-30 15:03:00.982 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-30 15:03:01.141 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-30 15:03:01.254 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-06-30 15:03:01.256 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-06-30 15:03:01.257 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-06-30 15:03:01.258 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-06-30 15:03:01.259 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-06-30 15:03:03. 56 [lua]-[debug] ********************* on menuinit start ********************* +2022-06-30 15:03:03. 57 [lua]-[debug] ********************* on menuinit end ********************* +2022-06-30 15:05:48.955 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-30 15:05:48.955 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-30 15:05:48.955 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-06-30 15:05:49.169 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-06-30 15:05:49.192 [lua]-[trace] virtual_mpq 'triggerdata' +2022-06-30 15:05:49.329 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-06-30 15:08:29.934 [lua]-[debug] ********************* on exit start ********************* +2022-06-30 15:08:29.934 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-06-30 15:08:29.934 [lua]-[trace] Unload plugin YDTrigger. +2022-06-30 15:08:29.934 [lua]-[trace] Unload plugin YDWeHelper. +2022-06-30 15:08:29.934 [inject]-[debug] IAT hook cleanup started. +2022-06-30 15:08:29.934 [inject]-[trace] WE IAT hook cleaned. +2022-06-30 15:08:29.934 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-06-30 15:08:29.934 [inject]-[debug] IAT hook cleanup completed. +2022-06-30 15:08:29.934 [inject]-[debug] Inline hook uninstallation begins! +2022-06-30 15:08:29.934 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-06-30 15:08:29.934 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-06-30 15:08:29.935 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-06-30 15:08:29.935 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-06-30 15:08:29.935 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-06-30 15:08:29.935 [inject]-[debug] Inline hook uninstallation finished! +2022-06-30 15:08:29.935 [lua]-[trace] Unload plugin Tesh. +2022-06-30 15:08:29.936 [lua]-[trace] Unload plugin YDClient. +2022-06-30 15:08:29.936 [lua]-[debug] ********************* on exit end ********************* +2022-06-30 15:08:29.936 [event]-[info ] Main program exit. +2022-06-30 15:08:30.337 [root]-[info ] Script engine has been shut down. +2022-07-01 10:18:38.582 [root]-[info ] ------------------------------------------------------ +2022-07-01 10:18:38.587 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-01 10:18:38.587 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-01 10:18:38.587 [root]-[info ] Windows version: 10.0.19041 +2022-07-01 10:18:38.587 [root]-[debug] Initialize script engine successfully. +2022-07-01 10:18:38.587 [root]-[info ] Script engine startup complete. +2022-07-01 10:18:38.588 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-01 10:18:38.588 [lua]-[trace] Initializing 'sys' +2022-07-01 10:18:38.590 [lua]-[trace] Initializing 'filesystem' +2022-07-01 10:18:38.591 [lua]-[trace] Initializing 'gui' +2022-07-01 10:18:38.592 [lua]-[trace] Initializing 'util' +2022-07-01 10:18:38.593 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-01 10:18:38.594 [lua]-[trace] Initializing 'ffi' +2022-07-01 10:18:38.595 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-01 10:18:38.595 [lua]-[trace] Initializing 'event' +2022-07-01 10:18:38.598 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-01 10:18:38.599 [lua]-[trace] Initializing 'registry' +2022-07-01 10:18:38.600 [lua]-[trace] Initializing 'version' +2022-07-01 10:18:38.601 [lua]-[trace] Initializing 'localization' +2022-07-01 10:18:38.601 [lua]-[trace] Initializing 'i18n' +2022-07-01 10:18:38.603 [lua]-[trace] Initializing 'config' +2022-07-01 10:18:38.605 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-01 10:18:38.605 [lua]-[trace] Initializing 'plugin' +2022-07-01 10:18:38.605 [lua]-[trace] Initializing 'uiloader' +2022-07-01 10:18:38.606 [lua]-[trace] Initializing 'stringify_slk' +2022-07-01 10:18:38.607 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-01 10:18:38.607 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-01 10:18:38.608 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-01 10:18:38.609 [lua]-[trace] Initializing 'lni-c' +2022-07-01 10:18:38.610 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-01 10:18:38.610 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-01 10:18:38.611 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-01 10:18:38.611 [lua]-[trace] Initializing 'w3xparser' +2022-07-01 10:18:38.613 [lua]-[trace] Initializing 'check_object' +2022-07-01 10:18:38.614 [lua]-[trace] Initializing 'ffi.storm' +2022-07-01 10:18:38.615 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-01 10:18:38.615 [lua]-[trace] Initializing 'ffi.gui' +2022-07-01 10:18:38.617 [event]-[trace] RegisterEvent id: 7 +2022-07-01 10:18:38.617 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-01 10:18:38.617 [event]-[trace] RegisterEvent id: 5 +2022-07-01 10:18:38.617 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-01 10:18:38.618 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-01 10:18:38.620 [lua]-[trace] Initializing 'compile.wave' +2022-07-01 10:18:38.620 [lua]-[trace] Initializing 'compile.template' +2022-07-01 10:18:38.621 [lua]-[trace] Initializing 'compile.cjass' +2022-07-01 10:18:38.621 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-01 10:18:38.622 [lua]-[trace] Initializing 'mpq_util' +2022-07-01 10:18:38.623 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-01 10:18:38.624 [lua]-[trace] Initializing 'compile.native' +2022-07-01 10:18:38.625 [event]-[trace] RegisterEvent id: 3 +2022-07-01 10:18:38.625 [event]-[trace] RegisterEvent id: 2 +2022-07-01 10:18:38.625 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-01 10:18:38.625 [lua]-[trace] Initializing 'w3x2lni' +2022-07-01 10:18:38.626 [lua]-[trace] Initializing 'utility' +2022-07-01 10:18:38.627 [lua]-[trace] Initializing 'mapdump' +2022-07-01 10:18:38.627 [event]-[trace] RegisterEvent id: 4 +2022-07-01 10:18:38.627 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-01 10:18:38.628 [event]-[trace] RegisterEvent id: 0 +2022-07-01 10:18:38.628 [event]-[trace] RegisterEvent id: 1 +2022-07-01 10:18:38.628 [event]-[trace] RegisterEvent id: 6 +2022-07-01 10:18:38.628 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-01 10:18:38.790 [event]-[trace] RegisterEvent id: 8 +2022-07-01 10:18:38.790 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-01 10:18:38.791 [event]-[trace] RegisterEvent id: 9 +2022-07-01 10:18:38.791 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-01 10:18:38.797 [event]-[info ] Entering main program. +2022-07-01 10:18:38.797 [event]-[debug] Command line: +2022-07-01 10:18:38.802 [lua]-[debug] ********************* on startup start ********************* +2022-07-01 10:18:38.806 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-01 10:18:38.806 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-01 10:18:38.807 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-01 10:18:38.807 [lua]-[trace] check_conflicting_ui +2022-07-01 10:18:38.807 [lua]-[trace] check_conflicting_units +2022-07-01 10:18:38.807 [lua]-[trace] clear_potential_conflicting +2022-07-01 10:18:38.807 [lua]-[trace] check_war3_version +2022-07-01 10:18:38.813 [lua]-[error] Cannot find war3.mpq +2022-07-01 10:18:38.815 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-01 10:18:38.859 [lua]-[debug] Tesh loaded successfully. +2022-07-01 10:18:38.871 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-01 10:18:38.873 [lua]-[debug] YDClient loaded successfully. +2022-07-01 10:18:38.874 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-01 10:18:38.874 [lua]-[warn ] failed: disable +2022-07-01 10:18:38.875 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-01 10:18:38.875 [lua]-[warn ] failed: disable +2022-07-01 10:18:38.876 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-01 10:18:38.876 [lua]-[warn ] failed: disable +2022-07-01 10:18:38.876 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-01 10:18:38.920 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-01 10:18:38.923 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-01 10:18:38.926 [lua]-[debug] YDTrigger loaded successfully. +2022-07-01 10:18:38.926 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-01 10:18:38.928 [inject]-[debug] Start installing inline hooks. +2022-07-01 10:18:38.928 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-01 10:18:38.928 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-01 10:18:38.928 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-01 10:18:38.928 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-01 10:18:38.928 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-01 10:18:38.928 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-01 10:18:38.928 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-01 10:18:38.928 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-01 10:18:38.928 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-01 10:18:38.928 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-01 10:18:38.929 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-01 10:18:38.929 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-01 10:18:38.929 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-01 10:18:38.929 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-01 10:18:38.929 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-01 10:18:38.929 [inject]-[debug] Installing inline hooks complete. +2022-07-01 10:18:38.929 [inject]-[debug] IAT hook initialization started. +2022-07-01 10:18:38.929 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-01 10:18:38.929 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-01 10:18:38.929 [inject]-[debug] IAT hook initialization completed. +2022-07-01 10:18:38.929 [inject]-[debug] Patches initialization started. +2022-07-01 10:18:38.929 [inject]-[trace] Installing syntax check patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing auto disable patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing enable trigger check patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-01 10:18:38.929 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing doodad limit patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing unit/item limit patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing editor multi-instance patch +2022-07-01 10:18:38.929 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-01 10:18:38.929 [inject]-[trace] Installing attack table patch +2022-07-01 10:18:38.929 [inject]-[debug] Patches initialization completed. +2022-07-01 10:18:38.929 [inject]-[info ] YDWE startup complete. +2022-07-01 10:18:38.929 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-01 10:18:38.930 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-01 10:18:38.931 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-01 10:18:38.931 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-01 10:18:38.949 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-01 10:18:38.953 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-01 10:18:38.955 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-01 10:18:38.955 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-01 10:18:38.955 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-01 10:18:38.956 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-01 10:18:38.956 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-01 10:18:38.967 [lua]-[trace] Scanned file: 99 +2022-07-01 10:18:38.967 [lua]-[debug] ********************* on startup end ********************* +2022-07-01 10:18:39.538 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-01 10:18:39.562 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-01 10:18:39.698 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-01 10:18:39.813 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-01 10:18:39.815 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-01 10:18:39.816 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-01 10:18:39.816 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-01 10:18:39.817 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-01 10:18:41.606 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-01 10:18:41.606 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-01 20:06:50.486 [root]-[info ] ------------------------------------------------------ +2022-07-01 20:06:50.489 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-01 20:06:50.489 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-01 20:06:50.489 [root]-[info ] Windows version: 10.0.19041 +2022-07-01 20:06:50.489 [root]-[debug] Initialize script engine successfully. +2022-07-01 20:06:50.489 [root]-[info ] Script engine startup complete. +2022-07-01 20:06:50.489 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-01 20:06:50.489 [lua]-[trace] Initializing 'sys' +2022-07-01 20:06:50.490 [lua]-[trace] Initializing 'filesystem' +2022-07-01 20:06:50.491 [lua]-[trace] Initializing 'gui' +2022-07-01 20:06:50.492 [lua]-[trace] Initializing 'util' +2022-07-01 20:06:50.493 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-01 20:06:50.493 [lua]-[trace] Initializing 'ffi' +2022-07-01 20:06:50.495 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-01 20:06:50.495 [lua]-[trace] Initializing 'event' +2022-07-01 20:06:50.497 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-01 20:06:50.499 [lua]-[trace] Initializing 'registry' +2022-07-01 20:06:50.500 [lua]-[trace] Initializing 'version' +2022-07-01 20:06:50.501 [lua]-[trace] Initializing 'localization' +2022-07-01 20:06:50.501 [lua]-[trace] Initializing 'i18n' +2022-07-01 20:06:50.502 [lua]-[trace] Initializing 'config' +2022-07-01 20:06:50.503 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-01 20:06:50.503 [lua]-[trace] Initializing 'plugin' +2022-07-01 20:06:50.503 [lua]-[trace] Initializing 'uiloader' +2022-07-01 20:06:50.504 [lua]-[trace] Initializing 'stringify_slk' +2022-07-01 20:06:50.504 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-01 20:06:50.504 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-01 20:06:50.505 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-01 20:06:50.505 [lua]-[trace] Initializing 'lni-c' +2022-07-01 20:06:50.506 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-01 20:06:50.506 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-01 20:06:50.507 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-01 20:06:50.507 [lua]-[trace] Initializing 'w3xparser' +2022-07-01 20:06:50.508 [lua]-[trace] Initializing 'check_object' +2022-07-01 20:06:50.510 [lua]-[trace] Initializing 'ffi.storm' +2022-07-01 20:06:50.510 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-01 20:06:50.511 [lua]-[trace] Initializing 'ffi.gui' +2022-07-01 20:06:50.511 [event]-[trace] RegisterEvent id: 7 +2022-07-01 20:06:50.511 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-01 20:06:50.512 [event]-[trace] RegisterEvent id: 5 +2022-07-01 20:06:50.512 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-01 20:06:50.512 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-01 20:06:50.513 [lua]-[trace] Initializing 'compile.wave' +2022-07-01 20:06:50.514 [lua]-[trace] Initializing 'compile.template' +2022-07-01 20:06:50.514 [lua]-[trace] Initializing 'compile.cjass' +2022-07-01 20:06:50.515 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-01 20:06:50.515 [lua]-[trace] Initializing 'mpq_util' +2022-07-01 20:06:50.515 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-01 20:06:50.516 [lua]-[trace] Initializing 'compile.native' +2022-07-01 20:06:50.516 [event]-[trace] RegisterEvent id: 3 +2022-07-01 20:06:50.516 [event]-[trace] RegisterEvent id: 2 +2022-07-01 20:06:50.516 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-01 20:06:50.516 [lua]-[trace] Initializing 'w3x2lni' +2022-07-01 20:06:50.517 [lua]-[trace] Initializing 'utility' +2022-07-01 20:06:50.517 [lua]-[trace] Initializing 'mapdump' +2022-07-01 20:06:50.518 [event]-[trace] RegisterEvent id: 4 +2022-07-01 20:06:50.518 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-01 20:06:50.518 [event]-[trace] RegisterEvent id: 0 +2022-07-01 20:06:50.518 [event]-[trace] RegisterEvent id: 1 +2022-07-01 20:06:50.518 [event]-[trace] RegisterEvent id: 6 +2022-07-01 20:06:50.518 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-01 20:06:50.690 [event]-[trace] RegisterEvent id: 8 +2022-07-01 20:06:50.690 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-01 20:06:50.690 [event]-[trace] RegisterEvent id: 9 +2022-07-01 20:06:50.690 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-01 20:06:50.695 [event]-[info ] Entering main program. +2022-07-01 20:06:50.695 [event]-[debug] Command line: +2022-07-01 20:06:50.698 [lua]-[debug] ********************* on startup start ********************* +2022-07-01 20:06:50.702 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-01 20:06:50.702 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-01 20:06:50.703 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-01 20:06:50.703 [lua]-[trace] check_conflicting_ui +2022-07-01 20:06:50.703 [lua]-[trace] check_conflicting_units +2022-07-01 20:06:50.703 [lua]-[trace] clear_potential_conflicting +2022-07-01 20:06:50.703 [lua]-[trace] check_war3_version +2022-07-01 20:06:50.707 [lua]-[error] Cannot find war3.mpq +2022-07-01 20:06:50.709 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-01 20:06:50.752 [lua]-[debug] Tesh loaded successfully. +2022-07-01 20:06:50.762 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-01 20:06:50.765 [lua]-[debug] YDClient loaded successfully. +2022-07-01 20:06:50.765 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-01 20:06:50.765 [lua]-[warn ] failed: disable +2022-07-01 20:06:50.766 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-01 20:06:50.766 [lua]-[warn ] failed: disable +2022-07-01 20:06:50.766 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-01 20:06:50.767 [lua]-[warn ] failed: disable +2022-07-01 20:06:50.767 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-01 20:06:50.807 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-01 20:06:50.810 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-01 20:06:50.813 [lua]-[debug] YDTrigger loaded successfully. +2022-07-01 20:06:50.813 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-01 20:06:50.815 [inject]-[debug] Start installing inline hooks. +2022-07-01 20:06:50.815 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-01 20:06:50.815 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-01 20:06:50.815 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-01 20:06:50.815 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-01 20:06:50.815 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-01 20:06:50.815 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-01 20:06:50.815 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-01 20:06:50.815 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-01 20:06:50.816 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-01 20:06:50.816 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-01 20:06:50.816 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-01 20:06:50.816 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-01 20:06:50.816 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-01 20:06:50.816 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-01 20:06:50.816 [inject]-[debug] Installing inline hooks complete. +2022-07-01 20:06:50.816 [inject]-[debug] IAT hook initialization started. +2022-07-01 20:06:50.816 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-01 20:06:50.816 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-01 20:06:50.816 [inject]-[debug] IAT hook initialization completed. +2022-07-01 20:06:50.816 [inject]-[debug] Patches initialization started. +2022-07-01 20:06:50.817 [inject]-[trace] Installing syntax check patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing auto disable patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing enable trigger check patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-01 20:06:50.817 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing doodad limit patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing unit/item limit patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing editor multi-instance patch +2022-07-01 20:06:50.817 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-01 20:06:50.817 [inject]-[trace] Installing attack table patch +2022-07-01 20:06:50.817 [inject]-[debug] Patches initialization completed. +2022-07-01 20:06:50.817 [inject]-[info ] YDWE startup complete. +2022-07-01 20:06:50.817 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-01 20:06:50.818 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-01 20:06:50.818 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-01 20:06:50.818 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-01 20:06:50.832 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-01 20:06:50.834 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-01 20:06:50.835 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-01 20:06:50.836 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-01 20:06:50.836 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-01 20:06:50.836 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-01 20:06:50.836 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-01 20:06:50.843 [lua]-[trace] Scanned file: 99 +2022-07-01 20:06:50.845 [lua]-[debug] ********************* on startup end ********************* +2022-07-01 20:06:51.397 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-01 20:06:51.420 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-01 20:06:51.553 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-01 20:06:51.647 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-01 20:06:51.649 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-01 20:06:51.649 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-01 20:06:51.650 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-01 20:06:51.651 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-01 20:06:53.680 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-01 20:06:53.681 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-01 20:07:10.425 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-01 20:07:10.425 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-01 20:07:10.425 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-01 20:07:10.649 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-01 20:07:10.675 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-01 20:07:10.813 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-01 20:07:27.736 [event]-[trace] WE is about to compile maps. +2022-07-01 20:07:27.786 [lua]-[debug] ********************* on save start ********************* +2022-07-01 20:07:27.786 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-01 20:07:27.786 [lua]-[trace] Saving F:\1.27a\WarcraftIII\maps\澄海3C\1.w3x +2022-07-01 20:07:27.786 [lua]-[trace] Save version 1.27.0.52240 +2022-07-01 20:07:27.786 [lua]-[trace] mpq_util.update_file. +2022-07-01 20:07:27.788 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-01 20:07:27.788 [lua]-[trace] Processing file.out +2022-07-01 20:07:27.790 [lua]-[trace] Writing code to file.out +2022-07-01 20:07:27.790 [lua]-[trace] Injecting F:\平台编辑器\jass\AntiBJLeak\detail\GetUnitsSelectedAll.j +2022-07-01 20:07:27.791 [lua]-[trace] Injection completed +2022-07-01 20:07:27.791 [lua]-[trace] Injecting F:\平台编辑器\jass\YDWETimerSystem.j +2022-07-01 20:07:27.792 [lua]-[trace] Injection completed +2022-07-01 20:07:27.792 [lua]-[trace] Wave compilation start. +2022-07-01 20:07:27.828 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\1.27a\WarcraftIII\maps\澄海3C" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-01 20:07:27.982 [lua]-[trace] Template compilation start. +2022-07-01 20:07:27.983 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-01 20:07:27.984 [lua]-[trace] Initializing 'computed.order_list' +2022-07-01 20:07:27.985 [lua]-[trace] Initializing 'computed.order_id' +2022-07-01 20:07:27.986 [lua]-[trace] Initializing 'slk' +2022-07-01 20:07:28.270 [lua]-[trace] Initializing 'archive' +2022-07-01 20:07:28.271 [lua]-[trace] Initializing 'archive_mpq' +2022-07-01 20:07:28.272 [lua]-[trace] Initializing 'archive_dir' +2022-07-01 20:07:28.273 [lua]-[trace] Initializing 'ffi.sleep' +2022-07-01 20:07:28.273 [lua]-[trace] Initializing 'progress' +2022-07-01 20:07:28.274 [lua]-[trace] Initializing 'slk.frontend' +2022-07-01 20:07:28.276 [lua]-[trace] Initializing 'slk.frontend_wts' +2022-07-01 20:07:28.276 [lua]-[trace] Initializing 'lpeg' +2022-07-01 20:07:28.282 [lua]-[trace] Initializing 'slk.frontend_obj' +2022-07-01 20:07:28.453 [lua]-[trace] Initializing 'slk.frontend_merge' +2022-07-01 20:07:28.480 [lua]-[trace] Initializing 'slk.frontend_updateobj' +2022-07-01 20:07:28.539 [lua]-[trace] Initializing 'slk.frontend_misc' +2022-07-01 20:07:29.107 [lua]-[trace] Initializing 'slk.backend_obj' +2022-07-01 20:07:29.109 [lua]-[debug] refresh object: war3map.w3u +2022-07-01 20:07:29.109 [lua]-[error] F:\ƽ̨༭\share\script\ffi\stormlib.lua:211: attempt to get length of a nil value (local 'buf') +2022-07-01 20:07:29.109 [lua]-[debug] Result false +2022-07-01 20:07:29.109 [lua]-[debug] ********************* on save end ********************* +2022-07-01 20:07:35. 74 [lua]-[debug] ********************* on exit start ********************* +2022-07-01 20:07:35. 74 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-01 20:07:35. 74 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-01 20:07:35. 74 [inject]-[debug] IAT hook cleanup started. +2022-07-01 20:07:35. 75 [inject]-[trace] WE IAT hook cleaned. +2022-07-01 20:07:35. 75 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-01 20:07:35. 75 [inject]-[debug] IAT hook cleanup completed. +2022-07-01 20:07:35. 75 [inject]-[debug] Inline hook uninstallation begins! +2022-07-01 20:07:35. 75 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-01 20:07:35. 75 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-01 20:07:35. 75 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-01 20:07:35. 75 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-01 20:07:35. 75 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-01 20:07:35. 75 [inject]-[debug] Inline hook uninstallation finished! +2022-07-01 20:07:35. 75 [lua]-[trace] Unload plugin YDClient. +2022-07-01 20:07:35. 75 [lua]-[trace] Unload plugin Tesh. +2022-07-01 20:07:35. 77 [lua]-[trace] Unload plugin YDTrigger. +2022-07-01 20:07:35. 78 [lua]-[debug] ********************* on exit end ********************* +2022-07-01 20:07:35. 78 [event]-[info ] Main program exit. +2022-07-14 17:24:16. 34 [root]-[info ] ------------------------------------------------------ +2022-07-14 17:24:16. 40 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-14 17:24:16. 40 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-14 17:24:16. 40 [root]-[info ] Windows version: 10.0.19041 +2022-07-14 17:24:16. 41 [root]-[debug] Initialize script engine successfully. +2022-07-14 17:24:16. 41 [root]-[info ] Script engine startup complete. +2022-07-14 17:24:16. 42 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-14 17:24:16. 42 [lua]-[trace] Initializing 'sys' +2022-07-14 17:24:16. 45 [lua]-[trace] Initializing 'filesystem' +2022-07-14 17:24:16. 47 [lua]-[trace] Initializing 'gui' +2022-07-14 17:24:16. 48 [lua]-[trace] Initializing 'util' +2022-07-14 17:24:16. 49 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-14 17:24:16. 51 [lua]-[trace] Initializing 'ffi' +2022-07-14 17:24:16. 54 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-14 17:24:16. 54 [lua]-[trace] Initializing 'event' +2022-07-14 17:24:16. 58 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-14 17:24:16. 61 [lua]-[trace] Initializing 'registry' +2022-07-14 17:24:16. 63 [lua]-[trace] Initializing 'version' +2022-07-14 17:24:16. 64 [lua]-[trace] Initializing 'localization' +2022-07-14 17:24:16. 64 [lua]-[trace] Initializing 'i18n' +2022-07-14 17:24:16. 67 [lua]-[trace] Initializing 'config' +2022-07-14 17:24:16. 69 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 17:24:16. 69 [lua]-[trace] Initializing 'plugin' +2022-07-14 17:24:16. 71 [lua]-[trace] Initializing 'uiloader' +2022-07-14 17:24:16. 71 [lua]-[trace] Initializing 'stringify_slk' +2022-07-14 17:24:16. 72 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-14 17:24:16. 73 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-14 17:24:16. 74 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-14 17:24:16. 74 [lua]-[trace] Initializing 'lni-c' +2022-07-14 17:24:16. 76 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-14 17:24:16. 77 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-14 17:24:16. 77 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-14 17:24:16. 78 [lua]-[trace] Initializing 'w3xparser' +2022-07-14 17:24:16. 81 [lua]-[trace] Initializing 'check_object' +2022-07-14 17:24:16. 83 [lua]-[trace] Initializing 'ffi.storm' +2022-07-14 17:24:16. 84 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-14 17:24:16. 84 [lua]-[trace] Initializing 'ffi.gui' +2022-07-14 17:24:16. 85 [event]-[trace] RegisterEvent id: 7 +2022-07-14 17:24:16. 85 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-14 17:24:16. 86 [event]-[trace] RegisterEvent id: 5 +2022-07-14 17:24:16. 86 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-14 17:24:16. 87 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-14 17:24:16. 88 [lua]-[trace] Initializing 'compile.wave' +2022-07-14 17:24:16. 88 [lua]-[trace] Initializing 'compile.template' +2022-07-14 17:24:16. 89 [lua]-[trace] Initializing 'compile.cjass' +2022-07-14 17:24:16. 89 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-14 17:24:16. 90 [lua]-[trace] Initializing 'mpq_util' +2022-07-14 17:24:16. 91 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-14 17:24:16. 92 [lua]-[trace] Initializing 'compile.native' +2022-07-14 17:24:16. 93 [event]-[trace] RegisterEvent id: 3 +2022-07-14 17:24:16. 93 [event]-[trace] RegisterEvent id: 2 +2022-07-14 17:24:16. 93 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-14 17:24:16. 93 [lua]-[trace] Initializing 'w3x2lni' +2022-07-14 17:24:16. 95 [lua]-[trace] Initializing 'utility' +2022-07-14 17:24:16. 95 [lua]-[trace] Initializing 'mapdump' +2022-07-14 17:24:16. 96 [event]-[trace] RegisterEvent id: 4 +2022-07-14 17:24:16. 96 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-14 17:24:16. 97 [event]-[trace] RegisterEvent id: 0 +2022-07-14 17:24:16. 97 [event]-[trace] RegisterEvent id: 1 +2022-07-14 17:24:16. 97 [event]-[trace] RegisterEvent id: 6 +2022-07-14 17:24:16. 97 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-14 17:24:16.301 [event]-[trace] RegisterEvent id: 8 +2022-07-14 17:24:16.301 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-14 17:24:16.302 [event]-[trace] RegisterEvent id: 9 +2022-07-14 17:24:16.302 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-14 17:24:16.310 [event]-[info ] Entering main program. +2022-07-14 17:24:16.310 [event]-[debug] Command line: +2022-07-14 17:24:16.314 [lua]-[debug] ********************* on startup start ********************* +2022-07-14 17:24:16.315 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-14 17:24:16.315 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-14 17:24:16.316 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 17:24:16.316 [lua]-[trace] check_conflicting_ui +2022-07-14 17:24:16.316 [lua]-[trace] check_conflicting_units +2022-07-14 17:24:16.316 [lua]-[trace] clear_potential_conflicting +2022-07-14 17:24:16.316 [lua]-[trace] check_war3_version +2022-07-14 17:24:16.322 [lua]-[error] Cannot find war3.mpq +2022-07-14 17:24:16.328 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-14 17:24:16.363 [lua]-[debug] Tesh loaded successfully. +2022-07-14 17:24:16.393 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-14 17:24:16.395 [lua]-[debug] YDClient loaded successfully. +2022-07-14 17:24:16.396 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-14 17:24:16.396 [lua]-[warn ] failed: disable +2022-07-14 17:24:16.397 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-14 17:24:16.397 [lua]-[warn ] failed: disable +2022-07-14 17:24:16.398 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-14 17:24:16.398 [lua]-[warn ] failed: disable +2022-07-14 17:24:16.398 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-14 17:24:16.438 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-14 17:24:16.443 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-14 17:24:16.445 [lua]-[debug] YDTrigger loaded successfully. +2022-07-14 17:24:16.445 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-14 17:24:16.447 [inject]-[debug] Start installing inline hooks. +2022-07-14 17:24:16.447 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-14 17:24:16.448 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-14 17:24:16.448 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-14 17:24:16.448 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-14 17:24:16.448 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-14 17:24:16.448 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-14 17:24:16.448 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-14 17:24:16.448 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-14 17:24:16.448 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-14 17:24:16.448 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-14 17:24:16.448 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-14 17:24:16.448 [inject]-[debug] Installing inline hooks complete. +2022-07-14 17:24:16.448 [inject]-[debug] IAT hook initialization started. +2022-07-14 17:24:16.448 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-14 17:24:16.448 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-14 17:24:16.448 [inject]-[debug] IAT hook initialization completed. +2022-07-14 17:24:16.448 [inject]-[debug] Patches initialization started. +2022-07-14 17:24:16.448 [inject]-[trace] Installing syntax check patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing auto disable patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing enable trigger check patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-14 17:24:16.448 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing doodad limit patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing unit/item limit patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing editor multi-instance patch +2022-07-14 17:24:16.448 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-14 17:24:16.448 [inject]-[trace] Installing attack table patch +2022-07-14 17:24:16.448 [inject]-[debug] Patches initialization completed. +2022-07-14 17:24:16.449 [inject]-[info ] YDWE startup complete. +2022-07-14 17:24:16.449 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-14 17:24:16.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-14 17:24:16.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-14 17:24:16.450 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-14 17:24:16.474 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-14 17:24:16.476 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-14 17:24:16.478 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-14 17:24:16.479 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-14 17:24:16.479 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-14 17:24:16.479 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-14 17:24:16.479 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-14 17:24:16.492 [lua]-[trace] Scanned file: 99 +2022-07-14 17:24:16.494 [lua]-[debug] ********************* on startup end ********************* +2022-07-14 17:24:17. 31 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-14 17:24:17. 52 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-14 17:24:17.205 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-14 17:24:17.332 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-14 17:24:17.333 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-14 17:24:17.334 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-14 17:24:17.335 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-14 17:24:17.336 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-14 17:24:19.292 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-14 17:24:19.292 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-14 17:27:33.161 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-14 17:27:33.161 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-14 17:27:33.161 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-14 17:27:33.379 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-14 17:27:33.401 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-14 17:27:33.534 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-14 18:54:16.453 [event]-[trace] WE is about to compile maps. +2022-07-14 18:54:16.523 [lua]-[debug] ********************* on save start ********************* +2022-07-14 18:54:16.526 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 18:54:16.526 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 18:54:16.526 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 18:54:16.526 [lua]-[trace] mpq_util.update_file. +2022-07-14 18:54:16.528 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 18:54:16.528 [lua]-[trace] Processing file.out +2022-07-14 18:54:16.530 [lua]-[trace] Wave compilation start. +2022-07-14 18:54:16.556 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 18:54:16.669 [lua]-[trace] Template compilation start. +2022-07-14 18:54:16.670 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-14 18:54:16.670 [lua]-[trace] Initializing 'computed.order_list' +2022-07-14 18:54:16.672 [lua]-[trace] Initializing 'computed.order_id' +2022-07-14 18:54:20.458 [lua]-[error] Template error processing: [string "..."]:38: attempt to concatenate a nil value (local 'ty6') +stack traceback: + F:\ƽ̨༭\share\script\compile\template.lua:102: in metamethod '__concat' + [string "..."]:38: in global 'FuncA' + [string "..."]:47: in main chunk + [C]: in function 'xpcall' + F:\ƽ̨༭\share\script\compile\template.lua:102: in method 'do_compile' + F:\ƽ̨༭\share\script\compile\template.lua:115: in method 'compile' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:84: in function + [C]: in function 'pcall' + F:\ƽ̨༭\share\script\mpq_util.lua:30: in method 'update_file' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:53: in upvalue 'compile_map' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:175: in function +2022-07-14 18:54:20.459 [lua]-[error] Processor function cannot complete its task. +2022-07-14 18:54:20.459 [lua]-[debug] Result false +2022-07-14 18:54:20.459 [lua]-[debug] ********************* on save end ********************* +2022-07-14 18:54:45.721 [event]-[trace] WE is about to compile maps. +2022-07-14 18:54:45.773 [lua]-[debug] ********************* on save start ********************* +2022-07-14 18:54:45.774 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 18:54:45.774 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 18:54:45.774 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 18:54:45.774 [lua]-[trace] mpq_util.update_file. +2022-07-14 18:54:45.778 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 18:54:45.778 [lua]-[trace] Processing file.out +2022-07-14 18:54:45.781 [lua]-[trace] Wave compilation start. +2022-07-14 18:54:45.809 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 18:54:45.917 [lua]-[trace] Template compilation start. +2022-07-14 18:54:47.318 [lua]-[error] Template error processing: [string "..."]:43: attempt to concatenate a nil value (local 'default7') +stack traceback: + F:\ƽ̨༭\share\script\compile\template.lua:102: in metamethod '__concat' + [string "..."]:43: in global 'FuncA' + [string "..."]:47: in main chunk + [C]: in function 'xpcall' + F:\ƽ̨༭\share\script\compile\template.lua:102: in method 'do_compile' + F:\ƽ̨༭\share\script\compile\template.lua:115: in method 'compile' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:84: in function + [C]: in function 'pcall' + F:\ƽ̨༭\share\script\mpq_util.lua:30: in method 'update_file' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:53: in upvalue 'compile_map' + F:\ƽ̨༭\share\script\ydwe_on_save.lua:175: in function +2022-07-14 18:54:47.318 [lua]-[error] Processor function cannot complete its task. +2022-07-14 18:54:47.318 [lua]-[debug] Result false +2022-07-14 18:54:47.318 [lua]-[debug] ********************* on save end ********************* +2022-07-14 18:59:06.115 [event]-[trace] WE is about to compile maps. +2022-07-14 18:59:06.163 [lua]-[debug] ********************* on save start ********************* +2022-07-14 18:59:06.164 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 18:59:06.164 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 18:59:06.164 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 18:59:06.164 [lua]-[trace] mpq_util.update_file. +2022-07-14 18:59:06.167 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 18:59:06.167 [lua]-[trace] Processing file.out +2022-07-14 18:59:06.170 [lua]-[trace] Wave compilation start. +2022-07-14 18:59:06.194 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 18:59:06.338 [lua]-[trace] Template compilation start. +2022-07-14 18:59:07.923 [lua]-[error] Template error processing: [string "..."]:41: unexpected symbol near '<' +2022-07-14 18:59:07.923 [lua]-[error] Processor function cannot complete its task. +2022-07-14 18:59:07.923 [lua]-[debug] Result false +2022-07-14 18:59:07.923 [lua]-[debug] ********************* on save end ********************* +2022-07-14 18:59:23.946 [event]-[trace] WE is about to compile maps. +2022-07-14 18:59:23.998 [lua]-[debug] ********************* on save start ********************* +2022-07-14 18:59:23.998 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 18:59:23.998 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 18:59:23.999 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 18:59:23.999 [lua]-[trace] mpq_util.update_file. +2022-07-14 18:59:24. 0 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 18:59:24. 0 [lua]-[trace] Processing file.out +2022-07-14 18:59:24. 3 [lua]-[trace] Wave compilation start. +2022-07-14 18:59:24. 21 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 18:59:24.136 [lua]-[trace] Template compilation start. +2022-07-14 18:59:24.138 [lua]-[debug] Template compilation succeeded. +2022-07-14 18:59:24.140 [lua]-[trace] JassHelper compilation start. +2022-07-14 18:59:25.793 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-14 18:59:25.793 [lua]-[debug] Result false +2022-07-14 18:59:25.793 [lua]-[debug] ********************* on save end ********************* +2022-07-14 19:00:57.929 [event]-[trace] WE is about to compile maps. +2022-07-14 19:00:57.977 [lua]-[debug] ********************* on save start ********************* +2022-07-14 19:00:57.978 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 19:00:57.978 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 19:00:57.978 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 19:00:57.978 [lua]-[trace] mpq_util.update_file. +2022-07-14 19:00:57.981 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 19:00:57.981 [lua]-[trace] Processing file.out +2022-07-14 19:00:57.983 [lua]-[trace] Wave compilation start. +2022-07-14 19:00:58. 8 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 19:00:58.112 [lua]-[trace] Template compilation start. +2022-07-14 19:00:58.113 [lua]-[debug] Template compilation succeeded. +2022-07-14 19:00:58.114 [lua]-[trace] JassHelper compilation start. +2022-07-14 19:01:00.112 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-14 19:01:00.113 [lua]-[debug] Result false +2022-07-14 19:01:00.113 [lua]-[debug] ********************* on save end ********************* +2022-07-14 19:04:18.686 [event]-[trace] WE is about to compile maps. +2022-07-14 19:04:18.738 [lua]-[debug] ********************* on save start ********************* +2022-07-14 19:04:18.739 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-14 19:04:18.739 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-14 19:04:18.739 [lua]-[trace] Save version 1.27.0.52240 +2022-07-14 19:04:18.739 [lua]-[trace] mpq_util.update_file. +2022-07-14 19:04:18.741 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-14 19:04:18.741 [lua]-[trace] Processing file.out +2022-07-14 19:04:18.744 [lua]-[trace] Wave compilation start. +2022-07-14 19:04:18.768 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-14 19:04:18.874 [lua]-[trace] Template compilation start. +2022-07-14 19:04:18.876 [lua]-[debug] Template compilation succeeded. +2022-07-14 19:04:18.877 [lua]-[trace] JassHelper compilation start. +2022-07-14 19:04:20.719 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-14 19:04:20.719 [lua]-[debug] Result false +2022-07-14 19:04:20.719 [lua]-[debug] ********************* on save end ********************* +2022-07-15 09:51:42.567 [root]-[info ] ------------------------------------------------------ +2022-07-15 09:51:42.571 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 09:51:42.571 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 09:51:42.571 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 09:51:42.571 [root]-[debug] Initialize script engine successfully. +2022-07-15 09:51:42.571 [root]-[info ] Script engine startup complete. +2022-07-15 09:51:42.572 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 09:51:42.572 [lua]-[trace] Initializing 'sys' +2022-07-15 09:51:42.573 [lua]-[trace] Initializing 'filesystem' +2022-07-15 09:51:42.575 [lua]-[trace] Initializing 'gui' +2022-07-15 09:51:42.576 [lua]-[trace] Initializing 'util' +2022-07-15 09:51:42.577 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 09:51:42.577 [lua]-[trace] Initializing 'ffi' +2022-07-15 09:51:42.579 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 09:51:42.579 [lua]-[trace] Initializing 'event' +2022-07-15 09:51:42.582 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 09:51:42.584 [lua]-[trace] Initializing 'registry' +2022-07-15 09:51:42.586 [lua]-[trace] Initializing 'version' +2022-07-15 09:51:42.587 [lua]-[trace] Initializing 'localization' +2022-07-15 09:51:42.587 [lua]-[trace] Initializing 'i18n' +2022-07-15 09:51:42.590 [lua]-[trace] Initializing 'config' +2022-07-15 09:51:42.591 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 09:51:42.591 [lua]-[trace] Initializing 'plugin' +2022-07-15 09:51:42.592 [lua]-[trace] Initializing 'uiloader' +2022-07-15 09:51:42.593 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 09:51:42.593 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 09:51:42.594 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 09:51:42.594 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 09:51:42.595 [lua]-[trace] Initializing 'lni-c' +2022-07-15 09:51:42.597 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 09:51:42.597 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 09:51:42.598 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 09:51:42.598 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 09:51:42.601 [lua]-[trace] Initializing 'check_object' +2022-07-15 09:51:42.602 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 09:51:42.603 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 09:51:42.603 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 09:51:42.603 [event]-[trace] RegisterEvent id: 7 +2022-07-15 09:51:42.604 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 09:51:42.604 [event]-[trace] RegisterEvent id: 5 +2022-07-15 09:51:42.604 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 09:51:42.605 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 09:51:42.606 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 09:51:42.607 [lua]-[trace] Initializing 'compile.template' +2022-07-15 09:51:42.607 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 09:51:42.608 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 09:51:42.609 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 09:51:42.609 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 09:51:42.610 [lua]-[trace] Initializing 'compile.native' +2022-07-15 09:51:42.611 [event]-[trace] RegisterEvent id: 3 +2022-07-15 09:51:42.611 [event]-[trace] RegisterEvent id: 2 +2022-07-15 09:51:42.611 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 09:51:42.612 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 09:51:42.613 [lua]-[trace] Initializing 'utility' +2022-07-15 09:51:42.613 [lua]-[trace] Initializing 'mapdump' +2022-07-15 09:51:42.614 [event]-[trace] RegisterEvent id: 4 +2022-07-15 09:51:42.614 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 09:51:42.615 [event]-[trace] RegisterEvent id: 0 +2022-07-15 09:51:42.615 [event]-[trace] RegisterEvent id: 1 +2022-07-15 09:51:42.615 [event]-[trace] RegisterEvent id: 6 +2022-07-15 09:51:42.615 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 09:51:42.792 [event]-[trace] RegisterEvent id: 8 +2022-07-15 09:51:42.792 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 09:51:42.793 [event]-[trace] RegisterEvent id: 9 +2022-07-15 09:51:42.793 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 09:51:42.798 [event]-[info ] Entering main program. +2022-07-15 09:51:42.798 [event]-[debug] Command line: +2022-07-15 09:51:42.802 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 09:51:42.803 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 09:51:42.803 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 09:51:42.803 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 09:51:42.803 [lua]-[trace] check_conflicting_ui +2022-07-15 09:51:42.804 [lua]-[trace] check_conflicting_units +2022-07-15 09:51:42.804 [lua]-[trace] clear_potential_conflicting +2022-07-15 09:51:42.804 [lua]-[trace] check_war3_version +2022-07-15 09:51:42.808 [lua]-[error] Cannot find war3.mpq +2022-07-15 09:51:42.810 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 09:51:42.846 [lua]-[debug] Tesh loaded successfully. +2022-07-15 09:51:42.858 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 09:51:42.860 [lua]-[debug] YDClient loaded successfully. +2022-07-15 09:51:42.860 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 09:51:42.861 [lua]-[warn ] failed: disable +2022-07-15 09:51:42.862 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 09:51:42.863 [lua]-[warn ] failed: disable +2022-07-15 09:51:42.863 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 09:51:42.864 [lua]-[warn ] failed: disable +2022-07-15 09:51:42.864 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 09:51:42.913 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 09:51:42.915 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 09:51:42.918 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 09:51:42.918 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 09:51:42.920 [inject]-[debug] Start installing inline hooks. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 09:51:42.921 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 09:51:42.921 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 09:51:42.921 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 09:51:42.921 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 09:51:42.921 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 09:51:42.921 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 09:51:42.921 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 09:51:42.921 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 09:51:42.921 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 09:51:42.921 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 09:51:42.921 [inject]-[debug] Installing inline hooks complete. +2022-07-15 09:51:42.921 [inject]-[debug] IAT hook initialization started. +2022-07-15 09:51:42.921 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 09:51:42.921 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 09:51:42.921 [inject]-[debug] IAT hook initialization completed. +2022-07-15 09:51:42.921 [inject]-[debug] Patches initialization started. +2022-07-15 09:51:42.921 [inject]-[trace] Installing syntax check patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing auto disable patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing enable trigger check patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 09:51:42.922 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing doodad limit patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing unit/item limit patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 09:51:42.922 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 09:51:42.922 [inject]-[trace] Installing attack table patch +2022-07-15 09:51:42.922 [inject]-[debug] Patches initialization completed. +2022-07-15 09:51:42.922 [inject]-[info ] YDWE startup complete. +2022-07-15 09:51:42.922 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 09:51:42.923 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 09:51:42.923 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 09:51:42.923 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 09:51:42.940 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 09:51:42.943 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 09:51:42.945 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 09:51:42.945 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 09:51:42.945 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 09:51:42.946 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 09:51:42.946 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 09:51:42.955 [lua]-[trace] Scanned file: 99 +2022-07-15 09:51:42.957 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 09:51:43.483 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 09:51:43.505 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 09:51:43.648 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 09:51:43.769 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 09:51:43.771 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 09:51:43.771 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 09:51:43.772 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 09:51:43.773 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 09:51:45.682 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 09:51:45.682 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 09:56:28.899 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 09:56:28.899 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 09:56:28.899 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 09:56:29.128 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 09:56:29.147 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 09:56:29.272 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 09:59:07.513 [event]-[trace] WE is about to compile maps. +2022-07-15 09:59:12. 57 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 09:59:12. 57 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 09:59:12. 57 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 09:59:12. 57 [lua]-[trace] Unload plugin Tesh. +2022-07-15 09:59:12. 60 [lua]-[trace] Unload plugin YDClient. +2022-07-15 09:59:12. 60 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 09:59:12. 60 [inject]-[debug] IAT hook cleanup started. +2022-07-15 09:59:12. 60 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 09:59:12. 60 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 09:59:12. 60 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 09:59:12. 60 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 09:59:12. 60 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 09:59:12. 60 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 09:59:12. 60 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 09:59:12. 60 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 09:59:12. 60 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 09:59:12. 60 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 09:59:12. 60 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 09:59:12. 60 [event]-[info ] Main program exit. +2022-07-15 09:59:17.409 [event]-[trace] WE is about to compile maps. +2022-07-15 09:59:17.459 [lua]-[debug] ********************* on save start ********************* +2022-07-15 09:59:17.459 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 09:59:17.459 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 09:59:17.459 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 09:59:17.459 [lua]-[trace] mpq_util.update_file. +2022-07-15 09:59:17.461 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 09:59:17.461 [lua]-[trace] Processing file.out +2022-07-15 09:59:17.462 [lua]-[trace] Writing code to file.out +2022-07-15 09:59:17.462 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 09:59:17.463 [lua]-[trace] Injection completed +2022-07-15 09:59:17.463 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 09:59:17.464 [lua]-[trace] Injection completed +2022-07-15 09:59:17.464 [lua]-[trace] Wave compilation start. +2022-07-15 09:59:17.482 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 09:59:17.586 [lua]-[trace] Template compilation start. +2022-07-15 09:59:17.588 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 09:59:17.588 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 09:59:17.589 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 09:59:17.591 [lua]-[debug] Template compilation succeeded. +2022-07-15 09:59:17.593 [lua]-[trace] JassHelper compilation start. +2022-07-15 09:59:19.283 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 09:59:19.283 [lua]-[debug] Result false +2022-07-15 09:59:19.283 [lua]-[debug] ********************* on save end ********************* +2022-07-15 10:16:40.886 [event]-[trace] WE is about to compile maps. +2022-07-15 10:16:40.929 [lua]-[debug] ********************* on save start ********************* +2022-07-15 10:16:40.930 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:16:40.930 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 10:16:40.930 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 10:16:40.930 [lua]-[trace] mpq_util.update_file. +2022-07-15 10:16:40.936 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 10:16:40.936 [lua]-[trace] Processing file.out +2022-07-15 10:16:40.938 [lua]-[trace] Writing code to file.out +2022-07-15 10:16:40.938 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 10:16:40.938 [lua]-[trace] Injection completed +2022-07-15 10:16:40.938 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 10:16:40.939 [lua]-[trace] Injection completed +2022-07-15 10:16:40.939 [lua]-[trace] Wave compilation start. +2022-07-15 10:16:40.958 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 10:16:41. 66 [lua]-[trace] Template compilation start. +2022-07-15 10:16:41. 68 [lua]-[debug] Template compilation succeeded. +2022-07-15 10:16:41. 70 [lua]-[trace] JassHelper compilation start. +2022-07-15 10:16:43.135 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 0 +2022-07-15 10:16:43.135 [lua]-[debug] Result true +2022-07-15 10:16:43.135 [lua]-[debug] ********************* on save end ********************* +2022-07-15 10:21:19.323 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 10:21:19.323 [lua]-[trace] Unload plugin Tesh. +2022-07-15 10:21:19.326 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 10:21:19.327 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 10:21:19.327 [lua]-[trace] Unload plugin YDClient. +2022-07-15 10:21:19.327 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 10:21:19.327 [inject]-[debug] IAT hook cleanup started. +2022-07-15 10:21:19.327 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 10:21:19.327 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 10:21:19.327 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 10:21:19.327 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 10:21:19.327 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 10:21:19.327 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 10:21:19.327 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 10:21:19.327 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 10:21:19.327 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 10:21:19.327 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 10:21:19.327 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 10:21:19.327 [event]-[info ] Main program exit. +2022-07-15 10:21:32.160 [root]-[info ] ------------------------------------------------------ +2022-07-15 10:21:32.163 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 10:21:32.163 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 10:21:32.163 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 10:21:32.163 [root]-[debug] Initialize script engine successfully. +2022-07-15 10:21:32.163 [root]-[info ] Script engine startup complete. +2022-07-15 10:21:32.163 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 10:21:32.163 [lua]-[trace] Initializing 'sys' +2022-07-15 10:21:32.164 [lua]-[trace] Initializing 'filesystem' +2022-07-15 10:21:32.165 [lua]-[trace] Initializing 'gui' +2022-07-15 10:21:32.165 [lua]-[trace] Initializing 'util' +2022-07-15 10:21:32.166 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 10:21:32.166 [lua]-[trace] Initializing 'ffi' +2022-07-15 10:21:32.167 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 10:21:32.167 [lua]-[trace] Initializing 'event' +2022-07-15 10:21:32.170 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 10:21:32.171 [lua]-[trace] Initializing 'registry' +2022-07-15 10:21:32.172 [lua]-[trace] Initializing 'version' +2022-07-15 10:21:32.172 [lua]-[trace] Initializing 'localization' +2022-07-15 10:21:32.173 [lua]-[trace] Initializing 'i18n' +2022-07-15 10:21:32.174 [lua]-[trace] Initializing 'config' +2022-07-15 10:21:32.175 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:21:32.175 [lua]-[trace] Initializing 'plugin' +2022-07-15 10:21:32.175 [lua]-[trace] Initializing 'uiloader' +2022-07-15 10:21:32.175 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 10:21:32.176 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 10:21:32.176 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 10:21:32.176 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 10:21:32.177 [lua]-[trace] Initializing 'lni-c' +2022-07-15 10:21:32.177 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 10:21:32.178 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 10:21:32.178 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 10:21:32.178 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 10:21:32.179 [lua]-[trace] Initializing 'check_object' +2022-07-15 10:21:32.180 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 10:21:32.180 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 10:21:32.181 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 10:21:32.181 [event]-[trace] RegisterEvent id: 7 +2022-07-15 10:21:32.181 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 10:21:32.182 [event]-[trace] RegisterEvent id: 5 +2022-07-15 10:21:32.182 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 10:21:32.182 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 10:21:32.182 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 10:21:32.183 [lua]-[trace] Initializing 'compile.template' +2022-07-15 10:21:32.183 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 10:21:32.184 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 10:21:32.184 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 10:21:32.184 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 10:21:32.185 [lua]-[trace] Initializing 'compile.native' +2022-07-15 10:21:32.186 [event]-[trace] RegisterEvent id: 3 +2022-07-15 10:21:32.186 [event]-[trace] RegisterEvent id: 2 +2022-07-15 10:21:32.186 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 10:21:32.186 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 10:21:32.187 [lua]-[trace] Initializing 'utility' +2022-07-15 10:21:32.187 [lua]-[trace] Initializing 'mapdump' +2022-07-15 10:21:32.188 [event]-[trace] RegisterEvent id: 4 +2022-07-15 10:21:32.188 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 10:21:32.188 [event]-[trace] RegisterEvent id: 0 +2022-07-15 10:21:32.188 [event]-[trace] RegisterEvent id: 1 +2022-07-15 10:21:32.188 [event]-[trace] RegisterEvent id: 6 +2022-07-15 10:21:32.188 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 10:21:32.346 [event]-[trace] RegisterEvent id: 8 +2022-07-15 10:21:32.346 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 10:21:32.346 [event]-[trace] RegisterEvent id: 9 +2022-07-15 10:21:32.346 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 10:21:32.351 [event]-[info ] Entering main program. +2022-07-15 10:21:32.351 [event]-[debug] Command line: +2022-07-15 10:21:32.354 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 10:21:32.355 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 10:21:32.355 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 10:21:32.356 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:21:32.356 [lua]-[trace] check_conflicting_ui +2022-07-15 10:21:32.357 [lua]-[trace] check_conflicting_units +2022-07-15 10:21:32.357 [lua]-[trace] clear_potential_conflicting +2022-07-15 10:21:32.357 [lua]-[trace] check_war3_version +2022-07-15 10:21:32.362 [lua]-[error] Cannot find war3.mpq +2022-07-15 10:21:32.363 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 10:21:32.393 [lua]-[debug] Tesh loaded successfully. +2022-07-15 10:21:32.405 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 10:21:32.407 [lua]-[debug] YDClient loaded successfully. +2022-07-15 10:21:32.408 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 10:21:32.408 [lua]-[warn ] failed: disable +2022-07-15 10:21:32.409 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 10:21:32.409 [lua]-[warn ] failed: disable +2022-07-15 10:21:32.409 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 10:21:32.410 [lua]-[warn ] failed: disable +2022-07-15 10:21:32.410 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 10:21:32.458 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 10:21:32.460 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 10:21:32.462 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 10:21:32.462 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 10:21:32.463 [inject]-[debug] Start installing inline hooks. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 10:21:32.464 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 10:21:32.464 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 10:21:32.464 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 10:21:32.464 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 10:21:32.464 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 10:21:32.464 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 10:21:32.464 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 10:21:32.464 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 10:21:32.464 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 10:21:32.464 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 10:21:32.464 [inject]-[debug] Installing inline hooks complete. +2022-07-15 10:21:32.464 [inject]-[debug] IAT hook initialization started. +2022-07-15 10:21:32.464 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 10:21:32.464 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 10:21:32.464 [inject]-[debug] IAT hook initialization completed. +2022-07-15 10:21:32.464 [inject]-[debug] Patches initialization started. +2022-07-15 10:21:32.464 [inject]-[trace] Installing syntax check patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing auto disable patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing enable trigger check patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 10:21:32.464 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing doodad limit patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing unit/item limit patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 10:21:32.464 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 10:21:32.464 [inject]-[trace] Installing attack table patch +2022-07-15 10:21:32.464 [inject]-[debug] Patches initialization completed. +2022-07-15 10:21:32.464 [inject]-[info ] YDWE startup complete. +2022-07-15 10:21:32.464 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 10:21:32.465 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 10:21:32.466 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 10:21:32.466 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 10:21:32.482 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 10:21:32.487 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 10:21:32.489 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 10:21:32.490 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 10:21:32.490 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 10:21:32.491 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 10:21:32.491 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 10:21:32.501 [lua]-[trace] Scanned file: 99 +2022-07-15 10:21:32.504 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 10:21:33. 29 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 10:21:33. 47 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 10:21:33.170 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 10:21:33.256 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 10:21:33.257 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 10:21:33.258 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 10:21:33.258 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 10:21:33.259 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 10:21:35.197 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 10:21:35.200 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 10:21:54. 56 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 10:21:54. 56 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 10:21:54. 56 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 10:21:54.272 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 10:21:54.291 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 10:21:54.418 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 10:22:03.423 [event]-[trace] WE is about to compile maps. +2022-07-15 10:22:03.462 [lua]-[debug] ********************* on save start ********************* +2022-07-15 10:22:03.463 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:22:03.463 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 10:22:03.463 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 10:22:03.463 [lua]-[trace] mpq_util.update_file. +2022-07-15 10:22:03.464 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 10:22:03.464 [lua]-[trace] Processing file.out +2022-07-15 10:22:03.466 [lua]-[trace] Writing code to file.out +2022-07-15 10:22:03.466 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 10:22:03.466 [lua]-[trace] Injection completed +2022-07-15 10:22:03.466 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 10:22:03.466 [lua]-[trace] Injection completed +2022-07-15 10:22:03.467 [lua]-[trace] Wave compilation start. +2022-07-15 10:22:03.489 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 10:22:03.595 [lua]-[trace] Template compilation start. +2022-07-15 10:22:03.597 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 10:22:03.597 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 10:22:03.598 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 10:22:03.599 [lua]-[debug] Template compilation succeeded. +2022-07-15 10:22:03.601 [lua]-[trace] JassHelper compilation start. +2022-07-15 10:22:05.281 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 0 +2022-07-15 10:22:05.281 [lua]-[debug] Result true +2022-07-15 10:22:05.281 [lua]-[debug] ********************* on save end ********************* +2022-07-15 10:22:55.253 [event]-[trace] WE is about to compile maps. +2022-07-15 10:22:55.288 [lua]-[debug] ********************* on save start ********************* +2022-07-15 10:22:55.289 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:22:55.289 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 10:22:55.289 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 10:22:55.289 [lua]-[trace] mpq_util.update_file. +2022-07-15 10:22:55.290 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 10:22:55.290 [lua]-[trace] Processing file.out +2022-07-15 10:22:55.291 [lua]-[trace] Writing code to file.out +2022-07-15 10:22:55.291 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 10:22:55.292 [lua]-[trace] Injection completed +2022-07-15 10:22:55.292 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 10:22:55.294 [lua]-[trace] Injection completed +2022-07-15 10:22:55.294 [lua]-[trace] Wave compilation start. +2022-07-15 10:22:55.312 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 10:22:55.411 [lua]-[trace] Template compilation start. +2022-07-15 10:22:55.416 [lua]-[debug] Template compilation succeeded. +2022-07-15 10:22:55.417 [lua]-[trace] JassHelper compilation start. +2022-07-15 10:22:56.698 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 10:22:56.699 [lua]-[debug] Result false +2022-07-15 10:22:56.699 [lua]-[debug] ********************* on save end ********************* +2022-07-15 10:36:04.914 [event]-[trace] WE is about to compile maps. +2022-07-15 10:36:04.961 [lua]-[debug] ********************* on save start ********************* +2022-07-15 10:36:04.962 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:36:04.962 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 10:36:04.962 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 10:36:04.962 [lua]-[trace] mpq_util.update_file. +2022-07-15 10:36:04.964 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 10:36:04.964 [lua]-[trace] Processing file.out +2022-07-15 10:36:04.965 [lua]-[trace] Writing code to file.out +2022-07-15 10:36:04.965 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 10:36:04.966 [lua]-[trace] Injection completed +2022-07-15 10:36:04.966 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 10:36:04.966 [lua]-[trace] Injection completed +2022-07-15 10:36:04.967 [lua]-[trace] Wave compilation start. +2022-07-15 10:36:04.986 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 10:36:05. 92 [lua]-[trace] Template compilation start. +2022-07-15 10:36:05. 95 [lua]-[debug] Template compilation succeeded. +2022-07-15 10:36:05. 96 [lua]-[trace] JassHelper compilation start. +2022-07-15 10:36:06.490 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 10:36:06.491 [lua]-[debug] Result false +2022-07-15 10:36:06.491 [lua]-[debug] ********************* on save end ********************* +2022-07-15 10:36:13.732 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 10:36:13.732 [lua]-[trace] Unload plugin YDClient. +2022-07-15 10:36:13.732 [lua]-[trace] Unload plugin Tesh. +2022-07-15 10:36:13.734 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 10:36:13.734 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 10:36:13.734 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 10:36:13.734 [inject]-[debug] IAT hook cleanup started. +2022-07-15 10:36:13.734 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 10:36:13.734 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 10:36:13.734 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 10:36:13.734 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 10:36:13.734 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 10:36:13.734 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 10:36:13.734 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 10:36:13.734 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 10:36:13.734 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 10:36:13.734 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 10:36:13.734 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 10:36:13.734 [event]-[info ] Main program exit. +2022-07-15 10:36:13.938 [root]-[info ] Script engine has been shut down. +2022-07-15 10:59:20.745 [root]-[info ] ------------------------------------------------------ +2022-07-15 10:59:20.748 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 10:59:20.748 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 10:59:20.748 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 10:59:20.748 [root]-[debug] Initialize script engine successfully. +2022-07-15 10:59:20.748 [root]-[info ] Script engine startup complete. +2022-07-15 10:59:20.749 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 10:59:20.749 [lua]-[trace] Initializing 'sys' +2022-07-15 10:59:20.749 [lua]-[trace] Initializing 'filesystem' +2022-07-15 10:59:20.750 [lua]-[trace] Initializing 'gui' +2022-07-15 10:59:20.751 [lua]-[trace] Initializing 'util' +2022-07-15 10:59:20.751 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 10:59:20.752 [lua]-[trace] Initializing 'ffi' +2022-07-15 10:59:20.753 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 10:59:20.753 [lua]-[trace] Initializing 'event' +2022-07-15 10:59:20.755 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 10:59:20.757 [lua]-[trace] Initializing 'registry' +2022-07-15 10:59:20.758 [lua]-[trace] Initializing 'version' +2022-07-15 10:59:20.758 [lua]-[trace] Initializing 'localization' +2022-07-15 10:59:20.758 [lua]-[trace] Initializing 'i18n' +2022-07-15 10:59:20.759 [lua]-[trace] Initializing 'config' +2022-07-15 10:59:20.760 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:59:20.760 [lua]-[trace] Initializing 'plugin' +2022-07-15 10:59:20.760 [lua]-[trace] Initializing 'uiloader' +2022-07-15 10:59:20.761 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 10:59:20.761 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 10:59:20.761 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 10:59:20.762 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 10:59:20.762 [lua]-[trace] Initializing 'lni-c' +2022-07-15 10:59:20.763 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 10:59:20.763 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 10:59:20.764 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 10:59:20.764 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 10:59:20.765 [lua]-[trace] Initializing 'check_object' +2022-07-15 10:59:20.766 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 10:59:20.766 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 10:59:20.766 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 10:59:20.767 [event]-[trace] RegisterEvent id: 7 +2022-07-15 10:59:20.767 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 10:59:20.767 [event]-[trace] RegisterEvent id: 5 +2022-07-15 10:59:20.767 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 10:59:20.768 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 10:59:20.768 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 10:59:20.768 [lua]-[trace] Initializing 'compile.template' +2022-07-15 10:59:20.769 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 10:59:20.769 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 10:59:20.770 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 10:59:20.770 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 10:59:20.771 [lua]-[trace] Initializing 'compile.native' +2022-07-15 10:59:20.772 [event]-[trace] RegisterEvent id: 3 +2022-07-15 10:59:20.772 [event]-[trace] RegisterEvent id: 2 +2022-07-15 10:59:20.772 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 10:59:20.772 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 10:59:20.773 [lua]-[trace] Initializing 'utility' +2022-07-15 10:59:20.773 [lua]-[trace] Initializing 'mapdump' +2022-07-15 10:59:20.773 [event]-[trace] RegisterEvent id: 4 +2022-07-15 10:59:20.773 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 10:59:20.774 [event]-[trace] RegisterEvent id: 0 +2022-07-15 10:59:20.774 [event]-[trace] RegisterEvent id: 1 +2022-07-15 10:59:20.774 [event]-[trace] RegisterEvent id: 6 +2022-07-15 10:59:20.774 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 10:59:20.932 [event]-[trace] RegisterEvent id: 8 +2022-07-15 10:59:20.932 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 10:59:20.932 [event]-[trace] RegisterEvent id: 9 +2022-07-15 10:59:20.932 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 10:59:20.937 [event]-[info ] Entering main program. +2022-07-15 10:59:20.937 [event]-[debug] Command line: +2022-07-15 10:59:20.942 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 10:59:20.942 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 10:59:20.942 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 10:59:20.943 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 10:59:20.943 [lua]-[trace] check_conflicting_ui +2022-07-15 10:59:20.943 [lua]-[trace] check_conflicting_units +2022-07-15 10:59:20.943 [lua]-[trace] clear_potential_conflicting +2022-07-15 10:59:20.944 [lua]-[trace] check_war3_version +2022-07-15 10:59:20.947 [lua]-[error] Cannot find war3.mpq +2022-07-15 10:59:20.949 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 10:59:20.971 [lua]-[debug] Tesh loaded successfully. +2022-07-15 10:59:20.982 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 10:59:20.984 [lua]-[debug] YDClient loaded successfully. +2022-07-15 10:59:20.984 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 10:59:20.985 [lua]-[warn ] failed: disable +2022-07-15 10:59:20.985 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 10:59:20.985 [lua]-[warn ] failed: disable +2022-07-15 10:59:20.986 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 10:59:20.986 [lua]-[warn ] failed: disable +2022-07-15 10:59:20.986 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 10:59:21.197 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 10:59:21.199 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 10:59:21.201 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 10:59:21.201 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 10:59:21.202 [inject]-[debug] Start installing inline hooks. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 10:59:21.202 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 10:59:21.202 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 10:59:21.202 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 10:59:21.202 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 10:59:21.202 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 10:59:21.202 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 10:59:21.202 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 10:59:21.202 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 10:59:21.202 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 10:59:21.202 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 10:59:21.202 [inject]-[debug] Installing inline hooks complete. +2022-07-15 10:59:21.202 [inject]-[debug] IAT hook initialization started. +2022-07-15 10:59:21.202 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 10:59:21.202 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 10:59:21.202 [inject]-[debug] IAT hook initialization completed. +2022-07-15 10:59:21.202 [inject]-[debug] Patches initialization started. +2022-07-15 10:59:21.202 [inject]-[trace] Installing syntax check patch +2022-07-15 10:59:21.202 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing auto disable patch +2022-07-15 10:59:21.203 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing enable trigger check patch +2022-07-15 10:59:21.203 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 10:59:21.203 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing doodad limit patch +2022-07-15 10:59:21.203 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing unit/item limit patch +2022-07-15 10:59:21.203 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 10:59:21.203 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 10:59:21.203 [inject]-[trace] Installing attack table patch +2022-07-15 10:59:21.203 [inject]-[debug] Patches initialization completed. +2022-07-15 10:59:21.203 [inject]-[info ] YDWE startup complete. +2022-07-15 10:59:21.203 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 10:59:21.203 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 10:59:21.204 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 10:59:21.204 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 10:59:21.216 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 10:59:21.217 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 10:59:21.219 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 10:59:21.219 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 10:59:21.219 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 10:59:21.219 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 10:59:21.220 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 10:59:21.226 [lua]-[trace] Scanned file: 99 +2022-07-15 10:59:21.228 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 10:59:21.741 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 10:59:21.758 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 10:59:21.885 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 10:59:21.970 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 10:59:21.971 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 10:59:21.972 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 10:59:21.972 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 10:59:21.973 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 10:59:23.763 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 10:59:23.763 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:01:28.525 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:01:28.527 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:01:28.527 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:01:28.527 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:01:28.527 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:01:28.528 [root]-[info ] Script engine startup complete. +2022-07-15 11:01:28.528 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:01:28.528 [lua]-[trace] Initializing 'sys' +2022-07-15 11:01:28.529 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:01:28.529 [lua]-[trace] Initializing 'gui' +2022-07-15 11:01:28.530 [lua]-[trace] Initializing 'util' +2022-07-15 11:01:28.530 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:01:28.531 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:01:28.532 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:01:28.532 [lua]-[trace] Initializing 'event' +2022-07-15 11:01:28.533 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:01:28.535 [lua]-[trace] Initializing 'registry' +2022-07-15 11:01:28.536 [lua]-[trace] Initializing 'version' +2022-07-15 11:01:28.537 [lua]-[trace] Initializing 'localization' +2022-07-15 11:01:28.537 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:01:28.539 [lua]-[trace] Initializing 'config' +2022-07-15 11:01:28.539 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:01:28.540 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:01:28.540 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:01:28.540 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:01:28.541 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:01:28.541 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:01:28.541 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:01:28.542 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:01:28.542 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:01:28.543 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:01:28.543 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:01:28.543 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:01:28.544 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:01:28.545 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:01:28.546 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:01:28.546 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:01:28.546 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:01:28.546 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:01:28.547 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:01:28.547 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:01:28.547 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:01:28.547 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:01:28.548 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:01:28.548 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:01:28.548 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:01:28.549 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:01:28.549 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:01:28.549 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:01:28.550 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:01:28.550 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:01:28.550 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:01:28.551 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:01:28.551 [lua]-[trace] Initializing 'utility' +2022-07-15 11:01:28.552 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:01:28.552 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:01:28.552 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:01:28.553 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:01:28.553 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:01:28.553 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:01:28.553 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:01:28.707 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:01:28.707 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:01:28.707 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:01:28.707 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:01:28.712 [event]-[info ] Entering main program. +2022-07-15 11:01:28.712 [event]-[debug] Command line: +2022-07-15 11:01:28.715 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:01:28.716 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:01:28.716 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:01:28.717 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:01:28.717 [lua]-[trace] check_conflicting_ui +2022-07-15 11:01:28.717 [lua]-[trace] check_conflicting_units +2022-07-15 11:01:28.717 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:01:28.717 [lua]-[trace] check_war3_version +2022-07-15 11:01:28.721 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:01:28.725 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:01:28.747 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:01:28.759 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:01:28.761 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:01:28.761 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:01:28.762 [lua]-[warn ] failed: disable +2022-07-15 11:01:28.762 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:01:28.762 [lua]-[warn ] failed: disable +2022-07-15 11:01:28.763 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:01:28.763 [lua]-[warn ] failed: disable +2022-07-15 11:01:28.764 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:01:28.804 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:01:28.806 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:01:28.808 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:01:28.808 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:01:28.809 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:01:28.810 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:01:28.810 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:01:28.810 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:01:28.810 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:01:28.810 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:01:28.810 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:01:28.810 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:01:28.810 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:01:28.810 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:01:28.810 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:01:28.810 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:01:28.810 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:01:28.810 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:01:28.810 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:01:28.810 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:01:28.810 [inject]-[debug] Patches initialization started. +2022-07-15 11:01:28.810 [inject]-[trace] Installing syntax check patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing auto disable patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:01:28.810 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:01:28.810 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:01:28.810 [inject]-[trace] Installing attack table patch +2022-07-15 11:01:28.810 [inject]-[debug] Patches initialization completed. +2022-07-15 11:01:28.810 [inject]-[info ] YDWE startup complete. +2022-07-15 11:01:28.810 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:01:28.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:01:28.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:01:28.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:01:28.824 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:01:28.826 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:01:28.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:01:28.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:01:28.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:01:28.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:01:28.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:01:28.834 [lua]-[trace] Scanned file: 99 +2022-07-15 11:01:28.836 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:01:29.342 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:01:29.360 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:01:29.480 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:01:29.564 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:01:29.566 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:01:29.566 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:01:29.567 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:01:29.568 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:01:31.414 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:01:31.415 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:01:59. 59 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:01:59. 59 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:01:59. 59 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:01:59.294 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:01:59.314 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:01:59.449 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:03:44.632 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 11:03:44.632 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 11:03:44.632 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 11:03:44.632 [lua]-[trace] Unload plugin YDClient. +2022-07-15 11:03:44.632 [lua]-[trace] Unload plugin Tesh. +2022-07-15 11:03:44.636 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 11:03:44.636 [inject]-[debug] IAT hook cleanup started. +2022-07-15 11:03:44.636 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 11:03:44.636 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 11:03:44.636 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 11:03:44.636 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 11:03:44.636 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 11:03:44.636 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 11:03:44.636 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 11:03:44.636 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 11:03:44.636 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 11:03:44.636 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 11:03:44.636 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 11:03:44.636 [event]-[info ] Main program exit. +2022-07-15 11:21:04.478 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:21:04.481 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:21:04.481 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:21:04.481 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:21:04.481 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:21:04.481 [root]-[info ] Script engine startup complete. +2022-07-15 11:21:04.481 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:21:04.482 [lua]-[trace] Initializing 'sys' +2022-07-15 11:21:04.482 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:21:04.483 [lua]-[trace] Initializing 'gui' +2022-07-15 11:21:04.484 [lua]-[trace] Initializing 'util' +2022-07-15 11:21:04.485 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:21:04.485 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:21:04.486 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:21:04.486 [lua]-[trace] Initializing 'event' +2022-07-15 11:21:04.488 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:21:04.489 [lua]-[trace] Initializing 'registry' +2022-07-15 11:21:04.490 [lua]-[trace] Initializing 'version' +2022-07-15 11:21:04.490 [lua]-[trace] Initializing 'localization' +2022-07-15 11:21:04.491 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:21:04.492 [lua]-[trace] Initializing 'config' +2022-07-15 11:21:04.493 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:21:04.493 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:21:04.493 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:21:04.494 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:21:04.494 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:21:04.494 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:21:04.495 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:21:04.495 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:21:04.496 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:21:04.496 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:21:04.497 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:21:04.497 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:21:04.498 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:21:04.499 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:21:04.499 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:21:04.499 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:21:04.500 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:21:04.500 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:21:04.501 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:21:04.501 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:21:04.501 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:21:04.502 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:21:04.502 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:21:04.503 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:21:04.503 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:21:04.503 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:21:04.504 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:21:04.504 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:21:04.505 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:21:04.505 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:21:04.505 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:21:04.505 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:21:04.506 [lua]-[trace] Initializing 'utility' +2022-07-15 11:21:04.506 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:21:04.506 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:21:04.506 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:21:04.507 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:21:04.507 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:21:04.507 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:21:04.507 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:21:04.682 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:21:04.682 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:21:04.682 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:21:04.682 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:21:04.686 [event]-[info ] Entering main program. +2022-07-15 11:21:04.687 [event]-[debug] Command line: +2022-07-15 11:21:04.689 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:21:04.691 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:21:04.691 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:21:04.692 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:21:04.692 [lua]-[trace] check_conflicting_ui +2022-07-15 11:21:04.692 [lua]-[trace] check_conflicting_units +2022-07-15 11:21:04.692 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:21:04.692 [lua]-[trace] check_war3_version +2022-07-15 11:21:04.696 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:21:04.698 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:21:04.719 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:21:04.730 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:21:04.731 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:21:04.732 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:21:04.732 [lua]-[warn ] failed: disable +2022-07-15 11:21:04.732 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:21:04.733 [lua]-[warn ] failed: disable +2022-07-15 11:21:04.733 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:21:04.733 [lua]-[warn ] failed: disable +2022-07-15 11:21:04.734 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:21:04.775 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:21:04.778 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:21:04.780 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:21:04.780 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:21:04.781 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:21:04.782 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:21:04.782 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:21:04.782 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:21:04.782 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:21:04.782 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:21:04.782 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:21:04.782 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:21:04.782 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:21:04.782 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:21:04.782 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:21:04.782 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:21:04.782 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:21:04.782 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:21:04.782 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:21:04.782 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:21:04.782 [inject]-[debug] Patches initialization started. +2022-07-15 11:21:04.782 [inject]-[trace] Installing syntax check patch +2022-07-15 11:21:04.782 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:21:04.782 [inject]-[trace] Installing auto disable patch +2022-07-15 11:21:04.782 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:21:04.782 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:21:04.782 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:21:04.783 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:21:04.783 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:21:04.783 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:21:04.783 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:21:04.783 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:21:04.783 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:21:04.783 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:21:04.783 [inject]-[trace] Installing attack table patch +2022-07-15 11:21:04.783 [inject]-[debug] Patches initialization completed. +2022-07-15 11:21:04.783 [inject]-[info ] YDWE startup complete. +2022-07-15 11:21:04.783 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:21:04.783 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:21:04.784 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:21:04.784 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:21:04.798 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:21:04.801 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:21:04.804 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:21:04.804 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:21:04.804 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:21:04.805 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:21:04.805 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:21:04.815 [lua]-[trace] Scanned file: 99 +2022-07-15 11:21:04.817 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:21:05.362 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:21:05.380 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:21:05.520 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:21:05.605 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:21:05.607 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:21:05.607 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:21:05.608 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:21:05.609 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:21:07.481 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:21:07.482 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:21:48.830 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:21:48.830 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:21:48.830 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:21:49. 39 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:21:49. 64 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:21:49.187 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:22:43.937 [event]-[trace] WE is about to compile maps. +2022-07-15 11:22:43.982 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:22:43.983 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:22:43.983 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:22:43.983 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:22:43.983 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:22:43.985 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:22:43.985 [lua]-[trace] Processing file.out +2022-07-15 11:22:43.986 [lua]-[trace] Writing code to file.out +2022-07-15 11:22:43.987 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 11:22:43.987 [lua]-[trace] Injection completed +2022-07-15 11:22:43.987 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:22:43.987 [lua]-[trace] Injection completed +2022-07-15 11:22:43.988 [lua]-[trace] Wave compilation start. +2022-07-15 11:22:44. 9 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:22:44.120 [lua]-[trace] Template compilation start. +2022-07-15 11:22:44.123 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 11:22:44.124 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 11:22:44.125 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 11:22:44.127 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:22:44.128 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:22:45.527 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 11:22:45.528 [lua]-[debug] Result false +2022-07-15 11:22:45.528 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:23:45.729 [event]-[trace] WE is about to compile maps. +2022-07-15 11:23:45.766 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:23:45.766 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:23:45.766 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:23:45.766 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:23:45.766 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:23:45.767 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:23:45.767 [lua]-[trace] Processing file.out +2022-07-15 11:23:45.768 [lua]-[trace] Writing code to file.out +2022-07-15 11:23:45.768 [lua]-[trace] Injecting F:\平台编辑器\jass\DzAPI.j +2022-07-15 11:23:45.768 [lua]-[trace] Injection completed +2022-07-15 11:23:45.768 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:23:45.769 [lua]-[trace] Injection completed +2022-07-15 11:23:45.769 [lua]-[trace] Wave compilation start. +2022-07-15 11:23:45.789 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:23:45.893 [lua]-[trace] Template compilation start. +2022-07-15 11:23:45.896 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:23:45.898 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:23:47.324 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 11:23:47.325 [lua]-[debug] Result false +2022-07-15 11:23:47.325 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:24:17.708 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 11:24:17.708 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 11:24:17.709 [lua]-[trace] Unload plugin Tesh. +2022-07-15 11:24:17.711 [lua]-[trace] Unload plugin YDClient. +2022-07-15 11:24:17.711 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 11:24:17.711 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 11:24:17.711 [inject]-[debug] IAT hook cleanup started. +2022-07-15 11:24:17.711 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 11:24:17.711 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 11:24:17.711 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 11:24:17.711 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 11:24:17.711 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 11:24:17.711 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 11:24:17.711 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 11:24:17.711 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 11:24:17.711 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 11:24:17.711 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 11:24:17.712 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 11:24:17.712 [event]-[info ] Main program exit. +2022-07-15 11:24:17.902 [root]-[info ] Script engine has been shut down. +2022-07-15 11:28:08. 79 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:28:08. 82 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:28:08. 82 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:28:08. 82 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:28:08. 82 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:28:08. 82 [root]-[info ] Script engine startup complete. +2022-07-15 11:28:08. 82 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:28:08. 83 [lua]-[trace] Initializing 'sys' +2022-07-15 11:28:08. 83 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:28:08. 84 [lua]-[trace] Initializing 'gui' +2022-07-15 11:28:08. 85 [lua]-[trace] Initializing 'util' +2022-07-15 11:28:08. 86 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:28:08. 86 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:28:08. 87 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:28:08. 87 [lua]-[trace] Initializing 'event' +2022-07-15 11:28:08. 88 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:28:08. 90 [lua]-[trace] Initializing 'registry' +2022-07-15 11:28:08. 90 [lua]-[trace] Initializing 'version' +2022-07-15 11:28:08. 91 [lua]-[trace] Initializing 'localization' +2022-07-15 11:28:08. 91 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:28:08. 92 [lua]-[trace] Initializing 'config' +2022-07-15 11:28:08. 93 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:28:08. 93 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:28:08. 94 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:28:08. 94 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:28:08. 95 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:28:08. 95 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:28:08. 95 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:28:08. 96 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:28:08. 97 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:28:08. 97 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:28:08. 97 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:28:08. 98 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:28:08. 99 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:28:08. 99 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:28:08.100 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:28:08.100 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:28:08.101 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:28:08.101 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:28:08.101 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:28:08.101 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:28:08.102 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:28:08.102 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:28:08.102 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:28:08.103 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:28:08.103 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:28:08.103 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:28:08.104 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:28:08.104 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:28:08.105 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:28:08.105 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:28:08.105 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:28:08.105 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:28:08.105 [lua]-[trace] Initializing 'utility' +2022-07-15 11:28:08.106 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:28:08.106 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:28:08.106 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:28:08.107 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:28:08.107 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:28:08.107 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:28:08.107 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:28:08.263 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:28:08.263 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:28:08.263 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:28:08.263 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:28:08.269 [event]-[info ] Entering main program. +2022-07-15 11:28:08.269 [event]-[debug] Command line: +2022-07-15 11:28:08.273 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:28:08.273 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:28:08.273 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:28:08.274 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:28:08.274 [lua]-[trace] check_conflicting_ui +2022-07-15 11:28:08.274 [lua]-[trace] check_conflicting_units +2022-07-15 11:28:08.274 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:28:08.274 [lua]-[trace] check_war3_version +2022-07-15 11:28:08.278 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:28:08.279 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:28:08.304 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:28:08.315 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:28:08.317 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:28:08.317 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:28:08.317 [lua]-[warn ] failed: disable +2022-07-15 11:28:08.317 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:28:08.318 [lua]-[warn ] failed: disable +2022-07-15 11:28:08.318 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:28:08.318 [lua]-[warn ] failed: disable +2022-07-15 11:28:08.318 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:28:08.364 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:28:08.366 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:28:08.368 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:28:08.368 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:28:08.369 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:28:08.369 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:28:08.369 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:28:08.369 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:28:08.369 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:28:08.369 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:28:08.369 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:28:08.369 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:28:08.369 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:28:08.370 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:28:08.370 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:28:08.370 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:28:08.370 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:28:08.370 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:28:08.370 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:28:08.370 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:28:08.370 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:28:08.370 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:28:08.370 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:28:08.370 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:28:08.370 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:28:08.370 [inject]-[debug] Patches initialization started. +2022-07-15 11:28:08.370 [inject]-[trace] Installing syntax check patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing auto disable patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:28:08.370 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:28:08.370 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:28:08.370 [inject]-[trace] Installing attack table patch +2022-07-15 11:28:08.370 [inject]-[debug] Patches initialization completed. +2022-07-15 11:28:08.370 [inject]-[info ] YDWE startup complete. +2022-07-15 11:28:08.370 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:28:08.371 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:28:08.371 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:28:08.371 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:28:08.383 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:28:08.385 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:28:08.387 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:28:08.388 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:28:08.388 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:28:08.388 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:28:08.388 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:28:08.394 [lua]-[trace] Scanned file: 99 +2022-07-15 11:28:08.396 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:28:08.907 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:28:08.926 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:28:09. 55 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:28:09.141 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:28:09.143 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:28:09.144 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:28:09.144 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:28:09.145 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:28:11. 36 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:28:11. 39 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:28:31.509 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:28:31.511 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:28:31.511 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:28:31.511 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:28:31.511 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:28:31.511 [root]-[info ] Script engine startup complete. +2022-07-15 11:28:31.512 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:28:31.512 [lua]-[trace] Initializing 'sys' +2022-07-15 11:28:31.512 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:28:31.513 [lua]-[trace] Initializing 'gui' +2022-07-15 11:28:31.514 [lua]-[trace] Initializing 'util' +2022-07-15 11:28:31.514 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:28:31.515 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:28:31.516 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:28:31.517 [lua]-[trace] Initializing 'event' +2022-07-15 11:28:31.519 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:28:31.520 [lua]-[trace] Initializing 'registry' +2022-07-15 11:28:31.521 [lua]-[trace] Initializing 'version' +2022-07-15 11:28:31.521 [lua]-[trace] Initializing 'localization' +2022-07-15 11:28:31.521 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:28:31.522 [lua]-[trace] Initializing 'config' +2022-07-15 11:28:31.523 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:28:31.523 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:28:31.523 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:28:31.524 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:28:31.524 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:28:31.524 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:28:31.525 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:28:31.525 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:28:31.526 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:28:31.526 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:28:31.526 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:28:31.527 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:28:31.528 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:28:31.528 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:28:31.529 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:28:31.529 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:28:31.529 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:28:31.530 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:28:31.530 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:28:31.530 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:28:31.530 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:28:31.531 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:28:31.531 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:28:31.532 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:28:31.532 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:28:31.533 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:28:31.533 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:28:31.533 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:28:31.534 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:28:31.534 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:28:31.534 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:28:31.535 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:28:31.535 [lua]-[trace] Initializing 'utility' +2022-07-15 11:28:31.536 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:28:31.536 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:28:31.536 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:28:31.537 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:28:31.537 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:28:31.537 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:28:31.537 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:28:31.693 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:28:31.693 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:28:31.694 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:28:31.694 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:28:31.698 [event]-[info ] Entering main program. +2022-07-15 11:28:31.698 [event]-[debug] Command line: +2022-07-15 11:28:31.702 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:28:31.703 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:28:31.703 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:28:31.703 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:28:31.703 [lua]-[trace] check_conflicting_ui +2022-07-15 11:28:31.704 [lua]-[trace] check_conflicting_units +2022-07-15 11:28:31.704 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:28:31.704 [lua]-[trace] check_war3_version +2022-07-15 11:28:31.707 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:28:31.709 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:28:31.732 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:28:31.744 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:28:31.746 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:28:31.746 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:28:31.746 [lua]-[warn ] failed: disable +2022-07-15 11:28:31.747 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:28:31.747 [lua]-[warn ] failed: disable +2022-07-15 11:28:31.747 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:28:31.748 [lua]-[warn ] failed: disable +2022-07-15 11:28:31.748 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:28:31.787 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:28:31.790 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:28:31.791 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:28:31.792 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:28:31.793 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:28:31.793 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:28:31.793 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:28:31.793 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:28:31.793 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:28:31.793 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:28:31.793 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:28:31.793 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:28:31.793 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:28:31.793 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:28:31.794 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:28:31.794 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:28:31.794 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:28:31.794 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:28:31.794 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:28:31.794 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:28:31.794 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:28:31.794 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:28:31.794 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:28:31.794 [inject]-[debug] Patches initialization started. +2022-07-15 11:28:31.794 [inject]-[trace] Installing syntax check patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing auto disable patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:28:31.794 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:28:31.794 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:28:31.794 [inject]-[trace] Installing attack table patch +2022-07-15 11:28:31.794 [inject]-[debug] Patches initialization completed. +2022-07-15 11:28:31.794 [inject]-[info ] YDWE startup complete. +2022-07-15 11:28:31.794 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:28:31.795 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:28:31.795 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:28:31.795 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:28:31.807 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:28:31.809 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:28:31.810 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:28:31.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:28:31.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:28:31.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:28:31.811 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:28:31.818 [lua]-[trace] Scanned file: 99 +2022-07-15 11:28:31.820 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:28:32.307 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:28:32.325 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:28:32.472 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:28:32.559 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:28:32.561 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:28:32.561 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:28:32.562 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:28:32.563 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:28:34.414 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:28:34.415 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:28:48.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:28:48.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:28:48.387 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:28:48.602 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:28:48.620 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:28:48.748 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:29:20.442 [event]-[trace] WE is about to compile maps. +2022-07-15 11:29:20.483 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:29:20.484 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:29:20.484 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:29:20.484 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:29:20.484 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:29:20.486 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:29:20.486 [lua]-[trace] Processing file.out +2022-07-15 11:29:20.488 [lua]-[trace] Writing code to file.out +2022-07-15 11:29:20.488 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:29:20.488 [lua]-[trace] Injection completed +2022-07-15 11:29:20.489 [lua]-[trace] Wave compilation start. +2022-07-15 11:29:20.509 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:29:20.601 [lua]-[trace] Template compilation start. +2022-07-15 11:29:20.602 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 11:29:20.602 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 11:29:20.603 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 11:29:20.605 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:29:20.606 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:29:22.481 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 0 +2022-07-15 11:29:22.481 [lua]-[debug] Result true +2022-07-15 11:29:22.481 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:29:27.944 [event]-[trace] WE is about to compile maps. +2022-07-15 11:29:27.988 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:29:27.988 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:29:27.988 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:29:27.988 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:29:27.988 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:29:27.990 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:29:27.990 [lua]-[trace] Processing file.out +2022-07-15 11:29:27.991 [lua]-[trace] Writing code to file.out +2022-07-15 11:29:27.991 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:29:27.991 [lua]-[trace] Injection completed +2022-07-15 11:29:27.991 [lua]-[trace] Wave compilation start. +2022-07-15 11:29:28. 12 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:29:28.105 [lua]-[trace] Template compilation start. +2022-07-15 11:29:28.107 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:29:28.108 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:29:29.431 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 1 +2022-07-15 11:29:29.432 [lua]-[debug] Result false +2022-07-15 11:29:29.432 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:31:08.886 [event]-[trace] WE is about to compile maps. +2022-07-15 11:31:08.929 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:31:08.930 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:31:08.930 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:31:08.930 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:31:08.930 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:31:08.932 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:31:08.932 [lua]-[trace] Processing file.out +2022-07-15 11:31:08.933 [lua]-[trace] Writing code to file.out +2022-07-15 11:31:08.933 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:31:08.934 [lua]-[trace] Injection completed +2022-07-15 11:31:08.934 [lua]-[trace] Wave compilation start. +2022-07-15 11:31:08.957 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:31:09. 56 [lua]-[trace] Template compilation start. +2022-07-15 11:31:09. 59 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:31:09. 60 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:31:10.704 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 0 +2022-07-15 11:31:10.705 [lua]-[debug] Result true +2022-07-15 11:31:10.705 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:31:59. 20 [event]-[trace] WE is about to compile maps. +2022-07-15 11:31:59. 59 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:31:59. 60 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:31:59. 60 [lua]-[trace] Saving F:\MapJ\0.w3x +2022-07-15 11:31:59. 60 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:31:59. 60 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:31:59. 65 [lua]-[trace] war3map.j has been extracted from 0.w3x +2022-07-15 11:31:59. 65 [lua]-[trace] Processing file.out +2022-07-15 11:31:59. 66 [lua]-[trace] Writing code to file.out +2022-07-15 11:31:59. 67 [lua]-[trace] Injecting F:\平台编辑器\jass\BlizzardAPI.j +2022-07-15 11:31:59. 67 [lua]-[trace] Injection completed +2022-07-15 11:31:59. 69 [lua]-[trace] Wave compilation start. +2022-07-15 11:31:59. 87 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:31:59.186 [lua]-[trace] Template compilation start. +2022-07-15 11:31:59.188 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:31:59.189 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:32:00.839 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\0.w3x", returned 0 +2022-07-15 11:32:00.840 [lua]-[debug] Result true +2022-07-15 11:32:00.840 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:38:44.592 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:38:44.595 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:38:44.596 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:38:44.596 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:38:44.596 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:38:44.596 [root]-[info ] Script engine startup complete. +2022-07-15 11:38:44.596 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:38:44.596 [lua]-[trace] Initializing 'sys' +2022-07-15 11:38:44.597 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:38:44.598 [lua]-[trace] Initializing 'gui' +2022-07-15 11:38:44.599 [lua]-[trace] Initializing 'util' +2022-07-15 11:38:44.599 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:38:44.599 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:38:44.600 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:38:44.600 [lua]-[trace] Initializing 'event' +2022-07-15 11:38:44.602 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:38:44.604 [lua]-[trace] Initializing 'registry' +2022-07-15 11:38:44.605 [lua]-[trace] Initializing 'version' +2022-07-15 11:38:44.605 [lua]-[trace] Initializing 'localization' +2022-07-15 11:38:44.605 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:38:44.606 [lua]-[trace] Initializing 'config' +2022-07-15 11:38:44.607 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:38:44.607 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:38:44.607 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:38:44.607 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:38:44.608 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:38:44.608 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:38:44.608 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:38:44.609 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:38:44.609 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:38:44.610 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:38:44.611 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:38:44.611 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:38:44.612 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:38:44.613 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:38:44.613 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:38:44.614 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:38:44.614 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:38:44.614 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:38:44.615 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:38:44.615 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:38:44.615 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:38:44.615 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:38:44.616 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:38:44.616 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:38:44.616 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:38:44.617 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:38:44.617 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:38:44.618 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:38:44.618 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:38:44.618 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:38:44.618 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:38:44.619 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:38:44.619 [lua]-[trace] Initializing 'utility' +2022-07-15 11:38:44.619 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:38:44.620 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:38:44.620 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:38:44.620 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:38:44.620 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:38:44.620 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:38:44.620 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:38:44.785 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:38:44.785 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:38:44.786 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:38:44.786 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:38:44.789 [event]-[info ] Entering main program. +2022-07-15 11:38:44.789 [event]-[debug] Command line: +2022-07-15 11:38:44.795 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:38:44.796 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:38:44.796 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:38:44.796 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:38:44.796 [lua]-[trace] check_conflicting_ui +2022-07-15 11:38:44.796 [lua]-[trace] check_conflicting_units +2022-07-15 11:38:44.796 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:38:44.796 [lua]-[trace] check_war3_version +2022-07-15 11:38:44.800 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:38:44.802 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:38:44.829 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:38:44.840 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:38:44.842 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:38:44.842 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:38:44.843 [lua]-[warn ] failed: disable +2022-07-15 11:38:44.843 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:38:44.843 [lua]-[warn ] failed: disable +2022-07-15 11:38:44.843 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:38:44.844 [lua]-[warn ] failed: disable +2022-07-15 11:38:44.844 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:38:44.890 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:38:44.892 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:38:44.894 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:38:44.894 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:38:44.895 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:38:44.895 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:38:44.895 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:38:44.895 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:38:44.895 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:38:44.895 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:38:44.895 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:38:44.895 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:38:44.895 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:38:44.896 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:38:44.896 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:38:44.896 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:38:44.896 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:38:44.896 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:38:44.896 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:38:44.896 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:38:44.896 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:38:44.896 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:38:44.896 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:38:44.896 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:38:44.896 [inject]-[debug] Patches initialization started. +2022-07-15 11:38:44.896 [inject]-[trace] Installing syntax check patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing auto disable patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:38:44.896 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:38:44.896 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:38:44.896 [inject]-[trace] Installing attack table patch +2022-07-15 11:38:44.896 [inject]-[debug] Patches initialization completed. +2022-07-15 11:38:44.896 [inject]-[info ] YDWE startup complete. +2022-07-15 11:38:44.896 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:38:44.897 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:38:44.898 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:38:44.898 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:38:44.912 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:38:44.914 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:38:44.916 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:38:44.916 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:38:44.916 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:38:44.917 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:38:44.917 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:38:44.925 [lua]-[trace] Scanned file: 99 +2022-07-15 11:38:44.927 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:38:45.438 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:38:45.459 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:38:45.604 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:38:45.708 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:38:45.710 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:38:45.710 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:38:45.711 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:38:45.712 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:38:47.633 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:38:47.635 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:39:02.130 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:39:02.130 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:39:02.130 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-15 11:39:02.379 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:39:02.407 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:39:02.541 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:40:38.886 [event]-[trace] WE is about to compile maps. +2022-07-15 11:40:46.495 [event]-[trace] WE is about to compile maps. +2022-07-15 11:40:46.547 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:40:46.548 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:40:46.548 [lua]-[trace] Saving F:\MapJ\1.w3x +2022-07-15 11:40:46.548 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:40:46.548 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:40:46.549 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-15 11:40:46.550 [lua]-[trace] Processing file.out +2022-07-15 11:40:46.551 [lua]-[trace] Writing code to file.out +2022-07-15 11:40:46.551 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEJapiUnit.j +2022-07-15 11:40:46.551 [lua]-[trace] Injection completed +2022-07-15 11:40:46.552 [lua]-[trace] Wave compilation start. +2022-07-15 11:40:46.573 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:40:46.666 [lua]-[trace] Template compilation start. +2022-07-15 11:40:46.668 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 11:40:46.668 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 11:40:46.670 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 11:40:46.672 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:40:46.673 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:40:48.174 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\1.w3x", returned 1 +2022-07-15 11:40:48.174 [lua]-[debug] Result false +2022-07-15 11:40:48.174 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:41:38.796 [event]-[trace] WE is about to compile maps. +2022-07-15 11:41:38.845 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:41:38.846 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:41:38.846 [lua]-[trace] Saving F:\MapJ\1.w3x +2022-07-15 11:41:38.846 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:41:38.846 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:41:38.848 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-15 11:41:38.848 [lua]-[trace] Processing file.out +2022-07-15 11:41:38.850 [lua]-[trace] Writing code to file.out +2022-07-15 11:41:38.850 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEJapiUnit.j +2022-07-15 11:41:38.850 [lua]-[trace] Injection completed +2022-07-15 11:41:38.851 [lua]-[trace] Wave compilation start. +2022-07-15 11:41:38.871 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:41:38.973 [lua]-[trace] Template compilation start. +2022-07-15 11:41:38.974 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:41:38.976 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:41:40.346 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\1.w3x", returned 1 +2022-07-15 11:41:40.346 [lua]-[debug] Result false +2022-07-15 11:41:40.347 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:41:42.469 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 11:41:42.470 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 11:41:42.470 [inject]-[debug] IAT hook cleanup started. +2022-07-15 11:41:42.470 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 11:41:42.470 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 11:41:42.470 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 11:41:42.470 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 11:41:42.470 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 11:41:42.470 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 11:41:42.470 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 11:41:42.470 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 11:41:42.470 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 11:41:42.470 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 11:41:42.470 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 11:41:42.470 [lua]-[trace] Unload plugin Tesh. +2022-07-15 11:41:42.473 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 11:41:42.474 [lua]-[trace] Unload plugin YDClient. +2022-07-15 11:41:42.474 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 11:41:42.474 [event]-[info ] Main program exit. +2022-07-15 11:41:46.674 [root]-[info ] ------------------------------------------------------ +2022-07-15 11:41:46.677 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-15 11:41:46.677 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-15 11:41:46.677 [root]-[info ] Windows version: 10.0.19041 +2022-07-15 11:41:46.677 [root]-[debug] Initialize script engine successfully. +2022-07-15 11:41:46.677 [root]-[info ] Script engine startup complete. +2022-07-15 11:41:46.677 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-15 11:41:46.677 [lua]-[trace] Initializing 'sys' +2022-07-15 11:41:46.678 [lua]-[trace] Initializing 'filesystem' +2022-07-15 11:41:46.679 [lua]-[trace] Initializing 'gui' +2022-07-15 11:41:46.680 [lua]-[trace] Initializing 'util' +2022-07-15 11:41:46.680 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-15 11:41:46.680 [lua]-[trace] Initializing 'ffi' +2022-07-15 11:41:46.681 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-15 11:41:46.681 [lua]-[trace] Initializing 'event' +2022-07-15 11:41:46.683 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-15 11:41:46.684 [lua]-[trace] Initializing 'registry' +2022-07-15 11:41:46.686 [lua]-[trace] Initializing 'version' +2022-07-15 11:41:46.686 [lua]-[trace] Initializing 'localization' +2022-07-15 11:41:46.687 [lua]-[trace] Initializing 'i18n' +2022-07-15 11:41:46.688 [lua]-[trace] Initializing 'config' +2022-07-15 11:41:46.689 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:41:46.689 [lua]-[trace] Initializing 'plugin' +2022-07-15 11:41:46.689 [lua]-[trace] Initializing 'uiloader' +2022-07-15 11:41:46.690 [lua]-[trace] Initializing 'stringify_slk' +2022-07-15 11:41:46.690 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-15 11:41:46.690 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-15 11:41:46.691 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-15 11:41:46.691 [lua]-[trace] Initializing 'lni-c' +2022-07-15 11:41:46.692 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-15 11:41:46.692 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-15 11:41:46.692 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-15 11:41:46.693 [lua]-[trace] Initializing 'w3xparser' +2022-07-15 11:41:46.694 [lua]-[trace] Initializing 'check_object' +2022-07-15 11:41:46.695 [lua]-[trace] Initializing 'ffi.storm' +2022-07-15 11:41:46.695 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-15 11:41:46.695 [lua]-[trace] Initializing 'ffi.gui' +2022-07-15 11:41:46.696 [event]-[trace] RegisterEvent id: 7 +2022-07-15 11:41:46.696 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-15 11:41:46.696 [event]-[trace] RegisterEvent id: 5 +2022-07-15 11:41:46.696 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-15 11:41:46.697 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-15 11:41:46.697 [lua]-[trace] Initializing 'compile.wave' +2022-07-15 11:41:46.698 [lua]-[trace] Initializing 'compile.template' +2022-07-15 11:41:46.698 [lua]-[trace] Initializing 'compile.cjass' +2022-07-15 11:41:46.699 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-15 11:41:46.699 [lua]-[trace] Initializing 'mpq_util' +2022-07-15 11:41:46.699 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-15 11:41:46.700 [lua]-[trace] Initializing 'compile.native' +2022-07-15 11:41:46.701 [event]-[trace] RegisterEvent id: 3 +2022-07-15 11:41:46.701 [event]-[trace] RegisterEvent id: 2 +2022-07-15 11:41:46.701 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-15 11:41:46.701 [lua]-[trace] Initializing 'w3x2lni' +2022-07-15 11:41:46.702 [lua]-[trace] Initializing 'utility' +2022-07-15 11:41:46.702 [lua]-[trace] Initializing 'mapdump' +2022-07-15 11:41:46.702 [event]-[trace] RegisterEvent id: 4 +2022-07-15 11:41:46.702 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-15 11:41:46.703 [event]-[trace] RegisterEvent id: 0 +2022-07-15 11:41:46.703 [event]-[trace] RegisterEvent id: 1 +2022-07-15 11:41:46.703 [event]-[trace] RegisterEvent id: 6 +2022-07-15 11:41:46.703 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-15 11:41:46.874 [event]-[trace] RegisterEvent id: 8 +2022-07-15 11:41:46.874 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-15 11:41:46.875 [event]-[trace] RegisterEvent id: 9 +2022-07-15 11:41:46.875 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-15 11:41:46.879 [event]-[info ] Entering main program. +2022-07-15 11:41:46.879 [event]-[debug] Command line: +2022-07-15 11:41:46.883 [lua]-[debug] ********************* on startup start ********************* +2022-07-15 11:41:46.883 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-15 11:41:46.883 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-15 11:41:46.884 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:41:46.884 [lua]-[trace] check_conflicting_ui +2022-07-15 11:41:46.884 [lua]-[trace] check_conflicting_units +2022-07-15 11:41:46.884 [lua]-[trace] clear_potential_conflicting +2022-07-15 11:41:46.885 [lua]-[trace] check_war3_version +2022-07-15 11:41:46.888 [lua]-[error] Cannot find war3.mpq +2022-07-15 11:41:46.890 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-15 11:41:46.917 [lua]-[debug] Tesh loaded successfully. +2022-07-15 11:41:46.928 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-15 11:41:46.930 [lua]-[debug] YDClient loaded successfully. +2022-07-15 11:41:46.930 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-15 11:41:46.931 [lua]-[warn ] failed: disable +2022-07-15 11:41:46.931 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-15 11:41:46.931 [lua]-[warn ] failed: disable +2022-07-15 11:41:46.932 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-15 11:41:46.932 [lua]-[warn ] failed: disable +2022-07-15 11:41:46.932 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-15 11:41:46.972 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-15 11:41:46.975 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-15 11:41:46.976 [lua]-[debug] YDTrigger loaded successfully. +2022-07-15 11:41:46.976 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-15 11:41:46.977 [inject]-[debug] Start installing inline hooks. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-15 11:41:46.978 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-15 11:41:46.978 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-15 11:41:46.978 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-15 11:41:46.978 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-15 11:41:46.978 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-15 11:41:46.978 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-15 11:41:46.978 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-15 11:41:46.978 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-15 11:41:46.978 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-15 11:41:46.978 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-15 11:41:46.978 [inject]-[debug] Installing inline hooks complete. +2022-07-15 11:41:46.978 [inject]-[debug] IAT hook initialization started. +2022-07-15 11:41:46.978 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-15 11:41:46.978 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-15 11:41:46.978 [inject]-[debug] IAT hook initialization completed. +2022-07-15 11:41:46.978 [inject]-[debug] Patches initialization started. +2022-07-15 11:41:46.978 [inject]-[trace] Installing syntax check patch +2022-07-15 11:41:46.978 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-15 11:41:46.978 [inject]-[trace] Installing auto disable patch +2022-07-15 11:41:46.979 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-15 11:41:46.979 [inject]-[trace] Installing enable trigger check patch +2022-07-15 11:41:46.979 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-15 11:41:46.979 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-15 11:41:46.979 [inject]-[trace] Installing doodad limit patch +2022-07-15 11:41:46.979 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-15 11:41:46.979 [inject]-[trace] Installing unit/item limit patch +2022-07-15 11:41:46.979 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-15 11:41:46.979 [inject]-[trace] Installing editor multi-instance patch +2022-07-15 11:41:46.979 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-15 11:41:46.979 [inject]-[trace] Installing attack table patch +2022-07-15 11:41:46.979 [inject]-[debug] Patches initialization completed. +2022-07-15 11:41:46.979 [inject]-[info ] YDWE startup complete. +2022-07-15 11:41:46.979 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-15 11:41:46.980 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-15 11:41:46.980 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-15 11:41:46.980 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-15 11:41:46.993 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-15 11:41:46.995 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-15 11:41:46.997 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-15 11:41:46.998 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-15 11:41:46.998 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-15 11:41:46.998 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-15 11:41:46.998 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-15 11:41:47. 5 [lua]-[trace] Scanned file: 99 +2022-07-15 11:41:47. 7 [lua]-[debug] ********************* on startup end ********************* +2022-07-15 11:41:47.508 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:41:47.527 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:41:47.665 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:41:47.753 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-15 11:41:47.755 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-15 11:41:47.755 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-15 11:41:47.756 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-15 11:41:47.757 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-15 11:41:49.654 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-15 11:41:49.657 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-15 11:42:01.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:42:01.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:42:01.909 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-15 11:42:02.124 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-15 11:42:02.150 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-15 11:42:02.270 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-15 11:42:28.597 [event]-[trace] WE is about to compile maps. +2022-07-15 11:42:28.635 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:42:28.636 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:42:28.636 [lua]-[trace] Saving F:\MapJ\1.w3x +2022-07-15 11:42:28.636 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:42:28.636 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:42:28.637 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-15 11:42:28.637 [lua]-[trace] Processing file.out +2022-07-15 11:42:28.638 [lua]-[trace] Writing code to file.out +2022-07-15 11:42:28.638 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEJapiUnit.j +2022-07-15 11:42:28.639 [lua]-[trace] Injection completed +2022-07-15 11:42:28.639 [lua]-[trace] Wave compilation start. +2022-07-15 11:42:28.661 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:42:28.760 [lua]-[trace] Template compilation start. +2022-07-15 11:42:28.761 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-15 11:42:28.761 [lua]-[trace] Initializing 'computed.order_list' +2022-07-15 11:42:28.761 [lua]-[trace] Initializing 'computed.order_id' +2022-07-15 11:42:28.763 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:42:28.765 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:42:30. 94 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\1.w3x", returned 1 +2022-07-15 11:42:30. 95 [lua]-[debug] Result false +2022-07-15 11:42:30. 95 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:44:06.643 [event]-[trace] WE is about to compile maps. +2022-07-15 11:44:06.687 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:44:06.687 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:44:06.687 [lua]-[trace] Saving F:\MapJ\1.w3x +2022-07-15 11:44:06.687 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:44:06.687 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:44:06.688 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-15 11:44:06.688 [lua]-[trace] Processing file.out +2022-07-15 11:44:06.690 [lua]-[trace] Writing code to file.out +2022-07-15 11:44:06.690 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEJapiUnit.j +2022-07-15 11:44:06.690 [lua]-[trace] Injection completed +2022-07-15 11:44:06.690 [lua]-[trace] Wave compilation start. +2022-07-15 11:44:06.733 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:44:06.867 [lua]-[trace] Template compilation start. +2022-07-15 11:44:06.872 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:44:06.872 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:44:08.584 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\1.w3x", returned 0 +2022-07-15 11:44:08.584 [lua]-[debug] Result true +2022-07-15 11:44:08.584 [lua]-[debug] ********************* on save end ********************* +2022-07-15 11:46:33.533 [event]-[trace] WE is about to compile maps. +2022-07-15 11:46:33.584 [lua]-[debug] ********************* on save start ********************* +2022-07-15 11:46:33.585 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-15 11:46:33.585 [lua]-[trace] Saving F:\MapJ\1.w3x +2022-07-15 11:46:33.585 [lua]-[trace] Save version 1.27.0.52240 +2022-07-15 11:46:33.585 [lua]-[trace] mpq_util.update_file. +2022-07-15 11:46:33.586 [lua]-[trace] war3map.j has been extracted from 1.w3x +2022-07-15 11:46:33.586 [lua]-[trace] Processing file.out +2022-07-15 11:46:33.588 [lua]-[trace] Writing code to file.out +2022-07-15 11:46:33.588 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEJapiUnit.j +2022-07-15 11:46:33.588 [lua]-[trace] Injection completed +2022-07-15 11:46:33.588 [lua]-[trace] Wave compilation start. +2022-07-15 11:46:33.607 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-15 11:46:33.709 [lua]-[trace] Template compilation start. +2022-07-15 11:46:33.711 [lua]-[debug] Template compilation succeeded. +2022-07-15 11:46:33.712 [lua]-[trace] JassHelper compilation start. +2022-07-15 11:46:35.352 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\1.w3x", returned 0 +2022-07-15 11:46:35.352 [lua]-[debug] Result true +2022-07-15 11:46:35.352 [lua]-[debug] ********************* on save end ********************* +2022-07-15 13:22:39.938 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 13:22:39.938 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 13:22:39.938 [inject]-[debug] IAT hook cleanup started. +2022-07-15 13:22:39.938 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 13:22:39.938 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 13:22:39.938 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 13:22:39.938 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 13:22:39.939 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 13:22:39.939 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 13:22:39.939 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 13:22:39.939 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 13:22:39.939 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 13:22:39.939 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 13:22:39.939 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 13:22:39.939 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 13:22:39.939 [lua]-[trace] Unload plugin YDClient. +2022-07-15 13:22:39.939 [lua]-[trace] Unload plugin Tesh. +2022-07-15 13:22:39.941 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 13:22:39.941 [event]-[info ] Main program exit. +2022-07-15 13:22:44.442 [lua]-[debug] ********************* on exit start ********************* +2022-07-15 13:22:44.442 [lua]-[trace] Unload plugin YDClient. +2022-07-15 13:22:44.442 [lua]-[trace] Unload plugin YDTrigger. +2022-07-15 13:22:44.442 [lua]-[trace] Unload plugin Tesh. +2022-07-15 13:22:44.445 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-15 13:22:44.445 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-15 13:22:44.445 [inject]-[debug] IAT hook cleanup started. +2022-07-15 13:22:44.446 [inject]-[trace] WE IAT hook cleaned. +2022-07-15 13:22:44.446 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-15 13:22:44.446 [inject]-[debug] IAT hook cleanup completed. +2022-07-15 13:22:44.446 [inject]-[debug] Inline hook uninstallation begins! +2022-07-15 13:22:44.446 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-15 13:22:44.446 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-15 13:22:44.446 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-15 13:22:44.446 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-15 13:22:44.446 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-15 13:22:44.446 [inject]-[debug] Inline hook uninstallation finished! +2022-07-15 13:22:44.446 [lua]-[debug] ********************* on exit end ********************* +2022-07-15 13:22:44.446 [event]-[info ] Main program exit. +2022-07-15 13:22:44.653 [root]-[info ] Script engine has been shut down. +2022-07-19 10:29:11.283 [root]-[info ] ------------------------------------------------------ +2022-07-19 10:29:11.286 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-19 10:29:11.286 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-19 10:29:11.286 [root]-[info ] Windows version: 10.0.19041 +2022-07-19 10:29:11.287 [root]-[debug] Initialize script engine successfully. +2022-07-19 10:29:11.287 [root]-[info ] Script engine startup complete. +2022-07-19 10:29:11.288 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-19 10:29:11.288 [lua]-[trace] Initializing 'sys' +2022-07-19 10:29:11.290 [lua]-[trace] Initializing 'filesystem' +2022-07-19 10:29:11.293 [lua]-[trace] Initializing 'gui' +2022-07-19 10:29:11.295 [lua]-[trace] Initializing 'util' +2022-07-19 10:29:11.296 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-19 10:29:11.296 [lua]-[trace] Initializing 'ffi' +2022-07-19 10:29:11.298 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-19 10:29:11.298 [lua]-[trace] Initializing 'event' +2022-07-19 10:29:11.301 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-19 10:29:11.303 [lua]-[trace] Initializing 'registry' +2022-07-19 10:29:11.305 [lua]-[trace] Initializing 'version' +2022-07-19 10:29:11.306 [lua]-[trace] Initializing 'localization' +2022-07-19 10:29:11.306 [lua]-[trace] Initializing 'i18n' +2022-07-19 10:29:11.309 [lua]-[trace] Initializing 'config' +2022-07-19 10:29:11.310 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 10:29:11.311 [lua]-[trace] Initializing 'plugin' +2022-07-19 10:29:11.311 [lua]-[trace] Initializing 'uiloader' +2022-07-19 10:29:11.312 [lua]-[trace] Initializing 'stringify_slk' +2022-07-19 10:29:11.313 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-19 10:29:11.313 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-19 10:29:11.314 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-19 10:29:11.315 [lua]-[trace] Initializing 'lni-c' +2022-07-19 10:29:11.317 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-19 10:29:11.318 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-19 10:29:11.318 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-19 10:29:11.319 [lua]-[trace] Initializing 'w3xparser' +2022-07-19 10:29:11.321 [lua]-[trace] Initializing 'check_object' +2022-07-19 10:29:11.323 [lua]-[trace] Initializing 'ffi.storm' +2022-07-19 10:29:11.324 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-19 10:29:11.324 [lua]-[trace] Initializing 'ffi.gui' +2022-07-19 10:29:11.325 [event]-[trace] RegisterEvent id: 7 +2022-07-19 10:29:11.326 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-19 10:29:11.327 [event]-[trace] RegisterEvent id: 5 +2022-07-19 10:29:11.327 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-19 10:29:11.328 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-19 10:29:11.329 [lua]-[trace] Initializing 'compile.wave' +2022-07-19 10:29:11.330 [lua]-[trace] Initializing 'compile.template' +2022-07-19 10:29:11.330 [lua]-[trace] Initializing 'compile.cjass' +2022-07-19 10:29:11.331 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-19 10:29:11.332 [lua]-[trace] Initializing 'mpq_util' +2022-07-19 10:29:11.332 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-19 10:29:11.333 [lua]-[trace] Initializing 'compile.native' +2022-07-19 10:29:11.334 [event]-[trace] RegisterEvent id: 3 +2022-07-19 10:29:11.334 [event]-[trace] RegisterEvent id: 2 +2022-07-19 10:29:11.334 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-19 10:29:11.334 [lua]-[trace] Initializing 'w3x2lni' +2022-07-19 10:29:11.335 [lua]-[trace] Initializing 'utility' +2022-07-19 10:29:11.336 [lua]-[trace] Initializing 'mapdump' +2022-07-19 10:29:11.336 [event]-[trace] RegisterEvent id: 4 +2022-07-19 10:29:11.336 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-19 10:29:11.337 [event]-[trace] RegisterEvent id: 0 +2022-07-19 10:29:11.337 [event]-[trace] RegisterEvent id: 1 +2022-07-19 10:29:11.337 [event]-[trace] RegisterEvent id: 6 +2022-07-19 10:29:11.337 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-19 10:29:11.496 [event]-[trace] RegisterEvent id: 8 +2022-07-19 10:29:11.496 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-19 10:29:11.497 [event]-[trace] RegisterEvent id: 9 +2022-07-19 10:29:11.497 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-19 10:29:11.501 [event]-[info ] Entering main program. +2022-07-19 10:29:11.501 [event]-[debug] Command line: +2022-07-19 10:29:11.504 [lua]-[debug] ********************* on startup start ********************* +2022-07-19 10:29:11.505 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-19 10:29:11.505 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-19 10:29:11.505 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 10:29:11.505 [lua]-[trace] check_conflicting_ui +2022-07-19 10:29:11.506 [lua]-[trace] check_conflicting_units +2022-07-19 10:29:11.506 [lua]-[trace] clear_potential_conflicting +2022-07-19 10:29:11.506 [lua]-[trace] check_war3_version +2022-07-19 10:29:11.512 [lua]-[error] Cannot find war3.mpq +2022-07-19 10:29:11.516 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-19 10:29:11.547 [lua]-[debug] Tesh loaded successfully. +2022-07-19 10:29:11.566 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-19 10:29:11.569 [lua]-[debug] YDClient loaded successfully. +2022-07-19 10:29:11.569 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-19 10:29:11.570 [lua]-[warn ] failed: disable +2022-07-19 10:29:11.570 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-19 10:29:11.571 [lua]-[warn ] failed: disable +2022-07-19 10:29:11.571 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-19 10:29:11.572 [lua]-[warn ] failed: disable +2022-07-19 10:29:11.572 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-19 10:29:11.614 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-19 10:29:11.616 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-19 10:29:11.619 [lua]-[debug] YDTrigger loaded successfully. +2022-07-19 10:29:11.620 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-19 10:29:11.622 [inject]-[debug] Start installing inline hooks. +2022-07-19 10:29:11.622 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-19 10:29:11.622 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-19 10:29:11.622 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-19 10:29:11.622 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-19 10:29:11.622 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-19 10:29:11.622 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-19 10:29:11.622 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-19 10:29:11.622 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-19 10:29:11.622 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-19 10:29:11.622 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-19 10:29:11.623 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-19 10:29:11.623 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-19 10:29:11.623 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-19 10:29:11.623 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-19 10:29:11.623 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-19 10:29:11.623 [inject]-[debug] Installing inline hooks complete. +2022-07-19 10:29:11.623 [inject]-[debug] IAT hook initialization started. +2022-07-19 10:29:11.623 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-19 10:29:11.623 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-19 10:29:11.623 [inject]-[debug] IAT hook initialization completed. +2022-07-19 10:29:11.623 [inject]-[debug] Patches initialization started. +2022-07-19 10:29:11.623 [inject]-[trace] Installing syntax check patch +2022-07-19 10:29:11.623 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-19 10:29:11.623 [inject]-[trace] Installing auto disable patch +2022-07-19 10:29:11.623 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-19 10:29:11.623 [inject]-[trace] Installing enable trigger check patch +2022-07-19 10:29:11.623 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-19 10:29:11.623 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-19 10:29:11.623 [inject]-[trace] Installing doodad limit patch +2022-07-19 10:29:11.624 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-19 10:29:11.624 [inject]-[trace] Installing unit/item limit patch +2022-07-19 10:29:11.624 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-19 10:29:11.624 [inject]-[trace] Installing editor multi-instance patch +2022-07-19 10:29:11.624 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-19 10:29:11.624 [inject]-[trace] Installing attack table patch +2022-07-19 10:29:11.624 [inject]-[debug] Patches initialization completed. +2022-07-19 10:29:11.624 [inject]-[info ] YDWE startup complete. +2022-07-19 10:29:11.624 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-19 10:29:11.625 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-19 10:29:11.625 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-19 10:29:11.625 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-19 10:29:11.646 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-19 10:29:11.649 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-19 10:29:11.651 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-19 10:29:11.652 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-19 10:29:11.652 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-19 10:29:11.652 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-19 10:29:11.653 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-19 10:29:11.662 [lua]-[trace] Scanned file: 99 +2022-07-19 10:29:11.665 [lua]-[debug] ********************* on startup end ********************* +2022-07-19 10:29:12.154 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 10:29:12.175 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 10:29:12.319 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 10:29:12.429 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-19 10:29:12.431 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-19 10:29:12.431 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-19 10:29:12.432 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-19 10:29:12.433 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-19 10:29:14.206 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-19 10:29:14.206 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-19 10:29:28.295 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 10:29:28.296 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 10:29:28.296 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 10:29:28.505 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 10:29:28.531 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 10:29:28.667 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 10:30:28.812 [event]-[trace] WE is about to compile maps. +2022-07-19 10:30:28.868 [lua]-[debug] ********************* on save start ********************* +2022-07-19 10:30:28.868 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 10:30:28.868 [lua]-[trace] Saving F:\MapJ\000.w3x +2022-07-19 10:30:28.869 [lua]-[trace] Save version 1.27.0.52240 +2022-07-19 10:30:28.869 [lua]-[trace] mpq_util.update_file. +2022-07-19 10:30:28.870 [lua]-[trace] war3map.j has been extracted from 000.w3x +2022-07-19 10:30:28.870 [lua]-[trace] Processing file.out +2022-07-19 10:30:28.872 [lua]-[trace] Wave compilation start. +2022-07-19 10:30:28.891 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\MapJ" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-19 10:30:28.990 [lua]-[trace] Template compilation start. +2022-07-19 10:30:28.990 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-19 10:30:28.991 [lua]-[trace] Initializing 'computed.order_list' +2022-07-19 10:30:28.992 [lua]-[trace] Initializing 'computed.order_id' +2022-07-19 10:30:28.995 [lua]-[debug] Template compilation succeeded. +2022-07-19 10:30:28.996 [lua]-[trace] JassHelper compilation start. +2022-07-19 10:30:30.308 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\MapJ\000.w3x", returned 1 +2022-07-19 10:30:30.309 [lua]-[debug] Result false +2022-07-19 10:30:30.309 [lua]-[debug] ********************* on save end ********************* +2022-07-19 10:33:55.503 [lua]-[debug] ********************* on exit start ********************* +2022-07-19 10:33:55.503 [lua]-[trace] Unload plugin YDTrigger. +2022-07-19 10:33:55.503 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-19 10:33:55.503 [inject]-[debug] IAT hook cleanup started. +2022-07-19 10:33:55.503 [inject]-[trace] WE IAT hook cleaned. +2022-07-19 10:33:55.503 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-19 10:33:55.503 [inject]-[debug] IAT hook cleanup completed. +2022-07-19 10:33:55.503 [inject]-[debug] Inline hook uninstallation begins! +2022-07-19 10:33:55.503 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-19 10:33:55.503 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-19 10:33:55.503 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-19 10:33:55.504 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-19 10:33:55.504 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-19 10:33:55.504 [inject]-[debug] Inline hook uninstallation finished! +2022-07-19 10:33:55.504 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-19 10:33:55.504 [lua]-[trace] Unload plugin YDClient. +2022-07-19 10:33:55.504 [lua]-[trace] Unload plugin Tesh. +2022-07-19 10:33:55.511 [lua]-[debug] ********************* on exit end ********************* +2022-07-19 10:33:55.511 [event]-[info ] Main program exit. +2022-07-19 11:15:41.187 [root]-[info ] ------------------------------------------------------ +2022-07-19 11:15:41.190 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-19 11:15:41.190 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-19 11:15:41.190 [root]-[info ] Windows version: 10.0.19041 +2022-07-19 11:15:41.190 [root]-[debug] Initialize script engine successfully. +2022-07-19 11:15:41.190 [root]-[info ] Script engine startup complete. +2022-07-19 11:15:41.190 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-19 11:15:41.191 [lua]-[trace] Initializing 'sys' +2022-07-19 11:15:41.192 [lua]-[trace] Initializing 'filesystem' +2022-07-19 11:15:41.193 [lua]-[trace] Initializing 'gui' +2022-07-19 11:15:41.194 [lua]-[trace] Initializing 'util' +2022-07-19 11:15:41.194 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-19 11:15:41.194 [lua]-[trace] Initializing 'ffi' +2022-07-19 11:15:41.196 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-19 11:15:41.196 [lua]-[trace] Initializing 'event' +2022-07-19 11:15:41.199 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-19 11:15:41.201 [lua]-[trace] Initializing 'registry' +2022-07-19 11:15:41.202 [lua]-[trace] Initializing 'version' +2022-07-19 11:15:41.203 [lua]-[trace] Initializing 'localization' +2022-07-19 11:15:41.203 [lua]-[trace] Initializing 'i18n' +2022-07-19 11:15:41.204 [lua]-[trace] Initializing 'config' +2022-07-19 11:15:41.205 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:15:41.205 [lua]-[trace] Initializing 'plugin' +2022-07-19 11:15:41.205 [lua]-[trace] Initializing 'uiloader' +2022-07-19 11:15:41.206 [lua]-[trace] Initializing 'stringify_slk' +2022-07-19 11:15:41.206 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-19 11:15:41.206 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-19 11:15:41.207 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-19 11:15:41.207 [lua]-[trace] Initializing 'lni-c' +2022-07-19 11:15:41.208 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-19 11:15:41.208 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-19 11:15:41.209 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-19 11:15:41.209 [lua]-[trace] Initializing 'w3xparser' +2022-07-19 11:15:41.211 [lua]-[trace] Initializing 'check_object' +2022-07-19 11:15:41.211 [lua]-[trace] Initializing 'ffi.storm' +2022-07-19 11:15:41.212 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-19 11:15:41.212 [lua]-[trace] Initializing 'ffi.gui' +2022-07-19 11:15:41.212 [event]-[trace] RegisterEvent id: 7 +2022-07-19 11:15:41.213 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-19 11:15:41.213 [event]-[trace] RegisterEvent id: 5 +2022-07-19 11:15:41.213 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-19 11:15:41.214 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-19 11:15:41.215 [lua]-[trace] Initializing 'compile.wave' +2022-07-19 11:15:41.216 [lua]-[trace] Initializing 'compile.template' +2022-07-19 11:15:41.216 [lua]-[trace] Initializing 'compile.cjass' +2022-07-19 11:15:41.217 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-19 11:15:41.217 [lua]-[trace] Initializing 'mpq_util' +2022-07-19 11:15:41.217 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-19 11:15:41.218 [lua]-[trace] Initializing 'compile.native' +2022-07-19 11:15:41.219 [event]-[trace] RegisterEvent id: 3 +2022-07-19 11:15:41.219 [event]-[trace] RegisterEvent id: 2 +2022-07-19 11:15:41.219 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-19 11:15:41.219 [lua]-[trace] Initializing 'w3x2lni' +2022-07-19 11:15:41.220 [lua]-[trace] Initializing 'utility' +2022-07-19 11:15:41.220 [lua]-[trace] Initializing 'mapdump' +2022-07-19 11:15:41.220 [event]-[trace] RegisterEvent id: 4 +2022-07-19 11:15:41.220 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-19 11:15:41.221 [event]-[trace] RegisterEvent id: 0 +2022-07-19 11:15:41.221 [event]-[trace] RegisterEvent id: 1 +2022-07-19 11:15:41.221 [event]-[trace] RegisterEvent id: 6 +2022-07-19 11:15:41.221 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-19 11:15:41.404 [event]-[trace] RegisterEvent id: 8 +2022-07-19 11:15:41.404 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-19 11:15:41.405 [event]-[trace] RegisterEvent id: 9 +2022-07-19 11:15:41.405 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-19 11:15:41.410 [event]-[info ] Entering main program. +2022-07-19 11:15:41.410 [event]-[debug] Command line: +2022-07-19 11:15:41.414 [lua]-[debug] ********************* on startup start ********************* +2022-07-19 11:15:41.415 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-19 11:15:41.415 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-19 11:15:41.415 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:15:41.415 [lua]-[trace] check_conflicting_ui +2022-07-19 11:15:41.415 [lua]-[trace] check_conflicting_units +2022-07-19 11:15:41.415 [lua]-[trace] clear_potential_conflicting +2022-07-19 11:15:41.415 [lua]-[trace] check_war3_version +2022-07-19 11:15:41.418 [lua]-[error] Cannot find war3.mpq +2022-07-19 11:15:41.420 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-19 11:15:41.443 [lua]-[debug] Tesh loaded successfully. +2022-07-19 11:15:41.456 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-19 11:15:41.458 [lua]-[debug] YDClient loaded successfully. +2022-07-19 11:15:41.459 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-19 11:15:41.459 [lua]-[warn ] failed: disable +2022-07-19 11:15:41.460 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-19 11:15:41.460 [lua]-[warn ] failed: disable +2022-07-19 11:15:41.460 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-19 11:15:41.461 [lua]-[warn ] failed: disable +2022-07-19 11:15:41.461 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-19 11:15:41.518 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-19 11:15:41.520 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-19 11:15:41.522 [lua]-[debug] YDTrigger loaded successfully. +2022-07-19 11:15:41.522 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-19 11:15:41.524 [inject]-[debug] Start installing inline hooks. +2022-07-19 11:15:41.524 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-19 11:15:41.524 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-19 11:15:41.524 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-19 11:15:41.524 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-19 11:15:41.524 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-19 11:15:41.524 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-19 11:15:41.524 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-19 11:15:41.524 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-19 11:15:41.525 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-19 11:15:41.525 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-19 11:15:41.525 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-19 11:15:41.525 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-19 11:15:41.525 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-19 11:15:41.525 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-19 11:15:41.525 [inject]-[debug] Installing inline hooks complete. +2022-07-19 11:15:41.525 [inject]-[debug] IAT hook initialization started. +2022-07-19 11:15:41.525 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-19 11:15:41.525 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-19 11:15:41.525 [inject]-[debug] IAT hook initialization completed. +2022-07-19 11:15:41.525 [inject]-[debug] Patches initialization started. +2022-07-19 11:15:41.525 [inject]-[trace] Installing syntax check patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing auto disable patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing enable trigger check patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-19 11:15:41.525 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing doodad limit patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing unit/item limit patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing editor multi-instance patch +2022-07-19 11:15:41.525 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-19 11:15:41.525 [inject]-[trace] Installing attack table patch +2022-07-19 11:15:41.525 [inject]-[debug] Patches initialization completed. +2022-07-19 11:15:41.525 [inject]-[info ] YDWE startup complete. +2022-07-19 11:15:41.525 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-19 11:15:41.526 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-19 11:15:41.526 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-19 11:15:41.526 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-19 11:15:41.541 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-19 11:15:41.543 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-19 11:15:41.545 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-19 11:15:41.546 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-19 11:15:41.546 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-19 11:15:41.547 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-19 11:15:41.547 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-19 11:15:41.555 [lua]-[trace] Scanned file: 99 +2022-07-19 11:15:41.558 [lua]-[debug] ********************* on startup end ********************* +2022-07-19 11:15:42.125 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:15:42.149 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:15:42.309 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:15:42.409 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-19 11:15:42.411 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-19 11:15:42.412 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-19 11:15:42.412 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-19 11:15:42.413 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-19 11:15:44.774 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-19 11:15:44.774 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-19 11:15:56.611 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:15:56.611 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:15:56.611 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:15:56.825 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:15:56.853 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:15:56.989 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:16:12. 13 [event]-[trace] WE is about to compile maps. +2022-07-19 11:16:12. 70 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:16:12. 70 [event]-[trace] Need to compile... +2022-07-19 11:16:12. 70 [lua]-[debug] ********************* on save start ********************* +2022-07-19 11:16:12. 71 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:16:12. 71 [lua]-[trace] Saving D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:16:12. 71 [lua]-[trace] Save version 1.27.0.52240 +2022-07-19 11:16:12. 71 [lua]-[trace] mpq_util.update_file. +2022-07-19 11:16:12. 72 [lua]-[trace] war3map.j has been extracted from WorldEditTestMap.w3x +2022-07-19 11:16:12. 72 [lua]-[trace] Processing file.out +2022-07-19 11:16:12. 74 [lua]-[trace] Wave compilation start. +2022-07-19 11:16:12. 92 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="D:\WAR3\Warcraft III Frozen Throne\Maps\Test" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-19 11:16:12.205 [lua]-[trace] Template compilation start. +2022-07-19 11:16:12.205 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-19 11:16:12.205 [lua]-[trace] Initializing 'computed.order_list' +2022-07-19 11:16:12.206 [lua]-[trace] Initializing 'computed.order_id' +2022-07-19 11:16:12.208 [lua]-[debug] Template compilation succeeded. +2022-07-19 11:16:12.209 [lua]-[trace] JassHelper compilation start. +2022-07-19 11:16:13.920 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x", returned 0 +2022-07-19 11:16:13.921 [lua]-[debug] Result true +2022-07-19 11:16:13.921 [lua]-[debug] ********************* on save end ********************* +2022-07-19 11:16:13.921 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:16:13.921 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:16:13.921 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:16:13.921 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:16:13.921 [lua]-[debug] Testing 0 +2022-07-19 11:16:14. 45 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:16:14. 45 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:16:32.898 [root]-[info ] ------------------------------------------------------ +2022-07-19 11:16:32.901 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-19 11:16:32.901 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-19 11:16:32.901 [root]-[info ] Windows version: 10.0.19041 +2022-07-19 11:16:32.901 [root]-[debug] Initialize script engine successfully. +2022-07-19 11:16:32.901 [root]-[info ] Script engine startup complete. +2022-07-19 11:16:32.901 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-19 11:16:32.902 [lua]-[trace] Initializing 'sys' +2022-07-19 11:16:32.902 [lua]-[trace] Initializing 'filesystem' +2022-07-19 11:16:32.903 [lua]-[trace] Initializing 'gui' +2022-07-19 11:16:32.904 [lua]-[trace] Initializing 'util' +2022-07-19 11:16:32.904 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-19 11:16:32.905 [lua]-[trace] Initializing 'ffi' +2022-07-19 11:16:32.906 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-19 11:16:32.906 [lua]-[trace] Initializing 'event' +2022-07-19 11:16:32.908 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-19 11:16:32.910 [lua]-[trace] Initializing 'registry' +2022-07-19 11:16:32.911 [lua]-[trace] Initializing 'version' +2022-07-19 11:16:32.911 [lua]-[trace] Initializing 'localization' +2022-07-19 11:16:32.912 [lua]-[trace] Initializing 'i18n' +2022-07-19 11:16:32.913 [lua]-[trace] Initializing 'config' +2022-07-19 11:16:32.914 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:16:32.914 [lua]-[trace] Initializing 'plugin' +2022-07-19 11:16:32.914 [lua]-[trace] Initializing 'uiloader' +2022-07-19 11:16:32.915 [lua]-[trace] Initializing 'stringify_slk' +2022-07-19 11:16:32.915 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-19 11:16:32.915 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-19 11:16:32.916 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-19 11:16:32.916 [lua]-[trace] Initializing 'lni-c' +2022-07-19 11:16:32.917 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-19 11:16:32.917 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-19 11:16:32.917 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-19 11:16:32.918 [lua]-[trace] Initializing 'w3xparser' +2022-07-19 11:16:32.919 [lua]-[trace] Initializing 'check_object' +2022-07-19 11:16:32.920 [lua]-[trace] Initializing 'ffi.storm' +2022-07-19 11:16:32.920 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-19 11:16:32.920 [lua]-[trace] Initializing 'ffi.gui' +2022-07-19 11:16:32.921 [event]-[trace] RegisterEvent id: 7 +2022-07-19 11:16:32.921 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-19 11:16:32.921 [event]-[trace] RegisterEvent id: 5 +2022-07-19 11:16:32.921 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-19 11:16:32.922 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-19 11:16:32.922 [lua]-[trace] Initializing 'compile.wave' +2022-07-19 11:16:32.923 [lua]-[trace] Initializing 'compile.template' +2022-07-19 11:16:32.923 [lua]-[trace] Initializing 'compile.cjass' +2022-07-19 11:16:32.923 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-19 11:16:32.924 [lua]-[trace] Initializing 'mpq_util' +2022-07-19 11:16:32.925 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-19 11:16:32.926 [lua]-[trace] Initializing 'compile.native' +2022-07-19 11:16:32.926 [event]-[trace] RegisterEvent id: 3 +2022-07-19 11:16:32.926 [event]-[trace] RegisterEvent id: 2 +2022-07-19 11:16:32.926 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-19 11:16:32.926 [lua]-[trace] Initializing 'w3x2lni' +2022-07-19 11:16:32.927 [lua]-[trace] Initializing 'utility' +2022-07-19 11:16:32.927 [lua]-[trace] Initializing 'mapdump' +2022-07-19 11:16:32.928 [event]-[trace] RegisterEvent id: 4 +2022-07-19 11:16:32.928 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-19 11:16:32.929 [event]-[trace] RegisterEvent id: 0 +2022-07-19 11:16:32.929 [event]-[trace] RegisterEvent id: 1 +2022-07-19 11:16:32.929 [event]-[trace] RegisterEvent id: 6 +2022-07-19 11:16:32.929 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-19 11:16:33.101 [event]-[trace] RegisterEvent id: 8 +2022-07-19 11:16:33.101 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-19 11:16:33.101 [event]-[trace] RegisterEvent id: 9 +2022-07-19 11:16:33.101 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-19 11:16:33.105 [event]-[info ] Entering main program. +2022-07-19 11:16:33.106 [event]-[debug] Command line: +2022-07-19 11:16:33.108 [lua]-[debug] ********************* on startup start ********************* +2022-07-19 11:16:33.109 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-19 11:16:33.109 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-19 11:16:33.109 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:16:33.110 [lua]-[trace] check_conflicting_ui +2022-07-19 11:16:33.110 [lua]-[trace] check_conflicting_units +2022-07-19 11:16:33.110 [lua]-[trace] clear_potential_conflicting +2022-07-19 11:16:33.110 [lua]-[trace] check_war3_version +2022-07-19 11:16:33.116 [lua]-[error] Cannot find war3.mpq +2022-07-19 11:16:33.118 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-19 11:16:33.139 [lua]-[debug] Tesh loaded successfully. +2022-07-19 11:16:33.151 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-19 11:16:33.153 [lua]-[debug] YDClient loaded successfully. +2022-07-19 11:16:33.153 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-19 11:16:33.153 [lua]-[warn ] failed: disable +2022-07-19 11:16:33.153 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-19 11:16:33.154 [lua]-[warn ] failed: disable +2022-07-19 11:16:33.154 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-19 11:16:33.154 [lua]-[warn ] failed: disable +2022-07-19 11:16:33.154 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-19 11:16:33.198 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-19 11:16:33.200 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-19 11:16:33.202 [lua]-[debug] YDTrigger loaded successfully. +2022-07-19 11:16:33.202 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-19 11:16:33.203 [inject]-[debug] Start installing inline hooks. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-19 11:16:33.203 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-19 11:16:33.203 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-19 11:16:33.203 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-19 11:16:33.203 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-19 11:16:33.203 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-19 11:16:33.203 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-19 11:16:33.203 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-19 11:16:33.203 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-19 11:16:33.203 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-19 11:16:33.203 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-19 11:16:33.203 [inject]-[debug] Installing inline hooks complete. +2022-07-19 11:16:33.204 [inject]-[debug] IAT hook initialization started. +2022-07-19 11:16:33.204 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-19 11:16:33.204 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-19 11:16:33.204 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-19 11:16:33.204 [inject]-[debug] IAT hook initialization completed. +2022-07-19 11:16:33.204 [inject]-[debug] Patches initialization started. +2022-07-19 11:16:33.204 [inject]-[trace] Installing syntax check patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing auto disable patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing enable trigger check patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-19 11:16:33.204 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing doodad limit patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing unit/item limit patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing editor multi-instance patch +2022-07-19 11:16:33.204 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-19 11:16:33.204 [inject]-[trace] Installing attack table patch +2022-07-19 11:16:33.204 [inject]-[debug] Patches initialization completed. +2022-07-19 11:16:33.204 [inject]-[info ] YDWE startup complete. +2022-07-19 11:16:33.204 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-19 11:16:33.205 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-19 11:16:33.205 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-19 11:16:33.205 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-19 11:16:33.217 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-19 11:16:33.219 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-19 11:16:33.221 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-19 11:16:33.221 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-19 11:16:33.221 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-19 11:16:33.221 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-19 11:16:33.221 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-19 11:16:33.227 [lua]-[trace] Scanned file: 99 +2022-07-19 11:16:33.232 [lua]-[debug] ********************* on startup end ********************* +2022-07-19 11:16:33.707 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:16:33.733 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:16:33.877 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:16:34.148 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-19 11:16:34.150 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-19 11:16:34.150 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-19 11:16:34.151 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-19 11:16:34.152 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-19 11:16:37. 15 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-19 11:16:37. 16 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-19 11:16:53.812 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 11:16:53.812 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 11:16:53.812 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-19 11:16:54. 45 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:16:54. 73 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:16:54.206 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:17:01.682 [event]-[trace] Executing map D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:17:01.682 [event]-[trace] No need to compile. +2022-07-19 11:17:01.682 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:17:01.683 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:17:01.683 [lua]-[debug] Testing D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:17:01.683 [lua]-[debug] Testing "D:\WAR3\Warcraft III Frozen Throne\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:17:01.683 [lua]-[debug] Testing 0 +2022-07-19 11:17:01.904 [lua]-[trace] Executed "D:\WAR3\Warcraft III Frozen Throne\war3.exe" -loadfile "D:\WAR3\Warcraft III Frozen Throne\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:17:01.904 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:17:28.148 [root]-[info ] ------------------------------------------------------ +2022-07-19 11:17:28.152 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-19 11:17:28.152 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-19 11:17:28.152 [root]-[info ] Windows version: 10.0.19041 +2022-07-19 11:17:28.152 [root]-[debug] Initialize script engine successfully. +2022-07-19 11:17:28.152 [root]-[info ] Script engine startup complete. +2022-07-19 11:17:28.152 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-19 11:17:28.152 [lua]-[trace] Initializing 'sys' +2022-07-19 11:17:28.153 [lua]-[trace] Initializing 'filesystem' +2022-07-19 11:17:28.154 [lua]-[trace] Initializing 'gui' +2022-07-19 11:17:28.154 [lua]-[trace] Initializing 'util' +2022-07-19 11:17:28.155 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-19 11:17:28.155 [lua]-[trace] Initializing 'ffi' +2022-07-19 11:17:28.156 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-19 11:17:28.156 [lua]-[trace] Initializing 'event' +2022-07-19 11:17:28.159 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-19 11:17:28.160 [lua]-[trace] Initializing 'registry' +2022-07-19 11:17:28.161 [lua]-[trace] Initializing 'version' +2022-07-19 11:17:28.162 [lua]-[trace] Initializing 'localization' +2022-07-19 11:17:28.162 [lua]-[trace] Initializing 'i18n' +2022-07-19 11:17:28.163 [lua]-[trace] Initializing 'config' +2022-07-19 11:17:28.164 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:17:28.164 [lua]-[trace] Initializing 'plugin' +2022-07-19 11:17:28.164 [lua]-[trace] Initializing 'uiloader' +2022-07-19 11:17:28.164 [lua]-[trace] Initializing 'stringify_slk' +2022-07-19 11:17:28.165 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-19 11:17:28.165 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-19 11:17:28.165 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-19 11:17:28.166 [lua]-[trace] Initializing 'lni-c' +2022-07-19 11:17:28.166 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-19 11:17:28.167 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-19 11:17:28.167 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-19 11:17:28.167 [lua]-[trace] Initializing 'w3xparser' +2022-07-19 11:17:28.169 [lua]-[trace] Initializing 'check_object' +2022-07-19 11:17:28.169 [lua]-[trace] Initializing 'ffi.storm' +2022-07-19 11:17:28.170 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-19 11:17:28.170 [lua]-[trace] Initializing 'ffi.gui' +2022-07-19 11:17:28.170 [event]-[trace] RegisterEvent id: 7 +2022-07-19 11:17:28.171 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-19 11:17:28.171 [event]-[trace] RegisterEvent id: 5 +2022-07-19 11:17:28.171 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-19 11:17:28.171 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-19 11:17:28.172 [lua]-[trace] Initializing 'compile.wave' +2022-07-19 11:17:28.173 [lua]-[trace] Initializing 'compile.template' +2022-07-19 11:17:28.173 [lua]-[trace] Initializing 'compile.cjass' +2022-07-19 11:17:28.173 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-19 11:17:28.174 [lua]-[trace] Initializing 'mpq_util' +2022-07-19 11:17:28.174 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-19 11:17:28.175 [lua]-[trace] Initializing 'compile.native' +2022-07-19 11:17:28.175 [event]-[trace] RegisterEvent id: 3 +2022-07-19 11:17:28.175 [event]-[trace] RegisterEvent id: 2 +2022-07-19 11:17:28.175 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-19 11:17:28.175 [lua]-[trace] Initializing 'w3x2lni' +2022-07-19 11:17:28.176 [lua]-[trace] Initializing 'utility' +2022-07-19 11:17:28.176 [lua]-[trace] Initializing 'mapdump' +2022-07-19 11:17:28.177 [event]-[trace] RegisterEvent id: 4 +2022-07-19 11:17:28.177 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-19 11:17:28.177 [event]-[trace] RegisterEvent id: 0 +2022-07-19 11:17:28.177 [event]-[trace] RegisterEvent id: 1 +2022-07-19 11:17:28.177 [event]-[trace] RegisterEvent id: 6 +2022-07-19 11:17:28.177 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-19 11:17:28.368 [event]-[trace] RegisterEvent id: 8 +2022-07-19 11:17:28.368 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-19 11:17:28.369 [event]-[trace] RegisterEvent id: 9 +2022-07-19 11:17:28.369 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-19 11:17:28.374 [event]-[info ] Entering main program. +2022-07-19 11:17:28.374 [event]-[debug] Command line: +2022-07-19 11:17:28.379 [lua]-[debug] ********************* on startup start ********************* +2022-07-19 11:17:28.380 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-19 11:17:28.380 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-19 11:17:28.381 [lua]-[debug] war3 path D:\WAR3\Warcraft III Frozen Throne +2022-07-19 11:17:28.381 [lua]-[trace] check_conflicting_ui +2022-07-19 11:17:28.381 [lua]-[trace] check_conflicting_units +2022-07-19 11:17:28.381 [lua]-[trace] clear_potential_conflicting +2022-07-19 11:17:28.382 [lua]-[trace] check_war3_version +2022-07-19 11:17:28.386 [lua]-[error] Cannot find war3.mpq +2022-07-19 11:17:28.388 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-19 11:17:28.410 [lua]-[debug] Tesh loaded successfully. +2022-07-19 11:17:28.421 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-19 11:17:28.423 [lua]-[debug] YDClient loaded successfully. +2022-07-19 11:17:28.423 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-19 11:17:28.423 [lua]-[warn ] failed: disable +2022-07-19 11:17:28.424 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-19 11:17:28.424 [lua]-[warn ] failed: disable +2022-07-19 11:17:28.424 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-19 11:17:28.425 [lua]-[warn ] failed: disable +2022-07-19 11:17:28.425 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-19 11:17:28.472 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-19 11:17:28.474 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-19 11:17:28.476 [lua]-[debug] YDTrigger loaded successfully. +2022-07-19 11:17:28.476 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-19 11:17:28.478 [inject]-[debug] Start installing inline hooks. +2022-07-19 11:17:28.479 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-19 11:17:28.479 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-19 11:17:28.479 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-19 11:17:28.479 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-19 11:17:28.480 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-19 11:17:28.480 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-19 11:17:28.480 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-19 11:17:28.480 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-19 11:17:28.480 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-19 11:17:28.480 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-19 11:17:28.480 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-19 11:17:28.480 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-19 11:17:28.480 [inject]-[debug] Installing inline hooks complete. +2022-07-19 11:17:28.480 [inject]-[debug] IAT hook initialization started. +2022-07-19 11:17:28.480 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-19 11:17:28.480 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-19 11:17:28.480 [inject]-[debug] IAT hook initialization completed. +2022-07-19 11:17:28.480 [inject]-[debug] Patches initialization started. +2022-07-19 11:17:28.480 [inject]-[trace] Installing syntax check patch +2022-07-19 11:17:28.480 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-19 11:17:28.480 [inject]-[trace] Installing auto disable patch +2022-07-19 11:17:28.480 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-19 11:17:28.480 [inject]-[trace] Installing enable trigger check patch +2022-07-19 11:17:28.480 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-19 11:17:28.480 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-19 11:17:28.480 [inject]-[trace] Installing doodad limit patch +2022-07-19 11:17:28.480 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-19 11:17:28.480 [inject]-[trace] Installing unit/item limit patch +2022-07-19 11:17:28.480 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-19 11:17:28.480 [inject]-[trace] Installing editor multi-instance patch +2022-07-19 11:17:28.481 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-19 11:17:28.481 [inject]-[trace] Installing attack table patch +2022-07-19 11:17:28.481 [inject]-[debug] Patches initialization completed. +2022-07-19 11:17:28.481 [inject]-[info ] YDWE startup complete. +2022-07-19 11:17:28.481 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-19 11:17:28.482 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-19 11:17:28.482 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-19 11:17:28.482 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-19 11:17:28.500 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-19 11:17:28.503 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-19 11:17:28.505 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-19 11:17:28.505 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-19 11:17:28.506 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-19 11:17:28.506 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-19 11:17:28.506 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-19 11:17:28.514 [lua]-[trace] Scanned file: 99 +2022-07-19 11:17:28.517 [lua]-[debug] ********************* on startup end ********************* +2022-07-19 11:17:29. 19 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:17:29. 39 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:17:29.184 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:17:29.280 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mp3dec.asi +2022-07-19 11:17:29.282 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssdolby.m3d +2022-07-19 11:17:29.282 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Msseax2.m3d +2022-07-19 11:17:29.283 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Mssfast.m3d +2022-07-19 11:17:29.283 [lua]-[debug] Loading provider D:\WAR3\Warcraft III Frozen Throne\redist\miles\Reverb3.flt +2022-07-19 11:17:31.305 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-19 11:17:31.305 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-19 11:17:41.810 [lua]-[trace] Executed "F:\平台编辑器\bin\YDWEConfig.exe". +2022-07-19 11:17:58. 91 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:17:58. 91 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:17:58. 91 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:17:58.331 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:17:58.356 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:17:58.492 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:18:02.883 [lua]-[debug] ********************* on exit start ********************* +2022-07-19 11:18:02.883 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-19 11:18:02.883 [lua]-[trace] Unload plugin YDClient. +2022-07-19 11:18:02.883 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-19 11:18:02.883 [inject]-[debug] IAT hook cleanup started. +2022-07-19 11:18:02.883 [inject]-[trace] WE IAT hook cleaned. +2022-07-19 11:18:02.883 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-19 11:18:02.883 [inject]-[debug] IAT hook cleanup completed. +2022-07-19 11:18:02.883 [inject]-[debug] Inline hook uninstallation begins! +2022-07-19 11:18:02.883 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-19 11:18:02.883 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-19 11:18:02.883 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-19 11:18:02.883 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-19 11:18:02.884 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-19 11:18:02.884 [inject]-[debug] Inline hook uninstallation finished! +2022-07-19 11:18:02.884 [lua]-[trace] Unload plugin YDTrigger. +2022-07-19 11:18:02.884 [lua]-[trace] Unload plugin Tesh. +2022-07-19 11:18:02.889 [lua]-[debug] ********************* on exit end ********************* +2022-07-19 11:18:02.889 [event]-[info ] Main program exit. +2022-07-19 11:18:03.139 [root]-[info ] Script engine has been shut down. +2022-07-19 11:18:04. 39 [root]-[info ] ------------------------------------------------------ +2022-07-19 11:18:04. 42 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-19 11:18:04. 42 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-19 11:18:04. 42 [root]-[info ] Windows version: 10.0.19041 +2022-07-19 11:18:04. 42 [root]-[debug] Initialize script engine successfully. +2022-07-19 11:18:04. 42 [root]-[info ] Script engine startup complete. +2022-07-19 11:18:04. 43 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-19 11:18:04. 43 [lua]-[trace] Initializing 'sys' +2022-07-19 11:18:04. 44 [lua]-[trace] Initializing 'filesystem' +2022-07-19 11:18:04. 46 [lua]-[trace] Initializing 'gui' +2022-07-19 11:18:04. 47 [lua]-[trace] Initializing 'util' +2022-07-19 11:18:04. 47 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-19 11:18:04. 48 [lua]-[trace] Initializing 'ffi' +2022-07-19 11:18:04. 49 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-19 11:18:04. 49 [lua]-[trace] Initializing 'event' +2022-07-19 11:18:04. 51 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-19 11:18:04. 52 [lua]-[trace] Initializing 'registry' +2022-07-19 11:18:04. 53 [lua]-[trace] Initializing 'version' +2022-07-19 11:18:04. 54 [lua]-[trace] Initializing 'localization' +2022-07-19 11:18:04. 54 [lua]-[trace] Initializing 'i18n' +2022-07-19 11:18:04. 55 [lua]-[trace] Initializing 'config' +2022-07-19 11:18:04. 56 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:18:04. 56 [lua]-[trace] Initializing 'plugin' +2022-07-19 11:18:04. 57 [lua]-[trace] Initializing 'uiloader' +2022-07-19 11:18:04. 57 [lua]-[trace] Initializing 'stringify_slk' +2022-07-19 11:18:04. 57 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-19 11:18:04. 57 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-19 11:18:04. 58 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-19 11:18:04. 58 [lua]-[trace] Initializing 'lni-c' +2022-07-19 11:18:04. 59 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-19 11:18:04. 60 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-19 11:18:04. 61 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-19 11:18:04. 61 [lua]-[trace] Initializing 'w3xparser' +2022-07-19 11:18:04. 63 [lua]-[trace] Initializing 'check_object' +2022-07-19 11:18:04. 64 [lua]-[trace] Initializing 'ffi.storm' +2022-07-19 11:18:04. 65 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-19 11:18:04. 65 [lua]-[trace] Initializing 'ffi.gui' +2022-07-19 11:18:04. 65 [event]-[trace] RegisterEvent id: 7 +2022-07-19 11:18:04. 65 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-19 11:18:04. 66 [event]-[trace] RegisterEvent id: 5 +2022-07-19 11:18:04. 66 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-19 11:18:04. 66 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-19 11:18:04. 67 [lua]-[trace] Initializing 'compile.wave' +2022-07-19 11:18:04. 67 [lua]-[trace] Initializing 'compile.template' +2022-07-19 11:18:04. 67 [lua]-[trace] Initializing 'compile.cjass' +2022-07-19 11:18:04. 68 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-19 11:18:04. 68 [lua]-[trace] Initializing 'mpq_util' +2022-07-19 11:18:04. 68 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-19 11:18:04. 69 [lua]-[trace] Initializing 'compile.native' +2022-07-19 11:18:04. 70 [event]-[trace] RegisterEvent id: 3 +2022-07-19 11:18:04. 70 [event]-[trace] RegisterEvent id: 2 +2022-07-19 11:18:04. 70 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-19 11:18:04. 70 [lua]-[trace] Initializing 'w3x2lni' +2022-07-19 11:18:04. 71 [lua]-[trace] Initializing 'utility' +2022-07-19 11:18:04. 71 [lua]-[trace] Initializing 'mapdump' +2022-07-19 11:18:04. 72 [event]-[trace] RegisterEvent id: 4 +2022-07-19 11:18:04. 72 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-19 11:18:04. 72 [event]-[trace] RegisterEvent id: 0 +2022-07-19 11:18:04. 72 [event]-[trace] RegisterEvent id: 1 +2022-07-19 11:18:04. 72 [event]-[trace] RegisterEvent id: 6 +2022-07-19 11:18:04. 72 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-19 11:18:04.265 [event]-[trace] RegisterEvent id: 8 +2022-07-19 11:18:04.265 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-19 11:18:04.266 [event]-[trace] RegisterEvent id: 9 +2022-07-19 11:18:04.266 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-19 11:18:04.271 [event]-[info ] Entering main program. +2022-07-19 11:18:04.271 [event]-[debug] Command line: +2022-07-19 11:18:04.274 [lua]-[debug] ********************* on startup start ********************* +2022-07-19 11:18:04.276 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-19 11:18:04.276 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-19 11:18:04.277 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:18:04.277 [lua]-[trace] check_conflicting_ui +2022-07-19 11:18:04.277 [lua]-[trace] check_conflicting_units +2022-07-19 11:18:04.277 [lua]-[trace] clear_potential_conflicting +2022-07-19 11:18:04.277 [lua]-[trace] check_war3_version +2022-07-19 11:18:04.280 [lua]-[error] Cannot find war3.mpq +2022-07-19 11:18:04.282 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-19 11:18:04.304 [lua]-[debug] Tesh loaded successfully. +2022-07-19 11:18:04.316 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-19 11:18:04.318 [lua]-[debug] YDClient loaded successfully. +2022-07-19 11:18:04.318 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-19 11:18:04.319 [lua]-[warn ] failed: disable +2022-07-19 11:18:04.319 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-19 11:18:04.320 [lua]-[warn ] failed: disable +2022-07-19 11:18:04.320 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-19 11:18:04.320 [lua]-[warn ] failed: disable +2022-07-19 11:18:04.320 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-19 11:18:04.372 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-19 11:18:04.375 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-19 11:18:04.376 [lua]-[debug] YDTrigger loaded successfully. +2022-07-19 11:18:04.377 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-19 11:18:04.378 [inject]-[debug] Start installing inline hooks. +2022-07-19 11:18:04.378 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-19 11:18:04.379 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-19 11:18:04.379 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-19 11:18:04.379 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-19 11:18:04.379 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-19 11:18:04.379 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-19 11:18:04.379 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-19 11:18:04.379 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-19 11:18:04.379 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-19 11:18:04.379 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-19 11:18:04.379 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-19 11:18:04.379 [inject]-[debug] Installing inline hooks complete. +2022-07-19 11:18:04.379 [inject]-[debug] IAT hook initialization started. +2022-07-19 11:18:04.379 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-19 11:18:04.379 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-19 11:18:04.379 [inject]-[debug] IAT hook initialization completed. +2022-07-19 11:18:04.379 [inject]-[debug] Patches initialization started. +2022-07-19 11:18:04.379 [inject]-[trace] Installing syntax check patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing auto disable patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing enable trigger check patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-19 11:18:04.380 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing doodad limit patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing unit/item limit patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing editor multi-instance patch +2022-07-19 11:18:04.380 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-19 11:18:04.380 [inject]-[trace] Installing attack table patch +2022-07-19 11:18:04.380 [inject]-[debug] Patches initialization completed. +2022-07-19 11:18:04.380 [inject]-[info ] YDWE startup complete. +2022-07-19 11:18:04.380 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-19 11:18:04.381 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-19 11:18:04.381 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-19 11:18:04.381 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-19 11:18:04.396 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-19 11:18:04.399 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-19 11:18:04.400 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-19 11:18:04.401 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-19 11:18:04.401 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-19 11:18:04.401 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-19 11:18:04.401 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-19 11:18:04.408 [lua]-[trace] Scanned file: 99 +2022-07-19 11:18:04.412 [lua]-[debug] ********************* on startup end ********************* +2022-07-19 11:18:05.410 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:18:05.428 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:18:05.569 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:18:05.662 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-19 11:18:05.663 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-19 11:18:05.664 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-19 11:18:05.665 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-19 11:18:05.666 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-19 11:18:07.636 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-19 11:18:07.637 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-19 11:18:34. 35 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:18:34. 35 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:18:34. 35 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-19 11:18:34.257 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-19 11:18:34.282 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-19 11:18:34.413 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-19 11:20:47.834 [event]-[trace] Executing map F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:20:47.834 [event]-[trace] No need to compile. +2022-07-19 11:20:47.834 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:20:47.835 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:20:47.835 [lua]-[debug] Testing F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:20:47.835 [lua]-[debug] Testing "F:\1.27a\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:20:47.835 [lua]-[debug] Testing 0 +2022-07-19 11:20:47.896 [lua]-[trace] Executed "F:\1.27a\WarcraftIII\war3.exe" -loadfile "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:20:47.896 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:21:04.677 [event]-[trace] WE is about to compile maps. +2022-07-19 11:21:04.737 [event]-[trace] Executing map F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:21:04.737 [event]-[trace] Need to compile... +2022-07-19 11:21:04.737 [lua]-[debug] ********************* on save start ********************* +2022-07-19 11:21:04.738 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:21:04.738 [lua]-[trace] Saving F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:21:04.738 [lua]-[trace] Save version 1.27.0.52240 +2022-07-19 11:21:04.738 [lua]-[trace] mpq_util.update_file. +2022-07-19 11:21:04.740 [lua]-[trace] war3map.j has been extracted from WorldEditTestMap.w3x +2022-07-19 11:21:04.740 [lua]-[trace] Processing file.out +2022-07-19 11:21:04.741 [lua]-[trace] Wave compilation start. +2022-07-19 11:21:04.762 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\1.27a\WarcraftIII\Maps\Test" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-19 11:21:04.912 [lua]-[trace] Template compilation start. +2022-07-19 11:21:04.913 [lua]-[trace] Initializing 'computed.ability2order' +2022-07-19 11:21:04.913 [lua]-[trace] Initializing 'computed.order_list' +2022-07-19 11:21:04.914 [lua]-[trace] Initializing 'computed.order_id' +2022-07-19 11:21:04.915 [lua]-[debug] Template compilation succeeded. +2022-07-19 11:21:04.916 [lua]-[trace] JassHelper compilation start. +2022-07-19 11:21:06.720 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x", returned 0 +2022-07-19 11:21:06.721 [lua]-[debug] Result true +2022-07-19 11:21:06.721 [lua]-[debug] ********************* on save end ********************* +2022-07-19 11:21:06.721 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:21:06.722 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:21:06.722 [lua]-[debug] Testing F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:21:06.722 [lua]-[debug] Testing "F:\1.27a\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:21:06.722 [lua]-[debug] Testing 0 +2022-07-19 11:21:06.781 [lua]-[trace] Executed "F:\1.27a\WarcraftIII\war3.exe" -loadfile "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:21:06.781 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:22:19.457 [event]-[trace] WE is about to compile maps. +2022-07-19 11:22:19.530 [event]-[trace] Executing map F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:19.530 [event]-[trace] Need to compile... +2022-07-19 11:22:19.530 [lua]-[debug] ********************* on save start ********************* +2022-07-19 11:22:19.530 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:22:19.530 [lua]-[trace] Saving F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:19.530 [lua]-[trace] Save version 1.27.0.52240 +2022-07-19 11:22:19.530 [lua]-[trace] mpq_util.update_file. +2022-07-19 11:22:19.532 [lua]-[trace] war3map.j has been extracted from WorldEditTestMap.w3x +2022-07-19 11:22:19.532 [lua]-[trace] Processing file.out +2022-07-19 11:22:19.534 [lua]-[trace] Writing code to file.out +2022-07-19 11:22:19.534 [lua]-[trace] Injecting F:\平台编辑器\jass\japi\YDWEAbilityState.j +2022-07-19 11:22:19.534 [lua]-[trace] Injection completed +2022-07-19 11:22:19.534 [lua]-[trace] Wave compilation start. +2022-07-19 11:22:19.551 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\1.27a\WarcraftIII\Maps\Test" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-19 11:22:19.664 [lua]-[trace] Template compilation start. +2022-07-19 11:22:19.666 [lua]-[debug] Template compilation succeeded. +2022-07-19 11:22:19.667 [lua]-[trace] JassHelper compilation start. +2022-07-19 11:22:21.389 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x", returned 0 +2022-07-19 11:22:21.389 [lua]-[debug] Result true +2022-07-19 11:22:21.389 [lua]-[debug] ********************* on save end ********************* +2022-07-19 11:22:21.389 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:22:21.390 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:22:21.390 [lua]-[debug] Testing F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:21.390 [lua]-[debug] Testing "F:\1.27a\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:21.390 [lua]-[debug] Testing 0 +2022-07-19 11:22:21.444 [lua]-[trace] Executed "F:\1.27a\WarcraftIII\war3.exe" -loadfile "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:22:21.444 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:22:49. 58 [event]-[trace] WE is about to compile maps. +2022-07-19 11:22:49.123 [event]-[trace] Executing map F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:49.123 [event]-[trace] Need to compile... +2022-07-19 11:22:49.123 [lua]-[debug] ********************* on save start ********************* +2022-07-19 11:22:49.124 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:22:49.124 [lua]-[trace] Saving F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:49.124 [lua]-[trace] Save version 1.27.0.52240 +2022-07-19 11:22:49.124 [lua]-[trace] mpq_util.update_file. +2022-07-19 11:22:49.125 [lua]-[trace] war3map.j has been extracted from WorldEditTestMap.w3x +2022-07-19 11:22:49.125 [lua]-[trace] Processing file.out +2022-07-19 11:22:49.127 [lua]-[trace] Wave compilation start. +2022-07-19 11:22:49.143 [lua]-[trace] Executed "F:\平台编辑器\plugin\wave\Wave.exe" --autooutput --sysinclude="F:\平台编辑器\plugin\wave\include" --sysinclude="F:\平台编辑器\plugin" --include="F:\1.27a\WarcraftIII\Maps\Test" --include="F:\平台编辑器\jass" --define=WARCRAFT_VERSION=127 --define=YDWE_VERSION_STRING=\"0.0.0.0\" --define=SCRIPT_INJECTION=1 --forceinclude=WaveForce.i --extended --c99 --preserve=2 --line=0 "F:\平台编辑器\logs\file.out". +2022-07-19 11:22:49.250 [lua]-[trace] Template compilation start. +2022-07-19 11:22:49.252 [lua]-[debug] Template compilation succeeded. +2022-07-19 11:22:49.253 [lua]-[trace] JassHelper compilation start. +2022-07-19 11:22:50.952 [lua]-[trace] Executed "F:\平台编辑器\plugin\jasshelper\jasshelper.exe" --nooptimize "F:\平台编辑器\plugin\jasshelper\common.j" "F:\平台编辑器\plugin\jasshelper\blizzard.j" "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x", returned 0 +2022-07-19 11:22:50.953 [lua]-[debug] Result true +2022-07-19 11:22:50.953 [lua]-[debug] ********************* on save end ********************* +2022-07-19 11:22:50.953 [lua]-[debug] ********************* on test start ********************* +2022-07-19 11:22:50.953 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-19 11:22:50.953 [lua]-[debug] Testing F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:50.954 [lua]-[debug] Testing "F:\1.27a\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-19 11:22:50.954 [lua]-[debug] Testing 0 +2022-07-19 11:22:51. 10 [lua]-[trace] Executed "F:\1.27a\WarcraftIII\war3.exe" -loadfile "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-19 11:22:51. 10 [lua]-[debug] ********************* on test end ********************* +2022-07-19 11:25:34.464 [lua]-[debug] ********************* on exit start ********************* +2022-07-19 11:25:34.464 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-19 11:25:34.464 [inject]-[debug] IAT hook cleanup started. +2022-07-19 11:25:34.464 [inject]-[trace] WE IAT hook cleaned. +2022-07-19 11:25:34.464 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-19 11:25:34.464 [inject]-[debug] IAT hook cleanup completed. +2022-07-19 11:25:34.464 [inject]-[debug] Inline hook uninstallation begins! +2022-07-19 11:25:34.464 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-19 11:25:34.464 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-19 11:25:34.464 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-19 11:25:34.464 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-19 11:25:34.464 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-19 11:25:34.464 [inject]-[debug] Inline hook uninstallation finished! +2022-07-19 11:25:34.464 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-19 11:25:34.464 [lua]-[trace] Unload plugin YDTrigger. +2022-07-19 11:25:34.465 [lua]-[trace] Unload plugin YDClient. +2022-07-19 11:25:34.465 [lua]-[trace] Unload plugin Tesh. +2022-07-19 11:25:34.472 [lua]-[debug] ********************* on exit end ********************* +2022-07-19 11:25:34.472 [event]-[info ] Main program exit. +2022-07-19 11:25:34.734 [root]-[info ] Script engine has been shut down. +2022-07-20 16:02:36.716 [root]-[info ] ------------------------------------------------------ +2022-07-20 16:02:36.719 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 16:02:36.719 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 16:02:36.719 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 16:02:36.721 [root]-[debug] Initialize script engine successfully. +2022-07-20 16:02:36.721 [root]-[info ] Script engine startup complete. +2022-07-20 16:02:36.721 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 16:02:36.722 [lua]-[trace] Initializing 'sys' +2022-07-20 16:02:36.724 [lua]-[trace] Initializing 'filesystem' +2022-07-20 16:02:36.726 [lua]-[trace] Initializing 'gui' +2022-07-20 16:02:36.727 [lua]-[trace] Initializing 'util' +2022-07-20 16:02:36.728 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 16:02:36.728 [lua]-[trace] Initializing 'ffi' +2022-07-20 16:02:36.730 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 16:02:36.730 [lua]-[trace] Initializing 'event' +2022-07-20 16:02:36.733 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 16:02:36.735 [lua]-[trace] Initializing 'registry' +2022-07-20 16:02:36.737 [lua]-[trace] Initializing 'version' +2022-07-20 16:02:36.737 [lua]-[trace] Initializing 'localization' +2022-07-20 16:02:36.738 [lua]-[trace] Initializing 'i18n' +2022-07-20 16:02:36.741 [lua]-[trace] Initializing 'config' +2022-07-20 16:02:36.742 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:02:36.742 [lua]-[trace] Initializing 'plugin' +2022-07-20 16:02:36.743 [lua]-[trace] Initializing 'uiloader' +2022-07-20 16:02:36.744 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 16:02:36.744 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 16:02:36.744 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 16:02:36.745 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 16:02:36.746 [lua]-[trace] Initializing 'lni-c' +2022-07-20 16:02:36.748 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 16:02:36.749 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 16:02:36.749 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 16:02:36.750 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 16:02:36.752 [lua]-[trace] Initializing 'check_object' +2022-07-20 16:02:36.753 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 16:02:36.754 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 16:02:36.754 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 16:02:36.755 [event]-[trace] RegisterEvent id: 7 +2022-07-20 16:02:36.756 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 16:02:36.757 [event]-[trace] RegisterEvent id: 5 +2022-07-20 16:02:36.757 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 16:02:36.758 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 16:02:36.760 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 16:02:36.761 [lua]-[trace] Initializing 'compile.template' +2022-07-20 16:02:36.761 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 16:02:36.762 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 16:02:36.763 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 16:02:36.763 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 16:02:36.764 [lua]-[trace] Initializing 'compile.native' +2022-07-20 16:02:36.765 [event]-[trace] RegisterEvent id: 3 +2022-07-20 16:02:36.765 [event]-[trace] RegisterEvent id: 2 +2022-07-20 16:02:36.765 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 16:02:36.766 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 16:02:36.767 [lua]-[trace] Initializing 'utility' +2022-07-20 16:02:36.767 [lua]-[trace] Initializing 'mapdump' +2022-07-20 16:02:36.768 [event]-[trace] RegisterEvent id: 4 +2022-07-20 16:02:36.768 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 16:02:36.768 [event]-[trace] RegisterEvent id: 0 +2022-07-20 16:02:36.768 [event]-[trace] RegisterEvent id: 1 +2022-07-20 16:02:36.768 [event]-[trace] RegisterEvent id: 6 +2022-07-20 16:02:36.768 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 16:02:36.947 [event]-[trace] RegisterEvent id: 8 +2022-07-20 16:02:36.947 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 16:02:36.948 [event]-[trace] RegisterEvent id: 9 +2022-07-20 16:02:36.948 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 16:02:36.952 [event]-[info ] Entering main program. +2022-07-20 16:02:36.952 [event]-[debug] Command line: +2022-07-20 16:02:36.956 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 16:02:36.957 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 16:02:36.957 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 16:02:36.958 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:02:36.958 [lua]-[trace] check_conflicting_ui +2022-07-20 16:02:36.958 [lua]-[trace] check_conflicting_units +2022-07-20 16:02:36.959 [lua]-[trace] clear_potential_conflicting +2022-07-20 16:02:36.959 [lua]-[trace] check_war3_version +2022-07-20 16:02:36.966 [lua]-[error] Cannot find war3.mpq +2022-07-20 16:02:36.969 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 16:02:37. 20 [lua]-[debug] Tesh loaded successfully. +2022-07-20 16:02:37. 36 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 16:02:37. 38 [lua]-[debug] YDClient loaded successfully. +2022-07-20 16:02:37. 39 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 16:02:37. 40 [lua]-[warn ] failed: disable +2022-07-20 16:02:37. 41 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 16:02:37. 42 [lua]-[warn ] failed: disable +2022-07-20 16:02:37. 42 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 16:02:37. 43 [lua]-[warn ] failed: disable +2022-07-20 16:02:37. 43 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 16:02:37. 94 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 16:02:37. 96 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 16:02:37. 99 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 16:02:37. 99 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 16:02:37.101 [inject]-[debug] Start installing inline hooks. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 16:02:37.102 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 16:02:37.102 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 16:02:37.102 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 16:02:37.102 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 16:02:37.102 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 16:02:37.102 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 16:02:37.102 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 16:02:37.102 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 16:02:37.102 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 16:02:37.102 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 16:02:37.102 [inject]-[debug] Installing inline hooks complete. +2022-07-20 16:02:37.102 [inject]-[debug] IAT hook initialization started. +2022-07-20 16:02:37.102 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 16:02:37.102 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 16:02:37.102 [inject]-[debug] IAT hook initialization completed. +2022-07-20 16:02:37.102 [inject]-[debug] Patches initialization started. +2022-07-20 16:02:37.102 [inject]-[trace] Installing syntax check patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 16:02:37.102 [inject]-[trace] Installing auto disable patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 16:02:37.102 [inject]-[trace] Installing enable trigger check patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 16:02:37.102 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 16:02:37.102 [inject]-[trace] Installing doodad limit patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 16:02:37.102 [inject]-[trace] Installing unit/item limit patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 16:02:37.102 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 16:02:37.102 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 16:02:37.103 [inject]-[trace] Installing attack table patch +2022-07-20 16:02:37.103 [inject]-[debug] Patches initialization completed. +2022-07-20 16:02:37.103 [inject]-[info ] YDWE startup complete. +2022-07-20 16:02:37.103 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 16:02:37.104 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 16:02:37.104 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 16:02:37.104 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 16:02:37.120 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 16:02:37.123 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 16:02:37.126 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 16:02:37.126 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 16:02:37.126 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 16:02:37.127 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 16:02:37.127 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 16:02:37.134 [lua]-[trace] Scanned file: 99 +2022-07-20 16:02:37.137 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 16:02:37.587 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:02:37.611 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:02:37.778 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:02:37.923 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 16:02:37.925 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 16:02:37.925 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 16:02:37.926 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 16:02:37.928 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 16:02:40.465 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 16:02:40.465 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-20 16:04:00.371 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-20 16:04:00.371 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-20 16:04:00.371 [lua]-[info ] OpenPathAsArchive Melee_V1 +2022-07-20 16:04:00.599 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:04:00.628 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:04:00.765 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:08:28. 76 [lua]-[trace] Executed "F:\平台编辑器\bin\YDWEConfig.exe". +2022-07-20 16:08:31.376 [root]-[info ] ------------------------------------------------------ +2022-07-20 16:08:31.380 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 16:08:31.380 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 16:08:31.380 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 16:08:31.380 [root]-[debug] Initialize script engine successfully. +2022-07-20 16:08:31.380 [root]-[info ] Script engine startup complete. +2022-07-20 16:08:31.380 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 16:08:31.381 [lua]-[trace] Initializing 'sys' +2022-07-20 16:08:31.382 [lua]-[trace] Initializing 'filesystem' +2022-07-20 16:08:31.383 [lua]-[trace] Initializing 'gui' +2022-07-20 16:08:31.383 [lua]-[trace] Initializing 'util' +2022-07-20 16:08:31.384 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 16:08:31.384 [lua]-[trace] Initializing 'ffi' +2022-07-20 16:08:31.385 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 16:08:31.385 [lua]-[trace] Initializing 'event' +2022-07-20 16:08:31.387 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 16:08:31.390 [lua]-[trace] Initializing 'registry' +2022-07-20 16:08:31.391 [lua]-[trace] Initializing 'version' +2022-07-20 16:08:31.391 [lua]-[trace] Initializing 'localization' +2022-07-20 16:08:31.392 [lua]-[trace] Initializing 'i18n' +2022-07-20 16:08:31.393 [lua]-[trace] Initializing 'config' +2022-07-20 16:08:31.395 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:08:31.395 [lua]-[trace] Initializing 'plugin' +2022-07-20 16:08:31.395 [lua]-[trace] Initializing 'uiloader' +2022-07-20 16:08:31.395 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 16:08:31.396 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 16:08:31.396 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 16:08:31.396 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 16:08:31.397 [lua]-[trace] Initializing 'lni-c' +2022-07-20 16:08:31.398 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 16:08:31.399 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 16:08:31.399 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 16:08:31.400 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 16:08:31.401 [lua]-[trace] Initializing 'check_object' +2022-07-20 16:08:31.402 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 16:08:31.402 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 16:08:31.403 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 16:08:31.403 [event]-[trace] RegisterEvent id: 7 +2022-07-20 16:08:31.403 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 16:08:31.404 [event]-[trace] RegisterEvent id: 5 +2022-07-20 16:08:31.404 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 16:08:31.404 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 16:08:31.404 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 16:08:31.405 [lua]-[trace] Initializing 'compile.template' +2022-07-20 16:08:31.405 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 16:08:31.405 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 16:08:31.406 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 16:08:31.406 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 16:08:31.407 [lua]-[trace] Initializing 'compile.native' +2022-07-20 16:08:31.408 [event]-[trace] RegisterEvent id: 3 +2022-07-20 16:08:31.408 [event]-[trace] RegisterEvent id: 2 +2022-07-20 16:08:31.408 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 16:08:31.409 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 16:08:31.410 [lua]-[trace] Initializing 'utility' +2022-07-20 16:08:31.410 [lua]-[trace] Initializing 'mapdump' +2022-07-20 16:08:31.411 [event]-[trace] RegisterEvent id: 4 +2022-07-20 16:08:31.411 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 16:08:31.411 [event]-[trace] RegisterEvent id: 0 +2022-07-20 16:08:31.411 [event]-[trace] RegisterEvent id: 1 +2022-07-20 16:08:31.411 [event]-[trace] RegisterEvent id: 6 +2022-07-20 16:08:31.411 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 16:08:31.632 [event]-[trace] RegisterEvent id: 8 +2022-07-20 16:08:31.632 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 16:08:31.633 [event]-[trace] RegisterEvent id: 9 +2022-07-20 16:08:31.633 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 16:08:31.639 [event]-[info ] Entering main program. +2022-07-20 16:08:31.639 [event]-[debug] Command line: -loadfile "D:\Program Files (x86)\POPO Files\testģ123.w3x" +2022-07-20 16:08:31.643 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 16:08:31.644 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 16:08:31.644 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 16:08:31.645 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:08:31.645 [lua]-[trace] check_conflicting_ui +2022-07-20 16:08:31.645 [lua]-[trace] check_conflicting_units +2022-07-20 16:08:31.645 [lua]-[trace] clear_potential_conflicting +2022-07-20 16:08:31.645 [lua]-[trace] check_war3_version +2022-07-20 16:08:31.649 [lua]-[error] Cannot find war3.mpq +2022-07-20 16:08:31.652 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 16:08:31.698 [lua]-[debug] Tesh loaded successfully. +2022-07-20 16:08:31.712 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 16:08:31.714 [lua]-[debug] YDClient loaded successfully. +2022-07-20 16:08:31.715 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 16:08:31.716 [lua]-[warn ] failed: disable +2022-07-20 16:08:31.716 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 16:08:31.717 [lua]-[warn ] failed: disable +2022-07-20 16:08:31.717 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 16:08:31.718 [lua]-[warn ] failed: disable +2022-07-20 16:08:31.718 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 16:08:31.795 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 16:08:31.798 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 16:08:31.802 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 16:08:31.802 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 16:08:31.804 [inject]-[debug] Start installing inline hooks. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 16:08:31.804 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 16:08:31.804 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 16:08:31.804 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 16:08:31.804 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 16:08:31.804 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 16:08:31.804 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 16:08:31.804 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 16:08:31.804 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 16:08:31.804 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 16:08:31.804 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 16:08:31.805 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 16:08:31.805 [inject]-[debug] Installing inline hooks complete. +2022-07-20 16:08:31.805 [inject]-[debug] IAT hook initialization started. +2022-07-20 16:08:31.805 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 16:08:31.805 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 16:08:31.805 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 16:08:31.805 [inject]-[debug] IAT hook initialization completed. +2022-07-20 16:08:31.805 [inject]-[debug] Patches initialization started. +2022-07-20 16:08:31.805 [inject]-[trace] Installing syntax check patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing auto disable patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing enable trigger check patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 16:08:31.805 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing doodad limit patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing unit/item limit patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 16:08:31.805 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 16:08:31.805 [inject]-[trace] Installing attack table patch +2022-07-20 16:08:31.805 [inject]-[debug] Patches initialization completed. +2022-07-20 16:08:31.805 [inject]-[info ] YDWE startup complete. +2022-07-20 16:08:31.805 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 16:08:31.806 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 16:08:31.806 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 16:08:31.806 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 16:08:31.823 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 16:08:31.825 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 16:08:31.827 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 16:08:31.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 16:08:31.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 16:08:31.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 16:08:31.828 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 16:08:31.838 [lua]-[trace] Scanned file: 99 +2022-07-20 16:08:31.842 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 16:08:32.606 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:08:32.654 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:08:32.922 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:08:33.153 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 16:08:33.154 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 16:08:33.155 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 16:08:33.156 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 16:08:33.158 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 16:08:35.653 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 16:08:35.655 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-20 16:08:46. 83 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:08:46. 83 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:08:46. 83 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:08:46.328 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:08:46.351 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:08:46.510 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:09:09.386 [event]-[trace] Executing map F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-20 16:09:09.386 [event]-[trace] No need to compile. +2022-07-20 16:09:09.386 [lua]-[debug] ********************* on test start ********************* +2022-07-20 16:09:09.386 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:09:09.386 [lua]-[debug] Testing F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x +2022-07-20 16:09:09.386 [lua]-[debug] Testing "F:\1.27a\WarcraftIII\War3.exe" -loadfile Maps\Test\WorldEditTestMap.w3x +2022-07-20 16:09:09.386 [lua]-[debug] Testing 0 +2022-07-20 16:09:09.464 [lua]-[trace] Executed "F:\1.27a\WarcraftIII\war3.exe" -loadfile "F:\1.27a\WarcraftIII\Maps\Test\WorldEditTestMap.w3x" -window -ydwe "F:\平台编辑器". +2022-07-20 16:09:09.464 [lua]-[debug] ********************* on test end ********************* +2022-07-20 16:09:59.341 [lua]-[trace] Executed "F:\平台编辑器\bin\YDWEConfig.exe". +2022-07-20 16:10:24.763 [lua]-[trace] Executed "F:\平台编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-07-20 16:13:49.276 [lua]-[debug] ********************* on exit start ********************* +2022-07-20 16:13:49.276 [lua]-[trace] Unload plugin YDTrigger. +2022-07-20 16:13:49.276 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-20 16:13:49.276 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-20 16:13:49.276 [inject]-[debug] IAT hook cleanup started. +2022-07-20 16:13:49.276 [inject]-[trace] WE IAT hook cleaned. +2022-07-20 16:13:49.276 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-20 16:13:49.276 [inject]-[debug] IAT hook cleanup completed. +2022-07-20 16:13:49.276 [inject]-[debug] Inline hook uninstallation begins! +2022-07-20 16:13:49.276 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-20 16:13:49.276 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-20 16:13:49.277 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-20 16:13:49.277 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-20 16:13:49.277 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-20 16:13:49.277 [inject]-[debug] Inline hook uninstallation finished! +2022-07-20 16:13:49.277 [lua]-[trace] Unload plugin YDClient. +2022-07-20 16:13:49.277 [lua]-[trace] Unload plugin Tesh. +2022-07-20 16:13:49.283 [lua]-[debug] ********************* on exit end ********************* +2022-07-20 16:13:49.283 [event]-[info ] Main program exit. +2022-07-20 16:13:49.522 [root]-[info ] Script engine has been shut down. +2022-07-20 16:27:55.217 [lua]-[trace] Executed "F:\平台编辑器\bin\YDWEConfig.exe" -launchwar3. +2022-07-20 16:54:29.521 [root]-[info ] ------------------------------------------------------ +2022-07-20 16:54:29.524 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 16:54:29.524 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 16:54:29.524 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 16:54:29.525 [root]-[debug] Initialize script engine successfully. +2022-07-20 16:54:29.525 [root]-[info ] Script engine startup complete. +2022-07-20 16:54:29.525 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 16:54:29.525 [lua]-[trace] Initializing 'sys' +2022-07-20 16:54:29.526 [lua]-[trace] Initializing 'filesystem' +2022-07-20 16:54:29.527 [lua]-[trace] Initializing 'gui' +2022-07-20 16:54:29.527 [lua]-[trace] Initializing 'util' +2022-07-20 16:54:29.528 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 16:54:29.529 [lua]-[trace] Initializing 'ffi' +2022-07-20 16:54:29.530 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 16:54:29.530 [lua]-[trace] Initializing 'event' +2022-07-20 16:54:29.533 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 16:54:29.535 [lua]-[trace] Initializing 'registry' +2022-07-20 16:54:29.536 [lua]-[trace] Initializing 'version' +2022-07-20 16:54:29.536 [lua]-[trace] Initializing 'localization' +2022-07-20 16:54:29.537 [lua]-[trace] Initializing 'i18n' +2022-07-20 16:54:29.538 [lua]-[trace] Initializing 'config' +2022-07-20 16:54:29.538 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:54:29.539 [lua]-[trace] Initializing 'plugin' +2022-07-20 16:54:29.539 [lua]-[trace] Initializing 'uiloader' +2022-07-20 16:54:29.539 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 16:54:29.540 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 16:54:29.540 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 16:54:29.541 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 16:54:29.541 [lua]-[trace] Initializing 'lni-c' +2022-07-20 16:54:29.542 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 16:54:29.542 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 16:54:29.543 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 16:54:29.543 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 16:54:29.545 [lua]-[trace] Initializing 'check_object' +2022-07-20 16:54:29.546 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 16:54:29.546 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 16:54:29.546 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 16:54:29.546 [event]-[trace] RegisterEvent id: 7 +2022-07-20 16:54:29.546 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 16:54:29.547 [event]-[trace] RegisterEvent id: 5 +2022-07-20 16:54:29.547 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 16:54:29.548 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 16:54:29.548 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 16:54:29.549 [lua]-[trace] Initializing 'compile.template' +2022-07-20 16:54:29.549 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 16:54:29.550 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 16:54:29.550 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 16:54:29.551 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 16:54:29.552 [lua]-[trace] Initializing 'compile.native' +2022-07-20 16:54:29.552 [event]-[trace] RegisterEvent id: 3 +2022-07-20 16:54:29.552 [event]-[trace] RegisterEvent id: 2 +2022-07-20 16:54:29.552 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 16:54:29.552 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 16:54:29.553 [lua]-[trace] Initializing 'utility' +2022-07-20 16:54:29.554 [lua]-[trace] Initializing 'mapdump' +2022-07-20 16:54:29.554 [event]-[trace] RegisterEvent id: 4 +2022-07-20 16:54:29.554 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 16:54:29.555 [event]-[trace] RegisterEvent id: 0 +2022-07-20 16:54:29.555 [event]-[trace] RegisterEvent id: 1 +2022-07-20 16:54:29.555 [event]-[trace] RegisterEvent id: 6 +2022-07-20 16:54:29.555 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 16:54:29.785 [event]-[trace] RegisterEvent id: 8 +2022-07-20 16:54:29.786 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 16:54:29.786 [event]-[trace] RegisterEvent id: 9 +2022-07-20 16:54:29.786 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 16:54:29.790 [event]-[info ] Entering main program. +2022-07-20 16:54:29.790 [event]-[debug] Command line: -loadfile "D:\Program Files (x86)\POPO Files\war31.27_ģʽ2.w3x" +2022-07-20 16:54:29.797 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 16:54:29.798 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 16:54:29.798 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 16:54:29.799 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 16:54:29.799 [lua]-[trace] check_conflicting_ui +2022-07-20 16:54:29.800 [lua]-[trace] check_conflicting_units +2022-07-20 16:54:29.800 [lua]-[trace] clear_potential_conflicting +2022-07-20 16:54:29.800 [lua]-[trace] check_war3_version +2022-07-20 16:54:29.804 [lua]-[error] Cannot find war3.mpq +2022-07-20 16:54:29.807 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 16:54:29.859 [lua]-[debug] Tesh loaded successfully. +2022-07-20 16:54:29.875 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 16:54:29.877 [lua]-[debug] YDClient loaded successfully. +2022-07-20 16:54:29.877 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 16:54:29.878 [lua]-[warn ] failed: disable +2022-07-20 16:54:29.878 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 16:54:29.879 [lua]-[warn ] failed: disable +2022-07-20 16:54:29.880 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 16:54:29.880 [lua]-[warn ] failed: disable +2022-07-20 16:54:29.880 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 16:54:29.958 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 16:54:29.961 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 16:54:29.964 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 16:54:29.964 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 16:54:29.965 [inject]-[debug] Start installing inline hooks. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 16:54:29.966 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 16:54:29.966 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 16:54:29.966 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 16:54:29.966 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 16:54:29.966 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 16:54:29.966 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 16:54:29.966 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 16:54:29.966 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 16:54:29.966 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 16:54:29.966 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 16:54:29.966 [inject]-[debug] Installing inline hooks complete. +2022-07-20 16:54:29.966 [inject]-[debug] IAT hook initialization started. +2022-07-20 16:54:29.966 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 16:54:29.966 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 16:54:29.967 [inject]-[debug] IAT hook initialization completed. +2022-07-20 16:54:29.967 [inject]-[debug] Patches initialization started. +2022-07-20 16:54:29.967 [inject]-[trace] Installing syntax check patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing auto disable patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing enable trigger check patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 16:54:29.967 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing doodad limit patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing unit/item limit patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 16:54:29.967 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 16:54:29.967 [inject]-[trace] Installing attack table patch +2022-07-20 16:54:29.967 [inject]-[debug] Patches initialization completed. +2022-07-20 16:54:29.967 [inject]-[info ] YDWE startup complete. +2022-07-20 16:54:29.967 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 16:54:29.968 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 16:54:29.968 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 16:54:29.969 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 16:54:29.993 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 16:54:29.995 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 16:54:30. 0 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 16:54:30. 1 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 16:54:30. 2 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 16:54:30. 2 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 16:54:30. 2 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 16:54:30. 15 [lua]-[trace] Scanned file: 99 +2022-07-20 16:54:30. 23 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 16:54:30.777 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:54:30.796 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:54:30.942 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:54:31. 46 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 16:54:31. 48 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 16:54:31. 49 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 16:54:31. 50 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 16:54:31. 51 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 16:54:33.430 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 16:54:33.432 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-20 16:54:43.191 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:54:43.191 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:54:43.191 [lua]-[info ] OpenPathAsArchive Custom_V1 +2022-07-20 16:54:43.450 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 16:54:43.474 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 16:54:43.635 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 16:56:35.132 [lua]-[debug] ********************* on exit start ********************* +2022-07-20 16:56:35.132 [lua]-[trace] Unload plugin Tesh. +2022-07-20 16:56:35.136 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-20 16:56:35.136 [inject]-[debug] IAT hook cleanup started. +2022-07-20 16:56:35.136 [inject]-[trace] WE IAT hook cleaned. +2022-07-20 16:56:35.136 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-20 16:56:35.136 [inject]-[debug] IAT hook cleanup completed. +2022-07-20 16:56:35.136 [inject]-[debug] Inline hook uninstallation begins! +2022-07-20 16:56:35.136 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-20 16:56:35.137 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-20 16:56:35.137 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-20 16:56:35.137 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-20 16:56:35.137 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-20 16:56:35.137 [inject]-[debug] Inline hook uninstallation finished! +2022-07-20 16:56:35.137 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-20 16:56:35.137 [lua]-[trace] Unload plugin YDTrigger. +2022-07-20 16:56:35.137 [lua]-[trace] Unload plugin YDClient. +2022-07-20 16:56:35.137 [lua]-[debug] ********************* on exit end ********************* +2022-07-20 16:56:35.137 [event]-[info ] Main program exit. +2022-07-20 16:56:35.357 [root]-[info ] Script engine has been shut down. +2022-07-20 16:56:53. 32 [lua]-[debug] ********************* on exit start ********************* +2022-07-20 16:56:53. 32 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-20 16:56:53. 32 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-20 16:56:53. 32 [inject]-[debug] IAT hook cleanup started. +2022-07-20 16:56:53. 32 [inject]-[trace] WE IAT hook cleaned. +2022-07-20 16:56:53. 32 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-20 16:56:53. 32 [inject]-[debug] IAT hook cleanup completed. +2022-07-20 16:56:53. 32 [inject]-[debug] Inline hook uninstallation begins! +2022-07-20 16:56:53. 32 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-20 16:56:53. 33 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-20 16:56:53. 33 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-20 16:56:53. 33 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-20 16:56:53. 33 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-20 16:56:53. 33 [inject]-[debug] Inline hook uninstallation finished! +2022-07-20 16:56:53. 33 [lua]-[trace] Unload plugin YDTrigger. +2022-07-20 16:56:53. 33 [lua]-[trace] Unload plugin YDClient. +2022-07-20 16:56:53. 33 [lua]-[trace] Unload plugin Tesh. +2022-07-20 16:56:53. 40 [lua]-[debug] ********************* on exit end ********************* +2022-07-20 16:56:53. 41 [event]-[info ] Main program exit. +2022-07-20 16:56:53.273 [root]-[info ] Script engine has been shut down. +2022-07-20 17:01:15. 98 [root]-[info ] ------------------------------------------------------ +2022-07-20 17:01:15.101 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 17:01:15.101 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 17:01:15.101 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 17:01:15.102 [root]-[debug] Initialize script engine successfully. +2022-07-20 17:01:15.102 [root]-[info ] Script engine startup complete. +2022-07-20 17:01:15.102 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 17:01:15.102 [lua]-[trace] Initializing 'sys' +2022-07-20 17:01:15.103 [lua]-[trace] Initializing 'filesystem' +2022-07-20 17:01:15.104 [lua]-[trace] Initializing 'gui' +2022-07-20 17:01:15.105 [lua]-[trace] Initializing 'util' +2022-07-20 17:01:15.105 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 17:01:15.105 [lua]-[trace] Initializing 'ffi' +2022-07-20 17:01:15.106 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 17:01:15.106 [lua]-[trace] Initializing 'event' +2022-07-20 17:01:15.108 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 17:01:15.109 [lua]-[trace] Initializing 'registry' +2022-07-20 17:01:15.110 [lua]-[trace] Initializing 'version' +2022-07-20 17:01:15.110 [lua]-[trace] Initializing 'localization' +2022-07-20 17:01:15.110 [lua]-[trace] Initializing 'i18n' +2022-07-20 17:01:15.112 [lua]-[trace] Initializing 'config' +2022-07-20 17:01:15.113 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 17:01:15.113 [lua]-[trace] Initializing 'plugin' +2022-07-20 17:01:15.113 [lua]-[trace] Initializing 'uiloader' +2022-07-20 17:01:15.114 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 17:01:15.115 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 17:01:15.115 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 17:01:15.117 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 17:01:15.117 [lua]-[trace] Initializing 'lni-c' +2022-07-20 17:01:15.118 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 17:01:15.119 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 17:01:15.120 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 17:01:15.120 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 17:01:15.122 [lua]-[trace] Initializing 'check_object' +2022-07-20 17:01:15.123 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 17:01:15.124 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 17:01:15.124 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 17:01:15.125 [event]-[trace] RegisterEvent id: 7 +2022-07-20 17:01:15.125 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 17:01:15.126 [event]-[trace] RegisterEvent id: 5 +2022-07-20 17:01:15.126 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 17:01:15.126 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 17:01:15.127 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 17:01:15.127 [lua]-[trace] Initializing 'compile.template' +2022-07-20 17:01:15.127 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 17:01:15.128 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 17:01:15.128 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 17:01:15.128 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 17:01:15.129 [lua]-[trace] Initializing 'compile.native' +2022-07-20 17:01:15.130 [event]-[trace] RegisterEvent id: 3 +2022-07-20 17:01:15.130 [event]-[trace] RegisterEvent id: 2 +2022-07-20 17:01:15.130 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 17:01:15.130 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 17:01:15.131 [lua]-[trace] Initializing 'utility' +2022-07-20 17:01:15.132 [lua]-[trace] Initializing 'mapdump' +2022-07-20 17:01:15.132 [event]-[trace] RegisterEvent id: 4 +2022-07-20 17:01:15.132 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 17:01:15.133 [event]-[trace] RegisterEvent id: 0 +2022-07-20 17:01:15.133 [event]-[trace] RegisterEvent id: 1 +2022-07-20 17:01:15.133 [event]-[trace] RegisterEvent id: 6 +2022-07-20 17:01:15.133 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 17:01:15.333 [event]-[trace] RegisterEvent id: 8 +2022-07-20 17:01:15.333 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 17:01:15.334 [event]-[trace] RegisterEvent id: 9 +2022-07-20 17:01:15.334 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 17:01:15.339 [event]-[info ] Entering main program. +2022-07-20 17:01:15.339 [event]-[debug] Command line: +2022-07-20 17:01:15.343 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 17:01:15.344 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 17:01:15.344 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 17:01:15.344 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 17:01:15.344 [lua]-[trace] check_conflicting_ui +2022-07-20 17:01:15.344 [lua]-[trace] check_conflicting_units +2022-07-20 17:01:15.344 [lua]-[trace] clear_potential_conflicting +2022-07-20 17:01:15.345 [lua]-[trace] check_war3_version +2022-07-20 17:01:15.349 [lua]-[error] Cannot find war3.mpq +2022-07-20 17:01:15.352 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 17:01:15.394 [lua]-[debug] Tesh loaded successfully. +2022-07-20 17:01:15.409 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 17:01:15.417 [lua]-[debug] YDClient loaded successfully. +2022-07-20 17:01:15.418 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 17:01:15.418 [lua]-[warn ] failed: disable +2022-07-20 17:01:15.419 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 17:01:15.419 [lua]-[warn ] failed: disable +2022-07-20 17:01:15.420 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 17:01:15.420 [lua]-[warn ] failed: disable +2022-07-20 17:01:15.420 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 17:01:15.471 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 17:01:15.473 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 17:01:15.475 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 17:01:15.475 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 17:01:15.477 [inject]-[debug] Start installing inline hooks. +2022-07-20 17:01:15.477 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 17:01:15.477 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 17:01:15.477 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 17:01:15.477 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 17:01:15.478 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 17:01:15.478 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 17:01:15.478 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 17:01:15.478 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 17:01:15.478 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 17:01:15.478 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 17:01:15.478 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 17:01:15.478 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 17:01:15.478 [inject]-[debug] Installing inline hooks complete. +2022-07-20 17:01:15.478 [inject]-[debug] IAT hook initialization started. +2022-07-20 17:01:15.478 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 17:01:15.478 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 17:01:15.478 [inject]-[debug] IAT hook initialization completed. +2022-07-20 17:01:15.478 [inject]-[debug] Patches initialization started. +2022-07-20 17:01:15.478 [inject]-[trace] Installing syntax check patch +2022-07-20 17:01:15.478 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 17:01:15.478 [inject]-[trace] Installing auto disable patch +2022-07-20 17:01:15.478 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 17:01:15.478 [inject]-[trace] Installing enable trigger check patch +2022-07-20 17:01:15.478 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 17:01:15.478 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 17:01:15.479 [inject]-[trace] Installing doodad limit patch +2022-07-20 17:01:15.479 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 17:01:15.479 [inject]-[trace] Installing unit/item limit patch +2022-07-20 17:01:15.479 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 17:01:15.479 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 17:01:15.479 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 17:01:15.479 [inject]-[trace] Installing attack table patch +2022-07-20 17:01:15.479 [inject]-[debug] Patches initialization completed. +2022-07-20 17:01:15.479 [inject]-[info ] YDWE startup complete. +2022-07-20 17:01:15.479 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 17:01:15.480 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 17:01:15.480 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 17:01:15.481 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 17:01:15.496 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 17:01:15.499 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 17:01:15.501 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 17:01:15.502 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 17:01:15.502 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 17:01:15.502 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 17:01:15.502 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 17:01:15.510 [lua]-[trace] Scanned file: 99 +2022-07-20 17:01:15.514 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 17:01:16. 97 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 17:01:16.116 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 17:01:16.258 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 17:01:16.357 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 17:01:16.360 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 17:01:16.361 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 17:01:16.361 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 17:01:16.363 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 17:01:18.522 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 17:01:18.523 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-20 17:01:30.892 [lua]-[debug] ********************* on exit start ********************* +2022-07-20 17:01:30.892 [lua]-[trace] Unload plugin YDClient. +2022-07-20 17:01:30.892 [lua]-[trace] Unload plugin YDTaskbarSupport. +2022-07-20 17:01:30.892 [lua]-[trace] Unload plugin YDWeHelper. +2022-07-20 17:01:30.892 [inject]-[debug] IAT hook cleanup started. +2022-07-20 17:01:30.892 [inject]-[trace] WE IAT hook cleaned. +2022-07-20 17:01:30.892 [inject]-[trace] Storm.dll IAT hook cleaned. +2022-07-20 17:01:30.892 [inject]-[debug] IAT hook cleanup completed. +2022-07-20 17:01:30.892 [inject]-[debug] Inline hook uninstallation begins! +2022-07-20 17:01:30.892 [inject]-[trace] WeSetWindowCaption hook uninstallation succeeded. +2022-07-20 17:01:30.892 [inject]-[trace] WeTriggerNameInputCharCheck hook uninstallation succeeded. +2022-07-20 17:01:30.893 [inject]-[trace] WeTriggerNameCheck hook uninstallation succeeded. +2022-07-20 17:01:30.893 [inject]-[trace] WeVerifyMapCellsLimit hook uninstallation succeeded. +2022-07-20 17:01:30.893 [inject]-[trace] WeGetSystemParameter hook uninstallation succeeded. +2022-07-20 17:01:30.893 [inject]-[debug] Inline hook uninstallation finished! +2022-07-20 17:01:30.893 [lua]-[trace] Unload plugin YDTrigger. +2022-07-20 17:01:30.893 [lua]-[trace] Unload plugin Tesh. +2022-07-20 17:01:30.894 [lua]-[debug] ********************* on exit end ********************* +2022-07-20 17:01:30.894 [event]-[info ] Main program exit. +2022-07-20 17:01:31.109 [root]-[info ] Script engine has been shut down. +2022-07-20 17:39:47.333 [root]-[info ] ------------------------------------------------------ +2022-07-20 17:39:47.337 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 17:39:47.337 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 17:39:47.337 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 17:39:47.337 [root]-[debug] Initialize script engine successfully. +2022-07-20 17:39:47.337 [root]-[info ] Script engine startup complete. +2022-07-20 17:39:47.338 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 17:39:47.338 [lua]-[trace] Initializing 'sys' +2022-07-20 17:39:47.340 [lua]-[trace] Initializing 'filesystem' +2022-07-20 17:39:47.341 [lua]-[trace] Initializing 'gui' +2022-07-20 17:39:47.342 [lua]-[trace] Initializing 'util' +2022-07-20 17:39:47.343 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 17:39:47.344 [lua]-[trace] Initializing 'ffi' +2022-07-20 17:39:47.345 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 17:39:47.345 [lua]-[trace] Initializing 'event' +2022-07-20 17:39:47.347 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 17:39:47.349 [lua]-[trace] Initializing 'registry' +2022-07-20 17:39:47.350 [lua]-[trace] Initializing 'version' +2022-07-20 17:39:47.350 [lua]-[trace] Initializing 'localization' +2022-07-20 17:39:47.351 [lua]-[trace] Initializing 'i18n' +2022-07-20 17:39:47.351 [lua]-[trace] Initializing 'config' +2022-07-20 17:39:47.352 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 17:39:47.352 [lua]-[trace] Initializing 'plugin' +2022-07-20 17:39:47.352 [lua]-[trace] Initializing 'uiloader' +2022-07-20 17:39:47.353 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 17:39:47.353 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 17:39:47.353 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 17:39:47.355 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 17:39:47.355 [lua]-[trace] Initializing 'lni-c' +2022-07-20 17:39:47.356 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 17:39:47.356 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 17:39:47.357 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 17:39:47.357 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 17:39:47.357 [lua]-[trace] Initializing 'check_object' +2022-07-20 17:39:47.359 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 17:39:47.359 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 17:39:47.360 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 17:39:47.360 [event]-[trace] RegisterEvent id: 7 +2022-07-20 17:39:47.361 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 17:39:47.361 [event]-[trace] RegisterEvent id: 5 +2022-07-20 17:39:47.361 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 17:39:47.362 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 17:39:47.362 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 17:39:47.363 [lua]-[trace] Initializing 'compile.template' +2022-07-20 17:39:47.363 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 17:39:47.363 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 17:39:47.364 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 17:39:47.364 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 17:39:47.365 [lua]-[trace] Initializing 'compile.native' +2022-07-20 17:39:47.365 [event]-[trace] RegisterEvent id: 3 +2022-07-20 17:39:47.365 [event]-[trace] RegisterEvent id: 2 +2022-07-20 17:39:47.365 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 17:39:47.366 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 17:39:47.366 [lua]-[trace] Initializing 'utility' +2022-07-20 17:39:47.367 [lua]-[trace] Initializing 'mapdump' +2022-07-20 17:39:47.367 [event]-[trace] RegisterEvent id: 4 +2022-07-20 17:39:47.367 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 17:39:47.367 [event]-[trace] RegisterEvent id: 0 +2022-07-20 17:39:47.367 [event]-[trace] RegisterEvent id: 1 +2022-07-20 17:39:47.367 [event]-[trace] RegisterEvent id: 6 +2022-07-20 17:39:47.367 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 17:39:47.545 [event]-[trace] RegisterEvent id: 8 +2022-07-20 17:39:47.545 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 17:39:47.545 [event]-[trace] RegisterEvent id: 9 +2022-07-20 17:39:47.545 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 17:39:47.551 [event]-[info ] Entering main program. +2022-07-20 17:39:47.551 [event]-[debug] Command line: +2022-07-20 17:39:47.554 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 17:39:47.554 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 17:39:47.554 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 17:39:47.555 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 17:39:47.555 [lua]-[trace] check_conflicting_ui +2022-07-20 17:39:47.555 [lua]-[trace] check_conflicting_units +2022-07-20 17:39:47.555 [lua]-[trace] clear_potential_conflicting +2022-07-20 17:39:47.555 [lua]-[trace] check_war3_version +2022-07-20 17:39:47.558 [lua]-[error] Cannot find war3.mpq +2022-07-20 17:39:47.561 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 17:39:47.596 [lua]-[debug] Tesh loaded successfully. +2022-07-20 17:39:47.607 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 17:39:47.609 [lua]-[debug] YDClient loaded successfully. +2022-07-20 17:39:47.609 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 17:39:47.610 [lua]-[warn ] failed: disable +2022-07-20 17:39:47.611 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 17:39:47.611 [lua]-[warn ] failed: disable +2022-07-20 17:39:47.612 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 17:39:47.612 [lua]-[warn ] failed: disable +2022-07-20 17:39:47.612 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 17:39:47.659 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 17:39:47.661 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 17:39:47.663 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 17:39:47.663 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 17:39:47.665 [inject]-[debug] Start installing inline hooks. +2022-07-20 17:39:47.665 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 17:39:47.665 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 17:39:47.665 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 17:39:47.665 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 17:39:47.665 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 17:39:47.665 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 17:39:47.665 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 17:39:47.665 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 17:39:47.665 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 17:39:47.666 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 17:39:47.666 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 17:39:47.666 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 17:39:47.666 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 17:39:47.666 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 17:39:47.666 [inject]-[debug] Installing inline hooks complete. +2022-07-20 17:39:47.666 [inject]-[debug] IAT hook initialization started. +2022-07-20 17:39:47.666 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 17:39:47.666 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 17:39:47.666 [inject]-[debug] IAT hook initialization completed. +2022-07-20 17:39:47.666 [inject]-[debug] Patches initialization started. +2022-07-20 17:39:47.666 [inject]-[trace] Installing syntax check patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing auto disable patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing enable trigger check patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 17:39:47.666 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing doodad limit patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing unit/item limit patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 17:39:47.666 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 17:39:47.666 [inject]-[trace] Installing attack table patch +2022-07-20 17:39:47.666 [inject]-[debug] Patches initialization completed. +2022-07-20 17:39:47.666 [inject]-[info ] YDWE startup complete. +2022-07-20 17:39:47.666 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 17:39:47.667 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 17:39:47.667 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 17:39:47.667 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 17:39:47.682 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 17:39:47.684 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 17:39:47.685 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 17:39:47.686 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 17:39:47.686 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 17:39:47.686 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 17:39:47.686 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 17:39:47.694 [lua]-[trace] Scanned file: 99 +2022-07-20 17:39:47.697 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 17:39:48.311 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 17:39:48.342 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 17:39:48.509 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 17:39:48.617 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 17:39:48.619 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 17:39:48.619 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 17:39:48.620 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 17:39:48.621 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 17:39:50.588 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 17:39:50.589 [lua]-[debug] ********************* on menuinit end ********************* +2022-07-20 19:35:11. 37 [root]-[info ] ------------------------------------------------------ +2022-07-20 19:35:11. 42 [root]-[info ] YDWE Script engine 1, 31, 8, 1850 started. +2022-07-20 19:35:11. 42 [root]-[info ] Compiled at 10:50:34, Aug 16 2018 +2022-07-20 19:35:11. 42 [root]-[info ] Windows version: 10.0.19041 +2022-07-20 19:35:11. 43 [root]-[debug] Initialize script engine successfully. +2022-07-20 19:35:11. 43 [root]-[info ] Script engine startup complete. +2022-07-20 19:35:11. 44 [lua]-[debug] ********************* ydwe initialize start ********************* +2022-07-20 19:35:11. 44 [lua]-[trace] Initializing 'sys' +2022-07-20 19:35:11. 46 [lua]-[trace] Initializing 'filesystem' +2022-07-20 19:35:11. 47 [lua]-[trace] Initializing 'gui' +2022-07-20 19:35:11. 48 [lua]-[trace] Initializing 'util' +2022-07-20 19:35:11. 49 [lua]-[trace] Initializing 'ffi.unicode' +2022-07-20 19:35:11. 50 [lua]-[trace] Initializing 'ffi' +2022-07-20 19:35:11. 53 [lua]-[debug] ydwe path F:\平台编辑器 +2022-07-20 19:35:11. 53 [lua]-[trace] Initializing 'event' +2022-07-20 19:35:11. 56 [lua]-[trace] Initializing 'virtual_mpq' +2022-07-20 19:35:11. 59 [lua]-[trace] Initializing 'registry' +2022-07-20 19:35:11. 61 [lua]-[trace] Initializing 'version' +2022-07-20 19:35:11. 61 [lua]-[trace] Initializing 'localization' +2022-07-20 19:35:11. 61 [lua]-[trace] Initializing 'i18n' +2022-07-20 19:35:11. 63 [lua]-[trace] Initializing 'config' +2022-07-20 19:35:11. 64 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 19:35:11. 64 [lua]-[trace] Initializing 'plugin' +2022-07-20 19:35:11. 65 [lua]-[trace] Initializing 'uiloader' +2022-07-20 19:35:11. 65 [lua]-[trace] Initializing 'stringify_slk' +2022-07-20 19:35:11. 66 [lua]-[trace] Initializing 'ui-builder.init' +2022-07-20 19:35:11. 66 [lua]-[trace] Initializing 'ui-builder.old-reader' +2022-07-20 19:35:11. 67 [lua]-[trace] Initializing 'ui-builder.new-reader' +2022-07-20 19:35:11. 68 [lua]-[trace] Initializing 'lni-c' +2022-07-20 19:35:11. 69 [lua]-[trace] Initializing 'ui-builder.old-writer' +2022-07-20 19:35:11. 70 [lua]-[trace] Initializing 'ui-builder.new-writer' +2022-07-20 19:35:11. 70 [lua]-[trace] Initializing 'ui-builder.merge' +2022-07-20 19:35:11. 71 [lua]-[trace] Initializing 'w3xparser' +2022-07-20 19:35:11. 73 [lua]-[trace] Initializing 'check_object' +2022-07-20 19:35:11. 75 [lua]-[trace] Initializing 'ffi.storm' +2022-07-20 19:35:11. 76 [lua]-[trace] Initializing 'ffi.loadlibrary' +2022-07-20 19:35:11. 76 [lua]-[trace] Initializing 'ffi.gui' +2022-07-20 19:35:11. 76 [event]-[trace] RegisterEvent id: 7 +2022-07-20 19:35:11. 77 [lua]-[trace] Initializing 'ydwe_on_menu' +2022-07-20 19:35:11. 77 [event]-[trace] RegisterEvent id: 5 +2022-07-20 19:35:11. 77 [lua]-[trace] Initializing 'ydwe_on_save' +2022-07-20 19:35:11. 78 [lua]-[trace] Initializing 'compile.inject_code' +2022-07-20 19:35:11. 79 [lua]-[trace] Initializing 'compile.wave' +2022-07-20 19:35:11. 80 [lua]-[trace] Initializing 'compile.template' +2022-07-20 19:35:11. 80 [lua]-[trace] Initializing 'compile.cjass' +2022-07-20 19:35:11. 81 [lua]-[trace] Initializing 'compile.jasshelper' +2022-07-20 19:35:11. 82 [lua]-[trace] Initializing 'mpq_util' +2022-07-20 19:35:11. 83 [lua]-[trace] Initializing 'ffi.stormlib' +2022-07-20 19:35:11. 84 [lua]-[trace] Initializing 'compile.native' +2022-07-20 19:35:11. 85 [event]-[trace] RegisterEvent id: 3 +2022-07-20 19:35:11. 85 [event]-[trace] RegisterEvent id: 2 +2022-07-20 19:35:11. 85 [lua]-[trace] Initializing 'ydwe_on_test' +2022-07-20 19:35:11. 86 [lua]-[trace] Initializing 'w3x2lni' +2022-07-20 19:35:11. 87 [lua]-[trace] Initializing 'utility' +2022-07-20 19:35:11. 87 [lua]-[trace] Initializing 'mapdump' +2022-07-20 19:35:11. 88 [event]-[trace] RegisterEvent id: 4 +2022-07-20 19:35:11. 88 [lua]-[trace] Initializing 'ydwe_on_startup' +2022-07-20 19:35:11. 89 [event]-[trace] RegisterEvent id: 0 +2022-07-20 19:35:11. 90 [event]-[trace] RegisterEvent id: 1 +2022-07-20 19:35:11. 90 [event]-[trace] RegisterEvent id: 6 +2022-07-20 19:35:11. 90 [lua]-[trace] Initializing 'ydwe_on_dialog_message' +2022-07-20 19:35:11.260 [event]-[trace] RegisterEvent id: 8 +2022-07-20 19:35:11.260 [lua]-[trace] Initializing 'ydwe_on_new_object_id' +2022-07-20 19:35:11.261 [event]-[trace] RegisterEvent id: 9 +2022-07-20 19:35:11.261 [lua]-[debug] ********************* ydwe initialize end ********************* +2022-07-20 19:35:11.265 [event]-[info ] Entering main program. +2022-07-20 19:35:11.266 [event]-[debug] Command line: -loadfile "D:\Program Files (x86)\POPO Files\Ž0.980.w3x" +2022-07-20 19:35:11.272 [lua]-[debug] ********************* on startup start ********************* +2022-07-20 19:35:11.273 [lua]-[debug] ydwe version 0.0.0.0 +2022-07-20 19:35:11.273 [lua]-[debug] war3 version 1.27.0.52240 +2022-07-20 19:35:11.273 [lua]-[debug] war3 path F:\1.27a\WarcraftIII +2022-07-20 19:35:11.273 [lua]-[trace] check_conflicting_ui +2022-07-20 19:35:11.273 [lua]-[trace] check_conflicting_units +2022-07-20 19:35:11.273 [lua]-[trace] clear_potential_conflicting +2022-07-20 19:35:11.274 [lua]-[trace] check_war3_version +2022-07-20 19:35:11.280 [lua]-[error] Cannot find war3.mpq +2022-07-20 19:35:11.282 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\tesh\Tesh.plcfg +2022-07-20 19:35:11.326 [lua]-[debug] Tesh loaded successfully. +2022-07-20 19:35:11.339 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDClient.plcfg +2022-07-20 19:35:11.341 [lua]-[debug] YDClient loaded successfully. +2022-07-20 19:35:11.342 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDColorizer\YDColorizer.plcfg +2022-07-20 19:35:11.342 [lua]-[warn ] failed: disable +2022-07-20 19:35:11.343 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDFont\YDFont.plcfg +2022-07-20 19:35:11.344 [lua]-[warn ] failed: disable +2022-07-20 19:35:11.344 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDInternalIdShow.plcfg +2022-07-20 19:35:11.344 [lua]-[warn ] failed: disable +2022-07-20 19:35:11.344 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTaskbarSupport.plcfg +2022-07-20 19:35:11.396 [lua]-[debug] YDTaskbarSupport loaded successfully. +2022-07-20 19:35:11.398 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDTrigger.plcfg +2022-07-20 19:35:11.402 [lua]-[debug] YDTrigger loaded successfully. +2022-07-20 19:35:11.402 [lua]-[trace] Load plugin config F:\平台编辑器\plugin\YDWeHelper.plcfg +2022-07-20 19:35:11.405 [inject]-[debug] Start installing inline hooks. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeGetSystemParameter at 0x004D1DB0. +2022-07-20 19:35:11.406 [inject]-[trace] WeGetSystemParameter hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeVerifyMapCellsLimit at 0x004E1EF0. +2022-07-20 19:35:11.406 [inject]-[trace] Found GetUnkownFlag at 0x004D0AC0. +2022-07-20 19:35:11.406 [inject]-[trace] WeVerifyMapCellsLimit hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeTriggerNameCheck at 0x005A4B40. +2022-07-20 19:35:11.406 [inject]-[trace] WeTriggerNameCheck hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeTriggerNameInputCharCheck at 0x0042E390. +2022-07-20 19:35:11.406 [inject]-[trace] WeTriggerNameInputCharCheck hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeSetWindowCaption at 0x00433A00. +2022-07-20 19:35:11.406 [inject]-[trace] WeSetWindowCaption hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeSetMenuItem at 0x0042AA10. +2022-07-20 19:35:11.406 [inject]-[trace] WeSetMenuItem hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeStringCompare at 0x004D2D90. +2022-07-20 19:35:11.406 [inject]-[trace] WeStringCompare hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found TriggerEditorEditboxCopy at 0x0071FE90. +2022-07-20 19:35:11.406 [inject]-[trace] WeTriggerEditorEditboxCopy hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[trace] Found WeUtf8ToAnsi at 0x00429CD0. +2022-07-20 19:35:11.406 [inject]-[trace] WeUtf8ToAnsi hook installation succeeded. +2022-07-20 19:35:11.406 [inject]-[debug] Installing inline hooks complete. +2022-07-20 19:35:11.407 [inject]-[debug] IAT hook initialization started. +2022-07-20 19:35:11.407 [inject]-[trace] WE SHBrowseForFolderA IAT hook succeeded. +2022-07-20 19:35:11.407 [inject]-[trace] WE GetSaveFileNameA IAT hook succeeded. +2022-07-20 19:35:11.407 [inject]-[trace] WE GetOpenFileNameA IAT hook succeeded. +2022-07-20 19:35:11.407 [inject]-[debug] IAT hook initialization completed. +2022-07-20 19:35:11.407 [inject]-[debug] Patches initialization started. +2022-07-20 19:35:11.407 [inject]-[trace] Installing syntax check patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch syntaxCheck in 0x005BC089 success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing auto disable patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch autoDisable in 0x005CEFF3 success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing enable trigger check patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch enableTriggerCheck1 in 0x005C88F5 success. +2022-07-20 19:35:11.407 [inject]-[trace] Patch enableTriggerCheck2 in 0x005C88DA success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing doodad limit patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch doodadLimit in 0x0054CAD8 success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing unit/item limit patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch unitItemLimit in 0x00554B7B success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing editor multi-instance patch +2022-07-20 19:35:11.407 [inject]-[trace] Patch editorInstanceCheck in 0x00435870 success. +2022-07-20 19:35:11.407 [inject]-[trace] Installing attack table patch +2022-07-20 19:35:11.407 [inject]-[debug] Patches initialization completed. +2022-07-20 19:35:11.407 [inject]-[info ] YDWE startup complete. +2022-07-20 19:35:11.407 [lua]-[debug] YDWeHelper loaded successfully. +2022-07-20 19:35:11.408 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass +2022-07-20 19:35:11.409 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak +2022-07-20 19:35:11.409 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\AntiBJLeak\detail +2022-07-20 19:35:11.426 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Base +2022-07-20 19:35:11.429 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\japi +2022-07-20 19:35:11.432 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\PreloadSL +2022-07-20 19:35:11.433 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system +2022-07-20 19:35:11.433 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\ht +2022-07-20 19:35:11.433 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\system\rb +2022-07-20 19:35:11.433 [lua]-[trace] Scanning for inject files in F:\平台编辑器\jass\Util +2022-07-20 19:35:11.443 [lua]-[trace] Scanned file: 99 +2022-07-20 19:35:11.446 [lua]-[debug] ********************* on startup end ********************* +2022-07-20 19:35:11.900 [lua]-[trace] virtual_mpq 'worldeditstrings' +2022-07-20 19:35:11.926 [lua]-[trace] virtual_mpq 'triggerdata' +2022-07-20 19:35:12. 95 [lua]-[trace] virtual_mpq 'triggerstrings' +2022-07-20 19:35:12.210 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mp3dec.asi +2022-07-20 19:35:12.212 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssdolby.m3d +2022-07-20 19:35:12.213 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Msseax2.m3d +2022-07-20 19:35:12.213 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Mssfast.m3d +2022-07-20 19:35:12.214 [lua]-[debug] Loading provider F:\1.27a\WarcraftIII\redist\miles\Reverb3.flt +2022-07-20 19:35:14.164 [lua]-[debug] ********************* on menuinit start ********************* +2022-07-20 19:35:14.164 [lua]-[debug] ********************* on menuinit end ********************* diff --git a/plugin/AdicHelper/AdicHelper.exe b/plugin/AdicHelper/AdicHelper.exe new file mode 100644 index 0000000..9c0b07e Binary files /dev/null and b/plugin/AdicHelper/AdicHelper.exe differ diff --git a/plugin/AdicHelper/Examples/Matrix3 v1.0 - [by Warft_TigerCN & Cjass].w3x b/plugin/AdicHelper/Examples/Matrix3 v1.0 - [by Warft_TigerCN & Cjass].w3x new file mode 100644 index 0000000..b18a80f Binary files /dev/null and b/plugin/AdicHelper/Examples/Matrix3 v1.0 - [by Warft_TigerCN & Cjass].w3x differ diff --git a/plugin/AdicHelper/Examples/[cJass]_Fireball_v2.5.w3x b/plugin/AdicHelper/Examples/[cJass]_Fireball_v2.5.w3x new file mode 100644 index 0000000..ca0effa Binary files /dev/null and b/plugin/AdicHelper/Examples/[cJass]_Fireball_v2.5.w3x differ diff --git a/plugin/AdicHelper/Examples/[cJass]_Stomp_Spell_v2.5.w3x b/plugin/AdicHelper/Examples/[cJass]_Stomp_Spell_v2.5.w3x new file mode 100644 index 0000000..33944eb Binary files /dev/null and b/plugin/AdicHelper/Examples/[cJass]_Stomp_Spell_v2.5.w3x differ diff --git a/plugin/AdicHelper/SFmpq.dll b/plugin/AdicHelper/SFmpq.dll new file mode 100644 index 0000000..a795dca Binary files /dev/null and b/plugin/AdicHelper/SFmpq.dll differ diff --git a/plugin/AdicHelper/Source_MASM/AdicHelper.asm b/plugin/AdicHelper/Source_MASM/AdicHelper.asm new file mode 100644 index 0000000..cf93534 --- /dev/null +++ b/plugin/AdicHelper/Source_MASM/AdicHelper.asm @@ -0,0 +1,9012 @@ +;;------------------------------------------------------------------------- +;; +;; Adic Helper [cJass] +;; v 01 04 01 05 +;; +;; 2009 ADOLF aka ADX +;; http://cjass.xgm.ru +;; +;;------------------------------------------------------------------------- + +;;------------------------------------------------------------------------- + .686 + .model flat + .xmm +;;------------------------------------------------------------------------- + includelib \masm32\lib\kernel32.lib + includelib \masm32\lib\user32.lib + includelib \masm32\lib\gdi32.lib + includelib \masm32\lib\comctl32.lib + includelib \masm32\lib\shell32.lib + + includelib SFmpq.lib + +;; include \masm32\include\kernel32.inc + include \masm32\include\gdi32.inc + include \masm32\include\windows.inc + include \masm32\include\comctl32.inc +;;------------------------------------------------------------------------- + extern _imp__ExitProcess@4:dword + extern _imp__GetCommandLineA@0:dword + extern _imp__CreateThread@24:dword + extern _imp__CloseHandle@4:dword + extern _imp__GlobalAlloc@8:dword + extern _imp__GlobalLock@4:dword + extern _imp__GlobalUnlock@4:dword + extern _imp__GlobalFree@4:dword + extern _imp__CreateFileA@28:dword + extern _imp__WriteFile@20:dword + extern _imp__DeleteFileA@4:dword + extern _imp__GetCurrentDirectoryA@8:dword + extern _imp__SetCurrentDirectoryA@4:dword + extern _imp__ReadFile@20:dword + extern _imp__GetFileSize@8:dword + extern _imp__SetThreadPriority@8:dword + + extern _imp__MessageBoxA@16:dword + extern _imp__RegisterClassA@4:dword + extern _imp__CreateWindowExA@48:dword + extern _imp__GetSystemMetrics@4:dword + extern _imp__GetMessageA@16:dword + extern _imp__DispatchMessageA@4:dword + extern _imp__DefWindowProcA@16:dword + extern _imp__LoadIconA@8:dword + extern _imp__PostMessageA@16:dword + extern _imp__SendMessageA@16:dword + extern _imp__ShowWindow@8:dword + extern _imp__RedrawWindow@16:dword + extern _imp__LoadCursorA@8:dword + extern _imp__SetCursor@4:dword +;; extern _imp__DrawIcon@16:dword + extern _imp__DestroyWindow@4:dword + extern _imp__SetWindowTextA@8:dword + extern _imp__MoveWindow@24:dword + extern _imp__MessageBeep@4:dword + extern _imp__SetFocus@4:dword + + extern _imp__MpqOpenArchiveForUpdate@12:dword + extern _imp__MpqDeleteFile@8:dword + extern _imp__SFileOpenFileEx@16:dword + extern _imp__MpqCompactArchive@4:dword + extern _imp__MpqCloseUpdatedArchive@8:dword + extern _imp__SFileGetFileSize@8:dword + extern _imp__SFileReadFile@20:dword + extern _imp__MpqAddFileToArchiveEx@24:dword + + extern _imp__BeginPaint@8:dword + extern _imp__EndPaint@8:dword + extern _imp__SetBkMode@8:dword + extern _imp__GetStockObject@4:dword + extern _imp__SelectObject@8:dword + extern _imp__SetBkMode@8:dword + extern _imp__DrawTextA@20:dword + extern _imp__SetTextColor@8:dword + extern _imp__CreateFontIndirectA@4:dword + + extern _imp__ShellExecuteA@24:dword + + extern _imp__GetLocalTime@4:dword + +;;dbg +;;extern _imp__wsprintfA:dword +;;------------------------------------------------------------------------- +.data + + WM_PROCEND equ WM_USER+02h + WM_CJ_ERROR equ WM_USER+03h + + _dWndStlEx dd WS_VISIBLE + +; align 04h + _sWinName db "AdicHelper 1.4.1.5", 00h + _sTollInfo db "cJass parser and optimizer AdicHelper v 1.4.1.5", 0dh, 0ah, "(c) ADOLF aka ADX, 2009", 00h + _sSiteAdr db "http://cjass.xgm.ru", 00h + + _sOpen db "open", 00h + + _sAttr db "(attributes)", 00h + _sWJ db "war3map.j", 00h + _sWJP db "parsed_war3map.j", 00h + _sWJO db "optimized_war3map.j", 00h + _sSynErr db "AdicHelper: syntax error", 00h + + _dfilename dd offset _sWJP + + _dDefTableSD equ $ + + _dMapProcCode dd 00h ;; used in string preprocessor + + ;; used in setdef + dd 00h, 00h, 00h + + _hWndCls dd CS_NOCLOSE or CS_HREDRAW or CS_VREDRAW or CS_BYTEALIGNWINDOW, + offset _hWndProc, 00h, 00h, 400000h, ?, 10011h, COLOR_WINDOW, 00h, offset _sWJ + _hErrCls dd CS_HREDRAW or CS_VREDRAW, + offset _hErrProc, 00h, 00h, 400000h, ?, 10011h, COLOR_WINDOW, 00h, offset _sSynErr + + ;; fonts + _xOutFont dd 0bh, 00h, 00h, 00h, 0190h + db 00h, 00h ,00h, ANSI_CHARSET, 00h, 00h, 00h, 01h + db "Lucida console", 00h + _xGuiFont dd 0dh, 00h, 00h, 00h, 0190h + db 00h, 00h ,00h, ANSI_CHARSET, 00h, 00h, 00h, 01h + db "MS Sans Serif", 00h + _xWWWFont dd 0dh, 00h, 00h, 00h, 0190h + db 00h, 01h ,00h, ANSI_CHARSET, 00h, 00h, 00h, 01h + db "MS Sans Serif", 00h + + _dFreeScope dd 00h + + _dDbgOff dd offset _lCRDebugRem ;; is debug mode + + _dSynDesc dd offset _xSynDesc ;; ex syntax (zinc and boa) pointer + + _dSortSteps dd 0010h, 0050h, 0130h, 0290h, 06d0h, 0d10h, 1f90h, 3a10h, 8710h, 0f410h, 0ffffffffh + ;; + ;; 10 bits offset oriented + ;; + + _dCurrStr dd offset _sProg_00 + + _xRect_00 dd 0010h, 10h, 0172h, 40h + _xRect_01 dd 0010h, 24h, 0172h, 40h + _xRect_toRedraw dd 0118h, 10h, 0172h, 1ch + + _xRect_02 dd 0010h, 08h, 0172h, 20h + + _dEnumStrPoint dd offset _xEnumStr+0dh + _dEnumTablePointer dd offset _xEnumTable+0ch +;; _dEnumLabelPointer dd offset _xEnumLabel + + _dEnumDefTable dd offset _xEnumDefTable, offset _xEnumDefTable+0ch + _xEnumDefTable dd 80000000h, 0ffffffffh, offset _xEnumDefTable+0ch, 00000000h, 7fffffffh, 00000000h + + _sDateL db "DATE", 02h + _sTimeL db "TIME", 02h + _sDebugL db "DEBUG", 02h + _sCountL db "COUNTER", 02h + _sWeatherL db "WEATHER_ON_MARS", 02h + _sWarVer db "WAR3VER", 02h + _sFuncNameL db "FUNCNAME", 02h + + _sTrue db "1", 03h + _sVer24 db "WAR3VER_24", 03h + _sVer23 db "WAR3VER_23", 03h + _sVerUndef db "WAR3VER_00", 03h + _sCntSpec db 01h, 36h, 03h + _sWether db 01h, 37h, 03h + _sFuncName db 66h, 66h, 01h, 38h, 03h + + _dWarVerSL dd offset _sVerUndef ;; if zero - do not remove unused code + + _sProg_00 db "Parsing: preparing...", 00h + _sProg_01 db "Parsing: processing...", 00h + _sProg_02 db "Parsing: build Find'n'Replace table...", 00h + _sProg_03 db "Parsing: find'n'Replace: process...", 00h + _sProg_04 db "Parsing: killing Vexorian...", 00h + _sProg_05 db "Parsing: success!", 00h + + _sProg_06 db "Optimization: preparing...", 00h + _sProg_07 db "Optimization: removing unused code...", 00h + _sProg_08 db "Optimization: success!", 00h + + _sExit db "Exit", 00h + + _sProgBar db "msctls_progress32", 00h + _sEditWnd db "edit", 00h + _sListWnd db "listbox", 00h + _sButton db "button", 00h + + _sErr_Arch db "Error: cannot open archive", 00h + _sErr_Code db "Error: cannot find war3map.j", 00h + + _sErr_Title db "Compiling is stopped", 00h + + _sErr_Base db "[00] Critical syntax error", 00h + _sErr_UnclosedString db "[01] Critical error: string unclosed or too big", 00h + _sErr_CantOpenFile db "[02] Critical error: cannot open included file", 00h + _sErr_BadBlockInFile db "[03] Critical error: unclosed block in included file", 00h + _sErr_BadBlock db "[04] Critical error: excessive block closing bracket", 00h + _sErr_UnclosedBlock db "[05] Critical error: unclosed block", 00h + _sErr_EndLibScope db "[06] Critical error: excessive endlibrary/endscope", 00h + _sErr_BadDef db "[07] Critical error: word cannot be defined: maybe missing enddefine?", 00h + _sErr_BadChar db "[08] Critical error: bad char", 00h + _sErr_UnclosedLib db "[09] Critical error: missing endlibrary or endscope", 00h + _sErr_UnclosedComment db "[10] Critical error: unclosed comment block", 00h + _sErr_BadComment db "[11] Critical error: comment closed without opening", 00h + _sErr_ValueRedefined db "[12] Critical error: macro defined twice with different arguments", 00h + _sErr_ValueRedefinedEX db "[**] Redeclared here", 00h + _sErr_MissDefArg db "[13] Critical error: missing define arguments", 00h + _sErr_DefArg db "[14] Critical error: too many arguments passed to define", 00h + _sErr_UnknowBlock db "[15] Critical error: unknown block", 00h + _sErr_IncorrectLiteral db "[16] Critical error: incorrect literal", 00h + _sErr_PreProc db "[17] Critical error: incorrect preprocessor instruction", 00h + _sErr_Ude db "[18] Critical error: used defined error", 00h + _sErr_FailedDef db "[19] Critical error: defines cannot be declared in #if/#endif block. Please declare them outside of this block and use setdef instruction", 00h + + _bFCLL db 40h ;; locals + _bFCLLMAX db 40h ;; locals max + + _dFCPL dd offset _bFuncPostEX ;; postix index - pointer + + _sCodeConst db "true", 00h + db "false", 00h + db "function", 00h + db "Player", 00h + db "GetRandomInt", 00h + db "GetRandomReal", 00h + db "Deg2Rad", 00h + db "Rad2Deg", 00h + db "Sin", 00h + db "Cos", 00h + db "Tan", 00h + db "Asin", 00h + db "Acos", 00h + db "Atan", 00h + db "Atan2", 00h + db "SquareRoot", 00h + db "Pow", 00h + db "I2R", 00h + db "R2I", 00h + db "I2S", 00h + db "R2S", 00h + db "R2SW", 00h + db "S2I", 00h + db "S2R", 00h + db "SubString", 00h + db "StringLength", 00h + db "StringCase", 00h + db "Condition", 00h + db "Filter", 00h + + db 00h + + _sCodeNXFunc db "laeRmodnaRteG", 00h + db "tnImodnaRteG", 00h + db "reyalP", 00h + db "reggirTetaerC", 00h + db "noigeRetaerC", 00h + db "noitacoL", 00h + db "tceR", 00h + db "ecroFetaerC", 00h + db "puorGetaerC", 00h + db "remiTetaerC", 00h + db "tnImodnaRteG", 00h + db "laeRmodnaRteG", 00h + + db 00h + + ;; + ;; 0...9 ; A...Z ; _ ; a...z + ;; + + _bAscii_00 \ + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 01h + db 00h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + + ;; + ;; 0...9 ; A...Z ; _ ; a...z ; , and . + ;; + + _bAscii_03 \ + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 01h, 00h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 00h + db 00h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 01h + db 00h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h + db 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 01h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + db 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h, 00h + + ;; + ;; remove bs 00 + ;; + ;; 00h, 01h, 02h, 03h, 04h, 05h, 06h, 07h, 08h, 09h, 0ah, 0bh, 0ch, 0dh, 0eh, 0fh + _bAscii_01 \ + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 ;; 00h - 0fh + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 ;; 10h - 1fh + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_02, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_01, _lCRDD_01, _lCRDD_00, _lCRDD_01, _lCRDD_02, _lCRDD_01 ;; 20h - 2fh + db _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 ;; 30h - 3fh + db _lCRDD_00, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02 ;; 40h - 4fh + db _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 ;; 50h - 5fh + db _lCRDD_00, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02 ;; 60h - 6fh + db _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_02, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 ;; 70h - 7fh + + _lCRDD_00 equ offset _lCRScanBS - _lBSRemBase + _lCRDD_01 equ offset _lCRIncDec - _lBSRemBase + _lCRDD_02 equ offset _lCRBSNext - _lBSRemBase + _lCRDD_03 equ offset _lCRBSAdd - _lBSRemBase + + ;; + ;; remove bs 01 + ;; + _bAscii_02 \ + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 + db _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_03, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_03, _lCRDD_00 + db _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 + db _lCRDD_00, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03 + db _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_03 + db _lCRDD_00, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03 + db _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_03, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00, _lCRDD_00 + + ;;---------------- + ;; for debug + ;;_sDbgSrc db "%d", 00h + ;;_sDbgDest db 20h dup(00h) + ;;---------------- + +;;------------------------------------------------------------------------- +.data? + + _sTime db 09h dup(?) + _sDate db 0bh dup(?) + _dCounterV dd ? + + _bCodeSys db ? ;; 0 = not return and not if construction + _bCodePosOp db ? ;; 0 = no post operation (++ or --) + + _bTempBool db ? + _bTempType db ? + + _dBuffer dd ? ;; buffer + _hOLMacro dd ? ;; used in macro overloading + + _dGuiFont dd ? + _dWWWFont dd ? ;; used in string preprocessor + + _fScr dd ? + + _dUndefPnt dd ? ;; script position in undefined + + _hWnd dd ? + _hPrg dd ? + _hList dd ? + _hBtn dd ? ;; used in #if ... + +;; _hIconCJ dd ? + _hTrd dd ? + + _dStackPos dd ? + _dPreStackPos dd ? + + _dErrorCodeStart dd ? ;; edi position of bad code + _xErrorTable dd 08h dup(?) + + _dStdCursor dd ? + _dExCursor dd ? + + _sMapPath db 0200h dup(?) + _dMapPathToEX equ 0200h + _sMapPathEX db 0200h dup(?) ;; for include + _dMapPathEnd dd ? + + _sCurrDir db 0200h dup(?) + _dCurrDirEnd dd ? + + align 10h + _lDefX dd 00010000h dup(?) ;; 80h bits defBlocks + + _dScopeIn dd 0100h dup(?) + _dScopeOut dd 0100h dup(?) + + _dDefTable dd 0080h dup(?) ;; used in f'n'p ;; used in code romoning (variables) + _dDefTableEX dd 0080h dup(?) ;; used in code romoning (function) + + _dDefArgs dd 0080h dup(?) + + _xPntStr PAINTSTRUCT + + _dFCL dd ? ;; locals + _dFCB dd ? ;; base code of function + + _dBCP dd ? ;; base code pointer + + align 10h + _bFuncCodeLocals db 00010000h dup(?) ;; locals ;; used also in string preprocessor ;; used in guard ;; used in removing unused code - variables + align 10h + _bFuncCodeBase db 000a0000h dup(?) ;; base code of function ;; used also in string preprocessor ;; used in removing unused code - functions + _bFuncCodeOneLine db 00004000h dup(?) ;; one line of func code + _bFuncPostEX db 00000200h dup(?) ;; postix index + + _xEnumStr db 00008000h dup(?) ;; enum string + _xEnumTable dd 00008000h dup(?) ;; enum structs ;; used also in #if + _xEnumLabel dd 00000100h dup(?) ;; enum labels + + _xSysTime dw 08h dup(?) ;; system time + + _dVarParams dd ? ;; variable group params + + _dLastFuncName dd ? ;; used in FUNCNAME macro + + _bIsPPCEn db ? ;; in #if/#endif block + + _xSynDesc dd 0400h dup(?) ;; ex syntax (zinc and boa) descriptor + + _bStrXX db ? ;; uses to add bs at strings + +;;------------------------------------------------------------------------- +.code + + _next equ @f + _prew equ @b + _lbl equ @@ + + ;;---------------- + ;; debug print reg + _printReg macro reg + pushad + + push reg + push offset _sDbgSrc + push offset _sDbgDest + + call _imp__wsprintfA + add esp, 0ch + + push 00h + push 00h + push offset _sDbgDest + push 00h + call _imp__MessageBoxA@16 + + popad + endm + ;;---------------- + + ;;------------------------------------------------------------------------- + + ;; struct defBlock + ;; + ;; _sDFLabel dd ;; adress of string [define label] + ;; _sDFValue dd ;; adress of string [define value] + ;; _sDFScope dd ;; scope id + ;; _dValueLenght dd ;; arg count + _dDFSize equ 10h + + ;; struct errorTable + ;; + ;; _hString dd ;; offset of info string + ;; _hStarsS dd ;; selection end + ;; _hEndS dd ;; selection start + ;; dd ;; not use + + ;; struct enumLabels + ;; + ;; _hName dd ;; pointer to string + ;; _hNegBase dd ;; negative enumTable + ;; _hPosBase dd ;; positive enumTable + + ;; struct enumTable + ;; + ;; _hMin dd + ;; _hMax dd + ;; _hNext dd ;; next enumTable + + ;; struct globVar/func + ;; + ;; _hAddrS dd ;; address - start + ;; _hAddrE dd ;; end + ;; _hName dd ;; var Name + ;; _wCnt dw ;; counter + ;; _ db + ;; _ db + + ;; struct funcCode + ;; + ;; _hAddrS dd ;; address - start + ;; _hAddrE dd ;; end + ;; _hName dd ;; var Name + ;; _wCnt dw ;; counter + ;; _bIsChecked db ;; is checked + ;; _ db + + ;;------------------------------------------------------------------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc optimize + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _lMapOptimizeCode: + + ;;---------------- + mov _dCurrStr, offset _sProg_06 + mov eax, 10h + call _lSetProg + ;;---------------- + + ;;---------------- + ;; code preparation + xor ebx, ebx ;; use bl only + jmp _lOptPreStartEX + _lOptPreStart: + movsb + _lOptPreStartEX: + mov eax, dword ptr [esi] + + ;;---------------- + ;; nl + cmp ax, 0a0dh ;; nl + jne _next + + _lOptAddNLEX: + cmp byte ptr [edi-01h], 0ah ;; nl + jne _lOptAddNL + add esi, 02h + jmp _lOptPreStartEX + + _lOptAddNL: + mov byte ptr [edi], 0ah ;; nl + add esi, 02h + inc edi + jmp _lOptPreStartEX + ;;---------------- + + ;;---------------- + ;; comments + _lbl: + cmp ax, 2f2fh ;; // + jne _next + + _lOptComm: + inc esi + cmp byte ptr [esi], 00h + je _lOptPreEnd + cmp word ptr [esi], 0a0dh + jne _lOptComm + jmp _lOptAddNLEX + ;;---------------- + + ;;---------------- + ;; strings + _lbl: + cmp eax, 2b202222h ;; "" + + jne _next + add esi, 04h + jmp _lOptPreStartEX + + _lbl: + cmp eax, 2222202bh ;; + "" + jne _next + add esi, 04h + jmp _lOptPreStartEX + + _lbl: + cmp eax, 202b2022h ;; " + + jne _next + cmp byte ptr [esi+04h], 22h ;; " + jne _next + add esi, 05h + jmp _lOptPreStartEX + + _lbl: + cmp al, 22h ;; " + jne _next + + _lOptStr: + movsb + _lOptStrSX: + cmp byte ptr [esi], 5ch ;; \ + je _lOptStrEX + cmp byte ptr [esi], 22h ;; " + jne _lOptStr + jmp _lOptPreStart + + _lOptStrEX: + movsw + jmp _lOptStrSX + ;;---------------- + + ;;---------------- + ;; bs + _lbl: + cmp al, 20h ;; bs + jne _next + jmp _lOptRemoveBS + + _lbl: + cmp al, 09h ;; tab + jne _next + + _lOptRemoveBS: + ;; prew char + mov bl, byte ptr [edi-01h] + cmp byte ptr [_bAscii_00+ebx], bh ;; bh = 00h + jne _lOptBS + + inc esi + jmp _lOptPreStartEX + + ;; next char + _lOptBS: + mov bl, ah + cmp byte ptr [_bAscii_00+ebx], bh ;; bh = 00h + jne _lOptPreStart + + inc esi + jmp _lOptPreStartEX + ;;---------------- + + ;;---------------- + ;; null + _lbl: + cmp al, 00h ;; null + jne _lOptPreStart + + cmp byte ptr [edi-01h], 0ah ;; nl + jne _lOptPreEnd + dec edi + mov byte ptr [edi], 00h ;; null + + ;;---------------- + + _lOptPreEnd: + ;;---------------- + + ;;---------------- + mov _dCurrStr, offset _sProg_07 + mov eax, 20h + call _lSetProg + ;;---------------- + + ;;---------------- + ;; removing unused code + cmp dword ptr [_dWarVerSL], 00h + jne _next + + add esi, 04h + jmp _lOptCC_NoRemove + + _lbl: + push edi + push esi + + + ;;---------------- + ;; variables + mov ebx, offset _bFuncCodeLocals + add esi, 0ch ;; globals_ + + _lOptCC_VarStr: + cmp dword ptr [esi], 67646e65h ;; endg + jne _lOptCC_VarAdd + cmp dword ptr [esi+04h], 61626f6ch ;; loba + jne _lOptCC_VarAdd + cmp word ptr [esi+08h], 736ch ;; ls + jne _lOptCC_VarAdd + cmp byte ptr [esi+0ah], 0ah ;; nl + jne _lOptCC_VarAdd + + add esi, 0bh + + ;;---------------- + ;; go to sort + push esi ;; store esi before sort + cmp ebx, offset _bFuncCodeLocals+10h + jbe _lOptCC_VarNoSort + + mov ebp, offset _bFuncCodeLocals + sub ebx, ebp + call _lOptCC_SortIn + + _lOptCC_VarNoSort: + mov eax, offset _bFuncCodeLocals-10h + mov edx, offset _dDefTable + push offset _lOptCC_Func + jmp _lOptCC_BuildIn + ;;---------------- + + _lOptCC_VarAdd: + mov dword ptr [ebx], esi ;; start + + cmp dword ptr [esi], 736e6f63h ;; cons + jne _next + cmp dword ptr [esi+04h], 746e6174h ;; tant + jne _next + cmp byte ptr [esi+08h], 20h ;; bs + add esi, 09h ;; remove constant + _lbl: + inc esi + cmp byte ptr [esi], 20h ;; bs + jne _prew + inc esi + + cmp dword ptr [esi], 61727261h ;; arra + jne _next + cmp word ptr [esi+04h], 2079h ;; y_ + jne _next + add esi, 06h + _lbl: + + mov dword ptr [ebx+08h], esi ;; var name + + _lbl: + inc esi + cmp byte ptr [esi], 0ah ;; nl + jne _prew + inc esi + mov dword ptr [ebx+04h], esi ;; end + add ebx, 10h + + jmp _lOptCC_VarStr + ;;---------------- + + ;;---------------- + ;; functions + _lOptCC_Func: + pop esi + mov ebx, offset _bFuncCodeBase + + _lOptCC_FuncStr: + cmp byte ptr [esi], 00h + jne _lOptCC_FuncAdd + + ;;---------------- + ;; go to sort + cmp ebx, offset _bFuncCodeBase+10h + jbe _lOptCC_FuncNoSort + + mov ebp, offset _bFuncCodeBase + sub ebx, ebp + call _lOptCC_SortIn + + _lOptCC_FuncNoSort: + mov eax, offset _bFuncCodeBase-10h + mov edx, offset _dDefTableEX + push offset _lOptCC_ChStr + jmp _lOptCC_BuildIn + ;;---------------- + + _lOptCC_FuncAdd: + mov dword ptr [ebx], esi + cmp dword ptr [esi], 736e6f63h ;; cons + jne _next + add esi, 09h + _lbl: + add esi, 09h + mov dword ptr [ebx+08h], esi + + _lbl: + inc esi + cmp dword ptr [esi], 6b617420h ;; _tak + jne _prew + + cmp dword ptr [esi+07h], 68746f6eh ;; noth + jne _lOptCC_FuncGetEnd + cmp dword ptr [esi+0bh], 20676e69h ;; ing_ + jne _lOptCC_FuncGetEnd + + ;;---------------- + ;; is optional + mov word ptr [ebx+0ch], 01h + ;;---------------- + + _lOptCC_FuncGetEnd: + inc esi + cmp dword ptr [esi], 646e650ah ;; _end + jne _lOptCC_FuncGetEnd + cmp dword ptr [esi+04h], 636e7566h ;; func + jne _lOptCC_FuncGetEnd + + add esi, 0dh + mov dword ptr [ebx+04h], esi + add ebx, 10h + jmp _lOptCC_FuncStr + ;;---------------- + + ;;---------------- + ;; sort + ;;---------------- + ;; set step + _lOptCC_SortIn: + mov eax, offset _dSortSteps-04h + _lbl: + add eax, 04h + mov ecx, dword ptr [eax+04h] + lea ecx, dword ptr [ecx+ecx*02h] + cmp ebx, ecx + jg _prew + ;;---------------- + + _lOptCC_SortStr: + mov ecx, dword ptr [eax] + lea ebx, dword ptr [ebp+ecx] + + _lOptCC_SortGo: + mov esi, dword ptr [ebx+08h] + mov edi, ebx + mov dl, byte ptr [esi] + movaps xmm1, [ebx] + + _lbl: + sub edi, ecx + cmp edi, ebp + jb _lOptCC_SortNext + mov esi, dword ptr [edi+08h] + cmp byte ptr [esi], dl + jb _lOptCC_SortNext + + movaps xmm0, [edi] + movaps [edi+ecx], xmm0 + + jmp _prew + + _lOptCC_SortNext: + movaps [edi+ecx], xmm1 + add ebx, 10h + cmp dword ptr [ebx], 00h + jnz _lOptCC_SortGo + + sub eax, 04h + cmp eax, offset _dSortSteps-04h + jne _lOptCC_SortStr + + _lOptCC_SortEnd: + retn + ;;---------------- + + ;;---------------- + ;; build table + _lOptCC_BuildIn: + xor ebx, ebx + xor ecx, ecx + + _lOptCC_VarDT: + add eax, 10h + cmp dword ptr [eax], 00h + je _lOptCC_VarDTEnd + + mov ebp, dword ptr [eax+08h] + mov bl, byte ptr [ebp] + cmp cl, bl + je _lOptCC_VarDT + mov dword ptr[edx+ebx*04h], eax + mov cl, bl + jmp _lOptCC_VarDT + + _lOptCC_VarDTEnd: + retn + ;;---------------- + + ;;---------------- + ;; checking + _lOptCC_ChStr: + + ;;---------------- + ;; check next function + _lOptCC_ChNext: + xor ebx, ebx + _lOptCC_ChNextEX: + mov eax, offset _bFuncCodeBase + + _lOptCC_ChIn: + cmp dword ptr [eax], 00h + je _lOptCC_RemIn + + cmp word ptr [eax+0ch], 00h + jne _lOptCC_ChCall + add eax, 10h + jmp _lOptCC_ChIn + + _lOptCC_ChCall: + cmp byte ptr [eax+0eh], 00h + je _lOptCC_ChInFunc + add eax, 10h + jmp _lOptCC_ChIn + + ;;---------------- + ;; in function + _lOptCC_ChInFunc: + mov esi, dword ptr [eax+08h] + mov byte ptr [eax+0eh], 01h + + _lbl: + inc esi + cmp byte ptr [esi-01h], 0ah ;; nl + jne _prew + + _lOptCC_ChInFunc_GetWord: + mov bl, byte ptr [esi] + cmp byte ptr [_bAscii_00+ebx], bh + je _lOptCC_ChInFunc_Inc + + cmp dword ptr [esi], 66646e65h ;; endf + jne _lOptCC_ChInFunc_CheckWord + cmp byte ptr [esi-01h], 0ah ;; nl + je _lOptCC_ChNextEX + + ;;---------------- + _lOptCC_ChInFunc_CheckWord: + mov bl, byte ptr [esi] + lea edx, [_dDefTable+ebx*04h] + mov edx, dword ptr [edx] + test edx, edx + jz _lOptCC_ChInFunc_ReCheck + + _lOptCC_ChInFunc_CheckWordEX: + mov ecx, esi + mov ebp, dword ptr [edx+08h] + mov bl, byte ptr [ecx] + cmp byte ptr [ebp], bl + jne _lOptCC_ChInFunc_ReCheck + inc ecx + inc ebp + + _lOptCC_ChInFunc_CheckWordFX: + mov bl, byte ptr [ecx] + cmp byte ptr [_bAscii_00+ebx], bh + je _lOptCC_ChInFunc_CheckWordOX + + cmp byte ptr [ebp], bl + jne _lOptCC_ChInFunc_NextFX + inc ebp + inc ecx + jmp _lOptCC_ChInFunc_CheckWordFX + + _lOptCC_ChInFunc_CheckWordOX: + mov bl, byte ptr [ebp] + cmp byte ptr [_bAscii_00+ebx], bh + jne _lOptCC_ChInFunc_NextFX + + inc word ptr [edx+0ch] + ;;---------------- + + _lOptCC_ChInFunc_NextWord: + inc esi + mov bl, byte ptr [esi] + cmp byte ptr [_bAscii_00+ebx], bh + jne _lOptCC_ChInFunc_NextWord + jmp _lOptCC_ChInFunc_GetWord + + _lOptCC_ChInFunc_NextFX: + add edx, 10h + cmp dword ptr [edx], 00h + je _lOptCC_ChInFunc_ReCheck + jmp _lOptCC_ChInFunc_CheckWordEX + + _lOptCC_ChInFunc_Inc: + cmp bl, 22h ;; " + je _lOptCC_ChInFunc_IncStr + inc esi + jmp _lOptCC_ChInFunc_GetWord + + _lOptCC_ChInFunc_IncStrEX: + inc esi + _lOptCC_ChInFunc_IncStr: + inc esi + cmp byte ptr [esi], 5ch ;; \ + je _lOptCC_ChInFunc_IncStrEX + cmp byte ptr [esi], 22h ;; " + jne _lOptCC_ChInFunc_IncStr + inc esi + jmp _lOptCC_ChInFunc_GetWord + + _lOptCC_ChInFunc_ReCheck: + cmp edx, offset _bFuncCodeBase + jge _lOptCC_ChInFunc_NextWord + + mov bl, byte ptr [esi] + lea edx, [_dDefTableEX+ebx*04h] + mov edx, dword ptr [edx] + test edx, edx + jz _lOptCC_ChInFunc_NextWord + jmp _lOptCC_ChInFunc_CheckWordEX + ;;---------------- + ;;---------------- + + ;;---------------- + ;; remove unused + _lOptCC_RemIn: + mov al, 02h + + ;;---------------- + ;; functions + mov edx, offset _bFuncCodeBase-10h + + _lOptCC_RemFunc: + add edx, 10h + cmp dword ptr [edx], 00h + je _lOptCC_RemVarIn + + cmp word ptr [edx+0ch], 00h + jne _lOptCC_RemFunc + + ;;---------------- + ;; remove + mov edi, dword ptr [edx] + mov ecx, dword ptr [edx+04h] + sub ecx, edi + rep stosb + + jmp _lOptCC_RemFunc + ;;---------------- + ;;---------------- + + ;;---------------- + ;; variables + _lOptCC_RemVarIn: + mov edx, offset _bFuncCodeLocals-10h + + _lOptCC_RemVar: + add edx, 10h + cmp dword ptr [edx], 00h + je _lOptCC_RemParse + + cmp word ptr [edx+0ch], 00h + jne _lOptCC_RemParse + + ;;---------------- + ;; remove + mov ebp, dword ptr [edx+08h] + + _lbl: + inc ebp + cmp byte ptr [ebp], 0ah ;; nl + je _lOptCC_RemVarEX + cmp byte ptr [ebp], 3dh ;; = + jne _prew + + ;;---------------- + ;; check + _lOptCC_RemVarCheckStart: + inc ebp + cmp byte ptr [ebp], 0ah ;; nl + je _lOptCC_RemVarEX + cmp byte ptr [ebp], 28h ;; ( + jne _lOptCC_RemVarCheckStart + + mov bl, byte ptr [ebp-01h] + cmp byte ptr [_bAscii_00+ebx], bh + je _lOptCC_RemVarCheckStart + + ;;---------------- + mov esi, offset _sCodeNXFunc + + _lOptCC_RemVarCheck: + lea ecx, [ebp-01h] + + _lbl: + mov bl, byte ptr [ecx] + cmp bl, byte ptr [esi] + jne _lOptCC_RemVarCheckFX + dec ecx + inc esi + jmp _prew + + _lOptCC_RemVarCheckFX: + cmp byte ptr [_bAscii_00+ebx], bh + jne _lOptCC_RemVarCheckNext + cmp byte ptr [esi], 00h + je _lOptCC_RemVarCheckStart + + _lOptCC_RemVarCheckNext: + cmp byte ptr [esi], 00h + jne _lOptCC_RemVarCheckNextEX + inc esi + cmp byte ptr [esi], 00h + jne _lOptCC_RemVarCheck + jmp _lOptCC_RemVarCheckStart + + _lOptCC_RemVarCheckNextEX: + inc esi + jmp _lOptCC_RemVarCheckNext + ;;---------------- + + ;;---------------- + + ;;---------------- + _lOptCC_RemVarEX: + mov edi, dword ptr [edx] + mov ecx, dword ptr [edx+04h] + sub ecx, edi + rep stosb + + jmp _lOptCC_RemVar + ;;---------------- + ;;---------------- + ;;---------------- + + ;;---------------- + ;; parse code + _lOptCC_RemParse: + pop esi + pop edi + add esi, 04h + add edi, 04h + + _lOptCC_RemParseEX: + lodsb + cmp al, 02h + je _lOptCC_RemParseEX + test al, al + jz _lOptCC_RemParseEnd + stosb + jmp _lOptCC_RemParseEX + + _lOptCC_RemParseEnd: + add esi, 03h + ;;---------------- + ;;---------------- + ;;---------------- + _lOptCC_NoRemove: + ;;---------------- + + ;;---------------- + mov _dCurrStr, offset _sProg_08 + mov eax, 64h + call _lSetProg + ;;---------------- + + sub edi, esi ;; edi = new script size + + retn + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; optimize endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc parse + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;; esi=Src + ;; edi=Dest + + ;; stack: + ;; + ;; edi + ;; mem + ;; mem + ;; archive + ;; attributes + + _lMapParseCode: + + ;;---------------- + mov _dCurrStr, offset _sProg_01 + mov eax, 10h + call _lSetProg + ;;---------------- + + ;;---------------- + ;; comments removing + + ;;---------------- + ;; utf 8 bom + cmp word ptr [esi], 0bbefh + jne _lCrStr + cmp byte ptr [esi+02h], 0bfh + jne _lCrStr + + add esi, 03h + ;;---------------- + + _lCrStr: + push 00h ;; for safe + mov _dStackPos, esp ;; save stack + mov dword ptr [_dErrorCodeStart], edi ;; for syntax error + jmp _lCRScanLineSx + + ;;---------------- + ;; line start + _lCRScanLine: + + ;;---------------- + cmp dword ptr [_hBtn], 00h + je _lCRScanLineFx + + mov dword ptr [_hBtn], 00h + lea eax, [edi+02h] + push eax + mov dword ptr [edi], 78016101h ;; #a#x + add edi, 08h + jmp _lCRScanLineDx + ;;---------------- + + _lCRScanLineFx: + cmp word ptr [edi-02h], 0a0dh ;; nl + je _lCRScanLineDx + cmp byte ptr [edi-01h], 00h + je _lCRScanLineDx + mov word ptr [edi], 0a0dh ;; nl + add edi, 02h + _lCRScanLineDx: + cmp byte ptr [esi], 0ah + jne _next + inc esi + jmp _lCRScanLineDx + _lbl: + cmp byte ptr [esi], 0dh + jne _lCRScanLineSx + inc esi + jmp _lCRScanLineDx + + _lCRScanLineSx: ;; <--- + mov eax, dword ptr [esi] + ;;---------------- + + ;;---------------- + ;; remove bs and tabs in line start + _lbl: + cmp al, 09h + jne _next + inc esi + jmp _lCRScanLineSx + + _lbl: + cmp al, 20h + jne _next + inc esi + jmp _lCRScanLineSx + ;;---------------- + + ;;---------------- + ;; define test + _lbl: + cmp byte ptr [_bIsPPCEn], 00h + je _next + + cmp eax, 69666564h ;; defi + jne _next + cmp word ptr [esi+04h], 656eh ;; ne + jne _next + cmp byte ptr [esi+06h], 20h + jg _next + + _lDefErrFGS: + mov dword ptr [_xErrorTable], offset _sErr_FailedDef + mov dword ptr [_xErrorTable+04h], edi + _lDefErrFGSEX: + movsb + cmp word ptr [esi], 0a0dh ;; nl + jne _lDefErrFGSEX + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; pre proc + _lbl: + cmp al, 23h ;; # + jne _next + + ;;---------------- + ;; #if + cmp eax, 20666923h ;; #if_ + jne _lCRElifDX + mov byte ptr [_bIsPPCEn], al + + mov dword ptr [_hBtn], eax + mov word ptr [edi], 6901h ;; #i + add esi, 02h + add edi, 02h + jmp _lCRScan + + _lCRElifDX: + cmp word ptr [esi+01h], 6669h ;; if + jne _lCRElifOS + + ;;---------------- + ;; error + _lCRErrPrePorc: + mov dword ptr [_xErrorTable], offset _sErr_PreProc + mov dword ptr [_xErrorTable+04h], edi + _lCRErrPrePorcEX: + movsb + cmp word ptr [esi], 0a0dh ;; nl + jne _lCRErrPrePorcEX + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; #else #elseif + + ;;---------------- + ;; close + _lCRElifOX: + mov dword ptr [_hBtn], eax + _lCRElifFF: + mov word ptr [esi], 6901h ;; #i + + pop eax + test eax, eax + jz _lBlockErr + + mov dword ptr [eax+02h], edi + mov word ptr [edi], 7901h ;; #y + mov dword ptr [edi+02h], eax + mov dword ptr [edi+06h], 06060606h ;; ex backspace + mov dword ptr [edi+0ah], 06060606h + mov word ptr [edi+0eh], 0a0dh ;; new line + + add edi, 10h + movsd + jmp _lCRScan + ;;---------------- + + _lCRElifOS: + cmp eax, 736c6523h ;; #els + jne _lCRElifER + cmp dword ptr [esi+04h], 20666965h ;; eif_ + je _lCRElifOX + + cmp byte ptr [esi+04h], 65h ;; e + jne _lCRElifER + cmp byte ptr [esi+05h], 20h + jbe _lCRElifOX + ;;---------------- + + ;;---------------- + ;; error + _lCRElifER: + cmp eax, 72726523h ;; #err + jne _lCRElif_AAX + cmp word ptr [esi+04h], 726fh ;; or + jne _lCRElif_AAX + cmp byte ptr [esi+06h], 22h + jg _lCRElif_AAX + + mov word ptr [esi], 6701h ;; #g + movsd + movsw + jmp _lCRScan + ;;---------------- + + ;;---------------- + _lCRElif_AAX: + cmp eax, 66656423h ;; #def + je _lCRElif_SOX + cmp eax, 74657323h ;; #set + je _lCRElif_OOX + cmp eax, 646e7523h ;; #und + je _lCRElif_OOX + cmp eax, 636e6923h ;; #inc + jne _lCRElif_GU + + _lCRElif_OOX: + inc esi + jmp _lCRScanLineSx + + _lCRElif_SOX: + inc esi + cmp byte ptr [_bIsPPCEn], 00h + je _lCRScanLineSx + jmp _lDefErrFGS + ;;---------------- + + ;;---------------- + ;; guard + _lCRElif_GU: + cmp eax, 61756723h ;; #gua + jne _lCRElifFX + cmp word ptr [esi+04h], 6472h ;; rd + jne _lCRElifFX + + add esi, 06h + xor eax, eax + + _lCRElif_GU_01: + inc esi + cmp byte ptr [esi], 20h ;; bs + je _lCRElif_GU_01 + cmp byte ptr [esi], 09h ;; tab + je _lCRElif_GU_01 + + mov ebp, offset _bFuncCodeLocals + + _lCRElif_GU_02: + mov edx, esi + + _lCRElif_GU_03: + mov al, byte ptr [edx] + cmp al, byte ptr [ebp] + jne _lCRElif_GU_04 + inc ebp + inc edx + jmp _lCRElif_GU_03 + + _lCRElif_GU_04: + cmp byte ptr [ebp], 00h + jne _lCRElif_GU_Next + cmp byte ptr [_bAscii_00+eax], ah + je _lRetnGuard + + _lCRElif_GU_Next: + inc ebp + cmp byte ptr [ebp], 00h + jne _lCRElif_GU_Next + inc ebp + cmp byte ptr [ebp], 00h + jne _lCRElif_GU_02 + + _lCRElif_GU_Add: + mov al, byte ptr [esi] + cmp byte ptr [_bAscii_00+eax], ah + je _lCRScan + mov byte ptr [ebp], al + inc esi + inc ebp + jmp _lCRElif_GU_Add + ;;---------------- + + ;;---------------- + ;; #endif + _lCRElifFX: + cmp eax, 646e6523h ;; #end + jne _lCRErrPrePorc + cmp word ptr [esi+04h], 6669h ;; if + jne _lCRErrPrePorc + mov byte ptr [_bIsPPCEn], 00h + + jmp _lCRElifFF + ;;---------------- + ;;---------------- + + ;;---------------- + ;; textmacros + + ;;---------------- + ;; start + _lCRTTInOnce: + cmp dword ptr [esi+08h], 636e5f6fh ;; o_nc + jne _next + cmp word ptr [esi+0ch], 2065h ;; e_ + jne _next + add esi, 0dh + jmp _lCRTTInOX + + _lbl: + cmp eax, 74786574h ;; text + jne _next + cmp dword ptr [esi+04h], 7263616dh ;; macr + jne _next + cmp word ptr [esi+08h], 206fh ;; o_ + jne _lCRTTInOnce + + add esi, 09h + _lCRTTInOX: + mov dword ptr [edi-04h], 69666564h ;; defi + mov word ptr [edi], 656eh ;; ne + add edi, 02h + + mov eax, esi + _lCRTTIn: + inc eax + cmp byte ptr [eax], 0ah ;; nl + je _lCRTTInEnd + cmp dword ptr [eax], 656b6174h ;; take + jne _lCRTTIn + cmp word ptr [eax+04h], 2073h ;; s_ + jne _lCRTTIn + + mov dword ptr [eax], 20202020h ;; bs + mov word ptr [eax+04h], 1320h ;; _( + + _lCRTTInEX: + inc eax + cmp byte ptr [eax], 2ch ;; , + jne _lCRTTInFF + mov byte ptr [eax], 14h + jmp _lCRTTInEX + + _lCRTTInFF: + cmp byte ptr [eax], 0ah ;; nl + jne _lCRTTInEX + + cmp byte ptr [eax-01h], 0dh + jne _lCRTTInFX + mov byte ptr [eax-01h], 20h ;; bs + + _lCRTTInFX: + mov byte ptr [eax], 11h + jmp _lCRScan + + _lCRTTInEnd: + cmp byte ptr [eax-01h], 0dh + jne _lCRTTInDX + mov byte ptr [eax-01h], 20h + _lCRTTInDX: + mov byte ptr [eax], 12h + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; end + _lbl: + cmp eax, 74646e65h ;; endt + jne _next + cmp dword ptr [esi+04h], 6d747865h ;; extm + jne _next + cmp dword ptr [esi+08h], 6f726361h ;; acro + jne _next + cmp byte ptr [esi+0ch], 20h ;; _ + jg _next + + sub edi, 04h + add esi, 0ch + + pop eax + test eax, eax + jz _lBlockErr + + cmp word ptr [edi-02h], 0a0dh ;; new line + je _lCLTMNE + mov word ptr [edi], 0a0dh ;; new line + add edi, 02h + _lCLTMNE: + mov dword ptr [eax+02h], edi + mov word ptr [edi], 7901h ;; #y + mov dword ptr [edi+02h], eax + mov dword ptr [edi+06h], 06060606h ;; ex backspace + mov dword ptr [edi+0ah], 06060606h + mov word ptr [edi+0eh], 0a0dh ;; new line + + add edi, 10h + jmp _lCRScanLine + ;;---------------- + + ;;---------------- + ;; run + _lbl: + cmp eax, 746e7572h ;; runt + jne _next + cmp dword ptr [esi+04h], 6d747865h ;; extm + jne _next + cmp dword ptr [esi+08h], 6f726361h ;; acro + jne _next + cmp byte ptr [esi+0ch], 20h ;; _ + jne _next + + lea eax, [esi+0ah] + sub edi, 04h + add esi, 0dh + mov ebx, eax + + _lCRMacroRun: + inc eax + cmp byte ptr [eax], 22h ;; " + jne _lCRMacroRunEX + + test ebx, ebx + jz _lCRMacroRunB + + _lCRMacroRunA: + mov byte ptr [eax], 0bh + xor ebx, ebx + + ;;---------------- + ;; special for Strilanc + cmp word ptr [eax+01h], 2f2fh ;; // + jne _lCRMacroRun + + mov word ptr [eax+01h], 3501h ;; #5 + jmp _lCRMacroRun + ;;---------------- + + _lCRMacroRunB: + mov byte ptr [eax], 0bh + inc ebx + jmp _lCRMacroRun + + _lCRMacroRunEX: + cmp byte ptr [eax], 0ah ;; nl + jne _lCRMacroRun + + cmp ebx, 01h + jbe _lCRScan + + _lCRMacroRunSF: + dec eax + cmp byte ptr [eax], 0ah + je _lCRScan + cmp byte ptr [eax], 28h ;; ( + je _lCRMacroRunDF + cmp byte ptr [eax], 29h ;; ) + jne _lCRMacroRunSF + _lCRMacroRunDF: + mov byte ptr [eax], 20h ;; bs + jmp _lCRMacroRunSF + ;;---------------- + ;;---------------- + + ;;---------------- + ;; zinc and boa + _lbl: + cmp eax, 636e697ah ;; zinc + jne _next + cmp byte ptr [esi+04h], 20h + jg _next + jmp _lCRFXSyn + + _lbl: + cmp ax, 6f62h ;; bo + jne _next + cmp byte ptr [esi+02h], 61h ;; a + jne _next + cmp byte ptr [esi+03h], 20h + jg _next + + _lCRFXSyn: + mov eax, dword ptr [_dSynDesc] + mov dword ptr [eax], esi + mov dword ptr [edi-04h], 0a0d3901h ;; #9 nl + + _lCREndFXSyn: + inc esi + +;; cmp byte ptr [esi], 00h +;; je + + cmp dword ptr [esi], 7a646e65h ;; endz + jne _lCREndFXSynEX + cmp word ptr [esi+04h], 6e69h ;; in + jne _lCREndFXSynEX + cmp byte ptr [esi+06h], 63h ;; c + jne _lCREndFXSynEX + cmp byte ptr [esi+07h], 20h ;; bs + jb _lCREndFXSynDX + + _lCREndFXSynEX: + cmp dword ptr [esi], 62646e65h ;; endb + jne _lCREndFXSyn + cmp word ptr [esi+04h], 616fh ;; oa + jne _lCREndFXSyn + cmp byte ptr [esi+06h], 20h ;; bs + jg _lCREndFXSyn + + _lCREndFXSynDX: + inc esi + cmp word ptr [esi-02h], 0a0dh + jne _lCREndFXSynDX + + mov dword ptr [eax+04h], esi + add eax, 08h + mov dword ptr [_dSynDesc], eax + jmp _lCRScanLineSx + ;;---------------- + + ;;---------------- + ;; debug? + _lbl: + cmp eax, 75626564h ;; debu + jne _next + cmp byte ptr [esi+04h], 67h ;; g + jne _next + cmp byte ptr [esi+05h], 20h ;; bs or tab + jg _next + jmp dword ptr [_dDbgOff] + + _lCRDebugRem: + inc esi + cmp byte ptr [esi], 0ah ;; nl + jne _lCRDebugRem + jmp _lCRScanLine + + _lCRDebugAdd: + add esi, 06h + jmp _lCRScanLineSx + ;;---------------- + + ;;---------------- + ;; include? + _lbl: + cmp eax, 6c636e69h ;; incl + jne _lCRScanEx + cmp dword ptr [esi+04h], 20656475h ;; ude_ + jne _lCRScanEx + lea ebx, [esi+07h] + + _lIncSearch: + inc ebx + cmp byte ptr [ebx], 22h ;; " + je _lIncParveName + cmp byte ptr [ebx], 20h ;; bs + je _lIncSearch + cmp byte ptr [ebx], 09h ;; tab + je _lIncSearch + + ;;---------------- + ;; error + mov dword ptr [_xErrorTable], offset _sErr_Base + movsd + movsd + mov dword ptr [_xErrorTable+04h], edi + _lIncludeErrEX: + movsb + cmp word ptr [esi], 0a0dh + jne _lIncludeErrEX + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + _lIncParveName: + mov edx, dword ptr [_dCurrDirEnd] + mov ebp, dword ptr [_dMapPathEnd] + mov ecx, ebx + inc ebx + _lIncLib: + inc ecx + mov al, byte ptr [ecx] + inc edx + inc ebp + cmp al, 22h ;; " + mov byte ptr [edx], al + mov byte ptr [ebp], al + jne _lIncLib + mov byte ptr [ecx], 00h + mov byte ptr [edx], 00h + mov byte ptr [ebp], 00h + + lea esi, [ecx+01h] ;; new sorc script position + + ;;---------------- + ;; open file + push 00h + push FILE_ATTRIBUTE_NORMAL + push OPEN_EXISTING + push 00h + push FILE_SHARE_READ + push GENERIC_READ + push offset _sCurrDir + call _imp__CreateFileA@28 + + inc eax + jnz _lIncNoReopen + + push 00h + push FILE_ATTRIBUTE_NORMAL + push OPEN_EXISTING + push 00h + push FILE_SHARE_READ + push GENERIC_READ + push offset _sMapPathEX + call _imp__CreateFileA@28 + + inc eax + jnz _lIncNoReopen + + push 00h + push FILE_ATTRIBUTE_NORMAL + push OPEN_EXISTING + push 00h + push FILE_SHARE_READ + push GENERIC_READ + push ebx + call _imp__CreateFileA@28 + + inc eax + jnz _lIncNoReopen + + ;;---------------- + ;; cannot open file + mov ecx, esi + mov dword ptr [_xErrorTable], offset _sErr_CantOpenFile + mov dword ptr [_xErrorTable+04h], edi + _lIncludeErr: + dec esi + cmp byte ptr [esi-01h], 0ah + jne _lIncludeErr + sub ecx, esi + rep movsb + mov byte ptr [edi-01h], 22h ;; " + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; read file + _lIncNoReopen: + dec eax ;; restore eax + sub esp, 08h ;; old esi, mem handle, mem address + mov ebx, eax ;; ebx = file handle + + push esi ;; old script position + + push 00h + push eax + call _imp__GetFileSize@8 + + mov ebp, eax ;; ebp = file size + + push 00h ;; ---> _imp__ReadFile@20 + push offset _dBuffer ;; ---> _imp__ReadFile@20 + push eax ;; ---> _imp__ReadFile@20 + add eax, 04h + + push eax + push GMEM_ZEROINIT + call _imp__GlobalAlloc@8 + push eax + mov dword ptr [esp+14h], eax + call _imp__GlobalLock@4 + mov esi, eax + mov dword ptr [esp+14h], eax + add ebp, eax + + push eax + push ebx + call _imp__ReadFile@20 + + push ebx + call _imp__CloseHandle@4 + + mov dword ptr [ebp], 00007201h ;; #r__ + push 00h ;; for safe + + jmp _lCRScanLine + ;;---------------- + ;;---------------- + + ;;---------------- + ;; remove bs + _lBSRemBase equ $ + _lCRScanBS: + inc esi + + _lCRScan: + mov eax, dword ptr [esi] + + _lCRScanEx: ;; <--- + cmp al, 20h + jne _next + + ;;---------------- + ;; check prew blocks + cmp word ptr [edi-06h], 7801h ;; #x + je _lCRScanBS + cmp word ptr [edi-06h], 7901h ;; #y + je _lCRScanBS + ;;---------------- + + _lCRBSStart: ;; test previous char + xor ebx, ebx + mov bl, byte ptr [edi-01h] + mov bl, byte ptr [_bAscii_01+ebx] + add ebx, _lBSRemBase + jmp ebx + + _lCRBSNext: ;; test next chaqr + xor ebx, ebx + mov bl, ah + mov bl, byte ptr [_bAscii_02+ebx] + add ebx, _lBSRemBase + jmp ebx + + _lCRBSAdd: + mov byte ptr [edi], 20h ;; _ + inc esi + inc edi + jmp _lCRScan + + _lCRIncDec: + cmp ah, 2bh ;; ++ + je _lCRBSAdd + cmp ah, 2dh ;; -- + je _lCRBSAdd + jmp _lCRScanBS + + _lbl: + cmp al, 09h ;; tab + je _lCRBSStart + ;;---------------- + + ;;---------------- + ;; new line + cmp al, 0ah + je _lCRScanLine + cmp al, 0dh + je _lCRScanLine + ;;---------------- + + ;;---------------- + ;; error with 80+ char + cmp al, 80h + jb _next + + mov dword ptr [_xErrorTable], offset _sErr_BadChar + mov dword ptr [_xErrorTable+04h], edi + movsb + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; ascii int + _lbl: + cmp al, 27h ;; ' + jne _next + + xor eax, eax + mov al, byte ptr [edi-01h] + inc esi + cmp byte ptr [_bAscii_00+eax], ah + je _lCRASCII_FX + mov byte ptr [edi], 20h ;; bs + inc edi + + _lCRASCII_FX: + mov word ptr [edi], 7830h ;; 0x + add edi, 02h + mov ecx, 05h + + _lCRASCII: + mov al, byte ptr [esi] + cmp al, 27h ;; ' + je _lCRASCII_EX + + shr eax, 04h + and al, 0fh + cmp al, 0ah + sbb al, 69h + das + stosb + mov al, byte ptr [esi] + and al, 0fh + cmp al, 0ah + sbb al, 69h + das + stosb + + inc esi + dec ecx + jnz _lCRASCII + + ;;---------------- + ;; error + mov dword ptr [_xErrorTable], offset _sErr_IncorrectLiteral + dec edi + mov dword ptr [_xErrorTable+04h], edi + inc edi + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + _lCRASCII_EX: + inc esi + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; textmacro fx + _lbl: + cmp al, 11h + jne _next + inc esi + + lea eax, [edi+06h] + mov dword ptr [edi], 74747474h ;; tttt + mov dword ptr [edi+04h], 78013d29h ;; )={ + add edi, 0ch + push eax + jmp _lCRScan + + _lbl: + cmp al, 12h + jne _next + inc esi + + lea eax, [edi+01h] + mov dword ptr [edi], 0078013dh ;; ={ + add edi, 07h + push eax + jmp _lCRScan + + _lbl: + cmp al, 13h + jne _next + + inc esi + mov byte ptr [edi], 28h ;; ( + mov dword ptr [edi+01h], 74747474h + add edi, 05h + jmp _lCRScan + + _lbl: + cmp al, 14h + jne _next + + _lCRGFDD: + inc esi + cmp byte ptr [esi], 09h ;; tab + je _lCRGFDD + cmp byte ptr [esi], 20h ;; bs + je _lCRGFDD + +; inc edi +; _lCRGFGG: +; dec edi +; cmp byte ptr [edi], 20h + + mov dword ptr [edi], 74747474h ;; tttt + mov byte ptr [edi+04h], 2ch ;; , + mov dword ptr [edi+05h], 74747474h ;; tttt + add edi, 09h + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; comments? vJass parser instruction? + _lbl: + cmp ax, 2f2fh ;; // + jne _lCRCommTest_01 + cmp byte ptr [esi+02h], 21h ;; ! + jne _lComm_00 + mov dword ptr [edi], 20212f2fh ;; //!_ + add edi, 04h + add esi, 03h + jmp _lCRScanLineSx + _lComm_00: + inc esi + cmp byte ptr [esi], 00h + je _lCREnd + cmp word ptr [esi], 0a0dh + jne _lComm_00 + jmp _lCRScanLine + + _lCRCommTest_01: + cmp ax, 2a2fh ;; /* + jne _next + + mov edx, 01h + _lCRCommNextEx: + inc esi + _lCRCommNext: + inc esi + cmp byte ptr [esi], 00h + je _lCRErrorComm + cmp word ptr [esi], 2f2fh ;; // + jne _lCRCommNextX + inc esi + _lCRCommRemX: + inc esi + cmp byte ptr [esi], 00h + je _lCREnd + cmp word ptr [esi], 0a0dh + jne _lCRCommRemX + jmp _lCRCommNextEx + _lCRCommNextX: + cmp word ptr [esi], 2f2ah ;; */ + je _lCRCommSX + cmp word ptr [esi], 2a2fh ;; /* + jne _lCRCommNext + inc edx + jmp _lCRCommNextEx + _lCRCommSX: + dec edx + jnz _lCRCommNextEx + add esi, 02h + jmp _lCRScan + + ;;---------------- + ;; error + _lCRErrorComm: + mov dword ptr [_xErrorTable], offset _sErr_UnclosedComment + mov dword ptr [_xErrorTable+04h], edi + mov dword ptr [edi], 2a2fh ;; /* + add edi, 02h + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; textmacro arg + _lbl: + cmp al, 24h ;; $ + jne _next + + xor eax, eax + mov ebx, esi + inc esi + + _lCRMArgFX: + inc ebx + mov al, byte ptr [ebx] + cmp byte ptr [_bAscii_00+eax], ah + jne _lCRMArgFX + + cmp byte ptr [ebx], 24h ;; $ + je _lCRMArgSF + mov word ptr [edi], 7830h ;; 0x + add edi, 02h + jmp _lCRScan + + _lCRMArgSF: + mov al, byte ptr [esi-02h] + cmp byte ptr [_bAscii_00+eax], ah + jz _lCRMArg_00 + + mov word ptr [edi], 2323h ;; ## + mov dword ptr [edi+02h], 74747474h ;; tttt + add edi, 06h + jmp _lCRMArg_01 + + _lCRMArg_00: + mov dword ptr [edi], 74747474h ;; tttt + add edi, 04h + + _lCRMArg_01: + movsb + cmp esi, ebx + jb _lCRMArg_01 + + inc esi + mov al, byte ptr [esi] + cmp byte ptr [_bAscii_00+eax], ah + + je _lCRMArg_02 + + mov dword ptr [edi], 74747474h ;; tttt + mov word ptr [edi+04h], 2323h ;; ## + add edi, 06h + jmp _lCRScan + + _lCRMArg_02: + mov dword ptr [edi], 74747474h ;; tttt + add edi, 04h + cmp byte ptr [esi], 24h ;; $ + jne _lCRScan + mov word ptr [edi], 2323h ;; ## + add edi, 02h + jmp _lCRScan + + _lbl: + cmp ax, 3501h ;; #5 + jne _next + + add esi, 02h + mov word ptr [edi], 2f2fh ;; // + add edi, 02h + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; error with */ + _lbl: + cmp ax, 2f2ah ;; */ + jne _next + + mov dword ptr [_xErrorTable], offset _sErr_BadComment + mov dword ptr [_xErrorTable+04h], edi + mov dword ptr [edi], 2f2ah ;; /* + add edi, 02h + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; line ex + _lbl: + cmp al, 5ch ;; \ + jne _next + mov edx, esi + + _lCRSBS_00: + inc edx + + cmp byte ptr [edx], 20h ;; bs + je _lCRSBS_00 + cmp byte ptr [edx], 09h ;; tab + je _lCRSBS_00 + cmp byte ptr [edx], 5ch ;; \ + je _lCRSBS_00 + + cmp word ptr [edx], 2f2fh ;; // + je _lCRSBS_02 + + cmp word ptr [edx], 6201h ;; #b + je _lCRScanBS + + cmp word ptr [edx], 0a0dh ;; nl + je _lCRSBS_01 + + _lCRSBS_03: + movsb + jmp _lCRScan + + _lCRSBS_01: + inc esi + mov word ptr [edx], 6201h ;; #b + jmp _lCRScan + + _lCRSBS_02: + cmp byte ptr [edx+02h], 21h ;; ! + je _lCRSBS_03 + + _lCRSBS_04: + mov byte ptr [edx], 20h ;; bs + inc edx + + cmp word ptr [edx], 0a0dh ;; nl + jne _lCRSBS_04 + + inc esi + mov word ptr [edx], 6201h ;; #b + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; ex new line + _lbl: + cmp al, 3bh ;; ; + jne _next + inc esi + jmp _lCRScanLine + ;;---------------- + + ;;---------------- + ;; blocks + ;;---------------- + ;; x + _lbl: + cmp al, 7bh ;; { + jne _next + + _lCRBlockCheck: + cmp word ptr [edi-02h], 0a0dh + jne _lCRBlockCheckEnd + sub edi, 02h + _lCRBlockCheckEnd: + push edi + mov word ptr [edi], 7801h ;; #x + inc esi + add edi, 06h + jmp _lCRScan ;; ??? + ;;---------------- + + ;;---------------- + ;; y + _lbl: + cmp al, 7dh ;; } + jne _next + _lCRCloseBlock: + pop eax + test eax, eax + jz _lBlockErr + cmp word ptr [edi-02h], 0a0dh ;; new line + je _lCLAddNE + mov word ptr [edi], 0a0dh ;; new line + + add edi, 02h + _lCLAddNE: + mov dword ptr [eax+02h], edi + mov word ptr [edi], 7901h ;; #y + mov dword ptr [edi+02h], eax + mov dword ptr [edi+06h], 06060606h ;; ex backspace + mov dword ptr [edi+0ah], 06060606h + mov word ptr [edi+0eh], 0a0dh ;; new line + + inc esi + add edi, 10h + jmp _lCRScanLine + + ;;---------------- + ;; error + _lBlockErr: + mov dword ptr [_xErrorTable], offset _sErr_BadBlock + mov dword ptr [_xErrorTable+04h], edi + mov byte ptr [edi], 7dh ;; } + inc edi + mov dword ptr [_xErrorTable+08h], edi + + jmp _lErrIn + ;;---------------- + ;;---------------- + ;;---------------- + + ;;---------------- + ;; return from included file + _lbl: + cmp ax, 7201h ;; #r + jne _next + _lRetnGuard: + pop eax ;; for safe + test eax, eax + jnz _lIncRetErr + pop esi + call _imp__GlobalUnlock@4 + call _imp__GlobalFree@4 + jmp _lCRScanLine + + ;;---------------- + ;; error + _lIncRetErr: + mov dword ptr [_xErrorTable], offset _sErr_BadBlockInFile + mov dword ptr [_xErrorTable+04h], eax + inc eax + mov dword ptr [_xErrorTable+08h], eax + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; #b + _lbl: + cmp ax, 6201h ;; #b + jne _next + add esi, 02h + mov byte ptr [edi], 20h ;; bs + inc edi + jmp _lCRScan + ;;---------------- + + ;;---------------- + ;; strings + _lbl: + cmp al, 22h ;; " + jne _next + mov ebp, edi + mov ecx, 0800h + jmp _lCRStringDX + + _lCRStringEX: + movsb + _lCRStringDX: + movsb + _lCRStringSX: + cmp word ptr [esi], 0a0dh ;; nl + jne _lCRStringNext + mov word ptr [edi], 6e5ch ;; \n + add esi, 02h + add edi, 02h + jmp _lCRStringSX + _lCRStringNext: + cmp byte ptr [esi], 00h ;; null + je _lCRStringError + cmp byte ptr [esi], 5ch ;; \ + je _lCRStringEX + dec ecx + jz _lCRStringError + cmp byte ptr [esi], 22h ;; " + jne _lCRStringDX + movsb + jmp _lCRScan + + ;;---------------- + ;; not closed string + _lCRStringError: + mov dword ptr [_xErrorTable], offset _sErr_UnclosedString + mov dword ptr [_xErrorTable+04h], ebp + mov dword ptr [_xErrorTable+08h], edi + + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; null and other + _lbl: + cmp byte ptr [esi], 00h ;; null + je _lCREnd + movsb + jmp _lCRScan + ;;---------------- + + ;;---------------- + _lCREnd: + cmp dword ptr [_dStackPos], esp + je _next + ;;---------------- + ;; error + mov dword ptr [_xErrorTable], offset _sErr_UnclosedBlock + pop eax + add eax, 02h + mov dword ptr [_xErrorTable+04h], eax + inc eax + mov dword ptr [_xErrorTable+08h], eax + jmp _lErrIn + ;;---------------- + _lbl: + pop eax ;; for safe + ;;---------------- + + mov esi, dword ptr [esp+04h] + add edi, 04h + mov dword ptr [_dSynDesc], offset _xSynDesc ;; reset + push edi + ;;---------------- + + mov _dCurrStr, offset _sProg_02 + mov eax, 28h + call _lSetProg + + ;;---------------- + ;; build define block + dec esi + mov ebx, offset _lDefX + + ;;---------------- + ;; sysdefines + + ;;---------------- + ;; date time + push offset _xSysTime + call _imp__GetLocalTime@4 + + mov ecx, 0ah + xor eax, eax + xor edx, edx + mov ax, word ptr [_xSysTime] + + div ecx + add dl, 30h + mov byte ptr [_sDate+03h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+02h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+01h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate], dl + + mov byte ptr [_sDate+04h], 2eh ;; . + + mov al, byte ptr [_xSysTime+02h] + + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+06h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+05h], dl + + mov byte ptr [_sDate+07h], 2eh ;; . + + mov al, byte ptr [_xSysTime+06h] + + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+09h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sDate+08h], dl + + mov byte ptr [_sDate+0ah], 03h + + mov al, byte ptr [_xSysTime+08h] + + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime+01h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime], dl + + mov byte ptr [_sTime+02h], 3ah ;; : + + mov al, byte ptr [_xSysTime+0ah] + + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime+04h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime+03h], dl + + mov byte ptr [_sTime+05h], 3ah ;; : + + mov al, byte ptr [_xSysTime+0ch] + + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime+07h], dl + xor edx, edx + div ecx + add dl, 30h + mov byte ptr [_sTime+06h], dl + + mov byte ptr [_sTime+08h], 03h + + mov dword ptr [ebx], offset _sDateL + mov dword ptr [ebx+04h], offset _sDate + mov dword ptr [ebx+10h], offset _sTimeL + mov dword ptr [ebx+14h], offset _sTime + ;;---------------- + + ;;---------------- + ;; weather + mov dword ptr [ebx+20h], offset _sWeatherL + mov dword ptr [ebx+24h], offset _sWether + ;;---------------- + + ;;---------------- + ;; version + _lbl: + mov eax, dword ptr [_dWarVerSL] + mov dword ptr [ebx+30h], offset _sWarVer + mov dword ptr [ebx+34h], eax + ;;---------------- + + ;;---------------- + ;; count + mov dword ptr [ebx+40h], offset _sCountL + mov dword ptr [ebx+44h], offset _sCntSpec + ;;---------------- + + ;;---------------- + ;; funcname + mov dword ptr [ebx+50h], offset _sFuncNameL + mov dword ptr [ebx+54h], offset _sFuncName + ;;---------------- + + ;;---------------- + ;; debug + cmp dword ptr [_dDbgOff], offset _lCRDebugAdd + jne _next + + mov dword ptr [ebx+60h], offset _sDebugL + mov dword ptr [ebx+64h], offset _sTrue + add ebx, 10h + ;;---------------- + + _lbl: + add ebx, 60h + ;;---------------- + + xor ecx, ecx ;; current scope = 00h + mov _dStackPos, esp ;; save stack + + ;;---------------- + ;; line start + _lLineStart: + inc esi + _lLineStartEx: + mov eax, dword ptr [esi] + ;;---------------- + + ;;---------------- + ;; define in + _lbl: + cmp eax, 69666564h ;; defi + jne _next + cmp word ptr [esi+04h], 656eh ;; ne + jne _next + cmp byte ptr [esi+06h], 20h ;; _ + jg _lDefInEX + + mov eax, esi + jne _lBlockCheckPre + inc esi + _lBlockCheckPre: + add esi, 06h + cmp word ptr [esi], 0a0dh ;; nl + jne _lBlockCheck_01 ;; single constant or block + add esi, 02h + mov edx, offset _lDefEx + mov word ptr [eax], 6401h ;; #d + jmp _lDefEx + + _lBlockCheck_01: + cmp word ptr [esi], 7801h ;; #x + jne _lBlockCheck_02 ;; single constant + mov word ptr [eax], 6401h ;; #d + mov eax, dword ptr [esi+02h] + add esi, 06h + mov dword ptr [eax], 6e650a0dh ;; __en + mov dword ptr [eax+04h], 66656464h ;; ddef + mov dword ptr [eax+08h], 20656e69h ;; ine_ + mov edx, offset _lDefEx + jmp _lDefEx + _lBlockCheck_02: + mov edx, offset _lLineStartEx + mov word ptr [eax], 6301h ;; #c + jmp _lDefEx + + _lDefInEX: + cmp byte ptr [esi+06h], 3ch ;; < + jne _next + mov word ptr [esi], 6301h ;; #c + mov edx, offset _lLineStartEx + add esi, 06h + jmp _lDefEx + ;;---------------- + + ;;---------------- + ;; enum in + _lbl: + cmp eax, 6d756e65h ;; enum + jne _next + cmp byte ptr [esi+04h], 28h ;; ( + je _lEnumInEX + cmp byte ptr [esi+04h], 20h ;; bs + jg _next + je _lEnumInBase + mov ebp, offset _dEnumDefTable-04h + jmp _lEnumInBlock + ;;---------------- + + ;;---------------- + ;; undef + _lbl: + cmp eax, 65646e75h ;; unde + jne _next + cmp word ptr [esi+04h], 2066h ;; f_ + je _lUndefNorm + + cmp word ptr [esi+04h], 3c66h ;; f< + jne _next + + ;;---------------- + ;; hard + mov word ptr [esi], 7501h ;; #u + add esi, 06h + _lUndefHard: + inc esi + cmp byte ptr [esi], 3eh ;; > + jne _lUndefHard + mov byte ptr [esi], 02h + jmp _lLineStartEx + ;;---------------- + + ;;---------------- + ;; norm + _lUndefNorm: + mov word ptr [esi], 7501h ;; #u + add esi, 06h + _lUndefNormEX: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + jne _lUndefNormEX + mov byte ptr [esi], 02h + jmp _lLineStartEx + ;;---------------- + ;;---------------- + + ;;---------------- + ;; setdef + _lbl: + cmp eax, 64746573h ;; setd + jne _next + cmp word ptr [esi+04h], 6665h ;; ef + jne _next + cmp byte ptr [esi+06h], 3ch ;; < + je _lSetdefHard + cmp byte ptr [esi+06h], 20h ;; bs + jne _next + + push ebx + mov edx, offset _lSerdefExit + xor eax, eax + xor ebp, ebp + lea edi, [esi+02h] + mov byte ptr [esi], 08h ;; setdef + add esi, 06h + mov ebx, _dDefTableSD+_dDFSize + + _lSetdef: + inc esi + mov al, byte ptr [esi] + cmp byte ptr [_bAscii_00+eax], ah ;; ah = 00h + jne _lSetdef + + _lSetdefEX: + cmp byte ptr [esi], 3dh ;; = + je _lSetdefClose + cmp word ptr [esi], 2928h ;; () + je _lSetdefFVEX + + ;;---------------- + ;; macro + mov byte ptr [esi], 02h + mov ebp, esi + _lSetdefArg: + inc esi + cmp byte ptr [esi], 3dh ;; = + jne _lSetdefArg + ;;---------------- + + ;;---------------- + ;; close setdef + _lSetdefClose: + mov byte ptr [esi], 02h + inc esi + + cmp word ptr [esi], 7801h ;; #x + je _lSetdefMultiline + + mov dword ptr [edi], esi + dec edi + mov dword ptr [_dDefTableSD+04h], esi + push edi + jmp _lDFFindValueEndRE ;; !!! + + _lSetdefMultiline: + mov eax, dword ptr [esi+02h] + add esi, 06h + mov dword ptr [edi], esi + mov byte ptr [eax], 03h + jmp _lDFFindValueEndEG + ;;---------------- + + _lSetdefFVEX: + add esi, 02h + jmp _lSetdefClose + + _lSetdefHard: +push ebx +mov edx, offset _lSerdefExit +xor ebp, ebp +lea edi, [esi+02h] +mov byte ptr [esi], 08h ;; setdef +add esi, 06h +mov ebx, _dDefTableSD+_dDFSize + _lSetdefHardEX: + inc esi + cmp byte ptr [esi], 3eh ;; > + jne _lSetdefHardEX +mov byte ptr [esi], 02h +inc esi + jmp _lSetdefEX + + ;;---------------- + ;; restore ebx + _lSerdefExit: + pop edi + mov eax, dword ptr [_dDefTableSD+0ch] + mov byte ptr [edi], al + pop ebx + jmp _lLineStartEx + ;;---------------- + ;;---------------- + + ;;---------------- + ;; scope + _lbl: + cmp eax, 706f6373h ;; scop + jne _next + cmp byte ptr [esi+04h], 65h ;; e + jne _next + cmp byte ptr [esi+05h], 20h ;; _ + jg _next + add esi, 05h + _lScopeIn: + inc esi + cmp word ptr [esi], 0a0dh + je _lLSIn + cmp word ptr [esi], 7801h ;; #x + jne _lScopeIn + mov eax, dword ptr [esi+02h] + mov dword ptr [esi], 05050505h + mov word ptr [esi+04h], 0a0dh + add esi, 04h + cmp word ptr [eax-02h], 0a0dh + je _lScopeInEX + mov word ptr [eax], 0a0dh + add eax, 02h + _lScopeInEX: + mov dword ptr [eax], 73646e65h ;; ends + mov dword ptr [eax+04h], 65706f63h ;; cope + _lLSIn: + push ecx + inc dword ptr [_dFreeScope] + mov ecx, _dFreeScope + lea eax, [offset _dScopeIn+ecx*04h] + mov dword ptr [eax], esi + jmp _lNextLineSx + ;;---------------- + + ;;---------------- + ;; library + _lbl: + cmp eax, 7262696ch ;; libr + jne _next + cmp dword ptr [esi+03h], 79726172h ;; rary + jne _next + cmp dword ptr [esi+07h], 636e6f5fh ;; _onc + jne _lLibExTest + cmp byte ptr [esi+0bh], 65h ;; e + jne _lLibExTest + cmp byte ptr [esi+0ch], 20h ;; _ + jg _lLibExTest + add esi, 0eh + jmp _lLibInEX + _lLibExTest: + cmp byte ptr [esi+07h], 20h ;; _ + jg _next + add esi, 08h + _lLibIn: + inc esi + _lLibInEX: + cmp word ptr [esi], 0a0dh + je short _lLSIn + cmp word ptr [esi], 7801h ;; #x + jne _lLibIn + mov eax, dword ptr [esi+02h] + mov dword ptr [esi], 05050505h + mov word ptr [esi+04h], 0a0dh + add esi, 04h + cmp word ptr [eax-02h], 0a0dh + je _lLibInSX + mov word ptr [eax], 0a0dh + add eax, 02h + _lLibInSX: + mov word ptr [eax], 6e65h ;; en + mov dword ptr [eax+02h], 62696c64h ;; dlib + mov dword ptr [eax+06h], 79726172h ;; rary + jmp _lLSIn + ;;---------------- + + ;;---------------- + ;; endscope + _lbl: + cmp eax, 73646e65h ;; ends + jne _next + cmp dword ptr [esi+04h], 65706f63h ;; cope + jne _next + cmp byte ptr [esi+08h], 20h ;; _ + jg _next + ;;---------------- + + ;;---------------- + ;; scope/library out + _lOut: + test ecx, ecx + jz _lLibScpErr + lea eax, [offset _dScopeOut+ecx*04h] + mov dword ptr [eax], esi + pop ecx + jmp _lNextLineSx + + ;;---------------- + ;; error + _lLibScpErr: + mov dword ptr [_xErrorTable], offset _sErr_EndLibScope + mov dword ptr [_xErrorTable+04h], esi + _lLibScpErrEX: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + jne _lLibScpErrEX + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + ;;---------------- + + ;;---------------- + ;; endlibrary + _lbl: + cmp eax, 6c646e65h ;; endl + jne _lNextLineSx + cmp dword ptr [esi+04h], 61726269h ;; ibra + jne _lNextLineSx + cmp word ptr [esi+08h], 7972h ;; ry + jne _lNextLineSx + cmp byte ptr [esi+0ah], 20h ;; _ + jbe _lOut + ;;---------------- + + ;;---------------- + ;; search new line + _lNextLineEx: + inc esi + _lNextLineSx: + cmp word ptr [esi], 0a0dh ;; new line + je _next + cmp word ptr [esi], 7801h ;; #x + je _lNextLineDx + cmp word ptr [esi], 7901h ;; #y + je _lNextLineDx + cmp byte ptr [esi], 00h + jne _lNextLineEx + jmp _lScanEnd + _lbl: + inc esi + jmp _lLineStart + + _lNextLineDx: + add esi, 06h + jmp _lLineStartEx ; _lNextLineSx + ;;---------------- + + ;;---------------- + ;; build enum + ;;---------------- + ;; named enum + + ;;---------------- + ;; error + _lEnumInErr: + mov dword ptr [_xErrorTable], offset _sErr_Base + mov dword ptr [_xErrorTable+04h], esi + inc esi + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + + _lEnumInEX: + xor eax, eax + add esi, 05h + mov dword ptr [_dBuffer], esi + mov ebp, offset _xEnumLabel + mov edi, dword ptr [ebp] + test edi, edi + jz _lEnumInEXCreateNew + + _lEnumInEXCheck: + lodsb + cmp byte ptr [_bAscii_00+eax], ah ;; ah = 00h + jne _lEnumInEXCheckEX + + cmp al, 29h ;; ) + jne _lEnumInErr + scasb + jne _lEnumInEXGetNext + mov eax, dword ptr [_dBuffer] + sub eax, 05h + jmp _lEnumInBlockEX + + _lEnumInEXCheckEX: + scasb + je _lEnumInEXCheck + + _lEnumInEXGetNext: + add ebp, 0ch + mov edi, dword ptr [ebp] + mov esi, dword ptr [_dBuffer] + test edi, edi + jnz _lEnumInEXCheck + + _lEnumInEXCreateNew: + mov dword ptr [ebp], esi + mov edi, dword ptr [_dEnumTablePointer] + mov dword ptr [edi], 80000000h + mov dword ptr [edi+04h], 0ffffffffh + lea eax, [edi+0ch] + mov dword ptr [edi+08h], eax + mov dword ptr [ebp+04h], edi + mov dword ptr [edi+0ch], 00000000h + mov dword ptr [edi+10h], 7fffffffh + mov dword ptr [edi+14h], 00000000h + lea eax, [edi+0ch] + mov dword ptr [ebp+08h], eax + add edi, 18h + mov dword ptr [_dEnumTablePointer], edi + mov eax, dword ptr [_dBuffer] + sub eax, 05h + + _lbl: + inc esi + cmp byte ptr [esi-01h], 29h ;; ) + jne _prew + + jmp _lEnumInBlockEX + ;;---------------- + + ;;---------------- + ;; base enum + _lEnumInBase: + mov word ptr [esi], 6301h ;; #c + add esi, 05h + mov ebp, offset _dEnumDefTable-04h + mov dword ptr [_dBuffer], offset _lLineStartEx + jmp _lEnumBStart + ;;---------------- + + ;;---------------- + ;; block enum + _lEnumInBlock: + mov eax, esi + add esi, 04h + _lEnumInBlockEX: + cmp word ptr [esi], 0a0dh ;; nl + je _lEnumInBlockFX + cmp word ptr [esi], 7801h ;; #x + je _lEnumInBlockSX + ;;---------------- + + ;;---------------- + ;; single lined + mov dword ptr [_dBuffer], offset _lLineStartEx + mov word ptr [eax], 6301h ;; #c + jmp _lEnumBStart + ;;---------------- + + ;;---------------- + _lEnumInBlockSX: + add esi, 04h + _lEnumInBlockFX: + add esi, 02h + mov dword ptr [_dBuffer], offset _lEnumMStart + mov word ptr [eax], 6401h ;; #d + jmp _lEnumBStart + ;;---------------- + + ;;---------------- + ;; start + + ;;---------------- + ;; exit from block + _lEnumMStart: + cmp word ptr [esi], 7901h ;; #y + jne _lEnumMStartEX + + mov word ptr [esi+0eh], 6401h ;; #d + add esi, 10h + jmp _lLineStartEx + + _lEnumMStartEX: + cmp dword ptr [esi], 65646e65h ;; ende + jne _lEnumBStart + cmp word ptr [esi+04h], 756eh ;; nu + jne _lEnumBStart + cmp byte ptr [esi+06h], 6dh ;; m + jne _lEnumBStart + cmp byte ptr [esi+07h], 20h ;; + jg _lEnumBStart + cmp word ptr [esi+07h], 0a0dh ;; nl + jne _lEnumInErr + + mov word ptr [esi+07h], 6401h ;; #d + add esi, 09h + jmp _lLineStartEx + ;;---------------- + + _lEnumBStart: + + ;;---------------- + ;; private ? + cmp dword ptr [esi], 76697270h ;; priv + jne _next + cmp dword ptr [esi+04h], 20657461h ;; ate_ + jne _next + add esi, 08h + mov dword ptr [ebx+08h], ecx + ;;---------------- + + _lbl: + mov dword ptr [ebx], esi ;; label + + cmp byte ptr [esi], 3ch ;; < + jne _lEnumNorm + + ;;---------------- + ;; hard enum + inc dword ptr [ebx] + _lEnumHard: + inc esi + cmp byte ptr [esi], 3eh ;; > + jne _lEnumHard + + mov byte ptr [esi], 02h ;; label end + inc esi + jmp _lEnumCheckRange + ;;---------------- + + ;;---------------- + ;; norm enum + _lEnumNorm: + xor eax, eax + dec esi + _lEnumNormEX: + inc esi + mov al, byte ptr [esi] + cmp byte ptr [_bAscii_00+eax], ah ;; ah = 00h + jnz _lEnumNormEX + ;;---------------- + + ;;---------------- + ;; ranged? + _lEnumCheckRange: + cmp byte ptr [esi], 28h ;; ( + je _lEnumRanged + ;;---------------- + + ;;---------------- + ;; simple + cmp byte ptr [esi], 2ch ;; , + jne _next + + mov byte ptr [esi], 02h ;; label end + inc esi + jmp _lEnumNextLabel + + _lbl: + cmp word ptr [esi], 0a0dh ;; nl +; jne + mov word ptr [esi], 0702h ;; label end ; enum out + add esi, 02h + + _lEnumNextLabel: + mov edi, dword ptr [ebp+08h] + mov eax, dword ptr [edi] + cmp eax, dword ptr [edi+04h] +; je + inc dword ptr [edi] + ;;---------------- + + ;;---------------- + ;; calculate string + push ebp + + mov edi, dword ptr [_dEnumStrPoint] + mov ebp, 0ah + mov byte ptr [edi], 03h ;; define value end + dec edi + _lbl: + xor edx, edx + div ebp + add edx, 30h + mov byte ptr [edi], dl + test eax, eax + jnz _prew + + mov dword ptr [ebx+04h], edi + add ebx, _dDFSize + + add edi, 0dh + mov dword ptr [_dEnumStrPoint], edi + + pop ebp + jmp dword ptr [_dBuffer] + ;;---------------- + + ;;---------------- + ;; ranged + _lEnumRanged: + ;;---------------- + ;;---------------- + + ;;---------------- + + ;;---------------- + ;; build defines + _lDefEx: + mov eax, dword ptr [esi] + + cmp ax, 0a0dh + jne _lDefCheck + add esi, 02h + jmp _lDefEx + + ;;---------------- + ;; exit + _lDefCheck: + cmp eax, 64646e65h ;; endd + jne _next + cmp dword ptr [esi+04h], 6e696665h ;; efin + jne _next + cmp byte ptr [esi+08h], 65h ;; e + jne _next + cmp byte ptr [esi+09h], 20h ;; _ + jg _next + + cmp byte ptr [esi+0ah], 06h + jne _lDefExitEX + add esi, 05h + + _lDefExitEX: + add esi, 09h + mov word ptr [esi-02h], 6401h ;; #d + jmp _lLineStartEx + ;;---------------- + + ;;---------------- + ;; private ? + _lDefPrivEX: + cmp dword ptr [esi+04h], 3c657461h ;; ate< + jne _next + add esi, 07h + jmp _lDefPrivSX + + _lbl: + cmp eax, 76697270h ;; priv + jne _next + cmp dword ptr [esi+04h], 20657461h ;; ate_ + jne _lDefPrivEX + add esi, 08h + _lDefPrivSX: + mov dword ptr [ebx+08h], ecx + ;;---------------- + + ;;---------------- + ;; define label + _lbl: + mov dword ptr [ebx], esi ;; find label + mov al, byte ptr [esi] + xor ebp, ebp + ;;---------------- + + cmp al, 3ch ;; < + jne _lDefNorm + inc dword ptr [ebx] + + _lDefHard: + inc esi + cmp byte ptr [esi], 3eh ;; > + jne _lDefHard + mov byte ptr [esi], 02h + inc esi + cmp byte ptr [esi], 3dh ;; = + je _lDFFindValue + cmp byte ptr [esi], 28h ;; ( + je _lDFFindArgValue + cmp word ptr [esi], 0a0dh ;; nl + je _lDFNull + + ;;---------------- + ;; error + _lDefErrorBase: + mov dword ptr [_xErrorTable], offset _sErr_BadDef + mov dword ptr [_xErrorTable+04h], esi + inc esi + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; check first char + _lDefNorm: + cmp al, 41h + jb _lDefErrorBase + cmp al, 5ah + jbe _next + cmp al, 61h + jb _lDefErrorBase + cmp al, 7ah + jg _lDefErrorBase + ;;---------------- + + ;;---------------- + ;; check define label + _lbl: + inc esi + mov al, byte ptr [esi] + cmp al, 3dh ;; = + je _lDFFindValue + cmp al, 28h ;; ( + je _lDFFindArgValue + cmp word ptr [esi], 0a0dh ;; nl + je _lDFNull + + cmp al, 5fh + je _prew + cmp al, 30h + jb _lDefErrorBase + cmp al, 39h + jbe _prew + cmp al, 41h + jb _lDefErrorBase + cmp al, 5ah + jbe _prew + cmp al, 61h + jb _lDefErrorBase + cmp al, 7ah + jg _lDefErrorBase + jmp _prew + ;;---------------- + + ;;---------------- + ;; null define + _lDFNullEX: + mov dword ptr [esi], 02h + add esi, 02h + _lDFNull: + mov word ptr [esi], 0302h ;; label end ; def end + inc esi + mov dword ptr [ebx+04h], esi + add ebx, _dDFSize + inc esi + jmp edx + ;;---------------- + + ;;---------------- + ;; macros + _lDFFindArgValue: + cmp dword ptr [esi], 0a0d2928h ;; () nl + je _lDFNullEX + cmp word ptr [esi], 2928h ;; () + jne _lDFFindArgValueSX + mov byte ptr [esi], 02h + add esi, 03h + jmp _lDFFindValueTX + + _lDFFindArgValueSX: + mov byte ptr [esi], 02h + mov ebp, esi + _lDFFindArgValueRe: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + je _lDFFindValueEndFS + cmp byte ptr [esi], 3dh ;; = + jne _lDFFindArgValueRe + ;;---------------- + + ;;---------------- + ;; close define + _lDFFindValue: + mov byte ptr [esi], 02h + inc esi + ;;---------------- + + ;;---------------- + ;; is it multilined define? + _lDFFindValueTX: + cmp word ptr [esi], 7801h ;; #x + je _lDFFindValueEndEx + ;;---------------- + + ;;---------------- + mov dword ptr [ebx+04h], esi + add ebx, _dDFSize + ;;---------------- + + ;;---------------- + _lDFFindValueEndRE: + cmp word ptr [esi], 0a0dh ;; nl + je _lDFFindValueEndRR + + _lDFFindValueEnd: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + jne _lDFFindValueEnd + _lDFFindValueEndRR: + mov byte ptr [esi], 03h + add esi, 02h + jmp _lDFArcCheckStart + + _lDFFindValueEndFS: + mov word ptr [esi], 0302h ;; label end ; def end + inc esi + mov dword ptr [ebx+04h], esi + add ebx, _dDFSize + inc esi + jmp _lDFArcCheckStart + ;;---------------- + + ;;---------------- + ;; multilined define + _lDFFindValueEndEx: + mov eax, dword ptr [esi+02h] + add esi, 06h + mov dword ptr [ebx+04h], esi + add ebx, _dDFSize + mov byte ptr [eax], 03h + _lDFFindValueEndEG: + lea esi, [eax+05h] + _lDFFindValueEndES: + inc esi + cmp word ptr [esi], 0a0dh + jne _lDFFindValueEndES + add esi, 02h +;; jmp _lDFArcCheckStart + ;;---------------- + + ;;---------------- + ;; parse arguments + _lDFArcCheckStart: + test ebp, ebp + jnz _lDFEAXLoad + jmp edx ;; exit + + _lDFEAXLoad: + mov ah, 7fh + _lDFNextArg: + inc ebp + cmp byte ptr [ebp], 29h ;; ) + jne _lDFArgReplace + jmp edx ;; exit - all arguments parsed + + _lDFArgReplace: + push ebp + inc ah + inc dword ptr [ebx+0ch-_dDFSize] + mov edi, dword ptr [ebx+04h-_dDFSize] + + dec edi + _lDFArgSearchWord: + inc edi + _lDFArgSearchWordEx: + cmp byte ptr [edi], 03h + je _lDFArgCheckEnd + + ;;---------------- + ;; strings + cmp byte ptr [edi], 22h ;; " + jne _lDFArgSearchWordSx + _lDFArgSearchWordDx: + inc edi + _lDFArgSearchWordRx: + cmp byte ptr [edi], 03h + je _lDFArgCheckEnd + cmp byte ptr [edi], 5ch ;; \ + jne _lDFArgSearchWordFx + add edi, 02h + jmp _lDFArgSearchWordRx + _lDFArgSearchWordFx: + cmp byte ptr [edi], 22h ;; " + jne _lDFArgSearchWordDx + jmp _lDFArgSearchWord + ;;---------------- + + _lDFArgSearchWordSx: + cmp byte ptr [edi], 01h + je _lDFArgSearchWordSS + cmp byte ptr [edi], 30h + jb _lDFArgSearchWord + cmp byte ptr [edi], 3ah + jb _lDFArgNextWord + cmp byte ptr [edi], 41h + jb _lDFArgSearchWord + cmp byte ptr [edi], 5bh + jb _lDFArgCheckWord + cmp byte ptr [edi], 5fh + je _lDFArgCheckWord + cmp byte ptr [edi], 61h + jb _lDFArgSearchWord + cmp byte ptr [edi], 7bh + jb _lDFArgCheckWord + cmp byte ptr [edi], 7ch + je _lDFArgSearchWord + + _lDFArgNextWord: + inc edi + _lDFArgNextWordSS: + cmp byte ptr [edi], 30h + jb _lDFArgSearchWordEx + cmp byte ptr [edi], 3ah + jb _lDFArgNextWord + cmp byte ptr [edi], 41h + jb _lDFArgSearchWordEx + cmp byte ptr [edi], 5bh + jb _lDFArgNextWord + cmp byte ptr [edi], 5fh + je _lDFArgNextWord + cmp byte ptr [edi], 61h + jb _lDFArgSearchWordEx + cmp byte ptr [edi], 7bh + jb _lDFArgNextWord + jmp _lDFArgSearchWordEx + + ;;---------------- + ;; special + _lDFArgSearchWordSS: + cmp word ptr [edi], 7801h ;; #x + je _lDFArgSearchWordSSEX + cmp word ptr [edi], 7901h ;; #y + je _lDFArgSearchWordSSEX + + cmp word ptr [edi], 6901h ;; #i + jne _lDFArgSearchWordSSNorm + + add edi, 02h + jmp _lDFArgSearchWordSx + + _lDFArgSearchWordSSEX: + add edi, 06h + jmp _lDFArgSearchWordSx + + _lDFArgSearchWordSSNorm: + add edi, 02h + jmp _lDFArgSearchWordSx + ;;---------------- + + _lDFArgCheckWord: + mov ebp, dword ptr [esp] + mov dword ptr [_dBuffer], edi + jmp _lDFArgCheckWordStartEX + + _lDFArgCheckWordStart: + inc ebp + inc edi + _lDFArgCheckWordStartEX: + mov al, byte ptr [ebp] + cmp al, 29h + je _lDFArgCheckWordEnd + cmp al, 2ch + je _lDFArgCheckWordEnd + cmp al, 30h + jb _lDFArgCheckError ;_lDFArgCheckWordEnd + cmp al, 3ah + jb _lDFArgCheckTest + cmp al, 41h + jb _lDFArgCheckError ;_lDFArgCheckWordEnd + cmp al, 5bh + jb _lDFArgCheckTest + cmp al, 5fh + je _lDFArgCheckTest + cmp al, 61h + jb _lDFArgCheckError ;_lDFArgCheckWordEnd + cmp al, 7bh + jb _lDFArgCheckTest + + ;;---------------- + ;; error + _lDFArgCheckError: + mov dword ptr [_xErrorTable], offset _sErr_BadChar + mov dword ptr [_xErrorTable+04h], ebp + inc ebp + mov dword ptr [_xErrorTable+08h], ebp + jmp _lErrIn + ;;---------------- + + _lDFArgCheckTest: + cmp al, byte ptr [edi] + jne _lDFArgNextWordSS + jmp _lDFArgCheckWordStart + + _lDFArgCheckWordEnd: + mov al, byte ptr [edi] + cmp al, 30h + jb _lDFArgCheckWordEndFx + cmp al, 3ah + jb _lDFArgNextWord + cmp al, 41h + jb _lDFArgCheckWordEndFx + cmp al, 5bh + jb _lDFArgNextWord + cmp al, 5fh + je _lDFArgNextWord + cmp al, 61h + jb _lDFArgCheckWordEndFx + cmp al, 7bh + jb _lDFArgNextWord + + _lDFArgCheckWordEndFx: + mov ebp, dword ptr [_dBuffer] + _lDFArgCheckWordEndEx: + mov byte ptr [ebp], 05h ;; ex backspace + inc ebp + cmp ebp, edi + jne _lDFArgCheckWordEndEx + mov byte ptr [edi-01h], ah + jmp _lDFArgSearchWordEx + + _lDFArgCheckEnd: + pop ebp + _lDFArgCheckEndEx: + inc ebp + cmp byte ptr [ebp], 29h ;; ) + jne _lDFArgCheckEndSx + jmp edx + _lDFArgCheckEndSx: + cmp byte ptr [ebp], 2ch ;; , + jne _lDFArgCheckEndEx + jmp _lDFNextArg + ;;---------------- + + ;;---------------- + ;; lib check + _lScanEnd: + cmp esp, _dStackPos + je _next + + lea eax, dword ptr [offset _dScopeIn+ecx*04h] + mov ebx, dword ptr [eax] + mov dword ptr [_xErrorTable], offset _sErr_UnclosedLib + mov eax, ebx + _lUncLibErr: + dec ebx + cmp word ptr [ebx-02h], 0a0dh + jne _lUncLibErr + mov dword ptr [_xErrorTable+04h], ebx + mov dword ptr [_xErrorTable+08h], eax + jmp _lErrIn + ;;---------------- + _lbl: + ;;---------------- + + ;;---------------- + ;; sort define block + cmp ebx, offset _lDefX+10h + jbe _lDFSortEnd + + ;;---------------- + ;; set step + mov eax, offset _dSortSteps-04h + + sub ebx, offset _lDefX + shr edx, 02h ;; ??? why ?! + _lbl: + add eax, 04h + mov ebp, dword ptr [eax+04h] + lea ebp, dword ptr [ebp+ebp*02h] + cmp ebx, ebp + jg _prew + ;;---------------- + + _lDFSordStart: + mov ecx, dword ptr [eax] + lea ebx, dword ptr [_lDefX+ecx] + + _lDFSordGo: + mov edi, ebx + mov ebp, dword ptr [ebx+08h] + mov esi, dword ptr [ebx] + mov dl, byte ptr [esi] + movaps xmm1, [ebx] + + _lbl: + sub edi, ecx + cmp edi, offset _lDefX-10h + jbe _lDFSortNext + mov esi, dword ptr [edi] + cmp byte ptr [esi], dl + jb _lDFSortNext + je _lDFSortNextEx + + _lDFSortRe: + movaps xmm0, [edi] + movaps [edi+ecx], xmm0 + + jmp _prew + + _lDFSortNextEx: + cmp ebp, dword ptr [edi+08h] + jg _lDFSortRe + + _lDFSortNext: + movaps [edi+ecx], xmm1 + + add ebx, 10h + cmp dword ptr [ebx], 00h + jnz _lDFSordGo + + _lDFNextStep: + sub eax, 04h + cmp eax, offset _dSortSteps-04h + jne _lDFSordStart + + _lDFSortEnd: + ;;---------------- + + ;;---------------- + ;; build find'n'replace table + mov eax, offset _lDefX-10h + mov edx, offset _dDefTable + xor ebx, ebx + xor ecx, ecx + + _lDFTableBld: + add eax, 10h + cmp dword ptr [eax], 00h + je _lDFBuildEnd + mov ebp, dword ptr [eax] + mov bl, byte ptr [ebp] + + cmp cl, bl + je _lDFTableBld + mov [edx+ebx*04h], eax + mov cl, bl + jmp _lDFTableBld + + _lDFBuildEnd: + ;;---------------- + + ;;---------------- + ;; check defines table + mov ebx, offset _lDefX-10h + + _lDFTableCheckNext: + add ebx, 10h + cmp dword ptr [ebx], 00h + jz _lDFTableCheckEnd + + mov edx, dword ptr [ebx] ;; edx = string addr + mov ah, byte ptr [edx] + mov ebp, ebx ;; ebp = checked struct + + ;;---------------- + ;; check next defines + _lDFTableCheckStart: + add ebp, 10h + cmp dword ptr [ebp], 00h + je _lDFTableCheckNext + mov edi, dword ptr [ebp] ;; checked string + cmp byte ptr [edi], ah + jne _lDFTableCheckNext + + ;;---------------- + ;; check own lib + mov esi, dword ptr [ebp+08h] + cmp esi, dword ptr [ebx+08h] + jne _lDFTableCheckStart + ;;---------------- + + ;;---------------- + ;; check string + mov esi, edx ;; base string, edi loaded before + + _lbl: + lodsb + cmp al, 02h + je _next + scasb + je _prew + jmp _lDFTableCheckStart + + _lbl: + scasb + jne _lDFTableCheckStart + ;;---------------- + + ;;---------------- + ;; check arg count + mov esi, dword ptr [ebp+0ch] + cmp esi, dword ptr [ebx+0ch] + je _lDFTableCheckValue ;_lDFTableCheckStart + + ;;---------------- + ;; resort + mov esi, ebp + mov edi, ebx + jb _lDFTableCheckSort + add edi, 10h + + _lDFTableCheckSort: + cmp edi, esi + je _lDFTableCheckSortEnd + + movaps xmm0, [esi] + + _lDFTableCheckSortEX: + sub esi, 10h + movaps xmm1, [esi] + movaps [esi+10h], xmm1 + + cmp edi, esi + jne _lDFTableCheckSortEX + + movaps [edi], xmm0 + + _lDFTableCheckSortEnd: + mov dword ptr [ebx+18h], 0ffffffffh ;; modify to overload define + jmp _lDFTableCheckStart + ;;---------------- + + ;;---------------- + + ;;---------------- + ;; check value + _lDFTableCheckValue: + mov esi, dword ptr [ebp+04h] + mov edi, dword ptr [ebx+04h] + + _lbl: + lodsb + cmp al, 03h + je _next + scasb + je _prew + jmp _lDFTableError + + _lbl: + scasb + je _lDFTableCheckStart + ;;---------------- + + ;;---------------- + ;; error + _lDFTableError: + mov dword ptr [_xErrorTable], offset _sErr_ValueRedefined + mov edi, dword ptr [ebp] + mov dword ptr [_xErrorTable+04h], edi + _lbl: + inc edi + cmp byte ptr [edi], 02h + jne _prew + mov dword ptr [_xErrorTable+08h], edi + + mov dword ptr [_xErrorTable+10h], offset _sErr_ValueRedefinedEX + mov edi, dword ptr [ebx] + mov dword ptr [_xErrorTable+14h], edi + _lbl: + inc edi + cmp byte ptr [edi], 02h + jne _prew + mov dword ptr [_xErrorTable+18h], edi + + jmp _lErrIn + ;;---------------- + + ;;---------------- + + _lDFTableCheckEnd: + ;;---------------- + + mov _dCurrStr, offset _sProg_03 + mov eax, 48h + call _lSetProg + + ;;---------------- + ;; find'n'replacing + mov _dStackPos, esp ;; save stack + mov edi, dword ptr [esp] + mov esi, dword ptr [esp+08h] + xor eax, eax + jmp _lXFPStart + + _lXFPNewWord: + movsb + _lXFPStart: + + ;;---------------- + ;; string preprocessor in + cmp dword ptr [esi], 73404021h ;; !@@s + je _lXFPStrPrIn + cmp dword ptr [esi], 65404021h ;; !@@e + je _lXFPStrPrOut + ;;---------------- + + _lXFPStartFX: + mov al, byte ptr [esi] + + cmp al, 80h + jb _lXFPDFF + + ;;---------------- + ;; arguments + inc esi + sub eax, 80h + push esi + lea edx, dword ptr [esp+eax*08h+10h] + cmp dword ptr [edx], 00ffh + jg _lFXPCSX + add edx, 04h + _lFXPCSX: + mov esi, dword ptr [edx] + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; check word + _lXFPDFF: + cmp al, 41h + jb _lXFPGetNextEx + + lea edx, [_dDefTable+eax*04h] + mov edx, dword ptr [edx] ;; edx = def block address + test edx, edx + jz _lXFPGetNextEx + + mov ecx, esi ;; ecx = temt src script position + mov dword ptr [_dUndefPnt], esi ;; for undef + _lXFPCheck: + mov ebx, dword ptr [edx] + mov al, byte ptr [esi] + cmp al, byte ptr [ebx] + jne _lXFPGetNext + + _lXFPCheckStart: + inc esi + inc ebx + mov al, byte ptr [esi] + cmp al, byte ptr [ebx] + je _lXFPCheckStart + cmp byte ptr [ebx], 02h + jne _lXFPNext + + cmp byte ptr [_bAscii_00+eax], ah ;; ah = 00h + je _lXFPFound + + mov al, byte ptr [ebx-01h] + cmp byte ptr [_bAscii_00+eax], ah ;; ah = 00h + jne _lXFPNext + ;;---------------- + + ;;---------------- + ;; is private + _lXFPFound: + mov ebx, dword ptr [edx+08h] + test ebx, ebx + jnz _lXFPLibTest + ;;---------------- + + ;;---------------- + ;; arguments? + _lXFPAct: + mov dword ptr [_hOLMacro], edx + mov ecx, dword ptr [edx+04h] + cmp dword ptr [edx+0ch], 00h + jne _lXFPActArg + + ;;---------------- + ;; overloaded macros + cmp dword ptr [edx+18h], 0ffffffffh ;; is macros overload + jne _lXFPNoOverLoad + cmp byte ptr [esi], 28h ;; ( + jne _lXFPNoOverLoad + cmp word ptr [esi], 2928h ;; () + jne _lXPFArgErrEX + add esi, 02h + ;;---------------- + + _lXFPNoOverLoad: + + ;;---------------- + ;; undefined? + test ecx, ecx + jz _lXFPUndefined + ;;---------------- + + push esi + push 00h + mov esi, ecx + xor eax, eax + jmp _lXFPStart + + _lXFPActArg: + mov edx, dword ptr [edx+0ch] + mov eax, offset _dDefArgs + cmp byte ptr [esi], 28h ;; ( + mov ebp, edx + je _lXFPNextArg + + ;;---------------- + ;; error + _lXPFArgErr: + mov dword ptr [_xErrorTable], offset _sErr_MissDefArg + mov dword ptr [_xErrorTable+08h], esi + dec esi + mov dword ptr [_xErrorTable+04h], esi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; next macro + _lXPFArgErrEX: + cmp byte ptr [esi], 28h ;; ( + jne _lXPFArgErr + add edx, 10h + mov dword ptr [_hOLMacro], edx + mov ecx, dword ptr [edx+04h] + jmp _lXFPActArg + ;;---------------- + ;;---------------- + + ;;---------------- + ;; parse arguments + _lXFPNextArgAdd: + mov byte ptr [esi], 04h + + _lXFPNextArg: + dec edx + js _lXFPArgEnd + + _lXFPNextArgFX: + inc esi + cmp byte ptr [esi], 05h + je _lXFPNextArgFX + + ;;---------------- + ;; arg transfer + cmp byte ptr [esi], 80h + jb _lXFPNextArgEEX + + xor ebx, ebx + mov bl, byte ptr [esi] + sub bl, 80h + lea ebx, dword ptr [esp+ebx*08h+0ch] + mov ebx, dword ptr [ebx] + mov dword ptr [eax], ebx + mov dword ptr [eax+04h], 00h + add eax, 08h + inc esi + + cmp byte ptr [esi], 29h ;; ) + jne _lXFPMArgTrns + test edx, edx + jnz _lXPFArgErr +;; mov byte ptr [esi], 04h + jmp _lXFPArgEndOX + + _lXFPMArgTrns: + cmp byte ptr [esi], 2ch ;; , + jne _lXFPMArgErr +;; jmp _lXFPNextArgAdd + jmp _lXFPNextArg + ;;---------------- + + ;;---------------- + ;; complex arg + _lXFPNextArgEEX: + mov dword ptr [eax], esi + add eax, 04h + + xor ebx, ebx + + cmp byte ptr [esi], 0bh + je _lXFPHardArg + cmp byte ptr [esi], 3ch ;; < + jne _lXFPArgSX ;; simple arg + inc dword ptr [eax-04h] + inc ebx + _lXFPMArg: + inc esi + cmp byte ptr [esi], 22h ;; " + je _lXFPMArgStr + cmp byte ptr [esi], 80h + jb _lXFPMArgFX + + shl ebx, 10h ;; save bx + mov bx, bp ;; defines arg count + add bx, 80h + cmp byte ptr [esi], bl + + jg _lXFPMArgOX + + mov bh, byte ptr [esi] + sub bh, 7fh + add bh, bl + mov byte ptr [esi], bh + + _lXFPMArgOX: + shr ebx, 10h ;; load bx + + _lXFPMArgFX: + cmp byte ptr [esi], 3eh ;; > + je _lXFPMArgEX + cmp byte ptr [esi], 3ch ;; < + jne _lXFPMArg + inc ebx + jmp _lXFPMArg + + _lXFPMArgEX: + dec ebx + jnz _lXFPMArg + mov byte ptr [esi], 04h + mov dword ptr [eax], 3eh + + _lXFPMArgETT: + add eax, 04h + + inc esi + cmp byte ptr [esi], 29h ;; ) + jne _lXFPMArgDX + test edx, edx + jnz _lXPFArgErr + jmp _lXFPArgEndOX + + _lXFPMArgDX: + cmp byte ptr [esi], 2ch ;; , +;; jne _lXFPMArgErr +;; jmp _lXFPNextArg + je _lXFPNextArg + + ;;---------------- + ;; error + _lXFPMArgErr: + mov dword ptr [_xErrorTable], offset _sErr_Base + mov dword ptr [_xErrorTable+04h], esi + dec esi + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + + _lXFPMArgStrEX: + inc esi + _lXFPMArgStr: + inc esi + cmp byte ptr [esi], 5ch ;; \ + je _lXFPMArgStrEX + cmp byte ptr [esi], 22h ;; " + jne _lXFPMArgStr + jmp _lXFPMArg + ;;---------------- + + ;;---------------- + ;; hard arg + _lXFPHardArg: + inc dword ptr [eax-04h] + inc ebx + _lXFPHardArgEX: + inc esi + cmp byte ptr [esi], 0bh + jne _lXFPHardArgEX + + mov byte ptr [esi], 04h + mov dword ptr [eax], 0bh + jmp _lXFPMArgETT + ;;---------------- + + ;;---------------- + ;; simple arg + _lXFPArgDX: + inc ebx + + _lXFPArgEX: + inc esi + + _lXFPArgSX: + cmp byte ptr [esi], 22h ;; " + je _lXFPArgGX + cmp byte ptr [esi], 28h ;; ( + je _lXFPArgDX + cmp byte ptr [esi], 29h ;; ) + je _lXFPArgXX + cmp byte ptr [esi], 2ch ;; , + jne _lXFPArgEX + test ebx, ebx + jnz _lXFPArgEX + mov dword ptr [eax], 2ch + add eax, 04h + jmp _lXFPNextArgAdd + + _lXFPArgXX: + dec ebx + jns _lXFPArgEX + test edx, edx + jnz _lXPFArgErr + mov dword ptr [eax], 29h + add eax, 04h + jmp _lXFPNextArgAdd + + _lXFPArgGS: + inc esi + _lXFPArgGX: + inc esi + cmp byte ptr [esi], 5ch ;; \ + je _lXFPArgGS + cmp byte ptr [esi], 22h ;; " + jne _lXFPArgGX + jmp _lXFPArgEX + ;;---------------- + + ;;---------------- + _lXFPArgEnd: + cmp dword ptr [eax-04h], 3eh ;; > + jne _lXFPArgEndSX + cmp byte ptr [esi-01h], 29h ;; ) + jne _lXFPOverload + _lXFPArgEndSX: + cmp dword ptr [eax-04h], 29h ;; ) + jne _lXFPOverload + _lXFPArgEndOX: + + ;;---------------- + ;; undefined? + test ecx, ecx + jz _lXFPUndefined + ;;---------------- + + inc esi + _lXFPArgEndEX: + push dword ptr [eax-08h] + push dword ptr [eax-04h] + sub eax, 08h + cmp eax, offset _dDefArgs + jne _lXFPArgEndEX + + push esi + push ebp + mov esi, ecx + xor eax, eax + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; next overloaded macros + _lXFPOverload: + mov ebx, dword ptr [_hOLMacro] + add ebx, 10h + cmp dword ptr [ebx+08h], 0ffffffffh + je _lXFPOverloadEX + + ;;---------------- + ;; error + mov dword ptr [_xErrorTable], offset _sErr_DefArg + mov dword ptr [_xErrorTable+04h], esi + dec esi + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + + _lXFPOverloadEX: + mov ecx, dword ptr [ebx+04h] + mov dword ptr [_hOLMacro], ebx + + mov edx, dword ptr [ebx+0ch] + mov ebp, edx + sub edx, dword ptr [ebx-04h] + + jmp _lXFPNextArg + ;;---------------- + ;;---------------- + + ;;---------------- + ;; check own lib + _lXFPLibTest: + cmp ecx, dword ptr [_dScopeIn+ebx*04h] + jb _lXFPNext + cmp ecx, dword ptr [_dScopeOut+ebx*04h] + jb _lXFPAct + ;;---------------- + + ;;---------------- + ;; check next define + _lXFPNext: + mov esi, ecx + _lXFPNextEX: + add edx, 10h + cmp dword ptr [edx], 00h + je _lXFPGetNext + ;;---------------- + ;; overloaded? + cmp dword ptr [edx+08h], 0ffffffffh + je _lXFPNextEX + ;;---------------- + jmp _lXFPCheck + ;;---------------- + + ;;---------------- + ;; undefined + _lXFPUndefined: + mov esi, dword ptr [_dUndefPnt] + + ;;---------------- + ;; remove arg + _lXFPUndefinedRE: + cmp eax, offset _dDefArgs ;; ??? + jbe _lXFPUndefinedEnd + + mov dl, byte ptr [eax-04h] + test dl, dl + jz _lXFPUndefinedREEX + mov ebx, dword ptr [eax-08h] + dec ebx + + _lXFPUndefinedRemArg: + inc ebx + _lXFPUndefinedRemArgEX: + cmp word ptr [ebx], 7801h ;; #x + je _lXFPUndefinedRemArgSX + cmp word ptr [ebx], 7901h ;; #y + je _lXFPUndefinedRemArgSX + cmp byte ptr [ebx], 04h + jne _lXFPUndefinedRemArg + + mov byte ptr [ebx], dl + + _lXFPUndefinedREEX: + sub eax, 08h + jmp _lXFPUndefinedRE + + _lXFPUndefinedRemArgSX: + add ebx, 06h + jmp _lXFPUndefinedRemArgEX + ;;---------------- + + _lXFPUndefinedEnd: + xor eax, eax + jmp _lXFPGetNext + ;;---------------- + + ;;---------------- + ;; remove bs + _lXFPBSRem: + xor eax, eax + mov al, byte ptr [edi-01h] ;; bs + cmp byte ptr [_bAscii_00+eax], ah + jne _lXFPNewWord + cmp byte ptr [esi+01h], 2bh ;; + + je _lXFPNewWord + cmp byte ptr [esi+01h], 2dh ;; - + je _lXFPNewWord + + inc esi + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; get next word and parse text + _lXFPGetNext: + movsb + mov al, byte ptr [esi] + _lXFPGetNextEx: + cmp al, 05h ;; ex backspace + jne _next + inc esi + jmp _lXFPStart + _lbl: + cmp al, 20h + jb _lXFPXX + je _lXFPBSRem + cmp al, 22h ;; " + je _lXFPString + cmp word ptr [esi], 2323h ;; ## + je _lXFPConf + cmp al, 30h + jb _lXFPNewWord + cmp al, 3ah + jb _lXFPGetNext + cmp al, 41h + jb _lXFPNewWord + cmp al, 5bh + jb _lXFPGetNext + cmp al, 5fh + jb _lXFPNewWord + cmp al, 60h ;; ` + je _lXPFRepStr + cmp al, 7ah + jg _lXFPNewWord + jmp _lXFPGetNext + + _lXFPConf: + add esi, 02h + jmp _lXFPStart + + ;;---------------- + ;; string + _lXFPStringEX: + movsb + _lXFPString: + movsb + cmp byte ptr [esi], 5ch ;; \ + je _lXFPStringEX + cmp byte ptr [esi], 22h ;; " + jne _lXFPString + jmp _lXFPNewWord + + _lXPFRepStr: + mov byte ptr [edi], 22h ;; " + inc esi + inc edi + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; system + _lXFPXX: + cmp al, 08h + je _lXFPSetdef + cmp al, 04h + je _lXFPArgOut + cmp al, 03h + je _lXFPDefOut + cmp al, 0bh + je _lXFPTMArg + + cmp word ptr [esi], 3801h ;; #8 + jne _lXFPXX_Next + movsw + jmp _lXFPStart + + _lXFPXX_Next: + cmp word ptr [esi], 6401h ;; #d + je _lXFP_00 + cmp word ptr [esi], 6701h ;; #g + je _lXFP_0a + cmp word ptr [esi], 6301h ;; #c + je _lXFP_01 + cmp word ptr [esi], 7801h ;; #x + je _lXFP_02 + cmp word ptr [esi], 7901h ;; #y + je _lXFP_02 + cmp word ptr [esi], 7301h ;; #s + je _lXFP_03 + cmp word ptr [esi], 6901h ;; #i + je _lXFP_04 + cmp word ptr [esi], 6101h ;; #a + je _lXFP_05 + cmp word ptr [esi], 6501h ;; #e + je _lXFP_06 + cmp word ptr [esi], 7501h ;; #u + je _lXFP_07 + cmp word ptr [esi], 3601h ;; #6 + je _lXFP_08 + cmp word ptr [esi], 3701h ;; #7 + je _lXFP_09 + cmp al, 00h + je _lXFPEnd + jmp _lXFPNewWord + ;;---------------- + + ;;---------------- + _lXFPTMArg: + mov byte ptr [edi], 22h ;; " + inc esi + inc edi + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; set esi + _lXFP_03: + mov esi, dword ptr [esi+02h] + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; arg out + _lXFPArgOut: + pop esi + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; error + _lXFP_0a: + mov dword ptr [_xErrorTable], offset _sErr_Ude + mov dword ptr [_xErrorTable+04h], esi + _lXFP_0a_EX: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + jne _lXFP_0a_EX + mov dword ptr [_xErrorTable+08h], esi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; setdef + _lXFPSetdef: + mov al, byte ptr [esi+07h] + lea edx, [_dDefTable+eax*04h] + mov edx, dword ptr [edx] ;; edx = def block address + test edx, edx + jnz _lXFPSetdefCheck + +;; error + _lXFPSetdefCheckNext: + add edx, 10h + _lXFPSetdefCheck: + lea ecx, [esi+07h] + mov ebx, dword ptr [edx] + mov al, byte ptr [ecx] + cmp al, byte ptr [ebx] +;; jne + _lXFPSetdefCheckEX: + inc ecx + inc ebx + mov al, byte ptr [ecx] + cmp al, 02h ;; def label end + je _lXFPSetdefCheckEnd + cmp al, byte ptr [ebx] + je _lXFPSetdefCheckEX + jmp _lXFPSetdefCheckNext + + _lXFPSetdefCheckEnd: + cmp al, byte ptr [ebx] + jne _lXFPSetdefCheckNext + + ;;---------------- + ;; check lib + mov ecx, dword ptr [edx+08h] + + test ecx, ecx + jz _lXFPSetdefGlob + + cmp esi, dword ptr [_dScopeIn+ecx*04h] + jb _lXFPSetdefCheckNext + cmp esi, dword ptr [_dScopeOut+ecx*04h] + jg _lXFPSetdefCheckNext + ;;---------------- + + ;;---------------- + ;; check arg count + _lXFPSetdefGlob: + mov al, byte ptr [esi+01h] + cmp eax, dword ptr [edx+0ch] + jne _lXFPSetdefCheckNext + ;;---------------- + + mov ecx, dword ptr [esi+02h] + mov dword ptr [edx+04h], ecx ;; huh... + + add esi, 08h + _lXFPSetdefEnd: + inc esi + cmp byte ptr [esi], 03h + jne _lXFPSetdefEnd + add esi, 02h +;; cmp byte ptr [esi-01h], 79h ;; y +;; jne _lXFPStart +;; add esi, 0eh + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; undef + _lXFP_07: + mov al, byte ptr [esi+06h] + lea edx, [_dDefTable+eax*04h] + mov edx, dword ptr [edx] ;; edx = def block address + test edx, edx + jnz _lXFPUndefCheck + +;; error + _lXFPUndefCheckNext: + add edx, 10h + _lXFPUndefCheck: + lea ecx, [esi+06h] + mov ebx, dword ptr [edx] + mov al, byte ptr [ecx] + cmp al, byte ptr [ebx] +;; jne + _lXFPUndefCheckEX: + inc ecx + inc ebx + mov al, byte ptr [ecx] + cmp al, 02h ;; def label end + je _lXFPUndefCheckEnd + cmp al, byte ptr [ebx] + je _lXFPUndefCheckEX + jmp _lXFPUndefCheckNext + + _lXFPUndefCheckEnd: + cmp al, byte ptr [ebx] + jne _lXFPUndefCheckNext + + ;;---------------- + ;; check lib + mov ebx, dword ptr [edx+08h] + + test ebx, ebx + jz _lXFPUndefRem + + cmp esi, dword ptr [_dScopeIn+ebx*04h] + jb _lXFPUndefCheckNext + cmp esi, dword ptr [_dScopeOut+ebx*04h] + jg _lXFPUndefCheckNext + + jmp _lXFPUndefRem + ;;---------------- + + _lXFPUndefRemEX: + add edx, 10h + _lXFPUndefRem: + mov dword ptr [edx+04h], 00000000h ;; huh... + cmp dword ptr [edx+18h], 0ffffffffh ;; is overloaded? + je _lXFPUndefRemEX + + lea esi, [ecx+01h] + + cmp byte ptr [esi], 0ah + jne _lXFPStartFX + inc esi + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; counter + _lXFP_08: + add esi, 02h + mov eax, dword ptr [_dCounterV] + + inc edi + cmp eax, 0ah + jb _lXFP_08_FX + + inc edi + cmp eax, 64h + jb _lXFP_08_FX + + inc edi + cmp eax, 03e8h + jb _lXFP_08_FX + + inc edi + cmp eax, 2710h + jb _lXFP_08_FX + + inc edi + cmp eax, 000186a0h + jb _lXFP_08_FX + + inc edi + cmp eax, 000f4240h + jb _lXFP_08_FX + + inc edi + cmp eax, 00989680h + jb _lXFP_08_FX + + inc edi + cmp eax, 05f5e100h + jb _lXFP_08_FX + + inc edi + cmp eax, 3b9aca00h + jb _lXFP_08_FX + + inc edi + + mov ecx, 0ah + + _lXFP_08_FX: + mov ebp, edi + _lXFP_08_EX: + xor edx, edx + dec ebp + div ecx + add dl, 30h + mov byte ptr [ebp], dl + test eax, eax + jnz _lXFP_08_EX + + inc dword ptr [_dCounterV] + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; weather + _lXFP_09: + add esi, 02h + rdtsc + and eax, 01h + or eax, 30h + stosb + xor eax, eax + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; def out + _lXFPDefOut: + pop eax + pop esi + _lXFPDefOutEX: + test eax, eax + jz _lXFPStart + mov ecx, dword ptr [esp] + test ecx, ecx + jz _lXFPDefOutSBX + mov ebp, dword ptr [esp+04h] + dec ebp + _lXFPDefOutDX: + inc ebp + _lXFPDefOutAX: + cmp word ptr [ebp], 7801h ;; #x + je _lXFPDefOutBX + cmp word ptr [ebp], 7901h ;; #y + je _lXFPDefOutBX + cmp byte ptr [ebp], 04h + jne _lXFPDefOutDX + + mov byte ptr [ebp], cl + _lXFPDefOutSBX: + add esp, 08h + dec eax + jmp _lXFPDefOutEX + + _lXFPDefOutBX: + add ebp, 06h + jmp _lXFPDefOutAX + ;;---------------- + + ;;---------------- + ;; #i + + ;;---------------- + ;; #if + _lXFP_04: + cmp word ptr [esi+02h], 2066h ;; f_ ;; #if_ + jne _lXFP_04_FX + + mov dword ptr [_xEnumTable], edi + add esi, 04h + mov edi, offset _xEnumTable+04h + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; #elseif + _lXFP_04_FX: + cmp dword ptr [esi+02h], 6965736ch ;; lsei + jne _lXFP_04_DX + cmp word ptr [esi+06h], 2066h ;; f_ ;; #if_ + jne _lXFP_04_DX + + mov dword ptr [_xEnumTable], edi + add esi, 08h + mov edi, offset _xEnumTable+04h + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; #else + _lXFP_04_DX: + cmp dword ptr [esi+02h], 0165736ch ;; lse# + jne _lXFP_04_RX + + mov ecx, dword ptr [esi+09h] + mov word ptr [ecx], 0606h + mov dword ptr [ecx+02h], 06060606h + add esi, 0dh + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; #endif + _lXFP_04_RX: + cmp dword ptr [esi+02h], 6669646eh ;; ndif + jne _lCRErrPrePorc ;; omg! + add esi, 06h + jmp _lXFPStartFX + ;;---------------- + ;;---------------- + + ;;---------------- + ;; #e + _lXFP_06: + mov word ptr [esi], 6901h ;; #i + _lXFP_06_EX: + inc esi + cmp word ptr [esi], 7801h ;; #x + jne _lXFP_06_EX + + mov esi, dword ptr [esi+02h] + add esi, 10h + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + ;; #d + _lXFP_00: + inc esi + + _lXFP_00_Re: + cmp word ptr [esi], 7801h ;; #x + je _lXFP_00_FX + cmp word ptr [esi], 7901h ;; #y + je _lXFP_00_FX + + cmp word ptr [esi], 6401h ;; #d + jne _lXFP_00 + add esi, 02h + jmp _lXFPStart + + _lXFP_00_FX: + add esi, 06h + jmp _lXFP_00_Re + ;;---------------- + + ;;---------------- + ;; #a + _lXFP_05: + xor ebx, ebx + mov dword ptr [edi], ebx + mov edi, dword ptr [_xEnumTable] + mov edx, offset _xEnumTable+04h + mov ecx, edx + + ;;---------------- + ;; true ? + cmp word ptr [ecx], 0031h ;; 1 + je _lXFP_05_SX + + cmp dword ptr [ecx], 65757274h ;; true + jne _lXFP_05_lStr + cmp byte ptr [ecx+04h], 00h + jne _lXFP_05_lStr + + jmp _lXFP_05_SX + ;;---------------- + + _lXFP_05_AX: + inc ecx + _lXFP_05_lStr: + cmp byte ptr [ecx], 00h + je _lXFP_05_Fail + + cmp word ptr [ecx], 3d3dh ;; == + je _lXFP_05_BX ;; ebx = 00h + cmp word ptr [ecx], 3d21h ;; != + jne _lXFP_05_AX + mov ebx, eax ;; non zero + + _lXFP_05_BX: + add ecx, 02h + _lXFP_05_OX: + mov al, byte ptr [edx] + cmp al, byte ptr [ecx] + jne _lXFP_05_NE + inc edx + inc ecx + jmp _lXFP_05_OX + + _lXFP_05_NE: + cmp word ptr [edx], 3d3dh ;; == + je _lXFP_05_NE_EX + cmp word ptr [edx], 3d21h ;; != + jne _lXFP_05_NE_FX + + _lXFP_05_NE_EX: + cmp byte ptr [ecx], 00h + je _lXFP_05_XX + + ;;---------------- + ;; fail + _lXFP_05_NE_FX: + test ebx, ebx + jnz _lXFP_05_SX + + _lXFP_05_Fail: + mov esi, dword ptr [esi+04h] + add esi, 10h + jmp _lXFPStartFX + ;;---------------- + + ;;---------------- + _lXFP_05_XX: + test ebx, ebx + jnz _lXFP_05_Fail + + _lXFP_05_SX: + mov ecx, dword ptr [esi+04h] + mov word ptr [ecx], 0606h + mov dword ptr [ecx+02h], 06060606h + add esi, 08h + + _lXFP_05_FX: + add ecx, 10h + cmp dword ptr [ecx], 646e6901h ;; #ind ;; #end + je _lXFPStartFX + + mov word ptr [ecx], 6501h ;; #e + _lXFP_05_Remove: + inc ecx + cmp word ptr [ecx], 7801h ;; #x + jne _lXFP_05_Remove + mov ecx, dword ptr [ecx+02h] + jmp _lXFP_05_FX + ;;---------------- + ;;---------------- + + ;;---------------- + ;; #c + _lXFP_01_Ex: + add esi, 05h + _lXFP_01: + inc esi + cmp byte ptr [esi], 07h ;; enum out + jne _lXFP_01_Sx + inc esi + jmp _lXFPStart + _lXFP_01_Sx: + cmp word ptr [esi], 7801h ;; #x + je _lXFP_01_Ex + cmp word ptr [esi], 7901h ;; #y + je _lXFP_01_Ex + cmp word ptr [esi], 0302h ;; null define + je _lXFP_01_Dx + cmp byte ptr [esi], 03h + jne _lXFP_01 + add esi, 02h + cmp byte ptr [esi-01h], 79h ;; y + jne _lXFPStart + add esi, 0eh + jmp _lXFPStart + + _lXFP_01_Dx: ;; ??? + add esi, 02h + cmp byte ptr [esi], 0ah + jne _lXFPStart + inc esi + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; blocks + _lXFP_02: + movsw + mov edx, dword ptr [esi] + sub edi, 02h + mov dword ptr [edx+02h], edi + add edi, 06h + add esi, 04h + jmp _lXFPStart + ;;---------------- + ;;---------------- + + ;;---------------- + ;; string preprocessor + + ;;---------------- + ;; in + _lXFPStrPrIn: + add esi, 04h + mov dword ptr [_dMapProcCode], edi + mov edi, offset _bFuncCodeBase + jmp _lXFPStart + ;;---------------- + + ;;---------------- + ;; out + _lXFPStrPrOut: + movsd ;; copy !@@e + + mov dword ptr [_dWWWFont], esi + mov esi, offset _bFuncCodeBase ;; esi = old buffer + mov edi, offset _bFuncCodeLocals ;; edi = new buffer + + mov ebx, esi + _lXFPStrPrOutAX: + inc ebx + cmp dword ptr [ebx], 61404021h ;; !@@a + jne _lXFPStrPrOutAX ;; ebx = arg types + + lea ecx, [ebx+03h] + _lXFPStrPrOutBX: + inc ecx +;; cmp dword ptr [ecx], 65404021h ;; !@@e +;; error - no args + cmp byte ptr [ecx-01h], 40h ;; @ + jne _lXFPStrPrOutBX ;; ecx = first arg + + jmp _lXFPStrPrOutDX + + _lXFPStrPrOutEX: + stosb + _lXFPStrPrOutCX: + cmp esi, ebx + jne _lXFPStrPrOutDX + + ;;---------------- + ;; huh... + mov word ptr [edi], 7301h ;; #s + mov ebx, dword ptr [_dWWWFont] + mov dword ptr [edi+02h], ebx + mov esi, offset _bFuncCodeLocals + mov edi, dword ptr [_dMapProcCode] + jmp _lXFPStart + ;;---------------- + + _lXFPStrPrOutSX: + cmp byte ptr [esi], 5eh ;; ^ + je _lXFPStrPrOutTX + cmp byte ptr [esi], 25h ;; % + je _lXFPStrPrOutTX + stosb + _lXFPStrPrOutTX: + movsb + _lXFPStrPrOutDX: + lodsb + cmp al, 5ch ;; \ + je _lXFPStrPrOutSX + cmp al, 25h ;; % + je lXFPStrPr_GX + cmp al, 5eh ;; ^ + jne _lXFPStrPrOutEX + + ;;---------------- + ;; find type + lXFPStrPr_GX: + lea ebp, [ebx+06h] ;; ebp = first arg type + + _lXFPStrPrOutJX: + mov edx, esi ;; edx = position in string + + _lXFPStrPrOutFX: + mov al, byte ptr [ebp] + + cmp al, 5eh ;; ^ + je _lXFPStrPrOutGX + + cmp al, byte ptr [edx] + jne _lXFPStrPrOutHX + inc ebp + inc edx + jmp _lXFPStrPrOutFX + + _lXFPStrPrOutHX: + inc ebp + cmp byte ptr [ebp-01h], 5eh ;; ^ + jne _lXFPStrPrOutHX + jmp _lXFPStrPrOutJX + + _lXFPStrPrOutGX: + mov esi, edx + + ;;---------------- + ;; replace + add ebp, 02h ;; remove ^= + + _lXFPStrPrOutLX: + mov al, byte ptr [ebp] + cmp al, 3ch ;; < + je _lXFPStrPrOutIX + cmp al, 3eh ;; > + je _lXFPStrPrOutKX + cmp al, 24h ;; $ + je _lXFPStrPrOutMX + cmp al, 5eh ;; ^ + je _lXFPStrPrOutCX + cmp al, 22h ;; " + je _lXFPStrPrOutCX + mov byte ptr [edi], al + inc edi + inc ebp + jmp _lXFPStrPrOutLX + + _lXFPStrPrOutMX: + inc ebp + _lXFPStrPrOutNX: + cmp dword ptr [ecx], 65404021h ;; !@@e + je _lXFPStrPrOutLX + mov al, byte ptr [ecx] + cmp al, 40h ;; @ + je _lXFPStrPrOutOX + mov byte ptr [edi], al + inc edi + inc ecx + jmp _lXFPStrPrOutNX + _lXFPStrPrOutOX: + inc ecx + jmp _lXFPStrPrOutLX + + _lXFPStrPrOutIX: + inc ebp +;; cmp byte ptr [edx-01h], 22h ;; " +;; je _lXFPStrPrOutUX ;; ??? + mov word ptr [edi], 2b22h ;; "+ + add edi, 02h + jmp _lXFPStrPrOutLX + +;; _lXFPStrPrOutUX: +;; inc edx +;; jmp _lXFPStrPrOutLX + + _lXFPStrPrOutKX: + inc ebp +;; cmp byte ptr [esi], 22h ;; " ;; [edx+01h] ??? +;; je _lXFPStrPrOutPX + mov word ptr [edi], 222bh ;; +" + add edi, 02h + jmp _lXFPStrPrOutLX + + _lXFPStrPrOutPX: + inc esi + jmp _lXFPStrPrOutLX + ;;---------------- + ;;---------------- + + + + ;;---------------- + ;;---------------- + + _lXFPEnd: + mov esp, _dStackPos ;; load stack + add esi, 04h + add edi, 04h + ;;---------------- + + mov _dCurrStr, offset _sProg_04 + mov eax, 52h + call _lSetProg + + ;;---------------- + ;; capture world... + mov dword ptr [_dErrorCodeStart], edi ;; for syntax error + mov _dStackPos, esp + + xor ebx, ebx ;; f l a g s + ;; 0 0 0 0 b + ;; | | | | + ;; | | | is in function (0 - out) + ;; | | | dont add set/call/local etc + ;; | | | + ;; | | is int struct (0 - out) + ;; | | dont add globals/endglobals + ;; | | + ;; | is in interface (0 - out) + ;; | not entry to functions/methods + ;; | + ;; is in globals (0 - out) + ;; not add nothing + + + push ebx ;; 00h on stack top + jmp _lFNPLine + + _lFNPLineEx: + movsw + + _lFNPLine: + mov eax, dword ptr [esi] + + cmp al, 00h + je _lFNPEnd + + cmp ax, 0a0dh + jne _lFNPParseStart + add esi, 02h + jmp _lFNPLine + + ;;---------------- + ;; global instruction parsing + _lFNPParseStart: + + ;;---------------- + ;; nocjass + cmp ax, 3901h ;; #9 + jne _next + + lea edx, [esi+02h] + mov eax, dword ptr [_dSynDesc] + mov esi, dword ptr [eax] + mov ecx, dword ptr [eax+04h] + add eax, 08h + mov dword ptr [_dSynDesc], eax + mov dword ptr [edi], 20212f2fh ;; //!_ + add edi, 04h + sub ecx, esi + rep movsb + mov esi, edx + jmp _lFNPLine + ;;---------------- + + _lbl: + test ebx, 01b + jp _next + mov edi, offset _bFuncCodeOneLine + + ;;---------------- + ;; comment + _lbl: + cmp ax, 2f2fh ;; // + jne _next + + cmp byte ptr [esi+02h], 21h ;; ! + je _lFNPExCode + + _lFNPCommExs: + inc esi + cmp word ptr [esi], 0a0dh ;; nl + jne _lFNPCommExs + add esi, 02h + mov eax, dword ptr [esi] + jmp _lFNPParseStart + ;;---------------- + + _lbl: + cmp al, 0ch + je _lFNPVarX + + _lbl: + test ebx, 01b + jp _lFNPOutside ;; globals ? ;; out the function + ;;---------------- + + ;;---------------- + ;; in function + cmp eax, 6c6c6163h ;; call + jne _next + cmp byte ptr [esi+04h], 20h ;; _ + je _lFNPCopyParse + + _lbl: + cmp eax, 20746573h ;; set_ + je _lFNPCopyParse + + _lbl: + cmp eax, 61636f6ch ;; loca + jne _next + cmp word ptr [esi+04h], 206ch ;; l_ + jne _next + jmp _lFNVarParse + + _lbl: + cmp eax, 74617473h ;; stat + jne _next + cmp dword ptr [esi+04h], 69206369h ;; ic_i + jne _next + cmp word ptr [esi+08h], 2066h ;; f_ + je _lFNPCopyParse + + ;;---------------- + ;; if + _lbl: + cmp ax, 6669h ;; if + jne _next + cmp byte ptr [esi+02h], 2eh ;; _ ;; !!!! + jg _next + + movsw + mov dword ptr [edi], 20202020h ;; bs + mov dword ptr [edi+04h], 20202020h ;; bs + mov dword ptr [edi+08h], 20202020h ;; bs + add edi, 0ch + mov byte ptr [_bCodeSys], al + mov byte ptr [_bCodePosOp], 00h + + jmp _FNPIf + + _lbl: + cmp eax, 65736c65h ;; else + jne _next + cmp word ptr [esi+04h], 0a0dh ;; new line + je _lFNPCopyParse + cmp word ptr [esi+04h], 7801h ;; #x + jne _lFNPIfEX + + mov ecx, dword ptr [esi+06h] + mov dword ptr [esi+04h], 06060606h + cmp word ptr [esi+0ah], 0a0dh ;; new line + je _lFNPIfElseFX + mov word ptr [esi+08h], 0a0dh ;; new line + jmp _lFNPIfBlockEx + _lFNPIfElseFX: + mov word ptr [esi+08h], 0606h ;; new line + jmp _lFNPIfBlockEx + + _lFNPIfEX: + cmp word ptr [esi+04h], 6669h ;; if + jne _next + cmp byte ptr [esi+06h], 2ch ;; _ ;; !!!! + jg _next + + _FNPIf: + mov eax, esi + _FNPIfx: + inc eax + cmp dword ptr [eax], 6e656874h ;; then + je _FNPIfs + cmp word ptr [eax], 7801h ;; #x + je _lFNPIfBlock + cmp word ptr [eax], 0a0dh + jne _FNPIfx + mov word ptr [eax], 3001h ;; #0 + jmp _lFNPCopyParse + _FNPIfs: + cmp byte ptr [eax+04h], 20h + je _lFNPCopyParse + cmp word ptr [eax+04h], 0a0dh + je _lFNPCopyParse + jmp _FNPIfx + + _lFNPIfBlock: + mov ecx, dword ptr [eax+02h] + + mov dword ptr [eax], 06060606h + mov word ptr [eax+04h], 3001h ;; #0 + + cmp dword ptr [ecx+10h], 65736c65h ;; else + jne _lFNPIfBlockEx + cmp word ptr [ecx+14h], 6669h ;; if + jne _lFNPIfBlockSx + cmp byte ptr [ecx+16h], 2dh ;; _ ;; !!! + jbe _lFNPIfBlockNull + _lFNPIfBlockSx: + cmp byte ptr [ecx+14h], 2dh ;; _ ;; !!! + jbe _lFNPIfBlockNull + + _lFNPIfBlockEx: + mov dword ptr [ecx], 69646e65h ;; endi + mov word ptr [ecx+04h], 0666h ;; f_ + jmp _lFNPCopyParse + + _lFNPIfBlockNull: + mov dword ptr [ecx], 06060606h ;; ex bs + mov word ptr [ecx+04h], 0606h + cmp word ptr [ecx-02h], 0a0dh ;; new line + jne _lFNPCopyParse + mov word ptr [ecx-02h], 0606h + jmp _lFNPCopyParse + + _lbl: + cmp eax, 69646e65h ;; endi + jne _next + cmp byte ptr [esi+04h], 66h ;; f + jne _next + cmp byte ptr [esi+05h], 20h ;; _ + jbe _lFNPCopyParse + ;;---------------- + + ;;---------------- + ;; loop + _lbl: + cmp eax, 706f6f6ch ;; loop + jne _next + cmp byte ptr [esi+04h], 20h ;; _ + jg _next + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopyParse + mov dword ptr [eax], 6c646e65h ;; endl + mov dword ptr [eax+04h], 06706f6fh ;; oop_ + jmp _lFNPCopyParse + + _lbl: + cmp eax, 6c646e65h ;; endl + jne _next + cmp word ptr [esi+04h], 6f6fh ;; oo + jne _next + cmp byte ptr [esi+06h], 70h ;; p + jne _next + cmp byte ptr [esi+07h], 20h ;; _ + jbe _lFNPCopyParse + + _lbl: + cmp eax, 74697865h ;; exit + jne _next + cmp dword ptr [esi+04h], 6e656877h ;; when + jne _next + cmp byte ptr [esi+08h], 2dh ;; _ ;; !!!! + jg _next + + movsd + movsd + mov dword ptr [edi], 20202020h + mov word ptr [edi+04h], 2020h + add edi, 06h + + mov byte ptr [_bCodeSys], al + mov byte ptr [_bCodePosOp], 00h + + jmp _lFNPCopyParse + + ;;---------------- + ;; whilenot + _lbl: + cmp eax, 6c696877h ;; whil + jne _next + cmp dword ptr [esi+04h], 746f6e65h ;; enot + jne _next + cmp byte ptr [esi+08h], 2dh ;; _ ;; !!!! + jg _next + call _lFNPCheckBlock + add esi, 08h + test eax, eax + jz _lFNPWhileEX + mov dword ptr [eax], 6c646e65h ;; endl + mov dword ptr [eax+04h], 06706f6fh ;; oop_ + _lFNPWhileEX: + mov eax, dword ptr [_dFCB] + mov dword ptr [eax], 706f6f6ch ;; loop + mov word ptr [eax+04h], 0a0dh ;; new line + add eax, 06h + mov dword ptr [_dFCB], eax + cmp byte ptr [esi], 10h ;; 0a0dh or # + jbe _lFNPCopyParse + mov dword ptr [edi], 74697865h ;; exit + mov dword ptr [edi+04h], 6e656877h ;; when + mov byte ptr [edi+08h], 20h ;; _ + add edi, 09h + jmp _lFNPCopyParse + + _lbl: + cmp eax, 77646e65h ;; endw + jne _next + cmp dword ptr [esi+04h], 656c6968h ;; hile + jne _next + cmp dword ptr [esi+08h], 0d746f6eh ;; not_ + jne _next + add esi, 0bh + mov dword ptr [edi], 6c646e65h ;; endl + mov dword ptr [edi+04h], 00706f6fh ;; oop_ + add edi, 07h + jmp _lFNPCopyParse + ;;---------------- + + ;;---------------- + ;; do + _lbl: + cmp ax, 6f64h ;; do + jne _next + cmp byte ptr [esi+02h], 21h + jg _next + + mov dword ptr [edi], 706f6f6ch ;; loop + mov word ptr [edi+04h], 0a0dh ;; new line + add edi, 06h + + call _lFNPCheckBlock + add esi, 02h + test eax, eax + jz _lFNPCopyParse + + cmp dword ptr [eax+10h], 6c696877h ;; whil + jne _lFNPDo + cmp dword ptr [eax+14h], 746f6e65h ;; enot + jne _lFNPDo + cmp byte ptr [eax+18h], 2dh ;; _ ;; !!!! + jg _lFNPDo + + mov dword ptr [eax], 06060606h + mov word ptr [eax+04h], 0606h + mov dword ptr [eax+0eh], 78650a0dh ;; __ex + mov dword ptr [eax+12h], 68777469h ;; itwh + mov word ptr [eax+16h], 6e65h ;; en + + add eax, 11h + _lFNPDoEX: + inc eax + cmp word ptr [eax], 0a0dh ;; nl + jne _lFNPDoEX + mov word ptr [eax], 6601h ;; #f + jmp _lFNPCopyParse + + _lFNPDo: + mov dword ptr [eax], 6c646e65h ;; endl + mov dword ptr [eax+04h], 06706f6fh ;; oop_ + jmp _lFNPCopyParse + + _lbl: + cmp eax, 64646e65h ;; endd + jne _next + cmp word ptr [esi+04h], 206fh ;; o_ + jne _next + cmp dword ptr [esi+06h], 6c696877h ;; whil + jne _next + cmp dword ptr [esi+0ah], 746f6e65h ;; enot + jne _next + cmp byte ptr [esi+0eh], 2dh ;; _ ;; !!!! + jg _next + + mov dword ptr [esi], 74697865h ;; exit + mov dword ptr [esi+04h], 6e656877h ;; when + mov dword ptr [esi+08h], 06060606h + mov word ptr [esi+0ch], 06060606h + mov eax, esi + jmp _lFNPDoEX + ;;---------------- + ;;---------------- + + _lbl: + cmp eax, 75746572h ;; retu + jne _next + cmp word ptr [esi+04h], 6e72h ;; rn + jne _next + cmp byte ptr [esi+06h], 2eh ;; _ ;; !!!! + jg _next + + movsd + movsw + mov dword ptr [edi], 20202020h ;; bs + mov dword ptr [edi+04h], 20202020h ;; bs + add edi, 08h + mov byte ptr [_bCodeSys], al + mov byte ptr [_bCodePosOp], 00h + + jmp _lFNPCopyParse + + ;;---------------- + ;; ++ -- pre + _lbl: + cmp ax, 2b2bh ;; ++ + jne _next + + ;;---------------- + _lFNPIDPreX: + mov ecx, edi + mov edx, esi + + mov edi, esi + lea esi, [esi+02h] + + _lFNPIDPreXfx: + movsb + cmp word ptr [esi], 0a0dh ;; nl + jne _lFNPIDPreXfx + + mov word ptr [edi], ax + add edi, 02h + + mov edi, ecx + mov esi, edx + jmp _lFNPFuncScanIn + ;;---------------- + + _lbl: + cmp ax, 2d2dh ;; -- + je _lFNPIDPreX + ;;---------------- + + _lbl: + cmp eax, 66646e65h ;; endf + jne _next + cmp dword ptr [esi+04h], 74636e75h ;; unct + jne _next + cmp word ptr [esi+08h], 6f69h ;; io + jne _next + cmp byte ptr [esi+0ah], 6eh ;; n + jne _next + cmp byte ptr [esi+0bh], 20h ;; _ + jg _next + + ;;---------------- + ;; function out + _lFNPFuncOut: + mov edi, dword ptr [_dBCP] + + ;;---------------- + ;; sys locals + ;;---------------- + ;; type + cmp byte ptr [_bTempType], 00h + je _lFNPFuncOutAX + + mov ecx, edi + _lFNPFuncOutBX: + dec ecx + cmp byte ptr [ecx], 20h + jne _lFNPFuncOutBX + + mov dword ptr [edi], 61636f6ch ;; loca + mov word ptr [edi+04h], 206ch ;; l_ + add edi, 06h + + _lFNPFuncOutCX: + inc ecx + mov al, byte ptr [ecx] + cmp al, 0dh ;; nl + je _lFNPFuncOutDX + stosb + jmp _lFNPFuncOutCX + _lFNPFuncOutDX: + mov dword ptr [edi], 5f6a6320h ;; _cj_ + mov dword ptr [edi+04h], 36363676h ;; v666 + mov dword ptr [edi+08h], 0a0d725fh ;; _r__ + add edi, 0ch + mov byte ptr [_bTempType], 00h + ;;---------------- + + ;;---------------- + ;; bool + _lFNPFuncOutAX: + cmp byte ptr [_bTempBool], 00h + je _lFNPFuncOutTT + + mov dword ptr [edi], 61636f6ch ;; loca + mov dword ptr [edi+04h], 6f62206ch ;; l bo + mov dword ptr [edi+08h], 61656c6fh ;; olea + mov dword ptr [edi+0ch], 6a63206eh ;; n cj + mov dword ptr [edi+10h], 3636765fh ;; _v66 + mov dword ptr [edi+14h], 0a625f36h ;; 6_b_ + mov byte ptr [edi+18h], 0dh ;; _ + add edi, 19h + mov byte ptr [_bTempBool], 00h + ;;---------------- + + ;;---------------- + ;; index + _lFNPFuncOutTT: + mov al, byte ptr [_bFCLLMAX] + mov byte ptr [_bFCLLMAX], 40h + _lFNPFuncOutIS: + cmp al, 40h + je _lFNPFuncOutEX + + mov dword ptr [edi], 61636f6ch ;; loca + mov dword ptr [edi+04h], 6e69206ch ;; l_in + mov dword ptr [edi+08h], 65676574h ;; tege + mov dword ptr [edi+0ch], 78712072h ;; r_qx + mov byte ptr [edi+10h], al + mov word ptr [edi+11h], 0a0dh ;; nl + add edi, 13h + dec al + jmp _lFNPFuncOutIS + ;;---------------- + ;;---------------- + + _lFNPFuncOutEX: + mov eax, esi + mov esi, offset _bFuncCodeLocals + mov ecx, dword ptr [_dFCL] + sub ecx, offset _bFuncCodeLocals + + rep movsb + + mov esi, offset _bFuncCodeBase + mov ecx, dword ptr [_dFCB] + sub ecx, offset _bFuncCodeBase + + rep movsb + + xor ebx, 01b + mov esi, eax + jmp _lFNPCopy + ;;---------------- + + _lbl: + cmp eax, 6d646e65h ;; endm + jne _next + cmp dword ptr [esi+04h], 6f687465h ;; etho + jne _next + cmp byte ptr [esi+08h], 64h ;; d + jne _next + cmp byte ptr [esi+09h], 20h + jg _next + jmp _lFNPFuncOut + + ;;---------------- + ;; in function scan + _lbl: + _lFNPFuncScanIn: + mov ecx, esi ;; temp script posiyion + xor ebp, ebp ;; temp flags + + _lFNPInFuncScan: + inc ecx + mov eax, dword ptr [ecx] + + cmp al, 22h ;; " + jne _next + _lFNPInFuncScanString: + inc ecx + cmp byte ptr [ecx], 5ch ;; \ + jne _lFNPInFuncScanStringEX + add ecx, 02h + _lFNPInFuncScanStringEX: + cmp byte ptr [ecx], 22h ;; " + jne _lFNPInFuncScanString + jmp _lFNPInFuncScan + + _lbl: + cmp ax, 0a0dh + jne _next + cmp ebp, 0100b ;; adding call + jb _lFNPCopyParse + mov dword ptr [edi], 6c6c6163h ;; call + mov byte ptr [edi+04h], 20h ;; _ + add edi, 05h + jmp _lFNPCopyParse + + _lbl: + cmp al, 28h ;; ( + jne _next + or ebp, 0100b ;; call pre + jmp _lFNPInFuncScan + + _lbl: + cmp al, 3dh ;; = + jne _next + cmp ax, 3d3dh ;; == + jne _lFNPSetEX + inc ecx + jmp _lFNPInFuncScan + + _lFNPSetEX: + cmp ax, 3d3dh ;; set pre + je _lFNPInFuncScan + cmp byte ptr [ecx-01h], 3ch + je _lFNPInFuncScan + cmp byte ptr [ecx-01h], 3eh + je _lFNPInFuncScan + cmp byte ptr [ecx-01h], 21h + je _lFNPInFuncScan + _lFNPSet: + mov dword ptr [edi], 20746573h ;; set_ + add edi, 04h + jmp _lFNPCopyParse + + _lbl: + cmp eax, 0a0d2b2bh ;; ++ + jne _next + mov word ptr [ecx], 7001h ;; #p + jmp _lFNPSet + _lbl: + cmp eax, 06062b2bh ;; ++ + jne _next + mov word ptr [ecx], 7001h ;; #p + jmp _lFNPSet + + _lbl: + cmp eax, 0a0d2d2dh ;; -- + jne _next + mov word ptr [ecx], 6d01h ;; #m + jmp _lFNPSet + _lbl: + cmp eax, 06062d2dh ;; -- + jne _next + mov word ptr [ecx], 6d01h ;; #m + jmp _lFNPSet + + _lbl: + cmp al, 20h + jne _next + or ebp, 01b ;; local pre + jmp _lFNPInFuncScan + + _lbl: + cmp al, 5bh + jne _next + or ebp, 10b ;; local not + jmp _lFNPInFuncScan + + _lbl: + cmp ebp, 01h + jne _lFNPInFuncScan + cmp al, 41h + jb _lFNPInFuncScan + cmp al, 5ah + jbe _lFNPLocal + cmp al, 61h + jb _lFNPInFuncScan + cmp al, 7ah + jg _lFNPInFuncScan + + _lFNPLocal: + mov dword ptr [edi], 61636f6ch ;; loca + mov dword ptr [edi+04h], 206ch ;; l_ + add edi, 06h + jmp _lFNVarParse + ;;---------------- + ;;---------------- + + ;;---------------- + ;; ex code parsing + _lFNPExCode: + mov dword ptr [edi], 20212f2fh ;; //!_ + add esi, 03h + add edi, 04h + mov eax, dword ptr [esi] + + cmp ax, 0a0dh + je _lFNPCopy + + cmp eax, 656a6e69h ;; inje + jne _next + cmp word ptr [esi+04h], 7463h ;; ct + jne _next + cmp byte ptr [esi+06h], 20h ;; _ + jg _next + lea edx, [esi+06h] + _lFNPInjectLoop: + inc edx + mov eax, dword ptr [edx] + cmp ax, 0a0dh + je _lFNPCopy + cmp eax, 6e69616dh ;; main + jne _lFNPInjectLoopEX + cmp byte ptr [edx+04h], 20h ;; _ + jg _lFNPInjectLoopEX + jmp _lFNPCopyFuncIn + _lFNPInjectLoopEX: + cmp eax, 666e6f63h ;; conf + jne _lFNPInjectLoop + cmp word ptr [edx+04h], 6769h ;; if + jne _lFNPInjectLoop + cmp byte ptr [edx+06h], 20h ;; _ + jg _lFNPInjectLoop + jmp _lFNPCopyFuncIn + +;; _lbl: +;; cmp eax, 6f706d69h ;; impo +;; jne _next +;; cmp word ptr [esi+04h], 7472h ;; rt +;; jne _next +;; movsd +;; movsw +;; mov byte ptr [edi], 20h ;; bs +;; inc edi +;; jmp _lFNPCopy + + _lbl: + cmp eax, 69646e65h ;; endi + jne _lFNPCopy + cmp dword ptr [esi+04h], 63656a6eh ;; njec + jne _lFNPCopy + cmp byte ptr [esi+08h], 74h ;; t + jne _lFNPCopy + cmp byte ptr [esi+09h], 20h ;; _ + jg _lFNPCopy + + mov eax, dword ptr [_dFCB] + mov dword ptr [eax], 20212f2fh ;; //!_ + add eax, 04h + mov dword ptr [_dFCB], eax + + jmp _lFNPFuncOut + ;;---------------- + + ;;---------------- + ;; outside the function + _lFNPOutside: + cmp eax, 65736c65h ;; else + jne _next + cmp byte ptr [esi+04h], 20h ;; bs + jb _lFNPCopy + + _lbl: + cmp eax, 69646e65h ;; endi + jne _next + cmp byte ptr [esi+04h], 66h ;; f + jne _next + cmp byte ptr [esi+05h], 20h ;; bs + jb _lFNPCopy + + _lbl: + cmp eax, 74617473h ;; stat + jne _lFNPGlob + cmp dword ptr [esi+04h], 69206369h ;; ic_i + jne _lFNPGlob + cmp word ptr [esi+08h], 2066h ;; f_ + je _lFNPCopy + ;;---------------- + + ;;---------------- + ;; in globals + _lFNPGlob: + cmp ebx, 1000b + jb _lFNPInCode + + cmp eax, 67646e65h ;; endg + jne _lFNVarParse + cmp dword ptr [esi+04h], 61626f6ch ;; loba + jne _lFNVarParse + cmp word ptr [esi+08h], 736ch ;; ls + jne _lFNVarParse + cmp byte ptr [esi+0ah], 20h ;; _ + jg _lFNVarParse + xor ebx, 1000b + jmp _lFNPCopy + ;;---------------- + + ;;---------------- + ;; in code + _lFNPInCode: + cmp eax, 626f6c67h ;; glob + jne _next + cmp dword ptr [esi+03h], 736c6162h ;; bals + jne _next + cmp byte ptr [esi+07h], 20h ;; _ + jg _next + or ebx, 1000b + jmp _lFNPCopy + + _lbl: + cmp eax, 73646e65h ;; ends + jne _next + cmp dword ptr [esi+04h], 63757274h ;; truc + jne _next + cmp byte ptr [esi+08h], 74h ;; t + jne _next + cmp byte ptr [esi+09h], 20h ;; _ + jg _next + xor ebx, 10b + jmp _lFNPCopy + + _lbl: + cmp eax, 6d646e65h ;; endm + jne _next + cmp dword ptr [esi+04h], 6c75646fh ;; odul + jne _next + cmp byte ptr [esi+08h], 65h ;; e + jne _next + cmp byte ptr [esi+09h], 20h ;; _ + jg _next + xor ebx, 10b + jmp _lFNPCopy + + _lbl: + cmp eax, 69646e65h ;; endi + jne _next + cmp dword ptr [esi+04h], 7265746eh ;; nter + jne _next + cmp dword ptr [esi+08h], 65636166h ;; face + jne _next + cmp byte ptr [esi+0ch], 20h ;; _ + jg _next + xor ebx, 0100b + jmp _lFNPCopy + + _lbl: + test ebx, ebx + jz _lFNPOutStruct + + ;;---------------- + ;; in the struct + cmp eax, 656c6564h ;; dele + jne _next + cmp dword ptr [esi+04h], 65746167h ;; gate + jne _next + cmp byte ptr [esi+08h], 20h ;; _ + jbe _lFNPCopy + + _lbl: + cmp eax, 6c706d69h ;; impl + jne _next + cmp dword ptr [esi+04h], 6e656d65h ;; emen + jne _next + cmp word ptr [esi+06h], 2074h ;; t_ + je _lFNPCopy + + _lbl: + lea ecx, [esi-01h] + _lFNPMSStart: + inc ecx + mov eax, dword ptr [ecx] + + cmp al, 3dh ;; = + je _lFNVarParse + + cmp al, 28h ;; ( + je _lFNPExFuncDef + + cmp ax, 0a0dh + je _lFNVarParse + + cmp eax, 7265706fh ;; oper + jne _lFNPMSStartEX + cmp dword ptr [ecx+04h], 726f7461h ;; ator + jne _lFNPMSStartEX + cmp byte ptr [ecx+08h], 3ch ;; < + je _lFNPExFuncDefEX + cmp byte ptr [ecx+08h], 3dh ;; = + je _lFNPExFuncDefEX +;; cmp byte ptr [ecx+08h], 3eh ;; > +;; je _lFNPExFuncDef + cmp byte ptr [ecx+08h], 21h ;; ! + je _lFNPExFuncDefEX + cmp byte ptr [ecx+08h], 5bh ;; [ + je _lFNPExFuncDefEX + cmp byte ptr [ecx+08h], 20h ;; bs + je _lFNPExFuncDefEX + + _lFNPMSStartEX: + cmp eax, 6874656dh ;; meth + jne _lFNPMSStart + cmp word ptr [ecx+04h], 646fh ;; od + jne _lFNPMSStart + cmp byte ptr [ecx+06h], 20h ;; _ + jg _lFNPMSStart + + lea eax, [ecx+09h] + mov dword ptr [_dLastFuncName], eax + + jmp _lFNPCopyFuncIn + ;;---------------- + + ;;---------------- + ;; out the struct + _lFNPOutStruct: + cmp eax, 7262696ch ;; libr + jne _next + cmp dword ptr [esi+03h], 79726172h ;; rary + jne _next + cmp dword ptr [esi+07h], 636e6f5fh ;; _onc + jne _lFNPLibTestEX + cmp byte ptr [esi+0bh], 65h ;; e + jne _lFNPLibTestEX + cmp byte ptr [esi+0ch], 20h ;; _ + jg _next + _lFNPLibBlockEX: + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopy + mov dword ptr [eax], 6c646e65h ;; endl + mov dword ptr [eax+04h], 61726269h ;; ibra + mov word ptr [eax+08h], 7972h ;; ry + jmp _lFNPCopy + _lFNPLibTestEX: + cmp byte ptr [esi+07h], 20h ;; _ + jbe _lFNPLibBlockEX + + _lbl: + cmp eax, 706f6373h ;; scop + jne _next + cmp byte ptr [esi+04h], 65h ;; e + jne _next + cmp byte ptr [esi+05h], 20h ;; _ + jg _next + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopy + mov dword ptr [eax], 73646e65h ;; ends + mov dword ptr [eax+04h], 65706f63h ;; cope + jmp _lFNPCopy + + _lbl: + cmp eax, 6c646e65h ;; endl + jne _next + cmp dword ptr [esi+04h], 61726269h ;; ibra + jne _next + cmp word ptr [esi+08h], 7972h ;; ry + jne _next + cmp byte ptr [esi+0ah], 20h ;; _ + jbe _lFNPCopy + + _lbl: + cmp eax, 73646e65h ;; ends + jne _next + cmp dword ptr [esi+04h], 65706f63h ;; cope + jne _next + cmp byte ptr [esi+08h], 20h ;; _ + jbe _lFNPCopy + + ;;---------------- + ;; public/private loop + _lbl: + lea ecx, [esi-01h] + _lFNPInCodeScan: + inc ecx + _lFNPInCodeScanEX: + mov eax, dword ptr [ecx] + + cmp eax, 76697270h ;; priv + jne _next + cmp dword ptr [ecx+04h], 20657461h ;; ate_ + jne _next + add ecx, 08h + jmp _lFNPInCodeScanEX + + _lbl: + cmp eax, 6c627570h ;; publ + jne _next + _lFNPScanIc: + cmp word ptr [ecx+04h], 6369h ;; ic + jne _next + cmp byte ptr [ecx+06h], 20h ;; _ + jne _next + add ecx, 07h + jmp _lFNPInCodeScanEX + + _lbl: + cmp eax, 736e6f63h ;; cons + jne _next + cmp dword ptr [ecx+04h], 746e6174h ;; tant + jne _next + cmp byte ptr [ecx+08h], 20h ;; _ + jne _next + add ecx, 09h + jmp _lFNPInCodeScanEX + + _lbl: + cmp eax, 74617473h ;; stat + je _lFNPScanIc + + ;;---------------- + ;; function, native function and function interface + _lbl: + cmp eax, 6974616eh ;; nati + jne _next + cmp word ptr [ecx+04h], 6576h ;; ve + jne _next + cmp byte ptr [ecx+06h], 20h ;; bs + jne _next + + _lXFPNative: + inc ecx + cmp word ptr [ecx], 0a0dh ;; nl + je _lFNPCopy + cmp byte ptr [ecx], 28h ;; ( + jne _lXFPNative + jmp _lFNPExFuncDef + + _lbl: + cmp eax, 636e7566h ;; func + jne _next + cmp dword ptr [ecx+04h], 6e6f6974h ;; tion + jne _next + cmp byte ptr [ecx+08h], 20h ;; _ + jne _next + cmp ebx, 0100b + jge _lFNPCopy + + lea eax, [ecx+09h] + mov dword ptr [_dLastFuncName], eax + + cmp dword ptr [ecx+09h], 65746e69h ;; inte + jne _lFNPCopyFuncIn + cmp dword ptr [ecx+0dh], 63616672h ;; rfac + jne _lFNPCopyFuncIn + cmp word ptr [ecx+11h], 2065h ;; e_ + je _lFNPCopy + ;;---------------- + + _lbl: + cmp eax, 75727473h ;; stru + jne _next + cmp word ptr [ecx+04h], 7463h ;; ct + jne _next + cmp byte ptr [ecx+06h], 20h ;; _ + jg _next + or ebx, 10b + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopy + mov dword ptr [eax], 73646e65h ;; ends + mov dword ptr [eax+04h], 63757274h ;; truc + mov byte ptr [eax+08h], 74h ;; t + jmp _lFNPCopy + + _lbl: + cmp eax, 75646f6dh ;; modu + jne _next + cmp word ptr [ecx+04h], 656ch ;; le + jne _next + cmp byte ptr [ecx+06h], 20h ;; _ + jg _next + or ebx, 10b + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopy + mov dword ptr [eax], 6d646e65h ;; endm + mov dword ptr [eax+04h], 6c75646fh ;; odul + mov byte ptr [eax+08h], 65h ;; e + jmp _lFNPCopy + + _lbl: + cmp eax, 65746e69h ;; inte + jne _next + cmp dword ptr [ecx+04h], 63616672h ;; rfac + jne _next + cmp byte ptr [ecx+08h], 65h ;; e + jne _next + cmp byte ptr [ecx+09h], 20h ;; _ + jg _next + or ebx, 0100b + call _lFNPCheckBlock + test eax, eax + jz _lFNPCopy + mov dword ptr [eax], 69646e65h ;; endi + mov dword ptr [eax+04h], 7265746eh ;; nter + mov dword ptr [eax+08h], 65636166h ;; face + jmp _lFNPCopy + + _lbl: + cmp eax, 7779656bh ;; keyw + jne _next + cmp dword ptr [ecx+03h], 64726f77h ;; word + jne _next + cmp byte ptr [ecx+07h], 20h ;; _ + jbe _lFNPCopy + + _lbl: + cmp eax, 6b6f6f68h ;; hook + jne _next + cmp byte ptr [esi+04h], 20h ;; bs + je _lFNPCopy + + _lbl: + cmp eax, 65707974h ;; type + jne _lFNPGlobalsScan + cmp byte ptr [ecx+04h], 20h ;; _ + jbe _lFNPCopy + + _lFNPGlobalsScanEx: + inc ecx + mov eax, dword ptr [ecx] + _lFNPGlobalsScan: + cmp ax, 0a0dh + je _lFNPAddGlobals + cmp al, 3dh ;; = + je _lFNPAddGlobalsEx + + cmp al, 28h ;; ( + jne _lFNPGlobalsScanEx + cmp word ptr [ecx-02h], 0a0dh ;; nl + jne _lFNPExFuncDef + + jmp _lFNPGlobalsScanEx + + _lFNPAddGlobalsEx: + inc ecx + cmp word ptr [ecx], 0a0dh + jne _lFNPAddGlobalsEx + _lFNPAddGlobals: + mov word ptr [ecx], 3301h ;; #3 + mov dword ptr [edi], 626f6c67h ;; glob + mov dword ptr [edi+04h], 0d736c61h ;; als_ + mov byte ptr [edi+08h], 0ah ;; _ + add edi, 09h + jmp _lFNVarParse + ;;---------------- + ;;---------------- + ;;---------------- + + ;;---------------- + ;; ex function define + _lFNPExFuncDefEX: ;; from overloading operators + inc ecx + cmp byte ptr [ecx], 28h ;; ( + jne _lFNPExFuncDefEX + + _lFNPExFuncDef: + dec ecx ;; ecx = func name + cmp word ptr [ecx-02h], 0a0dh ;; nl + je _lFNPCopy + cmp byte ptr [ecx-01h], 20h ;; _ + jne _lFNPExFuncDef + + ;; is operator? + cmp dword ptr [ecx-05h], 726f7461h ;; ator + jne _next + cmp dword ptr [ecx-09h], 7265706fh ;; oper + jne _next + sub ecx, 09h + + _lbl: + mov edx, ecx + _lbl: ;; edx = type + dec edx + cmp word ptr [edx-02h], 0a0dh ;; new line + je _lFNPExFuncDefDX + cmp byte ptr [edx-01h], 20h ;; _ + jne _prew + + _lbl: ;; copy func params + movsb + _lFNPExFuncDefDX: + cmp esi, edx + jne _prew + + ;;---------------- + ;; add func or method + cmp dword ptr [edi-07h], 6974616eh ;; nati + jne _lFNPExFuncDefTTTF + cmp word ptr [edi-03h], 6576h ;; ve + jne _lFNPExFuncDefTTTF + cmp byte ptr [edi-01h], 20h ;; bs + je _next + + _lFNPExFuncDefTTTF: + cmp ebx, 10b + jb _lFNPExFuncDefFF + + mov dword ptr [edi], 6874656dh ;; meth + mov dword ptr [edi+04h], 0020646fh ;; od_ + add edi, 07h + jmp _next + _lFNPExFuncDefFF: + mov dword ptr [edi], 636e7566h ;; func + mov dword ptr [edi+04h], 6e6f6974h ;; tion + mov byte ptr [edi+08h], 20h ;; _ + add edi, 09h + ;;---------------- + + _lbl: + mov esi, ecx ;; copy func name + + mov dword ptr [_dLastFuncName], ecx + + _lbl: + movsb + cmp byte ptr [esi], 28h ;; ( + jne _prew + + _lbl: ;; adding takes + mov dword ptr [edi], 6b617420h ;; _tak + mov dword ptr [edi+04h], 00207365h ;; es_ + add edi, 07h + + cmp word ptr [esi], 2928h ;; () + jne _next + + mov dword ptr [edi], 68746f6eh ;; noth + mov dword ptr [edi+04h], 00676e69h ;; ing + add edi, 07h + inc esi + jmp _lFNPExFuncDefSX + + _lbl: + inc esi + _lbl: ;; copy arguments + movsb + cmp byte ptr [esi], 29h ;; ) + jne _prew + + _lFNPExFuncDefSX: ;; add returns + inc esi + mov dword ptr [edi], 74657220h ;; _ret + mov dword ptr [edi+04h], 736e7275h ;; urns + mov byte ptr [edi+08h], 20h ;; _ + add edi, 09h + + _lbl: ;; copy func type + mov al, byte ptr [edx] + cmp al, 20h + je _next + mov byte ptr [edi], al + inc edx + inc edi + jmp _prew + + _lbl: ;; func in? + cmp ebx, 0100b + jge _lFNPExFuncDefUX + + ;; add endfunction + cmp word ptr [esi], 7801h ;; #x + je _lFNPExFuncDefEnd ;; ??? + + _lFNPExFuncDefUX: + mov word ptr [edi], 0a0dh ;; nl + add edi, 02h + jmp _lFNPLine + + _lFNPExFuncDefEnd: + mov eax, dword ptr [esi+02h] + add esi, 06h + mov word ptr [edi], 0a0dh ;; new line + add edi, 02h + + ;;---------------- + ;; add endfunc or endmethod + cmp word ptr [eax-02h], 0a0dh ;; new line + je _next + mov word ptr [eax], 0a0dh ;; new line + add eax, 02h + _lbl: + cmp ebx, 10b + jb _lFNPExFuncDefEF + mov dword ptr [eax], 6d646e65h ;; endm + mov dword ptr [eax+04h], 6f687465h ;; etho + mov byte ptr [eax+08h], 64h ;; d + jmp _next + _lFNPExFuncDefEF: + mov dword ptr [eax], 66646e65h ;; endf + mov dword ptr [eax+04h], 74636e75h ;; unct + mov dword ptr [eax+08h], 066e6f69h ;; ion + ;;---------------- + + _lbl: + mov dword ptr [_dBCP], edi ;; system in + or ebx, 01h + + mov dword ptr [_dFCL], offset _bFuncCodeLocals + mov dword ptr [_dFCB], offset _bFuncCodeBase + + jmp _lFNPLine + ;;---------------- + + ;;---------------- + ;; parse comma in variables declaration + _lFNVarParse: + lea ecx, [esi-01h] + xor edx, edx + + _lFNVarParseEx: + inc ecx + mov eax, dword ptr [ecx] + + cmp al, 22h ;; " + jne _next + _lFNVarParseString: + inc ecx + cmp byte ptr [ecx], 5ch ;; \ + jne _lFNVarParseStringEX + add ecx, 02h + _lFNVarParseStringEX: + cmp byte ptr [ecx], 22h ;; " + jne _lFNVarParseString + jmp _lFNVarParseEx + + _lbl: + cmp al, 28h ;; ( + jne _next + inc edx + jmp _lFNVarParseEx + + _lbl: + cmp al, 29h ;; ) + jne _next + dec edx + jmp _lFNVarParseEx + + _lbl: + cmp al, 2ch ;; , + jne _next + test edx, edx + jnz _lFNVarParseEx + mov byte ptr [ecx], 0eh ;; ; + jmp _lFNVarParseEx + + _lbl: + cmp ax, 3301h ;; #3 + je _lFNPCopyParse + cmp ax, 0a0dh + jne _lFNVarParseEx + + jmp _lFNPCopyParse + ;;---------------- + + ;;---------------- + ;; check blocks + _lFNPCheckBlock: + mov ecx, esi + _lFNPCheckBlockEx: + inc ecx + cmp word ptr [ecx], 0a0dh + je _lFNPCheckBlockSx + cmp word ptr [ecx], 7801h ;; #x + jne _lFNPCheckBlockEx + + mov eax, dword ptr [ecx+02h] + mov dword ptr [ecx], 06060606h + mov word ptr [ecx+04h], 0a0dh + + cmp word ptr [eax-02h], 0a0dh + je _lFNPCheckBlockRet + mov word ptr [eax], 0a0dh + add eax, 02h + _lFNPCheckBlockRet: + retn + + _lFNPCheckBlockSx: + xor eax, eax + retn + ;;---------------- + + ;;---------------- + ;; copy line (function in) + _lFNPCopyFuncIn: + movsb + _lFNPCopyFuncInEx: + mov eax, dword ptr [esi] +;; cmp al, 00h +;; je _lFNPEnd + cmp ax, 7801h ;; #x + je _lFNPUnBlockErr + + cmp al, 3ch ;; < = > + jb _lFNPCopyFuncInSx + cmp al, 3eh ;; > + jg _lFNPCopyFuncInDx + + _lFNPCopyFuncInOx: + cmp byte ptr [esi+01h], 3dh ;; = ;; == + je _lFNPCopyFuncIn + mov ah, 20h ;; _ + mov word ptr [edi], ax + add edi, 02h + inc esi + jmp _lFNPCopyFuncInEx + + _lFNPCopyFuncInDx: + cmp al, 5dh ;; ] + jne _lFNPCopyFuncInSx + cmp ax, 3d5dh ;; ]= + je _lFNPCopyFuncIn + jmp _lFNPCopyFuncInOx + + _lFNPCopyFuncInSx: + cmp ax, 0a0dh + jne _next + + movsw + + ;;---------------- + ;; interfaces ? + cmp ebx, 0100b + je _lFNPLine + ;;---------------- + + mov dword ptr [_dBCP], edi + or ebx, 01h + + mov dword ptr [_dFCL], offset _bFuncCodeLocals + mov dword ptr [_dFCB], offset _bFuncCodeBase + + jmp _lFNPLine + + _lbl: + cmp al, 06h ;; ex _ + jne _lFNPCopyFuncIn + inc esi + jmp _lFNPCopyFuncInEx + ;;---------------- + + ;;---------------- + ;; unknow block + _lFNPUnBlockErr: + mov dword ptr [_xErrorTable], offset _sErr_UnknowBlock + mov dword ptr [_xErrorTable+04h], edi + mov dword ptr [edi], 007b0a0dh ;; nl { + add edi, 03h + mov dword ptr [_xErrorTable+08h], edi + jmp _lErrIn + ;;---------------- + + ;;---------------- + ;; copy line (no parse) + _lFNPCopySTR: + cmp byte ptr [_bStrXX], 00h + je _lFNPCopySTREX + movsb + mov byte ptr [edi], 20h + inc edi + jmp _lFNPCopyEx + + _lFNPCopySTREX: + mov byte ptr [_bStrXX], al + mov byte ptr [edi], 20h + inc edi + + _lFNPCopy: + movsb + _lFNPCopyEx: + mov eax, dword ptr [esi] + cmp al, 00h + je _lFNPEnd + cmp al, 22h ;; " + je _lFNPCopySTR + cmp ax, 7801h ;; #x + je _lFNPUnBlockErr + cmp ax, 0a0dh + jne _lFNPCopySx + test ebx, 01b + jp _lFNPLineEx + + ;;---------------- + ;; add line ex + movsw ;; copy nl + + mov eax, esi + mov esi, offset _bFuncCodeOneLine + mov ecx, edi + sub ecx, esi + mov edi, dword ptr [_dFCB] + rep movsb + mov esi, eax + mov dword ptr [_dFCB], edi + jmp _lFNPLine + ;;---------------- + + _lFNPCopySx: + cmp al, 06h ;; ex _ + jne _lFNPCopy + inc esi + jmp _lFNPCopyEx + ;;---------------- + + ;;---------------- + ;; copy line (with parse) + _lFNPCopyParse: + xor eax, eax + jmp _lFNPCopyParseNext + + _lFNPCopyParseCX: + stosb + _lFNPCopyParseNext: + lodsb + + cmp byte ptr [_bAscii_00+eax], 00h + jz _lFNPCopyParseSym + jmp _lFNPCopyParseCX + + ;;---------------- + ;; symbols + _lFNPCopyParseSym: + mov ecx, dword ptr [esi-01h] + + cmp cx, 7c7ch ;; || + jne _next + inc esi + mov dword ptr [edi], 20726f20h ;; _or_ + add edi, 04h + jmp _lFNPCopyParseNext + + _lbl: + cmp cl, 21h ;; ! + jne _next + cmp cx, 3d21h ;; != + jne _lFNPNot + stosb + movsb + jmp _lFNPCopyParseNext + _lFNPNot: + mov dword ptr [edi], 746f6e20h ;; _not + mov dword ptr [edi+04h], 20h ;; _ + add edi, 05h + jmp _lFNPCopyParseNext + + _lbl: + cmp cx, 2626h ;; && + jne _next + inc esi + mov dword ptr [edi], 646e6120h ;; _and + mov dword ptr [edi+04h], 20h ;; _ + add edi, 05h + jmp _lFNPCopyParseNext + + _lbl: + cmp cx, 2b2bh ;; ++ + jne _next + push 2bh ;; + + jmp _lFNPIncDecPreX + + _lbl: + cmp cx, 2d2dh ;; -- + jne _next + push 2dh ;; - + + ;;---------------- + ;; inc dec pre + _lFNPIncDecPreX: + push edi + inc esi + + mov al, byte ptr [esi] + cmp byte ptr [_bAscii_00+eax], 00h + jz _lFNPCopyParseNext + + mov al, byte ptr [esi-03h] + cmp byte ptr [_bAscii_00+eax], 00h + jz _lFNPCopyParseNext + + mov byte ptr [edi], 20h ;; _ + inc edi + inc dword ptr [esp] + + jmp _lFNPCopyParseNext + ;;---------------- + + ;;---------------- + ;; string + _lbl: + cmp cl, 22h ;; " + jne _next + stosb + _lFNPCopyString: + cmp word ptr [esi], 3801h ;; #8 + je _lFNPCopyStringFN + movsb + _lFNPCopyStringSX: + cmp byte ptr [edi-01h], 22h ;; " + je _lFNPCopyParseNext + cmp byte ptr [edi-01h], 5ch ;; \ + je _lFNPCopyStringEX + jmp _lFNPCopyString + _lFNPCopyStringEX: + movsw + jmp _lFNPCopyStringSX + + _lFNPCopyStringFN: + sub edi, 02h + add esi, 02h + xor eax, eax + mov ecx, dword ptr [_dLastFuncName] + + _lFNPCopyStringFNFX: + mov al, byte ptr [ecx] + cmp byte ptr [_bAscii_00+eax], ah + je _lFNPCopyString + stosb + inc ecx + jmp _lFNPCopyStringFNFX + ;;---------------- + + _lbl: + cmp cx, 3d2bh ;; += + jne _next + mov al, 2bh ;; + + jmp _lFNPPx + + _lbl: + cmp cx, 3d2dh ;; -= + jne _next + mov al, 2dh ;; - + jmp _lFNPPx + + _lbl: + cmp cx, 3d2ah ;; *= + jne _next + mov al, 2ah ;; * + jmp _lFNPPx + + _lbl: + cmp cx, 3d2fh ;; /= + jne _next + mov al, 2fh ;; / + + + ;;---------------- + ;; += -= *= /= + + ;;---------------- + ;; scan + _lFNPPx: + cmp byte ptr [edi-01h], 5dh ;; ] + jne _lFNPPxNorm + + mov ecx, edi + xor edx, edx + + _lFNPPxSS: + dec ecx + cmp byte ptr [ecx], 5bh ;; [ + jne _lFNPPxDD + dec ah + jmp _lFNPPxSS + + _lFNPPxDD: + cmp byte ptr [ecx], 5dh ;; ] + jne _lFNPPxFF + inc ah + jmp _lFNPPxSS + + _lFNPPxFF: + cmp word ptr [ecx], 0a0dh ;; nl + je _lFNPPxNorm + cmp byte ptr [ecx], 28h ;; ( + jne _lFNPPxSS + + mov dl, byte ptr [ecx-01h] + cmp byte ptr [_bAscii_00+edx], dh + je _lFNPPxSS + + ;;---------------- + ;; ex index + mov ebp, esp + push ebx + mov ebx, dword ptr [ebp] + + _lFNPPxII: + dec ecx + cmp byte ptr [ecx], 5dh ;; ] + jne _lFNPPxII_00 + inc ah + jmp _lFNPPxII + + _lFNPPxII_00: + cmp byte ptr [ecx], 5bh ;; [ + jne _lFNPPxII + dec ah + jnz _lFNPPxII + + mov edx, dword ptr [_dFCPL] + inc ecx + + inc byte ptr [_bFCLL] + mov dword ptr [edx], 20746573h ;; set_ + mov ah, byte ptr [_bFCLL] + mov dword ptr [edx+04h], 3d207871h ;; qx_= + mov byte ptr [edx+06h], ah + add edx, 08h + + _lFNPPxII_01: + mov ah, byte ptr [ecx] + mov byte ptr [edx], ah + mov byte ptr [ecx], 20h + cmp ebx, ecx + jne _lFNPPxII_SC + mov dword ptr [ebp], edx + sub ebp, 04h + mov ebx, dword ptr [ebp] + + _lFNPPxII_SC: + inc edx + inc ecx + cmp ecx, edi + jne _lFNPPxII_01 + + mov ah, byte ptr [_bFCLL] + mov word ptr [edx-01h], 0a0dh + mov dword ptr [edi-04h], 5d207871h ;; qx*] + inc edx + mov byte ptr [edi-02h], ah + + mov dword ptr [_dFCPL], edx + pop ebx + ;;---------------- + + ;;---------------- + + ;;---------------- + ;; norm + _lFNPPxNorm: + mov edx, edi + movsb ;; = + mov ecx, esi + _lFNPPxEX: + inc ecx + cmp word ptr [ecx], 0a0dh + jne _lFNPPxEX + mov word ptr [ecx], 3101h ;; #1 + lea ecx, [edi-01h] + _lFNPPxSX: + dec edx + cmp dword ptr [edx-04h], 20746573h ;; set_ + jne _lFNPPxSX + _lFNPPxDX: + mov ah, byte ptr [edx] + mov byte ptr [edi], ah + inc edx + inc edi + cmp edx, ecx + jb _lFNPPxDX + mov byte ptr [edi], al + mov byte ptr [edi+01h], 28h + add edi, 02h + xor eax, eax + jmp _lFNPCopyParseNext + ;;---------------- + ;;---------------- + + ;;---------------- + _lbl: + cmp cl, 0eh ;; ; + jne _next + + mov dword ptr [_dVarParams], edi + mov dword ptr [edi], 0a0dh ;; nl + dec esi + add edi, 02h + mov byte ptr [esi], 0ch ;; ; + test ebx, 01b + jp _lFNPLine + jmp _lFNPIncDecSTX + ;;---------------- + + _lbl: + cmp cx, 0a0dh ;; new line + jne _next + mov dword ptr [edi], 0a0dh ;; new line + inc esi + add edi, 02h + test ebx, 01b + jp _lFNPLine + + ;;---------------- + ;; ++ -- in stack + _lFNPIncDecSTX: + mov dword ptr [_dBuffer], esi + mov esi, edi + mov edi, dword ptr [_dFCB] + + _lFNPIncDecSTXNext: + cmp dword ptr [esp], 00h + je _lFNPIncDecSTXEnd + + pop ebp + xor eax, eax + xor edx, edx + mov al, byte ptr [ebp] + mov ecx, ebp ;; ecx = operation position + + cmp byte ptr [_bAscii_03+eax], ah + jz _lFNPIDS_00p + + ;;---------------- + ;; pref + + ;;---------------- + ;; scan + _lFNPIDS_00: + inc ecx + mov al, byte ptr [ecx] + + cmp al, 5bh ;; [ + jne _lFNPIDS_01 + inc edx + jmp _lFNPIDS_00 + + _lFNPIDS_01: + cmp al, 28h ;; ( + jne _lFNPIDS_02 + mov al, byte ptr [ecx-01h] + cmp byte ptr [_bAscii_00+eax], ah + jne _lFNPIDEI + jmp _lFNPIDS_00 + + _lFNPIDS_02: + cmp al, 5dh ;; ] + jne _lFNPIDS_03 + test edx, edx + jz _lFNPIDS_04 + dec edx + jnz _lFNPIDS_00 + jmp _lFNPIDS_04 + + _lFNPIDS_03: + cmp byte ptr [_bAscii_03+eax], ah + jne _lFNPIDS_00 + + _lFNPIDS_04: + mov ecx, ebp + ;;---------------- + + ;;---------------- + ;; norm + _lFNPIncDecSTX_Norm: + mov dword ptr [edi], 20746573h ;; set_ + add edi, 04h + jmp _lFNPIncDecSTXPre + + _lFNPIncDecSTXPreNext: + inc ebp + _lFNPIncDecSTXPre: + mov al, byte ptr [ebp] + cmp al, 5bh ;; [ + jne _lFNPIncDecSTXPre_00 + inc edx + jmp _lFNPIncDecSTXPre_02 + _lFNPIncDecSTXPre_00: + test edx, edx + jnz _lFNPIncDecSTXPre_03 + cmp byte ptr [_bAscii_03+eax], ah + jne _lFNPIncDecSTXPre_02 + _lFNPIncDecSTXPre_01: + mov edx, ecx + sub ecx, ebp + neg ecx + + mov ebp, edi + mov byte ptr [edi], 3dh ;; = + inc edi + + _lFNPIncDecSTXCopyNext: + mov al, byte ptr [edx] + inc edx + mov byte ptr [edi], al + inc edi + dec ecx + jnz _lFNPIncDecSTXCopyNext + pop eax + or eax, 0a0d3100h ;; x 1 new line + mov dword ptr [edi], eax + add edi, 04h + jmp _lFNPIncDecSTXNext + + _lFNPIncDecSTXPre_02: + mov byte ptr [edi], al + inc edi + jmp _lFNPIncDecSTXPreNext + + _lFNPIncDecSTXPre_03: + cmp al, 5dh ;; ] + jne _lFNPIncDecSTXPre_02 + dec edx + jmp _lFNPIncDecSTXPre_02 + ;;---------------- + + ;;---------------- + ;; ex index + _lFNPIDEI: + inc byte ptr [_bFCLL] + mov ecx, ebp + xor edx, edx + mov al, byte ptr [_bFCLL] + + mov dword ptr [edi], 20746573h ;; set_ + mov dword ptr [edi+04h], 3d207871h ;; qx_= + mov byte ptr [edi+06h], al + add edi, 08h + + _lFNPIDEIndexSet: + inc ecx + cmp byte ptr [ecx], 5bh ;; [ + jne _lFNPIDEIndexSet + inc ecx + + _lFNPIDEIndexSetEX: + mov ah, byte ptr [ecx] + cmp ah, 5bh ;; [ + jne _lFNPIDEIndexSetFX + inc edx + jmp _lFNPIDEIndexSetCopy + + _lFNPIDEIndexSetFX: + cmp ah, 5dh ;; ] + jne _lFNPIDEIndexSetCopy + dec edx + jns _lFNPIDEIndexSetCopy + + mov word ptr [edi], 0a0dh ;; nl + mov word ptr [ecx-03h], 7871h ;; qx + mov byte ptr [ecx-01h], al + add edi, 02h + xor edx, edx + mov ecx, ebp + xor eax, eax + jmp _lFNPIncDecSTX_Norm + + _lFNPIDEIndexSetCopy: + mov byte ptr [ecx], 20h ;; bs + mov byte ptr [edi], ah + inc ecx + inc edi + jmp _lFNPIDEIndexSetEX + ;;---------------- + ;;---------------- + + ;;---------------- + ;; post + + ;;---------------- + ;; scan + _lFNPIDS_00p: + dec ecx + mov al, byte ptr [ecx] + + cmp al, 5dh ;; ] + jne _lFNPIDS_01p + inc edx + jmp _lFNPIDS_00p + + _lFNPIDS_01p: + cmp al, 5bh ;; [ + jne _lFNPIDS_02p + test edx, edx + jz _lFNPIDS_04p + dec edx + js _lFNPIDS_04p + jmp _lFNPIDS_00p + + _lFNPIDS_02p: + cmp al, 28h ;; ( + jne _lFNPIDS_03p + test edx, edx + jz _lFNPIDS_04p + mov al, byte ptr [ecx-01h] + cmp byte ptr [_bAscii_00+eax], ah + je _lFNPIDS_00p + jmp _lFNPIDEIp + + _lFNPIDS_03p: + cmp byte ptr [_bAscii_03+eax], ah + jne _lFNPIDS_00p + test edx, edx + jnz _lFNPIDS_00p + + _lFNPIDS_04p: + mov ecx, ebp + ;;---------------- + + ;;---------------- + ;; norm + _lFNPIncDecSTXPost: + mov byte ptr [_bCodePosOp], 01h ;; post operation = 1 + _lFNPIncDecSTXPostNext: + dec ebp + mov al, byte ptr [ebp] + cmp al, 5dh ;; ] + jne _lFNPIncDecSTXPost_00 + inc edx + jmp _lFNPIncDecSTXPostNext + _lFNPIncDecSTXPost_00: + cmp byte ptr [_bAscii_03+eax], ah + jnz _lFNPIncDecSTXPostNext + test edx, edx + jz _lFNPIncDecSTXPost_01 + cmp al, 5bh ;; [ + jne _lFNPIncDecSTXPostNext + dec edx + jmp _lFNPIncDecSTXPostNext + + _lFNPIncDecSTXPost_01: + inc ebp + sub ecx, ebp + lea edx, [ecx+01h] + mov dword ptr [esi], 20746573h ;; set_ + add esi, 04h + + _lFNPIncDecSTXCopyEX: + mov al, byte ptr [ebp] + inc ebp + mov byte ptr [esi], al + mov byte ptr [esi+edx], al + inc esi + dec ecx + jnz _lFNPIncDecSTXCopyEX + mov byte ptr [esi], 3dh ;; = + add esi, edx + pop eax + or eax, 0a0d3100h ;; x 1 new line + mov dword ptr [esi], eax + add esi, 04h + jmp _lFNPIncDecSTXNext + ;;---------------- + + ;;---------------- + ;; ex index + _lFNPIDEIpEX: + inc edx + _lFNPIDEIp: + dec ecx + cmp byte ptr [ecx], 5dh ;; ] + je _lFNPIDEIpEX + cmp byte ptr [ecx], 5bh ;; [ + jne _lFNPIDEIp + dec edx + jnz _lFNPIDEIp + + inc byte ptr [_bFCLL] +; push edi + mov al, byte ptr [_bFCLL] +; mov edi, dword ptr [_dFCPL] + + mov dword ptr [edi], 20746573h ;; set_ + mov dword ptr [edi+04h], 3d207871h ;; qx_= + mov byte ptr [edi+06h], al + add edi, 08h + lea edx, [ebp-01h] + + _lFNPIDEIndexSetp: + inc ecx + mov ah, byte ptr [ecx] + mov byte ptr [edi], ah + inc edi + mov byte ptr [ecx], 20h ;; bs + cmp ecx, edx + jne _lFNPIDEIndexSetp + + inc ecx + mov word ptr [edi-01h], 0a0dh + mov dword ptr [ebp-04h], 5d207871h ;; qx*] + inc edi + mov byte ptr [ebp-02h], al + xor eax, eax +; mov dword ptr [_dFCPL], edi +; pop edi + xor edx, edx + jmp _lFNPIncDecSTXPost + ;;---------------- + ;;---------------- + + ;;---------------- + ;; copy code + _lFNPIncDecSTXEnd: + + ;;---------------- + cmp byte ptr [_bCodeSys], 00h + je _lFNPIncDecSTXEndDD + + cmp byte ptr [_bCodePosOp], 00h + je _lFNPIncDecSTXEndFL + + mov eax, offset _bFuncCodeOneLine + + cmp word ptr [eax], 6669h ;; if + jne _lFNPEXExit + + ;;---------------- + ;; if + mov byte ptr [_bTempBool], 01h + mov dword ptr [eax], 20746573h ;; set_ + mov dword ptr [eax+04h], 765f6a63h ;; cj_v + mov dword ptr [eax+08h], 5f363636h ;; 666_ + mov word ptr [eax+0ch], 3d62h ;; b= + + mov dword ptr [esi], 63206669h ;; if_c + mov dword ptr [esi+04h], 36765f6ah ;; j_v6 + mov dword ptr [esi+08h], 625f3636h ;; 66_b + mov dword ptr [esi+0ch], 65687420h ;; _the + mov dword ptr [esi+10h], 000a0d6eh ;; en__ + + add esi, 13h + + _lFNPIncDecSTXEndRemThen: + inc eax + cmp dword ptr [eax], 6e656874h ;; then + jne _lFNPIncDecSTXEndRemThen + cmp word ptr [eax+04h], 0a0dh ;; nl + jne _lFNPIncDecSTXEndRemThen + mov dword ptr [eax], 20202020h ;; bs + jmp _lFNPIncDecSTXEndFL + ;;---------------- + + ;;---------------- + ;; exitwhen + _lFNPEXExit: + cmp dword ptr [eax], 74697865h ;; exit + jne _lFNPEXRetn + + mov dword ptr [eax], 20746573h ;; set_ + mov dword ptr [eax+04h], 765f6a63h ;; cj_v + mov dword ptr [eax+08h], 5f363636h ;; 666_ + mov word ptr [eax+0ch], 3d62h ;; b= + + mov byte ptr [_bTempBool], 01h + + mov dword ptr [esi], 74697865h ;; exit + mov dword ptr [esi+04h], 6e656877h ;; when + mov dword ptr [esi+08h], 5f6a6320h ;; _cj_ + mov dword ptr [esi+0ch], 36363677h ;; v666 + mov dword ptr [esi+10h], 0a0d625fh ;; _b__ + + add esi, 14h + + jmp _lFNPIncDecSTXEndFL + ;;---------------- + + ;;---------------- + ;; return + _lFNPEXRetn: + mov byte ptr [_bTempType], 01h + mov dword ptr [eax], 20746573h ;; set_ + mov dword ptr [eax+04h], 765f6a63h ;; cj_v + mov dword ptr [eax+08h], 5f363636h ;; 666_ + mov word ptr [eax+0ch], 3d72h ;; r= + + mov dword ptr [esi], 75746572h ;; retu + mov dword ptr [esi+04h], 63206e72h ;; rn_c + mov dword ptr [esi+08h], 36765f6ah ;; j_v6 + mov dword ptr [esi+0ch], 725f3636h ;; 66_r + mov word ptr [esi+10h], 0a0dh ;; nl + + add esi, 12h + ;;---------------- + + _lFNPIncDecSTXEndFL: + mov byte ptr [_bCodeSys], 00h + ;;---------------- + + ;;---------------- + _lFNPIncDecSTXEndDD: + mov edx, esi + + mov ecx, dword ptr [_dFCPL] + mov esi, offset _bFuncPostEX + sub ecx, esi + rep movsb + mov dword ptr [_dFCPL], offset _bFuncPostEX + + ;;---------------- + ;; locals + cmp dword ptr [_bFuncCodeOneLine], 61636f6ch ;; loca + jne _lFNPIncDecSTXEndSFXD_Pre + cmp word ptr [_bFuncCodeOneLine+04h], 206ch ;; l_ + jne _lFNPIncDecSTXEndSFXD_Pre + + mov dword ptr [_dFCB], edi + mov edi, dword ptr [_dFCL] + mov esi, offset _bFuncCodeOneLine + cmp dword ptr [_dFCB], offset _bFuncCodeBase + jne _lFNPLoc_02 + + ;;---------------- + ;; norm + _lFNPLoc_00: + cmp word ptr [esi], 0a0dh ;; nl + je _lFNPLoc_01 + movsb + jmp _lFNPLoc_00 + + _lFNPLoc_01: + movsw + mov dword ptr [_dFCL], edi + mov edi, dword ptr [_dFCB] + jmp _lFNPIncDecSTXEndSFXD + ;;---------------- + + ;;---------------- + ;; ex + _lFNPLoc_02: + cmp word ptr [esi], 0a0dh ;; nl + je _lFNPLoc_00 + cmp byte ptr [esi], 3dh ;; = + je _lFNPLoc_03 + + movsb + jmp _lFNPLoc_02 + + ;;---------------- + ;; scan + _lFNPLoc_03: + mov ecx, esi + xor eax, eax + + _lFNPLoc_03_AX: + inc ecx + + _lFNPLoc_03_AXX: + cmp word ptr [ecx], 0a0dh + je _lFNPLoc_00 + + _lFNPLoc_03_BX: + mov al, byte ptr [ecx] + cmp al, 22h ;; " + je _lFNPLoc_03_Str + + cmp al, 30h + jb _lFNPLoc_03_AX + cmp al, 3ah + jb _lFNPLoc_03_Dgt + cmp byte ptr [_bAscii_00+eax], ah + je _lFNPLoc_03_AX + + ;;---------------- + ;; check word + mov ebp, offset _sCodeConst + push ecx + + _lFNPLoc_03_Word: + mov al, byte ptr [ecx] + cmp byte ptr [ebp], al + jne _lFNPLoc_03_WordNext + inc ecx + inc ebp + jmp _lFNPLoc_03_Word + + _lFNPLoc_03_WordNext: + cmp byte ptr [_bAscii_00+eax], ah + jne _lFNPLoc_03_WordNextFX + cmp byte ptr [ebp], ah + jne _lFNPLoc_03_WordNextFX + + add esp, 04h + jmp _lFNPLoc_03_AXX + + _lFNPLoc_03_WordNextFX: + mov ecx, dword ptr [esp] + _lFNPLoc_03_WordNextEX: + inc ebp + cmp byte ptr [ebp], ah + jne _lFNPLoc_03_WordNextEX + + inc ebp + cmp byte ptr [ebp], 00h + jne _lFNPLoc_03_Word + + pop ecx + jmp _lFNPLoc_05 + ;;---------------- + + _lFNPLoc_03_Dgt: + inc ecx + mov al, byte ptr [ecx] + cmp byte ptr [_bAscii_00+eax], ah + jne _lFNPLoc_03_Dgt + jmp _lFNPLoc_03_AXX + + _lFNPLoc_03_Str: + inc ecx + cmp byte ptr [ecx], 5ch ;; \ + jne _lFNPLoc_03_StrEX + add ecx, 02h + _lFNPLoc_03_StrEX: + cmp byte ptr [ecx], 22h ;; " + jne _lFNPLoc_03_Str + jmp _lFNPLoc_03_AX + ;;---------------- + + _lFNPLoc_05: + mov word ptr [edi], 0a0dh + add edi, 02h + mov dword ptr [_dFCL], edi + mov edi, dword ptr [_dFCB] + mov dword ptr [edi], 20746573h ;; set_ + add edi, 04h + + _lFNPLoc_04: + dec esi + cmp byte ptr [esi-01h], 20h ;; bs + jne _lFNPLoc_04 + jmp _lFNPIncDecSTXEndSFXD + ;;---------------- + ;;---------------- + + _lFNPIncDecSTXEndSFXD_Pre: + mov esi, offset _bFuncCodeOneLine + + _lFNPIncDecSTXEndSFXD: + mov ecx, edx + sub ecx, esi + rep movsb + + mov al, byte ptr [_bFCLL] + cmp byte ptr [_bFCLLMAX], al + jg _lFNPIncDecSTXEndXX + mov byte ptr [_bFCLLMAX], al + _lFNPIncDecSTXEndXX: + mov byte ptr [_bFCLL], 40h + ;;---------------- + + mov esi, dword ptr [_dBuffer] + + mov dword ptr [_dFCB], edi + jmp _lFNPLine + ;;---------------- + ;;---------------- + + _lbl: + cmp cl, 06h ;; ex bs + je _lFNPCopyParseNext + + _lbl: + cmp cl, 01h ;; # + jne _lFNPCopyParseCX + + ;;---------------- + ;; parse # + cmp cx, 3001h ;; #0 + jne _next + mov word ptr [esi-01h], 0a0dh ;; new line + inc esi + mov dword ptr [edi], 65687420h ;; _the + mov dword ptr [edi+04h], 000a0d6eh ;; n new line + add edi, 07h ;; ! + jmp _lFNPIncDecSTX + + _lbl: + cmp cx, 3101h ;; #1 + jne _next + mov word ptr [esi-01h], 0a0dh ;; new line + mov dword ptr [edi], 000a0d29h ;; )__x + inc esi + add edi, 03h ;; !!! + jmp _lFNPIncDecSTX + + _lbl: + cmp cx, 6601h ;; #f + jne _next + inc esi + mov dword ptr [edi], 6e650a0dh ;; nl en + mov dword ptr [edi+04h], 6f6f6c64h ;; dloo + mov dword ptr [edi+08h], 000a0d70h ;; p nl + add edi, 0bh + jmp _lFNPIncDecSTX + + ;;---------------- + ;; func name + _lbl: + cmp cx, 3801h ;; #8 + jne _next + + inc esi + sub edi, 02h + xor eax, eax + mov ecx, dword ptr [_dLastFuncName] + + _lFNPFuncNameCopy: + mov al, byte ptr [ecx] + cmp byte ptr [_bAscii_00+eax], ah + je _lFNPCopyParseNext + stosb + inc ecx + jmp _lFNPFuncNameCopy + ;;---------------- + + _lbl: + cmp cx, 3301h ;; #3 + jne _next + mov word ptr [esi-01h], 0a0dh ;; new line + inc esi + mov dword ptr [edi], 6e650a0dh ;; __en + mov dword ptr [edi+04h], 6f6c6764h ;; dglo + mov dword ptr [edi+08h], 736c6162h ;; bals + mov word ptr [edi+0ch], 0a0dh ;; __ + add edi, 0eh + jmp _lFNPLine + + _lbl: + cmp cx, 7801h ;; #x + je _lFNPUnBlockErr + + _lbl: + cmp cx, 7001h ;; #p + jne _next + mov al, 2bh ;; + + + ;;---------------- + ;; inc/dec + _lFNPIncDec: + + ;;---------------- + ;; scan + cmp byte ptr [edi-01h], 5dh ;; ] + jne _lFNPIncDecNormJJ + + mov edx, edi + xor ecx, ecx + + _lFNPIncDecFXScan: + dec edx + + cmp byte ptr [edx], 28h ;; ( + jne _lFNPIncDecFXScan_00 + mov cl, byte ptr [edx-01h] + cmp byte ptr [_bAscii_00+ecx], ch + je _lFNPIncDecFXScan + + ;;---------------- + ;; ex index + _lFNPIncDecEXI_00: + dec edx + cmp dword ptr [edx-04h], 20746573h ;; set_ + jne _lFNPIncDecEXI_00 + + _lFNPIncDecEXI_01: + inc edx + cmp byte ptr [edx], 5bh ;; [ + jne _lFNPIncDecEXI_01 + + mov ebp, esp + push ebx + mov ebx, dword ptr [ebp] + + mov ecx, dword ptr [_dFCPL] + inc edx + + inc byte ptr [_bFCLL] + mov dword ptr [ecx], 20746573h ;; set_ + mov ah, byte ptr [_bFCLL] + mov dword ptr [ecx+04h], 3d207871h ;; qx_= + mov byte ptr [ecx+06h], ah + add ecx, 08h + + _lFNPIncDecEXI_02: + mov ah, byte ptr [edx] + mov byte ptr [ecx], ah + mov byte ptr [edx], 20h + cmp ebx, edx + jne _lFNPIncDecEXI_03 + mov dword ptr [ebp], ecx + sub ebp, 04h + mov ebx, dword ptr [ebp] + + _lFNPIncDecEXI_03: + inc ecx + inc edx + cmp edx, edi + jne _lFNPIncDecEXI_02 + + mov ah, byte ptr [_bFCLL] + mov word ptr [ecx-01h], 0a0dh ;; nl + mov dword ptr [edi-04h], 5d207871h ;; qx*] + inc ecx + mov byte ptr [edi-02h], ah + + mov dword ptr [_dFCPL], ecx + pop ebx + + jmp _lFNPIncDecNormJJ + ;;---------------- + + _lFNPIncDecFXScan_00: + cmp word ptr [edx], 0a0dh ;; nl + jne _lFNPIncDecFXScan + ;;---------------- + + _lFNPIncDecNormJJ: + mov edx, edi + mov ecx, edi + _lFNPIncDecEX: + dec edx + cmp dword ptr [edx-04h], 20746573h ;; set_ + jne _lFNPIncDecEX + mov byte ptr [edi], 3dh ;; = + inc edi + _lFNPIncDecSX: + mov ah, byte ptr [edx] + mov byte ptr [edi], ah + inc edx + inc edi + cmp edx, ecx + jb _lFNPIncDecSX + mov byte ptr [edi], al + mov dword ptr [edi+01h], 000a0d31h ;; 1__x + add edi, 04h + add esi, 03h ;; !!! + jmp _lFNPIncDecSTX + ;;---------------- + + _lbl: + cmp cx, 6d01h ;; #m + ;;jne _next + mov al, 2dh ;; - + jmp _lFNPIncDec + ;;---------------- + + ;;---------------- + ;; multidefined variables + _lFNPVarX: + inc esi + mov edx, esi ;; store esi + mov esi, dword ptr [_dVarParams] +; mov word ptr [edi], 0a0dh +; add edi, 02h + _lbl: ;; search begin of parsed line + dec esi + cmp word ptr [esi-02h], 0a0dh + je _lNPVarXKeyPreX + cmp byte ptr [esi-01h], 00h + jne _prew + + _lNPVarXKeyPreX: + mov eax, dword ptr [esi] + + cmp eax, 61636f6ch ;; loca + jne _next + cmp word ptr [esi+04h], 206ch ;; l_ + jne _next + movsd + movsw + jmp _lNPVarXKeyPreX + + _lbl: + cmp eax, 76697270h ;; priv + jne _next + cmp dword ptr [esi+04h], 20657461h ;; ate_ + jne _next + movsd + movsd + jmp _lNPVarXKeyPreX + + _lbl: + cmp eax, 6c627570h ;; publ + jne _next + cmp word ptr [esi+04h], 6369h ;; ic + jne _next + cmp byte ptr [esi+06h], 20h ;; _ + jne _next + movsd + movsw + movsb + jmp _lNPVarXKeyPreX + + _lbl: + cmp eax, 74617473h ;; stat + jne _next + cmp word ptr [esi+04h], 6369h ;; ic + jne _next + cmp byte ptr [esi+06h], 20h ;; _ + jne _next + movsd + movsw + movsb + jmp _lNPVarXKeyPreX + + _lbl: + cmp eax, 736e6f63h ;; cons + jne _next + cmp dword ptr [esi+04h], 746e6174h ;; tant + jne _next + cmp byte ptr [esi+08h], 20h ;; _ + jne _next + movsd + movsd + movsb + jmp _lNPVarXKeyPreX + + _lbl: + cmp eax, 75626564h ;; debu + jne _next + cmp word ptr [esi+04h], 2067h ;; g_ + jne _next + movsd + movsw + jmp _lNPVarXKeyPreX + + _lbl: + movsb ;; copy type + cmp byte ptr [esi-01h], 20h + jne _prew + + _lbl: ;; search next word + cmp dword ptr [esi], 61727261h ;; arra + jne _next + cmp word ptr [esi+04h], 2079h ;; y_ + jne _next + mov dword ptr [edi], 61727261h ;; arra + mov word ptr [edi+04h], 2079h ;; y_ + add edi, 06h + _lbl: + mov esi, edx ;; restore esi + xor eax, eax + jmp _lFNPCopyParseNext + ;;---------------- + ;;---------------- + ;;---------------- + + _lFNPEnd: + cmp word ptr [edi-02h], 0a0dh ;; new line + jne _next + sub edi, 02h + _lbl: + + ;;---------------- + add esi, 04h + mov esp, _dStackPos ;; restore esp + sub edi, esi ;; edi = new script size + add esp, 04h + + ;;---------------- + mov _dCurrStr, offset _sProg_05 + mov eax, 64h + call _lSetProg + ;;---------------- + + retn + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; parse endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;------------------------------------------------------------------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc codep + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _lOpenMapCode: + + push THREAD_PRIORITY_TIME_CRITICAL + push dword ptr [_hTrd] + call _imp__SetThreadPriority@8 + + mov dword ptr [_dPreStackPos], esp ;; for error + + push 0ffh + push 04h + push offset _sMapPath + call _imp__MpqOpenArchiveForUpdate@12 + + test eax, eax + jnz _lCodep_00 + + ;;---------------- + ;; error + push MB_ICONERROR + push offset _sWinName + push offset _sErr_Arch + push dword ptr [_hWnd] + call _imp__MessageBoxA@16 + push 01h + call _imp__ExitProcess@4 + ;;---------------- + + _lCodep_00: + push offset _sAttr + push eax + + push offset _fScr + push 00h + push offset _sWJ + push eax + call _imp__SFileOpenFileEx@16 + + test eax, eax + jnz _next + + ;;---------------- + ;; error + push MB_ICONERROR + push offset _sWinName + push offset _sErr_Code + push dword ptr [_hWnd] + call _imp__MessageBoxA@16 + push 01h + call _imp__ExitProcess@4 + ;;---------------- + + _lbl: + push 00h + push _fScr + call _imp__SFileGetFileSize@8 + mov ebx, eax + + shl eax, 06h + add eax, 00800000h ;; add 8 megabyte to include + push eax + push GMEM_ZEROINIT + call _imp__GlobalAlloc@8 + push eax ;; SrcMem handle + + push eax + call _imp__GlobalLock@4 + mov esi, eax ;; esi = SrcMem address + push eax + lea edi, [eax+ebx+04h] ;; edi = DestMem address + + push edi + + push 00h + push 00h + push edi + push esi + push _fScr + call _imp__SFileReadFile@20 + + ;;---------------- + ;; start code processing + call dword ptr [_dMapProcCode] + add esp, 04h + ;;---------------- + + push dword ptr [_dfilename] + call _imp__DeleteFileA@4 + + push 00h + push FILE_ATTRIBUTE_ARCHIVE + push CREATE_ALWAYS + push 00h + push FILE_SHARE_WRITE + push GENERIC_WRITE + push dword ptr [_dfilename] + call _imp__CreateFileA@28 + + push eax ;; ---> _imp__CloseHandle@4 + + push 00h + push offset _dBuffer + push edi ;; <--- !!! byter to write + push esi + push eax + call _imp__WriteFile@20 + + call _imp__CloseHandle@4 + + call _imp__GlobalUnlock@4 + call _imp__GlobalFree@4 + + mov ebp, dword ptr [esp] + call _imp__MpqDeleteFile@8 + + push 09h + push 02h ;; 08h + push 0201h ;; MAFA_REPLACE_EXISTING + push offset _sWJ + push dword ptr [_dfilename];offset _sWJ + push ebp + call _imp__MpqAddFileToArchiveEx@24 + + push ebp + call _imp__MpqCompactArchive@4 + + push 00h + push ebp + call _imp__MpqCloseUpdatedArchive@8 + + _lOpenMapCodeEnd: + push 00h + push 00h + push WM_PROCEND + push _hWnd + call _imp__PostMessageA@16 + + xor eax, eax + retn + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; codep endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;------------------------------------------------------------------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc main + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + start: ;; <--- + + ;;---------------- + ;; command line + call _imp__GetCommandLineA@0 + mov ebx, eax + dec ebx + + _lCLScanStart: + inc ebx + cmp byte ptr [ebx], 00h + je _lCLAbout + cmp byte ptr [ebx], 2fh + jne _lCLScanStart + + ;;---------------- + ;; do not remove unused code + cmp dword ptr [ebx+01h], 20706f6eh ;; nop + jne _lCLScanVerEX + + mov dword ptr [_dWarVerSL], 00h + add ebx, 05h + + jmp _lCLScanMap + ;;---------------- + + ;;---------------- + ;; version + _lCLScanVerEX: + cmp dword ptr [ebx+01h], 20333276h ;; v23 + jne _lCLScanVer + + add ebx, 05h + mov dword ptr [_dWarVerSL], offset _sVer23 + jmp _lCLScanDbg + + _lCLScanVer: + cmp dword ptr [ebx+01h], 20343276h ;; v24 + jne _lCLScanDbg + + add ebx, 05h + mov dword ptr [_dWarVerSL], offset _sVer24 + ;;---------------- + + ;;---------------- + ;; debug mode? + _lCLScanDbg: + cmp dword ptr [ebx+01h], 20676264h ;; dbg_ + jne _lCLScanMap + add ebx, 05h + mov dword ptr [_dDbgOff], offset _lCRDebugAdd + ;;---------------- + + ;;---------------- + ;; parse mappath + _lCLScanMap: + cmp dword ptr [ebx+01h], 6f70616dh ;; mapo ;; mapoptz="..." + jne _lCLScanMapEX + mov dword ptr [_dMapProcCode], offset _lMapOptimizeCode + mov dword ptr [_dfilename], offset _sWJO + jmp _lCLMapScanSX + + _lCLScanMapEX: + cmp dword ptr [ebx+01h], 7070616dh ;; mapp ;; mappars="..." + jne _lCLAbout + mov dword ptr [_dMapProcCode], offset _lMapParseCode + + _lCLMapScanSX: + mov edi, offset _sMapPath + lea esi, [ebx+0ah] + + _lCLScanMapNext: + mov al, byte ptr [esi] + cmp al, 22h + je _lCLScanMapEnd + + mov byte ptr [edi], al + mov byte ptr [edi+_dMapPathToEX], al + inc esi + inc edi + jmp _lCLScanMapNext + + ;;---------------- + ;; find map directory + _lCLScanMapEnd: + add edi, _dMapPathToEX + _lCLFindMapDirr: + dec edi + cmp byte ptr [edi], 5ch + jne _lCLFindMapDirr + mov dword ptr [_dMapPathEnd], edi + jmp _lCLSetCurrDir + ;;---------------- + ;;---------------- + + ;;---------------- + ;; about + _lCLAbout: + mov dword ptr [_hWndCls], CS_HREDRAW or CS_VREDRAW or CS_BYTEALIGNWINDOW + mov dword ptr [_hWndCls+04h], offset _lInfoStart + mov dword ptr [_hWndCls+18h], 00h + mov dword ptr [_dBuffer], 00ff0000h + mov dword ptr [_dWndStlEx], WS_VISIBLE or WS_CAPTION or WS_SYSMENU + + push IDC_ARROW + push 00h + call _imp__LoadCursorA@8 + mov dword ptr [_dStdCursor], eax + + push 40h + push 00400000h + call _imp__LoadCursorA@8 + mov dword ptr [_dExCursor], eax + + push offset _xWWWFont + call _imp__CreateFontIndirectA@4 + mov dword ptr [_dWWWFont], eax + + jmp _lSrartEX + ;;---------------- + ;;---------------- + + ;;---------------- + ;; set legal current directory + _lCLSetCurrDir: + mov edi, offset _sCurrDir + push edi + push edi + push 0200h + call _imp__GetCurrentDirectoryA@8 + add edi, eax + cmp dword ptr [edi-04h], 7265706ch ;; lper + je _next + mov dword ptr [edi], 6964415ch ;; \Adi + mov dword ptr [edi+04h], 6c654863h ;; cHel + mov dword ptr [edi+08h], 00726570h ;; per_ + add edi, 0bh + call _imp__SetCurrentDirectoryA@4 + _lbl: + mov dword ptr [edi], 62696c5ch ;; \lib + mov byte ptr [edi+04h], 5ch ;; \ + add edi, 04h ;; !!! + mov _dCurrDirEnd, edi + ;;---------------- + + _lSrartEX: + xor ebx, ebx + ;;push ebx ;; ebx ---> ExitProcess + + ;;---------------- + ;; load gui font + ;;push 11h + ;;call _imp__GetStockObject@4 + push offset _xGuiFont + call _imp__CreateFontIndirectA@4 + mov dword ptr [_dGuiFont], eax + ;;---------------- + + ;;---------------- + ;; create main window + push 20h + push 400000h + call _imp__LoadIconA@8 + mov dword ptr [_hWndCls+14h], eax + mov dword ptr [_hErrCls+14h], eax +;; mov dword ptr [_hIconCJ], eax + + push offset _hWndCls + call _imp__RegisterClassA@4 + + push ebx + push 400000h + push ebx + push ebx + push 79h + push 0192h + push SM_CYSCREEN + call _imp__GetSystemMetrics@4 + shr eax, 01h + sub eax, 4bh + push eax + push SM_CXSCREEN + call _imp__GetSystemMetrics@4 + shr eax, 01h + sub eax, 00c9h + push eax + push dword ptr [_dWndStlEx] + push offset _sWinName + push offset _sWJ + push ebx + call _imp__CreateWindowExA@48 + mov _hWnd, eax + + push SW_SHOWNORMAL or SW_RESTORE + push eax + call _imp__ShowWindow@8 + ;;---------------- + + cmp dword ptr [_dMapProcCode], 00h + jz _lExitButton + + ;;---------------- + ;; create progress bar + push ebx ;; 02h ;; control id + push dword ptr [_hWnd] + push 12h + push 016ah + push 3eh + push 10h + push WS_CHILD or WS_VISIBLE or PBS_SMOOTH + push ebx + push offset _sProgBar + push ebx + call _imp__CreateWindowExA@48 + mov dword ptr [_hPrg], eax + ;;---------------- + + ;;---------------- + ;; create thread + push offset _hTrd + push ebx + push ebx + push offset _lOpenMapCode + push 0800h + push ebx + call _imp__CreateThread@24 + + push eax + call _imp__CloseHandle@4 + ;;---------------- + + ;;---------------- + ;; message loop + _lWndLS: + push ebx + push ebx + push ebx + push offset _hWndCls + call _imp__GetMessageA@16 + push offset _hWndCls + call _imp__DispatchMessageA@4 + jmp _lWndLS + ;;---------------- + + ;;---------------- + ;; add exit button + _lExitButton: + push ebx + push dword ptr [_hWnd] + push 16h + push 72h + push 3ch + push 90h + push WS_CHILD or WS_VISIBLE + push offset _sExit + push offset _sButton + push ebx + call _imp__CreateWindowExA@48 + + push eax ;; ---> _imp__SetFocus + + push ebx + push dword ptr [_dGuiFont] + push WM_SETFONT + push eax + + call _imp__SendMessageA@16 + + call _imp__SetFocus@4 + + jmp _lWndLS + ;;---------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; main endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc wnd + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _hWndProc: + mov eax, dword ptr [esp+08h] + + cmp eax, WM_PAINT + je _wmPaint + + cmp eax, WM_PROCEND + je _wmEnd + + cmp eax, WM_CJ_ERROR + je _wmErrS + + jmp _imp__DefWindowProcA@16 + + _wmEnd: + push 00h + call _imp__ExitProcess@4 + ret 10h + + _wmPaint: + push offset _xPntStr + push dword ptr [esp+08h] + + push dword ptr [esp+04h] + push dword ptr [esp+04h] + + call _imp__BeginPaint@8 + mov ebx, eax + + push dword ptr [_dGuiFont] + push ebx + call _imp__SelectObject@8 + + push TRANSPARENT + push ebx + call _imp__SetBkMode@8 + + push DT_LEFT or DT_SINGLELINE or DT_PATH_ELLIPSIS + push offset _xRect_01 + push 0ffffffffh + push _dCurrStr + push ebx + call _imp__DrawTextA@20 + + push DT_LEFT or DT_SINGLELINE or DT_PATH_ELLIPSIS + push offset _xRect_00 + push 0ffffffffh + push offset _sMapPath + push ebx + call _imp__DrawTextA@20 + + call _imp__EndPaint@8 + ret 10h + + _wmErrS: + push dword ptr [_hWnd] + call _imp__DestroyWindow@4 + ret 10h + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; wnd endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc infownd + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _dSiteAdrXM equ 0174h + _dSiteArdXN equ 0118h ;;0162h-50h + _dSiteAdrYM equ 1ch + _dSiteAdrYN equ 10h + + _lInfoStart: + mov eax, dword ptr [esp+08h] + + cmp eax, WM_MOUSEMOVE + je _iwmMove + + cmp eax, WM_PAINT + je _iwmPaint + + cmp eax, WM_LBUTTONDOWN + je _iwmClick + + cmp eax, WM_COMMAND + je _iwmClose + +;; cmp eax, WM_KEYDOWN +;; je _iwmKey + + cmp eax, WM_DESTROY + je _iwmClose + + jmp _imp__DefWindowProcA@16 + + _iwmClose: + push 00h + call _imp__ExitProcess@4 + +;; _iwmKey: +;; cmp dword ptr [esp+0ch], 1bh ;; esc +;; je _iwmClose +;; cmp dword ptr [esp+0ch], 0dh ;; enter +;; je _iwmClose +;; retn 10h + + _iwmMove: + mov eax, dword ptr [esp+10h] + + cmp ax, _dSiteAdrXM + jg _next + cmp ax, _dSiteArdXN + jb _next + + shr eax, 10h + + cmp al, _dSiteAdrYN + jb _next + cmp al, _dSiteAdrYM + jg _next + + cmp dword ptr [_dBuffer], 00ff4040h + je _iwmRet + mov dword ptr [_dBuffer], 00ff4040h + push dword ptr [_dExCursor] + jmp _iwmReDraw + _iwmRet: + retn 10h + + _lbl: + cmp dword ptr [_dBuffer], 00ff0000h + je _iwmRet + mov dword ptr [_dBuffer], 00ff0000h + push dword ptr [_dStdCursor] + _iwmReDraw: + call _imp__SetCursor@4 + + push RDW_INVALIDATE or RDW_ERASE + push 00h + push offset _xRect_toRedraw + push _hWnd + call _imp__RedrawWindow@16 + + retn 10h + + _iwmPaint: + push offset _xPntStr + push dword ptr [esp+08h] + + push dword ptr [esp+04h] + push dword ptr [esp+04h] + + call _imp__BeginPaint@8 + mov ebx, eax + +;; push dword ptr [_hIconCJ] +;; push 0034h +;; push 0138h +;; push ebx +;; call _imp__DrawIcon@16 + +;; push dword ptr [_hIconCJ] +;; push 34h +;; push 40h +;; push ebx +;; call _imp__DrawIcon@16 + + push dword ptr [_dGuiFont] + push ebx + call _imp__SelectObject@8 + + push TRANSPARENT + push ebx + call _imp__SetBkMode@8 + + push DT_LEFT + push offset _xRect_00 + push 0ffffffffh + push offset _sTollInfo + push ebx + call _imp__DrawTextA@20 + + push dword ptr [_dBuffer] + push ebx + call _imp__SetTextColor@8 + + push dword ptr [_dWWWFont] + push ebx + call _imp__SelectObject@8 + + push DT_RIGHT + push offset _xRect_00 + push 0ffffffffh + push offset _sSiteAdr + push ebx + call _imp__DrawTextA@20 + + call _imp__EndPaint@8 + retn 10h + + _iwmClick: + mov eax, dword ptr [esp+10h] + + cmp ax, _dSiteAdrXM + jg _next + cmp ax, _dSiteArdXN + jb _next + + shr eax, 10h + + cmp al, _dSiteAdrYN + jb _next + cmp al, _dSiteAdrYM + jg _next + + push 00h + push 00h + push 00h + push offset _sSiteAdr + push offset _sOpen + push _hWnd + call _imp__ShellExecuteA@24 + + _lbl: + retn 10h + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; infownd endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; set progress proc + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _lSetProg: + push 00h + push eax + push PBM_SETPOS + push _hPrg + call _imp__SendMessageA@16 + + _lRedraw: + push RDW_INVALIDATE or RDW_ERASE + push 00h + push 00h + push _hWnd + call _imp__RedrawWindow@16 + + retn + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; set progress endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;------------------------------------------------------------------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc error + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _lErrIn: + xor ebx, ebx + mov esi, dword ptr [_imp__SendMessageA@16] + + ;;---------------- + ;; destroy old window + push ebx + push ebx + push WM_CJ_ERROR + push dword ptr [_hWnd] + call esi ;; _imp__SendMessageA@16 + ;;---------------- + + ;;---------------- + ;; beep + push 0ffffffffh + call _imp__MessageBeep@4 + ;;---------------- + + ;;---------------- + ;; create new window + push offset _hErrCls + call _imp__RegisterClassA@4 + + push ebx + push 400000h + push ebx + push ebx + push 0300h ;; height + push 0400h ;; width + push SM_CYSCREEN + call _imp__GetSystemMetrics@4 + shr eax, 01h + sub eax, 0180h + push eax + push SM_CXSCREEN + call _imp__GetSystemMetrics@4 + shr eax, 01h + sub eax, 0200h + push eax + push WS_VISIBLE or WS_OVERLAPPEDWINDOW + push offset _sSynErr + push dword ptr [esp] + push ebx + call _imp__CreateWindowExA@48 + mov _hWnd, eax + ;;---------------- + +;; push SW_SHOWNORMAL or SW_RESTORE +;; push eax +;; call _imp__ShowWindow@8 + + ;;---------------- + ;; edit + push ebx + push 400000h + push ebx ;; control id + push eax ;; own window + push 0210h + push 03d5h + push 20h + push 10h + push WS_CHILD or WS_VISIBLE or ES_LEFT or ES_MULTILINE or ES_READONLY or WS_HSCROLL or WS_VSCROLL or ES_NOHIDESEL + push ebx + push offset _sEditWnd + push WS_EX_CLIENTEDGE + call _imp__CreateWindowExA@48 + mov dword ptr [_hPrg], eax + + push ebx + push offset _xOutFont + call _imp__CreateFontIndirectA@4 + push eax + push eax + call _imp__CloseHandle@4 + push WM_SETFONT + push dword ptr [_hPrg] + call esi ;; _imp__SendMessageA@16 + ;;---------------- + + ;;---------------- + ;; list + push ebx + push 400000h + push ebx + push dword ptr [_hWnd] + push 90h + push 0280h + push 0240h + push 10h + push WS_CHILD or WS_VISIBLE or WS_TABSTOP or LBS_NOINTEGRALHEIGHT or LBS_HASSTRINGS or LBS_NOTIFY + push ebx + push offset _sListWnd + push WS_EX_CLIENTEDGE + call _imp__CreateWindowExA@48 + mov dword ptr [_hList], eax + + push ebx + push dword ptr [_dGuiFont] + push WM_SETFONT + push eax + call esi ;; _imp__SendMessageA@16 + ;;---------------- + + ;;---------------- + ;; exit button + push ebx + push dword ptr [_hWnd] + push 16h + push 72h + push 02bah ;; - 46h + push 0373h ;; - 62h + push WS_CHILD or WS_VISIBLE + push offset _sExit + push offset _sButton + push ebx + call _imp__CreateWindowExA@48 + mov dword ptr [_hBtn], eax + + push ebx + push dword ptr [_dGuiFont] + push WM_SETFONT + push eax + call esi ;; _imp__SendMessageA@16 + ;;---------------- + + ;;---------------- + ;; veiw code + mov ecx, dword ptr [_dErrorCodeStart] + + push ecx + push dword ptr [_hPrg] + jmp _lErrCStart + + ;;---------------- + ;; process code + _lErrCStartEX: + inc ecx + + _lErrCStart: + mov eax, dword ptr [ecx] + + ;;---------------- + ;; add stdef + cmp al, 08h + jne _next + + mov dword ptr [ecx], 64746573h ;; setd + mov word ptr [ecx+04h], 6665h ;; ef + add ecx, 06h + jmp _lErrCStart + ;;---------------- + + ;;---------------- + ;; add backspaces + _lbl: + cmp al, 06h + jne _next + + _lErrCAddBS: + mov byte ptr [ecx], 20h + inc ecx + jmp _lErrCStart + + _lbl: + cmp al, 07h + je _lErrCAddBS + cmp al, 05h + je _lErrCAddBS + cmp al, 04h + je _lErrCAddBS + cmp al, 03h + je _lSRNL + cmp al, 02h + je _lErrCAddBS + ;;---------------- + + ;;---------------- + ;; blocks + cmp ax, 7801h ;; #x + jne _next + mov word ptr [ecx], 0a0dh ;; nl + mov dword ptr [ecx+02h], 0a0d207bh ;; {_nl + add ecx, 06h + jmp _lErrCStart + + _lbl: + cmp ax, 7901h ;; #x + jne _next + _lSRNLEX: + mov word ptr [ecx], 207dh ;; }_ + mov dword ptr [ecx+02h], 20202020h ;; ____ + add ecx, 06h + jmp _lErrCStart + ;;---------------- + + ;;---------------- + ;; add nl + _lSRNL: + cmp word ptr [ecx-02h], 0a0dh + je _lSRNLEX + mov byte ptr [ecx], 0dh + jmp _lErrCStartEX + ;;---------------- + + ;;---------------- + ;; error + _lbl: + cmp ax, 6701h ;; #g + jne _next + + mov dword ptr [ecx], 72726523h ;; #err + add ecx, 04h + jmp _lErrCStart + ;;---------------- + + ;;---------------- + ;; # + _lbl: + cmp al, 01h + jne _next + + ;;---------------- + ;; single lined definr + cmp ax, 6301h ;; #c + jne _lErrSSX_00 + + cmp eax, 6d756301h ;; #cum + jne _lErrDefEX + + mov word ptr [ecx], 6e65h ;; en + add ecx, 02h + jmp _lErrCStart + + _lErrDefEX: + mov word ptr [ecx], 6564h ;; de + add ecx, 02h + jmp _lErrCStart + ;;---------------- + + ;;---------------- + ;; multilined define + _lErrSSX_00: + cmp eax, 6d756401h ;; #dum + jne _lErrSSX_02 + + mov word ptr [ecx], 6e65h ;; en + add ecx, 04h + jmp _lErrCStart + + _lErrSSX_02: + cmp ax, 6401h ;; #d + jne _lErrSSX_01 + + cmp dword ptr [ecx+02h], 656e6966h ;; fine + jne _lErrSSX_00_EX + + mov word ptr [ecx], 6564h ;; de + add ecx, 02h + jmp _lErrCStart + + _lErrSSX_00_EX: + mov word ptr [ecx], 0a0dh ;; nl + add ecx, 02h + jmp _lErrCStart + ;;---------------- + + _lErrSSX_01: + mov word ptr [ecx], 2020h ;; __ + add ecx, 02h + jmp _lErrCStart + ;;---------------- + + ;;---------------- + ;; null + _lbl: + cmp al, 00h ;; 00h + jne _lErrCStartEX + ;;---------------- + + ;;---------------- + ;; add info + ;;mov dword ptr [ecx], 2a2a2a20h ;; _*** + ;;---------------- + ;;---------------- + call _imp__SetWindowTextA@8 + ;;---------------- + + ;;---------------- + ;; select first error + mov eax, _dErrorCodeStart + sub dword ptr [_xErrorTable+08h], eax + sub dword ptr [_xErrorTable+04h], eax + sub dword ptr [_xErrorTable+18h], eax + sub dword ptr [_xErrorTable+14h], eax + + push dword ptr [_xErrorTable+08h] + push dword ptr [_xErrorTable+04h] + push EM_SETSEL + push dword ptr [_hPrg] + call esi ;; _imp__SendMessageA@16 + + push ebx + push ebx + push EM_SCROLLCARET + push dword ptr [_hPrg] + call esi ;; _imp__SendMessageA@16 + + push dword ptr [_xErrorTable] + push ebx + push LB_ADDSTRING + push dword ptr [_hList] + call esi ;; _imp__SendMessageA@16 + + cmp dword ptr [_xErrorTable+10h], 00h + je _next + push dword ptr [_xErrorTable+10h] + push ebx + push LB_ADDSTRING + push dword ptr [_hList] + call esi ;; _imp__SendMessageA@16 + _lbl: + ;;---------------- + + _lErrLS: + push ebx + push ebx + push ebx + push offset _hErrCls + call _imp__GetMessageA@16 + push offset _hErrCls + call _imp__DispatchMessageA@4 + jmp _lErrLS + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; error endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; proc wnd_err + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + _hErrProc: + mov eax, dword ptr [esp+08h] + + cmp eax, WM_SIZE + je _ewmSize + + cmp eax, WM_SIZING + je _ewmCSize + + cmp eax, WM_PAINT + je _ewmPaint + + cmp eax, WM_COMMAND + je _ewmCmd + + cmp eax, WM_DESTROY + je _ewmClose + + jmp _imp__DefWindowProcA@16 + + ;;---------------- + ;; close + _ewmClose: + push 01h + call _imp__ExitProcess@4 + ;;---------------- + + ;;---------------- + ;; command + _ewmCmd: + mov ebx, dword ptr [esp+0ch] + shr ebx, 10h + cmp ebx, BN_CLICKED + je _ewmClose + cmp ebx, LBN_SELCHANGE + jne _next + + mov esi, _imp__SendMessageA@16 + + push 00h + push 00h + push LB_GETCURSEL + push dword ptr [_hList] + call esi ;; _imp__SendMessageA@16 + + shl eax, 04h + + push dword ptr [_xErrorTable+08h+eax] + push dword ptr [_xErrorTable+04h+eax] + push EM_SETSEL + push dword ptr [_hPrg] + call esi ;; _imp__SendMessageA@16 + + push ebx + push ebx + push EM_SCROLLCARET + push dword ptr [_hPrg] + call esi ;; _imp__SendMessageA@16 + + _lbl: + retn 10h + ;;---------------- + + ;;---------------- + ;; sizing + _ewmCSize: + mov ecx, dword ptr [esp+10h] + mov ebx, dword ptr [esp+0ch] + + dec ebx ;; WMSZ_LEFT + jnz _next + call _ewmCSizeLeft + retn 10h + + _lbl: + dec ebx ;; WMSZ_RIGHT + jnz _next + call _ewmCSizeRight + retn 10h + + _lbl: + dec ebx ;; WMSZ_TOP + jnz _next + call _ewmCSizeTop + retn 10h + + _lbl: + dec ebx ;; WMSZ_TOPLEFT + jnz _next + call _ewmCSizeTop + call _ewmCSizeLeft + retn 10h + + _lbl: + dec ebx ;; WMSZ_TOPRIGHT + jnz _next + call _ewmCSizeTop + call _ewmCSizeRight + retn 10h + + _lbl: + dec ebx ;; WMSZ_BOTTOM + jnz _next + call _ewmCSizeBottom + retn 10h + + _lbl: + dec ebx ;; WMSZ_BOTTOMLEFT + jnz _next + call _ewmCSizeBottom + call _ewmCSizeLeft + retn 10h + + _lbl: +;; dec edx ;; WMSZ_BOTTOMRIGHT +;; jnz _next + call _ewmCSizeBottom + call _ewmCSizeRight + retn 10h + + _ewmCSizeBottom: + mov edi, dword ptr [ecx+0ch] + mov esi, dword ptr [ecx+04h] + sub edi, esi + cmp edi, 0300h + jg _next + add esi, 0300h + mov dword ptr [ecx+0ch], esi + _lbl: + retn + + _ewmCSizeRight: + mov edi, dword ptr [ecx+08h] + mov esi, dword ptr [ecx] + sub edi, esi + cmp edi, 0400h + jg _next + add esi, 0400h + mov dword ptr [ecx+08h], esi + _lbl: + retn + + _ewmCSizeTop: + mov edi, dword ptr [ecx+0ch] + mov esi, dword ptr [ecx+04h] + sub edi, esi + cmp edi, 0300h + jg _next + mov edi, dword ptr [ecx+0ch] + sub edi, 0300h + mov dword ptr [ecx+04h], edi + _lbl: + retn + + _ewmCSizeLeft: + mov edi, dword ptr [ecx+08h] + mov esi, dword ptr [ecx] + sub edi, esi + cmp edi, 0400h + jg _next + mov edi, dword ptr [ecx+08h] + sub edi, 0400h + mov dword ptr [ecx], edi + _lbl: + retn + ;;---------------- + + ;;---------------- + ;; paint + _ewmPaint: + push offset _xPntStr + push dword ptr [esp+08h] + + push dword ptr [esp+04h] + push dword ptr [esp+04h] + + call _imp__BeginPaint@8 + mov ebx, eax + + push dword ptr [_dGuiFont] + push ebx + call _imp__SelectObject@8 + + push TRANSPARENT + push ebx + call _imp__SetBkMode@8 + + push DT_LEFT + push offset _xRect_02 + push 0ffffffffh + push offset _sErr_Title + push ebx + call _imp__DrawTextA@20 + + call _imp__EndPaint@8 + retn 10h + ;;---------------- + + ;;---------------- + ;; size + _ewmSize: + cmp dword ptr [esp+0ch], SIZE_MINIMIZED + je _ewmReSize + + mov edi, dword ptr [esp+10h] + mov esi, edi + and edi, 0000ffffh ;; x + shr esi, 10h ;; y + sub edi, 20h + sub esi, 00d7h + + push 01h + push esi + push edi + push 20h + push 10h + push dword ptr [_hPrg] + call _imp__MoveWindow@24 ;; move edit box + + push 01h + push 90h + push 0280h + add esi, 30h + push esi + push 10h + push dword ptr [_hList] + call _imp__MoveWindow@24 ;; move list box + + push 01h + push 16h + push 72h + add esi, 7ah + push esi + sub edi, 62h + push edi + push dword ptr [_hBtn] + call _imp__MoveWindow@24 ;; move button + + _ewmReSize: + retn 10h + ;;---------------- + + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + ;; wnd_err endp + ;;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + end start +;;------------------------------------------------------------------------- \ No newline at end of file diff --git a/plugin/AdicHelper/Source_MASM/main.ico b/plugin/AdicHelper/Source_MASM/main.ico new file mode 100644 index 0000000..99f0d40 Binary files /dev/null and b/plugin/AdicHelper/Source_MASM/main.ico differ diff --git a/plugin/AdicHelper/Source_MASM/make.bat b/plugin/AdicHelper/Source_MASM/make.bat new file mode 100644 index 0000000..49971b7 --- /dev/null +++ b/plugin/AdicHelper/Source_MASM/make.bat @@ -0,0 +1,24 @@ +@echo off + +\masm32\bin\rc /v rsrc.rc +\masm32\bin\cvtres /machine:ix86 rsrc.res +\masm32\bin\ml /c /Cp /Gz /Ic:\masm32\include /coff /nologo AdicHelper.asm +if errorlevel 1 goto err +\masm32\bin\link /SUBSYSTEM:WINDOWS /LIBPATH:c:\masm32\lib /nologo AdicHelper.obj rsrc.res +if errorlevel 1 goto err + +del rsrc.res +del AdicHelper.obj +del rsrc.obj + +goto exit + +:err + +del rsrc.res +del mx.obj +del rsrc.obj + +pause + +:exit \ No newline at end of file diff --git a/plugin/AdicHelper/Source_MASM/rsrc.rc b/plugin/AdicHelper/Source_MASM/rsrc.rc new file mode 100644 index 0000000..0617488 --- /dev/null +++ b/plugin/AdicHelper/Source_MASM/rsrc.rc @@ -0,0 +1,18 @@ +32 icon "main.ico" +64 cursor discardable "x.cur" + +1 versioninfo +fileversion 1,4,1,5 +productversion 1,4,1,5 +fileos 0x00000004 +filetype 0x00000001 { + block "StringFileInfo" { + block "040904e4" { + value "CompanyName", "ADX\0" + value "FileDescription", "cJass parser and optimizer\0" + } + } + block "VarFileInfo" { + value "Translation",0x0409, 0x04e4 + } +} \ No newline at end of file diff --git a/plugin/AdicHelper/Source_MASM/x.cur b/plugin/AdicHelper/Source_MASM/x.cur new file mode 100644 index 0000000..c569fc0 Binary files /dev/null and b/plugin/AdicHelper/Source_MASM/x.cur differ diff --git a/plugin/AdicHelper/cJass Manual.html b/plugin/AdicHelper/cJass Manual.html new file mode 100644 index 0000000..a4bbe82 --- /dev/null +++ b/plugin/AdicHelper/cJass Manual.html @@ -0,0 +1,652 @@ + + + +cJass 1.4.0.2 + + + + + + + + + +

cJass 1.4.0.2

+

Contents

+

1Usage

+The easiest way to start using the cJass parser is to download and install distribution. Please note, that you will need Jass New Gen Pack for correct installation of cJass. During the installation process, all required changes in NewGen files will be made automatically. All that you need to do after installation is to run World Editor and start getting benefits from using cJass syntax.

+

2Syntax innovations

+

2.1Clarity

+As you know, JASS2 scripting language was created by Blizzard Entertainment for usage in Warcraft III. Its syntax looks alo like Turing and is neither short nor laconic. You must use call keyword for function calls, set for variable setting and local to declare local variables. You also have to isolate global variables to stand-alone block: +

globals + integer f = 12 + endglobals + + function test takes nothing returns nothing + local integer i + call DoNothing() + set i = f + 3 + endfunction

While using cJass, parser automatically determines the meaning of an expression depending on the context, so we can easily omit all these keywords to reach better code readability: +

integer f = 12 + + function test takes nothing returns nothing + integer i + DoNothing() + i = f + 3 + endfunction
+

2.2Variables declaration

+In JASS2 all local variables have to be declared at the beginning of the function. While using cJass, you can declare local variables anywhere inside the function. +

function onKill takes nothing returns nothing + unit u = GetTriggerUnit() + if (GetUnitTypeId(u) == 'hfoo') then + ReviveUnit(u) + else + effect sfx = AddSpecialEffect("deatheffect.mdx", GetUnitX(u), GetUnitY(u)) + Sleep(1) + DestroyEffect(sfx) + endif + endfunction

The parser will move all local variable declarations to the beginning of the function. As in JASS2 variables can be initialized inside the declaration, cJass will also move the initialization if the variable is initialized with exact value: +

function test takes nothing returns nothing + DoNothing() + integer i = 0 // declaration will be moved completels, + location l = Location(0,0) // this variable will be initialized here + endfunction

After compilation it will become: +

function test takes nothing returns nothing + local integer i = 0 + local location l + call DoNothing() + set l = Location(0,0) + endfunction

cJass syntax also lets you declare variables of the same type on the same line, separating them by commas. These variables can also be initialized here: +

integer i = 7, j, k
+

2.3Operators

+cJass syntax introduces new operators to make the life of programmers easier and to increase code readability.

+

2.3.1Increment and decrement

+Increment ++ (increasing by 1) and decrement -- (decreasing by 1) operators are unary (they have only one operand). They can be used alone on the line or be part of complex expression: +

function test takes nothing returns nothing + integer a = 7 + a++ // now, a = 8 + integer b; b = 3 + a-- // now, a = 7, b = 11 + b-- // now, b = 10 + endfunction

which will become: +

function test takes nothing returns nothing + local integer a = 7 + local integer b + set a = a + 1 + set b = 3 + a + set a = a - 1 + set b = b - 1 + endfunction

These operators can be written either in prefix (when operator is before variable) or in postfix (when operator is after variable) notation. While using them alone, it doesnt really matter, but they will behave differently as part of complex expression. Prefix operator changes the variable and then its new value is passed to the expression, postfix operator passes the value to the expression and then changes the variable. +

function test takes nothing returns nothing + integer a = 7 + integer b = ++a // now, a = 8, b = 8 + integer c = a + b-- // now, a = 8, b = 7, c = 16 + endfunction

which will be compiled as the following: +

function test takes nothing returns nothing + local integer a = 7 + local integer b + local integer c + set a = a + 1 + set b = a + set c = a + b + set b = b - 1 + endfunction
+

2.3.2Assignment operators

+cJass syntax implements different assignment operators, which can help shorten code. For example, +

a = a + 2

can be shortened using the compound summation operator +=: +

a += 2

Operator += adds the expression to the right to operand on the left. The same principle is used to form other compound operators: -=, *= and /=. +

function test takes nothing returns nothing + integer a = 3, b = 5, c = 4, d = 6 + a += 7 // as a result, a = 10 + b -= 4 // as a result, b = 1 + c *= 5 // as a result, c = 20 + d /= 3 // as a result, d = 2 + endfunction

is compiled as: +

function test takes nothing returns nothing + local integer a = 3 + local integer b = 5 + local integer c = 4 + local integer d = 6 + set a = a + 7 + set b = b - 4 + set c = c * 5 + set d = d / 3 + endfunction
+

2.3.3Logical operations

+While using cJass syntax, all logical operators can be written in simplified way. You can either use it, or use default implementation - whatever you favor.

function test takes boolean a, boolean b returns nothing + boolean c + if (a && b) then // a and b + c = !b // not b + else + c = b || a // b or a + endif + endfunction
+

2.4Blocks

+JASS2 syntax is rather verbose and uses block limiting using keywords. cJass introduces ligthweight block declaraions using curly brackets: now you can simply specify block name and surround its contents with curly brackets. +

function test takes nothing returns nothing + integer i = 0 + loop { + exitwhen i > 5 + i++ + } + endfunction

Such notation can be used with all JASS2 blocks (loop, if, else and elseif) and vJass extension blocks (library, scope, struct, interface and module). While using short notation in if and elseif blocks, the following then keyord can be omited: +

function test takes integer i returns integer + if (i > 3) { + return --i + } else { + BJDebugMsg("i <= 3") + } + return i + endfunction

which in plain jass will be: +

function test takes integer i returns integer + if (i > 3) then + set i = i - 1 + return i + else + call BJDebugMsg("i <= 3") + endif + return i + endfunction

Notice: this block syntax isnt mandatory, so you can easily use default notation.

+

2.5Loops

+In cJass syntax, whilenot loop is introduced as an analog of widely used loop with pre-condition. The way of using this loop is identical to the default one: after whilenot operator the loop-ending condition is specified: +

function test takes integer num, integer pow returns integer + integer res = 1, i = 0 + whilenot (i++ >= pow) { + res *= num + } + return res + endfunction

is same as the following: +

function test takes integer num, integer pow returns integer + local integer res = 1 + local integer i = 0 + loop + exitwhen (i >= pow) + set i = i + 1 + set res = res * num + endloop + return res + endfunction

There also is the form of this loop, that places the loop-ending condition afther the loops body: +

function test takes integer num, integer pow returns integer + integer res = 1, i = 0 + do { + res *= num + } whilenot (i++ >= pow) + return res + endfunction

will be compiled to: +

function test takes integer num, integer pow returns integer + local integer res = 1 + local integer i = 0 + loop + set res = res * num + exitwhen (i >= pow) + set i = i + 1 + endloop + return res + endfunction

You can also use do keyword as a synonim to loop.

+

2.6Simplified function declaration

+For increased usability and code clarity, cJass syntax implements simplified notation of functions and vJass methods. In general, it looks like +

nothing test(integer x) { + BJDebugMsg(I2S(x)) + }

Now lets see, what all this means. At first, you have to indicate the return value type (in the above example its nothing because the function returns nothing), which is followed by function name and arguments (please note, that the arguments should be enclosed in round braces, if a function takes nothing, these braces can be empty), and in the end goes the function body, enclosed in curly brackets. For example, here is the above code after compilation: +

function test takes integer x returns nothing + call BJDebugMsg(I2S(x)) + endfunction

This notation also applies to vJass methods, the parser will determine if the declaration should become function or method.

+

2.7Endline manipulation

+cJass gives you the ability to freely manipulate line endings in your code. These symbols allow you to split one declaration into maly lines or write more than one command on a single line: +

nothing RandomUnit(integer pIndex) { + Sleep(1) + unit u; u = CreateUnit( Player(pIndex), \ + GetRandomInt('H000', 'H009'),\ + GetRandomReal(-100, 100), \ + GetRandomReal(-100, 100), \ + GetRandomReal(0, 360)) + Sleep(2) + RemoveUnit(u) + }

The ; symbol will be replaced to the linebreak and \ symbol merges the lines.

+

3Macrodefinitions

+Defines are one of the key cJass benefits. Macro processing is done completely on code parsing (on map save), which allows you to achieve high code readability and flexibility without its overcomplication.

+

3.1General

+At first look, you can imagine the processing of defines as a simple replace of macro names with their values (as if you used a SearchnReplace in your favorite text editor).

Keyword define is used when defining macros: +

#define FOOTMAN = 'hfoo'

hereby FOOTMAN is macros name, which you can use later in your code, and 'hfoo' is the value, to which all references will be replaced. For example, +

#define FOOTMAN = 'hfoo' + + nothing test() { + CreateUnit(GetLocalPlayer(), FOOTMAN, 0, 0, 0) + }

will compile to the following: +

function test takes nothing returns nothing + CreateUnit(GetLocalPlayer(), 'hfoo', 0, 0, 0) + endfunction

You can write multiple defines using define and enclosing the block in curly brackets: +

define { + FOOTMAN = 'hfoo' + MAGE = 'Hblm' + }

You can use either define, or #define notation - it doesnt matter.

For those, who prefer classic JASS2 syntax, there is another macro definition style: +

define + FOOTMAN = 'hfoo' + MAGE = 'Hblm' + enddefine

Usually, macro names contain only letters, numbers and underscores. However, what should you do if you need to have some kinds of special symbols in the defines name? In such cases you can use inequality signs: +

define <GetPlayableMapRect()> = bj_mapInitialPlayableArea

If you need a multiline define, then simply enclose its body in curly brackets: +

define msg = { + BJDebugMsg("one!") + BJDebugMsg("two!") + }
+

3.2Visibility scopes

+Macros can be defined as private inside of scopes, libraries, structs and modules using private keyword: +

scope test { + #define private FOOT = 'HBlm' + }

In this case private defines will not conflict with other defines with same names in global scope of visibility: +

#define msg = "X" + + nothing test () { + BJDebugMsg("Global = " + msg) + } + + library A { + #define private msg = "A" + + nothing testA () { + BJDebugMsg("Library A = " + msg) + } + } + + scope B { + #define private msg = "B" + + nothing testB () { + BJDebugMsg("Scope B = " + msg) + } + }

After compilation we get: +

function test takes nothing returns nothing + call BJDebugMsg("Global = " + "X") + endfunction + + library A + function testA takes nothing returns nothing + call BJDebugMsg("Library A = " + "A") + endfunction + endlibrary + + scope B + function testB takes nothing returns nothing + call BJDebugMsg("Scope B = " + "B") + endfunction + endscope
+

3.3setdef and undef directives

+If you define a macro with the name which is already used by another macro (this doesnt apply to private defines in nested elements), cJass will show an error and stop compilation. If you want to change the value of an existing macrodefinition, you should use setdef directive. To undo macro definitions, you can use the undef directive, after which the macro will be undefined. +

nothing test1 () { + #define msg = "text" + + BJDebugMsg(msg) // will print "text" + + #setdef msg = "other text" + + BJDebugMsg(msg) // will print "other text" + + #undef msg + + BJDebugMsg(msg) // won't be replaced + }
+

3.4Defines with arguments

+To widen the range of possible macrodefinition usages, defines, which take arguments were implemented. A macro can take arbitary number of arguments, which can be used in the macros body similiar to how the functions arguments are used. The arguments can be of any type? parser does no type checks, so you should call macros with care, always checking the value types. +

define msg(playerid,text) = DisplayTextToPlayer(Player(playerid), text, 0, 0)

Attention! As parser doesnt perform typechecks, all typesafety should be controlled by the coder.

+

3.5Define overloading

+You can define more than one macro with same names as soon as they take different number of arguments: such defines are called overloaded. Depending on the number of arguments passed, parder decides what macro to call. +

define { + msg(text) = DisplayTextToPlayer(GetLocalPlayer(), text, 0, 0) + msg(text,playerid) = DisplayTextToPlayer(Player(playerid), text, 0, 0) + msg(text,playerid,x,y) = DisplayTextToPlayer(Player(playerid), text, x, y) + } + + nothing test() { + msg("test 1") + msg("test 2", 1) + msg("test 3", 2, 0.1, 0.1) + }

will be compiled to the following: +

function test takes nothing returns nothing + call DisplayTextToPlayer(GetLocalPlayer(), "test 1", 0, 0) + call DisplayTextToPlayer(Player(1), "test 2", 0, 0) + call DisplayTextToPlayer(Player(2), "test 3", 0.1, 0.1) + endfunction

Attention! If the group of overloaded defines has the one with no arguments, it should always be followed by empty parenthesis.

+

3.6Some constructs, used in defines

+Sometimes you need to output one of the macros arguments as text (please note: not the arguments value - if the argument is a variable, its name will be the result). For such cases there is `` instruction, which represents its argument as string. You can also use concatenation operator ##, which merges expressions on both sides of it (unlike the previous one, this operator can be used anytime, not only in defines). +

#define register_func(type) = { + nothing func_##type (type t) { + BJDebugMsg(`type`) + } + } + + register_func(real)

which will become: +

function func_real takes real t returns nothing + call BJDebugMsg("real") + endfunction
+

3.7Predefined macros

+cJass introduces some predefined macros for usage by coders. All of them are replaced to their values at the compilation stage.

DATE returns current date in yyyy.mm.dd format.

TIME returns current time in hh:mm:ss format.

COUNTER returns integer starting from 0, every use increases this number by 1. Heres an example of usage: +

define unique_name = func_##COUNTER + + void unique_name () {} // void func_0 () {} + void unique_name () {} // void func_1 () {} + void unique_name () {} // void func_2 () {}

DEBUG returns 1 if "Debug mode" checkbox is checked, else returns 0. Is used in conditional compilation (see 4.1) to add sets of actions, which exist only in debug mode.

FUNCNAME returns the name of the function, where its used.

WAR3VER returns WAR3VER_23 or WAR3VER_24 depending on the position of the version switch in cJass menu. Can be used in conditional compilation blocks (see 4.1) to maintain two map versions: 1.23- and 1.24+ compatible. For example: +

#define H2I(h) = GetHandleId(h) + + #if WAR3VER == WAR3VER_23 + #undef H2I + integer H2I (handle h) { return h; return 0 } + #endif

All predefined macros return non-string value. To represent them as string, you can use either stringizing operator or formatted output (see 6.2)

+

3.8Define usage examples

+In this section there are some examples of macro usage for solving of non-trivial tasks. +

+

3.8.1Function hooks

+The need to do some set of actions when calling native functions pops out sometimes. In such cases people create some wrapper functions and call them instead. Using cJass macrodefinitions, you can easily replace the calls of some function to the call to your own wrapper function, or to a set of actions. +

define { + SetUnitPosition = SetUnitPosition_hook + + RemoveUnit(u) = { + BJDebugMsg("A unit is being removed!") + Remove##Unit(u) + } + } + + boolean SetUnitPosition_hook (unit u, real x, real y) { + BJDebugMsg("We're moving the unit to (" + R2S(x) + "," + R2S(y) + ")") + SetUnit##Position(u, x, y) + return (GetUnitX(u) == x) && (GetUnitY(u) == y) + } + + nothing test() { + unit u = CreateUnit(Player(0), 'hfoo', 0, 0, 0) + if (SetUnitPosition(u, 100, 300)) { BJDebugMsg("Landed successfully!") } + RemoveUnit(u) + }

which will be compiled to the following: +

function SetUnitPosition_hook takes unit u, real x, real y returns boolean + call BJDebugMsg("We're moving the unit to (" + R2S(x) + "," + R2S(y) + ")") + call SetUnitPosition(u, x, y) + return (GetUnitX(u) == x) and (GetUnitY(u) == y) + endfunction + + function test takes nothing returns nothing + local unit u = CreateUnit(Player(0), 'hfoo', 0, 0, 0) + if (SetUnitPosition_hook(u, 100, 300)) then + call BJDebugMsg("Landed successfully!") + endif + call BJDebugMsg("A unit is being removed!") + call RemoveUnit(u) + endfunction

Now its time for some explanations. To replace the RemoveUnit function to the set of actions, we simply define a macro with the same name, so all the calls to this function will be replaced to this macros contents. Please note that inside of this macro the name of hooked function is written using the concatenation operator. This is done to prevent the parser from trying to replace it to this macros contents as it has this name too. To replace the calls to SetUnitPosition to our wrapper, we simply declare the wrapper function and replace all calls to the native with the calls to our wrapper.

+

3.8.2Default arguments emulation

+Many programming languages allow you to assign default values to functions arguments. In such cases these arguments can be easily omitted if youre ok with their default values. Such behaviour can be emulated in cJass using overloaded macrodefinitions and concatenation operator. +

define { + CreateUnit(p, id) = Create##Unit(p, id, 0, 0, 0) + CreateUnit(p, id, x, y) = Create##Unit(p, id, x, y, 0) + CreateUnit(p, id, x, y, f) = Create##Unit(p, id, x, y, f) + } + + nothing test() { + CreateUnit(Player(0), 'hfoo') + CreateUnit(Player(1), 'Hblm', 100, 231) + CreateUnit(Player(2), 'Ewar', 382, 16, 42) + }

I think, you already know, what youll see now: +

function test takes nothing returns nothing + call CreateUnit(Player(0), 'hfoo', 0, 0, 0) + call CreateUnit(Player(1), 'Hblm', 100, 231, 0) + call CreateUnit(Player(2), 'Ewar', 382, 16, 42) + endfunction
+

4Preprocessor

+Preprocessor directives are first to be parsed during map code processing. Because of this, you can use them to do some interesting things.

+

4.1Including external files

+Sometimes its comfortable to keep parts of code (e.g. libraries, systems, spells, etc. which you use often) in external files. To include code from external files theres include directive, which should be followed by string with file name you want to include. If files are in the "..\AdicHelper\lib\" subfolder or in the map folder, you can write file name without a path to it. Also its possible to include files from other folders, but you should write full path to it. +

#include "myClasses.j" // "(newgen path)\AdicHelper\lib\myClasses.j" or "(map path)\myClasses.j" will be included + include "D:\\dev\\Warcraft 3\\my_mega_system.j"

The code within included files can be written using both cJass and vJass syntax.

Attention! Dont forget about double backslash in file path: \\

Sometimes, things happen that one external file is included to the map several times (for example, by different libraries). In such cases inevitable errors happen because of code duplication, which wed like to avoid. For such cases, cJass introduces the #guardID directive, which prevents files with same IDs to be included more than once. ID can be any word, composed from letters, numbers and underscores, but its good to use the file name with all extra symbols replaced to underscores. For example in "my-system.j" external file the ID can be #guardmy_system_j.

Attention! The #guard directive has to be the written on the first line of external file.

+

4.2Conditional compilation

+cJass syntax introduces useful conditional compilation commands. Using them you can include or exclude specified blocks of code during map parsing. Controlling elements of this construct can be values, defines or enums (see 5). Their syntax is the following: +

#define CONTROL = 3 + + #if CONTROL == 3 + // code + #elseif CONTROL == 1 + // alternative code + #else + // more other code + #endif

Currently, only == and != comparison operations are supported.

In such conditional blocks you can write any code with one limitation: they shouldnt contain identical define declarations: +

#if 1 != 0 + #define msg = "hello!" + #else + #define msg = "good bye!" + #endif

If you try to save this code, parser will throw the define redeclaration error. If you want to use code, similar to above, you should declare the macrodefinition before conditional translation blocks and set its value in those blocks with setdef directive: +

#define msg + + #if 1 != 0 + #setdef msg = "hello!" + #else + #setdef msg = "good bye!" + #endif

Condiitonal compilation directives can also be triggered by a state of flag - macrodefinition with a special value. +

#define MY_FLAG = true + + #if MY_FLAG + // code + #else + // alternative code + #endif

The #ifvalue directive will work only if the compared macrodefinition has a value of true or 1. You can use the DEBUG predefined macro to write code, which is compiled only in debug mode.

+

4.3Other directives

+Sometimes you need to stop compilation if some requirements are not met. In such cases the #error"MESSAGE" directive will help you. It stops the compilation, showing the defined message. Best used inside of conditional compilation blocks.

+

5Other elements

+This chapter describes some syntax constructions, that were not mentioned above, although not less important.

+

5.1Enumerations

+Enumeration is a type, that can contain values specified by coder. Integer constants can be declared as enumeration members. E.g.: +

enum { RED, GREEN, BLUE }

declares three named integer constants and sets values to them. Values are assigned atomatically starting from 0, in other words, enumeration is similar to the following: +

define { + RED = 0 + GREEN = 1 + BLUE = 2 + }

Enumerations can also be named: +

enum (color) { RED, GREEN, BLUE }

Named enumerations have their own internal counter - value of their elements will start from zero. Using several unnamed enumerations will continue the numeration of their values: +

enum { FOOTMAN, MAGE } // FOOTMAN == 0, MAGE == 1 + enum (color) { RED, GREEN, BLUE } // RED == 0, GREEN == 1, BLUE == 2 + enum { WARDEN, ARCHER} // WARDEN == 2, ARCHER == 3

Enumerations also support default JASS2 syntax: +

enum (color) + RED + GREEN + BLUE + endenum

Enumerations can be used in conditional translation blocks: +

library SomeLib { + + enum (LIB_SPACE) { STD_SPACE, ALT_SPACE, DEBUG_SPACE } + + // choose your namespace ! + define private SOMELIB_SPACE = STD_SPACE // what space to use + + #if SOMELIB_SPACE == STD_SPACE + void SomeFunc(int a) { + // base + } + #elseif SOMELIB_SPACE == ALT_SPACE + void SomeFunc(int a) { + // alt + } + #elseif SOMELIB_SPACE == DEBUG_SPACE + void SomeFunc(int a) { + // debug + } + #endif + + }

Or instead of named integer constants as markers for some actions: +

enum (moves) { MOVING_ANIM_STATE_WALK, MOVING_ANIM_STATE_WALKBACK, MOVING_ANIM_STATE_STOP } + + void MovingAnimationControl (unit u, integer state) { + if (state == MOVING_ANIM_STATE_WALK) { + SetUnitTimeScale(u, 1) + SetUnitAnimationByIndex(u, "Walk" ) + } elseif (state == MOVING_ANIM_STATE_WALKBACK) { + SetUnitTimeScale(u, -1) + SetUnitAnimationByIndex(u, "Walk" ) + } elseif (state == MOVING_ANIM_STATE_STOP) { + SetUnitAnimation(u,"Stand") + SetUnitTimeScale(u, 1) + } + }
+

6Standard libraries

+The cJass default package includes standard libraries, which can be used in your maps because they will definitely be on target computer if cJass is installed there. You can find them in "lib" subfolder of your "AdicHelper" directory. These files were created specially for ease of coding and some light optimizations. You simply include the ones you need in your map. All standard included files have "cj_" prefix and ".j" extension.

+

6.1cj_types and cj_typesEx

include "cj_types.j" + include "cj_typesEx.j" + include "cj_types_priv.j" + include "cj_typesEx_priv.j"

These libraries contain macrodefinitions, aimed to make JASS2 type usage closer to C++. In the first one, aliases for main types and keywords are defined: +

define { + int = integer + bool = boolean + void = nothing + float = real + while = whilenot not + break = exitwhen true + }

In the second, constructs like new<type> are defined for main handle types: +

define <new timer> = CreateTimer()

You can read the full list by opening "cj_typesEx.j" in any text editor.

There also are versions of these files for usage inside of libraries, where all defines are private so they wont affect anything outside you library. They have "_priv" suffix in the filename.

+

6.2cj_order and cj_antibj_base

include "cj_order.j" + include "cj_antibj_base.j"

These libraries aim for ease usage and slight map optimization on save.

First of them replaces all calls to order conversion functions like OrderId("smart") to corresponding integer values and implements defines like order_smart for integer values of all existing orders.

The other one performs light optimization when functions and constants from "Blizzard.j" are used in the map. Constants are replaced to their values and many functions are replaced to their analogs from "common.j". Please note, that these optimizations also work for GUI triggers of your map.

+

6.3cj_print

include "cj_print.j"

By including this file, you gain access to output formatting functions. The templates, used for formatting, are defined by specially formatted string (format string). Arguments, passed to formatting functions, should follow the foemat string in exact order, stated in format string. +

+

6.3.1Function list

+In function descriptions format string is declared as stringformat and arguments are ... These functions can be used without arguments, in this case they will simply use given string as input.

The sprintf function formats a string and returns it as a result. Its compiled to a simple statement, not a function call.

The printf function outputs the formatted string to local player. The output is done using DisplayTimedTextToPlayer function.

The following function do same things, as their standard analogs, but take a format string and arguments list instead of their default string argument. +

void sBJDebugMsg (string format, ...) + void sDisplayTextToPlayer (player p, real x, real y, string format, ...) + void sDisplayTimedTextToPlayer (player p, real x, real y, real time, string format, ...) + void sDisplayTimedTextFromPlayer (player p, real x, real y, real time, string format, ...) + void sSetTextTagText (texttag t, string format, ..., real h) + void sQuestSetTitle (quest q, string format, ...) + void sQuestSetDescription (quest q, string format, ...) + void sQuestItemSetDescription (questitem q, string format, ...) + void sMultiboardSetTitleText (multiboard m, string format, ...) + void sMultiboardSetItemsValue (multiboard m, string format, ...) + void sMultiboardSetItemValue (multiboarditem m, string format, ...) + void sDialogSetMessage (dialog d, string format, ...) + button sDialogAddButton (dialog d, string format, ..., int hotkey) + button sDialogAddQuitButton (dialog d, bool b, string format, ..., int hotkey) + void sLeaderboardAddItem (leaderboard l, string format, ..., player p)
+

6.3.2Format string

+The formatting string is a template for arguments substitution. All the characters of this string excluding control sequences are copied to the resulting string without changes. Usually, control sequences start with % symbol (to output the percent sign, you have to escape it using backslash symbol \%). Control sequences also contain name of the type of substituted variable. By default, the following types are defined: +

%p - player name, takes player variable + %pc - colored player name, takes player variable + %i - decimal number, takes integer + %igold - decimal number, gold-colored, takes integer + %ilumb - decimal number, lumber-colored, takes integer + %ip - player name, takes integer (player id) + %ipc - colored player name, takes integer (player id) + %b - boolean, prints "true" or "false" + %r - floating number without extra formatting, takes real + %s - string, if a direct value is passed, it will be cleanly merged + %v - variable, an argument is directly copied to output + %h - decimal number, descriptor id is passed as an argument

Furthermore, the user can define his own markup for any additional argument types. To do this, you have to redefine the cj_sprintf_argTyp_User macro. +

// here we define our own type handlers + setdef cj_sprintf_argTyp_User = /* markup */ + + // here we use prints with our markup, eg. in our library + + // then we roll back our markup not to mess with other libraries etc. + setdef cj_sprintf_argTyp_User =

Lets look into the type definition syntax by the exaple of %i type:

Attention! The % symbol will lead the World Editor to strange behaviour if used in the Custom Script section. To use string formatting functions there, you should use the ^ symbol as a control sequence start marker.

+

7Credits and thanks

  • +ADOLF created AdicHelper in pure asm. He has tons of patience to fix bugs and to implement more crazy features. +
  • Van Damm just passed by. Created updater and wrote this manual. +
  • Dark Dragon our most faithful tester. Caught dozens of bugs and made lots of syntax suggestions. +
  • Vexorian made JassHelper and refused to add some features to it. +
  • Toadcop caught bugs, made suggestions and created TCXAOS. +
  • ShadoW DaemoN donated cj_order and caught some lame updater bugs. Also translated sections 4-5 and spellchecked this manual. +
  • Artte a faithful tester. +
  • Hellfim found some updater bugs and manual typos. +
  • zibada hosted us and created XGM. +
  • Crock helped us understand Warcraft VMs internal logic. +
  • LATEX, HeVeA LEd I used them to create this manual. +
  • Assembly the best programming language. Ever. +
  • Hutch he keeps masm alive. +
  • Oleh Yuschuk created OllyDbg, the best tiny debugger. +
+ + + +
This document was translated from LATEX by +HEVEA.
+ diff --git a/plugin/AdicHelper/changelog.txt b/plugin/AdicHelper/changelog.txt new file mode 100644 index 0000000..2f05230 --- /dev/null +++ b/plugin/AdicHelper/changelog.txt @@ -0,0 +1 @@ +AdicHelper JASS2 parser and optimizer Maintained by ADOLF and VD _____________________________________________________________________________ + feature added - feature removed * bug fixed ! important information _____________________________________________________________________________ 1.4.1.5 (09.10.2009) * Fixed bug with //!external * Fixed incorrect processing of increment in whilenot condition. * Fixed compatibility issues with jasshelper .z 1.4.1.1 (08.10.2009) ! Added unused code removal to Optimizer. 1.4.0.2 (02.10.2009) + Added error message when using #define inside of conditional compilation bloaks. 1.4.0.1 (01.10.2009) + Added WAR3VER predefined macro. + Added version switch. 1.4.0.0 (01.10.2009) ! Public release. 01 03 04 33 (01.10.2009) * Fixed FUNCNAME behavoiur. * Fixed bug with returning rawcodes. * Fixed rare esoteric bug with {}. 01 03 04 32 (30.09.2009) + Added #error directive. + Added #guard directive. + Added FUNCNAME system define. + Added possibility to write #include, #define, #setdef and #undef. * Fixed default behaviour of overloaded defines with no arguments. * Fixed bug with prefix increment on dedicated lines. 01 03 04 29 (29.09.2009) * Tuned local variables parsing algorithm. 01 03 04 28 (28.09.2009) * Fixed local variables parsing logic. * Fixed small rare bug with defines incorrectly processing certain arguments. 01 03 04 25 (27.09.2009) ! Completed full rewrite of assignment and increment/decrement parsing logic. 01 03 04 21 (23.09.2009) + Added DATE, TIME, COUNTER and DEBUG system defines. 01 03 04 20 (22.09.2009) * Fixed bug with native declaration in code. 01 03 04 18 (20.09.2009) + Added correct processing of postfix operations in return statements. * Fixed //! import bug. * Fixed many other small bugs. 01 03 04 14 (18.09.2009) + Added possibility to use #if to determine is the value is defined. * Fixed bug with rawcodes. 01 03 04 12 (16.09.2009) * Fixed bugs with vJass textmacro processing. 01 03 04 11 (15.09.2009) + vJass textmacro processing implemented. + do {} whilenot() loop added. 01 03 04 10 (11.09.2009) + Implemented undef directive. * Fixed bug with empty defines crashing the tool. * Fixed bug with empty define stopping replace process. * Fixed program icon bug. 01 03 04 08 (10.09.2009) + Added conditional translation inside of defines. 01 03 04 07 (07.09.2009) + Added '%' sign as a command sequence start in string formatting. + Added conditional compilation (#if, #else, #elseif, #endif directives). 01 03 04 04 (03.09.2009) + Added the possibility to leave line comments '//' after linebreak '\'. * Fixed bug with some defines not being replaced inside of conditions. * Fixed bug with setdef ignoring define visibility. 01 03 04 02 (01.09.2009) + Added support of debug instruction. + Added "cj_order" and "cj_antibj_base" to standard library. * Updated cj_print. 01 03 04 01 (30.08.2009) * Fixed bug with {} inside of defines. 01 03 04 00 (29.08.2009) + Added "cj_print.j" library. * Fixed bug with operator overloading inside of interface. * Fixed private multi-word defines. 01 03 03 14 (27.08.2009) * Fixed bug with define arguments not processed without <> 01 03 03 12 (25.08.2009) + Now defines can take any arguments without additional mess. * Fixed C-style methods inside of modules. * Fixed rare 'out of memory' bug. * Some rare define bugs fixed. 01 03 03 09 (24.08.2009) - vJass textmacro processing removed. * Fixed bug with == 01 03 03 08 (21.08.2009) + define's arguments parsing logic changed. + Comma in enums added. * Fixed bugs with external tools' calls. * Some bugs with ++ and -- fixed. 01 03 03 04 (21.08.2009) + C-style operator declaration added + Enums added. * Some define-related bugs fixed. 01 03 02 18 (14.08.2009) ! Branch 1.3.x.x public release + Lots of new features (please refer to manual). * 'Capital Z in define arguments' issue fixed. 01 03 01 00 (dev version) + Free locals declaration added. + Blocks inside the loop added. * Rewrote increment. 01 03 00 03 (dev version) * Info panel finished. * Script refactoring. 01 02 01 08 (dev version) + Added info panel. 01 02 01 07 (dev version) * Lots of bugs fixed. 01 02 01 06 (17.06.2009) * Fixed bug with vJass preprocessor instructions (//!). 01 02 01 05 (17.06.2009) + Now defines can takes arguments. 01 02 01 03 (14.06.2009) + Include directive also searches in the map's folder. * Fixed specific bug with define. * Fixed library_once bug. 01 02 01 02 (12.06.2009) * Fixed program crash when there was only one define. 01 02 01 01 (11.06.2009) + Added concatenation (##) instruction. + Added ability to hook native functions. 01 02 00 12 (10.06.2009) * And one more bug fixed. 01 02 00 11 (10.06.2009) * Fixed some bugs. 01 02 00 10 (09.06.2009) + Added nested defines. + Added include instruction. + Added the ability to group variables. * Fixed bug with private or public types and structures. 01 01 00 02 (27.04.2009) + Visual progress added. * Some bugs fixed. 01 00 04 04 (18.04.2009) + Private defines added. * Some bugs fixed. 01 00 01 00 (16.04.2009) + Textmacro processing added. 01 00 00 01 (15.04.2009) ! Public release. \ No newline at end of file diff --git a/plugin/AdicHelper/cjcv.dll b/plugin/AdicHelper/cjcv.dll new file mode 100644 index 0000000..16e25b4 Binary files /dev/null and b/plugin/AdicHelper/cjcv.dll differ diff --git a/plugin/AdicHelper/lib/AS/Allocate b/plugin/AdicHelper/lib/AS/Allocate new file mode 100644 index 0000000..fe1f588 --- /dev/null +++ b/plugin/AdicHelper/lib/AS/Allocate @@ -0,0 +1,35 @@ +//*************************************************************************** +//* +//* Allocate v1 by AppleSheep +//* +//*************************************************************************** + +#guard AS_Allocate + + private static integer Allocate_Index = 0 + private static integer Allocate_Line = 0 + private static integer Allocate_List [] + + static thistype create () { + thistype this = .Allocate_Line + if this == 0 + this = ++.Allocate_Index + else + .Allocate_Line = .Allocate_List[this] + endif + // other + .Allocate_List[this] = -1 + return this + } + + nothing destroy () { + if this == null then + return + endif + // other + if .Allocate_List[this] == -1 + set .Allocate_List[this] = .Allocate_Line + set .Allocate_Line = this + endif + } + diff --git a/plugin/AdicHelper/lib/AS/HandleUtils b/plugin/AdicHelper/lib/AS/HandleUtils new file mode 100644 index 0000000..59e2d22 --- /dev/null +++ b/plugin/AdicHelper/lib/AS/HandleUtils @@ -0,0 +1,36 @@ +//*************************************************************************** +//* +//* HandleUtils v1 by AppleSheep +//* +//*************************************************************************** + +#guard AS_HandleUtils + +hashtable HandleUtils_Hash = InitHashtable() + +#define HandleUtils(TypeName,type,Create,StopUse) = { + library_once TypeName##Utils + + private key key_##type + + private integer Index = 0 + private integer Line = 0 + + type New##TypeName() { + if Line == 0 + return Create + endif + return Load##TypeName##Handle(HandleUtils_Hash,key_##type,Line) + } + + nothing Release##TypeName(type v) { + Save##TypeName##Handle(HandleUtils_Hash,key_##type,++Line,v) + StopUse + } + + endlibrary +} + +//HandleUtils( Timer, timer, CreateTimer(), PauseTimer(v) ) +//HandleUtils( Group, group, CreateGroup(), GroupClear(v) ) + diff --git a/plugin/AdicHelper/lib/AS/Hash_priv b/plugin/AdicHelper/lib/AS/Hash_priv new file mode 100644 index 0000000..febf323 --- /dev/null +++ b/plugin/AdicHelper/lib/AS/Hash_priv @@ -0,0 +1,220 @@ +//*************************************************************************** +//* +//* Hash(priv) v1 by AppleSheep +//* +//*************************************************************************** + + #if Hash != null + private hashtable Hash = InitHashtable() + #endif + + #define { + private SaveIndex(x,y,v) = Save##Integer(Hash,x,y,v) + private SaveInteger(x,y,v) = Save##Integer(Hash,x,y,v) + private SaveReal(x,y,v) = Save##Real(Hash,x,y,v) + private SaveBoolean(x,y,v) = Save##Boolean(Hash,x,y,v) + private SaveString(x,y,v) = SaveStr(Hash,x,y,v) + private SaveAgent(x,y,v) = SaveAgentHandle(Hash,x,y,v) + private SaveWidget(x,y,v) = SaveWidgetHandle(Hash,x,y,v) + private SaveHashtable(x,y,v) = SaveHashtableHandle(Hash,x,y,v) + private SavePlayer(x,y,v) = SavePlayerHandle(Hash,x,y,v) + private SaveDestructable(x,y,v) = SaveDestructableHandle(Hash,x,y,v) + private SaveItem(x,y,v) = SaveItemHandle(Hash,x,y,v) + private SaveUnit(x,y,v) = SaveUnitHandle(Hash,x,y,v) + private SaveAbility(x,y,v) = SaveAbilityHandle(Hash,x,y,v) + private SaveTimer(x,y,v) = SaveTimerHandle(Hash,x,y,v) + private SaveTrigger(x,y,v) = SaveTriggerHandle(Hash,x,y,v) + private SaveTriggerEvent(x,y,v) = SaveTriggerEventHandle(Hash,x,y,v) + private SaveTriggerCondition(x,y,v) = SaveTriggerConditionHandle(Hash,x,y,v) + private SaveTriggerAction(x,y,v) = SaveTriggerActionHandle(Hash,x,y,v) + private SaveForce(x,y,v) = SaveForceHandle(Hash,x,y,v) + private SaveGroup(x,y,v) = SaveGroupHandle(Hash,x,y,v) + private SaveLocation(x,y,v) = SaveLocationHandle(Hash,x,y,v) + private SaveRect(x,y,v) = SaveRectHandle(Hash,x,y,v) + private SaveBooleanExpr(x,y,v) = SaveBooleanExprHandle(Hash,x,y,v) + private SaveSound(x,y,v) = SaveSoundHandle(Hash,x,y,v) + private SaveEffect(x,y,v) = SaveEffectHandle(Hash,x,y,v) + private SaveUnitPool(x,y,v) = SaveUnitPoolHandle(Hash,x,y,v) + private SaveItemPool(x,y,v) = SaveItemPoolHandle(Hash,x,y,v) + private SaveQuest(x,y,v) = SaveQuestHandle(Hash,x,y,v) + private SaveQuestItem(x,y,v) = SaveQuestItemHandle(Hash,x,y,v) + private SaveDefeatCondition(x,y,v) = SaveDefeatConditionHandle(Hash,x,y,v) + private SaveTimerDialog(x,y,v) = SaveTimerDialogHandle(Hash,x,y,v) + private SaveLeaderboard(x,y,v) = SaveLeaderboardHandle(Hash,x,y,v) + private SaveMultiboard(x,y,v) = SaveMultiboardHandle(Hash,x,y,v) + private SaveMultiboardItem(x,y,v) = SaveMultiboardItemHandle(Hash,x,y,v) + private SaveTrackable(x,y,v) = SaveTrackableHandle(Hash,x,y,v) + private SaveDialog(x,y,v) = SaveDialogHandle(Hash,x,y,v) + private SaveButton(x,y,v) = SaveButtonHandle(Hash,x,y,v) + private SaveTextTag(x,y,v) = SaveTextTagHandle(Hash,x,y,v) + private SaveLightning(x,y,v) = SaveLightningHandle(Hash,x,y,v) + private SaveImage(x,y,v) = SaveImageHandle(Hash,x,y,v) + private SaveUbersplat(x,y,v) = SaveUbersplatHandle(Hash,x,y,v) + private SaveRegion(x,y,v) = SaveRegionHandle(Hash,x,y,v) + private SaveFogState(x,y,v) = SaveFogStateHandle(Hash,x,y,v) + private SaveFogModifier(x,y,v) = SaveFogModifierHandle(Hash,x,y,v) + private SaveIndex(Hash,x,y,v) = Save##Integer(Hash,x,y,v) + private SaveInteger(Hash,x,y,v) = Save##Integer(Hash,x,y,v) + private SaveReal(Hash,x,y,v) = Save##Real(Hash,x,y,v) + private SaveBoolean(Hash,x,y,v) = Save##Boolean(Hash,x,y,v) + private SaveString(Hash,x,y,v) = SaveStr(Hash,x,y,v) + private SaveAgent(Hash,x,y,v) = SaveAgentHandle(Hash,x,y,v) + private SaveWidget(Hash,x,y,v) = SaveWidgetHandle(Hash,x,y,v) + private SaveHashtable(Hash,x,y,v) = SaveHashtableHandle(Hash,x,y,v) + private SavePlayer(Hash,x,y,v) = SavePlayerHandle(Hash,x,y,v) + private SaveDestructable(Hash,x,y,v) = SaveDestructableHandle(Hash,x,y,v) + private SaveItem(Hash,x,y,v) = SaveItemHandle(Hash,x,y,v) + private SaveUnit(Hash,x,y,v) = SaveUnitHandle(Hash,x,y,v) + private SaveAbility(Hash,x,y,v) = SaveAbilityHandle(Hash,x,y,v) + private SaveTimer(Hash,x,y,v) = SaveTimerHandle(Hash,x,y,v) + private SaveTrigger(Hash,x,y,v) = SaveTriggerHandle(Hash,x,y,v) + private SaveTriggerEvent(Hash,x,y,v) = SaveTriggerEventHandle(Hash,x,y,v) + private SaveTriggerCondition(Hash,x,y,v) = SaveTriggerConditionHandle(Hash,x,y,v) + private SaveTriggerAction(Hash,x,y,v) = SaveTriggerActionHandle(Hash,x,y,v) + private SaveForce(Hash,x,y,v) = SaveForceHandle(Hash,x,y,v) + private SaveGroup(Hash,x,y,v) = SaveGroupHandle(Hash,x,y,v) + private SaveLocation(Hash,x,y,v) = SaveLocationHandle(Hash,x,y,v) + private SaveRect(Hash,x,y,v) = SaveRectHandle(Hash,x,y,v) + private SaveBooleanExpr(Hash,x,y,v) = SaveBooleanExprHandle(Hash,x,y,v) + private SaveSound(Hash,x,y,v) = SaveSoundHandle(Hash,x,y,v) + private SaveEffect(Hash,x,y,v) = SaveEffectHandle(Hash,x,y,v) + private SaveUnitPool(Hash,x,y,v) = SaveUnitPoolHandle(Hash,x,y,v) + private SaveItemPool(Hash,x,y,v) = SaveItemPoolHandle(Hash,x,y,v) + private SaveQuest(Hash,x,y,v) = SaveQuestHandle(Hash,x,y,v) + private SaveQuestItem(Hash,x,y,v) = SaveQuestItemHandle(Hash,x,y,v) + private SaveDefeatCondition(Hash,x,y,v) = SaveDefeatConditionHandle(Hash,x,y,v) + private SaveTimerDialog(Hash,x,y,v) = SaveTimerDialogHandle(Hash,x,y,v) + private SaveLeaderboard(Hash,x,y,v) = SaveLeaderboardHandle(Hash,x,y,v) + private SaveMultiboard(Hash,x,y,v) = SaveMultiboardHandle(Hash,x,y,v) + private SaveMultiboardItem(Hash,x,y,v) = SaveMultiboardItemHandle(Hash,x,y,v) + private SaveTrackable(Hash,x,y,v) = SaveTrackableHandle(Hash,x,y,v) + private SaveDialog(Hash,x,y,v) = SaveDialogHandle(Hash,x,y,v) + private SaveButton(Hash,x,y,v) = SaveButtonHandle(Hash,x,y,v) + private SaveTextTag(Hash,x,y,v) = SaveTextTagHandle(Hash,x,y,v) + private SaveLightning(Hash,x,y,v) = SaveLightningHandle(Hash,x,y,v) + private SaveImage(Hash,x,y,v) = SaveImageHandle(Hash,x,y,v) + private SaveUbersplat(Hash,x,y,v) = SaveUbersplatHandle(Hash,x,y,v) + private SaveRegion(Hash,x,y,v) = SaveRegionHandle(Hash,x,y,v) + private SaveFogState(Hash,x,y,v) = SaveFogStateHandle(Hash,x,y,v) + private SaveFogModifier(Hash,x,y,v) = SaveFogModifierHandle(Hash,x,y,v) + + private LoadIndex(x,y) = Load##Integer(Hash,x,y) + private LoadInteger(x,y) = Load##Integer(Hash,x,y) + private LoadReal(x,y) = Load##Real(Hash,x,y) + private LoadBoolean(x,y) = Load##Boolean(Hash,x,y) + private LoadString(x,y) = LoadStr(Hash,x,y) + private LoadAgent(x,y) = LoadAgentHandle(Hash,x,y) + private LoadWidget(x,y) = LoadWidgetHandle(Hash,x,y) + private LoadHashtable(x,y) = LoadHashtableHandle(Hash,x,y) + private LoadPlayer(x,y) = LoadPlayerHandle(Hash,x,y) + private LoadDestructable(x,y) = LoadDestructableHandle(Hash,x,y) + private LoadItem(x,y) = LoadItemHandle(Hash,x,y) + private LoadUnit(x,y) = LoadUnitHandle(Hash,x,y) + private LoadAbility(x,y) = LoadAbilityHandle(Hash,x,y) + private LoadTimer(x,y) = LoadTimerHandle(Hash,x,y) + private LoadTrigger(x,y) = LoadTriggerHandle(Hash,x,y) + private LoadTriggerEvent(x,y) = LoadTriggerEventHandle(Hash,x,y) + private LoadTriggerCondition(x,y) = LoadTriggerConditionHandle(Hash,x,y) + private LoadTriggerAction(x,y) = LoadTriggerActionHandle(Hash,x,y) + private LoadForce(x,y) = LoadForceHandle(Hash,x,y) + private LoadGroup(x,y) = LoadGroupHandle(Hash,x,y) + private LoadLocation(x,y) = LoadLocationHandle(Hash,x,y) + private LoadRect(x,y) = LoadRectHandle(Hash,x,y) + private LoadBooleanExpr(x,y) = LoadBooleanExprHandle(Hash,x,y) + private LoadSound(x,y) = LoadSoundHandle(Hash,x,y) + private LoadEffect(x,y) = LoadEffectHandle(Hash,x,y) + private LoadUnitPool(x,y) = LoadUnitPoolHandle(Hash,x,y) + private LoadItemPool(x,y) = LoadItemPoolHandle(Hash,x,y) + private LoadQuest(x,y) = LoadQuestHandle(Hash,x,y) + private LoadQuestItem(x,y) = LoadQuestItemHandle(Hash,x,y) + private LoadDefeatCondition(x,y) = LoadDefeatConditionHandle(Hash,x,y) + private LoadTimerDialog(x,y) = LoadTimerDialogHandle(Hash,x,y) + private LoadLeaderboard(x,y) = LoadLeaderboardHandle(Hash,x,y) + private LoadMultiboard(x,y) = LoadMultiboardHandle(Hash,x,y) + private LoadMultiboardItem(x,y) = LoadMultiboardItemHandle(Hash,x,y) + private LoadTrackable(x,y) = LoadTrackableHandle(Hash,x,y) + private LoadDialog(x,y) = LoadDialogHandle(Hash,x,y) + private LoadButton(x,y) = LoadButtonHandle(Hash,x,y) + private LoadTextTag(x,y) = LoadTextTagHandle(Hash,x,y) + private LoadLightning(x,y) = LoadLightningHandle(Hash,x,y) + private LoadImage(x,y) = LoadImageHandle(Hash,x,y) + private LoadUbersplat(x,y) = LoadUbersplatHandle(Hash,x,y) + private LoadRegion(x,y) = LoadRegionHandle(Hash,x,y) + private LoadFogState(x,y) = LoadFogStateHandle(Hash,x,y) + private LoadFogModifier(x,y) = LoadFogModifierHandle(Hash,x,y) + private LoadIndex(Hash,x,y) = Load##Integer(Hash,x,y) + private LoadInteger(Hash,x,y) = Load##Integer(Hash,x,y) + private LoadReal(Hash,x,y) = Load##Real(Hash,x,y) + private LoadBoolean(Hash,x,y) = Load##Boolean(Hash,x,y) + private LoadString(Hash,x,y) = LoadStr(Hash,x,y) + private LoadAgent(Hash,x,y) = LoadAgentHandle(Hash,x,y) + private LoadWidget(Hash,x,y) = LoadWidgetHandle(Hash,x,y) + private LoadHashtable(Hash,x,y) = LoadHashtableHandle(Hash,x,y) + private LoadPlayer(Hash,x,y) = LoadPlayerHandle(Hash,x,y) + private LoadDestructable(Hash,x,y) = LoadDestructableHandle(Hash,x,y) + private LoadItem(Hash,x,y) = LoadItemHandle(Hash,x,y) + private LoadUnit(Hash,x,y) = LoadUnitHandle(Hash,x,y) + private LoadAbility(Hash,x,y) = LoadAbilityHandle(Hash,x,y) + private LoadTimer(Hash,x,y) = LoadTimerHandle(Hash,x,y) + private LoadTrigger(Hash,x,y) = LoadTriggerHandle(Hash,x,y) + private LoadTriggerEvent(Hash,x,y) = LoadTriggerEventHandle(Hash,x,y) + private LoadTriggerCondition(Hash,x,y) = LoadTriggerConditionHandle(Hash,x,y) + private LoadTriggerAction(Hash,x,y) = LoadTriggerActionHandle(Hash,x,y) + private LoadForce(Hash,x,y) = LoadForceHandle(Hash,x,y) + private LoadGroup(Hash,x,y) = LoadGroupHandle(Hash,x,y) + private LoadLocation(Hash,x,y) = LoadLocationHandle(Hash,x,y) + private LoadRect(Hash,x,y) = LoadRectHandle(Hash,x,y) + private LoadBooleanExpr(Hash,x,y) = LoadBooleanExprHandle(Hash,x,y) + private LoadSound(Hash,x,y) = LoadSoundHandle(Hash,x,y) + private LoadEffect(Hash,x,y) = LoadEffectHandle(Hash,x,y) + private LoadUnitPool(Hash,x,y) = LoadUnitPoolHandle(Hash,x,y) + private LoadItemPool(Hash,x,y) = LoadItemPoolHandle(Hash,x,y) + private LoadQuest(Hash,x,y) = LoadQuestHandle(Hash,x,y) + private LoadQuestItem(Hash,x,y) = LoadQuestItemHandle(Hash,x,y) + private LoadDefeatCondition(Hash,x,y) = LoadDefeatConditionHandle(Hash,x,y) + private LoadTimerDialog(Hash,x,y) = LoadTimerDialogHandle(Hash,x,y) + private LoadLeaderboard(Hash,x,y) = LoadLeaderboardHandle(Hash,x,y) + private LoadMultiboard(Hash,x,y) = LoadMultiboardHandle(Hash,x,y) + private LoadMultiboardItem(Hash,x,y) = LoadMultiboardItemHandle(Hash,x,y) + private LoadTrackable(Hash,x,y) = LoadTrackableHandle(Hash,x,y) + private LoadDialog(Hash,x,y) = LoadDialogHandle(Hash,x,y) + private LoadButton(Hash,x,y) = LoadButtonHandle(Hash,x,y) + private LoadTextTag(Hash,x,y) = LoadTextTagHandle(Hash,x,y) + private LoadLightning(Hash,x,y) = LoadLightningHandle(Hash,x,y) + private LoadImage(Hash,x,y) = LoadImageHandle(Hash,x,y) + private LoadUbersplat(Hash,x,y) = LoadUbersplatHandle(Hash,x,y) + private LoadRegion(Hash,x,y) = LoadRegionHandle(Hash,x,y) + private LoadFogState(Hash,x,y) = LoadFogStateHandle(Hash,x,y) + private LoadFogModifier(Hash,x,y) = LoadFogModifierHandle(Hash,x,y) + + private HaveIndex(x,y) = HaveSavedInteger(Hash,x,y) + private HaveInteger(x,y) = HaveSavedInteger(Hash,x,y) + private HaveReal(x,y) = HaveSavedReal(Hash,x,y) + private HaveBoolean(x,y) = HaveSavedBoolean(Hash,x,y) + private HaveString(x,y) = HaveSavedString(Hash,x,y) + private HaveHandle(x,y) = HaveSavedHandle(Hash,x,y) + private HaveIndex(Hash,x,y) = HaveSavedInteger(Hash,x,y) + private HaveInteger(Hash,x,y) = HaveSavedInteger(Hash,x,y) + private HaveReal(Hash,x,y) = HaveSavedReal(Hash,x,y) + private HaveBoolean(Hash,x,y) = HaveSavedBoolean(Hash,x,y) + private HaveString(Hash,x,y) = HaveSavedString(Hash,x,y) + private HaveHandle(Hash,x,y) = HaveSavedHandle(Hash,x,y) + + private RemoveIndex(x,y) = RemoveSavedInteger(Hash,x,y) + private RemoveInteger(x,y) = RemoveSavedInteger(Hash,x,y) + private RemoveReal(x,y) = RemoveSavedReal(Hash,x,y) + private RemoveBoolean(x,y) = RemoveSavedBoolean(Hash,x,y) + private RemoveString(x,y) = RemoveSavedString(Hash,x,y) + private RemoveHandle(x,y) = RemoveSavedHandle(Hash,x,y) + private RemoveIndex(Hash,x,y) = RemoveSavedInteger(Hash,x,y) + private RemoveInteger(Hash,x,y) = RemoveSavedInteger(Hash,x,y) + private RemoveReal(Hash,x,y) = RemoveSavedReal(Hash,x,y) + private RemoveBoolean(Hash,x,y) = RemoveSavedBoolean(Hash,x,y) + private RemoveString(Hash,x,y) = RemoveSavedString(Hash,x,y) + private RemoveHandle(Hash,x,y) = RemoveSavedHandle(Hash,x,y) + + private RemoveHash() = FlushParentHashtable(Hash) + private RemoveHash(x) = FlushChildHashtable(Hash,x) + private RemoveHash(Hash,x) = FlushChildHashtable(Hash,x) + } + diff --git a/plugin/AdicHelper/lib/AS/vString b/plugin/AdicHelper/lib/AS/vString new file mode 100644 index 0000000..347c207 --- /dev/null +++ b/plugin/AdicHelper/lib/AS/vString @@ -0,0 +1,81 @@ +//*************************************************************************** +//* +//* vString v1 by AppleSheep +//* +//*************************************************************************** + +#guard AS_vString + +library_once LibASvString initializer Lib_AS_vString_Init + + #define { + AS_vString_type_sys = "^sys^=# |c00FFFF00<$>|r" + AS_vString_type_v = "^c^=$" + AS_vString_type_i = "^i^=" + AS_vString_type_r = "^r^=" + AS_vString_type_b = "^b^=" + AS_vString_type_s = "^s^=<$>" + AS_vString_type_h = "^h^=" + AS_vString_type_pc = "^pc^=" + AS_vString_type_p = "^p^=" + AS_vString_type_ipc = "^ipc^=" + AS_vString_type_ip = "^ip^=" + AS_vString_type_igold = "^igold^=|cffffdc00|r" + AS_vString_type_ilumb = "^ilumb^=|cff00c850|r" + AS_vString_type_uo = "^uo^=" + AS_vString_type_ui = "^ui^=" + + AS_vString_type_all = AS_vString_type_v ## AS_vString_type_sys ## AS_vString_type_i ## AS_vString_type_r ## AS_vString_type_b ## AS_vString_type_s ## AS_vString_type_h \ + ## AS_vString_type_pc ## AS_vString_type_p ## AS_vString_type_ipc ## AS_vString_type_ip ## AS_vString_type_igold ## AS_vString_type_ilumb \ + ## AS_vString_type_uo ## AS_vString_type_ui + + vString() = "" + vString(str) = !@@s ## str !@@a ## AS_vString_type_all ## !@@e + vString(str,v0) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 !@@e + vString(str,v0,v1) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 !@@e + vString(str,v0,v1,v2) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 !@@e + vString(str,v0,v1,v2,v3) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 !@@e + vString(str,v0,v1,v2,v3,v4) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 !@@e + vString(str,v0,v1,v2,v3,v4,v5) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd,ve) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd ## @ve !@@e + vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd,ve,vf) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd ## @ve ## @vf !@@e + } + + string AS_vString_b2s (boolean b) { + if b + return "true" + endif + return "false" + } + + string array AS_vString_pc + + nothing Lib_AS_vString_Init () { + AS_vString_pc[0x00] = "|cffff0303" + AS_vString_pc[0x01] = "|cff0042ff" + AS_vString_pc[0x02] = "|cff1ce6b9" + AS_vString_pc[0x03] = "|cff540081" + AS_vString_pc[0x04] = "|cffffff01" + AS_vString_pc[0x05] = "|cfffe8a0e" + AS_vString_pc[0x06] = "|cff20c000" + AS_vString_pc[0x07] = "|cffe55bb0" + AS_vString_pc[0x08] = "|cff959697" + AS_vString_pc[0x09] = "|cff7ebff1" + AS_vString_pc[0x0a] = "|cff106246" + AS_vString_pc[0x0b] = "|cff4e2a04" + AS_vString_pc[0x0c] = "|cff282828" + AS_vString_pc[0x0d] = "|cff282828" + AS_vString_pc[0x0e] = "|cff282828" + AS_vString_pc[0x0f] = "|cff282828" + } + +endlibrary + diff --git a/plugin/AdicHelper/lib/AS/vString_priv b/plugin/AdicHelper/lib/AS/vString_priv new file mode 100644 index 0000000..0eaaac5 --- /dev/null +++ b/plugin/AdicHelper/lib/AS/vString_priv @@ -0,0 +1,91 @@ +//*************************************************************************** +//* +//* vString(priv) v1 by AppleSheep +//* +//*************************************************************************** + + #define { + private AS_vString_type_sys = "^sys^=# |c00FFFF00<$>|r" + private AS_vString_type_v = "^c^=$" + private AS_vString_type_i = "^i^=" + private AS_vString_type_r = "^r^=" + private AS_vString_type_b = "^b^=" + private AS_vString_type_s = "^s^=<$>" + private AS_vString_type_h = "^h^=" + private AS_vString_type_pc = "^pc^=" + private AS_vString_type_p = "^p^=" + private AS_vString_type_ipc = "^ipc^=" + private AS_vString_type_ip = "^ip^=" + private AS_vString_type_igold = "^igold^=|cffffdc00|r" + private AS_vString_type_ilumb = "^ilumb^=|cff00c850|r" + private AS_vString_type_uo = "^uo^=" + private AS_vString_type_ui = "^ui^=" + + private AS_vString_type_all = AS_vString_type_v ## AS_vString_type_sys ## AS_vString_type_i ## AS_vString_type_r ## AS_vString_type_b ## AS_vString_type_s ## AS_vString_type_h \ + ## AS_vString_type_pc ## AS_vString_type_p ## AS_vString_type_ipc ## AS_vString_type_ip ## AS_vString_type_igold ## AS_vString_type_ilumb \ + ## AS_vString_type_uo ## AS_vString_type_ui + + private vString() = "" + private vString(str) = !@@s ## str !@@a ## AS_vString_type_all ## !@@e + private vString(str,v0) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 !@@e + private vString(str,v0,v1) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 !@@e + private vString(str,v0,v1,v2) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 !@@e + private vString(str,v0,v1,v2,v3) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 !@@e + private vString(str,v0,v1,v2,v3,v4) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 !@@e + private vString(str,v0,v1,v2,v3,v4,v5) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd,ve) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd ## @ve !@@e + private vString(str,v0,v1,v2,v3,v4,v5,v6,v7,v8,v9,va,vb,vc,vd,ve,vf) = !@@s ## str !@@a ## AS_vString_type_all ## @v0 ## @v1 ## @v2 ## @v3 ## @v4 ## @v5 ## @v6 ## @v7 ## @v8 ## @v9 ## @va ## @vb ## @vc ## @vd ## @ve ## @vf !@@e + } + + private string AS_vString_b2s (boolean b) { + if b + return "true" + endif + return "false" + } + + private string AS_vString_GetPC (integer k) { + if k == 0x00 + return "|cffff0303" + elseif k == 0x01 + return "|cff0042ff" + elseif k == 0x02 + return "|cff1ce6b9" + elseif k == 0x03 + return "|cff540081" + elseif k == 0x04 + return "|cffffff01" + elseif k == 0x05 + return "|cfffe8a0e" + elseif k == 0x06 + return "|cff20c000" + elseif k == 0x07 + return "|cffe55bb0" + elseif k == 0x08 + return "|cff959697" + elseif k == 0x09 + return "|cff7ebff1" + elseif k == 0x0a + return "|cff106246" + elseif k == 0x0b + return "|cff4e2a04" + elseif k == 0x0c + return "|cff282828" + elseif k == 0x0d + return "|cff282828" + elseif k == 0x0e + return "|cff282828" + elseif k == 0x0f + return "|cff282828" + endif + return "" + } + diff --git a/plugin/AdicHelper/lib/cJass.j b/plugin/AdicHelper/lib/cJass.j new file mode 100644 index 0000000..6422882 --- /dev/null +++ b/plugin/AdicHelper/lib/cJass.j @@ -0,0 +1,60 @@ +define { + int = integer + bool = boolean + void = nothing + float = real + func = function +} + +define { + = InitHashtable() + = CreateTimer() + = CreateGroup() + = CreateForce() + = CreateRegion() + = CreateTrigger() + = DialogCreate() + = CreateLeaderboard() + = CreateMultiboard() + = CreateQuest() + = CreateTextTag() + = CreateCameraSetup() + (t) = CreateTimerDialog(t) + (file) = InitGameCache(file) + (where,effectID) = AddWeatherEffect(where,effectID) + + () = GetLocalPlayer() + (id) = Player(id) + + () = Location(0,0) + (x,y) = Location(x,y) + + () = Rect(0,0,0,0) + (x1,y1,x2,y2) = Rect(x1,y1,x2,y2) + + (itemid) = CreateItem(itemid,0,0) + (itemid,x,y) = CreateItem(itemid,x,y) + + (p,id) = CreateUnit(p,id,0,0,0) + (p,id,x,y) = CreateUnit(p,id,x,y,0) + (p,id,x,y,f) = CreateUnit(p,id,x,y,f) + + (modelName) = AddSpecialEffect(modelName,0,0) + (modelName,x,y) = AddSpecialEffect(modelName,x,y) + + (objectid,x,y) = CreateDestructable(objectid,x,y,1,0) + (objectid,x,y,z) = CreateDestructableZ(objectid,x,y,z,1,0) + (objectid,x,y,facescale,variation) = CreateDestructable(objectid,x,y,facescale,variation) + (objectid,x,y,z,facescale,variation) = CreateDestructableZ(objectid,x,y,z,facescale,variation) + + (trackableModelPath,x,y,facing) = CreateTrackable(trackableModelPath,x,y,facing) + + (fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) = CreateSound(fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) + + (x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) = CreateUbersplat(x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) + + (codeName,checkVisibility,x1,y1,x2,y2) = AddLightning(codeName,checkVisibility,x1,y1,x2,y2) + (codeName,checkVisibility,x1,y1,z1,x2,y2,z2) = AddLightningEx(codeName,checkVisibility,x1,y1,z1,x2,y2,z2) + + (file,sizeX,sizeY,sizez,posX,posY,posZ,originX,originY,originZ,imageType) = CreateImage(file,sizeX,sizeY,sizeZ,posX,posY,posz,originX,originY,originZ,imageType) +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_antibj_base.j b/plugin/AdicHelper/lib/cj_antibj_base.j new file mode 100644 index 0000000..bd8351b --- /dev/null +++ b/plugin/AdicHelper/lib/cj_antibj_base.j @@ -0,0 +1,1077 @@ +/* + cj_antibj_base v 0.11 (beta) + + Intended to optimize map script by replacing the calls to Blizzard.j functions to their common.j analogs. + Mainly useful for fast automated compile-time optimization of GUI triggers. + This script doesn't remove locations or fix any poor code problems. + For more extreme map optimization you can use Wc3mapoptimizer by Vexorian + + Intended for usage with game version 1.24+ + + This file is part of cJass standard library + 2009 ADOLF \\ cjass.xgm.ru +*/ + +#guard cj_antibj_base + +define { + + // At first we are to remove such constructs + = endif + = endif + = endif + + // These BJ constants, used in map, will be replaced to their values. + bj_PI = 3.14159 + bj_E = 2.71828 + bj_CELLWIDTH = 128. + bj_CLIFFHEIGHT = 128. + bj_UNIT_FACING = 270. + bj_RADTODEG = 57.2958 + bj_DEGTORAD = .0174532 + bj_TEXT_DELAY_QUEST = 20. + bj_TEXT_DELAY_QUESTUPDATE = 20. + bj_TEXT_DELAY_QUESTDONE = 20. + bj_TEXT_DELAY_QUESTFAILED = 20. + bj_TEXT_DELAY_QUESTREQUIREMENT = 20. + bj_TEXT_DELAY_MISSIONFAILED = 20. + bj_TEXT_DELAY_ALWAYSHINT = 12. + bj_TEXT_DELAY_HINT = 12. + bj_TEXT_DELAY_SECRET = 10. + bj_TEXT_DELAY_UNITACQUIRED = 15. + bj_TEXT_DELAY_UNITAVAILABLE = 10. + bj_TEXT_DELAY_ITEMACQUIRED = 10. + bj_TEXT_DELAY_WARNING = 12. + bj_QUEUE_DELAY_QUEST = 5. + bj_QUEUE_DELAY_HINT = 5. + bj_QUEUE_DELAY_SECRET = 3. + bj_HANDICAP_EASY = 60. + bj_GAME_STARTED_THRESHOLD = .01 + bj_WAIT_FOR_COND_MIN_INTERVAL = .1 + bj_POLLED_WAIT_INTERVAL = .1 + bj_POLLED_WAIT_SKIP_THRESHOLD = 2. + + bj_MAX_INVENTORY = 6 + bj_MAX_PLAYERS = 12 + bj_PLAYER_NEUTRAL_VICTIM = 13 + bj_PLAYER_NEUTRAL_EXTRA = 14 + bj_MAX_PLAYER_SLOTS = 16 + bj_MAX_SKELETONS = 25 + bj_MAX_STOCK_ITEM_SLOTS = 11 + bj_MAX_STOCK_UNIT_SLOTS = 11 + bj_MAX_ITEM_LEVEL = 10 + + bj_MELEE_STARTING_TOD = 8. + bj_MELEE_STARTING_GOLD_V0 = 750 + bj_MELEE_STARTING_GOLD_V1 = 500 + bj_MELEE_STARTING_LUMBER_V0 = 200 + bj_MELEE_STARTING_LUMBER_V1 = 150 + bj_MELEE_STARTING_HERO_TOKENS = 1 + bj_MELEE_HERO_LIMIT = 3 + bj_MELEE_HERO_TYPE_LIMIT = 1 + bj_MELEE_MINE_SEARCH_RADIUS = 2000 + bj_MELEE_CLEAR_UNITS_RADIUS = 1500 + bj_MELEE_CRIPPLE_TIMEOUT = 120. + bj_MELEE_CRIPPLE_MSG_DURATION = 20. + bj_MELEE_MAX_TWINKED_HEROES_V0 = 3 + bj_MELEE_MAX_TWINKED_HEROES_V1 = 1 + + bj_CREEP_ITEM_DELAY = .5 + + bj_STOCK_RESTOCK_INITIAL_DELAY = 120 + bj_STOCK_RESTOCK_INTERVAL = 30 + bj_STOCK_MAX_ITERATIONS = 20 + + bj_MAX_DEST_IN_REGION_EVENTS = 64 + + bj_CAMERA_MIN_FARZ = 100 + bj_CAMERA_DEFAULT_DISTANCE = 1650 + bj_CAMERA_DEFAULT_FARZ = 5000 + bj_CAMERA_DEFAULT_AOA = 304 + bj_CAMERA_DEFAULT_FOV = 70 + bj_CAMERA_DEFAULT_ROLL = 0 + bj_CAMERA_DEFAULT_ROTATION = 90 + + bj_RESCUE_PING_TIME = 2. + + bj_NOTHING_SOUND_DURATION = 5. + bj_TRANSMISSION_PING_TIME = 1. + bj_TRANSMISSION_IND_RED = 255 + bj_TRANSMISSION_IND_BLUE = 255 + bj_TRANSMISSION_IND_GREEN = 255 + bj_TRANSMISSION_IND_ALPHA = 255 + bj_TRANSMISSION_PORT_HANGTIME = 1.5 + + bj_CINEMODE_INTERFACEFADE = .5 + bj_CINEMODE_GAMESPEED = MAP_SPEED_NORMAL // constant from common.j + + bj_CINEMODE_VOLUME_UNITMOVEMENT = .4 + bj_CINEMODE_VOLUME_UNITSOUNDS = .0 + bj_CINEMODE_VOLUME_COMBAT = .4 + bj_CINEMODE_VOLUME_SPELLS = .4 + bj_CINEMODE_VOLUME_UI = .0 + bj_CINEMODE_VOLUME_MUSIC = .55 + bj_CINEMODE_VOLUME_AMBIENTSOUNDS = 1. + bj_CINEMODE_VOLUME_FIRE = .6 + + bj_SPEECH_VOLUME_UNITMOVEMENT = .25 + bj_SPEECH_VOLUME_UNITSOUNDS = .0 + bj_SPEECH_VOLUME_COMBAT = .25 + bj_SPEECH_VOLUME_SPELLS = .25 + bj_SPEECH_VOLUME_UI = .0 + bj_SPEECH_VOLUME_MUSIC = .55 + bj_SPEECH_VOLUME_AMBIENTSOUNDS = 1. + bj_SPEECH_VOLUME_FIRE = .6 + + bj_SMARTPAN_TRESHOLD_PAN = 500 + bj_SMARTPAN_TRESHOLD_SNAP = 3500 + + bj_MAX_QUEUED_TRIGGERS = 100 + bj_QUEUED_TRIGGER_TIMEOUT = 180. + + bj_GAMECACHE_BOOLEAN = 0 + bj_GAMECACHE_INTEGER = 1 + bj_GAMECACHE_REAL = 2 + bj_GAMECACHE_UNIT = 3 + bj_GAMECACHE_STRING = 4 + + bj_HASHTABLE_BOOLEAN = 0 + bj_HASHTABLE_INTEGER = 1 + bj_HASHTABLE_REAL = 2 + bj_HASHTABLE_STRING = 3 + bj_HASHTABLE_HANDLE = 4 + + bj_ITEM_STATUS_HIDDEN = 0 + bj_ITEM_STATUS_OWNED = 1 + bj_ITEM_STATUS_INVULNERABLE = 2 + bj_ITEM_STATUS_POWERUP = 3 + bj_ITEM_STATUS_SELLABLE = 4 + bj_ITEM_STATUS_PAWNABLE = 5 + + bj_ITEMCODE_STATUS_POWERUP = 0 + bj_ITEMCODE_STATUS_SELLABLE = 1 + bj_ITEMCODE_STATUS_PAWNABLE = 2 + + bj_MINIMAPPINGSTYLE_SIMPLE = 0 + bj_MINIMAPPINGSTYLE_FLASHY = 1 + bj_MINIMAPPINGSTYLE_ATTACK = 2 + + bj_CORPSE_MAX_DEATH_TIME = 8. + + bj_CORPSETYPE_FLESH = 0 + bj_CORPSETYPE_BONE = 1 + + bj_ELEVATOR_BLOCKER_CODE = 'DTep' + bj_ELEVATOR_CODE01 = 'DTrf' + bj_ELEVATOR_CODE02 = 'DTrx' + + bj_ELEVATOR_WALL_TYPE_ALL = 0 + bj_ELEVATOR_WALL_TYPE_EAST = 1 + bj_ELEVATOR_WALL_TYPE_NORTH = 2 + bj_ELEVATOR_WALL_TYPE_SOUTH = 3 + bj_ELEVATOR_WALL_TYPE_WEST = 4 + + // Then we'll replace lots of other "bad" functions + // because almost all of them are just wrappers + + = + = + + SinBJ (r) = Sin((r) * bj_DEGTORAD) + CosBJ (r) = Cos((r) * bj_DEGTORAD) + TanBJ (r) = Tan((r) * bj_DEGTORAD) + AsinBJ (r) = Asin(r) * bj_RADTODEG + AcosBJ (r) = Acos(r) * bj_RADTODEG + AtanBJ (r) = Atan(r) * bj_RADTODEG + Atan2BJ (x, y) = Atan2(y, x) * bj_RADTODEG + + // Here we just use simpler functions + (r) = Sin(r) + (r) = Cos(r) + (r) = Tan(r) + (r) = Asin(r) + (r) = Acos(r) + (r) = Atan(r) + (x, y) = Atan2(x, y) + + = GetRandomReal(0, 360) + = GetRandomReal(0, 100) + + = { PauseTimer(bj_queuedExecTimeoutTimer) ; bj_queuedExecTotal = 0 } + = { PauseTimer(bj_queuedExecTimeoutTimer) ; bj_queuedExecTotal = 0 } + = bj_queuedExecTotal = IMinBJ(bj_queuedExecTotal, 1) + = bj_queuedExecTotal = IMinBJ(bj_queuedExecTotal, 1) + = (bj_queuedExecTotal <= 0) + IsTriggerQueuedBJ (t) = (QueuedTriggerGetIndex(t) != -1) + = + = bj_queuedExecTotal + = + (t) = + + = bj_forLoopAIndex + = bj_forLoopBIndex + (i) = bj_forLoopAIndex = i + (i) = bj_forLoopBIndex = i + = + = + + StringIdentity (s) = GetLocalizedString(s) + + GetBooleanAnd (a, b) = (a && b) + GetBooleanOr (a, b) = (a || b) + (a, b) = Get ## BooleanAnd(a, b) + (a, b) = Get ## BooleanOr(a, b) + + PercentTo255 (r) = PercentToInt(r, 255) + + = GetFloatGameState(GAME_STATE_TIME_OF_DAY) + SetTimeOfDay (r) = SetFloatGameState(GAME_STATE_TIME_OF_DAY, r) + + SetTimeOfDayScalePercentBJ (r) = SetTimeOfDayScale((r) * .01) + = GetTimeOfDayScale() * 100. + = + + (b, c, p, r) = { if GetLocalPlayer() == p { CameraSetupApplyForceDuration(c, b, r) } } + (p, c, a, b) = { if GetLocalPlayer() == p { SetCameraField(c, a, b) } } + (p, x, y) = { if GetLocalPlayer() == p { SetCameraPosition(x, y) } } + (p, x, y) = { if GetLocalPlayer() == p { PanCameraTo(x, y) } } + (p, x, y, r) = { if GetLocalPlayer() == p { PanCameraToTimed(x, y, r) } } + (p, s) = { if GetLocalPlayer() == p { SetCinematicCamera(s) } } + (p, r) = { if GetLocalPlayer() == p { ResetToGameCamera(r) } } + (p, a, b) = { if GetLocalPlayer() == p { CameraSetSourceNoise(a, b) } } + (p, a, b) = { if GetLocalPlayer() == p { CameraSetTargetNoise(a, b) } } + (p, u, x, y, b) = { if GetLocalPlayer() == p { SetCameraTargetController(u, x, y, b) } } + + (b, c, p, r) = { if GetLocalPlayer() == p { CameraSetupApplyForceDuration(c, b, r) } } + (p, c, a, b)> = { if GetLocalPlayer() == p { SetCameraField(c, a, b) } } + (p, x, y) = { if GetLocalPlayer() == p { SetCameraPosition(x, y) } } + (p, x, y) = { if GetLocalPlayer() == p { PanCameraTo(x, y) } } + (p, x, y, r) = { if GetLocalPlayer() == p { PanCameraToTimed(x, y, r) } } + (p, s) = { if GetLocalPlayer() == p { SetCinematicCamera(s) } } + (p, r) = { if GetLocalPlayer() == p { ResetToGameCamera(r) } } + (p, a, b) = { if GetLocalPlayer() == p { CameraSetSourceNoise(a, b) } } + (p, a, b) = { if GetLocalPlayer() == p { CameraSetTargetNoise(a, b) } } + (p, u, x, y, b) = { if GetLocalPlayer() == p { SetCameraTargetController(u, x, y, b) } } + + CameraSetupGetFieldSwap (a, b) = CameraSetupGetField(b, a) + + = Rect(GetCameraBoundMinX(), GetCameraBoundMinY(), GetCameraBoundMaxX(), GetCameraBoundMaxY()) + + = bj_mapInitialCameraBounds + = + + = bj_mapInitialPlayableArea + = + + GetEntireMapRect = GetWorldBounds + + (p, r) = { if GetLocalPlayer() == p { SetCameraBoundsToRect(r) } } + (p, x, y) = { if GetLocalPlayer() == p { SetCameraQuickPosition(x, y) } } + (p) = { if GetLocalPlayer() == p { StopCamera() } } + (i, p, a, b, c, d) = { if GetLocalPlayer() == p { AdjustCameraBoundsBJ(i, a, b, c, d) } } + (p, u, x, y) = { if GetLocalPlayer() == p { SetCameraOrientController(u, x, y) } } + + (p, r) = { if GetLocalPlayer() == p { SetCameraBoundsToRect(r) } } + (p, x, y) = { if GetLocalPlayer() == p { SetCameraQuickPosition(x, y) } } + (p) = { if GetLocalPlayer() == p { StopCamera() } } + (i, p, a, b, c, d) = { if GetLocalPlayer() == p { AdjustCameraBoundsBJ(i, a, b, c, d) } } + (p, u, x, y) = { if GetLocalPlayer() == p { SetCameraOrientController(u, x, y) } } + + (r) = CameraSetSmoothingFactor(r) + = CameraSetSmoothingFactor(0.) + + (f, s) = { if IsPlayerInForce(GetLocalPlayer(), f) { DisplayTextToPlayer(GetLocalPlayer(), 0., 0., s) } } + (f, r, s) = { if IsPlayerInForce(GetLocalPlayer(), f) { DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., r, s) } } + (f) = { if IsPlayerInForce(GetLocalPlayer(), f) { ClearTextMessages() } } + + (f, s) = { if IsPlayerInForce(GetLocalPlayer(), f) { DisplayTextToPlayer(GetLocalPlayer(), 0., 0., s) } } + (f, r, s) = { if IsPlayerInForce(GetLocalPlayer(), f) { DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., r, s) } } + (f) = { if IsPlayerInForce(GetLocalPlayer(), f) { ClearTextMessages() } } + + (str, s, e) = SubString(str, (s)-1, e) + SubStringBJ (str, s, e) = SubString(str, (s)-1, e) + + (h) = + GetHandleIdBJ (h) = GetHandleId(h) + + (s) = + StringHashBJ (s) = StringHash(s) + + TriggerRegisterPlayerUnitEventSimple (t, p ,e) = TriggerRegisterPlayerUnitEvent(t, p, e, null) + TriggerRegisterTimerEventPeriodic (t, r) = TriggerRegisterTimerEvent(t, r, true) + TriggerRegisterTimerEventSingle (t, r) = TriggerRegisterTimerEvent(t, r, false) + TriggerRegisterTimerExpireEventBJ (t, tm) = TriggerRegisterTimerExpireEvent(t, tm) + TriggerRegisterPlayerEventVictory (t, p) = TriggerRegisterPlayerEvent(t, p, EVENT_PLAYER_VICTORY) + TriggerRegisterPlayerEventDefeat (t, p) = TriggerRegisterPlayerEvent(t, p, EVENT_PLAYER_DEFEAT) + TriggerRegisterPlayerEventLeave (t, p) = TriggerRegisterPlayerEvent(t, p, EVENT_PLAYER_LEAVE) + TriggerRegisterPlayerEventAllianceChanged (t, p) = TriggerRegisterPlayerEvent(t, p, EVENT_PLAYER_ALLIANCE_CHANGED) + TriggerRegisterPlayerEventEndCinematic (t, p) = TriggerRegisterPlayerEvent(t, p, EVENT_PLAYER_END_CINEMATIC) + TriggerRegisterGameStateEventTimeOfDay (t, l, r) = TriggerRegisterGameStateEvent(t, GAME_STATE_TIME_OF_DAY, l, r) + TriggerRegisterEnterRegionSimple (t, r) = TriggerRegisterEnterRegion(t, r, null) + TriggerRegisterLeaveRegionSimple (t, r) = TriggerRegisterLeaveRegion(t, r, null) + TriggerRegisterDistanceBetweenUnits (t, u, b, r) = TriggerRegisterUnitInRange(t, u, r, b) + TriggerRegisterUnitInRangeSimple (t, r, u) = TriggerRegisterUnitInRange(t, u, r, null) + TriggerRegisterUnitLifeEvent (t, u, l, r) = TriggerRegisterUnitStateEvent(t, u, UNIT_STATE_LIFE, l, r) + TriggerRegisterUnitManaEvent (t, u, l, r) = TriggerRegisterUnitStateEvent(t, u, UNIT_STATE_MANA, l, r) + TriggerRegisterDialogEventBJ (t, d) = TriggerRegisterDialogEvent(t, d) + TriggerRegisterShowSkillEventBJ (t) = TriggerRegisterGameEvent(t, EVENT_GAME_SHOW_SKILL) + TriggerRegisterBuildSubmenuEventBJ(t) = TriggerRegisterGameEvent(t, EVENT_GAME_BUILD_SUBMENU) + TriggerRegisterGameLoadedEventBJ (t) = TriggerRegisterGameEvent(t, EVENT_GAME_LOADED) + TriggerRegisterGameSavedEventBJ (t) = TriggerRegisterGameEvent(t, EVENT_GAME_SAVE) + + (r, i) = bj_lastCreatedWeatherEffect = AddWeatherEffect(r, i) + = + = bj_lastCreatedWeatherEffect + RemoveWeatherEffectBJ (e) = RemoveWeatherEffect (e) + + TerrainDeformationStopBJ (d, r) = TerrainDeformStop(d, R2I(r * 1000)) + + = + = bj_lastCreatedTerrainDeformation + + DestroyLightningBJ (l) = DestroyLightning(l) + + GetLightningColorABJ (l) = GetLightningColorA(l) + GetLightningColorRBJ (l) = GetLightningColorR(l) + GetLightningColorGBJ (l) = GetLightningColorG(l) + GetLightningColorBBJ (l) = GetLightningColorB(l) + + SetLightningColorBJ (l, r, g, b, a) = SetLightningColor(l, r, g, b, a) + + = + = bj_lastCreatedLightning + + GetAbilityEffectBJ (a, e, i) = GetAbilityEffectById(a, e, i) + GetAbilitySoundBJ (a, t) = GetAbilitySoundById(a, t) + + SetWaterBaseColorBJ (r, g, b, a) = SetWaterBaseColor(PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + (p, f, r, b) = bj_lastCreatedFogModifier = CreateFogModifierRect(p, f, r, true, b) + (p, f, l, r, b) = bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(p, f, l, r, true, b) + + = + = bj_lastCreatedFogModifier + + = FogEnable(true) + = FogEnable(false) + + = FogMaskEnable(true) + = FogMaskEnable(false) + + UseTimeOfDayBJ (b) = SuspendTimeOfDay(!b) + + SetTerrainFogExBJ (i, zs, ze, d, r, g, b) = SetTerrainFogEx(i, zs, ze, d, (r)*.01, (g)*.01, (b)*.01) + + ResetTerrainFogBJ = ResetTerrainFog + + SetDoodadAnimationRectBJ (s, i, r) = SetDoodadAnimationRect(r, i, s, false) + AddUnitAnimationPropertiesBJ (b, s, u) = AddUnitAnimationProperties(u, s, b) + + ShowImageBJ (b, i) = ShowImage(i, b) + + SetImageColorBJ (i, r, g, b, a) = SetImageColor(i, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + = + = bj_lastCreatedImage + + ShowUbersplatBJ (b, u) = ShowUbersplat(u, b) + + = + = bj_lastCreatedUbersplat + + StopSoundBJ (s, b) = StopSound(s, false, b) + SetSoundVolumeBJ (s, r) = SetSoundVolume(s, PercentToInt(r, 127)) + SetSoundOffsetBJ (r, s) = SetSoundPlayPosition(s, R2I((r)*1000)) + SetSoundDistanceCutoffBJ (s, r) = SetSoundDistanceCutoff(s, r) + SetSoundPitchBJ (s, r) = SetSoundPitch(s, r) + AttachSoundToUnitBJ (s, u) = AttachSoundToUnit(s, u) + SetSoundConeAnglesBJ (s, i, o, r) = SetSoundConeAngles(s, i, o, PercentToInt(o, 127)) + + KillSoundWhenDoneBJ = KillSoundWhenDone + + (s, a, b)> = { bj_lastPlayedMusic = s ; PlayMusicEx(bj_lastPlayedMusic, R2I((a)*1000), R2I((b)*1000)) } + + SetMusicOffsetBJ (r) = SetMusicPlayPosition(R2I((r)*1000)) + PlayThematicMusicBJ = PlayThematicMusic + PlayThematicMusicExBJ (s, r) = PlayThematicMusicEx(s, R2I((r)*1000)) + SetThematicMusicOffsetBJ (r) = SetThematicMusicPlayPosition(R2I((r)*1000)) + EndThematicMusicBJ = EndThematicMusic + StopMusicBJ = StopMusic + ResumeMusicBJ = ResumeMusic + SetMusicVolumeBJ (r) = SetMusicVolume(PercentToInt(r, 127)) + + (s) = + GetSoundFileDurationBJ (s) = I2R(GetSoundFileDuration(s))*.001 + + = + = bj_lastPlayedSound + = + = bj_lastPlayedMusic + + VolumeGroupSetVolumeBJ (v, r) = VolumeGroupSetVolume(v, (r)*.01) + + VolumeGroupResetImmediateBJ = VolumeGroupReset + + WaitForSoundBJ (s, r) = TriggerWaitForSound(s, r) + + SetMapMusicIndexedBJ (s, i) = SetMapMusic(s, false, i) + SetMapMusicRandomBJ (s) = SetMapMusic(s, true, 0) + ClearMapMusicBJ = ClearMapMusic + + StartSoundForPlayerBJ (p, s) = { if GetLocalPlayer() == p { StartSound(s) } } + VolumeGroupSetVolumeForPlayerBJ (p, v, r) = { if GetLocalPlayer() == p { VolumeGroupSetVolume(v, r) } } + + (b) = bj_useDawnDuskSounds = b + + = + = bj_useDawnDuskSounds + + (l, s) = bj_lastCreatedEffect = AddSpecialEffectLoc(s, l) + (s, w, a) = bj_lastCreatedEffect = AddSpecialEffectTarget(s, w, a) + + DestroyEffectBJ = DestroyEffect + + = + = bj_lastCreatedEffect + + GetItemLifeBJ = GetWidgetLife + SetItemLifeBJ = SetWidgetLife + + AddHeroXPSwapped (i, u, b) = AddHeroXP(u, i, b) + + DecUnitAbilityLevelSwapped (i, u) = DecUnitAbilityLevel(u, i) + IncUnitAbilityLevelSwapped (i, u) = IncUnitAbilityLevel(u, i) + SetUnitAbilityLevelSwapped (i, u, l) = SetUnitAbilityLevel(u, i, l) + GetUnitAbilityLevelSwapped (i, u) = GetUnitAbilityLevel(u, i) + + (u, b) = + UnitHasBuffBJ (u, b) = GetUnitAbilityLevel(u, b) > 0 + + UnitRemoveBuffBJ (b, u) = UnitRemoveAbility(u, b) + UnitAddItemSwapped (i, u) = UnitAddItem(u, i) + + (i, u) = { bj_lastRemovedItem = i ; UnitRemoveItem(u, bj_lastRemovedItem) } + (i, u) = bj_lastRemovedItem = UnitRemoveItemFromSlot(u, i-1) + + = + = bj_lastCreatedItem + = + = bj_lastRemovedItem + + GetLearnedSkillBJ = GetLearnedSkill + + SuspendHeroXPBJ (b, u) = SuspendHeroXP(u, !b) + + SetPlayerHandicapXPBJ (p, r) = SetPlayerHandicapXP(p, (r)*.01) + (p) = GetPlayerHandicapXP(p) + GetPlayerHandicapXPBJ (p) = GetPlayerHandicapXP(p)*100 + + SetPlayerHandicapBJ (p, r) = SetPlayerHandicap(p, (r)*.01) + (p) = GetPlayerHandicap(p) + GetPlayerHandicapBJ (p) = GetPlayerHandicap(p)*100 + + UnitDropItemPointBJ = UnitDropItemPoint + UnitDropItemSlotBJ (u, i, s) = UnitDropItemSlot(u, i, s-1) + UnitDropItemTargetBJ = UnitDropItemTarget + UnitUseItemDestructable = UnitUseItemTarget + UnitItemInSlotBJ (u, i) = UnitItemInSlot(u, i-1) + + (u, i) = GetInventoryIndexOfItemTypeBJ(u, i) + UnitHasItemOfTypeBJ (u, i) = GetInventoryIndexOfItemTypeBJ(u, i) > 0 + + UnitInventorySizeBJ = UnitInventorySize + SetItemInvulnerableBJ = SetItemInvulnerable + SetItemDropOnDeathBJ = SetItemDropOnDeath + SetItemDroppableBJ = SetItemDroppable + SetItemPlayerBJ = SetItemPlayer + + SetItemVisibleBJ (b, i) = SetItemVisible(i, b) + + (i) = IsItemVisible(i) + IsItemHiddenBJ (i) = !IsItemVisible(i) + + ChooseRandomItemBJ = ChooseRandomItem + + ChooseRandomItemExBJ (i, t) = ChooseRandomItemEx(t, i) + + ChooseRandomNPBuildingBJ = ChooseRandomNPBuilding + ChooseRandomCreepBJ = ChooseRandomCreep + + EnumItemsInRectBJ (r, c) = EnumItemsInRect(r, null, c) + RandomItemInRectSimpleBJ (r) = RandomItemInRectBJ(r, null) + + String2UnitIdBJ = UnitId + GetIssuedOrderIdBJ = GetIssuedOrderId + + GetKillingUnitBJ = GetKillingUnit + + = + = bj_lastCreatedUnit + + CreateNUnitsAtLocFacingLocBJ (i, u, p, l, lx) = CreateNUnitsAtLoc(i, u, p, l, AngleBetweenPoints(l, lx)) + + = GroupAddUnit(bj_groupLastCreatedDest, GetEnumUnit()) + + UnitSuspendDecayBJ (b, u) = UnitSuspendDecay(u, b) + GetUnitStateSwap (a, b) = GetUnitState (b, a) + + GetUnitLifePercent (u) = GetUnitStatePercent(u, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE) + GetUnitManaPercent (u) = GetUnitStatePercent(u, UNIT_STATE_MANA, UNIT_STATE_MAX_MANA) + + (u) = { ClearSelection() ; SelectUnit(u, true) } + + = SelectUnit(GetEnumUnit(), true) + + (g) = { ClearSelection() ; ForGroup(g, function SelectGroupBJEnum) } + + SelectUnitAdd (u) = SelectUnit(u, true) + SelectUnitRemove (u) = SelectUnit(u, false) + + (p) = { if GetLocalPlayer() == p { ClearSelection() } } + (u, p) = { if GetLocalPlayer() == p { SelectUnit(u, true) } } + (u, p) = { if GetLocalPlayer() == p { SelectUnit(u, false) } } + + SetUnitLifeBJ (u, r) = SetUnitState(u, UNIT_STATE_LIFE, RMaxBJ(0, r)) + SetUnitManaBJ (u, r) = SetUnitState(u, UNIT_STATE_MANA, RMaxBJ(0, r)) + + (u) = GetUnitState(u, UNIT_STATE_LIFE) + IsUnitDeadBJ (u) = GetUnitState(u, UNIT_STATE_LIFE) <= 0. + (u) = GetUnitState(u, UNIT_STATE_LIFE) + IsUnitAliveBJ (u) = GetUnitState(u, UNIT_STATE_LIFE) > 0. + + = bj_isUnitGroupEmptyResult = false + + = { if !RectContainsUnit(bj_isUnitGroupInRectRect, GetEnumUnit()) { bj_isUnitGroupInRectResult = false } } + + IsUnitHiddenBJ = IsUnitHidden + ShowUnitHide (u) = ShowUnit(u, false) + + = GetUnitTypeId(GetFilterUnit()) + = GetUnitTypeId(GetFilterUnit()) == 'ngol' + + GroupTrainOrderByIdBJ = GroupImmediateOrderById + IssueUpgradeOrderByIdBJ = IssueImmediateOrderById + + GetAttackedUnitBJ = GetTriggerUnit + + SetUnitFlyHeightBJ = SetUnitFlyHeight + SetUnitTurnSpeedBJ = SetUnitTurnSpeed + + (u) = GetUnitPropWindow(u) + GetUnitPropWindowBJ (u) = (GetUnitPropWindow(u) * bj_RADTODEG) + + GetUnitDefaultPropWindowBJ = GetUnitDefaultPropWindow + SetUnitBlendTimeBJ = SetUnitBlendTime + SetUnitAcquireRangeBJ = SetUnitAcquireRange + UnitSetCanSleepBJ = UnitSetCanSleep + UnitCanSleepBJ = UnitCanSleep + UnitWakeUpBJ = UnitWakeUp + UnitIsSleepingBJ = UnitIsSleeping + + = UnitWakeUp(GetEnumUnit()) + + UnitGenerateAlarms (u, b) = UnitIgnoreAlarm(u, !b) + + DoesUnitGenerateAlarms (u) = !UnitIgnoreAlarmToggled(u) + + = PauseUnit(GetEnumUnit(), bj_pauseAllUnitsFlag) + + PauseUnitBJ (b, u) = PauseUnit(u, b) + IsUnitPausedBJ = IsUnitPaused + + UnitPauseTimedLifeBJ (b, u) = UnitPauseTimedLife(u, b) + + UnitApplyTimedLifeBJ (r, i, u) = UnitApplyTimedLife(u, i, r) + + UnitShareVisionBJ (b, u, p) = UnitShareVision(u, p, b) + + UnitRemoveAbilityBJ (i, u) = UnitRemoveAbility(u, i) + UnitAddAbilityBJ (i, u) = UnitAddAbility(u, i) + + UnitRemoveTypeBJ (a, b) = UnitRemoveType(b, a) + UnitAddTypeBJ (a, b) = UnitAddType(b, a) + + UnitMakeAbilityPermanentBJ (b, i, u) = UnitMakeAbilityPermanent(u, b, i) + + SetUnitExplodedBJ = SetUnitExploded + + GetTransportUnitBJ = GetTransportUnit + GetLoadedUnitBJ = GetLoadedUnit + + IsUnitInTransportBJ = IsUnitInTransport + IsUnitLoadedBJ = IsUnitLoaded + IsUnitIllusionBJ = IsUnitIllusion + + = + = bj_lastReplacedUnit + + AddItemToStockBJ (a, b, c, d) = AddItemToStock(b, a, c, d) + AddUnitToStockBJ (a, b, c, d) = AddUnitToStock(b, a, c, d) + + RemoveItemFromStockBJ (i, u) = RemoveItemFromStock(u, i) + RemoveUnitFromStockBJ (a, b) = RemoveUnitFromStock(b, a) + + SetUnitUseFoodBJ (b, u) = SetUnitUseFood(u, b) + + UnitDamageTargetBJ (u, t, r, at, dt) = UnitDamageTarget(u, t, r, true, false, at, dt, WEAPON_TYPE_WHOKNOWS) + + = + = bj_lastCreatedDestructable + + ShowDestructableBJ (b, d) = ShowDestructable(d, b) + + SetDestructableInvulnerableBJ = SetDestructableInvulnerable + IsDestructableInvulnerableBJ = IsDestructableInvulnerable + + EnumDestructablesInRectAll (r, c) = EnumDestructablesInRect(r, null, c) + + (d) = GetDestructableLife(d) + IsDestructableDeadBJ (d) = GetDestructableLife(d) <= 0. + + (d) = GetDestructableLife(d) + IsDestructableAliveBJ (d) = GetDestructableLife(d) > 0. + + RandomDestructableInRectSimpleBJ (r) = RandomDestructableInRectBJ(r, null) + + SetDestructableMaxLifeBJ = SetDestructableMaxLife + + = bj_elevatorWallBlocker = GetEnumDestructable() + + WaygateActivateBJ (b, u) = WaygateActivate(u, b) + + WaygateIsActiveBJ = WaygateIsActive + + UnitSetUsesAltIconBJ (b, u) = UnitSetUsesAltIcon(u, b) + + (p, s) = { if GetLocalPlayer() == p { ForceUIKey(s) } } + (p) = { if GetLocalPlayer() == p { ForceUICancel() } } + + GroupAddUnitSimple (u, g) = GroupAddUnit(g, u) + GroupRemoveUnitSimple (u, g) = GroupRemoveUnit(g, u) + + = GroupAddUnit(bj_groupAddGroupDest, GetEnumUnit()) + = GroupRemoveUnit(bj_groupRemoveGroupDest, GetEnumUnit()) + + ForceAddPlayerSimple (p, f) = ForceAddPlayer(f, p) + ForceRemovePlayerSimple (p, f) = ForceRemovePlayer(f, p) + + GetUnitsInRectAll (r) = GetUnitsInRectMatching(r, null) + + = GetOwningPlayer(GetFilterUnit()) + = GetOwningPlayer(GetFilterUnit()) == bj_groupEnumOwningPlayer + + GetUnitsInRangeOfLocAll (r, l) = GetUnitsInRangeOfLocMatching(r, l, null) + + = GetUnitTypeId(GetFilterUnit()) + = GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId + + GetUnitsOfPlayerAll (p) = GetUnitsOfPlayerMatching(p, null) + + = GetUnitTypeId(GetFilterUnit()) + = GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId + + = + = bj_FORCE_ALL_PLAYERS + + = bj_groupCountUnits ++ + = bj_forceCountPlayers ++ + + ResetUnitAnimation (u) = SetUnitAnimation(u, "stand") + + SetUnitTimeScalePercent (u, r) = SetUnitTimeScale(u, (r)*.01) + SetUnitScalePercent (u, x, y, z) = SetUnitScale(u, (x)*.01, (y)*.01, (z)*.01) + + SetUnitVertexColorBJ (u, r, g, b, a) = SetUnitVertexColor(u, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + UnitAddIndicatorBJ (u, r, g, b, a) = AddIndicator(u, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + DestructableAddIndicatorBJ (d, r, g, b, a) = AddIndicator(d, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + ItemAddIndicatorBJ (i, r, g, b, a) = AddIndicator(d, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + QueueUnitAnimationBJ = QueueUnitAnimation + SetDestructableAnimationBJ = SetDestructableAnimation + QueueDestructableAnimationBJ = QueueDestructableAnimation + + SetDestAnimationSpeedPercent (d, r) = SetDestructableAnimationSpeed(d, (r)*.01) + + DialogDisplayBJ (b, d, p) = DialogDisplay(p, d, b) + + DialogSetMessageBJ = DialogSetMessage + DialogClearBJ = DialogClear + GetClickedButtonBJ = GetClickedButton + GetClickedDialogBJ = GetClickedDialog + + (d, s) = bj_lastCreatedButton = DialogAddButton(d, s, 0) + (d, s, i) = bj_lastCreatedButton = DialogAddButton(d, s, i) + DialogAddButtonBJ (d, s) = bj_lastCreatedButton = DialogAddButton(d, s, 0) + DialogAddButtonWithHotkeyBJ (d, s, i) = bj_lastCreatedButton = DialogAddButton(d, s, i) + + = + = bj_lastCreatedButton + + SetPlayerAllianceStateVisionBJ (s, d, b) = SetPlayerAlliance(s, d, ALLIANCE_SHARED_VISION, b) + SetPlayerAllianceStateControlBJ (s, d, b) = SetPlayerAlliance(s, d, ALLIANCE_SHARED_CONTROL, b) + SetPlayerAllianceStateFullControlBJ (s, d, b) = SetPlayerAlliance(s, d, ALLIANCE_SHARED_ADVANCED_CONTROL, b) + + = SetUnitOwner(GetEnumUnit(), Player(bj_PLAYER_NEUTRAL_VICTIM), false) + + EndGameBJ = EndGame + + = { PauseGame(false) ; RestartGame(true) } + = { PauseGame(false) ; DisplayLoadDialog() } + + SetPlayerOnScoreScreenBJ (b, p) = SetPlayerOnScoreScreen(p, b) + + DestroyQuestBJ = DestroyQuest + + QuestSetTitleBJ = QuestSetTitle + QuestSetDescriptionBJ = QuestSetDescription + QuestSetCompletedBJ = QuestSetCompleted + QuestSetFailedBJ = QuestSetFailed + QuestSetDiscoveredBJ = QuestSetDiscovered + QuestItemSetDescriptionBJ = QuestItemSetDescription + QuestItemSetCompletedBJ = QuestItemSetCompleted + + QuestSetEnabledBJ (b, q) = QuestSetEnabled(q, b) + + = + = bj_lastCreatedQuest + = + = bj_lastCreatedQuestItem + + DestroyDefeatConditionBJ = DestroyDefeatCondition + DefeatConditionSetDescriptionBJ = DefeatConditionSetDescription + + = + = bj_lastCreatedDefeatCondition + + FlashQuestDialogButtonBJ = FlashQuestDialogButton + + DestroyTimerBJ = DestroyTimer + + = + = bj_lastStartedTimer + + DestroyTimerDialogBJ = DestroyTimerDialog + TimerDialogSetTitleBJ = TimerDialogSetTitle + + TimerDialogSetTitleColorBJ (t, r, g, b, a) = TimerDialogSetTitleColor(t, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + TimerDialogSetTimeColorBJ (t, r, g, b, a) = TimerDialogSetTimeColor(t, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + TimerDialogSetSpeedBJ = TimerDialogSetSpeed + + (b, t, p) = { if GetLocalPlayer() == p { TimerDialogDisplay(t, b) } } + + TimerDialogDisplayBJ (b, y) = TimerDialogDisplay(t, b) + + = + = bj_lastCreatedTimerDialog + + LeaderboardSetLabelColorBJ (l, r, g, b, a) = LeaderboardSetLabelColor(l, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + LeaderboardSetValueColorBJ (l, r, g, b, a) = LeaderboardSetValueColor(l, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + LeaderboardSetStyleBJ = LeaderboardSetStyle + LeaderboardGetItemCountBJ = LeaderboardGetItemCount + LeaderboardHasPlayerItemBJ = LeaderboardHasPlayerItem + DestroyLeaderboardBJ = DestroyLeaderboard + LeaderboardSortItemsByPlayerBJ = LeaderboardSortItemsByPlayer + LeaderboardSortItemsByLabelBJ = LeaderboardSortItemsByLabel + PlayerGetLeaderboardBJ = PlayerGetLeaderboard + + LeaderboardDisplayBJ (b, l) = LeaderboardDisplay(l, b) + + (p, l) = + LeaderboardGetPlayerIndexBJ (p, l) = (LeaderboardGetPlayerIndex(l, p) + 1) + + = + = bj_lastCreatedLeaderboard + + DestroyMultiboardBJ = DestroyMultiboard + + = + = bj_lastCreatedMultiboard + + MultiboardDisplayBJ (b, m) = MultiboardDisplay(m, b) + MultiboardMinimizeBJ (b, m) = MultiboardMinimize(m, b) + + MultiboardSetTitleTextColorBJ (m, r, g, b, a) = MultiboardSetTitleTextColor(m, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + MultiboardAllowDisplayBJ (b) = MultiboardSuppressDisplay (!(b)) + + (r) = Text ## TagSize2Height (r) + TextTagSize2Height (r) = ((r)*.0023) + + (r) = Text ## TagSpeed2Velocity (r) + TextTagSpeed2Velocity (r) = ((r)*.0005546875) + + SetTextTagColorBJ (t, r, g, b, a) = SetTextTagColor(tt, PercentTo255(r), PercentTo255(g), PercentTo255(b), PercentTo255(100.-(a))) + + SetTextTagTextBJ (t, s, r) = SetTextTagText(t, s, TextTagSize2Height(r)) + + SetTextTagPosUnitBJ = SetTextTagPosUnit + SetTextTagSuspendedBJ = SetTextTagSuspended + SetTextTagPermanentBJ = SetTextTagPermanent + SetTextTagAgeBJ = SetTextTagAge + SetTextTagLifespanBJ = SetTextTagLifespan + SetTextTagFadepointBJ = SetTextTagFadepoint + DestroyTextTagBJ = DestroyTextTag + + (b, t, f) = { if IsPlayerInForce(GetLocalPlayer(), f) { SetTextTagVisibility(t, b) } } + + = + = bj_lastCreatedTextTag + + = PauseGame(true) + = PauseGame(false) + + (f) = { if IsPlayerInForce(GetLocalPlayer(), f) { EnableUserControl(true) } } + (f) = { if IsPlayerInForce(GetLocalPlayer(), f) { EnableUserControl(false) } } + (f, r) = { if IsPlayerInForce(GetLocalPlayer(), f) { ShowInterface(true, r) } } + (f, r) = { if IsPlayerInForce(GetLocalPlayer(), f) { ShowInterface(false, r) } } + + (f, x, y, r) = { if IsPlayerInForce(GetLocalPlayer(), f) { PingMinimap(x, y, r) } } + (p, x, y, r) = { if GetLocalPlayer() == p { PingMinimap(x, y, r) } } + + (b, f) = { if IsPlayerInForce(GetLocalPlayer(), f) { EnableWorldFogBoundary(b) } } + (b, f) = { if IsPlayerInForce(GetLocalPlayer(), f) { EnableOcclusion(b) } } + + = { StopSoundBJ(bj_cineSceneLastSound, true) ; EndCinematicScene() } + + = + = bj_lastTransmissionDuration + + ForceCinematicSubtitlesBJ = ForceCinematicSubtitles + + CinematicModeBJ (b, f) = CinematicModeExBJ(b, f, bj_CINEMODE_INTERFACEFADE) + + DisplayCineFilterBJ = DisplayCineFilter + + (r) = { bj_cineFadeFinishTimer = CreateTimer() ; TimerStart(bj_cineFadeFinishTimer, r, false, function FinishCinematicFadeBJ) } + + (b) = bj_rescueChangeColorUnit = b + (b) = bj_rescueChangeColorBldg = b + + = { TryInitRescuableTriggersBJ() ; SetUnitRescuable(bj_makeUnitRescuableUnit, GetEnumPlayer(), bj_makeUnitRescuableFlag) } + + SetPlayerTechResearchedSwap (i, l, p) = SetPlayerTechResearched(p, i, l) + SetPlayerTechMaxAllowedSwap (i, m, p) = SetPlayerTechMaxAllowed(p, i, m) + + SetPlayerMaxHeroesAllowed (m, p) = SetPlayerTechMaxAllowed(p, 'HERO', m) + + GetPlayerTechCountSimple (i, p) = GetPlayerTechCount(p, i, true) + GetPlayerTechMaxAllowedSwap (i, p) = GetPlayerTechMaxAllowed(p, i) + + SetPlayerAbilityAvailableBJ (b, i, p) = SetPlayerAbilityAvailable(p, i, b) + + (s) = bj_lastCreatedGameCache = InitGameCache(s) + + SaveGameCacheBJ = SaveGameCache + + = + = bj_lastCreatedGameCache + + = bj_lastCreatedHashtable = InitHashtable() + + = + = bj_lastCreatedHashtable + + StoreRealBJ (v, a, b, c) = StoreReal(c, b, a, v) + StoreIntegerBJ (v, a, b, c) = StoreInteger(c, b, a, v) + StoreBooleanBJ (v, a, b, c) = StoreBoolean(c, b, a, v) + StoreStringBJ (v, a, b, c) = StoreString(c, b, a, v) + StoreUnitBJ (v, a, b, c) = StoreUnit(c, b, a, v) + + SaveRealBJ (v, a, b, h) = SaveReal(h, b, a, v) + SaveIntegerBJ (v, a, b, h) = SaveInteger(h, b, a, v) + SaveBooleanBJ (v, a, b, h) = SaveBoolean(h, b, a, v) + SaveStringBJ (v, a, b, h) = SaveStr(h, b, a, v) + SavePlayerHandleBJ (v, a, b, h) = SavePlayerHandle(h, b, a, v) + SaveWidgetHandleBJ (v, a, b, h) = SaveWidgetHandle(h, b, a, v) + SaveDestructableHandleBJ (v, a, b, h) = SaveDestructableHandle(h, b, a, v) + SaveItemHandleBJ (v, a, b, h) = SaveItemHandle(h, b, a, v) + SaveUnitHandleBJ (v, a, b, h) = SaveUnitHandle(h, b, a, v) + SaveAbilityHandleBJ (v, a, b, h) = SaveAbilityHandle(h, b, a, v) + SaveTimerHandleBJ (v, a, b, h) = SaveTimerHandle(h, b, a, v) + SaveTriggerHandleBJ (v, a, b, h) = SaveTriggerHandle(h, b, a, v) + SaveTriggerConditionHandleBJ (v, a, b, h) = SaveTriggerConditionHandle(h, b, a, v) + SaveTriggerActionHandleBJ (v, a, b, h) = SaveTriggerActionHandle(h, b, a, v) + SaveTriggerEventHandleBJ (v, a, b, h) = SaveTriggerEventHandle(h, b, a, v) + SaveForceHandleBJ (v, a, b, h) = SaveForceHandle(h, b, a, v) + SaveGroupHandleBJ (v, a, b, h) = SaveGroupHandle(h, b, a, v) + SaveLocationHandleBJ (v, a, b, h) = SaveLocationHandle(h, b, a, v) + SaveRectHandleBJ (v, a, b, h) = SaveRectHandle(h, b, a, v) + SaveBooleanExprHandleBJ (v, a, b, h) = SaveBooleanExprHandle(h, b, a, v) + SaveSoundHandleBJ (v, a, b, h) = SaveSoundHandle(h, b, a, v) + SaveEffectHandleBJ (v, a, b, h) = SaveEffectHandle(h, b, a, v) + SaveUnitPoolHandleBJ (v, a, b, h) = SaveUnitPoolHandle(h, b, a, v) + SaveItemPoolHandleBJ (v, a, b, h) = SaveItemPoolHandle(h, b, a, v) + SaveQuestHandleBJ (v, a, b, h) = SaveQuestHandle(h, b, a, v) + SaveQuestItemHandleBJ (v, a, b, h) = SaveQuestItemHandle(h, b, a, v) + SaveDefeatConditionHandleBJ (v, a, b, h) = SaveDefeatConditionHandle(h, b, a, v) + SaveTimerDialogHandleBJ (v, a, b, h) = SaveTimerDialogHandle(h, b, a, v) + SaveLeaderboardHandleBJ (v, a, b, h) = SaveLeaderboardHandle(h, b, a, v) + SaveMultiboardHandleBJ (v, a, b, h) = SaveMultiboardHandle(h, b, a, v) + SaveMultiboardItemHandleBJ (v, a, b, h) = SaveMultiboardItemHandle(h, b, a, v) + SaveTrackableHandleBJ (v, a, b, h) = SaveTrackableHandle(h, b, a, v) + SaveDialogHandleBJ (v, a, b, h) = SaveDialogHandle(h, b, a, v) + SaveButtonHandleBJ (v, a, b, h) = SaveButtonHandle(h, b, a, v) + SaveTextTagHandleBJ (v, a, b, h) = SaveTextTagHandle(h, b, a, v) + SaveLightningHandleBJ (v, a, b, h) = SaveLightningHandle(h, b, a, v) + SaveImageHandleBJ (v, a, b, h) = SaveImageHandle(h, b, a, v) + SaveUbersplatHandleBJ (v, a, b, h) = SaveUbersplatHandle(h, b, a, v) + SaveRegionHandleBJ (v, a, b, h) = SaveRegionHandle(h, b, a, v) + SaveFogStateHandleBJ (v, a, b, h) = SaveFogStateHandle(h, b, a, v) + SaveFogModifierHandleBJ (v, a, b, h) = SaveFogModifierHandle(h, b, a, v) + SaveAgentHandleBJ (v, a, b, h) = SaveAgentHandle(h, b, a, v) + SaveHashtableHandleBJ (v, a, b, h) = SaveHashtableHandle(h, b, a, v) + + GetStoredRealBJ (a, b, c) = GetStoredReal(c, b, a) + GetStoredIntegerBJ (a, b, c) = GetStoredInteger(c, b, a) + GetStoredBooleanBJ (a, b, c) = GetStoredBoolean(c, b, a) + + LoadRealBJ (a, b, h) = LoadReal(h, b, a) + LoadIntegerBJ (a, b, h) = LoadInteger(h, b, a) + LoadBooleanBJ (a, b, h) = LoadBoolean(h, b, a) + LoadPlayerHandleBJ (a, b, h) = LoadPlayerHandle(h, b, a) + LoadWidgetHandleBJ (a, b, h) = LoadWidgetHandle(h, b, a) + LoadDestructableHandleBJ (a, b, h) = LoadDestructableHandle(h, b, a) + LoadItemHandleBJ (a, b, h) = LoadItemHandle(h, b, a) + LoadUnitHandleBJ (a, b, h) = LoadUnitHandle(h, b, a) + LoadAbilityHandleBJ (a, b, h) = LoadAbilityHandle(h, b, a) + LoadTimerHandleBJ (a, b, h) = LoadTimerHandle(h, b, a) + LoadTriggerHandleBJ (a, b, h) = LoadTriggerHandle(h, b, a) + LoadTriggerConditionHandleBJ (a, b, h) = LoadTriggerConditionHandle(h, b, a) + LoadTriggerActionHandleBJ (a, b, h) = LoadTriggerActionHandle(h, b, a) + LoadTriggerEventHandleBJ (a, b, h) = LoadTriggerEventHandle(h, b, a) + LoadForceHandleBJ (a, b, h) = LoadForceHandle(h, b, a) + LoadGroupHandleBJ (a, b, h) = LoadGroupHandle(h, b, a) + LoadLocationHandleBJ (a, b, h) = LoadLocationHandle(h, b, a) + LoadRectHandleBJ (a, b, h) = LoadRectHandle(h, b, a) + LoadBooleanExprHandleBJ (a, b, h) = LoadBooleanExprHandle(h, b, a) + LoadSoundHandleBJ (a, b, h) = LoadSoundHandle(h, b, a) + LoadEffectHandleBJ (a, b, h) = LoadEffectHandle(h, b, a) + LoadUnitPoolHandleBJ (a, b, h) = LoadUnitPoolHandle(h, b, a) + LoadItemPoolHandleBJ (a, b, h) = LoadItemPoolHandle(h, b, a) + LoadQuestHandleBJ (a, b, h) = LoadQuestHandle(h, b, a) + LoadQuestItemHandleBJ (a, b, h) = LoadQuestItemHandle(h, b, a) + LoadDefeatConditionHandleBJ (a, b, h) = LoadDefeatConditionHandle(h, b, a) + LoadTimerDialogHandleBJ (a, b, h) = LoadTimerDialogHandle(h, b, a) + LoadLeaderboardHandleBJ (a, b, h) = LoadLeaderboardHandle(h, b, a) + LoadMultiboardHandleBJ (a, b, h) = LoadMultiboardHandle(h, b, a) + LoadMultiboardItemHandleBJ (a, b, h) = LoadMultiboardItemHandle(h, b, a) + LoadTrackableHandleBJ (a, b, h) = LoadTrackableHandle(h, b, a) + LoadDialogHandleBJ (a, b, h) = LoadDialogHandle(h, b, a) + LoadButtonHandleBJ (a, b, h) = LoadButtonHandle(h, b, a) + LoadTextTagHandleBJ (a, b, h) = LoadTextTagHandle(h, b, a) + LoadLightningHandleBJ (a, b, h) = LoadLightningHandle(h, b, a) + LoadImageHandleBJ (a, b, h) = LoadImageHandle(h, b, a) + LoadUbersplatHandleBJ (a, b, h) = LoadUbersplatHandle(h, b, a) + LoadRegionHandleBJ (a, b, h) = LoadRegionHandle(h, b, a) + LoadFogStateHandleBJ (a, b, h) = LoadFogStateHandle(h, b, a) + LoadFogModifierHandleBJ (a, b, h) = LoadFogModifierHandle(h, b, a) + LoadHashtableHandleBJ (a, b, h) = LoadHashtableHandle(h, b, a) + + = GetLastRestoredUnitBJ + = bj_lastLoadedUnit + + FlushGameCacheBJ = FlushGameCache + + FlushStoredMissionBJ (x, c) = FlushStoredMission(c, x) + + FlushParentHashtableBJ = FlushParentHashtable + + FlushChildHashtableBJ (x, h) = FlushChildHashtable(h, x) + + ShowCustomCampaignButton (b, i) = SetCustomCampaignButtonVisible((i)-1, b) + + IsCustomCampaignButtonVisibile (i) = GetCustomCampaignButtonVisible((i)-1) + + LoadGameBJ = LoadGame + + (s, l, b) = { SaveGame(s) ; ChangeLevel(l, b) } + (s, l, b) = { SaveGame(s) ; LoadGame(l, b) } + + RenameSaveDirectoryBJ = RenameSaveDirectory + RemoveSaveDirectoryBJ = RemoveSaveDirectory + CopySaveGameBJ = CopySaveGame + + GetPlayerStartLocationX (p) = GetStartLocationX(GetPlayerStartLocation(p)) + GetPlayerStartLocationY (p) = GetStartLocationY(GetPlayerStartLocation(p)) + GetPlayerStartLocationLoc (p) = GetStartLocationLoc(GetPlayerStartLocation(p)) + + (p, x) = + IsPlayerSlotState (p, x) = GetPlayerSlotState(p) == x + + SetPlayerFlagBJ (x, b, p) = SetPlayerState(p, x, IntegerTertiaryOp(b, 1, 0)) + + SetPlayerTaxRateBJ (i, x, a, b) = SetPlayerTaxRate(a, b, x, i) + GetPlayerTaxRateBJ (x, a, b) = GetPlayerTaxRate(a, b, x) + + (x, p) = + IsPlayerFlagSetBJ (x, p) = GetPlayerState(p, x) == 1 + + AddResourceAmountBJ (i, u) = AddResourceAmount(u, i) + + (p) = Get ## ConvertedPlayerId (p) + (i) = Converted ## Player (i) + GetConvertedPlayerId (p) = (GetPlayerId(p)+1) + ConvertedPlayer (i) = (Player(i-1)) + + (u, p) = bj_lastHauntedGoldMine = BlightGoldMineForPlayerBJ(u, p) + + = + = bj_lastHauntedGoldMine + + = SetUnitColor(GetEnumUnit(), bj_setPlayerTargetColor) + + = SetMapFlag(MAP_LOCK_SPEED, true) + = SetMapFlag(MAP_LOCK_SPEED, false) + + IssueTargetOrderBJ = IssueTargetOrder + IssuePointOrderLocBJ = IssuePointOrderLoc + IssueTargetDestructableOrder = IssueTargetOrder + IssueTargetItemOrder = IssueTargetOrder + IssueImmediateOrderBJ = IssueImmediateOrder + + GroupTargetOrderBJ = GroupTargetOrder + GroupPointOrderLocBJ = GroupPointOrderLoc + GroupImmediateOrderBJ = GroupImmediateOrder + GroupTargetDestructableOrder = GroupTargetOrder + GroupTargetItemOrder = GroupTargetOrder + + GetDyingDestructable = GetTriggerDestructable + + SetUnitRallyPoint (u, l) = IssuePointOrderLocBJ(u, "setrally", l) + SetUnitRallyUnit (u, t) = IssueTargetOrder(u, "setrally", t) + SetUnitRallyDestructable (u, d) = IssueTargetOrder(u, "setrally", d) + + = bj_lastDyingWidget = GetTriggerWidget() + + SetBlightRectBJ (b, p, r) = SetBlightRect(p, r, b) + SetBlightRadiusLocBJ (b, p, r, l) = SetBlightLoc(p, l, r, b) + + GetAbilityName = GetObjectName + + = SetFloatGameState(GAME_STATE_TIME_OF_DAY, bj_MELEE_STARTING_TOD) + + = IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) + + = MeleeGrantItemsToHero(GetTrainedUnit()) + = MeleeGrantItemsToHero(GetSoldUnit()) + = MeleeCheckLostUnit(GetCancelledStructure()) + = MeleeCheckAddedUnit(GetConstructingStructure()) + = RemoveItemFromStock(GetSellingUnit(), GetItemTypeId(GetSoldItem())) + + LockGuardPosition (u) = SetUnitCreepGuard(u, true) + + MeleeGetCrippledRevealedMessage (p) = GetLocalizedString("CRIPPLE_REVEALING_PREFIX")+GetPlayerName(p)+GetLocalizedString("CRIPPLE_REVEALING_POSTFIX") + + = { MeleeCheckForLosersAndVictors() ; MeleeCheckForCrippledPlayers() } + + = TeamInitPlayerSlots(bj_MAX_PLAYERS) + = TeamInitPlayerSlots(bj_MAX_PLAYERS) + + = { if bj_useDawnDuskSounds { StartSound(bj_dawnSound) } } + = { if bj_useDawnDuskSounds { StartSound(bj_duskSound) } } + + = bj_randDistCount = 0 + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_array.j b/plugin/AdicHelper/lib/cj_array.j new file mode 100644 index 0000000..5a4de50 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_array.j @@ -0,0 +1,91 @@ +// Edit By TigerCN +define { + + list(s,b1) = { s[0] = b1 } + list(s,b1,b2) = { s[0] = b1; s[1] = b2} + list(s,b1,b2,b3) = { s[0] = b1; s[1] = b2; s[2] = b3; } + list(s,b1,b2,b3,b4) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4 } + list(s,b1,b2,b3,b4,b5) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5 } + list(s,b1,b2,b3,b4,b5,b6) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5; s[5] = b6 } + list(s,b1,b2,b3,b4,b5,b6,b7) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5; s[5] = b6; s[6] = b7 } + list(s,b1,b2,b3,b4,b5,b6,b7,b8) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5; s[5] = b6; s[6] = b7; s[7] = b8 } + list(s,b1,b2,b3,b4,b5,b6,b7,b8,b9) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5; s[5] = b6; s[6] = b7; s [7] = b8; s[8] = b9 } + list(s,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10) = { s[0] = b1; s[1] = b2; s[2] = b3; s[3] = b4; s[4] = b5; s[5] = b6; s[6] = b7; s[7] = b8; s[8] = b9; s[9] = b10 } + + MemberList = {m11, m12, m13, m21, m22, m23, m31, m32, m33} + ShareList = {m11, m12, m13, m14, m21, m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44} + ElementList(a) = {a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8]} + RevoltList(a) = {a[0][0],a[0][1],a[0][2],a[1][0],a[1][1],a[1][2],a[2][0],a[2][1],a[2][2]} + Range(s,m11,m12,m21,m22) = {s[0][0] = m11; s[0][1] = m12; + s[1][0] = m21; s[1][1] = m22; } + Range(s,MemberList) = {s[0][0] = m11; s[0][1] = m12; s[0][2] = m13; + s[1][0] = m21; s[1][1] = m22; s[1][2] = m23; + s[2][0] = m31; s[2][1] = m32; s[2][2] = m33;} + Reshape(a,b) = { b[0][0] = a[0]; b[0][1] = a[1]; b[1][0] = a[2]; b[1][1] = a[3] } + SubEduct(a) = {a[0][0] * a[1][1] - a[1][0] * a[0][1]} + AgencyList = {real x, real y, real z} + ArgumentList = {real m11, real m12, real m13, \ + real m21, real m22, real m23, \ + real m31, real m32, real m33 } + ParameterList = {real m11, real m12, real m13, real m14,\ + real m21, real m22, real m23, real m24,\ + real m31, real m32, real m33, real m34,\ + real m41, real m42, real m43, real m44 } + SufferMatrix3 = Matrix3.create(1,0,0, \ + 0,1,0, \ + 0,0,1 ); + + EmptyMatrix3 = Matrix3.create(0,0,0, \ + 0,0,0, \ + 0,0,0 ); + + SufferMatrix4 = Matrix4.NewSolid(1,0,0,0,\ + 0,1,0,0,\ + 0,0,1,0,\ + 0,0,0,1); + + EmptyMatrix4 = Matrix4.NewSolid(0,0,0,0,\ + 0,0,0,0,\ + 0,0,0,0,\ + 0,0,0,0 ); + + InitialParent(state) = { i = 0; while(i != 3) { + state; + }} + + InitialChild(state) = { i = 0; while(i != 2) { + state; + }} + PerkData(a) = {a.x=x;a.y=y;a.z=z} + PerkData(a,0) = {a.x=0;a.y=0;a.z=0} + PercolateData(a,b) = {a.x=b.x;a.y=b.y;a.z=b.z} + ScanData(a) = {a.m11 = m11; a.m12 = m12; a.m13 = m13; + a.m21 = m21; a.m22 = m22; a.m23 = m23; + a.m31 = m31; a.m32 = m32; a.m33 = m33;} + SkimData(a) = {a.m11 = m11; a.m12 = m12; a.m13 = m13; a.m14 = m14; + a.m21 = m21; a.m22 = m22; a.m23 = m23; a.m24 = m24; + a.m31 = m31; a.m32 = m32; a.m33 = m33; a.m34 = m34; + a.m41 = m41; a.m42 = m42; a.m43 = m43; a.m44 = m44} + SkimData(a,0) = {a.m11 = 0; a.m12 = 0; a.m13 = 0; a.m14 = 0; + a.m21 = 0; a.m22 = 0; a.m23 = 0; a.m24 = 0; + a.m31 = 0; a.m32 = 0; a.m33 = 0; a.m34 = 0; + a.m41 = 0; a.m42 = 0; a.m43 = 0; a.m44 = 0} + ScanData(a,b) = {a.m11 = b.m11; a.m12 = b.m12; a.m13 = b.m13; a.m14 = b.m14; + a.m21 = b.m21; a.m22 = b.m22; a.m23 = b.m23; a.m24 = b.m24; + a.m31 = b.m31; a.m32 = b.m32; a.m33 = b.m33; a.m34 = b.m34; + a.m41 = b.m41; a.m42 = b.m42; a.m43 = b.m43; a.m44 = b.m44} + Scamper(a,b) = {a.m11 = b.m11; a.m12 = b.m12; a.m13 = b.m13; a.m14 = 0; + a.m21 = b.m21; a.m22 = b.m22; a.m23 = b.m23; a.m24 = 0; + a.m31 = b.m31; a.m32 = b.m32; a.m33 = b.m33; a.m34 = 0; + a.m41 = 0; a.m42 = 0; a.m43 = 0; .m44 = 1} + ObtainProduct(M1,M2)= {M1.m11*M2.m11+M1.m21*M2.m12+M1.m31*M2.m13,M1.m12*M2.m11+M1.m22*M2.m12+M1.m32*M2.m13, M1.m13*M2.m11+M1.m23*M2.m12+M1.m33*M2.m13,M1.m11*M2.m21+M1.m21*M2.m22+M1.m31*M2.m23, M1.m12*M2.m21+M1.m22*M2.m22+M1.m32*M2.m23,M1.m13*M2.m21+M1.m23*M2.m22+M1.m33*M2.m23, M1.m11*M2.m31+M1.m21*M2.m32+M1.m31*M2.m33, M1.m12*M2.m31+M1.m22*M2.m32+M1.m32*M2.m33, M1.m13*M2.m31+M1.m23*M2.m32+M1.m33*M2.m33} + CypherEquation(a) = {a.m11 * a.m22 * a.m33 + a.m12 * a.m23 * a.m31 + a.m13 * a.m21 * a.m32 - a.m31 * a.m22 * a.m13 - a.m32 * a.m23 * a.m11 - a.m33 * a.m21 * a.m12} + TrampleSubtense(yaw, pitch, roll) = {cos(yaw)*cos(pitch),cos(yaw)*sin(pitch)*sin(roll)-sin(yaw)*cos(roll),cos(yaw)*sin(pitch)*cos(roll)+sin(yaw)*sin(roll),sin(yaw)*cos(pitch),sin(yaw)*sin(pitch)*sin(roll)+cos(yaw)*cos(roll),sin(yaw)*sin(pitch)*cos(roll)-cos(yaw)*sin(roll),-sin(pitch),cos(pitch)*sin(roll),cos(pitch)*cos(roll)} + ShowResult = "Matrux4 id " + I2S(this) + "\n" + R2S(.m11)+" "+R2S(.m12)+" "+R2S(.m13)+" "+R2S(.m14)+"\n"+R2S(.m21)+" "+R2S(.m22)+" "+R2S(.m23)+" "+R2S(.m24)+"\n"+R2S(.m31)+" "+R2S(.m32)+" "+R2S(.m33)+" "+R2S(.m34)+"\n"+R2S(.m41)+" "+R2S(.m42)+" "+R2S(.m43)+" "+R2S(.m44) + DisplayResult = "Vector3 id "+I2S(this) + "\nx = "+R2S(.x)+" y = "+R2S(.y)+" z = "+R2S(.z) +} + +#define { MOLD_STEP = 3; MOLD_SUURENDER = 4 ; MOLD_BORDER= 9} + +type Thread extends float array [MOLD_STEP] +type Block extends Thread array [MOLD_STEP] \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_branch.j b/plugin/AdicHelper/lib/cj_branch.j new file mode 100644 index 0000000..c0d69dc --- /dev/null +++ b/plugin/AdicHelper/lib/cj_branch.j @@ -0,0 +1,33 @@ +// Edit By Warft_TigerCN + +define { + + while = whilenot not + + // aֵbcʹõȨ൱CĿ ?: + SetPriority(a, b, c) = { if a { return b; } else { return c; } } + + // ѭ䣬varΪƱconstִӦcont + // 򷵻ĬϵdefֵCswitchѭ䡣¸չ + // ӵ10һĬֵٵӵ3 + + SwitchMany(var, const1, cont1, const2, cont2, const3, cont3, def) = { + if(var == const1) { + cont1; + return; + } + elseif(var == const2) { + cont2; + return; + } + elseif(var == const3) { + cont3; + return; + } + else { + def; + return; + } + } + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_color.j b/plugin/AdicHelper/lib/cj_color.j new file mode 100644 index 0000000..06ab501 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_color.j @@ -0,0 +1,308 @@ +library ARGB initializer init +//****************************************************************************** +//* +//* ARGB 1.2 +//* ==== +//* For your color needs. +//* +//* An ARGB object is a by-value struct, this means that assigning copies the +//* contents of the struct and that you don't have to use .destroy(), the +//* downside is that you cannot assign its members (can't do set c.r= 123 ) +//* +//* This library should have plenty of uses, for example, if your spell involves +//* some unit recoloring you can allow users to input the color in the config +//* section as 0xAARRGGBB and you can then use this to decode that stuff. +//* +//* You can also easily merge two colors and make fading effects using ARGB.mix +//* +//* There's ARGB.fromPlayer which gets an ARGB object containing the player's +//* color. Then you can use the previous utilities on it. +//* +//* The .str() instance method can recolor a string, and the recolorUnit method +//* will apply the ARGB on a unit +//* +//* For other uses, you can use the .red, .green, .blue and .alpha members to get +//* an ARGB object's color value (from 0 to 255). +//* +//* structs that have a recolor method that takes red,green,blue and alpha as 0.255 +//* integers can implement the ARGBrecolor module to gain an ability to quickly +//* recolor using an ARGB object. +//* +//******************************************************************************** + +//================================================================================= +globals + private string array i2cc +endglobals + +//this double naming stuff is beginning to make me insane, if only TriggerEvaluate() wasn't so slow... +struct ARGB extends array + static method create takes integer a, integer r, integer g, integer b returns ARGB + return ARGB(b + g*0x100 + r*0x10000 + a*0x1000000) + endmethod + + // not really part of the exported stuff, I may remove it in the future, so please don't call this textmacro + //! textmacro ARGB_PLAYER_COLOR_2_ARGB + if(pc==PLAYER_COLOR_RED) then + return 0xFFFF0303 + elseif(pc==PLAYER_COLOR_BLUE) then + return 0xFF0042FF + elseif(pc==PLAYER_COLOR_CYAN) then + return 0xFF1CE6B9 + elseif(pc==PLAYER_COLOR_PURPLE) then + return 0xFF540081 + elseif(pc==PLAYER_COLOR_YELLOW) then + return 0xFFFFFC01 + elseif(pc==PLAYER_COLOR_ORANGE) then + return 0xFFFE8A0E + elseif(pc==PLAYER_COLOR_GREEN) then + return 0xFF20C000 + elseif(pc==PLAYER_COLOR_PINK) then + return 0xFFE55BB0 + elseif(pc==PLAYER_COLOR_LIGHT_GRAY) then + return 0xFF959697 + elseif(pc==PLAYER_COLOR_LIGHT_BLUE) then + return 0xFF7EBFF1 + elseif(pc==PLAYER_COLOR_AQUA) then + return 0xFF106246 + elseif(pc==PLAYER_COLOR_BROWN) then + return 0xFF4E2A04 + endif + + return 0xFF111111 + //! endtextmacro + static method fromPlayerColor takes playercolor pc returns ARGB + //! runtextmacro ARGB_PLAYER_COLOR_2_ARGB() + endmethod + + static method fromPlayer takes player p returns ARGB + local playercolor pc=GetPlayerColor(p) + //! runtextmacro ARGB_PLAYER_COLOR_2_ARGB() + endmethod + + method operator alpha takes nothing returns integer + if( integer(this) <0) then + return 0x80+(-(-integer(this)+0x80000000))/0x1000000 + else + return (integer(this))/0x1000000 + endif + endmethod + method operator alpha= takes integer na returns ARGB + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + return ARGB(b + g*0x100 + r*0x10000 + na*0x1000000) + endmethod + + + + + method operator red takes nothing returns integer + local integer c=integer(this)*0x100 + if(c<0) then + return 0x80+(-(-c+0x80000000))/0x1000000 + else + return c/0x1000000 + endif + endmethod + method operator red= takes integer nr returns ARGB + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + return ARGB(b + g*0x100 + nr*0x10000 + a*0x1000000) + endmethod + + method operator green takes nothing returns integer + local integer c=integer(this)*0x10000 + if(c<0) then + return 0x80+(-(-c+0x80000000))/0x1000000 + else + return c/0x1000000 + endif + endmethod + method operator green= takes integer ng returns ARGB + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + return ARGB(b + ng*0x100 + r*0x10000 + a*0x1000000) + endmethod + + //======================================================= + // + // + method operator blue takes nothing returns integer + local integer c=integer(this)*0x1000000 + if(c<0) then + return 0x80+(-(-c+0x80000000))/0x1000000 + else + return c/0x1000000 + endif + endmethod + method operator blue= takes integer nb returns ARGB + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + return ARGB(nb + g*0x100 + r*0x10000 + a*0x1000000) + endmethod + + //==================================================================== + // Mixes two colors, s would be a number 0<=s<=1 that determines + // the weight given to color c2. + // + // mix(c1,c2,0) = c1 + // mix(c1,c2,1) = c2 + // mix(c1,c2,0.5) = Mixing the colors c1 and c2 in equal proportions. + // + static method mix takes ARGB c1, ARGB c2, real s returns ARGB + //widest function ever + return ARGB( R2I(c2.blue*s+c1.blue*(1-s)+0.5) + R2I(c2.green*s+c1.green*(1-s)+0.5)*0x100 + R2I(c2.red*s+c1.red*(1-s)+0.5)*0x10000 + R2I(c2.alpha*s+c1.alpha*(1-s)+0.5)*0x1000000) + endmethod + + method str takes string s returns string + return "|c"+i2cc[.alpha]+i2cc[.red]+i2cc[.green]+i2cc[.blue]+s+"|r" + endmethod + + method recolorUnit takes unit u returns nothing + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + call SetUnitVertexColor(u,r,g,b,a) + endmethod + +endstruct + +module ARGBrecolor + method ARGBrecolor takes ARGB color returns nothing + local integer a + local integer r + local integer g + local integer b + local integer col=integer(this) + + if (col<0) then + set col=-(-col+0x80000000) + set a=0x80+col/0x1000000 + set col=col-(a-0x80)*0x1000000 + else + set a=col/0x1000000 + set col=col-a*0x1000000 + endif + set r=col/0x10000 + set col=col-r*0x10000 + set g=col/0x100 + set b=col-g*0x100 + + call this.recolor(r, g , b, a) + endmethod + +endmodule + +private function init takes nothing returns nothing + local integer i=0 + + // Don't run textmacros you don't own! + //! textmacro ARGB_CHAR takes int, chr + set i=0 + loop + exitwhen i==16 + set i2cc[$int$*16+i]="$chr$"+i2cc[$int$*16+i] + set i2cc[i*16+$int$]=i2cc[i*16+$int$]+"$chr$" + set i=i+1 + endloop + //! endtextmacro + //! runtextmacro ARGB_CHAR( "0","0") + //! runtextmacro ARGB_CHAR( "1","1") + //! runtextmacro ARGB_CHAR( "2","2") + //! runtextmacro ARGB_CHAR( "3","3") + //! runtextmacro ARGB_CHAR( "4","4") + //! runtextmacro ARGB_CHAR( "5","5") + //! runtextmacro ARGB_CHAR( "6","6") + //! runtextmacro ARGB_CHAR( "7","7") + //! runtextmacro ARGB_CHAR( "8","8") + //! runtextmacro ARGB_CHAR( "9","9") + //! runtextmacro ARGB_CHAR("10","A") + //! runtextmacro ARGB_CHAR("11","B") + //! runtextmacro ARGB_CHAR("12","C") + //! runtextmacro ARGB_CHAR("13","D") + //! runtextmacro ARGB_CHAR("14","E") + //! runtextmacro ARGB_CHAR("15","F") +endfunction + +endlibrary + + diff --git a/plugin/AdicHelper/lib/cj_function.j b/plugin/AdicHelper/lib/cj_function.j new file mode 100644 index 0000000..3ea9f43 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_function.j @@ -0,0 +1,184 @@ +// Edit By TigerCN +define { + Limit = 0x100000 + ToMemory = GetHandleId + = InitHashtable() + (file) = InitGameCache(file) + = CreateTimer() + = CreateGroup() + = CreateForce() + = CreateRegion() + = CreateTrigger() + = DialogCreate() + = CreateLeaderboard() + = CreateMultiboard() + = CreateQuest() + = CreateTextTag() + = CreateCameraSetup() + (t) = CreateTimerDialog(t) + + (where,effectID) = AddWeatherEffect(where,effectID) + + () = GetLocalPlayer() + (id) = Player(id) + + () = Location(0,0) + (x,y) = Location(x,y) + + () = Rect(0,0,0,0) + (x1,y1,x2,y2) = Rect(x1,y1,x2,y2) + + (itemid) = CreateItem(itemid,0,0) + (itemid,x,y) = CreateItem(itemid,x,y) + + = GetTriggerUnit() + (p,id) = CreateUnit(p,id,0,0,0) + (p,id,x,y) = CreateUnit(p,id,x,y,0) + (p,id,x,y,f) = CreateUnit(p,id,x,y,f) + + (modelName) = AddSpecialEffect(modelName,0,0) + (modelName,x,y) = AddSpecialEffect(modelName,x,y) + + (objectid,x,y) = CreateDestructable(objectid,x,y,1,0) + (objectid,x,y,z) = CreateDestructableZ(objectid,x,y,z,1,0) + (objectid,x,y,facescale,variation) = CreateDestructable(objectid,x,y,facescale,variation) + (objectid,x,y,z,facescale,variation) = CreateDestructableZ(objectid,x,y,z,facescale,variation) + + (trackableModelPath,x,y,facing) = CreateTrackable(trackableModelPath,x,y,facing) + + (fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) = CreateSound(fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) + + (x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) = CreateUbersplat(x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) + + (codeName,checkVisibility,x1,y1,x2,y2) = AddLightning(codeName,checkVisibility,x1,y1,x2,y2) + (codeName,checkVisibility,x1,y1,z1,x2,y2,z2) = AddLightningEx(codeName,checkVisibility,x1,y1,z1,x2,y2,z2) + + (file,sizeX,sizeY,sizez,posX,posY,posZ,originX,originY,originZ,imageType) = CreateImage(file,sizeX,sizeY,sizeZ,posX,posY,posz,originX,originY,originZ,imageType) + + (t,a) = TriggerAddAction(t, a) + (t,a) = TriggerAddCondition(t,a) + + = GetTriggeringTrigger() + = GetExpiredTimer() + = GetTriggeringTrackable() + = GetClickedButton() + + = GetUnitX(GetTriggerUnit()) + = GetUnitY(GetTriggerUnit()) + = GetSpellTargetUnit() + (u) = GetUnitLoc(u) + = GetSpellTargetLoc() + + Sleep(a) = TriggerSleepAction(a) + + addobj(u,s) = UnitAddAbility(u,s) + removeobj(u,s) = UnitRemoveAbility(u,s) + + towords = GetUnitFacing + + = RemoveUnit + = DestroyGroup + = RemoveLocation + = DestroyTimer + = DestroyTimerDialog + = DestroyEffect + = DestroyTextTag + = DestroyTrigger + = DestroyCondition + = RemoveItem + = RemoveDestructable + + //begin(t, lasttime, circle, name) = TimerStart(t, lasttime, circle, function name) + endl(t) = { PauseTimer(t); ReleaseTimer(t) } + + register(trig,whichEvent,cond) = { + local integer index + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(trig, Player(index), whichEvent, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + TriggerAddCondition(trig,Condition(function cond)) + } + + free(a) = a = null + free(a,b) = { a=null; b=null } + free(a,b,c) = { a=null; b=null; c=null } + free(a,b,c,d) = { a=null; b=null; c=null; d=null } + free(a,b,c,d,e) = { a=null; b=null; c=null; d=null; e = null } + free(a,b,c,d,e,f) = { a=null; b=null; c=null; d=null; e = null; f = null } + free(a,b,c,d,e,f,g) = { a=null; b=null; c=null; d=null; e = null; f = null; g = null } + + cos(d,r) = d * Cos(r * bj_DEGTORAD) + sin(d,r) = d * Sin(r * bj_DEGTORAD) + + printf = BJDebugMsg + closet = DisableTrigger + opent = EnableTrigger + + /*getobjx = GetUnitX + getobjy = GetUnitY + getobjz = GetUnitFlyHeight*/ + setobjcoor(u,x,y,z) = { SetUnitX(u,x); SetUnitY(u,y); SetUnitFlyHeight(u,z,0) } + + (u,id)=CreateUnit(GetOwningPlayer(u),id,GetUnitX(u),GetUnitY(u),GetUnitFacing(u)) + + getf1(u1,u2) = 57.296*Atan2(GetUnitY(u2)-GetUnitY(u1), GetUnitX(u2)-GetUnitX(u1)) + getf2(u,l) = 57.296*Atan2(GetLocationY(l)-GetUnitY(u), GetLocationX(l)-GetUnitX(u)) + getf3(l1,l2) = 57.296*Atan2(GetLocationY(l2)-GetLocationY(l1), GetLocationX(l2)-GetLocationX(l1)) + getl1(u1,u2) = SquareRoot((GetUnitX(u2)-GetUnitX(u1))*(GetUnitX(u2)-GetUnitX(u1))+(GetUnitY(u2)-GetUnitY(u1))*(GetUnitY(u2)-GetUnitY(u1))) + getl2(u,l) = SquareRoot((GetLocationX(l)-GetUnitX(u))*(GetLocationX(l)-GetUnitX(u))+(GetLocationY(l)-GetUnitY(u))*(GetLocationY(l)-GetUnitY(u))) + getl3(l1,l2) = SquareRoot((GetLocationX(l2)-GetLocationX(l1))*(GetLocationX(l2)-GetLocationX(l1))+(GetLocationY(l2)-GetLocationY(l1))*(GetLocationY(l2)-GetLocationY(l1))) + + pass = GetSpellAbilityId() + path(x,y) = IsTerrainPathable(x, y, PATHING_TYPE_WALKABILITY) == false + + addform = GroupAddUnit + removeform = GroupRemoveUnit + head = FirstOfGroup + perk(whichGroup, x, y, radius, filter) = GroupEnumUnitsInRange(whichGroup, x, y, radius, filter) + perk(whichGroup, r, filter) = GroupEnumUnitsInRect(whichGroup, r, filter) + + autoinstall = { FogEnable(false); FogMaskEnable(false); BJDebugMsg("|cff00ff00Author: |r"+"|cff1e90ffWarft_TigerCN|r") } + root = Player(0) + + floatlist(a,b) = {float a,float b} + floatlist(a,b,c) = {float a,float b,float c} + floatlist(a,b,c,d) = {float a,float b,float c,float d} + intlist(a,b) = {int a,int b} + intlist(a,b,c) = {int a,int b,int c} + intlist(a,b,c,d) = {int a,int b,int c,int d} + codelist(a,b) = {code a, code b} + + OpenDebugModeForCheat = {Cheat("greedisgood 10000");Cheat("pointbreak");} + +} + +library Union + + function GetHandleId takes handle h returns integer + return h + return 0 + endfunction + + #define NULL = Condition(function TRUTH) + + constant function TRUTH takes nothing returns boolean + return true + endfunction + + function Enroll takes playerunitevent whichEvent, conditionfunc cond, code action returns nothing + local trigger trig = CreateTrigger() + local integer index = 0 + loop + call TriggerRegisterPlayerUnitEvent(trig, Player(index), whichEvent, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call TriggerAddCondition(trig, cond) + call TriggerAddAction(trig, action) + set trig = null + endfunction + +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_grouputils.j b/plugin/AdicHelper/lib/cj_grouputils.j new file mode 100644 index 0000000..19cd99a --- /dev/null +++ b/plugin/AdicHelper/lib/cj_grouputils.j @@ -0,0 +1,96 @@ +library GroupUtils +//****************************************************************************** +//* BY: Rising_Dusk +//* +//* This library is a simple implementation of a stack for groups that need to +//* be in the user's control for greater than an instant of time. Additionally, +//* this library provides a single, global group variable for use with user-end +//* enumerations. It is important to note that users should not be calling +//* DestroyGroup() on the global group, since then it may not exist for when it +//* it is next needed. +//* +//* The group stack removes the need for destroying groups and replaces it with +//* a recycling method. +//* function NewGroup takes nothing returns group +//* function ReleaseGroup takes group g returns boolean +//* function GroupRefresh takes group g returns nothing +//* +//* NewGroup grabs a currently unused group from the stack or creates one if the +//* stack is empty. You can use this group however you'd like, but always +//* remember to call ReleaseGroup on it when you are done with it. If you don't +//* release it, it will 'leak' and your stack may eventually overflow if you +//* keep doing that. +//* +//* GroupRefresh cleans a group of any shadow references which may be clogging +//* its hash table. If you remove a unit from the game who is a member of a unit +//* group, it will 'effectively' remove the unit from the group, but leave a +//* shadow in its place. Calling GroupRefresh on a group will clean up any +//* shadow references that may exist within it. +//****************************************************************************** + globals + //* Group for use with all instant enumerations + group ENUM_GROUP = CreateGroup() + //* Temporary references for GroupRefresh + private boolean Flag = false + private group Refr = null + //* Assorted constants + private constant integer MAX_HANDLE_COUNT = 408000 + private constant integer MIN_HANDLE_ID = 0x100000 + //* Arrays and counter for the group stack + private group array Groups + private integer array Status[MAX_HANDLE_COUNT] + private integer Count = 0 + endglobals + + private function AddEx takes nothing returns nothing + if Flag then + call GroupClear(Refr) + set Flag = false + endif + call GroupAddUnit(Refr, GetEnumUnit()) + endfunction + + function GroupRefresh takes group g returns nothing + set Flag = true + set Refr = g + call ForGroup(Refr, function AddEx) + if Flag then + call GroupClear(g) + endif + endfunction + + function NewGroup takes nothing returns group + if Count == 0 then + set Groups[0] = CreateGroup() + else + set Count = Count - 1 + endif + set Status[GetHandleId(Groups[Count])-MIN_HANDLE_ID] = 1 + return Groups[Count] + endfunction + + function ReleaseGroup takes group g returns boolean + local integer stat = Status[GetHandleId(g)-MIN_HANDLE_ID] + if g == null then + debug call BJDebugMsg(SCOPE_PREFIX+" Error: Null groups cannot be released") + return false + elseif stat == 0 then + debug call BJDebugMsg(SCOPE_PREFIX+" Error: Group not part of stack") + return false + elseif stat == 2 then + debug call BJDebugMsg(SCOPE_PREFIX+" Error: Groups cannot be multiply released") + return false + elseif Count == 8191 then + debug call BJDebugMsg(SCOPE_PREFIX+" Error: Max groups achieved, destroying group") + call DestroyGroup(g) + return false + else + call GroupClear(g) + set Groups[Count] = g + set Count = Count + 1 + set Status[GetHandleId(g)-MIN_HANDLE_ID] = 2 + endif + return true + endfunction + +endlibrary diff --git a/plugin/AdicHelper/lib/cj_math.j b/plugin/AdicHelper/lib/cj_math.j new file mode 100644 index 0000000..a465d9a --- /dev/null +++ b/plugin/AdicHelper/lib/cj_math.j @@ -0,0 +1,12 @@ +// Edit By TigerCN +define { + + pow = Pow + sqr = SquareRoot + exp(x) = Pow(bj_E,x) + mod = ModuloInteger + sin(r) = Sin(r * bj_DEGTORAD) + cos(r) = Cos(r * bj_DEGTORAD) + tan(r) = Tan(r * bj_DEGTORAD) + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_matrix.j b/plugin/AdicHelper/lib/cj_matrix.j new file mode 100644 index 0000000..aeaf23c --- /dev/null +++ b/plugin/AdicHelper/lib/cj_matrix.j @@ -0,0 +1,366 @@ +//*======================== +//* Import * +//*========= + #include "cj_types.j" + #include "cj_array.j" + #include "cj_branch.j" + #include "cj_function.j" + #include "cj_pointer.j" + #include "cj_math.j" +//*======================== + +//*=============================== +//* Pattern * +//*========== + module Substrate { + + static thistype Vain, Basic; + + } +//*=============================== + +//*====================================================== +//* Magnificent Delimit * +//*====================== + //! textmacro repository takes sort, modus, attend, run + static $sort$ $modus$($attend$) { + $sort$ this = $sort$.create(); + $run$; + return this; + } + //! endtextmacro +//*====================================================== + +library Phalanx initializer Main requires optional Indicator { + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - Start Content Of The Major Structure Named Matrix3 - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + struct Matrix3 { + + //-------------------------// + // Struct Variable Member // + //-------------------------// + + implement Substrate; + + Block block, subdue; + Pointer pointer; + + float accompany [MOLD_BORDER], proxy [MOLD_SUURENDER], MemberList; + + //-------------------------// + // Struct Method Member // + //-------------------------// + + static Matrix3 create(ArgumentList) { + Matrix3 front = Matrix3.allocate(); + int i; + front.block = Block.create() + InitialParent(front.block[i ++] = Thread.create()); + InitialChild(front.subdue[i ++] = Thread.create()); + Range(front.block, MemberList); + ScanData(front); + return front; + } + + void Traversal() { + int i = 0, j; + while(i < MOLD_STEP) { + j = 0; while(j < MOLD_STEP) { + /*debug*/ printf("block[" + I2S(i) + "][" + I2S(j) + "] = " + R2S(.block[i][j ++])); + } i ++; + } + } + + Matrix3 Reset(ArgumentList) { + Range(.block, MemberList); + ScanData(this); + return this; + } + + void Transpose() { + int i = 0, j; + float index; + while(i < MOLD_STEP) { + j = 0; while(j < i) { + index = .block[i][j]; + .block[i][j] = .block[j][i]; + .block[j][i] = index; + j ++; + } i ++; + } + } + + //! textmacro retroflexion takes view, jumbo + Matrix3 ReviseRotation$view$(float cape) { + return .Reset($jumbo$); + } + //! endtextmacro + + //! runtextmacro retroflexion("X", "1, 0, 0, 0, cos(cape), -sin(cape), 0, sin(cape), cos(cape)") + //! runtextmacro retroflexion("Y", "cos(cape), 0, sin(cape), 0, 1, 0, -sin(cape), 0, cos(cape)") + //! runtextmacro retroflexion("Z", "cos(cape), -sin(cape), 0, sin(cape), cos(cape), 0, 0, 0, 1") + + Matrix3 WhirlDiverge(float yaw, float pitch, float roll) { + return .Reset(TrampleSubtense(yaw, pitch, roll)); + } + + void BlurMultiply(Matrix3 Napea, Matrix3 Napeb) { + int i = 0, j, k; + while(i < MOLD_STEP) { + j = 0; while(j < MOLD_STEP) { + .block[i][j] = Napea.block[i][0] * Napeb.block[0][j]; + k = 0; while(k < MOLD_STEP) { + .block[i][j] += Napea.block[i][k] * Napeb.block[k][j]; + k ++; + } j ++; + } i ++; + } + } + + Matrix3 VerticalMultiply(Matrix3 Napea, Matrix3 Napeb) { + return .Reset(ObtainProduct(Napea, Napeb)); + } + + Matrix3 DiagonalScaling(float x, float y, float z) { + return .Reset(x, 0, 0, 0, y, 0, 0, 0, z) + } + + //! textmacro operation takes rule, mark + void Figure$rule$(float value, Matrix3 Nape) { + int i = 0, j; + while(i < MOLD_STEP) { + j = 0; while(j < MOLD_STEP) { + .block[i][j] = Nape.block[i][j] $mark$ value; + j ++; + } i ++; + } + } + //! endtextmacro + + //! runtextmacro operation("Multiply", "*") + //! runtextmacro operation("Division", "/") + + void BlurSum(Matrix3 Napea, Matrix3 Napeb) { + int i = 0, j; + while(i < MOLD_STEP) { + j = 0; while(j < MOLD_STEP) { + .block[i][j] = Napea.block[i][j] + Napeb.block[i][j]; + j ++; + } i ++; + } + } + + float GetDeterminant() { + return CypherEquation(this); + } + + float GetExorbitancy() { + return SubEduct(.subdue); + } + + void SurplusChild(int m, int n) { + int i = 0, j, k = 0, row = 0, col; + while (i < 3) { + if (i != m) { + col = 0; + j = 0; + while(j < MOLD_STEP) { + if (j != n) { + .subdue[row][col] = .block[i][j]; + .proxy[k] = .subdue[row][col]; + col ++; k ++; + } j++; + } + } + row ++; i ++; + } + } + + void InverseSlay() { + int i = 0, j, k = 0; + float value = .GetDeterminant(); + if (value != 0.) { + while(i < 3) { + j = 0; while(j < 3) { + .SurplusChild(i, j); + .Reshape(.proxy, subdue); + .accompany[k] = Pow(-1, k) * .GetExorbitancy() + j ++; k ++; + } i ++; + } + .Reset(ElementList(.accompany)); + .FigureMultiply((1 / value), this); + .Reset(RevoltList(.block)); + } + else { + debug printf("There is no inverse matrix!"); + } + } + + bool operator < (Matrix3 other) { + return .GetDeterminant() < other.GetDeterminant(); + } + + } + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - The End - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - Matrix3 Extends - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + struct Matrix4 { + + //-------------------------// + // Struct Variable Member // + //-------------------------// + + implement Substrate; + + float ShareList; + + //-------------------------// + // Struct Method Member // + //-------------------------// + + //! runtextmacro repository("Matrix4", "Create", "", "SkimData(this, 0)") + //! runtextmacro repository("Matrix4", "NewSolid", "ParameterList", "SkimData(this)") + //! runtextmacro repository("Matrix4", "NewReplace", "Matrix4 that", "ScanData(this, that)") + //! runtextmacro repository("Matrix4", "VariationSeed", "Matrix4 that", "Scampe(this, that)") + + Matrix4 SetValue(ParameterList) { + SkimData(this); + return this; + } + + string ToString() { + return ShowResult; + } + + } + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - The End - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - Vector3 Construct - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + struct Vector3 { + + //-------------------------// + // Struct Variable Member // + //-------------------------// + + static Vector3 Origin, VolumeX, VolumeY, VolumeZ; + + float x, y, z; + + //-------------------------// + // Struct Method Member // + //-------------------------// + + //! runtextmacro repository("Vector3", "Create", "", "PerkData(this, 0)") + //! runtextmacro repository("Vector3", "NewEqual", "AgencyList", "PerkData(this)") + //! runtextmacro repository("Vector3", "TurnLeach", "Vector3 that", "PercolateData(this, that)") + + Vector3 SetValue(AgencyList) { + PerkData(this); + return this; + } + + float GetLength() { + return sqr(.x * .x + .y * .y + .z * .z); + } + + string ToString() { + return DisplayResult; + } + + } + + //----------------------------// + // Related Function Member // + //----------------------------// + + //! textmacro arithmetic takes name, count, mark, vecx, vecy, vecz + Vector3 VecSuffix$name$(Vector3 Export, Vector3 V1, $count$) { + Export.x = V1.x $mark$ $vecx$; + Export.y = V1.y $mark$ $vecy$; + Export.z = V1.z $mark$ $vecz$; + return Export; + } + //! endtextmacro + + //! runtextmacro arithmetic("Add", "Vector3 V2", "+", "V2.x", "V2.y", "V2.z") + //! runtextmacro arithmetic("Subtract", "Vector3 V2", "-", "V2.x", "V2.y", "V2.z") + //! runtextmacro arithmetic("Scale", "float r", "*", "r", "r", "r") + //! runtextmacro arithmetic("Division", "float r", "/", "r", "r", "r") + + Vector3 VecNormalize(Vector3 Export, Vector3 V) { + float len = V.GetLength(); + Export.x = V.x / len; + Export.y = V.y / len; + Export.z = V.z / len; + return Export; + } + + float VecDot(Vector3 V1, Vector3 V2) { + return V1.x * V2.x + V1.y * V2.y + V1.z * V2.z; + } + + Vector3 VecCross(Vector3 Export, Vector3 V1, Vector3 V2) { + float y = V1.z * V2.x - V1.x * V2.z, \ + z = V1.x * V2.y - V1.y * V2.x; + Export.x = V1.y * V2.z - V1.z * V2.y; + Export.y = y; + Export.z = z; + return Export; + } + + Vector3 VecTransformWithMatrix3(Vector3 Export, Vector3 V, Matrix3 M) { + float y = V.x * M.m12 + V.y * M.m22 + V.z * M.m32, \ + z = V.x * M.m13 + V.y * M.m23 + V.z * M.m33; + Export.x = V.x * M.m11 + V.y * M.m21 + V.z * M.m31; + Export.y = y; + Export.z = z; + return Export; + } + + Vector3 VecTransformWithMatrix4(Vector3 Export, Vector3 V, Matrix4 M) { + float y = V.x * M.m12 + V.y * M.m22 + V.z * M.m32 + M.m42, \ + z = V.x * M.m13 + V.y * M.m23 + V.z * M.m33 + M.m43, \ + t = V.x * M.m14 + V.y * M.m24 + V.z * M.m34 + M.m44; + Export.x = (V.x * M.m11 + V.y * M.m21 + V.z * M.m31 + M.m41) / t; + Export.y = y / t; + Export.z = z / t; + return Export; + } + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - The End - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + // - Initializer - // + //=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=#=# + + void Transport(int i) { + Matrix3 Nape = Trend_Guide[i]; + Nape.Traversal(); + } + + private void Main() { + Matrix3.Vain = EmptyMatrix3; + Matrix3.Basic = SufferMatrix3; + Matrix4.Vain = EmptyMatrix4; + Matrix4.Basic = SufferMatrix4; + } + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_order.j b/plugin/AdicHelper/lib/cj_order.j new file mode 100644 index 0000000..16058f9 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_order.j @@ -0,0 +1,732 @@ +/* + cj_order.j v 0.12 + + Orders Define Library + Intended to optimize map script by replacing conversion of strings into order ids. + + This file is part of cJass standard library + 2009 Shadow Daemon \\ cjass.xgm.ru +*/ + +#guard cj_order + +define { + + // Standard orders + order_smart = 851971 + order_stop = 851972 + order_setrally = 851980 + order_getitem = 851981 + order_attack = 851983 + order_attackground = 851984 + order_attackonce = 851985 + order_move = 851986 + order_AImove = 851988 + order_patrol = 851990 + order_holdposition = 851993 + order_build = 851994 + order_humanbuild = 851995 + order_orcbuild = 851996 + order_nightelfbuild = 851997 + order_undeadbuild = 851998 + order_resumebuild = 851999 + order_dropitem = 852001 + order_detectaoe = 852015 + order_resumeharvesting = 852017 + order_harvest = 852018 + order_returnresources = 852020 + order_autoharvestgold = 852021 + order_autoharvestlumber = 852022 + order_neutraldetectaoe = 852023 + order_repair = 852024 + order_repairon = 852025 + order_repairoff = 852026 + order_revive = 852039 + order_selfdestruct = 852040 + order_selfdestructon = 852041 + order_selfdestructoff = 852042 + order_board = 852043 + order_forceboard = 852044 + order_load = 852046 + order_unload = 852047 + order_unloadall = 852048 + order_unloadallinstant = 852049 + order_loadcorpse = 852050 + order_loadcorpseinstant = 852053 + order_unloadallcorpses = 852054 + order_defend = 852055 + order_undefend = 852056 + order_dispel = 852057 + order_flare = 852060 + order_heal = 852063 + order_healon = 852064 + order_healoff = 852065 + order_innerfire = 852066 + order_innerfireon = 852067 + order_innerfireoff = 852068 + order_invisibility = 852069 + order_militiaconvert = 852071 + order_militia = 852072 + order_militiaoff = 852073 + order_polymorph = 852074 + order_slow = 852075 + order_slowon = 852076 + order_slowoff = 852077 + order_tankdroppilot = 852079 + order_tankloadpilot = 852080 + order_tankpilot = 852081 + order_townbellon = 852082 + order_townbelloff = 852083 + order_avatar = 852086 + order_unavatar = 852087 + order_blizzard = 852089 + order_divineshield = 852090 + order_undivineshield = 852091 + order_holybolt = 852092 + order_massteleport = 852093 + order_resurrection = 852094 + order_thunderbolt = 852095 + order_thunderclap = 852096 + order_waterelemental = 852097 + order_battlestations = 852099 + order_berserk = 852100 + order_bloodlust = 852101 + order_bloodluston = 852102 + order_bloodlustoff = 852103 + order_devour = 852104 + order_evileye = 852105 + order_ensnare = 852106 + order_ensnareon = 852107 + order_ensnareoff = 852108 + order_healingward = 852109 + order_lightningshield = 852110 + order_purge = 852111 + order_standdown = 852113 + order_stasistrap = 852114 + order_chainlightning = 852119 + order_earthquake = 852121 + order_farsight = 852122 + order_mirrorimage = 852123 + order_shockwave = 852125 + order_spiritwolf = 852126 + order_stomp = 852127 + order_whirlwind = 852128 + order_windwalk = 852129 + order_unwindwalk = 852130 + order_ambush = 852131 + order_autodispel = 852132 + order_autodispelon = 852133 + order_autodispeloff = 852134 + order_barkskin = 852135 + order_barkskinon = 852136 + order_barkskinoff = 852137 + order_bearform = 852138 + order_unbearform = 852139 + order_corrosivebreath = 852140 + order_loadarcher = 852142 + order_mounthippogryph = 852143 + order_cyclone = 852144 + order_detonate = 852145 + order_eattree = 852146 + order_entangle = 852147 + order_entangleinstant = 852148 + order_faeriefire = 852149 + order_faeriefireon = 852150 + order_faeriefireoff = 852151 + order_ravenform = 852155 + order_unravenform = 852156 + order_recharge = 852157 + order_rechargeon = 852158 + order_rechargeoff = 852159 + order_rejuvination = 852160 + order_renew = 852161 + order_renewon = 852162 + order_renewoff = 852163 + order_roar = 852164 + order_root = 852165 + order_unroot = 852166 + order_entanglingroots = 852171 + order_flamingarrowstarg = 852173 + order_flamingarrows = 852174 + order_unflamingarrows = 852175 + order_forceofnature = 852176 + order_immolation = 852177 + order_unimmolation = 852178 + order_manaburn = 852179 + order_metamorphosis = 852180 + order_scout = 852181 + order_sentinel = 852182 + order_starfall = 852183 + order_tranquility = 852184 + order_acolyteharvest = 852185 + order_antimagicshell = 852186 + order_blight = 852187 + order_cannibalize = 852188 + order_cripple = 852189 + order_curse = 852190 + order_curseon = 852191 + order_curseoff = 852192 + order_freezingbreath = 852195 + order_possession = 852196 + order_raisedead = 852197 + order_raisedeadon = 852198 + order_raisedeadoff = 852199 + order_instant = 852200 + order_requestsacrifice = 852201 + order_restoration = 852202 + order_restorationon = 852203 + order_restorationoff = 852204 + order_sacrifice = 852205 + order_stoneform = 852206 + order_unstoneform = 852207 + order_unholyfrenzy = 852209 + order_unsummon = 852210 + order_web = 852211 + order_webon = 852212 + order_weboff = 852213 + order_wispharvest = 852214 + order_auraunholy = 852215 + order_auravampiric = 852216 + order_animatedead = 852217 + order_carrionswarm = 852218 + order_darkritual = 852219 + order_darksummoning = 852220 + order_deathanddecay = 852221 + order_deathcoil = 852222 + order_deathpact = 852223 + order_dreadlordinferno = 852224 + order_frostarmor = 852225 + order_frostnova = 852226 + order_sleep = 852227 + order_darkconversion = 852228 + order_darkportal = 852229 + order_fingerofdeath = 852230 + order_firebolt = 852231 + order_inferno = 852232 + order_gold2lumber = 852233 + order_lumber2gold = 852234 + order_spies = 852235 + order_rainofchaos = 852237 + order_rainoffire = 852238 + order_request_hero = 852239 + order_disassociate = 852240 + order_revenge = 852241 + order_soulpreservation = 852242 + order_coldarrowstarg = 852243 + order_coldarrows = 852244 + order_uncoldarrows = 852245 + order_creepanimatedead = 852246 + order_creepdevour = 852247 + order_creepheal = 852248 + order_creephealon = 852249 + order_creephealoff = 852250 + order_creepthunderbolt = 852252 + order_creepthunderclap = 852253 + order_poisonarrowstarg = 852254 + order_poisonarrows = 852255 + order_unpoisonarrows = 852256 + order_frostarmoron = 852458 + order_frostarmoroff = 852459 + order_awaken = 852466 + order_nagabuild = 852467 + order_mount = 852469 + order_dismount = 852470 + order_cloudoffog = 852473 + order_controlmagic = 852474 + order_magicdefense = 852478 + order_magicundefense = 852479 + order_magicleash = 852480 + order_phoenixfire = 852481 + order_phoenixmorph = 852482 + order_spellsteal = 852483 + order_spellstealon = 852484 + order_spellstealoff = 852485 + order_banish = 852486 + order_drain = 852487 + order_flamestrike = 852488 + order_summonphoenix = 852489 + order_ancestralspirit = 852490 + order_ancestralspirittarget = 852491 + order_corporealform = 852493 + order_uncorporealform = 852494 + order_disenchant = 852495 + order_etherealform = 852496 + order_unetherealform = 852497 + order_spiritlink = 852499 + order_unstableconcoction = 852500 + order_healingwave = 852501 + order_hex = 852502 + order_voodoo = 852503 + order_ward = 852504 + order_autoentangle = 852505 + order_autoentangleinstant = 852506 + order_coupletarget = 852507 + order_coupleinstant = 852508 + order_decouple = 852509 + order_grabtree = 852511 + order_manaflareon = 852512 + order_manaflareoff = 852513 + order_phaseshift = 852514 + order_phaseshifton = 852515 + order_phaseshiftoff = 852516 + order_phaseshiftinstant = 852517 + order_taunt = 852520 + order_vengeance = 852521 + order_vengeanceon = 852522 + order_vengeanceoff = 852523 + order_vengeanceinstant = 852524 + order_blink = 852525 + order_fanofknives = 852526 + order_shadowstrike = 852527 + order_spiritofvengeance = 852528 + order_absorb = 852529 + order_avengerform = 852531 + order_unavengerform = 852532 + order_burrow = 852533 + order_unburrow = 852534 + order_devourmagic = 852536 + order_flamingattacktarg = 852539 + order_flamingattack = 852540 + order_unflamingattack = 852541 + order_replenish = 852542 + order_replenishon = 852543 + order_replenishoff = 852544 + order_replenishlife = 852545 + order_replenishlifeon = 852546 + order_replenishlifeoff = 852547 + order_replenishmana = 852548 + order_replenishmanaon = 852549 + order_replenishmanaoff = 852550 + order_carrionscarabs = 852551 + order_carrionscarabson = 852552 + order_carrionscarabsoff = 852553 + order_carrionscarabsinstant = 852554 + order_impale = 852555 + order_locustswarm = 852556 + order_breathoffrost = 852560 + order_frenzy = 852561 + order_frenzyon = 852562 + order_frenzyoff = 852563 + order_mechanicalcritter = 852564 + order_mindrot = 852565 + order_neutralinteract = 852566 + order_preservation = 852568 + order_sanctuary = 852569 + order_shadowsight = 852570 + order_spellshield = 852571 + order_spellshieldaoe = 852572 + order_spirittroll = 852573 + order_steal = 852574 + order_attributemodskill = 852576 + order_blackarrow = 852577 + order_blackarrowon = 852578 + order_blackarrowoff = 852579 + order_breathoffire = 852580 + order_charm = 852581 + order_doom = 852583 + order_drunkenhaze = 852585 + order_elementalfury = 852586 + order_forkedlightning = 852587 + order_howlofterror = 852588 + order_manashieldon = 852589 + order_manashieldoff = 852590 + order_monsoon = 852591 + order_silence = 852592 + order_stampede = 852593 + order_summongrizzly = 852594 + order_summonquillbeast = 852595 + order_summonwareagle = 852596 + order_tornado = 852597 + order_wateryminion = 852598 + order_battleroar = 852599 + order_channel = 852600 + order_parasite = 852601 + order_parasiteon = 852602 + order_parasiteoff = 852603 + order_submerge = 852604 + order_unsubmerge = 852605 + order_neutralspell = 852630 + order_militiaunconvert = 852651 + order_clusterrockets = 852652 + order_robogoblin = 852656 + order_unrobogoblin = 852657 + order_summonfactory = 852658 + order_acidbomb = 852662 + order_chemicalrage = 852663 + order_healingspray = 852664 + order_transmute = 852665 + order_lavamonster = 852667 + order_soulburn = 852668 + order_volcano = 852669 + order_incineratearrow = 852670 + order_incineratearrowon = 852671 + order_incineratearrowoff = 852672 + + + = 851971 + = 851972 + = 851980 + = 851981 + = 851983 + = 851984 + = 851985 + = 851986 + = 851988 + = 851990 + = 851993 + = 851994 + = 851995 + = 851996 + = 851997 + = 851998 + = 851999 + = 852001 + = 852015 + = 852017 + = 852018 + = 852020 + = 852021 + = 852022 + = 852023 + = 852024 + = 852025 + = 852026 + = 852039 + = 852040 + = 852041 + = 852042 + = 852043 + = 852044 + = 852046 + = 852047 + = 852048 + = 852049 + = 852050 + = 852053 + = 852054 + = 852055 + = 852056 + = 852057 + = 852060 + = 852063 + = 852064 + = 852065 + = 852066 + = 852067 + = 852068 + = 852069 + = 852071 + = 852072 + = 852073 + = 852074 + = 852075 + = 852076 + = 852077 + = 852079 + = 852080 + = 852081 + = 852082 + = 852083 + = 852086 + = 852087 + = 852089 + = 852090 + = 852091 + = 852092 + = 852093 + = 852094 + = 852095 + = 852096 + = 852097 + = 852099 + = 852100 + = 852101 + = 852102 + = 852103 + = 852104 + = 852105 + = 852106 + = 852107 + = 852108 + = 852109 + = 852110 + = 852111 + = 852113 + = 852114 + = 852119 + = 852121 + = 852122 + = 852123 + = 852125 + = 852126 + = 852127 + = 852128 + = 852129 + = 852130 + = 852131 + = 852132 + = 852133 + = 852134 + = 852135 + = 852136 + = 852137 + = 852138 + = 852139 + = 852140 + = 852142 + = 852143 + = 852144 + = 852145 + = 852146 + = 852147 + = 852148 + = 852149 + = 852150 + = 852151 + = 852155 + = 852156 + = 852157 + = 852158 + = 852159 + = 852160 + = 852161 + = 852162 + = 852163 + = 852164 + = 852165 + = 852166 + = 852171 + = 852173 + = 852174 + = 852175 + = 852176 + = 852177 + = 852178 + = 852179 + = 852180 + = 852181 + = 852182 + = 852183 + = 852184 + = 852185 + = 852186 + = 852187 + = 852188 + = 852189 + = 852190 + = 852191 + = 852192 + = 852195 + = 852196 + = 852197 + = 852198 + = 852199 + = 852200 + = 852201 + = 852202 + = 852203 + = 852204 + = 852205 + = 852206 + = 852207 + = 852209 + = 852210 + = 852211 + = 852212 + = 852213 + = 852214 + = 852215 + = 852216 + = 852217 + = 852218 + = 852219 + = 852220 + = 852221 + = 852222 + = 852223 + = 852224 + = 852225 + = 852226 + = 852227 + = 852228 + = 852229 + = 852230 + = 852231 + = 852232 + = 852233 + = 852234 + = 852235 + = 852237 + = 852238 + = 852239 + = 852240 + = 852241 + = 852242 + = 852243 + = 852244 + = 852245 + = 852246 + = 852247 + = 852248 + = 852249 + = 852250 + = 852252 + = 852253 + = 852254 + = 852255 + = 852256 + = 852458 + = 852459 + = 852466 + = 852467 + = 852469 + = 852470 + = 852473 + = 852474 + = 852478 + = 852479 + = 852480 + = 852481 + = 852482 + = 852483 + = 852484 + = 852485 + = 852486 + = 852487 + = 852488 + = 852489 + = 852490 + = 852491 + = 852493 + = 852494 + = 852495 + = 852496 + = 852497 + = 852499 + = 852500 + = 852501 + = 852502 + = 852503 + = 852504 + = 852505 + = 852506 + = 852507 + = 852508 + = 852509 + = 852511 + = 852512 + = 852513 + = 852514 + = 852515 + = 852516 + = 852517 + = 852520 + = 852521 + = 852522 + = 852523 + = 852524 + = 852525 + = 852526 + = 852527 + = 852528 + = 852529 + = 852531 + = 852532 + = 852533 + = 852534 + = 852536 + = 852539 + = 852540 + = 852541 + = 852542 + = 852543 + = 852544 + = 852545 + = 852546 + = 852547 + = 852548 + = 852549 + = 852550 + = 852551 + = 852552 + = 852553 + = 852554 + = 852555 + = 852556 + = 852560 + = 852561 + = 852562 + = 852563 + = 852564 + = 852565 + = 852566 + = 852568 + = 852569 + = 852570 + = 852571 + = 852572 + = 852573 + = 852574 + = 852576 + = 852577 + = 852578 + = 852579 + = 852580 + = 852581 + = 852583 + = 852585 + = 852586 + = 852587 + = 852588 + = 852589 + = 852590 + = 852591 + = 852592 + = 852593 + = 852594 + = 852595 + = 852596 + = 852597 + = 852598 + = 852599 + = 852600 + = 852601 + = 852602 + = 852603 + = 852604 + = 852605 + = 852630 + = 852651 + = 852652 + = 852656 + = 852657 + = 852658 + = 852662 + = 852663 + = 852664 + = 852665 + = 852667 + = 852668 + = 852669 + = 852670 + = 852671 + = 852672 + + // Orders without string substitute + + // When player drags item to slot NN + order_itemdrag00 = 852002 + order_itemdrag01 = 852003 + order_itemdrag02 = 852004 + order_itemdrag03 = 852005 + order_itemdrag04 = 852006 + order_itemdrag05 = 852007 + + // When player uses item in slot NN + order_itemuse00 = 852008 + order_itemuse01 = 852009 + order_itemuse02 = 852010 + order_itemuse03 = 852011 + order_itemuse04 = 852012 + order_itemuse05 = 852013 +} diff --git a/plugin/AdicHelper/lib/cj_point.j b/plugin/AdicHelper/lib/cj_point.j new file mode 100644 index 0000000..6026bfa --- /dev/null +++ b/plugin/AdicHelper/lib/cj_point.j @@ -0,0 +1,34 @@ +//Edit By Warft_TigerCN + +struct Point { + + float x, y, distance, angle; + + static thistype create(float x, float y) { + thistype this = thistype.allocate(); + this.x = x; + this.y = y; + return this; + } + + void changeValue(float x, float y) { + .x = x; + .y = y; + } + + float getDistance(thistype other) { + .distance = SquareRoot((other.x - .x) * (other.x - .x) + (other.y - .y) * (other.y - .y)); + return .distance; + } + + float getAngle(thistype other) { + .angle = 57.296 * Atan2(other.y - .y, other.x - .x); + return .angle; + } + + void setUnitCoordinate(unit u) { + SetUnitX(u, .x); + SetUnitY(u, .y); + } + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_pointer.j b/plugin/AdicHelper/lib/cj_pointer.j new file mode 100644 index 0000000..fa42c18 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_pointer.j @@ -0,0 +1,57 @@ +// Edit By TigerCN +library Indicator { + + int array Trend_Guide; + int ReplaceA, ReplaceB; + + struct Pointer { + + int GetSite(float r) { return r; return 0; } + + int NewSite(int n) { + float r = I2R(n); int i, j = GetSite(r), k = j - (j / 8192) * 8192; + if (k < 0) { k += 8192; } + i = k; + do { + if (Trend_Guide[i] == 0) { + Trend_Guide[i] = R2I(r); + return i; + } + elseif (i < 8191) { + i ++; + } + else { + i = 0; + } + } + while(i != k); + return -1; + } + + void SwapSite(Block block, int i, int j) { + int media = block[j]; + block[j] = block[i]; + block[i] = media; + } + + void SwapDigit(int p1, int p2) { + int i = p1 + p1 = p2 + p2 = i + ReplaceA = p1; + ReplaceB = p2; + } + + void ClearSite(int id) { Trend_Guide[id] = 0; } + + } + + + +} + +define { + + SwapFinger(p1,p2) = { SwapDigit(p1,p2); p1 = ReplaceA; p2 = ReplaceB } + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_print.j b/plugin/AdicHelper/lib/cj_print.j new file mode 100644 index 0000000..f991bf5 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_print.j @@ -0,0 +1,697 @@ +/* + cj_print.j v 0.93 + + The string formatting functions. Overloaded to take up to 16 arguments. + For examples of usage and extending refer to cJass Manual. + + This file is part of cJass standard library + 2009 ADOLF \\ cjass.xgm.ru +*/ + +#guard cj_print + +library_once cjsprintf initializer cj_sprintf_updatePlayers { + + include "cj_types_priv.j" + + #if WAR3VER == WAR3VER_23 + undef cj_sprintf_GetHandleID + + int cj_sprintf_GetHandleID (handle h) { return h; return 0x00 } + #endif + + define { + cj_sprintf_badArg = @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) \ + @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) \ + @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) \ + @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) @(***unknown arg***) + + cj_sprintf_argStr = !@@a + + cj_sprintf_GetHandleID (h) = GetHandleId(h) + + cj_sprintf_artTyp_Const = "^h^=^pc^=^p^=^igold^=|cffffdc00|r^ilumb^=|cff00c850|r^ipc^=^ip^=^i^=^r^=^b^=^s^=<$>^v^=$" + cj_sprintf_argTyp_Base = cj_sprintf_artTyp_Const + cj_sprintf_argTyp_User = + cj_sprintf_argTyp_Err = "^^=<(***unknown type***)>^^^=<(***unknown type***)>^^^^=<(***unknown type***)>^^^^^=<(**unknown type***)>^^^^^^=<(***unknown type***)>^^^^^^^=<(***unknown type***)>^^^^^^^^=<(***unknown type***)>" + + // parse string + = + sprintf () = null + sprintf (str) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e + sprintf (str, arg_00) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e + sprintf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e + // def output + = + printf () = + printf (str) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + printf (str, arg_00) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + printf (str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = DisplayTimedTextToPlayer(GetLocalPlayer(), 0., 0., 60., !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // BJDebugMsg + = + sBJDebugMsg() = + sBJDebugMsg(str) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sBJDebugMsg(str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = BJDebugMsg( !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // DisplayTextToPlayer + sDisplayTextToPlayer (p, x, y) = DisplayTextToPlayer (p, x, y, "") + sDisplayTextToPlayer (p, x, y, str) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sDisplayTextToPlayer (p, x, y, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = DisplayTextToPlayer (p, x, y, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // DisplayTimedTextToPlayer + sDisplayTimedTextToPlayer (p, x, y, r) = DisplayTimedTextToPlayer (p, x, y, r, "") + sDisplayTimedTextToPlayer (p, x, y, r, str) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextToPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = DisplayTimedTextToPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // DisplayTimedTextFromPlayer + sDisplayTimedTextFromPlayer (p, x, y, r) = DisplayTimedTextFromPlayer (p, x, y, r, "") + sDisplayTimedTextFromPlayer (p, x, y, r, str) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sDisplayTimedTextFromPlayer (p, x, y, r, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = DisplayTimedTextFromPlayer (p, x, y, r, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // SetTextTagText + sSetTextTagText (t, h) = SetTextTagText (t, "", h) + sSetTextTagText (t, str, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e, h) + sSetTextTagText (t, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f, h) = SetTextTagText (t, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e, h) + + // QuestSetTitle + sQuestSetTitle (q) = QuestSetTitle (q, "") + sQuestSetTitle (q, str) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sQuestSetTitle (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = QuestSetTitle (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // QuestSetDescription + sQuestSetDescription (q) = QuestSetDescription (q, "") + sQuestSetDescription (q, str) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sQuestSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = QuestSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // QuestItemSetDescription + sQuestItemSetDescription (q) = QuestItemSetDescription (q, "") + sQuestItemSetDescription (q, str) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sQuestItemSetDescription (q, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = QuestItemSetDescription (q, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // MultiboardSetTitleText + sMultiboardSetTitleText (mb) = MultiboardSetTitleText (mb, "") + sMultiboardSetTitleText (mb, str) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sMultiboardSetTitleText (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = MultiboardSetTitleText (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // MultiboardSetItemsValue + sMultiboardSetItemsValue (mb) = MultiboardSetItemsValue (mb, "") + sMultiboardSetItemsValue (mb, str) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemsValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = MultiboardSetItemsValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // MultiboardSetItemValue + sMultiboardSetItemValue (mb) = MultiboardSetItemValue (mb, "") + sMultiboardSetItemValue (mb, str) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sMultiboardSetItemValue (mb, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = MultiboardSetItemValue (mb, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // DialogSetMessage + sDialogSetMessage (d) = DialogSetMessage (d, "") + sDialogSetMessage (d, str) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e ) + sDialogSetMessage (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f) = DialogSetMessage (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e ) + + // DialogAddButton + sDialogAddButton (d, i) = DialogAddButton (d, "", i) + sDialogAddButton (d, str, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e, i ) + sDialogAddButton (d, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f, i) = DialogAddButton (d, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e, i ) + + // DialogAddQuitButton + sDialogAddQuitButton (d, b, i) = DialogAddQuitButton (d, b, "", i) + sDialogAddQuitButton (d, b, str, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e, i ) + sDialogAddQuitButton (d, b, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f, i) = DialogAddQuitButton (d, b, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e, i ) + + // LeaderboardAddItem + sLeaderboardAddItem(l, p) = LeaderboardAddItem(l, "", p ) + sLeaderboardAddItem(l, str, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## cj_sprintf_badArg !@@e, p ) + sLeaderboardAddItem(l, str, arg_00, arg_01, arg_02, arg_03, arg_04, arg_05, arg_06, arg_07, arg_08, arg_09, arg_0a, arg_0b, arg_0c, arg_0d, arg_0e, arg_0f, p) = LeaderboardAddItem(l, !@@s ## str cj_sprintf_argStr ## cj_sprintf_argTyp_Base ## cj_sprintf_argTyp_User ## cj_sprintf_argTyp_Err ## \ + @arg_00 ## @arg_01 ## @arg_02 ## @arg_03 ## @arg_04 ## @arg_05 ## @arg_06 ## @arg_07 ## @arg_08 ## @arg_09 ## @arg_0a ## @arg_0b ## @arg_0c ## @arg_0d ## @arg_0e ## @arg_0f ## cj_sprintf_badArg !@@e, p ) + + } + + string array cj_sprintf_p, cj_sprintf_pc + + void cj_sprintf_updatePlayers () { + cj_sprintf_p [0x00] = GetPlayerName(Player(0x00)) + cj_sprintf_p [0x01] = GetPlayerName(Player(0x01)) + cj_sprintf_p [0x02] = GetPlayerName(Player(0x02)) + cj_sprintf_p [0x03] = GetPlayerName(Player(0x03)) + cj_sprintf_p [0x04] = GetPlayerName(Player(0x04)) + cj_sprintf_p [0x05] = GetPlayerName(Player(0x05)) + cj_sprintf_p [0x06] = GetPlayerName(Player(0x06)) + cj_sprintf_p [0x07] = GetPlayerName(Player(0x07)) + cj_sprintf_p [0x08] = GetPlayerName(Player(0x08)) + cj_sprintf_p [0x09] = GetPlayerName(Player(0x09)) + cj_sprintf_p [0x0a] = GetPlayerName(Player(0x0a)) + cj_sprintf_p [0x0b] = GetPlayerName(Player(0x0b)) + cj_sprintf_p [0x0c] = GetPlayerName(Player(0x0c)) + cj_sprintf_p [0x0d] = GetPlayerName(Player(0x0d)) + cj_sprintf_p [0x0e] = GetPlayerName(Player(0x0e)) + cj_sprintf_p [0x0f] = GetPlayerName(Player(0x0f)) + + cj_sprintf_pc [0x00] = "|cffff0303" + GetPlayerName(Player(0x00)) + "|r" + cj_sprintf_pc [0x01] = "|cff0042ff" + GetPlayerName(Player(0x01)) + "|r" + cj_sprintf_pc [0x02] = "|cff1ce6b9" + GetPlayerName(Player(0x02)) + "|r" + cj_sprintf_pc [0x03] = "|cff540081" + GetPlayerName(Player(0x03)) + "|r" + cj_sprintf_pc [0x04] = "|cffffff01" + GetPlayerName(Player(0x04)) + "|r" + cj_sprintf_pc [0x05] = "|cfffe8a0e" + GetPlayerName(Player(0x05)) + "|r" + cj_sprintf_pc [0x06] = "|cff20c000" + GetPlayerName(Player(0x06)) + "|r" + cj_sprintf_pc [0x07] = "|cffe55bb0" + GetPlayerName(Player(0x07)) + "|r" + cj_sprintf_pc [0x08] = "|cff959697" + GetPlayerName(Player(0x08)) + "|r" + cj_sprintf_pc [0x09] = "|cff7ebff1" + GetPlayerName(Player(0x09)) + "|r" + cj_sprintf_pc [0x0a] = "|cff106246" + GetPlayerName(Player(0x0a)) + "|r" + cj_sprintf_pc [0x0b] = "|cff4e2a04" + GetPlayerName(Player(0x0b)) + "|r" + cj_sprintf_pc [0x0c] = "|cff282828" + GetPlayerName(Player(0x0c)) + "|r" + cj_sprintf_pc [0x0d] = "|cff282828" + GetPlayerName(Player(0x0d)) + "|r" + cj_sprintf_pc [0x0e] = "|cff282828" + GetPlayerName(Player(0x0e)) + "|r" + cj_sprintf_pc [0x0f] = "|cff282828" + GetPlayerName(Player(0x0f)) + "|r" + } + + string cj_sprintf_b2s (bool b) { + if b { return "true" } + return "false" + } + +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_stdio.j b/plugin/AdicHelper/lib/cj_stdio.j new file mode 100644 index 0000000..ec2dfe4 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_stdio.j @@ -0,0 +1,370 @@ +// Edit By TigerCN +define { + + //printf(sign,""str) = printf(sign,NewStrId(str)) + +} + +library StringArray + + globals + integer STRING_INDEX_NONE = -1 + string STRING_INVALID_SEGMENT = "" + endglobals + + struct StringSegments + + string s + string delim + integer sLen + integer dLen + integer pos + integer count + + method calculateCount takes nothing returns nothing + local integer i = pos + local integer prev = pos + local integer count = 0 + if (dLen == 0 or sLen == 0) then + return + endif + loop + if (i >= sLen) then + if (i - prev > 0) then + set count = count + 1 + endif + exitwhen true + endif + if (SubString(s, i, i + dLen) == delim ) then + if (i - prev > 0) then + set count = count + 1 + set i = i + dLen + set prev = i + endif + set i = i + dLen + set prev = i + else + set i = i + 1 + endif + endloop + endmethod + + static method create takes string s, string delim returns thistype + local thistype t = thistype.allocate() + set t.s = s + set t.pos = 0 + set t.sLen = StringLength(s) + set t.delim = delim + set t.dLen = StringLength(delim) + call t.calculateCount() + return t + endmethod + + method countSegments takes nothing returns integer + return count + endmethod + + method hasMoreSegments takes nothing returns boolean + return count > 0 + endmethod + + method nextSegment takes nothing returns string + local integer i = pos + local string str + if (count <= 0) then + return STRING_INVALID_SEGMENT + endif + loop + loop + set str = SubString(s, i, i + dLen) + if (str == delim or str == "" or str == null) then + exitwhen true + endif + set i = i + 1 + endloop + if (i - pos > 0) then + set str = SubString(s, pos, i) + set pos = i + set count = count - 1 + exitwhen true + endif + set pos = i + dLen + set i = pos + endloop + return str + endmethod + + method nextSegmentEx takes string line returns string + set delim = line + set dLen = StringLength(line) + call calculateCount() + return nextSegment() + endmethod + + endstruct + + +endlibrary + +library StrHash + + globals + string array Trend_String + endglobals + + function IntToStr takes string h returns integer + return h + return 0 + endfunction + + function NewStrId takes string h returns integer + local integer EnumId + local integer ConvertedTimer = IntToStr(h) + local integer StartId = ConvertedTimer - (ConvertedTimer / 8192) * 8192 + if (StartId < 0) then + set StartId = StartId + 8192 + endif + set EnumId = StartId + loop + if (Trend_String[EnumId] == null) then + set Trend_String[EnumId] = h + return EnumId + elseif (EnumId < 8191) then + set EnumId = EnumId + 1 + else + set EnumId = 0 + endif + exitwhen EnumId == StartId + endloop + return -1 + endfunction + + function ClearStrId takes integer id returns nothing + set Trend_String[id] = null + endfunction + +endlibrary + +library SchemeExport requires StrHash + function DecToBin takes integer dec returns string + local string bin="" + local string array bits + local integer i=0 + loop + exitwhen ( dec < 2 ) + if ( ModuloInteger(dec, 2) == 1 ) then + set bits[i]="1" + else + set bits[i]="0" + endif + set dec=dec / 2 + set i=i + 1 + endloop + set bits[i]=I2S(ModuloInteger(dec, 2)) + loop + exitwhen ( i < 0 ) + set bin=bin + bits[i] + set i=i - 1 + endloop + return bin + endfunction + + function DecToOct takes integer dec returns string + local integer i=0 + local integer j=0 + local integer oct=0 + if ( dec <= 7 ) then + set oct=dec + else + loop + exitwhen ( dec <= 7 ) + set j=ModuloInteger(dec, 8) + set dec=dec / 8 + set oct=R2I(j * Pow(10, i) + oct) + set i=i + 1 + endloop + endif + set oct=R2I(oct + dec * Pow(10, i)) + return I2S(oct) + endfunction + + function DecToHex takes integer dec returns string + local string array b + local string sec="" + local integer i=0 + local integer j + local integer array int + local StringSegments limb=StringSegments.create("#0 #1 #2 #3 #4 #5 #6 #7 #8 #9 #A #B #C #D #E #F" , " ") + loop + exitwhen ( not ( limb.hasMoreSegments() ) ) + set b[i]=SubString(limb.nextSegment(), 1, 2) + set i=i + 1 + endloop + set i=0 + set j=dec + loop + exitwhen ( j <= 0 ) + set int[i]=ModuloInteger(j, 16) + set j=j / 16 + set i=i + 1 + endloop + loop + exitwhen ( i <= 0 ) + set sec=sec + b[int[i - 1]] + set i=i - 1 + endloop + call limb.destroy() + return sec + endfunction + + function ASCIIToChar takes integer i returns string + if ( i == 0 ) then + return null + elseif ( i >= 8 and i <= 10 ) then + return SubString("\b\t\n", i - 8, i - 7) + elseif ( i >= 12 and i <= 13 ) then + return SubString("\f\r", i - 12, i - 11) + elseif ( i >= 32 and i <= 127 ) then + return SubString("!\"#$%%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~", i - 32, i - 31) + endif + return "" + endfunction + + function InvertChar takes string inv returns string + local string new="" + local string array pol + local integer i + set i=StringLength(inv) - 1 + loop + exitwhen i < 0 + set pol[i]=SubString(inv, i, i + 1) + set new=new + pol[i] + set i=i - 1 + endloop + return new + endfunction + + function SeverChar takes string h,string mark returns integer + local integer len=StringLength(h) + local integer int + local string result + set int=0 + loop + exitwhen int > len - 1 + set result=SubString(h, int, int + 1) + exitwhen ( result == mark ) + set int=int + 1 + endloop + return int + endfunction + + //public: + function Print takes string char,real col returns nothing + local string com + local string pat + local string rev + local string ally + local string key="dbohxcefst" + local string sty + local string dig + local string acc + local string line="" + local integer l=SeverChar(char , "%") // >>> String Parameters Details Lists <<< // // com(common): // pat(pattern): // rev(revers): // ally: // key: include keywords. // sty(style): // dig(digital): // acc(accuracy): // line: // //=========================================================================================================// //========================================================================================================= + local integer i + local integer j + local integer k + set com=SubString(char, 0, l) + set ally=SubString(char, l + 1, StringLength(char)) + set l=SeverChar(ally , "|") + set pat=SubString(ally, 0, l) + set rev=SubString(ally, l + 1, StringLength(ally)) //=========================================================================================================// + if ( rev == "n" ) then + set rev="\n" + elseif ( rev == "r" ) then + set rev="\r" + elseif ( rev == "b" ) then + set rev="\b" + elseif ( rev == "f" ) then + set rev="\f" + elseif ( rev == "t" ) then + set rev="\t" + elseif ( rev == "q" ) then + set rev=" \n\n\n\n\n" + endif //=========================================================================================================// + set i=0 + loop + exitwhen i > StringLength(pat) - 1 + set ally=SubString(pat, i, i + 1) + set j=0 + loop + exitwhen j > StringLength(key) - 1 + set sty=SubString(key, j, j + 1) + exitwhen ( ally == sty ) + set j=j + 1 + endloop + set i=i + 1 + endloop + set sty=ally //=========================================================================================================// + set l=SeverChar(pat , ".") + set dig=SubString(pat, 0, l) + if ( l >= StringLength(pat) ) then + set acc="" + else + set acc=SubString(pat, l + 1, StringLength(pat) - 1) + endif //=========================================================================================================// + if ( sty == "d" ) then + set j=StringLength(I2S(R2I(col))) + elseif ( sty == "f" ) then + set j=StringLength(R2S(col)) + set l=SeverChar(R2S(col) , ".") + if ( S2I(acc) > j - l - 1 ) then + set i=0 + loop + exitwhen i > ( S2I(acc) - j + l ) + set line=line + "0" + set i=i + 1 + endloop + call BJDebugMsg(com + R2S(col) + line + rev) + else + set ally=SubString(R2S(col), 0, S2I(acc) + l + 1) + set i=S2I(SubString(R2S(col), S2I(acc) + l + 1, S2I(acc) + l + 2)) + if ( i >= 5 ) then + set col=S2R(ally) + Pow(0.1, - ( S2I(acc) - j + l )) + set ally=SubString(R2S(col), 0, S2I(acc) + l + 1) + endif + call BJDebugMsg(com + ally + rev) + endif + endif + if ( S2I(dig) - j > 0 ) then + set i=0 + loop + exitwhen i > ( S2I(dig) - j ) + set com=com + " " + set i=i + 1 + endloop + endif //=========================================================================================================// + if ( sty == "d" ) then + call BJDebugMsg(com + I2S(R2I(col)) + rev) + elseif ( sty == "b" ) then + call BJDebugMsg(com + DecToBin(R2I(col)) + rev) + elseif ( sty == "o" ) then + call BJDebugMsg(com + DecToOct(R2I(col)) + rev) + elseif ( sty == "h" ) then + call BJDebugMsg(com + DecToHex(R2I(col)) + rev) + elseif ( sty == "x" ) then + call BJDebugMsg(com + "0x" + DecToHex(R2I(col)) + rev) + elseif ( sty == "s" ) then + call BJDebugMsg(com + ASCIIToChar(R2I(col)) + rev) + elseif ( sty == "l" ) then + call BJDebugMsg(com + Trend_String[R2I(col)]) + call ClearStrId(R2I(col)) + elseif ( sty == "c" ) then + call BJDebugMsg(com + SubString(Trend_String[R2I(col)], 0, 1)) + call ClearStrId(R2I(col)) + elseif ( sty == "t" ) then //=========================================================================================================// + call BJDebugMsg(com + InvertChar(Trend_String[R2I(col)])) + call ClearStrId(R2I(col)) + endif + endfunction + +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_timerutils.j b/plugin/AdicHelper/lib/cj_timerutils.j new file mode 100644 index 0000000..8560411 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_timerutils.j @@ -0,0 +1,107 @@ +library_once TimerUtils +//********************************************************************* +//* TimerUtils (Purple flavor for 1.23b or later) +//* ---------- +//* +//* To implement it , create a custom text trigger called TimerUtils +//* and paste the contents of this script there. +//* +//* To copy from a map to another, copy the trigger holding this +//* library to your map. +//* +//* (requires vJass) More scripts: http://www.wc3c.net/ +//* +//* For your timer needs: +//* * Attaching +//* * Recycling (with double-free protection) +//* +//* set t=NewTimer() : Get a timer (alternative to CreateTimer) +//* ReleaseTimer(t) : Relese a timer (alt to DestroyTimer) +//* SetTimerData(t,2) : Attach value 2 to timer +//* GetTimerData(t) : Get the timer's value. +//* You can assume a timer's value is 0 +//* after NewTimer. +//* +//* Purple Flavor: Slower than the red flavor by a multiplication and a +//* division, and as such faster than the blue flavor. Has +//* a theoretical limit of timers, which is HASH_SIZE, but +//* you should keep your timer count below 3/4 of that to +//* insure good performance of the NewTimer function. +//* +//* Credits: * Hash algorithm by Cohadar (used in an early version +//* of his ABCT timer system) +//* +//* * TimerUtils "interface" by Vexorian. +//* +//* * This library by Iron_Doors. +//* +//******************************************************************** + +//================================================================ + + globals + private constant integer MAX_HANDLE_ID_COUNT = 408000 + // values lower than 8191: very fast, but very unsafe. + // values bigger than 8191: not that fast, the bigger the number is the slower the function gets + // Most maps don't really need a value bigger than 50000 here, but if you are unsure, leave it + // as the rather inflated value of 408000 + private integer array data[MAX_HANDLE_ID_COUNT] + private constant integer MIN_HANDLE_ID=0x100000 + //use a totally random number here, the more improbable someone uses it, the better. + private constant integer HELD=0x28829022 + private timer array tT + private integer tN = 0 + endglobals + + function GetHandleId takes handle h returns integer + return h + return 0 + endfunction + + //It is dependent on jasshelper's recent inlining optimization in order to perform correctly. + function SetTimerData takes timer t, integer value returns nothing + debug if(GetHandleId(t)-MIN_HANDLE_ID>=MAX_HANDLE_ID_COUNT) then + debug call BJDebugMsg("SetTimerData: Handle id too big, increase the max handle id count or use gamecache instead") + debug endif + set data[GetHandleId(t)-MIN_HANDLE_ID]=value + endfunction + + function GetTimerData takes timer t returns integer + debug if(GetHandleId(t)-MIN_HANDLE_ID>=MAX_HANDLE_ID_COUNT) then + debug call BJDebugMsg("GetTimerData: Handle id too big, increase the max handle id count or use gamecache instead") + debug endif + return data[GetHandleId(t)-MIN_HANDLE_ID] + endfunction + + function NewTimer takes nothing returns timer + if (tN==0) then + set tT[0]=CreateTimer() + else + set tN=tN-1 + endif + call SetTimerData(tT[tN],0) + return tT[tN] + endfunction + + function ReleaseTimer takes timer t returns nothing + if(t==null) then + debug call BJDebugMsg("Warning: attempt to release a null timer") + return + endif + if (tN==8191) then + debug call BJDebugMsg("Warning: Timer stack is full, destroying timer!!") + //stack is full, the map already has much more troubles than the chance of bug + call DestroyTimer(t) + else + call PauseTimer(t) + if(GetTimerData(t)==HELD) then + debug call BJDebugMsg("Warning: ReleaseTimer: Double free!") + return + endif + call SetTimerData(t,HELD) + set tT[tN]=t + set tN=tN+1 + endif + endfunction + +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_types.j b/plugin/AdicHelper/lib/cj_types.j new file mode 100644 index 0000000..4dd3d04 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_types.j @@ -0,0 +1,18 @@ +/* + cj_types.j + + Basic replacement of JASS2 types to their C analogs. + Private version, recommended for usage in imported libraries etc + + This file is part of cJass standard library + 2009 ADOLF \\ cjass.xgm.ru +*/ + +#guard cj_types + +define { + int = integer + bool = boolean + void = nothing + float = real +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_typesEX.j b/plugin/AdicHelper/lib/cj_typesEX.j new file mode 100644 index 0000000..3dd591a --- /dev/null +++ b/plugin/AdicHelper/lib/cj_typesEX.j @@ -0,0 +1,64 @@ +/* + cj_typesEX.j + + Extended replacement of some constructs, dealing with game object creation. + Private version, recommended for usage in imported libraries etc + + This file is part of cJass standard library + 2009 Van Damm \\ cjass.xgm.ru +*/ + +#guard cj_typesEX + +define { + = InitHashtable() + = CreateTimer() + = CreateGroup() + = CreateForce() + = CreateRegion() + = CreateTrigger() + = DialogCreate() + = CreateLeaderboard() + = CreateMultiboard() + = CreateQuest() + = CreateTextTag() + = CreateCameraSetup() + (t) = CreateTimerDialog(t) + (file) = InitGameCache(file) + (where,effectID) = AddWeatherEffect(where,effectID) + + () = GetLocalPlayer() + (id) = Player(id) + + () = Location(0,0) + (x,y) = Location(x,y) + + () = Rect(0,0,0,0) + (x1,y1,x2,y2) = Rect(x1,y1,x2,y2) + + (itemid) = CreateItem(itemid,0,0) + (itemid,x,y) = CreateItem(itemid,x,y) + + (p,id) = CreateUnit(p,id,0,0,0) + (p,id,x,y) = CreateUnit(p,id,x,y,0) + (p,id,x,y,f) = CreateUnit(p,id,x,y,f) + + (modelName) = AddSpecialEffect(modelName,0,0) + (modelName,x,y) = AddSpecialEffect(modelName,x,y) + + (objectid,x,y) = CreateDestructable(objectid,x,y,1,0) + (objectid,x,y,z) = CreateDestructableZ(objectid,x,y,z,1,0) + (objectid,x,y,facescale,variation) = CreateDestructable(objectid,x,y,facescale,variation) + (objectid,x,y,z,facescale,variation) = CreateDestructableZ(objectid,x,y,z,facescale,variation) + + (trackableModelPath,x,y,facing) = CreateTrackable(trackableModelPath,x,y,facing) + + (fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) = CreateSound(fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) + + (x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) = CreateUbersplat(x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) + + (codeName,checkVisibility,x1,y1,x2,y2) = AddLightning(codeName,checkVisibility,x1,y1,x2,y2) + (codeName,checkVisibility,x1,y1,z1,x2,y2,z2) = AddLightningEx(codeName,checkVisibility,x1,y1,z1,x2,y2,z2) + + (file,sizeX,sizeY,sizez,posX,posY,posZ,originX,originY,originZ,imageType) = CreateImage(file,sizeX,sizeY,sizeZ,posX,posY,posz,originX,originY,originZ,imageType) +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_typesEX_priv.j b/plugin/AdicHelper/lib/cj_typesEX_priv.j new file mode 100644 index 0000000..798d0ac --- /dev/null +++ b/plugin/AdicHelper/lib/cj_typesEX_priv.j @@ -0,0 +1,62 @@ +/* + cj_typesEX_priv.j + + Extended replacement of some constructs, dealing with game object creation. + Private version, recommended for usage in imported libraries etc + + This file is part of cJass standard library + 2009 Van Damm \\ cjass.xgm.ru +*/ + +define { + private = InitHashtable() + private = CreateTimer() + private = CreateGroup() + private = CreateForce() + private = CreateRegion() + private = CreateTrigger() + private = DialogCreate() + private = CreateLeaderboard() + private = CreateMultiboard() + private = CreateQuest() + private = CreateTextTag() + private = CreateCameraSetup() + private (t) = CreateTimerDialog(t) + private (file) = InitGameCache(file) + private (where,effectID) = AddWeatherEffect(where,effectID) + + private () = GetLocalPlayer() + private (id) = Player(id) + + private () = Location(0,0) + private (x,y) = Location(x,y) + + private () = Rect(0,0,0,0) + private (x1,y1,x2,y2) = Rect(x1,y1,x2,y2) + + private (itemid) = CreateItem(itemid,0,0) + private (itemid,x,y) = CreateItem(itemid,x,y) + + private (p,id) = CreateUnit(p,id,0,0,0) + private (p,id,x,y) = CreateUnit(p,id,x,y,0) + private (p,id,x,y,f) = CreateUnit(p,id,x,y,f) + + private (modelName) = AddSpecialEffect(modelName,0,0) + private (modelName,x,y) = AddSpecialEffect(modelName,x,y) + + private (objectid,x,y) = CreateDestructable(objectid,x,y,1,0) + private (objectid,x,y,z) = CreateDestructableZ(objectid,x,y,z,1,0) + private (objectid,x,y,facescale,variation) = CreateDestructable(objectid,x,y,facescale,variation) + private (objectid,x,y,z,facescale,variation) = CreateDestructableZ(objectid,x,y,z,facescale,variation) + + private (trackableModelPath,x,y,facing) = CreateTrackable(trackableModelPath,x,y,facing) + + private (fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) = CreateSound(fileName,looping,is3D,stopwhenoutofrange,fadeInRate,fadeOutRate,eaxSetting) + + private (x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) = CreateUbersplat(x,y,name,red,green,blue,alpha,forcePaused,noBirthTime) + + private (codeName,checkVisibility,x1,y1,x2,y2) = AddLightning(codeName,checkVisibility,x1,y1,x2,y2) + private (codeName,checkVisibility,x1,y1,z1,x2,y2,z2) = AddLightningEx(codeName,checkVisibility,x1,y1,z1,x2,y2,z2) + + private (file,sizeX,sizeY,sizez,posX,posY,posZ,originX,originY,originZ,imageType) = CreateImage(file,sizeX,sizeY,sizeZ,posX,posY,posz,originX,originY,originZ,imageType) +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_types_priv.j b/plugin/AdicHelper/lib/cj_types_priv.j new file mode 100644 index 0000000..74fb58d --- /dev/null +++ b/plugin/AdicHelper/lib/cj_types_priv.j @@ -0,0 +1,16 @@ +/* + cj_types_priv.j + + Basic replacement of JASS2 types to their C analogs. + Private version, recommended for usage in imported libraries etc + + This file is part of cJass standard library + 2009 ADOLF \\ cjass.xgm.ru +*/ + +define { + private int = integer + private bool = boolean + private void = nothing + private float = real +} \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_vector.j b/plugin/AdicHelper/lib/cj_vector.j new file mode 100644 index 0000000..a3e233b --- /dev/null +++ b/plugin/AdicHelper/lib/cj_vector.j @@ -0,0 +1,422 @@ +library Vector + +//***************************************************************** +//* VECTOR LIBRARY +//* +//* written by: Anitarf +//* +//* The library contains a struct named vector, which represents a +//* point in 3D space. As such, it has three real members, one for +//* each coordinate: x, y, z. It also has the following methods: +//* +//* static method create takes real x, real y, real z returns vector +//* Creates a new vector with the given coordinates. +//* +//* method getLength takes nothing returns real +//* Returns the length of the vector it is called on. +//* +//* static method sum takes vector augend, vector addend returns vector +//* Returns the sum of two vectors as a new vector. +//* +//* method add takes vector addend returns nothing +//* Similar to sum, except that it doesn't create a new vector for the result, +//* but changes the vector it is called on by adding the "added" to it. +//* +//* static method difference takes vector minuend, vector subtrahend returns vector +//* Returns the difference between two vectors as a new vector. +//* +//* method subtract takes vector subtrahend returns nothing +//* Similar to difference, except that it doesn't create a new vector for the result, +//* but changes the vector it is called on by subtracting the "subtrahend" from it. +//* +//* method scale takes real factor returns nothing +//* Scales the vector it is called on by the given factor. +//* +//* method setLength takes real length returns nothing +//* Sets the length of the vector it is called on to the given value, maintaining it's orientation. +//* +//* static method dotProduct takes vector a, vector b returns real +//* Calculates the dot product (also called scalar product) of two vectors. +//* +//* static method crossProduct takes vector a, vector b returns vector +//* Calculates the cross product (also called vector product) of two vectors +//* and returns it as a new vector. +//* +//* static method tripleProductScalar takes vector a, vector b, vector c returns real +//* Calculates the triple scalar product of three vectors. +//* +//* static method tripleProductVector takes vector a, vector b, vector c returns vector +//* Calculates the triple vector product of three vectors and returns it as a new vector. +//* +//* +//* static method projectionVector takes vector projected, vector direction returns vector +//* Calculates the projection of the vector "projected" onto the vector "direction" +//* and returns it as a new vector. +//* Returns null if the vector direction has a length of 0. +//* +//* method projectVector takes vector direction returns nothing +//* Projects the vector it is called on onto the vector "direction". +//* Does nothing if the vector "direction" has a length of 0. +//* +//* static method projectionPlane takes vector projected, vector normal returns vector +//* Calculates the projection of the vector projected onto a plane defined by +//* it's normal vector and returns it as a new vector. +//* Returns null if the vector "normal" has a length of 0. +//* +//* method projectPlane takes vector normal returns nothing +//* Projects the vector it is called on onto a plane defined by it's normal vector. +//* Does nothing if the vector "normal" has a length of 0. +//* +//* static method getAngle takes vector a, vector b returns real +//* Returns the angle between two vectors, in radians, returns a value between 0 and pi. +//* Returns 0.0 if any of the vectors are 0 units long. +//* +//* method rotate takes vector axis, real angle returns nothing +//* Rotates the vector it is called on around the axis defined by the vector "axis" +//* by the given angle, which should be input in radians. +//* Does nothing if axis is 0 units long. +//* +//* +//* static method createTerrainPoint takes real x, real y returns vector +//* Creates a vector to the given terrain coordinate, taking it's z height into account. +//* +//* method getTerrainPoint takes real x, real y returns nothing +//* Sets the vector it is called on to the given terrain coordinate, taking it's z height into account. +//* +//* static method createTerrainNormal takes real x, real y, real sampleRadius returns vector +//* Creates the normal vector of the terrain at given coordinates. "sampleRadius" defines +//* how far apart the reference points will be, if they are further apart, the result will +//* be an impression of smoother terrain; normaly the value should be between 0 and 128. +//* +//* method getTerrainNormal takes real x, real y, real sampleRadius returns nothing +//* Sets the vector it is called on to the normal of the terrain at given coordinates. +//* +//* +//* method isInCylinder takes vector cylinderOrigin, vector cylinderHeight, real cylinderRadius returns boolean +//* Determines if a point is within a given cylinder. The cylinder's origin vector points +//* to the center of one of the two paralel circular sides, and the height vector points +//* from the origin point to the center of the other of the two paralel circular sides. +//* Returns false if the point is not in the cylinder or if the vector cylinderHeight is 0 units long. +//* +//* method isInCone takes vector coneOrigin, vector coneHeight, real coneRadius returns boolean +//* Determines if a point is within a given cone. The cone's origin vector points to the +//* center of the circular side, and the height vector points from the origin point to +//* the tip of the cone. +//* Returns false if the point is not in the cylinder or if the vector coneHeight is 0 units long. +//* +//* method isInSphere takes vector sphereOrigin, real sphereRadius returns boolean +//* Determines if a point is within a give sphere. The sphere's origin vector points to the +//* center of the sphere. +//* Returns false if the point is not in the sphere. +//***************************************************************** + + struct vector + real x + real y + real z + + static method create takes real x, real y, real z returns vector + local vector v = vector.allocate() + set v.x=x + set v.y=y + set v.z=z + return v + endmethod + + method getLength takes nothing returns real + return SquareRoot(.x*.x + .y*.y + .z*.z) + endmethod + + static method sum takes vector augend, vector addend returns vector + local vector v = vector.allocate() + set v.x = augend.x+addend.x + set v.y = augend.y+addend.y + set v.z = augend.z+addend.z + return v + endmethod + method add takes vector addend returns nothing + set this.x=this.x+addend.x + set this.y=this.y+addend.y + set this.z=this.z+addend.z + endmethod + + static method difference takes vector minuend, vector subtrahend returns vector + local vector v = vector.allocate() + set v.x = minuend.x-subtrahend.x + set v.y = minuend.y-subtrahend.y + set v.z = minuend.z-subtrahend.z + return v + endmethod + method subtract takes vector subtrahend returns nothing + set this.x=this.x-subtrahend.x + set this.y=this.y-subtrahend.y + set this.z=this.z-subtrahend.z + endmethod + + method scale takes real factor returns nothing + set this.x=this.x*factor + set this.y=this.y*factor + set this.z=this.z*factor + endmethod + + method setLength takes real length returns nothing + local real l = SquareRoot(.x*.x + .y*.y + .z*.z) + if l == 0.0 then + debug call BJDebugMsg("Attempted to set the length of a vector with no length!") + return + endif + set l = length/l + set this.x = this.x*l + set this.y = this.y*l + set this.z = this.z*l + endmethod + + static method dotProduct takes vector a, vector b returns real + return (a.x*b.x+a.y*b.y+a.z*b.z) + endmethod + + static method crossProduct takes vector a, vector b returns vector + local vector v = vector.allocate() + set v.x = a.y*b.z - a.z*b.y + set v.y = a.z*b.x - a.x*b.z + set v.z = a.x*b.y - a.y*b.x + return v + endmethod + + static method tripleProductScalar takes vector a, vector b, vector c returns real + return ((a.y*b.z - a.z*b.y)*c.x+(a.z*b.x - a.x*b.z)*c.y+(a.x*b.y - a.y*b.x)*c.z) + endmethod + + static method tripleProductVector takes vector a, vector b, vector c returns vector + local vector v = vector.allocate() + local real n = a.x*c.x+a.y*c.y+a.z*c.z + local real m = a.x*b.x+a.y*b.y+a.z*b.z + set v.x = b.x*n-c.x*m + set v.y = b.y*n-c.y*m + set v.z = b.z*n-c.z*m + return v + endmethod + +// ================================================================ + + static method projectionVector takes vector projected, vector direction returns vector + local vector v = vector.allocate() + local real l = direction.x*direction.x+direction.y*direction.y+direction.z*direction.z + if l == 0.0 then + call v.destroy() + debug call BJDebugMsg("Attempted to project onto a vector with no length!") + return null + endif + set l = (projected.x*direction.x+projected.y*direction.y+projected.z*direction.z) / l + set v.x = direction.x*l + set v.y = direction.y*l + set v.z = direction.z*l + return v + endmethod + method projectVector takes vector direction returns nothing + local real l = direction.x*direction.x+direction.y*direction.y+direction.z*direction.z + if l == 0.0 then + debug call BJDebugMsg("Attempted to project onto a vector with no length!") + return + endif + set l = (this.x*direction.x+this.y*direction.y+this.z*direction.z) / l + set this.x = direction.x*l + set this.y = direction.y*l + set this.z = direction.z*l + endmethod + + static method projectionPlane takes vector projected, vector normal returns vector + local vector v = vector.allocate() + local real l = normal.x*normal.x+normal.y*normal.y+normal.z*normal.z + if l == 0.0 then + call v.destroy() + debug call BJDebugMsg("Attempted to project onto an undefined plane!") + return null + endif + set l = (projected.x*normal.x+projected.y*normal.y+projected.z*normal.z) / l + set v.x = projected.x - normal.x*l + set v.y = projected.y - normal.y*l + set v.z = projected.z - normal.z*l + return v + endmethod + method projectPlane takes vector normal returns nothing + local real l = normal.x*normal.x+normal.y*normal.y+normal.z*normal.z + if l == 0.0 then + debug call BJDebugMsg("Attempted to project onto an undefined plane!") + return + endif + set l = (this.x*normal.x+this.y*normal.y+this.z*normal.z) / l + set this.x = this.x - normal.x*l + set this.y = this.y - normal.y*l + set this.z = this.z - normal.z*l + endmethod + + static method getAngle takes vector a, vector b returns real + local real l = SquareRoot(a.x*a.x + a.y*a.y + a.z*a.z)*SquareRoot(b.x*b.x + b.y*b.y + b.z*b.z) + if l == 0 then + debug call BJDebugMsg("Attempted to get angle between vectors with no length!") + return 0.0 + endif + return Acos((a.x*b.x+a.y*b.y+a.z*b.z)/l) //angle is returned in radians + endmethod + + method rotate takes vector axis, real angle returns nothing //angle is taken in radians + local real xx + local real xy + local real xz + local real yx + local real yy + local real yz + local real zx + local real zy + local real zz + local real al = axis.x*axis.x+axis.y*axis.y+axis.z*axis.z //axis length^2 + local real f + local real c = Cos(angle) + local real s = Sin(angle) + if al == 0.0 then + debug call BJDebugMsg("Attempted to project onto a vector with no length!") + return + endif + set f = (this.x*axis.x+this.y*axis.y+this.z*axis.z) / al + set zx = axis.x*f + set zy = axis.y*f + set zz = axis.z*f //axis component of rotated vector + set xx = this.x-zx + set xy = this.y-zy + set xz = this.z-zz //component of vector perpendicular to axis + set al = SquareRoot(al) + set yx = (axis.y*xz - axis.z*xy)/al + set yy = (axis.z*xx - axis.x*xz)/al //y same length as x by using cross product and dividing with axis length + set yz = (axis.x*xy - axis.y*xx)/al //x,y - coordinate system in which we rotate + set this.x=xx*c+yx*s+zx + set this.y=xy*c+yy*s+zy + set this.z=xz*c+yz*s+zz + endmethod + +// ================================================================ + + private static location loc = Location(0.0,0.0) + + static method createTerrainPoint takes real x, real y returns vector + local vector v = vector.allocate() + call MoveLocation(vector.loc,x,y) + set v.x=x + set v.y=y + set v.z=GetLocationZ(loc) + return v + endmethod + method getTerrainPoint takes real x, real y returns nothing + call MoveLocation(vector.loc,x,y) + set this.x=x + set this.y=y + set this.z=GetLocationZ(loc) + endmethod + + static method createTerrainNormal takes real x, real y, real sampleRadius returns vector + local vector v = vector.allocate() + local real zx + local real zy + call MoveLocation(vector.loc, x-sampleRadius, y) + set zx=GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x+sampleRadius, y) + set zx=zx-GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x, y-sampleRadius) + set zy=GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x, y+sampleRadius) + set zy=zy-GetLocationZ(vector.loc) + set sampleRadius=2*sampleRadius + set v.x = zx*sampleRadius + set v.y = zy*sampleRadius + set v.z = sampleRadius*sampleRadius + return v + endmethod + method getTerrainNormal takes real x, real y, real sampleRadius returns nothing + local real zx + local real zy + call MoveLocation(vector.loc, x-sampleRadius, y) + set zx=GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x+sampleRadius, y) + set zx=zx-GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x, y-sampleRadius) + set zy=GetLocationZ(vector.loc) + call MoveLocation(vector.loc, x, y+sampleRadius) + set zy=zy-GetLocationZ(vector.loc) + set sampleRadius=2*sampleRadius + set this.x = zx*sampleRadius + set this.y = zy*sampleRadius + set this.z = sampleRadius*sampleRadius + endmethod + +// ================================================================ + + method isInCylinder takes vector cylinderOrigin, vector cylinderHeight, real cylinderRadius returns boolean + local real l + + local real x = this.x-cylinderOrigin.x + local real y = this.y-cylinderOrigin.y + local real z = this.z-cylinderOrigin.z + if x*cylinderHeight.x+y*cylinderHeight.y+z*cylinderHeight.z < 0.0 then //point below cylinder + return false + endif + + set x = x-cylinderHeight.x + set y = y-cylinderHeight.y + set z = z-cylinderHeight.z + if x*cylinderHeight.x+y*cylinderHeight.y+z*cylinderHeight.z > 0.0 then //point above cylinder + return false + endif + + set l = cylinderHeight.x*cylinderHeight.x+cylinderHeight.y*cylinderHeight.y+cylinderHeight.z*cylinderHeight.z + if l == 0.0 then + debug call BJDebugMsg("Cylinder with no height!") + return false + endif + set l = (x*cylinderHeight.x+y*cylinderHeight.y+z*cylinderHeight.z) / l + set x = x - cylinderHeight.x*l + set y = y - cylinderHeight.y*l + set z = z - cylinderHeight.z*l + if x*x+y*y+z*z > cylinderRadius*cylinderRadius then //point outside cylinder + return false + endif + + return true + endmethod + + method isInCone takes vector coneOrigin, vector coneHeight, real coneRadius returns boolean + local real l + + local real x = this.x-coneOrigin.x + local real y = this.y-coneOrigin.y + local real z = this.z-coneOrigin.z + if x*coneHeight.x+y*coneHeight.y+z*coneHeight.z < 0.0 then //point below cone + return false + endif + + set l = coneHeight.x*coneHeight.x+coneHeight.y*coneHeight.y+coneHeight.z*coneHeight.z + if l == 0.0 then + debug call BJDebugMsg("cone with no height!") + return false + endif + set l = (x*coneHeight.x+y*coneHeight.y+z*coneHeight.z) / l + set x = x - coneHeight.x*l + set y = y - coneHeight.y*l + set z = z - coneHeight.z*l + if SquareRoot(x*x+y*y+z*z) > coneRadius*(1.0-l) then //point outside cone + return false + endif + + return true + endmethod + + method isInSphere takes vector sphereOrigin, real sphereRadius returns boolean + if sphereRadius*sphereRadius < ((this.x-sphereOrigin.x)*(this.x-sphereOrigin.x)+(this.y-sphereOrigin.y)*(this.y-sphereOrigin.y)+(this.z-sphereOrigin.z)*(this.z-sphereOrigin.z)) then + return false + endif + return true + endmethod + endstruct + +endlibrary +library VectorLib requires Vector // For backwards compatibility. +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_xebasic.j b/plugin/AdicHelper/lib/cj_xebasic.j new file mode 100644 index 0000000..6a34386 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_xebasic.j @@ -0,0 +1,48 @@ +//Edit By TigerCN +library xebasic +//************************************************************************** +// +// xebasic 0.4 +// ======= +// XE_DUMMY_UNITID : Rawcode of the dummy unit in your map. It should +// use the dummy.mdx model, so remember to import it as +// well, just use copy&paste to copy the dummy from the +// xe map to yours, then change the rawcode. +// +// XE_HEIGHT_ENABLER: Medivh's raven form ability, you may need to change +// this rawcode to another spell that morphs into a flier +// in case you modified medivh's spell in your map. +// +// XE_TREE_RECOGNITION: The ancients' Eat tree ability, same as with medivh +// raven form, you might have to change it. +// +// XE_ANIMATION_PERIOD: The global period of animation used by whatever +// timer that depends on it, if you put a low value +// the movement will look good but it may hurt your +// performance, if instead you use a high value it +// will not lag but will be fast. +// +// XE_MAX_COLLISION_SIZE: The maximum unit collision size in your map, if +// you got a unit bigger than 197.0 it would be +// a good idea to update this constant, since some +// enums will not find it. Likewise, if none of +// your units can go bellow X and X is much smaller +// than 197.0, it would be a good idea to update +// as well, since it will improve the performance +// those enums. +// +// Notice you probably don't have to update this library, unless I specify +// there are new constants which would be unlikely. +// +//************************************************************************** + +//=========================================================================== + globals + constant integer XE_DUMMY_UNITID = 'e000' + constant integer XE_HEIGHT_ENABLER = 'Amrf' + constant integer XE_TREE_RECOGNITION = 'Aeat' + constant real XE_ANIMATION_PERIOD = 0.025 + constant real XE_MAX_COLLISION_SIZE = 197.0 + endglobals + +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/lib/cj_xefx.j b/plugin/AdicHelper/lib/cj_xefx.j new file mode 100644 index 0000000..4879a35 --- /dev/null +++ b/plugin/AdicHelper/lib/cj_xefx.j @@ -0,0 +1,211 @@ +//Edit By TigerCN +library xefx initializer init requires xebasic +//************************************************** +// xefx 0.6 +// -------- +// Recommended: ARGB (adds ARGBrecolor method) +// For your movable fx needs +// +//************************************************** + +//================================================== + globals + private constant integer MAX_INSTANCES = 8190 //change accordingly. + private constant real RECYCLE_DELAY = 4.0 + //recycling, in order to show the effect correctly, must wait some time before + //removing the unit. + private timer recycler + private timer NOW + endglobals + + private struct recyclebin extends array + + unit u + real schedule + static recyclebin end=0 + static recyclebin begin=0 + + static method Recycle takes nothing returns nothing + call RemoveUnit(.begin.u) //this unit is private, systems shouldn't mess with it. + set .begin.u=null + set .begin=recyclebin(integer(.begin)+1) + if(.begin==.end) then + set .begin=0 + set .end=0 + else + call TimerStart(recycler, .begin.schedule-TimerGetElapsed(NOW), false, function recyclebin.Recycle) + endif + endmethod + + endstruct + + private function init takes nothing returns nothing + set recycler=CreateTimer() + set NOW=CreateTimer() + call TimerStart(NOW,43200,true,null) + endfunction + + struct xefx[MAX_INSTANCES] + + public integer tag=0 + private unit dummy + private effect fx=null + private real zang=0.0 + private integer r=255 + private integer g=255 + private integer b=255 + private integer a=255 + private integer abil=0 + + static method create takes real x, real y, real facing returns xefx + local xefx this=xefx.allocate() + set this.dummy= CreateUnit(Player(15), XE_DUMMY_UNITID, x,y, facing*bj_RADTODEG) + call UnitAddAbility(this.dummy,XE_HEIGHT_ENABLER) + call UnitAddAbility(this.dummy,'Aloc') + call UnitRemoveAbility(this.dummy,XE_HEIGHT_ENABLER) + call SetUnitX(this.dummy,x) + call SetUnitY(this.dummy,y) + return this + endmethod + + method operator owner takes nothing returns player + return GetOwningPlayer(this.dummy) + endmethod + + method operator owner= takes player p returns nothing + call SetUnitOwner(this.dummy,p,false) + endmethod + + method operator teamcolor= takes playercolor c returns nothing + call SetUnitColor(this.dummy,c) + endmethod + + method operator scale= takes real value returns nothing + call SetUnitScale(this.dummy,value,value,value) + endmethod + + //! textmacro XEFX_colorstuff takes colorname, colorvar + method operator $colorname$ takes nothing returns integer + return this.$colorvar$ + endmethod + + method operator $colorname$= takes integer value returns nothing + set this.$colorvar$=value + call SetUnitVertexColor(this.dummy,this.r,this.g,this.b,this.a) + endmethod + //! endtextmacro + //! runtextmacro XEFX_colorstuff("red","r") + //! runtextmacro XEFX_colorstuff("green","g") + //! runtextmacro XEFX_colorstuff("blue","b") + //! runtextmacro XEFX_colorstuff("alpha","a") + + method recolor takes integer r, integer g , integer b, integer a returns nothing + set this.r=r + set this.g=g + set this.b=b + set this.a=a + call SetUnitVertexColor(this.dummy,this.r,this.g,this.b,this.a) + endmethod + + implement optional ARGBrecolor + + method operator abilityid takes nothing returns integer + return this.abil + endmethod + + method operator abilityid= takes integer a returns nothing + if(this.abil!=0) then + call UnitRemoveAbility(this.dummy,this.abil) + endif + if(a!=0) then + call UnitAddAbility(this.dummy,a) + endif + set this.abil=a + endmethod + + method flash takes string fx returns nothing + call DestroyEffect(AddSpecialEffectTarget(fx,this.dummy,"origin")) + endmethod + + method operator xyangle takes nothing returns real + return GetUnitFacing(this.dummy)*bj_DEGTORAD + endmethod + + method operator xyangle= takes real value returns nothing + call SetUnitFacing(this.dummy,value*bj_RADTODEG) + endmethod + + method operator zangle takes nothing returns real + return this.zang + endmethod + + method operator zangle= takes real value returns nothing + local integer i=R2I(value*bj_RADTODEG+90.5) + set this.zang=value + if(i>=180) then + set i=179 + elseif(i<0) then + set i=0 + endif + call SetUnitAnimationByIndex(this.dummy, i ) + endmethod + + method operator x takes nothing returns real + return GetUnitX(this.dummy) + endmethod + method operator y takes nothing returns real + return GetUnitY(this.dummy) + endmethod + method operator z takes nothing returns real + return GetUnitFlyHeight(this.dummy) + endmethod + + method operator z= takes real value returns nothing + call SetUnitFlyHeight(this.dummy,value,0) + endmethod + + method operator x= takes real value returns nothing + call SetUnitX(this.dummy,value) + endmethod + + method operator y= takes real value returns nothing + call SetUnitY(this.dummy,value) + endmethod + + method operator fxpath= takes string newpath returns nothing + if (this.fx!=null) then + call DestroyEffect(this.fx) + endif + if (newpath=="") then + set this.fx=null + else + set this.fx=AddSpecialEffectTarget(newpath,this.dummy,"origin") + endif + endmethod + + private method onDestroy takes nothing returns nothing + if(this.abil!=0) then + call UnitRemoveAbility(this.dummy,this.abil) + endif + if(this.fx!=null) then + call DestroyEffect(this.fx) + set this.fx=null + endif + if (recyclebin.end==MAX_INSTANCES) then + call TimerStart(recycler,0,false,function recyclebin.Recycle) + call ExplodeUnitBJ(this.dummy) + else + set recyclebin.end.u=this.dummy + set recyclebin.end.schedule=TimerGetElapsed(NOW)+RECYCLE_DELAY + set recyclebin.end= recyclebin( integer(recyclebin.end)+1) + if( recyclebin.end==1) then + call TimerStart(recycler, RECYCLE_DELAY, false, function recyclebin.Recycle) + endif + call SetUnitOwner(this.dummy,Player(15),false) + endif + set this.dummy=null + endmethod + + endstruct + +endlibrary \ No newline at end of file diff --git a/plugin/AdicHelper/update.ini b/plugin/AdicHelper/update.ini new file mode 100644 index 0000000..effe9ab --- /dev/null +++ b/plugin/AdicHelper/update.ini @@ -0,0 +1,3 @@ +branch=stable +lang=en +updtesh=0 diff --git a/plugin/DefaultPluginLoader.lua b/plugin/DefaultPluginLoader.lua new file mode 100644 index 0000000..d758ec2 --- /dev/null +++ b/plugin/DefaultPluginLoader.lua @@ -0,0 +1,17 @@ +require "sys" + +local loader = {} + +loader.load = function(path) + loader.dll = sys.load_library(path) + return loader.dll ~= nil +end + +loader.unload = function() + if loader.dll then + sys.unload_library(loader.dll) + loader.dll = nil + end +end + +return loader diff --git a/plugin/YDClient.dll b/plugin/YDClient.dll new file mode 100644 index 0000000..d0c1078 Binary files /dev/null and b/plugin/YDClient.dll differ diff --git a/plugin/YDClient.lua b/plugin/YDClient.lua new file mode 100644 index 0000000..befd675 --- /dev/null +++ b/plugin/YDClient.lua @@ -0,0 +1,29 @@ +require "localization" +local ffi = require "ffi" + +local loader = {} + +loader.load = function(path) + local s, r = pcall(ffi.load, __(path:string())) + + if not s then + log.error('failed: ' .. r) + return false + end + loader.dll = r + + ffi.cdef[[ + uint32_t Start(uint32_t major, uint32_t minor); + ]] + + if 0 == loader.dll.Start(ydwe_version.minor, ydwe_version.revision) then + log.error('failed: in YDClient.dll!Start') + return false + end + return true +end + +loader.unload = function() +end + +return loader diff --git a/plugin/YDClient.plcfg b/plugin/YDClient.plcfg new file mode 100644 index 0000000..8331e8c --- /dev/null +++ b/plugin/YDClient.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDClient +[Load] +Enable = 1 +Loader = YDClient.lua +Dll = YDClient.dll diff --git a/plugin/YDColorizer/WinApi.dll b/plugin/YDColorizer/WinApi.dll new file mode 100644 index 0000000..88f2382 Binary files /dev/null and b/plugin/YDColorizer/WinApi.dll differ diff --git a/plugin/YDColorizer/YDColorizer.dll b/plugin/YDColorizer/YDColorizer.dll new file mode 100644 index 0000000..25a8a1e Binary files /dev/null and b/plugin/YDColorizer/YDColorizer.dll differ diff --git a/plugin/YDColorizer/YDColorizer.lua b/plugin/YDColorizer/YDColorizer.lua new file mode 100644 index 0000000..c153015 --- /dev/null +++ b/plugin/YDColorizer/YDColorizer.lua @@ -0,0 +1,45 @@ +local loader = {} + +loader.load = function(path) + if global_config["ThirdPartyPlugin"]["EnableDotNetSupport"] ~= "1" then + log.warn('failed: disable') + return false + end + + require "dotnet" + if not dotnet.initialized then + log.error('failed: not support') + return false + end + + local obj = dotnet:load(path, 'WEInit') + if not obj then + log.error('failed: load failed') + return false + end + if obj:error_code() ~= 0 then + log.error(string.format('failed: load failed(%08X)', obj:error_code())) + return false + end + + local result, msg = obj:call('begin') + if result == nil then + if msg then + log.error('failed: call failed(' .. msg .. ')') + return false + else + log.error('failed: call failed(unknown)') + return false + end + elseif result ~= 0 then + log.error(string.format('failed: call failed(%08X)', result)) + return false + end + + return true +end + +loader.unload = function() +end + +return loader diff --git a/plugin/YDColorizer/YDColorizer.plcfg b/plugin/YDColorizer/YDColorizer.plcfg new file mode 100644 index 0000000..6a74b79 --- /dev/null +++ b/plugin/YDColorizer/YDColorizer.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDColorizer +[Load] +Enable = 1 +Loader = YDColorizer.lua +Dll = YDColorizer.dll diff --git a/plugin/YDColorizer/YDColorizerConfig.cfg b/plugin/YDColorizer/YDColorizerConfig.cfg new file mode 100644 index 0000000..842aa99 --- /dev/null +++ b/plugin/YDColorizer/YDColorizerConfig.cfg @@ -0,0 +1,12 @@ +Language=0 +; 语言,0->简体中文,1->繁体中文 +NotifyIcon=0 +; 托盘图标,0为不显示,非0为显示 +btn1stColor=255,0,0 +; 主颜色的rgb值 +btn2ndColor=0,255,0 +; 第一候选颜色的rgb值 +btn3rdColor=0,0,255 +; 第二候选颜色的rgb值 +btn4thColor=255,255,0 +; 第三候选颜色的rgb值 diff --git a/plugin/YDFont/YDFont.dll b/plugin/YDFont/YDFont.dll new file mode 100644 index 0000000..b15e7f2 Binary files /dev/null and b/plugin/YDFont/YDFont.dll differ diff --git a/plugin/YDFont/YDFont.lua b/plugin/YDFont/YDFont.lua new file mode 100644 index 0000000..31026d4 --- /dev/null +++ b/plugin/YDFont/YDFont.lua @@ -0,0 +1,38 @@ +require "localization" +local ffi = require "ffi" + +local loader = {} + +loader.load = function(path) + if global_config["Font"]["FontEnable"] ~= "1" then + log.warn('failed: disable') + return false + end + + local s, r = pcall(ffi.load, __(path:string())) + + if not s then + log.error('failed: ' .. r) + return false + end + loader.dll = r + + ffi.cdef[[ + bool SetFontByName(const char* name, size_t size); + ]] + + local name = global_config["Font"]["FontName"] + local size = global_config["Font"]["FontSize"] + if name == '' then name = 'system' end + if size == '' then size = '12' end + if not loader.dll.SetFontByName(name, tonumber(size)) then + log.error('failed: in YDFont.dll!SetFontByName') + return false + end + return true +end + +loader.unload = function() +end + +return loader diff --git a/plugin/YDFont/YDFont.plcfg b/plugin/YDFont/YDFont.plcfg new file mode 100644 index 0000000..82edcda --- /dev/null +++ b/plugin/YDFont/YDFont.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDFont +[Load] +Enable = 1 +Loader = YDFont.lua +Dll = YDFont.dll diff --git a/plugin/YDInternalIDShow.dll b/plugin/YDInternalIDShow.dll new file mode 100644 index 0000000..4cdef61 Binary files /dev/null and b/plugin/YDInternalIDShow.dll differ diff --git a/plugin/YDInternalIdShow.lua b/plugin/YDInternalIdShow.lua new file mode 100644 index 0000000..bf5e7ee --- /dev/null +++ b/plugin/YDInternalIdShow.lua @@ -0,0 +1,21 @@ +require "sys" + +local loader = {} + +loader.load = function(path) + if global_config["FeatureToggle"]["EnableShowInternalAttributeId"] ~= "1" then + log.warn('failed: disable') + return false + end + loader.dll = sys.load_library(path) + return loader.dll ~= nil +end + +loader.unload = function() + if loader.dll then + sys.unload_library(loader.dll) + loader.dll = nil + end +end + +return loader diff --git a/plugin/YDInternalIdShow.plcfg b/plugin/YDInternalIdShow.plcfg new file mode 100644 index 0000000..13e3295 --- /dev/null +++ b/plugin/YDInternalIdShow.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDInternalIdShow +[Load] +Enable = 1 +Loader = YDInternalIdShow.lua +Dll = YDInternalIdShow.dll diff --git a/plugin/YDTaskbarSupport.dll b/plugin/YDTaskbarSupport.dll new file mode 100644 index 0000000..f357cbf Binary files /dev/null and b/plugin/YDTaskbarSupport.dll differ diff --git a/plugin/YDTaskbarSupport.lua b/plugin/YDTaskbarSupport.lua new file mode 100644 index 0000000..181abe7 --- /dev/null +++ b/plugin/YDTaskbarSupport.lua @@ -0,0 +1,23 @@ +require "localization" +local ffi = require "ffi" + +local loader = {} + +loader.load = function(path) + local s, r = pcall(ffi.load, __(path:string())) + if not s then + log.error('failed: ' .. r) + return false + end + loader.dll = r + ffi.cdef[[ + void Initialize(); + ]] + loader.dll.Initialize() + return true +end + +loader.unload = function() +end + +return loader diff --git a/plugin/YDTaskbarSupport.plcfg b/plugin/YDTaskbarSupport.plcfg new file mode 100644 index 0000000..36bd82d --- /dev/null +++ b/plugin/YDTaskbarSupport.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDTaskbarSupport +[Load] +Enable = 1 +Loader = YDTaskbarSupport.lua +Dll = YDTaskbarSupport.dll diff --git a/plugin/YDTrigger.dll b/plugin/YDTrigger.dll new file mode 100644 index 0000000..6f2e942 Binary files /dev/null and b/plugin/YDTrigger.dll differ diff --git a/plugin/YDTrigger.ini b/plugin/YDTrigger.ini new file mode 100644 index 0000000..c267cb4 --- /dev/null +++ b/plugin/YDTrigger.ini @@ -0,0 +1,6 @@ +[General] +[BlizzardJ] +USE_BJ_ANTI_LEAK = 1 +USE_BJ_OPTIMIZATION = 0 +USE_BJ_OPTIMIZATION_PRO = 0 +USE_BJ_INLINE = 0 \ No newline at end of file diff --git a/plugin/YDTrigger.lua b/plugin/YDTrigger.lua new file mode 100644 index 0000000..8b315a4 --- /dev/null +++ b/plugin/YDTrigger.lua @@ -0,0 +1,29 @@ +require "sys" + +local loader = {} + +loader.load = function(path) + if global_config["ScriptCompiler"]["EnableCJass"] == "1" then + log.warn('failed: enable cjass') + return false + end + if global_config["ThirdPartyPlugin"]["EnableYDTrigger"] == "0" then + log.warn('failed: disable') + return false + end + + -- YDTrigger MPQ· + mpq_util:load_mpq("ydtrigger", 15) + + loader.dll = sys.load_library(path) + return loader.dll ~= nil +end + +loader.unload = function() + if loader.dll then + sys.unload_library(loader.dll) + loader.dll = nil + end +end + +return loader diff --git a/plugin/YDTrigger.plcfg b/plugin/YDTrigger.plcfg new file mode 100644 index 0000000..16122fa --- /dev/null +++ b/plugin/YDTrigger.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDTrigger +[Load] +Enable = 1 +Loader = YDTrigger.lua +Dll = YDTrigger.dll diff --git a/plugin/YDTrigger/BJOptimization/Animation.h b/plugin/YDTrigger/BJOptimization/Animation.h new file mode 100644 index 0000000..9383053 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Animation.h @@ -0,0 +1,23 @@ +# /* +# * BJŻ -- Animation +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_ANIMATION_H +#define INCLUDE_BJ_OPTIMIZATION_ANIMATION_H +# +# define ResetUnitAnimation(unit) SetUnitAnimation(unit, "stand") +# define SetUnitTimeScalePercent(unit, percentScale) SetUnitTimeScale(unit, (percentScale) * 0.01) +# define SetUnitScalePercent(unit, X, Y, Z) SetUnitScale(unit, (X) * 0.01, (Y) * 0.01, (Z) * 0.01) +# define SetUnitVertexColorBJ(unit, red, green, blue, t) SetUnitVertexColor(unit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(t))) +# define UnitAddIndicatorBJ(unit, red, green, blue, t) AddIndicator(unit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(t))) +# define DestructableAddIndicatorBJ(d, red, green, blue, t) AddIndicator(d, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(t))) +# define ItemAddIndicatorBJ(item, red, green, blue, t) AddIndicator(item, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(t))) +# define QueueUnitAnimationBJ(unit, animation) QueueUnitAnimation(unit, animation) +# define SetDestructableAnimationBJ(d, animation) SetDestructableAnimation(d, animation) +# define QueueDestructableAnimationBJ(d, animation) QueueDestructableAnimation(d, animation) +# define SetDestAnimationSpeedPercent(d, percentScale) SetDestructableAnimationSpeed(d, (percentScale) * 0.01) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Camera.h b/plugin/YDTrigger/BJOptimization/Camera.h new file mode 100644 index 0000000..e5e64bd --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Camera.h @@ -0,0 +1,26 @@ +# /* +# * BJŻ -- Camera +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_CAMERA_H +#define INCLUDE_BJ_OPTIMIZATION_CAMERA_H +# +# define CameraSetupGetFieldSwap(field, setup) CameraSetupGetField(setup, field) +# define GetCurrentCameraBoundsMapRectBJ() Rect(GetCameraBoundMinX(), GetCameraBoundMinY(), GetCameraBoundMaxX(), GetCameraBoundMaxY()) +# define GetEntireMapRect() GetWorldBounds() +# define CameraSetSmoothingFactorBJ(factor) CameraSetSmoothingFactor(factor) +# define CameraResetSmoothingFactorBJ() CameraSetSmoothingFactor(0) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetCameraBoundsMapRect() bj_mapInitialCameraBounds +# define GetPlayableMapRect() bj_mapInitialPlayableArea +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Destructable.h b/plugin/YDTrigger/BJOptimization/Destructable.h new file mode 100644 index 0000000..a144589 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Destructable.h @@ -0,0 +1,28 @@ +# /* +# * BJŻ -- Destructable +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_DESTRUCTABLE_H +#define INCLUDE_BJ_OPTIMIZATION_DESTRUCTABLE_H +# +# define ShowDestructableBJ(flag, d) ShowDestructable(d, flag) +# define SetDestructableInvulnerableBJ(d, flag) SetDestructableInvulnerable(d, flag) +# define IsDestructableInvulnerableBJ(d, flag) IsDestructableInvulnerable(d) +# define EnumDestructablesInRectAll(r, actionFunc) EnumDestructablesInRect(r, null, actionFunc) +# define RandomDestructableInRectSimpleBJ(r) RandomDestructableInRectBJ(r, null) +# define SetDestructableMaxLifeBJ(d, max) SetDestructableMaxLife(d, max) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetLastCreatedDestructable() bj_lastCreatedDestructable +# define IsDestructableDeadBJ(d) (GetDestructableLife(d) <= 0) +# define IsDestructableAliveBJ(d) (GetDestructableLife(d) > 0) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Environment.h b/plugin/YDTrigger/BJOptimization/Environment.h new file mode 100644 index 0000000..fd16334 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Environment.h @@ -0,0 +1,48 @@ +# /* +# * BJŻ -- Environment +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_ENVIRONMENT_H +#define INCLUDE_BJ_OPTIMIZATION_ENVIRONMENT_H +# +# define RemoveWeatherEffectBJ(effect) RemoveWeatherEffect(effect) +# define TerrainDeformationStopBJ(deformation, duration) TerrainDeformStop(deformation, R2I((duration) * 1000)) +# define DestroyLightningBJ(bolt) DestroyLightning(bolt) +# define GetLightningColorRBJ(bolt) GetLightningColorR(bolt) +# define GetLightningColorGBJ(bolt) GetLightningColorG(bolt) +# define GetLightningColorBBJ(bolt) GetLightningColorB(bolt) +# define SetLightningColorBJ(bolt, r, g, b, a) SetLightningColor(bolt, r, g, b, a) +# define GetAbilityEffectBJ(abilcode, t, index) GetAbilityEffectById(abilcode, t, index) +# define GetAbilitySoundBJ(abilcode, t) GetAbilitySoundById(abilcode, t) +# define SetWaterBaseColorBJ(red, green, blue, transparency) SetWaterBaseColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(transparency))) +# define FogEnableOn() FogEnable(true) +# define FogEnableOff() FogEnable(false) +# define FogMaskEnableOn() FogMaskEnable(true) +# define FogMaskEnableOff() FogMaskEnable(false) +# define UseTimeOfDayBJ(flag) SuspendTimeOfDay(not (flag)) +# define SetTerrainFogExBJ(style, zstart, zend, d, r, g, b) SetTerrainFogEx(style, zstart, zend, d, (r) * 0.01, (g) * 0.01, (b) * 0.01) +# define ResetTerrainFogBJ() ResetTerrainFog() +# define SetDoodadAnimationRectBJ(animName, doodadID, r) SetDoodadAnimationRect(r, doodadID, animName, false) +# define AddUnitAnimationPropertiesBJ(add, p, unit) AddUnitAnimationProperties(unit, p, add) +# define ShowImageBJ(flag, image) ShowImage(image, flag) +# define SetImageColorBJ(image, red, green, blue, alpha) SetImageColor(image, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-(alpha))) +# define ShowUbersplatBJ(flag, splat) ShowUbersplat(splat, flag) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetLastCreatedWeatherEffect() bj_lastCreatedWeatherEffect +# define GetLastCreatedTerrainDeformation() bj_lastCreatedTerrainDeformation +# define GetLastCreatedLightningBJ() bj_lastCreatedLightning +# define GetLastCreatedFogModifier() bj_lastCreatedFogModifier +# define GetLastCreatedImage() bj_lastCreatedImage +# define GetLastCreatedUbersplat() bj_lastCreatedUbersplat +# +#endif + diff --git a/plugin/YDTrigger/BJOptimization/General.h b/plugin/YDTrigger/BJOptimization/General.h new file mode 100644 index 0000000..f7ac457 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/General.h @@ -0,0 +1,39 @@ +# /* +# * BJŻ -- General +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_GENERAL_H +#define INCLUDE_BJ_OPTIMIZATION_GENERAL_H +# +# define StringIdentity(theString) GetLocalizedString(theString) +# define PercentTo255(percentage) PercentToInt(percentage, 255) +# define GetTimeOfDay() GetFloatGameState(GAME_STATE_TIME_OF_DAY) +# define SetTimeOfDay(time) SetFloatGameState(GAME_STATE_TIME_OF_DAY, time) +# define SetTimeOfDayScalePercentBJ(scalePercent) SetTimeOfDayScale((scalePercent) * 0.01) +# +# define SubStringBJ(source, start, end) SubString(source, (start)-1, end) +# define GetHandleIdBJ(h) GetHandleId(h) +# define StringHashBJ(s) StringHash(s) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define QueuedTriggerCountBJ() bj_queuedExecTotal +# define IsTriggerQueueEmptyBJ() (bj_queuedExecTotal <= 0) +# define IsTriggerQueuedBJ(trig) (QueuedTriggerGetIndex(trig) != -1) +# define GetForLoopIndexA() bj_forLoopAIndex +# define GetForLoopIndexB() bj_forLoopBIndex +# define IsTriggerQueueEmptyBJ() (bj_queuedExecTotal <= 0) +# define IsTriggerQueuedBJ(trig) (QueuedTriggerGetIndex(trig) != -1) +# define GetForLoopIndexA() bj_forLoopAIndex +# define GetBooleanAnd(A, B) ((A) and (B)) +# define GetBooleanOr(A, B) ((A) or (B)) +# define GetTimeOfDayScalePercentBJ() (GetTimeOfDayScale() * 100) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Group.h b/plugin/YDTrigger/BJOptimization/Group.h new file mode 100644 index 0000000..b7621dd --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Group.h @@ -0,0 +1,26 @@ +# /* +# * BJŻ -- Group +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_GROUP_H +#define INCLUDE_BJ_OPTIMIZATION_GROUP_H +# +# define GroupAddUnitSimple(unit, group) GroupAddUnit(group, unit) +# define GroupRemoveUnitSimple(unit, group) GroupRemoveUnit(group, unit) +# define ForceAddPlayerSimple(player, force) ForceAddPlayer(force, player) +# define ForceRemovePlayerSimple(player, force) ForceRemovePlayer(force, player) +# define GetUnitsInRangeOfLocAll(radius, location) GetUnitsInRangeOfLocMatching(radius, location, null) +# define GetUnitsOfPlayerAll(player) GetUnitsOfPlayerMatching(player, null) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetPlayersAll() bj_FORCE_ALL_PLAYERS +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Hero.h b/plugin/YDTrigger/BJOptimization/Hero.h new file mode 100644 index 0000000..5ec555e --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Hero.h @@ -0,0 +1,63 @@ +# /* +# * BJŻ -- Hero +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_HERO_H +#define INCLUDE_BJ_OPTIMIZATION_HERO_H +# +# include +# include +# include +# +# define GetItemLifeBJ(widget) GetWidgetLife(widget) +# define SetItemLifeBJ(widget, life) SetWidgetLife(widget, life) +# define AddHeroXPSwapped(xp, hero, show) AddHeroXP(hero, xp, show) +# define DecUnitAbilityLevelSwapped(abilcode, unit) DecUnitAbilityLevel(unit, abilcode) +# define IncUnitAbilityLevelSwapped(abilcode, unit) IncUnitAbilityLevel(unit, abilcode) +# define SetUnitAbilityLevelSwapped(abilcode, unit, level) SetUnitAbilityLevel(unit, abilcode, level) +# define GetUnitAbilityLevelSwapped(abilcode, unit) GetUnitAbilityLevel(unit, abilcode) +# define UnitRemoveBuffBJ(abilcode, unit) UnitRemoveAbility(unit, abilcode) +# define UnitAddItemSwapped(item, hero) UnitAddItem(hero, item) +# define UnitRemoveItemSwapped(item, hero) UnitRemoveItem(hero, item) YDNL set bj_lastRemovedItem = item +# define GetLearnedSkillBJ() GetLearnedSkill() +# define SuspendHeroXPBJ(hero, flag) SuspendHeroXP(hero, not (flag)) +# define SetPlayerHandicapXPBJ(player, handicapPercent) SetPlayerHandicapXP(player, (handicapPercent) * 0.01) +# define SetPlayerHandicapBJ(player, handicapPercent) SetPlayerHandicap(player, (handicapPercent) * 0.01) +# define GetLearnedSkillBJ() GetLearnedSkill() +# define UnitDropItemPointBJ(unit, item, x, y) UnitDropItemPoint(unit, item, x, y) +# define UnitDropItemSlotBJ(unit, item, slot) UnitDropItemSlot(unit, item, (slot)-1) +# define UnitDropItemTargetBJ(unit, item, target) UnitDropItemTarget(unit, item, target) +# define UnitUseItemDestructable(unit, item, target) UnitUseItemTarget(unit, item, target) +# define UnitItemInSlotBJ(unit, slot) UnitItemInSlot(unit, (slot)-1) +# define UnitInventorySizeBJ(unit) UnitInventorySize(unit) +# define SetItemInvulnerableBJ(item, flag) SetItemInvulnerable(item, flag) +# define SetItemDropOnDeathBJ(item, flag) SetItemDropOnDeath(item, flag) +# define SetItemDroppableBJ(item, flag) SetItemDroppable(item, flag) +# define SetItemPlayerBJ(item, player, changeColor) SetItemPlayer(item, player, changeColor) +# define SetItemVisibleBJ(show, item) SetItemVisible(item, show) +# define ChooseRandomItemBJ(level) ChooseRandomItem(level) +# define ChooseRandomItemExBJ(level, type) ChooseRandomItemEx(type, level) +# define ChooseRandomNPBuildingBJ() ChooseRandomNPBuilding() +# define ChooseRandomCreepBJ(level) ChooseRandomCreep(level) +# define EnumItemsInRectBJ(r, actionFunc) EnumItemsInRect(r, null, actionFunc) +# define RandomItemInRectSimpleBJ(r) RandomItemInRectBJ(r, null) + +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define UnitHasBuffBJ(unit, buffcode) (GetUnitAbilityLevel(unit, buffcode) > 0) +# define GetLastCreatedItem() bj_lastCreatedItem +# define GetLastRemovedItem() bj_lastRemovedItem +# define GetPlayerHandicapXPBJ(player) (GetPlayerHandicapXP(player) * 100) +# define GetPlayerHandicapBJ(player) (GetPlayerHandicap(player) * 100) +# define UnitHasItemOfTypeBJ(unit, itemId) (GetInventoryIndexOfItemTypeBJ(unit, itemId) > 0) +# define IsItemHiddenBJ(item) (not IsItemVisible(item)) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Math.h b/plugin/YDTrigger/BJOptimization/Math.h new file mode 100644 index 0000000..d0879e8 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Math.h @@ -0,0 +1,32 @@ +# /* +# * BJŻ -- Math +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_MATH_H +#define INCLUDE_BJ_OPTIMIZATION_MATH_H +# +# define bj_PI 3.14159 +# define bj_RADTODEG 57.2958 +# define bj_DEGTORAD 0.0174538 +# define SinBJ(degrees) Sin((degrees)*bj_DEGTORAD) +# define CosBJ(degrees) Cos((degrees)*bj_DEGTORAD) +# define SinBJ(degrees) Sin((degrees)*bj_DEGTORAD) +# define TanBJ(degrees) Tan((degrees)*bj_DEGTORAD) +# define GetRandomDirectionDeg() GetRandomReal(0, 360) +# define GetRandomPercentageBJ() GetRandomReal(0, 100) +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define AsinBJ(degrees) (Asin(degrees)*bj_RADTODEG) +# define AcosBJ(degrees) (Acos(degrees)*bj_RADTODEG) +# define AtanBJ(degrees) (Atan(degrees)*bj_RADTODEG) +# define Atan2BJ(y, x) (Atan2(y, x)*bj_RADTODEG) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Pro_WidgetLift.h b/plugin/YDTrigger/BJOptimization/Pro_WidgetLift.h new file mode 100644 index 0000000..3bf6a15 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Pro_WidgetLift.h @@ -0,0 +1,45 @@ +# /* +# * BJŻ -- Pro.WidgetLift +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_PRO_WIDGET_LIFT_H +#define INCLUDE_BJ_OPTIMIZATION_PRO_WIDGET_LIFT_H +# +# /* +# * 1.GetUnitState(unit, UNIT_STATE_LIFE) 滻Ϊ GetWidgetLife(unit) +# * 2.жϸøΪȷֵ +# */ +# +# undef GetUnitStateSwap +# define GetUnitStateSwap(state, unit) \ + YDTRIGGER_COMMON_SWITCH(GET_UNIT_STATE_SWAP_## state, ( \ + GetWidgetLife(unit), \ + GetUnitState(unit, UNIT_STATE_MAX_LIFE), \ + GetUnitState(unit, UNIT_STATE_MANA), \ + GetUnitState(unit, UNIT_STATE_MAX_MANA), \ + )) +# +# define GET_UNIT_STATE_SWAP_UNIT_STATE_LIFE 0 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MAX_LIFE 1 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MANA 2 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MAX_MANA 3 +# +# undef SetUnitLifeBJ +# define SetUnitLifeBJ(unit, value) SetWidgetLife(unit, RMaxBJ(0, value)) +# +# undef IsUnitDeadBJ +# define IsUnitDeadBJ(unit) (GetWidgetLife(unit) <= 0.405) +# +# undef IsUnitAliveBJ +# define IsUnitAliveBJ(unit) (GetWidgetLife(unit) > 0.405) +# +# undef IsDestructableDeadBJ +# define IsDestructableDeadBJ(d) (GetDestructableLife(d) <= 0.405) +# +# undef IsDestructableAliveBJ +# define IsDestructableAliveBJ(d) (GetDestructableLife(d) > 0.405) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Quest.h b/plugin/YDTrigger/BJOptimization/Quest.h new file mode 100644 index 0000000..76dc269 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Quest.h @@ -0,0 +1,34 @@ +# /* +# * BJŻ -- Quest +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_QUEST_H +#define INCLUDE_BJ_OPTIMIZATION_QUEST_H +# +# define DestroyQuestBJ(quest) DestroyQuest(quest) +# define QuestSetEnabledBJ(enabled, quest) QuestSetEnabled(quest, enabled) +# define QuestSetTitleBJ(quest, title) QuestSetTitle(quest, title) +# define QuestSetDescriptionBJ(quest, description) QuestSetDescription(quest, description) +# define QuestSetCompletedBJ(quest, completed) QuestSetCompleted(quest, completed) +# define QuestSetFailedBJ(quest, failed) QuestSetFailed(quest, failed) +# define QuestSetDiscoveredBJ(quest, discovered) QuestSetDiscovered(quest, discovered) +# define QuestItemSetDescriptionBJ(questItem, description) QuestItemSetDescription(questItem, description) +# define QuestItemSetCompletedBJ(questItem, completed) QuestItemSetCompleted(questItem, completed) +# define DestroyDefeatConditionBJ(condition) DestroyDefeatCondition(condition) +# define DefeatConditionSetDescriptionBJ(condition, description) DefeatConditionSetDescription(condition, description) +# define FlashQuestDialogButtonBJ() FlashQuestDialogButton() +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetLastCreatedQuestBJ() bj_lastCreatedQuest +# define GetLastCreatedQuestItemBJ() bj_lastCreatedQuestItem +# define GetLastCreatedDefeatConditionBJ() bj_lastCreatedDefeatCondition +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Sound.h b/plugin/YDTrigger/BJOptimization/Sound.h new file mode 100644 index 0000000..6a8986a --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Sound.h @@ -0,0 +1,50 @@ +# /* +# * BJŻ -- Sound +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_SOUND_H +#define INCLUDE_BJ_OPTIMIZATION_SOUND_H +# +# define StopSoundBJ(soundHandle, fadeOut) StopSound(soundHandle, false, fadeOut) +# define SetSoundVolumeBJ(soundHandle, volumePercent) SetSoundVolume(soundHandle, PercentToInt(volumePercent, 127)) +# define SetSoundOffsetBJ(newOffset, soundHandle) SetSoundPlayPosition(soundHandle, R2I((newOffset) * 1000)) +# define SetSoundDistanceCutoffBJ(soundHandle, cutoff) SetSoundDistanceCutoff(soundHandle, cutoff) +# define SetSoundPitchBJ(soundHandle, pitch) SetSoundPitch(soundHandle, pitch) +# define AttachSoundToUnitBJ(soundHandle, unit) AttachSoundToUnit(soundHandle, unit) +# define SetSoundConeAnglesBJ(sound, inside, outside, volume) SetSoundConeAngles(sound, inside, outside, PercentToInt(volume, 127)) +# define KillSoundWhenDoneBJ(soundHandle) KillSoundWhenDone(soundHandle) +# define PlayMusicBJ(musicFileName) \ + PlayMusic(musicFileName) YDNL \ + set bj_lastPlayedMusic = musicFileName +# define PlayMusicExBJ(musicFileName, startingOffset, fadeInTime) \ + PlayMusicEx(musicFileName, R2I((startingOffset) * 1000), R2I((fadeInTime) * 1000)) YDNL \ + set bj_lastPlayedMusic = musicFileName +# define PlayThematicMusicBJ(musicName) PlayThematicMusic(musicName) +# define PlayThematicMusicExBJ(musicName, startingOffset) PlayThematicMusicEx(musicName, R2I((startingOffset) * 1000)) +# define SetThematicMusicOffsetBJ(newOffset) SetThematicMusicOffset(R2I((newOffset) * 1000)) +# define EndThematicMusicBJ() EndThematicMusic() +# define StopMusicBJ(fadeOut) StopMusic(fadeOut) +# define ResumeMusicBJ() ResumeMusic() +# define SetMusicVolumeBJ(volumePercent) SetMusicVolume(PercentToInt(volumePercent, 127)) +# define VolumeGroupSetVolumeBJ(vgroup, percent) VolumeGroupSetVolume(vgroup, (percent) * 0.01) +# define VolumeGroupResetImmediateBJ() VolumeGroupReset() +# define WaitForSoundBJ(soundHandle, offset) TriggerWaitForSound(soundHandle, offset) +# define SetMapMusicIndexedBJ(musicName, index) SetMapMusic(musicName, false, index) +# define SetMapMusicRandomBJ(musicName) SetMapMusic(musicName, true, 0) +# define ClearMapMusicBJ() ClearMapMusic() +# +# /* +# * зֵĺ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define GetSoundFileDurationBJ(musicFileName) (I2R(GetSoundFileDuration(musicFileName)) * 0.001) +# define GetLastPlayedSound() bj_lastPlayedSound +# define GetLastPlayedMusic() bj_lastPlayedMusic +# define IsDawnDuskEnabled() bj_useDawnDuskSounds +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Trigger.h b/plugin/YDTrigger/BJOptimization/Trigger.h new file mode 100644 index 0000000..8b19800 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Trigger.h @@ -0,0 +1,36 @@ +# /* +# * BJŻ -- Trigger +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_TRIGGER_H +#define INCLUDE_BJ_OPTIMIZATION_TRIGGER_H +# +//# include +//# include +# +# define TriggerRegisterTimerEventPeriodic(trig, timeout) TriggerRegisterTimerEvent(trig, timeout, true) +# define TriggerRegisterTimerEventSingle(trig, timeout) TriggerRegisterTimerEvent(trig, timeout, false) +# define TriggerRegisterTimerExpireEventBJ(trig, t) TriggerRegisterTimerExpireEvent(trig, t) +//# define TriggerRegisterPlayerUnitEventSimple(trig, p, e) TriggerRegisterPlayerUnitEvent(trig, p, e, null) +//# define TriggerRegisterPlayerEventVictory(trig, player) TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_VICTORY) +//# define TriggerRegisterPlayerEventDefeat(trig, player) TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_DEFEAT) +//# define TriggerRegisterPlayerEventLeave(trig, player) TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_LEAVE) +//# define TriggerRegisterPlayerEventAllianceChanged(trig, player) TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ALLIANCE_CHANGED) +//# define TriggerRegisterPlayerEventEndCinematic(trig, player) TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_END_CINEMATIC) +# define TriggerRegisterGameStateEventTimeOfDay(trig, opcode, limitval) TriggerRegisterGameStateEvent(trig, GAME_STATE_TIME_OF_DAY, opcode, limitval) +# define TriggerRegisterEnterRegionSimple(trig, region) TriggerRegisterEnterRegion(trig, region, null) +# define TriggerRegisterLeaveRegionSimple(trig, region) TriggerRegisterLeaveRegion(trig, region, null) +# define TriggerRegisterDistanceBetweenUnits(trig, unit, cond, range) TriggerRegisterUnitInRange(trig, unit, range, cond) +# define TriggerRegisterUnitInRangeSimple(trig, range, unit) TriggerRegisterUnitInRange(trig, unit, range, null) +# define TriggerRegisterUnitLifeEvent(trig, unit, opcode, limitval) TriggerRegisterUnitStateEvent(trig, unit, UNIT_STATE_LIFE, opcode, limitval) +# define TriggerRegisterUnitManaEvent(trig, unit, opcode, limitval) TriggerRegisterUnitStateEvent(trig, unit, UNIT_STATE_MANA, opcode, limitval) +# define TriggerRegisterDialogEventBJ(trig, dialog) TriggerRegisterDialogEvent(trig, dialog) +# define TriggerRegisterShowSkillEventBJ(trig) TriggerRegisterGameEvent(trig, EVENT_GAME_SHOW_SKILL) +# define TriggerRegisterBuildSubmenuEventBJ(trig) TriggerRegisterGameEvent(trig, EVENT_GAME_BUILD_SUBMENU) +# define TriggerRegisterGameLoadedEventBJ(trig) TriggerRegisterGameEvent(trig, EVENT_GAME_LOADED) +# define TriggerRegisterGameSavedEventBJ(trig) TriggerRegisterGameEvent(trig, EVENT_GAME_SAVE) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/Unit.h b/plugin/YDTrigger/BJOptimization/Unit.h new file mode 100644 index 0000000..641ce1b --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/Unit.h @@ -0,0 +1,83 @@ +# /* +# * BJŻ -- Unit +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_H +# +# include +# include +# include +# +# define String2UnitIdBJ(unitIdString) UnitId(unitIdString) +# define GetIssuedOrderIdBJ() GetIssuedOrderId() +# define GetKillingUnitBJ() GetKillingUnit() +# define UnitSuspendDecayBJ(suspend, unit) UnitSuspendDecay(unit, suspend) +# define GetUnitStateSwap(state, unit) GetUnitState(unit, state) +# define GetUnitLifePercent(unit) GetUnitStatePercent(whichUnit, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE) +# define GetUnitManaPercent(unit) GetUnitStatePercent(whichUnit, UNIT_STATE_MANA, UNIT_STATE_MAX_MANA) +# define SelectUnitSingle(unit) ClearSelection() YDNL call SelectUnit(unit, true) +# define SelectGroupBJ(group) ClearSelection() YDNL call ForGroup(group, function SelectGroupBJEnum) +# define SelectUnitAdd(unit) SelectUnit(unit, true) +# define SelectUnitRemove(unit) SelectUnit(unit, false) +# define SetUnitLifeBJ(unit, value) SetUnitState(unit, UNIT_STATE_LIFE, RMaxBJ(0, value)) +# define SetUnitManaBJ(unit, value) SetUnitState(unit, UNIT_STATE_LIFE, RMaxBJ(0, value)) +# define IsUnitHiddenBJ(unit) IsUnitHidden(unit) +# define ShowUnitHide(unit) ShowUnit(unit, false) +# define IssueTrainOrderByIdBJ(unit, id) IssueImmediateOrderById(unit, id) +# define GroupTrainOrderByIdBJ(group, id) GroupImmediateOrderById(group, id) +# define IssueUpgradeOrderByIdBJ(unit, id) IssueUpgradeOrderById(unit, id) +# define GetAttackedUnitBJ() GetTriggerUnit() +# define SetUnitFlyHeightBJ(unit, height, rate) SetUnitFlyHeight(unit, height, rate) +# define SetUnitTurnSpeedBJ(unit, speed) SetUnitTurnSpeed(unit, speed) +# define GetUnitDefaultPropWindowBJ(unit) GetUnitDefaultPropWindow(unit) +# define SetUnitBlendTimeBJ(unit, time) SetUnitBlendTime(unit, time) +# define SetUnitAcquireRangeBJ(unit, range) SetUnitAcquireRange(unit, range) +# define UnitSetCanSleepBJ(unit, canSleep) UnitAddSleep(unit, canSleep) +# define UnitCanSleepBJ(unit) UnitCanSleep(unit) +# define UnitWakeUpBJ(unit) UnitWakeUp(unit) +# define UnitIsSleepingBJ(unit) UnitIsSleeping(unit) +# define UnitIsSleepingBJ(unit) UnitIsSleeping(unit) +# define UnitGenerateAlarms(unit, generate) UnitIgnoreAlarm(unit, not generate) +# define PauseUnitBJ(pause, unit) PauseUnit(unit, pause) +# define IsUnitPausedBJ(unit) IsUnitPaused(unit) +# define UnitPauseTimedLifeBJ(flag, unit) UnitPauseTimedLife(unit, flag) +# define UnitApplyTimedLifeBJ(duration, buffId, unit) UnitApplyTimedLife(unit, buffId, duration) +# define UnitShareVisionBJ(share, unit, player) UnitShareVision(unit, player, share) +# define UnitRemoveAbilityBJ(abilityId, unit) UnitRemoveAbility(unit, abilityId) +# define UnitAddAbilityBJ(abilityId, unit) UnitAddAbility(unit, abilityId) +# define UnitRemoveTypeBJ(type, unit) UnitRemoveType(unit, type) +# define UnitAddTypeBJ(type, unit) UnitAddType(unit, type) +# define UnitMakeAbilityPermanentBJ(permanent, abilityId, unit) UnitMakeAbilityPermanent(unit, permanent, abilityId) +# define SetUnitExplodedBJ(unit, exploded) SetUnitExploded(unit, exploded) +# define GetTransportUnitBJ() GetTransportUnit() +# define GetLoadedUnitBJ() GetLoadedUnit() +# define IsUnitInTransportBJ(unit, transport) IsUnitInTransport(unit, transport) +# define IsUnitLoadedBJ(unit) IsUnitLoaded(unit) +# define IsUnitIllusionBJ(unit) IsUnitIllusion(unit) +# define AddItemToStockBJ(itemId, unit, currentStock, stockMax) AddItemToStock(unit, itemId, currentStock, stockMax) +# define AddUnitToStockBJ(unitId, unit, currentStock, stockMax) AddUnitToStock(unit, unitId, currentStock, stockMax) +# define RemoveItemFromStockBJ(itemId, unit) RemoveItemFromStock(unit, itemId) +# define RemoveUnitFromStockBJ(unitId, unit) RemoveItemFromStock(unit, unitId) +# define SetUnitUseFoodBJ(enable, unit) SetUnitUseFood(unit, enable) +# define UnitDamageTargetBJ(unit, target, amount, attacktype, damagetype) \ + UnitDamageTarget(unit, target, amount, true, false, attacktype, damagetype, WEAPON_TYPE_WHOKNOWS) +# +# /* +# * зֵĺ滻Ϊȫֱ, ijЩ» +# * call GetLastCreatedUnit() +# * дij˵Ҳһִɡ +# */ +# +# define UnitId2OrderIdBJ(unitId) (unitId) +# define GetLastCreatedUnit() bj_lastCreatedUnit +# define GetLastReplacedUnitBJ() bj_lastReplacedUnit +# define DoesUnitGenerateAlarms(unit) (not UnitIgnoreAlarmToggled(unit)) +# define IsUnitDeadBJ(unit) (GetUnitState(unit, UNIT_STATE_LIFE) <= 0) +# define IsUnitAliveBJ(unit) (GetUnitState(unit, UNIT_STATE_LIFE) > 0) +# define GetUnitPropWindowBJ(unit) (GetUnitPropWindow(unit)*bj_RADTODEG) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/UnitPro.h b/plugin/YDTrigger/BJOptimization/UnitPro.h new file mode 100644 index 0000000..51743ac --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/UnitPro.h @@ -0,0 +1,41 @@ +# /* +# * BJŻ -- Unit.Pro +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_PRO_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_PRO_H +# +# include +# +# /* +# * 1.GetUnitState(unit, UNIT_STATE_LIFE) 滻Ϊ GetWidgetLife(unit) +# * 2.жϸøΪȷֵ +# */ +# +# undef GetUnitStateSwap +# define GetUnitStateSwap(state, unit) \ + YDTRIGGER_COMMON_SWITCH(GET_UNIT_STATE_SWAP_## state, ( \ + GetWidgetLife(unit), \ + GetUnitState(unit, UNIT_STATE_MAX_LIFE), \ + GetUnitState(unit, UNIT_STATE_MANA), \ + GetUnitState(unit, UNIT_STATE_MAX_MANA), \ + )) +# +# define GET_UNIT_STATE_SWAP_UNIT_STATE_LIFE 0 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MAX_LIFE 1 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MANA 2 +# define GET_UNIT_STATE_SWAP_UNIT_STATE_MAX_MANA 3 +# +# undef SetUnitLifeBJ +# define SetUnitLifeBJ(unit, value) SetWidgetLife(unit, RMaxBJ(0, value)) +# +# undef IsUnitDeadBJ +# define IsUnitDeadBJ(unit) (GetWidgetLife(unit) <= 0.405) +# +# undef IsUnitAliveBJ +# define IsUnitAliveBJ(unit) (GetWidgetLife(unit) > 0.405) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemStatus.h b/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemStatus.h new file mode 100644 index 0000000..f571da6 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemStatus.h @@ -0,0 +1,30 @@ +# /* +# * CheckItemStatus +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_CHECK_ITEM_STATUS_H +#define INCLUDE_BJ_OPTIMIZATION_CHECK_ITEM_STATUS_H +# +# include +# +# define CheckItemStatus(item, status) \ + YDTRIGGER_COMMON_SWITCH(CHECK_ITEM_STATUS_## status, ( \ + (not IsItemVisible(item)), \ + IsItemOwned(item), \ + IsItemInvulnerable(item), \ + IsItemPowerup(item), \ + IsItemSellable(item), \ + IsItemPawnable(item), \ + )) +# +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_HIDDEN 0 +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_OWNED 1 +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_INVULNERABLE 2 +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_POWERUP 3 +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_SELLABLE 4 +# define CHECK_ITEM_STATUS_bj_ITEM_STATUS_PAWNABLE 5 +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemcodeStatus.h b/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemcodeStatus.h new file mode 100644 index 0000000..8134e60 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Hero/CheckItemcodeStatus.h @@ -0,0 +1,24 @@ +# /* +# * CheckItemcodeStatus +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_CHECK_ITEMCODE_STATUS_H +#define INCLUDE_BJ_OPTIMIZATION_CHECK_ITEMCODE_STATUS_H +# +# include +# +# define CheckItemcodeStatus(itemId, status) \ + YDTRIGGER_COMMON_SWITCH(CHECK_ITEMCODE_STATUS_## status, ( \ + IsItemIdPowerup(itemId), \ + IsItemIdSellable(itemId), \ + IsItemIdPawnable(itemId), \ + )) +# +# define CHECK_ITEMCODE_STATUS_bj_ITEMCODE_STATUS_POWERUP 0 +# define CHECK_ITEMCODE_STATUS_bj_ITEMCODE_STATUS_SELLABLE 1 +# define CHECK_ITEMCODE_STATUS_bj_ITEMCODE_STATUS_PAWNABLE 2 +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Hero/GetHeroStatBJ.h b/plugin/YDTrigger/BJOptimization/detail/Hero/GetHeroStatBJ.h new file mode 100644 index 0000000..9b1ce6b --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Hero/GetHeroStatBJ.h @@ -0,0 +1,21 @@ +# /* +# * GetHeroStatBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_GET_HERO_STAT_BJ_H +#define INCLUDE_BJ_OPTIMIZATION_GET_HERO_STAT_BJ_H +# +# include +# include +# +# define GetHeroStatBJ(stat, hero, bonuses) \ + YDTRIGGER_COMMON_SWITCH(HERO_STAT_CHECK_## stat, ( \ + GetHeroStr(hero, bonuses), \ + GetHeroAgi(hero, bonuses), \ + GetHeroInt(hero, bonuses), \ + )) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Hero/HeroStatCheck.h b/plugin/YDTrigger/BJOptimization/detail/Hero/HeroStatCheck.h new file mode 100644 index 0000000..809589e --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Hero/HeroStatCheck.h @@ -0,0 +1,15 @@ +# /* +# * ӢԼ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_HERO_STAT_CHECK_H +#define INCLUDE_BJ_OPTIMIZATION_HERO_STAT_CHECK_H +# +# define HERO_STAT_CHECK_bj_HEROSTAT_STR 0 +# define HERO_STAT_CHECK_bj_HEROSTAT_AGI 1 +# define HERO_STAT_CHECK_bj_HEROSTAT_INT 2 +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerKeyEventBJ.h b/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerKeyEventBJ.h new file mode 100644 index 0000000..213d678 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerKeyEventBJ.h @@ -0,0 +1,34 @@ +# /* +# * TriggerRegisterPlayerKeyEventBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_KEY_EVENT_BJ_H +#define INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_KEY_EVENT_BJ_H +# +# include +# +# define TriggerRegisterPlayerKeyEventBJ(trig, player, keType, keKey) \ + YDTRIGGER_COMMON_SWITCH(TRIGGER_EVENT_TYPE_## keType ## _ ## keKey, ( \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_LEFT_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_RIGHT_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_DOWN_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_UP_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_LEFT_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_RIGHT_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_DOWN_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_UP_UP), \ + )) +# +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_LEFT 0 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_RIGHT 1 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_DOWN 2 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_UP 3 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_LEFT 4 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_RIGHT 5 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_DOWN 6 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_UP 7 +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerSelectionEventBJ.h b/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerSelectionEventBJ.h new file mode 100644 index 0000000..c3c3eb5 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Trigger/TriggerRegisterPlayerSelectionEventBJ.h @@ -0,0 +1,19 @@ +# /* +# * TriggerRegisterPlayerSelectionEventBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_SELECTION_EVENT_BJ_H +#define INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_SELECTION_EVENT_BJ_H +# +# include +# +# define TriggerRegisterPlayerSelectionEventBJ(trig, player, selected) \ + YDTRIGGER_COMMON_IF(selected, \ + TriggerRegisterPlayerUnitEvent(trig, player, EVENT_PLAYER_UNIT_SELECTED, null), \ + TriggerRegisterPlayerUnitEvent(trig, player, EVENT_PLAYER_UNIT_DESELECTED, null) \ + ) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerKeyEventBJ.h b/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerKeyEventBJ.h new file mode 100644 index 0000000..ce43a8e --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerKeyEventBJ.h @@ -0,0 +1,34 @@ +# /* +# * TriggerRegisterPlayerKeyEventBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_KEY_EVENT_BJ_H +#define INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_KEY_EVENT_BJ_H +# +# include +# +# define TriggerRegisterPlayerKeyEventBJ(trig, player, keType, keKey) \ + YDTRIGGER_COMMON_SWITCH(TRIGGER_EVENT_TYPE_## keType ## _ ## keKey, ( \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_LEFT_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_RIGHT_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_DOWN_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_UP_DOWN), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_LEFT_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_RIGHT_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_DOWN_UP), \ + TriggerRegisterPlayerEvent(trig, player, EVENT_PLAYER_ARROW_UP_UP), \ + )) +# +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_LEFT 0 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_RIGHT 1 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_DOWN 2 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_DEPRESS_bj_KEYEVENTKEY_UP 3 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_LEFT 4 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_bj_KEYEVENTKEY_RIGHT 5 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_DOWN 6 +# define TRIGGER_EVENT_TYPE_bj_KEYEVENTTYPE_RELEASE_bj_KEYEVENTKEY_UP 7 +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerSelectionEventBJ.h b/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerSelectionEventBJ.h new file mode 100644 index 0000000..c3c3eb5 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/TriggerRegisterPlayerSelectionEventBJ.h @@ -0,0 +1,19 @@ +# /* +# * TriggerRegisterPlayerSelectionEventBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_SELECTION_EVENT_BJ_H +#define INCLUDE_BJ_OPTIMIZATION_TRIGGER_REGISTER_PLAYER_SELECTION_EVENT_BJ_H +# +# include +# +# define TriggerRegisterPlayerSelectionEventBJ(trig, player, selected) \ + YDTRIGGER_COMMON_IF(selected, \ + TriggerRegisterPlayerUnitEvent(trig, player, EVENT_PLAYER_UNIT_SELECTED, null), \ + TriggerRegisterPlayerUnitEvent(trig, player, EVENT_PLAYER_UNIT_DESELECTED, null) \ + ) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Unit/UnitBuffsCheck.h b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitBuffsCheck.h new file mode 100644 index 0000000..cac4c86 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitBuffsCheck.h @@ -0,0 +1,36 @@ +# /* +# * buff +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_BUFFS_CHECK_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_BUFFS_CHECK_H +# +# include +# +# define UNIT_BUFFS_EX_POS_CHECK(polarity) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_POS_##polarity, UNIT_BUFFS_EX_POS_##polarity) +# define UNIT_BUFFS_EX_NEG_CHECK(polarity) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_NEG_##polarity, UNIT_BUFFS_EX_NEG_##polarity) +# define UNIT_BUFFS_EX_MAG_CHECK(resist) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_MAG_##resist, UNIT_BUFFS_EX_MAG_##resist) +# define UNIT_BUFFS_EX_PHY_CHECK(resist) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_PHY_##resist, UNIT_BUFFS_EX_PHY_##resist) +# +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_EITHER true +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_POSITIVE true +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_NEGATIVE false +# +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_EITHER true +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_POSITIVE false +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_NEGATIVE true +# +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_BOTH true +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_EITHER false +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_MAGIC true +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_PHYSICAL false + +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_BOTH true +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_EITHER false +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_MAGIC false +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_PHYSICAL true +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Unit/UnitCountBuffsEx.h b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitCountBuffsEx.h new file mode 100644 index 0000000..9dcbc75 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitCountBuffsEx.h @@ -0,0 +1,21 @@ +# /* +# * UnitCountBuffsExBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_COUNT_BUFFS_EX_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_COUNT_BUFFS_EX_H +# +# include +# +# define UnitCountBuffsExBJ(polarity, resist, unit, bTLife, bAura) \ + UnitCountBuffsEx(unit, \ + UNIT_BUFFS_EX_POS_CHECK(polarity), \ + UNIT_BUFFS_EX_NEG_CHECK(polarity), \ + UNIT_BUFFS_EX_MAG_CHECK(resist), \ + UNIT_BUFFS_EX_PHY_CHECK(resist), \ + bTLife, bAura, false) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffs.h b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffs.h new file mode 100644 index 0000000..dab6279 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffs.h @@ -0,0 +1,27 @@ +# /* +# * UnitRemoveBuffsBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_H +# +# include +# +# define UnitRemoveBuffsBJ(buffType, unit) \ + YDTRIGGER_COMMON_SWITCH(UNIT_REMOVE_BUFFS_## buffType, ( \ + UnitRemoveBuffs(unit, true, false), \ + UnitRemoveBuffs(unit, false, true), \ + UnitRemoveBuffs(unit, true, true), \ + UnitRemoveBuffsEx(unit, true, true, false, false, false, true, false) \ + )) +# +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_POSITIVE 0 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_NEGATIVE 1 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_ALL 2 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_NONTLIFE 3 +# +#endif + diff --git a/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffsEx.h b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffsEx.h new file mode 100644 index 0000000..eba0d16 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/Unit/UnitRemoveBuffsEx.h @@ -0,0 +1,21 @@ +# /* +# * UnitRemoveBuffsExBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_EX_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_EX_H +# +# include +# +# define UnitRemoveBuffsExBJ(polarity, resist, unit, bTLife, bAura) \ + UnitRemoveBuffsEx(unit, \ + UNIT_BUFFS_EX_POS_CHECK(polarity), \ + UNIT_BUFFS_EX_NEG_CHECK(polarity), \ + UNIT_BUFFS_EX_MAG_CHECK(resist), \ + UNIT_BUFFS_EX_PHY_CHECK(resist), \ + bTLife, bAura, false) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/UnitBuffsCheck.h b/plugin/YDTrigger/BJOptimization/detail/UnitBuffsCheck.h new file mode 100644 index 0000000..cac4c86 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/UnitBuffsCheck.h @@ -0,0 +1,36 @@ +# /* +# * buff +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_BUFFS_CHECK_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_BUFFS_CHECK_H +# +# include +# +# define UNIT_BUFFS_EX_POS_CHECK(polarity) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_POS_##polarity, UNIT_BUFFS_EX_POS_##polarity) +# define UNIT_BUFFS_EX_NEG_CHECK(polarity) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_NEG_##polarity, UNIT_BUFFS_EX_NEG_##polarity) +# define UNIT_BUFFS_EX_MAG_CHECK(resist) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_MAG_##resist, UNIT_BUFFS_EX_MAG_##resist) +# define UNIT_BUFFS_EX_PHY_CHECK(resist) YDTRIGGER_COMMON_BOOL_OR(UNIT_BUFFS_EX_PHY_##resist, UNIT_BUFFS_EX_PHY_##resist) +# +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_EITHER true +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_POSITIVE true +# define UNIT_BUFFS_EX_POS_bj_BUFF_POLARITY_NEGATIVE false +# +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_EITHER true +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_POSITIVE false +# define UNIT_BUFFS_EX_NEG_bj_BUFF_POLARITY_NEGATIVE true +# +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_BOTH true +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_EITHER false +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_MAGIC true +# define UNIT_BUFFS_EX_MAG_bj_BUFF_RESIST_PHYSICAL false + +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_BOTH true +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_EITHER false +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_MAGIC false +# define UNIT_BUFFS_EX_PHY_bj_BUFF_RESIST_PHYSICAL true +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/UnitCountBuffsEx.h b/plugin/YDTrigger/BJOptimization/detail/UnitCountBuffsEx.h new file mode 100644 index 0000000..4c03f38 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/UnitCountBuffsEx.h @@ -0,0 +1,21 @@ +# /* +# * UnitCountBuffsExBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_COUNT_BUFFS_EX_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_COUNT_BUFFS_EX_H +# +# include +# +# define UnitCountBuffsExBJ(polarity, resist, unit, bTLife, bAura) \ + UnitCountBuffsEx(unit, \ + UNIT_BUFFS_EX_POS_CHECK(polarity), \ + UNIT_BUFFS_EX_NEG_CHECK(polarity), \ + UNIT_BUFFS_EX_MAG_CHECK(resist), \ + UNIT_BUFFS_EX_PHY_CHECK(resist), \ + bTLife, bAura, false) +# +#endif diff --git a/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffs.h b/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffs.h new file mode 100644 index 0000000..dab6279 --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffs.h @@ -0,0 +1,27 @@ +# /* +# * UnitRemoveBuffsBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_H +# +# include +# +# define UnitRemoveBuffsBJ(buffType, unit) \ + YDTRIGGER_COMMON_SWITCH(UNIT_REMOVE_BUFFS_## buffType, ( \ + UnitRemoveBuffs(unit, true, false), \ + UnitRemoveBuffs(unit, false, true), \ + UnitRemoveBuffs(unit, true, true), \ + UnitRemoveBuffsEx(unit, true, true, false, false, false, true, false) \ + )) +# +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_POSITIVE 0 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_NEGATIVE 1 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_ALL 2 +# define UNIT_REMOVE_BUFFS_bj_REMOVEBUFFS_NONTLIFE 3 +# +#endif + diff --git a/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffsEx.h b/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffsEx.h new file mode 100644 index 0000000..0a01c2a --- /dev/null +++ b/plugin/YDTrigger/BJOptimization/detail/UnitRemoveBuffsEx.h @@ -0,0 +1,21 @@ +# /* +# * UnitRemoveBuffsExBJ +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_EX_H +#define INCLUDE_BJ_OPTIMIZATION_UNIT_REMOVE_BUFFS_EX_H +# +# include +# +# define UnitRemoveBuffsExBJ(polarity, resist, unit, bTLife, bAura) \ + UnitRemoveBuffsEx(unit, \ + UNIT_BUFFS_EX_POS_CHECK(polarity), \ + UNIT_BUFFS_EX_NEG_CHECK(polarity), \ + UNIT_BUFFS_EX_MAG_CHECK(resist), \ + UNIT_BUFFS_EX_PHY_CHECK(resist), \ + bTLife, bAura, false) +# +#endif diff --git a/plugin/YDTrigger/Common/bool/or.h b/plugin/YDTrigger/Common/bool/or.h new file mode 100644 index 0000000..9d4f68e --- /dev/null +++ b/plugin/YDTrigger/Common/bool/or.h @@ -0,0 +1,21 @@ +# /* +# * or +# * +# * YDTRIGGER_COMMON_BOOL_OR(true, flase) -> true +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_COMMON_BOOL_OR_H +#define INCLUDE_YDTRIGGER_COMMON_BOOL_OR_H +# +# define YDTRIGGER_COMMON_BOOL_OR(x, y) YDTRIGGER_COMMON_BOOL_OR_I(x, y) +# define YDTRIGGER_COMMON_BOOL_OR_I(x, y) YDTRIGGER_COMMON_BOOL_OR_CHECK_## x ## _ ## y +# +# define YDTRIGGER_COMMON_BOOL_OR_CHECK_true_true true +# define YDTRIGGER_COMMON_BOOL_OR_CHECK_true_false true +# define YDTRIGGER_COMMON_BOOL_OR_CHECK_false_true true +# define YDTRIGGER_COMMON_BOOL_OR_CHECK_false_false false +# +#endif diff --git a/plugin/YDTrigger/Common/if.h b/plugin/YDTrigger/Common/if.h new file mode 100644 index 0000000..ec23d44 --- /dev/null +++ b/plugin/YDTrigger/Common/if.h @@ -0,0 +1,20 @@ +# /* +# * if +# * +# * YDTRIGGER_COMMON_IF(true, t, f) -> t +# * YDTRIGGER_COMMON_IF(false, t, f) -> f +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_COMMON_IF_H +#define INCLUDE_YDTRIGGER_COMMON_IF_H +# +# define YDTRIGGER_COMMON_IF(cond, tt, ff) YDTRIGGER_COMMON_IF_I(cond, tt, ff) +# define YDTRIGGER_COMMON_IF_I(cond, tt, ff) YDTRIGGER_COMMON_IF_CHECK_ ## cond(tt, ff) +# +# define YDTRIGGER_COMMON_IF_CHECK_true(tt, ff) tt +# define YDTRIGGER_COMMON_IF_CHECK_false(tt, ff) ff +# +#endif diff --git a/plugin/YDTrigger/Common/loop.h b/plugin/YDTrigger/Common/loop.h new file mode 100644 index 0000000..8fe2009 --- /dev/null +++ b/plugin/YDTrigger/Common/loop.h @@ -0,0 +1,20 @@ +# /* +# * loop +# * +# * #define YDTRIGGER_COMMON_LOOP(n) set i = n +# * #define YDTRIGGER_COMMON_LOOP_LIMITS (0, 2) +# * #include +# * -> +# * set i = 0 +# * set i = 1 +# * +# * By actboy168 +# * +# */ +# +#include +#define BOOST_PP_LOCAL_MACRO(n) YDTRIGGER_COMMON_LOOP(n) +#define BOOST_PP_LOCAL_LIMITS YDTRIGGER_COMMON_LOOP_LIMITS +#include BOOST_PP_LOCAL_ITERATE() +#undef YDTRIGGER_COMMON_LOOP +#undef YDTRIGGER_COMMON_LOOP_LIMITS diff --git a/plugin/YDTrigger/Common/switch.h b/plugin/YDTrigger/Common/switch.h new file mode 100644 index 0000000..ce92594 --- /dev/null +++ b/plugin/YDTrigger/Common/switch.h @@ -0,0 +1,25 @@ +# /* +# * switch +# * +# * YDTRIGGER_COMMON_SWITCH(1, (A, B, C)) -> B +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_COMMON_SWITCH_H +#define INCLUDE_YDTRIGGER_COMMON_SWITCH_H +# +# define YDTRIGGER_COMMON_SWITCH(cond, list) YDTRIGGER_COMMON_SWITCH_I(cond, list) +# define YDTRIGGER_COMMON_SWITCH_I(cond, list) YDTRIGGER_COMMON_SWITCH_CHECK_ ## cond list + +# define YDTRIGGER_COMMON_SWITCH_CHECK_0(e0, ...) e0 +# define YDTRIGGER_COMMON_SWITCH_CHECK_1(e0,e1, ...) e1 +# define YDTRIGGER_COMMON_SWITCH_CHECK_2(e0,e1,e2, ...) e2 +# define YDTRIGGER_COMMON_SWITCH_CHECK_3(e0,e1,e2,e3, ...) e3 +# define YDTRIGGER_COMMON_SWITCH_CHECK_4(e0,e1,e2,e3,e4, ...) e4 +# define YDTRIGGER_COMMON_SWITCH_CHECK_5(e0,e1,e2,e3,e4,e5, ...) e5 +# define YDTRIGGER_COMMON_SWITCH_CHECK_6(e0,e1,e2,e3,e4,e5,e6, ...) e6 +# define YDTRIGGER_COMMON_SWITCH_CHECK_7(e0,e1,e2,e3,e4,e5,e6,e7, ...) e7 +# +#endif diff --git a/plugin/YDTrigger/Function.h b/plugin/YDTrigger/Function.h new file mode 100644 index 0000000..18c006c --- /dev/null +++ b/plugin/YDTrigger/Function.h @@ -0,0 +1,13 @@ +# /* +# * YDTrigger专用宏 +# * +# * 函数部分 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_FUNCTION_H +#define INCLUDE_FUNCTION_H +# +#endif diff --git a/plugin/YDTrigger/Globals.h b/plugin/YDTrigger/Globals.h new file mode 100644 index 0000000..379b656 --- /dev/null +++ b/plugin/YDTrigger/Globals.h @@ -0,0 +1,13 @@ +# /* +# * YDTrigger专用宏 +# * +# * 全局变量部分 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_GLOBALS_H +#define INCLUDE_GLOBALS_H +# +#endif diff --git a/plugin/YDTrigger/Hash.h b/plugin/YDTrigger/Hash.h new file mode 100644 index 0000000..6a6e8e4 --- /dev/null +++ b/plugin/YDTrigger/Hash.h @@ -0,0 +1,72 @@ +# /* +# * 局部变量、自定义值 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_HASH_H +#define INCLUDE_YDTRIGGER_HASH_H +# +#define YDUserDataClearTable(table_type, table) YDHashClearTable(YDHASH_HANDLE, YDHashAny2I(table_type, table)) +#define YDUserDataClear(table_type, table, attribute, value_type) YDHashClear(YDHASH_HANDLE, value_type, YDHashAny2I(table_type, table), ) +#define YDUserDataSet(table_type, table, attribute, value_type, value) YDHashSet(YDHASH_HANDLE, value_type, YDHashAny2I(table_type, table), , value) +#define YDUserDataGet(table_type, table, attribute, value_type) YDHashGet(YDHASH_HANDLE, value_type, YDHashAny2I(table_type, table), ) +#define YDUserDataHas(table_type, table, attribute, value_type) YDHashHas(YDHASH_HANDLE, value_type, YDHashAny2I(table_type, table), ) +# +# +# // GlobalsTriggerRunSteps & TriggerRunSteps +#define YDLocalInitialize() \ + local integer ydl_localvar_step = YDHashGet(YDLOC, integer, YDHashH2I(GetTriggeringTrigger()), 0xCFDE6C76) YDNL\ + set ydl_localvar_step = ydl_localvar_step + 3 YDNL\ + call YDHashSet(YDLOC, integer, YDHashH2I(GetTriggeringTrigger()), 0xCFDE6C76, ydl_localvar_step) YDNL\ + call YDHashSet(YDLOC, integer, YDHashH2I(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) +#define YDLocalExecuteTrigger(trg) set ydl_triggerstep = YDHashH2I(trg)*(YDHashGet(YDLOC, integer, YDHashH2I(trg), 0xCFDE6C76) + 3) +#define YDLocalReset() YDHashSet(YDLOC, integer, YDHashH2I(GetTriggeringTrigger()), 0xECE825E7, ydl_localvar_step) +# // 1. +#define YDLOCAL_1 YDHashH2I(GetTriggeringTrigger())*ydl_localvar_step +#define YDLocal1Set(type, name, value) YDHashSet(YDLOC, type, YDLOCAL_1, , value) +#define YDLocal1ArraySet(type, name, index, value) YDHashSet(YDLOC, type, YDLOCAL_1, + (index), value) +#define YDLocal1Get(type, name) YDHashGet(YDLOC, type, YDLOCAL_1, ) +#define YDLocal1ArrayGet(type, name, index) YDHashGet(YDLOC, type, YDLOCAL_1, + (index)) +#define YDLocal1Release() YDHashClearTable(YDLOC, YDLOCAL_1) +# // 2. +#define YDLOCAL_2 YDHashH2I(GetTriggeringTrigger())*YDHashGet(YDLOC, integer, YDHashH2I(GetTriggeringTrigger()), 0xECE825E7) +#define YDLocal2Set(type, name, value) YDHashSet(YDLOC, type, YDLOCAL_2, , value) +#define YDLocal2ArraySet(type, name, index, value) YDHashSet(YDLOC, type, YDLOCAL_2, + (index), value) +#define YDLocal2Get(type, name) YDHashGet(YDLOC, type, YDLOCAL_2, ) +#define YDLocal2ArrayGet(type, name, index) YDHashGet(YDLOC, type, YDLOCAL_2, + (index)) +# // 3. +#define YDLOCAL_3 YDHashH2I(GetExpiredTimer()) +#define YDLocal3Set(type, name, value) YDHashSet(YDLOC, type, YDLOCAL_3, , value) +#define YDLocal3ArraySet(type, name, index, value) YDHashSet(YDLOC, type, YDLOCAL_3, + (index), value) +#define YDLocal3Get(type, name) YDHashGet(YDLOC, type, YDLOCAL_3, ) +#define YDLocal3ArrayGet(type, name, index) YDHashGet(YDLOC, type, YDLOCAL_3, + (index)) +#define YDLocal3Release() YDHashClearTable(YDLOC, YDLOCAL_3) +# // 4. +#define YDLOCAL_4 YDHashH2I(GetTriggeringTrigger()) +#define YDLocal4Set(type, name, value) YDHashSet(YDLOC, type, YDLOCAL_4, , value) +#define YDLocal4ArraySet(type, name, index, value) YDHashSet(YDLOC, type, YDLOCAL_4, + (index), value) +#define YDLocal4Get(type, name) YDHashGet(YDLOC, type, YDLOCAL_4, ) +#define YDLocal4ArrayGet(type, name, index) YDHashGet(YDLOC, type, YDLOCAL_4, + (index)) +#define YDLocal4Release() YDHashClearTable(YDLOC, YDLOCAL_4) +# // 5. +#define YDLOCAL_5 ydl_triggerstep +#define YDLocal5Set(type, name, value) YDHashSet(YDLOC, type, YDLOCAL_5, , value) +#define YDLocal5ArraySet(type, name, index, value) YDHashSet(YDHASH_HYDLOCANDLE, type, YDLOCAL_5, + (index), value) +#define YDLocal5Get(type, name) YDHashGet(YDLOC, type, YDLOCAL_5, ) +#define YDLocal5ArrayGet(type, name, index) YDHashGet(YDLOC, type, YDLOCAL_5, + (index)) +# // 6. +#define YDLocal6Set(page, type, name, value) YDHashSet(YDLOC, type, , , value) +#define YDLocal6ArraySet(page, type, name, index, value) YDHashSet(YDLOC, type, , + (index), value) +#define YDLocal6Get(page, type, name) YDHashGet(YDLOC, type, , ) +#define YDLocal6ArrayGet(page, type, name, index) YDHashGet(YDLOC, type, , + (index)) +#define YDLocal6Release(page) YDHashClearTable(YDLOC, ) +# +#define YDLocalSet(page, type, name, value) YDHashSet(YDLOC, type, YDHashH2I(page), , value) +#define YDLocalArraySet(page, type, name, index, value) YDHashSet(YDLOC, type, YDHashH2I(page), + (index), value) +#define YDLocalGet(page, type, name) YDHashGet(YDLOC, type, YDHashH2I(page), ) +#define YDLocalArrayGet(page, type, name, index) YDHashGet(YDLOC, type, YDHashH2I(page), + (index)) +#define YDLocalRelease(page) YDHashClearTable(YDLOC, YDHashH2I(page)) +# +#endif diff --git a/plugin/YDTrigger/Import.h b/plugin/YDTrigger/Import.h new file mode 100644 index 0000000..347e489 --- /dev/null +++ b/plugin/YDTrigger/Import.h @@ -0,0 +1,3 @@ +#ifndef INCLUDE_IMPORT_H +#define INCLUDE_IMPORT_H +#endif diff --git a/plugin/YDTrigger/ImportSaveLoadSystem.h b/plugin/YDTrigger/ImportSaveLoadSystem.h new file mode 100644 index 0000000..d9222f0 --- /dev/null +++ b/plugin/YDTrigger/ImportSaveLoadSystem.h @@ -0,0 +1,53 @@ +# /* +# * 引入YDTrigger存储系统 (需要VJass的支持) +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_IMPORT_SAVE_LOAD_SYSTEM_H +#define INCLUDE_IMPORT_SAVE_LOAD_SYSTEM_H + +#if WARCRAFT_VERSION >= 124 +# define YDHASH_HANDLE_TYPE hashtable +# define YDHASH_HANDLE YDHT +# define YDHASH_HANDLE_INIT(name) InitHashtable() +#else +# define YDHASH_HANDLE_TYPE gamecache +# define YDHASH_HANDLE YDGC +# define YDHASH_HANDLE_INIT(name) InitGameCache(name) +#endif + +library YDTriggerSaveLoadSystem initializer Init + +#if WARCRAFT_VERSION >= 124 + #include +#else + #include +#endif + #include + #include + +globals + #ifndef YDWE_HASH_DEFVAR + #define YDWE_HASH_DEFVAR + YDHASH_HANDLE_TYPE YDHASH_HANDLE + #endif + YDHASH_HANDLE_TYPE YDLOC +endglobals + +#if WARCRAFT_VERSION < 124 + #include +#endif + + private function Init takes nothing returns nothing + #ifndef YDWE_HASHTABLE_INITVAR + #define YDWE_HASHTABLE_INITVAR + set YDHASH_HANDLE = YDHASH_HANDLE_INIT("YDWE.wav") + #endif + set YDLOC = YDHASH_HANDLE_INIT("YDLOC") + endfunction + +endlibrary + +#endif diff --git a/plugin/YDTrigger/SaveLoadSystem/Any2I.h b/plugin/YDTrigger/SaveLoadSystem/Any2I.h new file mode 100644 index 0000000..7ec6359 --- /dev/null +++ b/plugin/YDTrigger/SaveLoadSystem/Any2I.h @@ -0,0 +1,69 @@ +# /* +# * YDTriggerר�ô洢ϵͳ +# * +# * Any2I +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_ANY2I_H +#define INCLUDE_YDTRIGGER_ANY2I_H +# +# define YDHashAny2I(type, any) YDTRIGGER_ANY2I_##type##(any) +# +# define YDHashI2I(any) any +# define YDHashR2I(any) R2I(any) +# define YDHashB2I(any) ERROR "<����>���ܴӲ���ֵת����������" // �����Ĵ��� +# +# if WARCRAFT_VERSION >= 124 +# define YDHashS2I(any) StringHash(any) +# define YDHashH2I(any) GetHandleId(any) +# else +# define YDHashS2I(any) YDTRIGGER_S2I(any) +# define YDHashH2I(any) YDTRIGGER_H2I(any) +# endif +# +# define YDTRIGGER_ANY2I_integer(any) YDHashI2I(any) +# define YDTRIGGER_ANY2I_real(any) YDHashR2I(any) +# define YDTRIGGER_ANY2I_boolean(any) YDHashB2I(any) +# define YDTRIGGER_ANY2I_string(any) YDHashS2I(any) +# define YDTRIGGER_ANY2I_timer(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_trigger(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_unit(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_unitcode(any) YDHashI2I(any) +# define YDTRIGGER_ANY2I_abilcode(any) YDHashI2I(any) +# define YDTRIGGER_ANY2I_item(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_itemcode(any) YDHashI2I(any) +# define YDTRIGGER_ANY2I_group(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_player(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_location(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_destructable(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_force(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_rect(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_region(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_sound(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_effect(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_unitpool(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_itempool(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_quest(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_questitem(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_timerdialog(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_leaderboard(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_multiboard(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_multiboarditem(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_trackable(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_dialog(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_button(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_texttag(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_lightning(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_image(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_fogstate(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_fogmodifier(any) YDHashH2I(any) +# define YDTRIGGER_ANY2I_radian(any) YDTRIGGERR2I(any) +# define YDTRIGGER_ANY2I_degree(any) YDTRIGGERR2I(any) +# define YDTRIGGER_ANY2I_imagefile(any) YDTRIGGERS2I(any) +# define YDTRIGGER_ANY2I_modelfile(any) YDTRIGGERS2I(any) +# +# +#endif diff --git a/plugin/YDTrigger/SaveLoadSystem/GCSet_Get.h b/plugin/YDTrigger/SaveLoadSystem/GCSet_Get.h new file mode 100644 index 0000000..7aaba64 --- /dev/null +++ b/plugin/YDTrigger/SaveLoadSystem/GCSet_Get.h @@ -0,0 +1,110 @@ +# /* +# * YDTrigger专用存储系统 +# * +# * set 和 get 的实现 +# * +# * By actboy168 +# * +# */ +# +# +#ifndef INCLUDE_YDTRIGGER_SET_AND_GET_H +#define INCLUDE_YDTRIGGER_SET_AND_GET_H +# +# /* +# * +# * GameCache版 Clear +# * +# */ +# +# define YDHashClearAll(handle) FlushGameCache(handle) +# define YDHashClearTable(handle, table) FlushStoredMission(handle, I2S(table)) +# define YDHashClearTableByString(handle, table) FlushStoredMission(handle, table) +# +# /* +# * +# * GameCache版 Set +# * +# */ +# +# define YDHashSetEx(handle, type, table, key, value) YDTRIGGER_SET_##type##(handle, I2S(table), I2S(key), value) +# define YDHashSet(handle, type, table, key, value) YDTRIGGER_SET_##type##(handle, I2S(table), #key, value) +# define YDHashSetByString(handle, type, table, key, value) YDTRIGGER_SET_##type##(handle, table, key, value) +# +# define YDTRIGGER_SET_integer YDTRIGGER_GCSET_INTEGER +# define YDTRIGGER_SET_real YDTRIGGER_GCSET_REAL +# define YDTRIGGER_SET_boolean YDTRIGGER_GCSET_BOOLEAN +# define YDTRIGGER_SET_string YDTRIGGER_GCSET_STRING +# define YDTRIGGER_SET_StringExt YDTRIGGER_GCSET_STRING +# define YDTRIGGER_SET_timer YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_trigger YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_unit YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_unitcode YDTRIGGER_GCSET_INTEGER +# define YDTRIGGER_SET_abilcode YDTRIGGER_GCSET_INTEGER +# define YDTRIGGER_SET_item YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_itemcode YDTRIGGER_GCSET_INTEGER +# define YDTRIGGER_SET_group YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_player YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_location YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_destructable YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_force YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_rect YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_region YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_sound YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_effect YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_unitpool YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_itempool YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_quest YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_questitem YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_timerdialog YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_leaderboard YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_multiboard YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_multiboarditem YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_trackable YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_dialog YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_button YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_texttag YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_lightning YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_image YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_fogstate YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_fogmodifier YDTRIGGER_GCSET_HANDLE +# define YDTRIGGER_SET_radian YDTRIGGER_GCSET_REAL +# define YDTRIGGER_SET_degree YDTRIGGER_GCSET_REAL +# define YDTRIGGER_SET_imagefile YDTRIGGER_GCSET_STRING +# define YDTRIGGER_SET_modelfile YDTRIGGER_GCSET_STRING +# +# define YDTRIGGER_GCSET_HANDLE(handle, table, key, value) StoreInteger(handle, table, key, YDTRIGGER_H2I(value)) +# define YDTRIGGER_GCSET_INTEGER(handle, table, key, value) StoreInteger(handle, table, key, value) +# define YDTRIGGER_GCSET_REAL(handle, table, key, value) StoreReal(handle, table, key, value) +# define YDTRIGGER_GCSET_BOOLEAN(handle, table, key, value) StoreBoolean(handle, table, key, value) +# define YDTRIGGER_GCSET_STRING(handle, table, key, value) StoreString(handle, table, key, value) +# +# /* +# * +# * GameCache版 Get +# * +# */ +# +# define YDTriggerGet(handle, type, table, key) YDTRIGGER_GET_##type##(handle, I2S(table), I2S(key)) +# define YDTriggerGetEx(handle, type, table, key) YDTRIGGER_GET_##type##(handle, I2S(table), #key) +# define YDTriggerGetByString(handle, type, table, key) YDTRIGGER_GET_##type##(handle, table, key) +# +# define YDTRIGGER_GET_integer YDTRIGGER_GCGET_INTEGER +# define YDTRIGGER_GET_real YDTRIGGER_GCGET_REAL +# define YDTRIGGER_GET_boolean YDTRIGGER_GCGET_BOOLEAN +# define YDTRIGGER_GET_string YDTRIGGER_GCGET_STRING +# define YDTRIGGER_GET_StringExt YDTRIGGER_GCGET_STRING +# define YDTRIGGER_GET_unitcode YDTRIGGER_GCGET_INTEGER +# define YDTRIGGER_GET_abilcode YDTRIGGER_GCGET_INTEGER +# define YDTRIGGER_GET_itemcode YDTRIGGER_GCGET_INTEGER +# define YDTRIGGER_GET_radian YDTRIGGER_GCGET_REAL +# define YDTRIGGER_GET_degree YDTRIGGER_GCGET_REAL +# define YDTRIGGER_GET_imagefile YDTRIGGER_GCGET_STRING +# define YDTRIGGER_GET_modelfile YDTRIGGER_GCGET_STRING +# +# define YDTRIGGER_GCGET_INTEGER(handle, table, key) GetStoredInteger(handle, table, key) +# define YDTRIGGER_GCGET_REAL(handle, table, key) GetStoredReal(handle, table, key) +# define YDTRIGGER_GCGET_BOOLEAN(handle, table, key) GetStoredBoolean(handle, table, key) +# define YDTRIGGER_GCGET_STRING(handle, table, key) GetStoredString(handle, table, key) +# +#endif diff --git a/plugin/YDTrigger/SaveLoadSystem/GCSystem.j b/plugin/YDTrigger/SaveLoadSystem/GCSystem.j new file mode 100644 index 0000000..c7a02b8 --- /dev/null +++ b/plugin/YDTrigger/SaveLoadSystem/GCSystem.j @@ -0,0 +1,52 @@ +#ifndef INCLUDE_SAVE_LOAD_SYSTEM_GC_JASS_H +#define INCLUDE_SAVE_LOAD_SYSTEM_GC_JASS_H + +function YDTRIGGER_H2I takes handle h returns integer + return h + return 0 +endfunction + +function YDTRIGGER_S2I takes string s returns integer + return s + return 0 +endfunction + +#define YDTRIGGER_GET_PROC(type) YDNL \ + function YDTRIGGER_GET_##type takes gamecache gc, string table, string key returns type YDNL \ + return GetStoredInteger(gc, table, key) YDNL \ + return null YDNL \ + endfunction + +YDTRIGGER_GET_PROC(timer) +YDTRIGGER_GET_PROC(trigger) +YDTRIGGER_GET_PROC(unit) +YDTRIGGER_GET_PROC(item) +YDTRIGGER_GET_PROC(group) +YDTRIGGER_GET_PROC(player) +YDTRIGGER_GET_PROC(location) +YDTRIGGER_GET_PROC(destructable) +YDTRIGGER_GET_PROC(force) +YDTRIGGER_GET_PROC(rect) +YDTRIGGER_GET_PROC(region) +YDTRIGGER_GET_PROC(sound) +YDTRIGGER_GET_PROC(effect) +YDTRIGGER_GET_PROC(unitpool) +YDTRIGGER_GET_PROC(itempool) +YDTRIGGER_GET_PROC(quest) +YDTRIGGER_GET_PROC(questitem) +YDTRIGGER_GET_PROC(timerdialog) +YDTRIGGER_GET_PROC(leaderboard) +YDTRIGGER_GET_PROC(multiboard) +YDTRIGGER_GET_PROC(multiboarditem) +YDTRIGGER_GET_PROC(trackable) +YDTRIGGER_GET_PROC(dialog) +YDTRIGGER_GET_PROC(button) +YDTRIGGER_GET_PROC(texttag) +YDTRIGGER_GET_PROC(lightning) +YDTRIGGER_GET_PROC(image) +YDTRIGGER_GET_PROC(fogstate) +YDTRIGGER_GET_PROC(fogmodifier) + +#undef YDTRIGGER_GET_PROC + +#endif diff --git a/plugin/YDTrigger/SaveLoadSystem/HTSet_Get.h b/plugin/YDTrigger/SaveLoadSystem/HTSet_Get.h new file mode 100644 index 0000000..bd122b6 --- /dev/null +++ b/plugin/YDTrigger/SaveLoadSystem/HTSet_Get.h @@ -0,0 +1,84 @@ +# /* +# * YDTrigger专用存储系统 +# * +# * set 和 get 的实现 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_SET_AND_GET_H +#define INCLUDE_YDTRIGGER_SET_AND_GET_H +# +# /* +# * +# * HashTable版 Clear +# * +# */ +# +# define YDHashClearAll(handle) FlushParentHashtable(handle) +# define YDHashClearTable(handle, table) FlushChildHashtable(handle, table) +# define YDHashClearTableByString(handle, table) FlushChildHashtable(handle, StringHash(table)) +# +# /* +# * +# * HashTable版 Set & Get +# * +# */ +# +# define YDHashSet(handle, type, table, key, value) YDTRIGGER_##type##(SET)(handle, table, key, value) +# define YDHashGet(handle, type, table, key) YDTRIGGER_##type##(GET)(handle, table, key) +# +# define YDHashSetEx(handle, type, table, key, value) YDHashSet(handle, type, table, key, value) +# define YDHashGetEx(handle, type, table, key) YDHashGet(handle, type, table, key) +# +# define YDHashSetByString(handle, type, table, key, value) YDTRIGGER_##type##(SET)(handle, StringHash(table), StringHash(key), value) +# define YDHashGetByString(handle, type, table, key) YDTRIGGER_##type##(GET)(handle, StringHash(table), StringHash(key)) +# +# define YDTRIGGER_HTSET(Type) Save##Type +# define YDTRIGGER_HTGET(Type) Load##Type +# +# define YDTRIGGER_integer(SG) YDTRIGGER_HT##SG##(Integer) +# define YDTRIGGER_real(SG) YDTRIGGER_HT##SG##(Real) +# define YDTRIGGER_boolean(SG) YDTRIGGER_HT##SG##(Boolean) +# define YDTRIGGER_string(SG) YDTRIGGER_HT##SG##(Str) +# define YDTRIGGER_StringExt(SG) YDTRIGGER_HT##SG##(Str) +# define YDTRIGGER_timer(SG) YDTRIGGER_HT##SG##(TimerHandle) +# define YDTRIGGER_trigger(SG) YDTRIGGER_HT##SG##(TriggerHandle) +# define YDTRIGGER_unit(SG) YDTRIGGER_HT##SG##(UnitHandle) +# define YDTRIGGER_unitcode(SG) YDTRIGGER_HT##SG##(Integer) +# define YDTRIGGER_abilcode(SG) YDTRIGGER_HT##SG##(Integer) +# define YDTRIGGER_item(SG) YDTRIGGER_HT##SG##(ItemHandle) +# define YDTRIGGER_itemcode(SG) YDTRIGGER_HT##SG##(Integer) +# define YDTRIGGER_group(SG) YDTRIGGER_HT##SG##(GroupHandle) +# define YDTRIGGER_player(SG) YDTRIGGER_HT##SG##(PlayerHandle) +# define YDTRIGGER_location(SG) YDTRIGGER_HT##SG##(LocationHandle) +# define YDTRIGGER_destructable(SG) YDTRIGGER_HT##SG##(DestructableHandle) +# define YDTRIGGER_force(SG) YDTRIGGER_HT##SG##(ForceHandle) +# define YDTRIGGER_rect(SG) YDTRIGGER_HT##SG##(RectHandle) +# define YDTRIGGER_region(SG) YDTRIGGER_HT##SG##(RegionHandle) +# define YDTRIGGER_sound(SG) YDTRIGGER_HT##SG##(SoundHandle) +# define YDTRIGGER_effect(SG) YDTRIGGER_HT##SG##(EffectHandle) +# define YDTRIGGER_unitpool(SG) YDTRIGGER_HT##SG##(UnitPoolHandle) +# define YDTRIGGER_itempool(SG) YDTRIGGER_HT##SG##(ItemPoolHandle) +# define YDTRIGGER_quest(SG) YDTRIGGER_HT##SG##(QuestHandle) +# define YDTRIGGER_questitem(SG) YDTRIGGER_HT##SG##(QuestItemHandle) +# define YDTRIGGER_timerdialog(SG) YDTRIGGER_HT##SG##(TimerDialogHandle) +# define YDTRIGGER_leaderboard(SG) YDTRIGGER_HT##SG##(LeaderboardHandle) +# define YDTRIGGER_multiboard(SG) YDTRIGGER_HT##SG##(MultiboardHandle) +# define YDTRIGGER_multiboarditem(SG) YDTRIGGER_HT##SG##(MultiboardItemHandle) +# define YDTRIGGER_trackable(SG) YDTRIGGER_HT##SG##(TrackableHandle) +# define YDTRIGGER_dialog(SG) YDTRIGGER_HT##SG##(DialogHandle) +# define YDTRIGGER_button(SG) YDTRIGGER_HT##SG##(ButtonHandle) +# define YDTRIGGER_texttag(SG) YDTRIGGER_HT##SG##(TextTagHandle) +# define YDTRIGGER_lightning(SG) YDTRIGGER_HT##SG##(LightningHandle) +# define YDTRIGGER_image(SG) YDTRIGGER_HT##SG##(ImageHandle) +# define YDTRIGGER_fogstate(SG) YDTRIGGER_HT##SG##(FogStateHandle) +# define YDTRIGGER_fogmodifier(SG) YDTRIGGER_HT##SG##(FogModifierHandle) +# define YDTRIGGER_radian(SG) YDTRIGGER_HT##SG##(Real) +# define YDTRIGGER_degree(SG) YDTRIGGER_HT##SG##(Real) +# define YDTRIGGER_imagefile(SG) YDTRIGGER_HT##SG##(Str) +# define YDTRIGGER_modelfile(SG) YDTRIGGER_HT##SG##(Str) +# define YDTRIGGER_frame(SG) YDTRIGGER_HT##SG##(Integer) +# +#endif diff --git a/plugin/YDTrigger/SaveLoadSystem/Has_Clear.h b/plugin/YDTrigger/SaveLoadSystem/Has_Clear.h new file mode 100644 index 0000000..57f1edc --- /dev/null +++ b/plugin/YDTrigger/SaveLoadSystem/Has_Clear.h @@ -0,0 +1,76 @@ +# /* +# * YDTrigger专用存储系统 +# * +# * has 和 clear 的实现 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_HAS_AND_CLEAR_H +#define INCLUDE_YDTRIGGER_HAS_AND_CLEAR_H +# +# if WARCRAFT_VERSION >= 124 +# define YDHashClear(handle, type, table, key) YDTRIGGER_HC_##type##(CLEAR)(handle, table, key) +# define YDHashHas(handle, type, table, key) YDTRIGGER_HC_##type##(HAS)(handle, table, key) +# +# define YDTRIGGER_CLEAR(Type) RemoveSaved##Type +# define YDTRIGGER_HAS(Type) HaveSaved##Type +# +# define RemoveSavedHandleDummy(ht, table, key) RemoveSavedHandle(ht, table, key) +# define HaveSavedHandleDummy(ht, table, key) HaveSavedHandle(ht, table, key) +# else +# define YDHashClear(handle, type, table, key) YDTRIGGER_HC_##type##(CLEAR)(handle, I2S(table), #key) +# define YDHashHas(handle, type, table, key) YDTRIGGER_HC_##type##(HAS)(handle, I2S(table), #key) +# +# define YDTRIGGER_CLEAR(Type) FlushStored##Type +# define YDTRIGGER_HAS(Type) HaveStored##Type +# +# define FlushStoredHandleDummy(gc, table, key) FlushStoredInteger(gc, table, key) +# define HaveStoredHandleDummy(gc, table, key) HaveStoredInteger(gc, table, key) +# endif +# +# define YDTRIGGER_HC_integer(HC) YDTRIGGER_##HC##(Integer) +# define YDTRIGGER_HC_real(HC) YDTRIGGER_##HC##(Real) +# define YDTRIGGER_HC_boolean(HC) YDTRIGGER_##HC##(Boolean) +# define YDTRIGGER_HC_string(HC) YDTRIGGER_##HC##(String) +# define YDTRIGGER_HC_StringExt(HC) YDTRIGGER_##HC##(String) +# define YDTRIGGER_HC_timer(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_trigger(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_unit(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_unitcode(HC) YDTRIGGER_##HC##(Integer) +# define YDTRIGGER_HC_abilcode(HC) YDTRIGGER_##HC##(Integer) +# define YDTRIGGER_HC_item(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_itemcode(HC) YDTRIGGER_##HC##(Integer) +# define YDTRIGGER_HC_group(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_player(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_location(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_destructable(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_force(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_rect(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_region(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_sound(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_effect(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_unitpool(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_itempool(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_quest(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_questitem(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_timerdialog(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_leaderboard(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_multiboard(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_multiboarditem(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_trackable(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_dialog(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_button(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_texttag(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_lightning(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_image(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_fogstate(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_fogmodifier(HC) YDTRIGGER_##HC##(HandleDummy) +# define YDTRIGGER_HC_radian(HC) YDTRIGGER_##HC##(Real) +# define YDTRIGGER_HC_degree(HC) YDTRIGGER_##HC##(Real) +# define YDTRIGGER_HC_imagefile(HC) YDTRIGGER_##HC##(String) +# define YDTRIGGER_HC_modelfile(HC) YDTRIGGER_##HC##(String) +# +# +#endif diff --git a/plugin/YDTrigger/Timer.h b/plugin/YDTrigger/Timer.h new file mode 100644 index 0000000..2d557f8 --- /dev/null +++ b/plugin/YDTrigger/Timer.h @@ -0,0 +1,64 @@ +#include +#include +#include +#include +#include +#include +#include +#include + + +#include BOOST_PP_UPDATE_COUNTER() + +#ifdef YDTimerPragmaSize +#undef YDTimerPragmaSize +#endif +#ifdef YDTimerPragmaTuple +#undef YDTimerPragmaTuple +#endif +#ifdef YDTimerBindHash +#undef YDTimerBindHash +#endif +#ifdef YDTimerReadHash +#undef YDTimerReadHash +#endif +#ifdef YDTimerBright +#undef YDTimerBright +#endif +#ifdef YDTimerStartEx +#undef YDTimerStartEx +#endif + +#define YDTimerPragmaSize BOOST_PP_TUPLE_ELEM(3, 1, YDTimerBind) +#define YDTimerPragmaTuple BOOST_PP_TUPLE_ELEM(3, 2, YDTimerBind) +#define YDTimerBindHash(t, type, var) YDTriggerSet(type, YDTriggerAny2I(timer, t), StringHash(#var), var) +#define YDTimerReadHash(t, type, var) var = YDTriggerGet(type, YDTriggerAny2I(timer, t), StringHash(#var)) +#define YDTimerBright BOOST_PP_CAT(YDTimerBright_, BOOST_PP_COUNTER) +#define YDTimerStartEx BOOST_PP_CAT(YDTimerStartEx_, BOOST_PP_COUNTER) + +#ifndef YDTimerPragmaListHasType +#define YDTimerPragmaListHasType(z, n, data) BOOST_PP_TUPLE_ELEM(YDTimerPragmaSize, n, data) p ## n +#endif + +#ifndef YDTimerPragmaList +#define YDTimerPragmaList(z, n, data) p ## n +#endif + +function YDTimerBright takes nothing returns nothing + local timer t = GetExpiredTimer() +#define BOOST_PP_LOCAL_MACRO(n) local BOOST_PP_TUPLE_ELEM(YDTimerPragmaSize, n, YDTimerPragmaTuple) YDTimerReadHash(t, BOOST_PP_TUPLE_ELEM(YDTimerPragmaSize, n, YDTimerPragmaTuple), p ## n) +#define BOOST_PP_LOCAL_LIMITS (0, BOOST_PP_SUB(YDTimerPragmaSize,1)) +#include BOOST_PP_LOCAL_ITERATE() + call BOOST_PP_TUPLE_ELEM(3, 0, YDTimerBind)(BOOST_PP_ENUM(YDTimerPragmaSize, YDTimerPragmaList, YDTimerPragmaTuple)) +endfunction + +function YDTimerStartEx takes timer t, real timeout, boolean periodic, BOOST_PP_ENUM(YDTimerPragmaSize, YDTimerPragmaListHasType, YDTimerPragmaTuple) returns nothing +#define BOOST_PP_LOCAL_MACRO(n) call YDTimerBindHash(t, BOOST_PP_TUPLE_ELEM(YDTimerPragmaSize, n, YDTimerPragmaTuple), p ## n) +#define BOOST_PP_LOCAL_LIMITS (0, BOOST_PP_SUB(YDTimerPragmaSize,1)) +#include BOOST_PP_LOCAL_ITERATE() + call TimerStart(t, timeout, periodic, function YDTimerBright) +endfunction + +#ifdef YDTimerBind +#undef YDTimerBind +#endif diff --git a/plugin/YDTrigger/YDTrigger.h b/plugin/YDTrigger/YDTrigger.h new file mode 100644 index 0000000..b2b975c --- /dev/null +++ b/plugin/YDTrigger/YDTrigger.h @@ -0,0 +1,72 @@ +# /* +# * YDTrigger专用宏 +# * +# * By actboy168 +# * +# */ +# +#ifndef INCLUDE_YDTRIGGER_H +#define INCLUDE_YDTRIGGER_H +# +# ifndef DISABLE_SAVE_LOAD_SYSTEM +# include +# include +# endif +# +# ifdef USE_BJ_OPTIMIZATION +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# ifdef USE_BJ_OPTIMIZATION_PRO +# include +# endif +# endif +# +# ifdef USE_BJ_ANTI_LEAK +# include "AntiBJLeak/MainMacro.h" +# endif +# +# define YDWESaveTriggerName(t,s) DoNothing() +# +# include +# include +# +# define YDWEGetObjectProperty(object_type, object_id, property) \ + YDTRIGGER_COMMON_SWITCH(YDWE_GET_OBJECT_PROPERTY_ ## object_type, ( \ + EXExecuteScript("(require'jass.slk').ability[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').buff[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').unit[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').item[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').upgrade[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').doodad[" + I2S(object_id) + "]." + property), \ + EXExecuteScript("(require'jass.slk').destructable[" + I2S(object_id) + "]." + property), \ + )) +# define YDWEGetObjectPropertyInteger(type, id, prop) S2I(YDWEGetObjectProperty(type, id, prop)) +# define YDWEGetObjectPropertyReal(type, id, prop) S2R(YDWEGetObjectProperty(type, id, prop)) +# define YDWEGetObjectPropertyString(type, id, prop) (YDWEGetObjectProperty(type, id, prop)) +# +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_ABILITY 0 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_BUFF 1 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_UNIT 2 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_ITEM 3 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_UPGRADE 4 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_DOODAD 5 +# define YDWE_GET_OBJECT_PROPERTY_YDWE_OBJECT_TYPE_DESTRUCTABLE 6 +# +# define YDTriggerExecuteTrigger(trig, check) \ + YDTRIGGER_COMMON_IF(check,\ + DoNothing() YDNL if TriggerEvaluate(trig) then YDNL call TriggerExecute(trig) YDNL endif, \ + TriggerExecute(trig) \ + ) +#endif diff --git a/plugin/YDWeHelper.dll b/plugin/YDWeHelper.dll new file mode 100644 index 0000000..c23da26 Binary files /dev/null and b/plugin/YDWeHelper.dll differ diff --git a/plugin/YDWeHelper.plcfg b/plugin/YDWeHelper.plcfg new file mode 100644 index 0000000..a5e1142 --- /dev/null +++ b/plugin/YDWeHelper.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = YDWeHelper +[Load] +Enable = 1 +Loader = DefaultPluginLoader.lua +Dll = YDWeHelper.dll diff --git a/plugin/jasshelper/bin/sfmpq.dll b/plugin/jasshelper/bin/sfmpq.dll new file mode 100644 index 0000000..18e5077 Binary files /dev/null and b/plugin/jasshelper/bin/sfmpq.dll differ diff --git a/plugin/jasshelper/blizzard.j b/plugin/jasshelper/blizzard.j new file mode 100644 index 0000000..38feb96 --- /dev/null +++ b/plugin/jasshelper/blizzard.j @@ -0,0 +1,10229 @@ +//=========================================================================== +// Blizzard.j ( define Jass2 functions that need to be in every map script ) +//=========================================================================== + + +globals + //----------------------------------------------------------------------- + // Constants + // + + // Misc constants + constant real bj_PI = 3.14159 + constant real bj_E = 2.71828 + constant real bj_CELLWIDTH = 128.0 + constant real bj_CLIFFHEIGHT = 128.0 + constant real bj_UNIT_FACING = 270.0 + constant real bj_RADTODEG = 180.0/bj_PI + constant real bj_DEGTORAD = bj_PI/180.0 + constant real bj_TEXT_DELAY_QUEST = 20.00 + constant real bj_TEXT_DELAY_QUESTUPDATE = 20.00 + constant real bj_TEXT_DELAY_QUESTDONE = 20.00 + constant real bj_TEXT_DELAY_QUESTFAILED = 20.00 + constant real bj_TEXT_DELAY_QUESTREQUIREMENT = 20.00 + constant real bj_TEXT_DELAY_MISSIONFAILED = 20.00 + constant real bj_TEXT_DELAY_ALWAYSHINT = 12.00 + constant real bj_TEXT_DELAY_HINT = 12.00 + constant real bj_TEXT_DELAY_SECRET = 10.00 + constant real bj_TEXT_DELAY_UNITACQUIRED = 15.00 + constant real bj_TEXT_DELAY_UNITAVAILABLE = 10.00 + constant real bj_TEXT_DELAY_ITEMACQUIRED = 10.00 + constant real bj_TEXT_DELAY_WARNING = 12.00 + constant real bj_QUEUE_DELAY_QUEST = 5.00 + constant real bj_QUEUE_DELAY_HINT = 5.00 + constant real bj_QUEUE_DELAY_SECRET = 3.00 + constant real bj_HANDICAP_EASY = 60.00 + constant real bj_GAME_STARTED_THRESHOLD = 0.01 + constant real bj_WAIT_FOR_COND_MIN_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_INTERVAL = 0.10 + constant real bj_POLLED_WAIT_SKIP_THRESHOLD = 2.00 + + // Game constants + constant integer bj_MAX_INVENTORY = 6 + constant integer bj_MAX_PLAYERS = 12 + constant integer bj_PLAYER_NEUTRAL_VICTIM = 13 + constant integer bj_PLAYER_NEUTRAL_EXTRA = 14 + constant integer bj_MAX_PLAYER_SLOTS = 16 + constant integer bj_MAX_SKELETONS = 25 + constant integer bj_MAX_STOCK_ITEM_SLOTS = 11 + constant integer bj_MAX_STOCK_UNIT_SLOTS = 11 + constant integer bj_MAX_ITEM_LEVEL = 10 + + // Ideally these would be looked up from Units/MiscData.txt, + // but there is currently no script functionality exposed to do that + constant real bj_TOD_DAWN = 6.00 + constant real bj_TOD_DUSK = 18.00 + + // Melee game settings: + // - Starting Time of Day (TOD) + // - Starting Gold + // - Starting Lumber + // - Starting Hero Tokens (free heroes) + // - Max heroes allowed per player + // - Max heroes allowed per hero type + // - Distance from start loc to search for nearby mines + // + constant real bj_MELEE_STARTING_TOD = 8.00 + constant integer bj_MELEE_STARTING_GOLD_V0 = 750 + constant integer bj_MELEE_STARTING_GOLD_V1 = 500 + constant integer bj_MELEE_STARTING_LUMBER_V0 = 200 + constant integer bj_MELEE_STARTING_LUMBER_V1 = 150 + constant integer bj_MELEE_STARTING_HERO_TOKENS = 1 + constant integer bj_MELEE_HERO_LIMIT = 3 + constant integer bj_MELEE_HERO_TYPE_LIMIT = 1 + constant real bj_MELEE_MINE_SEARCH_RADIUS = 2000 + constant real bj_MELEE_CLEAR_UNITS_RADIUS = 1500 + constant real bj_MELEE_CRIPPLE_TIMEOUT = 120.00 + constant real bj_MELEE_CRIPPLE_MSG_DURATION = 20.00 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V0 = 3 + constant integer bj_MELEE_MAX_TWINKED_HEROES_V1 = 1 + + // Delay between a creep's death and the time it may drop an item. + constant real bj_CREEP_ITEM_DELAY = 0.50 + + // Timing settings for Marketplace inventories. + constant real bj_STOCK_RESTOCK_INITIAL_DELAY = 120 + constant real bj_STOCK_RESTOCK_INTERVAL = 30 + constant integer bj_STOCK_MAX_ITERATIONS = 20 + + // Max events registered by a single "dest dies in region" event. + constant integer bj_MAX_DEST_IN_REGION_EVENTS = 64 + + // Camera settings + constant integer bj_CAMERA_MIN_FARZ = 100 + constant integer bj_CAMERA_DEFAULT_DISTANCE = 1650 + constant integer bj_CAMERA_DEFAULT_FARZ = 5000 + constant integer bj_CAMERA_DEFAULT_AOA = 304 + constant integer bj_CAMERA_DEFAULT_FOV = 70 + constant integer bj_CAMERA_DEFAULT_ROLL = 0 + constant integer bj_CAMERA_DEFAULT_ROTATION = 90 + + // Rescue + constant real bj_RESCUE_PING_TIME = 2.00 + + // Transmission behavior settings + constant real bj_NOTHING_SOUND_DURATION = 5.00 + constant real bj_TRANSMISSION_PING_TIME = 1.00 + constant integer bj_TRANSMISSION_IND_RED = 255 + constant integer bj_TRANSMISSION_IND_BLUE = 255 + constant integer bj_TRANSMISSION_IND_GREEN = 255 + constant integer bj_TRANSMISSION_IND_ALPHA = 255 + constant real bj_TRANSMISSION_PORT_HANGTIME = 1.50 + + // Cinematic mode settings + constant real bj_CINEMODE_INTERFACEFADE = 0.50 + constant gamespeed bj_CINEMODE_GAMESPEED = MAP_SPEED_NORMAL + + // Cinematic mode volume levels + constant real bj_CINEMODE_VOLUME_UNITMOVEMENT = 0.40 + constant real bj_CINEMODE_VOLUME_UNITSOUNDS = 0.00 + constant real bj_CINEMODE_VOLUME_COMBAT = 0.40 + constant real bj_CINEMODE_VOLUME_SPELLS = 0.40 + constant real bj_CINEMODE_VOLUME_UI = 0.00 + constant real bj_CINEMODE_VOLUME_MUSIC = 0.55 + constant real bj_CINEMODE_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_CINEMODE_VOLUME_FIRE = 0.60 + + // Speech mode volume levels + constant real bj_SPEECH_VOLUME_UNITMOVEMENT = 0.25 + constant real bj_SPEECH_VOLUME_UNITSOUNDS = 0.00 + constant real bj_SPEECH_VOLUME_COMBAT = 0.25 + constant real bj_SPEECH_VOLUME_SPELLS = 0.25 + constant real bj_SPEECH_VOLUME_UI = 0.00 + constant real bj_SPEECH_VOLUME_MUSIC = 0.55 + constant real bj_SPEECH_VOLUME_AMBIENTSOUNDS = 1.00 + constant real bj_SPEECH_VOLUME_FIRE = 0.60 + + // Smart pan settings + constant real bj_SMARTPAN_TRESHOLD_PAN = 500 + constant real bj_SMARTPAN_TRESHOLD_SNAP = 3500 + + // QueuedTriggerExecute settings + constant integer bj_MAX_QUEUED_TRIGGERS = 100 + constant real bj_QUEUED_TRIGGER_TIMEOUT = 180.00 + + // Campaign indexing constants + constant integer bj_CAMPAIGN_INDEX_T = 0 + constant integer bj_CAMPAIGN_INDEX_H = 1 + constant integer bj_CAMPAIGN_INDEX_U = 2 + constant integer bj_CAMPAIGN_INDEX_O = 3 + constant integer bj_CAMPAIGN_INDEX_N = 4 + constant integer bj_CAMPAIGN_INDEX_XN = 5 + constant integer bj_CAMPAIGN_INDEX_XH = 6 + constant integer bj_CAMPAIGN_INDEX_XU = 7 + constant integer bj_CAMPAIGN_INDEX_XO = 8 + + // Campaign offset constants (for mission indexing) + constant integer bj_CAMPAIGN_OFFSET_T = 0 + constant integer bj_CAMPAIGN_OFFSET_H = 1 + constant integer bj_CAMPAIGN_OFFSET_U = 2 + constant integer bj_CAMPAIGN_OFFSET_O = 3 + constant integer bj_CAMPAIGN_OFFSET_N = 4 + constant integer bj_CAMPAIGN_OFFSET_XN = 0 + constant integer bj_CAMPAIGN_OFFSET_XH = 1 + constant integer bj_CAMPAIGN_OFFSET_XU = 2 + constant integer bj_CAMPAIGN_OFFSET_XO = 3 + + // Mission indexing constants + // Tutorial + constant integer bj_MISSION_INDEX_T00 = bj_CAMPAIGN_OFFSET_T * 1000 + 0 + constant integer bj_MISSION_INDEX_T01 = bj_CAMPAIGN_OFFSET_T * 1000 + 1 + // Human + constant integer bj_MISSION_INDEX_H00 = bj_CAMPAIGN_OFFSET_H * 1000 + 0 + constant integer bj_MISSION_INDEX_H01 = bj_CAMPAIGN_OFFSET_H * 1000 + 1 + constant integer bj_MISSION_INDEX_H02 = bj_CAMPAIGN_OFFSET_H * 1000 + 2 + constant integer bj_MISSION_INDEX_H03 = bj_CAMPAIGN_OFFSET_H * 1000 + 3 + constant integer bj_MISSION_INDEX_H04 = bj_CAMPAIGN_OFFSET_H * 1000 + 4 + constant integer bj_MISSION_INDEX_H05 = bj_CAMPAIGN_OFFSET_H * 1000 + 5 + constant integer bj_MISSION_INDEX_H06 = bj_CAMPAIGN_OFFSET_H * 1000 + 6 + constant integer bj_MISSION_INDEX_H07 = bj_CAMPAIGN_OFFSET_H * 1000 + 7 + constant integer bj_MISSION_INDEX_H08 = bj_CAMPAIGN_OFFSET_H * 1000 + 8 + constant integer bj_MISSION_INDEX_H09 = bj_CAMPAIGN_OFFSET_H * 1000 + 9 + constant integer bj_MISSION_INDEX_H10 = bj_CAMPAIGN_OFFSET_H * 1000 + 10 + constant integer bj_MISSION_INDEX_H11 = bj_CAMPAIGN_OFFSET_H * 1000 + 11 + // Undead + constant integer bj_MISSION_INDEX_U00 = bj_CAMPAIGN_OFFSET_U * 1000 + 0 + constant integer bj_MISSION_INDEX_U01 = bj_CAMPAIGN_OFFSET_U * 1000 + 1 + constant integer bj_MISSION_INDEX_U02 = bj_CAMPAIGN_OFFSET_U * 1000 + 2 + constant integer bj_MISSION_INDEX_U03 = bj_CAMPAIGN_OFFSET_U * 1000 + 3 + constant integer bj_MISSION_INDEX_U05 = bj_CAMPAIGN_OFFSET_U * 1000 + 4 + constant integer bj_MISSION_INDEX_U07 = bj_CAMPAIGN_OFFSET_U * 1000 + 5 + constant integer bj_MISSION_INDEX_U08 = bj_CAMPAIGN_OFFSET_U * 1000 + 6 + constant integer bj_MISSION_INDEX_U09 = bj_CAMPAIGN_OFFSET_U * 1000 + 7 + constant integer bj_MISSION_INDEX_U10 = bj_CAMPAIGN_OFFSET_U * 1000 + 8 + constant integer bj_MISSION_INDEX_U11 = bj_CAMPAIGN_OFFSET_U * 1000 + 9 + // Orc + constant integer bj_MISSION_INDEX_O00 = bj_CAMPAIGN_OFFSET_O * 1000 + 0 + constant integer bj_MISSION_INDEX_O01 = bj_CAMPAIGN_OFFSET_O * 1000 + 1 + constant integer bj_MISSION_INDEX_O02 = bj_CAMPAIGN_OFFSET_O * 1000 + 2 + constant integer bj_MISSION_INDEX_O03 = bj_CAMPAIGN_OFFSET_O * 1000 + 3 + constant integer bj_MISSION_INDEX_O04 = bj_CAMPAIGN_OFFSET_O * 1000 + 4 + constant integer bj_MISSION_INDEX_O05 = bj_CAMPAIGN_OFFSET_O * 1000 + 5 + constant integer bj_MISSION_INDEX_O06 = bj_CAMPAIGN_OFFSET_O * 1000 + 6 + constant integer bj_MISSION_INDEX_O07 = bj_CAMPAIGN_OFFSET_O * 1000 + 7 + constant integer bj_MISSION_INDEX_O08 = bj_CAMPAIGN_OFFSET_O * 1000 + 8 + constant integer bj_MISSION_INDEX_O09 = bj_CAMPAIGN_OFFSET_O * 1000 + 9 + constant integer bj_MISSION_INDEX_O10 = bj_CAMPAIGN_OFFSET_O * 1000 + 10 + // Night Elf + constant integer bj_MISSION_INDEX_N00 = bj_CAMPAIGN_OFFSET_N * 1000 + 0 + constant integer bj_MISSION_INDEX_N01 = bj_CAMPAIGN_OFFSET_N * 1000 + 1 + constant integer bj_MISSION_INDEX_N02 = bj_CAMPAIGN_OFFSET_N * 1000 + 2 + constant integer bj_MISSION_INDEX_N03 = bj_CAMPAIGN_OFFSET_N * 1000 + 3 + constant integer bj_MISSION_INDEX_N04 = bj_CAMPAIGN_OFFSET_N * 1000 + 4 + constant integer bj_MISSION_INDEX_N05 = bj_CAMPAIGN_OFFSET_N * 1000 + 5 + constant integer bj_MISSION_INDEX_N06 = bj_CAMPAIGN_OFFSET_N * 1000 + 6 + constant integer bj_MISSION_INDEX_N07 = bj_CAMPAIGN_OFFSET_N * 1000 + 7 + constant integer bj_MISSION_INDEX_N08 = bj_CAMPAIGN_OFFSET_N * 1000 + 8 + constant integer bj_MISSION_INDEX_N09 = bj_CAMPAIGN_OFFSET_N * 1000 + 9 + // Expansion Night Elf + constant integer bj_MISSION_INDEX_XN00 = bj_CAMPAIGN_OFFSET_XN * 1000 + 0 + constant integer bj_MISSION_INDEX_XN01 = bj_CAMPAIGN_OFFSET_XN * 1000 + 1 + constant integer bj_MISSION_INDEX_XN02 = bj_CAMPAIGN_OFFSET_XN * 1000 + 2 + constant integer bj_MISSION_INDEX_XN03 = bj_CAMPAIGN_OFFSET_XN * 1000 + 3 + constant integer bj_MISSION_INDEX_XN04 = bj_CAMPAIGN_OFFSET_XN * 1000 + 4 + constant integer bj_MISSION_INDEX_XN05 = bj_CAMPAIGN_OFFSET_XN * 1000 + 5 + constant integer bj_MISSION_INDEX_XN06 = bj_CAMPAIGN_OFFSET_XN * 1000 + 6 + constant integer bj_MISSION_INDEX_XN07 = bj_CAMPAIGN_OFFSET_XN * 1000 + 7 + constant integer bj_MISSION_INDEX_XN08 = bj_CAMPAIGN_OFFSET_XN * 1000 + 8 + constant integer bj_MISSION_INDEX_XN09 = bj_CAMPAIGN_OFFSET_XN * 1000 + 9 + constant integer bj_MISSION_INDEX_XN10 = bj_CAMPAIGN_OFFSET_XN * 1000 + 10 + // Expansion Human + constant integer bj_MISSION_INDEX_XH00 = bj_CAMPAIGN_OFFSET_XH * 1000 + 0 + constant integer bj_MISSION_INDEX_XH01 = bj_CAMPAIGN_OFFSET_XH * 1000 + 1 + constant integer bj_MISSION_INDEX_XH02 = bj_CAMPAIGN_OFFSET_XH * 1000 + 2 + constant integer bj_MISSION_INDEX_XH03 = bj_CAMPAIGN_OFFSET_XH * 1000 + 3 + constant integer bj_MISSION_INDEX_XH04 = bj_CAMPAIGN_OFFSET_XH * 1000 + 4 + constant integer bj_MISSION_INDEX_XH05 = bj_CAMPAIGN_OFFSET_XH * 1000 + 5 + constant integer bj_MISSION_INDEX_XH06 = bj_CAMPAIGN_OFFSET_XH * 1000 + 6 + constant integer bj_MISSION_INDEX_XH07 = bj_CAMPAIGN_OFFSET_XH * 1000 + 7 + constant integer bj_MISSION_INDEX_XH08 = bj_CAMPAIGN_OFFSET_XH * 1000 + 8 + constant integer bj_MISSION_INDEX_XH09 = bj_CAMPAIGN_OFFSET_XH * 1000 + 9 + // Expansion Undead + constant integer bj_MISSION_INDEX_XU00 = bj_CAMPAIGN_OFFSET_XU * 1000 + 0 + constant integer bj_MISSION_INDEX_XU01 = bj_CAMPAIGN_OFFSET_XU * 1000 + 1 + constant integer bj_MISSION_INDEX_XU02 = bj_CAMPAIGN_OFFSET_XU * 1000 + 2 + constant integer bj_MISSION_INDEX_XU03 = bj_CAMPAIGN_OFFSET_XU * 1000 + 3 + constant integer bj_MISSION_INDEX_XU04 = bj_CAMPAIGN_OFFSET_XU * 1000 + 4 + constant integer bj_MISSION_INDEX_XU05 = bj_CAMPAIGN_OFFSET_XU * 1000 + 5 + constant integer bj_MISSION_INDEX_XU06 = bj_CAMPAIGN_OFFSET_XU * 1000 + 6 + constant integer bj_MISSION_INDEX_XU07 = bj_CAMPAIGN_OFFSET_XU * 1000 + 7 + constant integer bj_MISSION_INDEX_XU08 = bj_CAMPAIGN_OFFSET_XU * 1000 + 8 + constant integer bj_MISSION_INDEX_XU09 = bj_CAMPAIGN_OFFSET_XU * 1000 + 9 + constant integer bj_MISSION_INDEX_XU10 = bj_CAMPAIGN_OFFSET_XU * 1000 + 10 + constant integer bj_MISSION_INDEX_XU11 = bj_CAMPAIGN_OFFSET_XU * 1000 + 11 + constant integer bj_MISSION_INDEX_XU12 = bj_CAMPAIGN_OFFSET_XU * 1000 + 12 + constant integer bj_MISSION_INDEX_XU13 = bj_CAMPAIGN_OFFSET_XU * 1000 + 13 + + // Expansion Orc + constant integer bj_MISSION_INDEX_XO00 = bj_CAMPAIGN_OFFSET_XO * 1000 + 0 + + // Cinematic indexing constants + constant integer bj_CINEMATICINDEX_TOP = 0 + constant integer bj_CINEMATICINDEX_HOP = 1 + constant integer bj_CINEMATICINDEX_HED = 2 + constant integer bj_CINEMATICINDEX_OOP = 3 + constant integer bj_CINEMATICINDEX_OED = 4 + constant integer bj_CINEMATICINDEX_UOP = 5 + constant integer bj_CINEMATICINDEX_UED = 6 + constant integer bj_CINEMATICINDEX_NOP = 7 + constant integer bj_CINEMATICINDEX_NED = 8 + constant integer bj_CINEMATICINDEX_XOP = 9 + constant integer bj_CINEMATICINDEX_XED = 10 + + // Alliance settings + constant integer bj_ALLIANCE_UNALLIED = 0 + constant integer bj_ALLIANCE_UNALLIED_VISION = 1 + constant integer bj_ALLIANCE_ALLIED = 2 + constant integer bj_ALLIANCE_ALLIED_VISION = 3 + constant integer bj_ALLIANCE_ALLIED_UNITS = 4 + constant integer bj_ALLIANCE_ALLIED_ADVUNITS = 5 + constant integer bj_ALLIANCE_NEUTRAL = 6 + constant integer bj_ALLIANCE_NEUTRAL_VISION = 7 + + // Keyboard Event Types + constant integer bj_KEYEVENTTYPE_DEPRESS = 0 + constant integer bj_KEYEVENTTYPE_RELEASE = 1 + + // Keyboard Event Keys + constant integer bj_KEYEVENTKEY_LEFT = 0 + constant integer bj_KEYEVENTKEY_RIGHT = 1 + constant integer bj_KEYEVENTKEY_DOWN = 2 + constant integer bj_KEYEVENTKEY_UP = 3 + + // Transmission timing methods + constant integer bj_TIMETYPE_ADD = 0 + constant integer bj_TIMETYPE_SET = 1 + constant integer bj_TIMETYPE_SUB = 2 + + // Camera bounds adjustment methods + constant integer bj_CAMERABOUNDS_ADJUST_ADD = 0 + constant integer bj_CAMERABOUNDS_ADJUST_SUB = 1 + + // Quest creation states + constant integer bj_QUESTTYPE_REQ_DISCOVERED = 0 + constant integer bj_QUESTTYPE_REQ_UNDISCOVERED = 1 + constant integer bj_QUESTTYPE_OPT_DISCOVERED = 2 + constant integer bj_QUESTTYPE_OPT_UNDISCOVERED = 3 + + // Quest message types + constant integer bj_QUESTMESSAGE_DISCOVERED = 0 + constant integer bj_QUESTMESSAGE_UPDATED = 1 + constant integer bj_QUESTMESSAGE_COMPLETED = 2 + constant integer bj_QUESTMESSAGE_FAILED = 3 + constant integer bj_QUESTMESSAGE_REQUIREMENT = 4 + constant integer bj_QUESTMESSAGE_MISSIONFAILED = 5 + constant integer bj_QUESTMESSAGE_ALWAYSHINT = 6 + constant integer bj_QUESTMESSAGE_HINT = 7 + constant integer bj_QUESTMESSAGE_SECRET = 8 + constant integer bj_QUESTMESSAGE_UNITACQUIRED = 9 + constant integer bj_QUESTMESSAGE_UNITAVAILABLE = 10 + constant integer bj_QUESTMESSAGE_ITEMACQUIRED = 11 + constant integer bj_QUESTMESSAGE_WARNING = 12 + + // Leaderboard sorting methods + constant integer bj_SORTTYPE_SORTBYVALUE = 0 + constant integer bj_SORTTYPE_SORTBYPLAYER = 1 + constant integer bj_SORTTYPE_SORTBYLABEL = 2 + + // Cinematic fade filter methods + constant integer bj_CINEFADETYPE_FADEIN = 0 + constant integer bj_CINEFADETYPE_FADEOUT = 1 + constant integer bj_CINEFADETYPE_FADEOUTIN = 2 + + // Buff removal methods + constant integer bj_REMOVEBUFFS_POSITIVE = 0 + constant integer bj_REMOVEBUFFS_NEGATIVE = 1 + constant integer bj_REMOVEBUFFS_ALL = 2 + constant integer bj_REMOVEBUFFS_NONTLIFE = 3 + + // Buff properties - polarity + constant integer bj_BUFF_POLARITY_POSITIVE = 0 + constant integer bj_BUFF_POLARITY_NEGATIVE = 1 + constant integer bj_BUFF_POLARITY_EITHER = 2 + + // Buff properties - resist type + constant integer bj_BUFF_RESIST_MAGIC = 0 + constant integer bj_BUFF_RESIST_PHYSICAL = 1 + constant integer bj_BUFF_RESIST_EITHER = 2 + constant integer bj_BUFF_RESIST_BOTH = 3 + + // Hero stats + constant integer bj_HEROSTAT_STR = 0 + constant integer bj_HEROSTAT_AGI = 1 + constant integer bj_HEROSTAT_INT = 2 + + // Hero skill point modification methods + constant integer bj_MODIFYMETHOD_ADD = 0 + constant integer bj_MODIFYMETHOD_SUB = 1 + constant integer bj_MODIFYMETHOD_SET = 2 + + // Unit state adjustment methods (for replaced units) + constant integer bj_UNIT_STATE_METHOD_ABSOLUTE = 0 + constant integer bj_UNIT_STATE_METHOD_RELATIVE = 1 + constant integer bj_UNIT_STATE_METHOD_DEFAULTS = 2 + constant integer bj_UNIT_STATE_METHOD_MAXIMUM = 3 + + // Gate operations + constant integer bj_GATEOPERATION_CLOSE = 0 + constant integer bj_GATEOPERATION_OPEN = 1 + constant integer bj_GATEOPERATION_DESTROY = 2 + + // Game cache value types + constant integer bj_GAMECACHE_BOOLEAN = 0 + constant integer bj_GAMECACHE_INTEGER = 1 + constant integer bj_GAMECACHE_REAL = 2 + constant integer bj_GAMECACHE_UNIT = 3 + constant integer bj_GAMECACHE_STRING = 4 + + // Hashtable value types + constant integer bj_HASHTABLE_BOOLEAN = 0 + constant integer bj_HASHTABLE_INTEGER = 1 + constant integer bj_HASHTABLE_REAL = 2 + constant integer bj_HASHTABLE_STRING = 3 + constant integer bj_HASHTABLE_HANDLE = 4 + + // Item status types + constant integer bj_ITEM_STATUS_HIDDEN = 0 + constant integer bj_ITEM_STATUS_OWNED = 1 + constant integer bj_ITEM_STATUS_INVULNERABLE = 2 + constant integer bj_ITEM_STATUS_POWERUP = 3 + constant integer bj_ITEM_STATUS_SELLABLE = 4 + constant integer bj_ITEM_STATUS_PAWNABLE = 5 + + // Itemcode status types + constant integer bj_ITEMCODE_STATUS_POWERUP = 0 + constant integer bj_ITEMCODE_STATUS_SELLABLE = 1 + constant integer bj_ITEMCODE_STATUS_PAWNABLE = 2 + + // Minimap ping styles + constant integer bj_MINIMAPPINGSTYLE_SIMPLE = 0 + constant integer bj_MINIMAPPINGSTYLE_FLASHY = 1 + constant integer bj_MINIMAPPINGSTYLE_ATTACK = 2 + + // Corpse creation settings + constant real bj_CORPSE_MAX_DEATH_TIME = 8.00 + + // Corpse creation styles + constant integer bj_CORPSETYPE_FLESH = 0 + constant integer bj_CORPSETYPE_BONE = 1 + + // Elevator pathing-blocker destructable code + constant integer bj_ELEVATOR_BLOCKER_CODE = 'DTep' + constant integer bj_ELEVATOR_CODE01 = 'DTrf' + constant integer bj_ELEVATOR_CODE02 = 'DTrx' + + // Elevator wall codes + constant integer bj_ELEVATOR_WALL_TYPE_ALL = 0 + constant integer bj_ELEVATOR_WALL_TYPE_EAST = 1 + constant integer bj_ELEVATOR_WALL_TYPE_NORTH = 2 + constant integer bj_ELEVATOR_WALL_TYPE_SOUTH = 3 + constant integer bj_ELEVATOR_WALL_TYPE_WEST = 4 + + //----------------------------------------------------------------------- + // Variables + // + + // Force predefs + force bj_FORCE_ALL_PLAYERS = null + force array bj_FORCE_PLAYER + + integer bj_MELEE_MAX_TWINKED_HEROES = 0 + + // Map area rects + rect bj_mapInitialPlayableArea = null + rect bj_mapInitialCameraBounds = null + + // Utility function vars + integer bj_forLoopAIndex = 0 + integer bj_forLoopBIndex = 0 + integer bj_forLoopAIndexEnd = 0 + integer bj_forLoopBIndexEnd = 0 + + boolean bj_slotControlReady = false + boolean array bj_slotControlUsed + mapcontrol array bj_slotControl + + // Game started detection vars + timer bj_gameStartedTimer = null + boolean bj_gameStarted = false + timer bj_volumeGroupsTimer = CreateTimer() + + // Singleplayer check + boolean bj_isSinglePlayer = false + + // Day/Night Cycle vars + trigger bj_dncSoundsDay = null + trigger bj_dncSoundsNight = null + sound bj_dayAmbientSound = null + sound bj_nightAmbientSound = null + trigger bj_dncSoundsDawn = null + trigger bj_dncSoundsDusk = null + sound bj_dawnSound = null + sound bj_duskSound = null + boolean bj_useDawnDuskSounds = true + boolean bj_dncIsDaytime = false + + // Triggered sounds + //sound bj_pingMinimapSound = null + sound bj_rescueSound = null + sound bj_questDiscoveredSound = null + sound bj_questUpdatedSound = null + sound bj_questCompletedSound = null + sound bj_questFailedSound = null + sound bj_questHintSound = null + sound bj_questSecretSound = null + sound bj_questItemAcquiredSound = null + sound bj_questWarningSound = null + sound bj_victoryDialogSound = null + sound bj_defeatDialogSound = null + + // Marketplace vars + trigger bj_stockItemPurchased = null + timer bj_stockUpdateTimer = null + boolean array bj_stockAllowedPermanent + boolean array bj_stockAllowedCharged + boolean array bj_stockAllowedArtifact + integer bj_stockPickedItemLevel = 0 + itemtype bj_stockPickedItemType + + // Melee vars + trigger bj_meleeVisibilityTrained = null + boolean bj_meleeVisibilityIsDay = true + boolean bj_meleeGrantHeroItems = false + location bj_meleeNearestMineToLoc = null + unit bj_meleeNearestMine = null + real bj_meleeNearestMineDist = 0.00 + boolean bj_meleeGameOver = false + boolean array bj_meleeDefeated + boolean array bj_meleeVictoried + unit array bj_ghoul + timer array bj_crippledTimer + timerdialog array bj_crippledTimerWindows + boolean array bj_playerIsCrippled + boolean array bj_playerIsExposed + boolean bj_finishSoonAllExposed = false + timerdialog bj_finishSoonTimerDialog = null + integer array bj_meleeTwinkedHeroes + + // Rescue behavior vars + trigger bj_rescueUnitBehavior = null + boolean bj_rescueChangeColorUnit = true + boolean bj_rescueChangeColorBldg = true + + // Transmission vars + timer bj_cineSceneEndingTimer = null + sound bj_cineSceneLastSound = null + trigger bj_cineSceneBeingSkipped = null + + // Cinematic mode vars + gamespeed bj_cineModePriorSpeed = MAP_SPEED_NORMAL + boolean bj_cineModePriorFogSetting = false + boolean bj_cineModePriorMaskSetting = false + boolean bj_cineModeAlreadyIn = false + boolean bj_cineModePriorDawnDusk = false + integer bj_cineModeSavedSeed = 0 + + // Cinematic fade vars + timer bj_cineFadeFinishTimer = null + timer bj_cineFadeContinueTimer = null + real bj_cineFadeContinueRed = 0 + real bj_cineFadeContinueGreen = 0 + real bj_cineFadeContinueBlue = 0 + real bj_cineFadeContinueTrans = 0 + real bj_cineFadeContinueDuration = 0 + string bj_cineFadeContinueTex = "" + + // QueuedTriggerExecute vars + integer bj_queuedExecTotal = 0 + trigger array bj_queuedExecTriggers + boolean array bj_queuedExecUseConds + timer bj_queuedExecTimeoutTimer = CreateTimer() + trigger bj_queuedExecTimeout = null + + // Helper vars (for Filter and Enum funcs) + integer bj_destInRegionDiesCount = 0 + trigger bj_destInRegionDiesTrig = null + integer bj_groupCountUnits = 0 + integer bj_forceCountPlayers = 0 + integer bj_groupEnumTypeId = 0 + player bj_groupEnumOwningPlayer = null + group bj_groupAddGroupDest = null + group bj_groupRemoveGroupDest = null + integer bj_groupRandomConsidered = 0 + unit bj_groupRandomCurrentPick = null + group bj_groupLastCreatedDest = null + group bj_randomSubGroupGroup = null + integer bj_randomSubGroupWant = 0 + integer bj_randomSubGroupTotal = 0 + real bj_randomSubGroupChance = 0 + integer bj_destRandomConsidered = 0 + destructable bj_destRandomCurrentPick = null + destructable bj_elevatorWallBlocker = null + destructable bj_elevatorNeighbor = null + integer bj_itemRandomConsidered = 0 + item bj_itemRandomCurrentPick = null + integer bj_forceRandomConsidered = 0 + player bj_forceRandomCurrentPick = null + unit bj_makeUnitRescuableUnit = null + boolean bj_makeUnitRescuableFlag = true + boolean bj_pauseAllUnitsFlag = true + location bj_enumDestructableCenter = null + real bj_enumDestructableRadius = 0 + playercolor bj_setPlayerTargetColor = null + boolean bj_isUnitGroupDeadResult = true + boolean bj_isUnitGroupEmptyResult = true + boolean bj_isUnitGroupInRectResult = true + rect bj_isUnitGroupInRectRect = null + boolean bj_changeLevelShowScores = false + string bj_changeLevelMapName = null + group bj_suspendDecayFleshGroup = CreateGroup() + group bj_suspendDecayBoneGroup = CreateGroup() + timer bj_delayedSuspendDecayTimer = CreateTimer() + trigger bj_delayedSuspendDecayTrig = null + integer bj_livingPlayerUnitsTypeId = 0 + widget bj_lastDyingWidget = null + + // Random distribution vars + integer bj_randDistCount = 0 + integer array bj_randDistID + integer array bj_randDistChance + + // Last X'd vars + unit bj_lastCreatedUnit = null + item bj_lastCreatedItem = null + item bj_lastRemovedItem = null + unit bj_lastHauntedGoldMine = null + destructable bj_lastCreatedDestructable = null + group bj_lastCreatedGroup = CreateGroup() + fogmodifier bj_lastCreatedFogModifier = null + effect bj_lastCreatedEffect = null + weathereffect bj_lastCreatedWeatherEffect = null + terraindeformation bj_lastCreatedTerrainDeformation = null + quest bj_lastCreatedQuest = null + questitem bj_lastCreatedQuestItem = null + defeatcondition bj_lastCreatedDefeatCondition = null + timer bj_lastStartedTimer = CreateTimer() + timerdialog bj_lastCreatedTimerDialog = null + leaderboard bj_lastCreatedLeaderboard = null + multiboard bj_lastCreatedMultiboard = null + sound bj_lastPlayedSound = null + string bj_lastPlayedMusic = "" + real bj_lastTransmissionDuration = 0 + gamecache bj_lastCreatedGameCache = null + hashtable bj_lastCreatedHashtable = null + unit bj_lastLoadedUnit = null + button bj_lastCreatedButton = null + unit bj_lastReplacedUnit = null + texttag bj_lastCreatedTextTag = null + lightning bj_lastCreatedLightning = null + image bj_lastCreatedImage = null + ubersplat bj_lastCreatedUbersplat = null + + // Filter function vars + boolexpr filterIssueHauntOrderAtLocBJ = null + boolexpr filterEnumDestructablesInCircleBJ = null + boolexpr filterGetUnitsInRectOfPlayer = null + boolexpr filterGetUnitsOfTypeIdAll = null + boolexpr filterGetUnitsOfPlayerAndTypeId = null + boolexpr filterMeleeTrainedUnitIsHeroBJ = null + boolexpr filterLivingPlayerUnitsOfTypeId = null + + // Memory cleanup vars + boolean bj_wantDestroyGroup = false +endglobals + + + +//*************************************************************************** +//* +//* Debugging Functions +//* +//*************************************************************************** + +//=========================================================================== +function BJDebugMsg takes string msg returns nothing + local integer i = 0 + loop + call DisplayTimedTextToPlayer(Player(i),0,0,60,msg) + set i = i + 1 + exitwhen i == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Math Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function RMinBJ takes real a, real b returns real + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function RMaxBJ takes real a, real b returns real + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function RAbsBJ takes real a returns real + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function RSignBJ takes real a returns real + if (a >= 0.0) then + return 1.0 + else + return -1.0 + endif +endfunction + +//=========================================================================== +function IMinBJ takes integer a, integer b returns integer + if (a < b) then + return a + else + return b + endif +endfunction + +//=========================================================================== +function IMaxBJ takes integer a, integer b returns integer + if (a < b) then + return b + else + return a + endif +endfunction + +//=========================================================================== +function IAbsBJ takes integer a returns integer + if (a >= 0) then + return a + else + return -a + endif +endfunction + +//=========================================================================== +function ISignBJ takes integer a returns integer + if (a >= 0) then + return 1 + else + return -1 + endif +endfunction + +//=========================================================================== +function SinBJ takes real degrees returns real + return Sin(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function CosBJ takes real degrees returns real + return Cos(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function TanBJ takes real degrees returns real + return Tan(degrees * bj_DEGTORAD) +endfunction + +//=========================================================================== +function AsinBJ takes real degrees returns real + return Asin(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AcosBJ takes real degrees returns real + return Acos(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function AtanBJ takes real degrees returns real + return Atan(degrees) * bj_RADTODEG +endfunction + +//=========================================================================== +function Atan2BJ takes real y, real x returns real + return Atan2(y, x) * bj_RADTODEG +endfunction + +//=========================================================================== +function AngleBetweenPoints takes location locA, location locB returns real + return bj_RADTODEG * Atan2(GetLocationY(locB) - GetLocationY(locA), GetLocationX(locB) - GetLocationX(locA)) +endfunction + +//=========================================================================== +function DistanceBetweenPoints takes location locA, location locB returns real + local real dx = GetLocationX(locB) - GetLocationX(locA) + local real dy = GetLocationY(locB) - GetLocationY(locA) + return SquareRoot(dx * dx + dy * dy) +endfunction + +//=========================================================================== +function PolarProjectionBJ takes location source, real dist, real angle returns location + local real x = GetLocationX(source) + dist * Cos(angle * bj_DEGTORAD) + local real y = GetLocationY(source) + dist * Sin(angle * bj_DEGTORAD) + return Location(x, y) +endfunction + +//=========================================================================== +function GetRandomDirectionDeg takes nothing returns real + return GetRandomReal(0, 360) +endfunction + +//=========================================================================== +function GetRandomPercentageBJ takes nothing returns real + return GetRandomReal(0, 100) +endfunction + +//=========================================================================== +function GetRandomLocInRect takes rect whichRect returns location + return Location(GetRandomReal(GetRectMinX(whichRect), GetRectMaxX(whichRect)), GetRandomReal(GetRectMinY(whichRect), GetRectMaxY(whichRect))) +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 18 mod 5 = 3. 15 mod 5 = 0. -8 mod 5 = 2. +// +function ModuloInteger takes integer dividend, integer divisor returns integer + local integer modulus = dividend - (dividend / divisor) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +// Calculate the modulus/remainder of (dividend) divided by (divisor). +// Examples: 13.000 mod 2.500 = 0.500. -6.000 mod 2.500 = 1.500. +// +function ModuloReal takes real dividend, real divisor returns real + local real modulus = dividend - I2R(R2I(dividend / divisor)) * divisor + + // If the dividend was negative, the above modulus calculation will + // be negative, but within (-divisor..0). We can add (divisor) to + // shift this result into the desired range of (0..divisor). + if (modulus < 0) then + set modulus = modulus + divisor + endif + + return modulus +endfunction + +//=========================================================================== +function OffsetLocation takes location loc, real dx, real dy returns location + return Location(GetLocationX(loc) + dx, GetLocationY(loc) + dy) +endfunction + +//=========================================================================== +function OffsetRectBJ takes rect r, real dx, real dy returns rect + return Rect( GetRectMinX(r) + dx, GetRectMinY(r) + dy, GetRectMaxX(r) + dx, GetRectMaxY(r) + dy ) +endfunction + +//=========================================================================== +function RectFromCenterSizeBJ takes location center, real width, real height returns rect + local real x = GetLocationX( center ) + local real y = GetLocationY( center ) + return Rect( x - width*0.5, y - height*0.5, x + width*0.5, y + height*0.5 ) +endfunction + +//=========================================================================== +function RectContainsCoords takes rect r, real x, real y returns boolean + return (GetRectMinX(r) <= x) and (x <= GetRectMaxX(r)) and (GetRectMinY(r) <= y) and (y <= GetRectMaxY(r)) +endfunction + +//=========================================================================== +function RectContainsLoc takes rect r, location loc returns boolean + return RectContainsCoords(r, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function RectContainsUnit takes rect r, unit whichUnit returns boolean + return RectContainsCoords(r, GetUnitX(whichUnit), GetUnitY(whichUnit)) +endfunction + +//=========================================================================== +function RectContainsItem takes item whichItem, rect r returns boolean + if (whichItem == null) then + return false + endif + + if (IsItemOwned(whichItem)) then + return false + endif + + return RectContainsCoords(r, GetItemX(whichItem), GetItemY(whichItem)) +endfunction + + + +//*************************************************************************** +//* +//* Utility Constructs +//* +//*************************************************************************** + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function ConditionalTriggerExecute takes trigger trig returns nothing + if TriggerEvaluate(trig) then + call TriggerExecute(trig) + endif +endfunction + +//=========================================================================== +// Runs the trigger's actions if the trigger's conditions evaluate to true. +// +function TriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerExecute(trig) + return true +endfunction + +//=========================================================================== +// Arranges for a trigger to fire almost immediately, except that the calling +// trigger is not interrupted as is the case with a TriggerExecute call. +// Since the trigger executes normally, its conditions are still evaluated. +// +function PostTriggerExecuteBJ takes trigger trig, boolean checkConditions returns boolean + if checkConditions then + if not (TriggerEvaluate(trig)) then + return false + endif + endif + call TriggerRegisterTimerEvent(trig, 0, false) + return true +endfunction + +//=========================================================================== +// Debug - Display the contents of the trigger queue (as either null or "x" +// for each entry). +function QueuedTriggerCheck takes nothing returns nothing + local string s = "TrigQueue Check " + local integer i + + set i = 0 + loop + exitwhen i >= bj_queuedExecTotal + set s = s + "q[" + I2S(i) + "]=" + if (bj_queuedExecTriggers[i] == null) then + set s = s + "null " + else + set s = s + "x " + endif + set i = i + 1 + endloop + set s = s + "(" + I2S(bj_queuedExecTotal) + " total)" + call DisplayTimedTextToPlayer(GetLocalPlayer(),0,0,600,s) +endfunction + +//=========================================================================== +// Searches the queue for a given trigger, returning the index of the +// trigger within the queue if it is found, or -1 if it is not found. +// +function QueuedTriggerGetIndex takes trigger trig returns integer + // Determine which, if any, of the queued triggers is being removed. + local integer index = 0 + loop + exitwhen index >= bj_queuedExecTotal + if (bj_queuedExecTriggers[index] == trig) then + return index + endif + set index = index + 1 + endloop + return -1 +endfunction + +//=========================================================================== +// Removes a trigger from the trigger queue, shifting other triggers down +// to fill the unused space. If the currently running trigger is removed +// in this manner, this function does NOT attempt to run the next trigger. +// +function QueuedTriggerRemoveByIndex takes integer trigIndex returns boolean + local integer index + + // If the to-be-removed index is out of range, fail. + if (trigIndex >= bj_queuedExecTotal) then + return false + endif + + // Shift all queue entries down to fill in the gap. + set bj_queuedExecTotal = bj_queuedExecTotal - 1 + set index = trigIndex + loop + exitwhen index >= bj_queuedExecTotal + set bj_queuedExecTriggers[index] = bj_queuedExecTriggers[index + 1] + set bj_queuedExecUseConds[index] = bj_queuedExecUseConds[index + 1] + set index = index + 1 + endloop + return true +endfunction + +//=========================================================================== +// Attempt to execute the first trigger in the queue. If it fails, remove +// it and execute the next one. Continue this cycle until a trigger runs, +// or until the queue is empty. +// +function QueuedTriggerAttemptExec takes nothing returns boolean + loop + exitwhen bj_queuedExecTotal == 0 + + if TriggerExecuteBJ(bj_queuedExecTriggers[0], bj_queuedExecUseConds[0]) then + // Timeout the queue if it sits at the front of the queue for too long. + call TimerStart(bj_queuedExecTimeoutTimer, bj_QUEUED_TRIGGER_TIMEOUT, false, null) + return true + endif + + call QueuedTriggerRemoveByIndex(0) + endloop + return false +endfunction + +//=========================================================================== +// Queues a trigger to be executed, assuring that such triggers are not +// executed at the same time. +// +function QueuedTriggerAddBJ takes trigger trig, boolean checkConditions returns boolean + // Make sure our queue isn't full. If it is, return failure. + if (bj_queuedExecTotal >= bj_MAX_QUEUED_TRIGGERS) then + return false + endif + + // Add the trigger to an array of to-be-executed triggers. + set bj_queuedExecTriggers[bj_queuedExecTotal] = trig + set bj_queuedExecUseConds[bj_queuedExecTotal] = checkConditions + set bj_queuedExecTotal = bj_queuedExecTotal + 1 + + // If this is the only trigger in the queue, run it. + if (bj_queuedExecTotal == 1) then + call QueuedTriggerAttemptExec() + endif + return true +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, or risk stepping on the toes of other queued triggers. +// +function QueuedTriggerRemoveBJ takes trigger trig returns nothing + local integer index + local integer trigIndex + local boolean trigExecuted + + // Find the trigger's index. + set trigIndex = QueuedTriggerGetIndex(trig) + if (trigIndex == -1) then + return + endif + + // Shuffle the other trigger entries down to fill in the gap. + call QueuedTriggerRemoveByIndex(trigIndex) + + // If we just axed the currently running trigger, run the next one. + if (trigIndex == 0) then + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() + endif +endfunction + +//=========================================================================== +// Denotes the end of a queued trigger. Be sure to call this only once per +// queued trigger, lest you step on the toes of other queued triggers. +// +function QueuedTriggerDoneBJ takes nothing returns nothing + local integer index + + // Make sure there's something on the queue to remove. + if (bj_queuedExecTotal <= 0) then + return + endif + + // Remove the currently running trigger from the array. + call QueuedTriggerRemoveByIndex(0) + + // If other triggers are waiting to run, run one of them. + call PauseTimer(bj_queuedExecTimeoutTimer) + call QueuedTriggerAttemptExec() +endfunction + +//=========================================================================== +// Empty the trigger queue. +// +function QueuedTriggerClearBJ takes nothing returns nothing + call PauseTimer(bj_queuedExecTimeoutTimer) + set bj_queuedExecTotal = 0 +endfunction + +//=========================================================================== +// Remove all but the currently executing trigger from the trigger queue. +// +function QueuedTriggerClearInactiveBJ takes nothing returns nothing + set bj_queuedExecTotal = IMinBJ(bj_queuedExecTotal, 1) +endfunction + +//=========================================================================== +function QueuedTriggerCountBJ takes nothing returns integer + return bj_queuedExecTotal +endfunction + +//=========================================================================== +function IsTriggerQueueEmptyBJ takes nothing returns boolean + return bj_queuedExecTotal <= 0 +endfunction + +//=========================================================================== +function IsTriggerQueuedBJ takes trigger trig returns boolean + return QueuedTriggerGetIndex(trig) != -1 +endfunction + +//=========================================================================== +function GetForLoopIndexA takes nothing returns integer + return bj_forLoopAIndex +endfunction + +//=========================================================================== +function SetForLoopIndexA takes integer newIndex returns nothing + set bj_forLoopAIndex = newIndex +endfunction + +//=========================================================================== +function GetForLoopIndexB takes nothing returns integer + return bj_forLoopBIndex +endfunction + +//=========================================================================== +function SetForLoopIndexB takes integer newIndex returns nothing + set bj_forLoopBIndex = newIndex +endfunction + +//=========================================================================== +// We can't do game-time waits, so this simulates one by starting a timer +// and polling until the timer expires. +function PolledWait takes real duration returns nothing + local timer t + local real timeRemaining + + if (duration > 0) then + set t = CreateTimer() + call TimerStart(t, duration, false, null) + loop + set timeRemaining = TimerGetRemaining(t) + exitwhen timeRemaining <= 0 + + // If we have a bit of time left, skip past 10% of the remaining + // duration instead of checking every interval, to minimize the + // polling on long waits. + if (timeRemaining > bj_POLLED_WAIT_SKIP_THRESHOLD) then + call TriggerSleepAction(0.1 * timeRemaining) + else + call TriggerSleepAction(bj_POLLED_WAIT_INTERVAL) + endif + endloop + call DestroyTimer(t) + endif +endfunction + +//=========================================================================== +function IntegerTertiaryOp takes boolean flag, integer valueA, integer valueB returns integer + if flag then + return valueA + else + return valueB + endif +endfunction + + +//*************************************************************************** +//* +//* General Utility Functions +//* These functions exist purely to make the trigger dialogs cleaner and +//* more comprehensible. +//* +//*************************************************************************** + +//=========================================================================== +function DoNothing takes nothing returns nothing +endfunction + +//=========================================================================== +// This function does nothing. WorldEdit should should eventually ignore +// CommentString triggers during script generation, but until such a time, +// this function will serve as a stub. +// +function CommentString takes string commentString returns nothing +endfunction + +//=========================================================================== +// This function returns the input string, converting it from the localized text, if necessary +// +function StringIdentity takes string theString returns string + return GetLocalizedString(theString) +endfunction + +//=========================================================================== +function GetBooleanAnd takes boolean valueA, boolean valueB returns boolean + return valueA and valueB +endfunction + +//=========================================================================== +function GetBooleanOr takes boolean valueA, boolean valueB returns boolean + return valueA or valueB +endfunction + +//=========================================================================== +// Converts a percentage (real, 0..100) into a scaled integer (0..max), +// clipping the result to 0..max in case the input is invalid. +// +function PercentToInt takes real percentage, integer max returns integer + local integer result = R2I(percentage * I2R(max) * 0.01) + + if (result < 0) then + set result = 0 + elseif (result > max) then + set result = max + endif + + return result +endfunction + +//=========================================================================== +function PercentTo255 takes real percentage returns integer + return PercentToInt(percentage, 255) +endfunction + +//=========================================================================== +function GetTimeOfDay takes nothing returns real + return GetFloatGameState(GAME_STATE_TIME_OF_DAY) +endfunction + +//=========================================================================== +function SetTimeOfDay takes real whatTime returns nothing + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, whatTime) +endfunction + +//=========================================================================== +function SetTimeOfDayScalePercentBJ takes real scalePercent returns nothing + call SetTimeOfDayScale(scalePercent * 0.01) +endfunction + +//=========================================================================== +function GetTimeOfDayScalePercentBJ takes nothing returns real + return GetTimeOfDayScale() * 100 +endfunction + +//=========================================================================== +function PlaySound takes string soundName returns nothing + local sound soundHandle = CreateSound(soundName, false, false, true, 12700, 12700, "") + call StartSound(soundHandle) + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function CompareLocationsBJ takes location A, location B returns boolean + return GetLocationX(A) == GetLocationX(B) and GetLocationY(A) == GetLocationY(B) +endfunction + +//=========================================================================== +function CompareRectsBJ takes rect A, rect B returns boolean + return GetRectMinX(A) == GetRectMinX(B) and GetRectMinY(A) == GetRectMinY(B) and GetRectMaxX(A) == GetRectMaxX(B) and GetRectMaxY(A) == GetRectMaxY(B) +endfunction + +//=========================================================================== +// Returns a square rect that exactly encompasses the specified circle. +// +function GetRectFromCircleBJ takes location center, real radius returns rect + local real centerX = GetLocationX(center) + local real centerY = GetLocationY(center) + return Rect(centerX - radius, centerY - radius, centerX + radius, centerY + radius) +endfunction + + + +//*************************************************************************** +//* +//* Camera Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetCurrentCameraSetup takes nothing returns camerasetup + local camerasetup theCam = CreateCameraSetup() + local real duration = 0 + call CameraSetupSetField(theCam, CAMERA_FIELD_TARGET_DISTANCE, GetCameraField(CAMERA_FIELD_TARGET_DISTANCE), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FARZ, GetCameraField(CAMERA_FIELD_FARZ), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ZOFFSET, GetCameraField(CAMERA_FIELD_ZOFFSET), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ANGLE_OF_ATTACK, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ANGLE_OF_ATTACK), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_FIELD_OF_VIEW, bj_RADTODEG * GetCameraField(CAMERA_FIELD_FIELD_OF_VIEW), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROLL, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROLL), duration) + call CameraSetupSetField(theCam, CAMERA_FIELD_ROTATION, bj_RADTODEG * GetCameraField(CAMERA_FIELD_ROTATION), duration) + call CameraSetupSetDestPosition(theCam, GetCameraTargetPositionX(), GetCameraTargetPositionY(), duration) + return theCam +endfunction + +//=========================================================================== +function CameraSetupApplyForPlayer takes boolean doPan, camerasetup whichSetup, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetupApplyForceDuration(whichSetup, doPan, duration) + endif +endfunction + +//=========================================================================== +function CameraSetupGetFieldSwap takes camerafield whichField, camerasetup whichSetup returns real + return CameraSetupGetField(whichSetup, whichField) +endfunction + +//=========================================================================== +function SetCameraFieldForPlayer takes player whichPlayer, camerafield whichField, real value, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraField(whichField, value, duration) + endif +endfunction + +//=========================================================================== +function SetCameraTargetControllerNoZForPlayer takes player whichPlayer, unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraTargetController(whichUnit, xoffset, yoffset, inheritOrientation) + endif +endfunction + +//=========================================================================== +function SetCameraPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function RotateCameraAroundLocBJ takes real degrees, location loc, player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraRotateMode(GetLocationX(loc), GetLocationY(loc), bj_DEGTORAD * degrees, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(x, y) + endif +endfunction + +//=========================================================================== +function PanCameraToLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraTo(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(x, y, duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + endif +endfunction + +//=========================================================================== +function PanCameraToTimedLocWithZForPlayer takes player whichPlayer, location loc, real zOffset, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PanCameraToTimedWithZ(GetLocationX(loc), GetLocationY(loc), zOffset, duration) + endif +endfunction + +//=========================================================================== +function SmartCameraPanBJ takes player whichPlayer, location loc, real duration returns nothing + local real dist + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + set dist = DistanceBetweenPoints(loc, GetCameraTargetPositionLoc()) + if (dist >= bj_SMARTPAN_TRESHOLD_SNAP) then + // If the user is too far away, snap the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), 0) + elseif (dist >= bj_SMARTPAN_TRESHOLD_PAN) then + // If the user is moderately close, pan the camera. + call PanCameraToTimed(GetLocationX(loc), GetLocationY(loc), duration) + else + // User is close enough, so don't touch the camera. + endif + endif +endfunction + +//=========================================================================== +function SetCinematicCameraForPlayer takes player whichPlayer, string cameraModelFile returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCinematicCamera(cameraModelFile) + endif +endfunction + +//=========================================================================== +function ResetToGameCameraForPlayer takes player whichPlayer, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ResetToGameCamera(duration) + endif +endfunction + +//=========================================================================== +function CameraSetSourceNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetTargetNoiseForPlayer takes player whichPlayer, real magnitude, real velocity returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoise(magnitude, velocity) + endif +endfunction + +//=========================================================================== +function CameraSetEQNoiseForPlayer takes player whichPlayer, real magnitude returns nothing + local real richter = magnitude + if (richter > 5.0) then + set richter = 5.0 + endif + if (richter < 2.0) then + set richter = 2.0 + endif + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetTargetNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + call CameraSetSourceNoiseEx(magnitude*2.0, magnitude*Pow(10,richter),true) + endif +endfunction + +//=========================================================================== +function CameraClearNoiseForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call CameraSetSourceNoise(0, 0) + call CameraSetTargetNoise(0, 0) + endif +endfunction + +//=========================================================================== +// Query the current camera bounds. +// +function GetCurrentCameraBoundsMapRectBJ takes nothing returns rect + return Rect(GetCameraBoundMinX(), GetCameraBoundMinY(), GetCameraBoundMaxX(), GetCameraBoundMaxY()) +endfunction + +//=========================================================================== +// Query the initial camera bounds, as defined at map init. +// +function GetCameraBoundsMapRect takes nothing returns rect + return bj_mapInitialCameraBounds +endfunction + +//=========================================================================== +// Query the playable map area, as defined at map init. +// +function GetPlayableMapRect takes nothing returns rect + return bj_mapInitialPlayableArea +endfunction + +//=========================================================================== +// Query the entire map area, as defined at map init. +// +function GetEntireMapRect takes nothing returns rect + return GetWorldBounds() +endfunction + +//=========================================================================== +function SetCameraBoundsToRect takes rect r returns nothing + local real minX = GetRectMinX(r) + local real minY = GetRectMinY(r) + local real maxX = GetRectMaxX(r) + local real maxY = GetRectMaxY(r) + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function SetCameraBoundsToRectForPlayerBJ takes player whichPlayer, rect r returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraBoundsToRect(r) + endif +endfunction + +//=========================================================================== +function AdjustCameraBoundsBJ takes integer adjustMethod, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + local real minX = 0 + local real minY = 0 + local real maxX = 0 + local real maxY = 0 + local real scale = 0 + + if (adjustMethod == bj_CAMERABOUNDS_ADJUST_ADD) then + set scale = 1 + elseif (adjustMethod == bj_CAMERABOUNDS_ADJUST_SUB) then + set scale = -1 + else + // Unrecognized adjustment method - ignore the request. + return + endif + + // Adjust the actual camera values + set minX = GetCameraBoundMinX() - scale * dxWest + set maxX = GetCameraBoundMaxX() + scale * dxEast + set minY = GetCameraBoundMinY() - scale * dySouth + set maxY = GetCameraBoundMaxY() + scale * dyNorth + + // Make sure the camera bounds are still valid. + if (maxX < minX) then + set minX = (minX + maxX) * 0.5 + set maxX = minX + endif + if (maxY < minY) then + set minY = (minY + maxY) * 0.5 + set maxY = minY + endif + + // Apply the new camera values. + call SetCameraBounds(minX, minY, minX, maxY, maxX, maxY, maxX, minY) +endfunction + +//=========================================================================== +function AdjustCameraBoundsForPlayerBJ takes integer adjustMethod, player whichPlayer, real dxWest, real dxEast, real dyNorth, real dySouth returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call AdjustCameraBoundsBJ(adjustMethod, dxWest, dxEast, dyNorth, dySouth) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionForPlayer takes player whichPlayer, real x, real y returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLocForPlayer takes player whichPlayer, location loc returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function SetCameraQuickPositionLoc takes location loc returns nothing + call SetCameraQuickPosition(GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function StopCameraForPlayerBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call StopCamera() + endif +endfunction + +//=========================================================================== +function SetCameraOrientControllerForPlayerBJ takes player whichPlayer, unit whichUnit, real xoffset, real yoffset returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetCameraOrientController(whichUnit, xoffset, yoffset) + endif +endfunction + +//=========================================================================== +function CameraSetSmoothingFactorBJ takes real factor returns nothing + call CameraSetSmoothingFactor(factor) +endfunction + +//=========================================================================== +function CameraResetSmoothingFactorBJ takes nothing returns nothing + call CameraSetSmoothingFactor(0) +endfunction + + + +//*************************************************************************** +//* +//* Text Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayTextToForce takes force toForce, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTextToPlayer(GetLocalPlayer(), 0, 0, message) + endif +endfunction + +//=========================================================================== +function DisplayTimedTextToForce takes force toForce, real duration, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, duration, message) + endif +endfunction + +//=========================================================================== +function ClearTextMessagesBJ takes force toForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + endif +endfunction + +//=========================================================================== +// The parameters for the API Substring function are unintuitive, so this +// merely performs a translation for the starting index. +// +function SubStringBJ takes string source, integer start, integer end returns string + return SubString(source, start-1, end) +endfunction + +function GetHandleIdBJ takes handle h returns integer + return GetHandleId(h) +endfunction + +function StringHashBJ takes string s returns integer + return StringHash(s) +endfunction + + + +//*************************************************************************** +//* +//* Event Registration Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function TriggerRegisterTimerEventPeriodic takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, true) +endfunction + +//=========================================================================== +function TriggerRegisterTimerEventSingle takes trigger trig, real timeout returns event + return TriggerRegisterTimerEvent(trig, timeout, false) +endfunction + +//=========================================================================== +function TriggerRegisterTimerExpireEventBJ takes trigger trig, timer t returns event + return TriggerRegisterTimerExpireEvent(trig, t) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerUnitEventSimple takes trigger trig, player whichPlayer, playerunitevent whichEvent returns event + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, whichEvent, null) +endfunction + +//=========================================================================== +function TriggerRegisterAnyUnitEventBJ takes trigger trig, playerunitevent whichEvent returns nothing + local integer index + + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(trig, Player(index), whichEvent, null) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +function TriggerRegisterPlayerSelectionEventBJ takes trigger trig, player whichPlayer, boolean selected returns event + if selected then + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_SELECTED, null) + else + return TriggerRegisterPlayerUnitEvent(trig, whichPlayer, EVENT_PLAYER_UNIT_DESELECTED, null) + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerKeyEventBJ takes trigger trig, player whichPlayer, integer keType, integer keKey returns event + if (keType == bj_KEYEVENTTYPE_DEPRESS) then + // Depress event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_DOWN) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_DOWN) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_DOWN) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + elseif (keType == bj_KEYEVENTTYPE_RELEASE) then + // Release event - find out what key + if (keKey == bj_KEYEVENTKEY_LEFT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_LEFT_UP) + elseif (keKey == bj_KEYEVENTKEY_RIGHT) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_RIGHT_UP) + elseif (keKey == bj_KEYEVENTKEY_DOWN) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_DOWN_UP) + elseif (keKey == bj_KEYEVENTKEY_UP) then + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ARROW_UP_UP) + else + // Unrecognized key - ignore the request and return failure. + return null + endif + else + // Unrecognized type - ignore the request and return failure. + return null + endif +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventVictory takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_VICTORY) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventDefeat takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_DEFEAT) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventLeave takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_LEAVE) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventAllianceChanged takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_ALLIANCE_CHANGED) +endfunction + +//=========================================================================== +function TriggerRegisterPlayerEventEndCinematic takes trigger trig, player whichPlayer returns event + return TriggerRegisterPlayerEvent(trig, whichPlayer, EVENT_PLAYER_END_CINEMATIC) +endfunction + +//=========================================================================== +function TriggerRegisterGameStateEventTimeOfDay takes trigger trig, limitop opcode, real limitval returns event + return TriggerRegisterGameStateEvent(trig, GAME_STATE_TIME_OF_DAY, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterEnterRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRegionSimple takes trigger trig, region whichRegion returns event + return TriggerRegisterLeaveRegion(trig, whichRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterEnterRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterEnterRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterLeaveRectSimple takes trigger trig, rect r returns event + local region rectRegion = CreateRegion() + call RegionAddRect(rectRegion, r) + return TriggerRegisterLeaveRegion(trig, rectRegion, null) +endfunction + +//=========================================================================== +function TriggerRegisterDistanceBetweenUnits takes trigger trig, unit whichUnit, boolexpr condition, real range returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, condition) +endfunction + +//=========================================================================== +function TriggerRegisterUnitInRangeSimple takes trigger trig, real range, unit whichUnit returns event + return TriggerRegisterUnitInRange(trig, whichUnit, range, null) +endfunction + +//=========================================================================== +function TriggerRegisterUnitLifeEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_LIFE, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterUnitManaEvent takes trigger trig, unit whichUnit, limitop opcode, real limitval returns event + return TriggerRegisterUnitStateEvent(trig, whichUnit, UNIT_STATE_MANA, opcode, limitval) +endfunction + +//=========================================================================== +function TriggerRegisterDialogEventBJ takes trigger trig, dialog whichDialog returns event + return TriggerRegisterDialogEvent(trig, whichDialog) +endfunction + +//=========================================================================== +function TriggerRegisterShowSkillEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SHOW_SKILL) +endfunction + +//=========================================================================== +function TriggerRegisterBuildSubmenuEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_BUILD_SUBMENU) +endfunction + +//=========================================================================== +function TriggerRegisterGameLoadedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_LOADED) +endfunction + +//=========================================================================== +function TriggerRegisterGameSavedEventBJ takes trigger trig returns event + return TriggerRegisterGameEvent(trig, EVENT_GAME_SAVE) +endfunction + +//=========================================================================== +function RegisterDestDeathInRegionEnum takes nothing returns nothing + set bj_destInRegionDiesCount = bj_destInRegionDiesCount + 1 + if (bj_destInRegionDiesCount <= bj_MAX_DEST_IN_REGION_EVENTS) then + call TriggerRegisterDeathEvent(bj_destInRegionDiesTrig, GetEnumDestructable()) + endif +endfunction + +//=========================================================================== +function TriggerRegisterDestDeathInRegionEvent takes trigger trig, rect r returns nothing + set bj_destInRegionDiesTrig = trig + set bj_destInRegionDiesCount = 0 + call EnumDestructablesInRect(r, null, function RegisterDestDeathInRegionEnum) +endfunction + + + +//*************************************************************************** +//* +//* Environment Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddWeatherEffectSaveLast takes rect where, integer effectID returns weathereffect + set bj_lastCreatedWeatherEffect = AddWeatherEffect(where, effectID) + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function GetLastCreatedWeatherEffect takes nothing returns weathereffect + return bj_lastCreatedWeatherEffect +endfunction + +//=========================================================================== +function RemoveWeatherEffectBJ takes weathereffect whichWeatherEffect returns nothing + call RemoveWeatherEffect(whichWeatherEffect) +endfunction + +//=========================================================================== +function TerrainDeformationCraterBJ takes real duration, boolean permanent, location where, real radius, real depth returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformCrater(GetLocationX(where), GetLocationY(where), radius, depth, R2I(duration * 1000), permanent) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRippleBJ takes real duration, boolean limitNeg, location where, real startRadius, real endRadius, real depth, real wavePeriod, real waveWidth returns terraindeformation + local real spaceWave + local real timeWave + local real radiusRatio + + if (endRadius <= 0 or waveWidth <= 0 or wavePeriod <= 0) then + return null + endif + + set timeWave = 2.0 * duration / wavePeriod + set spaceWave = 2.0 * endRadius / waveWidth + set radiusRatio = startRadius / endRadius + + set bj_lastCreatedTerrainDeformation = TerrainDeformRipple(GetLocationX(where), GetLocationY(where), endRadius, depth, R2I(duration * 1000), 1, spaceWave, timeWave, radiusRatio, limitNeg) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationWaveBJ takes real duration, location source, location target, real radius, real depth, real trailDelay returns terraindeformation + local real distance + local real dirX + local real dirY + local real speed + + set distance = DistanceBetweenPoints(source, target) + if (distance == 0 or duration <= 0) then + return null + endif + + set dirX = (GetLocationX(target) - GetLocationX(source)) / distance + set dirY = (GetLocationY(target) - GetLocationY(source)) / distance + set speed = distance / duration + + set bj_lastCreatedTerrainDeformation = TerrainDeformWave(GetLocationX(source), GetLocationY(source), dirX, dirY, distance, speed, radius, depth, R2I(trailDelay * 1000), 1) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationRandomBJ takes real duration, location where, real radius, real minDelta, real maxDelta, real updateInterval returns terraindeformation + set bj_lastCreatedTerrainDeformation = TerrainDeformRandom(GetLocationX(where), GetLocationY(where), radius, minDelta, maxDelta, R2I(duration * 1000), R2I(updateInterval * 1000)) + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function TerrainDeformationStopBJ takes terraindeformation deformation, real duration returns nothing + call TerrainDeformStop(deformation, R2I(duration * 1000)) +endfunction + +//=========================================================================== +function GetLastCreatedTerrainDeformation takes nothing returns terraindeformation + return bj_lastCreatedTerrainDeformation +endfunction + +//=========================================================================== +function AddLightningLoc takes string codeName, location where1, location where2 returns lightning + set bj_lastCreatedLightning = AddLightningEx(codeName, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function DestroyLightningBJ takes lightning whichBolt returns boolean + return DestroyLightning(whichBolt) +endfunction + +//=========================================================================== +function MoveLightningLoc takes lightning whichBolt, location where1, location where2 returns boolean + return MoveLightningEx(whichBolt, true, GetLocationX(where1), GetLocationY(where1), GetLocationZ(where1), GetLocationX(where2), GetLocationY(where2), GetLocationZ(where2)) +endfunction + +//=========================================================================== +function GetLightningColorABJ takes lightning whichBolt returns real + return GetLightningColorA(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorRBJ takes lightning whichBolt returns real + return GetLightningColorR(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorGBJ takes lightning whichBolt returns real + return GetLightningColorG(whichBolt) +endfunction + +//=========================================================================== +function GetLightningColorBBJ takes lightning whichBolt returns real + return GetLightningColorB(whichBolt) +endfunction + +//=========================================================================== +function SetLightningColorBJ takes lightning whichBolt, real r, real g, real b, real a returns boolean + return SetLightningColor(whichBolt, r, g, b, a) +endfunction + +//=========================================================================== +function GetLastCreatedLightningBJ takes nothing returns lightning + return bj_lastCreatedLightning +endfunction + +//=========================================================================== +function GetAbilityEffectBJ takes integer abilcode, effecttype t, integer index returns string + return GetAbilityEffectById(abilcode, t, index) +endfunction + +//=========================================================================== +function GetAbilitySoundBJ takes integer abilcode, soundtype t returns string + return GetAbilitySoundById(abilcode, t) +endfunction + + +//=========================================================================== +function GetTerrainCliffLevelBJ takes location where returns integer + return GetTerrainCliffLevel(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainTypeBJ takes location where returns integer + return GetTerrainType(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function GetTerrainVarianceBJ takes location where returns integer + return GetTerrainVariance(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetTerrainTypeBJ takes location where, integer terrainType, integer variation, integer area, integer shape returns nothing + call SetTerrainType(GetLocationX(where), GetLocationY(where), terrainType, variation, area, shape) +endfunction + +//=========================================================================== +function IsTerrainPathableBJ takes location where, pathingtype t returns boolean + return IsTerrainPathable(GetLocationX(where), GetLocationY(where), t) +endfunction + +//=========================================================================== +function SetTerrainPathableBJ takes location where, pathingtype t, boolean flag returns nothing + call SetTerrainPathable(GetLocationX(where), GetLocationY(where), t, flag) +endfunction + +//=========================================================================== +function SetWaterBaseColorBJ takes real red, real green, real blue, real transparency returns nothing + call SetWaterBaseColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function CreateFogModifierRectSimple takes player whichPlayer, fogstate whichFogState, rect r, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function CreateFogModifierRadiusLocSimple takes player whichPlayer, fogstate whichFogState, location center, real radius, boolean afterUnits returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, afterUnits) + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRect that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRectBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, rect r returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRect(whichPlayer, whichFogState, r, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +// Version of CreateFogModifierRadius that assumes use of sharedVision and +// gives the option of immediately enabling the modifier, so that triggers +// can default to modifiers that are immediately enabled. +// +function CreateFogModifierRadiusLocBJ takes boolean enabled, player whichPlayer, fogstate whichFogState, location center, real radius returns fogmodifier + set bj_lastCreatedFogModifier = CreateFogModifierRadiusLoc(whichPlayer, whichFogState, center, radius, true, false) + if enabled then + call FogModifierStart(bj_lastCreatedFogModifier) + endif + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function GetLastCreatedFogModifier takes nothing returns fogmodifier + return bj_lastCreatedFogModifier +endfunction + +//=========================================================================== +function FogEnableOn takes nothing returns nothing + call FogEnable(true) +endfunction + +//=========================================================================== +function FogEnableOff takes nothing returns nothing + call FogEnable(false) +endfunction + +//=========================================================================== +function FogMaskEnableOn takes nothing returns nothing + call FogMaskEnable(true) +endfunction + +//=========================================================================== +function FogMaskEnableOff takes nothing returns nothing + call FogMaskEnable(false) +endfunction + +//=========================================================================== +function UseTimeOfDayBJ takes boolean flag returns nothing + call SuspendTimeOfDay(not flag) +endfunction + +//=========================================================================== +function SetTerrainFogExBJ takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing + call SetTerrainFogEx(style, zstart, zend, density, red * 0.01, green * 0.01, blue * 0.01) +endfunction + +//=========================================================================== +function ResetTerrainFogBJ takes nothing returns nothing + call ResetTerrainFog() +endfunction + +//=========================================================================== +function SetDoodadAnimationBJ takes string animName, integer doodadID, real radius, location center returns nothing + call SetDoodadAnimation(GetLocationX(center), GetLocationY(center), radius, doodadID, false, animName, false) +endfunction + +//=========================================================================== +function SetDoodadAnimationRectBJ takes string animName, integer doodadID, rect r returns nothing + call SetDoodadAnimationRect(r, doodadID, animName, false) +endfunction + +//=========================================================================== +function AddUnitAnimationPropertiesBJ takes boolean add, string animProperties, unit whichUnit returns nothing + call AddUnitAnimationProperties(whichUnit, animProperties, add) +endfunction + + +//============================================================================ +function CreateImageBJ takes string file, real size, location where, real zOffset, integer imageType returns image + set bj_lastCreatedImage = CreateImage(file, size, size, size, GetLocationX(where), GetLocationY(where), zOffset, 0, 0, 0, imageType) + return bj_lastCreatedImage +endfunction + +//============================================================================ +function ShowImageBJ takes boolean flag, image whichImage returns nothing + call ShowImage(whichImage, flag) +endfunction + +//============================================================================ +function SetImagePositionBJ takes image whichImage, location where, real zOffset returns nothing + call SetImagePosition(whichImage, GetLocationX(where), GetLocationY(where), zOffset) +endfunction + +//============================================================================ +function SetImageColorBJ takes image whichImage, real red, real green, real blue, real alpha returns nothing + call SetImageColor(whichImage, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha)) +endfunction + +//============================================================================ +function GetLastCreatedImage takes nothing returns image + return bj_lastCreatedImage +endfunction + +//============================================================================ +function CreateUbersplatBJ takes location where, string name, real red, real green, real blue, real alpha, boolean forcePaused, boolean noBirthTime returns ubersplat + set bj_lastCreatedUbersplat = CreateUbersplat(GetLocationX(where), GetLocationY(where), name, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-alpha), forcePaused, noBirthTime) + return bj_lastCreatedUbersplat +endfunction + +//============================================================================ +function ShowUbersplatBJ takes boolean flag, ubersplat whichSplat returns nothing + call ShowUbersplat(whichSplat, flag) +endfunction + +//============================================================================ +function GetLastCreatedUbersplat takes nothing returns ubersplat + return bj_lastCreatedUbersplat +endfunction + + +//*************************************************************************** +//* +//* Sound Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PlaySoundBJ takes sound soundHandle returns nothing + set bj_lastPlayedSound = soundHandle + if (soundHandle != null) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function StopSoundBJ takes sound soundHandle, boolean fadeOut returns nothing + call StopSound(soundHandle, false, fadeOut) +endfunction + +//=========================================================================== +function SetSoundVolumeBJ takes sound soundHandle, real volumePercent returns nothing + call SetSoundVolume(soundHandle, PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function SetSoundOffsetBJ takes real newOffset, sound soundHandle returns nothing + call SetSoundPlayPosition(soundHandle, R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function SetSoundDistanceCutoffBJ takes sound soundHandle, real cutoff returns nothing + call SetSoundDistanceCutoff(soundHandle, cutoff) +endfunction + +//=========================================================================== +function SetSoundPitchBJ takes sound soundHandle, real pitch returns nothing + call SetSoundPitch(soundHandle, pitch) +endfunction + +//=========================================================================== +function SetSoundPositionLocBJ takes sound soundHandle, location loc, real z returns nothing + call SetSoundPosition(soundHandle, GetLocationX(loc), GetLocationY(loc), z) +endfunction + +//=========================================================================== +function AttachSoundToUnitBJ takes sound soundHandle, unit whichUnit returns nothing + call AttachSoundToUnit(soundHandle, whichUnit) +endfunction + +//=========================================================================== +function SetSoundConeAnglesBJ takes sound soundHandle, real inside, real outside, real outsideVolumePercent returns nothing + call SetSoundConeAngles(soundHandle, inside, outside, PercentToInt(outsideVolumePercent, 127)) +endfunction + +//=========================================================================== +function KillSoundWhenDoneBJ takes sound soundHandle returns nothing + call KillSoundWhenDone(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundAtPointBJ takes sound soundHandle, real volumePercent, location loc, real z returns nothing + call SetSoundPositionLocBJ(soundHandle, loc, z) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundOnUnitBJ takes sound soundHandle, real volumePercent, unit whichUnit returns nothing + call AttachSoundToUnitBJ(soundHandle, whichUnit) + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) +endfunction + +//=========================================================================== +function PlaySoundFromOffsetBJ takes sound soundHandle, real volumePercent, real startingOffset returns nothing + call SetSoundVolumeBJ(soundHandle, volumePercent) + call PlaySoundBJ(soundHandle) + call SetSoundOffsetBJ(startingOffset, soundHandle) +endfunction + +//=========================================================================== +function PlayMusicBJ takes string musicFileName returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusic(musicFileName) +endfunction + +//=========================================================================== +function PlayMusicExBJ takes string musicFileName, real startingOffset, real fadeInTime returns nothing + set bj_lastPlayedMusic = musicFileName + call PlayMusicEx(musicFileName, R2I(startingOffset * 1000), R2I(fadeInTime * 1000)) +endfunction + +//=========================================================================== +function SetMusicOffsetBJ takes real newOffset returns nothing + call SetMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function PlayThematicMusicBJ takes string musicName returns nothing + call PlayThematicMusic(musicName) +endfunction + +//=========================================================================== +function PlayThematicMusicExBJ takes string musicName, real startingOffset returns nothing + call PlayThematicMusicEx(musicName, R2I(startingOffset * 1000)) +endfunction + +//=========================================================================== +function SetThematicMusicOffsetBJ takes real newOffset returns nothing + call SetThematicMusicPlayPosition(R2I(newOffset * 1000)) +endfunction + +//=========================================================================== +function EndThematicMusicBJ takes nothing returns nothing + call EndThematicMusic() +endfunction + +//=========================================================================== +function StopMusicBJ takes boolean fadeOut returns nothing + call StopMusic(fadeOut) +endfunction + +//=========================================================================== +function ResumeMusicBJ takes nothing returns nothing + call ResumeMusic() +endfunction + +//=========================================================================== +function SetMusicVolumeBJ takes real volumePercent returns nothing + call SetMusicVolume(PercentToInt(volumePercent, 127)) +endfunction + +//=========================================================================== +function GetSoundDurationBJ takes sound soundHandle returns real + if (soundHandle == null) then + return bj_NOTHING_SOUND_DURATION + else + return I2R(GetSoundDuration(soundHandle)) * 0.001 + endif +endfunction + +//=========================================================================== +function GetSoundFileDurationBJ takes string musicFileName returns real + return I2R(GetSoundFileDuration(musicFileName)) * 0.001 +endfunction + +//=========================================================================== +function GetLastPlayedSound takes nothing returns sound + return bj_lastPlayedSound +endfunction + +//=========================================================================== +function GetLastPlayedMusic takes nothing returns string + return bj_lastPlayedMusic +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeBJ takes volumegroup vgroup, real percent returns nothing + call VolumeGroupSetVolume(vgroup, percent * 0.01) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_CINEMODE_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_CINEMODE_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_CINEMODE_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_CINEMODE_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_CINEMODE_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_CINEMODE_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_CINEMODE_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_CINEMODE_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetCineModeVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetCineModeVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetCineModeVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsImmediateBJ takes nothing returns nothing + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITMOVEMENT, bj_SPEECH_VOLUME_UNITMOVEMENT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UNITSOUNDS, bj_SPEECH_VOLUME_UNITSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_COMBAT, bj_SPEECH_VOLUME_COMBAT) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_SPELLS, bj_SPEECH_VOLUME_SPELLS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_UI, bj_SPEECH_VOLUME_UI) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_MUSIC, bj_SPEECH_VOLUME_MUSIC) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_AMBIENTSOUNDS, bj_SPEECH_VOLUME_AMBIENTSOUNDS) + call VolumeGroupSetVolume(SOUND_VOLUMEGROUP_FIRE, bj_SPEECH_VOLUME_FIRE) +endfunction + +//=========================================================================== +function SetSpeechVolumeGroupsBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call SetSpeechVolumeGroupsImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function SetSpeechVolumeGroupsImmediateBJ) + endif +endfunction + +//=========================================================================== +function VolumeGroupResetImmediateBJ takes nothing returns nothing + call VolumeGroupReset() +endfunction + +//=========================================================================== +function VolumeGroupResetBJ takes nothing returns nothing + // Delay the request if it occurs at map init. + if bj_gameStarted then + call VolumeGroupResetImmediateBJ() + else + call TimerStart(bj_volumeGroupsTimer, bj_GAME_STARTED_THRESHOLD, false, function VolumeGroupResetImmediateBJ) + endif +endfunction + +//=========================================================================== +function GetSoundIsPlayingBJ takes sound soundHandle returns boolean + return GetSoundIsLoading(soundHandle) or GetSoundIsPlaying(soundHandle) +endfunction + +//=========================================================================== +function WaitForSoundBJ takes sound soundHandle, real offset returns nothing + call TriggerWaitForSound( soundHandle, offset ) +endfunction + +//=========================================================================== +function SetMapMusicIndexedBJ takes string musicName, integer index returns nothing + call SetMapMusic(musicName, false, index) +endfunction + +//=========================================================================== +function SetMapMusicRandomBJ takes string musicName returns nothing + call SetMapMusic(musicName, true, 0) +endfunction + +//=========================================================================== +function ClearMapMusicBJ takes nothing returns nothing + call ClearMapMusic() +endfunction + +//=========================================================================== +function SetStackedSoundBJ takes boolean add, sound soundHandle, rect r returns nothing + local real width = GetRectMaxX(r) - GetRectMinX(r) + local real height = GetRectMaxY(r) - GetRectMinY(r) + + call SetSoundPosition(soundHandle, GetRectCenterX(r), GetRectCenterY(r), 0) + if add then + call RegisterStackedSound(soundHandle, true, width, height) + else + call UnregisterStackedSound(soundHandle, true, width, height) + endif +endfunction + +//=========================================================================== +function StartSoundForPlayerBJ takes player whichPlayer, sound soundHandle returns nothing + if (whichPlayer == GetLocalPlayer()) then + call StartSound(soundHandle) + endif +endfunction + +//=========================================================================== +function VolumeGroupSetVolumeForPlayerBJ takes player whichPlayer, volumegroup vgroup, real scale returns nothing + if (GetLocalPlayer() == whichPlayer) then + call VolumeGroupSetVolume(vgroup, scale) + endif +endfunction + +//=========================================================================== +function EnableDawnDusk takes boolean flag returns nothing + set bj_useDawnDuskSounds = flag +endfunction + +//=========================================================================== +function IsDawnDuskEnabled takes nothing returns boolean + return bj_useDawnDuskSounds +endfunction + + + +//*************************************************************************** +//* +//* Day/Night ambient sounds +//* +//*************************************************************************** + +//=========================================================================== +function SetAmbientDaySound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_dayAmbientSound != null) then + call StopSound(bj_dayAmbientSound, true, true) + endif + + // Create new sound + set bj_dayAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) then + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetAmbientNightSound takes string inLabel returns nothing + local real ToD + + // Stop old sound, if necessary + if (bj_nightAmbientSound != null) then + call StopSound(bj_nightAmbientSound, true, true) + endif + + // Create new sound + set bj_nightAmbientSound = CreateMIDISound(inLabel, 20, 20) + + // Start the sound if necessary, based on current time + set ToD = GetTimeOfDay() + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) then + call StartSound(bj_nightAmbientSound) + endif +endfunction + + + +//*************************************************************************** +//* +//* Special Effect Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function AddSpecialEffectLocBJ takes location where, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectLoc(modelName, where) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +function AddSpecialEffectTargetUnitBJ takes string attachPointName, widget targetWidget, string modelName returns effect + set bj_lastCreatedEffect = AddSpecialEffectTarget(modelName, targetWidget, attachPointName) + return bj_lastCreatedEffect +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Destructibles have no attachment points. +// +//function AddSpecialEffectTargetDestructableBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +// Commented out - Items have no attachment points. +// +//function AddSpecialEffectTargetItemBJ takes string attachPointName, widget targetWidget, string modelName returns effect +// return AddSpecialEffectTargetUnitBJ(attachPointName, targetWidget, modelName) +//endfunction + +//=========================================================================== +function DestroyEffectBJ takes effect whichEffect returns nothing + call DestroyEffect(whichEffect) +endfunction + +//=========================================================================== +function GetLastCreatedEffectBJ takes nothing returns effect + return bj_lastCreatedEffect +endfunction + + + +//*************************************************************************** +//* +//* Hero and Item Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetItemLoc takes item whichItem returns location + return Location(GetItemX(whichItem), GetItemY(whichItem)) +endfunction + +//=========================================================================== +function GetItemLifeBJ takes widget whichWidget returns real + return GetWidgetLife(whichWidget) +endfunction + +//=========================================================================== +function SetItemLifeBJ takes widget whichWidget, real life returns nothing + call SetWidgetLife(whichWidget, life) +endfunction + +//=========================================================================== +function AddHeroXPSwapped takes integer xpToAdd, unit whichHero, boolean showEyeCandy returns nothing + call AddHeroXP(whichHero, xpToAdd, showEyeCandy) +endfunction + +//=========================================================================== +function SetHeroLevelBJ takes unit whichHero, integer newLevel, boolean showEyeCandy returns nothing + local integer oldLevel = GetHeroLevel(whichHero) + + if (newLevel > oldLevel) then + call SetHeroLevel(whichHero, newLevel, showEyeCandy) + elseif (newLevel < oldLevel) then + call UnitStripHeroLevel(whichHero, oldLevel - newLevel) + else + // No change in level - ignore the request. + endif +endfunction + +//=========================================================================== +function DecUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return DecUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function IncUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return IncUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function SetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit, integer level returns integer + return SetUnitAbilityLevel(whichUnit, abilcode, level) +endfunction + +//=========================================================================== +function GetUnitAbilityLevelSwapped takes integer abilcode, unit whichUnit returns integer + return GetUnitAbilityLevel(whichUnit, abilcode) +endfunction + +//=========================================================================== +function UnitHasBuffBJ takes unit whichUnit, integer buffcode returns boolean + return (GetUnitAbilityLevel(whichUnit, buffcode) > 0) +endfunction + +//=========================================================================== +function UnitRemoveBuffBJ takes integer buffcode, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, buffcode) +endfunction + +//=========================================================================== +function UnitAddItemSwapped takes item whichItem, unit whichHero returns boolean + return UnitAddItem(whichHero, whichItem) +endfunction + +//=========================================================================== +function UnitAddItemByIdSwapped takes integer itemId, unit whichHero returns item + // Create the item at the hero's feet first, and then give it to him. + // This is to ensure that the item will be left at the hero's feet if + // his inventory is full. + set bj_lastCreatedItem = CreateItem(itemId, GetUnitX(whichHero), GetUnitY(whichHero)) + call UnitAddItem(whichHero, bj_lastCreatedItem) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function UnitRemoveItemSwapped takes item whichItem, unit whichHero returns nothing + set bj_lastRemovedItem = whichItem + call UnitRemoveItem(whichHero, whichItem) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitRemoveItemFromSlotSwapped takes integer itemSlot, unit whichHero returns item + set bj_lastRemovedItem = UnitRemoveItemFromSlot(whichHero, itemSlot-1) + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function CreateItemLoc takes integer itemId, location loc returns item + set bj_lastCreatedItem = CreateItem(itemId, GetLocationX(loc), GetLocationY(loc)) + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastCreatedItem takes nothing returns item + return bj_lastCreatedItem +endfunction + +//=========================================================================== +function GetLastRemovedItem takes nothing returns item + return bj_lastRemovedItem +endfunction + +//=========================================================================== +function SetItemPositionLoc takes item whichItem, location loc returns nothing + call SetItemPosition(whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function GetLearnedSkillBJ takes nothing returns integer + return GetLearnedSkill() +endfunction + +//=========================================================================== +function SuspendHeroXPBJ takes boolean flag, unit whichHero returns nothing + call SuspendHeroXP(whichHero, not flag) +endfunction + +//=========================================================================== +function SetPlayerHandicapXPBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicapXP(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapXPBJ takes player whichPlayer returns real + return GetPlayerHandicapXP(whichPlayer) * 100 +endfunction + +//=========================================================================== +function SetPlayerHandicapBJ takes player whichPlayer, real handicapPercent returns nothing + call SetPlayerHandicap(whichPlayer, handicapPercent * 0.01) +endfunction + +//=========================================================================== +function GetPlayerHandicapBJ takes player whichPlayer returns real + return GetPlayerHandicap(whichPlayer) * 100 +endfunction + +//=========================================================================== +function GetHeroStatBJ takes integer whichStat, unit whichHero, boolean includeBonuses returns integer + if (whichStat == bj_HEROSTAT_STR) then + return GetHeroStr(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_AGI) then + return GetHeroAgi(whichHero, includeBonuses) + elseif (whichStat == bj_HEROSTAT_INT) then + return GetHeroInt(whichHero, includeBonuses) + else + // Unrecognized hero stat - return 0 + return 0 + endif +endfunction + +//=========================================================================== +function SetHeroStat takes unit whichHero, integer whichStat, integer value returns nothing + // Ignore requests for negative hero stats. + if (value <= 0) then + return + endif + + if (whichStat == bj_HEROSTAT_STR) then + call SetHeroStr(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_AGI) then + call SetHeroAgi(whichHero, value, true) + elseif (whichStat == bj_HEROSTAT_INT) then + call SetHeroInt(whichHero, value, true) + else + // Unrecognized hero stat - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroStat takes integer whichStat, unit whichHero, integer modifyMethod, integer value returns nothing + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) + value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + call SetHeroStat(whichHero, whichStat, GetHeroStatBJ(whichStat, whichHero, false) - value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + call SetHeroStat(whichHero, whichStat, value) + else + // Unrecognized modification method - ignore the request. + endif +endfunction + +//=========================================================================== +function ModifyHeroSkillPoints takes unit whichHero, integer modifyMethod, integer value returns boolean + if (modifyMethod == bj_MODIFYMETHOD_ADD) then + return UnitModifySkillPoints(whichHero, value) + elseif (modifyMethod == bj_MODIFYMETHOD_SUB) then + return UnitModifySkillPoints(whichHero, -value) + elseif (modifyMethod == bj_MODIFYMETHOD_SET) then + return UnitModifySkillPoints(whichHero, value - GetHeroSkillPoints(whichHero)) + else + // Unrecognized modification method - ignore the request and return failure. + return false + endif +endfunction + +//=========================================================================== +function UnitDropItemPointBJ takes unit whichUnit, item whichItem, real x, real y returns boolean + return UnitDropItemPoint(whichUnit, whichItem, x, y) +endfunction + +//=========================================================================== +function UnitDropItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitDropItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function UnitDropItemSlotBJ takes unit whichUnit, item whichItem, integer slot returns boolean + return UnitDropItemSlot(whichUnit, whichItem, slot-1) +endfunction + +//=========================================================================== +function UnitDropItemTargetBJ takes unit whichUnit, item whichItem, widget target returns boolean + return UnitDropItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function UnitUseItemDestructable takes unit whichUnit, item whichItem, widget target returns boolean + return UnitUseItemTarget(whichUnit, whichItem, target) +endfunction + +//=========================================================================== +function UnitUseItemPointLoc takes unit whichUnit, item whichItem, location loc returns boolean + return UnitUseItemPoint(whichUnit, whichItem, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function UnitItemInSlotBJ takes unit whichUnit, integer itemSlot returns item + return UnitItemInSlot(whichUnit, itemSlot-1) +endfunction + +//=========================================================================== +// Translates 0-based slot indices to 1-based slot indices. +// +function GetInventoryIndexOfItemTypeBJ takes unit whichUnit, integer itemId returns integer + local integer index + local item indexItem + + set index = 0 + loop + set indexItem = UnitItemInSlot(whichUnit, index) + if (indexItem != null) and (GetItemTypeId(indexItem) == itemId) then + return index + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + return 0 +endfunction + +//=========================================================================== +function GetItemOfTypeFromUnitBJ takes unit whichUnit, integer itemId returns item + local integer index = GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) + + if (index == 0) then + return null + else + return UnitItemInSlot(whichUnit, index - 1) + endif +endfunction + +//=========================================================================== +function UnitHasItemOfTypeBJ takes unit whichUnit, integer itemId returns boolean + return GetInventoryIndexOfItemTypeBJ(whichUnit, itemId) > 0 +endfunction + +//=========================================================================== +function UnitInventoryCount takes unit whichUnit returns integer + local integer index = 0 + local integer count = 0 + + loop + if (UnitItemInSlot(whichUnit, index) != null) then + set count = count + 1 + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + + return count +endfunction + +//=========================================================================== +function UnitInventorySizeBJ takes unit whichUnit returns integer + return UnitInventorySize(whichUnit) +endfunction + +//=========================================================================== +function SetItemInvulnerableBJ takes item whichItem, boolean flag returns nothing + call SetItemInvulnerable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDropOnDeathBJ takes item whichItem, boolean flag returns nothing + call SetItemDropOnDeath(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemDroppableBJ takes item whichItem, boolean flag returns nothing + call SetItemDroppable(whichItem, flag) +endfunction + +//=========================================================================== +function SetItemPlayerBJ takes item whichItem, player whichPlayer, boolean changeColor returns nothing + call SetItemPlayer(whichItem, whichPlayer, changeColor) +endfunction + +//=========================================================================== +function SetItemVisibleBJ takes boolean show, item whichItem returns nothing + call SetItemVisible(whichItem, show) +endfunction + +//=========================================================================== +function IsItemHiddenBJ takes item whichItem returns boolean + return not IsItemVisible(whichItem) +endfunction + +//=========================================================================== +function ChooseRandomItemBJ takes integer level returns integer + return ChooseRandomItem(level) +endfunction + +//=========================================================================== +function ChooseRandomItemExBJ takes integer level, itemtype whichType returns integer + return ChooseRandomItemEx(whichType, level) +endfunction + +//=========================================================================== +function ChooseRandomNPBuildingBJ takes nothing returns integer + return ChooseRandomNPBuilding() +endfunction + +//=========================================================================== +function ChooseRandomCreepBJ takes integer level returns integer + return ChooseRandomCreep(level) +endfunction + +//=========================================================================== +function EnumItemsInRectBJ takes rect r, code actionFunc returns nothing + call EnumItemsInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomItemInRectBJEnum takes nothing returns nothing + set bj_itemRandomConsidered = bj_itemRandomConsidered + 1 + if (GetRandomInt(1, bj_itemRandomConsidered) == 1) then + set bj_itemRandomCurrentPick = GetEnumItem() + endif +endfunction + +//=========================================================================== +// Picks a random item from within a rect, matching a condition +// +function RandomItemInRectBJ takes rect r, boolexpr filter returns item + set bj_itemRandomConsidered = 0 + set bj_itemRandomCurrentPick = null + call EnumItemsInRect(r, filter, function RandomItemInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_itemRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random item from within a rect +// +function RandomItemInRectSimpleBJ takes rect r returns item + return RandomItemInRectBJ(r, null) +endfunction + +//=========================================================================== +function CheckItemStatus takes item whichItem, integer status returns boolean + if (status == bj_ITEM_STATUS_HIDDEN) then + return not IsItemVisible(whichItem) + elseif (status == bj_ITEM_STATUS_OWNED) then + return IsItemOwned(whichItem) + elseif (status == bj_ITEM_STATUS_INVULNERABLE) then + return IsItemInvulnerable(whichItem) + elseif (status == bj_ITEM_STATUS_POWERUP) then + return IsItemPowerup(whichItem) + elseif (status == bj_ITEM_STATUS_SELLABLE) then + return IsItemSellable(whichItem) + elseif (status == bj_ITEM_STATUS_PAWNABLE) then + return IsItemPawnable(whichItem) + else + // Unrecognized status - return false + return false + endif +endfunction + +//=========================================================================== +function CheckItemcodeStatus takes integer itemId, integer status returns boolean + if (status == bj_ITEMCODE_STATUS_POWERUP) then + return IsItemIdPowerup(itemId) + elseif (status == bj_ITEMCODE_STATUS_SELLABLE) then + return IsItemIdSellable(itemId) + elseif (status == bj_ITEMCODE_STATUS_PAWNABLE) then + return IsItemIdPawnable(itemId) + else + // Unrecognized status - return false + return false + endif +endfunction + + + +//*************************************************************************** +//* +//* Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function UnitId2OrderIdBJ takes integer unitId returns integer + return unitId +endfunction + +//=========================================================================== +function String2UnitIdBJ takes string unitIdString returns integer + return UnitId(unitIdString) +endfunction + +//=========================================================================== +function UnitId2StringBJ takes integer unitId returns string + local string unitString = UnitId2String(unitId) + + if (unitString != null) then + return unitString + endif + + // The unitId was not recognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function String2OrderIdBJ takes string orderIdString returns integer + local integer orderId + + // Check to see if it's a generic order. + set orderId = OrderId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Check to see if it's a (train) unit order. + set orderId = UnitId(orderIdString) + if (orderId != 0) then + return orderId + endif + + // Unrecognized - return 0 + return 0 +endfunction + +//=========================================================================== +function OrderId2StringBJ takes integer orderId returns string + local string orderString + + // Check to see if it's a generic order. + set orderString = OrderId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Check to see if it's a (train) unit order. + set orderString = UnitId2String(orderId) + if (orderString != null) then + return orderString + endif + + // Unrecognized - return an empty string. + return "" +endfunction + +//=========================================================================== +function GetIssuedOrderIdBJ takes nothing returns integer + return GetIssuedOrderId() +endfunction + +//=========================================================================== +function GetKillingUnitBJ takes nothing returns unit + return GetKillingUnit() +endfunction + +//=========================================================================== +function CreateUnitAtLocSaveLast takes player id, integer unitid, location loc, real face returns unit + if (unitid == 'ugol') then + set bj_lastCreatedUnit = CreateBlightedGoldmine(id, GetLocationX(loc), GetLocationY(loc), face) + else + set bj_lastCreatedUnit = CreateUnitAtLoc(id, unitid, loc, face) + endif + + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetLastCreatedUnit takes nothing returns unit + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function CreateNUnitsAtLoc takes integer count, integer unitId, player whichPlayer, location loc, real face returns group + call GroupClear(bj_lastCreatedGroup) + loop + set count = count - 1 + exitwhen count < 0 + call CreateUnitAtLocSaveLast(whichPlayer, unitId, loc, face) + call GroupAddUnit(bj_lastCreatedGroup, bj_lastCreatedUnit) + endloop + return bj_lastCreatedGroup +endfunction + +//=========================================================================== +function CreateNUnitsAtLocFacingLocBJ takes integer count, integer unitId, player whichPlayer, location loc, location lookAt returns group + return CreateNUnitsAtLoc(count, unitId, whichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastCreatedGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupLastCreatedDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GetLastCreatedGroup takes nothing returns group + set bj_groupLastCreatedDest = CreateGroup() + call ForGroup(bj_lastCreatedGroup, function GetLastCreatedGroupEnum) + return bj_groupLastCreatedDest +endfunction + +//=========================================================================== +function CreateCorpseLocBJ takes integer unitid, player whichPlayer, location loc returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), GetRandomReal(0, 360)) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function UnitSuspendDecayBJ takes boolean suspend, unit whichUnit returns nothing + call UnitSuspendDecay(whichUnit, suspend) +endfunction + +//=========================================================================== +function DelayedSuspendDecayStopAnimEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +function DelayedSuspendDecayBoneEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 0.0001) + endif +endfunction + +//=========================================================================== +// Game code explicitly sets the animation back to "decay bone" after the +// initial corpse fades away, so we reset it now. It's best not to show +// off corpses thus created until after this grace period has passed. +// +function DelayedSuspendDecayFleshEnum takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + + if (GetUnitState(enumUnit, UNIT_STATE_LIFE) <= 0) then + call UnitSuspendDecay(enumUnit, true) + call SetUnitTimeScale(enumUnit, 10.0) + call SetUnitAnimation(enumUnit, "decay flesh") + endif +endfunction + +//=========================================================================== +// Waits a short period of time to ensure that the corpse is decaying, and +// then suspend the animation and corpse decay. +// +function DelayedSuspendDecay takes nothing returns nothing + local group boneGroup + local group fleshGroup + + // Switch the global unit groups over to local variables and recreate + // the global versions, so that this function can handle overlapping + // calls. + set boneGroup = bj_suspendDecayBoneGroup + set fleshGroup = bj_suspendDecayFleshGroup + set bj_suspendDecayBoneGroup = CreateGroup() + set bj_suspendDecayFleshGroup = CreateGroup() + + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayStopAnimEnum) + + call TriggerSleepAction(bj_CORPSE_MAX_DEATH_TIME) + call ForGroup(fleshGroup, function DelayedSuspendDecayFleshEnum) + call ForGroup(boneGroup, function DelayedSuspendDecayBoneEnum) + + call TriggerSleepAction(0.05) + call ForGroup(fleshGroup, function DelayedSuspendDecayStopAnimEnum) + + call DestroyGroup(boneGroup) + call DestroyGroup(fleshGroup) +endfunction + +//=========================================================================== +function DelayedSuspendDecayCreate takes nothing returns nothing + set bj_delayedSuspendDecayTrig = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_delayedSuspendDecayTrig, bj_delayedSuspendDecayTimer) + call TriggerAddAction(bj_delayedSuspendDecayTrig, function DelayedSuspendDecay) +endfunction + +//=========================================================================== +function CreatePermanentCorpseLocBJ takes integer style, integer unitid, player whichPlayer, location loc, real facing returns unit + set bj_lastCreatedUnit = CreateCorpse(whichPlayer, unitid, GetLocationX(loc), GetLocationY(loc), facing) + call SetUnitBlendTime(bj_lastCreatedUnit, 0) + + if (style == bj_CORPSETYPE_FLESH) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay flesh") + call GroupAddUnit(bj_suspendDecayFleshGroup, bj_lastCreatedUnit) + elseif (style == bj_CORPSETYPE_BONE) then + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + else + // Unknown decay style - treat as skeletal. + call SetUnitAnimation(bj_lastCreatedUnit, "decay bone") + call GroupAddUnit(bj_suspendDecayBoneGroup, bj_lastCreatedUnit) + endif + + call TimerStart(bj_delayedSuspendDecayTimer, 0.05, false, null) + return bj_lastCreatedUnit +endfunction + +//=========================================================================== +function GetUnitStateSwap takes unitstate whichState, unit whichUnit returns real + return GetUnitState(whichUnit, whichState) +endfunction + +//=========================================================================== +function GetUnitStatePercent takes unit whichUnit, unitstate whichState, unitstate whichMaxState returns real + local real value = GetUnitState(whichUnit, whichState) + local real maxValue = GetUnitState(whichUnit, whichMaxState) + + // Return 0 for null units. + if (whichUnit == null) or (maxValue == 0) then + return 0.0 + endif + + return value / maxValue * 100.0 +endfunction + +//=========================================================================== +function GetUnitLifePercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_LIFE, UNIT_STATE_MAX_LIFE) +endfunction + +//=========================================================================== +function GetUnitManaPercent takes unit whichUnit returns real + return GetUnitStatePercent(whichUnit, UNIT_STATE_MANA, UNIT_STATE_MAX_MANA) +endfunction + +//=========================================================================== +function SelectUnitSingle takes unit whichUnit returns nothing + call ClearSelection() + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectGroupBJEnum takes nothing returns nothing + call SelectUnit( GetEnumUnit(), true ) +endfunction + +//=========================================================================== +function SelectGroupBJ takes group g returns nothing + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) +endfunction + +//=========================================================================== +function SelectUnitAdd takes unit whichUnit returns nothing + call SelectUnit(whichUnit, true) +endfunction + +//=========================================================================== +function SelectUnitRemove takes unit whichUnit returns nothing + call SelectUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ClearSelectionForPlayer takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + endif +endfunction + +//=========================================================================== +function SelectUnitForPlayerSingle takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectGroupForPlayerBJ takes group g, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearSelection() + call ForGroup( g, function SelectGroupBJEnum ) + endif +endfunction + +//=========================================================================== +function SelectUnitAddForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, true) + endif +endfunction + +//=========================================================================== +function SelectUnitRemoveForPlayer takes unit whichUnit, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SelectUnit(whichUnit, false) + endif +endfunction + +//=========================================================================== +function SetUnitLifeBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitManaBJ takes unit whichUnit, real newValue returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, RMaxBJ(0,newValue)) +endfunction + +//=========================================================================== +function SetUnitLifePercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_LIFE, GetUnitState(whichUnit, UNIT_STATE_MAX_LIFE) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function SetUnitManaPercentBJ takes unit whichUnit, real percent returns nothing + call SetUnitState(whichUnit, UNIT_STATE_MANA, GetUnitState(whichUnit, UNIT_STATE_MAX_MANA) * RMaxBJ(0,percent) * 0.01) +endfunction + +//=========================================================================== +function IsUnitDeadBJ takes unit whichUnit returns boolean + return GetUnitState(whichUnit, UNIT_STATE_LIFE) <= 0 +endfunction + +//=========================================================================== +function IsUnitAliveBJ takes unit whichUnit returns boolean + return not IsUnitDeadBJ(whichUnit) +endfunction + +//=========================================================================== +function IsUnitGroupDeadBJEnum takes nothing returns nothing + if not IsUnitDeadBJ(GetEnumUnit()) then + set bj_isUnitGroupDeadResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is dead. +// +function IsUnitGroupDeadBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupDeadResult = true + call ForGroup(g, function IsUnitGroupDeadBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupDeadResult +endfunction + +//=========================================================================== +function IsUnitGroupEmptyBJEnum takes nothing returns nothing + set bj_isUnitGroupEmptyResult = false +endfunction + +//=========================================================================== +// Returns true if the group contains no units. +// +function IsUnitGroupEmptyBJ takes group g returns boolean + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_isUnitGroupEmptyResult = true + call ForGroup(g, function IsUnitGroupEmptyBJEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_isUnitGroupEmptyResult +endfunction + +//=========================================================================== +function IsUnitGroupInRectBJEnum takes nothing returns nothing + if not RectContainsUnit(bj_isUnitGroupInRectRect, GetEnumUnit()) then + set bj_isUnitGroupInRectResult = false + endif +endfunction + +//=========================================================================== +// Returns true if every unit of the group is within the given rect. +// +function IsUnitGroupInRectBJ takes group g, rect r returns boolean + set bj_isUnitGroupInRectResult = true + set bj_isUnitGroupInRectRect = r + call ForGroup(g, function IsUnitGroupInRectBJEnum) + return bj_isUnitGroupInRectResult +endfunction + +//=========================================================================== +function IsUnitHiddenBJ takes unit whichUnit returns boolean + return IsUnitHidden(whichUnit) +endfunction + +//=========================================================================== +function ShowUnitHide takes unit whichUnit returns nothing + call ShowUnit(whichUnit, false) +endfunction + +//=========================================================================== +function ShowUnitShow takes unit whichUnit returns nothing + // Prevent dead heroes from being unhidden. + if (IsUnitType(whichUnit, UNIT_TYPE_HERO) and IsUnitDeadBJ(whichUnit)) then + return + endif + + call ShowUnit(whichUnit, true) +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == 'ngol' +endfunction + +//=========================================================================== +function IssueHauntOrderAtLocBJ takes unit whichPeon, location loc returns boolean + local group g = null + local unit goldMine = null + + // Search for a gold mine within a 1-cell radius of the specified location. + set g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, loc, 2*bj_CELLWIDTH, filterIssueHauntOrderAtLocBJ) + set goldMine = FirstOfGroup(g) + call DestroyGroup(g) + + // If no mine was found, abort the request. + if (goldMine == null) then + return false + endif + + // Issue the Haunt Gold Mine order. + return IssueTargetOrderById(whichPeon, 'ugol', goldMine) +endfunction + +//=========================================================================== +function IssueBuildOrderByIdLocBJ takes unit whichPeon, integer unitId, location loc returns boolean + if (unitId == 'ugol') then + return IssueHauntOrderAtLocBJ(whichPeon, loc) + else + return IssueBuildOrderById(whichPeon, unitId, GetLocationX(loc), GetLocationY(loc)) + endif +endfunction + +//=========================================================================== +function IssueTrainOrderByIdBJ takes unit whichUnit, integer unitId returns boolean + return IssueImmediateOrderById(whichUnit, unitId) +endfunction + +//=========================================================================== +function GroupTrainOrderByIdBJ takes group g, integer unitId returns boolean + return GroupImmediateOrderById(g, unitId) +endfunction + +//=========================================================================== +function IssueUpgradeOrderByIdBJ takes unit whichUnit, integer techId returns boolean + return IssueImmediateOrderById(whichUnit, techId) +endfunction + +//=========================================================================== +function GetAttackedUnitBJ takes nothing returns unit + return GetTriggerUnit() +endfunction + +//=========================================================================== +function SetUnitFlyHeightBJ takes unit whichUnit, real newHeight, real rate returns nothing + call SetUnitFlyHeight(whichUnit, newHeight, rate) +endfunction + +//=========================================================================== +function SetUnitTurnSpeedBJ takes unit whichUnit, real turnSpeed returns nothing + call SetUnitTurnSpeed(whichUnit, turnSpeed) +endfunction + +//=========================================================================== +function SetUnitPropWindowBJ takes unit whichUnit, real propWindow returns nothing + local real angle = propWindow + if (angle <= 0) then + set angle = 1 + elseif (angle >= 360) then + set angle = 359 + endif + set angle = angle * bj_DEGTORAD + + call SetUnitPropWindow(whichUnit, angle) +endfunction + +//=========================================================================== +function GetUnitPropWindowBJ takes unit whichUnit returns real + return GetUnitPropWindow(whichUnit) * bj_RADTODEG +endfunction + +//=========================================================================== +function GetUnitDefaultPropWindowBJ takes unit whichUnit returns real + return GetUnitDefaultPropWindow(whichUnit) +endfunction + +//=========================================================================== +function SetUnitBlendTimeBJ takes unit whichUnit, real blendTime returns nothing + call SetUnitBlendTime(whichUnit, blendTime) +endfunction + +//=========================================================================== +function SetUnitAcquireRangeBJ takes unit whichUnit, real acquireRange returns nothing + call SetUnitAcquireRange(whichUnit, acquireRange) +endfunction + +//=========================================================================== +function UnitSetCanSleepBJ takes unit whichUnit, boolean canSleep returns nothing + call UnitAddSleep(whichUnit, canSleep) +endfunction + +//=========================================================================== +function UnitCanSleepBJ takes unit whichUnit returns boolean + return UnitCanSleep(whichUnit) +endfunction + +//=========================================================================== +function UnitWakeUpBJ takes unit whichUnit returns nothing + call UnitWakeUp(whichUnit) +endfunction + +//=========================================================================== +function UnitIsSleepingBJ takes unit whichUnit returns boolean + return UnitIsSleeping(whichUnit) +endfunction + +//=========================================================================== +function WakePlayerUnitsEnum takes nothing returns nothing + call UnitWakeUp(GetEnumUnit()) +endfunction + +//=========================================================================== +function WakePlayerUnits takes player whichPlayer returns nothing + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function WakePlayerUnitsEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function EnableCreepSleepBJ takes boolean enable returns nothing + call SetPlayerState(Player(PLAYER_NEUTRAL_AGGRESSIVE), PLAYER_STATE_NO_CREEP_SLEEP, IntegerTertiaryOp(enable, 0, 1)) + + // If we're disabling, attempt to wake any already-sleeping creeps. + if (not enable) then + call WakePlayerUnits(Player(PLAYER_NEUTRAL_AGGRESSIVE)) + endif +endfunction + +//=========================================================================== +function UnitGenerateAlarms takes unit whichUnit, boolean generate returns boolean + return UnitIgnoreAlarm(whichUnit, not generate) +endfunction + +//=========================================================================== +function DoesUnitGenerateAlarms takes unit whichUnit returns boolean + return not UnitIgnoreAlarmToggled(whichUnit) +endfunction + +//=========================================================================== +function PauseAllUnitsBJEnum takes nothing returns nothing + call PauseUnit( GetEnumUnit(), bj_pauseAllUnitsFlag ) +endfunction + +//=========================================================================== +// Pause all units +function PauseAllUnitsBJ takes boolean pause returns nothing + local integer index + local player indexPlayer + local group g + + set bj_pauseAllUnitsFlag = pause + set g = CreateGroup() + set index = 0 + loop + set indexPlayer = Player( index ) + + // If this is a computer slot, pause/resume the AI. + if (GetPlayerController( indexPlayer ) == MAP_CONTROL_COMPUTER) then + call PauseCompAI( indexPlayer, pause ) + endif + + // Enumerate and unpause every unit owned by the player. + call GroupEnumUnitsOfPlayer( g, indexPlayer, null ) + call ForGroup( g, function PauseAllUnitsBJEnum ) + call GroupClear( g ) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) +endfunction + +//=========================================================================== +function PauseUnitBJ takes boolean pause, unit whichUnit returns nothing + call PauseUnit(whichUnit, pause) +endfunction + +//=========================================================================== +function IsUnitPausedBJ takes unit whichUnit returns boolean + return IsUnitPaused(whichUnit) +endfunction + +//=========================================================================== +function UnitPauseTimedLifeBJ takes boolean flag, unit whichUnit returns nothing + call UnitPauseTimedLife(whichUnit, flag) +endfunction + +//=========================================================================== +function UnitApplyTimedLifeBJ takes real duration, integer buffId, unit whichUnit returns nothing + call UnitApplyTimedLife(whichUnit, buffId, duration) +endfunction + +//=========================================================================== +function UnitShareVisionBJ takes boolean share, unit whichUnit, player whichPlayer returns nothing + call UnitShareVision(whichUnit, whichPlayer, share) +endfunction + +//=========================================================================== +function UnitRemoveBuffsBJ takes integer buffType, unit whichUnit returns nothing + if (buffType == bj_REMOVEBUFFS_POSITIVE) then + call UnitRemoveBuffs(whichUnit, true, false) + elseif (buffType == bj_REMOVEBUFFS_NEGATIVE) then + call UnitRemoveBuffs(whichUnit, false, true) + elseif (buffType == bj_REMOVEBUFFS_ALL) then + call UnitRemoveBuffs(whichUnit, true, true) + elseif (buffType == bj_REMOVEBUFFS_NONTLIFE) then + call UnitRemoveBuffsEx(whichUnit, true, true, false, false, false, true, false) + else + // Unrecognized dispel type - ignore the request. + endif +endfunction + +//=========================================================================== +function UnitRemoveBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns nothing + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + call UnitRemoveBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitCountBuffsExBJ takes integer polarity, integer resist, unit whichUnit, boolean bTLife, boolean bAura returns integer + local boolean bPos = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_POSITIVE) + local boolean bNeg = (polarity == bj_BUFF_POLARITY_EITHER) or (polarity == bj_BUFF_POLARITY_NEGATIVE) + local boolean bMagic = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_MAGIC) + local boolean bPhys = (resist == bj_BUFF_RESIST_BOTH) or (resist == bj_BUFF_RESIST_PHYSICAL) + + return UnitCountBuffsEx(whichUnit, bPos, bNeg, bMagic, bPhys, bTLife, bAura, false) +endfunction + +//=========================================================================== +function UnitRemoveAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitRemoveAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitAddAbilityBJ takes integer abilityId, unit whichUnit returns boolean + return UnitAddAbility(whichUnit, abilityId) +endfunction + +//=========================================================================== +function UnitRemoveTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitRemoveType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitAddTypeBJ takes unittype whichType, unit whichUnit returns boolean + return UnitAddType(whichUnit, whichType) +endfunction + +//=========================================================================== +function UnitMakeAbilityPermanentBJ takes boolean permanent, integer abilityId, unit whichUnit returns boolean + return UnitMakeAbilityPermanent(whichUnit, permanent, abilityId) +endfunction + +//=========================================================================== +function SetUnitExplodedBJ takes unit whichUnit, boolean exploded returns nothing + call SetUnitExploded(whichUnit, exploded) +endfunction + +//=========================================================================== +function ExplodeUnitBJ takes unit whichUnit returns nothing + call SetUnitExploded(whichUnit, true) + call KillUnit(whichUnit) +endfunction + +//=========================================================================== +function GetTransportUnitBJ takes nothing returns unit + return GetTransportUnit() +endfunction + +//=========================================================================== +function GetLoadedUnitBJ takes nothing returns unit + return GetLoadedUnit() +endfunction + +//=========================================================================== +function IsUnitInTransportBJ takes unit whichUnit, unit whichTransport returns boolean + return IsUnitInTransport(whichUnit, whichTransport) +endfunction + +//=========================================================================== +function IsUnitLoadedBJ takes unit whichUnit returns boolean + return IsUnitLoaded(whichUnit) +endfunction + +//=========================================================================== +function IsUnitIllusionBJ takes unit whichUnit returns boolean + return IsUnitIllusion(whichUnit) +endfunction + +//=========================================================================== +// This attempts to replace a unit with a new unit type by creating a new +// unit of the desired type using the old unit's location, facing, etc. +// +function ReplaceUnitBJ takes unit whichUnit, integer newUnitId, integer unitStateMethod returns unit + local unit oldUnit = whichUnit + local unit newUnit + local boolean wasHidden + local integer index + local item indexItem + local real oldRatio + + // If we have bogus data, don't attempt the replace. + if (oldUnit == null) then + set bj_lastReplacedUnit = oldUnit + return oldUnit + endif + + // Hide the original unit. + set wasHidden = IsUnitHidden(oldUnit) + call ShowUnit(oldUnit, false) + + // Create the replacement unit. + if (newUnitId == 'ugol') then + set newUnit = CreateBlightedGoldmine(GetOwningPlayer(oldUnit), GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + else + set newUnit = CreateUnit(GetOwningPlayer(oldUnit), newUnitId, GetUnitX(oldUnit), GetUnitY(oldUnit), GetUnitFacing(oldUnit)) + endif + + // Set the unit's life and mana according to the requested method. + if (unitStateMethod == bj_UNIT_STATE_METHOD_RELATIVE) then + // Set the replacement's current/max life ratio to that of the old unit. + // If both units have mana, do the same for mana. + if (GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_LIFE) / GetUnitState(oldUnit, UNIT_STATE_MAX_LIFE) + call SetUnitState(newUnit, UNIT_STATE_LIFE, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + endif + + if (GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) > 0) and (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + set oldRatio = GetUnitState(oldUnit, UNIT_STATE_MANA) / GetUnitState(oldUnit, UNIT_STATE_MAX_MANA) + call SetUnitState(newUnit, UNIT_STATE_MANA, oldRatio * GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_ABSOLUTE) then + // Set the replacement's current life to that of the old unit. + // If the new unit has mana, do the same for mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(oldUnit, UNIT_STATE_LIFE)) + if (GetUnitState(newUnit, UNIT_STATE_MAX_MANA) > 0) then + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(oldUnit, UNIT_STATE_MANA)) + endif + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_DEFAULTS) then + // The newly created unit should already have default life and mana. + elseif (unitStateMethod == bj_UNIT_STATE_METHOD_MAXIMUM) then + // Use max life and mana. + call SetUnitState(newUnit, UNIT_STATE_LIFE, GetUnitState(newUnit, UNIT_STATE_MAX_LIFE)) + call SetUnitState(newUnit, UNIT_STATE_MANA, GetUnitState(newUnit, UNIT_STATE_MAX_MANA)) + else + // Unrecognized unit state method - ignore the request. + endif + + // Mirror properties of the old unit onto the new unit. + //call PauseUnit(newUnit, IsUnitPaused(oldUnit)) + call SetResourceAmount(newUnit, GetResourceAmount(oldUnit)) + + // If both the old and new units are heroes, handle their hero info. + if (IsUnitType(oldUnit, UNIT_TYPE_HERO) and IsUnitType(newUnit, UNIT_TYPE_HERO)) then + call SetHeroXP(newUnit, GetHeroXP(oldUnit), false) + + set index = 0 + loop + set indexItem = UnitItemInSlot(oldUnit, index) + if (indexItem != null) then + call UnitRemoveItem(oldUnit, indexItem) + call UnitAddItem(newUnit, indexItem) + endif + + set index = index + 1 + exitwhen index >= bj_MAX_INVENTORY + endloop + endif + + // Remove or kill the original unit. It is sometimes unsafe to remove + // hidden units, so kill the original unit if it was previously hidden. + if wasHidden then + call KillUnit(oldUnit) + call RemoveUnit(oldUnit) + else + call RemoveUnit(oldUnit) + endif + + set bj_lastReplacedUnit = newUnit + return newUnit +endfunction + +//=========================================================================== +function GetLastReplacedUnitBJ takes nothing returns unit + return bj_lastReplacedUnit +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingBJ takes unit whichUnit, location loc, real facing returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, facing) +endfunction + +//=========================================================================== +function SetUnitPositionLocFacingLocBJ takes unit whichUnit, location loc, location lookAt returns nothing + call SetUnitPositionLoc(whichUnit, loc) + call SetUnitFacing(whichUnit, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function AddItemToStockBJ takes integer itemId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddItemToStock(whichUnit, itemId, currentStock, stockMax) +endfunction + +//=========================================================================== +function AddUnitToStockBJ takes integer unitId, unit whichUnit, integer currentStock, integer stockMax returns nothing + call AddUnitToStock(whichUnit, unitId, currentStock, stockMax) +endfunction + +//=========================================================================== +function RemoveItemFromStockBJ takes integer itemId, unit whichUnit returns nothing + call RemoveItemFromStock(whichUnit, itemId) +endfunction + +//=========================================================================== +function RemoveUnitFromStockBJ takes integer unitId, unit whichUnit returns nothing + call RemoveUnitFromStock(whichUnit, unitId) +endfunction + +//=========================================================================== +function SetUnitUseFoodBJ takes boolean enable, unit whichUnit returns nothing + call SetUnitUseFood(whichUnit, enable) +endfunction + +//=========================================================================== +function UnitDamagePointLoc takes unit whichUnit, real delay, real radius, location loc, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamagePoint(whichUnit, delay, radius, GetLocationX(loc), GetLocationY(loc), amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + +//=========================================================================== +function UnitDamageTargetBJ takes unit whichUnit, unit target, real amount, attacktype whichAttack, damagetype whichDamage returns boolean + return UnitDamageTarget(whichUnit, target, amount, true, false, whichAttack, whichDamage, WEAPON_TYPE_WHOKNOWS) +endfunction + + + +//*************************************************************************** +//* +//* Destructable Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateDestructableLoc takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function CreateDeadDestructableLocBJ takes integer objectid, location loc, real facing, real scale, integer variation returns destructable + set bj_lastCreatedDestructable = CreateDeadDestructable(objectid, GetLocationX(loc), GetLocationY(loc), facing, scale, variation) + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function GetLastCreatedDestructable takes nothing returns destructable + return bj_lastCreatedDestructable +endfunction + +//=========================================================================== +function ShowDestructableBJ takes boolean flag, destructable d returns nothing + call ShowDestructable(d, flag) +endfunction + +//=========================================================================== +function SetDestructableInvulnerableBJ takes destructable d, boolean flag returns nothing + call SetDestructableInvulnerable(d, flag) +endfunction + +//=========================================================================== +function IsDestructableInvulnerableBJ takes destructable d returns boolean + return IsDestructableInvulnerable(d) +endfunction + +//=========================================================================== +function GetDestructableLoc takes destructable whichDestructable returns location + return Location(GetDestructableX(whichDestructable), GetDestructableY(whichDestructable)) +endfunction + +//=========================================================================== +function EnumDestructablesInRectAll takes rect r, code actionFunc returns nothing + call EnumDestructablesInRect(r, null, actionFunc) +endfunction + +//=========================================================================== +function EnumDestructablesInCircleBJFilter takes nothing returns boolean + local location destLoc = GetDestructableLoc(GetFilterDestructable()) + local boolean result + + set result = DistanceBetweenPoints(destLoc, bj_enumDestructableCenter) <= bj_enumDestructableRadius + call RemoveLocation(destLoc) + return result +endfunction + +//=========================================================================== +function IsDestructableDeadBJ takes destructable d returns boolean + return GetDestructableLife(d) <= 0 +endfunction + +//=========================================================================== +function IsDestructableAliveBJ takes destructable d returns boolean + return not IsDestructableDeadBJ(d) +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function RandomDestructableInRectBJEnum takes nothing returns nothing + set bj_destRandomConsidered = bj_destRandomConsidered + 1 + if (GetRandomInt(1,bj_destRandomConsidered) == 1) then + set bj_destRandomCurrentPick = GetEnumDestructable() + endif +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect, matching a condition +// +function RandomDestructableInRectBJ takes rect r, boolexpr filter returns destructable + set bj_destRandomConsidered = 0 + set bj_destRandomCurrentPick = null + call EnumDestructablesInRect(r, filter, function RandomDestructableInRectBJEnum) + call DestroyBoolExpr(filter) + return bj_destRandomCurrentPick +endfunction + +//=========================================================================== +// Picks a random destructable from within a rect +// +function RandomDestructableInRectSimpleBJ takes rect r returns destructable + return RandomDestructableInRectBJ(r, null) +endfunction + +//=========================================================================== +// Enumerates within a rect, with a filter to narrow the enumeration down +// objects within a circular area. +// +function EnumDestructablesInCircleBJ takes real radius, location loc, code actionFunc returns nothing + local rect r + + if (radius >= 0) then + set bj_enumDestructableCenter = loc + set bj_enumDestructableRadius = radius + set r = GetRectFromCircleBJ(loc, radius) + call EnumDestructablesInRect(r, filterEnumDestructablesInCircleBJ, actionFunc) + call RemoveRect(r) + endif +endfunction + +//=========================================================================== +function SetDestructableLifePercentBJ takes destructable d, real percent returns nothing + call SetDestructableLife(d, GetDestructableMaxLife(d) * percent * 0.01) +endfunction + +//=========================================================================== +function SetDestructableMaxLifeBJ takes destructable d, real max returns nothing + call SetDestructableMaxLife(d, max) +endfunction + +//=========================================================================== +function ModifyGateBJ takes integer gateOperation, destructable d returns nothing + if (gateOperation == bj_GATEOPERATION_CLOSE) then + if (GetDestructableLife(d) <= 0) then + call DestructableRestoreLife(d, GetDestructableMaxLife(d), true) + endif + call SetDestructableAnimation(d, "stand") + elseif (gateOperation == bj_GATEOPERATION_OPEN) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death alternate") + elseif (gateOperation == bj_GATEOPERATION_DESTROY) then + if (GetDestructableLife(d) > 0) then + call KillDestructable(d) + endif + call SetDestructableAnimation(d, "death") + else + // Unrecognized gate state - ignore the request. + endif +endfunction + +//=========================================================================== +// Determine the elevator's height from its occlusion height. +// +function GetElevatorHeight takes destructable d returns integer + local integer height + + set height = 1 + R2I(GetDestructableOccluderHeight(d) / bj_CLIFFHEIGHT) + if (height < 1) or (height > 3) then + set height = 1 + endif + return height +endfunction + +//=========================================================================== +// To properly animate an elevator, we must know not only what height we +// want to change to, but also what height we are currently at. This code +// determines the elevator's current height from its occlusion height. +// Arbitrarily changing an elevator's occlusion height is thus inadvisable. +// +function ChangeElevatorHeight takes destructable d, integer newHeight returns nothing + local integer oldHeight + + // Cap the new height within the supported range. + set newHeight = IMaxBJ(1, newHeight) + set newHeight = IMinBJ(3, newHeight) + + // Find out what height the elevator is already at. + set oldHeight = GetElevatorHeight(d) + + // Set the elevator's occlusion height. + call SetDestructableOccluderHeight(d, bj_CLIFFHEIGHT*(newHeight-1)) + + if (newHeight == 1) then + if (oldHeight == 2) then + call SetDestructableAnimation(d, "birth") + call QueueDestructableAnimation(d, "stand") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth third") + call QueueDestructableAnimation(d, "stand") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand") + endif + elseif (newHeight == 2) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death") + call QueueDestructableAnimation(d, "stand second") + elseif (oldHeight == 3) then + call SetDestructableAnimation(d, "birth second") + call QueueDestructableAnimation(d, "stand second") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand second") + endif + elseif (newHeight == 3) then + if (oldHeight == 1) then + call SetDestructableAnimation(d, "death third") + call QueueDestructableAnimation(d, "stand third") + elseif (oldHeight == 2) then + call SetDestructableAnimation(d, "death second") + call QueueDestructableAnimation(d, "stand third") + else + // Unrecognized old height - snap to new height. + call SetDestructableAnimation(d, "stand third") + endif + else + // Unrecognized new height - ignore the request. + endif +endfunction + +//=========================================================================== +// Grab the unit and throw his own coords in his face, forcing him to push +// and shove until he finds a spot where noone will bother him. +// +function NudgeUnitsInRectEnum takes nothing returns nothing + local unit nudgee = GetEnumUnit() + + call SetUnitPosition(nudgee, GetUnitX(nudgee), GetUnitY(nudgee)) +endfunction + +//=========================================================================== +function NudgeItemsInRectEnum takes nothing returns nothing + local item nudgee = GetEnumItem() + + call SetItemPosition(nudgee, GetItemX(nudgee), GetItemY(nudgee)) +endfunction + +//=========================================================================== +// Nudge the items and units within a given rect ever so gently, so as to +// encourage them to find locations where they can peacefully coexist with +// pathing restrictions and live happy, fruitful lives. +// +function NudgeObjectsInRect takes rect nudgeArea returns nothing + local group g + + set g = CreateGroup() + call GroupEnumUnitsInRect(g, nudgeArea, null) + call ForGroup(g, function NudgeUnitsInRectEnum) + call DestroyGroup(g) + + call EnumItemsInRect(nudgeArea, null, function NudgeItemsInRectEnum) +endfunction + +//=========================================================================== +function NearbyElevatorExistsEnum takes nothing returns nothing + local destructable d = GetEnumDestructable() + local integer dType = GetDestructableTypeId(d) + + if (dType == bj_ELEVATOR_CODE01) or (dType == bj_ELEVATOR_CODE02) then + set bj_elevatorNeighbor = d + endif +endfunction + +//=========================================================================== +function NearbyElevatorExists takes real x, real y returns boolean + local real findThreshold = 32 + local rect r + + // If another elevator is overlapping this one, ignore the wall. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorNeighbor = null + call EnumDestructablesInRect(r, null, function NearbyElevatorExistsEnum) + call RemoveRect(r) + + return bj_elevatorNeighbor != null +endfunction + +//=========================================================================== +function FindElevatorWallBlockerEnum takes nothing returns nothing + set bj_elevatorWallBlocker = GetEnumDestructable() +endfunction + +//=========================================================================== +// This toggles pathing on or off for one wall of an elevator by killing +// or reviving a pathing blocker at the appropriate location (and creating +// the pathing blocker in the first place, if it does not yet exist). +// +function ChangeElevatorWallBlocker takes real x, real y, real facing, boolean open returns nothing + local destructable blocker = null + local real findThreshold = 32 + local real nudgeLength = 4.25 * bj_CELLWIDTH + local real nudgeWidth = 1.25 * bj_CELLWIDTH + local rect r + + // Search for the pathing blocker within the general area. + set r = Rect(x - findThreshold, y - findThreshold, x + findThreshold, y + findThreshold) + set bj_elevatorWallBlocker = null + call EnumDestructablesInRect(r, null, function FindElevatorWallBlockerEnum) + call RemoveRect(r) + set blocker = bj_elevatorWallBlocker + + // Ensure that the blocker exists. + if (blocker == null) then + set blocker = CreateDeadDestructable(bj_ELEVATOR_BLOCKER_CODE, x, y, facing, 1, 0) + elseif (GetDestructableTypeId(blocker) != bj_ELEVATOR_BLOCKER_CODE) then + // If a different destructible exists in the blocker's spot, ignore + // the request. (Two destructibles cannot occupy the same location + // on the map, so we cannot create an elevator blocker here.) + return + endif + + if (open) then + // Ensure that the blocker is dead. + if (GetDestructableLife(blocker) > 0) then + call KillDestructable(blocker) + endif + else + // Ensure that the blocker is alive. + if (GetDestructableLife(blocker) <= 0) then + call DestructableRestoreLife(blocker, GetDestructableMaxLife(blocker), false) + endif + + // Nudge any objects standing in the blocker's way. + if (facing == 0) then + set r = Rect(x - nudgeWidth/2, y - nudgeLength/2, x + nudgeWidth/2, y + nudgeLength/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + elseif (facing == 90) then + set r = Rect(x - nudgeLength/2, y - nudgeWidth/2, x + nudgeLength/2, y + nudgeWidth/2) + call NudgeObjectsInRect(r) + call RemoveRect(r) + else + // Unrecognized blocker angle - don't nudge anything. + endif + endif +endfunction + +//=========================================================================== +function ChangeElevatorWalls takes boolean open, integer walls, destructable d returns nothing + local real x = GetDestructableX(d) + local real y = GetDestructableY(d) + local real distToBlocker = 192 + local real distToNeighbor = 256 + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_EAST) then + if (not NearbyElevatorExists(x + distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x + distToBlocker, y, 0, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_NORTH) then + if (not NearbyElevatorExists(x, y + distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y + distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_SOUTH) then + if (not NearbyElevatorExists(x, y - distToNeighbor)) then + call ChangeElevatorWallBlocker(x, y - distToBlocker, 90, open) + endif + endif + + if (walls == bj_ELEVATOR_WALL_TYPE_ALL) or (walls == bj_ELEVATOR_WALL_TYPE_WEST) then + if (not NearbyElevatorExists(x - distToNeighbor, y)) then + call ChangeElevatorWallBlocker(x - distToBlocker, y, 0, open) + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Neutral Building Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function WaygateActivateBJ takes boolean activate, unit waygate returns nothing + call WaygateActivate(waygate, activate) +endfunction + +//=========================================================================== +function WaygateIsActiveBJ takes unit waygate returns boolean + return WaygateIsActive(waygate) +endfunction + +//=========================================================================== +function WaygateSetDestinationLocBJ takes unit waygate, location loc returns nothing + call WaygateSetDestination(waygate, GetLocationX(loc), GetLocationY(loc)) +endfunction + +//=========================================================================== +function WaygateGetDestinationLocBJ takes unit waygate returns location + return Location(WaygateGetDestinationX(waygate), WaygateGetDestinationY(waygate)) +endfunction + +//=========================================================================== +function UnitSetUsesAltIconBJ takes boolean flag, unit whichUnit returns nothing + call UnitSetUsesAltIcon(whichUnit, flag) +endfunction + + + +//*************************************************************************** +//* +//* UI Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForceUIKeyBJ takes player whichPlayer, string key returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUIKey(key) + endif +endfunction + +//=========================================================================== +function ForceUICancelBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ForceUICancel() + endif +endfunction + + + +//*************************************************************************** +//* +//* Group and Force Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ForGroupBJ takes group whichGroup, code callback returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + call ForGroup(whichGroup, callback) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif +endfunction + +//=========================================================================== +function GroupAddUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupAddUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupRemoveUnitSimple takes unit whichUnit, group whichGroup returns nothing + call GroupRemoveUnit(whichGroup, whichUnit) +endfunction + +//=========================================================================== +function GroupAddGroupEnum takes nothing returns nothing + call GroupAddUnit(bj_groupAddGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupAddGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupAddGroupDest = destGroup + call ForGroup(sourceGroup, function GroupAddGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function GroupRemoveGroupEnum takes nothing returns nothing + call GroupRemoveUnit(bj_groupRemoveGroupDest, GetEnumUnit()) +endfunction + +//=========================================================================== +function GroupRemoveGroup takes group sourceGroup, group destGroup returns nothing + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRemoveGroupDest = destGroup + call ForGroup(sourceGroup, function GroupRemoveGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(sourceGroup) + endif +endfunction + +//=========================================================================== +function ForceAddPlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceAddPlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +function ForceRemovePlayerSimple takes player whichPlayer, force whichForce returns nothing + call ForceRemovePlayer(whichForce, whichPlayer) +endfunction + +//=========================================================================== +// Consider each unit, one at a time, keeping a "current pick". Once all units +// are considered, this "current pick" will be the resulting random unit. +// +// The chance of picking a given unit over the "current pick" is 1/N, where N is +// the number of units considered thusfar (including the current consideration). +// +function GroupPickRandomUnitEnum takes nothing returns nothing + set bj_groupRandomConsidered = bj_groupRandomConsidered + 1 + if (GetRandomInt(1,bj_groupRandomConsidered) == 1) then + set bj_groupRandomCurrentPick = GetEnumUnit() + endif +endfunction + +//=========================================================================== +// Picks a random unit from a group. +// +function GroupPickRandomUnit takes group whichGroup returns unit + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupRandomConsidered = 0 + set bj_groupRandomCurrentPick = null + call ForGroup(whichGroup, function GroupPickRandomUnitEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(whichGroup) + endif + return bj_groupRandomCurrentPick +endfunction + +//=========================================================================== +// See GroupPickRandomUnitEnum for the details of this algorithm. +// +function ForcePickRandomPlayerEnum takes nothing returns nothing + set bj_forceRandomConsidered = bj_forceRandomConsidered + 1 + if (GetRandomInt(1,bj_forceRandomConsidered) == 1) then + set bj_forceRandomCurrentPick = GetEnumPlayer() + endif +endfunction + +//=========================================================================== +// Picks a random player from a force. +// +function ForcePickRandomPlayer takes force whichForce returns player + set bj_forceRandomConsidered = 0 + set bj_forceRandomCurrentPick = null + call ForForce(whichForce, function ForcePickRandomPlayerEnum) + return bj_forceRandomCurrentPick +endfunction + +//=========================================================================== +function EnumUnitsSelected takes player whichPlayer, boolexpr enumFilter, code enumAction returns nothing + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, enumFilter) + call DestroyBoolExpr(enumFilter) + call ForGroup(g, enumAction) + call DestroyGroup(g) +endfunction + +//=========================================================================== +function GetUnitsInRectMatching takes rect r, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRect(g, r, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRectAll takes rect r returns group + return GetUnitsInRectMatching(r, null) +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayerFilter takes nothing returns boolean + return GetOwningPlayer(GetFilterUnit()) == bj_groupEnumOwningPlayer +endfunction + +//=========================================================================== +function GetUnitsInRectOfPlayer takes rect r, player whichPlayer returns group + local group g = CreateGroup() + set bj_groupEnumOwningPlayer = whichPlayer + call GroupEnumUnitsInRect(g, r, filterGetUnitsInRectOfPlayer) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocMatching takes real radius, location whichLocation, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(g, whichLocation, radius, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsInRangeOfLocAll takes real radius, location whichLocation returns group + return GetUnitsInRangeOfLocMatching(radius, whichLocation, null) +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAllFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfTypeIdAll takes integer unitid returns group + local group result = CreateGroup() + local group g = CreateGroup() + local integer index + + set index = 0 + loop + set bj_groupEnumTypeId = unitid + call GroupClear(g) + call GroupEnumUnitsOfPlayer(g, Player(index), filterGetUnitsOfTypeIdAll) + call GroupAddGroup(g, result) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call DestroyGroup(g) + + return result +endfunction + +//=========================================================================== +function GetUnitsOfPlayerMatching takes player whichPlayer, boolexpr filter returns group + local group g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, filter) + call DestroyBoolExpr(filter) + return g +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAll takes player whichPlayer returns group + return GetUnitsOfPlayerMatching(whichPlayer, null) +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeIdFilter takes nothing returns boolean + return GetUnitTypeId(GetFilterUnit()) == bj_groupEnumTypeId +endfunction + +//=========================================================================== +function GetUnitsOfPlayerAndTypeId takes player whichPlayer, integer unitid returns group + local group g = CreateGroup() + set bj_groupEnumTypeId = unitid + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterGetUnitsOfPlayerAndTypeId) + return g +endfunction + +//=========================================================================== +function GetUnitsSelectedAll takes player whichPlayer returns group + local group g = CreateGroup() + call SyncSelections() + call GroupEnumUnitsSelected(g, whichPlayer, null) + return g +endfunction + +//=========================================================================== +function GetForceOfPlayer takes player whichPlayer returns force + local force f = CreateForce() + call ForceAddPlayer(f, whichPlayer) + return f +endfunction + +//=========================================================================== +function GetPlayersAll takes nothing returns force + return bj_FORCE_ALL_PLAYERS +endfunction + +//=========================================================================== +function GetPlayersByMapControl takes mapcontrol whichControl returns force + local force f = CreateForce() + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if GetPlayerController(indexPlayer) == whichControl then + call ForceAddPlayer(f, indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYER_SLOTS + endloop + + return f +endfunction + +//=========================================================================== +function GetPlayersAllies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumAllies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersEnemies takes player whichPlayer returns force + local force f = CreateForce() + call ForceEnumEnemies(f, whichPlayer, null) + return f +endfunction + +//=========================================================================== +function GetPlayersMatching takes boolexpr filter returns force + local force f = CreateForce() + call ForceEnumPlayers(f, filter) + call DestroyBoolExpr(filter) + return f +endfunction + +//=========================================================================== +function CountUnitsInGroupEnum takes nothing returns nothing + set bj_groupCountUnits = bj_groupCountUnits + 1 +endfunction + +//=========================================================================== +function CountUnitsInGroup takes group g returns integer + // If the user wants the group destroyed, remember that fact and clear + // the flag, in case it is used again in the callback. + local boolean wantDestroy = bj_wantDestroyGroup + set bj_wantDestroyGroup = false + + set bj_groupCountUnits = 0 + call ForGroup(g, function CountUnitsInGroupEnum) + + // If the user wants the group destroyed, do so now. + if (wantDestroy) then + call DestroyGroup(g) + endif + return bj_groupCountUnits +endfunction + +//=========================================================================== +function CountPlayersInForceEnum takes nothing returns nothing + set bj_forceCountPlayers = bj_forceCountPlayers + 1 +endfunction + +//=========================================================================== +function CountPlayersInForceBJ takes force f returns integer + set bj_forceCountPlayers = 0 + call ForForce(f, function CountPlayersInForceEnum) + return bj_forceCountPlayers +endfunction + +//=========================================================================== +function GetRandomSubGroupEnum takes nothing returns nothing + if (bj_randomSubGroupWant > 0) then + if (bj_randomSubGroupWant >= bj_randomSubGroupTotal) or (GetRandomReal(0,1) < bj_randomSubGroupChance) then + // We either need every remaining unit, or the unit passed its chance check. + call GroupAddUnit(bj_randomSubGroupGroup, GetEnumUnit()) + set bj_randomSubGroupWant = bj_randomSubGroupWant - 1 + endif + endif + set bj_randomSubGroupTotal = bj_randomSubGroupTotal - 1 +endfunction + +//=========================================================================== +function GetRandomSubGroup takes integer count, group sourceGroup returns group + local group g = CreateGroup() + + set bj_randomSubGroupGroup = g + set bj_randomSubGroupWant = count + set bj_randomSubGroupTotal = CountUnitsInGroup(sourceGroup) + + if (bj_randomSubGroupWant <= 0 or bj_randomSubGroupTotal <= 0) then + return g + endif + + set bj_randomSubGroupChance = I2R(bj_randomSubGroupWant) / I2R(bj_randomSubGroupTotal) + call ForGroup(sourceGroup, function GetRandomSubGroupEnum) + return g +endfunction + +//=========================================================================== +function LivingPlayerUnitsOfTypeIdFilter takes nothing returns boolean + local unit filterUnit = GetFilterUnit() + return IsUnitAliveBJ(filterUnit) and GetUnitTypeId(filterUnit) == bj_livingPlayerUnitsTypeId +endfunction + +//=========================================================================== +function CountLivingPlayerUnitsOfTypeId takes integer unitId, player whichPlayer returns integer + local group g + local integer matchedCount + + set g = CreateGroup() + set bj_livingPlayerUnitsTypeId = unitId + call GroupEnumUnitsOfPlayer(g, whichPlayer, filterLivingPlayerUnitsOfTypeId) + set matchedCount = CountUnitsInGroup(g) + call DestroyGroup(g) + + return matchedCount +endfunction + + + +//*************************************************************************** +//* +//* Animation Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function ResetUnitAnimation takes unit whichUnit returns nothing + call SetUnitAnimation(whichUnit, "stand") +endfunction + +//=========================================================================== +function SetUnitTimeScalePercent takes unit whichUnit, real percentScale returns nothing + call SetUnitTimeScale(whichUnit, percentScale * 0.01) +endfunction + +//=========================================================================== +function SetUnitScalePercent takes unit whichUnit, real percentScaleX, real percentScaleY, real percentScaleZ returns nothing + call SetUnitScale(whichUnit, percentScaleX * 0.01, percentScaleY * 0.01, percentScaleZ * 0.01) +endfunction + +//=========================================================================== +// This version differs from the common.j interface in that the alpha value +// is reversed so as to be displayed as transparency, and all four parameters +// are treated as percentages rather than bytes. +// +function SetUnitVertexColorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call SetUnitVertexColor(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function UnitAddIndicatorBJ takes unit whichUnit, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichUnit, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function DestructableAddIndicatorBJ takes destructable whichDestructable, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichDestructable, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function ItemAddIndicatorBJ takes item whichItem, real red, real green, real blue, real transparency returns nothing + call AddIndicator(whichItem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at a location. +// +function SetUnitFacingToFaceLocTimed takes unit whichUnit, location target, real duration returns nothing + local location unitLoc = GetUnitLoc(whichUnit) + + call SetUnitFacingTimed(whichUnit, AngleBetweenPoints(unitLoc, target), duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +// Sets a unit's facing to point directly at another unit. +// +function SetUnitFacingToFaceUnitTimed takes unit whichUnit, unit target, real duration returns nothing + local location unitLoc = GetUnitLoc(target) + + call SetUnitFacingToFaceLocTimed(whichUnit, unitLoc, duration) + call RemoveLocation(unitLoc) +endfunction + +//=========================================================================== +function QueueUnitAnimationBJ takes unit whichUnit, string whichAnimation returns nothing + call QueueUnitAnimation(whichUnit, whichAnimation) +endfunction + +//=========================================================================== +function SetDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call SetDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function QueueDestructableAnimationBJ takes destructable d, string whichAnimation returns nothing + call QueueDestructableAnimation(d, whichAnimation) +endfunction + +//=========================================================================== +function SetDestAnimationSpeedPercent takes destructable d, real percentScale returns nothing + call SetDestructableAnimationSpeed(d, percentScale * 0.01) +endfunction + + + +//*************************************************************************** +//* +//* Dialog Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DialogDisplayBJ takes boolean flag, dialog whichDialog, player whichPlayer returns nothing + call DialogDisplay(whichPlayer, whichDialog, flag) +endfunction + +//=========================================================================== +function DialogSetMessageBJ takes dialog whichDialog, string message returns nothing + call DialogSetMessage(whichDialog, message) +endfunction + +//=========================================================================== +function DialogAddButtonBJ takes dialog whichDialog, string buttonText returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,0) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogAddButtonWithHotkeyBJ takes dialog whichDialog, string buttonText, integer hotkey returns button + set bj_lastCreatedButton = DialogAddButton(whichDialog, buttonText,hotkey) + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function DialogClearBJ takes dialog whichDialog returns nothing + call DialogClear(whichDialog) +endfunction + +//=========================================================================== +function GetLastCreatedButtonBJ takes nothing returns button + return bj_lastCreatedButton +endfunction + +//=========================================================================== +function GetClickedButtonBJ takes nothing returns button + return GetClickedButton() +endfunction + +//=========================================================================== +function GetClickedDialogBJ takes nothing returns dialog + return GetClickedDialog() +endfunction + + + +//*************************************************************************** +//* +//* Alliance Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerAllianceBJ takes player sourcePlayer, alliancetype whichAllianceSetting, boolean value, player otherPlayer returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + call SetPlayerAlliance(sourcePlayer, otherPlayer, whichAllianceSetting, value) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Ally" checkbox. +// +function SetPlayerAllianceStateAllyBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_REQUEST, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_HELP_RESPONSE, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_XP, flag) + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_SPELLS, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Vision" checkbox. +// +function SetPlayerAllianceStateVisionBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_VISION, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox. +// +function SetPlayerAllianceStateControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_CONTROL, flag) +endfunction + +//=========================================================================== +// Set all flags used by the in-game "Shared Units" checkbox with the Full +// Shared Unit Control feature enabled. +// +function SetPlayerAllianceStateFullControlBJ takes player sourcePlayer, player otherPlayer, boolean flag returns nothing + call SetPlayerAlliance(sourcePlayer, otherPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, flag) +endfunction + +//=========================================================================== +function SetPlayerAllianceStateBJ takes player sourcePlayer, player otherPlayer, integer allianceState returns nothing + // Prevent players from attempting to ally with themselves. + if (sourcePlayer == otherPlayer) then + return + endif + + if allianceState == bj_ALLIANCE_UNALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_UNALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_UNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + elseif allianceState == bj_ALLIANCE_ALLIED_ADVUNITS then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + elseif allianceState == bj_ALLIANCE_NEUTRAL_VISION then + call SetPlayerAllianceStateAllyBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateVisionBJ( sourcePlayer, otherPlayer, true ) + call SetPlayerAllianceStateControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAllianceStateFullControlBJ( sourcePlayer, otherPlayer, false ) + call SetPlayerAlliance( sourcePlayer, otherPlayer, ALLIANCE_PASSIVE, true ) + else + // Unrecognized alliance state - ignore the request. + endif +endfunction + +//=========================================================================== +// Set the alliance states for an entire force towards another force. +// +function SetForceAllianceStateBJ takes force sourceForce, force targetForce, integer allianceState returns nothing + local integer sourceIndex + local integer targetIndex + + set sourceIndex = 0 + loop + + if (sourceForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(sourceIndex), sourceForce)) then + set targetIndex = 0 + loop + if (targetForce==bj_FORCE_ALL_PLAYERS or IsPlayerInForce(Player(targetIndex), targetForce)) then + call SetPlayerAllianceStateBJ(Player(sourceIndex), Player(targetIndex), allianceState) + endif + + set targetIndex = targetIndex + 1 + exitwhen targetIndex == bj_MAX_PLAYER_SLOTS + endloop + endif + + set sourceIndex = sourceIndex + 1 + exitwhen sourceIndex == bj_MAX_PLAYER_SLOTS + endloop +endfunction + +//=========================================================================== +// Test to see if two players are co-allied (allied with each other). +// +function PlayersAreCoAllied takes player playerA, player playerB returns boolean + // Players are considered to be allied with themselves. + if (playerA == playerB) then + return true + endif + + // Co-allies are both allied with each other. + if GetPlayerAlliance(playerA, playerB, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(playerB, playerA, ALLIANCE_PASSIVE) then + return true + endif + endif + return false +endfunction + +//=========================================================================== +// Force (whichPlayer) AI player to share vision and advanced unit control +// with all AI players of its allies. +// +function ShareEverythingWithTeamAI takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Force (whichPlayer) to share vision and advanced unit control with all of his/her allies. +// +function ShareEverythingWithTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer) and whichPlayer != indexPlayer) then + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_VISION, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(indexPlayer, whichPlayer, ALLIANCE_SHARED_CONTROL, true) + call SetPlayerAlliance(whichPlayer, indexPlayer, ALLIANCE_SHARED_ADVANCED_CONTROL, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Creates a 'Neutral Victim' player slot. This slot is passive towards all +// other players, but all other players are aggressive towards him/her. +// +function ConfigureNeutralVictim takes nothing returns nothing + local integer index + local player indexPlayer + local player neutralVictim = Player(bj_PLAYER_NEUTRAL_VICTIM) + + set index = 0 + loop + set indexPlayer = Player(index) + + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, false) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Neutral Victim and Neutral Aggressive should not fight each other. + set indexPlayer = Player(PLAYER_NEUTRAL_AGGRESSIVE) + call SetPlayerAlliance(neutralVictim, indexPlayer, ALLIANCE_PASSIVE, true) + call SetPlayerAlliance(indexPlayer, neutralVictim, ALLIANCE_PASSIVE, true) + + // Neutral Victim does not give bounties. + call SetPlayerState(neutralVictim, PLAYER_STATE_GIVES_BOUNTY, 0) +endfunction + +//=========================================================================== +function MakeUnitsPassiveForPlayerEnum takes nothing returns nothing + call SetUnitOwner(GetEnumUnit(), Player(bj_PLAYER_NEUTRAL_VICTIM), false) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForPlayer takes player whichPlayer returns nothing + local group playerUnits = CreateGroup() + call CachePlayerHeroData(whichPlayer) + call GroupEnumUnitsOfPlayer(playerUnits, whichPlayer, null) + call ForGroup(playerUnits, function MakeUnitsPassiveForPlayerEnum) + call DestroyGroup(playerUnits) +endfunction + +//=========================================================================== +// Change ownership for every unit of (whichPlayer)'s team to neutral passive. +// +function MakeUnitsPassiveForTeam takes player whichPlayer returns nothing + local integer playerIndex + local player indexPlayer + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) then + call MakeUnitsPassiveForPlayer(indexPlayer) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine whether or not victory/defeat is disabled via cheat codes. +// +function AllowVictoryDefeat takes playergameresult gameResult returns boolean + if (gameResult == PLAYER_GAME_RESULT_VICTORY) then + return not IsNoVictoryCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_DEFEAT) then + return not IsNoDefeatCheat() + endif + if (gameResult == PLAYER_GAME_RESULT_NEUTRAL) then + return (not IsNoVictoryCheat()) and (not IsNoDefeatCheat()) + endif + return true +endfunction + +//=========================================================================== +function EndGameBJ takes nothing returns nothing + call EndGame( true ) +endfunction + +//=========================================================================== +function MeleeVictoryDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was victorious" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_VICTORIOUS" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_GAME" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_GAME") ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function MeleeDefeatDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string formatString + + // Display "player was defeated" or "player has left the game" message + if (leftGame) then + set formatString = GetLocalizedString( "PLAYER_LEFT_GAME" ) + else + set formatString = GetLocalizedString( "PLAYER_DEFEATED" ) + endif + + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, formatString) + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_DEFEAT_MSG" ) ) + + // Only show the continue button if the game is not over and observers on death are allowed + if (not bj_meleeGameOver and IsMapFlagSet(MAP_OBSERVERS_ON_DEATH)) then + call DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE_OBSERVING" ), GetLocalizedHotkey("GAMEOVER_CONTINUE_OBSERVING") ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_QUIT_GAME" ), GetLocalizedHotkey("GAMEOVER_QUIT_GAME") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function GameOverDialogBJ takes player whichPlayer, boolean leftGame returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + local string s + + // Display "player left the game" message + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_LEFT_GAME" )) + + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set s = GetLocalizedString( "GAMEOVER_DISCONNECTED" ) + else + set s = GetLocalizedString( "GAMEOVER_GAME_OVER" ) + endif + + call DialogSetMessage( d, s ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddQuitButton( d, true, GetLocalizedString( "GAMEOVER_OK" ), GetLocalizedHotkey("GAMEOVER_OK") ) ) + + call DialogDisplay( whichPlayer, d, true ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function RemovePlayerPreserveUnitsBJ takes player whichPlayer, playergameresult gameResult, boolean leftGame returns nothing + if AllowVictoryDefeat(gameResult) then + + call RemovePlayer(whichPlayer, gameResult) + + if( gameResult == PLAYER_GAME_RESULT_VICTORY ) then + call MeleeVictoryDialogBJ( whichPlayer, leftGame ) + return + elseif( gameResult == PLAYER_GAME_RESULT_DEFEAT ) then + call MeleeDefeatDialogBJ( whichPlayer, leftGame ) + else + call GameOverDialogBJ( whichPlayer, leftGame ) + endif + + endif +endfunction + +//=========================================================================== +function CustomVictoryOkBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif +endfunction + +//=========================================================================== +function CustomVictoryQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + call EndGame( bj_changeLevelShowScores ) +endfunction + +//=========================================================================== +function CustomVictoryDialogBJ takes player whichPlayer returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, GetLocalizedString( "GAMEOVER_VICTORY_MSG" ) ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_CONTINUE" ), GetLocalizedHotkey("GAMEOVER_CONTINUE") ) ) + call TriggerAddAction( t, function CustomVictoryOkBJ ) + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomVictoryQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_victoryDialogSound ) +endfunction + +//=========================================================================== +function CustomVictorySkipBJ takes player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + if bj_isSinglePlayer then + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + endif + + if (bj_changeLevelMapName == null) then + call EndGame( bj_changeLevelShowScores ) + else + call ChangeLevel( bj_changeLevelMapName, bj_changeLevelShowScores ) + endif + endif +endfunction + +//=========================================================================== +function CustomVictoryBJ takes player whichPlayer, boolean showDialog, boolean showScores returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_VICTORY ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_VICTORY ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_VICTORIOUS" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + set bj_changeLevelShowScores = showScores + if showDialog then + call CustomVictoryDialogBJ( whichPlayer ) + else + call CustomVictorySkipBJ( whichPlayer ) + endif + endif + endif +endfunction + +//=========================================================================== +function CustomDefeatRestartBJ takes nothing returns nothing + call PauseGame( false ) + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatReduceDifficultyBJ takes nothing returns nothing + local gamedifficulty diff = GetGameDifficulty() + + call PauseGame( false ) + + // Knock the difficulty down, if possible. + if (diff == MAP_DIFFICULTY_EASY) then + // Sorry, but it doesn't get any easier than this. + elseif (diff == MAP_DIFFICULTY_NORMAL) then + call SetGameDifficulty(MAP_DIFFICULTY_EASY) + elseif (diff == MAP_DIFFICULTY_HARD) then + call SetGameDifficulty(MAP_DIFFICULTY_NORMAL) + else + // Unrecognized difficulty + endif + + call RestartGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatLoadBJ takes nothing returns nothing + call PauseGame( false ) + call DisplayLoadDialog() +endfunction + +//=========================================================================== +function CustomDefeatQuitBJ takes nothing returns nothing + if bj_isSinglePlayer then + call PauseGame( false ) + endif + + // Bump the difficulty back up to the default. + call SetGameDifficulty(GetDefaultDifficulty()) + call EndGame( true ) +endfunction + +//=========================================================================== +function CustomDefeatDialogBJ takes player whichPlayer, string message returns nothing + local trigger t = CreateTrigger() + local dialog d = DialogCreate() + + call DialogSetMessage( d, message ) + + if bj_isSinglePlayer then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_RESTART" ), GetLocalizedHotkey("GAMEOVER_RESTART") ) ) + call TriggerAddAction( t, function CustomDefeatRestartBJ ) + + if (GetGameDifficulty() != MAP_DIFFICULTY_EASY) then + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_REDUCE_DIFFICULTY" ), GetLocalizedHotkey("GAMEOVER_REDUCE_DIFFICULTY") ) ) + call TriggerAddAction( t, function CustomDefeatReduceDifficultyBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_LOAD" ), GetLocalizedHotkey("GAMEOVER_LOAD") ) ) + call TriggerAddAction( t, function CustomDefeatLoadBJ ) + endif + + set t = CreateTrigger() + call TriggerRegisterDialogButtonEvent( t, DialogAddButton( d, GetLocalizedString( "GAMEOVER_QUIT_MISSION" ), GetLocalizedHotkey("GAMEOVER_QUIT_MISSION") ) ) + call TriggerAddAction( t, function CustomDefeatQuitBJ ) + + if (GetLocalPlayer() == whichPlayer) then + call EnableUserControl( true ) + if bj_isSinglePlayer then + call PauseGame( true ) + endif + call EnableUserUI(false) + endif + + call DialogDisplay( whichPlayer, d, true ) + call VolumeGroupSetVolumeForPlayerBJ( whichPlayer, SOUND_VOLUMEGROUP_UI, 1.0 ) + call StartSoundForPlayerBJ( whichPlayer, bj_defeatDialogSound ) +endfunction + +//=========================================================================== +function CustomDefeatBJ takes player whichPlayer, string message returns nothing + if AllowVictoryDefeat( PLAYER_GAME_RESULT_DEFEAT ) then + call RemovePlayer( whichPlayer, PLAYER_GAME_RESULT_DEFEAT ) + + if not bj_isSinglePlayer then + call DisplayTimedTextFromPlayer(whichPlayer, 0, 0, 60, GetLocalizedString( "PLAYER_DEFEATED" ) ) + endif + + // UI only needs to be displayed to users. + if (GetPlayerController(whichPlayer) == MAP_CONTROL_USER) then + call CustomDefeatDialogBJ( whichPlayer, message ) + endif + endif +endfunction + +//=========================================================================== +function SetNextLevelBJ takes string nextLevel returns nothing + if (nextLevel == "") then + set bj_changeLevelMapName = null + else + set bj_changeLevelMapName = nextLevel + endif +endfunction + +//=========================================================================== +function SetPlayerOnScoreScreenBJ takes boolean flag, player whichPlayer returns nothing + call SetPlayerOnScoreScreen(whichPlayer, flag) +endfunction + + + +//*************************************************************************** +//* +//* Quest Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateQuestBJ takes integer questType, string title, string description, string iconPath returns quest + local boolean required = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_REQ_UNDISCOVERED) + local boolean discovered = (questType == bj_QUESTTYPE_REQ_DISCOVERED) or (questType == bj_QUESTTYPE_OPT_DISCOVERED) + + set bj_lastCreatedQuest = CreateQuest() + call QuestSetTitle(bj_lastCreatedQuest, title) + call QuestSetDescription(bj_lastCreatedQuest, description) + call QuestSetIconPath(bj_lastCreatedQuest, iconPath) + call QuestSetRequired(bj_lastCreatedQuest, required) + call QuestSetDiscovered(bj_lastCreatedQuest, discovered) + call QuestSetCompleted(bj_lastCreatedQuest, false) + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function DestroyQuestBJ takes quest whichQuest returns nothing + call DestroyQuest(whichQuest) +endfunction + +//=========================================================================== +function QuestSetEnabledBJ takes boolean enabled, quest whichQuest returns nothing + call QuestSetEnabled(whichQuest, enabled) +endfunction + +//=========================================================================== +function QuestSetTitleBJ takes quest whichQuest, string title returns nothing + call QuestSetTitle(whichQuest, title) +endfunction + +//=========================================================================== +function QuestSetDescriptionBJ takes quest whichQuest, string description returns nothing + call QuestSetDescription(whichQuest, description) +endfunction + +//=========================================================================== +function QuestSetCompletedBJ takes quest whichQuest, boolean completed returns nothing + call QuestSetCompleted(whichQuest, completed) +endfunction + +//=========================================================================== +function QuestSetFailedBJ takes quest whichQuest, boolean failed returns nothing + call QuestSetFailed(whichQuest, failed) +endfunction + +//=========================================================================== +function QuestSetDiscoveredBJ takes quest whichQuest, boolean discovered returns nothing + call QuestSetDiscovered(whichQuest, discovered) +endfunction + +//=========================================================================== +function GetLastCreatedQuestBJ takes nothing returns quest + return bj_lastCreatedQuest +endfunction + +//=========================================================================== +function CreateQuestItemBJ takes quest whichQuest, string description returns questitem + set bj_lastCreatedQuestItem = QuestCreateItem(whichQuest) + call QuestItemSetDescription(bj_lastCreatedQuestItem, description) + call QuestItemSetCompleted(bj_lastCreatedQuestItem, false) + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function QuestItemSetDescriptionBJ takes questitem whichQuestItem, string description returns nothing + call QuestItemSetDescription(whichQuestItem, description) +endfunction + +//=========================================================================== +function QuestItemSetCompletedBJ takes questitem whichQuestItem, boolean completed returns nothing + call QuestItemSetCompleted(whichQuestItem, completed) +endfunction + +//=========================================================================== +function GetLastCreatedQuestItemBJ takes nothing returns questitem + return bj_lastCreatedQuestItem +endfunction + +//=========================================================================== +function CreateDefeatConditionBJ takes string description returns defeatcondition + set bj_lastCreatedDefeatCondition = CreateDefeatCondition() + call DefeatConditionSetDescription(bj_lastCreatedDefeatCondition, description) + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function DestroyDefeatConditionBJ takes defeatcondition whichCondition returns nothing + call DestroyDefeatCondition(whichCondition) +endfunction + +//=========================================================================== +function DefeatConditionSetDescriptionBJ takes defeatcondition whichCondition, string description returns nothing + call DefeatConditionSetDescription(whichCondition, description) +endfunction + +//=========================================================================== +function GetLastCreatedDefeatConditionBJ takes nothing returns defeatcondition + return bj_lastCreatedDefeatCondition +endfunction + +//=========================================================================== +function FlashQuestDialogButtonBJ takes nothing returns nothing + call FlashQuestDialogButton() +endfunction + +//=========================================================================== +function QuestMessageBJ takes force f, integer messageType, string message returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (messageType == bj_QUESTMESSAGE_DISCOVERED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUEST, message) + call StartSound(bj_questDiscoveredSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_UPDATED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTUPDATE, message) + call StartSound(bj_questUpdatedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_COMPLETED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTDONE, message) + call StartSound(bj_questCompletedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_FAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTFAILED, message) + call StartSound(bj_questFailedSound) + call FlashQuestDialogButton() + + elseif (messageType == bj_QUESTMESSAGE_REQUIREMENT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_QUESTREQUIREMENT, message) + + elseif (messageType == bj_QUESTMESSAGE_MISSIONFAILED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_MISSIONFAILED, message) + call StartSound(bj_questFailedSound) + + elseif (messageType == bj_QUESTMESSAGE_HINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_HINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ALWAYSHINT) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ALWAYSHINT, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_SECRET) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_SECRET, message) + call StartSound(bj_questSecretSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITACQUIRED, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_UNITAVAILABLE) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_UNITAVAILABLE, message) + call StartSound(bj_questHintSound) + + elseif (messageType == bj_QUESTMESSAGE_ITEMACQUIRED) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_ITEMACQUIRED, message) + call StartSound(bj_questItemAcquiredSound) + + elseif (messageType == bj_QUESTMESSAGE_WARNING) then + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, " ") + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_TEXT_DELAY_WARNING, message) + call StartSound(bj_questWarningSound) + + else + // Unrecognized message type - ignore the request. + endif + endif +endfunction + + + +//*************************************************************************** +//* +//* Timer Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function StartTimerBJ takes timer t, boolean periodic, real timeout returns timer + set bj_lastStartedTimer = t + call TimerStart(t, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerBJ takes boolean periodic, real timeout returns timer + set bj_lastStartedTimer = CreateTimer() + call TimerStart(bj_lastStartedTimer, timeout, periodic, null) + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function DestroyTimerBJ takes timer whichTimer returns nothing + call DestroyTimer(whichTimer) +endfunction + +//=========================================================================== +function PauseTimerBJ takes boolean pause, timer whichTimer returns nothing + if pause then + call PauseTimer(whichTimer) + else + call ResumeTimer(whichTimer) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTimerBJ takes nothing returns timer + return bj_lastStartedTimer +endfunction + +//=========================================================================== +function CreateTimerDialogBJ takes timer t, string title returns timerdialog + set bj_lastCreatedTimerDialog = CreateTimerDialog(t) + call TimerDialogSetTitle(bj_lastCreatedTimerDialog, title) + call TimerDialogDisplay(bj_lastCreatedTimerDialog, true) + return bj_lastCreatedTimerDialog +endfunction + +//=========================================================================== +function DestroyTimerDialogBJ takes timerdialog td returns nothing + call DestroyTimerDialog(td) +endfunction + +//=========================================================================== +function TimerDialogSetTitleBJ takes timerdialog td, string title returns nothing + call TimerDialogSetTitle(td, title) +endfunction + +//=========================================================================== +function TimerDialogSetTitleColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTitleColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetTimeColorBJ takes timerdialog td, real red, real green, real blue, real transparency returns nothing + call TimerDialogSetTimeColor(td, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function TimerDialogSetSpeedBJ takes timerdialog td, real speedMultFactor returns nothing + call TimerDialogSetSpeed(td, speedMultFactor) +endfunction + +//=========================================================================== +function TimerDialogDisplayForPlayerBJ takes boolean show, timerdialog td, player whichPlayer returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call TimerDialogDisplay(td, show) + endif +endfunction + +//=========================================================================== +function TimerDialogDisplayBJ takes boolean show, timerdialog td returns nothing + call TimerDialogDisplay(td, show) +endfunction + +//=========================================================================== +function GetLastCreatedTimerDialogBJ takes nothing returns timerdialog + return bj_lastCreatedTimerDialog +endfunction + + + +//*************************************************************************** +//* +//* Leaderboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function LeaderboardResizeBJ takes leaderboard lb returns nothing + local integer size = LeaderboardGetItemCount(lb) + + if (LeaderboardGetLabelText(lb) == "") then + set size = size - 1 + endif + call LeaderboardSetSizeByItemCount(lb, size) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueBJ takes player whichPlayer, leaderboard lb, integer val returns nothing + call LeaderboardSetItemValue(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelBJ takes player whichPlayer, leaderboard lb, string val returns nothing + call LeaderboardSetItemLabel(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), val) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemStyleBJ takes player whichPlayer, leaderboard lb, boolean showLabel, boolean showValue, boolean showIcon returns nothing + call LeaderboardSetItemStyle(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), showLabel, showValue, showIcon) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemLabelColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemLabelColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetPlayerItemValueColorBJ takes player whichPlayer, leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetItemValueColor(lb, LeaderboardGetPlayerIndex(lb, whichPlayer), PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetLabelColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetValueColorBJ takes leaderboard lb, real red, real green, real blue, real transparency returns nothing + call LeaderboardSetValueColor(lb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function LeaderboardSetLabelBJ takes leaderboard lb, string label returns nothing + call LeaderboardSetLabel(lb, label) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSetStyleBJ takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + call LeaderboardSetStyle(lb, showLabel, showNames, showValues, showIcons) +endfunction + +//=========================================================================== +function LeaderboardGetItemCountBJ takes leaderboard lb returns integer + return LeaderboardGetItemCount(lb) +endfunction + +//=========================================================================== +function LeaderboardHasPlayerItemBJ takes leaderboard lb, player whichPlayer returns boolean + return LeaderboardHasPlayerItem(lb, whichPlayer) +endfunction + +//=========================================================================== +function ForceSetLeaderboardBJ takes leaderboard lb, force toForce returns nothing + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if IsPlayerInForce(indexPlayer, toForce) then + call PlayerSetLeaderboard(indexPlayer, lb) + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function CreateLeaderboardBJ takes force toForce, string label returns leaderboard + set bj_lastCreatedLeaderboard = CreateLeaderboard() + call LeaderboardSetLabel(bj_lastCreatedLeaderboard, label) + call ForceSetLeaderboardBJ(bj_lastCreatedLeaderboard, toForce) + call LeaderboardDisplay(bj_lastCreatedLeaderboard, true) + return bj_lastCreatedLeaderboard +endfunction + +//=========================================================================== +function DestroyLeaderboardBJ takes leaderboard lb returns nothing + call DestroyLeaderboard(lb) +endfunction + +//=========================================================================== +function LeaderboardDisplayBJ takes boolean show, leaderboard lb returns nothing + call LeaderboardDisplay(lb, show) +endfunction + +//=========================================================================== +function LeaderboardAddItemBJ takes player whichPlayer, leaderboard lb, string label, integer value returns nothing + if (LeaderboardHasPlayerItem(lb, whichPlayer)) then + call LeaderboardRemovePlayerItem(lb, whichPlayer) + endif + call LeaderboardAddItem(lb, label, value, whichPlayer) + call LeaderboardResizeBJ(lb) + //call LeaderboardSetSizeByItemCount(lb, LeaderboardGetItemCount(lb)) +endfunction + +//=========================================================================== +function LeaderboardRemovePlayerItemBJ takes player whichPlayer, leaderboard lb returns nothing + call LeaderboardRemovePlayerItem(lb, whichPlayer) + call LeaderboardResizeBJ(lb) +endfunction + +//=========================================================================== +function LeaderboardSortItemsBJ takes leaderboard lb, integer sortType, boolean ascending returns nothing + if (sortType == bj_SORTTYPE_SORTBYVALUE) then + call LeaderboardSortItemsByValue(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYPLAYER) then + call LeaderboardSortItemsByPlayer(lb, ascending) + elseif (sortType == bj_SORTTYPE_SORTBYLABEL) then + call LeaderboardSortItemsByLabel(lb, ascending) + else + // Unrecognized sort type - ignore the request. + endif +endfunction + +//=========================================================================== +function LeaderboardSortItemsByPlayerBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByPlayer(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardSortItemsByLabelBJ takes leaderboard lb, boolean ascending returns nothing + call LeaderboardSortItemsByLabel(lb, ascending) +endfunction + +//=========================================================================== +function LeaderboardGetPlayerIndexBJ takes player whichPlayer, leaderboard lb returns integer + return LeaderboardGetPlayerIndex(lb, whichPlayer) + 1 +endfunction + +//=========================================================================== +// Returns the player who is occupying a specified position in a leaderboard. +// The position parameter is expected in the range of 1..16. +// +function LeaderboardGetIndexedPlayerBJ takes integer position, leaderboard lb returns player + local integer index + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + if (LeaderboardGetPlayerIndex(lb, indexPlayer) == position - 1) then + return indexPlayer + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + return Player(PLAYER_NEUTRAL_PASSIVE) +endfunction + +//=========================================================================== +function PlayerGetLeaderboardBJ takes player whichPlayer returns leaderboard + return PlayerGetLeaderboard(whichPlayer) +endfunction + +//=========================================================================== +function GetLastCreatedLeaderboard takes nothing returns leaderboard + return bj_lastCreatedLeaderboard +endfunction + +//*************************************************************************** +//* +//* Multiboard Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function CreateMultiboardBJ takes integer cols, integer rows, string title returns multiboard + set bj_lastCreatedMultiboard = CreateMultiboard() + call MultiboardSetRowCount(bj_lastCreatedMultiboard, rows) + call MultiboardSetColumnCount(bj_lastCreatedMultiboard, cols) + call MultiboardSetTitleText(bj_lastCreatedMultiboard, title) + call MultiboardDisplay(bj_lastCreatedMultiboard, true) + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function DestroyMultiboardBJ takes multiboard mb returns nothing + call DestroyMultiboard(mb) +endfunction + +//=========================================================================== +function GetLastCreatedMultiboard takes nothing returns multiboard + return bj_lastCreatedMultiboard +endfunction + +//=========================================================================== +function MultiboardDisplayBJ takes boolean show, multiboard mb returns nothing + call MultiboardDisplay(mb, show) +endfunction + +//=========================================================================== +function MultiboardMinimizeBJ takes boolean minimize, multiboard mb returns nothing + call MultiboardMinimize(mb, minimize) +endfunction + +//=========================================================================== +function MultiboardSetTitleTextColorBJ takes multiboard mb, real red, real green, real blue, real transparency returns nothing + call MultiboardSetTitleTextColor(mb, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function MultiboardAllowDisplayBJ takes boolean flag returns nothing + call MultiboardSuppressDisplay(not flag) +endfunction + +//=========================================================================== +function MultiboardSetItemStyleBJ takes multiboard mb, integer col, integer row, boolean showValue, boolean showIcon returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemStyle(mbitem, showValue, showIcon) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemValueBJ takes multiboard mb, integer col, integer row, string val returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValue(mbitem, val) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemColorBJ takes multiboard mb, integer col, integer row, real red, real green, real blue, real transparency returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemValueColor(mbitem, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemWidthBJ takes multiboard mb, integer col, integer row, real width returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemWidth(mbitem, width/100.0) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + +//=========================================================================== +function MultiboardSetItemIconBJ takes multiboard mb, integer col, integer row, string iconFileName returns nothing + local integer curRow = 0 + local integer curCol = 0 + local integer numRows = MultiboardGetRowCount(mb) + local integer numCols = MultiboardGetColumnCount(mb) + local multiboarditem mbitem = null + + // Loop over rows, using 1-based index + loop + set curRow = curRow + 1 + exitwhen curRow > numRows + + // Apply setting to the requested row, or all rows (if row is 0) + if (row == 0 or row == curRow) then + // Loop over columns, using 1-based index + set curCol = 0 + loop + set curCol = curCol + 1 + exitwhen curCol > numCols + + // Apply setting to the requested column, or all columns (if col is 0) + if (col == 0 or col == curCol) then + set mbitem = MultiboardGetItem(mb, curRow - 1, curCol - 1) + call MultiboardSetItemIcon(mbitem, iconFileName) + call MultiboardReleaseItem(mbitem) + endif + endloop + endif + endloop +endfunction + + + +//*************************************************************************** +//* +//* Text Tag Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Scale the font size linearly such that size 10 equates to height 0.023. +// Screen-relative font heights are harder to grasp and than font sizes. +// +function TextTagSize2Height takes real size returns real + return size * 0.023 / 10 +endfunction + +//=========================================================================== +// Scale the speed linearly such that speed 128 equates to 0.071. +// Screen-relative speeds are hard to grasp. +// +function TextTagSpeed2Velocity takes real speed returns real + return speed * 0.071 / 128 +endfunction + +//=========================================================================== +function SetTextTagColorBJ takes texttag tt, real red, real green, real blue, real transparency returns nothing + call SetTextTagColor(tt, PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100.0-transparency)) +endfunction + +//=========================================================================== +function SetTextTagVelocityBJ takes texttag tt, real speed, real angle returns nothing + local real vel = TextTagSpeed2Velocity(speed) + local real xvel = vel * Cos(angle * bj_DEGTORAD) + local real yvel = vel * Sin(angle * bj_DEGTORAD) + + call SetTextTagVelocity(tt, xvel, yvel) +endfunction + +//=========================================================================== +function SetTextTagTextBJ takes texttag tt, string s, real size returns nothing + local real textHeight = TextTagSize2Height(size) + + call SetTextTagText(tt, s, textHeight) +endfunction + +//=========================================================================== +function SetTextTagPosBJ takes texttag tt, location loc, real zOffset returns nothing + call SetTextTagPos(tt, GetLocationX(loc), GetLocationY(loc), zOffset) +endfunction + +//=========================================================================== +function SetTextTagPosUnitBJ takes texttag tt, unit whichUnit, real zOffset returns nothing + call SetTextTagPosUnit(tt, whichUnit, zOffset) +endfunction + +//=========================================================================== +function SetTextTagSuspendedBJ takes texttag tt, boolean flag returns nothing + call SetTextTagSuspended(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagPermanentBJ takes texttag tt, boolean flag returns nothing + call SetTextTagPermanent(tt, flag) +endfunction + +//=========================================================================== +function SetTextTagAgeBJ takes texttag tt, real age returns nothing + call SetTextTagAge(tt, age) +endfunction + +//=========================================================================== +function SetTextTagLifespanBJ takes texttag tt, real lifespan returns nothing + call SetTextTagLifespan(tt, lifespan) +endfunction + +//=========================================================================== +function SetTextTagFadepointBJ takes texttag tt, real fadepoint returns nothing + call SetTextTagFadepoint(tt, fadepoint) +endfunction + +//=========================================================================== +function CreateTextTagLocBJ takes string s, location loc, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosBJ(bj_lastCreatedTextTag, loc, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function CreateTextTagUnitBJ takes string s, unit whichUnit, real zOffset, real size, real red, real green, real blue, real transparency returns texttag + set bj_lastCreatedTextTag = CreateTextTag() + call SetTextTagTextBJ(bj_lastCreatedTextTag, s, size) + call SetTextTagPosUnitBJ(bj_lastCreatedTextTag, whichUnit, zOffset) + call SetTextTagColorBJ(bj_lastCreatedTextTag, red, green, blue, transparency) + + return bj_lastCreatedTextTag +endfunction + +//=========================================================================== +function DestroyTextTagBJ takes texttag tt returns nothing + call DestroyTextTag(tt) +endfunction + +//=========================================================================== +function ShowTextTagForceBJ takes boolean show, texttag tt, force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call SetTextTagVisibility(tt, show) + endif +endfunction + +//=========================================================================== +function GetLastCreatedTextTag takes nothing returns texttag + return bj_lastCreatedTextTag +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function PauseGameOn takes nothing returns nothing + call PauseGame(true) +endfunction + +//=========================================================================== +function PauseGameOff takes nothing returns nothing + call PauseGame(false) +endfunction + +//=========================================================================== +function SetUserControlForceOn takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(true) + endif +endfunction + +//=========================================================================== +function SetUserControlForceOff takes force whichForce returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableUserControl(false) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOn takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, fadeDuration) + endif +endfunction + +//=========================================================================== +function ShowInterfaceForceOff takes force whichForce, real fadeDuration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(false, fadeDuration) + endif +endfunction + +//=========================================================================== +function PingMinimapForForce takes force whichForce, real x, real y, real duration returns nothing + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForce takes force whichForce, location loc, real duration returns nothing + call PingMinimapForForce(whichForce, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForPlayer takes player whichPlayer, real x, real y, real duration returns nothing + if (GetLocalPlayer() == whichPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call PingMinimap(x, y, duration) + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForPlayer takes player whichPlayer, location loc, real duration returns nothing + call PingMinimapForPlayer(whichPlayer, GetLocationX(loc), GetLocationY(loc), duration) +endfunction + +//=========================================================================== +function PingMinimapForForceEx takes force whichForce, real x, real y, real duration, integer style, real red, real green, real blue returns nothing + local integer red255 = PercentTo255(red) + local integer green255 = PercentTo255(green) + local integer blue255 = PercentTo255(blue) + + if (IsPlayerInForce(GetLocalPlayer(), whichForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Prevent 100% red simple and flashy pings, as they become "attack" pings. + if (red255 == 255) and (green255 == 0) and (blue255 == 0) then + set red255 = 254 + endif + + if (style == bj_MINIMAPPINGSTYLE_SIMPLE) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, false) + elseif (style == bj_MINIMAPPINGSTYLE_FLASHY) then + call PingMinimapEx(x, y, duration, red255, green255, blue255, true) + elseif (style == bj_MINIMAPPINGSTYLE_ATTACK) then + call PingMinimapEx(x, y, duration, 255, 0, 0, false) + else + // Unrecognized ping style - ignore the request. + endif + + //call StartSound(bj_pingMinimapSound) + endif +endfunction + +//=========================================================================== +function PingMinimapLocForForceEx takes force whichForce, location loc, real duration, integer style, real red, real green, real blue returns nothing + call PingMinimapForForceEx(whichForce, GetLocationX(loc), GetLocationY(loc), duration, style, red, green, blue) +endfunction + +//=========================================================================== +function EnableWorldFogBoundaryBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableWorldFogBoundary(enable) + endif +endfunction + +//=========================================================================== +function EnableOcclusionBJ takes boolean enable, force f returns nothing + if (IsPlayerInForce(GetLocalPlayer(), f)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call EnableOcclusion(enable) + endif +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Transmission Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// If cancelled, stop the sound and end the cinematic scene. +// +function CancelCineSceneBJ takes nothing returns nothing + call StopSoundBJ(bj_cineSceneLastSound, true) + call EndCinematicScene() +endfunction + +//=========================================================================== +// Init a trigger to listen for END_CINEMATIC events and respond to them if +// a cinematic scene is in progress. For performance reasons, this should +// only be called once a cinematic scene has been started, so that maps +// lacking such scenes do not bother to register for these events. +// +function TryInitCinematicBehaviorBJ takes nothing returns nothing + local integer index + + if (bj_cineSceneBeingSkipped == null) then + set bj_cineSceneBeingSkipped = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerEvent(bj_cineSceneBeingSkipped, Player(index), EVENT_PLAYER_END_CINEMATIC) + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + call TriggerAddAction(bj_cineSceneBeingSkipped, function CancelCineSceneBJ) + endif +endfunction + +//=========================================================================== +function SetCinematicSceneBJ takes sound soundHandle, integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing + set bj_cineSceneLastSound = soundHandle + call PlaySoundBJ(soundHandle) + call SetCinematicScene(portraitUnitId, color, speakerTitle, text, sceneDuration, voiceoverDuration) +endfunction + +//=========================================================================== +function GetTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns real + local real duration + + if (timeType == bj_TIMETYPE_ADD) then + set duration = GetSoundDurationBJ(soundHandle) + timeVal + elseif (timeType == bj_TIMETYPE_SET) then + set duration = timeVal + elseif (timeType == bj_TIMETYPE_SUB) then + set duration = GetSoundDurationBJ(soundHandle) - timeVal + else + // Unrecognized timeType - ignore timeVal. + set duration = GetSoundDurationBJ(soundHandle) + endif + + // Make sure we have a non-negative duration. + if (duration < 0) then + set duration = 0 + endif + return duration +endfunction + +//=========================================================================== +function WaitTransmissionDuration takes sound soundHandle, integer timeType, real timeVal returns nothing + if (timeType == bj_TIMETYPE_SET) then + // If we have a static duration wait, just perform the wait. + call TriggerSleepAction(timeVal) + + elseif (soundHandle == null) then + // If the sound does not exist, perform a default length wait. + call TriggerSleepAction(bj_NOTHING_SOUND_DURATION) + + elseif (timeType == bj_TIMETYPE_SUB) then + // If the transmission is cutting off the sound, wait for the sound + // to be mostly finished. + call WaitForSoundBJ(soundHandle, timeVal) + + elseif (timeType == bj_TIMETYPE_ADD) then + // If the transmission is extending beyond the sound's length, wait + // for it to finish, and then wait the additional time. + call WaitForSoundBJ(soundHandle, 0) + call TriggerSleepAction(timeVal) + + else + // Unrecognized timeType - ignore. + endif +endfunction + +//=========================================================================== +function DoTransmissionBasicsXYBJ takes integer unitId, playercolor color, real x, real y, sound soundHandle, string unitName, string message, real duration returns nothing + call SetCinematicSceneBJ(soundHandle, unitId, color, unitName, message, duration + bj_TRANSMISSION_PORT_HANGTIME, duration) + + if (unitId != 0) then + call PingMinimap(x, y, bj_TRANSMISSION_PING_TIME) + //call SetCameraQuickPosition(x, y) + endif +endfunction + +//=========================================================================== +// Display a text message to a Player Group with an accompanying sound, +// portrait, speech indicator, and all that good stuff. +// - Query duration of sound +// - Play sound +// - Display text message for duration +// - Display animating portrait for duration +// - Display a speech indicator for the unit +// - Ping the minimap +// +function TransmissionFromUnitWithNameBJ takes force toForce, unit whichUnit, string unitName, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + if (whichUnit == null) then + // If the unit reference is invalid, send the transmission from the center of the map with no portrait. + call DoTransmissionBasicsXYBJ(0, PLAYER_COLOR_RED, 0, 0, soundHandle, unitName, message, bj_lastTransmissionDuration) + else + call DoTransmissionBasicsXYBJ(GetUnitTypeId(whichUnit), GetPlayerColor(GetOwningPlayer(whichUnit)), GetUnitX(whichUnit), GetUnitY(whichUnit), soundHandle, unitName, message, bj_lastTransmissionDuration) + if (not IsUnitHidden(whichUnit)) then + call UnitAddIndicator(whichUnit, bj_TRANSMISSION_IND_RED, bj_TRANSMISSION_IND_BLUE, bj_TRANSMISSION_IND_GREEN, bj_TRANSMISSION_IND_ALPHA) + endif + endif + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +// This operates like TransmissionFromUnitWithNameBJ, but for a unit type +// rather than a unit instance. As such, no speech indicator is employed. +// +function TransmissionFromUnitTypeWithNameBJ takes force toForce, player fromPlayer, integer unitId, string unitName, location loc, sound soundHandle, string message, integer timeType, real timeVal, boolean wait returns nothing + call TryInitCinematicBehaviorBJ() + + // Ensure that the time value is non-negative. + set timeVal = RMaxBJ(timeVal, 0) + + set bj_lastTransmissionDuration = GetTransmissionDuration(soundHandle, timeType, timeVal) + set bj_lastPlayedSound = soundHandle + + if (IsPlayerInForce(GetLocalPlayer(), toForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + call DoTransmissionBasicsXYBJ(unitId, GetPlayerColor(fromPlayer), GetLocationX(loc), GetLocationY(loc), soundHandle, unitName, message, bj_lastTransmissionDuration) + endif + + if wait and (bj_lastTransmissionDuration > 0) then + // call TriggerSleepAction(bj_lastTransmissionDuration) + call WaitTransmissionDuration(soundHandle, timeType, timeVal) + endif + +endfunction + +//=========================================================================== +function GetLastTransmissionDurationBJ takes nothing returns real + return bj_lastTransmissionDuration +endfunction + +//=========================================================================== +function ForceCinematicSubtitlesBJ takes boolean flag returns nothing + call ForceCinematicSubtitles(flag) +endfunction + + +//*************************************************************************** +//* +//* Cinematic Mode Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Makes many common UI settings changes at once, for use when beginning and +// ending cinematic sequences. Note that some affects apply to all players, +// such as game speed. This is unavoidable. +// - Clear the screen of text messages +// - Hide interface UI (letterbox mode) +// - Hide game messages (ally under attack, etc.) +// - Disable user control +// - Disable occlusion +// - Set game speed (for all players) +// - Lock game speed (for all players) +// - Disable black mask (for all players) +// - Disable fog of war (for all players) +// - Disable world boundary fog (for all players) +// - Dim non-speech sound channels +// - End any outstanding music themes +// - Fix the random seed to a set value +// - Reset the camera smoothing factor +// +function CinematicModeExBJ takes boolean cineMode, force forForce, real interfaceFadeTime returns nothing + // If the game hasn't started yet, perform interface fades immediately + if (not bj_gameStarted) then + set interfaceFadeTime = 0 + endif + + if (cineMode) then + // Save the UI state so that we can restore it later. + if (not bj_cineModeAlreadyIn) then + set bj_cineModeAlreadyIn = true + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + set bj_cineModePriorDawnDusk = IsDawnDuskEnabled() + set bj_cineModeSavedSeed = GetRandomInt(0, 1000000) + endif + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ClearTextMessages() + call ShowInterface(false, interfaceFadeTime) + call EnableUserControl(false) + call EnableOcclusion(false) + call SetCineModeVolumeGroupsBJ() + endif + + // Perform global changes + call SetGameSpeed(bj_CINEMODE_GAMESPEED) + call SetMapFlag(MAP_LOCK_SPEED, true) + call FogMaskEnable(false) + call FogEnable(false) + call EnableWorldFogBoundary(false) + call EnableDawnDusk(false) + + // Use a fixed random seed, so that cinematics play consistently. + call SetRandomSeed(0) + else + set bj_cineModeAlreadyIn = false + + // Perform local changes + if (IsPlayerInForce(GetLocalPlayer(), forForce)) then + // Use only local code (no net traffic) within this block to avoid desyncs. + call ShowInterface(true, interfaceFadeTime) + call EnableUserControl(true) + call EnableOcclusion(true) + call VolumeGroupReset() + call EndThematicMusic() + call CameraResetSmoothingFactorBJ() + endif + + // Perform global changes + call SetMapFlag(MAP_LOCK_SPEED, false) + call SetGameSpeed(bj_cineModePriorSpeed) + call FogMaskEnable(bj_cineModePriorMaskSetting) + call FogEnable(bj_cineModePriorFogSetting) + call EnableWorldFogBoundary(true) + call EnableDawnDusk(bj_cineModePriorDawnDusk) + call SetRandomSeed(bj_cineModeSavedSeed) + endif +endfunction + +//=========================================================================== +function CinematicModeBJ takes boolean cineMode, force forForce returns nothing + call CinematicModeExBJ(cineMode, forForce, bj_CINEMODE_INTERFACEFADE) +endfunction + + + +//*************************************************************************** +//* +//* Cinematic Filter Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function DisplayCineFilterBJ takes boolean flag returns nothing + call DisplayCineFilter(flag) +endfunction + +//=========================================================================== +function CinematicFadeCommonBJ takes real red, real green, real blue, real duration, string tex, real startTrans, real endTrans returns nothing + if (duration == 0) then + // If the fade is instant, use the same starting and ending values, + // so that we effectively do a set rather than a fade. + set startTrans = endTrans + endif + call EnableUserUI(false) + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(BLEND_MODE_BLEND) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-startTrans)) + call SetCineFilterEndColor(PercentTo255(red), PercentTo255(green), PercentTo255(blue), PercentTo255(100-endTrans)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeFinishTimer) + set bj_cineFadeFinishTimer = null + call DisplayCineFilter(false) + call EnableUserUI(true) +endfunction + +//=========================================================================== +function FinishCinematicFadeAfterBJ takes real duration returns nothing + // Create a timer to end the cinematic fade. + set bj_cineFadeFinishTimer = CreateTimer() + call TimerStart(bj_cineFadeFinishTimer, duration, false, function FinishCinematicFadeBJ) +endfunction + +//=========================================================================== +function ContinueCinematicFadeBJ takes nothing returns nothing + call DestroyTimer(bj_cineFadeContinueTimer) + set bj_cineFadeContinueTimer = null + call CinematicFadeCommonBJ(bj_cineFadeContinueRed, bj_cineFadeContinueGreen, bj_cineFadeContinueBlue, bj_cineFadeContinueDuration, bj_cineFadeContinueTex, bj_cineFadeContinueTrans, 100) +endfunction + +//=========================================================================== +function ContinueCinematicFadeAfterBJ takes real duration, real red, real green, real blue, real trans, string tex returns nothing + set bj_cineFadeContinueRed = red + set bj_cineFadeContinueGreen = green + set bj_cineFadeContinueBlue = blue + set bj_cineFadeContinueTrans = trans + set bj_cineFadeContinueDuration = duration + set bj_cineFadeContinueTex = tex + + // Create a timer to continue the cinematic fade. + set bj_cineFadeContinueTimer = CreateTimer() + call TimerStart(bj_cineFadeContinueTimer, duration, false, function ContinueCinematicFadeBJ) +endfunction + +//=========================================================================== +function AbortCinematicFadeBJ takes nothing returns nothing + if (bj_cineFadeContinueTimer != null) then + call DestroyTimer(bj_cineFadeContinueTimer) + endif + + if (bj_cineFadeFinishTimer != null) then + call DestroyTimer(bj_cineFadeFinishTimer) + endif +endfunction + +//=========================================================================== +function CinematicFadeBJ takes integer fadetype, real duration, string tex, real red, real green, real blue, real trans returns nothing + if (fadetype == bj_CINEFADETYPE_FADEOUT) then + // Fade out to the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, 100, trans) + elseif (fadetype == bj_CINEFADETYPE_FADEIN) then + // Fade in from the requested color. + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration, tex, trans, 100) + call FinishCinematicFadeAfterBJ(duration) + elseif (fadetype == bj_CINEFADETYPE_FADEOUTIN) then + // Fade out to the requested color, and then fade back in from it. + if (duration > 0) then + call AbortCinematicFadeBJ() + call CinematicFadeCommonBJ(red, green, blue, duration * 0.5, tex, 100, trans) + call ContinueCinematicFadeAfterBJ(duration * 0.5, red, green, blue, trans, tex) + call FinishCinematicFadeAfterBJ(duration) + endif + else + // Unrecognized fadetype - ignore the request. + endif +endfunction + +//=========================================================================== +function CinematicFilterGenericBJ takes real duration, blendmode bmode, string tex, real red0, real green0, real blue0, real trans0, real red1, real green1, real blue1, real trans1 returns nothing + call AbortCinematicFadeBJ() + call SetCineFilterTexture(tex) + call SetCineFilterBlendMode(bmode) + call SetCineFilterTexMapFlags(TEXMAP_FLAG_NONE) + call SetCineFilterStartUV(0, 0, 1, 1) + call SetCineFilterEndUV(0, 0, 1, 1) + call SetCineFilterStartColor(PercentTo255(red0), PercentTo255(green0), PercentTo255(blue0), PercentTo255(100-trans0)) + call SetCineFilterEndColor(PercentTo255(red1), PercentTo255(green1), PercentTo255(blue1), PercentTo255(100-trans1)) + call SetCineFilterDuration(duration) + call DisplayCineFilter(true) +endfunction + + + +//*************************************************************************** +//* +//* Rescuable Unit Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +// Rescues a unit for a player. This performs the default rescue behavior, +// including a rescue sound, flashing selection circle, ownership change, +// and optionally a unit color change. +// +function RescueUnitBJ takes unit whichUnit, player rescuer, boolean changeColor returns nothing + if IsUnitDeadBJ(whichUnit) or (GetOwningPlayer(whichUnit) == rescuer) then + return + endif + + call StartSound(bj_rescueSound) + call SetUnitOwner(whichUnit, rescuer, changeColor) + call UnitAddIndicator(whichUnit, 0, 255, 0, 255) + call PingMinimapForPlayer(rescuer, GetUnitX(whichUnit), GetUnitY(whichUnit), bj_RESCUE_PING_TIME) +endfunction + +//=========================================================================== +function TriggerActionUnitRescuedBJ takes nothing returns nothing + local unit theUnit = GetTriggerUnit() + + if IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorBldg) + else + call RescueUnitBJ(theUnit, GetOwningPlayer(GetRescuer()), bj_rescueChangeColorUnit) + endif +endfunction + +//=========================================================================== +// Attempt to init triggers for default rescue behavior. For performance +// reasons, this should only be attempted if a player is set to Rescuable, +// or if a specific unit is thus flagged. +// +function TryInitRescuableTriggersBJ takes nothing returns nothing + local integer index + + if (bj_rescueUnitBehavior == null) then + set bj_rescueUnitBehavior = CreateTrigger() + set index = 0 + loop + call TriggerRegisterPlayerUnitEvent(bj_rescueUnitBehavior, Player(index), EVENT_PLAYER_UNIT_RESCUED, null) + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + call TriggerAddAction(bj_rescueUnitBehavior, function TriggerActionUnitRescuedBJ) + endif +endfunction + +//=========================================================================== +// Determines whether or not rescued units automatically change color upon +// being rescued. +// +function SetRescueUnitColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorUnit = changeColor +endfunction + +//=========================================================================== +// Determines whether or not rescued buildings automatically change color +// upon being rescued. +// +function SetRescueBuildingColorChangeBJ takes boolean changeColor returns nothing + set bj_rescueChangeColorBldg = changeColor +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJEnum takes nothing returns nothing + call TryInitRescuableTriggersBJ() + call SetUnitRescuable(bj_makeUnitRescuableUnit, GetEnumPlayer(), bj_makeUnitRescuableFlag) +endfunction + +//=========================================================================== +function MakeUnitRescuableToForceBJ takes unit whichUnit, boolean isRescuable, force whichForce returns nothing + // Flag the unit as rescuable/unrescuable for the appropriate players. + set bj_makeUnitRescuableUnit = whichUnit + set bj_makeUnitRescuableFlag = isRescuable + call ForForce(whichForce, function MakeUnitRescuableToForceBJEnum) +endfunction + +//=========================================================================== +function InitRescuableBehaviorBJ takes nothing returns nothing + local integer index + + set index = 0 + loop + // If at least one player slot is "Rescuable"-controlled, init the + // rescue behavior triggers. + if (GetPlayerController(Player(index)) == MAP_CONTROL_RESCUABLE) then + call TryInitRescuableTriggersBJ() + return + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Research and Upgrade Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function SetPlayerTechResearchedSwap takes integer techid, integer levels, player whichPlayer returns nothing + call SetPlayerTechResearched(whichPlayer, techid, levels) +endfunction + +//=========================================================================== +function SetPlayerTechMaxAllowedSwap takes integer techid, integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, techid, maximum) +endfunction + +//=========================================================================== +function SetPlayerMaxHeroesAllowed takes integer maximum, player whichPlayer returns nothing + call SetPlayerTechMaxAllowed(whichPlayer, 'HERO', maximum) +endfunction + +//=========================================================================== +function GetPlayerTechCountSimple takes integer techid, player whichPlayer returns integer + return GetPlayerTechCount(whichPlayer, techid, true) +endfunction + +//=========================================================================== +function GetPlayerTechMaxAllowedSwap takes integer techid, player whichPlayer returns integer + return GetPlayerTechMaxAllowed(whichPlayer, techid) +endfunction + +//=========================================================================== +function SetPlayerAbilityAvailableBJ takes boolean avail, integer abilid, player whichPlayer returns nothing + call SetPlayerAbilityAvailable(whichPlayer, abilid, avail) +endfunction + + + +//*************************************************************************** +//* +//* Campaign Utility Functions +//* +//*************************************************************************** + +function SetCampaignMenuRaceBJ takes integer campaignNumber returns nothing + if (campaignNumber == bj_CAMPAIGN_INDEX_T) then + call SetCampaignMenuRace(RACE_OTHER) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetCampaignMenuRace(RACE_HUMAN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_U) then + call SetCampaignMenuRace(RACE_UNDEAD) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_O) then + call SetCampaignMenuRace(RACE_ORC) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_N) then + call SetCampaignMenuRace(RACE_NIGHTELF) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XN) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XH) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XU) + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + call SetCampaignMenuRaceEx(bj_CAMPAIGN_OFFSET_XO) + else + // Unrecognized campaign - ignore the request + endif +endfunction + +//=========================================================================== +// Converts a single campaign mission designation into campaign and mission +// numbers. The 1000's digit is considered the campaign index, and the 1's +// digit is considered the mission index within that campaign. This is done +// so that the trigger for this can use a single drop-down to list all of +// the campaign missions. +// +function SetMissionAvailableBJ takes boolean available, integer missionIndex returns nothing + local integer campaignNumber = missionIndex / 1000 + local integer missionNumber = missionIndex - campaignNumber * 1000 + + call SetMissionAvailable(campaignNumber, missionNumber, available) +endfunction + +//=========================================================================== +function SetCampaignAvailableBJ takes boolean available, integer campaignNumber returns nothing + local integer campaignOffset + + if (campaignNumber == bj_CAMPAIGN_INDEX_H) then + call SetTutorialCleared(true) + endif + + if (campaignNumber == bj_CAMPAIGN_INDEX_XN) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XN + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XH) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XH + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XU) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XU + elseif (campaignNumber == bj_CAMPAIGN_INDEX_XO) then + set campaignOffset = bj_CAMPAIGN_OFFSET_XO + else + set campaignOffset = campaignNumber + endif + + call SetCampaignAvailable(campaignOffset, available) + call SetCampaignMenuRaceBJ(campaignNumber) + call ForceCampaignSelectScreen() +endfunction + +//=========================================================================== +function SetCinematicAvailableBJ takes boolean available, integer cinematicIndex returns nothing + if ( cinematicIndex == bj_CINEMATICINDEX_TOP ) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_T, available ) + call PlayCinematic( "TutorialOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_HED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_H, available ) + call PlayCinematic( "HumanEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_OED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_O, available ) + call PlayCinematic( "OrcEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_UED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_U, available ) + call PlayCinematic( "UndeadEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NOP) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfOp" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_NED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_INDEX_N, available ) + call PlayCinematic( "NightElfEd" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XOP) then + call SetOpCinematicAvailable( bj_CAMPAIGN_OFFSET_XN, available ) + call PlayCinematic( "IntroX" ) + elseif (cinematicIndex == bj_CINEMATICINDEX_XED) then + call SetEdCinematicAvailable( bj_CAMPAIGN_OFFSET_XU, available ) + call PlayCinematic( "OutroX" ) + else + // Unrecognized cinematic - ignore the request. + endif +endfunction + +//=========================================================================== +function InitGameCacheBJ takes string campaignFile returns gamecache + set bj_lastCreatedGameCache = InitGameCache(campaignFile) + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function SaveGameCacheBJ takes gamecache cache returns boolean + return SaveGameCache(cache) +endfunction + +//=========================================================================== +function GetLastCreatedGameCacheBJ takes nothing returns gamecache + return bj_lastCreatedGameCache +endfunction + +//=========================================================================== +function InitHashtableBJ takes nothing returns hashtable + set bj_lastCreatedHashtable = InitHashtable() + return bj_lastCreatedHashtable +endfunction + +//=========================================================================== +function GetLastCreatedHashtableBJ takes nothing returns hashtable + return bj_lastCreatedHashtable +endfunction + +//=========================================================================== +function StoreRealBJ takes real value, string key, string missionKey, gamecache cache returns nothing + call StoreReal(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreIntegerBJ takes integer value, string key, string missionKey, gamecache cache returns nothing + call StoreInteger(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreBooleanBJ takes boolean value, string key, string missionKey, gamecache cache returns nothing + call StoreBoolean(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreStringBJ takes string value, string key, string missionKey, gamecache cache returns boolean + return StoreString(cache, missionKey, key, value) +endfunction + +//=========================================================================== +function StoreUnitBJ takes unit whichUnit, string key, string missionKey, gamecache cache returns boolean + return StoreUnit(cache, missionKey, key, whichUnit) +endfunction + +//=========================================================================== +function SaveRealBJ takes real value, integer key, integer missionKey, hashtable table returns nothing + call SaveReal(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveIntegerBJ takes integer value, integer key, integer missionKey, hashtable table returns nothing + call SaveInteger(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveBooleanBJ takes boolean value, integer key, integer missionKey, hashtable table returns nothing + call SaveBoolean(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SaveStringBJ takes string value, integer key, integer missionKey, hashtable table returns boolean + return SaveStr(table, missionKey, key, value) +endfunction + +//=========================================================================== +function SavePlayerHandleBJ takes player whichPlayer, integer key, integer missionKey, hashtable table returns boolean + return SavePlayerHandle(table, missionKey, key, whichPlayer) +endfunction + +//=========================================================================== +function SaveWidgetHandleBJ takes widget whichWidget, integer key, integer missionKey, hashtable table returns boolean + return SaveWidgetHandle(table, missionKey, key, whichWidget) +endfunction + +//=========================================================================== +function SaveDestructableHandleBJ takes destructable whichDestructable, integer key, integer missionKey, hashtable table returns boolean + return SaveDestructableHandle(table, missionKey, key, whichDestructable) +endfunction + +//=========================================================================== +function SaveItemHandleBJ takes item whichItem, integer key, integer missionKey, hashtable table returns boolean + return SaveItemHandle(table, missionKey, key, whichItem) +endfunction + +//=========================================================================== +function SaveUnitHandleBJ takes unit whichUnit, integer key, integer missionKey, hashtable table returns boolean + return SaveUnitHandle(table, missionKey, key, whichUnit) +endfunction + +//=========================================================================== +function SaveAbilityHandleBJ takes ability whichAbility, integer key, integer missionKey, hashtable table returns boolean + return SaveAbilityHandle(table, missionKey, key, whichAbility) +endfunction + +//=========================================================================== +function SaveTimerHandleBJ takes timer whichTimer, integer key, integer missionKey, hashtable table returns boolean + return SaveTimerHandle(table, missionKey, key, whichTimer) +endfunction + +//=========================================================================== +function SaveTriggerHandleBJ takes trigger whichTrigger, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerHandle(table, missionKey, key, whichTrigger) +endfunction + +//=========================================================================== +function SaveTriggerConditionHandleBJ takes triggercondition whichTriggercondition, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerConditionHandle(table, missionKey, key, whichTriggercondition) +endfunction + +//=========================================================================== +function SaveTriggerActionHandleBJ takes triggeraction whichTriggeraction, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerActionHandle(table, missionKey, key, whichTriggeraction) +endfunction + +//=========================================================================== +function SaveTriggerEventHandleBJ takes event whichEvent, integer key, integer missionKey, hashtable table returns boolean + return SaveTriggerEventHandle(table, missionKey, key, whichEvent) +endfunction + +//=========================================================================== +function SaveForceHandleBJ takes force whichForce, integer key, integer missionKey, hashtable table returns boolean + return SaveForceHandle(table, missionKey, key, whichForce) +endfunction + +//=========================================================================== +function SaveGroupHandleBJ takes group whichGroup, integer key, integer missionKey, hashtable table returns boolean + return SaveGroupHandle(table, missionKey, key, whichGroup) +endfunction + +//=========================================================================== +function SaveLocationHandleBJ takes location whichLocation, integer key, integer missionKey, hashtable table returns boolean + return SaveLocationHandle(table, missionKey, key, whichLocation) +endfunction + +//=========================================================================== +function SaveRectHandleBJ takes rect whichRect, integer key, integer missionKey, hashtable table returns boolean + return SaveRectHandle(table, missionKey, key, whichRect) +endfunction + +//=========================================================================== +function SaveBooleanExprHandleBJ takes boolexpr whichBoolexpr, integer key, integer missionKey, hashtable table returns boolean + return SaveBooleanExprHandle(table, missionKey, key, whichBoolexpr) +endfunction + +//=========================================================================== +function SaveSoundHandleBJ takes sound whichSound, integer key, integer missionKey, hashtable table returns boolean + return SaveSoundHandle(table, missionKey, key, whichSound) +endfunction + +//=========================================================================== +function SaveEffectHandleBJ takes effect whichEffect, integer key, integer missionKey, hashtable table returns boolean + return SaveEffectHandle(table, missionKey, key, whichEffect) +endfunction + +//=========================================================================== +function SaveUnitPoolHandleBJ takes unitpool whichUnitpool, integer key, integer missionKey, hashtable table returns boolean + return SaveUnitPoolHandle(table, missionKey, key, whichUnitpool) +endfunction + +//=========================================================================== +function SaveItemPoolHandleBJ takes itempool whichItempool, integer key, integer missionKey, hashtable table returns boolean + return SaveItemPoolHandle(table, missionKey, key, whichItempool) +endfunction + +//=========================================================================== +function SaveQuestHandleBJ takes quest whichQuest, integer key, integer missionKey, hashtable table returns boolean + return SaveQuestHandle(table, missionKey, key, whichQuest) +endfunction + +//=========================================================================== +function SaveQuestItemHandleBJ takes questitem whichQuestitem, integer key, integer missionKey, hashtable table returns boolean + return SaveQuestItemHandle(table, missionKey, key, whichQuestitem) +endfunction + +//=========================================================================== +function SaveDefeatConditionHandleBJ takes defeatcondition whichDefeatcondition, integer key, integer missionKey, hashtable table returns boolean + return SaveDefeatConditionHandle(table, missionKey, key, whichDefeatcondition) +endfunction + +//=========================================================================== +function SaveTimerDialogHandleBJ takes timerdialog whichTimerdialog, integer key, integer missionKey, hashtable table returns boolean + return SaveTimerDialogHandle(table, missionKey, key, whichTimerdialog) +endfunction + +//=========================================================================== +function SaveLeaderboardHandleBJ takes leaderboard whichLeaderboard, integer key, integer missionKey, hashtable table returns boolean + return SaveLeaderboardHandle(table, missionKey, key, whichLeaderboard) +endfunction + +//=========================================================================== +function SaveMultiboardHandleBJ takes multiboard whichMultiboard, integer key, integer missionKey, hashtable table returns boolean + return SaveMultiboardHandle(table, missionKey, key, whichMultiboard) +endfunction + +//=========================================================================== +function SaveMultiboardItemHandleBJ takes multiboarditem whichMultiboarditem, integer key, integer missionKey, hashtable table returns boolean + return SaveMultiboardItemHandle(table, missionKey, key, whichMultiboarditem) +endfunction + +//=========================================================================== +function SaveTrackableHandleBJ takes trackable whichTrackable, integer key, integer missionKey, hashtable table returns boolean + return SaveTrackableHandle(table, missionKey, key, whichTrackable) +endfunction + +//=========================================================================== +function SaveDialogHandleBJ takes dialog whichDialog, integer key, integer missionKey, hashtable table returns boolean + return SaveDialogHandle(table, missionKey, key, whichDialog) +endfunction + +//=========================================================================== +function SaveButtonHandleBJ takes button whichButton, integer key, integer missionKey, hashtable table returns boolean + return SaveButtonHandle(table, missionKey, key, whichButton) +endfunction + +//=========================================================================== +function SaveTextTagHandleBJ takes texttag whichTexttag, integer key, integer missionKey, hashtable table returns boolean + return SaveTextTagHandle(table, missionKey, key, whichTexttag) +endfunction + +//=========================================================================== +function SaveLightningHandleBJ takes lightning whichLightning, integer key, integer missionKey, hashtable table returns boolean + return SaveLightningHandle(table, missionKey, key, whichLightning) +endfunction + +//=========================================================================== +function SaveImageHandleBJ takes image whichImage, integer key, integer missionKey, hashtable table returns boolean + return SaveImageHandle(table, missionKey, key, whichImage) +endfunction + +//=========================================================================== +function SaveUbersplatHandleBJ takes ubersplat whichUbersplat, integer key, integer missionKey, hashtable table returns boolean + return SaveUbersplatHandle(table, missionKey, key, whichUbersplat) +endfunction + +//=========================================================================== +function SaveRegionHandleBJ takes region whichRegion, integer key, integer missionKey, hashtable table returns boolean + return SaveRegionHandle(table, missionKey, key, whichRegion) +endfunction + +//=========================================================================== +function SaveFogStateHandleBJ takes fogstate whichFogState, integer key, integer missionKey, hashtable table returns boolean + return SaveFogStateHandle(table, missionKey, key, whichFogState) +endfunction + +//=========================================================================== +function SaveFogModifierHandleBJ takes fogmodifier whichFogModifier, integer key, integer missionKey, hashtable table returns boolean + return SaveFogModifierHandle(table, missionKey, key, whichFogModifier) +endfunction + +//=========================================================================== +function SaveAgentHandleBJ takes agent whichAgent, integer key, integer missionKey, hashtable table returns boolean + return SaveAgentHandle(table, missionKey, key, whichAgent) +endfunction + +//=========================================================================== +function SaveHashtableHandleBJ takes hashtable whichHashtable, integer key, integer missionKey, hashtable table returns boolean + return SaveHashtableHandle(table, missionKey, key, whichHashtable) +endfunction + +//=========================================================================== +function GetStoredRealBJ takes string key, string missionKey, gamecache cache returns real + //call SyncStoredReal(cache, missionKey, key) + return GetStoredReal(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredIntegerBJ takes string key, string missionKey, gamecache cache returns integer + //call SyncStoredInteger(cache, missionKey, key) + return GetStoredInteger(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredBooleanBJ takes string key, string missionKey, gamecache cache returns boolean + //call SyncStoredBoolean(cache, missionKey, key) + return GetStoredBoolean(cache, missionKey, key) +endfunction + +//=========================================================================== +function GetStoredStringBJ takes string key, string missionKey, gamecache cache returns string + local string s + + //call SyncStoredString(cache, missionKey, key) + set s = GetStoredString(cache, missionKey, key) + if (s == null) then + return "" + else + return s + endif +endfunction + +//=========================================================================== +function LoadRealBJ takes integer key, integer missionKey, hashtable table returns real + //call SyncStoredReal(table, missionKey, key) + return LoadReal(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadIntegerBJ takes integer key, integer missionKey, hashtable table returns integer + //call SyncStoredInteger(table, missionKey, key) + return LoadInteger(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadBooleanBJ takes integer key, integer missionKey, hashtable table returns boolean + //call SyncStoredBoolean(table, missionKey, key) + return LoadBoolean(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadStringBJ takes integer key, integer missionKey, hashtable table returns string + local string s + + //call SyncStoredString(table, missionKey, key) + set s = LoadStr(table, missionKey, key) + if (s == null) then + return "" + else + return s + endif +endfunction + +//=========================================================================== +function LoadPlayerHandleBJ takes integer key, integer missionKey, hashtable table returns player + return LoadPlayerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadWidgetHandleBJ takes integer key, integer missionKey, hashtable table returns widget + return LoadWidgetHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDestructableHandleBJ takes integer key, integer missionKey, hashtable table returns destructable + return LoadDestructableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadItemHandleBJ takes integer key, integer missionKey, hashtable table returns item + return LoadItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUnitHandleBJ takes integer key, integer missionKey, hashtable table returns unit + return LoadUnitHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadAbilityHandleBJ takes integer key, integer missionKey, hashtable table returns ability + return LoadAbilityHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTimerHandleBJ takes integer key, integer missionKey, hashtable table returns timer + return LoadTimerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerHandleBJ takes integer key, integer missionKey, hashtable table returns trigger + return LoadTriggerHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerConditionHandleBJ takes integer key, integer missionKey, hashtable table returns triggercondition + return LoadTriggerConditionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerActionHandleBJ takes integer key, integer missionKey, hashtable table returns triggeraction + return LoadTriggerActionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTriggerEventHandleBJ takes integer key, integer missionKey, hashtable table returns event + return LoadTriggerEventHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadForceHandleBJ takes integer key, integer missionKey, hashtable table returns force + return LoadForceHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadGroupHandleBJ takes integer key, integer missionKey, hashtable table returns group + return LoadGroupHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLocationHandleBJ takes integer key, integer missionKey, hashtable table returns location + return LoadLocationHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadRectHandleBJ takes integer key, integer missionKey, hashtable table returns rect + return LoadRectHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadBooleanExprHandleBJ takes integer key, integer missionKey, hashtable table returns boolexpr + return LoadBooleanExprHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadSoundHandleBJ takes integer key, integer missionKey, hashtable table returns sound + return LoadSoundHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadEffectHandleBJ takes integer key, integer missionKey, hashtable table returns effect + return LoadEffectHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUnitPoolHandleBJ takes integer key, integer missionKey, hashtable table returns unitpool + return LoadUnitPoolHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadItemPoolHandleBJ takes integer key, integer missionKey, hashtable table returns itempool + return LoadItemPoolHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadQuestHandleBJ takes integer key, integer missionKey, hashtable table returns quest + return LoadQuestHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadQuestItemHandleBJ takes integer key, integer missionKey, hashtable table returns questitem + return LoadQuestItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDefeatConditionHandleBJ takes integer key, integer missionKey, hashtable table returns defeatcondition + return LoadDefeatConditionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTimerDialogHandleBJ takes integer key, integer missionKey, hashtable table returns timerdialog + return LoadTimerDialogHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLeaderboardHandleBJ takes integer key, integer missionKey, hashtable table returns leaderboard + return LoadLeaderboardHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadMultiboardHandleBJ takes integer key, integer missionKey, hashtable table returns multiboard + return LoadMultiboardHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadMultiboardItemHandleBJ takes integer key, integer missionKey, hashtable table returns multiboarditem + return LoadMultiboardItemHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTrackableHandleBJ takes integer key, integer missionKey, hashtable table returns trackable + return LoadTrackableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadDialogHandleBJ takes integer key, integer missionKey, hashtable table returns dialog + return LoadDialogHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadButtonHandleBJ takes integer key, integer missionKey, hashtable table returns button + return LoadButtonHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadTextTagHandleBJ takes integer key, integer missionKey, hashtable table returns texttag + return LoadTextTagHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadLightningHandleBJ takes integer key, integer missionKey, hashtable table returns lightning + return LoadLightningHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadImageHandleBJ takes integer key, integer missionKey, hashtable table returns image + return LoadImageHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadUbersplatHandleBJ takes integer key, integer missionKey, hashtable table returns ubersplat + return LoadUbersplatHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadRegionHandleBJ takes integer key, integer missionKey, hashtable table returns region + return LoadRegionHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadFogStateHandleBJ takes integer key, integer missionKey, hashtable table returns fogstate + return LoadFogStateHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadFogModifierHandleBJ takes integer key, integer missionKey, hashtable table returns fogmodifier + return LoadFogModifierHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function LoadHashtableHandleBJ takes integer key, integer missionKey, hashtable table returns hashtable + return LoadHashtableHandle(table, missionKey, key) +endfunction + +//=========================================================================== +function RestoreUnitLocFacingAngleBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, real facing returns unit + //call SyncStoredUnit(cache, missionKey, key) + set bj_lastLoadedUnit = RestoreUnit(cache, missionKey, key, forWhichPlayer, GetLocationX(loc), GetLocationY(loc), facing) + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function RestoreUnitLocFacingPointBJ takes string key, string missionKey, gamecache cache, player forWhichPlayer, location loc, location lookAt returns unit + //call SyncStoredUnit(cache, missionKey, key) + return RestoreUnitLocFacingAngleBJ(key, missionKey, cache, forWhichPlayer, loc, AngleBetweenPoints(loc, lookAt)) +endfunction + +//=========================================================================== +function GetLastRestoredUnitBJ takes nothing returns unit + return bj_lastLoadedUnit +endfunction + +//=========================================================================== +function FlushGameCacheBJ takes gamecache cache returns nothing + call FlushGameCache(cache) +endfunction + +//=========================================================================== +function FlushStoredMissionBJ takes string missionKey, gamecache cache returns nothing + call FlushStoredMission(cache, missionKey) +endfunction + +//=========================================================================== +function FlushParentHashtableBJ takes hashtable table returns nothing + call FlushParentHashtable(table) +endfunction + +//=========================================================================== +function FlushChildHashtableBJ takes integer missionKey, hashtable table returns nothing + call FlushChildHashtable(table, missionKey) +endfunction + +//=========================================================================== +function HaveStoredValue takes string key, integer valueType, string missionKey, gamecache cache returns boolean + if (valueType == bj_GAMECACHE_BOOLEAN) then + return HaveStoredBoolean(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_INTEGER) then + return HaveStoredInteger(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_REAL) then + return HaveStoredReal(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_UNIT) then + return HaveStoredUnit(cache, missionKey, key) + elseif (valueType == bj_GAMECACHE_STRING) then + return HaveStoredString(cache, missionKey, key) + else + // Unrecognized value type - ignore the request. + return false + endif +endfunction + +//=========================================================================== +function HaveSavedValue takes integer key, integer valueType, integer missionKey, hashtable table returns boolean + if (valueType == bj_HASHTABLE_BOOLEAN) then + return HaveSavedBoolean(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_INTEGER) then + return HaveSavedInteger(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_REAL) then + return HaveSavedReal(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_STRING) then + return HaveSavedString(table, missionKey, key) + elseif (valueType == bj_HASHTABLE_HANDLE) then + return HaveSavedHandle(table, missionKey, key) + else + // Unrecognized value type - ignore the request. + return false + endif +endfunction + +//=========================================================================== +function ShowCustomCampaignButton takes boolean show, integer whichButton returns nothing + call SetCustomCampaignButtonVisible(whichButton - 1, show) +endfunction + +//=========================================================================== +function IsCustomCampaignButtonVisibile takes integer whichButton returns boolean + return GetCustomCampaignButtonVisible(whichButton - 1) +endfunction + +//=========================================================================== +function LoadGameBJ takes string loadFileName, boolean doScoreScreen returns nothing + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndChangeLevelBJ takes string saveFileName, string newLevel, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call ChangeLevel(newLevel, doScoreScreen) +endfunction + +//=========================================================================== +function SaveAndLoadGameBJ takes string saveFileName, string loadFileName, boolean doScoreScreen returns nothing + call SaveGame(saveFileName) + call LoadGame(loadFileName, doScoreScreen) +endfunction + +//=========================================================================== +function RenameSaveDirectoryBJ takes string sourceDirName, string destDirName returns boolean + return RenameSaveDirectory(sourceDirName, destDirName) +endfunction + +//=========================================================================== +function RemoveSaveDirectoryBJ takes string sourceDirName returns boolean + return RemoveSaveDirectory(sourceDirName) +endfunction + +//=========================================================================== +function CopySaveGameBJ takes string sourceSaveName, string destSaveName returns boolean + return CopySaveGame(sourceSaveName, destSaveName) +endfunction + + + +//*************************************************************************** +//* +//* Miscellaneous Utility Functions +//* +//*************************************************************************** + +//=========================================================================== +function GetPlayerStartLocationX takes player whichPlayer returns real + return GetStartLocationX(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationY takes player whichPlayer returns real + return GetStartLocationY(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetPlayerStartLocationLoc takes player whichPlayer returns location + return GetStartLocationLoc(GetPlayerStartLocation(whichPlayer)) +endfunction + +//=========================================================================== +function GetRectCenter takes rect whichRect returns location + return Location(GetRectCenterX(whichRect), GetRectCenterY(whichRect)) +endfunction + +//=========================================================================== +function IsPlayerSlotState takes player whichPlayer, playerslotstate whichState returns boolean + return GetPlayerSlotState(whichPlayer) == whichState +endfunction + +//=========================================================================== +function GetFadeFromSeconds takes real seconds returns integer + if (seconds != 0) then + return 128 / R2I(seconds) + endif + return 10000 +endfunction + +//=========================================================================== +function GetFadeFromSecondsAsReal takes real seconds returns real + if (seconds != 0) then + return 128.00 / seconds + endif + return 10000.00 +endfunction + +//=========================================================================== +function AdjustPlayerStateSimpleBJ takes player whichPlayer, playerstate whichPlayerState, integer delta returns nothing + call SetPlayerState(whichPlayer, whichPlayerState, GetPlayerState(whichPlayer, whichPlayerState) + delta) +endfunction + +//=========================================================================== +function AdjustPlayerStateBJ takes integer delta, player whichPlayer, playerstate whichPlayerState returns nothing + // If the change was positive, apply the difference to the player's + // gathered resources property as well. + if (delta > 0) then + if (whichPlayerState == PLAYER_STATE_RESOURCE_GOLD) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_GOLD_GATHERED, delta) + elseif (whichPlayerState == PLAYER_STATE_RESOURCE_LUMBER) then + call AdjustPlayerStateSimpleBJ(whichPlayer, PLAYER_STATE_LUMBER_GATHERED, delta) + endif + endif + + call AdjustPlayerStateSimpleBJ(whichPlayer, whichPlayerState, delta) +endfunction + +//=========================================================================== +function SetPlayerStateBJ takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing + local integer oldValue = GetPlayerState(whichPlayer, whichPlayerState) + call AdjustPlayerStateBJ(value - oldValue, whichPlayer, whichPlayerState) +endfunction + +//=========================================================================== +function SetPlayerFlagBJ takes playerstate whichPlayerFlag, boolean flag, player whichPlayer returns nothing + call SetPlayerState(whichPlayer, whichPlayerFlag, IntegerTertiaryOp(flag, 1, 0)) +endfunction + +//=========================================================================== +function SetPlayerTaxRateBJ takes integer rate, playerstate whichResource, player sourcePlayer, player otherPlayer returns nothing + call SetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource, rate) +endfunction + +//=========================================================================== +function GetPlayerTaxRateBJ takes playerstate whichResource, player sourcePlayer, player otherPlayer returns integer + return GetPlayerTaxRate(sourcePlayer, otherPlayer, whichResource) +endfunction + +//=========================================================================== +function IsPlayerFlagSetBJ takes playerstate whichPlayerFlag, player whichPlayer returns boolean + return GetPlayerState(whichPlayer, whichPlayerFlag) == 1 +endfunction + +//=========================================================================== +function AddResourceAmountBJ takes integer delta, unit whichUnit returns nothing + call AddResourceAmount(whichUnit, delta) +endfunction + +//=========================================================================== +function GetConvertedPlayerId takes player whichPlayer returns integer + return GetPlayerId(whichPlayer) + 1 +endfunction + +//=========================================================================== +function ConvertedPlayer takes integer convertedPlayerId returns player + return Player(convertedPlayerId - 1) +endfunction + +//=========================================================================== +function GetRectWidthBJ takes rect r returns real + return GetRectMaxX(r) - GetRectMinX(r) +endfunction + +//=========================================================================== +function GetRectHeightBJ takes rect r returns real + return GetRectMaxY(r) - GetRectMinY(r) +endfunction + +//=========================================================================== +// Replaces a gold mine with a blighted gold mine for the given player. +// +function BlightGoldMineForPlayerBJ takes unit goldMine, player whichPlayer returns unit + local real mineX + local real mineY + local integer mineGold + local unit newMine + + // Make sure we're replacing a Gold Mine and not some other type of unit. + if GetUnitTypeId(goldMine) != 'ngol' then + return null + endif + + // Save the Gold Mine's properties and remove it. + set mineX = GetUnitX(goldMine) + set mineY = GetUnitY(goldMine) + set mineGold = GetResourceAmount(goldMine) + call RemoveUnit(goldMine) + + // Create a Haunted Gold Mine to replace the Gold Mine. + set newMine = CreateBlightedGoldmine(whichPlayer, mineX, mineY, bj_UNIT_FACING) + call SetResourceAmount(newMine, mineGold) + return newMine +endfunction + +//=========================================================================== +function BlightGoldMineForPlayer takes unit goldMine, player whichPlayer returns unit + set bj_lastHauntedGoldMine = BlightGoldMineForPlayerBJ(goldMine, whichPlayer) + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function GetLastHauntedGoldMine takes nothing returns unit + return bj_lastHauntedGoldMine +endfunction + +//=========================================================================== +function IsPointBlightedBJ takes location where returns boolean + return IsPointBlighted(GetLocationX(where), GetLocationY(where)) +endfunction + +//=========================================================================== +function SetPlayerColorBJEnum takes nothing returns nothing + call SetUnitColor(GetEnumUnit(), bj_setPlayerTargetColor) +endfunction + +//=========================================================================== +function SetPlayerColorBJ takes player whichPlayer, playercolor color, boolean changeExisting returns nothing + local group g + + call SetPlayerColor(whichPlayer, color) + if changeExisting then + set bj_setPlayerTargetColor = color + set g = CreateGroup() + call GroupEnumUnitsOfPlayer(g, whichPlayer, null) + call ForGroup(g, function SetPlayerColorBJEnum) + call DestroyGroup(g) + endif +endfunction + +//=========================================================================== +function SetPlayerUnitAvailableBJ takes integer unitId, boolean allowed, player whichPlayer returns nothing + if allowed then + call SetPlayerTechMaxAllowed(whichPlayer, unitId, -1) + else + call SetPlayerTechMaxAllowed(whichPlayer, unitId, 0) + endif +endfunction + +//=========================================================================== +function LockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, true) +endfunction + +//=========================================================================== +function UnlockGameSpeedBJ takes nothing returns nothing + call SetMapFlag(MAP_LOCK_SPEED, false) +endfunction + +//=========================================================================== +function IssueTargetOrderBJ takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssuePointOrderLocBJ takes unit whichUnit, string order, location whichLocation returns boolean + return IssuePointOrderLoc( whichUnit, order, whichLocation ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function IssueTargetDestructableOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +function IssueTargetItemOrder takes unit whichUnit, string order, widget targetWidget returns boolean + return IssueTargetOrder( whichUnit, order, targetWidget ) +endfunction + +//=========================================================================== +function IssueImmediateOrderBJ takes unit whichUnit, string order returns boolean + return IssueImmediateOrder( whichUnit, order ) +endfunction + +//=========================================================================== +function GroupTargetOrderBJ takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GroupPointOrderLocBJ takes group whichGroup, string order, location whichLocation returns boolean + return GroupPointOrderLoc( whichGroup, order, whichLocation ) +endfunction + +//=========================================================================== +function GroupImmediateOrderBJ takes group whichGroup, string order returns boolean + return GroupImmediateOrder( whichGroup, order ) +endfunction + +//=========================================================================== +// Two distinct trigger actions can't share the same function name, so this +// dummy function simply mimics the behavior of an existing call. +// +function GroupTargetDestructableOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +function GroupTargetItemOrder takes group whichGroup, string order, widget targetWidget returns boolean + return GroupTargetOrder( whichGroup, order, targetWidget ) +endfunction + +//=========================================================================== +function GetDyingDestructable takes nothing returns destructable + return GetTriggerDestructable() +endfunction + +//=========================================================================== +// Rally point setting +// +function SetUnitRallyPoint takes unit whichUnit, location targPos returns nothing + call IssuePointOrderLocBJ(whichUnit, "setrally", targPos) +endfunction + +//=========================================================================== +function SetUnitRallyUnit takes unit whichUnit, unit targUnit returns nothing + call IssueTargetOrder(whichUnit, "setrally", targUnit) +endfunction + +//=========================================================================== +function SetUnitRallyDestructable takes unit whichUnit, destructable targDest returns nothing + call IssueTargetOrder(whichUnit, "setrally", targDest) +endfunction + +//=========================================================================== +// Utility function for use by editor-generated item drop table triggers. +// This function is added as an action to all destructable drop triggers, +// so that a widget drop may be differentiated from a unit drop. +// +function SaveDyingWidget takes nothing returns nothing + set bj_lastDyingWidget = GetTriggerWidget() +endfunction + +//=========================================================================== +function SetBlightRectBJ takes boolean addBlight, player whichPlayer, rect r returns nothing + call SetBlightRect(whichPlayer, r, addBlight) +endfunction + +//=========================================================================== +function SetBlightRadiusLocBJ takes boolean addBlight, player whichPlayer, location loc, real radius returns nothing + call SetBlightLoc(whichPlayer, loc, radius, addBlight) +endfunction + +//=========================================================================== +function GetAbilityName takes integer abilcode returns string + return GetObjectName(abilcode) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Visibility Settings +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingVisibility takes nothing returns nothing + // Start by setting the ToD. + call SetFloatGameState(GAME_STATE_TIME_OF_DAY, bj_MELEE_STARTING_TOD) + + // call FogMaskEnable(true) + // call FogEnable(true) +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Resources +//* +//*************************************************************************** + +//=========================================================================== +function MeleeStartingResources takes nothing returns nothing + local integer index + local player indexPlayer + local version v + local integer startingGold + local integer startingLumber + + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set startingGold = bj_MELEE_STARTING_GOLD_V0 + set startingLumber = bj_MELEE_STARTING_LUMBER_V0 + else + set startingGold = bj_MELEE_STARTING_GOLD_V1 + set startingLumber = bj_MELEE_STARTING_LUMBER_V1 + endif + + // Set each player's starting resources. + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_GOLD, startingGold) + call SetPlayerState(indexPlayer, PLAYER_STATE_RESOURCE_LUMBER, startingLumber) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Hero Limit +//* +//*************************************************************************** + +//=========================================================================== +function ReducePlayerTechMaxAllowed takes player whichPlayer, integer techId, integer limit returns nothing + local integer oldMax = GetPlayerTechMaxAllowed(whichPlayer, techId) + + // A value of -1 is used to indicate no limit, so check for that as well. + if (oldMax < 0 or oldMax > limit) then + call SetPlayerTechMaxAllowed(whichPlayer, techId, limit) + endif +endfunction + +//=========================================================================== +function MeleeStartingHeroLimit takes nothing returns nothing + local integer index + + set index = 0 + loop + // max heroes per player + call SetPlayerMaxHeroesAllowed(bj_MELEE_HERO_LIMIT, Player(index)) + + // each player is restricted to a limit per hero type as well + call ReducePlayerTechMaxAllowed(Player(index), 'Hamg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hmkg', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hpal', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Hblm', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Obla', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ofar', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Otch', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Oshd', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Edem', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ekee', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Emoo', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ewar', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Udea', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Udre', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ulic', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ucrl', bj_MELEE_HERO_TYPE_LIMIT) + + call ReducePlayerTechMaxAllowed(Player(index), 'Npbm', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbrn', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nngs', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nplh', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nbst', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nalc', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Ntin', bj_MELEE_HERO_TYPE_LIMIT) + call ReducePlayerTechMaxAllowed(Player(index), 'Nfir', bj_MELEE_HERO_TYPE_LIMIT) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Granted Hero Items +//* +//*************************************************************************** + +//=========================================================================== +function MeleeTrainedUnitIsHeroBJFilter takes nothing returns boolean + return IsUnitType(GetFilterUnit(), UNIT_TYPE_HERO) +endfunction + +//=========================================================================== +// The first N heroes trained or hired for each player start off with a +// standard set of items. This is currently: +// - 1x Scroll of Town Portal +// +function MeleeGrantItemsToHero takes unit whichUnit returns nothing + local integer owner = GetPlayerId(GetOwningPlayer(whichUnit)) + + // If we haven't twinked N heroes for this player yet, twink away. + if (bj_meleeTwinkedHeroes[owner] < bj_MELEE_MAX_TWINKED_HEROES) then + call UnitAddItemById(whichUnit, 'stwp') + set bj_meleeTwinkedHeroes[owner] = bj_meleeTwinkedHeroes[owner] + 1 + endif +endfunction + +//=========================================================================== +function MeleeGrantItemsToTrainedHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetTrainedUnit()) +endfunction + +//=========================================================================== +function MeleeGrantItemsToHiredHero takes nothing returns nothing + call MeleeGrantItemsToHero(GetSoldUnit()) +endfunction + +//=========================================================================== +function MeleeGrantHeroItems takes nothing returns nothing + local integer index + local trigger trig + + // Initialize the twinked hero counts. + set index = 0 + loop + set bj_meleeTwinkedHeroes[index] = 0 + + set index = index + 1 + exitwhen index == bj_MAX_PLAYER_SLOTS + endloop + + // Register for an event whenever a hero is trained, so that we can give + // him/her their starting items. + set index = 0 + loop + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(index), EVENT_PLAYER_UNIT_TRAIN_FINISH, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToTrainedHero) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Register for an event whenever a neutral hero is hired, so that we + // can give him/her their starting items. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL, filterMeleeTrainedUnitIsHeroBJ) + call TriggerAddAction(trig, function MeleeGrantItemsToHiredHero) + + // Flag that we are giving starting items to heroes, so that the melee + // starting units code can create them as necessary. + set bj_meleeGrantHeroItems = true +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Clear Start Locations +//* +//*************************************************************************** + +//=========================================================================== +function MeleeClearExcessUnit takes nothing returns nothing + local unit theUnit = GetEnumUnit() + local integer owner = GetPlayerId(GetOwningPlayer(theUnit)) + + if (owner == PLAYER_NEUTRAL_AGGRESSIVE) then + // Remove any Neutral Hostile units from the area. + call RemoveUnit(GetEnumUnit()) + elseif (owner == PLAYER_NEUTRAL_PASSIVE) then + // Remove non-structure Neutral Passive units from the area. + if not IsUnitType(theUnit, UNIT_TYPE_STRUCTURE) then + call RemoveUnit(GetEnumUnit()) + endif + endif +endfunction + +//=========================================================================== +function MeleeClearNearbyUnits takes real x, real y, real range returns nothing + local group nearbyUnits + + set nearbyUnits = CreateGroup() + call GroupEnumUnitsInRange(nearbyUnits, x, y, range, null) + call ForGroup(nearbyUnits, function MeleeClearExcessUnit) + call DestroyGroup(nearbyUnits) +endfunction + +//=========================================================================== +function MeleeClearExcessUnits takes nothing returns nothing + local integer index + local real locX + local real locY + local player indexPlayer + + set index = 0 + loop + set indexPlayer = Player(index) + + // If the player slot is being used, clear any nearby creeps. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set locX = GetStartLocationX(GetPlayerStartLocation(indexPlayer)) + set locY = GetStartLocationY(GetPlayerStartLocation(indexPlayer)) + + call MeleeClearNearbyUnits(locX, locY, bj_MELEE_CLEAR_UNITS_RADIUS) + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting Units +//* +//*************************************************************************** + +//=========================================================================== +function MeleeEnumFindNearestMine takes nothing returns nothing + local unit enumUnit = GetEnumUnit() + local real dist + local location unitLoc + + if (GetUnitTypeId(enumUnit) == 'ngol') then + set unitLoc = GetUnitLoc(enumUnit) + set dist = DistanceBetweenPoints(unitLoc, bj_meleeNearestMineToLoc) + call RemoveLocation(unitLoc) + + // If this is our first mine, or the closest thusfar, use it instead. + if (bj_meleeNearestMineDist < 0) or (dist < bj_meleeNearestMineDist) then + set bj_meleeNearestMine = enumUnit + set bj_meleeNearestMineDist = dist + endif + endif +endfunction + +//=========================================================================== +function MeleeFindNearestMine takes location src, real range returns unit + local group nearbyMines + + set bj_meleeNearestMine = null + set bj_meleeNearestMineDist = -1 + set bj_meleeNearestMineToLoc = src + + set nearbyMines = CreateGroup() + call GroupEnumUnitsInRangeOfLoc(nearbyMines, src, range, null) + call ForGroup(nearbyMines, function MeleeEnumFindNearestMine) + call DestroyGroup(nearbyMines) + + return bj_meleeNearestMine +endfunction + +//=========================================================================== +function MeleeRandomHeroLoc takes player p, integer id1, integer id2, integer id3, integer id4, location loc returns unit + local unit hero = null + local integer roll + local integer pick + local version v + + // The selection of heroes is dependant on the game version. + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set roll = GetRandomInt(1,3) + else + set roll = GetRandomInt(1,4) + endif + + // Translate the roll into a unitid. + if roll == 1 then + set pick = id1 + elseif roll == 2 then + set pick = id2 + elseif roll == 3 then + set pick = id3 + elseif roll == 4 then + set pick = id4 + else + // Unrecognized id index - pick the first hero in the list. + set pick = id1 + endif + + // Create the hero. + set hero = CreateUnitAtLoc(p, pick, loc, bj_UNIT_FACING) + if bj_meleeGrantHeroItems then + call MeleeGrantItemsToHero(hero) + endif + return hero +endfunction + +//=========================================================================== +// Returns a location which is (distance) away from (src) in the direction of (targ). +// +function MeleeGetProjectedLoc takes location src, location targ, real distance, real deltaAngle returns location + local real srcX = GetLocationX(src) + local real srcY = GetLocationY(src) + local real direction = Atan2(GetLocationY(targ) - srcY, GetLocationX(targ) - srcX) + deltaAngle + return Location(srcX + distance * Cos(direction), srcY + distance * Sin(direction)) +endfunction + +//=========================================================================== +function MeleeGetNearestValueWithin takes real val, real minVal, real maxVal returns real + if (val < minVal) then + return minVal + elseif (val > maxVal) then + return maxVal + else + return val + endif +endfunction + +//=========================================================================== +function MeleeGetLocWithinRect takes location src, rect r returns location + local real withinX = MeleeGetNearestValueWithin(GetLocationX(src), GetRectMinX(r), GetRectMaxX(r)) + local real withinY = MeleeGetNearestValueWithin(GetLocationY(src), GetRectMinY(r), GetRectMaxY(r)) + return Location(withinX, withinY) +endfunction + +//=========================================================================== +// Starting Units for Human Players +// - 1 Town Hall, placed at start location +// - 5 Peasants, placed between start location and nearest gold mine +// +function MeleeStartingUnitsHuman takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + local unit townHall = null + + if (doPreload) then + call Preloader( "scripts\\HumanMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Town Hall at the start location. + set townHall = CreateUnitAtLoc(whichPlayer, 'htow', startLoc, bj_UNIT_FACING) + + // Spawn Peasants directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'hpea', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'hpea', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (townHall != null) then + call UnitAddAbilityBJ('Amic', townHall) + call UnitMakeAbilityPermanentBJ(true, 'Amic', townHall) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Hamg', 'Hmkg', 'Hpal', 'Hblm', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peasants. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Orc Players +// - 1 Great Hall, placed at start location +// - 5 Peons, placed between start location and nearest gold mine +// +function MeleeStartingUnitsOrc takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location heroLoc + local real peonX + local real peonY + + if (doPreload) then + call Preloader( "scripts\\OrcMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 0.60 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Great Hall at the start location. + call CreateUnitAtLoc(whichPlayer, 'ogre', startLoc, bj_UNIT_FACING) + + // Spawn Peons directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'opeo', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'opeo', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Obla', 'Ofar', 'Otch', 'Oshd', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Peons. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Undead Players +// - 1 Necropolis, placed at start location +// - 1 Haunted Gold Mine, placed on nearest gold mine +// - 3 Acolytes, placed between start location and nearest gold mine +// - 1 Ghoul, placed between start location and nearest gold mine +// - Blight, centered on nearest gold mine, spread across a "large area" +// +function MeleeStartingUnitsUndead takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local unit nearestMine + local location nearMineLoc + local location nearTownLoc + local location heroLoc + local real peonX + local real peonY + local real ghoulX + local real ghoulY + + if (doPreload) then + call Preloader( "scripts\\UndeadMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Replace the nearest gold mine with a blighted version. + set nearestMine = BlightGoldMineForPlayerBJ(nearestMine, whichPlayer) + + // Spawn Ghoul near the Necropolis. + set nearTownLoc = MeleeGetProjectedLoc(startLoc, GetUnitLoc(nearestMine), 288, 0) + set ghoulX = GetLocationX(nearTownLoc) + set ghoulY = GetLocationY(nearTownLoc) + set bj_ghoul[GetPlayerId(whichPlayer)] = CreateUnit(whichPlayer, 'ugho', ghoulX + 0.00 * unitSpacing, ghoulY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Spawn Acolytes near the mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set peonX = GetLocationX(nearMineLoc) + set peonY = GetLocationY(nearMineLoc) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.00 * unitSpacing, peonY + 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.65 * unitSpacing, peonY - 0.50 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the gold mine. + call SetBlightLoc(whichPlayer,nearMineLoc, 768, true) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Necropolis at the start location. + call CreateUnitAtLoc(whichPlayer, 'unpl', startLoc, bj_UNIT_FACING) + + // Spawn Acolytes and Ghoul directly south of the Necropolis. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'uaco', peonX - 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX - 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'uaco', peonX + 0.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ugho', peonX + 1.50 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Create a patch of blight around the start location. + call SetBlightLoc(whichPlayer,startLoc, 768, true) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Udea', 'Udre', 'Ulic', 'Ucrl', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Acolytes. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Night Elf Players +// - 1 Tree of Life, placed by nearest gold mine, already entangled +// - 5 Wisps, placed between Tree of Life and nearest gold mine +// +function MeleeStartingUnitsNightElf takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local boolean useRandomHero = IsMapFlagSet(MAP_RANDOM_HERO) + local real unitSpacing = 64.00 + local real minTreeDist = 3.50 * bj_CELLWIDTH + local real minWispDist = 1.75 * bj_CELLWIDTH + local unit nearestMine + local location nearMineLoc + local location wispLoc + local location heroLoc + local real peonX + local real peonY + local unit tree + + if (doPreload) then + call Preloader( "scripts\\NightElfMelee.pld" ) + endif + + set nearestMine = MeleeFindNearestMine(startLoc, bj_MELEE_MINE_SEARCH_RADIUS) + if (nearestMine != null) then + // Spawn Tree of Life near the mine and have it entangle the mine. + // Project the Tree's coordinates from the gold mine, and then snap + // the X and Y values to within minTreeDist of the Gold Mine. + set nearMineLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 650, 0) + set nearMineLoc = MeleeGetLocWithinRect(nearMineLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minTreeDist)) + set tree = CreateUnitAtLoc(whichPlayer, 'etol', nearMineLoc, bj_UNIT_FACING) + call IssueTargetOrder(tree, "entangleinstant", nearestMine) + + // Spawn Wisps at the start location. + set wispLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 320, 0) + set wispLoc = MeleeGetLocWithinRect(wispLoc, GetRectFromCircleBJ(GetUnitLoc(nearestMine), minWispDist)) + set peonX = GetLocationX(wispLoc) + set peonY = GetLocationY(wispLoc) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.15 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 0.58 * unitSpacing, peonY - 1.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be off to the side of the start location. + set heroLoc = MeleeGetProjectedLoc(GetUnitLoc(nearestMine), startLoc, 384, 45) + else + // Spawn Tree of Life at the start location. + call CreateUnitAtLoc(whichPlayer, 'etol', startLoc, bj_UNIT_FACING) + + // Spawn Wisps directly south of the town hall. + set peonX = GetLocationX(startLoc) + set peonY = GetLocationY(startLoc) - 224.00 + call CreateUnit(whichPlayer, 'ewsp', peonX - 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX - 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 0.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 1.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + call CreateUnit(whichPlayer, 'ewsp', peonX + 2.00 * unitSpacing, peonY + 0.00 * unitSpacing, bj_UNIT_FACING) + + // Set random hero spawn point to be just south of the start location. + set heroLoc = Location(peonX, peonY - 2.00 * unitSpacing) + endif + + if (doHeroes) then + // If the "Random Hero" option is set, start the player with a random hero. + // Otherwise, give them a "free hero" token. + if useRandomHero then + call MeleeRandomHeroLoc(whichPlayer, 'Edem', 'Ekee', 'Emoo', 'Ewar', heroLoc) + else + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + endif + + if (doCamera) then + // Center the camera on the initial Wisps. + call SetCameraPositionForPlayer(whichPlayer, peonX, peonY) + call SetCameraQuickPositionForPlayer(whichPlayer, peonX, peonY) + endif +endfunction + +//=========================================================================== +// Starting Units for Players Whose Race is Unknown +// - 12 Sheep, placed randomly around the start location +// +function MeleeStartingUnitsUnknownRace takes player whichPlayer, location startLoc, boolean doHeroes, boolean doCamera, boolean doPreload returns nothing + local integer index + + if (doPreload) then + endif + + set index = 0 + loop + call CreateUnit(whichPlayer, 'nshe', GetLocationX(startLoc) + GetRandomReal(-256, 256), GetLocationY(startLoc) + GetRandomReal(-256, 256), GetRandomReal(0, 360)) + set index = index + 1 + exitwhen index == 12 + endloop + + if (doHeroes) then + // Give them a "free hero" token, out of pity. + call SetPlayerState(whichPlayer, PLAYER_STATE_RESOURCE_HERO_TOKENS, bj_MELEE_STARTING_HERO_TOKENS) + endif + + if (doCamera) then + // Center the camera on the initial sheep. + call SetCameraPositionLocForPlayer(whichPlayer, startLoc) + call SetCameraQuickPositionLocForPlayer(whichPlayer, startLoc) + endif +endfunction + +//=========================================================================== +function MeleeStartingUnits takes nothing returns nothing + local integer index + local player indexPlayer + local location indexStartLoc + local race indexRace + + call Preloader( "scripts\\SharedMelee.pld" ) + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexStartLoc = GetStartLocationLoc(GetPlayerStartLocation(indexPlayer)) + set indexRace = GetPlayerRace(indexPlayer) + + // Create initial race-specific starting units + if (indexRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_ORC) then + call MeleeStartingUnitsOrc(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(indexPlayer, indexStartLoc, true, true, true) + elseif (indexRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(indexPlayer, indexStartLoc, true, true, true) + else + call MeleeStartingUnitsUnknownRace(indexPlayer, indexStartLoc, true, true, true) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + +endfunction + +//=========================================================================== +function MeleeStartingUnitsForPlayer takes race whichRace, player whichPlayer, location loc, boolean doHeroes returns nothing + // Create initial race-specific starting units + if (whichRace == RACE_HUMAN) then + call MeleeStartingUnitsHuman(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_ORC) then + call MeleeStartingUnitsOrc(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_UNDEAD) then + call MeleeStartingUnitsUndead(whichPlayer, loc, doHeroes, false, false) + elseif (whichRace == RACE_NIGHTELF) then + call MeleeStartingUnitsNightElf(whichPlayer, loc, doHeroes, false, false) + else + // Unrecognized race - ignore the request. + endif +endfunction + + + +//*************************************************************************** +//* +//* Melee Template Starting AI Scripts +//* +//*************************************************************************** + +//=========================================================================== +function PickMeleeAI takes player num, string s1, string s2, string s3 returns nothing + local integer pick + + // easy difficulty never uses any custom AI scripts + // that are designed to be a bit more challenging + // + if GetAIDifficulty(num) == AI_DIFFICULTY_NEWBIE then + call StartMeleeAI(num,s1) + return + endif + + if s2 == null then + set pick = 1 + elseif s3 == null then + set pick = GetRandomInt(1,2) + else + set pick = GetRandomInt(1,3) + endif + + if pick == 1 then + call StartMeleeAI(num,s1) + elseif pick == 2 then + call StartMeleeAI(num,s2) + else + call StartMeleeAI(num,s3) + endif +endfunction + +//=========================================================================== +function MeleeStartingAI takes nothing returns nothing + local integer index + local player indexPlayer + local race indexRace + + set index = 0 + loop + set indexPlayer = Player(index) + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set indexRace = GetPlayerRace(indexPlayer) + if (GetPlayerController(indexPlayer) == MAP_CONTROL_COMPUTER) then + // Run a race-specific melee AI script. + if (indexRace == RACE_HUMAN) then + call PickMeleeAI(indexPlayer, "human.ai", null, null) + elseif (indexRace == RACE_ORC) then + call PickMeleeAI(indexPlayer, "orc.ai", null, null) + elseif (indexRace == RACE_UNDEAD) then + call PickMeleeAI(indexPlayer, "undead.ai", null, null) + call RecycleGuardPosition(bj_ghoul[index]) + elseif (indexRace == RACE_NIGHTELF) then + call PickMeleeAI(indexPlayer, "elf.ai", null, null) + else + // Unrecognized race. + endif + call ShareEverythingWithTeamAI(indexPlayer) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +function LockGuardPosition takes unit targ returns nothing + call SetUnitCreepGuard(targ,true) +endfunction + + +//*************************************************************************** +//* +//* Melee Template Victory / Defeat Conditions +//* +//*************************************************************************** + +//=========================================================================== +function MeleePlayerIsOpponent takes integer playerIndex, integer opponentIndex returns boolean + local player thePlayer = Player(playerIndex) + local player theOpponent = Player(opponentIndex) + + // The player himself is not an opponent. + if (playerIndex == opponentIndex) then + return false + endif + + // Unused player slots are not opponents. + if (GetPlayerSlotState(theOpponent) != PLAYER_SLOT_STATE_PLAYING) then + return false + endif + + // Players who are already defeated are not opponents. + if (bj_meleeDefeated[opponentIndex]) then + return false + endif + + // Allied players with allied victory set are not opponents. + if GetPlayerAlliance(thePlayer, theOpponent, ALLIANCE_PASSIVE) then + if GetPlayerAlliance(theOpponent, thePlayer, ALLIANCE_PASSIVE) then + if (GetPlayerState(thePlayer, PLAYER_STATE_ALLIED_VICTORY) == 1) then + if (GetPlayerState(theOpponent, PLAYER_STATE_ALLIED_VICTORY) == 1) then + return false + endif + endif + endif + endif + + return true +endfunction + +//=========================================================================== +// Count buildings currently owned by all allies, including the player themself. +// +function MeleeGetAllyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local integer buildingCount + local player indexPlayer + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set buildingCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + // uncomment to cause defeat even if you have control of ally structures, but yours have been nixed + //if (PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex]) then + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set buildingCount = buildingCount + GetPlayerStructureCount(indexPlayer, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return buildingCount +endfunction + +//=========================================================================== +// Count allies, excluding dead players and the player themself. +// +function MeleeGetAllyCount takes player whichPlayer returns integer + local integer playerIndex + local integer playerCount + local player indexPlayer + + // Count the number of not-yet-defeated co-allies. + set playerCount = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if PlayersAreCoAllied(whichPlayer, indexPlayer) and not bj_meleeDefeated[playerIndex] and (whichPlayer != indexPlayer) then + set playerCount = playerCount + 1 + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return playerCount +endfunction + +//=========================================================================== +// Counts key structures owned by a player and his or her allies, including +// structures currently upgrading or under construction. +// +// Key structures: Town Hall, Great Hall, Tree of Life, Necropolis +// +function MeleeGetAllyKeyStructureCount takes player whichPlayer returns integer + local integer playerIndex + local player indexPlayer + local integer keyStructs + + // Count the number of buildings controlled by all not-yet-defeated co-allies. + set keyStructs = 0 + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (PlayersAreCoAllied(whichPlayer, indexPlayer)) then + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "townhall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "greathall", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "treeoflife", true, true) + set keyStructs = keyStructs + GetPlayerTypedUnitCount(indexPlayer, "necropolis", true, true) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + return keyStructs +endfunction + +//=========================================================================== +// Enum: Draw out a specific player. +// +function MeleeDoDrawEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_TIE, false) +endfunction + +//=========================================================================== +// Enum: Victory out a specific player. +// +function MeleeDoVictoryEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + local integer playerIndex = GetPlayerId(thePlayer) + + if (not bj_meleeVictoried[playerIndex]) then + set bj_meleeVictoried[playerIndex] = true + call CachePlayerHeroData(thePlayer) + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_VICTORY, false) + endif +endfunction + +//=========================================================================== +// Defeat out a specific player. +// +function MeleeDoDefeat takes player whichPlayer returns nothing + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, false) +endfunction + +//=========================================================================== +// Enum: Defeat out a specific player. +// +function MeleeDoDefeatEnum takes nothing returns nothing + local player thePlayer = GetEnumPlayer() + + // needs to happen before ownership change + call CachePlayerHeroData(thePlayer) + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoDefeat(thePlayer) +endfunction + +//=========================================================================== +// A specific player left the game. +// +function MeleeDoLeave takes player whichPlayer returns nothing + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + call GameOverDialogBJ( whichPlayer, true ) + else + set bj_meleeDefeated[GetPlayerId(whichPlayer)] = true + call RemovePlayerPreserveUnitsBJ(whichPlayer, PLAYER_GAME_RESULT_DEFEAT, true) + endif +endfunction + +//=========================================================================== +// Remove all observers +// +function MeleeRemoveObservers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + + // Give all observers the game over dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (IsPlayerObserver(indexPlayer)) then + call RemovePlayerPreserveUnitsBJ(indexPlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Test all players to determine if a team has won. For a team to win, all +// remaining (read: undefeated) players need to be co-allied with all other +// remaining players. If even one player is not allied towards another, +// everyone must be denied victory. +// +function MeleeCheckForVictors takes nothing returns force + local integer playerIndex + local integer opponentIndex + local force opponentlessPlayers = CreateForce() + local boolean gameOver = false + + // Check to see if any players have opponents remaining. + set playerIndex = 0 + loop + if (not bj_meleeDefeated[playerIndex]) then + // Determine whether or not this player has any remaining opponents. + set opponentIndex = 0 + loop + // If anyone has an opponent, noone can be victorious yet. + if MeleePlayerIsOpponent(playerIndex, opponentIndex) then + return CreateForce() + endif + + set opponentIndex = opponentIndex + 1 + exitwhen opponentIndex == bj_MAX_PLAYERS + endloop + + // Keep track of each opponentless player so that we can give + // them a victory later. + call ForceAddPlayer(opponentlessPlayers, Player(playerIndex)) + set gameOver = true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Set the game over global flag + set bj_meleeGameOver = gameOver + + return opponentlessPlayers +endfunction + +//=========================================================================== +// Test each player to determine if anyone has been defeated. +// +function MeleeCheckForLosersAndVictors takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force defeatedPlayers = CreateForce() + local force victoriousPlayers + local boolean gameOver = false + + // If the game is already over, do nothing + if (bj_meleeGameOver) then + return + endif + + // If the game was disconnected then it is over, in this case we + // don't want to report results for anyone as they will most likely + // conflict with the actual game results + if (GetIntegerGameState(GAME_STATE_DISCONNECTED) != 0) then + set bj_meleeGameOver = true + return + endif + + // Check each player to see if he or she has been defeated yet. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + if (not bj_meleeDefeated[playerIndex] and not bj_meleeVictoried[playerIndex]) then + //call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, 60, "Player"+I2S(playerIndex)+" has "+I2S(MeleeGetAllyStructureCount(indexPlayer))+" ally buildings.") + if (MeleeGetAllyStructureCount(indexPlayer) <= 0) then + + // Keep track of each defeated player so that we can give + // them a defeat later. + call ForceAddPlayer(defeatedPlayers, Player(playerIndex)) + + // Set their defeated flag now so MeleeCheckForVictors + // can detect victors. + set bj_meleeDefeated[playerIndex] = true + endif + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Now that the defeated flags are set, check if there are any victors + set victoriousPlayers = MeleeCheckForVictors() + + // Defeat all defeated players + call ForForce(defeatedPlayers, function MeleeDoDefeatEnum) + + // Give victory to all victorious players + call ForForce(victoriousPlayers, function MeleeDoVictoryEnum) + + // If the game is over we should remove all observers + if (bj_meleeGameOver) then + call MeleeRemoveObservers() + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X or be revealed" message. +// +function MeleeGetCrippledWarningMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_WARNING_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_WARNING_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_WARNING_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_WARNING_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledTimerMessage takes player whichPlayer returns string + local race r = GetPlayerRace(whichPlayer) + + if (r == RACE_HUMAN) then + return GetLocalizedString("CRIPPLE_TIMER_HUMAN") + elseif (r == RACE_ORC) then + return GetLocalizedString("CRIPPLE_TIMER_ORC") + elseif (r == RACE_NIGHTELF) then + return GetLocalizedString("CRIPPLE_TIMER_NIGHTELF") + elseif (r == RACE_UNDEAD) then + return GetLocalizedString("CRIPPLE_TIMER_UNDEAD") + else + // Unrecognized Race + return "" + endif +endfunction + +//=========================================================================== +// Returns a race-specific "build X" label for cripple timers. +// +function MeleeGetCrippledRevealedMessage takes player whichPlayer returns string + return GetLocalizedString("CRIPPLE_REVEALING_PREFIX") + GetPlayerName(whichPlayer) + GetLocalizedString("CRIPPLE_REVEALING_POSTFIX") +endfunction + +//=========================================================================== +function MeleeExposePlayer takes player whichPlayer, boolean expose returns nothing + local integer playerIndex + local player indexPlayer + local force toExposeTo = CreateForce() + + call CripplePlayer( whichPlayer, toExposeTo, false ) + + set bj_playerIsExposed[GetPlayerId(whichPlayer)] = expose + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if (not PlayersAreCoAllied(whichPlayer, indexPlayer)) then + call ForceAddPlayer( toExposeTo, indexPlayer ) + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call CripplePlayer( whichPlayer, toExposeTo, expose ) + call DestroyForce(toExposeTo) +endfunction + +//=========================================================================== +function MeleeExposeAllPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local integer playerIndex2 + local player indexPlayer2 + local force toExposeTo = CreateForce() + + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + + call ForceClear( toExposeTo ) + call CripplePlayer( indexPlayer, toExposeTo, false ) + + set playerIndex2 = 0 + loop + set indexPlayer2 = Player(playerIndex2) + + if playerIndex != playerIndex2 then + if (not PlayersAreCoAllied(indexPlayer, indexPlayer2)) then + call ForceAddPlayer( toExposeTo, indexPlayer2 ) + endif + endif + + set playerIndex2 = playerIndex2 + 1 + exitwhen playerIndex2 == bj_MAX_PLAYERS + endloop + + call CripplePlayer( indexPlayer, toExposeTo, true ) + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + call DestroyForce( toExposeTo ) +endfunction + +//=========================================================================== +function MeleeCrippledPlayerTimeout takes nothing returns nothing + local timer expiredTimer = GetExpiredTimer() + local integer playerIndex + local player exposedPlayer + + // Determine which player's timer expired. + set playerIndex = 0 + loop + if (bj_crippledTimer[playerIndex] == expiredTimer) then + exitwhen true + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + if (playerIndex == bj_MAX_PLAYERS) then + return + endif + set exposedPlayer = Player(playerIndex) + + if (GetLocalPlayer() == exposedPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + // Display a text message to all players, explaining the exposure. + call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledRevealedMessage(exposedPlayer)) + + // Expose the player. + call MeleeExposePlayer(exposedPlayer, true) +endfunction + +//=========================================================================== +function MeleePlayerIsCrippled takes player whichPlayer returns boolean + local integer allyStructures = MeleeGetAllyStructureCount(whichPlayer) + local integer allyKeyStructures = MeleeGetAllyKeyStructureCount(whichPlayer) + + // Dead teams are not considered to be crippled. + return (allyStructures > 0) and (allyKeyStructures <= 0) +endfunction + +//=========================================================================== +// Test each player to determine if anyone has become crippled. +// +function MeleeCheckForCrippledPlayers takes nothing returns nothing + local integer playerIndex + local player indexPlayer + local force crippledPlayers = CreateForce() + local boolean isNowCrippled + local race indexRace + + // The "finish soon" exposure of all players overrides any "crippled" exposure + if bj_finishSoonAllExposed then + return + endif + + // Check each player to see if he or she has been crippled or uncrippled. + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + set isNowCrippled = MeleePlayerIsCrippled(indexPlayer) + + if (not bj_playerIsCrippled[playerIndex] and isNowCrippled) then + + // Player became crippled; start their cripple timer. + set bj_playerIsCrippled[playerIndex] = true + call TimerStart(bj_crippledTimer[playerIndex], bj_MELEE_CRIPPLE_TIMEOUT, false, function MeleeCrippledPlayerTimeout) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Show the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], true) + + // Display a warning message. + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, MeleeGetCrippledWarningMessage(indexPlayer)) + endif + + elseif (bj_playerIsCrippled[playerIndex] and not isNowCrippled) then + + // Player became uncrippled; stop their cripple timer. + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window for this player. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + + // Display a confirmation message if the player's team is still alive. + if (MeleeGetAllyStructureCount(indexPlayer) > 0) then + if (bj_playerIsExposed[playerIndex]) then + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNREVEALED")) + else + call DisplayTimedTextToPlayer(indexPlayer, 0, 0, bj_MELEE_CRIPPLE_MSG_DURATION, GetLocalizedString("CRIPPLE_UNCRIPPLED")) + endif + endif + endif + + // If the player granted shared vision, deny that vision now. + call MeleeExposePlayer(indexPlayer, false) + + endif + + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Determine if the lost unit should result in any defeats or victories. +// +function MeleeCheckLostUnit takes unit lostUnit returns nothing + local player lostUnitOwner = GetOwningPlayer(lostUnit) + + // We only need to check for mortality if this was the last building. + if (GetPlayerStructureCount(lostUnitOwner, true) <= 0) then + call MeleeCheckForLosersAndVictors() + endif + + // Check if the lost unit has crippled or uncrippled the player. + // (A team with 0 units is dead, and thus considered uncrippled.) + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +// Determine if the gained unit should result in any defeats, victories, +// or cripple-status changes. +// +function MeleeCheckAddedUnit takes unit addedUnit returns nothing + local player addedUnitOwner = GetOwningPlayer(addedUnit) + + // If the player was crippled, this unit may have uncrippled him/her. + if (bj_playerIsCrippled[GetPlayerId(addedUnitOwner)]) then + call MeleeCheckForCrippledPlayers() + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionConstructCancel takes nothing returns nothing + call MeleeCheckLostUnit(GetCancelledStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitDeath takes nothing returns nothing + if (IsUnitType(GetDyingUnit(), UNIT_TYPE_STRUCTURE)) then + call MeleeCheckLostUnit(GetDyingUnit()) + endif +endfunction + +//=========================================================================== +function MeleeTriggerActionUnitConstructionStart takes nothing returns nothing + call MeleeCheckAddedUnit(GetConstructingStructure()) +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerDefeated takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + call CachePlayerHeroData(thePlayer) + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + if (not bj_meleeDefeated[GetPlayerId(thePlayer)]) then + call MeleeDoDefeat(thePlayer) + endif + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionPlayerLeft takes nothing returns nothing + local player thePlayer = GetTriggerPlayer() + + // Just show game over for observers when they leave + if (IsPlayerObserver(thePlayer)) then + call RemovePlayerPreserveUnitsBJ(thePlayer, PLAYER_GAME_RESULT_NEUTRAL, false) + return + endif + + call CachePlayerHeroData(thePlayer) + + // This is the same as defeat except the player generates the message + // "player left the game" as opposed to "player was defeated". + + if (MeleeGetAllyCount(thePlayer) > 0) then + // If at least one ally is still alive and kicking, share units with + // them and proceed with death. + call ShareEverythingWithTeam(thePlayer) + call MeleeDoLeave(thePlayer) + else + // If no living allies remain, swap all units and buildings over to + // neutral_passive and proceed with death. + call MakeUnitsPassiveForTeam(thePlayer) + call MeleeDoLeave(thePlayer) + endif + call MeleeCheckForLosersAndVictors() +endfunction + +//=========================================================================== +function MeleeTriggerActionAllianceChange takes nothing returns nothing + call MeleeCheckForLosersAndVictors() + call MeleeCheckForCrippledPlayers() +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishSoon takes nothing returns nothing + // Note: We may get this trigger multiple times + local integer playerIndex + local player indexPlayer + local real timeRemaining = GetTournamentFinishSoonTimeRemaining() + + if not bj_finishSoonAllExposed then + set bj_finishSoonAllExposed = true + + // Reset all crippled players and their timers, and hide the local crippled timer dialog + set playerIndex = 0 + loop + set indexPlayer = Player(playerIndex) + if bj_playerIsCrippled[playerIndex] then + // Uncripple the player + set bj_playerIsCrippled[playerIndex] = false + call PauseTimer(bj_crippledTimer[playerIndex]) + + if (GetLocalPlayer() == indexPlayer) then + // Use only local code (no net traffic) within this block to avoid desyncs. + + // Hide the timer window. + call TimerDialogDisplay(bj_crippledTimerWindows[playerIndex], false) + endif + + endif + set playerIndex = playerIndex + 1 + exitwhen playerIndex == bj_MAX_PLAYERS + endloop + + // Expose all players + call MeleeExposeAllPlayers() + endif + + // Show the "finish soon" timer dialog and set the real time remaining + call TimerDialogDisplay(bj_finishSoonTimerDialog, true) + call TimerDialogSetRealTimeRemaining(bj_finishSoonTimerDialog, timeRemaining) +endfunction + + +//=========================================================================== +function MeleeWasUserPlayer takes player whichPlayer returns boolean + local playerslotstate slotState + + if (GetPlayerController(whichPlayer) != MAP_CONTROL_USER) then + return false + endif + + set slotState = GetPlayerSlotState(whichPlayer) + + return (slotState == PLAYER_SLOT_STATE_PLAYING or slotState == PLAYER_SLOT_STATE_LEFT) +endfunction + +//=========================================================================== +function MeleeTournamentFinishNowRuleA takes integer multiplier returns nothing + local integer array playerScore + local integer array teamScore + local force array teamForce + local integer teamCount + local integer index + local player indexPlayer + local integer index2 + local player indexPlayer2 + local integer bestTeam + local integer bestScore + local boolean draw + + // Compute individual player scores + set index = 0 + loop + set indexPlayer = Player(index) + if MeleeWasUserPlayer(indexPlayer) then + set playerScore[index] = GetTournamentScore(indexPlayer) + if playerScore[index] <= 0 then + set playerScore[index] = 1 + endif + else + set playerScore[index] = 0 + endif + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Compute team scores and team forces + set teamCount = 0 + set index = 0 + loop + if playerScore[index] != 0 then + set indexPlayer = Player(index) + + set teamScore[teamCount] = 0 + set teamForce[teamCount] = CreateForce() + + set index2 = index + loop + if playerScore[index2] != 0 then + set indexPlayer2 = Player(index2) + + if PlayersAreCoAllied(indexPlayer, indexPlayer2) then + set teamScore[teamCount] = teamScore[teamCount] + playerScore[index2] + call ForceAddPlayer(teamForce[teamCount], indexPlayer2) + set playerScore[index2] = 0 + endif + endif + + set index2 = index2 + 1 + exitwhen index2 == bj_MAX_PLAYERS + endloop + + set teamCount = teamCount + 1 + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // The game is now over + set bj_meleeGameOver = true + + // There should always be at least one team, but continue to work if not + if teamCount != 0 then + + // Find best team score + set bestTeam = -1 + set bestScore = -1 + set index = 0 + loop + if teamScore[index] > bestScore then + set bestTeam = index + set bestScore = teamScore[index] + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Check whether the best team's score is 'multiplier' times better than + // every other team. In the case of multiplier == 1 and exactly equal team + // scores, the first team (which was randomly chosen by the server) will win. + set draw = false + set index = 0 + loop + if index != bestTeam then + if bestScore < (multiplier * teamScore[index]) then + set draw = true + endif + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + if draw then + // Give draw to all players on all teams + set index = 0 + loop + call ForForce(teamForce[index], function MeleeDoDrawEnum) + + set index = index + 1 + exitwhen index == teamCount + endloop + else + // Give defeat to all players on teams other than the best team + set index = 0 + loop + if index != bestTeam then + call ForForce(teamForce[index], function MeleeDoDefeatEnum) + endif + + set index = index + 1 + exitwhen index == teamCount + endloop + + // Give victory to all players on the best team + call ForForce(teamForce[bestTeam], function MeleeDoVictoryEnum) + endif + endif + +endfunction + +//=========================================================================== +function MeleeTriggerTournamentFinishNow takes nothing returns nothing + local integer rule = GetTournamentFinishNowRule() + + // If the game is already over, do nothing + if bj_meleeGameOver then + return + endif + + if (rule == 1) then + // Finals games + call MeleeTournamentFinishNowRuleA(1) + else + // Preliminary games + call MeleeTournamentFinishNowRuleA(3) + endif + + // Since the game is over we should remove all observers + call MeleeRemoveObservers() + +endfunction + +//=========================================================================== +function MeleeInitVictoryDefeat takes nothing returns nothing + local trigger trig + local integer index + local player indexPlayer + + // Create a timer window for the "finish soon" timeout period, it has no timer + // because it is driven by real time (outside of the game state to avoid desyncs) + set bj_finishSoonTimerDialog = CreateTimerDialog(null) + + // Set a trigger to fire when we receive a "finish soon" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_SOON) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishSoon) + + // Set a trigger to fire when we receive a "finish now" game event + set trig = CreateTrigger() + call TriggerRegisterGameEvent(trig, EVENT_GAME_TOURNAMENT_FINISH_NOW) + call TriggerAddAction(trig, function MeleeTriggerTournamentFinishNow) + + // Set up each player's mortality code. + set index = 0 + loop + set indexPlayer = Player(index) + + // Make sure this player slot is playing. + if (GetPlayerSlotState(indexPlayer) == PLAYER_SLOT_STATE_PLAYING) then + set bj_meleeDefeated[index] = false + set bj_meleeVictoried[index] = false + + // Create a timer and timer window in case the player is crippled. + set bj_playerIsCrippled[index] = false + set bj_playerIsExposed[index] = false + set bj_crippledTimer[index] = CreateTimer() + set bj_crippledTimerWindows[index] = CreateTimerDialog(bj_crippledTimer[index]) + call TimerDialogSetTitle(bj_crippledTimerWindows[index], MeleeGetCrippledTimerMessage(indexPlayer)) + + // Set a trigger to fire whenever a building is cancelled for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL, null) + call TriggerAddAction(trig, function MeleeTriggerActionConstructCancel) + + // Set a trigger to fire whenever a unit dies for this player. + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_DEATH, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitDeath) + + // Set a trigger to fire whenever a unit begins construction for this player + set trig = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(trig, indexPlayer, EVENT_PLAYER_UNIT_CONSTRUCT_START, null) + call TriggerAddAction(trig, function MeleeTriggerActionUnitConstructionStart) + + // Set a trigger to fire whenever this player defeats-out + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_DEFEAT) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerDefeated) + + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + + // Set a trigger to fire whenever this player changes his/her alliances. + set trig = CreateTrigger() + call TriggerRegisterPlayerAllianceChange(trig, indexPlayer, ALLIANCE_PASSIVE) + call TriggerRegisterPlayerStateEvent(trig, indexPlayer, PLAYER_STATE_ALLIED_VICTORY, EQUAL, 1) + call TriggerAddAction(trig, function MeleeTriggerActionAllianceChange) + else + set bj_meleeDefeated[index] = true + set bj_meleeVictoried[index] = false + + // Handle leave events for observers + if (IsPlayerObserver(indexPlayer)) then + // Set a trigger to fire whenever this player leaves + set trig = CreateTrigger() + call TriggerRegisterPlayerEvent(trig, indexPlayer, EVENT_PLAYER_LEAVE) + call TriggerAddAction(trig, function MeleeTriggerActionPlayerLeft) + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + + // Test for victory / defeat at startup, in case the user has already won / lost. + // Allow for a short time to pass first, so that the map can finish loading. + call TimerStart(CreateTimer(), 2.0, false, function MeleeTriggerActionAllianceChange) +endfunction + + + +//*************************************************************************** +//* +//* Player Slot Availability +//* +//*************************************************************************** + +//=========================================================================== +function CheckInitPlayerSlotAvailability takes nothing returns nothing + local integer index + + if (not bj_slotControlReady) then + set index = 0 + loop + set bj_slotControlUsed[index] = false + set bj_slotControl[index] = MAP_CONTROL_USER + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop + set bj_slotControlReady = true + endif +endfunction + +//=========================================================================== +function SetPlayerSlotAvailable takes player whichPlayer, mapcontrol control returns nothing + local integer playerIndex = GetPlayerId(whichPlayer) + + call CheckInitPlayerSlotAvailability() + set bj_slotControlUsed[playerIndex] = true + set bj_slotControl[playerIndex] = control +endfunction + + + +//*************************************************************************** +//* +//* Generic Template Player-slot Initialization +//* +//*************************************************************************** + +//=========================================================================== +function TeamInitPlayerSlots takes integer teamCount returns nothing + local integer index + local player indexPlayer + local integer team + + call SetTeams(teamCount) + + call CheckInitPlayerSlotAvailability() + set index = 0 + set team = 0 + loop + if (bj_slotControlUsed[index]) then + set indexPlayer = Player(index) + call SetPlayerTeam( indexPlayer, team ) + set team = team + 1 + if (team >= teamCount) then + set team = 0 + endif + endif + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +function MeleeInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function FFAInitPlayerSlots takes nothing returns nothing + call TeamInitPlayerSlots(bj_MAX_PLAYERS) +endfunction + +//=========================================================================== +function OneOnOneInitPlayerSlots takes nothing returns nothing + // Limit the game to 2 players. + call SetTeams(2) + call SetPlayers(2) + call TeamInitPlayerSlots(2) +endfunction + +//=========================================================================== +function InitGenericPlayerSlots takes nothing returns nothing + local gametype gType = GetGameTypeSelected() + + if (gType == GAME_TYPE_MELEE) then + call MeleeInitPlayerSlots() + elseif (gType == GAME_TYPE_FFA) then + call FFAInitPlayerSlots() + elseif (gType == GAME_TYPE_USE_MAP_SETTINGS) then + // Do nothing; the map-specific script handles this. + elseif (gType == GAME_TYPE_ONE_ON_ONE) then + call OneOnOneInitPlayerSlots() + elseif (gType == GAME_TYPE_TWO_TEAM_PLAY) then + call TeamInitPlayerSlots(2) + elseif (gType == GAME_TYPE_THREE_TEAM_PLAY) then + call TeamInitPlayerSlots(3) + elseif (gType == GAME_TYPE_FOUR_TEAM_PLAY) then + call TeamInitPlayerSlots(4) + else + // Unrecognized Game Type + endif +endfunction + + + +//*************************************************************************** +//* +//* Blizzard.j Initialization +//* +//*************************************************************************** + +//=========================================================================== +function SetDNCSoundsDawn takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_dawnSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDusk takes nothing returns nothing + if bj_useDawnDuskSounds then + call StartSound(bj_duskSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsDay takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD >= bj_TOD_DAWN and ToD < bj_TOD_DUSK) and not bj_dncIsDaytime then + set bj_dncIsDaytime = true + + // change ambient sounds + call StopSound(bj_nightAmbientSound, false, true) + call StartSound(bj_dayAmbientSound) + endif +endfunction + +//=========================================================================== +function SetDNCSoundsNight takes nothing returns nothing + local real ToD = GetTimeOfDay() + + if (ToD < bj_TOD_DAWN or ToD >= bj_TOD_DUSK) and bj_dncIsDaytime then + set bj_dncIsDaytime = false + + // change ambient sounds + call StopSound(bj_dayAmbientSound, false, true) + call StartSound(bj_nightAmbientSound) + endif +endfunction + +//=========================================================================== +function InitDNCSounds takes nothing returns nothing + // Create sounds to be played at dawn and dusk. + set bj_dawnSound = CreateSoundFromLabel("RoosterSound", false, false, false, 10000, 10000) + set bj_duskSound = CreateSoundFromLabel("WolfSound", false, false, false, 10000, 10000) + + // Set up triggers to respond to dawn and dusk. + set bj_dncSoundsDawn = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDawn, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DAWN) + call TriggerAddAction(bj_dncSoundsDawn, function SetDNCSoundsDawn) + + set bj_dncSoundsDusk = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDusk, GAME_STATE_TIME_OF_DAY, EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDusk, function SetDNCSoundsDusk) + + // Set up triggers to respond to changes from day to night or vice-versa. + set bj_dncSoundsDay = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsDay, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsDay, function SetDNCSoundsDay) + + set bj_dncSoundsNight = CreateTrigger() + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, LESS_THAN, bj_TOD_DAWN) + call TriggerRegisterGameStateEvent(bj_dncSoundsNight, GAME_STATE_TIME_OF_DAY, GREATER_THAN_OR_EQUAL, bj_TOD_DUSK) + call TriggerAddAction(bj_dncSoundsNight, function SetDNCSoundsNight) +endfunction + +//=========================================================================== +function InitBlizzardGlobals takes nothing returns nothing + local integer index + local integer userControlledPlayers + local version v + + // Init filter function vars + set filterIssueHauntOrderAtLocBJ = Filter(function IssueHauntOrderAtLocBJFilter) + set filterEnumDestructablesInCircleBJ = Filter(function EnumDestructablesInCircleBJFilter) + set filterGetUnitsInRectOfPlayer = Filter(function GetUnitsInRectOfPlayerFilter) + set filterGetUnitsOfTypeIdAll = Filter(function GetUnitsOfTypeIdAllFilter) + set filterGetUnitsOfPlayerAndTypeId = Filter(function GetUnitsOfPlayerAndTypeIdFilter) + set filterMeleeTrainedUnitIsHeroBJ = Filter(function MeleeTrainedUnitIsHeroBJFilter) + set filterLivingPlayerUnitsOfTypeId = Filter(function LivingPlayerUnitsOfTypeIdFilter) + + // Init force presets + set index = 0 + loop + exitwhen index == bj_MAX_PLAYER_SLOTS + set bj_FORCE_PLAYER[index] = CreateForce() + call ForceAddPlayer(bj_FORCE_PLAYER[index], Player(index)) + set index = index + 1 + endloop + + set bj_FORCE_ALL_PLAYERS = CreateForce() + call ForceEnumPlayers(bj_FORCE_ALL_PLAYERS, null) + + // Init Cinematic Mode history + set bj_cineModePriorSpeed = GetGameSpeed() + set bj_cineModePriorFogSetting = IsFogEnabled() + set bj_cineModePriorMaskSetting = IsFogMaskEnabled() + + // Init Trigger Queue + set index = 0 + loop + exitwhen index >= bj_MAX_QUEUED_TRIGGERS + set bj_queuedExecTriggers[index] = null + set bj_queuedExecUseConds[index] = false + set index = index + 1 + endloop + + // Init singleplayer check + set bj_isSinglePlayer = false + set userControlledPlayers = 0 + set index = 0 + loop + exitwhen index >= bj_MAX_PLAYERS + if (GetPlayerController(Player(index)) == MAP_CONTROL_USER and GetPlayerSlotState(Player(index)) == PLAYER_SLOT_STATE_PLAYING) then + set userControlledPlayers = userControlledPlayers + 1 + endif + set index = index + 1 + endloop + set bj_isSinglePlayer = (userControlledPlayers == 1) + + // Init sounds + //set bj_pingMinimapSound = CreateSoundFromLabel("AutoCastButtonClick", false, false, false, 10000, 10000) + set bj_rescueSound = CreateSoundFromLabel("Rescue", false, false, false, 10000, 10000) + set bj_questDiscoveredSound = CreateSoundFromLabel("QuestNew", false, false, false, 10000, 10000) + set bj_questUpdatedSound = CreateSoundFromLabel("QuestUpdate", false, false, false, 10000, 10000) + set bj_questCompletedSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_questFailedSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + set bj_questHintSound = CreateSoundFromLabel("Hint", false, false, false, 10000, 10000) + set bj_questSecretSound = CreateSoundFromLabel("SecretFound", false, false, false, 10000, 10000) + set bj_questItemAcquiredSound = CreateSoundFromLabel("ItemReward", false, false, false, 10000, 10000) + set bj_questWarningSound = CreateSoundFromLabel("Warning", false, false, false, 10000, 10000) + set bj_victoryDialogSound = CreateSoundFromLabel("QuestCompleted", false, false, false, 10000, 10000) + set bj_defeatDialogSound = CreateSoundFromLabel("QuestFailed", false, false, false, 10000, 10000) + + // Init corpse creation triggers. + call DelayedSuspendDecayCreate() + + // Init version-specific data + set v = VersionGet() + if (v == VERSION_REIGN_OF_CHAOS) then + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V0 + else + set bj_MELEE_MAX_TWINKED_HEROES = bj_MELEE_MAX_TWINKED_HEROES_V1 + endif +endfunction + +//=========================================================================== +function InitQueuedTriggers takes nothing returns nothing + set bj_queuedExecTimeout = CreateTrigger() + call TriggerRegisterTimerExpireEvent(bj_queuedExecTimeout, bj_queuedExecTimeoutTimer) + call TriggerAddAction(bj_queuedExecTimeout, function QueuedTriggerDoneBJ) +endfunction + +//=========================================================================== +function InitMapRects takes nothing returns nothing + set bj_mapInitialPlayableArea = Rect(GetCameraBoundMinX()-GetCameraMargin(CAMERA_MARGIN_LEFT), GetCameraBoundMinY()-GetCameraMargin(CAMERA_MARGIN_BOTTOM), GetCameraBoundMaxX()+GetCameraMargin(CAMERA_MARGIN_RIGHT), GetCameraBoundMaxY()+GetCameraMargin(CAMERA_MARGIN_TOP)) + set bj_mapInitialCameraBounds = GetCurrentCameraBoundsMapRectBJ() +endfunction + +//=========================================================================== +function InitSummonableCaps takes nothing returns nothing + local integer index + + set index = 0 + loop + // upgraded units + // Note: Only do this if the corresponding upgrade is not yet researched + // Barrage - Siege Engines + if (not GetPlayerTechResearched(Player(index), 'Rhrt', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'hrtt', 0) + endif + + // Berserker Upgrade - Troll Berserkers + if (not GetPlayerTechResearched(Player(index), 'Robk', true)) then + call SetPlayerTechMaxAllowed(Player(index), 'otbk', 0) + endif + + // max skeletons per player + call SetPlayerTechMaxAllowed(Player(index), 'uske', bj_MAX_SKELETONS) + + set index = index + 1 + exitwhen index == bj_MAX_PLAYERS + endloop +endfunction + +//=========================================================================== +// Update the per-class stock limits. +// +function UpdateStockAvailability takes item whichItem returns nothing + local itemtype iType = GetItemType(whichItem) + local integer iLevel = GetItemLevel(whichItem) + + // Update allowed type/level combinations. + if (iType == ITEM_TYPE_PERMANENT) then + set bj_stockAllowedPermanent[iLevel] = true + elseif (iType == ITEM_TYPE_CHARGED) then + set bj_stockAllowedCharged[iLevel] = true + elseif (iType == ITEM_TYPE_ARTIFACT) then + set bj_stockAllowedArtifact[iLevel] = true + else + // Not interested in this item type - ignore the item. + endif +endfunction + +//=========================================================================== +// Find a sellable item of the given type and level, and then add it. +// +function UpdateEachStockBuildingEnum takes nothing returns nothing + local integer iteration = 0 + local integer pickedItemId + + loop + set pickedItemId = ChooseRandomItemEx(bj_stockPickedItemType, bj_stockPickedItemLevel) + exitwhen IsItemIdSellable(pickedItemId) + + // If we get hung up on an entire class/level combo of unsellable + // items, or a very unlucky series of random numbers, give up. + set iteration = iteration + 1 + if (iteration > bj_STOCK_MAX_ITERATIONS) then + return + endif + endloop + call AddItemToStock(GetEnumUnit(), pickedItemId, 1, 1) +endfunction + +//=========================================================================== +function UpdateEachStockBuilding takes itemtype iType, integer iLevel returns nothing + local group g + + set bj_stockPickedItemType = iType + set bj_stockPickedItemLevel = iLevel + + set g = CreateGroup() + call GroupEnumUnitsOfType(g, "marketplace", null) + call ForGroup(g, function UpdateEachStockBuildingEnum) + call DestroyGroup(g) +endfunction + +//=========================================================================== +// Update stock inventory. +// +function PerformStockUpdates takes nothing returns nothing + local integer pickedItemId + local itemtype pickedItemType + local integer pickedItemLevel = 0 + local integer allowedCombinations = 0 + local integer iLevel + + // Give each type/level combination a chance of being picked. + set iLevel = 1 + loop + if (bj_stockAllowedPermanent[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_PERMANENT + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedCharged[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_CHARGED + set pickedItemLevel = iLevel + endif + endif + if (bj_stockAllowedArtifact[iLevel]) then + set allowedCombinations = allowedCombinations + 1 + if (GetRandomInt(1, allowedCombinations) == 1) then + set pickedItemType = ITEM_TYPE_ARTIFACT + set pickedItemLevel = iLevel + endif + endif + + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Make sure we found a valid item type to add. + if (allowedCombinations == 0) then + return + endif + + call UpdateEachStockBuilding(pickedItemType, pickedItemLevel) +endfunction + +//=========================================================================== +// Perform the first update, and then arrange future updates. +// +function StartStockUpdates takes nothing returns nothing + call PerformStockUpdates() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INTERVAL, true, function PerformStockUpdates) +endfunction + +//=========================================================================== +function RemovePurchasedItem takes nothing returns nothing + call RemoveItemFromStock(GetSellingUnit(), GetItemTypeId(GetSoldItem())) +endfunction + +//=========================================================================== +function InitNeutralBuildings takes nothing returns nothing + local integer iLevel + + // Chart of allowed stock items. + set iLevel = 0 + loop + set bj_stockAllowedPermanent[iLevel] = false + set bj_stockAllowedCharged[iLevel] = false + set bj_stockAllowedArtifact[iLevel] = false + set iLevel = iLevel + 1 + exitwhen iLevel > bj_MAX_ITEM_LEVEL + endloop + + // Limit stock inventory slots. + call SetAllItemTypeSlots(bj_MAX_STOCK_ITEM_SLOTS) + call SetAllUnitTypeSlots(bj_MAX_STOCK_UNIT_SLOTS) + + // Arrange the first update. + set bj_stockUpdateTimer = CreateTimer() + call TimerStart(bj_stockUpdateTimer, bj_STOCK_RESTOCK_INITIAL_DELAY, false, function StartStockUpdates) + + // Set up a trigger to fire whenever an item is sold. + set bj_stockItemPurchased = CreateTrigger() + call TriggerRegisterPlayerUnitEvent(bj_stockItemPurchased, Player(PLAYER_NEUTRAL_PASSIVE), EVENT_PLAYER_UNIT_SELL_ITEM, null) + call TriggerAddAction(bj_stockItemPurchased, function RemovePurchasedItem) +endfunction + +//=========================================================================== +function MarkGameStarted takes nothing returns nothing + set bj_gameStarted = true + call DestroyTimer(bj_gameStartedTimer) +endfunction + +//=========================================================================== +function DetectGameStarted takes nothing returns nothing + set bj_gameStartedTimer = CreateTimer() + call TimerStart(bj_gameStartedTimer, bj_GAME_STARTED_THRESHOLD, false, function MarkGameStarted) +endfunction + +//=========================================================================== +function InitBlizzard takes nothing returns nothing + // Set up the Neutral Victim player slot, to torture the abandoned units + // of defeated players. Since some triggers expect this player slot to + // exist, this is performed for all maps. + call ConfigureNeutralVictim() + + call InitBlizzardGlobals() + call InitQueuedTriggers() + call InitRescuableBehaviorBJ() + call InitDNCSounds() + call InitMapRects() + call InitSummonableCaps() + call InitNeutralBuildings() + call DetectGameStarted() +endfunction + + + +//*************************************************************************** +//* +//* Random distribution +//* +//* Used to select a random object from a given distribution of chances +//* +//* - RandomDistReset clears the distribution list +//* +//* - RandomDistAddItem adds a new object to the distribution list +//* with a given identifier and an integer chance to be chosen +//* +//* - RandomDistChoose will use the current distribution list to choose +//* one of the objects randomly based on the chance distribution +//* +//* Note that the chances are effectively normalized by their sum, +//* so only the relative values of each chance are important +//* +//*************************************************************************** + +//=========================================================================== +function RandomDistReset takes nothing returns nothing + set bj_randDistCount = 0 +endfunction + +//=========================================================================== +function RandomDistAddItem takes integer inID, integer inChance returns nothing + set bj_randDistID[bj_randDistCount] = inID + set bj_randDistChance[bj_randDistCount] = inChance + set bj_randDistCount = bj_randDistCount + 1 +endfunction + +//=========================================================================== +function RandomDistChoose takes nothing returns integer + local integer sum = 0 + local integer chance = 0 + local integer index + local integer foundID = -1 + local boolean done + + // No items? + if (bj_randDistCount == 0) then + return -1 + endif + + // Find sum of all chances + set index = 0 + loop + set sum = sum + bj_randDistChance[index] + + set index = index + 1 + exitwhen index == bj_randDistCount + endloop + + // Choose random number within the total range + set chance = GetRandomInt(1, sum) + + // Find ID which corresponds to this chance + set index = 0 + set sum = 0 + set done = false + loop + set sum = sum + bj_randDistChance[index] + + if (chance <= sum) then + set foundID = bj_randDistID[index] + set done = true + endif + + set index = index + 1 + if (index == bj_randDistCount) then + set done = true + endif + + exitwhen done == true + endloop + + return foundID +endfunction + + + +//*************************************************************************** +//* +//* Drop item +//* +//* Makes the given unit drop the given item +//* +//* Note: This could potentially cause problems if the unit is standing +//* right on the edge of an unpathable area and happens to drop the +//* item into the unpathable area where nobody can get it... +//* +//*************************************************************************** + +function UnitDropItem takes unit inUnit, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real unitX + local real unitY + local item droppedItem + + if (inItemID == -1) then + return null + endif + + set unitX = GetUnitX(inUnit) + set unitY = GetUnitY(inUnit) + + set x = GetRandomReal(unitX - radius, unitX + radius) + set y = GetRandomReal(unitY - radius, unitY + radius) + + set droppedItem = CreateItem(inItemID, x, y) + + call SetItemDropID(droppedItem, GetUnitTypeId(inUnit)) + call UpdateStockAvailability(droppedItem) + + return droppedItem +endfunction + +//=========================================================================== +function WidgetDropItem takes widget inWidget, integer inItemID returns item + local real x + local real y + local real radius = 32 + local real widgetX + local real widgetY + + if (inItemID == -1) then + return null + endif + + set widgetX = GetWidgetX(inWidget) + set widgetY = GetWidgetY(inWidget) + + set x = GetRandomReal(widgetX - radius, widgetX + radius) + set y = GetRandomReal(widgetY - radius, widgetY + radius) + + return CreateItem(inItemID, x, y) +endfunction diff --git a/plugin/jasshelper/clijasshelper.exe b/plugin/jasshelper/clijasshelper.exe new file mode 100644 index 0000000..db058cd Binary files /dev/null and b/plugin/jasshelper/clijasshelper.exe differ diff --git a/plugin/jasshelper/common.j b/plugin/jasshelper/common.j new file mode 100644 index 0000000..2672d21 --- /dev/null +++ b/plugin/jasshelper/common.j @@ -0,0 +1,2417 @@ +//============================================================================ +// Native types. All native functions take extended handle types when +// possible to help prevent passing bad values to native functions +// +type agent extends handle // all reference counted objects +type event extends agent // a reference to an event registration +type player extends agent // a single player reference +type widget extends agent // an interactive game object with life +type unit extends widget // a single unit reference +type destructable extends widget +type item extends widget +type ability extends agent +type buff extends ability +type force extends agent +type group extends agent +type trigger extends agent +type triggercondition extends agent +type triggeraction extends handle +type timer extends agent +type location extends agent +type region extends agent +type rect extends agent +type boolexpr extends agent +type sound extends agent +type conditionfunc extends boolexpr +type filterfunc extends boolexpr +type unitpool extends handle +type itempool extends handle +type race extends handle +type alliancetype extends handle +type racepreference extends handle +type gamestate extends handle +type igamestate extends gamestate +type fgamestate extends gamestate +type playerstate extends handle +type playerscore extends handle +type playergameresult extends handle +type unitstate extends handle +type aidifficulty extends handle + +type eventid extends handle +type gameevent extends eventid +type playerevent extends eventid +type playerunitevent extends eventid +type unitevent extends eventid +type limitop extends eventid +type widgetevent extends eventid +type dialogevent extends eventid +type unittype extends handle + +type gamespeed extends handle +type gamedifficulty extends handle +type gametype extends handle +type mapflag extends handle +type mapvisibility extends handle +type mapsetting extends handle +type mapdensity extends handle +type mapcontrol extends handle +type playerslotstate extends handle +type volumegroup extends handle +type camerafield extends handle +type camerasetup extends handle +type playercolor extends handle +type placement extends handle +type startlocprio extends handle +type raritycontrol extends handle +type blendmode extends handle +type texmapflags extends handle +type effect extends agent +type effecttype extends handle +type weathereffect extends handle +type terraindeformation extends handle +type fogstate extends handle +type fogmodifier extends agent +type dialog extends agent +type button extends agent +type quest extends agent +type questitem extends agent +type defeatcondition extends agent +type timerdialog extends agent +type leaderboard extends agent +type multiboard extends agent +type multiboarditem extends agent +type trackable extends agent +type gamecache extends agent +type version extends handle +type itemtype extends handle +type texttag extends handle +type attacktype extends handle +type damagetype extends handle +type weapontype extends handle +type soundtype extends handle +type lightning extends handle +type pathingtype extends handle +type image extends handle +type ubersplat extends handle +type hashtable extends agent + +constant native ConvertRace takes integer i returns race +constant native ConvertAllianceType takes integer i returns alliancetype +constant native ConvertRacePref takes integer i returns racepreference +constant native ConvertIGameState takes integer i returns igamestate +constant native ConvertFGameState takes integer i returns fgamestate +constant native ConvertPlayerState takes integer i returns playerstate +constant native ConvertPlayerScore takes integer i returns playerscore +constant native ConvertPlayerGameResult takes integer i returns playergameresult +constant native ConvertUnitState takes integer i returns unitstate +constant native ConvertAIDifficulty takes integer i returns aidifficulty +constant native ConvertGameEvent takes integer i returns gameevent +constant native ConvertPlayerEvent takes integer i returns playerevent +constant native ConvertPlayerUnitEvent takes integer i returns playerunitevent +constant native ConvertWidgetEvent takes integer i returns widgetevent +constant native ConvertDialogEvent takes integer i returns dialogevent +constant native ConvertUnitEvent takes integer i returns unitevent +constant native ConvertLimitOp takes integer i returns limitop +constant native ConvertUnitType takes integer i returns unittype +constant native ConvertGameSpeed takes integer i returns gamespeed +constant native ConvertPlacement takes integer i returns placement +constant native ConvertStartLocPrio takes integer i returns startlocprio +constant native ConvertGameDifficulty takes integer i returns gamedifficulty +constant native ConvertGameType takes integer i returns gametype +constant native ConvertMapFlag takes integer i returns mapflag +constant native ConvertMapVisibility takes integer i returns mapvisibility +constant native ConvertMapSetting takes integer i returns mapsetting +constant native ConvertMapDensity takes integer i returns mapdensity +constant native ConvertMapControl takes integer i returns mapcontrol +constant native ConvertPlayerColor takes integer i returns playercolor +constant native ConvertPlayerSlotState takes integer i returns playerslotstate +constant native ConvertVolumeGroup takes integer i returns volumegroup +constant native ConvertCameraField takes integer i returns camerafield +constant native ConvertBlendMode takes integer i returns blendmode +constant native ConvertRarityControl takes integer i returns raritycontrol +constant native ConvertTexMapFlags takes integer i returns texmapflags +constant native ConvertFogState takes integer i returns fogstate +constant native ConvertEffectType takes integer i returns effecttype +constant native ConvertVersion takes integer i returns version +constant native ConvertItemType takes integer i returns itemtype +constant native ConvertAttackType takes integer i returns attacktype +constant native ConvertDamageType takes integer i returns damagetype +constant native ConvertWeaponType takes integer i returns weapontype +constant native ConvertSoundType takes integer i returns soundtype +constant native ConvertPathingType takes integer i returns pathingtype + +constant native OrderId takes string orderIdString returns integer +constant native OrderId2String takes integer orderId returns string +constant native UnitId takes string unitIdString returns integer +constant native UnitId2String takes integer unitId returns string + +// Not currently working correctly... +constant native AbilityId takes string abilityIdString returns integer +constant native AbilityId2String takes integer abilityId returns string + +// Looks up the "name" field for any object (unit, item, ability) +constant native GetObjectName takes integer objectId returns string + +globals + +//=================================================== +// Game Constants +//=================================================== + + // pfff + constant boolean FALSE = false + constant boolean TRUE = true + constant integer JASS_MAX_ARRAY_SIZE = 8192 + + constant integer PLAYER_NEUTRAL_PASSIVE = 15 + constant integer PLAYER_NEUTRAL_AGGRESSIVE = 12 + + constant playercolor PLAYER_COLOR_RED = ConvertPlayerColor(0) + constant playercolor PLAYER_COLOR_BLUE = ConvertPlayerColor(1) + constant playercolor PLAYER_COLOR_CYAN = ConvertPlayerColor(2) + constant playercolor PLAYER_COLOR_PURPLE = ConvertPlayerColor(3) + constant playercolor PLAYER_COLOR_YELLOW = ConvertPlayerColor(4) + constant playercolor PLAYER_COLOR_ORANGE = ConvertPlayerColor(5) + constant playercolor PLAYER_COLOR_GREEN = ConvertPlayerColor(6) + constant playercolor PLAYER_COLOR_PINK = ConvertPlayerColor(7) + constant playercolor PLAYER_COLOR_LIGHT_GRAY = ConvertPlayerColor(8) + constant playercolor PLAYER_COLOR_LIGHT_BLUE = ConvertPlayerColor(9) + constant playercolor PLAYER_COLOR_AQUA = ConvertPlayerColor(10) + constant playercolor PLAYER_COLOR_BROWN = ConvertPlayerColor(11) + + constant race RACE_HUMAN = ConvertRace(1) + constant race RACE_ORC = ConvertRace(2) + constant race RACE_UNDEAD = ConvertRace(3) + constant race RACE_NIGHTELF = ConvertRace(4) + constant race RACE_DEMON = ConvertRace(5) + constant race RACE_OTHER = ConvertRace(7) + + constant playergameresult PLAYER_GAME_RESULT_VICTORY = ConvertPlayerGameResult(0) + constant playergameresult PLAYER_GAME_RESULT_DEFEAT = ConvertPlayerGameResult(1) + constant playergameresult PLAYER_GAME_RESULT_TIE = ConvertPlayerGameResult(2) + constant playergameresult PLAYER_GAME_RESULT_NEUTRAL = ConvertPlayerGameResult(3) + + constant alliancetype ALLIANCE_PASSIVE = ConvertAllianceType(0) + constant alliancetype ALLIANCE_HELP_REQUEST = ConvertAllianceType(1) + constant alliancetype ALLIANCE_HELP_RESPONSE = ConvertAllianceType(2) + constant alliancetype ALLIANCE_SHARED_XP = ConvertAllianceType(3) + constant alliancetype ALLIANCE_SHARED_SPELLS = ConvertAllianceType(4) + constant alliancetype ALLIANCE_SHARED_VISION = ConvertAllianceType(5) + constant alliancetype ALLIANCE_SHARED_CONTROL = ConvertAllianceType(6) + constant alliancetype ALLIANCE_SHARED_ADVANCED_CONTROL= ConvertAllianceType(7) + constant alliancetype ALLIANCE_RESCUABLE = ConvertAllianceType(8) + constant alliancetype ALLIANCE_SHARED_VISION_FORCED = ConvertAllianceType(9) + + constant version VERSION_REIGN_OF_CHAOS = ConvertVersion(0) + constant version VERSION_FROZEN_THRONE = ConvertVersion(1) + + constant attacktype ATTACK_TYPE_NORMAL = ConvertAttackType(0) + constant attacktype ATTACK_TYPE_MELEE = ConvertAttackType(1) + constant attacktype ATTACK_TYPE_PIERCE = ConvertAttackType(2) + constant attacktype ATTACK_TYPE_SIEGE = ConvertAttackType(3) + constant attacktype ATTACK_TYPE_MAGIC = ConvertAttackType(4) + constant attacktype ATTACK_TYPE_CHAOS = ConvertAttackType(5) + constant attacktype ATTACK_TYPE_HERO = ConvertAttackType(6) + + constant damagetype DAMAGE_TYPE_UNKNOWN = ConvertDamageType(0) + constant damagetype DAMAGE_TYPE_NORMAL = ConvertDamageType(4) + constant damagetype DAMAGE_TYPE_ENHANCED = ConvertDamageType(5) + constant damagetype DAMAGE_TYPE_FIRE = ConvertDamageType(8) + constant damagetype DAMAGE_TYPE_COLD = ConvertDamageType(9) + constant damagetype DAMAGE_TYPE_LIGHTNING = ConvertDamageType(10) + constant damagetype DAMAGE_TYPE_POISON = ConvertDamageType(11) + constant damagetype DAMAGE_TYPE_DISEASE = ConvertDamageType(12) + constant damagetype DAMAGE_TYPE_DIVINE = ConvertDamageType(13) + constant damagetype DAMAGE_TYPE_MAGIC = ConvertDamageType(14) + constant damagetype DAMAGE_TYPE_SONIC = ConvertDamageType(15) + constant damagetype DAMAGE_TYPE_ACID = ConvertDamageType(16) + constant damagetype DAMAGE_TYPE_FORCE = ConvertDamageType(17) + constant damagetype DAMAGE_TYPE_DEATH = ConvertDamageType(18) + constant damagetype DAMAGE_TYPE_MIND = ConvertDamageType(19) + constant damagetype DAMAGE_TYPE_PLANT = ConvertDamageType(20) + constant damagetype DAMAGE_TYPE_DEFENSIVE = ConvertDamageType(21) + constant damagetype DAMAGE_TYPE_DEMOLITION = ConvertDamageType(22) + constant damagetype DAMAGE_TYPE_SLOW_POISON = ConvertDamageType(23) + constant damagetype DAMAGE_TYPE_SPIRIT_LINK = ConvertDamageType(24) + constant damagetype DAMAGE_TYPE_SHADOW_STRIKE = ConvertDamageType(25) + constant damagetype DAMAGE_TYPE_UNIVERSAL = ConvertDamageType(26) + + constant weapontype WEAPON_TYPE_WHOKNOWS = ConvertWeaponType(0) + constant weapontype WEAPON_TYPE_METAL_LIGHT_CHOP = ConvertWeaponType(1) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_CHOP = ConvertWeaponType(2) + constant weapontype WEAPON_TYPE_METAL_HEAVY_CHOP = ConvertWeaponType(3) + constant weapontype WEAPON_TYPE_METAL_LIGHT_SLICE = ConvertWeaponType(4) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_SLICE = ConvertWeaponType(5) + constant weapontype WEAPON_TYPE_METAL_HEAVY_SLICE = ConvertWeaponType(6) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_BASH = ConvertWeaponType(7) + constant weapontype WEAPON_TYPE_METAL_HEAVY_BASH = ConvertWeaponType(8) + constant weapontype WEAPON_TYPE_METAL_MEDIUM_STAB = ConvertWeaponType(9) + constant weapontype WEAPON_TYPE_METAL_HEAVY_STAB = ConvertWeaponType(10) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_SLICE = ConvertWeaponType(11) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_SLICE = ConvertWeaponType(12) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_SLICE = ConvertWeaponType(13) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_BASH = ConvertWeaponType(14) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_BASH = ConvertWeaponType(15) + constant weapontype WEAPON_TYPE_WOOD_HEAVY_BASH = ConvertWeaponType(16) + constant weapontype WEAPON_TYPE_WOOD_LIGHT_STAB = ConvertWeaponType(17) + constant weapontype WEAPON_TYPE_WOOD_MEDIUM_STAB = ConvertWeaponType(18) + constant weapontype WEAPON_TYPE_CLAW_LIGHT_SLICE = ConvertWeaponType(19) + constant weapontype WEAPON_TYPE_CLAW_MEDIUM_SLICE = ConvertWeaponType(20) + constant weapontype WEAPON_TYPE_CLAW_HEAVY_SLICE = ConvertWeaponType(21) + constant weapontype WEAPON_TYPE_AXE_MEDIUM_CHOP = ConvertWeaponType(22) + constant weapontype WEAPON_TYPE_ROCK_HEAVY_BASH = ConvertWeaponType(23) + + constant pathingtype PATHING_TYPE_ANY = ConvertPathingType(0) + constant pathingtype PATHING_TYPE_WALKABILITY = ConvertPathingType(1) + constant pathingtype PATHING_TYPE_FLYABILITY = ConvertPathingType(2) + constant pathingtype PATHING_TYPE_BUILDABILITY = ConvertPathingType(3) + constant pathingtype PATHING_TYPE_PEONHARVESTPATHING = ConvertPathingType(4) + constant pathingtype PATHING_TYPE_BLIGHTPATHING = ConvertPathingType(5) + constant pathingtype PATHING_TYPE_FLOATABILITY = ConvertPathingType(6) + constant pathingtype PATHING_TYPE_AMPHIBIOUSPATHING = ConvertPathingType(7) + +//=================================================== +// Map Setup Constants +//=================================================== + + constant racepreference RACE_PREF_HUMAN = ConvertRacePref(1) + constant racepreference RACE_PREF_ORC = ConvertRacePref(2) + constant racepreference RACE_PREF_NIGHTELF = ConvertRacePref(4) + constant racepreference RACE_PREF_UNDEAD = ConvertRacePref(8) + constant racepreference RACE_PREF_DEMON = ConvertRacePref(16) + constant racepreference RACE_PREF_RANDOM = ConvertRacePref(32) + constant racepreference RACE_PREF_USER_SELECTABLE = ConvertRacePref(64) + + constant mapcontrol MAP_CONTROL_USER = ConvertMapControl(0) + constant mapcontrol MAP_CONTROL_COMPUTER = ConvertMapControl(1) + constant mapcontrol MAP_CONTROL_RESCUABLE = ConvertMapControl(2) + constant mapcontrol MAP_CONTROL_NEUTRAL = ConvertMapControl(3) + constant mapcontrol MAP_CONTROL_CREEP = ConvertMapControl(4) + constant mapcontrol MAP_CONTROL_NONE = ConvertMapControl(5) + + constant gametype GAME_TYPE_MELEE = ConvertGameType(1) + constant gametype GAME_TYPE_FFA = ConvertGameType(2) + constant gametype GAME_TYPE_USE_MAP_SETTINGS = ConvertGameType(4) + constant gametype GAME_TYPE_BLIZ = ConvertGameType(8) + constant gametype GAME_TYPE_ONE_ON_ONE = ConvertGameType(16) + constant gametype GAME_TYPE_TWO_TEAM_PLAY = ConvertGameType(32) + constant gametype GAME_TYPE_THREE_TEAM_PLAY = ConvertGameType(64) + constant gametype GAME_TYPE_FOUR_TEAM_PLAY = ConvertGameType(128) + + constant mapflag MAP_FOG_HIDE_TERRAIN = ConvertMapFlag(1) + constant mapflag MAP_FOG_MAP_EXPLORED = ConvertMapFlag(2) + constant mapflag MAP_FOG_ALWAYS_VISIBLE = ConvertMapFlag(4) + + constant mapflag MAP_USE_HANDICAPS = ConvertMapFlag(8) + constant mapflag MAP_OBSERVERS = ConvertMapFlag(16) + constant mapflag MAP_OBSERVERS_ON_DEATH = ConvertMapFlag(32) + + constant mapflag MAP_FIXED_COLORS = ConvertMapFlag(128) + + constant mapflag MAP_LOCK_RESOURCE_TRADING = ConvertMapFlag(256) + constant mapflag MAP_RESOURCE_TRADING_ALLIES_ONLY = ConvertMapFlag(512) + + constant mapflag MAP_LOCK_ALLIANCE_CHANGES = ConvertMapFlag(1024) + constant mapflag MAP_ALLIANCE_CHANGES_HIDDEN = ConvertMapFlag(2048) + + constant mapflag MAP_CHEATS = ConvertMapFlag(4096) + constant mapflag MAP_CHEATS_HIDDEN = ConvertMapFlag(8192) + + constant mapflag MAP_LOCK_SPEED = ConvertMapFlag(8192*2) + constant mapflag MAP_LOCK_RANDOM_SEED = ConvertMapFlag(8192*4) + constant mapflag MAP_SHARED_ADVANCED_CONTROL = ConvertMapFlag(8192*8) + constant mapflag MAP_RANDOM_HERO = ConvertMapFlag(8192*16) + constant mapflag MAP_RANDOM_RACES = ConvertMapFlag(8192*32) + constant mapflag MAP_RELOADED = ConvertMapFlag(8192*64) + + constant placement MAP_PLACEMENT_RANDOM = ConvertPlacement(0) // random among all slots + constant placement MAP_PLACEMENT_FIXED = ConvertPlacement(1) // player 0 in start loc 0... + constant placement MAP_PLACEMENT_USE_MAP_SETTINGS = ConvertPlacement(2) // whatever was specified by the script + constant placement MAP_PLACEMENT_TEAMS_TOGETHER = ConvertPlacement(3) // random with allies next to each other + + constant startlocprio MAP_LOC_PRIO_LOW = ConvertStartLocPrio(0) + constant startlocprio MAP_LOC_PRIO_HIGH = ConvertStartLocPrio(1) + constant startlocprio MAP_LOC_PRIO_NOT = ConvertStartLocPrio(2) + + constant mapdensity MAP_DENSITY_NONE = ConvertMapDensity(0) + constant mapdensity MAP_DENSITY_LIGHT = ConvertMapDensity(1) + constant mapdensity MAP_DENSITY_MEDIUM = ConvertMapDensity(2) + constant mapdensity MAP_DENSITY_HEAVY = ConvertMapDensity(3) + + constant gamedifficulty MAP_DIFFICULTY_EASY = ConvertGameDifficulty(0) + constant gamedifficulty MAP_DIFFICULTY_NORMAL = ConvertGameDifficulty(1) + constant gamedifficulty MAP_DIFFICULTY_HARD = ConvertGameDifficulty(2) + constant gamedifficulty MAP_DIFFICULTY_INSANE = ConvertGameDifficulty(3) + + constant gamespeed MAP_SPEED_SLOWEST = ConvertGameSpeed(0) + constant gamespeed MAP_SPEED_SLOW = ConvertGameSpeed(1) + constant gamespeed MAP_SPEED_NORMAL = ConvertGameSpeed(2) + constant gamespeed MAP_SPEED_FAST = ConvertGameSpeed(3) + constant gamespeed MAP_SPEED_FASTEST = ConvertGameSpeed(4) + + constant playerslotstate PLAYER_SLOT_STATE_EMPTY = ConvertPlayerSlotState(0) + constant playerslotstate PLAYER_SLOT_STATE_PLAYING = ConvertPlayerSlotState(1) + constant playerslotstate PLAYER_SLOT_STATE_LEFT = ConvertPlayerSlotState(2) + +//=================================================== +// Sound Constants +//=================================================== + constant volumegroup SOUND_VOLUMEGROUP_UNITMOVEMENT = ConvertVolumeGroup(0) + constant volumegroup SOUND_VOLUMEGROUP_UNITSOUNDS = ConvertVolumeGroup(1) + constant volumegroup SOUND_VOLUMEGROUP_COMBAT = ConvertVolumeGroup(2) + constant volumegroup SOUND_VOLUMEGROUP_SPELLS = ConvertVolumeGroup(3) + constant volumegroup SOUND_VOLUMEGROUP_UI = ConvertVolumeGroup(4) + constant volumegroup SOUND_VOLUMEGROUP_MUSIC = ConvertVolumeGroup(5) + constant volumegroup SOUND_VOLUMEGROUP_AMBIENTSOUNDS = ConvertVolumeGroup(6) + constant volumegroup SOUND_VOLUMEGROUP_FIRE = ConvertVolumeGroup(7) + + +//=================================================== +// Game, Player, and Unit States +// +// For use with TriggerRegisterStateEvent +// +//=================================================== + + constant igamestate GAME_STATE_DIVINE_INTERVENTION = ConvertIGameState(0) + constant igamestate GAME_STATE_DISCONNECTED = ConvertIGameState(1) + constant fgamestate GAME_STATE_TIME_OF_DAY = ConvertFGameState(2) + + constant playerstate PLAYER_STATE_GAME_RESULT = ConvertPlayerState(0) + + // current resource levels + // + constant playerstate PLAYER_STATE_RESOURCE_GOLD = ConvertPlayerState(1) + constant playerstate PLAYER_STATE_RESOURCE_LUMBER = ConvertPlayerState(2) + constant playerstate PLAYER_STATE_RESOURCE_HERO_TOKENS = ConvertPlayerState(3) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_CAP = ConvertPlayerState(4) + constant playerstate PLAYER_STATE_RESOURCE_FOOD_USED = ConvertPlayerState(5) + constant playerstate PLAYER_STATE_FOOD_CAP_CEILING = ConvertPlayerState(6) + + constant playerstate PLAYER_STATE_GIVES_BOUNTY = ConvertPlayerState(7) + constant playerstate PLAYER_STATE_ALLIED_VICTORY = ConvertPlayerState(8) + constant playerstate PLAYER_STATE_PLACED = ConvertPlayerState(9) + constant playerstate PLAYER_STATE_OBSERVER_ON_DEATH = ConvertPlayerState(10) + constant playerstate PLAYER_STATE_OBSERVER = ConvertPlayerState(11) + constant playerstate PLAYER_STATE_UNFOLLOWABLE = ConvertPlayerState(12) + + // taxation rate for each resource + // + constant playerstate PLAYER_STATE_GOLD_UPKEEP_RATE = ConvertPlayerState(13) + constant playerstate PLAYER_STATE_LUMBER_UPKEEP_RATE = ConvertPlayerState(14) + + // cumulative resources collected by the player during the mission + // + constant playerstate PLAYER_STATE_GOLD_GATHERED = ConvertPlayerState(15) + constant playerstate PLAYER_STATE_LUMBER_GATHERED = ConvertPlayerState(16) + + constant playerstate PLAYER_STATE_NO_CREEP_SLEEP = ConvertPlayerState(25) + + constant unitstate UNIT_STATE_LIFE = ConvertUnitState(0) + constant unitstate UNIT_STATE_MAX_LIFE = ConvertUnitState(1) + constant unitstate UNIT_STATE_MANA = ConvertUnitState(2) + constant unitstate UNIT_STATE_MAX_MANA = ConvertUnitState(3) + + constant aidifficulty AI_DIFFICULTY_NEWBIE = ConvertAIDifficulty(0) + constant aidifficulty AI_DIFFICULTY_NORMAL = ConvertAIDifficulty(1) + constant aidifficulty AI_DIFFICULTY_INSANE = ConvertAIDifficulty(2) + + // player score values + constant playerscore PLAYER_SCORE_UNITS_TRAINED = ConvertPlayerScore(0) + constant playerscore PLAYER_SCORE_UNITS_KILLED = ConvertPlayerScore(1) + constant playerscore PLAYER_SCORE_STRUCT_BUILT = ConvertPlayerScore(2) + constant playerscore PLAYER_SCORE_STRUCT_RAZED = ConvertPlayerScore(3) + constant playerscore PLAYER_SCORE_TECH_PERCENT = ConvertPlayerScore(4) + constant playerscore PLAYER_SCORE_FOOD_MAXPROD = ConvertPlayerScore(5) + constant playerscore PLAYER_SCORE_FOOD_MAXUSED = ConvertPlayerScore(6) + constant playerscore PLAYER_SCORE_HEROES_KILLED = ConvertPlayerScore(7) + constant playerscore PLAYER_SCORE_ITEMS_GAINED = ConvertPlayerScore(8) + constant playerscore PLAYER_SCORE_MERCS_HIRED = ConvertPlayerScore(9) + constant playerscore PLAYER_SCORE_GOLD_MINED_TOTAL = ConvertPlayerScore(10) + constant playerscore PLAYER_SCORE_GOLD_MINED_UPKEEP = ConvertPlayerScore(11) + constant playerscore PLAYER_SCORE_GOLD_LOST_UPKEEP = ConvertPlayerScore(12) + constant playerscore PLAYER_SCORE_GOLD_LOST_TAX = ConvertPlayerScore(13) + constant playerscore PLAYER_SCORE_GOLD_GIVEN = ConvertPlayerScore(14) + constant playerscore PLAYER_SCORE_GOLD_RECEIVED = ConvertPlayerScore(15) + constant playerscore PLAYER_SCORE_LUMBER_TOTAL = ConvertPlayerScore(16) + constant playerscore PLAYER_SCORE_LUMBER_LOST_UPKEEP = ConvertPlayerScore(17) + constant playerscore PLAYER_SCORE_LUMBER_LOST_TAX = ConvertPlayerScore(18) + constant playerscore PLAYER_SCORE_LUMBER_GIVEN = ConvertPlayerScore(19) + constant playerscore PLAYER_SCORE_LUMBER_RECEIVED = ConvertPlayerScore(20) + constant playerscore PLAYER_SCORE_UNIT_TOTAL = ConvertPlayerScore(21) + constant playerscore PLAYER_SCORE_HERO_TOTAL = ConvertPlayerScore(22) + constant playerscore PLAYER_SCORE_RESOURCE_TOTAL = ConvertPlayerScore(23) + constant playerscore PLAYER_SCORE_TOTAL = ConvertPlayerScore(24) + +//=================================================== +// Game, Player and Unit Events +// +// When an event causes a trigger to fire these +// values allow the action code to determine which +// event was dispatched and therefore which set of +// native functions should be used to get information +// about the event. +// +// Do NOT change the order or value of these constants +// without insuring that the JASS_GAME_EVENTS_WAR3 enum +// is changed to match. +// +//=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_VICTORY = ConvertGameEvent(0) + constant gameevent EVENT_GAME_END_LEVEL = ConvertGameEvent(1) + + constant gameevent EVENT_GAME_VARIABLE_LIMIT = ConvertGameEvent(2) + constant gameevent EVENT_GAME_STATE_LIMIT = ConvertGameEvent(3) + + constant gameevent EVENT_GAME_TIMER_EXPIRED = ConvertGameEvent(4) + + constant gameevent EVENT_GAME_ENTER_REGION = ConvertGameEvent(5) + constant gameevent EVENT_GAME_LEAVE_REGION = ConvertGameEvent(6) + + constant gameevent EVENT_GAME_TRACKABLE_HIT = ConvertGameEvent(7) + constant gameevent EVENT_GAME_TRACKABLE_TRACK = ConvertGameEvent(8) + + constant gameevent EVENT_GAME_SHOW_SKILL = ConvertGameEvent(9) + constant gameevent EVENT_GAME_BUILD_SUBMENU = ConvertGameEvent(10) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + constant playerevent EVENT_PLAYER_STATE_LIMIT = ConvertPlayerEvent(11) + constant playerevent EVENT_PLAYER_ALLIANCE_CHANGED = ConvertPlayerEvent(12) + + constant playerevent EVENT_PLAYER_DEFEAT = ConvertPlayerEvent(13) + constant playerevent EVENT_PLAYER_VICTORY = ConvertPlayerEvent(14) + constant playerevent EVENT_PLAYER_LEAVE = ConvertPlayerEvent(15) + constant playerevent EVENT_PLAYER_CHAT = ConvertPlayerEvent(16) + constant playerevent EVENT_PLAYER_END_CINEMATIC = ConvertPlayerEvent(17) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_ATTACKED = ConvertPlayerUnitEvent(18) + constant playerunitevent EVENT_PLAYER_UNIT_RESCUED = ConvertPlayerUnitEvent(19) + + constant playerunitevent EVENT_PLAYER_UNIT_DEATH = ConvertPlayerUnitEvent(20) + constant playerunitevent EVENT_PLAYER_UNIT_DECAY = ConvertPlayerUnitEvent(21) + + constant playerunitevent EVENT_PLAYER_UNIT_DETECTED = ConvertPlayerUnitEvent(22) + constant playerunitevent EVENT_PLAYER_UNIT_HIDDEN = ConvertPlayerUnitEvent(23) + + constant playerunitevent EVENT_PLAYER_UNIT_SELECTED = ConvertPlayerUnitEvent(24) + constant playerunitevent EVENT_PLAYER_UNIT_DESELECTED = ConvertPlayerUnitEvent(25) + + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_START = ConvertPlayerUnitEvent(26) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL = ConvertPlayerUnitEvent(27) + constant playerunitevent EVENT_PLAYER_UNIT_CONSTRUCT_FINISH = ConvertPlayerUnitEvent(28) + + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_START = ConvertPlayerUnitEvent(29) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_CANCEL = ConvertPlayerUnitEvent(30) + constant playerunitevent EVENT_PLAYER_UNIT_UPGRADE_FINISH = ConvertPlayerUnitEvent(31) + + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_START = ConvertPlayerUnitEvent(32) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_CANCEL = ConvertPlayerUnitEvent(33) + constant playerunitevent EVENT_PLAYER_UNIT_TRAIN_FINISH = ConvertPlayerUnitEvent(34) + + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_START = ConvertPlayerUnitEvent(35) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_CANCEL = ConvertPlayerUnitEvent(36) + constant playerunitevent EVENT_PLAYER_UNIT_RESEARCH_FINISH = ConvertPlayerUnitEvent(37) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_ORDER = ConvertPlayerUnitEvent(38) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER = ConvertPlayerUnitEvent(39) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER = ConvertPlayerUnitEvent(40) + constant playerunitevent EVENT_PLAYER_UNIT_ISSUED_UNIT_ORDER = ConvertPlayerUnitEvent(40) // for compat + + constant playerunitevent EVENT_PLAYER_HERO_LEVEL = ConvertPlayerUnitEvent(41) + constant playerunitevent EVENT_PLAYER_HERO_SKILL = ConvertPlayerUnitEvent(42) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVABLE = ConvertPlayerUnitEvent(43) + + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_START = ConvertPlayerUnitEvent(44) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_CANCEL = ConvertPlayerUnitEvent(45) + constant playerunitevent EVENT_PLAYER_HERO_REVIVE_FINISH = ConvertPlayerUnitEvent(46) + constant playerunitevent EVENT_PLAYER_UNIT_SUMMON = ConvertPlayerUnitEvent(47) + constant playerunitevent EVENT_PLAYER_UNIT_DROP_ITEM = ConvertPlayerUnitEvent(48) + constant playerunitevent EVENT_PLAYER_UNIT_PICKUP_ITEM = ConvertPlayerUnitEvent(49) + constant playerunitevent EVENT_PLAYER_UNIT_USE_ITEM = ConvertPlayerUnitEvent(50) + + constant playerunitevent EVENT_PLAYER_UNIT_LOADED = ConvertPlayerUnitEvent(51) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_DAMAGED = ConvertUnitEvent(52) + constant unitevent EVENT_UNIT_DEATH = ConvertUnitEvent(53) + constant unitevent EVENT_UNIT_DECAY = ConvertUnitEvent(54) + constant unitevent EVENT_UNIT_DETECTED = ConvertUnitEvent(55) + constant unitevent EVENT_UNIT_HIDDEN = ConvertUnitEvent(56) + constant unitevent EVENT_UNIT_SELECTED = ConvertUnitEvent(57) + constant unitevent EVENT_UNIT_DESELECTED = ConvertUnitEvent(58) + + constant unitevent EVENT_UNIT_STATE_LIMIT = ConvertUnitEvent(59) + + // Events which may have a filter for the "other unit" + // + constant unitevent EVENT_UNIT_ACQUIRED_TARGET = ConvertUnitEvent(60) + constant unitevent EVENT_UNIT_TARGET_IN_RANGE = ConvertUnitEvent(61) + constant unitevent EVENT_UNIT_ATTACKED = ConvertUnitEvent(62) + constant unitevent EVENT_UNIT_RESCUED = ConvertUnitEvent(63) + + constant unitevent EVENT_UNIT_CONSTRUCT_CANCEL = ConvertUnitEvent(64) + constant unitevent EVENT_UNIT_CONSTRUCT_FINISH = ConvertUnitEvent(65) + + constant unitevent EVENT_UNIT_UPGRADE_START = ConvertUnitEvent(66) + constant unitevent EVENT_UNIT_UPGRADE_CANCEL = ConvertUnitEvent(67) + constant unitevent EVENT_UNIT_UPGRADE_FINISH = ConvertUnitEvent(68) + + // Events which involve the specified unit performing + // training of other units + // + constant unitevent EVENT_UNIT_TRAIN_START = ConvertUnitEvent(69) + constant unitevent EVENT_UNIT_TRAIN_CANCEL = ConvertUnitEvent(70) + constant unitevent EVENT_UNIT_TRAIN_FINISH = ConvertUnitEvent(71) + + constant unitevent EVENT_UNIT_RESEARCH_START = ConvertUnitEvent(72) + constant unitevent EVENT_UNIT_RESEARCH_CANCEL = ConvertUnitEvent(73) + constant unitevent EVENT_UNIT_RESEARCH_FINISH = ConvertUnitEvent(74) + + constant unitevent EVENT_UNIT_ISSUED_ORDER = ConvertUnitEvent(75) + constant unitevent EVENT_UNIT_ISSUED_POINT_ORDER = ConvertUnitEvent(76) + constant unitevent EVENT_UNIT_ISSUED_TARGET_ORDER = ConvertUnitEvent(77) + + constant unitevent EVENT_UNIT_HERO_LEVEL = ConvertUnitEvent(78) + constant unitevent EVENT_UNIT_HERO_SKILL = ConvertUnitEvent(79) + + constant unitevent EVENT_UNIT_HERO_REVIVABLE = ConvertUnitEvent(80) + constant unitevent EVENT_UNIT_HERO_REVIVE_START = ConvertUnitEvent(81) + constant unitevent EVENT_UNIT_HERO_REVIVE_CANCEL = ConvertUnitEvent(82) + constant unitevent EVENT_UNIT_HERO_REVIVE_FINISH = ConvertUnitEvent(83) + + constant unitevent EVENT_UNIT_SUMMON = ConvertUnitEvent(84) + + constant unitevent EVENT_UNIT_DROP_ITEM = ConvertUnitEvent(85) + constant unitevent EVENT_UNIT_PICKUP_ITEM = ConvertUnitEvent(86) + constant unitevent EVENT_UNIT_USE_ITEM = ConvertUnitEvent(87) + + constant unitevent EVENT_UNIT_LOADED = ConvertUnitEvent(88) + + constant widgetevent EVENT_WIDGET_DEATH = ConvertWidgetEvent(89) + + constant dialogevent EVENT_DIALOG_BUTTON_CLICK = ConvertDialogEvent(90) + constant dialogevent EVENT_DIALOG_CLICK = ConvertDialogEvent(91) + + //=================================================== + // Frozen Throne Expansion Events + // Need to be added here to preserve compat + //=================================================== + + //=================================================== + // For use with TriggerRegisterGameEvent + //=================================================== + + constant gameevent EVENT_GAME_LOADED = ConvertGameEvent(256) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_SOON = ConvertGameEvent(257) + constant gameevent EVENT_GAME_TOURNAMENT_FINISH_NOW = ConvertGameEvent(258) + constant gameevent EVENT_GAME_SAVE = ConvertGameEvent(259) + + //=================================================== + // For use with TriggerRegisterPlayerEvent + //=================================================== + + constant playerevent EVENT_PLAYER_ARROW_LEFT_DOWN = ConvertPlayerEvent(261) + constant playerevent EVENT_PLAYER_ARROW_LEFT_UP = ConvertPlayerEvent(262) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_DOWN = ConvertPlayerEvent(263) + constant playerevent EVENT_PLAYER_ARROW_RIGHT_UP = ConvertPlayerEvent(264) + constant playerevent EVENT_PLAYER_ARROW_DOWN_DOWN = ConvertPlayerEvent(265) + constant playerevent EVENT_PLAYER_ARROW_DOWN_UP = ConvertPlayerEvent(266) + constant playerevent EVENT_PLAYER_ARROW_UP_DOWN = ConvertPlayerEvent(267) + constant playerevent EVENT_PLAYER_ARROW_UP_UP = ConvertPlayerEvent(268) + + //=================================================== + // For use with TriggerRegisterPlayerUnitEvent + //=================================================== + + constant playerunitevent EVENT_PLAYER_UNIT_SELL = ConvertPlayerUnitEvent(269) + constant playerunitevent EVENT_PLAYER_UNIT_CHANGE_OWNER = ConvertPlayerUnitEvent(270) + constant playerunitevent EVENT_PLAYER_UNIT_SELL_ITEM = ConvertPlayerUnitEvent(271) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CHANNEL = ConvertPlayerUnitEvent(272) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_CAST = ConvertPlayerUnitEvent(273) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_EFFECT = ConvertPlayerUnitEvent(274) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_FINISH = ConvertPlayerUnitEvent(275) + constant playerunitevent EVENT_PLAYER_UNIT_SPELL_ENDCAST = ConvertPlayerUnitEvent(276) + constant playerunitevent EVENT_PLAYER_UNIT_PAWN_ITEM = ConvertPlayerUnitEvent(277) + + //=================================================== + // For use with TriggerRegisterUnitEvent + //=================================================== + + constant unitevent EVENT_UNIT_SELL = ConvertUnitEvent(286) + constant unitevent EVENT_UNIT_CHANGE_OWNER = ConvertUnitEvent(287) + constant unitevent EVENT_UNIT_SELL_ITEM = ConvertUnitEvent(288) + constant unitevent EVENT_UNIT_SPELL_CHANNEL = ConvertUnitEvent(289) + constant unitevent EVENT_UNIT_SPELL_CAST = ConvertUnitEvent(290) + constant unitevent EVENT_UNIT_SPELL_EFFECT = ConvertUnitEvent(291) + constant unitevent EVENT_UNIT_SPELL_FINISH = ConvertUnitEvent(292) + constant unitevent EVENT_UNIT_SPELL_ENDCAST = ConvertUnitEvent(293) + constant unitevent EVENT_UNIT_PAWN_ITEM = ConvertUnitEvent(294) + + //=================================================== + // Limit Event API constants + // variable, player state, game state, and unit state events + // ( do NOT change the order of these... ) + //=================================================== + constant limitop LESS_THAN = ConvertLimitOp(0) + constant limitop LESS_THAN_OR_EQUAL = ConvertLimitOp(1) + constant limitop EQUAL = ConvertLimitOp(2) + constant limitop GREATER_THAN_OR_EQUAL = ConvertLimitOp(3) + constant limitop GREATER_THAN = ConvertLimitOp(4) + constant limitop NOT_EQUAL = ConvertLimitOp(5) + +//=================================================== +// Unit Type Constants for use with IsUnitType() +//=================================================== + + constant unittype UNIT_TYPE_HERO = ConvertUnitType(0) + constant unittype UNIT_TYPE_DEAD = ConvertUnitType(1) + constant unittype UNIT_TYPE_STRUCTURE = ConvertUnitType(2) + + constant unittype UNIT_TYPE_FLYING = ConvertUnitType(3) + constant unittype UNIT_TYPE_GROUND = ConvertUnitType(4) + + constant unittype UNIT_TYPE_ATTACKS_FLYING = ConvertUnitType(5) + constant unittype UNIT_TYPE_ATTACKS_GROUND = ConvertUnitType(6) + + constant unittype UNIT_TYPE_MELEE_ATTACKER = ConvertUnitType(7) + constant unittype UNIT_TYPE_RANGED_ATTACKER = ConvertUnitType(8) + + constant unittype UNIT_TYPE_GIANT = ConvertUnitType(9) + constant unittype UNIT_TYPE_SUMMONED = ConvertUnitType(10) + constant unittype UNIT_TYPE_STUNNED = ConvertUnitType(11) + constant unittype UNIT_TYPE_PLAGUED = ConvertUnitType(12) + constant unittype UNIT_TYPE_SNARED = ConvertUnitType(13) + + constant unittype UNIT_TYPE_UNDEAD = ConvertUnitType(14) + constant unittype UNIT_TYPE_MECHANICAL = ConvertUnitType(15) + constant unittype UNIT_TYPE_PEON = ConvertUnitType(16) + constant unittype UNIT_TYPE_SAPPER = ConvertUnitType(17) + constant unittype UNIT_TYPE_TOWNHALL = ConvertUnitType(18) + constant unittype UNIT_TYPE_ANCIENT = ConvertUnitType(19) + + constant unittype UNIT_TYPE_TAUREN = ConvertUnitType(20) + constant unittype UNIT_TYPE_POISONED = ConvertUnitType(21) + constant unittype UNIT_TYPE_POLYMORPHED = ConvertUnitType(22) + constant unittype UNIT_TYPE_SLEEPING = ConvertUnitType(23) + constant unittype UNIT_TYPE_RESISTANT = ConvertUnitType(24) + constant unittype UNIT_TYPE_ETHEREAL = ConvertUnitType(25) + constant unittype UNIT_TYPE_MAGIC_IMMUNE = ConvertUnitType(26) + +//=================================================== +// Unit Type Constants for use with ChooseRandomItemEx() +//=================================================== + + constant itemtype ITEM_TYPE_PERMANENT = ConvertItemType(0) + constant itemtype ITEM_TYPE_CHARGED = ConvertItemType(1) + constant itemtype ITEM_TYPE_POWERUP = ConvertItemType(2) + constant itemtype ITEM_TYPE_ARTIFACT = ConvertItemType(3) + constant itemtype ITEM_TYPE_PURCHASABLE = ConvertItemType(4) + constant itemtype ITEM_TYPE_CAMPAIGN = ConvertItemType(5) + constant itemtype ITEM_TYPE_MISCELLANEOUS = ConvertItemType(6) + constant itemtype ITEM_TYPE_UNKNOWN = ConvertItemType(7) + constant itemtype ITEM_TYPE_ANY = ConvertItemType(8) + + // Deprecated, should use ITEM_TYPE_POWERUP + constant itemtype ITEM_TYPE_TOME = ConvertItemType(2) + +//=================================================== +// Animatable Camera Fields +//=================================================== + + constant camerafield CAMERA_FIELD_TARGET_DISTANCE = ConvertCameraField(0) + constant camerafield CAMERA_FIELD_FARZ = ConvertCameraField(1) + constant camerafield CAMERA_FIELD_ANGLE_OF_ATTACK = ConvertCameraField(2) + constant camerafield CAMERA_FIELD_FIELD_OF_VIEW = ConvertCameraField(3) + constant camerafield CAMERA_FIELD_ROLL = ConvertCameraField(4) + constant camerafield CAMERA_FIELD_ROTATION = ConvertCameraField(5) + constant camerafield CAMERA_FIELD_ZOFFSET = ConvertCameraField(6) + + constant blendmode BLEND_MODE_NONE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_DONT_CARE = ConvertBlendMode(0) + constant blendmode BLEND_MODE_KEYALPHA = ConvertBlendMode(1) + constant blendmode BLEND_MODE_BLEND = ConvertBlendMode(2) + constant blendmode BLEND_MODE_ADDITIVE = ConvertBlendMode(3) + constant blendmode BLEND_MODE_MODULATE = ConvertBlendMode(4) + constant blendmode BLEND_MODE_MODULATE_2X = ConvertBlendMode(5) + + constant raritycontrol RARITY_FREQUENT = ConvertRarityControl(0) + constant raritycontrol RARITY_RARE = ConvertRarityControl(1) + + constant texmapflags TEXMAP_FLAG_NONE = ConvertTexMapFlags(0) + constant texmapflags TEXMAP_FLAG_WRAP_U = ConvertTexMapFlags(1) + constant texmapflags TEXMAP_FLAG_WRAP_V = ConvertTexMapFlags(2) + constant texmapflags TEXMAP_FLAG_WRAP_UV = ConvertTexMapFlags(3) + + constant fogstate FOG_OF_WAR_MASKED = ConvertFogState(1) + constant fogstate FOG_OF_WAR_FOGGED = ConvertFogState(2) + constant fogstate FOG_OF_WAR_VISIBLE = ConvertFogState(4) + +//=================================================== +// Camera Margin constants for use with GetCameraMargin +//=================================================== + + constant integer CAMERA_MARGIN_LEFT = 0 + constant integer CAMERA_MARGIN_RIGHT = 1 + constant integer CAMERA_MARGIN_TOP = 2 + constant integer CAMERA_MARGIN_BOTTOM = 3 + +//=================================================== +// Effect API constants +//=================================================== + + constant effecttype EFFECT_TYPE_EFFECT = ConvertEffectType(0) + constant effecttype EFFECT_TYPE_TARGET = ConvertEffectType(1) + constant effecttype EFFECT_TYPE_CASTER = ConvertEffectType(2) + constant effecttype EFFECT_TYPE_SPECIAL = ConvertEffectType(3) + constant effecttype EFFECT_TYPE_AREA_EFFECT = ConvertEffectType(4) + constant effecttype EFFECT_TYPE_MISSILE = ConvertEffectType(5) + constant effecttype EFFECT_TYPE_LIGHTNING = ConvertEffectType(6) + + constant soundtype SOUND_TYPE_EFFECT = ConvertSoundType(0) + constant soundtype SOUND_TYPE_EFFECT_LOOPED = ConvertSoundType(1) + +endglobals + +//============================================================================ +// MathAPI +native Deg2Rad takes real degrees returns real +native Rad2Deg takes real radians returns real + +native Sin takes real radians returns real +native Cos takes real radians returns real +native Tan takes real radians returns real + +// Expect values between -1 and 1...returns 0 for invalid input +native Asin takes real y returns real +native Acos takes real x returns real + +native Atan takes real x returns real + +// Returns 0 if x and y are both 0 +native Atan2 takes real y, real x returns real + +// Returns 0 if x <= 0 +native SquareRoot takes real x returns real + +// computes x to the y power +// y == 0.0 => 1 +// x ==0.0 and y < 0 => 0 +// +native Pow takes real x, real power returns real + +//============================================================================ +// String Utility API +native I2R takes integer i returns real +native R2I takes real r returns integer +native I2S takes integer i returns string +native R2S takes real r returns string +native R2SW takes real r, integer width, integer precision returns string +native S2I takes string s returns integer +native S2R takes string s returns real +native GetHandleId takes handle h returns integer +native SubString takes string source, integer start, integer end returns string +native StringLength takes string s returns integer +native StringCase takes string source, boolean upper returns string +native StringHash takes string s returns integer + +native GetLocalizedString takes string source returns string +native GetLocalizedHotkey takes string source returns integer + +//============================================================================ +// Map Setup API +// +// These are native functions for describing the map configuration +// these funcs should only be used in the "config" function of +// a map script. The functions should also be called in this order +// ( i.e. call SetPlayers before SetPlayerColor... +// + +native SetMapName takes string name returns nothing +native SetMapDescription takes string description returns nothing + +native SetTeams takes integer teamcount returns nothing +native SetPlayers takes integer playercount returns nothing + +native DefineStartLocation takes integer whichStartLoc, real x, real y returns nothing +native DefineStartLocationLoc takes integer whichStartLoc, location whichLocation returns nothing +native SetStartLocPrioCount takes integer whichStartLoc, integer prioSlotCount returns nothing +native SetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex, integer otherStartLocIndex, startlocprio priority returns nothing +native GetStartLocPrioSlot takes integer whichStartLoc, integer prioSlotIndex returns integer +native GetStartLocPrio takes integer whichStartLoc, integer prioSlotIndex returns startlocprio + +native SetGameTypeSupported takes gametype whichGameType, boolean value returns nothing +native SetMapFlag takes mapflag whichMapFlag, boolean value returns nothing +native SetGamePlacement takes placement whichPlacementType returns nothing +native SetGameSpeed takes gamespeed whichspeed returns nothing +native SetGameDifficulty takes gamedifficulty whichdifficulty returns nothing +native SetResourceDensity takes mapdensity whichdensity returns nothing +native SetCreatureDensity takes mapdensity whichdensity returns nothing + +native GetTeams takes nothing returns integer +native GetPlayers takes nothing returns integer + +native IsGameTypeSupported takes gametype whichGameType returns boolean +native GetGameTypeSelected takes nothing returns gametype +native IsMapFlagSet takes mapflag whichMapFlag returns boolean + +constant native GetGamePlacement takes nothing returns placement +constant native GetGameSpeed takes nothing returns gamespeed +constant native GetGameDifficulty takes nothing returns gamedifficulty +constant native GetResourceDensity takes nothing returns mapdensity +constant native GetCreatureDensity takes nothing returns mapdensity +constant native GetStartLocationX takes integer whichStartLocation returns real +constant native GetStartLocationY takes integer whichStartLocation returns real +constant native GetStartLocationLoc takes integer whichStartLocation returns location + + +native SetPlayerTeam takes player whichPlayer, integer whichTeam returns nothing +native SetPlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +// forces player to have the specified start loc and marks the start loc as occupied +// which removes it from consideration for subsequently placed players +// ( i.e. you can use this to put people in a fixed loc and then +// use random placement for any unplaced players etc ) +native ForcePlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing +native SetPlayerColor takes player whichPlayer, playercolor color returns nothing +native SetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting, boolean value returns nothing +native SetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource, integer rate returns nothing +native SetPlayerRacePreference takes player whichPlayer, racepreference whichRacePreference returns nothing +native SetPlayerRaceSelectable takes player whichPlayer, boolean value returns nothing +native SetPlayerController takes player whichPlayer, mapcontrol controlType returns nothing +native SetPlayerName takes player whichPlayer, string name returns nothing + +native SetPlayerOnScoreScreen takes player whichPlayer, boolean flag returns nothing + +native GetPlayerTeam takes player whichPlayer returns integer +native GetPlayerStartLocation takes player whichPlayer returns integer +native GetPlayerColor takes player whichPlayer returns playercolor +native GetPlayerSelectable takes player whichPlayer returns boolean +native GetPlayerController takes player whichPlayer returns mapcontrol +native GetPlayerSlotState takes player whichPlayer returns playerslotstate +native GetPlayerTaxRate takes player sourcePlayer, player otherPlayer, playerstate whichResource returns integer +native IsPlayerRacePrefSet takes player whichPlayer, racepreference pref returns boolean +native GetPlayerName takes player whichPlayer returns string + +//============================================================================ +// Timer API +// +native CreateTimer takes nothing returns timer +native DestroyTimer takes timer whichTimer returns nothing +native TimerStart takes timer whichTimer, real timeout, boolean periodic, code handlerFunc returns nothing +native TimerGetElapsed takes timer whichTimer returns real +native TimerGetRemaining takes timer whichTimer returns real +native TimerGetTimeout takes timer whichTimer returns real +native PauseTimer takes timer whichTimer returns nothing +native ResumeTimer takes timer whichTimer returns nothing +native GetExpiredTimer takes nothing returns timer + +//============================================================================ +// Group API +// +native CreateGroup takes nothing returns group +native DestroyGroup takes group whichGroup returns nothing +native GroupAddUnit takes group whichGroup, unit whichUnit returns nothing +native GroupRemoveUnit takes group whichGroup, unit whichUnit returns nothing +native GroupClear takes group whichGroup returns nothing +native GroupEnumUnitsOfType takes group whichGroup, string unitname, boolexpr filter returns nothing +native GroupEnumUnitsOfPlayer takes group whichGroup, player whichPlayer, boolexpr filter returns nothing +native GroupEnumUnitsOfTypeCounted takes group whichGroup, string unitname, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRect takes group whichGroup, rect r, boolexpr filter returns nothing +native GroupEnumUnitsInRectCounted takes group whichGroup, rect r, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRange takes group whichGroup, real x, real y, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeOfLoc takes group whichGroup, location whichLocation, real radius, boolexpr filter returns nothing +native GroupEnumUnitsInRangeCounted takes group whichGroup, real x, real y, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsInRangeOfLocCounted takes group whichGroup, location whichLocation, real radius, boolexpr filter, integer countLimit returns nothing +native GroupEnumUnitsSelected takes group whichGroup, player whichPlayer, boolexpr filter returns nothing + +native GroupImmediateOrder takes group whichGroup, string order returns boolean +native GroupImmediateOrderById takes group whichGroup, integer order returns boolean +native GroupPointOrder takes group whichGroup, string order, real x, real y returns boolean +native GroupPointOrderLoc takes group whichGroup, string order, location whichLocation returns boolean +native GroupPointOrderById takes group whichGroup, integer order, real x, real y returns boolean +native GroupPointOrderByIdLoc takes group whichGroup, integer order, location whichLocation returns boolean +native GroupTargetOrder takes group whichGroup, string order, widget targetWidget returns boolean +native GroupTargetOrderById takes group whichGroup, integer order, widget targetWidget returns boolean + +// This will be difficult to support with potentially disjoint, cell-based regions +// as it would involve enumerating all the cells that are covered by a particularregion +// a better implementation would be a trigger that adds relevant units as they enter +// and removes them if they leave... +native ForGroup takes group whichGroup, code callback returns nothing +native FirstOfGroup takes group whichGroup returns unit + +//============================================================================ +// Force API +// +native CreateForce takes nothing returns force +native DestroyForce takes force whichForce returns nothing +native ForceAddPlayer takes force whichForce, player whichPlayer returns nothing +native ForceRemovePlayer takes force whichForce, player whichPlayer returns nothing +native ForceClear takes force whichForce returns nothing +native ForceEnumPlayers takes force whichForce, boolexpr filter returns nothing +native ForceEnumPlayersCounted takes force whichForce, boolexpr filter, integer countLimit returns nothing +native ForceEnumAllies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForceEnumEnemies takes force whichForce, player whichPlayer, boolexpr filter returns nothing +native ForForce takes force whichForce, code callback returns nothing + +//============================================================================ +// Region and Location API +// +native Rect takes real minx, real miny, real maxx, real maxy returns rect +native RectFromLoc takes location min, location max returns rect +native RemoveRect takes rect whichRect returns nothing +native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing +native SetRectFromLoc takes rect whichRect, location min, location max returns nothing +native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing +native MoveRectToLoc takes rect whichRect, location newCenterLoc returns nothing + +native GetRectCenterX takes rect whichRect returns real +native GetRectCenterY takes rect whichRect returns real +native GetRectMinX takes rect whichRect returns real +native GetRectMinY takes rect whichRect returns real +native GetRectMaxX takes rect whichRect returns real +native GetRectMaxY takes rect whichRect returns real + +native CreateRegion takes nothing returns region +native RemoveRegion takes region whichRegion returns nothing + +native RegionAddRect takes region whichRegion, rect r returns nothing +native RegionClearRect takes region whichRegion, rect r returns nothing + +native RegionAddCell takes region whichRegion, real x, real y returns nothing +native RegionAddCellAtLoc takes region whichRegion, location whichLocation returns nothing +native RegionClearCell takes region whichRegion, real x, real y returns nothing +native RegionClearCellAtLoc takes region whichRegion, location whichLocation returns nothing + +native Location takes real x, real y returns location +native RemoveLocation takes location whichLocation returns nothing +native MoveLocation takes location whichLocation, real newX, real newY returns nothing +native GetLocationX takes location whichLocation returns real +native GetLocationY takes location whichLocation returns real + +// This function is asynchronous. The values it returns are not guaranteed synchronous between each player. +// If you attempt to use it in a synchronous manner, it may cause a desync. +native GetLocationZ takes location whichLocation returns real + +native IsUnitInRegion takes region whichRegion, unit whichUnit returns boolean +native IsPointInRegion takes region whichRegion, real x, real y returns boolean +native IsLocationInRegion takes region whichRegion, location whichLocation returns boolean + +// Returns full map bounds, including unplayable borders, in world coordinates +native GetWorldBounds takes nothing returns rect + +//============================================================================ +// Native trigger interface +// +native CreateTrigger takes nothing returns trigger +native DestroyTrigger takes trigger whichTrigger returns nothing +native ResetTrigger takes trigger whichTrigger returns nothing +native EnableTrigger takes trigger whichTrigger returns nothing +native DisableTrigger takes trigger whichTrigger returns nothing +native IsTriggerEnabled takes trigger whichTrigger returns boolean + +native TriggerWaitOnSleeps takes trigger whichTrigger, boolean flag returns nothing +native IsTriggerWaitOnSleeps takes trigger whichTrigger returns boolean + +constant native GetFilterUnit takes nothing returns unit +constant native GetEnumUnit takes nothing returns unit + +constant native GetFilterDestructable takes nothing returns destructable +constant native GetEnumDestructable takes nothing returns destructable + +constant native GetFilterItem takes nothing returns item +constant native GetEnumItem takes nothing returns item + +constant native GetFilterPlayer takes nothing returns player +constant native GetEnumPlayer takes nothing returns player + +constant native GetTriggeringTrigger takes nothing returns trigger +constant native GetTriggerEventId takes nothing returns eventid +constant native GetTriggerEvalCount takes trigger whichTrigger returns integer +constant native GetTriggerExecCount takes trigger whichTrigger returns integer + +native ExecuteFunc takes string funcName returns nothing + +//============================================================================ +// Boolean Expr API ( for compositing trigger conditions and unit filter funcs...) +//============================================================================ +native And takes boolexpr operandA, boolexpr operandB returns boolexpr +native Or takes boolexpr operandA, boolexpr operandB returns boolexpr +native Not takes boolexpr operand returns boolexpr +native Condition takes code func returns conditionfunc +native DestroyCondition takes conditionfunc c returns nothing +native Filter takes code func returns filterfunc +native DestroyFilter takes filterfunc f returns nothing +native DestroyBoolExpr takes boolexpr e returns nothing + +//============================================================================ +// Trigger Game Event API +//============================================================================ + +native TriggerRegisterVariableEvent takes trigger whichTrigger, string varName, limitop opcode, real limitval returns event + + // EVENT_GAME_VARIABLE_LIMIT + //constant native string GetTriggeringVariableName takes nothing returns string + +// Creates it's own timer and triggers when it expires +native TriggerRegisterTimerEvent takes trigger whichTrigger, real timeout, boolean periodic returns event + +// Triggers when the timer you tell it about expires +native TriggerRegisterTimerExpireEvent takes trigger whichTrigger, timer t returns event + +native TriggerRegisterGameStateEvent takes trigger whichTrigger, gamestate whichState, limitop opcode, real limitval returns event + +native TriggerRegisterDialogEvent takes trigger whichTrigger, dialog whichDialog returns event +native TriggerRegisterDialogButtonEvent takes trigger whichTrigger, button whichButton returns event + +// EVENT_GAME_STATE_LIMIT +constant native GetEventGameState takes nothing returns gamestate + +native TriggerRegisterGameEvent takes trigger whichTrigger, gameevent whichGameEvent returns event + +// EVENT_GAME_VICTORY +constant native GetWinningPlayer takes nothing returns player + + +native TriggerRegisterEnterRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event + +// EVENT_GAME_ENTER_REGION +constant native GetTriggeringRegion takes nothing returns region +constant native GetEnteringUnit takes nothing returns unit + +// EVENT_GAME_LEAVE_REGION + +native TriggerRegisterLeaveRegion takes trigger whichTrigger, region whichRegion, boolexpr filter returns event +constant native GetLeavingUnit takes nothing returns unit + +native TriggerRegisterTrackableHitEvent takes trigger whichTrigger, trackable t returns event +native TriggerRegisterTrackableTrackEvent takes trigger whichTrigger, trackable t returns event + +// EVENT_GAME_TRACKABLE_HIT +// EVENT_GAME_TRACKABLE_TRACK +constant native GetTriggeringTrackable takes nothing returns trackable + +// EVENT_DIALOG_BUTTON_CLICK +constant native GetClickedButton takes nothing returns button +constant native GetClickedDialog takes nothing returns dialog + +// EVENT_GAME_TOURNAMENT_FINISH_SOON +constant native GetTournamentFinishSoonTimeRemaining takes nothing returns real +constant native GetTournamentFinishNowRule takes nothing returns integer +constant native GetTournamentFinishNowPlayer takes nothing returns player +constant native GetTournamentScore takes player whichPlayer returns integer + +// EVENT_GAME_SAVE +constant native GetSaveBasicFilename takes nothing returns string + +//============================================================================ +// Trigger Player Based Event API +//============================================================================ + +native TriggerRegisterPlayerEvent takes trigger whichTrigger, player whichPlayer, playerevent whichPlayerEvent returns event + +// EVENT_PLAYER_DEFEAT +// EVENT_PLAYER_VICTORY +constant native GetTriggerPlayer takes nothing returns player + +native TriggerRegisterPlayerUnitEvent takes trigger whichTrigger, player whichPlayer, playerunitevent whichPlayerUnitEvent, boolexpr filter returns event + +// EVENT_PLAYER_HERO_LEVEL +// EVENT_UNIT_HERO_LEVEL +constant native GetLevelingUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_SKILL +// EVENT_UNIT_HERO_SKILL +constant native GetLearningUnit takes nothing returns unit +constant native GetLearnedSkill takes nothing returns integer +constant native GetLearnedSkillLevel takes nothing returns integer + +// EVENT_PLAYER_HERO_REVIVABLE +constant native GetRevivableUnit takes nothing returns unit + +// EVENT_PLAYER_HERO_REVIVE_START +// EVENT_PLAYER_HERO_REVIVE_CANCEL +// EVENT_PLAYER_HERO_REVIVE_FINISH +// EVENT_UNIT_HERO_REVIVE_START +// EVENT_UNIT_HERO_REVIVE_CANCEL +// EVENT_UNIT_HERO_REVIVE_FINISH +constant native GetRevivingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_ATTACKED +constant native GetAttacker takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESCUED +constant native GetRescuer takes nothing returns unit + +// EVENT_PLAYER_UNIT_DEATH +constant native GetDyingUnit takes nothing returns unit +constant native GetKillingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DECAY +constant native GetDecayingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELECTED +//constant native GetSelectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_START +constant native GetConstructingStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_CONSTRUCT_FINISH +// EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL +constant native GetCancelledStructure takes nothing returns unit +constant native GetConstructedStructure takes nothing returns unit + +// EVENT_PLAYER_UNIT_RESEARCH_START +// EVENT_PLAYER_UNIT_RESEARCH_CANCEL +// EVENT_PLAYER_UNIT_RESEARCH_FINISH +constant native GetResearchingUnit takes nothing returns unit +constant native GetResearched takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_START +// EVENT_PLAYER_UNIT_TRAIN_CANCEL +constant native GetTrainedUnitType takes nothing returns integer + +// EVENT_PLAYER_UNIT_TRAIN_FINISH +constant native GetTrainedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_DETECTED +constant native GetDetectedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SUMMONED +constant native GetSummoningUnit takes nothing returns unit +constant native GetSummonedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_LOADED +constant native GetTransportUnit takes nothing returns unit +constant native GetLoadedUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL +constant native GetSellingUnit takes nothing returns unit +constant native GetSoldUnit takes nothing returns unit +constant native GetBuyingUnit takes nothing returns unit + +// EVENT_PLAYER_UNIT_SELL_ITEM +constant native GetSoldItem takes nothing returns item + +// EVENT_PLAYER_UNIT_CHANGE_OWNER +constant native GetChangingUnit takes nothing returns unit +constant native GetChangingUnitPrevOwner takes nothing returns player + +// EVENT_PLAYER_UNIT_DROP_ITEM +// EVENT_PLAYER_UNIT_PICKUP_ITEM +// EVENT_PLAYER_UNIT_USE_ITEM +constant native GetManipulatingUnit takes nothing returns unit +constant native GetManipulatedItem takes nothing returns item + +// EVENT_PLAYER_UNIT_ISSUED_ORDER +constant native GetOrderedUnit takes nothing returns unit +constant native GetIssuedOrderId takes nothing returns integer + +// EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER +constant native GetOrderPointX takes nothing returns real +constant native GetOrderPointY takes nothing returns real +constant native GetOrderPointLoc takes nothing returns location + +// EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER +constant native GetOrderTarget takes nothing returns widget +constant native GetOrderTargetDestructable takes nothing returns destructable +constant native GetOrderTargetItem takes nothing returns item +constant native GetOrderTargetUnit takes nothing returns unit + +// EVENT_UNIT_SPELL_CHANNEL +// EVENT_UNIT_SPELL_CAST +// EVENT_UNIT_SPELL_EFFECT +// EVENT_UNIT_SPELL_FINISH +// EVENT_UNIT_SPELL_ENDCAST +// EVENT_PLAYER_UNIT_SPELL_CHANNEL +// EVENT_PLAYER_UNIT_SPELL_CAST +// EVENT_PLAYER_UNIT_SPELL_EFFECT +// EVENT_PLAYER_UNIT_SPELL_FINISH +// EVENT_PLAYER_UNIT_SPELL_ENDCAST +constant native GetSpellAbilityUnit takes nothing returns unit +constant native GetSpellAbilityId takes nothing returns integer +constant native GetSpellAbility takes nothing returns ability +constant native GetSpellTargetLoc takes nothing returns location +constant native GetSpellTargetX takes nothing returns real +constant native GetSpellTargetY takes nothing returns real +constant native GetSpellTargetDestructable takes nothing returns destructable +constant native GetSpellTargetItem takes nothing returns item +constant native GetSpellTargetUnit takes nothing returns unit + +native TriggerRegisterPlayerAllianceChange takes trigger whichTrigger, player whichPlayer, alliancetype whichAlliance returns event +native TriggerRegisterPlayerStateEvent takes trigger whichTrigger, player whichPlayer, playerstate whichState, limitop opcode, real limitval returns event + +// EVENT_PLAYER_STATE_LIMIT +constant native GetEventPlayerState takes nothing returns playerstate + +native TriggerRegisterPlayerChatEvent takes trigger whichTrigger, player whichPlayer, string chatMessageToDetect, boolean exactMatchOnly returns event + +// EVENT_PLAYER_CHAT + +// returns the actual string they typed in ( same as what you registered for +// if you required exact match ) +constant native GetEventPlayerChatString takes nothing returns string + +// returns the string that you registered for +constant native GetEventPlayerChatStringMatched takes nothing returns string + +native TriggerRegisterDeathEvent takes trigger whichTrigger, widget whichWidget returns event + +//============================================================================ +// Trigger Unit Based Event API +//============================================================================ + +// returns handle to unit which triggered the most recent event when called from +// within a trigger action function...returns null handle when used incorrectly + +constant native GetTriggerUnit takes nothing returns unit + +native TriggerRegisterUnitStateEvent takes trigger whichTrigger, unit whichUnit, unitstate whichState, limitop opcode, real limitval returns event + +// EVENT_UNIT_STATE_LIMIT +constant native GetEventUnitState takes nothing returns unitstate + +native TriggerRegisterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent returns event + +// EVENT_UNIT_DAMAGED +constant native GetEventDamage takes nothing returns real +constant native GetEventDamageSource takes nothing returns unit + +// EVENT_UNIT_DEATH +// EVENT_UNIT_DECAY +// Use the GetDyingUnit and GetDecayingUnit funcs above + +// EVENT_UNIT_DETECTED +constant native GetEventDetectingPlayer takes nothing returns player + +native TriggerRegisterFilterUnitEvent takes trigger whichTrigger, unit whichUnit, unitevent whichEvent, boolexpr filter returns event + +// EVENT_UNIT_ACQUIRED_TARGET +// EVENT_UNIT_TARGET_IN_RANGE +constant native GetEventTargetUnit takes nothing returns unit + +// EVENT_UNIT_ATTACKED +// Use GetAttacker from the Player Unit Event API Below... + +// EVENT_UNIT_RESCUEDED +// Use GetRescuer from the Player Unit Event API Below... + +// EVENT_UNIT_CONSTRUCT_CANCEL +// EVENT_UNIT_CONSTRUCT_FINISH + +// See the Player Unit Construction Event API above for event info funcs + +// EVENT_UNIT_TRAIN_START +// EVENT_UNIT_TRAIN_CANCELLED +// EVENT_UNIT_TRAIN_FINISH + +// See the Player Unit Training Event API above for event info funcs + +// EVENT_UNIT_SELL + +// See the Player Unit Sell Event API above for event info funcs + +// EVENT_UNIT_DROP_ITEM +// EVENT_UNIT_PICKUP_ITEM +// EVENT_UNIT_USE_ITEM +// See the Player Unit/Item manipulation Event API above for event info funcs + +// EVENT_UNIT_ISSUED_ORDER +// EVENT_UNIT_ISSUED_POINT_ORDER +// EVENT_UNIT_ISSUED_TARGET_ORDER + +// See the Player Unit Order Event API above for event info funcs + +native TriggerRegisterUnitInRange takes trigger whichTrigger, unit whichUnit, real range, boolexpr filter returns event + +native TriggerAddCondition takes trigger whichTrigger, boolexpr condition returns triggercondition +native TriggerRemoveCondition takes trigger whichTrigger, triggercondition whichCondition returns nothing +native TriggerClearConditions takes trigger whichTrigger returns nothing + +native TriggerAddAction takes trigger whichTrigger, code actionFunc returns triggeraction +native TriggerRemoveAction takes trigger whichTrigger, triggeraction whichAction returns nothing +native TriggerClearActions takes trigger whichTrigger returns nothing +native TriggerSleepAction takes real timeout returns nothing +native TriggerWaitForSound takes sound s, real offset returns nothing +native TriggerEvaluate takes trigger whichTrigger returns boolean +native TriggerExecute takes trigger whichTrigger returns nothing +native TriggerExecuteWait takes trigger whichTrigger returns nothing +native TriggerSyncStart takes nothing returns nothing +native TriggerSyncReady takes nothing returns nothing + +//============================================================================ +// Widget API +native GetWidgetLife takes widget whichWidget returns real +native SetWidgetLife takes widget whichWidget, real newLife returns nothing +native GetWidgetX takes widget whichWidget returns real +native GetWidgetY takes widget whichWidget returns real +constant native GetTriggerWidget takes nothing returns widget + +//============================================================================ +// Destructable Object API +// Facing arguments are specified in degrees +native CreateDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native CreateDeadDestructable takes integer objectid, real x, real y, real face, real scale, integer variation returns destructable +native CreateDeadDestructableZ takes integer objectid, real x, real y, real z, real face, real scale, integer variation returns destructable +native RemoveDestructable takes destructable d returns nothing +native KillDestructable takes destructable d returns nothing +native SetDestructableInvulnerable takes destructable d, boolean flag returns nothing +native IsDestructableInvulnerable takes destructable d returns boolean +native EnumDestructablesInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetDestructableTypeId takes destructable d returns integer +native GetDestructableX takes destructable d returns real +native GetDestructableY takes destructable d returns real +native SetDestructableLife takes destructable d, real life returns nothing +native GetDestructableLife takes destructable d returns real +native SetDestructableMaxLife takes destructable d, real max returns nothing +native GetDestructableMaxLife takes destructable d returns real +native DestructableRestoreLife takes destructable d, real life, boolean birth returns nothing +native QueueDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimation takes destructable d, string whichAnimation returns nothing +native SetDestructableAnimationSpeed takes destructable d, real speedFactor returns nothing +native ShowDestructable takes destructable d, boolean flag returns nothing +native GetDestructableOccluderHeight takes destructable d returns real +native SetDestructableOccluderHeight takes destructable d, real height returns nothing +native GetDestructableName takes destructable d returns string +constant native GetTriggerDestructable takes nothing returns destructable + +//============================================================================ +// Item API +native CreateItem takes integer itemid, real x, real y returns item +native RemoveItem takes item whichItem returns nothing +native GetItemPlayer takes item whichItem returns player +native GetItemTypeId takes item i returns integer +native GetItemX takes item i returns real +native GetItemY takes item i returns real +native SetItemPosition takes item i, real x, real y returns nothing +native SetItemDropOnDeath takes item whichItem, boolean flag returns nothing +native SetItemDroppable takes item i, boolean flag returns nothing +native SetItemPawnable takes item i, boolean flag returns nothing +native SetItemPlayer takes item whichItem, player whichPlayer, boolean changeColor returns nothing +native SetItemInvulnerable takes item whichItem, boolean flag returns nothing +native IsItemInvulnerable takes item whichItem returns boolean +native SetItemVisible takes item whichItem, boolean show returns nothing +native IsItemVisible takes item whichItem returns boolean +native IsItemOwned takes item whichItem returns boolean +native IsItemPowerup takes item whichItem returns boolean +native IsItemSellable takes item whichItem returns boolean +native IsItemPawnable takes item whichItem returns boolean +native IsItemIdPowerup takes integer itemId returns boolean +native IsItemIdSellable takes integer itemId returns boolean +native IsItemIdPawnable takes integer itemId returns boolean +native EnumItemsInRect takes rect r, boolexpr filter, code actionFunc returns nothing +native GetItemLevel takes item whichItem returns integer +native GetItemType takes item whichItem returns itemtype +native SetItemDropID takes item whichItem, integer unitId returns nothing +constant native GetItemName takes item whichItem returns string +native GetItemCharges takes item whichItem returns integer +native SetItemCharges takes item whichItem, integer charges returns nothing +native GetItemUserData takes item whichItem returns integer +native SetItemUserData takes item whichItem, integer data returns nothing + +//============================================================================ +// Unit API +// Facing arguments are specified in degrees +native CreateUnit takes player id, integer unitid, real x, real y, real face returns unit +native CreateUnitByName takes player whichPlayer, string unitname, real x, real y, real face returns unit +native CreateUnitAtLoc takes player id, integer unitid, location whichLocation, real face returns unit +native CreateUnitAtLocByName takes player id, string unitname, location whichLocation, real face returns unit +native CreateCorpse takes player whichPlayer, integer unitid, real x, real y, real face returns unit + +native KillUnit takes unit whichUnit returns nothing +native RemoveUnit takes unit whichUnit returns nothing +native ShowUnit takes unit whichUnit, boolean show returns nothing + +native SetUnitState takes unit whichUnit, unitstate whichUnitState, real newVal returns nothing +native SetUnitX takes unit whichUnit, real newX returns nothing +native SetUnitY takes unit whichUnit, real newY returns nothing +native SetUnitPosition takes unit whichUnit, real newX, real newY returns nothing +native SetUnitPositionLoc takes unit whichUnit, location whichLocation returns nothing +native SetUnitFacing takes unit whichUnit, real facingAngle returns nothing +native SetUnitFacingTimed takes unit whichUnit, real facingAngle, real duration returns nothing +native SetUnitMoveSpeed takes unit whichUnit, real newSpeed returns nothing +native SetUnitFlyHeight takes unit whichUnit, real newHeight, real rate returns nothing +native SetUnitTurnSpeed takes unit whichUnit, real newTurnSpeed returns nothing +native SetUnitPropWindow takes unit whichUnit, real newPropWindowAngle returns nothing +native SetUnitAcquireRange takes unit whichUnit, real newAcquireRange returns nothing +native SetUnitCreepGuard takes unit whichUnit, boolean creepGuard returns nothing + +native GetUnitAcquireRange takes unit whichUnit returns real +native GetUnitTurnSpeed takes unit whichUnit returns real +native GetUnitPropWindow takes unit whichUnit returns real +native GetUnitFlyHeight takes unit whichUnit returns real + +native GetUnitDefaultAcquireRange takes unit whichUnit returns real +native GetUnitDefaultTurnSpeed takes unit whichUnit returns real +native GetUnitDefaultPropWindow takes unit whichUnit returns real +native GetUnitDefaultFlyHeight takes unit whichUnit returns real + +native SetUnitOwner takes unit whichUnit, player whichPlayer, boolean changeColor returns nothing +native SetUnitColor takes unit whichUnit, playercolor whichColor returns nothing + +native SetUnitScale takes unit whichUnit, real scaleX, real scaleY, real scaleZ returns nothing +native SetUnitTimeScale takes unit whichUnit, real timeScale returns nothing +native SetUnitBlendTime takes unit whichUnit, real blendTime returns nothing +native SetUnitVertexColor takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing + +native QueueUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimation takes unit whichUnit, string whichAnimation returns nothing +native SetUnitAnimationByIndex takes unit whichUnit, integer whichAnimation returns nothing +native SetUnitAnimationWithRarity takes unit whichUnit, string whichAnimation, raritycontrol rarity returns nothing +native AddUnitAnimationProperties takes unit whichUnit, string animProperties, boolean add returns nothing + +native SetUnitLookAt takes unit whichUnit, string whichBone, unit lookAtTarget, real offsetX, real offsetY, real offsetZ returns nothing +native ResetUnitLookAt takes unit whichUnit returns nothing + +native SetUnitRescuable takes unit whichUnit, player byWhichPlayer, boolean flag returns nothing +native SetUnitRescueRange takes unit whichUnit, real range returns nothing + +native SetHeroStr takes unit whichHero, integer newStr, boolean permanent returns nothing +native SetHeroAgi takes unit whichHero, integer newAgi, boolean permanent returns nothing +native SetHeroInt takes unit whichHero, integer newInt, boolean permanent returns nothing + +native GetHeroStr takes unit whichHero, boolean includeBonuses returns integer +native GetHeroAgi takes unit whichHero, boolean includeBonuses returns integer +native GetHeroInt takes unit whichHero, boolean includeBonuses returns integer + +native UnitStripHeroLevel takes unit whichHero, integer howManyLevels returns boolean + +native GetHeroXP takes unit whichHero returns integer +native SetHeroXP takes unit whichHero, integer newXpVal, boolean showEyeCandy returns nothing + +native GetHeroSkillPoints takes unit whichHero returns integer +native UnitModifySkillPoints takes unit whichHero, integer skillPointDelta returns boolean + +native AddHeroXP takes unit whichHero, integer xpToAdd, boolean showEyeCandy returns nothing +native SetHeroLevel takes unit whichHero, integer level, boolean showEyeCandy returns nothing +constant native GetHeroLevel takes unit whichHero returns integer +constant native GetUnitLevel takes unit whichUnit returns integer +native GetHeroProperName takes unit whichHero returns string +native SuspendHeroXP takes unit whichHero, boolean flag returns nothing +native IsSuspendedXP takes unit whichHero returns boolean +native SelectHeroSkill takes unit whichHero, integer abilcode returns nothing +native GetUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native DecUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native IncUnitAbilityLevel takes unit whichUnit, integer abilcode returns integer +native SetUnitAbilityLevel takes unit whichUnit, integer abilcode, integer level returns integer +native ReviveHero takes unit whichHero, real x, real y, boolean doEyecandy returns boolean +native ReviveHeroLoc takes unit whichHero, location loc, boolean doEyecandy returns boolean +native SetUnitExploded takes unit whichUnit, boolean exploded returns nothing +native SetUnitInvulnerable takes unit whichUnit, boolean flag returns nothing +native PauseUnit takes unit whichUnit, boolean flag returns nothing +native IsUnitPaused takes unit whichHero returns boolean +native SetUnitPathing takes unit whichUnit, boolean flag returns nothing + +native ClearSelection takes nothing returns nothing +native SelectUnit takes unit whichUnit, boolean flag returns nothing + +native GetUnitPointValue takes unit whichUnit returns integer +native GetUnitPointValueByType takes integer unitType returns integer +//native SetUnitPointValueByType takes integer unitType, integer newPointValue returns nothing + +native UnitAddItem takes unit whichUnit, item whichItem returns boolean +native UnitAddItemById takes unit whichUnit, integer itemId returns item +native UnitAddItemToSlotById takes unit whichUnit, integer itemId, integer itemSlot returns boolean +native UnitRemoveItem takes unit whichUnit, item whichItem returns nothing +native UnitRemoveItemFromSlot takes unit whichUnit, integer itemSlot returns item +native UnitHasItem takes unit whichUnit, item whichItem returns boolean +native UnitItemInSlot takes unit whichUnit, integer itemSlot returns item +native UnitInventorySize takes unit whichUnit returns integer + +native UnitDropItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitDropItemSlot takes unit whichUnit, item whichItem, integer slot returns boolean +native UnitDropItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +native UnitUseItem takes unit whichUnit, item whichItem returns boolean +native UnitUseItemPoint takes unit whichUnit, item whichItem, real x, real y returns boolean +native UnitUseItemTarget takes unit whichUnit, item whichItem, widget target returns boolean + +constant native GetUnitX takes unit whichUnit returns real +constant native GetUnitY takes unit whichUnit returns real +constant native GetUnitLoc takes unit whichUnit returns location +constant native GetUnitFacing takes unit whichUnit returns real +constant native GetUnitMoveSpeed takes unit whichUnit returns real +constant native GetUnitDefaultMoveSpeed takes unit whichUnit returns real +constant native GetUnitState takes unit whichUnit, unitstate whichUnitState returns real +constant native GetOwningPlayer takes unit whichUnit returns player +constant native GetUnitTypeId takes unit whichUnit returns integer +constant native GetUnitRace takes unit whichUnit returns race +constant native GetUnitName takes unit whichUnit returns string +constant native GetUnitFoodUsed takes unit whichUnit returns integer +constant native GetUnitFoodMade takes unit whichUnit returns integer +constant native GetFoodMade takes integer unitId returns integer +constant native GetFoodUsed takes integer unitId returns integer +native SetUnitUseFood takes unit whichUnit, boolean useFood returns nothing + +constant native GetUnitRallyPoint takes unit whichUnit returns location +constant native GetUnitRallyUnit takes unit whichUnit returns unit +constant native GetUnitRallyDestructable takes unit whichUnit returns destructable + +constant native IsUnitInGroup takes unit whichUnit, group whichGroup returns boolean +constant native IsUnitInForce takes unit whichUnit, force whichForce returns boolean +constant native IsUnitOwnedByPlayer takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitAlly takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitEnemy takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitVisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitDetected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitInvisible takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitFogged takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitMasked takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitSelected takes unit whichUnit, player whichPlayer returns boolean +constant native IsUnitRace takes unit whichUnit, race whichRace returns boolean +constant native IsUnitType takes unit whichUnit, unittype whichUnitType returns boolean +constant native IsUnit takes unit whichUnit, unit whichSpecifiedUnit returns boolean +constant native IsUnitInRange takes unit whichUnit, unit otherUnit, real distance returns boolean +constant native IsUnitInRangeXY takes unit whichUnit, real x, real y, real distance returns boolean +constant native IsUnitInRangeLoc takes unit whichUnit, location whichLocation, real distance returns boolean +constant native IsUnitHidden takes unit whichUnit returns boolean +constant native IsUnitIllusion takes unit whichUnit returns boolean + +constant native IsUnitInTransport takes unit whichUnit, unit whichTransport returns boolean +constant native IsUnitLoaded takes unit whichUnit returns boolean + +constant native IsHeroUnitId takes integer unitId returns boolean +constant native IsUnitIdType takes integer unitId, unittype whichUnitType returns boolean + +native UnitShareVision takes unit whichUnit, player whichPlayer, boolean share returns nothing +native UnitSuspendDecay takes unit whichUnit, boolean suspend returns nothing +native UnitAddType takes unit whichUnit, unittype whichUnitType returns boolean +native UnitRemoveType takes unit whichUnit, unittype whichUnitType returns boolean + +native UnitAddAbility takes unit whichUnit, integer abilityId returns boolean +native UnitRemoveAbility takes unit whichUnit, integer abilityId returns boolean +native UnitMakeAbilityPermanent takes unit whichUnit, boolean permanent, integer abilityId returns boolean +native UnitRemoveBuffs takes unit whichUnit, boolean removePositive, boolean removeNegative returns nothing +native UnitRemoveBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns nothing +native UnitHasBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean +native UnitCountBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns integer +native UnitAddSleep takes unit whichUnit, boolean add returns nothing +native UnitCanSleep takes unit whichUnit returns boolean +native UnitAddSleepPerm takes unit whichUnit, boolean add returns nothing +native UnitCanSleepPerm takes unit whichUnit returns boolean +native UnitIsSleeping takes unit whichUnit returns boolean +native UnitWakeUp takes unit whichUnit returns nothing +native UnitApplyTimedLife takes unit whichUnit, integer buffId, real duration returns nothing +native UnitIgnoreAlarm takes unit whichUnit, boolean flag returns boolean +native UnitIgnoreAlarmToggled takes unit whichUnit returns boolean +native UnitResetCooldown takes unit whichUnit returns nothing +native UnitSetConstructionProgress takes unit whichUnit, integer constructionPercentage returns nothing +native UnitSetUpgradeProgress takes unit whichUnit, integer upgradePercentage returns nothing +native UnitPauseTimedLife takes unit whichUnit, boolean flag returns nothing +native UnitSetUsesAltIcon takes unit whichUnit, boolean flag returns nothing + +native UnitDamagePoint takes unit whichUnit, real delay, real radius, real x, real y, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean +native UnitDamageTarget takes unit whichUnit, widget target, real amount, boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType returns boolean + +native IssueImmediateOrder takes unit whichUnit, string order returns boolean +native IssueImmediateOrderById takes unit whichUnit, integer order returns boolean +native IssuePointOrder takes unit whichUnit, string order, real x, real y returns boolean +native IssuePointOrderLoc takes unit whichUnit, string order, location whichLocation returns boolean +native IssuePointOrderById takes unit whichUnit, integer order, real x, real y returns boolean +native IssuePointOrderByIdLoc takes unit whichUnit, integer order, location whichLocation returns boolean +native IssueTargetOrder takes unit whichUnit, string order, widget targetWidget returns boolean +native IssueTargetOrderById takes unit whichUnit, integer order, widget targetWidget returns boolean +native IssueInstantPointOrder takes unit whichUnit, string order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantPointOrderById takes unit whichUnit, integer order, real x, real y, widget instantTargetWidget returns boolean +native IssueInstantTargetOrder takes unit whichUnit, string order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueInstantTargetOrderById takes unit whichUnit, integer order, widget targetWidget, widget instantTargetWidget returns boolean +native IssueBuildOrder takes unit whichPeon, string unitToBuild, real x, real y returns boolean +native IssueBuildOrderById takes unit whichPeon, integer unitId, real x, real y returns boolean + +native IssueNeutralImmediateOrder takes player forWhichPlayer, unit neutralStructure, string unitToBuild returns boolean +native IssueNeutralImmediateOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId returns boolean +native IssueNeutralPointOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, real x, real y returns boolean +native IssueNeutralPointOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, real x, real y returns boolean +native IssueNeutralTargetOrder takes player forWhichPlayer,unit neutralStructure, string unitToBuild, widget target returns boolean +native IssueNeutralTargetOrderById takes player forWhichPlayer,unit neutralStructure, integer unitId, widget target returns boolean + +native GetUnitCurrentOrder takes unit whichUnit returns integer + +native SetResourceAmount takes unit whichUnit, integer amount returns nothing +native AddResourceAmount takes unit whichUnit, integer amount returns nothing +native GetResourceAmount takes unit whichUnit returns integer + +native WaygateGetDestinationX takes unit waygate returns real +native WaygateGetDestinationY takes unit waygate returns real +native WaygateSetDestination takes unit waygate, real x, real y returns nothing +native WaygateActivate takes unit waygate, boolean activate returns nothing +native WaygateIsActive takes unit waygate returns boolean + +native AddItemToAllStock takes integer itemId, integer currentStock, integer stockMax returns nothing +native AddItemToStock takes unit whichUnit, integer itemId, integer currentStock, integer stockMax returns nothing +native AddUnitToAllStock takes integer unitId, integer currentStock, integer stockMax returns nothing +native AddUnitToStock takes unit whichUnit, integer unitId, integer currentStock, integer stockMax returns nothing + +native RemoveItemFromAllStock takes integer itemId returns nothing +native RemoveItemFromStock takes unit whichUnit, integer itemId returns nothing +native RemoveUnitFromAllStock takes integer unitId returns nothing +native RemoveUnitFromStock takes unit whichUnit, integer unitId returns nothing + +native SetAllItemTypeSlots takes integer slots returns nothing +native SetAllUnitTypeSlots takes integer slots returns nothing +native SetItemTypeSlots takes unit whichUnit, integer slots returns nothing +native SetUnitTypeSlots takes unit whichUnit, integer slots returns nothing + +native GetUnitUserData takes unit whichUnit returns integer +native SetUnitUserData takes unit whichUnit, integer data returns nothing + +//============================================================================ +// Player API +constant native Player takes integer number returns player +constant native GetLocalPlayer takes nothing returns player +constant native IsPlayerAlly takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerEnemy takes player whichPlayer, player otherPlayer returns boolean +constant native IsPlayerInForce takes player whichPlayer, force whichForce returns boolean +constant native IsPlayerObserver takes player whichPlayer returns boolean +constant native IsVisibleToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationVisibleToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsFoggedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationFoggedToPlayer takes location whichLocation, player whichPlayer returns boolean +constant native IsMaskedToPlayer takes real x, real y, player whichPlayer returns boolean +constant native IsLocationMaskedToPlayer takes location whichLocation, player whichPlayer returns boolean + +constant native GetPlayerRace takes player whichPlayer returns race +constant native GetPlayerId takes player whichPlayer returns integer +constant native GetPlayerUnitCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerTypedUnitCount takes player whichPlayer, string unitName, boolean includeIncomplete, boolean includeUpgrades returns integer +constant native GetPlayerStructureCount takes player whichPlayer, boolean includeIncomplete returns integer +constant native GetPlayerState takes player whichPlayer, playerstate whichPlayerState returns integer +constant native GetPlayerScore takes player whichPlayer, playerscore whichPlayerScore returns integer +constant native GetPlayerAlliance takes player sourcePlayer, player otherPlayer, alliancetype whichAllianceSetting returns boolean + +constant native GetPlayerHandicap takes player whichPlayer returns real +constant native GetPlayerHandicapXP takes player whichPlayer returns real +constant native SetPlayerHandicap takes player whichPlayer, real handicap returns nothing +constant native SetPlayerHandicapXP takes player whichPlayer, real handicap returns nothing + +constant native SetPlayerTechMaxAllowed takes player whichPlayer, integer techid, integer maximum returns nothing +constant native GetPlayerTechMaxAllowed takes player whichPlayer, integer techid returns integer +constant native AddPlayerTechResearched takes player whichPlayer, integer techid, integer levels returns nothing +constant native SetPlayerTechResearched takes player whichPlayer, integer techid, integer setToLevel returns nothing +constant native GetPlayerTechResearched takes player whichPlayer, integer techid, boolean specificonly returns boolean +constant native GetPlayerTechCount takes player whichPlayer, integer techid, boolean specificonly returns integer + +native SetPlayerUnitsOwner takes player whichPlayer, integer newOwner returns nothing +native CripplePlayer takes player whichPlayer, force toWhichPlayers, boolean flag returns nothing + +native SetPlayerAbilityAvailable takes player whichPlayer, integer abilid, boolean avail returns nothing + +native SetPlayerState takes player whichPlayer, playerstate whichPlayerState, integer value returns nothing +native RemovePlayer takes player whichPlayer, playergameresult gameResult returns nothing + +// Used to store hero level data for the scorescreen +// before units are moved to neutral passive in melee games +// +native CachePlayerHeroData takes player whichPlayer returns nothing + +//============================================================================ +// Fog of War API +native SetFogStateRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision returns nothing +native SetFogStateRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision returns nothing +native SetFogStateRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision returns nothing +native FogMaskEnable takes boolean enable returns nothing +native IsFogMaskEnabled takes nothing returns boolean +native FogEnable takes boolean enable returns nothing +native IsFogEnabled takes nothing returns boolean + +native CreateFogModifierRect takes player forWhichPlayer, fogstate whichState, rect where, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadius takes player forWhichPlayer, fogstate whichState, real centerx, real centerY, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native CreateFogModifierRadiusLoc takes player forWhichPlayer, fogstate whichState, location center, real radius, boolean useSharedVision, boolean afterUnits returns fogmodifier +native DestroyFogModifier takes fogmodifier whichFogModifier returns nothing +native FogModifierStart takes fogmodifier whichFogModifier returns nothing +native FogModifierStop takes fogmodifier whichFogModifier returns nothing + +//============================================================================ +// Game API +native VersionGet takes nothing returns version +native VersionCompatible takes version whichVersion returns boolean +native VersionSupported takes version whichVersion returns boolean + +native EndGame takes boolean doScoreScreen returns nothing + +// Async only! +native ChangeLevel takes string newLevel, boolean doScoreScreen returns nothing +native RestartGame takes boolean doScoreScreen returns nothing +native ReloadGame takes nothing returns nothing +// %%% SetCampaignMenuRace is deprecated. It must remain to support +// old maps which use it, but all new maps should use SetCampaignMenuRaceEx +native SetCampaignMenuRace takes race r returns nothing +native SetCampaignMenuRaceEx takes integer campaignIndex returns nothing +native ForceCampaignSelectScreen takes nothing returns nothing + +native LoadGame takes string saveFileName, boolean doScoreScreen returns nothing +native SaveGame takes string saveFileName returns nothing +native RenameSaveDirectory takes string sourceDirName, string destDirName returns boolean +native RemoveSaveDirectory takes string sourceDirName returns boolean +native CopySaveGame takes string sourceSaveName, string destSaveName returns boolean +native SaveGameExists takes string saveName returns boolean +native SyncSelections takes nothing returns nothing +native SetFloatGameState takes fgamestate whichFloatGameState, real value returns nothing +constant native GetFloatGameState takes fgamestate whichFloatGameState returns real +native SetIntegerGameState takes igamestate whichIntegerGameState, integer value returns nothing +constant native GetIntegerGameState takes igamestate whichIntegerGameState returns integer + + +//============================================================================ +// Campaign API +native SetTutorialCleared takes boolean cleared returns nothing +native SetMissionAvailable takes integer campaignNumber, integer missionNumber, boolean available returns nothing +native SetCampaignAvailable takes integer campaignNumber, boolean available returns nothing +native SetOpCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native SetEdCinematicAvailable takes integer campaignNumber, boolean available returns nothing +native GetDefaultDifficulty takes nothing returns gamedifficulty +native SetDefaultDifficulty takes gamedifficulty g returns nothing +native SetCustomCampaignButtonVisible takes integer whichButton, boolean visible returns nothing +native GetCustomCampaignButtonVisible takes integer whichButton returns boolean +native DoNotSaveReplay takes nothing returns nothing + +//============================================================================ +// Dialog API +native DialogCreate takes nothing returns dialog +native DialogDestroy takes dialog whichDialog returns nothing +native DialogClear takes dialog whichDialog returns nothing +native DialogSetMessage takes dialog whichDialog, string messageText returns nothing +native DialogAddButton takes dialog whichDialog, string buttonText, integer hotkey returns button +native DialogAddQuitButton takes dialog whichDialog, boolean doScoreScreen, string buttonText, integer hotkey returns button +native DialogDisplay takes player whichPlayer, dialog whichDialog, boolean flag returns nothing + +// Creates a new or reads in an existing game cache file stored +// in the current campaign profile dir +// +native ReloadGameCachesFromDisk takes nothing returns boolean + +native InitGameCache takes string campaignFile returns gamecache +native SaveGameCache takes gamecache whichCache returns boolean + +native StoreInteger takes gamecache cache, string missionKey, string key, integer value returns nothing +native StoreReal takes gamecache cache, string missionKey, string key, real value returns nothing +native StoreBoolean takes gamecache cache, string missionKey, string key, boolean value returns nothing +native StoreUnit takes gamecache cache, string missionKey, string key, unit whichUnit returns boolean +native StoreString takes gamecache cache, string missionKey, string key, string value returns boolean + +native SyncStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredReal takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native SyncStoredString takes gamecache cache, string missionKey, string key returns nothing + +native HaveStoredInteger takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredReal takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredUnit takes gamecache cache, string missionKey, string key returns boolean +native HaveStoredString takes gamecache cache, string missionKey, string key returns boolean + +native FlushGameCache takes gamecache cache returns nothing +native FlushStoredMission takes gamecache cache, string missionKey returns nothing +native FlushStoredInteger takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredReal takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredBoolean takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredUnit takes gamecache cache, string missionKey, string key returns nothing +native FlushStoredString takes gamecache cache, string missionKey, string key returns nothing + +// Will return 0 if the specified value's data is not found in the cache +native GetStoredInteger takes gamecache cache, string missionKey, string key returns integer +native GetStoredReal takes gamecache cache, string missionKey, string key returns real +native GetStoredBoolean takes gamecache cache, string missionKey, string key returns boolean +native GetStoredString takes gamecache cache, string missionKey, string key returns string +native RestoreUnit takes gamecache cache, string missionKey, string key, player forWhichPlayer, real x, real y, real facing returns unit + + +native InitHashtable takes nothing returns hashtable + +native SaveInteger takes hashtable table, integer parentKey, integer childKey, integer value returns nothing +native SaveReal takes hashtable table, integer parentKey, integer childKey, real value returns nothing +native SaveBoolean takes hashtable table, integer parentKey, integer childKey, boolean value returns nothing +native SaveStr takes hashtable table, integer parentKey, integer childKey, string value returns boolean +native SavePlayerHandle takes hashtable table, integer parentKey, integer childKey, player whichPlayer returns boolean +native SaveWidgetHandle takes hashtable table, integer parentKey, integer childKey, widget whichWidget returns boolean +native SaveDestructableHandle takes hashtable table, integer parentKey, integer childKey, destructable whichDestructable returns boolean +native SaveItemHandle takes hashtable table, integer parentKey, integer childKey, item whichItem returns boolean +native SaveUnitHandle takes hashtable table, integer parentKey, integer childKey, unit whichUnit returns boolean +native SaveAbilityHandle takes hashtable table, integer parentKey, integer childKey, ability whichAbility returns boolean +native SaveTimerHandle takes hashtable table, integer parentKey, integer childKey, timer whichTimer returns boolean +native SaveTriggerHandle takes hashtable table, integer parentKey, integer childKey, trigger whichTrigger returns boolean +native SaveTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey, triggercondition whichTriggercondition returns boolean +native SaveTriggerActionHandle takes hashtable table, integer parentKey, integer childKey, triggeraction whichTriggeraction returns boolean +native SaveTriggerEventHandle takes hashtable table, integer parentKey, integer childKey, event whichEvent returns boolean +native SaveForceHandle takes hashtable table, integer parentKey, integer childKey, force whichForce returns boolean +native SaveGroupHandle takes hashtable table, integer parentKey, integer childKey, group whichGroup returns boolean +native SaveLocationHandle takes hashtable table, integer parentKey, integer childKey, location whichLocation returns boolean +native SaveRectHandle takes hashtable table, integer parentKey, integer childKey, rect whichRect returns boolean +native SaveBooleanExprHandle takes hashtable table, integer parentKey, integer childKey, boolexpr whichBoolexpr returns boolean +native SaveSoundHandle takes hashtable table, integer parentKey, integer childKey, sound whichSound returns boolean +native SaveEffectHandle takes hashtable table, integer parentKey, integer childKey, effect whichEffect returns boolean +native SaveUnitPoolHandle takes hashtable table, integer parentKey, integer childKey, unitpool whichUnitpool returns boolean +native SaveItemPoolHandle takes hashtable table, integer parentKey, integer childKey, itempool whichItempool returns boolean +native SaveQuestHandle takes hashtable table, integer parentKey, integer childKey, quest whichQuest returns boolean +native SaveQuestItemHandle takes hashtable table, integer parentKey, integer childKey, questitem whichQuestitem returns boolean +native SaveDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey, defeatcondition whichDefeatcondition returns boolean +native SaveTimerDialogHandle takes hashtable table, integer parentKey, integer childKey, timerdialog whichTimerdialog returns boolean +native SaveLeaderboardHandle takes hashtable table, integer parentKey, integer childKey, leaderboard whichLeaderboard returns boolean +native SaveMultiboardHandle takes hashtable table, integer parentKey, integer childKey, multiboard whichMultiboard returns boolean +native SaveMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey, multiboarditem whichMultiboarditem returns boolean +native SaveTrackableHandle takes hashtable table, integer parentKey, integer childKey, trackable whichTrackable returns boolean +native SaveDialogHandle takes hashtable table, integer parentKey, integer childKey, dialog whichDialog returns boolean +native SaveButtonHandle takes hashtable table, integer parentKey, integer childKey, button whichButton returns boolean +native SaveTextTagHandle takes hashtable table, integer parentKey, integer childKey, texttag whichTexttag returns boolean +native SaveLightningHandle takes hashtable table, integer parentKey, integer childKey, lightning whichLightning returns boolean +native SaveImageHandle takes hashtable table, integer parentKey, integer childKey, image whichImage returns boolean +native SaveUbersplatHandle takes hashtable table, integer parentKey, integer childKey, ubersplat whichUbersplat returns boolean +native SaveRegionHandle takes hashtable table, integer parentKey, integer childKey, region whichRegion returns boolean +native SaveFogStateHandle takes hashtable table, integer parentKey, integer childKey, fogstate whichFogState returns boolean +native SaveFogModifierHandle takes hashtable table, integer parentKey, integer childKey, fogmodifier whichFogModifier returns boolean +native SaveAgentHandle takes hashtable table, integer parentKey, integer childKey, agent whichAgent returns boolean +native SaveHashtableHandle takes hashtable table, integer parentKey, integer childKey, hashtable whichHashtable returns boolean + + +native LoadInteger takes hashtable table, integer parentKey, integer childKey returns integer +native LoadReal takes hashtable table, integer parentKey, integer childKey returns real +native LoadBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native LoadStr takes hashtable table, integer parentKey, integer childKey returns string +native LoadPlayerHandle takes hashtable table, integer parentKey, integer childKey returns player +native LoadWidgetHandle takes hashtable table, integer parentKey, integer childKey returns widget +native LoadDestructableHandle takes hashtable table, integer parentKey, integer childKey returns destructable +native LoadItemHandle takes hashtable table, integer parentKey, integer childKey returns item +native LoadUnitHandle takes hashtable table, integer parentKey, integer childKey returns unit +native LoadAbilityHandle takes hashtable table, integer parentKey, integer childKey returns ability +native LoadTimerHandle takes hashtable table, integer parentKey, integer childKey returns timer +native LoadTriggerHandle takes hashtable table, integer parentKey, integer childKey returns trigger +native LoadTriggerConditionHandle takes hashtable table, integer parentKey, integer childKey returns triggercondition +native LoadTriggerActionHandle takes hashtable table, integer parentKey, integer childKey returns triggeraction +native LoadTriggerEventHandle takes hashtable table, integer parentKey, integer childKey returns event +native LoadForceHandle takes hashtable table, integer parentKey, integer childKey returns force +native LoadGroupHandle takes hashtable table, integer parentKey, integer childKey returns group +native LoadLocationHandle takes hashtable table, integer parentKey, integer childKey returns location +native LoadRectHandle takes hashtable table, integer parentKey, integer childKey returns rect +native LoadBooleanExprHandle takes hashtable table, integer parentKey, integer childKey returns boolexpr +native LoadSoundHandle takes hashtable table, integer parentKey, integer childKey returns sound +native LoadEffectHandle takes hashtable table, integer parentKey, integer childKey returns effect +native LoadUnitPoolHandle takes hashtable table, integer parentKey, integer childKey returns unitpool +native LoadItemPoolHandle takes hashtable table, integer parentKey, integer childKey returns itempool +native LoadQuestHandle takes hashtable table, integer parentKey, integer childKey returns quest +native LoadQuestItemHandle takes hashtable table, integer parentKey, integer childKey returns questitem +native LoadDefeatConditionHandle takes hashtable table, integer parentKey, integer childKey returns defeatcondition +native LoadTimerDialogHandle takes hashtable table, integer parentKey, integer childKey returns timerdialog +native LoadLeaderboardHandle takes hashtable table, integer parentKey, integer childKey returns leaderboard +native LoadMultiboardHandle takes hashtable table, integer parentKey, integer childKey returns multiboard +native LoadMultiboardItemHandle takes hashtable table, integer parentKey, integer childKey returns multiboarditem +native LoadTrackableHandle takes hashtable table, integer parentKey, integer childKey returns trackable +native LoadDialogHandle takes hashtable table, integer parentKey, integer childKey returns dialog +native LoadButtonHandle takes hashtable table, integer parentKey, integer childKey returns button +native LoadTextTagHandle takes hashtable table, integer parentKey, integer childKey returns texttag +native LoadLightningHandle takes hashtable table, integer parentKey, integer childKey returns lightning +native LoadImageHandle takes hashtable table, integer parentKey, integer childKey returns image +native LoadUbersplatHandle takes hashtable table, integer parentKey, integer childKey returns ubersplat +native LoadRegionHandle takes hashtable table, integer parentKey, integer childKey returns region +native LoadFogStateHandle takes hashtable table, integer parentKey, integer childKey returns fogstate +native LoadFogModifierHandle takes hashtable table, integer parentKey, integer childKey returns fogmodifier +native LoadHashtableHandle takes hashtable table, integer parentKey, integer childKey returns hashtable + +native HaveSavedInteger takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedReal takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedString takes hashtable table, integer parentKey, integer childKey returns boolean +native HaveSavedHandle takes hashtable table, integer parentKey, integer childKey returns boolean + +native RemoveSavedInteger takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedReal takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedBoolean takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedString takes hashtable table, integer parentKey, integer childKey returns nothing +native RemoveSavedHandle takes hashtable table, integer parentKey, integer childKey returns nothing + +native FlushParentHashtable takes hashtable table returns nothing +native FlushChildHashtable takes hashtable table, integer parentKey returns nothing + + +//============================================================================ +// Randomization API +native GetRandomInt takes integer lowBound, integer highBound returns integer +native GetRandomReal takes real lowBound, real highBound returns real + +native CreateUnitPool takes nothing returns unitpool +native DestroyUnitPool takes unitpool whichPool returns nothing +native UnitPoolAddUnitType takes unitpool whichPool, integer unitId, real weight returns nothing +native UnitPoolRemoveUnitType takes unitpool whichPool, integer unitId returns nothing +native PlaceRandomUnit takes unitpool whichPool, player forWhichPlayer, real x, real y, real facing returns unit + +native CreateItemPool takes nothing returns itempool +native DestroyItemPool takes itempool whichItemPool returns nothing +native ItemPoolAddItemType takes itempool whichItemPool, integer itemId, real weight returns nothing +native ItemPoolRemoveItemType takes itempool whichItemPool, integer itemId returns nothing +native PlaceRandomItem takes itempool whichItemPool, real x, real y returns item + +// Choose any random unit/item. (NP means Neutral Passive) +native ChooseRandomCreep takes integer level returns integer +native ChooseRandomNPBuilding takes nothing returns integer +native ChooseRandomItem takes integer level returns integer +native ChooseRandomItemEx takes itemtype whichType, integer level returns integer +native SetRandomSeed takes integer seed returns nothing + +//============================================================================ +// Visual API +native SetTerrainFog takes real a, real b, real c, real d, real e returns nothing +native ResetTerrainFog takes nothing returns nothing + +native SetUnitFog takes real a, real b, real c, real d, real e returns nothing +native SetTerrainFogEx takes integer style, real zstart, real zend, real density, real red, real green, real blue returns nothing +native DisplayTextToPlayer takes player toPlayer, real x, real y, string message returns nothing +native DisplayTimedTextToPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native DisplayTimedTextFromPlayer takes player toPlayer, real x, real y, real duration, string message returns nothing +native ClearTextMessages takes nothing returns nothing +native SetDayNightModels takes string terrainDNCFile, string unitDNCFile returns nothing +native SetSkyModel takes string skyModelFile returns nothing +native EnableUserControl takes boolean b returns nothing +native EnableUserUI takes boolean b returns nothing +native SuspendTimeOfDay takes boolean b returns nothing +native SetTimeOfDayScale takes real r returns nothing +native GetTimeOfDayScale takes nothing returns real +native ShowInterface takes boolean flag, real fadeDuration returns nothing +native PauseGame takes boolean flag returns nothing +native UnitAddIndicator takes unit whichUnit, integer red, integer green, integer blue, integer alpha returns nothing +native AddIndicator takes widget whichWidget, integer red, integer green, integer blue, integer alpha returns nothing +native PingMinimap takes real x, real y, real duration returns nothing +native PingMinimapEx takes real x, real y, real duration, integer red, integer green, integer blue, boolean extraEffects returns nothing +native EnableOcclusion takes boolean flag returns nothing +native SetIntroShotText takes string introText returns nothing +native SetIntroShotModel takes string introModelPath returns nothing +native EnableWorldFogBoundary takes boolean b returns nothing +native PlayModelCinematic takes string modelName returns nothing +native PlayCinematic takes string movieName returns nothing +native ForceUIKey takes string key returns nothing +native ForceUICancel takes nothing returns nothing +native DisplayLoadDialog takes nothing returns nothing +native SetAltMinimapIcon takes string iconPath returns nothing +native DisableRestartMission takes boolean flag returns nothing + +native CreateTextTag takes nothing returns texttag +native DestroyTextTag takes texttag t returns nothing +native SetTextTagText takes texttag t, string s, real height returns nothing +native SetTextTagPos takes texttag t, real x, real y, real heightOffset returns nothing +native SetTextTagPosUnit takes texttag t, unit whichUnit, real heightOffset returns nothing +native SetTextTagColor takes texttag t, integer red, integer green, integer blue, integer alpha returns nothing +native SetTextTagVelocity takes texttag t, real xvel, real yvel returns nothing +native SetTextTagVisibility takes texttag t, boolean flag returns nothing +native SetTextTagSuspended takes texttag t, boolean flag returns nothing +native SetTextTagPermanent takes texttag t, boolean flag returns nothing +native SetTextTagAge takes texttag t, real age returns nothing +native SetTextTagLifespan takes texttag t, real lifespan returns nothing +native SetTextTagFadepoint takes texttag t, real fadepoint returns nothing + +native SetReservedLocalHeroButtons takes integer reserved returns nothing +native GetAllyColorFilterState takes nothing returns integer +native SetAllyColorFilterState takes integer state returns nothing +native GetCreepCampFilterState takes nothing returns boolean +native SetCreepCampFilterState takes boolean state returns nothing +native EnableMinimapFilterButtons takes boolean enableAlly, boolean enableCreep returns nothing +native EnableDragSelect takes boolean state, boolean ui returns nothing +native EnablePreSelect takes boolean state, boolean ui returns nothing +native EnableSelect takes boolean state, boolean ui returns nothing + +//============================================================================ +// Trackable API +native CreateTrackable takes string trackableModelPath, real x, real y, real facing returns trackable + +//============================================================================ +// Quest API +native CreateQuest takes nothing returns quest +native DestroyQuest takes quest whichQuest returns nothing +native QuestSetTitle takes quest whichQuest, string title returns nothing +native QuestSetDescription takes quest whichQuest, string description returns nothing +native QuestSetIconPath takes quest whichQuest, string iconPath returns nothing + +native QuestSetRequired takes quest whichQuest, boolean required returns nothing +native QuestSetCompleted takes quest whichQuest, boolean completed returns nothing +native QuestSetDiscovered takes quest whichQuest, boolean discovered returns nothing +native QuestSetFailed takes quest whichQuest, boolean failed returns nothing +native QuestSetEnabled takes quest whichQuest, boolean enabled returns nothing + +native IsQuestRequired takes quest whichQuest returns boolean +native IsQuestCompleted takes quest whichQuest returns boolean +native IsQuestDiscovered takes quest whichQuest returns boolean +native IsQuestFailed takes quest whichQuest returns boolean +native IsQuestEnabled takes quest whichQuest returns boolean + +native QuestCreateItem takes quest whichQuest returns questitem +native QuestItemSetDescription takes questitem whichQuestItem, string description returns nothing +native QuestItemSetCompleted takes questitem whichQuestItem, boolean completed returns nothing + +native IsQuestItemCompleted takes questitem whichQuestItem returns boolean + +native CreateDefeatCondition takes nothing returns defeatcondition +native DestroyDefeatCondition takes defeatcondition whichCondition returns nothing +native DefeatConditionSetDescription takes defeatcondition whichCondition, string description returns nothing + +native FlashQuestDialogButton takes nothing returns nothing +native ForceQuestDialogUpdate takes nothing returns nothing + +//============================================================================ +// Timer Dialog API +native CreateTimerDialog takes timer t returns timerdialog +native DestroyTimerDialog takes timerdialog whichDialog returns nothing +native TimerDialogSetTitle takes timerdialog whichDialog, string title returns nothing +native TimerDialogSetTitleColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetTimeColor takes timerdialog whichDialog, integer red, integer green, integer blue, integer alpha returns nothing +native TimerDialogSetSpeed takes timerdialog whichDialog, real speedMultFactor returns nothing +native TimerDialogDisplay takes timerdialog whichDialog, boolean display returns nothing +native IsTimerDialogDisplayed takes timerdialog whichDialog returns boolean +native TimerDialogSetRealTimeRemaining takes timerdialog whichDialog, real timeRemaining returns nothing + +//============================================================================ +// Leaderboard API + +// Create a leaderboard object +native CreateLeaderboard takes nothing returns leaderboard +native DestroyLeaderboard takes leaderboard lb returns nothing + +native LeaderboardDisplay takes leaderboard lb, boolean show returns nothing +native IsLeaderboardDisplayed takes leaderboard lb returns boolean + +native LeaderboardGetItemCount takes leaderboard lb returns integer + +native LeaderboardSetSizeByItemCount takes leaderboard lb, integer count returns nothing +native LeaderboardAddItem takes leaderboard lb, string label, integer value, player p returns nothing +native LeaderboardRemoveItem takes leaderboard lb, integer index returns nothing +native LeaderboardRemovePlayerItem takes leaderboard lb, player p returns nothing +native LeaderboardClear takes leaderboard lb returns nothing + +native LeaderboardSortItemsByValue takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByPlayer takes leaderboard lb, boolean ascending returns nothing +native LeaderboardSortItemsByLabel takes leaderboard lb, boolean ascending returns nothing + +native LeaderboardHasPlayerItem takes leaderboard lb, player p returns boolean +native LeaderboardGetPlayerIndex takes leaderboard lb, player p returns integer +native LeaderboardSetLabel takes leaderboard lb, string label returns nothing +native LeaderboardGetLabelText takes leaderboard lb returns string + +native PlayerSetLeaderboard takes player toPlayer, leaderboard lb returns nothing +native PlayerGetLeaderboard takes player toPlayer returns leaderboard + +native LeaderboardSetLabelColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetValueColor takes leaderboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetStyle takes leaderboard lb, boolean showLabel, boolean showNames, boolean showValues, boolean showIcons returns nothing + +native LeaderboardSetItemValue takes leaderboard lb, integer whichItem, integer val returns nothing +native LeaderboardSetItemLabel takes leaderboard lb, integer whichItem, string val returns nothing +native LeaderboardSetItemStyle takes leaderboard lb, integer whichItem, boolean showLabel, boolean showValue, boolean showIcon returns nothing +native LeaderboardSetItemLabelColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing +native LeaderboardSetItemValueColor takes leaderboard lb, integer whichItem, integer red, integer green, integer blue, integer alpha returns nothing + +//============================================================================ +// Multiboard API +//============================================================================ + +// Create a multiboard object +native CreateMultiboard takes nothing returns multiboard +native DestroyMultiboard takes multiboard lb returns nothing + +native MultiboardDisplay takes multiboard lb, boolean show returns nothing +native IsMultiboardDisplayed takes multiboard lb returns boolean + +native MultiboardMinimize takes multiboard lb, boolean minimize returns nothing +native IsMultiboardMinimized takes multiboard lb returns boolean +native MultiboardClear takes multiboard lb returns nothing + +native MultiboardSetTitleText takes multiboard lb, string label returns nothing +native MultiboardGetTitleText takes multiboard lb returns string +native MultiboardSetTitleTextColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing + +native MultiboardGetRowCount takes multiboard lb returns integer +native MultiboardGetColumnCount takes multiboard lb returns integer + +native MultiboardSetColumnCount takes multiboard lb, integer count returns nothing +native MultiboardSetRowCount takes multiboard lb, integer count returns nothing + +// broadcast settings to all items +native MultiboardSetItemsStyle takes multiboard lb, boolean showValues, boolean showIcons returns nothing +native MultiboardSetItemsValue takes multiboard lb, string value returns nothing +native MultiboardSetItemsValueColor takes multiboard lb, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemsWidth takes multiboard lb, real width returns nothing +native MultiboardSetItemsIcon takes multiboard lb, string iconPath returns nothing + + +// funcs for modifying individual items +native MultiboardGetItem takes multiboard lb, integer row, integer column returns multiboarditem +native MultiboardReleaseItem takes multiboarditem mbi returns nothing + +native MultiboardSetItemStyle takes multiboarditem mbi, boolean showValue, boolean showIcon returns nothing +native MultiboardSetItemValue takes multiboarditem mbi, string val returns nothing +native MultiboardSetItemValueColor takes multiboarditem mbi, integer red, integer green, integer blue, integer alpha returns nothing +native MultiboardSetItemWidth takes multiboarditem mbi, real width returns nothing +native MultiboardSetItemIcon takes multiboarditem mbi, string iconFileName returns nothing + +// meant to unequivocally suspend display of existing and +// subsequently displayed multiboards +// +native MultiboardSuppressDisplay takes boolean flag returns nothing + +//============================================================================ +// Camera API +native SetCameraPosition takes real x, real y returns nothing +native SetCameraQuickPosition takes real x, real y returns nothing +native SetCameraBounds takes real x1, real y1, real x2, real y2, real x3, real y3, real x4, real y4 returns nothing +native StopCamera takes nothing returns nothing +native ResetToGameCamera takes real duration returns nothing +native PanCameraTo takes real x, real y returns nothing +native PanCameraToTimed takes real x, real y, real duration returns nothing +native PanCameraToWithZ takes real x, real y, real zOffsetDest returns nothing +native PanCameraToTimedWithZ takes real x, real y, real zOffsetDest, real duration returns nothing +native SetCinematicCamera takes string cameraModelFile returns nothing +native SetCameraRotateMode takes real x, real y, real radiansToSweep, real duration returns nothing +native SetCameraField takes camerafield whichField, real value, real duration returns nothing +native AdjustCameraField takes camerafield whichField, real offset, real duration returns nothing +native SetCameraTargetController takes unit whichUnit, real xoffset, real yoffset, boolean inheritOrientation returns nothing +native SetCameraOrientController takes unit whichUnit, real xoffset, real yoffset returns nothing + +native CreateCameraSetup takes nothing returns camerasetup +native CameraSetupSetField takes camerasetup whichSetup, camerafield whichField, real value, real duration returns nothing +native CameraSetupGetField takes camerasetup whichSetup, camerafield whichField returns real +native CameraSetupSetDestPosition takes camerasetup whichSetup, real x, real y, real duration returns nothing +native CameraSetupGetDestPositionLoc takes camerasetup whichSetup returns location +native CameraSetupGetDestPositionX takes camerasetup whichSetup returns real +native CameraSetupGetDestPositionY takes camerasetup whichSetup returns real +native CameraSetupApply takes camerasetup whichSetup, boolean doPan, boolean panTimed returns nothing +native CameraSetupApplyWithZ takes camerasetup whichSetup, real zDestOffset returns nothing +native CameraSetupApplyForceDuration takes camerasetup whichSetup, boolean doPan, real forceDuration returns nothing +native CameraSetupApplyForceDurationWithZ takes camerasetup whichSetup, real zDestOffset, real forceDuration returns nothing + +native CameraSetTargetNoise takes real mag, real velocity returns nothing +native CameraSetSourceNoise takes real mag, real velocity returns nothing + +native CameraSetTargetNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing +native CameraSetSourceNoiseEx takes real mag, real velocity, boolean vertOnly returns nothing + +native CameraSetSmoothingFactor takes real factor returns nothing + +native SetCineFilterTexture takes string filename returns nothing +native SetCineFilterBlendMode takes blendmode whichMode returns nothing +native SetCineFilterTexMapFlags takes texmapflags whichFlags returns nothing +native SetCineFilterStartUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterEndUV takes real minu, real minv, real maxu, real maxv returns nothing +native SetCineFilterStartColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterEndColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetCineFilterDuration takes real duration returns nothing +native DisplayCineFilter takes boolean flag returns nothing +native IsCineFilterDisplayed takes nothing returns boolean + +native SetCinematicScene takes integer portraitUnitId, playercolor color, string speakerTitle, string text, real sceneDuration, real voiceoverDuration returns nothing +native EndCinematicScene takes nothing returns nothing +native ForceCinematicSubtitles takes boolean flag returns nothing + +native GetCameraMargin takes integer whichMargin returns real + +// These return values for the local players camera only... +constant native GetCameraBoundMinX takes nothing returns real +constant native GetCameraBoundMinY takes nothing returns real +constant native GetCameraBoundMaxX takes nothing returns real +constant native GetCameraBoundMaxY takes nothing returns real +constant native GetCameraField takes camerafield whichField returns real +constant native GetCameraTargetPositionX takes nothing returns real +constant native GetCameraTargetPositionY takes nothing returns real +constant native GetCameraTargetPositionZ takes nothing returns real +constant native GetCameraTargetPositionLoc takes nothing returns location +constant native GetCameraEyePositionX takes nothing returns real +constant native GetCameraEyePositionY takes nothing returns real +constant native GetCameraEyePositionZ takes nothing returns real +constant native GetCameraEyePositionLoc takes nothing returns location + +//============================================================================ +// Sound API +// +native NewSoundEnvironment takes string environmentName returns nothing + +native CreateSound takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string eaxSetting returns sound +native CreateSoundFilenameWithLabel takes string fileName, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate, string SLKEntryName returns sound +native CreateSoundFromLabel takes string soundLabel, boolean looping, boolean is3D, boolean stopwhenoutofrange, integer fadeInRate, integer fadeOutRate returns sound +native CreateMIDISound takes string soundLabel, integer fadeInRate, integer fadeOutRate returns sound + +native SetSoundParamsFromLabel takes sound soundHandle, string soundLabel returns nothing +native SetSoundDistanceCutoff takes sound soundHandle, real cutoff returns nothing +native SetSoundChannel takes sound soundHandle, integer channel returns nothing +native SetSoundVolume takes sound soundHandle, integer volume returns nothing +native SetSoundPitch takes sound soundHandle, real pitch returns nothing + +// the following method must be called immediately after calling "StartSound" +native SetSoundPlayPosition takes sound soundHandle, integer millisecs returns nothing + +// these calls are only valid if the sound was created with 3d enabled +native SetSoundDistances takes sound soundHandle, real minDist, real maxDist returns nothing +native SetSoundConeAngles takes sound soundHandle, real inside, real outside, integer outsideVolume returns nothing +native SetSoundConeOrientation takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundPosition takes sound soundHandle, real x, real y, real z returns nothing +native SetSoundVelocity takes sound soundHandle, real x, real y, real z returns nothing +native AttachSoundToUnit takes sound soundHandle, unit whichUnit returns nothing + +native StartSound takes sound soundHandle returns nothing +native StopSound takes sound soundHandle, boolean killWhenDone, boolean fadeOut returns nothing +native KillSoundWhenDone takes sound soundHandle returns nothing + +// Music Interface. Note that if music is disabled, these calls do nothing +native SetMapMusic takes string musicName, boolean random, integer index returns nothing +native ClearMapMusic takes nothing returns nothing + +native PlayMusic takes string musicName returns nothing +native PlayMusicEx takes string musicName, integer frommsecs, integer fadeinmsecs returns nothing +native StopMusic takes boolean fadeOut returns nothing +native ResumeMusic takes nothing returns nothing + +native PlayThematicMusic takes string musicFileName returns nothing +native PlayThematicMusicEx takes string musicFileName, integer frommsecs returns nothing +native EndThematicMusic takes nothing returns nothing + +native SetMusicVolume takes integer volume returns nothing +native SetMusicPlayPosition takes integer millisecs returns nothing +native SetThematicMusicPlayPosition takes integer millisecs returns nothing + +// other music and sound calls +native SetSoundDuration takes sound soundHandle, integer duration returns nothing +native GetSoundDuration takes sound soundHandle returns integer +native GetSoundFileDuration takes string musicFileName returns integer + +native VolumeGroupSetVolume takes volumegroup vgroup, real scale returns nothing +native VolumeGroupReset takes nothing returns nothing + +native GetSoundIsPlaying takes sound soundHandle returns boolean +native GetSoundIsLoading takes sound soundHandle returns boolean + +native RegisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing +native UnregisterStackedSound takes sound soundHandle, boolean byPosition, real rectwidth, real rectheight returns nothing + +//============================================================================ +// Effects API +// +native AddWeatherEffect takes rect where, integer effectID returns weathereffect +native RemoveWeatherEffect takes weathereffect whichEffect returns nothing +native EnableWeatherEffect takes weathereffect whichEffect, boolean enable returns nothing + +native TerrainDeformCrater takes real x, real y, real radius, real depth, integer duration, boolean permanent returns terraindeformation +native TerrainDeformRipple takes real x, real y, real radius, real depth, integer duration, integer count, real spaceWaves, real timeWaves, real radiusStartPct, boolean limitNeg returns terraindeformation +native TerrainDeformWave takes real x, real y, real dirX, real dirY, real distance, real speed, real radius, real depth, integer trailTime, integer count returns terraindeformation +native TerrainDeformRandom takes real x, real y, real radius, real minDelta, real maxDelta, integer duration, integer updateInterval returns terraindeformation +native TerrainDeformStop takes terraindeformation deformation, integer duration returns nothing +native TerrainDeformStopAll takes nothing returns nothing + +native AddSpecialEffect takes string modelName, real x, real y returns effect +native AddSpecialEffectLoc takes string modelName, location where returns effect +native AddSpecialEffectTarget takes string modelName, widget targetWidget, string attachPointName returns effect +native DestroyEffect takes effect whichEffect returns nothing + +native AddSpellEffect takes string abilityString, effecttype t, real x, real y returns effect +native AddSpellEffectLoc takes string abilityString, effecttype t,location where returns effect +native AddSpellEffectById takes integer abilityId, effecttype t,real x, real y returns effect +native AddSpellEffectByIdLoc takes integer abilityId, effecttype t,location where returns effect +native AddSpellEffectTarget takes string modelName, effecttype t, widget targetWidget, string attachPoint returns effect +native AddSpellEffectTargetById takes integer abilityId, effecttype t, widget targetWidget, string attachPoint returns effect + +native AddLightning takes string codeName, boolean checkVisibility, real x1, real y1, real x2, real y2 returns lightning +native AddLightningEx takes string codeName, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns lightning +native DestroyLightning takes lightning whichBolt returns boolean +native MoveLightning takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real x2, real y2 returns boolean +native MoveLightningEx takes lightning whichBolt, boolean checkVisibility, real x1, real y1, real z1, real x2, real y2, real z2 returns boolean +native GetLightningColorA takes lightning whichBolt returns real +native GetLightningColorR takes lightning whichBolt returns real +native GetLightningColorG takes lightning whichBolt returns real +native GetLightningColorB takes lightning whichBolt returns real +native SetLightningColor takes lightning whichBolt, real r, real g, real b, real a returns boolean + +native GetAbilityEffect takes string abilityString, effecttype t, integer index returns string +native GetAbilityEffectById takes integer abilityId, effecttype t, integer index returns string +native GetAbilitySound takes string abilityString, soundtype t returns string +native GetAbilitySoundById takes integer abilityId, soundtype t returns string + +//============================================================================ +// Terrain API +// +native GetTerrainCliffLevel takes real x, real y returns integer +native SetWaterBaseColor takes integer red, integer green, integer blue, integer alpha returns nothing +native SetWaterDeforms takes boolean val returns nothing +native GetTerrainType takes real x, real y returns integer +native GetTerrainVariance takes real x, real y returns integer +native SetTerrainType takes real x, real y, integer terrainType, integer variation, integer area, integer shape returns nothing +native IsTerrainPathable takes real x, real y, pathingtype t returns boolean +native SetTerrainPathable takes real x, real y, pathingtype t, boolean flag returns nothing + +//============================================================================ +// Image API +// +native CreateImage takes string file, real sizeX, real sizeY, real sizeZ, real posX, real posY, real posZ, real originX, real originY, real originZ, integer imageType returns image +native DestroyImage takes image whichImage returns nothing +native ShowImage takes image whichImage, boolean flag returns nothing +native SetImageConstantHeight takes image whichImage, boolean flag, real height returns nothing +native SetImagePosition takes image whichImage, real x, real y, real z returns nothing +native SetImageColor takes image whichImage, integer red, integer green, integer blue, integer alpha returns nothing +native SetImageRender takes image whichImage, boolean flag returns nothing +native SetImageRenderAlways takes image whichImage, boolean flag returns nothing +native SetImageAboveWater takes image whichImage, boolean flag, boolean useWaterAlpha returns nothing +native SetImageType takes image whichImage, integer imageType returns nothing + +//============================================================================ +// Ubersplat API +// +native CreateUbersplat takes real x, real y, string name, integer red, integer green, integer blue, integer alpha, boolean forcePaused, boolean noBirthTime returns ubersplat +native DestroyUbersplat takes ubersplat whichSplat returns nothing +native ResetUbersplat takes ubersplat whichSplat returns nothing +native FinishUbersplat takes ubersplat whichSplat returns nothing +native ShowUbersplat takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRender takes ubersplat whichSplat, boolean flag returns nothing +native SetUbersplatRenderAlways takes ubersplat whichSplat, boolean flag returns nothing + +//============================================================================ +// Blight API +// +native SetBlight takes player whichPlayer, real x, real y, real radius, boolean addBlight returns nothing +native SetBlightRect takes player whichPlayer, rect r, boolean addBlight returns nothing +native SetBlightPoint takes player whichPlayer, real x, real y, boolean addBlight returns nothing +native SetBlightLoc takes player whichPlayer, location whichLocation, real radius, boolean addBlight returns nothing +native CreateBlightedGoldmine takes player id, real x, real y, real face returns unit +native IsPointBlighted takes real x, real y returns boolean + +//============================================================================ +// Doodad API +// +native SetDoodadAnimation takes real x, real y, real radius, integer doodadID, boolean nearestOnly, string animName, boolean animRandom returns nothing +native SetDoodadAnimationRect takes rect r, integer doodadID, string animName, boolean animRandom returns nothing + +//============================================================================ +// Computer AI interface +// +native StartMeleeAI takes player num, string script returns nothing +native StartCampaignAI takes player num, string script returns nothing +native CommandAI takes player num, integer command, integer data returns nothing +native PauseCompAI takes player p, boolean pause returns nothing +native GetAIDifficulty takes player num returns aidifficulty + +native RemoveGuardPosition takes unit hUnit returns nothing +native RecycleGuardPosition takes unit hUnit returns nothing +native RemoveAllGuardPositions takes player num returns nothing + +//============================================================================ +native Cheat takes string cheatStr returns nothing +native IsNoVictoryCheat takes nothing returns boolean +native IsNoDefeatCheat takes nothing returns boolean + +native Preload takes string filename returns nothing +native PreloadEnd takes real timeout returns nothing + +native PreloadStart takes nothing returns nothing +native PreloadRefresh takes nothing returns nothing +native PreloadEndEx takes nothing returns nothing + +native PreloadGenClear takes nothing returns nothing +native PreloadGenStart takes nothing returns nothing +native PreloadGenEnd takes string filename returns nothing +native Preloader takes string filename returns nothing diff --git a/plugin/jasshelper/jasshelper.exe b/plugin/jasshelper/jasshelper.exe new file mode 100644 index 0000000..2aedca4 Binary files /dev/null and b/plugin/jasshelper/jasshelper.exe differ diff --git a/plugin/jasshelper/sfmpq.dll b/plugin/jasshelper/sfmpq.dll new file mode 100644 index 0000000..18e5077 Binary files /dev/null and b/plugin/jasshelper/sfmpq.dll differ diff --git a/plugin/pjass/pjass-classic.exe b/plugin/pjass/pjass-classic.exe new file mode 100644 index 0000000..573bba4 Binary files /dev/null and b/plugin/pjass/pjass-classic.exe differ diff --git a/plugin/pjass/pjass-latest.exe b/plugin/pjass/pjass-latest.exe new file mode 100644 index 0000000..fcf1231 Binary files /dev/null and b/plugin/pjass/pjass-latest.exe differ diff --git a/plugin/tesh/.gitignore b/plugin/tesh/.gitignore new file mode 100644 index 0000000..da7b09e --- /dev/null +++ b/plugin/tesh/.gitignore @@ -0,0 +1 @@ +!funclist.db diff --git a/plugin/tesh/Changelog - Horus.txt b/plugin/tesh/Changelog - Horus.txt new file mode 100644 index 0000000..75d35de --- /dev/null +++ b/plugin/tesh/Changelog - Horus.txt @@ -0,0 +1,52 @@ +The Horus project changelog + +0.4.6.T + Extra build for usage with TESH. + +0.4.6 + Fixed folding on loop. + Reverted folding on else to the beginning. Say no to code monkeys. + +0.4.5 + Fixed stack corruption issues. + Added folding on library_once and textmacro_once. + Added folding on phrases with four meaning words. + +0.4.4 + Finally fixed folding on else. + Added folding on private modules. + +0.4.3 + Added folding on novjass and inject. + Fixed not recognizing .0, 0x0, $0 -like numbers. + Fixed bug with numbers being recognized as values. + +0.4.2 + Fixed user-defined functions from 'includes' folder not being recognized. + Added folding of textmacro and preprocessor directives. + Fixed folding on else when the closing brace was on previous line. + +0.4.1 + Fixed folding bugs with interface. + +0.4 + Migrated to Scintilla 2.01 + Rewrote code folding logic from scratch. + Correct highlighting of nested comments. + +0.3.1 + Fixed last word highlighting. + +0.3 + Rewrote code highlighting logic from scratch. + Completely migrated to Unicode build. + Enabled Unicode input support. + Disabled LMB+Scroll zoom bug. + +0.2 + Added delimeted comments highlighting. + Added folding on all cJass keywords. + +0.1 + First version, based on SFilip's old lexer source. + Using Scintilla 1.77 \ No newline at end of file diff --git a/plugin/tesh/Changelog - TESH.txt b/plugin/tesh/Changelog - TESH.txt new file mode 100644 index 0000000..28ff0f8 --- /dev/null +++ b/plugin/tesh/Changelog - TESH.txt @@ -0,0 +1,47 @@ +Trigger Editor Syntax Highlighting Changelog + +0.7.1.1 (Unofficial update by Van Damm) + - Added some 1.24 keywords and calltips, missed when performing previous update. + - Added some new cJass keywords. + +0.7.1.0 (Unofficial update by Van Damm) + - Modified for usage with the Horus project. + - Added cJass keywords. + - Slightly tuned previous update. + +0.7.0.4 (Unofficial update by Artificial) + - Added globals from common.j and blizzard.j to autocompletion + - Removed some natives that were highlighted but apparently weren't in common.j (e.g. GetSelectedUnit and InitHandleTable). + - Made it highlight all of the natives/globals/BJs added in 1.23b. + - Added all of the added natives/BJs to the function list. + - Updated some BJs in the function list and autocompletion. + - Added the new constants to the constants list. + +0.7.0.3 (Unofficial update by Van Damm) + - Added 'module', 'endmodule', 'implement', 'optional' keywords. + - Added 'thistype' type. + +0.7.0.2 (Unofficial update by Zoxc) + - Added the 'keyword' keyword. + +0.7.0.1 (Unofficial update by Zoxc) + - Moved 'type' and 'extends' to the long keyword list. + - Added 'library_once', 'operator', 'defaults', 'stub' and 'delegate' keywords. + +0.7 + - Much faster, large triggers now completely fold almost instantly. + - Fold All button. + - Always Fold All option for specific triggers. + - Saves scroll position. + - Bug fixes, namely Ctrl+V and Ctrl+Z are no longer passed to the trigger editor. + - F3 is the Find Next button now. + - Function list can now be merged with the trigger editor as well. + - All constants defined in common.j and blizzard.j can be viewed through the function list. + - You can import your own functions by putting a .j file with them in the includes directory. + - AutoComplete can be made case-insensitive. + - Syntax check is now possible again, no vJass support though. + - More color customization. + - Styles are now saved in a separate INI file that can easily be modified outside the program itself, you can also use this to share your own "themes". + +0.6 + - Initial DLL version. \ No newline at end of file diff --git a/plugin/tesh/Changelog.txt b/plugin/tesh/Changelog.txt new file mode 100644 index 0000000..4780019 --- /dev/null +++ b/plugin/tesh/Changelog.txt @@ -0,0 +1,34 @@ +Trigger Editor Syntax Highlighting Changelog + +0.7.0.4 (Unofficial update by wd40bomber7) + - Added all 1.24 stuff + * Known bug: functions new to 1.24 will not display their parameter list for some reason. + +0.7.0.3 (Unofficial update by Van Damm) + - Added 'module', 'endmodule', 'implement', 'optional' keywords. + - Added 'thistype' type. + +0.7.0.2 (Unofficial update by Zoxc) + - Added the 'keyword' keyword. + +0.7.0.1 (Unofficial update by Zoxc) + - Moved 'type' and 'extends' to the long keyword list. + - Added 'library_once', 'operator', 'defaults', 'stub' and 'delegate' keywords. + +0.7 + - Much faster, large triggers now completely fold almost instantly. + - Fold All button. + - Always Fold All option for specific triggers. + - Saves scroll position. + - Bug fixes, namely Ctrl+V and Ctrl+Z are no longer passed to the trigger editor. + - F3 is the Find Next button now. + - Function list can now be merged with the trigger editor as well. + - All constants defined in common.j and blizzard.j can be viewed through the function list. + - You can import your own functions by putting a .j file with them in the includes directory. + - AutoComplete can be made case-insensitive. + - Syntax check is now possible again, no vJass support though. + - More color customization. + - Styles are now saved in a separate INI file that can easily be modified outside the program itself, you can also use this to share your own "themes". + +0.6 + -Initial DLL version. \ No newline at end of file diff --git a/plugin/tesh/SciLexer.dll b/plugin/tesh/SciLexer.dll new file mode 100644 index 0000000..3c07fc0 Binary files /dev/null and b/plugin/tesh/SciLexer.dll differ diff --git a/plugin/tesh/Styles.ini b/plugin/tesh/Styles.ini new file mode 100644 index 0000000..8a3231c --- /dev/null +++ b/plugin/tesh/Styles.ini @@ -0,0 +1,106 @@ +[Block] +Foreground=0x000000 +Background=default +Bold=1 +Italic=0 +Underline=0 +[Keyword] +Foreground=default +Background=default +Bold=1 +Italic=0 +Underline=0 +[Value] +Foreground=0x0000AA +Background=default +Bold=0 +Italic=0 +Underline=0 +[Type] +Foreground=0x0055AA +Background=default +Bold=1 +Italic=0 +Underline=0 +[Native] +Foreground=0x800080 +Background=default +Bold=0 +Italic=0 +Underline=0 +[BJ] +Foreground=0xFF0000 +Background=default +Bold=0 +Italic=0 +Underline=0 +[Constant] +Foreground=0x0000AA +Background=default +Bold=0 +Italic=0 +Underline=0 +[Comment] +Foreground=0x008800 +Background=default +Bold=0 +Italic=1 +Underline=0 +[Preprocessor Comment] +Foreground=0x777777 +Background=default +Bold=0 +Italic=0 +Underline=0 +[String] +Foreground=0x0000AA +Background=default +Bold=0 +Italic=1 +Underline=0 +[Number] +Foreground=0x0000AA +Background=default +Bold=0 +Italic=0 +Underline=0 +[Raw Code] +Foreground=default +Background=default +Bold=1 +Italic=1 +Underline=1 +[OK Braces] +Foreground=default +Background=default +Bold=1 +Italic=0 +Underline=0 +[Bad Braces] +Foreground=0xFF0000 +Background=default +Bold=1 +Italic=0 +Underline=0 +[Background] +Color=system(5) +[Fold] +Color 1=system(15) +Color 2=system(15) +[FoldMarkers] +Foreground=0x0000FF +Background=0x00FFFF +[Selection] +Foreground=system(14) +Background=system(13) +Alpha=256 +[WhiteSpace] +Foreground=0xFFFF00 +Background=default +[Caret] +Foreground=0x000000 +Background=0xFFFF00 +Alpha=60 +Visible=1 +[Line Numbers] +Background=system(15) diff --git a/plugin/tesh/TESH.conf b/plugin/tesh/TESH.conf new file mode 100644 index 0000000..da1f3a2 --- /dev/null +++ b/plugin/tesh/TESH.conf @@ -0,0 +1 @@ +name=༭ diff --git a/plugin/tesh/TESH.ini b/plugin/tesh/TESH.ini new file mode 100644 index 0000000..2f9abf2 --- /dev/null +++ b/plugin/tesh/TESH.ini @@ -0,0 +1,29 @@ +[Placement] +FLLeft=20 +FLTop=634 +FLWidth=1030 +FLHeight=413 +FLListSize=100 +BottomPanelHeight=75 +RightPanelWidth=50 +[Other] +ShowWarning=0 +ListOnTop=1 +ACCaseInsensitive=0 +DoNotSaveScrollDef=0 +[Editor] +DoFold=1 +LineNum=1 +AutoComplete=1 +FuncList=1 +OnlyFoldFunc=0 +[LineNumFont] +Name=Courier New +Size=10 +Color=0 +Style=0 +[EditorFont] +Name=Courier New +Size=10 +Color=0 +Style=0 diff --git a/plugin/tesh/Tesh.lua b/plugin/tesh/Tesh.lua new file mode 100644 index 0000000..d4b79f8 --- /dev/null +++ b/plugin/tesh/Tesh.lua @@ -0,0 +1,21 @@ +require "sys" + +local loader = {} + +loader.load = function(path) + if global_config["ThirdPartyPlugin"]["EnableTesh"] == "0" then + log.warn('failed: disable') + return false + end + loader.dll = sys.load_library(path) + return loader.dll ~= nil +end + +loader.unload = function() + if loader.dll then + sys.unload_library(loader.dll) + loader.dll = nil + end +end + +return loader diff --git a/plugin/tesh/Tesh.plcfg b/plugin/tesh/Tesh.plcfg new file mode 100644 index 0000000..c16a04e --- /dev/null +++ b/plugin/tesh/Tesh.plcfg @@ -0,0 +1,6 @@ +[Info] +PluginName = Tesh +[Load] +Enable = 1 +Loader = Tesh.lua +Dll = Tesh.dll diff --git a/plugin/tesh/funclist.db b/plugin/tesh/funclist.db new file mode 100644 index 0000000..7db2550 Binary files /dev/null and b/plugin/tesh/funclist.db differ diff --git a/plugin/tesh/horus.dll b/plugin/tesh/horus.dll new file mode 100644 index 0000000..fdfbac6 Binary files /dev/null and b/plugin/tesh/horus.dll differ diff --git a/plugin/tesh/tesh.dll b/plugin/tesh/tesh.dll new file mode 100644 index 0000000..7752b69 Binary files /dev/null and b/plugin/tesh/tesh.dll differ diff --git a/plugin/w3x2lni/config.ini b/plugin/w3x2lni/config.ini new file mode 100644 index 0000000..968e6a1 --- /dev/null +++ b/plugin/w3x2lni/config.ini @@ -0,0 +1,57 @@ +[root] +-- 转换后的目标格式(lni, obj, slk) +target_format = slk + +[slk] +-- 是否分析slk文件 +read_slk = true +-- 分析slk时寻找id最优解的次数,0表示无限,寻找次数越多速度越慢 +find_id_times = 10 +-- 移除与模板完全相同的数据 +remove_same = false +-- 移除超出等级的数据 +remove_exceeds_level = true +-- 移除只在WE使用的文件 +remove_we_only = true +-- 移除没有引用的对象 +remove_unuse_object = true +-- mdx压缩 +mdx_squf = true +-- 转换为地图还是目录(mpq, dir) +target_storage = mpq + +[lni] +-- 是否分析slk文件 +read_slk = false +-- 分析slk时寻找id最优解的次数,0表示无限,寻找次数越多速度越慢 +find_id_times = 0 +-- 移除与模板完全相同的数据 +remove_same = false +-- 移除超出等级的数据 +remove_exceeds_level = true +-- 移除只在WE使用的文件 +remove_we_only = false +-- 移除没有引用的对象 +remove_unuse_object = false +-- mdx压缩 +mdx_squf = false +-- 转换为地图还是目录(mpq, dir) +target_storage = dir + +[obj] +-- 是否分析slk文件 +read_slk = false +-- 分析slk时寻找id最优解的次数,0表示无限,寻找次数越多速度越慢 +find_id_times = 0 +-- 移除与模板完全相同的数据 +remove_same = true +-- 移除超出等级的数据 +remove_exceeds_level = true +-- 移除只在WE使用的文件 +remove_we_only = false +-- 移除没有引用的对象 +remove_unuse_object = false +-- mdx压缩 +mdx_squf = false +-- 转换为地图还是目录(mpq, dir) +target_storage = mpq diff --git a/plugin/w3x2lni/script/archive.lua b/plugin/w3x2lni/script/archive.lua new file mode 100644 index 0000000..bf3fed0 --- /dev/null +++ b/plugin/w3x2lni/script/archive.lua @@ -0,0 +1,149 @@ +local mpq = require 'archive_mpq' +local dir = require 'archive_dir' +local progress = require 'progress' + +local os_clock = os.clock + +local mt = {} +mt.__index = mt + +function mt:number_of_files() + if self:get_type() == 'mpq' then + return self.handle:number_of_files() + else + return -1 + end +end + +function mt:get_type() + return self._type +end + +function mt:is_readonly() + return self._read +end + +function mt:save_file(name, buf, filetime) + return self.handle:save_file(name, buf, filetime) +end + +function mt:close() + if self._attach then + return false + end + return self.handle:close() +end + +function mt:save(w3i, encrypt) + if self:is_readonly() then + return false + end + if not self.handle:save(self.path, w3i, self.write_count, encrypt) then + return false + end + local clock = os_clock() + local count = 0 + for name, buf in pairs(self.write_cache) do + if buf then + self.handle:save_file(name, buf) + count = count + 1 + if os_clock() - clock > 0.1 then + clock = os_clock() + progress(count / self.write_count) + if self:get_type() == 'mpq' then + message(('正在打包文件... (%d/%d)'):format(count, self.write_count)) + else + message(('正在导出文件... (%d/%d)'):format(count, self.write_count)) + end + end + end + end + return true +end + +function mt:set(name, buf) + name = name:lower() + if self.write_cache[name] then + self.write_count = self.write_count - 1 + end + if buf then + self.write_count = self.write_count + 1 + end + self.write_cache[name] = buf + + if self.handle:has_file(name) then + if self.read_cache[name] ~= nil then + self.read_count = self.read_count - 1 + end + if buf ~= nil then + self.read_count = self.read_count + 1 + end + end + self.read_cache[name] = buf +end + +function mt:get(name) + name = name:lower() + if self.read_cache[name] then + return self.read_cache[name] + end + if self.read_cache[name] == false then + return nil + end + if not self.handle then + return nil + end + local buf = self.handle:load_file(name) + if buf then + self.read_cache[name] = buf + self.read_count = self.read_count + 1 + end + return buf +end + +function mt:__pairs() + if self:is_readonly() then + return next, self.read_cache + else + return next, self.write_cache + end +end + +return function (pathorhandle, tp) + local read_only = tp ~= 'w' + local ar = { + read_cache = {}, + write_cache = {}, + read_count = 0, + write_count = 0, + path = pathorhandle, + _read = read_only, + } + if type(pathorhandle) == 'number' then + ar.handle = mpq(pathorhandle) + ar._type = 'mpq' + ar._attach = true + ar._read = false + elseif read_only then + if fs.is_directory(pathorhandle) then + ar.handle = dir(pathorhandle) + ar._type = 'dir' + else + ar.handle = mpq(pathorhandle, true) + ar._type = 'mpq' + end + if not ar.handle then + message('地图打开失败') + return nil + end + else + if fs.is_directory(pathorhandle) then + ar.handle = dir(pathorhandle) + ar._type = 'dir' + else + ar.handle = mpq(pathorhandle) + ar._type = 'mpq' + end + end + return setmetatable(ar, mt) +end diff --git a/plugin/w3x2lni/script/archive_dir.lua b/plugin/w3x2lni/script/archive_dir.lua new file mode 100644 index 0000000..89fa436 --- /dev/null +++ b/plugin/w3x2lni/script/archive_dir.lua @@ -0,0 +1,51 @@ +local sleep = require 'ffi.sleep' + +local function task(f, ...) + for i = 1, 99 do + if pcall(f, ...) then + return + end + sleep(10) + end + f(...) +end + +local mt = {} +mt.__index = mt + +function mt:save() + if fs.exists(self.path) then + task(fs.remove_all, self.path) + end + task(fs.create_directories, self.path) + return true +end + +function mt:close() +end + +function mt:extract(name, path) + return fs.copy_file(self.path / name, path, true) +end + +function mt:has_file(name) + return fs.exists(self.path / name) +end + +function mt:remove_file(name) + fs.remove(self.path / name) +end + +function mt:load_file(name) + return io.load(self.path / name) +end + +function mt:save_file(name, buf, filetime) + fs.create_directories((self.path / name):remove_filename()) + io.save(self.path / name, buf) + return true +end + +return function (input) + return setmetatable({ path = input }, mt) +end diff --git a/plugin/w3x2lni/script/archive_mpq.lua b/plugin/w3x2lni/script/archive_mpq.lua new file mode 100644 index 0000000..b85f71f --- /dev/null +++ b/plugin/w3x2lni/script/archive_mpq.lua @@ -0,0 +1,118 @@ +local stormlib = require 'ffi.stormlib' + +local function get_map_flag(w3i) + if not w3i then + return 0 + end + return w3i['选项']['关闭预览图'] << 0 + | w3i['选项']['自定义结盟优先权'] << 1 + | w3i['选项']['对战地图'] << 2 + | w3i['选项']['大型地图'] << 3 + | w3i['选项']['迷雾区域显示地形'] << 4 + | w3i['选项']['自定义玩家分组'] << 5 + | w3i['选项']['自定义队伍'] << 6 + | w3i['选项']['自定义科技树'] << 7 + | w3i['选项']['自定义技能'] << 8 + | w3i['选项']['自定义升级'] << 9 + | w3i['选项']['地图菜单标记'] << 10 + | w3i['选项']['地形悬崖显示水波'] << 11 + | w3i['选项']['地形起伏显示水波'] << 12 + | w3i['选项']['未知1'] << 13 + | w3i['选项']['未知2'] << 14 + | w3i['选项']['未知3'] << 15 + | w3i['选项']['未知4'] << 16 + | w3i['选项']['未知5'] << 17 + | w3i['选项']['未知6'] << 18 + | w3i['选项']['未知7'] << 19 + | w3i['选项']['未知8'] << 20 + | w3i['选项']['未知9'] << 21 +end + +local function get_player_count(w3i) + local count = 0 + for i = 1, w3i['玩家']['玩家数量'] do + local player = w3i['玩家'..i] + if player['类型'] == 1 then + count = count + 1 + end + end + return count +end + +local mt = {} +mt.__index = mt + +function mt:save(path, w3i, n, encrypt) + if self.handle then + self.handle:close() + self.handle = nil + end + local hexs = {} + hexs[#hexs+1] = ('c4'):pack('HM3W') + hexs[#hexs+1] = ('c4'):pack('\0\0\0\0') + hexs[#hexs+1] = ('z'):pack(w3i and w3i['地图']['地图名称'] or '未命名地图') + hexs[#hexs+1] = ('l'):pack(get_map_flag(w3i)) + hexs[#hexs+1] = ('l'):pack(w3i and get_player_count(w3i) or 233) + io.save(path, table.concat(hexs)) + self.handle = stormlib.create(path, n+3, encrypt) + if not self.handle then + return false + end + return true +end + +function mt:close() + return self.handle:close() +end + +function mt:extract(name, path) + return self.handle:extract(name, path) +end + +function mt:has_file(name) + if not self.read then + return + end + return self.handle:has_file(name) +end + +function mt:remove_file(name) + if self.read then + return false + end + return self.handle:remove_file(name) +end + +function mt:load_file(name) + return self.handle:load_file(name) +end + +function mt:save_file(name, buf, filetime) + if self.read then + return false + end + return self.handle:save_file(name, buf, filetime) +end + +function mt:number_of_files() + return self.handle:number_of_files() +end + +return function (input, read) + local handle + if type(input) == 'number' then + handle = stormlib.attach(input) + elseif read then + handle = stormlib.open(input, true) + if not handle then + return nil + end + if not handle:has_file '(listfile)' then + message('不支持没有(listfile)的地图') + return nil + end + else + handle = stormlib.open(input) + end + return setmetatable({ handle = handle, read = read }, mt) +end diff --git a/plugin/w3x2lni/script/ffi/fs_delete.lua b/plugin/w3x2lni/script/ffi/fs_delete.lua new file mode 100644 index 0000000..9d738e7 --- /dev/null +++ b/plugin/w3x2lni/script/ffi/fs_delete.lua @@ -0,0 +1,54 @@ +local ffi = require 'ffi' +local uni = require 'ffi.unicode' +ffi.cdef[[ + struct SHFILEOPSTRUCTW + { + unsigned int hwnd; + unsigned int wFunc; + const wchar_t* pFrom; + const wchar_t* pTo; + short fFlags; + int fAnyOperationsAborted; + void* hNameMappings; + const wchar_t* lpszProgressTitle; // only used if FOF_SIMPLEPROGRESS + }; + int SHFileOperationW(SHFILEOPSTRUCTW* lpFileOp); +]] + +local FO_MOVE = 0x0001 +local FO_COPY = 0x0002 +local FO_DELETE = 0x0003 +local FO_RENAME = 0x0004 + +local FOF_MULTIDESTFILES = 0x0001 +local FOF_CONFIRMMOUSE = 0x0002 +local FOF_SILENT = 0x0004 +local FOF_RENAMEONCOLLISION = 0x0008 +local FOF_NOCONFIRMATION = 0x0010 +local FOF_WANTMAPPINGHANDLE = 0x0020 +local FOF_ALLOWUNDO = 0x0040 +local FOF_FILESONLY = 0x0080 +local FOF_SIMPLEPROGRESS = 0x0100 +local FOF_NOCONFIRMMKDIR = 0x0200 +local FOF_NOERRORUI = 0x0400 +local FOF_NOCOPYSECURITYATTRIBS = 0x0800 +local FOF_NORECURSION = 0x1000 +local FOF_NO_CONNECTED_ELEMENTS = 0x2000 +local FOF_WANTNUKEWARNING = 0x4000 +local FOF_NORECURSEREPARSE = 0x8000 + +local shell32 = ffi.load 'shell32' + +function fs.delete(path) + local wpath = uni.u2w(path:string()) + local op = ffi.new('struct SHFILEOPSTRUCTW') + op.hwnd = 0 + op.wFunc = FO_DELETE + op.fFlags = FOF_SILENT | FOF_NOCONFIRMATION | FOF_NOERRORUI | FOF_NOCONFIRMMKDIR + op.pFrom = wpath + op.pTo = nil + op.fAnyOperationsAborted = 0 + op.hNameMappings = 0 + op.lpszProgressTitle = nil + local res = shell32.SHFileOperationW(op) +end diff --git a/plugin/w3x2lni/script/ffi/sleep.lua b/plugin/w3x2lni/script/ffi/sleep.lua new file mode 100644 index 0000000..5c4be63 --- /dev/null +++ b/plugin/w3x2lni/script/ffi/sleep.lua @@ -0,0 +1,8 @@ +local ffi = require 'ffi' +ffi.cdef[[ + void Sleep(unsigned long dwMilliseconds); +]] + +return function (time) + ffi.C.Sleep(time) +end diff --git a/plugin/w3x2lni/script/ffi/stormlib.lua b/plugin/w3x2lni/script/ffi/stormlib.lua new file mode 100644 index 0000000..0e1447f --- /dev/null +++ b/plugin/w3x2lni/script/ffi/stormlib.lua @@ -0,0 +1,289 @@ +local ffi = require 'ffi' +ffi.cdef[[ + struct SFILE_CREATE_MPQ { + unsigned long cbSize; // Size of this structure, in bytes + unsigned long dwMpqVersion; // Version of the MPQ to be created + void* pvUserData; // Reserved, must be NULL + unsigned long cbUserData; // Reserved, must be 0 + unsigned long dwStreamFlags; // Stream flags for creating the MPQ + unsigned long dwFileFlags1; // File flags for (listfile). 0 = default + unsigned long dwFileFlags2; // File flags for (attributes). 0 = default + unsigned long dwFileFlags3; // File flags for (signature). 0 = default + unsigned long dwAttrFlags; // Flags for the (attributes) file. If 0, no attributes will be created + unsigned long dwSectorSize; // Sector size for compressed files + unsigned long dwRawChunkSize; // Size of raw data chunk + unsigned long dwMaxFileCount; // File limit for the MPQ + }; + + bool SFileCreateArchive2(const wchar_t* szMpqName, struct SFILE_CREATE_MPQ* pCreateInfo, uint32_t* phMpq); + bool SFileOpenArchive(const wchar_t* szMpqName, unsigned long dwPriority, unsigned long dwFlags, uint32_t* phMpq); + bool SFileCloseArchive(uint32_t hMpq); + bool SFileAddFileEx(uint32_t hMpq, const wchar_t* szFileName, const char* szArchivedName, unsigned long dwFlags, unsigned long dwCompression, unsigned long dwCompressionNext); + bool SFileExtractFile(uint32_t hMpq, const char* szToExtract, const wchar_t* szExtracted, unsigned long dwSearchScope); + bool SFileHasFile(uint32_t hMpq, const char* szFileName); + bool SFileSetMaxFileCount(uint32_t hMpq, unsigned long dwMaxFileCount); + + bool SFileCreateFile(uint32_t hMpq, const char* szArchivedName, unsigned long long FileTime, unsigned long dwFileSize, unsigned long lcLocale, unsigned long dwFlags, uint32_t* phFile); + bool SFileWriteFile(uint32_t hFile, const void* pvData, unsigned long dwSize, unsigned long dwCompression); + bool SFileFinishFile(uint32_t hFile); + bool SFileOpenFileEx(uint32_t hMpq, const char* szFileName, unsigned long dwSearchScope, uint32_t* phFile); + bool SFileReadFile(uint32_t hFile, void* lpBuffer, unsigned long dwToRead, unsigned long* pdwRead, void* lpOverlapped); + unsigned long SFileGetFileSize(uint32_t hFile, unsigned long* pdwFileSizeHigh); + bool SFileCloseFile(uint32_t hFile); + bool SFileRemoveFile(uint32_t hMpq, const char* szFileName, unsigned long dwSearchScope); + + bool SFileGetFileInfo(uint32_t hMpqOrFile, int InfoClass, void * pvFileInfo, unsigned long cbFileInfo, unsigned long* pcbLengthNeeded); + + unsigned long SFileGetLocale(); + + unsigned long GetLastError(); +]] +ffi.cdef[[ + struct SYSTEMTIME { + unsigned short wYear; + unsigned short wMonth; + unsigned short wDayOfWeek; + unsigned short wDay; + unsigned short wHour; + unsigned short wMinute; + unsigned short wSecond; + unsigned short wMilliseconds; + }; + struct FILETIME { + unsigned long dwLowDateTime; + unsigned long dwHighDateTime; + }; + void GetSystemTime(struct SYSTEMTIME* lpSystemTime); + int SystemTimeToFileTime(const struct SYSTEMTIME* lpSystemTime, struct FILETIME*lpFileTime); +]] + +local SFileMpqNumberOfFiles = 36 + +require 'filesystem' +local uni = require 'ffi.unicode' +local stormlib = ffi.load('stormlib') + +local function current_filetime() + local systemtime = ffi.new('struct SYSTEMTIME') + local filetime = ffi.new('struct FILETIME') + ffi.C.GetSystemTime(systemtime) + if not ffi.C.SystemTimeToFileTime(systemtime, filetime) then + return 0 + end + return filetime.dwLowDateTime | (filetime.dwHighDateTime << 32) +end + + +local wfile = {} +wfile.__index = wfile + +function wfile:close() + if self.handle == 0 then + return + end + stormlib.SFileFinishFile(self.handle) + self.handle = 0 +end + +function wfile:write(buf) + if self.handle == 0 then + return false + end + return stormlib.SFileWriteFile(self.handle, buf, #buf, 0x02) +end + +local rfile = {} +rfile.__index = rfile + +function rfile:close() + if self.handle == 0 then + return + end + stormlib.SFileCloseFile(self.handle) + self.handle = 0 +end + +function rfile:size() + if self.handle == 0 then + return 0 + end + local size_hi = ffi.new('unsigned long[1]', 0) + local size_lo = stormlib.SFileGetFileSize(self.handle, size_hi) + return size_lo | (size_hi[0] << 32) +end + +function rfile:read(n) + if self.handle == 0 then + return nil + end + if not n then + n = self:size() + end + local buf = ffi.new('char[?]', n) + local pread = ffi.new('unsigned long[1]', 0) + if not stormlib.SFileReadFile(self.handle, buf, n, pread, nil) then + return nil + end + return ffi.string(buf, pread[0]) +end + +local archive = {} +archive.__index = archive + +function archive:close() + if self.handle == 0 then + return + end + stormlib.SFileCloseArchive(self.handle) + self.handle = 0 +end + +function archive:add_file(name, path) + if self.handle == 0 then + return false + end + local wpath = uni.u2w(path:string()) + return stormlib.SFileAddFileEx(self.handle, wpath, name, + 0x00000200 | 0x80000000, -- MPQ_FILE_COMPRESS | MPQ_FILE_REPLACEEXISTING, + 0x02, -- MPQ_COMPRESSION_ZLIB, + 0x02 --MPQ_COMPRESSION_ZLIB + ) +end + +function archive:extract(name, path) + if self.handle == 0 then + return false + end + local dir = path:parent_path() + if not fs.exists(dir) then + fs.create_directories(dir) + end + local wpath = uni.u2w(path:string()) + return stormlib.SFileExtractFile(self.handle, name, wpath, + 0 --SFILE_OPEN_FROM_MPQ + ) +end + +function archive:has_file(name) + if self.handle == 0 then + return false + end + return stormlib.SFileHasFile(self.handle, name) +end + +function archive:remove_file(name) + if self.handle == 0 then + return false + end + return stormlib.SFileRemoveFile(self.handle, name, 0) +end + +function archive:open_file(name) + if self.handle == 0 then + return nil + end + local phandle = ffi.new('uint32_t[1]', 0) + if not stormlib.SFileOpenFileEx(self.handle, name, 0, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, rfile) +end + +function archive:create_file(name, size, filetime) + if self.handle == 0 then + return nil + end + if not filetime then + filetime = current_filetime() + end + local phandle = ffi.new('uint32_t[1]', 0) + if not stormlib.SFileCreateFile(self.handle, name, filetime, size, stormlib.SFileGetLocale(), 0x00000200 | 0x80000000, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, wfile) +end + +function archive:load_file(name) + if self.handle == 0 then + return nil + end + local file = self:open_file(name) + if not file then + return nil + end + local content = file:read() + file:close() + return content +end + +function archive:save_file(name, buf, filetime) + if self.handle == 0 then + return false + end + local file = self:create_file(name, #buf, filetime) + if not file then + return false + end + file:write(buf) + file:close() + return true +end + +function archive:number_of_files() + if self.handle == 0 then + return 0 + end + local pinfo = ffi.new('uint32_t[1]', 0) + if not stormlib.SFileGetFileInfo(self.handle, SFileMpqNumberOfFiles, pinfo, 4, nil) then + return 0 + end + return pinfo[0] +end + +local m = {} +function m.open(path, readonly, filecount) + local wpath = uni.u2w(path:string()) + local phandle = ffi.new('uint32_t[1]', 0) + local flag = 0 + if readonly then + flag = 0x100 + end + if not stormlib.SFileOpenArchive(wpath, 0, flag, phandle) then + return nil + end + if filecount then + stormlib.SFileSetMaxFileCount(phandle[0], filecount) + end + return setmetatable({ handle = phandle[0] }, archive) +end +function m.create(path, filecount, encrypt) + local wpath = uni.u2w(path:string()) + local phandle = ffi.new('uint32_t[1]', 0) + local info = ffi.new('struct SFILE_CREATE_MPQ') + info.cbSize = ffi.sizeof('struct SFILE_CREATE_MPQ') + info.dwMpqVersion = 0 --MPQ_FORMAT_VERSION_1 + info.pvUserData = nil + info.cbUserData = 0 + info.dwStreamFlags = 0 --STREAM_PROVIDER_FLAT | BASE_PROVIDER_FILE + if encrypt then + info.dwFileFlags1 = 0 + info.dwFileFlags2 = 0 + info.dwFileFlags3 = 0 + else + info.dwFileFlags1 = 0x80000000 --MPQ_FILE_EXISTS + info.dwFileFlags2 = 0x80000000 --MPQ_FILE_EXISTS + info.dwFileFlags3 = 0x80000000 --MPQ_FILE_EXISTS + end + info.dwAttrFlags = 7 --MPQ_ATTRIBUTE_CRC32 | MPQ_ATTRIBUTE_FILETIME | MPQ_ATTRIBUTE_MD5 + info.dwSectorSize = 0x10000 + info.dwRawChunkSize = 0 + info.dwMaxFileCount = filecount + if not stormlib.SFileCreateArchive2(wpath, info, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, archive) +end +function m.attach(handle) + return setmetatable({ handle = handle }, archive) +end +return m diff --git a/plugin/w3x2lni/script/ffi/unicode.lua b/plugin/w3x2lni/script/ffi/unicode.lua new file mode 100644 index 0000000..734b467 --- /dev/null +++ b/plugin/w3x2lni/script/ffi/unicode.lua @@ -0,0 +1,49 @@ +local ffi = require 'ffi' +ffi.cdef[[ + int MultiByteToWideChar(unsigned int CodePage, unsigned long dwFlags, const char* lpMultiByteStr, int cbMultiByte, wchar_t* lpWideCharStr, int cchWideChar); + int WideCharToMultiByte(unsigned int CodePage, unsigned long dwFlags, const wchar_t* lpWideCharStr, int cchWideChar, char* lpMultiByteStr, int cchMultiByte, const char* lpDefaultChar, int* pfUsedDefaultChar); +]] + +local CP_UTF8 = 65001 +local CP_ACP = 0 + +local function u2w(input) + local wlen = ffi.C.MultiByteToWideChar(CP_UTF8, 0, input, #input, nil, 0) + local wstr = ffi.new('wchar_t[?]', wlen+1) + ffi.C.MultiByteToWideChar(CP_UTF8, 0, input, #input, wstr, wlen) + return wstr, wlen +end + +local function a2w(input) + local wlen = ffi.C.MultiByteToWideChar(CP_ACP, 0, input, #input, nil, 0) + local wstr = ffi.new('wchar_t[?]', wlen+1) + ffi.C.MultiByteToWideChar(CP_ACP, 0, input, #input, wstr, wlen) + return wstr, wlen +end + +local function w2u(wstr, wlen) + local len = ffi.C.WideCharToMultiByte(CP_UTF8, 0, wstr, wlen, nil, 0, nil, nil) + local str = ffi.new('char[?]', len+1) + ffi.C.WideCharToMultiByte(CP_UTF8, 0, wstr, wlen, str, len, nil, nil) + return ffi.string(str) +end + +local function w2a(wstr, wlen) + local len = ffi.C.WideCharToMultiByte(CP_ACP, 0, wstr, wlen, nil, 0, nil, nil) + local str = ffi.new('char[?]', len) + ffi.C.WideCharToMultiByte(CP_ACP, 0, wstr, wlen, str, len, nil, nil) + return ffi.string(str) +end + +return { + u2w = u2w, + a2w = a2w, + w2u = w2u, + w2a = w2a, + u2a = function (input) + return w2a(u2w(input)) + end, + a2u = function (input) + return w2u(a2w(input)) + end, +} diff --git a/plugin/w3x2lni/script/info.ini b/plugin/w3x2lni/script/info.ini new file mode 100644 index 0000000..8546091 --- /dev/null +++ b/plugin/w3x2lni/script/info.ini @@ -0,0 +1,132 @@ +[metadata] +ability = 'units\\abilitymetadata.slk' +destructable = 'units\\destructablemetadata.slk' +doodad = 'doodads\\doodadmetadata.slk' +buff = 'units\\abilitybuffmetadata.slk' +upgrade = 'units\\upgrademetadata.slk' +item = 'units\\unitmetadata.slk' +unit = 'units\\unitmetadata.slk' +misc = 'units\\miscmetadata.slk' + +[obj] +ability = 'war3map.w3a' +destructable = 'war3map.w3b' +doodad = 'war3map.w3d' +buff = 'war3map.w3h' +upgrade = 'war3map.w3q' +item = 'war3map.w3t' +unit = 'war3map.w3u' + +[lni] +ability = 'war3map.w3a.ini' +destructable = 'war3map.w3b.ini' +doodad = 'war3map.w3d.ini' +buff = 'war3map.w3h.ini' +upgrade = 'war3map.w3q.ini' +item = 'war3map.w3t.ini' +unit = 'war3map.w3u.ini' + +[slk] +ability = {'units\\abilitydata.slk'} +destructable = {'units\\destructabledata.slk'} +doodad = {'doodads\\doodads.slk'} +buff = {'units\\abilitybuffdata.slk'} +upgrade = {'units\\upgradedata.slk'} +item = {'units\\itemdata.slk'} +unit = { +'units\\unitui.slk', +'units\\unitdata.slk', +'units\\unitbalance.slk', +'units\\unitabilities.slk', +'units\\unitweapons.slk', +} + +[root] +txt = { +'units\\campaignunitstrings.txt', +'units\\humanunitstrings.txt', +'units\\neutralunitstrings.txt', +'units\\nightelfunitstrings.txt', +'units\\orcunitstrings.txt', +'units\\undeadunitstrings.txt', +'units\\campaignunitfunc.txt', +'units\\humanunitfunc.txt', +'units\\neutralunitfunc.txt', +'units\\nightelfunitfunc.txt', +'units\\orcunitfunc.txt', +'units\\undeadunitfunc.txt', + +'units\\campaignabilitystrings.txt', +'units\\commonabilitystrings.txt', +'units\\humanabilitystrings.txt', +'units\\neutralabilitystrings.txt', +'units\\nightelfabilitystrings.txt', +'units\\orcabilitystrings.txt', +'units\\undeadabilitystrings.txt', +'units\\itemabilitystrings.txt', +'units\\campaignabilityfunc.txt', +'units\\commonabilityfunc.txt', +'units\\humanabilityfunc.txt', +'units\\neutralabilityfunc.txt', +'units\\nightelfabilityfunc.txt', +'units\\orcabilityfunc.txt', +'units\\undeadabilityfunc.txt', +'units\\itemabilityfunc.txt', + +'units\\campaignupgradestrings.txt', +'units\\neutralupgradestrings.txt', +'units\\nightelfupgradestrings.txt', +'units\\humanupgradestrings.txt', +'units\\orcupgradestrings.txt', +'units\\undeadupgradestrings.txt', +'units\\campaignupgradefunc.txt', +'units\\humanupgradefunc.txt', +'units\\neutralupgradefunc.txt', +'units\\nightelfupgradefunc.txt', +'units\\orcupgradefunc.txt', +'units\\undeadupgradefunc.txt', + +'units\\itemstrings.txt', +'units\\itemfunc.txt', +} + +[key] +[.max_level] +ability = 'levels' +doodad = 'numvar' +upgrade = 'maxlevel' + +[pack] +impignore = { +'war3map.j', +'war3map.doo', +'war3map.imp', +'war3map.mmp', +'war3map.shd', +'war3map.w3a', +'war3map.w3b', +'war3map.w3c', +'war3map.w3d', +'war3map.w3e', +'war3map.w3h', +'war3map.w3i', +'war3map.w3q', +'war3map.w3r', +'war3map.w3s', +'war3map.w3t', +'war3map.w3u', +'war3map.wct', +'war3map.wpm', +'war3map.wtg', +'war3map.wts', +'war3mapextra.txt', +'war3mapmap.blp', +'war3mapmisc.txt', +'war3mapskin.txt', +'war3mapunits.doo', +} +packignore = { +'(attributes)', +'(listfile)', +'(signature)', +} diff --git a/plugin/w3x2lni/script/main.lua b/plugin/w3x2lni/script/main.lua new file mode 100644 index 0000000..b486ddf --- /dev/null +++ b/plugin/w3x2lni/script/main.lua @@ -0,0 +1,18 @@ +if arg[1] == '-backend' then + table.remove(arg, 1) + require 'map' +elseif arg[1] == '-prebuilt' then + local nk = require 'nuklear' + nk:console() + table.remove(arg, 1) + require 'prebuilt.prebuilt' + os.execute('pause') +elseif arg[1] == '-slk' then + local nk = require 'nuklear' + nk:console() + table.remove(arg, 1) + require 'slk' + os.execute('pause') +else + require 'gui.main' +end diff --git a/plugin/w3x2lni/script/map.lua b/plugin/w3x2lni/script/map.lua new file mode 100644 index 0000000..51ac9fa --- /dev/null +++ b/plugin/w3x2lni/script/map.lua @@ -0,0 +1,63 @@ +(function() + local exepath = package.cpath:sub(1, (package.cpath:find(';') or 0)-6) + package.path = package.path .. ';' .. exepath .. '..\\script\\?.lua' +end)() + +require 'filesystem' +require 'utility' +local uni = require 'ffi.unicode' +local w2l = require 'w3x2lni' +local progress = require 'progress' +local archive = require 'archive' +local save_map = require 'save_map' +w2l:initialize() + +function message(...) + print(...) +end + +local input = fs.path(uni.a2u(arg[1])) + +message('正在打开地图...') +local slk = {} +local input_ar = archive(input) +if not input_ar then + return +end +local output +if w2l.config.target_storage == 'dir' then + if fs.is_directory(input) then + output = input:parent_path() / (input:filename():string() .. '_' .. w2l.config.target_format) + else + output = input:parent_path() / input:stem():string() + end + fs.create_directory(output) +elseif w2l.config.target_storage == 'mpq' then + if fs.is_directory(input) then + output = input:parent_path() / (input:filename():string() .. '.w3x') + else + output = input:parent_path() / (input:stem():string() .. '_' .. w2l.config.target_format .. '.w3x') + end +end +local output_ar = archive(output, 'w') +if not output_ar then + return +end + +message('正在读取物编...') +progress:start(0.4) +w2l:frontend(input_ar, slk) +progress:finish() + +message('正在转换...') +progress:start(0.8) +w2l:backend(input_ar, slk) +progress:finish() + +message('正在生成文件...') +progress:start(1) +save_map(w2l, output_ar, slk.w3i, input_ar) +progress:finish() +output_ar:close() +input_ar:close() +message('转换完毕,用时 ' .. os.clock() .. ' 秒') diff --git a/plugin/w3x2lni/script/optimizer/confuser.lua b/plugin/w3x2lni/script/optimizer/confuser.lua new file mode 100644 index 0000000..2e422b0 --- /dev/null +++ b/plugin/w3x2lni/script/optimizer/confuser.lua @@ -0,0 +1,67 @@ +local mt = {} +mt.__index = mt + +local function find_char(self, current, is_head, is_tail) + if not current then + current = 0 + end + for i = current + 1, #self.char_list do + local char = self.char_list[i] + if (is_head or is_tail) and char == '_' then + goto CONTINUE + end + if is_head and not char:find '%a' then + goto CONTINUE + end + do return i, char end + :: CONTINUE :: + end + return nil +end + +local function find_new_name(self) + for i = 1, #self.confuse_bytes + 1 do + local byte, char = find_char(self, self.confuse_bytes[i], i >= #self.confuse_bytes, i == 1) + if byte then + self.confuse_bytes[i] = byte + self.confuse_chars[i] = char + break + else + self.confuse_bytes[i], self.confuse_chars[i] = find_char(self, 0, i >= #self.confuse_bytes, i == 1) + end + end + return string.reverse(table.concat(self.confuse_chars)) +end + +local function find_usable_name(self) + while true do + local new_name = find_new_name(self) + if not self.on_find then + return new_name + end + local new_name = self:on_find(new_name) + if new_name then + return new_name + end + end +end + +function mt:__call(name) + if not self.name_list[name] then + self.name_list[name] = find_usable_name(self) + end + return self.name_list[name] +end + +return function (confusion) + local self = setmetatable({}, mt) + self.char_list = {} + self.name_list = {} + self.head_list = {} + self.confuse_bytes = {} + self.confuse_chars = {} + for char in confusion:gmatch '.' do + self.char_list[#self.char_list+1] = char + end + return self +end diff --git a/plugin/w3x2lni/script/optimizer/converter.lua b/plugin/w3x2lni/script/optimizer/converter.lua new file mode 100644 index 0000000..a0c1853 --- /dev/null +++ b/plugin/w3x2lni/script/optimizer/converter.lua @@ -0,0 +1,534 @@ +local lines +local jass +local report + +local current_function +local get_exp +local add_lines + +local function insert_line(str) + lines[#lines+1] = str +end + +local function get_integer(exp) + local int = exp.value + if int >= 1000000 then + int = ('$%X'):format(int) + else + int = ('%d'):format(int) + end + return int +end + +local function get_real(exp) + local str = ('%.3f'):format(exp.value) + for i = 1, 3 do + if str:sub(-1) == '0' then + str = str:sub(1, -2) + end + end + if #str > 2 and str:sub(1, 2) == '0.' then + str = str:sub(2) + end + return str +end + +local function get_string(exp) + return ('"%s"'):format(exp.value:gsub('\r\n', '\\n'):gsub('[\r\n]', '\\n')) +end + +local function get_boolean(exp) + if exp.value == true then + return 'true' + elseif exp.value == false then + return 'false' + end +end + +local function get_confused_name(obj) + return obj.confused or obj.name +end + +local function get_function(name) + return jass.functions[name] +end + +local function get_arg(name) + if current_function and current_function.args then + return current_function.args[name] + end +end + +local function get_local(name) + if current_function then + local locals = current_function.locals + if locals then + for i = #locals, 1, -1 do + local loc = locals[i] + if loc.name == name and loc.line < current_line then + return loc + end + end + end + end +end + +local function get_global(name) + return jass.globals[name] +end + +local function get_var(name) + local var = get_local(name) + if var then + return var, 'local' + end + local var = get_arg(name) + if var then + return var, 'arg' + end + local var = get_global(name) + if var then + return var, 'global' + end +end + +local function get_var_name(exp) + local var = get_var(exp.name) + return get_confused_name(var) +end + +local function get_vari_name(exp) + return ('%s[%s]'):format(get_var_name(exp), get_exp(exp[1])) +end + +local function get_function_name(call) + local func = get_function(call.name) + return get_confused_name(func) +end + +local function get_call(exp) + local args = {} + for i, sub_exp in ipairs(exp) do + args[i] = get_exp(sub_exp) + end + return ('%s(%s)'):format(get_function_name(exp), table.concat(args, ',')) +end + +local function get_add(exp) + return ('%s+%s'):format(get_exp(exp[1], '+', 1), get_exp(exp[2], '+', 2)) +end + +local function get_sub(exp) + return ('%s-%s'):format(get_exp(exp[1], '-', 1), get_exp(exp[2], '-', 2)) +end + +local function get_mul(exp) + return ('%s*%s'):format(get_exp(exp[1], '*', 1), get_exp(exp[2], '*', 2)) +end + +local function get_div(exp) + return ('%s/%s'):format(get_exp(exp[1], '/', 1), get_exp(exp[2], '/', 2)) +end + +local function get_neg(exp) + return ('-%s'):format(get_exp(exp[1], 'neg', 1)) +end + +local level = {} +level['or'] = 1 +level['and'] = 2 +level['>'] = 3 +level['>='] = 3 +level['<'] = 3 +level['<='] = 3 +level['=='] = 3 +level['!='] = 3 +level['+'] = 4 +level['-'] = 4 +level['*'] = 5 +level['/'] = 5 +level['not'] = 6 +level['neg'] = 6 +level['paren'] = 6 +local function get_equal(exp) + return ('%s==%s'):format(get_exp(exp[1], '==', 1), get_exp(exp[2], '==', 2)) +end + +local function get_unequal(exp) + return ('%s!=%s'):format(get_exp(exp[1], '!=', 1), get_exp(exp[2], '!=', 2)) +end + +local function get_gt(exp) + return ('%s>%s'):format(get_exp(exp[1], '>', 1), get_exp(exp[2], '>', 2)) +end + +local function get_ge(exp) + return ('%s>=%s'):format(get_exp(exp[1], '>=', 1), get_exp(exp[2], '>=', 2)) +end + +local function get_lt(exp) + return ('%s<%s'):format(get_exp(exp[1], '<', 1), get_exp(exp[2], '<', 2)) +end + +local function get_le(exp) + return ('%s<=%s'):format(get_exp(exp[1], '<=', 1), get_exp(exp[2], '<=', 2)) +end + +local function get_and(exp) + return ('%s and %s'):format(get_exp(exp[1], 'and', 1), get_exp(exp[2], 'and', 2)) +end + +local function get_or(exp) + return ('%s or %s'):format(get_exp(exp[1], 'or', 1), get_exp(exp[2], 'or', 2)) +end + +local function get_not(exp) + return ('not %s'):format(get_exp(exp[1], 'not', 1)) +end + +local function get_code(exp) + return ('function %s'):format(get_function_name(exp)) +end + +local priority = { +{'and'}, +{'or'}, +{'<', '>', '==', '!=', '<=', '>='}, +{'not'}, +{'+', '-'}, +{'*', '/'}, +{'neg'}, +} + +local op_level +local function get_op_level(op) + if not op_level then + op_level = {} + for lv, ops in ipairs(priority) do + for _, op in ipairs(ops) do + op_level[op] = lv + end + end + end + return op_level[op] +end + +local function need_paren(op1, op2, pos) + if not op2 then + return false + end + local lv1, lv2 = get_op_level(op1), get_op_level(op2) + if not lv1 then + return false + end + if pos == 1 then + return lv1 < lv2 + elseif pos == 2 then + return lv1 <= lv2 + end +end + +function get_exp(exp, op, pos) + if not exp then + return nil + end + local value + if exp.type == 'null' then + value = 'null' + elseif exp.type == 'integer' then + value = get_integer(exp) + elseif exp.type == 'real' then + value = get_real(exp) + elseif exp.type == 'string' then + value = get_string(exp) + elseif exp.type == 'boolean' then + value = get_boolean(exp) + elseif exp.type == 'var' then + value = get_var_name(exp) + elseif exp.type == 'vari' then + value = get_vari_name(exp) + elseif exp.type == 'call' then + value = get_call(exp) + elseif exp.type == '+' then + value = get_add(exp) + elseif exp.type == '-' then + value = get_sub(exp) + elseif exp.type == '*' then + value = get_mul(exp) + elseif exp.type == '/' then + value = get_div(exp) + elseif exp.type == 'neg' then + value = get_neg(exp) + elseif exp.type == '==' then + value = get_equal(exp) + elseif exp.type == '!=' then + value = get_unequal(exp) + elseif exp.type == '>' then + value = get_gt(exp) + elseif exp.type == '<' then + value = get_lt(exp) + elseif exp.type == '>=' then + value = get_ge(exp) + elseif exp.type == '<=' then + value = get_le(exp) + elseif exp.type == 'and' then + value = get_and(exp) + elseif exp.type == 'or' then + value = get_or(exp) + elseif exp.type == 'not' then + value = get_not(exp) + elseif exp.type == 'code' then + value = get_code(exp) + end + if value then + if need_paren(exp.type, op, pos) then + value = ('(%s)'):format(value) + end + return value + end + print('未知的表达式类型', exp.type) + return nil +end + +local function base_type(type) + while jass.types[type].extends do + type = jass.types[type].extends + end + return type +end + +local function add_global(global) + if not global.used then + report('未引用的全局变量', global.name, ('第[%d]行'):format(global.line)) + return + end + current_line = global.line + if global.array then + insert_line(([[%s array %s]]):format(global.type, get_confused_name(global))) + else + local value = get_exp(global[1]) + if value then + insert_line(([[%s %s=%s]]):format(global.type, get_confused_name(global), value)) + else + insert_line(([[%s %s]]):format(global.type, get_confused_name(global))) + end + end +end + +local function add_globals() + insert_line('globals') + for _, global in ipairs(jass.globals) do + add_global(global) + end + insert_line('endglobals') +end + +local function add_local(loc) + if not loc.used then + report('未引用的局部变量', current_function.name, ('第[%d]行:[%s]'):format(loc.line, loc.name)) + return + end + current_line = loc.line + if loc.array then + insert_line(('local %s array %s'):format(loc.type, get_confused_name(loc))) + else + local value = get_exp(loc[1]) + if value then + insert_line(('local %s %s=%s'):format(loc.type, get_confused_name(loc), value)) + else + insert_line(('local %s %s'):format(loc.type, get_confused_name(loc))) + end + end +end + +local function add_locals(locals) + if #locals == 0 then + return + end + for _, loc in ipairs(locals) do + add_local(loc) + end +end + +local function get_args(line) + local args = {} + for i, exp in ipairs(line) do + args[i] = get_exp(exp) + end + return table.concat(args, ',') +end + +local function add_executefunc(line) + local exp = line[1] + if exp.type == 'string' then + local func = get_function(line[1].value) + if not func then + return false + end + insert_line(('call ExecuteFunc("%s")'):format(get_confused_name(func))) + return true + end + if not jass.confused_head then + return false + end + if exp.type ~= '+' or exp[1].type ~= 'string' then + return false + end + local confused = jass.confused_head[exp[1].value] + if not confused then + return false + end + insert_line(('call ExecuteFunc("%s"+%s)'):format(confused, get_exp(exp[2]))) + return true +end + +local function add_call(line) + local name = get_function_name(line) + if name == 'ExecuteFunc' and add_executefunc(line) then + return + end + insert_line(('call %s(%s)'):format(name, get_args(line))) +end + +local function add_set(line) + insert_line(('set %s=%s'):format(get_var_name(line), get_exp(line[1]))) +end + +local function add_seti(line) + insert_line(('set %s[%s]=%s'):format(get_var_name(line), get_exp(line[1]), get_exp(line[2]))) +end + +local function add_return(line) + if line[1] then + insert_line(('return %s'):format(get_exp(line[1]))) + else + insert_line('return') + end +end + +local function add_exit(line) + insert_line(('exitwhen %s'):format(get_exp(line[1]))) +end + +local function add_if(data) + insert_line(('if %s then'):format(get_exp(data.condition))) + add_lines(data) +end + +local function add_elseif(data) + insert_line(('elseif %s then'):format(get_exp(data.condition))) + add_lines(data) +end + +local function add_else(data) + insert_line('else') + add_lines(data) +end + +local function add_ifs(chunk) + for _, data in ipairs(chunk) do + if data.type == 'if' then + add_if(data) + elseif data.type == 'elseif' then + add_elseif(data) + elseif data.type == 'else' then + add_else(data) + else + print('未知的判断类型', line.type) + end + end + insert_line('endif') +end + +local function add_loop(chunk) + insert_line('loop') + add_lines(chunk) + insert_line('endloop') +end + +function add_lines(chunk) + for i, line in ipairs(chunk) do + current_line = line.line + if line.type == 'call' then + add_call(line) + elseif line.type == 'set' then + add_set(line) + elseif line.type == 'seti' then + add_seti(line) + elseif line.type == 'return' then + add_return(line) + elseif line.type == 'exit' then + add_exit(line) + elseif line.type == 'if' then + add_ifs(line) + elseif line.type == 'loop' then + add_loop(line) + else + print('未知的代码行类型', line.type) + end + end +end + +local function get_takes(func) + if not func.args then + return 'nothing' + end + local takes = {} + for i, arg in ipairs(func.args) do + takes[i] = ('%s %s'):format(arg.type, get_confused_name(arg)) + end + return table.concat(takes, ',') +end + +local function get_returns(func) + if func.returns then + return func.returns + else + return 'nothing' + end +end + +local function add_native(func) + if not func.used then + report('未引用的函数', func.name, ('第[%d]行'):format(func.line)) + return + end + current_function = func + insert_line(([[native %s takes %s returns %s]]):format(get_confused_name(func), get_takes(func), get_returns(func))) +end + +local function add_function(func) + if not func.used then + report('未引用的函数', func.name, ('第[%d]-[%d]行'):format(func.line, func.endline)) + return + end + current_function = func + current_line = func.line + insert_line(([[function %s takes %s returns %s]]):format(get_confused_name(func), get_takes(func), get_returns(func))) + add_locals(func.locals) + add_lines(func) + insert_line('endfunction') +end + +local function add_functions() + for _, func in ipairs(jass.functions) do + if func.native then + add_native(func) + else + add_function(func) + end + end +end + +return function (ast, _report) + lines = {} + jass = ast + report = _report + + add_globals() + add_functions() + + lines[#lines+1] = '' + + return table.concat(lines, '\r\n') +end diff --git a/plugin/w3x2lni/script/optimizer/init.lua b/plugin/w3x2lni/script/optimizer/init.lua new file mode 100644 index 0000000..08bec33 --- /dev/null +++ b/plugin/w3x2lni/script/optimizer/init.lua @@ -0,0 +1,16 @@ +local simplify = require 'optimizer.simplify' +local converter = require 'optimizer.converter' + +return function (ast, config) + local report = {} + + local function message(type, msg, tip) + if not report[type] then + report[type] = {} + end + report[type][#report[type]+1] = {msg, tip} + end + + simplify(ast, config, message) + return converter(ast, message), report +end diff --git a/plugin/w3x2lni/script/optimizer/simplify.lua b/plugin/w3x2lni/script/optimizer/simplify.lua new file mode 100644 index 0000000..a792843 --- /dev/null +++ b/plugin/w3x2lni/script/optimizer/simplify.lua @@ -0,0 +1,393 @@ +local confuser = require 'optimizer.confuser' + +local ipairs = ipairs +local pairs = pairs + +local jass, report, confuse1, confuse2 +local current_function, current_line, has_call +local executes, executed_any +local mark_exp, mark_lines, mark_function + +local function get_function(name) + return jass.functions[name] +end + +local function get_arg(name) + if current_function and current_function.args then + return current_function.args[name] + end +end + +local function get_local(name) + if current_function then + local locals = current_function.locals + if locals then + for i = #locals, 1, -1 do + local loc = locals[i] + if loc.name == name and loc.line < current_line then + return loc + end + end + end + end +end + +local function get_global(name) + return jass.globals[name] +end + +local function get_var(name) + local var = get_local(name) + if var then + return var, 'local' + end + local var = get_arg(name) + if var then + return var, 'arg' + end + local var = get_global(name) + if var then + return var, 'global' + end +end + +local function mark_var(var) + local use_var, type = get_var(var.name) + if type == 'global' and use_var.file ~= 'war3map.j' then + return + end + use_var.used = true + if confuse1 then + use_var.confused = confuse1(var.name) + end +end + +function mark_exp(exp) + if not exp then + return + end + if exp.type == 'null' or exp.type == 'integer' or exp.type == 'real' or exp.type == 'string' or exp.type == 'boolean' then + elseif exp.type == 'var' or exp.type == 'vari' then + mark_var(exp) + elseif exp.type == 'call' then + has_call = true + mark_function(exp) + elseif exp.type == 'code' then + mark_function(exp) + end + for i = 1, #exp do + mark_exp(exp[i]) + end +end + +local function mark_locals(locals) + for _, loc in ipairs(locals) do + if loc[1] then + current_line = loc.line + has_call = false + mark_exp(loc[1]) + if has_call then + loc.used = true + if confuse1 then + loc.confused = confuse1(loc.name) + end + end + end + end +end + +local function mark_execute(line) + if not executes then + executes = {} + end + local exp = line[1] + if exp.type == 'string' then + if get_function(exp.value) then + mark_function(get_function(exp.value)) + end + return + end + if exp.type == '+' then + if exp[1].type == 'string' then + local head = exp[1].value + executes[head] = true + report('引用函数', ('%s...'):format(head), ('第[%d]行:ExecuteFunc("%s" + ...)'):format(line.line, head)) + return + end + end + if not executed_any then + executed_any = true + report('强制引用全部函数', '强制引用全部函数', ('第[%d]行:完全动态的ExecuteFunc'):format(line.line)) + if confuse1 then + report('没有混淆函数名', '没有混淆函数名', ('第[%d]行:完全动态的ExecuteFunc'):format(line.line)) + end + end +end + +local function mark_call(line) + mark_function(line) + for _, exp in ipairs(line) do + mark_exp(exp) + end + if line.name == 'ExecuteFunc' then + mark_execute(line) + end +end + +local function mark_set(line) + mark_var(line) + mark_exp(line[1]) +end + +local function mark_seti(line) + mark_var(line) + mark_exp(line[1]) + mark_exp(line[2]) +end + +local function mark_return(line) + if line[1] then + mark_exp(line[1]) + end +end + +local function mark_exit(line) + mark_exp(line[1]) +end + +local function mark_if(data) + mark_exp(data.condition) + mark_lines(data) +end + +local function mark_elseif(data) + mark_exp(data.condition) + mark_lines(data) +end + +local function mark_else(data) + mark_lines(data) +end + +local function mark_ifs(chunk) + for _, data in ipairs(chunk) do + if data.type == 'if' then + mark_if(data) + elseif data.type == 'elseif' then + mark_elseif(data) + else + mark_else(data) + end + end +end + +local function mark_loop(chunk) + mark_lines(chunk) +end + +function mark_lines(lines) + for _, line in ipairs(lines) do + current_line = line.line + if line.type == 'call' then + mark_call(line) + elseif line.type == 'set' then + mark_set(line) + elseif line.type == 'seti' then + mark_seti(line) + elseif line.type == 'return' then + mark_return(line) + elseif line.type == 'exit' then + mark_exit(line) + elseif line.type == 'if' then + mark_ifs(line) + elseif line.type == 'loop' then + mark_loop(line) + end + end +end + +local function mark_takes(args) + if not args then + return + end + for _, arg in ipairs(args) do + if confuse1 then + arg.confused = confuse1(arg.name) + end + end +end + +function mark_function(call) + if not call then + return + end + local func = get_function(call.name) + if func.native then + func.used = true + return + end + if func.used or func.file ~= 'war3map.j' then + return + end + func.used = true + local _current_function = current_function + local _current_line = current_line + current_function = func + mark_takes(func.args) + mark_locals(func.locals) + mark_lines(func) + current_function = _current_function + current_line = _current_line +end + +local function mark_globals() + for _, global in ipairs(jass.globals) do + if global[1] then + current_line = global.line + has_call = false + mark_exp(global[1]) + if has_call then + global.used = true + if confuse1 then + global.confused = confuse1(global.name) + end + end + end + end +end + +local function mark_executed_used(func) + if func.used then + return + end + if executed_any then + mark_function(func) + return + end + local name = func.name + for head in pairs(executes) do + if name:sub(1, #head) == head then + mark_function(func) + return + end + end +end + +local function mark_executed_confuse(func) + local name = func.name + if name == 'config' or name == 'main' then + return + end + if func.native then + return + end + for head in pairs(executes) do + if name:sub(1, #head) == head then + func.confused = confuse2(head) .. name:sub(#head+1) + jass.confused_head[head] = confuse2(head) + return + end + end + func.confused = confuse1(name) +end + +local function mark_executed() + if not executes then + return + end + for _, func in ipairs(jass.functions) do + mark_executed_used(func) + end + if not executed_any and confuse1 then + for _, func in ipairs(jass.functions) do + mark_executed_confuse(func) + end + end +end + +local cant_use = {'globals', 'endglobals', 'constant', 'native', 'array', 'and', 'or', 'not', 'type', 'extends', 'function', 'endfunction', 'nothing', 'takes', 'returns', 'call', 'set', 'return', 'if', 'endif', 'elseif', 'else', 'loop', 'endloop', 'exitwhen', 'main', 'config'} +for _, name in ipairs(cant_use) do + cant_use[name] = true +end + +local function can_use(name) + if cant_use[name] then + return false + end + local func = get_function(name) + if func then + if func.file ~= 'war3map.j' then + return false + end + return true + end + local var, type = get_var(name) + if type == 'global' then + if var.file ~= 'war3map.j' then + return false + end + return true + elseif type == 'arg' or type == 'local' then + return true + end + return true +end + +local function init_confuser(confusion) + if not confusion then + return + end + + confusion = tostring(confusion) + local chars = {} + for char in confusion:gmatch '[%w_]' do + if not chars[char] then + chars[#chars+1] = char + end + end + if #chars < 3 then + report('脚本混淆失败', '脚本混淆失败', '至少要有3个合法字符') + end + + confusion = table.concat(chars) + + for char in confusion:gmatch '%a' do + chars[#chars+1] = char + end + if #chars < 2 then + report('脚本混淆失败', '脚本混淆失败', '至少要有2个字母') + return + end + + local confuse_head = chars[1] + confuse1 = confuser(confusion:gsub(confuse_head, '')) + function confuse1:on_find(name) + if can_use(name) then + return name + else + return nil + end + end + + jass.confused_head = {} + confuse2 = confuser(confusion) + function confuse2:on_find(name) + name = confuse_head .. name + if can_use(name) then + return name + else + return nil + end + end +end + +return function (ast, config, _report) + jass = ast + report = _report + + init_confuser(config.confusion) + mark_globals() + mark_function(get_function 'config') + mark_function(get_function 'main') + mark_executed() +end diff --git a/plugin/w3x2lni/script/other/convert_j.lua b/plugin/w3x2lni/script/other/convert_j.lua new file mode 100644 index 0000000..5bfb2a0 --- /dev/null +++ b/plugin/w3x2lni/script/other/convert_j.lua @@ -0,0 +1,12 @@ +local function convert_j(self, file_name_in, file_name_out) + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + io.save(file_name_out, content:convert_wts(false, true)) + +end + +return convert_j diff --git a/plugin/w3x2lni/script/other/create_unitsdoo.lua b/plugin/w3x2lni/script/other/create_unitsdoo.lua new file mode 100644 index 0000000..5488a89 --- /dev/null +++ b/plugin/w3x2lni/script/other/create_unitsdoo.lua @@ -0,0 +1,25 @@ +local mt = {} +mt.__index = mt + +function mt:add(format, ...) + self.hexs[#self.hexs+1] = (format):pack(...) +end + +function mt:add_head() + self:add('c4LL', 'W3do', 8, 11) +end + +function mt:add_data() + self:add('L', 0) +end + +return function(self) + local tbl = setmetatable({}, mt) + tbl.hexs = {} + tbl.self = self + + tbl:add_head() + tbl:add_data() + + return table.concat(tbl.hexs) +end diff --git a/plugin/w3x2lni/script/other/lni2w3i.lua b/plugin/w3x2lni/script/other/lni2w3i.lua new file mode 100644 index 0000000..726e18b --- /dev/null +++ b/plugin/w3x2lni/script/other/lni2w3i.lua @@ -0,0 +1,400 @@ +local table_insert = table.insert +local table_sort = table.sort +local table_concat = table.concat +local string_char = string.char +local type = type +local pairs = pairs +local setmetatable = setmetatable + +local function pack_flag(data) + local flag = 0 + for i = 1, #data do + flag = flag + (1 << (data[i]-1)) + end + return flag +end + +local mt = {} +mt.__index = mt + +function mt:add(format, ...) + self.hexs[#self.hexs+1] = (format):pack(...) +end + +function mt:current(key) + self._current = key +end + +function mt:get(key) + local value = self.data[self._current][key] + if type(value) == 'string' and #value > 1023 then + value = self.self:save_wts(self.wts, value, 'w3i里的文本长度超过1023字符') + end + return value +end + +function mt:read_head(data) + self:current '地图' + data.file_ver = self:get '文件版本' + data.map_ver = self:get '地图版本' + data.editor_ver = self:get '编辑器版本' + data.map_name = self:get '地图名称' + data.author = self:get '作者名字' + data.des = self:get '地图描述' + data.player_rec = self:get '推荐玩家' + + self:current '镜头' + for i = 1, 8 do + data['camera_bound_' .. i] = self:get '镜头范围' [i] + end + for i = 1, 4 do + data['camera_complement_' .. i] = self:get '镜头范围扩充' [i] + end + + self:current '地形' + data.map_width = self:get '地图宽度' + data.map_height = self:get '地图长度' + data.map_main_ground_type = self:get '地形类型' + + self:current '选项' + data.game_data_set = self:get '使用的游戏数据设置' + data.map_flag = self:get '关闭预览图' << 0 + | self:get '自定义结盟优先权' << 1 + | self:get '对战地图' << 2 + | self:get '大型地图' << 3 + | self:get '迷雾区域显示地形' << 4 + | self:get '自定义玩家分组' << 5 + | self:get '自定义队伍' << 6 + | self:get '自定义科技树' << 7 + | self:get '自定义技能' << 8 + | self:get '自定义升级' << 9 + | self:get '地图菜单标记' << 10 + | self:get '地形悬崖显示水波' << 11 + | self:get '地形起伏显示水波' << 12 + | self:get '未知1' << 13 + | self:get '未知2' << 14 + | self:get '未知3' << 15 + | self:get '未知4' << 16 + | self:get '未知5' << 17 + | self:get '未知6' << 18 + | self:get '未知7' << 19 + | self:get '未知8' << 20 + | self:get '未知9' << 21 + + self:current '载入图' + data.loading_screen_id = self:get '序号' + data.loading_screen_path = self:get '路径' + data.loading_screen_text = self:get '文本' + data.loading_screen_title = self:get '标题' + data.loading_screen_subtitle = self:get '子标题' + + self:current '战役' + data.prologue_screen_path = self:get '路径' + data.prologue_screen_text = self:get '文本' + data.prologue_screen_title = self:get '标题' + data.prologue_screen_subtitle = self:get '子标题' + + self:current '迷雾' + data.terrain_fog = self:get '类型' + data.fog_start_z = self:get 'z轴起点' + data.fog_end_z = self:get 'z轴终点' + data.fog_density = self:get '密度' + data.fog_red = self:get '颜色' [1] + data.fog_green = self:get '颜色' [2] + data.fog_blue = self:get '颜色' [3] + data.fog_alpha = self:get '颜色' [4] + + self:current '环境' + data.weather_id = self:get '天气' + data.sound_environment = self:get '音效' + data.light_environment = self:get '光照' + data.water_red = self:get '水面颜色' [1] + data.water_green = self:get '水面颜色' [2] + data.water_blue = self:get '水面颜色' [3] + data.water_alpha = self:get '水面颜色' [4] +end + +function mt:read_player(data) + self:current '玩家' + data.player_count = self:get '玩家数量' + data.players = {} + + for i = 1, data.player_count do + local player = {} + data.players[i] = player + self:current('玩家' .. i) + player.id = self:get '玩家' + player.type = self:get '类型' + player.race = self:get '种族' + player.start_position = self:get '修正出生点' + player.name = self:get '名字' + player.start_x = self:get '出生点' [1] + player.start_y = self:get '出生点' [2] + player.ally_low_flag = pack_flag(self:get '低结盟优先权标记') + player.ally_high_flag = pack_flag(self:get '高结盟优先权标记') + end +end + +local function pack_unuse_players(self) + local flag = 0xFFFFFFFF + self:current '玩家' + for i = 1, self:get '玩家数量' do + self:current('玩家'..i) + local id = self:get '玩家' + flag = flag ~ (1 << id) + end + return flag +end + +function mt:read_force(data) + self:current '队伍' + data.force_count = self:get '队伍数量' + data.forces = {} + + local unuse_player_flag = pack_unuse_players(self) + for i = 1, data.force_count do + local force = {} + data.forces[i] = force + self:current('队伍' .. i) + force.force_flag = self:get '结盟' << 0 + | self:get '结盟胜利' << 1 + | self:get '共享视野' << 3 + | self:get '共享单位控制' << 4 + | self:get '共享高级单位设置' << 5 + if i == 1 then + force.player_flag = pack_flag(self:get '玩家列表') | unuse_player_flag + else + force.player_flag = pack_flag(self:get '玩家列表') + end + force.name = self:get '队伍名称' + end +end + +function mt:read_upgrade(data) + data.upgrades = {} + local i = 1 + while self.data['升级'..i] do + local upgrade = {} + data.upgrades[i] = upgrade + self:current('升级'..i) + upgrade.player_flag = pack_flag(self:get '玩家列表') + upgrade.id = self:get 'ID' + upgrade.level = self:get '等级' + upgrade.available = self:get '可用性' + i = i + 1 + end + data.upgrade_count = #data.upgrades +end + +function mt:read_tech(data) + data.techs = {} + local i = 1 + while self.data['科技'..i] do + local tech = {} + data.techs[i] = tech + self:current('科技'..i) + tech.player_flag = pack_flag(self:get '玩家列表') + tech.id = self:get 'ID' + i = i + 1 + end + data.tech_count = #data.techs +end + +function mt:read_randomgroup(data) + data.groups = {} + local i = 1 + while self.data['随机组'..i] do + local group = {} + data.groups[i] = group + self:current('随机组'..i) + group.id = i - 1 + group.name = self:get '随机组名称' + group.positions = self:get '位置类型' + group.position_count = #group.positions + group.line_count = #self:get '设置' + group.lines = {} + for i = 1, group.line_count do + local line = {} + group.lines[i] = line + line.chance = self:get '设置' [i]['几率'] + line.ids = self:get '设置' [i]['ID'] + end + i = i + 1 + end + data.group_count = #data.groups +end + +function mt:read_randomitem(data) + data.random_items = {} + local i = 1 + while self.data['物品列表'..i] do + local random_item = {} + data.random_items[i] = random_item + self:current('物品列表'..i) + random_item.id = i - 1 + random_item.name = self:get '物品列表名称' + random_item.sets = {} + for i = 1, #self:get '设置' do + local set = {} + random_item.sets[i] = set + set.items = {} + for i, v in ipairs(self:get '设置' [i]) do + local item = {} + set.items[i] = item + item.chance = v['几率'] + item.id = v['ID'] + end + set.item_count = #set.items + end + random_item.set_count = #random_item.sets + i = i + 1 + end + data.random_item_count = #data.random_items +end + +function mt:add_head(data) + self:add('lllzzzz', data.file_ver, data.map_ver, data.editor_ver, data.map_name, data.author, data.des, data.player_rec) + + self:add('ffffffff', data.camera_bound_1, data.camera_bound_2, data.camera_bound_3, data.camera_bound_4, data.camera_bound_5, data.camera_bound_6, data.camera_bound_7, data.camera_bound_8) + + self:add('llll', data.camera_complement_1, data.camera_complement_2, data.camera_complement_3, data.camera_complement_4) + + self:add('lllc1', data.map_width, data.map_height, data.map_flag, data.map_main_ground_type) + + self:add('lzzzz', data.loading_screen_id, data.loading_screen_path, data.loading_screen_text, data.loading_screen_title, data.loading_screen_subtitle) + + self:add('l', data.game_data_set) + + self:add('zzzz', data.prologue_screen_path, data.prologue_screen_text, data.prologue_screen_title, data.prologue_screen_subtitle) + + self:add('lfffBBBB', data.terrain_fog, data.fog_start_z, data.fog_end_z, data.fog_density, data.fog_red, data.fog_green, data.fog_blue, data.fog_alpha) + + self:add('c4zc1', data.weather_id, data.sound_environment, data.light_environment) + + self:add('BBBB', data.water_red, data.water_green, data.water_blue, data.water_alpha) +end + +function mt:add_player(data) + self:add('l', data.player_count) + + for i = 1, data.player_count do + local player = data.players[i] + + --player.ally_low_flag = player.ally_low_flag | ((1 << data.player_count) - 1) + --player.ally_high_flag = player.ally_high_flag | ((1 << data.player_count) - 1) + + self:add('llllzffLL', player.id, player.type, player.race, player.start_position, player.name, player.start_x, player.start_y, player.ally_low_flag, player.ally_high_flag) + end +end + +function mt:add_force(data) + self:add('l', data.force_count) + + for i = 1, data.force_count do + local force = data.forces[i] + + --force.player_flag = force.player_flag | ((1 << data.player_count) - 1) + + self:add('LLz', force.force_flag, force.player_flag, force.name) + end +end + +function mt:add_upgrade(data) + self:add('l', data.upgrade_count) + + for i = 1, data.upgrade_count do + local upgrade = data.upgrades[i] + + self:add('lc4ll', upgrade.player_flag, upgrade.id, upgrade.level, upgrade.available) + end +end + +function mt:add_tech(data) + self:add('l', data.tech_count) + + for i = 1, data.tech_count do + local tech = data.techs[i] + + self:add('lc4', tech.player_flag, tech.id) + end +end + +function mt:add_randomgroup(data) + self:add('l', data.group_count) + + for i = 1, data.group_count do + local group = data.groups[i] + + self:add('lz', group.id, group.name) + + self:add('l', group.position_count) + + for i = 1, group.position_count do + self:add('l', group.positions[i]) + end + + self:add('l', group.line_count) + + for i = 1, group.line_count do + local line = group.lines[i] + + self:add('l', line.chance) + + for i = 1, group.position_count do + self:add('c4', line.ids[i]) + end + end + end +end + +function mt:add_randomitem(data) + self:add('l', data.random_item_count) + + for i = 1, data.random_item_count do + local random_item = data.random_items[i] + + self:add('lz', random_item.id, random_item.name) + + self:add('l', random_item.set_count) + + for i = 1, random_item.set_count do + local set = random_item.sets[i] + + self:add('l', set.item_count) + + for i = 1, set.item_count do + local item = set.items[i] + + self:add('lc4', item.chance, item.id) + end + end + end +end + +return function (self, data, wts) + local tbl = setmetatable({}, mt) + tbl.hexs = {} + tbl.data = data + tbl.self = self + tbl.wts = wts + + local data = {} + + tbl:read_head(data) + tbl:read_player(data) + tbl:read_force(data) + tbl:read_upgrade(data) + tbl:read_tech(data) + tbl:read_randomgroup(data) + tbl:read_randomitem(data) + + tbl:add_head(data) + tbl:add_player(data) + tbl:add_force(data) + tbl:add_upgrade(data) + tbl:add_tech(data) + tbl:add_randomgroup(data) + tbl:add_randomitem(data) + + return table_concat(tbl.hexs) +end diff --git a/plugin/w3x2lni/script/other/read_triggerdata.lua b/plugin/w3x2lni/script/other/read_triggerdata.lua new file mode 100644 index 0000000..63c7e47 --- /dev/null +++ b/plugin/w3x2lni/script/other/read_triggerdata.lua @@ -0,0 +1,90 @@ +local table_insert = table.insert +local table_remove = table.remove +local ipairs = ipairs + +local function read_triggerdata(self, file_name_in) + local function_state + if self.function_state then + function_state = self.function_state + else + function_state = {} + self.function_state = function_state + end + + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + local funcs + funcs = { + --检查关键字,判断函数域 + function (line) + local trigger_type = line:match '^%[(.+)%]$' + if not trigger_type then + return + end + + if trigger_type == 'TriggerEvents' then + trigger_type = 0 + elseif trigger_type == 'TriggerConditions' then + trigger_type = 1 + elseif trigger_type == 'TriggerActions' then + trigger_type = 2 + elseif trigger_type == 'TriggerCalls' then + trigger_type = 3 + else + funcs.trigger_type = nil + return + end + + funcs.states = {} + funcs.trigger_type = trigger_type + function_state[trigger_type] = funcs.states + + end, + + --检查函数 + function (line) + if not funcs.trigger_type then + return + end + + local name, args = line:match '^([^_].-)%=(.-)$' + if not name then + return + end + + local state = {} + state.name = name + state.args = {} + + for arg in args:gmatch '[^%,]+' do + --排除部分参数 + if not tonumber(arg) and arg ~= 'nothing' then + table_insert(state.args, arg) + end + end + --类型为调用时,去掉第一个返回值 + if funcs.trigger_type == 3 then + table_remove(state.args, 1) + end + + table_insert(funcs.states, state) + funcs.states[state.name] = state + end, + } + + --解析文本 + for line in content:gmatch '[^\n\r]+' do + for _, func in ipairs(funcs) do + if func(line) then + break + end + end + end + +end + +return read_triggerdata diff --git a/plugin/w3x2lni/script/other/read_w3i.lua b/plugin/w3x2lni/script/other/read_w3i.lua new file mode 100644 index 0000000..e4c68d2 --- /dev/null +++ b/plugin/w3x2lni/script/other/read_w3i.lua @@ -0,0 +1,281 @@ +local select = select + +local w2l + +local function unpack_flag(flag) + local tbl = {} + for i = 0, 64 do + local n = 1 << i + if n > flag then + break + end + if flag & n ~= 0 then + tbl[#tbl+1] = i + 1 + end + end + return tbl +end + +local function pack(...) + local tbl = {...} + tbl[#tbl] = nil + return tbl +end + +local mt = {} +mt.__index = mt + +function mt:set_index(...) + self.index = select(-1, ...) + return ... +end + +function mt:unpack(str) + return self:set_index(str:unpack(self.content, self.index)) +end + +function mt:is_finish() + return ('I1'):unpack(self.content, self.index) == 0xFF +end + +function mt:add_head(chunk) + chunk['地图'] = { + ['文件版本'] = self:unpack 'l', + ['地图版本'] = self:unpack 'l', + ['编辑器版本'] = self:unpack 'l', + ['地图名称'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['作者名字'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['地图描述'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['推荐玩家'] = w2l:load_wts(self.wts, (self:unpack 'z')), + } + + chunk['镜头'] = { + ['镜头范围'] = pack(self:unpack 'ffffffff'), + ['镜头范围扩充'] = pack(self:unpack 'llll'), + } + + chunk['地形'] = { + ['地图宽度'] = self:unpack 'l', + ['地图长度'] = self:unpack 'l', + } + + local flag = self:unpack 'L' + chunk['选项'] = { + ['关闭预览图'] = flag >> 0 & 1, + ['自定义结盟优先权'] = flag >> 1 & 1, + ['对战地图'] = flag >> 2 & 1, + ['大型地图'] = flag >> 3 & 1, + ['迷雾区域显示地形'] = flag >> 4 & 1, + ['自定义玩家分组'] = flag >> 5 & 1, + ['自定义队伍'] = flag >> 6 & 1, + ['自定义科技树'] = flag >> 7 & 1, + ['自定义技能'] = flag >> 8 & 1, + ['自定义升级'] = flag >> 9 & 1, + ['地图菜单标记'] = flag >> 10 & 1, + ['地形悬崖显示水波'] = flag >> 11 & 1, + ['地形起伏显示水波'] = flag >> 12 & 1, + ['未知1'] = flag >> 13 & 1, + ['未知2'] = flag >> 14 & 1, + ['未知3'] = flag >> 15 & 1, + ['未知4'] = flag >> 16 & 1, + ['未知5'] = flag >> 17 & 1, + ['未知6'] = flag >> 18 & 1, + ['未知7'] = flag >> 19 & 1, + ['未知8'] = flag >> 20 & 1, + ['未知9'] = flag >> 21 & 1, + } + + chunk['地形']['地形类型'] = self:unpack 'c1' + + chunk['载入图'] = { + ['序号'] = self:unpack 'l', + ['路径'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['文本'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['标题'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['子标题'] = w2l:load_wts(self.wts, (self:unpack 'z')), + } + + chunk['选项']['使用的游戏数据设置'] = self:unpack 'l' + + chunk['战役'] = { + ['路径'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['文本'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['标题'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['子标题'] = w2l:load_wts(self.wts, (self:unpack 'z')), + } + + chunk['迷雾'] = { + ['类型'] = self:unpack 'l', + ['z轴起点'] = self:unpack 'f', + ['z轴终点'] = self:unpack 'f', + ['密度'] = self:unpack 'f', + ['颜色'] = pack(self:unpack 'BBBB'), + } + + chunk['环境'] = { + ['天气'] = self:unpack 'c4', + ['音效'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['光照'] = self:unpack 'c1', + ['水面颜色'] = pack(self:unpack 'BBBB'), + } +end + +function mt:add_player(chunk) + chunk['玩家'] = { + ['玩家数量'] = self:unpack 'l', + } + + for i = 1, chunk['玩家']['玩家数量'] do + chunk['玩家'..i] = { + ['玩家'] = self:unpack 'l', + ['类型'] = self:unpack 'l', + ['种族'] = self:unpack 'l', + ['修正出生点'] = self:unpack 'l', + ['名字'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['出生点'] = pack(self:unpack 'ff'), + ['低结盟优先权标记'] = unpack_flag(self:unpack 'L'), + ['高结盟优先权标记'] = unpack_flag(self:unpack 'L'), + } + end +end + +function mt:unpack_player_flag(chunk) + local flag = self:unpack 'L' + local tbl = unpack_flag(flag) + local exits = {} + for i = 1, chunk['玩家']['玩家数量'] do + local player = chunk['玩家'..i] + local id = player['玩家'] + 1 + exits[id] = true + end + local result = {} + for _, id in ipairs(tbl) do + if exits[id] then + result[#result+1] = id + end + end + return result +end + +function mt:add_force(chunk) + chunk['队伍'] = { + ['队伍数量'] = self:unpack 'l', + } + + for i = 1, chunk['队伍']['队伍数量'] do + local flag = self:unpack 'L' + chunk['队伍'..i] = { + ['结盟'] = flag >> 0 & 1, + ['结盟胜利'] = flag >> 1 & 1, + ['共享视野'] = flag >> 3 & 1, + ['共享单位控制'] = flag >> 4 & 1, + ['共享高级单位设置'] = flag >> 5 & 1, + ['玩家列表'] = self:unpack_player_flag(chunk), + ['队伍名称'] = w2l:load_wts(self.wts, (self:unpack 'z')), + } + end +end + +function mt:add_upgrade(chunk) + if self:is_finish() then + return + end + local count = self:unpack 'l' + for i = 1, count do + chunk['升级'..i] = { + ['玩家列表'] = unpack_flag(self:unpack 'L'), + ['ID'] = self:unpack 'c4', + ['等级'] = self:unpack 'l', + ['可用性'] = self:unpack 'l', + } + end +end + +function mt:add_tech(chunk) + if self:is_finish() then + return + end + local count = self:unpack 'l' + for i = 1, count do + chunk['科技'..i] = { + ['玩家列表'] = unpack_flag(self:unpack 'L'), + ['ID'] = self:unpack 'c4', + } + end +end + +function mt:add_randomgroup(chunk) + if self:is_finish() then + return + end + local count = self:unpack 'l' + for i = 1, count do + chunk['随机组'..i] = { + ['ID'] = self:unpack 'l', + ['随机组名称'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['设置'] = {}, + } + local x = self:unpack 'l' + chunk['随机组'..i]['位置类型'] = pack(self:unpack(('l'):rep(x))) + + local y = self:unpack 'l' + for y = 1, y do + chunk['随机组'..i]['设置'][y] = { + ['几率'] = self:unpack 'l', + ['ID'] = pack(self:unpack(('c4'):rep(x))), + } + end + end +end + +function mt:add_randomitem(chunk) + if self:is_finish() then + return + end + local count = self:unpack 'l' + for i = 1, count do + chunk['物品列表'..i] = { + ['ID'] = self:unpack 'l', + ['物品列表名称'] = w2l:load_wts(self.wts, (self:unpack 'z')), + ['设置'] = {}, + } + + --设置 + local x = self:unpack 'l' + for x = 1, x do + chunk['物品列表'..i]['设置'][x] = {} + local y = self:unpack 'l' + for y = 1, y do + chunk['物品列表'..i]['设置'][x][y] = { + ['几率'] = self:unpack 'l', + ['ID'] = self:unpack 'c4', + } + end + end + end +end + +return function (w2l_, content, wts) + if not content then + return nil + end + w2l = w2l_ + + local index = 1 + local tbl = setmetatable({}, mt) + local data = {} + + tbl.content = content + tbl.index = index + tbl.wts = wts + + tbl:add_head(data) + tbl:add_player(data) + tbl:add_force(data) + tbl:add_upgrade(data) + tbl:add_tech(data) + tbl:add_randomgroup(data) + tbl:add_randomitem(data) + + return data +end diff --git a/plugin/w3x2lni/script/other/txt2wct.lua b/plugin/w3x2lni/script/other/txt2wct.lua new file mode 100644 index 0000000..89c7640 --- /dev/null +++ b/plugin/w3x2lni/script/other/txt2wct.lua @@ -0,0 +1,47 @@ +local function txt2wct(self, file_name_in, file_name_out) + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + local chunk = {} + local index = 1 + local max = #content + --文件头 + chunk.file_ver = content:match 'VERSION%=(%d+)' + + --遍历文本 + for chars in content:gmatch '########%c*(.-)%c*########' do + table.insert(chunk, chars) + end + + --生成二进制文件 + local pack = {} + + --文件头 + table.insert(pack, ('l'):pack(chunk.file_ver)) + --自定义区域注释 + table.insert(pack, ('z'):pack(chunk[1])) + --自定义区域文本大小与文本 + if chunk[2] == '' then + table.insert(pack, ('l'):pack(0)) + else + table.insert(pack, ('lz'):pack(#chunk[2] + 1, chunk[2])) + end + --触发器数量 + table.insert(pack, ('l'):pack(#chunk - 2)) + --触发器文本大小与文本 + for i = 3, #chunk do + if chunk[i] == '' then + table.insert(pack, ('l'):pack(0)) + else + table.insert(pack, ('lz'):pack(#chunk[i] + 1, chunk[i])) + end + end + + io.save(file_name_out, table.concat(pack)) + +end + +return txt2wct diff --git a/plugin/w3x2lni/script/other/txt2wtg.lua b/plugin/w3x2lni/script/other/txt2wtg.lua new file mode 100644 index 0000000..45e85cb --- /dev/null +++ b/plugin/w3x2lni/script/other/txt2wtg.lua @@ -0,0 +1,343 @@ +local function txt2wtg(self, file_name_in, file_name_out) + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + local index = 0 + local line + local function read() + local _ + _, index, line = content:find('(%C+)', index + 1) + if line and line:match '^%s*$' then + return read() + end + return line + end + + local chunk = {} + + --解析文本 + do + --版本号 + repeat + read() + chunk.file_ver = line:match 'VERSION%=(.+)' + until chunk.file_ver + + --块 + local chunk_type, trigger + while read() do + --local line = line + local name = line:match '^%s*【%s*(%S-)%s*】%s*$' + if name then + chunk_type = name + if name == 'Global' then + chunk.vars = {} + elseif name == 'Category' then + chunk.categories = {} + elseif name == 'Trigger' then + chunk.triggers = {} + end + goto continue + end + + --全局变量 + if chunk_type == 'Global' then + + local type, s = line:match '^%s*(%S-)%s+(.+)$' + if not type then + goto continue + end + + local var = {} + table.insert(chunk.vars, var) + + var.type = type + var.name, s = s:match '^([%w_]+)(.*)$' + if s then + var.array_size = s:match '%[%s*(%d+)%s*%]' + var.value = s:match '%=(.-)$' + end + + --message(var.type, var.name, var.array_size, var.value) + goto continue + end + + --触发器类型(文件夹) + if chunk_type == 'Category' then + + local name, id, comment = line:match '^%s*%[(.-)%]%(%s*(%d+)%s*%)%s*([%*]*)%s*$' + if not name then + goto continue + end + + local category = {} + table.insert(chunk.categories, category) + + category.name, category.id, category.comment = name, id, comment == '*' and 1 or 0 + --message(name, id) + + goto continue + end + + --触发器 + if chunk_type == 'Trigger' then + --读取ECA(最优先解读) + local readEca, readArg + + function readEca(is_arg, is_child) + local eca_args, value = line:match '^[\t]*(.-)%:(.-)$' + + --message('line:' .. line) + if value then + local eca = {} + + --eca名字 + eca.name = value + + --eca类型 + eca.type = tonumber(eca_args:match '%[%s*(%d+)%s*%]') + + --是否包含复合结构 + eca.child_eca_count = eca_args:match '%<%s*(%d+)%s*%>' + + if is_arg then + --是否是参数 + is_arg.eca = eca + elseif is_child then + --是否是子项 + table.insert(is_child, eca) + + --子项ID + eca.child_id = eca_args:match '%(%s*(%d+)%s*%)' + else + table.insert(trigger.ecas, eca) + end + + --是否允许 + eca.enable = eca_args:match '[%*%#]' + + --读取这个ECA下有多少参数 + --message(eca.type, eca.name) + local state_args = self.function_state + [eca.type] + [eca.name] + .args + local arg_count = #state_args + --message(arg_count) + eca.args = {} + + for i = 1, arg_count do + readArg(eca.args) + end + + --读取这个ECA下有多少子项 + if eca.child_eca_count then + eca.child_ecas = {} + --message(eca.name, eca.child_eca_count) + for i = 1, eca.child_eca_count do + read() + readEca(false, eca.child_ecas) + end + end + + return true + end + end + + function readArg(args) + local arg_args, value = read():match '^[\t]*(.-)%:(.-)$' + if value then + local arg = {} + table.insert(args, arg) + + --类型 + arg.type = tonumber(arg_args:match '%[%s*([%-%d]+)%s*%]') + arg.value = value + arg.has_child = arg_args:match '[%*%#]' + + --有子数据 + if arg.has_child == '*' then + --数组索引 + arg.insert_index = 1 + --message(has_child .. ':child_index:' .. arg.value) + arg.args = {} + readArg(arg.args) + elseif arg.has_child == '#' then + --函数调用 + arg.insert_call = 1 + --message(has_child .. ':child_call:' .. arg.value) + + --只有在函数调用时,参数中才会保存函数的名字 + if arg.type ~= 3 then + arg.value = '' + end + + --函数调用的实际type为2 + arg.type = 2 + readEca(arg) + end + end + end + + if readEca() then + goto continue + end + + --尝试读取触发器名字 + local name = line:match '^%s*%<(.-)%>%s*$' + if name then + trigger = {} + table.insert(chunk.triggers, trigger) + + trigger.name = name + trigger.ecas = {} + + goto continue + end + + --读取触发器参数 + local name, s = line:match '^(.-)%=(.-)$' + if name then + trigger[name] = s + + goto continue + end + end + + --全局数据 + local name, s = line:match '^(.-)%=(.-)$' + if name then + chunk[name] = s + end + + :: continue :: + end + end + + --转换2进制 + local pack = {} + + do + --文件头 + table.insert(pack, ('c4l'):pack('WTG!', chunk.file_ver)) + + --触发器类别 + --文件夹计数 + table.insert(pack ,('l'):pack(#chunk.categories)) + + --遍历文件夹 + for _, category in ipairs(chunk.categories) do + table.insert(pack, ('lzl'):pack(category.id, category.name, category.comment)) + end + + --全局变量 + --计数 + table.insert(pack, ('ll'):pack(chunk['未知1'], #chunk.vars)) + + --遍历全局变量 + for _, var in ipairs(chunk.vars) do + table.insert(pack, ('zzllllz'):pack( + var.name, --名字 + var.type, --类型 + 1, --永远是1 + var.array_size and 1 or 0, --是否是数组 + var.array_size or 1, --数组大小(非数组是1) + var.value and 1 or 0, --是否有自定义初始值 + var.value or '' --自定义初始值 + )) + end + + --触发器 + --计数 + table.insert(pack, ('l'):pack(#chunk.triggers)) + + --遍历触发器 + for _, trigger in ipairs(chunk.triggers) do + + --触发器参数 + table.insert(pack, ('zzllllll'):pack( + trigger.name, + trigger['描述'], + trigger['类型'], + trigger['允许'], + trigger['自定义代码'], + trigger['初始化'], + trigger['初始化运行'], + trigger['类别'] + )) + + --ECA + --计数 + table.insert(pack, ('l'):pack(#trigger.ecas)) + + --遍历ECA + local push_eca, push_arg + + function push_eca(eca) + --类型 + table.insert(pack, ('l'):pack(eca.type)) + + --如果是复合结构,插入一个整数 + if eca.child_id then + table.insert(pack, ('l'):pack(eca.child_id)) + end + + --名字,是否允许 + table.insert(pack, ('zl'):pack(eca.name, eca.enable == '*' and 0 or 1)) + + --读取参数 + for _, arg in ipairs(eca.args) do + push_arg(arg) + end + + --复合结构 + table.insert(pack, ('l'):pack(eca.child_eca_count or 0)) + + if eca.child_eca_count then + for _, eca in ipairs(eca.child_ecas) do + push_eca(eca) + end + end + end + + function push_arg(arg) + table.insert(pack, ('lzl'):pack( + arg.type, --类型 + arg.value, --值 + arg.insert_call or 0 --是否插入函数调用 + )) + + --是否要插入函数调用 + if arg.insert_call then + push_eca(arg.eca) + + table.insert(pack, ('l'):pack(0)) --永远是0 + return + end + + --是否要插入数组索引 + table.insert(pack, ('l'):pack(arg.insert_index or 0)) + + if arg.insert_index then + for _, arg in ipairs(arg.args) do + push_arg(arg) + end + end + + end + + for _, eca in ipairs(trigger.ecas) do + push_eca(eca) + end + end + + --打包 + io.save(file_name_out, table.concat(pack)) + + end +end + +return txt2wtg diff --git a/plugin/w3x2lni/script/other/w3i2lni.lua b/plugin/w3x2lni/script/other/w3i2lni.lua new file mode 100644 index 0000000..d0c325f --- /dev/null +++ b/plugin/w3x2lni/script/other/w3i2lni.lua @@ -0,0 +1,239 @@ +local table_concat = table.concat +local type = type +local math_type = math.type + +local mt = {} +mt.__index = mt + +function mt:add(format, ...) + self.lines[#self.lines+1] = format:format(...) +end + +local function format_value(value) + local tp = type(value) + if tp == 'string' then + if value:match '[\n\r]' then + return ('[=[\r\n%s]=]'):format(value) + else + return ('%q'):format(value) + end + elseif tp == 'number' then + if math_type(value) == 'integer' then + return value + else + return ('%.4f'):format(value) + end + end +end + +local function format_table(tbl) + local new_tbl = {} + for i = 1, #tbl do + new_tbl[i] = format_value(tbl[i]) + end + return new_tbl +end + +function mt:title(name, data) + if not data[name] then + return nil + end + if self._title then + self:add '' + end + self._title = data[name] + self:add(('[%s]'):format(name)) + return data[name] +end + +function mt:value(name) + local value = self._title[name] + if type(value) == 'table' then + local strs = format_table(value) + if type(strs[1]) == 'string' and #strs > 6 then + self:add('%s = {\r\n%s\r\n}', name, table_concat(strs, ',\r\n')) + else + self:add('%s = {%s}', name, table_concat(strs, ', ')) + end + else + self:add('%s = %s', name, format_value(value)) + end +end + +function mt:add_head(data) + self:title('地图', data) + self:value '文件版本' + self:value '地图版本' + self:value '编辑器版本' + self:value '地图名称' + self:value '作者名字' + self:value '地图描述' + self:value '推荐玩家' + + self:title('镜头', data) + self:value '镜头范围' + self:value '镜头范围扩充' + + self:title('地形', data) + self:value '地图宽度' + self:value '地图长度' + self:value '地形类型' + + self:title('选项', data) + self:value '使用的游戏数据设置' + self:value '关闭预览图' + self:value '自定义结盟优先权' + self:value '对战地图' + self:value '大型地图' + self:value '迷雾区域显示地形' + self:value '自定义玩家分组' + self:value '自定义队伍' + self:value '自定义科技树' + self:value '自定义技能' + self:value '自定义升级' + self:value '地图菜单标记' + self:value '地形悬崖显示水波' + self:value '地形起伏显示水波' + self:value '未知1' + self:value '未知2' + self:value '未知3' + self:value '未知4' + self:value '未知5' + self:value '未知6' + self:value '未知7' + self:value '未知8' + self:value '未知9' + + self:title('载入图', data) + self:value '序号' + self:value '路径' + self:value '文本' + self:value '标题' + self:value '子标题' + + self:title('战役', data) + self:value '路径' + self:value '文本' + self:value '标题' + self:value '子标题' + + self:title('迷雾', data) + self:value '类型' + self:value 'z轴起点' + self:value 'z轴终点' + self:value '密度' + self:value '颜色' + + self:title('环境', data) + self:value '天气' + self:value '音效' + self:value '光照' + self:value '水面颜色' + + return data +end + +function mt:add_player(data) + self:title('玩家', data) + self:value '玩家数量' + + for i = 1, data['玩家']['玩家数量'] do + self:title('玩家'..i, data) + self:value '玩家' + self:value '类型' + self:value '种族' + self:value '修正出生点' + self:value '名字' + self:value '出生点' + self:value '低结盟优先权标记' + self:value '高结盟优先权标记' + end +end + +function mt:add_force(data) + self:title('队伍', data) + self:value '队伍数量' + + for i = 1, data['队伍']['队伍数量'] do + self:title('队伍'..i, data) + self:value '结盟' + self:value '结盟胜利' + self:value '共享视野' + self:value '共享单位控制' + self:value '共享高级单位设置' + self:value '玩家列表' + self:value '队伍名称' + end +end + +function mt:add_upgrade(data) + local i = 1 + while self:title('升级'..i, data) do + self:value '玩家列表' + self:value 'ID' + self:value '等级' + self:value '可用性' + i = i + 1 + end +end + +function mt:add_tech(data) + local i = 1 + while self:title('科技'..i, data) do + self:value '玩家列表' + self:value 'ID' + i = i + 1 + end +end + +function mt:add_randomgroup(data) + local i = 1 + while self:title('随机组'..i, data) do + self:value '随机组名称' + self:value '位置类型' + + self:add('设置 = {') + for i, set in ipairs(data['随机组'..i]['设置']) do + self:add('%d = {', i) + self:add('几率 = %d,', set['几率']) + self:add('ID = {%s},', table_concat(format_table(set['ID']), ', ')) + self:add('},') + end + self:add('}') + i = i + 1 + end +end + +function mt:add_randomitem(data) + local i = 1 + while self:title('物品列表'..i, data) do + self:value '物品列表名称' + + self:add('设置 = {') + for i, set in ipairs(data['物品列表'..i]['设置']) do + self:add('%d = {', i) + for _, item in ipairs(set) do + self:add('{几率 = %d, ID = %q},', item['几率'], item['ID']) + end + self:add('},') + end + self:add('}') + i = i + 1 + end +end + +return function (w2l, data, wts) + local tbl = setmetatable({}, mt) + tbl.lines = {} + tbl.self = w2l + + tbl:add_head(data) + tbl:add_player(data) + tbl:add_force(data) + tbl:add_upgrade(data) + tbl:add_tech(data) + tbl:add_randomgroup(data) + tbl:add_randomitem(data) + + return table_concat(tbl.lines, '\r\n') +end diff --git a/plugin/w3x2lni/script/other/wct2txt.lua b/plugin/w3x2lni/script/other/wct2txt.lua new file mode 100644 index 0000000..71a7f21 --- /dev/null +++ b/plugin/w3x2lni/script/other/wct2txt.lua @@ -0,0 +1,63 @@ +local function wct2txt(self, file_name_in, file_name_out) + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + local index = 1 + local max = #content + local chunk = {} + + --文件版本 + chunk.file_ver, index = ('l'):unpack(content, index) + + chunk.triggers = {} + + --自定义代码区的注释 + chunk.comment, index = ('z'):unpack(content, index) + + --自定义代码区的文本 + local trigger = {} + table.insert(chunk.triggers, trigger) + + trigger.size, index = ('l'):unpack(content, index) + if trigger.size ~= '0' then + trigger.content, index = ('z'):unpack(content, index) + end + + --触发器数量 + chunk.trigger_count, index = ('l'):unpack(content, index) + + for i = 1, chunk.trigger_count do + local trigger = {} + table.insert(chunk.triggers, trigger) + + --文本长度 + trigger.size, index = ('l'):unpack(content, index) + + --如果文本长度为0,无文本 + if trigger.size == 0 then + trigger.content = '' + else + trigger.content, index = ('z'):unpack(content, index) + end + end + + --转换文本 + local lines = {} + + --文件版本 + table.insert(lines, ('VERSION=%s'):format(chunk.file_ver)) + table.insert(lines, ('########\r\n%s\r\n########'):format(chunk.comment)) + + --文本 + for _, trigger in ipairs(chunk.triggers) do + table.insert(lines, ('########\r\n%s\r\n########'):format(trigger.content)) + end + + io.save(file_name_out, table.concat(lines, '\r\n'):convert_wts() .. '\r\n') + +end + +return wct2txt diff --git a/plugin/w3x2lni/script/other/wtg2txt.lua b/plugin/w3x2lni/script/other/wtg2txt.lua new file mode 100644 index 0000000..36558d4 --- /dev/null +++ b/plugin/w3x2lni/script/other/wtg2txt.lua @@ -0,0 +1,473 @@ +local function wtg2txt(self, file_name_in, file_name_out) + local content = io.load(file_name_in) + if not content then + message('文件无效:' .. file_name_in:string()) + return + end + + local index = 1 + local len = #content + + local chunk = {} + local funcs = {} + local categories, category, vars, var, triggers, trigger, ecas, eca, args, arg + + --文件头 + function funcs.readHead() + chunk.file_id, --文件ID + chunk.file_ver, --文件版本 + index = ('c4l'):unpack(content, index) + end + + --触发器类别(文件夹) + function funcs.readCategories() + --触发器类别数量 + chunk.category_count, index = ('l'):unpack(content, index) + + --初始化 + categories = {} + chunk.categories = categories + + for i = 1, chunk.category_count do + funcs.readCategory() + end + end + + function funcs.readCategory() + category = {} + category.id, category.name, category.comment, index = ('lzl'):unpack(content, index) + + table.insert(categories, category) + end + + --全局变量 + function funcs.readVars() + --全局变量数量 + chunk.int_unknow_1, chunk.var_count, index = ('ll'):unpack(content, index) + + --初始化 + vars = {} + chunk.vars = vars + + for i = 1, chunk.var_count do + funcs.readVar() + end + end + + function funcs.readVar() + var = {} + var.name, --变量名 + var.type, --变量类型 + var.int_unknow_1, --(永远是1,忽略) + var.is_array, --是否是数组(0不是, 1是) + var.array_size, --数组大小(非数组是1) + var.is_default, --是否是默认值(0是, 1不是) + var.value, --初始数值 + index = ('zzllllz'):unpack(content, index) + + table.insert(vars, var) + vars[var.name] = var + end + + --触发器 + function funcs.readTriggers() + --触发器数量 + chunk.trigger_count, index = ('l'):unpack(content, index) + + --初始化 + triggers = {} + chunk.triggers = triggers + + for i = 1, chunk.trigger_count do + funcs.readTrigger() + end + end + + function funcs.readTrigger() + trigger = {} + trigger.name, --触发器名字 + trigger.des, --触发器描述 + trigger.type, --类型(0普通, 1注释) + trigger.enable, --是否允许(0禁用, 1允许) + trigger.wct, --是否是自定义代码(0不是, 1是) + trigger.init, --是否初始化(0是, 1不是) + trigger.run_init, --地图初始化时运行 + trigger.category, --在哪个文件夹下 + index = ('zzllllll'):unpack(content, index) + + table.insert(triggers, trigger) + --message('trigger:' .. trigger.name) + --读取子结构 + funcs.readEcas() + + end + + --子结构 + function funcs.readEcas() + --子结构数量 + trigger.eca_count, index = ('l'):unpack(content, index) + + --初始化 + ecas = {} + trigger.ecas = ecas + + for i = 1, trigger.eca_count do + funcs.readEca() + end + end + + function funcs.readEca(is_child, is_arg) + eca = {} + local eca = eca + + eca.type, --类型(0事件, 1条件, 2动作, 3函数调用) + index = ('l'):unpack(content, index) + + --是否是复合结构 + if is_child then + eca.child_id, index = ('l'):unpack(content, index) + end + + --是否是参数中的子函数 + if is_arg then + is_arg.eca = eca + else + table.insert(ecas, eca) + end + + eca.name, --名字 + eca.enable, --是否允许(0不允许, 1允许) + index = ('zl'):unpack(content, index) + + --message('eca:' .. eca.name) + --读取参数 + funcs.readArgs(eca) + + --if,loop等复合结构 + eca.child_eca_count, index = ('l'):unpack(content, index) + for i = 1, eca.child_eca_count do + funcs.readEca(true) + end + end + + --参数 + function funcs.readArgs(eca) + --初始化 + args = {} + local args = args + eca.args = args + + --message(eca.type, eca.name) + local state_args = self.function_state[eca.type][eca.name].args + local arg_count = #state_args + + --message('args:' .. arg_count) + + for i = 1, arg_count do + funcs.readArg(args) + end + + end + + function funcs.readArg(args) + arg = {} + + arg.type, --类型(0预设, 1变量, 2函数, 3代码) + arg.value, --值 + arg.insert_call, --是否需要插入调用 + index = ('lzl'):unpack(content, index) + --message('var:' .. arg.value) + + --是否是索引 + table.insert(args, arg) + + --插入调用 + if arg.insert_call == 1 then + funcs.readEca(false, arg) + arg.int_unknow_1, index = ('l'):unpack(content, index) --永远是0 + --message(arg.int_unknow_1) + return + end + + arg.insert_index, --是否需要插入数组索引 + index = ('l'):unpack(content, index) + + --插入数组索引 + if arg.insert_index == 1 then + funcs.readArg(args) + end + end + + --开始解析 + do + funcs.readHead() + funcs.readCategories() + funcs.readVars() + funcs.readTriggers() + end + + --开始转化文本 + local lines = string.create_lines(1) + + do + + --版本 + lines '[\'%s\']=%d,' ('VERSION', chunk.file_ver) + lines '[\'%s\']=%d,' ('未知1', chunk.int_unknow_1) + + --全局变量 + local function f() + local lines = string.create_lines(2) + for i, var in ipairs(chunk.vars) do + if var.is_array == 1 then + if var.value ~= '' then + lines '{%q, %q, %d, %q}' (var.type, var.name, var.array_size, var.value) + else + lines '{%q, %q, %d}' (var.type, var.name, var.array_size) + end + else + if var.value ~= '' then + lines '{%q, %q, %d, %q}':format(var.type, var.name, 0, var.value) + else + lines '{%q, %q}' (var.type, var.name) + end + end + end + return table.concat(lines, ',\r\n') + end + + lines '[\'%s\']={\r\n%s' ('全局变量', f()) + lines '},' + + --触发器类别(文件夹) + local function f() + local lines = string.create_lines(2) + + for _, category in ipairs(chunk.categories) do + lines '{%q, %d, %d}' ( + category.name, + category.id, + category.comment + ) + end + + return table.concat(lines, ',\r\n') + end + + lines '[\'%s\']={\r\n%s' ('触发器类别', f()) + lines '},' + + + --ECA结构 + + + --触发器 + local function f() + local lines = string.create_lines(2) + + for _, trigger in ipairs(chunk.triggers) do + local function f() + local lines = string.create_lines(3) + + lines '[\'%s\']=%q' ('名称', trigger.name) + lines '[\'%s\']=%q' ('描述', trigger.des) + lines '[\'%s\']=%d' ('类型', trigger.type) + lines '[\'%s\']=%d' ('允许', trigger.enable) + lines '[\'%s\']=%d' ('自定义代码', trigger.wct) + lines '[\'%s\']=%d' ('初始打开', trigger.init) + lines '[\'%s\']=%d' ('初始化运行', trigger.run_init) + lines '[\'%s\']=%d' ('类别', trigger.category) + + --触发器ECA + local max = #trigger.ecas + if max > 0 then + + local function f() + local lines = string.create_lines(4) + local lines_event = string.create_lines(5) + local lines_condition = string.create_lines(5) + local lines_action = string.create_lines(5) + + local tab = 1 + local ecas, index = trigger.ecas, 1 + + local function push_eca(eca, lines_arg) + if not eca then + eca = ecas[index] + index = index + 1 + if not eca then + return false + end + end + + local lines + if lines_arg then + lines = lines_arg + else + if eca.type == 0 then + lines = lines_event + elseif eca.type == 1 then + lines = lines_condition + elseif eca.type == 2 then + lines = lines_action + else + message('eca类型错误', eca.type) + end + end + + local function f(tab) + local lines = string.create_lines() + + lines '%q' (eca.name) + if eca.enable == 0 then + lines 'false' + end + + return table.concat(lines, ', ') + end + + if #eca.args == 0 then + lines '{%s}' (f(lines.tab)) + else + --参数 + local function f2(tab) + local lines = string.create_lines() + + local function f(tab) + local lines = string.create_lines(tab + 1) + local index = 1 + + local function push_arg(arg, lines_arg) + if not arg then + arg = eca.args[index] + index = index + 1 + if not arg then + return + end + end + + local lines = lines_arg or lines + + if arg.insert_call == 1 then + push_eca(arg.eca, lines) + else + --索引 + if arg.insert_index == 1 then + local function f2(tab) + local lines = string.create_lines() + + local function f(tab) + local lines = string.create_lines(tab + 1) + + push_arg(nil, lines) + + return table.concat(lines, ',\r\n') + end + + lines '[\'%s\']={\r\n%s' ('索引', f(tab)) + --lines '}' + + return table.concat(lines, '\r\n') + end + + lines '{%q, %d, %s' (arg.value, arg.type, f2(lines.tab)) + lines '}}' + else + lines '{%q, %d}' (arg.value, arg.type) + + end + + --[[ + table.insert(lines, ('%s[%d]%s:%s'):format( + ('\t'):rep(tab), + arg.type, + (arg.insert_index == 1 or arg.insert_call == 1) and '*' or '', + arg.value + )) + --]] + end + return arg + end + + while push_arg() do + end + + return table.concat(lines, ',\r\n') + end + + lines '[\'%s\']={\r\n%s' ('参数', f(tab)) + --lines '}' + + return table.concat(lines, '\r\n') + end + + lines '{%s, %s' (f(lines.tab), f2(lines.tab)) + lines '}}' + end + --[[ + table.insert(lines, ('%s%s[%d]%s%s:%s'):format( + ('\t'):rep(tab), + eca.child_id and ('(%d)'):format(eca.child_id) or '', + eca.type, + eca.child_eca_count == 0 and '' or ('<%d>'):format(eca.child_eca_count), + (eca.enable == 0 and '*') or (is_arg and '#') or '', + eca.name + )) + --]] + + --[[ + if eca.child_eca_count ~= 0 then + --message(eca.name, eca.child_eca_count) + tab = tab + 1 + for i = 1, eca.child_eca_count do + local eca = ecas[index] + index = index + 1 + push_eca(eca) + end + tab = tab - 1 + end + --]] + return true + end + --ECA结构 + while push_eca() do + end + + lines '[\'%s\']={\r\n%s' ('事件', table.concat(lines_event, ',\r\n')) + lines '},' + + lines '[\'%s\']={\r\n%s' ('条件', table.concat(lines_condition, ',\r\n')) + lines '},' + + lines '[\'%s\']={\r\n%s' ('动作', table.concat(lines_action, ',\r\n')) + lines '},' + + return table.concat(lines, '\r\n') + end + + lines '[\'%s\']={\r\n%s' ('触发', f()) + lines '}' + + end + return table.concat(lines, ',\r\n') + end + lines '{\r\n%s' (f(trigger)) + lines '},' + + end + + return table.concat(lines, '\r\n') + end + + lines '[\'%s\']={\r\n%s' ('触发器', f()) + lines '},' + + + end + + io.save(file_name_out, table.concat(lines, '\r\n'):convert_wts(true)) + + --io.save(file_name_out, table.concat(lines, '\r\n')) --貌似wtg文件写入文本会出错 +end + +return wtg2txt diff --git a/plugin/w3x2lni/script/parser/grammar.lua b/plugin/w3x2lni/script/parser/grammar.lua new file mode 100644 index 0000000..e80aaad --- /dev/null +++ b/plugin/w3x2lni/script/parser/grammar.lua @@ -0,0 +1,324 @@ +local lpeg = require 'lpeg' + +local tonumber = tonumber +local table_concat = table.concat + +lpeg.locale(lpeg) + +local S = lpeg.S +local P = lpeg.P +local R = lpeg.R +local C = lpeg.C +local V = lpeg.V +local Cg = lpeg.Cg +local Ct = lpeg.Ct +local Cc = lpeg.Cc +local Cs = lpeg.Cs +local Cp = lpeg.Cp +local Cmt = lpeg.Cmt + +local jass +local file +local comments +local line_count +local line_pos + +local function errorpos(pos, str) + local endpos = jass:find('[\r\n]', pos) or (#jass+1) + local sp = (' '):rep(pos-line_pos) + local line = ('%s|\r\n%s\r\n%s|'):format(sp, jass:sub(line_pos, endpos-1), sp) + error(('[%s]第[%d]行: %s:\n===========================\n%s\n==========================='):format(file, line_count, str, line)) +end + +local function err(str) + return Cp() / function(pos) + errorpos(pos, str) + end +end + +local function newline(pos) + line_count = line_count + 1 + line_pos = pos +end + +local function comment(str) + if comments[line_count] then + print('注释行重复:' .. line_count) + print(comments[line_count]) + print(str) + end + comments[line_count] = str +end + +local w = (1-S' \t\r\n()[]')^0 + +local function expect(p, ...) + if select('#', ...) == 1 then + local str = ... + return p + w * err(str) + else + local m, str = ... + return p + m * err(str) + end +end + +local function keyvalue(key, value) + return Cg(Cc(value), key) +end + +local function currentline() + return Cg(P(true) / function() return file end, 'file') + * Cg(P(true) / function() return line_count end, 'line') +end + +local function endline() + return Cg(P(true) / function() return line_count end, 'endline') +end + +local function binary(...) + local e1, op = ... + if not op then + return e1 + end + local args = {...} + local e1 = args[1] + for i = 2, #args, 2 do + op, e2 = args[i], args[i+1] + e1 = { + type = op, + [1] = e1, + [2] = e2, + } + end + return e1 +end + +local function unary(...) + local e1, op = ... + if not op then + return e1 + end + local args = {...} + local e1 = args[#args] + for i = #args - 1, 1, -1 do + op = args[i] + e1 = { + type = op, + [1] = e1, + } + end + return e1 +end + +local nl = (P'\r\n' + S'\r\n') * Cp() / newline +local com = P'//' * C((1-nl)^0) / comment +local sp = (S' \t' + P'\xEF\xBB\xBF' + com)^0 +local sps = (S' \t' + P'\xEF\xBB\xBF' + com)^1 +local cl = com^0 * nl +local spl = sp * cl + +local Keys = {'globals', 'endglobals', 'constant', 'native', 'array', 'and', 'or', 'not', 'type', 'extends', 'function', 'endfunction', 'nothing', 'takes', 'returns', 'call', 'set', 'return', 'if', 'endif', 'elseif', 'else', 'loop', 'endloop', 'exitwhen'} +for _, key in ipairs(Keys) do + Keys[key] = true +end + +local Id = P{ + 'Def', + Def = C(V'Id') * Cp() / function(id, pos) if Keys[id] then errorpos(pos-#id, ('不能使用关键字[%s]作为函数名或变量名'):format(id)) end end, + Id = R('az', 'AZ') * R('az', 'AZ', '09', '__')^0, +} + +local Cut = #(1-R('az', 'AZ', '09', '__')) + (-P(1)) +local function Whole(word) + return P(word) * Cut +end + +local Null = Ct(keyvalue('type', 'null') * P'null') + +local Bool = P{ + 'Def', + Def = Ct(keyvalue('type', 'boolean') * Cg(V'True' + V'False', 'value')), + True = Whole'true' * Cc(true), + False = Whole'false' * Cc(false), +} + +local Str = P{ + 'Def', + Def = Ct(keyvalue('type', 'string') * Cg(V'Str', 'value')), + Str = '"' * Cs((nl + V'Char')^0) * '"', + Char = V'Esc' + '\\' * err'不合法的转义字符' + (1-P'"'), + Esc = P'\\b' + + P'\\t' + + P'\\r' + + P'\\n' + + P'\\f' + + P'\\"' + + P'\\\\', +} + +local Real = P{ + 'Def', + Def = Ct(keyvalue('type', 'real') * Cg(V'Real', 'value')), + Real = V'Neg' * V'Char' / function(neg, n) return neg and -n or n end, + Neg = Cc(true) * P'-' * sp + Cc(false), + Char = (P'.' * expect(R'09'^1, '不合法的实数') + R'09'^1 * P'.' * R'09'^0) / tonumber, +} + +local Int = P{ + 'Def', + Def = Ct(keyvalue('type', 'integer') * Cg(V'Int', 'value')), + Int = V'Neg' * (V'Int16' + V'Int10' + V'Int256') / function(neg, n) return neg and -n or n end, + Neg = Cc(true) * P'-' * sp + Cc(false), + Int10 = (P'0' + R'19' * R'09'^0) / tonumber, + Int16 = (P'$' + P'0' * S'xX') * expect(R('af', 'AF', '09')^1 / function(n) return tonumber('0x'..n) end, '不合法的16进制整数'), + Int256 = "'" * expect((V'C4' + V'C1') * "'", '256进制整数必须是由1个或者4个字符组成'), + C4 = V'C4W' * V'C4W' * V'C4W' * V'C4W' / function(n) return ('>I4'):unpack(n) end, + C4W = expect(1-P"'"-P'\\', '\\' * P(1), '4个字符组成的256进制整数不能使用转义字符'), + C1 = ('\\' * expect(V'Esc', P(1), '不合法的转义字符') + C(1-P"'")) / function(n) return ('I1'):unpack(n) end, + Esc = P'b' / function() return '\b' end + + P't' / function() return '\t' end + + P'r' / function() return '\r' end + + P'n' / function() return '\n' end + + P'f' / function() return '\f' end + + P'"' / function() return '\"' end + + P'\\' / function() return '\\' end, +} + +local Value = sp * (Null + Bool + Str + Real + Int) * sp + +local Exp = P{ + 'Def', + + -- 由低优先级向高优先级递归 + Def = V'And', + + And = V'Or' * (C(Whole'and') * sp * V'Or')^0 / binary, + Or = V'Compare' * (C(Whole'or') * sp * V'Compare')^0 / binary, + Compare = V'Not' * (C(S'><=!' * P'=' + S'><') * sp * V'Not')^0 / binary, + Not = sp * (C(Whole'not') * sp)^0 * V'AddSub' / unary, + AddSub = V'MulDiv' * (C(S'+-') * sp * V'MulDiv')^0 / binary, + MulDiv = V'Exp' * (C(S'*/') * sp * V'Exp')^0 / binary, + + Exp = V'Paren' + V'Code' + V'Call' + Value + V'Neg' + V'Vari' + V'Var', + Paren = sp * '(' * V'Def' * ')' * sp, + + Code = Ct(keyvalue('type', 'code') * sp * Whole'function' * sps * Cg(Id, 'name') * sp), + Call = Ct(keyvalue('type', 'call') * sp * Cg(Id, 'name') * sp * '(' * V'Args' * ')' * sp), + Vari = Ct(keyvalue('type', 'vari') * sp * Cg(Id, 'name') * sp * '[' * Cg(V'Def', 1) * ']' * sp), + Var = Ct(keyvalue('type', 'var') * sp * Cg(Id, 'name') * sp), + Neg = Ct(keyvalue('type', 'neg') * sp * '-' * sp * Cg(V'Exp', 1)), + + Args = V'Def' * (',' * V'Def')^0 + sp, +} + +local Type = P{ + 'Def', + Def = Ct(sp * Whole'type' * keyvalue('type', 'type') * currentline() * expect(sps * Cg(Id, 'name'), '变量类型定义错误') * expect(V'Ext', '类型继承错误')), + Ext = sps * Whole'extends' * sps * Cg(Id, 'extends'), +} + +local Global = P{ + 'Global', + Global = Ct(sp * Whole'globals' * keyvalue('type', 'globals') * currentline() * V'Vals' * V'End'), + Vals = (spl + V'Def' * spl)^0, + Def = Ct(currentline() * sp + * (Whole'constant' * sps * keyvalue('constant', true) + P(true)) + * Cg(Id, 'type') * sps + * (Whole'array' * sps * keyvalue('array', true) + P(true)) + * Cg(Id, 'name') + * (sp * '=' * Cg(Exp) + P(true)) + ), + End = expect(sp * Whole'endglobals', '缺少endglobals'), +} + +local Local = P{ + 'Def', + Def = Ct(currentline() * sp + * Whole'local' * sps + * Cg(Id, 'type') * sps + * (Whole'array' * sps * keyvalue('array', true) + P(true)) + * Cg(Id, 'name') + * (sp * '=' * Cg(Exp) + P(true)) + ), +} + +local Line = P{ + 'Def', + Def = sp * (V'Call' + V'Set' + V'Seti' + V'Return' + V'Exit'), + Call = Ct(keyvalue('type', 'call') * currentline() * Whole'call' * sps * Cg(Id, 'name') * sp * '(' * V'Args' * ')' * sp), + Args = Exp * (',' * Exp)^0 + sp, + Set = Ct(keyvalue('type', 'set') * currentline() * Whole'set' * sps * Cg(Id, 'name') * sp * '=' * Exp), + Seti = Ct(keyvalue('type', 'seti') * currentline() * Whole'set' * sps * Cg(Id, 'name') * sp * '[' * Cg(Exp, 1) * ']' * sp * '=' * Cg(Exp, 2)), + + Return = Ct(keyvalue('type', 'return') * currentline() * Whole'return' * (Cg(Exp, 1) + P(true))), + Exit = Ct(keyvalue('type', 'exit') * currentline() * Whole'exitwhen' * Cg(Exp, 1)), +} + +local Logic = P{ + 'Def', + Def = V'If' + V'Loop', + + If = Ct(keyvalue('type', 'if') * currentline() * sp + * V'Ifif' + * V'Ifelseif'^0 + * V'Ifelse'^-1 + * sp * 'endif' * endline() + ), + Ifif = Ct(keyvalue('type', 'if') * currentline() * sp * Whole'if' * Cg(Exp, 'condition') * Whole'then' * spl * V'Ifdo'), + Ifelseif = Ct(keyvalue('type', 'elseif') * currentline() * sp * Whole'elseif' * Cg(Exp, 'condition') * Whole'then' * spl * V'Ifdo'), + Ifelse = Ct(keyvalue('type', 'else') * currentline() * sp * Whole'else' * spl * V'Ifdo'), + Ifdo = (spl + V'Def' + Line * spl)^0, + + Loop = Ct(keyvalue('type', 'loop') * currentline() * sp + * Whole'loop' * spl + * (spl + V'Def' + Line * spl)^0 + * sp * Whole'endloop' * endline() + ), +} + +local Function = P{ + 'Def', + Def = Ct(keyvalue('type', 'function') * currentline() * (V'Common' + V'Native')), + Native = sp * (Whole'constant' * keyvalue('constant', true) + P(true)) * sp * Whole'native' * keyvalue('native', true) * V'Head', + Common = sp * (Whole'constant' * keyvalue('constant', true) + P(true)) * sp * Whole'function' * V'Head' * V'Content' * V'End', + Head = sps * Cg(Id, 'name') * sps * Whole'takes' * sps * V'Takes' * sps * Whole'returns' * sps * V'Returns' * spl, + Takes = (Whole'nothing' + Cg(V'Args', 'args')), + Args = Ct(sp * V'Arg' * (sp * ',' * sp * V'Arg')^0), + Arg = Ct(Cg(Id, 'type') * sps * Cg(Id, 'name')), + Returns = Whole'nothing' + Cg(Id, 'returns'), + Content = sp * Cg(V'Locals', 'locals') * V'Lines', + Locals = Ct((spl + Local * spl)^0), + Lines = (spl + Logic * spl + Line * spl)^0, + End = expect(sp * Whole'endfunction', '缺少endfunction') * endline(), +} + +local pjass = expect(sps + cl + Type + Function + Global, P(1), '语法不正确')^0 + +local mt = {} +setmetatable(mt, mt) + +mt.Value = Value +mt.Id = Id +mt.Exp = Exp +mt.Global = Global +mt.Local = Local +mt.Line = Line +mt.Logic = Logic +mt.Function = Function + +function mt:__call(_jass, _file, mode) + jass = _jass + file = _file + comments = {} + line_count = 1 + line_pos = 1 + lpeg.setmaxstack(1000) + + if mode then + return Ct(expect(mt[mode] + spl, P(1), '语法不正确')^0):match(_jass) + else + return Ct(pjass):match(_jass), comments + end +end + +return mt diff --git a/plugin/w3x2lni/script/parser/init.lua b/plugin/w3x2lni/script/parser/init.lua new file mode 100644 index 0000000..3349a1e --- /dev/null +++ b/plugin/w3x2lni/script/parser/init.lua @@ -0,0 +1,449 @@ +local grammar = require 'parser.grammar' + +local ast + +local parse_exp +local parse_lines + +local function parser_error(str) + error(('[%s]第[%d]行: %s'):format(ast.file, ast.current_line, str)) +end + +local function base_type(type) + while ast.types[type].extends do + type = ast.types[type].extends + end + return type +end + +local function get_var(name) + if ast.current_function then + if ast.current_function.locals[name] then + return ast.current_function.locals[name] + end + if ast.current_function.args and ast.current_function.args[name] then + return ast.current_function.args[name] + end + end + return ast.globals[name] +end + +local function get_function(name) + return ast.functions[name] +end + +local function get_var_type(exp) + local var = get_var(exp.name) + return var.type +end + +local function get_vari_type(exp) + local var = get_var(exp.name) + parse_exp(exp[1], 'integer') + return var.type +end + +local function get_call(exp) + local func = ast.functions[exp.name] + if not func then + parser_error(('函数[%s]不存在'):format(exp.name)) + end + for _, arg in ipairs(exp) do + parse_exp(arg) + end + return func.returns or 'null' +end + +local function get_op(exp) + local t1 = parse_exp(exp[1]) + local t2 = parse_exp(exp[2]) + if (t1 == 'integer' or t1 == 'real') and (t2 == 'integer' or t2 == 'real') then + if t1 == 'real' or t2 == 'real' then + return 'real' + else + return 'integer' + end + end + return nil, t1, t2 +end + +local function get_add(exp) + local type, t1, t2 = get_op(exp) + if type then + return type + end + if (t1 == 'string' or t1 == 'null') and (t2 == 'string' or t2 == 'null') then + return 'string' + end + parser_error(('不能对[%s]与[%s]做加法运算'):format(t1, t2)) +end + +local function get_sub(exp) + local type, t1, t2 = get_op(exp) + if type then + return type + end + parser_error(('不能对[%s]与[%s]做减法运算'):format(t1, t2)) +end + +local function get_mul(exp) + local type, t1, t2 = get_op(exp) + if type then + return type + end + parser_error(('不能对[%s]与[%s]做乘法运算'):format(t1, t2)) +end + +local function get_div(exp) + local type, t1, t2 = get_op(exp) + if type then + return type + end + parser_error(('不能对[%s]与[%s]做除法运算'):format(t1, t2)) +end + +local function get_neg(exp) + local t = parse_exp(exp[1]) + if t == 'real' or t == 'integer' then + return t + end + parser_error(('不能对[%s]做负数运算'):format(t)) +end + +local function get_equal(exp) + local t1 = parse_exp(exp[1]) + local t2 = parse_exp(exp[2]) + if t1 == 'null' or t2 == 'null' then + return 'boolean' + end + if (t1 == 'integer' or t1 == 'real') and (t2 == 'integer' or t2 == 'real') then + return 'boolean' + end + local b1 = base_type(t1) + local b2 = base_type(t2) + if b1 == b2 then + return 'boolean' + end + parser_error(('不能比较[%s]与[%s]是否相等'):format(t1, t2)) +end + +local function get_compare(exp) + local t1 = parse_exp(exp[1]) + local t2 = parse_exp(exp[2]) + if (t1 == 'integer' or t1 == 'real') and (t2 == 'integer' or t2 == 'real') then + return 'boolean' + end + parser_error(('不能比较[%s]与[%s]的大小'):format(t1, t2)) +end + +local function get_and(exp) + parse_exp(exp[1], 'boolean') + parse_exp(exp[2], 'boolean') + return 'boolean' +end + +local function get_or(exp) + parse_exp(exp[1], 'boolean') + parse_exp(exp[2], 'boolean') + return 'boolean' +end + +local function get_not(exp) + parse_exp(exp[1], 'boolean') + return 'boolean' +end + +local function get_code(exp) + return 'code' +end + +function parse_exp(exp, expect) + if exp.type == 'null' then + exp.vtype = 'null' + elseif exp.type == 'integer' then + exp.vtype = 'integer' + elseif exp.type == 'real' then + exp.vtype = 'real' + elseif exp.type == 'string' then + exp.vtype = 'string' + elseif exp.type == 'boolean' then + exp.vtype = 'boolean' + elseif exp.type == 'var' then + exp.vtype = get_var_type(exp) + elseif exp.type == 'vari' then + exp.vtype = get_vari_type(exp) + elseif exp.type == 'call' then + exp.vtype = get_call(exp) + elseif exp.type == '+' then + exp.vtype = get_add(exp) + elseif exp.type == '-' then + exp.vtype = get_sub(exp) + elseif exp.type == '*' then + exp.vtype = get_mul(exp) + elseif exp.type == '/' then + exp.vtype = get_div(exp) + elseif exp.type == 'neg' then + exp.vtype = get_neg(exp) + elseif exp.type == 'paren' then + exp.vtype = parse_exp(exp[1]) + elseif exp.type == '==' then + exp.vtype = get_equal(exp) + elseif exp.type == '!=' then + exp.vtype = get_equal(exp) + elseif exp.type == '>' then + exp.vtype = get_compare(exp) + elseif exp.type == '<' then + exp.vtype = get_compare(exp) + elseif exp.type == '>=' then + exp.vtype = get_compare(exp) + elseif exp.type == '<=' then + exp.vtype = get_compare(exp) + elseif exp.type == 'and' then + exp.vtype = get_and(exp) + elseif exp.type == 'or' then + exp.vtype = get_or(exp) + elseif exp.type == 'not' then + exp.vtype = get_not(exp) + elseif exp.type == 'code' then + exp.vtype = get_code(exp) + else + print('解析未定义的表达式类型:', exp.type) + end + if not exp.vtype then + print('没有解析到类型:', exp.type) + end + return exp.vtype +end + +local function parse_type(data) + ast.current_line = data.line + if not ast.types[data.extends] then + parser_error(('类型[%s]未定义'):format(data.extends)) + end + if ast.types[data.name] and not ast.types[data.name].extends then + parser_error('不能重新定义本地类型') + end + if ast.types[data.name] then + parser_error(('类型[%s]重复定义 --> 已经定义在[%s]第[%d]行'):format(data.name, ast.types[data.name].file, ast.types[data.name].line)) + end + ast.types[data.name] = data +end + +local function parse_global(data) + ast.current_line = data.line + if ast.globals[data.name] then + parser_error(('全局变量[%s]重复定义 --> 已经定义在[%s]第[%d]行'):format(data.name, ast.globals[data.name].file, ast.globals[data.name].line)) + end + if data.constant and not data[1] then + parser_error('常量必须初始化') + end + if not ast.types[data.type] then + parser_error(('类型[%s]未定义'):format(data.type)) + end + if data.array and data[1] then + parser_error('数组不能直接初始化') + end + if data[1] then + parse_exp(data[1], data.type) + end + table.insert(ast.globals, data) + ast.globals[data.name] = data +end + +local function parse_globals(chunk) + for _, func in ipairs(ast.functions) do + if not func.native then + ast.current_line = chunk.line + parser_error '全局变量必须在函数前定义' + end + end + for _, data in ipairs(chunk) do + parse_global(data) + end +end + +local function parse_arg(data, args) + args[data.name] = data +end + +local function parse_args(chunk) + if not chunk.args then + return + end + for _, arg in ipairs(chunk.args) do + parse_arg(arg, chunk.args) + end +end + +local function parse_local(data, locals, args) + ast.current_line = data.line + if not ast.types[data.type] then + parser_error(('类型[%s]未定义'):format(data.type)) + end + if data.array and data[1] then + parser_error('数组不能直接初始化') + end + if args and args[data.name] then + parser_error(('局部变量[%s]和函数参数重名'):format(data.name)) + end + if data[1] then + parse_exp(data[1], data.type) + end + locals[data.name] = data +end + +local function parse_locals(chunk) + for _, data in ipairs(chunk.locals) do + parse_local(data, chunk.locals, chunk.args) + end +end + +local function parse_loop(chunk) + ast.loop_count = ast.loop_count + 1 + parse_lines(chunk) + ast.loop_count = ast.loop_count - 1 +end + +local function parse_if(data) + for _, chunk in ipairs(data) do + if chunk.type == 'if' or chunk.type == 'elseif' then + parse_exp(chunk.condition, 'boolean') + end + parse_lines(chunk) + end +end + +local function parse_call(line) + local func = get_function(line.name) + if not func.args then + return + end + for i, arg in ipairs(func.args) do + parse_exp(line[i], arg.type) + end +end + +local function parse_set(line) + local var = get_var(line.name) + parse_exp(line[1], var.vtype) +end + +local function parse_seti(line) + local var = get_var(line.name) + parse_exp(line[1], 'integer') + parse_exp(line[2], var.vtype) +end + +local function parse_return(line) + local func = ast.current_function + if not func.returns then + return + end + parse_exp(line[1], func.returns) +end + +local function parse_exit(line) + if ast.loop_count == 0 then + parser_error '不能在循环外使用exitwhen' + end + parse_exp(line[1], 'boolean') +end + +local function parse_line(line) + ast.current_line = line.line + if line.type == 'loop' then + parse_loop(line) + elseif line.type == 'if' then + parse_if(line) + elseif line.type == 'call' then + parse_call(line) + elseif line.type == 'set' then + parse_set(line) + elseif line.type == 'seti' then + parse_seti(line) + elseif line.type == 'return' then + parse_return(line) + elseif line.type == 'exit' then + parse_exit(line) + else + parser_error('未知的语句类型:'..line.type) + end +end + +function parse_lines(chunk) + for i, line in ipairs(chunk) do + parse_line(line) + end +end + +local function parse_function(chunk) + table.insert(ast.functions, chunk) + ast.functions[chunk.name] = chunk + + if chunk.native then + return + end + + ast.current_function = chunk + ast.loop_count = 0 + + parse_args(chunk) + parse_locals(chunk) + parse_lines(chunk) + + ast.current_function = nil +end + +local function parser_gram(gram) + for i, chunk in ipairs(gram) do + if chunk.type == 'globals' then + parse_globals(chunk) + elseif chunk.type == 'function' then + parse_function(chunk) + elseif chunk.type == 'type' then + parse_type(chunk) + else + parser_error('未知的区块类型:'..chunk.type) + end + end +end + +return function (jass, file, _ast) + if _ast then + ast = _ast + + for i = 1, #ast.functions do + ast.functions[i] = nil + end + for i = 1, #ast.globals do + ast.globals[i] = nil + end + else + ast = {} + ast.types = { + null = {type = 'type'}, + handle = {type = 'type'}, + code = {type = 'type'}, + integer = {type = 'type'}, + real = {type = 'type'}, + boolean = {type = 'type'}, + string = {type = 'type'}, + } + ast.globals = {} + ast.functions = {} + end + + ast.file = file + + local gram, comments = grammar(jass, file) + + parser_gram(gram) + + ast.current_line = nil + ast.loop_count = nil + ast.file = nil + + ast.comments = comments + + return ast, gram +end diff --git a/plugin/w3x2lni/script/prebuilt/default/ability.ini b/plugin/w3x2lni/script/prebuilt/default/ability.ini new file mode 100644 index 0000000..c76185c --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/ability.ini @@ -0,0 +1,37901 @@ +[AAns] +_code="AAns" +_id="AAns" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50,0,0,0} +datab={0,0,0,0} +datae={"neutralspell","","",""} +dataf={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="收费" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"收费( |cffffcc00G|r)"} +ubertip={"向某个玩家收取固定数额的金子和木材。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACac] +_code="AOac" +_id="ACac" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNGnollCommandAura.blp" +buffid={"BOac","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="命令光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\WarDrums\\DrumsCasterHeal.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"命令光环"} +ubertip={"增加附近单位的攻击力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACad] +_code="ACad" +_id="ACad" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAnimateDead.blp" +buffid={"BUan","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={240.0,0.0,0.0,0.0} +cost={250,0,0,0} +dataa={6,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={120.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={120.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="操纵死尸" +order="animatedead" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead","","",""} +tip={"操纵死尸(|cffffcc00D|r)"} +ubertip={"复活个阵亡单位。持续时间为秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACah] +_code="AEah" +_id="ACah" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThorns.blp" +buffid={"BEah","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="荆棘光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\ThornsAura\\ThornsAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"荆棘光环"} +ubertip={"给周围单位提供荆棘光环的保护,如果近战型的敌人来攻击它们就会受到每次相当于自身%攻击力的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACam] +_code="Aams" +_id="ACam" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +buffid={"Bams,Bam2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={90.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={90.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="反魔法外壳" +order="antimagicshell" +priority=0 +race="creeps" +reqlevel=0 +requires="Ruba" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,vuln,invu","","",""} +tip={"反魔法外壳(|cffffcc00N|r)"} +ubertip={"使目标单位对所有魔法免疫。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACat] +_code="AEar" +_id="ACat" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNTrueShot.blp" +buffid={"BEar","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="强击光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TrueshotAura\\TrueshotAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"强击光环"} +ubertip={"提高周围友军单位%的远程攻击力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACav] +_code="AHad" +_id="ACav" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDevotion.blp" +buffid={"BHad","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3.0,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="专注光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DevotionAura\\DevotionAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"专注光环"} +ubertip={"提高周围单位点的护甲。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACba] +_code="AHab" +_id="ACba" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBrilliance.blp" +buffid={"BHab","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="辉煌光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Brilliance\\Brilliance.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"辉煌光环"} +ubertip={"增加周围单位每秒点的魔法恢复速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACbb] +_code="Ablo" +_id="ACbb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBloodLustOn.blp" +buffid={"Bblo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.4,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0.3,0.0,0.0,0.0} +dur={40.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={40.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="嗜血术" +order="bloodlust" +orderoff="bloodlustoff" +orderon="bloodluston" +priority=11 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,organic,self,neutral","","",""} +tip={"嗜血术(|cffffcc00B|r)"} +ubertip={"在秒内增加目标单位%的攻击速度和%的移动速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBloodLustOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACbc] +_code="ANbf" +_id="ACbc" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFireForTheCannon.blp" +buffid={"BNbf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={99999.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={150.0,0.0,0.0,0.0} +datae={21.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="火焰呼吸" +order="breathoffire" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNFireForTheCannon.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireDamage.mdl" +targetattachcount=0 +targs={"ground,air","","",""} +tip={"火焰呼吸(|cffffcc00F|r) "} +ubertip={"对敌人呼出带有攻击力的火焰,造成点伤害力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACbf] +_code="ACbf" +_id="ACbf" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBreathOfFrost.blp" +buffid={"BCbf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={99999.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={150.0,0.0,0.0,0.0} +datae={7.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BreathOfFrost\\BreathOfFrostMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="霜冻闪电" +order="breathoffire" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air","","",""} +tip={"霜冻闪电(|cffffcc00F|r)"} +ubertip={"吐出带有攻击力的冰霜,最初造成点的伤害,随后在秒内对目标单位造成每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACbh] +_code="AHbh" +_id="ACbh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBash.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={25.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重击" +order="bash" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"重击"} +ubertip={"给予%的概率能造成点的额外伤害,并在秒内击晕敌人。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACbk] +_code="ANba" +_id="ACbk" +_max_level=1 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrowOnOff.blp" +buffid={"BNba,BNdm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,0.0,0.0,0.0} +cost={6,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={1,0,0,0} +datac={80.0,0.0,0.0,0.0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BlackArrow\\BlackArrowMissile.mdl" +missilehoming=1 +missilespeed=1050 +name="黑暗之箭" +order="blackarrow" +orderoff="blackarrowoff" +orderon="blackarrowon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"黑暗之箭(|cffffcc00B|r) "} +ubertip={"增加点伤害力。被黑暗之箭杀死的单位会变成骷髅。"} +unart="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrowOnOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unitid={"ndr1","","",""} +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACbl] +_code="Ablo" +_id="ACbl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBloodLustOn.blp" +buffid={"Bblo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.4,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0.3,0.0,0.0,0.0} +dur={40.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={40.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="嗜血术" +order="bloodlust" +orderoff="bloodlustoff" +orderon="bloodluston" +priority=11 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,organic,self,neutral","","",""} +tip={"嗜血术(|cffffcc00L|r)"} +ubertip={"在秒内增加目标单位%的攻击速度和%的移动速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBloodLustOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="L" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACbn] +_code="AHbn" +_id="ACbn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBanish.blp" +buffid={"BHbn","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +dur={24.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱散" +order="banish" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,nonsapper,organic","","",""} +tip={"驱逐(|cffffcc00B|r)"} +ubertip={"将一个非机械单位变为气态并减缓其移动速度%,秒。气态生物无法攻击,但他们可以施放魔法,而某些魔法也可以对他们产生极大的作用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACbz] +_code="AHbz" +_id="ACbz" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBlizzard.blp" +buffid={"BHbd,BHbz","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={12.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={6,0,0,0} +datab={15.0,0.0,0.0,0.0} +datac={6,0,0,0} +datad={0.5,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"XHbz","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="暴风雪" +order="blizzard" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"暴风雪(|cffffcc00B|r)"} +ubertip={"召唤出阵冰片波从天而降,每阵冰片波能造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACc2] +_code="AUcs" +_id="ACc2" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +buffid={"BUcs","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={900.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveMissile.mdl" +missilehoming=0 +missilespeed=1100 +name="冲击波" +order="carrionswarm" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveDamage.mdl" +targetattachcount=0 +targs={"ground,air,structure,enemy,neutral","","",""} +tip={"冲击波(|cffffcc00C|r)"} +ubertip={"发射出一道巨大的能量波,对一直线上的每个敌方地面单位造成点的伤害。总共会造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACc3] +_code="AUcs" +_id="ACc3" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +buffid={"BUcs","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveMissile.mdl" +missilehoming=0 +missilespeed=1100 +name="冲击波" +order="carrionswarm" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveDamage.mdl" +targetattachcount=0 +targs={"ground,air,structure,enemy,neutral","","",""} +tip={"冲击波(|cffffcc00C|r)"} +ubertip={"发射出一道巨大的能量波,对一直线上的每个敌方地面单位造成点的伤害。总共会造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACca] +_code="AUcs" +_id="ACca" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCarrionSwarm.blp" +buffid={"BUcs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={75.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmMissile.mdl" +missilehoming=0 +missilespeed=1100 +name="腐臭蜂群" +order="carrionswarm" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmDamage.mdl" +targetattachcount=0 +targs={"ground,air","","",""} +tip={"腐臭蜂群(|cffffcc00C|r)"} +ubertip={"释放出一群怪异的生物对一条线上的敌人造成点的伤害。最大伤害值能达到点。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcb] +_code="AHtb" +_id="ACcb" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostBolt.blp" +buffid={"BHtb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={100.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\FrostBolt\\FrostBoltMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="霜冻闪电" +order="thunderbolt" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","","",""} +tip={"冰霜之箭(|cffffcc00F|r)"} +ubertip={"向敌人投掷出一冰块碎片,对其造成点的伤害并使其在秒内处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACce] +_code="ANca" +_id="ACce" +_max_level=1 +_type="ability" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCleavingAttack.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="分裂攻击" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Other\\Cleave\\CleaveDamageTarget.mdl" +specialattach="chest" +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={"分裂攻击"} +ubertip={"该生物的攻击力量对主目标附近的敌人都造成%的伤害力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACch] +_code="ANch" +_id="ACch" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCharm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={6,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="符咒" +order="charm" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Charm\\CharmTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"air,ground,nonhero,enemy,neutral","","",""} +tip={"符咒(|cffffcc00R|r)"} +ubertip={"控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcl] +_code="AOcl" +_id="ACcl" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNChainLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={9.0,0.0,0.0,0.0} +cost={120,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={4,0,0,0} +datac={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +lightningeffect="CLPB,CLSB" +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\LightningBolt\\LightningBoltMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="闪电链" +order="chainlightning" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","","",""} +tip={"闪电链(|cffffcc00C|r)"} +ubertip={"投掷出一道闪电对第一个敌人造成点的伤害,闪电一共跳跃次。每次闪电的攻击力会随着跳跃次数增加而递减。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcn] +_code="Acan" +_id="ACcn" +_max_level=1 +_type="ability" +animnames="spell,channel" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCannibalize.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={800.0,0.0,0.0,0.0} +dur={33.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={33.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞食尸体" +order="cannibalize" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,dead,organic","","",""} +tip={"吞食尸体(|cffffcc00C|r)"} +ubertip={"吞食一个附近的尸体,每秒治疗生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcr] +_code="Acri" +_id="ACcr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCripple.blp" +buffid={"Bcri","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={175,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="残废" +order="cripple" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"残废(|cffffcc00C|r)"} +ubertip={"减慢目标单位%的攻击力并减慢其%的移动速度和%的攻击速度。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcs] +_code="Acrs" +_id="ACcs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCurseOn.blp" +buffid={"Bcrs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={0.33,0.0,0.0,0.0} +dur={30.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="诅咒" +order="curse" +orderoff="curseoff" +orderon="curseon" +priority=1 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"诅咒(|cffffcc00C|r)"} +ubertip={"诅咒敌人的某个单位使其有%的概率不能击中自己的目标。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCurseOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以激活自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[ACct] +_code="AOcr" +_id="ACct" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCriticalStrike.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="致命一击" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"致命一击"} +ubertip={"给予%的概率使得该单位能施放出常规攻击倍的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcv] +_code="AUcs" +_id="ACcv" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +buffid={"BUcs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={900.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveMissile.mdl" +missilehoming=0 +missilespeed=1100 +name="冲击波" +order="carrionswarm" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCrushingWave.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Other\\CrushingWave\\CrushingWaveDamage.mdl" +targetattachcount=0 +targs={"ground,air,structure,enemy,neutral","","",""} +tip={"冲击波(|cffffcc00C|r) "} +ubertip={"发射出一道巨大的能量波,对一线上的敌人造成点的伤害,总共能造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACcw] +_code="AHca" +_id="ACcw" +_max_level=1 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOn.blp" +buffid={"BHca,Bcsd,Bcsi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0,0,0,0} +dur={3.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.75,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Weapons\\ColdArrow\\ColdArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="冰冻冷箭" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"冰冻冷箭(|cffffcc00C|r)"} +ubertip={"增加额外的攻击力,并能使目标减速,但是冰冻冷箭也会消耗一定的魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACcy] +_code="Acyc" +_id="ACcy" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +buffid={"Bcyc,Bcy2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={150,0,0,0} +dataa={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飓风" +order="cyclone" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"飓风(|cffffcc00C|r)"} +ubertip={"将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACd2] +_code="Aadm" +_id="ACd2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立的单位但是是敌对的,第二位置)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="autodispel" +orderoff="autodispeloff" +orderon="autodispelon" +priority=0 +race="creeps" +reqlevel=0 +requires="Resi" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00B|r)"} +ubertip={"驱散敌人身上的正面效果魔法和友军单位身上的负面效果魔法。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +unart="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACdc] +_code="AUdc" +_id="ACdc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathCoil.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={400.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilMissile.mdl" +missilehoming=1 +missilespeed=1100 +name="死亡缠绕" +order="deathcoil" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl" +targetattachcount=0 +targs={"air,ground,organic,notself,invu,vuln","","",""} +tip={"死亡缠绕(|cffffcc00C|r)"} +ubertip={"能治愈某个友军单位点生命值,并对某个敌方单位造成一半数值的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACde] +_code="Advm" +_id="ACde" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDevourMagic.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={75.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={180.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\DevourMagic\\DevourMagicBirthMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="吞噬魔法" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"吞噬魔法(|cffffcc00D|r)"} +ubertip={"吸收一定范围内所有单位身上的魔法效果。每个单位给予破坏者点的生命值和点魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACdm] +_code="Aadm" +_id="ACdm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="autodispel" +orderoff="autodispeloff" +orderon="autodispelon" +priority=0 +race="creeps" +reqlevel=0 +requires="Resi" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00B|r)"} +ubertip={"驱散敌人身上的正面效果魔法和友军单位身上的负面效果魔法。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +unart="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACdr] +_code="AHdr" +_id="ACdr" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={950.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLifeDrain.blp" +buffid={"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={55.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={0.0,0.0,0.0,0.0} +datai={0.0,0.0,0.0,0.0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectsoundlooped="DrainLoop" +hero=0 +herodur={8.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +lightningeffect="DRAB,DRAL,DRAM" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命汲取" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"生命汲取(|cffffcc00R|r) "} +ubertip={"汲取目标单位一定点数的生命值并将其给予黑暗游侠生命值/秒。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACds] +_code="AHds" +_id="ACds" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDivineIntervention.blp" +buffid={"BHds","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={0,0,0,0} +dur={10.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神圣护甲" +order="divineshield" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"激活神圣护甲(|cffffcc00D|r)"} +ubertip={"能在秒内使得该单位对所有的攻击和魔法免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNDivineShieldOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="D" +unorder="undivineshield" +untip={"取消神圣护甲(|cffffcc00D|r)"} +unubertip={} + +[ACdv] +_code="ACdv" +_id="ACdv" +_max_level=1 +_type="ability" +animnames="attack,spell" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRedDragonDevour.blp" +buffid={"Bdig,Bdvv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞噬" +order="creepdevour" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,nonhero,enemy,organic,neutral","","",""} +tip={"吞噬(|cffffcc00D|r)"} +ubertip={"吞噬某个敌方单位,对其造成每秒点的伤害。如果吞噬者在咀嚼目标单位的过程中被杀,那么被吞噬的单位会从其口中跳出来。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACen] +_code="Aens" +_id="ACen" +_max_level=1 +_type="ability" +animnames="spell,entangle" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +buffid={"Bena,Beng","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Ensnare\\EnsnareMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="诱捕" +order="ensnare" +priority=0 +race="creeps" +reqlevel=0 +requires="Roen" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,enemy,nonhero,neutral","","",""} +tip={"诱捕(|cffffcc00E|r)","诱捕(|cffffcc00E|r)"} +ubertip={"将敌方的某个空中单位捕获到地面能动弹。被诱捕的空中单位能像地面单位一样遭到攻击。|n持续秒。","将敌方的某个空中单位捕获到地面能动弹。被诱捕的空中单位能像地面单位一样遭到攻击。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACes] +_code="AEev" +_id="ACes" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNEvasion.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意 100%)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪避" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"闪避"} +ubertip={"给予%的概率来躲避掉敌人的攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACev] +_code="AEev" +_id="ACev" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNEvasion.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪避" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"闪避"} +ubertip={"给予%的概率来躲避掉敌人的攻击"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACf2] +_code="AUfu" +_id="ACf2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOn.blp" +buffid={"BUfa,Bfro","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={45.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +editorsuffix=" (自动施放) (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻护甲" +order="frostarmor" +orderoff="frostarmoroff" +orderon="frostarmoron" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,neutral","","",""} +tip={"霜冻护甲(|cffffcc00F|r)"} +ubertip={"霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACf3] +_code="ANfd" +_id="ACf3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +lightningeffect="AFOD" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="痛苦之指" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=1 +researchhotkey="F" +researchtip="学习痛苦之指(|cffffcc00F|r)" +researchubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient"} +tip={"痛苦之指(|cffffcc00F|r)"} +ubertip={"能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfa] +_code="AUfa" +_id="ACfa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostArmor.blp" +buffid={"BUfa,Bfro","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={45.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻护甲" +order="frostarmor" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,neutral","","",""} +tip={"霜冻护甲(|cffffcc00F|r)"} +ubertip={"霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfb] +_code="ANfb" +_id="ACfb" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFireBolt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={100.0,0.0,0.0,0.0} +dur={2.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="霹雳闪电" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic,enemy,neutral","","",""} +tip={"霹雳闪电(|cffffcc00B|r)"} +ubertip={"对敌人投掷出一道霹雳闪电将其击晕。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfd] +_code="ANfd" +_id="ACfd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +lightningeffect="AFOD" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="痛苦之指" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习痛苦之指(|cffffcc00F|r)" +researchubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient"} +tip={"痛苦之指(|cffffcc00F|r)"} +ubertip={"能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACff] +_code="Afae" +_id="ACff" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOn.blp" +buffid={"Bfae","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={45,0,0,0} +dataa={4,0,0,0} +datab={0,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="精灵之火" +order="faeriefire" +orderoff="faeriefireoff" +orderon="faeriefireon" +priority=2 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"精灵之火(|cffffcc00R|r)"} +ubertip={"降低敌目标单位的防御力点并得到该单位的视野。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACfl] +_code="ANfl" +_id="ACfl" +_max_level=1 +_type="ability" +area={125.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={11.0,0.0,0.0,0.0} +cost={110,0,0,0} +dataa={175.0,0.0,0.0,0.0} +datab={3,0,0,0} +datac={900.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.7,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +lightningeffect="FORK" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="叉状闪电" +order="forkedlightning" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +specialart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","","",""} +tip={"叉状闪电(|cffffcc00R|r)"} +ubertip={"召唤一道锥形闪电伤害女海巫面前的多个敌人,至多个敌单位,点伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfn] +_code="AUfn" +_id="ACfn" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGlacier.blp" +buffid={"Bfro","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={50.0,0.0,0.0,0.0} +dur={4.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\FrostNova\\FrostNovaTarget.mdl" +hero=0 +herodur={4.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻新星" +order="frostnova" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,air,neutral,organic","","",""} +tip={"霜冻新星(|cffffcc00N|r)"} +ubertip={"用一阵霜冻来攻击目标单位,造成点的常规伤害和点的霜冻新星伤害。并在秒内减慢被攻击单位的速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfr] +_code="AEfn" +_id="ACfr" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEnt.blp" +buffid={"BEfn","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={175,0,0,0} +dataa={3,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="自然之力" +order="forceofnature" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree","","",""} +tip={"自然之力(|cffffcc00F|r)"} +ubertip={"将一小块区域内的树木转化成个树人。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"efon","","",""} +untip={} +unubertip={} + +[ACfs] +_code="AHfs" +_id="ACfs" +_max_level=1 +_type="ability" +animnames="spell,channel" +area={225.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +buffid={"BHfs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.33,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={15.0,0.0,0.0,0.0} +datab={0.33,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={0.75,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={6.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"XHfs","","",""} +effectart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeTarget.mdl" +hero=0 +herodur={1.67,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="烈焰风暴" +order="flamestrike" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrike1.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike2.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike.mdl" +targetattachcount=0 +targs={"ground,enemy,neutral,friend,structure,self","","",""} +tip={"烈焰风暴(|cffffcc00F|r)"} +ubertip={"召唤出一道巨大的火焰,持续时间为2秒,每秒对敌方的地面单位造成45点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACfu] +_code="AUfu" +_id="ACfu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOn.blp" +buffid={"BUfa,Bfro","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={45.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +editorsuffix=" (自动施放)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻护甲" +order="frostarmor" +orderoff="frostarmoroff" +orderon="frostarmoron" +priority=0 +race="naga" +reqlevel=0 +requires="Rnsw" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,neutral","","",""} +tip={"霜冻护甲(|cffffcc00F|r)","霜冻护甲(|cffffcc00F|r)"} +ubertip={"霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +untip={"|cffc3dbff点击右键以取消自动施放功能。","|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。","|cffc3dbff点击右键以取消自动施放功能。|r"} + +[AChv] +_code="AOhw" +_id="AChv" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWave.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={215.0,0.0,0.0,0.0} +datab={4,0,0,0} +datac={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +lightningeffect="HWPB,HWSB" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗波" +order="healingwave" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\HealingWave\\HealingWaveTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","","",""} +tip={"医疗波(|cffffcc00E|r)"} +ubertip={"召唤出一道能跳跃次的医疗能量波。增加第一个目标 点的生命值,每次跳跃都将削弱这道能量波的医疗能力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AChw] +_code="Ahwd" +_id="AChw" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +buffid={"Bhwd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={200,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="治疗守卫" +order="healingward" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"治疗守卫(|cffffcc00E|r)"} +ubertip={"召唤出一个不能移动的治疗守卫。能以每秒%的速度来恢复周围非机械单位的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ohwd","","",""} +untip={} +unubertip={} + +[AChx] +_code="AOhx" +_id="AChx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +buffid={"BOhx","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={17.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={99,0,0,0} +datab={"npig,nsea,ncrb,nhmc,nrat","","",""} +datac={"nalb,nvul,nsno","","",""} +datad={"nsha,npng","","",""} +datae={"nshw,npnw","","",""} +dur={15.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="X" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="妖术" +order="hex" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"妖术(|cffffcc00X|r)"} +ubertip={"在秒内将敌方的某个单位变成某种小动物。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACif] +_code="Ainf" +_id="ACif" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNInnerFireOn.blp" +buffid={"Binf","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={5,0,0,0} +datac={500.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +effectsound="InnerFireCast" +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="心灵之火" +order="innerfire" +orderoff="innerfireoff" +orderon="innerfireon" +priority=10 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,neutral,self","","",""} +tip={"心灵之火(|cffffcc00F|r)"} +ubertip={"增加目标友军单位%的攻击力和的防御力。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNInnerFireOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="F" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACim] +_code="AEim" +_id="ACim" +_max_level=1 +_type="ability" +area={220.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNImmolationOn.blp" +buffid={"BEim,BEia","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={7.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +dur={1.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="献祭" +order="immolation" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"激活献祭(|cffffcc00L|r)"} +ubertip={"激活献祭将会让该单位处于火焰的包围之中,对周围的地面单位能造成每秒点的伤害。|n该技能会持续地消耗魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNImmolationOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="L" +unorder="unimmolation" +untip={"取消献祭(|cffffcc00L|r)"} +unubertip={"取消献祭来停止对魔法的消耗。"} + +[ACls] +_code="Alsh" +_id="ACls" +_max_level=1 +_type="ability" +area={160.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLightningShield.blp" +buffid={"Blsh,Blsa","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={20.0,0.0,0.0,0.0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪电护盾" +order="lightningshield" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,enemy,neutral","","",""} +tip={"闪电护盾(|cffffcc00L|r)"} +ubertip={"在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACm2] +_code="Amim" +_id="ACm2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNGenericSpellImmunity.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(阿克蒙德)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法免疫" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"魔法免疫","魔法免疫"} +ubertip={"让目标单位对所有魔法免疫。","让目标单位对所有魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACm3] +_code="Amim" +_id="ACm3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNGenericSpellImmunity.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(龙)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法免疫" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"魔法免疫","魔法免疫"} +ubertip={"让目标单位对所有魔法免疫。","让目标单位对所有魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACmf] +_code="ANms" +_id="ACmf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShield.blp" +buffid={"BNms","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectsound="ManaShieldCastSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法护盾" +order="manashield" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShield.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={128.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,vuln,invu","","",""} +tip={"魔法护盾(|cffffcc00N|r)"} +ubertip={"激活可以每点魔力可以吸收伤害力的护盾。"} +unart="ReplaceableTextures\\CommandButtons\\BTNneutralManaShieldOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="N" +untip={"取消魔法护盾(|cffffcc00N|r)"} +unubertip={} + +[ACmi] +_code="Amim" +_id="ACmi" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNGenericSpellImmunity.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法免疫" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"魔法免疫"} +ubertip={"让目标单位对所有魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACmo] +_code="ANmo" +_id="ACmo" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +buffid={"ANmd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={1.5,0.0,0.0,0.0} +datac={0.35,0.0,0.0,0.0} +dur={15.0,0.0,0.0,0.0} +efctid={"XNmo","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="季风" +order="monsoon" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习季风(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +researchubertip="在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 小型的区域。|n|cffffcc00等级 2|r - 中等大小的区域。|n|cffffcc00等级 3|r - 大型的区域。" +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","","",""} +tip={"季风(|cffffcc00N|r) - [|cffffcc00等级 1|r]","季风(|cffffcc00N|r) - [|cffffcc00等级 2|r]","季风(|cffffcc00N|r) - [|cffffcc00等级 3|r]"} +ubertip={"在一小块区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。","在一中等区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。","在一大块区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACmp] +_code="AUim" +_id="ACmp" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNImpale.blp" +buffid={"BUim","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={11.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={600.0,0.0,0.0,0.0} +datab={0.3,0.0,0.0,0.0} +datac={50.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="穿刺" +order="impale" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNImpale.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\Impale\\ImpaleMissTarget.mdl" +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"穿刺(|cffffcc00E|r)"} +ubertip={"震击地面,发出一道直线力量之波,造成点伤害力,并将敌地面单位抛入空中,使其晕眩秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACnr] +_code="Aoar" +_id="ACnr" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHeal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.01,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命恢复光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACpa] +_code="ANpa" +_id="ACpa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNParasiteOn.blp" +buffid={"BNpa,BNpm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={90.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={8,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\Parasite\\ParasiteMissile.mdl" +missilehoming=1 +missilespeed=1900 +name="寄生虫" +order="parasite" +orderoff="parasiteoff" +orderon="parasiteon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral,nonhero","","",""} +tip={"寄生虫(|cffffcc00R|r)"} +ubertip={"用一个致命的寄生虫折磨目标单位,使它每秒受到的伤害,持续秒。如果命中单位在寄生虫仍有效果的时候死亡,一个战士将会从尸体上诞生。"} +unart="ReplaceableTextures\\CommandButtons\\BTNParasiteOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +unitid={"nvdl","","",""} +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACps] +_code="Apos" +_id="ACps" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPossession.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={250,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="占据" +order="possession" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,nonhero,enemy,organic,neutral","","",""} +tip={"占据(|cffffcc00O|r)"} +ubertip={"占据目标单位的灵魂,但是同时也会摧毁施放者的身体。|n占据魔法不能用在飞行单位,英雄和高于级的野生单位身上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACpu] +_code="Aprg" +_id="ACpu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPurge.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={5,0,0,0} +datab={0,0,0,0} +datac={400.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={5.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="净化" +order="purge" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,vuln,invu,tree","","",""} +tip={"净化(|cffffcc00G|r)"} +ubertip={"去除目标单位上的所有魔法效果,并以分之1的速度来减慢其移动速度。目标单位会在秒内慢慢恢复自己的速度。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACpv] +_code="Awar" +_id="ACpv" +_max_level=1 +_type="ability" +animnames="slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNSeaGiantPulverize.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={40.0,0.0,0.0,0.0} +datac={150.0,0.0,0.0,0.0} +datad={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={"粉碎","粉碎"} +ubertip={"给予%的概率能对周围的单位造成点的伤害。","给予%的概率能对周围的单位造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACpy] +_code="Aply" +_id="ACpy" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPolymorph.blp" +buffid={"Bply","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={220,0,0,0} +dataa={5,0,0,0} +datab={"nshe","","",""} +datac={"nshf","","",""} +datad={"nsha","","",""} +datae={"nshw","","",""} +dur={25.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphFallingSheepArt.mdl" +hero=0 +herodur={25.0,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变形术" +order="polymorph" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphTarget.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,enemy,organic,neutral","","",""} +tip={"变形术(|cffffcc00O|r)"} +ubertip={"使得敌人的一个单位变成一头小绵羊,保有原有的生命值和防御,但是会使其丧失攻击力。|n不能被用在英雄身上。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACr1] +_code="Aroa" +_id="ACr1" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"Broa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (兽族战士骷髅)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="咆哮" +order="roar" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={"咆哮(|cffffcc00R|r)"} +ubertip={"增加周围友军单位%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACr2] +_code="Arej" +_id="ACr2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRejuvenation.blp" +buffid={"Brej","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={150,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={3,0,0,0} +datad={0,0,0,0} +dur={12.0,0.0,0.0,0.0} +editorsuffix="(熊怪)" +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命恢复" +order="rejuvination" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,neutral","","",""} +tip={"生命恢复(|cffffcc00E|r)"} +ubertip={"在秒内恢复目标单位点的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACrd] +_code="Arai" +_id="ACrd" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRaiseDeadOn.blp" +buffid={"Brai","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={12.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={2,0,0,0} +datab={0,0,0,0} +datac={"uske","","",""} +datad={"","","",""} +dur={40.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\RaiseSkeletonWarrior\\RaiseSkeleton.mdl" +hero=0 +herodur={40.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复活死尸" +order="raisedead" +orderoff="raisedeadoff" +orderon="raisedeadon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"dead","","",""} +tip={"复活死尸(|cffffcc00R|)"} +ubertip={"从一具尸体中召唤出个骷髅战士。"} +unart="ReplaceableTextures\\CommandButtons\\BTNRaiseDeadOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +unitid={"uske","","",""} +untip={"|cffc3dbff点击右键以激活自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[ACrf] +_code="ANrf" +_id="ACrf" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +buffid={"BNrd,BNrf","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={12.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={6,0,0,0} +datab={25.0,0.0,0.0,0.0} +datac={6,0,0,0} +datad={0.5,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"XErf","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火焰雨" +order="rainoffire" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"火焰雨(|cffffcc00F|r)"} +ubertip={"召唤出一阵阵的火焰雨,每阵能造成点的伤害。|n持续阵。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACrg] +_code="ANrf" +_id="ACrg" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +buffid={"BNrd,BNrf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={12.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={9,0,0,0} +datab={50.0,0.0,0.0,0.0} +datac={9,0,0,0} +datad={0.75,0.0,0.0,0.0} +datae={20.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={3.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"XErf","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火焰雨" +order="rainoffire" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"火焰雨(|cffffcc00F|r)"} +ubertip={"召唤出一阵阵的火焰雨来对一定区域内的敌人造成伤害。每阵火焰雨能造成点的初始伤害。随后在秒内能造成每秒点的伤害。|n持续阵。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACrj] +_code="Arej" +_id="ACrj" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRejuvenation.blp" +buffid={"Brej","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={3,0,0,0} +datad={0,0,0,0} +dur={12.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命恢复" +order="rejuvination" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,neutral","","",""} +tip={"生命恢复(|cffffcc00E|r)"} +ubertip={"在秒内治疗目标友方单位生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACrk] +_code="Arsk" +_id="ACrk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThickFur.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抗性皮肤" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"抗性皮肤"} +ubertip={"减少负面魔法的持续时间,使单位对某些魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACrn] +_code="ACrn" +_id="ACrn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNReincarnation.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={240.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"XOre","","",""} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"重生","Reincarnation"} +ubertip={"当被杀时,该单位自动会复活。重生有秒的施放/攻击间隔时间。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACro] +_code="Aroa" +_id="ACro" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"Broa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="咆哮" +order="roar" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={"咆哮(|cffffcc00R|r)"} +ubertip={"增加周围友军单位%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACs7] +_code="AOsf" +_id="ACs7" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +buffid={"BOsf","BOsf","BOsf","BOsf"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,15.0,15.0,15.0} +cost={100,100,100,100} +datab={2,2,2,2} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="野兽幽魂" +order="spiritwolf" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出条幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条具有致命一击技能的幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条具有致命一击和隐形技能的幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"osw1","osw2","osw3","osw3"} +untip={} +unubertip={} + +[ACs8] +_code="AOsf" +_id="ACs8" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +buffid={"BOsf","BOsf","BOsf","BOsf"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={125,125,125,125} +datab={2,2,2,2} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵兽" +order="spiritwolf" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习灵兽(|cffffcc00B|r) - [|cffffcc00等级 %d|r]。" +researchubertip="召唤只灵兽攻击阿卡玛的敌人。|n持续 秒。|n|n|cffffcc00等级 1|r - 生命值, - 伤害力。|n|cffffcc00等级 2|r - 生命值, - 伤害力及反馈。|n|cffffcc00等级 3|r - 生命值, - 伤害力,反馈和法力燃烧。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"灵兽(|cffffcc00B|r) - [|cffffcc00等级 1|r]","灵兽(|cffffcc00B|r) - [|cffffcc00等级 2|r]","灵兽(|cffffcc00B|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤灵兽伙伴。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r","召唤灵兽伙伴,拥有反馈技能。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r","召唤灵兽伙伴,拥有反馈和法力燃烧技能。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nsw1","nsw2","nsw3","nsw3"} +untip={} +unubertip={} + +[ACs9] +_code="AOsf" +_id="ACs9" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +buffid={"BOsf","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={15.0,0.0,0.0,0.0} +cost={100,0,0,0} +datab={2,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意,野猪)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="野兽幽魂" +order="spiritwolf" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"野兽幽魂(|cffffcc00T|r)"} +ubertip={"能召唤出个野猪幽灵来。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nspp","","",""} +untip={} +unubertip={} + +[ACsa] +_code="AHfa" +_id="ACsa" +_max_level=1 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={8,0,0,0} +dataa={10.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\SearingArrow\\SearingArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="灼热之箭" +order="flamingarrows" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","","",""} +tip={"灼热之箭(|cffffcc00R|r)"} +ubertip={"能增加点的火焰伤害,但是会消耗魔法。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="R" +unorder="unflamingarrows" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACsf] +_code="AOsf" +_id="ACsf" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +buffid={"BOsf","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={15.0,0.0,0.0,0.0} +cost={100,0,0,0} +datab={2,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="野兽幽魂" +order="spiritwolf" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"野兽幽魂(|cffffcc00T|r)"} +ubertip={"能召唤出条幽灵狼来。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"osw1","","",""} +untip={} +unubertip={} + +[ACsh] +_code="AOsh" +_id="ACsh" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +buffid={"BOsh","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={75.0,0.0,0.0,0.0} +datab={99999.0,0.0,0.0,0.0} +datac={800.0,0.0,0.0,0.0} +datad={150.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="震荡波" +order="shockwave" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,enemy","","",""} +tip={"震荡波(|cffffcc00W|r)"} +ubertip={"一道强劲的震荡波能对一直线上的敌人造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsi] +_code="ANsi" +_id="ACsi" +_max_level=1 +_type="ability" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSilence.blp" +buffid={"BNsi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={8,0,0,0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={40.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Other\\Silence\\SilenceAreaBirth.mdl" +hero=0 +herodur={8.5,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="沉默魔法" +order="silence" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNSilence.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"沉默魔法(|cffffcc00E|r)"} +ubertip={"在秒内阻止一定区域内所有敌人施放魔法。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsk] +_code="Arsk" +_id="ACsk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThickFur.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抗性皮肤" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"抗性皮肤"} +ubertip={"减少负面魔法的持续时间,使单位对某些魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsl] +_code="AUsl" +_id="ACsl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"BUsl,BUsp,Bust","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={2.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="睡眠" +order="sleep" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"睡眠(|cffffcc00L|r)"} +ubertip={"让目标单位在秒内处于睡眠状态。如果该单位遭到攻击就会自动醒来。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsm] +_code="AHdr" +_id="ACsm" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={850.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaDrain.blp" +buffid={"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={20.0,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={0.0,0.0,0.0,0.0} +datai={0.0,0.0,0.0,0.0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectsoundlooped="SiphonManaLoop" +hero=0 +herodur={8.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +lightningeffect="DRAB,DRAL,DRAM" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法吸吮" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"魔法吸吮(|cffffcc00N|r) "} +ubertip={"从一个敌人身上吸收魔法能量给血魔法师,每秒吸取点魔法值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsp] +_code="ACsp" +_id="ACsp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\CreepSleep\\CreepSleepTarget.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsoundlooped="CreepSleepSnoreLoop" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="睡眠" +order="creepsleep" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACss] +_code="AEsh" +_id="ACss" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp" +buffid={"BEsh","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,0.0,0.0,0.0} +cost={65,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={0.9,0.0,0.0,0.0} +datac={0.9,0.0,0.0,0.0} +datad={2.0,0.0,0.0,0.0} +datae={75.0,0.0,0.0,0.0} +dur={15.1,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={15.1,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\NightElf\\shadowstrike\\ShadowStrikeMissile.mdl" +missilehoming=1 +missilespeed=1200 +order="shadowstrike" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,enemy,neutral","","",""} +tip={"暗影突袭(|cffffcc00D|r)"} +ubertip={"投掷出一把毒性的匕首,能对敌方单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害。持续秒。在短时间内匕首上的毒性效果能减慢目标单位的攻击速度和移动速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACst] +_code="AOsh" +_id="ACst" +_max_level=1 +_type="ability" +animnames="attack,slam" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +buffid={"BOsh","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={75.0,0.0,0.0,0.0} +datab={99999.0,0.0,0.0,0.0} +datac={2048.0,0.0,0.0,0.0} +datad={150.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(陷阱)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="震荡波" +order="shockwave" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure","","",""} +tip={"震荡波(|cffffcc00W|r)"} +ubertip={"一道强劲的震荡波能对一直线上的敌人造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACsw] +_code="Aslo" +_id="ACsw" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSlowOn.blp" +buffid={"Bslo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Slow\\SlowCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0,0,0,0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="减速" +order="slow" +orderoff="slowoff" +orderon="slowon" +priority=3 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy","","",""} +tip={"减速(|cffffcc00W|r)"} +ubertip={"减慢%的攻击速度和%的移动速度。持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSlowOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="W" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ACt2] +_code="ACtc" +_id="ACt2" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGolemThunderclap.blp" +buffid={"BCtc","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Thunderclap\\ThunderClapCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={70.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={0.25,0.0,0.0,0.0} +dur={4.0,0.0,0.0,0.0} +editorsuffix=" (雷霆蜥蜴)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="雷霆一击" +order="creepthunderclap" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,neutral","","",""} +tip={"雷霆一击(|cffffcc00L|r)"} +ubertip={"震击地面,对周围的敌方地面单位造成点的伤害。并减慢其移动和攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACtb] +_code="ACtb" +_id="ACtb" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGolemStormBolt.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={100.0,0.0,0.0,0.0} +dur={2.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.3 +missileart="Abilities\\Weapons\\RockBoltMissile\\RockBoltMissile.mdl" +missilehoming=0 +missilespeed=1000 +name="投石" +order="creepthunderbolt" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic,enemy,neutral","","",""} +tip={"投石(|cffffcc00B|r)"} +ubertip={"一块巨石被投向敌人,对其造成点的伤害并在秒内使其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACtc] +_code="ACtc" +_id="ACtc" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGolemThunderclap.blp" +buffid={"BCtc","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Thunderclap\\ThunderClapCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={70.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={0.25,0.0,0.0,0.0} +dur={4.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="雷霆一击" +order="creepthunderclap" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,neutral","","",""} +tip={"雷霆一击(|cffffcc00L|r)"} +ubertip={"震击地面,对周围的敌方地面单位造成点的伤害。并减慢其移动和攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACtn] +_code="AOwd" +_id="ACtn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTentacle.blp" +buffid={"BOwd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={1,0,0,0} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={180.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="产卵触角" +order="Serpentward" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"产卵触角(|cffffcc00T|r)"} +ubertip={"在敌人头上召唤出一巨大的触角。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nfgt","","",""} +untip={} +unubertip={} + +[ACua] +_code="AUau" +_id="ACua" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNUnholyAura.blp" +buffid={"BUau","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\UnholyAura\\UnholyAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"邪恶光环"} +ubertip={"提高周围单位%的移动速度和%的生命值恢复速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACuf] +_code="Auhf" +_id="ACuf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnholyFrenzy.blp" +buffid={"BUhf","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={4.0,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶狂热" +order="unholyfrenzy" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"邪恶狂热(|cffffcc00U|r)"} +ubertip={"增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACvp] +_code="AUav" +_id="ACvp" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNVampiricAura.blp" +buffid={"BUav","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.2,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吸血光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","","",""} +tip={"吸血光环"} +ubertip={"周围的单位能将他们自己对敌人%的伤害值转化成自己的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACvs] +_code="Aven" +_id="ACvs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNEnvenomedSpear.blp" +buffid={"Bpoi,Bpsd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="浸毒武器" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"浸毒武器"} +ubertip={"每秒能造成点的毒性伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ACwb] +_code="Aweb" +_id="ACwb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWebOn.blp" +buffid={"Bwea,Bweb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={12.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={7.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Web\\Webmissile.mdl" +missilehoming=1 +missilespeed=1500 +name="蛛网" +order="web" +orderoff="weboff" +orderon="webon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy,neutral","","",""} +tip={"蛛网(|cffffcc00W|r)"} +ubertip={"将目标单位用一张网来捕获到地面,从而地面上的单位可以对其进行攻击。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNWebOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="W" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[ACwe] +_code="AHwe" +_id="ACwe" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSeaElemental.blp" +buffid={"BHwe","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={1,0,0,0} +dur={65.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={65.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤海元素" +order="waterelemental" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNSeaElemental.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"召唤海元素(|cffffcc00E|r)"} +ubertip={"召唤一个强大的有点生命值的海元素,具有 - 的伤害值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nsel","","",""} +untip={} +unubertip={} + +[AEIl] +_code="AEme" +_id="AEIl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +buffid={"BEme","BEme","BEme","BEme"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={150,150,150,150} +dataa={"Eill","Eill","Eill","Eill"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={500.0,500.0,500.0,500.0} +dur={1.5,1.5,1.5,1.5} +editorsuffix=" (尤迪安)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变身" +order="metamorphosis" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习变身(|cffffcc00T|r)" +researchubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"变身(|cffffcc00T|r)"} +ubertip={"让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Eilm","Eilm","Eilm","Eilm"} +untip={} +unubertip={} + +[AEah] +_code="AEah" +_id="AEah" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThorns.blp" +buffid={"BEah","BEah","BEah","BEah"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +datab={1,1,1,1} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="荆棘光环" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNThorns.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习荆棘光环(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到一定的伤害。|n|n|cffffcc00等级 1|r - 返回%的伤害。|n|cffffcc00等级 2|r - 返回%的伤害。|n|cffffcc00等级 3|r - 返回%的伤害。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\ThornsAura\\ThornsAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"荆棘光环 - [|cffffcc00等级 1|r]","荆棘光环 - [|cffffcc00等级 2|r]","荆棘光环 - [|cffffcc00等级 3|r]"} +ubertip={"该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。","该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。","该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEar] +_code="AEar" +_id="AEar" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNTrueShot.blp" +buffid={"BEar","BEar","BEar","BEar"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +datab={0,0,0,0} +datac={1,1,1,1} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="强击光环" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNTrueShot.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习强击光环(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="一种能增加周围友军单位远程攻击力的光环。|n|n|cffffcc00等级 1|r - 增加%的远程攻击力。|n|cffffcc00等级 2|r - 增加%的远程攻击力。|n|cffffcc00等级 3|r - 增加%的远程攻击力。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TrueshotAura\\TrueshotAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"强击光环 - [|cffffcc00等级 1|r]","强击光环 - [|cffffcc00等级 2|r]","强击光环 - [|cffffcc00等级 3|r]"} +ubertip={"一种能增加周围友军单位%远程攻击力的光环。","一种能增加周围友军单位%远程攻击力的光环。","一种能增加周围友军单位%远程攻击力的光环。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEbl] +_code="AEbl" +_id="AEbl" +_max_level=3 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +areaeffectart="Abilities\\Spells\\NightElf\\Blink\\BlinkTarget.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNBlink.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,1.0,1.0} +cost={50,10,10,10} +dataa={1000.0,1075.0,1150.0,1150.0} +datab={200.0,200.0,200.0,200.0} +dur={0.33,0.33,0.33,0.33} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪烁" +order="blink" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBlink.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习闪烁(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。|n|n|cffffcc00等级 1|r -秒魔法施放间隔时间,消耗点魔法。|n|cffffcc00等级 2|r -秒魔法施放间隔时间,消耗点魔法。|n|cffffcc00等级 3|r -秒魔法施放间隔时间,消耗点魔法。" +rng={99999.0,99999.0,99999.0,99999.0} +specialart="Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"闪烁(|cffffcc00B|r) - [|cffffcc00等级 1|r]","闪烁(|cffffcc00B|r) - [|cffffcc00等级 2|r]","闪烁(|cffffcc00B|r)- [|cffffcc00等级 3|r]"} +ubertip={"能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。","能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。","能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEbu] +_code="AEbu" +_id="AEbu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNightElfBuild.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造 (暗夜精灵族)" +order="nightelfbuild" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEer] +_code="AEer" +_id="AEer" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEntanglingRoots.blp" +buffid={"BEer","BEer","BEer","BEer"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={75,75,75,75} +dataa={15.0,15.0,25.0,25.0} +dur={9.0,24.0,36.0,36.0} +efctid={"","","",""} +hero=1 +herodur={3.0,4.0,5.0,7.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="纠缠根须" +order="entanglingroots" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNEntanglingRoots.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="从地下伸出缠绕的根须将目标暂时固定,并造成持续伤害。|n|n|cffffcc00等级 1|r - 伤害/秒,持续秒。|n|cffffcc00等级 2|r - 伤害/秒,持续秒。|n|cffffcc00等级 3|r - 伤害/秒,持续秒。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic"} +tip={"纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 1|r]","纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 2|r]","纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。","从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。","从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEev] +_code="AEev" +_id="AEev" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNEvasion.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪避" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNEvasion.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习闪避(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="给予一定的概率使得恶魔猎手躲避掉敌人的攻击。|n|n|cffffcc00等级 1|r - %的概率躲避掉敌人的攻击。|n|cffffcc00等级 2|r - %的概率躲避掉敌人的攻击。|n|cffffcc00等级 3|r - %的概率躲避掉敌人的攻击。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"闪避 - [|cffffcc00等级 1|r]","闪避 - [|cffffcc00等级 2|r]","闪避 - [|cffffcc00等级 3|r]"} +ubertip={"给予%的概率让恶魔猎手躲避掉敌人的攻击。","给予%的概率让恶魔猎手躲避掉敌人的攻击。","给予%的概率让恶魔猎手躲避掉敌人的攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEfk] +_code="AEfk" +_id="AEfk" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={400.0,450.0,475.0,475.0} +art="ReplaceableTextures\\CommandButtons\\BTNFanOfKnives.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={100,100,100,100} +dataa={75.0,125.0,190.0,180.0} +datab={300.0,625.0,950.0,950.0} +datac={0,0,0,0} +datad={100.0,100.0,100.0,100.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\NightElf\\FanOfKnives\\FanOfKnivesCaster.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.1 +missileart="Abilities\\Spells\\NightElf\\FanOfKnives\\FanOfKnivesMissile.mdl" +missilehoming=0 +missilespeed=700 +name="刀阵旋风" +order="fanofknives" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFanOfKnives.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="守望者对周围的敌人发射出锋利的尖刀进行伤害。|n|n|cffffcc00等级 1|r - 对每个目标造成点伤害。|n|cffffcc00等级 2|r - 对每个目标造成点伤害。|n|cffffcc00等级 3|r - 对每个目标造成点伤害。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic","air,ground,enemy,organic","air,ground,enemy,organic","air,ground,enemy,organic"} +tip={"刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 1|r]","刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 2|r]","刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。","守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。","守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEfn] +_code="AEfn" +_id="AEfn" +_max_level=3 +_type="ability" +area={150.0,225.0,300.0,300.0} +art="ReplaceableTextures\\CommandButtons\\BTNEnt.blp" +buffid={"BEfn","BEfn","BEfn","BEfn"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={125,125,125,125} +dataa={2,3,4,4} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="自然之力" +order="forceofnature" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNEnt.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习自然之力(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="将一定范围内的树木转化成树人,每个树人具有点的生命值和-点的攻击力。可以学会自然之祝福能力。|n|n|cffffcc00能攻击地面单位。|r|n|n|cffffcc00等级 1|r - 召唤个树人,持续时间秒。|n|cffffcc00等级 2|r - 召唤个树人,持续时间秒。|n|cffffcc00等级 3|r - 召唤个树人,持续时间秒。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"tree","tree","tree","tree"} +tip={"自然之力(|cffffcc00F|r) - [|cffffcc00等级 1|r]","自然之力(|cffffcc00F|r) - [|cffffcc00等级 2|r]","自然之力(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"efon","efon","efon","efon"} +untip={} +unubertip={} + +[AEim] +_code="AEim" +_id="AEim" +_max_level=3 +_type="ability" +area={160.0,160.0,160.0,160.0} +art="ReplaceableTextures\\CommandButtons\\BTNImmolationOn.blp" +buffid={"BEim,BEia","BEim,BEia","BEim,BEia","BEim,BEia"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={25,25,25,25} +dataa={10.0,15.0,20.0,20.0} +datab={7.0,7.0,7.0,7.0} +datac={10.0,10.0,10.0,10.0} +dur={1.0,1.0,1.0,1.0} +efctid={"","","",""} +hero=1 +herodur={1.0,1.0,1.0,1.0} +hotkey="L" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="献祭" +order="immolation" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNImmolationOn.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="L" +researchtip="学习献祭(|cffffcc00L|r) - [|cffffcc00等级 %d|r]" +researchubertip="让恶魔猎手处于火焰的包围之中,并对周围的敌方地面单位造成一定的伤害。|n该技能会持续地消耗魔法值。|n|n|cffffcc00等级 1|r - 每秒点的伤害。|n|cffffcc00等级 2|r - 每秒点的伤害。|n|cffffcc00等级 3|r - 每秒点的伤害。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic"} +tip={"激活献祭(|cffffcc00L|r) - [|cffffcc00等级 1|r]","激活献祭(|cffffcc00L|r) - [|cffffcc00等级 2|r]","激活献祭(|cffffcc00L|r) - [|cffffcc00等级 3|r]"} +ubertip={"激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。","激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。","激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNImmolationOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="L" +unorder="unimmolation" +untip={"取消献祭(|cffffcc00L|r)"} +unubertip={"取消献祭之后可以停止消耗魔法。"} + +[AEmb] +_code="AEmb" +_id="AEmb" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={7.0,6.0,5.0,5.0} +cost={50,50,50,50} +dataa={50.0,100.0,150.0,150.0} +datab={0.25,0.25,0.25,0.25} +datac={1.0,1.0,1.0,1.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +lightningeffect="MBUR" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="法力燃烧" +order="manaburn" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="射出一道能量波来消耗掉目标单位一定的魔法值,目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。|n|n|cffffcc00等级 1|r - 消耗掉目标点魔法。|n|cffffcc00等级 2|r - 消耗掉目标点魔法。|n|cffffcc00等级 3|r - 消耗掉目标点魔法。" +rng={300.0,300.0,300.0,300.0} +targetart="Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 1|r]","法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 2|r]","法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 3|r]"} +ubertip={"射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。","射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。","射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEme] +_code="AEme" +_id="AEme" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +buffid={"BEme","BEme","BEme","BEme"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={"Edem","Edem","Edem","Edem"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={500.0,500.0,500.0,500.0} +dur={1.5,1.5,1.5,1.5} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变身" +order="metamorphosis" +priority=0 +race="nightelf" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习变身(|cffffcc00T|r)" +researchubertip="让恶魔猎手变身为一个威力巨大的恶魔。该恶魔具有远程攻击能力并会增加点的生命值。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"变身(|cffffcc00T|r)"} +ubertip={"让恶魔猎手变身为一个威力巨大的恶魔。该恶魔具有远程攻击能力并会增加点的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Edmm","Edmm","Edmm","Edmm"} +untip={} +unubertip={} + +[AEpa] +_code="AEpa" +_id="AEpa" +_max_level=3 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOn.blp" +buffid={"Bpoi,Bpsd,Bpsi","Bpoi,Bpsd,Bpsi","Bpoi,Bpsd,Bpsi","Bpoi,Bpsd,Bpsi"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,20.0,30.0,30.0} +datab={4.0,6.0,8.0,8.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={10.0,10.0,10.0,10.0} +efctid={"","","",""} +hero=1 +herodur={10.0,10.0,10.0,10.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\SearingArrow\\SearingArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="毒箭" +order="poisonarrowstarg" +orderoff="unpoisonarrows" +orderon="poisonarrows" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSearingArrows.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习毒箭(|cffffcc00R|r)- [|cffffcc00等级 %d|r]" +researchubertip="通过附加的火焰伤害来增加女祭司的攻击力。|n|n|cffffcc00等级 1|r -增加点伤害。|n|cffffcc00等级 2|r –增加 点伤害。 |n|cffffcc00等级 3|r – 增加点伤害。" +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","air,ground,organic","air,ground,organic","air,ground,organic"} +tip={"毒箭(|cffffcc00R|r)- [|cffffcc00等级 1|r]","毒箭(|cffffcc00R|r) - [|cffffcc00等级 2|r]","毒箭(|cffffcc00R|r) - [|cffffcc00等级 3|r]"} +ubertip={"增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[AEsb] +_code="AEsf" +_id="AEsb" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNStarfall.blp" +buffid={"AEsd","AEsd","AEsd","AEsd"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={100.0,120.0,120.0,120.0} +cost={300,300,300,300} +dataa={50.0,30.0,30.0,30.0} +datab={2.0,2.0,2.0,2.0} +datac={0.35,0.0,0.0,0.0} +dur={35.0,30.0,30.0,30.0} +editorsuffix=" (更加强大的)" +efctid={"XEsf","XEsf","XEsf","XEsf"} +hero=1 +herodur={35.0,30.0,30.0,30.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="群星坠落" +order="starfall" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStarfall.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习群星坠落(|cffffcc00F|r)" +researchubertip="召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral"} +tip={"群星坠落(|cffffcc00F|r)"} +ubertip={"每隔秒就召唤出一阵强大的流星雨,每阵流星雨能对周围的单位造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEsf] +_code="AEsf" +_id="AEsf" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={1000.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNStarfall.blp" +buffid={"AEsd","AEsd","AEsd","AEsd"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,120.0,120.0,120.0} +cost={200,300,300,300} +dataa={50.0,30.0,30.0,30.0} +datab={1.5,2.0,2.0,2.0} +datac={0.35,0.0,0.0,0.0} +dur={45.0,30.0,30.0,30.0} +efctid={"XEsf","XEsf","XEsf","XEsf"} +hero=1 +herodur={30.0,30.0,30.0,30.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="群星坠落" +order="starfall" +priority=0 +race="nightelf" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStarfall.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习群星坠落(|cffffcc00F|r)" +researchubertip="召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral"} +tip={"群星坠落(|cffffcc00F|r)"} +ubertip={"召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEsh] +_code="AEsh" +_id="AEsh" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp" +buffid={"BEsh","BEsh","BEsh","BEsh"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={3.0,3.0,3.0,3.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={65,65,65,65} +dataa={10.0,30.0,45.0,45.0} +datab={0.5,0.5,0.5,0.5} +datac={0.0,0.0,0.0,0.0} +datad={3.0,3.0,3.0,3.0} +datae={75.0,150.0,225.0,225.0} +dur={15.1,15.1,15.1,15.1} +efctid={"","","",""} +hero=1 +herodur={15.1,15.1,15.1,15.1} +hotkey="D" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\NightElf\\shadowstrike\\ShadowStrikeMissile.mdl" +missilehoming=1 +missilespeed=1200 +name="暗影突袭" +order="shadowstrike" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +researchubertip="投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成很大的伤害,随后每秒造成一定的伤害。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。|n|n|cffffcc00等级 1|r - 点初始伤害, 点持续伤害。 |n|cffffcc00等级 2|r - 点初始伤害,点持续伤害。 |n|cffffcc00等级 3|r - 点初始伤害,点持续伤害。." +rng={300.0,300.0,300.0,300.0} +targetattachcount=0 +targs={"ground,air,enemy,neutral,organic","ground,air,enemy,neutral,organic","ground,air,enemy,neutral,organic","ground,air,enemy,neutral,organic"} +tip={"暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 1|r]","暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 2|r]","暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 3|r]"} +ubertip={"投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。","投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。","投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEst] +_code="AEst" +_id="AEst" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNScout.blp" +buffid={"BEst","BEst","BEst","BEst"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={100,75,50,50} +dataa={1,1,1,1} +dur={60.0,90.0,120.0,120.0} +efctid={"","","",""} +hero=1 +herodur={60.0,90.0,120.0,120.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Units\\NightElf\\Owl\\Owl.mdl" +missilehoming=0 +missilespeed=650 +name="侦察" +order="scout" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNScout.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习侦察(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n|n|cffffcc00等级 1|r -消耗点魔法值来召唤出一头猫头鹰。|n|cffffcc00等级 2|r -消耗点魔法值来召唤出一头猫头鹰。|n|cffffcc00等级 3|r -消耗点魔法值来召唤出一头猫头鹰。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"侦察(|cffffcc00C|r) - [|cffffcc00等级 1|r]","侦察(|cffffcc00C|r) - [|cffffcc00等级 2|r]","侦察(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。","能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。","能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nowl","now2","now3","now3"} +untip={} +unubertip={} + +[AEsv] +_code="AEsv" +_id="AEsv" +_max_level=1 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritOfVengeance.blp" +buffid={"BEsv","BEsv","BEsv","BEsv"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,20.0,20.0,20.0} +cost={150,125,125,125} +dataa={1,1,1,1} +dur={180.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={180.0,60.0,60.0,60.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.5 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceBirthMissile.mdl" +missilehoming=0 +missilespeed=700 +name="复仇之魂" +order="spiritofvengeance" +priority=0 +race="nightelf" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNSpiritOfVengeance.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习复仇之魂(|cffffcc00V|r)" +researchubertip="召唤出一个强大的复仇天神,复仇天神能从周围的尸体中复活许多无敌的幽灵来为你战斗。当复仇天神死掉的时候,那些幽灵也会自动消失。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"复仇之魂(|cffffcc00V|r)"} +ubertip={"召唤出一个强大的复仇天神,复仇天神能从周围的尸体中复活许多无敌的幽灵来为你战斗。当复仇天神死掉的时候,那些幽灵也会自动消失。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"espv","espv","espv","espv"} +untip={} +unubertip={} + +[AEtq] +_code="AEtq" +_id="AEtq" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNTranquility.blp" +buffid={"AEtr","AEtr","AEtr","AEtr"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={60.0,120.0,120.0,120.0} +cost={125,300,300,300} +dataa={20.0,15.0,15.0,15.0} +datab={1.0,1.0,1.0,1.0} +datac={1.0,0.0,0.0,0.0} +dur={30.0,30.0,30.0,30.0} +efctid={"XEtq","XEtq","XEtq","XEtq"} +hero=1 +herodur={30.0,30.0,30.0,30.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="宁静" +order="tranquility" +priority=0 +race="nightelf" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNTranquility.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习宁静(|cffffcc00T|r)" +researchubertip="在一大片范围内召唤出一阵强大的能量雨,能以每秒点的速度恢复其中友军单位的生命值。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,neutral","air,ground,friend,self,vuln,invu,neutral","air,ground,friend,self,vuln,invu,neutral","air,ground,friend,self,vuln,invu,neutral"} +tip={"宁静(|cffffcc00T|r)"} +ubertip={"在一大片范围内召唤出一阵强大的能量雨,能以每秒点的速度恢复其中友军单位的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AEvi] +_code="AEme" +_id="AEvi" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +buffid={"BEme","BEme","BEme","BEme"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={150,150,150,150} +dataa={"Eevi","Eevi","Eevi","Eevi"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={500.0,500.0,500.0,500.0} +dur={1.5,1.5,1.5,1.5} +editorsuffix=" (邪恶的尤迪安)" +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变身" +order="metamorphosis" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习变身(|cffffcc00T|r)" +researchubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"变身(|cffffcc00T|r)"} +ubertip={"让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Eevm","Eevm","Eevm","Eevm"} +untip={} +unubertip={} + +[AGbu] +_code="AGbu" +_id="AGbu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBasicStruct.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造(娜迦)" +order="nagabuild" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHab] +_code="AHab" +_id="AHab" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBrilliance.blp" +buffid={"BHab","BHab","BHab","BHab"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.75,1.5,2.25,2.25} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="辉煌光环" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBrilliance.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习辉煌光环(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="能加快周围友军单位的魔法值恢复速度。|n|n|cffffcc00等级 1|r -能缓慢地加快周围友军的魔法值恢复速度。|n|cffffcc00等级 2|r -能稍快地加快周围友军的魔法值恢复速度。|n|cffffcc00等级 3|r -能迅速地加快周围友军的魔法值恢复速度。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Brilliance\\Brilliance.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"辉煌光环 - [|cffffcc00等级 1|r]","辉煌光环 - [|cffffcc00等级 2|r]","辉煌光环 - [|cffffcc00等级 3|r]"} +ubertip={"能加快周围友军单位的魔法值恢复速度。","能加快周围友军单位的魔法值恢复速度。","能加快周围友军单位的魔法值恢复速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHad] +_code="AHad" +_id="AHad" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDevotion.blp" +buffid={"BHad","BHad","BHad","BHad"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.5,3.0,4.5,4.5} +datab={0,0,0,0} +dur={0.0,4.0,4.0,4.0} +efctid={"","","",""} +hero=1 +herodur={0.0,2.0,2.0,2.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="专注光环" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDevotion.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习专注光环(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +researchubertip="为周围友军提供一定额外的护甲。|n|n|cffffcc00等级 1|r - 增加点的护甲。|n|cffffcc00等级 2|r - 增加点的护甲。|n|cffffcc00等级 3|r - 增加点的护甲。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DevotionAura\\DevotionAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"专注光环 - [|cffffcc00等级 1|r]","专注光环 - [|cffffcc00等级 2|r]","专注光环 - [|cffffcc00等级 3|r]"} +ubertip={"为周围友军提供点的额外护甲。","为周围友军提供点的额外护甲。","为周围友军提供点的额外护甲。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHav] +_code="AHav" +_id="AHav" +_max_level=1 +_type="ability" +area={0.5,0.5,0.5,0.5} +art="ReplaceableTextures\\CommandButtons\\BTNAvatarOn.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Avatar\\AvatarCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={5.0,5.0,5.0,5.0} +datab={500.0,500.0,500.0,500.0} +datac={20.0,20.0,20.0,20.0} +datad={0.0,0.0,0.0,0.0} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="天神下凡" +order="avatar" +priority=0 +race="human" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNAvatar.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习天神下凡(|cffffcc00V|r)" +researchubertip="激活了该技能以后能提高山丘之王点的护甲, 点的生命值, 点的攻击力并使其对魔法免疫。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"激活天神下凡(|cffffcc00V|r)"} +ubertip={"激活该技能能提高山丘之王点的护甲,点的生命值,点的攻击力并使其对魔法免疫。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNAvatarOff.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="V" +untip={"取消天神下凡(|cffffcc00V|r)"} +unubertip={""} + +[AHbh] +_code="AHbh" +_id="AHbh" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBash.blp" +buffid={"BPSE","BPSE","BPSE","BPSE"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,30.0,40.0,35.0} +datab={0.0,0.0,0.0,0.0} +datac={25.0,25.0,25.0,25.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={2.0,2.0,2.0,2.0} +efctid={"","","",""} +hero=1 +herodur={1.0,1.0,1.0,1.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重击" +order="bash" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBash.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习重击(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="给予一定的概率使得山丘之王的常规攻击能附带点的附加伤害值并在秒内使得对手处于眩晕状态。|n|n|cffffcc00等级 1|r - 每次攻击%的概率。|n|cffffcc00等级 2|r - 每次攻击%的概率。|n|cffffcc00等级 3|r - 每次攻击%的概率。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air","ground,air","ground,air","ground,air"} +tip={"重击 - [|cffffcc00等级 1|r]","重击 - [|cffffcc00等级 2|r]","重击 - [|cffffcc00等级 3|r]"} +ubertip={"给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。","给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。","给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHbn] +_code="AHbn" +_id="AHbn" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBanish.blp" +buffid={"BHbn","BHbn","BHbn","BHbn"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,1.0} +cost={75,60,50,75} +dataa={0.5,0.5,0.5,0.5} +datab={0.0,0.0,0.0,0.0} +dur={12.0,15.0,18.0,18.0} +efctid={"","","",""} +effectsound="BanishCaster" +hero=1 +herodur={4.0,5.0,6.0,6.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱散" +order="banish" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBanish.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习驱散(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="使一个非机械单位的重量变轻,并通过 % 在较短时期降低其移动速度。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。 |n|n|cffffcc00等级 1|r - 魔法, 持续 秒。 |n|cffffcc00等级 2|r - 魔法, 持续 秒。 |n|cffffcc00等级 3|r - 魔法, 持续 秒。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"air,ground,nonsapper,organic","air,ground,nonsapper,organic","air,ground,nonsapper,organic","air,ground,nonsapper,organic"} +tip={"驱散(|cffffcc00B|r) - [|cffffcc00等级 1|r]","驱散(|cffffcc00B|r) - [|cffffcc00等级 2|r]","驱散(|cffffcc00B|r) - [|cffffcc00等级 3|r]"} +ubertip={"使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。","使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。","使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHbu] +_code="AHbu" +_id="AHbu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHumanBuild.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造(人族)" +order="humanbuild" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHbz] +_code="AHbz" +_id="AHbz" +_max_level=3 +_type="ability" +animnames="stand,channel" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNBlizzard.blp" +buffid={"BHbd,BHbz","BHbd,BHbz","BHbd,BHbz","BHbd,BHbz"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.0,1.0,1.0,1.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={75,75,75,75} +dataa={6,8,10,10} +datab={30.0,40.0,50.0,50.0} +datac={6,7,10,10} +datad={0.5,0.5,0.5,0.5} +datae={0.0,0.0,0.0,0.0} +dataf={150.0,200.0,250.0,250.0} +dur={0.0,0.0,0.0,0.0} +efctid={"XHbz","XHbz","XHbz","XHbz"} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="暴风雪" +order="blizzard" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBlizzard.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习暴风雪(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="能召唤出若干次冰片攻击,对目标区域内的单位造成一定的伤害。|n|n|cffffcc00等级 1|r -次攻击,每次造成点的伤害。|n|cffffcc00等级 2|r -次攻击,每次造成点的伤害。|n|cffffcc00等级 3|r -次攻击,每次造成点的伤害。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"","","",""} +tip={"暴风雪(|cffffcc00B|r) - [|cffffcc00等级 1|r]","暴风雪(|cffffcc00B|r) - [|cffffcc00等级 2|r]","暴风雪(|cffffcc00B|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤出次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。","召唤出次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。","召唤出 次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHca] +_code="AHca" +_id="AHca" +_max_level=3 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOn.blp" +buffid={"BHca,Bcsd,Bcsi","BHca,Bcsd,Bcsi","BHca,Bcsd,Bcsi","BHca,Bcsd,Bcsi"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={8,8,8,8} +dataa={5.0,10.0,15.0,15.0} +datab={0.3,0.5,0.7,0.7} +datac={0.3,0.5,0.7,0.7} +datad={7,7,7,7} +dur={6.0,6.0,6.0,6.0} +efctid={"","","",""} +hero=1 +herodur={1.0,1.0,1.0,1.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Weapons\\ColdArrow\\ColdArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="冰冻冷箭" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNColdArrows.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="每次攻击带有冰冻效果,使敌人单位减慢攻击和移动。|n|n|cffffcc00等级 1|r - %攻击速度,%移动速度,持续秒。|n|cffffcc00等级 2|r - %攻击速度,%移动速度,持续秒。|n|cffffcc00等级 3|r - %攻击速度,%移动速度,持续秒。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 1|r]","冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 2|r]","冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[AHdr] +_code="AHdr" +_id="AHdr" +_max_level=3 +_type="ability" +area={800.0,800.0,800.0,800.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaDrain.blp" +buffid={"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={10,10,10,10} +dataa={0.0,0.0,0.0,0.0} +datab={15.0,30.0,45.0,55.0} +datac={1.0,1.0,1.0,1.0} +datad={0.0,0.0,0.0,0.0} +datae={30.0,60.0,90.0,50.0} +dataf={0.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={1.0,1.0,1.0,1.0} +datai={3.0,3.0,3.0,3.0} +dur={6.0,6.0,6.0,6.0} +efctid={"","","",""} +effectsoundlooped="SiphonManaLoop" +hero=1 +herodur={6.0,6.0,6.0,6.0} +hotkey="N" +item=0 +levels=3 +levelskip=0 +lightningeffect="DRAB,DRAL,DRAM" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法吸吮" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNManaDrain.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +researchubertip="让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人一定点数的魔法值。或者是每秒向己方单位转移一定点数的魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。|n|n|cffffcc00等级 1|r - 每秒吸取点魔法值。|n|cffffcc00等级 2|r - 每秒吸取点魔法值。 |n|cffffcc00等级 3|r - 每秒吸取点魔法值。" +rng={600.0,600.0,600.0,600.0} +targetattachcount=0 +targs={"air,ground,organic,notself","air,ground,organic,notself","air,ground,organic,notself","air,ground,organic,notself"} +tip={"魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 1|r]","魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 2|r]","魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 3|r]"} +ubertip={"让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快消失。|n持续秒。","让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。","让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHds] +_code="AHds" +_id="AHds" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDivineIntervention.blp" +buffid={"BHds","BHds","BHds","BHds"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={35.0,50.0,65.0,65.0} +cost={25,25,25,25} +dataa={0,0,0,0} +dur={15.0,30.0,45.0,45.0} +efctid={"","","",""} +hero=1 +herodur={15.0,30.0,45.0,45.0} +hotkey="D" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神圣护甲" +order="divineshield" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDivineIntervention.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +researchubertip="在一定的时间内使得圣骑士对所有的攻击免疫。|n|n|cffffcc00等级 1|r - 持续秒。|n|cffffcc00等级 2|r - 持续秒。|n|cffffcc00等级 3|r - 持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"invu,vuln","invu,vuln","invu,vuln","invu,vuln"} +tip={"激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 1|r]","激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 2|r]","激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 3|r]"} +ubertip={"在秒内使得圣骑士对所有的攻击免疫。","在秒内使得圣骑士对所有的攻击免疫。","在秒内使得圣骑士对所有的攻击免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNDivineShieldOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="D" +unorder="undivineshield" +untip={"取消神圣护甲(|cffffcc00D|r)"} +unubertip={} + +[AHer] +_code="AHer" +_id="AHer" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\Levelup\\LevelupCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="英雄" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHfa] +_code="AHfa" +_id="AHfa" +_max_level=3 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={8,8,8,8} +dataa={10.0,20.0,30.0,30.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\SearingArrow\\SearingArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="灼热之箭" +order="flamingarrows" +priority=0 +race="nightelf" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSearingArrows.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="通过附加的火焰伤害来增加女祭司的攻击力。|n|n|cffffcc00等级 1|r - 增加点的伤害。|n|cffffcc00等级 2|r - 增加点的伤害。|n|cffffcc00等级 3|r - 增加点的伤害。" +rng={600.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral"} +tip={"灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 1|r]","灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 2|r]","灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 3|r]"} +ubertip={"增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSearingArrowsOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="R" +unorder="unflamingarrows" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[AHfs] +_code="AHfs" +_id="AHfs" +_max_level=3 +_type="ability" +animnames="spell,channel" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +buffid={"BHfs","BHfs","BHfs","BHfs"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.33,1.33,1.33,1.33} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={135,135,135,135} +dataa={15.0,26.666,36.666,36.666} +datab={0.33,0.33,0.33,0.33} +datac={4.0,6.0,8.0,8.0} +datad={1.0,1.0,1.0,1.0} +datae={0.75,0.75,0.75,0.75} +dataf={90.0,160.0,220.0,220.0} +dur={9.0,9.0,9.0,9.0} +efctid={"XHfs","XHfs","XHfs","XHfs"} +effectart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeTarget.mdl" +hero=1 +herodur={2.67,2.67,2.67,2.67} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="烈焰风暴" +order="flamestrike" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一道巨大的火焰,对目标区域内的敌方步兵造成长时间的伤害。|n|n|cffffcc00等级 1|r -持续3秒,每秒45点的伤害,在接下来的6秒时间内持续造成极度轻微的伤害。|n|cffffcc00等级 2|r -持续3秒,每秒80点的伤害,在接下来的6秒时间内持续造成轻微的伤害。|n|cffffcc00等级 3|r -持续3秒,每秒110点的伤害,在接下来的6秒时间内持续造成中等程度的伤害。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrike1.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike2.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike.mdl" +targetattachcount=0 +targs={"ground,enemy,neutral,friend,structure,self,tree,debris","ground,enemy,neutral,friend,structure,self,tree,debris","ground,enemy,neutral,friend,structure,self,tree,debris","ground,enemy,neutral,friend,structure,self,tree,debris"} +tip={"烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 1|r]","烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 2|r]","烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成45点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。","召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成80点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到轻微的伤害。","召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成110点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到中等程度的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHhb] +_code="AHhb" +_id="AHhb" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHolyBolt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,5.0,5.0,5.0} +cost={65,65,65,65} +dataa={200.0,400.0,600.0,600.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神圣之光" +order="holybolt" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHolyBolt.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习神圣之光(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="神圣之光能治愈友军单位或者对敌军的不死单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 恢复友军单位点的生命值。|n|cffffcc00等级 2|r - 恢复友军单位点的生命值。|n|cffffcc00等级 3|r - 恢复友军单位点的生命值。" +rng={800.0,800.0,800.0,800.0} +targetart="Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" +targetattachcount=0 +targs={"air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient"} +tip={"神圣之光(|cffffcc00T|r) - [|cffffcc00等级 1|r]"," 神圣之光(|cffffcc00T|r) - [|cffffcc00等级 2|r]"," 神圣之光(|cffffcc00T|r) - [|cffffcc00等级 3|r]"} +ubertip={"神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。","神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。","神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHmt] +_code="AHmt" +_id="AHmt" +_max_level=1 +_type="ability" +area={700.0,700.0,700.0,700.0} +areaeffectart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTo.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNMassTeleport.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={100,100,100,100} +dataa={24,12,12,12} +datab={3.0,5.0,5.0,5.0} +datac={1,1,1,1} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="群体传送" +order="massteleport" +priority=0 +race="human" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNMassTeleport.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习群体传送(|cffffcc00T|r)" +researchubertip="将个单位(包括大魔法师在内)传送到一个友军单位或者建筑物旁边。" +rng={99999.0,99999.0,99999.0,99999.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"ground,structure,vuln,invu,player,neutral,ally","ground,structure,vuln,invu,player,neutral,ally","ground,structure,vuln,invu,player,neutral,ally","ground,structure,vuln,invu,player,neutral,ally"} +tip={"群体传送(|cffffcc00T|r)"} +ubertip={"将个单位(包括大魔法师在内)传送到一个友军单位或者建筑物旁边。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHpx] +_code="AHpx" +_id="AHpx" +_max_level=1 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNMarkOfFire.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,120.0,120.0,120.0} +cost={175,125,125,125} +dataa={1,1,1,1} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="X" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火凤凰" +order="summonphoenix" +priority=0 +race="human" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNMarkOfFire.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="X" +researchtip="学习火凤凰(|cffffcc00X|r)" +researchubertip="召唤一只强大的火凤凰。火凤凰全身燃烧剧烈的火焰,烧伤附近的空中敌人。具有魔法免疫、抗性皮肤。当火凤凰死后,会变成一只蛋,可以再次孵化成火凤凰。|n|n|cffffcc00能攻击地面和空中单位。|r" +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MarkOfChaos\\MarkOfChaosTarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"火凤凰(|cffffcc00X|r)"} +ubertip={"召唤一只强大的火凤凰。火凤凰全身燃烧剧烈的火焰,烧伤附近的空中敌人。具有魔法免疫、抗性皮肤。当火凤凰死后,会变成一只蛋,可以再次孵化成火凤凰。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hphx","hphx","hphx","hphx"} +untip={} +unubertip={} + +[AHre] +_code="AHre" +_id="AHre" +_max_level=1 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={240.0,240.0,240.0,240.0} +cost={200,250,250,250} +dataa={6,6,6,6} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复活" +order="resurrection" +priority=0 +race="human" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习复活(|cffffcc00R|r)" +researchubertip="复活周围个友军单位。" +rng={400.0,400.0,400.0,400.0} +targetart="Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead,friend","air,ground,dead,friend","air,ground,dead,friend","air,ground,dead,friend"} +tip={"复活(|cffffcc00R|r)"} +ubertip={"复活周围个友军单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHta] +_code="AIta" +_id="AHta" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReveal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIta\\CrystalBallCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={180.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"Xbdt","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="显示" +priority=0 +race="human" +reqlevel=0 +requires="Rhse" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"显示(|cffffcc00R|r)"} +ubertip={"在地图上显示一块区域。|n探测到隐形的单位。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHtb] +_code="AHtb" +_id="AHtb" +_max_level=3 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStormBolt.blp" +buffid={"BPSE","BPSE","BPSE","BPSE"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={75,75,75,75} +dataa={100.0,225.0,350.0,300.0} +dur={5.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={3.0,3.0,3.0,3.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Human\\StormBolt\\StormBoltMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="风暴之锤" +order="thunderbolt" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNStormBolt.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="向目标投掷一巨大的魔法锤,对其造成一定伤害并使其处于眩晕状态。|n|n|cffffcc00等级 1|r - 点伤害,秒眩晕状态。|n|cffffcc00等级 2|r - 点伤害,秒眩晕状态。|n|cffffcc00等级 3|r - 点伤害,秒眩晕状态。" +rng={600.0,600.0,600.0,600.0} +targetattachcount=0 +targs={"air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic"} +tip={"风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 1|r]"," 风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 2|r]"," 风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 3|r]"} +ubertip={"向目标投掷一巨大的魔法锤,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法锤,对其造成 点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法锤,对其造成点伤害并使其秒内处于眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHtc] +_code="AHtc" +_id="AHtc" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={250.0,300.0,350.0,350.0} +art="ReplaceableTextures\\CommandButtons\\BTNThunderclap.blp" +buffid={"BHtc","BHtc","BHtc","BHtc"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Thunderclap\\ThunderClapCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={90,90,90,90} +dataa={60.0,100.0,140.0,150.0} +datab={0.0,0.0,0.0,0.0} +datac={0.5,0.5,0.5,0.5} +datad={0.5,0.5,0.5,0.5} +dur={5.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={3.0,3.0,3.0,3.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="雷霆一击" +order="thunderclap" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNThunderclap.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="重击地面,对周围的地面单位造成伤害并减慢其移动速度和攻击速度。|n|n|cffffcc00等级 1|r - 点伤害,%的移动速度,%的攻击速度。|n|cffffcc00等级 2|r - 点伤害,%的移动速度,%的攻击速度。|n|cffffcc00等级 3|r - 点伤害,%的移动速度,%的攻击速度。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,neutral,organic","ground,neutral,organic","ground,neutral,organic","ground,neutral,organic"} +tip={"雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 1|r]","雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 2|r]","雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"重击地面,对周围的地面单位造成点伤害并使其减慢 %的移动速度和%的攻击速度。","重击地面,对周围的地面单位造成点伤害并使其减慢%的移动速度和%的攻击速度。","重击地面,对周围的地面单位造成点伤害并使其减慢%的移动速度和%的攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AHwe] +_code="AHwe" +_id="AHwe" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +buffid={"BHwe","BHwe","BHwe","BHwe"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={125,125,125,125} +dataa={1,1,1,1} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤水元素" +order="waterelemental" +priority=0 +race="human" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一个水元素来帮大魔法师进行战斗。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r - 点生命值,-点的伤害。|n|cffffcc00等级 2|r - 点生命值,-点的伤害。|n|cffffcc00等级 3|r - 点生命值,-点的伤害。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 1|r]","召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 2|r]","召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 3|r] "} +ubertip={"召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为-点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为-点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hwat","hwt2","hwt3","hwt3"} +untip={} +unubertip={} + +[AI2m] +_code="AImm" +_id="AI2m" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={200,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法值的物品(200)" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIa1] +_code="AIab" +_id="AIa1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRingPurple.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1 敏捷度)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIa3] +_code="AIab" +_id="AIa3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+3 敏捷度)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIa4] +_code="AIab" +_id="AIa4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+4 敏捷度)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIa6] +_code="AIab" +_id="AIa6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBoots.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+6 敏捷度)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIaa] +_code="AIaa" +_id="AIaa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="Item Permanent Damage Gain" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIad] +_code="AHad" +_id="AIad" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDevotion.blp" +buffid={"BHad","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DevotionAura\\DevotionAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIae] +_code="AOae" +_id="AIae" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCommand.blp" +buffid={"BOae","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0.05,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\CommandAura\\CommandAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIam] +_code="AIam" +_id="AIam" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加敏捷度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIam\\AIamTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIan] +_code="AIan" +_id="AIan" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAnimateDead.blp" +buffid={"BUan","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +dur={40.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={40.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能操纵死尸的物品" +order="animatedead" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIar] +_code="AEar" +_id="AIar" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTrueShot.blp" +buffid={"BEar","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TrueshotAura\\TrueshotAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIat] +_code="AIat" +_id="AIat" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+3)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIau] +_code="AUau" +_id="AIau" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnholyAura.blp" +buffid={"BUau","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\UnholyAura\\UnholyAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIav] +_code="AUav" +_id="AIav" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNVampiricAura.blp" +buffid={"BUav","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIaz] +_code="AIab" +_id="AIaz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+10 敏捷度)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIba] +_code="AHab" +_id="AIba" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBrilliance.blp" +buffid={"BHab","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Brilliance\\Brilliance.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIbb] +_code="AIbl" +_id="AIbb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBlacksmith.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造微型铁匠铺" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hbla,hbla,hbla,hbla","","",""} +untip={} +unubertip={} + +[AIbf] +_code="AIbl" +_id="AIbf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFarm.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造微型农场" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hhou,hhou,hhou,hhou","","",""} +untip={} +unubertip={} + +[AIbg] +_code="AIbl" +_id="AIbg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTownHall.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造小型的大厅" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"htow,ogre,unpl,etol","","",""} +untip={} +unubertip={} + +[AIbh] +_code="AIbl" +_id="AIbh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造微型国王祭坛" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"halt,halt,halt,halt","","",""} +untip={} +unubertip={} + +[AIbk] +_code="AEbl" +_id="AIbk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +areaeffectart="Abilities\\Spells\\NightElf\\Blink\\BlinkTarget.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNBlink.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1000.0,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +dur={0.33,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪烁(物品等级)" +order="blink" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIbl] +_code="AIbl" +_id="AIbl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTinyCastle.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造小型的城堡" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hcas,ofrt,unp2,etoe","","",""} +untip={} +unubertip={} + +[AIbm] +_code="AImm" +_id="AIbm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较大的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIbr] +_code="AIbl" +_id="AIbr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHumanLumberMill.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造微型伐木场" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hlum,hlum,hlum,hlum","","",""} +untip={} +unubertip={} + +[AIbs] +_code="AIbl" +_id="AIbs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHumanBarracks.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造微型兵营" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hbar,hbar,hbar,hbar","","",""} +untip={} +unubertip={} + +[AIbt] +_code="AIbl" +_id="AIbt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHumanWatchTower.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={4.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造小型的哨塔 " +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hwtw,hwtw,hwtw,hwtw","","",""} +untip={} +unubertip={} + +[AIbx] +_code="AHbh" +_id="AIbx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBash.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={25.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重击" +order="bash" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcb] +_code="AIcb" +_id="AIcb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfCorruption.blp" +buffid={"BIcb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={5,0,0,0} +datae={2,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\OrbCorruption\\OrbCorruptionMissile.mdl" +missilehoming=1 +missilespeed=0 +name="带有腐蚀攻击效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\OrbCorruption\\OrbCorruptionSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\OrbCorruption\\OrbCorruption.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcd] +_code="AOac" +_id="AIcd" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDrum.blp" +buffid={"BOac","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\WarDrums\\DrumsCasterHeal.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcf] +_code="AIcf" +_id="AIcf" +_max_level=1 +_type="ability" +area={160.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCloakOfFlames.blp" +buffid={"BIcf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有献祭效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcl] +_code="AOcl" +_id="AIcl" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNChainLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={9.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={4,0,0,0} +datac={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +lightningeffect="CLPB,CLSB" +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\LightningBolt\\LightningBoltMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="闪电链" +order="chainlightning" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcm] +_code="Acmg" +_id="AIcm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellSteal.blp" +buffid={"Bcmg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={5,0,0,0} +datab={0.3,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Spells\\Human\\SpellSteal\\SpellStealMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="控制魔法" +order="spellsteal" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\SpellSteal\\SpellStealTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"air,ground,enemy,neutral,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIco] +_code="AIco" +_id="AIco" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScepterOfMastery.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="命令物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={750.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIco\\CrownOfCmndTarget.mdl" +targetattach="head" +targetattachcount=0 +targs={"air,ground,nonhero,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcs] +_code="AOcr" +_id="AIcs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCriticalStrike.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="致命一击" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIct] +_code="AIct" +_id="AIct" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMoonStone.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={70.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"XIct","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="改变一天的时间" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIcy] +_code="Acyc" +_id="AIcy" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +buffid={"Bcyc,Bcy2","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={5.6,0.0,0.0,0.0} +hotkey="C" +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飓风" +order="cyclone" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={"飓风(|cffffcc00C|r)"} +ubertip={"将一个目标非机械敌单位抛入空中,使其无法移动,攻击或使用魔法,同时使其他单无法攻击或对其使用魔法。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId0] +_code="AIde" +_id="AId0" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+10)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId1] +_code="AIde" +_id="AId1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId2] +_code="AIde" +_id="AId2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId3] +_code="AIde" +_id="AId3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+3)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId4] +_code="AIde" +_id="AId4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+4)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId5] +_code="AIde" +_id="AId5" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+5)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId7] +_code="AIde" +_id="AId7" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+7)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能加强护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AId8] +_code="AIde" +_id="AId8" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+8)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIda] +_code="AIda" +_id="AIda" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScroll.blp" +buffid={"Bdef","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIda\\AIdaCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能暂时提高一定范围内所有单位护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,friend,self,invu,vuln","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdb] +_code="AIda" +_id="AIdb" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScroll.blp" +buffid={"Bdef","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIda\\AIdaCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={150,0,0,0} +datac={100,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (具有生命与魔法恢复技能)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能暂时加强范围内所有单位护甲的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIre\\AIreTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,invu,vuln","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdc] +_code="AIdc" +_id="AIdc" +_max_level=1 +_type="ability" +area={400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandOfNeutralization.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={8,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\WandOfNeutralization\\NeutralizationMissile.mdl" +missilehoming=1 +missilespeed=900 +name="带有锁链驱逐效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,enemy,invu,vuln","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdd] +_code="AIdd" +_id="AIdd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDefend.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Defend\\DefendCaster.mdl,Abilities\\Spells\\Human\\Defend\\DefendCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.7,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={1.0,0.0,0.0,0.0} +datah={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="防御" +order="defend" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdf] +_code="AIsb" +_id="AIdf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datab={100.0,0.0,0.0,0.0} +datac={100.0,0.0,0.0,0.0} +datad={100.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl" +missilehoming=1 +missilespeed=0 +name="能带有黑箭攻击伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\OrbDarkness\\OrbDarkness.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ANbs","","",""} +untip={} +unubertip={} + +[AIdi] +_code="AIdi" +_id="AIdi" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandSkull.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={200,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Items\\AItb\\AItbTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有驱逐魔法效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdm] +_code="AIdm" +_id="AIdm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGoblinLandMine.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能对范围内的树木/墙壁造成伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdn] +_code="AIfb" +_id="AIdn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\VengeanceMissile\\VengeanceMissile.mdl" +missilehoming=0 +missilespeed=0 +name="影子之球 技能" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\OrbDarkness\\OrbDarkness.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdp] +_code="AUdp" +_id="AIdp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathPact.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={15.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡契约" +order="deathpact" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,player,nonhero,invu,vuln","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIds] +_code="AIdi" +_id="AIds" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfNegation.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={7.5,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={200,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (有使用间隔)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Items\\AItb\\AItbTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有驱逐魔法效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIdv] +_code="AHds" +_id="AIdv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfDivinity.blp" +buffid={"BHds","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +dur={25.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={25.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="物品神圣护甲" +order="divineshield" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIe2] +_code="AIem" +_id="AIe2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManual3.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIem\\AIemTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={500,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (大型)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能获取经验值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIem] +_code="AIem" +_id="AIem" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeBrown.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIem\\AIemTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能获取经验值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIev] +_code="AEev" +_id="AIev" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEvasion.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪避" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={"给予%的概率来躲避掉敌人的攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfa] +_code="AIfa" +_id="AIfa" +_max_level=1 +_type="ability" +area={1800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFlare.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Flare\\FlareCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0.8,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +efctid={"Xfla","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="信号枪" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfb] +_code="AIfb" +_id="AIfb" +_max_level=1 +_type="ability" +area={140.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFire.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +missilehoming=1 +missilespeed=0 +name="能带有火焰伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIfb\\AIfbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIfb\\AIfbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfd] +_code="AIfs" +_id="AIfd" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRedDragon.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nrdr","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤红龙的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfe] +_code="AIfe" +_id="AIfe" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUndeadCaptureFlag.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(不死族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抢夺旗帜" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Objects\\InventoryItems\\UndeadCaptureFlag\\UndeadCaptureFlag.mdl" +targetattach="hand,right" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIff] +_code="AIfs" +_id="AIff" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFurbolg.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nfrl","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤熊怪的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfg] +_code="Aclf" +_id="AIfg" +_max_level=1 +_type="ability" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCloudOfFog.blp" +buffid={"Bclf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={15.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={30.0,0.0,0.0,0.0} +efctid={"Xclf","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="C" +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="乌云技能" +order="cloudoffog" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1000.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu,structure","","",""} +tip={"乌云技能(|cffffcc00C|r)"} +ubertip={"能产生一小块乌云使得一定范围内的建筑物丧失远程攻击的能力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfh] +_code="AIfs" +_id="AIfh" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nfel","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤地狱犬的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfl] +_code="AIfl" +_id="AIfl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抢夺旗帜" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="UI\\Feedback\\RallyPoint\\RallyPoint.mdl" +targetattach="hand,right" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfm] +_code="AIfm" +_id="AIfm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHumanCaptureFlag.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(人族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抢夺旗帜" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Objects\\InventoryItems\\HumanCaptureFlag\\HumanCaptureFlag.mdl" +targetattach="hand,right" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfn] +_code="AIfn" +_id="AIfn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNightElfCaptureFlag.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(暗夜精灵族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抢夺旗帜" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Objects\\InventoryItems\\NightElfCaptureFlag\\NightElfCaptureFlag.mdl" +targetattach="hand,right" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfo] +_code="AIfo" +_id="AIfo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrcCaptureFlag.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(兽族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抢夺旗帜" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Objects\\InventoryItems\\OrcCaptureFlag\\OrcCaptureFlag.mdl" +targetattach="hand,right" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfr] +_code="AIfs" +_id="AIfr" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRockGolem.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"ngst","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤岩石傀儡的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfs] +_code="AIfs" +_id="AIfs" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +datab={4,0,0,0} +datac={"nsce","","",""} +datad={"nsca","","",""} +dur={120.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤骷髅战士的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\RaiseSkeletonWarrior\\RaiseSkeleton.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIft] +_code="AIob" +_id="AIft" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFrost.blp" +buffid={"Bfro","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={3.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +missilehoming=1 +missilespeed=0 +name="近战攻击带有冰冻伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIob\\AIobSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIob\\AIobTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfu] +_code="AIfs" +_id="AIfu" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDoomGuard.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nba2","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤毁灭守卫的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfw] +_code="AIfb" +_id="AIfw" +_max_level=1 +_type="ability" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFire.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +missilehoming=1 +missilespeed=0 +name="近战攻击带有火焰伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIfb\\AIfbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIfb\\AIfbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfx] +_code="AIfl" +_id="AIfx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrcBattleStandard.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="物品兽族战斗标准" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Objects\\InventoryItems\\BattleStandard\\BattleStandard.mdl" +targetattach="chest" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIfz] +_code="ANfd" +_id="AIfz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +lightningeffect="AFOD" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡之指" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIgd] +_code="AIfb" +_id="AIgd" +_max_level=1 +_type="ability" +area={140.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFire.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (古尔丹)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl" +missilehoming=0 +missilespeed=0 +name="能带有火焰伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIfb\\AIfbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIfb\\AIfbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIgf] +_code="AIgl" +_id="AIgf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="防御浮雕" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Rgfo","","",""} +untip={} +unubertip={} + +[AIgm] +_code="AIam" +_id="AIgm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加敏捷度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIam\\AIamTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIgo] +_code="AIgo" +_id="AIgo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNChestOfGold.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\ResourceItems\\ResourceEffectTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ReceiveGold" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="金箱子" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIgu] +_code="AIgl" +_id="AIgu" +_max_level=2 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,1,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=2 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="防御浮雕" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Rguv","Reuv","",""} +untip={} +unubertip={} + +[AIgx] +_code="Aoar" +_id="AIgx" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +buffid={"Boar","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.02,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恢复光环" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,organic,vuln,invu,friend,neutral,self","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIh1] +_code="AIhe" +_id="AIh1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionGreenSmall.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有医疗效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIh2] +_code="AIhe" +_id="AIh2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionGreen.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={500,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较大的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有医疗效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIh3] +_code="AIhe" +_id="AIh3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHeartOfAszune.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(增加魔法施放间隔时间)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="最小的医疗能力" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIha] +_code="AIha" +_id="AIha" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={25.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能进行范围医疗的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIhb] +_code="AIha" +_id="AIhb" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (大型)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能进行范围医疗的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIhl] +_code="AHhb" +_id="AIhl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHolyBolt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={5.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={200.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神圣之光" +order="holybolt" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl" +targetattachcount=0 +targs={"air,ground,organic,notself,invu,vuln,nonancient","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIhw] +_code="Ahwd" +_id="AIhw" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +buffid={"Bhwd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="治疗守卫" +order="healingward" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={"召唤一个不可移动的守卫来治疗周围的非机械友方单位%生命值/秒,持续时间为 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ohwd","","",""} +untip={} +unubertip={} + +[AIhx] +_code="AIhe" +_id="AIhx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(最小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有医疗效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIi1] +_code="AIab" +_id="AIi1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNShadowPact.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1 智力)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIi3] +_code="AIab" +_id="AIi3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={3,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+3 智力)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIi4] +_code="AIab" +_id="AIi4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={4,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+4 智力)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIi6] +_code="AIab" +_id="AIi6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRobeOfTheMagi.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={6,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+6 智力)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIil] +_code="AIil" +_id="AIil" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWand.blp" +buffid={"BIil","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="幻象物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIil\\AIilTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIim] +_code="AIim" +_id="AIim" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高智力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIim\\AIimTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIin] +_code="AUin" +_id="AIin" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +buffid={"BNin","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={180.0,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +dur={4.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +effectart="Units\\Demon\\Infernal\\InfernalBirth.mdl" +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +order="inferno" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ninf","","",""} +untip={} +unubertip={} + +[AIir] +_code="AIfs" +_id="AIir" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNIceShard.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nrvi","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={180.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤冰冻幽灵的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIl1] +_code="AIml" +_id="AIl1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={200,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIl2] +_code="AIml" +_id="AIl2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPeriapt1.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={300,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较大的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIlb] +_code="AIlb" +_id="AIlb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +missilehoming=1 +missilespeed=0 +name="能带有闪电伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIlb\\AIlbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIlb\\AIlbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIlf] +_code="AIml" +_id="AIlf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(最小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIll] +_code="AIsb" +_id="AIll" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datab={35.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +datad={35.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +missilehoming=1 +missilespeed=0 +name="闪电之球(新的)" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIlb\\AIlbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIlb\\AIlbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"AIpg","","",""} +untip={} +unubertip={} + +[AIlm] +_code="AIlm" +_id="AIlm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高等级的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIlp] +_code="AIlp" +_id="AIlp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPurge.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={0,0,0,0} +datac={35.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={3.0,0.0,0.0,0.0} +editorsuffix=" (1)" +efctid={"","","",""} +hero=0 +herodur={0.3,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="带有净化效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIls] +_code="Alsh" +_id="AIls" +_max_level=1 +_type="ability" +area={160.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLightningShield.blp" +buffid={"Blsh,Blsa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +dur={20.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪电护盾" +order="lightningshield" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,enemy,neutral","","",""} +tip={} +ubertip={"在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIlu] +_code="AIlu" +_id="AIlu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBundleOfLumber.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ReceiveLumber" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="木材堆" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\ResourceItems\\ResourceEffectTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIlx] +_code="AIsb" +_id="AIlx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12.0,0.0,0.0,0.0} +datab={35.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +datad={35.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +missilehoming=1 +missilespeed=0 +name="近战攻击带有闪电伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIlb\\AIlbSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIlb\\AIlbTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"AIpg","","",""} +untip={} +unubertip={} + +[AIlz] +_code="AIml" +_id="AIlz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(最小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIm1] +_code="AIma" +_id="AIm1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionBlueSmall.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法恢复速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIm2] +_code="AIma" +_id="AIm2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionBlueBig.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={300,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较大的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法恢复速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImb] +_code="AImm" +_id="AImb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(最小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImh] +_code="AImi" +_id="AImh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManual.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+50)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能永久增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImo] +_code="AImo" +_id="AImo" +_max_level=1 +_type="ability" +area={1750.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMonsterLure.blp" +buffid={"BImo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={1,0,0,0} +datab={5.0,0.0,0.0,0.0} +datac={2.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="怪兽诱捕守卫" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nlur","","",""} +untip={} +unubertip={} + +[AImr] +_code="AImr" +_id="AImr" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfProtection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高一定范围内所有单位魔法值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIms] +_code="AIms" +_id="AIms" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBootsOfSpeed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={60,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高移动速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImt] +_code="AHmt" +_id="AImt" +_max_level=1 +_type="ability" +area={50.0,0.0,0.0,0.0} +areaeffectart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTo.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfTeleportation.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={90.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={3.0,0.0,0.0,0.0} +datac={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="传送权杖" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"ground,structure,vuln,invu,player,neutral,ally","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImv] +_code="AImm" +_id="AImv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={75,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法值的物品(75)" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImx] +_code="Amim" +_id="AImx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNecklace.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法免疫" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={"让目标单位对所有魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AImz] +_code="AImm" +_id="AImz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法值的物品(100)" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AInd] +_code="ACad" +_id="AInd" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandSkull.blp" +buffid={"BUan","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={90.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (特别战役物品)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="鼓舞" +order="animatedead" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AInm] +_code="AIsm" +_id="AInm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={2,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加力量的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIsm\\AIsmTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AInv] +_code="AInv" +_id="AInv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datab={0,0,0,0} +datac={1,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (英雄)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="物品栏" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIob] +_code="AIob" +_id="AIob" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFrost.blp" +buffid={"Bfro","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={3.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +missilehoming=1 +missilespeed=0 +name="带有霜冻攻击效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIob\\AIobSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\AIob\\AIobTarget.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIos] +_code="Aslo" +_id="AIos" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSlow.blp" +buffid={"Bslo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Slow\\SlowCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (圆球视野)" +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="减速" +order="slow" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={"减速(|cffffcc00W|r)"} +ubertip={"减慢目标单位%的攻击速度和%的移动速度。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp1] +_code="AIrg" +_id="AIp1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMinorRejuvPotion.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={25.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp2] +_code="AIrg" +_id="AIp2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLesserRejuvPotion.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={50.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (II)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp3] +_code="AIrg" +_id="AIp3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRejuvPotion.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={200.0,0.0,0.0,0.0} +datab={75.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (III)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp4] +_code="AIrg" +_id="AIp4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGreaterRejuvPotion.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={125.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (IV)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp5] +_code="AIrg" +_id="AIp5" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLesserRejuvScroll.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250.0,0.0,0.0,0.0} +datab={100.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (V)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIp6] +_code="AIrg" +_id="AIp6" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGreaterRejuvScroll.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={450.0,0.0,0.0,0.0} +datab={150.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (VI)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="普通物品-回复效果" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpb] +_code="AIpb" +_id="AIpb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfVenom.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\OrbVenom\\OrbVenomMissile.mdl" +missilehoming=1 +missilespeed=0 +name="带有毒药效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\OrbVenom\\OrbVenomSpecialArt.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Items\\OrbVenom\\OrbVenom.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpg] +_code="Aprg" +_id="AIpg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEntrapmentWard.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={0,0,0,0} +datac={150.0,0.0,0.0,0.0} +datad={3.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +editorsuffix=" (2)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="带有净化效果的物品" +order="purge" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpl] +_code="AIrg" +_id="AIpl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLesserClarityPotion.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={100.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小净化药水" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpm] +_code="AIpm" +_id="AIpm" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGoblinLandMine.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能置放地精地雷的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nglm","","",""} +untip={} +unubertip={} + +[AIpr] +_code="AIrg" +_id="AIpr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfClarity.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="净化药水" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIps] +_code="Aprg" +_id="AIps" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEntrapmentWard.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={0,0,0,0} +datac={150.0,0.0,0.0,0.0} +datad={3.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +editorsuffix=" (3)" +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="带有净化效果的物品" +order="purge" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl" +specialattach="origin" +targetattachcount=0 +targs={"air,ground,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpv] +_code="AIpv" +_id="AIpv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfVampirism.blp" +buffid={"BIpv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\VampiricPotion\\VampPotionCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12.0,0.0,0.0,0.0} +datab={0.75,0.0,0.0,0.0} +datac={0,0,0,0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吸血药水" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpx] +_code="AImi" +_id="AIpx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能永久增加生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIpz] +_code="AIha" +_id="AIpz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPenguin.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PenguinSqueek" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="企鹅怪兽" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIra] +_code="AIra" +_id="AIra" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHealing.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={300,0,0,0} +datab={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高一定范围内所有单位魔法值和生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIre\\AIreTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrb] +_code="AIrb" +_id="AIrb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +buffid={"BIrb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrc] +_code="AIrc" +_id="AIrc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAnkh.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7,0,0,0} +datab={500,0,0,0} +datac={-1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"XOre","","",""} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl,Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有重生效果的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrd] +_code="AIrd" +_id="AIrd" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRaiseDead.blp" +buffid={"Brai","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={22.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={0,0,0,0} +datac={"uske","","",""} +datad={"","","",""} +dur={65.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={65.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复活死尸(物品)" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"dead","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uske","","",""} +untip={} +unubertip={} + +[AIre] +_code="AIre" +_id="AIre" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionRed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={500,0,0,0} +datab={200,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能进行医疗和增加魔法值的单位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIre\\AIreTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIri] +_code="AIri" +_id="AIri" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPhilosophersStone.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="随机物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"item","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrl] +_code="AIrg" +_id="AIrl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingSalve.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +datae={1,0,0,0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗剂" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\HealingSalve\\HealingSalveTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrm] +_code="AIrm" +_id="AIrm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSobiMask.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加魔法恢复速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrn] +_code="AIrm" +_id="AIrn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrr] +_code="Aroa" +_id="AIrr" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"Broa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="咆哮" +order="roar" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={} +ubertip={"增加周围友军单位%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrs] +_code="AIrs" +_id="AIrs" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有复活效果的物品" +order="resurrection" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead,friend","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrt] +_code="AIrt" +_id="AIrt" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAmulet.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"ground,air,player,vuln,invu,nonancient","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrv] +_code="AIrv" +_id="AIrv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfOmniscience.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\PotionOfOmniscience\\CrystalBallCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"Xbdt","","",""} +effectsound="PowerupSound" +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能显示整个地图的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIrx] +_code="AHre" +_id="AIrx" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={240.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(魔法施放间隔时间)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有复活效果的物品" +order="resurrection" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead,friend","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIs1] +_code="AIab" +_id="AIs1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHammer.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1 力量)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIs2] +_code="AIas" +_id="AIs2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGlove.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.2,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (较大的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高进攻速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIs3] +_code="AIab" +_id="AIs3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={3,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+3 力量)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIs4] +_code="AIab" +_id="AIs4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={4,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+4 力量)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIs6] +_code="AIab" +_id="AIs6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBelt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={6,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+6 力量)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsa] +_code="AIsa" +_id="AIsa" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHaste.blp" +buffid={"Bspe","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="加速卷轴" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsb] +_code="AIsb" +_id="AIsb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbofSlowness.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datab={15.0,0.0,0.0,0.0} +datac={5.0,0.0,0.0,0.0} +datad={35.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\ProcMissile\\ProcMissile.mdl" +missilehoming=1 +missilespeed=0 +name="减速之球 " +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\OrbSlow\\OrbSlow.mdl" +targetattach="weapon" +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"AIos","","",""} +untip={} +unubertip={} + +[AIse] +_code="ANsi" +_id="AIse" +_max_level=1 +_type="ability" +area={225.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfSilence.blp" +buffid={"BNsi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8,0,0,0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="物品沉默" +order="silence" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsh] +_code="AIsh" +_id="AIsh" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +buffid={"BIsh","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +datab={2,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤巨魔猎头者" +order="spiritwolf" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"otbk","","",""} +untip={} +unubertip={} + +[AIsi] +_code="AIsi" +_id="AIsi" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTelescope.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={500,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高视野范围的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsl] +_code="AIrg" +_id="AIsl" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfRegenerationGreen.blp" +buffid={"BIrg,BIrl,BIrm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={225.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恢复卷轴" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsm] +_code="AIsm" +_id="AIsm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能增加力量的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIsm\\AIsmTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIso] +_code="AIso" +_id="AIso" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSoulGem.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Items\\AIso\\AIsoTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能盗取单位灵魂的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,hero","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsp] +_code="AIsp" +_id="AIsp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPotionRed.blp" +buffid={"Bspe","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能暂时加快移动速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsr] +_code="AIsr" +_id="AIsr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRunedBracers.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.33,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法伤害减少" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsw] +_code="Aeye" +_id="AIsw" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +buffid={"Beye","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={300.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={300.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="岗哨守卫" +order="evileye" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={"召唤出一个固定隐形的守卫来监视一定的区域。|n能看见隐形单位。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"oeye","","",""} +untip={} +unubertip={} + +[AIsx] +_code="AIas" +_id="AIsx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGlove.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (加速手套)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高攻击速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIsz] +_code="Aspo" +_id="AIsz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDaggerOfEscape.blp" +buffid={"Bspo,Bssd,Bssi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4.0,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={1,0,0,0} +dur={5.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="慢性毒药" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIt6] +_code="AIat" +_id="AIt6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+6)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIt9] +_code="AIat" +_id="AIt9" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={9,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+9)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIta] +_code="AIta" +_id="AIta" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCrystalBall.blp" +buffid={"Bdet","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AIta\\CrystalBallCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={10.0,0.0,0.0,0.0} +efctid={"Xbdt","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能探测一定区域的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItb] +_code="AItb" +_id="AItb" +_max_level=1 +_type="ability" +area={1000.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDustOfAppearance.blp" +buffid={"Bdet","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\AItb\\AItbTarget.mdl" +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="尘土之影" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,ward,enemy,neutral,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItc] +_code="AIat" +_id="AItc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+12)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItf] +_code="AIat" +_id="AItf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+15)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItg] +_code="AIat" +_id="AItg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIth] +_code="AIat" +_id="AIth" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIti] +_code="AIat" +_id="AIti" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+4)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItj] +_code="AIat" +_id="AItj" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+5)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItk] +_code="AIat" +_id="AItk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+7)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItl] +_code="AIat" +_id="AItl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+8)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItm] +_code="AIim" +_id="AItm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={2,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高智力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIim\\AIimTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItn] +_code="AIat" +_id="AItn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+10)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItp] +_code="AItp" +_id="AItp" +_max_level=1 +_type="ability" +area={1100.0,0.0,0.0,0.0} +areaeffectart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTo.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNScrollUber.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={5.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={90,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="回城卷轴物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"structure,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AItx] +_code="AIat" +_id="AItx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+20)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="增加攻击力的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIuf] +_code="Auhf" +_id="AIuf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnholyFrenzy.blp" +buffid={"Buhf","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={1.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={4.0,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶狂热" +order="unholyfrenzy" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIuv] +_code="Ault" +_id="AIuv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTelescope.blp" +buffid={"Bult","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(物品)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="夜视能力" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIuw] +_code="AIfs" +_id="AIuw" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAmuletOftheWild.blp" +buffid={"BFig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"nfra","","",""} +datad={"","","",""} +dur={180.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={180.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能召唤熊怪战士的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIv1] +_code="AIvi" +_id="AIv1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLesserInvisibility.blp" +buffid={"Binv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={120.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={120.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能让单位暂时隐身的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIvi\\AIviTarget.mdl" +targetattach="chest" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIv2] +_code="AIvi" +_id="AIv2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGreaterInvisibility.blp" +buffid={"Binv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={180.0,0.0,0.0,0.0} +editorsuffix="(较大的)" +efctid={"","","",""} +hero=0 +herodur={180.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能让单位暂时隐身的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIvi\\AIviTarget.mdl" +targetattach="chest" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIva] +_code="AIva" +_id="AIva" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMaskOfDeath.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\WandOfNeutralization\\NeutralizationMissile.mdl" +missilehoming=0 +missilespeed=0 +name="能盗取生命值的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAuraTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIvl] +_code="AIvu" +_id="AIvl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLesserInvulneralbility.blp" +buffid={"Bvul","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={45.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={7.0,0.0,0.0,0.0} +editorsuffix=" (小型)" +efctid={"","","",""} +hero=0 +herodur={7.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能让单位暂时无敌的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIvu] +_code="AIvu" +_id="AIvu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGreaterInvulneralbility.blp" +buffid={"Bvul","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={45.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能让单位暂时无敌的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIwb] +_code="AIwb" +_id="AIwb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWebOn.blp" +buffid={"Bwea,Bweb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={7.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Web\\Webmissile.mdl" +missilehoming=1 +missilespeed=1500 +name="带有蛛网技能的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIwm] +_code="ANwm" +_id="AIwm" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +buffid={"BNwm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={20.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="水奴" +order="wateryminion" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nmrr","","",""} +untip={} +unubertip={} + +[AIx1] +_code="AIab" +_id="AIx1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGoldRing.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+1 所有属性)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIx2] +_code="AIab" +_id="AIx2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCirclet.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={2,0,0,0} +datac={2,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+2 所有属性)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIx3] +_code="AIab" +_id="AIx3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +datab={3,0,0,0} +datac={3,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIx4] +_code="AIab" +_id="AIx4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +datab={4,0,0,0} +datac={4,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIx5] +_code="AIab" +_id="AIx5" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHelmutPurple.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={5,0,0,0} +datac={5,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(+5 所有属性)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIxk] +_code="Absk" +_id="AIxk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBerserkForTrolls.blp" +buffid={"Bbsk","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\TrollBerserk\\TrollBeserkerTarget.mdl" +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.2,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +editorsuffix=" (物品)" +efctid={"","","",""} +effectsound="BerserkerRage" +hero=0 +herodur={12.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="狂暴愤怒" +order="berserk" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIxm] +_code="AIxm" +_id="AIxm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能提高英雄三个属性的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIxs] +_code="Aami" +_id="AIxs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSnazzyPotion.blp" +buffid={"Bams,Bam2","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={10.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="具有反魔法盾的物品" +order="antimagicshell" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AIzb] +_code="AIzb" +_id="AIzb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"Bfre","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={9.0,0.0,0.0,0.0} +datae={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="带有冰冻攻击伤害的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANab] +_code="ANab" +_id="ANab" +_max_level=3 +_type="ability" +animnames="Attack,two,Spell" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNAcidBomb.blp" +buffid={"BNab","BNab","BNab","BNab"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,12.0,12.0,12.0} +cost={75,75,75,75} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={3,4,5,4} +datad={5.0,10.0,15.0,16.0} +datae={3.0,6.5,10.0,12.0} +dataf={1.0,1.0,1.0,1.0} +dur={15.0,15.0,15.0,15.0} +efctid={"","","",""} +hero=1 +herodur={15.0,15.0,15.0,15.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.4 +missileart="Abilities\\Spells\\Other\\AcidBomb\\BottleMissile.mdl" +missilehoming=1 +missilespeed=700 +name="酸性炸弹" +order="acidbomb" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNAcidBomb.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="(|cffffcc00B|r)学习酸性炸弹 - [|cffffcc00等级 %d|r]" +researchubertip="向目标扔出一瓶酸液。在冲击之下,酸液瓶会被打碎,对周围的敌人造成一定程度的伤害。|n|n减少护甲,对于首个目标造成持续高伤害。对于周围的目标造成的伤害会稍小一些。|n持续 秒。|n|n|cffffcc00等级 1|r - 每秒最大点伤害。减少点护甲。|n|cffffcc00等级 2|r - 每秒最大点伤害。减少点护甲。|n|cffffcc00Level 3|r - 每秒最大点伤害。减少点护甲。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic,air","ground,enemy,neutral,organic,air","ground,enemy,neutral,organic,air","ground,enemy,neutral,organic,air"} +tip={"(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 1|r]","(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 2|r]","(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 3|r]"} +ubertip={"投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。|n|n减少点护甲; 具有每秒 点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。","投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。","投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。|n|n减少点护甲; 具有每秒点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANak] +_code="Afak" +_id="ANak" +_max_level=1 +_type="ability" +area={175.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNQuillSpray.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={15,0,0,0} +dataa={15.0,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={150.0,0.0,0.0,0.0} +datae={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="Q" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\QuillSprayMissile\\QuillSprayMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="刚毛飞射" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","","",""} +tip={"刚毛飞射(|cffffcc00Q|r)"} +ubertip={"增加豪猪 点伤害力并使其造成区域性伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNQuillSprayOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="Q" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ANav] +_code="AHav" +_id="ANav" +_max_level=1 +_type="ability" +area={0.5,0.5,0.5,0.5} +art="ReplaceableTextures\\CommandButtons\\BTNAvatarOn.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={5.0,5.0,5.0,5.0} +datab={500.0,500.0,500.0,500.0} +datac={20.0,20.0,20.0,20.0} +datad={0.0,0.0,0.0,0.0} +dur={60.0,60.0,60.0,60.0} +editorsuffix="(中立的)" +efctid={"","","",""} +effectsound="HowlOfTerror" +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="天神下凡" +order="avatar" +priority=0 +race="other" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNAvatar.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习天神下凡(|cffffcc00V|r)" +researchubertip="当天神下凡被激活的时候,加理瑟斯的护甲会增加点,生命值会增加点,攻击力会增加点,并具有魔法免疫技能。|n持续 秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"激活天神下凡(|cffffcc00V|r)"} +ubertip={"激活天神下凡之后给予加理瑟斯点额外的护甲,点额外的生命值,点额外的攻击力和魔法免疫技能。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNAvatarOff.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="V" +untip={"取消天神下凡(|cffffcc00V|r)"} +unubertip={""} + +[ANb2] +_code="AHbh" +_id="ANb2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBash.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={35.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={50.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 3/大锤)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="大锤" +order="bash" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"大锤"} +ubertip={"使得有%的概率让一次进攻能施放出点的额外伤害,并能在秒内让对手处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANba] +_code="ANba" +_id="ANba" +_max_level=3 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrowOnOff.blp" +buffid={"BNba,BNdm","BNba,BNdm","BNba,BNdm","BNba,BNdm"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={6,6,6,6} +dataa={2.0,10.0,20.0,20.0} +datab={1,1,1,1} +datac={80.0,80.0,80.0,80.0} +dur={2.0,2.0,2.0,2.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BlackArrow\\BlackArrowMissile.mdl" +missilehoming=1 +missilespeed=1050 +name="黑暗之箭" +order="blackarrow" +orderoff="blackarrowoff" +orderon="blackarrowon" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrow.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="增加额外的攻击力。被黑暗之箭射死的单位会变成骷髅兵。|n|n|cffffcc00等级 1|r - 增加点攻击力,骷髅兵具有点生命值。|n|cffffcc00等级 2|r - 增加点攻击力,骷髅兵具有点生命值。|n|cffffcc00等级 3|r - 增加点攻击力,骷髅兵具有点生命值。" +rng={600.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 1|r]","黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 2|r]","黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 3|r]"} +ubertip={"增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。","增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。","增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。"} +unart="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrowOnOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unitid={"ndr1","ndr2","ndr3","ndr3"} +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ANbf] +_code="ANbf" +_id="ANbf" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={125.0,120.0,125.0,125.0} +art="ReplaceableTextures\\CommandButtons\\BTNBreathOfFire.blp" +buffid={"BNbf","BNbf","BNbf","BNbf"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={70,70,70,70} +dataa={65.0,125.0,170.0,170.0} +datab={520.0,1000.0,1360.0,1360.0} +datac={375.0,375.0,375.0,375.0} +datad={300.0,300.0,300.0,300.0} +datae={7.0,14.0,21.0,21.0} +dur={5.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="火焰呼吸" +order="breathoffire" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBreathOfFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="对敌人吐出一道火焰,在一开始对其就造成伤害之后,如果对方身上有醉酒云雾的话那还能在一定时间内持续地对其造成伤害。|n持续秒。 |n|n|cffffcc00等级 1|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 2|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 3|r -最初造成点的伤害,随后造成每秒点的伤害。" +rng={375.0,375.0,375.0,375.0} +targetattachcount=0 +targs={"ground,air,structure","ground,air,structure","ground,air,structure","ground,air,structure"} +tip={"火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒 点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒 点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANbh] +_code="AHbh" +_id="ANbh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNBash.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={25.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重击" +order="bash" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"重击"} +ubertip={"给予%的概率能造成点的额外伤害并在秒内击晕敌人。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANbl] +_code="AEbl" +_id="ANbl" +_max_level=3 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +areaeffectart="Abilities\\Spells\\NightElf\\Blink\\BlinkTarget.mdl" +art="ReplaceableTextures\\CommandButtons\\BTNBearBlink.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,10.0,1.0,1.0} +cost={0,10,10,10} +dataa={1050.0,1075.0,1150.0,1150.0} +datab={150.0,200.0,200.0,200.0} +dur={0.33,0.33,0.33,0.33} +editorsuffix="(中立的)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪烁" +order="blink" +priority=0 +race="nightelf" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,99999.0,99999.0,99999.0} +specialart="Abilities\\Spells\\NightElf\\Blink\\BlinkCaster.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"闪烁(|cffffcc00B|r)"} +ubertip={"将熊传送到附近的某个区域,使得它能在战斗中自由来去。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANbr] +_code="ANbr" +_id="ANbr" +_max_level=4 +_type="ability" +animnames="spell,slam" +area={650.0,650.0,650.0,650.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"BNbr","BNbr","BNbr","BNbr"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={25.0,25.0,25.0,25.0} +cost={50,50,50,50} +dataa={10.0,20.0,30.0,40.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={10.0,10.0,10.0,10.0} +efctid={"","","",""} +hero=1 +herodur={10.0,10.0,10.0,10.0} +hotkey="R" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争咆哮" +order="battleroar" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="增加周围单位的攻击力。|n持续 秒。|n|n|cffffcc00等级 1|r - 点攻击力。|n|cffffcc00等级 2|r - 点攻击力。|n|cffffcc00等级 3|r - 点攻击力。|n|cffffcc00等级 4|r - 点攻击力。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","air,ground,friend,self","air,ground,friend,self","air,ground,friend,self"} +tip={"战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 1|r]","战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 2|r]","战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 3|r]","战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 4|r]"} +ubertip={"增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANbs] +_code="ANbs" +_id="ANbs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrow.blp" +buffid={"BNba,BNdm","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={1,0,0,0} +datac={80.0,0.0,0.0,0.0} +dur={3.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BlackArrow\\BlackArrowMissile.mdl" +missilehoming=1 +missilespeed=1050 +name="黑暗之球" +order="blackarrow" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ndr1","","",""} +untip={} +unubertip={} + +[ANbu] +_code="ANbu" +_id="ANbu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBasicStruct.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造(中立)" +order="build" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANc1] +_code="ANcs" +_id="ANc1" +_max_level=3 +_type="ability" +animnames="spell,one" +area={230.0,230.0,230.0,230.0} +art="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +buffid={"BNcs","BNcs","BNcs","BNcs"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={70,70,70,70} +dataa={8.75,16.25,25.0,25.0} +datab={0.25,0.25,0.25,0.25} +datac={6,12,18,24} +datad={105.0,195.0,300.0,300.0} +datae={1.0,1.0,1.0,1.0} +dataf={1.01,1.01,1.01,1.01} +dur={1.01,1.01,1.01,1.01} +editorsuffix=" (Upgrade Level 1)" +efctid={"XNcs","XNcs","XNcs","XNcs"} +hero=1 +herodur={1.01,1.01,1.01,1.01} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.2 +missileart="Abilities\\Spells\\Other\\TinkerRocket\\TinkerRocketMissile.mdl" +missilehoming=1 +missilespeed=700 +name="火箭群" +order="clusterrockets" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure"} +tip={"(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r]"} +ubertip={"对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANc2] +_code="ANcs" +_id="ANc2" +_max_level=3 +_type="ability" +animnames="spell,one" +area={260.0,260.0,260.0,260.0} +art="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +buffid={"BNcs","BNcs","BNcs","BNcs"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={70,70,70,70} +dataa={8.75,16.25,25.0,25.0} +datab={0.25,0.25,0.25,0.25} +datac={6,12,18,24} +datad={105.0,195.0,300.0,300.0} +datae={1.0,1.0,1.0,1.0} +dataf={1.01,1.01,1.01,1.01} +dur={1.01,1.01,1.01,1.01} +editorsuffix=" (Upgrade Level 2)" +efctid={"XNcs","XNcs","XNcs","XNcs"} +hero=1 +herodur={1.01,1.01,1.01,1.01} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.2 +missileart="Abilities\\Spells\\Other\\TinkerRocket\\TinkerRocketMissile.mdl" +missilehoming=1 +missilespeed=700 +name="火箭群" +order="clusterrockets" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure"} +tip={"(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r]"} +ubertip={"对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANc3] +_code="ANcs" +_id="ANc3" +_max_level=3 +_type="ability" +animnames="spell,one" +area={290.0,290.0,290.0,290.0} +art="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +buffid={"BNcs","BNcs","BNcs","BNcs"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={70,70,70,70} +dataa={8.75,16.25,25.0,25.0} +datab={0.25,0.25,0.25,0.25} +datac={6,12,18,24} +datad={105.0,195.0,300.0,300.0} +datae={1.0,1.0,1.0,1.0} +dataf={1.01,1.01,1.01,1.01} +dur={1.01,1.01,1.01,1.01} +editorsuffix=" (Upgrade Level 3)" +efctid={"XNcs","XNcs","XNcs","XNcs"} +hero=1 +herodur={1.01,1.01,1.01,1.01} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.2 +missileart="Abilities\\Spells\\Other\\TinkerRocket\\TinkerRocketMissile.mdl" +missilehoming=1 +missilespeed=700 +name="火箭群" +order="clusterrockets" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure"} +tip={"(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r]"} +ubertip={"对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANca] +_code="ANca" +_id="ANca" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCleavingAttack.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.3,0.55,0.8,0.8} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="分裂攻击" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCleavingAttack.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习分裂攻击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="深渊魔王同时对多个敌人单位造成伤害。|n|n|cffffcc00等级 1|r - %溅射伤害。|n|cffffcc00等级 2|r - %溅射伤害。|n|cffffcc00等级 3|r - %溅射伤害。" +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Other\\Cleave\\CleaveDamageTarget.mdl" +specialattach="chest" +targetattachcount=0 +targs={"ground,enemy,neutral","ground,enemy,neutral","ground,enemy,neutral","ground,enemy,neutral"} +tip={"分裂攻击 - [|cffffcc00等级 1|r]","分裂攻击 - [|cffffcc00等级 2|r]","分裂攻击 - [|cffffcc00等级 3|r]"} +ubertip={"深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。","深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。","深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANcf] +_code="ANbf" +_id="ANcf" +_max_level=4 +_type="ability" +animnames="spell,slam" +area={150.0,150.0,150.0,150.0} +art="ReplaceableTextures\\CommandButtons\\BTNBreathOfFire.blp" +buffid={"BNbf","BNbf","BNbf","BNbf"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={75,75,75,75} +dataa={50.0,100.0,150.0,225.0} +datab={99999.0,99999.0,99999.0,99999.0} +datac={500.0,800.0,800.0,800.0} +datad={250.0,150.0,150.0,150.0} +datae={7.0,14.0,21.0,30.0} +dur={5.0,5.0,5.0,5.0} +editorsuffix="(陈)" +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="F" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="火焰呼吸" +order="breathoffire" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNBreathOfFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="对敌人吐出一道火焰,在一开始对其就造成伤害之后,如果对方身上有醉酒云雾的话那还能在一定时间内持续地对其造成伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 2|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 3|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 4|r - 最初造成点的伤害随后造成每秒点的伤害。" +rng={500.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"ground,air,structure","ground,air,structure","ground,air,structure","ground,air,structure"} +tip={"火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r]","火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 4|r]"} +ubertip={"对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANch] +_code="ANch" +_id="ANch" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCharm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={45.0,30.0,30.0,30.0} +cost={150,125,125,125} +dataa={5,5,5,5} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="符咒" +order="charm" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNCharm.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习符咒(|cffffcc00C|r)" +researchubertip="控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。" +rng={700.0,700.0,700.0,700.0} +targetart="Abilities\\Spells\\Other\\Charm\\CharmTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"air,ground,nonhero,enemy,neutral,organic","air,ground,nonhero,enemy,neutral,organic","air,ground,nonhero,enemy,neutral,organic","air,ground,nonhero,enemy,neutral,organic"} +tip={"符咒(|cffffcc00C|r)"} +ubertip={"控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANcl] +_code="ANcl" +_id="ANcl" +_max_level=3 +_type="ability" +animnames="spell,channel" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathPact.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={180.0,180.0,180.0,180.0} +datab={0,0,0,0} +datac={0,0,0,0} +datad={0.98,0.98,0.98,0.98} +datae={1,1,1,1} +dataf={"channel","","",""} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="通魔" +order="channel" +priority=0 +race="creeps" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,500.0,500.0,500.0} +targetart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={"通魔(|cffffcc00C|r)"} +ubertip={"通向强大的守卫魔法力量。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANcr] +_code="ANcr" +_id="ANcr" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNChemicalRage.blp" +buffid={"BNcr","BNcr","BNcr","BNcr"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,30.0,30.0,30.0} +cost={25,25,25,25} +dataa={"Nalc","Nalc","Nalc","Nalc"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.5,0.5,0.5,0.5} +dataf={0.25,0.75,1.25,1.25} +dur={0.35,0.35,0.35,0.35} +efctid={"","","",""} +hero=1 +herodur={15.0,15.0,15.0,15.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="化学风暴" +order="chemicalrage" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNChemicalRage.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="(|cffffcc00R|r)学习化学风暴 - [|cffffcc00等级 %d|r]" +researchubertip="炼金术士让其食人魔进入了一种狂暴的状态,从而提高了%的移动速度和一定的攻击速度。|n持续 秒。|n|n|cffffcc00等级 1|r – 提高%的攻击速度。|n|cffffcc00等级 2|r – 提高% 的攻击速度。|n|cffffcc00等级 3|r – 提高% 的攻击速度。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"self","","",""} +tip={"(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 1|r]","(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 2|r]","(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 3|r]"} +ubertip={"炼金术士让其食人魔进入了一种狂暴的状态,从而提高了%的移动速度和% 的攻击速度,持续时间 秒。","炼金术士让其食人魔进入了一种狂暴的状态,从而提高了% 的攻击速度,持续时间 秒。","炼金术士让其食人魔进入了一种狂暴的状态,从而提高了% 的移动速度和% 的攻击速度,持续时间 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Nalm","Nal2","Nal3","Nal3"} +untip={} +unubertip={} + +[ANcs] +_code="ANcs" +_id="ANcs" +_max_level=3 +_type="ability" +animnames="spell,one" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +buffid={"BNcs","BNcs","BNcs","BNcs"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={70,70,70,70} +dataa={8.75,16.25,25.0,25.0} +datab={0.25,0.25,0.25,0.25} +datac={6,12,18,24} +datad={105.0,195.0,300.0,300.0} +datae={1.0,1.0,1.0,1.0} +dataf={1.01,1.01,1.01,1.01} +dur={1.01,1.01,1.01,1.01} +efctid={"XNcs","XNcs","XNcs","XNcs"} +hero=1 +herodur={1.01,1.01,1.01,1.01} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.2 +missileart="Abilities\\Spells\\Other\\TinkerRocket\\TinkerRocketMissile.mdl" +missilehoming=1 +missilespeed=700 +name="火箭群" +order="clusterrockets" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip=" (|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure","ground,enemy,neutral,structure"} +tip={"(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r]","(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r]"} +ubertip={"对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANd1] +_code="ANde" +_id="ANd1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDemolish.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (Upgrade Level 1)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +order="demolish" +priority=0 +race="creeps" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,structure","","",""} +tip={"粉碎 - 升级 等级 1"} +ubertip={"使得对于建筑物的攻击加倍的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANd2] +_code="ANde" +_id="ANd2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDemolish.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (Upgrade Level 2)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +order="demolish" +priority=0 +race="creeps" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,structure","","",""} +tip={"粉碎 - 升级 等级 2"} +ubertip={"使得对于建筑物的攻击加倍的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANd3] +_code="ANde" +_id="ANd3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDemolish.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={3.5,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (Upgrade Level 3)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +order="demolish" +priority=0 +race="creeps" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,structure","","",""} +tip={"粉碎 - 升级 等级 3"} +ubertip={"使得对于建筑物的攻击加倍的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANdb] +_code="ANdb" +_id="ANdb" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDrunkenDodge.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,10.0,10.0,10.0} +datab={2.0,3.0,4.0,5.0} +datac={0.0,0.0,0.0,0.0} +datad={0.07,0.14,0.21,0.2} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="醉拳" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDrunkenDodge.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习醉拳(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="给予一定的概率来躲避来自敌人的攻击和%的概率来施放额外的攻击伤害。|n|n|cffffcc00等级 1|r - %的概率躲避攻击,施放倍于普通伤害的攻击。|n|cffffcc00等级 2|r - %的概率躲避攻击,施放倍于普通伤害的攻击。|n|cffffcc00等级 3|r - %的概率躲避攻击,施放倍于普通伤害的攻击。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"醉拳 - [|cffffcc00等级 1|r]","醉拳 - [|cffffcc00等级 2|r]","醉拳 - [|cffffcc00等级 3|r]"} +ubertip={"给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。","给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。","给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANdc] +_code="ANdc" +_id="ANdc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"BNdc","BNdc","BNdc","BNdc"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={5.0,5.0,5.0,5.0} +casterattachcount=0 +checkdep=1 +cool={0.1,0.1,0.1,0.1} +cost={0,0,0,0} +dataa={"commoner","commoner","commoner","commoner"} +dur={6.0,6.0,6.0,6.0} +editorsuffix=" (马哥尼斯)" +efctid={"","","",""} +hero=1 +herodur={6.0,6.0,6.0,6.0} +hotkey="K" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="黑暗转换" +order="darkconversion" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="K" +researchtip="学习黑暗转换(|cffffcc00K|r)" +researchubertip="让一个村民陷入睡眠,并将其变成僵尸。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero"} +tip={"黑暗转换(|cffffcc00K|r)"} +ubertip={"让一个村民陷入睡眠,并将其变成僵尸。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nzom","nzom","nzom","nzom"} +untip={} +unubertip={} + +[ANde] +_code="ANde" +_id="ANde" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDemolish.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +order="demolish" +priority=0 +race="creeps" +reqlevel=1 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,structure","","",""} +tip={"粉碎"} +ubertip={"使得对于建筑物的攻击加倍的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANdh] +_code="ANdh" +_id="ANdh" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNStrongDrink.blp" +buffid={"BNdh","BNdh","BNdh","BNdh"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,12.0,12.0,12.0} +cost={70,70,70,70} +dataa={0,0,0,0} +datab={0.45,0.65,0.8,0.8} +datac={0.15,0.3,0.5,0.5} +datad={0.0,0.0,0.0,0.0} +dur={12.0,12.0,12.0,12.0} +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="D" +item=0 +levels=3 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Spells\\Other\\StrongDrink\\BrewmasterMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="醉酒云雾" +order="drunkenhaze" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNStrongDrink.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +researchubertip="使敌方单位被酒精溅湿,造成其移动速度减慢,并使其攻击容易落空。当单位被施以醉酒云雾后再被火焰吐息积中,他们会被点燃并随着时间的流逝而受到伤害。|n持续秒钟 |n|n|cffffcc00等级1|r - %移动速度减缓,%落空机率。|n|cffffcc00等级2|r - %移动速度减缓,%落空机率。|n|cffffcc00等级3|r - %移动速度减缓,%落空机率。" +rng={550.0,550.0,550.0,550.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 1|r]","醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 2|r]","醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 3|r]"} +ubertip={"用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANdo] +_code="ANdo" +_id="ANdo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDoom.blp" +buffid={"BNdo,BNdi","BNdo,BNdi","BNdo,BNdi","BNdo,BNdi"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={150,125,125,125} +dataa={40.0,5.0,5.0,5.0} +datab={1,1,1,1} +datac={120.0,80.0,80.0,80.0} +datad={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔鬼缠身" +order="doom" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNDoom.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习魔鬼缠身(|cffffcc00D|r)" +researchubertip="使一个目标遭到魔鬼缠身。被折磨的单位不能施放任何魔法并且每秒受到点伤害直到他死去。在他死亡时,一个巨大的魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +rng={650.0,400.0,400.0,400.0} +targetattachcount=0 +targs={"air,ground,nonhero,organic","air,ground,nonhero,organic","air,ground,nonhero,organic","air,ground,nonhero,organic"} +tip={"魔鬼缠身(|cffffcc00D|r)"} +ubertip={"使一个目标遭到魔鬼缠身。被折磨的单位不能施放任何魔法并且每秒受到点伤害直到他死去。在他死亡时,一个巨大的魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nba2","nba2","nba2","nba2"} +untip={} +unubertip={} + +[ANdp] +_code="ANdp" +_id="ANdp" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDizzy.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={100.0,100.0,100.0,100.0} +cost={0,0,0,0} +dataa={"nbal,nfel","nbal,nfel","nbal,nfel","nbal,nfel"} +datab={3,3,5,5} +datac={5,6,6,6} +dur={1.0,1.0,1.0,1.0} +editorsuffix=" (阿克蒙德)" +efctid={"","","",""} +effectart="Abilities\\Spells\\Demon\\DarkPortal\\DarkPortalTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="黑暗之门" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDizzy.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习黑暗之门(|cffffcc00D|r)" +researchubertip="开启一扇黑暗之门,从中会走出各种各样的恶魔来为阿克蒙德效力。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"","","",""} +tip={"黑暗之门(|cffffcc00D|r)"} +ubertip={"开启一扇黑暗之门,从中会走出各种各样的恶魔来为阿克蒙德效力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANdr] +_code="AHdr" +_id="ANdr" +_max_level=3 +_type="ability" +animnames="spell,channel" +area={800.0,800.0,800.0,800.0} +art="ReplaceableTextures\\CommandButtons\\BTNLifeDrain.blp" +buffid={"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm","Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={75,75,75,75} +dataa={25.0,40.0,55.0,50.0} +datab={0.0,0.0,0.0,0.0} +datac={1.0,1.0,1.0,1.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={0.0,0.0,0.0,0.0} +datai={0.0,0.0,0.0,0.0} +dur={8.0,8.0,8.0,8.0} +efctid={"","","",""} +effectsoundlooped="DrainLoop" +hero=1 +herodur={8.0,8.0,8.0,8.0} +hotkey="D" +item=0 +levels=3 +levelskip=0 +lightningeffect="DRAB,DRAL,DRAM" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命汲取" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNLifeDrain.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习生命汲取(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +researchubertip="汲取目标单位一定点数的生命值并将其给予黑暗游侠。|n持续秒。|n|n|cffffcc00等级 1|r - 每秒汲取点。|n|cffffcc00等级 2|r - 每秒汲取点。|n|cffffcc00等级 3|r - 每秒汲取点。 " +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"air,ground,organic","air,ground,organic","air,ground,organic","air,ground,organic"} +tip={"生命汲取(|cffffcc00D|r) - [|cffffcc00等级 1|r]","生命汲取(|cffffcc00D|r) - [|cffffcc00等级 2|r]","生命汲取(|cffffcc00D|r) - [|cffffcc00等级 3|r]"} +ubertip={"汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。","汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。","汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANef] +_code="ANef" +_id="ANef" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={128.0,128.0,128.0,128.0} +art="ReplaceableTextures\\CommandButtons\\BTNStormEarth&Fire.blp" +buffid={"BNef","BNef","BNef","BNef"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={"npn1,npn2,npn3","npn1,npn2,npn3","npn1,npn2,npn3","npn1,npn2,npn3"} +dur={45.0,45.0,45.0,45.0} +efctid={"","","",""} +effectsound="StormEarthFireSound" +hero=1 +herodur={45.0,45.0,45.0,45.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.75 +missileart="Units\\Creeps\\FirePandarenBrewmaster\\FirePandarenBrewmaster_Missile.mdl,Units\\Creeps\\StormPandarenBrewmaster\\StormPandarenBrewmaster_Missile.mdl,Units\\Creeps\\EarthPandarenBrewmaster\\EarthPandarenBrewmaster_Missile.mdl" +missilehoming=0 +missilespeed=150 +name="火土风暴" +order="elementalfury" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStormEarth&Fire.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习火土风暴(|cffffcc00E|r)" +researchubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。" +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"学习火土风暴(|cffffcc00E|r)"} +ubertip={"熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANeg] +_code="ANeg" +_id="ANeg" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\PASBTNEngineeringUpgrade.blp" +buffid={"BNeg","BNeg","BNeg","BNeg"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +datab={2.0,4.0,6.0,9.0} +datac={"ANsy,ANs1","ANs1,ANs2","ANs2,ANs3","ANs2,ANs3"} +datad={"ANcs,ANc1","ANc1,ANc2","ANc2,ANc3","ANc2,ANc3"} +datae={"ANrg,ANg1","ANg1,ANg2","ANg2,ANg3","ANg2,ANg3"} +dataf={"ANde,ANd1","ANd1,ANd2","ANd2,ANd3","ANd2,ANd3"} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="工程升级" +order="engineeringupgrade" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNEngineeringUpgrade.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="(|cffffcc00E|r)学习工程升级- [|cffffcc00等级 %d|r]" +researchubertip="提高修补匠的技能。|n|n|cffffcc00火箭群|r - 大区域|n|cffffcc00口袋工厂|r – 能更快地建造出人工地精。|n|cffffcc00机器人地精|r – 增加护甲和力量。 |n|n同时提高攻击力和加快修补匠的移动速度。|n|n|cffffcc00等级 1|r - + 攻击力, +% 移动速度。|n|cffffcc00等级 2|r - + 攻击力, +% 移动速度。|n|cffffcc00等级 3|r - + 攻击力, +% 移动速度。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"工程升级 - [|cffffcc00等级 1|r]","工程升级 - [|cffffcc00等级 2|r]","工程升级 - [|cffffcc00等级 3|r]"} +ubertip={"改进修补匠的技能,增加其点的攻击力和提高其%的移动速度。","改进修补匠的技能,增加其点的攻击力和提高其% 的移动速度。","改进修补匠的技能,增加其点的攻击力和提高其% 的移动速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANen] +_code="Aens" +_id="ANen" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +buffid={"Bena,Beng","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Ensnare\\EnsnareMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="诱捕" +order="ensnare" +priority=0 +race="naga" +reqlevel=0 +requires="Rnen" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,enemy,neutral","","",""} +tip={"诱捕(|cffffcc00E|r)"} +ubertip={"能将一个目标空中单位固定在地面上,使其在秒内不能移动。被诱捕的空中单位可以当作地面单位进行攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANfa] +_code="AHca" +_id="ANfa" +_max_level=3 +_type="ability" +animnames="attack" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOn.blp" +buffid={"BHca,Bcsd","BHca,Bcsd","BHca,Bcsd","BHca,Bcsd,Bcsi"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={10,10,10,7} +dataa={5.0,10.0,15.0,15.0} +datab={0.3,0.5,0.7,0.7} +datac={0.3,0.5,0.7,0.7} +datad={7,7,7,7} +dur={5.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={1.5,1.5,1.5,1.5} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Spells\\Other\\FrostArrows\\NagaColdArrowMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="霜冻之箭" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNColdArrows.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="每次攻击带有冰冻效果,造成额外的伤害。使敌人单位减慢攻击和移动速度。 |n|n|cffffcc00等级 1|r - % 攻击速度, % 移动速度, 点额外伤害。 |n|cffffcc00等级 2|r - % 攻击速度, % 移动速度,点额外伤害。 |n|cffffcc00等级 3|r - % 攻击速度, % 移动速度,点额外伤害。" +rng={600.0,600.0,600.0,600.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"霜冻之箭(|cffffcc00R|r)- [|cffffcc00等级 1|r]","霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 2|r]","霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 3|r]"} +ubertip={"每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNColdArrowsOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ANfb] +_code="ANfb" +_id="ANfb" +_max_level=3 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFireBolt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={75,75,75,75} +dataa={100.0,150.0,200.0,200.0} +dur={2.0,3.0,4.0,4.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=1 +herodur={2.0,3.0,4.0,4.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="霹雳闪电" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFireBolt.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习霹雳闪电(|cffffcc00B|r),等级 %d" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"air,ground,organic,enemy,neutral","air,ground,organic,enemy,neutral","air,ground,organic,enemy,neutral","air,ground,organic,enemy,neutral"} +tip={"霹雳闪电(|cffffcc00B|r)"} +ubertip={"对敌人投掷出一道霹雳闪电将其击晕。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANfd] +_code="ANfd" +_id="ANfd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,15.0,15.0,15.0} +cost={0,0,0,0} +dataa={0.25,0.25,0.25,0.25} +datab={1.0,1.0,1.0,1.0} +datac={500.0,500.0,500.0,500.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (阿克蒙德)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +lightningeffect="AFOD" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡之指" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习死亡之指(|cffffcc00F|r)" +researchubertip="能立刻杀死某个生物或者摧毁某个建筑物。完全地摧毁它。" +rng={800.0,800.0,800.0,800.0} +targetart="Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient","air,ground,nonhero,structure,ancient,nonancient"} +tip={"死亡之指(|cffffcc00F|r)"} +ubertip={"能立刻杀死某个生物或者摧毁某个建筑物。完全地摧毁它。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANfl] +_code="ANfl" +_id="ANfl" +_max_level=3 +_type="ability" +area={125.0,125.0,125.0,125.0} +art="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={11.0,11.0,11.0,11.0} +cost={110,110,110,110} +dataa={85.0,160.0,250.0,250.0} +datab={3,3,3,3} +datac={900.0,900.0,900.0,900.0} +datad={300.0,300.0,300.0,300.0} +dur={0.7,0.7,0.7,0.7} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +lightningeffect="FORK" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="叉状闪电" +order="forkedlightning" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤一道锥形闪电伤害女海巫面前的多个敌人。|n|n|cffffcc00等级 1|r - 伤害/单位。|n|cffffcc00等级 2|r - 伤害/单位。|n|cffffcc00等级 3|r - 伤害力/单位。" +rng={600.0,600.0,600.0,600.0} +specialart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic"} +tip={"叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 1|r]","叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 2|r]","叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。","召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。","召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANfs] +_code="AHfs" +_id="ANfs" +_max_level=1 +_type="ability" +animnames="spell,channel" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +buffid={"BHfs","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={1.33,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={0.33,0.0,0.0,0.0} +datac={25.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={0.75,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"XHfs","","",""} +effectart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeTarget.mdl" +hero=0 +herodur={2.67,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="烈焰风暴" +order="flamestrike" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrike1.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike2.mdl,Abilities\\Spells\\Human\\FlameStrike\\FlameStrike.mdl" +targetattachcount=0 +targs={"ground,enemy,neutral,friend,structure,self","","",""} +tip={"烈焰风暴(|cffffcc00F|r)"} +ubertip={"召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成75点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANfy] +_code="ANfy" +_id="ANfy" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +buffid={"BNcg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datab={1100.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="工厂" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"工厂"} +ubertip={"工厂."} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ncgb","","",""} +untip={} +unubertip={} + +[ANg1] +_code="ANrg" +_id="ANg1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,1.0,1.0,1.0} +cost={25,25,25,25} +dataa={"Ntin","Ntin","Ntin","Ntin"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={7,10,10,10} +dataf={2,4,4,4} +dur={1.5,1.5,1.5,1.5} +editorsuffix=" (Upgrade Level 1)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="机器人地精" +order="robogoblin" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="(|cffffcc00b|r)学习机器人地精" +researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00b|r)机器人地精"} +ubertip={"让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="T" +unitid={"Nrob","Nrob","Nrob","Nrob"} +unorder="unrobogoblin" +untip={"(|cffffcc00T|r)恢复到修补匠形态"} +unubertip={"恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。"} + +[ANg2] +_code="ANrg" +_id="ANg2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,1.0,1.0,1.0} +cost={25,25,25,25} +dataa={"Ntin","Ntin","Ntin","Ntin"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={9,13,13,13} +dataf={3,5,5,5} +dur={1.5,1.5,1.5,1.5} +editorsuffix=" (Upgrade Level 2)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="机器人地精" +order="robogoblin" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="(|cffffcc00b|r)学习机器人地精" +researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00b|r)机器人地精"} +ubertip={"让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="T" +unitid={"Nrob","Nrob","Nrob","Nrob"} +unorder="unrobogoblin" +untip={"(|cffffcc00T|r)恢复到修补匠形态"} +unubertip={"恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。"} + +[ANg3] +_code="ANrg" +_id="ANg3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,1.0,1.0,1.0} +cost={25,25,25,25} +dataa={"Ntin","Ntin","Ntin","Ntin"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={11,16,16,16} +dataf={4,6,6,6} +dur={1.5,1.5,1.5,1.5} +editorsuffix=" (Upgrade Level 3)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="机器人地精" +order="robogoblin" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="(|cffffcc00b|r)学习机器人地精" +researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00b|r)机器人地精"} +ubertip={"让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="T" +unitid={"Nrob","Nrob","Nrob","Nrob"} +unorder="unrobogoblin" +untip={"(|cffffcc00T|r)恢复到修补匠形态"} +unubertip={"恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。"} + +[ANha] +_code="Ahar" +_id="ANha" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={20,0,0,0} +datac={10,0,0,0} +dur={1.0,0.0,0.0,0.0} +editorsuffix=" (Neutral)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={116.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从金矿处采集黄金资源,从树木上砍伐木材资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="E" +untip={"返送资源(|cffffcc00E|r)"} +unubertip={"将采集到的资源返送到最近的潮汐神庙。"} + +[ANhs] +_code="ANhs" +_id="ANhs" +_max_level=3 +_type="ability" +animnames="spell,looping" +area={250.0,250.0,250.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingSpray.blp" +buffid={"BNhs","BNhs","BNhs","BNhs"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={75,75,75,75} +dataa={40.0,55.0,70.0,70.0} +datab={1.0,1.0,1.0,1.0} +datac={6,6,6,6} +datad={280.0,385.0,490.0,490.0} +datae={1.0,1.0,1.0,1.0} +dataf={3,4,5,10} +dur={0.0,0.0,0.0,0.0} +efctid={"XNhs","XNhs","XNhs","XNhs"} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.4 +missileart="Abilities\\Spells\\Other\\HealingSpray\\HealBottleMissile.mdl" +missilehoming=0 +missilespeed=700 +name="医疗气雾" +order="healingspray" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHealingSpray.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="(|cffffcc00e|r)学习医疗气雾 - [|cffffcc00等级 %d|r]" +researchubertip="喷出迷雾对一定区域的单位进行治疗。|n|n|cffffcc00等级 1|r - 阵迷雾,每阵迷雾能医治点伤害。|n|cffffcc00等级 2|r - 阵迷雾,每阵迷雾能医治点伤害。 |n|cffffcc00等级 3|r - 阵迷雾,每阵迷雾能医治点伤害。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,air,organic","ground,air,organic","ground,air,organic","ground,air,organic"} +tip={"(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 1|r]","(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 2|r]","(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 3|r]"} +ubertip={"喷出 阵医疗迷雾。每阵迷雾能医治点的伤害。","喷出 点的伤害。","喷出阵医疗迷雾。每阵迷雾能医治点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANht] +_code="ANht" +_id="ANht" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={500.0,500.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNHowlOfTerror.blp" +buffid={"BNht","BNht","BNht","BNht"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\HowlOfTerror\\HowlCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={12.0,12.0,12.0,12.0} +cost={75,75,75,75} +dataa={0.3,0.4,0.5,0.45} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={15.0,15.0,15.0,15.0} +efctid={"","","",""} +hero=1 +herodur={15.0,15.0,15.0,15.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恐怖嚎叫" +order="howlofterror" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHowlOfTerror.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害力。|n持续秒。|n|n|cffffcc00等级 1|r - 攻击减少%。|n|cffffcc00等级 2|r - 攻击减少%。|n|cffffcc00等级 3|r - 攻击减少%。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 1|r]","恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 2|r]","恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 3|r]"} +ubertip={"深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。","深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。","深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANhw] +_code="AOhw" +_id="ANhw" +_max_level=4 +_type="ability" +animnames="spell,throw" +area={500.0,500.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWave.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={90,90,90,90} +dataa={130.0,215.0,300.0,425.0} +datab={3,4,5,6} +datac={0.25,0.25,0.25,0.25} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(洛克汗)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=4 +levelskip=0 +lightningeffect="HWPB,HWSB" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗波" +order="healingwave" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHealingWave.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习医疗波(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一道能进行跳跃的医疗能量波,每次跳跃都会削弱医疗波的医疗能力。|n|n|cffffcc00等级 1|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 2|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 3|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 4|r - 恢复点生命值,跳跃次。" +rng={700.0,700.0,700.0,700.0} +targetart="Abilities\\Spells\\Orc\\HealingWave\\HealingWaveTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic"} +tip={"医疗波(|cffffcc00E|r) - [|cffffcc00等级 1|r]","医疗波(|cffffcc00E|r) - [|cffffcc00等级 2|r]","医疗波(|cffffcc00E|r) - [|cffffcc00等级 3|r]","医疗波(|cffffcc00E|r) - [|cffffcc00等级 4|r]"} +ubertip={"召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANhx] +_code="AOhx" +_id="ANhx" +_max_level=4 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +buffid={"BOhx","BOhx","BOhx","BOhx"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={7.0,7.0,7.0,7.0} +cost={70,70,70,25} +dataa={99,99,99,99} +datab={"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac"} +datac={"nalb,nvul,nsno","nalb,nvul,nsno","nalb,nvul,nsno","nalb,nvul,nsno"} +datad={"nsha,npng","nsha,npng","nsha,npng","nsha,npng"} +datae={"nshw,npnw","nshw,npnw","nshw,npnw","nshw,npnw"} +dur={15.0,30.0,45.0,45.0} +editorsuffix="(洛克汗)" +efctid={"","","",""} +hero=1 +herodur={4.0,5.0,6.0,6.0} +hotkey="X" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="妖术" +order="hex" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="X" +researchtip="学习妖术(|cffffcc00X|r) - [|cffffcc00等级 %d|r]" +researchubertip="将敌方某个单位变成一种随机的小动物。|n|n|cffffcc00等级 1|r - 消耗点魔法,持续秒。|n|cffffcc00等级 2|r - 消耗点魔法,持续秒。|n|cffffcc00等级 3|r - 消耗点魔法,持续秒。|n|cffffcc00等级 4|r - 消耗点魔法,持续秒。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"妖术(|cffffcc00X|r) - [|cffffcc00等级 1|r]","妖术(|cffffcc00X|r) - [|cffffcc00等级 2|r]","妖术(|cffffcc00X|r) - [|cffffcc00等级 3|r]","妖术(|cffffcc00X|r) - [|cffffcc00等级 4|r]"} +ubertip={"将某个敌方单位变成随机的一种小动物,持续秒。","T将某个敌方单位变成随机的一种小动物,持续秒。","将某个敌方单位变成随机的一种小动物,持续秒。","将某个敌方单位变成随机的一种小动物,持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANia] +_code="ANia" +_id="ANia" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNIncinerateOn.blp" +buffid={"BNic","BNic","BNic","BNic"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={6,6,6,6} +dataa={1.0,2.0,3.0,9.0} +datab={30.0,45.0,60.0,80.0} +datac={90.0,90.0,100.0,100.0} +datad={15.0,22.0,30.0,40.0} +datae={180.0,180.0,180.0,200.0} +dataf={0.2,0.2,0.2,0.2} +dur={2.0,2.0,2.0,2.0} +editorsuffix=" (箭矢)" +efctid={"","","",""} +hero=1 +herodur={2.0,2.0,2.0,2.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Abilities\\Weapons\\LordofFlameMissile\\LordofFlameMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="燃灰" +order="incineratearrow" +orderoff="incineratearrowon" +orderon="incineratearrowon" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNIncinerate.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="(|cffffcc00c|r)燃灰- [|cffffcc00等级 %d|r]" +researchubertip="每次攻击都带有火焰伤害。第一次攻击将带有一定的附加伤害,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 2|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 3|r - 附加伤害,燃灰伤害。" +rng={550.0,550.0,550.0,550.0} +targetattachcount=0 +targs={"enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient"} +tip={"(|cffffcc00c|r)燃灰 - [|cffffcc00等级 1|r]","(|cffffcc00c|r)燃灰 - [|cffffcc00等级 2|r]","(|cffffcc00c|r)燃灰 - [|cffffcc00等级 3|r]"} +ubertip={"每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次是两倍,第三次是三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNIncinerateOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ANic] +_code="ANic" +_id="ANic" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNIncinerate.blp" +buffid={"BNic","BNic","BNic","BNic"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,2.0,3.0,9.0} +datab={30.0,45.0,60.0,80.0} +datac={90.0,90.0,100.0,100.0} +datad={15.0,22.0,30.0,40.0} +datae={180.0,180.0,180.0,200.0} +dataf={0.2,0.2,0.2,0.2} +dur={2.0,2.0,2.0,2.0} +efctid={"","","",""} +hero=1 +herodur={2.0,2.0,2.0,2.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Abilities\\Weapons\\LordofFlameMissile\\LordofFlameMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="燃灰" +order="incinerate" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNIncinerate.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="(|cffffcc00c|r)燃灰- [|cffffcc00等级 %d|r]" +researchubertip="每次攻击都带有火焰伤害。第一次攻击将带有一定的附加伤害,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 2|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 3|r - 附加伤害,燃灰伤害。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient","enemy,neutral,organic,nonancient"} +tip={"燃灰 - [|cffffcc00等级 1|r]","燃灰 - [|cffffcc00等级 2|r]","燃灰 - [|cffffcc00等级 3|r]"} +ubertip={"每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次是两倍,第三次是三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANin] +_code="ANin" +_id="ANin" +_max_level=1 +_type="ability" +area={250.0,250.0,250.0,250.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +buffid={"BNin","BNin","BNin","BNin"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={175,175,175,175} +dataa={50.0,50.0,50.0,50.0} +datab={360.0,360.0,360.0,360.0} +datac={1.0,1.0,1.0,1.0} +dur={4.0,4.0,4.0,4.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectart="Units\\Demon\\Infernal\\InfernalBirth.mdl" +hero=1 +herodur={2.0,2.0,2.0,2.0} +hotkey="I" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地狱火" +order="inferno" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="I" +researchtip="学习地狱火(|cffffcc00I|r)" +rng={900.0,900.0,900.0,900.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral"} +tip={"地狱火(|cffffcc00I|r)"} +ubertip={"召唤出一地狱火恶魔从天而降,对一定区域内的敌人造成伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ninf","ninf","ninf","ninf"} +untip={} +unubertip={} + +[ANlm] +_code="ANlm" +_id="ANlm" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNLavaSpawn.blp" +buffid={"BNlm","BNlm","BNlm","BNlm"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={32.0,32.0,32.0,35.0} +cost={150,150,150,150} +dataa={1,1,1,1} +datab={5.0,5.0,5.0,5.0} +datac={15,15,15,15} +datad={0.5,0.5,0.5,0.5} +datae={12.0,12.0,12.0,12.0} +dataf={3,3,3,3} +dur={70.0,70.0,70.0,60.0} +efctid={"","","",""} +hero=1 +herodur={70.0,70.0,70.0,60.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤炎魔" +order="slimemonster" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNLavaSpawn.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="(|cffffcc00w|r)学习召唤炎魔 - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n持续 秒。|n|n|cffffcc00等级 1|r - 生命值, - 攻击力。|n|cffffcc00等级 2|r - 生命值, - 攻击力。|n|cffffcc00等级 3|r - 生命值, - 攻击力。|n|n|cffffcc00能攻击地面和空中单位。|r" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,neutral,air,ground,ward","enemy,neutral,air,ground,ward","enemy,neutral,air,ground,ward","enemy,neutral,air,ground,ward"} +tip={"(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 1|r]","(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 2|r]","(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 3|r]"} +ubertip={"召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nlv1","nlv2","nlv3","nlv3"} +untip={} +unubertip={} + +[ANmo] +_code="ANmo" +_id="ANmo" +_max_level=3 +_type="ability" +animnames="stand,channel" +area={300.0,400.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +buffid={"ANmd","ANmd","ANmd","ANmd"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={75,75,75,75} +dataa={20.0,20.0,20.0,20.0} +datab={1.5,1.5,1.5,1.5} +datac={0.35,0.35,0.35,0.35} +dur={12.0,15.0,15.0,15.0} +efctid={"XNmo","XNmo","XNmo","XNmo"} +hero=1 +herodur={12.0,15.0,15.0,15.0} +hotkey="N" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="季风" +order="monsoon" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习季风(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +researchubertip="在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 小型的区域。|n|cffffcc00等级 2|r - 中等大小的区域。|n|cffffcc00等级 3|r - 大型的区域。" +rng={500.0,300.0,300.0,300.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral","air,ground,structure,enemy,neutral"} +tip={"季风(|cffffcc00N|r) - [|cffffcc00等级 1|r]","季风(|cffffcc00N|r) - [|cffffcc00等级 2|r]","季风(|cffffcc00N|r) - [|cffffcc00等级 3|r]"} +ubertip={"在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。","在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。","在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANmr] +_code="ANmr" +_id="ANmr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTemp.blp" +buffid={"BNmr","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="心灵腐烂" +order="mindrot" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"心灵腐烂(|cffffcc00R|r)"} +ubertip={"在秒消耗目标单位点的魔法值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANms] +_code="ANms" +_id="ANms" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShield.blp" +buffid={"BNms","BNms","BNms","BNms"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={25,25,25,25} +dataa={1.0,1.5,2.0,2.0} +datab={1.0,1.0,1.0,1.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ManaShieldCastSound" +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法护盾" +orderoff="manashieldoff" +orderon="manashieldon" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShield.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +researchubertip="建立一个护盾,用女海巫的魔法能量来吸收伤害。|n|n|cffffcc00等级 1|r - 每一点魔法能量能吸收1点的伤害。|n|cffffcc00等级 2|r -每一点魔法能量能吸收1.5点的伤害。|n|cffffcc00等级 3|r - 每一点魔法能量能吸收2点的伤害。" +rng={128.0,128.0,128.0,128.0} +targetattachcount=0 +targs={"self","self","self","self"} +tip={"激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 1|r]","激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 2|r]","激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 3|r]"} +ubertip={"激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收1点伤害。","激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收1.5点伤害。","激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收2点伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShieldOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="N" +untip={"取消魔法护盾(|cffffcc00N|r)"} +unubertip={} + +[ANpa] +_code="ANpa" +_id="ANpa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNParasiteOn.blp" +buffid={"BNpa,BNpm","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={90.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={8,0,0,0} +datae={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\Parasite\\ParasiteMissile.mdl" +missilehoming=1 +missilespeed=1200 +name="寄生虫" +order="parasite" +orderoff="parasiteoff" +orderon="parasiteon" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral,nonhero","","",""} +tip={"寄生虫(|cffffcc00R|r)"} +ubertip={"用一个致命的寄生虫折磨目标单位,使它每秒受到的伤害,持续秒。如果命中单位在寄生虫仍有效果的时候死亡,一个战士将会从尸体上诞生。"} +unart="ReplaceableTextures\\CommandButtons\\BTNParasiteOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +unitid={"ncfs","","",""} +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[ANpi] +_code="ANpi" +_id="ANpi" +_max_level=1 +_type="ability" +area={220.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNImmolation.blp" +buffid={"BNpi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={1.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="永久的献祭" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"永久的献祭"} +ubertip={"对周围的敌人每秒造成点伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANpr] +_code="ANpr" +_id="ANpr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfPreservation.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="保存权杖" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"ground,air,vuln,invu,player,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANr2] +_code="AOre" +_id="ANr2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNReincarnation.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={240.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"XOre","","",""} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNReincarnation.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习重生(|cffffcc00R|r)" +researchubertip="当被杀时,该英雄自动会复活。重生有秒的间隔时间。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"重生"} +ubertip={"当被杀时,该英雄自动会复活。重生有秒的间隔时间。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANr3] +_code="ANrc" +_id="ANr3" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernalStone.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={0,0,0,0} +dataa={"ANin","ANin","ANin","ANin"} +datab={2,3,4,4} +dur={1.0,0.8,0.6,0.6} +editorsuffix=" (巴那泽尔)" +efctid={"XErc","XErc","XErc","XErc"} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="混乱之雨" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNInfernalStone.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习混乱之雨(|cffffcc00R|r)" +researchubertip="召唤出几个地狱火恶魔从天而降。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"","","",""} +tip={"混乱之雨(|cffffcc00R|r)"} +ubertip={"召唤出几个地狱火恶魔从天而降。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANrc] +_code="ANrc" +_id="ANrc" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernalStone.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={0,0,0,0} +dataa={"ANin","ANin","ANin","ANin"} +datab={2,3,4,4} +dur={1.0,0.8,0.6,0.6} +editorsuffix=" (阿克蒙德)" +efctid={"XErc","XErc","XErc","XErc"} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="混乱之雨" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNInfernalStone.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习混乱之雨(|cffffcc00R|r)" +researchubertip="召唤出几个地狱火恶魔从天而降。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"","","",""} +tip={"混乱之雨(|cffffcc00R|r)"} +ubertip={"召唤出几个地狱火恶魔从天而降。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANre] +_code="Aarm" +_id="ANre" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHeal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.01,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命恢复光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANrf] +_code="ANrf" +_id="ANrf" +_max_level=3 +_type="ability" +animnames="spell,looping" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +buffid={"BNrd,BNrf","BNrd,BNrf","BNrd,BNrf","BNrd,BNrf"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={1.0,1.0,1.0,1.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={85,85,85,85} +dataa={6,8,10,10} +datab={25.0,30.0,35.0,35.0} +datac={6,7,10,10} +datad={0.5,0.5,0.5,0.5} +datae={5.0,10.0,15.0,15.0} +dataf={125.0,150.0,175.0,0.0} +dur={3.0,3.0,3.0,3.0} +efctid={"XErf","XErf","XErf","XErf"} +hero=1 +herodur={3.0,3.0,3.0,3.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火焰雨" +order="rainoffire" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习火焰雨(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤来一阵阵的火焰雨从天而降从而对一定范围内的敌人造成伤害,每阵火焰雨在对敌人造成初始伤害之后,在随后的秒内还会对其造成持续性的伤害。|n|n|cffffcc00等级 1|r -点伤害,阵火焰雨,每秒点伤害。|n|cffffcc00等级 2|r -点伤害,阵火焰雨,每秒点伤害。|n|cffffcc00等级 3|r -点伤害,阵火焰雨,每秒点伤害。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"","","",""} +tip={"火焰雨(|cffffcc00F|r)- [|cffffcc00等级 1|r]","火焰雨(|cffffcc00F|r)- [|cffffcc00等级 2|r]","火焰雨(|cffffcc00F|r)- [|cffffcc00等级 3|r]"} +ubertip={"召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成点的伤害。|n持续阵。","召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成点的伤害。|n持续阵。","召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成阵。|n持续阵。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANrg] +_code="ANrg" +_id="ANrg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,1.0,1.0,1.0} +cost={25,25,25,25} +dataa={"Ntin","Ntin","Ntin","Ntin"} +datab={1,1,1,1} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={5,7,7,7} +dataf={1,3,3,3} +dur={1.5,1.5,1.5,1.5} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="机器人地精" +order="robogoblin" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNROBOGOBLIN.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="(|cffffcc00b|r)学习机器人地精" +researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00b|r)机器人地精"} +ubertip={"让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="T" +unitid={"Nrob","Nrob","Nrob","Nrob"} +unorder="unrobogoblin" +untip={"(|cffffcc00T|r)恢复到修补匠形态"} +unubertip={"恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。"} + +[ANrn] +_code="AOre" +_id="ANrn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNReincarnation.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={3.0,3.0,3.0,3.0} +casterattachcount=0 +checkdep=1 +cool={240.0,240.0,240.0,240.0} +cost={0,0,0,0} +dataa={7.0,7.0,7.0,7.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (玛诺洛斯)" +efctid={"XOre","XOre","XOre","XOre"} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNReincarnation.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="重生(|cffffcc00R|r)" +researchubertip="当被杀时,恶魔自动会复活。重生有秒的施放/攻击间隔时间。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"重生"} +ubertip={"当被杀时,恶魔自动会复活。重生有秒的施放/攻击间隔时间。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unhotkey="R" +untip={} +unubertip={} + +[ANs1] +_code="ANsy" +_id="ANs1" +_max_level=3 +_type="ability" +animnames="spell,Slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +buffid={"BNfy,BNcg","BNfy,BNcg","BNfy,BNcg","BNfy,BNcg"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={35.0,35.0,35.0,35.0} +cost={125,125,125,125} +dataa={4.0,4.0,4.0,4.0} +datab={"ncgb","ncg1","ncg2","ncg3"} +datac={12.0,12.0,12.0,12.0} +datad={200.0,200.0,200.0,200.0} +datae={1100.0,1100.0,1100.0,1100.0} +dur={40.0,40.0,40.0,40.0} +editorsuffix=" (Upgrade 1)" +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactoryMissle.mdl" +missilehoming=1 +missilespeed=1000 +name="口袋工厂" +order="summonfactory" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F// Pocket Factory" +researchtip="(|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r]"} +ubertip={"建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nfac","nfa1","nfa2","nfa2"} +untip={} +unubertip={} + +[ANs2] +_code="ANsy" +_id="ANs2" +_max_level=3 +_type="ability" +animnames="spell,Slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +buffid={"BNfy,BNcg","BNfy,BNcg","BNfy,BNcg","BNfy,BNcg"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={35.0,35.0,35.0,35.0} +cost={125,125,125,125} +dataa={3.2,3.2,3.2,3.2} +datab={"ncgb","ncg1","ncg2","ncg3"} +datac={12.0,12.0,12.0,12.0} +datad={200.0,200.0,200.0,200.0} +datae={1100.0,1100.0,1100.0,1100.0} +dur={40.0,40.0,40.0,40.0} +editorsuffix=" (Upgrade 2)" +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactoryMissle.mdl" +missilehoming=1 +missilespeed=1000 +name="口袋工厂" +order="summonfactory" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip=" (|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r]"} +ubertip={"建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nfac","nfa1","nfa2","nfa2"} +untip={} +unubertip={} + +[ANs3] +_code="ANsy" +_id="ANs3" +_max_level=3 +_type="ability" +animnames="spell,Slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +buffid={"BNfy,BNcg","BNfy,BNcg","BNfy,BNcg","BNfy,BNcg"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={35.0,35.0,35.0,35.0} +cost={125,125,125,125} +dataa={2.56,2.56,2.56,2.56} +datab={"ncgb","ncg1","ncg2","ncg3"} +datac={12.0,12.0,12.0,12.0} +datad={200.0,200.0,200.0,200.0} +datae={1100.0,1100.0,1100.0,1100.0} +dur={40.0,40.0,40.0,40.0} +editorsuffix=" (Upgrade 3)" +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactoryMissle.mdl" +missilehoming=1 +missilespeed=1000 +name="口袋工厂" +order="summonfactory" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip=" (|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工的地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r]"} +ubertip={"建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nfac","nfa1","nfa2","nfa2"} +untip={} +unubertip={} + +[ANsa] +_code="ANsa" +_id="ANsa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfSanctuary.blp" +buffid={"BNsa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={45.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15,0,0,0} +datab={1.0,0.0,0.0,0.0} +datac={5.0,0.0,0.0,0.0} +datad={10.0,0.0,0.0,0.0} +datae={15.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="避难权杖" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +targetattachcount=0 +targs={"ground,air,vuln,invu,player,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsb] +_code="AHtb" +_id="ANsb" +_max_level=4 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStormBolt.blp" +buffid={"BPSE","BPSE","BPSE","BPSE"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={75,75,75,75} +dataa={100.0,200.0,300.0,450.0} +dur={5.0,7.0,9.0,12.0} +efctid={"","","",""} +hero=1 +herodur={3.0,4.0,5.0,6.0} +hotkey="T" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Human\\StormBolt\\StormBoltMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="风暴之锤" +order="thunderbolt" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNStormBolt.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="向目标投掷一巨大的魔法斧,对其造成一定伤害并使其处于眩晕状态。|n|n|cffffcc00等级 1|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 2|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 3|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 4|r - 点伤害, 秒眩晕状态。" +rng={600.0,600.0,600.0,600.0} +targetattachcount=0 +targs={"air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic","air,ground,debris,enemy,neutral,organic"} +tip={"风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 1|r]","风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 2|r]","风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 3|r]","风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 4|r]"} +ubertip={"向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成 点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANse] +_code="ANse" +_id="ANse" +_max_level=1 +_type="ability" +area={1400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellShieldAmulet.blp" +buffid={"BNss","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (神符)" +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法护盾" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,invu,vuln,self","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsg] +_code="ANsg" +_id="ANsg" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +buffid={"BNsg","BNsg","BNsg","BNsg"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={40.0,40.0,40.0,40.0} +cost={125,125,125,125} +dataa={1,1,1,1} +dur={70.0,70.0,70.0,70.0} +efctid={"","","",""} +hero=1 +herodur={70.0,70.0,70.0,70.0} +hotkey="G" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤熊" +order="summongrizzly" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="G" +researchtip="学习召唤熊(|cffffcc00G|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤一头威力强大的熊来攻击你的敌人。|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值,点攻击力。|n|n|cffffcc00等级 2|r - 点生命值,点攻击力,具有重击技能。|n|n|cffffcc00等级 3|r - 点生命值,点攻击力,具有重击和闪烁的技能。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤熊(|cffffcc00G|r) - [|cffffcc00等级 1|r]","召唤熊(|cffffcc00G|r) - [|cffffcc00等级 2|r]","召唤熊(|cffffcc00G|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤一头威力强大,生命值点的熊来攻击你的敌人。|n持续秒。","召唤一头威力强大,生命值点的熊来攻击你的敌人,具有重击的技能。|n持续秒。","召唤一头威力强大,生命值点的熊来攻击你的敌人,具有重击和闪烁的技能。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ngz1","ngz2","ngz3","ngz3"} +untip={} +unubertip={} + +[ANsh] +_code="AOsh" +_id="ANsh" +_max_level=3 +_type="ability" +animnames="attack,slam" +area={150.0,150.0,150.0,150.0} +art="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +buffid={"BOsh","BOsh","BOsh","BOsh"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={100,100,100,100} +dataa={75.0,130.0,200.0,200.0} +datab={99999.0,9999.0,9999.0,9999.0} +datac={800.0,800.0,800.0,800.0} +datad={150.0,150.0,150.0,150.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="震荡波" +order="shockwave" +priority=0 +race="other" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害。|n|cffffcc00等级 2|r - 点伤害。|n|cffffcc00等级 3|r - 点伤害。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"ground,structure","","",""} +tip={"震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r]"} +ubertip={"从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。","从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。","从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsi] +_code="ANsi" +_id="ANsi" +_max_level=3 +_type="ability" +area={200.0,275.0,350.0,350.0} +art="ReplaceableTextures\\CommandButtons\\BTNSilence.blp" +buffid={"BNsi","BNsi","BNsi","BNsi"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,15.0,15.0,15.0} +cost={75,75,75,75} +dataa={8,8,8,8} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={16.0,20.0,24.0,24.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Other\\Silence\\SilenceAreaBirth.mdl" +hero=1 +herodur={8.0,10.0,12.0,12.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="沉默魔法" +order="silence" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSilence.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="阻止一定范围内的所有敌人施放魔法。魔法的效果范围和持续时间会随着等级的增加而增加。|n|n|cffffcc00等级 1|r - 小范围,持续秒。|n|cffffcc00等级 2|r - 中等范围,持续秒。|n|cffffcc00等级 3|r - 大型范围,持续秒。" +rng={900.0,900.0,900.0,900.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 1|r]","沉默魔法 (|cffffcc00E|r)- [|cffffcc00等级 2|r]","沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"在秒内阻止一小块区域内所有的敌人施放魔法。","在秒内阻止一普通大小区域内所有的敌人施放魔法。","在秒内阻止一大型区域内所有的敌人施放魔法。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsl] +_code="ANsl" +_id="ANsl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"BNsl","BNsl","BNsl","BNsl"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.5,0.5,0.5,0.5} +casterattachcount=0 +checkdep=1 +cool={0.1,0.1,0.1,0.1} +cost={0,0,0,0} +dur={3.0,3.0,3.0,3.0} +editorsuffix=" (马哥尼斯)" +efctid={"","","",""} +hero=1 +herodur={3.0,3.0,3.0,3.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵魂保存" +order="soulpreservation" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="L" +researchtip="学习灵魂保存(|cffffcc00L|r)" +researchubertip="将一个僵尸放入下面的地域以备后用。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero"} +tip={"灵魂保存(|cffffcc00L|r)"} +ubertip={"将一个僵尸放入下面的地域以备后用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nzom","nzom","nzom","nzom"} +untip={} +unubertip={} + +[ANso] +_code="ANso" +_id="ANso" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSoulBurn.blp" +buffid={"BNso","BNso","BNso","BNso"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,12.0,12.0,12.0} +cost={85,85,85,85} +dataa={7.14,14.06,20.833,27.5} +datab={1.0,1.0,1.0,1.0} +datac={0.5,0.5,0.5,0.5} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dur={14.0,16.0,18.0,20.0} +efctid={"","","",""} +hero=1 +herodur={6.0,7.0,8.0,10.0} +hotkey="B" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵魂燃烧" +order="soulburn" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSoulBurn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip=" (|cffffcc00B|r)学习灵魂燃烧 - [|cffffcc00等级 %d|r]" +researchubertip="让火焰包围敌人,让其在一段时间之内持续受到伤害,并阻止其施放任何魔法和减少其%的攻击力。 |n|n|cffffcc00等级 1|r - 100 点伤害, 持续秒。|n|cffffcc00等级 2|r - 225 点伤害, 持续 秒。|n|cffffcc00等级 3|r - 375 点伤害, 持续秒。|n|n灵魂燃烧在英雄身上持续的时间会减半。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic"} +tip={"(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 1|r]","(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 2|r]","(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 3|r]"} +ubertip={"让一个单位处于烈焰的包围之中,对其造成每秒点的伤害,让其不能施放魔法,并减少其%的攻击力。|n持续 秒。","让一个单位处于烈焰的包围之中,对其造成每秒<点的伤害,让其不能施放魔法,并减少其% 的攻击力。|n持续 秒。","让一个单位处于烈焰的包围之中,对其造成每秒 点的伤害,让其不能施放魔法,并减少其% 的攻击力。|n持续 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsq] +_code="ANsq" +_id="ANsq" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +buffid={"BNsq","BNsq","BNsq","BNsq"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={25.0,25.0,25.0,25.0} +cost={75,75,75,75} +dataa={1,1,1,1} +dur={70.0,70.0,70.0,70.0} +efctid={"","","",""} +hero=1 +herodur={70.0,70.0,70.0,70.0} +hotkey="Q" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤豪猪" +order="summonquillbeast" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="Q" +researchtip="学习召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤一只愤怒的豪猪来为你作战。|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值, 点攻击力。|n|n|cffffcc00等级 2|r - 点生命值,点攻击力,有狂热技能。|n|n|cffffcc00等级 3|r - 点生命值,点区域伤害,有狂热技能。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 1|r]","召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 2|r]","召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤一只愤怒的生命值点的豪猪来为你作战。|n持续秒。","召唤一只愤怒的生命值点的豪猪来为你作战,拥有狂热技能。|n持续秒。","召唤一只愤怒的点生命值的豪猪来为你作战,拥有狂热并造成区域伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nqb1","nqb2","nqb3","nqb3"} +untip={} +unubertip={} + +[ANss] +_code="ANss" +_id="ANss" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellShieldAmulet.blp" +buffid={"BNss","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\SpellShieldAmulet\\SpellShieldCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (护身符)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法护盾" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANst] +_code="ANst" +_id="ANst" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={1000.0,600.0,600.0,600.0} +art="ReplaceableTextures\\CommandButtons\\BTNStampede.blp" +buffid={"BNst","BNst","BNst","BNst"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,200,200,200} +dataa={2,2,2,2} +datab={55.0,48.0,48.0,48.0} +datac={60.0,50.0,50.0,50.0} +datad={275.0,200.0,200.0,200.0} +datae={0.2,0.2,0.2,0.2} +dur={30.0,20.0,20.0,20.0} +efctid={"","","",""} +effectsound="StampedeCast" +effectsoundlooped="StampedeLoop" +hero=1 +herodur={30.0,20.0,20.0,20.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\Stampede\\StampedeMissile.mdl" +missilehoming=0 +missilespeed=500 +name="惊吓" +order="stampede" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStampede.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习惊吓(|cffffcc00T|r)" +researchubertip="召唤成群的狂暴雷蜥蜴轰炸驯兽师的敌人。每个轰炸的蜥蜴造成伤害,持续秒。" +rng={300.0,1000.0,1000.0,1000.0} +specialart="Abilities\\Spells\\Other\\Stampede\\StampedeMissileDeath.mdl" +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral"} +tip={"惊吓(|cffffcc00T|r)"} +ubertip={"召唤成群的狂暴雷蜥蜴轰炸驯兽师的敌人。每个轰炸的蜥蜴造成伤害,持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANsw] +_code="ANsw" +_id="ANsw" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +buffid={"BNsw","BNsw","BNsw","BNsw"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={70.0,70.0,70.0,70.0} +cost={50,50,50,50} +dataa={1,1,1,1} +dur={70.0,70.0,70.0,70.0} +efctid={"","","",""} +hero=1 +herodur={70.0,70.0,70.0,70.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤战鹰" +order="summonwareagle" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤一只骄傲的战鹰来侦察敌人|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值,有真实视域技能。|n|cffffcc00等级 2|r - 点生命值,点攻击力,有真实视域技能。|n|cffffcc00等级 3|r - 点生命值,点攻击力,有真实视域技能并且隐形。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 1|r]","召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 2|r]","召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。","召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。","召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nwe1","nwe2","nwe3","nwe3"} +untip={} +unubertip={} + +[ANsy] +_code="ANsy" +_id="ANsy" +_max_level=3 +_type="ability" +animnames="spell,Slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +buffid={"BNfy,BNcg","BNfy,BNcg","BNfy,BNcg","BNfy,BNcg"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={35.0,35.0,35.0,35.0} +cost={125,125,125,125} +dataa={5.0,5.0,5.0,5.0} +datab={"ncgb","ncg1","ncg2","ncg3"} +datac={12.0,12.0,12.0,12.0} +datad={200.0,200.0,200.0,200.0} +datae={1100.0,1100.0,1100.0,1100.0} +dur={40.0,40.0,40.0,40.0} +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.35 +missileart="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactoryMissle.mdl" +missilehoming=1 +missilespeed=1000 +name="口袋工厂" +order="summonfactory" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="(|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r]","(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r]"} +ubertip={"建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nfac","nfa1","nfa2","nfa2"} +untip={} +unubertip={} + +[ANt2] +_code="AUts" +_id="ANt2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThornShield.blp" +buffid={"BUts","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.3,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(2,2 按钮)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="尖刺外壳" +order="Thornyshield" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNThornShield.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"尖刺外壳"} +ubertip={"海龟身上的尖刺能将敌人%的攻击力化为对敌人的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANta] +_code="Atau" +_id="ANta" +_max_level=1 +_type="ability" +area={450.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPandaTaunt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\Taunt\\TauntCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={15.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="嘲讽" +order="taunt" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,vuln,invu","","",""} +tip={"嘲讽(|cffffcc00T|r)"} +ubertip={"最近的个单位会强迫攻击这个单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANth] +_code="AUts" +_id="ANth" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThornShield.blp" +buffid={"BUts","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.3,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="尖刺外壳" +order="Thornyshield" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNThornShield.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"尖刺外壳"} +ubertip={"海龟身上的尖刺能将敌人%的攻击力化为对敌人的伤害。"} +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unorder="Unthornyshield" +untip={} +unubertip={} + +[ANtm] +_code="ANtm" +_id="ANtm" +_max_level=1 +_type="ability" +animnames="Attack,two,Spell" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTransmute.blp" +buffid={"BNtm","BNtm","BNtm","BNtm"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={45.0,45.0,45.0,45.0} +cost={150,200,200,200} +dataa={0.8,2.0,2.0,2.0} +datab={0.0,0.0,0.0,0.0} +datac={5,5,5,5} +datad={1,1,1,1} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.4 +missileart="Abilities\\Spells\\Other\\Transmute\\GoldBottleMissile.mdl" +missilehoming=1 +missilespeed=700 +name="点金术" +order="transmute" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNTransmute.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip=" (|cffffcc00T|r)学习点金术" +researchubertip="立刻杀死某个单位,然后将其变成金币,补充到你的国库中。|n点金术不能被用在英雄和高于等级的野外生物上。" +rng={650.0,200.0,200.0,200.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral,nonhero","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"(|cffffcc00T|r)点金术"} +ubertip={"立刻杀死某个单位,然后将其变成金币,补充到你的国库中。|n点金术不能被用在英雄和高于等级的野外生物上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANto] +_code="ANto" +_id="ANto" +_max_level=1 +_type="ability" +animnames="spell,channel" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTornado.blp" +buffid={"BNto","BNto","BNto","BNto"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,120.0,120.0,120.0} +cost={200,150,150,150} +dur={40.0,30.0,30.0,30.0} +efctid={"","","",""} +hero=1 +herodur={40.0,30.0,30.0,30.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="龙卷风" +order="tornado" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNTornado.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习龙卷风(|cffffcc00T|r)" +researchubertip="召唤一股可控制的强劲龙卷风,可以减慢敌人单位移动速度,随机将敌地面单位抛入空中,并对敌建筑造成伤害。|n持续秒。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"","","",""} +tip={"龙卷风(|cffffcc00T|r)"} +ubertip={"召唤一股可控制的强劲龙卷风,可以减慢敌人单位移动速度,随机将敌地面单位抛入空中,并对敌建筑造成伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ntor","ntor","ntor","ntor"} +untip={} +unubertip={} + +[ANtr] +_code="Atru" +_id="ANtr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNScout.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的 2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="真实视域" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"真实视域"} +ubertip={"显示周围的隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANvc] +_code="ANvc" +_id="ANvc" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={500.0,500.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNVolcano.blp" +buffid={"BNvc,BNva","BNvc,BNva","BNvc,BNva","BNvc,BNva"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={200,150,150,150} +dataa={3,3,3,3} +datab={8,8,8,8} +datac={5.0,5.0,5.0,5.0} +datad={2.0,2.0,2.0,2.0} +datae={100.0,100.0,100.0,100.0} +dataf={0.5,0.5,0.5,0.5} +dur={2.0,2.0,2.0,2.0} +efctid={"XNvc","XNvc","XNvc","XNvc"} +hero=1 +herodur={1.0,1.0,1.0,1.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火山爆发" +order="volcano" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNVolcano.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip=" (|cffffcc00V|r)学习火山爆发" +researchubertip="让大地陷入火山爆发的状态。在秒内,一共个灼热的熔岩会喷向周围的单位,对每个目标造成 的伤害,并在 秒内让其处于昏晕状态。对于建筑物来说,他们受到的伤害将是正常单位的倍。|n持续35 秒。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,structure,notself,tree,debris","ground,structure,notself,tree,debris","ground,structure,notself,tree,debris","ground,structure,notself,tree,debris"} +tip={"(|cffffcc00V|r)火山爆发"} +ubertip={"让大地陷入火山爆发的状态。在秒内,一共个灼热的熔岩会喷向周围的单位,对每个目标造成点的伤害,并在 秒内让其处于昏晕状态。对于建筑物来说,他们受到的伤害将是正常单位的倍。|n持续35 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Volc","Volc","Volc","Volc"} +untip={} +unubertip={} + +[ANwk] +_code="AOwk" +_id="ANwk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWindWalkOn.blp" +buffid={"BOwk","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={7.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={0.1,0.0,0.0,0.0} +datac={50.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +effectsound="WindWalk" +hero=1 +herodur={20.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾风步" +order="windwalk" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWindWalkOn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"疾风步(|cffffcc00W|r)"} +ubertip={"允许熊猫人隐形,移动速度快%。如果熊猫人攻击某单位它就会显形,这次攻击将会增加 。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[ANwm] +_code="ANwm" +_id="ANwm" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +buffid={"BNwm","BNwm","BNwm","BNwm"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={75,75,75,75} +dataa={2,2,2,2} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="水奴" +order="wateryminion" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"水奴(|cffffcc00W|r)"} +ubertip={"召唤出个仆人来为你效力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ncfs","ntws","nsns","nsns"} +untip={} +unubertip={} + +[AOae] +_code="AOae" +_id="AOae" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCommand.blp" +buffid={"BOae","BOae","BOae","BOae"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +datab={0.05,0.1,0.15,0.15} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="耐久光环" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCommand.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习耐久光环(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="能增加周围单位的移动速度和攻击速度。|n|n|cffffcc00等级 1|r - 提高%的移动速度和%的攻击速度。|n|cffffcc00等级 2|r - 提高%的移动速度和%的攻击速度。|n|cffffcc00等级 3|r - 提高%的移动速度和%的攻击速度。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\CommandAura\\CommandAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"耐久光环 - [|cffffcc00等级 1|r]","耐久光环 - [|cffffcc00等级 2|r]","耐久光环 - [|cffffcc00等级 3|r]"} +ubertip={"增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AObu] +_code="AObu" +_id="AObu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBasicStruct.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造(兽族)" +order="orcbuild" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOcl] +_code="AOcl" +_id="AOcl" +_max_level=3 +_type="ability" +animnames="spell,chain" +area={500.0,500.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNChainLightning.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={120,120,120,120} +dataa={85.0,125.0,180.0,180.0} +datab={4,6,8,8} +datac={0.15,0.15,0.15,0.15} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +lightningeffect="CLPB,CLSB" +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\LightningBolt\\LightningBoltMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="闪电链" +order="chainlightning" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNChainLightning.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习闪电链(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="投掷出一道能进行跳跃的闪电。每次跳跃都会减小闪电的攻击力。|n|n|cffffcc00等级 1|r - 点伤害,跳跃次。|n|cffffcc00等级 2|r - 点伤害,跳跃次。|n|cffffcc00等级 3|r - 点伤害,跳跃次。" +rng={700.0,700.0,700.0,700.0} +targetart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic","air,ground,enemy,neutral,organic"} +tip={"闪电链(|cffffcc00C|r) - [|cffffcc00等级 1|r]","闪电链(|cffffcc00C|r) - [|cffffcc00等级 2|r]","闪电链(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。","投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。","投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOcr] +_code="AOcr" +_id="AOcr" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCriticalStrike.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15.0,15.0,15.0,15.0} +datab={2.0,3.0,4.0,4.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="致命一击" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCriticalStrike.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习致命一击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="给予一定的概率使得攻击力能大大增强。|n|n|cffffcc00等级 1|r -%的概率,倍于一般攻击的伤害值。|n|cffffcc00等级 2|r -%的概率,倍于一般攻击的伤害值。|n|cffffcc00等级 3|r -%的概率,倍于一般攻击的伤害值。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"致命一击 - [|cffffcc00等级 1|r]","致命一击 - [|cffffcc00等级 2|r]","致命一击 - [|cffffcc00等级 3|r]"} +ubertip={"给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。","给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。","给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOeq] +_code="AOeq" +_id="AOeq" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={250.0,400.0,400.0,400.0} +art="ReplaceableTextures\\CommandButtons\\BTNEarthquake.blp" +buffid={"BOeq,BOea","BOeq,BOea","BOeq,BOea","BOeq,BOea"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={90.0,90.0,90.0,90.0} +cost={150,150,150,150} +dataa={0.5,0.5,0.5,0.5} +datab={50.0,40.0,40.0,40.0} +datac={0.75,0.75,0.75,0.75} +datad={250.0,400.0,400.0,400.0} +dur={25.0,20.0,20.0,20.0} +efctid={"XOeq","XOeq","XOeq","XOeq"} +hero=1 +herodur={20.0,20.0,20.0,20.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地震" +order="earthquake" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNEarthquake.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习地震(|cffffcc00E|r)" +researchubertip="使得大地发生颤抖,对有效范围内的建筑物造成每秒点的伤害,并使该范围内的单位减速%。持续秒。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"ground,structure,debris,tree","ground,structure,debris,tree","ground,structure,debris,tree","ground,structure,debris,tree"} +tip={"地震(|cffffcc00E|r)"} +ubertip={"使得大地发生颤抖,对有效范围内的建筑物造成每秒点的伤害,并使该范围内的单位减速%。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOfs] +_code="AOfs" +_id="AOfs" +_max_level=3 +_type="ability" +area={600.0,1800.0,4000.0,4000.0} +art="ReplaceableTextures\\CommandButtons\\BTNFarSight.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={75,60,50,50} +dataa={3,3,3,3} +dur={8.0,8.0,8.0,8.0} +efctid={"Xbdt","Xbdt","Xbdt","Xbdt"} +hero=1 +herodur={8.0,8.0,8.0,8.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="透视" +order="farsight" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFarSight.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习透视(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="能在一定时间内驱散目标区域内的战争迷雾。还能看见敌方的隐形单位。|n|n|cffffcc00等级 1|r - 消耗点魔法。|n|cffffcc00等级 2|r - 消耗点魔法。|n|cffffcc00等级 3|r - 消耗点魔法。" +rng={99999.0,99999.0,99999.0,99999.0} +targetattachcount=0 +targs={"","","",""} +tip={"透视(|cffffcc00F|r) - [|cffffcc00等级 1|r]","透视(|cffffcc00F|r) - [|cffffcc00等级 2|r]","透视(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"能在秒内驱散目标区域内的战争迷雾。也能看到隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOhw] +_code="AOhw" +_id="AOhw" +_max_level=3 +_type="ability" +animnames="spell,throw" +area={500.0,500.0,500.0,500.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWave.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={90,90,90,90} +dataa={130.0,215.0,300.0,300.0} +datab={3,4,5,5} +datac={0.25,0.25,0.25,0.25} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +lightningeffect="HWPB,HWSB" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗波" +order="healingwave" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHealingWave.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习医疗波(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一道能进行跳跃的医疗能量波,每次跳跃都会削弱医疗波的医疗能力。|n|n|cffffcc00等级 1|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 2|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 3|r - 恢复点生命值,跳跃次。" +rng={700.0,700.0,700.0,700.0} +targetart="Abilities\\Spells\\Orc\\HealingWave\\HealingWaveTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic"} +tip={"医疗波(|cffffcc00E|r) - [|cffffcc00等级 1|r]","医疗波(|cffffcc00E|r) - [|cffffcc00等级 2|r]","医疗波(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOhx] +_code="AOhx" +_id="AOhx" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +buffid={"BOhx","BOhx","BOhx","BOhx"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={7.0,7.0,7.0,7.0} +cost={70,70,70,70} +dataa={99,99,99,99} +datab={"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac","npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac"} +datac={"nalb,nvul,nsno","nalb,nvul,nsno","nalb,nvul,nsno","nalb,nvul,nsno"} +datad={"nsha,npng","nsha,npng","nsha,npng","nsha,npng"} +datae={"nshw,npnw","nshw,npnw","nshw,npnw","nshw,npnw"} +dur={15.0,30.0,45.0,45.0} +efctid={"","","",""} +hero=1 +herodur={4.0,5.0,6.0,6.0} +hotkey="X" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="妖术" +order="hex" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="X" +researchtip="学习妖术(|cffffcc00X|r) - [|cffffcc00等级 %d|r]" +researchubertip="让目标单位在秒内变成一只随机的小动物, 废除其特殊技能的使用。|n|n|cffffcc00等级 1|r - 持续秒。|n|cffffcc00等级 2|r - 持续秒。|n|cffffcc00等级 3|r - 持续秒。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"妖术(|cffffcc00X|r) - [|cffffcc00等级 1|r]","妖术(|cffffcc00X|r) - [|cffffcc00等级 2|r]","妖术(|cffffcc00X|r) - [|cffffcc00等级 3|r]"} +ubertip={"让目标单位在秒内变成一只随机的小动物秒。","让目标单位在秒内变成一只随机的小动物秒。","让目标单位在秒内变成一只随机的小动物秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOls] +_code="AUls" +_id="AOls" +_max_level=2 +_type="ability" +area={800.0,800.0,800.0,800.0} +art="ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={20,35,20,20} +datab={0.2,0.2,0.2,0.2} +datac={7,12,7,7} +datad={0.75,1.0,1.0,1.0} +datae={20.0,25.0,20.0,20.0} +dur={30.0,30.0,30.0,30.0} +efctid={"","","",""} +effectsoundlooped="LocustSwarmLoop" +hero=1 +herodur={30.0,30.0,30.0,30.0} +hotkey="V" +item=0 +levels=2 +levelskip=6 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="巫毒幽魂" +order="Locustswarm" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n|n|cffffcc00等级 1|r — 个幽灵。 |n|cffffcc00等级 2|r — 幽灵。|n|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,neutral,enemy","air,ground,structure,neutral,enemy","air,ground,structure,neutral,enemy","air,ground,structure,neutral,enemy"} +tip={"巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 1|r]","巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 2|r]"} +ubertip={"召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n持续秒。","召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uloc","uloc","uloc","uloc"} +untip={} +unubertip={} + +[AOmi] +_code="AOmi" +_id="AOmi" +_max_level=3 +_type="ability" +area={1000.0,1000.0,1000.0,1000.0} +art="ReplaceableTextures\\CommandButtons\\BTNMirrorImage.blp" +buffid={"BOmi","BOmi","BOmi","BOmi"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={3.0,3.0,3.0,3.0} +cost={125,125,125,150} +dataa={1,2,3,3} +datab={0.0,0.0,0.0,0.0} +datac={2.0,2.0,2.0,2.0} +datad={0.5,0.5,0.5,0.5} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageMissile.mdl" +missilehoming=0 +missilespeed=1000 +name="镜像" +order="mirrorimage" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNMirrorImage.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习镜像(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="制造出一定数量的幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n|n|cffffcc00等级 1|r - 创造出个幻象。|n|cffffcc00等级 2|r - 创造出个幻象。|n|cffffcc00等级 3|r - 创造出个幻象。" +rng={128.0,128.0,128.0,128.0} +specialart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageCaster.mdl" +targetart="Abilities\\Spells\\Other\\Levelup\\LevelupCaster.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"镜像(|cffffcc00R|r) - [|cffffcc00等级 1|r]","镜像(|cffffcc00R|r) - [|cffffcc00等级 2|r]","镜像(|cffffcc00R|r) - [|cffffcc00等级 3|r]"} +ubertip={"制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。","制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。","制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOr2] +_code="AOae" +_id="AOr2" +_max_level=4 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCommand.blp" +buffid={"BOae","BOae","BOae","BOae"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.4} +datab={0.05,0.1,0.15,0.25} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(卡林)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="耐久光环" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCommand.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习耐久光环(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="增加周围单位的移动和攻击速度。|n|n|cffffcc00等级 1|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 2|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 3|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 4|r - %的移动速度和%的攻击速度。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\CommandAura\\CommandAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"耐久光环 - [|cffffcc00等级 1|r]","耐久光环 - [|cffffcc00等级 2|r]","耐久光环 - [|cffffcc00等级 3|r]","耐久光环 - [|cffffcc00等级 4|r]"} +ubertip={"增加周围单位%的移动速度和%的攻击速度。","I增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOr3] +_code="AOre" +_id="AOr3" +_max_level=2 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNReincarnation.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={240.0,120.0,240.0,240.0} +cost={0,0,0,0} +dataa={7.0,2.0,7.0,7.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(卡林)" +efctid={"XOre","XOre","XOre","XOre"} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=2 +levelskip=6 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNReincarnation.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习重生(|cffffcc00R|r)" +researchubertip="当被杀害的时候,酋长会自动复活。|n|n|cffffcc00等级 1|r - 秒的魔法施放间隔时间。|n|cffffcc00等级 2|r - 秒的魔法施放间隔时间。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"重生 - [|cffffcc00等级 1|r]","重生 - [|cffffcc00等级 1|r]"} +ubertip={"当被杀害的时候,卡林会自动复活。重生技能具有秒的魔法施放间隔时间。","","当被杀害的时候,卡林会自动复活。重生技能具有秒的魔法施放间隔时间。\""} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOre] +_code="AOre" +_id="AOre" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNReincarnation.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={240.0,240.0,240.0,240.0} +cost={0,0,0,0} +dataa={7.0,7.0,7.0,7.0} +dur={0.0,0.0,0.0,0.0} +efctid={"XOre","XOre","XOre","XOre"} +effectart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="重生" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNReincarnation.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习重生(|cffffcc00R|r)" +researchubertip="使当牛头人酋长被杀时,它就会自动复活。重生技能有秒的魔法施放间隔时间。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"重生"} +ubertip={"使当牛头人酋长被杀时,它就会自动复活。重生技能有秒的魔法施放间隔时间。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOs2] +_code="AOsh" +_id="AOs2" +_max_level=4 +_type="ability" +animnames="attack,slam" +area={150.0,150.0,150.0,150.0} +art="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +buffid={"BOsh","BOsh","BOsh","BOsh"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={100,100,100,100} +dataa={75.0,130.0,200.0,300.0} +datab={99999.0,9999.0,9999.0,9999.0} +datac={800.0,800.0,800.0,800.0} +datad={150.0,150.0,150.0,150.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(卡林)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="震荡波" +order="shockwave" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="发射出一道向前的能量波,对一直线上的敌人造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害。|n|cffffcc00等级 2|r - 点伤害。|n|cffffcc00等级 3|r - 点伤害。|n|cffffcc00等级 4|r - 点伤害。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"ground,structure","ground,structure","ground,structure","ground,structure"} +tip={"震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 4|r]"} +ubertip={"发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOsf] +_code="AOsf" +_id="AOsf" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +buffid={"BOsf","BOsf","BOsf","BOsf"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,30.0,30.0,30.0} +cost={75,75,75,100} +datab={2,2,2,2} +dur={60.0,60.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="野兽幽魂" +order="spiritwolf" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出头幽狼来为你战斗。|n持续秒。|n|n|cffffcc00等级 1|r -点生命值,-点的攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,且具有致命一击技能。|n|cffffcc00等级 3|r -点生命值,-点攻击力,且具有致命一击和隐形技能。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspirittarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 1|r]","野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 2|r]","野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤出条幽狼来为你战斗。每头狼具有点生命值和 -点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条拥有致命一击技能的幽狼来为你战斗。每头狼具有点生命值和-点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条拥有致命一击和隐形技能的幽狼来为你战斗。每头狼具有点生命值和-点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"osw1","osw2","osw3","osw3"} +untip={} +unubertip={} + +[AOsh] +_code="AOsh" +_id="AOsh" +_max_level=3 +_type="ability" +animnames="attack,slam" +area={125.0,125.0,125.0,125.0} +art="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +buffid={"BOsh","BOsh","BOsh","BOsh"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={100,100,100,100} +dataa={75.0,130.0,200.0,200.0} +datab={900.0,1560.0,2400.0,2400.0} +datac={800.0,800.0,800.0,800.0} +datad={125.0,125.0,125.0,125.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Shockwave\\ShockwaveMissile.mdl" +missilehoming=0 +missilespeed=1050 +name="震荡波" +order="shockwave" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNShockWave.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="能发出一道向前的能量波,对一条线上的敌方地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点的伤害。|n|cffffcc00等级 2|r - 点的伤害。|n|cffffcc00等级 3|r - 点的伤害。" +rng={700.0,700.0,700.0,700.0} +targetattachcount=0 +targs={"ground,structure","ground,structure","ground,structure","ground,structure"} +tip={"震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r]","震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r]"} +ubertip={"能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。","能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。","能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOsw] +_code="AOwd" +_id="AOsw" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +buffid={"BOwd","BOwd","BOwd","BOwd"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.5,6.5,6.5,6.5} +cost={30,30,30,30} +dataa={1,1,1,1} +dur={40.0,40.0,40.0,40.0} +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="毒蛇守卫" +order="ward" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。并对魔法免疫。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r - 点生命值, - 点攻击力。|n|cffffcc00等级 2|r - 点生命值, - 点攻击力。|n|cffffcc00等级 3|r - 点生命值, - 点攻击力。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 1|r]","毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 2|r]","毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 3|r]"} +ubertip={"召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"osp1","osp2","osp3","osp3"} +untip={} +unubertip={} + +[AOvd] +_code="AOvd" +_id="AOvd" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={800.0,800.0,800.0,800.0} +art="ReplaceableTextures\\CommandButtons\\BTNBigBadVoodooSpell.blp" +buffid={"BOvd,BOvc","BOvd,BOvc","BOvd,BOvc","BOvd,BOvc"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={200,200,200,200} +dur={30.0,30.0,30.0,30.0} +efctid={"","","",""} +hero=1 +herodur={30.0,30.0,30.0,30.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="巫毒" +order="voodoo" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNBigBadVoodooSpell.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习巫毒(|cffffcc00V|r)" +researchubertip="将在暗影猎手附近一定区域内的所有友军单位都变为无敌。|n但是暗影猎手自己不会变为无敌。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,vuln,invu","air,ground,friend,vuln,invu","air,ground,friend,vuln,invu","air,ground,friend,vuln,invu"} +tip={"巫毒(|cffffcc00V|r)"} +ubertip={"将在暗影猎手附近一定区域内的所有友军单位都变为无敌。|n但是暗影猎手自己不会变为无敌。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOw2] +_code="AOws" +_id="AOw2" +_max_level=4 +_type="ability" +animnames="spell,slam" +area={250.0,300.0,350.0,350.0} +art="ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp" +buffid={"BPSE","BPSE","BPSE","BPSE"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={90,90,90,90} +dataa={25.0,50.0,75.0,100.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +dur={3.0,4.0,5.0,6.0} +efctid={"","","",""} +hero=1 +herodur={2.0,3.0,4.0,4.5} +hotkey="T" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争践踏" +order="stomp" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习战争践踏(|cffffcc00T|r) - [|cffffcc00等级 %d|r]。" +researchubertip="震击地面,击晕周围的地面单位。|n|n|cffffcc00等级 1|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 2|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 3|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 4|r - 点伤害,昏晕状态持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,organic","ground,organic","ground,organic","ground,organic"} +tip={"战争践踏(|cffffcc00T|r) - [|cffffcc00等级 1|r]","战争践踏(|cffffcc00T|r) - [|cffffcc00等级 2|r]","战争践踏(|cffffcc00T|r) - [|cffffcc00等级 3|r]","战争践踏(|cffffcc00T|r) - [|cffffcc00等级 4|r]"} +ubertip={"震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOwk] +_code="AOwk" +_id="AOwk" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWindWalkOn.blp" +buffid={"BOwk","BOwk","BOwk","BOwk"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,5.0,5.0,5.0} +cost={75,75,75,75} +dataa={0.6,0.6,0.6,0.6} +datab={0.1,0.4,0.7,0.7} +datac={40.0,70.0,100.0,100.0} +datad={1,1,1,1} +dur={20.0,40.0,60.0,60.0} +efctid={"","","",""} +effectsound="WindWalk" +hero=1 +herodur={20.0,40.0,60.0,60.0} +hotkey="W" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾步风" +order="windwalk" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWindWalkOn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习疾步风(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="使得剑圣在一定时间内隐形并加快移动速度,如果此时进行攻击的话,那么就不再隐形但会造成更多的伤害。|n|n|cffffcc00等级 1|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。|n|cffffcc00等级 2|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。|n|cffffcc00等级 3|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral","air,ground,enemy,neutral"} +tip={"疾步风(|cffffcc00W|r) - [|cffffcc00等级 1|r]","疾步风(|cffffcc00W|r) - [|cffffcc00等级 2|r]","疾步风(|cffffcc00W|r) - [|cffffcc00等级 3|r]"} +ubertip={"使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。","使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。","使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOws] +_code="AOws" +_id="AOws" +_max_level=3 +_type="ability" +animnames="spell,slam" +area={250.0,300.0,350.0,350.0} +art="ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp" +buffid={"BPSE","BPSE","BPSE","BPSE"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={90,90,90,90} +dataa={25.0,50.0,75.0,75.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +dur={3.0,4.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={2.0,3.0,4.0,4.0} +hotkey="T" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争践踏" +order="stomp" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="T" +researchtip="学习战争践踏(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +researchubertip="重击地面,对周围的地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害,秒眩晕效果。|n|cffffcc00等级 2|r - 点伤害,秒眩晕效果。|n|cffffcc00等级 3|r - 点伤害,秒眩晕效果。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,organic","ground,organic","ground,organic","ground,organic"} +tip={"战争践踏(|cffffcc00T|r) - [|cffffcc00等级 1|r]","战争践踏(|cffffcc00T|r) - [|cffffcc00等级 2|r]","战争践踏(|cffffcc00T|r) - [|cffffcc00等级 3|r]"} +ubertip={"重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。","重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。","重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AOww] +_code="AOww" +_id="AOww" +_max_level=1 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNWhirlwind.blp" +buffid={"BOww","BOww","BOww","BOww"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,240.0,240.0,240.0} +cost={200,250,250,250} +dataa={110.0,150.0,150.0,150.0} +datab={0.0,0.0,0.0,0.0} +dur={7.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="剑刃风暴" +order="whirlwind" +priority=0 +race="orc" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNWhirlwind.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习剑刃风暴(|cffffcc00B|r)" +researchubertip="使得剑圣周围能形成一股具有极强攻击力的剑刃风暴。对周围敌方的地面单位造成每秒点的伤害。|n持续秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral"} +tip={"剑刃风暴(|cffffcc00B|r)"} +ubertip={"使得剑圣周围能形成一股具有极强攻击力的剑刃风暴。对周围敌方的地面单位造成每秒点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APdi] +_code="AIdi" +_id="APdi" +_max_level=1 +_type="ability" +area={800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Items\\AItb\\AItbTarget.mdl" +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="力量上升驱散" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APh1] +_code="AIha" +_id="APh1" +_max_level=1 +_type="ability" +area={800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={125,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="力量上升治疗区域减小" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APh2] +_code="AIha" +_id="APh2" +_max_level=1 +_type="ability" +area={800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={250,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="力量上升治疗区域 " +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APh3] +_code="AIha" +_id="APh3" +_max_level=1 +_type="ability" +area={800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={400,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="力量上升治疗区域增强" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APmg] +_code="AImr" +_id="APmg" +_max_level=1 +_type="ability" +area={1200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfProtection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={300,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神秘区域魔法恢复增强" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1200.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APmr] +_code="AImr" +_id="APmr" +_max_level=1 +_type="ability" +area={1200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfProtection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={125,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神秘区域魔法恢复" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1200.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APra] +_code="AIra" +_id="APra" +_max_level=1 +_type="ability" +area={1200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHealing.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={40.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={300,0,0,0} +datab={150,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="神秘区域生命/魔法恢复" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Items\\AIre\\AIreTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APrl] +_code="AHre" +_id="APrl" +_max_level=1 +_type="ability" +area={1400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小型复活神符" +order="resurrection" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead,friend","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APrr] +_code="AHre" +_id="APrr" +_max_level=1 +_type="ability" +area={1400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNResurrection.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Resurrect\\ResurrectCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="大型复活神符" +order="resurrection" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Resurrect\\ResurrectTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead,friend","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APsa] +_code="AIsa" +_id="APsa" +_max_level=1 +_type="ability" +area={1200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHaste.blp" +buffid={"Bspe","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={60.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="速度神符" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[APwt] +_code="Aeye" +_id="APwt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +buffid={"Beye","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="岗哨神符" +order="evileye" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nwad","","",""} +untip={} +unubertip={} + +[ARal] +_code="ARal" +_id="ARal" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRallyPoint.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="集结" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUan] +_code="AUan" +_id="AUan" +_max_level=1 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNAnimateDead.blp" +buffid={"BUan","BUan","BUan","BUan"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,240.0,240.0,240.0} +cost={175,175,175,175} +dataa={6,6,6,6} +datab={1,1,1,1} +datac={0,0,0,0} +dur={40.0,120.0,120.0,120.0} +efctid={"","","",""} +hero=1 +herodur={40.0,120.0,120.0,120.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="操纵死尸" +order="animatedead" +priority=0 +race="undead" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNAnimateDead.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习操纵死尸(|cffffcc00D|r)" +researchubertip="复活个阵亡单位,持续时间为秒。" +rng={400.0,400.0,400.0,400.0} +specialart="Abilities\\Spells\\Undead\\AnimateDead\\AnimateDeadTarget.mdl" +targetattachcount=0 +targs={"air,ground,dead","air,ground,dead","air,ground,dead","air,ground,dead"} +tip={"操纵死尸(|cffffcc00D|r)"} +ubertip={"复活个阵亡单位,持续时间为秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUau] +_code="AUau" +_id="AUau" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNUnholyAura.blp" +buffid={"BUau","BUau","BUau","BUau"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.2,0.3,0.3} +datab={0.5,1.0,1.5,1.5} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶光环" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNUnholyAura.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="U" +researchtip="学习邪恶光环(|cffffcc00U|r) - [|cffffcc00等级 %d|r]" +researchubertip="增加周围友军单位的移动速度和生命恢复速度。|n|n|cffffcc00等级 1|r - 增加%的移动速度和小幅度的生命恢复速度。|n|cffffcc00等级 2|r - 增加%的移动速度和中等幅度的生命恢复速度。|n|cffffcc00等级 3|r - 增加%的移动速度和大幅度的生命恢复速度。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\UnholyAura\\UnholyAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu","air,ground,friend,self,vuln,invu"} +tip={"邪恶光环 - [|cffffcc00等级 1|r]","邪恶光环 - [|cffffcc00等级 2|r]","邪恶光环 - [|cffffcc00等级 3|r]"} +ubertip={"增加周围友军单位%的移动速度和生命恢复速度。","增加周围友军单位%的移动速度和生命恢复速度。","增加周围友军单位%的移动速度和生命恢复速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUav] +_code="AUav" +_id="AUav" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNVampiricAura.blp" +buffid={"BUav","BUav","BUav","BUav"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.3,0.45,0.45} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吸血光环" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNVampiricAura.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="V" +researchtip="学习吸血光环(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +researchubertip="能对敌人进行一轮冰冻攻击,对其造成一定伤害并使其减速。|n|n|cffffcc00等级 1|r -点常规伤害,点新星伤害。|n|cffffcc00等级 2|r -点常规伤害,点新星伤害。|n|cffffcc00等级 3|r -点常规伤害,点新星伤害。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic","air,ground,friend,self,vuln,invu,organic"} +tip={"吸血光环 - [|cffffcc00等级 1|r]","吸血光环 - [|cffffcc00等级 2|r]","吸血光环 - [|cffffcc00等级 3|r]"} +ubertip={"附近的单位可以将%对敌人的伤害值转成自己的生命值。","附近的单位可以将%对敌人的伤害值转成自己的生命值。","附近的单位可以将%对敌人的伤害值转成自己的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUbu] +_code="AUbu" +_id="AUbu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNScourgeBuild.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建造(不死族)" +order="undeadbuild" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUcb] +_code="AUcb" +_id="AUcb" +_max_level=3 +_type="ability" +area={900.0,900.0,900.0,900.0} +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabsOn.blp" +buffid={"BUcb","BUcb","BUcb","BUcb"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={30,30,30,30} +dataa={1,1,1,1} +datab={0,0,0,0} +datac={"ucs1","ucs2","ucs3","ucs3"} +datad={"","","",""} +datae={5,5,5,5} +dataf={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="腐尸甲虫" +order="Carrionscarabs" +orderoff="Carrionscarabsoff" +orderon="Carrionscarabson" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="从目标尸体中召唤出条甲虫来。但是每次你只能控制 条甲虫。|n|n|cffffcc00等级 1|r - 点生命值, - 点攻击力。|n|cffffcc00等级 2|r - 点生命值, - 点攻击力,甲虫且具有钻地技能。|n|cffffcc00等级 3|r - 点生命值, - 点攻击力,甲虫且具有钻地技能。" +rng={900.0,900.0,900.0,900.0} +targetattachcount=0 +targs={"dead","dead","dead","dead"} +tip={"腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 1|r]","腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 2|r]","腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和 -点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。","从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和-点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。","从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和-点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabsOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[AUcs] +_code="AUcs" +_id="AUcs" +_max_level=3 +_type="ability" +animnames="attack,slam" +area={100.0,100.0,100.0,100.0} +art="ReplaceableTextures\\CommandButtons\\BTNCarrionSwarm.blp" +buffid={"BUcs","BUcs","BUcs","BUcs"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,10.0,10.0,10.0} +cost={110,110,110,110} +dataa={75.0,125.0,200.0,200.0} +datab={300.0,600.0,1000.0,1000.0} +datac={800.0,800.0,800.0,800.0} +datad={300.0,300.0,300.0,300.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmMissile.mdl" +missilehoming=0 +missilespeed=1100 +name="腐臭蜂群" +order="carrionswarm" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNCarrionSwarm.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="放出一群蝙蝠和昆虫对一线上的敌人造成一定的伤害。|n|n|cffffcc00等级 1|r - 对每个单位造成点的伤害。|n|cffffcc00等级 2|r - 对每个单位造成点的伤害。|n|cffffcc00等级 3|r - 对每个单位造成点的伤害。" +rng={700.0,700.0,700.0,700.0} +specialart="Abilities\\Spells\\Undead\\CarrionSwarm\\CarrionSwarmDamage.mdl" +targetattachcount=0 +targs={"ground,air,organic","ground,air,organic","ground,air,organic","ground,air,organic"} +tip={"腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 1|r]","腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 2|r]","腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。","放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。","放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUdc] +_code="AUdc" +_id="AUdc" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathCoil.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={75,75,75,75} +dataa={200.0,400.0,600.0,600.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilMissile.mdl" +missilehoming=1 +missilespeed=1100 +name="死亡缠绕" +order="deathcoil" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDeathCoil.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="C" +researchtip="学习死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +researchubertip="能治疗友军的某个不死单位或者伤害敌人的某个单位。|n|n|cffffcc00等级 1|r - 恢复点生命值。|n|cffffcc00等级 2|r - 恢复点生命值。|n|cffffcc00等级 3|r - 恢复点生命值。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilSpecialArt.mdl" +targetattachcount=0 +targs={"air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient","air,ground,organic,notself,invu,vuln,nonancient"} +tip={"死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 1|r]","死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 2|r]","死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 3|r]"} +ubertip={"能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。","能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。","能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUdd] +_code="AUdd" +_id="AUdd" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={300.0,400.0,400.0,400.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathAndDecay.blp" +buffid={"BUdd","BUdd","BUdd","BUdd"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={150.0,150.0,150.0,150.0} +cost={250,250,250,250} +dataa={0.04,0.04,0.04,0.04} +datab={1.0,0.0,0.0,0.0} +dur={35.0,35.0,35.0,35.0} +efctid={"XUdd","XUdd","XUdd","XUdd"} +hero=1 +herodur={35.0,35.0,35.0,35.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡凋零" +order="deathanddecay" +priority=0 +race="undead" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNDeathAndDecay.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习死亡凋零(|cffffcc00D|r)" +researchubertip="能以每秒%的速度来消耗有效范围内一切单位和建筑物的生命值。也能摧毁树木。|n持续秒。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"air,ground,structure,ward","air,ground,structure,ward","air,ground,structure,ward","air,ground,structure,ward"} +tip={"死亡凋零(|cffffcc00D|r)"} +ubertip={"能以每秒%的速度来消耗有效范围内一切单位和建筑物的生命值。也能摧毁树木。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUdp] +_code="AUdp" +_id="AUdp" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathPact.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={15.0,15.0,15.0,15.0} +cost={50,50,50,50} +dataa={0.0,0.0,0.0,0.0} +datab={1.0,2.0,3.0,3.0} +datac={0,0,0,0} +datad={0,0,0,0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡契约" +order="deathpact" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDeathPact.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习死亡契约(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="杀死一个友军单位,将其一定百分比的生命值转成死亡骑士的生命值。|n|n|cffffcc00等级 1|r - 转化%。|n|cffffcc00等级 2|r -转化 %。|n|cffffcc00等级 3|r - 转化%。" +rng={800.0,800.0,800.0,800.0} +targetart="Abilities\\Spells\\Undead\\DeathPact\\DeathPactTarget.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,player,nonhero,invu,vuln","air,ground,player,nonhero,invu,vuln","air,ground,player,nonhero,invu,vuln","air,ground,player,nonhero,invu,vuln"} +tip={"死亡契约(|cffffcc00E|r) - [|cffffcc00等级 1|r]","死亡契约(|cffffcc00E|r) - [|cffffcc00等级 2|r]","死亡契约(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。","杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。","杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUdr] +_code="AUdr" +_id="AUdr" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDarkRitual.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={15.0,15.0,15.0,15.0} +cost={25,25,25,25} +dataa={0.33,0.66,1.0,1.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="黑暗仪式" +order="darkritual" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDarkRitual.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="R" +researchtip="学习黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +researchubertip="牺牲一个友军单位来将其一定百分比的生命值转化成巫妖的魔法值。|n|n|cffffcc00等级 1|r - 转化%的生命值。|n|cffffcc00等级 2|r - 转化%的生命值。|n|cffffcc00等级 3|r - 转化%的生命值。" +rng={800.0,800.0,800.0,800.0} +targetart="Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualTarget.mdl" +targetattachcount=0 +targs={"air,ground,player,nonhero,vuln,invu","air,ground,player,nonhero,vuln,invu","air,ground,player,nonhero,vuln,invu","air,ground,player,nonhero,vuln,invu"} +tip={"黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 1|r]","黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 2|r]","黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 3|r]"} +ubertip={"牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。","牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。","牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUds] +_code="AUds" +_id="AUds" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDarkSummoning.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={90.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12,0,0,0} +datab={1.0,0.0,0.0,0.0} +datac={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\Darksummoning\\DarkSummonTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\DarkSummoning\\DarkSummonMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="黑暗召唤" +order="darksummoning" +priority=0 +race="other" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNDarkSummoning.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习黑暗召唤(|cffffcc00D|r)" +researchubertip="召唤出个友军单位来到自己的身边。" +rng={99999.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\Darksummoning\\DarkSummonTarget.mdl" +targetattachcount=0 +targs={"air,ground,vuln,invu,player","","",""} +tip={"黑暗召唤(|cffffcc00D|r)"} +ubertip={"召唤出个友军单位来到自己的身边。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUfa] +_code="AUfa" +_id="AUfa" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostArmor.blp" +buffid={"BUfa","BUfa","BUfa","BUfa"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,2.0,2.0,2.0} +cost={40,40,40,40} +dataa={45.0,45.0,45.0,45.0} +datab={3.0,5.0,7.0,7.0} +dur={5.0,5.0,5.0,5.0} +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻护甲" +order="frostarmor" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFrostArmor.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="使目标身上具有一层霜冻保护。这保护层能增加一定的护甲并使近战攻击该目标的敌人在一定时间内减速。|n|n|cffffcc00等级 1|r - 增加点护甲。|n|cffffcc00等级 2|r - 增加点护甲。|n|cffffcc00等级 3|r - 增加点护甲。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"air,ground,friend,self,neutral","air,ground,friend,self,neutral","air,ground,friend,self,neutral","air,ground,friend,self,neutral"} +tip={"霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 1|r]","霜冻护甲(|cffffcc00F|r)- [|cffffcc00等级 2|r]","霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUfn] +_code="AUfn" +_id="AUfn" +_max_level=3 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNGlacier.blp" +buffid={"Bfro","Bfro","Bfro","Bfro"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,8.0,8.0} +cost={125,125,125,125} +dataa={50.0,100.0,150.0,150.0} +datab={100.0,100.0,100.0,100.0} +dur={4.0,6.0,8.0,8.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\FrostNova\\FrostNovaTarget.mdl" +hero=1 +herodur={2.0,3.0,4.0,8.0} +hotkey="N" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻新星" +order="frostnova" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNGlacier.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +researchubertip="能对敌人进行一轮冰冻攻击,对其造成一定伤害并使其减速。|n|n|cffffcc00等级 1|r -点常规伤害,点新星伤害。|n|cffffcc00等级 2|r -点常规伤害,点新星伤害。|n|cffffcc00等级 3|r -点常规伤害,点新星伤害。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"ground,enemy,air,neutral,organic","ground,enemy,air,neutral,organic","ground,enemy,air,neutral,organic","ground,enemy,air,neutral,organic"} +tip={"霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 1|r]","霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 2|r]","霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 3|r]"} +ubertip={"对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。","对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。","对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUfu] +_code="AUfu" +_id="AUfu" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOn.blp" +buffid={"BUfa","BUfa","BUfa","BUfa"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,2.0,2.0,2.0} +cost={40,40,40,40} +dataa={45.0,45.0,45.0,45.0} +datab={3.0,5.0,7.0,7.0} +dur={5.0,5.0,5.0,5.0} +editorsuffix=" (自动施放)" +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="F" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="霜冻护甲" +order="frostarmor" +orderoff="frostarmoroff" +orderon="frostarmoron" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNFrostArmor.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +researchubertip="使目标身上具有一层霜冻保护。这保护层能增加一定的护甲并使近战攻击该目标的敌人在一定时间内减速。|n|n|cffffcc00等级 1|r - 增加点护甲。|n|cffffcc00等级 2|r - 增加点护甲。|n|cffffcc00等级 3|r - 增加点护甲。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"air,ground,friend,self,neutral","air,ground,friend,self,neutral","air,ground,friend,self,neutral","air,ground,friend,self,neutral"} +tip={"霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 1|r]","霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 2|r]","霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 3|r]"} +ubertip={"使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFrostArmorOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[AUim] +_code="AUim" +_id="AUim" +_max_level=3 +_type="ability" +area={250.0,250.0,250.0,300.0} +art="ReplaceableTextures\\CommandButtons\\BTNImpale.blp" +buffid={"BUim","BUim","BUim","BUim"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,9.0,9.0,9.0} +cost={100,100,100,100} +dataa={600.0,600.0,600.0,600.0} +datab={0.3,0.3,0.3,0.3} +datac={50.0,80.0,110.0,110.0} +datad={1.0,1.0,1.0,1.0} +dur={2.0,3.0,4.0,4.0} +efctid={"","","",""} +effectsound="ImpaleCast" +hero=1 +herodur={1.0,2.0,3.0,3.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="穿刺" +order="impale" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNImpale.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习穿刺(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成极大伤害并将其轨迹上的敌地面单位抛入空中。|n|n|cffffcc00等级 1|r - 伤害力,秒晕眩。|n|cffffcc00等级 2|r - 伤害力,秒晕眩。|n|cffffcc00等级 3|r - 伤害力,秒晕眩。" +rng={700.0,700.0,700.0,700.0} +specialart="Abilities\\Spells\\Undead\\Impale\\ImpaleMissTarget.mdl" +targetattachcount=0 +targs={"ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic","ground,enemy,neutral,organic"} +tip={"穿刺(|cffffcc00E|r) - [|cffffcc00等级 1|r]","穿刺(|cffffcc00E|r) - [|cffffcc00等级 2|r]","穿刺(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。","以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。","以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUin] +_code="AUin" +_id="AUin" +_max_level=1 +_type="ability" +area={250.0,250.0,250.0,250.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +buffid={"BNin","BNin","BNin","BNin"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={175,175,175,175} +dataa={50.0,50.0,50.0,50.0} +datab={180.0,180.0,180.0,180.0} +datac={1.0,1.0,1.0,1.0} +dur={4.0,4.0,4.0,4.0} +efctid={"","","",""} +effectart="Units\\Demon\\Infernal\\InfernalBirth.mdl" +hero=1 +herodur={2.0,2.0,2.0,2.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地狱火" +order="inferno" +priority=0 +race="undead" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习地狱火(|cffffcc00N|r)" +researchubertip="召唤出一地狱火恶魔从天而降,对地面上的敌人造成点的伤害,并在秒内使其处于昏晕状态。地狱火恶魔持续秒。" +rng={900.0,900.0,900.0,900.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral"} +tip={"地狱火(|cffffcc00N|r)"} +ubertip={"召唤出一地狱火恶魔从天而降,对地面上的敌人造成点的伤害,并在秒内使其处于昏晕状态。地狱火恶魔持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ninf","ninf","ninf","ninf"} +untip={} +unubertip={} + +[AUls] +_code="AUls" +_id="AUls" +_max_level=1 +_type="ability" +area={800.0,800.0,800.0,800.0} +art="ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={20,20,20,20} +datab={0.2,0.2,0.2,0.2} +datac={7,7,7,7} +datad={0.75,1.0,1.0,1.0} +datae={20.0,20.0,20.0,20.0} +dur={30.0,30.0,30.0,30.0} +efctid={"","","",""} +effectsoundlooped="LocustSwarmLoop" +hero=1 +herodur={30.0,30.0,30.0,30.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="蝗虫群" +order="Locustswarm" +priority=0 +race="undead" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="L" +researchtip="学习蝗虫群(|cffffcc00L|r)" +researchubertip="召唤出一群蝗虫来攻击敌人。在它们啃咬敌人的血肉的时候,会将其转化为一种能量物质,在蝗虫返回到地穴领主身边的时候该物质能恢复地穴领主的生命值。|n持续 秒。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy","air,ground,structure,neutral,enemy","air,ground,structure,neutral,enemy","air,ground,structure,neutral,enemy"} +tip={"蝗虫群(|cffffcc00L|r)"} +ubertip={"召唤出一群蝗虫来攻击敌人。在它们啃咬敌人的血肉的时候,会将其转化为一种能量物质,在蝗虫返回到地穴领主身边的时候该物质能恢复地穴领主的生命值。|n持续 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uloc","uloc","uloc","uloc"} +untip={} +unubertip={} + +[AUsl] +_code="AUsl" +_id="AUsl" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"BUsl,BUsp,Bust","BUsl,BUsp,Bust","BUsl,BUsp,Bust","BUsl,BUsp,Bust"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.0,6.0,6.0,6.0} +cost={100,75,50,50} +dataa={2.0,2.0,2.0,2.0} +dur={20.0,40.0,60.0,60.0} +efctid={"","","",""} +hero=1 +herodur={5.0,10.0,15.0,15.0} +hotkey="E" +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="睡眠" +order="sleep" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习睡眠(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。|n|n|cffffcc00等级 1|r -秒的睡眠时间,消耗点魔法。|n|cffffcc00等级 2|r -秒的睡眠时间,消耗点魔法。|n|cffffcc00等级 3|r -秒的睡眠时间,消耗点魔法。" +rng={800.0,800.0,800.0,800.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"睡眠(|cffffcc00E|r) - [|cffffcc00等级 1|r]","睡眠(|cffffcc00E|r) - [|cffffcc00等级 2|r]","睡眠(|cffffcc00E|r) - [|cffffcc00等级 3|r]"} +ubertip={"在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。","在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。","在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[AUts] +_code="AUts" +_id="AUts" +_max_level=3 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNThornShield.blp" +buffid={"BUts","BUts","BUts","BUts"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.15,0.25,0.35,0.35} +datab={1.0,1.0,1.0,1.0} +datac={3.0,5.0,7.0,7.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=3 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="尖刺外壳" +priority=0 +race="undead" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNThornShield.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="S" +researchtip="学习尖刺外壳(|cffffcc00S|r) - [|cffffcc00等级 %d|r]" +researchubertip="在地穴领主的身上形成一层带有尖刺的保护壳,增加其防御能力并能弹射敌人的近战攻击。|n|n|cffffcc00等级 1|r - 弹射%的伤害,增加点护甲。|n|cffffcc00等级 2|r - 弹射%的伤害,增加点护甲。|n|cffffcc00等级 3|r - 弹射%点的伤害,增加点护甲。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"尖刺外壳 - [|cffffcc00等级 1|r]","尖刺外壳 - [|cffffcc00等级 2|r]","尖刺外壳 - [|cffffcc00等级 3|r]"} +ubertip={"增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。","增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。","增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。"} +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +untip={} +unubertip={} + +[Aabr] +_code="Aabr" +_id="Aabr" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNRegenerationAura.blp" +buffid={"Babr","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.004,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="荒芜光环" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\RegenerationAura\\ObsidianRegenAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"ground,air,organic,vuln,invu,friend,neutral","","",""} +tip={"荒芜光环"} +ubertip={"让周围不死族友军单位加快其生命值恢复速度。不能和荒芜光环一起发挥作用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aabs] +_code="Aabs" +_id="Aabs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAbsorbMagic.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={99999.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\AbsorbMana\\AbsorbManaBirthMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="吸收魔法" +order="absorbmana" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"player,vuln,invu","","",""} +tip={"吸收魔法(|cffffcc00B|r)"} +ubertip={"将你某个单位的魔法值全部给予破坏者。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aadm] +_code="Aadm" +_id="Aadm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="autodispel" +orderoff="autodispeloff" +orderon="autodispelon" +priority=0 +race="nightelf" +reqlevel=0 +requires="Resi" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00B|r)"} +ubertip={"能去除敌方单位身上有利的魔法效果和友军单位身上不利的魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +unart="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Aaha] +_code="Aaha" +_id="Aaha" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={1.0,0.0,0.0,0.0} +editorsuffix=" (侍僧采集黄金)" +efctid={"","","",""} +effectsound="AcolyteMining" +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从缠绕金矿那里采集黄金。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="R" +untip={"返送资源(|cffffcc00R|r)"} +unubertip={"将采集到的资源送到最近的基地。"} + +[Aakb] +_code="Aakb" +_id="Aakb" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDrum.blp" +buffid={"Bakb","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战鼓" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\WarDrums\\DrumsCasterHeal.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self,vuln,invu","","",""} +tip={"战鼓"} +ubertip={"能增加周围友军单位的攻击力。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aall] +_code="Aall" +_id="Aall" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\Aneu\\AneuCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={600.0,0.0,0.0,0.0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="共享商店,联盟建筑物。" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Aneu\\AneuTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +unart="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOff.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +untip={} +unubertip={} + +[Aalr] +_code="Aalr" +_id="Aalr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={3.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="警报" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aam2] +_code="Aams" +_id="Aam2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +buffid={"Bams,Bam2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={300,0,0,0} +datad={0,0,0,0} +dur={90.0,0.0,0.0,0.0} +editorsuffix=" (魔法抗性)" +efctid={"","","",""} +hero=0 +herodur={90.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="反魔法外壳" +order="antimagicshell" +priority=0 +race="undead" +reqlevel=0 +requires="Ruba" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,vuln,invu,friend,self","","",""} +tip={"反魔法外壳(|cffffcc00N|r)"} +ubertip={"建立一道屏障,使得目标单位能少受点的魔法伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aamk] +_code="Aamk" +_id="Aamk" +_max_level=4 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNStatUp.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,6,9,12} +datab={3,6,9,12} +datac={3,6,9,12} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="属性附加" +order="attributemodskill" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNStatUp.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=1 +researchhotkey="B" +researchtip="学习属性附加(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="永久性地增加智力,敏捷度和力量。 |n|n|cffffcc00等级 1|r - 对所有属性增加3点。|n|cffffcc00等级 2|r - 增加额外的3点。|n|cffffcc00等级 3|r - 增加额外的3点。|n|cffffcc00等级 4|r - 增加额外的3点。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"属性加强 - [|cffffcc00等级 1|r]","属性加强 - [|cffffcc00等级 2|r]","属性加强 - [|cffffcc00等级 3|r]","属性加强 - [|cffffcc00等级 4|r]"} +ubertip={"将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aams] +_code="Aams" +_id="Aams" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +buffid={"Bams,Bam2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={90.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={90.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="反魔法外壳" +order="antimagicshell" +priority=0 +race="undead" +reqlevel=0 +requires="Ruba" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,vuln,invu","","",""} +tip={"反魔法外壳(|cffffcc00N|r)"} +ubertip={"使得目标单位对所有的魔法免疫。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aap1] +_code="Aapl" +_id="Aap1" +_max_level=1 +_type="ability" +area={176.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +buffid={"Bapl","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={120.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(憎恶)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾病云雾" +priority=0 +race="undead" +reqlevel=0 +requires="Rupc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\PlagueCloud\\PlagueCloudCaster.mdl" +targetattachcount=0 +targs={"ground,enemy,organic,neutral","","",""} +tip={"疾病云雾"} +ubertip={"用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uplg","","",""} +untip={} +unubertip={} + +[Aap2] +_code="Aapl" +_id="Aap2" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +buffid={"Bapl,Bplg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={120.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={-1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(瘟疫守卫)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾病云雾" +priority=0 +race="undead" +reqlevel=0 +requires="Rupc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,organic,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"","","",""} +untip={} +unubertip={} + +[Aap3] +_code="Aapl" +_id="Aap3" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +buffid={"Bapl,Bplg","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={120.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾病云雾" +priority=0 +race="creeps" +reqlevel=0 +requires="Rupc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\PlagueCloud\\PlagueCloudCaster.mdl" +targetattachcount=0 +targs={"ground,enemy,organic,neutral","","",""} +tip={"疾病云雾"} +ubertip={"用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uplg","","",""} +untip={} +unubertip={} + +[Aap4] +_code="Aapl" +_id="Aap4" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +buffid={"Bapl,Bplg","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={-1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意且没有攻击力)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾病云雾" +priority=0 +race="creeps" +reqlevel=0 +requires="Rupc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Undead\\PlagueCloud\\PlagueCloudCaster.mdl" +targetattachcount=0 +targs={"ground,enemy,organic,neutral","","",""} +tip={"疾病云雾"} +ubertip={"用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"","","",""} +untip={} +unubertip={} + +[Aasl] +_code="Aasl" +_id="Aasl" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +buffid={"Basl","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={-0.6,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (龙卷风)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="减速光环" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aast] +_code="Aast" +_id="Aast" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAncestralSpirit.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\AncestralSpirit\\AncestralSpiritCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={250,0,0,0} +dataa={1.0,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="先祖幽灵" +priority=0 +race="orc" +reqlevel=0 +requires="Rowt" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\Reincarnation\\ReincarnationTarget.mdl" +targetattachcount=0 +targs={"ground,player,dead","","",""} +tip={"远古神灵(|cffffcc00C|r)"} +ubertip={"将一个死亡的非英雄牛头人重新复活。复活的牛头人具有先前%的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aatk] +_code="Aatk" +_id="Aatk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="攻击" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aave] +_code="Aave" +_id="Aave" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDestroyer.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"uobs","","",""} +datab={31,0,0,0} +datac={1.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={8.0,0.0,0.0,0.0} +dur={1.1,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="破坏者形态 " +order="sphinxform" +priority=0 +race="undead" +reqlevel=0 +requires="Rusp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +unart="ReplaceableTextures\\CommandButtons\\BTNObsidianStatue.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unitid={"ubsp","","",""} +unorder="unsphinxform" +untip={} +unubertip={} + +[Aawa] +_code="Aawa" +_id="Aawa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="立刻复活英雄" +order="awaken" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Awaken\\Awaken.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abdl] +_code="Abli" +_id="Abdl" +_max_level=1 +_type="ability" +area={960.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={64.0,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.08,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.08,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="大型荒芜之地驱散" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abds] +_code="Abli" +_id="Abds" +_max_level=1 +_type="ability" +area={768.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={64.0,0.0,0.0,0.0} +datab={0,0,0,0} +dur={0.08,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.08,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小型荒芜之地驱散" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abdt] +_code="Abdt" +_id="Abdt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (飞行单位,废弃的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地洞探测" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abgl] +_code="Abli" +_id="Abgl" +_max_level=1 +_type="ability" +area={960.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={64.0,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.08,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.08,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="大型荒芜之地蔓延" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abgm] +_code="Abgm" +_id="Abgm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={1.0,0.0,0.0,0.0} +datac={5,0,0,0} +datad={200.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\UndeadMine\\UndeadMineCircle.mdl" +effectsoundlooped="MineDomeLoop" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闹鬼金矿技能" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abgs] +_code="Abli" +_id="Abgs" +_max_level=1 +_type="ability" +area={768.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={64.0,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.08,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.08,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小型荒芜之地蔓延" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ablo] +_code="Ablo" +_id="Ablo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBloodLustOn.blp" +buffid={"Bblo","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={0.4,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0.3,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="嗜血术" +order="bloodlust" +orderoff="bloodlustoff" +orderon="bloodluston" +priority=11 +race="orc" +reqlevel=0 +requires="Rost" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,organic,self,neutral","","",""} +tip={"嗜血术(|cffffcc00B|r)"} +ubertip={"增加一个友军单位%的攻击速度和%的移动速度。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBloodLustOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Ablp] +_code="Ablp" +_id="Ablp" +_max_level=1 +_type="ability" +area={350.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSacrificialSkull.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={64.0,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.08,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.08,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="荒芜之地的置放" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abof] +_code="Abof" +_id="Abof" +_max_level=1 +_type="ability" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFireRocks.blp" +buffid={"Bbof","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={6.0,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={3.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +dur={2.51,0.0,0.0,0.0} +efctid={"Xbof","","",""} +hero=0 +herodur={1.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.35 +missileart="Abilities\\Weapons\\DemolisherFireMissile\\DemolisherFireMissile.mdl" +missilehoming=0 +missilespeed=900 +name="燃烧之油" +priority=0 +race="orc" +reqlevel=0 +requires="Robf" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,friend,structure,self","","",""} +tip={"燃烧之油"} +ubertip={"用凝固汽油浇在粉碎者的弹药上,使它们能够点燃地面,烧伤敌人。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abrf] +_code="Abrf" +_id="Abrf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBearForm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={"edoc","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={1.45,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变熊" +order="bearform" +priority=0 +race="nightelf" +reqlevel=0 +requires="Redc" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"变熊(|cffffcc00F|r)"} +ubertip={"将德鲁伊变成一头威力巨大的熊,但是其魔法恢复速度会变慢。"} +unart="ReplaceableTextures\\CommandButtons\\BTNDruidOfTheClaw.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"edcm","","",""} +unorder="unbearform" +untip={"恢复暗夜精灵族状态(|cffffcc00F|r)"} +unubertip={"让德鲁伊变为暗夜精灵形态。"} + +[Absk] +_code="Absk" +_id="Absk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBerserkForTrolls.blp" +buffid={"Bbsk","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.2,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="狂战士" +order="berserk" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"狂战士(|cffffcc00B|r)"} +ubertip={"让该单位增加%的攻击速度,但是同时会受到额外%的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abtl] +_code="Abtl" +_id="Abtl" +_max_level=1 +_type="ability" +area={2000.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleStations.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="BurrowBattleStations" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战斗位置" +order="battlestations" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,vuln,invu","","",""} +tip={"战斗位置(|cffffcc00B|r)"} +ubertip={"使得附近的苦工跑入地洞从而对来犯的敌人进行反击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"opeo","","",""} +untip={} +unubertip={} + +[Abu2] +_code="Abur" +_id="Abu2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiendBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ucs2","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={1.45,0.0,0.0,0.0} +editorsuffix=" (圣甲虫 等级 2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="钻地" +order="burrow" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"钻地(|cffffcc00B|r)"} +ubertip={"让腐尸甲虫钻入地下从而变为隐形的。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCryptFiendUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="B" +unitid={"ucsB","","",""} +unorder="unburrow" +untip={"出地(|cffffcc00B|r)"} +unubertip={"让腐尸甲虫钻出地面从而重新变为可见的。"} + +[Abu3] +_code="Abur" +_id="Abu3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiendBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ucs3","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={1.45,0.0,0.0,0.0} +editorsuffix=" (圣甲虫 等级 3)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="钻地" +order="burrow" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"钻地(|cffffcc00B|r)"} +ubertip={"让腐尸甲虫钻入地下从而变为隐形的。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCryptFiendUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="B" +unitid={"ucsC","","",""} +unorder="unburrow" +untip={"出地(|cffffcc00B|r)"} +unubertip={"让腐尸甲虫钻出地面从而重新变为可见的。"} + +[Abu5] +_code="Abur" +_id="Abu5" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiendBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"nanm","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={1.45,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="钻地" +order="burrow" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"钻地(|cffffcc00B|r)"} +ubertip={"阿卡那瑟德钻入地面而消失不见。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCryptFiendUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="B" +unitid={"nbnb","","",""} +unorder="unburrow" +untip={"钻出地面(|cffffcc00B|r)"} +unubertip={"阿卡那瑟德钻出地面,又再次出现。"} + +[Abun] +_code="Abun" +_id="Abun" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="LoadUnload" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="货物保持 (兽族地洞)" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={120.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Abur] +_code="Abur" +_id="Abur" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiendBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ucry","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={1.45,0.0,0.0,0.0} +editorsuffix=" (穴居恶魔)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="钻地" +order="burrow" +priority=0 +race="undead" +reqlevel=0 +requires="Rubu" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"钻地(|cffffcc00B|r)"} +ubertip={"穴居恶魔钻入地下从而变为隐形的,在此期间它能以每秒点的速度来恢复自己的生命值。|n穴居恶魔在此期间也不能进行攻击。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCryptFiendUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="B" +unitid={"ucrm","","",""} +unorder="unburrow" +untip={"出地(|cffffcc00B|r)"} +unubertip={"穴居恶魔从地底下钻出来从而重新变为可见的。"} + +[Acan] +_code="Acan" +_id="Acan" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCannibalize.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={800.0,0.0,0.0,0.0} +dur={33.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={33.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞食尸体" +order="cannibalize" +priority=0 +race="undead" +reqlevel=0 +requires="Ruac" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,dead,organic","","",""} +tip={"吞食尸体(|cffffcc00C|r)"} +ubertip={"消耗周围的某个尸体来以每秒点的速度恢复自己的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acdb] +_code="ANdb" +_id="Acdb" +_max_level=4 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNDrunkenDodge.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,10.0,10.0,10.0} +datab={2.0,3.0,4.0,6.0} +datac={0.0,0.0,0.0,0.0} +datad={0.07,0.14,0.21,0.3} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(陈)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="醉拳" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNDrunkenDodge.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="B" +researchtip="学习醉拳(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +researchubertip="给予一定的概率来躲避攻击和%的概率来对敌人造成额外的伤害。|n|n|cffffcc00等级 1|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 2|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 3|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 4|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。" +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"醉拳 - [|cffffcc00等级 1|r]","醉拳 - [|cffffcc00等级 2|r]","醉拳 - [|cffffcc00等级 3|r]","醉拳 - [|cffffcc00等级 4|r]"} +ubertip={"给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acdh] +_code="ANdh" +_id="Acdh" +_max_level=4 +_type="ability" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNStrongDrink.blp" +buffid={"BNdh","BNdh","BNdh","BNdh"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,12.0,12.0,12.0} +cost={75,75,75,75} +dataa={0,0,0,0} +datab={0.45,0.65,0.8,0.95} +datac={0.5,0.5,0.5,0.5} +datad={0.0,0.0,0.0,0.0} +dur={12.0,12.0,12.0,12.0} +editorsuffix="(陈)" +efctid={"","","",""} +hero=1 +herodur={5.0,5.0,5.0,5.0} +hotkey="D" +item=0 +levels=4 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Spells\\Other\\StrongDrink\\BrewmasterMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="醉酒云雾" +order="drunkenhaze" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNStrongDrink.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +researchubertip="用酒精浸透目标单位,减慢其移送速度,并使其有一定的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 2|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 3|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 4|r - 减慢%的移动速度,%的概率不能击中其他单位。" +rng={550.0,550.0,550.0,550.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral","air,ground,enemy,organic,neutral"} +tip={"醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 1|r]","醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 2|r]","醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 3|r]","醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 4|r]"} +ubertip={"用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acef] +_code="ANef" +_id="Acef" +_max_level=2 +_type="ability" +animnames="spell,throw" +area={128.0,128.0,128.0,128.0} +art="ReplaceableTextures\\CommandButtons\\BTNStormEarth&Fire.blp" +buffid={"BNef","BNef","BNef","BNef"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,150,150} +dataa={"npn1,npn2,npn3","npn4,npn5,npn6","npn1,npn2,npn3","npn1,npn2,npn3"} +dur={60.0,60.0,60.0,60.0} +editorsuffix="(陈)" +efctid={"","","",""} +effectsound="StormEarthFireSound" +hero=1 +herodur={60.0,60.0,60.0,60.0} +hotkey="E" +item=0 +levels=2 +levelskip=6 +missilearc=0.75 +missileart="Units\\Creeps\\FirePandarenBrewmaster\\FirePandarenBrewmaster_Missile.mdl,Units\\Creeps\\StormPandarenBrewmaster\\StormPandarenBrewmaster_Missile.mdl,Units\\Creeps\\EarthPandarenBrewmaster\\EarthPandarenBrewmaster_Missile.mdl" +missilehoming=0 +missilespeed=150 +name="火土风暴" +order="elementalfury" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStormEarth&Fire.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习火土风暴(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。|n|n|cffffcc00等级 1|r - 制造出3个巨大的熊猫战士。|n|cffffcc00等级 2|r - 制造出3个更加巨大的熊猫战士。" +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"火土风暴(|cffffcc00E|r) - [|cffffcc00等级 1|r]","火土风暴(|cffffcc00E|r) - [|cffffcc00等级 2|r]"} +ubertip={"熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。","熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Achd] +_code="Achd" +_id="Achd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={10.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="运输船保持原位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,ward,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ache] +_code="AIdc" +_id="Ache" +_max_level=1 +_type="ability" +area={400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandOfNeutralization.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={15.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={8,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\WandOfNeutralization\\NeutralizationMissile.mdl" +missilehoming=1 +missilespeed=900 +name="瓦解光线" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,enemy,invu,vuln","","",""} +tip={"施放瓦解光线(|cffffcc00R|r)"} +ubertip={"召唤一道压制魔法能量流,可以弹跳次,在其轨迹上驱散敌单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Achl] +_code="Achl" +_id="Achl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载" +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ncpn","","",""} +untip={} +unubertip={} + +[Acht] +_code="ANht" +_id="Acht" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHowlOfTerror.blp" +buffid={"BNht","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\HowlOfTerror\\HowlCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={12.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={10.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恐怖嚎叫" +order="howlofterror" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"恐怖嚎叫(|cffffcc00W|r) "} +ubertip={"发出恐怖的嚎叫,降低周围敌单位的攻击力%,秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aclf] +_code="Aclf" +_id="Aclf" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCloudOfFog.blp" +buffid={"Bclf","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={2,0,0,0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={30.0,0.0,0.0,0.0} +efctid={"Xclf","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="乌云技能" +order="cloudoffog" +priority=0 +race="human" +reqlevel=0 +requires="Rhcd" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1000.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu,structure","","",""} +tip={"乌云技能(|cffffcc00C|r)"} +ubertip={"施放在具有远程攻击能力的敌方建筑物上使其丧失攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acmg] +_code="Acmg" +_id="Acmg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNControlMagic.blp" +buffid={"Bcmg","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={5,0,0,0} +datab={0.45,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="控制魔法" +order="controlmagic" +priority=0 +race="human" +reqlevel=0 +requires="Rhss" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\ControlMagic\\ControlMagicTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"air,ground,enemy,neutral,ward,organic","","",""} +tip={"控制魔法(|cffffcc00C|r)"} +ubertip={"控制一个敌军的召唤单位。消耗的魔法值基为召唤单位生命值的%。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acn2] +_code="Acan" +_id="Acn2" +_max_level=1 +_type="ability" +animnames="stand,channel" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCannibalize.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={15.0,0.0,0.0,0.0} +datab={800.0,0.0,0.0,0.0} +dur={33.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={33.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞食尸体" +order="cannibalize" +priority=0 +race="undead" +reqlevel=0 +requires="Ruac" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,dead,organic","","",""} +tip={"吞食尸体(|cffffcc00C|r)"} +ubertip={"吞食一个附近的尸体,每秒治疗点生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acny] +_code="Acyc" +_id="Acny" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +buffid={"Bcyc,Bcy2","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={150,0,0,0} +dataa={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飓风" +order="cyclone" +priority=0 +race="naga" +reqlevel=0 +requires="Rnsw" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"飓风(|cffffcc00C|r)"} +ubertip={"将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aco2] +_code="Acoi" +_id="Aco2" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHippogriffRider.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ehip","","",""} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="骑乘角鹰兽" +order="双目标" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reht" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"骑乘角鹰兽(|cffffcc00U|r)"} +ubertip={"骑在角鹰兽身上以后,弓箭手可以从空中进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ehpr","","",""} +untip={} +unubertip={} + +[Aco3] +_code="Acoi" +_id="Aco3" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHippogriffRider.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"earc","","",""} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="HippogryphTaming" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="搭载弓箭手" +order="双目标" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reht" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"搭载弓箭手(|cffffcc00U|r)"} +ubertip={"搭载一个弓箭手使其能在空中对敌人进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ehpr","","",""} +untip={} +unubertip={} + +[Acoa] +_code="Acoa" +_id="Acoa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHippogriffRider.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ehip","","",""} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(年长的)" +efctid={"","","",""} +effectsound="HippogryphTaming" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="骑乘角鹰兽" +order="骑乘角鹰兽" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reht" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"骑乘角鹰兽(|cffffcc00U|r)"} +ubertip={"骑在角鹰兽身上以后,弓箭手可以从空中进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ehpr","","",""} +untip={} +unubertip={} + +[Acoh] +_code="Acoh" +_id="Acoh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHippogriffRider.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"earc","","",""} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(年长的)" +efctid={"","","",""} +effectsound="HippogryphTaming" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="搭载弓箭手" +order="搭载弓箭手" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reht" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"搭载弓箭手(|cffffcc00U|r)"} +ubertip={"搭载一个弓箭手使其能在空中对敌人进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ehpr","","",""} +untip={} +unubertip={} + +[Acor] +_code="Acor" +_id="Acor" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCorrosiveBreath.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +missilehoming=0 +missilespeed=1000 +name="腐蚀喷吐" +order="corrosivebreath" +priority=0 +race="nightelf" +reqlevel=0 +requires="Recb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure","","",""} +tip={"腐蚀喷吐"} +ubertip={"能喷出一团腐蚀性液体,对破坏建筑物特别的有效。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acpf] +_code="Acpf" +_id="Acpf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritwalker.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\EtherealForm\\SpiritWalkerChange.mdl" +casterattach="chest" +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ospm","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.7,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="SpiritwalkerMorph" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵肉形态" +order="corporealform" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"灵肉形态(|cffffcc00F|r)"} +ubertip={"让灵魂行者处于灵肉形态,从而能进行攻击也会遭到敌方物理攻击的伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNEtherealFormOn.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"ospw","","",""} +unorder="uncorporealform" +untip={"虚无形态(|cffffcc00F|r)"} +unubertip={"让灵魂行者处于虚无形态,从而对物理攻击免疫,但是自己也会丧失物理进攻能力。此外灵魂行者能施放魔法,但是敌人的魔法也会对其造成额外的伤害。"} + +[Acri] +_code="Acri" +_id="Acri" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCripple.blp" +buffid={"Bcri","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={175,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="残废" +order="cripple" +priority=0 +race="undead" +reqlevel=0 +requires="Rune" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"残废(|cffffcc00C|r)"} +ubertip={"减慢目标单位%的移动速度和%攻击速度,并减弱其%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Acrs] +_code="Acrs" +_id="Acrs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCurseOn.blp" +buffid={"Bcrs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={40,0,0,0} +dataa={0.33,0.0,0.0,0.0} +dur={120.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="诅咒" +order="curse" +orderoff="curseoff" +orderon="curseon" +priority=1 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"诅咒(|cffffcc00C|r)"} +ubertip={"诅咒敌人的某个单位使其有 %的概率不能击中自己的目标。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNCurseOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Acyc] +_code="Acyc" +_id="Acyc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +buffid={"Bcyc,Bcy2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={150,0,0,0} +dataa={1,0,0,0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飓风" +order="cyclone" +priority=0 +race="nightelf" +reqlevel=0 +requires="Redt" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"飓风(|cffffcc00C|r)"} +ubertip={"将目标单位投掷到空中,使其不能移动、攻击和施放任何的魔法技能.而且其他单位也不能在这期间攻击它。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adch] +_code="Adch" +_id="Adch" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDisenchant.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(年长的)" +efctid={"","","",""} +effectsound="Disenchant" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="消魔" +priority=0 +race="orc" +reqlevel=0 +requires="Rowt" +requiresamount="1" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\Disenchant\\DisenchantSpecialArt.mdl" +targetattach="head" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,enemy","","",""} +tip={"消魔(|cffffcc00D|r)"} +ubertip={"驱散目标区域单位身上所有的魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adcn] +_code="Adis" +_id="Adcn" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDisenchant.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="Disenchant" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="消魔" +priority=0 +race="orc" +reqlevel=0 +requires="Rowt" +requiresamount="1" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={650.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\Disenchant\\DisenchantSpecialArt.mdl" +targetattach="head" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"消魔(|cffffcc00D|r)"} +ubertip={"驱散目标区域上的所有的魔法效果。|n|cffffcc00对敌对召唤单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adda] +_code="Adda" +_id="Adda" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={500.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={200.0,0.0,0.0,0.0} +dur={0.3,0.0,0.0,0.0} +editorsuffix=" (工兵)" +efctid={"","","",""} +hero=0 +herodur={0.3,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="范围性攻击伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,ward","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adec] +_code="Adec" +_id="Adec" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNArcher.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"earc","","",""} +datab={"ehip","","",""} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="HippogryphTaming" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卸载" +order="decouple" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reht" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载弓箭手和角鹰兽(|cffffcc00U|r)"} +ubertip={"将弓箭手从角鹰兽身上卸载下来。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adef] +_code="Adef" +_id="Adef" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDefend.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Defend\\DefendCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.3,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={30.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="防御" +order="defend" +priority=0 +race="human" +reqlevel=0 +requires="Rhde" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,debris,neutral,enemy,ward,vuln,invu","","",""} +tip={"防御(|cffffcc00D|r)"} +ubertip={"激活以拥有%的概率反弹穿刺攻击。对于没有被反弹的攻击,也只会受到%的伤害。如果防御状态被激活,移动速度会变成%的常规速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNDefendStop.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="D" +unorder="undefend" +untip={"停止防御(|cffffcc00D|r)"} +unubertip={"取消防御模式,回到以往的移动速度。"} + +[Adev] +_code="Adev" +_id="Adev" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDevour.blp" +buffid={"Bdig,Bdvv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞噬" +order="devour" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\Devour\\DevourEffectArt.mdl" +targetattach="head,mount" +targetattachcount=0 +targs={"ground,nonhero,enemy,organic,neutral","","",""} +tip={"吞噬(|cffffcc00D|r)"} +ubertip={"吞噬敌方目标单位,将其慢慢咀嚼,每秒对其造成点的伤害。在咀嚼目标的过程中,如果科多兽遭到杀害,那么它肚中的被吞噬单位就会从中跳出来。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adis] +_code="Adis" +_id="Adis" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDispelMagic.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="dispel" +priority=0 +race="human" +reqlevel=0 +requires="Rhpt" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00D|r)"} +ubertip={"驱散目标区域内的所有魔法效果。|n|cffffcc00能对召唤出来的单位造成的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adri] +_code="Adri" +_id="Adri" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnLoad.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (被缠绕的金矿)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="立刻卸载" +order="unload" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={80.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载全部(|cffffcc00U|r)"} +ubertip={"卸载全部单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adro] +_code="Adro" +_id="Adro" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnLoad.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (地精飞艇) " +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卸载" +order="unload" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={80.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载全部(|cffffcc00U|r)"} +ubertip={"在指定区域卸载全部单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adsm] +_code="Adis" +_id="Adsm" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDispelMagic.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="dispel" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00D|r)"} +ubertip={"驱逐一定范围内所有魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adt1] +_code="Adet" +_id="Adt1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(岗哨守卫)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="探测者" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adtg] +_code="Atru" +_id="Adtg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNScout.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的 1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="真实视域" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"真实视域"} +ubertip={"显示周围的隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adtn] +_code="Adtn" +_id="Adtn" +_max_level=1 +_type="ability" +area={300.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWispSplode.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={225.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="爆炸" +order="detonate" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +specialart="Units\\NightElf\\Wisp\\WispExplode.mdl" +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"爆炸(|cffffcc00D|r)"} +ubertip={"会毁灭掉小精灵,但可以消除一定范围内所有的魔法效果并会吸收周围每个单位点的魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Adts] +_code="Adts" +_id="Adts" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNMagicalSentry.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\MagicSentry\\MagicSentryCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (人族的防御塔)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法岗哨" +priority=0 +race="human" +reqlevel=0 +requires="Rhse" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"魔法岗哨"} +ubertip={"显示周围的隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Advc] +_code="Advc" +_id="Advc" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={5.0,0.0,0.0,0.0} +datac={5,0,0,0} +dur={0.5,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.5,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞噬货物" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={120.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Advm] +_code="Advm" +_id="Advm" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDevourMagic.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={7.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={75.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={180.0,0.0,0.0,0.0} +dataf={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.1 +missileart="Abilities\\Spells\\Undead\\DevourMagic\\DevourMagicBirthMissile.mdl" +missilehoming=1 +missilespeed=1200 +name="吞噬魔法" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"吞噬魔法(|cffffcc00D|r)"} +ubertip={"吸收一定范围内所有单位身上的魔法效果。每个单位给予破坏者点的生命值和点魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aeat] +_code="Aeat" +_id="Aeat" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEatTree.blp" +buffid={"Beat","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.8,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={500.0,0.0,0.0,0.0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="吞食树木" +order="eattree" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={32.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\NightElf\\EatTree\\EatTreeSprite.mdl" +specialattach="eattree" +targetattachcount=0 +targs={"tree","","",""} +tip={"吞食树木(|cffffcc00E|r)"} +ubertip={"吞食一棵树木以在秒内恢复点的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aegm] +_code="Aegm" +_id="Aegm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="缠绕金矿技能" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aegr] +_code="AIdd" +_id="Aegr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNElunesBlessing.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.65,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.8,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={1.0,0.0,0.0,0.0} +datah={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="艾鲁尼之优雅" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"艾鲁尼之优雅"} +ubertip={"减少来自穿刺攻击的伤害到原来的%,并减少来自魔法攻击的伤害到原来的%。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aenc] +_code="Aenc" +_id="Aenc" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLoad.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (缠绕金矿)" +efctid={"","","",""} +effectsound="WispLoad" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={120.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,invu,vuln","","",""} +tip={"装载(|cffffcc00L|r)"} +ubertip={"让某个小精灵进入金矿。"} +unart="ReplaceableTextures\\CommandButtons\\BTNUnload.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="U" +untip={"卸载全部(|cffffcc00U|r)"} +unubertip={"将所有小精灵从金矿中移开。"} + +[Aenr] +_code="AEer" +_id="Aenr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEntanglingRoots.blp" +buffid={"BEer","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={10.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="纠缠根须" +order="entanglingroots" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,nonhero,organic","","",""} +tip={"纠缠根须(|cffffcc00E|r)"} +ubertip={"从地面冒出根须使目标在秒内不能动弹,并对其造成每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aens] +_code="Aens" +_id="Aens" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +buffid={"Bena,Beng","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Orc\\Ensnare\\EnsnareMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="诱捕" +order="ensnare" +priority=0 +race="orc" +reqlevel=0 +requires="Roen" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,enemy,neutral","","",""} +tip={"诱捕(|cffffcc00E|r)"} +ubertip={"能将一个目标空中单位固定在地面上,使其在秒内不能移动。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aent] +_code="Aent" +_id="Aent" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGoldMine.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={3.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\EntangleMine\\Roots.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="缠绕金矿" +order="entangle" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"缠绕金矿(|cffffcc00G|r)"} +ubertip={"在小精灵采集金矿之前,你必须先将金矿缠绕。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"egol","","",""} +untip={} +unubertip={} + +[Aenw] +_code="AEer" +_id="Aenw" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEntanglingRoots.blp" +buffid={"BEer","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={10.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="纠缠根须" +order="entanglingroots" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,nonhero,organic","","",""} +tip={"纠缠根须(|cffffcc00E|r)"} +ubertip={"从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aesn] +_code="Aesn" +_id="Aesn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSentinel.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={120.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={900.0,0.0,0.0,0.0} +datac={275.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"XEsn","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Units\\NightElf\\Owl\\Owl.mdl" +missilehoming=0 +missilespeed=1500 +name="哨兵" +order="sentinel" +priority=0 +race="nightelf" +reqlevel=0 +requires="Resc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,vuln,invu","","",""} +tip={"哨兵(|cffffcc00E|r)"} +ubertip={"能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aesr] +_code="Aesn" +_id="Aesr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSentinel.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={60.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={900.0,0.0,0.0,0.0} +datac={275.0,0.0,0.0,0.0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (娜萨)" +efctid={"XEsn","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Units\\NightElf\\Owl\\Owl.mdl" +missilehoming=0 +missilespeed=1500 +name="哨兵" +order="sentinel" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,vuln,invu","","",""} +tip={"哨兵(|cffffcc00E|r)"} +ubertip={"能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aetf] +_code="Aetf" +_id="Aetf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNEtherealFormOn.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\EtherealForm\\SpiritWalkerChange.mdl" +casterattach="chest" +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ospw","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={0.7,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="SpiritwalkerMorph" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="虚无形态" +order="etherealform" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"虚无形态(|cffffcc00F|r)"} +ubertip={"让灵魂行者处于虚无形态,从而对物理攻击免疫,但是自己也会丧失物理进攻能力。此外灵魂行者能施放魔法,但是敌人的魔法也会对其造成额外的伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSpiritwalker.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"ospm","","",""} +unorder="unetherealform" +untip={"灵肉形态(|cffffcc00F|r)"} +unubertip={"让灵魂行者处于灵肉形态,从而能进行攻击也会遭到敌方物理攻击的伤害。"} + +[Aeth] +_code="Aeth" +_id="Aeth" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (可见的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="幽灵" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aetl] +_code="Aetl" +_id="Aetl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTemp.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="虚无状态" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"虚无状态"} +ubertip={"处于虚无形态的单位不能攻击,但是能施放魔法,敌方的魔法能对其造成额外的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aexh] +_code="Aexh" +_id="Aexh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNExhumeCorpses.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="挖掘尸体" +priority=0 +race="undead" +reqlevel=0 +requires="Ruex" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"挖掘尸体"} +ubertip={"每秒让绞肉车制造出一具尸体。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ugho","","",""} +untip={} +unubertip={} + +[Aeye] +_code="Aeye" +_id="Aeye" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +buffid={"Beye","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dur={600.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={600.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="岗哨守卫" +order="evileye" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"岗哨守卫(|cffffcc00W|r)"} +ubertip={"能召唤出一个固定隐形的守卫来监视一定的区域。|n能看见隐形单位。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"oeye","","",""} +untip={} +unubertip={} + +[Afa2] +_code="Afae" +_id="Afa2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOn.blp" +buffid={"Bfae","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={45,0,0,0} +dataa={4,0,0,0} +datab={1,0,0,0} +dur={120.0,0.0,0.0,0.0} +editorsuffix="(变形)" +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="精灵之火" +order="faeriefire" +orderoff="faeriefireoff" +orderon="faeriefireon" +priority=2 +race="nightelf" +reqlevel=0 +requires="Reec" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"精灵之火(|cffffcc00R|r)"} +ubertip={"减少目标单位点的护甲,并能拥有该单位的视野。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Afae] +_code="Afae" +_id="Afae" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOn.blp" +buffid={"Bfae","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={45,0,0,0} +dataa={4,0,0,0} +datab={0,0,0,0} +dur={120.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="精灵之火" +order="faeriefire" +orderoff="faeriefireoff" +orderon="faeriefireon" +priority=2 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"精灵之火(|cffffcc00R|r)"} +ubertip={"减少目标单位点的护甲,并能拥有该单位的视野。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNFaerieFireOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Afak] +_code="Afak" +_id="Afak" +_max_level=1 +_type="ability" +animnames="attack" +area={150.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDeathOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={0.45,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={75.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\OrbOfDeath\\AnnihilationMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="毁灭之球" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={450.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,structure,enemy,neutral","","",""} +tip={"毁灭之球(|cffffcc00O|r)"} +ubertip={"增加破坏者点的攻击力并让其攻击具有范围伤害效果。"} +unart="ReplaceableTextures\\CommandButtons\\BTNOrbOfDeathOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="O" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Afbb] +_code="Afbk" +_id="Afbb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFeedBack.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={6.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="反馈" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Feedback\\SpellBreakerAttack.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"反馈"} +ubertip={"灵兽每次攻击抵消点魔力。这些魔力值燃烧,对被攻击单位造成伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afbk] +_code="Afbk" +_id="Afbk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFeedBack.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={4.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (魔法破坏者)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法回应" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Feedback\\SpellBreakerAttack.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"魔法回应"} +ubertip={"魔法破坏者每次攻击消耗目标点魔法值。魔法燃烧后将会对攻击对象造成伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afbt] +_code="Afbk" +_id="Afbt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFeedBack.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={24.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={12.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +datae={20.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (神秘之塔)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法回应" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Feedback\\ArcaneTowerAttack.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"魔法回应"} +ubertip={"塔的每次攻击消耗目标点魔法值,同时还对于目标造成相同数值的伤害。|n|n这种塔的攻击对于召唤出来的单位还能造成点的附加伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afih] +_code="Afih" +_id="Afih" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="开火 (人族)" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afin] +_code="Afin" +_id="Afin" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="开火 (暗夜精灵族)" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afio] +_code="Afio" +_id="Afio" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="开火 (兽族)" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afir] +_code="Afir" +_id="Afir" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="开火" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afiu] +_code="Afiu" +_id="Afiu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="开火 (不死族)" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afla] +_code="Afla" +_id="Afla" +_max_level=1 +_type="ability" +animnames="spell,attack" +area={1800.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFlare.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Flare\\FlareCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={120.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +datab={0.8,0.0,0.0,0.0} +datac={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"Xfla","","",""} +hero=0 +herodur={15.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="照明弹" +order="flare" +priority=0 +race="human" +reqlevel=0 +requires="Rhfl" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"照明弹(|cffffcc00F|r)"} +ubertip={"在目标区域内投射一颗矮人族的照明弹,从而在秒的时间内驱散那里的战争迷雾。|n也能探测到隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aflk] +_code="Aflk" +_id="Aflk" +_max_level=1 +_type="ability" +area={75.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFlakCannons.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={325.0,0.0,0.0,0.0} +datac={7.0,0.0,0.0,0.0} +datad={6.0,0.0,0.0,0.0} +datae={5.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="高射炮火" +priority=0 +race="human" +reqlevel=0 +requires="Rhfc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl" +specialattach="chest" +targetart="Abilities\\Spells\\Human\\FlakCannons\\FlakTarget.mdl" +targetattach="chest" +targetattachcount=0 +targs={"air,enemy,neutral","","",""} +tip={"高射炮火"} +ubertip={"强大的加农炮对空将会造成区域性伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afod] +_code="ANfd" +_id="Afod" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={500.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +lightningeffect="AFOD" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡之指" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNCorpseExplode.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="F" +researchtip="学习死亡之指(|cffffcc00F|r)" +researchubertip="能立刻杀死某个生物或者摧毁某个建筑物。" +rng={800.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Demon\\DemonBoltImpact\\DemonBoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,structure,ancient,nonancient","","",""} +tip={"死亡之指(|cffffcc00F|r)"} +ubertip={"能立刻杀死某个生物或者摧毁某个建筑物。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afr2] +_code="Afra" +_id="Afr2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFrost.blp" +buffid={"Bfro","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\ZigguratFrostMissile\\ZigguratFrostMissile.mdl" +missilehoming=0 +missilespeed=0 +name="霜冻攻击" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground","","",""} +tip={"霜冻攻击"} +ubertip={"在单位攻击的基础上增加冰冻效果,能减慢敌人的移动速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afra] +_code="Afra" +_id="Afra" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFrost.blp" +buffid={"Bfro","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\ZigguratFrostMissile\\ZigguratFrostMissile.mdl" +missilehoming=0 +missilespeed=0 +name="霜之攻击" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground","","",""} +tip={"霜之攻击"} +ubertip={"给单位的攻击增加冰冻效果,可以减慢敌单位的移动速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afrb] +_code="Afrb" +_id="Afrb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"Bfro","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +missilehoming=0 +missilespeed=0 +name="霜冻呼吸" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afrz] +_code="Afrz" +_id="Afrz" +_max_level=1 +_type="ability" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFreezingBreath.blp" +buffid={"Bfrz","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\FreezingBreath\\FreezingBreathMissile.mdl" +missilehoming=1 +missilespeed=900 +name="冰冻喷吐" +order="freezingbreath" +priority=0 +race="undead" +reqlevel=0 +requires="Rufb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,enemy","","",""} +tip={"冰冻喷吐"} +ubertip={"用在建筑物上时,能在段时间内使其失去应有的功效。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afsh] +_code="Afsh" +_id="Afsh" +_max_level=1 +_type="ability" +area={100.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFragmentationBombs.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={275.0,0.0,0.0,0.0} +datab={250.0,0.0,0.0,0.0} +datac={25.0,0.0,0.0,0.0} +datad={18.0,0.0,0.0,0.0} +datae={12.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="碎片攻击" +priority=0 +race="human" +reqlevel=0 +requires="Rhfs" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Weapons\\FlyingMachine\\FlyingMachineImpact.mdl" +targetattach="chest" +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={"碎片攻击"} +ubertip={"迫击炮小队使用碎片攻击的迫击炮,将会增加其对无护甲和中型护甲单位的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Afzy] +_code="Afzy" +_id="Afzy" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBloodLustOn.blp" +buffid={"Bfzy","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.4,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0.3,0.0,0.0,0.0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="狂热" +order="frenzy" +orderoff="frenzyoff" +orderon="frenzyon" +priority=11 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,self","","",""} +tip={"狂热(|cffffcc00F|r)"} +ubertip={"增加%的攻击速度,%的移动速度。持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBloodLustOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="F" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Agho] +_code="Agho" +_id="Agho" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="幽灵" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Agld] +_code="Agld" +_id="Agld" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={12500,0,0,0} +datab={1.0,0.0,0.0,0.0} +datac={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="金矿能力" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Agra] +_code="Agra" +_id="Agra" +_max_level=1 +_type="ability" +animnames="spell,eattree" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGrabTree.blp" +buffid={"Bgra","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={5.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.8,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={15,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战棍" +order="grabtree" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={32.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree","","",""} +tip={"战棍(|cffffcc00W|r)"} +ubertip={"让山岭巨人拔起一棵树木从而拥有攻城能力,并且增加远程攻击范围。|n持续次攻击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Agyb] +_code="Agyb" +_id="Agyb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNHumanArtilleryUpOne.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飞行机器炸弹" +priority=0 +race="human" +reqlevel=0 +requires="Rhgb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"飞行机器炸弹"} +ubertip={"使得飞行机器能攻击地面单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Agyd] +_code="Agyd" +_id="Agyd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={15.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={200.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="创建尸体" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\Graveyard\\GraveMarker.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ugho","","",""} +untip={} +unubertip={} + +[Agyv] +_code="Agyv" +_id="Agyv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNFlyingMachineTrueSight.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (飞行机器)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="真实视域" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"真实视域"} +ubertip={"显示周围的隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ahar] +_code="Ahar" +_id="Ahar" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={10,0,0,0} +datac={10,0,0,0} +dur={1.1,0.0,0.0,0.0} +editorsuffix=" (黄金和木材)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={116.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从金矿处采集黄金资源,从树木上砍伐木材资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="E" +untip={"返送资源(|cffffcc00E|r)"} +unubertip={"将携带的资源送往自己的城镇大厅。"} + +[Ahea] +_code="Ahea" +_id="Ahea" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealOn.blp" +buffid={"Bhea","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={25.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗" +order="heal" +orderoff="healoff" +orderon="healon" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,nonancient,neutral","","",""} +tip={"医疗(|cffffcc00E|r)"} +ubertip={"医疗一个友军的非机械受伤单位,恢复其的生命值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHealOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="E" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Ahid] +_code="Ahid" +_id="Ahid" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAmbush.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (阿卡玛)" +efctid={"","","",""} +effectsound="ShadowMeld" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="I" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="影遁" +order="ambush" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"隐藏(|cffffcc00I|r)"} +ubertip={"让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ahnl] +_code="Aroa" +_id="Ahnl" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={50.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +buffid={"Broa","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\ANrm\\ANrmTarget.mdl" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤仪式" +order="roar" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"notself","","",""} +tip={"召唤仪式(|cffffcc00U|r)"} +ubertip={"从扭曲的地狱召唤能量。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ahr2] +_code="Ahrl" +_id="Ahr2" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5,0,0,0} +datab={50,0,0,0} +dur={1.35,0.0,0.0,0.0} +editorsuffix="(阿克蒙德的食尸鬼在采伐木材)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={116.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从树木上采集木材资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="E" +untip={"返送资源(|cffffcc00E|r)"} +unubertip={"将采集到的木材运送到最近的木材存储点。"} + +[Ahr3] +_code="Ahrl" +_id="Ahr3" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={200,0,0,0} +dur={1.35,0.0,0.0,0.0} +editorsuffix="(地精正在采集木材)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={116.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从树木上采集木材资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="E" +untip={"返送资源(|cffffcc00E|r)"} +unubertip={"将采集到的木材运送到最近的木材存储点。"} + +[Ahrl] +_code="Ahrl" +_id="Ahrl" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={20,0,0,0} +dur={1.35,0.0,0.0,0.0} +editorsuffix=" (采集木材)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={116.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"从树上采集所需的木材。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +unhotkey="E" +untip={"返送资源(|cffffcc00E|r)"} +unubertip={"将携带的资源送往大墓地或者坟场。"} + +[Ahrp] +_code="Arep" +_id="Ahrp" +_max_level=1 +_type="ability" +animnames="stand,work" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRepairOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.35,0.0,0.0,0.0} +datab={1.5,0.0,0.0,0.0} +datac={0.15,0.0,0.0,0.0} +datad={0.6,0.0,0.0,0.0} +datae={75.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(人族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="修理" +order="repair" +orderoff="repairoff" +orderon="repairon" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln","","",""} +tip={"修理(|cffffcc00R|r)"} +ubertip={"修理建筑物和机械单位,需要消耗资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNRepairOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=1 +unhotkey="R" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Ahwd] +_code="Ahwd" +_id="Ahwd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +buffid={"Bhwd","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={200,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix=" (巨魔巫医)" +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="治疗守卫" +order="healingward" +priority=0 +race="orc" +reqlevel=0 +requires="Rowd" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"治疗守卫(|cffffcc00E|r)"} +ubertip={"召唤出一个固定的守卫,该守卫能以每秒%的速度来恢复周围友军非机械单位的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ohwd","","",""} +untip={} +unubertip={} + +[Aien] +_code="AInv" +_id="Aien" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (暗夜精灵族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="单位物品栏" +priority=0 +race="other" +reqlevel=0 +requires="Repm" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"单位物品栏"} +ubertip={"让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aihn] +_code="AInv" +_id="Aihn" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (人族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="单位物品栏" +priority=0 +race="other" +reqlevel=0 +requires="Rhpm" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"单位物品栏"} +ubertip={"让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aimp] +_code="Aimp" +_id="Aimp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNVorpalBlades.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="穿刺剑刃" +priority=0 +race="nightelf" +reqlevel=0 +requires="Repb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"穿刺剑刃"} +ubertip={"使得投刃车发射出去的剑刃能刺穿敌人而伤害到站在后面的其他单位。同时使得投刃车能攻击树木。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ainf] +_code="Ainf" +_id="Ainf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNInnerFireOn.blp" +buffid={"Binf","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={35,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={5,0,0,0} +datac={500.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="InnerFireCast" +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="心灵之火" +order="innerfire" +orderoff="innerfireoff" +orderon="innerfireon" +priority=10 +race="human" +reqlevel=0 +requires="Rhpt" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,neutral,self","","",""} +tip={"心灵之火(|cffffcc00F|r)"} +ubertip={"增加目标友军单位%的攻击力和的防御力。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNInnerFireOff.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="F" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Aion] +_code="AInv" +_id="Aion" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (兽族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="单位物品栏" +priority=0 +race="other" +reqlevel=0 +requires="Ropm" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"单位物品栏"} +ubertip={"让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aiun] +_code="AInv" +_id="Aiun" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (不死族)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="单位物品栏" +priority=0 +race="other" +reqlevel=0 +requires="Rupm" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"单位物品栏"} +ubertip={"让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aivs] +_code="Aivs" +_id="Aivs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNInvisibility.blp" +buffid={"Binv","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={120.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={120.0,0.0,0.0,0.0} +hotkey="I" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="隐形术" +order="invisibility" +priority=0 +race="human" +reqlevel=0 +requires="Rhst" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={300.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Invisibility\\InvisibilityTarget.mdl" +targetattach="chest" +targetattachcount=0 +targs={"air,ground,organic,friend,nonsapper,neutral","","",""} +tip={"隐形术(|cffffcc00I|r)"} +ubertip={"使目标单位处于隐形,但是一旦其攻击或者使用魔法则会显露原形。|n持续 秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Alam] +_code="Alam" +_id="Alam" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSacrifice.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (侍僧)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="牺牲" +order="sacrifice" +priority=0 +race="undead" +reqlevel=0 +requires="usap" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,player","","",""} +tip={"牺牲(|cffffcc00C|r)"} +ubertip={"将一个侍僧送入牺牲深渊将其变成阴影。阴影是一种隐形单位,本身也能看到敌方的隐形单位。|n阴影不能攻击敌人。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aliq] +_code="Aliq" +_id="Aliq" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNLiquidFire.blp" +buffid={"Bliq","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.8,0.0,0.0,0.0} +datad={0,0,0,0} +dur={3.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={3.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="液体炸弹" +priority=0 +race="orc" +reqlevel=0 +requires="Rolf" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,enemy,neutral","","",""} +tip={"液体炸弹"} +ubertip={"对建筑物投掷出液体炸弹从而对其造成持续性的伤害。正在受到液体炸弹作用的建筑物不能被修复,并将其攻击速率下降%。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Alit] +_code="Alit" +_id="Alit" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +lightningeffect="CHIM" +missilearc=0.0 +missileart="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +missilehoming=0 +missilespeed=1500 +name="闪电攻击" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Weapons\\Bolt\\BoltImpact.mdl" +targetattachcount=0 +targs={"air,ground,structure,ward,item,debris","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aloa] +_code="Aloa" +_id="Aloa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLoad.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (地精飞艇)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载" +order="load" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={80.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,invu,vuln","","",""} +tip={"装载(|cffffcc00L|r)"} +ubertip={"装载一个指定的友方地面单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"","","",""} +untip={} +unubertip={} + +[Aloc] +_code="Aloc" +_id="Aloc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="蝗虫" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Alsh] +_code="Alsh" +_id="Alsh" +_max_level=1 +_type="ability" +area={160.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLightningShield.blp" +buffid={"Blsh,Blsa","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={3.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={20.0,0.0,0.0,0.0} +dur={20.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={20.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="闪电护盾" +order="lightningshield" +priority=0 +race="orc" +reqlevel=0 +requires="Rost" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,enemy,neutral","","",""} +tip={"闪电护盾(|cffffcc00L|r)"} +ubertip={"在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amb2] +_code="Ambt" +_id="Amb2" +_max_level=1 +_type="ability" +area={400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Undead\\ReplenishMana\\ReplenishManaCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +datad={-1.0,0.0,0.0,0.0} +datae={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恢复魔法" +order="恢复" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl" +targetattachcount=0 +targs={"air,ground,invu,vuln,friend","","",""} +tip={"恢复魔法(|cffffcc00R|r)"} +ubertip={"恢复一个目标单位的魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Ambb] +_code="AEmb" +_id="Ambb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 3)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +lightningeffect="MBUR" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="法力燃烧" +order="manaburn" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={450.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"法力燃烧(|cffffcc00B|r)"} +ubertip={"射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ambd] +_code="AEmb" +_id="Ambd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +lightningeffect="MBUR" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="法力燃烧" +order="manaburn" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={450.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"法力燃烧(|cffffcc00N|r)"} +ubertip={"射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ambt] +_code="Ambt" +_id="Ambt" +_max_level=1 +_type="ability" +area={400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaRechargeOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\MoonWell\\MoonWellCasterArt.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2.0,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={10.0,0.0,0.0,0.0} +datad={30.0,0.0,0.0,0.0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\NightElf\\MoonWell\\MoonWellTarget.mdl,Abilities\\Spells\\NightElf\\MoonWell\\MoonWellTarget.mdl,Abilities\\Spells\\NightElf\\MoonWell\\MoonWellTarget.mdl,Abilities\\Spells\\NightElf\\MoonWell\\MoonWellTarget.mdl,Abilities\\Spells\\NightElf\\MoonWell\\CorruptedMoonWellTarget.mdl" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="补充魔法和生命值" +order="补充魔法和生命值" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"air,ground,invu,vuln,friend,organic","","",""} +tip={"补充魔法和生命值(|cffffcc00R|r)"} +ubertip={"恢复一个目标单位的魔法和生命值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNManaRechargeOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unhotkey="R" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Amdf] +_code="Amdf" +_id="Amdf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellBreakerMagicDefend.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Defend\\DefendCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={0.33,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.33,0.0,0.0,0.0} +dataf={0.0,0.0,0.0,0.0} +datag={0.0,0.0,0.0,0.0} +datah={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法防御" +order="magicdefense" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"魔法防御(|cffffcc00D|r)"} +ubertip={"激活该技能来获得魔法免疫,但是会减慢%的移动速度。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSpellBreakerMagicUnDefend.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="D" +unorder="magicundefense" +untip={"停止使用魔法防御(|cffffcc00D|r)"} +unubertip={"取消激活该技能能恢复到正常的移动速度,但是同时也对魔法不再免疫。"} + +[Amec] +_code="Amec" +_id="Amec" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMechanicalCritter.blp" +buffid={"Bmec","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="机械类的小玩艺" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amed] +_code="Amed" +_id="Amed" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUndeadUnLoad.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卸载尸体" +order="unloadcorpse" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载尸体(|cffffcc00D|r)"} +ubertip={"将所有尸体都卸载下来以立刻使用它们。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amel] +_code="Amel" +_id="Amel" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUndeadLoadOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="得到尸体" +order="loadcorpse" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={100.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,dead,nonhero","","",""} +tip={"得到尸体(|cffffcc00C|r)"} +ubertip={"捡起附近的一个尸体来做备用。"} +unart="ReplaceableTextures\\CommandButtons\\BTNUndeadLoadOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Amfl] +_code="Amfl" +_id="Amfl" +_max_level=1 +_type="ability" +area={750.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaFlare.blp" +buffid={"Bmfl,Bmfa","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.75,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={3.0,0.0,0.0,0.0} +datab={1.0,0.0,0.0,0.0} +datac={90.0,0.0,0.0,0.0} +datad={50.0,0.0,0.0,0.0} +datae={12.0,0.0,0.0,0.0} +dataf={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={30.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔力之焰" +order="manaflareon" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy","","",""} +tip={"魔力之焰(|cffffcc00F|r)"} +ubertip={"在周围敌方单位施放魔法的时候,让精灵龙对其造成伤害。同时增加精灵龙点的护甲。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNManaFlareOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="F" +unorder="manaflareoff" +untip={"停止魔力之焰(|cffffcc00F|r)"} +unubertip={"停止魔力之焰通道"} + +[Amgl] +_code="Amgl" +_id="Amgl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNUpgradeMoonGlaive.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="月刃" +priority=0 +race="nightelf" +reqlevel=0 +requires="Remg" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"月刃"} +ubertip={"使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amgr] +_code="Amgl" +_id="Amgr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNUpgradeMoonGlaive.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (娜萨)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="月刃" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"月刃"} +ubertip={"使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amic] +_code="Amic" +_id="Amic" +_max_level=1 +_type="ability" +area={2000.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCallToArms.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (城镇大厅)" +efctid={"","","",""} +effectsound="TownHallCallToArms" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战斗号召" +order="townbellon" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"战斗号召(|cffffcc00C|r)"} +ubertip={"让附近的农民过来从而让其变成民兵。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBacktoWork.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="W" +unorder="townbelloff" +untip={"回到工作(|cffffcc00W|r)"} +unubertip={"让附近的民兵过来从而让其重新变成农民。"} + +[Amil] +_code="Amil" +_id="Amil" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCallToArms.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"hpea","","",""} +datab={"hmil","","",""} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (农民)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战斗号召" +order="militia" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"战斗号召(|cffffcc00C|r)"} +ubertip={"让农民跑到最近的一个城镇大厅从而转变成民兵。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNBacktoWork.blp" +"unbuttonpos:1"=2 +"unbuttonpos:2"=2 +unhotkey="W" +unorder="militiaoff" +untip={"回到工作(|cffffcc00W|r)"} +unubertip={"让民兵跑到最近的一个城镇大厅从而让其重新变回农民。"} + +[Amim] +_code="Amim" +_id="Amim" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNMagicImmunity.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法免疫" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"魔法免疫"} +ubertip={"让目标单位对所有魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amin] +_code="Amin" +_id="Amin" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (地精地雷)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="金矿 - 爆炸了" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amls] +_code="Amls" +_id="Amls" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMagicLariet.blp" +buffid={"Bmlc,Bmlt","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={30.0,0.0,0.0,0.0} +dur={40.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +lightningeffect="LEAS" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="空中锁镣" +order="magicleash" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={550.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy,organic","","",""} +tip={"空中锁镣(|cffffcc00E|r)"} +ubertip={"以魔力禁锢一个目标敌空中单位,使其不能移动或攻击,并每秒受到伤害力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amnb] +_code="AEmb" +_id="Amnb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={9.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={1.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +lightningeffect="MBUR" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="法力燃烧" +order="manaburn" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNManaBurn.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={450.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\ManaBurn\\ManaBurnTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={"法力燃烧(|cffffcc00N|r)"} +ubertip={"射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amnx] +_code="Adda" +_id="Amnx" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={150.0,0.0,0.0,0.0} +datab={700.0,0.0,0.0,0.0} +datac={400.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.3,0.0,0.0,0.0} +editorsuffix="(地精地雷)" +efctid={"","","",""} +hero=0 +herodur={0.3,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="范围性攻击伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amnz] +_code="Adda" +_id="Amnz" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={200.0,0.0,0.0,0.0} +datab={700.0,0.0,0.0,0.0} +datac={400.0,0.0,0.0,0.0} +datad={300.0,0.0,0.0,0.0} +dur={0.3,0.0,0.0,0.0} +editorsuffix="(大矿)" +efctid={"","","",""} +hero=0 +herodur={0.3,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="范围性攻击伤害" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amov] +_code="Amov" +_id="Amov" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="移动" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl" +specialattach="origin" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Amrf] +_code="Arav" +_id="Amrf" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRavenForm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={1.05,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"nmed","","",""} +datab={5,0,0,0} +datac={1.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +dur={0.6,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="乌鸦形态" +order="ravenform" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"乌鸦形态(|cffffcc00F|r)"} +ubertip={"变为一只乌鸦。"} +unart="ReplaceableTextures\\CommandButtons\\BTNMedivh.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"nmdm","","",""} +unorder="unravenform" +untip={"人族形态(|cffffcc00F|r)"} +unubertip={"变为一个人族。"} + +[Andm] +_code="Aadm" +_id="Andm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={300.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="驱逐魔法" +order="autodispel" +orderoff="autodispeloff" +orderon="autodispelon" +priority=0 +race="naga" +reqlevel=0 +requires="Rnsi" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\DispelMagic\\DispelMagicTarget.mdl" +targetattachcount=0 +targs={"air,ground,ward,invu,vuln,tree","","",""} +tip={"驱逐魔法(|cffffcc00B|r)"} +ubertip={"能去除敌方单位身上那些有利的魔法效果和友军单位身上那些不利的魔法效果。|n|cffffcc00对召唤单位造成点伤害。|r"} +unart="ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagicOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Andt] +_code="Andt" +_id="Andt" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReveal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50,0,0,0} +datab={0,0,0,0} +datac={3,0,0,0} +dur={6.0,0.0,0.0,0.0} +efctid={"Xbdt","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="显示" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"显示(|cffffcc00R|r)"} +ubertip={"显示地图上的某块区域。|n能看到隐形单位。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ane2] +_code="Aneu" +_id="Ane2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\Aneu\\AneuCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={450.0,0.0,0.0,0.0} +datab={16,0,0,0} +datac={0,0,0,0} +datad={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="选择单位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Aneu\\AneuTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"","","",""} +tip={"选择单位(|cffffcc00U|r)"} +ubertip={} +unart="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOff.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="U" +untip={"取消选定单位(|cffffcc00U|)"} +unubertip={} + +[Aneu] +_code="Aneu" +_id="Aneu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\Aneu\\AneuCaster.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={450.0,0.0,0.0,0.0} +datab={1,0,0,0} +datac={1,0,0,0} +datad={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="H" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="选择英雄" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Aneu\\AneuTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"","","",""} +tip={"选择英雄(|cffffcc00H|r)"} +ubertip={} +unart="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOff.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="H" +untip={"取消选定英雄(|cffffcc00H|r)"} +unubertip={} + +[Anh1] +_code="Anhe" +_id="Anh1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealOn.blp" +buffid={"Bhea","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={1.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={12.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗" +order="heal" +orderoff="healoff" +orderon="healon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,nonancient,neutral","","",""} +tip={"医疗(|cffffcc00E|r)"} +ubertip={"医疗一个非机械友军单位。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHealOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="E" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Anh2] +_code="Anhe" +_id="Anh2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealOn.blp" +buffid={"Bhea","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={1.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={25.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意 3)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗" +order="heal" +orderoff="healoff" +orderon="healon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,nonancient,neutral","","",""} +tip={"医疗(|cffffcc00E|r)"} +ubertip={"医疗一个非机械友军单位。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHealOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="E" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Anhe] +_code="Anhe" +_id="Anhe" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealOn.blp" +buffid={"Bhea","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={1.0,0.0,0.0,0.0} +cost={5,0,0,0} +dataa={15.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="医疗" +order="heal" +orderoff="healoff" +orderon="healon" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,nonancient,neutral","","",""} +tip={"医疗(|cffffcc00E|r)"} +ubertip={"医疗一个非机械友军单位。"} +unart="ReplaceableTextures\\CommandButtons\\BTNHealOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="E" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Ansk] +_code="Assk" +_id="Ansk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNHardenedSkin.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +datac={12.0,0.0,0.0,0.0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="K" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="硬化皮肤" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,ally","","",""} +tip={"硬化皮肤"} +ubertip={"减少所有对此单位的伤害。伤害值不能低于。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ansp] +_code="Ansp" +_id="Ansp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpy.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100,0,0,0} +datab={0,0,0,0} +datac={1,0,0,0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="Y" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="间谍" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"间谍(|cffffcc00Y|r)"} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aoar] +_code="Aoar" +_id="Aoar" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +buffid={"Boar","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.02,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (治疗守卫)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="治疗守卫光环" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,organic,vuln,invu,friend,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apak] +_code="AInv" +_id="Apak" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="行囊技能" +priority=0 +race="orc" +reqlevel=0 +requires="Ropm" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"行囊技能"} +ubertip={"让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apg2] +_code="Aprg" +_id="Apg2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPurge.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={5,0,0,0} +datab={0,0,0,0} +datac={400.0,0.0,0.0,0.0} +datad={3.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="净化" +order="purge" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl" +specialattach="origin" +targetattachcount=0 +targs={"air,ground,ward,vuln,invu,tree","","",""} +tip={"净化(|cffffcc00G|r)"} +ubertip={"去除目标单位身上所有的魔法效果。敌方单位会被固定住,持续时间为秒。并且他们的移动速度也会以的一个因子值来被减慢。不过在秒的时间内,他们的移动速度会慢慢地恢复过来。|n|cffffcc00对召唤出来地单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aphx] +_code="Aphx" +_id="Aphx" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.7,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"hphx","","",""} +datab={7,0,0,0} +datac={0.5,0.0,0.0,0.0} +datad={0.5,0.0,0.0,0.0} +dur={0.5,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="火凤凰变形(和凤凰蛋有关的)" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hpxe","","",""} +untip={} +unubertip={} + +[Apig] +_code="Apig" +_id="Apig" +_max_level=1 +_type="ability" +area={220.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNImmolation.blp" +buffid={"Bpig","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={1.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="永久的献祭" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"永久的献祭"} +ubertip={"烧伤附近的敌人,造成每秒点伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apit] +_code="Apit" +_id="Apit" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ReceiveGold" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=0 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="商店购买物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apiv] +_code="Apiv" +_id="Apiv" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={2.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="永久的隐形" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aply] +_code="Aply" +_id="Aply" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPolymorph.blp" +buffid={"Bply","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={3.0,0.0,0.0,0.0} +cost={220,0,0,0} +dataa={5,0,0,0} +datab={"nshe","","",""} +datac={"nshf","","",""} +datad={"nsha","","",""} +datae={"nshw","","",""} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphFallingSheepArt.mdl" +hero=0 +herodur={60.0,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变形术" +order="polymorph" +priority=0 +race="human" +reqlevel=0 +requires="Rhst" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphTarget.mdl" +targetattachcount=0 +targs={"air,ground,nonhero,enemy,organic,neutral","","",""} +tip={"变形术(|cffffcc00O|r)"} +ubertip={"使得敌人的一个单位变成一头小绵羊,保有原有的生命值和防御,但是会使其丧失攻击力。|n不能被用在英雄身上。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apmf] +_code="ANpi" +_id="Apmf" +_max_level=1 +_type="ability" +area={220.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNImmolation.blp" +buffid={"BNpi","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +dur={1.0,0.0,0.0,0.0} +editorsuffix="(飞行单位)" +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="凤凰火焰" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy,neutral,organic","","",""} +tip={"凤凰火焰"} +ubertip={"对周围敌方的飞行单位造成每秒点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apo2] +_code="Apo2" +_id="Apo2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPoisonSting.blp" +buffid={"BIpb,BIpd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={9.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (毒液之球)" +efctid={"","","",""} +hero=0 +herodur={8.0,0.0,0.0,0.0} +hotkey="T" +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\OrbVenom\\OrbVenomMissile.mdl" +missilehoming=1 +missilespeed=0 +name="毒刺" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,organic","","",""} +tip={"毒刺(|cffffcc00T|r)"} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apoi] +_code="Apoi" +_id="Apoi" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPoisonSting.blp" +buffid={"Bpoi,Bpsd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\PoisonSting\\PoisonStingMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="毒刺" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"毒刺(|cffffcc00T|r)"} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apos] +_code="Apos" +_id="Apos" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPossession.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={1.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={250,0,0,0} +dataa={5,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="占据" +order="possession" +priority=0 +race="undead" +reqlevel=0 +requires="Ruba" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,nonhero,enemy,organic,neutral","","",""} +tip={"占据(|cffffcc00O|r)"} +ubertip={"占据敌方目标单位的灵魂,从而让您能永久性地控制该单位。|n占据魔法不能用在飞行单位,英雄和高于级的野生单位身上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aprg] +_code="Aprg" +_id="Aprg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPurge.blp" +buffid={"Bprg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={5,0,0,0} +datab={0,0,0,0} +datac={400.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={15.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={5.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="净化" +order="purge" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl" +specialattach="origin" +targetattachcount=0 +targs={"air,ground,ward,vuln,invu,tree","","",""} +tip={"净化(|cffffcc00G|r)"} +ubertip={"去除目标单位上的所有魔法效果,并以分之1的速度来减慢其移动速度。目标单位会在秒内慢慢恢复自己的速度。|n|cffffcc00对召唤出来的单位造成点的伤害。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aps2] +_code="Aps2" +_id="Aps2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPossession.blp" +buffid={"Bpos,Bpoc","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={250,0,0,0} +dataa={5,0,0,0} +datab={1.66,0.0,0.0,0.0} +datac={1,0,0,0} +datad={1,0,0,0} +dur={4.5,0.0,0.0,0.0} +editorsuffix=" (通魔)" +efctid={"","","",""} +hero=0 +herodur={4.5,0.0,0.0,0.0} +hotkey="O" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Possession\\PossessionMissile.mdl" +missilehoming=1 +missilespeed=1500 +name="占据" +order="possession" +priority=0 +race="undead" +reqlevel=0 +requires="Ruba" +requiresamount="2" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={350.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,nonhero,enemy,organic,neutral","","",""} +tip={"占据(|cffffcc00O|r)"} +ubertip={"将目标单位和女妖震晕秒,在这个期间,女妖将受到额外的伤害。女妖会将永久地控制目标单位,但是与此同时,施法者的身体也将会被毁掉。|n占据魔法不能被使用在飞行单位,英雄和级别高于的野生单位身上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Apsh] +_code="Apsh" +_id="Apsh" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNPhaseShiftOn.blp" +buffid={"Bpsh","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.5,0.0,0.0,0.0} +cost={20,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +dur={1.5,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ShadowMeld" +hero=0 +herodur={1.5,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="变相移动" +order="phaseshift" +orderoff="phaseshiftoff" +orderon="phaseshifton" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\NightElf\\FaerieDragonInvis\\FaerieDragon_Invis.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"变相移动(|cffffcc00E|r)"} +ubertip={"让该单位一旦遭到攻击就处于消失的状态之中。在短时间内不再受到任何的伤害。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNPhaseShiftOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="E" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Apts] +_code="Apts" +_id="Apts" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={10.0,0.0,0.0,0.0} +editorsuffix=" (绞肉车)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="疾病云雾" +priority=0 +race="undead" +reqlevel=0 +requires="Rupc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,structure,debris,tree,wall,organic,neutral","","",""} +tip={"疾病云雾"} +ubertip={"在每次攻击的时候都能释放出疾病云雾。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"uplg","","",""} +untip={} +unubertip={} + +[Apxf] +_code="Apxf" +_id="Apxf" +_max_level=1 +_type="ability" +area={600.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNMarkOfFire.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.5,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={20.0,0.0,0.0,0.0} +datab={2.0,0.0,0.0,0.0} +dur={10.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={7.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile_mini.mdl" +missilehoming=1 +missilespeed=900 +name="凤凰火焰" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,air,enemy","","",""} +tip={"凤凰火焰"} +ubertip={"火焰流淌,灼烧附近的敌单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ara2] +_code="Aroa" +_id="Ara2" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"Broa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={45.0,0.0,0.0,0.0} +editorsuffix="(变形)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="咆哮" +order="roar" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reeb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={"咆哮(|cffffcc00R|r)"} +ubertip={"增加周围友军单位%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arai] +_code="Arai" +_id="Arai" +_max_level=2 +_type="ability" +area={900.0,900.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRaiseDeadOn.blp" +buffid={"Brai","Brai","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,8.0,0.0,0.0} +cost={75,75,0,0} +dataa={2,1,0,0} +datab={0,1,0,0} +datac={"uske","uske","",""} +datad={"","uskm","",""} +dur={40.0,40.0,0.0,0.0} +efctid={"","","",""} +effectart="Abilities\\Spells\\Undead\\RaiseSkeletonWarrior\\RaiseSkeleton.mdl" +hero=0 +herodur={40.0,40.0,0.0,0.0} +hotkey="R" +item=0 +levels=2 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复活死尸" +order="raisedead" +orderoff="raisedeadoff" +orderon="raisedeadon" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,600.0,0.0,0.0} +targetattachcount=0 +targs={"dead","dead","dead",""} +tip={"复活死尸(|cffffcc00R|r)"} +ubertip={"从一具尸体中召唤出个骷髅战士。"} +unart="ReplaceableTextures\\CommandButtons\\BTNRaiseDeadOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +unitid={"uske","uske","",""} +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Arav] +_code="Arav" +_id="Arav" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRavenForm.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={1.05,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={"edot","","",""} +datab={5,0,0,0} +datac={1.0,0.0,0.0,0.0} +datad={1.0,0.0,0.0,0.0} +dur={0.6,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="风暴之鸦" +order="ravenform" +priority=0 +race="nightelf" +reqlevel=0 +requires="Redt" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"风暴之鸦状态(|cffffcc00F|r)"} +ubertip={"让德鲁伊变为风暴乌鸦,从而可以飞翔在天空中。"} +unart="ReplaceableTextures\\CommandButtons\\BTNDruidOfTheTalon.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"edtm","","",""} +unorder="unravenform" +untip={"恢复暗夜精灵族状态(|cffffcc00F|r)"} +unubertip={"让德鲁伊变为暗夜精灵形态。"} + +[Arbr] +_code="Arbr" +_id="Arbr" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="加强型地洞升级" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\ReinforcedTrollBurrow\\ReinforcedTrollBurrowTarget.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"加强型地洞"} +ubertip={"给予地洞加强型的护甲。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arej] +_code="Arej" +_id="Arej" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRejuvenation.blp" +buffid={"Brej","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={125,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={3,0,0,0} +datad={0,0,0,0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={12.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命恢复" +order="rejuvination" +priority=0 +race="nightelf" +reqlevel=0 +requires="Redc" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,vuln,invu,self,organic,neutral","","",""} +tip={"生命恢复(|cffffcc00E|r)"} +ubertip={"在秒内恢复目标友军单位点的生命值。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arel] +_code="Arel" +_id="Arel" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRingSkull.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="提高英雄生命值恢复速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aren] +_code="Aren" +_id="Aren" +_max_level=1 +_type="ability" +animnames="stand,work" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWispHealOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.35,0.0,0.0,0.0} +datab={1.5,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={175.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsoundlooped="WispRenewLoop" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="更新" +order="renew" +orderoff="renewoff" +orderon="renewon" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"friend,ground,air,structure,bridge,alive,dead,invu,vuln","","",""} +tip={"更新(|cffffcc00R|r)"} +ubertip={"让友方的暗夜精灵建筑物、联盟建筑物与友方的机械单位焕然一新。"} +unart="ReplaceableTextures\\CommandButtons\\BTNWispHealOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=1 +unhotkey="R" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Arep] +_code="Arep" +_id="Arep" +_max_level=1 +_type="ability" +animnames="stand,work" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRepairOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.35,0.0,0.0,0.0} +datab={1.5,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={75.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="修理" +order="repair" +orderoff="repairoff" +orderon="repairon" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln","","",""} +tip={"修理(|cffffcc00R|r)"} +ubertip={"修理建筑物和机械单位,需要消耗资源。"} +unart="ReplaceableTextures\\CommandButtons\\BTNRepairOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=1 +unhotkey="R" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Aret] +_code="Aret" +_id="Aret" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTomeOfRetraining.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Items\\TomeOfRetraining\\TomeOfRetrainingCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="再训练之书" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arev] +_code="Arev" +_id="Arev" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复活英雄" +order="revive" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\ReviveHuman\\ReviveHuman.mdl,Abilities\\Spells\\Orc\\ReviveOrc\\ReviveOrc.mdl,Abilities\\Spells\\Undead\\ReviveUndead\\ReviveUndead.mdl,Abilities\\Spells\\NightElf\\ReviveNightElf\\ReviveNightElf.mdl,Abilities\\Spells\\Demon\\ReviveDemon\\ReviveDemon.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Argd] +_code="Artn" +_id="Argd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="送回黄金" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Argl] +_code="Artn" +_id="Argl" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="送回黄金和木材" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arll] +_code="Arel" +_id="Arll" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHealthStone.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(较小的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="提高英雄生命值恢复速度的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arlm] +_code="Artn" +_id="Arlm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="送回木材" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arng] +_code="Arng" +_id="Arng" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复仇" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +targetart="Abilities\\Weapons\\Mortar\\MortarMissile.mdl" +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aro1] +_code="Aroo" +_id="Aro1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRoot.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={2,0,0,0} +datac={0,0,0,0} +datad={2,0,0,0} +dur={2.5,0.0,0.0,0.0} +editorsuffix="(古树)" +efctid={"","","",""} +hero=0 +herodur={2.5,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="扎根" +order="root" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"扎根(|cffffcc00R|r)"} +ubertip={"使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人。同时使古树变成加强型护甲。"} +unart="ReplaceableTextures\\CommandButtons\\BTNUproot.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="R" +unorder="unroot" +untip={"起立(|cffffcc00R|r)"} +unubertip={"使得古树从地上拔起自己的根须从而能进行移动或者近战的战斗。同时使古树变成重型护甲。"} + +[Aro2] +_code="Aroo" +_id="Aro2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRoot.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={1,0,0,0} +datac={0,0,0,0} +datad={2,0,0,0} +dur={2.5,0.0,0.0,0.0} +editorsuffix="(远古守护者)" +efctid={"","","",""} +hero=0 +herodur={2.5,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="扎根" +order="root" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"扎根(|cffffcc00R|r)"} +ubertip={"使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人。同时使古树变成加强型护甲。"} +unart="ReplaceableTextures\\CommandButtons\\BTNUproot.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="R" +unorder="unroot" +untip={"起立(|cffffcc00R|r)"} +unubertip={"使得古树从地上拔起自己的根须从而能进行移动或者近战的战斗。同时使古树变成重型护甲。"} + +[Aroa] +_code="Aroa" +_id="Aroa" +_max_level=1 +_type="ability" +animnames="spell,slam" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +buffid={"Broa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={0.25,0.0,0.0,0.0} +datab={0,0,0,0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0,0,0,0} +dataf={0,0,0,0} +datag={0,0,0,0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="咆哮" +order="roar" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={"咆哮(|cffffcc00R|r)"} +ubertip={"增加周围友军单位%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aroc] +_code="Aroc" +_id="Aroc" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNScatterRockets.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={630.0,0.0,0.0,0.0} +datac={9,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Weapons\\RocketMissile\\RocketMissile.mdl" +missilehoming=1 +missilespeed=900 +name="弹幕攻击" +priority=0 +race="human" +reqlevel=0 +requires="Rhrt" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy","","",""} +tip={"弹幕攻击"} +ubertip={"对周围的敌方空中单位进行强有力的弹幕攻击。每次发射能造成 - 点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arpb] +_code="Arpb" +_id="Arpb" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOn.blp" +buffid={"Brpb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={6,0,0,0} +casterart="Abilities\\Spells\\Undead\\ReplenishHealth\\ReplenishHealthCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={6,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={25.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={5,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="补充魔法和生命值" +order="replenish" +orderoff="replenishoff" +orderon="replenishon" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\ReplenishHealth\\ReplenishHealthCasterOverhead.mdl" +specialattach="overhead" +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={"恢复(|cffffcc00R|r)"} +ubertip={"恢复一个目标单位的魔法和生命值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="R" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Arpl] +_code="Arpl" +_id="Arpl" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReplenishHealthOn.blp" +buffid={"Brpl","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={6,0,0,0} +casterart="Abilities\\Spells\\Undead\\ReplenishHealth\\ReplenishHealthCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={2,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datae={5,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="枯萎精髓" +order="replenishlife" +orderoff="replenishlifeoff" +orderon="replenishlifeon" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\ReplenishHealth\\ReplenishHealthCasterOverhead.mdl" +specialattach="overhead" +targetart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={"枯萎精髓(|cffffcc00B|r)"} +ubertip={"恢复附近友军点生命值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReplenishHealthOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Arpm] +_code="Arpm" +_id="Arpm" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOn.blp" +buffid={"Brpm","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={6,0,0,0} +casterart="Abilities\\Spells\\Undead\\ReplenishMana\\ReplenishManaCaster.mdl" +casterattach="origin" +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={2,0,0,0} +datab={3.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={5,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="SpiritTouch" +hero=0 +herodur={1.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵魂触摸" +order="恢复魔法值" +orderoff="恢复魔法值 关" +orderon="恢复魔法值 开" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={250.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\ReplenishMana\\ReplenishManaCasterOverhead.mdl" +specialattach="overhead" +targetart="Abilities\\Spells\\Undead\\ReplenishMana\\SpiritTouchTarget.mdl" +targetattachcount=0 +targs={"ground,air,friend,self,organic,vuln,invu","","",""} +tip={"灵魂触摸(|cffffcc00C|r)"} +ubertip={"恢复附近友军点魔法值。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReplenishManaOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Arsg] +_code="AOsf" +_id="Arsg" +_max_level=4 +_type="ability" +animnames="spell,slam" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +buffid={"BOsf","BOsf","BOsf","BOsf"} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,30.0,30.0,30.0} +cost={150,150,150,150} +datab={1,1,1,1} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(雷克萨)" +efctid={"","","",""} +hero=1 +herodur={0.0,0.0,0.0,0.0} +hotkey="I" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤米纱" +order="spiritwolf" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +researchhotkey="I" +researchtip="学习召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出米纱,一头强大的野熊来为你战斗。|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,具有重击技能。 |n|cffffcc00等级 3|r -点生命值,-点攻击力,具有大锤技能。|n|cffffcc00等级 4|r -点生命值,-点攻击力,具有大锤技能。" +rng={800.0,800.0,800.0,800.0} +specialart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 1|r]","召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 2|r]","召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 3|r]","召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 4|r]"} +ubertip={"召唤出米纱,一头具有点生命值的野熊来为你战斗。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有重击技能。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有大锤技能。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有大锤技能。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ngzc","ngzd","ngza","ngz4"} +untip={} +unubertip={} + +[Arsk] +_code="Arsk" +_id="Arsk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNResistantSkin.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="抗性皮肤" +priority=0 +race="nightelf" +reqlevel=0 +requires="Rers" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"抗性皮肤"} +ubertip={"降低负性魔法的持续时间,并让山岭巨人对某些特定魔法免疫。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arsp] +_code="ANst" +_id="Arsp" +_max_level=2 +_type="ability" +animnames="spell,looping" +area={1000.0,1300.0,600.0,600.0} +art="ReplaceableTextures\\CommandButtons\\BTNStampede.blp" +buffid={"BNst","BNst","BNst","BNst"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={180.0,180.0,180.0,180.0} +cost={150,150,200,200} +dataa={2,2,2,3} +datab={55.0,55.0,48.0,48.0} +datac={80.0,130.0,50.0,50.0} +datad={275.0,275.0,200.0,200.0} +datae={0.2,0.2,0.2,0.2} +dur={30.0,30.0,20.0,20.0} +editorsuffix="(雷克萨)" +efctid={"","","",""} +effectsound="StampedeCast" +effectsoundlooped="StampedeLoop" +hero=1 +herodur={30.0,30.0,20.0,20.0} +hotkey="E" +item=0 +levels=2 +levelskip=6 +missilearc=0.0 +missileart="Abilities\\Spells\\Other\\Stampede\\StampedeMissile.mdl" +missilehoming=0 +missilespeed=500 +name="惊吓" +order="stampede" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNStampede.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习惊吓(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +researchubertip="唤出雷霆蜥蜴来爆炸在敌方单位的头上。|n|n|cffffcc00等级 1|r -每个爆炸的雷霆蜥蜴能造成点伤害。|n|cffffcc00等级 2|r -每个爆炸的雷霆蜥蜴能造成点伤害。|n|n持续秒。" +rng={300.0,400.0,1000.0,1000.0} +specialart="Abilities\\Spells\\Other\\Stampede\\MissileDeath.mdl " +targetattachcount=0 +targs={"ground,structure,enemy,neutral","ground,structure,enemy,neutral","ground,structure,enemy,neutral","ground,structure,enemy,neutral"} +tip={"惊吓(|cffffcc00E|r) - [|cffffcc00等级 1|r]","惊吓(|cffffcc00E|r) - [|cffffcc00等级 2|r]"} +ubertip={"召唤出雷霆蜥蜴来爆炸在敌方单位的头上。每个爆炸的雷霆蜥蜴能造成点伤害。|n持续秒。","召唤出雷霆蜥蜴来爆炸在敌方单位的头上。每个爆炸的雷霆蜥蜴能造成点伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Arsq] +_code="ANsq" +_id="Arsq" +_max_level=4 +_type="ability" +animnames="spell,slam" +area={200.0,200.0,200.0,200.0} +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +buffid={"BNsq","BNsq","BNsq","BNsq"} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={20.0,20.0,20.0,20.0} +cost={50,50,50,50} +dataa={1,1,1,1} +dur={70.0,70.0,70.0,70.0} +editorsuffix="(雷克萨)" +efctid={"","","",""} +hero=1 +herodur={70.0,70.0,70.0,70.0} +hotkey="Q" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤豪猪" +order="summonquillbeast" +priority=0 +race="creeps" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +"researchbuttonpos:1"=1 +"researchbuttonpos:2"=0 +researchhotkey="Q" +researchtip="学习召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一头愤怒的豪猪来为你战斗。|n持续秒。|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,具有狂热技能。|n|cffffcc00等级 3|r -点生命值,-点攻击力,具有范围伤害效果。同时具有狂热技能。|n|cffffcc00等级 4|r -点生命值,-点攻击力,具有范围伤害效果。同时具有狂热技能。" +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 1|r]","召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 2|r]","召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 3|r]","召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 4|r]"} +ubertip={"召唤出一头具有点生命值的豪猪来为你战斗。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能并能造成范围伤害。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能并能造成范围伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nqb1","nqb2","nqb3","nqb4"} +untip={} +unubertip={} + +[Arst] +_code="Arst" +_id="Arst" +_max_level=1 +_type="ability" +animnames="stand,work" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNRepairOn.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.35,0.0,0.0,0.0} +datab={1.5,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={175.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsoundlooped="AcolyteRestoreLoop" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="恢复" +order="restoration" +orderoff="restorationoff" +orderon="restorationon" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={50.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln","","",""} +tip={"恢复(|cffffcc00R|r)"} +ubertip={"使得侍僧能修复建筑物和机械单位。"} +unart="ReplaceableTextures\\CommandButtons\\BTNRepairOff.blp" +"unbuttonpos:1"=1 +"unbuttonpos:2"=1 +unhotkey="R" +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Arsw] +_code="AOwd" +_id="Arsw" +_max_level=4 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +buffid={"BOwd","BOwd","BOwd","BOwd"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={6.5,6.5,6.5,6.5} +cost={30,30,30,30} +dataa={1,1,1,1} +dur={40.0,40.0,40.0,40.0} +editorsuffix="(洛克汗)" +efctid={"","","",""} +hero=1 +herodur={40.0,40.0,40.0,40.0} +hotkey="W" +item=0 +levels=4 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="毒蛇守卫" +order="Serpentward" +priority=0 +race="orc" +reqlevel=1 +researchart="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="W" +researchtip="学习毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +researchubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫对魔法免疫。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力。|n|cffffcc00等级 3|r -点生命值,-点攻击力。|n|cffffcc00等级 4|r -点生命值,-点溅射攻击力。" +rng={500.0,500.0,500.0,500.0} +targetattachcount=0 +targs={"","","",""} +tip={"毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 1|r]","毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 2|r]","毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 3|r]","毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 4|r]"} +ubertip={"召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 —— 点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点溅射伤害。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"osp1","osp2","osp3","osp4"} +untip={} +unubertip={} + +[Asac] +_code="Asac" +_id="Asac" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSacrifice.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (牺牲深渊)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="牺牲" +order="sacrifice" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={75.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,organic,nonhero","","",""} +tip={"牺牲(|cffffcc00C|r)"} +ubertip={"将一个侍僧送入牺牲深渊将其变成阴影。阴影是一种隐形单位,本身也能看到敌方的隐形单位。|n阴影不能攻击敌人。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asal] +_code="Asal" +_id="Asal" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNPillage.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="掠夺" +priority=0 +race="orc" +reqlevel=0 +requires="Ropg" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,enemy,neutral","","",""} +tip={"掠夺"} +ubertip={"能使对敌方建筑物的攻击带来一定的资源。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asb1] +_code="ANsu" +_id="Asb1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNagaBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"nmyr","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +dur={0.67,0.0,0.0,0.0} +editorsuffix=" (暴徒)" +efctid={"","","",""} +effectsound="SubmergeSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="潜水" +order="submerge" +priority=0 +race="creeps" +reqlevel=0 +requires="Rnsb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"潜水(|cffffcc00U|r)"} +ubertip={"使单位可以潜入水下,隐去行踪。"} +unart="ReplaceableTextures\\CommandButtons\\BTNNagaUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="U" +unitid={"nmys","","",""} +unorder="unsubmerge" +untip={"浮出水面(|cffffcc00U|r)"} +unubertip={"使单位从水中出现。"} + +[Asb2] +_code="ANsu" +_id="Asb2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNagaBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"nnrg","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +dur={0.7,0.0,0.0,0.0} +editorsuffix=" (皇家卫兵)" +efctid={"","","",""} +effectsound="SubmergeSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="潜水" +order="submerge" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"潜水(|cffffcc00U|r)"} +ubertip={"使单位可以潜入水下,隐去行踪。"} +unart="ReplaceableTextures\\CommandButtons\\BTNNagaUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="U" +unitid={"nnrs","","",""} +unorder="unsubmerge" +untip={"浮出水面(|cffffcc00U|r)"} +unubertip={"使单位从水中出现。"} + +[Asb3] +_code="ANsu" +_id="Asb3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNNagaBurrow.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"nsnp","","",""} +datab={1,0,0,0} +datac={0.0,0.0,0.0,0.0} +dur={0.6,0.0,0.0,0.0} +editorsuffix=" (飞龙)" +efctid={"","","",""} +effectsound="SubmergeSound" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="潜水" +order="submerge" +priority=0 +race="creeps" +reqlevel=0 +requires="Rnsb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"潜水(|cffffcc00U|r)"} +ubertip={"使单位可以潜入水下,隐去行踪。"} +unart="ReplaceableTextures\\CommandButtons\\BTNNagaUnBurrow.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=2 +unhotkey="U" +unitid={"nsbs","","",""} +unorder="unsubmerge" +untip={"浮出水面(|cffffcc00U|r)"} +unubertip={"使单位从水中出现。"} + +[Asd2] +_code="Asds" +_id="Asd2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={60.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={22.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={1,0,0,0} +dur={0.1,0.0,0.0,0.0} +editorsuffix=" (时钟 地精-等级 2)" +efctid={"","","",""} +hero=0 +herodur={0.1,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卡布恩" +order="selfdestruct" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","","",""} +tip={"卡布恩(|cffffcc00B|r)"} +ubertip={"对一定区域造成点伤害。对付建筑物和数目特别地有效。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r"} +unubertip={"|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r"} + +[Asd3] +_code="Asds" +_id="Asd3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={80.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={30.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={1,0,0,0} +dur={0.1,0.0,0.0,0.0} +editorsuffix=" (时钟 地精-等级 3)" +efctid={"","","",""} +hero=0 +herodur={0.1,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卡布恩" +order="selfdestruct" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","","",""} +tip={"卡布恩(|cffffcc00B|r)"} +ubertip={"对一定区域造成点伤害。对付建筑物和数目特别地有效。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r"} +unubertip={"|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r"} + +[Asdg] +_code="Asds" +_id="Asdg" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={30.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={12.0,0.0,0.0,0.0} +datae={1.0,0.0,0.0,0.0} +dataf={1,0,0,0} +dur={0.1,0.0,0.0,0.0} +editorsuffix="(时钟 地精-等级 1)" +efctid={"","","",""} +hero=0 +herodur={0.1,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卡布恩" +order="selfdestruct" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","","",""} +tip={"卡布恩(|cffffcc00B|r)"} +ubertip={"对一定区域造成点伤害。对付建筑物和数目特别地有效。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r"} +unubertip={"|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r"} + +[Asds] +_code="Asds" +_id="Asds" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={250.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={100.0,0.0,0.0,0.0} +datae={3.0,0.0,0.0,0.0} +dataf={0,0,0,0} +dur={0.1,0.0,0.0,0.0} +editorsuffix=" (地精工兵)" +efctid={"","","",""} +hero=0 +herodur={0.1,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卡布恩" +order="selfdestruct" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,structure,debris,tree,ward","","",""} +tip={"卡布恩(|cffffcc00B|r)"} +ubertip={"对一定区域造成点伤害。对付建筑物和数目特别地有效。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSelfDestructOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="B" +untip={"|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r"} +unubertip={"|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r"} + +[Ashm] +_code="Ashm" +_id="Ashm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAmbush.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1.5,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsound="ShadowMeld" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="I" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="影遁" +order="ambush" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"隐藏(|cffffcc00I|r)"} +ubertip={"让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ashs] +_code="Ashs" +_id="Ashs" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandOfShadowSight.blp" +buffid={"Bshs","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="影子权杖" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,neutral","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asid] +_code="Asid" +_id="Asid" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSell.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="出售物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"出售物品"} +ubertip={"能卖出你所拥有的物品。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asla] +_code="Asla" +_id="Asla" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\CreepSleep\\CreepSleepTarget.mdl" +casterattach="overhead" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0,0,0,0} +datab={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +effectsoundlooped="CreepSleepSnoreLoop" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="一直睡眠" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"睡眠(|cffffcc00S|r)"} +ubertip={"催眠单位,直到被唤醒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aslo] +_code="Aslo" +_id="Aslo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSlowOn.blp" +buffid={"Bslo","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Human\\Slow\\SlowCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={0.25,0.0,0.0,0.0} +datac={0,0,0,0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="减速" +order="slow" +orderoff="slowoff" +orderon="slowon" +priority=3 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy","","",""} +tip={"减速(|cffffcc00W|r)"} +ubertip={"减慢目标单位%的攻击速度和%的移动速度。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSlowOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="W" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Aslp] +_code="ANwm" +_id="Aslp" +_max_level=1 +_type="ability" +area={200.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +buffid={"BNwm","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={2,0,0,0} +dur={60.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=1 +herodur={60.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="召唤巨虾" +order="wateryminion" +priority=0 +race="creeps" +reqlevel=0 +researchart="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"","","",""} +tip={"召唤 (|cffffcc00r|r) 巨虾"} +ubertip={"召唤只马库拉巨虾去执行主人的意愿。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nlps","","",""} +untip={} +unubertip={} + +[Asod] +_code="Asod" +_id="Asod" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={1,0,0,0} +datab={"nsce","","",""} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (黑暗之箭)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="产卵之骨" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asou] +_code="Asou" +_id="Asou" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUsedSoulGem.blp" +buffid={"BIsv","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="能占据单位灵魂的物品" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp1] +_code="Asph" +_id="Asp1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 1)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl" +targetattach="sprite,first" +targetattachcount=1 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp2] +_code="Asph" +_id="Asp2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 2)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattachcount=2 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp3] +_code="Asph" +_id="Asp3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 3)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,third" +targetattachcount=3 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp4] +_code="Asph" +_id="Asp4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 4)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,third" +targetattach3="sprite,fourth" +targetattachcount=4 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp5] +_code="Asph" +_id="Asp5" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 5)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs5.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs5.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,third" +targetattach3="sprite,fourth" +targetattach4="sprite,fifth" +targetattachcount=5 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asp6] +_code="Asph" +_id="Asp6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +editorsuffix=" (复仇之魂-等级 6)" +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs5.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs6.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs1.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs2.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs3.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs4.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs5.mdl,Abilities\\Spells\\NightElf\\SpiritOfVengeance\\SpiritOfVengeanceOrbs6.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,third" +targetattach3="sprite,fourth" +targetattach4="sprite,fifth" +targetattach5="sprite,sixth" +targetattachcount=6 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspa] +_code="Aspa" +_id="Aspa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={1.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="蜘蛛攻击" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,ward,item,structure,debris,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspb] +_code="Aspb" +_id="Aspb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellBookBLS.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"AEer,Adis,Aroa","","",""} +datab={1,0,0,0} +datac={3,0,0,0} +datad={3,0,0,0} +datae={"spellbook","","",""} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="魔法书" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspd] +_code="Aspd" +_id="Aspd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={"nspr","","",""} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小蜘蛛" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asph] +_code="Asph" +_id="Asph" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.01,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.01,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.05 +missileart="Units\\Human\\HeroBloodElf\\BloodElfBall.mdl" +missilehoming=0 +missilespeed=1400 +name="球体" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Units\\Human\\HeroBloodElf\\BloodElfBall.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,third" +targetattachcount=3 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspi] +_code="Aspi" +_id="Aspi" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="尖形路障" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\SpikeBarrier\\SpikeBarrier.mdl" +targetattachcount=0 +targs={"enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspl] +_code="Aspl" +_id="Aspl" +_max_level=1 +_type="ability" +area={500.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritLink.blp" +buffid={"Bspl","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\SpiritLink\\SpiritLinkZapTarget.mdl" +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={4,0,0,0} +dur={75.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={75.0,0.0,0.0,0.0} +hotkey="R" +item=0 +levels=1 +levelskip=0 +lightningeffect="SPLK" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵魂锁链" +order="spiritlink" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={750.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\SpiritLink\\SpiritLinkZapTarget.mdl" +targetattachcount=0 +targs={"air,ground,friend,self,organic","","",""} +tip={"灵魂锁链(|cffffcc00R|r)"} +ubertip={"链接个单位在一起。所有被灵魂锁链作用的单位都可以将其%受到的伤害转移到其他单位身上。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +untip={} +unubertip={} + +[Aspo] +_code="Aspo" +_id="Aspo" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNSlowPoison.blp" +buffid={"Bspo,Bssd","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4.0,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.25,0.0,0.0,0.0} +datad={1,0,0,0} +dur={5.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="慢性毒药" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"慢性毒药"} +ubertip={"慢性毒药攻击能造成每秒点的伤害,并在秒内减慢敌人%的移动速度和%的攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspp] +_code="Aspl" +_id="Aspp" +_max_level=1 +_type="ability" +area={1400.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpiritLink.blp" +buffid={"Bspl","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={50,0,0,0} +dur={75.0,0.0,0.0,0.0} +editorsuffix=" (地区)" +efctid={"","","",""} +effectsound="PowerupSound" +hero=0 +herodur={75.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +lightningeffect="SPLK" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="灵魂锁链" +order="spiritlinkaoe" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,friend,self,organic","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +untip={} +unubertip={} + +[Asps] +_code="Asps" +_id="Asps" +_max_level=1 +_type="ability" +area={700.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSpellStealOn.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={3.0,0.0,0.0,0.0} +cost={75,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.15 +missileart="Abilities\\Spells\\Human\\SpellSteal\\SpellStealMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="魔法盗取" +order="spellsteal" +orderoff="spellstealoff" +orderon="spellstealon" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={700.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Human\\SpellSteal\\SpellStealTarget.mdl" +targetattach="overhead" +targetattachcount=0 +targs={"air,ground,friend,enemy,neutral,self,vuln,invu","","",""} +tip={"魔法盗取(|cffffcc00T|r)"} +ubertip={"从敌人身上盗取正面效果的魔法并将其运用到附近的友军单位身上。或者是将友军单位身上的一个负面效果魔法应用到敌方单位身上。"} +unart="ReplaceableTextures\\CommandButtons\\BTNSpellStealOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="T" +untip={"|cffc3dbff点击右键以激活自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Aspt] +_code="Aspd" +_id="Aspt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={"nhyh","","",""} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="诞生刺蛇幼虫" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aspy] +_code="Aspd" +_id="Aspy" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={"nhyd","","",""} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="诞生刺蛇" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Assk] +_code="Assk" +_id="Assk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNHardenedSkin.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={100.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +datac={12.0,0.0,0.0,0.0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="K" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="硬化皮肤" +priority=0 +race="nightelf" +reqlevel=0 +requires="Rehs" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"enemy,ally","","",""} +tip={"硬化皮肤"} +ubertip={"降低所有施加在山岭巨人身上的伤害点。攻击不能低于点。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Assp] +_code="Assp" +_id="Assp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={2,0,0,0} +datab={"nspd","","",""} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小蜘蛛" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asta] +_code="Asta" +_id="Asta" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStasisTrap.blp" +buffid={"Bsta","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={100,0,0,0} +dataa={10.0,0.0,0.0,0.0} +datab={250.0,0.0,0.0,0.0} +datac={400.0,0.0,0.0,0.0} +datad={6.0,0.0,0.0,0.0} +dur={150.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={2.5,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="静止陷阱" +order="stasistrap" +priority=0 +race="orc" +reqlevel=0 +requires="Rowd" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,neutral,enemy","","",""} +tip={"静止陷阱(|cffffcc00T|r)"} +ubertip={"召唤出一个固定隐形的陷阱来击晕靠近的敌方地面单位。当有敌方的地点单位靠近陷阱的时候会自动激活守卫。|n持续秒。|n眩晕效果持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"otot","","",""} +untip={} +unubertip={} + +[Astd] +_code="Astd" +_id="Astd" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBacktoWork.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卸载苦工" +order="standdown" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载苦工(|cffffcc00D|r)"} +ubertip={"使得地洞内的苦工重新回到自己的工作岗位上。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aste] +_code="Aste" +_id="Aste" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWandOfManaSteal.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Other\\Drain\\ManaDrainCaster.mdl" +casterattach="chest" +casterattachcount=0 +checkdep=0 +cool={10.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={50.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={1,0,0,0} +datad={1,0,0,0} +datae={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=1 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="盗取" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={650.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Other\\Drain\\ManaDrainTarget.mdl" +targetattach="chest" +targetattachcount=0 +targs={"notself","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Asth] +_code="Asth" +_id="Asth" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNStormHammer.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="风暴战锤" +priority=0 +race="human" +reqlevel=0 +requires="Rhhb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"风暴战锤"} +ubertip={"让狮鹫骑士的战锤能进行弹射,从而对多个敌人造成伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Astn] +_code="Astn" +_id="Astn" +_max_level=1 +_type="ability" +area={-1.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNStoneForm.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.7,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={"ugar","","",""} +datab={7,0,0,0} +datac={0.5,0.0,0.0,0.0} +datad={0.5,0.0,0.0,0.0} +datae={8.0,0.0,0.0,0.0} +dur={0.5,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="石像形态" +order="stoneform" +priority=0 +race="undead" +reqlevel=0 +requires="Rusf" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"石像形态(|cffffcc00F|r)"} +ubertip={"将石像鬼变成一尊雕像。雕像对所有魔法免疫,护甲也会增强,而且还能以每秒点的速度来恢复自己的生命值。|n石像鬼在这种状态下不能攻击敌人。"} +unart="ReplaceableTextures\\CommandButtons\\BTNGargoyle.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="F" +unitid={"ugrm","","",""} +unorder="unstoneform" +untip={"石像鬼状态(|cffffcc00F|r)"} +unubertip={"让石像鬼重新回到空中。"} + +[Asud] +_code="Asud" +_id="Asud" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHire.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="出售单位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"出售单位"} +ubertip={"能卖出你自己的单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atau] +_code="Atau" +_id="Atau" +_max_level=1 +_type="ability" +area={450.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNTaunt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\NightElf\\Taunt\\TauntCaster.mdl" +casterattachcount=0 +checkdep=1 +cool={15.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +datab={0,0,0,0} +datac={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="嘲讽" +order="taunt" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,vuln,invu","","",""} +tip={"嘲讽(|cffffcc00T|r)"} +ubertip={"最近的个单位会强迫攻击这个单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atdg] +_code="Atdg" +_id="Atdg" +_max_level=1 +_type="ability" +area={650.0,0.0,0.0,0.0} +buffid={"Btdg","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={7.0,0.0,0.0,0.0} +datab={125.0,0.0,0.0,0.0} +datac={50.0,0.0,0.0,0.0} +datad={0.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (龙卷风)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="建筑物破坏光环" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atdp] +_code="Atdp" +_id="Atdp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="放下驾驶员" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atlp] +_code="Atlp" +_id="Atlp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载驾驶员" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={80.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,invu,vuln","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atol] +_code="Atol" +_id="Atol" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="生命之树升级技能" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TreeofLifeUpgrade\\TreeofLifeUpgradeTargetArt.mdl,Abilities\\Spells\\NightElf\\TreeofLifeUpgrade\\TreeofLifeUpgradeTargetArtHand.mdl,Abilities\\Spells\\NightElf\\TreeofLifeUpgrade\\TreeofLifeUpgradeTargetArtHand.mdl" +targetattach="origin" +targetattach1="hand,left" +targetattach2="hand,right" +targetattachcount=3 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atru] +_code="Atru" +_id="Atru" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNShadeTrueSight.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={3,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (阴影)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="真实视域" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"vuln,invu","","",""} +tip={"真实视域"} +ubertip={"显示周围的隐形单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atsp] +_code="Atsp" +_id="Atsp" +_max_level=1 +_type="ability" +area={275.0,0.0,0.0,0.0} +buffid={"Btsp,Btsa","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={22.0,0.0,0.0,0.0} +datab={3.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +editorsuffix=" (龙卷风)" +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="龙卷旋风" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Attu] +_code="Attu" +_id="Attu" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="小塔" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Atwa] +_code="Atwa" +_id="Atwa" +_max_level=1 +_type="ability" +area={1500.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={2.0,0.0,0.0,0.0} +editorsuffix=" (龙卷风)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="龙卷风漫步者" +priority=0 +race="naga" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={1400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Auco] +_code="Auco" +_id="Auco" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnstableConcoction.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.0,0.0,0.0,0.0} +datab={600.0,0.0,0.0,0.0} +datac={200.0,0.0,0.0,0.0} +datad={140.0,0.0,0.0,0.0} +datae={0.0,0.0,0.0,0.0} +dataf={280.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="不稳定化合物" +order="unstableconcoction" +orderoff="unstableconcoctionoff" +orderon="unstableconcoctionon" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,neutral,enemy","","",""} +tip={"不稳定化合物(|cffffcc00C|r)"} +ubertip={"制造出一次强力爆炸,对目标敌方空中单位造成点伤害,对周围敌空中单位造成点伤害。"} +unart="ReplaceableTextures\\CommandButtons\\BTNUnstableConcoction.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="C" +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[Auhf] +_code="Auhf" +_id="Auhf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnholyFrenzy.blp" +buffid={"BUhf","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={1.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={4.0,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶狂热" +order="unholyfrenzy" +priority=0 +race="undead" +reqlevel=0 +requires="Rune" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"邪恶狂热(|cffffcc00U|r)"} +ubertip={"增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Ault] +_code="Ault" +_id="Ault" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="夜视能力" +priority=0 +race="nightelf" +reqlevel=0 +requires="Reuv" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Auns] +_code="Auns" +_id="Auns" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnsummonBuilding.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +datab={50,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="反召唤建筑" +order="unsummon" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"structure,player","","",""} +tip={"反召唤建筑物(|cffffcc00U|r)"} +ubertip={"反召唤建筑物可以取回%的花费资源。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aven] +_code="Aven" +_id="Aven" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNEnvenomedSpear.blp" +buffid={"Bpoi,Bpsd","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4.0,0.0,0.0,0.0} +datab={0.0,0.0,0.0,0.0} +datac={0.0,0.0,0.0,0.0} +datad={1,0,0,0} +dur={25.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={1.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="浸毒武器" +priority=0 +race="orc" +reqlevel=0 +requires="Rovs" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"浸毒武器"} +ubertip={"能造成每秒点的毒性伤害。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Avng] +_code="Avng" +_id="Avng" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAvengingWatcherOn.blp" +buffid={"Bvng","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={2.0,0.0,0.0,0.0} +cost={25,0,0,0} +dataa={1,0,0,0} +datab={0,0,0,0} +datac={"even","","",""} +datad={"","","",""} +datae={6,0,0,0} +dataf={1,0,0,0} +dur={50.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={50.0,0.0,0.0,0.0} +hotkey="V" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="复仇之魂" +order="Vengeance" +orderoff="Vengeanceoff" +orderon="Vengeanceon" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +targetattachcount=0 +targs={"air,ground,dead","","",""} +tip={"复仇之魂(|cffffcc00V|r)"} +ubertip={"从倒下的友军尸体身上召唤出不可伤害的野兽幽魂。持续秒或直到化身死亡。"} +unart="ReplaceableTextures\\CommandButtons\\BTNAvengingWatcherOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unitid={"","","",""} +untip={"|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Avul] +_code="Avul" +_id="Avul" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="无敌的" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awan] +_code="Awan" +_id="Awan" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (中立的)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="游荡者" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awar] +_code="Awar" +_id="Awar" +_max_level=1 +_type="ability" +animnames="slam" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNSmash.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={60.0,0.0,0.0,0.0} +datac={250.0,0.0,0.0,0.0} +datad={350.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="粉碎" +priority=0 +race="orc" +reqlevel=0 +requires="Rows" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral","","",""} +tip={"粉碎"} +ubertip={"给予%的概率使得攻击能对周围的单位造成点的伤害。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Aweb] +_code="Aweb" +_id="Aweb" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWebOn.blp" +buffid={"Bwea,Bweb","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={12.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.6,0.0,0.0,0.0} +datab={200.0,0.0,0.0,0.0} +datac={128.0,0.0,0.0,0.0} +dur={12.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={7.0,0.0,0.0,0.0} +hotkey="W" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Undead\\Web\\Webmissile.mdl" +missilehoming=1 +missilespeed=1500 +name="蛛网" +order="web" +orderoff="weboff" +orderon="webon" +priority=0 +race="undead" +reqlevel=0 +requires="Ruwb" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={400.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,enemy,neutral","","",""} +tip={"蛛网(|cffffcc00W|r)"} +ubertip={"将目标单位用一张网来捕获到地面,从而地面上的单位可以对其进行攻击。|n持续秒。"} +unart="ReplaceableTextures\\CommandButtons\\BTNWebOff.blp" +"unbuttonpos:1"=0 +"unbuttonpos:2"=2 +unhotkey="W" +untip={"|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。"} + +[Awfb] +_code="ANfb" +_id="Awfb" +_max_level=1 +_type="ability" +animnames="spell,throw" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFireBolt.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={8.0,0.0,0.0,0.0} +cost={75,0,0,0} +dataa={100.0,0.0,0.0,0.0} +dur={2.0,0.0,0.0,0.0} +editorsuffix="(巫师)" +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="F" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +missilehoming=1 +missilespeed=1000 +name="霹雳闪电" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={800.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic,enemy,neutral","","",""} +tip={"霹雳闪电(|cffffcc00F|r)"} +ubertip={"能将敌人击晕。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awh2] +_code="Awha" +_id="Awh2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datab={5,0,0,0} +datac={150.0,0.0,0.0,0.0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (小精灵可以采集黄金和木材-远古灵魂)" +efctid={"","","",""} +effectsoundlooped="WispHarvestLoop" +hero=0 +herodur={8.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TargetArtLumber\\TargetArtLumber.mdl" +targetattach="origin" +targetattachcount=0 +targs={"tree,vuln,invu,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"你可以从缠绕金矿中采集黄金,从树木中采集木材。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +untip={} +unubertip={} + +[Awha] +_code="Awha" +_id="Awha" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +buffid={"","","",""} +"buttonpos:1"=3 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={5.0,0.0,0.0,0.0} +datab={5,0,0,0} +datac={150.0,0.0,0.0,0.0} +dur={8.0,0.0,0.0,0.0} +editorsuffix=" (小精灵能采集黄金和木材)" +efctid={"","","",""} +effectsoundlooped="WispHarvestLoop" +hero=0 +herodur={8.0,0.0,0.0,0.0} +hotkey="G" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="采集" +order="harvest" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={900.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\NightElf\\TargetArtLumber\\TargetArtLumber.mdl" +targetattach="origin" +targetattachcount=0 +targs={"tree,alive,dead","","",""} +tip={"采集(|cffffcc00G|r)"} +ubertip={"你可以从缠绕金矿中采集黄金,从树木中采集木材。"} +unart="ReplaceableTextures\\CommandButtons\\BTNReturnGoods.blp" +"unbuttonpos:1"=3 +"unbuttonpos:2"=1 +untip={} +unubertip={} + +[Awrg] +_code="AOws" +_id="Awrg" +_max_level=1 +_type="ability" +animnames="slam" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSeaGiantWarStomp.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={-50.0,0.0,0.0,0.0} +datac={300,0,0,0} +dur={3.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 3) " +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争践踏" +order="stomp" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"战争践踏(|cffffcc00T|r)"} +ubertip={"重击地面,对周围的地面单位造成点的伤害并使其在秒内保持眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awrh] +_code="AOws" +_id="Awrh" +_max_level=1 +_type="ability" +animnames="slam" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNHydraWarStomp.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={-50.0,0.0,0.0,0.0} +datac={300,0,0,0} +dur={3.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 2) " +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争践踏" +order="stomp" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"战争践踏(|cffffcc00T|r)"} +ubertip={"重击地面,对周围的地面单位造成秒内保持眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awrp] +_code="Awrp" +_id="Awrp" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={400.0,0.0,0.0,0.0} +datab={400.0,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="传送门技能" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Awrs] +_code="AOws" +_id="Awrs" +_max_level=1 +_type="ability" +animnames="slam" +area={250.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp" +buffid={"BPSE","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterart="Abilities\\Spells\\Orc\\WarStomp\\WarStompCaster.mdl" +casterattachcount=0 +checkdep=0 +cool={6.0,0.0,0.0,0.0} +cost={90,0,0,0} +dataa={25.0,0.0,0.0,0.0} +datab={-50.0,0.0,0.0,0.0} +datac={300,0,0,0} +dur={3.0,0.0,0.0,0.0} +editorsuffix=" (中立但是带有敌意 1) " +efctid={"","","",""} +hero=0 +herodur={2.0,0.0,0.0,0.0} +hotkey="T" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战争践踏" +order="stomp" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground","","",""} +tip={"战争践踏(|cffffcc00T|r)"} +ubertip={"重击地面,对周围的地面单位造成点的伤害并使其在秒内保持眩晕状态。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SCae] +_code="AOae" +_id="SCae" +_max_level=1 +_type="ability" +area={900.0,0.0,0.0,0.0} +art="ReplaceableTextures\\PassiveButtons\\PASBTNCommand.blp" +buffid={"BOae","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={0.05,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(中立但是带有敌意)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="耐久光环" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetart="Abilities\\Spells\\Orc\\CommandAura\\CommandAura.mdl" +targetattach="origin" +targetattachcount=0 +targs={"air,ground,friend,self","","",""} +tip={"耐久光环"} +ubertip={"增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SCc1] +_code="Acyc" +_id="SCc1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +buffid={"Bcyc,Bcy2","","",""} +"buttonpos:1"=1 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={8.0,0.0,0.0,0.0} +cost={150,0,0,0} +dataa={1,0,0,0} +dur={30.0,0.0,0.0,0.0} +editorsuffix="(赛纳留斯)" +efctid={"","","",""} +hero=0 +herodur={6.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="飓风" +order="cyclone" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,enemy,neutral,organic","","",""} +tip={"飓风(|cffffcc00C|r)"} +ubertip={"将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SCva] +_code="AIva" +_id="SCva" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNFrostMourne.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (霜之哀伤)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Items\\WandOfNeutralization\\NeutralizationMissile.mdl" +missilehoming=0 +missilespeed=0 +name="窃取生命" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +specialart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAuraTarget.mdl" +targetattachcount=0 +targs={"air,ground,enemy","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SNdc] +_code="ANdc" +_id="SNdc" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +buffid={"BNdc","BNdc","BNdc","BNdc"} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.1,0.1,0.1,0.1} +cost={0,0,0,0} +dataa={"commoner","commoner","commoner","commoner"} +dur={6.0,6.0,6.0,6.0} +editorsuffix=" (马哥尼斯,快的)" +efctid={"","","",""} +hero=1 +herodur={6.0,6.0,6.0,6.0} +hotkey="K" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="黑暗转换" +order="darkconversion" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +"researchbuttonpos:1"=2 +"researchbuttonpos:2"=0 +researchhotkey="K" +researchtip="学习黑暗转换(|cffffcc00K|r)" +researchubertip="让一个村民陷入睡眠,并将其变成僵尸。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero","air,ground,organic,nonhero"} +tip={"黑暗转换(|cffffcc00K|r)"} +ubertip={"让一个村民陷入睡眠,并将其变成僵尸。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nzom","nzom","nzom","nzom"} +untip={} +unubertip={} + +[SNdd] +_code="AUdd" +_id="SNdd" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={300.0,300.0,300.0,300.0} +art="ReplaceableTextures\\CommandButtons\\BTNDeathAndDecay.blp" +buffid={"BUdd","BUdd","BUdd","BUdd"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={150.0,150.0,150.0,150.0} +cost={250,250,250,250} +dataa={0.04,0.04,0.04,0.04} +datab={1.0,1.0,1.0,1.0} +dur={35.0,35.0,35.0,35.0} +editorsuffix="(中立但是带有敌意)" +efctid={"XUdd","XUdd","XUdd","XUdd"} +hero=1 +herodur={35.0,35.0,35.0,35.0} +hotkey="D" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="死亡凋零" +order="deathanddecay" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNDeathAndDecay.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="D" +researchtip="学习死亡凋零(|cffffcc00D|r)" +researchubertip="对有效范围内的单位每秒造成相当于%生命值的伤害,也能摧毁树木。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"air,ground,structure,ward","air,ground,structure,ward","air,ground,structure,ward","air,ground,structure,ward"} +tip={"死亡凋零(|cffffcc00D|r)"} +ubertip={"对有效范围内的单位每秒造成相当于%生命值的伤害,也能摧毁树木。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SNeq] +_code="AOeq" +_id="SNeq" +_max_level=1 +_type="ability" +animnames="spell,looping" +area={250.0,250.0,250.0,250.0} +art="ReplaceableTextures\\CommandButtons\\BTNEarthquake.blp" +buffid={"BOeq","BOeq","BOeq","BOeq"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={90.0,90.0,90.0,90.0} +cost={150,150,150,150} +dataa={0.5,0.5,0.5,0.5} +datab={50.0,50.0,50.0,50.0} +datac={0.75,0.75,0.75,0.75} +datad={250.0,250.0,250.0,250.0} +dur={25.0,25.0,25.0,25.0} +editorsuffix="(中立但是带有敌意)" +efctid={"XOeq","XOeq","XOeq","XOeq"} +hero=1 +herodur={20.0,20.0,20.0,20.0} +hotkey="E" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地震" +order="earthquake" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNEarthquake.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="E" +researchtip="学习地震(|cffffcc00E|r)" +researchubertip="使大地摇动,对建筑物造成每秒点的伤害并能让处于有效范围内的单位减速%。持续秒。" +rng={1000.0,1000.0,1000.0,1000.0} +targetattachcount=0 +targs={"ground,structure,debris,tree","ground,structure,debris,tree","ground,structure,debris,tree","ground,structure,debris,tree"} +tip={"地震(|cffffcc00E|r)"} +ubertip={"使大地摇动,对建筑物造成每秒点的伤害并能让处于有效范围内的单位减速%。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[SNin] +_code="AUin" +_id="SNin" +_max_level=1 +_type="ability" +area={250.0,250.0,250.0,250.0} +art="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +buffid={"BNin","BNin","BNin","BNin"} +"buttonpos:1"=3 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={30.0,30.0,30.0,30.0} +cost={100,100,100,100} +dataa={50.0,50.0,50.0,50.0} +datab={360.0,360.0,360.0,360.0} +datac={1.0,1.0,1.0,1.0} +dur={4.0,4.0,4.0,4.0} +editorsuffix=" (提科恩迪斯)" +efctid={"","","",""} +effectart="Units\\Demon\\Infernal\\InfernalBirth.mdl" +hero=1 +herodur={2.0,2.0,2.0,2.0} +hotkey="N" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="地狱火" +order="inferno" +priority=0 +race="creeps" +reqlevel=6 +researchart="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +"researchbuttonpos:1"=3 +"researchbuttonpos:2"=0 +researchhotkey="N" +researchtip="学习地狱火(|cffffcc00N|r)" +researchubertip="召唤出一个地狱火恶魔从天而降,对一定区域内敌方的地面单位造成点的伤害并使其在秒内处于昏晕状态。地狱火恶魔持续秒。" +rng={900.0,900.0,900.0,900.0} +targetattachcount=0 +targs={"ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral","ground,structure,debris,enemy,neutral"} +tip={"地狱火(|cffffcc00N|r)"} +ubertip={"召唤出一个地狱火恶魔从天而降,对一定区域内敌方的地面单位造成点的伤害并使其在秒内处于昏晕状态。地狱火恶魔持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ninf","ninf","ninf","ninf"} +untip={} +unubertip={} + +[Sbsk] +_code="Acha" +_id="Sbsk" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="狂暴愤怒升级" +priority=0 +race="orc" +reqlevel=0 +requires="Robk" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"otbk","","",""} +untip={} +unubertip={} + +[Sbtl] +_code="Abtl" +_id="Sbtl" +_max_level=1 +_type="ability" +area={2000.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNBattleStations.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=0 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +datab={1,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (混乱的兽族地洞)" +efctid={"","","",""} +effectsound="BurrowBattleStations" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="B" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="战备状态" +order="battlestations" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,player,vuln,invu","","",""} +tip={"战备状态(|cffffcc00B|r)"} +ubertip={"使得附近的苦工跑入地洞从而对来犯的敌人进行反击。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ncpn","","",""} +untip={} +unubertip={} + +[Sca1] +_code="Acha" +_id="Sca1" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (兽族步兵)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nchg","","",""} +untip={} +unubertip={} + +[Sca2] +_code="Acha" +_id="Sca2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (掠夺者)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nchr","","",""} +untip={} +unubertip={} + +[Sca3] +_code="Acha" +_id="Sca3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (萨满祭司)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nchw","","",""} +untip={} +unubertip={} + +[Sca4] +_code="Acha" +_id="Sca4" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (科多兽)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"nckb","","",""} +untip={} +unubertip={} + +[Sca5] +_code="Acha" +_id="Sca5" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (苦工)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ncpn","","",""} +untip={} +unubertip={} + +[Sca6] +_code="Acha" +_id="Sca6" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (格罗姆)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="orc" +reqlevel=0 +requires="Roch" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"Opgh","","",""} +untip={} +unubertip={} + +[Sch2] +_code="Amtc" +_id="Sch2" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8,0,0,0} +dur={0.5,0.0,0.0,0.0} +editorsuffix="(绞肉车)" +efctid={"","","",""} +effectsound="LoadUnload" +hero=0 +herodur={0.5,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="保持原位" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={160.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"dead","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Sch3] +_code="Acar" +_id="Sch3" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={8,0,0,0} +dur={0.5,0.0,0.0,0.0} +editorsuffix=" (地精飞艇)" +efctid={"","","",""} +effectsound="LoadUnload" +hero=0 +herodur={0.5,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="保持原位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={160.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,vuln,invu,nonsapper","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Sch4] +_code="Acar" +_id="Sch4" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={4,0,0,0} +dur={0.5,0.0,0.0,0.0} +editorsuffix=" (罐)" +efctid={"","","",""} +effectsound="LoadUnload" +hero=0 +herodur={0.5,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="保持原位" +priority=0 +race="human" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={160.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,vuln,invu","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Sch5] +_code="Acar" +_id="Sch5" +_max_level=1 +_type="ability" +area={250.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={10,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (船)" +efctid={"","","",""} +effectsound="LoadUnload" +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="保持原位" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={200.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,vuln,invu,nonsapper","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Scri] +_code="Acri" +_id="Scri" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNCripple.blp" +buffid={"Bcri","","",""} +"buttonpos:1"=2 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={10.0,0.0,0.0,0.0} +cost={175,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={0.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={60.0,0.0,0.0,0.0} +editorsuffix=" (巫师)" +efctid={"","","",""} +hero=0 +herodur={10.0,0.0,0.0,0.0} +hotkey="C" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="残废" +order="cripple" +priority=0 +race="undead" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={600.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,enemy,organic,neutral","","",""} +tip={"残废(|cffffcc00C|r)"} +ubertip={"减慢目标单位%的移动速度和%攻击速度,并减弱其%的攻击力。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Sdro] +_code="Adro" +_id="Sdro" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnLoad.blp" +buffid={"","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (海上运输船)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="卸载" +order="unload" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={128.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"卸载全部(|cffffcc00U|r)"} +ubertip={"在指定区域卸载全部单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Slo2] +_code="Aloa" +_id="Slo2" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLoad.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载小精灵" +order="load" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,invu,vuln","","",""} +tip={"装载小精灵(|cffffcc00L|r)"} +ubertip={"装载一个小精灵。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"ewsp","","",""} +untip={} +unubertip={} + +[Slo3] +_code="Aloa" +_id="Slo3" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLoad.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (船只)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载" +order="load" +priority=0 +race="other" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={64.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,invu,vuln","","",""} +tip={"装载(|cffffcc00L|r)"} +ubertip={"装载一个指定的友方地面单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"","","",""} +untip={} +unubertip={} + +[Sloa] +_code="Aloa" +_id="Sloa" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNLoad.blp" +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +editorsuffix="(兽族地洞)" +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="L" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="装载" +order="load" +priority=0 +race="orc" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={99999.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"ground,friend,invu,vuln","","",""} +tip={"装载(|cffffcc00L|r)"} +ubertip={"装载一个指定的友方地面单位。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"opeo","","",""} +untip={} +unubertip={} + +[Srtt] +_code="Acha" +_id="Srtt" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +buffid={"","","",""} +"buttonpos:1"=0 +"buttonpos:2"=0 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dur={0.0,0.0,0.0,0.0} +efctid={"","","",""} +hero=0 +herodur={0.0,0.0,0.0,0.0} +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +priority=0 +race="human" +reqlevel=0 +requires="Rhrt" +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={} +ubertip={} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +unitid={"hrtt","","",""} +untip={} +unubertip={} + +[Sshm] +_code="Ashm" +_id="Sshm" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNAmbush.blp" +buffid={"","","",""} +"buttonpos:1"=2 +"buttonpos:2"=1 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={0.0,0.0,0.0,0.0} +cost={0,0,0,0} +dataa={0.1,0.0,0.0,0.0} +datab={2.5,0.0,0.0,0.0} +datac={0.5,0.0,0.0,0.0} +dur={0.0,0.0,0.0,0.0} +editorsuffix=" (立刻的)" +efctid={"","","",""} +effectsound="ShadowMeld" +hero=0 +herodur={0.0,0.0,0.0,0.0} +hotkey="I" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="影遁" +order="ambush" +priority=0 +race="nightelf" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={0.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"","","",""} +tip={"隐藏(|cffffcc00I|r)"} +ubertip={"让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} + +[Suhf] +_code="Auhf" +_id="Suhf" +_max_level=1 +_type="ability" +area={0.0,0.0,0.0,0.0} +art="ReplaceableTextures\\CommandButtons\\BTNUnholyFrenzy.blp" +buffid={"BUhf","","",""} +"buttonpos:1"=1 +"buttonpos:2"=2 +cast={0.0,0.0,0.0,0.0} +casterattachcount=0 +checkdep=1 +cool={3.0,0.0,0.0,0.0} +cost={50,0,0,0} +dataa={0.75,0.0,0.0,0.0} +datab={4.0,0.0,0.0,0.0} +dur={45.0,0.0,0.0,0.0} +editorsuffix=" (巫师)" +efctid={"","","",""} +hero=0 +herodur={45.0,0.0,0.0,0.0} +hotkey="U" +item=0 +levels=1 +levelskip=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +name="邪恶狂热" +order="unholyfrenzy" +priority=0 +race="creeps" +reqlevel=0 +"researchbuttonpos:1"=0 +"researchbuttonpos:2"=0 +rng={500.0,0.0,0.0,0.0} +targetattachcount=0 +targs={"air,ground,organic","","",""} +tip={"邪恶狂热(|cffffcc00U|r)"} +ubertip={"增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。"} +"unbuttonpos:1"=0 +"unbuttonpos:2"=0 +untip={} +unubertip={} diff --git a/plugin/w3x2lni/script/prebuilt/default/buff.ini b/plugin/w3x2lni/script/prebuilt/default/buff.ini new file mode 100644 index 0000000..440c951 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/buff.ini @@ -0,0 +1,3890 @@ +[AEsd] +_code="AEsd" +_id="AEsd" +_type="buff" +editorname="群星坠落(目标)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Starfall\\StarfallTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[AEtr] +_code="AEtr" +_id="AEtr" +_type="buff" +editorname="宁静(目标)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Tranquility\\TranquilityTarget.mdl" +targetattachcount=0 + +[ANmd] +_code="ANmd" +_id="ANmd" +_type="buff" +editorname="季风" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Monsoon\\MonsoonBoltTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BCbf] +_code="BCbf" +_id="BCbf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBreathOfFrost.blp" +bufftip="霜冻闪电" +buffubertip="该单位遭到了霜冻闪电的攻击,因此会持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\BreathOfFrost\\BreathOfFrostTarget.mdl" +targetattachcount=0 + +[BCtc] +_code="BCtc" +_id="BCtc" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNGolemThunderclap.blp" +bufftip="雷霆一击" +buffubertip="该单位受到了雷霆一击的攻击,因此其移动速度和攻击速度都减慢了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BEah] +_code="BEah" +_id="BEah" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNThorns.blp" +bufftip="荆棘光环" +buffubertip="该单位处在荆棘光环的作用之下,因此近战单位攻击它会受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +specialart="Abilities\\Spells\\NightElf\\ThornsAura\\ThornsAuraDamage.mdl" +specialattach="head" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BEar] +_code="BEar" +_id="BEar" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTrueShot.blp" +bufftip="强击光环" +buffubertip="该单位处在强击光环的作用之下,因此其远程攻击力得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BEer] +_code="BEer" +_id="BEer" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEntanglingRoots.blp" +bufftip="纠缠根须" +buffubertip="该单位受到了纠缠根须的攻击,因此其不能移动并在一定时间内会持续受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\EntanglingRoots\\EntanglingRootsTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BEfn] +_code="BEfn" +_id="BEfn" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnt.blp" +bufftip="自然之力" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[BEia] +_code="BEia" +_id="BEia" +_type="buff" +editorname="献祭(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[BEim] +_code="BEim" +_id="BEim" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNImmolationOn.blp" +bufftip="献祭" +buffubertip="该单位有着献祭技能,因此其周围的地面单位会持续受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +specialart="Abilities\\Spells\\NightElf\\Immolation\\ImmolationDamage.mdl" +specialattach="head" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Immolation\\ImmolationTarget.mdl" +targetattachcount=0 + +[BEme] +_code="BEme" +_id="BEme" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +bufftip="变身" +buffubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[BEsh] +_code="BEsh" +_id="BEsh" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp" +bufftip="暗影突袭" +buffubertip="This unit was hit by Shadow Strike; it will take damage over time and move more slowly." +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\shadowstrike\\shadowstrike.mdl" +targetattach="overhead" +targetattachcount=0 + +[BEst] +_code="BEst" +_id="BEst" +_type="buff" +bufftip="侦察" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[BEsv] +_code="BEsv" +_id="BEsv" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSpiritOfVengeance.blp" +bufftip="复仇之魂" +buffubertip="复仇之魂暴怒中。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[BFig] +_code="BFig" +_id="BFig" +_type="buff" +bufftip="召唤出来的物品" +buffubertip="对于驱逐魔法,召唤出来的单位将受到额外的伤害。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BHab] +_code="BHab" +_id="BHab" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBrilliance.blp" +bufftip="辉煌光环" +buffubertip="该单位处于辉煌光环之下,因此其魔法恢复速度将加快。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BHad] +_code="BHad" +_id="BHad" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDevotion.blp" +bufftip="专注光环" +buffubertip="该单位处于专注光环的作用之下,因此提高了护甲。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BHav] +_code="BHav" +_id="BHav" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAvatar.blp" +bufftip="天神下凡" +buffubertip="该单位处于天神下凡的状态之中,因此其生命值、攻击力、护甲都得到了加强。而且还会魔法免疫。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[BHbd] +_code="BHbd" +_id="BHbd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBlizzard.blp" +bufftip="暴风雪" +buffubertip="该单位正受到暴风雪的攻击伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\FrostDamage\\FrostDamage.mdl" +targetattachcount=0 + +[BHbn] +_code="BHbn" +_id="BHbn" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBanish.blp" +bufftip="驱散" +buffubertip="该单位被驱散了并处于虚无状态之中。被化为虚无的单位不能攻击,但是能施放魔法。敌人的魔法也会对其造成额外的伤害。" +effectsoundlooped="BanishLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Banish\\BanishTarget.mdl" +targetattachcount=0 + +[BHbz] +_code="BHbz" +_id="BHbz" +_type="buff" +editorname="暴风雪 (施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[BHca] +_code="BHca" +_id="BHca" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNColdArrows.blp" +bufftip="冰冻冷箭" +buffubertip="该单位被冰冻冷箭给击中了,其攻击速度和移动速度都会减慢。" +editorsuffix=" (没有堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BHds] +_code="BHds" +_id="BHds" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDivineIntervention.blp" +bufftip="神圣护甲" +buffubertip="该单位处于神圣护甲的保护之下,因此是无敌的。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\DivineShield\\DivineShieldTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BHfs] +_code="BHfs" +_id="BHfs" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +bufftip="烈焰风暴" +buffubertip="该单位处于烈焰风暴的攻击之中,因此会在一定时间内持续受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeDamageTarget.mdl" +targetattachcount=0 + +[BHtb] +_code="BHtb" +_id="BHtb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStormBolt.blp" +bufftip="风暴之锤" +buffubertip="该单位遭到了风暴之锤的攻击,因此不能移动,攻击或者施放魔法。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\StormBolt\\StormBoltTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BHtc] +_code="BHtc" +_id="BHtc" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNThunderclap.blp" +bufftip="雷霆一击" +buffubertip="该单位受到了雷霆一击的攻击,其移动速度和攻击速度都会减慢。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BHwe] +_code="BHwe" +_id="BHwe" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +bufftip="水元素" +buffubertip="召唤出来的单位容易遭到驱散。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[BIcb] +_code="BIcb" +_id="BIcb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNOrbOfCorruption.blp" +bufftip="腐蚀" +buffubertip="该单位受到了腐蚀之球的攻击,因此其护甲得到了削弱。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BIcf] +_code="BIcf" +_id="BIcf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCloakOfFlames.blp" +bufftip="火焰风衣" +buffubertip="该单位拥有火焰风衣,周围的地面单位会受到持续的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\NightElf\\Immolation\\ImmolationDamage.mdl" +specialattach="head" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Immolation\\ImmolationTarget.mdl" +targetattachcount=0 + +[BIil] +_code="BIil" +_id="BIil" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWand.blp" +bufftip="幻象物品" +buffubertip="该单位是一个幻象,因此将从敌人那里得到额外的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageDeathCaster.mdl" +spelldetail=0 +targetattachcount=0 + +[BImo] +_code="BImo" +_id="BImo" +_type="buff" +bufftip="怪兽诱捕守卫" +buffubertip="周围的中立单位都将受到诱惑而为你服务。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BIpb] +_code="BIpb" +_id="BIpb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNOrbOfVenom.blp" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[BIpd] +_code="BIpd" +_id="BIpd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNOrbOfVenom.blp" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[BIpv] +_code="BIpv" +_id="BIpv" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPotionOfVampirism.blp" +bufftip="吸血药水" +buffubertip="该英雄使用了吸血药水;因此其攻击力得到了增加,而且攻击的同时也能增加自己的生命值。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BIrb] +_code="BIrb" +_id="BIrb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +bufftip="再生" +buffubertip="这个单位重生了。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BIrg] +_code="BIrg" +_id="BIrg" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNGreaterRejuvScroll.blp" +bufftip="生命恢复" +buffubertip="该单位将会逐渐恢复生命值和魔力值。" +editorsuffix=" (物品)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\ANrl\\ANrlTarget.mdl,Abilities\\Spells\\Other\\ANrm\\ANrmTarget.mdl" +targetattach="origin" +targetattach1="origin" +targetattachcount=2 + +[BIrl] +_code="BIrl" +_id="BIrl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHealingSalve.blp" +bufftip="再生物品" +buffubertip="该单位身上带有再生物品,因此其生命值将会持续地恢复。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\ANrm\\ANrmTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BIrm] +_code="BIrm" +_id="BIrm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPotionOfClarity.blp" +bufftip="净化药水" +buffubertip="该单位使用了净化药水,因此其魔法值会持续地恢复。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\ANrl\\ANrlTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BIsh] +_code="BIsh" +_id="BIsh" +_type="buff" +bufftip="猎头者灵魂" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BIsv] +_code="BIsv" +_id="BIsv" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNUsedSoulGem.blp" +bufftip="盗取灵魂" +buffubertip="这是一个英雄的灵魂。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Items\\AIso\\BIsvTarget.mdl" +targetattachcount=0 + +[BIwb] +_code="BIwb" +_id="BIwb" +_type="buff" +editorname="物品网" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNab] +_code="BNab" +_id="BNab" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAcidBomb.blp" +bufftip="酸性炸弹" +buffubertip="这个单位遭到了酸性炸弹的攻击。 它的护甲被减弱,并会持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl" +targetattach="chest" +targetattachcount=0 + +[BNba] +_code="BNba" +_id="BNba" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrow.blp" +bufftip="黑暗之箭" +buffubertip="该单位受到了黑暗之箭的攻击,如果其死亡的话,那么就会变成一个骷髅兵。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNbf] +_code="BNbf" +_id="BNbf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBreathOfFire.blp" +bufftip="火焰呼吸" +buffubertip="该单位受到了火焰呼吸的攻击,因此它会持续地受到火焰的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireDamage.mdl" +targetattachcount=0 + +[BNbr] +_code="BNbr" +_id="BNbr" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +bufftip="战争咆哮" +buffubertip="该单位具有战争咆哮技能,因此它的攻击力增加了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=1 +targetart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNcg] +_code="BNcg" +_id="BNcg" +_type="buff" +bufftip="人工地精" +buffubertip="人工地精." +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNcr] +_code="BNcr" +_id="BNcr" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNChemicalRage.blp" +bufftip="化学风暴" +buffubertip="这个单位受到了化学风暴的作用。他的移动速度和攻击速度都得到了提高。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNcs] +_code="BNcs" +_id="BNcs" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNClusterRockets.blp" +bufftip="火箭群" +buffubertip="火箭群" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNdc] +_code="BNdc" +_id="BNdc" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +bufftip="黑暗转换" +buffubertip="这个村民受到了黑暗转换的攻击,因此会陷入睡眠并变成一个僵尸。" +effectart="Abilities\\Spells\\Demon\\DarkConversion\\ZombifyTarget.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Sleep\\SleepTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNdh] +_code="BNdh" +_id="BNdh" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStrongDrink.blp" +bufftip="醉酒云雾" +buffubertip="该单位遭到了醉酒云雾的攻击,因此其移动速度被减慢了,并有一定的概率不能击中其他单位。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\StrongDrink\\BrewmasterTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNdi] +_code="BNdi" +_id="BNdi" +_type="buff" +bufftip="魔鬼缠身" +buffubertip="这个单位受到魔鬼缠身的折磨;它将会持续受到伤害直到死亡,一个魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +editorsuffix=" (奴)" +effectart="Abilities\\Spells\\Other\\Doom\\DoomDeath.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Doom\\DoomDeath.mdl" +targetattachcount=0 + +[BNdm] +_code="BNdm" +_id="BNdm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTheBlackArrow.blp" +bufftip="黑暗之奴" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNdo] +_code="BNdo" +_id="BNdo" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDoom.blp" +bufftip="魔鬼缠身" +buffubertip="这个单位受到魔鬼缠身的折磨;它不能施放任何魔法也将会持续受到伤害直到死亡,一个魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Doom\\DoomTarget.mdl" +targetattachcount=0 + +[BNef] +_code="BNef" +_id="BNef" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStormEarth&Fire.blp" +bufftip="熊猫人元素" +buffubertip="我是一个熊猫人元素 ,崇拜我吧。" +effectart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageDeathCaster.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageDeathCaster.mdl" +spelldetail=0 +targetattachcount=0 + +[BNeg] +_code="BNeg" +_id="BNeg" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEngineeringUpgrade.blp" +bufftip="工程升级" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestLeft.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestRight.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestMountLeft.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestMountRight.mdl" +targetattach="chest,left" +targetattach1="chest,right" +targetattach2="chest,mount,left" +targetattach3="chest,mount,right" +targetattachcount=4 + +[BNfy] +_code="BNfy" +_id="BNfy" +_type="buff" +bufftip="口袋工厂" +buffubertip="口袋工厂" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNhs] +_code="BNhs" +_id="BNhs" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHealingSpray.blp" +bufftip="医疗气雾" +buffubertip="这个单位正在接受医疗气雾的治疗。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNht] +_code="BNht" +_id="BNht" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHowlOfTerror.blp" +bufftip="恐怖嚎叫" +buffubertip="这个单位被恐怖嚎叫震住了;它已经丢失了魔法效果,并将持续一段时间减弱攻击。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\HowlOfTerror\\HowlTarget.mdl" +targetattachcount=0 + +[BNic] +_code="BNic" +_id="BNic" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNIncinerate.blp" +bufftip="燃灰" +buffubertip="这个单位处于了烈焰之中,在死去之后会对周围的单位造成一定的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Other\\Incinerate\\FireLordDeathExplode.mdl" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Incinerate\\IncinerateBuff.mdl" +targetattach="chest" +targetattachcount=0 + +[BNin] +_code="BNin" +_id="BNin" +_type="buff" +bufftip="地狱火" +buffubertip="这个地狱火是大型的。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNlm] +_code="BNlm" +_id="BNlm" +_type="buff" +bufftip="炎魔" +buffubertip="炎魔" +iseffect=0 +missilearc=0.99 +missileart="Abilities\\Weapons\\LavaSpawnMissile\\LavaSpawnBirthMissile.mdl" +missilehoming=1 +missilespeed=200 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNmr] +_code="BNmr" +_id="BNmr" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTemp.blp" +bufftip="心灵腐烂" +buffubertip="该单位受到了心灵腐烂的攻击,因此其魔法值将在一定时间内持续地被减少。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNms] +_code="BNms" +_id="BNms" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNNeutralManaShield.blp" +bufftip="魔法护盾" +buffubertip="这个单位身上有着魔法护盾,所以他暂时对物理攻击和负面魔法有着一定的抵抗能力。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\ManaShield\\ManaShieldCaster.mdl" +targetattachcount=0 + +[BNpa] +_code="BNpa" +_id="BNpa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNParasite.blp" +bufftip="寄生虫" +buffubertip="这个单位已被寄生虫侵扰,它将随着时间逝去而受伤害,如果在它死时仍然在被折磨,一个单位将会从它的尸体上诞生。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Parasite\\ParasiteTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNpi] +_code="BNpi" +_id="BNpi" +_type="buff" +editorname="永久的献祭" +editorsuffix=" (中立的单位但是是敌对的1)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\NightElf\\Immolation\\ImmolationDamage.mdl" +specialattach="head" +spelldetail=0 +targetattachcount=0 + +[BNpm] +_code="BNpm" +_id="BNpm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNParasite.blp" +bufftip="寄生虫" +buffubertip="这个单位已被寄生虫侵扰,它将随着时间逝去而受伤害,如果在它死时仍然在被折磨,一个单位将会从它的尸体上诞生。" +editorsuffix=" (奴)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNrd] +_code="BNrd" +_id="BNrd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNFire.blp" +bufftip="火焰雨" +buffubertip="该单位受到火焰雨的攻击,它将不断受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeDamageTarget.mdl" +targetattachcount=0 + +[BNrf] +_code="BNrf" +_id="BNrf" +_type="buff" +editorname="火焰雨(区域魔法)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNsa] +_code="BNsa" +_id="BNsa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStaffOfSanctuary.blp" +bufftip="避难权杖" +buffubertip="该单位处于避难权杖的效果之下,因此其生命值将持续地恢复,但是不能移动,攻击和施放任何魔法。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Items\\StaffOfSanctuary\\Staff_Sanctuary_Target.mdl" +targetattachcount=0 + +[BNsg] +_code="BNsg" +_id="BNsg" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +bufftip="熊" +buffubertip="一只残忍的熊。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNsi] +_code="BNsi" +_id="BNsi" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSilence.blp" +bufftip="沉默魔法" +buffubertip="该单位受到了沉默魔法的攻击,因此其不能施放任何魔法。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Silence\\SilenceTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNsl] +_code="BNsl" +_id="BNsl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +editorname="灵魂保存" +effectsound="SoulPreservation" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNso] +_code="BNso" +_id="BNso" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSoulBurn.blp" +bufftip="灵魂燃烧" +buffubertip="该单位受到了灵魂燃烧的作用。不能施放魔法,攻击力会减小,并在一定时间内会持续受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\SoulBurn\\SoulBurnbuff.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNsq] +_code="BNsq" +_id="BNsq" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +bufftip="豪猪" +buffubertip="一只愤怒的豪猪。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNss] +_code="BNss" +_id="BNss" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSpellShieldAmulet.blp" +bufftip="魔法护盾" +buffubertip="一种可以阻挡法师的防护之盾。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Items\\SpellShieldAmulet\\SpellShieldCaster.mdl" +targetattach="origin" +targetattachcount=0 + +[BNst] +_code="BNst" +_id="BNst" +_type="buff" +editorname="惊吓" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNsw] +_code="BNsw" +_id="BNsw" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +bufftip="战鹰" +buffubertip="A proud hawk." +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNtm] +_code="BNtm" +_id="BNtm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTransmute.blp" +bufftip="点金术" +buffubertip="这个单位受到了点金术的作用。将会变成金币。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Other\\Transmute\\PileofGold.mdl" +spelldetail=0 +targetattachcount=0 + +[BNto] +_code="BNto" +_id="BNto" +_type="buff" +bufftip="龙卷风" +editorsuffix=" (有时间限制)" +effectsoundlooped="TornadoLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNva] +_code="BNva" +_id="BNva" +_type="buff" +editorname="Volcano (Area)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BNvc] +_code="BNvc" +_id="BNvc" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNVolcano.blp" +bufftip="火山爆发" +buffubertip="火山爆发" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BNwm] +_code="BNwm" +_id="BNwm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +bufftip="水奴" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[BOac] +_code="BOac" +_id="BOac" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNGnollCommandAura.blp" +bufftip="命令光环" +buffubertip="该单位处于命令光环的作用之下,因此其攻击力得到了增强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=1 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BOae] +_code="BOae" +_id="BOae" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCommand.blp" +bufftip="耐久光环" +buffubertip="该单位处在耐久光环的作用之下,因此其移动速度和攻击速度都加快了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BOea] +_code="BOea" +_id="BOea" +_type="buff" +editorname="地震 (施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOeq] +_code="BOeq" +_id="BOeq" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEarthquake.blp" +bufftip="地震" +buffubertip="该单位处于地震的作用之下,因此其移动速度被减慢了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BOhx] +_code="BOhx" +_id="BOhx" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +bufftip="妖术" +buffubertip="该单位受到了妖术的作用,因此其变成了一只小动物。" +effectart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOmi] +_code="BOmi" +_id="BOmi" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNMirrorImage.blp" +bufftip="镜像" +buffubertip="一个剑圣的幻象。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +specialart="Abilities\\Spells\\Orc\\MirrorImage\\MirrorImageDeathCaster.mdl" +spelldetail=0 +targetattachcount=0 + +[BOsf] +_code="BOsf" +_id="BOsf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +bufftip="野兽幽魂" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOsh] +_code="BOsh" +_id="BOsh" +_type="buff" +editorname="震荡波(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOvc] +_code="BOvc" +_id="BOvc" +_type="buff" +editorname="巫毒(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Voodoo\\VoodooAura.mdl" +targetattachcount=0 + +[BOvd] +_code="BOvd" +_id="BOvd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBigBadVoodooSpell.blp" +bufftip="巫毒" +buffubertip="该单位处在巫毒的作用之下, 因此暂时是无敌的。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Voodoo\\VoodooAuraTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BOwd] +_code="BOwd" +_id="BOwd" +_type="buff" +bufftip="守卫" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOwk] +_code="BOwk" +_id="BOwk" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWindWalkOn.blp" +bufftip="疾步风" +buffubertip="此单位处于疾步风的作用之下, 因此其变为隐形了,移动地也更加快了。隐形状态中的第一次攻击会造成额外的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BOww] +_code="BOww" +_id="BOww" +_type="buff" +editorname="剑刃风暴(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[BPSE] +_code="BPSE" +_id="BPSE" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStun.blp" +bufftip="被击晕的" +buffubertip="该单位不能移动。" +editorsuffix=" (暂停)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BSTN] +_code="BSTN" +_id="BSTN" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStun.blp" +bufftip="被击晕的" +buffubertip="该单位被击晕了,所以不能移动,攻击和施放魔法。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BUad] +_code="BUad" +_id="BUad" +_type="buff" +editorname="操纵死尸(额外的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[BUan] +_code="BUan" +_id="BUan" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAnimateDead.blp" +bufftip="操纵死尸" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spelldetail=0 +targetattachcount=0 + +[BUau] +_code="BUau" +_id="BUau" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNUnholyAura.blp" +bufftip="邪恶光环" +buffubertip="该单位处在邪恶光环的作用之下; 因此它的移动速度和生命值恢复速度都加快了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BUav] +_code="BUav" +_id="BUav" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNVampiricAura.blp" +bufftip="吸血光环" +buffubertip="该单位处在吸血光环的作用之下,因此它对敌人的攻击会恢复自己的生命值。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +specialart="Abilities\\Spells\\Undead\\VampiricAura\\VampiricAuraTarget.mdl" +specialattach="origin" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[BUcb] +_code="BUcb" +_id="BUcb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +bufftip="腐尸甲虫" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[BUcs] +_code="BUcs" +_id="BUcs" +_type="buff" +editorname="腐臭蜂群(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[BUdd] +_code="BUdd" +_id="BUdd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDeathAndDecay.blp" +bufftip="死亡凋零" +buffubertip="该单位受到了死亡凋零的作用,因此会持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\DeathandDecay\\DeathandDecayDamage.mdl" +targetattachcount=0 + +[BUfa] +_code="BUfa" +_id="BUfa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNFrostArmor.blp" +bufftip="霜冻护甲" +buffubertip="该单位有着霜冻护甲; 因此其护甲加强了,攻击它的近战单位也会被在短时间内减速。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +specialart="Abilities\\Spells\\Undead\\FrostArmor\\FrostArmorDamage.mdl" +specialattach="chest" +spelldetail=1 +targetart="Abilities\\Spells\\Undead\\FrostArmor\\FrostArmorTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[BUim] +_code="BUim" +_id="BUim" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNImpale.blp" +bufftip="穿刺" +buffubertip="该单位被穿刺攻击了,因此在短时间内会被抛在空中。" +effectart="Abilities\\Spells\\Undead\\Impale\\ImpaleHitTarget.mdl" +effectattach="sprite,first" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\StormBolt\\StormBoltTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BUsl] +_code="BUsl" +_id="BUsl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +bufftip="睡眠" +buffubertip="该单位正在睡眠,因此其不能移动,攻击或者施放魔法。如果遭到攻击就会自动苏醒过来。" +effectsoundlooped="CreepSleepSnoreLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Sleep\\SleepTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[BUsp] +_code="BUsp" +_id="BUsp" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +editorname="睡眠 (暂停)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Sleep\\SleepSpecialArt.mdl" +targetattachcount=0 + +[BUst] +_code="BUst" +_id="BUst" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSleep.blp" +editorname="睡眠(震晕)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Sleep\\SleepSpecialArt.mdl" +targetattachcount=0 + +[BUts] +_code="BUts" +_id="BUts" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNThornShield.blp" +editorname="尖刺外壳" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestLeft.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestRight.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestMountLeft.mdl,Abilities\\Spells\\Undead\\ThornyShield\\ThornyShieldTargetChestMountRight.mdl" +targetattach="chest,left" +targetattach1="chest,right" +targetattach2="chest,mount,left" +targetattach3="chest,mount,right" +targetattachcount=4 + +[Babr] +_code="Babr" +_id="Babr" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNRegenerationAura.blp" +bufftip="荒芜光环" +buffubertip="该单位处在荒芜光环的作用之下,因此其生命值恢复速度加快了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bakb] +_code="Bakb" +_id="Bakb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDrum.blp" +bufftip="战鼓" +buffubertip="该单位受到了战鼓的作用,因此攻击力得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\GeneralAuraTarget\\GeneralAuraTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bam2] +_code="Bam2" +_id="Bam2" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +bufftip="反魔法外壳" +buffubertip="这个单位具有反魔法外壳,攻击魔法对于该单位的伤害效果将减少。" +editorsuffix=" (额外的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\AntiMagicShell\\AntiMagicShell.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bams] +_code="Bams" +_id="Bams" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAntiMagicShell.blp" +bufftip="反魔法外壳" +buffubertip="该单位具有反魔法外壳,因此对魔法免疫,反魔法外壳可以被驱逐掉。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\AntiMagicShell\\AntiMagicShell.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bapl] +_code="Bapl" +_id="Bapl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPlagueCloud.blp" +bufftip="疾病" +buffubertip="该单位受到了疾病云雾的攻击,因此会在短时间内持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=2 +targetart="Units\\Undead\\PlagueCloud\\PlagueCloudtarget.mdl" +targetattach="head" +targetattachcount=0 + +[Barm] +_code="Barm" +_id="Barm" +_type="buff" +bufftip="魔法恢复光环" +buffubertip="该单位处于魔法恢复光环的作用之下,因此其魔法恢复速度得到了加快。" +effectsoundlooped="FountainOfLifeLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=1 +targetart="Abilities\\Spells\\Other\\ANrl\\ANrlTarget.mdl" +targetattachcount=0 + +[Basl] +_code="Basl" +_id="Basl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTornado.blp" +bufftip="龙卷风" +buffubertip="该单位受到了龙卷风的袭击,它的移动速度被暂时降低了。" +editorsuffix=" (减速光环)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Tornado\\Tornado_Target.mdl" +targetattachcount=0 + +[Bbar] +_code="Bbar" +_id="Bbar" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBarkskin.blp" +bufftip="树皮" +buffubertip="该单位具有树皮技能,因此其护甲得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Barkskin\\BarkSkinTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bblo] +_code="Bblo" +_id="Bblo" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBloodLust.blp" +bufftip="嗜血术" +buffubertip="该单位具有嗜血术,因此其攻击速度和移动速度都加快了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=1 +targetart="Abilities\\Spells\\Orc\\Bloodlust\\BloodlustTarget.mdl,Abilities\\Spells\\Orc\\Bloodlust\\BloodlustSpecial.mdl" +targetattach="hand,left" +targetattach1="hand,right" +targetattachcount=2 + +[Bbof] +_code="Bbof" +_id="Bbof" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWallOfFire.blp" +bufftip="燃烧之油" +buffubertip="此单位已被燃烧之油烧着,它将不断的受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeDamageTarget.mdl" +targetattachcount=0 + +[Bbsk] +_code="Bbsk" +_id="Bbsk" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBerserkForTrolls.blp" +bufftip="狂战士" +buffubertip="该单位处于狂热愤怒的作用之下,因此攻击力得到了加强,但是同时也会受到更多的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\TrollBerserk\\HeadhunterWEAPONSLeft.mdl,Abilities\\Spells\\Orc\\TrollBerserk\\HeadhunterWEAPONSRight.mdl" +targetattach="weapon,left" +targetattach1="weapon,right" +targetattachcount=2 + +[Bchd] +_code="Bchd" +_id="Bchd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDizzy.blp" +bufftip="击晕" +buffubertip="该单位被击晕了,因此其移动速度和攻击速度都减慢了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\StasisTrap\\StasisTotemTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bclf] +_code="Bclf" +_id="Bclf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCloudOfFog.blp" +bufftip="乌云技能" +buffubertip="该建筑物中了乌云技能,所以丧失了远程攻击的能力。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bcmg] +_code="Bcmg" +_id="Bcmg" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNControlMagic.blp" +bufftip="控制魔法" +buffubertip="这个单位可以被控制。它现在遵从一个新主人了。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bcor] +_code="Bcor" +_id="Bcor" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCorrosiveBreath.blp" +bufftip="腐蚀喷吐" +buffubertip="该建筑物受到了腐蚀喷吐的攻击,因此其在一定的时间内会受到持续的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\CorrosiveBreath\\ChimaeraAcidTargetArt.mdl" +targetattachcount=0 + +[Bcri] +_code="Bcri" +_id="Bcri" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCripple.blp" +bufftip="残废" +buffubertip="该单位受到了残废技能的作用,因此其移动速度和攻击速度都减慢了,攻击力也被削弱了许多。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Cripple\\CrippleTarget.mdl" +targetattachcount=0 + +[Bcrs] +_code="Bcrs" +_id="Bcrs" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCurse.blp" +bufftip="诅咒" +buffubertip="该单位受到了诅咒的作用,因此在攻击的时候会有一定的概率击空。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=1 +targetart="Abilities\\Spells\\Undead\\Curse\\CurseTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bcsd] +_code="Bcsd" +_id="Bcsd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNColdArrows.blp" +bufftip="冰冻冷箭" +buffubertip="该单位被冰冻冷箭给击中了,其攻击速度和移动速度都会减慢。" +editorsuffix=" (堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bcsi] +_code="Bcsi" +_id="Bcsi" +_type="buff" +editorname="冰冻冷箭" +editorsuffix=" (信息)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bcy2] +_code="Bcy2" +_id="Bcy2" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +bufftip="飓风" +buffubertip="该单位处在飓风的作用之下,因此其不能移动,攻击和施放魔法。" +editorsuffix=" (额外的)" +effectart="Abilities\\Spells\\NightElf\\Cyclone\\CycloneTarget.mdl" +effectattach="sprite,first" +effectsoundlooped="CycloneLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Bcyc] +_code="Bcyc" +_id="Bcyc" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCyclone.blp" +bufftip="飓风" +buffubertip="该单位处在飓风的作用之下,因此其不能移动,攻击和施放魔法。" +effectart="Abilities\\Spells\\NightElf\\Cyclone\\CycloneTarget.mdl" +effectsoundlooped="CycloneLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattach="sprite,first" +targetattachcount=0 + +[Bdbb] +_code="Bdbb" +_id="Bdbb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNLifeDrain.blp" +bufftip="吸取生命值和魔法值" +buffubertip="这个单位具有额外的生命值和魔法值。但是这个额外的值会消失得很快。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bdbl] +_code="Bdbl" +_id="Bdbl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNLifeDrain.blp" +bufftip="吸取生命" +buffubertip="这个单位具有额外的生命值。但是这个额外的值会消失得很快。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bdbm] +_code="Bdbm" +_id="Bdbm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNManaDrain.blp" +bufftip="吸取魔法" +buffubertip="这个单位具有额外的魔法值。但是这个额外的值会消失得很快。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bdcb] +_code="Bdcb" +_id="Bdcb" +_type="buff" +editorname="汲取生命值和魔法值(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\DrainCaster.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdcl] +_code="Bdcl" +_id="Bdcl" +_type="buff" +editorname="汲取生命值(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\DrainCaster.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdcm] +_code="Bdcm" +_id="Bdcm" +_type="buff" +editorname="汲取魔法值 (施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\ManaDrainCaster.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdef] +_code="Bdef" +_id="Bdef" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNScroll.blp" +bufftip="守护卷轴" +buffubertip="该单位受到了守护卷轴的作用,因此它的护甲暂时得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=1 +targetart="Abilities\\Spells\\Items\\AIda\\AIdaTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bdet] +_code="Bdet" +_id="Bdet" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDustOfAppearance.blp" +bufftip="被探测到" +buffubertip="该单位被探测到了,这就意味着敌人可以看见你的单位。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bdig] +_code="Bdig" +_id="Bdig" +_type="buff" +editorname="吞噬 (施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Bdtb] +_code="Bdtb" +_id="Bdtb" +_type="buff" +editorname="汲取生命值和魔法值(目标)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\DrainTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdtl] +_code="Bdtl" +_id="Bdtl" +_type="buff" +editorname="汲取生命值(目标)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\DrainTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdtm] +_code="Bdtm" +_id="Bdtm" +_type="buff" +editorname="汲取魔法值 (目标)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\Drain\\ManaDrainTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bdvv] +_code="Bdvv" +_id="Bdvv" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNDevour.blp" +bufftip="吞噬" +buffubertip="该单位被吞噬了,因此会持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Beat] +_code="Beat" +_id="Beat" +_type="buff" +editorname="吃树" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Bena] +_code="Bena" +_id="Bena" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +bufftip="诱捕" +buffubertip="该单位被诱捕了,因此其不能移动和飞行。" +editorsuffix=" (空中的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Ensnare\\ensnare_AirTarget.mdl" +targetattach="chest,mount" +targetattachcount=0 + +[Beng] +_code="Beng" +_id="Beng" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +bufftip="诱捕" +buffubertip="该单位被诱捕了,因此其不能移动和飞行。" +editorsuffix=" (地面的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Ensnare\\ensnareTarget.mdl" +targetattachcount=0 + +[Bens] +_code="Bens" +_id="Bens" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp" +editorname="诱捕(一般的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Ensnare\\ensnareTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Beye] +_code="Beye" +_id="Beye" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +bufftip="岗哨守卫" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Bfae] +_code="Bfae" +_id="Bfae" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNFaerieFire.blp" +bufftip="精灵之火" +buffubertip="该单位受到了精灵之火的作用,因此其护甲被削弱了,而且还会被敌人看见。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=1 +targetart="Abilities\\Spells\\NightElf\\FaerieFire\\FaerieFireTarget.mdl" +targetattach="head" +targetattachcount=0 + +[Bfre] +_code="Bfre" +_id="Bfre" +_type="buff" +editorname="冰冻" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bfro] +_code="Bfro" +_id="Bfro" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNFrost.blp" +bufftip="被减速的" +buffubertip="该单位速度被减慢了,所以移动起来要比其他一般的单位要慢。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\FrostDamage\\FrostDamage.mdl" +targetattachcount=0 + +[Bfrz] +_code="Bfrz" +_id="Bfrz" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNFreezingBreath.blp" +bufftip="冰冻喷吐" +buffubertip="该单位被冻住了,因此失去了原有的功效并不能被修理。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\FreezingBreath\\FreezingBreathTargetArt.mdl" +targetattach="origin" +targetattachcount=0 + +[Bfzy] +_code="Bfzy" +_id="Bfzy" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBloodLust.blp" +bufftip="狂热" +buffubertip="该单位处于狂热中,其攻击速率和移动速度都增加了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=1 +targetart="Abilities\\Spells\\Orc\\Bloodlust\\BloodlustTarget.mdl,Abilities\\Spells\\Orc\\Bloodlust\\BloodlustSpecial.mdl" +targetattach="hand,left" +targetattach1="hand,right" +targetattachcount=2 + +[Bgra] +_code="Bgra" +_id="Bgra" +_type="buff" +editorname="拔树" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Bhea] +_code="Bhea" +_id="Bhea" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHeal.blp" +bufftip="医疗" +buffubertip="该单位正在被医疗,其丧失的生命值将得到恢复。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=1 +targetattachcount=0 + +[Bhwd] +_code="Bhwd" +_id="Bhwd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +bufftip="治疗守卫" +buffubertip="这个守卫能恢复周围单位的生命值。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Binf] +_code="Binf" +_id="Binf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNInnerFire.blp" +bufftip="心灵之火" +buffubertip="该单位拥有心灵之火,所以其防御和攻击力都得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=1 +targetart="Abilities\\Spells\\Human\\InnerFire\\InnerFireTarget.mdl" +targetattach="overhead" +targetattachcount=1 + +[Binv] +_code="Binv" +_id="Binv" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNInvisibility.blp" +bufftip="隐形术" +buffubertip="该单位处于隐形的状态之中; 敌人不能看到其存在。如果它攻击或者施放魔法,那么就会暴露出自己的踪迹。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bivs] +_code="Bivs" +_id="Bivs" +_type="buff" +editorname="隐形 (额外的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bliq] +_code="Bliq" +_id="Bliq" +_type="buff" +buffart="ReplaceableTextures\\PassiveButtons\\PASBTNLiquidFire.blp" +editorname="液体炸弹" +effectsoundlooped="LiquidFireLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\LiquidFire\\Liquidfire.mdl" +targetattachcount=0 + +[Blsa] +_code="Blsa" +_id="Blsa" +_type="buff" +editorname="闪电护盾(施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Blsh] +_code="Blsh" +_id="Blsh" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNLightningShield.blp" +bufftip="闪电护盾" +buffubertip="该单位处在闪电护盾的作用之下,因此周围所有的单位都会受到一定的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +specialart="Abilities\\Spells\\Orc\\LightningShield\\LightningShieldBuff.mdl" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\LightningShield\\LightningShieldTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bmec] +_code="Bmec" +_id="Bmec" +_type="buff" +bufftip="机械类的小玩艺" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bmfa] +_code="Bmfa" +_id="Bmfa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNManaFlare.blp" +bufftip="魔力之焰" +buffubertip="该单位身上有魔力之焰的作用;周围任何敌方单位施放魔法都会受到伤害。" +editorsuffix=" (额外的)" +iseffect=0 +missilearc=0.0 +missileart="Abilities\\Spells\\Human\\ManaFlare\\ManaFlareMissile.mdl" +missilehoming=1 +missilespeed=1000 +race="nightelf" +specialart="Abilities\\Spells\\Human\\ManaFlare\\ManaFlareBoltImpact.mdl" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\ManaFlare\\ManaFlareTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bmfl] +_code="Bmfl" +_id="Bmfl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNManaFlare.blp" +bufftip="魔力之焰" +buffubertip="该单位身上有魔力之焰的作用;周围任何敌方单位施放魔法都会受到伤害。" +effectsoundlooped="ManaFlareLoop" +iseffect=0 +lightningeffect="MFPB" +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\ManaFlare\\ManaFlareBase.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bmil] +_code="Bmil" +_id="Bmil" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNCallToArms.blp" +bufftip="民兵" +buffubertip="该农民变成了民兵,所有其移动速度,攻击速度,攻击力,护甲都得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bmlc] +_code="Bmlc" +_id="Bmlc" +_type="buff" +editorname="空中锁镣(施法者)" +effectsoundlooped="AerialShacklesLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bmlt] +_code="Bmlt" +_id="Bmlt" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNMagicLariet.blp" +bufftip="空中锁镣" +buffubertip="该单位已受空中锁镣禁锢,无法移动或攻击,并且不断受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\AerialShackles\\AerialShacklesTarget.mdl" +targetattach="chest,mount" +targetattachcount=0 + +[Boar] +_code="Boar" +_id="Boar" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +bufftip="治疗守卫光环" +buffubertip="加快生命值恢复速度。" +effectsoundlooped="FountainOfLifeLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=2 +targetart="Abilities\\Spells\\Other\\ANrm\\ANrmTarget.mdl" +targetattachcount=0 + +[Bphx] +_code="Bphx" +_id="Bphx" +_type="buff" +bufftip="火凤凰" +buffubertip="火凤凰的力量显现了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bpig] +_code="Bpig" +_id="Bpig" +_type="buff" +editorname="永久的献祭" +editorsuffix=" (中立的单位但是是敌对的 2)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Other\\ImmolationRed\\ImmolationRedDamage.mdl" +specialattach="chest" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\ImmolationRed\\ImmolationRedTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bplg] +_code="Bplg" +_id="Bplg" +_type="buff" +editorname="疾病云雾" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Bply] +_code="Bply" +_id="Bply" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPolymorph.blp" +bufftip="变形术" +buffubertip="该单位被施放了变形术,因此被变成了一头温顺的小绵羊。" +effectart="Abilities\\Spells\\Human\\Polymorph\\PolyMorphDoneGround.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Bpoc] +_code="Bpoc" +_id="Bpoc" +_type="buff" +editorname="占据 (施法者)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Possession\\PossessionCaster.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bpoi] +_code="Bpoi" +_id="Bpoi" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnvenomedSpear.blp" +bufftip="毒" +buffubertip="该单位被毒刺攻击了, 因此会持续受到伤害。" +editorsuffix=" (没有堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[Bpos] +_code="Bpos" +_id="Bpos" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPossession.blp" +bufftip="占据" +buffubertip="该单位被占据了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Possession\\PossessionTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bprg] +_code="Bprg" +_id="Bprg" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPurge.blp" +bufftip="净化" +buffubertip="该单位受到了净化的作用; 因此其移动速度被减慢了,而且身上所有的魔法效果都消失了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\Purge\\PurgeBuffTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bpsd] +_code="Bpsd" +_id="Bpsd" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNEnvenomedSpear.blp" +bufftip="毒" +buffubertip="该单位被毒刺攻击了, 因此会持续受到伤害。" +editorsuffix=" (堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[Bpsh] +_code="Bpsh" +_id="Bpsh" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNPhaseShift.blp" +bufftip="变相移动" +buffubertip="该单位处于消失的状态中,因此在短时间内不会受到任何的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +specialart="Abilities\\Spells\\NightElf\\FaerieDragonInvis\\FaerieDragon_Invis.mdl" +spelldetail=0 +targetattachcount=0 + +[Bpsi] +_code="Bpsi" +_id="Bpsi" +_type="buff" +editorname="毒药(信息)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bpxf] +_code="Bpxf" +_id="Bpxf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNMarkOfFire.blp" +bufftip="凤凰火焰" +buffubertip="该单位正受到凤凰火焰的灼伤,不断受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Abilities\\Spells\\Other\\BreathOfFire\\BreathOfFireDamage.mdl" +targetattachcount=0 + +[Brai] +_code="Brai" +_id="Brai" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +bufftip="骷髅战士" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Brej] +_code="Brej" +_id="Brej" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNRejuvenation.blp" +bufftip="生命恢复" +buffubertip="该单位具有生命恢复技能,因此其能持续地恢复自己的生命值。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Abilities\\Spells\\NightElf\\Rejuvenation\\RejuvenationTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Broa] +_code="Broa" +_id="Broa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBattleRoar.blp" +bufftip="咆哮" +buffubertip="该单位具有咆哮技能,因此其攻击力得到了加强。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=1 +targetart="Abilities\\Spells\\NightElf\\BattleRoar\\RoarTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Brpb] +_code="Brpb" +_id="Brpb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNReplenishMana.blp" +bufftip="恢复" +buffubertip="这个单位被恢复魔法击中;它的一部分生命值和魔法值被恢复。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Brpl] +_code="Brpl" +_id="Brpl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNReplenishHealth.blp" +bufftip="枯萎精髓" +buffubertip="此单位已被枯萎精髓击中;它的生命值已完全恢复。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Brpm] +_code="Brpm" +_id="Brpm" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNReplenishMana.blp" +bufftip="灵魂触摸" +buffubertip="这个单位被灵魂触摸击中;它的一些能量被恢复了。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Bsha] +_code="Bsha" +_id="Bsha" +_type="buff" +editorname="共享视野" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bshs] +_code="Bshs" +_id="Bshs" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWandOfShadowSight.blp" +bufftip="影子权杖" +buffubertip="该单位受到了影子权杖的作用; 因此其将暴露在敌人的视野之下。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Bslo] +_code="Bslo" +_id="Bslo" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSlow.blp" +bufftip="减速" +buffubertip="该单位被减速了,其移动速度和攻击速度都会下降。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=1 +targetart="Abilities\\Spells\\Human\\slow\\slowtarget.mdl" +targetattachcount=0 + +[Bspa] +_code="Bspa" +_id="Bspa" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSpider.blp" +bufftip="小蜘蛛" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissileTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bspe] +_code="Bspe" +_id="Bspe" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNBoots.blp" +bufftip="速度加快" +buffubertip="该单位速度被加快了,所以移动起来要比其他一般的单位要快。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Items\\AIsp\\SpeedTarget.mdl" +targetattachcount=0 + +[Bspl] +_code="Bspl" +_id="Bspl" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSpiritLink.blp" +bufftip="灵魂锁链" +buffubertip="该单位处于灵魂锁链的作用之下,因此其遭到攻击的话会将其受到的伤害转移一部分到其他处于灵魂锁链作用之下的单位。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Orc\\SpiritLink\\SpiritLinkTarget.mdl" +targetattach="chest" +targetattachcount=0 + +[Bspo] +_code="Bspo" +_id="Bspo" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNSlowPoison.blp" +bufftip="慢性毒药" +buffubertip="该单位受到了慢性毒药的攻击,因此其移动速度和攻击速度都减慢了,而且会在一定时间内持续地受到伤害。" +editorsuffix=" (没有堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[Bssd] +_code="Bssd" +_id="Bssd" +_type="buff" +buffart="ReplaceableTextures\\PassiveButtons\\PASBTNSlowPoison.blp" +bufftip="慢性毒药" +buffubertip="该单位受到了慢性毒药的攻击;因此其移动速度和攻击速度都减慢了,而且会在一定时间内持续地受到伤害。" +editorsuffix=" (堆积)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=2 +targetart="Abilities\\Weapons\\PoisonSting\\PoisonStingTarget.mdl" +targetattachcount=0 + +[Bssi] +_code="Bssi" +_id="Bssi" +_type="buff" +editorname="慢性毒药(信息)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Bsta] +_code="Bsta" +_id="Bsta" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStasisTrap.blp" +bufftip="静止陷阱" +buffubertip="该单位被静止陷阱击中了,因此不能移动,进攻和施放魔法。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bstt] +_code="Bstt" +_id="Bstt" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNStasisTrap.blp" +bufftip="静止陷阱" +buffubertip="这个守卫被激活的话会击晕周围敌方的地面单位。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Btdg] +_code="Btdg" +_id="Btdg" +_type="buff" +editorname="龙卷风伤害" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Btlf] +_code="Btlf" +_id="Btlf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAcorn.blp" +bufftip="定时的生命" +buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Btrv] +_code="Btrv" +_id="Btrv" +_type="buff" +editorname="传送 显示" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Btsa] +_code="Btsa" +_id="Btsa" +_type="buff" +editorname="龙卷风旋转 (区域魔法)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Btsp] +_code="Btsp" +_id="Btsp" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNTornado.blp" +bufftip="龙卷旋风" +buffubertip="该单位受到了龙卷风的袭击;因此被投掷到了空中。" +effectart="Abilities\\Spells\\Other\\Tornado\\TornadoElementalSmall.mdl" +effectattach="sprite,first" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Buhf] +_code="Buhf" +_id="Buhf" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNUnholyFrenzy.blp" +bufftip="邪恶狂热" +buffubertip="该单位受到了邪恶狂热的作用,因此攻击速度加快了,但是也会持续地受到伤害。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\UnholyFrenzy\\UnholyFrenzyTarget.mdl" +targetattach="overhead" +targetattachcount=0 + +[Bult] +_code="Bult" +_id="Bult" +_type="buff" +editorname="夜视能力" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Buns] +_code="Buns" +_id="Buns" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNUnsummonBuilding.blp" +bufftip="反召唤" +effectsoundlooped="AcolyteUnsummonLoop" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Unsummon\\UnsummonTarget.mdl" +targetattachcount=0 + +[Bvng] +_code="Bvng" +_id="Bvng" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNAvengingWatcher.blp" +bufftip="复仇之魂" +buffubertip="复仇之魂在此。" +effectart="Abilities\\Spells\\Orc\\FeralSpirit\\feralspiritdone.mdl" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[Bvul] +_code="Bvul" +_id="Bvul" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNInvulnerable.blp" +bufftip="无敌的" +buffubertip="该单位是无敌的,所以任何的攻击和魔法都对其无效。" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetart="Abilities\\Spells\\Human\\DivineShield\\DivineShieldTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[Bwea] +_code="Bwea" +_id="Bwea" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWeb.blp" +bufftip="蛛网" +buffubertip="该单位遭到了蛛网的攻击,因此被固定在了地面上而不能移动。" +editorsuffix=" (空中的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Web\\Web_AirTarget.mdl" +targetattach="chest,mount" +targetattachcount=0 + +[Bweb] +_code="Bweb" +_id="Bweb" +_type="buff" +buffart="ReplaceableTextures\\CommandButtons\\BTNWeb.blp" +bufftip="蛛网" +buffubertip="该单位遭到了蛛网的攻击,因此被固定在了地面上而不能移动。" +editorsuffix=" (地面的)" +iseffect=0 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Abilities\\Spells\\Undead\\Web\\WebTarget.mdl" +targetattach="origin" +targetattachcount=0 + +[XErc] +_code="XErc" +_id="XErc" +_type="buff" +editorname="混乱之雨(效果)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[XErf] +_code="XErf" +_id="XErf" +_type="buff" +editorname="火焰雨(效果)" +effectart="Abilities\\Spells\\Demon\\RainOfFire\\RainOfFireTarget.mdl" +effectsound="RainOfFireWave" +effectsoundlooped="RainOfFireLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[XEsf] +_code="XEsf" +_id="XEsf" +_type="buff" +editorname="群星坠落(效果)" +effectart="Abilities\\Spells\\NightElf\\Starfall\\StarfallCaster.mdl" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[XEtq] +_code="XEtq" +_id="XEtq" +_type="buff" +editorname="宁静(效果)" +effectart="Abilities\\Spells\\NightElf\\Tranquility\\Tranquility.mdl" +effectsoundlooped="TranquilityLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetattachcount=0 + +[XHbz] +_code="XHbz" +_id="XHbz" +_type="buff" +editorname="暴风雪 (效果)" +effectart="Abilities\\Spells\\Human\\Blizzard\\BlizzardTarget.mdl" +effectsound="BlizzardWave" +effectsoundlooped="BlizzardLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[XHfs] +_code="XHfs" +_id="XHfs" +_type="buff" +editorname="烈焰风暴(效果)" +effectart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeEmbers.mdl" +effectsoundlooped="HumanFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[XIct] +_code="XIct" +_id="XIct" +_type="buff" +editorname="能更改时间的物品" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[XNcs] +_code="XNcs" +_id="XNcs" +_type="buff" +editorname="Cluster Rockets (Effect)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[XNhs] +_code="XNhs" +_id="XNhs" +_type="buff" +editorname="Healing Spray (Effect)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +specialart="Abilities\\Spells\\Human\\Heal\\HealTarget.mdl" +spelldetail=0 +targetattachcount=0 + +[XNmo] +_code="XNmo" +_id="XNmo" +_type="buff" +editorname="季风(效果)" +effectart="Abilities\\Spells\\Other\\Monsoon\\MonsoonRain.mdl" +effectsoundlooped="MonsoonLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[XNvc] +_code="XNvc" +_id="XNvc" +_type="buff" +editorname="Volcano (Effect)" +effectsoundlooped="VolcanoLoop" +iseffect=1 +missilearc=0.8 +missileart="Abilities\\Spells\\Other\\Volcano\\VolcanoMissile.mdl" +missilehoming=1 +missilespeed=400 +race="other" +specialart="Abilities\\Spells\\Other\\Volcano\\VolcanoDeath.mdl" +spelldetail=0 +targetattachcount=0 + +[XOeq] +_code="XOeq" +_id="XOeq" +_type="buff" +editorname="地震 (效果)" +effectart="Abilities\\Spells\\Orc\\EarthQuake\\EarthQuakeTarget.mdl" +effectsoundlooped="EarthquakeLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[XOre] +_code="XOre" +_id="XOre" +_type="buff" +editorname="重生(效果)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[XUdd] +_code="XUdd" +_id="XUdd" +_type="buff" +editorname="死亡凋零(效果)" +effectart="Abilities\\Spells\\Undead\\DeathandDecay\\DeathandDecayTarget.mdl" +effectsoundlooped="DeathAndDecayLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetattachcount=0 + +[Xbdt] +_code="Xbdt" +_id="Xbdt" +_type="buff" +editorname="显示 (效果)" +effectart="Abilities\\Spells\\Other\\Andt\\Andt.mdl" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Xbli] +_code="Xbli" +_id="Xbli" +_type="buff" +editorname="荒芜之地(效果)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Xbof] +_code="Xbof" +_id="Xbof" +_type="buff" +editorname="燃烧之油(效果)" +effectart="Abilities\\Spells\\Human\\FlameStrike\\FlameStrikeEmbers.mdl" +effectsoundlooped="HumanFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetattachcount=0 + +[Xclf] +_code="Xclf" +_id="Xclf" +_type="buff" +editorname="乌云 (效果)" +effectart="Abilities\\Spells\\Human\\CloudOfFog\\CloudOfFog.mdl" +effectsoundlooped="CloudOfFogLoop" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Xdis] +_code="Xdis" +_id="Xdis" +_type="buff" +editorname="英雄 驱散 (效果)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="other" +spelldetail=0 +targetattachcount=0 + +[Xesn] +_code="Xesn" +_id="Xesn" +_type="buff" +editorname="哨兵(效果)" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Units\\NightElf\\Owl\\Owl.mdl" +targetattach="overhead" +targetattachcount=0 + +[Xfhl] +_code="Xfhl" +_id="Xfhl" +_type="buff" +editorname="建筑物伤害 – 人族 大" +effectsoundlooped="HumanFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Environment\\LargeBuildingFire\\LargeBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire1.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire0.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fifth" +targetattach3="sprite,third" +targetattach4="sprite,fourth" +targetattach5="sprite,sixth" +targetattachcount=6 + +[Xfhm] +_code="Xfhm" +_id="Xfhm" +_type="buff" +editorname="建筑物伤害 – 人族 中" +effectsoundlooped="HumanFireMedium" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Environment\\LargeBuildingFire\\LargeBuildingFire2.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire2.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fourth" +targetattach3="sprite,fifth" +targetattachcount=4 + +[Xfhs] +_code="Xfhs" +_id="Xfhs" +_type="buff" +editorname="建筑物伤害 – 人族 小" +effectsoundlooped="HumanFireSmall" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetart="Environment\\SmallBuildingFire\\SmallBuildingFire2.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl" +targetattach="sprite,first" +targetattach1="sprite,fourth" +targetattachcount=2 + +[Xfla] +_code="Xfla" +_id="Xfla" +_type="buff" +editorname="照明弹(效果)" +effectart="Abilities\\Spells\\Human\\Flare\\FlareTarget.mdl" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="human" +spelldetail=0 +targetattachcount=0 + +[Xfnl] +_code="Xfnl" +_id="Xfnl" +_type="buff" +editorname="建筑物伤害 - 暗夜精灵族 大" +effectsoundlooped="NightElfFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Environment\\NightElfBuildingFire\\ElfLargeBuildingFire1.mdl,Environment\\NightElfBuildingFire\\ElfLargeBuildingFire0.mdl,Environment\\NightElfBuildingFire\\ElfLargeBuildingFire0.mdl,Environment\\NightElfBuildingFire\\ElfSmallBuildingFire1.mdl,Environment\\NightElfBuildingFire\\ElfLargeBuildingFire2.mdl,Environment\\NightElfBuildingFire\\ElfSmallBuildingFire0.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fifth" +targetattach3="sprite,third" +targetattach4="sprite,fourth" +targetattach5="sprite,sixth" +targetattachcount=6 + +[Xfnm] +_code="Xfnm" +_id="Xfnm" +_type="buff" +editorname="建筑物伤害 - 暗夜精灵族 中" +effectsoundlooped="NightElfFireMedium" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Environment\\NightElfBuildingFire\\ElfLargeBuildingFire2.mdl,Environment\\NightElfBuildingFire\\ElfSmallBuildingFire1.mdl,Environment\\NightElfBuildingFire\\ElfLargeBuildingFire0.mdl,Environment\\NightElfBuildingFire\\ElfSmallBuildingFire2.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fourth" +targetattach3="sprite,fifth" +targetattachcount=4 + +[Xfns] +_code="Xfns" +_id="Xfns" +_type="buff" +editorname="建筑物伤害 - 暗夜精灵族 小" +effectsoundlooped="NightElfFireSmall" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="nightelf" +spelldetail=0 +targetart="Environment\\NightElfBuildingFire\\ElfSmallBuildingFire2.mdl,Environment\\NightElfBuildingFire\\ElfSmallBuildingFire1.mdl" +targetattach="sprite,first" +targetattach1="sprite,fourth" +targetattachcount=2 + +[Xfol] +_code="Xfol" +_id="Xfol" +_type="buff" +editorname="建筑物伤害 – 兽族 大" +effectsoundlooped="HumanFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Environment\\LargeBuildingFire\\LargeBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire1.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire0.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fifth" +targetattach3="sprite,third" +targetattach4="sprite,fourth" +targetattach5="sprite,sixth" +targetattachcount=6 + +[Xfom] +_code="Xfom" +_id="Xfom" +_type="buff" +editorname="建筑物伤害 – 兽族 中" +effectsoundlooped="HumanFireMedium" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Environment\\LargeBuildingFire\\LargeBuildingFire2.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl,Environment\\LargeBuildingFire\\LargeBuildingFire0.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire2.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fourth" +targetattach3="sprite,fifth" +targetattachcount=4 + +[Xfos] +_code="Xfos" +_id="Xfos" +_type="buff" +editorname="建筑物伤害 – 兽族 小" +effectsoundlooped="HumanFireSmall" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="orc" +spelldetail=0 +targetart="Environment\\SmallBuildingFire\\SmallBuildingFire2.mdl,Environment\\SmallBuildingFire\\SmallBuildingFire1.mdl" +targetattach="sprite,first" +targetattach1="sprite,fourth" +targetattachcount=2 + +[Xful] +_code="Xful" +_id="Xful" +_type="buff" +editorname="建筑物伤害 – 不死族 大" +effectsoundlooped="UndeadFireLarge" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire1.mdl,Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire0.mdl,Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire0.mdl,Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire1.mdl,Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire2.mdl,Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire0.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fifth" +targetattach3="sprite,third" +targetattach4="sprite,fourth" +targetattach5="sprite,sixth" +targetattachcount=6 + +[Xfum] +_code="Xfum" +_id="Xfum" +_type="buff" +editorname="建筑物伤害 – 不死族 中" +effectsoundlooped="UndeadFireMedium" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire2.mdl,Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire1.mdl,Environment\\UndeadBuildingFire\\UndeadLargeBuildingFire0.mdl,Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire2.mdl" +targetattach="sprite,first" +targetattach1="sprite,second" +targetattach2="sprite,fourth" +targetattach3="sprite,fifth" +targetattachcount=4 + +[Xfus] +_code="Xfus" +_id="Xfus" +_type="buff" +editorname="建筑物伤害 – 不死族 小" +effectsoundlooped="UndeadFireSmall" +iseffect=1 +missilearc=0.0 +missilehoming=0 +missilespeed=0 +race="undead" +spelldetail=0 +targetart="Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire2.mdl,Environment\\UndeadBuildingFire\\UndeadSmallBuildingFire1.mdl" +targetattach="sprite,first" +targetattach1="sprite,fourth" +targetattachcount=2 diff --git a/plugin/w3x2lni/script/prebuilt/default/destructable.ini b/plugin/w3x2lni/script/prebuilt/default/destructable.ini new file mode 100644 index 0000000..56fd539 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/destructable.ini @@ -0,0 +1,13162 @@ +[ATg1] +_id="ATg1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BigElfGate\\BigElfGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DEMON_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\BigElfGate_Portrait\\BigElfGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ATg2] +_id="ATg2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BigElfGate45\\BigElfGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DEMON_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\BigElfGate_Portrait\\BigElfGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ATg3] +_id="ATg3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BigElfGate\\BigElfGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DEMON_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\BigElfGate_Portrait\\BigElfGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ATg4] +_id="ATg4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BigElfGate45\\BigElfGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DEMON_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\BigElfGate_Portrait\\BigElfGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ATt0] +_id="ATt0" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronWinterTree" +texid=31 +tilesets="W,N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ATt1] +_id="ATt1" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\AshenvaleTree\\AshenTree" +texid=31 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ATtc] +_id="ATtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DOOD_APTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\AshenCanopyTree" +texid=32 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ATtr] +_id="ATtr" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\AshenTree\\AshenTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=54 +mmred=0 +name="WESTRING_DEST_ASHENVALE_TREE_WALL" +numvar=5 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\AshenTree" +texid=32 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ATwf] +_id="ATwf" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\Wharf\\Wharf" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WHARF" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[BTrs] +_id="BTrs" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\Cinematic\\RessurectionStoneSW\\RessurectionStoneSW" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RES_STONE" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\Cinematic\\RessurectionStoneSW\\RessurectionStoneSW.mdl" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=1 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=0 +targtype="wall" +texid=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[BTrx] +_id="BTrx" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\Cinematic\\RessurectionStoneSE\\RessurectionStoneSE" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RES_STONE" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\Cinematic\\RessurectionStoneSE\\RessurectionStoneSE.mdl" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=1 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=0 +targtype="wall" +texid=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[BTsc] +_id="BTsc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="doodads\\underground\\terrain\\SupportBeam\\SupportBeam" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SUPPORT_COLUMN" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="doodads\\underground\\terrain\\SupportBeam\\SupportBeam.mdl" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=1 +selsize=256.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="wall" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[BTtc] +_id="BTtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DOOD_BTTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\BarrensTree\\BarrensTree" +texid=32 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[BTtw] +_id="BTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\BarrensTree\\BarrensTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=5 +mmgreen=50 +mmred=75 +name="WESTRING_DEST_BARRENS_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\BarrensTree\\BarrensTree" +texid=33 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[CTtc] +_id="CTtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DOOD_CTTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\FelwoodTree" +texid=32 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[CTtr] +_id="CTtr" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\AshenTree\\AshenTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=48 +mmred=0 +name="WESTRING_DEST_FELWOOD_TREE_WALL" +numvar=5 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\FelwoodTree" +texid=32 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[DTc1] +_id="DTc1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_ONE" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\CaveGate\\CaveGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTC1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveGate1Path.tga" +pathtexdeath="PathTextures\\CaveGate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=160.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTc2] +_id="DTc2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TWO" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\CaveGate2\\CaveGate2" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTC2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveGate2Path.tga" +pathtexdeath="PathTextures\\CaveGate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=160.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTep] +_id="DTep" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ELEVATOR_PATHBLOCKER" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\16x4ElevatorBlockPath.tga" +pathtexdeath="PathTextures\\16x4ElevatorBlockPathDeath.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTes] +_id="DTes" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\EggSack\\EggSack" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=15.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_EGGSACK" +numvar=2 +occh=0.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\EggSack_portrait\\EggSack_portrait.mdl" +radius=0.0 +repairtime=0 +selcircsize=112.0 +selectable=1 +selsize=60.0 +shadow="ShadowCrates.tga" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTfp] +_id="DTfp" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\FootSwitch\\FootSwitch" +fixedrot=270.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SMALL_ELEVATOR" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +pathtexdeath="PathTextures\\4x4Unbuildable.tga" +radius=100.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=175.0 +shadow="none" +showinmm=1 +targtype="decoration" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTfx] +_id="DTfx" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\FootSwitch\\FootSwitch" +fixedrot=270.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SMALL_ELEVATOR" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +pathtexdeath="PathTextures\\4x4Unbuildable.tga" +radius=100.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=175.0 +shadow="none" +showinmm=1 +targtype="decoration" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTg1] +_id="DTg1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\DungeonPorticulisGate\\DungeonPorticulisGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=100.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTG1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DungeonPorticulisGate_Portrait\\DungeonPorticulisGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg2] +_id="DTg2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\DungeonPorticulisGate45\\DungeonPorticulisGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=100.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTG2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DungeonPorticulisGate_Portrait\\DungeonPorticulisGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg3] +_id="DTg3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\DungeonPorticulisGate\\DungeonPorticulisGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=100.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTG3" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DungeonPorticulisGate_Portrait\\DungeonPorticulisGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg4] +_id="DTg4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Dungeon\\Terrain\\DungeonPorticulisGate45\\DungeonPorticulisGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=100.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DTG4" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DungeonPorticulisGate_Portrait\\DungeonPorticulisGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg5] +_id="DTg5" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\IronGate\\IronGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_IRON_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg6] +_id="DTg6" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\IronGate45\\IronGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_IRON_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg7] +_id="DTg7" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\IronGate\\IronGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_IRON_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTg8] +_id="DTg8" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\IronGate45\\IronGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_IRON_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTlv] +_id="DTlv" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\DungeonLever\\DungeonLever" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=5.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LEVER" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +pathtexdeath="PathTextures\\2x2Default.tga" +portraitmodel="Doodads\\Cinematic\\DungeonLever\\DungeonLever.mdl" +radius=50.0 +repairtime=0 +selcircsize=96.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTrc] +_id="DTrc" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\Terrain\\RockChunks\\RockChunks" +fixedrot=-1.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ROCK_CHUNKS" +numvar=6 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RockChunks_Portrait\\RockChunks_Portrait.mdl" +radius=0.0 +repairtime=0 +selcircsize=200.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTrf] +_id="DTrf" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_ONE" +fatlos=1 +file="Doodads\\Cinematic\\ElevatorPuzzle\\ElevatorPuzzle" +fixedrot=270.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZEZ" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Unbuildable.tga" +pathtexdeath="PathTextures\\8x8Unbuildable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="decoration" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTrx] +_id="DTrx" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TWO" +fatlos=1 +file="Doodads\\Cinematic\\ElevatorPuzzle\\ElevatorPuzzle" +fixedrot=270.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZEZ" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Unbuildable.tga" +pathtexdeath="PathTextures\\8x8Unbuildable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="decoration" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTs1] +_id="DTs1" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\ForceBridgeLarge45\\ForceBridgeLarge45" +fixedrot=-1.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="D,G" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTs2] +_id="DTs2" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\ForceBridgeLarge0\\ForceBridgeLarge0" +fixedrot=-1.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_FORCE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="D,G" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTs3] +_id="DTs3" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\ForceBridgeLarge45\\ForceBridgeLarge45" +fixedrot=-1.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="D,G" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTsb] +_id="DTsb" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\ForceBridgeLarge0\\ForceBridgeLarge0" +fixedrot=-1.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_FORCE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="D,G" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[DTsh] +_id="DTsh" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\Shrooms\\Shrooms" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DUNGEON_TREE_WALL" +numvar=8 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\Mushroom\\MushroomTree.tga" +texid=35 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[DTsp] +_id="DTsp" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Abilities\\Spells\\Orc\\SpikeBarrier\\SpikeBarrier" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=45.0 +maxroll=45.0 +maxscale=1.2 +minscale=0.6 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SPIKES" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[Dofv] +_id="Dofv" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dungeon\\Props\\Forcewall45\\Forcewall45" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DOFV" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ForceWall45.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[Dofw] +_id="Dofw" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dungeon\\Props\\Forcewall\\Forcewall" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_DOFW" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ForceWall.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[FTtw] +_id="FTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=10 +mmgreen=60 +mmred=110 +name="WESTRING_DEST_FALL_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronFallTree" +texid=31 +tilesets="F,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[GTsh] +_id="GTsh" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\Shrooms\\Shrooms" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_UNDERGROUND_TREE_WALL" +numvar=8 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\UndergroundTree\\UnderMushroomTree" +texid=35 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[IOt0] +_id="IOt0" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownThrone\\IceCrownThrone" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOT0" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[IOt1] +_id="IOt1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownThrone45\\IceCrownThrone45" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOT1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne135.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[IOt2] +_id="IOt2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownThrone135\\IceCrownThrone135" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOT2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne45.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITag] +_id="ITag" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\RockinArthas\\RockinArthas" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ROCKIN_ARTHAS" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=0 +selsize=256.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITcr] +_id="ITcr" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\ClearIceRock\\ClearIceRock" +fixedrot=-1.0 +flyh=100.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICEY_ROCK" +numvar=6 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITf1] +_id="ITf1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Northrend\\Water\\North_IceFloe\\North_IceFloe" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITf2] +_id="ITf2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Northrend\\Water\\North_IceFloe2\\North_IceFloe2" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITf3] +_id="ITf3" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Northrend\\Water\\North_IceFloe3\\North_IceFloe3" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITf4] +_id="ITf4" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Northrend\\Water\\North_IceFloe4\\North_IceFloe4" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITg1] +_id="ITg1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownGate\\IceCrownGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICECROWN_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITg2] +_id="ITg2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownGate45\\IceCrownGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICECROWN_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITg3] +_id="ITg3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownGate\\IceCrownGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICECROWN_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITg4] +_id="ITg4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownGate45\\IceCrownGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICECROWN_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITi2] +_id="ITi2" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\IceBridge45\\IceBridge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_BRIDGE_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="I,N" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITi3] +_id="ITi3" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\IceBridge\\IceBridge" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="I,N" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITi4] +_id="ITi4" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\IceBridge45\\IceBridge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_BRIDGE_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="I,N" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITib] +_id="ITib" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\IceBridge\\IceBridge" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="I,N" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ITig] +_id="ITig" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\Icecrown\\Structures\\Igloo\\Igloo" +fixedrot=-1.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ISIG" +numvar=1 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\Icecrown\\Structures\\Igloo\\Igloo.mdl" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=1 +selsize=200.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITtc] +_id="ITtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=100 +mmgreen=128 +mmred=32 +name="WESTRING_DOOD_ITTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\Ice_Tree" +texid=32 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ITtg] +_id="ITtg" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownThroneGate\\IceCrownThroneGate" +fixedrot=180.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_FROZEN_THRONE_GATE" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\GateLarge1Path.tga" +pathtexdeath="PathTextures\\GateLarge1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITtw] +_id="ITtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\AshenTree\\AshenTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=100 +mmgreen=128 +mmred=32 +name="WESTRING_DEST_ICECROWN_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\AshenvaleTree\\Ice_Tree" +texid=32 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ITw0] +_id="ITw0" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownWall0\\IceCrownWall0" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_HORIZONTAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall1Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall1" +showinmm=1 +targtype="wall" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITw1] +_id="ITw1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownWall45\\IceCrownWall45" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_2" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall2Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall2" +showinmm=1 +targtype="wall" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITw2] +_id="ITw2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownWall90\\IceCrownWall90" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_VERTICAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall3Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall3" +showinmm=1 +targtype="wall" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITw3] +_id="ITw3" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceCrownWall135\\IceCrownWall135" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_1" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall4Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall4" +showinmm=1 +targtype="wall" +texid=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITx1] +_id="ITx1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceGate\\IceGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITx2] +_id="ITx2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceGate45\\IceGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITx3] +_id="ITx3" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceGate\\IceGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ITx4] +_id="ITx4" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Icecrown\\Terrain\\IceGate45\\IceGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ICE_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[JTct] +_id="JTct" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\CityscapeTree\\CityscapeTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DEST_CITYSCAPE_RUINED_TREE_WALL" +numvar=2 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="ShadowCityTree" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\DalaranRuinsTree\\DalaranRuinsTree" +texid=31 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[JTtw] +_id="JTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=10 +mmgreen=60 +mmred=110 +name="WESTRING_DEST_DALARAN_RUINS_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\DalaranRuinsTree\\DalaranRuinsTree" +texid=31 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[KTtw] +_id="KTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\OutlandMushroomTree\\OutlandMushroomTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.85 +minscale=0.65 +mmblue=100 +mmgreen=70 +mmred=90 +name="WESTRING_DEST_BLACK_CITADEL_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\OutlandMushroomTree\\MushroomTree" +texid=37 +tilesets="K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[LOcg] +_id="LOcg" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\LordaeronSummer\\Props\\Cage\\Cage" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_CAGE" +numvar=1 +occh=0.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\LordaeronSummer\\Props\\Cage\\Cage.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=1 +selsize=0.0 +shadow="ShadowCage" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LT00] +_id="LT00" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeSmall0\\WoodBridgeSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT01] +_id="LT01" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeSmall45\\WoodBridgeSmall45" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT02] +_id="LT02" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeSmall0\\WoodBridgeSmall0" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT03] +_id="LT03" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeSmall45\\WoodBridgeSmall45" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT04] +_id="LT04" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeLarge0\\WoodBridgeLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT05] +_id="LT05" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeLarge45\\WoodBridgeLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_BRIDGE_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT06] +_id="LT06" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeLarge0\\WoodBridgeLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT07] +_id="LT07" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeLarge45\\WoodBridgeLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_BRIDGE_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT08] +_id="LT08" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeExtraLarge0\\WoodBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT09] +_id="LT09" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeExtraLarge45\\WoodBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT10] +_id="LT10" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeExtraLarge0\\WoodBridgeExtraLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LT11] +_id="LT11" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\WoodBridgeExtraLarge45\\WoodBridgeExtraLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTba] +_id="LTba" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Barricade\\Barricade" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOBA" +numvar=2 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\LordaeronSummer\\Terrain\\Barricade\\Barricade0.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=1 +selsize=0.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTbr] +_id="LTbr" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="CrateDeath" +fatlos=0 +file="Buildings\\Other\\BarrelsUnit0\\BarrelsUnit0" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=20.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_BARREL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="Buildings\\Other\\BarrelsUnit0\\BarrelsUnit0.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=1 +selsize=80.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTbs] +_id="LTbs" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="CrateDeath" +fatlos=0 +file="Buildings\\Other\\BarrelsUnit\\BarrelsUnit" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=20.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_BARREL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="Buildings\\Other\\BarrelsUnit\\BarrelsUnit.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=1 +selsize=80.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTbx] +_id="LTbx" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="CrateDeath" +fatlos=0 +file="Buildings\\Other\\BarrelsUnit1\\BarrelsUnit1" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=20.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_BARREL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="Buildings\\Other\\BarrelsUnit1\\BarrelsUnit1.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=1 +selsize=80.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTcr] +_id="LTcr" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="CrateDeath" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Crates\\Crates" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=20.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCS" +numvar=2 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Buildings\\Other\\CratesUnit\\CratesUnit.mdl" +radius=0.0 +repairtime=0 +selcircsize=60.0 +selectable=1 +selsize=0.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTe1] +_id="LTe1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\ElfGate\\ElfGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ELVEN_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTe2] +_id="LTe2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\ElfGate45\\ElfGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ELVEN_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTe3] +_id="LTe3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\ElfGate\\ElfGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ELVEN_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTe4] +_id="LTe4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\ElfGate45\\ElfGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ELVEN_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTex] +_id="LTex" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="CrateDeath" +fatlos=0 +file="Units\\Other\\TNTBarrel\\TNTBarrel" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=20.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_BARREL_EXPLOSIVES" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +portraitmodel="Units\\Other\\TNTBarrel\\TNTBarrel.mdl" +radius=0.0 +repairtime=0 +selcircsize=90.0 +selectable=1 +selsize=80.0 +shadow="ShadowCrates" +showinmm=1 +targtype="debris" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTg1] +_id="LTg1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Gate\\Gate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTg2] +_id="LTg2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Gate45\\Gate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTg3] +_id="LTg3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Gate\\Gate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTg4] +_id="LTg4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\Gate45\\Gate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,F,W,B,A,C,Y,X,V,Q,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTlt] +_id="LTlt" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DEST_SUMMER_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSummerTree" +texid=31 +tilesets="L" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[LTr1] +_id="LTr1" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMLEFT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall135\\BridgeRampSmall135" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp45.tga" +pathtexdeath="PathTextures\\StoneCliffRamp45Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr2] +_id="LTr2" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPLEFT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall225\\BridgeRampSmall225" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_LEFT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp135.tga" +pathtexdeath="PathTextures\\StoneCliffRamp135Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr3] +_id="LTr3" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPRIGHT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall315\\BridgeRampSmall315" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_RIGHT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp45.tga" +pathtexdeath="PathTextures\\StoneCliffRamp45Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr4] +_id="LTr4" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMRIGHT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall45\\BridgeRampSmall45" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp135.tga" +pathtexdeath="PathTextures\\StoneCliffRamp135Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr5] +_id="LTr5" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMLEFT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall135\\BridgeRampSmall135" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp45.tga" +pathtexdeath="PathTextures\\StoneCliffRamp45Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr6] +_id="LTr6" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPLEFT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall225\\BridgeRampSmall225" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_LEFT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp135.tga" +pathtexdeath="PathTextures\\StoneCliffRamp135Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr7] +_id="LTr7" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPRIGHT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall315\\BridgeRampSmall315" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_RIGHT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp45.tga" +pathtexdeath="PathTextures\\StoneCliffRamp45Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTr8] +_id="LTr8" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMRIGHT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall45\\BridgeRampSmall45" +fixedrot=0.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneCliffRamp135.tga" +pathtexdeath="PathTextures\\StoneCliffRamp135Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTrc] +_id="LTrc" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="RockWallDeath" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\LoardaeronRockChunks\\LoardaeronRockChunks" +fixedrot=-1.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ROCK_CHUNKS" +numvar=6 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RockChunks_Portrait\\RockChunks_Portrait.mdl" +radius=0.0 +repairtime=0 +selcircsize=144.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texid=0 +tilesets="L,W,F,V,Q,X,Y,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTs1] +_id="LTs1" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMLEFT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall135\\BridgeRampSmall135" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight90.tga" +pathtexdeath="PathTextures\\CliffRampStraight90Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs2] +_id="LTs2" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPLEFT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall45\\BridgeRampSmall45" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_LEFT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight180.tga" +pathtexdeath="PathTextures\\CliffRampStraight180Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs3] +_id="LTs3" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPRIGHT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall315\\BridgeRampSmall315" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_RIGHT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight270.tga" +pathtexdeath="PathTextures\\CliffRampStraight270Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs4] +_id="LTs4" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMRIGHT" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall225\\BridgeRampSmall225" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight0.tga" +pathtexdeath="PathTextures\\CliffRampStraight0Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs5] +_id="LTs5" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMLEFT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall135\\BridgeRampSmall135" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight90.tga" +pathtexdeath="PathTextures\\CliffRampStraight90Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs6] +_id="LTs6" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPLEFT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall45\\BridgeRampSmall45" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_LEFT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight180.tga" +pathtexdeath="PathTextures\\CliffRampStraight180Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs7] +_id="LTs7" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_TOPRIGHT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall315\\BridgeRampSmall315" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_TOP_RIGHT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight270.tga" +pathtexdeath="PathTextures\\CliffRampStraight270Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTs8] +_id="LTs8" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_BOTTOMRIGHT2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\BridgeRampSmall225\\BridgeRampSmall225" +fixedrot=225.0 +flyh=30.0 +fogradius=50.0 +fogvis=0 +goldrep=200 +hp=500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.33 +minscale=1.33 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffRampStraight0.tga" +pathtexdeath="PathTextures\\CliffRampStraight0Death.tga" +radius=50.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt0] +_id="LTt0" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSummerTree" +texid=31 +tilesets="L" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt1] +_id="LTt1" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSummerTree" +texid=31 +tilesets="L" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt2] +_id="LTt2" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronFallTree" +texid=31 +tilesets="F,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt3] +_id="LTt3" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronFallTree" +texid=31 +tilesets="F,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt4] +_id="LTt4" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronWinterTree" +texid=31 +tilesets="W,N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTt5] +_id="LTt5" +_type="destructable" +armor="Wood" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\TreeBridge0\\TreeBridge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=250.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\TreeBridge0Death.tga" +pathtexdeath="PathTextures\\TreeBridge0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\AshenvaleTree\\AshenTree" +texid=31 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTtc] +_id="LTtc" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Cinematic\\TyrandeWoodBridgeLarge\\TyrandeWoodBridgeLarge" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TYRANDE_BRIDGE_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTtx] +_id="LTtx" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Cinematic\\TyrandeWoodBridgeLarge\\TyrandeWoodBridgeLarge" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_TYRANDE_BRIDGE_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Q" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[LTw0] +_id="LTw0" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\StoneWall0\\StoneWall0" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_HORIZONTAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall1Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall1" +showinmm=1 +targtype="wall" +texid=0 +tilesets="L,F,W,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTw1] +_id="LTw1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\StoneWall45\\StoneWall45" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_2" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall2Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall2" +showinmm=1 +targtype="wall" +texid=0 +tilesets="L,F,W,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTw2] +_id="LTw2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\StoneWall90\\StoneWall90" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_VERTICAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall3Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall3" +showinmm=1 +targtype="wall" +texid=0 +tilesets="L,F,W,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[LTw3] +_id="LTw3" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\LordaeronSummer\\Terrain\\StoneWall135\\StoneWall135" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_1" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall4Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall4" +showinmm=1 +targtype="wall" +texid=0 +tilesets="L,F,W,Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[NTbd] +_id="NTbd" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Northrend\\Water\\Battleship\\Battleship" +fixedrot=-1.0 +flyh=100.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOSP" +numvar=1 +occh=0.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="debris" +texid=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[NTtc] +_id="NTtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DOOD_NTTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\NorthrendTree\\NorthTree" +texid=32 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[NTtw] +_id="NTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\NorthrendTree\\NorthrendTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=32 +mmgreen=48 +mmred=32 +name="WESTRING_DEST_NORTHREND_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\NorthrendTree\\NorthTree" +texid=34 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[OTds] +_id="OTds" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\DemonStorm\\DemonStorm" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OZDS" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +portraitmodel="Doodads\\Cinematic\\DemonStorm\\DemonStorm.mdl" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[OTip] +_id="OTip" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\InvisiblePlatform\\InvisiblePlatform" +fixedrot=0.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_INVISIBLE_PLATFORM" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=1 + +[OTis] +_id="OTis" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\InvisiblePlatformSmall\\InvisiblePlatformSmall" +fixedrot=0.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_INVISIBLE_PLATFORM_SMALL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Unbuildable.tga" +radius=0.0 +repairtime=0 +selcircsize=80.0 +selectable=0 +selsize=60.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=1 + +[OTsp] +_id="OTsp" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cinematic\\ShimmeringPortal\\ShimmeringPortal" +fixedrot=-1.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OZSP" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +portraitmodel="Doodads\\Cinematic\\ShimmeringPortal\\ShimmeringPortal.mdl" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=1 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[OTtw] +_id="OTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\OutlandMushroomTree\\OutlandMushroomTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.85 +minscale=0.65 +mmblue=100 +mmgreen=70 +mmred=90 +name="WESTRING_DEST_OUTLAND_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\OutlandMushroomTree\\MushroomTree" +texid=37 +tilesets="O" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[VTlt] +_id="VTlt" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DEST_VILLAGE_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSummerTree" +texid=31 +tilesets="V" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[Volc] +_id="Volc" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Abilities\\Spells\\Other\\Volcano\\Volcano.mdl" +fixedrot=0.0 +flyh=0.0 +fogradius=100.0 +fogvis=0 +goldrep=0 +hp=2500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_VOLCANO" +numvar=1 +occh=0.0 +oncliffs=0 +onwater=1 +radius=100.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=11 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[WTst] +_id="WTst" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=32 +mmgreen=96 +mmred=32 +name="WESTRING_DEST_SNOWY_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSnowTree" +texid=31 +tilesets="W,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[WTtw] +_id="WTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\LordaeronTree\\LordaeronTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=32 +mmgreen=96 +mmred=32 +name="WESTRING_DEST_WINTER_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronWinterTree" +texid=31 +tilesets="W" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[XOk1] +_id="XOk1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dalaran\\Props\\KingThrone45\\KingThrone45" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOk1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne135.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[XOk2] +_id="XOk2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dalaran\\Props\\KingThrone135\\KingThrone135" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOk2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne45.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[XOkt] +_id="XOkt" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dalaran\\Props\\KingThrone\\KingThrone" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOkt" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\throne.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="X,Y" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[XTbd] +_id="XTbd" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dalaran\\Terrain\\DalaranBuilding\\DalaranBuilding" +fixedrot=0.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=2500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_BUILDING" +numvar=2 +occh=0.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Unflyable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=384.0 +shadow="ShadowDalaranBuilding" +showinmm=1 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[XTm5] +_id="XTm5" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="MagicalCellDeathSound" +editorsuffix="WESTRING_EDITORSUFFIX_ANGLED" +fatlos=0 +file="Doodads\\Terrain\\DalaranMagicalPen45\\DalaranMagicalPen45" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ANGLED_MAGICAL_PEN" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x10Pen45Path.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DalaranMagicalPen_portrait\\DalaranMagicalPen_portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=288.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[XTmp] +_id="XTmp" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="MagicalCellDeathSound" +fatlos=0 +file="Doodads\\Terrain\\DalaranMagicalPen\\DalaranMagicalPen" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_MAGICAL_PEN" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8PenPath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DalaranMagicalPen_portrait\\DalaranMagicalPen_portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=288.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[XTmx] +_id="XTmx" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="MagicalCellDeathSound" +fatlos=0 +file="Doodads\\Terrain\\DalaranMagicalPenWall\\DalaranMagicalPenWall" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.85 +minscale=0.85 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_MAGICAL_PEN_WALL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x2Default.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DalaranMagicalPen_portrait\\DalaranMagicalPen_portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=128.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[XTvt] +_id="XTvt" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Dalaran\\Terrain\\DalaranVioletCitadel\\DalaranVioletCitadel" +fixedrot=0.0 +flyh=0.0 +fogradius=100.0 +fogvis=0 +goldrep=0 +hp=2500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LARGE_BUILDING" +numvar=1 +occh=0.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\12x12Unflyable.tga" +radius=100.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=512.0 +shadow="ShadowDalaranBuilding" +showinmm=1 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[XTx5] +_id="XTx5" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="MagicalCellDeathSound" +editorsuffix="WESTRING_EDITORSUFFIX_ANGLED" +fatlos=0 +file="Doodads\\Terrain\\DalaranMagicalPenWall45\\DalaranMagicalPenWall45" +fixedrot=-1.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=250.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_ANGLED_MAGICAL_PEN_WALL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Fence45.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\DalaranMagicalPen_portrait\\DalaranMagicalPen_portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=128.0 +selectable=1 +selsize=0.0 +shadow="none" +showinmm=0 +targtype="debris" +texid=0 +tilesets="X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[YSdb] +_id="YSdb" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cityscape\\Structures\\CityBridgeLarge45Destroyed\\CityBridgeLarge45Destroyed" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSDB" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CitybridgeDestroyed.tga" +pathtexdeath="PathTextures\\CitybridgeDestroyed.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Y" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YSdc] +_id="YSdc" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cityscape\\Structures\\CityBridgeLarge45Destroyed\\CityBridgeLarge45Destroyed" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSDC" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CitybridgeDestroyed.tga" +pathtexdeath="PathTextures\\CitybridgeDestroyed.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Y" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT00] +_id="YT00" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall0\\RockBridgeSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT01] +_id="YT01" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall45\\RockBridgeSmall45" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT02] +_id="YT02" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall0\\RockBridgeSmall0" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT03] +_id="YT03" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall45\\RockBridgeSmall45" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT04] +_id="YT04" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge0\\RockBridgeLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT05] +_id="YT05" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge45\\RockBridgeLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT06] +_id="YT06" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge0\\RockBridgeLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT07] +_id="YT07" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge45\\RockBridgeLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT08] +_id="YT08" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT09] +_id="YT09" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT10] +_id="YT10" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT11] +_id="YT11" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT12] +_id="YT12" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall0\\CityBridgeSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT13] +_id="YT13" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall45\\CityBridgeSmall45" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT14] +_id="YT14" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall90\\CityBridgeSmall90" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall90.tga" +pathtexdeath="PathTextures\\CityBridgeSmall90Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT15] +_id="YT15" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall135\\CityBridgeSmall135" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall135.tga" +pathtexdeath="PathTextures\\CityBridgeSmall135Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT16] +_id="YT16" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge0\\CityBridgeLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT17] +_id="YT17" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge45\\CityBridgeLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT18] +_id="YT18" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge90\\CityBridgeLarge90" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge90.tga" +pathtexdeath="PathTextures\\CityBridgeLarge90Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT19] +_id="YT19" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge135\\CityBridgeLarge135" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge135.tga" +pathtexdeath="PathTextures\\CityBridgeLarge135Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT20] +_id="YT20" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge0\\CityBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT21] +_id="YT21" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge45\\CityBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT22] +_id="YT22" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge90\\CityBridgeExtraLarge90" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge90.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge90Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT23] +_id="YT23" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge135\\CityBridgeExtraLarge135" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge135.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge135Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT24] +_id="YT24" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall0\\RockBridgeSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT25] +_id="YT25" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall45\\RockBridgeSmall45" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT26] +_id="YT26" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall0\\RockBridgeSmall0" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT27] +_id="YT27" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeSmall45\\RockBridgeSmall45" +fixedrot=90.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT28] +_id="YT28" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge0\\RockBridgeLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT29] +_id="YT29" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge45\\RockBridgeLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT30] +_id="YT30" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge0\\RockBridgeLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT31] +_id="YT31" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeLarge45\\RockBridgeLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT32] +_id="YT32" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT33] +_id="YT33" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT34] +_id="YT34" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT35] +_id="YT35" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT36] +_id="YT36" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall0\\CityBridgeSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall0.tga" +pathtexdeath="PathTextures\\CityBridgeSmall0Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT37] +_id="YT37" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall45\\CityBridgeSmall45" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall45.tga" +pathtexdeath="PathTextures\\CityBridgeSmall45Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT38] +_id="YT38" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall90\\CityBridgeSmall90" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall90.tga" +pathtexdeath="PathTextures\\CityBridgeSmall90Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT39] +_id="YT39" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeSmall135\\CityBridgeSmall135" +fixedrot=0.0 +flyh=256.0 +fogradius=100.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeSmall135.tga" +pathtexdeath="PathTextures\\CityBridgeSmall135Death.tga" +radius=100.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT40] +_id="YT40" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge0\\CityBridgeLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT41] +_id="YT41" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge45\\CityBridgeLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT42] +_id="YT42" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge90\\CityBridgeLarge90" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge90.tga" +pathtexdeath="PathTextures\\CityBridgeLarge90Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT43] +_id="YT43" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeLarge135\\CityBridgeLarge135" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeLarge135.tga" +pathtexdeath="PathTextures\\CityBridgeLarge135Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT44] +_id="YT44" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge0\\CityBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_0_VERTICAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT45] +_id="YT45" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge45\\CityBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT46] +_id="YT46" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge90\\CityBridgeExtraLarge90" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_0_HORIZONTAL" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge90.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge90Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT47] +_id="YT47" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\CityBridgeExtraLarge135\\CityBridgeExtraLarge135" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraLarge135.tga" +pathtexdeath="PathTextures\\CityBridgeExtraLarge135Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT48] +_id="YT48" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL_EXTRA" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT49] +_id="YT49" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1_EXTRA" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT50] +_id="YT50" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge0\\RockBridgeExtraLarge0" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL_EXTRA" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraExtraLarge0.tga" +pathtexdeath="PathTextures\\CityBridgeExtraExtraLarge0Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YT51] +_id="YT51" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=2 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Terrain\\RockBridgeExtraLarge45\\RockBridgeExtraLarge45" +fixedrot=90.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2_EXTRA" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBridgeExtraExtraLarge45.tga" +pathtexdeath="PathTextures\\CityBridgeExtraExtraLarge45Death.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[YTab] +_id="YTab" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER_FLIER" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Cyan.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTac] +_id="YTac" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER_LARGE_FLIER" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Cyan.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=160.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTce] +_id="YTce" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cityscape\\Terrain\\CityEnteranceGate\\CityEnteranceGate" +fixedrot=180.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_CITY_ENTRANCE" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\GateLarge1Path.tga" +pathtexdeath="PathTextures\\GateLarge1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\CityEnteranceGate_Portrait\\CityEnteranceGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTct] +_id="YTct" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\CityscapeTree\\CityscapeTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DEST_CITYSCAPE_SUMMER_TREE_WALL" +numvar=2 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="ShadowCityTree" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSummerTree" +texid=31 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[YTcx] +_id="YTcx" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Cityscape\\Terrain\\CityEnteranceGate\\CityEnteranceGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_CITY_ENTRANCE" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\GateLarge1Path.tga" +pathtexdeath="PathTextures\\GateLarge1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\CityEnteranceGate_Portrait\\CityEnteranceGate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTfb] +_id="YTfb" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER_BOTH" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Unflyable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTfc] +_id="YTfc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER_LARGE_BOTH" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unflyable.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=160.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTft] +_id="YTft" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\CityscapeTree\\CityscapeTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DEST_CITYSCAPE_FALL_TREE_WALL" +numvar=2 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="ShadowCityTree" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronFallTree" +texid=31 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[YTlb] +_id="YTlb" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LOSBLOCKER" +numvar=1 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTpb] +_id="YTpb" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=80.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTpc] +_id="YTpc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_PATHBLOCKER_LARGE" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=160.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[YTst] +_id="YTst" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\CityscapeTree\\CityscapeTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=32 +mmgreen=96 +mmred=32 +name="WESTRING_DEST_CITYSCAPE_SNOWY_TREE_WALL" +numvar=2 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="ShadowCityTree" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronSnowTree" +texid=31 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[YTwt] +_id="YTwt" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\CityscapeTree\\CityscapeTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=32 +mmgreen=96 +mmred=32 +name="WESTRING_DEST_CITYSCAPE_WINTER_TREE_WALL" +numvar=2 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="ShadowCityTree" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\LordaeronTree\\LordaeronWinterTree" +texid=31 +tilesets="Y,X" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[Ytlc] +_id="Ytlc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="P" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\LOSBlocker" +fixedrot=270.0 +flyh=0.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=9999.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_LOSBLOCKER_LARGE" +numvar=1 +occh=230.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=160.0 +shadow="none" +showinmm=0 +targtype="decoration" +texid=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd1] +_id="ZTd1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL1" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd2] +_id="ZTd2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL1" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor1Path.tga" +pathtexdeath="PathTextures\\RoundDoor1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd3] +_id="ZTd3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL2" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=90.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd4] +_id="ZTd4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL2" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=180.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd5] +_id="ZTd5" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL3" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_3" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd6] +_id="ZTd6" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL3" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_3" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor1Path.tga" +pathtexdeath="PathTextures\\RoundDoor1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd7] +_id="ZTd7" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL4" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=90.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_4" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTd8] +_id="ZTd8" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL4" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsRoundDoor\\RuinsRoundDoor" +fixedrot=180.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_4" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\RoundDoor2Path.tga" +pathtexdeath="PathTextures\\RoundDoor2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\RuinsRoundDoor_Portrait\\RuinsRoundDoor_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texfile="ReplaceableTextures\\Cliff\\Cliff1.tga" +texid=11 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTg1] +_id="ZTg1" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsGate\\RuinsGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_GATE_HORIZONTAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTg2] +_id="ZTg2" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsGate45\\RuinsGate45" +fixedrot=270.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_GATE_DIAGONAL_1" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate2" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTg3] +_id="ZTg3" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsGate\\RuinsGate" +fixedrot=0.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=0.9 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_GATE_VERTICAL" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate1Path.tga" +pathtexdeath="PathTextures\\Gate1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTg4] +_id="ZTg4" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsGate45\\RuinsGate45" +fixedrot=180.0 +flyh=0.0 +fogradius=100.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_RUINS_GATE_DIAGONAL_2" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Gate2Path.tga" +pathtexdeath="PathTextures\\Gate2PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate4" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTnc] +_id="ZTnc" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Ruins\\Props\\Ruins_NagaCircle\\Ruins_NagaCircle" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZONC" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="decoration" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ZTr0] +_id="ZTr0" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\CliffDoodad\\NagaStairsSmall0\\NagaStairsSmall0" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCR0" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\NagaStairsSmall0.tga" +pathtexdeath="PathTextures\\NagaStairsSmall0.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ZTr1] +_id="ZTr1" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\CliffDoodad\\NagaStairsSmall90\\NagaStairsSmall90" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCR1" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\NagaStairsSmall90.tga" +pathtexdeath="PathTextures\\NagaStairsSmall90.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ZTr2] +_id="ZTr2" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\CliffDoodad\\NagaStairsSmall180\\NagaStairsSmall180" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCR2" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\NagaStairsSmall180.tga" +pathtexdeath="PathTextures\\NagaStairsSmall180.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ZTr3] +_id="ZTr3" +_type="destructable" +armor="Stone" +buildtime=120 +canplacedead=0 +canplacerandscale=1 +category="B" +cliffheight=1 +colorb=255 +colorg=255 +colorr=255 +fatlos=0 +file="Doodads\\Terrain\\CliffDoodad\\NagaStairsSmall270\\NagaStairsSmall270" +fixedrot=0.0 +flyh=256.0 +fogradius=200.0 +fogvis=1 +goldrep=200 +hp=2500.0 +lightweight=0 +lumberrep=100 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCR3" +numvar=1 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\NagaStairsSmall270.tga" +pathtexdeath="PathTextures\\NagaStairsSmall270.tga" +radius=200.0 +repairtime=120 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="none" +showinmm=1 +targtype="bridge" +texfile="ReplaceableTextures\\Cliff\\Cliff0.tga" +texid=11 +tilesets="Z" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=1 + +[ZTsg] +_id="ZTsg" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Cinematic\\SargerasGate\\SargerasGate" +fixedrot=180.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SARGERAS_GATE" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\GateLarge1Path.tga" +pathtexdeath="PathTextures\\GateLarge1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate3" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTsx] +_id="ZTsx" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Cinematic\\SargerasGate\\SargerasGate" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=1 +goldrep=0 +hp=500.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_SARGERAS_GATE" +numvar=1 +occh=400.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\GateLarge1Path.tga" +pathtexdeath="PathTextures\\GateLarge1PathDeath.tga" +portraitmodel="Doodads\\Terrain\\Portraits\\Gate_Portrait\\Gate_Portrait.mdl" +radius=50.0 +repairtime=0 +selcircsize=512.0 +selectable=1 +selsize=0.0 +shadow="ShadowGate1" +showinmm=1 +targtype="debris" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTtc] +_id="ZTtc" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Ashenvale\\Plants\\AshenCanopyTree\\AshenCanopyTree" +fixedrot=270.0 +flyh=256.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=64 +mmred=0 +name="WESTRING_DOOD_ZTTC" +numvar=3 +occh=300.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +radius=0.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\RuinsTree\\RuinsTree" +texid=32 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ZTtw] +_id="ZTtw" +_type="destructable" +armor="Wood" +buildtime=0 +canplacedead=1 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +deathsnd="TreeWallDeath" +fatlos=0 +file="Doodads\\Terrain\\RuinsTree\\RuinsTree" +fixedrot=270.0 +flyh=100.0 +fogradius=0.0 +fogvis=0 +goldrep=0 +hp=50.0 +lightweight=1 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.05 +minscale=0.65 +mmblue=10 +mmgreen=60 +mmred=110 +name="WESTRING_DEST_RUINS_TREE_WALL" +numvar=10 +occh=230.0 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +radius=0.0 +repairtime=0 +selcircsize=128.0 +selectable=0 +selsize=0.0 +shadow="BuildingShadowSmall" +showinmm=1 +targtype="tree" +texfile="ReplaceableTextures\\RuinsTree\\RuinsTree" +texid=36 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=1 +userlist=0 +walkable=0 + +[ZTw0] +_id="ZTw0" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_HORIZONTAL" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsWall0\\RuinsWall0" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_HORIZONTAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall1Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall1" +showinmm=1 +targtype="wall" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTw1] +_id="ZTw1" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL2" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsWall45\\RuinsWall45" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_2" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall2Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall2" +showinmm=1 +targtype="wall" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTw2] +_id="ZTw2" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_VERTICAL" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsWall90\\RuinsWall90" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_VERTICAL" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall3Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall3" +showinmm=1 +targtype="wall" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 + +[ZTw3] +_id="ZTw3" +_type="destructable" +armor="Stone" +buildtime=0 +canplacedead=0 +canplacerandscale=1 +category="D" +cliffheight=0 +colorb=255 +colorg=255 +colorr=255 +editorsuffix="WESTRING_EDITORSUFFIX_DIAGONAL1" +fatlos=0 +file="Doodads\\Ruins\\Terrain\\RuinsWall135\\RuinsWall135" +fixedrot=270.0 +flyh=0.0 +fogradius=50.0 +fogvis=0 +goldrep=0 +hp=200.0 +lightweight=0 +lumberrep=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DEST_STONE_WALL_DIAGONAL_1" +numvar=5 +occh=0.0 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\StoneWall4Path.tga" +radius=50.0 +repairtime=0 +selcircsize=256.0 +selectable=0 +selsize=0.0 +shadow="ShadowStoneWall4" +showinmm=1 +targtype="wall" +texid=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +walkable=0 diff --git a/plugin/w3x2lni/script/prebuilt/default/doodad.ini b/plugin/w3x2lni/script/prebuilt/default/doodad.ini new file mode 100644 index 0000000..8791b93 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/doodad.ini @@ -0,0 +1,18305 @@ +[AObd] +_id="AObd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\Bird\\Bird" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOBD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AObo] +_id="AObo" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\AshenBrokenObilisk\\AshenBrokenObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOBK" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AObr] +_id="AObr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\Brazier\\Brazier" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOBR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="AshenvaleBrazierLoop" +tilesets="C,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOgs] +_id="AOgs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\SentinelStatue\\SentinelStatue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOGS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Cross.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOhs] +_id="AOhs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\AshenHollowStump\\AshenHollowStump" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APHS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOks] +_id="AOks" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\KeeperStatue\\KeeperStatue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOKS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOla] +_id="AOla" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\AshenLogAngled\\AshenLogAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOLA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Log45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOlg] +_id="AOlg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\AshenLogStraight\\AshenLogStraight" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOLG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOnt] +_id="AOnt" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\Totem\\Totem" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AONT" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOob] +_id="AOob" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\Obelisk\\Obelisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOGO" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C,O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOsk] +_id="AOsk" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\AshenObilisk\\AshenObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AOsr] +_id="AOsr" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ashenvale\\Props\\ScorchedRemains\\ScorchedRemains" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOSR" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[APbs] +_id="APbs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Plants\\AshenBush0\\AshenBush0" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APBS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[APct] +_id="APct" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Plants\\AshenCatTail\\AshenCatTail" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APCT" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="A,L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[APms] +_id="APms" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Plants\\AshenShrooms\\AshenShrooms" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APMS" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="A,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[APtv] +_id="APtv" +_max_level=7 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Plants\\Felwood_Thorns\\Felwood_Thorns" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APTV" +numvar=7 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ARrk] +_id="ARrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ashenvale\\Rocks\\AshenRock\\AshenRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASbc] +_id="ASbc" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\AshenBrokenColumn\\AshenBrokenColumn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBC" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASbl] +_id="ASbl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\AshenRuinsBlocks\\AshenRuinsBlocks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASbr] +_id="ASbr" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\AshenRubble\\AshenRubble" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBR" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASpr] +_id="ASpr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\Pier\\Pier" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASPR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASpt] +_id="ASpt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\PierTrashed\\PierTrashed" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASPT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASr1] +_id="ASr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\ARockArch45\\ARockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASR1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASra] +_id="ASra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\ARockArch\\ARockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASRA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASv0] +_id="ASv0" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuilding0\\ElvenFishVillageBuilding0" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASV0" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASv1] +_id="ASv1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuilding1\\ElvenFishVillageBuilding1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASV1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASv2] +_id="ASv2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuilding2\\ElvenFishVillageBuilding2" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASV2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASv3] +_id="ASv3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuilding3\\ElvenFishVillageBuilding3" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASV3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASv4] +_id="ASv4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuilding4\\ElvenFishVillageBuilding4" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASV4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASwt] +_id="ASwt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Ashenvale\\Structures\\Worldtree\\Worldtree" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASWT" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\24x24Unflyable.tga" +selsize=1024.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASx0] +_id="ASx0" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuildingRuined0\\ElvenFishVillageBuildingRuined0" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASX0" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASx1] +_id="ASx1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuildingRuined1\\ElvenFishVillageBuildingRuined1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASX1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Round.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ASx2] +_id="ASx2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\ElvenFishVillageBuildingRuined2\\ElvenFishVillageBuildingRuined2" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASX2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AWfl] +_id="AWfl" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ashenvale\\Water\\AshenvaleLilyPad\\AshenvaleLilyPad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPFP" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AWfs] +_id="AWfs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ashenvale\\Water\\Fish\\Fish" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOFS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AWlp] +_id="AWlp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ashenvale\\Water\\AshenLillyPad\\AshenLillyPad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APLP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[AZrf] +_id="AZrf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Cinematic\\NightElfTransportShipRuined\\NightElfTransportShipRuined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AZRF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="A,C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BObo] +_id="BObo" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Barrens\\Props\\Barrens_Bones\\Barrens_Bones" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BOBO" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="B,O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BOct] +_id="BOct" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Barrens\\Props\\CentaurTotem\\CentaurTotem" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BOCT" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BOth] +_id="BOth" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Barrens\\Props\\HellscreamThrone\\HellscreamThrone" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOTH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[BOtt] +_id="BOtt" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Barrens\\Props\\TaurenTotem\\TaurenTotem" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BOTT" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BPca] +_id="BPca" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Plants\\Cactus\\Cactus" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BPCA" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BPtw] +_id="BPtw" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Plants\\Barrens_TreeDoodad\\Barrens_TreeDoodad" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BPTW" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRcr] +_id="BRcr" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\Crator\\Crator" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRCR" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x12Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRfs] +_id="BRfs" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\BarrensFissure\\BarrensFissure" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRFS" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRgs] +_id="BRgs" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\Geyser\\Geyser" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRGS" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRrk] +_id="BRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\Barrens_Rocks\\Barrens_Rocks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRrp] +_id="BRrp" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\RockPillar\\RockPillar" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRRP" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRrs] +_id="BRrs" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Barrens\\Rocks\\Barrens_Spires\\Barrens_Spires" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRRS" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\LargeRockSpire.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BRsp] +_id="BRsp" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=0.36 +file="Doodads\\Barrens\\Rocks\\Barrens_Spires\\Barrens_Spires" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRSP" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=0.0 +walkable=0 + +[BSar] +_id="BSar" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\RuinedArch\\RuinedArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSAR" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BSr1] +_id="BSr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\BRockArch45\\BRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSR1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BSra] +_id="BSra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\BRockArch\\BRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSRA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BSrc] +_id="BSrc" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\RuinedChunk\\RuinedChunk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSRC" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BSrv] +_id="BSrv" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\RuinedCurvedWall\\RuinedCurvedWall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSRV" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[BSrw] +_id="BSrw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Barrens\\Structures\\RuinedWall\\RuinedWall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BSRW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="B" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CObl] +_id="CObl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Environment\\BlightDoodad\\BlightDoodad" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_COBL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[CObo] +_id="CObo" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Felwood\\Props\\FelwoodBrokenObilisk\\FelwoodBrokenObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOBK" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[COdf] +_id="COdf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Felwood\\Props\\Fish_Dead\\Fish_Dead" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_CODF" +numvar=1 +oncliffs=0 +onwater=1 +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="C,D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[COhs] +_id="COhs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Props\\FelwoodHollowStump\\FelwoodHollowStump" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APHS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[COla] +_id="COla" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Props\\FelwoodLogAngled\\FelwoodLogAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOLA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[COlg] +_id="COlg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Props\\FelwoodLogStraight\\FelwoodLogStraight" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOLG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[COob] +_id="COob" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Felwood\\Props\\FelwoodObilisk\\FelwoodObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CPbs] +_id="CPbs" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Plants\\FelwoodBush\\FelwoodBush" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YPBS" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CPct] +_id="CPct" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Plants\\FelwoodCatTail\\FelwoodCatTail" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APCT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CPlp] +_id="CPlp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Plants\\FelwoodLillyPad\\FelwoodLillyPad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPLP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CPms] +_id="CPms" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Plants\\FelwoodShrooms\\FelwoodShrooms" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APMS" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CRfs] +_id="CRfs" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Rocks\\FelwoodFissure\\FelwoodFissure" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRFS" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CRrk] +_id="CRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Rocks\\FelwoodRock\\FelwoodRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CRrs] +_id="CRrs" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Felwood\\Rocks\\Felwood_Spires\\Felwood_Spires" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRRS" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\LargeRockSpire.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CSbc] +_id="CSbc" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Felwood\\Structures\\FelwoodBrokenColumn\\FelwoodBrokenColumn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBC" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CSbl] +_id="CSbl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Felwood\\Structures\\FelwoodRuinsBlocks\\FelwoodRuinsBlocks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CSbr] +_id="CSbr" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Felwood\\Structures\\FelwoodRubble\\FelwoodRubble" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASBR" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CSr1] +_id="CSr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Felwood\\Structures\\CRockArch45\\CRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[CSra] +_id="CSra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Felwood\\Structures\\CRockArch\\CRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="C" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOab] +_id="DOab" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\BookshelfWall45\\BookshelfWall45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOAB" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Diag1.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOas] +_id="DOas" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\AzsharaStatue\\AzsharaStatue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOAS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DObh] +_id="DObh" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\Bench\\Bench" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOBH" +numvar=1 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DObk] +_id="DObk" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\Bookshelf\\Bookshelf" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOBK" +numvar=1 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DObw] +_id="DObw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\BookshelfWall\\BookshelfWall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOBW" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOch] +_id="DOch" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\Chain\\Chain" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOCH" +numvar=3 +oncliffs=1 +onwater=0 +selsize=0.0 +shadow=1 +showinfog=0 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOcp] +_id="DOcp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\ChainPost\\ChainPost" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOCP" +numvar=1 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOcr] +_id="DOcr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\Chair\\Chair" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOCR" +numvar=1 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOim] +_id="DOim" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\IronMaiden\\IronMaiden" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOIM" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOjp] +_id="DOjp" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\JunkPile\\JunkPile" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOJP" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOkb] +_id="DOkb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\BigBookshelf\\BigBookshelf" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOKB" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOlc] +_id="DOlc" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\LavaCracks\\LavaCracks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOLC" +numvar=4 +oncliffs=0 +onwater=0 +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOmc] +_id="DOmc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\MineCart\\MineCart" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOMC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOme] +_id="DOme" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\MineCartEmpty\\MineCartEmpty" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOME" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOob] +_id="DOob" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\DungeonObilisk\\DungeonObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOsv] +_id="DOsv" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\SewerVent\\SewerVent" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOSV" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOsw] +_id="DOsw" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\SewerWallpipes\\SewerWallpipes" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOSW" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOtb] +_id="DOtb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\Table\\Table" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOTB" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOtc] +_id="DOtc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\TableNChair\\TableNChair" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOTC" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOtp] +_id="DOtp" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\TreasurePile\\TreasurePile" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOTP" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DOtt] +_id="DOtt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Dungeon\\Props\\TortureTable\\TortureTable" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOTT" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DRfc] +_id="DRfc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Dungeon\\Rocks\\Cave_FieryCrator\\Cave_FieryCrator" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DRFC" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="HumanFireMedium" +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DRrk] +_id="DRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Dungeon\\Rocks\\DungeonRock\\DungeonRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DRst] +_id="DRst" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Dungeon\\Rocks\\DungeonStalagmite\\DungeonStalagmite" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DRST" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSa1] +_id="DSa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\DRockArch45\\DRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSa2] +_id="DSa2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\DungeonArchway45\\DungeonArchway45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_GSA2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSah] +_id="DSah" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\DungeonArchway1\\DungeonArchway1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_GSAH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSar] +_id="DSar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\DRockArch\\DRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSp0] +_id="DSp0" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\PorticulisWall0_\\PorticulisWall0_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DSP0" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[DSp9] +_id="DSp9" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Dungeon\\Structures\\PorticulisWall45_\\PorticulisWall45_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DSP9" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Fence135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="D" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GOlc] +_id="GOlc" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Underground\\Props\\GCracks\\GCracks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DOLC" +numvar=4 +oncliffs=0 +onwater=0 +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GOob] +_id="GOob" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Underground\\Props\\UndergroundObilisk\\UndergroundObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GPsh] +_id="GPsh" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Underground\\Plants\\ShroomsBlue\\ShroomsBlue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.75 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DPSH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GRfc] +_id="GRfc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Underground\\Rocks\\Underground_FieryCrator\\Underground_FieryCrator" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DRFC" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="HumanFireMedium" +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GRrk] +_id="GRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Underground\\Rocks\\UndergoundRock\\UndergoundRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GRst] +_id="GRst" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Underground\\Rocks\\UndergroundStalagmite\\UndergroundStalagmite" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DRST" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSa1] +_id="GSa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\GRockArch45\\GRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSa2] +_id="GSa2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\UndergroundArchway45\\UndergroundArchway45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_GSA2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSah] +_id="GSah" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\UndergroundArchway1\\UndergroundArchway1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_GSAH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSar] +_id="GSar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\GRockArch\\GRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSp0] +_id="GSp0" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\GPorticulisWall0_\\GPorticulisWall0_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DSP0" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[GSp9] +_id="GSp9" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Underground\\Structures\\GPorticulisWall45_\\GPorticulisWall45_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_DSP9" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Fence135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOch] +_id="IOch" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\IcecrownChair\\IcecrownChair" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOCH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOic] +_id="IOic" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\Icecrown_IceChair\\Icecrown_IceChair" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOIC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOob] +_id="IOob" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\IceCrownObelisk\\IceCrownObelisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOpr] +_id="IOpr" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\IceCrownPillar\\IceCrownPillar" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ASPL" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOsl] +_id="IOsl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\SpiderStatue0\\SpiderStatue0" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOSL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Log45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOsm] +_id="IOsm" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\SnowMan\\SnowMan" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOSM" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOss] +_id="IOss" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\SpiderStatue1\\SpiderStatue1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOSS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IOst] +_id="IOst" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Icecrown\\Props\\IceTorch\\IceTorch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IOST" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumBrazierLoop" +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IRcy] +_id="IRcy" +_max_level=9 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Icecrown\\Rocks\\Icecrown_Crystal\\Icecrown_Crystal" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IRCY" +numvar=9 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IRgc] +_id="IRgc" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Icecrown\\Rocks\\Glacier\\Glacier" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IRGC" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\LargeRockSpire.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IRic] +_id="IRic" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Icecrown\\Rocks\\IceBlock\\IceBlock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IRIC" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IRrk] +_id="IRrk" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Icecrown\\Rocks\\Ice_Rock\\Ice_Rock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IRrs] +_id="IRrs" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Icecrown\\Rocks\\Ice_SnowRock\\Ice_SnowRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IRRS" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ISa1] +_id="ISa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Icecrown\\Structures\\IC_IceArch45\\IC_IceArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ISA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ISar] +_id="ISar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Icecrown\\Structures\\IC_IceArch\\IC_IceArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ISAR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ISrb] +_id="ISrb" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Icecrown\\Structures\\Icecrown_Rubble\\Icecrown_Rubble" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NSRB" +numvar=3 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ISs1] +_id="ISs1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Icecrown\\Structures\\Icecrown_StoneArch45\\Icecrown_StoneArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ISS1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArchAngle.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ISsr] +_id="ISsr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Icecrown\\Structures\\Icecrown_StoneArch\\Icecrown_StoneArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ISSR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IWbg] +_id="IWbg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Icecrown\\Water\\BubbleGeyserSteam\\BubbleGeyserSteam" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IWBG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IWie] +_id="IWie" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Icecrown\\Water\\IceEdge\\IceEdge" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IWIE" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="I,N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IWw0] +_id="IWw0" +_max_level=1 +_type="doodad" +animinfog=1 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\IceCrownWaterfall\\IceCrownWaterfall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=0.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IWWF" +numvar=1 +oncliffs=1 +onwater=1 +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="WaterfallLoop" +tilesets="I" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=100.0 +walkable=0 + +[IZft] +_id="IZft" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FrozenThrone\\FrozenThrone" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IZFT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=256.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=0.0 +walkable=0 + +[IZrw] +_id="IZrw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\RisingWaterDoodad\\RisingWaterDoodad" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IZRW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="I" +tilesetspecific=1 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[IZww] +_id="IZww" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\RisingWaterWIDEDoodad\\RisingWaterWIDEDoodad" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_IZWW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="I" +tilesetspecific=1 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JOgr] +_id="JOgr" +_max_level=9 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cinematic\\GlowingRunes\\GlowingRunes" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JOGR" +numvar=9 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Unbuildable.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +soundloop="MagicRunesLoop" +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSar] +_id="JSar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\Archway2_Ruined\\Archway2_Ruined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSAR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSax] +_id="JSax" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\Archway1_Ruined\\Archway1_Ruined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSAX" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSc2] +_id="JSc2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle_Ruined\\City_ColumnSemiCircle_Ruined" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSC2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSc3] +_id="JSc3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle_Ruined\\City_ColumnSemiCircle_Ruined" +fixedrot=90.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSC3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSc4] +_id="JSc4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle_Ruined\\City_ColumnSemiCircle_Ruined" +fixedrot=180.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSC4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSco] +_id="JSco" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.05 +file="Doodads\\Cityscape\\Structures\\City_ColumnSingle1_Ruined\\City_ColumnSingle1_Ruined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.15 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSCO" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JScs] +_id="JScs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle_Ruined\\City_ColumnSemiCircle_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSCS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JScx] +_id="JScx" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.05 +file="Doodads\\Cityscape\\Structures\\City_ColumnSingle2_Ruined\\City_ColumnSingle2_Ruined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.15 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSCX" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSr6] +_id="JSr6" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall135_0_BaseRuin\\CityBuildingSmall135_0_BaseRuin" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSR6" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JSrc] +_id="JSrc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingLarge_0_BaseRuin\\CityBuildingLarge_0_BaseRuin" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JSRC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JZif] +_id="JZif" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\EnergyFieldWall\\EnergyFieldWall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JZIF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=128.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="J" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[JZud] +_id="JZud" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\UndergroundDome\\UndergroundDome" +fixedrot=-1.0 +floats=0 +ignoremodelclick=1 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_JZUD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=256.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=0.0 +walkable=0 + +[KOdr] +_id="KOdr" +_max_level=7 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\BlackCitadel\\Props\\RuneArt\\RuneArt" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_KODR" +numvar=7 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[KOst] +_id="KOst" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\BlackCitadel\\Props\\BlackCitadelStatue\\BlackCitadelStatue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_KOST" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LCc0] +_id="LCc0" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CliffDoodadCave\\CliffDoodadCave" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LCc0" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Cave0base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[LCc2] +_id="LCc2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CliffDoodadCave2\\CliffDoodadCave2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LCc2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Cave2base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[LOam] +_id="LOam" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\ArmorRack\\ArmorRack" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOAM" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOar] +_id="LOar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\ArcheryRange\\ArcheryRange" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOAR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LObr] +_id="LObr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Brazier\\Brazier" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOBR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumBrazierLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LObz] +_id="LObz" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\brazieromni\\brazieromni" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOBZ" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOca] +_id="LOca" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.2 +file="Doodads\\LordaeronSummer\\Props\\CauldronWithHeads\\CauldronWithHeads" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.4 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="CauldronLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOcb] +_id="LOcb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\HayCartbroken\\HayCartbroken" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOce] +_id="LOce" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\CageEmpty\\CageEmpty" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCE" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOch] +_id="LOch" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\HayCart\\HayCart" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOct] +_id="LOct" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\CageTrashed\\CageTrashed" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOCT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOfl] +_id="LOfl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Flies\\Flies" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOFL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +soundloop="FliesLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOgr] +_id="LOgr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Grave\\Grave" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOGR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOh1] +_id="LOh1" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\BannerHuman\\BannerHuman" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOH1" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOhb] +_id="LOhb" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Hay\\Hay" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOHB" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOhc] +_id="LOhc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\HayClump\\HayClump" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOHC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOhp] +_id="LOhp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\HitchingPost\\HitchingPost" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOHP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOic] +_id="LOic" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\ImpaledBody\\ImpaledBody" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOIC" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOlp] +_id="LOlp" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\LanternPost\\LanternPost" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOLP" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOo1] +_id="LOo1" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\BannerOrc\\BannerOrc" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOO1" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOo2] +_id="LOo2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\TutorialOrcBanner\\TutorialOrcBanner" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOO2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOpg] +_id="LOpg" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\PeasantGrave\\PeasantGrave" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOPG" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOrb] +_id="LOrb" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\RibBones\\RibBones" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LORB" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOrc] +_id="LOrc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\RottenHayCart\\RottenHayCart" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LORC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOrh] +_id="LOrh" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\RottenHay\\RottenHay" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LORH" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsc] +_id="LOsc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\SittingCorpse\\SittingCorpse" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsh] +_id="LOsh" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\HeadOnSpear\\HeadOnSpear" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSH" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsk] +_id="LOsk" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\SkullPile\\SkullPile" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSK" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsm] +_id="LOsm" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\SmokeSmudge\\SmokeSmudge" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSM" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsp] +_id="LOsp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\SignPost\\SignPost" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOss] +_id="LOss" +_max_level=6 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\SkullonStick\\SkullonStick" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSS" +numvar=6 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOsw] +_id="LOsw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\RubbleStoneWall\\RubbleStoneWall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOSW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOt1] +_id="LOt1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Trash1\\Trash1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOT1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOth] +_id="LOth" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\TorchHuman\\TorchHuman" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOTH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumHumanTorchLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOtr] +_id="LOtr" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Trough\\Trough" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOTR" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOtz] +_id="LOtz" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\TorchHumanOmni\\TorchHumanOmni" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOTZ" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumHumanTorchLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOwb] +_id="LOwb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\WheelBarrel\\WheelBarrel" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOWB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOwf] +_id="LOwf" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\WallFountainCliff\\WallFountainCliff" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOWF" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x12WallFountain.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOwp] +_id="LOwp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\Weapons\\Weapons" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOWP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOwr] +_id="LOwr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\WheelBarrelBroken\\WheelBarrelBroken" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOWR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LOxx] +_id="LOxx" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Props\\RottenHayCartbroken\\RottenHayCartbroken" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOXX" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPcr] +_id="LPcr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\Corn\\Corn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPCR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPcw] +_id="LPcw" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\CornWheatScorched\\CornWheatScorched" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPCW" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPfp] +_id="LPfp" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\LilyPad\\LilyPad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPFP" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPlp] +_id="LPlp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\LillyPad\\LillyPad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPLP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPrs] +_id="LPrs" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\RiverRushes\\RiverRushes" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPRS" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPwb] +_id="LPwb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\WheatBunch\\WheatBunch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPWB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LPwh] +_id="LPwh" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Plants\\Wheat\\Wheat" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPWH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LRrk] +_id="LRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Rocks\\Lords_Rock\\Lords_Rock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSba] +_id="LSba" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\Barn\\Barn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.05 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSBA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSeb] +_id="LSeb" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\ElvenVillageBuilding\\ElvenVillageBuilding" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSEB" +numvar=2 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSgr] +_id="LSgr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\Granary\\Granary" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.05 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSGR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSgs] +_id="LSgs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\GranaryBurned\\GranaryBurned" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSGS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSin] +_id="LSin" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\Inn\\Inn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSIN" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSr1] +_id="LSr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\LRockArch45\\LRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSR1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSra] +_id="LSra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\LRockArch\\LRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSRA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSrg] +_id="LSrg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\GoblinShipyardRuined\\GoblinShipyardRuined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSRG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,W,F,Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSsb] +_id="LSsb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\BarnScorched\\BarnScorched" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSSB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSsf] +_id="LSsf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\FarmScorched\\FarmScorched" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSSF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSsi] +_id="LSsi" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\InnScorched\\InnScorched" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSSI" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSst] +_id="LSst" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\TowerScorched\\TowerScorched" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSST" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSwb] +_id="LSwb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\WindMillBurned\\WindMillBurned" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSWB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSwl] +_id="LSwl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\well\\well" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.4 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSWL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LSwm] +_id="LSwm" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\LordaeronSummer\\Structures\\WindMill\\WindMill" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LSWM" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="WindMillLoop" +tilesets="L,F,W,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[LWw0] +_id="LWw0" +_max_level=1 +_type="doodad" +animinfog=1 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Waterfall\\Waterfall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=0.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LWWF" +numvar=1 +oncliffs=1 +onwater=1 +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="WaterfallLoop" +tilesets="*" +tilesetspecific=1 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=100.0 +walkable=0 + +[LZth] +_id="LZth" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\ThrallsHut\\ThrallsHut" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LZTH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x12Simple.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="L" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOal] +_id="NOal" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendFenceAngled\\NorthrendFenceAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOAL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Fence45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NObc] +_id="NObc" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendBrokenColumn\\NorthrendBrokenColumn" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOBC" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NObk] +_id="NObk" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendBrokenObilisk\\NorthrendBrokenObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOBK" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NObo] +_id="NObo" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\North_Bones\\North_Bones" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BOBO" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Unbuildable.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NObt] +_id="NObt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\Bats\\Bats" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOBT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOfg] +_id="NOfg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\FirePitPig\\FirePitPig" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOFG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +soundloop="LordSumHumanTorchLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOfl] +_id="NOfl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendFenceStraight\\NorthrendFenceStraight" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOFL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOfp] +_id="NOfp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\FirePit\\FirePit" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOFP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +soundloop="LordSumHumanTorchLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOft] +_id="NOft" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\FirePitTrashed\\FirePitTrashed" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOFT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOgv] +_id="NOgv" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendGrave\\NorthrendGrave" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOGV" +numvar=1 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOok] +_id="NOok" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendObilisk\\NorthrendObilisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NOtb] +_id="NOtb" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Northrend\\Props\\NorthrendTombstone\\NorthrendTombstone" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOTB" +numvar=3 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NPth] +_id="NPth" +_max_level=7 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Northrend\\Plants\\North_Thorns\\North_Thorns" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APTV" +numvar=7 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NRfs] +_id="NRfs" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Northrend\\Rocks\\NorthrendFissure\\NorthrendFissure" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRFS" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NRic] +_id="NRic" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Northrend\\Rocks\\North_IceClaw\\North_IceClaw" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRIC" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NRrk] +_id="NRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Northrend\\Rocks\\North_Rocks\\North_Rocks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NRwr] +_id="NRwr" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Northrend\\Rocks\\North_WebRocks\\North_WebRocks" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRWR" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,G" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NSct] +_id="NSct" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Northrend\\Structures\\NorthrendCrypt\\NorthrendCrypt" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.1 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NSCT" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NSr1] +_id="NSr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Northrend\\Structures\\NRockArch45\\NRockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NSra] +_id="NSra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Northrend\\Structures\\NRockArch\\NRockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NSrb] +_id="NSrb" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Northrend\\Structures\\NorthrendRubble\\NorthrendRubble" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NSRB" +numvar=3 +oncliffs=0 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="N" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWf1] +_id="NWf1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_IceFloe\\North_IceFloe" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[NWf2] +_id="NWf2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_IceFloe2\\North_IceFloe2" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[NWf3] +_id="NWf3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_IceFloe3\\North_IceFloe3" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[NWf4] +_id="NWf4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_IceFloe4\\North_IceFloe4" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWF1" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[NWfb] +_id="NWfb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\FloatingBox\\FloatingBox" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOFB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWfp] +_id="NWfp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\FloatingPlank\\FloatingPlank" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWFP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWi1] +_id="NWi1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_Iceberg\\North_Iceberg" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWI1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWi2] +_id="NWi2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_Iceberg2\\North_Iceberg2" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWI1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWi3] +_id="NWi3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_Iceberg3\\North_Iceberg3" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWI1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWi4] +_id="NWi4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\North_Iceberg4\\North_Iceberg4" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWI1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="N,I" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWpa] +_id="NWpa" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\FloatingPanel\\FloatingPanel" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWPA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWrd] +_id="NWrd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\RowboatDestroyed\\RowboatDestroyed" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NORD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWrw] +_id="NWrw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\Rowboat\\Rowboat" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=10.0 +maxroll=5.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NORW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWsd] +_id="NWsd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\BattleshipDestroyed\\BattleshipDestroyed" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOSD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWsp] +_id="NWsp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\Battleship\\Battleship" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NOSP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="BattleshipLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[NWwh] +_id="NWwh" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Northrend\\Water\\Whale\\Whale" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NWWH" +numvar=1 +oncliffs=0 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="L,F,W,N" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOal] +_id="OOal" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Altar\\Altar" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOAL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOgr] +_id="OOgr" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Grate\\Grate" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOGR" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOob] +_id="OOob" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Obstacle\\Obstacle" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOOB" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOsd] +_id="OOsd" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Standard\\Standard" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOSD" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=64.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOsk] +_id="OOsk" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Skull\\Skull" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOSK" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OOst] +_id="OOst" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Outland\\Props\\Stake\\Stake" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OOST" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OPop] +_id="OPop" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Outland\\Plants\\Outland_Plant\\Outland_Plant" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OPOP" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ORfk] +_id="ORfk" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Cinematic\\Outland_FloatingChunks\\Outland_FloatingChunks" +fixedrot=270.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ORFK" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Unflyable.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ORmk] +_id="ORmk" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Outland\\Rocks\\Outland_MagmaRock\\Outland_MagmaRock" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ORMK" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ORrk] +_id="ORrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Outland\\Rocks\\Outland_Rock\\Outland_Rock" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ORrr] +_id="ORrr" +_max_level=6 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Outland\\Rocks\\RubbleRock\\RubbleRock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ORRR" +numvar=6 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ORrs] +_id="ORrs" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Outland\\Rocks\\Outland_Spires\\Outland_Spires" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRRS" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\LargeRockSpire.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OSa1] +_id="OSa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Outland\\Structures\\Outland_RockArch45\\Outland_RockArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OSar] +_id="OSar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Outland\\Structures\\Outland_RockArch\\Outland_RockArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OSAR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OZfc] +_id="OZfc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\Outland_FloatingChunksCluster\\Outland_FloatingChunksCluster" +fixedrot=270.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ORFC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[OZsp] +_id="OZsp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\ShimmeringPortal\\ShimmeringPortal" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_OZSP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="O,K" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[VOal] +_id="VOal" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Village\\Props\\Village_FencelongAngled\\Village_FencelongAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_VOAL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Fence135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[VOas] +_id="VOas" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Village\\Props\\Village_FenceshortAngled\\Village_FenceshortAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_VOAS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ShortFence135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[VOfl] +_id="VOfl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Village\\Props\\Village_Fencelong\\Village_Fencelong" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_VOFL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[VOfs] +_id="VOfs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Village\\Props\\Village_Fenceshort\\Village_Fenceshort" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=1.2 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_VOFS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[VSvb] +_id="VSvb" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Village\\Structures\\VillageBuilding\\VillageBuilding" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_VSVB" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=256.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="V,Q,L,F,W,X,Y,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[XOcl] +_id="XOcl" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CrystalLamp\\CrystalLamp" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOCL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="CrystalLampLoop" +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[XOcs] +_id="XOcs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CrystalShield\\CrystalShield" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOCS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=192.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="CrystalShieldLoop" +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[XOmr] +_id="XOmr" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\MagicRunes\\MagicRunes" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_XOMR" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Unbuildable.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +soundloop="MagicRunesLoop" +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YCc1] +_id="YCc1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCave1\\CityCliffDoodadCave1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCC1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff1base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCc2] +_id="YCc2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCave2\\CityCliffDoodadCave2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCC2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff2base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCc3] +_id="YCc3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCave3\\CityCliffDoodadCave3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCC3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff3base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCc4] +_id="YCc4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCave4\\CityCliffDoodadCave4" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCC4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff4base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCd1] +_id="YCd1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapse0\\CityCliffDoodadCollapse0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCD1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCd2] +_id="YCd2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapse1\\CityCliffDoodadCollapse1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCD2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCd3] +_id="YCd3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapse2\\CityCliffDoodadCollapse2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCD3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCd4] +_id="YCd4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapse3\\CityCliffDoodadCollapse3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCD4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCg1] +_id="YCg1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlide0\\RoughCliffDoodadSlide0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCG1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCg2] +_id="YCg2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlide1\\RoughCliffDoodadSlide1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCG2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCg3] +_id="YCg3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlide2\\RoughCliffDoodadSlide2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCG3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCg4] +_id="YCg4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlide3\\RoughCliffDoodadSlide3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCG4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCl1] +_id="YCl1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapseShort0\\RoughCliffDoodadCollapseShort0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCL1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCl2] +_id="YCl2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapseShort1\\RoughCliffDoodadCollapseShort1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCL2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCl3] +_id="YCl3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapseShort2\\RoughCliffDoodadCollapseShort2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCL3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCl4] +_id="YCl4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapseShort3\\RoughCliffDoodadCollapseShort3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCL4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCo1] +_id="YCo1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlideShort0\\CityCliffDoodadSlideShort0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCO1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCo2] +_id="YCo2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlideShort1\\CityCliffDoodadSlideShort1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCO2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCo3] +_id="YCo3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlideShort2\\CityCliffDoodadSlideShort2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCO3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCo4] +_id="YCo4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlideShort3\\CityCliffDoodadSlideShort3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCO4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCp1] +_id="YCp1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapse0\\RoughCliffDoodadCollapse0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCP1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCp2] +_id="YCp2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapse1\\RoughCliffDoodadCollapse1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCP2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCp3] +_id="YCp3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapse2\\RoughCliffDoodadCollapse2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCP3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCp4] +_id="YCp4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadCollapse3\\RoughCliffDoodadCollapse3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCP4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCr1] +_id="YCr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\NewRoughCliffDoodadCave1\\NewRoughCliffDoodadCave1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCR1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff1base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCr2] +_id="YCr2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\NewRoughCliffDoodadCave2\\NewRoughCliffDoodadCave2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCR2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff2base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCr3] +_id="YCr3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\NewRoughCliffDoodadCave3\\NewRoughCliffDoodadCave3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCR3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff3base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCr4] +_id="YCr4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\NewRoughCliffDoodadCave4\\NewRoughCliffDoodadCave4" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCR4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CaveCityCliff4base.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCs1] +_id="YCs1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlide0\\CityCliffDoodadSlide0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCS1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCs2] +_id="YCs2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlide1\\CityCliffDoodadSlide1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCS2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCs3] +_id="YCs3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlide2\\CityCliffDoodadSlide2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCS3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCs4] +_id="YCs4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadSlide3\\CityCliffDoodadSlide3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCS4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3Path.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCt1] +_id="YCt1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapseShort0\\CityCliffDoodadCollapseShort0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCT1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCt2] +_id="YCt2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapseShort1\\CityCliffDoodadCollapseShort1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCT2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCt3] +_id="YCt3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapseShort2\\CityCliffDoodadCollapseShort2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCT3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCt4] +_id="YCt4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\CityCliffDoodadCollapseShort3\\CityCliffDoodadCollapseShort3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCT4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,Z,I,O,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCu1] +_id="YCu1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlideShort0\\RoughCliffDoodadSlideShort0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCU1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse0ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCu2] +_id="YCu2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlideShort1\\RoughCliffDoodadSlideShort1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCU2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse1ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCu3] +_id="YCu3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlideShort2\\RoughCliffDoodadSlideShort2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCU3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse2ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCu4] +_id="YCu4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\RoughCliffDoodadSlideShort3\\RoughCliffDoodadSlideShort3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCU4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CliffCollapse3ShortPath.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx1] +_id="YCx1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor2x2_0\\Ruinedfloor2x2_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx2] +_id="YCx2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor2x2_1\\Ruinedfloor2x2_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx3] +_id="YCx3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor2x2_2\\Ruinedfloor2x2_2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx4] +_id="YCx4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor2x2_3\\Ruinedfloor2x2_3" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx5] +_id="YCx5" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor4x4_0\\Ruinedfloor4x4_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\16x16UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx6] +_id="YCx6" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor4x4_1\\Ruinedfloor4x4_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\16x16UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx7] +_id="YCx7" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor4x2_0\\Ruinedfloor4x2_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\16x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YCx8] +_id="YCx8" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="C" +defscale=1.0 +file="Doodads\\Terrain\\CliffDoodad\\Ruinedfloor4x2_1\\Ruinedfloor4x2_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YCX3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\16x8UnbuildableHeightA.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=1 + +[YObb] +_id="YObb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\Banner_Long\\Banner_Long" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=0.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOBB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="Y" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YObg] +_id="YObg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\TavernSignBobsGuns\\TavernSignBobsGuns" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOBG" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YObs] +_id="YObs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CityStoneBench\\CityStoneBench" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOBS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YObw] +_id="YObw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CityWoodBench\\CityWoodBench" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOBW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOcp] +_id="YOcp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\CameraProp\\CameraProp" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOCP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOec] +_id="YOec" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\EmptyCrates\\EmptyCrates" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOEC" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOf1] +_id="YOf1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FireTrapSide\\FireTrapSide" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOF1" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOf2] +_id="YOf2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FireTrapUp\\FireTrapUp" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOF2" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOf3] +_id="YOf3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FirePillarMedium\\FirePillarMedium" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOF3" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +soundloop="HumanFireSmall" +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOfb] +_id="YOfb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\TownBurningFireEmitterBlue\\TownBurningFireEmitterBlue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOFB" +numvar=1 +oncliffs=1 +onwater=1 +selsize=128.0 +shadow=0 +showinfog=0 +showinmm=0 +soundloop="HumanFireMedium" +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOfn] +_id="YOfn" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Cityscape\\Props\\City_Fountain\\City_Fountain" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOFN" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="FountainLoop" +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOfr] +_id="YOfr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Cityscape\\Props\\FountainRuined\\FountainRuined" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOFR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOfs] +_id="YOfs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FireRockSmall\\FireRockSmall" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOFS" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +soundloop="HumanFireSmall" +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOgr] +_id="YOgr" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CityGrave\\CityGrave" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOGR" +numvar=4 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOks] +_id="YOks" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\KnightStatueA\\KnightStatueA" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOKS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOlb] +_id="YOlb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\Lightningbolt\\Lightningbolt" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOLB" +numvar=1 +oncliffs=1 +onwater=1 +selsize=64.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOlp] +_id="YOlp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\LanternPost\\LanternPost" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LOLP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOob] +_id="YOob" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\City_Oblisk\\City_Oblisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOOB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=128.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOr1] +_id="YOr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FrostTrapSide\\FrostTrapSide" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOR1" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOr2] +_id="YOr2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\FrostTrapUp\\FrostTrapUp" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOR2" +numvar=1 +oncliffs=1 +onwater=1 +selsize=96.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOsa] +_id="YOsa" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CityStoneBenchAngled\\CityStoneBenchAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOSA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOst] +_id="YOst" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\City_Statue\\City_Statue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOST" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOsw] +_id="YOsw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=0.9 +file="Doodads\\Cinematic\\SunWell\\SunWell" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOSW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=256.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="FountainLoop" +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOta] +_id="YOta" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.4 +file="Doodads\\Cityscape\\Props\\TavernSignTraceysArmory\\TavernSignTraceysArmory" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOTA" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOtf] +_id="YOtf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\TownBurningFireEmitter\\TownBurningFireEmitter" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOTF" +numvar=1 +oncliffs=1 +onwater=1 +selsize=128.0 +shadow=0 +showinfog=0 +showinmm=0 +soundloop="HumanFireMedium" +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOth] +_id="YOth" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\Throne\\Throne" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOTH" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,D,G,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOts] +_id="YOts" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\TavernSign\\TavernSign" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOTS" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOwa] +_id="YOwa" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\CityWoodBenchAngled\\CityWoodBenchAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOWA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOwb] +_id="YOwb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Cityscape\\Props\\Banner_Long2\\Banner_Long2" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.5 +minscale=0.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOWB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="Y" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YOws] +_id="YOws" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Cityscape\\Props\\WhaleStatue\\WhaleStatue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YOWS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YPbs] +_id="YPbs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Cityscape\\Plants\\CityBush\\CityBush" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YPBS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YPfa] +_id="YPfa" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Cityscape\\Plants\\FlowerBedAngled\\FlowerBedAngled" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YPFA" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\ShortFence135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YPfs] +_id="YPfs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Cityscape\\Plants\\FlowerBedStraight\\FlowerBedStraight" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YPFS" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YPpp] +_id="YPpp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Cityscape\\Plants\\PottedPlant\\PottedPlant" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YPPP" +numvar=1 +oncliffs=1 +onwater=0 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS00] +_id="YS00" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall45_0\\CityBuildingSmall45_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS00" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS01] +_id="YS01" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall45_1\\CityBuildingSmall45_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS01" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS02] +_id="YS02" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall45_2\\CityBuildingSmall45_2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS02" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS03] +_id="YS03" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall90_0\\CityBuildingSmall90_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS03" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS04] +_id="YS04" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall90_1\\CityBuildingSmall90_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS04" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS05] +_id="YS05" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall90_2\\CityBuildingSmall90_2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS05" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS06] +_id="YS06" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall135_0\\CityBuildingSmall135_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS06" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS07] +_id="YS07" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall135_1\\CityBuildingSmall135_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS07" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS08] +_id="YS08" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall135_2\\CityBuildingSmall135_2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS08" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS09] +_id="YS09" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall0_0\\CityBuildingSmall0_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS09" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS10] +_id="YS10" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall0_1\\CityBuildingSmall0_1" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS10" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS11] +_id="YS11" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingSmall0_2\\CityBuildingSmall0_2" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS11" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS12] +_id="YS12" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingLarge_0\\CityBuildingLarge_0" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS12" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_0.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS13] +_id="YS13" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingLarge_45\\CityBuildingLarge_45" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS13" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS14] +_id="YS14" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingLarge_90\\CityBuildingLarge_90" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS14" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_90.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YS15] +_id="YS15" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Buildings\\Other\\CityBuildingLarge_135\\CityBuildingLarge_135" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YS15" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSa1] +_id="YSa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\Archway45\\Archway45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSaw] +_id="YSaw" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\Archway1\\Archway1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSc2] +_id="YSc2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle\\City_ColumnSemiCircle" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSC2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSc3] +_id="YSc3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle\\City_ColumnSemiCircle" +fixedrot=90.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSC3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSc4] +_id="YSc4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle\\City_ColumnSemiCircle" +fixedrot=180.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSC4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSc5] +_id="YSc5" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnDouble45\\City_ColumnDouble45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSC5" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\DoubleColumn45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSca] +_id="YSca" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.2 +file="Doodads\\Cityscape\\Structures\\Cathedral\\Cathedral" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.3 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSCA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Cathedral.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="CathedralLoop" +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YScd] +_id="YScd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnDouble\\City_ColumnDouble" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSCD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\22x4DoubleColumn.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSco] +_id="YSco" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.05 +file="Doodads\\Cityscape\\Structures\\City_ColumnSingle\\City_ColumnSingle" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.15 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSCO" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YScr] +_id="YScr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.2 +file="Doodads\\Cityscape\\Structures\\CathedralRuined\\CathedralRuined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.3 +minscale=1.1 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSCR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\Cathedral.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YScs] +_id="YScs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.095 +file="Doodads\\Cityscape\\Structures\\City_ColumnSemiCircle\\City_ColumnSemiCircle" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.095 +minscale=1.095 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSCS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\ColumnSemiCircle3.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSll] +_id="YSll" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\City_LowWall_TallEndCapWithLantern\\City_LowWall_TallEndCapWithLantern" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSLL" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSls] +_id="YSls" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\City_LowWall_ShortEndCap\\City_LowWall_ShortEndCap" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSLS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSlt] +_id="YSlt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\City_LowWall_TallEndCap\\City_LowWall_TallEndCap" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSLT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSlx] +_id="YSlx" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\City_LowWall_TallEndCapWithoutLantern\\City_LowWall_TallEndCapWithoutLantern" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSLX" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr0] +_id="YSr0" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall45_0_Ruined\\CityBuildingSmall45_0_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR0" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr1] +_id="YSr1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall45_1_Ruined\\CityBuildingSmall45_1_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr2] +_id="YSr2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall45_2_Ruined\\CityBuildingSmall45_2_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding0-2.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr3] +_id="YSr3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall90_0_Ruined\\CityBuildingSmall90_0_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr4] +_id="YSr4" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall90_1_Ruined\\CityBuildingSmall90_1_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR4" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr5] +_id="YSr5" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall90_2_Ruined\\CityBuildingSmall90_2_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR5" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding3-5.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr6] +_id="YSr6" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall135_0_Ruined\\CityBuildingSmall135_0_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR6" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr7] +_id="YSr7" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall135_1_Ruined\\CityBuildingSmall135_1_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR7" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr8] +_id="YSr8" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall135_2_Ruined\\CityBuildingSmall135_2_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR8" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding6-8.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSr9] +_id="YSr9" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall0_0_Ruined\\CityBuildingSmall0_0_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSR9" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSra] +_id="YSra" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall0_1_Ruined\\CityBuildingSmall0_1_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSrb] +_id="YSrb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingSmall0_2_Ruined\\CityBuildingSmall0_2_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuilding9-11.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSrc] +_id="YSrc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingLarge_0_Ruined\\CityBuildingLarge_0_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_0.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSrd] +_id="YSrd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingLarge_45_Ruined\\CityBuildingLarge_45_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_135.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSre] +_id="YSre" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingLarge_90_Ruined\\CityBuildingLarge_90_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRE" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_90.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSrf] +_id="YSrf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityBuildingLarge_135_Ruined\\CityBuildingLarge_135_Ruined" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSRF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityBuildingLarge_45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSta] +_id="YSta" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=0.9 +file="Doodads\\Cityscape\\Structures\\Tavern\\Tavern" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSTA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x8Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="TavernLoop" +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSw0] +_id="YSw0" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityLowWall0\\CityLowWall0" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSW0" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSw1] +_id="YSw1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityLowWall45\\CityLowWall45" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSW1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4diag0.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSw2] +_id="YSw2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityLowWall90\\CityLowWall90" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSW2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YSw3] +_id="YSw3" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=1.0 +file="Doodads\\Cityscape\\Structures\\CityLowWall135\\CityLowWall135" +fixedrot=0.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSW3" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Diag1.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Y,X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[YZef] +_id="YZef" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\EnergyField\\EnergyField" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YZEF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=512.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZCv1] +_id="ZCv1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Terrain\\CityCliffVines0\\CityCliffVines0" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCV1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZCv2] +_id="ZCv2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Terrain\\CityCliffVines1\\CityCliffVines1" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZCV1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOba] +_id="ZOba" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\RuinsBloodyAltar\\RuinsBloodyAltar" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOBA" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZObz] +_id="ZObz" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\Brazier\\Brazier" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOBR" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumBrazierLoop" +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOd2] +_id="ZOd2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinTower2\\DalaranRuinTower2" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZODT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOdt] +_id="ZOdt" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinTower\\DalaranRuinTower" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZODT" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOfo] +_id="ZOfo" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\RuinFountain\\RuinFountain" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOFO" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +soundloop="FountainLoop" +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOfp] +_id="ZOfp" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\Firepot\\Firepot" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOFP" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +soundloop="LordSumBrazierLoop" +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOls] +_id="ZOls" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\LibraryShelf\\LibraryShelf" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOLS" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOob] +_id="ZOob" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\RuinsObelisk\\RuinsObelisk" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOOB" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOrb] +_id="ZOrb" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinTowerBase\\DalaranRuinTowerBase" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZORB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOrc] +_id="ZOrc" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinCrystals\\DalaranRuinCrystals" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZORC" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOrp] +_id="ZOrp" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\RuinsPillar\\RuinsPillar" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZORP" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=80.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOrt] +_id="ZOrt" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\RuinsRuinedThrone\\RuinsRuinedThrone" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZORT" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOsb] +_id="ZOsb" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Ruins\\Props\\StatueBroken\\StatueBroken" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOSB" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOsh] +_id="ZOsh" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Props\\Ruins_Shells\\Ruins_Shells" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOSH" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOss] +_id="ZOss" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\Stone\\Stone" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOSS" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOst] +_id="ZOst" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.95 +file="Doodads\\Ruins\\Props\\Statue\\Statue" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.9 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOST" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOt2] +_id="ZOt2" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinTwoBases2\\DalaranRuinTwoBases2" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOTB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOtb] +_id="ZOtb" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranRuinTwoBases\\DalaranRuinTwoBases" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOTB" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOtr] +_id="ZOtr" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=1.0 +file="Doodads\\Ruins\\Props\\RuinsTrash\\RuinsTrash" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOTR" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZOvr] +_id="ZOvr" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="O" +defscale=0.9 +file="Doodads\\Ruins\\Props\\DalaranVioletCitadelRuin\\DalaranVioletCitadelRuin" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZOVR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x12Default.tga" +selsize=128.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="X,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPfw] +_id="ZPfw" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\Ruins_Flower\\Ruins_Flower" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZPFW" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z,L,F,A,C,X,J,Y,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPlp] +_id="ZPlp" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\Ruins_Lilypad\\Ruins_Lilypad" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_LPLP" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPms] +_id="ZPms" +_max_level=6 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\Ruins_Shroom\\Ruins_Shroom" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APMS" +numvar=6 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPru] +_id="ZPru" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\Ruins_Rush\\Ruins_Rush" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_APCT" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPsh] +_id="ZPsh" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\Ruins_Shrub\\Ruins_Shrub" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZPSH" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z,L,F,A,C,X,J,Y,V,Q" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPtw] +_id="ZPtw" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\RuinsTreeDoodad\\RuinsTreeDoodad" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZPTW" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZPvp] +_id="ZPvp" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Plants\\VinyPlant\\VinyPlant" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZPVP" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\2x2Default.tga" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZRbd] +_id="ZRbd" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Rocks\\CliffRubble_Double\\CliffRubble_Double" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZRBD" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\12x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZRbs] +_id="ZRbs" +_max_level=4 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Rocks\\CliffRubble_Single\\CliffRubble_Single" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZRBS" +numvar=4 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZRrk] +_id="ZRrk" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Rocks\\Ruins_Rock\\Ruins_Rock" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_NRRK" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZRrs] +_id="ZRrs" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=1.0 +file="Doodads\\Ruins\\Rocks\\Ruins_Spires\\Ruins_Spires" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRRS" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\LargeRockSpire.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZRsp] +_id="ZRsp" +_max_level=8 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="E" +defscale=0.36 +file="Doodads\\Ruins\\Rocks\\Ruins_Spires\\Ruins_Spires" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_BRSP" +numvar=8 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\4x4Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=0.0 +walkable=0 + +[ZSa1] +_id="ZSa1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\SRuinArch45\\SRuinArch45" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZSA1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSab] +_id="ZSab" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\RuinsArchwayBroken00\\RuinsArchwayBroken00" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZSAB" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSar] +_id="ZSar" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\SRuinArch\\SRuinArch" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZSAR" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSas] +_id="ZSas" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\RuinsArchway0_\\RuinsArchway0_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSAW" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSb1] +_id="ZSb1" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\RuinsArchwayBroken450\\RuinsArchwayBroken450" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZSB1" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSrb] +_id="ZSrb" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="S" +defscale=0.9 +file="Doodads\\Ruins\\Structures\\RuinsBuilding\\RuinsBuilding" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZSRB" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\6x8Default.tga" +selsize=288.0 +shadow=1 +showinfog=1 +showinmm=1 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZSs1] +_id="ZSs1" +_max_level=3 +_type="doodad" +animinfog=0 +canplacerandscale=0 +category="S" +defscale=1.0 +file="Doodads\\Ruins\\Structures\\RuinsArchway45_\\RuinsArchway45_" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_YSA1" +numvar=3 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\CityArch45.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWbg] +_id="ZWbg" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ruins\\Water\\BubbleGeyser\\BubbleGeyser" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZWBG" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=64.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWca] +_id="ZWca" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ruins\\Water\\CoralArch\\CoralArch" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZWCA" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\18x12Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWcl] +_id="ZWcl" +_max_level=10 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ruins\\Water\\Coral\\Coral" +fixedrot=270.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZWCL" +numvar=10 +oncliffs=1 +onwater=1 +pathtex="PathTextures\\8x6Default.tga" +selsize=0.0 +shadow=1 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWfs] +_id="ZWfs" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ruins\\Water\\FishTropical\\FishTropical" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_AOF2" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWsf] +_id="ZWsf" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.0 +file="Doodads\\Ruins\\Water\\FishSchool\\FishSchool" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.2 +minscale=0.8 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZWSF" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZWsw] +_id="ZWsw" +_max_level=5 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="W" +defscale=1.75 +file="Doodads\\Ruins\\Water\\Seaweed0\\Seaweed0" +fixedrot=-1.0 +floats=1 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=1.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZWSW" +numvar=5 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="A,B,L,F,W,Y,X,V,Q,N,Z,J" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZZcd] +_id="ZZcd" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\CavernDust\\CavernDust" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZCD" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="Z,D,G" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZZdt] +_id="ZZdt" +_max_level=2 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\DemonFootPrint\\DemonFootPrint" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZDT" +numvar=2 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=64.0 +shadow=0 +showinfog=0 +showinmm=0 +tilesets="*" +tilesetspecific=0 +useclickhelper=1 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZZgr] +_id="ZZgr" +_max_level=6 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\RunesOfGuldan\\RunesOfGuldan" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=2.0 +minscale=0.5 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZGR" +numvar=6 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 + +[ZZys] +_id="ZZys" +_max_level=1 +_type="doodad" +animinfog=0 +canplacerandscale=1 +category="Z" +defscale=1.0 +file="Doodads\\Cinematic\\EyeOfSargeras\\EyeOfSargeras" +fixedrot=-1.0 +floats=0 +ignoremodelclick=0 +maxpitch=0.0 +maxroll=0.0 +maxscale=1.0 +minscale=1.0 +mmblue=0 +mmgreen=0 +mmred=0 +name="WESTRING_DOOD_ZZYS" +numvar=1 +oncliffs=1 +onwater=1 +pathtex="none" +selsize=0.0 +shadow=0 +showinfog=1 +showinmm=0 +tilesets="Z" +tilesetspecific=0 +useclickhelper=0 +usemmcolor=0 +userlist=0 +vertb={255,255,255,255,255,255,255,255,255,255} +vertg={255,255,255,255,255,255,255,255,255,255} +vertr={255,255,255,255,255,255,255,255,255,255} +visradius=50.0 +walkable=0 diff --git a/plugin/w3x2lni/script/prebuilt/default/item.ini b/plugin/w3x2lni/script/prebuilt/default/item.ini new file mode 100644 index 0000000..b9dac75 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/item.ini @@ -0,0 +1,11324 @@ +[afac] +_id="afac" +_type="item" +abillist="AIar" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAlleriaFlute.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AEar" +description="增加附近导弹攻击型单位的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="阿利亚之笛" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=46 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买阿利亚之笛" +ubertip="增加附近远程攻击型单位 %的攻击力。|n不能和强击光环同时使用。" +usable=0 +uses=0 + +[ajen] +_id="ajen" +_type="item" +abillist="AIae" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNJanggo.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOae" +description="增加附近单位的移动速度和攻击速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="古之忍耐姜歌" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=118 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买古之忍耐姜歌" +ubertip="增加英雄和附近单位的攻击速度和移动速度。|n不能和耐久光环同时使用。" +usable=0 +uses=0 + +[amrc] +_id="amrc" +_type="item" +abillist="AIrt" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAmulet.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrt" +description="能将单位传送到使用者身边。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="召唤护身符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买召唤护身符(|cffffcc00R|r)" +ubertip="将目标区域内个玩家的单位传送到英雄的旁边。" +usable=1 +uses=1 + +[anfg] +_id="anfg" +_type="item" +abillist="AIi1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClayFigurine.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIi1" +description="增加英雄1点的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="远古雕像" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=11 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买远古雕像" +ubertip="增加英雄1点的智力。" +usable=0 +uses=0 + +[ankh] +_id="ankh" +_type="item" +abillist="AIrc" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAnkh.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrc" +description="能让携带者重生。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=800 +hotkey="A" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="重生十字章" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=142 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买重生十字章(|cffffcc00A|r)" +ubertip="在英雄死后自动让其复活,并让其拥有点的生命值。" +usable=0 +uses=1 + +[arsc] +_id="arsc" +_type="item" +abillist="AIdb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBansheeAdept.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIdb" +description="恢复生命值,魔法值,并能提高周围单位的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="神秘卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买神秘卷轴(|cffffcc00A|r)" +ubertip="一种强大的卷轴。能恢复点的生命值,点的魔法值。并能增加周围单位点的护甲。" +usable=1 +uses=1 + +[arsh] +_id="arsh" +_type="item" +abillist="AId5,AIdd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNArcaniteArmor.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Adef" +description="一种发着闪亮光芒的护盾,由芒硝钾制成。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3500 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="芒硝护盾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买芒硝护盾(|cffffcc00A|r)" +ubertip="减少%受到的远程攻击伤害。并增加英雄点的护甲。" +usable=0 +uses=0 + +[asbl] +_id="asbl" +_type="item" +abillist="AIsz,AItj" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDaggerOfEscape.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aspo" +description="能增加攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=2000 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="刺客佩刀" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买刺客佩刀(|cffffcc00A|r)" +ubertip="当携带的时候,提高英雄点的攻击力。英雄的攻击在一定的时间内也能对敌人造成持续性的伤害,每秒点。还能减慢敌人的移动和攻击速度。" +usable=0 +uses=0 + +[axas] +_id="axas" +_type="item" +abillist="AIsh,AIae" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWitchDoctorMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOsf" +description="|cffff8c00宝物|r|n在这个美妙的权杖上刻着许多的名字。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3000 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="先祖权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买先祖权杖(|cffffcc00A|r)" +ubertip="|cffff8c00神器|r|n召唤出个巨魔狂暴战士来为你战斗。并且使得英雄和其周围的单位加快攻击和移动速度。|n|cffffcc00历史|r|n|cffffdead巫医几代人的名字都被刻在了这个做工精细的权杖上。持有这个权杖的人能在危急的时刻求助于来自他们的伟大魔法力量。|r" +usable=1 +uses=0 + +[azhr] +_id="azhr" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHeartOfAszune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="埃苏尼之心。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="埃苏尼之心" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买埃苏尼之心" +ubertip="传说被囚禁的埃苏尼灵魂一直在寻找着她的这颗心。" +usable=0 +uses=0 + +[belv] +_id="belv" +_type="item" +abillist="AIa6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBoots.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa6" +description="能提高英雄敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="E" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="奎尔萨拉斯之靴 +6" +oldlevel=8 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=78 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买奎尔萨拉斯之靴(|cffffcc00E|r)" +ubertip="能增加英雄6点的敏捷度。" +usable=0 +uses=0 + +[bfhr] +_id="bfhr" +_type="item" +abillist="AIaz" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPhilosophersStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIab" +description="|cff8b00ff特有的|r|n血羽的心。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=2500 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="血羽之心" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买血羽之心(|cffffcc00B|r)" +ubertip="|cff8b00ff特有的|r|n当携带的时候增加英雄点的敏捷度。" +usable=0 +uses=0 + +[bgst] +_id="bgst" +_type="item" +abillist="AIs6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBelt.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs6" +description="增加力量属性。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="B" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="巨人力量腰带+6" +oldlevel=8 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=106 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买巨人力量腰带(|cffffcc00B|r)" +ubertip="能增加英雄6点的力量。" +usable=0 +uses=0 + +[blba] +_id="blba" +_type="item" +abillist="AId7,AIad" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNArmorGolem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHad" +description="提高护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3500 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="剑刃护甲" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买剑刃护甲(|cffffcc00A|r)" +ubertip="提高周围单位点的防御。增加英雄点的护甲。" +usable=0 +uses=0 + +[brac] +_id="brac" +_type="item" +abillist="AIsr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRunedBracers.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsr" +description="削弱英雄受到的魔法攻击。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="R" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="神秘腰带" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=114 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买神秘腰带(|cffffcc00R|r)" +ubertip="减少%英雄受到的魔法伤害。" +usable=0 +uses=0 + +[brag] +_id="brag" +_type="item" +abillist="AIa1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingPurple.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa1" +description="增加英雄1点的敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="敏捷腰带" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=20 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买敏捷腰带" +ubertip="增加英雄1点的敏捷度。" +usable=0 +uses=0 + +[bspd] +_id="bspd" +_type="item" +abillist="AIms" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBootsOfSpeed.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIms" +description="能增加移动速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="S" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="速度之靴" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=41 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买速度之靴(|cffffcc00S|r)" +ubertip="能增加英雄的移动速度。" +usable=0 +uses=0 + +[btst] +_id="btst" +_type="item" +abillist="AIfx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcBattleStandard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="萨尔的战斗标准" +drop=1 +droppable=1 +file="Objects\\InventoryItems\\BattleStandard\\BattleStandard.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="战斗标准" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买战斗标准" +ubertip="萨尔兽族氏族的战斗标准,骄傲地带上它吧。" +usable=0 +uses=0 + +[bzbe] +_id="bzbe" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNVialEmpty.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是一个空瓶。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="空瓶" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买空瓶" +ubertip="能盛放生命之泉泉水的一个魔法容器。" +usable=0 +uses=0 + +[bzbf] +_id="bzbf" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNVialFull.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这个瓶子内盛满了泉水。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="盛满泉水的瓶子" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买盛满泉水的瓶子" +ubertip="能盛放生命之泉泉水的一个魔法容器。" +usable=0 +uses=0 + +[ccmd] +_id="ccmd" +_type="item" +abillist="AIco" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScepterOfMastery.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIco" +description="能控制敌方的非英雄单位。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hotkey="C" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="统治权杖 " +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=143 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买统治权杖(|cffffcc00C|r)" +ubertip="能将敌方非英雄单位占为己有。这种控制权的改变而且是永久性的。|n不能被用在英雄和级别高于的中立单位上。|n可使用次。" +usable=1 +uses=3 + +[ches] +_id="ches" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCheese.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是奶酪!" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="奶酪" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买奶酪" +ubertip="这只是奶酪而已!" +usable=0 +uses=0 + +[ciri] +_id="ciri" +_type="item" +abillist="AIi6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRobeOfTheMagi.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIi6" +description="能提高智力属性。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="R" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="法师长袍 +6" +oldlevel=8 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=43 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买法师长袍(|cffffcc00R|r)" +ubertip="增加英雄6点的智力。" +usable=0 +uses=0 + +[ckng] +_id="ckng" +_type="item" +abillist="AIx5" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHelmutPurple.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIx5" +description="提高5点的敏捷度,力量和智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hotkey="K" +hp=75 +ignorecd=0 +level=8 +lumbercost=0 +morph=0 +name="国王之冠 +5" +oldlevel=10 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=126 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买国王之冠(|cffffcc00K|r)" +ubertip="能增加英雄5点的力量,智力和敏捷度。" +usable=0 +uses=0 + +[clfm] +_id="clfm" +_type="item" +abillist="AIcf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCloakOfFlames.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIcf" +description="让英雄处于烈焰之中。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="火焰风衣" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=120 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="火焰风衣" +ubertip="使得英雄处于火焰的包围之中,每秒对周围的地面单位造成 点的伤害。|n不能和献祭一起使用。" +usable=0 +uses=0 + +[clsd] +_id="clsd" +_type="item" +abillist="Ashm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCloak.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ashm" +description="能提供英雄夜间隐形的能力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="C" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="影子风衣" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=2 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子风衣( |cffffcc00C|r)" +ubertip="能在夜间让英雄隐形, 但是当英雄移动,攻击或者使用某种技能的话,隐形效果就会消失。" +usable=0 +uses=0 + +[cnhn] +_id="cnhn" +_type="item" +abillist="Arel,AIl1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHornOfCenarius.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是赛纳留斯的号角。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="赛纳留斯的号角" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买赛纳留斯的号角" +ubertip="这个暗夜精灵族的神器据说能召唤来所有暗夜精灵的灵魂,它能赋予英雄点生命值和每秒点的生命值恢复速度。" +usable=0 +uses=0 + +[cnob] +_id="cnob" +_type="item" +abillist="AIx2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCirclet.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIx2" +description="增加英雄2点的智力,敏捷度和力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=175 +hotkey="C" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="贵族圆环" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=79 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买贵族圆环(|cffffcc00C|r)" +ubertip="增加英雄2点的智力,敏捷度和力量。" +usable=0 +uses=0 + +[cosl] +_id="cosl" +_type="item" +abillist="AIrx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUsedSoulGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHre" +description="|cffff8c00宝物|r|n一个散发着白光的球,充满着宁静和祥和的气息。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=10000 +hotkey="C" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵魂之球" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买灵魂之球(|cffffcc00C|r)" +ubertip="|cffff8c00神器|r|n能将阵亡的个非英雄单位复活。|n|cffffcc00历史|r|n|cffffdead这个神器由古代的泰坦巨人所造。神灵的灵魂之球从上天带来了伟大的力量来复活那些在战场上英雄牺牲的勇士。|r" +usable=1 +uses=0 + +[crdt] +_id="crdt" +_type="item" +abillist="AIfz,AIlf,AImz" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANfd" +description="|cffff8c00宝物|r|n一个结构简单的皇冠,上面刻着一些圣骑士的规章制度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=6400 +hotkey="D" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="死亡领主皇冠" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买死亡领主皇冠(|cffffcc00D|r)" +ubertip="|cffff8c00神器|r|n使得能射出痛苦之箭来对敌人造成点的伤害。同时能增加点的生命值和点的魔法值。|n|cffffcc00历史|r|n|cffffdead据说死亡领主曾经是一个光荣的圣骑士。在他弃明投暗之后残忍地杀害了自己的家人。|r" +usable=1 +uses=0 + +[crys] +_id="crys" +_type="item" +abillist="AIta" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCrystalBall.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIta" +description="能显示地图上的一片区域。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="C" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="水晶球" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买水晶球(|cffffcc00C|r)" +ubertip="驱散一定区域内的战争迷雾,也能看到隐形单位。|n持续秒。" +usable=1 +uses=0 + +[desc] +_id="desc" +_type="item" +abillist="AIbk" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDaggerOfEscape.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbk" +description="传送英雄一小段距离。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="E" +hp=75 +ignorecd=0 +level=7 +lumbercost=0 +morph=0 +name="科勒恩的逃脱匕首" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=47 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买逃脱匕首(|cffffcc00E|r)" +ubertip="允许英雄传送一小段距离。" +usable=1 +uses=0 + +[dkfw] +_id="dkfw" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBarrel.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一个小桶,里面装着卡兹莫丹大陆上最烈性的酒。" +drop=0 +droppable=1 +file="Buildings\\Other\\BarrelsUnit0\\BarrelsUnit0.mdl" +goldcost=200 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雷霆水桶" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买雷霆水桶(|cffffcc00K|r)" +ubertip="一个小桶,里面装着卡兹莫丹大陆上最烈性的酒。" +usable=0 +uses=0 + +[dphe] +_id="dphe" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardEgg.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=100 +colorr=100 +description="一个稀有的雷电之鹰蛋。" +drop=0 +droppable=1 +file="Units\\Human\\Phoenix\\PhoenixEgg.mdl" +goldcost=200 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雷霆凤凰蛋" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买雷霆凤凰(|cffffcc00H|r)" +ubertip="一个稀有的雷电之鹰蛋。" +usable=0 +uses=0 + +[drph] +_id="drph" +_type="item" +abillist="AIi1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDust.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIi1" +description="增加英雄1点的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="德鲁伊布袋" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=10 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买德鲁伊布袋" +ubertip="增加英雄1点的智力。" +usable=0 +uses=0 + +[dsum] +_id="dsum" +_type="item" +abillist="AUds" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDarkSummoning.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AUds" +description="召唤你的单位到你英雄身边。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="D" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="召唤钻石" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买召唤钻石(|cffffcc00D|r)" +ubertip="使用后传送目标区域内个玩家的单位到英雄所在的位置。" +usable=1 +uses=0 + +[dthb] +_id="dthb" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNManaFlareOff.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=140 +colorg=140 +colorr=255 +description="一种奇异的植物,以其不稳定性和危险性而著称。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\Shimmerweed\\Shimmerweed.mdl" +goldcost=200 +hotkey="T" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雷电花芯" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买雷电花芯(|cffffcc00T|r)" +ubertip="一种奇异的植物,以其不稳定性和危险性而著称。" +usable=0 +uses=0 + +[dtsb] +_id="dtsb" +_type="item" +abillist="AItp,AImv,AIsr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSorceressMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AItp" +description="|cffff8c00宝物|r|n一本外表简单的魔法书,由先知德雷克萨尔所编写。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3350 +hotkey="D" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="德雷克萨尔魔法书" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买德雷克萨尔魔法书(|cffffcc00D|r)" +ubertip="|cffff8c00神器|r|n能让你传送回自己的基地。并能减少%受到的魔法伤害和增加英雄点的魔法值。|n|cffffcc00历史|r|n|cffffdead这本魔法书里面很多页都是来自肯瑞托魔法师的作品。他们都阵亡在了古代的战场上。|r" +usable=1 +uses=0 + +[dust] +_id="dust" +_type="item" +abillist="AItb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDustOfAppearance.blp" +"buttonpos:1"=3 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AItb" +description="显示敌方的隐形单位。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=75 +hotkey="D" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="尘土之影" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买尘土之影(|cffffcc00D|r)" +ubertip="显示英雄周围的隐形单位。|n一共可以使用次。|n持续秒。" +usable=1 +uses=2 + +[engs] +_id="engs" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNEnchantedGemstone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是一块魔法宝石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法宝石" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买魔法宝石" +ubertip="这件宝物据说有着凯尔爱尼的神秘力量,能给建筑物增加完美的防御。" +usable=0 +uses=0 + +[envl] +_id="envl" +_type="item" +abillist="AIp3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNVialFull.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hotkey="E" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法小瓶" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买魔法小瓶(|cffffcc00E|r)" +ubertip="恢复点的生命值和点的魔法值。持续秒。|n包含次使用次数。" +usable=1 +uses=5 + +[esaz] +_id="esaz" +_type="item" +abillist="AIh3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHeartOfAszune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIhe" +description="一件强大的暗夜精灵族宝物。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="E" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="埃苏尼之精髓" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=89 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买埃苏尼之精髓(|cffffcc00E|r)" +ubertip="传说中有一个兽族发现了神奇的埃苏尼之心。现在这个就是埃苏尼之心的一部分。它具有医疗英雄的能力。这是一个永久性的物品。" +usable=1 +uses=0 + +[evtl] +_id="evtl" +_type="item" +abillist="AIev" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTalisman.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AEev" +description="让英雄更加难以被攻击到。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="闪避护符" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=99 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买闪避护符" +ubertip="能让英雄有% 的概率躲避掉敌人的攻击。|n不能和闪避以及醉拳技能一起使用。" +usable=0 +uses=0 + +[fgdg] +_id="fgdg" +_type="item" +abillist="AIfu" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDoomGuard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfu" +description="召唤毁灭守卫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="恶魔雕像" +oldlevel=8 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=139 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买恶魔雕像" +ubertip="召唤出一毁灭守卫来为你战斗。|n持续秒。" +usable=1 +uses=1 + +[fgfh] +_id="fgfh" +_type="item" +abillist="AIfh" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfh" +description="召唤邪恶漫步者。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="长钉衣领" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=83 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买长钉衣领" +ubertip="召唤一名邪恶漫步者为你作战。|n持续秒。" +usable=1 +uses=1 + +[fgrd] +_id="fgrd" +_type="item" +abillist="AIfd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRedDragon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfd" +description="能召唤出强大的红龙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hotkey="E" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="红龙之卵" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=77 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买红龙之卵(|cffffcc00E|r)" +ubertip="召唤强大的红龙来为你战斗。|n持续秒。" +usable=1 +uses=1 + +[fgrg] +_id="fgrg" +_type="item" +abillist="AIfr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRockGolem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfr" +description="召唤一个岩石傀儡。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="岩石印记" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=140 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买岩石印记" +ubertip="召唤岩石傀儡来为你战斗。|n持续秒。" +usable=1 +uses=1 + +[fgsk] +_id="fgsk" +_type="item" +abillist="AIfs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBookOfTheDead.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfs" +description="召唤骷髅兵。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="死亡之书" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=55 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买死亡之书" +ubertip="召唤出 个骷髅战士和个骷髅弓箭手。|n持续秒。" +usable=1 +uses=1 + +[fgun] +_id="fgun" +_type="item" +abillist="AIfa" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFlare.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfa" +description="显示地图上的某块区域。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=125 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="信号枪" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=45 +stockstart=0 +tip="购买信号枪(|cffffcc00F|r)" +ubertip="显示地图上的某块区域。|n可使用次。" +usable=1 +uses=3 + +[flag] +_id="flag" +_type="item" +abillist="AIfm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanCaptureFlag.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="能在某些特殊的场景内获得。" +drop=1 +droppable=1 +file="Objects\\InventoryItems\\HumanCaptureFlag\\HumanCaptureFlag.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="人族旗帜" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买人族旗帜" +ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +usable=0 +uses=0 + +[frgd] +_id="frgd" +_type="item" +abillist="AIft,AId5" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNThoriumMelee.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIob" +description="能增加攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1400 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="霜冻守卫" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买霜冻守卫(|cffffcc00F|r)" +ubertip="携带的时候增加英雄点的霜冻攻击伤害和点的护甲。英雄的攻击也能减慢敌人的移动和攻击速度。" +usable=0 +uses=0 + +[frhg] +_id="frhg" +_type="item" +abillist="AId5,AIs2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedUnholyStrength.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIas" +description="能增加护甲和进攻速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3500 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="火焰手套" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买火焰手套(|cffffcc00F|r)" +ubertip="增加英雄点的护甲和%的进攻速度。" +usable=0 +uses=0 + +[fwss] +_id="fwss" +_type="item" +abillist="AId2,AIsr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGrimWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsr" +description="一件强大的不死族宝物。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="冰霜巨龙头骨护盾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=127 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买冰霜巨龙头骨护盾(|cffffcc00F|r)" +ubertip="这个冰霜巨龙的头骨已经被改装成了一块坚固的护盾。能增加英雄2点的护甲并减少%英雄所受到的魔法攻击。" +usable=0 +uses=0 + +[gcel] +_id="gcel" +_type="item" +abillist="AIsx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlove.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIas" +description="增加英雄攻击速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="加速手套" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=32 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买加速手套" +ubertip="增加英雄%的攻击速度。" +usable=0 +uses=0 + +[gemt] +_id="gemt" +_type="item" +abillist="Adt1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Adet" +description="能看到隐形单位。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="G" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="显形宝石" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=35 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买显形宝石(|cffffcc00G|r)" +ubertip="能让英雄看到敌方的隐形单位。" +usable=0 +uses=0 + +[gfor] +_id="gfor" +_type="item" +abillist="AIgf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlyph.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIgl" +description="增强建筑物的装甲和耐久度" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\Glyph\\Glyph.mdl" +goldcost=200 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="防御浮雕" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=120.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买防御浮雕(|cffffcc00F|r)" +ubertip="增强你的建筑物的装甲和耐久度。" +usable=1 +uses=1 + +[gldo] +_id="gldo" +_type="item" +abillist="AIgd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUsedSoulGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfb" +description="能使得英雄的让攻击带有火焰伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="基尔加丹之球" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=95 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买基尔加丹之球(|cffffcc00K|r)" +ubertip="让英雄的攻击带有点的火焰伤害。而且英雄在攻击空中单位的时候会变成远程攻击,还有一定的溅射效果。" +usable=0 +uses=0 + +[glsk] +_id="glsk" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGuldanSkull.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是古尔丹的头颅。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="古尔丹之颅" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买古尔丹之颅" +ubertip="古尔丹曾是一个恶魔魔法的使用者,不幸的是召唤出来的恶魔反而杀害了他。" +usable=0 +uses=0 + +[gmfr] +_id="gmfr" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="戒指宝石的碎片" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="G" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="宝石碎片" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="宝石碎片(|cffffcc00G|r)" +ubertip="戒指宝石的碎片" +usable=0 +uses=0 + +[gobm] +_id="gobm" +_type="item" +abillist="AIpm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinLandMine.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIpm" +description="爆炸性的地雷。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=225 +hotkey="L" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="地精地雷" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买地精地雷(|cffffcc00L|r)" +ubertip="在地上放置一个地精地雷以后,如果有敌人靠近地雷,则地雷就会自动爆炸从而对一定范围内的单位都造成伤害。|n可使用次。" +usable=1 +uses=3 + +[gold] +_id="gold" +_type="item" +abillist="AIgo" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNChestOfGold.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIgo" +description="给予玩家一定数量的黄金。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\PotofGold\\PotofGold.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="金币" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买金币" +ubertip="给予玩家个单位的黄金。" +usable=1 +uses=1 + +[gomn] +_id="gomn" +_type="item" +abillist="AIrv" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlyph.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrv" +description="显示整个地图。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\Glyph\\Glyph.mdl" +goldcost=300 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="全知浮雕" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=120.0 +stockmax=1 +stockregen=240 +stockstart=0 +tip="购买全知浮雕(|cffffcc00O|r)" +ubertip="使用后显示整个地图秒。" +usable=1 +uses=1 + +[gopr] +_id="gopr" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlyph.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一块浮雕。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="净化浮雕" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买净化浮雕" +ubertip="由古代的德鲁伊所造,有着无穷的医疗力量。" +usable=0 +uses=0 + +[grsl] +_id="grsl" +_type="item" +abillist="AIpx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNecromancerMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImi" +description="|cff87ceeb特有的一次性物品|r|n永久性地增加英雄的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1350 +hotkey="G" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵魂宝物" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买灵魂宝物(|cffffcc00G|r)" +ubertip="|cff87ceeb特有的消耗性物品|r|n这本强有力的书在使用一次之后能永久地增加英雄点的生命值。|n包含次使用次数。" +usable=1 +uses=10 + +[gsou] +_id="gsou" +_type="item" +abillist="AIso" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSoulGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIso" +description="能盗取敌人英雄的灵魂。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hotkey="G" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵魂宝石" +oldlevel=0 +pawnable=0 +perishable=1 +pickrandom=0 +powerup=0 +prio=137 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买灵魂宝石(|cffffcc00G|r)" +ubertip="能俘获敌人英雄的灵魂,但是你自己拥有宝石的英雄被杀死之后,宝石里的敌方英雄灵魂就会重新被释放出来。而且,当你的英雄用灵魂宝石俘获了敌方英雄之后,你的这个英雄就会处于敌人的视野之下。" +usable=1 +uses=1 + +[guvi] +_id="guvi" +_type="item" +abillist="AIgu" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlyph.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIgl" +description="增进夜间视野" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\Glyph\\Glyph.mdl" +goldcost=125 +hotkey="U" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="夜视浮雕" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=120.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买夜视浮雕(|cffffcc00U|r)" +ubertip="给予你所有的单位有和白天视野等同的夜间视力。" +usable=1 +uses=1 + +[gvsm] +_id="gvsm" +_type="item" +abillist="AIcm,AIi6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpellSteal.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Acmg" +description="|cff8b00ff特有的|r|n这手套有着神秘的魔法力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1400 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="法术大师手套" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买法术大师手套(|cffffcc00S|r)" +ubertip="|cff8b00ff特有的|r|n能控制召唤出来的单位。同时能增加英雄点的智力。" +usable=1 +uses=0 + +[hbth] +_id="hbth" +_type="item" +abillist="AIxk,AIa4,AIs4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUnholyAura.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Absk" +description="|cff8b00ff特有的|r|n这个神奇的舵能让你扭转战局。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=4200 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="战舰之舵" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买战舰之舵(|cffffcc00B|r)" +ubertip="|cff8b00ff特有的|r|n让英雄处于狂暴愤怒的状态,从而增加其%的攻击速度。但是同时也会对自身造成每秒点的伤害。还能增加其4点的力量和敏捷度属性。" +usable=1 +uses=0 + +[hcun] +_id="hcun" +_type="item" +abillist="AIa4,AIi4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHoodOfCunning.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa4" +description="能提高英雄的智力和敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="灵巧头巾" +oldlevel=9 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=62 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买灵巧头巾" +ubertip="增加英雄4点的敏捷度和智力。" +usable=0 +uses=0 + +[hlst] +_id="hlst" +_type="item" +abillist="AIh2,Arll" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHealthStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIhe" +description="提高英雄的生命值恢复速度,也能一次性使用掉从而增加生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="医疗石" +oldlevel=4 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=122 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买医疗石" +ubertip="提高英雄每秒点的生命值恢复速度。也能一次性地使用掉从而增加点的生命值。" +usable=1 +uses=1 + +[horl] +_id="horl" +_type="item" +abillist="AIae" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlyph.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOae" +description="一种罕见的萨满宝物。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=950 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="稀有神器" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买稀有神器(|cffffcc00S|r)" +ubertip="一种威力巨大的神器,由古代的兽族萨满祭司所造。|n提高英雄和周围单位的进攻速度和移动速度。|n不能和耐久光环一起使用。" +usable=0 +uses=0 + +[hslv] +_id="hslv" +_type="item" +abillist="AIrl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHealingSalve.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="在一定的时间内恢复目标单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="H" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="医疗剂" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=82 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买医疗剂(|cffffcc00H|r)" +ubertip="|cff87ceeb非战斗类消耗型物品|r|n使用后在秒内恢复目标单位的生命值点。|n可使用次。" +usable=1 +uses=3 + +[hval] +_id="hval" +_type="item" +abillist="AIs4,AIa4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHelmOfValor.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs4" +description="能增加英雄的力量和敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="英勇面具" +oldlevel=9 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=108 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买英勇面具" +ubertip="增加英雄4点的力量和敏捷度。" +usable=0 +uses=0 + +[infs] +_id="infs" +_type="item" +abillist="AIin" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNInfernalStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIin" +description="召唤地狱火恶魔。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="恶魔岩石" +oldlevel=8 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=141 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买恶魔岩石" +ubertip="召唤一个地狱火从天而降,造成点的伤害,并让敌方地面单位在秒内处于昏晕状态。地狱火持续秒。" +usable=1 +uses=1 + +[iwbr] +_id="iwbr" +_type="item" +abillist="AIs1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNatureTouchGrow.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs1" +description="增加英雄1点的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="铁树枝干" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=27 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买铁树枝干" +ubertip="增加英雄1点的力量。" +usable=0 +uses=0 + +[jdrn] +_id="jdrn" +_type="item" +abillist="AIa1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingJadeFalcon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa1" +description="增加英雄1点的敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵巧指环" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=21 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买灵巧指环" +ubertip="增加英雄1点的敏捷度。" +usable=0 +uses=0 + +[jpnt] +_id="jpnt" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfProtection.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="吉安娜-普罗德摩尔的便条。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="J" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="给吉安娜?普罗德摩尔的便条" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买给吉安娜-普罗德摩尔的便条(|cffffcc00J|r)" +ubertip="萨尔给吉安娜-普罗德摩尔的便条。" +usable=0 +uses=0 + +[k3m1] +_id="k3m1" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTN3M1.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="它是三月之钥的一部分。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="月亮水晶" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买月亮水晶" +ubertip="来自杰那拉的翠绿眼睛,能打开大门守护者的心灵。" +usable=0 +uses=0 + +[k3m2] +_id="k3m2" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTN3M2.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是三月之钥的另外一个部分。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="三月之钥的另外一个部分" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买三月之钥的另外一个部分" +ubertip="来自哈尼尔的紫色岩石能打开大门守护者的心灵。" +usable=0 +uses=0 + +[k3m3] +_id="k3m3" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTN3M3.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="这是完整的三月之钥。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="三月之钥" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买三月之钥" +ubertip="来自艾奴莱的蓝色身躯,能打开大门守护者的心灵。" +usable=0 +uses=0 + +[kgal] +_id="kgal" +_type="item" +abillist="AIrm,Arel" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBarrel.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Arel" +description="提高生命值和魔法值恢复速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=850 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="麦酒桶" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买麦酒桶(|cffffcc00K|r)" +ubertip="提高生命值和魔法值恢复速度。" +usable=0 +uses=0 + +[klmm] +_id="klmm" +_type="item" +abillist="AItx,AIva" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWalkerAdeptTraining.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIva" +description="|cffff8c00宝物|r|n一把月牙型的战斧,上面散发着鲜血和盐水的味道。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=7500 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="远古战斧" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买远古战斧(|cffffcc00K|r)" +ubertip="|cffff8c00神器|r|n增加英雄点的攻击力。并使英雄的攻击能汲取生命值。|n|cffffcc00历史|r|n|cffffdead当德瑟林发现他的爱人阿鲁娜投进了别人的怀抱。他前去荒地好好地痛苦了一场。结果从沙子里面飞出了一把巨大的战斧。德瑟林拿着这把从天而降的斧子杀了阿鲁娜和她的情人。随后他用自己最大的力气把这把神奇的战斧投向了大海的最深处。|r" +usable=0 +uses=0 + +[kpin] +_id="kpin" +_type="item" +abillist="AIba" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPipeOfInsight.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHab" +description="能使周围单位的魔法值恢复地更快。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="卡嘉长萧" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=60 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买卡嘉长萧" +ubertip="使得英雄和周围单位的魔法值恢复速度加快 。|n不能和辉煌光环同时使用。" +usable=0 +uses=0 + +[ktrm] +_id="ktrm" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUrnOfKelThuzad.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="里面盛放着泰瑞纳斯国王的骨灰。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="泰瑞纳斯国王的骨灰瓮" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买泰瑞纳斯国王的骨灰瓮" +ubertip="里面盛放着泰瑞纳斯国王的骨灰,现在它却被恶魔提克迪奥斯挑选来存放克尔苏加德的残骸。" +usable=0 +uses=0 + +[kybl] +_id="kybl" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBloodKey.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一把鲜血钥匙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="鲜血钥匙" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买鲜血钥匙" +ubertip="这钥匙沾满了鲜血。" +usable=0 +uses=0 + +[kygh] +_id="kygh" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGhostKey.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一把魔鬼钥匙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔鬼钥匙" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买魔鬼钥匙" +ubertip="这钥匙带着一股神秘的色彩。" +usable=0 +uses=0 + +[kymn] +_id="kymn" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMoonKey.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一把黯淡无光的钥匙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="月之钥匙" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买月之钥匙" +ubertip="这钥匙散发着一种昏暗的色彩。" +usable=0 +uses=0 + +[kysn] +_id="kysn" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSunKey.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一把发光的钥匙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="太阳钥匙" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买太阳钥匙" +ubertip="这钥匙散发着炫耀的光芒。" +usable=0 +uses=0 + +[ledg] +_id="ledg" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSorceressMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="帐本。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="吉拉德的帐本" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买吉拉德的帐本" +ubertip="里面似乎充满着无聊的数字和事实记载。" +usable=0 +uses=0 + +[lgdh] +_id="lgdh" +_type="item" +abillist="AIau" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHornOfDoom.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AUau" +description="提高周围单位生命值恢复速度和移动速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="毁灭之角" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=124 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买毁灭之角" +ubertip="增加英雄和附近单位的生命值恢复速度和移动速度。|n不能和邪恶光环同时使用。" +usable=0 +uses=0 + +[lhst] +_id="lhst" +_type="item" +abillist="AIad" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLionHorn.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHad" +description="在英雄周围产生一保护性的光环。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="风暴狮角" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=76 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买风暴狮角" +ubertip="使得英雄和周围的单位增加点的护甲。|n不能和专注光环同时使用。" +usable=0 +uses=0 + +[lmbr] +_id="lmbr" +_type="item" +abillist="AIlu" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBundleOfLumber.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIlu" +description="给予玩家一定数量的黄金。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\BundleofLumber\\BundleofLumber.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="木材堆" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买木材堆" +ubertip="给予玩家个单位的木材。" +usable=1 +uses=1 + +[lnrn] +_id="lnrn" +_type="item" +abillist="AIa1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingLionHead.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa1" +description="增加英雄1点的敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雄狮之戒" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=22 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买雄狮之戒" +ubertip="增加英雄1点的敏捷度。" +usable=0 +uses=0 + +[lure] +_id="lure" +_type="item" +abillist="AImo" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMonsterLure.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImo" +description="召唤出一个能吸引中立单位的守卫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="L" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="怪兽诱捕守卫" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买怪兽诱捕守卫(|cffffcc00L|r)" +ubertip="召唤出一个能吸引中立单位的守卫。" +usable=1 +uses=1 + +[manh] +_id="manh" +_type="item" +abillist="AImh" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNManual.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImi" +description="永久性地增加英雄50点的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tome\\tome.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="生命手册" +oldlevel=1 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买生命手册" +ubertip="增加英雄点的生命值。" +usable=1 +uses=1 + +[mcou] +_id="mcou" +_type="item" +abillist="AIs4,AIi4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMedalionOfCourage.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs4" +description="能增加英雄的智力和力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="勇气勋章" +oldlevel=9 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=87 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买勇气勋章" +ubertip="增加英雄4点力量和智力。" +usable=0 +uses=0 + +[mcri] +_id="mcri" +_type="item" +abillist="Amec" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMechanicalCritter.blp" +"buttonpos:1"=2 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Amec" +description="能召唤出一个玩家所能控制的小玩艺来进行侦察。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="E" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="机械类的小玩艺" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买机械类的小玩艺(|cffffcc00E|r)" +ubertip="能召唤出一个玩家所能控制的小玩艺来进行侦察。" +usable=1 +uses=1 + +[mgtk] +_id="mgtk" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBlood&GhostKey.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一串钥匙。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法钥匙串" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买魔法钥匙串(|cffffcc00K|r)" +ubertip="这串钥匙能打开所有的大门。" +usable=0 +uses=0 + +[mlst] +_id="mlst" +_type="item" +abillist="AIs1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHammer.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs1" +description="增加英雄1点的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="力量之锤" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=29 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买力量之锤" +ubertip="增加英雄1点的力量。" +usable=0 +uses=0 + +[mnsf] +_id="mnsf" +_type="item" +abillist="AI2m,AIba" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBrilliance.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHab" +description="增加魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1800 +hotkey="M" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="心灵权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买心灵权杖(|cffffcc00M|r)" +ubertip="增加英雄点的魔法值。并给予英雄和其周围的单位更快的魔法恢复速度。" +usable=0 +uses=0 + +[mnst] +_id="mnst" +_type="item" +abillist="AIm2,AIrn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNManaStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIma" +description="能加快魔法恢复速度。也能一次性使用掉从而增加英雄的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="魔法石" +oldlevel=4 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=90 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买魔法石" +ubertip="加快英雄%的魔法恢复速度。也可以一次使用掉来增加点的魔法。" +usable=1 +uses=1 + +[modt] +_id="modt" +_type="item" +abillist="AIva" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMaskOfDeath.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIva" +description="这面罩能于英雄攻击时汲取生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=8 +lumbercost=0 +morph=0 +name="死亡面罩" +oldlevel=10 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=138 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买死亡面罩" +ubertip="能使英雄的攻击将%对敌人造成的伤害转换成自己的生命值。" +usable=0 +uses=0 + +[moon] +_id="moon" +_type="item" +abillist="AIct" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMoonStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIct" +description="使白天变成黑夜。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="N" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="月亮石" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=1 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买月亮石(|cffffcc00N|r)" +ubertip="制造日蚀,阻挡阳光,以创造人造夜晚。|n持续秒。" +usable=1 +uses=1 + +[mort] +_id="mort" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpy.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一封来自萨尔的信。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="M" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="莫哥林的报告" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买莫哥林的报告(|cffffcc00M|r)" +ubertip="这信被魔法力量给封住了。信的前面潦草地写着萨尔这两个字。" +usable=0 +uses=0 + +[nflg] +_id="nflg" +_type="item" +abillist="AIfn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfCaptureFlag.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="能在某些特殊的场景内获得。" +drop=1 +droppable=1 +file="Objects\\InventoryItems\\NightElfCaptureFlag\\NightElfCaptureFlag.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="暗夜精灵族旗帜" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买暗夜精灵族旗帜" +ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +usable=0 +uses=0 + +[nspi] +_id="nspi" +_type="item" +abillist="AImx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNecklace.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImx" +description="让英雄的魔法免疫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法免疫项链" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=131 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买魔法免疫项链" +ubertip="让英雄对魔法免疫。" +usable=0 +uses=0 + +[ocor] +_id="ocor" +_type="item" +abillist="AIcb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfCorruption.blp" +"buttonpos:1"=0 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIcb" +description="攻击能削弱敌人的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="B" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="腐蚀之球" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=93 +requires="unp2" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买腐蚀之球(|cffffcc00B|r)" +ubertip="增加英雄点的攻击力。英雄的攻击在攻击空中单位的时候也变为远程,而且能在秒内削弱敌人的护甲。" +usable=0 +uses=0 + +[odef] +_id="odef" +_type="item" +abillist="AIdf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIdf" +description="攻击能创造出黑暗之奴。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="B" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="黑暗之球" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=96 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买黑暗之球(|cffffcc00B|r)" +ubertip="增加英雄点的攻击力。英雄的攻击也会在攻击空中单位的时候具有远程能力,而且如果一下子就杀死敌方某个单位的话,那么还会出现一个为你作战的黑暗之奴。黑暗之奴持续秒。" +usable=0 +uses=0 + +[ofir] +_id="ofir" +_type="item" +abillist="AIfb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFire.blp" +"buttonpos:1"=0 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIfb" +description="能使得英雄的让攻击带有火焰伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="F" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="火焰之球" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=95 +requires="hcas" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买火焰之球(|cffffcc00F|r)" +ubertip="能让英雄的攻击带有点的火焰伤害,而且英雄的攻击在攻击空中单位的时候会变成远程攻击,还有一定的溅射效果。" +usable=0 +uses=0 + +[oflg] +_id="oflg" +_type="item" +abillist="AIfo" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcCaptureFlag.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="能在某些特殊的场景内获得。" +drop=1 +droppable=1 +file="Objects\\InventoryItems\\OrcCaptureFlag\\OrcCaptureFlag.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="兽族旗帜" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买兽族旗帜" +ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +usable=0 +uses=0 + +[ofro] +_id="ofro" +_type="item" +abillist="AIob" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfFrost.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIob" +description="使得英雄的攻击带有冷冻伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=800 +hotkey="R" +hp=75 +ignorecd=0 +level=7 +lumbercost=0 +morph=0 +name="霜冻之球" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=97 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买霜冻之球(|cffffcc00R|r)" +ubertip="能让英雄的攻击带有点的冷冻伤害。而且这种攻击在攻击空中单位的时候会变成远程攻击,还能在秒内减慢敌人的进攻和移动速度。" +usable=0 +uses=0 + +[oli2] +_id="oli2" +_type="item" +abillist="AIll" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfLightning.blp" +"buttonpos:1"=0 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIll" +description="使得英雄的攻击能带有闪电伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="L" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="闪电之球" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=91 +requires="ofrt" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买闪电之球(|cffffcc00L|r)" +ubertip="能增加英雄点的攻击力。也使得英雄的攻击在攻击空中单位的时候会变为远程攻击,还能驱逐魔法和在秒内减慢敌人的移动速度。|n|cffffcc00对召唤出来的单位能造成 点的伤害。" +usable=0 +uses=0 + +[olig] +_id="olig" +_type="item" +abillist="AIlb,AIlp" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfLightning.blp" +"buttonpos:1"=2 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIlb" +description="使得英雄的攻击能带有闪电伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hotkey="L" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="闪电之球" +oldlevel=10 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=92 +requires="ofrt" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买闪电之球(|cffffcc00L|r)" +ubertip="能增加英雄点的攻击力。也使得英雄的攻击在攻击空中单位的时候会变为远程攻击,还能驱逐魔法和在秒内减慢敌人的移动速度。|n|cffffcc00对召唤出来的单位能造成 点的伤害。" +usable=0 +uses=0 + +[oslo] +_id="oslo" +_type="item" +abillist="AIsb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbofSlowness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsb" +description="使攻击带有减慢效果。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=550 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="减速之球" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=98 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买减速之球(|cffffcc00S|r)" +ubertip="增加英雄点的攻击力。英雄的攻击在攻击空中单位的时候也变为远程攻击并能在秒内减慢敌方单位 %的攻击速度和%的移动速度。" +usable=0 +uses=0 + +[oven] +_id="oven" +_type="item" +abillist="AIpb,Apo2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfVenom.blp" +"buttonpos:1"=0 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIpb" +description="能让攻击带有毒性。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="V" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="毒液之球" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=94 +requires="etoe" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买毒液之球(|cffffcc00V|r)" +ubertip="增加英雄点的攻击力。英雄的攻击也会在攻击空中单位的时候具有远程能力并能在秒内对目标造成中毒效果。" +usable=0 +uses=0 + +[pams] +_id="pams" +_type="item" +abillist="AIxs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSnazzyPotion.blp" +"buttonpos:1"=1 +"buttonpos:2"=2 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aami" +description="使英雄对魔法免疫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="抗体药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=56 +requires="etoe" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买抗体药水(|cffffcc00A|r)" +ubertip="使英雄在秒内对所有的魔法免疫。" +usable=1 +uses=1 + +[pclr] +_id="pclr" +_type="item" +abillist="AIpr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfClarity.blp" +"buttonpos:1"=1 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIpr" +description="在一定的时间内恢复英雄的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=160 +hotkey="Y" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="净化药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=67 +requires="etoe" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=45 +stockstart=0 +tip="购买净化药水(|cffffcc00Y|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的魔法值。" +usable=1 +uses=1 + +[pdiv] +_id="pdiv" +_type="item" +abillist="AIdv" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfDivinity.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHds" +description="将英雄变为无敌。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="D" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="神圣药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=125 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买神圣药水(|cffffcc00D|r)" +ubertip="在秒内让英雄变为无敌。" +usable=1 +uses=1 + +[penr] +_id="penr" +_type="item" +abillist="AImb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPendantOfEnergy.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImm" +description="能增加魔法最大值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="能量垂饰" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=50 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买能量垂饰" +ubertip="增加英雄点的魔法最大值。" +usable=0 +uses=0 + +[pghe] +_id="pghe" +_type="item" +abillist="AIh2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIhe" +description="恢复损失的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="R" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="大生命药水" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=121 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大生命药水(|cffffcc00R|r)" +ubertip="能恢复 点的生命值。" +usable=1 +uses=1 + +[pgin] +_id="pgin" +_type="item" +abillist="AIv2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreaterInvisibility.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIvi" +description="能让英雄暂时隐身。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="I" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="大隐形药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=36 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大隐形药水(|cffffcc00I|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内使得英雄处于隐形状态,但是当英雄攻击或者使用某项技能和魔法的时候,隐形效果就会消失。" +usable=1 +uses=1 + +[pgma] +_id="pgma" +_type="item" +abillist="AIm2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionBlueBig.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIma" +description="能恢复魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="M" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="大魔法药水" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=68 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大魔法药水(|cffffcc00M|r)" +ubertip="恢复点的魔法值。" +usable=1 +uses=1 + +[phea] +_id="phea" +_type="item" +abillist="AIh1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionGreenSmall.blp" +"buttonpos:1"=0 +"buttonpos:2"=1 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIhe" +description="恢复损失的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="P" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="生命药水" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=74 +requires="TWN2" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=440 +tip="购买生命药水(|cffffcc00P|r)" +ubertip="恢复点的生命值。" +usable=1 +uses=1 + +[phlt] +_id="phlt" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadShrine.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="神秘的物品。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="李维特" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=999 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买李维特" +ubertip="神秘的物品。" +usable=0 +uses=0 + +[pinv] +_id="pinv" +_type="item" +abillist="AIv1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLesserInvisibility.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIvi" +description="能让英雄暂时隐身。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="I" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="隐形药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=33 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买隐形药水(|cffffcc00I|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内使得英雄处于隐形状态,但是当英雄攻击或者使用某项技能和魔法的时候,隐形效果就会消失。" +usable=1 +uses=1 + +[plcl] +_id="plcl" +_type="item" +abillist="AIpl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLesserClarityPotion.blp" +"buttonpos:1"=1 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIpr" +description="在一定的时间内恢复英雄的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=70 +hotkey="C" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="小净化药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=57 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=30 +stockstart=0 +tip="购买小净化药水(|cffffcc00C|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的魔法值。" +usable=1 +uses=1 + +[pman] +_id="pman" +_type="item" +abillist="AIm1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionBlueSmall.blp" +"buttonpos:1"=1 +"buttonpos:2"=1 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIma" +description="能恢复魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="M" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="魔法药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=66 +requires="TWN2" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=440 +tip="购买魔法药水(|cffffcc00M|r)" +ubertip="恢复点的魔法值。" +usable=1 +uses=1 + +[pmna] +_id="pmna" +_type="item" +abillist="AIbm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPendantOfMana.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImm" +description="能增加魔法最大值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="魔法垂饰" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=61 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买魔法垂饰" +ubertip="增加点的魔法最大值。" +usable=0 +uses=0 + +[pnvl] +_id="pnvl" +_type="item" +abillist="AIvl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLesserInvulneralbility.blp" +"buttonpos:1"=2 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIvu" +description="暂时让英雄变为无敌。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="N" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="较小的无敌药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=40 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买较小的无敌药水(|cffffcc00N|r)" +ubertip="在秒内使得英雄无敌。任何魔法都不能攻击一个处于无敌状态的英雄。" +usable=1 +uses=1 + +[pnvu] +_id="pnvu" +_type="item" +abillist="AIvu" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreaterInvulneralbility.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIvu" +description="暂时让英雄变为无敌。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="I" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="无敌药水" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=102 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买无敌药水(|cffffcc00I|r)" +ubertip="在秒内使得英雄无敌。任何魔法都不能攻击一个处于无敌状态的英雄。" +usable=1 +uses=1 + +[pomn] +_id="pomn" +_type="item" +abillist="AIrv" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfOmniscience.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrv" +description="显示整个地图。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="全知药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买全知药水(|cffffcc00O|r)" +ubertip="使用后显示整个地图秒。" +usable=1 +uses=1 + +[pres] +_id="pres" +_type="item" +abillist="AIre" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfRestoration.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIre" +description="能恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="R" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="恢复药水" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=132 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买恢复药水(|cffffcc00R|r)" +ubertip="能恢复点生命值和点的魔法值。" +usable=1 +uses=1 + +[prvt] +_id="prvt" +_type="item" +abillist="AIlf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPeriapt.blp" +"buttonpos:1"=1 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIml" +description="增加英雄的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=350 +hotkey="V" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="生命护身符" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=107 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买生命护身符(|cffffcc00V|r)" +ubertip="增加英雄点的生命值。" +usable=0 +uses=0 + +[pspd] +_id="pspd" +_type="item" +abillist="AIsp" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionRed.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsp" +description="能暂时提高英雄的移动速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=75 +hotkey="S" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="速度药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=7 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=45 +stockstart=440 +tip="购买速度药水(|cffffcc00S|r)" +ubertip="在秒内提高 %的移动速度。" +usable=1 +uses=1 + +[rag1] +_id="rag1" +_type="item" +abillist="AIa3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSlippersOfAgility.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa3" +description="增加英雄3点的敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="A" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="敏捷便鞋 +3" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=104 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买敏捷便鞋 +3(|cffffcc00A|r)" +ubertip="增加英雄3点的敏捷度。" +usable=0 +uses=0 + +[ram1] +_id="ram1" +_type="item" +abillist="AIx1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingJadeFalcon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIab" +description="一件强有力的宝物,上面还装饰有碎宝石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=125 +hotkey="R" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="大魔法师指环" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=24 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大魔法师指环(|cffffcc00R|r)" +ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄1点的智力,敏捷度和力量。" +usable=0 +uses=0 + +[ram2] +_id="ram2" +_type="item" +abillist="AIx2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingJadeFalcon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIab" +description="一件强有力的宝物,上面还装饰有碎宝石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=300 +hotkey="R" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="大魔法师指环" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=52 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大魔法师指环(|cffffcc00R|r)" +ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄2点的智力,敏捷度和力量。" +usable=0 +uses=0 + +[ram3] +_id="ram3" +_type="item" +abillist="AIx3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingJadeFalcon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIab" +description="一件强有力的宝物,上面还装饰有碎宝石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=550 +hotkey="R" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="大魔法师指环" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=109 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大魔法师指环(|cffffcc00R|r)" +ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄3点的智力,敏捷度和力量。" +usable=0 +uses=0 + +[ram4] +_id="ram4" +_type="item" +abillist="AIx3,AIba" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingJadeFalcon.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHab" +description="一件强有力的宝物,上面还装饰有碎宝石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hotkey="R" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="大魔法师指环" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=145 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买大魔法师指环(|cffffcc00R|r)" +ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄3点的智力,敏捷度和力量。还能加快英雄周围单位的魔法恢复速度。" +usable=0 +uses=0 + +[rat3] +_id="rat3" +_type="item" +abillist="AIat" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="增加3点的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="攻击之爪 +3" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=18 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买攻击之爪 +3(|cffffcc00K|r)" +ubertip="增加英雄3点的攻击力。" +usable=0 +uses=0 + +[rat6] +_id="rat6" +_type="item" +abillist="AIt6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="增加英雄6点的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="攻击之爪 +6" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=44 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买攻击之爪 +6" +ubertip="能增加英雄6点的攻击力。" +usable=0 +uses=0 + +[rat9] +_id="rat9" +_type="item" +abillist="AIt9" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="增加英雄9点的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="C" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="攻击之爪 +9" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=48 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买攻击之爪 +9(|cffffcc00C|r)" +ubertip="增加英雄9点的攻击力。" +usable=0 +uses=0 + +[ratc] +_id="ratc" +_type="item" +abillist="AItc" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="增加英雄12点的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="攻击之爪 +12" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=49 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买攻击之爪 +12" +ubertip="增加英雄12点的攻击力。" +usable=0 +uses=0 + +[ratf] +_id="ratf" +_type="item" +abillist="AItf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNClawsOfAttack.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="增加英雄15点的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=800 +hp=75 +ignorecd=0 +level=7 +lumbercost=0 +morph=0 +name="攻击之爪 +15" +oldlevel=9 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=53 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买攻击之爪 +15" +ubertip="增加英雄15点的攻击力。" +usable=0 +uses=0 + +[rde0] +_id="rde0" +_type="item" +abillist="AId1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIde" +description="增加英雄1点的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="1" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="守护指环 +1" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=45 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买守护指环 +(|cffffcc001|r)" +ubertip="增加英雄1点的护甲。" +usable=0 +uses=0 + +[rde1] +_id="rde1" +_type="item" +abillist="AId2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIde" +description="增加英雄2点的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="2" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="守护指环 +2" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=80 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买守护指环 +(|cffffcc002|r)" +ubertip="增加英雄2点的护甲。" +usable=0 +uses=0 + +[rde2] +_id="rde2" +_type="item" +abillist="AId3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIde" +description="增加英雄3点的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="3" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="守护指环 +3" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=105 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买守护指环 +(|cffffcc003|r)" +ubertip="增加英雄3点的护甲。" +usable=0 +uses=0 + +[rde3] +_id="rde3" +_type="item" +abillist="AId4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIde" +description="增加英雄4点的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="4" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="守护指环 +4" +oldlevel=8 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=116 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买守护指环 +(|cffffcc004|r)" +ubertip="增加英雄4点的护甲。" +usable=0 +uses=0 + +[rde4] +_id="rde4" +_type="item" +abillist="AId5" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIde" +description="增加英雄5点的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=800 +hotkey="5" +hp=75 +ignorecd=0 +level=7 +lumbercost=0 +morph=0 +name="守护指环 +5" +oldlevel=9 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=117 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买守护指环 +(|cffffcc005|r)" +ubertip="能增加英雄5点的护甲" +usable=0 +uses=0 + +[rdis] +_id="rdis" +_type="item" +abillist="APdi" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="APdi" +description="在周围的区域内驱散魔法" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=75 +hotkey="D" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="驱魔神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买驱魔神符(|cffffcc00D|r)" +ubertip="驱散所有附近的魔法效果。|n|cffffcc00给召唤单位造成的伤害。|r" +usable=1 +uses=1 + +[rej1] +_id="rej1" +_type="item" +abillist="AIp1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMinorRejuvPotion.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="R" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=1 +name="小型恢复药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=31 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买微型恢复药水(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rej2] +_id="rej2" +_type="item" +abillist="AIp2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLesserRejuvPotion.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="R" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=1 +name="小型恢复药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=72 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买小型恢复药水(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rej3] +_id="rej3" +_type="item" +abillist="AIp3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRejuvPotion.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="R" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=1 +name="恢复药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=75 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买恢复药水(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rej4] +_id="rej4" +_type="item" +abillist="AIp4" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreaterRejuvPotion.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hotkey="R" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=1 +name="大型恢复药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=119 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买大型恢复药水(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rej5] +_id="rej5" +_type="item" +abillist="AIp5" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLesserRejuvScroll.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复周围单位的生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="R" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=1 +name="小型恢复卷轴 " +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=129 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买小型恢复卷轴(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄以及周围单位点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rej6] +_id="rej6" +_type="item" +abillist="AIp6" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreaterRejuvScroll.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrg" +description="恢复周围单位的生命值和魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="R" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=1 +name="大型恢复卷轴 " +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=130 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=0 +stockregen=120 +stockstart=0 +tip="购买大型恢复卷轴(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄以及周围单位点的生命值和点的魔法值。" +usable=1 +uses=1 + +[rhe1] +_id="rhe1" +_type="item" +abillist="APh1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIha" +description="恢复英雄周围单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=100 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="小型治疗神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买小型治疗神符(|cffffcc00H|r)" +ubertip="治疗所有附近友方非机械单位点生命值。" +usable=1 +uses=1 + +[rhe2] +_id="rhe2" +_type="item" +abillist="APh2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIha" +description="恢复英雄周围单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=200 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="治疗神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买治疗神符(|cffffcc00H|r)" +ubertip="治疗所有附近友方非机械单位点生命值。" +usable=1 +uses=1 + +[rhe3] +_id="rhe3" +_type="item" +abillist="APh3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIha" +description="恢复英雄周围单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=300 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="大型治疗神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买大型治疗神符(|cffffcc00H|r)" +ubertip="给附近所有非机械友军单位治疗点生命值。" +usable=1 +uses=1 + +[rhth] +_id="rhth" +_type="item" +abillist="AIl2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPeriapt1.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIml" +description="增加英雄的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="H" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="卡嘉医疗宝石" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=128 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买卡嘉医疗宝石(|cffffcc00H|r)" +ubertip="增加点的生命值。" +usable=0 +uses=0 + +[rin1] +_id="rin1" +_type="item" +abillist="AIi3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMantleOfIntelligence.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIi3" +description="增加英雄3点的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="I" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="智力斗篷 +3" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=23 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买智力斗篷 +3(|cffffcc00I|r)" +ubertip="增加英雄3点的智力。" +usable=0 +uses=0 + +[rlif] +_id="rlif" +_type="item" +abillist="Arel" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingSkull.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Arel" +description="能加快英雄生命值的恢复速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="R" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="恢复指环" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=42 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买恢复指环(|cffffcc00R|r)" +ubertip="提高英雄每秒 点的生命值恢复速度。" +usable=0 +uses=0 + +[rma2] +_id="rma2" +_type="item" +abillist="APmg" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImr" +description="恢复英雄周围单位的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=300 +hotkey="M" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="大型魔法神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买大型魔法神符(|cffffcc00M|r)" +ubertip="给附近所有友军单位恢复点魔法值。" +usable=1 +uses=1 + +[rman] +_id="rman" +_type="item" +abillist="APmr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImr" +description="恢复英雄周围单位的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=100 +hotkey="M" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买魔法神符(|cffffcc00M|r)" +ubertip="周围的友军单位恢复点魔法值。" +usable=1 +uses=1 + +[rnec] +_id="rnec" +_type="item" +abillist="AIrd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRodOfNecromancy.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrd" +description="从一具死尸中召唤出两个骷髅战士。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="R" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="巫术妖棍" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=86 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买巫术妖棍(|cffffcc00R|r)" +ubertip="从一具死尸中召唤出两个骷髅战士。|n可使用次。" +usable=1 +uses=4 + +[rnsp] +_id="rnsp" +_type="item" +abillist="AIx1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoldRing.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIx1" +description="增加1点的力量,敏捷度和智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="优越之戒" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=25 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买优越之戒" +ubertip="增加英雄1点的智力,敏捷度和力量。" +usable=0 +uses=0 + +[rots] +_id="rots" +_type="item" +abillist="AIwm,AIx2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWitchDoctorAdept.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANwm" +description="|cff87ceeb特有的消耗性物品|r|n能召唤出两栖鱼人。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="海之权杖" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买海之权杖(|cffffcc00R|r)" +ubertip="|cff87ceeb特有的消耗性物品|r|n能召唤个两栖鱼人人来为你战斗。同时能增加英雄2点的智力,力量和敏捷度。|n包含次使用次数。" +usable=1 +uses=5 + +[rre1] +_id="rre1" +_type="item" +abillist="APrl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrs" +description="恢复你死亡单位的生命,继续战斗。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=100 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="小型复活神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买小型复活神符" +ubertip="恢复你附近死亡的单位点生命值。" +usable=1 +uses=1 + +[rre2] +_id="rre2" +_type="item" +abillist="APrr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrs" +description="恢复你死亡单位的生命,继续战斗。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=300 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="大型复活神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买大型复活神符" +ubertip="恢复你附近死亡的单位点生命值。" +usable=1 +uses=1 + +[rreb] +_id="rreb" +_type="item" +abillist="AIrb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrb" +description="把怪物变成你的。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=250 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="重生神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买重生神符(|cffffcc00B|r)" +ubertip="把拥有这个神符的怪物置于控制之下。" +usable=1 +uses=1 + +[rres] +_id="rres" +_type="item" +abillist="APra" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIra" +description="恢复周围单位的魔法值和生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=250 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="恢复神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买恢复神符(|cffffcc00R|r)" +ubertip="恢复英雄周围区域内非机械单位 点生命值和 魔法值。" +usable=1 +uses=1 + +[rspd] +_id="rspd" +_type="item" +abillist="APsa" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsp" +description="增加单位的移动速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=200 +hotkey="D" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="速度神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买速度神符(|cffffcc00D|r)" +ubertip="增加附近所有联盟单位移动速度到最大移动速度。|n持续 秒。" +usable=1 +uses=1 + +[rspl] +_id="rspl" +_type="item" +abillist="Aspp" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aspp" +description="灵魂连在一起的单位会共同承受伤害。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵魂锁链神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买灵魂锁链神符" +ubertip="将几个单位的灵魂联系在一起,使得%某个单位受到的伤害被分配到其他灵魂连在一起的单位身上。" +usable=1 +uses=1 + +[rsps] +_id="rsps" +_type="item" +abillist="ANse" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANse" +description="给予附近的单位一个阻挡敌人魔法的护盾。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=300 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="护盾神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买护盾神符(|cffffcc00S|r)" +ubertip="给附近友军单位一个魔法护盾,能够抵御下一次敌人施在他们身上的负面魔法。" +usable=1 +uses=1 + +[rst1] +_id="rst1" +_type="item" +abillist="AIs3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGauntletsOfOgrePower.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs3" +description="增加英雄3点的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="S" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="食人鬼手套 +3" +oldlevel=2 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=58 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买食人鬼手套 +3(|cffffcc00S|r)" +ubertip="增加英雄3点的力量。" +usable=0 +uses=0 + +[rugt] +_id="rugt" +_type="item" +abillist="AId3,AIs3" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNImprovedUnholyStrength.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIab" +description="能增加力量和护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=725 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="神秘手套" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买神秘手套(|cffffcc00R|r)" +ubertip="当携带的时候增加英雄3点的力量和护甲。" +usable=0 +uses=0 + +[rump] +_id="rump" +_type="item" +abillist="AItg,AIbx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGatherGold.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHbh" +description="增加英雄的攻击力并给予其一定的概率来击晕对手。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="生锈的矿铲" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买生锈的矿铲(|cffffcc00R|r)" +ubertip="这把笨重的铲子有着巨大的力量。增加英雄点的攻击力并给予其%的概率来击晕对手。" +usable=0 +uses=0 + +[rwat] +_id="rwat" +_type="item" +abillist="APwt" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRune.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="APwt" +description="在此地建立一个无敌的岗哨守卫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\runicobject\\runicobject.mdl" +goldcost=75 +hotkey="W" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="岗哨神符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=80.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买岗哨神符(|cffffcc00W|r)" +ubertip="在激活后建立一个无敌的岗哨守卫。" +usable=1 +uses=1 + +[rwiz] +_id="rwiz" +_type="item" +abillist="AIrm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSobiMask.blp" +"buttonpos:1"=2 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrm" +description="能加快英雄的魔法值恢复速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="B" +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="艺人面罩" +oldlevel=4 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=64 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买艺人面罩(|cffffcc00B|r)" +ubertip="提高英雄 % 的魔法值恢复速度。" +usable=0 +uses=0 + +[sand] +_id="sand" +_type="item" +abillist="AIan" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSnazzyScrollPurple.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIan" +description="操作死尸来为你战斗。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="操作死尸卷轴" +oldlevel=8 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=133 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买操作死尸卷轴" +ubertip="复活周围个单位来为你战斗。持续时间为秒。" +usable=1 +uses=1 + +[sbch] +_id="sbch" +_type="item" +abillist="AIav" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBoneChimes.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AUav" +description="附近单位能将自己的攻击力转换成生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="天灾骨钟" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=71 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买天灾骨钟" +ubertip="使得近战型英雄和附近的近战型单位能将他们自己%的攻击力转换成生命值。|n不能和吸血光环同时使用。" +usable=0 +uses=0 + +[sbok] +_id="sbok" +_type="item" +abillist="Aspb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpellBookBLS.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aspb" +description="书中所包含的魔法技能是随机出现的。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=325 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="魔法书" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买魔法书(|cffffcc00B|r)" +ubertip="书中所包含的魔法技能是随机出现的。" +usable=1 +uses=0 + +[schl] +_id="schl" +_type="item" +abillist="AIhl,AIgx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPriestAdept.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHhb" +description="一把具有医疗能力的权杖。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=4200 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="医疗权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买医疗权杖(|cffffcc00H|r)" +ubertip="能治愈一个友军单位。同时也能加快英雄和周围单位%的生命值恢复速度。" +usable=1 +uses=0 + +[sclp] +_id="sclp" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSelectHeroOn.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="开启一个秘密关卡!" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\QuestionMark\\QuestionMark.mdl" +goldcost=75 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="秘密关卡激活" +oldlevel=0 +pawnable=0 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买秘密关卡激活" +ubertip="开启一个秘密关卡!" +usable=0 +uses=1 + +[scul] +_id="scul" +_type="item" +abillist="AIan" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBansheeMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIan" +description="能复活尸体。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=950 +hotkey="I" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="邪恶军团卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买邪恶军团卷轴(|cffffcc00I|r)" +ubertip="复活附近具尸体来为你战斗。持续秒。" +usable=1 +uses=1 + +[sehr] +_id="sehr" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHeartOfSearinox.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="赛瑞诺克斯之心。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="赛瑞诺克斯之心" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买赛瑞诺克斯之心" +ubertip="赛瑞诺克斯之心能赋予圆球龙的力量。" +usable=0 +uses=0 + +[sfog] +_id="sfog" +_type="item" +abillist="AIfg" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHornOfFog.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aclf" +description="能让敌人的防御塔失去攻击能力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="C" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="乌云号角" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=13 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买乌云号角(|cffffcc00C|r)" +ubertip="能让英雄施放乌云技能,从而可以使得一定范围内敌人所有的防御塔在秒内都失去攻击能力。" +usable=1 +uses=0 + +[shar] +_id="shar" +_type="item" +abillist="AIir" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNIceShard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIir" +description="召唤冰冻幽灵。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="冰冻碎片" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=135 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买冰冻碎片" +ubertip="召唤出一个冰冻幽灵。冰冻幽灵持续秒。" +usable=1 +uses=1 + +[shas] +_id="shas" +_type="item" +abillist="AIsa" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHaste.blp" +"buttonpos:1"=1 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsp" +description="增加单位的移动速度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="S" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="速度卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=34 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=60 +stockstart=0 +tip="购买速度卷轴(|cffffcc00S|r)" +ubertip="让英雄和周围的单位拥有最快的移动速度。|n持续秒。" +usable=1 +uses=1 + +[shcw] +_id="shcw" +_type="item" +abillist="AIlx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNShamanMaster.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIll" +description="|cff8b00ff特有的|r|n增加攻击力和驱散魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=950 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="萨满利爪" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买萨满利爪(|cffffcc00S|r)" +ubertip="|cff8b00ff特有的|r|n这装备是在萨满学完所有技能之后得到的。能增加点的攻击力。并使得英雄有一定的概率来驱散魔法和在 秒内减慢敌人的移动速度。" +usable=0 +uses=0 + +[shdt] +_id="shdt" +_type="item" +abillist="AIlf,AImz,AId0,AIcf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLightningShield.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIcf" +description="|cffff8c00宝物|r|n一个魔法护盾。上面刻着一些圣骑士的规章制度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=9000 +hotkey="D" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="死亡领主护盾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买死亡领主护盾(|cffffcc00D|r)" +ubertip="|cffff8c00神器|r|n使得英雄陷于火焰的包围之中,对周围的单位造成每秒的伤害。同时增加英雄点的护甲,点的生命值,点的魔法值。|n|cffffcc00历史|r|n|cffffdead当阿尔塞斯开始屠杀自己的子民的时候,死亡领主在洛旦伦大陆许多其他的地方也实行着同样的罪行。|r" +usable=0 +uses=0 + +[shea] +_id="shea" +_type="item" +abillist="AIha" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfTownPortal.blp" +"buttonpos:1"=1 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIha" +description="恢复英雄周围单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hotkey="H" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="医疗卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=73 +requires="unp2" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=440 +tip="购买医疗卷轴(|cffffcc00H|r)" +ubertip="能恢复英雄周围非机械单位点的生命值。" +usable=1 +uses=1 + +[shen] +_id="shen" +_type="item" +abillist="AId2,AIlz" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNThoriumArmor.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIml" +description="增加护甲和生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=650 +hotkey="E" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="施魔护盾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买施魔护盾(|cffffcc00E|r)" +ubertip="增加英雄点的护甲和点的生命值。" +usable=0 +uses=0 + +[shhn] +_id="shhn" +_type="item" +abillist="AId8,AIcd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanArmorUpThree.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOac" +description="|cff8b00ff特有的|r|n一个海军指挥官的护盾。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=3350 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="荣誉护盾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买荣誉护盾(|cffffcc00H|r)" +ubertip="|cff8b00ff特有的|r|n增加周围单位%的攻击力。同时增加英雄点的护甲。" +usable=0 +uses=0 + +[shrs] +_id="shrs" +_type="item" +abillist="AIhx" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMonsterLure.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIhe" +description="恢复生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="烤肉" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买烤肉(|cffffcc00S|r)" +ubertip="一块散发着微光的烤肉。在吃了之后能恢复点的生命值 。|n包含次使用次数。" +usable=1 +uses=6 + +[shtm] +_id="shtm" +_type="item" +abillist="AIps" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNEntrapmentWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aprg" +description="一件强大的兽族宝物。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="H" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="萨满图腾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=37 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买萨满图腾(|cffffcc00H|r)" +ubertip="萨满图腾中蕴含着萨满祭司强大的魔法力量。能让携带者施放净化魔法。" +usable=1 +uses=0 + +[shwd] +_id="shwd" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNShimmerWeed.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一种荧光植物。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\Shimmerweed\\Shimmerweed.mdl" +goldcost=200 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="荧光草" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买荧光草(|cffffcc00S|r)" +ubertip="令人惊奇的植物,据说能够奇迹般地增强智力。" +usable=0 +uses=0 + +[silk] +_id="silk" +_type="item" +abillist="AIwb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderSilkBroach.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIwb" +description="捕获某个敌方的空中单位。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="蜘蛛丝饰针" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=81 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买蜘蛛丝饰针(|cffffcc00S|r)" +ubertip="将敌人的空中单位捕获到地面,被捕获到地面的空中单位能被地面单位攻击。|n可使用次。" +usable=1 +uses=4 + +[skrt] +_id="skrt" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfCorruption.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="灵魂宴席-吞噬者" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="骸骨宝物" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买骸骨宝物" +ubertip="这件古老的人工制品能够诱陷那些死于暴力的不死族,迫使他们为了永恒的生命重新体验生命的最后瞬间。" +usable=0 +uses=0 + +[sksh] +_id="sksh" +_type="item" +abillist="AIs1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGrimWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs1" +description="增加英雄1点的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="防护面具" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=26 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买防护面具" +ubertip="增加英雄1点的力量。" +usable=0 +uses=0 + +[skul] +_id="skul" +_type="item" +abillist="Ablp" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSacrificialSkull.blp" +"buttonpos:1"=2 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ablp" +description="在指定的区域创造出一片荒芜之地来。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="K" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="献祭头骨" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +requires="ugrv" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买献祭头骨(|cffffcc00K|r)" +ubertip="在指定的区域创造出一片荒芜之地来。" +usable=1 +uses=1 + +[sman] +_id="sman" +_type="item" +abillist="AImr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfProtection.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AImr" +description="恢复英雄周围单位的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="M" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="魔法卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=65 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=5 +stockregen=120 +stockstart=440 +tip="购买魔法卷轴(|cffffcc00M|r)" +ubertip="能恢复英雄周围单位 点的魔法值。" +usable=1 +uses=1 + +[sneg] +_id="sneg" +_type="item" +abillist="AIds" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfNegation.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIds" +description="驱散一定区域内的魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="N" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="否决权杖" +oldlevel=3 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=112 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买否决权杖(|cffffcc00N|r)" +ubertip="能驱散一定范围内所有的魔法效果。|n|cffffcc00对召唤出来的单位能造成点的伤害。|r" +usable=1 +uses=0 + +[sor1] +_id="sor1" +_type="item" +abillist="AItg,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +1" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=9 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你1点的攻击力。" +usable=0 +uses=0 + +[sor2] +_id="sor2" +_type="item" +abillist="AIth,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +2" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=15 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你2点的攻击力。" +usable=0 +uses=0 + +[sor3] +_id="sor3" +_type="item" +abillist="AIat,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +3" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=17 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你3点的攻击力。" +usable=0 +uses=0 + +[sor4] +_id="sor4" +_type="item" +abillist="AIti,AId1,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=300 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +4" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=51 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你4点的攻击力和1点的护甲。" +usable=0 +uses=0 + +[sor5] +_id="sor5" +_type="item" +abillist="AItj,AId1,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=350 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +5" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=54 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你5点的攻击力和1点的护甲。" +usable=0 +uses=0 + +[sor6] +_id="sor6" +_type="item" +abillist="AIt6,AId1,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +6" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=59 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你6点的攻击力和1点的护甲。" +usable=0 +uses=0 + +[sor7] +_id="sor7" +_type="item" +abillist="AItk,AId2,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=550 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +7" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=88 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你7点的攻击力和2点的护甲。" +usable=0 +uses=0 + +[sor8] +_id="sor8" +_type="item" +abillist="AItl,AId2,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=700 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +8" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=100 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你8点的攻击力和2点的护甲。" +usable=0 +uses=0 + +[sor9] +_id="sor9" +_type="item" +abillist="AIt9,AId2,Arel,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=900 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +9" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=101 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你9点的攻击力和2点的护甲,并能加快生命值恢复速度。" +usable=0 +uses=0 + +[sora] +_id="sora" +_type="item" +abillist="AItn,AId3,Arel,AIdn" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="古尔丹影子之球" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1250 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球 +10" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=115 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球(|cffffcc00O|r)" +ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你10点的攻击力和3点的护甲,并能加快生命值恢复速度。" +usable=0 +uses=0 + +[sorf] +_id="sorf" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrbOfDarkness.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="影子之球的碎片" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\CrystalShard\\CrystalShard.mdl" +goldcost=200 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子之球碎片" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买影子之球碎片(|cffffcc00O|r)" +ubertip="一件宝物的碎片" +usable=0 +uses=0 + +[soul] +_id="soul" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUsedSoulGem.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="这是一个受困的灵魂。" +drop=0 +droppable=0 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灵魂" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买灵魂" +ubertip="一个被灵魂宝石所俘获的灵魂。" +usable=0 +uses=0 + +[spre] +_id="spre" +_type="item" +abillist="ANpr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfPreservation.blp" +"buttonpos:1"=3 +"buttonpos:2"=1 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANpr" +description="将目标单位传送回城。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="E" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="保存权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=4 +requires="etoa" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=0 +tip="购买保存权杖(|cffffcc00E|r)" +ubertip="将一个目标单位传送到最高等级的主基地。" +usable=1 +uses=0 + +[sprn] +_id="sprn" +_type="item" +abillist="AIa1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNRingVioletSpider.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIa1" +description="增加英雄1点的敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="蜘蛛戒指" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=19 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买蜘蛛戒指" +ubertip="增加英雄1点的敏捷度。" +usable=0 +uses=0 + +[spro] +_id="spro" +_type="item" +abillist="AIda" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScroll.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIda" +description="暂时提高周围单位的护甲。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="R" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="守护卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=103 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=440 +tip="购买守护卷轴(|cffffcc00R|r)" +ubertip="在秒内提高英雄周围单位点的护甲。" +usable=1 +uses=1 + +[spsh] +_id="spsh" +_type="item" +abillist="ANss" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpellShieldAmulet.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANss" +description="驱散敌人的魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="A" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="魔法护盾护身符" +oldlevel=5 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=113 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="魔法盾护身符(|cffffcc00A|r)" +ubertip="每隔秒就阻止敌人向自己的英雄施放魔法。" +usable=0 +uses=0 + +[srbd] +_id="srbd" +_type="item" +abillist="AIfw,AIcs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNArcaniteMelee.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOcr" +description="能增加攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1650 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="灼热之刀" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买灼热之刀(|cffffcc00B|r)" +ubertip="增加英雄点的火焰攻击力。英雄的攻击也带有溅射效果,能对目标周围的单位同时造成伤害。同时英雄有%的概率能对目标造成倍于普通攻击的伤害。" +usable=0 +uses=0 + +[sreg] +_id="sreg" +_type="item" +abillist="AIsl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfRegenerationGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsl" +description="恢复周围单位的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="恢复卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=70 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=90 +stockstart=0 +tip="购买恢复卷轴(|cffffcc00R|r)" +ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄周围所有非机械单位点的生命值。" +usable=1 +uses=1 + +[sres] +_id="sres" +_type="item" +abillist="AIra" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollOfHealing.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIra" +description="恢复周围单位的魔法值和生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hotkey="R" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="恢复卷轴" +oldlevel=7 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=144 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买恢复卷轴(|cffffcc00R|r)" +ubertip="能恢复英雄周围非机械单位点的生命值和点的魔法值。" +usable=1 +uses=1 + +[sror] +_id="sror" +_type="item" +abillist="AIrr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSnazzyScrollGreen.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aroa" +description="能提高附近单位的攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="野兽卷轴" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=63 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买野兽卷轴" +ubertip="在秒内提高附近友军单位%的攻击力。" +usable=1 +uses=1 + +[srrc] +_id="srrc" +_type="item" +abillist="AIrs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSnazzyScroll.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIrs" +description="恢复你死亡单位的生命,继续战斗。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="复活卷轴" +oldlevel=8 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=134 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买复活卷轴" +ubertip="能复活你个死去的单位。" +usable=1 +uses=1 + +[srtl] +_id="srtl" +_type="item" +abillist="AIsx,AItf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpThree.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIas" +description="|cffff8c00宝物|r|n这把巨大的斧子上面有着很多的刮痕和兽族的符文。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=5500 +hotkey="S" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="瑟拉思尔" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买瑟拉思尔(|cffffcc00S|r)" +ubertip="|cffff8c00神器|r|n增加英雄%的攻击速度和点的攻击力。|n|cffffcc00历史|r|n|cffffdead这把巨大的战斧是为了卡斯德拉克所造。并在血河战争中被是使用。随着黑疤部落的灭亡,这把战斧也最终不知了去向。那滋盖尔是卡斯德拉克唯一一个还健在的亲戚。|r" +usable=0 +uses=0 + +[ssan] +_id="ssan" +_type="item" +abillist="ANsa" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfSanctuary.blp" +"buttonpos:1"=1 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANsa" +description="传送并医疗某个单位。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=250 +hotkey="N" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="避难权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=3 +requires="hcas" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买避难权杖(|cffffcc00N|r)" +ubertip="T将目标单位传送到你最高等级的主基地,让其处于昏晕状态并以每秒点的速度来恢复其生命值直到该单位补满生命值为止。" +usable=1 +uses=0 + +[ssil] +_id="ssil" +_type="item" +abillist="AIse" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfSilence.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="ANsi" +description="能阻止敌人施放魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="E" +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="沉默权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=6 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买沉默权杖(|cffffcc00E|r)" +ubertip="阻止一定区域内所有敌人施放魔法。" +usable=1 +uses=0 + +[stel] +_id="stel" +_type="item" +abillist="AImt" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStaffOfTeleportation.blp" +"buttonpos:1"=3 +"buttonpos:2"=1 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AHmt" +description="能传送英雄。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=100 +hotkey="E" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="传送权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=220 +tip="购买传送权杖(|cffffcc00E|r)" +ubertip="将英雄传送到目标地面单位或者建筑物。" +usable=1 +uses=0 + +[stpg] +_id="stpg" +_type="item" +abillist="AIpz" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPenguin.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIha" +description="一个能发出唧唧声的可爱时钟企鹅玩具。" +drop=0 +droppable=1 +file="Units\\Critters\\Penguin\\Penguin.mdl" +goldcost=450 +hotkey="P" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="时钟企鹅" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买时钟企鹅(|cffffcc0P|r)" +ubertip="这个可爱的企鹅玩具最初由地精工人萨拉哈尔为半人马所造。由于半人马从来都没有见过企鹅的样子,所以他们对其充满着敬畏之情并将它们放在祭坛里进行膜拜。" +usable=1 +uses=0 + +[stre] +_id="stre" +_type="item" +abillist="AInd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandSkull.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AUan" +description="能复活一个尸体。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="鼓舞权杖" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买鼓舞权杖(|cffffcc00R|r)" +ubertip="复活附近几个尸体来为你战斗。持续秒。" +usable=1 +uses=0 + +[stwa] +_id="stwa" +_type="item" +abillist="AItj" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpOne.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIat" +description="能增加攻击力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="W" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="战斧" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买战斧(|cffffcc00W|r)" +ubertip="增加英雄点的攻击力。" +usable=0 +uses=0 + +[stwp] +_id="stwp" +_type="item" +abillist="AItp" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNScrollUber.blp" +"buttonpos:1"=2 +"buttonpos:2"=1 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AItp" +description="将单位传送到己方或者友军的城镇。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=350 +hotkey="T" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="回城卷轴" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=123 +requires="TWN2" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=120 +stockstart=440 +tip="购买回城卷轴(|cffffcc00T|r)" +ubertip="将英雄和英雄周围的单位传送到指定的一个己方或者友军城镇。" +usable=1 +uses=1 + +[tbak] +_id="tbak" +_type="item" +abillist="AIbh" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbh" +description="建造国王祭坛。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=180 +hotkey="K" +hp=75 +ignorecd=0 +level=0 +lumbercost=50 +morph=0 +name="微型国王祭坛" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买微型国王祭坛(|cffffcc00K|r)" +ubertip="在目标地点建造一个国王祭坛。" +usable=1 +uses=1 + +[tbar] +_id="tbar" +_type="item" +abillist="AIbs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanBarracks.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="建造一个兵营。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=160 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=50 +morph=0 +name="微型兵营" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买微型兵营(|cffffcc00B|r)" +ubertip="在目标地点建造一个兵营。" +usable=1 +uses=1 + +[tbsm] +_id="tbsm" +_type="item" +abillist="AIbb" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBlacksmith.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="建造一个铁匠铺。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="B" +hp=75 +ignorecd=0 +level=0 +lumbercost=50 +morph=0 +name="微型铁匠铺" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买微型铁匠铺(|cffffcc00B|r)" +ubertip="在目标地点建造一个铁匠铺。" +usable=1 +uses=1 + +[tcas] +_id="tcas" +_type="item" +abillist="AIbl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTinyCastle.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="能在目标区域内创建出一座城堡来。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=800 +hotkey="A" +hp=75 +ignorecd=0 +level=0 +lumbercost=300 +morph=0 +name="小城堡" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +requires="hcas" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买小城堡(|cffffcc00A|r)" +ubertip="能在目标区域内创建出一座城堡来。" +usable=1 +uses=1 + +[tdex] +_id="tdex" +_type="item" +abillist="AIam" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIam" +description="能永久地增加英雄敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeGreen\\tomeGreen.mdl" +goldcost=150 +hotkey="A" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="敏捷之书" +oldlevel=1 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买敏捷之书(|cffffcc00A|r)" +ubertip="永久性地提高英雄点的敏捷度。" +usable=1 +uses=1 + +[tdx2] +_id="tdx2" +_type="item" +abillist="AIgm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIgm" +description="能永久地增加英雄敏捷度。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeGreen\\tomeGreen.mdl" +goldcost=300 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="敏捷之书 +2" +oldlevel=5 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买敏捷之书+2" +ubertip="能永久地增加英雄2点的敏捷度。" +usable=1 +uses=1 + +[tels] +_id="tels" +_type="item" +abillist="AIuv" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTelescope.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ault" +description="能提高夜间的视野范围。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="T" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="地精夜视镜" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=5 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +tip="购买地精夜视镜(|cffffcc00T|r)" +ubertip="能提高英雄在夜间的视野范围。" +usable=0 +uses=0 + +[texp] +_id="texp" +_type="item" +abillist="AIem" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTomeBrown.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIem" +description="给予英雄额外的经验值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeBrown\\tomeBrown.mdl" +goldcost=500 +hotkey="E" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="经验之书" +oldlevel=5 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买经验之书(|cffffcc00E|r)" +ubertip="给予英雄 点的经验值。" +usable=1 +uses=1 + +[tfar] +_id="tfar" +_type="item" +abillist="AIbf" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFarm.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="建造一个农场。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=75 +hotkey="F" +hp=75 +ignorecd=0 +level=0 +lumbercost=20 +morph=0 +name="微型农场" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买微型农场(|cffffcc00F|r)" +ubertip="在目标地点建造一个农场。" +usable=1 +uses=1 + +[tgrh] +_id="tgrh" +_type="item" +abillist="AIbg" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreathall.blp" +"buttonpos:1"=1 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="创建出一道巨大的墙壁来。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hotkey="G" +hp=75 +ignorecd=0 +level=3 +lumbercost=185 +morph=0 +name="小型的大厅" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +requires="ofrt" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买小型的大厅(|cffffcc00G|r)" +ubertip="在目标区域创建出一座大厅。对于人族, 暗夜精灵族和不死族来讲则分别会创建出城镇大厅,生命之树和大墓地。" +usable=1 +uses=1 + +[tgxp] +_id="tgxp" +_type="item" +abillist="AIe2" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNManual3.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIe2" +description="给予英雄额外的经验值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeBrown\\tomeBrown.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="超级经验之书" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买超级经验之书" +ubertip="给予英雄点的经验值。" +usable=1 +uses=1 + +[thdm] +_id="thdm" +_type="item" +abillist="AIcl" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNEnchantedGemstone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOcl" +description="|cff32cd32特有的|r|n大型的钻石。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1190 +hotkey="T" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雷霆蜥蜴钻石" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买雷霆蜥蜴钻石(|cffffcc00T|r)" +ubertip="|cff32cd32特有的|r|n能射出闪电之箭对多个敌人造成伤害。" +usable=1 +uses=0 + +[thle] +_id="thle" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardEgg.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="巨蜥蜴之蛋。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\ThunderLizardEgg\\ThunderLizardEgg.mdl" +goldcost=200 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="雷霆蜥蜴之蛋" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买雷霆蜥蜴之蛋" +ubertip="这只巨大的蛋如果没有母体的温度是不会孵化的。" +usable=0 +uses=0 + +[tin2] +_id="tin2" +_type="item" +abillist="AItm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AItm" +description="能永久地增加英雄的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeBlue\\tomeBlue.mdl" +goldcost=300 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="智力之书 +2" +oldlevel=5 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买智力之书 +2" +ubertip="能永久地增加英雄2点的智力。" +usable=1 +uses=1 + +[tint] +_id="tint" +_type="item" +abillist="AIim" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIim" +description="能永久地增加英雄的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeBlue\\tomeBlue.mdl" +goldcost=150 +hotkey="T" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="智力之书" +oldlevel=1 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买智力之书(|cffffcc00T|r)" +ubertip="能永久地增加英雄点的智力。" +usable=1 +uses=1 + +[tkno] +_id="tkno" +_type="item" +abillist="AIlm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Artifact" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIlm" +description="能提高英雄的经验等级。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeBrown\\tomeBrown.mdl" +goldcost=1250 +hotkey="P" +hp=75 +ignorecd=0 +level=8 +lumbercost=0 +morph=0 +name="能量之书" +oldlevel=9 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买能量之书(|cffffcc00P|r)" +ubertip="能提高英雄个等级。" +usable=1 +uses=1 + +[tlum] +_id="tlum" +_type="item" +abillist="AIbr" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanLumberMill.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="建造一座伐木场。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="R" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="微型伐木场" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买微型伐木场(|cffffcc00R|r)" +ubertip="在目标地点建造一座伐木场。" +usable=1 +uses=1 + +[tmmt] +_id="tmmt" +_type="item" +abillist="AIs1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNEntrapmentWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIs1" +description="增加英雄1点的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="力量图腾" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=28 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买力量图腾" +ubertip="增加英雄1点的力量。" +usable=0 +uses=0 + +[tmsc] +_id="tmsc" +_type="item" +abillist="AIdp,AImz" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNecromancerAdept.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AUdp" +description="|cff8b00ff特有的|r|n一本看上去充满着邪气的书,上面有着亡灵巫师的符文。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=1250 +hotkey="T" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="牺牲之书" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=180 +stockstart=0 +tip="购买牺牲之书(|cffffcc00T|r)" +ubertip="|cff8b00ff特有的|r|n牺牲附近的一个非英雄单位来补充英雄的生命值。在装备之后也能增加英雄点的魔法值。" +usable=1 +uses=0 + +[totw] +_id="totw" +_type="item" +abillist="AIff" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIff" +description="召唤两栖鱼人。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="野性护符" +oldlevel=7 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=84 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买野性护符" +ubertip="这块神秘的石头能召唤出一两栖鱼人来为你战斗。|n一共可以召唤次。|n持续秒。" +usable=1 +uses=3 + +[tpow] +_id="tpow" +_type="item" +abillist="AIxm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIxm" +description="增加英雄1点的智力,敏捷度和力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tome\\tome.mdl" +goldcost=300 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="知识之书" +oldlevel=5 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买知识之书" +ubertip="增加英雄1点的智力,敏捷度和力量。" +usable=1 +uses=1 + +[tret] +_id="tret" +_type="item" +abillist="Aret" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTomeOfRetraining.blp" +"buttonpos:1"=0 +"buttonpos:2"=2 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aret" +description="取消英雄所学的所有魔法,让英雄能重新选择技能。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=300 +hotkey="O" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="再训练之书" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +tip="购买再训练之书(|cffffcc00O|r)" +ubertip="取消英雄所学的所有魔法,让英雄能重新选择技能。" +usable=1 +uses=1 + +[tsct] +_id="tsct" +_type="item" +abillist="AIbt" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanWatchTower.blp" +"buttonpos:1"=3 +"buttonpos:2"=1 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIbl" +description="能在指定的区域内创建出一座哨塔来。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=30 +hotkey="V" +hp=75 +ignorecd=0 +level=1 +lumbercost=20 +morph=0 +name="象牙塔" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=0 +requires="hkee" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +tip="购买象牙塔(|cffffcc00V|r)" +ubertip="能在指定的区域内创建出一座哨塔来。" +usable=1 +uses=1 + +[tst2] +_id="tst2" +_type="item" +abillist="AInm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AInm" +description="能永久性地提高英雄的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeRed\\tomeRed.mdl" +goldcost=300 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="力量之书 +2" +oldlevel=5 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买力量之书 +2" +ubertip="增加2点的力量。" +usable=1 +uses=1 + +[tstr] +_id="tstr" +_type="item" +abillist="AIsm" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTome.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="PowerUp" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIsm" +description="能永久性地提高英雄的力量。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\tomeRed\\tomeRed.mdl" +goldcost=150 +hotkey="S" +hp=75 +ignorecd=0 +level=1 +lumbercost=0 +morph=0 +name="力量之书" +oldlevel=1 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=1 +prio=200 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买力量之书(|cffffcc00S|r)" +ubertip="能永久性地提高英雄点的力量。" +usable=1 +uses=1 + +[uflg] +_id="uflg" +_type="item" +abillist="AIfe" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadCaptureFlag.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +description="能在某些特殊的场景内获得。" +drop=1 +droppable=1 +file="Objects\\InventoryItems\\UndeadCaptureFlag\\UndeadCaptureFlag.mdl" +goldcost=1000 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="不死族旗帜" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买不死族旗帜" +ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +usable=0 +uses=0 + +[vamp] +_id="vamp" +_type="item" +abillist="AIpv" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPotionOfVampirism.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIpv" +description="增加英雄的攻击力,且让英雄在攻击的同时能增加自己的生命值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=75 +hotkey="V" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="吸血药水" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=39 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=45 +stockstart=0 +tip="购买吸血药水(|cffffcc00V|r)" +ubertip="增加英雄点的攻击力,且让英雄在攻击的同时能增加自己的生命值。|n持续秒。" +usable=1 +uses=1 + +[vddl] +_id="vddl" +_type="item" +abillist="AIi1" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNShadowPact.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Miscellaneous" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIi1" +description="增加英雄1点的智力。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=50 +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="巫毒玩偶" +oldlevel=0 +pawnable=1 +perishable=0 +pickrandom=0 +powerup=0 +prio=16 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买巫毒玩偶" +ubertip="增加英雄1点的智力。" +usable=0 +uses=0 + +[ward] +_id="ward" +_type="item" +abillist="AIcd" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDrum.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Permanent" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AOac" +description="增加附近单位的作战效率。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=500 +hotkey="W" +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="战歌之鼓" +oldlevel=7 +pawnable=1 +perishable=0 +pickrandom=1 +powerup=0 +prio=38 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买战歌之鼓(|cffffcc00W|r)" +ubertip="能增加周围单位 %的攻击力。|n不能和命令光环同时使用。" +usable=0 +uses=0 + +[wcyc] +_id="wcyc" +_type="item" +abillist="AIcy" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandOfCyclone.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Acyc" +description="施放飓风魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=450 +hp=75 +ignorecd=0 +level=4 +lumbercost=0 +morph=0 +name="飓风权杖" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=30 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买飓风权杖" +ubertip="允许英雄施放飓风。飓风将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。" +usable=1 +uses=3 + +[whwd] +_id="whwd" +_type="item" +abillist="AIhw" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ahwd" +description="召唤治疗守卫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=600 +hp=75 +ignorecd=0 +level=5 +lumbercost=0 +morph=0 +name="治疗守卫" +oldlevel=6 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=85 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买治疗守卫" +ubertip="放置一个守卫来治疗周围的单位持续时间为 秒。|n一共可以使用次。" +usable=1 +uses=3 + +[wild] +_id="wild" +_type="item" +abillist="AIuw" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAmuletOftheWild.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIuw" +description="召唤熊怪。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=750 +hp=75 +ignorecd=0 +level=6 +lumbercost=0 +morph=0 +name="野性护身符" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=136 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买野性护身符" +ubertip="召唤出一个熊怪战士。熊怪持续秒。" +usable=1 +uses=1 + +[will] +_id="will" +_type="item" +abillist="AIil" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWand.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIil" +description="能制造幻象。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="I" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="幻象权杖" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=14 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买幻象权杖(|cffffcc00I|r)" +ubertip="能制造目标单位的一个幻象。幻象不具备任何的攻击力,遭受敌人进攻的伤害值也会翻成原有的 倍。在秒之后或者生命值达到零之后幻象会自动消失。|n一共可以使用 次。" +usable=1 +uses=3 + +[wlsd] +_id="wlsd" +_type="item" +abillist="AIls" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStarWand.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Alsh" +description="能施放闪电护盾魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="闪电护盾权杖" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=8 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=90 +stockstart=0 +tip="购买闪电护盾权杖" +ubertip="使得英雄能在某个单位身上施放闪电护盾魔法,围绕在该单位身上的护盾能对周围的单位造成每秒的伤害。|n一共可以使用次。|n持续秒。" +usable=1 +uses=3 + +[wneg] +_id="wneg" +_type="item" +abillist="AIdi" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandSkull.blp" +"buttonpos:1"=3 +"buttonpos:2"=1 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIdi" +description="驱散一定区域内的魔法。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="N" +hp=75 +ignorecd=1 +level=2 +lumbercost=0 +morph=0 +name="否决权杖" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=110 +requires="unp1" +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=90 +stockstart=0 +tip="购买否决权杖(|cffffcc00N|r)" +ubertip="能驱散一定范围内所有的魔法效果。|n可使用次。|n|cffffcc00对召唤出来的单位能造成 点的伤害。|r" +usable=1 +uses=3 + +[wneu] +_id="wneu" +_type="item" +abillist="AIdc" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandOfNeutralization.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Purchasable" +colorb=255 +colorg=255 +colorr=255 +cooldownid="AIdc" +description="能驱逐魔法效果。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="N" +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="中和权杖" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=0 +powerup=0 +prio=111 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=90 +stockstart=0 +tip="购买中和权杖(|cffffcc00N|r)" +ubertip="投掷出一道魔法能量波,在不同的单位间跳跃次从而驱散各类的魔法效果。|n可使用次。" +usable=1 +uses=4 + +[wolg] +_id="wolg" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWirtsOtherLeg.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="另一条腿。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="O" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="怀特的另一条腿" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买怀特的另一条腿(|cffffcc00O|r)" +ubertip="也许过分热心的冒险者在他的旅途结束之前窥视到了这个,以为它能给予他在屠杀中的最后机会。但他并不知道这能将他领向何处。" +usable=0 +uses=0 + +[woms] +_id="woms" +_type="item" +abillist="Aste" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandOfManaSteal.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Aste" +description="能盗取目标单位的魔法值。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=400 +hotkey="W" +hp=75 +ignorecd=0 +level=3 +lumbercost=0 +morph=0 +name="魔法盗取权杖" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=69 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买魔法盗取权杖(|cffffcc00W|r)" +ubertip="盗取目标单位身上的魔法值。|n一共可以使用次。" +usable=1 +uses=2 + +[wshs] +_id="wshs" +_type="item" +abillist="Ashs" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWandOfShadowSight.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ashs" +description="能让玩家拥有敌方目标单位的视野直到该单位身上的魔法被驱逐。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hotkey="W" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="影子权杖" +oldlevel=0 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=2 +stockregen=60 +stockstart=0 +tip="购买影子权杖(|cffffcc00W|r)" +ubertip="能让玩家拥有敌方目标单位的视野直到该单位身上的魔法被驱逐。|n可使用次。" +usable=1 +uses=2 + +[wswd] +_id="wswd" +_type="item" +abillist="AIsw" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Charged" +colorb=255 +colorg=255 +colorr=255 +cooldownid="Ayeye" +description="召唤岗哨守卫。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=150 +hp=75 +ignorecd=0 +level=2 +lumbercost=0 +morph=0 +name="岗哨守卫" +oldlevel=3 +pawnable=1 +perishable=1 +pickrandom=1 +powerup=0 +prio=0 +scale=1.0 +sellable=1 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买岗哨守卫" +ubertip="在秒内放置一个哨兵守卫来监视一定的区域。|n一共可以使用次。" +usable=1 +uses=3 + +[wtlg] +_id="wtlg" +_type="item" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWirtsLeg.blp" +"buttonpos:1"=0 +"buttonpos:2"=0 +class="Campaign" +colorb=255 +colorg=255 +colorr=255 +description="一条腿。" +drop=0 +droppable=1 +file="Objects\\InventoryItems\\TreasureChest\\treasurechest.mdl" +goldcost=200 +hotkey="L" +hp=75 +ignorecd=0 +level=0 +lumbercost=0 +morph=0 +name="怀特之腿" +oldlevel=0 +pawnable=0 +perishable=0 +pickrandom=0 +powerup=0 +prio=0 +scale=1.0 +sellable=0 +selsize=0.0 +stockmax=1 +stockregen=120 +stockstart=0 +tip="购买怀特之腿(|cffffcc00L|r)" +ubertip="是否这个打开的空间门释放我们在暗黑破坏神世界的亲爱的朋友们?如果是这样, 那是个玩家,还是个恶魔?燃烧军团到底征服了多少个世界?是否燃烧军团的恶魔们和那些避难所中的是同一类呢?思维已经混乱。" +usable=0 +uses=0 diff --git a/plugin/w3x2lni/script/prebuilt/default/misc.ini b/plugin/w3x2lni/script/prebuilt/default/misc.ini new file mode 100644 index 0000000..81e5172 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/misc.ini @@ -0,0 +1,378 @@ +[FontHeights] +_code="FontHeights" +_id="FontHeights" +_parent="FontHeights" +_type="misc" +chateditbar=0.013 +commandbuttonnumber=0.009 +inventory=0.011 +leaderboard=0.007 +portraitstats=0.011 +scorescreenlarge=0.011 +scorescreennormal=0.011 +scorescreenteam=0.009 +tooltipcost=0.011 +tooltipdesc=0.011 +tooltipname=0.011 +unittipdesc=0.011 +unittipplayername=0.011 +worldframechatmessage=0.013 +worldframemessage=0.015 +worldframetopmessage=0.024 +worldframeunitmessage=0.015 + +[HERO] +_code="HERO" +_id="HERO" +_parent="HERO" +_type="misc" +dependencyor="Hamg,Hblm,Hmkg,Hpal,Obla,Ofar,Oshd,Otch,Edem,Ekee,Emoo,Ewar,Ucrl,Udea,Udre,Ulic,Npbm,Nbrn,Nngs,Nplh,Nbst" +name="一个英雄" + +[InfoPanel] +_code="InfoPanel" +_id="InfoPanel" +_parent="InfoPanel" +_type="misc" +attackaverage=1.5 +attackfast=1.0 +attackslow=2.0 +attackveryslow=3.0 +meleerangemax=128.0 +speedaverage=280.0 +speedfast=350.0 +speedslow=220.0 +speedveryslow=175.0 + +[Misc] +_code="Misc" +_id="Misc" +_parent="Misc" +_type="misc" +abilsaleaggrorange=0.0 +agiattackspeedbonus=0.02 +agidefensebase=-2.0 +agidefensebonus=0.3 +agimovebonus=0.0 +allowmultibounce=1 +amuletofrecallcluster=1 +animatedunitsbestowauras=0 +attacknotifydelay=30.0 +attacknotifyrange=1250.0 +awakenbasefactor=0.8 +awakenbaselumberfactor=0.8 +awakenlevelfactor=0.2 +awakenlumberlevelfactor=0.2 +awakenmaxfactor=8.0 +bonedecaytime=88.0 +bountytextcolor="255,255,220,0" +bountytextfadestart=2.0 +bountytextheight=0.024 +bountytextlifetime=3.0 +bountytextvelocity="0,0.03" +buildingangle=270.0 +buildingkillsgiveexp=0 +buildingplacementnotifyradius=600.0 +buildingunblightradius=350.0 +bulletdeathtime=5.0 +burrowedunitsbestowauras=0 +callforhelp=600.0 +canceltime=6.0 +candeactivateavatar=0 +candeactivateavengerform=0 +candeactivatebarkskin=1 +candeactivatebearform=1 +candeactivatebladestorm=0 +candeactivateburrow=1 +candeactivatecalltoarms=1 +candeactivatechemicalrage=0 +candeactivatecorporealform=1 +candeactivatedefend=1 +candeactivatedivineshield=1 +candeactivateimmolation=1 +candeactivatemanaflare=0 +candeactivatemanashield=1 +candeactivatemetamorphosis=0 +candeactivateravenform=1 +candeactivaterobogoblin=1 +candeactivatestoneform=1 +candeactivatesubmerge=1 +candeactivatewindwalk=0 +chancetomiss=0.25 +constructiondamagerefundpenalty=1 +constructionlifedrainrate=10.0 +constructionrefundrate=0.75 +creepcallforhelp=600.0 +creepcamppathingcelldistance=26 +criticalstriketextcolor="255,255,0,0" +criticalstriketextfadestart=2.0 +criticalstriketextheight=0.024 +criticalstriketextlifetime=5.0 +criticalstriketextvelocity="0,0.04" +cyclonestasis=0 +damagebonuschaos="1.00,1.00,1.00,1.00,1.00,1.00,1.00,1.00" +damagebonushero="1.00,1.00,1.00,0.50,1.00,1.00,0.05,1.00" +damagebonusmagic="1.25,0.75,2.00,0.35,1.00,0.50,0.05,1.00" +damagebonusnormal="1.00,1.50,1.00,0.70,1.00,1.00,0.05,1.00" +damagebonuspierce="2.00,0.75,1.00,0.35,1.00,0.50,0.05,1.50" +damagebonussiege="1.00,0.50,1.00,1.50,1.00,0.50,0.05,1.50" +damagebonusspells="1.00,1.00,1.00,1.00,1.00,0.75,0.05,1.00" +darksummoningcluster=1 +dawn=6.0 +dayhours=24.0 +daylength=480.0 +decaytime=2.0 +defenddeflection=0 +defensearmor=0.06 +depcheckalias=1 +displaybuildingstatus=0 +displayenemyinventory=1 +dissipatetime=3.0 +draingivesbonuslife=0 +draingivesbonusmana=0 +draintransferslife=0 +draintransfersmana=0 +drainusesetheralbonus=0 +dropitemrange=100.0 +dusk=18.0 +dyingrevealradius=500.0 +effectdeathtime=5.0 +ensnareismagic=0 +etherealdamagebonus="0,0,0,1.66,0,1.66,0" +etherealdamagebonusally=1 +etherealhealbonus=1.66 +fadebuffmaxalpha=255 +fadebuffminalpha=96 +fadebuffminduration=10.0 +flyingheroesbestowauras=0 +fogflashtime=3.0 +foggedattackrevealradius=200.0 +followitemrange=1000.0 +followrange=300.0 +frostattackspeeddecrease=0.25 +frostmovespeeddecrease=0.5 +giveitemrange=150.0 +globalexperience=1 +goldminemaxgold=1000000 +goldmineownduration=2.0 +goldtextcolor="255,255,220,0" +goldtextfadestart=1.0 +goldtextheight=0.024 +goldtextlifetime=2.0 +goldtextvelocity="0,0.03" +grantheroxp="100,120,160,220,300" +grantheroxpformulaa=1.0 +grantheroxpformulab=0.0 +grantheroxpformulac=100.0 +grantnormalxp="25" +grantnormalxpformulaa=1.0 +grantnormalxpformulab=5.0 +grantnormalxpformulac=5.0 +guarddistance=600.0 +guardreturntime=5.0 +heroabilitylevelskip=2 +heroawakenlifefactor=0.5 +heroawakenmanafactor=0.0 +heroawakenmanastart=0 +heroexprange=1200.0 +herofactorxp="80,70,60,50,0" +heromaxawakencostgold=1400 +heromaxawakencostlumber=350 +heromaxrevivecostgold=700 +heromaxrevivecostlumber=0 +heromaxrevivetime=150.0 +herorevivelifefactor=1.0 +herorevivemanafactor=0.0 +herorevivemanastart=1 +illusionsbestowauras=0 +illusionscanrestorelife=0 +illusionscanrestoremana=0 +illusionsgetattackbonus=0 +illusionsgetattackspeedbonus=0 +illusionsgetautocast=0 +illusionsgetdefensebonus=0 +illusionsgetmovespeedbonus=0 +intmanabonus=15.0 +intregenbonus=0.05 +invisibleunitsbestowauras=0 +invisspeed=0.4 +invulnsummondispeldamage=1 +itemsaleaggrorange=0.0 +itemshadowfile="Shadow" +itemshadowoffset="50,50" +itemshadowsize="120,120" +lavaspawncolor="255,255,255,255,255,220,220,220,255,185,185,185" +lowgoldamount=1500 +lumbertextcolor="255,0,200,80" +lumbertextfadestart=1.0 +lumbertextheight=0.024 +lumbertextlifetime=2.0 +lumbertextvelocity="0,0.03" +magicimmunesresistdamage=1 +magicimmunesresistleech=0 +magicimmunesresistthorns=0 +magicimmunesresistultimates=0 +manaburntextcolor="255,82,82,255" +manaburntextfadestart=2.0 +manaburntextheight=0.024 +manaburntextlifetime=5.0 +manaburntextvelocity="0,0.04" +massteleportcluster=1 +maxbldgspeed=400.0 +maxcollisionradius=200.0 +maxguarddistance=1000.0 +maxherolevel=10 +maxlevelheroesdrainexp=1 +maxunitlevel=20 +maxunitspeed=400.0 +minbldgspeed=25.0 +minunitspeed=150.0 +missdamagereduction=0.5 +misstextcolor="255,255,0,0" +misstextfadestart=1.0 +misstextheight=0.024 +misstextlifetime=3.0 +misstextvelocity="0,0.03" +morphalternatedisable=0 +morphlandclosest=1 +movespeedbonusesstack=1 +needheroxp="200" +needheroxpformulaa=1.0 +needheroxpformulab=100.0 +needheroxpformulac=0.0 +neutralusenotifyradius=900.0 +pawnitemrange=300.0 +pawnitemrate=0.5 +pickupitemrange=150.0 +polymorphedunitsbestowauras=0 +rallyzoffset=200.0 +reactiondelay=0.25 +relativeupgradecost=1 +researchrefundrate=1.0 +revivebasefactor=0.4 +revivebaselumberfactor=0.0 +revivelevelfactor=0.1 +revivelumberlevelfactor=0.0 +revivemaxfactor=4.0 +revivemaxtimefactor=2.0 +reviverefundrate=1.0 +revivetimefactor=0.65 +rootangle=250.0 +scaledanimtime=60.0 +shadowstriketextcolor="255,160,255,0" +shadowstriketextfadestart=2.0 +shadowstriketextheight=0.024 +shadowstriketextlifetime=5.0 +shadowstriketextvelocity="0,0.04" +spellcastrangebuffer=300.0 +strattackbonus=1.0 +strhitpointbonus=25.0 +strregenbonus=0.05 +structuredecaytime=30.0 +structurefollowrange=100.0 +summonedkillfactor=0.5 +townportalcluster=1 +tradinginclarge=200 +tradingincsmall=100 +trainrefundrate=1.0 +unitsaleaggrorange=0.0 +upgradedamagerefundpenalty=0 +upgraderefundrate=0.75 +webismagic=0 + +[PingColor] +_code="PingColor" +_id="PingColor" +_parent="PingColor" +_type="misc" +pingadvisorcolor="255,255,255,0" +pingattackcolor="255,255,0,0" +pingcolor="255,0,255,0" +pingwaypointcolor="255,255,255,255" + +[QuestIndicatorTimeout] +_code="QuestIndicatorTimeout" +_id="QuestIndicatorTimeout" +_parent="QuestIndicatorTimeout" +_type="misc" +questindicatortimeout=10.0 + +[SelectionCircle] +_code="SelectionCircle" +_id="SelectionCircle" +_parent="SelectionCircle" +_type="misc" +colorenemy="255,255,0,0" +colorfriend="255,0,255,0" +imagewalkablezoffset=15.0 + +[TALT] +_code="TALT" +_id="TALT" +_parent="TALT" +_type="misc" +dependencyor="halt,oalt,eate,uaod" +name="一个祭坛" + +[TWN1] +_code="TWN1" +_id="TWN1" +_parent="TWN1" +_type="misc" +dependencyor="htow,ogre,etol,unpl" +name="城镇大厅或者大厅或者生命之树或者大墓地" +xpfactor="0" + +[TWN2] +_code="TWN2" +_id="TWN2" +_parent="TWN2" +_type="misc" +dependencyor="hkee,ostr,etoa,unp1" +name="主城或者要塞或者远古之树或者亡者大厅" +xpfactor="0" + +[TWN3] +_code="TWN3" +_id="TWN3" +_parent="TWN3" +_type="misc" +dependencyor="hcas,ofrt,etoe,unp2" +name="城堡或者堡垒或者永恒之树或者黑色城堡" +xpfactor="0" + +[TWN4] +_code="TWN4" +_id="TWN4" +_parent="TWN4" +_type="misc" + +[TWN5] +_code="TWN5" +_id="TWN5" +_parent="TWN5" +_type="misc" + +[TWN6] +_code="TWN6" +_id="TWN6" +_parent="TWN6" +_type="misc" + +[TWN7] +_code="TWN7" +_id="TWN7" +_parent="TWN7" +_type="misc" + +[TWN8] +_code="TWN8" +_id="TWN8" +_parent="TWN8" +_type="misc" + +[TWN9] +_code="TWN9" +_id="TWN9" +_parent="TWN9" +_type="misc" diff --git a/plugin/w3x2lni/script/prebuilt/default/txt.ini b/plugin/w3x2lni/script/prebuilt/default/txt.ini new file mode 100644 index 0000000..fcc5e91 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/txt.ini @@ -0,0 +1,432 @@ +[aami] +_max_level=1 +name={"具有反魔法盾的物品"} +order={"antimagicshell"} + +[aand] +_max_level=1 +editorsuffix={"(中立但是带有敌意)"} + +[aapl] +_max_level=1 +art={"ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp"} +buttonpos={"1","2"} +name={"疾病云雾"} +requires={"Rupc"} +targetart={"Abilities\\Spells\\Undead\\PlagueCloud\\PlagueCloudCaster.mdl"} +tip={"疾病云雾"} +ubertip={"用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。"} + +[aarm] +_max_level=1 +art={} +name={"魔法恢复光环"} + +[abli] +_max_level=1 +name={"荒芜之地"} + +[acar] +_max_level=1 +effectsound={"LoadUnload"} +name={"货物保持"} + +[acbr] +_max_level=1 +hotkey={"B"} +name={"狂暴愤怒"} +tip={"狂暴愤怒(|cffffcc00B|r)"} +ubertip={"在秒内提高%的攻击速度。"} + +[acha] +_max_level=1 +name={"混乱的"} +requires={"Roch"} + +[acma] +_max_level=1 +editorsuffix={"(总是有效)"} + +[adet] +_max_level=1 +buttonpos={"0","2"} +casterart={} +name={"探测者"} + +[adt2] +_max_level=1 +editorsuffix={"(阴影)"} + +[adt3] +_max_level=1 +editorsuffix={"(矮人直升机)"} + +[adta] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNReveal.blp"} +buttonpos={"0","0"} +hotkey={"R"} +name={"显示"} +tip={"显示(|cffffcc00R|r)"} + +[aia2] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNSlippersOfAgility.blp"} + +[aiab] +_max_level=1 +name={"能提高英雄属性的物品"} + +[aias] +_max_level=1 +name={"能提高攻击速度的物品"} + +[aide] +_max_level=1 +name={"能增加护甲的物品"} + +[aifc] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNRavenForm.blp"} +name={"飞行地毯"} + +[aifi] +_max_level=1 +missileart={"Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl"} +missilehoming={"1"} +missilespeed={"900"} +name={"霹雳闪电物品"} + +[aiga] +_max_level=1 +effectart={"Abilities\\Spells\\NightElf\\NatureTouch\\NatureTouchTarget.mdl"} + +[aihe] +_max_level=1 +name={"具有医疗效果的物品"} +targetart={"Abilities\\Spells\\Items\\AIhe\\AIheTarget.mdl"} +targetattach={"origin"} + +[aii2] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNMantleOfIntelligence.blp"} + +[aima] +_max_level=1 +name={"能增加魔法恢复速度的物品"} +targetart={"Abilities\\Spells\\Items\\AIma\\AImaTarget.mdl"} +targetattach={"origin"} + +[aimi] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNTomeRed.blp"} +casterart={"Abilities\\Spells\\Items\\AIlm\\AIlmTarget.mdl"} +casterattach={"origin"} +name={"Item Permanent Life Gain","能增加生命值的物品"} + +[aiml] +_max_level=1 +name={"能增加生命值的物品"} + +[aimm] +_max_level=1 +name={"能增加魔法值的物品"} + +[aimn] +_max_level=1 +casterart={} + +[aipi] +_max_level=1 + +[aite] +_max_level=1 +areaeffectart={"Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTo.mdl"} +casterart={"Abilities\\Spells\\Human\\MassTeleport\\MassTeleportCaster.mdl"} +specialart={"Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl"} +targetart={"Abilities\\Spells\\Human\\MassTeleport\\MassTeleportTarget.mdl"} + +[aito] +_max_level=1 + +[aivi] +_max_level=1 +name={"能让单位暂时隐身的物品"} +targetart={"Abilities\\Spells\\Items\\AIvi\\AIviTarget.mdl"} +targetattach={"chest"} + +[amou] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNTemp.blp"} +buttonpos={"1","1"} +hotkey={"R"} +name={"骑乘"} +order={"mount"} +tip={"变形(|cffffcc00R|r)"} +ubertip={"将英雄变成另外一种形态。"} +unart={"ReplaceableTextures\\CommandButtons\\BTNTemp.blp"} +unbuttonpos={"1","1"} +unhotkey={"R"} +unorder={"dismount"} +untip={"取消变形(|cffffcc00R|r)"} +unubertip={"将英雄变回原来的形态。"} + +[amtc] +_max_level=1 +effectsound={"LoadUnload"} +name={"保持原位"} + +[anei] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNSelectUnit.blp"} +buttonpos={"3","2"} +hotkey={"U"} +name={"选择使用者"} +tip={"选择使用者(|cffffcc00U|r)"} + +[anf1] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp"} +buttonpos={"0","2"} +editorsuffix={" (Upgrade Level 1)"} +hotkey={} +name={"工厂"} +tip={"工厂 - 升级 等级 1"} +ubertip={"工厂."} + +[anf2] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp"} +buttonpos={"0","2"} +editorsuffix={" (Upgrade Level 2)"} +hotkey={} +name={"工厂"} +tip={"工厂 - 升级 等级 2"} +ubertip={"工厂."} + +[anf3] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp"} +buttonpos={"0","2"} +editorsuffix={" (Upgrade Level 3)"} +hotkey={} +name={"工厂"} +tip={"工厂 - 升级 等级 3"} +ubertip={"工厂."} + +[angl] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNGLExchange.blp"} +buttonpos={"0","2"} +casterart={"Abilities\\Spells\\Other\\TempSpellArt\\TempSpellArt.mdl"} +hotkey={"L"} +name={"用黄金交换木材"} +targetart={"Abilities\\Spells\\Other\\TempSpellArt\\TempSpellArt.mdl"} +tip={"用%d黄金交换%d木材(|cffffcc00L|r)"} + +[anit] +_max_level=1 +name={"跟踪"} +requires={"Ronv"} + +[anlg] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNLGExchange.blp"} +buttonpos={"0","0"} +casterart={"Abilities\\Spells\\Other\\TempSpellArt\\TempSpellArt.mdl"} +hotkey={"G"} +name={"用木材交换黄金"} +targetart={"Abilities\\Spells\\Other\\TempSpellArt\\TempSpellArt.mdl"} +tip={"用%d木材交换%d黄金( |cffffcc00G|r)"} + +[anrl] +_max_level=1 +effectsoundlooped={"FountainOfLifeLoop"} +name={"生命值恢复速度"} +targetart={"Abilities\\Spells\\Other\\ANrm\\ANrmTarget.mdl"} + +[anrm] +_max_level=1 +effectsoundlooped={"FountainOfLifeLoop"} +targetart={"Abilities\\Spells\\Other\\ANrl\\ANrlTarget.mdl"} + +[aoac] +_max_level=1 +art={"ReplaceableTextures\\PassiveButtons\\PASBTNGnollCommandAura.blp"} +buttonpos={"0","2"} +name={"命令光环"} +targetart={"Abilities\\Spells\\Orc\\WarDrums\\DrumsCasterHeal.mdl"} +targetattach={"origin"} +tip={"命令光环"} +ubertip={"增加附近单位的攻击力。"} + +[aque] +_max_level=1 +order={"revive"} +targetart={"Abilities\\Spells\\Human\\ReviveHuman\\ReviveHuman.mdl","Abilities\\Spells\\Orc\\ReviveOrc\\ReviveOrc.mdl","Abilities\\Spells\\Undead\\ReviveUndead\\ReviveUndead.mdl","Abilities\\Spells\\NightElf\\ReviveNightElf\\ReviveNightElf.mdl","Abilities\\Spells\\Demon\\ReviveDemon\\ReviveDemon.mdl"} + +[aroo] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNRoot.blp"} +buttonpos={"3","2"} +hotkey={"R"} +name={"扎根"} +order={"root"} +tip={"扎根(|cffffcc00R|r)"} +ubertip={"使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人,同时使古树变成加强型护甲。"} +unart={"ReplaceableTextures\\CommandButtons\\BTNUproot.blp"} +unbuttonpos={"3","2"} +unhotkey={"R"} +unorder={"unroot"} +untip={"拔根(|cffffcc00R|r)"} +unubertip={"使得古树从地上拔起自己的根须从而能进行移动。同时使古树具有重型护甲。"} + +[artn] +_max_level=1 +name={"返回"} + +[aumd] +_max_level=1 +name={"黑暗召唤(马哥尼斯)"} + +[awhe] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNWispHealOn.blp"} +buttonpos={"2","2"} +casterart={} +hotkey={"L"} +name={"医疗"} +order={"wispheal"} +orderoff={"wisphealoff"} +orderon={"wisphealon"} +requires={"Rewh"} +targetart={"Abilities\\Spells\\Human\\Heal\\HealTarget.mdl"} +tip={"医疗(|cffffcc00L|r)"} +ubertip={"医疗周围受伤的友军单位。"} +unart={"ReplaceableTextures\\CommandButtons\\BTNWispHealOff.blp"} +unbuttonpos={"2","2"} +unhotkey={"L"} +untip={"|cffc3dbff点击右键以启动自动施放功能。|r"} +unubertip={"|cffc3dbff点击右键以取消自动施放功能。|r"} + +[besi] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNShadowStrike.blp"} +bufftip={"暗影突袭"} +buffubertip={"This unit was hit by Shadow Strike; it will take damage over time and move more slowly."} +targetart={"Abilities\\Spells\\NightElf\\shadowstrike\\shadowstrike.mdl"} +targetattach={"overhead"} + +[bhbh] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNBash.blp"} +bufftip={"重击"} +buffubertip={"这个单位遭到了重击,因此不能移动,攻击和施放魔法。"} +targetart={"Abilities\\Spells\\Human\\Thunderclap\\ThunderclapTarget.mdl"} +targetattach={"overhead"} + +[bnch] +_max_level=1 + +[bnhe] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNSlow.blp"} +bufftip={"中立的医疗"} +buffubertip={"该单位正在被医疗;其丧失的生命值将得到恢复。"} +spelldetail={"1"} + +[bnmo] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNMonsoon.blp"} +bufftip={"季风"} +buffubertip={"该单位受到了季风的攻击,因此它会受到来自闪电的伤害。"} + +[bnsp] +_max_level=1 +bufftip={"灵魂保存"} +buffubertip={"该单位以被保存留为后用。"} + +[bows] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNWarStomp.blp"} +bufftip={"战争践踏"} +buffubertip={"该单位受到了战争践踏的作用,因此其在短时间内不能移动,攻击和施放魔法。"} + +[btau] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNTaunt.blp"} +bufftip={"嘲讽"} +buffubertip={"这个单位现在是免疫的。"} + +[budp] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNDeathPact.blp"} +targetart={"Abilities\\Spells\\Undead\\DeathPact\\DeathPactCaster.mdl"} +targetattach={"origin"} + +[bulo] +_max_level=1 +buffart={"ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp"} +bufftip={"蝗虫群"} + +[mdpb] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNPebble.blp"} +description={"将目标变为冰冷的石头。"} +hotkey={"P"} +name={"美杜莎之石"} +tip={"购买美杜莎之石(|cffffcc00P|r)"} +ubertip={"能将敌人的一个非英雄单位永远地变成一块石头。"} + +[mliq] +_max_level=1 +missilearc={"0.35"} +missileart={"Abilities\\Spells\\Orc\\LiquidFire\\BatRiderMissile.mdl"} +missilespeed={"900"} + +[nnom] +_max_level=1 + +[nws2] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNDragonHawk.blp"} +attachmentanimprops={"medium"} +buttonpos={"1","0"} +missilearc={"0.15"} +missileart={"Abilities\\Weapons\\DragonHawkMissile\\DragonHawkMissile.mdl"} +missilehoming={"1"} +missilespeed={"1100"} + +[oang] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNGuardianWard.blp"} +missilearc={"0.15"} +missileart={"Abilities\\Weapons\\AncestralGuardianMissile\\AncestralGuardianMissile.mdl"} +missilehoming={"1"} +missilespeed={"1200"} +name={"远古守护者"} + +[orbr] +_max_level=1 +art={"ReplaceableTextures\\CommandButtons\\BTNReinforcedBurrows.blp"} +buttonpos={"0","1"} +hotkey={"O"} +missilearc={"0.15"} +missileart={"abilities\\weapons\\huntermissile\\huntermissile.mdl"} +missilespeed={"1200"} +name={"加强型地洞"} +specialart={"Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl"} +tip={"建造加强型地洞(|cffffcc00O|r)"} +ubertip={"提供人口,从而增加你可造单位的数量。苦工还可以钻入地洞从而对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r"} + +[sbr2] +_max_level=1 +editorsuffix={" (可选的)"} + +[sra2] +_max_level=1 +editorsuffix={" (可选的)"} + +[xnto] +_max_level=1 +effectart={"Abilities\\Spells\\Other\\Tornado\\Tornado.mdl"} diff --git a/plugin/w3x2lni/script/prebuilt/default/unit.ini b/plugin/w3x2lni/script/prebuilt/default/unit.ini new file mode 100644 index 0000000..33a2258 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/unit.ini @@ -0,0 +1,157122 @@ +[Ecen] +_id="Ecen" +_name="cenarius" +_type="unit" +abillist="AInv,SCc1" +acquire=1000.0 +agi=15 +agiplus=0.6 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKeeperOfTheGrove.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活赛纳留斯(|cffffcc00C|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=2.0 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="divine" +defup=0.0 +dice1=8 +dice2=2 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroKeeperoftheGrove\\HeroKeeperoftheGrove" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=200 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=2675 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=5.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=55 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="半神人" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=12 +propernames="赛纳留斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=1000 +rangen2=500 +red=255 +regenhp=3.0 +regenmana=2.0 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活赛纳留斯(|cffffcc00C|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=3.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-keeperofthegrove.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1800 +spd=400 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=17 +strplus=4.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +unitshadow="Shadow" +unitsound="HeroKeeperoftheGrove" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Edem] +_id="Edem" +_name="demonhunter" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=22 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDemonHunter.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.6 +backsw2=0.6 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.47 +castpt=0.3 +collision=32.0 +cool1=1.7 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dependencyor="Edmm" +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroDemonHunter\\HeroDemonHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEme" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶魔猎手" +namecount=15 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="影之歌,影之愤怒,黑暗语者,追火者,黑暗舞者,黑暗恐惧,黑暗悲伤,信德维拉,伤痛杀手,地狱守护者,狂怒之人,愤怒狂奔者,火焰舞者,血之愤怒,恐惧剑刃" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="etoa" +requires2="etoe" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=19 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤恶魔猎手(|cffffcc00D|r)" +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭,闪避法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDemonHunter" +upgrades="Reuv" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Edmm] +_id="Edmm" +_name="demonhuntermorphed" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=20 +agiplus=1.5 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +attachmentlinkprops="alternate" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.64 +backsw2=0.64 +bldtm=55 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.47 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.26 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (恶魔形态)" +elevpts=0 +elevrad=20.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroDemonHunter\\HeroDemonHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=150 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEme" +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶魔猎手" +namecount=15 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=9 +propernames="影之歌,影之愤怒,黑暗语者,追火者,黑暗舞者,黑暗恐惧,黑暗悲伤,信德维拉,伤痛杀手,地狱守护者,狂怒之人,愤怒狂奔者,火焰舞者,血之愤怒,恐惧剑刃" +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="etoa" +requires2="etoe" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=1 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤恶魔猎手(|cffffcc00D|r)" +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭,闪避法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDemonHunterMorphed" +upgrades="Reuv" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="msplash" +weaptp2="missile" + +[Eevi] +_id="Eevi" +_name="evilillidan" +_type="unit" +abillist="AInv,Ault,ANcl" +acquire=650.0 +agi=22 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEvilIllidan.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.6 +backsw2=0.64 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.7 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=4.1 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dependencyor="Eevm" +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.26 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (邪恶的)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\EvilIllidan\\IllidanEvil" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEvi" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=125.0 +impactz=125.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=125.0 +launchx=0.0 +launchy=0.0 +launchz=125.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\IllidanMissile\\IllidanMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="恶魔猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=10 +propernames="尤迪安" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=1 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=21 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="EvilIllidan" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Eevm] +_id="Eevm" +_name="evilillidandemonform" +_type="unit" +abillist="AInv,Ault,ANcl" +acquire=650.0 +agi=20 +agiplus=1.5 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMetamorphosis.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="medium" +attachmentlinkprops="alternate" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.64 +backsw2=0.64 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.77 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.26 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Morphed)" +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\nightelf\\EvilIllidan\\IllidanEvil" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=150 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEvi" +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=125.0 +impactz=125.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=160.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="恶魔猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=10 +propernames="尤迪安" +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=1 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=1 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air" +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="EvilIllidanMorphed" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Efur] +_id="Efur" +_name="furion" +_type="unit" +abillist="AInv,Ault" +acquire=600.0 +agi=15 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurion.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活丛林守护者(|cffffcc00K|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.17 +castpt=0.5 +collision=32.0 +cool1=2.18 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.0 +deathtype=2 +def=2.0 +deftype="hero" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Furion\\Furion" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.7 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="丛林守护者" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=11 +propernames="法里奥" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活丛林守护者(|cffffcc00K|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=180.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-furion.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=17 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furion" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Eidm] +_id="Eidm" +_name="illidandemonform" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=20 +agiplus=1.5 +animprops="alternate,alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDemonHunter.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="medium" +attachmentlinkprops="alternate" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.64 +backsw2=0.64 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.26 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (恶魔形态)" +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroDemonHunter\\HeroDemonHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=150 +harea2=0 +heroabillist="AEmb,AEim,AEev" +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶魔猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=12 +propernames="尤迪安" +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=1 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air" +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="IllidanMorphed" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Eill] +_id="Eill" +_name="illidan" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=22 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDemonHunter.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.6 +backsw2=0.6 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.7 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dependencyor="Eilm" +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroDemonHunter\\HeroDemonHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEIl" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶魔猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=12 +propernames="尤迪安" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=21 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Illidan" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Eilm] +_id="Eilm" +_name="illidanmorphed" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=20 +agiplus=1.5 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDemonHunter.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="medium" +attachmentlinkprops="alternate" +awakentip="复活恶魔猎手(|cffffcc00D|r)" +backsw1=0.64 +backsw2=0.64 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.26 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (被变了形的)" +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroDemonHunter\\HeroDemonHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=150 +harea2=0 +heroabillist="AEmb,AEim,AEev,AEIl" +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.1 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶魔猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=12 +propernames="尤迪安" +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恶魔猎手(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-demonhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=1 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air" +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="IllidanMorphed" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ekee] +_id="Ekee" +_name="keeperofthegrove" +_type="unit" +abillist="AInv,Ault" +acquire=600.0 +agi=15 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKeeperOfTheGrove.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活丛林守护者(|cffffcc00K|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.7 +collision=32.0 +cool1=2.18 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroKeeperoftheGrove\\HeroKeeperoftheGrove" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.7 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="丛林守护者" +namecount=13 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="拉罗德,安奴比理司,南迪倍,卡理法可司,斑德拉尔,马罗内,哥尔比恩,达哥达,奴达,奥哥玛,塞恩特理司,塞理德恩" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="etoa" +requires2="etoe" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活丛林守护者(|cffffcc00K|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-keeperofthegrove.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=16 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤丛林守护者(|cffffcc00K|r)" +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须,自然之力,荆刺光环和宁静这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroKeeperoftheGrove" +upgrades="Reuv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ekgg] +_id="Ekgg" +_name="keeperofthegroveghost" +_type="unit" +abillist="AInv,Ault" +acquire=600.0 +agi=15 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKeeperGhostBlue.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活幽灵(|cffffcc00G|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.7 +collision=32.0 +cool1=2.18 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroKeeperoftheGroveGhost\\HeroKeeperoftheGroveGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.7 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="丛林守护者" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="幽灵" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活幽灵(|cffffcc00G|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-keeperofthegrove.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=16 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroKeeperoftheGrove" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Emfr] +_id="Emfr" +_name="malfurion" +_type="unit" +abillist="AInv,Ault" +acquire=600.0 +agi=15 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurion.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活丛林守护者(|cffffcc00K|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.17 +castpt=0.5 +collision=32.0 +cool1=2.18 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.167 +deathtype=2 +def=2.0 +deftype="hero" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\MalFurion\\MalFurion" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.7 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="丛林守护者" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=11 +propernames="玛尔法里奥" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活丛林守护者(|cffffcc00K|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-furion.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=17 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="MalFurion" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Emns] +_id="Emns" +_name="malfurionnostag" +_type="unit" +abillist="AInv,Ault" +acquire=600.0 +agi=15 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurion.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活丛林守护者(|cffffcc00K|r)" +backsw1=0.77 +backsw2=0.77 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.17 +castpt=0.5 +collision=32.0 +cool1=2.18 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=4.33 +deathtype=2 +def=2.0 +deftype="hero" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (没有鹿角)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\MalFurion\\MalFurionNoStag" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEer,AEfn,AEah,AEtq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.7 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="丛林守护者" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=11 +propernames="玛尔法里奥" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活丛林守护者(|cffffcc00K|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=270.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-furion.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=55.0 +shadowy=55.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=17 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furion" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Emoo] +_id="Emoo" +_name="priestessofthemoon" +_type="unit" +abillist="Ashm,AInv,Ault" +acquire=650.0 +agi=19 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPriestessOfTheMoon.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活月之女祭司(|cffffcc00P|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=32.0 +cool1=2.46 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroMoonPriestess\\HeroMoonPriestess" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHfa,AEst,AEar,AEsf" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=2.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=100.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MoonPriestessMissile\\MoonPriestessMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="月之女祭司" +namecount=13 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=9 +propernames="卡塞理司,阿多拉,摩拉,费莱理,安娜拉,可拉,摩维,德拉司,米拉,塞塔,特伽拉,阿理尔,迪安娜" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="etoa" +requires2="etoe" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活月之女祭司(|cffffcc00P|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-priestessofthemoon.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=1.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤月之女祭司(|cffffcc00P|r)" +turnrate=0.4 +ubertip="战士型英雄,擅长于远程攻击。能学习到侦察,灼热之箭,强击光环和群星坠落这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroMoonPriestess" +upgrades="Reuv" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Etyr] +_id="Etyr" +_name="tyrande" +_type="unit" +abillist="AInv,Ashm,Ault" +acquire=650.0 +agi=19 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPriestessOfTheMoon.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活月之女祭司(|cffffcc00P|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=32.0 +cool1=2.46 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\HeroMoonPriestess\\HeroMoonPriestess" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHfa,AEst,AEar,AEsf" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=2.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=100.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MoonPriestessMissile\\MoonPriestessMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="月之女祭司" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="AGI" +prio=12 +propernames="泰兰德" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活月之女祭司(|cffffcc00P|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=2.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-priestessofthemoon.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=1.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="战士型英雄,擅长于远程攻击。能学习到侦察、灼热之箭、强击光环和群星坠落这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Tyrande" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ewar] +_id="Ewar" +_name="warden" +_type="unit" +abillist="Ashm,AInv,Ault" +acquire=650.0 +agi=20 +agiplus=1.6 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroWarden.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活守望者(|cffffcc00W|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=32.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\herowarden\\herowarden" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEbl,AEfk,AEsh,AEsv" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=100 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=15 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=25.0 +launchy=0.0 +launchz=80.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WardenMissile\\WardenMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="守望者" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="阿尔萨-铁牢,铁乌鸦,马林恩-刀翼,沙粒斯-暗黑猎人,司拉-月亮守望者,萨瑟斯,玛莱斯-魔影,绮理-星踪,阿纳雅-堕林,米拉那-星光,费尔哈拉-星月,德拉尼穆-风语,科达娜-堕歌,娜尔美娜-黑随" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="etoa" +requires2="etoe" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活守望者(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-warden.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=11 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤守望者(|cffffcc00W|r)" +turnrate=0.4 +ubertip="灵巧型英雄,能在战场上来去自如,能学习到闪烁, 刀阵旋风, 暗影突袭和复仇之魂这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroWarden" +upgrades="Reuv" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Ewrd] +_id="Ewrd" +_name="maiev" +_type="unit" +abillist="Ashm,AInv,Ault" +acquire=650.0 +agi=20 +agiplus=1.6 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWarden2.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活守望者(|cffffcc00W|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=32.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Maiev\\Maiev" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AEbl,AEfk,AEsh,AEsv" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=100 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=15 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=25.0 +launchy=0.0 +launchz=80.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WardenMissile\\WardenMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="守望者" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=13 +propernames="玛维" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活守望者(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-warden.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=11 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=2.4 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="灵巧型英雄,能在战场上来去自如,能学习到闪烁、刀阵旋风、暗影突袭和复仇之魂这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Maiev" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Hamg] +_id="Hamg" +_name="archmage" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=17 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroArchMage.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活大魔法师(|cffffcc00A|r)" +backsw1=0.85 +backsw2=0.85 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.8 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroArchMage\\HeroArchMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHbz,AHab,AHwe,AHmt" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.2 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="HumanHeroArchMageMovement" +movetp="foot" +name="大魔法师" +namecount=13 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="特恩-施火者,神秘之力尼拉斯,安德若麦斯,沙尔-集光者,爱仑-挥术者,麦那斯-唱魔者,兰德泽尔-魔文字,多里尔-集法者,咒文佩里尔,雷克斯,费德里德爱仑-亚伦,达拉-暗舞者,凯恩-先知" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="hkee" +requires2="hcas" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活大魔法师(|cffffcc00A|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=260.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archmage.blp" +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=14 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤大魔法师(|cffffcc00A|r)" +turnrate=0.5 +ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪,召唤水元素,辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hant] +_id="Hant" +_name="antonidus" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=17 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroArchMage.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活大魔法师(|cffffcc00A|r)" +backsw1=0.85 +backsw2=0.85 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.8 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroArchMage\\HeroArchMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHbz,AHab,AHwe,AHmt" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.2 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="HumanHeroArchMageMovement" +movetp="foot" +name="大魔法师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=11 +propernames="安东尼达斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="hkee" +requires2="hcas" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活大魔法师(|cffffcc00A|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archmage.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪、召唤水元素、辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hapm] +_id="Hapm" +_name="admiralproudmoore" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\Proudmoore\\Proudmoore" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=12 +propernames="海军上将普洛德摩尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Proudmoore" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Harf] +_id="Harf" +_name="arthaswithfrostmourne" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNArthas.blp" +atktype1="chaos" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (挥舞着霜之哀伤宝剑)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\ArthaswithSword\\ArthaswithSword" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=12 +propernames="阿尔塞斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-arthas.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Arthas" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Hart] +_id="Hart" +_name="arthas" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNArthas.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Arthas\\Arthas" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=12 +propernames="阿尔塞斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-arthas.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Arthas" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hblm] +_id="Hblm" +_name="bloodmage" +_type="unit" +abillist="AInv,Asph" +acquire=600.0 +agi=14 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroBloodElfPrince.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活血魔法师(|cffffcc00B|r)" +backsw1=0.85 +backsw2=0.85 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroBloodElf\\HeroBloodElf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHfs,AHbn,AHdr,AHpx" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BloodElfMissile\\BloodElfMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血魔法师" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="爱尔丁-破日者,泰尼恩-鹰翼,罗恩-嗜血者,阿尔多斯-火之星,吉里拉斯-德拉克森,哈尔-巫火,卡瑟拉力斯-雷马,特列尔-逐日者,西沃斯-疾风者,特恩利斯-闇血,马拉卡尼-怒星,格多尔-地狱火,哈勒恩多-柏金,科勒恩-破坏者" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="hkee" +requires2="hcas" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活血魔法师(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-sorceror.blp" +selcirconwater=0 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=65.0 +shadowy=65.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤血魔法师(|cffffcc00B|r)" +turnrate=0.5 +ubertip="一位神秘的英雄,擅长于控制魔法能量和远程攻击。能学习到烈焰风暴、驱散、吸魔和火凤凰这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="BloodElfSorceror" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hdgo] +_id="Hdgo" +_name="dagren" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.433 +backsw2=0.433 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladinBoss2\\HeroPaladinBoss2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="达贡兽族屠杀者" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hgam] +_id="Hgam" +_name="ghostlyarchmage" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=17 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGhostMage.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活幽灵大魔法师(|cffffcc00A|r)" +backsw1=0.85 +backsw2=0.85 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.8 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\HeroArchMageGhost\\HeroArchMageGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHbz,AHab,AHwe,AHmt" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.2 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="幽灵大魔法师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="安东尼达斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活幽灵大魔法师(|cffffcc00A|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=260.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archmage.blp" +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=14 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一位神秘的英雄,擅长于远程攻击。能学习到暴风雪、召唤水元素、辉煌光环、和群体传送技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hhkl] +_id="Hhkl" +_name="halahk" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.433 +backsw2=0.433 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladinBoss\\HeroPaladinBoss" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="哈拉生命使者" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hjai] +_id="Hjai" +_name="jaina" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=17 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNJaina.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活大魔法师(|cffffcc00A|r)" +backsw1=0.4 +backsw2=0.4 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.8 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Jaina\\Jaina" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHbz,AHab,AHwe,AHmt" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.2 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=5.0 +maxroll=5.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大魔法师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +primary="INT" +prio=10 +propernames="吉安娜" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活大魔法师(|cffffcc00A|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=400.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-jaina.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=1.8 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪、召唤水元素、辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Jaina" +useclickhelper=0 +walk=400.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hkal] +_id="Hkal" +_name="kael" +_type="unit" +abillist="AInv,Asph" +acquire=600.0 +agi=15 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBloodMage2.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活血魔法师(|cffffcc00B|r)" +backsw1=0.85 +backsw2=0.85 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=2.13 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Kael\\Kael" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHfs,AHbn,AHdr,AHpx" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=66.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BloodElfMissile\\BloodElfMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血魔法师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=12 +propernames="卡尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活血魔法师(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-sorceror.blp" +selcirconwater=0 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=65.0 +shadowy=65.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=16 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +ubertip="一位神秘的英雄,擅长于控制魔法能量和远程攻击。能学习到烈焰风暴、驱散、吸魔和火凤凰这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Kael" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hlgr] +_id="Hlgr" +_name="lordgarithos" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNGarithos.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.1 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\LordGarithos\\LordGarithos" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsh,AHhb,AHad,ANav" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="加理瑟斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=380.0 +scale=1.6 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-garithos.blp" +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Garithos" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hmbr] +_id="Hmbr" +_name="muradinbronzebeard" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=11 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroMountainKing.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活山丘之王(|cffffcc00M|r)" +backsw1=0.366 +backsw2=0.366 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.22 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.633 +dmgpt2=0.633 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Muradin\\Muradin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHtc,AHtb,AHbh,AHav" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=1.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="山丘之王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=11 +propernames="穆拉丁" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活山丘之王(|cffffcc00M|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-mountainking.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于冲锋陷阵。能学习到风暴之锤、雷霆一击、重击和天神下凡。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Muradin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hmgd] +_id="Hmgd" +_name="margoth" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.433 +backsw2=0.433 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladin\\HeroPaladin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="马格罗斯守御者" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hmkg] +_id="Hmkg" +_name="mountainking" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=11 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroMountainKing.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活山丘之王(|cffffcc00M|r)" +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.22 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroMountainKing\\HeroMountainKing" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHtc,AHtb,AHbh,AHav" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=1.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="山丘之王" +namecount=13 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="波尔-碎石者,穆林-铁壁,萨哥尔斯-阔斧,凯尔维-酷铁锤,哥里穆-雷鸣,布里-冰胡,黑哥因-铁壁,萨尔丁-岩胡,斑迪斯-炉火,伽尔-末日熔炉,比泽尔-棍石,穆迪-石匠,神奇爱哥诺尔先知" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="hkee" +requires2="hcas" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活山丘之王(|cffffcc00M|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-mountainking.blp" +selcirconwater=0 +selz=0.0 +shadowh=150.0 +shadowonwater=1 +shadoww=150.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤山丘之王(|cffffcc00M|r)" +turnrate=0.6 +ubertip="战士型英雄,特别擅长于冲锋陷阵。能学习到风暴之锤、雷霆一击、重击和天神下凡。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroMountainKing" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hpal] +_id="Hpal" +_name="paladin" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladin\\HeroPaladin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=15 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="哥兰尼斯-闇锤,卓尔-忏悔者,塞杰尔,马拉克-复仇者,悲惨的哥维拉德,神奇的摩鲁尼,真实的阿杰曼德,光明的伯拉多尔,治疗之马曼那达尔,赞恩-防御者,阿留尔斯-追求者,纯真之阿尤里尔斯,卡那维尔德-追求者,无惧的布赞恩" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="hkee" +requires2="hcas" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=65.0 +shadowy=65.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤圣骑士(|cffffcc00L|r)" +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光,神圣护甲,专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hpb1] +_id="Hpb1" +_name="paladinboss1" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.433 +backsw2=0.433 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladinBoss\\HeroPaladinBoss" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="尼科拉斯大人" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hpb2] +_id="Hpb2" +_name="paladinboss2" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.433 +backsw2=0.433 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\HeroPaladinBoss2\\HeroPaladinBoss2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="格雷戈里爵士" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPaladin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Huth] +_id="Huth" +_name="uther" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroPaladin.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活圣骑士(|cffffcc00L|r)" +backsw1=0.567 +backsw2=0.567 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Uther\\Uther" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHhb,AHds,AHre,AHad" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="圣骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=11 +propernames="乌瑟尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活圣骑士(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-paladin.blp" +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Uther" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyBash" + +[Hvsh] +_id="Hvsh" +_name="ladyvashj" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=14 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaSeaWitch.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活娜迦女海巫(|cffffcc00N|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.73 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\LadyVashj\\LadyVashj" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANfl,ANfa,ANms,ANto" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=20 +intplus=3.4 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NagaArrowMissile\\NagaArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="娜迦女海巫" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=11 +propernames="法斯琪" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活娜迦女海巫(|cffffcc00N|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-seawitch.blp" +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一位神秘的英雄,擅长于远距离战斗。能学习到叉状闪电、霜冻之箭、魔法护盾和龙卷风。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SeaWitch" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Hvwd] +_id="Hvwd" +_name="sylvanuswindrunner" +_type="unit" +abillist="AInv,Ault" +acquire=650.0 +agi=19 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSylvanusWindrunner.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活游侠(|cffffcc00R|r)" +backsw1=0.58 +backsw2=0.58 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=2.46 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.7 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SylvanusWindrunner\\SylvanusWindrunner" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AHca,AEst,AEar,AEsf" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=2.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MoonPriestessMissile\\MoonPriestessMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="游侠" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=10 +propernames="追风之西尔瓦娜斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活游侠(|cffffcc00R|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-sylvanus.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=1.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward,wall" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Sylvanus" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Naka] +_id="Naka" +_name="akama" +_type="unit" +abillist="AInv,Apiv,Ahid" +acquire=500.0 +agi=20 +agiplus=1.2 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiAkama.blp" +atktype1="hero" +atktype2="normal" +awakentip="复活阿卡玛(|cffffcc00K|r)" +backsw1=0.58 +backsw2=0.0 +bldtm=55 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="hero" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiAkama\\DranaiAkama" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ACs7,AOcl,AEsh,ANr2" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=100 +impactswimz=0.0 +impactz=150.0 +ineditor=1 +int=19 +intplus=2.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=70.0 +launchz=150.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="贤者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +primary="INT" +prio=6 +propernames="阿卡玛" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活阿卡玛(|cffffcc00K|r)" +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.75 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-akama.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Akama" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[Nal2] +_id="Nal2" +_name="alchemistmorph2" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=7 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroAlchemist.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="(|cffffcc00X|r)复活炼金术士 " +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.42 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.67 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=3 +dice2=3 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Morph level 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroGoblinAlchemist\\HeroGoblinAlchemist" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANhs,ANab,ANcr,ANtm" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="X" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炼金术士" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="(|cffffcc00X|r)复活炼金术士 " +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-alchemist.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=10 +sight=1800 +spd=400 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00X|r)召唤炼金术士" +turnrate=0.6 +ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroGoblinAlchemist" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Nal3] +_id="Nal3" +_name="alchemistmorph3" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=7 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroAlchemist.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="(|cffffcc00X|r)复活炼金术士 " +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.11 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.67 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=3 +dice2=3 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Morph level 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroGoblinAlchemist\\HeroGoblinAlchemist" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANhs,ANab,ANcr,ANtm" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="X" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炼金术士" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="(|cffffcc00X|r)复活炼金术士 " +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-alchemist.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=10 +sight=1800 +spd=400 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00X|r)召唤炼金术士" +turnrate=0.6 +ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroGoblinAlchemist" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Nalc] +_id="Nalc" +_name="alchemist" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=7 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroAlchemist.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="(|cffffcc00X|r)复活炼金术士 " +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.67 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dependencyor="Nalm,Nal2,Nal3" +dice1=3 +dice2=3 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroGoblinAlchemist\\HeroGoblinAlchemist" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANhs,ANab,ANcr,ANtm" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="X" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炼金术士" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="拉泽尔•拿破仑,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="(|cffffcc00X|r)复活炼金术士 " +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-alchemist.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=10 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00X|r)召唤炼金术士" +turnrate=0.6 +ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroGoblinAlchemist" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Nalm] +_id="Nalm" +_name="alchemistmorph" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=7 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroAlchemist.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="(|cffffcc00X|r)复活炼金术士 " +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.0 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.67 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=3 +dice2=3 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Morph level 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroGoblinAlchemist\\HeroGoblinAlchemist" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANhs,ANab,ANcr,ANtm" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="X" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炼金术士" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="(|cffffcc00X|r)复活炼金术士 " +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-alchemist.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=10 +sight=1800 +spd=400 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=24 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00X|r)召唤炼金术士" +turnrate=0.6 +ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroGoblinAlchemist" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Nbbc] +_id="Nbbc" +_name="blackrockblademaster" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=23 +agiplus=1.75 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosBlademaster.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活剑圣(|cffffcc00B|r)" +backsw1=0.84 +backsw2=0.84 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.77 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.33 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\HeroChaosBladeMaster\\HeroChaosBladeMaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOwk,AOcr,AOmi,AOww" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.25 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑圣" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=10 +propernames="黑岩氏族的剑圣" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活剑圣(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=290.0 +scale=1.15 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-chaosblademaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=19 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroBladeMaster" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nbrn] +_id="Nbrn" +_name="darkranger" +_type="unit" +abillist="AInv" +acquire=650.0 +agi=19 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBansheeRanger.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活黑暗游侠(|cffffcc00R|r)" +backsw1=0.3 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.42 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\BansheeRanger\\BansheeRanger" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsi,ANba,ANdr,ANch" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=2.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗游侠" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="纳拉-迈步,阿恩雅-恒歌,安瑟斯-日弓,斯里-死步,西恩迪-鹰矛,米拉-破凋,阿摩拉-鹰眼,斯勒恩-鬼歌,索门德-菲佐" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活黑暗游侠(|cffffcc00R|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-bansheeranger.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=18 +strplus=1.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗游侠(|cffffcc00R|r)" +turnrate=0.6 +type="undead" +ubertip="灵巧型的英雄,擅长于与对手周旋。能学习到沉默魔法,黑暗之箭,生命汲取和符咒这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DarkRanger" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Nbst] +_id="Nbst" +_name="beastmaster" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.3 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBeastMaster.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活驯兽师(|cffffcc00S|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=2.2 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.67 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.8 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Beastmaster\\Beastmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsg,ANsq,ANsw,ANst" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=100 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=15 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="驯兽师" +namecount=7 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=9 +propernames="玛格-熊锤,塔克-熊爪,高须-鹰爪毒牙,马克思-大鹏鬃毛,盖兹-野猪獠牙,莫克-鹏喙,吉须-鹰眼" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活驯兽师(|cffffcc00S|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-beastmaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=25 +strplus=2.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤驯兽师(|cffffcc00S|r)" +turnrate=0.4 +ubertip="战斗型英雄,善于在战场上召唤野兽来加入战斗。可以学习召唤灰熊,召唤豪猪,召唤战鹰和惊吓四个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Beastmaster" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nfir] +_id="Nfir" +_name="firelord" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=20 +agiplus=1.6 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroAvatarOfFlame.blp" +atktype1="hero" +atktype2="hero" +awakentip="(|cffffcc00o|r)复活火焰巨魔" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.4 +castpt=0.67 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroFlameLord\\HeroFlameLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANic,ANso,ANlm,ANvc" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="O" +hp=100 +impactswimz=30.0 +impactz=120.0 +ineditor=1 +int=18 +intplus=2.5 +isbldg=0 +isbuildon=0 +launchswimz=30.0 +launchx=-12.0 +launchy=100.0 +launchz=130.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LordofFlameMissile\\LordofFlameMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="火焰巨魔" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="拉格尔,哈特斯,布雷泽,海特富莱,沃尔卡,富莱夏尔,卡尔,斯莫,辛格尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=550 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="(|cffffcc00o|r)复活火焰巨魔" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-avatarofflame.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00o|r)召唤火焰巨魔" +turnrate=0.6 +ubertip="神秘型英雄,擅长于破坏魔法并施放出巨大的火焰攻击力。能学习到燃灰、灵魂燃烧、召唤炎魔和火山爆发技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroFireLord" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Nkjx] +_id="Nkjx" +_name="kiljaedencinematic" +_type="unit" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNKiljaedin.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活巫师(|cffffcc00W|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(过场动画)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\KiljaedenCinema\\KiljaedenCinema" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=100 +impactswimz=0.0 +impactz=70.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=40.0 +launchz=70.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +primary="STR" +prio=12 +propernames="基尔加丹" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫师(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=210.0 +scale=3.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archimonde.blp" +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +turnrate=0.5 +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Nklj] +_id="Nklj" +_name="kiljaeden" +_type="unit" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNKiljaedin.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活巫师(|cffffcc00W|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Kiljaeden\\Kiljaeden" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=100 +impactswimz=0.0 +impactz=70.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=40.0 +launchz=70.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +primary="STR" +prio=12 +propernames="基尔加丹" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫师(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=210.0 +scale=1.7 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archimonde.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Nmag] +_id="Nmag" +_name="magtheridon" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=13 +agiplus=1.2 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNPitLord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活深渊魔王(|cffffcc00P|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.8 +dmgpt2=0.8 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\HeroPitLord\\HeroPitLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANrf,ANht,ANca,ANdo" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=100 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=16 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="深渊魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=9 +propernames="麦哥瑟里登" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=200 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活深渊魔王(|cffffcc00P|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=3.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-pitlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=25 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="战士型英雄,善于恐吓敌人。能学习火焰雨、恐怖嚎叫、分裂攻击和魔鬼缠身。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=125.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nman] +_id="Nman" +_name="mannoroth" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=17 +agiplus=1.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNMannoroth.blp" +atktype1="pierce" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活深渊魔王(|cffffcc00P|r)" +backsw1=0.45 +backsw2=0.45 +bldtm=60 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.3 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=2.0 +dice1=1 +dice2=2 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.833 +dmgpt2=0.833 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Mannoroth\\Mannoroth" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOsh,AHtc,AOeq,ANrn" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=4250 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=20 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.7 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="深渊魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=11 +propernames="玛诺洛斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=200 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活深渊魔王(|cffffcc00P|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=90.0 +scale=3.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-mannaroth.blp" +selcirconwater=0 +selz=0.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1800 +spd=250 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=30 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +unitshadow="Shadow" +unitsound="Pitlord" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nngs] +_id="Nngs" +_name="seawitch" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaSeaWitch.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活娜迦女海巫(|cffffcc00G|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.4 +castpt=0.67 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.73 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\HeroNagaSeawitch\\HeroNagaSeawitch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANfl,ANfa,ANms,ANto" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=100 +impactswimz=30.0 +impactz=120.0 +ineditor=1 +int=22 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=30.0 +launchx=-12.0 +launchy=100.0 +launchz=130.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NagaArrowMissile\\NagaArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="娜迦女海巫" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=9 +propernames="阿纳-康多拉,茜拉-暗影,乌瑟拉-蛇鬃,毒舌女巫,毒蛇女巫,黑暗女巫,塞丽娜-鳞伤,阿斯帕拉-瑟芭斯,维恩娜-海之风暴,查理布-迪莎" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活娜迦女海巫(|cffffcc00G|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-seawitch.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤娜迦女海巫(|cffffcc00G|r)" +turnrate=0.6 +ubertip="一位神秘的英雄,擅长于远距离战斗。能学习到叉状闪电、霜冻之箭、魔法护盾和龙卷风。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SeaWitch" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Npbm] +_id="Npbm" +_name="pandarenbrewmaster" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPandarenBrewmaster.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活熊猫酒仙(|cffffcc00N|r)" +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.22 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\PandarenBrewmaster\\PandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANbf,ANdh,ANdb,ANef" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=1.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊猫酒仙" +namecount=8 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="魔杰-黑啤酒,辛杰-蜜酒,克沙-野麦,塔特萨-甜猪,姆斯-酒炉,金托-芦苇酒,玛萨-烈啤酒,泊尔-桶酒" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活熊猫酒仙(|cffffcc00N|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-pandarenbrewmaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=22 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤熊猫酒仙(|cffffcc00N|r)" +turnrate=0.6 +ubertip="战士型英雄,特别擅长于近战。能学习火焰呼吸、醉酒云雾、醉拳和火土风暴这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="PandarenBrewmaster" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Npld] +_id="Npld" +_name="oldpitlord" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=17 +agiplus=1.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNPitLord.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活深渊魔王(|cffffcc00P|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.8 +dmgpt2=0.8 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\PitLord\\PitLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOsh,AHtc,AOeq,ANrn" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=20 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="深渊魔王" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=11 +propernames="阿哥勒尔,布鲁特里斯,蒙哥瑟德,迪斯麦斯,高哥那斯,麦哥瑟里登" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活深渊魔王(|cffffcc00P|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=210.0 +scale=3.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-pitlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=250 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=30 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +turnrate=0.4 +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nplh] +_id="Nplh" +_name="pitlord" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.3 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNPitLord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活深渊魔王(|cffffcc00I|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.8 +dmgpt2=0.8 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\HeroPitLord\\HeroPitLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANrf,ANht,ANca,ANdo" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="I" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=14 +intplus=1.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="深渊魔王" +namecount=5 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=9 +propernames="阿哥勒尔,布鲁特里斯,蒙哥瑟德,迪斯麦斯,高哥那斯,麦哥瑟里登" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活深渊魔王(|cffffcc00I|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=350.0 +scale=2.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-pitlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=24 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤深渊魔王(|cffffcc00I|r)" +turnrate=0.4 +type="undead" +ubertip="战士型英雄,善于恐吓敌人。可以学习火焰雨、恐怖嚎叫、分裂攻击和魔鬼缠身。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroPitLord" +useclickhelper=0 +walk=125.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Nrob] +_id="Nrob" +_name="robogoblintinker" +_type="unit" +abillist="AInv,ANde" +acquire=500.0 +agi=15 +agiplus=1.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +attachmentlinkprops="alternate " +awakentip="(|cffffcc00Z|r)复活修补匠" +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.53 +collision=32.0 +cool1=2.0 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinker\\HeroTinker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsy,ANcs,ANeg,ANrg" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="Z" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=21 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=48.0 +launchy=11.0 +launchz=157.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="修补匠" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=9 +propernames="盖茨,力克特,美卡,特克,普拉格,拉斯特" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip=" (|cffffcc00Z|r)复活修补匠" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=3.2 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-tinker.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=19 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00Z|r)召唤修补匠" +turnrate=0.6 +type="Mechanical" +ubertip="敏捷性的英雄,特别擅长于战斗和承受攻击。能学习到火箭群、口袋工厂、工程升级和机器人地精技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroTinker" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Nsjs] +_id="Nsjs" +_name="sinjostormstout" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=12 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPandarenBrewmaster.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活熊猫酒仙(|cffffcc00N|r)" +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.22 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\PandarenBrewmaster\\PandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANcf,Acdh,Acdb,Acef,Aamk" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=1.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊猫酒仙" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="陈-风暴烈酒" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活熊猫酒仙(|cffffcc00N|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-pandarenbrewmaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=105 +str=23 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤熊猫酒仙(|cffffcc00N|r)" +turnrate=0.6 +ubertip="战士型英雄,特别擅长于近战。能学习火焰呼吸、醉酒云雾、醉拳和风/地/火这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="PandarenBrewmaster" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Ntin] +_id="Ntin" +_name="tinker" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=15 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTinker.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="(|cffffcc00Z|r)复活修补匠" +backsw1=0.65 +backsw2=0.65 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.53 +collision=32.0 +cool1=2.0 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.35 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinker\\HeroTinker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsy,ANcs,ANeg,ANrg" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="Z" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=21 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-48.0 +launchy=13.0 +launchz=143.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BrewmasterMissile\\BrewmasterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="修补匠" +namecount=6 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=9 +propernames="盖茨,力克特,美卡,特克,普拉格,拉斯特" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="TALT" +requires1="TWN2,TALT" +requires2="TWN3,TALT" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip=" (|cffffcc00Z|r)复活修补匠" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-tinker.blp" +selcirconwater=0 +selz=0.0 +shadowh=220.0 +shadowonwater=1 +shadoww=220.0 +shadowx=72.0 +shadowy=72.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=19 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00Z|r)召唤修补匠" +turnrate=0.6 +ubertip="敏捷性的英雄,特别擅长于战斗和承受攻击。能学习到火箭群、口袋工厂、工程升级和机器人地精技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroTinker" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Obla] +_id="Obla" +_name="blademaster" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=23 +agiplus=1.75 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroBlademaster.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活剑圣(|cffffcc00B|r)" +backsw1=0.84 +backsw2=0.84 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.77 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.33 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroBladeMaster\\HeroBladeMaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOwk,AOcr,AOmi,AOww" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.25 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=40.0 +launchz=50.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑圣" +namecount=14 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="托伽拉,尼可拉,卡金德,米恺撒,萨穆罗,阿可喏斯,玛组鲁,尤舒拉,达舍,可伽米,阿拉斯凯奇,穆哥尔,朱倍尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="ostr" +requires2="ofrt" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活剑圣(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=290.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-blademaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤剑圣(|cffffcc00B|r)" +turnrate=0.6 +ubertip="一种较为灵活的英雄,特别擅长于一对一。能学习到镜像,疾步风,致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。" +unitshadow="Shadow" +unitsound="HeroBladeMaster" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Ocb2] +_id="Ocb2" +_name="cairnebloodhoofexp" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=10 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTaurenChieftain.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活牛头人酋长(|cffffcc00T|r)" +backsw1=0.97 +backsw2=0.97 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.47 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.36 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(资料片)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroTaurenChieftainCIN\\HeroTaurenChieftainCIN" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOs2,AOr2,AOr3,AOw2,Aamk" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=14 +intplus=1.3 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牛头人酋长" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=11 +propernames="卡林-血蹄" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活牛头人酋长(|cffffcc00T|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-taurenchieftain.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=250 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=25 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Cairne" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Ocbh] +_id="Ocbh" +_name="cairnebloodhoof" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=10 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTaurenChieftain.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活牛头人酋长(|cffffcc00T|r)" +backsw1=0.97 +backsw2=0.97 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.47 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.36 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroTaurenChieftainCIN\\HeroTaurenChieftainCIN" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOsh,AOae,AOre,AOws" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=14 +intplus=1.3 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牛头人酋长" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=11 +propernames="卡林-血蹄" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活牛头人酋长(|cffffcc00T|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-taurenchieftain.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=250 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=25 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Cairne" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Odrt] +_id="Odrt" +_name="drekthar" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=18 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroFarseer.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活先知(|cffffcc00F|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.07 +castpt=0.3 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroFarSeer\\HeroFarSeer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOfs,AOsf,AOcl,AOeq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="先知" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="德雷克萨尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活先知(|cffffcc00F|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=260.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-farseer.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤先知(|cffffcc00F|r)" +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链、透视、野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DrekThar" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ofar] +_id="Ofar" +_name="farseer" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=18 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroFarseer.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活先知(|cffffcc00F|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.07 +castpt=0.3 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroFarSeer\\HeroFarSeer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOfs,AOsf,AOcl,AOeq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="先知" +namecount=11 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="INT" +prio=9 +propernames="伽德尔,尼盖尔,卡滋尔,玛奇斯,巴尔,盖罗,卡伽尔,那滋盖尔,摩盖尔,卡拉盖尔,费恩理斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="ostr" +requires2="ofrt" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活先知(|cffffcc00F|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=260.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-farseer.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤先知(|cffffcc00F|r)" +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链,透视,野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面单位和空中单位。" +unitshadow="Shadow" +unitsound="HeroFarSeer" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ogld] +_id="Ogld" +_name="guldan" +_type="unit" +abillist="AInv" +acquire=1500.0 +agi=13 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNGuldan.blp" +atktype1="chaos" +atktype2="hero" +awakentip="复活巫师(|cffffcc00W|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.67 +castpt=0.5 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=4 +dice2=2 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\OrcWarlockGuldan\\OrcWarlockGuldan" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SerpentWardMissile\\SerpentWardMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="古尔丹" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=1500 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫师(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=380.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=20 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=120 +str=22 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤巫师(|cffffcc00W|r)" +turnrate=0.6 +ubertip="在基尔加丹亲自监督下战斗的强大巫师。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ogrh] +_id="Ogrh" +_name="gromhellscream" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=23 +agiplus=1.75 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHellScream.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活剑圣(|cffffcc00B|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.77 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Hellscream\\Hellscream" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOwk,AOcr,AOmi,AOww" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.25 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑圣" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=11 +propernames="格罗姆-地狱咆哮" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活剑圣(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=290.0 +scale=1.15 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-grom.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=19 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Grom" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Opgh] +_id="Opgh" +_name="possessedgromhellscream" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=23 +agiplus=1.75 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosGrom.blp" +atktype1="chaos" +atktype2="hero" +awakentip="复活剑圣(|cffffcc00B|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.77 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (着磨的)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosHellscream\\ChaosHellscream" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOwk,AOcr,AOmi,AOww" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.25 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑圣" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=11 +propernames="格罗姆-地狱咆哮" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活剑圣(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=290.0 +scale=1.15 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-chaosgrom.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=19 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Grom" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Orex] +_id="Orex" +_name="rexxar" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.3 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBeastmaster.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活驯兽师(|cffffcc00B|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Other\\Rexxar\\Rexxar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="Arsg,Arsq,ANsb,Arsp,Aamk" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=18 +intplus=2.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RexxarMissile\\RexxarMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="驯兽师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=12 +propernames="雷克萨" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活驯兽师(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-beastmaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=6 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=0 +stockstart=135 +str=25 +strplus=2.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤驯兽师(|cffffcc00B|r)" +turnrate=0.4 +ubertip="战士型英雄,特别擅长于召唤野兽和集合他的盟友。能够学习召唤熊、召唤豪猪、战嚎和惊吓这四个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Beastmaster" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Orkn] +_id="Orkn" +_name="rokhan" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=20 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNShadowHunter.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活暗影猎手(|cffffcc00S|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.07 +castpt=0.3 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroShadowHunter\\HeroShadowHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANhw,ANhx,Arsw,AOls,Aamk" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=18 +intplus=2.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ShadowHunterMissile\\ShadowHunterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="暗影猎手" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="AGI" +prio=11 +propernames="洛克汗" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活暗影猎手(|cffffcc00S|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.2 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-shadowhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤暗影猎手(|cffffcc00S|r)" +turnrate=0.4 +ubertip="灵巧型的英雄,擅长于医疗和巫毒魔法。能学习到医疗波,妖术,毒蛇守卫和巫毒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Rokhan" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Osam] +_id="Osam" +_name="samuro" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=23 +agiplus=1.75 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroBlademaster.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活剑圣(|cffffcc00B|r)" +backsw1=0.84 +backsw2=0.84 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.77 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.33 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroBladeMaster\\HeroBladeMaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOwk,AOcr,AOmi,AOww" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=16 +intplus=2.25 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=40.0 +launchz=50.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑圣" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=9 +propernames="萨穆罗" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活剑圣(|cffffcc00B|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=290.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-blademaster.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=12 +sides2=4 +sight=1800 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroBladeMaster" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Oshd] +_id="Oshd" +_name="shadowhunter" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=20 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNShadowHunter.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活暗影猎手(|cffffcc00H|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.07 +castpt=0.3 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.77 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroShadowHunter\\HeroShadowHunter" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOhw,AOhx,AOsw,AOvd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=17 +intplus=2.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ShadowHunterMissile\\ShadowHunterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="暗影猎手" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="AGI" +prio=9 +propernames="祖尔科斯,祖尔阿巴,祖尔拉贾斯,祖尔玛拉恩,乔乔-缩头者,萨卡-匝恩,萨卡提-拉,梅兹尔-克瑞" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="ostr" +requires2="ofrt" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活暗影猎手(|cffffcc00H|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=300.0 +scale=1.2 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-shadowhunter.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=85.0 +shadowy=85.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤暗影猎手(|cffffcc00H|r)" +turnrate=0.4 +ubertip="灵巧型的英雄,擅长于医疗和巫毒魔法。能学习到医疗波,妖术,毒蛇守卫和巫毒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroShadowHunter" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Otcc] +_id="Otcc" +_name="cairnebloodhoofcinematic" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=10 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTaurenChieftain.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活牛头人酋长(|cffffcc00T|r)" +backsw1=0.97 +backsw2=0.97 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.47 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.36 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (过场动画)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroTaurenChieftainCIN\\HeroTaurenChieftainCIN" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOsh,AOae,AOre,AOws" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=14 +intplus=1.3 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牛头人酋长" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=11 +propernames="卡林-血蹄" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活牛头人酋长(|cffffcc00T|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-taurenchieftain.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=250 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=25 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Cairne" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Otch] +_id="Otch" +_name="taurenchieftain" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=10 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroTaurenChieftain.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="large" +awakentip="复活牛头人酋长(|cffffcc00T|r)" +backsw1=0.97 +backsw2=0.97 +bldtm=55 +blend=0.3 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.8 +castpt=0.47 +collision=48.0 +cool1=2.05 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=2 +def=1.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.36 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeroTaurenChieftain\\HeroTaurenChieftain" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOsh,AOae,AOre,AOws" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=14 +intplus=1.3 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=20.0 +launchy=60.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牛头人酋长" +namecount=10 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +primary="STR" +prio=9 +propernames="玛恩,塞盖尔,塔穆,德恩,卡穆,可尔,穆恩尔,盖罗可,玛拉尔,塞阿尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="ostr" +requires2="ofrt" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活牛头人酋长(|cffffcc00T|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=180.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-taurenchieftain.blp" +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=250 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=25 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤牛头人酋长(|cffffcc00T|r)" +turnrate=0.4 +type="Tauren" +ubertip="一种战士型英雄,特别擅长于近战和吸收伤害。能学习到震荡波,战争践踏,耐久光环和重生这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroTaurenChieftain" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavyChop" + +[Othr] +_id="Othr" +_name="thrall" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=18 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThrall.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活先知(|cffffcc00F|r)" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.0 +castpt=0.6 +collision=32.0 +cool1=2.28 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Thrall\\Thrall" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AOfs,AOsf,AOcl,AOeq" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=19 +intplus=3.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="先知" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=12 +propernames="萨尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.25 +regenmana=0.01 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活先知(|cffffcc00F|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=260.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-thrall.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=16 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链、透视、野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Thrall" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Uanb] +_id="Uanb" +_name="anubarak" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.2 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroCryptLord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活地穴领主(|cffffcc00C|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Anubarak\\Anubarak" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUim,AUts,AUcb,AUls" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=25 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=14 +intplus=1.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=130.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=30.0 +maxroll=30.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地穴领主" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=11 +propernames="阿诺拉克" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活地穴首领(|cffffcc00C|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=180.0 +scale=1.85 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-cryptlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=112.0 +shadowy=112.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="战士型英雄,擅长于控制昆虫进行攻击。能学习到穿刺、尖刺外壳、腐尸甲虫和蝗虫群这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroCryptLord" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Ubal] +_id="Ubal" +_name="balnazzar" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTichondrius.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=200 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.53 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Tichondrius\\Tichondrius" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=200 +harea1=0 +harea2=0 +heroabillist="AUsl,AUav,ANr3,AOeq,ACf3" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=200.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=140.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="巴那泽尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=1.9 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-tichondrius.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDreadLord" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Uclc] +_id="Uclc" +_name="kelthuzadlichcinematic" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=14 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLichVersion2.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活巫妖(|cffffcc00L|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (巫妖,过场动画)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroLichCIN\\HeroLichCIN" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUfn,AUfu,AUdr,AUdd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=20 +intplus=3.4 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫妖" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=11 +propernames="克尔苏加德" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫妖(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-lich.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=14 +strplus=1.6 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种神秘的英雄,特别擅长于冰系魔法。能学习到霜冻护甲、霜冻新星、黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KelThuzadLich" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ucrl] +_id="Ucrl" +_name="cryptlord" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=14 +agiplus=1.2 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroCryptLord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活地穴首领(|cffffcc00C|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroCryptLord\\HeroCryptLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUim,AUts,AUcb,AUls" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=25 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=14 +intplus=1.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=130.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=30.0 +maxroll=30.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地穴领主" +namecount=9 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=9 +propernames="特比斯,特费司,阿努比,墨菲斯,圣荷如斯,内皮理,阿拉卡拉穆,托尔藤,帕拉何" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="unp1" +requires2="unp2" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活地穴首领(|cffffcc00C|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=180.0 +scale=1.85 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-cryptlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=112.0 +shadowy=112.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=26 +strplus=3.2 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤地穴领主(|cffffcc00C|r)" +turnrate=0.5 +type="undead" +ubertip="战士型英雄,擅长于控制昆虫进行攻击。能学习到穿刺,尖刺外壳, 腐尸甲虫和蝗虫群这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroCryptLord" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Udea] +_id="Udea" +_name="deathknight" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=12 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDeathKnight.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活死亡骑士(|cffffcc00D|r)" +backsw1=0.41 +backsw2=0.41 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.008 +castpt=0.452 +collision=32.0 +cool1=2.33 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.56 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroDeathKnight\\HeroDeathKnight" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUdc,AUdp,AUau,AUan" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-20.0 +launchy=60.0 +launchz=76.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="死亡骑士" +namecount=15 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="STR" +prio=9 +propernames="夜之哀伤,灵之领主,死亡风暴,玛达泽尔,黑神领主,光之领主,血浴男爵,血刃男爵,恐惧公爵,愤之公爵,霜之男爵,黑镰领主,哀冬公爵,皮尔喏得尔男爵,摩特男爵" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="unp1" +requires2="unp2" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活死亡骑士(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=380.0 +scale=1.85 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-deathknight.blp" +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=23 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤死亡骑士(|cffffcc00D|r)" +turnrate=0.5 +type="undead" +ubertip="是人族圣骑士的邪恶对手。能学习到死亡缠绕,死亡契约,邪恶光环和操纵死尸这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDeathKnight" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Udre] +_id="Udre" +_name="dreadlord" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDreadLord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.53 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroDreadLord\\HeroDreadLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUav,AUsl,AUcs,AUin" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=2.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=18 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +primary="STR" +prio=9 +propernames="特罗达尔,内罗司,布里克尔,内卡罗司,费罗司,德塞克斯,玛迪比恩,尼克塞塔斯,哥尔比恩,拉塞盖罗斯,阿玛克斯,滋费恩,罗塞拉斯,泽内塔,穆里奇,阿尔盖蒙,白尼或尔,维恩盖" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="unp1" +requires2="unp2" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-dreadlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤恐惧魔王(|cffffcc00E|r)" +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,能学习到腐臭蜂群,睡眠,吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDreadLord" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Udth] +_id="Udth" +_name="detheroc" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDreadlord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.9 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroDreadLord\\HeroDreadLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUsl,AEsh,AUcs,AUdd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="德赛洛克" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=1.75 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-dreadlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDreadLord" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Uear] +_id="Uear" +_name="evilarthas" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=12 +agiplus=1.5 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDeathKnight.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活死亡骑士(|cffffcc00D|r)" +backsw1=0.41 +backsw2=0.41 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.008 +castpt=0.452 +collision=32.0 +cool1=2.33 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.56 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (邪恶的)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\EvilArthas\\UndeadArthas" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUdc,AUdp,AUau,AUan" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=17 +intplus=1.8 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="死亡骑士" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=13 +propernames="阿尔塞斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活死亡骑士(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=380.0 +scale=1.85 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-deathknight.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=23 +strplus=2.7 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="战士型英雄,是人族圣骑士的邪恶对手。能学习到死亡缠绕、死亡契约、邪恶光环和操纵死尸这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="EvilArthas" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="MetalHeavySlice" + +[Uktl] +_id="Uktl" +_name="kelthuzadlich" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=14 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLichVersion2.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活巫妖(|cffffcc00L|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (巫妖)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroLich\\HeroLich" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUfn,AUfu,AUdr,AUdd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=20 +intplus=3.4 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫妖" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="INT" +prio=11 +propernames="克尔苏加德" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫妖(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-lich.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=14 +strplus=1.6 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种神秘的英雄,特别擅长于冰系魔法。能学习到霜冻护甲、霜冻新星、黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KelThuzadLich" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Ulic] +_id="Ulic" +_name="lich" +_type="unit" +abillist="AInv" +acquire=600.0 +agi=14 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLichVersion2.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活巫妖(|cffffcc00L|r)" +backsw1=0.54 +backsw2=0.54 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.4 +collision=32.0 +cool1=1.9 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.46 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroLich\\HeroLich" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUfn,AUfu,AUdr,AUdd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=20 +intplus=3.4 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=130.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="巫妖" +namecount=15 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +primary="INT" +prio=9 +propernames="奥丁-霜之毒,拉斯-破碎之刺,摩本特-法尔,瑞奇-冬之颤,召唤师阿拉吉,卡里那吉-丧钟,拉克-冰颅,迪恩-霜火,卡里斯-幽灵之子,维尼穆-冰刃,永恒之纳泽,拉斯-霜之语,霜冻舞者,奇那魔斯,克瑞普提克-屠魂者,阿兰迪尔-凌" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=500 +red=255 +regenhp=2.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires1="unp1" +requires2="unp2" +requirescount=3 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫妖(|cffffcc00L|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-lich.blp" +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=15 +strplus=2.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤巫妖(|cffffcc00L|r)" +turnrate=0.5 +type="undead" +ubertip="一种神秘的英雄,能学习到霜冻护甲,霜冻新星,黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroLich" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Umal] +_id="Umal" +_name="malganis" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDreadlord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.9 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroDreadLord\\HeroDreadLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUsl,AUcs,ANsl,ANdc" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=2.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="麦尔盖尼斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-dreadlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDreadLord" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Usyl] +_id="Usyl" +_name="evilsylvanas" +_type="unit" +abillist="AInv" +acquire=650.0 +agi=19 +agiplus=1.5 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBansheeRanger.blp" +atktype1="hero" +atktype2="hero" +awakentip="复活黑暗游侠(|cffffcc00D|r)" +backsw1=0.7 +backsw2=0.7 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=2.46 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Undead\\EvilSylvanas\\EvilSylvanas" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="ANsi,ANba,ANdr,ANch" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=15 +intplus=2.6 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=100 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗游侠" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="AGI" +prio=12 +propernames="西尔瓦娜斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.01 +regentype="night" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活黑暗游侠(|cffffcc00D|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=1.5 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-bansheeranger.blp" +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=18 +strplus=1.9 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗游侠(|cffffcc00D|r)" +turnrate=0.6 +type="undead" +ubertip="灵巧型的英雄,擅长于与对手周旋。能学习到沉默魔法、黑暗之箭、生命汲取和符咒这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="EvilSylvanas" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" +weaptp2="missile" + +[Utic] +_id="Utic" +_name="tichondrius" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTichondrius.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.9 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="divine" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Tichondrius\\Tichondrius" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUsl,AUcs,ANrc,ANfd" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="提克迪奥斯 " +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-tichondrius.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Tichondrius" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Uvar] +_id="Uvar" +_name="varimathras" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDreadlord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.9 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Tichondrius\\Tichondrius" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUsl,AUav,ANrf,ANdo" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=11 +propernames="法理玛瑟斯" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=1.75 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-dreadlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Varimathras" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Uvng] +_id="Uvng" +_name="vengyr" +_type="unit" +abillist="AInv" +acquire=500.0 +agi=16 +agiplus=1.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeroDreadlord.blp" +atktype1="hero" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活恐惧魔王(|cffffcc00E|r)" +backsw1=0.55 +backsw2=0.55 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.1 +castpt=0.9 +collision=32.0 +cool1=1.8 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="hero" +defup=0.0 +dice1=2 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.55 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\HeroDreadLord\\HeroDreadLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +heroabillist="AUav,AUsl,AUcs,AUin" +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=18 +intplus=4.5 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧魔王" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +primary="STR" +prio=10 +propernames="戴尔维恩格尔" +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=500 +red=255 +regenhp=1.0 +regenmana=0.01 +regentype="blight" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活恐惧魔王(|cffffcc00E|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=240.0 +scale=2.0 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-dreadlord.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=4 +sight=1800 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=20 +strplus=2.5 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="undead" +ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HeroDreadLord" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[Uwar] +_id="Uwar" +_name="archimonde" +_type="unit" +abillist="AInv,ACm2" +acquire=600.0 +agi=17 +agiplus=3.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNArchimonde.blp" +atktype1="chaos" +atktype2="hero" +attachmentanimprops="medium" +awakentip="复活巫师(|cffffcc00W|r)" +backsw1=0.6 +backsw2=0.6 +bldtm=55 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=2.0 +cool2=2.13 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="divine" +defup=2.0 +dice1=6 +dice2=2 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\Warlock\\Warlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=425 +goldrep=425 +green=255 +harea1=150 +harea2=0 +heroabillist="ANrc,ANdp,ANfd,AHbh" +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=2000 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=20 +intplus=4.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=40.0 +launchz=120.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=200 +manan=0 +maxpitch=5.0 +maxroll=5.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师" +namecount=1 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +primary="INT" +prio=12 +propernames="阿克蒙德" +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=500 +red=255 +regenhp=3.0 +regenmana=2.0 +regentype="always" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +revivetip="复活巫师(|cffffcc00W|r)" +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.1 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-archimonde.blp" +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=20 +sides2=4 +sight=1800 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=0 +stockregen=0 +stockstart=0 +str=21 +strplus=3.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targs2="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Warlock" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" +weaptp2="missile" + +[eaoe] +_id="eaoe" +_name="ancientoflore" +_type="unit" +abillist="Abds,Aeat,Aro1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAncientOfLore.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.67 +bldtm=70 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAncientofLore" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=2 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=40 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\AncientOfLore\\AncientOfLore" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=145 +lumberrep=145 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="知识古树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoa,edob" +requirescount=0 +requirewaterradius=0.0 +researches="Resi,Redc,Rers,Rehs,Reeb" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=150.0 +shadowy=150.0 +showui1=0 +showui2=1 +sides1=10 +sides2=10 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造知识古树(|cffffcc00L|r)" +trains="edry,edoc,emtg" +turnrate=0.4 +type="Ancient" +ubersplat="EMDA" +ubertip="能生产出暗夜精灵族的地面魔法单位:利爪德鲁伊,山岭巨人和树妖。|n还包括对利爪德鲁伊,驱魔技能,利爪之痕,硬化皮肤和抗性皮肤的升级。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="AncientOfLore" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[eaom] +_id="eaom" +_name="ancientofwar" +_type="unit" +abillist="Abds,Aeat,Aro1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAncientOfTheEarth.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.81 +backsw2=0.81 +bldtm=60 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAncientofWar" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=44 +dmgpt1=0.59 +dmgpt2=0.59 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\AncientOfWar\\AncientOfWar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=150 +goldrep=150 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=1000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="战争古树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Resc,Reib,Remk,Remg,Repb" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=11 +sides2=11 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造战争古树(|cffffcc00R|r)" +trains="earc,esen,ebal" +turnrate=0.4 +type="Ancient" +ubersplat="EMDA" +ubertip="能生产出:弓箭手,女猎手和投刃车。|n还包括对弓箭手,女猎手和投刃车的各类升级。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="AncientOfWar" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[eaow] +_id="eaow" +_name="ancientofwind" +_type="unit" +abillist="Abds,Aeat,Aro1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAncientOfTheMoon.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.67 +bldtm=60 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAncientofWind" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=37 +dmgplus2=37 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\AncientOfWind\\AncientOfWind" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=150 +goldrep=150 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风之古树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoa" +requirescount=0 +requirewaterradius=0.0 +researches="Redt,Reht,Reec" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=150.0 +shadowy=150.0 +showui1=0 +showui2=1 +sides1=9 +sides2=9 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造风之古树(|cffffcc00W|r)" +trains="ehip,edot,efdr" +turnrate=0.4 +type="Ancient" +ubersplat="EMDA" +ubertip="能生产出:角鹰兽,猛禽德鲁伊和精灵龙。|n还包括对角鹰兽和猛禽德鲁伊的各类升级。比如猛禽之痕和训练角鹰兽。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="AncientOfWind" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[earc] +_id="earc" +_name="archer" +_type="unit" +abillist="Aco2,Ashm,Aien,Ault" +acquire=800.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.28 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.72 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Archer\\Archer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=310 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=11.0 +launchy=62.0 +launchz=71.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练弓箭手(|cffffcc00A|r)" +turnrate=0.6 +ubertip="基本的远程攻击单位。能学习到射击术,硬弓和驯服角鹰兽这三项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Archer" +upgrades="Resm,Rema,Reib,Remk,Reuv,Repm" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="missile" + +[eate] +_id="eate" +_name="altarofelders" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfElders.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAltarofElders" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\AltarOfElders\\AltarOfElders" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="长者祭坛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10Simple.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造长者祭坛(|cffffcc00A|r)" +trains="Edem,Ekee,Emoo,Ewar" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +ubertip="能召唤新的英雄和复活阵亡的英雄。" +unitsound="AltarOfElders" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ebal] +_id="ebal" +_name="glaivethrower" +_type="unit" +abillist="Aimp,Ault" +acquire=1150.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGlaiveThrower.blp" +atktype1="siege" +atktype2="siege" +attachmentanimprops="large" +backsw1=1.9 +backsw2=1.9 +bldtm=48 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=3.5 +cool2=3.5 +customteamcolor=0 +damageloss1=0.2 +damageloss2=0.2 +death=3.34 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=38 +dmgplus2=38 +dmgpt1=0.1 +dmgpt2=0.1 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=25 +farea2=25 +fatlos=0 +file="units\\nightelf\\Ballista\\Ballista" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=3 +fused=3 +goldcost=210 +goldrep=210 +green=255 +harea1=50 +harea2=50 +hfact1=0.4 +hfact2=0.4 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=65 +lumberrep=65 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=250 +minspd=0 +"missilearc:1"=0.05 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GlaiveMissile\\GlaiveMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1400 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="投刃车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=150 +qarea2=150 +qfact1=0.25 +qfact2=0.25 +race="nightelf" +rangen1=1150 +rangen2=1150 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=48 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="edob" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=150.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=12 +sides2=12 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=50.0 +spillradius2=50.0 +splashtargs1="ground,structure,debris,wall" +splashtargs2="ground,structure,debris,wall,tree" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targetart="Abilities\\Weapons\\GlaiveMissile\\GlaiveMissileTarget.mdl" +targs1="ground,structure,debris,wall,item,ward" +targs2="ground,structure,debris,wall,item,ward,tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练投刃车(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="远距离的攻城武器。对付建筑物特别地有效。还能得到穿刺剑刃的升级。从而能攻击树木。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Ballista" +upgrades="Resm,Reuv,Repb" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="aline" +weaptp2="aline" + +[ebsh] +_id="ebsh" +_name="nightelfbattleship" +_type="unit" +abillist="Ault" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfBattleCruiser.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=100 +farea2=0 +fatlos=0 +file="units\\creeps\\NightElfBattleship\\NightElfBattleship" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=500 +goldrep=500 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="暗夜精灵族战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="nightelf" +rangen1=900 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=4.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=180.0 +shadowy=180.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用战舰(|cffffcc00B|r)" +turnrate=0.1 +type="Mechanical" +ubertip="强大的攻城舰船,能够很好地攻击地面建筑物和敌人的船只。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="artillery" + +[echm] +_id="echm" +_name="chimaera" +_type="unit" +abillist="Acor,Alit,Ault" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChimaera.blp" +atktype1="siege" +atktype2="magic" +attachmentanimprops="large" +backsw1=0.65 +backsw2=0.5 +bldtm=60 +blend=0.4 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.3 +castpt=0.7 +collision=8.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=66 +dmgpt1=0.7 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=50 +fatlos=0 +file="units\\nightelf\\Chimaera\\Chimaera" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=330 +goldrep=330 +green=255 +harea1=0 +harea2=150 +hfact1=0.0 +hfact2=0.5 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=105.0 +launchz=-18.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missileart:2"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="奇美拉" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=250 +qfact1=0.0 +qfact2=0.1 +race="nightelf" +rangen1=850 +rangen2=450 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=65 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=11 +sides2=17 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs2="ground,debris" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="structure,debris" +targs2="ground,item,ward,structure,debris" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练奇美拉(|cffffcc00C|r)" +turnrate=0.5 +ubertip="双头飞龙。能学到腐蚀喷吐技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="ShadowFlyer" +unitsound="Chimaera" +upgrades="Resw,Rerh,Recb,Reuv" +useclickhelper=0 +walk=200.0 +weapson=2 +weaptp1="missile" +weaptp2="msplash" + +[edcm] +_id="edcm" +_name="druidoftheclawmorphed" +_type="unit" +abillist="Abrf,Ara2,Aien,Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBearForm.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +attachmentlinkprops="alternate" +backsw1=0.83 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-druidofclaw.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 咆哮,- 咆哮|n- 生命恢复,- 咆哮|n- 生命恢复|n- 变熊" +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (变熊)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\DruidoftheClaw\\DruidoftheClaw" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=810 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=100 +manan=200 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="利爪德鲁伊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.33333333333333 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoa" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练利爪德鲁伊(|cffffcc00C|r)" +turnrate=0.6 +ubertip="近战型的魔法施放单位。一开始能施放咆哮技能,从而增加攻击力。随后还能学习到生命恢复,变熊和利爪之痕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DruidoftheClawMorphed" +upgrades="Resw,Rerh,Reuv,Redc,Repm" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[eden] +_id="eden" +_name="ancientofwonders" +_type="unit" +abillist="Abds,Aall,Aeat,Aro1,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAncientOfWonders.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.67 +bldtm=60 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowAncientofWind" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.2 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=20 +dmgplus2=20 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\AncientOfWonder\\AncientOfWonder" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=90 +goldrep=90 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=450 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +makeitems="moon,plcl,dust,phea,pman,stwp,spre,oven,pams" +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="奇迹古树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=750 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=150.0 +shadowy=150.0 +showui1=0 +showui2=1 +sides1=5 +sides2=5 +sight=1000 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造奇迹古树(|cffffcc00D|r)" +turnrate=0.4 +type="Ancient" +ubersplat="EMDA" +ubertip="建造出一个能出售物品的商店。商店内的物品是由你的生命之树的升级情况(生命之树, 远古之树, 永恒之树)和你所拥有的建筑物种类而定的。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="AncientOfWonder" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[edes] +_id="edes" +_name="nightelfdestroyer" +_type="unit" +abillist="Ault" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfDestroyer.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=54 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\nightelf\\NightElfDestroyerShip\\NightElfDestroyerShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=250 +goldrep=250 +green=255 +harea1=35 +harea2=0 +hfact1=0.3 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=575 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="暗夜精灵族护卫舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=50 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1500 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=60 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用护卫舰(|cffffcc00F|r)" +turnrate=0.2 +type="Mechanical" +ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="msplash" + +[edob] +_id="edob" +_name="huntershall" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNHuntersHall.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHuntersHall" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\HuntersHall\\HuntersHall" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=1100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="猎手大厅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etol" +requirescount=0 +requirewaterradius=0.0 +researches="Resm,Rema,Resw,Rerh,Reuv,Rews" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造猎手大厅(|cffffcc00H|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +ubertip="能对所有单位的攻防进行升级,还包括对夜视能力的升级。" +unitsound="HuntersHall" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[edoc] +_id="edoc" +_name="druidoftheclaw" +_type="unit" +abillist="Abrf,Arej,Aroa,Aien,Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDruidOfTheClaw.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.53 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.17 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-druidofclaw.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 咆哮,- 咆哮|n- 生命恢复,- 咆哮|n- 生命恢复|n- 变熊" +castpt=0.5 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dependencyor="edcm" +dice1=1 +dice2=0 +dmgplus1=18 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (暗夜精灵族形态)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\DruidoftheClaw\\DruidoftheClaw" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=430 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=100 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="利爪德鲁伊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.66666666666667 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoa" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练利爪德鲁伊(|cffffcc00C|r)" +turnrate=0.6 +ubertip="近战型的魔法施放单位。一开始能施放咆哮技能,从而增加攻击力。随后还能学习到生命恢复,变熊和利爪之痕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DruidoftheClaw" +upgrades="Redc,Reuv,Repm,Reeb" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[edos] +_id="edos" +_name="chimaeraroost" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNChimaeraRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowChimaeraRoost" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\ChimaeraRoost\\ChimaeraRoost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=100 +goldrep=100 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=230 +lumberrep=230 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="奇美拉栖木" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoe,eaow" +requirescount=0 +requirewaterradius=0.0 +researches="Recb" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造奇美拉栖木(|cffffcc00C|r)" +trains="echm" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +ubertip="能训练出奇美拉怪兽。|n还包括对腐蚀喷吐的研究。" +unitsound="ChimaeraRoost" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[edot] +_id="edot" +_name="druidofthetalon" +_type="unit" +abillist="Acyc,Arav,Afae,Aien,Ault" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDruidOfTheTalon.blp" +atktype1="magic" +atktype2="normal" +auto="Afae" +backsw1=0.67 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.97 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-druidoftalon.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 精灵之火,- 精灵之火|n- 风暴之鸦,- 精灵之火|n- 风暴之鸦|n- 飓风" +castpt=0.7 +collision=16.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=4.335 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dependencyor="edtm" +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (暗夜精灵族形态)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\DruidoftheTalon\\DruidoftheTalon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DruidoftheTalonMissile\\DruidoftheTalonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="猛禽德鲁伊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.66666666666667 +regentype="night" +reptm=22 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练猛禽德鲁伊(|cffffcc00T|r)" +turnrate=0.6 +ubertip="灵活的魔法单位。一开始就能施放精灵之火,从而能降低某个单位的护甲并让其不能隐形。随后还能学习到风暴之鸦,飓风和猛禽之痕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DruidoftheTalon" +upgrades="Redt,Reuv,Repm,Reec" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[edry] +_id="edry" +_name="dryad" +_type="unit" +abillist="Aadm,Amim,Aspo,Aien,Ault" +acquire=800.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDryad.blp" +atktype1="pierce" +atktype2="normal" +auto="Aadm" +backsw1=0.7 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Dryad\\Dryad" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=435 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-25.0 +launchy=40.0 +launchz=125.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=75 +manan=200 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Dryadmissile\\Dryadmissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树妖" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=380.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练树妖(|cffffcc00D|r)" +turnrate=0.5 +ubertip="她的毒性攻击能减慢敌人的速度并慢慢地消耗敌人的生命值。她还具有驱魔技能和魔法免疫技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Dryad" +upgrades="Resw,Rerh,Resi,Reuv,Repm" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="missile" + +[edtm] +_id="edtm" +_name="druidofthetalonmorphed" +_type="unit" +abillist="Arav,Afa2,Ault" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRavenForm.blp" +atktype1="magic" +atktype2="normal" +attachmentlinkprops="alternate" +auto="Afae" +backsw1=0.57 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-druidoftalon.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 精灵之火,- 精灵之火|n- 风暴之鸦,- 精灵之火|n- 风暴之鸦|n- 飓风" +castpt=0.3 +collision=8.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=4.335 +deathtype=0 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=34 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (风暴之鸦形态)" +elevpts=2 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\DruidoftheTalon\\DruidoftheTalon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=75 +manan=200 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DruidoftheTalonMissile\\DruidoftheTalonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="猛禽德鲁伊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.66666666666667 +regentype="night" +reptm=22 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1600 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练猛禽德鲁伊(|cffffcc00T|r)" +turnrate=0.6 +ubertip="灵活的魔法单位。一开始就能施放精灵之火,从而能降低某个单位的护甲并让其不能隐形。随后还能学习到风暴之鸦,飓风和猛禽之痕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="DruidoftheTalonMorphed" +upgrades="Resw,Rerh,Reuv,Redt" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[efdr] +_id="efdr" +_name="faeriedragon" +_type="unit" +abillist="Amim,Amfl,Apsh,Ault" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNFaerieDragon.blp" +atktype1="pierce" +atktype2="normal" +auto="Apsh" +backsw1=0.8 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.13 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\FaerieDragon\\FaerieDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=450 +impactswimz=0.0 +impactz=11.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=70.0 +launchz=11.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=75 +manan=200 +maxpitch=45.0 +maxroll=33.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FaerieDragonMissile\\FaerieDragonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="精灵龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=4 +points=100 +prio=8 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="night" +reptm=25 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="eden" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1600 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练精灵龙(|cffffcc00F|r)" +turnrate=0.4 +ubertip="小型的飞行单位,擅长伤害敌人的魔法单位。具有变相移动,魔力之焰和魔法免疫技能。|n|n|Cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="FaerieDragon" +upgrades="Resw,Rerh" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[efon] +_id="efon" +_name="forceofnature" +_type="unit" +abillist="Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEnt.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.533 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.14 +deathtype=0 +def=0.0 +deftype="large" +defup=5.0 +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.467 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Ent\\Ent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=110.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1200 +spd=220 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Ent" +upgrades="Reuv,Renb" +useclickhelper=0 +walk=110.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[egol] +_id="egol" +_name="entangledgoldmine" +_type="unit" +abillist="Abds,Aenc,Slo2,Adri,Aegm" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoldMine.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=7.0 +bufftype="resource" +buildingshadow="BuildingShadowLarge" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\EntangledGoldMine\\EntangledGoldMine" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=800 +impactswimz=0.0 +impactz=120.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="被缠绕的金矿" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Goldmine.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="缠绕金矿( |cffffcc00G|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +ubertip="冒出一些根须缠绕在金矿上,使得小精灵能采集资源。" +unitsound="EntangledGoldMine" +upgrades="Rgfo" +useclickhelper=0 +walk=100.0 +weapson=0 + +[ehip] +_id="ehip" +_name="hippogryph" +_type="unit" +abillist="Aco3,Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHippogriff.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.37 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.05 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=49 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Hippogryph\\Hippogryph" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=525 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="角鹰兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=350.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1600 +spd=400 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练角鹰兽(|cffffcc00H|r)" +turnrate=0.4 +ubertip="近战型飞行单位。能学习到驯服角鹰兽技能。|n|n|cffffcc00能攻击空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Hippogryph" +upgrades="Resw,Rerh,Reht,Reuv" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ehpr] +_id="ehpr" +_name="riddenhippogryph" +_type="unit" +abillist="Adec,Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHippogriffRider.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.337 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.633 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\RiddenHippogryph\\RiddenHippogryph" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=835 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="角鹰兽骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=350.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1600 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="骑乘角鹰兽(|cffffcc00R|r)" +turnrate=0.4 +ubertip="弓箭手骑乘在了角鹰兽上面就成为了角鹰兽骑士。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="RiddenHippogryph" +upgrades="Resm,Rema,Reib,Remk,Reht,Reuv" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="missile" + +[eilw] +_id="eilw" +_name="illidanwagon" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCagedIllidan.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.83 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\IllidanEvilCaged\\IllidanEvilCaged" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=330 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="囚车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=180 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="Mechanical" +unitshadow="Shadow" +unitsound="PrisonWagon" +useclickhelper=0 +walk=200.0 +weapson=0 + +[emow] +_id="emow" +_name="moonwell" +_type="unit" +abillist="Abds,Ambt" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNMoonWell.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowMoonWell" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\MoonWell\\MoonWell" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=100 +manan=300 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="月亮井" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=1.25 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造月亮井(|cffffcc00M|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="ESMB" +ubertip="提供人口,从而增加可造单位数量的最大值。还能补充暗夜精灵族单位的魔法值和生命值。在夜间它也能自我恢复魔法能量。还能得到月井之春技能的升级。" +unitsound="MoonWell" +upgrades="Rews,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[emtg] +_id="emtg" +_name="mountaingiant" +_type="unit" +abillist="Atau,Agra,Arsk,Assk,Aien" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNMountainGiant.blp" +atktype1="normal" +atktype2="siege" +attachmentanimprops="large" +backsw1=1.0 +backsw2=1.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=3.0 +castpt=0.0 +collision=48.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=26 +dmgplus2=32 +dmgpt1=0.49 +dmgpt2=0.49 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\MountainGiant\\MountainGiant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=7 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=1400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="山岭巨人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=250 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="night" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="etoa,eden" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=7 +sides2=8 +sight=1200 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,tree,wall,item,ward" +targs2="ground,structure,debris,tree,wall,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练山岭巨人(|cffffcc00G|r)" +turnrate=0.4 +ubertip="大型的近战单位,善于吸收敌人的进攻。具有嘲讽和拔树技能。也能学习到硬化皮肤和抗性皮肤这两个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="MountainGiant" +upgrades="Resw,Rerh,Rers,Rehs,Repm,Reuv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[enec] +_id="enec" +_name="nightelfrunner" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfRunner.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=10 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.03 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Runner\\Runner" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="暗夜精灵信使" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=10 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="shadow" +unitsound="Runner" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ensh] +_id="ensh" +_name="naisha" +_type="unit" +abillist="Aesr,Ashm,Amgr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHuntress.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.54 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.4 +castpt=0.6 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.5 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=400 +farea2=0 +fatlos=0 +file="units\\nightelf\\Huntress\\Huntress" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=195 +goldrep=195 +green=125 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=700 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SentinelMissile\\SentinelMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="娜萨" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=225 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,item,ward,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=5 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Naisha" +upgrades="Resm,Rema,Resc,Reuv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="mbounce" +weaptype1="MetalMediumSlice" + +[esen] +_id="esen" +_name="huntress" +_type="unit" +abillist="Aesn,Ashm,Amgl,Aien,Ault" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHuntress.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.54 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.4 +castpt=0.6 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.5 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.46 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=400 +farea2=0 +fatlos=0 +file="units\\nightelf\\Huntress\\Huntress" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=575 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SentinelMissile\\SentinelMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="女猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=225 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="edob" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=2 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练女猎手(|cffffcc00H|r)" +turnrate=0.6 +ubertip="灵活的远程攻击单位,能学习到哨兵和月刃技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Huntress" +upgrades="Resm,Rema,Resc,Reuv,Remg,Repm" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="mbounce" +weaptype1="MetalMediumSlice" + +[eshd] +_id="eshd" +_name="shandris" +_type="unit" +abillist="Ashm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNShandris.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.28 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.3 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.72 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Shandris\\Shandris" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=11.0 +launchy=62.0 +launchz=71.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="塞恩德里斯" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="night" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Shandris" +upgrades="Resm,Rema,Reib,Remk,Reuv" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="missile" + +[eshy] +_id="eshy" +_name="nightelfshipyard" +_type="unit" +abillist="Abds,Ane2" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfShipyard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHumanShipyard" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="fort" +defup=2.0 +description="出售船只" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\NightElf\\NightElfShipyard\\NightElfShipyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="暗夜精灵族船坞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=384.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造暗夜精灵族船坞" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +ubertip="船只建造工厂。能建造出暗夜精灵族的运输船,护卫舰和战舰。" +unitsound="GoblinShipyard" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[espv] +_id="espv" +_name="spiritofvengeance" +_type="unit" +abillist="ACmi,Asp1,ACrk,Avng" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritOfVengeance.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +auto="Avng" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\SpiritOfVengeance\\SpiritOfVengeance" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=70.0 +launchy=0.0 +launchz=140.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SpiritOfVengeanceMissile\\SpiritOfVengeanceMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="复仇天神" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=450 +rangen2=0 +red=255 +regenhp=1.6 +regenmana=2.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=12 +sides2=0 +sight=1200 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="SpiritOfVengeance" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="missile" + +[etoa] +_id="etoa" +_name="treeofages" +_type="unit" +abillist="Aent,Aeat,Aro1,Abdl,Atol,Arlm" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="Upgrade,First" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreeOfAges.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="upgrade,first,large" +backsw1=0.6 +backsw2=0.6 +bldtm=140 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=48 +dmgplus2=48 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\TreeofLife\\TreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=320 +goldrep=660 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=1700 +impactswimz=0.0 +impactz=200.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=180 +lumberrep=365 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="远古之树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Renb,Repm" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=12 +sides2=12 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到远古之树(|cffffcc00U|r)" +trains="ewsp" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="升级到了远古之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrade="etoe" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[etoe] +_id="etoe" +_name="treeofeternity" +_type="unit" +abillist="Aent,Aeat,Aro1,Abdl,Atol,Arlm" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="Upgrade,Second" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreeOfEternity.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="upgrade,second,large" +backsw1=0.6 +backsw2=0.6 +bldtm=140 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=59 +dmgplus2=59 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\TreeofLife\\TreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=350 +goldrep=1010 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2000 +impactswimz=0.0 +impactz=180.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=220 +lumberrep=585 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="永恒之树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=130 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="eate" +requirescount=0 +requirewaterradius=0.0 +researches="Renb,Repm" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=15 +sides2=15 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到永恒之树(|cffffcc00U|r)" +trains="ewsp" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="升级到了永恒之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[etol] +_id="etol" +_name="treeoflife" +_type="unit" +abillist="Aent,Aeat,Aro1,Abdl,Atol,Arlm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreeOfLife.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.6 +backsw2=0.6 +bldtm=110 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=40 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\nightelf\\TreeofLife\\TreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1300 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=185 +lumberrep=185 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="生命之树" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=110 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Renb,Repm" +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=10 +sides2=10 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造生命之树(|cffffcc00T|r)" +trains="ewsp" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="暗夜精灵族的基本建筑物。能训练小精灵和缠绕金矿。在升级到了远古之树和永恒之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrade="etoa" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[etrp] +_id="etrp" +_name="ancientprotector" +_type="unit" +abillist="Abds,Aeat,Aro2" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreant.blp" +atktype1="normal" +atktype2="pierce" +backsw1=0.6 +backsw2=0.4 +bldtm=60 +blend=0.4 +blue=255 +bountydice=3 +bountyplus=40 +bountysides=3 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowAncientProtector" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=144.0 +cool1=1.5 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="fort" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=25 +dmgplus2=44 +dmgpt1=0.4 +dmgpt2=0.6 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=25 +fatlos=0 +file="buildings\\nightelf\\AncientProtector\\AncientProtector" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=75 +hfact1=0.0 +hfact2=0.15 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=80.0 +launchz=310.0 +level=3 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=750 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="远古守护者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=125 +qfact1=0.0 +qfact2=0.05 +race="nightelf" +rangen1=128 +rangen2=700 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="edob" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=125.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=125.0 +shadowy=125.0 +showui1=1 +showui2=1 +sides1=8 +sides2=10 +sight=1900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs2="ground,structure,debris,wall,enemy,neutral" +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air,ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造远古保护者(|cffffcc00P|r)" +turnrate=0.4 +type="Ancient" +ubersplat="ESMA" +ubertip="防御性古树。在扎根以后,会向空中投掷大量的石块以对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="AncientProtector" +upgrades="Renb,Rgfo" +useclickhelper=0 +walk=125.0 +weapson=3 +weaptp1="normal" +weaptp2="msplash" +weaptype1="WoodHeavyBash" + +[etrs] +_id="etrs" +_name="nightelftransportship" +_type="unit" +abillist="Sch5,Slo3,Sdro" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfTransport.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\NightElfTransportShip\\NightElfTransportShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="暗夜精灵族运输船" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用暗夜精灵族运输船(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="能够运送单位的运输船。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=0 + +[even] +_id="even" +_name="vengeance" +_type="unit" +abillist="Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNAvengingWatcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.13 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Vengeance\\Vengeance" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=50.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=15.0 +launchy=0.0 +launchz=45.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\VengeanceMissile\\VengeanceMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="复仇之魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=450 +rangen2=0 +red=255 +regenhp=1.6 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Vengeance" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="missile" + +[ewsp] +_id="ewsp" +_name="wisp" +_type="unit" +abillist="Adtn,Aren,Awha,Ault" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNWisp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=14 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="etol,emow,edos,eaom,eate,eaow,eaoe,edob,etrp,eden" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\Wisp\\Wisp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=60 +goldrep=60 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=120 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="小精灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=750 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=14 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1000 +spd=270 +special=0 +specialart="Units\\NightElf\\Wisp\\WispExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练小精灵(|cffffcc00W|r)" +turnrate=0.6 +type="Peon" +ubertip="暗夜精灵族基本的工人单位。能采集金矿和木材。还能建造精灵族的建筑物并进行修理更新。|n能自我爆炸从而伤害到周围被召唤出来的单位并吸收一定范围内所有单位的魔法值。" +unitsound="Wisp" +upgrades="Rewd,Reuv" +useclickhelper=0 +walk=200.0 +weapson=0 + +[halt] +_id="halt" +_name="altarofkings" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfKings.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAltarofKings" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.335 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\AltarofKings\\AltarofKings" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="国王祭坛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造国王祭坛(|cffffcc00A|r)" +trains="Hamg,Hmkg,Hpal,Hblm" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="召唤新的英雄或者复活死去的英雄。" +unitsound="AltarofKings" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[harm] +_id="harm" +_name="workshop" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNWorkshop.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowArmory" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.335 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\Workshop\\Workshop" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=140 +goldrep=140 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="车间" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hkee,hbla" +requirescount=0 +requirewaterradius=0.0 +researches="Rhgb,Rhfl,Rhrt,Rhfc,Rhfs" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造车间(|cffffcc00W|r)" +trains="hgyr,hmtm,hmtt,hrtt" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="能生产出蒸汽机车、迫击炮小队和飞行机器。|n并且包括对照明弹、碎片攻击、弹幕攻击、飞行机器炸弹和高射炮火的升级。" +unitsound="Workshop" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[haro] +_id="haro" +_name="arcaneobservatory" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArcaneObservatory.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowArcaneObservatory" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.66 +deathtype=2 +def=5.0 +deftype="fort" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ArcaneObservatory\\ArcaneObservatory" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="神秘了望台" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\ArcaneObservatoryPath.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=600 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造神秘了望台(|cffffcc00V|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +unitsound="ArcaneObservatory" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hars] +_id="hars" +_name="arcanesanctum" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArcaneSanctum.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowArcaneSanctum" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\ArcaneSanctum\\ArcaneSanctum" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=150 +goldrep=150 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=1050 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="神秘圣地" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hkee" +requirescount=0 +requirewaterradius=0.0 +researches="Rhpt,Rhst,Rhse,Rhss" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="神秘圣地(|cffffcc00R|r)" +trains="hmpr,hsor,hspt" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="能训练出牧师,女巫,魔法破坏者。|n还包括对牧师,女巫的魔法技能升级,控制魔法的技能升级。使得人族的防御塔具有探测隐形单位能力的魔法岗哨也是在这里进行研究的。" +unitsound="ArcaneSanctum" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hatw] +_id="hatw" +_name="humanarcanetower" +_type="unit" +abillist="Abds,Afbt,AHta,Adts" +acquire=700.0 +agi=0 +agiplus=0.0 +animprops="upgrade,third" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanArcaneTower.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowGuardTower" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=2 +def=5.0 +deftype="large" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanTower\\HumanTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=80 +goldrep=110 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=245.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Spells\\Undead\\OrbOfDeath\\OrbOfDeathMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="神秘之塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级神秘之塔(|cffffcc00N|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="魔法防御塔。对于敌人的英雄和魔法施放者特别有效。有魔法回应技能,使它的攻击能够破坏魔法值,破坏的量与攻击的伤害相同。可以学习魔法哨兵技能。|n|n|cffffcc00攻击地面和空中单位。" +unitsound="ArcaneTower" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hbar] +_id="hbar" +_name="humanbarracks" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNHumanBarracks.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowHumanBarracks" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanBarracks\\HumanBarracks" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="兵营" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=9 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rhde,Rhan,Rhri" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造兵营(|cffffcc00B|r)" +trains="hfoo,hrif,hkni" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="最基本的产兵建筑物。能训练出人族的步兵,矮人火枪手和骑士。|n步兵的防御模式,矮人火枪手的长管火枪以及训兽术也都是在这里进行研究的。" +unitsound="HumanBarracks" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hbew] +_id="hbew" +_name="bloodelfwagon" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBloodElfSupplyWagon.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.83 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\BloodElfWagon\\BloodElfWagon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=180 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="Mechanical" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hbla] +_id="hbla" +_name="blacksmith" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBlacksmith.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowBlacksmith" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\Blacksmith\\Blacksmith" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=140 +goldrep=140 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="铁匠铺" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="htow" +requirescount=0 +requirewaterradius=0.0 +researches="Rhme,Rhar,Rhla,Rhra" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造铁匠铺(|cffffcc00S|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="能对护甲,武器和火药进行升级。" +unitsound="Blacksmith" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hbot] +_id="hbot" +_name="humantransportship" +_type="unit" +abillist="Sch5,Slo3,Sdro" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanTransport.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanTransportShip\\HumanTransportShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="人族运输船" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用运输船(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="大型的海上船只,能携带单位。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hbsh] +_id="hbsh" +_name="humanbattleship" +_type="unit" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanBattleShip.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=100 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanBattleship\\HumanBattleship" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=500 +goldrep=500 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="人族战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="human" +rangen1=900 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=4.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=180.0 +shadowy=180.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用战舰(|cffffcc00B|r)" +turnrate=0.1 +type="Mechanical" +ubertip="强大的舰船,能够有效地攻击地面建筑物。|n|n|cffffcc00能攻击地面单位。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="artillery" + +[hcas] +_id="hcas" +_name="castle" +_type="unit" +abillist="Abdl,Amic,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCastle.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowCastle" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=172.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.17 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\TownHall\\TownHall" +fileverflags=0 +fmade=12 +fograd=0.0 +formation=0 +fused=0 +goldcost=380 +goldrep=1085 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=230 +lumberrep=645 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城堡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="halt" +requirescount=0 +requirewaterradius=0.0 +researches="Rhpm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=1 +tip="升级到城堡(|cffffcc00U|r)" +trains="hpea" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="HCAS" +ubertip="升级到城堡之后能使玩家建造许多新的建筑物和单位。" +unitsound="Castle" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hcth] +_id="hcth" +_name="thecaptain" +_type="unit" +abillist="Adef" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNTheCaptain.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.04 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\TheCaptain\\TheCaptain" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="船长" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Captain" +upgrades="Rhar,Rhme" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[hctw] +_id="hctw" +_name="cannontower" +_type="unit" +abillist="Abds,Adts" +acquire=800.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCannonTower.blp" +atktype1="siege" +atktype2="siege" +backsw1=0.3 +backsw2=0.3 +bldtm=75 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowCannonTower" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=1 +dmgplus1=89 +dmgplus2=89 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanTower\\HumanTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=170 +goldrep=200 +green=255 +harea1=100 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CannonTowerMissile\\CannonTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=700 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="炮塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=125 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="human" +rangen1=800 +rangen2=800 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=75 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="harm" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=22 +sides2=22 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,notself" +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,ward,item" +targs2="structure" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到炮塔(|cffffcc00C|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="重型的防御性建筑物,对付成群结队的敌人尤为有效。还能学到魔法岗哨技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitsound="CannonTower" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[hdes] +_id="hdes" +_name="humandestroyer" +_type="unit" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanDestroyer.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=54 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanDestroyerShip\\HumanDestroyerShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=250 +goldrep=250 +green=255 +harea1=35 +harea2=0 +hfact1=0.3 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=575 +impactswimz=30.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=30.0 +launchx=0.0 +launchy=70.0 +launchz=30.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="人族护卫舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=50 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1500 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=60 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用护卫舰(|cffffcc00F|r)" +turnrate=0.2 +type="Mechanical" +ubertip="多功能的攻击舰。擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="msplash" + +[hdhw] +_id="hdhw" +_name="dragonhawk" +_type="unit" +abillist="Aclf,Amls" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDragonHawk.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.633 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=1.03 +castpt=0.3 +collision=8.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.13 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=18 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\BloodElfDragonHawk\\BloodElfDragonHawk" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=235 +goldrep=235 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=575 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-17.0 +launchz=33.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=150 +manan=300 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DragonHawkMissile\\DragonHawkMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1100 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="龙鹰骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=1 +points=100 +prio=4 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.75 +regentype="always" +reptm=65 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hvlt" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1600 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练龙鹰骑士(|cffffcc00D|r)" +turnrate=0.4 +ubertip="动作敏捷的飞行单位,骑乘一位精灵族战士。拥有空中锁镣技能,可以暂时禁锢和残废敌空中单位。可以学习到训兽术和乌云技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="BloodElfDragonHawk" +upgrades="Rhla,Rhme,Rguv,Rhan,Rhcd" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hfoo] +_id="hfoo" +_name="footman" +_type="unit" +abillist="Adef,Aihn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNFootman.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.04 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Footman\\Footman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=420 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="步兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="生产步兵(|cffffcc00F|r)" +turnrate=0.6 +ubertip="步兵能学习到防御模式技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Footman" +upgrades="Rhar,Rhme,Rhde,Rhpm,Rguv" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[hgra] +_id="hgra" +_name="gryphonaviary" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGryphonAviary.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=75 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowGryphonAviary" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=100.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\GryphonAviary\\GryphonAviary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=1200 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=240 +lumberrep=240 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="狮鹫笼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=75 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hcas,hlum" +requirescount=0 +requirewaterradius=0.0 +researches="Rhhb,Rhcd" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造狮鹫笼(|cffffcc00G|r)" +trains="hgry,hdhw" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="能训练出狮鹫骑士和龙鹰骑士。|n还包括对风暴战锤和乌云技能的研究。" +unitsound="GryphonAviary" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hgry] +_id="hgry" +_name="gryphonrider" +_type="unit" +abillist="Asth" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGryphonRider.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.87 +backsw2=0.87 +bldtm=45 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.3 +collision=8.0 +cool1=2.2 +cool2=2.4 +customteamcolor=0 +damageloss1=0.2 +damageloss2=0.0 +death=1.67 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=44 +dmgpt1=0.8 +dmgpt2=0.8 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\GryphonRider\\GryphonRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=280 +goldrep=280 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=825 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=12.0 +launchy=-17.0 +launchz=33.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GryphonRiderMissile\\GryphonRiderMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1100 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="狮鹫骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=450 +rangen2=450 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=11 +sides2=11 +sight=1600 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=50.0 +spillradius2=0.0 +splashtargs1="ground,structure,enemy,debris" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targetart="Abilities\\Weapons\\GryphonRiderMissile\\GryphonRiderMissileTarget.mdl" +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练狮鹫骑士(|cffffcc00G|r)" +turnrate=0.4 +ubertip="威力巨大的飞行单位,狮鹫上面骑乘着一个矮人族的锤手。能学到风暴战锤技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="GryphonRider" +upgrades="Rhan,Rhla,Rhhb,Rhme,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="mline" +weaptp2="missile" + +[hgtw] +_id="hgtw" +_name="guardtower" +_type="unit" +abillist="Abds,Adts" +acquire=700.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGuardTower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowGuardTower" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="large" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanTower\\HumanTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=80 +goldrep=110 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=145.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="防御塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hlum" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到防御塔(|cffffcc00G|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="基本的防守型建筑物,能学习到魔法岗哨技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="GuardTower" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hgyr] +_id="hgyr" +_name="flyingmachine" +_type="unit" +abillist="Agyb,Agyv,Aflk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNFlyingMachine.blp" +atktype1="pierce" +atktype2="siege" +attachmentanimprops="medium" +backsw1=0.97 +backsw2=0.7 +bldtm=13 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=2.0 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=6 +dmgpt1=0.03 +dmgpt2=0.633 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Gyrocopter\\Gyrocopter" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=90 +goldrep=90 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=175 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GyroCopter\\GyroCopterImpact.mdl" +"missileart:2"="Abilities\\Weapons\\GyroCopter\\GyroCopterMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=2000 +"missilespeed:2"=900 +modelscale=1.0 +movefloor=90.0 +moveheight=280.0 +movementsoundlabel="HumanGyrocopterMovement" +movetp="fly" +name="飞行机器" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1100 +occh=0.0 +orientinterp=2 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=500 +rangen2=100 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=13 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=125.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=2 +sides2=2 +sight=1800 +spd=400 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="生产飞行机器(|cffffcc00F|r)" +turnrate=0.5 +type="Mechanical" +ubertip="快速移动的飞行机器,能出色地完成侦察任务也能有效地抵抗敌人的空中单位,能获得飞行机器炸弹和高射炮火的升级。|n能看见隐形单位。|n|n|cffffcc00能攻击空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Gyrocopter" +upgrades="Rhar,Rhra,Rhgb,Rhfc,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="instant" +weaptp2="missile" + +[hhdl] +_id="hhdl" +_name="riderlesshorse" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNRiderlessHorse.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.1 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\KnightNoRider\\KnightNoRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="无人之马" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="KnightNoRider" +upgrades="Rhan" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hhes] +_id="hhes" +_name="highelvenswordsman" +_type="unit" +abillist="Adef" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNTheCaptain.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=180 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.04 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\TheCaptain\\TheCaptain" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=420 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="剑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练剑士(|cffffcc00S|r)" +turnrate=0.6 +ubertip="多才多艺的步兵战士。能学习到防御技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="HighElfSwordsman" +upgrades="Rhar,Rhme,Rhde,Rhpm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[hhou] +_id="hhou" +_name="farm" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHouse" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\Farm\\Farm" +fileverflags=0 +fmade=6 +fograd=0.0 +formation=0 +fused=0 +goldcost=80 +goldrep=80 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="农场" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造农场(|cffffcc00F|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="提供人口,增加可造单位数量的最大值。" +unitsound="Farm" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hkee] +_id="hkee" +_name="keep" +_type="unit" +abillist="Abdl,Amic,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNKeep.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowKeep" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.17 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\TownHall\\TownHall" +fileverflags=0 +fmade=12 +fograd=0.0 +formation=0 +fused=0 +goldcost=320 +goldrep=705 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2000 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=210 +lumberrep=415 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="主城" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rhpm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=1 +tip="升级到主城(|cffffcc00U|r)" +trains="hpea" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="HTOW" +ubertip="升级到主城之后能使玩家建造许多新的建筑物和单位。" +unitsound="Keep" +upgrade="hcas" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hkni] +_id="hkni" +_name="knight" +_type="unit" +abillist="Aihn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNKnight.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.44 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.1 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=25 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Knight\\Knight" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=245 +goldrep=245 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="HumanKnightMovement" +movetp="horse" +name="骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hlum,hcas,hbla" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=380.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练骑士(|cffffcc00K|r)" +turnrate=0.5 +ubertip="强大的地面单位,能学到训兽术。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Knight" +upgrades="Rhar,Rhme,Rhan,Rhpm,Rguv" +useclickhelper=0 +walk=380.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[hlum] +_id="hlum" +_name="humanlumbermill" +_type="unit" +abillist="Abds,Arlm" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanLumberMill.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHumanLumberMill" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanLumbermill\\HumanLumbermill" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=900 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="伐木场" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rhac,Rhlh" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造伐木场(|cffffcc00L|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="能储存采集到的木材。|n还包括对伐木效率和石工技术的研究。" +unitsound="HumanLumberMill" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hmil] +_id="hmil" +_name="militia" +_type="unit" +abillist="Ahar,Amil,Ahrp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMilitia.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="htow,hhou,hbar,hbla,hwtw,halt,harm,hars,hlum,hgra,hvlt" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.2 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.39 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Militia\\Militia" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=220 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="民兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Peasant" +upgrades="Rhar,Rhme,Rguv" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[hmpr] +_id="hmpr" +_name="priest" +_type="unit" +abillist="Ahea,Ainf,Adis,Aihn" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPriest.blp" +atktype1="magic" +atktype2="normal" +auto="Ahea" +backsw1=0.58 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.67 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-priest.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 医疗,- 医疗|n- 驱逐魔法,- 医疗|n- 驱逐魔法|n- 心灵之火" +castpt=0.5 +collision=16.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Priest\\Priest" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=290 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PriestMissile\\PriestMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.66666666666667 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练牧师(|cffffcc00P|r)" +turnrate=0.6 +ubertip="一开始就拥有强大的医疗能力,随后还能学习到驱逐魔法和心灵之火这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Priest" +upgrades="Rhpt,Rhpm,Rguv" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[hmtm] +_id="hmtm" +_name="mortarteam" +_type="unit" +abillist="Afla,Afsh" +acquire=1150.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMortarTeam.blp" +atktype1="siege" +atktype2="siege" +attachmentanimprops="medium" +backsw1=1.1 +backsw2=1.1 +bldtm=32 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.9 +castpt=1.1 +collision=32.0 +cool1=3.5 +cool2=3.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=51 +dmgplus2=51 +dmgpt1=1.0 +dmgpt2=1.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\MortarTeam\\MortarTeam" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=150 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=360 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=30.0 +launchy=25.0 +launchz=0.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=250 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Mortar\\MortarMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="迫击炮小队" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="human" +rangen1=1150 +rangen2=1000 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=32 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=180.0 +scale=1.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=13 +sides2=13 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,item,ward" +targs2="structure" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练迫击炮小队(|cffffcc00M|r)" +turnrate=0.5 +ubertip="远距离攻城单位,对付建筑物特别地有效,但是速度很慢很容易遭受敌人的近身攻击。还能获得照明弹和碎片攻击技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="MortarTeam" +upgrades="Rhla,Rhra,Rhfl,Rhfs,Rguv" +useclickhelper=0 +walk=180.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[hmtt] +_id="hmtt" +_name="siegeengine" +_type="unit" +abillist="Srtt,Aroc" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNSeigeEngine.blp" +atktype1="siege" +atktype2="pierce" +attachmentanimprops="large" +backsw1=0.5 +backsw2=0.5 +bldtm=55 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=4 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=2.1 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=12 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=11 +dropitems=1 +elevpts=3 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\WarWagon\\WarWagon" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=3 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=700 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SteamTank\\SteamTankImpact.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=2500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="HumanSteamTankMovement" +movetp="foot" +name="蒸汽机车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=192 +rangen2=500 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hcas" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=11 +sides2=2 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="structure,debris" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练蒸汽机车(|cffffcc00E|r)" +turnrate=0.4 +type="Mechanical" +ubertip="重型装甲车辆,特别擅长于对付敌人的建筑物。升级之后可以拥有弹幕攻击能力。|n|n|cffffcc00能攻击建筑物。|r" +unitshadow="Shadow" +unitsound="SteamTank" +upgrades="Rhar,Rhra,Rhrt,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="instant" +weaptp2="missile" + +[hpea] +_id="hpea" +_name="peasant" +_type="unit" +abillist="Ahar,Amil,Ahrp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPeasant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.567 +backsw2=0.433 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="htow,hhou,hbar,hbla,hwtw,halt,harm,hars,hlum,hgra,hvlt" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=2.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=4 +dmgplus2=0 +dmgpt1=0.433 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Peasant\\Peasant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=220 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="农民" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=66 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="生产农民(|cffffcc00P|r)" +turnrate=0.6 +type="Peon" +ubertip="人族的基本工作单位,能采集金矿和木材还能建造和修理建筑物。紧急情况之下还可以变成民兵。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Peasant" +upgrades="Rhlh,Rguv" +useclickhelper=0 +walk=150.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[hphx] +_id="hphx" +_name="phoenix" +_type="unit" +abillist="Aphx,ACmi,ACrk,Apxf" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMarkOfFire.blp" +atktype1="magic" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.633 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.3 +collision=8.0 +cool1=1.4 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.7 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\phoenix\\phoenix" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=66 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1250 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=20.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PhoenixMissile\\Phoenix_Missile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="火凤凰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=125 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=-25.0 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1600 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +unitshadow="ShadowFlyer" +unitsound="Phoenix" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[hprt] +_id="hprt" +_name="shimmeringportal" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNPortal.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="doodads\\cinematic\\ShimmeringPortal\\ShimmeringPortal" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="传送门" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="开放传送门" +turnrate=0.0 +ubertip="打开传送门。" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hpxe] +_id="hpxe" +_name="phoenixegg" +_type="unit" +abillist="Aphx,ACrk,ACmi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPhoenixEgg.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.33 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\phoenix\\phoenix" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="凤凰蛋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitshadow="Shadow" +unitsound="PhoenixEgg" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hrdh] +_id="hrdh" +_name="packhorse" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRiderlessHorse.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.1 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\PackHorse\\PackHorse" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="背负背包的马" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="KnightNoRider" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hrif] +_id="hrif" +_name="rifleman" +_type="unit" +abillist="Aihn" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRifleman.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.17 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Rifleman\\Rifleman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=520 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Rifle\\RifleImpact.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="矮人火枪手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hbla" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="生产矮人火枪手(|cffffcc00R|r)" +turnrate=0.6 +ubertip="非常适合于对付敌人的空中单位,还能获得长管火枪的升级。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Rifleman" +upgrades="Rhla,Rhra,Rhri,Rhpm,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="instant" + +[hrtt] +_id="hrtt" +_name="rocketengine" +_type="unit" +abillist="Aroc" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="alternate" +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNSeigeEngineWithMissles.blp" +atktype1="siege" +atktype2="pierce" +attachmentanimprops="large" +backsw1=0.5 +backsw2=0.875 +bldtm=55 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=4 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=2.1 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=12 +dmgpt1=0.5 +dmgpt2=0.125 +dmgup1=0 +dmgup2=11 +dropitems=1 +editorsuffix=" (弹幕攻击)" +elevpts=3 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\WarWagon\\WarWagon" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=3 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=700 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-60.0 +launchz=100.0 +level=2 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.15 +"missileart:1"="Abilities\\Weapons\\SteamTank\\SteamTankImpact.mdl" +"missileart:2"="Abilities\\Weapons\\RocketMissile\\RocketMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=2500 +"missilespeed:2"=900 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="HumanSteamTankMovement" +movetp="foot" +name="蒸汽机车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=192 +rangen2=500 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hcas" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=11 +sides2=2 +sight=1400 +spd=220 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="structure,debris" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练蒸汽机车(|cffffcc00E|r)" +turnrate=0.4 +type="Mechanical" +ubertip="重型装甲车辆,特别擅长于对付敌人的建筑物。拥有弹幕攻击技能从而可以对敌人的空中单位进行攻击。|n|n|cffffcc00能攻击建筑物。|r" +unitshadow="Shadow" +unitsound="SteamTank" +upgrades="Rhar,Rhra,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="instant" +weaptp2="missile" + +[hshy] +_id="hshy" +_name="humanshipyard" +_type="unit" +abillist="Ane2,Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNHumanShipyard.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHumanShipyard" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=0 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanShipyard\\HumanShipyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="人族船坞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=384.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +sellunits="hbot" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造人族船坞" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="船只建造工厂。这里能建造出人族的运输船,护卫舰和战舰。" +unitsound="GoblinShipyard" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hsor] +_id="hsor" +_name="sorceress" +_type="unit" +abillist="Aivs,Aply,Aslo,Aihn" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSorceress.blp" +atktype1="magic" +atktype2="normal" +auto="Aslo" +backsw1=0.78 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.08 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-sorceress.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 减速,- 减速|n- 隐形术,- 减速|n- 隐形术|n- 变形术" +castpt=0.45 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.87 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.75 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\Sorceress\\Sorceress" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=325 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=85.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SorceressMissile\\SorceressMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="女巫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.66666666666667 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练女妖(|cffffcc00S|r)" +turnrate=0.6 +ubertip="一开始能施放减慢敌人移动和进攻速度的减速魔法,随后还能学习到隐形术和变形术。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Sorceress" +upgrades="Rhst,Rhpm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hspt] +_id="hspt" +_name="spellbreaker" +_type="unit" +abillist="Asps,Acmg,Amim,Afbk,Aihn" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpellBreaker.blp" +atktype1="normal" +atktype2="normal" +auto="Asps" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\human\\BloodElfSpellThief\\BloodElfSpellThief" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=3 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=650 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=75 +manan=250 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BloodElfSpellThiefMISSILE\\BloodElfSpellThiefMISSILE.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="魔法破坏者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=250 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.8 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="hvlt,hkee" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练魔法破坏者(|cffffcc00B|r)" +turnrate=0.6 +ubertip="精灵族的英勇战士,被训练来消灭法师。初始技能为魔法盗取,可以操纵魔法效果为你所用,还有魔法免疫和反馈技能,也可以学会控制魔法。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpellBreaker" +upgrades="Rhar,Rhme,Rhss,Rhpm,Rguv" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" + +[htow] +_id="htow" +_name="townhall" +_type="unit" +abillist="Abdl,Amic,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTownHall.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=180 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTownhall" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.17 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\TownHall\\TownHall" +fileverflags=0 +fmade=12 +fograd=0.0 +formation=0 +fused=0 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=1500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=205 +lumberrep=205 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城镇大厅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=180 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rhpm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=1 +tip="建造城镇大厅(|cffffcc00H|r)" +trains="hpea" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="HTOW" +ubertip="基本建筑物,用来训练农民和存贮搜集到的资源,在升级到了主城和城堡之后能让玩家建造许多新的建筑物和单位。" +unitsound="TownHall" +upgrade="hkee" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hvlt] +_id="hvlt" +_name="arcanevault" +_type="unit" +abillist="Abds,Aall,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNArcaneVault.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowArcaneVault" +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\ArcaneVault\\ArcaneVault" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=485 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +makeitems="sreg,mcri,plcl,phea,pman,stwp,tsct,ofir,ssan" +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="神秘藏宝室" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=750 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1000 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造神秘藏宝室(|cffffcc00V|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="建造一个出售物品的商店。可供购买的物品的种类取决于你的城镇大厅的升级情况(城镇大厅,主城或者城堡)以及你所拥有的建筑物种类。" +unitsound="ArcaneVault" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[hwat] +_id="hwat" +_name="waterelemental1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\WaterElemental\\WaterElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=450 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="水元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="human" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=220 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="WaterElemental" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hwt2] +_id="hwt2" +_name="waterelemental2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=29 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\WaterElemental\\WaterElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=192 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=675 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="水元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="human" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=220 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="WaterElemental" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hwt3] +_id="hwt3" +_name="waterelemental3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=39 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\WaterElemental\\WaterElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="水元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="human" +rangen1=300 +rangen2=0 +red=192 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=220 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="WaterElemental" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[hwtw] +_id="hwtw" +_name="scouttower" +_type="unit" +abillist="Abds,Adts" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHumanWatchTower.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="BuildingShadowSmall" +buildingsoundlabel="BuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="small" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\human\\HumanTower\\HumanTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=30 +goldrep=30 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="哨塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="哨塔(|cffffcc00T|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="基本的侦察型建筑物,能升级到炮塔或者防御塔,还能学习到魔法岗哨技能。" +unitsound="ScoutTower" +upgrade="hgtw,hctw,hatw" +upgrades="Rhac,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nadk] +_id="nadk" +_name="azuredrake" +_type="unit" +abillist="Afrb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAzureDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=30 +dmgplus2=40 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\AzureDragon\\AzureDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=180 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=40.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=-20.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="蓝蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="N,W,I,N" +tilesetspecific=0 +tip="召唤蜉蝣(|cffffcc00K|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nadr] +_id="nadr" +_name="azuredragon" +_type="unit" +abillist="Advc,ACdv,Afrb,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAzureDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=42 +dmgplus2=58 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\AzureDragon\\AzureDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=180 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-20.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="蓝龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="N,W,I,N" +tilesetspecific=0 +tip="召唤蓝龙( |cffffcc00D|r)" +turnrate=0.1 +ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nadw] +_id="nadw" +_name="azuredragonwhelp" +_type="unit" +abillist="Afrb" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAzureDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.47 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=22 +dmgplus2=20 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\AzureDragonWelp\\AzureDragonWelp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=340 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=-10.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="蓝幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="N,W,I,N" +tilesetspecific=0 +tip="召唤蓝幼龙( |cffffcc00W|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nahy] +_id="nahy" +_name="ancienthydra" +_type="unit" +abillist="Aspo,Awrh,ACdv,Advc,Aspy" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreenHydra.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Hydra\\Hydra" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=70.0 +launchy=200.0 +launchz=200.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="远古九头怪蛇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=25.0 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=11 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris" +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward,air" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用远古九头怪蛇" +turnrate=0.6 +ubertip="重型的远程攻击两栖单位,具有吞噬、战争践踏和慢性毒药这三项技能。当该单位被杀死的时候,许多小九头怪蛇就会从其尸体中冒出来。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="AzureDragon" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[nalb] +_id="nalb" +_name="albatross" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAlbatross.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Albatross\\Albatross" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="信天翁" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.8 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤信天翁" +turnrate=0.5 +ubertip="能召唤出信天翁的灵魂来挽救你。" +unitshadow="ShadowFlyer" +unitsound="Albatross" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nanb] +_id="nanb" +_name="barbedarachnathid" +_type="unit" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathid.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dependencyor="nbnb" +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Archnathid\\Archnathid" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=75 +goldrep=75 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=5 +lumberrep=5 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阿卡那瑟德刺人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德刺人(|cffffcc00B|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="missile" + +[nanc] +_id="nanc" +_name="crystalarachnathid" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathidGreen.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="nbnc" +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\ArchnathidGreen\\ArchnathidGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=200 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="水晶阿卡那瑟德" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用水晶阿卡那瑟德" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nane] +_id="nane" +_name="earthborerarachnathid" +_type="unit" +abillist="ACvs,ACss" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathid.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="medium" +defup=2.0 +dependencyor="nbne" +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Archnathid\\Archnathid" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=200 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阿卡那瑟德掘地者 " +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德掘地者 " +turnrate=0.5 +ubertip="中型的远程攻击单位,具有浸毒武器和暗影突袭技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="missile" + +[nanm] +_id="nanm" +_name="barbedarachnathidmerc" +_type="unit" +abillist="Abu5" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathid.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dependencyor="nbnb" +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Archnathid\\Archnathid" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=75 +goldrep=75 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=5 +lumberrep=5 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阿卡那瑟德刺人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德刺人(|cffffcc00B|r)" +turnrate=0.5 +ubertip="轻型远程攻击单位,具有钻地技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="missile" + +[nano] +_id="nano" +_name="overlordarachnathid" +_type="unit" +abillist="ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathidpurple.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="nbno" +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Archnathidpurple\\Archnathidpurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阿卡那瑟德领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德领主" +turnrate=0.5 +ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nanw] +_id="nanw" +_name="warriorarachnathid" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathidGreen.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="nbnw" +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\ArchnathidGreen\\ArchnathidGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=375 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阿卡那瑟德战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=140.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德战士" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Arachnathid" +useclickhelper=0 +walk=140.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[narg] +_id="narg" +_name="battlegolem" +_type="unit" +abillist="ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNArmorGolem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GolemStatue\\GolemStatue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=500 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="傀儡战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=240 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,G" +tilesetspecific=0 +tip="召唤傀儡战士" +turnrate=0.5 +ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyBash" + +[nass] +_id="nass" +_name="assassin" +_type="unit" +abillist="Ashm,ACvs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditSpearThrower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=200 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditSpearThrower\\BanditSpearThrower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=200 +goldrep=200 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="A" +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Banditmissile\\Banditmissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="刺客" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=110 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用刺客(|cffffcc00A|r)" +turnrate=0.5 +ubertip="中型的远程攻击单位,能射出毒箭并具有影遁技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nba2] +_id="nba2" +_name="doomguardsummoned" +_type="unit" +abillist="ACcr,Adsm,Awrs,ACrf,ACsk" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDoomGuard.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.7 +backsw2=0.7 +bldtm=70 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=34 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\DoomGuard\\DoomGuard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1600 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毁灭守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="demon" +rangen1=600 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=8 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air" +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤毁灭守卫" +turnrate=0.4 +ubertip="重型的远程攻击单位。能施放驱逐魔法,战争践踏,残废和火焰雨这几项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DoomGuard" +useclickhelper=0 +walk=210.0 +weapson=3 +weaptp1="msplash" +weaptp2="normal" +weaptype2="MetalHeavySlice" + +[nbal] +_id="nbal" +_name="doomguard" +_type="unit" +abillist="ACcr,Adsm,Awrs,ACrf,ACsk" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDoomGuard.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.7 +backsw2=0.7 +bldtm=70 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=34 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\DoomGuard\\DoomGuard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1350 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毁灭守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="demon" +rangen1=600 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=8 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air" +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤毁灭守卫" +turnrate=0.4 +ubertip="重型远程攻击单位,具有驱魔,战争践踏,残废术和火焰雨这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DoomGuard" +useclickhelper=0 +walk=210.0 +weapson=3 +weaptp1="msplash" +weaptp2="normal" +weaptype2="MetalHeavySlice" + +[nban] +_id="nban" +_name="bandit" +_type="unit" +abillist="Ashm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBandit.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bandit\\Bandit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="强盗" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用强盗(|cffffcc00B|r)" +turnrate=0.5 +ubertip="轻型的近战单位,具有影遁技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nbda] +_id="nbda" +_name="bluedragonspawnapprentice" +_type="unit" +abillist="ACrj,ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragonSpawn.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=210 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.33 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.83 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSpawnGreen\\DragonSpawnGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=350 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=175.0 +launchy=0.0 +launchz=95.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=250 +manan=250 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙卵学徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=210 +regenhp=0.5 +regenmana=0.625 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=375.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用龙卵学徒" +turnrate=0.6 +ubertip="轻型的远程攻击单位,具有闪避和生命恢复技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DragonSpawn" +useclickhelper=0 +walk=120.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nbdk] +_id="nbdk" +_name="blackdrake" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=33 +dmgplus2=48 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BlackDragon\\BlackDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=-20.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="黑蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="F" +tilesetspecific=0 +tip="召唤黑蜉蝣(|cffffcc00K|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nbdm] +_id="nbdm" +_name="bluedragonspawnmeddler" +_type="unit" +abillist="ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDragonSpawn.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.33 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.83 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSpawnBlue\\DragonSpawnBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=115 +goldrep=115 +green=210 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙卵盗贼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=210 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=375.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用龙卵盗贼(|cffffcc00D|r)" +turnrate=0.5 +ubertip="轻型的近战单位,具有闪避技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DragonSpawn" +useclickhelper=0 +walk=120.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nbdo] +_id="nbdo" +_name="bluedragonspawnoverseer" +_type="unit" +abillist="ACev,ACav,ACbf" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNpurpleDragonSpawn.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.33 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.83 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSpawnBlue\\DragonSpawnBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙卵领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=375.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用龙卵领主" +turnrate=0.5 +ubertip="重型的近战单位,具有霜冻闪电,专注光环和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DragonSpawn" +useclickhelper=0 +walk=120.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nbdr] +_id="nbdr" +_name="blackdragonwhelp" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.47 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=24 +dmgplus2=24 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BlackDragonWelp\\BlackDragonWelp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=340 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=90.0 +launchz=-20.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="红幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="F" +tilesetspecific=0 +tip="召唤黑幼龙( |cffffcc00W|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="missile" +weaptp2="missile" + +[nbds] +_id="nbds" +_name="bluedragonspawnsorceror" +_type="unit" +abillist="ACfn,ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragonSpawn.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.33 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.83 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSpawnGreen\\DragonSpawnGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=675 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=175.0 +launchy=0.0 +launchz=95.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙之男巫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=375.0 +scale=2.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用龙之男巫" +turnrate=0.6 +ubertip="中型的远程攻击单位,具有闪避和霜冻新星技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="DragonSpawn" +useclickhelper=0 +walk=120.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nbdw] +_id="nbdw" +_name="bluedragonspawnwarrior" +_type="unit" +abillist="ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDragonSpawn.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.33 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.83 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSpawnPurple\\DragonSpawnPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=205 +goldrep=205 +green=235 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=775 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙卵战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=375.0 +scale=2.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用龙卵战士" +turnrate=0.5 +ubertip="重型的近战单位,具有闪避技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DragonSpawn" +useclickhelper=0 +walk=120.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nbee] +_id="nbee" +_name="bloodelfengineer" +_type="unit" +abillist="Ahar,Ahrp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBloodElfPeasant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=3.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\HighElfPeasant\\HighElfPeasant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=220 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血精灵工程师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=66 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=240 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练血精灵工程师(|cffffcc00E|r)" +turnrate=0.6 +type="Peon" +ubertip="极度聪慧的血精灵在发明新的技术和打造强大的防御塔方面极为擅长。|n|n|cffffcc00攻击地面单位和树木。|r" +unitshadow="shadow" +unitsound="BloodElfEngineer" +upgrades="Rhlh,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[nbel] +_id="nbel" +_name="bloodelflieutenant" +_type="unit" +abillist="Asps,Amim,Aiun" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpellBreaker.blp" +atktype1="normal" +atktype2="normal" +auto="Asps" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\BloodElfLieutenant\\BloodElfLieutenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=100 +manan=250 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BloodElfSpellThiefMISSILE\\BloodElfSpellThiefMISSILE.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血精灵中尉" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=200 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.625 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练血精灵中尉(|cffffcc00L|r)" +turnrate=0.6 +ubertip="来自于强大的卡尔省血精灵军队的中尉。破坏魔法施放单位的专家。|n|n|cffffcc00攻击地面单位|r" +unitshadow="Shadow" +unitsound="SpellBreaker" +useclickhelper=0 +walk=300.0 +weapson=1 +weaptp1="missile" + +[nbfl] +_id="nbfl" +_name="bloodfountain" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFountainOfLifeBlood.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FountainOfLifeBlood\\FountainOfLifeBlood" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="血浴之泉" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +ubersplat="OMED" +unitsound="FountainOfLifeBlood" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbld] +_id="nbld" +_name="banditlord" +_type="unit" +abillist="Ashm,ACav,ACds" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditLord.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditLord\\BanditLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="强盗领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用强盗领主" +turnrate=0.5 +ubertip="重型的近战单位,具有影遁和专注光环技能,还具有神圣护甲。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nbnb] +_id="nbnb" +_name="barbedarachnathidburrowed" +_type="unit" +abillist="Abu5" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNArachnathid.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Archnathid\\Archnathid" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=75 +goldrep=75 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=5 +lumberrep=5 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="钻地的阿卡那瑟德刺人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=200 +regenhp=10.0 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=180.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用阿卡那瑟德刺人" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="Arachnathid" +useclickhelper=0 +walk=180.0 +weapson=0 + +[nbot] +_id="nbot" +_name="transportship" +_type="unit" +abillist="Sch5,Slo3,Sdro" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTransport.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanTransportShip\\HumanTransportShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="运输船" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=110 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用运输船(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="能运载单位的海上船只。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbrg] +_id="nbrg" +_name="brigand" +_type="unit" +abillist="Ashm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditSpearThrower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditSpearThrower\\BanditSpearThrower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Banditmissile\\Banditmissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="土匪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用土匪" +turnrate=0.5 +ubertip="轻型的远程攻击单位,具有影遁技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nbse] +_id="nbse" +_name="bindstonese" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNResStone.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (面向东南的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Doodads\\Cinematic\\RessurectionStoneSE\\RessurectionStoneSE" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="复活石" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="创建复活石" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbsm] +_id="nbsm" +_name="bookofsummoning" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBookOfSummoning.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\BookOfSummoning\\BookOfSummoning" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=50 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="召唤底座之书" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitsound="BookOfSummoning" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbsp] +_id="nbsp" +_name="battleship" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNShip.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="doodads\\northrend\\water\\Battleship\\Battleship" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=45 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="船只" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=250.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=40 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +turnrate=0.1 +type="mechanical" +unitshadow="Shadow" +useclickhelper=0 +walk=250.0 +weapson=0 + +[nbsw] +_id="nbsw" +_name="bindstonesw" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNResStone.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (面向西南的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Doodads\\Cinematic\\RessurectionStoneSW\\RessurectionStoneSW" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="复活石" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="创建复活石" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbt1] +_id="nbt1" +_name="bouldertower" +_type="unit" +acquire=800.0 +agi=0 +agiplus=0.0 +animprops="second" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNRockTower.blp" +atktype1="siege" +atktype2="siege" +backsw1=0.3 +backsw2=0.3 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=1 +dmgplus1=89 +dmgplus2=89 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=100 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=110.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="巨石之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=125 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="human" +rangen1=800 +rangen2=800 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=22 +sides2=22 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,notself" +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,ward,item" +targs2="structure" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造巨石之塔(|cffffcc00B|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="投掷出能造成溅射伤害的巨石,擅长于对付地面单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitsound="ElvenGuardTower" +upgrade="nbt2" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[nbt2] +_id="nbt2" +_name="bouldertowerupgrade" +_type="unit" +acquire=800.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedRockTower.blp" +atktype1="siege" +atktype2="siege" +backsw1=0.3 +backsw2=0.3 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=1 +dmgplus1=89 +dmgplus2=89 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=100 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=135.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\catapult\\catapultmissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高级巨石之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=125 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="human" +rangen1=800 +rangen2=800 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=22 +sides2=22 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,notself" +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,ward,item" +targs2="structure" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级高级巨石之塔(|cffffcc00U|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="增加石头的攻击力,擅长于对付地面单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[nbwd] +_id="nbwd" +_name="barrowden" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBearDen.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowHuntersHall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\BarrowDens\\BarrowDens" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="兽穴" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="EMDB" +unitsound="BarrowDen" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nbwm] +_id="nbwm" +_name="blackdragon" +_type="unit" +abillist="Advc,ACdv,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=200 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=67 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\BlackDragon\\BlackDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=200 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-30.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.75 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="黑龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="F" +tilesetspecific=0 +tip="召唤黑龙(|cffffcc00D|r)" +turnrate=0.1 +ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="missile" + +[nbzd] +_id="nbzd" +_name="bronzedragon" +_type="unit" +abillist="Advc,ACdv,Alit,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBronzeDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=120 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=67 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\BronzeDragon\\BronzeDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=180 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=160.0 +launchz=-50.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="青龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="召唤青龙(|cffffcc00D|r)" +turnrate=0.1 +ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nbzk] +_id="nbzk" +_name="bronzedrake" +_type="unit" +abillist="Alit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBronzeDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=33 +dmgplus2=48 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BronzeDragon\\BronzeDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-30.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="青蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="召唤青蜉蝣(|cffffcc00K|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nbzw] +_id="nbzw" +_name="bronzedragonwhelp" +_type="unit" +abillist="Alit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBronzeDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=30 +blend=0.15 +blue=80 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.47 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=24 +dmgplus2=24 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BronzeDragonWelp\\BronzeDragonWelp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=180 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=340 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=-20.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="青幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="召唤青幼龙(|cffffcc00W|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[ncap] +_id="ncap" +_name="corruptedancientprotector" +_type="unit" +abillist="Aeat,Aro2" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedAncientProtector.blp" +atktype1="normal" +atktype2="siege" +backsw1=0.6 +backsw2=0.4 +bldtm=70 +blend=0.4 +blue=255 +bountydice=3 +bountyplus=40 +bountysides=3 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowAncientProtector" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=1.5 +cool2=2.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="fort" +defup=3.0 +dice1=1 +dice2=2 +dmgplus1=33 +dmgplus2=41 +dmgpt1=0.4 +dmgpt2=0.6 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=50 +fatlos=0 +file="buildings\\demon\\CorruptedAncientProtector\\CorruptedAncientProtector" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=75 +hfact1=0.0 +hfact2=0.5 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=80.0 +launchz=195.0 +level=3 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=130 +lumberrep=130 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=200 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=750 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="远古守护者" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=125 +qfact1=0.0 +qfact2=0.1 +race="nightelf" +rangen1=128 +rangen2=700 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="edob" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=125.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=125.0 +shadowy=125.0 +showui1=1 +showui2=1 +sides1=8 +sides2=12 +sight=1900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs2="ground,structure,debris,tree,wall" +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air,ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造远古守护者(|cffffcc00P|r)" +turnrate=0.4 +type="Ancient" +ubersplat="ESMA" +ubertip="防御性的古树。当扎根于地面的时候,能投掷出巨大的石块对敌人造成伤害。|n能攻击地面和空中单位。" +unitshadow="Shadow" +unitsound="AncientProtector" +upgrades="Renb" +useclickhelper=0 +walk=125.0 +weapson=3 +weaptp1="normal" +weaptp2="msplash" +weaptype1="WoodHeavyBash" + +[ncat] +_id="ncat" +_name="demolisherdraenei" +_type="unit" +abillist="Abof" +acquire=1150.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCatapult.blp" +atktype1="siege" +atktype2="siege" +attachmentanimprops="large" +backsw1=1.9 +backsw2=1.9 +bldtm=36 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=4.5 +cool2=4.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=1 +dmgplus1=81 +dmgplus2=81 +dmgpt1=0.1 +dmgpt2=0.1 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\orc\\catapult\\catapult" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=220 +goldrep=220 +green=255 +harea1=50 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=425 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=250 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\catapult\\catapultmissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movementsoundlabel="OrcCatapultMovement" +movetp="foot" +name="达拉内尔粉碎者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=150 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=1150 +rangen2=1000 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=150.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=21 +sides2=21 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,item,ward" +targs2="structure" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="训练达拉内尔粉碎者(|cffffcc00D|r)" +turnrate=0.4 +type="Mechanical" +ubertip="远程攻城武器。特别擅长于破坏建筑物,但是行动缓慢容易遭到敌人的围攻。能学习到燃烧汽油技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Catapult" +upgrades="Roar,Rora,Robf,Rguv" +useclickhelper=0 +walk=150.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[ncaw] +_id="ncaw" +_name="corruptedancientofwar" +_type="unit" +abillist="Aeat,Aro1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedAncientOfWar.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.81 +backsw2=0.81 +bldtm=70 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAncientofWar" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=5.0 +dice1=1 +dice2=1 +dmgplus1=44 +dmgplus2=44 +dmgpt1=0.59 +dmgpt2=0.59 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\CorruptedAncientofWar\\CorruptedAncientofWar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=800 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="战争古树" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=9 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=11 +sides2=11 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造远古守护者(|cffffcc00R|r)" +turnrate=0.4 +type="Ancient" +ubersplat="EMDA" +ubertip="主要的产兵建筑。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="AncientOfWar" +upgrades="Renb" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[ncb0] +_id="ncb0" +_name="citybuildingSmall 0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 0" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall45_0\\CityBuildingSmall45_0" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding0-2.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding0" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb1] +_id="ncb1" +_name="citybuildingSmall 1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 1" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall45_1\\CityBuildingSmall45_1" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding0-2.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding1" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb2] +_id="ncb2" +_name="citybuildingSmall 2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 2" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall45_2\\CityBuildingSmall45_2" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding0-2.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding2" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb3] +_id="ncb3" +_name="citybuildingSmall 3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 3" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall90_0\\CityBuildingSmall90_0" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding3-5.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding3" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb4] +_id="ncb4" +_name="citybuildingSmall 4" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 4" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall90_1\\CityBuildingSmall90_1" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding3-5.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding4" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb5] +_id="ncb5" +_name="citybuildingSmall 5" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 5" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall90_2\\CityBuildingSmall90_2" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding3-5.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding5" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb6] +_id="ncb6" +_name="citybuildingSmall 6" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 6" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall135_0\\CityBuildingSmall135_0" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding6-8.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding6" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb7] +_id="ncb7" +_name="citybuildingSmall 7" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 7" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall135_1\\CityBuildingSmall135_1" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding6-8.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding7" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb8] +_id="ncb8" +_name="citybuildingSmall 8" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 8" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall135_2\\CityBuildingSmall135_2" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding6-8.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding8" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncb9] +_id="ncb9" +_name="citybuildingSmall 9" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 9" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall0_0\\CityBuildingSmall0_0" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding9-11.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuilding9" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncba] +_id="ncba" +_name="citybuildingSmall a" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 10" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall0_1\\CityBuildingSmall0_1" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding9-11.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildinga" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncbb] +_id="ncbb" +_name="citybuildingSmall b" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 11" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingSmall0_2\\CityBuildingSmall0_2" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding9-11.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildingb" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncbc] +_id="ncbc" +_name="CityBuildingLarge 0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 12" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingLarge_0\\CityBuildingLarge_0" +fileverflags=0 +fmade=0 +fograd=200.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuildingLarge_0.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildingc" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncbd] +_id="ncbd" +_name="CityBuildingLarge 1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 13" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingLarge_45\\CityBuildingLarge_45" +fileverflags=0 +fmade=0 +fograd=200.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuildingLarge_135.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildingd" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncbe] +_id="ncbe" +_name="CityBuildingLarge 2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 14" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingLarge_90\\CityBuildingLarge_90" +fileverflags=0 +fmade=0 +fograd=200.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuildingLarge_90.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildinge" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncbf] +_id="ncbf" +_name="CityBuildingLarge 3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一座大型的石头建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 15" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CityBuildingLarge_135\\CityBuildingLarge_135" +fileverflags=0 +fmade=0 +fograd=200.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=240.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="城市建筑物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuildingLarge_45.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="建造城市建筑物" +turnrate=0.0 +type="Mechanical" +unitsound="CityBuildingf" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncea] +_id="ncea" +_name="centaurarcher" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCentaurArcher.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=170 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CentaurArcher\\CentaurArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="A" +hp=300 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马弓箭手(|cffffcc00A|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="CentaurArcher" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="missile" + +[ncen] +_id="ncen" +_name="centauroutrunner" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNcentaur.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=170 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Centaur\\Centaur" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="O" +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.45 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马先行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马先行者(|cffffcc00O|r)" +turnrate=0.5 +ubertip="手中挥舞着巨斧的近战型单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Centaur" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ncer] +_id="ncer" +_name="centaurdrudge" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNcentaur.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Centaur\\Centaur" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=300 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马苦工" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马苦工(|cffffcc00D|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Centaur" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ncfs] +_id="ncfs" +_name="wateryminioncliffrunner" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=128 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulTideWarrior\\MurgulTideWarrior" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="水奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.8 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=90.0 +shadowonwater=1 +shadoww=90.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤水奴" +turnrate=0.5 +ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ncg1] +_id="ncg1" +_name="clockwerkgoblin2" +_type="unit" +abillist="Asd2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNClockWerkGoblin.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerRobot\\HeroTinkerRobot" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="人工地精" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=110.0 +shadowonwater=1 +shadoww=110.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00C|r)召唤人工地精" +turnrate=0.5 +type="Mechanical" +ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="ClockwerkGoblin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ncg2] +_id="ncg2" +_name="clockwerkgoblin3" +_type="unit" +abillist="Asd3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNClockWerkGoblin.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerRobot\\HeroTinkerRobot" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="人工地精" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00C|r)召唤人工地精" +turnrate=0.5 +type="Mechanical" +ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="ClockwerkGoblin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ncg3] +_id="ncg3" +_name="clockwerkgoblin4" +_type="unit" +abillist="Asd3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNClockWerkGoblin.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerRobot\\HeroTinkerRobot" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="人工地精" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=130.0 +shadowonwater=1 +shadoww=130.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00C|r)召唤人工地精" +turnrate=0.5 +type="Mechanical" +ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="ClockwerkGoblin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ncgb] +_id="ncgb" +_name="clockwerkgoblin1" +_type="unit" +abillist="Asdg" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNClockWerkGoblin.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerRobot\\HeroTinkerRobot" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="人工地精" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00C|r)召唤人工地精" +turnrate=0.5 +type="Mechanical" +ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="ClockwerkGoblin" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nchg] +_id="nchg" +_name="chaosgrunt" +_type="unit" +abillist="Asal" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosGrunt.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.2 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosGrunt\\ChaosGrunt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="G" +hp=780 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="邪恶的兽族步兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练邪恶的兽族步兵(|cffffcc00G|r)" +turnrate=0.6 +ubertip="凶残的兽族战士,身体内流淌着恶魔的血液。|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="ChaosGrunt" +upgrades="Roar,Rome,Robs,Ropg" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nchp] +_id="nchp" +_name="chaplain" +_type="unit" +abillist="Anh2,ACif,Adsm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="magic" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanMage\\HumanMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="C" +hp=370 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PriestMissile\\PriestMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=1.3333333333333 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练牧师(|cffffcc00C|r)" +turnrate=0.5 +ubertip="支持性的魔法单位。能施放医疗,驱逐魔法和心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Priest" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[nchr] +_id="nchr" +_name="chaoswolfrider" +_type="unit" +abillist="Aens,Asal" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosWolfRider.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.65 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.87 +deathtype=3 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosWolfRider\\ChaosWolfRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=690 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="邪恶的掠夺者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=360.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练邪恶的掠夺者(|cffffcc00R|r)" +turnrate=0.5 +ubertip="移动力很高的单位,身体内流淌着恶魔的血液。|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="WolfRider" +upgrades="Roar,Rome,Roen,Ropg" +useclickhelper=0 +walk=360.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nchw] +_id="nchw" +_name="chaoswarlock" +_type="unit" +abillist="Awfb,Suhf,Scri" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosWarlock.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.74 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 霹雳闪电,- 霹雳闪电|n- 邪恶狂热,- 霹雳闪电|n- 邪恶狂热|n- 残废" +castpt=0.3 +collision=31.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.334 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosWarlock\\ChaosWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=220 +goldrep=220 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=360 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1100 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="邪恶的巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.0 +regentype="always" +reptm=22 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=150.0 +shadowonwater=1 +shadoww=150.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练邪恶的巫师(|cffffcc00W|r)" +turnrate=0.6 +ubertip="兽族的魔法施放单位,一开始能施放霹雳闪电技能,伤害并击晕敌人。在升级之后还能拥有邪恶狂热和残废技能。|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Shaman" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ncim] +_id="ncim" +_name="centaurimpaler" +_type="unit" +abillist="ACsa" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCentaurArcher.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=140 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CentaurArcher\\CentaurArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=350 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=200 +manan=200 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马刺客" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马刺客" +turnrate=0.5 +ubertip="远程攻击单位,能射出灼热之箭。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="CentaurArcher" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="missile" + +[nckb] +_id="nckb" +_name="chaoskotobeast" +_type="unit" +abillist="Aakb,Advc,Adev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosKotoBeast.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.32 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.2 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.85 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosKotoBeast\\ChaosKotoBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=900 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="邪恶的科多兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=500 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=310.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=220 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练邪恶的科多兽(|cffffcc00K|r)" +turnrate=0.5 +ubertip="一种笨重的战争野兽,上面骑着一个兽族鼓手。能学到战鼓和吞噬技能。战鼓能提高周围单位的攻击力,它本身也能进行升级。|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeast" +upgrades="Rwdm" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[ncks] +_id="ncks" +_name="centaursorceror" +_type="unit" +abillist="ACbl,ACdm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCentaurKhan.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Ablo" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CentaurKhan\\CentaurKhan" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=150 +regenhp=1.0 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马巫师" +turnrate=0.5 +ubertip="远程攻击单位,能施放驱魔技能和嗜血术。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Centaur" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="missile" + +[ncmw] +_id="ncmw" +_name="corruptedmoonwell" +_type="unit" +abillist="Ambt" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedMoonWell.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowMoonWell" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=2.0 +deftype="fort" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\CorruptedMoonWell\\CorruptedMoonWell" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=300 +manan=300 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="月亮井" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="demon" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=1.25 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造月亮井(|cffffcc00M|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="ESMB" +ubertip="能提供人口,从而增加可造单位数量的最大值。还能补充暗夜精灵族单位的魔法值和生命值。在夜间,它也能自我恢复魔法能量。" +unitsound="MoonWell" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncnk] +_id="ncnk" +_name="centaurkhan" +_type="unit" +abillist="SCae,ACrn,Awrs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCentaurKhan.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CentaurKhan\\CentaurKhan" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=900 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="半人马可汗" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=325.0 +scale=1.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用半人马可汗" +turnrate=0.5 +ubertip="拥有耐久光环的重型近战单位。还有战争践踏和重生技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Centaur" +useclickhelper=0 +walk=325.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ncnt] +_id="ncnt" +_name="centaurtent" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种小型的掩蔽建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CentaurTent\\CentaurTent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="半人马帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造半人马帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="CentaurTent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncop] +_id="ncop" +_name="circleofpower" +_type="unit" +abillist="Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCOP.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种发着能量之光的圆形底座。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CircleOfPower\\CircleOfPower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="能量圈" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=200 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4unbuildable.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=200 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造能量圈" +turnrate=0.0 +type="standon" +unitsound="CircleOfPower" +useclickhelper=1 +walk=200.0 +weapson=0 + +[ncp2] +_id="ncp2" +_name="circleofpowermedium" +_type="unit" +abillist="Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCOP.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种发着能量之光的圆形底座。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(中型)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CircleOfPower\\CircleOfPower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="能量圈" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=300 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6unbuildable.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=300 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造能量圈" +turnrate=0.0 +type="standon" +unitsound="CircleOfPower" +useclickhelper=1 +walk=200.0 +weapson=0 + +[ncp3] +_id="ncp3" +_name="circleofpowerlarge" +_type="unit" +abillist="Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCOP.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种发着能量之光的大型圆形底座。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(大型的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CircleOfPower\\CircleOfPower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=2.0 +movefloor=0.0 +moveheight=0.0 +name="能量圈" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=400 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8unbuildable.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=400 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造能量圈" +turnrate=0.0 +type="standon" +unitsound="CircleOfPower" +useclickhelper=1 +walk=200.0 +weapson=0 + +[ncpn] +_id="ncpn" +_name="chaospeon" +_type="unit" +abillist="Ahar,Arep,Asal" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosPeon.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="ogre,otrb,obar,ofor,oalt,obea,osld,otto,owtw" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=3.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosPeon\\ChaosPeon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="P" +hp=320 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="邪恶的苦工" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=90 +rangen2=66 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练邪恶的苦工(|cffffcc00P|r)" +turnrate=0.6 +type="Peon" +ubertip="兽族基本的工人单位。能采集黄金和木材,还能建造建筑物和进行修理。在钻入地洞以后还能对来犯的敌人进行反击。|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Peon" +upgrades="Ropg" +useclickhelper=0 +walk=180.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[ncrb] +_id="ncrb" +_name="crab" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpinyCrab.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\SpiderCrab\\SpiderCrab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="螃蟹" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤螃蟹" +turnrate=0.5 +ubertip="能召唤一个螃蟹的灵魂来挽救你。" +unitshadow="Shadow" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nct1] +_id="nct1" +_name="centaurtent1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种小型的掩蔽建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(2)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CentaurTent1\\CentaurTent1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="半人马帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造半人马帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="CentaurTent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nct2] +_id="nct2" +_name="centaurtent2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种小型的掩蔽建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="(3)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\CentaurTent2\\CentaurTent2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="半人马帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造半人马帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="CentaurTent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ncta] +_id="ncta" +_name="corruptedtreeofages" +_type="unit" +abillist="Aent,Aeat,Aro1,Atol" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="Upgrade,First" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreeOfAges.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="upgrade,first" +backsw1=0.6 +backsw2=0.6 +bldtm=60 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=3.0 +dice1=1 +dice2=1 +dmgplus1=48 +dmgplus2=48 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\CorruptedTreeofLife\\CorruptedTreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=270 +goldrep=695 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="远古之树" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=12 +sides2=12 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到远古之树(|cffffcc00U|r)" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="升级到了远古之树之后能让玩家建造许多新的建筑物和单位。" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrade="ncte" +upgrades="Renb" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[ncte] +_id="ncte" +_name="corruptedtreeofeternity" +_type="unit" +abillist="Aent,Aeat,Aro1,Atol" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="Upgrade,Second" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTreeOfEternity.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="upgrade,second" +backsw1=0.6 +backsw2=0.6 +bldtm=80 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=3.0 +dice1=1 +dice2=1 +dmgplus1=59 +dmgplus2=59 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\CorruptedTreeofLife\\CorruptedTreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=300 +goldrep=995 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="永恒之树" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=15 +sides2=15 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到永恒之树(|cffffcc00U|r)" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="升级到了永恒之树之后能让玩家建造许多新的建筑物和单位。" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrades="Renb" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[nctl] +_id="nctl" +_name="corruptedtreeoflife" +_type="unit" +abillist="Aent,Aeat,Aro1,Atol" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedTreeOfLife.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.6 +bldtm=110 +blend=0.4 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTreeofLife" +buildingsoundlabel="NightElfGrowingLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=2.5 +cool2=2.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=2 +def=2.0 +deftype="fort" +defup=3.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=40 +dmgpt1=0.4 +dmgpt2=0.4 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\CorruptedTreeofLife\\CorruptedTreeofLife" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=4 +fused=0 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="生命之树" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +pathtex="PathTextures\\12x12TreeOfLife.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=128 +rangen2=128 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=110 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=500.0 +shadowonwater=1 +shadoww=500.0 +shadowx=200.0 +shadowy=200.0 +showui1=0 +showui2=1 +sides1=10 +sides2=10 +sight=900 +spd=40 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NECancelDeath\\NECancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="ground,structure,debris,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造生命之树(|cffffcc00T|r)" +turnrate=0.4 +type="TownHall,Ancient" +ubersplat="EMDA" +ubertip="暗夜精灵族的基本建筑物。能训练小精灵和缠绕金矿。在升级到了远古之树和永恒之树之后能让玩家建造许多新的建筑物和单位。" +unitshadow="Shadow" +unitsound="TreeofLife" +upgrade="ncta" +upgrades="Renb" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[ndch] +_id="ndch" +_name="chieftainhut" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiChiefHut.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ChieftainHut\\ChieftainHut" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="达拉内尔酋长之屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="达拉内尔酋长之屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="达拉内尔酋长之屋。" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nder] +_id="nder" +_name="deer" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNStag.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\BlackStagMale\\BlackStagMale" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="雄鹿" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=380.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="A,V,Q" +tilesetspecific=0 +tip="召唤雄鹿" +turnrate=0.5 +ubertip="召唤雄鹿的灵魂来保护你。" +unitshadow="Shadow" +useclickhelper=0 +walk=380.0 +weapson=0 + +[ndfl] +_id="ndfl" +_name="defiledfountainoflife" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFountainOfLifeDefiled.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FountainOfLifeDefiled\\FountainOfLifeDefiled" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="被污染的生命之泉" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +ubersplat="OMED" +unitsound="FountainOfLifeDefiled" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndgt] +_id="ndgt" +_name="dalaranguardtower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDalaranGuardTower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DalaranGuardTower\\DalaranGuardTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="达拉然守卫塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ndh0] +_id="ndh0" +_name="draneihut0" +_type="unit" +abillist="Abds" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiHut.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DraneiHut0\\DraneiHut0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="达拉内尔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造达拉内尔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="一个简陋的达拉内尔农家小屋。" +unitsound="DraeneiHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndh1] +_id="ndh1" +_name="draneihut1" +_type="unit" +abillist="Abds" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiHut.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DraneiHut1\\DraneiHut1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="达拉内尔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造达拉内尔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="一个简陋的达拉内尔农家小屋。" +unitsound="DraeneiHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndh2] +_id="ndh2" +_name="draeneihaven" +_type="unit" +abillist="Abdl,Argl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiChiefHut.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=180 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ChieftainHut\\ChieftainHut" +fileverflags=0 +fmade=50 +fograd=0.0 +formation=0 +fused=0 +goldcost=400 +goldrep=400 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=195 +lumberrep=195 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +name="达拉内尔港口" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造达拉内尔港口" +trains="ndrl" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="OLAR" +ubertip="使得能采集黄金,并能训练出工人和复活英雄。" +unitsound="DraeneiChieftainHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndh3] +_id="ndh3" +_name="draeneiwarriorshall" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiHut.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DraneiHut0\\DraneiHut0" +fileverflags=0 +fmade=50 +fograd=0.0 +formation=0 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1250 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=55 +lumberrep=55 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +name="达拉内尔兵营" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造达拉内尔兵营" +trains="ndrn,ndrt,ndsa,ncat" +turnrate=0.0 +type="Mechanical" +ubersplat="OLAR" +ubertip="训练达拉内尔辩护者,漫步者,粉碎者和火蜥蜴。" +unitsound="DraeneiHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndh4] +_id="ndh4" +_name="draeneiseerden" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiHut.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DraneiHut1\\DraneiHut1" +fileverflags=0 +fmade=50 +fograd=0.0 +formation=0 +fused=0 +goldcost=100 +goldrep=100 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1150 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +name="先知洞穴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造先知洞穴" +trains="ndrs,ndrh" +turnrate=0.0 +type="Mechanical" +ubersplat="OLAR" +ubertip="训练达拉内尔先知和先驱。" +unitsound="DraeneiHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndke] +_id="ndke" +_name="darkportalse" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDarkPortal.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowPortalSE" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (面向最南方)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DarkPortal2\\DarkPortal2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=2000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="异次元大门" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=400 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\DarkPortalSE.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=8.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=400 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O" +tilesetspecific=0 +trains="nfel,ninf,nbal" +turnrate=0.0 +type="Mechanical" +ubersplat="DPSE" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndkw] +_id="ndkw" +_name="darkportalsw" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDarkPortal.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowPortalSW" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (面向最南方)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DarkPortal\\DarkPortal" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=2000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="异次元大门" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=400 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\DarkPortalSW.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=8.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=400 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O" +tilesetspecific=0 +trains="nfel,ninf,nbal" +turnrate=0.0 +type="Mechanical" +ubersplat="DPSW" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndmg] +_id="ndmg" +_name="demongate" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDemonGate.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowDemonGate" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\demon\\DemonGate\\DemonGate" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=2000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="恶魔之门" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=400 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\DemonGatePath.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=400 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +trains="nfel,ninf,nbal" +turnrate=0.0 +ubersplat="NDGS" +unitsound="DemonGate" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndmu] +_id="ndmu" +_name="dalaranmutant" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDalaranMutant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.3 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.39 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DalaranMutant\\DalaranMutant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=330 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉然之变种怪物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="J" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Zombie" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ndog] +_id="ndog" +_name="dog" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\BrownWolf\\BrownWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野狗" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=360.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="召唤野狗" +turnrate=0.5 +ubertip="你可以召唤野狗的灵魂来保护你。" +unitshadow="Shadow" +unitsound="Wolf" +useclickhelper=0 +walk=360.0 +weapson=0 + +[ndqn] +_id="ndqn" +_name="succubus" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDemoness.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Demoness\\Demoness" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="女妖精" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=160 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用女妖精" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Demoness" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndqp] +_id="ndqp" +_name="maidenofpain" +_type="unit" +abillist="ACdr,ACss" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDemoness.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=53 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\DemonessBlue\\DemonessBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1050 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="痛苦少女" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=410 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用痛苦少女" +turnrate=0.5 +ubertip="重型近战单位,可以施放生命汲取和暗影突袭技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Demoness" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptype1="MetalMediumChop" + +[ndqs] +_id="ndqs" +_name="queenofsuffering" +_type="unit" +abillist="ACdc,ACua,ACch" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDemoness.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=68 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\DemonessBlue\\DemonessBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="苦难女王" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=510 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用苦难女王" +turnrate=0.5 +ubertip="重型近战单位,有死亡缠绕,邪恶光环和符咒技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Demoness" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndqt] +_id="ndqt" +_name="viletemptress" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDemoness.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Demoness\\Demoness" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶妇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=310 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用恶妇" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Demoness" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndqv] +_id="ndqv" +_name="viletormentor" +_type="unit" +abillist="ACsi" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDemoness.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=190 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=16.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.23 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\DemonessBlue\\DemonessBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=510 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恶男" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=260 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用恶男" +turnrate=0.5 +ubertip="中型近战单位,可以施放沉默魔法。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="Demoness" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptype1="MetalMediumChop" + +[ndr1] +_id="ndr1" +_name="darkminion1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=230 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=230 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小黑暗之奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=230 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗之奴" +turnrate=0.5 +type="undead" +unitshadow="Shadow" +unitsound="Skeleton" +upgrades="Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[ndr2] +_id="ndr2" +_name="darkminion2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=200 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=260 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗之奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=200 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗之奴" +turnrate=0.5 +type="undead" +unitshadow="Shadow" +unitsound="Skeleton" +upgrades="Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[ndr3] +_id="ndr3" +_name="darkminion3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=150 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=320 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大黑暗之奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=90 +rangen2=0 +red=150 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=800 +spd=330 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗之奴" +turnrate=0.5 +type="undead" +unitshadow="Shadow" +unitsound="Skeleton" +upgrades="Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[ndrb] +_id="ndrb" +_name="dragonbuilding" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuilding\\DragonBuilding" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="龙之栖木" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造龙之栖木" +trains="nrwm" +turnrate=0.0 +type="Mechanical" +ubersplat="OLAR" +unitsound="DragonRoost" +upgrades="Rosp" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrd] +_id="ndrd" +_name="draeneidarkslayer" +_type="unit" +abillist="ACim" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=18 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiWhite\\DranaiWhite" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=260 +goldrep=260 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="S" +hp=525 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=150 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔暗黑屠杀者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=330 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔黑暗屠杀者(|cffffcc00S|r)" +turnrate=0.6 +ubertip="中型近战单位,有献祭技能。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndrf] +_id="ndrf" +_name="draeneiguardian" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=165 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\Dranai\\Dranai" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=165 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=0.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=50 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔守卫" +turnrate=0.6 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndrg] +_id="ndrg" +_name="greendragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="让你能召唤绿龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuildingGreen\\DragonBuildingGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="绿龙巢穴" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="ngrw,ngdk,ngrd" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="A,C,Z" +tilesetspecific=0 +tip="建造绿龙巢穴" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrh] +_id="ndrh" +_name="draeneiharbinger" +_type="unit" +abillist="Ache,ACbb" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiMage.blp" +atktype1="pierce" +atktype2="normal" +auto="Ablo" +backsw1=0.58 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiMage\\DranaiMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=165 +goldrep=165 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔先驱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=140 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=1.05 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=170 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔先驱" +turnrate=0.6 +ubertip="中型远程单位,有嗜血术和瓦解光线技能。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[ndrj] +_id="ndrj" +_name="dalaranreject" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDalaranReject.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.03 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DalaranReject\\DalaranReject" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉然之孤胆怪物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.45 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="J" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Zombie" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ndrk] +_id="ndrk" +_name="blackdragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="使得你能召唤来强大的黑龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuildingBlack\\DragonBuildingBlack" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="黑龙巢穴" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="nbdr,nbdk,nbwm" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="F" +tilesetspecific=0 +tip="建造黑龙巢穴" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrl] +_id="ndrl" +_name="draeneilaborer" +_type="unit" +abillist="Ahar,Arep" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="ndh2,ndh3,ndh4,nbt2" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=2.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=5 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\Dranai\\Dranai" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=210 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=280 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔工人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=66 +red=210 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=180.0 +scale=0.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=200 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="训练达拉内尔工人(|cffffcc00D|r)" +turnrate=0.6 +type="Peon" +ubertip="基本的工人单位,能采集木材和黄金,建造建筑物和进行修理。|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Draenei" +upgrades="Ropg" +useclickhelper=0 +walk=180.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[ndrm] +_id="ndrm" +_name="draeneidisciple" +_type="unit" +abillist="Anh1" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiMage.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.58 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=21 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiMage\\DranaiMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=280 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=15 +lumberrep=15 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔信徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.8 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=0.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=90 +stockstart=135 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔信徒(|cffffcc00D|r)" +turnrate=0.6 +ubertip="轻型远程单位,可以施放治疗。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[ndrn] +_id="ndrn" +_name="draeneivindicator" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiWhite\\DranaiWhite" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=225 +goldrep=225 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=900 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=15 +lumberrep=15 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔辩护者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=130 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔辩护者" +turnrate=0.6 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndro] +_id="ndro" +_name="outlanddragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="允许你召唤耐瑟龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuildingBlack\\DragonBuildingBlack" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="耐瑟龙栖木" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="nnht,nndk,nndr" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="建造耐瑟龙之栖木" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrp] +_id="ndrp" +_name="draeneiprotector" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiWhite\\DranaiWhite" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=165 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=325 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔护卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=165 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=0.95 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=90 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔护卫" +turnrate=0.6 +ubertip="轻型近战单位,有诱捕技能。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndrr] +_id="ndrr" +_name="reddragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="使得你能召唤来强大的红龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuilding\\DragonBuilding" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="红龙巢穴" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="nrdk,nrdr,nrwm" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L" +tilesetspecific=0 +tip="建造红龙巢穴" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrs] +_id="ndrs" +_name="draeneiseer" +_type="unit" +abillist="Aslo,ACba,AChv" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDranaiMage.blp" +atktype1="pierce" +atktype2="normal" +auto="Aslo" +backsw1=0.58 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\DranaiMage\\DranaiMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=775 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=250 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔先知" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.5 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=250 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔先知" +turnrate=0.6 +ubertip="重型远程攻击单位,具有辉煌光环。 可以施放减速和医疗波技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[ndrt] +_id="ndrt" +_name="draeneistalker" +_type="unit" +abillist="Apiv,ACev,ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=5 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\Dranai\\Dranai" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=270 +goldrep=270 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=465 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔漫步者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=130 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔漫步者" +turnrate=0.6 +ubertip="重型的近战单位。具有隐形,诱捕和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndru] +_id="ndru" +_name="bluedragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBlueDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="使得你能召唤来强大的蓝龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonBuildingBlue\\DragonBuildingBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="蓝龙巢穴" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="nadw,nadk,nadr" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="建造蓝龙巢穴" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndrv] +_id="ndrv" +_name="revenantofthedepths" +_type="unit" +abillist="ACwe" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RevenantOfTheWaves\\RevenantOfTheWaves" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="深渊幽灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用深渊幽灵" +turnrate=0.6 +type="undead" +ubertip="重型的近战单位,能召唤海元素。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[ndrw] +_id="ndrw" +_name="draeneiwatcher" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNDranai.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\Dranai\\Dranai" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="达拉内尔哨兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.05 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=130 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用达拉内尔哨兵" +turnrate=0.6 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Draenei" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ndrz] +_id="ndrz" +_name="bronzedragonroost" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDragonRoost.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="让你能召唤青龙。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\DragonRoost\\DragonRoost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +name="青龙巢穴" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +sellunits="nbzw,nbzk,nbzd" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造青龙巢穴" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OLAR" +unitsound="DragonRoost" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ndsa] +_id="ndsa" +_name="draeneisalamander" +_type="unit" +abillist="Alit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardVizier.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=32 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizardVizier\\ThunderLizardVizier" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=3 +goldcost=215 +goldrep=215 +green=190 +harea1=125 +harea2=0 +hfact1=0.2 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=625 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=20.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="火蜥蜴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=200 +qarea2=0 +qfact1=0.05 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=250 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="训练火蜥蜴" +turnrate=0.5 +ubertip="能投掷出闪电之箭的重型远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[ndt1] +_id="ndt1" +_name="coldtower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="fourth" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNColdTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=140.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="冰霜之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造冰霜之塔(|cffffcc00C|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="射出冰片进行攻击,擅长于减慢敌人的速度,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +upgrade="ndt2" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ndt2] +_id="ndt2" +_name="coldtowerupgrade" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="upgrade,fourth" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedFrostTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=235.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高级冰霜之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级高级冰霜之塔(|cffffcc00U|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="加快发射冰片的速度,擅长于减慢敌人的速度,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ndtb] +_id="ndtb" +_name="darktrollberserker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTroll\\DarkTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=450 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑魔狂战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=180 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑魔狂战士(|cffffcc00B|r)" +turnrate=0.5 +ubertip="脾气暴躁的斧手。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndth] +_id="ndth" +_name="darktrollhighpriest" +_type="unit" +abillist="Anh2,ACsl" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTrollShadowPriest.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTrollShadowPriest\\DarkTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="H" +hp=450 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑魔高级牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑魔高级牧师(|cffffcc00H|r)" +turnrate=0.5 +ubertip="有着医疗能力的魔法兵种,还能施放睡眠术。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndtp] +_id="ndtp" +_name="darktrollshadowpriest" +_type="unit" +abillist="Anh1" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTrollShadowPriest.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTrollShadowPriest\\DarkTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="P" +hp=240 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑魔影子牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑魔影子牧师(|cffffcc00P|r)" +turnrate=0.5 +ubertip="有着医疗能力的魔法兵种,也能进行远程攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndtr] +_id="ndtr" +_name="darktroll" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTroll\\DarkTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗巨魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑暗巨魔(|cffffcc00T|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndtt] +_id="ndtt" +_name="darktrolltrapper" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTrollTrapper.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=100 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.3 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTrollTrapper\\DarkTrollTrapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑魔猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑魔猎手(|cffffcc00D|r)" +turnrate=0.5 +ubertip="轻型远程攻击单位,能诱捕对手。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndtw] +_id="ndtw" +_name="darktrollwarlord" +_type="unit" +abillist="ACat" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDarkTrollTrapper.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=110 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DarkTrollTrapper\\DarkTrollTrapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑魔首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="雇用黑魔首领( |cffffcc00W|r)" +turnrate=0.5 +ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[ndwm] +_id="ndwm" +_name="duneworm" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDuneWorm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\DuneWorm\\DuneWorm" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="沙丘之虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="呼出沙丘之虫" +turnrate=0.5 +ubertip="召唤沙丘之虫的灵魂来保护你。" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nech] +_id="nech" +_name="chicken" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCritterChicken.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\EasterChicken\\EasterChicken" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小鸡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="A,L,F,W,V,Q,X,J,Y" +tilesetspecific=0 +tip="调用小鸡" +turnrate=0.5 +ubertip="召唤令人惊吓的小鸡来帮助你。" +unitshadow="Shadow" +unitsound="Chicken" +useclickhelper=0 +walk=100.0 +weapson=0 + +[necr] +_id="necr" +_name="rabbit" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCritterRabbit.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\EasterRabbit\\EasterRabbit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兔子" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="A,L,F,W,V,Q,X,J,Y" +tilesetspecific=0 +tip="调用兔子" +turnrate=0.5 +ubertip="召唤令人惊吓的兔子来帮助你。" +unitshadow="Shadow" +unitsound="Rabbit" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nef0] +_id="nef0" +_name="elvenfarm0" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="1" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding0\\ElvenVillageBuilding0" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef1] +_id="nef1" +_name="elvenfarm1" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="2" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding1\\ElvenVillageBuilding1" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef2] +_id="nef2" +_name="elvenfarm2" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="3" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding2\\ElvenVillageBuilding2" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef3] +_id="nef3" +_name="elvenfarm3" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="4" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding3\\ElvenVillageBuilding3" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef4] +_id="nef4" +_name="elvenfarm4" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="5" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding4\\ElvenVillageBuilding4" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef5] +_id="nef5" +_name="elvenfarm5" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="6" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding5\\ElvenVillageBuilding5" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef6] +_id="nef6" +_name="elvenfarm6" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="7" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding6\\ElvenVillageBuilding6" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nef7] +_id="nef7" +_name="elvenfarm7" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix="8" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenVillageBuilding7\\ElvenVillageBuilding7" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nefm] +_id="nefm" +_name="elvenfarm" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNElvenFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFarm\\ElvenFarm" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +unitsound="ElvenFarm" +useclickhelper=0 +walk=200.0 +weapson=0 + +[negf] +_id="negf" +_name="earthfurytower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNElvenGuardTower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenGuardFireTower\\ElvenGuardFireTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="地怒之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[negm] +_id="negm" +_name="skyfurytower" +_type="unit" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNElvenGuardTower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.2 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenGuardMagicTower\\ElvenGuardMagicTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=450 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncestralGuardianMissile\\AncestralGuardianMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="天怒之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[negt] +_id="negt" +_name="elvenguardtower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNElvenGuardTower.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenGuardTower\\ElvenGuardTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵防御塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00G|r)建造高等精灵守护塔" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="主要的防御性建筑。 |n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[negz] +_id="negz" +_name="engineergazlowe" +_type="unit" +abillist="Asds" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinSapper.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.51 +castpt=0.47 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GoblinSapper\\GoblinSapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="工程师加兹劳" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=45 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="Sapper" +unitshadow="Shadow" +unitsound="GoblinSapper" +useclickhelper=0 +walk=150.0 +weapson=0 + +[nehy] +_id="nehy" +_name="elderhydra" +_type="unit" +abillist="ACff" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreenHydra.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +auto="Afae" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=34 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Hydra\\Hydra" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=205 +goldrep=205 +green=110 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=850 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=60.0 +launchy=150.0 +launchz=150.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="九头怪蛇长者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=150 +regenhp=15.0 +regenmana=1.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=2.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用九头怪蛇长者" +turnrate=0.6 +ubertip="重型的远程攻击两栖单位,具有精灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="AzureDragon" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nelb] +_id="nelb" +_name="bereserkelemental" +_type="unit" +abillist="ACmi,ACfn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=120 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\WaterElemental\\WaterElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=385 +goldrep=385 +green=50 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂暴元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=300 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="X,J" +tilesetspecific=0 +tip="召唤狂暴元素" +turnrate=0.5 +ubertip="重型近战单位,能施放霜冻新星,而且对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="WaterElemental" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nele] +_id="nele" +_name="enragedelemental" +_type="unit" +abillist="ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSummonWaterElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=165 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\human\\WaterElemental\\WaterElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=120 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂怒元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="X,J" +tilesetspecific=0 +tip="召唤狂怒元素" +turnrate=0.5 +ubertip="近战型单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="WaterElemental" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nemi] +_id="nemi" +_name="emissary" +_type="unit" +abillist="Ahea,Ainf,Adis" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="pierce" +atktype2="normal" +auto="Ahea" +backsw1=0.58 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-priest.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 医疗,- 医疗|n- 驱逐魔法,- 医疗|n- 驱逐魔法|n- 心灵之火" +castpt=0.3 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.59 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanMage\\HumanMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=2 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=220 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PriestMissile\\PriestMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="使者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.5 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="shadow" +unitsound="HumanMage" +upgrades="Rhpt" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nenc] +_id="nenc" +_name="corruptedent" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedEnt.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.467 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CorruptedEnt\\CorruptedEnt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=140 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="堕落树人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=110.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="召唤堕落树人" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="CorruptedEnt" +useclickhelper=0 +walk=110.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nenf] +_id="nenf" +_name="enforcer" +_type="unit" +abillist="Ashm,ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBandit.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bandit\\Bandit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="E" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.45 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="强制者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用强制者(|cffffcc00E|r)" +turnrate=0.5 +ubertip="轻型的近战单位,具有影遁和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nenp] +_id="nenp" +_name="poisonent" +_type="unit" +abillist="Aenr,ACvs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedEnt.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=60 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.467 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CorruptedEnt\\CorruptedEnt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=290 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒性树人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=170 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.35 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="召唤毒性树人" +turnrate=0.5 +ubertip="近战单位,能使对手中毒,能施放纠缠根须技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="CorruptedEnt" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nepl] +_id="nepl" +_name="plagueent" +_type="unit" +abillist="Aenr,Aap3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCorruptedEnt.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=31 +dmgplus2=0 +dmgpt1=0.467 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\CorruptedEnt\\CorruptedEnt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=160 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灾祸树人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.45 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="召唤灾祸树人" +turnrate=0.5 +ubertip="近战单位,能让对手得上疾病,还能施放纠缠根须技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="CorruptedEnt" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nerd] +_id="nerd" +_name="eredardiabolist" +_type="unit" +abillist="ACpa,ANfb" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEredarWarlockPurple.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +auto="ANpa" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\EredarWarlockPurple\\EredarWarlockPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=630 +impactswimz=0.0 +impactz=130.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=160.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="埃瑞达-信魔者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用埃瑞达-信魔者" +turnrate=0.5 +ubertip="重型远程攻击单位,可以施放寄生虫和霹雳闪电技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="msplash" + +[ners] +_id="ners" +_name="eredarsorceror" +_type="unit" +abillist="ACdm,ACsl" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEredarWarlockPurple.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +auto="Aadm" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\EredarWarlock\\EredarWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=425 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=40.0 +launchz=140.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="埃瑞达男巫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用埃瑞达男巫" +turnrate=0.5 +ubertip="轻型远程攻击单位,可以施放驱逐魔法和睡眠技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="msplash" + +[nerw] +_id="nerw" +_name="eredarwarlock" +_type="unit" +abillist="ACbh,ACfd,ACmf" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEredarWarlockPurple.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\demon\\EredarWarlock\\EredarWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1350 +impactswimz=0.0 +impactz=150.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=75.0 +launchz=190.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DemonHunterMissile\\DemonHunterMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="埃瑞达法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy" +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用埃瑞达法师" +turnrate=0.5 +ubertip="重型远程单位,有重击技能。可以施放痛苦之指和魔力护盾。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="PitLord" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="msplash" + +[net1] +_id="net1" +_name="energytower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="first" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNEnergyTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=210.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="能量之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造能量之塔(|cffffcc00E|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="射出能量之箭,擅长于对付敌人的空中单位,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +upgrade="net2" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[net2] +_id="net2" +_name="energytowerupgrade" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedEnergyTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高级能量之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级高级能量之塔(|cffffcc00U|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="增加能量之箭的攻击力,擅长于对付敌人的空中单位,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nfa1] +_id="nfa1" +_name="pocketfactory2" +_type="unit" +abillist="ARal" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowHumanBarracks" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=0.0 +deftype="medium" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Level 2)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactory" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=155 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="口袋工厂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=155 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=800 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00F|r)召唤口袋工厂" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="工厂能生产出人工地精。" +unitsound="PocketFactory" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfa2] +_id="nfa2" +_name="pocketfactory3" +_type="unit" +abillist="ARal" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowHumanBarracks" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=0.0 +deftype="medium" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Level 3)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactory" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=155 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="口袋工厂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=155 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=800 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00F|r)召唤口袋工厂" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="工厂能生产出人工地精。" +unitsound="PocketFactory" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfac] +_id="nfac" +_name="pocketfactory" +_type="unit" +abillist="ARal" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPocketFactory.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowHumanBarracks" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=0.0 +deftype="medium" +defup=0.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (Level 1)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\HeroTinkerFactory\\HeroTinkerFactory" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=155 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="口袋工厂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=155 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=800 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip=" (|cffffcc00F|r)召唤口袋工厂" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="工厂能生产出人工地精。" +unitsound="PocketFactory" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfbr] +_id="nfbr" +_name="felboar" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFelBoar.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Felboar\\Felboar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="召唤野猪" +turnrate=0.5 +ubertip="召唤出野猪的灵魂来挽救你。" +unitshadow="Shadow" +unitsound="QuillBeast" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfel] +_id="nfel" +_name="felstalker" +_type="unit" +abillist="Ambb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\felhound\\felhound" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=200 +manan=200 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="邪恶漫步者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="demon" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤邪恶漫步者" +turnrate=0.5 +ubertip="魔鬼野兽,能施放法力燃烧技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Felhound" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nfgb] +_id="nfgb" +_name="bloodfiend" +_type="unit" +abillist="ACce" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNFelGuard.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.2 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Felgaurd\\Felgaurd" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血恶魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=280.0 +scale=1.35 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=210 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用血恶魔" +turnrate=0.6 +ubertip="中型近战单位。有分裂攻击技能。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="DoomGuard" +useclickhelper=0 +walk=280.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[nfgl] +_id="nfgl" +_name="fleshgolem" +_type="unit" +abillist="ACsh,ACcr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFleshGolem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=10 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=36 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\other\\FleshGolem\\FleshGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=500 +goldrep=500 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=5600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=11 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵肉傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=3.0 +regenmana=1.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="J" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="abomination" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nfgo] +_id="nfgo" +_name="forgottenone" +_type="unit" +abillist="ACfb,ACch,ACtn" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForgottenOne.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.64 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=15 +bountyplus=1000 +bountysides=5 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=50.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.97 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=50 +farea2=0 +fatlos=0 +file="Units\\Creeps\\ForgottenOne\\ForgottenOne" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=10 +goldcost=595 +goldrep=595 +green=255 +harea1=100 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=4000 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=15 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=250 +lumberrep=250 +mana0=1000 +manan=1000 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +name="遗忘者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8Default.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=200 +qarea2=0 +qfact1=0.2 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=10.0 +regenmana=5.0 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=4.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1400 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,notself" +stockmax=1 +stockregen=760 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用遗忘者" +turnrate=0.0 +ubersplat="NGOL" +ubertip="远古的神秘生物,能对敌人吐出火焰进行攻击。能学习到产卵触角,霹雳闪电和符咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[nfgt] +_id="nfgt" +_name="tentacle" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTentacle.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.56 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.07 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=25 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\ForgottenOne\\ForgottenOneTent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="触须" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=180 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=90.0 +shadowonwater=1 +shadoww=90.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ward" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +ubertip="来自地底的粗糙触角。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nfgu] +_id="nfgu" +_name="felguard" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNFelGuard.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.2 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Felgaurd\\Felgaurd" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂暴守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=280.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用狂暴守卫" +turnrate=0.6 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DoomGuard" +useclickhelper=0 +walk=280.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[nfh0] +_id="nfh0" +_name="foresttrollhut0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="某些巨魔的家。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ForestTrollHut0\\ForestTrollHut0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="森林巨魔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +tip="建造森林巨魔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="ForestTrollHut0" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfh1] +_id="nfh1" +_name="foresttrollhut1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="某些巨魔的家。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ForestTrollHut1\\ForestTrollHut1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="森林巨魔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W,V,Q" +tilesetspecific=0 +tip="建造森林巨魔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="ForestTrollHut1" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfnp] +_id="nfnp" +_name="purplefountain" +_type="unit" +abillist="ACnr,ANre,Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +animprops="third" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFountainOfLife.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FountainOfPower\\FountainOfPower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="威力之泉" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OMED" +unitsound="FountainOfLife" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfod] +_id="nfod" +_name="facelessonedeathbringer" +_type="unit" +abillist="ACad,ACsi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFacelessOne.blp" +atktype1="chaos" +atktype2="chaos" +backsw1=0.56 +backsw2=0.3 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=45 +dmgpt1=0.5 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="Units\\Creeps\\FacelessOne\\FacelessOne" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1900 +impactswimz=0.0 +impactz=180.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-40.0 +launchy=90.0 +launchz=80.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=2.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无名死灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=100 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=12 +sides2=12 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无名死灵" +turnrate=0.5 +ubertip="重型的远程攻击,能进行闪电攻击,施放沉默魔法和操纵死尸技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="FacelessOne" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="msplash" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[nfoh] +_id="nfoh" +_name="fountainofhealth" +_type="unit" +abillist="Avul,ACnr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFountainOfLife.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能快速恢复周围非机械单位的魔法值。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FountainOfLife\\FountainOfHealth" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="生命之泉" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造生命之泉" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OMED" +unitsound="FountainOfLife" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfor] +_id="nfor" +_name="facelessonetrickster" +_type="unit" +abillist="ACcs,ACpu" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFacelessOne.blp" +atktype1="normal" +atktype2="normal" +auto="Acrs" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\FacelessOne\\FacelessOne" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=205 +goldrep=205 +green=180 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=675 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-25.0 +launchy=50.0 +launchz=40.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无名骗士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=180 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无名骗士" +turnrate=0.5 +ubertip="重型的近战单位,具有净化和诅咒技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="FacelessOne" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfot] +_id="nfot" +_name="facelessoneterror" +_type="unit" +abillist="ACsl,ACmf" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFacelessOne.blp" +atktype1="chaos" +atktype2="chaos" +backsw1=0.56 +backsw2=0.3 +bldtm=40 +blend=0.15 +blue=150 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=40 +dmgplus2=40 +dmgpt1=0.5 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="Units\\Creeps\\FacelessOne\\FacelessOne" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=150 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1150 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-30.0 +launchy=70.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无名恐怖者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=100 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=250.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=8 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无名恐怖者" +turnrate=0.5 +ubertip="重型的远程攻击单位,能发射闪电攻击,同时具有睡眠和魔法护盾技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="FacelessOne" +useclickhelper=0 +walk=250.0 +weapson=3 +weaptp1="msplash" +weaptp2="normal" +weaptype1="WoodHeavyBash" +weaptype2="WoodHeavyBash" + +[nfov] +_id="nfov" +_name="overlord" +_type="unit" +abillist="Acht,ACce,ACvp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNFelGuardBlue.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.2 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=25 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\FelgaurdBlue\\FelgaurdBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=775 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=280.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=310 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用领主" +turnrate=0.6 +ubertip="重型近战单位,有分裂攻击,吸血光环和恐怖嚎叫技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="DoomGuard" +useclickhelper=0 +walk=280.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[nfpc] +_id="nfpc" +_name="polarfurbolgchampion" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolg.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=150 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolg\\PolarFurbolg" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪战士" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfpe] +_id="nfpe" +_name="polarfurbolgeldershaman" +_type="unit" +abillist="AChv,ACfn" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolgShaman.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolgTracker\\PolarFurbolgTracker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=385 +goldrep=385 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪萨满长者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪萨满长者" +turnrate=0.5 +ubertip="重型的远程攻击单位,具有霜冻新星和医疗波技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nfpl] +_id="nfpl" +_name="polarfurbolg" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolg.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolg\\PolarFurbolg" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfps] +_id="nfps" +_name="polarfurbolgshaman" +_type="unit" +abillist="ACf2,ACdm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolgShaman.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="AUfu" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolgTracker\\PolarFurbolgTracker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=220 +goldrep=220 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪萨满" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=330 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪萨满(|cffffcc00F|r)" +turnrate=0.5 +ubertip="中型的远程攻击单位,具有驱逐魔法和霜冻护甲技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nfpt] +_id="nfpt" +_name="polarfurbolgtracker" +_type="unit" +abillist="ACsw" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolgTracker.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +auto="Aslo" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolgTracker\\PolarFurbolgTracker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪追踪者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪追踪者" +turnrate=0.5 +ubertip="重型的近战单位,能减速敌人。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfpu] +_id="nfpu" +_name="polarfurbolgursawarrior" +_type="unit" +abillist="Awrs,ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPolarFurbolgElder.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarFurbolg\\PolarFurbolg" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="北极熊怪乌萨战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊怪乌萨战士" +turnrate=0.5 +ubertip="重型的近战单位,具有命令光环和战争践踏技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfr1] +_id="nfr1" +_name="furbolghut1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="某些熊怪的家。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FurbolgHut\\FurbolgHut" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="熊怪小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="建造熊怪小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="FurbolgHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfr2] +_id="nfr2" +_name="furbolghut2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="某些熊怪的家。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FurbolgHut2\\FurbolgHut2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="熊怪小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="建造熊怪小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="FurbolgHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfra] +_id="nfra" +_name="furbolgancient" +_type="unit" +abillist="Awrs,ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolgElder.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FurbolgElder\\FurbolgElder" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪乌萨战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪乌萨战士" +turnrate=0.5 +ubertip="重型的近战单位,具有命令光环和战争践踏这两个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfrb] +_id="nfrb" +_name="furbolgtracker" +_type="unit" +abillist="ACff" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolgTracker.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +auto="Afae" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FurbolgTracker\\FurbolgTracker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪追踪者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪追踪者" +turnrate=0.5 +ubertip="重型的近战单位,具有精灵之火技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfre] +_id="nfre" +_name="furbolgeldershaman" +_type="unit" +abillist="ACr2,ACls" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolgShaman.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FurbolgShaman\\FurbolgShaman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=340 +goldrep=340 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪萨满长者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪萨满长者" +turnrate=0.5 +ubertip="远程攻击单位,能投掷闪电的,还能施放生命恢复技能和闪电护盾。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nfrg] +_id="nfrg" +_name="furbolgchampion" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolg.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=150 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Furbolg\\Furbolg" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪战士" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfrl] +_id="nfrl" +_name="furbolg" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolg.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Furbolg\\Furbolg" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfrm] +_id="nfrm" +_name="frostmourne" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNFrostmourne.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Frostmourne\\Frostmourne" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="霜之哀伤底座" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitsound="Frostmourne" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfro] +_id="nfro" +_name="frog" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHex.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Frog\\Frog" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="青蛙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="A,L,F,W,D,Z,G,V,Q,X,J,Y,C" +tilesetspecific=0 +tip="调用青蛙" +turnrate=0.5 +ubertip="召唤令人惊吓的青蛙来帮助你。" +unitshadow="Shadow" +unitsound="Frog" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nfrp] +_id="nfrp" +_name="furbolgpanda" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolgPanda.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FurbolgPanda\\FurbolgPanda" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊猫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="雇用熊猫" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nfrs] +_id="nfrs" +_name="furbolgshaman" +_type="unit" +abillist="ACr2" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFurbolgShaman.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FurbolgShaman\\FurbolgShaman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊怪萨满" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=360 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用熊怪萨满(|cffffcc00F|r)" +turnrate=0.5 +ubertip="中型的远程攻击单位,能进行闪电攻击,具有生命恢复技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Furbolg" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nfrt] +_id="nfrt" +_name="fruitstand" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMarketplace.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FruitStand\\FruitStand" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="水果店" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造水果店" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="你一生中所见过的最不可思议的水果店。" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfsh] +_id="nfsh" +_name="foresttrollhighpriest" +_type="unit" +abillist="Anh2,ACif,ACd2" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTrollShadowPriest.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=130 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTrollShadowPriest\\ForestTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=245 +goldrep=245 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="H" +hp=450 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树魔高级牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=130 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用树魔高级牧师(|cffffcc00H|r)" +turnrate=0.5 +ubertip="魔法单位,具有医疗能力,具有驱逐魔法和心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nfsp] +_id="nfsp" +_name="foresttrollshadowpriest" +_type="unit" +abillist="Anh1,ACdm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTrollShadowPriest.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTrollShadowPriest\\ForestTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=220 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="P" +hp=240 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireballMissile\\FireballMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树魔影子牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用树魔影子牧师(|cffffcc00P|r)" +turnrate=0.5 +ubertip="魔法单位,具有医疗能力,能施放驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nft1] +_id="nft1" +_name="flametower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="third" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNFlameTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=140.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="火焰之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造火焰之塔(|cffffcc00F|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="能射出灼热的火焰。擅长于毁灭靠近的敌人。对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +upgrade="nft2" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nft2] +_id="nft2" +_name="flametowerupgrade" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="upgrade,third" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedFlameTower.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=235.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高级火焰之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级高级火焰之塔(|cffffcc00U|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="增加喷射火焰的攻击力,擅长于毁灭靠近的敌人,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nftb] +_id="nftb" +_name="foresttrollberserker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=130 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTroll\\ForestTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=450 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树魔狂战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=130 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用树魔狂战士( |cffffcc00B|r)" +turnrate=0.5 +ubertip="脾气暴躁的斧手。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nftk] +_id="nftk" +_name="foresttrollking" +_type="unit" +abillist="ACat" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTrollTrapper\\ForestTrollTrapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树魔首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用树魔首领(|cffffcc00W|r)" +turnrate=0.5 +ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nftr] +_id="nftr" +_name="foresttroll" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTroll\\ForestTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=220 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="森林巨魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用森林巨魔(|cffffcc00T|r)" +turnrate=0.5 +ubertip="投掷巨斧的恶魔。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nftt] +_id="nftt" +_name="foresttrolltrapper" +_type="unit" +abillist="ACen" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNForestTrollTrapper.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.3 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ForestTrollTrapper\\ForestTrollTrapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="树魔猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,V,Q" +tilesetspecific=0 +tip="雇用树魔猎手( |cffffcc00F|r)" +turnrate=0.5 +ubertip="能诱捕对手的中型远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ForestTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nfv0] +_id="nfv0" +_name="elvenfishingvillage0" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (双层的" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuilding0\\ElvenFishVillageBuilding0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfv1] +_id="nfv1" +_name="elvenfishingvillage1" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (顶层有装饰的" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuilding1\\ElvenFishVillageBuilding1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfv2] +_id="nfv2" +_name="elvenfishingvillage2" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (一层的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuilding2\\ElvenFishVillageBuilding2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfv3] +_id="nfv3" +_name="elvenfishingvillage3" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (双层的" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuilding3\\ElvenFishVillageBuilding3" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nfv4] +_id="nfv4" +_name="elvenfishingvillage4" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (顶层有装饰的" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuilding4\\ElvenFishVillageBuilding4" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngad] +_id="ngad" +_name="goblinammodump" +_type="unit" +abillist="Ane2,Andt,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAmmoDump.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="使得你能充分利用地精科技的优势。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\AmmoDump\\AmmoDump" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="地精实验室" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +sellunits="ngsp,nzep,ngir" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造地精实验室" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="AmmoDump" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngbl] +_id="ngbl" +_name="goblinblaster" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNJunkGolem.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=85 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.4 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=31 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IronGolem\\IronGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=375 +goldrep=375 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FragDriller\\FragDriller.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地精爆破工" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=200 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=240 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +type="Mechanical" +unitshadow="Shadow" +unitsound="IronGolem" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ngdk] +_id="ngdk" +_name="greendrake" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=60 +blend=0.15 +blue=180 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=33 +dmgplus2=48 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GreenDragon\\GreenDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-20.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="绿蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤绿蜉蝣(|cffffcc00K|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="missile" +weaptp2="missile" + +[nggr] +_id="nggr" +_name="granitegolem" +_type="unit" +abillist="ACmi,ACtb,ACtc" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNRockGolem.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.3 +bldtm=90 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=48.0 +cool1=1.35 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=60 +dmgplus2=45 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RockGolem\\RockGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=435 +goldrep=435 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=220.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="花岗岩傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=500 +red=150 +regenhp=1.5 +regenmana=1.5 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=8 +sides2=6 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,D,J" +tilesetspecific=0 +tip="召唤花岗岩傀儡" +turnrate=0.5 +ubertip="重型近战单位,能重击对手,对所有魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="RockGolem" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="RockHeavyBash" + +[ngh1] +_id="ngh1" +_name="ghost" +_type="unit" +abillist="ACps" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNGhost.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.51 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.17 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BansheeGhost\\BansheeGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BansheeMissile\\BansheeMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.05 +movefloor=0.0 +moveheight=50.0 +movetp="hover" +name="幽灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=400 +rangen2=0 +red=110 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N,D,G" +tilesetspecific=0 +tip="召唤幽灵" +turnrate=0.6 +type="undead" +ubertip="轻型远程攻击单位,能施放占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Ghost" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ngh2] +_id="ngh2" +_name="wraith" +_type="unit" +abillist="ACps,ACcs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNGhost.blp" +atktype1="pierce" +atktype2="normal" +auto="Acrs" +backsw1=0.51 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.17 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BansheeGhost\\BansheeGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BansheeMissile\\BansheeMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=50.0 +movetp="hover" +name="幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=11 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N,D,G" +tilesetspecific=0 +tip="召唤幽魂" +turnrate=0.6 +type="undead" +ubertip="重型远程攻击单位,能施放诅咒技能和占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Ghost" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ngir] +_id="ngir" +_name="goblinshredder" +_type="unit" +abillist="Ahr3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNJunkGolem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.6 +bldtm=50 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=85 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.4 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=10 +dmgplus1=31 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IronGolem\\IronGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=375 +goldrep=375 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地精撕裂者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=66 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=10 +sides2=1 +sight=1400 +spd=240 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=300 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用地精撕裂者(|cffffcc00G|r)" +turnrate=0.5 +type="Mechanical" +ubertip="近战单位,由钢铁做成,还特别擅长于采集大量的木材资源。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="IronGolem" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalHeavySlice" +weaptype2="MetalHeavySlice" + +[nglm] +_id="nglm" +_name="goblinlandmine" +_type="unit" +abillist="Amnx,Amin" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinLandMine.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GoblinLandMine\\GoblinLandMine" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地精地雷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="standon,ward" +unitshadow="Shadow" +unitsound="GoblinLandMine" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngme] +_id="ngme" +_name="goblinmerchant" +_type="unit" +abillist="Aneu,Avul,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMerchant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowGoblinMerchant" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="这里会出售各类的魔法物品。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Merchant\\Merchant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="地精商店" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +sellitems="stwp,bspd,dust,tret,prvt,cnob,stel,pnvl,shea,spro,pinv" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造地精商店" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Merchant" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngna] +_id="ngna" +_name="gnollpoacher" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnollArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GnollArcher\\GnollArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="A" +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-20.0 +launchy=0.0 +launchz=40.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼偷猎者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼偷猎者(|cffffcc00A|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="GnollArcher" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ngnb] +_id="ngnb" +_name="gnollbrute" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnoll.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Gnoll\\Gnoll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=140 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼野兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼野兽(|cffffcc00B|r)" +turnrate=0.5 +ubertip="轻型近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Gnoll" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumBash" + +[ngnh] +_id="ngnh" +_name="gnollhut" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="由石头和木材构成的一种小屋。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GnollHut\\GnollHut" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="豺狼人小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="建造豺狼人小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="GnollHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngni] +_id="ngni" +_name="granaryinfected" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="里面都是糜烂的谷物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GranaryInfected\\GranaryInfected" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=140.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="腐烂谷仓" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造腐烂谷仓" +turnrate=0.0 +type="Mechanical" +unitsound="GranaryInfected" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngno] +_id="ngno" +_name="gnoll1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnoll.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Gnoll\\Gnoll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼(|cffffcc00R|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Gnoll" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumBash" + +[ngns] +_id="ngns" +_name="gnollassassin" +_type="unit" +abillist="ACvs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnollArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GnollArcher\\GnollArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="S" +hp=320 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-20.0 +launchy=0.0 +launchz=40.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PoisonArrow\\PoisonArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼刺客" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼刺客(|cffffcc00S|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位,能射出毒箭。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="GnollArcher" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ngnv] +_id="ngnv" +_name="gnollking" +_type="unit" +abillist="ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnollKing.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GnollOverseer\\GnollOverseer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=245 +goldrep=245 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="O" +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼首领(|cffffcc00O|r)" +turnrate=0.5 +ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="GnollKing" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumBash" + +[ngnw] +_id="ngnw" +_name="gnoll3" +_type="unit" +abillist="ACpu" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGnollWarden.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=1.23 +castpt=0.6 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GnollWarden\\GnollWarden" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=330 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豺狼守望者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=180 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用豺狼守望者(|cffffcc00W|r)" +turnrate=0.5 +ubertip="远程攻击单位,能施放出一道道闪电,还能施放净化魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Gnoll" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ngob] +_id="ngob" +_name="gemstoneobelisk" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNEnchantedGemstone.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\BridgeObelisk\\BridgeObelisk" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="魔法宝石塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngol] +_id="ngol" +_name="goldmine" +_type="unit" +abillist="Agld,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoldMine.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=7.0 +bufftype="resource" +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=1 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="黄金的主要来源。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GoldMine\\GoldMine" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="金矿" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Goldmine.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造金矿" +turnrate=0.0 +ubersplat="NGOL" +unitsound="GoldMine" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngrd] +_id="ngrd" +_name="greendragon" +_type="unit" +abillist="Advc,ACdv,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=150 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=45 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\GreenDragon\\GreenDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-30.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="绿龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=180 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤绿龙(|cffffcc00D|r)" +turnrate=0.1 +ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="missile" + +[ngrk] +_id="ngrk" +_name="mudgolem" +_type="unit" +abillist="ACmi,ACsw" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNRockGolem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +auto="Aslo" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=70 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RockGolem\\RockGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=115 +goldrep=115 +green=110 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="U" +hp=240 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="泥潭傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=240 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,D,J" +tilesetspecific=0 +tip="召唤泥潭傀儡(|cffffcc00U|r)" +turnrate=0.5 +ubertip="近战单位,能让敌人减速。还对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="RockGolem" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="RockHeavyBash" + +[ngrw] +_id="ngrw" +_name="greendragonwhelp" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=30 +blend=0.15 +blue=0 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=24 +dmgplus2=24 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GreenDragonWelp\\GreenDragonWelp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=230 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=340 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=-10.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="绿幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤绿幼龙(|cffffcc00W|r)" +turnrate=0.5 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[ngsp] +_id="ngsp" +_name="goblinsapper" +_type="unit" +abillist="Asds" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinSapper.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GoblinSapper\\GoblinSapper" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地精工兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用地精工兵(|cffffcc00S|r)" +turnrate=0.5 +type="Sapper" +ubertip="它们特别擅长于对付敌人的建筑物。|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="GoblinSapper" +useclickhelper=0 +walk=150.0 +weapson=0 + +[ngst] +_id="ngst" +_name="rockgolem" +_type="unit" +abillist="ACmi,ACtb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNRockGolem.blp" +atktype1="normal" +atktype2="pierce" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.3 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=32.0 +cool1=1.35 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=28 +dmgplus2=28 +dmgpt1=0.3 +dmgpt2=0.3 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RockGolem\\RockGolem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=675 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=220.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="岩石傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=5 +sides2=5 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,D,J" +tilesetspecific=0 +tip="召唤岩石傀儡" +turnrate=0.5 +ubertip="近战单位,能投掷巨石,对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="RockGolem" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="RockHeavyBash" + +[ngt2] +_id="ngt2" +_name="gnollhut2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="由石头和木材构成的一种小屋。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 2" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GnollHut2\\GnollHut2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="豺狼人小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="建造豺狼人小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="GnollHut" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngwr] +_id="ngwr" +_name="grainwarehouse" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericHumanBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一种为了存贮粮食而造的建筑物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GrainWarehouse\\GrainWarehouse" +fileverflags=0 +fmade=0 +fograd=128.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=200.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="谷仓" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\CityBuilding6-8.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造谷仓" +turnrate=0.0 +type="Mechanical" +unitsound="GrainWarehouse" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ngz1] +_id="ngz1" +_name="grizzlybear1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=18 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngz2] +_id="ngz2" +_name="grizzlybear2" +_type="unit" +abillist="ANbh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=900 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="怒熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngz3] +_id="ngz3" +_name="grizzlybear3" +_type="unit" +abillist="ANbh,ANbl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=37 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵魂之熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngz4] +_id="ngz4" +_name="misha4" +_type="unit" +abillist="ANb2,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=57 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 4)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=2250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="米纱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=128 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=370 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngza] +_id="ngza" +_name="misha3" +_type="unit" +abillist="ANb2,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=45 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="米纱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=310 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngzc] +_id="ngzc" +_name="misha1" +_type="unit" +abillist="ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=900 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="米纱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ngzd] +_id="ngzd" +_name="misha2" +_type="unit" +abillist="ANbh,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.9 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=37 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="米纱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="GrizzlyBear" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nhar] +_id="nhar" +_name="harpyscout" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHarpy.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Harpy\\Harpy" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=120 +goldrep=120 +green=140 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=210 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="女妖侦察者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=540 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用鹰身女妖侦察兵" +turnrate=0.5 +ubertip="轻型飞行单位,能投掷出尖羽毛。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Harpy" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nhcn] +_id="nhcn" +_name="hornofcenarius" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNHornOfCenarius.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\HornOfCenarius\\HornOfCenarius" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="半神赛纳留斯之角" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitsound="HornOfCenarius" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nhdc] +_id="nhdc" +_name="deceiver" +_type="unit" +abillist="ACcs" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAcolyte.blp" +atktype1="pierce" +atktype2="normal" +auto="Acrs" +backsw1=0.47 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Acolyte\\Acolyte" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="欺骗者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=170 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="雇用欺骗者" +turnrate=0.5 +ubertip="轻型单位,能射出火焰进行攻击,拥有诅咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Acolyte" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="missile" + +[nhea] +_id="nhea" +_name="highelvenarcher" +_type="unit" +acquire=800.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHighElvenArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.28 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.72 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HighElfArcher\\HighElfArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=310 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=11.0 +launchy=62.0 +launchz=71.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="night" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练弓箭手(|cffffcc00R|r)" +turnrate=0.6 +ubertip="基本的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Archer" +upgrades="Resm,Rema,Reib,Remk,Reuv,Repm" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nheb] +_id="nheb" +_name="highelfbarracks" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMageTower.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowHighElvenBarracks" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MageTower\\MageTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高等精灵兵营" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rhde" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="(|cffffcc00B|r)建造兵营" +trains="hhes,nhea,nws1" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="主要部队生产建筑。 训练高等精灵剑士和高等精灵弓箭手和龙鹰。|n 同时包括对于高等精灵剑士防御技能的升级。" +unitsound="MageTower" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nhef] +_id="nhef" +_name="highelvenfemale" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFemaleElfVillager.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=10 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (女性)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\ElfVillagerWoman\\ElfVillagerWoman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=5 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="高等精灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=10 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="shadow" +unitsound="VillagerWoman" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nhem] +_id="nhem" +_name="highelvenmale" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNElfVillager.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=10 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (男性)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\HighElfPeasant\\HighElfPeasant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="高等精灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=10 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="shadow" +unitsound="VillagerMan" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nhew] +_id="nhew" +_name="bloodelfworker" +_type="unit" +abillist="Ahar,Ahrp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNElfVillager.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="htow,hhou,hbar,hbla,hwtw,halt,nnsg,hars,hlum,nnsa,hvlt" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=3.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (血精灵)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\HighElfPeasant\\HighElfPeasant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=220 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="工人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=90 +rangen2=66 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练工人(|cffffcc00W|r)" +turnrate=0.5 +type="Peon" +ubertip="基本的工人单位。能建造建筑物和进行修理。" +unitshadow="shadow" +unitsound="BloodElfWorker" +upgrades="Rhlh,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[nhfp] +_id="nhfp" +_name="fallenpriest" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAcolyte.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Acolyte\\Acolyte" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="堕落牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="雇用堕落牧师" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Acolyte" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="missile" + +[nhhr] +_id="nhhr" +_name="heretic" +_type="unit" +abillist="ACrd,ACca" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAcolyte.blp" +atktype1="pierce" +atktype2="normal" +auto="Arai" +backsw1=0.47 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=120 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Acolyte\\Acolyte" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="异教徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y" +tilesetspecific=0 +tip="雇用异教徒" +turnrate=0.5 +ubertip="中型单位,能射出火焰进行攻击,拥有复活死尸和腐臭蜂群这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Acolyte" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="missile" + +[nhmc] +_id="nhmc" +_name="hermitcrab" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHermitCrab.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\HermitCrab\\HermitCrab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="螃蟹隐士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤螃蟹隐士" +turnrate=0.5 +ubertip="能召唤一个螃蟹隐士的灵魂来挽救你。" +unitshadow="Shadow" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nhns] +_id="nhns" +_name="harpynest" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="里面的木质骨架上有着一些零星的残骸。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\HarpyNest\\HarpyNest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="女妖巢穴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造女妖巢穴" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="HarpyNest" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nhrh] +_id="nhrh" +_name="harpyhag" +_type="unit" +abillist="ACcs,ACsl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHarpyWitch.blp" +atktype1="pierce" +atktype2="normal" +auto="Acrs" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HarpyWitch\\HarpyWitch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="女妖风暴巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=0 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用女妖风暴巫师" +turnrate=0.5 +ubertip="飞行单位,能施放出闪电进行攻击,拥有诅咒技能和睡眠术。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Harpy" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nhrq] +_id="nhrq" +_name="harpyqueen" +_type="unit" +abillist="ACr2,ACcy" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHarpyQueen.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.35 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\HarpyQueen\\HarpyQueen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=290 +goldrep=290 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GargoyleMissile\\GargoyleMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=2.1 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="女妖女皇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=0 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air" +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用女妖女皇" +turnrate=0.5 +ubertip="重型的远程攻击飞行单位,拥有生命恢复技能和飓风魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Harpy" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[nhrr] +_id="nhrr" +_name="harpyrogue" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHarpy.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Harpy\\Harpy" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=340 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HarpyMissile\\HarpyMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="鹰身女妖流氓" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=360 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用鹰身女妖流氓(|cffffcc00R|r)" +turnrate=0.5 +ubertip="轻型飞行单位,能投掷出尖羽毛。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Harpy" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nhrw] +_id="nhrw" +_name="harpywitch" +_type="unit" +abillist="ACff" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHarpyWitch.blp" +atktype1="pierce" +atktype2="normal" +auto="Afae" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HarpyWitch\\HarpyWitch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=190 +goldrep=190 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=280 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="鹰身女妖巫婆" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=4 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=640 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用鹰身女妖巫婆(|cffffcc00W|r)" +turnrate=0.5 +ubertip="飞行单位,能施放出闪电进行攻击,也能施放精灵之火和驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Harpy" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nhyc] +_id="nhyc" +_name="campaignturtle" +_type="unit" +abillist="Advc,ACdv,ANth,Ansk" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleRed.blp" +atktype1="pierce" +atktype2="siege" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.3 +bldtm=45 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.75 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=22 +dmgplus2=62 +dmgpt1=0.7 +dmgpt2=0.7 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSeaTurtleRange\\DragonSeaTurtleRange" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=320 +goldrep=320 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=750 +impactswimz=0.0 +impactz=110.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=-50.0 +launchx=0.0 +launchy=100.0 +launchz=75.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=65 +lumberrep=65 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AncientProtectorMissile\\AncientProtectorMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="龙龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=950 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=480 +rangen2=450 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=100.0 +scale=2.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=18 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,item,ward" +targs2="structure,tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练龙龟(|cffffcc00T|r)" +turnrate=0.6 +ubertip="一只可以吞噬敌方单位的强大海龟。善于破坏敌建筑。拥有硬化皮肤, 可以减少所受的伤害, 以及尖刺外壳,可以对敌人的近战攻击者造成伤害。|n|n|cffffcc00能攻击地面单位。" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +upgrades="Rguv,Rnam,Rnat" +useclickhelper=0 +walk=100.0 +weapson=3 +weaptp1="missile" +weaptp2="missile" + +[nhyd] +_id="nhyd" +_name="hydra" +_type="unit" +abillist="Aspo, Aspt" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreenHydra.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=25 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Hydra\\Hydra" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=575 +impactswimz=0.0 +impactz=70.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=50.0 +launchy=100.0 +launchz=100.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="九头怪蛇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=10.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=2.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用九头怪蛇" +turnrate=0.6 +ubertip="轻型远程攻击两栖单位,具有慢性毒药技能。当该单位被杀死的时候,许多小九头怪蛇就会从其尸体中冒出来。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="AzureDragon" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[nhyh] +_id="nhyh" +_name="hydrahatchling" +_type="unit" +abillist="Aspo" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreenHydra.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=125 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Hydra\\Hydra" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=350 +impactswimz=0.0 +impactz=50.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=30.0 +launchy=30.0 +launchz=100.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="小九头怪蛇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=4.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=1.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用小九头怪蛇" +turnrate=0.6 +ubertip="中型远程攻击两栖单位,具有慢性毒药技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="AzureDragon" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[nhym] +_id="nhym" +_name="hydromancer" +_type="unit" +abillist="ACsw,ACpy,ACc3" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="magic" +atktype2="normal" +attachmentanimprops="medium" +auto="Aslo" +backsw1=0.85 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=170 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditMage\\BanditMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="Y" +hp=405 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=25.0 +launchy=0.0 +launchz=66.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="术士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=1.3333333333333 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=260.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练术士(|cffffcc00Y|r)" +turnrate=0.5 +ubertip="多才多艺的魔法单位。能施放减速,冲击波和变形魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" + +[nico] +_id="nico" +_name="icecrownobelisk" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNIceCrownObelisk.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="doodads\\cinematic\\IcecrownObelisk\\IcecrownObelisk" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="寒冰王座方尖塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +turnrate=0.0 +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nina] +_id="nina" +_name="infernaljuggernaut" +_type="unit" +abillist="ANin" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNInfernalFlameCannon.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.8 +backsw2=0.0 +bldtm=36 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.8 +castpt=0.5 +collision=64.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\InfernalCannonFlame\\InfernalCannonFlame" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=220 +goldrep=220 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=110.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=30.0 +launchz=60.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=700 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地狱战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=1.0 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=180 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=3 +stockregen=510 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用地狱战舰" +turnrate=0.4 +type="Mechanical" +ubertip="重型远程攻击单位,能发射炽烈之箭。可以施放地狱火。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="InfernalMachine" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="msplash" + +[ninc] +_id="ninc" +_name="infernalcontraption" +_type="unit" +acquire=625.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNInfernalCannon.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.8 +backsw2=0.0 +bldtm=36 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.8 +castpt=0.5 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\InfernalCannonCannon\\InfernalCannonCannon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=220 +goldrep=220 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-30.0 +launchz=80.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=700 +"missilespeed:2"=0 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地狱火机关人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=180 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=3 +stockregen=260 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用地狱火机关人" +turnrate=0.4 +type="Mechanical" +ubertip="中型远程单位,能射出炽烈之箭。|n|n|cffffcc00能攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="InfernalMachine" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="msplash" + +[ninf] +_id="ninf" +_name="infernal" +_type="unit" +abillist="ACmi,ANpi,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNInfernal.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.74 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.26 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\Infernal\\Infernal" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地狱火" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="demon" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward,tree" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤地狱火" +turnrate=0.4 +ubertip="重型近战单位,被熊熊的火焰包围着,能对周围的地面单位造成持续伤害。还对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Infernal" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="RockHeavyBash" + +[ninm] +_id="ninm" +_name="infernalmachine" +_type="unit" +abillist="ACbc" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNInfernalCannon.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.8 +backsw2=0.0 +bldtm=36 +blend=0.15 +blue=135 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.8 +castpt=0.5 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\InfernalCannonCannon\\InfernalCannonCannon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=220 +goldrep=220 +green=150 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1200 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-45.0 +launchz=120.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=350 +manan=350 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.08 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=700 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地狱火机械人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.875 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=180 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=410 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用地狱火机械人" +turnrate=0.4 +type="Mechanical" +ubertip="重型远程单位,能射出炽烈之箭。可以施放火焰呼吸。|n|n|cffffcc00能攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="InfernalMachine" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="msplash" + +[nitb] +_id="nitb" +_name="treasurebox" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNIcyTreasureBox.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMagicVault" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="被寒冰封印着的盒子,通常在这种盒子里面有着神奇的宝物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\IceCrownTreasureBox\\IceCrownTreasureBox" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="冰之宝盒" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="购买冰之宝盒(|cffffcc00B|r)" +turnrate=0.0 +type="Mechanical" +ubertip="里面有着宝藏。" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nith] +_id="nith" +_name="icetrollhighpriest" +_type="unit" +abillist="Anh2,ACf2,ACd2" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNIceTrollShaman.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTrollShadowPriest\\IceTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=130 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰魔高级牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=170 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰魔高级牧师" +turnrate=0.5 +ubertip="魔法单位,具有医疗能力,具有驱魔技能和霜冻护甲。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nitp] +_id="nitp" +_name="icetrollshadowpriest" +_type="unit" +abillist="Anh1" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNIceTrollShadowPriest.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTrollShadowPriest\\IceTrollShadowPriest" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰魔牧师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=190 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰魔牧师" +turnrate=0.5 +ubertip="魔法单位,具有医疗能力。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTrollShadowPriest" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nitr] +_id="nitr" +_name="icetroll" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNIceTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTroll\\IceTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰之巨魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=190 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰之巨魔" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nits] +_id="nits" +_name="icetrollberserker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNIceTrollBeserker.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTroll\\IceTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=195 +goldrep=195 +green=130 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰魔狂战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=170 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰魔狂战士(|cffffcc00B|r)" +turnrate=0.5 +ubertip="中型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nitt] +_id="nitt" +_name="icetrolltrapper" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNICeTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=170 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTroll\\IceTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰魔猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=170 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰魔猎手(|cffffcc00T|r)" +turnrate=0.5 +ubertip="中型远程攻击单位,能诱捕对手。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[nitw] +_id="nitw" +_name="icetrollwarlord" +_type="unit" +abillist="ACat" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNICeTroll.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\IceTroll\\IceTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰魔首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=270.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="W,N,I" +tilesetspecific=0 +tip="雇用冰魔首领" +turnrate=0.5 +ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="IceTroll" +useclickhelper=0 +walk=270.0 +weapson=1 +weaptp1="missile" + +[njg1] +_id="njg1" +_name="junglestalker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNJungleBeast.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\JungleBeast\\JungleBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="丛林漫步者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤丛林漫步者" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[njga] +_id="njga" +_name="elderjunglestalker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNJungleBeast.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\JungleBeast\\JungleBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=300 +goldrep=300 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=900 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="丛林漫步者长老" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.45 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤丛林漫步者长老" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[njgb] +_id="njgb" +_name="enrangedjunglestalker" +_type="unit" +abillist="ACtc" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNJungleBeast.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\JungleBeast\\JungleBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=435 +goldrep=435 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="怒之丛林漫步者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤怒之丛林漫步者" +turnrate=0.5 +ubertip="重型近战单位,能重击对手。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[njks] +_id="njks" +_name="jailorkassan" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBandit.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bandit\\Bandit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="监狱小卒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nkob] +_id="nkob" +_name="kobold" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKobold.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=165 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Kobold\\Kobold" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狗头人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,Y,X,V,Q,G,J" +tilesetspecific=0 +tip="雇用狗头人( |cffffcc00K|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Kobold" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nkog] +_id="nkog" +_name="koboldgeomancer" +_type="unit" +abillist="ACsw,ACdm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKoboldGeomancer.blp" +atktype1="pierce" +atktype2="normal" +auto="Aslo" +backsw1=0.6 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\KoboldGeomancer\\KoboldGeomancer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="G" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狗头人占卜者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,Y,X,V,Q,G,J" +tilesetspecific=0 +tip="雇用狗头人占卜者(|cffffcc00G|r)" +turnrate=0.5 +ubertip="轻型远程攻击单位,具有减速魔法和驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Kobold" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="missile" + +[nkol] +_id="nkol" +_name="koboldtaskmaster" +_type="unit" +abillist="ACac,ACbh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKobold.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Kobold\\Kobold" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=650 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狗头人首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,Y,X,V,Q,G,J" +tilesetspecific=0 +tip="雇用狗头人首领" +turnrate=0.5 +ubertip="重型近战单位,带有命令光环,还拥有重击技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Kobold" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nkot] +_id="nkot" +_name="kobolttunneler" +_type="unit" +abillist="ACbh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKobold.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=180 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Kobold\\Kobold" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=325 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地穴狗头人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,Y,X,V,Q,G,J" +tilesetspecific=0 +tip="雇用地穴狗头人" +turnrate=0.5 +ubertip="轻型近战单位,拥有重击技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Kobold" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nlds] +_id="nlds" +_name="lobstrokkdeepseer" +_type="unit" +abillist="Aenw,Aslp" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkGreen.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.47 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=100 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkblue\\Lobstrokkblue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=400 +goldrep=400 +green=250 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=480 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=300 +manan=300 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MakuraMissile\\MakuraMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马库拉先知" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=250 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用马库拉池人(|cffffcc00D|r)" +turnrate=0.5 +ubertip="中型的远程攻击单位,能施放纠缠根须和召唤巨虾。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nlkl] +_id="nlkl" +_name="lobstrokktidallord" +_type="unit" +abillist="ACce,ACav" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkBlue.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkgreen\\Lobstrokkgreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马库拉潮汐领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用马库拉潮汐领主" +turnrate=0.5 +ubertip="重型的近战单位,具有专注光环和分裂攻击这两个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nlpd] +_id="nlpd" +_name="lobstrokkpooldweller" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=225 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkred\\Lobstrokkred" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=210 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马库拉池人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=125 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.65 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用马库拉池人" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nlpr] +_id="nlpr" +_name="lobstrokkprawn" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkred\\Lobstrokkred" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=170 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨虾" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用巨虾" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nlps] +_id="nlps" +_name="lobstrokkprawnsummoned" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkred\\Lobstrokkred" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=170 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="召唤出来的巨虾" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤出来的巨虾" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nlrv] +_id="nlrv" +_name="deeplordrevenant" +_type="unit" +abillist="ACcv,ACf2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNDeepLordRevenant.blp" +atktype1="chaos" +atktype2="normal" +auto="AUfu" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=175 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=68 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RevenantOfTheWaves\\RevenantOfTheWaves" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=175 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=2100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=300 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="深渊领主幽灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用深渊领主幽灵" +turnrate=0.6 +type="undead" +ubertip="重型的近战单位,具有冲击波和霜冻护甲这两项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nlsn] +_id="nlsn" +_name="lobstrokksnapper" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkRed.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=125 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=25 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkred\\Lobstrokkred" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=250 +goldrep=250 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=620 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马库拉甲鱼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=260 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用马库拉甲鱼(|cffffcc00R|r)" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nltc] +_id="nltc" +_name="lobstrokktidecaller" +_type="unit" +abillist="Anh1,ACf2" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNLobstrokkGreen.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Anhe" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Lobstrokkblue\\Lobstrokkblue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=300 +manan=300 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MakuraMissile\\MakuraMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.57 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马库拉潮汐召唤者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用马库拉潮汐召唤者" +turnrate=0.5 +ubertip="轻型的远程攻击单位,具有医疗和霜冻护甲两个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Lobstrokk" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nltl] +_id="nltl" +_name="lightninglizard" +_type="unit" +abillist="Alit,ACpu" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizard.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizard\\ThunderLizard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=280 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=20.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=200 +manan=200 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="闪电蜥蜴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,A,C,G" +tilesetspecific=0 +tip="召唤闪电蜥蜴" +turnrate=0.5 +ubertip="远程攻击单位,能施放出一道道闪电,还能施放净化魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nlur] +_id="nlur" +_name="monsterlure" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMonsterLure.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MonsterLure\\MonsterLure" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="怪兽诱捕守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤怪兽诱捕守卫" +turnrate=0.0 +type="Ward" +ubertip="能吸引附近怪兽的守卫。" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nlv1] +_id="nlv1" +_name="lavaspawn" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLavaSpawn.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=6 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="Units\\Creeps\\LavaSpawn\\LavaSpawn" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=425 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LavaSpawnMissile\\LavaSpawnMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炎魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="LavaSpawn" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nlv2] +_id="nlv2" +_name="lavaspawn2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLavaSpawn.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=6 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="Units\\Creeps\\LavaSpawn\\LavaSpawn" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=575 +impactswimz=0.0 +impactz=70.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=70.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LavaSpawnMissile\\LavaSpawnMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炎魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="LavaSpawn" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nlv3] +_id="nlv3" +_name="lavaspawn3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLavaSpawn.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=6.0 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=6 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="Units\\Creeps\\LavaSpawn\\LavaSpawn" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=700 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=80.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LavaSpawnMissile\\LavaSpawnMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="炎魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=75 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="enemy,ground" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="LavaSpawn" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmam] +_id="nmam" +_name="mammoth" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMammoth.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.7 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Mammoth\\Mammoth" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=450 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="猛犸" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用猛犸" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Mammoth" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nmbg] +_id="nmbg" +_name="murgulbloodgill" +_type="unit" +abillist="Anh1" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulBloodGill.blp" +atktype1="pierce" +atktype2="normal" +auto="Anhe" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulBloodGill\\MurgulBloodGill" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MurgulMagicMissile\\MurgulMagicMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔血女巫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=35.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔血女巫" +turnrate=0.5 +ubertip="轻型远程攻击两栖单位,具有医疗技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmcf] +_id="nmcf" +_name="murgulcliffrunner" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=128 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulTideWarrior\\MurgulTideWarrior" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔岩人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.8 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=90.0 +shadowonwater=1 +shadoww=90.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔岩人" +turnrate=0.5 +ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nmdm] +_id="nmdm" +_name="medivhmorphed" +_type="unit" +abillist="Amrf" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="alternateex" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRavenForm.blp" +atktype1="pierce" +atktype2="normal" +attachmentlinkprops="alternate" +backsw1=0.49 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (血乌鸦形态)" +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Medivh\\Medivh" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=185 +goldrep=185 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=280 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=200 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DruidoftheTalonMissile\\DruidoftheTalonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="麦迪文" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=6 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="night" +reptm=22 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=16 +sides2=0 +sight=1400 +spd=240 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Medivh" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmdr] +_id="nmdr" +_name="diremammoth" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlackMammoth.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.7 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MammothBlack\\MammothBlack" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐怖猛犸" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用恐怖猛犸" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Mammoth" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nmed] +_id="nmed" +_name="medivh" +_type="unit" +abillist="Amrf" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMedivh.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.49 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Medivh\\Medivh" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=185 +goldrep=185 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=280 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DruidoftheTalonMissile\\DruidoftheTalonMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="麦迪文" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="night" +reptm=22 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=16 +sides2=0 +sight=1400 +spd=240 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Medivh" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmer] +_id="nmer" +_name="mercenarycampl" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (洛丹伦的夏天)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nftb,nfsp,nogm,ngrk" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=0 +tilesets="L" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmfs] +_id="nmfs" +_name="murlocflesheater" +_type="unit" +abillist="ACcn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurlocFlesheater.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.45 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurlocFlesheater\\MurlocFlesheater" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=110 +goldrep=110 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="M" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="两栖食肉者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="雇用两栖食肉者(|cffffcc00M|r)" +turnrate=0.5 +ubertip="轻型的近战单位,具有吞食尸体技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmg0] +_id="nmg0" +_name="murgulhut0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种由竹子做成的小型了望塔。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 0" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MurlocHut0\\MurlocHut0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="穆格尔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="建造穆格尔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="MurlocHut0" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmg1] +_id="nmg1" +_name="murgulhut1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种由竹子做成的大型了望塔。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 1" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MurlocHut1\\MurlocHut1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="穆格尔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="建造穆格尔小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="MurlocHut1" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmgd] +_id="nmgd" +_name="magnataurdestroyer" +_type="unit" +abillist="ACmi,ACcb,ACtc" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlueMagnataur.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="large" +backsw1=0.84 +backsw2=0.84 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.84 +castpt=0.66 +collision=64.0 +cool1=1.5 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=75 +dmgplus2=60 +dmgpt1=0.66 +dmgpt2=0.66 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MagnataurBlue\\MagnataurBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=2100 +impactswimz=0.0 +impactz=150.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-100.0 +launchy=40.0 +launchz=360.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=500 +manan=500 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.45 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="玛格娜托破坏者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=8 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用玛格娜托破坏者" +turnrate=0.5 +ubertip="重型的近战单位,具有重击和投掷冰箭技能,魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Magnataur" +useclickhelper=0 +walk=100.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[nmgr] +_id="nmgr" +_name="magnataurreaver" +_type="unit" +abillist="ACmi,ACcb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMagnataurBrown.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="large" +backsw1=0.84 +backsw2=0.84 +bldtm=40 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.84 +castpt=0.66 +collision=48.0 +cool1=1.5 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=53 +dmgplus2=40 +dmgpt1=0.66 +dmgpt2=0.66 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Magnataur\\Magnataur" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=140.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-80.0 +launchy=35.0 +launchz=300.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=350 +manan=350 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1000 +"missilespeed:2"=0 +modelscale=1.325 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="玛格娜托撕裂者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=500 +red=255 +regenhp=0.5 +regenmana=0.875 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=5 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用玛格娜托撕裂者" +turnrate=0.5 +ubertip="重型的近战单位。能对敌人投掷霜冻之箭,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Magnataur" +useclickhelper=0 +walk=100.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodHeavyBash" + +[nmgv] +_id="nmgv" +_name="magicvault" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMagicVault.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMagicVault" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="有着神秘文字封印的箱子,在这种箱子里面往往有着宝物。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MagicVault\\MagicVault" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="魔法宝箱" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="Purchase Magic |cffffcc00V|rault" +turnrate=0.0 +type="Mechanical" +ubertip="在每个盒子里面都藏着一个秘密。" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmgw] +_id="nmgw" +_name="magnataurwarrior" +_type="unit" +abillist="ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMagnataur.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.84 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.84 +castpt=0.66 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MagnataurBrown\\MagnataurBrown" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=270 +goldrep=270 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=900 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=15 +lumberrep=15 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.125 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="玛格娜托战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用玛格娜托战士(|cffffcc00W|r)" +turnrate=0.5 +ubertip="重型的近战单位。对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Magnataur" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nmh0] +_id="nmh0" +_name="murlochut0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种由竹子做成的小型了望塔。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 0" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MurlocHut0\\MurlocHut0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="两栖鱼人小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W,B,A,C,N" +tilesetspecific=0 +tip="建造两栖鱼人小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="MurlocHut0" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmh1] +_id="nmh1" +_name="murlochut1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种由竹子做成的大型了望塔。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 1" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\MurlocHut1\\MurlocHut1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="两栖鱼人小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="L,F,W,B,A,C,N" +tilesetspecific=0 +tip="建造两栖鱼人小屋" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="MurlocHut1" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmit] +_id="nmit" +_name="icetuskmammoth" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMammoth.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.7 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=100 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Mammoth\\Mammoth" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=205 +goldrep=205 +green=165 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=925 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="冰牙猛犸" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=2.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用冰牙猛犸" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Mammoth" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nmmu] +_id="nmmu" +_name="murlocmutant" +_type="unit" +abillist="ACcr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurlocMutant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.45 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurlocMutant\\MurlocMutant" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=2.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="变异两栖人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="雇用变异两栖人" +turnrate=0.5 +ubertip="中型近战单位,具有残废技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmoo] +_id="nmoo" +_name="fountainofmana" +_type="unit" +abillist="Avul,ANre" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFountainOfLife.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能快速恢复周围非机械单位的魔法值。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\FountainOfMana\\FountainOfMana" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="魔法之泉" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=0 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造魔法之泉" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="OMED" +unitsound="FountainOfLife" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmpe] +_id="nmpe" +_name="murgulslave" +_type="unit" +abillist="ANha,Arep" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurgalSlave.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="nnfm,nntg,nntt,nnsg,nnsa,nnad" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=3.0 +cool2=1.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurgulSlave\\MurgulSlave" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=250 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔奴隶" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=90 +rangen2=66 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练穆格尔奴隶(|cffffcc00V|r)" +turnrate=0.6 +type="Peon" +ubertip="基本的工人单位,能采集木材和黄金,建造建筑物和进行修理。|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=180.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[nmpg] +_id="nmpg" +_name="murlocplaguebearer" +_type="unit" +abillist="Aap3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurlocMutant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurlocMutant\\MurlocMutant" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="两栖苦难者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="雇用两栖苦难者" +turnrate=0.5 +ubertip="轻型近战单位,能使得对手生上疾病。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmr0] +_id="nmr0" +_name="mercenarycampv" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (村庄)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nkob,nmrr,nass,nkog" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=5 +tilesets="V,Q" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr2] +_id="nmr2" +_name="mercenarycampf" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (洛丹伦的秋天)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="ngnb,ngnw,nomg,ngrk" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=12 +tilesets="F" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr3] +_id="nmr3" +_name="mercenarycampw" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (洛丹伦的冬日)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="ngnv,nits,nitt,ngrk" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=1 +tilesets="W" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr4] +_id="nmr4" +_name="mercenarycampb" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (荒地)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="ncen,nhrr,nrzm,nhrw" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=11 +tilesets="B" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr5] +_id="nmr5" +_name="mercenarycampa" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (白杨谷)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nsts,nfrs,nthl" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=10 +tilesets="A" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr6] +_id="nmr6" +_name="mercenarycampc" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (费尔伍德)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nmfs,nslf,nstl" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=6 +tilesets="C" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr7] +_id="nmr7" +_name="mercenarycampn" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (诺森德)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nnwa,nits,nrvs,nnwl" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=3 +tilesets="N" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr8] +_id="nmr8" +_name="mercenarycampy" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (城邦)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nrog,nass,nkog,nfsh" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=9 +tilesets="Y" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmr9] +_id="nmr9" +_name="mercenarycampx" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (达拉然)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nrog,nass,nkog,nfsh" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=8 +tilesets="X,J" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmra] +_id="nmra" +_name="mercenarycampd" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (地牢)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nskf,nkog,nowb" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=0 +tilesets="D" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrb] +_id="nmrb" +_name="mercenarycampg" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (地下)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nskf,nkog,nowb" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=0 +tilesets="G" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrc] +_id="nmrc" +_name="mercenarycampz" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (下沉的废墟)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nmsn,nlsn,nlds,ntrt" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=1 +tilesets="Z" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrd] +_id="nmrd" +_name="mercenarycampi" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (寒冰皇冠冰川)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="nanm,nbdm,nmgw,nfps" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=9 +tilesets="I" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmre] +_id="nmre" +_name="mercenarycampo" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (边缘之地)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="npfl,ndrm,nvdw,ndrd" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=12 +tilesets="O" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrf] +_id="nmrf" +_name="mercenarycampk" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMercenaryCamp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowMercenaryCamp" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的雇佣兵。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (黑色城堡)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Mercenary\\Mercenary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +name="雇佣兵营地" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="npfl,ndrm,nvdw,ndrd" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=3 +tilesets="K" +tilesetspecific=0 +tip="建造雇佣兵营地" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Mercenary" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrk] +_id="nmrk" +_name="marketplace" +_type="unit" +abillist="Aneu,Asid,Avul,Asud,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBlackMarket.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你买到各类的物品。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Marketplace\\Marketplace" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="市场" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=0 +tilesets="*" +tilesetspecific=0 +tip="建造市场" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Marketplace" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nmrl] +_id="nmrl" +_name="murloctiderunner" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurloc.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Murloc\\Murloc" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="两栖追随者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,B,N,A,J" +tilesetspecific=0 +tip="雇用两栖追随者" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmrm] +_id="nmrm" +_name="murlocnightcrawler" +_type="unit" +abillist="ACvs,Ashm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurlocNightCrawler.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurlocNightcrawler\\MurlocNightcrawler" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="两栖夜行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,B,N,A,J" +tilesetspecific=0 +tip="雇用两栖夜行者" +turnrate=0.5 +ubertip="近战单位,能让对手中毒,还具有夜间隐形能力。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmrr] +_id="nmrr" +_name="murlochuntsman" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMurloc.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.45 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=5 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\MurlocWarrior\\MurlocWarrior" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="H" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="两栖人猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=110 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,V,Q,Y,X,B,N,A,J" +tilesetspecific=0 +tip="雇用两栖猎手(|cffffcc00H|r)" +turnrate=0.5 +ubertip="轻型近战单位,能诱捕对手。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Murloc" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nmrv] +_id="nmrv" +_name="murgulreaver" +_type="unit" +abillist="ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulBloodGill.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.45 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulReaver\\MurgulReaver" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔掠夺者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.45 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔掠夺者" +turnrate=0.5 +ubertip="重型近战两栖单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nmsc] +_id="nmsc" +_name="murgulshadowcaster" +_type="unit" +abillist="AChx,ACcs" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulShadowCaster.blp" +atktype1="chaos" +atktype2="normal" +auto="Acrs" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulShadowCaster\\MurgulShadowCaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MurgulMagicMissile\\MurgulMagicMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔影子法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔影子法师" +turnrate=0.5 +ubertip="重型的远程攻击两栖单位,具有诅咒和妖术两种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmsh] +_id="nmsh" +_name="misha" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrizzlyBear.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GrizzlyBear\\GrizzlyBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="米纱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=1 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="GrizzlyBear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nmsn] +_id="nmsn" +_name="murgulsnarecaster" +_type="unit" +abillist="ACsw,ACdm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulShadowCaster.blp" +atktype1="pierce" +atktype2="normal" +auto="Aslo" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulShadowCaster\\MurgulShadowCaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=170 +goldrep=170 +green=192 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="G" +hp=375 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MurgulMagicMissile\\MurgulMagicMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔猎人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=192 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.1 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔猎人(|cffffcc00G|r)" +turnrate=0.5 +ubertip="中型远程攻击两栖单位,具有驱逐魔法及减速技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nmtw] +_id="nmtw" +_name="murgultidewarrior" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulTideWarrior\\MurgulTideWarrior" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔潮汐战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用穆格尔潮汐战士" +turnrate=0.5 +ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nmyr] +_id="nmyr" +_name="nagamyrmidon" +_type="unit" +abillist="ANen,Asb1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaMyrmidon.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=48.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="nmys" +dice1=1 +dice2=0 +dmgplus1=32 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\NagaMyrmidon\\NagaMyrmidon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=225 +goldrep=225 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=1080 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=55 +lumberrep=55 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="娜迦暴徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.75 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=210 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练娜迦暴徒(|cffffcc00M|r)" +turnrate=0.5 +ubertip="强力近战单位。有着潜水技能,可以隐藏在水中,能学习诱捕技能。|n|n|cffffcc00能攻击地面单位。" +unitshadow="Shadow" +unitsound="NagaMyrmidon" +upgrades="Rguv,Rnam,Rnat,Rnsb,Rnen" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[nmys] +_id="nmys" +_name="nagamyrmidonmorph" +_type="unit" +abillist="Asb1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaMyrmidon.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\NagaMyrmidon\\NagaMyrmidon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=225 +goldrep=225 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=1080 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=55 +lumberrep=55 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="潜水的娜迦暴徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=220.0 +scale=1.75 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=210 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练娜迦暴徒(|cffffcc00M|r)" +turnrate=0.5 +ubertip="强力近战单位。有着潜水技能,可以隐藏在水中,能学习诱捕技能。|n|n|cffffcc00能攻击地面单位。" +unitsound="NagaMyrmidon" +upgrades="Rguv,Rnam,Rnat,Rnsb,Rnen" +useclickhelper=1 +walk=220.0 +weapson=0 + +[nnad] +_id="nnad" +_name="altarofthedepths" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfDepths.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAltarOfDepths" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.56 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\AltarOfDepths\\AltarOfDepths" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="L" +hp=900 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="深渊祭坛" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10Simple.tga" +points=100 +preventplace="unwalkable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1800 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造深渊祭坛(|cffffcc00L|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="召唤英雄,复活阵亡的英雄。" +unitsound="AltarOfDepths" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nndk] +_id="nndk" +_name="netherdrake" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNetherDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.5 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.13 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=33 +dmgplus2=48 +dmgpt1=0.4 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NetherDragon\\NetherDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=80.0 +launchz=5.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.05 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="耐瑟蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用耐瑟蜉蝣(|cffffcc00K|r)" +turnrate=0.1 +ubertip="重型远程飞行单位。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="NetherDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nndr] +_id="nndr" +_name="netherdragon" +_type="unit" +abillist="ACmi,ACcr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNetherDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.5 +bldtm=100 +blend=0.15 +blue=0 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.13 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=67 +dmgpt1=0.4 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\NetherDragon\\NetherDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=80.0 +launchz=5.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=500 +manan=500 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.35 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="耐瑟龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=60 +regenhp=2.0 +regenmana=1.25 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用耐瑟龙(|cffffcc00D|r)" +turnrate=0.1 +ubertip="重型远程飞行单位,可以残废敌人并且对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="NetherDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nnfm] +_id="nnfm" +_name="coralbed" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCoralBed.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\CoralBed\\CoralBed" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=115 +goldrep=115 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-30.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="珊瑚礁" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1200 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造珊瑚礁(|cffffcc00C|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="提供人口,能增加你可造的单位最大数量。" +unitsound="CoralBed" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nnht] +_id="nnht" +_name="netherdragonhatchling" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNetherDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.5 +bldtm=30 +blend=0.15 +blue=50 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.5 +castpt=0.4 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.13 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=24 +dmgplus2=24 +dmgpt1=0.4 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NetherDragon\\NetherDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=50 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="H" +hp=340 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-30.0 +launchz=30.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.65 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="耐瑟幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.65 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用耐瑟幼龙(|cffffcc00H|r)" +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="NetherDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nnmg] +_id="nnmg" +_name="nagamurgul" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.47 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulReaver\\MurgulReaver" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=400 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=90.0 +launchz=-20.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="穆格尔掠夺者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=100 +rangen2=0 +red=200 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.15 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练穆格尔掠夺者(|cffffcc00R|r)" +turnrate=0.5 +ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +upgrades="Rguv,Rnam,Rnat" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nnrg] +_id="nnrg" +_name="nagaroyalguard" +_type="unit" +abillist="Asb2,ACcv,ACcb,ACwe,ACsk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaMyrmidonRoyalGuard.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.64 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=48.0 +cool1=1.7 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dependencyor="nnrs" +dice1=2 +dice2=0 +dmgplus1=45 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\NagaRoyalGuard\\NagaRoyalGuard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=300 +goldrep=300 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1350 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="娜迦皇家卫兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=2.25 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1600 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=310 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练娜迦皇家卫兵" +turnrate=0.5 +ubertip="极其强大的近战单位,拥有潜水技能,允许该单位藏在水中。同时拥有抗性皮肤技能,可以减少负面魔法的延续时间,冰霜之箭技能,可以击晕目标单位,冲击波技能,能对一直线上的敌人造成伤害,以及召唤海元素技能,海元素是一个远程攻击单位。|n|ncffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="NagaRoyalGuard" +upgrades="Rguv,Rnam,Rnat,Rnsb" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[nnrs] +_id="nnrs" +_name="nagaroyalguardmorph" +_type="unit" +abillist="Asb2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaMyrmidonRoyalGuard.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\NagaRoyalGuard\\NagaRoyalGuard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=300 +goldrep=300 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1350 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="潜水的娜迦皇家卫兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=220.0 +scale=2.25 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=310 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练娜迦皇家卫兵" +turnrate=0.5 +ubertip="极其强大的近战单位,拥有潜水技能,允许该单位藏在水中。同时拥有抗性皮肤技能,可以减少负面魔法的延续时间,冰霜之箭技能,可以击晕目标单位,冲击波技能,能对一直线上的敌人造成伤害,以及召唤海元素技能,海元素是一个远程攻击单位。|n|ncffcc00能攻击地面单位。|r" +unitsound="NagaRoyalGuard" +upgrades="Rguv,Rnam,Rnat,Rnsb" +useclickhelper=1 +walk=220.0 +weapson=0 + +[nnsa] +_id="nnsa" +_name="shrineofazshara" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNShrineOfAszhara.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowShrineOfAzshara" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.56 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\ShrineOfAshjara\\ShrineOfAshjara" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=1050 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +name="艾萨拉女王神殿" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unwalkable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rnsw,Rnsi" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造艾萨拉女王神殿(|cffffcc00A|r)" +trains="nnsw,nwgs" +turnrate=0.0 +type="Mechanical" +ubersplat="HMED" +ubertip="训练娜迦海妖和飞蛇,同时包括娜迦海妖的魔法升级。" +unitsound="ShrineOfAzshara" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nnsg] +_id="nnsg" +_name="spawninggrounds" +_type="unit" +abillist="Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSpawningGrounds.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowHumanBarracks" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\SpawningGrounds\\SpawningGrounds" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=1500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="产卵之地" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unwalkable" +prio=9 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rnen" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造产卵之地(|cffffcc00S|r)" +trains="nmyr,nsnp,nhyc" +turnrate=0.0 +type="Mechanical" +ubersplat="HLAR" +ubertip="训练娜迦暴徒、飞龙和龙龟,同时包括诱捕魔法的升级。" +unitsound="SpawningGrounds" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nnsu] +_id="nnsu" +_name="summoner" +_type="unit" +abillist="Acny,ACfu,ANpa,Ahnl" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNagaSummoner.blp" +atktype1="magic" +atktype2="normal" +auto="ANpa" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-siren.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 寄生虫,- 寄生虫|n- 霜冻护甲,- 寄生虫|n- 霜冻护甲|n- 飓风" +castpt=0.0 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Naga\\NagaSummoner\\NagaSummoner" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=350 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="召唤者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.5 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=110 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练召唤者(|cffffcc00S|r)" +turnrate=0.6 +ubertip="强大的召唤者。拥有初始技能寄生虫,可以对单位造成持续伤害并最终将其变成水奴。还可以学习霜冻护甲和飓风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="NagaSiren" +upgrades="Rnsw,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nnsw] +_id="nnsw" +_name="siren" +_type="unit" +abillist="Acny,ACfu,ANpa" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSeaWitch.blp" +atktype1="magic" +atktype2="normal" +auto="ANpa" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.7 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-siren.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 寄生虫,- 寄生虫|n- 霜冻护甲,- 寄生虫|n- 霜冻护甲|n- 飓风" +castpt=0.5 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Naga\\NagaSiren\\NagaSiren" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=350 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=10.0 +launchx=25.0 +launchy=170.0 +launchz=85.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="娜迦海妖" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.5 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=110 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用娜迦海妖(|cffffcc00S|r)" +turnrate=0.6 +ubertip="强大的召唤者。拥有初始技能寄生虫,可以对单位造成持续伤害并最终将其变成水奴。 还可以学习霜冻护甲和飓风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="NagaSiren" +upgrades="Rnsw,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nntg] +_id="nntg" +_name="tidalguardian" +_type="unit" +abillist="Abds" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNTidalGuardian.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=50 +blend=0.5 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowTrollBurrow" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.7 +castpt=0.5 +collision=72.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=3 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\TidalGuardian\\TidalGuardian" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=500 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=10.0 +launchx=0.0 +launchy=0.0 +launchz=85.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="守护者" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=3.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1800 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造守护者(|cffffcc00D|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="主要的防御性建筑。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="TidalGuardian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nntt] +_id="nntt" +_name="templeoftides" +_type="unit" +abillist="Argl,Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTempleOfTides.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=180 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowTempleOfTides" +buildingsoundlabel="NagaConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\naga\\TempleofTides\\TempleofTides" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=144.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="潮汐神庙" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unwalkable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=180 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rnat,Rnam,Rnsb" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造潮汐神庙(|cffffcc00T|r)" +trains="nmpe,nnmg" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="NLAR" +ubertip="主要建筑,用来训练穆格尔奴隶、穆格尔掠夺者以及存储资源。同时包括娜迦武器和防御的升级,以及潜水技能升级。" +unitsound="TempleOfTides" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nnwa] +_id="nnwa" +_name="nerubianwarrior" +_type="unit" +abillist="Assp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNerubian.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Nerubian\\Nerubian" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=400 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蛛网怪战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤蛛网怪战士(|cffffcc00W|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nnwl] +_id="nnwl" +_name="nerubianwebspinner" +_type="unit" +abillist="ACwb,ACrd,Aspa" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNerubianQueen.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Aweb" +backsw1=0.36 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.64 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NerubianSpiderLord\\NerubianSpiderLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=140 +goldrep=140 +green=130 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="N" +hp=350 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=300 +manan=300 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蛛网怪织网者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤蛛网怪织网者(|cffffcc00N|r)" +turnrate=0.5 +ubertip="轻型远程攻击单位能施放捕网和复活死尸技能。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nnwq] +_id="nnwq" +_name="nerubianqueen" +_type="unit" +abillist="ACua,ACca,ACrd,Aspa" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNerubianQueen.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +auto="Arai" +backsw1=0.36 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.64 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NerubianQueen\\NerubianQueen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蛛网怪女皇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤蛛网怪女皇" +turnrate=0.5 +ubertip="重型近战单位,带有邪恶光环。还拥有复活死尸和腐臭蜂群这两项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nnwr] +_id="nnwr" +_name="nerubianseer" +_type="unit" +abillist="ACrd,ACdm,Aspa" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNnerubianSpiderLord.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Arai" +backsw1=0.36 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=29 +dmgplus2=0 +dmgpt1=0.64 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NerubianQueen\\NerubianQueen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蛛网怪预言者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=160 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤蛛网怪预言者" +turnrate=0.5 +ubertip="巨型近战单位,具有驱魔技能和复活死尸技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nnws] +_id="nnws" +_name="nerubianspiderlord" +_type="unit" +abillist="Assp" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNnerubianSpiderLord.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=155 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\NerubianSpiderLord\\NerubianSpiderLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蛛网怪首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤蛛网怪首领" +turnrate=0.5 +ubertip="巨型近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nnzg] +_id="nnzg" +_name="nerubianziggurat" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNerubianZiggurat.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一种小型的岩石神塔。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\NerubianZiggurat\\NerubianZiggurat" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="通灵塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="建造通灵塔" +turnrate=0.0 +type="Mechanical" +ubersplat="USMA" +unitsound="NerubianZiggurat" +useclickhelper=0 +walk=200.0 +weapson=0 + +[noga] +_id="noga" +_name="stonemaulwarchief" +_type="unit" +abillist="SCae,ANta,ACbh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNArmoredOge.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=215 +bountydice=9 +bountyplus=180 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=64.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=94 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OgreOneHeadedArmored\\OgreOneHeadedArmored" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=600 +goldrep=600 +green=235 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=3300 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=11 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=2.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="石槌酋长" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=560 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用石槌酋长" +turnrate=0.5 +ubertip="食人魔之王。这强壮的食人魔可以徒手撕裂猛兽。具有嘲讽,重击和耐久光环技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="OgreOneHead" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nogl] +_id="nogl" +_name="ogrelord" +_type="unit" +abillist="ACav,ACsh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOgreLord.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OgreLord\\OgreLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="L" +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.7 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="食人鬼首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用食人鬼首领(|cffffcc00L|r)" +turnrate=0.5 +ubertip="带有防御光环还能施放震荡波。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Ogre" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nogm] +_id="nogm" +_name="ogre2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOgre.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=160 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.673 +castpt=0.527 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Ogre\\Ogre" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=160 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="M" +hp=850 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="食人鬼拳手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用食人鬼拳手(|cffffcc00M|r)" +turnrate=0.5 +ubertip="这是食人鬼族的一种大型单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Ogre" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nogn] +_id="nogn" +_name="stonemaulmagi" +_type="unit" +abillist="ACro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOneHeadedOgre.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=235 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OgreMagi\\OgreMagi" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=360 +goldrep=360 +green=225 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1060 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="石槌法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用石槌法师" +turnrate=0.5 +ubertip="强大的魔法师。智慧而又果断,这些食人魔法师以神秘的魔法支持着他们的战士同胞。具有咆哮技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Ogre" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nogo] +_id="nogo" +_name="stonemaulogre" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOneHeadedOgre.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=210 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OgreOneHeaded\\OgreOneHeaded" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=300 +goldrep=300 +green=230 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1060 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=130.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="石槌食人魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用石槌食人魔" +turnrate=0.5 +ubertip="强大的战士。 虽然有勇无谋,却是一部优秀的战争机器。能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="OgreOneHead" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nogr] +_id="nogr" +_name="ogre1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOgre.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Ogre\\Ogre" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=400 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="食人鬼战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用食人鬼战士(|cffffcc00W|r)" +turnrate=0.5 +ubertip="这是食人鬼族的一种标准单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Ogre" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nomg] +_id="nomg" +_name="ogremagi" +_type="unit" +abillist="ACbb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOgreMagi.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +auto="Ablo" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.56 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OgreMagi\\OgreMagi" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="G" +hp=600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="食人鬼魔法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="雇用食人鬼魔法师(|cffffcc00G|r)" +turnrate=0.5 +ubertip="食人鬼族的一种魔法单位,能施放嗜血术。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Ogre" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[now2] +_id="now2" +_name="owl2" +_type="unit" +abillist="Avul,ACmi,Adtg" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNScout.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.61 +castpt=0.56 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\OwlSCOUT\\OwlSCOUT" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=40 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="猫头鹰侦察者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1500 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=300.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1500 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +turnrate=0.5 +unitshadow="ShadowFlyer" +unitsound="owl" +useclickhelper=0 +walk=300.0 +weapson=0 + +[now3] +_id="now3" +_name="owl3" +_type="unit" +abillist="Avul,ACmi,Adtg" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNScout.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\OwlSCOUT\\OwlSCOUT" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=40 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="猫头鹰侦察者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=2200 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=300.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=2200 +spd=400 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +turnrate=0.5 +unitshadow="ShadowFlyer" +unitsound="owl" +useclickhelper=0 +walk=300.0 +weapson=0 + +[nowb] +_id="nowb" +_name="owlbear" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOwlBear.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=170 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=18 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Owlbear\\Owlbear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="迅猛野兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,D,G" +tilesetspecific=0 +tip="召唤迅猛野兽(|cffffcc00W|r)" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Owlbear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nowe] +_id="nowe" +_name="enragedowlbear" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOwlBear.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=160 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Owlbear\\Owlbear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=160 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="暴怒野兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,D,G" +tilesetspecific=0 +tip="召唤暴怒野兽" +turnrate=0.5 +unitshadow="Shadow" +unitsound="Owlbear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nowk] +_id="nowk" +_name="berserkowlbear" +_type="unit" +abillist="ACbh,Awrs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOwlBear.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Owlbear\\Owlbear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂性野兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,D,G" +tilesetspecific=0 +tip="召唤狂性野兽" +turnrate=0.5 +ubertip="重型的近战单位,具有重击和战争践踏技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Owlbear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nowl] +_id="nowl" +_name="owl" +_type="unit" +abillist="Avul,ACmi,Adtg" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNScout.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\nightelf\\OwlSCOUT\\OwlSCOUT" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=40 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="猫头鹰侦察者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=300.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1000 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +turnrate=0.5 +unitshadow="ShadowFlyer" +unitsound="owl" +useclickhelper=0 +walk=300.0 +weapson=0 + +[npfl] +_id="npfl" +_name="purplefelstalker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPurpleFelhound.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=240 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FelstalkerPurple\\FelstalkerPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=125 +goldrep=125 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=390 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂暴野兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=240 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤狂暴野兽(|cffffcc00F|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Felhound" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[npfm] +_id="npfm" +_name="felravager" +_type="unit" +abillist="ACbk,ACde" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPurpleFelhound.blp" +atktype1="chaos" +atktype2="normal" +auto="ANba" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FelstalkerPurple\\FelstalkerPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=300 +manan=300 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂暴洗劫者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,O,K" +tilesetspecific=0 +tip="召唤狂暴洗劫者" +turnrate=0.5 +ubertip="重型近战单位,可以施放黑暗之箭及吞噬魔法。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="Felhound" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[npgf] +_id="npgf" +_name="pigfarm" +_type="unit" +abillist="Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPigFarm.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\PigFarm\\PigFarm" +fileverflags=0 +fmade=15 +fograd=0.0 +formation=0 +fused=0 +goldcost=115 +goldrep=115 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=500 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="猪圈农场" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造猪圈农场(|cffffcc00F|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="PigFarm" +upgrades="Rosp" +useclickhelper=0 +walk=200.0 +weapson=0 + +[npgr] +_id="npgr" +_name="powergenerator" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNPowerGenerator.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\PowerGenerator\\PowerGenerator" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="能量产生器" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +useclickhelper=0 +walk=200.0 +weapson=0 + +[npig] +_id="npig" +_name="pig" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPig.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Pig\\Pig" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,B" +tilesetspecific=0 +tip="召唤野猪" +turnrate=0.5 +ubertip="你可以召唤野猪的灵魂来保护你。" +unitshadow="Shadow" +unitsound="Pig" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nplb] +_id="nplb" +_name="polarbear" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFrostBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.97 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarBear\\PolarBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.95 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="北极熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.8 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用北极熊" +turnrate=0.5 +ubertip="中型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="GrizzlyBear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nplg] +_id="nplg" +_name="giantpolarbear" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFrostBear.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.67 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.97 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=33 +dmgplus2=0 +dmgpt1=0.63 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\PolarBear\\PolarBear" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=900 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="巨型北极熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=160 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.4 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="雇用巨型北极熊" +turnrate=0.5 +ubertip="重型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="GrizzlyBear" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[npn1] +_id="npn1" +_name="panda1" +_type="unit" +abillist="Apig,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFireBrewmaster.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=50 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\FirePandarenBrewmaster\\FirePandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=900 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="火焰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤火(|cffffcc00F|r)" +turnrate=0.5 +ubertip="凶猛的火之熊猫战士。有永久献祭和抗性皮肤技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="FirePandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[npn2] +_id="npn2" +_name="panda2" +_type="unit" +abillist="Adsm,ACcy,ACrk,ANwk" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNStormBrewmaster.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.77 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\StormPandarenBrewmaster\\StormPandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤雷(|cffffcc00T|r)" +turnrate=0.5 +ubertip="迅捷的风之熊猫战士。有抗性皮肤,可以施放驱散魔法、飓风和疾风步。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="StormPandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[npn3] +_id="npn3" +_name="panda3" +_type="unit" +abillist="ACmi,ACpv,ANta,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEarthBrewmaster.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=5.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\EarthPandarenBrewmaster\\EarthPandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大地" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤地(|cffffcc00E|r)" +turnrate=0.5 +ubertip="强健的地之熊猫战士。有抗性皮肤及魔法免疫。可以施放粉碎和嘲讽技能。|n|n|cffffcc00攻击陆地单位。|r" +unitshadow="Shadow" +unitsound="EarthPandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[npn4] +_id="npn4" +_name="panda4" +_type="unit" +abillist="Apig,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFireBrewmaster.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\FirePandarenBrewmaster\\FirePandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=1350 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="火之熊猫战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=4.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤火之熊猫战士(|cffffcc00F|r)" +turnrate=0.5 +ubertip="勇猛的火之熊猫战士,具有永久献祭和抗性皮肤技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="FirePandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[npn5] +_id="npn5" +_name="panda5" +_type="unit" +abillist="Adsm,ACcy,ACrk,ANwk" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNStormBrewmaster.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.77 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=52 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\StormPandarenBrewmaster\\StormPandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=750 +manan=750 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风之熊猫战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,air,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤风之熊猫战士(|cffffcc00T|r)" +turnrate=0.5 +ubertip="敏捷的风之熊猫战士,具有抗性皮肤,驱逐魔法,飓风和疾步风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="StormPandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[npn6] +_id="npn6" +_name="panda6" +_type="unit" +abillist="ACmi,ACpv,ANta,ACrk" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNEarthBrewmaster.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.5 +castpt=0.4 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=2 +def=5.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=52 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\EarthPandarenBrewmaster\\EarthPandarenBrewmaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=2250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="地之熊猫战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1800 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤地之熊猫战士(|cffffcc00E|r)" +turnrate=0.5 +ubertip="笨重的地之熊猫战士,具有抗性皮肤,魔法免疫,粉碎和嘲讽技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="EarthPandarenBrewmaster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[npng] +_id="npng" +_name="penguin" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPenguin.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.4 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Penguin\\Penguin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="企鹅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤企鹅" +turnrate=0.5 +ubertip="能召唤出企鹅的灵魂来挽救你。" +unitshadow="Shadow" +unitsound="Penguin" +useclickhelper=0 +walk=200.0 +weapson=0 + +[npnw] +_id="npnw" +_name="waterpenguin" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="swim" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPenguin.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (水生的)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Penguin\\Penguin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="企鹅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=1 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.9 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤企鹅" +turnrate=0.5 +ubertip="能召唤出企鹅的灵魂来挽救你。" +unitshadow="Shadow" +unitsound="Penguin" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nqb1] +_id="nqb1" +_name="quillbeast1" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.37 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\QuillBeast\\QuillBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=425 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豪猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=550 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.4 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="QuillBeast" +upgrades="Rguv" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="missile" + +[nqb2] +_id="nqb2" +_name="quillbeast2" +_type="unit" +abillist="Afzy" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Afzy" +backsw1=0.67 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.37 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\QuillBeast\\QuillBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=515 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="凶恶豪猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=550 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="QuillBeast" +upgrades="Rguv" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="missile" + +[nqb3] +_id="nqb3" +_name="quillbeast3" +_type="unit" +abillist="Afzy" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Afzy" +backsw1=0.337 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.37 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=36 +dmgplus2=0 +dmgpt1=0.633 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="Units\\Creeps\\QuillBeast\\QuillBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=100 +harea2=0 +hfact1=0.3 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="影子豪猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=150 +qarea2=0 +qfact1=0.15 +qfact2=0.0 +race="other" +rangen1=550 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.8 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="QuillBeast" +upgrades="Rguv" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="msplash" + +[nqb4] +_id="nqb4" +_name="quillbeast4" +_type="unit" +abillist="Afzy" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNQuillBeast.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Afzy" +backsw1=0.337 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.37 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=4 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.633 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 4)" +elevpts=0 +elevrad=50.0 +farea1=100 +farea2=0 +fatlos=0 +file="Units\\Creeps\\QuillBeast\\QuillBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=125 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=700 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="狂暴豪猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=175 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="other" +rangen1=550 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=300 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="QuillBeast" +upgrades="Rguv" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="msplash" + +[nqbh] +_id="nqbh" +_name="quillboarhunter" +_type="unit" +abillist="ACev" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=170 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bristleback\\Bristleback" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=140 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=375 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豪猪猎手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用豪猪猎手" +turnrate=0.5 +ubertip="中型的远程攻击单位,具有闪避技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Bristleback" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="missile" + +[nrac] +_id="nrac" +_name="raccoon" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRacoon.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Raccoon\\Raccoon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="浣熊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="A,L,F,W,V,Q,X,J,Y" +tilesetspecific=0 +tip="调用浣熊" +turnrate=0.5 +ubertip="召唤令人惊吓的浣熊来帮助你。" +unitshadow="Shadow" +unitsound="Raccoon" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nrat] +_id="nrat" +_name="rat" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNYouDirtyRat!.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Rat\\Rat" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=-48.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="老鼠" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="D,G" +tilesetspecific=0 +tip="召唤老鼠" +turnrate=0.5 +ubertip="召唤出老鼠的灵魂来挽救你。" +unitshadow="Shadow" +unitsound="Rat" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nrdk] +_id="nrdk" +_name="reddragonwhelp" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRedDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=30 +blend=0.15 +blue=50 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=24 +dmgplus2=24 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RedDragonWelp\\RedDragonWelp" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="W" +hp=400 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=40.0 +launchz=-30.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="红幼龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=4 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="L,V,Q" +tilesetspecific=0 +tip="召唤红幼龙(|cffffcc00W|r)" +turnrate=0.5 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[nrdr] +_id="nrdr" +_name="reddrake" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRedDragon.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=60 +blend=0.15 +blue=200 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.47 +collision=48.0 +cool1=1.8 +cool2=1.8 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=35 +dmgplus2=50 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RedDragon\\RedDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=950 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=30.0 +launchz=-20.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="红蜉蝣" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=400 +rangen2=300 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=12 +sides2=8 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="L,V,Q" +tilesetspecific=0 +tip="召唤红蜉蝣(|cffffcc00K|r) " +turnrate=0.1 +ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="missile" +weaptp2="missile" + +[nrel] +_id="nrel" +_name="reefelemental" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSeaElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=1.0 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaElemental\\SeaElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=60.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=80.0 +launchx=0.0 +launchy=0.0 +launchz=80.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SeaElementalMissile\\SeaElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="暗礁元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1200 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤暗礁元素" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="WaterElemental" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nrog] +_id="nrog" +_name="rogue" +_type="unit" +abillist="Ashm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBandit.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bandit\\Bandit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="R" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="流氓" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用流氓(|cffffcc00R|r)" +turnrate=0.5 +ubertip="轻型的近战单位,具有影遁技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Bandit" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nrvd] +_id="nrvd" +_name="deathrevenant" +_type="unit" +abillist="ACrd,ACdc,ACad" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="chaos" +atktype2="normal" +auto="Arai" +backsw1=0.3 +backsw2=0.0 +bldtm=90 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Revenant\\Revenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=435 +goldrep=435 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="死亡幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=1.5 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤死亡幽魂" +turnrate=0.6 +type="undead" +ubertip="重型近战单位,具有复活死尸,死亡缠绕和操作死尸这三项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nrvf] +_id="nrvf" +_name="firerevenant" +_type="unit" +abillist="ACim" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Revenant\\Revenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="火焰幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤火焰幽魂" +turnrate=0.6 +type="undead" +ubertip="轻型近战单位,具有献祭技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nrvi] +_id="nrvi" +_name="icerevenant" +_type="unit" +abillist="ACvp,ACfn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Revenant\\Revenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="冰之幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=150 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N,G" +tilesetspecific=0 +tip="召唤冰之幽魂" +turnrate=0.6 +type="undead" +ubertip="重型近战单位,带有吸血光环。还能施放霜冻新星。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nrvl] +_id="nrvl" +_name="lightningrevenant" +_type="unit" +abillist="ACpu,ACcl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=150 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Revenant\\Revenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="闪电幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤闪电幽魂" +turnrate=0.6 +type="undead" +ubertip="重型近战单位,具有闪电链和净化两种技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nrvs] +_id="nrvs" +_name="frostrevenant" +_type="unit" +abillist="ACbz" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.65 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Revenant\\Revenant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=205 +goldrep=205 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="霜冻幽魂" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=180 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N,G" +tilesetspecific=0 +tip="召唤霜冻幽魂(|cffffcc00F|r)" +turnrate=0.6 +type="undead" +ubertip="中型近战单位,具有暴风雪魔法。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nrwm] +_id="nrwm" +_name="reddragon" +_type="unit" +abillist="Advc,ACdv,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRedDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="medium" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=45 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\RedDragon\\RedDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="D" +hp=2200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-30.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.75 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="红龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=61.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=300.0 +shadowonwater=1 +shadoww=300.0 +shadowx=150.0 +shadowy=150.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris" +stockmax=1 +stockregen=510 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="L,V,Q" +tilesetspecific=0 +tip="召唤红龙(|cffffcc00D|r)" +turnrate=0.1 +ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="missile" + +[nrzb] +_id="nrzb" +_name="razormanebrute" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RazorMane\\RazorMane" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="尖毛兽野蛮人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用尖毛兽野蛮人" +turnrate=0.5 +unitshadow="Shadow" +unitsound="RazorMane" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nrzg] +_id="nrzg" +_name="razormanechieftain" +_type="unit" +abillist="ACah,ACtb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorManeChief.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RazorManeChief\\RazorManeChief" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="尖毛兽酋长" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用尖毛兽酋长" +turnrate=0.5 +ubertip="重型的近战单位,具有荆棘光环技能,并能向敌人投出巨大的石头。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="RazorMane" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nrzm] +_id="nrzm" +_name="razormanemedicineman" +_type="unit" +abillist="AChw,ACs9" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorManeChief.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RazorManeChief\\RazorManeChief" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=280 +goldrep=280 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="M" +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="尖毛兽医生" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用尖毛兽医生(|cffffcc00M|r)" +turnrate=0.5 +ubertip="中型单位,具有医疗守卫和野兽幽魂技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="RazorMane" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nrzs] +_id="nrzs" +_name="razormanescout" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RazorMane\\RazorMane" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="尖毛兽侦察兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用尖毛兽侦察兵" +turnrate=0.5 +unitshadow="Shadow" +unitsound="RazorMane" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nrzt] +_id="nrzt" +_name="quillboar" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=200 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Bristleback\\Bristleback" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=-48.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BristleBackMissile\\BristleBackMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="豪猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="雇用豪猪" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Bristleback" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="missile" + +[nsat] +_id="nsat" +_name="satyrtrickster" +_type="unit" +abillist="ACpu" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSatyrTrickster.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SatyrTrickster\\SatyrTrickster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="赛特斯之魔法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用赛特斯之魔法师" +turnrate=0.5 +ubertip="能射出地狱火的轻型远程攻击单位。还具有净化技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Satyr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nsbm] +_id="nsbm" +_name="broodmother" +_type="unit" +abillist="ACvs,ACen,Aspd" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderBlue.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderBlue\\SpiderBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=80 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="血浴之母" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤血浴之母" +turnrate=0.5 +ubertip="重型近战单位,能使对手中毒。还具有诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nsbs] +_id="nsbs" +_name="snapdragonmorph" +_type="unit" +abillist="Asb3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSnapDragon.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\SnapDragon\\SnapDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=-48.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\snapMissile\\snapMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="潜水的飞龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=0 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=250.0 +scale=1.75 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练飞龙(|cffffcc00D|r)" +turnrate=0.5 +ubertip="轻型远程单位,有着毒性攻击,可以缓慢和伤害敌单位。拥有潜水技能,可以隐藏在水中。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="SnapDragon" +upgrades="Rguv,Rnam,Rnat,Rnsb" +useclickhelper=1 +walk=250.0 +weapson=0 + +[nsc2] +_id="nsc2" +_name="spidercrab2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderCrab.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderCrabCreep\\SpiderCrabCreep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="C" +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜘蛛螃蟹肢体撕裂者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用蜘蛛螃蟹(|cffffcc00C|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsc3] +_id="nsc3" +_name="spidercrab3" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderCrab.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=150 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderCrabCreep\\SpiderCrabCreep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=175 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="C" +hp=850 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜘蛛螃蟹巨兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.72 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用蜘蛛螃蟹(|cffffcc00C|r)" +turnrate=0.5 +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsca] +_id="nsca" +_name="skeletalarchersummoned" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.03 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonArcher\\SkeletonArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-11.0 +launchy=74.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,N,G" +tilesetspecific=0 +tip="雇佣骷髅弓箭手" +turnrate=0.5 +type="undead" +ubertip="轻型的远程攻击单位。 |n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SkeletonArcher" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[nscb] +_id="nscb" +_name="spidercrab" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderCrab.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderCrabCreep\\SpiderCrabCreep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=125 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="C" +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜘蛛螃蟹" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用蜘蛛螃蟹(|cffffcc00C|r)" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nsce] +_id="nsce" +_name="skeletonsummoned" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,N,G" +tilesetspecific=0 +tip="雇佣骷髅战士" +turnrate=0.5 +type="undead" +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nsea] +_id="nsea" +_name="seal" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSeal.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Seal\\Seal" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="海豹" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="N,I" +tilesetspecific=0 +tip="召唤海豹" +turnrate=0.5 +ubertip="召唤海豹的灵魂来保护你。" +unitshadow="Shadow" +unitsound="Seal" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nsel] +_id="nsel" +_name="seaelemental" +_type="unit" +abillist="ACbh" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSeaElemental.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.47 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=0 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaElemental\\SeaElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=135 +goldrep=135 +green=190 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SeaElementalMissile\\SeaElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="海元素" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.6 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1200 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤海元素" +turnrate=0.5 +ubertip="中型的远程攻击单位,具有重击技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="WaterElemental" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nser] +_id="nser" +_name="searinox" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBlackDragon.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=200 +bountydice=12 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=5 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.94 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BlackDragon\\BlackDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=510 +goldrep=510 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1250 +impactswimz=0.0 +impactz=40.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=-20.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="西里诺克斯" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=220.0 +shadowonwater=1 +shadoww=220.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=16 +sides2=0 +sight=1400 +spd=280 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.1 +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nsgb] +_id="nsgb" +_name="seagiantbehemoth" +_type="unit" +abillist="ACpv,Awrs,ACtb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSeaGiant.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.75 +castpt=0.4 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=42 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaGiant\\SeaGiant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=6 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=200.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=40.0 +launchx=0.0 +launchy=0.0 +launchz=200.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=85 +lumberrep=85 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="深海巨兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1200 +spd=200 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤深海巨兽" +turnrate=0.4 +ubertip="重型近战两栖单位,具有投石,战争践踏和粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SeaGiant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsgg] +_id="nsgg" +_name="siegegolem" +_type="unit" +abillist="ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNArmorGolem.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=90 +blend=0.15 +blue=180 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GolemStatue\\GolemStatue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=435 +goldrep=435 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1900 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="攻城傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=260.0 +shadowonwater=1 +shadoww=260.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,G" +tilesetspecific=0 +tip="召唤攻城傀儡" +turnrate=0.5 +ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyBash" + +[nsgh] +_id="nsgh" +_name="seagianthunter" +_type="unit" +abillist="ACpv,ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSeaGiantGreen.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.75 +castpt=0.4 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaGiantGreen\\SeaGiantGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=725 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=30.0 +launchx=0.0 +launchy=0.0 +launchz=160.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=85 +lumberrep=85 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="深海巨猎人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.4 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1200 +spd=200 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤深海巨猎人" +turnrate=0.4 +ubertip="重型近战两栖单位,具有诱捕和粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SeaGiant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsgn] +_id="nsgn" +_name="seagiant" +_type="unit" +abillist="ACpv" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSeaGiant.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaGiant\\SeaGiant" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=2 +goldcost=210 +goldrep=210 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=350 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=85 +lumberrep=85 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="海巨人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=200 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤海巨人" +turnrate=0.4 +ubertip="轻型近战两栖单位,具有粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SeaGiant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsgt] +_id="nsgt" +_name="giantspider" +_type="unit" +abillist="ACvs,ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpider.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Spider\\Spider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨型蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤巨型蜘蛛" +turnrate=0.5 +ubertip="中型的近战单位。能用毒素伤害敌人。还能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nsha] +_id="nsha" +_name="amphibioussheep" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSheep.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (两栖的)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Sheep\\Sheep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="绵羊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +randomsoundlabel="SheepRandomSounds" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.9 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +tip="召唤绵羊" +turnrate=0.5 +ubertip="召唤绵羊的灵魂来拯救你。" +unitshadow="Shadow" +unitsound="Sheep" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nshe] +_id="nshe" +_name="sheep" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSheep.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Sheep\\Sheep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="绵羊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +randomsoundlabel="SheepRandomSounds" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +tip="召唤绵羊" +turnrate=0.5 +ubertip="召唤绵羊的灵魂来拯救你。" +unitshadow="Shadow" +unitsound="Sheep" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nshf] +_id="nshf" +_name="flyingsheep" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSheep.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\FlyingSheep\\FlyingSheep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="乳羊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +randomsoundlabel="SheepRandomSounds" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.8 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesetspecific=0 +tip="召唤乳羊" +turnrate=0.5 +ubertip="召唤乳羊的灵魂来保护你。" +unitshadow="ShadowFlyer" +unitsound="Sheep" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nshp] +_id="nshp" +_name="goblinshipyard" +_type="unit" +abillist="Ane2,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinShipyard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowGoblinShipyard" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能在这里买到船只。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GoblinShipyard\\GoblinShipyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="地精船坞" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=384.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +sellunits="nbot" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造地精船坞" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="GoblinShipyard" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nshr] +_id="nshr" +_name="shrine" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadShrine.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\SacrificialAltar\\SacrificialAltar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="神殿" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitsound="SacrificialAltar" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nshw] +_id="nshw" +_name="watersheep" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="swim" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSheep.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (水生的)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Sheep\\Sheep" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="绵羊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +randomsoundlabel="SheepRandomSounds" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=1 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.9 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="L,F,W,Y,X,V,Q,J" +tilesetspecific=0 +tip="召唤绵羊" +turnrate=0.5 +ubertip="召唤绵羊的灵魂来拯救你。" +unitshadow="Shadow" +unitsound="Sheep" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nska] +_id="nska" +_name="skeletalarcher" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.03 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonArcher\\SkeletonArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-11.0 +launchy=74.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,N,G" +tilesetspecific=0 +tip="雇用骷髅弓箭手" +turnrate=0.5 +type="undead" +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SkeletonArcher" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[nske] +_id="nske" +_name="skeleton" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,N,G" +tilesetspecific=0 +tip="雇用骷髅战士" +turnrate=0.5 +type="undead" +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nskf] +_id="nskf" +_name="burningarcher" +_type="unit" +abillist="ACsa" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.03 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonArcher\\SkeletonArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=180 +goldrep=180 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="B" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-11.0 +launchy=74.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="火焰弓箭手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="雇用烈焰弓箭手(|cffffcc00B|r)" +turnrate=0.5 +type="undead" +ubertip="轻型的远程攻击单位,能射出灼热之箭。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SkeletonArcher" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[nskg] +_id="nskg" +_name="giantskeleton" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=47.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=130 +goldrep=130 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=380 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨型骷髅战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,G" +tilesetspecific=0 +tip="雇用巨型骷髅战士" +turnrate=0.5 +type="undead" +ubertip="大型近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavySlice" + +[nskk] +_id="nskk" +_name="skink" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSkink.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.66 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Skink\\Skink" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=200 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小蜥蜴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=0.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=50.0 +shadowonwater=1 +shadoww=50.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=200 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤小蜥蜴" +turnrate=0.5 +ubertip="召唤出小蜥蜴的灵魂来挽救你。" +unitshadow="Shadow" +unitsound="Skink" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nskm] +_id="nskm" +_name="skeletalmarksman" +_type="unit" +abillist="ACcw" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonArcher.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.03 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.7 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonArcher\\SkeletonArcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="K" +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-11.0 +launchy=74.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Arrow\\ArrowMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅射手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N,G" +tilesetspecific=0 +tip="雇用骷髅射手(|cffffcc00K|r)" +turnrate=0.5 +type="undead" +ubertip="轻型的远程攻击单位,具有冰冻冷箭技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SkeletonArcher" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[nsko] +_id="nsko" +_name="skeletalorc" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletalOrc.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonOrc\\SkeletonOrc" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=70 +goldrep=70 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=375 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族骷髅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤兽族骷髅" +turnrate=0.5 +type="undead" +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nslf] +_id="nslf" +_name="sludgeflinger" +_type="unit" +abillist="ACsw" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSludgeCreature.blp" +atktype1="pierce" +atktype2="normal" +auto="Aslo" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=180 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SludgeMonster\\SludgeMonster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=205 +goldrep=205 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="F" +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SludgeMissile\\SludgeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="淤泥投手" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=330 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,D,G" +tilesetspecific=0 +tip="召唤淤泥投手(|cffffcc00F|r)" +turnrate=0.5 +ubertip="轻型的远程攻击单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SludgeMonster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nslh] +_id="nslh" +_name="salamanderhatchling" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardSalamander.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.64 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=140 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizardSalamander\\ThunderLizardSalamander" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=60.0 +launchz=10.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小蜥蜴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy,neutral" +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤小蜥蜴" +turnrate=0.5 +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nsll] +_id="nsll" +_name="salamanderlord" +_type="unit" +abillist="ACim,ACrf,Advc,ACdv" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardSalamander.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.64 +backsw2=0.0 +bldtm=100 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.4 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=6.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=43 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizardSalamander\\ThunderLizardSalamander" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1800 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=140.0 +launchz=20.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=700 +manan=700 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\RedDragonBreath\\RedDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜥蜴领主" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=1.75 +regentype="always" +reptm=100 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=310.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy,neutral" +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤蜥蜴领主" +turnrate=0.5 +ubertip="重型的远程攻击单位。能吞噬对手,还具有献祭和火焰雨技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nslm] +_id="nslm" +_name="sludgeminion" +_type="unit" +abillist="ACsw" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSludgeCreature.blp" +atktype1="normal" +atktype2="normal" +auto="Aslo" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SludgeMonster\\SludgeMonster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=200 +manan=200 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="淤泥战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,D,G" +tilesetspecific=0 +tip="召唤淤泥战士" +turnrate=0.5 +ubertip="轻型的近战单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SludgeMonster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nsln] +_id="nsln" +_name="sludgemonstrosity" +_type="unit" +abillist="ACsw" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSludgeCreature.blp" +atktype1="normal" +atktype2="normal" +auto="Aslo" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SludgeMonster\\SludgeMonster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="淤泥怪物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="C,D,G" +tilesetspecific=0 +tip="召唤淤泥怪物" +turnrate=0.5 +ubertip="中型的近战单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SludgeMonster" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nslr] +_id="nslr" +_name="salamander" +_type="unit" +abillist="ACim,ACfb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardSalamander.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.64 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=170 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=29 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizardSalamander\\ThunderLizardSalamander" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=4 +goldcost=255 +goldrep=255 +green=150 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=20.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.95 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜥蜴怪物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy,neutral" +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤蜥蜴怪物" +turnrate=0.5 +ubertip="中型的远程攻击单位,能施放献祭魔法和霹雳闪电。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nslv] +_id="nslv" +_name="salamandervizier" +_type="unit" +abillist="ACbl,Ambd,ACdm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizardVizier.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +auto="Ablo" +backsw1=0.64 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=30 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizardVizier\\ThunderLizardVizier" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=6 +goldcost=340 +goldrep=340 +green=200 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=80.0 +launchz=20.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大型蜥蜴怪物" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,air,enemy,neutral" +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D" +tilesetspecific=0 +tip="召唤大型蜥蜴怪物" +turnrate=0.5 +ubertip="重型的远程攻击单位,能施放驱魔,法力燃烧和嗜血技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nsno] +_id="nsno" +_name="snowyowl" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSnowOwl.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.5 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\SnowOwl\\SnowOwl" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=100 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="雪鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=110.0 +scale=0.8 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=60.0 +shadowonwater=1 +shadoww=60.0 +shadowx=30.0 +shadowy=30.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="召唤雪鹰" +turnrate=0.5 +ubertip="召唤出雪鹰的灵魂来挽救你。" +unitshadow="ShadowFlyer" +unitsound="SnowOwl" +useclickhelper=0 +walk=110.0 +weapson=0 + +[nsnp] +_id="nsnp" +_name="snapdragon" +_type="unit" +abillist="Aspo,Asb3" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSnapDragon.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=120 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dependencyor="nsbs" +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\SnapDragon\\SnapDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=10.0 +launchx=0.0 +launchy=0.0 +launchz=30.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\snapMissile\\snapMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="飞龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=550 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=2.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=160 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,air,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练飞龙(|cffffcc00D|r)" +turnrate=0.5 +ubertip="轻型远程单位,有着毒性攻击,可以缓慢和伤害敌单位。拥有潜水技能,可以隐藏在水中。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="SnapDragon" +upgrades="Rguv,Rnam,Rnat,Rnsb" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nsns] +_id="nsns" +_name="wateryminionsnarecaster" +_type="unit" +abillist="ACsw,ACdm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulShadowCaster.blp" +atktype1="pierce" +atktype2="normal" +auto="Aslo" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=0 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulShadowCaster\\MurgulShadowCaster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=255 +goldrep=255 +green=192 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=375 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MurgulMagicMissile\\MurgulMagicMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="水奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=192 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.1 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤水奴" +turnrate=0.5 +ubertip="中型远程攻击两栖单位,具有驱逐魔法及减速技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nsoc] +_id="nsoc" +_name="skeletalorcchampion" +_type="unit" +abillist="ACdc" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletalOrcChampion.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=250 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.6 +castpt=0.4 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonOrc\\SkeletonOrc" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=70 +goldrep=70 +green=175 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=20.0 +launchy=50.0 +launchz=60.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族战士骷髅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=175 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤兽族战士骷髅" +turnrate=0.5 +type="undead" +ubertip="重型的近战单位,具有死亡缠绕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsog] +_id="nsog" +_name="skeletalorcgrunt" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletalOrcGrunt.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=150 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SkeletonOrc\\SkeletonOrc" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=850 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族步兵骷髅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=800 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤兽族步兵骷髅" +turnrate=0.5 +type="undead" +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Skeleton" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nspb] +_id="nspb" +_name="spiderblack" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderBlack.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderBlack\\SpiderBlack" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="召唤黑蜘蛛" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nspc] +_id="nspc" +_name="supportcolumn" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSupportBeam.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="doodads\\underground\\terrain\\SupportBeam\\SupportBeam" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=50 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="支柱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nspd] +_id="nspd" +_name="spiderling" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNerubian.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Nerubian\\Nerubian" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=120 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I,N" +tilesetspecific=0 +tip="召唤小蜘蛛" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Nerubian" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nspg] +_id="nspg" +_name="forestspider" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderGreen.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderGreen\\SpiderGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="森林蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="L,F,W" +tilesetspecific=0 +tip="召唤森林蜘蛛" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nspp] +_id="nspp" +_name="spiritpig" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRazorback.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiritPig\\SpiritPig" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵魂之猪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="RazorMane" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nspr] +_id="nspr" +_name="spider" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpider.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Spider\\Spider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=200 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤蜘蛛" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[nsqa] +_id="nsqa" +_name="ancientsasquatch" +_type="unit" +abillist="ACtc,ACfr,ACrn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSasquatch.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=90 +blend=0.15 +blue=170 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Sasquatch\\Sasquatch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=435 +goldrep=435 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1200 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="古代野人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=1.5 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.45 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="V,Q" +tilesetspecific=0 +tip="召唤古代野人" +turnrate=0.5 +ubertip="重型近战单位,能重击对手。还具有自然之力和生命恢复这两项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsqe] +_id="nsqe" +_name="eldersasquatch" +_type="unit" +abillist="ACbh,ACfr" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSasquatchShaman.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=170 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SasquatchShaman\\SasquatchShaman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野人长者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="V,Q" +tilesetspecific=0 +tip="召唤野人长者" +turnrate=0.5 +ubertip="重型近战单位,能重击对手,拥有自然之力技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsqo] +_id="nsqo" +_name="sasquatchoracle" +_type="unit" +abillist="ACrj,ACro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSasquatch.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Sasquatch\\Sasquatch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.35 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野人神使" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="V,Q" +tilesetspecific=0 +tip="召唤野人神使" +turnrate=0.5 +ubertip="重型近战单位,具有咆哮技能。还具有生命恢复术。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsqt] +_id="nsqt" +_name="sasquatch" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSasquatch.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Sasquatch\\Sasquatch" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="野人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="V,Q" +tilesetspecific=0 +tip="召唤野人" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nsra] +_id="nsra" +_name="stormreaverapprentice" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOrcWarlock.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.2 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcWarlock\\OrcWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=175 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=5 +lumberrep=5 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴撕裂者学徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用风暴撕裂者学徒" +turnrate=0.6 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ShamanX" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nsrh] +_id="nsrh" +_name="stormreaverhermit" +_type="unit" +abillist="ACpu" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOrcWarlock.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.2 +deathtype=3 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcWarlock\\OrcWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴撕裂者隐士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用风暴撕裂者隐士" +turnrate=0.6 +ubertip="轻型的远程攻击单位,具有净化技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ShamanX" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nsrn] +_id="nsrn" +_name="stormreavernecrolyte" +_type="unit" +abillist="ACbl,ACcl" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOrcWarlock.blp" +atktype1="pierce" +atktype2="normal" +auto="Ablo" +backsw1=0.47 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=200 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.2 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcWarlock\\OrcWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=145 +goldrep=145 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=675 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=350 +manan=350 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴撕裂者术士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.875 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用风暴撕裂者术士" +turnrate=0.6 +ubertip="重型的远程攻击单位,具有嗜血术和闪电链这两个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ShamanX" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nsrv] +_id="nsrv" +_name="revenantoftheseas" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=100 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RevenantOfTheWaves\\RevenantOfTheWaves" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=205 +goldrep=205 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=900 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="海之幽灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=100 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用海之幽灵" +turnrate=0.6 +type="undead" +ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsrw] +_id="nsrw" +_name="stormreaverwarlock" +_type="unit" +abillist="ACmo,ACad" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOrcWarlock.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.2 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=73 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcWarlock\\OrcWarlock" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴撕裂者巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward,air" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用风暴撕裂者巫师" +turnrate=0.6 +ubertip="重型的远程攻击单位,具有季风和操纵死尸这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ShamanX" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nssn] +_id="nssn" +_name="nightelfassassin" +_type="unit" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAssassin.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\assassin\\assassin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=11.0 +launchy=62.0 +launchz=71.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\KeeperGroveMissile\\KeeperGroveMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="守望者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=650 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Assassin" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="missile" + +[nssp] +_id="nssp" +_name="spittingspider" +_type="unit" +abillist="ACvs" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiderBlue.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=100 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=24 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SpiderBlue\\SpiderBlue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraAcidMissile\\ChimaeraAcidMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒液蜘蛛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=300.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="召唤毒液蜘蛛" +turnrate=0.5 +ubertip="轻型远程攻击单位,能向对手吐出毒液。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Spider" +useclickhelper=0 +walk=90.0 +weapson=1 +weaptp1="missile" + +[nsth] +_id="nsth" +_name="satyrhellcaller" +_type="unit" +abillist="ACbl,ACua,ACad" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSatyr.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +auto="Ablo" +backsw1=0.3 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=140 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=1.2 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\satyrhellcaller\\satyrhellcaller" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="赛特斯之地狱使者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=500.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用赛特斯之地狱使者" +turnrate=0.5 +ubertip="重型近战单位,带有邪恶光环,还拥有操作死尸技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Satyr" +useclickhelper=0 +walk=500.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavySlice" + +[nstl] +_id="nstl" +_name="satyrsoulstealer" +_type="unit" +abillist="Ambd,ACrd" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSatyr.blp" +atktype1="normal" +atktype2="normal" +auto="Arai" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=150 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=1.2 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Satyr\\Satyr" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=130 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="S" +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="赛特斯之灵魂盗贼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用赛特斯之灵魂盗贼( |cffffcc00S|r)" +turnrate=0.5 +ubertip="中型近战单位,具有法力燃烧,复活死尸这两项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Satyr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nsts] +_id="nsts" +_name="satyrshadowdancer" +_type="unit" +abillist="ACcs,Ashm" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSatyrTrickster.blp" +atktype1="pierce" +atktype2="normal" +auto="Acrs" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\SatyrTrickster\\SatyrTrickster" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=205 +goldrep=205 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="S" +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BlackKeeperMissile\\BlackKeeperMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.6 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="赛特斯之黑暗舞者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=180 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=330 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用赛特斯之黑暗舞者( |cffffcc00S|r)" +turnrate=0.5 +ubertip="轻型远程攻击单位,具有夜间隐形能力,还拥有诅咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Satyr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nstw] +_id="nstw" +_name="stormwyrm" +_type="unit" +abillist="Alit,ACls,ACcl,Advc,ACdv" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizard.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=90 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=2 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=45 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizard\\ThunderLizard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=8 +goldcost=435 +goldrep=435 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=140.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=150.0 +launchz=20.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="风暴巨龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=1.5 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=310.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,A,C,G" +tilesetspecific=0 +tip="召唤风暴巨龙" +turnrate=0.5 +ubertip="重型远程攻击单位,能射出闪电。具有吞噬技,闪电链和闪电护盾这三项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nsty] +_id="nsty" +_name="satyr" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSatyr.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=1.2 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Satyr\\Satyr" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="赛特斯" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A,C" +tilesetspecific=0 +tip="雇用赛特斯" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Satyr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[nsw1] +_id="nsw1" +_name="spiritbeast" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=200 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FelstalkerPurple\\FelstalkerPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小型灵兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Felhound" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsw2] +_id="nsw2" +_name="spiritbeast2" +_type="unit" +abillist="Afbb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FelstalkerPurple\\FelstalkerPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.7 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Felhound" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nsw3] +_id="nsw3" +_name="spiritbeast3" +_type="unit" +abillist="Afbb,Ambb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFelHound.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=220 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\FelstalkerPurple\\FelstalkerPurple" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=220 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=150 +manan=150 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.4 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大型灵兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=220 +regenhp=0.25 +regenmana=0.375 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Felhound" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntav] +_id="ntav" +_name="cantina" +_type="unit" +abillist="Ane2,Avul,Aawa" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTavern.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="能让你雇用各式各样的英雄。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Tavern\\Tavern" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="小酒馆" +namecount=0 +nbmmicon=1 +nbrandom=1 +nsight=500 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.0 +scalebull=1 +selcirconwater=0 +sellunits="Nngs,Nbrn,Npbm,Nplh,Nbst" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=0 +tilesets="*" +tilesetspecific=0 +tip="建造小酒馆" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +unitsound="Cantina" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nten] +_id="nten" +_name="tent" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一种有着奇异装饰的帆布帐篷。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Tent\\Tent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=75 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="Tent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nth0] +_id="nth0" +_name="icetrollhut0" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种覆盖着白雪的住处。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\IceTrollHut0\\IceTrollHut0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="冰之巨魔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="建造冰之巨魔小屋" +turnrate=0.0 +type="Mechanical" +unitsound="IceTrollHut0" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nth1] +_id="nth1" +_name="icetrollhut1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +description="一种覆盖着白雪的住处。 " +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\IceTrollHut1\\IceTrollHut1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="冰之巨魔小屋" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="建造冰之巨魔小屋" +turnrate=0.0 +type="Mechanical" +unitsound="IceTrollHut1" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nthl] +_id="nthl" +_name="thunderlizard" +_type="unit" +abillist="Alit,ACt2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNThunderLizard.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\ThunderLizard\\ThunderLizard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=1 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=750 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=20.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="雷霆蜥蜴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=7 +propwin=60.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,enemy,neutral" +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="B,A,C,G" +tilesetspecific=0 +tip="召唤雷霆蜥蜴(|cffffcc00T|r)" +turnrate=0.5 +ubertip="重型远程攻击单位,能重击对手。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="msplash" + +[nthr] +_id="nthr" +_name="tharifas" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGreenDragon.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=140 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="small" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=51 +dmgplus2=0 +dmgpt1=0.94 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GreenDragon\\GreenDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=510 +goldrep=510 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-20.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GreenDragonMissile\\GreenDragonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.4 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="萨里法斯" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=70 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=14 +sides2=0 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.1 +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ntka] +_id="ntka" +_name="tuskarrspearman" +_type="unit" +acquire=800.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarGold.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarRanged\\tuskarRanged" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=11.0 +launchy=62.0 +launchz=71.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\TuskarSpear\\TuskarSpear.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔枪兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔枪兵" +turnrate=0.6 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ntkc] +_id="ntkc" +_name="tuskarrchieftain" +_type="unit" +abillist="ACac" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarBlack.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=43 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarLord\\tuskarLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔酋长" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔酋长" +turnrate=0.5 +ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntkf] +_id="ntkf" +_name="tuskarrfighter" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarBrown.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskar\\tuskar" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔格斗者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔格斗者" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntkh] +_id="ntkh" +_name="tuskarrhealer" +_type="unit" +abillist="ACdm,Anh1" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarBrown.blp" +atktype1="normal" +atktype2="normal" +auto="Anhe" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=95 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarLord\\tuskarLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=190 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PriestMissile\\PriestMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=125 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔巫师" +turnrate=0.6 +ubertip="轻型的远程攻击单位,具有医疗和驱逐魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntks] +_id="ntks" +_name="tuskarrsorceror" +_type="unit" +abillist="ACif" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarBrown.blp" +atktype1="pierce" +atktype2="normal" +auto="Ainf" +backsw1=0.7 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.67 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=33 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarRanged\\tuskarRanged" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=155 +goldrep=155 +green=225 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=300 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\TuskarSpear\\TuskarSpear.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔男巫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.66 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔男巫" +turnrate=0.6 +ubertip="中型的远程攻击单位,具有心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ntkt] +_id="ntkt" +_name="tuskarrtrapper" +_type="unit" +abillist="ACen" +acquire=800.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarGold.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=95 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarRanged\\tuskarRanged" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=225 +goldrep=225 +green=190 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\TuskarSpear\\TuskarSpear.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔猎人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.66 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=135 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔猎人" +turnrate=0.5 +ubertip="中型的远程攻击单位,具有诱捕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[ntkw] +_id="ntkw" +_name="tuskarrwarrior" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTuskaarBrown.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=95 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.36 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\tuskarLord\\tuskarLord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=190 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="图斯卡尔战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.66 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用图斯卡尔战士" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Tuskarr" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntn2] +_id="ntn2" +_name="tent2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGenericCreepBuilding.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="有着奇异装饰的帆布帐篷。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" 2" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Tent1\\Tent1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=75 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="Tent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ntnt] +_id="ntnt" +_name="taurentent" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTaurenHut.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一种牢固的掩蔽建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TaurenTent\\TaurenTent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="牛头人帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造牛头人帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="TaurenTent" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ntor] +_id="ntor" +_name="tornado" +_type="unit" +abillist="Atdg,Atsp,Atwa,Aasl" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNTornado.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Abilities\\Spells\\Other\\Tornado\\TornadoElemental" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=60 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="龙卷风" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=60.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1200 +spd=60 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=210 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +useclickhelper=0 +walk=60.0 +weapson=0 + +[ntrd] +_id="ntrd" +_name="dragonturtle" +_type="unit" +abillist="ACc2,ACdv,Advc,ANt2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleRed.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=64.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=64 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=150.0 +farea1=30 +farea2=0 +fatlos=0 +file="Units\\Creeps\\DragonSeaTurtle\\DragonSeaTurtle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=595 +goldrep=595 +green=255 +harea1=70 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=2000 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=600 +manan=600 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="龙龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=100 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=4.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=310.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=19 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=510 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用龙龟" +turnrate=0.6 +ubertip="重型近战两栖单位,具有吞噬和尖刺外壳技能。还能施放冲击波。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[ntrg] +_id="ntrg" +_name="gargantuanseaturtle" +_type="unit" +abillist="ANth" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleGreen.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=120.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\GiantSeaTurtle\\GiantSeaTurtle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1250 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="大海龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=210.0 +shadowonwater=1 +shadoww=210.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用大海龟" +turnrate=0.6 +ubertip="重型近战两栖单位,身上的尖刺外壳对敌方的近战单位能造成伤害。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[ntrh] +_id="ntrh" +_name="seaturtlehatchling" +_type="unit" +abillist="ANth" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleGreen.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaTurtleRange\\SeaTurtleRange" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=192 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=220 +impactswimz=0.0 +impactz=30.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=-15.0 +launchx=0.0 +launchy=15.0 +launchz=10.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=0.4 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="小海龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=192 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=1.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward,air" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用小海龟" +turnrate=0.6 +ubertip="轻型的远程攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[ntrs] +_id="ntrs" +_name="seaturtle" +_type="unit" +abillist="ANth" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleGreen.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=192 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=5 +dmgplus2=0 +dmgpt1=0.66 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=60.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\SeaTurtle\\SeaTurtle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=250 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.5 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="海龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=180 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=2.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用海龟" +turnrate=0.6 +ubertip="轻型的近战攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntrt] +_id="ntrt" +_name="giantseaturtle" +_type="unit" +abillist="ANth" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSeaTurtleGreen.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=3 +def=4.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\GiantSeaTurtleRange\\GiantSeaTurtleRange" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=235 +goldrep=235 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="T" +hp=375 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=-40.0 +launchx=0.0 +launchy=40.0 +launchz=25.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WaterElementalMissile\\WaterElementalMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1300 +"missilespeed:2"=0 +modelscale=0.8 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="大海龟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=192 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=100.0 +scale=2.5 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=170.0 +shadowonwater=1 +shadoww=170.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=60 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward,air" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用巨型海龟(|cffffcc00T|r)" +turnrate=0.6 +ubertip="中型的远程攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="GiantSeaTurtle" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[ntrv] +_id="ntrv" +_name="revenantofthetides" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=9.2 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\RevenantOfTheWaves\\RevenantOfTheWaves" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=205 +goldrep=205 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=375 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="hover" +name="潮汐幽灵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="雇用潮汐幽灵" +turnrate=0.6 +type="undead" +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Revenant" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntt1] +_id="ntt1" +_name="deathtower" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="fifth" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDeathTower.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=180.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Spells\\NightElf\\CorrosiveBreath\\CorrosiveBreathMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="死亡之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造死亡之塔(|cffffcc00D|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="射出致命的能量箭,擅长于实施大规模的伤害,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +upgrade="ntx2" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ntt2] +_id="ntt2" +_name="taurentent2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTaurenHut.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="一种牢固的掩蔽建筑。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TaurenTent2\\TaurenTent2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="牛头人帐篷" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="B" +tilesetspecific=0 +tip="建造牛头人帐篷" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +unitsound="TaurenTent2" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ntws] +_id="ntws" +_name="wateryminiontidewarrior" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMurgulTideWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.55 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\MurgulTideWarrior\\MurgulTideWarrior" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="水奴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonSmallDeathExplode\\DemonSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Z" +tilesetspecific=0 +tip="召唤水奴" +turnrate=0.5 +ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="murloc" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ntx2] +_id="ntx2" +_name="deathtowerupgrade" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +animprops="upgrade,fifth" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAdvancedDeathTower.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowCannonTower" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=2 +dice2=0 +dmgplus1=19 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\TowerDefenseTower\\TowerDefenseTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=255.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Spells\\Undead\\DeathCoil\\DeathCoilMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="高级死亡之塔" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级高级死亡之塔(|cffffcc00U|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="HSMA" +ubertip="射出致命的能量箭,擅长于实施大规模的伤害,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ElvenGuardTower" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nubk] +_id="nubk" +_name="unbrokendarkhunter" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNUnbroken.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=16.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Unbroken\\Unbroken" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.55 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无敌黑暗猎人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=480.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无敌黑暗猎人" +turnrate=0.5 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Unbroken" +useclickhelper=0 +walk=480.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nubr] +_id="nubr" +_name="unbrokenrager" +_type="unit" +abillist="ACen" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNUnbroken.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Unbroken\\Unbroken" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=475 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无敌狂暴者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=480.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无敌狂暴者" +turnrate=0.5 +ubertip="中型的近战单位。能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Unbroken" +useclickhelper=0 +walk=480.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nubw] +_id="nubw" +_name="unbrokendarkweaver" +_type="unit" +abillist="ACuf" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNUnbroken.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=100 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.57 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=23 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Creeps\\Unbroken\\Unbroken" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=205 +goldrep=205 +green=100 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.7 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="无敌黑暗舞者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=480.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=300 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="I" +tilesetspecific=0 +tip="雇用无敌黑暗舞者" +turnrate=0.5 +ubertip="中型近战单位,具有邪恶狂热技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Unbroken" +useclickhelper=0 +walk=480.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nvde] +_id="nvde" +_name="eldervoidwalker" +_type="unit" +abillist="ACfl,ACde" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNVoidWalker.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.3 +blue=50 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=67 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\VoidWalker\\VoidWalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=85 +goldrep=85 +green=50 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1500 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=100.0 +launchy=0.0 +launchz=100.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\VoidWalkerMissile\\VoidWalkerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.5 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="虚无行者长老" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=450 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用虚无行者长老" +turnrate=0.6 +ubertip="重型远程攻击单位,可以施放吞噬魔法和叉状闪电技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ObsidianDestroyer" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nvdg] +_id="nvdg" +_name="greatervoidwalker" +_type="unit" +abillist="ACf2,ACcl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNVoidWalker.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +auto="AUfu" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.3 +blue=80 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=35 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\VoidWalker\\VoidWalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=80 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="V" +hp=750 +impactswimz=0.0 +impactz=90.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=80.0 +launchy=0.0 +launchz=80.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=45 +lumberrep=45 +mana0=400 +manan=400 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\VoidWalkerMissile\\VoidWalkerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="巨大虚无行者长老" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=4 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=450 +rangen2=0 +red=80 +regenhp=1.0 +regenmana=1.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用巨大虚无行者(|cffffcc00V|r)" +turnrate=0.6 +ubertip="重型远程攻击单位。可以施放闪电链和霜冻护甲技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ObsidianDestroyer" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nvdl] +_id="nvdl" +_name="lesservoidwalker" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNVoidWalker.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.3 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=16.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\VoidWalker\\VoidWalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=40.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\VoidWalkerMissile\\VoidWalkerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.75 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="小型虚无行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=450 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用小型虚无行者" +turnrate=0.6 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ObsidianDestroyer" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nvdw] +_id="nvdw" +_name="voidwalker" +_type="unit" +abillist="ACcw" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNVoidWalker.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="AHca" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.3 +blue=255 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.67 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\VoidWalker\\VoidWalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=125 +goldrep=125 +green=50 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="V" +hp=365 +impactswimz=0.0 +impactz=80.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=70.0 +launchy=0.0 +launchz=70.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=15 +lumberrep=15 +mana0=200 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\VoidWalkerMissile\\VoidWalkerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="虚无行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=450 +rangen2=0 +red=50 +regenhp=1.0 +regenmana=0.5 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=130.0 +shadowonwater=1 +shadoww=130.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="O,K" +tilesetspecific=0 +tip="雇用虚无行者(|cffffcc00V|r)" +turnrate=0.6 +ubertip="轻型远程单位,有冰冻之箭。|n|n|cffffcc00攻击陆地和空中单位。|r" +unitshadow="Shadow" +unitsound="ObsidianDestroyer" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nvil] +_id="nvil" +_name="villagerman" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVillagerMan.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (男性)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\VillagerMan\\VillagerMan" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=60 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="村民" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="commoner" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用村民" +turnrate=0.5 +ubertip="一个热心的村民。" +unitshadow="shadow" +unitsound="VillagerMan" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nvk2] +_id="nvk2" +_name="villagerkid2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVillagerKid2.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (2)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\VillagerKid1\\VillagerKid1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=6 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小孩" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="commoner" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=150.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用村民" +turnrate=0.5 +ubertip="一个小村民。" +unitshadow="shadow" +unitsound="VillagerKid" +useclickhelper=0 +walk=150.0 +weapson=0 + +[nvl2] +_id="nvl2" +_name="villagerman2" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVillagerMan1.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (男性 2)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\VillagerMan1\\VillagerMan1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=60 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="村民" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="commoner" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用村民" +turnrate=0.5 +ubertip="一个热心的村民。" +unitshadow="shadow" +unitsound="VillagerMan2" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nvlk] +_id="nvlk" +_name="villagerkid" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVillagerKid.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\VillagerKid\\VillagerKid" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=6 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小孩" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="commoner" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=150.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用村民" +turnrate=0.5 +ubertip="一个小村民。" +unitshadow="shadow" +unitsound="VillagerKid" +useclickhelper=0 +walk=150.0 +weapson=0 + +[nvlw] +_id="nvlw" +_name="villagerwoman" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVillagerWoman.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (女性)" +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\VillagerWoman\\VillagerWoman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=5 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=60 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.05 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="村民" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="commoner" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=100.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用村民" +turnrate=0.5 +ubertip="一位聪慧的村民。" +unitshadow="shadow" +unitsound="VillagerWoman" +useclickhelper=0 +walk=100.0 +weapson=0 + +[nvr0] +_id="nvr0" +_name="ruinedelvenfishingvillage0" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (被毁坏的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuildingRuined0\\ElvenFishVillageBuildingRuined0" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nvr1] +_id="nvr1" +_name="ruinedelvenfishingvillage1" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (被毁坏的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuildingRuined1\\ElvenFishVillageBuildingRuined1" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nvr2] +_id="nvr2" +_name="ruinedelvenfishingvillage2" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNNightElfFishingVillage.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (被毁坏的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\ElvenFishVillageBuildingRuined2\\ElvenFishVillageBuildingRuined2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="暗夜精灵族渔村" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=200.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nvul] +_id="nvul" +_name="vulture" +_type="unit" +abillist="Awan" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNVulture.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\critters\\Vulture\\Vulture" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=15 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="秃鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=350 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="critters" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=1 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=35.0 +shadowy=35.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=350 +spd=100 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="C" +tilesetspecific=0 +tip="召唤秃鹰" +turnrate=0.5 +ubertip="可以召唤秃鹰的灵魂来保护你。" +unitshadow="ShadowFlyer" +unitsound="Vulture" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nw2w] +_id="nw2w" +_name="war2warlock" +_type="unit" +abillist="ACfb,ACuf,ACcr" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosWarlockGreen.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.74 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-shaman.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 霹雳闪电,- 霹雳闪电|n- 邪恶狂热,- 霹雳闪电|n- 邪恶狂热|n- 残废" +castpt=0.3 +collision=31.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.334 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\ChaosWarlockGreen\\ChaosWarlockGreen" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1100 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.75 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=250.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=150.0 +shadowonwater=1 +shadoww=150.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Shaman" +upgrades="Rost" +useclickhelper=0 +walk=250.0 +weapson=1 +weaptp1="missile" + +[nwad] +_id="nwad" +_name="watcherward" +_type="unit" +abillist="Adt1,Aeth,Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WatcherWard\\WatcherWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="观察守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +unitsound="SentryWard" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nwat] +_id="nwat" +_name="watcher" +_type="unit" +abillist="ACbl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHuntress.blp" +atktype1="normal" +atktype2="normal" +auto="Ablo" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\watcher\\watcher" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=140 +goldrep=140 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="岗哨" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="nightelf" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.5 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=290.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=280 +special=0 +specialart="Objects\\Spawnmodels\\NightElf\\NightElfLargeDeathExplode\\NightElfLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Watcher" +useclickhelper=0 +walk=290.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nwc1] +_id="nwc1" +_name="wyverncage1" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCage.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="专门设计为囚禁双足飞龙的笼子。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (1)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\WyvernCage\\WyvernCage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="双足飞龙牢笼" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造双足飞龙牢笼" +turnrate=0.0 +useclickhelper=0 +walk=200.0 +weapson=0 + +[nwc2] +_id="nwc2" +_name="wyverncage2" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNCage.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowSmall" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="专门设计为囚禁双足飞龙的笼子。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (2)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\WyvernCage2\\WyvernCage2" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="双足飞龙牢笼" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8Round.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造双足飞龙牢笼" +turnrate=0.0 +useclickhelper=0 +walk=200.0 +weapson=0 + +[nwe1] +_id="nwe1" +_name="wareagle1" +_type="unit" +abillist="ANtr" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=2 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WarEagle\\WarEagle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="战鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=22 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="ShadowFlyer" +unitsound="WarEagle" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nwe2] +_id="nwe2" +_name="wareagle2" +_type="unit" +abillist="ANtr,Alit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.67 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=3.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=2 +elevrad=20.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\WarEagle\\WarEagle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=625 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="雷霆战鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=75 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=22 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1600 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="ShadowFlyer" +unitsound="WarEagle" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[nwe3] +_id="nwe3" +_name="wareagle3" +_type="unit" +abillist="ANtr,Alit,Apiv" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWarEagle.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.67 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=5.0 +deftype="small" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=45 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=2 +elevrad=20.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\WarEagle\\WarEagle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=50 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=875 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ChimaeraLightningMissile\\ChimaeraLightningMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="影子战鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=75 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=0.0 +regentype="always" +reptm=22 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1600 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="ShadowFlyer" +unitsound="WarEagle" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[nwen] +_id="nwen" +_name="wendigo1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWendigo.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Wendigo\\Wendigo" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="雪怪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤雪怪" +turnrate=0.5 +ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nwgs] +_id="nwgs" +_name="nagacoutl" +_type="unit" +abillist="Andm" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWindSerpent.blp" +atktype1="pierce" +atktype2="normal" +auto="Aadm" +backsw1=1.0 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=0 +def=3.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\naga\\WindSerpent\\WindSerpent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=235 +goldrep=235 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=525 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=30.0 +launchz=51.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=50 +manan=200 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WingedSerpentMissile\\WingedSerpentMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.7 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="飞蛇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="naga" +rangen1=450 +rangen2=0 +red=150 +regenhp=1.0 +regenmana=0.5 +regentype="always" +reptm=35 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1600 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=110 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练飞蛇(|cffffcc00C|r)" +turnrate=0.4 +ubertip="轻型飞行单位,可以学习驱逐魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="WingedSerpent" +upgrades="Rguv,Rnam,Rnat,Rnsi" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" +weaptype1="WoodMediumBash" + +[nwgt] +_id="nwgt" +_name="waygate" +_type="unit" +abillist="Awrp,Avul" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNWaygate.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=1 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +description="可以将单位传送到另外一个传送门那里。" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\Waygate\\Waygate" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="传送门" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=500 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\Waygate.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造传送门" +turnrate=0.0 +type="Mechanical,neutral,standon" +ubersplat="HMED" +unitsound="Waygate" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nwiz] +_id="nwiz" +_name="apprenticewizard" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=31.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\HumanMage\\HumanMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\PriestMissile\\PriestMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师学徒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=185.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=80.0 +shadowonwater=1 +shadoww=80.0 +shadowx=40.0 +shadowy=40.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用巫师学徒" +turnrate=0.5 +ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HumanMage" +useclickhelper=0 +walk=185.0 +weapson=1 +weaptp1="missile" + +[nwld] +_id="nwld" +_name="direwolf" +_type="unit" +abillist="ACct,ACro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDireWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\DireWolf\\DireWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐怖之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="召唤恐怖之狼" +turnrate=0.6 +ubertip="中型近战单位,具有致命一击和咆哮这两个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[nwlg] +_id="nwlg" +_name="giantwolf" +_type="unit" +abillist="ACct" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTimberWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=47.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\TimberWolf\\TimberWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="召唤巨狼" +turnrate=0.6 +ubertip="中型的近战单位,拥有致命一击这个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nwlt] +_id="nwlt" +_name="timberwolf" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTimberWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\TimberWolf\\TimberWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.75 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大灰狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="A" +tilesetspecific=0 +tip="召唤大灰狼" +turnrate=0.6 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nwna] +_id="nwna" +_name="ancientwendigo" +_type="unit" +abillist="Awrs,ACbh,ACrn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWendigo.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=90 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=60 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Wendigo\\Wendigo" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=8 +goldcost=435 +goldrep=435 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1200 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=9 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.65 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="远古雪怪" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=1.5 +regenmana=1.5 +regentype="always" +reptm=90 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=460 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤远古雪怪" +turnrate=0.5 +ubertip="重型近战单位,具有重击,战争践踏和重生这三项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nwnr] +_id="nwnr" +_name="elderwendigo" +_type="unit" +abillist="ACbh" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWendigo.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Wendigo\\Wendigo" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=200 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="雪怪长者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=220.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤雪怪长者" +turnrate=0.5 +ubertip="重型近战单位,能重击对手。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=220.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nwns] +_id="nwns" +_name="wendigoshaman" +_type="unit" +abillist="ACrj,ACro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWendigo.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.3 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=50 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.75 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WendigoShaman\\WendigoShaman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=6 +goldcost=340 +goldrep=340 +green=160 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=950 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=500 +manan=500 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="雪怪萨满祭司" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=128 +rangen2=0 +red=130 +regenhp=0.5 +regenmana=1.25 +regentype="always" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=360 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤雪怪萨满祭司" +turnrate=0.5 +ubertip="重型近战单位,具有咆哮和生命恢复这两项技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Wendigo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[nwrg] +_id="nwrg" +_name="wargolem" +_type="unit" +abillist="ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Metal" +art="ReplaceableTextures\\CommandButtons\\BTNArmorGolem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.56 +castpt=0.47 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GolemStatue\\GolemStatue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1000 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.25 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="战争傀儡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.9 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="D,G" +tilesetspecific=0 +tip="召唤战争傀儡" +turnrate=0.5 +ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyBash" + +[nws1] +_id="nws1" +_name="windserpent" +_type="unit" +abillist="ACen" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNDragonHawk.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.633 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=0 +castbsw=1.03 +castpt=0.3 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WindSerpent\\WindSerpent" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=280 +goldrep=280 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=700 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-87.0 +launchy=-17.0 +launchz=33.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\DragonHawkMissile\\DragonHawkMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1100 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="龙鹰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="human" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=45 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=170.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练龙鹰(|cffffcc00D|r)" +turnrate=0.4 +ubertip="重型的远程攻击单位,能诱捕敌方单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="DragonHawk" +upgrades="Rhla" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[nwwd] +_id="nwwd" +_name="whitedirewolf" +_type="unit" +abillist="ACct,ACro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTimberWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=4 +bountyplus=40 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=28 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WhiteWolf\\WhiteWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=290 +goldrep=290 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=750 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.45 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐怖霜冻之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=310 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤恐怖霜冻之狼" +turnrate=0.6 +ubertip="中型近战单位,具有致命一击和咆哮这两个技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nwwf] +_id="nwwf" +_name="whitewolf" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTimberWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=5 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=11 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WhiteWolf\\WhiteWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="霜冻之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=110 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤霜冻之狼" +turnrate=0.6 +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nwwg] +_id="nwwg" +_name="giantwhitewolf" +_type="unit" +abillist="ACct" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTimberWolf.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=140 +bountydice=2 +bountyplus=9 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=47.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\WhiteWolf\\WhiteWolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=205 +goldrep=205 +green=120 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨型霜冻之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=90 +rangen2=0 +red=150 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=210 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="N" +tilesetspecific=0 +tip="召唤霜冻之狼" +turnrate=0.6 +ubertip="中型近战单位,具有致命一击技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWolf" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[nwzd] +_id="nwzd" +_name="darkwizard" +_type="unit" +abillist="ACrd,ACba,ACpy" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="chaos" +atktype2="normal" +attachmentanimprops="medium" +auto="Arai" +backsw1=0.85 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=70 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=4.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=38 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditMage\\BanditMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=6 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=1200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=50.0 +launchy=0.0 +launchz=120.0 +level=8 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=500 +manan=500 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="黑暗巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=500 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=1.25 +regentype="always" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=260.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=320 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=410 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用黑暗巫师" +turnrate=0.5 +ubertip="重型远程攻击单位,带有辉煌光环。还具有复活死尸和变形术这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" + +[nwzg] +_id="nwzg" +_name="renegadewizard" +_type="unit" +abillist="ACpu,ACls" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.85 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=17 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=29 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditMage\\BanditMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=190 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=600 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=30.0 +launchy=0.0 +launchz=75.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=400 +manan=400 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫师变节者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=1.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=260.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=260 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用巫师变节者" +turnrate=0.5 +ubertip="中型远程攻击单位,具有净化和闪电护盾这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" + +[nwzr] +_id="nwzr" +_name="roguewizard" +_type="unit" +abillist="ACf2" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNBanditMage.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="AUfu" +backsw1=0.85 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=170 +bountydice=1 +bountyplus=7 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=2.4 +castpt=0.3 +collision=32.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BanditMage\\BanditMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=25.0 +launchy=0.0 +launchz=66.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=300 +manan=300 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LichMissile\\LichMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="流氓巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.75 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=260.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=160 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="Y,X,V,Q,J" +tilesetspecific=0 +tip="雇用流氓巫师" +turnrate=0.5 +ubertip="轻型远程攻击单位,能施放霜冻护甲。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="HeroArchMage" +useclickhelper=0 +walk=260.0 +weapson=1 +weaptp1="missile" + +[nzep] +_id="nzep" +_name="goblinzeppelin" +_type="unit" +abillist="Sch3,Achd,Aloa,Adro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinZeppelin.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\GoblinZeppelin\\GoblinZeppelin" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="Z" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=280.0 +movementsoundlabel="GoblinZeppelinMovement" +movetp="fly" +name="地精飞艇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="creeps" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=30 +stockstart=220 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用地精飞艇( |cffffcc00Z|r)" +turnrate=0.5 +type="Mechanical" +ubertip="飞行的运输工具。" +unitshadow="ShadowFlyer" +unitsound="GoblinZeppelin" +useclickhelper=0 +walk=200.0 +weapson=0 + +[nzin] +_id="nzin" +_name="zoneindicator" +_type="unit" +abillist="Avul" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNPortal.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=3 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=2 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (自定义战役)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Doodads\\Terrain\\LOSBlocker\\IntentionallyLeftBlank" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=150000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="地区显示" +namecount=0 +nbmmicon=1 +nbrandom=0 +nsight=500 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\2x2UnBuildable.tga" +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=3 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="地区显示" +turnrate=0.0 +ubertip="地区显示" +useclickhelper=1 +walk=200.0 +weapson=0 + +[nzlc] +_id="nzlc" +_name="lichking" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNRevenant.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (过场动画战役单位)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="doodads\\cinematic\\lichking\\lichking" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巫妖王" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=240.0 +scale=4.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="巫妖王" +turnrate=0.0 +ubertip="这就是巫妖王,事实的确是如此的,难道你不相信我么?" +useclickhelper=0 +walk=240.0 +weapson=0 + +[nzom] +_id="nzom" +_name="zombie" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNZombie.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=150 +bountydice=1 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\Zombie\\Zombie" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=85 +goldrep=85 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=240 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="僵尸" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=50 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤僵尸" +turnrate=0.5 +type="undead" +ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Zombie" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[oalt] +_id="oalt" +_name="altarofstorms" +_type="unit" +abillist="Abds,Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfStorms.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAltarofStorms" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\AltarofStorms\\AltarofStorms" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="风暴祭坛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造风暴祭坛(|cffffcc00A|r)" +trains="Obla,Ofar,Otch,Oshd" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="能召唤新的英雄和复活阵亡的英雄。" +unitsound="AltarofStorms" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[obar] +_id="obar" +_name="orcbarracks" +_type="unit" +abillist="Abds,Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBarracks.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowOrcBarracks" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\OrcBarracks\\OrcBarracks" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1200 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="兵营" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=9 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Robs,Rotr,Robk,Robf" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造兵营(|cffffcc00B|r)" +trains="ogru,ohun,otbk,ocat" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="主要部队生产建筑。训练步兵,猎头者和粉碎者。|n同时包括狂暴力量,狂暴愤怒,巨魔再生和燃烧汽油的升级。" +unitsound="OrcBarracks" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[obea] +_id="obea" +_name="beastiary" +_type="unit" +abillist="Abds,Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNBeastiary.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowBeastiary" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\Beastiary\\Beastiary" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="E" +hp=1100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="兽栏" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ostr" +requirescount=0 +requirewaterradius=0.0 +researches="Roen,Rovs,Rwdm,Rolf" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造兽栏(|cffffcc00E|r)" +trains="orai,okod,owyv,otbr" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="能训练出掠夺者,科多兽,风骑士和巨魔蝙蝠骑士。|n这里还包括诱捕,浸毒武器,战鼓和液体炸弹的升级。" +unitsound="Beastiary" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[obot] +_id="obot" +_name="orcishtransportship" +_type="unit" +abillist="Sch5,Slo3,Sdro" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcishTransport.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcishTransportShip\\OrcishTransportShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="兽族运输船" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用运输船(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="能够运送单位的运输船。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ocat] +_id="ocat" +_name="demolisher" +_type="unit" +abillist="Abof" +acquire=1150.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNDemolisher.blp" +atktype1="siege" +atktype2="siege" +backsw1=1.9 +backsw2=1.9 +bldtm=36 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=4.5 +cool2=4.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.34 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=81 +dmgplus2=81 +dmgpt1=0.1 +dmgpt2=0.1 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=25 +farea2=25 +fatlos=0 +file="units\\orc\\catapult\\catapult" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=220 +goldrep=220 +green=255 +harea1=50 +harea2=50 +hfact1=0.4 +hfact2=0.4 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="D" +hp=425 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=250 +minspd=0 +"missilearc:1"=0.35 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\DemolisherMissile\\DemolisherMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="粉碎者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=30.0 +qarea1=150 +qarea2=150 +qfact1=0.25 +qfact2=0.25 +race="orc" +rangen1=1150 +rangen2=1000 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofor,ostr" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=185.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=110.0 +shadowy=110.0 +showui1=1 +showui2=1 +sides1=21 +sides2=21 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall" +splashtargs2="ground,structure,debris,tree,wall" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,item,ward" +targs2="structure" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练粉碎者(|cffffcc00D|r)" +turnrate=0.4 +type="Mechanical" +ubertip="远程攻城武器。对建筑很有效,但缓慢而昂贵。可以学会燃烧之油技能。|n|n|cffffcc00攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Catapult" +upgrades="Roar,Rora,Robf,Rolf,Rguv" +useclickhelper=0 +walk=185.0 +weapson=3 +weaptp1="artillery" +weaptp2="msplash" + +[ocbw] +_id="ocbw" +_name="chaosorcburrow" +_type="unit" +abillist="Abds,Aspi,Abun,Sbtl,Astd,Arbr" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTrollBurrow.blp" +atktype1="chaos" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowTrollBurrow" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=4.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=2.0 +deftype="large" +defup=0.0 +dice1=1 +dice2=0 +dmgplus1=33 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (混乱的)" +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\TrollBurrow\\TrollBurrow" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="O" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\huntermissile\\huntermissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="邪恶兽族地洞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=800 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造邪恶兽族地洞(|cffffcc00O|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="能提供人口,从而增加可造单位数量的最大值。邪恶的苦工在进入其中以后还能对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="TrollBurrow" +upgrades="Rosp,Rorb,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[odes] +_id="odes" +_name="orcishdestroyer" +_type="unit" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcDestroyer.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=54 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcishDestroyerShip\\OrcishDestroyerShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=250 +goldrep=250 +green=255 +harea1=35 +harea2=0 +hfact1=0.3 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=575 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="兽族护卫舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=50 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1500 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=60 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用护卫舰(|cffffcc00F|r)" +turnrate=0.2 +type="Mechanical" +ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="msplash" + +[odkt] +_id="odkt" +_name="drakthul" +_type="unit" +abillist="ACmo,ACad" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNOrcWarlockRed.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=3 +def=2.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\OrcWarlockRed\\OrcWarlockRed" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=145 +goldrep=145 +green=220 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=675 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=350 +manan=350 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.2 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="德拉克苏尔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.875 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +scorescreenicon="UI\\Glues\\ScoreScreen\\scorescreen-hero-guldan.blp" +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=60 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="ShamanX" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[odoc] +_id="odoc" +_name="witchdoctor" +_type="unit" +abillist="Aeye,Ahwd,Asta,Aion" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWitchDoctor.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.52 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-witchdoctor.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 岗哨守卫,- 岗哨守卫|n- 静止陷阱,- 岗哨守卫|n- 静止陷阱|n- 治疗守卫" +castpt=0.35 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.97 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.73 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WitchDoctor\\WitchDoctor" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=315 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WitchDoctorMissile\\WitchDoctorMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨魔巫医" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.66666666666667 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练巨魔巫医(|cffffcc00W|r)" +turnrate=0.6 +ubertip="魔法单位,一开始能施放岗哨魔法,从而能侦察到一定的区域。随后这种单位还能学习到静止陷阱和治疗守卫。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="WitchDoctor" +upgrades="Rowd,Rotr,Ropm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[oeye] +_id="oeye" +_name="sentryward" +_type="unit" +abillist="Adt1,Aeth" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSentryWard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\SentryWard\\SentryWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="岗哨守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +unitsound="SentryWard" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ofor] +_id="ofor" +_name="warmill" +_type="unit" +abillist="Abds,Aspi,Arlm" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNForge.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowForge" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\WarMill\\WarMill" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=1000 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="战争磨坊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rome,Roar,Rora,Rosp,Rorb" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造战争磨坊(|cffffcc00M|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="能存储采集到的木材。|n这里还包括对兽族各种单位的攻防升级,尖刺障碍和加强型防御也是在这里进行研究的。" +unitsound="WarMill" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ofrt] +_id="ofrt" +_name="fortress" +_type="unit" +abillist="Abdl,Aspi,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNFortress.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowFortress" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\GreatHall\\GreatHall" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=345 +goldrep=1045 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=210 +lumberrep=585 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="堡垒" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="oalt" +requirescount=0 +requirewaterradius=0.0 +researches="Ropg,Ropm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到堡垒(|cffffcc00U|r)" +trains="opeo" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="OLAR" +ubertip="升级到了堡垒之后能让玩家建造许多新的建筑物和单位。" +unitsound="Fortress" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ogre] +_id="ogre" +_name="greathall" +_type="unit" +abillist="Abdl,Aspi,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGreathall.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=150 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowGreatHall" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\GreatHall\\GreatHall" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=385 +goldrep=385 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=1500 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=185 +lumberrep=185 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="大厅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=150 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Ropg,Ropm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造大厅(|cffffcc00H|r)" +trains="opeo" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="OLAR" +ubertip="兽族的基本建筑物。能训练出苦工,在升级到了要塞和堡垒之后能让玩家建造许多新的建筑物和单位。" +unitsound="GreatHall" +upgrade="ostr" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ogrk] +_id="ogrk" +_name="garthok" +_type="unit" +abillist="Asal,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrunt.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Grunt\\Grunt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=700 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="加索克" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="Grunt" +upgrades="Roar,Rome,Robs,Ropg,Ropm,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ogru] +_id="ogru" +_name="grunt" +_type="unit" +abillist="Asal,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGrunt.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=17 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Grunt\\Grunt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=700 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族步兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练兽族步兵(|cffffcc00G|r)" +turnrate=0.6 +ubertip="基本的兽族地面单位。能得到狂暴力量的升级。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Grunt" +upgrades="Roar,Rome,Robs,Ropg,Ropm,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ohun] +_id="ohun" +_name="headhunter" +_type="unit" +abillist="Sbsk,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeadhunter.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.86 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=2.31 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dependencyor="otbk" +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.31 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeadHunter\\HeadHunter" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=350 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-5.0 +launchy=-34.0 +launchz=113.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\huntermissile\\huntermissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨魔猎头者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=450 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=22 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofor" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练巨魔猎头者(|cffffcc00T|r)" +turnrate=0.6 +ubertip="能有效对空的单位。能学习到巨魔再生和狂暴愤怒技能。|n|n|cffffcc00能攻击地面和空中单位。|r " +unitshadow="Shadow" +unitsound="HeadHunter" +upgrades="Roar,Rora,Rotr,Ropm,Robk,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" + +[ohwd] +_id="ohwd" +_name="healingward" +_type="unit" +abillist="Aoar" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNHealingWard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HealingWard\\HealingWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=5 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="治疗守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +unitsound="HealingWard" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ojgn] +_id="ojgn" +_name="juggernaut" +_type="unit" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNJuggernaut.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.733 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=100 +farea2=0 +fatlos=0 +file="Units\\Critters\\OrcJuggernaught\\OrcJuggernaught" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=500 +goldrep=500 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="兽族魔力战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="orc" +rangen1=900 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=4.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练兽族魔力战舰(|cffffcc00R|r)" +turnrate=0.1 +type="Mechanical" +ubertip="巨大的战舰,擅长破坏敌人的舰只和从海上轰炸近海的建筑物。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="artillery" + +[okod] +_id="okod" +_name="kotobeast" +_type="unit" +abillist="Aakb,Advc,Adev,Apak" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKotoBeast.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.32 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.5 +castpt=0.5 +collision=48.0 +cool1=1.44 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=1.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.85 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\KotoBeast\\KotoBeast" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Axe\\AxeMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="科多兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=500 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofor" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=280.0 +shadowonwater=1 +shadoww=310.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=220 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练科多兽(|cffffcc00K|r)" +turnrate=0.5 +ubertip="笨重的战争野兽,上面骑着一个兽族鼓手。能学到战鼓和吞噬技能。战鼓能提高周围单位的攻击力,它本身也能进行升级。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="KotoBeast" +upgrades="Rwdm,Rguv" +useclickhelper=0 +walk=100.0 +weapson=1 +weaptp1="missile" + +[omtg] +_id="omtg" +_name="mathog" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosWarlord.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.468 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=2 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosWarlord\\ChaosWarlord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马索格" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=240 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="ChaosWarlord" +upgrades="Roar,Rome" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[onzg] +_id="onzg" +_name="nazgrel" +_type="unit" +abillist="Aens,Asal,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRaider.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.85 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.87 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WolfRider\\WolfRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=610 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="那滋盖尔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=360.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.5 +unitshadow="Shadow" +unitsound="Nazgrel" +upgrades="Roar,Rome,Roen,Ropg,Ropm,Rguv" +useclickhelper=0 +walk=360.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[oosc] +_id="oosc" +_name="kotobeastnorider" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRiderlessKodo.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (不需要分配驾驭者)" +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\KotoBeastNoRider\\KotoBeastNoRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=0 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=330 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="科多兽" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=180 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="KotoBeastNoRider" +useclickhelper=0 +walk=200.0 +weapson=0 + +[opeo] +_id="opeo" +_name="peon" +_type="unit" +abillist="Ahar,Arep,Asal" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNPeon.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.5 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="ogre,otrb,orbr,obar,ofor,oalt,obea,osld,otto,owtw,ovln" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=3.0 +cool2=1.1 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Peon\\Peon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="P" +hp=250 +impactswimz=0.0 +impactz=45.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="苦工" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=90 +rangen2=66 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=800 +spd=190 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练苦工(|cffffcc00P|r)" +turnrate=0.6 +type="Peon" +ubertip="兽族的基本工人单位。能采集黄金和木材。还能建造建筑物和进行修理。在钻入地洞以后还能对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Peon" +upgrades="Ropg,Rguv" +useclickhelper=0 +walk=180.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="MetalLightChop" +weaptype2="AxeMediumChop" + +[orai] +_id="orai" +_name="wolfrider" +_type="unit" +abillist="Aens,Asal,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNRaider.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=28 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.2 +castpt=0.6 +collision=32.0 +cool1=1.85 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.87 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WolfRider\\WolfRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=3 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=610 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="horse" +name="掠夺者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=28 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=360.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=75.0 +shadowy=75.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=350 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练掠夺者(|cffffcc00R|r)" +turnrate=0.5 +ubertip="一种机动性很强的狼骑士。对付建筑物特别的有效,能学习到诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="WolfRider" +upgrades="Roar,Rome,Roen,Ropg,Ropm,Rguv" +useclickhelper=0 +walk=360.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[oshm] +_id="oshm" +_name="shaman" +_type="unit" +abillist="Ablo,Alsh,Aprg,Aion" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNShaman.blp" +atktype1="magic" +atktype2="normal" +auto="Ablo" +backsw1=0.74 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=1.4 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-shaman.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 净化,- 净化|n- 闪电护盾,- 净化|n- 闪电护盾|n- 嗜血术" +castpt=0.6 +collision=16.0 +cool1=2.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.37 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.43 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Shaman\\Shaman" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=335 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="萨满祭司" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.66666666666667 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=275.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=150.0 +shadowonwater=1 +shadoww=150.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="萨满祭司 (|cffffcc00S|r)" +turnrate=0.6 +ubertip="魔法单位。一开始能施放净化技能,从而能减慢敌人的速度和驱逐其身上的魔法效果。随后还能学习到闪电护盾和嗜血术。|n|n|cffffcc00能攻击地面单位和空中单位。|r" +unitshadow="Shadow" +unitsound="Shaman" +upgrades="Rost,Ropm,Rguv" +useclickhelper=0 +walk=275.0 +weapson=1 +weaptp1="missile" + +[oshy] +_id="oshy" +_name="orcshipyard" +_type="unit" +abillist="Ane2,Abds" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNGoblinShipyard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowGoblinShipyard" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=5.0 +deftype="fort" +defup=2.0 +description="出售船只" +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\other\\GoblinShipyard\\GoblinShipyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="兽族船坞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\8x8SimpleSolid.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=384.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +sellunits="obot" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造兽族船坞" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="船只建造工厂。能建造出兽族的运输船,护卫舰和战舰。" +unitsound="GoblinShipyard" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[osld] +_id="osld" +_name="spiritlodge" +_type="unit" +abillist="Abds,Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritLodge.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowSpiritLodge" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\SpiritLodge\\SpiritLodge" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=150 +goldrep=150 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=800 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="灵魂归宿" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ostr" +requirescount=0 +requirewaterradius=0.0 +researches="Rowd,Rost,Rowt" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造灵魂归宿(|cffffcc00S|r)" +trains="oshm,odoc,ospm" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="能生产出兽族的魔法单位:萨满祭司,巨魔巫医和灵魂行者。|n这里也可以进行对萨满祭司,巨魔巫医和灵魂行者的各种魔法升级。" +unitsound="SpiritLodge" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[osp1] +_id="osp1" +_name="serpentward1" +_type="unit" +abillist="ACmi" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\SerpentWard\\SerpentWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=75 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SerpentWardMissile\\SerpentWardMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒蛇守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[osp2] +_id="osp2" +_name="serpentward2" +_type="unit" +abillist="ACmi" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\SerpentWard\\SerpentWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=135 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SerpentWardMissile\\SerpentWardMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒蛇守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[osp3] +_id="osp3" +_name="serpentward3" +_type="unit" +abillist="ACmi" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\SerpentWard\\SerpentWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=135 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SerpentWardMissile\\SerpentWardMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒蛇守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[osp4] +_id="osp4" +_name="serpentward4" +_type="unit" +abillist="ACmi" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSerpentWard.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 4)" +elevpts=0 +elevrad=50.0 +farea1=50 +farea2=0 +fatlos=0 +file="units\\orc\\SerpentWard\\SerpentWard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=75 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=135 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=225.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SerpentWardMissile\\SerpentWardMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="毒蛇守卫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=150 +qarea2=0 +qfact1=0.2 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="msplash" + +[ospm] +_id="ospm" +_name="spiritwalkermorph" +_type="unit" +abillist="Acpf,Aspl,Adcn,Aast,Aion" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWalker.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=42 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=0 +cansleep=0 +cargosize=1 +castbsw=0.59 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-spiritwalker.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 虚无形态|n- 灵魂锁链,- 虚无形态|n- 灵魂锁链|n- 消魔,- 虚无形态|n- 灵活锁链|n- 消魔|n- 先组幽灵" +castpt=0.68 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (虚无状态)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\spiritwalker\\spiritwalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=100 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SorceressMissile\\SorceressMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵魂行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=1.0 +regentype="always" +reptm=42 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=275.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练灵魂行者(|cffffcc00T|r)" +turnrate=0.5 +type="Tauren" +ubertip="诡秘的牛头人法师。具有虚无形态技能,从而能让其对物理攻击免疫。还具有灵魂锁链技能,从而能对敌人进行连锁伤害。同时也能学习到消魔和先祖幽灵技能。|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWalker" +upgrades="Rowt,Ropm,Rguv" +useclickhelper=0 +walk=275.0 +weapson=0 + +[ospw] +_id="ospw" +_name="spiritwalker" +_type="unit" +abillist="Acpf,Aspl,Adcn,Aast,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWalker.blp" +atktype1="magic" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.6 +backsw2=0.0 +bldtm=42 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.59 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-spiritwalker.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 虚无形态|n- 灵魂锁链,- 虚无形态|n- 灵魂锁链|n- 消魔,- 虚无形态|n- 灵活锁链|n- 消魔|n- 先组幽灵" +castpt=0.68 +collision=32.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dependencyor="ospm" +dice1=1 +dice2=0 +dmgplus1=16 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\spiritwalker\\spiritwalker" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=500 +impactswimz=0.0 +impactz=110.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=10.0 +launchy=94.0 +launchz=110.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=100 +manan=300 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SorceressMissile\\SorceressMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="灵魂行者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=1.0 +regentype="always" +reptm=42 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.15 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练灵魂行者(|cffffcc00T|r)" +turnrate=0.5 +type="Tauren" +ubertip="诡秘的牛头人法师。具有虚无形态技能,从而能让其对物理攻击免疫。还具有灵魂锁链技能,从而能对敌人进行连锁伤害。同时也能学习到消魔和先祖幽灵技能。|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="SpiritWalker" +upgrades="Rowt,Ropm,Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[ostr] +_id="ostr" +_name="stronghold" +_type="unit" +abillist="Abdl,Aspi,Argl" +acquire=0.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNStronghold.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowStronghold" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=176.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\GreatHall\\GreatHall" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=315 +goldrep=700 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2000 +impactswimz=0.0 +impactz=160.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=190 +lumberrep=375 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="要塞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Simple.tga" +points=100 +preventplace="unbuildable" +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Ropg,Ropm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到要塞(|cffffcc00U|r)" +trains="opeo" +turnrate=0.0 +type="TownHall,Mechanical" +ubersplat="OLAR" +ubertip="在升级到要塞以后能使玩家建造许多新的建筑物和单位。" +unitsound="Stronghold" +upgrade="ofrt" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[osw1] +_id="osw1" +_name="spiritwolf1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Spiritwolf\\Spiritwolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=200 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="幽魂之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="SpiritWolf" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[osw2] +_id="osw2" +_name="spiritwolf2" +_type="unit" +abillist="ACct" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Spiritwolf\\Spiritwolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="恐惧之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=90 +rangen2=0 +red=170 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="SpiritWolf" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[osw3] +_id="osw3" +_name="spiritwolf3" +_type="unit" +abillist="ACct,Apiv" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWolf.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=170 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Spiritwolf\\Spiritwolf" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="阴影之狼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=90 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=350 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="SpiritWolf" +upgrades="Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[oswy] +_id="oswy" +_name="spiritwyvern" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNSpiritWyvern.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\SpiritWyvern\\SpiritWyvern" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=520 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="灵魂飞龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +unitshadow="ShadowFlyer" +unitsound="Hippogryph" +useclickhelper=0 +walk=200.0 +weapson=0 + +[otau] +_id="otau" +_name="tauren" +_type="unit" +abillist="Awar,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTauren.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.863 +backsw2=0.0 +bldtm=44 +blend=0.3 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.59 +castpt=0.68 +collision=48.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.14 +deathtype=3 +def=3.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=29 +dmgplus2=0 +dmgpt1=0.467 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\Tauren\\Tauren" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=280 +goldrep=280 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1300 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="牛头人" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="otto" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=190.0 +shadowonwater=1 +shadoww=190.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练牛头人(|cffffcc00T|r)" +turnrate=0.5 +type="Tauren" +ubertip="大型的单位,能学习到粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Tauren" +upgrades="Roar,Rome,Rows,Ropm,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodHeavyBash" + +[otbk] +_id="otbk" +_name="berserker" +_type="unit" +abillist="Absk,Aion" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="alternate" +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHeadHunterBerserker.blp" +atktype1="pierce" +atktype2="normal" +attachmentlinkprops="alternate" +backsw1=0.86 +backsw2=0.0 +bldtm=22 +blend=0.15 +blue=255 +boneprops="alternate" +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=2.31 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=22 +dmgplus2=0 +dmgpt1=0.31 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\HeadHunter\\HeadHunter" +fileverflags=2 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=135 +goldrep=135 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=450 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-5.0 +launchy=-34.0 +launchz=113.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\huntermissile\\huntermissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="巨魔狂暴战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=450 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=22 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofor" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练巨魔狂暴战士(|cffffcc00T|r)" +turnrate=0.6 +ubertip="能有效对空的投矛战士,拥有狂暴愤怒技能,从而增加了攻击力但是也会因此而受到额外的伤害。能学习巨魔再生技能。|n|n|cffffcc00能攻击地面和空中单位。|r " +unitshadow="Shadow" +unitsound="HeadHunter" +upgrades="Roar,Rora,Rotr,Ropm,Rguv" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" + +[otbr] +_id="otbr" +_name="trollbatrider" +_type="unit" +abillist="Aliq,Auco" +acquire=1000.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTrollBatRider.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.54 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.0 +castpt=0.0 +collision=8.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.33 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\BatTroll\\BatTroll" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=500 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-35.0 +launchy=30.0 +launchz=51.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BatTrollMissile\\BatTrollMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="巨魔蝙蝠骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1400 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=25 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofrt,ovln" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练巨魔蝙蝠骑士(|cffffcc00B|r)" +turnrate=0.4 +ubertip="轻型的飞行单位,有着出色的感官。擅长于摧毁敌人的建筑物,具有不稳定化合物技能,使得巨魔蝙蝠骑士能利用爆炸来伤害周围的空中单位。还能学习到液体炸弹和巨魔再生技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="ShadowFlyer" +unitsound="TrollBatrider" +upgrades="Roar,Rora,Rguv,Rotr" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[otot] +_id="otot" +_name="stasistraptotem" +_type="unit" +abillist="Aeth" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNStasisTrap.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\StasisTotem\\StasisTotem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="静止陷阱" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=70.0 +shadowonwater=1 +shadoww=70.0 +shadowx=25.0 +shadowy=25.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +type="Ward" +unitshadow="Shadow" +unitsound="StasisTotem" +useclickhelper=0 +walk=200.0 +weapson=0 + +[otrb] +_id="otrb" +_name="trollburrow" +_type="unit" +abillist="Abds,Aspi,Abun,Abtl,Astd,Arbr" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTrollBurrow.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="buffer" +buildingshadow="ShadowTrollBurrow" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=4.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=2.0 +deftype="large" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=33 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\TrollBurrow\\TrollBurrow" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=160 +goldrep=160 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="O" +hp=600 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\huntermissile\\huntermissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="兽族地洞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=800 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造兽族地洞(|cffffcc00O|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="能提供人口,从而增加可造单位数量的最大值。苦工在进入其中以后还能对来犯的敌人进行反击。能进行加强型防御升级。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="TrollBurrow" +upgrades="Rosp,Rorb,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[otto] +_id="otto" +_name="taurentotem" +_type="unit" +abillist="Abds,Aspi" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTaurenTotem.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=70 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowTaurenTotem" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\TaurenTotem\\TaurenTotem" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=90 +goldrep=90 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1200 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="牛头人图腾" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=70 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofrt,ofor" +requirescount=0 +requirewaterradius=0.0 +researches="Rows" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造牛头人图腾(|cffffcc00T|r)" +trains="otau" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="能训练出牛头人来。|n还包括对粉碎技能的研究。" +unitsound="TaurenTotem" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ovlj] +_id="ovlj" +_name="voljin" +_type="unit" +abillist="Aeye,Ahwd,Asta,Aion" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWitchDoctor.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.52 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-witchdoctor.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 岗哨守卫,- 岗哨守卫|n- 静止陷阱,- 岗哨守卫|n- 静止陷阱|n- 医疗守卫" +castpt=0.35 +collision=16.0 +cool1=1.75 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.97 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=9 +dmgplus2=0 +dmgpt1=0.73 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WitchDoctor\\WitchDoctor" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=315 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=25 +lumberrep=25 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\WitchDoctorMissile\\WitchDoctorMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="沃尔京" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.5 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Objects\\Spawnmodels\\Orc\\OrcSmallDeathExplode\\OrcSmallDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="WitchDoctor" +upgrades="Rowd,Rotr,Ropm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ovln] +_id="ovln" +_name="voodoolounge" +_type="unit" +abillist="Abds,Aall,Aspi,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNVoodooLounge.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.01 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowGoblinMerchant" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.64 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\VoodooLounge\\VoodooLounge" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +makeitems="shas,hslv,dust,phea,pman,stwp,tgrh,oli2" +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="巫毒商店" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=750 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1000 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造巫毒商店(|cffffcc00V|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OMED" +ubertip="建造出一个能出售物品的商店。可以购买的物品种类取决于你的大厅升级情况(大厅, 要塞, 堡垒)和你所拥有的建筑物种类。" +unitsound="VoodooLounge" +upgrades="Rosp,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[owar] +_id="owar" +_name="chaoswarlord" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosWarlord.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.468 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.75 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=2 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\demon\\ChaosWarlord\\ChaosWarlord" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hp=340 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="兽族战争首领" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=8 +sides2=0 +sight=1400 +spd=240 +special=0 +specialart="Objects\\Spawnmodels\\Orc\\OrcLargeDeathExplode\\OrcLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +unitshadow="Shadow" +unitsound="ChaosWarlord" +upgrades="Roar,Rome" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[ownr] +_id="ownr" +_name="riderlesswyvern" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWyvern.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.37 +backsw2=0.0 +bldtm=40 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=1.2 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=36 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (不需要分配驾驭者)" +elevpts=2 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\RiderlessWyvern\\RiderlessWyvern" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=520 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="双足飞龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=128 +rangen2=0 +red=255 +regenhp=0.5 +regenmana=0.0 +regentype="always" +reptm=40 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1400 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +unitshadow="ShadowFlyer" +unitsound="Hippogryph" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[owtw] +_id="owtw" +_name="watchtower" +_type="unit" +abillist="Abds,Arbr,Aspi" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNOrcTower.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="Alternate" +backsw1=0.3 +backsw2=0.0 +bldtm=55 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowGuardTower" +buildingsoundlabel="OrcBuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=72.0 +cool1=0.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.34 +deathtype=2 +def=3.0 +deftype="large" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=15 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\orc\\WatchTower\\WatchTower" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=110 +goldrep=110 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=135.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=80 +lumberrep=80 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GuardTowerMissile\\GuardTowerMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="了望塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\4x4SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=800 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=55 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofor" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=3 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HCancelDeath\\HCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造了望塔(|cffffcc00W|r)" +turnrate=0.0 +type="Mechanical" +ubersplat="OSMA" +ubertip="防御性建筑,能得到到加强型防御升级。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="WatchTower" +upgrades="Rosp,Rorb,Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[owyv] +_id="owyv" +_name="windrider" +_type="unit" +abillist="Aven" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNWyvernRider.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.54 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.3 +collision=8.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.1 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=37 +dmgplus2=0 +dmgpt1=0.6 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\orc\\WyvernRider\\WyvernRider" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=265 +goldrep=265 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="W" +hp=600 +impactswimz=0.0 +impactz=20.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-35.0 +launchy=30.0 +launchz=51.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="abilities\\weapons\\WyvernSpear\\WyvernSpearMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="风骑士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="orc" +rangen1=450 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=35 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ofrt" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1600 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练风骑士(|cffffcc00W|r)" +turnrate=0.4 +ubertip="一种高度机动的飞行单位。特别擅长于侦察。能获得浸毒武器的升级。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="WyvernRider" +upgrades="Roar,Rora,Rovs,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[uabc] +_id="uabc" +_name="abominationcinematic" +_type="unit" +abillist="Aap1" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAbomination.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=1.17 +backsw2=0.0 +bldtm=45 +blend=0.3 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.17 +deathtype=3 +def=2.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=32 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (过场动画)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\AbominationCIN\\AbominationCIN" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=1080 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="憎恶" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="unp2" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=1 +specialart="Units\\Undead\\Abomination\\AbominationExplosion.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练憎恶(|cffffcc00A|r)" +turnrate=0.4 +type="undead" +ubertip="重型近战单位。可以学习疾病云雾技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Abomination" +upgrades="Ruar,Rume,Rupc" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[uabo] +_id="uabo" +_name="abomination" +_type="unit" +abillist="Aap1,Aiun,Acn2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAbomination.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=1.17 +backsw2=0.0 +bldtm=40 +blend=0.3 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.17 +deathtype=3 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=32 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Abomination\\Abomination" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=4 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=1080 +impactswimz=0.0 +impactz=100.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=70 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="憎恶" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="unp2" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=7 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Units\\Undead\\Abomination\\AbominationExplosion.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练憎恶(|cffffcc00A|r)" +turnrate=0.4 +type="undead" +ubertip="重型的近战单位。能学习到疾病云雾和吞食尸体技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Abomination" +upgrades="Ruar,Rume,Rupc,Rupm,Rguv" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalHeavyChop" + +[uaco] +_id="uaco" +_name="acolyte" +_type="unit" +abillist="Aaha,Arst,Alam,Auns" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAcolyte.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=15 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +builds="unpl,uzig,usep,ugrv,uaod,utod,uslh,ubon,usap,ugol,utom" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=2.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.4 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Acolyte\\Acolyte" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=4 +fused=1 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=220 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="侍僧" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=220 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练侍僧(|cffffcc00C|r)" +turnrate=0.6 +type="Peon,undead" +ubertip="不死族的基本工人单位。能召唤建筑物,采集黄金和进行修复工作。在牺牲深渊里牺牲以后侍僧还可以变为阴影。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Acolyte" +upgrades="Rguv" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodLightBash" + +[uaod] +_id="uaod" +_name="altarofdarkness" +_type="unit" +abillist="Abgs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNAltarOfDarkness.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowAltarOfDarkness" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\AltarOfDarkness\\AltarOfDarkness" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=180 +goldrep=180 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="黑暗祭坛" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\10x10Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +revive=1 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤黑暗祭坛(|cffffcc00A|r)" +trains="Udea,Ulic,Udre,Ucrl" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能召唤新的英雄和复活阵亡的英雄。" +unitsound="AltarOfDarkness" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uarb] +_id="uarb" +_name="airbarge" +_type="unit" +abillist="Sch3,Achd,Aloa,Adro" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadAirBarge.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=1 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\UndeadAirBarge\\UndeadAirBarge" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=240 +goldrep=240 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=60 +lumberrep=60 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=90.0 +moveheight=280.0 +movetp="fly" +name="飞艇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=2.0 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=80.0 +shadowy=80.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=30 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤飞艇(|cffffcc00B|r)" +turnrate=0.5 +type="Mechanical" +ubertip="一种大批量的运输机。" +unitshadow="ShadowFlyer" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uban] +_id="uban" +_name="banshee" +_type="unit" +abillist="Aams,Acrs,Apos,Aiun" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNBanshee.blp" +atktype1="magic" +atktype2="normal" +auto="Acrs" +backsw1=0.51 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-banshee.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 诅咒,- 诅咒|n- 反魔法外壳,- 诅咒|n- 反魔法外壳|n- 占据" +castpt=0.5 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.17 +deathtype=0 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Banshee\\Banshee" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=285 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=75 +manan=200 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BansheeMissile\\BansheeMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=50.0 +movetp="hover" +name="女妖" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=500 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.66666666666667 +regentype="blight" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练女妖(|cffffcc00B|r)" +turnrate=0.6 +type="undead" +ubertip="魔法单位,一开始能施放诅咒技能,从而让敌人有一定的概率击空。随后还能学习到反魔法外壳和占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Banshee" +upgrades="Ruba,Rupm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[ubdd] +_id="ubdd" +_name="azurelordfrostwyrm" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFrostWyrm.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="large" +backsw1=0.55 +backsw2=0.55 +bldtm=80 +blend=0.4 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.4 +castpt=0.5 +collision=48.0 +cool1=3.0 +cool2=3.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=1 +dmgplus1=83 +dmgplus2=83 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (不死族的)" +elevpts=2 +elevrad=100.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\undead\\FrostWyrm\\FrostWyrm" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=7 +goldcost=385 +goldrep=385 +green=255 +harea1=50 +harea2=0 +hfact1=0.2 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1100 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=115.0 +launchz=-60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=2.0 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="萨皮洛恩" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=6 +propwin=61.0 +qarea1=200 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="undead" +rangen1=300 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=80 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=350.0 +shadowonwater=1 +shadoww=350.0 +shadowx=175.0 +shadowy=175.0 +showui1=1 +showui2=1 +sides1=11 +sides2=11 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.4 +type="undead" +unitshadow="ShadowFlyer" +unitsound="FrostWyrm" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[ubdr] +_id="ubdr" +_name="azureloredragon" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNAzureDragon.blp" +atktype1="chaos" +atktype2="chaos" +attachmentanimprops="large" +backsw1=0.56 +backsw2=0.56 +bldtm=100 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=150 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=1.0 +collision=48.0 +cool1=1.5 +cool2=1.5 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=6.0 +deftype="small" +defup=2.0 +dice1=3 +dice2=3 +dmgplus1=45 +dmgplus2=45 +dmgpt1=0.94 +dmgpt2=0.94 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (活着的)" +elevpts=2 +elevrad=100.0 +farea1=75 +farea2=0 +fatlos=0 +file="units\\creeps\\AzureDragon\\AzureDragon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=8 +goldcost=595 +goldrep=595 +green=180 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=1800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=120.0 +launchz=-20.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=2.25 +movefloor=90.0 +moveheight=325.0 +movetp="fly" +name="萨皮洛恩" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=225 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="undead" +rangen1=500 +rangen2=300 +red=200 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=100 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.7 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=200.0 +shadowy=200.0 +showui1=1 +showui2=1 +sides1=12 +sides2=9 +sight=1400 +spd=300 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground" +stockmax=1 +stockregen=120 +stockstart=920 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.1 +unitshadow="ShadowFlyer" +unitsound="AzureDragon" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[ubon] +_id="ubon" +_name="boneyard" +_type="unit" +abillist="Abgs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBoneyard.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowBoneYard" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\BoneYard\\BoneYard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=125 +goldrep=125 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1500 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=250 +lumberrep=250 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="埋骨地" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requires="unp2,usap" +requirescount=0 +requirewaterradius=0.0 +researches="Rufb" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤埋骨地(|cffffcc00B|r)" +trains="ufro" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能生产出霜冻巨龙。还包括对冰冻喷吐的研究。" +unitsound="BoneYard" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ubot] +_id="ubot" +_name="undeadtransportship" +_type="unit" +abillist="Sch5,Slo3,Sdro" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadTransport.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=25 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.733 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\UndeadTransportShip\\UndeadTransportShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=170 +goldrep=170 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1500 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="不死族运输船" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=25 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=320 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用运输船(|cffffcc00T|r)" +turnrate=0.4 +type="Mechanical" +ubertip="能够运送单位的运输船。" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ubsp] +_id="ubsp" +_name="obsidiandestroyer" +_type="unit" +abillist="Advm,Afak,Aave,Aabs,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +animprops="alternate" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNDestroyer.blp" +atktype1="magic" +atktype2="normal" +attachmentanimprops="large" +attachmentlinkprops="alternate" +auto="Afak" +backsw1=0.337 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.83 +collision=8.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=0 +def=4.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.633 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\ObsidianStatue\\ObsidianStatue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=5 +goldcost=100 +goldrep=300 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=900 +impactswimz=0.0 +impactz=10.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=55.0 +launchy=115.0 +launchz=10.0 +level=5 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=85 +mana0=0 +manan=400 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\AvengerMissile\\AvengerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=0.85 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="破坏者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=1 +points=100 +prio=8 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=450 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=-3.0 +regentype="blight" +reptm=60 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=350.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=180.0 +shadowonwater=1 +shadoww=180.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=320 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="变形为破坏者(|cffffcc00T|r)" +turnrate=0.4 +type="undead" +ubertip="巨大飞行单位,必须吞噬魔法才能保持其自己的魔法能量。特别擅长于伤害敌人的魔法单位和聚集在一起的敌军。具有魔法免疫,吞噬魔法,吸收魔法和毁灭之球技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="ObsidianDestroyer" +upgrades="Rura,Rucr,Rusp,Rguv" +useclickhelper=0 +walk=350.0 +weapson=1 +weaptp1="msplash" + +[ucrm] +_id="ucrm" +_name="cryptfiendmorph" +_type="unit" +abillist="Aspa,Abur,Aiun" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiend.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.04 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\CryptFiend\\CryptFiend" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="钻入地下的穴居恶魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=10.0 +regenmana=0.0 +regentype="always" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ugrv" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=180.0 +scale=1.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=0 +special=1 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练穴居恶魔(|cffffcc00F|r)" +turnrate=0.5 +type="undead" +ubertip="远程攻击单位。能学习到蛛网和钻地技能。|n|n|cffffcc00能攻击地面单位。|r" +unitsound="CryptFiend" +upgrades="Rura,Rucr,Ruwb,Rubu,Rupm,Rguv" +useclickhelper=0 +walk=180.0 +weapson=0 + +[ucry] +_id="ucry" +_name="cryptfiend" +_type="unit" +abillist="Aweb,Aspa,Abur,Aiun" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCryptFiend.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +auto="Aweb" +backsw1=0.36 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.04 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dependencyor="ucrm" +dice1=1 +dice2=0 +dmgplus1=27 +dmgplus2=0 +dmgpt1=0.64 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\CryptFiend\\CryptFiend" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=550 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=100.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=40 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\CryptFiendMissile\\CryptFiendMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="穴居恶魔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=5 +points=100 +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=550 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ugrv" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.85 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=240.0 +shadowonwater=1 +shadoww=240.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Demon\\DemonLargeDeathExplode\\DemonLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练穴居恶魔(|cffffcc00F|r)" +turnrate=0.5 +type="undead" +ubertip="远程攻击单位。能学习到蛛网和钻地技能。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="CryptFiend" +upgrades="Rura,Rucr,Ruwb,Rubu,Rupm,Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[ucs1] +_id="ucs1" +_name="carrionscarab1" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=16.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.03 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 1)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\scarab\\scarab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=140 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.9 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="腐尸甲虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=63.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="Shadow" +unitsound="Scarab" +upgrades="Rguv" +useclickhelper=0 +walk=63.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ucs2] +_id="ucs2" +_name="carrionscarab2" +_type="unit" +abillist="Abu2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.03 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="ucsB" +dice1=1 +dice2=0 +dmgplus1=14 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\scarab\\scarab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=275 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="腐尸甲虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=0 +red=170 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=63.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1200 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="Shadow" +unitsound="Scarab" +upgrades="Rguv" +useclickhelper=0 +walk=63.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ucs3] +_id="ucs3" +_name="carrionscarab3" +_type="unit" +abillist="Abu3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.64 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=170 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.03 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dependencyor="ucsC" +dice1=1 +dice2=0 +dmgplus1=21 +dmgplus2=0 +dmgpt1=0.33 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\scarab\\scarab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=410 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="腐尸甲虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=63.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1200 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="Shadow" +unitsound="Scarab" +upgrades="Rguv" +useclickhelper=0 +walk=63.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" + +[ucsB] +_id="ucsB" +_name="carrionscarabburrowed2" +_type="unit" +abillist="Abu2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.03 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 2)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\scarab\\scarab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=275 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.1 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="钻入地下的腐尸甲虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=170 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=63.0 +scale=1.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitsound="Scarab" +upgrades="Rguv" +useclickhelper=0 +walk=63.0 +weapson=0 + +[ucsC] +_id="ucsC" +_name="carrionscarabburrowed3" +_type="unit" +abillist="Abu3" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNCarrionScarabs.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=170 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.3 +collision=48.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.03 +deathtype=0 +def=2.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (等级 3)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\scarab\\scarab" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=170 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=410 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=60.0 +maxroll=60.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.3 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="钻入地下的腐尸甲虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=4 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=63.0 +scale=1.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1200 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitsound="Scarab" +upgrades="Rguv" +useclickhelper=0 +walk=63.0 +weapson=0 + +[udes] +_id="udes" +_name="undeaddestroyer" +_type="unit" +acquire=650.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadDestroyer.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=5 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.733 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=54 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\creeps\\UndeadDestroyerShip\\UndeadDestroyerShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=250 +goldrep=250 +green=255 +harea1=35 +harea2=0 +hfact1=0.3 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=575 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=0.0 +level=4 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=100 +lumberrep=100 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="不死族族护卫舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1000 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=50 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=30 +repulse=1 +repulsegroup=1 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=3.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=90.0 +shadowy=90.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1500 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=60 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用驱逐舰(|cffffcc00F|r)" +turnrate=0.2 +type="Mechanical" +ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="msplash" + +[ufro] +_id="ufro" +_name="frostwyrm" +_type="unit" +abillist="Afrz,Afrb" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNFrostWyrm.blp" +atktype1="pierce" +atktype2="pierce" +attachmentanimprops="large" +backsw1=0.55 +backsw2=0.55 +bldtm=80 +blend=0.4 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.4 +castpt=0.5 +collision=8.0 +cool1=3.0 +cool2=3.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.0 +deathtype=0 +def=1.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=1 +dmgplus1=83 +dmgplus2=83 +dmgpt1=0.5 +dmgpt2=0.5 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=2 +elevrad=100.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\undead\\FrostWyrm\\FrostWyrm" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=7 +goldcost=385 +goldrep=385 +green=255 +harea1=50 +harea2=0 +hfact1=0.2 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="F" +hp=1350 +impactswimz=0.0 +impactz=0.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=115.0 +launchz=-60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=120 +lumberrep=120 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FrostWyrmMissile\\FrostWyrmMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=800 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="冰霜巨龙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=6 +propwin=61.0 +qarea1=200 +qarea2=0 +qfact1=0.1 +qfact2=0.0 +race="undead" +rangen1=300 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=80 +repulse=1 +repulsegroup=0 +repulseparam=1 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=2.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=280.0 +shadowonwater=1 +shadoww=280.0 +shadowx=140.0 +shadowy=140.0 +showui1=1 +showui2=1 +sides1=11 +sides2=11 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,air,structure,debris,enemy" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="air" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练冰霜巨龙(|cffffcc00F|r)" +turnrate=0.4 +type="undead" +ubertip="重型的飞行单位,能学习到冰冻喷吐技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="FrostWyrm" +upgrades="Rura,Rucr,Rufb,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="msplash" +weaptp2="msplash" + +[ugar] +_id="ugar" +_name="gargoyle" +_type="unit" +abillist="Astn" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNGargoyle.blp" +atktype1="normal" +atktype2="pierce" +attachmentanimprops="medium" +backsw1=1.0 +backsw2=0.7 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=8.0 +cool1=1.4 +cool2=2.2 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=2.5 +deathtype=0 +def=3.0 +deftype="none" +defup=2.0 +dependencyor="ugrm" +dice1=1 +dice2=1 +dmgplus1=60 +dmgplus2=17 +dmgpt1=0.33 +dmgpt2=0.633 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Gargoyle\\Gargoyle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=185 +goldrep=185 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=410 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=25.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=33.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GargoyleMissile\\GargoyleMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=90.0 +moveheight=240.0 +movetp="fly" +name="石像鬼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=128 +rangen2=300 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=35 +repulse=1 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ugrv,unp2" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=230.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=10 +sides2=4 +sight=1600 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="air" +targs2="ground,structure,debris,item,ward" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练石像鬼(|cffffcc00A|r)" +turnrate=0.5 +type="undead" +ubertip="飞行单位。能学习到石像形态技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="ShadowFlyer" +unitsound="Gargoyle" +upgrades="Rura,Rucr,Rusf,Rguv" +useclickhelper=0 +walk=200.0 +weapson=3 +weaptp1="normal" +weaptp2="missile" +weaptype1="WoodMediumBash" + +[ugho] +_id="ugho" +_name="ghoul" +_type="unit" +abillist="Acan,Ahrl,Aiun" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGhoul.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.433 +bldtm=18 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.3 +cool2=1.35 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.67 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=2 +dice2=2 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.39 +dmgpt2=0.433 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Ghoul\\Ghoul" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=2 +goldcost=120 +goldrep=120 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="G" +hp=330 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="食尸鬼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=66 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=120.0 +run=220.0 +scale=1.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=2 +sides2=1 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targs2="tree" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练食尸鬼(|cffffcc00G|r)" +turnrate=0.5 +type="undead" +ubertip="基本的地面单位,也能采集木材。能学习到吞食尸体和食尸鬼狂热技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="Ghoul" +upgrades="Ruar,Rume,Rugf,Ruac,Rupm,Rguv" +useclickhelper=0 +walk=220.0 +weapson=3 +weaptp1="normal" +weaptp2="normal" +weaptype1="WoodMediumBash" +weaptype2="AxeMediumChop" + +[ugol] +_id="ugol" +_name="undeadgoldmine2" +_type="unit" +abillist="Abgl,Abgm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNGoldMine.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=100 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=7.0 +bufftype="resource" +buildingshadow="BuildingShadowLarge" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\HauntedMine\\HauntedMine" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=1 +hotkey="G" +hp=950 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=1 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=220 +lumberrep=220 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="闹鬼金矿" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\16x16Goldmine.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=100 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="闹鬼金矿(|cffffcc00G|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="在金矿被闹鬼了之后侍僧才可以从中采集黄金资源。" +unitsound="HauntedMine" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ugrm] +_id="ugrm" +_name="gargoylemorphed" +_type="unit" +abillist="Astn,ACmi" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNStoneForm.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +attachmentlinkprops="alternate" +backsw1=0.0 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=15.0 +deftype="none" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Gargoyle\\Gargoyle" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=185 +goldrep=185 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="A" +hp=410 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\GargoyleMissile\\GargoyleMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="石像形态下的石像鬼" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="ugrv,unp2" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=200.0 +shadowonwater=1 +shadoww=200.0 +shadowx=100.0 +shadowy=100.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练石像鬼(|cffffcc00A|r)" +turnrate=0.5 +type="undead" +ubertip="飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Gargoyle" +upgrades="Rura,Rucr,Rusf,Rguv" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ugrv] +_id="ugrv" +_name="graveyard" +_type="unit" +abillist="Abgs,Agyd,Arlm" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNGraveyard.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=80 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Graveyard\\Graveyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="V" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="坟场" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=80 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +researches="Rume,Ruar,Rura,Rucr" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤坟场(|cffffcc00V|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能对不死族单位的攻防进行升级。也能产生尸体和存放收集到木材资源。" +unitsound="Graveyard" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uktg] +_id="uktg" +_name="kelthuzadghost" +_type="unit" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNGhostOfKelThuzad.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=200 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="large" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (幽灵)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\KelThuzadGhost\\KelThuzadGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=280 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="克尔苏加德" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=125 +regenhp=0.5 +regenmana=0.5 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1400 +spd=240 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="Shadow" +unitsound="KelThuzadLich" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uktn] +_id="uktn" +_name="kelthuzadnecro" +_type="unit" +abillist="Acri,Arai,Auhf" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNKelThuzad.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=200 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=8 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (不死族巫师)" +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Kelthuzad\\Kelthuzad" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=195 +goldrep=195 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=280 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.15 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="克尔苏加德" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=0 +red=125 +regenhp=0.5 +regenmana=0.5 +regentype="night" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=140.0 +shadowonwater=1 +shadoww=140.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=240 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="Shadow" +unitsound="KelThuzadNecro" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[uloc] +_id="uloc" +_name="locust" +_type="unit" +abillist="Aloc" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNLocustSwarm.blp" +atktype1="spells" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.0 +castpt=0.0 +collision=8.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.0 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=12 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Locust\\Locust" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=65 +impactswimz=0.0 +impactz=0.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=0.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\LocustMissile\\LocustMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=500 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=45.0 +moveheight=150.0 +movetp="fly" +name="蝗虫" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=170.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=10 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=700.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=35.0 +shadowonwater=1 +shadoww=35.0 +shadowx=17.0 +shadowy=17.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=0 +spd=400 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,air,item" +targtype="air" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.2 +type="undead" +unitshadow="ShadowFlyer" +useclickhelper=0 +walk=700.0 +weapson=1 +weaptp1="missile" + +[umtw] +_id="umtw" +_name="meatwagon" +_type="unit" +abillist="Sch2,Amel,Amed,Apts,Aexh" +acquire=1150.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNMeatWagon.blp" +atktype1="siege" +atktype2="siege" +attachmentanimprops="large" +backsw1=1.3 +backsw2=1.3 +bldtm=36 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=2 +castbsw=0.51 +castpt=0.5 +collision=48.0 +cool1=4.0 +cool2=4.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=2 +def=2.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=1 +dmgplus1=70 +dmgplus2=70 +dmgpt1=0.7 +dmgpt2=0.7 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=25 +farea2=0 +fatlos=0 +file="units\\undead\\MeatWagon\\MeatWagon" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=4 +goldcost=230 +goldrep=230 +green=255 +harea1=50 +harea2=0 +hfact1=0.4 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=380 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=-30.0 +launchz=150.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=45.0 +maxroll=45.0 +maxspd=0 +minrange=250 +minspd=0 +"missilearc:1"=0.3 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\MeatwagonMissile\\MeatwagonMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="绞肉车" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=1 +points=100 +prio=3 +propwin=30.0 +qarea1=150 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="undead" +rangen1=1150 +rangen2=1000 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=36 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=250.0 +run=150.0 +scale=2.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=260.0 +shadowonwater=1 +shadoww=260.0 +shadowx=120.0 +shadowy=120.0 +showui1=1 +showui2=1 +sides1=18 +sides2=18 +sight=1400 +spd=220 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,debris,tree,wall,item,ward" +targs2="structure" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练绞肉车(|cffffcc00M|r)" +turnrate=0.6 +type="Mechanical" +ubertip="能存放尸体,也是一种远程的攻城武器。对付建筑物特别地有效,但是自己本身也移动缓慢而容易遭受攻击。还能学习到疾病云雾技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +unitshadow="Shadow" +unitsound="MeatWagon" +upgrades="Rupc,Rume,Rguv" +useclickhelper=0 +walk=150.0 +weapson=3 +weaptp1="artillery" +weaptp2="missile" + +[unec] +_id="unec" +_name="necromancer" +_type="unit" +abillist="Acri,Arai,Auhf,Aiun" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNNecromancer.blp" +atktype1="magic" +atktype2="normal" +backsw1=0.47 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=25 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.5 +casterupgradeart="UI\\Widgets\\Console\\Human\\infocard-necromancer.blp" +casterupgradename="初级,专家级,大师级" +casterupgradetip="- 复活死尸,- 复活死尸|n- 邪恶狂热,- 复活死尸|n- 邪恶狂热|n- 残废" +castpt=0.5 +collision=16.0 +cool1=1.8 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.5 +deathtype=3 +def=0.0 +deftype="none" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=7 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Necromancer\\Necromancer" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=145 +goldrep=145 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=305 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=20 +mana0=75 +manan=200 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\NecromancerMissile\\NecromancerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="不死族巫师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=600 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.66666666666667 +regentype="blight" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练不死族巫师(|cffffcc00N|r)" +turnrate=0.6 +type="undead" +ubertip="一种魔法单位。一开始能施放复活死尸技能。随后还能学习到邪恶狂热和残废技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Necromancer" +upgrades="Rusl,Rune,Rusm,Rupm,Rguv" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[unp1] +_id="unp1" +_name="necropolis1" +_type="unit" +abillist="Abgl,Arlm" +acquire=800.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNHallOfTheDead.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowHallsoftheDead" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=196.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=40 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Necropolis\\Necropolis" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=320 +goldrep=575 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=1750 +impactswimz=0.0 +impactz=260.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=210 +lumberrep=210 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ZigguratMissile\\ZigguratMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="亡者大厅" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\UndeadNecropolis.tga" +points=100 +preventplace="unbuildable" +prio=7 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=800 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rupm" +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=0 +showui2=1 +sides1=10 +sides2=0 +sight=1200 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到亡者大厅(|cffffcc00U|r)" +trains="uaco" +turnrate=0.0 +type="TownHall,undead,Mechanical" +ubersplat="ULAR" +ubertip="升级到了亡者大厅之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="Necropolisu1" +upgrade="unp2" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[unp2] +_id="unp2" +_name="necropolis2" +_type="unit" +abillist="Abgl,Arlm" +acquire=800.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNBlackCitadel.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=140 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowBlackCitidel" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=196.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=48 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Necropolis\\Necropolis" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=345 +goldrep=920 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="U" +hp=2000 +impactswimz=0.0 +impactz=260.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=250 +lumberrep=460 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ZigguratMissile\\ZigguratMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="黑色城堡" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\UndeadNecropolis.tga" +points=100 +preventplace="unbuildable" +prio=8 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=800 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="uaod" +requirescount=0 +requirewaterradius=0.0 +researches="Rupm" +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=0 +showui2=1 +sides1=12 +sides2=0 +sight=1200 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="黑色城堡(|cffffcc00U|r)" +trains="uaco" +turnrate=0.0 +type="TownHall,undead,Mechanical" +ubersplat="ULAR" +ubertip="升级到了亡者大厅之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="Necropolisu2" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[unpl] +_id="unpl" +_name="necropolis" +_type="unit" +abillist="Abgl,Arlm" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNNecropolis.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.0 +backsw2=0.0 +bldtm=120 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=8.0 +bufftype="townhall" +buildingshadow="ShadowNecropolis" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=196.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Necropolis\\Necropolis" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=255 +goldrep=255 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=1500 +impactswimz=0.0 +impactz=260.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ZigguratMissile\\ZigguratMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="大墓地" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\UndeadNecropolis.tga" +points=100 +preventplace="unbuildable" +prio=6 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=120 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +researches="Rupm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=6.6 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=0 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤大墓地(|cffffcc00N|r)" +trains="uaco" +turnrate=0.0 +type="TownHall,undead,Mechanical" +ubersplat="ULAR" +ubertip="不死族的基本建筑物。能训练出侍僧和存贮采集到木材资源。在升级到了亡者大厅和黑色城堡之后能让玩家建造许多新的建筑物和单位。" +unitsound="Necropolis" +upgrade="unp1" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uobs] +_id="uobs" +_name="obsidianstatue" +_type="unit" +abillist="Arpl,Arpm,Aave" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNObsidianStatue.blp" +atktype1="magic" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.47 +backsw2=0.0 +bldtm=35 +blend=0.3 +blue=255 +bountydice=8 +bountyplus=30 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=0 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=32.0 +cool1=2.1 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=4.0 +deftype="large" +defup=2.0 +dependencyor="ubsp" +dice1=1 +dice2=0 +dmgplus1=6 +dmgplus2=0 +dmgpt1=0.53 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\ObsidianStatue\\ObsidianStatue" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=3 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="O" +hp=800 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=2 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=35 +lumberrep=35 +mana0=400 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FarseerMissile\\FarseerMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="十胜石雕像" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=1 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=575 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=1.5 +regentype="none" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requires="utom" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=210.0 +scale=2.1 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=230.0 +shadowonwater=1 +shadoww=230.0 +shadowx=95.0 +shadowy=95.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1200 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="建造十胜石雕像(|cffffcc00O|r)" +turnrate=0.5 +type="Mechanical" +ubertip="一种坚固的雕像,能帮助你恢复自己部队的生命值和魔法值。具有灵魂触摸,枯萎精髓技能,还可以学习到破坏者形态技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ObsidianStatue" +upgrades="Rusp,Rguv" +useclickhelper=0 +walk=210.0 +weapson=1 +weaptp1="missile" + +[uplg] +_id="uplg" +_name="plagueward" +_type="unit" +abillist="Aap2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\PassiveButtons\\PASBTNPlagueCloud.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=1 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.94 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\PlagueCloud\\PlagueCloud" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=100 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=25.0 +maxroll=25.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="amph" +name="疾病云雾" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=0 +occh=0.0 +orientinterp=0 +points=100 +prio=0 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=1 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=0.75 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=0 +spd=0 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ward" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.0 +unitsound="PlagueCloud" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=0 + +[usap] +_id="usap" +_name="sacrificialpit" +_type="unit" +abillist="Abgs,Asac" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSacrificialPit.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=45 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowSacrificialPit" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\SacrificialPit\\SacrificialPit" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=75 +goldrep=75 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="S" +hp=900 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=7.0 +maxroll=7.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="牺牲深渊" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=4 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=45 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requires="unp1" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤牺牲深渊(|cffffcc00S|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能将侍僧转化成阴影。阴影是一种能看见敌方隐形单位的隐形单位。自己本身也不能攻击敌人。" +unitsound="SacrificialPit" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[usep] +_id="usep" +_name="crypt" +_type="unit" +abillist="Abgs" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNCrypt.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowCrypt" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Crypt\\Crypt" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=200 +goldrep=200 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=1300 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="地穴" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=9 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +researches="Ruac,Ruwb,Rugf,Rusf,Rubu" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤地穴(|cffffcc00C|r)" +trains="ugho,ucry,ugar" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="主要的产兵建筑物,能训练出食尸鬼,穴居恶魔和石像鬼。还包括对食尸鬼狂热,吞食尸体,石像形态,蛛网和钻地的研究。" +unitsound="Crypt" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ushd] +_id="ushd" +_name="shade" +_type="unit" +abillist="Atru,Agho" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNShade.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=15 +blend=1.5 +blue=255 +bountydice=5 +bountyplus=15 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=16.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Shade\\Shade" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=1 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=125 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=30.0 +movetp="hover" +name="阴影" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=1 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=15 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=60.0 +shadowy=60.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1900 +spd=350 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练阴影" +turnrate=0.6 +type="undead" +ubertip="一个永远隐形的灵魂,能看见其他隐形单位,但是不能进攻。" +unitshadow="Shadow" +unitsound="Shade" +upgrades="Rguv" +useclickhelper=0 +walk=200.0 +weapson=0 + +[ushp] +_id="ushp" +_name="undeadshipyard" +_type="unit" +abillist="Abgs,Ane2" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadShipyard.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="BuildingShadowLarge" +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=0 +def=2.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=100.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\UndeadShipyard\\UndeadShipyard" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=50 +goldrep=50 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=750 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="不死族船坞" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=500 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unwalkable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=384.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.75 +scalebull=1 +selcirconwater=0 +sellunits="ubot,udes" +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=500 +spd=0 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="船坞(|cffffcc00H|r)" +turnrate=0.0 +type="Mechanical,neutral" +ubersplat="HMED" +ubertip="造船工厂,能制造出不死族的运输船,护卫舰和战舰。" +unitsound="GoblinShipyard" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uske] +_id="uske" +_name="skeletonwarrior" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonWarrior.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.44 +backsw2=0.0 +bldtm=18 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=1.0 +deftype="large" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=13 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\Skeleton\\Skeleton" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=180 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅战士" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=90 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=18 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=800 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤骷髅战士" +turnrate=0.5 +type="undead" +unitshadow="Shadow" +unitsound="Skeleton" +upgrades="Ruar,Rume,Rusl,Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumSlice" + +[uskm] +_id="uskm" +_name="skeletalmage" +_type="unit" +acquire=700.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNSkeletonMage.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.5 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=3 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.5 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=5.034 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=20.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\undead\\SkeletonMage\\SkeletonMage" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=0 +goldcost=0 +goldrep=0 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=230 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=-10.0 +launchy=75.0 +launchz=70.0 +level=1 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\SkeletalMageMissile\\SkeletalMageMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="骷髅魔法师" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=900 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=500 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.0 +regentype="blight" +reptm=30 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=180.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1400 +spd=270 +special=1 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤骷髅魔法师" +turnrate=0.5 +type="undead" +unitshadow="Shadow" +unitsound="Skeleton" +upgrades="Ruar,Rume,Rusl,Rguv" +useclickhelper=0 +walk=180.0 +weapson=1 +weaptp1="missile" + +[uslh] +_id="uslh" +_name="slaughterhouse" +_type="unit" +abillist="Abgs" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNSlaughterhouse.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowSlaughterHouse" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=3 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Slaughterhouse\\Slaughterhouse" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=140 +goldrep=140 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=1200 +impactswimz=0.0 +impactz=200.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=135 +lumberrep=135 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="屠宰场" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requires="unp1,ugrv" +requirescount=0 +requirewaterradius=0.0 +researches="Rupc,Rusp,Ruex" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤屠宰场(|cffffcc00H|r)" +trains="umtw,uabo,uobs" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能生产出憎恶、绞肉车和十胜石雕像。还包括对疾病云雾,破坏者形态的研究。" +unitsound="Slaughterhouse" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uswb] +_id="uswb" +_name="sylvanusbanshee" +_type="unit" +abillist="ACam,Acrs" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Ethereal" +art="ReplaceableTextures\\CommandButtons\\BTNGhost.blp" +atktype1="normal" +atktype2="normal" +auto="Acrs" +backsw1=0.51 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.83 +castpt=0.5 +collision=32.0 +cool1=1.4 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.17 +deathtype=0 +def=3.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=20 +dmgplus2=0 +dmgpt1=0.56 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (女妖)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="units\\creeps\\BansheeGhost\\BansheeGhost" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=225 +goldrep=225 +green=150 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hp=400 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=75 +manan=300 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BansheeMissile\\BansheeMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.3 +movefloor=0.0 +moveheight=50.0 +movetp="hover" +name="追风之西尔瓦娜斯" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=2 +points=100 +prio=7 +propwin=61.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=500 +rangen2=0 +red=120 +regenhp=1.0 +regenmana=0.8 +regentype="always" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=1.3 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=9 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UndeadLargeDeathExplode\\UndeadLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +turnrate=0.6 +type="undead" +unitshadow="ShadowFlyer" +unitsound="Banshee" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[utod] +_id="utod" +_name="templeofthedamned" +_type="unit" +abillist="Abgs" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNTempleOfTheDamned.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=9.0 +bufftype="factory" +buildingshadow="ShadowTempleoftheDamned" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=2 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=144.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\TempleOfTheDamned\\TempleOfTheDamned" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=155 +goldrep=155 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=1100 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=140 +lumberrep=140 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="诅咒神庙" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=5 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requires="unp1,ugrv" +requirescount=0 +requirewaterradius=0.0 +researches="Rune,Ruba,Rusl,Rusm" +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=900 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤诅咒神庙(|cffffcc00T|r)" +trains="unec,uban" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="能训练出不死族巫师和女妖。|n还包括对不死族巫师和女妖的升级,骨质增强术和骷髅法术也是在这里研究的。" +unitsound="TempleOfTheDamned" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[utom] +_id="utom" +_name="tombofrelics" +_type="unit" +abillist="Aall,Abgs,Apit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNTombOfRelics.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=60 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=0.0 +buildingshadow="ShadowTombOfRelics" +"buttonpos:1"=2 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=50.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=2.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\TombOfRelics\\TombOfRelics" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=0 +goldcost=130 +goldrep=130 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=475 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +makeitems="rnec,plcl,skul,phea,pman,stwp,ocor,shea" +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="古墓废墟" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=750 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\12x12Simple.tga" +points=100 +preventplace="unbuildable" +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=60 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=5.5 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1000 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤古墓废墟(|cffffcc00R|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="UMED" +ubertip="建造出一个能出售物品的商店。商店内的物品种类取决于你的大墓地的升级情况(大墓地, 亡者大厅, 黑色城堡)以及你所拥有的建筑物种类。" +unitsound="TombOfRelics" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[uubs] +_id="uubs" +_name="undeadbattleship" +_type="unit" +acquire=900.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNUndeadBattleShip.blp" +atktype1="siege" +atktype2="normal" +attachmentanimprops="large" +backsw1=0.3 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=2.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.73 +deathtype=0 +def=5.0 +deftype="large" +defup=2.0 +dice1=3 +dice2=0 +dmgplus1=75 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=100 +farea2=0 +fatlos=0 +file="units\\creeps\\UndeadShipBattleShip\\UndeadShipBattleShip" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=3 +fused=0 +goldcost=500 +goldrep=500 +green=255 +harea1=150 +harea2=0 +hfact1=0.5 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="B" +hp=1000 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=0.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.1 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\BoatMissile\\BoatMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="float" +name="不死族战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=1200 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=250 +qarea2=0 +qfact1=0.25 +qfact2=0.0 +race="undead" +rangen1=900 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=4.0 +scalebull=1 +selcirconwater=1 +selz=0.0 +shadowh=400.0 +shadowonwater=1 +shadoww=400.0 +shadowx=180.0 +shadowy=180.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1600 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +splashtargs1="ground,structure,debris,tree,wall,enemy,neutral" +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="雇用战舰(|cffffcc00B|r)" +turnrate=0.1 +type="Mechanical" +ubertip="强大的攻城舰船能够很好地攻击地面建筑物和敌人的船只。|n|n|cffffcc00攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="artillery" + +[uzg1] +_id="uzg1" +_name="ziggurat1" +_type="unit" +abillist="Abgs" +acquire=900.0 +agi=0 +agiplus=0.0 +animprops="upgrade,first" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNZigguratUpgrade.blp" +atktype1="pierce" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=35 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowZiggurat" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=120.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=26 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Ziggurat\\Ziggurat" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=145 +goldrep=295 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="T" +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=145.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=40 +lumberrep=90 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ZigguratMissile\\ZigguratMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="幽魂之塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requires="ugrv" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=6 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级到幽魂之塔(|cffffcc00T|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="USMA" +ubertip="防御性建筑物。|n|n|cffffcc00能攻击地面和空中单位。|r" +unitsound="ZigguratUpgrade" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[uzg2] +_id="uzg2" +_name="frosttower" +_type="unit" +abillist="Abgs,Afra" +acquire=900.0 +agi=0 +agiplus=0.0 +animprops="upgrade,second" +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNFrostTower.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.5 +backsw2=0.0 +bldtm=30 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowZiggurat" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=1 +"buttonpos:2"=2 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=120.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=1 +dice2=0 +dmgplus1=10 +dmgplus2=0 +dmgpt1=0.5 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Ziggurat\\Ziggurat" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=100 +goldrep=250 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="N" +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=145.0 +level=1 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=20 +lumberrep=70 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\ZigguratFrostMissile\\ZigguratFrostMissile.mdl" +"missilehoming:1"=1 +"missilehoming:2"=0 +"missilespeed:1"=1200 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="蛛网怪塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=3 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=700 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=35 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=2 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="升级蛛网怪塔(|cffffcc00N|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="USMA" +ubertip="升级到防御建筑,造成冰冻伤害,减慢敌人单位速度。|n|n|cffffcc00攻击地面和空中单位|r" +unitsound="FrostTower" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=1 +weaptp1="missile" + +[uzig] +_id="uzig" +_name="ziggurat" +_type="unit" +abillist="Abgs" +acquire=0.0 +agi=0 +agiplus=0.0 +armor="Stone" +art="ReplaceableTextures\\CommandButtons\\BTNZiggurat.blp" +atktype1="normal" +atktype2="normal" +attachmentanimprops="medium" +backsw1=0.0 +backsw2=0.0 +bldtm=50 +blend=0.15 +blue=255 +bountydice=0 +bountyplus=0 +bountysides=0 +buffradius=15.0 +bufftype="buffer" +buildingshadow="ShadowZiggurat" +buildingsoundlabel="UndeadBuildingConstructionLoop" +"buttonpos:1"=0 +"buttonpos:2"=1 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=0 +castbsw=0.51 +castpt=0.0 +collision=120.0 +cool1=0.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=2 +def=5.0 +deftype="fort" +defup=1.0 +dice1=0 +dice2=0 +dmgplus1=0 +dmgplus2=0 +dmgpt1=0.0 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=4 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="buildings\\undead\\Ziggurat\\Ziggurat" +fileverflags=0 +fmade=10 +fograd=0.0 +formation=0 +fused=0 +goldcost=150 +goldrep=150 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="Z" +hp=550 +impactswimz=0.0 +impactz=120.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=1 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=0 +loopingsoundfadein=512 +loopingsoundfadeout=512 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=50 +lumberrep=50 +mana0=0 +manan=0 +maxpitch=15.0 +maxroll=15.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +name="通灵塔" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=600 +occh=0.0 +orientinterp=0 +pathtex="PathTextures\\6x6SimpleSolid.tga" +points=100 +preventplace="unbuildable" +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="undead" +rangen1=0 +rangen2=0 +red=255 +regenhp=0.0 +regenmana=0.0 +regentype="none" +reptm=50 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requireplace="blighted" +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=0.0 +rngbuff2=0.0 +run=200.0 +scale=4.25 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=0.0 +shadowonwater=1 +shadoww=0.0 +shadowx=0.0 +shadowy=0.0 +showui1=1 +showui2=1 +sides1=0 +sides2=0 +sight=1600 +spd=0 +special=0 +specialart="Objects\\Spawnmodels\\Undead\\UCancelDeath\\UCancelDeath.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=0 +stockregen=0 +stockstart=0 +str=0 +strplus=0.0 +targcount1=0 +targcount2=1 +targtype="structure" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="召唤通灵塔(|cffffcc00Z|r)" +turnrate=0.0 +type="undead,Mechanical" +ubersplat="USMA" +ubertip="能提供人口,从而增加可造单位数量的最大值。在经过升级以后能变成一个可以攻击地面单位和空中单位的建筑物。" +unitsound="Ziggurat" +upgrade="uzg1,uzg2" +upgrades="Rgfo" +useclickhelper=0 +walk=200.0 +weapson=0 + +[zcso] +_id="zcso" +_name="chaosspaceorc" +_type="unit" +abillist="Arng" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNChaosSpaceOrc.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=60 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.17 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\ChaosSpaceOrc\\ChaosSpaceOrc" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="C" +hp=540 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=10 +lumberrep=10 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Rifle\\RifleImpact.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="空间邪恶兽族" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=300 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=5 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练空间邪恶兽族(|cffffcc00C|r)" +turnrate=0.6 +ubertip="邪恶的兽族被送往空间为恶魔军团而战。装备有强大的火焰喷射器,他们能够大量杀伤团聚在一起的敌人军队。|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="ChaosSpaceOrc" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" + +[zhyd] +_id="zhyd" +_name="hydralisk" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNHydralisk.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=7 +bountyplus=100 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=1.0 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=4 +dice2=0 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\Hydralisk\\Hydralisk" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=3 +goldcost=280 +goldrep=280 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="H" +hp=700 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=7 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\HydraliskImpact\\HydraliskImpact.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="刺蛇" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=10 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练刺蛇(|cffffcc00H|r)" +turnrate=0.6 +ubertip="强大的虫族生物,熟练于用包裹着酸液的脊液射弹摧毁敌人。|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="Hydralisk" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="instant" + +[zjug] +_id="zjug" +_name="orcjuggernaut" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Wood" +art="ReplaceableTextures\\CommandButtons\\BTNJuggernaut.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=1.6 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=0 +def=0.0 +deftype="small" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.17 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +editorsuffix=" (过场动画)" +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\OrcJuggernaught\\OrcJuggernaught" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=205 +goldrep=205 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="R" +hp=520 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=30 +lumberrep=30 +mana0=0 +manan=0 +maxpitch=0.0 +maxroll=0.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=1.0 +movetp="fly" +name="兽族魔力战舰" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=3 +points=100 +prio=2 +propwin=15.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=1 +repulsegroup=1 +repulseparam=2 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练兽族神像(|cffffcc00R|r)" +turnrate=0.1 +type="Mechanical" +ubertip="巨大的战舰,擅长破坏敌人的舰只和从海上轰炸近海的建筑物。|n|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Boat" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="msplash" + +[zmar] +_id="zmar" +_name="marine" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNMarine.blp" +atktype1="pierce" +atktype2="normal" +backsw1=0.7 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=6 +bountyplus=60 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=32.0 +cool1=0.9 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.17 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\Marine\\Marine" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=2 +goldcost=215 +goldrep=215 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=520 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\Rifle\\RifleImpact.mdl" +"missileart:2"="Abilities\\Weapons\\Rifle\\RifleImpact.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1900 +"missilespeed:2"=1900 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="马里恩" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=400 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +specialart="Objects\\Spawnmodels\\Human\\HumanLargeDeathExplode\\HumanLargeDeathExplode.mdl" +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=30 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练" +turnrate=0.6 +ubertip="强大的人族海军陆战队,装备有自动脉冲来复枪。|n|cffffcc00能攻击地面和空中单位。|r" +unitshadow="Shadow" +unitsound="TerranMarine" +upgrades="Rhla,Rhra,Rhri" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="instant" + +[zshv] +_id="zshv" +_name="theshoveler" +_type="unit" +abillist="ACcl" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTemp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.6 +backsw2=0.0 +bldtm=20 +blend=0.15 +blue=165 +bountydice=9 +bountyplus=300 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=1 +cargosize=1 +castbsw=0.51 +castpt=0.5 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=3.0 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=5 +dice2=0 +dmgplus1=200 +dmgplus2=0 +dmgpt1=0.38 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=30.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\Shoveler\\Shoveler" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=0 +fused=5 +goldcost=680 +goldrep=680 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="K" +hp=850 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=10 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=200 +lumberrep=200 +mana0=600 +manan=600 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=0.85 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小鬼挖掘者" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=1 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=100 +rangen2=0 +red=255 +regenhp=2.0 +regenmana=0.8 +regentype="always" +reptm=20 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=150.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=100.0 +shadowonwater=1 +shadoww=100.0 +shadowx=45.0 +shadowy=45.0 +showui1=1 +showui2=1 +sides1=15 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=1 +stockregen=120 +stockstart=440 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练小鬼挖掘者(|cffffcc00K|r)" +turnrate=0.5 +ubertip="暴雪的副总裁,法兰克-皮尔斯。强大的程序员,擅长打断笑话和完成任务。|n|n|cffffcc00攻击程序错误。|r" +unitshadow="Shadow" +unitsound="Kobold" +useclickhelper=0 +walk=150.0 +weapson=1 +weaptp1="normal" +weaptype1="MetalMediumChop" + +[zsmc] +_id="zsmc" +_name="sammycube" +_type="unit" +acquire=600.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNTemp.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.85 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=8 +bountyplus=200 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=0 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=48.0 +cool1=2.13 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=0.1 +deathtype=0 +def=0.0 +deftype="medium" +defup=2.0 +dice1=2 +dice2=0 +dmgplus1=80 +dmgplus2=0 +dmgpt1=0.55 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\SammyCube\\SammyCube" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=4 +goldcost=425 +goldrep=425 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="M" +hp=500 +impactswimz=0.0 +impactz=60.0 +ineditor=0 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=6 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=150 +lumberrep=150 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.15 +"missilearc:2"=0.0 +"missileart:1"="Abilities\\Weapons\\FireBallMissile\\FireBallMissile.mdl" +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=900 +"missilespeed:2"=0 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="大兵" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=600 +rangen2=0 +red=255 +regenhp=1.0 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.2 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=160.0 +shadowonwater=1 +shadoww=160.0 +shadowx=70.0 +shadowy=70.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,air,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练美国大兵(Sa|cffffcc00M|r)" +turnrate=0.6 +ubertip="艺术指导,山姆-戴迪。擅长概念艺术和纹理制作,有很多艺术青年当他的小弟给他卖命。|n|n|cffffcc00攻击糟糕的艺术。|r" +unitshadow="Shadow" +unitsound="SammyCube" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="missile" + +[zzrg] +_id="zzrg" +_name="zergling" +_type="unit" +acquire=500.0 +agi=0 +agiplus=0.0 +armor="Flesh" +art="ReplaceableTextures\\CommandButtons\\BTNZergling.blp" +atktype1="normal" +atktype2="normal" +backsw1=0.3 +backsw2=0.0 +bldtm=26 +blend=0.15 +blue=255 +bountydice=3 +bountyplus=20 +bountysides=3 +buffradius=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +campaign=1 +canbuildon=0 +canflee=1 +cansleep=0 +cargosize=1 +castbsw=0.51 +castpt=0.0 +collision=31.0 +cool1=1.35 +cool2=0.0 +customteamcolor=0 +damageloss1=0.0 +damageloss2=0.0 +death=1.7 +deathtype=3 +def=0.0 +deftype="medium" +defup=2.0 +dice1=1 +dice2=0 +dmgplus1=21 +dmgplus2=0 +dmgpt1=0.3 +dmgpt2=0.0 +dmgup1=0 +dmgup2=0 +dropitems=1 +elevpts=0 +elevrad=50.0 +farea1=0 +farea2=0 +fatlos=0 +file="Units\\Critters\\zergling\\zergling" +fileverflags=0 +fmade=0 +fograd=0.0 +formation=2 +fused=1 +goldcost=85 +goldrep=85 +green=255 +harea1=0 +harea2=0 +hfact1=0.0 +hfact2=0.0 +hideherobar=0 +hideherodeathmsg=0 +hideherominimap=0 +hideonminimap=0 +hostilepal=0 +hotkey="Z" +hp=250 +impactswimz=0.0 +impactz=60.0 +ineditor=1 +int=0 +intplus=0.0 +isbldg=0 +isbuildon=0 +launchswimz=0.0 +launchx=0.0 +launchy=0.0 +launchz=60.0 +level=3 +loopingsoundfadein=0 +loopingsoundfadeout=0 +lumberbountydice=0 +lumberbountyplus=0 +lumberbountysides=0 +lumbercost=0 +lumberrep=0 +mana0=0 +manan=0 +maxpitch=10.0 +maxroll=10.0 +maxspd=0 +minrange=0 +minspd=0 +"missilearc:1"=0.0 +"missilearc:2"=0.0 +"missilehoming:1"=0 +"missilehoming:2"=0 +"missilespeed:1"=1500 +"missilespeed:2"=1500 +modelscale=1.0 +movefloor=0.0 +moveheight=0.0 +movetp="foot" +name="小狗" +namecount=0 +nbmmicon=0 +nbrandom=0 +nsight=800 +occh=0.0 +orientinterp=0 +points=100 +prio=2 +propwin=60.0 +qarea1=0 +qarea2=0 +qfact1=0.0 +qfact2=0.0 +race="other" +rangen1=100 +rangen2=0 +red=255 +regenhp=0.25 +regenmana=0.0 +regentype="always" +reptm=26 +repulse=0 +repulsegroup=0 +repulseparam=0 +repulseprio=0 +requirescount=0 +requirewaterradius=0.0 +revive=0 +rngbuff1=250.0 +rngbuff2=0.0 +run=240.0 +scale=1.0 +scalebull=1 +selcirconwater=0 +selz=0.0 +shadowh=120.0 +shadowonwater=1 +shadoww=120.0 +shadowx=50.0 +shadowy=50.0 +showui1=1 +showui2=1 +sides1=4 +sides2=0 +sight=1400 +spd=270 +special=0 +spilldist1=0.0 +spilldist2=0.0 +spillradius1=0.0 +spillradius2=0.0 +stockmax=3 +stockregen=120 +stockstart=0 +str=0 +strplus=0.0 +targcount1=1 +targcount2=1 +targs1="ground,structure,debris,item,ward" +targtype="ground" +teamcolor=-1 +tilesets="*" +tilesetspecific=0 +tip="训练小狗(|cffffcc00Z|r)" +turnrate=0.6 +ubertip="虫族军队的小型近战攻击生物。虽然很脆弱,但是他们以极大的数量闻名。|n|cffffcc00能攻击地面单位。|r" +unitshadow="Shadow" +unitsound="Zergling" +useclickhelper=0 +walk=240.0 +weapson=1 +weaptp1="normal" +weaptype1="WoodMediumBash" diff --git a/plugin/w3x2lni/script/prebuilt/default/upgrade.ini b/plugin/w3x2lni/script/prebuilt/default/upgrade.ini new file mode 100644 index 0000000..ec8f337 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default/upgrade.ini @@ -0,0 +1,3061 @@ +[Recb] +_id="Recb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCorrosiveBreath.blp"} +base1=3.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="renw" +global=0 +goldbase=125 +goldmod=0 +hotkey={"B"} +inherit=1 +lumberbase=225 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"腐蚀喷吐"} +race="nightelf" +requires={} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究腐蚀喷吐(|cffffcc00B|r)"} +ubertip={"使得奇美拉怪兽能对敌方的建筑物喷出酸性的毒汁。"} + +[Redc] +_id="Redc" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDOCAdeptTraining.blp","ReplaceableTextures\\CommandButtons\\BTNDOCMasterTraining.blp"} +base1=100.0 +base2=0.325 +base3=75.0 +base4=1.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"L","L"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=75.0 +mod4=1.0 +name={"利爪德鲁伊专家训练","利爪德鲁伊大师训练"} +race="nightelf" +requires={"","etoe"} +requiresamount={} +timebase=45 +timemod=15 +tip={"利爪德鲁伊专家训练(|cffffcc00L|r)"," 利爪德鲁伊大师训练(|cffffcc00L|r)"} +ubertip={"增加利爪德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有生命恢复技能。","增加利爪德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有变熊技能。"} + +[Redt] +_id="Redt" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDOTAdeptTraining.blp","ReplaceableTextures\\CommandButtons\\BTNDOTMasterTraining.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"A","A"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"猛禽德鲁伊专家训练","猛禽德鲁伊大师训练"} +race="nightelf" +requires={"","etoe"} +requiresamount={} +timebase=60 +timemod=15 +tip={"猛禽德鲁伊专家训练(|cffffcc00A|r)"," 猛禽德鲁伊大师训练(|cffffcc00A|r)"} +ubertip={"增加猛禽德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有风暴之鸦技能。","增加猛禽德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有飓风技能。"} + +[Reeb] +_id="Reeb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNEnchantedBears.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=25 +goldmod=0 +hotkey={"M"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"利爪之痕"} +race="nightelf" +requires={"Redc"} +requiresamount={"2"} +timebase=20 +timemod=0 +tip={"研究利爪之痕(|cffffcc00M|r)"} +ubertip={"让利爪德鲁伊在野熊的状态下能施放咆哮技能。"} + +[Reec] +_id="Reec" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNEnchantedCrows.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=25 +goldmod=0 +hotkey={"M"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"猛禽之痕"} +race="nightelf" +requires={"Redt"} +requiresamount={"2"} +timebase=20 +timemod=0 +tip={"研究猛禽之痕(|cffffcc00M|r)"} +ubertip={"让猛禽德鲁伊在风暴之鸦的状态下能施放精灵之火技能。"} + +[Rehs] +_id="Rehs" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHardenedSkin.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"H"} +inherit=1 +lumberbase=250 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"硬化皮肤"} +race="nightelf" +requires={"etoe,eden"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究硬化皮肤(|cffffcc00H|r)"} +ubertip={"让山岭巨人增加对攻击伤害的抵抗力。"} + +[Reht] +_id="Reht" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNTameHippogriff.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"I"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"驯服角鹰兽"} +race="nightelf" +requires={} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究驯服角鹰兽(|cffffcc00I|r)"} +ubertip={"使得弓箭手能骑乘在角鹰兽的背上从而成为角鹰兽骑士。角鹰兽骑士既能攻击地面单位也能攻击空中单位。"} + +[Reib] +_id="Reib" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNImprovedBows.blp"} +base1=200.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +editorsuffix={} +effect1="ratr" +global=0 +goldbase=50 +goldmod=0 +hotkey={"I"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=200.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"硬弓"} +race="nightelf" +requires={"etoa"} +requiresamount={} +timebase=35 +timemod=0 +tip={"研究硬弓(|cffffcc00I|r)"} +ubertip={"增加弓箭手和角鹰兽骑士的攻击范围。"} + +[Rema] +_id="Rema" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNMoonArmor.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedMoonArmor.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedMoonArmor.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=150 +goldmod=50 +hotkey={"A","A","A"} +inherit=0 +lumberbase=75 +lumbermod=75 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"月之护甲","中级月之护甲","高级月之护甲"} +race="nightelf" +requires={"","etoa","etoe"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到月之护甲(|cffffcc00A|r)","升级到中级月之护甲(|cffffcc00A|r)","升级到高级月之护甲(|cffffcc00A|r)"} +ubertip={"增加弓箭手,女猎手和角鹰兽骑士的防御力。","进一步增加弓箭手,女猎手和角鹰兽骑士的防御力。","进一步增加弓箭手,女猎手和角鹰兽骑士的防御力。"} + +[Remg] +_id="Remg" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNUpgradeMoonGlaive.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +effect1="ratc" +global=0 +goldbase=100 +goldmod=0 +hotkey={"G"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"升级月刃"} +race="nightelf" +requires={"edob,etoe"} +requiresamount={} +timebase=35 +timemod=0 +tip={"升级月刃(|cffffcc00G|r)"} +ubertip={"使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。"} + +[Remk] +_id="Remk" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNMarksmanship.blp"} +base1=3.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="ratx" +global=0 +goldbase=100 +goldmod=0 +hotkey={"M"} +inherit=1 +lumberbase=175 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"射击术"} +race="nightelf" +requires={"edob,etoe"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究射击术(|cffffcc00M|r)"} +ubertip={"能增加弓箭手和角鹰兽骑士点的攻击力。"} + +[Renb] +_id="Renb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNNaturesBlessing.blp"} +base1=40.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +editorsuffix={} +effect1="rmvx" +effect2="rarm" +global=0 +goldbase=150 +goldmod=0 +hotkey={"N"} +inherit=1 +lumberbase=200 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"自然的祝福"} +race="nightelf" +requires={"etoa"} +requiresamount={} +timebase=60 +timemod=0 +tip={"研究自然的祝福(|cffffcc00N|r)"} +ubertip={"能提高所有古树和树人的移动速度和护甲。"} + +[Repb] +_id="Repb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNVorpalBlades.blp"} +base1=200.0 +base2=2.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +effect1="rasd" +effect2="renw" +global=0 +goldbase=125 +goldmod=0 +hotkey={"P"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"穿刺剑刃"} +race="nightelf" +requires={"etoa,edob"} +requiresamount={} +timebase=60 +timemod=0 +tip={"研究穿刺剑刃(|cffffcc00P|r)"} +ubertip={"使得投刃车的攻击能穿透敌人从而对其他站在后面的敌方单位也造成一定伤害。同时也能让投刃车能攻击树木。"} + +[Repm] +_id="Repm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +editorsuffix={" (暗夜精灵族)"} +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=0 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"背包技能"} +race="nightelf" +requires={"eden"} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究背包技能(|cffffcc00B|r)"} +ubertip={"给予指定的暗夜精灵地面单位携带物品的能力。"} + +[Rerh] +_id="Rerh" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNReinforcedHides.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedReinforcedHides.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedReinforcedHides.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=150 +goldmod=50 +hotkey={"R","R","R"} +inherit=0 +lumberbase=50 +lumbermod=100 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"加强隐藏","中级加强隐藏","高级加强隐藏"} +race="nightelf" +requires={"","etoa","etoe"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到加强隐藏(|cffffcc00R|r)","升级到中级加强隐藏(|cffffcc00R|r)","升级到高级加强隐藏(|cffffcc00R|r)"} +ubertip={"增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。"} + +[Rers] +_id="Rers" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNResistantSkin.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"T"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"抗性皮肤"} +race="nightelf" +requires={"etoe,eden"} +requiresamount={} +timebase=75 +timemod=0 +tip={"研究抗性皮肤(|cffffcc00T|r)"} +ubertip={"让山岭巨人增加对魔法攻击的抵抗力。"} + +[Resc] +_id="Resc" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSentinel.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"S"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"哨兵"} +race="nightelf" +requires={"edob,etoa"} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究哨兵(|cffffcc00S|r)"} +ubertip={"使得女猎手能放出一只猫头鹰栖息在一棵树上进行侦察。|n能看见隐形单位。"} + +[Resi] +_id="Resi" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagic.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"S"} +inherit=1 +lumberbase=50 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"驱逐魔法"} +race="nightelf" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究驱散魔法(|cffffcc00S|r)"} +ubertip={"使得树妖能去除掉敌人身上的有利魔法效果和友军单位身上的不利魔法效果。|n能伤害召唤出来的单位。"} + +[Resm] +_id="Resm" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNStrengthOfTheMoon.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedStrengthOfTheMoon.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedStrengthOfTheMoon.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +class="melee" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=125 +goldmod=50 +hotkey={"M","M","M"} +inherit=0 +lumberbase=75 +lumbermod=100 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"月之力量","中级月之力量","高级月之力量"} +race="nightelf" +requires={"","etoa","etoe"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到月之力量(|cffffcc00M|r)","升级到中级月之力量(|cffffcc00M|r)","升级到高级月之力量(|cffffcc00M|r)"} +ubertip={"增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。","进一步增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。","进一步增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。"} + +[Resw] +_id="Resw" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNStrengthOfTheWild.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedStrengthOfTheWild.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedStrengthOfTheWild.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +class="ranged" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=100 +goldmod=75 +hotkey={"W","W","W"} +inherit=0 +lumberbase=75 +lumbermod=100 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"野性力量","中级野性力量","高级野性力量"} +race="nightelf" +requires={"","etoa","etoe"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到野性力量(|cffffcc00W|r)","升级到中级野性力量(|cffffcc00W|r)","升级到高级野性力量(|cffffcc00W|r)"} +ubertip={"增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。"} + +[Reuv] +_id="Reuv" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNUltravision.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"U"} +inherit=1 +lumberbase=50 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"夜视能力"} +race="nightelf" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"升级到夜视能力(|cffffcc00U|r)"} +ubertip={"使得暗夜精灵族单位能在夜间和白天看得一样远。"} + +[Rews] +_id="Rews" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNWellSpring.blp"} +base1=200.0 +base2=0.83 +base3=0.0 +base4=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +global=0 +goldbase=75 +goldmod=0 +hotkey={"E"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"月井之春"} +race="nightelf" +requires={"etoe"} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究月井之春(|cffffcc00E|r)"} +ubertip={"月亮井所能存储的魔法值增加点,魔法值恢复速度加快%。"} + +[Rgfo] +_id="Rgfo" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNGlyph.blp","ReplaceableTextures\\CommandButtons\\BTNGlyph.blp","ReplaceableTextures\\CommandButtons\\BTNGlyph.blp"} +base1=0.0 +base2=0.2 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +editorsuffix={" (升级 1)","(升级 2)","(升级 3)"} +effect1="rarm" +effect2="rhpo" +global=0 +goldbase=100 +goldmod=50 +hotkey={} +inherit=0 +lumberbase=100 +lumbermod=50 +maxlevel=3 +mod1=0.0 +mod2=0.2 +mod3=0.0 +mod4=0.0 +name={"防御浮雕","防御浮雕","防御浮雕"} +race="unknown" +requires={} +requiresamount={} +timebase=60 +timemod=15 +tip={} +ubertip={} + +[Rguv] +_id="Rguv" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNGlyph.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +editorsuffix={" (升级)"} +effect1="rauv" +global=0 +goldbase=100 +goldmod=50 +hotkey={} +inherit=1 +lumberbase=100 +lumbermod=50 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"夜视浮雕"} +race="unknown" +requires={} +requiresamount={} +timebase=60 +timemod=15 +tip={} +ubertip={} + +[Rhac] +_id="Rhac" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNStoneArchitecture.blp","ReplaceableTextures\\CommandButtons\\BTNArcaniteArchitecture.blp","ReplaceableTextures\\CommandButtons\\BTNImbuedMasonry.blp"} +base1=0.0 +base2=0.2 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +class="armor" +editorsuffix={} +effect1="rarm" +effect2="rhpo" +global=0 +goldbase=100 +goldmod=25 +hotkey={"M","M","M"} +inherit=0 +lumberbase=100 +lumbermod=75 +maxlevel=3 +mod1=0.0 +mod2=0.2 +mod3=0.0 +mod4=0.0 +name={"加强型石工技术","高级石工技术","终极石工技术"} +race="human" +requires={"","hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到加强型石工技术(|cffffcc00M|r)","升级到高级石工技术(|cffffcc00M|r)","升级到终极石工技术(|cffffcc00M|r)"} +ubertip={"增加人族建筑物的生命值和护甲。","进一步增加人族建筑物的生命值和护甲。","进一步增加人族建筑物的生命值和护甲。"} + +[Rhan] +_id="Rhan" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNAnimalWarTraining.blp"} +base1=150.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +effect1="rhpx" +global=0 +goldbase=150 +goldmod=0 +hotkey={"A"} +inherit=1 +lumberbase=250 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"动物作战训练"} +race="human" +requires={"hlum,hcas,hbla"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究动物作战训练(|cffffcc00A|r)"} +ubertip={"能增加骑士、龙鹰骑士和狮鹫骑士点的生命值。"} + +[Rhar] +_id="Rhar" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHumanArmorUpOne.blp","ReplaceableTextures\\CommandButtons\\BTNHumanArmorUpTwo.blp","ReplaceableTextures\\CommandButtons\\BTNHumanArmorUpThree.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=125 +goldmod=25 +hotkey={"P","P","P"} +inherit=0 +lumberbase=75 +lumbermod=100 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"铁甲","钢甲","重金甲"} +race="human" +requires={"","hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"铁甲(|cffffcc00P|r)","升级到钢甲(|cffffcc00P|r)","升级到重金甲(|cffffcc00P|r)"} +ubertip={"增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。","进一步增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。","进一步增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。"} + +[Rhcd] +_id="Rhcd" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCloudOfFog.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"C"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"乌云技能"} +race="human" +requires={"hvlt"} +requiresamount={} +timebase=35 +timemod=0 +tip={"研究乌云(|cffffcc00C|r)"} +ubertip={"使龙鹰骑士掌握乌云技能,从而使得敌人远程防御建筑不能攻击。"} + +[Rhde] +_id="Rhde" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDefend.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=150 +goldmod=0 +hotkey={"D"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"防御"} +race="human" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究防御(|cffffcc00D|r)"} +ubertip={"使得步兵能拥有防御技能,有效地抵抗敌人的穿刺型攻击。"} + +[Rhfc] +_id="Rhfc" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNFlakCannons.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"C"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"高射炮火"} +race="human" +requires={"hcas"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究高射炮火(|cffffcc00C|r)"} +ubertip={"升级飞行机器的武器,使他们能够对空中单位造成区域性伤害。"} + +[Rhfl] +_id="Rhfl" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNFlare.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"R"} +inherit=1 +lumberbase=50 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"照明弹"} +race="human" +requires={"hkee"} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究照明弹(|cffffcc00R|r)"} +ubertip={"让每个迫击炮小队拥有一个照明弹,照明弹能驱散地图中任何一个区域内的战争迷雾。|n能探测到隐形单位。"} + +[Rhfs] +_id="Rhfs" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNFragmentationBombs.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"S"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"碎片攻击"} +race="human" +requires={"hcas"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究碎片攻击(|cffffcc00S|r)"} +ubertip={"升级迫击炮炮弹,增加迫击炮小队对无护甲和中型护甲单位的伤害。"} + +[Rhgb] +_id="Rhgb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHumanArtilleryUpOne.blp"} +base1=3.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="renw" +global=0 +goldbase=150 +goldmod=50 +hotkey={"B"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"飞行机器炸弹"} +race="human" +requires={"hcas"} +requiresamount={} +timebase=35 +timemod=0 +tip={"研究飞行机器炸弹(|cffffcc00B|r)"} +ubertip={"使得飞行机器能攻击地面单位。"} + +[Rhhb] +_id="Rhhb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNStormHammer.blp"} +base1=200.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="rasd" +global=0 +goldbase=125 +goldmod=0 +hotkey={"H"} +inherit=1 +lumberbase=225 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"风暴战锤"} +race="human" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究风暴战锤(|cffffcc00H|r)"} +ubertip={"让狮鹫骑士的战锤能进行弹射,从而对多个敌人造成伤害。"} + +[Rhla] +_id="Rhla" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNLeatherUpgradeOne.blp","ReplaceableTextures\\CommandButtons\\BTNLeatherUpgradeTwo.blp","ReplaceableTextures\\CommandButtons\\BTNLeatherUpgradeThree.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=100 +goldmod=50 +hotkey={"A","A","A"} +inherit=0 +lumberbase=100 +lumbermod=75 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"镶皮甲","加强型镶皮甲","龙甲"} +race="human" +requires={"","hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到镶皮甲(|cffffcc00A|r)","升级到加强型镶皮甲(|cffffcc00A|r)","升级到龙甲(|cffffcc00A|r)"} +ubertip={"增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。","进一步增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。","进一步增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。"} + +[Rhlh] +_id="Rhlh" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHumanLumberUpgrade1.blp","ReplaceableTextures\\CommandButtons\\BTNHumanLumberUpgrade2.blp"} +base1=5.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +editorsuffix={} +effect1="rlum" +global=0 +goldbase=100 +goldmod=100 +hotkey={"L","L"} +inherit=1 +lumberbase=0 +lumbermod=0 +maxlevel=2 +mod1=5.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"改进型伐木效率","高级伐木效率"} +race="human" +requires={"hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"改进型伐木效率(|cffffcc00L|r)","高级伐木效率(|cffffcc00L|r)"} +ubertip={"增加点农民每次能携带的木材数量。","进一步增加点农民每次能携带的木材数量。"} + +[Rhme] +_id="Rhme" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSteelMelee.blp","ReplaceableTextures\\CommandButtons\\BTNThoriumMelee.blp","ReplaceableTextures\\CommandButtons\\BTNArcaniteMelee.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +class="melee" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=100 +goldmod=75 +hotkey={"S","S","S"} +inherit=0 +lumberbase=50 +lumbermod=125 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"铁剑术","钢剑术","毒剑术"} +race="human" +requires={"","hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到铁剑术(|cffffcc00S|r)","升级到钢剑术(|cffffcc00S|r)","升级到毒剑术(|cffffcc00S|r)"} +ubertip={"增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。","进一步增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。","进一步增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。"} + +[Rhpm] +_id="Rhpm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +editorsuffix={" (人族)"} +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=0 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"背包技能"} +race="human" +requires={"hvlt"} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究背包技能(|cffffcc00B|r)"} +ubertip={"给人族地面部队携带物品的能力。"} + +[Rhpt] +_id="Rhpt" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPriestAdept.blp","ReplaceableTextures\\CommandButtons\\BTNPriestMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"T","T"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"牧师专家训练","牧师大师训练"} +race="human" +requires={"","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"牧师专家训练(|cffffcc00T|r)","牧师大师训练(|cffffcc00T|r)"} +ubertip={"增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有驱逐魔法技能。","增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有心灵之火技能。"} + +[Rhra] +_id="Rhra" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHumanMissileUpOne.blp","ReplaceableTextures\\CommandButtons\\BTNHumanMissileUpTwo.blp","ReplaceableTextures\\CommandButtons\\BTNHumanMissileUpThree.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +class="ranged" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=100 +goldmod=75 +hotkey={"G","G","G"} +inherit=0 +lumberbase=50 +lumbermod=125 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"黑火药","精练火药","终极火药"} +race="human" +requires={"","hkee","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到黑火药(|cffffcc00G|r)","升级到精练火药(|cffffcc00G|r)","升级到终极火药(|cffffcc00G|r)"} +ubertip={"增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。","进一步增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。","进一步增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。"} + +[Rhri] +_id="Rhri" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDwarvenLongRifle.blp"} +base1=200.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +effect1="ratr" +global=0 +goldbase=75 +goldmod=0 +hotkey={"L"} +inherit=1 +lumberbase=125 +lumbermod=0 +maxlevel=1 +mod1=200.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"长管火枪"} +race="human" +requires={"harm"} +requiresamount={} +timebase=30 +timemod=0 +tip={"升级到长管火枪(|cffffcc00L|r)"} +ubertip={"增加矮人火枪手的攻击范围。"} + +[Rhrt] +_id="Rhrt" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNScatterRockets.blp"} +base1=1.0 +base2=-1.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +code1="hmtt" +code2="hrtt" +editorsuffix={} +effect1="rtma" +effect2="rtma" +global=1 +goldbase=50 +goldmod=0 +hotkey={"G"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"弹幕攻击"} +race="human" +requires={"hcas"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究弹幕攻击(|cffffcc00G|r)"} +ubertip={"升级蒸汽机车,使其拥有弹幕攻击技能,从而可以对敌方的空中单位进行攻击。"} + +[Rhse] +_id="Rhse" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNMagicalSentry.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"M"} +inherit=0 +lumberbase=50 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"魔法岗哨"} +race="human" +requires={} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究魔法岗哨(|cffffcc00M|r)"} +ubertip={"让人族的各类塔能探测到隐形单位。"} + +[Rhss] +_id="Rhss" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNControlMagic.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"G"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"控制魔法"} +race="human" +requires={"hvlt,hcas"} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究控制魔法(|cffffcc00G|r)"} +ubertip={"让魔法破坏者可以利用敌人召唤出来的单位。"} + +[Rhst] +_id="Rhst" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSorceressAdept.blp","ReplaceableTextures\\CommandButtons\\BTNSorceressMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"O","O"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"女巫专家训练","女巫大师训练"} +race="human" +requires={"","hcas"} +requiresamount={} +timebase=60 +timemod=15 +tip={"女巫专家训练(|cffffcc00O|r)","女巫大师训练(|cffffcc00O|r)"} +ubertip={"增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有隐形技能。","增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有变形技能。"} + +[Rnam] +_id="Rnam" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNNagaArmorUp1.blp","ReplaceableTextures\\CommandButtons\\BTNNagaArmorUp2.blp","ReplaceableTextures\\CommandButtons\\BTNNagaArmorUp3.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=125 +goldmod=100 +hotkey={"C","C","C"} +inherit=0 +lumberbase=75 +lumbermod=150 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"珊瑚鳞甲","壳质鳞甲","尖刺鳞甲"} +race="naga" +requires={} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到珊瑚鳞甲(|cffffcc00C|r)","升级壳质鳞甲(|cffffcc00C|r)","升级到尖刺鳞甲(|cffffcc00C|r)"} +ubertip={"增加娜迦族攻击单位的防御力。","进一步增加娜迦攻击单位的防御力。","进一步增加娜迦攻击单位的防御力。"} + +[Rnat] +_id="Rnat" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNNagaWeaponUp1.blp","ReplaceableTextures\\CommandButtons\\BTNNagaWeaponUp2.blp","ReplaceableTextures\\CommandButtons\\BTNNagaWeaponUp3.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +class="melee" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=150 +goldmod=75 +hotkey={"B","B","B"} +inherit=0 +lumberbase=75 +lumbermod=150 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"珊瑚剑","壳质剑","尖刺剑"} +race="naga" +requires={} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到珊瑚剑(|cffffcc00B|r)","升级到壳质剑(|cffffcc00B|r)","升级到尖刺剑(|cffffcc00B|r)"} +ubertip={"增加娜迦族攻击单位的攻击力。","进一步增加娜迦族攻击单位的攻击。","增加娜迦族攻击单位的攻击。"} + +[Rnen] +_id="Rnen" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"N"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"诱捕"} +race="naga" +requires={} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究诱捕(|cffffcc00N|r)"} +ubertip={"使娜迦暴徒能够使用诱捕技能。能将一个目标空中单位固定在地面上,使其不能移动。被诱捕的空中单位可以当作地面单位进行攻击。"} + +[Rnsb] +_id="Rnsb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNNagaBurrow.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=25 +goldmod=0 +hotkey={"U"} +inherit=1 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"潜水"} +race="naga" +requires={} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究潜水(|cffffcc00U|r)"} +ubertip={"给予娜迦暴徒和飞龙潜入水中,隐去行踪的能力。"} + +[Rnsi] +_id="Rnsi" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDryadDispelMagic.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=1 +lumberbase=50 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"驱逐魔法"} +race="naga" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究驱逐魔法(|cffffcc00B|r)"} +ubertip={"给予飞蛇驱散敌单位正面效果的魔法,及友方单位负面效果魔法的能力。|n对召唤单位造成伤害。"} + +[Rnsw] +_id="Rnsw" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSirenAdept.blp","ReplaceableTextures\\CommandButtons\\BTNSirenMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"N","N"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"娜迦海妖专家训练","娜迦海妖大师训练"} +race="naga" +requires={} +requiresamount={} +timebase=60 +timemod=15 +tip={"研究娜迦海妖专家训练(|cffffcc00N|r)","研究娜迦海妖大师训练(|cffffcc00N|r)"} +ubertip={"增加娜迦海妖的魔力容量、魔力回复速率、生命值,并给予她们施放霜冻护甲的能力。","增加娜迦海妖的魔力容量、魔力回复速率、生命值并给予她们施放飓风的能力。"} + +[Roar] +_id="Roar" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSteelArmor.blp","ReplaceableTextures\\CommandButtons\\BTNThoriumArmor.blp","ReplaceableTextures\\CommandButtons\\BTNArcaniteArmor.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=150 +goldmod=75 +hotkey={"A","A","A"} +inherit=0 +lumberbase=75 +lumbermod=150 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"钢铁护甲","金属护甲","终极护甲"} +race="orc" +requires={"","ostr","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到钢铁护甲(|cffffcc00A|r)","升级到钢铁护甲(|cffffcc00A|r)","升级到终极护甲(|cffffcc00A|r)"} +ubertip={"增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。","进一步增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。","进一步增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。"} + +[Robf] +_id="Robf" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNFireRocks.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"N"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"燃烧之油"} +race="orc" +requires={"ofrt"} +requiresamount={} +timebase=30 +timemod=0 +tip={"燃烧之油(|cffffcc00N|r)"} +ubertip={"升级粉碎者,使其能投出包裹石油的燃烧石块,从而能燃烧地面。"} + +[Robk] +_id="Robk" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNHeadHunterBerserker.blp"} +base1=1.0 +base2=-1.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +code1="ohun" +code2="otbk" +editorsuffix={} +effect1="rtma" +effect2="rtma" +global=1 +goldbase=75 +goldmod=0 +hotkey={"E"} +inherit=1 +lumberbase=175 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"狂暴愤怒升级"} +race="orc" +requires={"ofrt,ofor"} +requiresamount={} +timebase=40 +timemod=0 +tip={"升级狂战士(|cffffcc00E|r)"} +ubertip={"将巨魔猎头者变为巨魔狂暴战士。使其拥有更多的生命值和狂暴愤怒技能。"} + +[Robs] +_id="Robs" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNBerserk.blp"} +base1=100.0 +base2=3.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="rhpx" +effect2="ratx" +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"狂暴力量"} +race="orc" +requires={"ostr"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究狂暴力量(|cffffcc00B|r)"} +ubertip={"能增加兽族步兵点的生命值和点的攻击力。"} + +[Roch] +_id="Roch" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpOne.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +editorsuffix={} +global=1 +goldbase=0 +goldmod=0 +hotkey={} +inherit=0 +lumberbase=0 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"混乱的"} +race="demon" +requires={} +requiresamount={} +timebase=0 +timemod=0 +tip={} +ubertip={} + +[Roen] +_id="Roen" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNEnsnare.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=50 +goldmod=0 +hotkey={"N"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"诱捕"} +race="orc" +requires={} +requiresamount={} +timebase=40 +timemod=0 +tip={"诱捕(|cffffcc00N|r)"} +ubertip={"使得掠夺者能将目标空中单位困在地面上而不能移动。"} + +[Rolf] +_id="Rolf" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNLiquidFire.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"L"} +inherit=1 +lumberbase=125 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"液体炸弹"} +race="orc" +requires={"ofrt,ovln"} +requiresamount={} +timebase=75 +timemod=0 +tip={"研究液体炸弹(|cffffcc00L|r)"} +ubertip={"让巨魔蝙蝠骑士具有液体炸弹技能,从而可以对敌人的建筑物造成持续性的伤害,被液体炸弹攻击到的各类防御塔都会被减慢攻击速度。"} + +[Rome] +_id="Rome" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpOne.blp","ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpTwo.blp","ReplaceableTextures\\CommandButtons\\BTNOrcMeleeUpThree.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +class="melee" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=100 +goldmod=50 +hotkey={"M","M","M"} +inherit=0 +lumberbase=75 +lumbermod=100 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"钢铁近战武器","金属近战武器","终极近战武器"} +race="orc" +requires={"","ostr","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到钢铁近战武器(|cffffcc00M|r)","升级到金属近战武器(|cffffcc00M|r)","升级到终极近战武器(|cffffcc00M|r)"} +ubertip={"增加兽族步兵,掠夺者,牛头人的攻击力。","进一步增加兽族步兵,掠夺者,牛头人的攻击力。","进一步增加兽族步兵,掠夺者,牛头人的攻击力。"} + +[Ropg] +_id="Ropg" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPillage.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"G"} +inherit=1 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"掠夺"} +race="orc" +requires={} +requiresamount={} +timebase=45 +timemod=0 +tip={"掠夺(|cffffcc00G|r)"} +ubertip={"使得苦工,兽族步兵和掠夺者对敌人建筑物的攻击能掠夺到一定的资源。"} + +[Ropm] +_id="Ropm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +editorsuffix={" (兽族)"} +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=0 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"背包技能"} +race="orc" +requires={"ovln"} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究背包技能(|cffffcc00B|r)"} +ubertip={"让某个特定的兽族地面单位能替英雄携带物品。"} + +[Rora] +_id="Rora" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSteelRanged.blp","ReplaceableTextures\\CommandButtons\\BTNThoriumRanged.blp","ReplaceableTextures\\CommandButtons\\BTNArcaniteRanged.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +class="ranged" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=100 +goldmod=50 +hotkey={"R","R","R"} +inherit=0 +lumberbase=100 +lumbermod=100 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"钢铁远程武器","金属远程武器","终极远程武器"} +race="orc" +requires={"","ostr","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到钢铁远程武器(|cffffcc00R|r)","升级到金属远程武器(|cffffcc00R|r)","升级到终极远程武器(|cffffcc00R|r)"} +ubertip={"能增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。","进一步增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。","进一步增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。"} + +[Rorb] +_id="Rorb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNReinforcedBurrows.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +editorsuffix={} +effect1="rart" +global=0 +goldbase=50 +goldmod=0 +hotkey={"D"} +inherit=0 +lumberbase=200 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"加强型防御"} +race="orc" +requires={"ofrt"} +requiresamount={} +timebase=60 +timemod=0 +tip={"加强型防御(|cffffcc00D|r)"} +ubertip={"升级地洞和了望塔从而让它们拥有加强型的护甲。"} + +[Rosp] +_id="Rosp" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSpikedBarricades.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedSpikedBarricades.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedSpikedBarricades.blp"} +base1=4.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=0 +editorsuffix={} +effect1="rspi" +global=0 +goldbase=25 +goldmod=25 +hotkey={"S","S","S"} +inherit=0 +lumberbase=75 +lumbermod=100 +maxlevel=3 +mod1=6.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"尖刺障碍","中级尖刺障碍","高级尖刺障碍"} +race="orc" +requires={"","ostr","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到尖刺障碍(|cffffcc00S|r)","升级到中级尖刺障碍(|cffffcc00S|r)","升级到高级尖刺障碍(|cffffcc00S|r)"} +ubertip={"使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。","使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。","使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。"} + +[Rost] +_id="Rost" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNShamanAdept.blp","ReplaceableTextures\\CommandButtons\\BTNShamanMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"M","M"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"萨满祭司专家训练","萨满祭司大师训练"} +race="orc" +requires={"","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"萨满祭司专家训练(|cffffcc00M|r)"," 萨满祭司大师训练(|cffffcc00M|r)"} +ubertip={"增加萨满祭司的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得闪电护盾技能。","增加萨满祭司的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得嗜血术。"} + +[Rotr] +_id="Rotr" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNRegenerate.blp"} +base1=0.8 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +effect1="rhpr" +global=0 +goldbase=100 +goldmod=0 +hotkey={"R"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"巨魔再生","中级巨魔再生","高级巨魔再生"} +race="orc" +requires={"ostr,ofor"} +requiresamount={} +timebase=35 +timemod=0 +tip={"研究巨魔再生(|cffffcc00R|r)","研究中级巨魔再生(|cffffcc00R|r)","研究高级巨魔再生(|cffffcc00R|r)"} +ubertip={"加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。","进一步加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。","进一步加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。"} + +[Rovs] +_id="Rovs" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNEnvenomedSpear.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"E"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"浸毒武器"} +race="orc" +requires={"ofrt"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究浸毒武器(|cffffcc00E|r)"} +ubertip={"使得风骑士的攻击带有毒性。一个被浸毒武器攻击到的单位会在一段时间内持续受到伤害。"} + +[Rowd] +_id="Rowd" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNWitchDoctorAdept.blp","ReplaceableTextures\\CommandButtons\\BTNWitchDoctorMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"D","D"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"巫医专家训练","巫医大师训练"} +race="orc" +requires={"","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"巫医专家训练(|cffffcc00D|r)","巫医大师训练(|cffffcc00D|r)"} +ubertip={"增加巫医的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得静止陷阱技能。","增加巫医的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得静止治疗守卫技能。"} + +[Rows] +_id="Rows" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSmash.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"P"} +inherit=1 +lumberbase=250 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"粉碎"} +race="orc" +requires={} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究粉碎(|cffffcc00P|r)"} +ubertip={"让牛头人具有粉碎技能,从而使得牛头人具有一定的概率造成范围性攻击。"} + +[Rowt] +_id="Rowt" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSpiritWalkerAdeptTraining.blp","ReplaceableTextures\\CommandButtons\\BTNSpiritWalkerMasterTraining.blp"} +base1=150.0 +base2=0.42 +base3=60.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"R","R"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=150.0 +mod2=0.42 +mod3=60.0 +mod4=0.0 +name={"灵魂行者专家训练","灵魂行者大师训练"} +race="orc" +requires={"","ofrt"} +requiresamount={} +timebase=60 +timemod=15 +tip={"灵魂行者专家训练(|cffffcc00R|r)",")灵魂行者大师训练(|cffffcc00R|r)"} +ubertip={"增加灵魂行者的最大魔法值,魔法恢复速度和最大生命值。并让其具有消魔技能。","增加灵魂行者的最大魔法值,魔法恢复速度和最大生命值。并让其具有先祖幽灵技能。"} + +[Ruac] +_id="Ruac" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCannibalize.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"C"} +inherit=1 +lumberbase=0 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"吞食尸体"} +race="undead" +requires={} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究吞食尸体(|cffffcc00C|r)"} +ubertip={"使得食尸鬼和憎恶能吞食附近的一个尸体来恢复自己的生命值。"} + +[Ruar] +_id="Ruar" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNUnholyArmor.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedUnholyArmor.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedUnholyArmor.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=125 +goldmod=75 +hotkey={"U","U","U"} +inherit=0 +lumberbase=50 +lumbermod=100 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"邪恶装甲","中级邪恶装甲","高级邪恶装甲"} +race="undead" +requires={"","unp1","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到邪恶装甲(|cffffcc00U|r)","升级到中级邪恶装甲(|cffffcc00U|r)","升级到高级邪恶装甲(|cffffcc00U|r)"} +ubertip={"增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。","进一步增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。","进一步增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。"} + +[Ruba] +_id="Ruba" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNBansheeAdept.blp","ReplaceableTextures\\CommandButtons\\BTNBansheeMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"A","A"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"女妖专家训练","女妖大师训练"} +race="undead" +requires={"","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"女妖专家训练(|cffffcc00A|r)","女妖大师训练(|cffffcc00A|r)"} +ubertip={"增加女妖的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有反魔法外壳技能。","增加女妖的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有占据技能。"} + +[Rubu] +_id="Rubu" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCryptFiendBurrow.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"B"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"钻地"} +race="undead" +requires={"unp1,ugrv"} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究钻地(|cffffcc00B|r)"} +ubertip={"让穴居恶魔具有钻地技能。钻地的穴居恶魔是隐形的,并获得提升的生命恢复速度,但不可攻击。"} + +[Rucr] +_id="Rucr" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCreatureCarapace.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedCreatureCarapace.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedCreatureCarapace.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=1 +class="armor" +editorsuffix={} +effect1="rarm" +global=0 +goldbase=150 +goldmod=50 +hotkey={"C","C","C"} +inherit=0 +lumberbase=75 +lumbermod=125 +maxlevel=3 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"生物甲壳","中级生物甲壳","高级生物甲壳"} +race="undead" +requires={"","unp1","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到生物甲壳(|cffffcc00C|r)","升级到中级生物甲壳(|cffffcc00C|r)","升级到生物甲壳(|cffffcc00C|r)"} +ubertip={"增加地穴恶魔、石像鬼、 冰霜巨龙和破坏者的护甲。 ","进一步增加地穴恶魔、石像鬼、冰霜巨龙和破坏者的护甲。 ","进一步增加地穴恶魔、石像鬼、冰霜巨龙和破坏者的护甲。"} + +[Ruex] +_id="Ruex" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNExhumeCorpses.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=125 +goldmod=0 +hotkey={"E"} +inherit=1 +lumberbase=100 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"挖掘尸体"} +race="undead" +requires={"unp2"} +requiresamount={} +timebase=20 +timemod=0 +tip={"挖掘尸体(|cffffcc00E|r)"} +ubertip={"让绞肉车能制造出尸体。"} + +[Rufb] +_id="Rufb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNFreezingBreath.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=150 +goldmod=0 +hotkey={"B"} +inherit=1 +lumberbase=275 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"冰冻喷吐"} +race="undead" +requires={} +requiresamount={} +timebase=60 +timemod=0 +tip={"研究冰冻喷吐(|cffffcc00B|r)"} +ubertip={"使得霜冻巨龙的攻击能在一段时间内使受攻击的建筑物暂时失去功效。"} + +[Rugf] +_id="Rugf" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNGhoulFrenzy.blp"} +base1=0.25 +base2=80.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +editorsuffix={} +effect1="rats" +effect2="rmvx" +global=0 +goldbase=100 +goldmod=0 +hotkey={"Z"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"食尸鬼狂热"} +race="undead" +requires={"ugrv,unp2"} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究食尸鬼狂热(|cffffcc00Z|r)"} +ubertip={"增加食尸鬼%的攻击速度并加快其移动速度。"} + +[Rume] +_id="Rume" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNUnholyStrength.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedUnholyStrength.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedUnholyStrength.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=0 +class="melee" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=125 +goldmod=75 +hotkey={"S","S","S"} +inherit=0 +lumberbase=50 +lumbermod=100 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"邪恶力量","中级邪恶力量","高级邪恶力量"} +race="undead" +requires={"","unp1","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到邪恶力量(|cffffcc00S|r)","升级到中级邪恶力量(|cffffcc00S|r)","升级到高级邪恶力量(|cffffcc00S|r)"} +ubertip={"增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。","进一步增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。","进一步增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。"} + +[Rune] +_id="Rune" +_max_level=2 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNNecromancerAdept.blp","ReplaceableTextures\\CommandButtons\\BTNNecromancerMaster.blp"} +base1=100.0 +base2=0.325 +base3=40.0 +base4=0.0 +"buttonpos:1"=0 +"buttonpos:2"=2 +class="caster" +editorsuffix={} +effect1="rmnx" +effect2="rmnr" +effect3="rhpx" +effect4="ratd" +global=0 +goldbase=100 +goldmod=0 +hotkey={"E","E"} +inherit=1 +lumberbase=50 +lumbermod=100 +maxlevel=2 +mod1=100.0 +mod2=0.325 +mod3=40.0 +mod4=0.0 +name={"不死族巫师专家训练","不死族巫师大师训练"} +race="undead" +requires={"","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"不死族巫师专家训练(|cffffcc00E|r)","不死族巫师大师训练(|cffffcc00E|r)"} +ubertip={"增加不死族巫师的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有邪恶狂热技能。","增加不死族巫师的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有残废技能。"} + +[Rupc] +_id="Rupc" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPlagueCloud.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=100 +goldmod=0 +hotkey={"D"} +inherit=1 +lumberbase=200 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"疾病云雾"} +race="undead" +requires={"unp2"} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究疾病云雾(|cffffcc00D|r)"} +ubertip={"使得憎恶能带有疾病云雾光环,从而在内对周围的单位造成每秒点的伤害。而绞肉车的攻击也可以带有疾病效果从而在秒内对周围的单位造成每秒点的伤害。|n不死族的单位对疾病云雾免疫。"} + +[Rupm] +_id="Rupm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNPackBeast.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=3 +"buttonpos:2"=0 +editorsuffix={" (不死族)"} +global=0 +goldbase=50 +goldmod=0 +hotkey={"B"} +inherit=0 +lumberbase=25 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"背包技能"} +race="undead" +requires={"utom"} +requiresamount={} +timebase=20 +timemod=0 +tip={"研究背包技能(|cffffcc00B|r)"} +ubertip={"给予指定的不死族地面单位携带物品的能力。"} + +[Rura] +_id="Rura" +_max_level=3 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNCreatureAttack.blp","ReplaceableTextures\\CommandButtons\\BTNImprovedCreatureAttack.blp","ReplaceableTextures\\CommandButtons\\BTNAdvancedCreatureAttack.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=0 +class="ranged" +editorsuffix={} +effect1="ratd" +global=0 +goldbase=150 +goldmod=50 +hotkey={"A","A","A"} +inherit=0 +lumberbase=50 +lumbermod=75 +maxlevel=3 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"生物攻击","中级生物攻击","高级生物攻击"} +race="undead" +requires={"","unp1","unp2"} +requiresamount={} +timebase=60 +timemod=15 +tip={"升级到生物攻击(|cffffcc00A|r)","升级到中级生物攻击(|cffffcc00A|r)","升级到高级生物攻击(|cffffcc00A|r)"} +ubertip={"增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。","进一步增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。","进一步增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。"} + +[Rusf] +_id="Rusf" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNStoneForm.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"S"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"石像形态"} +race="undead" +requires={"ugrv,unp2"} +requiresamount={} +timebase=40 +timemod=0 +tip={"研究石像形态(|cffffcc00S|r)"} +ubertip={"石像形态技能能使石像鬼变成一座具有极高护甲,魔法免疫,生命值恢复加快的雕像。在这期间石像鬼也不能攻击任何敌人。"} + +[Rusl] +_id="Rusl" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSkeletalLongevity.blp"} +base1=15.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +effect1="rrai" +global=0 +goldbase=100 +goldmod=0 +hotkey={"S"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"骨质增强术"} +race="undead" +requires={} +requiresamount={} +timebase=60 +timemod=0 +tip={"研究骨质增强术(|cffffcc00S|r)"} +ubertip={"能增加召唤出来的骷髅战士的持续时间秒。"} + +[Rusm] +_id="Rusm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNSkeletonMage.blp"} +base1=1.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=1 +code1="Arai" +editorsuffix={} +effect1="rlev" +global=0 +goldbase=125 +goldmod=0 +hotkey={"M"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=1.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"骷髅法术"} +race="undead" +requires={"unp2"} +requiresamount={} +timebase=45 +timemod=0 +tip={"研究骷髅法术(|cffffcc00M|r)"} +ubertip={"让复活死尸技能召唤出来的两个骷髅中的一个成为骷髅魔法师。"} + +[Rusp] +_id="Rusp" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDestroyer.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=2 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"X"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"破坏者形态"} +race="undead" +requires={"unp2,utom"} +requiresamount={} +timebase=60 +timemod=0 +tip={"研究破坏者形态(|cffffcc00X|r)"} +ubertip={"让十胜石雕像能变成破坏者,一种必须吞噬其他单位的魔法能量来维持自己的魔法能量的大型飞行单位。破坏者具有吞噬魔法,吸收魔法,魔法免疫和毁灭之球技能。|n|n|cffffcc00能攻击地面和空中单位。|r"} + +[Ruwb] +_id="Ruwb" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNWeb.blp"} +base1=0.0 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +editorsuffix={} +global=0 +goldbase=75 +goldmod=0 +hotkey={"W"} +inherit=1 +lumberbase=75 +lumbermod=0 +maxlevel=1 +mod1=0.0 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"蛛网"} +race="undead" +requires={"ugrv,unp1"} +requiresamount={} +timebase=30 +timemod=0 +tip={"研究蛛网(|cffffcc00W|r)"} +ubertip={"使得穴居恶魔能将敌人的某个空中单位捕获到地面,从而让己方的地面单位可以对其进行攻击。"} + +[Rwdm] +_id="Rwdm" +_max_level=1 +_type="upgrade" +art={"ReplaceableTextures\\CommandButtons\\BTNDrum.blp"} +base1=0.1 +base2=0.0 +base3=0.0 +base4=0.0 +"buttonpos:1"=1 +"buttonpos:2"=2 +code1="Aakb" +editorsuffix={} +effect1="raud" +global=0 +goldbase=100 +goldmod=0 +hotkey={"D"} +inherit=1 +lumberbase=150 +lumbermod=0 +maxlevel=1 +mod1=0.1 +mod2=0.0 +mod3=0.0 +mod4=0.0 +name={"战鼓攻击力升级"} +race="orc" +requires={"ofrt,ofor"} +requiresamount={} +timebase=40 +timemod=0 +tip={"升级战鼓(|cffffcc00D|r)"} +ubertip={"经过升级以后,科多兽的战鼓光环能给予周围的单位更多的攻击力附加值。"} diff --git a/plugin/w3x2lni/script/prebuilt/default2lni.lua b/plugin/w3x2lni/script/prebuilt/default2lni.lua new file mode 100644 index 0000000..c52fee2 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/default2lni.lua @@ -0,0 +1,67 @@ + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function format_value(value) + local tp = type(value) + if tp == 'boolean' then + return tostring(value) + end + if tp == 'number' then + return tostring(value) + end + if tp == 'string' then + return ('%q'):format(value) + end +end + +local function maxindex(t) + local i = 0 + for k in pairs(t) do + i = math.max(i, k) + end + return i +end + +local function write_data(f, k, v) + if k:find '[^%w_]' then + k = ('%q'):format(k) + end + if type(v) == 'table' then + local l = {} + for i = 1, maxindex(v) do + l[i] = format_value(v[i]) or 'nil' + end + f[#f+1] = ('%s={%s}'):format(k, table.concat(l, ',')) + else + f[#f+1] = ('%s=%s'):format(k, format_value(v)) + end +end + +return function (t) + local f = {} + for i, o in sortpairs(t) do + f[#f+1] = ('[%s]'):format(i) + for k, v in sortpairs(o) do + write_data(f, k, v) + end + f[#f+1] = '' + end + return table.concat(f, '\r\n') +end diff --git a/plugin/w3x2lni/script/prebuilt/defined/codemapped.ini b/plugin/w3x2lni/script/prebuilt/defined/codemapped.ini new file mode 100644 index 0000000..18bad9a --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/codemapped.ini @@ -0,0 +1,800 @@ +[root] +AAns = AAns +ACac = AOac +ACad = ACad +ACah = AEah +ACam = Aams +ACat = AEar +ACav = AHad +ACba = AHab +ACbb = Ablo +ACbc = ANbf +ACbf = ACbf +ACbh = AHbh +ACbk = ANba +ACbl = Ablo +ACbn = AHbn +ACbz = AHbz +ACc2 = AUcs +ACc3 = AUcs +ACca = AUcs +ACcb = AHtb +ACce = ANca +ACch = ANch +ACcl = AOcl +ACcn = Acan +ACcr = Acri +ACcs = Acrs +ACct = AOcr +ACcv = AUcs +ACcw = AHca +ACcy = Acyc +ACd2 = Aadm +ACdc = AUdc +ACde = Advm +ACdm = Aadm +ACdr = AHdr +ACds = AHds +ACdv = ACdv +ACen = Aens +ACes = AEev +ACev = AEev +ACf2 = AUfu +ACf3 = ANfd +ACfa = AUfa +ACfb = ANfb +ACfd = ANfd +ACff = Afae +ACfl = ANfl +ACfn = AUfn +ACfr = AEfn +ACfs = AHfs +ACfu = AUfu +AChv = AOhw +AChw = Ahwd +AChx = AOhx +ACif = Ainf +ACim = AEim +ACls = Alsh +ACm2 = Amim +ACm3 = Amim +ACmf = ANms +ACmi = Amim +ACmo = ANmo +ACmp = AUim +ACnr = Aoar +ACpa = ANpa +ACps = Apos +ACpu = Aprg +ACpv = Awar +ACpy = Aply +ACr1 = Aroa +ACr2 = Arej +ACrd = Arai +ACrf = ANrf +ACrg = ANrf +ACrj = Arej +ACrk = Arsk +ACrn = ACrn +ACro = Aroa +ACs7 = AOsf +ACs8 = AOsf +ACs9 = AOsf +ACsa = AHfa +ACsf = AOsf +ACsh = AOsh +ACsi = ANsi +ACsk = Arsk +ACsl = AUsl +ACsm = AHdr +ACsp = ACsp +ACss = AEsh +ACst = AOsh +ACsw = Aslo +ACt2 = ACtc +ACtb = ACtb +ACtc = ACtc +ACtn = AOwd +ACua = AUau +ACuf = Auhf +ACvp = AUav +ACvs = Aven +ACwb = Aweb +ACwe = AHwe +AEIl = AEme +AEah = AEah +AEar = AEar +AEbl = AEbl +AEbu = AEbu +AEer = AEer +AEev = AEev +AEfk = AEfk +AEfn = AEfn +AEim = AEim +AEmb = AEmb +AEme = AEme +AEpa = AEpa +AEsb = AEsf +AEsf = AEsf +AEsh = AEsh +AEst = AEst +AEsv = AEsv +AEtq = AEtq +AEvi = AEme +AGbu = AGbu +AHab = AHab +AHad = AHad +AHav = AHav +AHbh = AHbh +AHbn = AHbn +AHbu = AHbu +AHbz = AHbz +AHca = AHca +AHdr = AHdr +AHds = AHds +AHer = AHer +AHfa = AHfa +AHfs = AHfs +AHhb = AHhb +AHmt = AHmt +AHpx = AHpx +AHre = AHre +AHta = AIta +AHtb = AHtb +AHtc = AHtc +AHwe = AHwe +AI2m = AImm +AIa1 = AIab +AIa3 = AIab +AIa4 = AIab +AIa6 = AIab +AIaa = AIaa +AIad = AHad +AIae = AOae +AIam = AIam +AIan = AIan +AIar = AEar +AIat = AIat +AIau = AUau +AIav = AUav +AIaz = AIab +AIba = AHab +AIbb = AIbl +AIbf = AIbl +AIbg = AIbl +AIbh = AIbl +AIbk = AEbl +AIbl = AIbl +AIbm = AImm +AIbr = AIbl +AIbs = AIbl +AIbt = AIbl +AIbx = AHbh +AIcb = AIcb +AIcd = AOac +AIcf = AIcf +AIcl = AOcl +AIcm = Acmg +AIco = AIco +AIcs = AOcr +AIct = AIct +AIcy = Acyc +AId0 = AIde +AId1 = AIde +AId2 = AIde +AId3 = AIde +AId4 = AIde +AId5 = AIde +AId7 = AIde +AId8 = AIde +AIda = AIda +AIdb = AIda +AIdc = AIdc +AIdd = AIdd +AIdf = AIsb +AIdi = AIdi +AIdm = AIdm +AIdn = AIfb +AIdp = AUdp +AIds = AIdi +AIdv = AHds +AIe2 = AIem +AIem = AIem +AIev = AEev +AIfa = AIfa +AIfb = AIfb +AIfd = AIfs +AIfe = AIfe +AIff = AIfs +AIfg = Aclf +AIfh = AIfs +AIfl = AIfl +AIfm = AIfm +AIfn = AIfn +AIfo = AIfo +AIfr = AIfs +AIfs = AIfs +AIft = AIob +AIfu = AIfs +AIfw = AIfb +AIfx = AIfl +AIfz = ANfd +AIgd = AIfb +AIgf = AIgl +AIgm = AIam +AIgo = AIgo +AIgu = AIgl +AIgx = Aoar +AIh1 = AIhe +AIh2 = AIhe +AIh3 = AIhe +AIha = AIha +AIhb = AIha +AIhl = AHhb +AIhw = Ahwd +AIhx = AIhe +AIi1 = AIab +AIi3 = AIab +AIi4 = AIab +AIi6 = AIab +AIil = AIil +AIim = AIim +AIin = AUin +AIir = AIfs +AIl1 = AIml +AIl2 = AIml +AIlb = AIlb +AIlf = AIml +AIll = AIsb +AIlm = AIlm +AIlp = AIlp +AIls = Alsh +AIlu = AIlu +AIlx = AIsb +AIlz = AIml +AIm1 = AIma +AIm2 = AIma +AImb = AImm +AImh = AImi +AImo = AImo +AImr = AImr +AIms = AIms +AImt = AHmt +AImv = AImm +AImx = Amim +AImz = AImm +AInd = ACad +AInm = AIsm +AInv = AInv +AIob = AIob +AIos = Aslo +AIp1 = AIrg +AIp2 = AIrg +AIp3 = AIrg +AIp4 = AIrg +AIp5 = AIrg +AIp6 = AIrg +AIpb = AIpb +AIpg = Aprg +AIpl = AIrg +AIpm = AIpm +AIpr = AIrg +AIps = Aprg +AIpv = AIpv +AIpx = AImi +AIpz = AIha +AIra = AIra +AIrb = AIrb +AIrc = AIrc +AIrd = AIrd +AIre = AIre +AIri = AIri +AIrl = AIrg +AIrm = AIrm +AIrn = AIrm +AIrr = Aroa +AIrs = AIrs +AIrt = AIrt +AIrv = AIrv +AIrx = AHre +AIs1 = AIab +AIs2 = AIas +AIs3 = AIab +AIs4 = AIab +AIs6 = AIab +AIsa = AIsa +AIsb = AIsb +AIse = ANsi +AIsh = AIsh +AIsi = AIsi +AIsl = AIrg +AIsm = AIsm +AIso = AIso +AIsp = AIsp +AIsr = AIsr +AIsw = Aeye +AIsx = AIas +AIsz = Aspo +AIt6 = AIat +AIt9 = AIat +AIta = AIta +AItb = AItb +AItc = AIat +AItf = AIat +AItg = AIat +AIth = AIat +AIti = AIat +AItj = AIat +AItk = AIat +AItl = AIat +AItm = AIim +AItn = AIat +AItp = AItp +AItx = AIat +AIuf = Auhf +AIuv = Ault +AIuw = AIfs +AIv1 = AIvi +AIv2 = AIvi +AIva = AIva +AIvl = AIvu +AIvu = AIvu +AIwb = AIwb +AIwm = ANwm +AIx1 = AIab +AIx2 = AIab +AIx3 = AIab +AIx4 = AIab +AIx5 = AIab +AIxk = Absk +AIxm = AIxm +AIxs = Aami +AIzb = AIzb +ANab = ANab +ANak = Afak +ANav = AHav +ANb2 = AHbh +ANba = ANba +ANbf = ANbf +ANbh = AHbh +ANbl = AEbl +ANbr = ANbr +ANbs = ANbs +ANbu = ANbu +ANc1 = ANcs +ANc2 = ANcs +ANc3 = ANcs +ANca = ANca +ANcf = ANbf +ANch = ANch +ANcl = ANcl +ANcr = ANcr +ANcs = ANcs +ANd1 = ANde +ANd2 = ANde +ANd3 = ANde +ANdb = ANdb +ANdc = ANdc +ANde = ANde +ANdh = ANdh +ANdo = ANdo +ANdp = ANdp +ANdr = AHdr +ANef = ANef +ANeg = ANeg +ANen = Aens +ANfa = AHca +ANfb = ANfb +ANfd = ANfd +ANfl = ANfl +ANfs = AHfs +ANfy = ANfy +ANg1 = ANrg +ANg2 = ANrg +ANg3 = ANrg +ANha = Ahar +ANhs = ANhs +ANht = ANht +ANhw = AOhw +ANhx = AOhx +ANia = ANia +ANic = ANic +ANin = ANin +ANlm = ANlm +ANmo = ANmo +ANmr = ANmr +ANms = ANms +ANpa = ANpa +ANpi = ANpi +ANpr = ANpr +ANr2 = AOre +ANr3 = ANrc +ANrc = ANrc +ANre = Aarm +ANrf = ANrf +ANrg = ANrg +ANrn = AOre +ANs1 = ANsy +ANs2 = ANsy +ANs3 = ANsy +ANsa = ANsa +ANsb = AHtb +ANse = ANse +ANsg = ANsg +ANsh = AOsh +ANsi = ANsi +ANsl = ANsl +ANso = ANso +ANsq = ANsq +ANss = ANss +ANst = ANst +ANsw = ANsw +ANsy = ANsy +ANt2 = AUts +ANta = Atau +ANth = AUts +ANtm = ANtm +ANto = ANto +ANtr = Atru +ANvc = ANvc +ANwk = AOwk +ANwm = ANwm +AOae = AOae +AObu = AObu +AOcl = AOcl +AOcr = AOcr +AOeq = AOeq +AOfs = AOfs +AOhw = AOhw +AOhx = AOhx +AOls = AUls +AOmi = AOmi +AOr2 = AOae +AOr3 = AOre +AOre = AOre +AOs2 = AOsh +AOsf = AOsf +AOsh = AOsh +AOsw = AOwd +AOvd = AOvd +AOw2 = AOws +AOwk = AOwk +AOws = AOws +AOww = AOww +APdi = AIdi +APh1 = AIha +APh2 = AIha +APh3 = AIha +APmg = AImr +APmr = AImr +APra = AIra +APrl = AHre +APrr = AHre +APsa = AIsa +APwt = Aeye +ARal = ARal +AUan = AUan +AUau = AUau +AUav = AUav +AUbu = AUbu +AUcb = AUcb +AUcs = AUcs +AUdc = AUdc +AUdd = AUdd +AUdp = AUdp +AUdr = AUdr +AUds = AUds +AUfa = AUfa +AUfn = AUfn +AUfu = AUfu +AUim = AUim +AUin = AUin +AUls = AUls +AUsl = AUsl +AUts = AUts +Aabr = Aabr +Aabs = Aabs +Aadm = Aadm +Aaha = Aaha +Aakb = Aakb +Aall = Aall +Aalr = Aalr +Aam2 = Aams +Aamk = Aamk +Aams = Aams +Aap1 = Aapl +Aap2 = Aapl +Aap3 = Aapl +Aap4 = Aapl +Aasl = Aasl +Aast = Aast +Aatk = Aatk +Aave = Aave +Aawa = Aawa +Abdl = Abli +Abds = Abli +Abdt = Abdt +Abgl = Abli +Abgm = Abgm +Abgs = Abli +Ablo = Ablo +Ablp = Ablp +Abof = Abof +Abrf = Abrf +Absk = Absk +Abtl = Abtl +Abu2 = Abur +Abu3 = Abur +Abu5 = Abur +Abun = Abun +Abur = Abur +Acan = Acan +Acdb = ANdb +Acdh = ANdh +Acef = ANef +Achd = Achd +Ache = AIdc +Achl = Achl +Acht = ANht +Aclf = Aclf +Acmg = Acmg +Acn2 = Acan +Acny = Acyc +Aco2 = Acoi +Aco3 = Acoi +Acoa = Acoa +Acoh = Acoh +Acor = Acor +Acpf = Acpf +Acri = Acri +Acrs = Acrs +Acyc = Acyc +Adch = Adch +Adcn = Adis +Adda = Adda +Adec = Adec +Adef = Adef +Adev = Adev +Adis = Adis +Adri = Adri +Adro = Adro +Adsm = Adis +Adt1 = Adet +Adtg = Atru +Adtn = Adtn +Adts = Adts +Advc = Advc +Advm = Advm +Aeat = Aeat +Aegm = Aegm +Aegr = AIdd +Aenc = Aenc +Aenr = AEer +Aens = Aens +Aent = Aent +Aenw = AEer +Aesn = Aesn +Aesr = Aesn +Aetf = Aetf +Aeth = Aeth +Aetl = Aetl +Aexh = Aexh +Aeye = Aeye +Afa2 = Afae +Afae = Afae +Afak = Afak +Afbb = Afbk +Afbk = Afbk +Afbt = Afbk +Afih = Afih +Afin = Afin +Afio = Afio +Afir = Afir +Afiu = Afiu +Afla = Afla +Aflk = Aflk +Afod = ANfd +Afr2 = Afra +Afra = Afra +Afrb = Afrb +Afrz = Afrz +Afsh = Afsh +Afzy = Afzy +Agho = Agho +Agld = Agld +Agra = Agra +Agyb = Agyb +Agyd = Agyd +Agyv = Agyv +Ahar = Ahar +Ahea = Ahea +Ahid = Ahid +Ahnl = Aroa +Ahr2 = Ahrl +Ahr3 = Ahrl +Ahrl = Ahrl +Ahrp = Arep +Ahwd = Ahwd +Aien = AInv +Aihn = AInv +Aimp = Aimp +Ainf = Ainf +Aion = AInv +Aiun = AInv +Aivs = Aivs +Alam = Alam +Aliq = Aliq +Alit = Alit +Aloa = Aloa +Aloc = Aloc +Alsh = Alsh +Amb2 = Ambt +Ambb = AEmb +Ambd = AEmb +Ambt = Ambt +Amdf = Amdf +Amec = Amec +Amed = Amed +Amel = Amel +Amfl = Amfl +Amgl = Amgl +Amgr = Amgl +Amic = Amic +Amil = Amil +Amim = Amim +Amin = Amin +Amls = Amls +Amnb = AEmb +Amnx = Adda +Amnz = Adda +Amov = Amov +Amrf = Arav +Andm = Aadm +Andt = Andt +Ane2 = Aneu +Aneu = Aneu +Anh1 = Anhe +Anh2 = Anhe +Anhe = Anhe +Ansk = Assk +Ansp = Ansp +Aoar = Aoar +Apak = AInv +Apg2 = Aprg +Aphx = Aphx +Apig = Apig +Apit = Apit +Apiv = Apiv +Aply = Aply +Apmf = ANpi +Apo2 = Apo2 +Apoi = Apoi +Apos = Apos +Aprg = Aprg +Aps2 = Aps2 +Apsh = Apsh +Apts = Apts +Apxf = Apxf +Ara2 = Aroa +Arai = Arai +Arav = Arav +Arbr = Arbr +Arej = Arej +Arel = Arel +Aren = Aren +Arep = Arep +Aret = Aret +Arev = Arev +Argd = Artn +Argl = Artn +Arll = Arel +Arlm = Artn +Arng = Arng +Aro1 = Aroo +Aro2 = Aroo +Aroa = Aroa +Aroc = Aroc +Arpb = Arpb +Arpl = Arpl +Arpm = Arpm +Arsg = AOsf +Arsk = Arsk +Arsp = ANst +Arsq = ANsq +Arst = Arst +Arsw = AOwd +Asac = Asac +Asal = Asal +Asb1 = ANsu +Asb2 = ANsu +Asb3 = ANsu +Asd2 = Asds +Asd3 = Asds +Asdg = Asds +Asds = Asds +Ashm = Ashm +Ashs = Ashs +Asid = Asid +Asla = Asla +Aslo = Aslo +Aslp = ANwm +Asod = Asod +Asou = Asou +Asp1 = Asph +Asp2 = Asph +Asp3 = Asph +Asp4 = Asph +Asp5 = Asph +Asp6 = Asph +Aspa = Aspa +Aspb = Aspb +Aspd = Aspd +Asph = Asph +Aspi = Aspi +Aspl = Aspl +Aspo = Aspo +Aspp = Aspl +Asps = Asps +Aspt = Aspd +Aspy = Aspd +Assk = Assk +Assp = Assp +Asta = Asta +Astd = Astd +Aste = Aste +Asth = Asth +Astn = Astn +Asud = Asud +Atau = Atau +Atdg = Atdg +Atdp = Atdp +Atlp = Atlp +Atol = Atol +Atru = Atru +Atsp = Atsp +Attu = Attu +Atwa = Atwa +Auco = Auco +Auhf = Auhf +Ault = Ault +Auns = Auns +Aven = Aven +Avng = Avng +Avul = Avul +Awan = Awan +Awar = Awar +Aweb = Aweb +Awfb = ANfb +Awh2 = Awha +Awha = Awha +Awrg = AOws +Awrh = AOws +Awrp = Awrp +Awrs = AOws +SCae = AOae +SCc1 = Acyc +SCva = AIva +SNdc = ANdc +SNdd = AUdd +SNeq = AOeq +SNin = AUin +Sbsk = Acha +Sbtl = Abtl +Sca1 = Acha +Sca2 = Acha +Sca3 = Acha +Sca4 = Acha +Sca5 = Acha +Sca6 = Acha +Sch2 = Amtc +Sch3 = Acar +Sch4 = Acar +Sch5 = Acar +Scri = Acri +Sdro = Adro +Slo2 = Aloa +Slo3 = Aloa +Sloa = Aloa +Srtt = Acha +Sshm = Ashm +Suhf = Auhf \ No newline at end of file diff --git a/plugin/w3x2lni/script/prebuilt/defined/keydata.ini b/plugin/w3x2lni/script/prebuilt/defined/keydata.ini new file mode 100644 index 0000000..6b09434 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/keydata.ini @@ -0,0 +1,528 @@ +[root] +ability = { +animnames, +areaeffectart, +art, +"buttonpos:1", +"buttonpos:2", +casterart, +casterattach, +casterattach1, +casterattachcount, +editorsuffix, +effectart, +effectsound, +effectsoundlooped, +hotkey, +lightningeffect, +missilearc, +missileart, +missilehoming, +missilespeed, +name, +order, +orderoff, +orderon, +requires, +requiresamount, +researchart, +"researchbuttonpos:1", +"researchbuttonpos:2", +researchhotkey, +researchtip, +researchubertip, +specialart, +specialattach, +targetart, +targetattach, +targetattach1, +targetattach2, +targetattach3, +targetattach4, +targetattach5, +targetattachcount, +tip, +ubertip, +unart, +"unbuttonpos:1", +"unbuttonpos:2", +unhotkey, +unorder, +untip, +unubertip, +} +buff = { +buffart, +bufftip, +buffubertip, +editorname, +editorsuffix, +effectart, +effectattach, +effectsound, +effectsoundlooped, +lightningeffect, +missilearc, +missileart, +missilehoming, +missilespeed, +specialart, +specialattach, +spelldetail, +targetart, +targetattach, +targetattach1, +targetattach2, +targetattach3, +targetattach4, +targetattach5, +targetattachcount, +} +unit = { +animprops, +art, +attachmentanimprops, +attachmentlinkprops, +awakentip, +boneprops, +buildingsoundlabel, +builds, +"buttonpos:1", +"buttonpos:2", +casterupgradeart, +casterupgradename, +casterupgradetip, +dependencyor, +description, +editorsuffix, +hotkey, +loopingsoundfadein, +loopingsoundfadeout, +makeitems, +"missilearc:1", +"missilearc:2", +"missileart:1", +"missileart:2", +"missilehoming:1", +"missilehoming:2", +"missilespeed:1", +"missilespeed:2", +movementsoundlabel, +name, +propernames, +randomsoundlabel, +requires, +requires1, +requires2, +requires3, +requires4, +requires5, +requires6, +requires7, +requires8, +requiresamount, +requirescount, +researches, +revive, +reviveat, +revivetip, +scorescreenicon, +sellitems, +sellunits, +specialart, +targetart, +tip, +trains, +ubertip, +upgrade, +} +item = { +art, +"buttonpos:1", +"buttonpos:2", +description, +hotkey, +name, +requires, +requiresamount, +tip, +ubertip, +} +upgrade = { +art, +"buttonpos:1", +"buttonpos:2", +editorsuffix, +hotkey, +name, +requires, +requiresamount, +tip, +ubertip, +} +"doodads\\doodads.slk" = { +animinfog, +canplacerandscale, +category, +defscale, +file, +fixedrot, +floats, +ignoremodelclick, +maxpitch, +maxroll, +maxscale, +minscale, +mmblue, +mmgreen, +mmred, +name, +numvar, +oncliffs, +onwater, +pathtex, +selsize, +shadow, +showinfog, +showinmm, +soundloop, +tilesets, +tilesetspecific, +useclickhelper, +usemmcolor, +userlist, +vertb, +vertg, +vertr, +visradius, +walkable, +} +"units\\abilitybuffdata.slk" = { +iseffect, +race, +} +"units\\abilitydata.slk" = { +area, +buffid, +cast, +checkdep, +cool, +cost, +dur, +efctid, +hero, +herodur, +item, +levels, +levelskip, +priority, +race, +reqlevel, +rng, +targs, +} +"units\\destructabledata.slk" = { +armor, +buildtime, +canplacedead, +canplacerandscale, +category, +cliffheight, +colorb, +colorg, +colorr, +deathsnd, +editorsuffix, +fatlos, +file, +fixedrot, +flyh, +fogradius, +fogvis, +goldrep, +hp, +lightweight, +lumberrep, +maxpitch, +maxroll, +maxscale, +minscale, +mmblue, +mmgreen, +mmred, +name, +numvar, +occh, +oncliffs, +onwater, +pathtex, +pathtexdeath, +portraitmodel, +radius, +repairtime, +selcircsize, +selectable, +selsize, +shadow, +showinmm, +targtype, +texfile, +texid, +tilesets, +tilesetspecific, +useclickhelper, +usemmcolor, +userlist, +walkable, +} +"units\\itemdata.slk" = { +abillist, +armor, +class, +colorb, +colorg, +colorr, +cooldownid, +drop, +droppable, +file, +goldcost, +hp, +ignorecd, +level, +lumbercost, +morph, +oldlevel, +pawnable, +perishable, +pickrandom, +powerup, +prio, +scale, +sellable, +selsize, +stockmax, +stockregen, +stockstart, +usable, +uses, +} +"units\\unitabilities.slk" = { +abillist, +auto, +heroabillist, +} +"units\\unitbalance.slk" = { +agi, +agiplus, +bldtm, +bountydice, +bountyplus, +bountysides, +collision, +def, +deftype, +defup, +fmade, +fused, +goldcost, +goldrep, +hp, +int, +intplus, +isbldg, +level, +lumberbountydice, +lumberbountyplus, +lumberbountysides, +lumbercost, +lumberrep, +mana0, +manan, +maxspd, +minspd, +nbrandom, +nsight, +preventplace, +primary, +regenhp, +regenmana, +regentype, +reptm, +repulse, +repulsegroup, +repulseparam, +repulseprio, +requireplace, +sight, +spd, +stockmax, +stockregen, +stockstart, +str, +strplus, +tilesets, +type, +upgrades, +} +"units\\unitdata.slk" = { +buffradius, +bufftype, +canbuildon, +canflee, +cansleep, +cargosize, +death, +deathtype, +fatlos, +formation, +isbuildon, +movefloor, +moveheight, +movetp, +namecount, +orientinterp, +pathtex, +points, +prio, +propwin, +race, +requirewaterradius, +targtype, +turnrate, +} +"units\\unitui.slk" = { +armor, +blend, +blue, +buildingshadow, +campaign, +customteamcolor, +dropitems, +elevpts, +elevrad, +file, +fileverflags, +fograd, +green, +hideherobar, +hideherodeathmsg, +hideherominimap, +hideonminimap, +hostilepal, +ineditor, +maxpitch, +maxroll, +modelscale, +nbmmicon, +occh, +red, +run, +scale, +scalebull, +selcirconwater, +selz, +shadowh, +shadowonwater, +shadoww, +shadowx, +shadowy, +special, +teamcolor, +tilesetspecific, +ubersplat, +unitshadow, +unitsound, +useclickhelper, +walk, +} +"units\\unitweapons.slk" = { +acquire, +atktype1, +atktype2, +backsw1, +backsw2, +castbsw, +castpt, +cool1, +cool2, +damageloss1, +damageloss2, +dice1, +dice2, +dmgplus1, +dmgplus2, +dmgpt1, +dmgpt2, +dmgup1, +dmgup2, +farea1, +farea2, +harea1, +harea2, +hfact1, +hfact2, +impactswimz, +impactz, +launchswimz, +launchx, +launchy, +launchz, +minrange, +qarea1, +qarea2, +qfact1, +qfact2, +rangen1, +rangen2, +rngbuff1, +rngbuff2, +showui1, +showui2, +sides1, +sides2, +spilldist1, +spilldist2, +spillradius1, +spillradius2, +splashtargs1, +splashtargs2, +targcount1, +targcount2, +targs1, +targs2, +weapson, +weaptp1, +weaptp2, +weaptype1, +weaptype2, +} +"units\\upgradedata.slk" = { +base1, +base2, +base3, +base4, +class, +code1, +code2, +code3, +code4, +effect1, +effect2, +effect3, +effect4, +global, +goldbase, +goldmod, +inherit, +lumberbase, +lumbermod, +maxlevel, +mod1, +mod2, +mod3, +mod4, +race, +timebase, +timemod, +} \ No newline at end of file diff --git a/plugin/w3x2lni/script/prebuilt/defined/metadata.ini b/plugin/w3x2lni/script/prebuilt/defined/metadata.ini new file mode 100644 index 0000000..8d0f183 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/metadata.ini @@ -0,0 +1,14872 @@ +[ability] +[.animnames] +concat = true +displayname = WESTRING_AEVAL_AANI +field = Animnames +id = aani +key = animnames +profile = true +type = 3 +[.area] +displayname = WESTRING_AEVAL_AARE +field = Area +id = aare +key = Area +repeat = 4 +type = 2 +[.areaeffectart] +concat = true +displayname = WESTRING_AEVAL_AAEA +field = Areaeffectart +id = aaea +key = areaeffectart +profile = true +type = 3 +[.art] +cantempty = true +displayname = WESTRING_AEVAL_AART +field = Art +id = aart +key = art +profile = true +type = 3 +[.buffid] +concat = true +displayname = WESTRING_AEVAL_ABUF +field = BuffID +id = abuf +key = BuffID +repeat = 4 +type = 3 +[."buttonpos:1"] +displayname = WESTRING_AEVAL_ABPX +field = Buttonpos:1 +id = abpx +index = 1 +key = buttonpos +profile = true +type = 0 +[."buttonpos:2"] +displayname = WESTRING_AEVAL_ABPY +field = Buttonpos:2 +id = abpy +index = 2 +key = buttonpos +profile = true +type = 0 +[.cast] +displayname = WESTRING_AEVAL_ACAS +field = Cast +id = acas +key = Cast +repeat = 4 +type = 2 +[.casterart] +concat = true +displayname = WESTRING_AEVAL_ACAT +field = CasterArt +id = acat +key = casterart +profile = true +type = 3 +[.casterattach] +concat = true +displayname = WESTRING_AEVAL_ACAP +field = Casterattach +id = acap +key = casterattach +profile = true +type = 3 +[.casterattach1] +concat = true +displayname = WESTRING_AEVAL_ACA1 +field = Casterattach1 +id = aca1 +key = casterattach1 +profile = true +type = 3 +[.casterattachcount] +displayname = WESTRING_AEVAL_ACAC +field = Casterattachcount +id = acac +key = casterattachcount +profile = true +type = 0 +[.checkdep] +displayname = WESTRING_AEVAL_ACHD +field = checkDep +id = achd +key = checkDep +type = 0 +[.cool] +displayname = WESTRING_AEVAL_ACDN +field = Cool +id = acdn +key = Cool +repeat = 4 +type = 2 +[.cost] +displayname = WESTRING_AEVAL_AMCS +field = Cost +id = amcs +key = Cost +repeat = 4 +type = 0 +[.dur] +displayname = WESTRING_AEVAL_ADUR +field = Dur +id = adur +key = Dur +repeat = 4 +type = 2 +[.editorsuffix] +displayname = WESTRING_AEVAL_ANSF +field = EditorSuffix +id = ansf +key = editorsuffix +profile = true +type = 3 +[.efctid] +concat = true +displayname = WESTRING_AEVAL_AEFF +field = EfctID +id = aeff +key = EfctID +repeat = 4 +type = 3 +[.effectart] +concat = true +displayname = WESTRING_AEVAL_AEAT +field = EffectArt +id = aeat +key = effectart +profile = true +type = 3 +[.effectsound] +displayname = WESTRING_AEVAL_AEFS +field = Effectsound +id = aefs +key = effectsound +profile = true +splite = true +type = 3 +[.effectsoundlooped] +displayname = WESTRING_AEVAL_AEFL +field = Effectsoundlooped +id = aefl +key = effectsoundlooped +profile = true +splite = true +type = 3 +[.hero] +displayname = WESTRING_AEVAL_AHER +field = hero +id = aher +key = hero +type = 0 +[.herodur] +displayname = WESTRING_AEVAL_AHDU +field = HeroDur +id = ahdu +key = HeroDur +repeat = 4 +type = 2 +[.hotkey] +displayname = WESTRING_AEVAL_AHKY +field = Hotkey +id = ahky +key = hotkey +profile = true +type = 3 +[.item] +displayname = WESTRING_AEVAL_AITE +field = item +id = aite +key = item +type = 0 +[.levels] +displayname = WESTRING_AEVAL_ALEV +field = levels +id = alev +key = levels +type = 0 +[.levelskip] +displayname = WESTRING_AEVAL_ALSK +field = levelSkip +id = alsk +key = levelSkip +type = 0 +[.lightningeffect] +concat = true +displayname = WESTRING_AEVAL_ALIG +field = LightningEffect +id = alig +key = lightningeffect +profile = true +type = 3 +[.missilearc] +displayname = WESTRING_AEVAL_AMAC +field = Missilearc +id = amac +key = missilearc +profile = true +type = 2 +[.missileart] +concat = true +displayname = WESTRING_AEVAL_AMAT +field = Missileart +id = amat +key = missileart +profile = true +type = 3 +[.missilehoming] +displayname = WESTRING_AEVAL_AMHO +field = MissileHoming +id = amho +key = missilehoming +profile = true +type = 0 +[.missilespeed] +displayname = WESTRING_AEVAL_AMSP +field = Missilespeed +id = amsp +key = missilespeed +profile = true +type = 0 +[.name] +displayname = WESTRING_AEVAL_ANAM +field = Name +id = anam +key = name +profile = true +type = 3 +[.order] +displayname = WESTRING_AEVAL_AORD +field = Order +id = aord +key = order +profile = true +splite = true +type = 3 +[.orderoff] +displayname = WESTRING_AEVAL_AORF +field = Orderoff +id = aorf +key = orderoff +profile = true +splite = true +type = 3 +[.orderon] +displayname = WESTRING_AEVAL_AORO +field = Orderon +id = aoro +key = orderon +profile = true +splite = true +type = 3 +[.priority] +displayname = WESTRING_AEVAL_APRI +field = priority +id = apri +key = priority +type = 0 +[.race] +displayname = WESTRING_AEVAL_ARAC +field = race +id = arac +key = race +type = 3 +[.reqlevel] +displayname = WESTRING_AEVAL_ARLV +field = reqLevel +id = arlv +key = reqLevel +type = 0 +[.requires] +concat = true +displayname = WESTRING_AEVAL_AREQ +field = Requires +id = areq +key = requires +profile = true +type = 3 +[.requiresamount] +concat = true +displayname = WESTRING_AEVAL_ARQA +field = Requiresamount +id = arqa +key = requiresamount +profile = true +type = 3 +[.researchart] +displayname = WESTRING_AEVAL_ARAR +field = ResearchArt +id = arar +key = researchart +profile = true +type = 3 +[."researchbuttonpos:1"] +displayname = WESTRING_AEVAL_ARPX +field = Researchbuttonpos:1 +id = arpx +index = 1 +key = researchbuttonpos +profile = true +type = 0 +[."researchbuttonpos:2"] +displayname = WESTRING_AEVAL_ARPY +field = Researchbuttonpos:2 +id = arpy +index = 2 +key = researchbuttonpos +profile = true +type = 0 +[.researchhotkey] +displayname = WESTRING_AEVAL_ARHK +field = Researchhotkey +id = arhk +key = researchhotkey +profile = true +type = 3 +[.researchtip] +displayname = WESTRING_AEVAL_ARET +field = Researchtip +id = aret +key = researchtip +profile = true +type = 3 +[.researchubertip] +displayname = WESTRING_AEVAL_ARUT +field = Researchubertip +id = arut +key = researchubertip +profile = true +type = 3 +[.rng] +displayname = WESTRING_AEVAL_ARAN +field = Rng +id = aran +key = Rng +repeat = 4 +type = 2 +[.specialart] +concat = true +displayname = WESTRING_AEVAL_ASAT +field = SpecialArt +id = asat +key = specialart +profile = true +type = 3 +[.specialattach] +concat = true +displayname = WESTRING_AEVAL_ASPT +field = Specialattach +id = aspt +key = specialattach +profile = true +type = 3 +[.targetart] +concat = true +displayname = WESTRING_AEVAL_ATAT +field = TargetArt +id = atat +key = targetart +profile = true +type = 3 +[.targetattach] +concat = true +displayname = WESTRING_AEVAL_ATA0 +field = Targetattach +id = ata0 +key = targetattach +profile = true +type = 3 +[.targetattach1] +concat = true +displayname = WESTRING_AEVAL_ATA1 +field = Targetattach1 +id = ata1 +key = targetattach1 +profile = true +type = 3 +[.targetattach2] +concat = true +displayname = WESTRING_AEVAL_ATA2 +field = Targetattach2 +id = ata2 +key = targetattach2 +profile = true +type = 3 +[.targetattach3] +concat = true +displayname = WESTRING_AEVAL_ATA3 +field = Targetattach3 +id = ata3 +key = targetattach3 +profile = true +type = 3 +[.targetattach4] +concat = true +displayname = WESTRING_AEVAL_ATA4 +field = Targetattach4 +id = ata4 +key = targetattach4 +profile = true +type = 3 +[.targetattach5] +concat = true +displayname = WESTRING_AEVAL_ATA5 +field = Targetattach5 +id = ata5 +key = targetattach5 +profile = true +type = 3 +[.targetattachcount] +displayname = WESTRING_AEVAL_ATAC +field = Targetattachcount +id = atac +key = targetattachcount +profile = true +type = 0 +[.targs] +concat = true +displayname = WESTRING_AEVAL_ATAR +field = targs +id = atar +key = targs +repeat = 4 +type = 3 +[.tip] +cantempty = true +displayname = WESTRING_AEVAL_ATP1 +field = Tip +id = atp1 +key = tip +profile = true +repeat = 3 +type = 3 +[.ubertip] +displayname = WESTRING_AEVAL_AUB1 +field = Ubertip +id = aub1 +key = ubertip +profile = true +repeat = 3 +type = 3 +[.unart] +displayname = WESTRING_AEVAL_AUAR +field = Unart +id = auar +key = unart +profile = true +type = 3 +[."unbuttonpos:1"] +displayname = WESTRING_AEVAL_AUBX +field = UnButtonpos:1 +id = aubx +index = 1 +key = unbuttonpos +profile = true +type = 0 +[."unbuttonpos:2"] +displayname = WESTRING_AEVAL_AUBY +field = UnButtonpos:2 +id = auby +index = 2 +key = unbuttonpos +profile = true +type = 0 +[.unhotkey] +displayname = WESTRING_AEVAL_AUHK +field = Unhotkey +id = auhk +key = unhotkey +profile = true +type = 3 +[.unorder] +displayname = WESTRING_AEVAL_AORU +field = Unorder +id = aoru +key = unorder +profile = true +splite = true +type = 3 +[.untip] +displayname = WESTRING_AEVAL_AUT1 +field = Untip +id = aut1 +key = untip +profile = true +repeat = 3 +type = 3 +[.unubertip] +displayname = WESTRING_AEVAL_AUU1 +field = Unubertip +id = auu1 +key = unubertip +profile = true +repeat = 3 +type = 3 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 + +[buff] +[.buffart] +displayname = WESTRING_FEVAL_FART +field = Buffart +id = fart +key = buffart +profile = true +splite = true +type = 3 +[.bufftip] +displayname = WESTRING_FEVAL_FTIP +field = Bufftip +id = ftip +key = bufftip +profile = true +splite = true +type = 3 +[.buffubertip] +displayname = WESTRING_FEVAL_FUBE +field = Buffubertip +id = fube +key = buffubertip +profile = true +splite = true +type = 3 +[.editorname] +displayname = WESTRING_FEVAL_FNAM +field = EditorName +id = fnam +key = editorname +profile = true +splite = true +type = 3 +[.editorsuffix] +displayname = WESTRING_FEVAL_FNSF +field = EditorSuffix +id = fnsf +key = editorsuffix +profile = true +splite = true +type = 3 +[.effectart] +concat = true +displayname = WESTRING_FEVAL_FEAT +field = EffectArt +id = feat +key = effectart +profile = true +type = 3 +[.effectattach] +concat = true +displayname = WESTRING_FEVAL_FEFT +field = Effectattach +id = feft +key = effectattach +profile = true +type = 3 +[.effectsound] +displayname = WESTRING_FEVAL_FEFS +field = Effectsound +id = fefs +key = effectsound +profile = true +splite = true +type = 3 +[.effectsoundlooped] +displayname = WESTRING_FEVAL_FEFL +field = Effectsoundlooped +id = fefl +key = effectsoundlooped +profile = true +splite = true +type = 3 +[.iseffect] +displayname = WESTRING_FEVAL_FEFF +field = isEffect +id = feff +key = isEffect +type = 0 +[.lightningeffect] +displayname = WESTRING_FEVAL_FLIG +field = LightningEffect +id = flig +key = lightningeffect +profile = true +splite = true +type = 3 +[.missilearc] +displayname = WESTRING_FEVAL_FMAC +field = Missilearc +id = fmac +key = missilearc +profile = true +type = 2 +[.missileart] +concat = true +displayname = WESTRING_FEVAL_FMAT +field = Missileart +id = fmat +key = missileart +profile = true +type = 3 +[.missilehoming] +displayname = WESTRING_FEVAL_FMHO +field = MissileHoming +id = fmho +key = missilehoming +profile = true +type = 0 +[.missilespeed] +displayname = WESTRING_FEVAL_FMSP +field = Missilespeed +id = fmsp +key = missilespeed +profile = true +type = 0 +[.race] +displayname = WESTRING_FEVAL_FRAC +field = race +id = frac +key = race +splite = true +type = 3 +[.specialart] +concat = true +displayname = WESTRING_FEVAL_FSAT +field = SpecialArt +id = fsat +key = specialart +profile = true +type = 3 +[.specialattach] +concat = true +displayname = WESTRING_FEVAL_FSPT +field = Specialattach +id = fspt +key = specialattach +profile = true +type = 3 +[.spelldetail] +displayname = WESTRING_FEVAL_FSPD +field = Spelldetail +id = fspd +key = spelldetail +profile = true +type = 0 +[.targetart] +concat = true +displayname = WESTRING_FEVAL_FTAT +field = TargetArt +id = ftat +key = targetart +profile = true +type = 3 +[.targetattach] +concat = true +displayname = WESTRING_FEVAL_FTA0 +field = Targetattach +id = fta0 +key = targetattach +profile = true +type = 3 +[.targetattach1] +concat = true +displayname = WESTRING_FEVAL_FTA1 +field = Targetattach1 +id = fta1 +key = targetattach1 +profile = true +type = 3 +[.targetattach2] +concat = true +displayname = WESTRING_FEVAL_FTA2 +field = Targetattach2 +id = fta2 +key = targetattach2 +profile = true +type = 3 +[.targetattach3] +concat = true +displayname = WESTRING_FEVAL_FTA3 +field = Targetattach3 +id = fta3 +key = targetattach3 +profile = true +type = 3 +[.targetattach4] +concat = true +displayname = WESTRING_FEVAL_FTA4 +field = Targetattach4 +id = fta4 +key = targetattach4 +profile = true +type = 3 +[.targetattach5] +concat = true +displayname = WESTRING_FEVAL_FTA5 +field = Targetattach5 +id = fta5 +key = targetattach5 +profile = true +type = 3 +[.targetattachcount] +displayname = WESTRING_FEVAL_FTAC +field = Targetattachcount +id = ftac +key = targetattachcount +profile = true +type = 0 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 + +[unit] +[.abillist] +concat = true +displayname = WESTRING_UEVAL_UABI +field = abilList +id = uabi +key = abilList +type = 3 +[.acquire] +displayname = WESTRING_UEVAL_UACQ +field = acquire +id = uacq +key = acquire +type = 2 +[.agi] +displayname = WESTRING_UEVAL_UAGI +field = AGI +id = uagi +key = AGI +type = 0 +[.agiplus] +displayname = WESTRING_UEVAL_UAGP +field = AGIplus +id = uagp +key = AGIplus +type = 2 +[.animprops] +concat = true +displayname = WESTRING_UEVAL_UANI +field = animProps +id = uani +key = animprops +profile = true +type = 3 +[.armor] +displayname = WESTRING_UEVAL_UARM +field = armor +id = uarm +key = armor +splite = true +type = 3 +[.art] +displayname = WESTRING_UEVAL_UICO +field = Art +id = uico +key = art +profile = true +type = 3 +[.atktype1] +displayname = WESTRING_UEVAL_UA1T +field = atkType1 +id = ua1t +key = atkType1 +splite = true +type = 3 +[.atktype2] +displayname = WESTRING_UEVAL_UA2T +field = atkType2 +id = ua2t +key = atkType2 +splite = true +type = 3 +[.attachmentanimprops] +concat = true +displayname = WESTRING_UEVAL_UAAP +field = Attachmentanimprops +id = uaap +key = attachmentanimprops +profile = true +type = 3 +[.attachmentlinkprops] +concat = true +displayname = WESTRING_UEVAL_UALP +field = Attachmentlinkprops +id = ualp +key = attachmentlinkprops +profile = true +type = 3 +[.auto] +displayname = WESTRING_UEVAL_UDAA +field = auto +id = udaa +key = auto +splite = true +type = 3 +[.awakentip] +displayname = WESTRING_UEVAL_UAWT +field = Awakentip +id = uawt +key = awakentip +profile = true +type = 3 +[.backsw1] +displayname = WESTRING_UEVAL_UBS1 +field = backSw1 +id = ubs1 +key = backSw1 +type = 2 +[.backsw2] +displayname = WESTRING_UEVAL_UBS2 +field = backSw2 +id = ubs2 +key = backSw2 +type = 2 +[.bldtm] +displayname = WESTRING_UEVAL_UBLD +field = bldtm +id = ubld +key = bldtm +type = 0 +[.blend] +displayname = WESTRING_UEVAL_UBLE +field = blend +id = uble +key = blend +type = 1 +[.blue] +displayname = WESTRING_UEVAL_UCLB +field = blue +id = uclb +key = blue +type = 0 +[.boneprops] +concat = true +displayname = WESTRING_UEVAL_UBPR +field = Boneprops +id = ubpr +key = boneprops +profile = true +type = 3 +[.bountydice] +displayname = WESTRING_UEVAL_UBDI +field = bountydice +id = ubdi +key = bountydice +type = 0 +[.bountyplus] +displayname = WESTRING_UEVAL_UBBA +field = bountyplus +id = ubba +key = bountyplus +type = 0 +[.bountysides] +displayname = WESTRING_UEVAL_UBSI +field = bountysides +id = ubsi +key = bountysides +type = 0 +[.buffradius] +displayname = WESTRING_UEVAL_UABR +field = buffRadius +id = uabr +key = buffRadius +type = 2 +[.bufftype] +displayname = WESTRING_UEVAL_UABT +field = buffType +id = uabt +key = buffType +splite = true +type = 3 +[.buildingshadow] +displayname = WESTRING_UEVAL_USHB +field = buildingShadow +id = ushb +key = buildingShadow +splite = true +type = 3 +[.buildingsoundlabel] +displayname = WESTRING_UEVAL_UBSL +field = BuildingSoundLabel +id = ubsl +key = buildingsoundlabel +profile = true +type = 3 +[.builds] +concat = true +displayname = WESTRING_UEVAL_UBUI +field = Builds +id = ubui +key = builds +profile = true +type = 3 +[."buttonpos:1"] +displayname = WESTRING_UEVAL_UBPX +field = Buttonpos:1 +id = ubpx +index = 1 +key = buttonpos +profile = true +type = 0 +[."buttonpos:2"] +displayname = WESTRING_UEVAL_UBPY +field = Buttonpos:2 +id = ubpy +index = 2 +key = buttonpos +profile = true +type = 0 +[.campaign] +displayname = WESTRING_UEVAL_UCAM +field = campaign +id = ucam +key = campaign +type = 0 +[.canbuildon] +displayname = WESTRING_UEVAL_UCBO +field = canBuildOn +id = ucbo +key = canBuildOn +type = 0 +[.canflee] +displayname = WESTRING_UEVAL_UFLE +field = canFlee +id = ufle +key = canFlee +type = 0 +[.cansleep] +displayname = WESTRING_UEVAL_USLE +field = canSleep +id = usle +key = canSleep +type = 0 +[.cargosize] +displayname = WESTRING_UEVAL_UCAR +field = cargoSize +id = ucar +key = cargoSize +type = 0 +[.castbsw] +displayname = WESTRING_UEVAL_UCBS +field = castbsw +id = ucbs +key = castbsw +type = 2 +[.casterupgradeart] +displayname = WESTRING_UEVAL_UCUA +field = Casterupgradeart +id = ucua +key = casterupgradeart +profile = true +splite = true +type = 3 +[.casterupgradename] +concat = true +displayname = WESTRING_UEVAL_UCUN +field = Casterupgradename +id = ucun +key = casterupgradename +profile = true +type = 3 +[.casterupgradetip] +concat = true +displayname = WESTRING_UEVAL_UCUT +field = Casterupgradetip +id = ucut +key = casterupgradetip +profile = true +type = 3 +[.castpt] +displayname = WESTRING_UEVAL_UCPT +field = castpt +id = ucpt +key = castpt +type = 2 +[.collision] +displayname = WESTRING_UEVAL_UCOL +field = collision +id = ucol +key = collision +type = 2 +[.cool1] +displayname = WESTRING_UEVAL_UA1C +field = cool1 +id = ua1c +key = cool1 +type = 2 +[.cool2] +displayname = WESTRING_UEVAL_UA2C +field = cool2 +id = ua2c +key = cool2 +type = 2 +[.customteamcolor] +displayname = WESTRING_UEVAL_UTCC +field = customTeamColor +id = utcc +key = customTeamColor +type = 0 +[.damageloss1] +displayname = WESTRING_UEVAL_UDL1 +field = damageLoss1 +id = udl1 +key = damageLoss1 +type = 2 +[.damageloss2] +displayname = WESTRING_UEVAL_UDL2 +field = damageLoss2 +id = udl2 +key = damageLoss2 +type = 2 +[.death] +displayname = WESTRING_UEVAL_UDTM +field = death +id = udtm +key = death +type = 2 +[.deathtype] +displayname = WESTRING_UEVAL_UDEA +field = deathType +id = udea +key = deathType +type = 0 +[.def] +displayname = WESTRING_UEVAL_UDEF +field = def +id = udef +key = def +type = 2 +[.deftype] +displayname = WESTRING_UEVAL_UDTY +field = defType +id = udty +key = defType +splite = true +type = 3 +[.defup] +displayname = WESTRING_UEVAL_UDUP +field = defUp +id = udup +key = defUp +type = 2 +[.dependencyor] +concat = true +displayname = WESTRING_UEVAL_UDEP +field = DependencyOr +id = udep +key = dependencyor +profile = true +type = 3 +[.description] +displayname = WESTRING_UEVAL_IDES +field = Description +id = ides +key = description +profile = true +type = 3 +[.dice1] +displayname = WESTRING_UEVAL_UA1D +field = dice1 +id = ua1d +key = dice1 +type = 0 +[.dice2] +displayname = WESTRING_UEVAL_UA2D +field = dice2 +id = ua2d +key = dice2 +type = 0 +[.dmgplus1] +displayname = WESTRING_UEVAL_UA1B +field = dmgplus1 +id = ua1b +key = dmgplus1 +type = 0 +[.dmgplus2] +displayname = WESTRING_UEVAL_UA2B +field = dmgplus2 +id = ua2b +key = dmgplus2 +type = 0 +[.dmgpt1] +displayname = WESTRING_UEVAL_UDP1 +field = dmgpt1 +id = udp1 +key = dmgpt1 +type = 2 +[.dmgpt2] +displayname = WESTRING_UEVAL_UDP2 +field = dmgpt2 +id = udp2 +key = dmgpt2 +type = 2 +[.dmgup1] +displayname = WESTRING_UEVAL_UDU1 +field = dmgUp1 +id = udu1 +key = dmgUp1 +type = 0 +[.dmgup2] +displayname = WESTRING_UEVAL_UDU2 +field = dmgUp2 +id = udu2 +key = dmgUp2 +type = 0 +[.dropitems] +displayname = WESTRING_UEVAL_UDRO +field = dropItems +id = udro +key = dropItems +type = 0 +[.editorsuffix] +displayname = WESTRING_UEVAL_UNSF +field = EditorSuffix +id = unsf +key = editorsuffix +profile = true +type = 3 +[.elevpts] +displayname = WESTRING_UEVAL_UEPT +field = elevPts +id = uept +key = elevPts +type = 0 +[.elevrad] +displayname = WESTRING_UEVAL_UERD +field = elevRad +id = uerd +key = elevRad +type = 1 +[.farea1] +displayname = WESTRING_UEVAL_UA1F +field = Farea1 +id = ua1f +key = Farea1 +type = 0 +[.farea2] +displayname = WESTRING_UEVAL_UA2F +field = Farea2 +id = ua2f +key = Farea2 +type = 0 +[.fatlos] +displayname = WESTRING_UEVAL_ULOS +field = fatLOS +id = ulos +key = fatLOS +type = 0 +[.file] +displayname = WESTRING_UEVAL_UMDL +field = file +id = umdl +key = file +splite = true +type = 3 +[.fileverflags] +displayname = WESTRING_UEVAL_UVER +field = fileVerFlags +id = uver +key = fileVerFlags +type = 0 +[.fmade] +displayname = WESTRING_UEVAL_UFMA +field = fmade +id = ufma +key = fmade +type = 0 +[.fograd] +displayname = WESTRING_UEVAL_UFRD +field = fogRad +id = ufrd +key = fogRad +type = 1 +[.formation] +displayname = WESTRING_UEVAL_UFOR +field = formation +id = ufor +key = formation +type = 0 +[.fused] +displayname = WESTRING_UEVAL_UFOO +field = fused +id = ufoo +key = fused +type = 0 +[.goldcost] +displayname = WESTRING_UEVAL_UGOL +field = goldcost +id = ugol +key = goldcost +type = 0 +[.goldrep] +displayname = WESTRING_UEVAL_UGOR +field = goldRep +id = ugor +key = goldRep +type = 0 +[.green] +displayname = WESTRING_UEVAL_UCLG +field = green +id = uclg +key = green +type = 0 +[.harea1] +displayname = WESTRING_UEVAL_UA1H +field = Harea1 +id = ua1h +key = Harea1 +type = 0 +[.harea2] +displayname = WESTRING_UEVAL_UA2H +field = Harea2 +id = ua2h +key = Harea2 +type = 0 +[.heroabillist] +concat = true +displayname = WESTRING_UEVAL_UHAB +field = heroAbilList +id = uhab +key = heroAbilList +type = 3 +[.hfact1] +displayname = WESTRING_UEVAL_UHD1 +field = Hfact1 +id = uhd1 +key = Hfact1 +type = 2 +[.hfact2] +displayname = WESTRING_UEVAL_UHD2 +field = Hfact2 +id = uhd2 +key = Hfact2 +type = 2 +[.hideherobar] +displayname = WESTRING_UEVAL_UHHB +field = hideHeroBar +id = uhhb +key = hideHeroBar +type = 0 +[.hideherodeathmsg] +displayname = WESTRING_UEVAL_UHHD +field = hideHeroDeathMsg +id = uhhd +key = hideHeroDeathMsg +type = 0 +[.hideherominimap] +displayname = WESTRING_UEVAL_UHHM +field = hideHeroMinimap +id = uhhm +key = hideHeroMinimap +type = 0 +[.hideonminimap] +displayname = WESTRING_UEVAL_UHOM +field = hideOnMinimap +id = uhom +key = hideOnMinimap +type = 0 +[.hostilepal] +displayname = WESTRING_UEVAL_UHOS +field = hostilePal +id = uhos +key = hostilePal +type = 0 +[.hotkey] +displayname = WESTRING_UEVAL_UHOT +field = Hotkey +id = uhot +key = hotkey +profile = true +type = 3 +[.hp] +displayname = WESTRING_UEVAL_UHPM +field = HP +id = uhpm +key = HP +type = 0 +[.impactswimz] +displayname = WESTRING_UEVAL_UISZ +field = impactSwimZ +id = uisz +key = impactSwimZ +type = 2 +[.impactz] +displayname = WESTRING_UEVAL_UIMZ +field = impactZ +id = uimz +key = impactZ +type = 2 +[.ineditor] +displayname = WESTRING_UEVAL_UINE +field = inEditor +id = uine +key = inEditor +type = 0 +[.int] +displayname = WESTRING_UEVAL_UINT +field = INT +id = uint +key = INT +type = 0 +[.intplus] +displayname = WESTRING_UEVAL_UINP +field = INTplus +id = uinp +key = INTplus +type = 2 +[.isbldg] +displayname = WESTRING_UEVAL_UBDG +field = isbldg +id = ubdg +key = isbldg +type = 0 +[.isbuildon] +displayname = WESTRING_UEVAL_UIBO +field = isBuildOn +id = uibo +key = isBuildOn +type = 0 +[.launchswimz] +displayname = WESTRING_UEVAL_ULSZ +field = launchSwimZ +id = ulsz +key = launchSwimZ +type = 2 +[.launchx] +displayname = WESTRING_UEVAL_ULPX +field = launchX +id = ulpx +key = launchX +type = 2 +[.launchy] +displayname = WESTRING_UEVAL_ULPY +field = launchY +id = ulpy +key = launchY +type = 2 +[.launchz] +displayname = WESTRING_UEVAL_ULPZ +field = launchZ +id = ulpz +key = launchZ +type = 2 +[.level] +displayname = WESTRING_UEVAL_ULEV +field = level +id = ulev +key = level +type = 0 +[.loopingsoundfadein] +displayname = WESTRING_UEVAL_ULFI +field = LoopingSoundFadeIn +id = ulfi +key = loopingsoundfadein +profile = true +type = 0 +[.loopingsoundfadeout] +displayname = WESTRING_UEVAL_ULFO +field = LoopingSoundFadeOut +id = ulfo +key = loopingsoundfadeout +profile = true +type = 0 +[.lumberbountydice] +displayname = WESTRING_UEVAL_ULBD +field = lumberbountydice +id = ulbd +key = lumberbountydice +type = 0 +[.lumberbountyplus] +displayname = WESTRING_UEVAL_ULBA +field = lumberbountyplus +id = ulba +key = lumberbountyplus +type = 0 +[.lumberbountysides] +displayname = WESTRING_UEVAL_ULBS +field = lumberbountysides +id = ulbs +key = lumberbountysides +type = 0 +[.lumbercost] +displayname = WESTRING_UEVAL_ULUM +field = lumbercost +id = ulum +key = lumbercost +type = 0 +[.lumberrep] +displayname = WESTRING_UEVAL_ULUR +field = lumberRep +id = ulur +key = lumberRep +type = 0 +[.makeitems] +concat = true +displayname = WESTRING_UEVAL_UMKI +field = Makeitems +id = umki +key = makeitems +profile = true +type = 3 +[.mana0] +displayname = WESTRING_UEVAL_UMPI +field = mana0 +id = umpi +key = mana0 +type = 0 +[.manan] +displayname = WESTRING_UEVAL_UMPM +field = manaN +id = umpm +key = manaN +type = 0 +[.maxpitch] +displayname = WESTRING_UEVAL_UMXP +field = maxPitch +id = umxp +key = maxPitch +type = 1 +[.maxroll] +displayname = WESTRING_UEVAL_UMXR +field = maxRoll +id = umxr +key = maxRoll +type = 1 +[.maxspd] +displayname = WESTRING_UEVAL_UMAS +field = maxSpd +id = umas +key = maxSpd +type = 0 +[.minrange] +displayname = WESTRING_UEVAL_UAMN +field = minRange +id = uamn +key = minRange +type = 0 +[.minspd] +displayname = WESTRING_UEVAL_UMIS +field = minSpd +id = umis +key = minSpd +type = 0 +[."missilearc:1"] +displayname = WESTRING_UEVAL_UMA1 +field = Missilearc:1 +id = uma1 +index = 1 +key = missilearc +profile = true +type = 2 +[."missilearc:2"] +displayname = WESTRING_UEVAL_UMA2 +field = Missilearc:2 +id = uma2 +index = 2 +key = missilearc +profile = true +type = 2 +[."missileart:1"] +displayname = WESTRING_UEVAL_UA1M +field = Missileart:1 +id = ua1m +index = 1 +key = missileart +profile = true +type = 3 +[."missileart:2"] +displayname = WESTRING_UEVAL_UA2M +field = Missileart:2 +id = ua2m +index = 2 +key = missileart +profile = true +type = 3 +[."missilehoming:1"] +displayname = WESTRING_UEVAL_UMH1 +field = MissileHoming:1 +id = umh1 +index = 1 +key = missilehoming +profile = true +type = 0 +[."missilehoming:2"] +displayname = WESTRING_UEVAL_UMH2 +field = MissileHoming:2 +id = umh2 +index = 2 +key = missilehoming +profile = true +type = 0 +[."missilespeed:1"] +cantempty = true +default = {1500,1500} +displayname = WESTRING_UEVAL_UA1Z +field = Missilespeed:1 +id = ua1z +index = 1 +key = missilespeed +profile = true +type = 0 +[."missilespeed:2"] +default = {1500,1500} +displayname = WESTRING_UEVAL_UA2Z +field = Missilespeed:2 +id = ua2z +index = 2 +key = missilespeed +profile = true +type = 0 +[.modelscale] +displayname = WESTRING_UEVAL_USCA +field = modelScale +id = usca +key = modelScale +type = 1 +[.movefloor] +displayname = WESTRING_UEVAL_UMVF +field = moveFloor +id = umvf +key = moveFloor +type = 2 +[.moveheight] +displayname = WESTRING_UEVAL_UMVH +field = moveHeight +id = umvh +key = moveHeight +type = 2 +[.movementsoundlabel] +displayname = WESTRING_UEVAL_UMSL +field = MovementSoundLabel +id = umsl +key = movementsoundlabel +profile = true +type = 3 +[.movetp] +displayname = WESTRING_UEVAL_UMVT +field = movetp +id = umvt +key = movetp +splite = true +type = 3 +[.name] +cantempty = true +displayname = WESTRING_UEVAL_UNAM +field = Name +id = unam +key = name +profile = true +type = 3 +[.namecount] +displayname = WESTRING_UEVAL_UPRU +field = nameCount +id = upru +key = nameCount +type = 0 +[.nbmmicon] +displayname = WESTRING_UEVAL_UNBM +field = nbmmIcon +id = unbm +key = nbmmIcon +type = 0 +[.nbrandom] +displayname = WESTRING_UEVAL_UNBR +field = nbrandom +id = unbr +key = nbrandom +type = 0 +[.nsight] +displayname = WESTRING_UEVAL_USIN +field = nsight +id = usin +key = nsight +type = 0 +[.occh] +displayname = WESTRING_UEVAL_UOCC +field = occH +id = uocc +key = occH +type = 2 +[.orientinterp] +displayname = WESTRING_UEVAL_UORI +field = orientInterp +id = uori +key = orientInterp +type = 0 +[.pathtex] +displayname = WESTRING_UEVAL_UPAT +field = pathTex +id = upat +key = pathTex +splite = true +type = 3 +[.points] +displayname = WESTRING_UEVAL_UPOI +field = points +id = upoi +key = points +type = 0 +[.preventplace] +concat = true +displayname = WESTRING_UEVAL_UPAP +field = preventPlace +id = upap +key = preventPlace +type = 3 +[.primary] +displayname = WESTRING_UEVAL_UPRA +field = Primary +id = upra +key = Primary +splite = true +type = 3 +[.prio] +displayname = WESTRING_UEVAL_UPRI +field = prio +id = upri +key = prio +type = 0 +[.propernames] +concat = true +displayname = WESTRING_UEVAL_UPRO +field = Propernames +id = upro +key = propernames +profile = true +type = 3 +[.propwin] +displayname = WESTRING_UEVAL_UPRW +field = propWin +id = uprw +key = propWin +type = 2 +[.qarea1] +displayname = WESTRING_UEVAL_UA1Q +field = Qarea1 +id = ua1q +key = Qarea1 +type = 0 +[.qarea2] +displayname = WESTRING_UEVAL_UA2Q +field = Qarea2 +id = ua2q +key = Qarea2 +type = 0 +[.qfact1] +displayname = WESTRING_UEVAL_UQD1 +field = Qfact1 +id = uqd1 +key = Qfact1 +type = 2 +[.qfact2] +displayname = WESTRING_UEVAL_UQD2 +field = Qfact2 +id = uqd2 +key = Qfact2 +type = 2 +[.race] +displayname = WESTRING_UEVAL_URAC +field = race +id = urac +key = race +splite = true +type = 3 +[.randomsoundlabel] +displayname = WESTRING_UEVAL_URSL +field = RandomSoundLabel +id = ursl +key = randomsoundlabel +profile = true +type = 3 +[.rangen1] +displayname = WESTRING_UEVAL_UA1R +field = rangeN1 +id = ua1r +key = rangeN1 +type = 0 +[.rangen2] +displayname = WESTRING_UEVAL_UA2R +field = rangeN2 +id = ua2r +key = rangeN2 +type = 0 +[.red] +displayname = WESTRING_UEVAL_UCLR +field = red +id = uclr +key = red +type = 0 +[.regenhp] +displayname = WESTRING_UEVAL_UHPR +field = regenHP +id = uhpr +key = regenHP +type = 2 +[.regenmana] +displayname = WESTRING_UEVAL_UMPR +field = regenMana +id = umpr +key = regenMana +type = 2 +[.regentype] +displayname = WESTRING_UEVAL_UHRT +field = regenType +id = uhrt +key = regenType +splite = true +type = 3 +[.reptm] +displayname = WESTRING_UEVAL_URTM +field = reptm +id = urtm +key = reptm +type = 0 +[.repulse] +displayname = WESTRING_UEVAL_URPO +field = repulse +id = urpo +key = repulse +type = 0 +[.repulsegroup] +displayname = WESTRING_UEVAL_URPG +field = repulseGroup +id = urpg +key = repulseGroup +type = 0 +[.repulseparam] +displayname = WESTRING_UEVAL_URPP +field = repulseParam +id = urpp +key = repulseParam +type = 0 +[.repulseprio] +displayname = WESTRING_UEVAL_URPR +field = repulsePrio +id = urpr +key = repulsePrio +type = 0 +[.requireplace] +concat = true +displayname = WESTRING_UEVAL_UPAR +field = requirePlace +id = upar +key = requirePlace +type = 3 +[.requires] +concat = true +displayname = WESTRING_UEVAL_UREQ +field = Requires +id = ureq +key = requires +profile = true +type = 3 +[.requires1] +concat = true +displayname = WESTRING_UEVAL_URQ1 +field = Requires1 +id = urq1 +key = requires1 +profile = true +type = 3 +[.requires2] +concat = true +displayname = WESTRING_UEVAL_URQ2 +field = Requires2 +id = urq2 +key = requires2 +profile = true +type = 3 +[.requires3] +concat = true +displayname = WESTRING_UEVAL_URQ3 +field = Requires3 +id = urq3 +key = requires3 +profile = true +type = 3 +[.requires4] +concat = true +displayname = WESTRING_UEVAL_URQ4 +field = Requires4 +id = urq4 +key = requires4 +profile = true +type = 3 +[.requires5] +concat = true +displayname = WESTRING_UEVAL_URQ5 +field = Requires5 +id = urq5 +key = requires5 +profile = true +type = 3 +[.requires6] +concat = true +displayname = WESTRING_UEVAL_URQ6 +field = Requires6 +id = urq6 +key = requires6 +profile = true +type = 3 +[.requires7] +concat = true +displayname = WESTRING_UEVAL_URQ7 +field = Requires7 +id = urq7 +key = requires7 +profile = true +type = 3 +[.requires8] +concat = true +displayname = WESTRING_UEVAL_URQ8 +field = Requires8 +id = urq8 +key = requires8 +profile = true +type = 3 +[.requiresamount] +concat = true +displayname = WESTRING_UEVAL_URQA +field = Requiresamount +id = urqa +key = requiresamount +profile = true +type = 3 +[.requirescount] +displayname = WESTRING_UEVAL_URQC +field = Requirescount +id = urqc +key = requirescount +profile = true +type = 0 +[.requirewaterradius] +displayname = WESTRING_UEVAL_UPAW +field = requireWaterRadius +id = upaw +key = requireWaterRadius +type = 2 +[.researches] +concat = true +displayname = WESTRING_UEVAL_URES +field = Researches +id = ures +key = researches +profile = true +type = 3 +[.revive] +displayname = WESTRING_UEVAL_UREV +field = Revive +id = urev +key = revive +profile = true +type = 0 +[.reviveat] +concat = true +displayname = WESTRING_UEVAL_URVA +field = Reviveat +id = urva +key = reviveat +profile = true +type = 3 +[.revivetip] +displayname = WESTRING_UEVAL_UTPR +field = Revivetip +id = utpr +key = revivetip +profile = true +type = 3 +[.rngbuff1] +displayname = WESTRING_UEVAL_URB1 +field = RngBuff1 +id = urb1 +key = RngBuff1 +type = 2 +[.rngbuff2] +displayname = WESTRING_UEVAL_URB2 +field = RngBuff2 +id = urb2 +key = RngBuff2 +type = 2 +[.run] +displayname = WESTRING_UEVAL_URUN +field = run +id = urun +key = run +type = 1 +[.scale] +displayname = WESTRING_UEVAL_USSC +field = scale +id = ussc +key = scale +type = 1 +[.scalebull] +displayname = WESTRING_UEVAL_USCB +field = scaleBull +id = uscb +key = scaleBull +type = 0 +[.scorescreenicon] +displayname = WESTRING_UEVAL_USSI +field = ScoreScreenIcon +id = ussi +key = scorescreenicon +profile = true +type = 3 +[.selcirconwater] +displayname = WESTRING_UEVAL_USEW +field = selCircOnWater +id = usew +key = selCircOnWater +type = 0 +[.sellitems] +concat = true +displayname = WESTRING_UEVAL_USEI +field = Sellitems +id = usei +key = sellitems +profile = true +type = 3 +[.sellunits] +concat = true +displayname = WESTRING_UEVAL_USEU +field = Sellunits +id = useu +key = sellunits +profile = true +type = 3 +[.selz] +displayname = WESTRING_UEVAL_USLZ +field = selZ +id = uslz +key = selZ +type = 1 +[.shadowh] +displayname = WESTRING_UEVAL_USHH +field = shadowH +id = ushh +key = shadowH +type = 1 +[.shadowonwater] +displayname = WESTRING_UEVAL_USHR +field = shadowOnWater +id = ushr +key = shadowOnWater +type = 0 +[.shadoww] +displayname = WESTRING_UEVAL_USHW +field = shadowW +id = ushw +key = shadowW +type = 1 +[.shadowx] +displayname = WESTRING_UEVAL_USHX +field = shadowX +id = ushx +key = shadowX +type = 1 +[.shadowy] +displayname = WESTRING_UEVAL_USHY +field = shadowY +id = ushy +key = shadowY +type = 1 +[.showui1] +displayname = WESTRING_UEVAL_UWU1 +field = showUI1 +id = uwu1 +key = showUI1 +type = 0 +[.showui2] +displayname = WESTRING_UEVAL_UWU2 +field = showUI2 +id = uwu2 +key = showUI2 +type = 0 +[.sides1] +displayname = WESTRING_UEVAL_UA1S +field = sides1 +id = ua1s +key = sides1 +type = 0 +[.sides2] +displayname = WESTRING_UEVAL_UA2S +field = sides2 +id = ua2s +key = sides2 +type = 0 +[.sight] +displayname = WESTRING_UEVAL_USID +field = sight +id = usid +key = sight +type = 0 +[.spd] +displayname = WESTRING_UEVAL_UMVS +field = spd +id = umvs +key = spd +type = 0 +[.special] +displayname = WESTRING_UEVAL_USPE +field = special +id = uspe +key = special +type = 0 +[.specialart] +concat = true +displayname = WESTRING_UEVAL_USPA +field = Specialart +id = uspa +key = specialart +profile = true +type = 3 +[.spilldist1] +displayname = WESTRING_UEVAL_USD1 +field = spillDist1 +id = usd1 +key = spillDist1 +type = 2 +[.spilldist2] +displayname = WESTRING_UEVAL_USD2 +field = spillDist2 +id = usd2 +key = spillDist2 +type = 2 +[.spillradius1] +displayname = WESTRING_UEVAL_USR1 +field = spillRadius1 +id = usr1 +key = spillRadius1 +type = 2 +[.spillradius2] +displayname = WESTRING_UEVAL_USR2 +field = spillRadius2 +id = usr2 +key = spillRadius2 +type = 2 +[.splashtargs1] +concat = true +displayname = WESTRING_UEVAL_UA1P +field = splashTargs1 +id = ua1p +key = splashTargs1 +type = 3 +[.splashtargs2] +concat = true +displayname = WESTRING_UEVAL_UA2P +field = splashTargs2 +id = ua2p +key = splashTargs2 +type = 3 +[.stockmax] +displayname = WESTRING_UEVAL_USMA +field = stockMax +id = usma +key = stockMax +type = 0 +[.stockregen] +displayname = WESTRING_UEVAL_USRG +field = stockRegen +id = usrg +key = stockRegen +type = 0 +[.stockstart] +displayname = WESTRING_UEVAL_USST +field = stockStart +id = usst +key = stockStart +type = 0 +[.str] +displayname = WESTRING_UEVAL_USTR +field = STR +id = ustr +key = STR +type = 0 +[.strplus] +displayname = WESTRING_UEVAL_USTP +field = STRplus +id = ustp +key = STRplus +type = 2 +[.targcount1] +displayname = WESTRING_UEVAL_UTC1 +field = targCount1 +id = utc1 +key = targCount1 +type = 0 +[.targcount2] +displayname = WESTRING_UEVAL_UTC2 +field = targCount2 +id = utc2 +key = targCount2 +type = 0 +[.targetart] +concat = true +displayname = WESTRING_UEVAL_UTAA +field = Targetart +id = utaa +key = targetart +profile = true +type = 3 +[.targs1] +concat = true +displayname = WESTRING_UEVAL_UA1G +field = targs1 +id = ua1g +key = targs1 +type = 3 +[.targs2] +concat = true +displayname = WESTRING_UEVAL_UA2G +field = targs2 +id = ua2g +key = targs2 +type = 3 +[.targtype] +concat = true +displayname = WESTRING_UEVAL_UTAR +field = targType +id = utar +key = targType +type = 3 +[.teamcolor] +displayname = WESTRING_UEVAL_UTCO +field = teamColor +id = utco +key = teamColor +type = 0 +[.tilesets] +concat = true +displayname = WESTRING_UEVAL_UTIL +field = tilesets +id = util +key = tilesets +type = 3 +[.tilesetspecific] +displayname = WESTRING_UEVAL_UTSS +field = tilesetSpecific +id = utss +key = tilesetSpecific +type = 0 +[.tip] +displayname = WESTRING_UEVAL_UTIP +field = Tip +id = utip +key = tip +profile = true +type = 3 +[.trains] +concat = true +displayname = WESTRING_UEVAL_UTRA +field = Trains +id = utra +key = trains +profile = true +type = 3 +[.turnrate] +displayname = WESTRING_UEVAL_UMVR +field = turnRate +id = umvr +key = turnRate +type = 2 +[.type] +concat = true +displayname = WESTRING_UEVAL_UTYP +field = type +id = utyp +key = type +type = 3 +[.ubersplat] +displayname = WESTRING_UEVAL_UUBS +field = uberSplat +id = uubs +key = uberSplat +splite = true +type = 3 +[.ubertip] +cantempty = true +displayname = WESTRING_UEVAL_UTUB +field = Ubertip +id = utub +key = ubertip +profile = true +type = 3 +[.unitshadow] +displayname = WESTRING_UEVAL_USHU +field = unitShadow +id = ushu +key = unitShadow +splite = true +type = 3 +[.unitsound] +displayname = WESTRING_UEVAL_USND +field = unitSound +id = usnd +key = unitSound +splite = true +type = 3 +[.upgrade] +concat = true +displayname = WESTRING_UEVAL_UUPT +field = Upgrade +id = uupt +key = upgrade +profile = true +type = 3 +[.upgrades] +concat = true +displayname = WESTRING_UEVAL_UPGR +field = upgrades +id = upgr +key = upgrades +type = 3 +[.useclickhelper] +displayname = WESTRING_UEVAL_UUCH +field = useClickHelper +id = uuch +key = useClickHelper +type = 0 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 +[.walk] +displayname = WESTRING_UEVAL_UWAL +field = walk +id = uwal +key = walk +type = 1 +[.weapson] +displayname = WESTRING_UEVAL_UAEN +field = weapsOn +id = uaen +key = weapsOn +type = 0 +[.weaptp1] +displayname = WESTRING_UEVAL_UA1W +field = weapTp1 +id = ua1w +key = weapTp1 +splite = true +type = 3 +[.weaptp2] +displayname = WESTRING_UEVAL_UA2W +field = weapTp2 +id = ua2w +key = weapTp2 +splite = true +type = 3 +[.weaptype1] +displayname = WESTRING_UEVAL_UCS1 +field = weapType1 +id = ucs1 +key = weapType1 +splite = true +type = 3 +[.weaptype2] +displayname = WESTRING_UEVAL_UCS2 +field = weapType2 +id = ucs2 +key = weapType2 +splite = true +type = 3 + +[item] +[.abillist] +concat = true +displayname = WESTRING_UEVAL_IABI +field = abilList +id = iabi +key = abilList +type = 3 +[.armor] +displayname = WESTRING_UEVAL_IARM +field = armor +id = iarm +key = armor +splite = true +type = 3 +[.art] +displayname = WESTRING_UEVAL_IICO +field = Art +id = iico +key = art +profile = true +type = 3 +[."buttonpos:1"] +displayname = WESTRING_UEVAL_UBPX +field = Buttonpos:1 +id = ubpx +index = 1 +key = buttonpos +profile = true +type = 0 +[."buttonpos:2"] +displayname = WESTRING_UEVAL_UBPY +field = Buttonpos:2 +id = ubpy +index = 2 +key = buttonpos +profile = true +type = 0 +[.class] +displayname = WESTRING_UEVAL_ICLA +field = class +id = icla +key = class +splite = true +type = 3 +[.colorb] +displayname = WESTRING_UEVAL_ICLB +field = colorB +id = iclb +key = colorB +type = 0 +[.colorg] +displayname = WESTRING_UEVAL_ICLG +field = colorG +id = iclg +key = colorG +type = 0 +[.colorr] +displayname = WESTRING_UEVAL_ICLR +field = colorR +id = iclr +key = colorR +type = 0 +[.cooldownid] +displayname = WESTRING_UEVAL_ICID +field = cooldownID +id = icid +key = cooldownID +splite = true +type = 3 +[.description] +displayname = WESTRING_UEVAL_IDES +field = Description +id = ides +key = description +profile = true +type = 3 +[.drop] +displayname = WESTRING_UEVAL_IDRP +field = drop +id = idrp +key = drop +type = 0 +[.droppable] +displayname = WESTRING_UEVAL_IDRO +field = droppable +id = idro +key = droppable +type = 0 +[.file] +displayname = WESTRING_UEVAL_IFIL +field = file +id = ifil +key = file +splite = true +type = 3 +[.goldcost] +displayname = WESTRING_UEVAL_IGOL +field = goldcost +id = igol +key = goldcost +type = 0 +[.hotkey] +displayname = WESTRING_UEVAL_UHOT +field = Hotkey +id = uhot +key = hotkey +profile = true +type = 3 +[.hp] +displayname = WESTRING_UEVAL_IHTP +field = HP +id = ihtp +key = HP +type = 0 +[.ignorecd] +displayname = WESTRING_UEVAL_IICD +field = ignoreCD +id = iicd +key = ignoreCD +type = 0 +[.level] +displayname = WESTRING_UEVAL_ILEV +field = Level +id = ilev +key = Level +type = 0 +[.lumbercost] +displayname = WESTRING_UEVAL_ILUM +field = lumbercost +id = ilum +key = lumbercost +type = 0 +[.morph] +displayname = WESTRING_UEVAL_IMOR +field = morph +id = imor +key = morph +type = 0 +[.name] +cantempty = true +displayname = WESTRING_UEVAL_UNAM +field = Name +id = unam +key = name +profile = true +type = 3 +[.oldlevel] +displayname = WESTRING_UEVAL_ILVO +field = oldLevel +id = ilvo +key = oldLevel +type = 0 +[.pawnable] +displayname = WESTRING_UEVAL_IPAW +field = pawnable +id = ipaw +key = pawnable +type = 0 +[.perishable] +displayname = WESTRING_UEVAL_IPER +field = perishable +id = iper +key = perishable +type = 0 +[.pickrandom] +displayname = WESTRING_UEVAL_IPRN +field = pickRandom +id = iprn +key = pickRandom +type = 0 +[.powerup] +displayname = WESTRING_UEVAL_IPOW +field = powerup +id = ipow +key = powerup +type = 0 +[.prio] +displayname = WESTRING_UEVAL_IPRI +field = prio +id = ipri +key = prio +type = 0 +[.requires] +concat = true +displayname = WESTRING_UEVAL_UREQ +field = Requires +id = ureq +key = requires +profile = true +type = 3 +[.requiresamount] +concat = true +displayname = WESTRING_UEVAL_URQA +field = Requiresamount +id = urqa +key = requiresamount +profile = true +type = 3 +[.scale] +displayname = WESTRING_UEVAL_ISCA +field = scale +id = isca +key = scale +type = 1 +[.sellable] +displayname = WESTRING_UEVAL_ISEL +field = sellable +id = isel +key = sellable +type = 0 +[.selsize] +displayname = WESTRING_UEVAL_ISSC +field = selSize +id = issc +key = selSize +type = 1 +[.stockmax] +displayname = WESTRING_UEVAL_ISTO +field = stockMax +id = isto +key = stockMax +type = 0 +[.stockregen] +displayname = WESTRING_UEVAL_ISTR +field = stockRegen +id = istr +key = stockRegen +type = 0 +[.stockstart] +displayname = WESTRING_UEVAL_ISST +field = stockStart +id = isst +key = stockStart +type = 0 +[.tip] +displayname = WESTRING_UEVAL_UTIP +field = Tip +id = utip +key = tip +profile = true +type = 3 +[.ubertip] +cantempty = true +displayname = WESTRING_UEVAL_UTUB +field = Ubertip +id = utub +key = ubertip +profile = true +type = 3 +[.usable] +displayname = WESTRING_UEVAL_IUSA +field = usable +id = iusa +key = usable +type = 0 +[.uses] +displayname = WESTRING_UEVAL_IUSE +field = uses +id = iuse +key = uses +type = 0 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 + +[upgrade] +[.art] +displayname = WESTRING_GEVAL_GAR1 +field = Art +id = gar1 +key = art +profile = true +repeat = 1 +type = 3 +[.base1] +displayname = WESTRING_GEVAL_GBA1 +field = base1 +id = gba1 +key = base1 +type = 2 +[.base2] +displayname = WESTRING_GEVAL_GBA2 +field = base2 +id = gba2 +key = base2 +type = 2 +[.base3] +displayname = WESTRING_GEVAL_GBA3 +field = base3 +id = gba3 +key = base3 +type = 2 +[.base4] +displayname = WESTRING_GEVAL_GBA4 +field = base4 +id = gba4 +key = base4 +type = 2 +[."buttonpos:1"] +displayname = WESTRING_GEVAL_GBPX +field = Buttonpos:1 +id = gbpx +index = 1 +key = buttonpos +profile = true +type = 0 +[."buttonpos:2"] +displayname = WESTRING_GEVAL_GBPY +field = Buttonpos:2 +id = gbpy +index = 2 +key = buttonpos +profile = true +type = 0 +[.class] +displayname = WESTRING_GEVAL_GCLS +field = class +id = gcls +key = class +splite = true +type = 3 +[.code1] +displayname = WESTRING_GEVAL_GCO1 +field = code1 +id = gco1 +key = code1 +splite = true +type = 3 +[.code2] +displayname = WESTRING_GEVAL_GCO2 +field = code2 +id = gco2 +key = code2 +splite = true +type = 3 +[.code3] +displayname = WESTRING_GEVAL_GCO3 +field = code3 +id = gco3 +key = code3 +splite = true +type = 3 +[.code4] +displayname = WESTRING_GEVAL_GCO4 +field = code4 +id = gco4 +key = code4 +splite = true +type = 3 +[.editorsuffix] +displayname = WESTRING_GEVAL_GNSF +field = EditorSuffix +id = gnsf +key = editorsuffix +profile = true +repeat = 1 +type = 3 +[.effect1] +displayname = WESTRING_GEVAL_GEF1 +field = effect1 +id = gef1 +key = effect1 +splite = true +type = 3 +[.effect2] +displayname = WESTRING_GEVAL_GEF2 +field = effect2 +id = gef2 +key = effect2 +splite = true +type = 3 +[.effect3] +displayname = WESTRING_GEVAL_GEF3 +field = effect3 +id = gef3 +key = effect3 +splite = true +type = 3 +[.effect4] +displayname = WESTRING_GEVAL_GEF4 +field = effect4 +id = gef4 +key = effect4 +splite = true +type = 3 +[.global] +displayname = WESTRING_GEVAL_GLOB +field = global +id = glob +key = global +type = 0 +[.goldbase] +displayname = WESTRING_GEVAL_GGLB +field = goldbase +id = gglb +key = goldbase +type = 0 +[.goldmod] +displayname = WESTRING_GEVAL_GGLM +field = goldmod +id = gglm +key = goldmod +type = 0 +[.hotkey] +displayname = WESTRING_GEVAL_GHK1 +field = Hotkey +id = ghk1 +key = hotkey +profile = true +repeat = 1 +type = 3 +[.inherit] +displayname = WESTRING_GEVAL_GINH +field = inherit +id = ginh +key = inherit +type = 0 +[.lumberbase] +displayname = WESTRING_GEVAL_GLMB +field = lumberbase +id = glmb +key = lumberbase +type = 0 +[.lumbermod] +displayname = WESTRING_GEVAL_GLMM +field = lumbermod +id = glmm +key = lumbermod +type = 0 +[.maxlevel] +displayname = WESTRING_GEVAL_GLVL +field = maxlevel +id = glvl +key = maxlevel +type = 0 +[.mod1] +displayname = WESTRING_GEVAL_GMO1 +field = mod1 +id = gmo1 +key = mod1 +type = 2 +[.mod2] +displayname = WESTRING_GEVAL_GMO2 +field = mod2 +id = gmo2 +key = mod2 +type = 2 +[.mod3] +displayname = WESTRING_GEVAL_GMO3 +field = mod3 +id = gmo3 +key = mod3 +type = 2 +[.mod4] +displayname = WESTRING_GEVAL_GMO4 +field = mod4 +id = gmo4 +key = mod4 +type = 2 +[.name] +cantempty = true +displayname = WESTRING_GEVAL_GNAM +field = Name +id = gnam +key = name +profile = true +repeat = 1 +type = 3 +[.race] +displayname = WESTRING_GEVAL_GRAC +field = race +id = grac +key = race +splite = true +type = 3 +[.requires] +appendindex = true +concat = true +displayname = WESTRING_GEVAL_GREQ +field = Requires +id = greq +key = requires +profile = true +repeat = 1 +type = 3 +[.requiresamount] +appendindex = true +concat = true +displayname = WESTRING_GEVAL_GRQC +field = Requiresamount +id = grqc +key = requiresamount +profile = true +repeat = 1 +type = 3 +[.timebase] +displayname = WESTRING_GEVAL_GTIB +field = timebase +id = gtib +key = timebase +type = 0 +[.timemod] +displayname = WESTRING_GEVAL_GTIM +field = timemod +id = gtim +key = timemod +type = 0 +[.tip] +displayname = WESTRING_GEVAL_GTP1 +field = Tip +id = gtp1 +key = tip +profile = true +repeat = 1 +type = 3 +[.ubertip] +displayname = WESTRING_GEVAL_GUB1 +field = Ubertip +id = gub1 +key = ubertip +profile = true +repeat = 1 +type = 3 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 + +[doodad] +[.animinfog] +displayname = WESTRING_DEVAL_DANF +field = animInFog +id = danf +key = animInFog +type = 0 +[.canplacerandscale] +displayname = WESTRING_DEVAL_DCPR +field = canPlaceRandScale +id = dcpr +key = canPlaceRandScale +type = 0 +[.category] +displayname = WESTRING_DEVAL_DCAT +field = category +id = dcat +key = category +type = 3 +[.defscale] +displayname = WESTRING_DEVAL_DDES +field = defScale +id = ddes +key = defScale +type = 2 +[.file] +displayname = WESTRING_DEVAL_DFIL +field = file +id = dfil +key = file +type = 3 +[.fixedrot] +displayname = WESTRING_DEVAL_DFXR +field = fixedRot +id = dfxr +key = fixedRot +type = 2 +[.floats] +displayname = WESTRING_DEVAL_DFLT +field = floats +id = dflt +key = floats +type = 0 +[.ignoremodelclick] +displayname = WESTRING_DEVAL_DIMC +field = ignoreModelClick +id = dimc +key = ignoreModelClick +type = 0 +[.maxpitch] +displayname = WESTRING_DEVAL_DMAP +field = maxPitch +id = dmap +key = maxPitch +type = 2 +[.maxroll] +displayname = WESTRING_DEVAL_DMAR +field = maxRoll +id = dmar +key = maxRoll +type = 2 +[.maxscale] +displayname = WESTRING_DEVAL_DMAS +field = maxScale +id = dmas +key = maxScale +type = 2 +[.minscale] +displayname = WESTRING_DEVAL_DMIS +field = minScale +id = dmis +key = minScale +type = 2 +[.mmblue] +displayname = WESTRING_DEVAL_DMMB +field = MMBlue +id = dmmb +key = MMBlue +type = 0 +[.mmgreen] +displayname = WESTRING_DEVAL_DMMG +field = MMGreen +id = dmmg +key = MMGreen +type = 0 +[.mmred] +displayname = WESTRING_DEVAL_DMMR +field = MMRed +id = dmmr +key = MMRed +type = 0 +[.name] +displayname = WESTRING_DEVAL_DNAM +field = Name +id = dnam +key = Name +type = 3 +[.numvar] +displayname = WESTRING_DEVAL_DVAR +field = numVar +id = dvar +key = numVar +type = 0 +[.oncliffs] +displayname = WESTRING_DEVAL_DONC +field = onCliffs +id = donc +key = onCliffs +type = 0 +[.onwater] +displayname = WESTRING_DEVAL_DONW +field = onWater +id = donw +key = onWater +type = 0 +[.pathtex] +displayname = WESTRING_DEVAL_DPTX +field = pathTex +id = dptx +key = pathTex +type = 3 +[.selsize] +displayname = WESTRING_DEVAL_DSEL +field = selSize +id = dsel +key = selSize +type = 2 +[.shadow] +displayname = WESTRING_DEVAL_DSHD +field = shadow +id = dshd +key = shadow +type = 0 +[.showinfog] +displayname = WESTRING_DEVAL_DSHF +field = showInFog +id = dshf +key = showInFog +type = 0 +[.showinmm] +displayname = WESTRING_DEVAL_DSMM +field = showInMM +id = dsmm +key = showInMM +type = 0 +[.soundloop] +displayname = WESTRING_DEVAL_DSND +field = soundLoop +id = dsnd +key = soundLoop +type = 3 +[.tilesets] +concat = true +displayname = WESTRING_DEVAL_DTIL +field = tilesets +id = dtil +key = tilesets +type = 3 +[.tilesetspecific] +displayname = WESTRING_DEVAL_DTSP +field = tilesetSpecific +id = dtsp +key = tilesetSpecific +type = 0 +[.useclickhelper] +displayname = WESTRING_DEVAL_DUCH +field = useClickHelper +id = duch +key = useClickHelper +type = 0 +[.usemmcolor] +displayname = WESTRING_DEVAL_DUMC +field = useMMColor +id = dumc +key = useMMColor +type = 0 +[.userlist] +displayname = WESTRING_DEVAL_DUSR +field = UserList +id = dusr +key = UserList +type = 0 +[.vertb] +displayname = WESTRING_DEVAL_DVB1 +field = vertB +id = dvb1 +key = vertB +repeat = 10 +type = 0 +[.vertg] +displayname = WESTRING_DEVAL_DVG1 +field = vertG +id = dvg1 +key = vertG +repeat = 10 +type = 0 +[.vertr] +displayname = WESTRING_DEVAL_DVR1 +field = vertR +id = dvr1 +key = vertR +repeat = 10 +type = 0 +[.visradius] +displayname = WESTRING_DEVAL_DVIS +field = visRadius +id = dvis +key = visRadius +type = 2 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 +[.walkable] +displayname = WESTRING_DEVAL_DWLK +field = walkable +id = dwlk +key = walkable +type = 0 + +[destructable] +[.armor] +displayname = WESTRING_BEVAL_BARM +field = armor +id = barm +key = armor +type = 3 +[.buildtime] +displayname = WESTRING_BEVAL_BBUT +field = buildTime +id = bbut +key = buildTime +type = 0 +[.canplacedead] +displayname = WESTRING_BEVAL_BCPD +field = canPlaceDead +id = bcpd +key = canPlaceDead +type = 0 +[.canplacerandscale] +displayname = WESTRING_BEVAL_BCPR +field = canPlaceRandScale +id = bcpr +key = canPlaceRandScale +type = 0 +[.category] +displayname = WESTRING_BEVAL_BCAT +field = category +id = bcat +key = category +type = 3 +[.cliffheight] +displayname = WESTRING_BEVAL_BCLH +field = cliffHeight +id = bclh +key = cliffHeight +type = 0 +[.colorb] +displayname = WESTRING_BEVAL_BVCB +field = colorB +id = bvcb +key = colorB +type = 0 +[.colorg] +displayname = WESTRING_BEVAL_BVCG +field = colorG +id = bvcg +key = colorG +type = 0 +[.colorr] +displayname = WESTRING_BEVAL_BVCR +field = colorR +id = bvcr +key = colorR +type = 0 +[.deathsnd] +displayname = WESTRING_BEVAL_BDSN +field = deathSnd +id = bdsn +key = deathSnd +type = 3 +[.editorsuffix] +displayname = WESTRING_BEVAL_BSUF +field = EditorSuffix +id = bsuf +key = EditorSuffix +type = 3 +[.fatlos] +displayname = WESTRING_BEVAL_BFLO +field = fatLOS +id = bflo +key = fatLOS +type = 0 +[.file] +displayname = WESTRING_BEVAL_BFIL +field = file +id = bfil +key = file +type = 3 +[.fixedrot] +displayname = WESTRING_BEVAL_BFXR +field = fixedRot +id = bfxr +key = fixedRot +type = 2 +[.flyh] +displayname = WESTRING_BEVAL_BFLH +field = flyH +id = bflh +key = flyH +type = 2 +[.fogradius] +displayname = WESTRING_BEVAL_BFRA +field = fogRadius +id = bfra +key = fogRadius +type = 2 +[.fogvis] +displayname = WESTRING_BEVAL_BFVI +field = fogVis +id = bfvi +key = fogVis +type = 0 +[.goldrep] +displayname = WESTRING_BEVAL_BREG +field = goldRep +id = breg +key = goldRep +type = 0 +[.hp] +displayname = WESTRING_BEVAL_BHPS +field = HP +id = bhps +key = HP +type = 2 +[.lightweight] +displayname = WESTRING_BEVAL_BLIT +field = lightweight +id = blit +key = lightweight +type = 0 +[.lumberrep] +displayname = WESTRING_BEVAL_BREL +field = lumberRep +id = brel +key = lumberRep +type = 0 +[.maxpitch] +displayname = WESTRING_BEVAL_BMAP +field = maxPitch +id = bmap +key = maxPitch +type = 2 +[.maxroll] +displayname = WESTRING_BEVAL_BMAR +field = maxRoll +id = bmar +key = maxRoll +type = 2 +[.maxscale] +displayname = WESTRING_BEVAL_BMAS +field = maxScale +id = bmas +key = maxScale +type = 2 +[.minscale] +displayname = WESTRING_BEVAL_BMIS +field = minScale +id = bmis +key = minScale +type = 2 +[.mmblue] +displayname = WESTRING_BEVAL_BMMB +field = MMBlue +id = bmmb +key = MMBlue +type = 0 +[.mmgreen] +displayname = WESTRING_BEVAL_BMMG +field = MMGreen +id = bmmg +key = MMGreen +type = 0 +[.mmred] +displayname = WESTRING_BEVAL_BMMR +field = MMRed +id = bmmr +key = MMRed +type = 0 +[.name] +displayname = WESTRING_BEVAL_BNAM +field = Name +id = bnam +key = Name +type = 3 +[.numvar] +displayname = WESTRING_BEVAL_BVAR +field = numVar +id = bvar +key = numVar +type = 0 +[.occh] +displayname = WESTRING_BEVAL_BOCH +field = occH +id = boch +key = occH +type = 2 +[.oncliffs] +displayname = WESTRING_BEVAL_BONC +field = onCliffs +id = bonc +key = onCliffs +type = 0 +[.onwater] +displayname = WESTRING_BEVAL_BONW +field = onWater +id = bonw +key = onWater +type = 0 +[.pathtex] +displayname = WESTRING_BEVAL_BPTX +field = pathTex +id = bptx +key = pathTex +type = 3 +[.pathtexdeath] +displayname = WESTRING_BEVAL_BPTD +field = pathTexDeath +id = bptd +key = pathTexDeath +type = 3 +[.portraitmodel] +displayname = WESTRING_BEVAL_BGPM +field = portraitmodel +id = bgpm +key = portraitmodel +type = 3 +[.radius] +displayname = WESTRING_BEVAL_BRAD +field = radius +id = brad +key = radius +type = 2 +[.repairtime] +displayname = WESTRING_BEVAL_BRET +field = repairTime +id = bret +key = repairTime +type = 0 +[.selcircsize] +displayname = WESTRING_BEVAL_BGSC +field = selcircsize +id = bgsc +key = selcircsize +type = 1 +[.selectable] +displayname = WESTRING_BEVAL_BGSE +field = selectable +id = bgse +key = selectable +type = 0 +[.selsize] +displayname = WESTRING_BEVAL_BSEL +field = selSize +id = bsel +key = selSize +type = 2 +[.shadow] +displayname = WESTRING_BEVAL_BSHD +field = shadow +id = bshd +key = shadow +type = 3 +[.showinmm] +displayname = WESTRING_BEVAL_BSMM +field = showInMM +id = bsmm +key = showInMM +type = 0 +[.targtype] +concat = true +displayname = WESTRING_BEVAL_BTAR +field = targType +id = btar +key = targType +type = 3 +[.texfile] +displayname = WESTRING_BEVAL_BTXF +field = texFile +id = btxf +key = texFile +type = 3 +[.texid] +displayname = WESTRING_BEVAL_BTXI +field = texID +id = btxi +key = texID +type = 0 +[.tilesets] +concat = true +displayname = WESTRING_BEVAL_BTIL +field = tilesets +id = btil +key = tilesets +type = 3 +[.tilesetspecific] +displayname = WESTRING_BEVAL_BTSP +field = tilesetSpecific +id = btsp +key = tilesetSpecific +type = 0 +[.useclickhelper] +displayname = WESTRING_BEVAL_BUCH +field = useClickHelper +id = buch +key = useClickHelper +type = 0 +[.usemmcolor] +displayname = WESTRING_BEVAL_BUMM +field = useMMColor +id = bumm +key = useMMColor +type = 0 +[.userlist] +displayname = WESTRING_BEVAL_BUSR +field = UserList +id = busr +key = UserList +type = 0 +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 +[.walkable] +displayname = WESTRING_BEVAL_BWAL +field = walkable +id = bwal +key = walkable +type = 0 + +[misc] +[.w2lobject] +field = W2LObject +id = W2lo +key = w2lobject +profile = true +type = 3 + +[AAns] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDT1 +field = DataA +id = Ndt1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDT2 +field = DataB +id = Ndt2 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ANS5 +field = DataE +id = Ans5 +key = Data +repeat = 4 +splite = true +type = 3 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_ANS6 +field = DataF +id = Ans6 +key = Data +repeat = 4 +type = 0 + +[ACad] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAD1 +field = DataA +id = Cad1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HRE2 +field = DataB +id = Hre2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UAN3 +field = DataC +id = Uan3 +key = Data +repeat = 4 +type = 0 + +[ACbf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UCS1 +field = DataA +id = Ucs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UCS2 +field = DataB +id = Ucs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UCS3 +field = DataC +id = Ucs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UCS4 +field = DataD +id = Ucs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NBF5 +field = DataE +id = Nbf5 +key = Data +repeat = 4 +type = 2 + +[ACdv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DEV1 +field = DataA +id = Dev1 +key = Data +repeat = 4 +type = 0 + +[ACrn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ORE1 +field = DataA +id = Ore1 +key = Data +repeat = 4 +type = 2 + +[ACtb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CTB1 +field = DataA +id = Ctb1 +key = Data +repeat = 4 +type = 2 + +[ACtc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CTC1 +field = DataA +id = Ctc1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_CTC2 +field = DataB +id = Ctc2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_CTC3 +field = DataC +id = Ctc3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_CTC4 +field = DataD +id = Ctc4 +key = Data +repeat = 4 +type = 2 + +[AEah] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EAH1 +field = DataA +id = Eah1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EAH2 +field = DataB +id = Eah2 +key = Data +repeat = 4 +type = 0 + +[AEar] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EAR1 +field = DataA +id = Ear1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EAR2 +field = DataB +id = Ear2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EAR3 +field = DataC +id = Ear3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EAR4 +field = DataD +id = Ear4 +key = Data +repeat = 4 +type = 0 + +[AEbl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EBL1 +field = DataA +id = Ebl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EBL2 +field = DataB +id = Ebl2 +key = Data +repeat = 4 +type = 2 + +[AEer] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EER1 +field = DataA +id = Eer1 +key = Data +repeat = 4 +type = 2 + +[AEev] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EEV1 +field = DataA +id = Eev1 +key = Data +repeat = 4 +type = 2 + +[AEfk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EFK1 +field = DataA +id = Efk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EFK2 +field = DataB +id = Efk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EFK3 +field = DataC +id = Efk3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EFK4 +field = DataD +id = Efk4 +key = Data +repeat = 4 +type = 2 + +[AEfn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EFN1 +field = DataA +id = Efn1 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_EFNU +field = UnitID +id = Efnu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AEim] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EIM1 +field = DataA +id = Eim1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EIM2 +field = DataB +id = Eim2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EIM3 +field = DataC +id = Eim3 +key = Data +repeat = 4 +type = 2 + +[AEmb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EMB1 +field = DataA +id = Emb1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EMB2 +field = DataB +id = Emb2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EMB3 +field = DataC +id = Emb3 +key = Data +repeat = 4 +type = 2 + +[AEme] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_EME5 +field = DataE +id = Eme5 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AEpa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POA1 +field = DataA +id = Poa1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POA2 +field = DataB +id = Poa2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POA3 +field = DataC +id = Poa3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POA4 +field = DataD +id = Poa4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_POA5 +field = DataE +id = Poa5 +key = Data +repeat = 4 +type = 0 + +[AEsf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ESF1 +field = DataA +id = Esf1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ESF2 +field = DataB +id = Esf2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ESF3 +field = DataC +id = Esf3 +key = Data +repeat = 4 +type = 2 + +[AEsh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ESH1 +field = DataA +id = Esh1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ESH2 +field = DataB +id = Esh2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ESH3 +field = DataC +id = Esh3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ESH4 +field = DataD +id = Esh4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ESH5 +field = DataE +id = Esh5 +key = Data +repeat = 4 +type = 2 + +[AEst] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AEsv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ESV1 +field = DataA +id = Esv1 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_ESVU +field = UnitID +id = Esvu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AEtq] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ETQ1 +field = DataA +id = Etq1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ETQ2 +field = DataB +id = Etq2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ETQ3 +field = DataC +id = Etq3 +key = Data +repeat = 4 +type = 2 + +[AHab] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HAB1 +field = DataA +id = Hab1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HAB2 +field = DataB +id = Hab2 +key = Data +repeat = 4 +type = 0 + +[AHad] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HAD1 +field = DataA +id = Had1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HAD2 +field = DataB +id = Had2 +key = Data +repeat = 4 +type = 0 + +[AHav] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HAV1 +field = DataA +id = Hav1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HAV2 +field = DataB +id = Hav2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HAV3 +field = DataC +id = Hav3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HAV4 +field = DataD +id = Hav4 +key = Data +repeat = 4 +type = 2 + +[AHbh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HBH1 +field = DataA +id = Hbh1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HBH2 +field = DataB +id = Hbh2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HBH3 +field = DataC +id = Hbh3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HBH4 +field = DataD +id = Hbh4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_HBH5 +field = DataE +id = Hbh5 +key = Data +repeat = 4 +type = 0 + +[AHbn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HBN1 +field = DataA +id = Hbn1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HBN2 +field = DataB +id = Hbn2 +key = Data +repeat = 4 +type = 2 + +[AHbz] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HBZ1 +field = DataA +id = Hbz1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HBZ2 +field = DataB +id = Hbz2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HBZ3 +field = DataC +id = Hbz3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HBZ4 +field = DataD +id = Hbz4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_HBZ5 +field = DataE +id = Hbz5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_HBZ6 +field = DataF +id = Hbz6 +key = Data +repeat = 4 +type = 2 + +[AHca] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HCA1 +field = DataA +id = Hca1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HCA2 +field = DataB +id = Hca2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HCA3 +field = DataC +id = Hca3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HCA4 +field = DataD +id = Hca4 +key = Data +repeat = 4 +type = 0 + +[AHdr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDR1 +field = DataA +id = Ndr1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDR2 +field = DataB +id = Ndr2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NDR3 +field = DataC +id = Ndr3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NDR4 +field = DataD +id = Ndr4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NDR5 +field = DataE +id = Ndr5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NDR6 +field = DataF +id = Ndr6 +key = Data +repeat = 4 +type = 2 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_NDR8 +field = DataG +id = Ndr7 +key = Data +repeat = 4 +type = 2 +[.datah] +data = 8 +displayname = WESTRING_AEVAL_NDR7 +field = DataH +id = Ndr8 +key = Data +repeat = 4 +type = 2 +[.datai] +data = 9 +displayname = WESTRING_AEVAL_NDR9 +field = DataI +id = Ndr9 +key = Data +repeat = 4 +type = 2 + +[AHds] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HDS1 +field = DataA +id = Hds1 +key = Data +repeat = 4 +type = 0 + +[AHfa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HFA1 +field = DataA +id = Hfa1 +key = Data +repeat = 4 +type = 2 + +[AHfs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HFS1 +field = DataA +id = Hfs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HFS2 +field = DataB +id = Hfs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HFS3 +field = DataC +id = Hfs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HFS4 +field = DataD +id = Hfs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_HFS5 +field = DataE +id = Hfs5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_HFS6 +field = DataF +id = Hfs6 +key = Data +repeat = 4 +type = 2 + +[AHhb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HHB1 +field = DataA +id = Hhb1 +key = Data +repeat = 4 +type = 2 + +[AHmt] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HMT1 +field = DataA +id = Hmt1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HMT2 +field = DataB +id = Hmt2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HMT3 +field = DataC +id = Hmt3 +key = Data +repeat = 4 +type = 0 + +[AHpx] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AHre] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HRE1 +field = DataA +id = Hre1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HRE2 +field = DataB +id = Hre2 +key = Data +repeat = 4 +type = 0 + +[AHtb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HTB1 +field = DataA +id = Htb1 +key = Data +repeat = 4 +type = 2 + +[AHtc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HTC1 +field = DataA +id = Htc1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HTC2 +field = DataB +id = Htc2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HTC3 +field = DataC +id = Htc3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HTC4 +field = DataD +id = Htc4 +key = Data +repeat = 4 +type = 2 + +[AHwe] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIaa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAA1 +field = DataA +id = Iaa1 +key = Data +repeat = 4 +type = 0 + +[AIab] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[AIam] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[AIan] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAD1 +field = DataA +id = Cad1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HRE2 +field = DataB +id = Hre2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UAN3 +field = DataC +id = Uan3 +key = Data +repeat = 4 +type = 0 + +[AIas] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISX1 +field = DataA +id = Isx1 +key = Data +repeat = 4 +type = 2 + +[AIat] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IATT +field = DataA +id = Iatt +key = Data +repeat = 4 +type = 0 + +[AIbl] +[.unitid] +concat = true +displayname = WESTRING_AEVAL_IBL1 +field = UnitID +id = Ibl1 +key = UnitID +repeat = 4 +type = 3 + +[AIcb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDIC +field = DataA +id = Idic +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IARP +field = DataB +id = Iarp +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[AIcf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ICFD +field = DataA +id = Icfd +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ICFM +field = DataB +id = Icfm +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ICFX +field = DataC +id = Icfx +key = Data +repeat = 4 +type = 0 + +[AIco] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ICRE +field = DataA +id = Icre +key = Data +repeat = 4 +type = 0 + +[AIct] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ICT1 +field = DataA +id = ict1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ICT2 +field = DataB +id = ict2 +key = Data +repeat = 4 +type = 0 + +[AIda] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDEF +field = DataA +id = Idef +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IHPG +field = DataB +id = Ihp2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IMPG +field = DataC +id = Imp2 +key = Data +repeat = 4 +type = 0 + +[AIdc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDC1 +field = DataA +id = idc1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IDC2 +field = DataB +id = idc2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IDC3 +field = DataC +id = idc3 +key = Data +repeat = 4 +type = 0 + +[AIdd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DEF1 +field = DataA +id = Def1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DEF2 +field = DataB +id = Def2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DEF3 +field = DataC +id = Def3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DEF4 +field = DataD +id = Def4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_DEF5 +field = DataE +id = Def5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_DEF6 +field = DataF +id = Def6 +key = Data +repeat = 4 +type = 2 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_DEF7 +field = DataG +id = Def7 +key = Data +repeat = 4 +type = 2 +[.datah] +data = 8 +displayname = WESTRING_AEVAL_DEF8 +field = DataH +id = Def8 +key = Data +repeat = 4 +type = 2 + +[AIde] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDEF +field = DataA +id = Idef +key = Data +repeat = 4 +type = 2 + +[AIdi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDIM +field = DataA +id = Idim +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IDID +field = DataB +id = Idid +key = Data +repeat = 4 +type = 0 + +[AIem] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IXPG +field = DataA +id = Ixpg +key = Data +repeat = 4 +type = 0 + +[AIfa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Ifa1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IDEL +field = DataB +id = Idel +key = Data +repeat = 4 +type = 2 + +[AIfb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDAM +field = DataA +id = Idam +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[AIfs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISN1 +field = DataA +id = Isn1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ISN2 +field = DataB +id = Isn2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IST1 +field = DataC +id = Ist1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IST2 +field = DataD +id = Ist2 +key = Data +repeat = 4 +splite = true +type = 3 + +[AIgl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IGL1 +field = DataA +id = Igl1 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_IGLU +field = UnitID +id = Iglu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIgo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IGOL +field = DataA +id = Igol +key = Data +repeat = 4 +type = 0 + +[AIha] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IHPG +field = DataA +id = Ihpg +key = Data +repeat = 4 +type = 0 + +[AIhe] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IHPG +field = DataA +id = Ihpg +key = Data +repeat = 4 +type = 0 + +[AIil] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IILD +field = DataA +id = Iild +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IILW +field = DataB +id = Iilw +key = Data +repeat = 4 +type = 2 + +[AIim] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[AIlb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDIC +field = DataA +id = Idic +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[AIlm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ILEV +field = DataA +id = Ilev +key = Data +repeat = 4 +type = 0 + +[AIlp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_PRG1 +field = DataA +id = Prg1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_PRG2 +field = DataB +id = Prg2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_PRG3 +field = DataC +id = Prg3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_PRG4 +field = DataD +id = Prg4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_PRG5 +field = DataE +id = Prg5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_PRG6 +field = DataF +id = Prg6 +key = Data +repeat = 4 +type = 0 + +[AIlu] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ILUM +field = DataA +id = Ilum +key = Data +repeat = 4 +type = 0 + +[AIma] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMPG +field = DataA +id = Impg +key = Data +repeat = 4 +type = 0 + +[AImi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ILIF +field = DataA +id = Ilif +key = Data +repeat = 4 +type = 0 + +[AIml] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ILIF +field = DataA +id = Ilif +key = Data +repeat = 4 +type = 0 + +[AImm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMAN +field = DataA +id = Iman +key = Data +repeat = 4 +type = 0 + +[AImo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMO1 +field = DataA +id = imo1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IMO2 +field = DataB +id = imo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IMO3 +field = DataC +id = imo3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_IMOU +field = UnitID +id = imou +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AImr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMPG +field = DataA +id = Impg +key = Data +repeat = 4 +type = 0 + +[AIms] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMVB +field = DataA +id = Imvb +key = Data +repeat = 4 +type = 0 + +[AInv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_INV1 +field = DataA +id = inv1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_INV2 +field = DataB +id = inv2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_INV3 +field = DataC +id = inv3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_INV4 +field = DataD +id = inv4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_INV5 +field = DataE +id = inv5 +key = Data +repeat = 4 +type = 0 + +[AIob] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDAM +field = DataA +id = Idam +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[AIpb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDIC +field = DataA +id = Idic +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[AIpm] +[.unitid] +displayname = WESTRING_AEVAL_IPMU +field = UnitID +id = ipmu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIpv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IPV1 +field = DataA +id = ipv1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IPV2 +field = DataB +id = ipv2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IPV3 +field = DataC +id = ipv3 +key = Data +repeat = 4 +type = 0 + +[AIra] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IHPS +field = DataA +id = Ihps +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IMPS +field = DataB +id = Imps +key = Data +repeat = 4 +type = 0 + +[AIrc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IRCD +field = DataA +id = Ircd +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IRC2 +field = DataB +id = irc2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IRC3 +field = DataC +id = irc3 +key = Data +repeat = 4 +type = 0 + +[AIrd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_RAI1 +field = DataA +id = Rai1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_RAI2 +field = DataB +id = Rai2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RAI3 +field = DataC +id = Rai3 +key = Data +repeat = 4 +splite = true +type = 3 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RAI4 +field = DataD +id = Rai4 +key = Data +repeat = 4 +splite = true +type = 3 +[.unitid] +displayname = WESTRING_AEVAL_RAIU +field = UnitID +id = Raiu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIre] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IHPS +field = DataA +id = Ihps +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IMPS +field = DataB +id = Imps +key = Data +repeat = 4 +type = 0 + +[AIrg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IRL1 +field = DataA +id = irl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IRL2 +field = DataB +id = irl2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IRL3 +field = DataC +id = irl3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IRL4 +field = DataD +id = irl4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IRL5 +field = DataE +id = irl5 +key = Data +repeat = 4 +type = 0 + +[AIrm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IMRP +field = DataA +id = Imrp +key = Data +repeat = 4 +type = 2 + +[AIrs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HRE1 +field = DataA +id = Hre1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HRE2 +field = DataB +id = Hre2 +key = Data +repeat = 4 +type = 0 + +[AIrt] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IREC +field = DataA +id = Irec +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ITP2 +field = DataB +id = Itp2 +key = Data +repeat = 4 +type = 0 + +[AIrv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[AIsa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISPI +field = DataA +id = Ispi +key = Data +repeat = 4 +type = 2 + +[AIsb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDAM +field = DataA +id = Idam +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IOB2 +field = DataB +id = Iob2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_IOB3 +field = DataC +id = Iob3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IOB4 +field = DataD +id = Iob4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_IOBU +field = UnitID +id = Iobu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIsh] +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OSF2 +field = DataB +id = Osf2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_OSF1 +field = UnitID +id = Osf1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AIsi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISIB +field = DataA +id = Isib +key = Data +repeat = 4 +type = 0 + +[AIsm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[AIsp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISPI +field = DataA +id = Ispi +key = Data +repeat = 4 +type = 2 + +[AIsr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ISR1 +field = DataA +id = isr1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ISR2 +field = DataB +id = isr2 +key = Data +repeat = 4 +type = 2 + +[AIta] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDET +field = DataA +id = Idet +key = Data +repeat = 4 +type = 0 + +[AItb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[AItp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ITPM +field = DataA +id = Itpm +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ITP2 +field = DataB +id = Itp2 +key = Data +repeat = 4 +type = 0 + +[AIva] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IVAM +field = DataA +id = Ivam +key = Data +repeat = 4 +type = 2 + +[AIwb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ENS1 +field = DataA +id = Ens1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ENS2 +field = DataB +id = Ens2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ENS3 +field = DataC +id = Ens3 +key = Data +repeat = 4 +type = 2 + +[AIxm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[AIzb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDAM +field = DataA +id = Idam +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_IOB5 +field = DataE +id = Iob5 +key = Data +repeat = 4 +type = 0 + +[ANab] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NAB1 +field = DataA +id = Nab1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NAB2 +field = DataB +id = Nab2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NAB3 +field = DataC +id = Nab3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NAB4 +field = DataD +id = Nab4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NAB5 +field = DataE +id = Nab5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NAB6 +field = DataF +id = Nab6 +key = Data +repeat = 4 +type = 2 + +[ANba] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NBA1 +field = DataA +id = Nba1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NBA2 +field = DataB +id = Nba2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NBA3 +field = DataC +id = Nba3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_NBAU +field = UnitID +id = Nbau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANbf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UCS1 +field = DataA +id = Ucs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UCS2 +field = DataB +id = Ucs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UCS3 +field = DataC +id = Ucs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UCS4 +field = DataD +id = Ucs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NBF5 +field = DataE +id = Nbf5 +key = Data +repeat = 4 +type = 2 + +[ANbr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NBR1 +field = DataA +id = Nbr1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ROA2 +field = DataB +id = Roa2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ROA3 +field = DataC +id = Roa3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ROA4 +field = DataD +id = Roa4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ROA5 +field = DataE +id = Roa5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_ROA6 +field = DataF +id = Roa6 +key = Data +repeat = 4 +type = 0 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_ROA7 +field = DataG +id = Roa7 +key = Data +repeat = 4 +type = 0 + +[ANbs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NBA1 +field = DataA +id = Nba1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NBA2 +field = DataB +id = Nba2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NBA3 +field = DataC +id = Nba3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_NBAU +field = UnitID +id = Nbau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANca] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCA1 +field = DataA +id = nca1 +key = Data +repeat = 4 +type = 2 + +[ANch] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCH1 +field = DataA +id = Nch1 +key = Data +repeat = 4 +type = 0 + +[ANcl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCL1 +field = DataA +id = Ncl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NCL2 +field = DataB +id = Ncl2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NCL3 +field = DataC +id = Ncl3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NCL4 +field = DataD +id = Ncl4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NCL5 +field = DataE +id = Ncl5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NCL6 +field = DataF +id = Ncl6 +key = Data +repeat = 4 +splite = true +type = 3 + +[ANcr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NCR5 +field = DataE +id = Ncr5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NCR6 +field = DataF +id = Ncr6 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANcs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCS1 +field = DataA +id = Ncs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NCS2 +field = DataB +id = Ncs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NCS3 +field = DataC +id = Ncs3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NCS4 +field = DataD +id = Ncs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NCS5 +field = DataE +id = Ncs5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NCS6 +field = DataF +id = Ncs6 +key = Data +repeat = 4 +type = 2 + +[ANdb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OCR1 +field = DataA +id = Ocr1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OCR2 +field = DataB +id = Ocr2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OCR3 +field = DataC +id = Ocr3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OCR4 +field = DataD +id = Ocr4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_OCR5 +field = DataE +id = Ocr5 +key = Data +repeat = 4 +type = 0 + +[ANdc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDC1 +field = DataA +id = Ndc1 +key = Data +repeat = 4 +splite = true +type = 3 +[.unitid] +displayname = WESTRING_AEVAL_NDC2 +field = UnitID +id = Ndc2 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANde] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDE1 +field = DataA +id = Nde1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDE2 +field = DataB +id = Nde2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NDE3 +field = DataC +id = Nde3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NDE4 +field = DataD +id = Nde4 +key = Data +repeat = 4 +type = 2 + +[ANdh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSI1 +field = DataA +id = Nsi1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSI2 +field = DataB +id = Nsi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSI3 +field = DataC +id = Nsi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSI4 +field = DataD +id = Nsi4 +key = Data +repeat = 4 +type = 2 + +[ANdo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDO1 +field = DataA +id = Ndo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDO2 +field = DataB +id = Ndo2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NDO3 +field = DataC +id = Ndo3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NTM3 +field = DataD +id = Ndo4 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_NDOU +field = UnitID +id = Ndou +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANdp] +[.dataa] +concat = true +data = 1 +displayname = WESTRING_AEVAL_NDP1 +field = DataA +id = Ndp1 +key = Data +repeat = 4 +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDP2 +field = DataB +id = Ndp2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NDP3 +field = DataC +id = Ndp3 +key = Data +repeat = 4 +type = 0 + +[ANef] +[.dataa] +concat = true +data = 1 +displayname = WESTRING_AEVAL_NEF1 +field = DataA +id = Nef1 +key = Data +repeat = 4 +type = 3 + +[ANeg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NEG1 +field = DataA +id = Neg1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NEG2 +field = DataB +id = Neg2 +key = Data +repeat = 4 +type = 2 +[.datac] +concat = true +data = 3 +displayname = WESTRING_AEVAL_NEG3 +field = DataC +id = Neg3 +key = Data +repeat = 4 +type = 3 +[.datad] +concat = true +data = 4 +displayname = WESTRING_AEVAL_NEG4 +field = DataD +id = Neg4 +key = Data +repeat = 4 +type = 3 +[.datae] +concat = true +data = 5 +displayname = WESTRING_AEVAL_NEG5 +field = DataE +id = Neg5 +key = Data +repeat = 4 +type = 3 +[.dataf] +concat = true +data = 6 +displayname = WESTRING_AEVAL_NEG6 +field = DataF +id = Neg6 +key = Data +repeat = 4 +type = 3 + +[ANfb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HTB1 +field = DataA +id = Htb1 +key = Data +repeat = 4 +type = 2 + +[ANfd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NFD1 +field = DataA +id = Nfd1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NFD2 +field = DataB +id = Nfd2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NFD3 +field = DataC +id = Nfd3 +key = Data +repeat = 4 +type = 2 + +[ANfl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OCL1 +field = DataA +id = Ocl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OCL2 +field = DataB +id = Ocl2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UCS3 +field = DataC +id = Ucs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UCS4 +field = DataD +id = Ucs4 +key = Data +repeat = 4 +type = 2 + +[ANfy] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NFY1 +field = DataA +id = Nfy1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NFY2 +field = DataB +id = Nfy2 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_NFYU +field = UnitID +id = Nfyu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANhs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCS1 +field = DataA +id = Ncs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NCS2 +field = DataB +id = Ncs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NCS3 +field = DataC +id = Ncs3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NCS4 +field = DataD +id = Ncs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NCS5 +field = DataE +id = Ncs5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NHS6 +field = DataF +id = Nhs6 +key = Data +repeat = 4 +type = 0 + +[ANht] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ROA1 +field = DataA +id = Roa1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ROA2 +field = DataB +id = Roa2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ROA3 +field = DataC +id = Roa3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ROA4 +field = DataD +id = Roa4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ROA5 +field = DataE +id = Roa5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_ROA6 +field = DataF +id = Roa6 +key = Data +repeat = 4 +type = 0 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_ROA7 +field = DataG +id = Roa7 +key = Data +repeat = 4 +type = 0 + +[ANia] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NIC1 +field = DataA +id = Nic1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NIC2 +field = DataB +id = Nic2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NIC3 +field = DataC +id = Nic3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NIC4 +field = DataD +id = Nic4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NIC5 +field = DataE +id = Nic5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NIC6 +field = DataF +id = Nic6 +key = Data +repeat = 4 +type = 2 + +[ANic] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NIC1 +field = DataA +id = Nic1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NIC2 +field = DataB +id = Nic2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NIC3 +field = DataC +id = Nic3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NIC4 +field = DataD +id = Nic4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NIC5 +field = DataE +id = Nic5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NIC6 +field = DataF +id = Nic6 +key = Data +repeat = 4 +type = 2 + +[ANin] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UIN1 +field = DataA +id = Uin1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UIN2 +field = DataB +id = Uin2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UIN3 +field = DataC +id = Uin3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_UIN4 +field = UnitID +id = Uin4 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANlm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NLM2 +field = DataB +id = Nlm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NLM3 +field = DataC +id = Nlm3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NLM4 +field = DataD +id = Nlm4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NLM5 +field = DataE +id = Nlm5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NLM6 +field = DataF +id = Nlm6 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANmo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ESF1 +field = DataA +id = Esf1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ESF2 +field = DataB +id = Esf2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ESF3 +field = DataC +id = Esf3 +key = Data +repeat = 4 +type = 2 + +[ANmr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NMR1 +field = DataA +id = Nmr1 +key = Data +repeat = 4 +type = 2 + +[ANms] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NMS1 +field = DataA +id = Nms1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NMS2 +field = DataB +id = Nms2 +key = Data +repeat = 4 +type = 2 + +[ANpa] +[.cast] +displayname = WESTRING_AEVAL_NPA6 +field = Cast +id = Npa6 +key = Cast +repeat = 4 +type = 2 +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POI1 +field = DataA +id = Poi1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POI2 +field = DataB +id = Poi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POI3 +field = DataC +id = Poi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POI4 +field = DataD +id = Poi4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NPA5 +field = DataE +id = Npa5 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_IPMU +field = UnitID +id = ipmu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANpi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EIM1 +field = DataA +id = Eim1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EIM2 +field = DataB +id = Eim2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EIM3 +field = DataC +id = Eim3 +key = Data +repeat = 4 +type = 2 + +[ANpr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NPR1 +field = DataA +id = Npr1 +key = Data +repeat = 4 +type = 0 + +[ANrc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NRC1 +field = DataA +id = Nrc1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NRC2 +field = DataB +id = Nrc2 +key = Data +repeat = 4 +type = 0 + +[ANrf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HBZ1 +field = DataA +id = Hbz1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HBZ2 +field = DataB +id = Hbz2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HBZ3 +field = DataC +id = Hbz3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HBZ4 +field = DataD +id = Hbz4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_HBZ5 +field = DataE +id = Hbz5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_HBZ6 +field = DataF +id = Hbz6 +key = Data +repeat = 4 +type = 2 + +[ANrg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NRG5 +field = DataE +id = Nrg5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NRG6 +field = DataF +id = Nrg6 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANsa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSA1 +field = DataA +id = Nsa1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSA2 +field = DataB +id = Nsa2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSA3 +field = DataC +id = Nsa3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSA4 +field = DataD +id = Nsa4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NSA5 +field = DataE +id = Nsa5 +key = Data +repeat = 4 +type = 2 + +[ANse] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSE1 +field = DataA +id = Nse1 +key = Data +repeat = 4 +type = 2 + +[ANsg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANsi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSI1 +field = DataA +id = Nsi1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSI2 +field = DataB +id = Nsi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSI3 +field = DataC +id = Nsi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSI4 +field = DataD +id = Nsi4 +key = Data +repeat = 4 +type = 2 + +[ANsl] +[.unitid] +displayname = WESTRING_AEVAL_NSL1 +field = UnitID +id = Nsl1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANso] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSO1 +field = DataA +id = Nso1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSO2 +field = DataB +id = Nso2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSO3 +field = DataC +id = Nso3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSO4 +field = DataD +id = Nso4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NSO5 +field = DataE +id = Nso5 +key = Data +repeat = 4 +type = 2 + +[ANsq] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANst] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NST1 +field = DataA +id = Nst1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NST2 +field = DataB +id = Nst2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NST3 +field = DataC +id = Nst3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NST4 +field = DataD +id = Nst4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NST5 +field = DataE +id = Nst5 +key = Data +repeat = 4 +type = 2 + +[ANsu] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANsw] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANsy] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSY1 +field = DataA +id = Nsy1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSY2 +field = DataB +id = Nsy2 +key = Data +repeat = 4 +splite = true +type = 3 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSY3 +field = DataC +id = Nsy3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSY4 +field = DataD +id = Nsy4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NSY5 +field = DataE +id = Nsy5 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_NSYU +field = UnitID +id = Nsyu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANtm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NTM1 +field = DataA +id = Ntm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NTM2 +field = DataB +id = Ntm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NTM3 +field = DataC +id = Ntm3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NTM4 +field = DataD +id = Ntm4 +key = Data +repeat = 4 +type = 0 + +[ANto] +[.unitid] +displayname = WESTRING_AEVAL_NTOU +field = UnitID +id = Ntou +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANvc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NVC1 +field = DataA +id = Nvc1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NVC2 +field = DataB +id = Nvc2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NVC3 +field = DataC +id = Nvc3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NVC4 +field = DataD +id = Nvc4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_NVC5 +field = DataE +id = Nvc5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_NVC6 +field = DataF +id = Nvc6 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_NVCU +field = UnitID +id = Nvcu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[ANwm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AOac] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAC1 +field = DataA +id = Cac1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EAR2 +field = DataB +id = Ear2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EAR3 +field = DataC +id = Ear3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EAR4 +field = DataD +id = Ear4 +key = Data +repeat = 4 +type = 0 + +[AOae] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OAE1 +field = DataA +id = Oae1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OAE2 +field = DataB +id = Oae2 +key = Data +repeat = 4 +type = 2 + +[AOcl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OCL1 +field = DataA +id = Ocl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OCL2 +field = DataB +id = Ocl2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OCL3 +field = DataC +id = Ocl3 +key = Data +repeat = 4 +type = 2 + +[AOcr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OCR1 +field = DataA +id = Ocr1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OCR2 +field = DataB +id = Ocr2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OCR3 +field = DataC +id = Ocr3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OCR4 +field = DataD +id = Ocr4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_OCR5 +field = DataE +id = Ocr5 +key = Data +repeat = 4 +type = 0 + +[AOeq] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OEQ1 +field = DataA +id = Oeq1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OEQ2 +field = DataB +id = Oeq2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OEQ3 +field = DataC +id = Oeq3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OEQ4 +field = DataD +id = Oeq4 +key = Data +repeat = 4 +type = 2 + +[AOfs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OFS1 +field = DataA +id = Ofs1 +key = Data +repeat = 4 +type = 0 + +[AOhw] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OCL1 +field = DataA +id = Ocl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OCL2 +field = DataB +id = Ocl2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OCL3 +field = DataC +id = Ocl3 +key = Data +repeat = 4 +type = 2 + +[AOhx] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_PLY1 +field = DataA +id = Ply1 +key = Data +repeat = 4 +type = 0 +[.datab] +concat = true +data = 2 +displayname = WESTRING_AEVAL_PLY2 +field = DataB +id = Ply2 +key = Data +repeat = 4 +type = 3 +[.datac] +concat = true +data = 3 +displayname = WESTRING_AEVAL_PLY3 +field = DataC +id = Ply3 +key = Data +repeat = 4 +type = 3 +[.datad] +concat = true +data = 4 +displayname = WESTRING_AEVAL_PLY4 +field = DataD +id = Ply4 +key = Data +repeat = 4 +type = 3 +[.datae] +concat = true +data = 5 +displayname = WESTRING_AEVAL_PLY5 +field = DataE +id = Ply5 +key = Data +repeat = 4 +type = 3 + +[AOmi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OMI1 +field = DataA +id = Omi1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OMI2 +field = DataB +id = Omi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OMI3 +field = DataC +id = Omi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OMI4 +field = DataD +id = Omi4 +key = Data +repeat = 4 +type = 2 + +[AOre] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ORE1 +field = DataA +id = Ore1 +key = Data +repeat = 4 +type = 2 + +[AOsf] +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OSF2 +field = DataB +id = Osf2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_OSF1 +field = UnitID +id = Osf1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AOsh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OSH1 +field = DataA +id = Osh1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OSH2 +field = DataB +id = Osh2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OSH3 +field = DataC +id = Osh3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OSH4 +field = DataD +id = Osh4 +key = Data +repeat = 4 +type = 2 + +[AOwd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AOwk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OWK1 +field = DataA +id = Owk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OWK2 +field = DataB +id = Owk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_OWK3 +field = DataC +id = Owk3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_OWK3 +field = DataD +id = Owk4 +key = Data +repeat = 4 +type = 0 + +[AOws] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_WRS1 +field = DataA +id = Wrs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_WRS2 +field = DataB +id = Wrs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_WRS3 +field = DataC +id = Wrs3 +key = Data +repeat = 4 +type = 0 + +[AOww] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OWW1 +field = DataA +id = Oww1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OWW2 +field = DataB +id = Oww2 +key = Data +repeat = 4 +type = 2 + +[AUan] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UAN1 +field = DataA +id = Uan1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HRE2 +field = DataB +id = Hre2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UAN3 +field = DataC +id = Uan3 +key = Data +repeat = 4 +type = 0 + +[AUau] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UAU1 +field = DataA +id = Uau1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UAU2 +field = DataB +id = Uau2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UAU3 +field = DataC +id = Uau3 +key = Data +repeat = 4 +type = 0 + +[AUav] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UAV1 +field = DataA +id = Uav1 +key = Data +repeat = 4 +type = 2 + +[AUcb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_RAI1 +field = DataA +id = Rai1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_RAI2 +field = DataB +id = Rai2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RAI3 +field = DataC +id = Rai3 +key = Data +repeat = 4 +splite = true +type = 3 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RAI4 +field = DataD +id = Rai4 +key = Data +repeat = 4 +splite = true +type = 3 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UCB5 +field = DataE +id = Ucb5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_UCB6 +field = DataF +id = Ucb6 +key = Data +repeat = 4 +type = 0 + +[AUcs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UCS1 +field = DataA +id = Ucs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UCS2 +field = DataB +id = Ucs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UCS3 +field = DataC +id = Ucs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UCS4 +field = DataD +id = Ucs4 +key = Data +repeat = 4 +type = 2 + +[AUdc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDC1 +field = DataA +id = Udc1 +key = Data +repeat = 4 +type = 2 + +[AUdd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDD1 +field = DataA +id = Udd1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UDD2 +field = DataB +id = Udd2 +key = Data +repeat = 4 +type = 2 + +[AUdp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDP1 +field = DataA +id = Udp1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UDP2 +field = DataB +id = Udp2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UDP3 +field = DataC +id = Udp3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UDP4 +field = DataD +id = Udp4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UDP5 +field = DataE +id = Udp5 +key = Data +repeat = 4 +type = 0 + +[AUdr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDP1 +field = DataA +id = Udp1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UDP2 +field = DataB +id = Udp2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UDP3 +field = DataC +id = Udp3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UDP4 +field = DataD +id = Udp4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UDP5 +field = DataE +id = Udp5 +key = Data +repeat = 4 +type = 0 + +[AUds] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDS1 +field = DataA +id = Uds1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UDS2 +field = DataB +id = Uds2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HMT3 +field = DataC +id = Hmt3 +key = Data +repeat = 4 +type = 0 + +[AUfa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UFA1 +field = DataA +id = Ufa1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UFA2 +field = DataB +id = Ufa2 +key = Data +repeat = 4 +type = 2 + +[AUfn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UFN1 +field = DataA +id = Ufn1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UFN2 +field = DataB +id = Ufn2 +key = Data +repeat = 4 +type = 2 + +[AUfu] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UFA1 +field = DataA +id = Ufa1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UFA2 +field = DataB +id = Ufa2 +key = Data +repeat = 4 +type = 2 + +[AUim] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UIM1 +field = DataA +id = Uim1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UIM2 +field = DataB +id = Uim2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UIM3 +field = DataC +id = Uim3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UIM4 +field = DataD +id = Uim4 +key = Data +repeat = 4 +type = 2 + +[AUin] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UIN1 +field = DataA +id = Uin1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UIN2 +field = DataB +id = Uin2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UIN3 +field = DataC +id = Uin3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_UIN4 +field = UnitID +id = Uin4 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AUls] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ULS1 +field = DataA +id = Uls1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ULS2 +field = DataB +id = Uls2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ULS3 +field = DataC +id = Uls3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ULS4 +field = DataD +id = Uls4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ULS5 +field = DataE +id = Uls5 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_ULSU +field = UnitID +id = Ulsu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[AUsl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_USL1 +field = DataA +id = Usl1 +key = Data +repeat = 4 +type = 2 + +[AUts] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UTS1 +field = DataA +id = Uts1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UTS2 +field = DataB +id = Uts2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UTS3 +field = DataC +id = Uts3 +key = Data +repeat = 4 +type = 2 + +[Aabr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OAR1 +field = DataA +id = Oar1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OAR2 +field = DataB +id = Oar2 +key = Data +repeat = 4 +type = 0 + +[Aabs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ABS1 +field = DataA +id = abs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ABS2 +field = DataB +id = abs2 +key = Data +repeat = 4 +type = 2 + +[Aadm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ADM1 +field = DataA +id = Adm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ADM2 +field = DataB +id = Adm2 +key = Data +repeat = 4 +type = 2 + +[Aakb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_AKB1 +field = DataA +id = Akb1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EAR2 +field = DataB +id = Ear2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EAR3 +field = DataC +id = Ear3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EAR4 +field = DataD +id = Ear4 +key = Data +repeat = 4 +type = 0 + +[Aall] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NEU1 +field = DataA +id = Neu1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NEU2 +field = DataB +id = Neu2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NEU3 +field = DataC +id = Neu3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NEU4 +field = DataD +id = Neu4 +key = Data +repeat = 4 +type = 0 + +[Aami] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IXS1 +field = DataA +id = Ixs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IXS2 +field = DataB +id = Ixs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_AMS3 +field = DataC +id = Ams3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_AMS4 +field = DataD +id = Ams4 +key = Data +repeat = 4 +type = 0 + +[Aamk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IAGI +field = DataA +id = Iagi +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_IINT +field = DataB +id = Iint +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ISTR +field = DataC +id = Istr +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_IHID +field = DataD +id = Ihid +key = Data +repeat = 4 +type = 0 + +[Aams] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_AMS1 +field = DataA +id = Ams1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_AMS2 +field = DataB +id = Ams2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_AMS3 +field = DataC +id = Ams3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_AMS4 +field = DataD +id = Ams4 +key = Data +repeat = 4 +type = 0 + +[Aapl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_APL1 +field = DataA +id = Apl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_APL2 +field = DataB +id = Apl2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_APL3 +field = DataC +id = Apl3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_APLU +field = UnitID +id = Aplu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aarm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NRE1 +field = DataA +id = Arm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NRE2 +field = DataB +id = Arm2 +key = Data +repeat = 4 +type = 0 + +[Aasl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SLO1 +field = DataA +id = Slo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SLO2 +field = DataB +id = Slo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SLO3 +field = DataC +id = Slo3 +key = Data +repeat = 4 +type = 0 + +[Aast] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_AST1 +field = DataA +id = ast1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_AST2 +field = DataB +id = ast2 +key = Data +repeat = 4 +type = 2 + +[Aave] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_AVE5 +field = DataE +id = ave5 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Abdt] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[Abgm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BGM1 +field = DataA +id = Bgm1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BGM2 +field = DataB +id = Bgm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_BGM3 +field = DataC +id = Bgm3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_BGM4 +field = DataD +id = Bgm4 +key = Data +repeat = 4 +type = 2 + +[Abli] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BLI1 +field = DataA +id = Bli1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BLI2 +field = DataB +id = Bli2 +key = Data +repeat = 4 +type = 0 + +[Ablo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BLO1 +field = DataA +id = Blo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BLO2 +field = DataB +id = Blo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_BLO3 +field = DataC +id = Blo3 +key = Data +repeat = 4 +type = 2 + +[Ablp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BLI1 +field = DataA +id = Bli1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BLI2 +field = DataB +id = Bli2 +key = Data +repeat = 4 +type = 0 + +[Abof] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HFS1 +field = DataA +id = Hfs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HFS2 +field = DataB +id = Hfs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HFS3 +field = DataC +id = Hfs3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_HFS4 +field = DataD +id = Hfs4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_HFS5 +field = DataE +id = Hfs5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_HFS6 +field = DataF +id = Hfs6 +key = Data +repeat = 4 +type = 2 + +[Abrf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Absk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BSK1 +field = DataA +id = bsk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BSK2 +field = DataB +id = bsk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_BSK3 +field = DataC +id = bsk3 +key = Data +repeat = 4 +type = 2 + +[Abtl] +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BTL2 +field = DataB +id = Btl2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_BTL1 +field = UnitID +id = Btl1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Abun] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAR1 +field = DataA +id = Car1 +key = Data +repeat = 4 +type = 0 + +[Abur] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Acan] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAN1 +field = DataA +id = Can1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_CAN2 +field = DataB +id = Can2 +key = Data +repeat = 4 +type = 2 + +[Acar] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAR1 +field = DataA +id = Car1 +key = Data +repeat = 4 +type = 0 + +[Acha] +[.unitid] +displayname = WESTRING_AEVAL_CHA1 +field = UnitID +id = Cha1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Achd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CHD1 +field = DataA +id = Chd1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_CHD2 +field = DataB +id = Chd2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_CHD3 +field = DataC +id = Chd3 +key = Data +repeat = 4 +type = 2 + +[Achl] +[.unitid] +displayname = WESTRING_AEVAL_CHL1 +field = UnitID +id = Chl1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aclf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSI1 +field = DataA +id = Nsi1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSI2 +field = DataB +id = Nsi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSI3 +field = DataC +id = Nsi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NSI4 +field = DataD +id = Nsi4 +key = Data +repeat = 4 +type = 2 + +[Acmg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NCH1 +field = DataA +id = Nch1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_CMG2 +field = DataB +id = Cmg2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_CMG3 +field = DataC +id = Cmg3 +key = Data +repeat = 4 +type = 2 + +[Acoa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_COA1 +field = DataA +id = coa1 +key = Data +repeat = 4 +splite = true +type = 3 +[.unitid] +displayname = WESTRING_AEVAL_COAU +field = UnitID +id = coau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Acoh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_COA1 +field = DataA +id = coa1 +key = Data +repeat = 4 +splite = true +type = 3 +[.unitid] +displayname = WESTRING_AEVAL_COAU +field = UnitID +id = coau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Acoi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_COA1 +field = DataA +id = coa1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_COA2 +field = DataB +id = coa2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_COAU +field = UnitID +id = coau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Acor] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_COR1 +field = DataA +id = Cor1 +key = Data +repeat = 4 +type = 2 + +[Acpf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Acri] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CRI1 +field = DataA +id = Cri1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_CRI2 +field = DataB +id = Cri2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_CRI3 +field = DataC +id = Cri3 +key = Data +repeat = 4 +type = 2 + +[Acrs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CRS1 +field = DataA +id = Crs +key = Data +repeat = 4 +type = 2 + +[Acyc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CYC1 +field = DataA +id = cyc1 +key = Data +repeat = 4 +type = 0 + +[Adch] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ADM1 +field = DataA +id = Adm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ADM2 +field = DataB +id = Adm2 +key = Data +repeat = 4 +type = 2 + +[Adda] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DDA1 +field = DataA +id = Dda1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DDA2 +field = DataB +id = Dda2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DDA3 +field = DataC +id = Dda3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DDA4 +field = DataD +id = Dda4 +key = Data +repeat = 4 +type = 2 + +[Adec] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DCP1 +field = DataA +id = dcp1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DCP2 +field = DataB +id = dcp2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Adef] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DEF1 +field = DataA +id = Def1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DEF2 +field = DataB +id = Def2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DEF3 +field = DataC +id = Def3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DEF4 +field = DataD +id = Def4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_DEF5 +field = DataE +id = Def5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_DEF6 +field = DataF +id = Def6 +key = Data +repeat = 4 +type = 2 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_DEF7 +field = DataG +id = Def7 +key = Data +repeat = 4 +type = 2 +[.datah] +data = 8 +displayname = WESTRING_AEVAL_DEF8 +field = DataH +id = Def8 +key = Data +repeat = 4 +type = 2 + +[Adet] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[Adev] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DEV1 +field = DataA +id = Dev1 +key = Data +repeat = 4 +type = 0 + +[Adis] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ADM1 +field = DataA +id = Adm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ADM2 +field = DataB +id = Adm2 +key = Data +repeat = 4 +type = 2 + +[Adtn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DTN1 +field = DataA +id = Dtn1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DTN2 +field = DataB +id = Dtn2 +key = Data +repeat = 4 +type = 2 + +[Adts] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[Advc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAR1 +field = DataA +id = Car1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DEV2 +field = DataB +id = Dev2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DEV3 +field = DataC +id = Dev3 +key = Data +repeat = 4 +type = 0 + +[Advm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DVM1 +field = DataA +id = dvm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DVM2 +field = DataB +id = dvm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DVM3 +field = DataC +id = dvm3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DVM4 +field = DataD +id = dvm4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_DVM5 +field = DataE +id = dvm5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_DVM6 +field = DataF +id = dvm6 +key = Data +repeat = 4 +type = 0 + +[Aeat] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EAT1 +field = DataA +id = Eat1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EAT2 +field = DataB +id = Eat2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EAT3 +field = DataC +id = Eat3 +key = Data +repeat = 4 +type = 2 + +[Aegm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EGM1 +field = DataA +id = Egm1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EGM2 +field = DataB +id = Egm2 +key = Data +repeat = 4 +type = 2 + +[Aenc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAR1 +field = DataA +id = Car1 +key = Data +repeat = 4 +type = 0 + +[Aens] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ENS1 +field = DataA +id = Ens1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ENS2 +field = DataB +id = Ens2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ENS3 +field = DataC +id = Ens3 +key = Data +repeat = 4 +type = 2 + +[Aent] +[.unitid] +displayname = WESTRING_AEVAL_ENT1 +field = UnitID +id = ent1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aesn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ESN1 +field = DataA +id = Esn1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ESN2 +field = DataB +id = Esn2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ESN3 +field = DataC +id = Esn3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ESN4 +field = DataD +id = Esn4 +key = Data +repeat = 4 +type = 0 + +[Aetf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aeth] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ETH1 +field = DataA +id = Eth1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ETH2 +field = DataB +id = Eth2 +key = Data +repeat = 4 +type = 0 + +[Aexh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EXH1 +field = DataA +id = exh1 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_EXHU +field = UnitID +id = exhu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aeye] +[.unitid] +displayname = WESTRING_AEVAL_HWDU +field = UnitID +id = hwdu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Afae] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FAE1 +field = DataA +id = Fae1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FAE2 +field = DataB +id = Fae2 +key = Data +repeat = 4 +type = 0 + +[Afak] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FAK1 +field = DataA +id = fak1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FAK2 +field = DataB +id = fak2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_FAK3 +field = DataC +id = fak3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_FAK4 +field = DataD +id = fak4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_FAK5 +field = DataE +id = fak5 +key = Data +repeat = 4 +type = 2 + +[Afbk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FBK1 +field = DataA +id = fbk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FBK2 +field = DataB +id = fbk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_FBK3 +field = DataC +id = fbk3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_FBK4 +field = DataD +id = fbk4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_FBK5 +field = DataE +id = fbk5 +key = Data +repeat = 4 +type = 2 + +[Afla] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FLA1 +field = DataA +id = Fla1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FLA2 +field = DataB +id = Fla2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_FLA3 +field = DataC +id = Fla3 +key = Data +repeat = 4 +type = 0 + +[Aflk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FLK1 +field = DataA +id = flk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FLK2 +field = DataB +id = flk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_FLK3 +field = DataC +id = flk3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_FLK4 +field = DataD +id = flk4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_FLK5 +field = DataE +id = flk5 +key = Data +repeat = 4 +type = 2 + +[Afsh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_FLK1 +field = DataA +id = flk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_FLK2 +field = DataB +id = flk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_FLK3 +field = DataC +id = flk3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_FLK4 +field = DataD +id = flk4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_FLK5 +field = DataE +id = flk5 +key = Data +repeat = 4 +type = 2 + +[Afzy] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_BLO1 +field = DataA +id = Blo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_BLO2 +field = DataB +id = Blo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_BLO3 +field = DataC +id = Blo3 +key = Data +repeat = 4 +type = 2 + +[Agho] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_GHO1 +field = DataA +id = Gho1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_GHO2 +field = DataB +id = Gho2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_GHO3 +field = DataC +id = Gho3 +key = Data +repeat = 4 +type = 0 + +[Agld] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_GLD1 +field = DataA +id = Gld1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_GLD2 +field = DataB +id = Gld2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_GLD3 +field = DataC +id = Gld3 +key = Data +repeat = 4 +type = 0 + +[Agra] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_GRA1 +field = DataA +id = gra1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_GRA2 +field = DataB +id = gra2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_GRA3 +field = DataC +id = gra3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_GRA4 +field = DataD +id = gra4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_GRA5 +field = DataE +id = gra5 +key = Data +repeat = 4 +type = 0 + +[Agyd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_GYD1 +field = DataA +id = Gyd1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_GYD2 +field = DataB +id = Gyd2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_GYD3 +field = DataC +id = Gyd3 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_GYDU +field = UnitID +id = Gydu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Agyv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[Ahar] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HAR1 +field = DataA +id = Har1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HAR2 +field = DataB +id = Har2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_HAR3 +field = DataC +id = Har3 +key = Data +repeat = 4 +type = 0 + +[Ahea] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HEA1 +field = DataA +id = Hea1 +key = Data +repeat = 4 +type = 2 + +[Ahid] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SHM1 +field = DataA +id = Shm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SHM2 +field = DataB +id = Shm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SHM3 +field = DataC +id = Shm3 +key = Data +repeat = 4 +type = 2 + +[Ahrl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HAR1 +field = DataA +id = Har1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HAR2 +field = DataB +id = Har2 +key = Data +repeat = 4 +type = 0 + +[Ahrs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_WRS1 +field = DataA +id = Wrs1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_WRS2 +field = DataB +id = Wrs2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_WRS3 +field = DataC +id = Wrs3 +key = Data +repeat = 4 +type = 0 + +[Ahwd] +[.unitid] +displayname = WESTRING_AEVAL_HWDU +field = UnitID +id = hwdu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aidb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IDEF +field = DataA +id = Idef +key = Data +repeat = 4 +type = 2 + +[Ainf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_INF1 +field = DataA +id = Inf1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_INF2 +field = DataB +id = Inf2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_INF3 +field = DataC +id = Inf3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_INF4 +field = DataD +id = Inf4 +key = Data +repeat = 4 +type = 2 + +[Aivs] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IVS1 +field = DataA +id = Ivs1 +key = Data +repeat = 4 +type = 2 + +[Aliq] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_LIQ1 +field = DataA +id = liq1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_LIQ2 +field = DataB +id = liq2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_LIQ3 +field = DataC +id = liq3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_LIQ4 +field = DataD +id = liq4 +key = Data +repeat = 4 +type = 0 + +[Alit] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_LIT1 +field = DataA +id = Lit1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_LIT2 +field = DataB +id = Lit2 +key = Data +repeat = 4 +type = 2 + +[Aloa] +[.unitid] +displayname = WESTRING_AEVAL_LOA1 +field = UnitID +id = Loa1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Alsh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_LSH1 +field = DataA +id = Lsh1 +key = Data +repeat = 4 +type = 2 + +[Ambt] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MBT1 +field = DataA +id = Mbt1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_MBT2 +field = DataB +id = Mbt2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_MBT3 +field = DataC +id = Mbt3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_MBT4 +field = DataD +id = Mbt4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_MBT5 +field = DataE +id = Mbt5 +key = Data +repeat = 4 +type = 0 + +[Amdf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DEF1 +field = DataA +id = Def1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DEF2 +field = DataB +id = Def2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DEF3 +field = DataC +id = Def3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DEF4 +field = DataD +id = Def4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_DEF5 +field = DataE +id = Def5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_DEF6 +field = DataF +id = Def6 +key = Data +repeat = 4 +type = 2 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_DEF7 +field = DataG +id = Def7 +key = Data +repeat = 4 +type = 2 +[.datah] +data = 8 +displayname = WESTRING_AEVAL_DEF8 +field = DataH +id = Def8 +key = Data +repeat = 4 +type = 2 + +[Amec] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MEC1 +field = DataA +id = mec1 +key = Data +repeat = 4 +type = 0 + +[Amfl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MFL1 +field = DataA +id = mfl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_MFL2 +field = DataB +id = mfl2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_MFL3 +field = DataC +id = mfl3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_MFL4 +field = DataD +id = mfl4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_MFL5 +field = DataE +id = mfl5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_MFL6 +field = DataF +id = mfl6 +key = Data +repeat = 4 +type = 0 + +[Amil] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MIL1 +field = DataA +id = Mil1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_MIL2 +field = DataB +id = Mil2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Amim] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MIM1 +field = DataA +id = mim1 +key = Data +repeat = 4 +type = 2 + +[Amin] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MIN1 +field = DataA +id = Min1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_MIN2 +field = DataB +id = Min2 +key = Data +repeat = 4 +type = 2 + +[Amls] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_MLS1 +field = DataA +id = mls1 +key = Data +repeat = 4 +type = 2 + +[Amtc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_CAR1 +field = DataA +id = Car1 +key = Data +repeat = 4 +type = 0 + +[Andt] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NDT1 +field = DataA +id = Ndt1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NDT2 +field = DataB +id = Ndt2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NDT3 +field = DataC +id = Ndt3 +key = Data +repeat = 4 +type = 0 + +[Aneu] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NEU1 +field = DataA +id = Neu1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NEU2 +field = DataB +id = Neu2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NEU3 +field = DataC +id = Neu3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_NEU4 +field = DataD +id = Neu4 +key = Data +repeat = 4 +type = 0 + +[Anhe] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HEA1 +field = DataA +id = Hea1 +key = Data +repeat = 4 +type = 2 + +[Ansp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_NSP1 +field = DataA +id = Nsp1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_NSP2 +field = DataB +id = Nsp2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_NSP3 +field = DataC +id = Nsp3 +key = Data +repeat = 4 +type = 0 + +[Anwm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HWE2 +field = DataA +id = Hwe2 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_HWE1 +field = UnitID +id = Hwe1 +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aoar] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_OAR1 +field = DataA +id = Oar1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_OAR2 +field = DataB +id = Oar2 +key = Data +repeat = 4 +type = 0 + +[Aphx] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Apig] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EIM1 +field = DataA +id = Eim1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EIM2 +field = DataB +id = Eim2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EIM3 +field = DataC +id = Eim3 +key = Data +repeat = 4 +type = 2 + +[Apiv] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_GHO1 +field = DataA +id = Gho1 +key = Data +repeat = 4 +type = 0 + +[Aply] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_PLY1 +field = DataA +id = Ply1 +key = Data +repeat = 4 +type = 0 +[.datab] +concat = true +data = 2 +displayname = WESTRING_AEVAL_PLY2 +field = DataB +id = Ply2 +key = Data +repeat = 4 +type = 3 +[.datac] +concat = true +data = 3 +displayname = WESTRING_AEVAL_PLY3 +field = DataC +id = Ply3 +key = Data +repeat = 4 +type = 3 +[.datad] +concat = true +data = 4 +displayname = WESTRING_AEVAL_PLY4 +field = DataD +id = Ply4 +key = Data +repeat = 4 +type = 3 +[.datae] +concat = true +data = 5 +displayname = WESTRING_AEVAL_PLY5 +field = DataE +id = Ply5 +key = Data +repeat = 4 +type = 3 + +[Apo2] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POI1 +field = DataA +id = Poi1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POI2 +field = DataB +id = Poi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POI3 +field = DataC +id = Poi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POI4 +field = DataD +id = Poi4 +key = Data +repeat = 4 +type = 0 + +[Apoi] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POI1 +field = DataA +id = Poi1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POI2 +field = DataB +id = Poi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POI3 +field = DataC +id = Poi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POI4 +field = DataD +id = Poi4 +key = Data +repeat = 4 +type = 0 + +[Apos] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POS1 +field = DataA +id = Pos1 +key = Data +repeat = 4 +type = 0 + +[Aprg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_PRG1 +field = DataA +id = Prg1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_PRG2 +field = DataB +id = Prg2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_PRG3 +field = DataC +id = Prg3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_PRG4 +field = DataD +id = Prg4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_PRG5 +field = DataE +id = Prg5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_PRG6 +field = DataF +id = Prg6 +key = Data +repeat = 4 +type = 0 + +[Aps2] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POS1 +field = DataA +id = Pos1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POS2 +field = DataB +id = Pos2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POS3 +field = DataC +id = Pos3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POS4 +field = DataD +id = Pos4 +key = Data +repeat = 4 +type = 0 + +[Apsh] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_HBN1 +field = DataA +id = Hbn1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_HBN2 +field = DataB +id = Hbn2 +key = Data +repeat = 4 +type = 2 + +[Apts] +[.unitid] +displayname = WESTRING_AEVAL_HWDU +field = UnitID +id = hwdu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Apxf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_PXF1 +field = DataA +id = pxf1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_PXF2 +field = DataB +id = pxf2 +key = Data +repeat = 4 +type = 2 + +[Arai] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_RAI1 +field = DataA +id = Rai1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_RAI2 +field = DataB +id = Rai2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RAI3 +field = DataC +id = Rai3 +key = Data +repeat = 4 +splite = true +type = 3 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RAI4 +field = DataD +id = Rai4 +key = Data +repeat = 4 +splite = true +type = 3 +[.unitid] +displayname = WESTRING_AEVAL_RAIU +field = UnitID +id = Raiu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Arav] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Arej] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REJ1 +field = DataA +id = Rej1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REJ2 +field = DataB +id = Rej2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_REJ3 +field = DataC +id = Rej3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_REJ4 +field = DataD +id = Rej4 +key = Data +repeat = 4 +type = 0 + +[Arel] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_IHPR +field = DataA +id = Ihpr +key = Data +repeat = 4 +type = 0 + +[Aren] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REP1 +field = DataA +id = Rep1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REP2 +field = DataB +id = Rep2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_REP3 +field = DataC +id = Rep3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_REP4 +field = DataD +id = Rep4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_REP5 +field = DataE +id = Rep5 +key = Data +repeat = 4 +type = 2 + +[Arep] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REP1 +field = DataA +id = Rep1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REP2 +field = DataB +id = Rep2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_REP3 +field = DataC +id = Rep3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_REP4 +field = DataD +id = Rep4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_REP5 +field = DataE +id = Rep5 +key = Data +repeat = 4 +type = 2 + +[Aroa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ROA1 +field = DataA +id = Roa1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ROA2 +field = DataB +id = Roa2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ROA3 +field = DataC +id = Roa3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ROA4 +field = DataD +id = Roa4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_ROA5 +field = DataE +id = Roa5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_ROA6 +field = DataF +id = Roa6 +key = Data +repeat = 4 +type = 0 +[.datag] +data = 7 +displayname = WESTRING_AEVAL_ROA7 +field = DataG +id = Roa7 +key = Data +repeat = 4 +type = 0 + +[Aroc] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EFK1 +field = DataA +id = Efk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EFK2 +field = DataB +id = Efk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EFK3 +field = DataC +id = Efk3 +key = Data +repeat = 4 +type = 0 + +[Aroo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ROO1 +field = DataA +id = Roo1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ROO2 +field = DataB +id = Roo2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ROO3 +field = DataC +id = Roo3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_ROO4 +field = DataD +id = Roo4 +key = Data +repeat = 4 +type = 0 + +[Arpb] +[.cast] +displayname = WESTRING_AEVAL_RPB6 +field = Cast +id = Rpb6 +key = Cast +repeat = 4 +type = 0 +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REJ1 +field = DataA +id = Rej1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REJ2 +field = DataB +id = Rej2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RPB3 +field = DataC +id = Rpb3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RPB4 +field = DataD +id = Rpb4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_RPB5 +field = DataE +id = Rpb5 +key = Data +repeat = 4 +type = 0 + +[Arpl] +[.cast] +displayname = WESTRING_AEVAL_RPB6 +field = Cast +id = Rpb6 +key = Cast +repeat = 4 +type = 0 +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REJ1 +field = DataA +id = Rej1 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RPB3 +field = DataC +id = Rpb3 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_RPB5 +field = DataE +id = Rpb5 +key = Data +repeat = 4 +type = 0 + +[Arpm] +[.cast] +displayname = WESTRING_AEVAL_RPB6 +field = Cast +id = Rpb6 +key = Cast +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REJ2 +field = DataB +id = Rej2 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RPB4 +field = DataD +id = Rpb4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_RPB5 +field = DataE +id = Rpb5 +key = Data +repeat = 4 +type = 0 + +[Arst] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_REP1 +field = DataA +id = Rep1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_REP2 +field = DataB +id = Rep2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_REP3 +field = DataC +id = Rep3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_REP4 +field = DataD +id = Rep4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_REP5 +field = DataE +id = Rep5 +key = Data +repeat = 4 +type = 2 + +[Artn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_RTN1 +field = DataA +id = Rtn1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_RTN2 +field = DataB +id = Rtn2 +key = Data +repeat = 4 +type = 0 + +[Asal] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SAL1 +field = DataA +id = Sal1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SAL2 +field = DataB +id = Sal2 +key = Data +repeat = 4 +type = 0 + +[Asds] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DDA1 +field = DataA +id = Dda1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DDA2 +field = DataB +id = Dda2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DDA3 +field = DataC +id = Dda3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DDA4 +field = DataD +id = Dda4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_SDS5 +field = DataE +id = Sds1 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_SDS6 +field = DataF +id = Sds6 +key = Data +repeat = 4 +type = 0 + +[Ashm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SHM1 +field = DataA +id = Shm1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SHM2 +field = DataB +id = Shm2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SHM3 +field = DataC +id = Shm3 +key = Data +repeat = 4 +type = 2 + +[Asla] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SLA1 +field = DataA +id = sla1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SLA2 +field = DataB +id = sla2 +key = Data +repeat = 4 +type = 0 + +[Aslo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SLO1 +field = DataA +id = Slo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SLO2 +field = DataB +id = Slo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SLO3 +field = DataC +id = Slo3 +key = Data +repeat = 4 +type = 0 + +[Asod] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SOD1 +field = DataA +id = Sod1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SOD2 +field = DataB +id = Sod2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Aspa] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SPA1 +field = DataA +id = Spa1 +key = Data +repeat = 4 +type = 0 + +[Aspb] +[.dataa] +concat = true +data = 1 +displayname = WESTRING_AEVAL_SPB1 +field = DataA +id = spb1 +key = Data +repeat = 4 +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SPB2 +field = DataB +id = spb2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SPB3 +field = DataC +id = spb3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_SPB4 +field = DataD +id = spb4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_SPB5 +field = DataE +id = spb5 +key = Data +repeat = 4 +splite = true +type = 3 + +[Aspd] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SOD1 +field = DataA +id = Sod1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SOD2 +field = DataB +id = Sod2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Aspl] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SPL1 +field = DataA +id = spl1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SPL2 +field = DataB +id = spl2 +key = Data +repeat = 4 +type = 0 + +[Aspo] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SPO1 +field = DataA +id = Spo1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SPO2 +field = DataB +id = Spo2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SPO3 +field = DataC +id = Spo3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_SPO4 +field = DataD +id = Spo4 +key = Data +repeat = 4 +type = 0 + +[Aspx] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Assk] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SSK1 +field = DataA +id = Ssk1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SSK2 +field = DataB +id = Ssk2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_SSK3 +field = DataC +id = Ssk3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_SSK4 +field = DataD +id = Ssk4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_SSK5 +field = DataE +id = Ssk5 +key = Data +repeat = 4 +type = 0 + +[Assp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SOD1 +field = DataA +id = Sod1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SOD2 +field = DataB +id = Sod2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Asta] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_STA1 +field = DataA +id = Sta1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_STA2 +field = DataB +id = Sta2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_STA3 +field = DataC +id = Sta3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_STA4 +field = DataD +id = Sta4 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_STAU +field = UnitID +id = Stau +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Aste] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UDP1 +field = DataA +id = Udp1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UDP2 +field = DataB +id = Udp2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_UDP3 +field = DataC +id = Udp3 +key = Data +repeat = 4 +type = 0 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_UDP4 +field = DataD +id = Udp4 +key = Data +repeat = 4 +type = 0 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UDP5 +field = DataE +id = Udp5 +key = Data +repeat = 4 +type = 0 + +[Astn] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_EME1 +field = DataA +id = Eme1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_EME2 +field = DataB +id = Eme2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_EME3 +field = DataC +id = Eme3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_EME4 +field = DataD +id = Eme4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_AVE5 +field = DataE +id = ave5 +key = Data +repeat = 4 +type = 2 +[.unitid] +displayname = WESTRING_AEVAL_EMEU +field = UnitID +id = Emeu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Atau] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_TAU1 +field = DataA +id = Tau1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_TAU2 +field = DataB +id = Tau2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_TAU3 +field = DataC +id = Tau3 +key = Data +repeat = 4 +type = 0 + +[Atdg] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_TDG1 +field = DataA +id = Tdg1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_TDG2 +field = DataB +id = Tdg2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_TDG3 +field = DataC +id = Tdg3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_TDG4 +field = DataD +id = Tdg4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_TDG5 +field = DataE +id = Tdg5 +key = Data +repeat = 4 +type = 2 + +[Atru] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DET1 +field = DataA +id = Det1 +key = Data +repeat = 4 +type = 0 + +[Atsp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_TSP1 +field = DataA +id = Tsp1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_TSP2 +field = DataB +id = Tsp2 +key = Data +repeat = 4 +type = 2 + +[Auco] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_DDA1 +field = DataA +id = Dda1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_DDA2 +field = DataB +id = Dda2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_DDA3 +field = DataC +id = Dda3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_DDA4 +field = DataD +id = Dda4 +key = Data +repeat = 4 +type = 2 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UCO5 +field = DataE +id = Uco5 +key = Data +repeat = 4 +type = 2 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_UCO6 +field = DataF +id = Uco6 +key = Data +repeat = 4 +type = 2 + +[Auhf] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_UHF1 +field = DataA +id = Uhf1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_UHF2 +field = DataB +id = Uhf2 +key = Data +repeat = 4 +type = 2 + +[Auns] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_SAL1 +field = DataA +id = Sal1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_SAL2 +field = DataB +id = Sal2 +key = Data +repeat = 4 +type = 0 + +[Aven] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_POI1 +field = DataA +id = Poi1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_POI2 +field = DataB +id = Poi2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_POI3 +field = DataC +id = Poi3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_POI4 +field = DataD +id = Poi4 +key = Data +repeat = 4 +type = 0 + +[Avng] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_RAI1 +field = DataA +id = Rai1 +key = Data +repeat = 4 +type = 0 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_RAI2 +field = DataB +id = Rai2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_RAI3 +field = DataC +id = Rai3 +key = Data +repeat = 4 +splite = true +type = 3 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_RAI4 +field = DataD +id = Rai4 +key = Data +repeat = 4 +splite = true +type = 3 +[.datae] +data = 5 +displayname = WESTRING_AEVAL_UCB5 +field = DataE +id = Ucb5 +key = Data +repeat = 4 +type = 0 +[.dataf] +data = 6 +displayname = WESTRING_AEVAL_UCB6 +field = DataF +id = Ucb6 +key = Data +repeat = 4 +type = 0 +[.unitid] +displayname = WESTRING_AEVAL_RAIU +field = UnitID +id = Raiu +key = UnitID +repeat = 4 +splite = true +type = 3 + +[Awar] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_WAR1 +field = DataA +id = War1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_WAR2 +field = DataB +id = War2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_WAR3 +field = DataC +id = War3 +key = Data +repeat = 4 +type = 2 +[.datad] +data = 4 +displayname = WESTRING_AEVAL_WAR4 +field = DataD +id = War4 +key = Data +repeat = 4 +type = 2 + +[Aweb] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_ENS1 +field = DataA +id = Ens1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_ENS2 +field = DataB +id = Ens2 +key = Data +repeat = 4 +type = 2 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_ENS3 +field = DataC +id = Ens3 +key = Data +repeat = 4 +type = 2 + +[Awha] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_WHA1 +field = DataA +id = Wha1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_WHA2 +field = DataB +id = Wha2 +key = Data +repeat = 4 +type = 0 +[.datac] +data = 3 +displayname = WESTRING_AEVAL_WHA3 +field = DataC +id = Wha3 +key = Data +repeat = 4 +type = 2 + +[Awrp] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_WRP1 +field = DataA +id = Wrp1 +key = Data +repeat = 4 +type = 2 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_WRP2 +field = DataB +id = Wrp2 +key = Data +repeat = 4 +type = 2 + +[FontHeights] +[.chateditbar] +displayname = WESTRING_MISCVAL_CEDB +field = ChatEditBar +id = cedb +key = chateditbar +profile = true +type = 2 +[.commandbuttonnumber] +displayname = WESTRING_MISCVAL_CBNB +field = CommandButtonNumber +id = cbnb +key = commandbuttonnumber +profile = true +type = 2 +[.inventory] +displayname = WESTRING_MISCVAL_INVY +field = Inventory +id = invy +key = inventory +profile = true +type = 2 +[.leaderboard] +displayname = WESTRING_MISCVAL_LDBD +field = LeaderBoard +id = ldbd +key = leaderboard +profile = true +type = 2 +[.portraitstats] +displayname = WESTRING_MISCVAL_PTST +field = PortraitStats +id = ptst +key = portraitstats +profile = true +type = 2 +[.scorescreenlarge] +displayname = WESTRING_MISCVAL_SSNL +field = ScoreScreenLarge +id = ssnl +key = scorescreenlarge +profile = true +type = 2 +[.scorescreennormal] +displayname = WESTRING_MISCVAL_SSNN +field = ScoreScreenNormal +id = ssnn +key = scorescreennormal +profile = true +type = 2 +[.scorescreenteam] +displayname = WESTRING_MISCVAL_SSNT +field = ScoreScreenTeam +id = ssnt +key = scorescreenteam +profile = true +type = 2 +[.tooltipcost] +displayname = WESTRING_MISCVAL_TTCS +field = ToolTipCost +id = ttcs +key = tooltipcost +profile = true +type = 2 +[.tooltipdesc] +displayname = WESTRING_MISCVAL_TTDS +field = ToolTipDesc +id = ttds +key = tooltipdesc +profile = true +type = 2 +[.tooltipname] +displayname = WESTRING_MISCVAL_TTNA +field = ToolTipName +id = ttna +key = tooltipname +profile = true +type = 2 +[.unittipdesc] +displayname = WESTRING_MISCVAL_UTDS +field = UnitTipDesc +id = utds +key = unittipdesc +profile = true +type = 2 +[.unittipplayername] +displayname = WESTRING_MISCVAL_UTPN +field = UnitTipPlayerName +id = utpn +key = unittipplayername +profile = true +type = 2 +[.worldframechatmessage] +displayname = WESTRING_MISCVAL_WFCM +field = WorldFrameChatMessage +id = wfcm +key = worldframechatmessage +profile = true +type = 2 +[.worldframemessage] +displayname = WESTRING_MISCVAL_WFMG +field = WorldFrameMessage +id = wfmg +key = worldframemessage +profile = true +type = 2 +[.worldframetopmessage] +displayname = WESTRING_MISCVAL_WFTM +field = WorldFrameTopMessage +id = wftm +key = worldframetopmessage +profile = true +type = 2 +[.worldframeunitmessage] +displayname = WESTRING_MISCVAL_WFUM +field = WorldFrameUnitMessage +id = wfum +key = worldframeunitmessage +profile = true +type = 2 + +[HERO] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_HERO +field = DependencyOr +id = hero +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQNH +field = Name +id = eqnh +key = name +profile = true +type = 3 + +[InfoPanel] +[.attackaverage] +displayname = WESTRING_MISCVAL_ATKN +field = AttackAverage +id = atkn +key = attackaverage +profile = true +type = 2 +[.attackfast] +displayname = WESTRING_MISCVAL_ATKF +field = AttackFast +id = atkf +key = attackfast +profile = true +type = 2 +[.attackslow] +displayname = WESTRING_MISCVAL_ATKS +field = AttackSlow +id = atks +key = attackslow +profile = true +type = 2 +[.attackveryslow] +displayname = WESTRING_MISCVAL_AKVS +field = AttackVerySlow +id = akvs +key = attackveryslow +profile = true +type = 2 +[.meleerangemax] +displayname = WESTRING_MISCVAL_MRGX +field = MeleeRangeMax +id = mrgx +key = meleerangemax +profile = true +type = 2 +[.speedaverage] +displayname = WESTRING_MISCVAL_SPDN +field = SpeedAverage +id = spdn +key = speedaverage +profile = true +type = 2 +[.speedfast] +displayname = WESTRING_MISCVAL_SPDF +field = SpeedFast +id = spdf +key = speedfast +profile = true +type = 2 +[.speedslow] +displayname = WESTRING_MISCVAL_SPDS +field = SpeedSlow +id = spds +key = speedslow +profile = true +type = 2 +[.speedveryslow] +displayname = WESTRING_MISCVAL_SPVS +field = SpeedVerySlow +id = spvs +key = speedveryslow +profile = true +type = 2 + +[Misc] +[.abilsaleaggrorange] +displayname = WESTRING_MISCVAL_ASAR +field = AbilSaleAggroRange +id = asar +key = abilsaleaggrorange +profile = true +type = 2 +[.agiattackspeedbonus] +displayname = WESTRING_MISCVAL_AASB +field = AgiAttackSpeedBonus +id = aasb +key = agiattackspeedbonus +profile = true +type = 2 +[.agidefensebase] +displayname = WESTRING_MISCVAL_ADBA +field = AgiDefenseBase +id = adba +key = agidefensebase +profile = true +type = 2 +[.agidefensebonus] +displayname = WESTRING_MISCVAL_ADEB +field = AgiDefenseBonus +id = adeb +key = agidefensebonus +profile = true +type = 2 +[.agimovebonus] +displayname = WESTRING_MISCVAL_AMVB +field = AgiMoveBonus +id = amvb +key = agimovebonus +profile = true +type = 2 +[.allowmultibounce] +displayname = WESTRING_MISCVAL_AMBO +field = AllowMultiBounce +id = ambo +key = allowmultibounce +profile = true +type = 0 +[.amuletofrecallcluster] +displayname = WESTRING_MISCVAL_ARCL +field = AmuletOfRecallCluster +id = arcl +key = amuletofrecallcluster +profile = true +type = 0 +[.animatedunitsbestowauras] +displayname = WESTRING_MISCVAL_AUBA +field = AnimatedUnitsBestowAuras +id = auba +key = animatedunitsbestowauras +profile = true +type = 0 +[.attacknotifydelay] +displayname = WESTRING_MISCVAL_ANDE +field = AttackNotifyDelay +id = ande +key = attacknotifydelay +profile = true +type = 2 +[.attacknotifyrange] +displayname = WESTRING_MISCVAL_ANRA +field = AttackNotifyRange +id = anra +key = attacknotifyrange +profile = true +type = 2 +[.awakenbasefactor] +displayname = WESTRING_MISCVAL_AWBF +field = AwakenBaseFactor +id = awbf +key = awakenbasefactor +profile = true +type = 2 +[.awakenbaselumberfactor] +displayname = WESTRING_MISCVAL_AWBL +field = AwakenBaseLumberFactor +id = awbl +key = awakenbaselumberfactor +profile = true +type = 2 +[.awakenlevelfactor] +displayname = WESTRING_MISCVAL_AWLF +field = AwakenLevelFactor +id = awlf +key = awakenlevelfactor +profile = true +type = 2 +[.awakenlumberlevelfactor] +displayname = WESTRING_MISCVAL_AWLL +field = AwakenLumberLevelFactor +id = awll +key = awakenlumberlevelfactor +profile = true +type = 2 +[.awakenmaxfactor] +displayname = WESTRING_MISCVAL_AWMF +field = AwakenMaxFactor +id = awmf +key = awakenmaxfactor +profile = true +type = 2 +[.bonedecaytime] +displayname = WESTRING_MISCVAL_BDET +field = BoneDecayTime +id = bdet +key = bonedecaytime +profile = true +type = 2 +[.bountytextcolor] +concat = true +displayname = WESTRING_MISCVAL_BOTC +field = BountyTextColor +id = botc +key = bountytextcolor +profile = true +type = 3 +[.bountytextfadestart] +displayname = WESTRING_MISCVAL_BOTF +field = BountyTextFadeStart +id = botf +key = bountytextfadestart +profile = true +type = 2 +[.bountytextheight] +displayname = WESTRING_MISCVAL_BOTH +field = BountyTextHeight +id = both +key = bountytextheight +profile = true +type = 2 +[.bountytextlifetime] +displayname = WESTRING_MISCVAL_BOTL +field = BountyTextLifetime +id = botl +key = bountytextlifetime +profile = true +type = 2 +[.bountytextvelocity] +concat = true +displayname = WESTRING_MISCVAL_BOTV +field = BountyTextVelocity +id = botv +key = bountytextvelocity +profile = true +type = 3 +[.buildingangle] +displayname = WESTRING_MISCVAL_BANG +field = BuildingAngle +id = bang +key = buildingangle +profile = true +type = 2 +[.buildingkillsgiveexp] +displayname = WESTRING_MISCVAL_BGXP +field = BuildingKillsGiveExp +id = bgxp +key = buildingkillsgiveexp +profile = true +type = 0 +[.buildingplacementnotifyradius] +displayname = WESTRING_MISCVAL_BCNR +field = BuildingPlacementNotifyRadius +id = bcnr +key = buildingplacementnotifyradius +profile = true +type = 2 +[.buildingunblightradius] +displayname = WESTRING_MISCVAL_BUBR +field = BuildingUnblightRadius +id = bubr +key = buildingunblightradius +profile = true +type = 2 +[.bulletdeathtime] +displayname = WESTRING_MISCVAL_BUDT +field = BulletDeathTime +id = budt +key = bulletdeathtime +profile = true +type = 2 +[.burrowedunitsbestowauras] +displayname = WESTRING_MISCVAL_BUBA +field = BurrowedUnitsBestowAuras +id = buba +key = burrowedunitsbestowauras +profile = true +type = 0 +[.callforhelp] +displayname = WESTRING_MISCVAL_CFHR +field = CallForHelp +id = cfhr +key = callforhelp +profile = true +type = 2 +[.canceltime] +displayname = WESTRING_MISCVAL_CADT +field = CancelTime +id = cadt +key = canceltime +profile = true +type = 2 +[.candeactivateavatar] +displayname = WESTRING_MISCVAL_CDAV +field = CanDeactivateAvatar +id = cdav +key = candeactivateavatar +profile = true +type = 0 +[.candeactivateavengerform] +displayname = WESTRING_MISCVAL_CDAF +field = CanDeactivateAvengerForm +id = cdaf +key = candeactivateavengerform +profile = true +type = 0 +[.candeactivatebarkskin] +displayname = WESTRING_MISCVAL_CDBS +field = CanDeactivateBarkskin +id = cdbs +key = candeactivatebarkskin +profile = true +type = 0 +[.candeactivatebearform] +displayname = WESTRING_MISCVAL_CDBF +field = CanDeactivateBearForm +id = cdbf +key = candeactivatebearform +profile = true +type = 0 +[.candeactivatebladestorm] +displayname = WESTRING_MISCVAL_CDBM +field = CanDeactivateBladestorm +id = cdbm +key = candeactivatebladestorm +profile = true +type = 0 +[.candeactivateburrow] +displayname = WESTRING_MISCVAL_CDBU +field = CanDeactivateBurrow +id = cdbu +key = candeactivateburrow +profile = true +type = 0 +[.candeactivatecalltoarms] +displayname = WESTRING_MISCVAL_CDCA +field = CanDeactivateCallToArms +id = cdca +key = candeactivatecalltoarms +profile = true +type = 0 +[.candeactivatechemicalrage] +displayname = WESTRING_MISCVAL_CDCR +field = CanDeactivateChemicalRage +id = cdcr +key = candeactivatechemicalrage +profile = true +type = 0 +[.candeactivatecorporealform] +displayname = WESTRING_MISCVAL_CDCF +field = CanDeactivateCorporealForm +id = cdcf +key = candeactivatecorporealform +profile = true +type = 0 +[.candeactivatedefend] +displayname = WESTRING_MISCVAL_CDDE +field = CanDeactivateDefend +id = cdde +key = candeactivatedefend +profile = true +type = 0 +[.candeactivatedivineshield] +displayname = WESTRING_MISCVAL_CDDS +field = CanDeactivateDivineShield +id = cdds +key = candeactivatedivineshield +profile = true +type = 0 +[.candeactivateimmolation] +displayname = WESTRING_MISCVAL_CDIM +field = CanDeactivateImmolation +id = cdim +key = candeactivateimmolation +profile = true +type = 0 +[.candeactivatemanaflare] +displayname = WESTRING_MISCVAL_CDMF +field = CanDeactivateManaFlare +id = cdmf +key = candeactivatemanaflare +profile = true +type = 0 +[.candeactivatemanashield] +displayname = WESTRING_MISCVAL_CDMS +field = CanDeactivateManaShield +id = cdms +key = candeactivatemanashield +profile = true +type = 0 +[.candeactivatemetamorphosis] +displayname = WESTRING_MISCVAL_CDME +field = CanDeactivateMetamorphosis +id = cdme +key = candeactivatemetamorphosis +profile = true +type = 0 +[.candeactivateravenform] +displayname = WESTRING_MISCVAL_CDRF +field = CanDeactivateRavenForm +id = cdrf +key = candeactivateravenform +profile = true +type = 0 +[.candeactivaterobogoblin] +displayname = WESTRING_MISCVAL_CDRG +field = CanDeactivateRoboGoblin +id = cdrg +key = candeactivaterobogoblin +profile = true +type = 0 +[.candeactivatestoneform] +displayname = WESTRING_MISCVAL_CDSF +field = CanDeactivateStoneForm +id = cdsf +key = candeactivatestoneform +profile = true +type = 0 +[.candeactivatesubmerge] +displayname = WESTRING_MISCVAL_CDSU +field = CanDeactivateSubmerge +id = cdsu +key = candeactivatesubmerge +profile = true +type = 0 +[.candeactivatewindwalk] +displayname = WESTRING_MISCVAL_CDWW +field = CanDeactivateWindWalk +id = cdww +key = candeactivatewindwalk +profile = true +type = 0 +[.chancetomiss] +displayname = WESTRING_MISCVAL_CHTM +field = ChanceToMiss +id = chtm +key = chancetomiss +profile = true +type = 2 +[.constructiondamagerefundpenalty] +displayname = WESTRING_MISCVAL_CDRP +field = ConstructionDamageRefundPenalty +id = cdrp +key = constructiondamagerefundpenalty +profile = true +type = 0 +[.constructionlifedrainrate] +displayname = WESTRING_MISCVAL_CLDR +field = ConstructionLifeDrainRate +id = cldr +key = constructionlifedrainrate +profile = true +type = 2 +[.constructionrefundrate] +displayname = WESTRING_MISCVAL_RRCO +field = ConstructionRefundRate +id = rrco +key = constructionrefundrate +profile = true +type = 2 +[.creepcallforhelp] +displayname = WESTRING_MISCVAL_CFHC +field = CreepCallForHelp +id = cfhc +key = creepcallforhelp +profile = true +type = 2 +[.creepcamppathingcelldistance] +displayname = WESTRING_MISCVAL_CCCR +field = CreepCampPathingCellDistance +id = cccr +key = creepcamppathingcelldistance +profile = true +type = 0 +[.criticalstriketextcolor] +concat = true +displayname = WESTRING_MISCVAL_CSTC +field = CriticalStrikeTextColor +id = cstc +key = criticalstriketextcolor +profile = true +type = 3 +[.criticalstriketextfadestart] +displayname = WESTRING_MISCVAL_CSTF +field = CriticalStrikeTextFadeStart +id = cstf +key = criticalstriketextfadestart +profile = true +type = 2 +[.criticalstriketextheight] +displayname = WESTRING_MISCVAL_CSTH +field = CriticalStrikeTextHeight +id = csth +key = criticalstriketextheight +profile = true +type = 2 +[.criticalstriketextlifetime] +displayname = WESTRING_MISCVAL_CSTL +field = CriticalStrikeTextLifetime +id = cstl +key = criticalstriketextlifetime +profile = true +type = 2 +[.criticalstriketextvelocity] +concat = true +displayname = WESTRING_MISCVAL_CSTV +field = CriticalStrikeTextVelocity +id = cstv +key = criticalstriketextvelocity +profile = true +type = 3 +[.cyclonestasis] +displayname = WESTRING_MISCVAL_CYST +field = CycloneStasis +id = cyst +key = cyclonestasis +profile = true +type = 0 +[.damagebonuschaos] +concat = true +displayname = WESTRING_MISCVAL_CTCH +field = DamageBonusChaos +id = ctch +key = damagebonuschaos +profile = true +type = 3 +[.damagebonushero] +concat = true +displayname = WESTRING_MISCVAL_CTHE +field = DamageBonusHero +id = cthe +key = damagebonushero +profile = true +type = 3 +[.damagebonusmagic] +concat = true +displayname = WESTRING_MISCVAL_CTMA +field = DamageBonusMagic +id = ctma +key = damagebonusmagic +profile = true +type = 3 +[.damagebonusnormal] +concat = true +displayname = WESTRING_MISCVAL_CTNO +field = DamageBonusNormal +id = ctno +key = damagebonusnormal +profile = true +type = 3 +[.damagebonuspierce] +concat = true +displayname = WESTRING_MISCVAL_CTPI +field = DamageBonusPierce +id = ctpi +key = damagebonuspierce +profile = true +type = 3 +[.damagebonussiege] +concat = true +displayname = WESTRING_MISCVAL_CTSI +field = DamageBonusSiege +id = ctsi +key = damagebonussiege +profile = true +type = 3 +[.damagebonusspells] +concat = true +displayname = WESTRING_MISCVAL_CTSP +field = DamageBonusSpells +id = ctsp +key = damagebonusspells +profile = true +type = 3 +[.darksummoningcluster] +displayname = WESTRING_MISCVAL_DSCL +field = DarkSummoningCluster +id = dscl +key = darksummoningcluster +profile = true +type = 0 +[.dawn] +displayname = WESTRING_MISCVAL_DAWN +field = Dawn +id = dawn +key = dawn +profile = true +type = 2 +[.dayhours] +displayname = WESTRING_MISCVAL_DAYH +field = DayHours +id = dayh +key = dayhours +profile = true +type = 2 +[.daylength] +displayname = WESTRING_MISCVAL_DAYL +field = DayLength +id = dayl +key = daylength +profile = true +type = 2 +[.decaytime] +displayname = WESTRING_MISCVAL_DECT +field = DecayTime +id = dect +key = decaytime +profile = true +type = 2 +[.defenddeflection] +displayname = WESTRING_MISCVAL_DEDE +field = DefendDeflection +id = dede +key = defenddeflection +profile = true +type = 0 +[.defensearmor] +displayname = WESTRING_MISCVAL_DEFA +field = DefenseArmor +id = defa +key = defensearmor +profile = true +type = 2 +[.depcheckalias] +displayname = WESTRING_MISCVAL_DCAL +field = DepCheckAlias +id = dcal +key = depcheckalias +profile = true +type = 0 +[.displaybuildingstatus] +displayname = WESTRING_MISCVAL_DBST +field = DisplayBuildingStatus +id = dbst +key = displaybuildingstatus +profile = true +type = 0 +[.displayenemyinventory] +displayname = WESTRING_MISCVAL_DEIN +field = DisplayEnemyInventory +id = dein +key = displayenemyinventory +profile = true +type = 0 +[.dissipatetime] +displayname = WESTRING_MISCVAL_DIST +field = DissipateTime +id = dist +key = dissipatetime +profile = true +type = 2 +[.draingivesbonuslife] +displayname = WESTRING_MISCVAL_DGBL +field = DrainGivesBonusLife +id = dgbl +key = draingivesbonuslife +profile = true +type = 0 +[.draingivesbonusmana] +displayname = WESTRING_MISCVAL_DGBM +field = DrainGivesBonusMana +id = dgbm +key = draingivesbonusmana +profile = true +type = 0 +[.draintransferslife] +displayname = WESTRING_MISCVAL_DTLI +field = DrainTransfersLife +id = dtli +key = draintransferslife +profile = true +type = 0 +[.draintransfersmana] +displayname = WESTRING_MISCVAL_DTMA +field = DrainTransfersMana +id = dtma +key = draintransfersmana +profile = true +type = 0 +[.drainusesetheralbonus] +displayname = WESTRING_MISCVAL_DUEB +field = DrainUsesEtheralBonus +id = dueb +key = drainusesetheralbonus +profile = true +type = 0 +[.dropitemrange] +displayname = WESTRING_MISCVAL_DROP +field = DropItemRange +id = drop +key = dropitemrange +profile = true +type = 2 +[.dusk] +displayname = WESTRING_MISCVAL_DUSK +field = Dusk +id = dusk +key = dusk +profile = true +type = 2 +[.dyingrevealradius] +displayname = WESTRING_MISCVAL_DFRR +field = DyingRevealRadius +id = dfrr +key = dyingrevealradius +profile = true +type = 2 +[.effectdeathtime] +displayname = WESTRING_MISCVAL_EFDT +field = EffectDeathTime +id = efdt +key = effectdeathtime +profile = true +type = 2 +[.ensnareismagic] +displayname = WESTRING_MISCVAL_EIMA +field = EnsnareIsMagic +id = eima +key = ensnareismagic +profile = true +type = 0 +[.etherealdamagebonus] +concat = true +displayname = WESTRING_MISCVAL_EDBO +field = EtherealDamageBonus +id = edbo +key = etherealdamagebonus +profile = true +type = 3 +[.etherealdamagebonusally] +displayname = WESTRING_MISCVAL_EDBA +field = EtherealDamageBonusAlly +id = edba +key = etherealdamagebonusally +profile = true +type = 0 +[.etherealhealbonus] +displayname = WESTRING_MISCVAL_EHBO +field = EtherealHealBonus +id = ehbo +key = etherealhealbonus +profile = true +type = 2 +[.fadebuffmaxalpha] +displayname = WESTRING_MISCVAL_FBXA +field = FadeBuffMaxAlpha +id = fbxa +key = fadebuffmaxalpha +profile = true +type = 0 +[.fadebuffminalpha] +displayname = WESTRING_MISCVAL_FBNA +field = FadeBuffMinAlpha +id = fbna +key = fadebuffminalpha +profile = true +type = 0 +[.fadebuffminduration] +displayname = WESTRING_MISCVAL_FBDR +field = FadeBuffMinDuration +id = fbdr +key = fadebuffminduration +profile = true +type = 2 +[.flyingheroesbestowauras] +displayname = WESTRING_MISCVAL_FHBA +field = FlyingHeroesBestowAuras +id = fhba +key = flyingheroesbestowauras +profile = true +type = 0 +[.fogflashtime] +displayname = WESTRING_MISCVAL_FFDT +field = FogFlashTime +id = ffdt +key = fogflashtime +profile = true +type = 2 +[.foggedattackrevealradius] +displayname = WESTRING_MISCVAL_FARR +field = FoggedAttackRevealRadius +id = farr +key = foggedattackrevealradius +profile = true +type = 2 +[.followitemrange] +displayname = WESTRING_MISCVAL_FOLI +field = FollowItemRange +id = foli +key = followitemrange +profile = true +type = 2 +[.followrange] +displayname = WESTRING_MISCVAL_FOLR +field = FollowRange +id = folr +key = followrange +profile = true +type = 2 +[.foodceiling] +displayname = WESTRING_MISCVAL_FCAP +field = FoodCeiling +id = fcap +key = foodceiling +profile = true +type = 0 +[.frostattackspeeddecrease] +displayname = WESTRING_MISCVAL_FROA +field = FrostAttackSpeedDecrease +id = froa +key = frostattackspeeddecrease +profile = true +type = 2 +[.frostmovespeeddecrease] +displayname = WESTRING_MISCVAL_FROM +field = FrostMoveSpeedDecrease +id = from +key = frostmovespeeddecrease +profile = true +type = 2 +[.giveitemrange] +displayname = WESTRING_MISCVAL_GIVE +field = GiveItemRange +id = give +key = giveitemrange +profile = true +type = 2 +[.globalexperience] +displayname = WESTRING_MISCVAL_GEXP +field = GlobalExperience +id = gexp +key = globalexperience +profile = true +type = 0 +[.goldminemaxgold] +displayname = WESTRING_MISCVAL_GMMG +field = GoldMineMaxGold +id = gmmg +key = goldminemaxgold +profile = true +type = 0 +[.goldmineownduration] +displayname = WESTRING_MISCVAL_GMOD +field = GoldMineOwnDuration +id = gmod +key = goldmineownduration +profile = true +type = 2 +[.goldtextcolor] +concat = true +displayname = WESTRING_MISCVAL_GDTC +field = GoldTextColor +id = gdtc +key = goldtextcolor +profile = true +type = 3 +[.goldtextfadestart] +displayname = WESTRING_MISCVAL_GDTF +field = GoldTextFadeStart +id = gdtf +key = goldtextfadestart +profile = true +type = 2 +[.goldtextheight] +displayname = WESTRING_MISCVAL_GDTH +field = GoldTextHeight +id = gdth +key = goldtextheight +profile = true +type = 2 +[.goldtextlifetime] +displayname = WESTRING_MISCVAL_GDTL +field = GoldTextLifetime +id = gdtl +key = goldtextlifetime +profile = true +type = 2 +[.goldtextvelocity] +concat = true +displayname = WESTRING_MISCVAL_GDTV +field = GoldTextVelocity +id = gdtv +key = goldtextvelocity +profile = true +type = 3 +[.grantheroxp] +concat = true +displayname = WESTRING_MISCVAL_GHXP +field = GrantHeroXP +id = ghxp +key = grantheroxp +profile = true +type = 3 +[.grantheroxpformulaa] +displayname = WESTRING_MISCVAL_GHFA +field = GrantHeroXPFormulaA +id = ghfa +key = grantheroxpformulaa +profile = true +type = 2 +[.grantheroxpformulab] +displayname = WESTRING_MISCVAL_GHFB +field = GrantHeroXPFormulaB +id = ghfb +key = grantheroxpformulab +profile = true +type = 2 +[.grantheroxpformulac] +displayname = WESTRING_MISCVAL_GHFC +field = GrantHeroXPFormulaC +id = ghfc +key = grantheroxpformulac +profile = true +type = 2 +[.grantnormalxp] +concat = true +displayname = WESTRING_MISCVAL_GNXP +field = GrantNormalXP +id = gnxp +key = grantnormalxp +profile = true +type = 3 +[.grantnormalxpformulaa] +displayname = WESTRING_MISCVAL_GNXA +field = GrantNormalXPFormulaA +id = gnxa +key = grantnormalxpformulaa +profile = true +type = 2 +[.grantnormalxpformulab] +displayname = WESTRING_MISCVAL_GNXB +field = GrantNormalXPFormulaB +id = gnxb +key = grantnormalxpformulab +profile = true +type = 2 +[.grantnormalxpformulac] +displayname = WESTRING_MISCVAL_GNXC +field = GrantNormalXPFormulaC +id = gnxc +key = grantnormalxpformulac +profile = true +type = 2 +[.guarddistance] +displayname = WESTRING_MISCVAL_GUAD +field = GuardDistance +id = guad +key = guarddistance +profile = true +type = 2 +[.guardreturntime] +displayname = WESTRING_MISCVAL_GUAT +field = GuardReturnTime +id = guat +key = guardreturntime +profile = true +type = 2 +[.heroabilitylevelskip] +displayname = WESTRING_MISCVAL_HALS +field = HeroAbilityLevelSkip +id = hals +key = heroabilitylevelskip +profile = true +type = 0 +[.heroawakenlifefactor] +displayname = WESTRING_MISCVAL_HALF +field = HeroAwakenLifeFactor +id = half +key = heroawakenlifefactor +profile = true +type = 2 +[.heroawakenmanafactor] +displayname = WESTRING_MISCVAL_HAMF +field = HeroAwakenManaFactor +id = hamf +key = heroawakenmanafactor +profile = true +type = 2 +[.heroawakenmanastart] +displayname = WESTRING_MISCVAL_HAMS +field = HeroAwakenManaStart +id = hams +key = heroawakenmanastart +profile = true +type = 0 +[.heroexprange] +displayname = WESTRING_MISCVAL_HEXR +field = HeroExpRange +id = hexr +key = heroexprange +profile = true +type = 2 +[.herofactorxp] +concat = true +displayname = WESTRING_MISCVAL_HFXP +field = HeroFactorXP +id = hfxp +key = herofactorxp +profile = true +type = 3 +[.heromaxawakencostgold] +displayname = WESTRING_MISCVAL_MHAC +field = HeroMaxAwakenCostGold +id = mhac +key = heromaxawakencostgold +profile = true +type = 0 +[.heromaxawakencostlumber] +displayname = WESTRING_MISCVAL_MHAL +field = HeroMaxAwakenCostLumber +id = mhal +key = heromaxawakencostlumber +profile = true +type = 0 +[.heromaxrevivecostgold] +displayname = WESTRING_MISCVAL_MHRC +field = HeroMaxReviveCostGold +id = mhrc +key = heromaxrevivecostgold +profile = true +type = 0 +[.heromaxrevivecostlumber] +displayname = WESTRING_MISCVAL_MHRL +field = HeroMaxReviveCostLumber +id = mhrl +key = heromaxrevivecostlumber +profile = true +type = 0 +[.heromaxrevivetime] +displayname = WESTRING_MISCVAL_MHRT +field = HeroMaxReviveTime +id = mhrt +key = heromaxrevivetime +profile = true +type = 2 +[.herorevivelifefactor] +displayname = WESTRING_MISCVAL_HRLF +field = HeroReviveLifeFactor +id = hrlf +key = herorevivelifefactor +profile = true +type = 2 +[.herorevivemanafactor] +displayname = WESTRING_MISCVAL_HRMF +field = HeroReviveManaFactor +id = hrmf +key = herorevivemanafactor +profile = true +type = 2 +[.herorevivemanastart] +displayname = WESTRING_MISCVAL_HRMS +field = HeroReviveManaStart +id = hrms +key = herorevivemanastart +profile = true +type = 0 +[.illusionsbestowauras] +displayname = WESTRING_MISCVAL_IBAU +field = IllusionsBestowAuras +id = ibau +key = illusionsbestowauras +profile = true +type = 0 +[.illusionscanrestorelife] +displayname = WESTRING_MISCVAL_ICRL +field = IllusionsCanRestoreLife +id = icrl +key = illusionscanrestorelife +profile = true +type = 0 +[.illusionscanrestoremana] +displayname = WESTRING_MISCVAL_ICRM +field = IllusionsCanRestoreMana +id = icrm +key = illusionscanrestoremana +profile = true +type = 0 +[.illusionsgetattackbonus] +displayname = WESTRING_MISCVAL_IGAB +field = IllusionsGetAttackBonus +id = igab +key = illusionsgetattackbonus +profile = true +type = 0 +[.illusionsgetattackspeedbonus] +displayname = WESTRING_MISCVAL_IASB +field = IllusionsGetAttackSpeedBonus +id = iasb +key = illusionsgetattackspeedbonus +profile = true +type = 0 +[.illusionsgetautocast] +displayname = WESTRING_MISCVAL_IGAU +field = IllusionsGetAutocast +id = igau +key = illusionsgetautocast +profile = true +type = 0 +[.illusionsgetdefensebonus] +displayname = WESTRING_MISCVAL_IGDB +field = IllusionsGetDefenseBonus +id = igdb +key = illusionsgetdefensebonus +profile = true +type = 0 +[.illusionsgetmovespeedbonus] +displayname = WESTRING_MISCVAL_IGMB +field = IllusionsGetMoveSpeedBonus +id = igmb +key = illusionsgetmovespeedbonus +profile = true +type = 0 +[.intmanabonus] +displayname = WESTRING_MISCVAL_IMAB +field = IntManaBonus +id = imab +key = intmanabonus +profile = true +type = 2 +[.intregenbonus] +displayname = WESTRING_MISCVAL_IMRB +field = IntRegenBonus +id = imrb +key = intregenbonus +profile = true +type = 2 +[.invisibleunitsbestowauras] +displayname = WESTRING_MISCVAL_INBA +field = InvisibleUnitsBestowAuras +id = inba +key = invisibleunitsbestowauras +profile = true +type = 0 +[.invisspeed] +displayname = WESTRING_MISCVAL_INVS +field = InvisSpeed +id = invs +key = invisspeed +profile = true +type = 2 +[.invulnsummondispeldamage] +displayname = WESTRING_MISCVAL_ISDD +field = InvulnSummonDispelDamage +id = isdd +key = invulnsummondispeldamage +profile = true +type = 0 +[.itemsaleaggrorange] +displayname = WESTRING_MISCVAL_ISAR +field = ItemSaleAggroRange +id = isar +key = itemsaleaggrorange +profile = true +type = 2 +[.itemshadowfile] +displayname = WESTRING_MISCVAL_ITSF +field = ItemShadowFile +id = itsf +key = itemshadowfile +profile = true +type = 3 +[.itemshadowoffset] +concat = true +displayname = WESTRING_MISCVAL_ITSO +field = ItemShadowOffset +id = itso +key = itemshadowoffset +profile = true +type = 3 +[.itemshadowsize] +concat = true +displayname = WESTRING_MISCVAL_ITSS +field = ItemShadowSize +id = itss +key = itemshadowsize +profile = true +type = 3 +[.lavaspawncolor] +concat = true +displayname = WESTRING_MISCVAL_CAOA +field = LavaSpawnColor +id = caoa +key = lavaspawncolor +profile = true +type = 3 +[.lowgoldamount] +displayname = WESTRING_MISCVAL_LOGA +field = LowGoldAmount +id = loga +key = lowgoldamount +profile = true +type = 0 +[.lumbertextcolor] +concat = true +displayname = WESTRING_MISCVAL_LMTC +field = LumberTextColor +id = lmtc +key = lumbertextcolor +profile = true +type = 3 +[.lumbertextfadestart] +displayname = WESTRING_MISCVAL_LMTF +field = LumberTextFadeStart +id = lmtf +key = lumbertextfadestart +profile = true +type = 2 +[.lumbertextheight] +displayname = WESTRING_MISCVAL_LMTH +field = LumberTextHeight +id = lmth +key = lumbertextheight +profile = true +type = 2 +[.lumbertextlifetime] +displayname = WESTRING_MISCVAL_LMTL +field = LumberTextLifetime +id = lmtl +key = lumbertextlifetime +profile = true +type = 2 +[.lumbertextvelocity] +concat = true +displayname = WESTRING_MISCVAL_LMTV +field = LumberTextVelocity +id = lmtv +key = lumbertextvelocity +profile = true +type = 3 +[.magicimmunesresistdamage] +displayname = WESTRING_MISCVAL_MIRD +field = MagicImmunesResistDamage +id = mird +key = magicimmunesresistdamage +profile = true +type = 0 +[.magicimmunesresistleech] +displayname = WESTRING_MISCVAL_MIRL +field = MagicImmunesResistLeech +id = mirl +key = magicimmunesresistleech +profile = true +type = 0 +[.magicimmunesresistthorns] +displayname = WESTRING_MISCVAL_MIRT +field = MagicImmunesResistThorns +id = mirt +key = magicimmunesresistthorns +profile = true +type = 0 +[.magicimmunesresistultimates] +displayname = WESTRING_MISCVAL_MIRU +field = MagicImmunesResistUltimates +id = miru +key = magicimmunesresistultimates +profile = true +type = 0 +[.manaburntextcolor] +concat = true +displayname = WESTRING_MISCVAL_MBTC +field = ManaBurnTextColor +id = mbtc +key = manaburntextcolor +profile = true +type = 3 +[.manaburntextfadestart] +displayname = WESTRING_MISCVAL_MBTF +field = ManaBurnTextFadeStart +id = mbtf +key = manaburntextfadestart +profile = true +type = 2 +[.manaburntextheight] +displayname = WESTRING_MISCVAL_MBTH +field = ManaBurnTextHeight +id = mbth +key = manaburntextheight +profile = true +type = 2 +[.manaburntextlifetime] +displayname = WESTRING_MISCVAL_MBTL +field = ManaBurnTextLifetime +id = mbtl +key = manaburntextlifetime +profile = true +type = 2 +[.manaburntextvelocity] +concat = true +displayname = WESTRING_MISCVAL_MBTV +field = ManaBurnTextVelocity +id = mbtv +key = manaburntextvelocity +profile = true +type = 3 +[.massteleportcluster] +displayname = WESTRING_MISCVAL_MTCL +field = MassTeleportCluster +id = mtcl +key = massteleportcluster +profile = true +type = 0 +[.maxbldgspeed] +displayname = WESTRING_MISCVAL_MXBS +field = MaxBldgSpeed +id = mxbs +key = maxbldgspeed +profile = true +type = 2 +[.maxcollisionradius] +displayname = WESTRING_MISCVAL_MCOR +field = MaxCollisionRadius +id = mcor +key = maxcollisionradius +profile = true +type = 2 +[.maxguarddistance] +displayname = WESTRING_MISCVAL_GUAM +field = MaxGuardDistance +id = guam +key = maxguarddistance +profile = true +type = 2 +[.maxherolevel] +displayname = WESTRING_MISCVAL_MHEL +field = MaxHeroLevel +id = mhel +key = maxherolevel +profile = true +type = 0 +[.maxlevelheroesdrainexp] +displayname = WESTRING_MISCVAL_MHDX +field = MaxLevelHeroesDrainExp +id = mhdx +key = maxlevelheroesdrainexp +profile = true +type = 0 +[.maxunitlevel] +displayname = WESTRING_MISCVAL_MULE +field = MaxUnitLevel +id = mule +key = maxunitlevel +profile = true +type = 0 +[.maxunitspeed] +displayname = WESTRING_MISCVAL_MXUS +field = MaxUnitSpeed +id = mxus +key = maxunitspeed +profile = true +type = 2 +[.minbldgspeed] +displayname = WESTRING_MISCVAL_MNBS +field = MinBldgSpeed +id = mnbs +key = minbldgspeed +profile = true +type = 2 +[.minunitspeed] +displayname = WESTRING_MISCVAL_MNUS +field = MinUnitSpeed +id = mnus +key = minunitspeed +profile = true +type = 2 +[.missdamagereduction] +displayname = WESTRING_MISCVAL_MDRE +field = MissDamageReduction +id = mdre +key = missdamagereduction +profile = true +type = 2 +[.misstextcolor] +concat = true +displayname = WESTRING_MISCVAL_MSTC +field = MissTextColor +id = mstc +key = misstextcolor +profile = true +type = 3 +[.misstextfadestart] +displayname = WESTRING_MISCVAL_MSTF +field = MissTextFadeStart +id = mstf +key = misstextfadestart +profile = true +type = 2 +[.misstextheight] +displayname = WESTRING_MISCVAL_MSTH +field = MissTextHeight +id = msth +key = misstextheight +profile = true +type = 2 +[.misstextlifetime] +displayname = WESTRING_MISCVAL_MSTL +field = MissTextLifetime +id = mstl +key = misstextlifetime +profile = true +type = 2 +[.misstextvelocity] +concat = true +displayname = WESTRING_MISCVAL_MSTV +field = MissTextVelocity +id = mstv +key = misstextvelocity +profile = true +type = 3 +[.morphalternatedisable] +displayname = WESTRING_MISCVAL_MADI +field = MorphAlternateDisable +id = madi +key = morphalternatedisable +profile = true +type = 0 +[.morphlandclosest] +displayname = WESTRING_MISCVAL_MLCL +field = MorphLandClosest +id = mlcl +key = morphlandclosest +profile = true +type = 0 +[.movespeedbonusesstack] +displayname = WESTRING_MISCVAL_MSBS +field = MoveSpeedBonusesStack +id = msbs +key = movespeedbonusesstack +profile = true +type = 0 +[.needheroxp] +concat = true +displayname = WESTRING_MISCVAL_MXPN +field = NeedHeroXP +id = mxpn +key = needheroxp +profile = true +type = 3 +[.needheroxpformulaa] +displayname = WESTRING_MISCVAL_XPN1 +field = NeedHeroXPFormulaA +id = xpn1 +key = needheroxpformulaa +profile = true +type = 2 +[.needheroxpformulab] +displayname = WESTRING_MISCVAL_XPN2 +field = NeedHeroXPFormulaB +id = xpn2 +key = needheroxpformulab +profile = true +type = 2 +[.needheroxpformulac] +displayname = WESTRING_MISCVAL_XPN3 +field = NeedHeroXPFormulaC +id = xpn3 +key = needheroxpformulac +profile = true +type = 2 +[.neutralusenotifyradius] +displayname = WESTRING_MISCVAL_NUNR +field = NeutralUseNotifyRadius +id = nunr +key = neutralusenotifyradius +profile = true +type = 2 +[.pawnitemrange] +displayname = WESTRING_MISCVAL_PAIR +field = PawnItemRange +id = pair +key = pawnitemrange +profile = true +type = 2 +[.pawnitemrate] +displayname = WESTRING_MISCVAL_PAIF +field = PawnItemRate +id = paif +key = pawnitemrate +profile = true +type = 2 +[.pickupitemrange] +displayname = WESTRING_MISCVAL_PICK +field = PickupItemRange +id = pick +key = pickupitemrange +profile = true +type = 2 +[.polymorphedunitsbestowauras] +displayname = WESTRING_MISCVAL_PUBA +field = PolymorphedUnitsBestowAuras +id = puba +key = polymorphedunitsbestowauras +profile = true +type = 0 +[.rallyzoffset] +displayname = WESTRING_MISCVAL_RZOF +field = RallyZOffset +id = rzof +key = rallyzoffset +profile = true +type = 1 +[.reactiondelay] +displayname = WESTRING_MISCVAL_READ +field = ReactionDelay +id = read +key = reactiondelay +profile = true +type = 2 +[.relativeupgradecost] +displayname = WESTRING_MISCVAL_RUCO +field = RelativeUpgradeCost +id = ruco +key = relativeupgradecost +profile = true +type = 0 +[.researchrefundrate] +displayname = WESTRING_MISCVAL_RRRE +field = ResearchRefundRate +id = rrre +key = researchrefundrate +profile = true +type = 2 +[.revivebasefactor] +displayname = WESTRING_MISCVAL_RBFG +field = ReviveBaseFactor +id = rbfg +key = revivebasefactor +profile = true +type = 2 +[.revivebaselumberfactor] +displayname = WESTRING_MISCVAL_RBFL +field = ReviveBaseLumberFactor +id = rbfl +key = revivebaselumberfactor +profile = true +type = 2 +[.revivelevelfactor] +displayname = WESTRING_MISCVAL_RLFG +field = ReviveLevelFactor +id = rlfg +key = revivelevelfactor +profile = true +type = 2 +[.revivelumberlevelfactor] +displayname = WESTRING_MISCVAL_RLFL +field = ReviveLumberLevelFactor +id = rlfl +key = revivelumberlevelfactor +profile = true +type = 2 +[.revivemaxfactor] +displayname = WESTRING_MISCVAL_RMAF +field = ReviveMaxFactor +id = rmaf +key = revivemaxfactor +profile = true +type = 2 +[.revivemaxtimefactor] +displayname = WESTRING_MISCVAL_RMTF +field = ReviveMaxTimeFactor +id = rmtf +key = revivemaxtimefactor +profile = true +type = 2 +[.reviverefundrate] +displayname = WESTRING_MISCVAL_RRHR +field = ReviveRefundRate +id = rrhr +key = reviverefundrate +profile = true +type = 2 +[.revivetimefactor] +displayname = WESTRING_MISCVAL_RBFT +field = ReviveTimeFactor +id = rbft +key = revivetimefactor +profile = true +type = 2 +[.rootangle] +displayname = WESTRING_MISCVAL_RANG +field = RootAngle +id = rang +key = rootangle +profile = true +type = 2 +[.scaledanimtime] +displayname = WESTRING_MISCVAL_SANT +field = ScaledAnimTime +id = sant +key = scaledanimtime +profile = true +type = 2 +[.shadowstriketextcolor] +concat = true +displayname = WESTRING_MISCVAL_SSTC +field = ShadowStrikeTextColor +id = sstc +key = shadowstriketextcolor +profile = true +type = 3 +[.shadowstriketextfadestart] +displayname = WESTRING_MISCVAL_SSTF +field = ShadowStrikeTextFadeStart +id = sstf +key = shadowstriketextfadestart +profile = true +type = 2 +[.shadowstriketextheight] +displayname = WESTRING_MISCVAL_SSTH +field = ShadowStrikeTextHeight +id = ssth +key = shadowstriketextheight +profile = true +type = 2 +[.shadowstriketextlifetime] +displayname = WESTRING_MISCVAL_SSTL +field = ShadowStrikeTextLifetime +id = sstl +key = shadowstriketextlifetime +profile = true +type = 2 +[.shadowstriketextvelocity] +concat = true +displayname = WESTRING_MISCVAL_SSTV +field = ShadowStrikeTextVelocity +id = sstv +key = shadowstriketextvelocity +profile = true +type = 3 +[.spellcastrangebuffer] +displayname = WESTRING_MISCVAL_SCRB +field = SpellCastRangeBuffer +id = scrb +key = spellcastrangebuffer +profile = true +type = 2 +[.strattackbonus] +displayname = WESTRING_MISCVAL_SATB +field = StrAttackBonus +id = satb +key = strattackbonus +profile = true +type = 2 +[.strhitpointbonus] +displayname = WESTRING_MISCVAL_SHPB +field = StrHitPointBonus +id = shpb +key = strhitpointbonus +profile = true +type = 2 +[.strregenbonus] +displayname = WESTRING_MISCVAL_SREB +field = StrRegenBonus +id = sreb +key = strregenbonus +profile = true +type = 2 +[.structuredecaytime] +displayname = WESTRING_MISCVAL_SDET +field = StructureDecayTime +id = sdet +key = structuredecaytime +profile = true +type = 2 +[.structurefollowrange] +displayname = WESTRING_MISCVAL_FOLS +field = StructureFollowRange +id = fols +key = structurefollowrange +profile = true +type = 2 +[.summonedkillfactor] +displayname = WESTRING_MISCVAL_SKIF +field = SummonedKillFactor +id = skif +key = summonedkillfactor +profile = true +type = 2 +[.townportalcluster] +displayname = WESTRING_MISCVAL_TPCL +field = TownPortalCluster +id = tpcl +key = townportalcluster +profile = true +type = 0 +[.tradinginclarge] +displayname = WESTRING_MISCVAL_TRAL +field = TradingIncLarge +id = tral +key = tradinginclarge +profile = true +type = 0 +[.tradingincsmall] +displayname = WESTRING_MISCVAL_TRAS +field = TradingIncSmall +id = tras +key = tradingincsmall +profile = true +type = 0 +[.trainrefundrate] +displayname = WESTRING_MISCVAL_RRTU +field = TrainRefundRate +id = rrtu +key = trainrefundrate +profile = true +type = 2 +[.unitsaleaggrorange] +displayname = WESTRING_MISCVAL_USAR +field = UnitSaleAggroRange +id = usar +key = unitsaleaggrorange +profile = true +type = 2 +[.upgradedamagerefundpenalty] +displayname = WESTRING_MISCVAL_UDRP +field = UpgradeDamageRefundPenalty +id = udrp +key = upgradedamagerefundpenalty +profile = true +type = 0 +[.upgraderefundrate] +displayname = WESTRING_MISCVAL_RRBU +field = UpgradeRefundRate +id = rrbu +key = upgraderefundrate +profile = true +type = 2 +[.upkeepgoldtax] +concat = true +displayname = WESTRING_MISCVAL_UPKG +field = UpkeepGoldTax +id = upkg +key = upkeepgoldtax +profile = true +type = 3 +[.upkeeplumbertax] +concat = true +displayname = WESTRING_MISCVAL_UPKW +field = UpkeepLumberTax +id = upkw +key = upkeeplumbertax +profile = true +type = 3 +[.upkeepusage] +concat = true +displayname = WESTRING_MISCVAL_UPKU +field = UpkeepUsage +id = upku +key = upkeepusage +profile = true +type = 3 +[.webismagic] +displayname = WESTRING_MISCVAL_WIMA +field = WebIsMagic +id = wima +key = webismagic +profile = true +type = 0 + +[PingColor] +[.pingadvisorcolor] +concat = true +displayname = WESTRING_MISCVAL_PVCR +field = PingAdvisorColor +id = pvcr +key = pingadvisorcolor +profile = true +type = 3 +[.pingattackcolor] +concat = true +displayname = WESTRING_MISCVAL_PACR +field = PingAttackColor +id = pacr +key = pingattackcolor +profile = true +type = 3 +[.pingcolor] +concat = true +displayname = WESTRING_MISCVAL_PICR +field = PingColor +id = picr +key = pingcolor +profile = true +type = 3 +[.pingwaypointcolor] +concat = true +displayname = WESTRING_MISCVAL_PPCR +field = PingWaypointColor +id = ppcr +key = pingwaypointcolor +profile = true +type = 3 + +[QuestIndicatorTimeout] +[.questindicatortimeout] +displayname = WESTRING_MISCVAL_QITO +field = QuestIndicatorTimeout +id = qito +key = questindicatortimeout +profile = true +type = 2 + +[SelectionCircle] +[.colorenemy] +concat = true +displayname = WESTRING_MISCVAL_CREM +field = ColorEnemy +id = crem +key = colorenemy +profile = true +type = 3 +[.colorfriend] +concat = true +displayname = WESTRING_MISCVAL_CRFD +field = ColorFriend +id = crfd +key = colorfriend +profile = true +type = 3 +[.imagewalkablezoffset] +displayname = WESTRING_MISCVAL_IWZO +field = ImageWalkableZOffset +id = iwzo +key = imagewalkablezoffset +profile = true +type = 2 + +[Stpm] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_TPI1 +field = DataA +id = tpi1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_TPI2 +field = DataB +id = tpi2 +key = Data +repeat = 4 +splite = true +type = 3 + +[Stpr] +[.dataa] +data = 1 +displayname = WESTRING_AEVAL_TPI1 +field = DataA +id = tpi1 +key = Data +repeat = 4 +splite = true +type = 3 +[.datab] +data = 2 +displayname = WESTRING_AEVAL_TPI2 +field = DataB +id = tpi2 +key = Data +repeat = 4 +splite = true +type = 3 + +[TALT] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TALT +field = DependencyOr +id = talt +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQNA +field = Name +id = eqna +key = name +profile = true +type = 3 + +[TWN1] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN1 +field = DependencyOr +id = twn1 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN1 +field = Name +id = eqn1 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP1 +field = XPFactor +id = txp1 +key = xpfactor +profile = true +type = 3 + +[TWN2] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN2 +field = DependencyOr +id = twn2 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN2 +field = Name +id = eqn2 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP2 +field = XPFactor +id = txp2 +key = xpfactor +profile = true +type = 3 + +[TWN3] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN3 +field = DependencyOr +id = twn3 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN3 +field = Name +id = eqn3 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP3 +field = XPFactor +id = txp3 +key = xpfactor +profile = true +type = 3 + +[TWN4] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN4 +field = DependencyOr +id = twn4 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN4 +field = Name +id = eqn4 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP4 +field = XPFactor +id = txp4 +key = xpfactor +profile = true +type = 3 + +[TWN5] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN5 +field = DependencyOr +id = twn5 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN5 +field = Name +id = eqn5 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP5 +field = XPFactor +id = txp5 +key = xpfactor +profile = true +type = 3 + +[TWN6] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN6 +field = DependencyOr +id = twn6 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN6 +field = Name +id = eqn6 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP6 +field = XPFactor +id = txp6 +key = xpfactor +profile = true +type = 3 + +[TWN7] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN7 +field = DependencyOr +id = twn7 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN7 +field = Name +id = eqn7 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP7 +field = XPFactor +id = txp7 +key = xpfactor +profile = true +type = 3 + +[TWN8] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN8 +field = DependencyOr +id = twn8 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN8 +field = Name +id = eqn8 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP8 +field = XPFactor +id = txp8 +key = xpfactor +profile = true +type = 3 + +[TWN9] +[.dependencyor] +concat = true +displayname = WESTRING_MISCVAL_TWN9 +field = DependencyOr +id = twn9 +key = dependencyor +profile = true +type = 3 +[.name] +displayname = WESTRING_MISCVAL_EQN9 +field = Name +id = eqn9 +key = name +profile = true +type = 3 +[.xpfactor] +concat = true +displayname = WESTRING_MISCVAL_TXP9 +field = XPFactor +id = txp9 +key = xpfactor +profile = true +type = 3 diff --git a/plugin/w3x2lni/script/prebuilt/defined/miscnames.ini b/plugin/w3x2lni/script/prebuilt/defined/miscnames.ini new file mode 100644 index 0000000..1943809 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/miscnames.ini @@ -0,0 +1,20 @@ +[root] +misc_names = { +FontHeights, +HERO, +InfoPanel, +Misc, +PingColor, +QuestIndicatorTimeout, +SelectionCircle, +TALT, +TWN1, +TWN2, +TWN3, +TWN4, +TWN5, +TWN6, +TWN7, +TWN8, +TWN9, +} \ No newline at end of file diff --git a/plugin/w3x2lni/script/prebuilt/defined/search.ini b/plugin/w3x2lni/script/prebuilt/defined/search.ini new file mode 100644 index 0000000..4a1249a --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/search.ini @@ -0,0 +1,287 @@ +[ability] +buffid = buff +efctid = buff +requires = upgrade,unit + +[unit] +abillist = ability +builds = unit +heroabillist = ability +makeitems = item +requires = upgrade,unit +requires1 = upgrade,unit +requires2 = upgrade,unit +requires3 = upgrade,unit +requires4 = upgrade,unit +requires5 = upgrade,unit +requires6 = upgrade,unit +requires7 = upgrade,unit +requires8 = upgrade,unit +researches = upgrade +sellitems = item +sellunits = unit +trains = unit +upgrade = unit + +[item] +abillist = ability +requires = upgrade,unit + +[upgrade] +requires = upgrade,unit + +[AEfn] +unitid = unit + +[AEme] +dataa = unit +unitid = unit + +[AEst] +unitid = unit + +[AEsv] +unitid = unit + +[AHpx] +unitid = unit + +[AHwe] +unitid = unit + +[AIbl] +unitid = unit + +[AIfs] +datac = unit +datad = unit + +[AIgl] +unitid = upgrade + +[AImo] +unitid = unit + +[AIpm] +unitid = unit + +[AIrd] +datac = unit +datad = unit + +[AIsb] +unitid = ability + +[AIsh] +unitid = unit + +[ANba] +unitid = unit + +[ANbs] +unitid = unit + +[ANcr] +dataa = unit +unitid = unit + +[ANdc] +unitid = unit + +[ANdo] +unitid = unit + +[ANdp] +dataa = unit + +[ANef] +dataa = unit + +[ANeg] +datac = ability +datad = ability +datae = ability +dataf = ability + +[ANfy] +unitid = unit + +[ANin] +unitid = unit + +[ANlm] +unitid = unit + +[ANpa] +unitid = unit + +[ANrc] +dataa = ability + +[ANrg] +dataa = unit +unitid = unit + +[ANsg] +unitid = unit + +[ANsq] +unitid = unit + +[ANsu] +dataa = unit +unitid = unit + +[ANsw] +unitid = unit + +[ANsy] +datab = unit +unitid = unit + +[ANto] +unitid = unit + +[ANvc] +unitid = destructable + +[ANwm] +unitid = unit + +[AOhx] +datab = unit +datac = unit +datad = unit +datae = unit + +[AOsf] +unitid = unit + +[AOwd] +unitid = unit + +[AUcb] +datac = unit +datad = unit + +[AUin] +unitid = unit + +[AUls] +unitid = unit + +[Aapl] +unitid = unit + +[Aave] +dataa = unit +unitid = unit + +[Abrf] +dataa = unit +unitid = unit + +[Abur] +dataa = unit +unitid = unit + +[Acha] +unitid = unit + +[Acoa] +unitid = unit + +[Acoh] +unitid = unit + +[Acoi] +unitid = unit + +[Acpf] +dataa = unit +unitid = unit + +[Adec] +dataa = unit +datab = unit + +[Aent] +unitid = unit + +[Aetf] +dataa = unit +unitid = unit + +[Aexh] +unitid = unit + +[Aeye] +unitid = unit + +[Agyd] +unitid = unit + +[Ahwd] +unitid = unit + +[Amil] +datab = unit + +[Anwm] +unitid = unit + +[Aphx] +dataa = unit +unitid = unit + +[Aply] +datab = unit +datac = unit +datad = unit +datae = unit + +[Apts] +unitid = unit + +[Arai] +datac = unit +datad = unit + +[Arav] +dataa = unit +unitid = unit + +[Asod] +datab = unit + +[Aspb] +dataa = ability + +[Aspd] +datab = unit + +[Aspx] +dataa = unit +unitid = unit + +[Assp] +datab = unit + +[Asta] +unitid = unit + +[Astn] +dataa = unit +unitid = unit + +[Avng] +datac = unit +datad = unit + +[Stpm] +dataa = unit +datab = unit + +[Stpr] +dataa = unit +datab = unit diff --git a/plugin/w3x2lni/script/prebuilt/defined/typedefine.ini b/plugin/w3x2lni/script/prebuilt/defined/typedefine.ini new file mode 100644 index 0000000..7234152 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/defined/typedefine.ini @@ -0,0 +1,41 @@ +[root] +aibuffer = 3 +armortype = 3 +attackbits = 0 +attacktype = 3 +attributetype = 3 +bool = 0 +channelflags = 0 +channeltype = 0 +combatsound = 3 +deathtype = 0 +defensetype = 3 +defensetypeint = 0 +detectiontype = 0 +fullflags = 0 +int = 0 +interactionflags = 0 +itemclass = 3 +lightningeffect = 3 +morphflags = 0 +movetype = 3 +pathinglistprevent = 3 +pathinglistrequire = 3 +pickflags = 0 +real = 1 +regentype = 3 +shadowimage = 3 +silenceflags = 0 +spelldetail = 0 +stackflags = 0 +targetlist = 3 +targettype = 3 +teamcolor = 0 +techavail = 0 +unitclass = 3 +unitrace = 3 +unreal = 2 +upgradeclass = 3 +upgradeeffect = 3 +versionflags = 0 +weapontype = 3 \ No newline at end of file diff --git a/plugin/w3x2lni/script/prebuilt/prebuilt.lua b/plugin/w3x2lni/script/prebuilt/prebuilt.lua new file mode 100644 index 0000000..c809ca3 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/prebuilt.lua @@ -0,0 +1,174 @@ +(function() + local exepath = package.cpath:sub(1, (package.cpath:find(';') or 0)-6) + package.path = package.path .. ';' .. exepath .. '..\\script\\?.lua' +end)() + +require 'filesystem' +require 'utility' +local w2l = require 'w3x2lni' +local uni = require 'ffi.unicode' +local archive = require 'archive' +local order_prebuilt = require 'order.prebuilt' +local default2lni = require 'prebuilt.default2lni' +local prebuilt_metadata = require 'prebuilt.prebuilt_metadata' +local prebuilt_keydata = require 'prebuilt.prebuilt_keydata' +local prebuilt_search = require 'prebuilt.prebuilt_search' +local prebuilt_miscnames = require 'prebuilt.prebuilt_miscnames' +local w3xparser = require 'w3xparser' +local slk = w3xparser.slk + +w2l:initialize() + +function message(...) + if select(1, ...) == '-progress' then + return + end + local tbl = {...} + local count = select('#', ...) + for i = 1, count do + tbl[i] = uni.u2a(tostring(tbl[i])) + end + print(table.concat(tbl, ' ')) +end + +local function prebuilt_codemapped(w2l) + local template = w2l:parse_slk(io.load(w2l.mpq / w2l.info.slk.ability[1])) + local t = {} + for id, d in pairs(template) do + t[id] = d.code + end + local f = {} + for k, v in pairs(t) do + f[#f+1] = ('%s = %s'):format(k, v) + end + table.sort(f) + table.insert(f, 1, '[root]') + io.save(w2l.defined / 'codemapped.ini', table.concat(f, '\r\n')) +end + +local function prebuilt_typedefine(w2l) + local uniteditordata = w2l:parse_txt(io.load(w2l.mpq / 'ui' / 'uniteditordata.txt')) + local f = {} + f[#f+1] = ('%s = %s'):format('int', 0) + f[#f+1] = ('%s = %s'):format('bool', 0) + f[#f+1] = ('%s = %s'):format('real', 1) + f[#f+1] = ('%s = %s'):format('unreal', 2) + for key, data in pairs(uniteditordata) do + local value = data['00'][1] + local tp + if tonumber(value) then + tp = 0 + else + tp = 3 + end + f[#f+1] = ('%s = %s'):format(key, tp) + end + table.sort(f) + table.insert(f, 1, '[root]') + io.save(w2l.defined / 'typedefine.ini', table.concat(f, '\r\n')) +end + +local function insert_buff(t, code, sort, race) + t[code] = { + code = code, + comments = 'YDWE', + isEffect = 0, + version = 1, + useInEditor = 1, + sort = sort, + race = race, + InBeta = 1 + } +end + +local function build_slk() + local hook + function w2l:parse_slk(buf) + if hook then + local r = slk(buf) + hook(r) + hook = nil + return r + end + return slk(buf) + end + local ar = archive(w2l.mpq) + local slk = w2l:frontend_slk(function(name) + if name == 'units\\abilitybuffdata.slk' then + function hook(t) + insert_buff(t, 'Bdbl', 'hero', 'human') + insert_buff(t, 'Bdbm', 'hero', 'human') + insert_buff(t, 'BHtb', 'unit', 'other') + insert_buff(t, 'Bsta', 'unit', 'orc') + insert_buff(t, 'Bdbb', 'hero', 'human') + insert_buff(t, 'BIpb', 'item', 'other') + insert_buff(t, 'BIpd', 'item', 'other') + insert_buff(t, 'Btlf', 'unit', 'other') + end + end + return ar:get(name) + end) + w2l:frontend_misc(ar, slk) + return slk +end + +local function set_config() + local config = w2l.config + -- 转换后的目标格式(lni, obj, slk) + config.target_format = 'lni' + -- 是否分析slk文件 + config.read_slk = true + -- 分析slk时寻找id最优解的次数,0表示无限,寻找次数越多速度越慢 + config.find_id_times = 0 + -- 移除与模板完全相同的数据 + config.remove_same = false + -- 移除超出等级的数据 + config.remove_exceeds_level = true + -- 移除只在WE使用的文件 + config.remove_we_only = false + -- 移除没有引用的对象 + config.remove_unuse_object = false + -- mdx压缩 + config.mdx_squf = false + -- 转换为地图还是目录(mpq, dir) + config.target_storage = 'dir' +end + +local function main() + set_config() + + fs.create_directories(w2l.template) + fs.create_directories(w2l.default) + fs.create_directories(w2l.defined) + + prebuilt_codemapped(w2l) + prebuilt_typedefine(w2l) + prebuilt_miscnames(w2l) + prebuilt_metadata(w2l) + prebuilt_keydata(w2l) + prebuilt_search(w2l) + + local slk = build_slk() + message('正在生成default') + for _, ttype in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + local data = slk[ttype] + io.save(w2l.default / (ttype .. '.ini'), default2lni(data)) + end + io.save(w2l.default / 'txt.ini', default2lni(slk.txt)) + + message('正在生成template') + for _, ttype in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + local data = w2l:frontend_merge(ttype, slk[ttype], {}) + io.save(w2l.template / (ttype .. '.ini'), w2l:backend_lni(ttype, data)) + end + io.save(w2l.template / 'txt.ini', w2l:backend_txtlni(slk.txt)) + + -- 生成技能命令映射 + --local skill_data = w2l:parse_lni(io.load(w2l.template / 'ability.ini')) + --local order_list = order_prebuilt(skill_data) + --io.save(w2l.root / 'script' / 'order' / 'order_list.lua', order_list) + + message('[完毕]: 用时 ' .. os.clock() .. ' 秒') +end + +main() diff --git a/plugin/w3x2lni/script/prebuilt/prebuilt_keydata.lua b/plugin/w3x2lni/script/prebuilt/prebuilt_keydata.lua new file mode 100644 index 0000000..f0dc23f --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/prebuilt_keydata.lua @@ -0,0 +1,109 @@ + +local key_cache = {} +local function get_key(w2l, type, id) + if not key_cache[type] then + local t = {} + for key, meta in pairs(w2l:metadata()[type]) do + t[meta.id] = key + end + key_cache[type] = t + end + return key_cache[type][id] +end + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function fmtstring(s) + if s:find '[^%w_]' then + return ('%q'):format(s) + end + return s +end + +local function is_enable(meta, type) + if type == 'unit' then + if meta.useHero == 1 or meta.useUnit == 1 or meta.useBuilding == 1 or meta.useCreep == 1 then + return true + else + return false + end + end + if type == 'item' then + if meta.useItem == 1 then + return true + else + return false + end + end + return true +end + +local function create_keydata(w2l, type, keydata) + local metadata = w2l:parse_slk(io.load(w2l.mpq / w2l.info.metadata[type])) + metadata.Ytip = nil + for id, meta in pairs(metadata) do + if is_enable(meta, type) and not meta.useSpecific or meta.section then + local key = get_key(w2l, type, id) + local filename = meta.slk:lower() + if filename == 'profile' then + filename = type + else + filename = 'units\\' .. filename .. '.slk' + if type == 'doodad' then + filename = 'doodads\\doodads.slk' + end + end + if not keydata[filename] then + keydata[filename] = {} + end + table.insert(keydata[filename], key) + end + end +end + +local function stringify(f, name, t) + if not t then + return + end + f[#f+1] = ('%s = {'):format(fmtstring(name)) + table.sort(t) + for _, v in ipairs(t) do + f[#f+1] = ('%s,'):format(fmtstring(v)) + end + f[#f+1] = '}' +end + +return function(w2l) + message('正在生成keydata') + local keydata = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + create_keydata(w2l, type, keydata) + end + local f = {} + f[#f+1] = '[root]' + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + stringify(f, type, keydata[type]) + keydata[type] = nil + end + for k, v in sortpairs(keydata) do + stringify(f, k, v) + end + io.save(w2l.defined / 'keydata.ini', table.concat(f, '\r\n')) +end diff --git a/plugin/w3x2lni/script/prebuilt/prebuilt_metadata.lua b/plugin/w3x2lni/script/prebuilt/prebuilt_metadata.lua new file mode 100644 index 0000000..bfbb1cd --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/prebuilt_metadata.lua @@ -0,0 +1,308 @@ +local w3xparser = require 'w3xparser' +local slk = w3xparser.slk + +local codemapped +local function get_codemapped(w2l, id) + if not codemapped then + codemapped = w2l:parse_lni(io.load(w2l.defined / 'codemapped.ini')) + end + return codemapped[id] or id +end + +local concat_types = { + abilCode = false, + abilityList = true, + aiBuffer = false, + armorType = false, + attackBits = false, + attackTable = true, + attackType = false, + attributeType = false, + bool = false, + buffList = true, + channelFlags = false, + channelType = false, + combatSound = false, + deathType = false, + defenseTable = true, + defenseType = false, + defenseTypeInt = false, + detectionType = false, + effectList = true, + fullFlags = false, + heroAbilityList = true, + icon = false, + int = false, + intList = true, + interactionFlags = false, + itemClass = false, + itemList = true, + lightningEffect = false, + lightningList = true, + model = false, + modelList = true, + morphFlags = false, + moveType = false, + orderString = false, + pathingListPrevent = true, + pathingListRequire = true, + pathingTexture = false, + pickFlags = false, + real = false, + regenType = false, + shadowImage = false, + shadowTexture = false, + silenceFlags = false, + soundLabel = false, + spellDetail = false, + stackFlags = false, + string = false, + stringList = true, + targetList = true, + teamColor = false, + techList = true, + tilesetList = true, + uberSplat = false, + unitClass = true, + unitCode = false, + unitList = true, + unitRace = false, + unitSound = false, + unreal = false, + unrealList = true, + upgradeClass = false, + upgradeCode = false, + upgradeEffect = false, + upgradeList = true, + versionFlags = false, + weaponType = false, +} + +local cant_empty = { + unam = true, + utub = true, + ua1z = true, + gnam = true, + aart = true, + atp1 = true, +} + +local typedefine +local function get_typedefine(w2l, type) + if not typedefine then + typedefine = w2l:parse_lni(io.load(w2l.defined / 'typedefine.ini')) + end + return typedefine[type:lower()] or 3 +end + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function fmtstring(s) + if s:find '[^%w_]' then + return ('%q'):format(s) + end + return s +end + +local function stringify2(inf, outf) + for name, obj in sortpairs(inf) do + outf[#outf+1] = ('[.%s]'):format(fmtstring(name)) + for k, v in sortpairs(obj) do + outf[#outf+1] = ('%s = %s'):format(fmtstring(k), v) + end + end +end + +local function stringify(inf, outf) + for name, obj in sortpairs(inf) do + if next(obj) then + outf[#outf+1] = ('[%s]'):format(fmtstring(name)) + stringify2(obj, outf) + outf[#outf+1] = '' + end + end +end + +local function stringify_ex(inf) + local f = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + stringify({[type]=inf[type]}, f) + inf[type] = nil + end + stringify(inf, f) + return table.concat(f, '\r\n') +end + +local function is_enable(meta, type) + if type == 'unit' then + if meta.useHero == 1 or meta.useUnit == 1 or meta.useBuilding == 1 or meta.useCreep == 1 then + return true + else + return false + end + end + if type == 'item' then + if meta['useItem'] == 1 then + return true + else + return false + end + end + return true +end + +local characters = {'A','B','C','D','E','F','G','H','I'} + +local function parse_id(w2l, metadata, id, meta, type, has_level) + local key = meta.field + local num = meta.data + local objs = meta.useSpecific or meta.section + if num and num ~= 0 then + key = key .. characters[num] + end + if meta._has_index then + key = key .. ':' .. (meta.index + 1) + end + local data = { + ['id'] = id, + ['key'] = meta.slk == 'Profile' and meta.field:lower() or meta.field, + ['type'] = get_typedefine(w2l, meta.type), + ['field'] = key, + ['appendindex'] = meta.appendIndex == 1 and true or nil, + ['displayname'] = meta.displayName, + } + if concat_types[meta.type] then + data.concat = true + end + if has_level and meta['repeat'] > 0 then + data['repeat'] = meta['repeat'] + end + if meta.index == -1 and data.type == 3 and not data.concat then + data.splite = true + end + if num and num ~= 0 then + data.data = num + end + if meta.slk == 'Profile' then + data.profile = true + end + if meta._has_index then + data.index = meta.index + 1 + end + if cant_empty[id] then + data.cantempty = true + end + local lkey = key:lower() + if objs then + for name in objs:gmatch '%w+' do + local code = get_codemapped(w2l, name) + if not metadata[code] then + metadata[code] = {} + end + if metadata[code][lkey] and metadata[code][lkey].id ~= data.id then + message('ID不同:', 'skill', name, 'code', code) + end + metadata[code][lkey] = data + end + else + metadata[type][lkey] = data + end +end + +local function add_user_metadata(meta, type) + meta['w2lobject'] = { + ['id'] = 'W2lo', + ['key'] = 'w2lobject', + ['type'] = 3, + ['field'] = 'W2LObject', + ['profile'] = true, + } +end + +local function add_special(meta, type) + if type == 'unit' then + meta['missilespeed:1'].default = '{1500,1500}' + meta['missilespeed:2'].default = '{1500,1500}' + end +end + +local function create_metadata(w2l, type, metadata) + metadata[type] = {} + local has_level = w2l.info.key.max_level[type] + local tbl = slk(io.load(w2l.mpq / w2l.info.metadata[type])) + tbl.Ytip = nil + local has_index = {} + for k, v in pairs(tbl) do + -- 进行部分预处理 + local name = v['field'] + local index = v['index'] + if index and index >= 1 then + has_index[name] = true + end + end + for k, v in pairs(tbl) do + local name = v['field'] + if has_index[name] then + v._has_index = true + end + end + for id, meta in pairs(tbl) do + if is_enable(meta, type) then + parse_id(w2l, metadata, id, meta, type, has_level) + end + end + add_user_metadata(metadata[type], type) + add_special(metadata[type], type) +end + +local function copy_code(t, template) + for name, d in pairs(template) do + local code = d.code + local data = t[name] + if data then + t[name] = nil + if t[code] then + for k, v in pairs(data) do + local dest = t[code][k] + if dest then + if v.id ~= dest.id then + message('id不同:', k, 'skill:', name, v.id, 'code:', code, dest.id) + end + else + t[code][k] = v + end + end + else + t[code] = {} + for k, v in pairs(data) do + t[code][k] = v + end + end + end + end +end + +return function(w2l) + local metadata = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + create_metadata(w2l, type, metadata) + end + io.save(w2l.defined / 'metadata.ini', stringify_ex(metadata)) +end diff --git a/plugin/w3x2lni/script/prebuilt/prebuilt_miscnames.lua b/plugin/w3x2lni/script/prebuilt/prebuilt_miscnames.lua new file mode 100644 index 0000000..b1dc058 --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/prebuilt_miscnames.lua @@ -0,0 +1,62 @@ +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function fmtstring(s) + if s:find '[^%w_]' then + return ('%q'):format(s) + end + return s +end + +local function create_miscnames(w2l, keydata) + local metadata = w2l:parse_slk(io.load(w2l.mpq / w2l.info.metadata['misc'])) + local names = {} + keydata['misc_names'] = {} + for id, meta in pairs(metadata) do + local name = meta.section + if not names[name] then + names[name] = true + table.insert(keydata['misc_names'], name) + end + end +end + +local function stringify(f, name, t) + if not t then + return + end + f[#f+1] = ('%s = {'):format(fmtstring(name)) + table.sort(t) + for _, v in ipairs(t) do + f[#f+1] = ('%s,'):format(fmtstring(v)) + end + f[#f+1] = '}' +end + +return function(w2l) + message('正在生成keydata') + local keydata = {} + create_miscnames(w2l, keydata) + local f = {} + f[#f+1] = '[root]' + for k, v in sortpairs(keydata) do + stringify(f, k, v) + end + io.save(w2l.defined / 'miscnames.ini', table.concat(f, '\r\n')) +end diff --git a/plugin/w3x2lni/script/prebuilt/prebuilt_search.lua b/plugin/w3x2lni/script/prebuilt/prebuilt_search.lua new file mode 100644 index 0000000..53bb4ca --- /dev/null +++ b/plugin/w3x2lni/script/prebuilt/prebuilt_search.lua @@ -0,0 +1,176 @@ + +local key_cache = {} +local function get_key(w2l, type, id) + if not key_cache[type] then + local t = {} + for key, meta in pairs(w2l:metadata()[type]) do + t[meta.id] = key + end + key_cache[type] = t + end + return key_cache[type][id] +end + +local function get_key2(w2l, type, code, id) + local key = get_key(w2l, type, id) + if key ~= nil then + return key + end + for key, meta in pairs(w2l:metadata()[code]) do + if meta.id == id then + return key + end + end +end + +local codemapped +local function get_codemapped(w2l, id) + if not codemapped then + codemapped = w2l:parse_lni(io.load(w2l.defined / 'codemapped.ini')) + end + return codemapped[id] or id +end + +local enable_type = { + abilCode = 'ability', + abilityID = 'ability', + abilityList = 'ability', + heroAbilityList = 'ability', + buffList = 'buff', + effectList = 'buff', + unitCode = 'unit', + unitList = 'unit', + itemList = 'item', + techList = 'upgrade,unit', + upgradeList = 'upgrade', + upgradeCode = 'upgrade', +} + +local function fixsearch(t) + t.item.cooldownid = nil + t.unit.upgrades = nil + t.unit.auto = nil + t.unit.dependencyor = nil + t.unit.reviveat = nil + -- 复活死尸科技限制单位 + t.Arai.unitid = nil -- ACrd、Arai + t.AIrd.unitid = nil + t.Avng.unitid = nil + -- 地洞战备状态允许单位 + t.Abtl.unitid = nil -- Abtl、Sbtl + -- 装载允许目标单位 + t.Aloa.unitid = nil -- Aloa、Sloa、Slo2、Slo3 + -- 灵魂保存目标单位 + t.ANsl.unitid = nil + -- 地洞装载允许目标单位 + t.Achl.unitid = nil + -- 火山爆发召唤可破坏物 + t.ANvc.unitid = 'destructable' + -- 战斗号召允许单位 + t.Amil.dataa = nil + -- 骑乘角鹰兽指定单位类型 + t.Acoa.dataa = nil + t.Acoh.dataa = nil + t.Acoi.dataa = nil -- Aco2、Aco3 +end + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function fmtstring(s) + if s:find '[^%w_]' then + return ('%q'):format(s) + end + return s +end + +local function stringify(f, name, t) + if next(t) then + f[#f+1] = ('[%s]'):format(fmtstring(name)) + for k, v in sortpairs(t) do + f[#f+1] = ('%s = %s'):format(fmtstring(k), v) + end + f[#f+1] = '' + end +end + +local function is_enable(meta, type) + if type == 'unit' then + if meta.useHero == 1 or meta.useUnit == 1 or meta.useBuilding == 1 or meta.useCreep == 1 then + return true + else + return false + end + end + if type == 'item' then + if meta.useItem == 1 then + return true + else + return false + end + end + return true +end + +local function create_search(w2l, type, search) + search[type] = {} + local metadata = w2l:parse_slk(io.load(w2l.mpq / w2l.info.metadata[type])) + for id, meta in pairs(metadata) do + if is_enable(meta, type) then + local objs = meta.useSpecific or meta.section + if objs then + for name in objs:gmatch '%w+' do + local code = get_codemapped(w2l, name) + if not search[code] then + search[code] = {} + end + local key = get_key2(w2l, type, code, id) + local type = enable_type[meta.type] + if search[code][key] and search[code][key] ~= type then + message('类型不同:', 'skill', name, 'code', code) + end + search[code][key] = type + end + else + local key = get_key(w2l, type, id) + if key then + search[type][key] = enable_type[meta.type] + end + end + end + end +end + +return function(w2l) + message('正在生成search') + local search = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + create_search(w2l, type, search) + end + fixsearch(search) + local f = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + stringify(f, type, search[type]) + search[type] = nil + end + for k, v in sortpairs(search) do + stringify(f, k, v) + end + io.save(w2l.defined / 'search.ini', table.concat(f, '\r\n')) +end diff --git a/plugin/w3x2lni/script/progress.lua b/plugin/w3x2lni/script/progress.lua new file mode 100644 index 0000000..f62c6ae --- /dev/null +++ b/plugin/w3x2lni/script/progress.lua @@ -0,0 +1,52 @@ +local mt = {} +setmetatable(mt, mt) + +local level = 0 +local current = 0 +local min_rate = 0 +local max_rate = 1 +local min = {} +local max = {} +local progress = 0 + +local function send_progress() + local newprogress = current * (max_rate - min_rate) + min_rate + if progress + 0.01 < newprogress then + message('-progress', newprogress) + progress = newprogress + end +end + +local function refresh_rate() + min_rate = 0 + max_rate = 1 + for i = level, 1, -1 do + min_rate = min_rate * (max[i] - min[i]) + min[i] + max_rate = max_rate * (max[i] - min[i]) + min[i] + end +end + +-- 开启新任务,新任务完成时当前任务的完成进度 +function mt:start(n) + level = level + 1 + min[level] = current + max[level] = n + current = 0 + refresh_rate() +end + +-- 完成当前任务 +function mt:finish() + current = max[level] + level = level - 1 + refresh_rate() + send_progress() +end + +-- 设置当前任务进度 +function mt:__call(n) + current = n + send_progress() +end + +return mt diff --git a/plugin/w3x2lni/script/save_map.lua b/plugin/w3x2lni/script/save_map.lua new file mode 100644 index 0000000..817b3e6 --- /dev/null +++ b/plugin/w3x2lni/script/save_map.lua @@ -0,0 +1,143 @@ +local w3xparser = require 'w3xparser' + +local function search_staticfile(map) + map:get '(listfile)' + map:get '(signature)' + map:get '(attributes)' +end + +local function search_listfile(map) + local buf = map:get '(listfile)' + if buf then + for name in buf:gmatch '[^\r\n]+' do + map:get(name) + end + end +end + +local function search_imp(map) + local buf = map:get 'war3map.imp' + if buf then + local _, count, index = ('ll'):unpack(buf) + local name + for i = 1, count do + _, name, index = ('c1z'):unpack(buf, index) + if not map:get(name) then + map:get('war3mapimported\\' .. name) + end + end + end +end + +local searchers = { + search_listfile, + search_staticfile, + search_imp, +} + +local function search_mpq(map) + local total = map:number_of_files() + + for i, searcher in ipairs(searchers) do + pcall(searcher, map) + if map.read_count == total then + return true + end + end + + message('-report|1严重错误', ('还有%d个文件没有读取'):format(total - map.read_count)) + message('-tip', '这些文件被丢弃了,请包含完整(listfile)') + message('-report|1严重错误', ('读取(%d/%d)个文件'):format(map.read_count, total)) +end + +local function scan_dir(dir, callback) + for path in dir:list_directory() do + if fs.is_directory(path) then + scan_dir(path, callback) + else + callback(path) + end + end +end + +local function search_dir(map) + local len = #map.path:string() + scan_dir(map.path, function(path) + local name = path:string():sub(len+2):lower() + map:get(name) + end) +end + +local function save_imp(w2l, output_ar, imp_buf) + local impignore = {} + for _, name in ipairs(w2l.info.pack.impignore) do + impignore[name] = true + end + local imp = {} + for name, buf in pairs(output_ar) do + if buf and not impignore[name] then + imp[#imp+1] = name + end + end + if imp_buf then + local imp_lni = w2l:parse_lni(imp_buf) + for _, name in ipairs(imp_lni.import) do + local name = name:lower() + if impignore[name] then + imp[#imp+1] = name + end + end + end + table.sort(imp) + local hex = {} + hex[1] = ('ll'):pack(1, #imp) + for _, name in ipairs(imp) do + hex[#hex+1] = ('z'):pack(name) + end + output_ar:set('war3map.imp', table.concat(hex, '\r')) +end + +return function (w2l, output_ar, w3i, input_ar) + if input_ar:get_type() == 'mpq' then + search_mpq(input_ar) + else + search_dir(input_ar) + end + if w2l.config.remove_we_only then + input_ar:set('war3map.wtg', false) + input_ar:set('war3map.wct', false) + input_ar:set('war3map.imp', false) + input_ar:set('war3map.w3s', false) + input_ar:set('war3map.w3r', false) + input_ar:set('war3map.w3c', false) + input_ar:set('war3mapunits.doo', false) + else + if not input_ar:get 'war3mapunits.doo' then + input_ar:set('war3mapunits.doo', w2l:create_unitsdoo()) + end + end + for name, buf in pairs(input_ar) do + if buf then + if w2l.config.mdx_squf and name:sub(-4) == '.mdx' then + buf = w3xparser.mdxopt(buf) + end + output_ar:set(name, buf) + end + end + output_ar:set('(listfile)', false) + output_ar:set('(signature)', false) + output_ar:set('(attributes)', false) + + local imp = input_ar:get 'war3map.imp.ini' + if w2l.config.target_format ~= 'lni' then + output_ar:set('war3map.imp.ini', false) + end + + if not w2l.config.remove_we_only and output_ar:get_type() == 'mpq' then + save_imp(w2l, output_ar, imp) + end + + if not output_ar:save(w3i, w2l.config.remove_we_only) then + message('创建新地图失败,可能文件被占用了') + end +end diff --git a/plugin/w3x2lni/script/slk/backend.lua b/plugin/w3x2lni/script/slk/backend.lua new file mode 100644 index 0000000..bbb49a9 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend.lua @@ -0,0 +1,363 @@ +local progress = require 'progress' + +local os_clock = os.clock + +local output = { + unit = 'units\\campaignunitstrings.txt', + ability = 'units\\campaignabilitystrings.txt', + buff = 'units\\commonabilitystrings.txt', + upgrade = 'units\\campaignupgradestrings.txt', + item = 'units\\itemstrings.txt', + txt = 'units\\itemabilitystrings.txt', +} + +local function to_lni(w2l, archive, slk) + --转换物编 + local count = 0 + for ttype, filename in pairs(w2l.info.lni) do + count = count + 1 + local data = slk[ttype] + progress:start(count / 7) + local content = w2l:backend_lni(ttype, data) + progress:finish() + if content then + archive:set(filename, content) + end + end + + local content = w2l:backend_txtlni(slk['txt']) + if content then + archive:set('war3map.txt.ini', content) + end +end + +local function to_obj(w2l, archive, slk) + --转换物编 + local count = 0 + for type, filename in pairs(w2l.info.obj) do + count = count + 1 + local data = slk[type] + progress:start(count / 7) + local content = w2l:backend_obj(type, data, slk.wts) + progress:finish() + if content then + archive:set(filename, content) + end + end + + local content = w2l:backend_txtlni(slk['txt']) + if content then + archive:set('war3map.txt.ini', content) + end +end + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function get_displayname_by_id(slk, id) + local o = slk.ability[id] + or slk.unit[id] + or slk.buff[id] + or slk.item[id] + or slk.destructable[id] + or slk.doodad[id] + or slk.upgrade[id] + if not o then + return id, '' + end + return get_displayname(o) +end + +local function format_marktip(slk, marktip) + return marktip[2]:format(get_displayname_by_id(slk, marktip[1])) +end + +local function report_object(slk, type, o) + message('-report|4简化', displaytype[type], get_displayname(o)) + if o._mark then + message('-tip', format_marktip(slk, o._mark)) + end +end + +local function report_list(slk, list, type, n) + list = list[type] + for i = 1, math.min(n, #list) do + report_object(slk, type, list[i]) + end +end + +local function remove_unuse(w2l, slk) + local custom_list = { + ability = {}, + unit = {}, + item = {}, + buff = {}, + upgrade = {}, + doodad = {}, + destructable = {}, + } + local origin_list = { + ability = {}, + unit = {}, + item = {}, + buff = {}, + upgrade = {}, + doodad = {}, + destructable = {}, + } + local mustuse = { + ability = {}, + unit = {}, + item = {}, + buff = {}, + upgrade = {}, + doodad = {}, + destructable = {}, + } + for type, list in pairs(slk.mustuse) do + for _, id in ipairs(list) do + mustuse[type][id] = true + end + end + + local total_custom = 0 + local total_origin = 0 + local unuse_custom = 0 + local unuse_origin = 0 + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + local default = w2l:get_default()[type] + for name, obj in pairs(slk[type]) do + if obj._obj or not default[name] then + total_custom = total_custom + 1 + if not obj._mark then + unuse_custom = unuse_custom + 1 + custom_list[type][#custom_list[type]+1] = obj + end + else + total_origin = total_origin + 1 + if not obj._mark then + unuse_origin = unuse_origin + 1 + else + if not mustuse[type][name] then + origin_list[type][#origin_list[type]+1] = obj + end + end + end + end + end + + if unuse_origin + unuse_custom > 0 then + message('-report|4简化', ('简化掉的对象数: %d/%d'):format(unuse_origin + unuse_custom, total_origin + total_custom)) + end + if total_origin - unuse_origin > 0 then + message('-report|4简化', ('保留的默认对象数: %d/%d'):format(total_origin - unuse_origin, total_origin)) + report_list(slk, origin_list, 'unit', 10) + report_list(slk, origin_list, 'ability', 10) + report_list(slk, origin_list, 'item', 10) + report_list(slk, origin_list, 'buff', 10) + report_list(slk, origin_list, 'upgrade', 3) + report_list(slk, origin_list, 'destructable', 3) + report_list(slk, origin_list, 'doodad', 3) + end + if unuse_custom > 0 then + message('-report|4简化', ('简化掉的自定义对象数: %d/%d'):format(unuse_custom, total_custom)) + report_list(slk, custom_list, 'unit', 10) + report_list(slk, custom_list, 'ability', 10) + report_list(slk, custom_list, 'item', 10) + report_list(slk, custom_list, 'buff', 10) + report_list(slk, custom_list, 'upgrade', 3) + report_list(slk, custom_list, 'destructable', 3) + report_list(slk, custom_list, 'doodad', 3) + end +end + +local function to_slk(w2l, archive, slk) + local report = { n = 0 } + local object = {} + local slk_list = {'ability', 'buff', 'unit', 'item', 'upgrade', 'destructable'} + if w2l.config.slk_doodad then + slk_list[#slk_list+1] = 'doodad' + end + for _, type in ipairs(slk_list) do + local data = slk[type] + object[type] = {} + for _, slk in ipairs(w2l.info.slk[type]) do + archive:set(slk, w2l:backend_slk(type, slk, data, report, object[type])) + end + end + + for _, filename in ipairs(w2l.info.txt) do + archive:set(filename, '') + end + local txt = w2l:backend_txt(slk, report, object) + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade'} do + archive:set(output[type], txt[type]) + end + + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'destructable', 'doodad'} do + local data = object[type] or slk[type] + local content = w2l:backend_obj(type, data, slk.wts) + if content then + archive:set(w2l.info.obj[type], content) + end + end + + local content = w2l:backend_extra_txt(slk['txt']) + if content then + archive:set(output['txt'], content) + end + + if report.n > 0 then + local index = 1 + message('-report|3没有SLK化的数据', ('合计: %d'):format(report.n)) + for tip, list in pairs(report) do + if #tip > 1 then + local n = 0 + message('-report|3没有SLK化的数据', ('%d.%s'):format(index, tip)) + index = index + 1 + for _, msg in pairs(list) do + message('-report|3没有SLK化的数据', msg[1]) + message('-tip', msg[2]) + n = n + 1 + if n > 20 then + break + end + end + end + end + end +end + +local function load_w3i(w2l, archive, slk) + local buf = archive:get 'war3map.w3i.ini' + if buf then + slk.w3i = w2l:parse_lni(buf) + archive:set('war3map.w3i.ini', false) + else + buf = archive:get 'war3map.w3i' + if buf then + slk.w3i = w2l:read_w3i(buf, slk.wts) + end + end + if not slk.w3i then + return + end + if slk.w3i['选项']['使用的游戏数据设置'] == 1 then + message('-report|2警告', '不支持的游戏数据设置"自定义"') + message('-tip', '只支持"默认(1.07)",数据可能会出现差异') + end + if slk.w3i['选项']['使用的游戏数据设置'] == 2 then + message('-report|2警告', '不支持的游戏数据设置"对战(最新版本)"') + message('-tip', '只支持"默认(1.07)",数据可能会出现差异') + end +end + +return function (w2l, archive, slk) + load_w3i(w2l, archive, slk) + if slk.w3i then + if w2l.config.target_format == 'lni' then + archive:set('war3map.w3i.ini', w2l:w3i2lni(slk.w3i), slk.wts) + archive:set('war3map.w3i', false) + else + archive:set('war3map.w3i', w2l:lni2w3i(slk.w3i, slk.wts)) + end + end + progress(0.1) + + progress:start(0.1) + message('清理数据...') + w2l:backend_searchparent(slk) + progress:finish() + + if w2l.config.remove_unuse_object then + message('标记简化对象...') + w2l:backend_mark(archive, slk) + progress(0.2) + end + + if w2l.config.target_format == 'slk' then + message('计算描述中的公式...') + w2l:backend_computed(slk) + progress(0.3) + end + + if w2l.config.remove_unuse_object then + message('移除简化对象...') + progress:start(0.5) + remove_unuse(w2l, slk) + progress:finish() + end + + progress:start(0.7) + w2l:backend_cleanobj(slk) + progress:finish() + + progress:start(0.9) + message('转换物编文件...') + if w2l.config.target_format == 'lni' then + to_lni(w2l, archive, slk) + elseif w2l.config.target_format == 'obj' then + to_obj(w2l, archive, slk) + elseif w2l.config.target_format == 'slk' then + to_slk(w2l, archive, slk) + end + progress:finish() + + message('转换脚本...') + w2l:backend_convertjass(archive, slk.wts) + w2l:backend_convertwtg(archive, slk.wts) + progress(0.92) + + message('转换其他文件...') + archive:set('war3mapmisc.txt', w2l:backend_misc(slk.misc, slk.txt, slk.wts)) + progress(0.93) + + local buf = archive:get 'war3mapskin.txt' + if buf then + local skin = w2l:parse_ini(buf) + archive:set('war3mapskin.txt', w2l:backend_skin(skin, slk.wts)) + end + progress(0.94) + + if w2l.config.target_format == 'lni' then + local buf = archive:get 'war3map.imp' + if buf then + archive:set('war3map.imp', false) + archive:set('war3map.imp.ini', w2l:backend_imp(archive, buf)) + end + end + + message('重新生成字符串...') + local content = w2l:refresh_wts(slk.wts) + if #content > 0 then + archive:set('war3map.wts', content) + else + archive:set('war3map.wts', false) + end + progress(0.95) + + if w2l.config.optimize_jass then + message('优化脚本...') + w2l:backend_optimizejass(archive) + end + progress(1) +end diff --git a/plugin/w3x2lni/script/slk/backend_cleanobj.lua b/plugin/w3x2lni/script/slk/backend_cleanobj.lua new file mode 100644 index 0000000..6d49c76 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_cleanobj.lua @@ -0,0 +1,151 @@ +local progress = require 'progress' + +local pairs = pairs + +local keydata +local is_remove_same +local w2l +local default +local metadata + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function remove_same_as_slk(key, data, default, obj, ttype) + local dest = default[key] + if type(dest) == 'table' then + local new_data = {} + for i = 1, #data do + local default + if i > #dest then + default = dest[#dest] + else + default = dest[i] + end + if data[i] ~= default then + new_data[i] = data[i] + end + end + if not next(new_data) then + obj[key] = new_data + return + end + if is_remove_same then + obj[key] = new_data + end + else + if data == dest then + obj[key] = nil + end + end +end + +local function remove_same_as_txt(key, data, default, obj, ttype) + local dest = default[key] + if type(dest) == 'table' then + local new_data = {} + local last + for i = 1, #data do + local default + if i > #dest then + default = last + else + default = dest[i] + end + if data[i] ~= default then + new_data[i] = data[i] + end + last = data[i] + end + if not next(new_data) then + obj[key] = new_data + return + end + if is_remove_same then + obj[key] = new_data + end + else + if data == dest then + obj[key] = nil + end + end +end + +local function clean_obj(name, obj, type, default) + local parent = obj._parent + local max_level = obj._max_level + local default = default[parent] + for key, meta in pairs(metadata[type]) do + local data = obj[key] + if data then + if meta.profile then + remove_same_as_txt(key, data, default, obj, type) + else + remove_same_as_slk(key, data, default, obj, type) + end + end + end + if metadata[obj._code] then + for key, meta in pairs(metadata[obj._code]) do + local data = obj[key] + if data then + if meta.profile then + remove_same_as_txt(key, data, default, obj, type) + else + remove_same_as_slk(key, data, default, obj, type) + end + end + end + end +end + +local function clean_objs(type, t) + for id, obj in sortpairs(t) do + clean_obj(id, obj, type, default[type]) + end +end + +local function clean_misc(type, t) + for _, name in ipairs {'FontHeights', 'InfoPanel', 'Misc', 'PingColor', 'QuestIndicatorTimeout', 'SelectionCircle'} do + clean_obj(id, t[name], type, default[type]) + end +end + +return function (w2l_, slk) + w2l = w2l_ + keydata = w2l:keydata() + default = w2l:get_default() + is_remove_same = w2l.config.remove_same + metadata = w2l:metadata() + if w2l.config.target_format == 'slk' then + if not w2l.config.slk_doodad then + local type = 'doodad' + clean_objs(type, slk[type]) + progress(0.5) + end + else + for i, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + clean_objs(type, slk[type]) + progress(i / 8) + end + end + local type = 'misc' + clean_misc(type, slk[type]) + progress(1) +end diff --git a/plugin/w3x2lni/script/slk/backend_computed.lua b/plugin/w3x2lni/script/slk/backend_computed.lua new file mode 100644 index 0000000..ea22caa --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_computed.lua @@ -0,0 +1,161 @@ +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return displaytype[o._type], o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function get_displayname_by_id(slk, id) + local o = slk.ability[id] + or slk.unit[id] + or slk.buff[id] + or slk.item[id] + or slk.destructable[id] + or slk.doodad[id] + or slk.upgrade[id] + if not o then + return '未知', id, '' + end + return get_displayname(o) +end + +local function get_value(t, key) + local value = t[key] + if value and type(value) ~= 'table' then + return value + end + local pos = key:find("%d+$") + if not pos then + return + end + local value = t[key:sub(1, pos-1)] + if not value or type(value) ~= 'table' then + return + end + local level = tonumber(key:sub(pos)) + if level > t._max_level then + return 0 + end + return value[level] +end + +local function switch(value) + return function (mapping) + if mapping[value] then + return mapping[value]() + elseif mapping.default then + return mapping.default() + end + end +end + +local function split(str) + local r = {} + str:gsub('[^,]+', function (w) r[#r+1] = w end) + return r +end + +local function computed_value(slk, str, name, field) + -- TODO: 魔兽计算这个太特殊了,我想我放弃完全模拟了 + local id, key, per = table.unpack(split(str)) + id = id:sub(1, 4) + local o = slk.ability[id] + or slk.unit[id] + or slk.item[id] + or slk.upgrade[id] + if not o then + message('-report|5公式计算失败', get_displayname_by_id(slk, name)) + message('-tip', ('%s: <%s>'):format(field, str)) + return + end + key = key:lower() + local res = switch(key) { + mindmg1 = function () + return (get_value(o, 'dmgplus1') or 0) + (get_value(o, 'dice1') or 0) + end, + maxdmg1 = function () + return (get_value(o, 'dmgplus1') or 0) + (get_value(o, 'dice1') or 0) * (get_value(o, 'sides1') or 0) + end, + mindmg2 = function () + return (get_value(o, 'dmgplus2') or 0) + (get_value(o, 'dice2') or 0) + end, + maxdmg2 = function () + return (get_value(o, 'dmgplus2') or 0) + (get_value(o, 'dice2') or 0) * (get_value(o, 'sides2') or 0) + end, + realhp = function () + return get_value(o, 'hp') or 0 + end, + default = function () + return get_value(o, key) + end + } + if type(res) == 'number' then + if per == '%' then + res = res * 100 + end + return math.floor(res) + end + message('-report|5公式计算失败', get_displayname_by_id(slk, id)) + message('-tip', ('%s: <%s>'):format(field, str)) + return res +end + +local function computed(slk, input, id, key) + return input:gsub('<([^>]*)>', function(str) return computed_value(slk, str, id, key) end) +end + +return function(w2l, slk) + local remove_unuse = w2l.config.remove_unuse_object + for _, o in pairs(slk.ability) do + if remove_unuse and not o._mark then + goto CONTINUE + end + if o.researchubertip then + o.researchubertip = computed(slk, o.researchubertip, o._id, 'Researchtip') + end + if o.ubertip then + for k, v in pairs(o.ubertip) do + o.ubertip[k] = computed(slk, v, o._id, 'Ubertip') + end + end + ::CONTINUE:: + end + for _, o in pairs(slk.item) do + if remove_unuse and not o._mark then + goto CONTINUE + end + if o.ubertip then + o.ubertip = computed(slk, o.ubertip, o._id, 'Ubertip') + end + if o.description then + o.description = computed(slk, o.description, o._id, 'Description') + end + ::CONTINUE:: + end + for _, o in pairs(slk.upgrade) do + if remove_unuse and not o._mark then + goto CONTINUE + end + if o.ubertip then + for k, v in pairs(o.ubertip) do + o.ubertip[k] = computed(slk, v, o._id, 'Ubertip') + end + end + ::CONTINUE:: + end +end diff --git a/plugin/w3x2lni/script/slk/backend_convertjass.lua b/plugin/w3x2lni/script/slk/backend_convertjass.lua new file mode 100644 index 0000000..a6bdeff --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_convertjass.lua @@ -0,0 +1,46 @@ +local lpeg = require 'lpeg' +local w2l +local wts + +local function fwts(str) + return w2l:load_wts(wts, str, 1023, '脚本里的文本长度超过1023字符', function(str) + return str:gsub('\\', '\\\\'):gsub('"', '\\"') + end) +end + +lpeg.locale(lpeg) +local S = lpeg.S +local P = lpeg.P +local R = lpeg.R +local C = lpeg.C +local Cs = lpeg.Cs + +local nl1 = P'\r\n' + S'\r\n' +local com = P'//' * (1-nl1)^0 +local nl = com^0 * nl1 +local quo = P'"' +local esc = P'\\' +local num = R'09' +local str1 = esc * P(1) + (1-quo) +local str = quo * (nl1 + str1)^0 * quo +local wst = quo * ('TRIGSTR_' * num^3 / fwts) * quo +local mtch = C(nl) + Cs(wst) + C(str) +local any = C((1 - mtch)^1) + +local pjass = (mtch + any)^0 / function(...) + return table.concat {...} +end +return function (w2l_, archive, wts_) + local name = 'war3map.j' + local buf = archive:get(name) + if not buf then + name = 'scripts\\war3map.j' + buf = archive:get(name) + if not buf then + return + end + end + w2l = w2l_ + wts = wts_ + archive:set(name, pjass:match(buf)) +end diff --git a/plugin/w3x2lni/script/slk/backend_convertwtg.lua b/plugin/w3x2lni/script/slk/backend_convertwtg.lua new file mode 100644 index 0000000..deba629 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_convertwtg.lua @@ -0,0 +1,34 @@ +local w2l +local wts + +-- TODO 使用更严谨的匹配规则 +local lpeg = require 'lpeg' + +local function fwts(str) + return w2l:load_wts(wts, str, 299, '触发器里的文本长度超过299字符', function(str) + return str:gsub('\\', '\\\\'):gsub('"', '\\"') + end) +end + +lpeg.locale(lpeg) +local S = lpeg.S +local P = lpeg.P +local R = lpeg.R +local C = lpeg.C +local Cs = lpeg.Cs + +local num = R'09' +local wst = Cs('TRIGSTR_' * num^3 / fwts * P'\0') + +local pwtg = Cs((wst + 1)^0) + +return function (w2l_, archive, wts_) + local name = 'war3map.wtg' + local buf = archive:get(name) + if not buf then + return + end + w2l = w2l_ + wts = wts_ + archive:set(name, pwtg:match(buf)) +end diff --git a/plugin/w3x2lni/script/slk/backend_extra_txt.lua b/plugin/w3x2lni/script/slk/backend_extra_txt.lua new file mode 100644 index 0000000..5f7e6a3 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_extra_txt.lua @@ -0,0 +1,88 @@ +local function format_keyval(key, val) + if val == '' then + return nil + end + if key == 'EditorSuffix' then + return nil + end + if key == 'EditorName' then + return nil + end + return key .. '=' .. val +end + +local function format_value(val) + if type(val) == 'string' then + val = val:gsub('\r\n', '|n'):gsub('[\r\n]', '|n') + if val:find(',', nil, false) then + val = '"' .. val .. '"' + end + end + return val +end + +local function add_data(lines, key, data) + if key:find '[^%w_]' then + key = ('%q'):format(key) + end + local len = 0 + for k in pairs(data) do + if k > len then + len = k + end + end + if len == 0 then + return + end + if len == 1 then + lines[#lines+1] = format_keyval(key, format_value(data[1])) + return + end + local values = {} + for i = 1, len do + values[i] = format_value(data[i]) + end + lines[#lines+1] = format_keyval(key, table.concat(values, ',')) +end + +local function add_obj(lines, name, obj) + local values = {} + local keys = {} + for key in pairs(obj) do + keys[#keys+1] = key + end + table.sort(keys) + for _, key in ipairs(keys) do + if key:sub(1, 1) ~= '_' then + add_data(values, key, obj[key]) + end + end + + if #values == 0 then + return + end + lines[#lines+1] = ('[%s]'):format(name) + for _, value in ipairs(values) do + lines[#lines+1] = value + end + lines[#lines+1] = '' +end + +local function add_chunk(lines, tbl) + local names = {} + for name in pairs(tbl) do + names[#names+1] = name + end + table.sort(names) + for _, name in ipairs(names) do + add_obj(lines, name, tbl[name]) + end +end + +return function (w2l, tbl) + local lines = {} + + add_chunk(lines, tbl) + + return table.concat(lines, '\r\n') +end diff --git a/plugin/w3x2lni/script/slk/backend_imp.lua b/plugin/w3x2lni/script/slk/backend_imp.lua new file mode 100644 index 0000000..c5622cf --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_imp.lua @@ -0,0 +1,36 @@ +local archive + +local function parse_imp(buf) + local list = {} + local _, count, index = ('ll'):unpack(buf) + local name + for i = 1, count do + _, name, index = ('c1z'):unpack(buf, index) + local name = name:lower() + if archive:get(name) then + list[#list+1] = name + elseif archive:get('war3mapimported\\' .. name) then + list[#list+1] = 'war3mapimported\\' .. name + end + end + table.sort(list) + return list +end + +local function convert_imp(list) + local lines = {} + lines[1] = '[root]' + lines[2] = 'import = {' + for _, name in ipairs(list) do + lines[#lines+1] = ('%q'):format(name) .. ',' + end + lines[#lines+1] = '}' + return table.concat(lines, '\r\n') +end + +return function (w2l_, archive_, buf) + archive = archive_ + local list = parse_imp(buf) + local buf = convert_imp(list) + return buf +end diff --git a/plugin/w3x2lni/script/slk/backend_lni.lua b/plugin/w3x2lni/script/slk/backend_lni.lua new file mode 100644 index 0000000..fd52ab4 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_lni.lua @@ -0,0 +1,178 @@ +local progress = require 'progress' + +local table_insert = table.insert +local table_sort = table.sort +local math_type = math.type +local table_concat = table.concat +local string_char = string.char +local type = type +local os_clock = os.clock + +local w2l +local metadata +local remove_unuse_object +local ttype +local str + +local function get_len(tbl) + local n = 0 + for k in pairs(tbl) do + if type(k) == 'number' and k > n then + n = k + end + end + return n +end + +local function format_value(tp, value) + if value == nil then + return 'nil' + end + if tp == 0 then + return ('%d'):format(value) + elseif tp == 1 or tp == 2 then + return ('%.4f'):format(value) + elseif tp == 3 then + value = w2l:editstring(value) + if value:match '[\n\r]' then + return ('[=[\r\n%s]=]'):format(value) + else + return ('%q'):format(value) + end + end + return 'nil' +end + +local function write(format, ...) + str[#str+1] = format:format(...) +end + +local function write_data(meta, data, lines) + local len + local key = meta.field + if type(data) == 'table' then + len = get_len(data) + if len == 0 then + return + end + end + if key:match '[^%w%_]' then + key = ('%q'):format(key) + end + if meta.displayname then + lines[#lines+1] = {'-- %s', w2l:editstring(meta.displayname):gsub('^%s*(.-)%s*$', '%1')} + end + if not len then + lines[#lines+1] = {'%s = %s', key, format_value(meta.type, data)} + return + end + if len <= 1 then + lines[#lines+1] = {'%s = %s', key, format_value(meta.type, data[1])} + return + end + + local values = {} + local is_string + for i = 1, len do + if type(data[i]) == 'string' then + is_string = true + end + if len >= 10 then + values[i] = ('%d = %s'):format(i, format_value(meta.type, data[i])) + else + values[i] = format_value(meta.type, data[i]) + end + end + + if is_string or len >= 10 then + lines[#lines+1] = {'%s = {\r\n%s,\r\n}', key, table_concat(values, ',\r\n')} + return + end + + lines[#lines+1] = {'%s = {%s}', key, table_concat(values, ', ')} +end + +local function write_obj(id, obj) + local metas = {} + local datas = {} + local haskey = {} + if metadata[obj._code] then + for key, meta in pairs(metadata[obj._code]) do + local data = obj[key] + if data then + metas[#metas+1] = meta + datas[meta] = data + end + haskey[key] = true + end + end + if metadata[ttype] then + for key, meta in pairs(metadata[ttype]) do + if not haskey[key] then + local data = obj[key] + if data then + metas[#metas+1] = meta + datas[meta] = data + end + end + end + end + table_sort(metas, function(meta1, meta2) + return meta1.field < meta2.field + end) + local lines = {} + for _, meta in ipairs(metas) do + write_data(meta, datas[meta], lines) + end + if #lines == 0 and id == obj._parent then + return + end + write('[%s]', id) + if obj._parent then + write('%s = %q', '_parent', obj._parent) + end + for i = 1, #lines do + write(table.unpack(lines[i])) + end + write '' +end + +local function write_table(slk) + local list = {} + for id in pairs(slk) do + if not remove_unuse_object or obj._mark then + list[#list+1] = id + end + end + table_sort(list, function(a, b) + local is_origin_a = a == slk[a]._parent + local is_origin_b = b == slk[b]._parent + if is_origin_a and not is_origin_b then + return true + end + if not is_origin_a and is_origin_b then + return false + end + return a < b + end) + local clock = os_clock() + for i = 1, #list do + local obj = slk[list[i]] + write_obj(list[i], obj) + if os_clock() - clock >= 0.1 then + clock = os_clock() + message(('正在转换%s: [%s] (%d/%d)'):format(ttype, obj._id, i, #list)) + progress(i / #list) + end + end +end + +return function (w2l_, type, slk) + w2l = w2l_ + metadata = w2l:metadata() + remove_unuse_object = w2l.config.remove_unuse_object + ttype = type + str = {} + write_table(slk, type) + return table_concat(str, '\r\n') +end diff --git a/plugin/w3x2lni/script/slk/backend_mark.lua b/plugin/w3x2lni/script/slk/backend_mark.lua new file mode 100644 index 0000000..d53c675 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_mark.lua @@ -0,0 +1,402 @@ +local std_type = type +local mustuse = { + ability = { + -- 无敌 + 'Avul', + -- 范围性攻击伤害 + 'Adda','Amnz', + -- 警报 + 'Aalr', + -- 攻击 + 'Aatk', + -- 建造 + 'ANbu','AHbu','AObu','AEbu','AUbu','AGbu', + -- 地洞探测 + 'Abdt', + -- 送回黄金 + 'Argd', + -- 英雄 + 'AHer', + -- 复活英雄 + 'Arev', + -- 集结 + 'ARal', + -- 睡眠 + 'ACsp', + -- 装载 + 'Sloa', + -- 虚无 + 'Aetl', + -- 移动 + 'Amov', + -- 开火 + 'Afir','Afih','Afio','Afin','Afiu' + }, + buff = { + 'BPSE','BSTN','Btlf','Bdet', + 'Bvul','Bspe','Bfro','Bsha', + 'Btrv','Xbdt','Xbli','Xdis', + -- 建筑物伤害 + 'Xfhs','Xfhm','Xfhl', + 'Xfos','Xfom','Xfol', + 'Xfns','Xfnm','Xfnl', + 'Xfus','Xfum','Xful', + }, +} + +-- 目前是技能专属 +local mustmark = { + -- 牺牲深渊 => 阴影 + Asac = { 'ushd', 'unit' }, + Alam = { 'ushd', 'unit' }, + -- 蜘蛛攻击 + Aspa = { 'Bspa', 'buff' }, + -- 战斗号召 + Amil = { 'Bmil', 'buff' }, + -- 天神下凡 + AHav = { 'BHav', 'buff' }, + -- 火凤凰变形 + Aphx = { 'Bphx', 'buff' }, + -- 凤凰火焰 + Apxf = { 'Bpxf', 'buff' }, + -- 反召唤建筑 + Auns = { 'Buns', 'buff' }, + -- 静止陷阱 + Asta = { 'Bstt', 'buff' }, + -- 运输船保持原位 + Achd = { 'Bchd', 'buff' }, +} + +local slk +local buffmap +local search +local mark_known_type +local mark_known_type_no_child +local report_once = {} +local current_root = {'', '%s%s'} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function get_displayname_by_id(slk, id) + local o = slk.ability[id] + or slk.unit[id] + or slk.buff[id] + or slk.item[id] + or slk.destructable[id] + or slk.doodad[id] + or slk.upgrade[id] + if not o then + return id, '' + end + return get_displayname(o) +end + +local function format_marktip(slk, marktip) + return marktip[2]:format(get_displayname_by_id(slk, marktip[1])) +end + +local function split(str) + local r = {} + str:gsub('[^,]+', function (w) r[#r+1] = w end) + return r +end + +local function report(type, id) + if not report_once[type] then + report_once[type] = {} + end + if report_once[type][id] then + return + end + report_once[type][id] = true + message('-report|4简化', type, id) + message('-tip', format_marktip(slk, current_root)) +end + +local function mark_value(slk, type, value) + if type == 'upgrade,unit' then + if std_type(value) == 'string' then + for _, name in ipairs(split(value)) do + if not mark_known_type_no_child(slk, 'unit', name) then + if not mark_known_type_no_child(slk, 'upgrade', name) then + if not mark_known_type_no_child(slk, 'misc', name) then + report('简化时没有找到对象:', name) + end + end + end + end + else + if not mark_known_type_no_child(slk, 'unit', value) then + if not mark_known_type_no_child(slk, 'upgrade', value) then + if not mark_known_type_no_child(slk, 'misc', value) then + report('简化时没有找到对象:', value) + end + end + end + end + return + end + if std_type(value) == 'string' then + for _, name in ipairs(split(value)) do + if not mark_known_type(slk, type, name) then + report('简化时没有找到对象:', name) + end + end + else + if not mark_known_type(slk, type, value) then + report('简化时没有找到对象:', value) + end + end +end + +local function mark_list(slk, o, list) + if not list then + return + end + for key, type in pairs(list) do + local value = o[key] + if not value then + elseif std_type(value) == 'table' then + for _, name in ipairs(value) do + mark_value(slk, type, name) + end + else + mark_value(slk, type, value) + end + end +end + +function mark_known_type_no_child(slk, type, name) + local o = slk[type][name] + if not o then + local o = slk.txt[name:lower()] + if o then + o._mark = current_root + report('引用未分类对象: ', ('%s 期望分类:%s'):format(name:lower(), type)) + return true + end + return false + end + if o._mark then + return true + end + o._mark = current_root + return true +end + +local function mark_known_type2(slk, type, name) + local o = slk[type][name] + if not o then + local o = slk.txt[name:lower()] + if o then + o._mark = current_root + report('引用未分类对象: ', ('%s 期望分类:%s'):format(name:lower(), type)) + return true + end + return false + end + if not o._mark then + o._mark = current_root + end + if o._mark_child then + return true + end + o._mark_child = true + mark_list(slk, o, search[type]) + if o._code then + mark_list(slk, o, search[o._code]) + local marklist = mustmark[o._code] + if marklist then + if not mark_known_type(slk, marklist[2], marklist[1]) then + report('简化时没有找到对象:', marklist[1]) + end + end + end + return true +end + +function mark_known_type(slk, type, name) + if type == 'buff' then + local m = buffmap[name:lower()] + if m then + for _, name in ipairs(m) do + mark_known_type2(slk, type, name) + end + return true + end + return false + else + return mark_known_type2(slk, type, name) + end +end + +local function mark_mustuse(slk) + for type, list in pairs(mustuse) do + for _, name in ipairs(list) do + current_root = {name, "必须保留的'%s'[%s]引用了它"} + if not mark_known_type(slk, type, name) then + report('简化时没有找到对象:', name) + end + end + end +end + +local function mark(slk, name) + mark_known_type(slk, 'ability', name) + mark_known_type(slk, 'unit', name) + mark_known_type(slk, 'buff', name) + mark_known_type(slk, 'item', name) + mark_known_type(slk, 'destructable', name) + mark_known_type(slk, 'doodad', name) + mark_known_type(slk, 'upgrade', name) +end + +local function mark_jass(slk, list, flag) + if list then + for name in pairs(list) do + current_root = {name, "脚本里的'%s'[%s]引用了它"} + mark(slk, name) + end + end + local maptile = slk.w3i and slk.w3i['地形']['地形类型'] or '*' + for _, obj in pairs(slk.unit) do + -- 随机建筑 + if flag.building and obj.isbldg == 1 and obj.nbrandom == 1 then + if obj.race == 'creeps' and obj.tilesets and (obj.tilesets == '*' or obj.tilesets:find(maptile)) then + current_root = {obj._id, "保留的野怪建筑'%s'[%s]引用了它"} + mark_known_type(slk, 'unit', obj._id) + end + end + -- 随机单位 + if flag.creeps and obj.isbldg == 0 then + if obj.race == 'creeps' and obj.tilesets and (obj.tilesets == '*' or obj.tilesets:find(maptile)) and obj.special == 0 then + current_root = {obj._id, "保留的野怪单位'%s'[%s]引用了它"} + mark_known_type(slk, 'unit', obj._id) + end + end + end + if flag.item then + for _, obj in pairs(slk.item) do + if obj.pickrandom == 1 then + current_root = {obj._id, "保留的随机物品'%s'[%s]引用了它"} + mark_known_type(slk, 'item', obj._id) + end + end + end +end + +local function mark_marketplace(slk, flag) + if not flag.marketplace or flag.item then + return + end + for _, obj in pairs(slk.unit) do + -- 是否使用了市场 + if obj._mark and obj._name == 'marketplace' then + search_marketplace = true + message('-report|4简化', '保留市场物品') + message('-tip', ("使用了市场'%s'[%s]"):format(obj.name, obj._id)) + for _, obj in pairs(slk.item) do + if obj.pickrandom == 1 and obj.sellable == 1 then + current_root = {obj._id, "保留的市场物品'%s'[%s]引用了它"} + mark_known_type(slk, 'item', obj._id) + end + end + break + end + end +end + +local function mark_doo(w2l, archive, slk) + local destructable, doodad = w2l:backend_searchdoo(archive) + if not destructable then + return + end + for name in pairs(destructable) do + current_root = {name, "地图上放置的'%s'[%s]引用了它"} + if not mark_known_type(slk, 'destructable', name) then + mark_known_type(slk, 'doodad', name) + end + end + for name in pairs(doodad) do + current_root = {name, "地图上放置的'%s'[%s]引用了它"} + mark_known_type(slk, 'doodad', name) + end +end + +local function mark_lua(w2l, archive, slk) + local buf = archive:get('reference.lua') + if not buf then + return + end + local env = { + archive = archive, + assert = assert, + error = error, + ipairs = ipairs, + load = load, + pairs = pairs, + next = next, + print = print, + select = select, + tonumber = tonumber, + tostring = tostring, + type = type, + pcall = pcall, + xpcall = xpcall, + math = math, + string = string, + table = table, + utf8 = utf8, + } + local f, e = load(buf, 'reference.lua', 't', env) + if not f then + report('简化时没有找到对象:', e) + return + end + local suc, list = pcall(f) + if not suc then + report('简化时没有找到对象:', list) + return + end + if type(list) ~= 'table' then + return + end + for name in pairs(list) do + current_root = {name, "reference.lua指定保留的'%s'[%s]引用了它"} + mark(slk, name) + end +end + +return function(w2l, archive, slk_) + slk = slk_ + if not search then + search = w2l:parse_lni(assert(io.load(w2l.defined / 'search.ini'))) + end + buffmap = {} + for i in pairs(slk.buff) do + local li = i:lower() + local m = buffmap[li] + if m then + m[#m+1] = i + else + buffmap[li] = {i} + end + end + slk.mustuse = mustuse + local jasslist, jassflag = w2l:backend_searchjass(archive) + mark_mustuse(slk) + mark_jass(slk, jasslist, jassflag) + mark_doo(w2l, archive, slk) + mark_lua(w2l, archive, slk) + mark_marketplace(slk, jassflag) +end diff --git a/plugin/w3x2lni/script/slk/backend_misc.lua b/plugin/w3x2lni/script/slk/backend_misc.lua new file mode 100644 index 0000000..2897ad5 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_misc.lua @@ -0,0 +1,75 @@ +local table_concat = table.concat +local table_sort = table.sort +local next = next +local pairs = pairs + +local metadata + +local function add_data(name, lkey, meta, obj, data) + if not obj[lkey] then + return + end + local key = meta.field + data[key] = obj[lkey] +end + +local function add_obj(name, obj, data) + if not obj._mark then + return + end + local new_obj = {} + + if metadata[name] then + for lkey, meta in pairs(metadata[name]) do + add_data(name, lkey, meta, obj, new_obj) + end + end + + if next(new_obj) then + data[name] = new_obj + end +end + +local function convert(misc) + local data = {} + for name, obj in pairs(misc) do + add_obj(name, obj, data) + end + return data +end + +local function concat_obj(name, obj, lines) + local keys = {} + for key in pairs(obj) do + keys[#keys+1] = key + end + table_sort(keys) + + lines[#lines+1] = '[' .. name .. ']' + for _, key in ipairs(keys) do + local value = obj[key] + lines[#lines+1] = key .. '=' .. value + end +end + +local function concat(misc) + local lines = {} + local names = {} + for name in pairs(misc) do + names[#names+1] = name + end + table_sort(names) + + for _, name in ipairs(names) do + concat_obj(name, misc[name], lines) + end + + return table_concat(lines, '\r\n') +end + +return function(w2l, misc, txt) + metadata = w2l:metadata() + local data = convert(misc) + local buf = concat(data) + return buf +end diff --git a/plugin/w3x2lni/script/slk/backend_obj.lua b/plugin/w3x2lni/script/slk/backend_obj.lua new file mode 100644 index 0000000..870cc27 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_obj.lua @@ -0,0 +1,251 @@ +local w3xparser = require 'w3xparser' +local progress = require 'progress' + +local table_insert = table.insert +local table_sort = table.sort +local table_concat = table.concat +local string_char = string.char +local math_type = math.type +local math_floor = math.floor +local wtonumber = w3xparser.tonumber +local type = type +local pairs = pairs +local setmetatable = setmetatable +local os_clock = os.clock + +local w2l +local has_level +local metadata +local hexs +local wts +local ttype + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function format_value(value) + if type(value) == 'table' then + local tbl = {} + for i = 1, 4 do + if value[i] then + tbl[i] = ('[%d]: %s'):format(i, tostring(value[i]):sub(1, 25):gsub('\r\n', ' ')) + end + end + return table_concat(tbl, ' ') + else + return tostring(tip):sub(1, 100):gsub('\r\n', ' ') + end +end + +local function report(reason, obj, key, tip) + message('-report|6%s', ('%s %s %s'):format(reason, displaytype[ttype], get_displayname(obj))) + message('-tip', ('[%s]: %s'):format(key, format_value(tip))) +end + +local function write(format, ...) + hexs[#hexs+1] = (format):pack(...) +end + +local function write_value(meta, level, value) + local id = meta.id + local tp = meta.type + write('c4l', id .. ('\0'):rep(4 - #id), tp) + if has_level then + write('l', level) + write('l', meta.data or 0) + end + if tp == 0 then + if math_type(value) ~= 'integer' then + value = math_floor(wtonumber(value)) + end + write('l', value) + elseif tp == 1 or tp == 2 then + if type(value) ~= 'number' then + value = wtonumber(value) + end + write('f', value) + else + if #value > 1023 then + value = w2l:save_wts(wts, value, '物编里的文本长度超过1023字符') + end + write('z', value) + end + write('c4', '\0\0\0\0') +end + +local function write_data(key, data, meta) + if meta['repeat'] then + if type(data) ~= 'table' then + data = {data} + end + end + if type(data) == 'table' then + local max_level = 0 + for level in pairs(data) do + if level > max_level then + max_level = level + end + end + for level = 1, max_level do + if data[level] then + write_value(meta, level, data[level]) + end + end + else + write_value(meta, 0, data) + end +end + +local function write_object(chunk, name, obj) + if #name ~= 4 then + message('-report|6无效的物编对象', ('[%s] %s'):format(name, '对象ID不合法')) + return + end + local keys = {} + local metas = {} + for key in pairs(obj) do + if key:sub(1, 1) ~= '_' then + keys[#keys+1] = key + end + end + local code = obj._code + if metadata[ttype] then + for key, meta in pairs(metadata[ttype]) do + metas[key] = meta + end + end + if metadata[code] then + for key, meta in pairs(metadata[code]) do + metas[key] = meta + end + end + table_sort(keys) + + local count = 0 + for _, key in ipairs(keys) do + local data = obj[key] + if data then + if type(data) == 'table' then + for _ in pairs(data) do + count = count + 1 + end + else + count = count + 1 + end + end + end + + local parent = obj._parent + if name == parent or obj._slk then + write('c4', name) + write('c4', '\0\0\0\0') + else + write('c4', parent) + write('c4', name) + end + write('l', count) + for _, key in ipairs(keys) do + local data = obj[key] + if data then + if metas[key] then + write_data(key, obj[key], metas[key]) + else + report('-report|6无效的物编数据', obj, key, obj[key]) + end + end + end +end + +local function write_chunk(names, data, n, max) + local clock = os_clock() + write('l', #names) + for i, name in ipairs(names) do + write_object(data, name, data[name]) + if os_clock() - clock > 0.1 then + clock = os_clock() + progress((i+n) / max) + message(('正在转换%s: [%s] (%d/%d)'):format(ttype, data[name]._id, i+n, max)) + end + end +end + +local function write_head() + write('l', 2) +end + +local function is_enable_obj(obj, remove_unuse_object) + if remove_unuse_object and not obj._mark then + return false + end + if not obj._slk and obj._id ~= obj._parent then + return true + end + for key, value in pairs(obj) do + if key:sub(1, 1) ~= '_' then + if type(value) == 'table' then + if next(value) then + return true + end + else + return true + end + end + end + return false +end + +local function sort_chunk(chunk, remove_unuse_object) + local origin = {} + local user = {} + for name, obj in pairs(chunk) do + if is_enable_obj(obj, remove_unuse_object) then + local parent = obj._parent + if name == parent or obj._slk then + origin[#origin+1] = name + else + user[#user+1] = name + end + end + end + table_sort(origin) + table_sort(user) + return origin, user +end + +return function (w2l_, type, data, wts_) + w2l = w2l_ + wts = wts_ + ttype = type + has_level = w2l.info.key.max_level[type] + metadata = w2l:metadata() + + local origin_id, user_id = sort_chunk(data, w2l.config.remove_unuse_object) + local max = #origin_id + #user_id + if max == 0 then + return + end + hexs = {} + write_head() + write_chunk(origin_id, data, 0, max) + write_chunk(user_id, data, #origin_id, max) + return table_concat(hexs), report +end diff --git a/plugin/w3x2lni/script/slk/backend_optimizejass.lua b/plugin/w3x2lni/script/slk/backend_optimizejass.lua new file mode 100644 index 0000000..13913bc --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_optimizejass.lua @@ -0,0 +1,49 @@ +local parser = require 'parser.init' +local optimizer = require 'optimizer.init' + +local function create_report(report, title, type, max) + local msgs = report[type] + if not msgs then + return + end + local fix = 0 + if #msgs > max then + fix = math.random(0, #msgs - max) + end + if title then + message('-report|8脚本优化', ('%d.%s 总计:%d'):format(title, type, #msgs)) + end + for i = 1, max do + local msg = msgs[i+fix] + if msg then + message('-report|8脚本优化', msg[1]) + message('-tip', msg[2]) + end + end +end + +return function (w2l, archive) + local common = archive:get 'common.j' or archive:get 'scripts\\common.j' or io.load(w2l.mpq / 'scripts' / 'common.j') + local blizzard = archive:get 'blizzard.j' or archive:get 'scripts\\blizzard.j' or io.load(w2l.mpq / 'scripts' / 'blizzard.j') + local war3map = archive:get 'war3map.j' or archive:get 'scripts\\war3map.j' + local ast + ast = parser(common, 'common.j', ast) + ast = parser(blizzard, 'blizzard.j', ast) + ast = parser(war3map, 'war3map.j', ast) + + local buf, report = optimizer(ast, w2l.config) + + if archive:get 'war3map.j' then + archive:set('war3map.j', buf) + else + archive:set('scripts\\war3map.j', buf) + end + + create_report(report, nil, '脚本混淆失败', 1) + create_report(report, nil, '没有混淆函数名', 1) + create_report(report, nil, '强制引用全部函数', 1) + create_report(report, 1, '引用函数', 5) + create_report(report, 2, '未引用的全局变量', 20) + create_report(report, 3, '未引用的函数', 20) + create_report(report, 4, '未引用的局部变量', 20) +end diff --git a/plugin/w3x2lni/script/slk/backend_searchdoo.lua b/plugin/w3x2lni/script/slk/backend_searchdoo.lua new file mode 100644 index 0000000..ce31c2a --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_searchdoo.lua @@ -0,0 +1,47 @@ +local unpack_buf +local unpack_pos + +local function set_pos(...) + unpack_pos = select(-1, ...) + return ... +end + +local function unpack(str) + return set_pos(str:unpack(unpack_buf, unpack_pos)) +end + +return function(w2l, archive) + local buf = archive:get('war3map.doo') + if not buf then + return + end + local destructable = {} + local doodad = {} + unpack_buf = buf + unpack_pos = 1 + local _, version, _, n = unpack 'llll' + if version < 8 then + for i = 1, n do + local id = unpack 'c4lfffffffbbl' + destructable[id] = true + end + else + for i = 1, n do + local id = unpack 'c4lfffffffbbl' + destructable[id] = true + for j = 1, unpack 'l' do + -- 因为会生成jass代码,所以这部分引用我们可以不分析 + for k = 1, unpack 'l' do + unpack 'll' + end + end + unpack 'l' + end + end + local _, n = unpack 'll' + for i = 1, n do + local id = unpack 'c4lll' + doodad[id] = true + end + return destructable, doodad +end diff --git a/plugin/w3x2lni/script/slk/backend_searchjass.lua b/plugin/w3x2lni/script/slk/backend_searchjass.lua new file mode 100644 index 0000000..d26a991 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_searchjass.lua @@ -0,0 +1,141 @@ +local lpeg = require 'lpeg' +local w3xparser = require 'w3xparser' +local wtonumber = w3xparser.tonumber +local ids +local marks +local line_count +local min = ('>I4'):unpack 'A000' + +local extra_func = { + MeleeStartingUnitsHuman = {'hpea', 'Hamg', 'Hpal', 'Hblm', 'Hmkg', 'htow', 'Amic', 'stwp'}, + MeleeStartingUnitsOrc = {'opeo', 'Obla', 'Ofar', 'ogre', 'Otch', 'Oshd', 'stwp'}, + MeleeStartingUnitsUndead = {'Udre', 'Udea', 'Ucrl', 'uaco', 'unpl', 'ugho', 'Ulic', 'stwp'}, + MeleeStartingUnitsNightElf = {'etol', 'Edem', 'ewsp', 'Ewar', 'Emoo', 'Ekee', 'stwp'}, + MeleeStartingUnitsUnknownRace = {'nshe'}, + MeleeStartingUnitsForPlayer = {'hpea', 'Hamg', 'Hpal', 'Hblm', 'Hmkg', 'htow', 'Amic', 'opeo', 'Obla', 'Ofar', 'ogre', 'Otch', 'Oshd', 'Udre', 'Udea', 'Ucrl', 'uaco', 'unpl', 'ugho', 'Ulic', 'etol', 'Edem', 'ewsp', 'Ewar', 'Emoo', 'Ekee', 'stwp'}, + MeleeStartingUnits = {'hpea', 'Hamg', 'Hpal', 'Hblm', 'Hmkg', 'htow', 'Amic', 'opeo', 'Obla', 'Ofar', 'ogre', 'Otch', 'Oshd', 'Udre', 'Udea', 'Ucrl', 'uaco', 'unpl', 'ugho', 'Ulic', 'etol', 'Edem', 'ewsp', 'Ewar', 'Emoo', 'Ekee', 'nshe', 'stwp'}, + + MeleeGrantItemsToHero = {'stwp'}, + MeleeGrantItemsToTrainedHero = {'stwp'}, + MeleeGrantItemsToHiredHero = {'stwp'}, + MeleeGrantHeroItems = {'stwp'}, + MeleeRandomHeroLoc = {'stwp'}, + + ChangeElevatorWallBlocker = {'DTep'}, + NearbyElevatorExistsEnum = {'DTrx', 'DTrf'}, + NearbyElevatorExists = {'DTrx', 'DTrf'}, + ChangeElevatorWalls = {'DTep', 'DTrx', 'DTrf'}, +} + +local need_mark = { + ChooseRandomCreep = 'creeps', + ChooseRandomCreepBJ = 'creeps', + ChooseRandomNPBuilding = 'building', + ChooseRandomNPBuildingBJ = 'building', + ChooseRandomItem = 'item', + ChooseRandomItemBJ = 'item', + ChooseRandomItemEx = 'item', + ChooseRandomItemExBJ = 'item', + UpdateEachStockBuildingEnum = 'item', + UpdateEachStockBuilding = 'marketplace', + PerformStockUpdates = 'marketplace', + StartStockUpdates = 'marketplace', + InitNeutralBuildings = 'marketplace', + InitBlizzard = 'marketplace', +} + +local function add_id(id) + if #id ~= 4 then + return + end + if id:find '%W' then + return + end + ids[id] = true +end + +local function fint1(str) + local int = wtonumber(str) + if int < min then + return + end + add_id(('>I4'):pack(int)) +end + +local function fint3(str) + fint1('0x'..str:sub(2)) +end + +local function fint4(str) + add_id(str:sub(2, -2)) +end + +local function fbj(id) + if extra_func[id] then + for _, name in ipairs(extra_func[id]) do + ids[name] = true + end + end + if need_mark[id] then + if need_mark[id] == 'creeps' and not marks.creeps then + message('-report|4简化', '保留野怪单位') + message('-tip', ("脚本里的'%s'引用了它"):format(id)) + end + if need_mark[id] == 'building' and not marks.building then + message('-report|4简化', '保留野怪建筑') + message('-tip', ("脚本里的'%s'引用了它"):format(id)) + end + if need_mark[id] == 'item' and not marks.item then + message('-report|4简化', '保留可随机物品') + message('-tip', ("脚本里的'%s'引用了它"):format(id)) + end + marks[need_mark[id]] = true + end +end + +lpeg.locale(lpeg) +local S = lpeg.S +local P = lpeg.P +local R = lpeg.R + +local nl1 = P'\r\n' + S'\r\n' +local com = P'//' * (1-nl1)^0 +local sp = (S' \t' + P'\xEF\xBB\xBF' + com)^0 +local sps = (S' \t' + P'\xEF\xBB\xBF' + com)^1 +local nl = com^0 * nl1 / function() line_count = line_count + 1 end +local ign = sps + nl +local quo = P'"' +local iquo = P"'" +local esc = P'\\' +local int1 = (P'-' * sp)^-1 * (P'0' + R'19' * R'09'^0) / fint1 +local int2 = P'0' * S'xX' * R('af', 'AF', '09')^1 / fint1 +local int3 = P'$' * R('af', 'AF', '09')^1 / fint3 +local int_ = esc * P(1) + (1-iquo) +local int4 = iquo * int_^1^-4 * iquo / fint4 +local int = int4 + int3 + int2 + int1 +local real = (P'-' * sp)^-1 * (P'.' * R'09'^1 + R'09'^1 * P'.' * R'09'^0) +local str1 = esc * P(1) + (1-quo) +local str = quo * (nl1 + str1)^0 * quo +local id = R('az', 'AZ') * R('az', 'AZ', '09', '__')^0 / fbj + +local function err(str) + return ((1-nl)^1 + P(1)) / function(c) error(('line[%d]: %s:\n===========================\n%s\n==========================='):format(line_count, str, c)) end +end + +local word = sp * (real + int + str + id) * sp +local pjass = (ign + word + S'=+-*/> new_count or (count == new_count and parent > try_name) then + count = new_count + parent = try_name + end + find_times = find_times - 1 + if find_times == 0 then + break + end + end + else + parent = maybe + end + + obj._parent = parent +end + +local function processing(w2l, type, chunk) + local default = w2l:get_default()[type] + local config = w2l.config + local names = {} + for name in pairs(chunk) do + names[#names+1] = name + end + table.sort(names) + + revert_list = nil + unit_list = nil + progress(0.1) + + progress:start(1) + local clock = os_clock() + for i, name in ipairs(names) do + parse_obj(name, chunk[name], default, config, type) + if os_clock() - clock >= 0.1 then + clock = os_clock() + message(('搜索最优模板[%s] (%d/%d)'):format(chunk[name]._id, i, #names)) + progress(i / #names) + end + end + progress:finish() +end + +return function (w2l_, slk) + w2l = w2l_ + local count = 0 + for type, name in pairs(w2l.info.obj) do + count = count + 1 + progress:start(count / 7) + processing(w2l, type, slk[type]) + progress:finish() + end +end diff --git a/plugin/w3x2lni/script/slk/backend_skin.lua b/plugin/w3x2lni/script/slk/backend_skin.lua new file mode 100644 index 0000000..ee23430 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_skin.lua @@ -0,0 +1,34 @@ +local function add_obj(w2l, name, obj, lines, wts) + local keys = {} + for key in pairs(obj) do + keys[#keys+1] = key + end + table.sort(keys) + + lines[#lines+1] = '[' .. name .. ']' + for _, key in ipairs(keys) do + local value = obj[key] + value = w2l:load_wts(wts, value):gsub('\r\n', '|n'):gsub('[\r\n]', '|n') + lines[#lines+1] = key .. '=' .. value + end +end + +local function convert(w2l, skin, wts) + local lines = {} + local names = {} + for name in pairs(skin) do + names[#names+1] = name + end + table.sort(names) + + for _, name in ipairs(names) do + add_obj(w2l, name, skin[name], lines, wts) + end + + return table.concat(lines, '\r\n') +end + +return function(w2l, skin, wts) + local buf = convert(w2l, skin, wts) + return buf +end diff --git a/plugin/w3x2lni/script/slk/backend_slk.lua b/plugin/w3x2lni/script/slk/backend_slk.lua new file mode 100644 index 0000000..e45a465 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_slk.lua @@ -0,0 +1,341 @@ +local w3xparser = require 'w3xparser' +local progress = require 'progress' + +local table_concat = table.concat +local ipairs = ipairs +local string_char = string.char +local pairs = pairs +local type = type +local table_sort = table.sort +local table_insert = table.insert +local math_floor = math.floor +local wtonumber = w3xparser.tonumber +local math_type = math.type +local os_clock = os.clock +local tonumber = tonumber + +local report +local slk +local w2l +local metadata +local keys +local lines +local cx +local cy +local remove_unuse_object +local slk_type +local object +local default + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return displaytype[o._type], o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function report_failed(obj, key, tip, info) + report.n = report.n + 1 + if not report[tip] then + report[tip] = {} + end + if report[tip][obj._id] then + return + end + local type, id, name = get_displayname(obj) + report[tip][obj._id] = { + ("%s %s %s"):format(type, id, name), + ("%s %s"):format(key, info), + } +end + +local slk_keys = { + ['units\\abilitydata.slk'] = { + 'alias','code','Area1','Area2','Area3','Area4','BuffID1','BuffID2','BuffID3','BuffID4','Cast1','Cast2','Cast3','Cast4','checkDep','Cool1','Cool2','Cool3','Cool4','Cost1','Cost2','Cost3','Cost4','DataA1','DataA2','DataA3','DataA4','DataB1','DataB2','DataB3','DataB4','DataC1','DataC2','DataC3','DataC4','DataD1','DataD2','DataD3','DataD4','DataE1','DataE2','DataE3','DataE4','DataF1','DataF2','DataF3','DataF4','DataG1','DataG2','DataG3','DataG4','DataH1','DataH2','DataH3','DataH4','DataI1','DataI2','DataI3','DataI4','Dur1','Dur2','Dur3','Dur4','EfctID1','EfctID2','EfctID3','EfctID4','HeroDur1','HeroDur2','HeroDur3','HeroDur4','levels','levelSkip','priority','reqLevel','Rng1','Rng2','Rng3','Rng4','targs1','targs2','targs3','targs4','UnitID1','UnitID2','UnitID3','UnitID4', + }, + ['units\\abilitybuffdata.slk'] = { + 'alias', + }, + ['units\\destructabledata.slk'] = { + 'DestructableID','armor','cliffHeight','colorB','colorG','colorR','deathSnd','fatLOS','file','fixedRot','flyH','fogRadius','fogVis','HP','lightweight','maxPitch','maxRoll','maxScale','minScale','MMBlue','MMGreen','MMRed','Name','numVar','occH','pathTex','pathTexDeath','portraitmodel','radius','selcircsize','selectable','shadow','showInMM','targType','texFile','texID','tilesetSpecific','useMMColor','walkable', + }, + ['units\\itemdata.slk'] = { + 'itemID','abilList','armor','class','colorB','colorG','colorR','cooldownID','drop','droppable','file','goldcost','HP','ignoreCD','Level','lumbercost','morph','oldLevel','pawnable','perishable','pickRandom','powerup','prio','scale','sellable','stockMax','stockRegen','stockStart','usable','uses', + }, + ['units\\upgradedata.slk'] = { + 'upgradeid','base1','base2','base3','base4','class','code1','code2','code3','code4','effect1','effect2','effect3','effect4','global','goldbase','goldmod','inherit','lumberbase','lumbermod','maxlevel','mod1','mod2','mod3','mod4','timebase','timemod', 'used', + }, + ['units\\unitabilities.slk'] = { + 'unitAbilID','abilList','auto','heroAbilList', + }, + ['units\\unitbalance.slk'] = { + 'unitBalanceID','AGI','AGIplus','bldtm','bountydice','bountyplus','bountysides','collision','def','defType','defUp','fmade','fused','goldcost','goldRep','HP','INT','INTplus','isbldg','level','lumberbountydice','lumberbountyplus','lumberbountysides','lumbercost','lumberRep','mana0','manaN','maxSpd','minSpd','nbrandom','nsight','preventPlace','Primary','regenHP','regenMana','regenType','reptm','repulse','repulseGroup','repulseParam','repulsePrio','requirePlace','sight','spd','stockMax','stockRegen','stockStart','STR','STRplus','tilesets','type','upgrades', + }, + ['units\\unitdata.slk'] = { + 'unitID','buffRadius','buffType','canBuildOn','canFlee','canSleep','cargoSize','death','deathType','fatLOS','formation','isBuildOn','moveFloor','moveHeight','movetp','nameCount','orientInterp','pathTex','points','prio','propWin','race','requireWaterRadius','targType','turnRate', + }, + ['units\\unitui.slk'] = { + 'unitUIID','name','armor','blend','blue','buildingShadow','customTeamColor','elevPts','elevRad','file','fileVerFlags','fogRad','green','hideHeroBar','hideHeroDeathMsg','hideHeroMinimap','hideOnMinimap','maxPitch','maxRoll','modelScale','nbmmIcon','occH','red','run','scale','scaleBull','selCircOnWater','selZ','shadowH','shadowOnWater','shadowW','shadowX','shadowY','teamColor','tilesetSpecific','uberSplat','unitShadow','unitSound','walk', + }, + ['units\\unitweapons.slk'] = { + 'unitWeapID','acquire','atkType1','atkType2','backSw1','backSw2','castbsw','castpt','cool1','cool2','damageLoss1','damageLoss2','dice1','dice2','dmgplus1','dmgplus2','dmgpt1','dmgpt2','dmgUp1','dmgUp2','Farea1','Farea2','Harea1','Harea2','Hfact1','Hfact2','impactSwimZ','impactZ','launchSwimZ','launchX','launchY','launchZ','minRange','Qarea1','Qarea2','Qfact1','Qfact2','rangeN1','rangeN2','RngBuff1','RngBuff2','showUI1','showUI2','sides1','sides2','spillDist1','spillDist2','spillRadius1','spillRadius2','splashTargs1','splashTargs2','targCount1','targCount2','targs1','targs2','weapsOn','weapTp1','weapTp2','weapType1','weapType2', + }, + ['doodads\\doodads.slk'] = { + 'doodID','file','Name','doodClass','soundLoop','selSize','defScale','minScale','maxScale','maxPitch','maxRoll','visRadius','walkable','numVar','floats','shadow','showInFog','animInFog','fixedRot','pathTex','showInMM','useMMColor','MMRed','MMGreen','MMBlue','vertR01','vertG01','vertB01','vertR02','vertG02','vertB02','vertR03','vertG03','vertB03','vertR04','vertG04','vertB04','vertR05','vertG05','vertB05','vertR06','vertG06','vertB06','vertR07','vertG07','vertB07','vertR08','vertG08','vertB08','vertR09','vertG09','vertB09','vertR10','vertG10','vertB10', + }, +} + +local function add_end() + lines[#lines+1] = 'E' +end + +local function add(x, y, k) + local strs = {} + strs[#strs+1] = 'C' + if x ~= cx then + cx = x + strs[#strs+1] = 'X' .. x + end + if y ~= cy then + cy = y + strs[#strs+1] = 'Y' .. y + end + if type(k) == 'string' then + k = ('"%s"'):format(k:gsub('\r\n', '|n'):gsub('[\r\n]', '|n')) + elseif math_type(k) == 'float' then + k = ('%.4f'):format(k):gsub('[0]+$', ''):gsub('%.$', '.0') + end + strs[#strs+1] = 'K' .. k + lines[#lines+1] = table_concat(strs, ';') +end + +local function add_values(names, skeys, slk_name) + local clock = os_clock() + for y, name in ipairs(names) do + local obj = slk[name] + for x, key in ipairs(skeys) do + local value = obj[key] + if value then + add(x, y+1, value) + elseif slk_name == 'units\\unitabilities.slk' and key == 'auto' + or slk_name == 'units\\unitbalance.slk' and (key == 'Primary' or key == 'preventPlace' or key == 'requirePlace') + or slk_name == 'units\\unitui.slk' and key == 'file' + or slk_name == 'units\\destructabledata.slk' and key == 'texFile' + or slk_name == 'units\\abilitydata.slk' and (key == 'targs1' or key == 'targs2' or key == 'targs3' or key == 'targs4') + then + add(x, y+1, '_') + elseif slk_name == 'units\\upgradedata.slk' and key == 'used' then + add(x, y+1, 1) + end + end + if os_clock() - clock > 0.1 then + clock = os_clock() + progress(y / #names) + message(('正在转换: [%s] (%d/%d)'):format(name, y, #names)) + end + end +end + +local function add_title(names) + for x, name in ipairs(names) do + add(x, 1, name) + end +end + +local function add_head(names, skeys) + lines[#lines+1] = 'ID;PWXL;N;E' + lines[#lines+1] = ('B;X%d;Y%d;D0'):format(#skeys, #names+1) +end + +local function get_names() + local names = {} + for name in pairs(slk) do + names[#names+1] = name + end + table_sort(names, function(name1, name2) + if default[name1] and not default[name2] then + return true + elseif not default[name1] and default[name2] then + return false + else + return name1 < name2 + end + end) + return names +end + +local function convert_slk(slk_name) + local names = get_names() + local skeys = slk_keys[slk_name] + add_head(names, skeys) + add_title(skeys) + add_values(names, skeys, slk_name) + add_end() +end + +local function to_type(tp, value) + if tp == 0 then + if not value or value == 0 then + return nil + end + return math_floor(wtonumber(value)) + elseif tp == 1 or tp == 2 then + if not value or value == 0 then + return nil + end + return wtonumber(value) + 0.0 + elseif tp == 3 then + if not value then + return nil + end + if value == '' then + return nil + end + value = tostring(value) + if not value:match '[^ %-%_]' then + return nil + end + if value:match '^%.[mM][dD][lLxX]$' then + return nil + end + return value + end +end + +local function is_usable_string(str) + local char = str:sub(1, 1) + if char == '-' or tonumber(char) then + return false + end + if char == '.' and tonumber(str:sub(2, 2)) then + return false + end + return true +end + +local function load_data(meta, obj, key, slk_data, obj_data) + if not obj[key] then + return + end + local displaykey = meta.field + local tp = meta.type + if type(obj[key]) == 'table' then + local over_level + obj_data[key] = {} + if slk_type == 'doodad' then + for i = 11, #obj[key] do + if obj[key][i] ~= obj[key][10] then + obj_data[key][i] = obj[key][i] + over_level = true + end + end + for i = 1, 10 do + local value = to_type(tp, obj[key][i]) + if value and tp == 3 and not is_usable_string(value) then + obj_data[key][i] = value + report_failed(obj, displaykey, '字符串可以被转换为数字', value) + else + slk_data[('%s%02d'):format(displaykey, i)] = value + end + end + else + for i = 5, #obj[key] do + if obj[key][i] ~= obj[key][4] then + obj_data[key][i] = obj[key][i] + over_level = true + end + end + for i = 1, 4 do + local value = to_type(tp, obj[key][i]) + if value and tp == 3 and not is_usable_string(value) then + obj_data[key][i] = value + report_failed(obj, displaykey, '字符串可以被转换为数字', value) + else + slk_data[displaykey..i] = value + end + end + end + if over_level then + report_failed(obj, displaykey, '数据超过了4级', '') + end + else + local value = to_type(tp, obj[key]) + if value and tp == 3 and not is_usable_string(value) then + obj_data[key] = value + report_failed(obj, displaykey, '字符串可以被转换为数字', value) + else + slk_data[displaykey] = value + end + end +end + +local function load_obj(id, obj, slk_name) + if remove_unuse_object and not obj._mark then + return nil + end + local obj_data = object[id] + if not obj_data then + obj_data = {} + object[id] = obj_data + obj_data._id = obj._id + obj_data._slk = true + obj_data._code = obj._code + obj_data._mark = obj._mark + obj_data._parent = obj._parent + end + local slk_data = {} + slk_data[slk_keys[slk_name][1]] = id + slk_data['code'] = obj._code + slk_data['name'] = obj._name + obj._slk = true + for _, key in ipairs(keys) do + local meta = metadata[slk_type][key] + load_data(meta, obj, key, slk_data, obj_data) + end + if metadata[obj._code] then + for key, meta in pairs(metadata[obj._code]) do + load_data(meta, obj, key, slk_data, obj_data) + end + end + return slk_data +end + +local function load_chunk(chunk, slk_name) + for id, obj in pairs(chunk) do + slk[id] = load_obj(id, obj, slk_name) + end +end + +return function(w2l_, type, slk_name, chunk, report_, obj) + slk = {} + w2l = w2l_ + report = report_ + object = obj + cx = nil + cy = nil + remove_unuse_object = w2l.config.remove_unuse_object + lines = {} + metadata = w2l:metadata() + keys = w2l:keydata()[slk_name] + default = w2l:get_default()[type] + slk_type = type + + load_chunk(chunk, slk_name) + convert_slk(slk_name) + return table_concat(lines, '\r\n') +end diff --git a/plugin/w3x2lni/script/slk/backend_txt.lua b/plugin/w3x2lni/script/slk/backend_txt.lua new file mode 100644 index 0000000..2cbafbe --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_txt.lua @@ -0,0 +1,370 @@ +local w3xparser = require 'w3xparser' +local progress = require 'progress' + +local table_concat = table.concat +local ipairs = ipairs +local string_char = string.char +local pairs = pairs +local table_sort = table.sort +local table_insert = table.insert +local math_floor = math.floor +local wtonumber = w3xparser.tonumber +local select = select +local table_unpack = table.unpack +local os_clock = os.clock +local type = type +local next = next + +local report +local w2l +local metadata +local keys +local remove_unuse_object +local object + +local function to_type(tp, value) + if tp == 0 then + if not value or value == 0 then + return nil + end + return value + elseif tp == 1 or tp == 2 then + if not value or value == 0 then + return nil + end + return ('%.4f'):format(value):gsub('[0]+$', ''):gsub('%.$', '') + elseif tp == 3 then + if not value then + return + end + if value:find(',', nil, false) then + value = '"' .. value .. '"' + end + return value + end +end + +local function get_index_data(tp, l, n) + local null + for i = n, 1, -1 do + local v = to_type(tp, l[i]) + if v then + l[i] = v + null = '' + else + l[i] = null + end + end + if #l == 0 then + return + end + if tp == 3 then + for i = #l, 2, -1 do + if l[i] == l[i-1] then + l[i] = nil + else + break + end + end + end + return table_concat(l, ',') +end + +local function add_data(obj, meta, value, keyval) + local key = meta.field + if meta.index then + -- TODO: 有点奇怪的写法 + if meta.index == 1 then + local value = get_index_data(meta.type, {obj[meta.key..':1'], obj[meta.key..':2']}, 2) + if not value then + if meta.cantempty then + value = ',' + else + return + end + end + keyval[#keyval+1] = {key:sub(1,-3), value} + end + return + end + if meta.appendindex then + if type(value) == 'table' then + local len = 0 + for n in pairs(value) do + if n > len then + len = n + end + end + if len == 0 then + return + end + if len > 1 then + keyval[#keyval+1] = {key..'count', len} + end + local flag + for i = 1, len do + local key = key + if i > 1 then + key = key .. (i-1) + end + if value[i] then + flag = true + if meta.concat then + keyval[#keyval+1] = {key, value[i]} + else + keyval[#keyval+1] = {key, to_type(meta.type, value[i])} + end + end + end + if not flag then + keyval[#keyval] = nil + end + else + if not value then + return + end + if meta.concat then + keyval[#keyval+1] = {key, value} + else + keyval[#keyval+1] = {key, to_type(meta.type, value)} + end + end + return + end + if meta.concat then + if value and value ~= 0 then + keyval[#keyval+1] = {key, value} + end + return + end + if type(value) == 'table' then + if #value == 0 then + return + end + value = get_index_data(meta.type, value, #value) + else + value = to_type(meta.type, value) + end + if not value or value == '' then + if meta.cantempty then + value = ',' + else + return + end + end + if value then + keyval[#keyval+1] = {key, value} + end +end + +local function create_keyval(obj) + local keyval = {} + for _, key in ipairs(keys) do + if key ~= 'editorsuffix' and key ~= 'editorname' then + add_data(obj, metadata[key], obj[key], keyval) + end + end + return keyval +end + +local function stringify_obj(str, obj) + local keyval = create_keyval(obj) + if #keyval == 0 then + return + end + table_sort(keyval, function(a, b) + return a[1]:lower() < b[1]:lower() + end) + local empty = true + str[#str+1] = ('[%s]'):format(obj._id) + for _, kv in ipairs(keyval) do + local key, val = kv[1], kv[2] + if val ~= '' then + if type(val) == 'string' then + val = val:gsub('\r\n', '|n'):gsub('[\r\n]', '|n') + end + str[#str+1] = key .. '=' .. val + empty = false + end + end + if empty then + str[#str] = nil + else + str[#str+1] = '' + end +end + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname or '' + elseif o._type == 'upgrade' then + name = o.name[1] or '' + else + name = o.name or '' + end + return displaytype[o._type], o._id, (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function report_failed(obj, key, tip, info) + report.n = report.n + 1 + if not report[tip] then + report[tip] = {} + end + if report[tip][obj._id] then + return + end + local type, id, name = get_displayname(obj) + report[tip][obj._id] = { + ("%s %s %s"):format(type, id, name), + ("%s %s"):format(key, info), + } +end + +local function check_string(s) + return type(s) == 'string' and s:find(',', nil, false) and s:find('"', nil, false) +end + +local function prebuild_data(obj, key, r) + if not obj[key] then + return + end + local name = obj._id + if type(obj[key]) == 'table' then + object[name][key] = {} + local t = {} + for k, v in pairs(obj[key]) do + if check_string(v) then + report_failed(obj, metadata[key].field, '文本内容同时包含了逗号和双引号', v) + object[name][key][k] = v + else + t[k] = v + end + end + if not next(object[name][key]) then + object[name][key] = nil + end + r[key] = t + else + if check_string(obj[key]) then + report_failed(obj, metadata[key].field, '文本内容同时包含了逗号和双引号', obj[key]) + object[name][key] = obj[key] + else + r[key] = obj[key] + end + end +end + +local function prebuild_obj(name, obj) + if remove_unuse_object and not obj._mark then + return + end + local r = {} + for _, key in ipairs(keys) do + prebuild_data(obj, key, r) + end + if next(r) then + r._id = obj._id + return r + end +end + +local function prebuild_merge(obj, a, b) + -- TODO: 需要处理a和b类型不一样的情况 + if a._type ~= b._type then + local tp1, _, name1 = get_displayname(a) + local tp2, _, name2 = get_displayname(b) + message('-report|2警告', ('对象的ID冲突[%s]'):format(obj._id)) + message('-tip', ('[%s]%s --> [%s]%s'):format(tp1, name1, tp2, name2)) + end + for k, v in pairs(b) do + if k == '_id' or k == '_type' then + goto CONTINUE + end + if type(v) == 'table' then + if type(a[k]) == 'table' then + for i, iv in pairs(v) do + if a[k][i] ~= iv then + report_failed(obj, metadata[k].field, '文本内容和另一个对象冲突', '--> ' .. a._id) + if obj[k] then + obj[k][i] = iv + else + obj[k] = {[i] = iv} + end + end + end + else + report_failed(obj, metadata[k].field, '文本内容和另一个对象冲突', '--> ' .. a._id) + for i, iv in pairs(v) do + if obj[k] then + obj[k][i] = iv + else + obj[k] = {[i] = iv} + end + end + end + else + if a[k] ~= v then + report_failed(obj, metadata[k].field, '文本内容和另一个对象冲突', '--> ' .. a._id) + obj[k] = v + end + end +::CONTINUE:: + end +end + +local function prebuild(type, input, output, list) + for name, obj in pairs(input) do + local r = prebuild_obj(name, obj) + if r then + r._type = type + name = name:lower() + if output[name] then + prebuild_merge(obj, output[name], r) + else + output[name] = r + list[#list+1] = r._id + end + end + end +end + +local function update_constant(type) + metadata = w2l:metadata()[type] + keys = w2l:keydata()[type] +end + +return function(w2l_, slk, report_, obj) + w2l = w2l_ + report = report_ + remove_unuse_object = w2l.config.remove_unuse_object + local txt = {} + local list = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade'} do + list[type] = {} + object = obj[type] + update_constant(type) + prebuild(type, slk[type], txt, list[type]) + end + local r = {} + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade'} do + update_constant(type) + local str = {} + table_sort(list[type]) + for _, name in ipairs(list[type]) do + stringify_obj(str, txt[name:lower()]) + end + r[type] = table_concat(str, '\r\n') + end + return r +end diff --git a/plugin/w3x2lni/script/slk/backend_txtlni.lua b/plugin/w3x2lni/script/slk/backend_txtlni.lua new file mode 100644 index 0000000..fb9aa91 --- /dev/null +++ b/plugin/w3x2lni/script/slk/backend_txtlni.lua @@ -0,0 +1,74 @@ + +local function sortpairs(t) + local sort = {} + for k, v in pairs(t) do + sort[#sort+1] = {k, v} + end + table.sort(sort, function (a, b) + return a[1] < b[1] + end) + local n = 1 + return function() + local v = sort[n] + if not v then + return + end + n = n + 1 + return v[1], v[2] + end +end + +local function format_value(value) + if tonumber(value) then + return tostring(value) + else + if value:match '[\n\r]' then + return ('[=[\r\n%s]=]'):format(value) + else + return ('%q'):format(value) + end + end +end + +local function maxindex(t) + local i = 0 + for k in pairs(t) do + i = math.max(i, k) + end + return i +end + +local function write_data(f, k, v) + if k:find '[^%w_]' then + k = ('%q'):format(k) + end + if type(v) == 'table' then + local l = {} + for i = 1, maxindex(v) do + l[i] = format_value(v[i]) or '' + end + if #l == 0 then + return + elseif#l == 1 then + f[#f+1] = ('%s = %s'):format(k, l[1]) + else + f[#f+1] = ('%s = {%s}'):format(k, table.concat(l, ', ')) + end + else + f[#f+1] = ('%s = %s'):format(k, format_value(v)) + end +end + +return function (w2l, t) + local f = {} + for i, o in sortpairs(t) do + f[#f+1] = ('[%s]'):format(i) + for k, v in sortpairs(o) do + if k:sub(1, 1) ~= '_' then + write_data(f, k, v) + end + end + f[#f+1] = '' + end + return table.concat(f, '\r\n') +end diff --git a/plugin/w3x2lni/script/slk/frontend.lua b/plugin/w3x2lni/script/slk/frontend.lua new file mode 100644 index 0000000..5306ab3 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend.lua @@ -0,0 +1,182 @@ +local progress = require 'progress' + +local pairs = pairs +local type = type + +local function load_slk(w2l, archive, force_slk) + if force_slk then + message('-report|9其他', '物编信息不完整,强制读取slk文件') + end + if force_slk or w2l.config.read_slk then + return w2l:frontend_slk(function(name) + local buf = archive:get(name) + if buf then + archive:set(name, false) + return buf + end + return io.load(w2l.mpq / name) + end) + else + return w2l:get_default(true) + end +end + +local function load_obj(w2l, archive, wts) + local objs = {} + local force_slk + local count = 0 + for type, name in pairs(w2l.info.obj) do + local buf = archive:get(name) + local force + local count = count + 1 + if buf then + message('正在转换', name) + objs[type], force = w2l:frontend_obj(type, buf, wts) + progress(count / 7) + if force then + force_slk = true + end + archive:set(name, false) + end + end + return objs, force_slk +end + +local function load_lni(w2l, archive) + local lnis = {} + if not w2l.config.read_lni then + return lnis + end + local count = 0 + for type, name in pairs(w2l.info.lni) do + count = count + 1 + local buf = archive:get(name) + if buf then + message('正在转换', name) + lnis[type] = w2l:frontend_lni(type, buf) + progress(count / 7) + archive:set(name, false) + end + end + + local buf = archive:get('war3map.txt.ini') + if buf then + lnis['txt'] = w2l:parse_lni(buf, 'txt') + archive:set('war3map.txt.ini', false) + end + return lnis +end + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o) + local name + if o._type == 'buff' then + name = o.bufftip or o.editorname + elseif o._type == 'upgrade' then + name = o.name[1] + else + name = o.name + end + return (name:sub(1, 100):gsub('\r\n', ' ')) +end + +local function copy_obj(objs) + local new_objs = {} + for name, obj in pairs(objs) do + local new_obj = {} + new_objs[name] = new_obj + for key, value in pairs(obj) do + if type(value) == 'table' then + local new_value = {} + new_obj[key] = new_value + for k, v in pairs(value) do + new_value[k] = v + end + else + new_obj[key] = value + end + end + end + return new_objs +end + +local function update_then_merge(w2l, slks, objs, lnis, slk) + for _, type in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'txt'} do + local report, report2 + local data = slks[type] + local obj = objs[type] + if obj then + report, report2 = w2l:frontend_updateobj(type, obj, data) + else + obj = {} + end + if lnis[type] then + w2l:frontend_updatelni(type, lnis[type], data) + for k, v in pairs(lnis[type]) do + obj[k] = v + end + end + if w2l.config.copy_obj then + slk['copyed_'..type] = copy_obj(obj) + end + slk[type] = w2l:frontend_merge(type, data, obj) + if report then + for i = 1, 10 do + local data = report[i] + if not data then + break + end + local displayname = get_displayname(slk[type][data[1]]) + message('-report|6无效的物编数据', ('%s %s %s'):format(displaytype[type], data[1], displayname)) + message('-tip', ('[%s]: %s'):format(data[2], data[3])) + end + end + if report2 then + for i = 1, 10 do + if not report2[i] then + break + end + message('-report|6无效的物编数据', report2[i][1]) + if report2[i][2] then + message('-tip', report2[i][2]) + end + end + end + end +end + +return function(w2l, archive, slk) + --读取字符串 + slk.wts = w2l:frontend_wts(archive:get('war3map.wts')) + progress(0.2) + + message('读取obj...') + progress:start(0.4) + local objs, force_slk1 = load_obj(w2l, archive, slk.wts) + progress:finish() + + message('读取lni...') + progress:start(0.6) + local lnis, force_slk2 = load_lni(w2l, archive) + progress:finish() + + message('读取slk...') + progress:start(0.8) + local slks = load_slk(w2l, archive, force_slk1 or force_slk2) + progress:finish() + + message('合并物编数据...') + progress:start(1) + update_then_merge(w2l, slks, objs, lnis, slk) + progress:finish() + w2l:frontend_misc(archive, slk) +end diff --git a/plugin/w3x2lni/script/slk/frontend_lni.lua b/plugin/w3x2lni/script/slk/frontend_lni.lua new file mode 100644 index 0000000..b302703 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_lni.lua @@ -0,0 +1,38 @@ +local string_lower = string.lower +local pairs = pairs + +local w2l +local force_slk +local default + +local function add_obj(type, name, level_key, obj) + local new_obj = {} + for key, value in pairs(obj) do + new_obj[string_lower(key)] = value + end + new_obj._id = name + new_obj._max_level = obj[level_key] + new_obj._type = type + new_obj._obj = true + if not default or not default[new_obj._parent] then + force_slk = true + end + return new_obj +end + +return function (w2l_, type, buf) + w2l = w2l_ + default = w2l:get_default()[type] + local lni = w2l:parse_lni(buf) + local metadata = w2l:metadata()[type] + local level_key = w2l.info.key.max_level[type] + if level_key then + level_key = metadata[level_key].field + end + local data = {} + force_slk = false + for name, obj in pairs(lni) do + data[name] = add_obj(type, name, level_key, obj) + end + return data, force_slk +end diff --git a/plugin/w3x2lni/script/slk/frontend_merge.lua b/plugin/w3x2lni/script/slk/frontend_merge.lua new file mode 100644 index 0000000..06d1f03 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_merge.lua @@ -0,0 +1,142 @@ +local is_remove_exceeds_level +local metadata + +local pairs = pairs +local type = type +local assert = assert + +local function maxindex(t) + local i = 0 + for k in pairs(t) do + if k > i then + i = k + end + end + return i +end + +local function fill_and_copy(a, lv) + local c = {} + if #a < lv then + for i = 1, #a do + c[i] = a[i] + end + for i = #a+1, lv do + c[i] = a[#a] + end + else + for i = 1, lv do + c[i] = a[i] + end + end + if not is_remove_exceeds_level then + local maxlv = maxindex(a) + if maxlv > lv then + for i = lv+1, maxlv do + c[i] = a[i] or a[#a] + end + end + end + return c +end + +local function fill_and_merge(a, b, lv, meta) + local c = {} + if #a < lv then + for i = 1, #a do + c[i] = b[i] or a[i] + end + if not meta or meta.profile then + for i = #a+1, lv do + c[i] = b[i] or c[i-1] + end + else + for i = #a+1, lv do + c[i] = b[i] or a[#a] + end + end + else + for i = 1, lv do + c[i] = b[i] or a[i] + end + end + if not is_remove_exceeds_level then + local maxlv = maxindex(b) + if maxlv > lv then + for i = lv+1, maxlv do + c[i] = b[i] or a[#a] + end + end + end + return c +end + +local function copy_obj(a, b) + local c = {} + local lv = b._max_level or a._max_level + for k, v in pairs(a) do + if b[k] then + if type(v) == 'table' then + c[k] = fill_and_merge(v, b[k], lv, metadata[a._code] and metadata[a._code][k] or metadata[a._type] and metadata[a._type][k]) + else + c[k] = b[k] + end + b[k] = nil + else + if type(v) == 'table' then + c[k] = fill_and_copy(v, lv) + else + c[k] = v + end + end + end + for k, v in pairs(b) do + -- 不应该会有等级数据 + assert(type(v) ~= 'table') + c[k] = v + end + return c +end + +local function fill_obj(a) + local c = {} + local lv = a._max_level + for k, v in pairs(a) do + if type(v) == 'table' then + c[k] = fill_and_copy(v, lv) + else + c[k] = v + end + end + return c +end + +return function (w2l_, type, data, objs) + w2l = w2l_ + if type == 'txt' then + is_remove_exceeds_level = false + else + is_remove_exceeds_level = w2l.config.remove_exceeds_level + end + metadata = w2l:metadata() + local template = {} + local result = {} + for name, obj in pairs(objs) do + local source = data[name] + if source then + template[name] = source + data[name] = nil + else + source = template[obj._parent] or data[obj._parent] + end + if type == 'txt' then + result[name] = obj + else + result[name] = copy_obj(source, obj) + end + end + for name, obj in pairs(data) do + result[name] = fill_obj(obj) + end + return result +end diff --git a/plugin/w3x2lni/script/slk/frontend_misc.lua b/plugin/w3x2lni/script/slk/frontend_misc.lua new file mode 100644 index 0000000..6a549dc --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_misc.lua @@ -0,0 +1,120 @@ +local w3xparser = require 'w3xparser' + +local string_lower = string.lower +local table_concat = table.concat +local wtonumber = w3xparser.tonumber +local math_floor = math.floor + +local w2l +local marks + +local function to_type(tp, value) + if tp == 0 then + if not value then + return 0 + end + return math_floor(wtonumber(value)) + elseif tp == 1 or tp == 2 then + if not value then + return 0.0 + end + return wtonumber(value) + 0.0 + elseif tp == 3 then + if not value then + return nil + end + if value == '' then + return value + end + value = tostring(value) + if not value:match '[^ %-%_]' then + return nil + end + return value + end +end + +local function add_data(key, meta, misc, obj, slk) + local name = obj._id + local lname = string_lower(name) + local value = misc[lname] and misc[lname][key] or slk.txt[lname] and slk.txt[lname][key] + if not value then + return + end + if meta['concat'] then + value = table_concat(value, ',') + else + value = to_type(meta.type, value[1]) + end + obj[key] = value +end + +local function add_obj(name, meta, misc, chunk, slk) + chunk[name] = { + _id = name, + _code = name, + _parent = name, + _type = 'misc', + } + local obj = chunk[name] + for key, meta in pairs(meta) do + add_data(key, meta, misc, obj, slk) + end + local lname = string_lower(name) + slk.txt[lname] = nil + if marks[lname] then + obj._mark = true + end +end + +local function convert(misc, metadata, miscnames, slk) + local chunk = {} + for _, name in ipairs(miscnames.misc_names) do + local meta = metadata[name] + add_obj(name, meta, misc, chunk, slk) + end + return chunk +end + +local function merge_misc_data(misc, map_misc, meta, slk) + if not misc then + return + end + for k, v in pairs(map_misc) do + if meta[k].type == 3 then + for i, str in ipairs(v) do + v[i] = w2l:load_wts(slk.wts, str) + end + end + misc[k] = v + end +end + +local function merge_misc(misc, txt, map_misc, metadata, miscnames, slk) + for _, name in ipairs(miscnames.misc_names) do + local lname = name:lower() + local v = map_misc[lname] + if v then + marks[lname] = true + merge_misc_data(misc[lname] or txt[lname], v, metadata[name], slk) + end + end +end + +return function (w2l_, archive, slk) + w2l = w2l_ + marks = {} + local metadata = w2l:metadata() + local miscnames = w2l:miscnames() + local misc = {} + for _, name in ipairs {"UI\\MiscData.txt", "Units\\MiscData.txt", "Units\\MiscGame.txt"} do + local buf = io.load(w2l.mpq / name) + w2l:parse_txt(buf, name, misc) + end + local buf = archive:get('war3mapmisc.txt') + if buf then + local map_misc = w2l:parse_txt(buf, 'war3mapmisc.txt') + merge_misc(misc, slk.txt, map_misc, metadata, miscnames, slk) + end + slk.misc = convert(misc, metadata, miscnames, slk) +end diff --git a/plugin/w3x2lni/script/slk/frontend_obj.lua b/plugin/w3x2lni/script/slk/frontend_obj.lua new file mode 100644 index 0000000..f8120c4 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_obj.lua @@ -0,0 +1,109 @@ +local select = select +local string_lower = string.lower +local string_unpack = string.unpack +local string_match = string.match + +local w2l +local wts +local default +local has_level +local unpack_buf +local unpack_pos +local force_slk + +local function set_pos(...) + unpack_pos = select(-1, ...) + return ... +end + +local function unpack(str) + return set_pos(string_unpack(str, unpack_buf, unpack_pos)) +end + +local function read_data(obj) + local data = {} + local id = string_match(unpack 'c4', '^[^\0]+') + local value_type = unpack 'l' + local level = 0 + + --是否包含等级信息 + if has_level then + local this_level = unpack 'l' + level = this_level + -- 扔掉一个整数 + unpack 'l' + end + + local value + if value_type == 0 then + value = unpack 'l' + elseif value_type == 1 or value_type == 2 then + value = unpack 'f' + else + local str = unpack 'z' + value = w2l:load_wts(wts, str) + end + + -- 扔掉一个整数 + unpack 'l' + + if level == 0 then + level = 1 + end + if not obj[id] then + obj[id] = {} + end + obj[id][level] = value +end + +local function read_obj(chunk, type) + local parent, name = unpack 'c4c4' + if name == '\0\0\0\0' then + name = parent + end + local obj = { + _id = name, + _parent = parent, + _type = type, + _obj = true, + } + + local count = unpack 'l' + for i = 1, count do + read_data(obj) + end + if not default or not default[parent] then + force_slk = true + end + chunk[name] = obj + return obj +end + +local function read_version() + return unpack 'l' +end + +local function read_chunk(chunk, type) + local count = unpack 'l' + for i = 1, count do + local obj = read_obj(chunk, type) + end +end + +return function (w2l_, type, buf, wts_) + w2l = w2l_ + wts = wts_ + default = w2l:get_default()[type] + has_level = w2l.info.key.max_level[type] + unpack_buf = buf + unpack_pos = 1 + force_slk = false + local data = {} + -- 版本号 + read_version() + -- 默认数据 + read_chunk(data, type) + -- 自定义数据 + read_chunk(data, type) + return data, force_slk +end diff --git a/plugin/w3x2lni/script/slk/frontend_slk.lua b/plugin/w3x2lni/script/slk/frontend_slk.lua new file mode 100644 index 0000000..5dfb490 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_slk.lua @@ -0,0 +1,256 @@ +local w3xparser = require 'w3xparser' +local progress = require 'progress' + +local math_floor = math.floor +local pairs = pairs +local ipairs = ipairs +local tostring = tostring +local wtonumber = w3xparser.tonumber +local next = next +local table_concat = table.concat +local string_lower = string.lower + +local w2l +local metadata +local keydata +local slk_type + +local function slk_to_type(tp, value) + if tp == 0 then + if not value then + return 0 + end + return math_floor(wtonumber(value)) + elseif tp == 1 or tp == 2 then + if not value then + return 0.0 + end + return wtonumber(value) + 0.0 + elseif tp == 3 then + if not value then + return nil + end + if value == '' then + return value + end + value = tostring(value) + if not value:match '[^ %-%_]' then + return nil + end + return value + end +end + +local function slk_read_data(obj, key, meta, data) + if meta['repeat'] then + local type = meta.type + local t = {} + if slk_type == 'doodad' then + for i = 1, 10 do + t[i] = slk_to_type(type, data[('%s%02d'):format(meta.field, i)]) or '' + end + else + for i = 1, 4 do + t[i] = slk_to_type(type, data[meta.field..i]) or '' + end + end + obj[key] = t + else + obj[key] = slk_to_type(meta.type, data[meta.field]) + end +end + +local function slk_read_obj(obj, name, data, keys, metas) + if data.code then + obj._code = data.code + end + if slk_type == 'unit' and not obj._name then + obj._name = data.name -- 单位的反slk可以用name作为线索 + end + + for i = 1, #keys do + slk_read_data(obj, keys[i], metas[i], data) + end + + local private = metadata[obj._code] + if private then + for key, meta in pairs(private) do + slk_read_data(obj, key, meta, data) + end + end +end + +local function slk_read(table, slk, keys, meta, update_level) + for name, data in pairs(slk) do + if not table[name] then + table[name] = { + _id = name, + _type = slk_type, + } + end + local obj = table[name] + slk_read_obj(obj, name, data, keys, meta) + if update_level then + obj._max_level = obj[update_level] + if not obj._max_level or obj._max_level == 0 then + obj._max_level = 1 + elseif obj._max_level and obj._max_level > 10000 then + message('-report|9其他', ('对象等级太高[%s][%d]'):format(name, obj._max_level)) + message('-tip', '可能会影响此工具的性能') + end + end + end +end + +local function txt_to_type(tp, value) + if tp == 0 then + if not value then + return 0 + end + return math_floor(wtonumber(value)) + elseif tp == 1 or tp == 2 then + if not value then + return 0.0 + end + return wtonumber(value) + 0.0 + elseif tp == 3 then + if not value then + return nil + end + return tostring(value) + end +end + +local function txt_read_data(name, obj, key, meta, txt) + if meta.index then + local value = txt and txt[meta.key] or meta.default + obj[key] = txt_to_type(meta.type, value and value[meta.index]) + return + end + + if meta.appendindex then + local t = {} + if txt then + local null + local max_level = txt[key..'count'] and math.floor(txt[key..'count'][1]) or 1 + for i = max_level, 1, -1 do + local new_key = i == 1 and key or (key .. (i-1)) + local value = txt[new_key] + if value and #value > 0 then + t[i] = table_concat(value, ',') + null = '' + else + t[i] = null + end + end + end + obj[key] = t + return + end + + local value = txt and txt[key] or meta.default + if not value or #value == 0 then + local value = txt_to_type(meta.type) + if not value then + if meta['repeat'] then + obj[key] = {} + end + return + end + if meta['repeat'] then + obj[key] = {value} + else + obj[key] = value + end + return + end + if meta.concat then + if #value > 1 then + obj[key] = table_concat(value, ',') + else + obj[key] = txt_to_type(meta.type, value[1]) + end + return + end + if meta['repeat'] then + obj[key] = {} + for i = 1, #value do + obj[key][i] = txt_to_type(meta.type, value[i]) + end + else + obj[key] = txt_to_type(meta.type, value[1]) + end +end + +local function txt_read(table, txt, used, keys, meta) + for name, obj in pairs(table) do + local lname = string_lower(name) + local txt_data = txt[lname] or used[lname] + txt[lname] = nil + used[lname] = txt_data + for i = 1, #keys do + txt_read_data(lname, obj, keys[i], meta[i], txt_data) + end + end +end + +local function txt_set_level(txt) + for _, obj in pairs(txt) do + obj._max_level = 1 + end +end + +return function(w2l_, loader) + w2l = w2l_ + metadata = w2l:metadata() + keydata = w2l:keydata() + local datas = {} + local txt = {} + local used = {} + local count = 0 + progress:start(0.3) + for _, filename in pairs(w2l.info.txt) do + w2l:parse_txt(loader(filename), filename, txt) + end + progress:finish() + + local count = 0 + progress:start(1) + for type, names in pairs(w2l.info.slk) do + local level_key = w2l.info.key.max_level[type] + slk_type = type + + datas[type] = {} + for i, filename in ipairs(names) do + local update_level + local keys = {} + local meta = {} + for _, key in ipairs(keydata[filename]) do + keys[#keys+1] = key + meta[#meta+1] = metadata[type][key] + if key == level_key then + update_level = level_key + end + end + slk_read(datas[type], w2l:parse_slk(loader(filename)), keys, meta, update_level) + end + if keydata[type] then + local keys = {} + local meta = {} + for _, key in ipairs(keydata[type]) do + keys[#keys+1] = key + meta[#meta+1] = metadata[type][key] + end + txt_read(datas[type], txt, used, keys, meta) + end + count = count + 1 + progress(count / 7) + end + txt_set_level(txt) + progress:finish() + + -- 此单位只在一张单位slk里定义,是无效单位 + datas.unit.nrmf = nil + datas.txt = txt + return datas +end diff --git a/plugin/w3x2lni/script/slk/frontend_updatelni.lua b/plugin/w3x2lni/script/slk/frontend_updatelni.lua new file mode 100644 index 0000000..22f1c72 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_updatelni.lua @@ -0,0 +1,47 @@ +local type = type + +local metadata + +local function update_obj(ttype, name, obj, data) + local parent = obj._parent + local temp = data[parent] + local code = temp._code + obj._code = code + for key, meta in pairs(metadata[ttype]) do + if obj[key] and meta['repeat'] and type(obj[key]) ~= 'table' then + obj[key] = {obj[key]} + end + end + if metadata[code] then + for key, meta in pairs(metadata[code]) do + if obj[key] and meta['repeat'] and type(obj[key]) ~= 'table' then + obj[key] = {obj[key]} + end + end + end +end + +local function update_txt(obj) + for k, v in pairs(obj) do + if type(v) ~= 'table' then + obj[k] = {v} + end + end +end + +return function(w2l, type, lni, data) + if type == 'txt' then + for _, obj in pairs(lni) do + update_txt(obj) + end + return + end + local has_level = w2l.info.key.max_level[type] + if not has_level then + return + end + metadata = w2l:metadata() + for name, obj in pairs(lni) do + update_obj(type, name, obj, data) + end +end diff --git a/plugin/w3x2lni/script/slk/frontend_updateobj.lua b/plugin/w3x2lni/script/slk/frontend_updateobj.lua new file mode 100644 index 0000000..bd8ad64 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_updateobj.lua @@ -0,0 +1,98 @@ +local w2l +local has_level +local metadata +local reports +local reports2 + +local pairs = pairs +local string_sub = string.sub +local string_find = string.find + +local function concat(tbl) + if type(tbl) ~= 'table' then + return tostring(tbl) + end + local max = 0 + for i, v in pairs(tbl) do + if i > max then + max = i + end + end + local strs = {} + for i = 1, max do + strs[i] = tostring(tbl[i]) + end + return table.concat(strs, ',') +end + +local function update_data(key, meta, obj, new_obj) + local id = meta.id + local value = obj[id] + if not value then + return + end + obj[id] = nil + if meta.splite then + for i, str in pairs(value) do + local pos = string_find(str, ',', 1, true) + if pos then + value[i] = string_sub(str, 1, pos-1) + end + end + end + if meta['repeat'] then + new_obj[key] = value + else + new_obj[key] = value[1] + end +end + +local function update_obj(name, type, obj, data) + local parent = obj._parent + local temp = data[parent] + if not temp then + reports2[#reports2+1] = {('底板不存在: %s [%s:%s]'):format(type, name, parent)} + return nil + end + local code = temp._code + local new_obj = {} + obj._code = code + for key, meta in pairs(metadata[type]) do + update_data(key, meta, obj, new_obj) + end + if metadata[code] then + for key, meta in pairs(metadata[code]) do + update_data(key, meta, obj, new_obj) + end + end + if type == 'ability' and w2l.config.target_format == 'slk' and not next(new_obj) then + reports2[#reports2+1] = {('技能被移除: %s'):format(name), '自定义技能没有修改任何属性的话会被魔兽移除'} + return nil + end + for k, v in pairs(obj) do + if string_sub(k, 1, 1) == '_' then + new_obj[k] = v + else + reports[#reports+1] = {name, k, concat(v, ','):sub(1, 1000):gsub('\r\n', ' ')} + end + end + if has_level then + new_obj._max_level = new_obj[has_level] + if new_obj._max_level == 0 then + new_obj._max_level = 1 + end + end + return new_obj +end + +return function (w2l_, type, chunk, data) + w2l = w2l_ + has_level = w2l.info.key.max_level[type] + metadata = w2l:metadata() + reports = {} + reports2 = {} + for name, obj in pairs(chunk) do + chunk[name] = update_obj(name, type, obj, data) + end + return reports, reports2 +end diff --git a/plugin/w3x2lni/script/slk/frontend_wts.lua b/plugin/w3x2lni/script/slk/frontend_wts.lua new file mode 100644 index 0000000..364e9a7 --- /dev/null +++ b/plugin/w3x2lni/script/slk/frontend_wts.lua @@ -0,0 +1,69 @@ +local lpeg = require 'lpeg' + +local function search_string(buf) + local line_count = 1 + lpeg.locale(lpeg) + local S = lpeg.S + local P = lpeg.P + local R = lpeg.R + local C = lpeg.C + local V = lpeg.V + local Ct = lpeg.Ct + local Cg = lpeg.Cg + local Cp = lpeg.Cp + + local function newline() + line_count = line_count + 1 + end + + local function getline() + return line_count + end + + local bom = P'\xEF\xBB\xBF' + local nl = (P'\r\n' + S'\r\n') / newline + local char = nl + P(1) + local com = P'//' * (1-nl)^0 * nl^-1 + local int = P'0' + R'19' * R'09'^0 + local define = P + { + 'define', + define = Ct(V'head' * V'comline'^-1 * V'body'), + head = P'STRING ' * Cg(int / tonumber, 'index') * Cg(Cp() / getline, 'line') * nl, + comline= com * (char - V'start')^0, + body = V'start' * Cg(V'text', 'text') * V'finish', + start = P'{' * nl, + finish = nl * P'}' * nl^0, + text = (char - V'finish' * (V'sdefine' + -P(1)))^0, + sdefine= V'head' * V'comline'^-1 * V'sbody', + sbody = V'start' * V'stext' * V'finish', + stext = (char - V'finish')^0, + } + + local function err(str) + return ((1-nl)^1 + P(1)) / function(c) + error(('line[%d]: %s:\n===========================\n%s\n==========================='):format(line_count, str, c)) + end + end + + local searcher = Ct(bom^-1 * (nl + com)^0 * (define + err'syntax error')^0) + local result = searcher:match(buf) + return result +end + +return function (w2l, buf) + local tbl = { mark = {} } + if not buf then + return tbl + end + local result = search_string(buf) + for _, t in ipairs(result) do + local index, text = t.index, t.text + if text:find('}', 1, false) then + message('-report|2警告', '文本不能包含字符"}"') + message('-tip', (text:sub(1, 1000):gsub('\r\n', ' '))) + end + tbl[index] = t + end + return tbl +end diff --git a/plugin/w3x2lni/script/utility.lua b/plugin/w3x2lni/script/utility.lua new file mode 100644 index 0000000..36f288d --- /dev/null +++ b/plugin/w3x2lni/script/utility.lua @@ -0,0 +1,36 @@ +if io.load then + return +end + +local uni = require 'ffi.unicode' +local real_io_open = io.open + +function io.open(path, ...) + return real_io_open(uni.u2a(path:string()), ...) +end + +function io.load(file_path) + local f, e = io.open(file_path, "rb") + if f then + if f:read(3) ~= '\xEF\xBB\xBF' then + f:seek('set') + end + local content = f:read 'a' + f:close() + return content + else + return false, e + end +end + +function io.save(file_path, content) + local f, e = io.open(file_path, "wb") + + if f then + f:write(content) + f:close() + return true + else + return false, e + end +end diff --git a/plugin/w3x2lni/script/w3x2lni.lua b/plugin/w3x2lni/script/w3x2lni.lua new file mode 100644 index 0000000..ee156aa --- /dev/null +++ b/plugin/w3x2lni/script/w3x2lni.lua @@ -0,0 +1,214 @@ +require 'utility' +local uni = require 'ffi.unicode' +local w3xparser = require 'w3xparser' +local lni = require 'lni-c' +local slk = w3xparser.slk +local txt = w3xparser.txt +local ini = w3xparser.ini +local pairs = pairs +local string_lower = string.lower + +local mt = {} + +local metadata +local keydata +local editstring +local default +local miscnames +local wts + +function mt:parse_lni(...) + return lni(...) +end + +function mt:parse_slk(buf) + return slk(buf) +end + +function mt:parse_txt(...) + return txt(...) +end + +function mt:parse_ini(buf) + return ini(buf) +end + +function mt:metadata() + if not metadata then + metadata = lni(io.load(self.defined / 'metadata.ini')) + end + return metadata +end + +function mt:keydata() + if not keydata then + keydata = lni(io.load(self.defined / 'keydata.ini')) + end + return keydata +end + +function mt:miscnames() + if not miscnames then + miscnames = lni(io.load(self.defined / 'miscnames.ini')) + end + return miscnames +end + +function mt:editstring(str) + -- TODO: WESTRING不区分大小写,不过我们把WorldEditStrings.txt改了,暂时不会出现问题 + if not editstring then + editstring = ini(io.load(self.mpq / 'ui' / 'WorldEditStrings.txt'))['WorldEditStrings'] + end + if not editstring[str] then + return str + end + repeat + str = editstring[str] + until not editstring[str] + return str:gsub('%c+', '') +end + +local function create_default(w2l) + local default = {} + for _, name in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'txt', 'misc'} do + local str = io.load(w2l.default / (name .. '.ini')) + if str then + default[name] = lni(str) + end + end + return default +end + +function mt:get_default(create) + if create then + return create_default(self) + end + if not default then + default = create_default(self) + end + return default +end + +-- 同时有英文逗号和英文双引号的字符串存在txt里会解析出错 +-- 包含右大括号的字符串存在wts里会解析出错 +-- 超过256字节的字符串存在二进制里会崩溃 + +function mt:load_wts(wts, content, max, reason, fmter) + if not wts then + return content + end + return content:gsub('TRIGSTR_(%d+)', function(i) + local str_data = wts[tonumber(i)] + if not str_data then + message('-report|9其他', '没有找到字符串定义:', ('TRIGSTR_%03d'):format(i)) + return + end + local text = str_data.text + if fmter then + text = fmter(text) + end + if max and #text > max then + return self:save_wts(wts, text, reason) + end + return text + end) +end + +function mt:save_wts(wts, text, reason) + message('-report|7保存到wts中的文本', reason) + message('-tip', '文本保存在wts中会导致加载速度变慢: ', (text:sub(1, 1000):gsub('\r\n', ' '))) + if text:find('}', 1, false) then + message('-report|2警告', '文本中的"}"被修改为了"|"') + message('-tip', (text:sub(1, 1000):gsub('\r\n', ' '))) + text = text:gsub('}', '|') + end + local index = #wts.mark + 1 + wts.mark[index] = text + return ('TRIGSTR_%03d'):format(index-1) +end + +function mt:refresh_wts(wts) + local lines = {} + for index, text in ipairs(wts.mark) do + lines[#lines+1] = ('STRING %d\r\n{\r\n%s\r\n}'):format(index-1, text) + end + return table.concat(lines, '\r\n\r\n') +end + +local function get_exepath() + return fs.path(uni.a2u(package.cpath:sub(1, (package.cpath:find(';') or 0)-6))):remove_filename():remove_filename() +end + +function mt:initialize(root) + if self.initialized then + return + end + self.initialized = true + self.root = root or get_exepath() + self.template = self.root / 'template' + self.mpq = self.root / 'script' / 'mpq' + self.prebuilt = self.root / 'script' / 'prebuilt' + self.default = self.prebuilt / 'default' + self.defined = self.prebuilt / 'defined' + self.info = lni(assert(io.load(self.root / 'script' / 'info.ini')), 'info') + self.config = lni(assert(io.load(self.root / 'config.ini')), 'config') + local fmt = self.config.target_format + self.config = self.config[fmt] + self.config.target_format = fmt +end + +-- 加载脚本 +local slk_convertors = { + ['frontend'] = true, + ['frontend_wts'] = true, + ['frontend_slk'] = true, + ['frontend_lni'] = true, + ['frontend_obj'] = true, + ['frontend_misc'] = true, + ['frontend_updateobj'] = true, + ['frontend_updatelni'] = true, + ['frontend_merge'] = true, + ['backend'] = true, + ['backend_mark'] = true, + ['backend_lni'] = true, + ['backend_slk'] = true, + ['backend_txt'] = true, + ['backend_obj'] = true, + ['backend_searchjass'] = true, + ['backend_convertjass'] = true, + ['backend_convertwtg'] = true, + ['backend_searchdoo'] = true, + ['backend_computed'] = true, + ['backend_extra_txt'] = true, + ['backend_txtlni'] = true, + ['backend_misc'] = true, + ['backend_skin'] = true, + ['backend_searchparent'] = true, + ['backend_cleanobj'] = true, + ['backend_imp'] = true, + ['backend_optimizejass'] = true, +} + +local other_convertors = { + ['lni2w3i'] = true, + ['read_w3i'] = true, + ['w3i2lni'] = true, + ['create_unitsdoo'] = true, +} + +setmetatable(mt, { + __index = function(self, name) + if slk_convertors[name] then + local res = require('slk.' .. name) + self[name] = res + return res + elseif other_convertors[name] then + local res = require('other.' .. name) + self[name] = res + return res + end + return nil + end, +}) + +return mt diff --git a/plugin/warcraft3/config.cfg b/plugin/warcraft3/config.cfg new file mode 100644 index 0000000..fac1b9e --- /dev/null +++ b/plugin/warcraft3/config.cfg @@ -0,0 +1,10 @@ +[Enable] +dzclient_api.dll = 1 +yd_dzclient_api.dll = 1 +yd_jass_api.dll = 1 +yd_jass_debug.dll = 1 +yd_leak_monitor.dll = 1 +yd_lua_engine.dll = 1 +yd_mutil_warcraft3.dll = 1 +yd_size_limit.dll = 1 +yd_virtual_mpq.dll = 1 diff --git a/plugin/warcraft3/dzapi/dz_w3_plugin.dll b/plugin/warcraft3/dzapi/dz_w3_plugin.dll new file mode 100644 index 0000000..8b06f59 Binary files /dev/null and b/plugin/warcraft3/dzapi/dz_w3_plugin.dll differ diff --git a/plugin/warcraft3/dzclient_api.dll b/plugin/warcraft3/dzclient_api.dll new file mode 100644 index 0000000..03f6c31 Binary files /dev/null and b/plugin/warcraft3/dzclient_api.dll differ diff --git a/plugin/warcraft3/dzclient_api.ini b/plugin/warcraft3/dzclient_api.ini new file mode 100644 index 0000000..6a5e4ab --- /dev/null +++ b/plugin/warcraft3/dzclient_api.ini @@ -0,0 +1,4 @@ +[DzAPI] +SSV-0-ISet03=0 +SSV-0-ISet04=0 +SSV-0-ISet02=0 diff --git a/plugin/warcraft3/yd_dzclient_api.dll b/plugin/warcraft3/yd_dzclient_api.dll new file mode 100644 index 0000000..1d6073c Binary files /dev/null and b/plugin/warcraft3/yd_dzclient_api.dll differ diff --git a/plugin/warcraft3/yd_jass_api.dll b/plugin/warcraft3/yd_jass_api.dll new file mode 100644 index 0000000..52d8ae4 Binary files /dev/null and b/plugin/warcraft3/yd_jass_api.dll differ diff --git a/plugin/warcraft3/yd_jass_debug.dll b/plugin/warcraft3/yd_jass_debug.dll new file mode 100644 index 0000000..c2fba5e Binary files /dev/null and b/plugin/warcraft3/yd_jass_debug.dll differ diff --git a/plugin/warcraft3/yd_leak_monitor.dll b/plugin/warcraft3/yd_leak_monitor.dll new file mode 100644 index 0000000..afd9a53 Binary files /dev/null and b/plugin/warcraft3/yd_leak_monitor.dll differ diff --git a/plugin/warcraft3/yd_loader.dll b/plugin/warcraft3/yd_loader.dll new file mode 100644 index 0000000..4daea1b Binary files /dev/null and b/plugin/warcraft3/yd_loader.dll differ diff --git a/plugin/warcraft3/yd_lua_engine.dll b/plugin/warcraft3/yd_lua_engine.dll new file mode 100644 index 0000000..19482f1 Binary files /dev/null and b/plugin/warcraft3/yd_lua_engine.dll differ diff --git a/plugin/warcraft3/yd_mutil_warcraft3.dll b/plugin/warcraft3/yd_mutil_warcraft3.dll new file mode 100644 index 0000000..ebf231c Binary files /dev/null and b/plugin/warcraft3/yd_mutil_warcraft3.dll differ diff --git a/plugin/warcraft3/yd_size_limit.dll b/plugin/warcraft3/yd_size_limit.dll new file mode 100644 index 0000000..ebd93a5 Binary files /dev/null and b/plugin/warcraft3/yd_size_limit.dll differ diff --git a/plugin/warcraft3/yd_virtual_mpq.dll b/plugin/warcraft3/yd_virtual_mpq.dll new file mode 100644 index 0000000..f1a267d Binary files /dev/null and b/plugin/warcraft3/yd_virtual_mpq.dll differ diff --git a/plugin/wave/Wave.exe b/plugin/wave/Wave.exe new file mode 100644 index 0000000..e2179ba Binary files /dev/null and b/plugin/wave/Wave.exe differ diff --git a/plugin/wave/include/WaveForce.i b/plugin/wave/include/WaveForce.i new file mode 100644 index 0000000..94d6378 --- /dev/null +++ b/plugin/wave/include/WaveForce.i @@ -0,0 +1,3 @@ +#define YDNL + +#include "YDWE_Base.h" diff --git a/plugin/wave/include/YDWE_Base.h b/plugin/wave/include/YDWE_Base.h new file mode 100644 index 0000000..1189b5d --- /dev/null +++ b/plugin/wave/include/YDWE_Base.h @@ -0,0 +1,80 @@ + +#define OperatorDegreeAdd(a,b) ((a)+(b)) +#define OperatorDegreeSubtract(a,b) ((a)-(b)) +#define OperatorDegreeMultiply(a,b) ((a)*(b)) +#define OperatorDegreeDivide(a,b) ((a)/(b)) +#define OperatorRadianAdd(a,b) ((a)+(b)) +#define OperatorRadianSubtract(a,b) ((a)-(b)) +#define OperatorRadianMultiply(a,b) ((a)*(b)) +#define OperatorRadianDivide(a,b) ((a)/(b)) +#define OperatorIntegerAdd(a,b) ((a)+(b)) +#define OperatorIntegerSubtract(a,b) ((a)-(b)) +#define OperatorIntegerMultiply(a,b) ((a)*(b)) +#define OperatorIntegerDivide(a,b) ((a)/(b)) +#define OperatorRealAdd(a,b) ((a)+(b)) +#define OperatorRealSubtract(a,b) ((a)-(b)) +#define OperatorRealMultiply(a,b) ((a)*(b)) +#define OperatorRealDivide(a,b) ((a)/(b)) + +#define YDWEOperatorInt3(a1,op1,a2,op2,a3) ((a1)op1(a2)op2(a3)) +#define YDWEOperatorReal3(a1,op1,a2,op2,a3) ((a1)op1(a2)op2(a3)) +#define YDWEOperatorString3(a1,a2,a3) ((a1)+(a2)+(a3)) + +#define YDWER2Rad(a) (a) +#define YDWER2Deg(a) (a) +#define YDWEDeg2R(a) (a) +#define YDWERad2R(a) (a) + +#define YDWEInitHashtable() InitHashtable() +#define YDWEIsTriggerEventId(eventid) (eventid == GetTriggerEventId()) + +#define YDWEGetUnitID(a) YDWEH2I(a) +#define YDWEGetItemID(a) YDWEH2I(a) +#define YDWEGetPlayerID(a) YDWEH2I(a) +#define YDWEGetTimerID(a) YDWEH2I(a) +#define YDWEGetTriggerID(a) YDWEH2I(a) +#define YDWEGetGroupID(a) YDWEH2I(a) +#define YDWEGetLocationID(a) YDWEH2I(a) +#define YDWEGetMultiboardID(a) YDWEH2I(a) +#define YDWEGetMultiboardItemID(a) YDWEH2I(a) +#define YDWEGetTextTagID(a) YDWEH2I(a) +#define YDWEGetLightningID(a) YDWEH2I(a) +#define YDWEGetRegionID(a) YDWEH2I(a) +#define YDWEGetRectID(a) YDWEH2I(a) +#define YDWEGetLeaderboardID(a) YDWEH2I(a) +#define YDWEGetEffectID(a) YDWEH2I(a) +#define YDWEGetDestructableID(a) YDWEH2I(a) +#define YDWEGetTriggerConditionID(a) YDWEH2I(a) +#define YDWEGetTriggerActionID(a) YDWEH2I(a) +#define YDWEGetTriggerEventID(a) YDWEH2I(a) +#define YDWEGetForceID(a) YDWEH2I(a) +#define YDWEGetBoolexprID(a) YDWEH2I(a) +#define YDWEGetSoundID(a) YDWEH2I(a) +#define YDWEGetTimerDialogID(a) YDWEH2I(a) +#define YDWEGetTrackableID(a) YDWEH2I(a) +#define YDWEGetDialogID(a) YDWEH2I(a) +#define YDWEGetButtonID(a) YDWEH2I(a) + +#define YDWEConvert(a) (a) +#define YDWEGetUnitTypeID(a) (a) +#define YDWEGetAbilityTypeID(a) (a) +#define YDWEGetItemTypeID(a) (a) +#define YDWEConverUnitcodeToInt(a) (a) +#define YDWEConverItemcodeToInt(a) (a) +#define YDWEConverAbilcodeToInt(a) (a) +#define YDWEConverOrdercodeToInt(a) (a) +#define YDWEUOrderId2OrderId(a) (a) +#define YDWEPOrderId2OrderId(a) (a) +#define YDWEDOrderId2OrderId(a) (a) +#define YDWEIOrderId2OrderId(a) (a) +#define YDWENOrderId2OrderId(a) (a) +#define YDWEI2UnitId(a) (a) +#define YDWEI2ItemId(a) (a) + +#define YDWECreateQuest(questType, title, description, iconPath) CreateQuestBJ(questType, title, description, iconPath) +#define YDWECreateQuestItem(whichQuest, description) CreateQuestItemBJ(whichQuest, description) + +#define YDWEAbilityId2OrderId(abilcode, type) + + + diff --git a/plugin/wave/include/boost/preprocessor.hpp b/plugin/wave/include/boost/preprocessor.hpp new file mode 100644 index 0000000..b5c928e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor.hpp @@ -0,0 +1,19 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org/libs/preprocessor for documentation. */ +# +# ifndef BOOST_PREPROCESSOR_HPP +# define BOOST_PREPROCESSOR_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic.hpp b/plugin/wave/include/boost/preprocessor/arithmetic.hpp new file mode 100644 index 0000000..b1be781 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic.hpp @@ -0,0 +1,25 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/add.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/add.hpp new file mode 100644 index 0000000..5a29f55 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/add.hpp @@ -0,0 +1,51 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_ADD_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ADD */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ADD(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y))) +# else +# define BOOST_PP_ADD(x, y) BOOST_PP_ADD_I(x, y) +# define BOOST_PP_ADD_I(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y))) +# endif +# +# define BOOST_PP_ADD_P(d, xy) BOOST_PP_TUPLE_ELEM(2, 1, xy) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_ADD_O(d, xy) BOOST_PP_ADD_O_I xy +# else +# define BOOST_PP_ADD_O(d, xy) BOOST_PP_ADD_O_I(BOOST_PP_TUPLE_ELEM(2, 0, xy), BOOST_PP_TUPLE_ELEM(2, 1, xy)) +# endif +# +# define BOOST_PP_ADD_O_I(x, y) (BOOST_PP_INC(x), BOOST_PP_DEC(y)) +# +# /* BOOST_PP_ADD_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ADD_D(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y))) +# else +# define BOOST_PP_ADD_D(d, x, y) BOOST_PP_ADD_D_I(d, x, y) +# define BOOST_PP_ADD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_ADD_P, BOOST_PP_ADD_O, (x, y))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/dec.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/dec.hpp new file mode 100644 index 0000000..23dd0a3 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/dec.hpp @@ -0,0 +1,289 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DEC_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_DEC_HPP +# +# include +# +# /* BOOST_PP_DEC */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_DEC(x) BOOST_PP_DEC_I(x) +# else +# define BOOST_PP_DEC(x) BOOST_PP_DEC_OO((x)) +# define BOOST_PP_DEC_OO(par) BOOST_PP_DEC_I ## par +# endif +# +# define BOOST_PP_DEC_I(x) BOOST_PP_DEC_ ## x +# +# define BOOST_PP_DEC_0 0 +# define BOOST_PP_DEC_1 0 +# define BOOST_PP_DEC_2 1 +# define BOOST_PP_DEC_3 2 +# define BOOST_PP_DEC_4 3 +# define BOOST_PP_DEC_5 4 +# define BOOST_PP_DEC_6 5 +# define BOOST_PP_DEC_7 6 +# define BOOST_PP_DEC_8 7 +# define BOOST_PP_DEC_9 8 +# define BOOST_PP_DEC_10 9 +# define BOOST_PP_DEC_11 10 +# define BOOST_PP_DEC_12 11 +# define BOOST_PP_DEC_13 12 +# define BOOST_PP_DEC_14 13 +# define BOOST_PP_DEC_15 14 +# define BOOST_PP_DEC_16 15 +# define BOOST_PP_DEC_17 16 +# define BOOST_PP_DEC_18 17 +# define BOOST_PP_DEC_19 18 +# define BOOST_PP_DEC_20 19 +# define BOOST_PP_DEC_21 20 +# define BOOST_PP_DEC_22 21 +# define BOOST_PP_DEC_23 22 +# define BOOST_PP_DEC_24 23 +# define BOOST_PP_DEC_25 24 +# define BOOST_PP_DEC_26 25 +# define BOOST_PP_DEC_27 26 +# define BOOST_PP_DEC_28 27 +# define BOOST_PP_DEC_29 28 +# define BOOST_PP_DEC_30 29 +# define BOOST_PP_DEC_31 30 +# define BOOST_PP_DEC_32 31 +# define BOOST_PP_DEC_33 32 +# define BOOST_PP_DEC_34 33 +# define BOOST_PP_DEC_35 34 +# define BOOST_PP_DEC_36 35 +# define BOOST_PP_DEC_37 36 +# define BOOST_PP_DEC_38 37 +# define BOOST_PP_DEC_39 38 +# define BOOST_PP_DEC_40 39 +# define BOOST_PP_DEC_41 40 +# define BOOST_PP_DEC_42 41 +# define BOOST_PP_DEC_43 42 +# define BOOST_PP_DEC_44 43 +# define BOOST_PP_DEC_45 44 +# define BOOST_PP_DEC_46 45 +# define BOOST_PP_DEC_47 46 +# define BOOST_PP_DEC_48 47 +# define BOOST_PP_DEC_49 48 +# define BOOST_PP_DEC_50 49 +# define BOOST_PP_DEC_51 50 +# define BOOST_PP_DEC_52 51 +# define BOOST_PP_DEC_53 52 +# define BOOST_PP_DEC_54 53 +# define BOOST_PP_DEC_55 54 +# define BOOST_PP_DEC_56 55 +# define BOOST_PP_DEC_57 56 +# define BOOST_PP_DEC_58 57 +# define BOOST_PP_DEC_59 58 +# define BOOST_PP_DEC_60 59 +# define BOOST_PP_DEC_61 60 +# define BOOST_PP_DEC_62 61 +# define BOOST_PP_DEC_63 62 +# define BOOST_PP_DEC_64 63 +# define BOOST_PP_DEC_65 64 +# define BOOST_PP_DEC_66 65 +# define BOOST_PP_DEC_67 66 +# define BOOST_PP_DEC_68 67 +# define BOOST_PP_DEC_69 68 +# define BOOST_PP_DEC_70 69 +# define BOOST_PP_DEC_71 70 +# define BOOST_PP_DEC_72 71 +# define BOOST_PP_DEC_73 72 +# define BOOST_PP_DEC_74 73 +# define BOOST_PP_DEC_75 74 +# define BOOST_PP_DEC_76 75 +# define BOOST_PP_DEC_77 76 +# define BOOST_PP_DEC_78 77 +# define BOOST_PP_DEC_79 78 +# define BOOST_PP_DEC_80 79 +# define BOOST_PP_DEC_81 80 +# define BOOST_PP_DEC_82 81 +# define BOOST_PP_DEC_83 82 +# define BOOST_PP_DEC_84 83 +# define BOOST_PP_DEC_85 84 +# define BOOST_PP_DEC_86 85 +# define BOOST_PP_DEC_87 86 +# define BOOST_PP_DEC_88 87 +# define BOOST_PP_DEC_89 88 +# define BOOST_PP_DEC_90 89 +# define BOOST_PP_DEC_91 90 +# define BOOST_PP_DEC_92 91 +# define BOOST_PP_DEC_93 92 +# define BOOST_PP_DEC_94 93 +# define BOOST_PP_DEC_95 94 +# define BOOST_PP_DEC_96 95 +# define BOOST_PP_DEC_97 96 +# define BOOST_PP_DEC_98 97 +# define BOOST_PP_DEC_99 98 +# define BOOST_PP_DEC_100 99 +# define BOOST_PP_DEC_101 100 +# define BOOST_PP_DEC_102 101 +# define BOOST_PP_DEC_103 102 +# define BOOST_PP_DEC_104 103 +# define BOOST_PP_DEC_105 104 +# define BOOST_PP_DEC_106 105 +# define BOOST_PP_DEC_107 106 +# define BOOST_PP_DEC_108 107 +# define BOOST_PP_DEC_109 108 +# define BOOST_PP_DEC_110 109 +# define BOOST_PP_DEC_111 110 +# define BOOST_PP_DEC_112 111 +# define BOOST_PP_DEC_113 112 +# define BOOST_PP_DEC_114 113 +# define BOOST_PP_DEC_115 114 +# define BOOST_PP_DEC_116 115 +# define BOOST_PP_DEC_117 116 +# define BOOST_PP_DEC_118 117 +# define BOOST_PP_DEC_119 118 +# define BOOST_PP_DEC_120 119 +# define BOOST_PP_DEC_121 120 +# define BOOST_PP_DEC_122 121 +# define BOOST_PP_DEC_123 122 +# define BOOST_PP_DEC_124 123 +# define BOOST_PP_DEC_125 124 +# define BOOST_PP_DEC_126 125 +# define BOOST_PP_DEC_127 126 +# define BOOST_PP_DEC_128 127 +# define BOOST_PP_DEC_129 128 +# define BOOST_PP_DEC_130 129 +# define BOOST_PP_DEC_131 130 +# define BOOST_PP_DEC_132 131 +# define BOOST_PP_DEC_133 132 +# define BOOST_PP_DEC_134 133 +# define BOOST_PP_DEC_135 134 +# define BOOST_PP_DEC_136 135 +# define BOOST_PP_DEC_137 136 +# define BOOST_PP_DEC_138 137 +# define BOOST_PP_DEC_139 138 +# define BOOST_PP_DEC_140 139 +# define BOOST_PP_DEC_141 140 +# define BOOST_PP_DEC_142 141 +# define BOOST_PP_DEC_143 142 +# define BOOST_PP_DEC_144 143 +# define BOOST_PP_DEC_145 144 +# define BOOST_PP_DEC_146 145 +# define BOOST_PP_DEC_147 146 +# define BOOST_PP_DEC_148 147 +# define BOOST_PP_DEC_149 148 +# define BOOST_PP_DEC_150 149 +# define BOOST_PP_DEC_151 150 +# define BOOST_PP_DEC_152 151 +# define BOOST_PP_DEC_153 152 +# define BOOST_PP_DEC_154 153 +# define BOOST_PP_DEC_155 154 +# define BOOST_PP_DEC_156 155 +# define BOOST_PP_DEC_157 156 +# define BOOST_PP_DEC_158 157 +# define BOOST_PP_DEC_159 158 +# define BOOST_PP_DEC_160 159 +# define BOOST_PP_DEC_161 160 +# define BOOST_PP_DEC_162 161 +# define BOOST_PP_DEC_163 162 +# define BOOST_PP_DEC_164 163 +# define BOOST_PP_DEC_165 164 +# define BOOST_PP_DEC_166 165 +# define BOOST_PP_DEC_167 166 +# define BOOST_PP_DEC_168 167 +# define BOOST_PP_DEC_169 168 +# define BOOST_PP_DEC_170 169 +# define BOOST_PP_DEC_171 170 +# define BOOST_PP_DEC_172 171 +# define BOOST_PP_DEC_173 172 +# define BOOST_PP_DEC_174 173 +# define BOOST_PP_DEC_175 174 +# define BOOST_PP_DEC_176 175 +# define BOOST_PP_DEC_177 176 +# define BOOST_PP_DEC_178 177 +# define BOOST_PP_DEC_179 178 +# define BOOST_PP_DEC_180 179 +# define BOOST_PP_DEC_181 180 +# define BOOST_PP_DEC_182 181 +# define BOOST_PP_DEC_183 182 +# define BOOST_PP_DEC_184 183 +# define BOOST_PP_DEC_185 184 +# define BOOST_PP_DEC_186 185 +# define BOOST_PP_DEC_187 186 +# define BOOST_PP_DEC_188 187 +# define BOOST_PP_DEC_189 188 +# define BOOST_PP_DEC_190 189 +# define BOOST_PP_DEC_191 190 +# define BOOST_PP_DEC_192 191 +# define BOOST_PP_DEC_193 192 +# define BOOST_PP_DEC_194 193 +# define BOOST_PP_DEC_195 194 +# define BOOST_PP_DEC_196 195 +# define BOOST_PP_DEC_197 196 +# define BOOST_PP_DEC_198 197 +# define BOOST_PP_DEC_199 198 +# define BOOST_PP_DEC_200 199 +# define BOOST_PP_DEC_201 200 +# define BOOST_PP_DEC_202 201 +# define BOOST_PP_DEC_203 202 +# define BOOST_PP_DEC_204 203 +# define BOOST_PP_DEC_205 204 +# define BOOST_PP_DEC_206 205 +# define BOOST_PP_DEC_207 206 +# define BOOST_PP_DEC_208 207 +# define BOOST_PP_DEC_209 208 +# define BOOST_PP_DEC_210 209 +# define BOOST_PP_DEC_211 210 +# define BOOST_PP_DEC_212 211 +# define BOOST_PP_DEC_213 212 +# define BOOST_PP_DEC_214 213 +# define BOOST_PP_DEC_215 214 +# define BOOST_PP_DEC_216 215 +# define BOOST_PP_DEC_217 216 +# define BOOST_PP_DEC_218 217 +# define BOOST_PP_DEC_219 218 +# define BOOST_PP_DEC_220 219 +# define BOOST_PP_DEC_221 220 +# define BOOST_PP_DEC_222 221 +# define BOOST_PP_DEC_223 222 +# define BOOST_PP_DEC_224 223 +# define BOOST_PP_DEC_225 224 +# define BOOST_PP_DEC_226 225 +# define BOOST_PP_DEC_227 226 +# define BOOST_PP_DEC_228 227 +# define BOOST_PP_DEC_229 228 +# define BOOST_PP_DEC_230 229 +# define BOOST_PP_DEC_231 230 +# define BOOST_PP_DEC_232 231 +# define BOOST_PP_DEC_233 232 +# define BOOST_PP_DEC_234 233 +# define BOOST_PP_DEC_235 234 +# define BOOST_PP_DEC_236 235 +# define BOOST_PP_DEC_237 236 +# define BOOST_PP_DEC_238 237 +# define BOOST_PP_DEC_239 238 +# define BOOST_PP_DEC_240 239 +# define BOOST_PP_DEC_241 240 +# define BOOST_PP_DEC_242 241 +# define BOOST_PP_DEC_243 242 +# define BOOST_PP_DEC_244 243 +# define BOOST_PP_DEC_245 244 +# define BOOST_PP_DEC_246 245 +# define BOOST_PP_DEC_247 246 +# define BOOST_PP_DEC_248 247 +# define BOOST_PP_DEC_249 248 +# define BOOST_PP_DEC_250 249 +# define BOOST_PP_DEC_251 250 +# define BOOST_PP_DEC_252 251 +# define BOOST_PP_DEC_253 252 +# define BOOST_PP_DEC_254 253 +# define BOOST_PP_DEC_255 254 +# define BOOST_PP_DEC_256 255 +# define BOOST_PP_DEC_257 256 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/detail/div_base.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/detail/div_base.hpp new file mode 100644 index 0000000..106632a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/detail/div_base.hpp @@ -0,0 +1,61 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_DIV_BASE_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_DETAIL_DIV_BASE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_DIV_BASE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_DIV_BASE(x, y) BOOST_PP_WHILE(BOOST_PP_DIV_BASE_P, BOOST_PP_DIV_BASE_O, (0, x, y)) +# else +# define BOOST_PP_DIV_BASE(x, y) BOOST_PP_DIV_BASE_I(x, y) +# define BOOST_PP_DIV_BASE_I(x, y) BOOST_PP_WHILE(BOOST_PP_DIV_BASE_P, BOOST_PP_DIV_BASE_O, (0, x, y)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_DIV_BASE_P(d, rxy) BOOST_PP_DIV_BASE_P_IM(d, BOOST_PP_TUPLE_REM_3 rxy) +# define BOOST_PP_DIV_BASE_P_IM(d, im) BOOST_PP_DIV_BASE_P_I(d, im) +# else +# define BOOST_PP_DIV_BASE_P(d, rxy) BOOST_PP_DIV_BASE_P_I(d, BOOST_PP_TUPLE_ELEM(3, 0, rxy), BOOST_PP_TUPLE_ELEM(3, 1, rxy), BOOST_PP_TUPLE_ELEM(3, 2, rxy)) +# endif +# +# define BOOST_PP_DIV_BASE_P_I(d, r, x, y) BOOST_PP_LESS_EQUAL_D(d, y, x) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_DIV_BASE_O(d, rxy) BOOST_PP_DIV_BASE_O_IM(d, BOOST_PP_TUPLE_REM_3 rxy) +# define BOOST_PP_DIV_BASE_O_IM(d, im) BOOST_PP_DIV_BASE_O_I(d, im) +# else +# define BOOST_PP_DIV_BASE_O(d, rxy) BOOST_PP_DIV_BASE_O_I(d, BOOST_PP_TUPLE_ELEM(3, 0, rxy), BOOST_PP_TUPLE_ELEM(3, 1, rxy), BOOST_PP_TUPLE_ELEM(3, 2, rxy)) +# endif +# +# define BOOST_PP_DIV_BASE_O_I(d, r, x, y) (BOOST_PP_INC(r), BOOST_PP_SUB_D(d, x, y), y) +# +# /* BOOST_PP_DIV_BASE_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_DIV_BASE_D(d, x, y) BOOST_PP_WHILE_ ## d(BOOST_PP_DIV_BASE_P, BOOST_PP_DIV_BASE_O, (0, x, y)) +# else +# define BOOST_PP_DIV_BASE_D(d, x, y) BOOST_PP_DIV_BASE_D_I(d, x, y) +# define BOOST_PP_DIV_BASE_D_I(d, x, y) BOOST_PP_WHILE_ ## d(BOOST_PP_DIV_BASE_P, BOOST_PP_DIV_BASE_O, (0, x, y)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/div.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/div.hpp new file mode 100644 index 0000000..277596c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/div.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_DIV_HPP +# +# include +# include +# include +# +# /* BOOST_PP_DIV */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_DIV(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE(x, y)) +# else +# define BOOST_PP_DIV(x, y) BOOST_PP_DIV_I(x, y) +# define BOOST_PP_DIV_I(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE(x, y)) +# endif +# +# /* BOOST_PP_DIV_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_DIV_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE_D(d, x, y)) +# else +# define BOOST_PP_DIV_D(d, x, y) BOOST_PP_DIV_D_I(d, x, y) +# define BOOST_PP_DIV_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_DIV_BASE_D(d, x, y)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/inc.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/inc.hpp new file mode 100644 index 0000000..1597ab8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/inc.hpp @@ -0,0 +1,288 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_INC_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_INC_HPP +# +# include +# +# /* BOOST_PP_INC */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_INC(x) BOOST_PP_INC_I(x) +# else +# define BOOST_PP_INC(x) BOOST_PP_INC_OO((x)) +# define BOOST_PP_INC_OO(par) BOOST_PP_INC_I ## par +# endif +# +# define BOOST_PP_INC_I(x) BOOST_PP_INC_ ## x +# +# define BOOST_PP_INC_0 1 +# define BOOST_PP_INC_1 2 +# define BOOST_PP_INC_2 3 +# define BOOST_PP_INC_3 4 +# define BOOST_PP_INC_4 5 +# define BOOST_PP_INC_5 6 +# define BOOST_PP_INC_6 7 +# define BOOST_PP_INC_7 8 +# define BOOST_PP_INC_8 9 +# define BOOST_PP_INC_9 10 +# define BOOST_PP_INC_10 11 +# define BOOST_PP_INC_11 12 +# define BOOST_PP_INC_12 13 +# define BOOST_PP_INC_13 14 +# define BOOST_PP_INC_14 15 +# define BOOST_PP_INC_15 16 +# define BOOST_PP_INC_16 17 +# define BOOST_PP_INC_17 18 +# define BOOST_PP_INC_18 19 +# define BOOST_PP_INC_19 20 +# define BOOST_PP_INC_20 21 +# define BOOST_PP_INC_21 22 +# define BOOST_PP_INC_22 23 +# define BOOST_PP_INC_23 24 +# define BOOST_PP_INC_24 25 +# define BOOST_PP_INC_25 26 +# define BOOST_PP_INC_26 27 +# define BOOST_PP_INC_27 28 +# define BOOST_PP_INC_28 29 +# define BOOST_PP_INC_29 30 +# define BOOST_PP_INC_30 31 +# define BOOST_PP_INC_31 32 +# define BOOST_PP_INC_32 33 +# define BOOST_PP_INC_33 34 +# define BOOST_PP_INC_34 35 +# define BOOST_PP_INC_35 36 +# define BOOST_PP_INC_36 37 +# define BOOST_PP_INC_37 38 +# define BOOST_PP_INC_38 39 +# define BOOST_PP_INC_39 40 +# define BOOST_PP_INC_40 41 +# define BOOST_PP_INC_41 42 +# define BOOST_PP_INC_42 43 +# define BOOST_PP_INC_43 44 +# define BOOST_PP_INC_44 45 +# define BOOST_PP_INC_45 46 +# define BOOST_PP_INC_46 47 +# define BOOST_PP_INC_47 48 +# define BOOST_PP_INC_48 49 +# define BOOST_PP_INC_49 50 +# define BOOST_PP_INC_50 51 +# define BOOST_PP_INC_51 52 +# define BOOST_PP_INC_52 53 +# define BOOST_PP_INC_53 54 +# define BOOST_PP_INC_54 55 +# define BOOST_PP_INC_55 56 +# define BOOST_PP_INC_56 57 +# define BOOST_PP_INC_57 58 +# define BOOST_PP_INC_58 59 +# define BOOST_PP_INC_59 60 +# define BOOST_PP_INC_60 61 +# define BOOST_PP_INC_61 62 +# define BOOST_PP_INC_62 63 +# define BOOST_PP_INC_63 64 +# define BOOST_PP_INC_64 65 +# define BOOST_PP_INC_65 66 +# define BOOST_PP_INC_66 67 +# define BOOST_PP_INC_67 68 +# define BOOST_PP_INC_68 69 +# define BOOST_PP_INC_69 70 +# define BOOST_PP_INC_70 71 +# define BOOST_PP_INC_71 72 +# define BOOST_PP_INC_72 73 +# define BOOST_PP_INC_73 74 +# define BOOST_PP_INC_74 75 +# define BOOST_PP_INC_75 76 +# define BOOST_PP_INC_76 77 +# define BOOST_PP_INC_77 78 +# define BOOST_PP_INC_78 79 +# define BOOST_PP_INC_79 80 +# define BOOST_PP_INC_80 81 +# define BOOST_PP_INC_81 82 +# define BOOST_PP_INC_82 83 +# define BOOST_PP_INC_83 84 +# define BOOST_PP_INC_84 85 +# define BOOST_PP_INC_85 86 +# define BOOST_PP_INC_86 87 +# define BOOST_PP_INC_87 88 +# define BOOST_PP_INC_88 89 +# define BOOST_PP_INC_89 90 +# define BOOST_PP_INC_90 91 +# define BOOST_PP_INC_91 92 +# define BOOST_PP_INC_92 93 +# define BOOST_PP_INC_93 94 +# define BOOST_PP_INC_94 95 +# define BOOST_PP_INC_95 96 +# define BOOST_PP_INC_96 97 +# define BOOST_PP_INC_97 98 +# define BOOST_PP_INC_98 99 +# define BOOST_PP_INC_99 100 +# define BOOST_PP_INC_100 101 +# define BOOST_PP_INC_101 102 +# define BOOST_PP_INC_102 103 +# define BOOST_PP_INC_103 104 +# define BOOST_PP_INC_104 105 +# define BOOST_PP_INC_105 106 +# define BOOST_PP_INC_106 107 +# define BOOST_PP_INC_107 108 +# define BOOST_PP_INC_108 109 +# define BOOST_PP_INC_109 110 +# define BOOST_PP_INC_110 111 +# define BOOST_PP_INC_111 112 +# define BOOST_PP_INC_112 113 +# define BOOST_PP_INC_113 114 +# define BOOST_PP_INC_114 115 +# define BOOST_PP_INC_115 116 +# define BOOST_PP_INC_116 117 +# define BOOST_PP_INC_117 118 +# define BOOST_PP_INC_118 119 +# define BOOST_PP_INC_119 120 +# define BOOST_PP_INC_120 121 +# define BOOST_PP_INC_121 122 +# define BOOST_PP_INC_122 123 +# define BOOST_PP_INC_123 124 +# define BOOST_PP_INC_124 125 +# define BOOST_PP_INC_125 126 +# define BOOST_PP_INC_126 127 +# define BOOST_PP_INC_127 128 +# define BOOST_PP_INC_128 129 +# define BOOST_PP_INC_129 130 +# define BOOST_PP_INC_130 131 +# define BOOST_PP_INC_131 132 +# define BOOST_PP_INC_132 133 +# define BOOST_PP_INC_133 134 +# define BOOST_PP_INC_134 135 +# define BOOST_PP_INC_135 136 +# define BOOST_PP_INC_136 137 +# define BOOST_PP_INC_137 138 +# define BOOST_PP_INC_138 139 +# define BOOST_PP_INC_139 140 +# define BOOST_PP_INC_140 141 +# define BOOST_PP_INC_141 142 +# define BOOST_PP_INC_142 143 +# define BOOST_PP_INC_143 144 +# define BOOST_PP_INC_144 145 +# define BOOST_PP_INC_145 146 +# define BOOST_PP_INC_146 147 +# define BOOST_PP_INC_147 148 +# define BOOST_PP_INC_148 149 +# define BOOST_PP_INC_149 150 +# define BOOST_PP_INC_150 151 +# define BOOST_PP_INC_151 152 +# define BOOST_PP_INC_152 153 +# define BOOST_PP_INC_153 154 +# define BOOST_PP_INC_154 155 +# define BOOST_PP_INC_155 156 +# define BOOST_PP_INC_156 157 +# define BOOST_PP_INC_157 158 +# define BOOST_PP_INC_158 159 +# define BOOST_PP_INC_159 160 +# define BOOST_PP_INC_160 161 +# define BOOST_PP_INC_161 162 +# define BOOST_PP_INC_162 163 +# define BOOST_PP_INC_163 164 +# define BOOST_PP_INC_164 165 +# define BOOST_PP_INC_165 166 +# define BOOST_PP_INC_166 167 +# define BOOST_PP_INC_167 168 +# define BOOST_PP_INC_168 169 +# define BOOST_PP_INC_169 170 +# define BOOST_PP_INC_170 171 +# define BOOST_PP_INC_171 172 +# define BOOST_PP_INC_172 173 +# define BOOST_PP_INC_173 174 +# define BOOST_PP_INC_174 175 +# define BOOST_PP_INC_175 176 +# define BOOST_PP_INC_176 177 +# define BOOST_PP_INC_177 178 +# define BOOST_PP_INC_178 179 +# define BOOST_PP_INC_179 180 +# define BOOST_PP_INC_180 181 +# define BOOST_PP_INC_181 182 +# define BOOST_PP_INC_182 183 +# define BOOST_PP_INC_183 184 +# define BOOST_PP_INC_184 185 +# define BOOST_PP_INC_185 186 +# define BOOST_PP_INC_186 187 +# define BOOST_PP_INC_187 188 +# define BOOST_PP_INC_188 189 +# define BOOST_PP_INC_189 190 +# define BOOST_PP_INC_190 191 +# define BOOST_PP_INC_191 192 +# define BOOST_PP_INC_192 193 +# define BOOST_PP_INC_193 194 +# define BOOST_PP_INC_194 195 +# define BOOST_PP_INC_195 196 +# define BOOST_PP_INC_196 197 +# define BOOST_PP_INC_197 198 +# define BOOST_PP_INC_198 199 +# define BOOST_PP_INC_199 200 +# define BOOST_PP_INC_200 201 +# define BOOST_PP_INC_201 202 +# define BOOST_PP_INC_202 203 +# define BOOST_PP_INC_203 204 +# define BOOST_PP_INC_204 205 +# define BOOST_PP_INC_205 206 +# define BOOST_PP_INC_206 207 +# define BOOST_PP_INC_207 208 +# define BOOST_PP_INC_208 209 +# define BOOST_PP_INC_209 210 +# define BOOST_PP_INC_210 211 +# define BOOST_PP_INC_211 212 +# define BOOST_PP_INC_212 213 +# define BOOST_PP_INC_213 214 +# define BOOST_PP_INC_214 215 +# define BOOST_PP_INC_215 216 +# define BOOST_PP_INC_216 217 +# define BOOST_PP_INC_217 218 +# define BOOST_PP_INC_218 219 +# define BOOST_PP_INC_219 220 +# define BOOST_PP_INC_220 221 +# define BOOST_PP_INC_221 222 +# define BOOST_PP_INC_222 223 +# define BOOST_PP_INC_223 224 +# define BOOST_PP_INC_224 225 +# define BOOST_PP_INC_225 226 +# define BOOST_PP_INC_226 227 +# define BOOST_PP_INC_227 228 +# define BOOST_PP_INC_228 229 +# define BOOST_PP_INC_229 230 +# define BOOST_PP_INC_230 231 +# define BOOST_PP_INC_231 232 +# define BOOST_PP_INC_232 233 +# define BOOST_PP_INC_233 234 +# define BOOST_PP_INC_234 235 +# define BOOST_PP_INC_235 236 +# define BOOST_PP_INC_236 237 +# define BOOST_PP_INC_237 238 +# define BOOST_PP_INC_238 239 +# define BOOST_PP_INC_239 240 +# define BOOST_PP_INC_240 241 +# define BOOST_PP_INC_241 242 +# define BOOST_PP_INC_242 243 +# define BOOST_PP_INC_243 244 +# define BOOST_PP_INC_244 245 +# define BOOST_PP_INC_245 246 +# define BOOST_PP_INC_246 247 +# define BOOST_PP_INC_247 248 +# define BOOST_PP_INC_248 249 +# define BOOST_PP_INC_249 250 +# define BOOST_PP_INC_250 251 +# define BOOST_PP_INC_251 252 +# define BOOST_PP_INC_252 253 +# define BOOST_PP_INC_253 254 +# define BOOST_PP_INC_254 255 +# define BOOST_PP_INC_255 256 +# define BOOST_PP_INC_256 256 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/mod.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/mod.hpp new file mode 100644 index 0000000..62489d1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/mod.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_MOD_HPP +# +# include +# include +# include +# +# /* BOOST_PP_MOD */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MOD(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y)) +# else +# define BOOST_PP_MOD(x, y) BOOST_PP_MOD_I(x, y) +# define BOOST_PP_MOD_I(x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE(x, y)) +# endif +# +# /* BOOST_PP_MOD_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MOD_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y)) +# else +# define BOOST_PP_MOD_D(d, x, y) BOOST_PP_MOD_D_I(d, x, y) +# define BOOST_PP_MOD_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 1, BOOST_PP_DIV_BASE_D(d, x, y)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/mul.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/mul.hpp new file mode 100644 index 0000000..f3d9ffc --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/mul.hpp @@ -0,0 +1,53 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_MUL_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_MUL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MUL(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y))) +# else +# define BOOST_PP_MUL(x, y) BOOST_PP_MUL_I(x, y) +# define BOOST_PP_MUL_I(x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y))) +# endif +# +# define BOOST_PP_MUL_P(d, rxy) BOOST_PP_TUPLE_ELEM(3, 2, rxy) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_MUL_O(d, rxy) BOOST_PP_MUL_O_IM(d, BOOST_PP_TUPLE_REM_3 rxy) +# define BOOST_PP_MUL_O_IM(d, im) BOOST_PP_MUL_O_I(d, im) +# else +# define BOOST_PP_MUL_O(d, rxy) BOOST_PP_MUL_O_I(d, BOOST_PP_TUPLE_ELEM(3, 0, rxy), BOOST_PP_TUPLE_ELEM(3, 1, rxy), BOOST_PP_TUPLE_ELEM(3, 2, rxy)) +# endif +# +# define BOOST_PP_MUL_O_I(d, r, x, y) (BOOST_PP_ADD_D(d, r, x), x, BOOST_PP_DEC(y)) +# +# /* BOOST_PP_MUL_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MUL_D(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y))) +# else +# define BOOST_PP_MUL_D(d, x, y) BOOST_PP_MUL_D_I(d, x, y) +# define BOOST_PP_MUL_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(3, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_MUL_P, BOOST_PP_MUL_O, (0, x, y))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/arithmetic/sub.hpp b/plugin/wave/include/boost/preprocessor/arithmetic/sub.hpp new file mode 100644 index 0000000..5262cda --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/arithmetic/sub.hpp @@ -0,0 +1,50 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP +# define BOOST_PREPROCESSOR_ARITHMETIC_SUB_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_SUB */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SUB(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) +# else +# define BOOST_PP_SUB(x, y) BOOST_PP_SUB_I(x, y) +# define BOOST_PP_SUB_I(x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) +# endif +# +# define BOOST_PP_SUB_P(d, xy) BOOST_PP_TUPLE_ELEM(2, 1, xy) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I xy +# else +# define BOOST_PP_SUB_O(d, xy) BOOST_PP_SUB_O_I(BOOST_PP_TUPLE_ELEM(2, 0, xy), BOOST_PP_TUPLE_ELEM(2, 1, xy)) +# endif +# +# define BOOST_PP_SUB_O_I(x, y) (BOOST_PP_DEC(x), BOOST_PP_DEC(y)) +# +# /* BOOST_PP_SUB_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SUB_D(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) +# else +# define BOOST_PP_SUB_D(d, x, y) BOOST_PP_SUB_D_I(d, x, y) +# define BOOST_PP_SUB_D_I(d, x, y) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_SUB_P, BOOST_PP_SUB_O, (x, y))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array.hpp b/plugin/wave/include/boost/preprocessor/array.hpp new file mode 100644 index 0000000..3b6a771 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_HPP +# define BOOST_PREPROCESSOR_ARRAY_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/data.hpp b/plugin/wave/include/boost/preprocessor/array/data.hpp new file mode 100644 index 0000000..10c926a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/data.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_DATA_HPP +# define BOOST_PREPROCESSOR_ARRAY_DATA_HPP +# +# include +# include +# +# /* BOOST_PP_ARRAY_DATA */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_DATA(array) BOOST_PP_TUPLE_ELEM(2, 1, array) +# else +# define BOOST_PP_ARRAY_DATA(array) BOOST_PP_ARRAY_DATA_I(array) +# define BOOST_PP_ARRAY_DATA_I(array) BOOST_PP_ARRAY_DATA_II array +# define BOOST_PP_ARRAY_DATA_II(size, data) data +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/detail/get_data.hpp b/plugin/wave/include/boost/preprocessor/array/detail/get_data.hpp new file mode 100644 index 0000000..15ae740 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/detail/get_data.hpp @@ -0,0 +1,55 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_DETAIL_GET_DATA_HPP +# define BOOST_PREPROCESSOR_ARRAY_DETAIL_GET_DATA_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_DETAIL_GET_DATA */ +# +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_NONE(size, data) + +# if BOOST_PP_VARIADICS && !(BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400) +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_DEFAULT(size, data) BOOST_PP_TUPLE_REM(size) data +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_CAT(size, data) BOOST_PP_TUPLE_REM_CAT(size) data +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY(size, data) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_IS_1(size), \ + BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_CAT, \ + BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY_VC_DEFAULT \ + ) \ + (size,data) \ +/**/ +# else +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY(size, data) BOOST_PP_TUPLE_REM(size) data +# endif +# else +# define BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY(size, data) BOOST_PP_TUPLE_REM(size) data +# endif + +# define BOOST_PP_ARRAY_DETAIL_GET_DATA(size, data) \ + BOOST_PP_IF \ + ( \ + size, \ + BOOST_PP_ARRAY_DETAIL_GET_DATA_ANY, \ + BOOST_PP_ARRAY_DETAIL_GET_DATA_NONE \ + ) \ + (size,data) \ +/**/ +# +# endif /* BOOST_PREPROCESSOR_ARRAY_DETAIL_GET_DATA_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/array/elem.hpp b/plugin/wave/include/boost/preprocessor/array/elem.hpp new file mode 100644 index 0000000..105ba24 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/elem.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_ELEM_HPP +# define BOOST_PREPROCESSOR_ARRAY_ELEM_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_ELEM */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_ELEM(i, array) BOOST_PP_TUPLE_ELEM(BOOST_PP_ARRAY_SIZE(array), i, BOOST_PP_ARRAY_DATA(array)) +# else +# define BOOST_PP_ARRAY_ELEM(i, array) BOOST_PP_ARRAY_ELEM_I(i, array) +# define BOOST_PP_ARRAY_ELEM_I(i, array) BOOST_PP_TUPLE_ELEM(BOOST_PP_ARRAY_SIZE(array), i, BOOST_PP_ARRAY_DATA(array)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/enum.hpp b/plugin/wave/include/boost/preprocessor/array/enum.hpp new file mode 100644 index 0000000..9710f9c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/enum.hpp @@ -0,0 +1,33 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_ENUM_HPP +# define BOOST_PREPROCESSOR_ARRAY_ENUM_HPP +# +# include +# include +# include +# +# /* BOOST_PP_ARRAY_ENUM */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_ARRAY_ENUM(array) BOOST_PP_ARRAY_ENUM_I(BOOST_PP_TUPLE_REM_CTOR, array) +# define BOOST_PP_ARRAY_ENUM_I(m, args) BOOST_PP_ARRAY_ENUM_II(m, args) +# define BOOST_PP_ARRAY_ENUM_II(m, args) BOOST_PP_CAT(m ## args,) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_ARRAY_ENUM(array) BOOST_PP_ARRAY_ENUM_I(array) +# define BOOST_PP_ARRAY_ENUM_I(array) BOOST_PP_TUPLE_REM_CTOR ## array +# else +# define BOOST_PP_ARRAY_ENUM(array) BOOST_PP_TUPLE_REM_CTOR array +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/insert.hpp b/plugin/wave/include/boost/preprocessor/array/insert.hpp new file mode 100644 index 0000000..b8fe5b8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/insert.hpp @@ -0,0 +1,55 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_INSERT_HPP +# define BOOST_PREPROCESSOR_ARRAY_INSERT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_INSERT */ +# +# define BOOST_PP_ARRAY_INSERT(array, i, elem) BOOST_PP_ARRAY_INSERT_I(BOOST_PP_DEDUCE_D(), array, i, elem) +# define BOOST_PP_ARRAY_INSERT_I(d, array, i, elem) BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) +# +# /* BOOST_PP_ARRAY_INSERT_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_INSERT_P, BOOST_PP_ARRAY_INSERT_O, (0, i, elem, (0, ()), array))) +# else +# define BOOST_PP_ARRAY_INSERT_D(d, array, i, elem) BOOST_PP_ARRAY_INSERT_D_I(d, array, i, elem) +# define BOOST_PP_ARRAY_INSERT_D_I(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_INSERT_P, BOOST_PP_ARRAY_INSERT_O, (0, i, elem, (0, ()), array))) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ARRAY_INSERT_P(d, state) BOOST_PP_ARRAY_INSERT_P_I state +# else +# define BOOST_PP_ARRAY_INSERT_P(d, state) BOOST_PP_ARRAY_INSERT_P_I(nil, nil, nil, BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state)) +# endif +# +# define BOOST_PP_ARRAY_INSERT_P_I(_i, _ii, _iii, res, arr) BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), BOOST_PP_INC(BOOST_PP_ARRAY_SIZE(arr))) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ARRAY_INSERT_O(d, state) BOOST_PP_ARRAY_INSERT_O_I state +# else +# define BOOST_PP_ARRAY_INSERT_O(d, state) BOOST_PP_ARRAY_INSERT_O_I(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_TUPLE_ELEM(5, 1, state), BOOST_PP_TUPLE_ELEM(5, 2, state), BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state)) +# endif +# +# define BOOST_PP_ARRAY_INSERT_O_I(n, i, elem, res, arr) (BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_INC(n), n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(BOOST_PP_ARRAY_SIZE(res), i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/pop_back.hpp b/plugin/wave/include/boost/preprocessor/array/pop_back.hpp new file mode 100644 index 0000000..29d2a45 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/pop_back.hpp @@ -0,0 +1,37 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_POP_BACK_HPP +# define BOOST_PREPROCESSOR_ARRAY_POP_BACK_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_POP_BACK */ +# +# define BOOST_PP_ARRAY_POP_BACK(array) BOOST_PP_ARRAY_POP_BACK_Z(BOOST_PP_DEDUCE_Z(), array) +# +# /* BOOST_PP_ARRAY_POP_BACK_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_POP_BACK_Z(z, array) BOOST_PP_ARRAY_POP_BACK_I(z, BOOST_PP_ARRAY_SIZE(array), array) +# else +# define BOOST_PP_ARRAY_POP_BACK_Z(z, array) BOOST_PP_ARRAY_POP_BACK_Z_D(z, array) +# define BOOST_PP_ARRAY_POP_BACK_Z_D(z, array) BOOST_PP_ARRAY_POP_BACK_I(z, BOOST_PP_ARRAY_SIZE(array), array) +# endif +# +# define BOOST_PP_ARRAY_POP_BACK_I(z, size, array) (BOOST_PP_DEC(size), (BOOST_PP_ENUM_ ## z(BOOST_PP_DEC(size), BOOST_PP_ARRAY_POP_BACK_M, array))) +# define BOOST_PP_ARRAY_POP_BACK_M(z, n, data) BOOST_PP_ARRAY_ELEM(n, data) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/pop_front.hpp b/plugin/wave/include/boost/preprocessor/array/pop_front.hpp new file mode 100644 index 0000000..7d9069c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/pop_front.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_POP_FRONT_HPP +# define BOOST_PREPROCESSOR_ARRAY_POP_FRONT_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_POP_FRONT */ +# +# define BOOST_PP_ARRAY_POP_FRONT(array) BOOST_PP_ARRAY_POP_FRONT_Z(BOOST_PP_DEDUCE_Z(), array) +# +# /* BOOST_PP_ARRAY_POP_FRONT_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_POP_FRONT_Z(z, array) BOOST_PP_ARRAY_POP_FRONT_I(z, BOOST_PP_ARRAY_SIZE(array), array) +# else +# define BOOST_PP_ARRAY_POP_FRONT_Z(z, array) BOOST_PP_ARRAY_POP_FRONT_Z_D(z, array) +# define BOOST_PP_ARRAY_POP_FRONT_Z_D(z, array) BOOST_PP_ARRAY_POP_FRONT_I(z, BOOST_PP_ARRAY_SIZE(array), array) +# endif +# +# define BOOST_PP_ARRAY_POP_FRONT_I(z, size, array) (BOOST_PP_DEC(size), (BOOST_PP_ENUM_ ## z(BOOST_PP_DEC(size), BOOST_PP_ARRAY_POP_FRONT_M, array))) +# define BOOST_PP_ARRAY_POP_FRONT_M(z, n, data) BOOST_PP_ARRAY_ELEM(BOOST_PP_INC(n), data) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/push_back.hpp b/plugin/wave/include/boost/preprocessor/array/push_back.hpp new file mode 100644 index 0000000..5dce9e0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/push_back.hpp @@ -0,0 +1,35 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_PUSH_BACK_HPP +# define BOOST_PREPROCESSOR_ARRAY_PUSH_BACK_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_PUSH_BACK */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_PUSH_BACK(array, elem) BOOST_PP_ARRAY_PUSH_BACK_I(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array), elem) +# else +# define BOOST_PP_ARRAY_PUSH_BACK(array, elem) BOOST_PP_ARRAY_PUSH_BACK_D(array, elem) +# define BOOST_PP_ARRAY_PUSH_BACK_D(array, elem) BOOST_PP_ARRAY_PUSH_BACK_I(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array), elem) +# endif +# +# define BOOST_PP_ARRAY_PUSH_BACK_I(size, data, elem) (BOOST_PP_INC(size), (BOOST_PP_ARRAY_DETAIL_GET_DATA(size,data) BOOST_PP_COMMA_IF(size) elem)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/push_front.hpp b/plugin/wave/include/boost/preprocessor/array/push_front.hpp new file mode 100644 index 0000000..a6c6dc7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/push_front.hpp @@ -0,0 +1,35 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_PUSH_FRONT_HPP +# define BOOST_PREPROCESSOR_ARRAY_PUSH_FRONT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_PUSH_FRONT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_PUSH_FRONT(array, elem) BOOST_PP_ARRAY_PUSH_FRONT_I(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array), elem) +# else +# define BOOST_PP_ARRAY_PUSH_FRONT(array, elem) BOOST_PP_ARRAY_PUSH_FRONT_D(array, elem) +# define BOOST_PP_ARRAY_PUSH_FRONT_D(array, elem) BOOST_PP_ARRAY_PUSH_FRONT_I(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array), elem) +# endif +# +# define BOOST_PP_ARRAY_PUSH_FRONT_I(size, data, elem) (BOOST_PP_INC(size), (elem BOOST_PP_COMMA_IF(size) BOOST_PP_ARRAY_DETAIL_GET_DATA(size,data))) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/remove.hpp b/plugin/wave/include/boost/preprocessor/array/remove.hpp new file mode 100644 index 0000000..0260900 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/remove.hpp @@ -0,0 +1,54 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_REMOVE_HPP +# define BOOST_PREPROCESSOR_ARRAY_REMOVE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_REMOVE */ +# +# define BOOST_PP_ARRAY_REMOVE(array, i) BOOST_PP_ARRAY_REMOVE_I(BOOST_PP_DEDUCE_D(), array, i) +# define BOOST_PP_ARRAY_REMOVE_I(d, array, i) BOOST_PP_ARRAY_REMOVE_D(d, array, i) +# +# /* BOOST_PP_ARRAY_REMOVE_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_REMOVE_D(d, array, i) BOOST_PP_TUPLE_ELEM(4, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REMOVE_P, BOOST_PP_ARRAY_REMOVE_O, (0, i, (0, ()), array))) +# else +# define BOOST_PP_ARRAY_REMOVE_D(d, array, i) BOOST_PP_ARRAY_REMOVE_D_I(d, array, i) +# define BOOST_PP_ARRAY_REMOVE_D_I(d, array, i) BOOST_PP_TUPLE_ELEM(4, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REMOVE_P, BOOST_PP_ARRAY_REMOVE_O, (0, i, (0, ()), array))) +# endif +# +# define BOOST_PP_ARRAY_REMOVE_P(d, st) BOOST_PP_NOT_EQUAL(BOOST_PP_TUPLE_ELEM(4, 0, st), BOOST_PP_ARRAY_SIZE(BOOST_PP_TUPLE_ELEM(4, 3, st))) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ARRAY_REMOVE_O(d, st) BOOST_PP_ARRAY_REMOVE_O_I st +# else +# define BOOST_PP_ARRAY_REMOVE_O(d, st) BOOST_PP_ARRAY_REMOVE_O_I(BOOST_PP_TUPLE_ELEM(4, 0, st), BOOST_PP_TUPLE_ELEM(4, 1, st), BOOST_PP_TUPLE_ELEM(4, 2, st), BOOST_PP_TUPLE_ELEM(4, 3, st)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_ARRAY_REMOVE_O_I(n, i, res, arr) (BOOST_PP_INC(n), i, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_PUSH_BACK, res BOOST_PP_TUPLE_EAT_2)(res, BOOST_PP_ARRAY_ELEM(n, arr)), arr) +# else +# define BOOST_PP_ARRAY_REMOVE_O_I(n, i, res, arr) (BOOST_PP_INC(n), i, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_PUSH_BACK, BOOST_PP_TUPLE_ELEM_2_0)(res, BOOST_PP_ARRAY_ELEM(n, arr)), arr) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/replace.hpp b/plugin/wave/include/boost/preprocessor/array/replace.hpp new file mode 100644 index 0000000..10a1f09 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/replace.hpp @@ -0,0 +1,49 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_REPLACE_HPP +# define BOOST_PREPROCESSOR_ARRAY_REPLACE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_REPLACE */ +# +# define BOOST_PP_ARRAY_REPLACE(array, i, elem) BOOST_PP_ARRAY_REPLACE_I(BOOST_PP_DEDUCE_D(), array, i, elem) +# define BOOST_PP_ARRAY_REPLACE_I(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) +# +# /* BOOST_PP_ARRAY_REPLACE_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REPLACE_P, BOOST_PP_ARRAY_REPLACE_O, (0, i, elem, (0, ()), array))) +# else +# define BOOST_PP_ARRAY_REPLACE_D(d, array, i, elem) BOOST_PP_ARRAY_REPLACE_D_I(d, array, i, elem) +# define BOOST_PP_ARRAY_REPLACE_D_I(d, array, i, elem) BOOST_PP_TUPLE_ELEM(5, 3, BOOST_PP_WHILE_ ## d(BOOST_PP_ARRAY_REPLACE_P, BOOST_PP_ARRAY_REPLACE_O, (0, i, elem, (0, ()), array))) +# endif +# +# define BOOST_PP_ARRAY_REPLACE_P(d, state) BOOST_PP_NOT_EQUAL(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_ARRAY_SIZE(BOOST_PP_TUPLE_ELEM(5, 4, state))) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ARRAY_REPLACE_O(d, state) BOOST_PP_ARRAY_REPLACE_O_I state +# else +# define BOOST_PP_ARRAY_REPLACE_O(d, state) BOOST_PP_ARRAY_REPLACE_O_I(BOOST_PP_TUPLE_ELEM(5, 0, state), BOOST_PP_TUPLE_ELEM(5, 1, state), BOOST_PP_TUPLE_ELEM(5, 2, state), BOOST_PP_TUPLE_ELEM(5, 3, state), BOOST_PP_TUPLE_ELEM(5, 4, state)) +# endif +# +# define BOOST_PP_ARRAY_REPLACE_O_I(n, i, elem, res, arr) (BOOST_PP_INC(n), i, elem, BOOST_PP_ARRAY_PUSH_BACK(res, BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(n, i), BOOST_PP_ARRAY_ELEM(n, arr), elem)), arr) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/reverse.hpp b/plugin/wave/include/boost/preprocessor/array/reverse.hpp new file mode 100644 index 0000000..a6a4f75 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/reverse.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_REVERSE_HPP +# define BOOST_PREPROCESSOR_ARRAY_REVERSE_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_REVERSE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_REVERSE(array) (BOOST_PP_ARRAY_SIZE(array), BOOST_PP_TUPLE_REVERSE(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array))) +# else +# define BOOST_PP_ARRAY_REVERSE(array) BOOST_PP_ARRAY_REVERSE_I(array) +# define BOOST_PP_ARRAY_REVERSE_I(array) (BOOST_PP_ARRAY_SIZE(array), BOOST_PP_TUPLE_REVERSE(BOOST_PP_ARRAY_SIZE(array), BOOST_PP_ARRAY_DATA(array))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/size.hpp b/plugin/wave/include/boost/preprocessor/array/size.hpp new file mode 100644 index 0000000..3f370ee --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/size.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_SIZE_HPP +# define BOOST_PREPROCESSOR_ARRAY_SIZE_HPP +# +# include +# include +# +# /* BOOST_PP_ARRAY_SIZE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ARRAY_SIZE(array) BOOST_PP_TUPLE_ELEM(2, 0, array) +# else +# define BOOST_PP_ARRAY_SIZE(array) BOOST_PP_ARRAY_SIZE_I(array) +# define BOOST_PP_ARRAY_SIZE_I(array) BOOST_PP_ARRAY_SIZE_II array +# define BOOST_PP_ARRAY_SIZE_II(size, data) size +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/to_list.hpp b/plugin/wave/include/boost/preprocessor/array/to_list.hpp new file mode 100644 index 0000000..4cb45b6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/to_list.hpp @@ -0,0 +1,47 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_TO_LIST_HPP +# define BOOST_PREPROCESSOR_ARRAY_TO_LIST_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_TO_LIST */ +# +# define BOOST_PP_ARRAY_TO_LIST(array) \ + BOOST_PP_IF \ + ( \ + BOOST_PP_ARRAY_SIZE(array), \ + BOOST_PP_ARRAY_TO_LIST_DO, \ + BOOST_PP_ARRAY_TO_LIST_EMPTY \ + ) \ + (array) \ +/**/ +# +# define BOOST_PP_ARRAY_TO_LIST_EMPTY(array) BOOST_PP_NIL +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_ARRAY_TO_LIST_DO(array) BOOST_PP_ARRAY_TO_LIST_I(BOOST_PP_TUPLE_TO_LIST, array) +# define BOOST_PP_ARRAY_TO_LIST_I(m, args) BOOST_PP_ARRAY_TO_LIST_II(m, args) +# define BOOST_PP_ARRAY_TO_LIST_II(m, args) BOOST_PP_CAT(m ## args,) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_ARRAY_TO_LIST_DO(array) BOOST_PP_ARRAY_TO_LIST_I(array) +# define BOOST_PP_ARRAY_TO_LIST_I(array) BOOST_PP_TUPLE_TO_LIST ## array +# else +# define BOOST_PP_ARRAY_TO_LIST_DO(array) BOOST_PP_TUPLE_TO_LIST array +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/to_seq.hpp b/plugin/wave/include/boost/preprocessor/array/to_seq.hpp new file mode 100644 index 0000000..7303f34 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/to_seq.hpp @@ -0,0 +1,46 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_TO_SEQ_HPP +# define BOOST_PREPROCESSOR_ARRAY_TO_SEQ_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ARRAY_TO_SEQ */ +# +# define BOOST_PP_ARRAY_TO_SEQ(array) \ + BOOST_PP_IF \ + ( \ + BOOST_PP_ARRAY_SIZE(array), \ + BOOST_PP_ARRAY_TO_SEQ_DO, \ + BOOST_PP_ARRAY_TO_SEQ_EMPTY \ + ) \ + (array) \ +/**/ +# define BOOST_PP_ARRAY_TO_SEQ_EMPTY(array) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_ARRAY_TO_SEQ_DO(array) BOOST_PP_ARRAY_TO_SEQ_I(BOOST_PP_TUPLE_TO_SEQ, array) +# define BOOST_PP_ARRAY_TO_SEQ_I(m, args) BOOST_PP_ARRAY_TO_SEQ_II(m, args) +# define BOOST_PP_ARRAY_TO_SEQ_II(m, args) BOOST_PP_CAT(m ## args,) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_ARRAY_TO_SEQ_DO(array) BOOST_PP_ARRAY_TO_SEQ_I(array) +# define BOOST_PP_ARRAY_TO_SEQ_I(array) BOOST_PP_TUPLE_TO_SEQ ## array +# else +# define BOOST_PP_ARRAY_TO_SEQ_DO(array) BOOST_PP_TUPLE_TO_SEQ array +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/array/to_tuple.hpp b/plugin/wave/include/boost/preprocessor/array/to_tuple.hpp new file mode 100644 index 0000000..0d8defa --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/array/to_tuple.hpp @@ -0,0 +1,33 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ARRAY_TO_TUPLE_HPP +# define BOOST_PREPROCESSOR_ARRAY_TO_TUPLE_HPP +# +# include +# include +# include +# +# /* BOOST_PP_ARRAY_TO_TUPLE */ +# +# define BOOST_PP_ARRAY_TO_TUPLE(array) \ + BOOST_PP_IF \ + ( \ + BOOST_PP_ARRAY_SIZE(array), \ + BOOST_PP_ARRAY_DATA, \ + BOOST_PP_ARRAY_TO_TUPLE_EMPTY \ + ) \ + (array) \ +/**/ +# define BOOST_PP_ARRAY_TO_TUPLE_EMPTY(array) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/assert_msg.hpp b/plugin/wave/include/boost/preprocessor/assert_msg.hpp new file mode 100644 index 0000000..924dba1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/assert_msg.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ASSERT_MSG_HPP +# define BOOST_PREPROCESSOR_ASSERT_MSG_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/cat.hpp b/plugin/wave/include/boost/preprocessor/cat.hpp new file mode 100644 index 0000000..5e52850 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/cat.hpp @@ -0,0 +1,35 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CAT_HPP +# define BOOST_PREPROCESSOR_CAT_HPP +# +# include +# +# /* BOOST_PP_CAT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_CAT(a, b) BOOST_PP_CAT_I(a, b) +# else +# define BOOST_PP_CAT(a, b) BOOST_PP_CAT_OO((a, b)) +# define BOOST_PP_CAT_OO(par) BOOST_PP_CAT_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_CAT_I(a, b) a ## b +# else +# define BOOST_PP_CAT_I(a, b) BOOST_PP_CAT_II(~, a ## b) +# define BOOST_PP_CAT_II(p, res) res +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comma.hpp b/plugin/wave/include/boost/preprocessor/comma.hpp new file mode 100644 index 0000000..6e02fb6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comma.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMMA_HPP +# define BOOST_PREPROCESSOR_COMMA_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comma_if.hpp b/plugin/wave/include/boost/preprocessor/comma_if.hpp new file mode 100644 index 0000000..9ceb079 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comma_if.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMMA_IF_HPP +# define BOOST_PREPROCESSOR_COMMA_IF_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison.hpp b/plugin/wave/include/boost/preprocessor/comparison.hpp new file mode 100644 index 0000000..b09ac8f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison.hpp @@ -0,0 +1,24 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_HPP +# define BOOST_PREPROCESSOR_COMPARISON_HPP +# +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/equal.hpp b/plugin/wave/include/boost/preprocessor/comparison/equal.hpp new file mode 100644 index 0000000..d299efe --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/equal.hpp @@ -0,0 +1,34 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_EQUAL_HPP +# define BOOST_PREPROCESSOR_COMPARISON_EQUAL_HPP +# +# include +# include +# include +# +# /* BOOST_PP_EQUAL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_EQUAL(x, y) BOOST_PP_COMPL(BOOST_PP_NOT_EQUAL(x, y)) +# else +# define BOOST_PP_EQUAL(x, y) BOOST_PP_EQUAL_I(x, y) +# define BOOST_PP_EQUAL_I(x, y) BOOST_PP_COMPL(BOOST_PP_NOT_EQUAL(x, y)) +# endif +# +# /* BOOST_PP_EQUAL_D */ +# +# define BOOST_PP_EQUAL_D(d, x, y) BOOST_PP_EQUAL(x, y) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/greater.hpp b/plugin/wave/include/boost/preprocessor/comparison/greater.hpp new file mode 100644 index 0000000..83d2fcf --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/greater.hpp @@ -0,0 +1,38 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_GREATER_HPP +# define BOOST_PREPROCESSOR_COMPARISON_GREATER_HPP +# +# include +# include +# +# /* BOOST_PP_GREATER */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_GREATER(x, y) BOOST_PP_LESS(y, x) +# else +# define BOOST_PP_GREATER(x, y) BOOST_PP_GREATER_I(x, y) +# define BOOST_PP_GREATER_I(x, y) BOOST_PP_LESS(y, x) +# endif +# +# /* BOOST_PP_GREATER_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_GREATER_D(d, x, y) BOOST_PP_LESS_D(d, y, x) +# else +# define BOOST_PP_GREATER_D(d, x, y) BOOST_PP_GREATER_D_I(d, x, y) +# define BOOST_PP_GREATER_D_I(d, x, y) BOOST_PP_LESS_D(d, y, x) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/greater_equal.hpp b/plugin/wave/include/boost/preprocessor/comparison/greater_equal.hpp new file mode 100644 index 0000000..beaeaff --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/greater_equal.hpp @@ -0,0 +1,38 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_GREATER_EQUAL_HPP +# define BOOST_PREPROCESSOR_COMPARISON_GREATER_EQUAL_HPP +# +# include +# include +# +# /* BOOST_PP_GREATER_EQUAL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_GREATER_EQUAL(x, y) BOOST_PP_LESS_EQUAL(y, x) +# else +# define BOOST_PP_GREATER_EQUAL(x, y) BOOST_PP_GREATER_EQUAL_I(x, y) +# define BOOST_PP_GREATER_EQUAL_I(x, y) BOOST_PP_LESS_EQUAL(y, x) +# endif +# +# /* BOOST_PP_GREATER_EQUAL_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_GREATER_EQUAL_D(d, x, y) BOOST_PP_LESS_EQUAL_D(d, y, x) +# else +# define BOOST_PP_GREATER_EQUAL_D(d, x, y) BOOST_PP_GREATER_EQUAL_D_I(d, x, y) +# define BOOST_PP_GREATER_EQUAL_D_I(d, x, y) BOOST_PP_LESS_EQUAL_D(d, y, x) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/less.hpp b/plugin/wave/include/boost/preprocessor/comparison/less.hpp new file mode 100644 index 0000000..d91ea3d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/less.hpp @@ -0,0 +1,46 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_LESS_HPP +# define BOOST_PREPROCESSOR_COMPARISON_LESS_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LESS */ +# +# if BOOST_PP_CONFIG_FLAGS() & (BOOST_PP_CONFIG_MWCC() | BOOST_PP_CONFIG_DMC()) +# define BOOST_PP_LESS(x, y) BOOST_PP_BITAND(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL(x, y)) +# elif ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LESS(x, y) BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL, 0 BOOST_PP_TUPLE_EAT_2)(x, y) +# else +# define BOOST_PP_LESS(x, y) BOOST_PP_LESS_I(x, y) +# define BOOST_PP_LESS_I(x, y) BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL, 0 BOOST_PP_TUPLE_EAT_2)(x, y) +# endif +# +# /* BOOST_PP_LESS_D */ +# +# if BOOST_PP_CONFIG_FLAGS() & (BOOST_PP_CONFIG_MWCC() | BOOST_PP_CONFIG_DMC()) +# define BOOST_PP_LESS_D(d, x, y) BOOST_PP_BITAND(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL_D(d, x, y)) +# elif ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LESS_D(d, x, y) BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL_D, 0 BOOST_PP_TUPLE_EAT_3)(d, x, y) +# else +# define BOOST_PP_LESS_D(d, x, y) BOOST_PP_LESS_D_I(d, x, y) +# define BOOST_PP_LESS_D_I(d, x, y) BOOST_PP_IIF(BOOST_PP_NOT_EQUAL(x, y), BOOST_PP_LESS_EQUAL_D, 0 BOOST_PP_TUPLE_EAT_3)(d, x, y) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/less_equal.hpp b/plugin/wave/include/boost/preprocessor/comparison/less_equal.hpp new file mode 100644 index 0000000..1302d54 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/less_equal.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP +# define BOOST_PREPROCESSOR_COMPARISON_LESS_EQUAL_HPP +# +# include +# include +# include +# +# /* BOOST_PP_LESS_EQUAL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LESS_EQUAL(x, y) BOOST_PP_NOT(BOOST_PP_SUB(x, y)) +# else +# define BOOST_PP_LESS_EQUAL(x, y) BOOST_PP_LESS_EQUAL_I(x, y) +# define BOOST_PP_LESS_EQUAL_I(x, y) BOOST_PP_NOT(BOOST_PP_SUB(x, y)) +# endif +# +# /* BOOST_PP_LESS_EQUAL_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LESS_EQUAL_D(d, x, y) BOOST_PP_NOT(BOOST_PP_SUB_D(d, x, y)) +# else +# define BOOST_PP_LESS_EQUAL_D(d, x, y) BOOST_PP_LESS_EQUAL_D_I(d, x, y) +# define BOOST_PP_LESS_EQUAL_D_I(d, x, y) BOOST_PP_NOT(BOOST_PP_SUB_D(d, x, y)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/comparison/not_equal.hpp b/plugin/wave/include/boost/preprocessor/comparison/not_equal.hpp new file mode 100644 index 0000000..b4b0eae --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/comparison/not_equal.hpp @@ -0,0 +1,814 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP +# define BOOST_PREPROCESSOR_COMPARISON_NOT_EQUAL_HPP +# +# include +# include +# include +# +# /* BOOST_PP_NOT_EQUAL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_NOT_EQUAL(x, y) BOOST_PP_NOT_EQUAL_I(x, y) +# else +# define BOOST_PP_NOT_EQUAL(x, y) BOOST_PP_NOT_EQUAL_OO((x, y)) +# define BOOST_PP_NOT_EQUAL_OO(par) BOOST_PP_NOT_EQUAL_I ## par +# endif +# +# define BOOST_PP_NOT_EQUAL_I(x, y) BOOST_PP_CAT(BOOST_PP_NOT_EQUAL_CHECK_, BOOST_PP_NOT_EQUAL_ ## x(0, BOOST_PP_NOT_EQUAL_ ## y)) +# +# /* BOOST_PP_NOT_EQUAL_D */ +# +# define BOOST_PP_NOT_EQUAL_D(d, x, y) BOOST_PP_NOT_EQUAL(x, y) +# +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_0(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_1(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_2(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_3(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_4(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_5(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_6(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_7(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_8(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_9(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_10(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_11(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_12(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_13(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_14(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_15(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_16(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_17(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_18(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_19(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_20(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_21(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_22(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_23(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_24(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_25(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_26(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_27(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_28(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_29(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_30(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_31(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_32(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_33(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_34(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_35(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_36(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_37(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_38(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_39(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_40(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_41(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_42(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_43(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_44(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_45(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_46(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_47(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_48(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_49(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_50(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_51(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_52(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_53(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_54(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_55(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_56(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_57(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_58(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_59(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_60(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_61(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_62(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_63(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_64(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_65(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_66(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_67(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_68(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_69(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_70(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_71(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_72(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_73(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_74(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_75(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_76(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_77(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_78(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_79(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_80(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_81(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_82(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_83(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_84(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_85(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_86(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_87(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_88(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_89(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_90(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_91(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_92(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_93(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_94(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_95(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_96(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_97(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_98(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_99(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_100(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_101(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_102(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_103(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_104(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_105(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_106(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_107(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_108(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_109(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_110(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_111(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_112(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_113(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_114(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_115(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_116(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_117(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_118(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_119(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_120(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_121(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_122(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_123(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_124(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_125(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_126(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_127(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_128(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_129(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_130(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_131(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_132(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_133(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_134(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_135(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_136(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_137(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_138(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_139(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_140(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_141(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_142(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_143(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_144(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_145(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_146(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_147(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_148(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_149(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_150(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_151(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_152(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_153(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_154(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_155(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_156(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_157(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_158(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_159(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_160(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_161(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_162(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_163(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_164(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_165(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_166(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_167(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_168(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_169(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_170(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_171(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_172(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_173(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_174(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_175(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_176(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_177(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_178(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_179(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_180(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_181(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_182(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_183(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_184(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_185(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_186(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_187(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_188(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_189(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_190(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_191(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_192(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_193(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_194(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_195(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_196(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_197(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_198(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_199(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_200(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_201(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_202(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_203(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_204(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_205(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_206(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_207(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_208(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_209(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_210(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_211(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_212(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_213(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_214(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_215(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_216(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_217(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_218(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_219(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_220(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_221(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_222(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_223(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_224(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_225(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_226(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_227(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_228(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_229(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_230(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_231(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_232(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_233(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_234(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_235(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_236(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_237(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_238(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_239(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_240(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_241(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_242(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_243(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_244(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_245(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_246(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_247(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_248(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_249(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_250(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_251(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_252(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_253(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_254(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_255(c, y) 0 +# define BOOST_PP_NOT_EQUAL_CHECK_BOOST_PP_NOT_EQUAL_256(c, y) 0 +# +#if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_NOT_EQUAL_0(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_1(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_2(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_3(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_4(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_5(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_6(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_7(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_8(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_9(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_10(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_11(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_12(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_13(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_14(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_15(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_16(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_17(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_18(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_19(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_20(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_21(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_22(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_23(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_24(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_25(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_26(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_27(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_28(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_29(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_30(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_31(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_32(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_33(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_34(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_35(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_36(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_37(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_38(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_39(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_40(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_41(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_42(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_43(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_44(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_45(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_46(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_47(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_48(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_49(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_50(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_51(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_52(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_53(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_54(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_55(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_56(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_57(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_58(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_59(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_60(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_61(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_62(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_63(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_64(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_65(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_66(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_67(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_68(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_69(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_70(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_71(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_72(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_73(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_74(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_75(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_76(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_77(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_78(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_79(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_80(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_81(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_82(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_83(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_84(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_85(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_86(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_87(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_88(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_89(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_90(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_91(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_92(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_93(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_94(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_95(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_96(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_97(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_98(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_99(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_100(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_101(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_102(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_103(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_104(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_105(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_106(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_107(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_108(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_109(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_110(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_111(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_112(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_113(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_114(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_115(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_116(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_117(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_118(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_119(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_120(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_121(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_122(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_123(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_124(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_125(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_126(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_127(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_128(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_129(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_130(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_131(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_132(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_133(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_134(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_135(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_136(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_137(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_138(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_139(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_140(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_141(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_142(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_143(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_144(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_145(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_146(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_147(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_148(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_149(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_150(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_151(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_152(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_153(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_154(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_155(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_156(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_157(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_158(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_159(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_160(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_161(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_162(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_163(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_164(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_165(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_166(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_167(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_168(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_169(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_170(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_171(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_172(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_173(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_174(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_175(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_176(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_177(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_178(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_179(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_180(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_181(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_182(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_183(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_184(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_185(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_186(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_187(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_188(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_189(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_190(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_191(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_192(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_193(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_194(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_195(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_196(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_197(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_198(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_199(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_200(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_201(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_202(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_203(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_204(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_205(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_206(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_207(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_208(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_209(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_210(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_211(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_212(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_213(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_214(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_215(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_216(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_217(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_218(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_219(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_220(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_221(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_222(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_223(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_224(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_225(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_226(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_227(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_228(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_229(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_230(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_231(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_232(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_233(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_234(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_235(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_236(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_237(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_238(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_239(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_240(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_241(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_242(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_243(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_244(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_245(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_246(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_247(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_248(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_249(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_250(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_251(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_252(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_253(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_254(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_255(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_256(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y(1, BOOST_PP_NIL)) +# else +# define BOOST_PP_NOT_EQUAL_0(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_1(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_2(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_3(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_4(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_5(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_6(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_7(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_8(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_9(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_10(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_11(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_12(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_13(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_14(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_15(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_16(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_17(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_18(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_19(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_20(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_21(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_22(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_23(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_24(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_25(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_26(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_27(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_28(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_29(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_30(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_31(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_32(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_33(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_34(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_35(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_36(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_37(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_38(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_39(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_40(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_41(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_42(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_43(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_44(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_45(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_46(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_47(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_48(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_49(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_50(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_51(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_52(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_53(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_54(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_55(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_56(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_57(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_58(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_59(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_60(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_61(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_62(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_63(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_64(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_65(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_66(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_67(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_68(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_69(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_70(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_71(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_72(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_73(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_74(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_75(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_76(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_77(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_78(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_79(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_80(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_81(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_82(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_83(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_84(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_85(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_86(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_87(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_88(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_89(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_90(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_91(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_92(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_93(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_94(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_95(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_96(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_97(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_98(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_99(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_100(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_101(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_102(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_103(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_104(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_105(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_106(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_107(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_108(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_109(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_110(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_111(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_112(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_113(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_114(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_115(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_116(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_117(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_118(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_119(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_120(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_121(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_122(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_123(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_124(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_125(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_126(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_127(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_128(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_129(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_130(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_131(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_132(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_133(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_134(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_135(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_136(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_137(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_138(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_139(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_140(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_141(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_142(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_143(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_144(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_145(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_146(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_147(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_148(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_149(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_150(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_151(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_152(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_153(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_154(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_155(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_156(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_157(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_158(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_159(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_160(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_161(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_162(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_163(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_164(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_165(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_166(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_167(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_168(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_169(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_170(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_171(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_172(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_173(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_174(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_175(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_176(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_177(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_178(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_179(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_180(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_181(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_182(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_183(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_184(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_185(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_186(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_187(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_188(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_189(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_190(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_191(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_192(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_193(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_194(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_195(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_196(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_197(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_198(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_199(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_200(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_201(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_202(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_203(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_204(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_205(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_206(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_207(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_208(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_209(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_210(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_211(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_212(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_213(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_214(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_215(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_216(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_217(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_218(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_219(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_220(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_221(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_222(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_223(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_224(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_225(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_226(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_227(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_228(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_229(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_230(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_231(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_232(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_233(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_234(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_235(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_236(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_237(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_238(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_239(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_240(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_241(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_242(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_243(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_244(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_245(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_246(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_247(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_248(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_249(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_250(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_251(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_252(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_253(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_254(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_255(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# define BOOST_PP_NOT_EQUAL_256(c, y) BOOST_PP_IIF(c, BOOST_PP_NIL, y##(1, BOOST_PP_NIL)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/config/config.hpp b/plugin/wave/include/boost/preprocessor/config/config.hpp new file mode 100644 index 0000000..8be0e47 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/config/config.hpp @@ -0,0 +1,104 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP +# define BOOST_PREPROCESSOR_CONFIG_CONFIG_HPP +# +# /* BOOST_PP_CONFIG_FLAGS */ +# +# define BOOST_PP_CONFIG_STRICT() 0x0001 +# define BOOST_PP_CONFIG_IDEAL() 0x0002 +# +# define BOOST_PP_CONFIG_MSVC() 0x0004 +# define BOOST_PP_CONFIG_MWCC() 0x0008 +# define BOOST_PP_CONFIG_BCC() 0x0010 +# define BOOST_PP_CONFIG_EDG() 0x0020 +# define BOOST_PP_CONFIG_DMC() 0x0040 +# +# ifndef BOOST_PP_CONFIG_FLAGS +# if defined(__GCCXML__) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) +# elif defined(__WAVE__) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) +# elif defined(__MWERKS__) && __MWERKS__ >= 0x3200 +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) +# elif defined(__EDG__) || defined(__EDG_VERSION__) +# if defined(_MSC_VER) && (defined(__INTELLISENSE__) || __EDG_VERSION__ >= 308) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC()) +# else +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_EDG() | BOOST_PP_CONFIG_STRICT()) +# endif +# elif defined(__MWERKS__) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MWCC()) +# elif defined(__DMC__) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_DMC()) +# elif defined(__BORLANDC__) && __BORLANDC__ >= 0x581 +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) +# elif defined(__BORLANDC__) || defined(__IBMC__) || defined(__IBMCPP__) || defined(__SUNPRO_CC) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_BCC()) +# elif defined(_MSC_VER) && !defined(__clang__) +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_MSVC()) +# else +# define BOOST_PP_CONFIG_FLAGS() (BOOST_PP_CONFIG_STRICT()) +# endif +# endif +# +# /* BOOST_PP_CONFIG_EXTENDED_LINE_INFO */ +# +# ifndef BOOST_PP_CONFIG_EXTENDED_LINE_INFO +# define BOOST_PP_CONFIG_EXTENDED_LINE_INFO 0 +# endif +# +# /* BOOST_PP_CONFIG_ERRORS */ +# +# ifndef BOOST_PP_CONFIG_ERRORS +# ifdef NDEBUG +# define BOOST_PP_CONFIG_ERRORS 0 +# else +# define BOOST_PP_CONFIG_ERRORS 1 +# endif +# endif +# +# /* BOOST_PP_VARIADICS */ +# +# define BOOST_PP_VARIADICS_MSVC 0 +# if !defined BOOST_PP_VARIADICS +# /* variadic support explicitly disabled for all untested compilers */ +# if defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || ( defined __SUNPRO_CC && __SUNPRO_CC < 0x5120 ) || defined __HP_aCC && !defined __EDG__ || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI +# define BOOST_PP_VARIADICS 0 +# /* VC++ (C/C++) */ +# elif defined _MSC_VER && _MSC_VER >= 1400 && (!defined __EDG__ || defined(__INTELLISENSE__)) && !defined __clang__ +# define BOOST_PP_VARIADICS 1 +# undef BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_VARIADICS_MSVC 1 +# /* Wave (C/C++), GCC (C++) */ +# elif defined __WAVE__ && __WAVE_HAS_VARIADICS__ || defined __GNUC__ && defined __GXX_EXPERIMENTAL_CXX0X__ && __GXX_EXPERIMENTAL_CXX0X__ +# define BOOST_PP_VARIADICS 1 +# /* EDG-based (C/C++), GCC (C), and unknown (C/C++) */ +# elif !defined __cplusplus && __STDC_VERSION__ >= 199901L || __cplusplus >= 201103L +# define BOOST_PP_VARIADICS 1 +# else +# define BOOST_PP_VARIADICS 0 +# endif +# elif !BOOST_PP_VARIADICS + 1 < 2 +# undef BOOST_PP_VARIADICS +# define BOOST_PP_VARIADICS 1 +# if defined _MSC_VER && _MSC_VER >= 1400 && (defined(__INTELLISENSE__) || !(defined __EDG__ || defined __GCCXML__ || defined __CUDACC__ || defined __PATHSCALE__ || defined __clang__ || defined __DMC__ || defined __CODEGEARC__ || defined __BORLANDC__ || defined __MWERKS__ || defined __SUNPRO_CC || defined __HP_aCC || defined __MRC__ || defined __SC__ || defined __IBMCPP__ || defined __PGI)) +# undef BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_VARIADICS_MSVC 1 +# endif +# else +# undef BOOST_PP_VARIADICS +# define BOOST_PP_VARIADICS 0 +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/config/limits.hpp b/plugin/wave/include/boost/preprocessor/config/limits.hpp new file mode 100644 index 0000000..f312f29 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/config/limits.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# /* Revised by Edward Diener (2011) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONFIG_LIMITS_HPP +# define BOOST_PREPROCESSOR_CONFIG_LIMITS_HPP +# +# define BOOST_PP_LIMIT_MAG 256 +# define BOOST_PP_LIMIT_TUPLE 64 +# define BOOST_PP_LIMIT_DIM 3 +# define BOOST_PP_LIMIT_REPEAT 256 +# define BOOST_PP_LIMIT_WHILE 256 +# define BOOST_PP_LIMIT_FOR 256 +# define BOOST_PP_LIMIT_ITERATION 256 +# define BOOST_PP_LIMIT_ITERATION_DIM 3 +# define BOOST_PP_LIMIT_SEQ 256 +# define BOOST_PP_LIMIT_SLOT_SIG 10 +# define BOOST_PP_LIMIT_SLOT_COUNT 5 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control.hpp b/plugin/wave/include/boost/preprocessor/control.hpp new file mode 100644 index 0000000..809fbd9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_HPP +# define BOOST_PREPROCESSOR_CONTROL_HPP +# +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/deduce_d.hpp b/plugin/wave/include/boost/preprocessor/control/deduce_d.hpp new file mode 100644 index 0000000..a0276b0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/deduce_d.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP +# define BOOST_PREPROCESSOR_CONTROL_DEDUCE_D_HPP +# +# include +# include +# +# /* BOOST_PP_DEDUCE_D */ +# +# define BOOST_PP_DEDUCE_D() BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/detail/dmc/while.hpp b/plugin/wave/include/boost/preprocessor/control/detail/dmc/while.hpp new file mode 100644 index 0000000..95c3135 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/detail/dmc/while.hpp @@ -0,0 +1,536 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP +# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP +# +# include +# include +# include +# +# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_WHILE_1_C(BOOST_PP_BOOL(p##(2, s)), p, o, s) +# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_WHILE_2_C(BOOST_PP_BOOL(p##(3, s)), p, o, s) +# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_WHILE_3_C(BOOST_PP_BOOL(p##(4, s)), p, o, s) +# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_WHILE_4_C(BOOST_PP_BOOL(p##(5, s)), p, o, s) +# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_WHILE_5_C(BOOST_PP_BOOL(p##(6, s)), p, o, s) +# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_WHILE_6_C(BOOST_PP_BOOL(p##(7, s)), p, o, s) +# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_WHILE_7_C(BOOST_PP_BOOL(p##(8, s)), p, o, s) +# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_WHILE_8_C(BOOST_PP_BOOL(p##(9, s)), p, o, s) +# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_WHILE_9_C(BOOST_PP_BOOL(p##(10, s)), p, o, s) +# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_WHILE_10_C(BOOST_PP_BOOL(p##(11, s)), p, o, s) +# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_WHILE_11_C(BOOST_PP_BOOL(p##(12, s)), p, o, s) +# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_WHILE_12_C(BOOST_PP_BOOL(p##(13, s)), p, o, s) +# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_WHILE_13_C(BOOST_PP_BOOL(p##(14, s)), p, o, s) +# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_WHILE_14_C(BOOST_PP_BOOL(p##(15, s)), p, o, s) +# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_WHILE_15_C(BOOST_PP_BOOL(p##(16, s)), p, o, s) +# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_WHILE_16_C(BOOST_PP_BOOL(p##(17, s)), p, o, s) +# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_WHILE_17_C(BOOST_PP_BOOL(p##(18, s)), p, o, s) +# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_WHILE_18_C(BOOST_PP_BOOL(p##(19, s)), p, o, s) +# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_WHILE_19_C(BOOST_PP_BOOL(p##(20, s)), p, o, s) +# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_WHILE_20_C(BOOST_PP_BOOL(p##(21, s)), p, o, s) +# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_WHILE_21_C(BOOST_PP_BOOL(p##(22, s)), p, o, s) +# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_WHILE_22_C(BOOST_PP_BOOL(p##(23, s)), p, o, s) +# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_WHILE_23_C(BOOST_PP_BOOL(p##(24, s)), p, o, s) +# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_WHILE_24_C(BOOST_PP_BOOL(p##(25, s)), p, o, s) +# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_WHILE_25_C(BOOST_PP_BOOL(p##(26, s)), p, o, s) +# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_WHILE_26_C(BOOST_PP_BOOL(p##(27, s)), p, o, s) +# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_WHILE_27_C(BOOST_PP_BOOL(p##(28, s)), p, o, s) +# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_WHILE_28_C(BOOST_PP_BOOL(p##(29, s)), p, o, s) +# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_WHILE_29_C(BOOST_PP_BOOL(p##(30, s)), p, o, s) +# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_WHILE_30_C(BOOST_PP_BOOL(p##(31, s)), p, o, s) +# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_WHILE_31_C(BOOST_PP_BOOL(p##(32, s)), p, o, s) +# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_WHILE_32_C(BOOST_PP_BOOL(p##(33, s)), p, o, s) +# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_WHILE_33_C(BOOST_PP_BOOL(p##(34, s)), p, o, s) +# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_WHILE_34_C(BOOST_PP_BOOL(p##(35, s)), p, o, s) +# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_WHILE_35_C(BOOST_PP_BOOL(p##(36, s)), p, o, s) +# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_WHILE_36_C(BOOST_PP_BOOL(p##(37, s)), p, o, s) +# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_WHILE_37_C(BOOST_PP_BOOL(p##(38, s)), p, o, s) +# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_WHILE_38_C(BOOST_PP_BOOL(p##(39, s)), p, o, s) +# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_WHILE_39_C(BOOST_PP_BOOL(p##(40, s)), p, o, s) +# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_WHILE_40_C(BOOST_PP_BOOL(p##(41, s)), p, o, s) +# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_WHILE_41_C(BOOST_PP_BOOL(p##(42, s)), p, o, s) +# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_WHILE_42_C(BOOST_PP_BOOL(p##(43, s)), p, o, s) +# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_WHILE_43_C(BOOST_PP_BOOL(p##(44, s)), p, o, s) +# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_WHILE_44_C(BOOST_PP_BOOL(p##(45, s)), p, o, s) +# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_WHILE_45_C(BOOST_PP_BOOL(p##(46, s)), p, o, s) +# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_WHILE_46_C(BOOST_PP_BOOL(p##(47, s)), p, o, s) +# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_WHILE_47_C(BOOST_PP_BOOL(p##(48, s)), p, o, s) +# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_WHILE_48_C(BOOST_PP_BOOL(p##(49, s)), p, o, s) +# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_WHILE_49_C(BOOST_PP_BOOL(p##(50, s)), p, o, s) +# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_WHILE_50_C(BOOST_PP_BOOL(p##(51, s)), p, o, s) +# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_WHILE_51_C(BOOST_PP_BOOL(p##(52, s)), p, o, s) +# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_WHILE_52_C(BOOST_PP_BOOL(p##(53, s)), p, o, s) +# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_WHILE_53_C(BOOST_PP_BOOL(p##(54, s)), p, o, s) +# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_WHILE_54_C(BOOST_PP_BOOL(p##(55, s)), p, o, s) +# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_WHILE_55_C(BOOST_PP_BOOL(p##(56, s)), p, o, s) +# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_WHILE_56_C(BOOST_PP_BOOL(p##(57, s)), p, o, s) +# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_WHILE_57_C(BOOST_PP_BOOL(p##(58, s)), p, o, s) +# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_WHILE_58_C(BOOST_PP_BOOL(p##(59, s)), p, o, s) +# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_WHILE_59_C(BOOST_PP_BOOL(p##(60, s)), p, o, s) +# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_WHILE_60_C(BOOST_PP_BOOL(p##(61, s)), p, o, s) +# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_WHILE_61_C(BOOST_PP_BOOL(p##(62, s)), p, o, s) +# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_WHILE_62_C(BOOST_PP_BOOL(p##(63, s)), p, o, s) +# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_WHILE_63_C(BOOST_PP_BOOL(p##(64, s)), p, o, s) +# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_WHILE_64_C(BOOST_PP_BOOL(p##(65, s)), p, o, s) +# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_WHILE_65_C(BOOST_PP_BOOL(p##(66, s)), p, o, s) +# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_WHILE_66_C(BOOST_PP_BOOL(p##(67, s)), p, o, s) +# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_WHILE_67_C(BOOST_PP_BOOL(p##(68, s)), p, o, s) +# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_WHILE_68_C(BOOST_PP_BOOL(p##(69, s)), p, o, s) +# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_WHILE_69_C(BOOST_PP_BOOL(p##(70, s)), p, o, s) +# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_WHILE_70_C(BOOST_PP_BOOL(p##(71, s)), p, o, s) +# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_WHILE_71_C(BOOST_PP_BOOL(p##(72, s)), p, o, s) +# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_WHILE_72_C(BOOST_PP_BOOL(p##(73, s)), p, o, s) +# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_WHILE_73_C(BOOST_PP_BOOL(p##(74, s)), p, o, s) +# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_WHILE_74_C(BOOST_PP_BOOL(p##(75, s)), p, o, s) +# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_WHILE_75_C(BOOST_PP_BOOL(p##(76, s)), p, o, s) +# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_WHILE_76_C(BOOST_PP_BOOL(p##(77, s)), p, o, s) +# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_WHILE_77_C(BOOST_PP_BOOL(p##(78, s)), p, o, s) +# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_WHILE_78_C(BOOST_PP_BOOL(p##(79, s)), p, o, s) +# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_WHILE_79_C(BOOST_PP_BOOL(p##(80, s)), p, o, s) +# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_WHILE_80_C(BOOST_PP_BOOL(p##(81, s)), p, o, s) +# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_WHILE_81_C(BOOST_PP_BOOL(p##(82, s)), p, o, s) +# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_WHILE_82_C(BOOST_PP_BOOL(p##(83, s)), p, o, s) +# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_WHILE_83_C(BOOST_PP_BOOL(p##(84, s)), p, o, s) +# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_WHILE_84_C(BOOST_PP_BOOL(p##(85, s)), p, o, s) +# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_WHILE_85_C(BOOST_PP_BOOL(p##(86, s)), p, o, s) +# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_WHILE_86_C(BOOST_PP_BOOL(p##(87, s)), p, o, s) +# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_WHILE_87_C(BOOST_PP_BOOL(p##(88, s)), p, o, s) +# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_WHILE_88_C(BOOST_PP_BOOL(p##(89, s)), p, o, s) +# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_WHILE_89_C(BOOST_PP_BOOL(p##(90, s)), p, o, s) +# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_WHILE_90_C(BOOST_PP_BOOL(p##(91, s)), p, o, s) +# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_WHILE_91_C(BOOST_PP_BOOL(p##(92, s)), p, o, s) +# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_WHILE_92_C(BOOST_PP_BOOL(p##(93, s)), p, o, s) +# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_WHILE_93_C(BOOST_PP_BOOL(p##(94, s)), p, o, s) +# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_WHILE_94_C(BOOST_PP_BOOL(p##(95, s)), p, o, s) +# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_WHILE_95_C(BOOST_PP_BOOL(p##(96, s)), p, o, s) +# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_WHILE_96_C(BOOST_PP_BOOL(p##(97, s)), p, o, s) +# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_WHILE_97_C(BOOST_PP_BOOL(p##(98, s)), p, o, s) +# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_WHILE_98_C(BOOST_PP_BOOL(p##(99, s)), p, o, s) +# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_WHILE_99_C(BOOST_PP_BOOL(p##(100, s)), p, o, s) +# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_WHILE_100_C(BOOST_PP_BOOL(p##(101, s)), p, o, s) +# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_WHILE_101_C(BOOST_PP_BOOL(p##(102, s)), p, o, s) +# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_WHILE_102_C(BOOST_PP_BOOL(p##(103, s)), p, o, s) +# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_WHILE_103_C(BOOST_PP_BOOL(p##(104, s)), p, o, s) +# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_WHILE_104_C(BOOST_PP_BOOL(p##(105, s)), p, o, s) +# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_WHILE_105_C(BOOST_PP_BOOL(p##(106, s)), p, o, s) +# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_WHILE_106_C(BOOST_PP_BOOL(p##(107, s)), p, o, s) +# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_WHILE_107_C(BOOST_PP_BOOL(p##(108, s)), p, o, s) +# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_WHILE_108_C(BOOST_PP_BOOL(p##(109, s)), p, o, s) +# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_WHILE_109_C(BOOST_PP_BOOL(p##(110, s)), p, o, s) +# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_WHILE_110_C(BOOST_PP_BOOL(p##(111, s)), p, o, s) +# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_WHILE_111_C(BOOST_PP_BOOL(p##(112, s)), p, o, s) +# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_WHILE_112_C(BOOST_PP_BOOL(p##(113, s)), p, o, s) +# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_WHILE_113_C(BOOST_PP_BOOL(p##(114, s)), p, o, s) +# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_WHILE_114_C(BOOST_PP_BOOL(p##(115, s)), p, o, s) +# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_WHILE_115_C(BOOST_PP_BOOL(p##(116, s)), p, o, s) +# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_WHILE_116_C(BOOST_PP_BOOL(p##(117, s)), p, o, s) +# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_WHILE_117_C(BOOST_PP_BOOL(p##(118, s)), p, o, s) +# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_WHILE_118_C(BOOST_PP_BOOL(p##(119, s)), p, o, s) +# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_WHILE_119_C(BOOST_PP_BOOL(p##(120, s)), p, o, s) +# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_WHILE_120_C(BOOST_PP_BOOL(p##(121, s)), p, o, s) +# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_WHILE_121_C(BOOST_PP_BOOL(p##(122, s)), p, o, s) +# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_WHILE_122_C(BOOST_PP_BOOL(p##(123, s)), p, o, s) +# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_WHILE_123_C(BOOST_PP_BOOL(p##(124, s)), p, o, s) +# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_WHILE_124_C(BOOST_PP_BOOL(p##(125, s)), p, o, s) +# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_WHILE_125_C(BOOST_PP_BOOL(p##(126, s)), p, o, s) +# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_WHILE_126_C(BOOST_PP_BOOL(p##(127, s)), p, o, s) +# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_WHILE_127_C(BOOST_PP_BOOL(p##(128, s)), p, o, s) +# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_WHILE_128_C(BOOST_PP_BOOL(p##(129, s)), p, o, s) +# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_WHILE_129_C(BOOST_PP_BOOL(p##(130, s)), p, o, s) +# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_WHILE_130_C(BOOST_PP_BOOL(p##(131, s)), p, o, s) +# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_WHILE_131_C(BOOST_PP_BOOL(p##(132, s)), p, o, s) +# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_WHILE_132_C(BOOST_PP_BOOL(p##(133, s)), p, o, s) +# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_WHILE_133_C(BOOST_PP_BOOL(p##(134, s)), p, o, s) +# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_WHILE_134_C(BOOST_PP_BOOL(p##(135, s)), p, o, s) +# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_WHILE_135_C(BOOST_PP_BOOL(p##(136, s)), p, o, s) +# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_WHILE_136_C(BOOST_PP_BOOL(p##(137, s)), p, o, s) +# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_WHILE_137_C(BOOST_PP_BOOL(p##(138, s)), p, o, s) +# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_WHILE_138_C(BOOST_PP_BOOL(p##(139, s)), p, o, s) +# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_WHILE_139_C(BOOST_PP_BOOL(p##(140, s)), p, o, s) +# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_WHILE_140_C(BOOST_PP_BOOL(p##(141, s)), p, o, s) +# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_WHILE_141_C(BOOST_PP_BOOL(p##(142, s)), p, o, s) +# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_WHILE_142_C(BOOST_PP_BOOL(p##(143, s)), p, o, s) +# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_WHILE_143_C(BOOST_PP_BOOL(p##(144, s)), p, o, s) +# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_WHILE_144_C(BOOST_PP_BOOL(p##(145, s)), p, o, s) +# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_WHILE_145_C(BOOST_PP_BOOL(p##(146, s)), p, o, s) +# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_WHILE_146_C(BOOST_PP_BOOL(p##(147, s)), p, o, s) +# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_WHILE_147_C(BOOST_PP_BOOL(p##(148, s)), p, o, s) +# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_WHILE_148_C(BOOST_PP_BOOL(p##(149, s)), p, o, s) +# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_WHILE_149_C(BOOST_PP_BOOL(p##(150, s)), p, o, s) +# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_WHILE_150_C(BOOST_PP_BOOL(p##(151, s)), p, o, s) +# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_WHILE_151_C(BOOST_PP_BOOL(p##(152, s)), p, o, s) +# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_WHILE_152_C(BOOST_PP_BOOL(p##(153, s)), p, o, s) +# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_WHILE_153_C(BOOST_PP_BOOL(p##(154, s)), p, o, s) +# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_WHILE_154_C(BOOST_PP_BOOL(p##(155, s)), p, o, s) +# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_WHILE_155_C(BOOST_PP_BOOL(p##(156, s)), p, o, s) +# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_WHILE_156_C(BOOST_PP_BOOL(p##(157, s)), p, o, s) +# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_WHILE_157_C(BOOST_PP_BOOL(p##(158, s)), p, o, s) +# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_WHILE_158_C(BOOST_PP_BOOL(p##(159, s)), p, o, s) +# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_WHILE_159_C(BOOST_PP_BOOL(p##(160, s)), p, o, s) +# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_WHILE_160_C(BOOST_PP_BOOL(p##(161, s)), p, o, s) +# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_WHILE_161_C(BOOST_PP_BOOL(p##(162, s)), p, o, s) +# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_WHILE_162_C(BOOST_PP_BOOL(p##(163, s)), p, o, s) +# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_WHILE_163_C(BOOST_PP_BOOL(p##(164, s)), p, o, s) +# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_WHILE_164_C(BOOST_PP_BOOL(p##(165, s)), p, o, s) +# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_WHILE_165_C(BOOST_PP_BOOL(p##(166, s)), p, o, s) +# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_WHILE_166_C(BOOST_PP_BOOL(p##(167, s)), p, o, s) +# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_WHILE_167_C(BOOST_PP_BOOL(p##(168, s)), p, o, s) +# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_WHILE_168_C(BOOST_PP_BOOL(p##(169, s)), p, o, s) +# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_WHILE_169_C(BOOST_PP_BOOL(p##(170, s)), p, o, s) +# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_WHILE_170_C(BOOST_PP_BOOL(p##(171, s)), p, o, s) +# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_WHILE_171_C(BOOST_PP_BOOL(p##(172, s)), p, o, s) +# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_WHILE_172_C(BOOST_PP_BOOL(p##(173, s)), p, o, s) +# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_WHILE_173_C(BOOST_PP_BOOL(p##(174, s)), p, o, s) +# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_WHILE_174_C(BOOST_PP_BOOL(p##(175, s)), p, o, s) +# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_WHILE_175_C(BOOST_PP_BOOL(p##(176, s)), p, o, s) +# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_WHILE_176_C(BOOST_PP_BOOL(p##(177, s)), p, o, s) +# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_WHILE_177_C(BOOST_PP_BOOL(p##(178, s)), p, o, s) +# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_WHILE_178_C(BOOST_PP_BOOL(p##(179, s)), p, o, s) +# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_WHILE_179_C(BOOST_PP_BOOL(p##(180, s)), p, o, s) +# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_WHILE_180_C(BOOST_PP_BOOL(p##(181, s)), p, o, s) +# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_WHILE_181_C(BOOST_PP_BOOL(p##(182, s)), p, o, s) +# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_WHILE_182_C(BOOST_PP_BOOL(p##(183, s)), p, o, s) +# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_WHILE_183_C(BOOST_PP_BOOL(p##(184, s)), p, o, s) +# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_WHILE_184_C(BOOST_PP_BOOL(p##(185, s)), p, o, s) +# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_WHILE_185_C(BOOST_PP_BOOL(p##(186, s)), p, o, s) +# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_WHILE_186_C(BOOST_PP_BOOL(p##(187, s)), p, o, s) +# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_WHILE_187_C(BOOST_PP_BOOL(p##(188, s)), p, o, s) +# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_WHILE_188_C(BOOST_PP_BOOL(p##(189, s)), p, o, s) +# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_WHILE_189_C(BOOST_PP_BOOL(p##(190, s)), p, o, s) +# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_WHILE_190_C(BOOST_PP_BOOL(p##(191, s)), p, o, s) +# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_WHILE_191_C(BOOST_PP_BOOL(p##(192, s)), p, o, s) +# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_WHILE_192_C(BOOST_PP_BOOL(p##(193, s)), p, o, s) +# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_WHILE_193_C(BOOST_PP_BOOL(p##(194, s)), p, o, s) +# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_WHILE_194_C(BOOST_PP_BOOL(p##(195, s)), p, o, s) +# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_WHILE_195_C(BOOST_PP_BOOL(p##(196, s)), p, o, s) +# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_WHILE_196_C(BOOST_PP_BOOL(p##(197, s)), p, o, s) +# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_WHILE_197_C(BOOST_PP_BOOL(p##(198, s)), p, o, s) +# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_WHILE_198_C(BOOST_PP_BOOL(p##(199, s)), p, o, s) +# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_WHILE_199_C(BOOST_PP_BOOL(p##(200, s)), p, o, s) +# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_WHILE_200_C(BOOST_PP_BOOL(p##(201, s)), p, o, s) +# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_WHILE_201_C(BOOST_PP_BOOL(p##(202, s)), p, o, s) +# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_WHILE_202_C(BOOST_PP_BOOL(p##(203, s)), p, o, s) +# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_WHILE_203_C(BOOST_PP_BOOL(p##(204, s)), p, o, s) +# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_WHILE_204_C(BOOST_PP_BOOL(p##(205, s)), p, o, s) +# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_WHILE_205_C(BOOST_PP_BOOL(p##(206, s)), p, o, s) +# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_WHILE_206_C(BOOST_PP_BOOL(p##(207, s)), p, o, s) +# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_WHILE_207_C(BOOST_PP_BOOL(p##(208, s)), p, o, s) +# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_WHILE_208_C(BOOST_PP_BOOL(p##(209, s)), p, o, s) +# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_WHILE_209_C(BOOST_PP_BOOL(p##(210, s)), p, o, s) +# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_WHILE_210_C(BOOST_PP_BOOL(p##(211, s)), p, o, s) +# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_WHILE_211_C(BOOST_PP_BOOL(p##(212, s)), p, o, s) +# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_WHILE_212_C(BOOST_PP_BOOL(p##(213, s)), p, o, s) +# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_WHILE_213_C(BOOST_PP_BOOL(p##(214, s)), p, o, s) +# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_WHILE_214_C(BOOST_PP_BOOL(p##(215, s)), p, o, s) +# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_WHILE_215_C(BOOST_PP_BOOL(p##(216, s)), p, o, s) +# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_WHILE_216_C(BOOST_PP_BOOL(p##(217, s)), p, o, s) +# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_WHILE_217_C(BOOST_PP_BOOL(p##(218, s)), p, o, s) +# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_WHILE_218_C(BOOST_PP_BOOL(p##(219, s)), p, o, s) +# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_WHILE_219_C(BOOST_PP_BOOL(p##(220, s)), p, o, s) +# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_WHILE_220_C(BOOST_PP_BOOL(p##(221, s)), p, o, s) +# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_WHILE_221_C(BOOST_PP_BOOL(p##(222, s)), p, o, s) +# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_WHILE_222_C(BOOST_PP_BOOL(p##(223, s)), p, o, s) +# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_WHILE_223_C(BOOST_PP_BOOL(p##(224, s)), p, o, s) +# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_WHILE_224_C(BOOST_PP_BOOL(p##(225, s)), p, o, s) +# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_WHILE_225_C(BOOST_PP_BOOL(p##(226, s)), p, o, s) +# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_WHILE_226_C(BOOST_PP_BOOL(p##(227, s)), p, o, s) +# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_WHILE_227_C(BOOST_PP_BOOL(p##(228, s)), p, o, s) +# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_WHILE_228_C(BOOST_PP_BOOL(p##(229, s)), p, o, s) +# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_WHILE_229_C(BOOST_PP_BOOL(p##(230, s)), p, o, s) +# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_WHILE_230_C(BOOST_PP_BOOL(p##(231, s)), p, o, s) +# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_WHILE_231_C(BOOST_PP_BOOL(p##(232, s)), p, o, s) +# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_WHILE_232_C(BOOST_PP_BOOL(p##(233, s)), p, o, s) +# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_WHILE_233_C(BOOST_PP_BOOL(p##(234, s)), p, o, s) +# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_WHILE_234_C(BOOST_PP_BOOL(p##(235, s)), p, o, s) +# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_WHILE_235_C(BOOST_PP_BOOL(p##(236, s)), p, o, s) +# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_WHILE_236_C(BOOST_PP_BOOL(p##(237, s)), p, o, s) +# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_WHILE_237_C(BOOST_PP_BOOL(p##(238, s)), p, o, s) +# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_WHILE_238_C(BOOST_PP_BOOL(p##(239, s)), p, o, s) +# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_WHILE_239_C(BOOST_PP_BOOL(p##(240, s)), p, o, s) +# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_WHILE_240_C(BOOST_PP_BOOL(p##(241, s)), p, o, s) +# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_WHILE_241_C(BOOST_PP_BOOL(p##(242, s)), p, o, s) +# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_WHILE_242_C(BOOST_PP_BOOL(p##(243, s)), p, o, s) +# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_WHILE_243_C(BOOST_PP_BOOL(p##(244, s)), p, o, s) +# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_WHILE_244_C(BOOST_PP_BOOL(p##(245, s)), p, o, s) +# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_WHILE_245_C(BOOST_PP_BOOL(p##(246, s)), p, o, s) +# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_WHILE_246_C(BOOST_PP_BOOL(p##(247, s)), p, o, s) +# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_WHILE_247_C(BOOST_PP_BOOL(p##(248, s)), p, o, s) +# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_WHILE_248_C(BOOST_PP_BOOL(p##(249, s)), p, o, s) +# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_WHILE_249_C(BOOST_PP_BOOL(p##(250, s)), p, o, s) +# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_WHILE_250_C(BOOST_PP_BOOL(p##(251, s)), p, o, s) +# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_WHILE_251_C(BOOST_PP_BOOL(p##(252, s)), p, o, s) +# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_WHILE_252_C(BOOST_PP_BOOL(p##(253, s)), p, o, s) +# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_WHILE_253_C(BOOST_PP_BOOL(p##(254, s)), p, o, s) +# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_WHILE_254_C(BOOST_PP_BOOL(p##(255, s)), p, o, s) +# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_WHILE_255_C(BOOST_PP_BOOL(p##(256, s)), p, o, s) +# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_WHILE_256_C(BOOST_PP_BOOL(p##(257, s)), p, o, s) +# +# define BOOST_PP_WHILE_1_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_2, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(2, s)) +# define BOOST_PP_WHILE_2_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_3, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(3, s)) +# define BOOST_PP_WHILE_3_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_4, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(4, s)) +# define BOOST_PP_WHILE_4_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_5, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(5, s)) +# define BOOST_PP_WHILE_5_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_6, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(6, s)) +# define BOOST_PP_WHILE_6_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_7, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(7, s)) +# define BOOST_PP_WHILE_7_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_8, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(8, s)) +# define BOOST_PP_WHILE_8_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_9, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(9, s)) +# define BOOST_PP_WHILE_9_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_10, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(10, s)) +# define BOOST_PP_WHILE_10_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_11, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(11, s)) +# define BOOST_PP_WHILE_11_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_12, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(12, s)) +# define BOOST_PP_WHILE_12_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_13, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(13, s)) +# define BOOST_PP_WHILE_13_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_14, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(14, s)) +# define BOOST_PP_WHILE_14_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_15, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(15, s)) +# define BOOST_PP_WHILE_15_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_16, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(16, s)) +# define BOOST_PP_WHILE_16_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_17, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(17, s)) +# define BOOST_PP_WHILE_17_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_18, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(18, s)) +# define BOOST_PP_WHILE_18_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_19, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(19, s)) +# define BOOST_PP_WHILE_19_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_20, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(20, s)) +# define BOOST_PP_WHILE_20_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_21, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(21, s)) +# define BOOST_PP_WHILE_21_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_22, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(22, s)) +# define BOOST_PP_WHILE_22_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_23, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(23, s)) +# define BOOST_PP_WHILE_23_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_24, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(24, s)) +# define BOOST_PP_WHILE_24_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_25, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(25, s)) +# define BOOST_PP_WHILE_25_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_26, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(26, s)) +# define BOOST_PP_WHILE_26_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_27, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(27, s)) +# define BOOST_PP_WHILE_27_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_28, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(28, s)) +# define BOOST_PP_WHILE_28_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_29, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(29, s)) +# define BOOST_PP_WHILE_29_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_30, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(30, s)) +# define BOOST_PP_WHILE_30_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_31, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(31, s)) +# define BOOST_PP_WHILE_31_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_32, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(32, s)) +# define BOOST_PP_WHILE_32_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_33, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(33, s)) +# define BOOST_PP_WHILE_33_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_34, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(34, s)) +# define BOOST_PP_WHILE_34_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_35, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(35, s)) +# define BOOST_PP_WHILE_35_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_36, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(36, s)) +# define BOOST_PP_WHILE_36_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_37, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(37, s)) +# define BOOST_PP_WHILE_37_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_38, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(38, s)) +# define BOOST_PP_WHILE_38_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_39, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(39, s)) +# define BOOST_PP_WHILE_39_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_40, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(40, s)) +# define BOOST_PP_WHILE_40_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_41, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(41, s)) +# define BOOST_PP_WHILE_41_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_42, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(42, s)) +# define BOOST_PP_WHILE_42_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_43, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(43, s)) +# define BOOST_PP_WHILE_43_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_44, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(44, s)) +# define BOOST_PP_WHILE_44_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_45, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(45, s)) +# define BOOST_PP_WHILE_45_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_46, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(46, s)) +# define BOOST_PP_WHILE_46_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_47, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(47, s)) +# define BOOST_PP_WHILE_47_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_48, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(48, s)) +# define BOOST_PP_WHILE_48_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_49, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(49, s)) +# define BOOST_PP_WHILE_49_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_50, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(50, s)) +# define BOOST_PP_WHILE_50_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_51, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(51, s)) +# define BOOST_PP_WHILE_51_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_52, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(52, s)) +# define BOOST_PP_WHILE_52_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_53, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(53, s)) +# define BOOST_PP_WHILE_53_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_54, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(54, s)) +# define BOOST_PP_WHILE_54_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_55, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(55, s)) +# define BOOST_PP_WHILE_55_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_56, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(56, s)) +# define BOOST_PP_WHILE_56_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_57, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(57, s)) +# define BOOST_PP_WHILE_57_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_58, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(58, s)) +# define BOOST_PP_WHILE_58_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_59, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(59, s)) +# define BOOST_PP_WHILE_59_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_60, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(60, s)) +# define BOOST_PP_WHILE_60_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_61, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(61, s)) +# define BOOST_PP_WHILE_61_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_62, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(62, s)) +# define BOOST_PP_WHILE_62_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_63, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(63, s)) +# define BOOST_PP_WHILE_63_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_64, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(64, s)) +# define BOOST_PP_WHILE_64_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_65, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(65, s)) +# define BOOST_PP_WHILE_65_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_66, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(66, s)) +# define BOOST_PP_WHILE_66_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_67, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(67, s)) +# define BOOST_PP_WHILE_67_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_68, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(68, s)) +# define BOOST_PP_WHILE_68_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_69, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(69, s)) +# define BOOST_PP_WHILE_69_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_70, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(70, s)) +# define BOOST_PP_WHILE_70_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_71, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(71, s)) +# define BOOST_PP_WHILE_71_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_72, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(72, s)) +# define BOOST_PP_WHILE_72_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_73, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(73, s)) +# define BOOST_PP_WHILE_73_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_74, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(74, s)) +# define BOOST_PP_WHILE_74_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_75, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(75, s)) +# define BOOST_PP_WHILE_75_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_76, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(76, s)) +# define BOOST_PP_WHILE_76_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_77, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(77, s)) +# define BOOST_PP_WHILE_77_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_78, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(78, s)) +# define BOOST_PP_WHILE_78_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_79, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(79, s)) +# define BOOST_PP_WHILE_79_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_80, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(80, s)) +# define BOOST_PP_WHILE_80_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_81, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(81, s)) +# define BOOST_PP_WHILE_81_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_82, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(82, s)) +# define BOOST_PP_WHILE_82_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_83, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(83, s)) +# define BOOST_PP_WHILE_83_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_84, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(84, s)) +# define BOOST_PP_WHILE_84_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_85, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(85, s)) +# define BOOST_PP_WHILE_85_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_86, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(86, s)) +# define BOOST_PP_WHILE_86_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_87, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(87, s)) +# define BOOST_PP_WHILE_87_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_88, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(88, s)) +# define BOOST_PP_WHILE_88_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_89, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(89, s)) +# define BOOST_PP_WHILE_89_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_90, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(90, s)) +# define BOOST_PP_WHILE_90_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_91, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(91, s)) +# define BOOST_PP_WHILE_91_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_92, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(92, s)) +# define BOOST_PP_WHILE_92_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_93, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(93, s)) +# define BOOST_PP_WHILE_93_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_94, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(94, s)) +# define BOOST_PP_WHILE_94_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_95, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(95, s)) +# define BOOST_PP_WHILE_95_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_96, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(96, s)) +# define BOOST_PP_WHILE_96_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_97, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(97, s)) +# define BOOST_PP_WHILE_97_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_98, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(98, s)) +# define BOOST_PP_WHILE_98_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_99, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(99, s)) +# define BOOST_PP_WHILE_99_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_100, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(100, s)) +# define BOOST_PP_WHILE_100_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_101, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(101, s)) +# define BOOST_PP_WHILE_101_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_102, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(102, s)) +# define BOOST_PP_WHILE_102_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_103, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(103, s)) +# define BOOST_PP_WHILE_103_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_104, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(104, s)) +# define BOOST_PP_WHILE_104_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_105, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(105, s)) +# define BOOST_PP_WHILE_105_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_106, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(106, s)) +# define BOOST_PP_WHILE_106_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_107, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(107, s)) +# define BOOST_PP_WHILE_107_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_108, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(108, s)) +# define BOOST_PP_WHILE_108_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_109, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(109, s)) +# define BOOST_PP_WHILE_109_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_110, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(110, s)) +# define BOOST_PP_WHILE_110_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_111, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(111, s)) +# define BOOST_PP_WHILE_111_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_112, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(112, s)) +# define BOOST_PP_WHILE_112_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_113, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(113, s)) +# define BOOST_PP_WHILE_113_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_114, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(114, s)) +# define BOOST_PP_WHILE_114_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_115, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(115, s)) +# define BOOST_PP_WHILE_115_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_116, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(116, s)) +# define BOOST_PP_WHILE_116_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_117, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(117, s)) +# define BOOST_PP_WHILE_117_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_118, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(118, s)) +# define BOOST_PP_WHILE_118_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_119, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(119, s)) +# define BOOST_PP_WHILE_119_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_120, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(120, s)) +# define BOOST_PP_WHILE_120_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_121, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(121, s)) +# define BOOST_PP_WHILE_121_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_122, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(122, s)) +# define BOOST_PP_WHILE_122_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_123, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(123, s)) +# define BOOST_PP_WHILE_123_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_124, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(124, s)) +# define BOOST_PP_WHILE_124_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_125, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(125, s)) +# define BOOST_PP_WHILE_125_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_126, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(126, s)) +# define BOOST_PP_WHILE_126_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_127, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(127, s)) +# define BOOST_PP_WHILE_127_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_128, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(128, s)) +# define BOOST_PP_WHILE_128_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_129, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(129, s)) +# define BOOST_PP_WHILE_129_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_130, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(130, s)) +# define BOOST_PP_WHILE_130_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_131, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(131, s)) +# define BOOST_PP_WHILE_131_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_132, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(132, s)) +# define BOOST_PP_WHILE_132_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_133, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(133, s)) +# define BOOST_PP_WHILE_133_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_134, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(134, s)) +# define BOOST_PP_WHILE_134_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_135, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(135, s)) +# define BOOST_PP_WHILE_135_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_136, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(136, s)) +# define BOOST_PP_WHILE_136_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_137, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(137, s)) +# define BOOST_PP_WHILE_137_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_138, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(138, s)) +# define BOOST_PP_WHILE_138_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_139, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(139, s)) +# define BOOST_PP_WHILE_139_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_140, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(140, s)) +# define BOOST_PP_WHILE_140_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_141, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(141, s)) +# define BOOST_PP_WHILE_141_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_142, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(142, s)) +# define BOOST_PP_WHILE_142_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_143, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(143, s)) +# define BOOST_PP_WHILE_143_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_144, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(144, s)) +# define BOOST_PP_WHILE_144_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_145, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(145, s)) +# define BOOST_PP_WHILE_145_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_146, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(146, s)) +# define BOOST_PP_WHILE_146_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_147, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(147, s)) +# define BOOST_PP_WHILE_147_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_148, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(148, s)) +# define BOOST_PP_WHILE_148_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_149, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(149, s)) +# define BOOST_PP_WHILE_149_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_150, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(150, s)) +# define BOOST_PP_WHILE_150_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_151, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(151, s)) +# define BOOST_PP_WHILE_151_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_152, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(152, s)) +# define BOOST_PP_WHILE_152_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_153, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(153, s)) +# define BOOST_PP_WHILE_153_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_154, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(154, s)) +# define BOOST_PP_WHILE_154_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_155, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(155, s)) +# define BOOST_PP_WHILE_155_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_156, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(156, s)) +# define BOOST_PP_WHILE_156_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_157, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(157, s)) +# define BOOST_PP_WHILE_157_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_158, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(158, s)) +# define BOOST_PP_WHILE_158_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_159, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(159, s)) +# define BOOST_PP_WHILE_159_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_160, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(160, s)) +# define BOOST_PP_WHILE_160_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_161, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(161, s)) +# define BOOST_PP_WHILE_161_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_162, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(162, s)) +# define BOOST_PP_WHILE_162_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_163, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(163, s)) +# define BOOST_PP_WHILE_163_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_164, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(164, s)) +# define BOOST_PP_WHILE_164_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_165, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(165, s)) +# define BOOST_PP_WHILE_165_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_166, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(166, s)) +# define BOOST_PP_WHILE_166_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_167, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(167, s)) +# define BOOST_PP_WHILE_167_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_168, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(168, s)) +# define BOOST_PP_WHILE_168_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_169, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(169, s)) +# define BOOST_PP_WHILE_169_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_170, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(170, s)) +# define BOOST_PP_WHILE_170_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_171, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(171, s)) +# define BOOST_PP_WHILE_171_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_172, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(172, s)) +# define BOOST_PP_WHILE_172_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_173, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(173, s)) +# define BOOST_PP_WHILE_173_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_174, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(174, s)) +# define BOOST_PP_WHILE_174_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_175, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(175, s)) +# define BOOST_PP_WHILE_175_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_176, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(176, s)) +# define BOOST_PP_WHILE_176_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_177, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(177, s)) +# define BOOST_PP_WHILE_177_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_178, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(178, s)) +# define BOOST_PP_WHILE_178_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_179, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(179, s)) +# define BOOST_PP_WHILE_179_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_180, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(180, s)) +# define BOOST_PP_WHILE_180_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_181, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(181, s)) +# define BOOST_PP_WHILE_181_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_182, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(182, s)) +# define BOOST_PP_WHILE_182_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_183, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(183, s)) +# define BOOST_PP_WHILE_183_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_184, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(184, s)) +# define BOOST_PP_WHILE_184_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_185, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(185, s)) +# define BOOST_PP_WHILE_185_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_186, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(186, s)) +# define BOOST_PP_WHILE_186_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_187, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(187, s)) +# define BOOST_PP_WHILE_187_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_188, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(188, s)) +# define BOOST_PP_WHILE_188_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_189, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(189, s)) +# define BOOST_PP_WHILE_189_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_190, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(190, s)) +# define BOOST_PP_WHILE_190_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_191, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(191, s)) +# define BOOST_PP_WHILE_191_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_192, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(192, s)) +# define BOOST_PP_WHILE_192_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_193, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(193, s)) +# define BOOST_PP_WHILE_193_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_194, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(194, s)) +# define BOOST_PP_WHILE_194_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_195, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(195, s)) +# define BOOST_PP_WHILE_195_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_196, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(196, s)) +# define BOOST_PP_WHILE_196_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_197, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(197, s)) +# define BOOST_PP_WHILE_197_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_198, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(198, s)) +# define BOOST_PP_WHILE_198_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_199, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(199, s)) +# define BOOST_PP_WHILE_199_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_200, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(200, s)) +# define BOOST_PP_WHILE_200_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_201, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(201, s)) +# define BOOST_PP_WHILE_201_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_202, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(202, s)) +# define BOOST_PP_WHILE_202_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_203, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(203, s)) +# define BOOST_PP_WHILE_203_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_204, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(204, s)) +# define BOOST_PP_WHILE_204_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_205, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(205, s)) +# define BOOST_PP_WHILE_205_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_206, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(206, s)) +# define BOOST_PP_WHILE_206_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_207, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(207, s)) +# define BOOST_PP_WHILE_207_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_208, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(208, s)) +# define BOOST_PP_WHILE_208_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_209, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(209, s)) +# define BOOST_PP_WHILE_209_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_210, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(210, s)) +# define BOOST_PP_WHILE_210_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_211, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(211, s)) +# define BOOST_PP_WHILE_211_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_212, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(212, s)) +# define BOOST_PP_WHILE_212_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_213, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(213, s)) +# define BOOST_PP_WHILE_213_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_214, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(214, s)) +# define BOOST_PP_WHILE_214_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_215, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(215, s)) +# define BOOST_PP_WHILE_215_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_216, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(216, s)) +# define BOOST_PP_WHILE_216_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_217, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(217, s)) +# define BOOST_PP_WHILE_217_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_218, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(218, s)) +# define BOOST_PP_WHILE_218_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_219, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(219, s)) +# define BOOST_PP_WHILE_219_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_220, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(220, s)) +# define BOOST_PP_WHILE_220_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_221, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(221, s)) +# define BOOST_PP_WHILE_221_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_222, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(222, s)) +# define BOOST_PP_WHILE_222_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_223, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(223, s)) +# define BOOST_PP_WHILE_223_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_224, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(224, s)) +# define BOOST_PP_WHILE_224_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_225, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(225, s)) +# define BOOST_PP_WHILE_225_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_226, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(226, s)) +# define BOOST_PP_WHILE_226_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_227, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(227, s)) +# define BOOST_PP_WHILE_227_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_228, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(228, s)) +# define BOOST_PP_WHILE_228_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_229, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(229, s)) +# define BOOST_PP_WHILE_229_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_230, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(230, s)) +# define BOOST_PP_WHILE_230_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_231, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(231, s)) +# define BOOST_PP_WHILE_231_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_232, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(232, s)) +# define BOOST_PP_WHILE_232_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_233, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(233, s)) +# define BOOST_PP_WHILE_233_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_234, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(234, s)) +# define BOOST_PP_WHILE_234_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_235, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(235, s)) +# define BOOST_PP_WHILE_235_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_236, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(236, s)) +# define BOOST_PP_WHILE_236_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_237, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(237, s)) +# define BOOST_PP_WHILE_237_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_238, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(238, s)) +# define BOOST_PP_WHILE_238_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_239, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(239, s)) +# define BOOST_PP_WHILE_239_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_240, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(240, s)) +# define BOOST_PP_WHILE_240_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_241, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(241, s)) +# define BOOST_PP_WHILE_241_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_242, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(242, s)) +# define BOOST_PP_WHILE_242_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_243, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(243, s)) +# define BOOST_PP_WHILE_243_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_244, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(244, s)) +# define BOOST_PP_WHILE_244_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_245, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(245, s)) +# define BOOST_PP_WHILE_245_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_246, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(246, s)) +# define BOOST_PP_WHILE_246_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_247, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(247, s)) +# define BOOST_PP_WHILE_247_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_248, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(248, s)) +# define BOOST_PP_WHILE_248_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_249, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(249, s)) +# define BOOST_PP_WHILE_249_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_250, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(250, s)) +# define BOOST_PP_WHILE_250_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_251, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(251, s)) +# define BOOST_PP_WHILE_251_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_252, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(252, s)) +# define BOOST_PP_WHILE_252_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_253, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(253, s)) +# define BOOST_PP_WHILE_253_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_254, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(254, s)) +# define BOOST_PP_WHILE_254_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_255, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(255, s)) +# define BOOST_PP_WHILE_255_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_256, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(256, s)) +# define BOOST_PP_WHILE_256_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_257, BOOST_PP_TUPLE_ELEM_3_2)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_TUPLE_ELEM_2_1)(257, s)) +# +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/detail/edg/while.hpp b/plugin/wave/include/boost/preprocessor/control/detail/edg/while.hpp new file mode 100644 index 0000000..ce28eb2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/detail/edg/while.hpp @@ -0,0 +1,534 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_HPP +# define BOOST_PREPROCESSOR_CONTROL_DETAIL_EDG_WHILE_HPP +# +# include +# include +# +# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_WHILE_1_I(p, o, s) +# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_WHILE_2_I(p, o, s) +# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_WHILE_3_I(p, o, s) +# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_WHILE_4_I(p, o, s) +# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_WHILE_5_I(p, o, s) +# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_WHILE_6_I(p, o, s) +# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_WHILE_7_I(p, o, s) +# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_WHILE_8_I(p, o, s) +# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_WHILE_9_I(p, o, s) +# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_WHILE_10_I(p, o, s) +# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_WHILE_11_I(p, o, s) +# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_WHILE_12_I(p, o, s) +# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_WHILE_13_I(p, o, s) +# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_WHILE_14_I(p, o, s) +# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_WHILE_15_I(p, o, s) +# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_WHILE_16_I(p, o, s) +# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_WHILE_17_I(p, o, s) +# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_WHILE_18_I(p, o, s) +# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_WHILE_19_I(p, o, s) +# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_WHILE_20_I(p, o, s) +# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_WHILE_21_I(p, o, s) +# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_WHILE_22_I(p, o, s) +# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_WHILE_23_I(p, o, s) +# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_WHILE_24_I(p, o, s) +# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_WHILE_25_I(p, o, s) +# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_WHILE_26_I(p, o, s) +# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_WHILE_27_I(p, o, s) +# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_WHILE_28_I(p, o, s) +# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_WHILE_29_I(p, o, s) +# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_WHILE_30_I(p, o, s) +# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_WHILE_31_I(p, o, s) +# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_WHILE_32_I(p, o, s) +# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_WHILE_33_I(p, o, s) +# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_WHILE_34_I(p, o, s) +# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_WHILE_35_I(p, o, s) +# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_WHILE_36_I(p, o, s) +# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_WHILE_37_I(p, o, s) +# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_WHILE_38_I(p, o, s) +# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_WHILE_39_I(p, o, s) +# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_WHILE_40_I(p, o, s) +# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_WHILE_41_I(p, o, s) +# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_WHILE_42_I(p, o, s) +# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_WHILE_43_I(p, o, s) +# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_WHILE_44_I(p, o, s) +# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_WHILE_45_I(p, o, s) +# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_WHILE_46_I(p, o, s) +# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_WHILE_47_I(p, o, s) +# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_WHILE_48_I(p, o, s) +# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_WHILE_49_I(p, o, s) +# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_WHILE_50_I(p, o, s) +# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_WHILE_51_I(p, o, s) +# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_WHILE_52_I(p, o, s) +# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_WHILE_53_I(p, o, s) +# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_WHILE_54_I(p, o, s) +# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_WHILE_55_I(p, o, s) +# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_WHILE_56_I(p, o, s) +# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_WHILE_57_I(p, o, s) +# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_WHILE_58_I(p, o, s) +# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_WHILE_59_I(p, o, s) +# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_WHILE_60_I(p, o, s) +# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_WHILE_61_I(p, o, s) +# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_WHILE_62_I(p, o, s) +# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_WHILE_63_I(p, o, s) +# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_WHILE_64_I(p, o, s) +# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_WHILE_65_I(p, o, s) +# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_WHILE_66_I(p, o, s) +# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_WHILE_67_I(p, o, s) +# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_WHILE_68_I(p, o, s) +# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_WHILE_69_I(p, o, s) +# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_WHILE_70_I(p, o, s) +# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_WHILE_71_I(p, o, s) +# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_WHILE_72_I(p, o, s) +# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_WHILE_73_I(p, o, s) +# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_WHILE_74_I(p, o, s) +# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_WHILE_75_I(p, o, s) +# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_WHILE_76_I(p, o, s) +# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_WHILE_77_I(p, o, s) +# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_WHILE_78_I(p, o, s) +# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_WHILE_79_I(p, o, s) +# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_WHILE_80_I(p, o, s) +# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_WHILE_81_I(p, o, s) +# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_WHILE_82_I(p, o, s) +# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_WHILE_83_I(p, o, s) +# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_WHILE_84_I(p, o, s) +# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_WHILE_85_I(p, o, s) +# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_WHILE_86_I(p, o, s) +# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_WHILE_87_I(p, o, s) +# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_WHILE_88_I(p, o, s) +# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_WHILE_89_I(p, o, s) +# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_WHILE_90_I(p, o, s) +# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_WHILE_91_I(p, o, s) +# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_WHILE_92_I(p, o, s) +# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_WHILE_93_I(p, o, s) +# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_WHILE_94_I(p, o, s) +# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_WHILE_95_I(p, o, s) +# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_WHILE_96_I(p, o, s) +# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_WHILE_97_I(p, o, s) +# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_WHILE_98_I(p, o, s) +# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_WHILE_99_I(p, o, s) +# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_WHILE_100_I(p, o, s) +# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_WHILE_101_I(p, o, s) +# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_WHILE_102_I(p, o, s) +# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_WHILE_103_I(p, o, s) +# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_WHILE_104_I(p, o, s) +# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_WHILE_105_I(p, o, s) +# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_WHILE_106_I(p, o, s) +# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_WHILE_107_I(p, o, s) +# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_WHILE_108_I(p, o, s) +# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_WHILE_109_I(p, o, s) +# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_WHILE_110_I(p, o, s) +# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_WHILE_111_I(p, o, s) +# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_WHILE_112_I(p, o, s) +# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_WHILE_113_I(p, o, s) +# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_WHILE_114_I(p, o, s) +# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_WHILE_115_I(p, o, s) +# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_WHILE_116_I(p, o, s) +# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_WHILE_117_I(p, o, s) +# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_WHILE_118_I(p, o, s) +# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_WHILE_119_I(p, o, s) +# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_WHILE_120_I(p, o, s) +# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_WHILE_121_I(p, o, s) +# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_WHILE_122_I(p, o, s) +# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_WHILE_123_I(p, o, s) +# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_WHILE_124_I(p, o, s) +# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_WHILE_125_I(p, o, s) +# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_WHILE_126_I(p, o, s) +# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_WHILE_127_I(p, o, s) +# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_WHILE_128_I(p, o, s) +# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_WHILE_129_I(p, o, s) +# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_WHILE_130_I(p, o, s) +# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_WHILE_131_I(p, o, s) +# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_WHILE_132_I(p, o, s) +# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_WHILE_133_I(p, o, s) +# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_WHILE_134_I(p, o, s) +# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_WHILE_135_I(p, o, s) +# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_WHILE_136_I(p, o, s) +# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_WHILE_137_I(p, o, s) +# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_WHILE_138_I(p, o, s) +# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_WHILE_139_I(p, o, s) +# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_WHILE_140_I(p, o, s) +# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_WHILE_141_I(p, o, s) +# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_WHILE_142_I(p, o, s) +# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_WHILE_143_I(p, o, s) +# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_WHILE_144_I(p, o, s) +# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_WHILE_145_I(p, o, s) +# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_WHILE_146_I(p, o, s) +# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_WHILE_147_I(p, o, s) +# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_WHILE_148_I(p, o, s) +# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_WHILE_149_I(p, o, s) +# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_WHILE_150_I(p, o, s) +# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_WHILE_151_I(p, o, s) +# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_WHILE_152_I(p, o, s) +# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_WHILE_153_I(p, o, s) +# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_WHILE_154_I(p, o, s) +# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_WHILE_155_I(p, o, s) +# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_WHILE_156_I(p, o, s) +# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_WHILE_157_I(p, o, s) +# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_WHILE_158_I(p, o, s) +# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_WHILE_159_I(p, o, s) +# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_WHILE_160_I(p, o, s) +# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_WHILE_161_I(p, o, s) +# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_WHILE_162_I(p, o, s) +# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_WHILE_163_I(p, o, s) +# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_WHILE_164_I(p, o, s) +# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_WHILE_165_I(p, o, s) +# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_WHILE_166_I(p, o, s) +# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_WHILE_167_I(p, o, s) +# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_WHILE_168_I(p, o, s) +# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_WHILE_169_I(p, o, s) +# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_WHILE_170_I(p, o, s) +# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_WHILE_171_I(p, o, s) +# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_WHILE_172_I(p, o, s) +# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_WHILE_173_I(p, o, s) +# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_WHILE_174_I(p, o, s) +# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_WHILE_175_I(p, o, s) +# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_WHILE_176_I(p, o, s) +# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_WHILE_177_I(p, o, s) +# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_WHILE_178_I(p, o, s) +# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_WHILE_179_I(p, o, s) +# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_WHILE_180_I(p, o, s) +# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_WHILE_181_I(p, o, s) +# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_WHILE_182_I(p, o, s) +# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_WHILE_183_I(p, o, s) +# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_WHILE_184_I(p, o, s) +# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_WHILE_185_I(p, o, s) +# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_WHILE_186_I(p, o, s) +# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_WHILE_187_I(p, o, s) +# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_WHILE_188_I(p, o, s) +# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_WHILE_189_I(p, o, s) +# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_WHILE_190_I(p, o, s) +# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_WHILE_191_I(p, o, s) +# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_WHILE_192_I(p, o, s) +# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_WHILE_193_I(p, o, s) +# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_WHILE_194_I(p, o, s) +# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_WHILE_195_I(p, o, s) +# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_WHILE_196_I(p, o, s) +# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_WHILE_197_I(p, o, s) +# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_WHILE_198_I(p, o, s) +# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_WHILE_199_I(p, o, s) +# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_WHILE_200_I(p, o, s) +# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_WHILE_201_I(p, o, s) +# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_WHILE_202_I(p, o, s) +# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_WHILE_203_I(p, o, s) +# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_WHILE_204_I(p, o, s) +# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_WHILE_205_I(p, o, s) +# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_WHILE_206_I(p, o, s) +# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_WHILE_207_I(p, o, s) +# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_WHILE_208_I(p, o, s) +# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_WHILE_209_I(p, o, s) +# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_WHILE_210_I(p, o, s) +# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_WHILE_211_I(p, o, s) +# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_WHILE_212_I(p, o, s) +# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_WHILE_213_I(p, o, s) +# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_WHILE_214_I(p, o, s) +# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_WHILE_215_I(p, o, s) +# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_WHILE_216_I(p, o, s) +# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_WHILE_217_I(p, o, s) +# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_WHILE_218_I(p, o, s) +# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_WHILE_219_I(p, o, s) +# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_WHILE_220_I(p, o, s) +# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_WHILE_221_I(p, o, s) +# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_WHILE_222_I(p, o, s) +# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_WHILE_223_I(p, o, s) +# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_WHILE_224_I(p, o, s) +# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_WHILE_225_I(p, o, s) +# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_WHILE_226_I(p, o, s) +# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_WHILE_227_I(p, o, s) +# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_WHILE_228_I(p, o, s) +# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_WHILE_229_I(p, o, s) +# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_WHILE_230_I(p, o, s) +# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_WHILE_231_I(p, o, s) +# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_WHILE_232_I(p, o, s) +# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_WHILE_233_I(p, o, s) +# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_WHILE_234_I(p, o, s) +# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_WHILE_235_I(p, o, s) +# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_WHILE_236_I(p, o, s) +# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_WHILE_237_I(p, o, s) +# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_WHILE_238_I(p, o, s) +# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_WHILE_239_I(p, o, s) +# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_WHILE_240_I(p, o, s) +# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_WHILE_241_I(p, o, s) +# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_WHILE_242_I(p, o, s) +# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_WHILE_243_I(p, o, s) +# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_WHILE_244_I(p, o, s) +# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_WHILE_245_I(p, o, s) +# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_WHILE_246_I(p, o, s) +# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_WHILE_247_I(p, o, s) +# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_WHILE_248_I(p, o, s) +# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_WHILE_249_I(p, o, s) +# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_WHILE_250_I(p, o, s) +# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_WHILE_251_I(p, o, s) +# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_WHILE_252_I(p, o, s) +# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_WHILE_253_I(p, o, s) +# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_WHILE_254_I(p, o, s) +# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_WHILE_255_I(p, o, s) +# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_WHILE_256_I(p, o, s) +# +# define BOOST_PP_WHILE_1_I(p, o, s) BOOST_PP_IF(p(2, s), BOOST_PP_WHILE_2, s BOOST_PP_TUPLE_EAT_3)(p, o, o(2, s)) +# define BOOST_PP_WHILE_2_I(p, o, s) BOOST_PP_IF(p(3, s), BOOST_PP_WHILE_3, s BOOST_PP_TUPLE_EAT_3)(p, o, o(3, s)) +# define BOOST_PP_WHILE_3_I(p, o, s) BOOST_PP_IF(p(4, s), BOOST_PP_WHILE_4, s BOOST_PP_TUPLE_EAT_3)(p, o, o(4, s)) +# define BOOST_PP_WHILE_4_I(p, o, s) BOOST_PP_IF(p(5, s), BOOST_PP_WHILE_5, s BOOST_PP_TUPLE_EAT_3)(p, o, o(5, s)) +# define BOOST_PP_WHILE_5_I(p, o, s) BOOST_PP_IF(p(6, s), BOOST_PP_WHILE_6, s BOOST_PP_TUPLE_EAT_3)(p, o, o(6, s)) +# define BOOST_PP_WHILE_6_I(p, o, s) BOOST_PP_IF(p(7, s), BOOST_PP_WHILE_7, s BOOST_PP_TUPLE_EAT_3)(p, o, o(7, s)) +# define BOOST_PP_WHILE_7_I(p, o, s) BOOST_PP_IF(p(8, s), BOOST_PP_WHILE_8, s BOOST_PP_TUPLE_EAT_3)(p, o, o(8, s)) +# define BOOST_PP_WHILE_8_I(p, o, s) BOOST_PP_IF(p(9, s), BOOST_PP_WHILE_9, s BOOST_PP_TUPLE_EAT_3)(p, o, o(9, s)) +# define BOOST_PP_WHILE_9_I(p, o, s) BOOST_PP_IF(p(10, s), BOOST_PP_WHILE_10, s BOOST_PP_TUPLE_EAT_3)(p, o, o(10, s)) +# define BOOST_PP_WHILE_10_I(p, o, s) BOOST_PP_IF(p(11, s), BOOST_PP_WHILE_11, s BOOST_PP_TUPLE_EAT_3)(p, o, o(11, s)) +# define BOOST_PP_WHILE_11_I(p, o, s) BOOST_PP_IF(p(12, s), BOOST_PP_WHILE_12, s BOOST_PP_TUPLE_EAT_3)(p, o, o(12, s)) +# define BOOST_PP_WHILE_12_I(p, o, s) BOOST_PP_IF(p(13, s), BOOST_PP_WHILE_13, s BOOST_PP_TUPLE_EAT_3)(p, o, o(13, s)) +# define BOOST_PP_WHILE_13_I(p, o, s) BOOST_PP_IF(p(14, s), BOOST_PP_WHILE_14, s BOOST_PP_TUPLE_EAT_3)(p, o, o(14, s)) +# define BOOST_PP_WHILE_14_I(p, o, s) BOOST_PP_IF(p(15, s), BOOST_PP_WHILE_15, s BOOST_PP_TUPLE_EAT_3)(p, o, o(15, s)) +# define BOOST_PP_WHILE_15_I(p, o, s) BOOST_PP_IF(p(16, s), BOOST_PP_WHILE_16, s BOOST_PP_TUPLE_EAT_3)(p, o, o(16, s)) +# define BOOST_PP_WHILE_16_I(p, o, s) BOOST_PP_IF(p(17, s), BOOST_PP_WHILE_17, s BOOST_PP_TUPLE_EAT_3)(p, o, o(17, s)) +# define BOOST_PP_WHILE_17_I(p, o, s) BOOST_PP_IF(p(18, s), BOOST_PP_WHILE_18, s BOOST_PP_TUPLE_EAT_3)(p, o, o(18, s)) +# define BOOST_PP_WHILE_18_I(p, o, s) BOOST_PP_IF(p(19, s), BOOST_PP_WHILE_19, s BOOST_PP_TUPLE_EAT_3)(p, o, o(19, s)) +# define BOOST_PP_WHILE_19_I(p, o, s) BOOST_PP_IF(p(20, s), BOOST_PP_WHILE_20, s BOOST_PP_TUPLE_EAT_3)(p, o, o(20, s)) +# define BOOST_PP_WHILE_20_I(p, o, s) BOOST_PP_IF(p(21, s), BOOST_PP_WHILE_21, s BOOST_PP_TUPLE_EAT_3)(p, o, o(21, s)) +# define BOOST_PP_WHILE_21_I(p, o, s) BOOST_PP_IF(p(22, s), BOOST_PP_WHILE_22, s BOOST_PP_TUPLE_EAT_3)(p, o, o(22, s)) +# define BOOST_PP_WHILE_22_I(p, o, s) BOOST_PP_IF(p(23, s), BOOST_PP_WHILE_23, s BOOST_PP_TUPLE_EAT_3)(p, o, o(23, s)) +# define BOOST_PP_WHILE_23_I(p, o, s) BOOST_PP_IF(p(24, s), BOOST_PP_WHILE_24, s BOOST_PP_TUPLE_EAT_3)(p, o, o(24, s)) +# define BOOST_PP_WHILE_24_I(p, o, s) BOOST_PP_IF(p(25, s), BOOST_PP_WHILE_25, s BOOST_PP_TUPLE_EAT_3)(p, o, o(25, s)) +# define BOOST_PP_WHILE_25_I(p, o, s) BOOST_PP_IF(p(26, s), BOOST_PP_WHILE_26, s BOOST_PP_TUPLE_EAT_3)(p, o, o(26, s)) +# define BOOST_PP_WHILE_26_I(p, o, s) BOOST_PP_IF(p(27, s), BOOST_PP_WHILE_27, s BOOST_PP_TUPLE_EAT_3)(p, o, o(27, s)) +# define BOOST_PP_WHILE_27_I(p, o, s) BOOST_PP_IF(p(28, s), BOOST_PP_WHILE_28, s BOOST_PP_TUPLE_EAT_3)(p, o, o(28, s)) +# define BOOST_PP_WHILE_28_I(p, o, s) BOOST_PP_IF(p(29, s), BOOST_PP_WHILE_29, s BOOST_PP_TUPLE_EAT_3)(p, o, o(29, s)) +# define BOOST_PP_WHILE_29_I(p, o, s) BOOST_PP_IF(p(30, s), BOOST_PP_WHILE_30, s BOOST_PP_TUPLE_EAT_3)(p, o, o(30, s)) +# define BOOST_PP_WHILE_30_I(p, o, s) BOOST_PP_IF(p(31, s), BOOST_PP_WHILE_31, s BOOST_PP_TUPLE_EAT_3)(p, o, o(31, s)) +# define BOOST_PP_WHILE_31_I(p, o, s) BOOST_PP_IF(p(32, s), BOOST_PP_WHILE_32, s BOOST_PP_TUPLE_EAT_3)(p, o, o(32, s)) +# define BOOST_PP_WHILE_32_I(p, o, s) BOOST_PP_IF(p(33, s), BOOST_PP_WHILE_33, s BOOST_PP_TUPLE_EAT_3)(p, o, o(33, s)) +# define BOOST_PP_WHILE_33_I(p, o, s) BOOST_PP_IF(p(34, s), BOOST_PP_WHILE_34, s BOOST_PP_TUPLE_EAT_3)(p, o, o(34, s)) +# define BOOST_PP_WHILE_34_I(p, o, s) BOOST_PP_IF(p(35, s), BOOST_PP_WHILE_35, s BOOST_PP_TUPLE_EAT_3)(p, o, o(35, s)) +# define BOOST_PP_WHILE_35_I(p, o, s) BOOST_PP_IF(p(36, s), BOOST_PP_WHILE_36, s BOOST_PP_TUPLE_EAT_3)(p, o, o(36, s)) +# define BOOST_PP_WHILE_36_I(p, o, s) BOOST_PP_IF(p(37, s), BOOST_PP_WHILE_37, s BOOST_PP_TUPLE_EAT_3)(p, o, o(37, s)) +# define BOOST_PP_WHILE_37_I(p, o, s) BOOST_PP_IF(p(38, s), BOOST_PP_WHILE_38, s BOOST_PP_TUPLE_EAT_3)(p, o, o(38, s)) +# define BOOST_PP_WHILE_38_I(p, o, s) BOOST_PP_IF(p(39, s), BOOST_PP_WHILE_39, s BOOST_PP_TUPLE_EAT_3)(p, o, o(39, s)) +# define BOOST_PP_WHILE_39_I(p, o, s) BOOST_PP_IF(p(40, s), BOOST_PP_WHILE_40, s BOOST_PP_TUPLE_EAT_3)(p, o, o(40, s)) +# define BOOST_PP_WHILE_40_I(p, o, s) BOOST_PP_IF(p(41, s), BOOST_PP_WHILE_41, s BOOST_PP_TUPLE_EAT_3)(p, o, o(41, s)) +# define BOOST_PP_WHILE_41_I(p, o, s) BOOST_PP_IF(p(42, s), BOOST_PP_WHILE_42, s BOOST_PP_TUPLE_EAT_3)(p, o, o(42, s)) +# define BOOST_PP_WHILE_42_I(p, o, s) BOOST_PP_IF(p(43, s), BOOST_PP_WHILE_43, s BOOST_PP_TUPLE_EAT_3)(p, o, o(43, s)) +# define BOOST_PP_WHILE_43_I(p, o, s) BOOST_PP_IF(p(44, s), BOOST_PP_WHILE_44, s BOOST_PP_TUPLE_EAT_3)(p, o, o(44, s)) +# define BOOST_PP_WHILE_44_I(p, o, s) BOOST_PP_IF(p(45, s), BOOST_PP_WHILE_45, s BOOST_PP_TUPLE_EAT_3)(p, o, o(45, s)) +# define BOOST_PP_WHILE_45_I(p, o, s) BOOST_PP_IF(p(46, s), BOOST_PP_WHILE_46, s BOOST_PP_TUPLE_EAT_3)(p, o, o(46, s)) +# define BOOST_PP_WHILE_46_I(p, o, s) BOOST_PP_IF(p(47, s), BOOST_PP_WHILE_47, s BOOST_PP_TUPLE_EAT_3)(p, o, o(47, s)) +# define BOOST_PP_WHILE_47_I(p, o, s) BOOST_PP_IF(p(48, s), BOOST_PP_WHILE_48, s BOOST_PP_TUPLE_EAT_3)(p, o, o(48, s)) +# define BOOST_PP_WHILE_48_I(p, o, s) BOOST_PP_IF(p(49, s), BOOST_PP_WHILE_49, s BOOST_PP_TUPLE_EAT_3)(p, o, o(49, s)) +# define BOOST_PP_WHILE_49_I(p, o, s) BOOST_PP_IF(p(50, s), BOOST_PP_WHILE_50, s BOOST_PP_TUPLE_EAT_3)(p, o, o(50, s)) +# define BOOST_PP_WHILE_50_I(p, o, s) BOOST_PP_IF(p(51, s), BOOST_PP_WHILE_51, s BOOST_PP_TUPLE_EAT_3)(p, o, o(51, s)) +# define BOOST_PP_WHILE_51_I(p, o, s) BOOST_PP_IF(p(52, s), BOOST_PP_WHILE_52, s BOOST_PP_TUPLE_EAT_3)(p, o, o(52, s)) +# define BOOST_PP_WHILE_52_I(p, o, s) BOOST_PP_IF(p(53, s), BOOST_PP_WHILE_53, s BOOST_PP_TUPLE_EAT_3)(p, o, o(53, s)) +# define BOOST_PP_WHILE_53_I(p, o, s) BOOST_PP_IF(p(54, s), BOOST_PP_WHILE_54, s BOOST_PP_TUPLE_EAT_3)(p, o, o(54, s)) +# define BOOST_PP_WHILE_54_I(p, o, s) BOOST_PP_IF(p(55, s), BOOST_PP_WHILE_55, s BOOST_PP_TUPLE_EAT_3)(p, o, o(55, s)) +# define BOOST_PP_WHILE_55_I(p, o, s) BOOST_PP_IF(p(56, s), BOOST_PP_WHILE_56, s BOOST_PP_TUPLE_EAT_3)(p, o, o(56, s)) +# define BOOST_PP_WHILE_56_I(p, o, s) BOOST_PP_IF(p(57, s), BOOST_PP_WHILE_57, s BOOST_PP_TUPLE_EAT_3)(p, o, o(57, s)) +# define BOOST_PP_WHILE_57_I(p, o, s) BOOST_PP_IF(p(58, s), BOOST_PP_WHILE_58, s BOOST_PP_TUPLE_EAT_3)(p, o, o(58, s)) +# define BOOST_PP_WHILE_58_I(p, o, s) BOOST_PP_IF(p(59, s), BOOST_PP_WHILE_59, s BOOST_PP_TUPLE_EAT_3)(p, o, o(59, s)) +# define BOOST_PP_WHILE_59_I(p, o, s) BOOST_PP_IF(p(60, s), BOOST_PP_WHILE_60, s BOOST_PP_TUPLE_EAT_3)(p, o, o(60, s)) +# define BOOST_PP_WHILE_60_I(p, o, s) BOOST_PP_IF(p(61, s), BOOST_PP_WHILE_61, s BOOST_PP_TUPLE_EAT_3)(p, o, o(61, s)) +# define BOOST_PP_WHILE_61_I(p, o, s) BOOST_PP_IF(p(62, s), BOOST_PP_WHILE_62, s BOOST_PP_TUPLE_EAT_3)(p, o, o(62, s)) +# define BOOST_PP_WHILE_62_I(p, o, s) BOOST_PP_IF(p(63, s), BOOST_PP_WHILE_63, s BOOST_PP_TUPLE_EAT_3)(p, o, o(63, s)) +# define BOOST_PP_WHILE_63_I(p, o, s) BOOST_PP_IF(p(64, s), BOOST_PP_WHILE_64, s BOOST_PP_TUPLE_EAT_3)(p, o, o(64, s)) +# define BOOST_PP_WHILE_64_I(p, o, s) BOOST_PP_IF(p(65, s), BOOST_PP_WHILE_65, s BOOST_PP_TUPLE_EAT_3)(p, o, o(65, s)) +# define BOOST_PP_WHILE_65_I(p, o, s) BOOST_PP_IF(p(66, s), BOOST_PP_WHILE_66, s BOOST_PP_TUPLE_EAT_3)(p, o, o(66, s)) +# define BOOST_PP_WHILE_66_I(p, o, s) BOOST_PP_IF(p(67, s), BOOST_PP_WHILE_67, s BOOST_PP_TUPLE_EAT_3)(p, o, o(67, s)) +# define BOOST_PP_WHILE_67_I(p, o, s) BOOST_PP_IF(p(68, s), BOOST_PP_WHILE_68, s BOOST_PP_TUPLE_EAT_3)(p, o, o(68, s)) +# define BOOST_PP_WHILE_68_I(p, o, s) BOOST_PP_IF(p(69, s), BOOST_PP_WHILE_69, s BOOST_PP_TUPLE_EAT_3)(p, o, o(69, s)) +# define BOOST_PP_WHILE_69_I(p, o, s) BOOST_PP_IF(p(70, s), BOOST_PP_WHILE_70, s BOOST_PP_TUPLE_EAT_3)(p, o, o(70, s)) +# define BOOST_PP_WHILE_70_I(p, o, s) BOOST_PP_IF(p(71, s), BOOST_PP_WHILE_71, s BOOST_PP_TUPLE_EAT_3)(p, o, o(71, s)) +# define BOOST_PP_WHILE_71_I(p, o, s) BOOST_PP_IF(p(72, s), BOOST_PP_WHILE_72, s BOOST_PP_TUPLE_EAT_3)(p, o, o(72, s)) +# define BOOST_PP_WHILE_72_I(p, o, s) BOOST_PP_IF(p(73, s), BOOST_PP_WHILE_73, s BOOST_PP_TUPLE_EAT_3)(p, o, o(73, s)) +# define BOOST_PP_WHILE_73_I(p, o, s) BOOST_PP_IF(p(74, s), BOOST_PP_WHILE_74, s BOOST_PP_TUPLE_EAT_3)(p, o, o(74, s)) +# define BOOST_PP_WHILE_74_I(p, o, s) BOOST_PP_IF(p(75, s), BOOST_PP_WHILE_75, s BOOST_PP_TUPLE_EAT_3)(p, o, o(75, s)) +# define BOOST_PP_WHILE_75_I(p, o, s) BOOST_PP_IF(p(76, s), BOOST_PP_WHILE_76, s BOOST_PP_TUPLE_EAT_3)(p, o, o(76, s)) +# define BOOST_PP_WHILE_76_I(p, o, s) BOOST_PP_IF(p(77, s), BOOST_PP_WHILE_77, s BOOST_PP_TUPLE_EAT_3)(p, o, o(77, s)) +# define BOOST_PP_WHILE_77_I(p, o, s) BOOST_PP_IF(p(78, s), BOOST_PP_WHILE_78, s BOOST_PP_TUPLE_EAT_3)(p, o, o(78, s)) +# define BOOST_PP_WHILE_78_I(p, o, s) BOOST_PP_IF(p(79, s), BOOST_PP_WHILE_79, s BOOST_PP_TUPLE_EAT_3)(p, o, o(79, s)) +# define BOOST_PP_WHILE_79_I(p, o, s) BOOST_PP_IF(p(80, s), BOOST_PP_WHILE_80, s BOOST_PP_TUPLE_EAT_3)(p, o, o(80, s)) +# define BOOST_PP_WHILE_80_I(p, o, s) BOOST_PP_IF(p(81, s), BOOST_PP_WHILE_81, s BOOST_PP_TUPLE_EAT_3)(p, o, o(81, s)) +# define BOOST_PP_WHILE_81_I(p, o, s) BOOST_PP_IF(p(82, s), BOOST_PP_WHILE_82, s BOOST_PP_TUPLE_EAT_3)(p, o, o(82, s)) +# define BOOST_PP_WHILE_82_I(p, o, s) BOOST_PP_IF(p(83, s), BOOST_PP_WHILE_83, s BOOST_PP_TUPLE_EAT_3)(p, o, o(83, s)) +# define BOOST_PP_WHILE_83_I(p, o, s) BOOST_PP_IF(p(84, s), BOOST_PP_WHILE_84, s BOOST_PP_TUPLE_EAT_3)(p, o, o(84, s)) +# define BOOST_PP_WHILE_84_I(p, o, s) BOOST_PP_IF(p(85, s), BOOST_PP_WHILE_85, s BOOST_PP_TUPLE_EAT_3)(p, o, o(85, s)) +# define BOOST_PP_WHILE_85_I(p, o, s) BOOST_PP_IF(p(86, s), BOOST_PP_WHILE_86, s BOOST_PP_TUPLE_EAT_3)(p, o, o(86, s)) +# define BOOST_PP_WHILE_86_I(p, o, s) BOOST_PP_IF(p(87, s), BOOST_PP_WHILE_87, s BOOST_PP_TUPLE_EAT_3)(p, o, o(87, s)) +# define BOOST_PP_WHILE_87_I(p, o, s) BOOST_PP_IF(p(88, s), BOOST_PP_WHILE_88, s BOOST_PP_TUPLE_EAT_3)(p, o, o(88, s)) +# define BOOST_PP_WHILE_88_I(p, o, s) BOOST_PP_IF(p(89, s), BOOST_PP_WHILE_89, s BOOST_PP_TUPLE_EAT_3)(p, o, o(89, s)) +# define BOOST_PP_WHILE_89_I(p, o, s) BOOST_PP_IF(p(90, s), BOOST_PP_WHILE_90, s BOOST_PP_TUPLE_EAT_3)(p, o, o(90, s)) +# define BOOST_PP_WHILE_90_I(p, o, s) BOOST_PP_IF(p(91, s), BOOST_PP_WHILE_91, s BOOST_PP_TUPLE_EAT_3)(p, o, o(91, s)) +# define BOOST_PP_WHILE_91_I(p, o, s) BOOST_PP_IF(p(92, s), BOOST_PP_WHILE_92, s BOOST_PP_TUPLE_EAT_3)(p, o, o(92, s)) +# define BOOST_PP_WHILE_92_I(p, o, s) BOOST_PP_IF(p(93, s), BOOST_PP_WHILE_93, s BOOST_PP_TUPLE_EAT_3)(p, o, o(93, s)) +# define BOOST_PP_WHILE_93_I(p, o, s) BOOST_PP_IF(p(94, s), BOOST_PP_WHILE_94, s BOOST_PP_TUPLE_EAT_3)(p, o, o(94, s)) +# define BOOST_PP_WHILE_94_I(p, o, s) BOOST_PP_IF(p(95, s), BOOST_PP_WHILE_95, s BOOST_PP_TUPLE_EAT_3)(p, o, o(95, s)) +# define BOOST_PP_WHILE_95_I(p, o, s) BOOST_PP_IF(p(96, s), BOOST_PP_WHILE_96, s BOOST_PP_TUPLE_EAT_3)(p, o, o(96, s)) +# define BOOST_PP_WHILE_96_I(p, o, s) BOOST_PP_IF(p(97, s), BOOST_PP_WHILE_97, s BOOST_PP_TUPLE_EAT_3)(p, o, o(97, s)) +# define BOOST_PP_WHILE_97_I(p, o, s) BOOST_PP_IF(p(98, s), BOOST_PP_WHILE_98, s BOOST_PP_TUPLE_EAT_3)(p, o, o(98, s)) +# define BOOST_PP_WHILE_98_I(p, o, s) BOOST_PP_IF(p(99, s), BOOST_PP_WHILE_99, s BOOST_PP_TUPLE_EAT_3)(p, o, o(99, s)) +# define BOOST_PP_WHILE_99_I(p, o, s) BOOST_PP_IF(p(100, s), BOOST_PP_WHILE_100, s BOOST_PP_TUPLE_EAT_3)(p, o, o(100, s)) +# define BOOST_PP_WHILE_100_I(p, o, s) BOOST_PP_IF(p(101, s), BOOST_PP_WHILE_101, s BOOST_PP_TUPLE_EAT_3)(p, o, o(101, s)) +# define BOOST_PP_WHILE_101_I(p, o, s) BOOST_PP_IF(p(102, s), BOOST_PP_WHILE_102, s BOOST_PP_TUPLE_EAT_3)(p, o, o(102, s)) +# define BOOST_PP_WHILE_102_I(p, o, s) BOOST_PP_IF(p(103, s), BOOST_PP_WHILE_103, s BOOST_PP_TUPLE_EAT_3)(p, o, o(103, s)) +# define BOOST_PP_WHILE_103_I(p, o, s) BOOST_PP_IF(p(104, s), BOOST_PP_WHILE_104, s BOOST_PP_TUPLE_EAT_3)(p, o, o(104, s)) +# define BOOST_PP_WHILE_104_I(p, o, s) BOOST_PP_IF(p(105, s), BOOST_PP_WHILE_105, s BOOST_PP_TUPLE_EAT_3)(p, o, o(105, s)) +# define BOOST_PP_WHILE_105_I(p, o, s) BOOST_PP_IF(p(106, s), BOOST_PP_WHILE_106, s BOOST_PP_TUPLE_EAT_3)(p, o, o(106, s)) +# define BOOST_PP_WHILE_106_I(p, o, s) BOOST_PP_IF(p(107, s), BOOST_PP_WHILE_107, s BOOST_PP_TUPLE_EAT_3)(p, o, o(107, s)) +# define BOOST_PP_WHILE_107_I(p, o, s) BOOST_PP_IF(p(108, s), BOOST_PP_WHILE_108, s BOOST_PP_TUPLE_EAT_3)(p, o, o(108, s)) +# define BOOST_PP_WHILE_108_I(p, o, s) BOOST_PP_IF(p(109, s), BOOST_PP_WHILE_109, s BOOST_PP_TUPLE_EAT_3)(p, o, o(109, s)) +# define BOOST_PP_WHILE_109_I(p, o, s) BOOST_PP_IF(p(110, s), BOOST_PP_WHILE_110, s BOOST_PP_TUPLE_EAT_3)(p, o, o(110, s)) +# define BOOST_PP_WHILE_110_I(p, o, s) BOOST_PP_IF(p(111, s), BOOST_PP_WHILE_111, s BOOST_PP_TUPLE_EAT_3)(p, o, o(111, s)) +# define BOOST_PP_WHILE_111_I(p, o, s) BOOST_PP_IF(p(112, s), BOOST_PP_WHILE_112, s BOOST_PP_TUPLE_EAT_3)(p, o, o(112, s)) +# define BOOST_PP_WHILE_112_I(p, o, s) BOOST_PP_IF(p(113, s), BOOST_PP_WHILE_113, s BOOST_PP_TUPLE_EAT_3)(p, o, o(113, s)) +# define BOOST_PP_WHILE_113_I(p, o, s) BOOST_PP_IF(p(114, s), BOOST_PP_WHILE_114, s BOOST_PP_TUPLE_EAT_3)(p, o, o(114, s)) +# define BOOST_PP_WHILE_114_I(p, o, s) BOOST_PP_IF(p(115, s), BOOST_PP_WHILE_115, s BOOST_PP_TUPLE_EAT_3)(p, o, o(115, s)) +# define BOOST_PP_WHILE_115_I(p, o, s) BOOST_PP_IF(p(116, s), BOOST_PP_WHILE_116, s BOOST_PP_TUPLE_EAT_3)(p, o, o(116, s)) +# define BOOST_PP_WHILE_116_I(p, o, s) BOOST_PP_IF(p(117, s), BOOST_PP_WHILE_117, s BOOST_PP_TUPLE_EAT_3)(p, o, o(117, s)) +# define BOOST_PP_WHILE_117_I(p, o, s) BOOST_PP_IF(p(118, s), BOOST_PP_WHILE_118, s BOOST_PP_TUPLE_EAT_3)(p, o, o(118, s)) +# define BOOST_PP_WHILE_118_I(p, o, s) BOOST_PP_IF(p(119, s), BOOST_PP_WHILE_119, s BOOST_PP_TUPLE_EAT_3)(p, o, o(119, s)) +# define BOOST_PP_WHILE_119_I(p, o, s) BOOST_PP_IF(p(120, s), BOOST_PP_WHILE_120, s BOOST_PP_TUPLE_EAT_3)(p, o, o(120, s)) +# define BOOST_PP_WHILE_120_I(p, o, s) BOOST_PP_IF(p(121, s), BOOST_PP_WHILE_121, s BOOST_PP_TUPLE_EAT_3)(p, o, o(121, s)) +# define BOOST_PP_WHILE_121_I(p, o, s) BOOST_PP_IF(p(122, s), BOOST_PP_WHILE_122, s BOOST_PP_TUPLE_EAT_3)(p, o, o(122, s)) +# define BOOST_PP_WHILE_122_I(p, o, s) BOOST_PP_IF(p(123, s), BOOST_PP_WHILE_123, s BOOST_PP_TUPLE_EAT_3)(p, o, o(123, s)) +# define BOOST_PP_WHILE_123_I(p, o, s) BOOST_PP_IF(p(124, s), BOOST_PP_WHILE_124, s BOOST_PP_TUPLE_EAT_3)(p, o, o(124, s)) +# define BOOST_PP_WHILE_124_I(p, o, s) BOOST_PP_IF(p(125, s), BOOST_PP_WHILE_125, s BOOST_PP_TUPLE_EAT_3)(p, o, o(125, s)) +# define BOOST_PP_WHILE_125_I(p, o, s) BOOST_PP_IF(p(126, s), BOOST_PP_WHILE_126, s BOOST_PP_TUPLE_EAT_3)(p, o, o(126, s)) +# define BOOST_PP_WHILE_126_I(p, o, s) BOOST_PP_IF(p(127, s), BOOST_PP_WHILE_127, s BOOST_PP_TUPLE_EAT_3)(p, o, o(127, s)) +# define BOOST_PP_WHILE_127_I(p, o, s) BOOST_PP_IF(p(128, s), BOOST_PP_WHILE_128, s BOOST_PP_TUPLE_EAT_3)(p, o, o(128, s)) +# define BOOST_PP_WHILE_128_I(p, o, s) BOOST_PP_IF(p(129, s), BOOST_PP_WHILE_129, s BOOST_PP_TUPLE_EAT_3)(p, o, o(129, s)) +# define BOOST_PP_WHILE_129_I(p, o, s) BOOST_PP_IF(p(130, s), BOOST_PP_WHILE_130, s BOOST_PP_TUPLE_EAT_3)(p, o, o(130, s)) +# define BOOST_PP_WHILE_130_I(p, o, s) BOOST_PP_IF(p(131, s), BOOST_PP_WHILE_131, s BOOST_PP_TUPLE_EAT_3)(p, o, o(131, s)) +# define BOOST_PP_WHILE_131_I(p, o, s) BOOST_PP_IF(p(132, s), BOOST_PP_WHILE_132, s BOOST_PP_TUPLE_EAT_3)(p, o, o(132, s)) +# define BOOST_PP_WHILE_132_I(p, o, s) BOOST_PP_IF(p(133, s), BOOST_PP_WHILE_133, s BOOST_PP_TUPLE_EAT_3)(p, o, o(133, s)) +# define BOOST_PP_WHILE_133_I(p, o, s) BOOST_PP_IF(p(134, s), BOOST_PP_WHILE_134, s BOOST_PP_TUPLE_EAT_3)(p, o, o(134, s)) +# define BOOST_PP_WHILE_134_I(p, o, s) BOOST_PP_IF(p(135, s), BOOST_PP_WHILE_135, s BOOST_PP_TUPLE_EAT_3)(p, o, o(135, s)) +# define BOOST_PP_WHILE_135_I(p, o, s) BOOST_PP_IF(p(136, s), BOOST_PP_WHILE_136, s BOOST_PP_TUPLE_EAT_3)(p, o, o(136, s)) +# define BOOST_PP_WHILE_136_I(p, o, s) BOOST_PP_IF(p(137, s), BOOST_PP_WHILE_137, s BOOST_PP_TUPLE_EAT_3)(p, o, o(137, s)) +# define BOOST_PP_WHILE_137_I(p, o, s) BOOST_PP_IF(p(138, s), BOOST_PP_WHILE_138, s BOOST_PP_TUPLE_EAT_3)(p, o, o(138, s)) +# define BOOST_PP_WHILE_138_I(p, o, s) BOOST_PP_IF(p(139, s), BOOST_PP_WHILE_139, s BOOST_PP_TUPLE_EAT_3)(p, o, o(139, s)) +# define BOOST_PP_WHILE_139_I(p, o, s) BOOST_PP_IF(p(140, s), BOOST_PP_WHILE_140, s BOOST_PP_TUPLE_EAT_3)(p, o, o(140, s)) +# define BOOST_PP_WHILE_140_I(p, o, s) BOOST_PP_IF(p(141, s), BOOST_PP_WHILE_141, s BOOST_PP_TUPLE_EAT_3)(p, o, o(141, s)) +# define BOOST_PP_WHILE_141_I(p, o, s) BOOST_PP_IF(p(142, s), BOOST_PP_WHILE_142, s BOOST_PP_TUPLE_EAT_3)(p, o, o(142, s)) +# define BOOST_PP_WHILE_142_I(p, o, s) BOOST_PP_IF(p(143, s), BOOST_PP_WHILE_143, s BOOST_PP_TUPLE_EAT_3)(p, o, o(143, s)) +# define BOOST_PP_WHILE_143_I(p, o, s) BOOST_PP_IF(p(144, s), BOOST_PP_WHILE_144, s BOOST_PP_TUPLE_EAT_3)(p, o, o(144, s)) +# define BOOST_PP_WHILE_144_I(p, o, s) BOOST_PP_IF(p(145, s), BOOST_PP_WHILE_145, s BOOST_PP_TUPLE_EAT_3)(p, o, o(145, s)) +# define BOOST_PP_WHILE_145_I(p, o, s) BOOST_PP_IF(p(146, s), BOOST_PP_WHILE_146, s BOOST_PP_TUPLE_EAT_3)(p, o, o(146, s)) +# define BOOST_PP_WHILE_146_I(p, o, s) BOOST_PP_IF(p(147, s), BOOST_PP_WHILE_147, s BOOST_PP_TUPLE_EAT_3)(p, o, o(147, s)) +# define BOOST_PP_WHILE_147_I(p, o, s) BOOST_PP_IF(p(148, s), BOOST_PP_WHILE_148, s BOOST_PP_TUPLE_EAT_3)(p, o, o(148, s)) +# define BOOST_PP_WHILE_148_I(p, o, s) BOOST_PP_IF(p(149, s), BOOST_PP_WHILE_149, s BOOST_PP_TUPLE_EAT_3)(p, o, o(149, s)) +# define BOOST_PP_WHILE_149_I(p, o, s) BOOST_PP_IF(p(150, s), BOOST_PP_WHILE_150, s BOOST_PP_TUPLE_EAT_3)(p, o, o(150, s)) +# define BOOST_PP_WHILE_150_I(p, o, s) BOOST_PP_IF(p(151, s), BOOST_PP_WHILE_151, s BOOST_PP_TUPLE_EAT_3)(p, o, o(151, s)) +# define BOOST_PP_WHILE_151_I(p, o, s) BOOST_PP_IF(p(152, s), BOOST_PP_WHILE_152, s BOOST_PP_TUPLE_EAT_3)(p, o, o(152, s)) +# define BOOST_PP_WHILE_152_I(p, o, s) BOOST_PP_IF(p(153, s), BOOST_PP_WHILE_153, s BOOST_PP_TUPLE_EAT_3)(p, o, o(153, s)) +# define BOOST_PP_WHILE_153_I(p, o, s) BOOST_PP_IF(p(154, s), BOOST_PP_WHILE_154, s BOOST_PP_TUPLE_EAT_3)(p, o, o(154, s)) +# define BOOST_PP_WHILE_154_I(p, o, s) BOOST_PP_IF(p(155, s), BOOST_PP_WHILE_155, s BOOST_PP_TUPLE_EAT_3)(p, o, o(155, s)) +# define BOOST_PP_WHILE_155_I(p, o, s) BOOST_PP_IF(p(156, s), BOOST_PP_WHILE_156, s BOOST_PP_TUPLE_EAT_3)(p, o, o(156, s)) +# define BOOST_PP_WHILE_156_I(p, o, s) BOOST_PP_IF(p(157, s), BOOST_PP_WHILE_157, s BOOST_PP_TUPLE_EAT_3)(p, o, o(157, s)) +# define BOOST_PP_WHILE_157_I(p, o, s) BOOST_PP_IF(p(158, s), BOOST_PP_WHILE_158, s BOOST_PP_TUPLE_EAT_3)(p, o, o(158, s)) +# define BOOST_PP_WHILE_158_I(p, o, s) BOOST_PP_IF(p(159, s), BOOST_PP_WHILE_159, s BOOST_PP_TUPLE_EAT_3)(p, o, o(159, s)) +# define BOOST_PP_WHILE_159_I(p, o, s) BOOST_PP_IF(p(160, s), BOOST_PP_WHILE_160, s BOOST_PP_TUPLE_EAT_3)(p, o, o(160, s)) +# define BOOST_PP_WHILE_160_I(p, o, s) BOOST_PP_IF(p(161, s), BOOST_PP_WHILE_161, s BOOST_PP_TUPLE_EAT_3)(p, o, o(161, s)) +# define BOOST_PP_WHILE_161_I(p, o, s) BOOST_PP_IF(p(162, s), BOOST_PP_WHILE_162, s BOOST_PP_TUPLE_EAT_3)(p, o, o(162, s)) +# define BOOST_PP_WHILE_162_I(p, o, s) BOOST_PP_IF(p(163, s), BOOST_PP_WHILE_163, s BOOST_PP_TUPLE_EAT_3)(p, o, o(163, s)) +# define BOOST_PP_WHILE_163_I(p, o, s) BOOST_PP_IF(p(164, s), BOOST_PP_WHILE_164, s BOOST_PP_TUPLE_EAT_3)(p, o, o(164, s)) +# define BOOST_PP_WHILE_164_I(p, o, s) BOOST_PP_IF(p(165, s), BOOST_PP_WHILE_165, s BOOST_PP_TUPLE_EAT_3)(p, o, o(165, s)) +# define BOOST_PP_WHILE_165_I(p, o, s) BOOST_PP_IF(p(166, s), BOOST_PP_WHILE_166, s BOOST_PP_TUPLE_EAT_3)(p, o, o(166, s)) +# define BOOST_PP_WHILE_166_I(p, o, s) BOOST_PP_IF(p(167, s), BOOST_PP_WHILE_167, s BOOST_PP_TUPLE_EAT_3)(p, o, o(167, s)) +# define BOOST_PP_WHILE_167_I(p, o, s) BOOST_PP_IF(p(168, s), BOOST_PP_WHILE_168, s BOOST_PP_TUPLE_EAT_3)(p, o, o(168, s)) +# define BOOST_PP_WHILE_168_I(p, o, s) BOOST_PP_IF(p(169, s), BOOST_PP_WHILE_169, s BOOST_PP_TUPLE_EAT_3)(p, o, o(169, s)) +# define BOOST_PP_WHILE_169_I(p, o, s) BOOST_PP_IF(p(170, s), BOOST_PP_WHILE_170, s BOOST_PP_TUPLE_EAT_3)(p, o, o(170, s)) +# define BOOST_PP_WHILE_170_I(p, o, s) BOOST_PP_IF(p(171, s), BOOST_PP_WHILE_171, s BOOST_PP_TUPLE_EAT_3)(p, o, o(171, s)) +# define BOOST_PP_WHILE_171_I(p, o, s) BOOST_PP_IF(p(172, s), BOOST_PP_WHILE_172, s BOOST_PP_TUPLE_EAT_3)(p, o, o(172, s)) +# define BOOST_PP_WHILE_172_I(p, o, s) BOOST_PP_IF(p(173, s), BOOST_PP_WHILE_173, s BOOST_PP_TUPLE_EAT_3)(p, o, o(173, s)) +# define BOOST_PP_WHILE_173_I(p, o, s) BOOST_PP_IF(p(174, s), BOOST_PP_WHILE_174, s BOOST_PP_TUPLE_EAT_3)(p, o, o(174, s)) +# define BOOST_PP_WHILE_174_I(p, o, s) BOOST_PP_IF(p(175, s), BOOST_PP_WHILE_175, s BOOST_PP_TUPLE_EAT_3)(p, o, o(175, s)) +# define BOOST_PP_WHILE_175_I(p, o, s) BOOST_PP_IF(p(176, s), BOOST_PP_WHILE_176, s BOOST_PP_TUPLE_EAT_3)(p, o, o(176, s)) +# define BOOST_PP_WHILE_176_I(p, o, s) BOOST_PP_IF(p(177, s), BOOST_PP_WHILE_177, s BOOST_PP_TUPLE_EAT_3)(p, o, o(177, s)) +# define BOOST_PP_WHILE_177_I(p, o, s) BOOST_PP_IF(p(178, s), BOOST_PP_WHILE_178, s BOOST_PP_TUPLE_EAT_3)(p, o, o(178, s)) +# define BOOST_PP_WHILE_178_I(p, o, s) BOOST_PP_IF(p(179, s), BOOST_PP_WHILE_179, s BOOST_PP_TUPLE_EAT_3)(p, o, o(179, s)) +# define BOOST_PP_WHILE_179_I(p, o, s) BOOST_PP_IF(p(180, s), BOOST_PP_WHILE_180, s BOOST_PP_TUPLE_EAT_3)(p, o, o(180, s)) +# define BOOST_PP_WHILE_180_I(p, o, s) BOOST_PP_IF(p(181, s), BOOST_PP_WHILE_181, s BOOST_PP_TUPLE_EAT_3)(p, o, o(181, s)) +# define BOOST_PP_WHILE_181_I(p, o, s) BOOST_PP_IF(p(182, s), BOOST_PP_WHILE_182, s BOOST_PP_TUPLE_EAT_3)(p, o, o(182, s)) +# define BOOST_PP_WHILE_182_I(p, o, s) BOOST_PP_IF(p(183, s), BOOST_PP_WHILE_183, s BOOST_PP_TUPLE_EAT_3)(p, o, o(183, s)) +# define BOOST_PP_WHILE_183_I(p, o, s) BOOST_PP_IF(p(184, s), BOOST_PP_WHILE_184, s BOOST_PP_TUPLE_EAT_3)(p, o, o(184, s)) +# define BOOST_PP_WHILE_184_I(p, o, s) BOOST_PP_IF(p(185, s), BOOST_PP_WHILE_185, s BOOST_PP_TUPLE_EAT_3)(p, o, o(185, s)) +# define BOOST_PP_WHILE_185_I(p, o, s) BOOST_PP_IF(p(186, s), BOOST_PP_WHILE_186, s BOOST_PP_TUPLE_EAT_3)(p, o, o(186, s)) +# define BOOST_PP_WHILE_186_I(p, o, s) BOOST_PP_IF(p(187, s), BOOST_PP_WHILE_187, s BOOST_PP_TUPLE_EAT_3)(p, o, o(187, s)) +# define BOOST_PP_WHILE_187_I(p, o, s) BOOST_PP_IF(p(188, s), BOOST_PP_WHILE_188, s BOOST_PP_TUPLE_EAT_3)(p, o, o(188, s)) +# define BOOST_PP_WHILE_188_I(p, o, s) BOOST_PP_IF(p(189, s), BOOST_PP_WHILE_189, s BOOST_PP_TUPLE_EAT_3)(p, o, o(189, s)) +# define BOOST_PP_WHILE_189_I(p, o, s) BOOST_PP_IF(p(190, s), BOOST_PP_WHILE_190, s BOOST_PP_TUPLE_EAT_3)(p, o, o(190, s)) +# define BOOST_PP_WHILE_190_I(p, o, s) BOOST_PP_IF(p(191, s), BOOST_PP_WHILE_191, s BOOST_PP_TUPLE_EAT_3)(p, o, o(191, s)) +# define BOOST_PP_WHILE_191_I(p, o, s) BOOST_PP_IF(p(192, s), BOOST_PP_WHILE_192, s BOOST_PP_TUPLE_EAT_3)(p, o, o(192, s)) +# define BOOST_PP_WHILE_192_I(p, o, s) BOOST_PP_IF(p(193, s), BOOST_PP_WHILE_193, s BOOST_PP_TUPLE_EAT_3)(p, o, o(193, s)) +# define BOOST_PP_WHILE_193_I(p, o, s) BOOST_PP_IF(p(194, s), BOOST_PP_WHILE_194, s BOOST_PP_TUPLE_EAT_3)(p, o, o(194, s)) +# define BOOST_PP_WHILE_194_I(p, o, s) BOOST_PP_IF(p(195, s), BOOST_PP_WHILE_195, s BOOST_PP_TUPLE_EAT_3)(p, o, o(195, s)) +# define BOOST_PP_WHILE_195_I(p, o, s) BOOST_PP_IF(p(196, s), BOOST_PP_WHILE_196, s BOOST_PP_TUPLE_EAT_3)(p, o, o(196, s)) +# define BOOST_PP_WHILE_196_I(p, o, s) BOOST_PP_IF(p(197, s), BOOST_PP_WHILE_197, s BOOST_PP_TUPLE_EAT_3)(p, o, o(197, s)) +# define BOOST_PP_WHILE_197_I(p, o, s) BOOST_PP_IF(p(198, s), BOOST_PP_WHILE_198, s BOOST_PP_TUPLE_EAT_3)(p, o, o(198, s)) +# define BOOST_PP_WHILE_198_I(p, o, s) BOOST_PP_IF(p(199, s), BOOST_PP_WHILE_199, s BOOST_PP_TUPLE_EAT_3)(p, o, o(199, s)) +# define BOOST_PP_WHILE_199_I(p, o, s) BOOST_PP_IF(p(200, s), BOOST_PP_WHILE_200, s BOOST_PP_TUPLE_EAT_3)(p, o, o(200, s)) +# define BOOST_PP_WHILE_200_I(p, o, s) BOOST_PP_IF(p(201, s), BOOST_PP_WHILE_201, s BOOST_PP_TUPLE_EAT_3)(p, o, o(201, s)) +# define BOOST_PP_WHILE_201_I(p, o, s) BOOST_PP_IF(p(202, s), BOOST_PP_WHILE_202, s BOOST_PP_TUPLE_EAT_3)(p, o, o(202, s)) +# define BOOST_PP_WHILE_202_I(p, o, s) BOOST_PP_IF(p(203, s), BOOST_PP_WHILE_203, s BOOST_PP_TUPLE_EAT_3)(p, o, o(203, s)) +# define BOOST_PP_WHILE_203_I(p, o, s) BOOST_PP_IF(p(204, s), BOOST_PP_WHILE_204, s BOOST_PP_TUPLE_EAT_3)(p, o, o(204, s)) +# define BOOST_PP_WHILE_204_I(p, o, s) BOOST_PP_IF(p(205, s), BOOST_PP_WHILE_205, s BOOST_PP_TUPLE_EAT_3)(p, o, o(205, s)) +# define BOOST_PP_WHILE_205_I(p, o, s) BOOST_PP_IF(p(206, s), BOOST_PP_WHILE_206, s BOOST_PP_TUPLE_EAT_3)(p, o, o(206, s)) +# define BOOST_PP_WHILE_206_I(p, o, s) BOOST_PP_IF(p(207, s), BOOST_PP_WHILE_207, s BOOST_PP_TUPLE_EAT_3)(p, o, o(207, s)) +# define BOOST_PP_WHILE_207_I(p, o, s) BOOST_PP_IF(p(208, s), BOOST_PP_WHILE_208, s BOOST_PP_TUPLE_EAT_3)(p, o, o(208, s)) +# define BOOST_PP_WHILE_208_I(p, o, s) BOOST_PP_IF(p(209, s), BOOST_PP_WHILE_209, s BOOST_PP_TUPLE_EAT_3)(p, o, o(209, s)) +# define BOOST_PP_WHILE_209_I(p, o, s) BOOST_PP_IF(p(210, s), BOOST_PP_WHILE_210, s BOOST_PP_TUPLE_EAT_3)(p, o, o(210, s)) +# define BOOST_PP_WHILE_210_I(p, o, s) BOOST_PP_IF(p(211, s), BOOST_PP_WHILE_211, s BOOST_PP_TUPLE_EAT_3)(p, o, o(211, s)) +# define BOOST_PP_WHILE_211_I(p, o, s) BOOST_PP_IF(p(212, s), BOOST_PP_WHILE_212, s BOOST_PP_TUPLE_EAT_3)(p, o, o(212, s)) +# define BOOST_PP_WHILE_212_I(p, o, s) BOOST_PP_IF(p(213, s), BOOST_PP_WHILE_213, s BOOST_PP_TUPLE_EAT_3)(p, o, o(213, s)) +# define BOOST_PP_WHILE_213_I(p, o, s) BOOST_PP_IF(p(214, s), BOOST_PP_WHILE_214, s BOOST_PP_TUPLE_EAT_3)(p, o, o(214, s)) +# define BOOST_PP_WHILE_214_I(p, o, s) BOOST_PP_IF(p(215, s), BOOST_PP_WHILE_215, s BOOST_PP_TUPLE_EAT_3)(p, o, o(215, s)) +# define BOOST_PP_WHILE_215_I(p, o, s) BOOST_PP_IF(p(216, s), BOOST_PP_WHILE_216, s BOOST_PP_TUPLE_EAT_3)(p, o, o(216, s)) +# define BOOST_PP_WHILE_216_I(p, o, s) BOOST_PP_IF(p(217, s), BOOST_PP_WHILE_217, s BOOST_PP_TUPLE_EAT_3)(p, o, o(217, s)) +# define BOOST_PP_WHILE_217_I(p, o, s) BOOST_PP_IF(p(218, s), BOOST_PP_WHILE_218, s BOOST_PP_TUPLE_EAT_3)(p, o, o(218, s)) +# define BOOST_PP_WHILE_218_I(p, o, s) BOOST_PP_IF(p(219, s), BOOST_PP_WHILE_219, s BOOST_PP_TUPLE_EAT_3)(p, o, o(219, s)) +# define BOOST_PP_WHILE_219_I(p, o, s) BOOST_PP_IF(p(220, s), BOOST_PP_WHILE_220, s BOOST_PP_TUPLE_EAT_3)(p, o, o(220, s)) +# define BOOST_PP_WHILE_220_I(p, o, s) BOOST_PP_IF(p(221, s), BOOST_PP_WHILE_221, s BOOST_PP_TUPLE_EAT_3)(p, o, o(221, s)) +# define BOOST_PP_WHILE_221_I(p, o, s) BOOST_PP_IF(p(222, s), BOOST_PP_WHILE_222, s BOOST_PP_TUPLE_EAT_3)(p, o, o(222, s)) +# define BOOST_PP_WHILE_222_I(p, o, s) BOOST_PP_IF(p(223, s), BOOST_PP_WHILE_223, s BOOST_PP_TUPLE_EAT_3)(p, o, o(223, s)) +# define BOOST_PP_WHILE_223_I(p, o, s) BOOST_PP_IF(p(224, s), BOOST_PP_WHILE_224, s BOOST_PP_TUPLE_EAT_3)(p, o, o(224, s)) +# define BOOST_PP_WHILE_224_I(p, o, s) BOOST_PP_IF(p(225, s), BOOST_PP_WHILE_225, s BOOST_PP_TUPLE_EAT_3)(p, o, o(225, s)) +# define BOOST_PP_WHILE_225_I(p, o, s) BOOST_PP_IF(p(226, s), BOOST_PP_WHILE_226, s BOOST_PP_TUPLE_EAT_3)(p, o, o(226, s)) +# define BOOST_PP_WHILE_226_I(p, o, s) BOOST_PP_IF(p(227, s), BOOST_PP_WHILE_227, s BOOST_PP_TUPLE_EAT_3)(p, o, o(227, s)) +# define BOOST_PP_WHILE_227_I(p, o, s) BOOST_PP_IF(p(228, s), BOOST_PP_WHILE_228, s BOOST_PP_TUPLE_EAT_3)(p, o, o(228, s)) +# define BOOST_PP_WHILE_228_I(p, o, s) BOOST_PP_IF(p(229, s), BOOST_PP_WHILE_229, s BOOST_PP_TUPLE_EAT_3)(p, o, o(229, s)) +# define BOOST_PP_WHILE_229_I(p, o, s) BOOST_PP_IF(p(230, s), BOOST_PP_WHILE_230, s BOOST_PP_TUPLE_EAT_3)(p, o, o(230, s)) +# define BOOST_PP_WHILE_230_I(p, o, s) BOOST_PP_IF(p(231, s), BOOST_PP_WHILE_231, s BOOST_PP_TUPLE_EAT_3)(p, o, o(231, s)) +# define BOOST_PP_WHILE_231_I(p, o, s) BOOST_PP_IF(p(232, s), BOOST_PP_WHILE_232, s BOOST_PP_TUPLE_EAT_3)(p, o, o(232, s)) +# define BOOST_PP_WHILE_232_I(p, o, s) BOOST_PP_IF(p(233, s), BOOST_PP_WHILE_233, s BOOST_PP_TUPLE_EAT_3)(p, o, o(233, s)) +# define BOOST_PP_WHILE_233_I(p, o, s) BOOST_PP_IF(p(234, s), BOOST_PP_WHILE_234, s BOOST_PP_TUPLE_EAT_3)(p, o, o(234, s)) +# define BOOST_PP_WHILE_234_I(p, o, s) BOOST_PP_IF(p(235, s), BOOST_PP_WHILE_235, s BOOST_PP_TUPLE_EAT_3)(p, o, o(235, s)) +# define BOOST_PP_WHILE_235_I(p, o, s) BOOST_PP_IF(p(236, s), BOOST_PP_WHILE_236, s BOOST_PP_TUPLE_EAT_3)(p, o, o(236, s)) +# define BOOST_PP_WHILE_236_I(p, o, s) BOOST_PP_IF(p(237, s), BOOST_PP_WHILE_237, s BOOST_PP_TUPLE_EAT_3)(p, o, o(237, s)) +# define BOOST_PP_WHILE_237_I(p, o, s) BOOST_PP_IF(p(238, s), BOOST_PP_WHILE_238, s BOOST_PP_TUPLE_EAT_3)(p, o, o(238, s)) +# define BOOST_PP_WHILE_238_I(p, o, s) BOOST_PP_IF(p(239, s), BOOST_PP_WHILE_239, s BOOST_PP_TUPLE_EAT_3)(p, o, o(239, s)) +# define BOOST_PP_WHILE_239_I(p, o, s) BOOST_PP_IF(p(240, s), BOOST_PP_WHILE_240, s BOOST_PP_TUPLE_EAT_3)(p, o, o(240, s)) +# define BOOST_PP_WHILE_240_I(p, o, s) BOOST_PP_IF(p(241, s), BOOST_PP_WHILE_241, s BOOST_PP_TUPLE_EAT_3)(p, o, o(241, s)) +# define BOOST_PP_WHILE_241_I(p, o, s) BOOST_PP_IF(p(242, s), BOOST_PP_WHILE_242, s BOOST_PP_TUPLE_EAT_3)(p, o, o(242, s)) +# define BOOST_PP_WHILE_242_I(p, o, s) BOOST_PP_IF(p(243, s), BOOST_PP_WHILE_243, s BOOST_PP_TUPLE_EAT_3)(p, o, o(243, s)) +# define BOOST_PP_WHILE_243_I(p, o, s) BOOST_PP_IF(p(244, s), BOOST_PP_WHILE_244, s BOOST_PP_TUPLE_EAT_3)(p, o, o(244, s)) +# define BOOST_PP_WHILE_244_I(p, o, s) BOOST_PP_IF(p(245, s), BOOST_PP_WHILE_245, s BOOST_PP_TUPLE_EAT_3)(p, o, o(245, s)) +# define BOOST_PP_WHILE_245_I(p, o, s) BOOST_PP_IF(p(246, s), BOOST_PP_WHILE_246, s BOOST_PP_TUPLE_EAT_3)(p, o, o(246, s)) +# define BOOST_PP_WHILE_246_I(p, o, s) BOOST_PP_IF(p(247, s), BOOST_PP_WHILE_247, s BOOST_PP_TUPLE_EAT_3)(p, o, o(247, s)) +# define BOOST_PP_WHILE_247_I(p, o, s) BOOST_PP_IF(p(248, s), BOOST_PP_WHILE_248, s BOOST_PP_TUPLE_EAT_3)(p, o, o(248, s)) +# define BOOST_PP_WHILE_248_I(p, o, s) BOOST_PP_IF(p(249, s), BOOST_PP_WHILE_249, s BOOST_PP_TUPLE_EAT_3)(p, o, o(249, s)) +# define BOOST_PP_WHILE_249_I(p, o, s) BOOST_PP_IF(p(250, s), BOOST_PP_WHILE_250, s BOOST_PP_TUPLE_EAT_3)(p, o, o(250, s)) +# define BOOST_PP_WHILE_250_I(p, o, s) BOOST_PP_IF(p(251, s), BOOST_PP_WHILE_251, s BOOST_PP_TUPLE_EAT_3)(p, o, o(251, s)) +# define BOOST_PP_WHILE_251_I(p, o, s) BOOST_PP_IF(p(252, s), BOOST_PP_WHILE_252, s BOOST_PP_TUPLE_EAT_3)(p, o, o(252, s)) +# define BOOST_PP_WHILE_252_I(p, o, s) BOOST_PP_IF(p(253, s), BOOST_PP_WHILE_253, s BOOST_PP_TUPLE_EAT_3)(p, o, o(253, s)) +# define BOOST_PP_WHILE_253_I(p, o, s) BOOST_PP_IF(p(254, s), BOOST_PP_WHILE_254, s BOOST_PP_TUPLE_EAT_3)(p, o, o(254, s)) +# define BOOST_PP_WHILE_254_I(p, o, s) BOOST_PP_IF(p(255, s), BOOST_PP_WHILE_255, s BOOST_PP_TUPLE_EAT_3)(p, o, o(255, s)) +# define BOOST_PP_WHILE_255_I(p, o, s) BOOST_PP_IF(p(256, s), BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, o(256, s)) +# define BOOST_PP_WHILE_256_I(p, o, s) BOOST_PP_IF(p(257, s), BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, o(257, s)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/detail/msvc/while.hpp b/plugin/wave/include/boost/preprocessor/control/detail/msvc/while.hpp new file mode 100644 index 0000000..e543e41 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/detail/msvc/while.hpp @@ -0,0 +1,277 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_MSVC_WHILE_HPP +# define BOOST_PREPROCESSOR_CONTROL_DETAIL_MSVC_WHILE_HPP +# +# include +# include +# +# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_IF(p(2, s), BOOST_PP_WHILE_2, s BOOST_PP_TUPLE_EAT_3)(p, o, o(2, s)) +# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_IF(p(3, s), BOOST_PP_WHILE_3, s BOOST_PP_TUPLE_EAT_3)(p, o, o(3, s)) +# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_IF(p(4, s), BOOST_PP_WHILE_4, s BOOST_PP_TUPLE_EAT_3)(p, o, o(4, s)) +# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_IF(p(5, s), BOOST_PP_WHILE_5, s BOOST_PP_TUPLE_EAT_3)(p, o, o(5, s)) +# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_IF(p(6, s), BOOST_PP_WHILE_6, s BOOST_PP_TUPLE_EAT_3)(p, o, o(6, s)) +# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_IF(p(7, s), BOOST_PP_WHILE_7, s BOOST_PP_TUPLE_EAT_3)(p, o, o(7, s)) +# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_IF(p(8, s), BOOST_PP_WHILE_8, s BOOST_PP_TUPLE_EAT_3)(p, o, o(8, s)) +# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_IF(p(9, s), BOOST_PP_WHILE_9, s BOOST_PP_TUPLE_EAT_3)(p, o, o(9, s)) +# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_IF(p(10, s), BOOST_PP_WHILE_10, s BOOST_PP_TUPLE_EAT_3)(p, o, o(10, s)) +# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_IF(p(11, s), BOOST_PP_WHILE_11, s BOOST_PP_TUPLE_EAT_3)(p, o, o(11, s)) +# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_IF(p(12, s), BOOST_PP_WHILE_12, s BOOST_PP_TUPLE_EAT_3)(p, o, o(12, s)) +# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_IF(p(13, s), BOOST_PP_WHILE_13, s BOOST_PP_TUPLE_EAT_3)(p, o, o(13, s)) +# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_IF(p(14, s), BOOST_PP_WHILE_14, s BOOST_PP_TUPLE_EAT_3)(p, o, o(14, s)) +# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_IF(p(15, s), BOOST_PP_WHILE_15, s BOOST_PP_TUPLE_EAT_3)(p, o, o(15, s)) +# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_IF(p(16, s), BOOST_PP_WHILE_16, s BOOST_PP_TUPLE_EAT_3)(p, o, o(16, s)) +# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_IF(p(17, s), BOOST_PP_WHILE_17, s BOOST_PP_TUPLE_EAT_3)(p, o, o(17, s)) +# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_IF(p(18, s), BOOST_PP_WHILE_18, s BOOST_PP_TUPLE_EAT_3)(p, o, o(18, s)) +# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_IF(p(19, s), BOOST_PP_WHILE_19, s BOOST_PP_TUPLE_EAT_3)(p, o, o(19, s)) +# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_IF(p(20, s), BOOST_PP_WHILE_20, s BOOST_PP_TUPLE_EAT_3)(p, o, o(20, s)) +# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_IF(p(21, s), BOOST_PP_WHILE_21, s BOOST_PP_TUPLE_EAT_3)(p, o, o(21, s)) +# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_IF(p(22, s), BOOST_PP_WHILE_22, s BOOST_PP_TUPLE_EAT_3)(p, o, o(22, s)) +# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_IF(p(23, s), BOOST_PP_WHILE_23, s BOOST_PP_TUPLE_EAT_3)(p, o, o(23, s)) +# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_IF(p(24, s), BOOST_PP_WHILE_24, s BOOST_PP_TUPLE_EAT_3)(p, o, o(24, s)) +# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_IF(p(25, s), BOOST_PP_WHILE_25, s BOOST_PP_TUPLE_EAT_3)(p, o, o(25, s)) +# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_IF(p(26, s), BOOST_PP_WHILE_26, s BOOST_PP_TUPLE_EAT_3)(p, o, o(26, s)) +# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_IF(p(27, s), BOOST_PP_WHILE_27, s BOOST_PP_TUPLE_EAT_3)(p, o, o(27, s)) +# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_IF(p(28, s), BOOST_PP_WHILE_28, s BOOST_PP_TUPLE_EAT_3)(p, o, o(28, s)) +# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_IF(p(29, s), BOOST_PP_WHILE_29, s BOOST_PP_TUPLE_EAT_3)(p, o, o(29, s)) +# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_IF(p(30, s), BOOST_PP_WHILE_30, s BOOST_PP_TUPLE_EAT_3)(p, o, o(30, s)) +# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_IF(p(31, s), BOOST_PP_WHILE_31, s BOOST_PP_TUPLE_EAT_3)(p, o, o(31, s)) +# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_IF(p(32, s), BOOST_PP_WHILE_32, s BOOST_PP_TUPLE_EAT_3)(p, o, o(32, s)) +# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_IF(p(33, s), BOOST_PP_WHILE_33, s BOOST_PP_TUPLE_EAT_3)(p, o, o(33, s)) +# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_IF(p(34, s), BOOST_PP_WHILE_34, s BOOST_PP_TUPLE_EAT_3)(p, o, o(34, s)) +# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_IF(p(35, s), BOOST_PP_WHILE_35, s BOOST_PP_TUPLE_EAT_3)(p, o, o(35, s)) +# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_IF(p(36, s), BOOST_PP_WHILE_36, s BOOST_PP_TUPLE_EAT_3)(p, o, o(36, s)) +# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_IF(p(37, s), BOOST_PP_WHILE_37, s BOOST_PP_TUPLE_EAT_3)(p, o, o(37, s)) +# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_IF(p(38, s), BOOST_PP_WHILE_38, s BOOST_PP_TUPLE_EAT_3)(p, o, o(38, s)) +# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_IF(p(39, s), BOOST_PP_WHILE_39, s BOOST_PP_TUPLE_EAT_3)(p, o, o(39, s)) +# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_IF(p(40, s), BOOST_PP_WHILE_40, s BOOST_PP_TUPLE_EAT_3)(p, o, o(40, s)) +# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_IF(p(41, s), BOOST_PP_WHILE_41, s BOOST_PP_TUPLE_EAT_3)(p, o, o(41, s)) +# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_IF(p(42, s), BOOST_PP_WHILE_42, s BOOST_PP_TUPLE_EAT_3)(p, o, o(42, s)) +# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_IF(p(43, s), BOOST_PP_WHILE_43, s BOOST_PP_TUPLE_EAT_3)(p, o, o(43, s)) +# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_IF(p(44, s), BOOST_PP_WHILE_44, s BOOST_PP_TUPLE_EAT_3)(p, o, o(44, s)) +# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_IF(p(45, s), BOOST_PP_WHILE_45, s BOOST_PP_TUPLE_EAT_3)(p, o, o(45, s)) +# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_IF(p(46, s), BOOST_PP_WHILE_46, s BOOST_PP_TUPLE_EAT_3)(p, o, o(46, s)) +# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_IF(p(47, s), BOOST_PP_WHILE_47, s BOOST_PP_TUPLE_EAT_3)(p, o, o(47, s)) +# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_IF(p(48, s), BOOST_PP_WHILE_48, s BOOST_PP_TUPLE_EAT_3)(p, o, o(48, s)) +# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_IF(p(49, s), BOOST_PP_WHILE_49, s BOOST_PP_TUPLE_EAT_3)(p, o, o(49, s)) +# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_IF(p(50, s), BOOST_PP_WHILE_50, s BOOST_PP_TUPLE_EAT_3)(p, o, o(50, s)) +# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_IF(p(51, s), BOOST_PP_WHILE_51, s BOOST_PP_TUPLE_EAT_3)(p, o, o(51, s)) +# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_IF(p(52, s), BOOST_PP_WHILE_52, s BOOST_PP_TUPLE_EAT_3)(p, o, o(52, s)) +# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_IF(p(53, s), BOOST_PP_WHILE_53, s BOOST_PP_TUPLE_EAT_3)(p, o, o(53, s)) +# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_IF(p(54, s), BOOST_PP_WHILE_54, s BOOST_PP_TUPLE_EAT_3)(p, o, o(54, s)) +# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_IF(p(55, s), BOOST_PP_WHILE_55, s BOOST_PP_TUPLE_EAT_3)(p, o, o(55, s)) +# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_IF(p(56, s), BOOST_PP_WHILE_56, s BOOST_PP_TUPLE_EAT_3)(p, o, o(56, s)) +# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_IF(p(57, s), BOOST_PP_WHILE_57, s BOOST_PP_TUPLE_EAT_3)(p, o, o(57, s)) +# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_IF(p(58, s), BOOST_PP_WHILE_58, s BOOST_PP_TUPLE_EAT_3)(p, o, o(58, s)) +# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_IF(p(59, s), BOOST_PP_WHILE_59, s BOOST_PP_TUPLE_EAT_3)(p, o, o(59, s)) +# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_IF(p(60, s), BOOST_PP_WHILE_60, s BOOST_PP_TUPLE_EAT_3)(p, o, o(60, s)) +# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_IF(p(61, s), BOOST_PP_WHILE_61, s BOOST_PP_TUPLE_EAT_3)(p, o, o(61, s)) +# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_IF(p(62, s), BOOST_PP_WHILE_62, s BOOST_PP_TUPLE_EAT_3)(p, o, o(62, s)) +# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_IF(p(63, s), BOOST_PP_WHILE_63, s BOOST_PP_TUPLE_EAT_3)(p, o, o(63, s)) +# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_IF(p(64, s), BOOST_PP_WHILE_64, s BOOST_PP_TUPLE_EAT_3)(p, o, o(64, s)) +# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_IF(p(65, s), BOOST_PP_WHILE_65, s BOOST_PP_TUPLE_EAT_3)(p, o, o(65, s)) +# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_IF(p(66, s), BOOST_PP_WHILE_66, s BOOST_PP_TUPLE_EAT_3)(p, o, o(66, s)) +# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_IF(p(67, s), BOOST_PP_WHILE_67, s BOOST_PP_TUPLE_EAT_3)(p, o, o(67, s)) +# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_IF(p(68, s), BOOST_PP_WHILE_68, s BOOST_PP_TUPLE_EAT_3)(p, o, o(68, s)) +# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_IF(p(69, s), BOOST_PP_WHILE_69, s BOOST_PP_TUPLE_EAT_3)(p, o, o(69, s)) +# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_IF(p(70, s), BOOST_PP_WHILE_70, s BOOST_PP_TUPLE_EAT_3)(p, o, o(70, s)) +# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_IF(p(71, s), BOOST_PP_WHILE_71, s BOOST_PP_TUPLE_EAT_3)(p, o, o(71, s)) +# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_IF(p(72, s), BOOST_PP_WHILE_72, s BOOST_PP_TUPLE_EAT_3)(p, o, o(72, s)) +# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_IF(p(73, s), BOOST_PP_WHILE_73, s BOOST_PP_TUPLE_EAT_3)(p, o, o(73, s)) +# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_IF(p(74, s), BOOST_PP_WHILE_74, s BOOST_PP_TUPLE_EAT_3)(p, o, o(74, s)) +# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_IF(p(75, s), BOOST_PP_WHILE_75, s BOOST_PP_TUPLE_EAT_3)(p, o, o(75, s)) +# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_IF(p(76, s), BOOST_PP_WHILE_76, s BOOST_PP_TUPLE_EAT_3)(p, o, o(76, s)) +# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_IF(p(77, s), BOOST_PP_WHILE_77, s BOOST_PP_TUPLE_EAT_3)(p, o, o(77, s)) +# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_IF(p(78, s), BOOST_PP_WHILE_78, s BOOST_PP_TUPLE_EAT_3)(p, o, o(78, s)) +# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_IF(p(79, s), BOOST_PP_WHILE_79, s BOOST_PP_TUPLE_EAT_3)(p, o, o(79, s)) +# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_IF(p(80, s), BOOST_PP_WHILE_80, s BOOST_PP_TUPLE_EAT_3)(p, o, o(80, s)) +# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_IF(p(81, s), BOOST_PP_WHILE_81, s BOOST_PP_TUPLE_EAT_3)(p, o, o(81, s)) +# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_IF(p(82, s), BOOST_PP_WHILE_82, s BOOST_PP_TUPLE_EAT_3)(p, o, o(82, s)) +# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_IF(p(83, s), BOOST_PP_WHILE_83, s BOOST_PP_TUPLE_EAT_3)(p, o, o(83, s)) +# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_IF(p(84, s), BOOST_PP_WHILE_84, s BOOST_PP_TUPLE_EAT_3)(p, o, o(84, s)) +# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_IF(p(85, s), BOOST_PP_WHILE_85, s BOOST_PP_TUPLE_EAT_3)(p, o, o(85, s)) +# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_IF(p(86, s), BOOST_PP_WHILE_86, s BOOST_PP_TUPLE_EAT_3)(p, o, o(86, s)) +# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_IF(p(87, s), BOOST_PP_WHILE_87, s BOOST_PP_TUPLE_EAT_3)(p, o, o(87, s)) +# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_IF(p(88, s), BOOST_PP_WHILE_88, s BOOST_PP_TUPLE_EAT_3)(p, o, o(88, s)) +# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_IF(p(89, s), BOOST_PP_WHILE_89, s BOOST_PP_TUPLE_EAT_3)(p, o, o(89, s)) +# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_IF(p(90, s), BOOST_PP_WHILE_90, s BOOST_PP_TUPLE_EAT_3)(p, o, o(90, s)) +# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_IF(p(91, s), BOOST_PP_WHILE_91, s BOOST_PP_TUPLE_EAT_3)(p, o, o(91, s)) +# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_IF(p(92, s), BOOST_PP_WHILE_92, s BOOST_PP_TUPLE_EAT_3)(p, o, o(92, s)) +# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_IF(p(93, s), BOOST_PP_WHILE_93, s BOOST_PP_TUPLE_EAT_3)(p, o, o(93, s)) +# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_IF(p(94, s), BOOST_PP_WHILE_94, s BOOST_PP_TUPLE_EAT_3)(p, o, o(94, s)) +# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_IF(p(95, s), BOOST_PP_WHILE_95, s BOOST_PP_TUPLE_EAT_3)(p, o, o(95, s)) +# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_IF(p(96, s), BOOST_PP_WHILE_96, s BOOST_PP_TUPLE_EAT_3)(p, o, o(96, s)) +# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_IF(p(97, s), BOOST_PP_WHILE_97, s BOOST_PP_TUPLE_EAT_3)(p, o, o(97, s)) +# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_IF(p(98, s), BOOST_PP_WHILE_98, s BOOST_PP_TUPLE_EAT_3)(p, o, o(98, s)) +# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_IF(p(99, s), BOOST_PP_WHILE_99, s BOOST_PP_TUPLE_EAT_3)(p, o, o(99, s)) +# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_IF(p(100, s), BOOST_PP_WHILE_100, s BOOST_PP_TUPLE_EAT_3)(p, o, o(100, s)) +# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_IF(p(101, s), BOOST_PP_WHILE_101, s BOOST_PP_TUPLE_EAT_3)(p, o, o(101, s)) +# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_IF(p(102, s), BOOST_PP_WHILE_102, s BOOST_PP_TUPLE_EAT_3)(p, o, o(102, s)) +# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_IF(p(103, s), BOOST_PP_WHILE_103, s BOOST_PP_TUPLE_EAT_3)(p, o, o(103, s)) +# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_IF(p(104, s), BOOST_PP_WHILE_104, s BOOST_PP_TUPLE_EAT_3)(p, o, o(104, s)) +# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_IF(p(105, s), BOOST_PP_WHILE_105, s BOOST_PP_TUPLE_EAT_3)(p, o, o(105, s)) +# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_IF(p(106, s), BOOST_PP_WHILE_106, s BOOST_PP_TUPLE_EAT_3)(p, o, o(106, s)) +# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_IF(p(107, s), BOOST_PP_WHILE_107, s BOOST_PP_TUPLE_EAT_3)(p, o, o(107, s)) +# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_IF(p(108, s), BOOST_PP_WHILE_108, s BOOST_PP_TUPLE_EAT_3)(p, o, o(108, s)) +# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_IF(p(109, s), BOOST_PP_WHILE_109, s BOOST_PP_TUPLE_EAT_3)(p, o, o(109, s)) +# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_IF(p(110, s), BOOST_PP_WHILE_110, s BOOST_PP_TUPLE_EAT_3)(p, o, o(110, s)) +# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_IF(p(111, s), BOOST_PP_WHILE_111, s BOOST_PP_TUPLE_EAT_3)(p, o, o(111, s)) +# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_IF(p(112, s), BOOST_PP_WHILE_112, s BOOST_PP_TUPLE_EAT_3)(p, o, o(112, s)) +# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_IF(p(113, s), BOOST_PP_WHILE_113, s BOOST_PP_TUPLE_EAT_3)(p, o, o(113, s)) +# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_IF(p(114, s), BOOST_PP_WHILE_114, s BOOST_PP_TUPLE_EAT_3)(p, o, o(114, s)) +# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_IF(p(115, s), BOOST_PP_WHILE_115, s BOOST_PP_TUPLE_EAT_3)(p, o, o(115, s)) +# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_IF(p(116, s), BOOST_PP_WHILE_116, s BOOST_PP_TUPLE_EAT_3)(p, o, o(116, s)) +# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_IF(p(117, s), BOOST_PP_WHILE_117, s BOOST_PP_TUPLE_EAT_3)(p, o, o(117, s)) +# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_IF(p(118, s), BOOST_PP_WHILE_118, s BOOST_PP_TUPLE_EAT_3)(p, o, o(118, s)) +# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_IF(p(119, s), BOOST_PP_WHILE_119, s BOOST_PP_TUPLE_EAT_3)(p, o, o(119, s)) +# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_IF(p(120, s), BOOST_PP_WHILE_120, s BOOST_PP_TUPLE_EAT_3)(p, o, o(120, s)) +# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_IF(p(121, s), BOOST_PP_WHILE_121, s BOOST_PP_TUPLE_EAT_3)(p, o, o(121, s)) +# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_IF(p(122, s), BOOST_PP_WHILE_122, s BOOST_PP_TUPLE_EAT_3)(p, o, o(122, s)) +# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_IF(p(123, s), BOOST_PP_WHILE_123, s BOOST_PP_TUPLE_EAT_3)(p, o, o(123, s)) +# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_IF(p(124, s), BOOST_PP_WHILE_124, s BOOST_PP_TUPLE_EAT_3)(p, o, o(124, s)) +# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_IF(p(125, s), BOOST_PP_WHILE_125, s BOOST_PP_TUPLE_EAT_3)(p, o, o(125, s)) +# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_IF(p(126, s), BOOST_PP_WHILE_126, s BOOST_PP_TUPLE_EAT_3)(p, o, o(126, s)) +# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_IF(p(127, s), BOOST_PP_WHILE_127, s BOOST_PP_TUPLE_EAT_3)(p, o, o(127, s)) +# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_IF(p(128, s), BOOST_PP_WHILE_128, s BOOST_PP_TUPLE_EAT_3)(p, o, o(128, s)) +# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_IF(p(129, s), BOOST_PP_WHILE_129, s BOOST_PP_TUPLE_EAT_3)(p, o, o(129, s)) +# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_IF(p(130, s), BOOST_PP_WHILE_130, s BOOST_PP_TUPLE_EAT_3)(p, o, o(130, s)) +# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_IF(p(131, s), BOOST_PP_WHILE_131, s BOOST_PP_TUPLE_EAT_3)(p, o, o(131, s)) +# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_IF(p(132, s), BOOST_PP_WHILE_132, s BOOST_PP_TUPLE_EAT_3)(p, o, o(132, s)) +# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_IF(p(133, s), BOOST_PP_WHILE_133, s BOOST_PP_TUPLE_EAT_3)(p, o, o(133, s)) +# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_IF(p(134, s), BOOST_PP_WHILE_134, s BOOST_PP_TUPLE_EAT_3)(p, o, o(134, s)) +# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_IF(p(135, s), BOOST_PP_WHILE_135, s BOOST_PP_TUPLE_EAT_3)(p, o, o(135, s)) +# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_IF(p(136, s), BOOST_PP_WHILE_136, s BOOST_PP_TUPLE_EAT_3)(p, o, o(136, s)) +# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_IF(p(137, s), BOOST_PP_WHILE_137, s BOOST_PP_TUPLE_EAT_3)(p, o, o(137, s)) +# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_IF(p(138, s), BOOST_PP_WHILE_138, s BOOST_PP_TUPLE_EAT_3)(p, o, o(138, s)) +# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_IF(p(139, s), BOOST_PP_WHILE_139, s BOOST_PP_TUPLE_EAT_3)(p, o, o(139, s)) +# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_IF(p(140, s), BOOST_PP_WHILE_140, s BOOST_PP_TUPLE_EAT_3)(p, o, o(140, s)) +# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_IF(p(141, s), BOOST_PP_WHILE_141, s BOOST_PP_TUPLE_EAT_3)(p, o, o(141, s)) +# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_IF(p(142, s), BOOST_PP_WHILE_142, s BOOST_PP_TUPLE_EAT_3)(p, o, o(142, s)) +# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_IF(p(143, s), BOOST_PP_WHILE_143, s BOOST_PP_TUPLE_EAT_3)(p, o, o(143, s)) +# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_IF(p(144, s), BOOST_PP_WHILE_144, s BOOST_PP_TUPLE_EAT_3)(p, o, o(144, s)) +# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_IF(p(145, s), BOOST_PP_WHILE_145, s BOOST_PP_TUPLE_EAT_3)(p, o, o(145, s)) +# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_IF(p(146, s), BOOST_PP_WHILE_146, s BOOST_PP_TUPLE_EAT_3)(p, o, o(146, s)) +# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_IF(p(147, s), BOOST_PP_WHILE_147, s BOOST_PP_TUPLE_EAT_3)(p, o, o(147, s)) +# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_IF(p(148, s), BOOST_PP_WHILE_148, s BOOST_PP_TUPLE_EAT_3)(p, o, o(148, s)) +# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_IF(p(149, s), BOOST_PP_WHILE_149, s BOOST_PP_TUPLE_EAT_3)(p, o, o(149, s)) +# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_IF(p(150, s), BOOST_PP_WHILE_150, s BOOST_PP_TUPLE_EAT_3)(p, o, o(150, s)) +# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_IF(p(151, s), BOOST_PP_WHILE_151, s BOOST_PP_TUPLE_EAT_3)(p, o, o(151, s)) +# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_IF(p(152, s), BOOST_PP_WHILE_152, s BOOST_PP_TUPLE_EAT_3)(p, o, o(152, s)) +# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_IF(p(153, s), BOOST_PP_WHILE_153, s BOOST_PP_TUPLE_EAT_3)(p, o, o(153, s)) +# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_IF(p(154, s), BOOST_PP_WHILE_154, s BOOST_PP_TUPLE_EAT_3)(p, o, o(154, s)) +# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_IF(p(155, s), BOOST_PP_WHILE_155, s BOOST_PP_TUPLE_EAT_3)(p, o, o(155, s)) +# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_IF(p(156, s), BOOST_PP_WHILE_156, s BOOST_PP_TUPLE_EAT_3)(p, o, o(156, s)) +# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_IF(p(157, s), BOOST_PP_WHILE_157, s BOOST_PP_TUPLE_EAT_3)(p, o, o(157, s)) +# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_IF(p(158, s), BOOST_PP_WHILE_158, s BOOST_PP_TUPLE_EAT_3)(p, o, o(158, s)) +# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_IF(p(159, s), BOOST_PP_WHILE_159, s BOOST_PP_TUPLE_EAT_3)(p, o, o(159, s)) +# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_IF(p(160, s), BOOST_PP_WHILE_160, s BOOST_PP_TUPLE_EAT_3)(p, o, o(160, s)) +# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_IF(p(161, s), BOOST_PP_WHILE_161, s BOOST_PP_TUPLE_EAT_3)(p, o, o(161, s)) +# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_IF(p(162, s), BOOST_PP_WHILE_162, s BOOST_PP_TUPLE_EAT_3)(p, o, o(162, s)) +# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_IF(p(163, s), BOOST_PP_WHILE_163, s BOOST_PP_TUPLE_EAT_3)(p, o, o(163, s)) +# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_IF(p(164, s), BOOST_PP_WHILE_164, s BOOST_PP_TUPLE_EAT_3)(p, o, o(164, s)) +# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_IF(p(165, s), BOOST_PP_WHILE_165, s BOOST_PP_TUPLE_EAT_3)(p, o, o(165, s)) +# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_IF(p(166, s), BOOST_PP_WHILE_166, s BOOST_PP_TUPLE_EAT_3)(p, o, o(166, s)) +# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_IF(p(167, s), BOOST_PP_WHILE_167, s BOOST_PP_TUPLE_EAT_3)(p, o, o(167, s)) +# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_IF(p(168, s), BOOST_PP_WHILE_168, s BOOST_PP_TUPLE_EAT_3)(p, o, o(168, s)) +# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_IF(p(169, s), BOOST_PP_WHILE_169, s BOOST_PP_TUPLE_EAT_3)(p, o, o(169, s)) +# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_IF(p(170, s), BOOST_PP_WHILE_170, s BOOST_PP_TUPLE_EAT_3)(p, o, o(170, s)) +# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_IF(p(171, s), BOOST_PP_WHILE_171, s BOOST_PP_TUPLE_EAT_3)(p, o, o(171, s)) +# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_IF(p(172, s), BOOST_PP_WHILE_172, s BOOST_PP_TUPLE_EAT_3)(p, o, o(172, s)) +# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_IF(p(173, s), BOOST_PP_WHILE_173, s BOOST_PP_TUPLE_EAT_3)(p, o, o(173, s)) +# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_IF(p(174, s), BOOST_PP_WHILE_174, s BOOST_PP_TUPLE_EAT_3)(p, o, o(174, s)) +# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_IF(p(175, s), BOOST_PP_WHILE_175, s BOOST_PP_TUPLE_EAT_3)(p, o, o(175, s)) +# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_IF(p(176, s), BOOST_PP_WHILE_176, s BOOST_PP_TUPLE_EAT_3)(p, o, o(176, s)) +# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_IF(p(177, s), BOOST_PP_WHILE_177, s BOOST_PP_TUPLE_EAT_3)(p, o, o(177, s)) +# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_IF(p(178, s), BOOST_PP_WHILE_178, s BOOST_PP_TUPLE_EAT_3)(p, o, o(178, s)) +# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_IF(p(179, s), BOOST_PP_WHILE_179, s BOOST_PP_TUPLE_EAT_3)(p, o, o(179, s)) +# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_IF(p(180, s), BOOST_PP_WHILE_180, s BOOST_PP_TUPLE_EAT_3)(p, o, o(180, s)) +# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_IF(p(181, s), BOOST_PP_WHILE_181, s BOOST_PP_TUPLE_EAT_3)(p, o, o(181, s)) +# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_IF(p(182, s), BOOST_PP_WHILE_182, s BOOST_PP_TUPLE_EAT_3)(p, o, o(182, s)) +# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_IF(p(183, s), BOOST_PP_WHILE_183, s BOOST_PP_TUPLE_EAT_3)(p, o, o(183, s)) +# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_IF(p(184, s), BOOST_PP_WHILE_184, s BOOST_PP_TUPLE_EAT_3)(p, o, o(184, s)) +# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_IF(p(185, s), BOOST_PP_WHILE_185, s BOOST_PP_TUPLE_EAT_3)(p, o, o(185, s)) +# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_IF(p(186, s), BOOST_PP_WHILE_186, s BOOST_PP_TUPLE_EAT_3)(p, o, o(186, s)) +# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_IF(p(187, s), BOOST_PP_WHILE_187, s BOOST_PP_TUPLE_EAT_3)(p, o, o(187, s)) +# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_IF(p(188, s), BOOST_PP_WHILE_188, s BOOST_PP_TUPLE_EAT_3)(p, o, o(188, s)) +# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_IF(p(189, s), BOOST_PP_WHILE_189, s BOOST_PP_TUPLE_EAT_3)(p, o, o(189, s)) +# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_IF(p(190, s), BOOST_PP_WHILE_190, s BOOST_PP_TUPLE_EAT_3)(p, o, o(190, s)) +# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_IF(p(191, s), BOOST_PP_WHILE_191, s BOOST_PP_TUPLE_EAT_3)(p, o, o(191, s)) +# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_IF(p(192, s), BOOST_PP_WHILE_192, s BOOST_PP_TUPLE_EAT_3)(p, o, o(192, s)) +# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_IF(p(193, s), BOOST_PP_WHILE_193, s BOOST_PP_TUPLE_EAT_3)(p, o, o(193, s)) +# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_IF(p(194, s), BOOST_PP_WHILE_194, s BOOST_PP_TUPLE_EAT_3)(p, o, o(194, s)) +# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_IF(p(195, s), BOOST_PP_WHILE_195, s BOOST_PP_TUPLE_EAT_3)(p, o, o(195, s)) +# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_IF(p(196, s), BOOST_PP_WHILE_196, s BOOST_PP_TUPLE_EAT_3)(p, o, o(196, s)) +# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_IF(p(197, s), BOOST_PP_WHILE_197, s BOOST_PP_TUPLE_EAT_3)(p, o, o(197, s)) +# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_IF(p(198, s), BOOST_PP_WHILE_198, s BOOST_PP_TUPLE_EAT_3)(p, o, o(198, s)) +# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_IF(p(199, s), BOOST_PP_WHILE_199, s BOOST_PP_TUPLE_EAT_3)(p, o, o(199, s)) +# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_IF(p(200, s), BOOST_PP_WHILE_200, s BOOST_PP_TUPLE_EAT_3)(p, o, o(200, s)) +# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_IF(p(201, s), BOOST_PP_WHILE_201, s BOOST_PP_TUPLE_EAT_3)(p, o, o(201, s)) +# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_IF(p(202, s), BOOST_PP_WHILE_202, s BOOST_PP_TUPLE_EAT_3)(p, o, o(202, s)) +# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_IF(p(203, s), BOOST_PP_WHILE_203, s BOOST_PP_TUPLE_EAT_3)(p, o, o(203, s)) +# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_IF(p(204, s), BOOST_PP_WHILE_204, s BOOST_PP_TUPLE_EAT_3)(p, o, o(204, s)) +# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_IF(p(205, s), BOOST_PP_WHILE_205, s BOOST_PP_TUPLE_EAT_3)(p, o, o(205, s)) +# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_IF(p(206, s), BOOST_PP_WHILE_206, s BOOST_PP_TUPLE_EAT_3)(p, o, o(206, s)) +# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_IF(p(207, s), BOOST_PP_WHILE_207, s BOOST_PP_TUPLE_EAT_3)(p, o, o(207, s)) +# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_IF(p(208, s), BOOST_PP_WHILE_208, s BOOST_PP_TUPLE_EAT_3)(p, o, o(208, s)) +# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_IF(p(209, s), BOOST_PP_WHILE_209, s BOOST_PP_TUPLE_EAT_3)(p, o, o(209, s)) +# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_IF(p(210, s), BOOST_PP_WHILE_210, s BOOST_PP_TUPLE_EAT_3)(p, o, o(210, s)) +# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_IF(p(211, s), BOOST_PP_WHILE_211, s BOOST_PP_TUPLE_EAT_3)(p, o, o(211, s)) +# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_IF(p(212, s), BOOST_PP_WHILE_212, s BOOST_PP_TUPLE_EAT_3)(p, o, o(212, s)) +# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_IF(p(213, s), BOOST_PP_WHILE_213, s BOOST_PP_TUPLE_EAT_3)(p, o, o(213, s)) +# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_IF(p(214, s), BOOST_PP_WHILE_214, s BOOST_PP_TUPLE_EAT_3)(p, o, o(214, s)) +# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_IF(p(215, s), BOOST_PP_WHILE_215, s BOOST_PP_TUPLE_EAT_3)(p, o, o(215, s)) +# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_IF(p(216, s), BOOST_PP_WHILE_216, s BOOST_PP_TUPLE_EAT_3)(p, o, o(216, s)) +# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_IF(p(217, s), BOOST_PP_WHILE_217, s BOOST_PP_TUPLE_EAT_3)(p, o, o(217, s)) +# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_IF(p(218, s), BOOST_PP_WHILE_218, s BOOST_PP_TUPLE_EAT_3)(p, o, o(218, s)) +# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_IF(p(219, s), BOOST_PP_WHILE_219, s BOOST_PP_TUPLE_EAT_3)(p, o, o(219, s)) +# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_IF(p(220, s), BOOST_PP_WHILE_220, s BOOST_PP_TUPLE_EAT_3)(p, o, o(220, s)) +# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_IF(p(221, s), BOOST_PP_WHILE_221, s BOOST_PP_TUPLE_EAT_3)(p, o, o(221, s)) +# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_IF(p(222, s), BOOST_PP_WHILE_222, s BOOST_PP_TUPLE_EAT_3)(p, o, o(222, s)) +# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_IF(p(223, s), BOOST_PP_WHILE_223, s BOOST_PP_TUPLE_EAT_3)(p, o, o(223, s)) +# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_IF(p(224, s), BOOST_PP_WHILE_224, s BOOST_PP_TUPLE_EAT_3)(p, o, o(224, s)) +# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_IF(p(225, s), BOOST_PP_WHILE_225, s BOOST_PP_TUPLE_EAT_3)(p, o, o(225, s)) +# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_IF(p(226, s), BOOST_PP_WHILE_226, s BOOST_PP_TUPLE_EAT_3)(p, o, o(226, s)) +# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_IF(p(227, s), BOOST_PP_WHILE_227, s BOOST_PP_TUPLE_EAT_3)(p, o, o(227, s)) +# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_IF(p(228, s), BOOST_PP_WHILE_228, s BOOST_PP_TUPLE_EAT_3)(p, o, o(228, s)) +# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_IF(p(229, s), BOOST_PP_WHILE_229, s BOOST_PP_TUPLE_EAT_3)(p, o, o(229, s)) +# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_IF(p(230, s), BOOST_PP_WHILE_230, s BOOST_PP_TUPLE_EAT_3)(p, o, o(230, s)) +# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_IF(p(231, s), BOOST_PP_WHILE_231, s BOOST_PP_TUPLE_EAT_3)(p, o, o(231, s)) +# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_IF(p(232, s), BOOST_PP_WHILE_232, s BOOST_PP_TUPLE_EAT_3)(p, o, o(232, s)) +# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_IF(p(233, s), BOOST_PP_WHILE_233, s BOOST_PP_TUPLE_EAT_3)(p, o, o(233, s)) +# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_IF(p(234, s), BOOST_PP_WHILE_234, s BOOST_PP_TUPLE_EAT_3)(p, o, o(234, s)) +# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_IF(p(235, s), BOOST_PP_WHILE_235, s BOOST_PP_TUPLE_EAT_3)(p, o, o(235, s)) +# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_IF(p(236, s), BOOST_PP_WHILE_236, s BOOST_PP_TUPLE_EAT_3)(p, o, o(236, s)) +# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_IF(p(237, s), BOOST_PP_WHILE_237, s BOOST_PP_TUPLE_EAT_3)(p, o, o(237, s)) +# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_IF(p(238, s), BOOST_PP_WHILE_238, s BOOST_PP_TUPLE_EAT_3)(p, o, o(238, s)) +# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_IF(p(239, s), BOOST_PP_WHILE_239, s BOOST_PP_TUPLE_EAT_3)(p, o, o(239, s)) +# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_IF(p(240, s), BOOST_PP_WHILE_240, s BOOST_PP_TUPLE_EAT_3)(p, o, o(240, s)) +# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_IF(p(241, s), BOOST_PP_WHILE_241, s BOOST_PP_TUPLE_EAT_3)(p, o, o(241, s)) +# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_IF(p(242, s), BOOST_PP_WHILE_242, s BOOST_PP_TUPLE_EAT_3)(p, o, o(242, s)) +# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_IF(p(243, s), BOOST_PP_WHILE_243, s BOOST_PP_TUPLE_EAT_3)(p, o, o(243, s)) +# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_IF(p(244, s), BOOST_PP_WHILE_244, s BOOST_PP_TUPLE_EAT_3)(p, o, o(244, s)) +# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_IF(p(245, s), BOOST_PP_WHILE_245, s BOOST_PP_TUPLE_EAT_3)(p, o, o(245, s)) +# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_IF(p(246, s), BOOST_PP_WHILE_246, s BOOST_PP_TUPLE_EAT_3)(p, o, o(246, s)) +# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_IF(p(247, s), BOOST_PP_WHILE_247, s BOOST_PP_TUPLE_EAT_3)(p, o, o(247, s)) +# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_IF(p(248, s), BOOST_PP_WHILE_248, s BOOST_PP_TUPLE_EAT_3)(p, o, o(248, s)) +# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_IF(p(249, s), BOOST_PP_WHILE_249, s BOOST_PP_TUPLE_EAT_3)(p, o, o(249, s)) +# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_IF(p(250, s), BOOST_PP_WHILE_250, s BOOST_PP_TUPLE_EAT_3)(p, o, o(250, s)) +# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_IF(p(251, s), BOOST_PP_WHILE_251, s BOOST_PP_TUPLE_EAT_3)(p, o, o(251, s)) +# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_IF(p(252, s), BOOST_PP_WHILE_252, s BOOST_PP_TUPLE_EAT_3)(p, o, o(252, s)) +# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_IF(p(253, s), BOOST_PP_WHILE_253, s BOOST_PP_TUPLE_EAT_3)(p, o, o(253, s)) +# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_IF(p(254, s), BOOST_PP_WHILE_254, s BOOST_PP_TUPLE_EAT_3)(p, o, o(254, s)) +# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_IF(p(255, s), BOOST_PP_WHILE_255, s BOOST_PP_TUPLE_EAT_3)(p, o, o(255, s)) +# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_IF(p(256, s), BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, o(256, s)) +# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_IF(p(257, s), BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, o(257, s)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/detail/while.hpp b/plugin/wave/include/boost/preprocessor/control/detail/while.hpp new file mode 100644 index 0000000..7315e1d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/detail/while.hpp @@ -0,0 +1,536 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP +# define BOOST_PREPROCESSOR_CONTROL_DETAIL_WHILE_HPP +# +# include +# include +# include +# +# define BOOST_PP_WHILE_1(p, o, s) BOOST_PP_WHILE_1_C(BOOST_PP_BOOL(p(2, s)), p, o, s) +# define BOOST_PP_WHILE_2(p, o, s) BOOST_PP_WHILE_2_C(BOOST_PP_BOOL(p(3, s)), p, o, s) +# define BOOST_PP_WHILE_3(p, o, s) BOOST_PP_WHILE_3_C(BOOST_PP_BOOL(p(4, s)), p, o, s) +# define BOOST_PP_WHILE_4(p, o, s) BOOST_PP_WHILE_4_C(BOOST_PP_BOOL(p(5, s)), p, o, s) +# define BOOST_PP_WHILE_5(p, o, s) BOOST_PP_WHILE_5_C(BOOST_PP_BOOL(p(6, s)), p, o, s) +# define BOOST_PP_WHILE_6(p, o, s) BOOST_PP_WHILE_6_C(BOOST_PP_BOOL(p(7, s)), p, o, s) +# define BOOST_PP_WHILE_7(p, o, s) BOOST_PP_WHILE_7_C(BOOST_PP_BOOL(p(8, s)), p, o, s) +# define BOOST_PP_WHILE_8(p, o, s) BOOST_PP_WHILE_8_C(BOOST_PP_BOOL(p(9, s)), p, o, s) +# define BOOST_PP_WHILE_9(p, o, s) BOOST_PP_WHILE_9_C(BOOST_PP_BOOL(p(10, s)), p, o, s) +# define BOOST_PP_WHILE_10(p, o, s) BOOST_PP_WHILE_10_C(BOOST_PP_BOOL(p(11, s)), p, o, s) +# define BOOST_PP_WHILE_11(p, o, s) BOOST_PP_WHILE_11_C(BOOST_PP_BOOL(p(12, s)), p, o, s) +# define BOOST_PP_WHILE_12(p, o, s) BOOST_PP_WHILE_12_C(BOOST_PP_BOOL(p(13, s)), p, o, s) +# define BOOST_PP_WHILE_13(p, o, s) BOOST_PP_WHILE_13_C(BOOST_PP_BOOL(p(14, s)), p, o, s) +# define BOOST_PP_WHILE_14(p, o, s) BOOST_PP_WHILE_14_C(BOOST_PP_BOOL(p(15, s)), p, o, s) +# define BOOST_PP_WHILE_15(p, o, s) BOOST_PP_WHILE_15_C(BOOST_PP_BOOL(p(16, s)), p, o, s) +# define BOOST_PP_WHILE_16(p, o, s) BOOST_PP_WHILE_16_C(BOOST_PP_BOOL(p(17, s)), p, o, s) +# define BOOST_PP_WHILE_17(p, o, s) BOOST_PP_WHILE_17_C(BOOST_PP_BOOL(p(18, s)), p, o, s) +# define BOOST_PP_WHILE_18(p, o, s) BOOST_PP_WHILE_18_C(BOOST_PP_BOOL(p(19, s)), p, o, s) +# define BOOST_PP_WHILE_19(p, o, s) BOOST_PP_WHILE_19_C(BOOST_PP_BOOL(p(20, s)), p, o, s) +# define BOOST_PP_WHILE_20(p, o, s) BOOST_PP_WHILE_20_C(BOOST_PP_BOOL(p(21, s)), p, o, s) +# define BOOST_PP_WHILE_21(p, o, s) BOOST_PP_WHILE_21_C(BOOST_PP_BOOL(p(22, s)), p, o, s) +# define BOOST_PP_WHILE_22(p, o, s) BOOST_PP_WHILE_22_C(BOOST_PP_BOOL(p(23, s)), p, o, s) +# define BOOST_PP_WHILE_23(p, o, s) BOOST_PP_WHILE_23_C(BOOST_PP_BOOL(p(24, s)), p, o, s) +# define BOOST_PP_WHILE_24(p, o, s) BOOST_PP_WHILE_24_C(BOOST_PP_BOOL(p(25, s)), p, o, s) +# define BOOST_PP_WHILE_25(p, o, s) BOOST_PP_WHILE_25_C(BOOST_PP_BOOL(p(26, s)), p, o, s) +# define BOOST_PP_WHILE_26(p, o, s) BOOST_PP_WHILE_26_C(BOOST_PP_BOOL(p(27, s)), p, o, s) +# define BOOST_PP_WHILE_27(p, o, s) BOOST_PP_WHILE_27_C(BOOST_PP_BOOL(p(28, s)), p, o, s) +# define BOOST_PP_WHILE_28(p, o, s) BOOST_PP_WHILE_28_C(BOOST_PP_BOOL(p(29, s)), p, o, s) +# define BOOST_PP_WHILE_29(p, o, s) BOOST_PP_WHILE_29_C(BOOST_PP_BOOL(p(30, s)), p, o, s) +# define BOOST_PP_WHILE_30(p, o, s) BOOST_PP_WHILE_30_C(BOOST_PP_BOOL(p(31, s)), p, o, s) +# define BOOST_PP_WHILE_31(p, o, s) BOOST_PP_WHILE_31_C(BOOST_PP_BOOL(p(32, s)), p, o, s) +# define BOOST_PP_WHILE_32(p, o, s) BOOST_PP_WHILE_32_C(BOOST_PP_BOOL(p(33, s)), p, o, s) +# define BOOST_PP_WHILE_33(p, o, s) BOOST_PP_WHILE_33_C(BOOST_PP_BOOL(p(34, s)), p, o, s) +# define BOOST_PP_WHILE_34(p, o, s) BOOST_PP_WHILE_34_C(BOOST_PP_BOOL(p(35, s)), p, o, s) +# define BOOST_PP_WHILE_35(p, o, s) BOOST_PP_WHILE_35_C(BOOST_PP_BOOL(p(36, s)), p, o, s) +# define BOOST_PP_WHILE_36(p, o, s) BOOST_PP_WHILE_36_C(BOOST_PP_BOOL(p(37, s)), p, o, s) +# define BOOST_PP_WHILE_37(p, o, s) BOOST_PP_WHILE_37_C(BOOST_PP_BOOL(p(38, s)), p, o, s) +# define BOOST_PP_WHILE_38(p, o, s) BOOST_PP_WHILE_38_C(BOOST_PP_BOOL(p(39, s)), p, o, s) +# define BOOST_PP_WHILE_39(p, o, s) BOOST_PP_WHILE_39_C(BOOST_PP_BOOL(p(40, s)), p, o, s) +# define BOOST_PP_WHILE_40(p, o, s) BOOST_PP_WHILE_40_C(BOOST_PP_BOOL(p(41, s)), p, o, s) +# define BOOST_PP_WHILE_41(p, o, s) BOOST_PP_WHILE_41_C(BOOST_PP_BOOL(p(42, s)), p, o, s) +# define BOOST_PP_WHILE_42(p, o, s) BOOST_PP_WHILE_42_C(BOOST_PP_BOOL(p(43, s)), p, o, s) +# define BOOST_PP_WHILE_43(p, o, s) BOOST_PP_WHILE_43_C(BOOST_PP_BOOL(p(44, s)), p, o, s) +# define BOOST_PP_WHILE_44(p, o, s) BOOST_PP_WHILE_44_C(BOOST_PP_BOOL(p(45, s)), p, o, s) +# define BOOST_PP_WHILE_45(p, o, s) BOOST_PP_WHILE_45_C(BOOST_PP_BOOL(p(46, s)), p, o, s) +# define BOOST_PP_WHILE_46(p, o, s) BOOST_PP_WHILE_46_C(BOOST_PP_BOOL(p(47, s)), p, o, s) +# define BOOST_PP_WHILE_47(p, o, s) BOOST_PP_WHILE_47_C(BOOST_PP_BOOL(p(48, s)), p, o, s) +# define BOOST_PP_WHILE_48(p, o, s) BOOST_PP_WHILE_48_C(BOOST_PP_BOOL(p(49, s)), p, o, s) +# define BOOST_PP_WHILE_49(p, o, s) BOOST_PP_WHILE_49_C(BOOST_PP_BOOL(p(50, s)), p, o, s) +# define BOOST_PP_WHILE_50(p, o, s) BOOST_PP_WHILE_50_C(BOOST_PP_BOOL(p(51, s)), p, o, s) +# define BOOST_PP_WHILE_51(p, o, s) BOOST_PP_WHILE_51_C(BOOST_PP_BOOL(p(52, s)), p, o, s) +# define BOOST_PP_WHILE_52(p, o, s) BOOST_PP_WHILE_52_C(BOOST_PP_BOOL(p(53, s)), p, o, s) +# define BOOST_PP_WHILE_53(p, o, s) BOOST_PP_WHILE_53_C(BOOST_PP_BOOL(p(54, s)), p, o, s) +# define BOOST_PP_WHILE_54(p, o, s) BOOST_PP_WHILE_54_C(BOOST_PP_BOOL(p(55, s)), p, o, s) +# define BOOST_PP_WHILE_55(p, o, s) BOOST_PP_WHILE_55_C(BOOST_PP_BOOL(p(56, s)), p, o, s) +# define BOOST_PP_WHILE_56(p, o, s) BOOST_PP_WHILE_56_C(BOOST_PP_BOOL(p(57, s)), p, o, s) +# define BOOST_PP_WHILE_57(p, o, s) BOOST_PP_WHILE_57_C(BOOST_PP_BOOL(p(58, s)), p, o, s) +# define BOOST_PP_WHILE_58(p, o, s) BOOST_PP_WHILE_58_C(BOOST_PP_BOOL(p(59, s)), p, o, s) +# define BOOST_PP_WHILE_59(p, o, s) BOOST_PP_WHILE_59_C(BOOST_PP_BOOL(p(60, s)), p, o, s) +# define BOOST_PP_WHILE_60(p, o, s) BOOST_PP_WHILE_60_C(BOOST_PP_BOOL(p(61, s)), p, o, s) +# define BOOST_PP_WHILE_61(p, o, s) BOOST_PP_WHILE_61_C(BOOST_PP_BOOL(p(62, s)), p, o, s) +# define BOOST_PP_WHILE_62(p, o, s) BOOST_PP_WHILE_62_C(BOOST_PP_BOOL(p(63, s)), p, o, s) +# define BOOST_PP_WHILE_63(p, o, s) BOOST_PP_WHILE_63_C(BOOST_PP_BOOL(p(64, s)), p, o, s) +# define BOOST_PP_WHILE_64(p, o, s) BOOST_PP_WHILE_64_C(BOOST_PP_BOOL(p(65, s)), p, o, s) +# define BOOST_PP_WHILE_65(p, o, s) BOOST_PP_WHILE_65_C(BOOST_PP_BOOL(p(66, s)), p, o, s) +# define BOOST_PP_WHILE_66(p, o, s) BOOST_PP_WHILE_66_C(BOOST_PP_BOOL(p(67, s)), p, o, s) +# define BOOST_PP_WHILE_67(p, o, s) BOOST_PP_WHILE_67_C(BOOST_PP_BOOL(p(68, s)), p, o, s) +# define BOOST_PP_WHILE_68(p, o, s) BOOST_PP_WHILE_68_C(BOOST_PP_BOOL(p(69, s)), p, o, s) +# define BOOST_PP_WHILE_69(p, o, s) BOOST_PP_WHILE_69_C(BOOST_PP_BOOL(p(70, s)), p, o, s) +# define BOOST_PP_WHILE_70(p, o, s) BOOST_PP_WHILE_70_C(BOOST_PP_BOOL(p(71, s)), p, o, s) +# define BOOST_PP_WHILE_71(p, o, s) BOOST_PP_WHILE_71_C(BOOST_PP_BOOL(p(72, s)), p, o, s) +# define BOOST_PP_WHILE_72(p, o, s) BOOST_PP_WHILE_72_C(BOOST_PP_BOOL(p(73, s)), p, o, s) +# define BOOST_PP_WHILE_73(p, o, s) BOOST_PP_WHILE_73_C(BOOST_PP_BOOL(p(74, s)), p, o, s) +# define BOOST_PP_WHILE_74(p, o, s) BOOST_PP_WHILE_74_C(BOOST_PP_BOOL(p(75, s)), p, o, s) +# define BOOST_PP_WHILE_75(p, o, s) BOOST_PP_WHILE_75_C(BOOST_PP_BOOL(p(76, s)), p, o, s) +# define BOOST_PP_WHILE_76(p, o, s) BOOST_PP_WHILE_76_C(BOOST_PP_BOOL(p(77, s)), p, o, s) +# define BOOST_PP_WHILE_77(p, o, s) BOOST_PP_WHILE_77_C(BOOST_PP_BOOL(p(78, s)), p, o, s) +# define BOOST_PP_WHILE_78(p, o, s) BOOST_PP_WHILE_78_C(BOOST_PP_BOOL(p(79, s)), p, o, s) +# define BOOST_PP_WHILE_79(p, o, s) BOOST_PP_WHILE_79_C(BOOST_PP_BOOL(p(80, s)), p, o, s) +# define BOOST_PP_WHILE_80(p, o, s) BOOST_PP_WHILE_80_C(BOOST_PP_BOOL(p(81, s)), p, o, s) +# define BOOST_PP_WHILE_81(p, o, s) BOOST_PP_WHILE_81_C(BOOST_PP_BOOL(p(82, s)), p, o, s) +# define BOOST_PP_WHILE_82(p, o, s) BOOST_PP_WHILE_82_C(BOOST_PP_BOOL(p(83, s)), p, o, s) +# define BOOST_PP_WHILE_83(p, o, s) BOOST_PP_WHILE_83_C(BOOST_PP_BOOL(p(84, s)), p, o, s) +# define BOOST_PP_WHILE_84(p, o, s) BOOST_PP_WHILE_84_C(BOOST_PP_BOOL(p(85, s)), p, o, s) +# define BOOST_PP_WHILE_85(p, o, s) BOOST_PP_WHILE_85_C(BOOST_PP_BOOL(p(86, s)), p, o, s) +# define BOOST_PP_WHILE_86(p, o, s) BOOST_PP_WHILE_86_C(BOOST_PP_BOOL(p(87, s)), p, o, s) +# define BOOST_PP_WHILE_87(p, o, s) BOOST_PP_WHILE_87_C(BOOST_PP_BOOL(p(88, s)), p, o, s) +# define BOOST_PP_WHILE_88(p, o, s) BOOST_PP_WHILE_88_C(BOOST_PP_BOOL(p(89, s)), p, o, s) +# define BOOST_PP_WHILE_89(p, o, s) BOOST_PP_WHILE_89_C(BOOST_PP_BOOL(p(90, s)), p, o, s) +# define BOOST_PP_WHILE_90(p, o, s) BOOST_PP_WHILE_90_C(BOOST_PP_BOOL(p(91, s)), p, o, s) +# define BOOST_PP_WHILE_91(p, o, s) BOOST_PP_WHILE_91_C(BOOST_PP_BOOL(p(92, s)), p, o, s) +# define BOOST_PP_WHILE_92(p, o, s) BOOST_PP_WHILE_92_C(BOOST_PP_BOOL(p(93, s)), p, o, s) +# define BOOST_PP_WHILE_93(p, o, s) BOOST_PP_WHILE_93_C(BOOST_PP_BOOL(p(94, s)), p, o, s) +# define BOOST_PP_WHILE_94(p, o, s) BOOST_PP_WHILE_94_C(BOOST_PP_BOOL(p(95, s)), p, o, s) +# define BOOST_PP_WHILE_95(p, o, s) BOOST_PP_WHILE_95_C(BOOST_PP_BOOL(p(96, s)), p, o, s) +# define BOOST_PP_WHILE_96(p, o, s) BOOST_PP_WHILE_96_C(BOOST_PP_BOOL(p(97, s)), p, o, s) +# define BOOST_PP_WHILE_97(p, o, s) BOOST_PP_WHILE_97_C(BOOST_PP_BOOL(p(98, s)), p, o, s) +# define BOOST_PP_WHILE_98(p, o, s) BOOST_PP_WHILE_98_C(BOOST_PP_BOOL(p(99, s)), p, o, s) +# define BOOST_PP_WHILE_99(p, o, s) BOOST_PP_WHILE_99_C(BOOST_PP_BOOL(p(100, s)), p, o, s) +# define BOOST_PP_WHILE_100(p, o, s) BOOST_PP_WHILE_100_C(BOOST_PP_BOOL(p(101, s)), p, o, s) +# define BOOST_PP_WHILE_101(p, o, s) BOOST_PP_WHILE_101_C(BOOST_PP_BOOL(p(102, s)), p, o, s) +# define BOOST_PP_WHILE_102(p, o, s) BOOST_PP_WHILE_102_C(BOOST_PP_BOOL(p(103, s)), p, o, s) +# define BOOST_PP_WHILE_103(p, o, s) BOOST_PP_WHILE_103_C(BOOST_PP_BOOL(p(104, s)), p, o, s) +# define BOOST_PP_WHILE_104(p, o, s) BOOST_PP_WHILE_104_C(BOOST_PP_BOOL(p(105, s)), p, o, s) +# define BOOST_PP_WHILE_105(p, o, s) BOOST_PP_WHILE_105_C(BOOST_PP_BOOL(p(106, s)), p, o, s) +# define BOOST_PP_WHILE_106(p, o, s) BOOST_PP_WHILE_106_C(BOOST_PP_BOOL(p(107, s)), p, o, s) +# define BOOST_PP_WHILE_107(p, o, s) BOOST_PP_WHILE_107_C(BOOST_PP_BOOL(p(108, s)), p, o, s) +# define BOOST_PP_WHILE_108(p, o, s) BOOST_PP_WHILE_108_C(BOOST_PP_BOOL(p(109, s)), p, o, s) +# define BOOST_PP_WHILE_109(p, o, s) BOOST_PP_WHILE_109_C(BOOST_PP_BOOL(p(110, s)), p, o, s) +# define BOOST_PP_WHILE_110(p, o, s) BOOST_PP_WHILE_110_C(BOOST_PP_BOOL(p(111, s)), p, o, s) +# define BOOST_PP_WHILE_111(p, o, s) BOOST_PP_WHILE_111_C(BOOST_PP_BOOL(p(112, s)), p, o, s) +# define BOOST_PP_WHILE_112(p, o, s) BOOST_PP_WHILE_112_C(BOOST_PP_BOOL(p(113, s)), p, o, s) +# define BOOST_PP_WHILE_113(p, o, s) BOOST_PP_WHILE_113_C(BOOST_PP_BOOL(p(114, s)), p, o, s) +# define BOOST_PP_WHILE_114(p, o, s) BOOST_PP_WHILE_114_C(BOOST_PP_BOOL(p(115, s)), p, o, s) +# define BOOST_PP_WHILE_115(p, o, s) BOOST_PP_WHILE_115_C(BOOST_PP_BOOL(p(116, s)), p, o, s) +# define BOOST_PP_WHILE_116(p, o, s) BOOST_PP_WHILE_116_C(BOOST_PP_BOOL(p(117, s)), p, o, s) +# define BOOST_PP_WHILE_117(p, o, s) BOOST_PP_WHILE_117_C(BOOST_PP_BOOL(p(118, s)), p, o, s) +# define BOOST_PP_WHILE_118(p, o, s) BOOST_PP_WHILE_118_C(BOOST_PP_BOOL(p(119, s)), p, o, s) +# define BOOST_PP_WHILE_119(p, o, s) BOOST_PP_WHILE_119_C(BOOST_PP_BOOL(p(120, s)), p, o, s) +# define BOOST_PP_WHILE_120(p, o, s) BOOST_PP_WHILE_120_C(BOOST_PP_BOOL(p(121, s)), p, o, s) +# define BOOST_PP_WHILE_121(p, o, s) BOOST_PP_WHILE_121_C(BOOST_PP_BOOL(p(122, s)), p, o, s) +# define BOOST_PP_WHILE_122(p, o, s) BOOST_PP_WHILE_122_C(BOOST_PP_BOOL(p(123, s)), p, o, s) +# define BOOST_PP_WHILE_123(p, o, s) BOOST_PP_WHILE_123_C(BOOST_PP_BOOL(p(124, s)), p, o, s) +# define BOOST_PP_WHILE_124(p, o, s) BOOST_PP_WHILE_124_C(BOOST_PP_BOOL(p(125, s)), p, o, s) +# define BOOST_PP_WHILE_125(p, o, s) BOOST_PP_WHILE_125_C(BOOST_PP_BOOL(p(126, s)), p, o, s) +# define BOOST_PP_WHILE_126(p, o, s) BOOST_PP_WHILE_126_C(BOOST_PP_BOOL(p(127, s)), p, o, s) +# define BOOST_PP_WHILE_127(p, o, s) BOOST_PP_WHILE_127_C(BOOST_PP_BOOL(p(128, s)), p, o, s) +# define BOOST_PP_WHILE_128(p, o, s) BOOST_PP_WHILE_128_C(BOOST_PP_BOOL(p(129, s)), p, o, s) +# define BOOST_PP_WHILE_129(p, o, s) BOOST_PP_WHILE_129_C(BOOST_PP_BOOL(p(130, s)), p, o, s) +# define BOOST_PP_WHILE_130(p, o, s) BOOST_PP_WHILE_130_C(BOOST_PP_BOOL(p(131, s)), p, o, s) +# define BOOST_PP_WHILE_131(p, o, s) BOOST_PP_WHILE_131_C(BOOST_PP_BOOL(p(132, s)), p, o, s) +# define BOOST_PP_WHILE_132(p, o, s) BOOST_PP_WHILE_132_C(BOOST_PP_BOOL(p(133, s)), p, o, s) +# define BOOST_PP_WHILE_133(p, o, s) BOOST_PP_WHILE_133_C(BOOST_PP_BOOL(p(134, s)), p, o, s) +# define BOOST_PP_WHILE_134(p, o, s) BOOST_PP_WHILE_134_C(BOOST_PP_BOOL(p(135, s)), p, o, s) +# define BOOST_PP_WHILE_135(p, o, s) BOOST_PP_WHILE_135_C(BOOST_PP_BOOL(p(136, s)), p, o, s) +# define BOOST_PP_WHILE_136(p, o, s) BOOST_PP_WHILE_136_C(BOOST_PP_BOOL(p(137, s)), p, o, s) +# define BOOST_PP_WHILE_137(p, o, s) BOOST_PP_WHILE_137_C(BOOST_PP_BOOL(p(138, s)), p, o, s) +# define BOOST_PP_WHILE_138(p, o, s) BOOST_PP_WHILE_138_C(BOOST_PP_BOOL(p(139, s)), p, o, s) +# define BOOST_PP_WHILE_139(p, o, s) BOOST_PP_WHILE_139_C(BOOST_PP_BOOL(p(140, s)), p, o, s) +# define BOOST_PP_WHILE_140(p, o, s) BOOST_PP_WHILE_140_C(BOOST_PP_BOOL(p(141, s)), p, o, s) +# define BOOST_PP_WHILE_141(p, o, s) BOOST_PP_WHILE_141_C(BOOST_PP_BOOL(p(142, s)), p, o, s) +# define BOOST_PP_WHILE_142(p, o, s) BOOST_PP_WHILE_142_C(BOOST_PP_BOOL(p(143, s)), p, o, s) +# define BOOST_PP_WHILE_143(p, o, s) BOOST_PP_WHILE_143_C(BOOST_PP_BOOL(p(144, s)), p, o, s) +# define BOOST_PP_WHILE_144(p, o, s) BOOST_PP_WHILE_144_C(BOOST_PP_BOOL(p(145, s)), p, o, s) +# define BOOST_PP_WHILE_145(p, o, s) BOOST_PP_WHILE_145_C(BOOST_PP_BOOL(p(146, s)), p, o, s) +# define BOOST_PP_WHILE_146(p, o, s) BOOST_PP_WHILE_146_C(BOOST_PP_BOOL(p(147, s)), p, o, s) +# define BOOST_PP_WHILE_147(p, o, s) BOOST_PP_WHILE_147_C(BOOST_PP_BOOL(p(148, s)), p, o, s) +# define BOOST_PP_WHILE_148(p, o, s) BOOST_PP_WHILE_148_C(BOOST_PP_BOOL(p(149, s)), p, o, s) +# define BOOST_PP_WHILE_149(p, o, s) BOOST_PP_WHILE_149_C(BOOST_PP_BOOL(p(150, s)), p, o, s) +# define BOOST_PP_WHILE_150(p, o, s) BOOST_PP_WHILE_150_C(BOOST_PP_BOOL(p(151, s)), p, o, s) +# define BOOST_PP_WHILE_151(p, o, s) BOOST_PP_WHILE_151_C(BOOST_PP_BOOL(p(152, s)), p, o, s) +# define BOOST_PP_WHILE_152(p, o, s) BOOST_PP_WHILE_152_C(BOOST_PP_BOOL(p(153, s)), p, o, s) +# define BOOST_PP_WHILE_153(p, o, s) BOOST_PP_WHILE_153_C(BOOST_PP_BOOL(p(154, s)), p, o, s) +# define BOOST_PP_WHILE_154(p, o, s) BOOST_PP_WHILE_154_C(BOOST_PP_BOOL(p(155, s)), p, o, s) +# define BOOST_PP_WHILE_155(p, o, s) BOOST_PP_WHILE_155_C(BOOST_PP_BOOL(p(156, s)), p, o, s) +# define BOOST_PP_WHILE_156(p, o, s) BOOST_PP_WHILE_156_C(BOOST_PP_BOOL(p(157, s)), p, o, s) +# define BOOST_PP_WHILE_157(p, o, s) BOOST_PP_WHILE_157_C(BOOST_PP_BOOL(p(158, s)), p, o, s) +# define BOOST_PP_WHILE_158(p, o, s) BOOST_PP_WHILE_158_C(BOOST_PP_BOOL(p(159, s)), p, o, s) +# define BOOST_PP_WHILE_159(p, o, s) BOOST_PP_WHILE_159_C(BOOST_PP_BOOL(p(160, s)), p, o, s) +# define BOOST_PP_WHILE_160(p, o, s) BOOST_PP_WHILE_160_C(BOOST_PP_BOOL(p(161, s)), p, o, s) +# define BOOST_PP_WHILE_161(p, o, s) BOOST_PP_WHILE_161_C(BOOST_PP_BOOL(p(162, s)), p, o, s) +# define BOOST_PP_WHILE_162(p, o, s) BOOST_PP_WHILE_162_C(BOOST_PP_BOOL(p(163, s)), p, o, s) +# define BOOST_PP_WHILE_163(p, o, s) BOOST_PP_WHILE_163_C(BOOST_PP_BOOL(p(164, s)), p, o, s) +# define BOOST_PP_WHILE_164(p, o, s) BOOST_PP_WHILE_164_C(BOOST_PP_BOOL(p(165, s)), p, o, s) +# define BOOST_PP_WHILE_165(p, o, s) BOOST_PP_WHILE_165_C(BOOST_PP_BOOL(p(166, s)), p, o, s) +# define BOOST_PP_WHILE_166(p, o, s) BOOST_PP_WHILE_166_C(BOOST_PP_BOOL(p(167, s)), p, o, s) +# define BOOST_PP_WHILE_167(p, o, s) BOOST_PP_WHILE_167_C(BOOST_PP_BOOL(p(168, s)), p, o, s) +# define BOOST_PP_WHILE_168(p, o, s) BOOST_PP_WHILE_168_C(BOOST_PP_BOOL(p(169, s)), p, o, s) +# define BOOST_PP_WHILE_169(p, o, s) BOOST_PP_WHILE_169_C(BOOST_PP_BOOL(p(170, s)), p, o, s) +# define BOOST_PP_WHILE_170(p, o, s) BOOST_PP_WHILE_170_C(BOOST_PP_BOOL(p(171, s)), p, o, s) +# define BOOST_PP_WHILE_171(p, o, s) BOOST_PP_WHILE_171_C(BOOST_PP_BOOL(p(172, s)), p, o, s) +# define BOOST_PP_WHILE_172(p, o, s) BOOST_PP_WHILE_172_C(BOOST_PP_BOOL(p(173, s)), p, o, s) +# define BOOST_PP_WHILE_173(p, o, s) BOOST_PP_WHILE_173_C(BOOST_PP_BOOL(p(174, s)), p, o, s) +# define BOOST_PP_WHILE_174(p, o, s) BOOST_PP_WHILE_174_C(BOOST_PP_BOOL(p(175, s)), p, o, s) +# define BOOST_PP_WHILE_175(p, o, s) BOOST_PP_WHILE_175_C(BOOST_PP_BOOL(p(176, s)), p, o, s) +# define BOOST_PP_WHILE_176(p, o, s) BOOST_PP_WHILE_176_C(BOOST_PP_BOOL(p(177, s)), p, o, s) +# define BOOST_PP_WHILE_177(p, o, s) BOOST_PP_WHILE_177_C(BOOST_PP_BOOL(p(178, s)), p, o, s) +# define BOOST_PP_WHILE_178(p, o, s) BOOST_PP_WHILE_178_C(BOOST_PP_BOOL(p(179, s)), p, o, s) +# define BOOST_PP_WHILE_179(p, o, s) BOOST_PP_WHILE_179_C(BOOST_PP_BOOL(p(180, s)), p, o, s) +# define BOOST_PP_WHILE_180(p, o, s) BOOST_PP_WHILE_180_C(BOOST_PP_BOOL(p(181, s)), p, o, s) +# define BOOST_PP_WHILE_181(p, o, s) BOOST_PP_WHILE_181_C(BOOST_PP_BOOL(p(182, s)), p, o, s) +# define BOOST_PP_WHILE_182(p, o, s) BOOST_PP_WHILE_182_C(BOOST_PP_BOOL(p(183, s)), p, o, s) +# define BOOST_PP_WHILE_183(p, o, s) BOOST_PP_WHILE_183_C(BOOST_PP_BOOL(p(184, s)), p, o, s) +# define BOOST_PP_WHILE_184(p, o, s) BOOST_PP_WHILE_184_C(BOOST_PP_BOOL(p(185, s)), p, o, s) +# define BOOST_PP_WHILE_185(p, o, s) BOOST_PP_WHILE_185_C(BOOST_PP_BOOL(p(186, s)), p, o, s) +# define BOOST_PP_WHILE_186(p, o, s) BOOST_PP_WHILE_186_C(BOOST_PP_BOOL(p(187, s)), p, o, s) +# define BOOST_PP_WHILE_187(p, o, s) BOOST_PP_WHILE_187_C(BOOST_PP_BOOL(p(188, s)), p, o, s) +# define BOOST_PP_WHILE_188(p, o, s) BOOST_PP_WHILE_188_C(BOOST_PP_BOOL(p(189, s)), p, o, s) +# define BOOST_PP_WHILE_189(p, o, s) BOOST_PP_WHILE_189_C(BOOST_PP_BOOL(p(190, s)), p, o, s) +# define BOOST_PP_WHILE_190(p, o, s) BOOST_PP_WHILE_190_C(BOOST_PP_BOOL(p(191, s)), p, o, s) +# define BOOST_PP_WHILE_191(p, o, s) BOOST_PP_WHILE_191_C(BOOST_PP_BOOL(p(192, s)), p, o, s) +# define BOOST_PP_WHILE_192(p, o, s) BOOST_PP_WHILE_192_C(BOOST_PP_BOOL(p(193, s)), p, o, s) +# define BOOST_PP_WHILE_193(p, o, s) BOOST_PP_WHILE_193_C(BOOST_PP_BOOL(p(194, s)), p, o, s) +# define BOOST_PP_WHILE_194(p, o, s) BOOST_PP_WHILE_194_C(BOOST_PP_BOOL(p(195, s)), p, o, s) +# define BOOST_PP_WHILE_195(p, o, s) BOOST_PP_WHILE_195_C(BOOST_PP_BOOL(p(196, s)), p, o, s) +# define BOOST_PP_WHILE_196(p, o, s) BOOST_PP_WHILE_196_C(BOOST_PP_BOOL(p(197, s)), p, o, s) +# define BOOST_PP_WHILE_197(p, o, s) BOOST_PP_WHILE_197_C(BOOST_PP_BOOL(p(198, s)), p, o, s) +# define BOOST_PP_WHILE_198(p, o, s) BOOST_PP_WHILE_198_C(BOOST_PP_BOOL(p(199, s)), p, o, s) +# define BOOST_PP_WHILE_199(p, o, s) BOOST_PP_WHILE_199_C(BOOST_PP_BOOL(p(200, s)), p, o, s) +# define BOOST_PP_WHILE_200(p, o, s) BOOST_PP_WHILE_200_C(BOOST_PP_BOOL(p(201, s)), p, o, s) +# define BOOST_PP_WHILE_201(p, o, s) BOOST_PP_WHILE_201_C(BOOST_PP_BOOL(p(202, s)), p, o, s) +# define BOOST_PP_WHILE_202(p, o, s) BOOST_PP_WHILE_202_C(BOOST_PP_BOOL(p(203, s)), p, o, s) +# define BOOST_PP_WHILE_203(p, o, s) BOOST_PP_WHILE_203_C(BOOST_PP_BOOL(p(204, s)), p, o, s) +# define BOOST_PP_WHILE_204(p, o, s) BOOST_PP_WHILE_204_C(BOOST_PP_BOOL(p(205, s)), p, o, s) +# define BOOST_PP_WHILE_205(p, o, s) BOOST_PP_WHILE_205_C(BOOST_PP_BOOL(p(206, s)), p, o, s) +# define BOOST_PP_WHILE_206(p, o, s) BOOST_PP_WHILE_206_C(BOOST_PP_BOOL(p(207, s)), p, o, s) +# define BOOST_PP_WHILE_207(p, o, s) BOOST_PP_WHILE_207_C(BOOST_PP_BOOL(p(208, s)), p, o, s) +# define BOOST_PP_WHILE_208(p, o, s) BOOST_PP_WHILE_208_C(BOOST_PP_BOOL(p(209, s)), p, o, s) +# define BOOST_PP_WHILE_209(p, o, s) BOOST_PP_WHILE_209_C(BOOST_PP_BOOL(p(210, s)), p, o, s) +# define BOOST_PP_WHILE_210(p, o, s) BOOST_PP_WHILE_210_C(BOOST_PP_BOOL(p(211, s)), p, o, s) +# define BOOST_PP_WHILE_211(p, o, s) BOOST_PP_WHILE_211_C(BOOST_PP_BOOL(p(212, s)), p, o, s) +# define BOOST_PP_WHILE_212(p, o, s) BOOST_PP_WHILE_212_C(BOOST_PP_BOOL(p(213, s)), p, o, s) +# define BOOST_PP_WHILE_213(p, o, s) BOOST_PP_WHILE_213_C(BOOST_PP_BOOL(p(214, s)), p, o, s) +# define BOOST_PP_WHILE_214(p, o, s) BOOST_PP_WHILE_214_C(BOOST_PP_BOOL(p(215, s)), p, o, s) +# define BOOST_PP_WHILE_215(p, o, s) BOOST_PP_WHILE_215_C(BOOST_PP_BOOL(p(216, s)), p, o, s) +# define BOOST_PP_WHILE_216(p, o, s) BOOST_PP_WHILE_216_C(BOOST_PP_BOOL(p(217, s)), p, o, s) +# define BOOST_PP_WHILE_217(p, o, s) BOOST_PP_WHILE_217_C(BOOST_PP_BOOL(p(218, s)), p, o, s) +# define BOOST_PP_WHILE_218(p, o, s) BOOST_PP_WHILE_218_C(BOOST_PP_BOOL(p(219, s)), p, o, s) +# define BOOST_PP_WHILE_219(p, o, s) BOOST_PP_WHILE_219_C(BOOST_PP_BOOL(p(220, s)), p, o, s) +# define BOOST_PP_WHILE_220(p, o, s) BOOST_PP_WHILE_220_C(BOOST_PP_BOOL(p(221, s)), p, o, s) +# define BOOST_PP_WHILE_221(p, o, s) BOOST_PP_WHILE_221_C(BOOST_PP_BOOL(p(222, s)), p, o, s) +# define BOOST_PP_WHILE_222(p, o, s) BOOST_PP_WHILE_222_C(BOOST_PP_BOOL(p(223, s)), p, o, s) +# define BOOST_PP_WHILE_223(p, o, s) BOOST_PP_WHILE_223_C(BOOST_PP_BOOL(p(224, s)), p, o, s) +# define BOOST_PP_WHILE_224(p, o, s) BOOST_PP_WHILE_224_C(BOOST_PP_BOOL(p(225, s)), p, o, s) +# define BOOST_PP_WHILE_225(p, o, s) BOOST_PP_WHILE_225_C(BOOST_PP_BOOL(p(226, s)), p, o, s) +# define BOOST_PP_WHILE_226(p, o, s) BOOST_PP_WHILE_226_C(BOOST_PP_BOOL(p(227, s)), p, o, s) +# define BOOST_PP_WHILE_227(p, o, s) BOOST_PP_WHILE_227_C(BOOST_PP_BOOL(p(228, s)), p, o, s) +# define BOOST_PP_WHILE_228(p, o, s) BOOST_PP_WHILE_228_C(BOOST_PP_BOOL(p(229, s)), p, o, s) +# define BOOST_PP_WHILE_229(p, o, s) BOOST_PP_WHILE_229_C(BOOST_PP_BOOL(p(230, s)), p, o, s) +# define BOOST_PP_WHILE_230(p, o, s) BOOST_PP_WHILE_230_C(BOOST_PP_BOOL(p(231, s)), p, o, s) +# define BOOST_PP_WHILE_231(p, o, s) BOOST_PP_WHILE_231_C(BOOST_PP_BOOL(p(232, s)), p, o, s) +# define BOOST_PP_WHILE_232(p, o, s) BOOST_PP_WHILE_232_C(BOOST_PP_BOOL(p(233, s)), p, o, s) +# define BOOST_PP_WHILE_233(p, o, s) BOOST_PP_WHILE_233_C(BOOST_PP_BOOL(p(234, s)), p, o, s) +# define BOOST_PP_WHILE_234(p, o, s) BOOST_PP_WHILE_234_C(BOOST_PP_BOOL(p(235, s)), p, o, s) +# define BOOST_PP_WHILE_235(p, o, s) BOOST_PP_WHILE_235_C(BOOST_PP_BOOL(p(236, s)), p, o, s) +# define BOOST_PP_WHILE_236(p, o, s) BOOST_PP_WHILE_236_C(BOOST_PP_BOOL(p(237, s)), p, o, s) +# define BOOST_PP_WHILE_237(p, o, s) BOOST_PP_WHILE_237_C(BOOST_PP_BOOL(p(238, s)), p, o, s) +# define BOOST_PP_WHILE_238(p, o, s) BOOST_PP_WHILE_238_C(BOOST_PP_BOOL(p(239, s)), p, o, s) +# define BOOST_PP_WHILE_239(p, o, s) BOOST_PP_WHILE_239_C(BOOST_PP_BOOL(p(240, s)), p, o, s) +# define BOOST_PP_WHILE_240(p, o, s) BOOST_PP_WHILE_240_C(BOOST_PP_BOOL(p(241, s)), p, o, s) +# define BOOST_PP_WHILE_241(p, o, s) BOOST_PP_WHILE_241_C(BOOST_PP_BOOL(p(242, s)), p, o, s) +# define BOOST_PP_WHILE_242(p, o, s) BOOST_PP_WHILE_242_C(BOOST_PP_BOOL(p(243, s)), p, o, s) +# define BOOST_PP_WHILE_243(p, o, s) BOOST_PP_WHILE_243_C(BOOST_PP_BOOL(p(244, s)), p, o, s) +# define BOOST_PP_WHILE_244(p, o, s) BOOST_PP_WHILE_244_C(BOOST_PP_BOOL(p(245, s)), p, o, s) +# define BOOST_PP_WHILE_245(p, o, s) BOOST_PP_WHILE_245_C(BOOST_PP_BOOL(p(246, s)), p, o, s) +# define BOOST_PP_WHILE_246(p, o, s) BOOST_PP_WHILE_246_C(BOOST_PP_BOOL(p(247, s)), p, o, s) +# define BOOST_PP_WHILE_247(p, o, s) BOOST_PP_WHILE_247_C(BOOST_PP_BOOL(p(248, s)), p, o, s) +# define BOOST_PP_WHILE_248(p, o, s) BOOST_PP_WHILE_248_C(BOOST_PP_BOOL(p(249, s)), p, o, s) +# define BOOST_PP_WHILE_249(p, o, s) BOOST_PP_WHILE_249_C(BOOST_PP_BOOL(p(250, s)), p, o, s) +# define BOOST_PP_WHILE_250(p, o, s) BOOST_PP_WHILE_250_C(BOOST_PP_BOOL(p(251, s)), p, o, s) +# define BOOST_PP_WHILE_251(p, o, s) BOOST_PP_WHILE_251_C(BOOST_PP_BOOL(p(252, s)), p, o, s) +# define BOOST_PP_WHILE_252(p, o, s) BOOST_PP_WHILE_252_C(BOOST_PP_BOOL(p(253, s)), p, o, s) +# define BOOST_PP_WHILE_253(p, o, s) BOOST_PP_WHILE_253_C(BOOST_PP_BOOL(p(254, s)), p, o, s) +# define BOOST_PP_WHILE_254(p, o, s) BOOST_PP_WHILE_254_C(BOOST_PP_BOOL(p(255, s)), p, o, s) +# define BOOST_PP_WHILE_255(p, o, s) BOOST_PP_WHILE_255_C(BOOST_PP_BOOL(p(256, s)), p, o, s) +# define BOOST_PP_WHILE_256(p, o, s) BOOST_PP_WHILE_256_C(BOOST_PP_BOOL(p(257, s)), p, o, s) +# +# define BOOST_PP_WHILE_1_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_2, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(2, s)) +# define BOOST_PP_WHILE_2_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_3, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(3, s)) +# define BOOST_PP_WHILE_3_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_4, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(4, s)) +# define BOOST_PP_WHILE_4_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_5, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(5, s)) +# define BOOST_PP_WHILE_5_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_6, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(6, s)) +# define BOOST_PP_WHILE_6_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_7, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(7, s)) +# define BOOST_PP_WHILE_7_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_8, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(8, s)) +# define BOOST_PP_WHILE_8_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_9, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(9, s)) +# define BOOST_PP_WHILE_9_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_10, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(10, s)) +# define BOOST_PP_WHILE_10_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_11, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(11, s)) +# define BOOST_PP_WHILE_11_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_12, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(12, s)) +# define BOOST_PP_WHILE_12_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_13, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(13, s)) +# define BOOST_PP_WHILE_13_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_14, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(14, s)) +# define BOOST_PP_WHILE_14_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_15, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(15, s)) +# define BOOST_PP_WHILE_15_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_16, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(16, s)) +# define BOOST_PP_WHILE_16_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_17, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(17, s)) +# define BOOST_PP_WHILE_17_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_18, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(18, s)) +# define BOOST_PP_WHILE_18_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_19, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(19, s)) +# define BOOST_PP_WHILE_19_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_20, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(20, s)) +# define BOOST_PP_WHILE_20_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_21, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(21, s)) +# define BOOST_PP_WHILE_21_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_22, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(22, s)) +# define BOOST_PP_WHILE_22_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_23, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(23, s)) +# define BOOST_PP_WHILE_23_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_24, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(24, s)) +# define BOOST_PP_WHILE_24_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_25, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(25, s)) +# define BOOST_PP_WHILE_25_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_26, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(26, s)) +# define BOOST_PP_WHILE_26_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_27, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(27, s)) +# define BOOST_PP_WHILE_27_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_28, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(28, s)) +# define BOOST_PP_WHILE_28_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_29, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(29, s)) +# define BOOST_PP_WHILE_29_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_30, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(30, s)) +# define BOOST_PP_WHILE_30_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_31, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(31, s)) +# define BOOST_PP_WHILE_31_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_32, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(32, s)) +# define BOOST_PP_WHILE_32_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_33, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(33, s)) +# define BOOST_PP_WHILE_33_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_34, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(34, s)) +# define BOOST_PP_WHILE_34_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_35, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(35, s)) +# define BOOST_PP_WHILE_35_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_36, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(36, s)) +# define BOOST_PP_WHILE_36_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_37, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(37, s)) +# define BOOST_PP_WHILE_37_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_38, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(38, s)) +# define BOOST_PP_WHILE_38_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_39, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(39, s)) +# define BOOST_PP_WHILE_39_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_40, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(40, s)) +# define BOOST_PP_WHILE_40_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_41, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(41, s)) +# define BOOST_PP_WHILE_41_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_42, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(42, s)) +# define BOOST_PP_WHILE_42_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_43, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(43, s)) +# define BOOST_PP_WHILE_43_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_44, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(44, s)) +# define BOOST_PP_WHILE_44_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_45, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(45, s)) +# define BOOST_PP_WHILE_45_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_46, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(46, s)) +# define BOOST_PP_WHILE_46_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_47, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(47, s)) +# define BOOST_PP_WHILE_47_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_48, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(48, s)) +# define BOOST_PP_WHILE_48_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_49, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(49, s)) +# define BOOST_PP_WHILE_49_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_50, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(50, s)) +# define BOOST_PP_WHILE_50_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_51, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(51, s)) +# define BOOST_PP_WHILE_51_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_52, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(52, s)) +# define BOOST_PP_WHILE_52_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_53, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(53, s)) +# define BOOST_PP_WHILE_53_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_54, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(54, s)) +# define BOOST_PP_WHILE_54_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_55, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(55, s)) +# define BOOST_PP_WHILE_55_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_56, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(56, s)) +# define BOOST_PP_WHILE_56_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_57, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(57, s)) +# define BOOST_PP_WHILE_57_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_58, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(58, s)) +# define BOOST_PP_WHILE_58_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_59, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(59, s)) +# define BOOST_PP_WHILE_59_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_60, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(60, s)) +# define BOOST_PP_WHILE_60_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_61, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(61, s)) +# define BOOST_PP_WHILE_61_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_62, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(62, s)) +# define BOOST_PP_WHILE_62_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_63, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(63, s)) +# define BOOST_PP_WHILE_63_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_64, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(64, s)) +# define BOOST_PP_WHILE_64_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_65, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(65, s)) +# define BOOST_PP_WHILE_65_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_66, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(66, s)) +# define BOOST_PP_WHILE_66_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_67, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(67, s)) +# define BOOST_PP_WHILE_67_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_68, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(68, s)) +# define BOOST_PP_WHILE_68_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_69, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(69, s)) +# define BOOST_PP_WHILE_69_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_70, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(70, s)) +# define BOOST_PP_WHILE_70_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_71, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(71, s)) +# define BOOST_PP_WHILE_71_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_72, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(72, s)) +# define BOOST_PP_WHILE_72_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_73, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(73, s)) +# define BOOST_PP_WHILE_73_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_74, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(74, s)) +# define BOOST_PP_WHILE_74_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_75, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(75, s)) +# define BOOST_PP_WHILE_75_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_76, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(76, s)) +# define BOOST_PP_WHILE_76_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_77, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(77, s)) +# define BOOST_PP_WHILE_77_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_78, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(78, s)) +# define BOOST_PP_WHILE_78_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_79, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(79, s)) +# define BOOST_PP_WHILE_79_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_80, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(80, s)) +# define BOOST_PP_WHILE_80_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_81, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(81, s)) +# define BOOST_PP_WHILE_81_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_82, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(82, s)) +# define BOOST_PP_WHILE_82_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_83, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(83, s)) +# define BOOST_PP_WHILE_83_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_84, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(84, s)) +# define BOOST_PP_WHILE_84_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_85, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(85, s)) +# define BOOST_PP_WHILE_85_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_86, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(86, s)) +# define BOOST_PP_WHILE_86_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_87, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(87, s)) +# define BOOST_PP_WHILE_87_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_88, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(88, s)) +# define BOOST_PP_WHILE_88_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_89, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(89, s)) +# define BOOST_PP_WHILE_89_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_90, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(90, s)) +# define BOOST_PP_WHILE_90_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_91, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(91, s)) +# define BOOST_PP_WHILE_91_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_92, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(92, s)) +# define BOOST_PP_WHILE_92_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_93, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(93, s)) +# define BOOST_PP_WHILE_93_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_94, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(94, s)) +# define BOOST_PP_WHILE_94_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_95, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(95, s)) +# define BOOST_PP_WHILE_95_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_96, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(96, s)) +# define BOOST_PP_WHILE_96_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_97, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(97, s)) +# define BOOST_PP_WHILE_97_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_98, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(98, s)) +# define BOOST_PP_WHILE_98_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_99, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(99, s)) +# define BOOST_PP_WHILE_99_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_100, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(100, s)) +# define BOOST_PP_WHILE_100_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_101, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(101, s)) +# define BOOST_PP_WHILE_101_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_102, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(102, s)) +# define BOOST_PP_WHILE_102_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_103, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(103, s)) +# define BOOST_PP_WHILE_103_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_104, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(104, s)) +# define BOOST_PP_WHILE_104_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_105, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(105, s)) +# define BOOST_PP_WHILE_105_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_106, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(106, s)) +# define BOOST_PP_WHILE_106_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_107, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(107, s)) +# define BOOST_PP_WHILE_107_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_108, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(108, s)) +# define BOOST_PP_WHILE_108_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_109, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(109, s)) +# define BOOST_PP_WHILE_109_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_110, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(110, s)) +# define BOOST_PP_WHILE_110_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_111, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(111, s)) +# define BOOST_PP_WHILE_111_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_112, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(112, s)) +# define BOOST_PP_WHILE_112_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_113, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(113, s)) +# define BOOST_PP_WHILE_113_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_114, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(114, s)) +# define BOOST_PP_WHILE_114_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_115, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(115, s)) +# define BOOST_PP_WHILE_115_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_116, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(116, s)) +# define BOOST_PP_WHILE_116_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_117, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(117, s)) +# define BOOST_PP_WHILE_117_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_118, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(118, s)) +# define BOOST_PP_WHILE_118_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_119, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(119, s)) +# define BOOST_PP_WHILE_119_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_120, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(120, s)) +# define BOOST_PP_WHILE_120_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_121, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(121, s)) +# define BOOST_PP_WHILE_121_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_122, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(122, s)) +# define BOOST_PP_WHILE_122_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_123, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(123, s)) +# define BOOST_PP_WHILE_123_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_124, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(124, s)) +# define BOOST_PP_WHILE_124_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_125, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(125, s)) +# define BOOST_PP_WHILE_125_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_126, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(126, s)) +# define BOOST_PP_WHILE_126_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_127, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(127, s)) +# define BOOST_PP_WHILE_127_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_128, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(128, s)) +# define BOOST_PP_WHILE_128_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_129, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(129, s)) +# define BOOST_PP_WHILE_129_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_130, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(130, s)) +# define BOOST_PP_WHILE_130_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_131, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(131, s)) +# define BOOST_PP_WHILE_131_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_132, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(132, s)) +# define BOOST_PP_WHILE_132_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_133, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(133, s)) +# define BOOST_PP_WHILE_133_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_134, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(134, s)) +# define BOOST_PP_WHILE_134_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_135, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(135, s)) +# define BOOST_PP_WHILE_135_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_136, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(136, s)) +# define BOOST_PP_WHILE_136_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_137, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(137, s)) +# define BOOST_PP_WHILE_137_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_138, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(138, s)) +# define BOOST_PP_WHILE_138_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_139, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(139, s)) +# define BOOST_PP_WHILE_139_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_140, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(140, s)) +# define BOOST_PP_WHILE_140_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_141, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(141, s)) +# define BOOST_PP_WHILE_141_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_142, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(142, s)) +# define BOOST_PP_WHILE_142_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_143, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(143, s)) +# define BOOST_PP_WHILE_143_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_144, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(144, s)) +# define BOOST_PP_WHILE_144_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_145, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(145, s)) +# define BOOST_PP_WHILE_145_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_146, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(146, s)) +# define BOOST_PP_WHILE_146_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_147, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(147, s)) +# define BOOST_PP_WHILE_147_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_148, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(148, s)) +# define BOOST_PP_WHILE_148_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_149, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(149, s)) +# define BOOST_PP_WHILE_149_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_150, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(150, s)) +# define BOOST_PP_WHILE_150_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_151, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(151, s)) +# define BOOST_PP_WHILE_151_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_152, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(152, s)) +# define BOOST_PP_WHILE_152_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_153, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(153, s)) +# define BOOST_PP_WHILE_153_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_154, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(154, s)) +# define BOOST_PP_WHILE_154_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_155, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(155, s)) +# define BOOST_PP_WHILE_155_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_156, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(156, s)) +# define BOOST_PP_WHILE_156_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_157, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(157, s)) +# define BOOST_PP_WHILE_157_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_158, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(158, s)) +# define BOOST_PP_WHILE_158_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_159, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(159, s)) +# define BOOST_PP_WHILE_159_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_160, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(160, s)) +# define BOOST_PP_WHILE_160_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_161, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(161, s)) +# define BOOST_PP_WHILE_161_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_162, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(162, s)) +# define BOOST_PP_WHILE_162_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_163, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(163, s)) +# define BOOST_PP_WHILE_163_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_164, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(164, s)) +# define BOOST_PP_WHILE_164_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_165, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(165, s)) +# define BOOST_PP_WHILE_165_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_166, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(166, s)) +# define BOOST_PP_WHILE_166_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_167, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(167, s)) +# define BOOST_PP_WHILE_167_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_168, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(168, s)) +# define BOOST_PP_WHILE_168_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_169, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(169, s)) +# define BOOST_PP_WHILE_169_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_170, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(170, s)) +# define BOOST_PP_WHILE_170_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_171, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(171, s)) +# define BOOST_PP_WHILE_171_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_172, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(172, s)) +# define BOOST_PP_WHILE_172_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_173, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(173, s)) +# define BOOST_PP_WHILE_173_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_174, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(174, s)) +# define BOOST_PP_WHILE_174_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_175, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(175, s)) +# define BOOST_PP_WHILE_175_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_176, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(176, s)) +# define BOOST_PP_WHILE_176_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_177, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(177, s)) +# define BOOST_PP_WHILE_177_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_178, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(178, s)) +# define BOOST_PP_WHILE_178_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_179, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(179, s)) +# define BOOST_PP_WHILE_179_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_180, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(180, s)) +# define BOOST_PP_WHILE_180_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_181, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(181, s)) +# define BOOST_PP_WHILE_181_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_182, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(182, s)) +# define BOOST_PP_WHILE_182_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_183, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(183, s)) +# define BOOST_PP_WHILE_183_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_184, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(184, s)) +# define BOOST_PP_WHILE_184_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_185, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(185, s)) +# define BOOST_PP_WHILE_185_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_186, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(186, s)) +# define BOOST_PP_WHILE_186_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_187, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(187, s)) +# define BOOST_PP_WHILE_187_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_188, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(188, s)) +# define BOOST_PP_WHILE_188_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_189, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(189, s)) +# define BOOST_PP_WHILE_189_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_190, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(190, s)) +# define BOOST_PP_WHILE_190_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_191, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(191, s)) +# define BOOST_PP_WHILE_191_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_192, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(192, s)) +# define BOOST_PP_WHILE_192_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_193, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(193, s)) +# define BOOST_PP_WHILE_193_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_194, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(194, s)) +# define BOOST_PP_WHILE_194_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_195, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(195, s)) +# define BOOST_PP_WHILE_195_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_196, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(196, s)) +# define BOOST_PP_WHILE_196_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_197, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(197, s)) +# define BOOST_PP_WHILE_197_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_198, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(198, s)) +# define BOOST_PP_WHILE_198_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_199, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(199, s)) +# define BOOST_PP_WHILE_199_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_200, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(200, s)) +# define BOOST_PP_WHILE_200_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_201, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(201, s)) +# define BOOST_PP_WHILE_201_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_202, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(202, s)) +# define BOOST_PP_WHILE_202_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_203, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(203, s)) +# define BOOST_PP_WHILE_203_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_204, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(204, s)) +# define BOOST_PP_WHILE_204_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_205, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(205, s)) +# define BOOST_PP_WHILE_205_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_206, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(206, s)) +# define BOOST_PP_WHILE_206_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_207, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(207, s)) +# define BOOST_PP_WHILE_207_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_208, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(208, s)) +# define BOOST_PP_WHILE_208_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_209, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(209, s)) +# define BOOST_PP_WHILE_209_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_210, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(210, s)) +# define BOOST_PP_WHILE_210_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_211, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(211, s)) +# define BOOST_PP_WHILE_211_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_212, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(212, s)) +# define BOOST_PP_WHILE_212_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_213, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(213, s)) +# define BOOST_PP_WHILE_213_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_214, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(214, s)) +# define BOOST_PP_WHILE_214_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_215, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(215, s)) +# define BOOST_PP_WHILE_215_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_216, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(216, s)) +# define BOOST_PP_WHILE_216_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_217, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(217, s)) +# define BOOST_PP_WHILE_217_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_218, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(218, s)) +# define BOOST_PP_WHILE_218_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_219, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(219, s)) +# define BOOST_PP_WHILE_219_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_220, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(220, s)) +# define BOOST_PP_WHILE_220_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_221, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(221, s)) +# define BOOST_PP_WHILE_221_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_222, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(222, s)) +# define BOOST_PP_WHILE_222_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_223, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(223, s)) +# define BOOST_PP_WHILE_223_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_224, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(224, s)) +# define BOOST_PP_WHILE_224_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_225, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(225, s)) +# define BOOST_PP_WHILE_225_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_226, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(226, s)) +# define BOOST_PP_WHILE_226_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_227, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(227, s)) +# define BOOST_PP_WHILE_227_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_228, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(228, s)) +# define BOOST_PP_WHILE_228_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_229, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(229, s)) +# define BOOST_PP_WHILE_229_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_230, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(230, s)) +# define BOOST_PP_WHILE_230_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_231, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(231, s)) +# define BOOST_PP_WHILE_231_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_232, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(232, s)) +# define BOOST_PP_WHILE_232_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_233, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(233, s)) +# define BOOST_PP_WHILE_233_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_234, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(234, s)) +# define BOOST_PP_WHILE_234_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_235, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(235, s)) +# define BOOST_PP_WHILE_235_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_236, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(236, s)) +# define BOOST_PP_WHILE_236_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_237, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(237, s)) +# define BOOST_PP_WHILE_237_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_238, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(238, s)) +# define BOOST_PP_WHILE_238_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_239, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(239, s)) +# define BOOST_PP_WHILE_239_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_240, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(240, s)) +# define BOOST_PP_WHILE_240_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_241, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(241, s)) +# define BOOST_PP_WHILE_241_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_242, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(242, s)) +# define BOOST_PP_WHILE_242_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_243, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(243, s)) +# define BOOST_PP_WHILE_243_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_244, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(244, s)) +# define BOOST_PP_WHILE_244_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_245, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(245, s)) +# define BOOST_PP_WHILE_245_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_246, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(246, s)) +# define BOOST_PP_WHILE_246_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_247, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(247, s)) +# define BOOST_PP_WHILE_247_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_248, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(248, s)) +# define BOOST_PP_WHILE_248_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_249, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(249, s)) +# define BOOST_PP_WHILE_249_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_250, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(250, s)) +# define BOOST_PP_WHILE_250_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_251, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(251, s)) +# define BOOST_PP_WHILE_251_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_252, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(252, s)) +# define BOOST_PP_WHILE_252_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_253, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(253, s)) +# define BOOST_PP_WHILE_253_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_254, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(254, s)) +# define BOOST_PP_WHILE_254_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_255, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(255, s)) +# define BOOST_PP_WHILE_255_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_256, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(256, s)) +# define BOOST_PP_WHILE_256_C(c, p, o, s) BOOST_PP_IIF(c, BOOST_PP_WHILE_257, s BOOST_PP_TUPLE_EAT_3)(p, o, BOOST_PP_IIF(c, o, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_2)(257, s)) +# +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/expr_if.hpp b/plugin/wave/include/boost/preprocessor/control/expr_if.hpp new file mode 100644 index 0000000..0e1ab51 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/expr_if.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_EXPR_IF_HPP +# define BOOST_PREPROCESSOR_CONTROL_EXPR_IF_HPP +# +# include +# include +# include +# +# /* BOOST_PP_EXPR_IF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_EXPR_IF(cond, expr) BOOST_PP_EXPR_IIF(BOOST_PP_BOOL(cond), expr) +# else +# define BOOST_PP_EXPR_IF(cond, expr) BOOST_PP_EXPR_IF_I(cond, expr) +# define BOOST_PP_EXPR_IF_I(cond, expr) BOOST_PP_EXPR_IIF(BOOST_PP_BOOL(cond), expr) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/expr_iif.hpp b/plugin/wave/include/boost/preprocessor/control/expr_iif.hpp new file mode 100644 index 0000000..58f45a4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/expr_iif.hpp @@ -0,0 +1,31 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_EXPR_IIF_HPP +# define BOOST_PREPROCESSOR_CONTROL_EXPR_IIF_HPP +# +# include +# +# /* BOOST_PP_EXPR_IIF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_EXPR_IIF(bit, expr) BOOST_PP_EXPR_IIF_I(bit, expr) +# else +# define BOOST_PP_EXPR_IIF(bit, expr) BOOST_PP_EXPR_IIF_OO((bit, expr)) +# define BOOST_PP_EXPR_IIF_OO(par) BOOST_PP_EXPR_IIF_I ## par +# endif +# +# define BOOST_PP_EXPR_IIF_I(bit, expr) BOOST_PP_EXPR_IIF_ ## bit(expr) +# +# define BOOST_PP_EXPR_IIF_0(expr) +# define BOOST_PP_EXPR_IIF_1(expr) expr +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/if.hpp b/plugin/wave/include/boost/preprocessor/control/if.hpp new file mode 100644 index 0000000..52cfc3d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/if.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_IF_HPP +# define BOOST_PREPROCESSOR_CONTROL_IF_HPP +# +# include +# include +# include +# +# /* BOOST_PP_IF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_IF(cond, t, f) BOOST_PP_IIF(BOOST_PP_BOOL(cond), t, f) +# else +# define BOOST_PP_IF(cond, t, f) BOOST_PP_IF_I(cond, t, f) +# define BOOST_PP_IF_I(cond, t, f) BOOST_PP_IIF(BOOST_PP_BOOL(cond), t, f) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/iif.hpp b/plugin/wave/include/boost/preprocessor/control/iif.hpp new file mode 100644 index 0000000..fd07817 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/iif.hpp @@ -0,0 +1,34 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_IIF_HPP +# define BOOST_PREPROCESSOR_CONTROL_IIF_HPP +# +# include +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_I(bit, t, f) +# else +# define BOOST_PP_IIF(bit, t, f) BOOST_PP_IIF_OO((bit, t, f)) +# define BOOST_PP_IIF_OO(par) BOOST_PP_IIF_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_IIF_I(bit, t, f) BOOST_PP_IIF_ ## bit(t, f) +# else +# define BOOST_PP_IIF_I(bit, t, f) BOOST_PP_IIF_II(BOOST_PP_IIF_ ## bit(t, f)) +# define BOOST_PP_IIF_II(id) id +# endif +# +# define BOOST_PP_IIF_0(t, f) f +# define BOOST_PP_IIF_1(t, f) t +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/control/while.hpp b/plugin/wave/include/boost/preprocessor/control/while.hpp new file mode 100644 index 0000000..e8a65ff --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/control/while.hpp @@ -0,0 +1,312 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_CONTROL_WHILE_HPP +# define BOOST_PREPROCESSOR_CONTROL_WHILE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_WHILE */ +# +# if 0 +# define BOOST_PP_WHILE(pred, op, state) +# endif +# +# define BOOST_PP_WHILE BOOST_PP_CAT(BOOST_PP_WHILE_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_WHILE_P(n) BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_WHILE_CHECK_, BOOST_PP_WHILE_ ## n(BOOST_PP_WHILE_F, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_CHECK_, BOOST_PP_LIST_FOLD_LEFT_ ## n(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_CHECK_, BOOST_PP_LIST_FOLD_RIGHT_ ## n(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL)))) +# else +# define BOOST_PP_WHILE_P(n) BOOST_PP_BITAND(BOOST_PP_CAT(BOOST_PP_WHILE_CHECK_, BOOST_PP_WHILE_ ## n(BOOST_PP_WHILE_F, BOOST_PP_NIL, BOOST_PP_NIL)), BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_CHECK_, BOOST_PP_LIST_FOLD_LEFT_ ## n(BOOST_PP_NIL, BOOST_PP_NIL, BOOST_PP_NIL))) +# endif +# +# define BOOST_PP_WHILE_F(d, _) 0 +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# include +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# include +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# include +# else +# include +# endif +# +# define BOOST_PP_WHILE_257(p, o, s) BOOST_PP_ERROR(0x0001) +# +# define BOOST_PP_WHILE_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_1(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_2(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_3(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_4(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_5(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_6(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_7(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_8(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_9(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_10(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_11(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_12(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_13(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_14(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_15(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_16(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_17(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_18(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_19(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_20(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_21(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_22(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_23(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_24(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_25(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_26(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_27(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_28(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_29(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_30(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_31(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_32(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_33(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_34(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_35(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_36(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_37(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_38(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_39(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_40(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_41(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_42(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_43(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_44(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_45(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_46(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_47(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_48(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_49(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_50(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_51(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_52(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_53(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_54(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_55(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_56(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_57(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_58(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_59(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_60(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_61(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_62(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_63(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_64(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_65(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_66(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_67(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_68(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_69(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_70(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_71(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_72(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_73(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_74(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_75(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_76(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_77(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_78(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_79(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_80(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_81(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_82(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_83(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_84(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_85(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_86(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_87(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_88(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_89(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_90(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_91(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_92(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_93(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_94(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_95(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_96(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_97(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_98(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_99(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_100(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_101(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_102(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_103(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_104(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_105(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_106(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_107(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_108(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_109(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_110(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_111(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_112(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_113(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_114(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_115(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_116(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_117(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_118(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_119(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_120(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_121(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_122(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_123(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_124(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_125(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_126(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_127(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_128(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_129(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_130(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_131(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_132(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_133(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_134(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_135(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_136(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_137(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_138(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_139(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_140(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_141(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_142(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_143(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_144(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_145(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_146(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_147(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_148(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_149(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_150(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_151(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_152(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_153(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_154(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_155(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_156(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_157(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_158(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_159(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_160(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_161(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_162(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_163(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_164(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_165(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_166(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_167(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_168(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_169(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_170(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_171(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_172(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_173(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_174(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_175(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_176(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_177(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_178(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_179(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_180(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_181(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_182(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_183(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_184(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_185(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_186(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_187(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_188(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_189(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_190(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_191(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_192(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_193(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_194(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_195(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_196(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_197(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_198(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_199(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_200(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_201(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_202(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_203(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_204(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_205(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_206(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_207(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_208(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_209(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_210(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_211(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_212(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_213(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_214(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_215(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_216(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_217(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_218(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_219(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_220(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_221(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_222(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_223(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_224(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_225(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_226(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_227(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_228(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_229(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_230(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_231(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_232(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_233(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_234(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_235(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_236(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_237(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_238(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_239(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_240(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_241(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_242(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_243(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_244(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_245(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_246(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_247(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_248(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_249(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_250(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_251(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_252(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_253(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_254(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_255(p, o, s) 0 +# define BOOST_PP_WHILE_CHECK_BOOST_PP_WHILE_256(p, o, s) 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/debug.hpp b/plugin/wave/include/boost/preprocessor/debug.hpp new file mode 100644 index 0000000..d09983e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/debug.hpp @@ -0,0 +1,18 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DEBUG_HPP +# define BOOST_PREPROCESSOR_DEBUG_HPP +# +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/debug/assert.hpp b/plugin/wave/include/boost/preprocessor/debug/assert.hpp new file mode 100644 index 0000000..3380c70 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/debug/assert.hpp @@ -0,0 +1,44 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DEBUG_ASSERT_HPP +# define BOOST_PREPROCESSOR_DEBUG_ASSERT_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ASSERT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ASSERT BOOST_PP_ASSERT_D +# else +# define BOOST_PP_ASSERT(cond) BOOST_PP_ASSERT_D(cond) +# endif +# +# define BOOST_PP_ASSERT_D(cond) BOOST_PP_IIF(BOOST_PP_NOT(cond), BOOST_PP_ASSERT_ERROR, BOOST_PP_TUPLE_EAT_1)(...) +# define BOOST_PP_ASSERT_ERROR(x, y, z) +# +# /* BOOST_PP_ASSERT_MSG */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ASSERT_MSG BOOST_PP_ASSERT_MSG_D +# else +# define BOOST_PP_ASSERT_MSG(cond, msg) BOOST_PP_ASSERT_MSG_D(cond, msg) +# endif +# +# define BOOST_PP_ASSERT_MSG_D(cond, msg) BOOST_PP_EXPR_IIF(BOOST_PP_NOT(cond), msg) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/debug/error.hpp b/plugin/wave/include/boost/preprocessor/debug/error.hpp new file mode 100644 index 0000000..c8ae5e7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/debug/error.hpp @@ -0,0 +1,33 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DEBUG_ERROR_HPP +# define BOOST_PREPROCESSOR_DEBUG_ERROR_HPP +# +# include +# include +# +# /* BOOST_PP_ERROR */ +# +# if BOOST_PP_CONFIG_ERRORS +# define BOOST_PP_ERROR(code) BOOST_PP_CAT(BOOST_PP_ERROR_, code) +# endif +# +# define BOOST_PP_ERROR_0x0000 BOOST_PP_ERROR(0x0000, BOOST_PP_INDEX_OUT_OF_BOUNDS) +# define BOOST_PP_ERROR_0x0001 BOOST_PP_ERROR(0x0001, BOOST_PP_WHILE_OVERFLOW) +# define BOOST_PP_ERROR_0x0002 BOOST_PP_ERROR(0x0002, BOOST_PP_FOR_OVERFLOW) +# define BOOST_PP_ERROR_0x0003 BOOST_PP_ERROR(0x0003, BOOST_PP_REPEAT_OVERFLOW) +# define BOOST_PP_ERROR_0x0004 BOOST_PP_ERROR(0x0004, BOOST_PP_LIST_FOLD_OVERFLOW) +# define BOOST_PP_ERROR_0x0005 BOOST_PP_ERROR(0x0005, BOOST_PP_SEQ_FOLD_OVERFLOW) +# define BOOST_PP_ERROR_0x0006 BOOST_PP_ERROR(0x0006, BOOST_PP_ARITHMETIC_OVERFLOW) +# define BOOST_PP_ERROR_0x0007 BOOST_PP_ERROR(0x0007, BOOST_PP_DIVISION_BY_ZERO) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/debug/line.hpp b/plugin/wave/include/boost/preprocessor/debug/line.hpp new file mode 100644 index 0000000..4dd1013 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/debug/line.hpp @@ -0,0 +1,35 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DEBUG_LINE_HPP +# define BOOST_PREPROCESSOR_DEBUG_LINE_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LINE */ +# +# if BOOST_PP_CONFIG_EXTENDED_LINE_INFO +# define BOOST_PP_LINE(line, file) line BOOST_PP_CAT(BOOST_PP_LINE_, BOOST_PP_IS_ITERATING)(file) +# define BOOST_PP_LINE_BOOST_PP_IS_ITERATING(file) #file +# define BOOST_PP_LINE_1(file) BOOST_PP_STRINGIZE(file BOOST_PP_CAT(BOOST_PP_LINE_I_, BOOST_PP_ITERATION_DEPTH())()) +# define BOOST_PP_LINE_I_1() [BOOST_PP_FRAME_ITERATION(1)] +# define BOOST_PP_LINE_I_2() BOOST_PP_LINE_I_1()[BOOST_PP_FRAME_ITERATION(2)] +# define BOOST_PP_LINE_I_3() BOOST_PP_LINE_I_2()[BOOST_PP_FRAME_ITERATION(3)] +# define BOOST_PP_LINE_I_4() BOOST_PP_LINE_I_3()[BOOST_PP_FRAME_ITERATION(4)] +# define BOOST_PP_LINE_I_5() BOOST_PP_LINE_I_4()[BOOST_PP_FRAME_ITERATION(5)] +# else +# define BOOST_PP_LINE(line, file) line __FILE__ +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/dec.hpp b/plugin/wave/include/boost/preprocessor/dec.hpp new file mode 100644 index 0000000..d572064 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/dec.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DEC_HPP +# define BOOST_PREPROCESSOR_DEC_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/auto_rec.hpp b/plugin/wave/include/boost/preprocessor/detail/auto_rec.hpp new file mode 100644 index 0000000..39de1d0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/auto_rec.hpp @@ -0,0 +1,293 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# include +# else +# +# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP +# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP +# +# include +# +# /* BOOST_PP_AUTO_REC */ +# +# define BOOST_PP_AUTO_REC(pred, n) BOOST_PP_NODE_ENTRY_ ## n(pred) +# +# define BOOST_PP_NODE_ENTRY_256(p) BOOST_PP_NODE_128(p)(p)(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_128(p) BOOST_PP_NODE_64(p)(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_64(p) BOOST_PP_NODE_32(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_32(p) BOOST_PP_NODE_16(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_16(p) BOOST_PP_NODE_8(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_8(p) BOOST_PP_NODE_4(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_4(p) BOOST_PP_NODE_2(p)(p) +# define BOOST_PP_NODE_ENTRY_2(p) BOOST_PP_NODE_1(p) +# +# define BOOST_PP_NODE_128(p) BOOST_PP_IIF(p(128), BOOST_PP_NODE_64, BOOST_PP_NODE_192) +# define BOOST_PP_NODE_64(p) BOOST_PP_IIF(p(64), BOOST_PP_NODE_32, BOOST_PP_NODE_96) +# define BOOST_PP_NODE_32(p) BOOST_PP_IIF(p(32), BOOST_PP_NODE_16, BOOST_PP_NODE_48) +# define BOOST_PP_NODE_16(p) BOOST_PP_IIF(p(16), BOOST_PP_NODE_8, BOOST_PP_NODE_24) +# define BOOST_PP_NODE_8(p) BOOST_PP_IIF(p(8), BOOST_PP_NODE_4, BOOST_PP_NODE_12) +# define BOOST_PP_NODE_4(p) BOOST_PP_IIF(p(4), BOOST_PP_NODE_2, BOOST_PP_NODE_6) +# define BOOST_PP_NODE_2(p) BOOST_PP_IIF(p(2), BOOST_PP_NODE_1, BOOST_PP_NODE_3) +# define BOOST_PP_NODE_1(p) BOOST_PP_IIF(p(1), 1, 2) +# define BOOST_PP_NODE_3(p) BOOST_PP_IIF(p(3), 3, 4) +# define BOOST_PP_NODE_6(p) BOOST_PP_IIF(p(6), BOOST_PP_NODE_5, BOOST_PP_NODE_7) +# define BOOST_PP_NODE_5(p) BOOST_PP_IIF(p(5), 5, 6) +# define BOOST_PP_NODE_7(p) BOOST_PP_IIF(p(7), 7, 8) +# define BOOST_PP_NODE_12(p) BOOST_PP_IIF(p(12), BOOST_PP_NODE_10, BOOST_PP_NODE_14) +# define BOOST_PP_NODE_10(p) BOOST_PP_IIF(p(10), BOOST_PP_NODE_9, BOOST_PP_NODE_11) +# define BOOST_PP_NODE_9(p) BOOST_PP_IIF(p(9), 9, 10) +# define BOOST_PP_NODE_11(p) BOOST_PP_IIF(p(11), 11, 12) +# define BOOST_PP_NODE_14(p) BOOST_PP_IIF(p(14), BOOST_PP_NODE_13, BOOST_PP_NODE_15) +# define BOOST_PP_NODE_13(p) BOOST_PP_IIF(p(13), 13, 14) +# define BOOST_PP_NODE_15(p) BOOST_PP_IIF(p(15), 15, 16) +# define BOOST_PP_NODE_24(p) BOOST_PP_IIF(p(24), BOOST_PP_NODE_20, BOOST_PP_NODE_28) +# define BOOST_PP_NODE_20(p) BOOST_PP_IIF(p(20), BOOST_PP_NODE_18, BOOST_PP_NODE_22) +# define BOOST_PP_NODE_18(p) BOOST_PP_IIF(p(18), BOOST_PP_NODE_17, BOOST_PP_NODE_19) +# define BOOST_PP_NODE_17(p) BOOST_PP_IIF(p(17), 17, 18) +# define BOOST_PP_NODE_19(p) BOOST_PP_IIF(p(19), 19, 20) +# define BOOST_PP_NODE_22(p) BOOST_PP_IIF(p(22), BOOST_PP_NODE_21, BOOST_PP_NODE_23) +# define BOOST_PP_NODE_21(p) BOOST_PP_IIF(p(21), 21, 22) +# define BOOST_PP_NODE_23(p) BOOST_PP_IIF(p(23), 23, 24) +# define BOOST_PP_NODE_28(p) BOOST_PP_IIF(p(28), BOOST_PP_NODE_26, BOOST_PP_NODE_30) +# define BOOST_PP_NODE_26(p) BOOST_PP_IIF(p(26), BOOST_PP_NODE_25, BOOST_PP_NODE_27) +# define BOOST_PP_NODE_25(p) BOOST_PP_IIF(p(25), 25, 26) +# define BOOST_PP_NODE_27(p) BOOST_PP_IIF(p(27), 27, 28) +# define BOOST_PP_NODE_30(p) BOOST_PP_IIF(p(30), BOOST_PP_NODE_29, BOOST_PP_NODE_31) +# define BOOST_PP_NODE_29(p) BOOST_PP_IIF(p(29), 29, 30) +# define BOOST_PP_NODE_31(p) BOOST_PP_IIF(p(31), 31, 32) +# define BOOST_PP_NODE_48(p) BOOST_PP_IIF(p(48), BOOST_PP_NODE_40, BOOST_PP_NODE_56) +# define BOOST_PP_NODE_40(p) BOOST_PP_IIF(p(40), BOOST_PP_NODE_36, BOOST_PP_NODE_44) +# define BOOST_PP_NODE_36(p) BOOST_PP_IIF(p(36), BOOST_PP_NODE_34, BOOST_PP_NODE_38) +# define BOOST_PP_NODE_34(p) BOOST_PP_IIF(p(34), BOOST_PP_NODE_33, BOOST_PP_NODE_35) +# define BOOST_PP_NODE_33(p) BOOST_PP_IIF(p(33), 33, 34) +# define BOOST_PP_NODE_35(p) BOOST_PP_IIF(p(35), 35, 36) +# define BOOST_PP_NODE_38(p) BOOST_PP_IIF(p(38), BOOST_PP_NODE_37, BOOST_PP_NODE_39) +# define BOOST_PP_NODE_37(p) BOOST_PP_IIF(p(37), 37, 38) +# define BOOST_PP_NODE_39(p) BOOST_PP_IIF(p(39), 39, 40) +# define BOOST_PP_NODE_44(p) BOOST_PP_IIF(p(44), BOOST_PP_NODE_42, BOOST_PP_NODE_46) +# define BOOST_PP_NODE_42(p) BOOST_PP_IIF(p(42), BOOST_PP_NODE_41, BOOST_PP_NODE_43) +# define BOOST_PP_NODE_41(p) BOOST_PP_IIF(p(41), 41, 42) +# define BOOST_PP_NODE_43(p) BOOST_PP_IIF(p(43), 43, 44) +# define BOOST_PP_NODE_46(p) BOOST_PP_IIF(p(46), BOOST_PP_NODE_45, BOOST_PP_NODE_47) +# define BOOST_PP_NODE_45(p) BOOST_PP_IIF(p(45), 45, 46) +# define BOOST_PP_NODE_47(p) BOOST_PP_IIF(p(47), 47, 48) +# define BOOST_PP_NODE_56(p) BOOST_PP_IIF(p(56), BOOST_PP_NODE_52, BOOST_PP_NODE_60) +# define BOOST_PP_NODE_52(p) BOOST_PP_IIF(p(52), BOOST_PP_NODE_50, BOOST_PP_NODE_54) +# define BOOST_PP_NODE_50(p) BOOST_PP_IIF(p(50), BOOST_PP_NODE_49, BOOST_PP_NODE_51) +# define BOOST_PP_NODE_49(p) BOOST_PP_IIF(p(49), 49, 50) +# define BOOST_PP_NODE_51(p) BOOST_PP_IIF(p(51), 51, 52) +# define BOOST_PP_NODE_54(p) BOOST_PP_IIF(p(54), BOOST_PP_NODE_53, BOOST_PP_NODE_55) +# define BOOST_PP_NODE_53(p) BOOST_PP_IIF(p(53), 53, 54) +# define BOOST_PP_NODE_55(p) BOOST_PP_IIF(p(55), 55, 56) +# define BOOST_PP_NODE_60(p) BOOST_PP_IIF(p(60), BOOST_PP_NODE_58, BOOST_PP_NODE_62) +# define BOOST_PP_NODE_58(p) BOOST_PP_IIF(p(58), BOOST_PP_NODE_57, BOOST_PP_NODE_59) +# define BOOST_PP_NODE_57(p) BOOST_PP_IIF(p(57), 57, 58) +# define BOOST_PP_NODE_59(p) BOOST_PP_IIF(p(59), 59, 60) +# define BOOST_PP_NODE_62(p) BOOST_PP_IIF(p(62), BOOST_PP_NODE_61, BOOST_PP_NODE_63) +# define BOOST_PP_NODE_61(p) BOOST_PP_IIF(p(61), 61, 62) +# define BOOST_PP_NODE_63(p) BOOST_PP_IIF(p(63), 63, 64) +# define BOOST_PP_NODE_96(p) BOOST_PP_IIF(p(96), BOOST_PP_NODE_80, BOOST_PP_NODE_112) +# define BOOST_PP_NODE_80(p) BOOST_PP_IIF(p(80), BOOST_PP_NODE_72, BOOST_PP_NODE_88) +# define BOOST_PP_NODE_72(p) BOOST_PP_IIF(p(72), BOOST_PP_NODE_68, BOOST_PP_NODE_76) +# define BOOST_PP_NODE_68(p) BOOST_PP_IIF(p(68), BOOST_PP_NODE_66, BOOST_PP_NODE_70) +# define BOOST_PP_NODE_66(p) BOOST_PP_IIF(p(66), BOOST_PP_NODE_65, BOOST_PP_NODE_67) +# define BOOST_PP_NODE_65(p) BOOST_PP_IIF(p(65), 65, 66) +# define BOOST_PP_NODE_67(p) BOOST_PP_IIF(p(67), 67, 68) +# define BOOST_PP_NODE_70(p) BOOST_PP_IIF(p(70), BOOST_PP_NODE_69, BOOST_PP_NODE_71) +# define BOOST_PP_NODE_69(p) BOOST_PP_IIF(p(69), 69, 70) +# define BOOST_PP_NODE_71(p) BOOST_PP_IIF(p(71), 71, 72) +# define BOOST_PP_NODE_76(p) BOOST_PP_IIF(p(76), BOOST_PP_NODE_74, BOOST_PP_NODE_78) +# define BOOST_PP_NODE_74(p) BOOST_PP_IIF(p(74), BOOST_PP_NODE_73, BOOST_PP_NODE_75) +# define BOOST_PP_NODE_73(p) BOOST_PP_IIF(p(73), 73, 74) +# define BOOST_PP_NODE_75(p) BOOST_PP_IIF(p(75), 75, 76) +# define BOOST_PP_NODE_78(p) BOOST_PP_IIF(p(78), BOOST_PP_NODE_77, BOOST_PP_NODE_79) +# define BOOST_PP_NODE_77(p) BOOST_PP_IIF(p(77), 77, 78) +# define BOOST_PP_NODE_79(p) BOOST_PP_IIF(p(79), 79, 80) +# define BOOST_PP_NODE_88(p) BOOST_PP_IIF(p(88), BOOST_PP_NODE_84, BOOST_PP_NODE_92) +# define BOOST_PP_NODE_84(p) BOOST_PP_IIF(p(84), BOOST_PP_NODE_82, BOOST_PP_NODE_86) +# define BOOST_PP_NODE_82(p) BOOST_PP_IIF(p(82), BOOST_PP_NODE_81, BOOST_PP_NODE_83) +# define BOOST_PP_NODE_81(p) BOOST_PP_IIF(p(81), 81, 82) +# define BOOST_PP_NODE_83(p) BOOST_PP_IIF(p(83), 83, 84) +# define BOOST_PP_NODE_86(p) BOOST_PP_IIF(p(86), BOOST_PP_NODE_85, BOOST_PP_NODE_87) +# define BOOST_PP_NODE_85(p) BOOST_PP_IIF(p(85), 85, 86) +# define BOOST_PP_NODE_87(p) BOOST_PP_IIF(p(87), 87, 88) +# define BOOST_PP_NODE_92(p) BOOST_PP_IIF(p(92), BOOST_PP_NODE_90, BOOST_PP_NODE_94) +# define BOOST_PP_NODE_90(p) BOOST_PP_IIF(p(90), BOOST_PP_NODE_89, BOOST_PP_NODE_91) +# define BOOST_PP_NODE_89(p) BOOST_PP_IIF(p(89), 89, 90) +# define BOOST_PP_NODE_91(p) BOOST_PP_IIF(p(91), 91, 92) +# define BOOST_PP_NODE_94(p) BOOST_PP_IIF(p(94), BOOST_PP_NODE_93, BOOST_PP_NODE_95) +# define BOOST_PP_NODE_93(p) BOOST_PP_IIF(p(93), 93, 94) +# define BOOST_PP_NODE_95(p) BOOST_PP_IIF(p(95), 95, 96) +# define BOOST_PP_NODE_112(p) BOOST_PP_IIF(p(112), BOOST_PP_NODE_104, BOOST_PP_NODE_120) +# define BOOST_PP_NODE_104(p) BOOST_PP_IIF(p(104), BOOST_PP_NODE_100, BOOST_PP_NODE_108) +# define BOOST_PP_NODE_100(p) BOOST_PP_IIF(p(100), BOOST_PP_NODE_98, BOOST_PP_NODE_102) +# define BOOST_PP_NODE_98(p) BOOST_PP_IIF(p(98), BOOST_PP_NODE_97, BOOST_PP_NODE_99) +# define BOOST_PP_NODE_97(p) BOOST_PP_IIF(p(97), 97, 98) +# define BOOST_PP_NODE_99(p) BOOST_PP_IIF(p(99), 99, 100) +# define BOOST_PP_NODE_102(p) BOOST_PP_IIF(p(102), BOOST_PP_NODE_101, BOOST_PP_NODE_103) +# define BOOST_PP_NODE_101(p) BOOST_PP_IIF(p(101), 101, 102) +# define BOOST_PP_NODE_103(p) BOOST_PP_IIF(p(103), 103, 104) +# define BOOST_PP_NODE_108(p) BOOST_PP_IIF(p(108), BOOST_PP_NODE_106, BOOST_PP_NODE_110) +# define BOOST_PP_NODE_106(p) BOOST_PP_IIF(p(106), BOOST_PP_NODE_105, BOOST_PP_NODE_107) +# define BOOST_PP_NODE_105(p) BOOST_PP_IIF(p(105), 105, 106) +# define BOOST_PP_NODE_107(p) BOOST_PP_IIF(p(107), 107, 108) +# define BOOST_PP_NODE_110(p) BOOST_PP_IIF(p(110), BOOST_PP_NODE_109, BOOST_PP_NODE_111) +# define BOOST_PP_NODE_109(p) BOOST_PP_IIF(p(109), 109, 110) +# define BOOST_PP_NODE_111(p) BOOST_PP_IIF(p(111), 111, 112) +# define BOOST_PP_NODE_120(p) BOOST_PP_IIF(p(120), BOOST_PP_NODE_116, BOOST_PP_NODE_124) +# define BOOST_PP_NODE_116(p) BOOST_PP_IIF(p(116), BOOST_PP_NODE_114, BOOST_PP_NODE_118) +# define BOOST_PP_NODE_114(p) BOOST_PP_IIF(p(114), BOOST_PP_NODE_113, BOOST_PP_NODE_115) +# define BOOST_PP_NODE_113(p) BOOST_PP_IIF(p(113), 113, 114) +# define BOOST_PP_NODE_115(p) BOOST_PP_IIF(p(115), 115, 116) +# define BOOST_PP_NODE_118(p) BOOST_PP_IIF(p(118), BOOST_PP_NODE_117, BOOST_PP_NODE_119) +# define BOOST_PP_NODE_117(p) BOOST_PP_IIF(p(117), 117, 118) +# define BOOST_PP_NODE_119(p) BOOST_PP_IIF(p(119), 119, 120) +# define BOOST_PP_NODE_124(p) BOOST_PP_IIF(p(124), BOOST_PP_NODE_122, BOOST_PP_NODE_126) +# define BOOST_PP_NODE_122(p) BOOST_PP_IIF(p(122), BOOST_PP_NODE_121, BOOST_PP_NODE_123) +# define BOOST_PP_NODE_121(p) BOOST_PP_IIF(p(121), 121, 122) +# define BOOST_PP_NODE_123(p) BOOST_PP_IIF(p(123), 123, 124) +# define BOOST_PP_NODE_126(p) BOOST_PP_IIF(p(126), BOOST_PP_NODE_125, BOOST_PP_NODE_127) +# define BOOST_PP_NODE_125(p) BOOST_PP_IIF(p(125), 125, 126) +# define BOOST_PP_NODE_127(p) BOOST_PP_IIF(p(127), 127, 128) +# define BOOST_PP_NODE_192(p) BOOST_PP_IIF(p(192), BOOST_PP_NODE_160, BOOST_PP_NODE_224) +# define BOOST_PP_NODE_160(p) BOOST_PP_IIF(p(160), BOOST_PP_NODE_144, BOOST_PP_NODE_176) +# define BOOST_PP_NODE_144(p) BOOST_PP_IIF(p(144), BOOST_PP_NODE_136, BOOST_PP_NODE_152) +# define BOOST_PP_NODE_136(p) BOOST_PP_IIF(p(136), BOOST_PP_NODE_132, BOOST_PP_NODE_140) +# define BOOST_PP_NODE_132(p) BOOST_PP_IIF(p(132), BOOST_PP_NODE_130, BOOST_PP_NODE_134) +# define BOOST_PP_NODE_130(p) BOOST_PP_IIF(p(130), BOOST_PP_NODE_129, BOOST_PP_NODE_131) +# define BOOST_PP_NODE_129(p) BOOST_PP_IIF(p(129), 129, 130) +# define BOOST_PP_NODE_131(p) BOOST_PP_IIF(p(131), 131, 132) +# define BOOST_PP_NODE_134(p) BOOST_PP_IIF(p(134), BOOST_PP_NODE_133, BOOST_PP_NODE_135) +# define BOOST_PP_NODE_133(p) BOOST_PP_IIF(p(133), 133, 134) +# define BOOST_PP_NODE_135(p) BOOST_PP_IIF(p(135), 135, 136) +# define BOOST_PP_NODE_140(p) BOOST_PP_IIF(p(140), BOOST_PP_NODE_138, BOOST_PP_NODE_142) +# define BOOST_PP_NODE_138(p) BOOST_PP_IIF(p(138), BOOST_PP_NODE_137, BOOST_PP_NODE_139) +# define BOOST_PP_NODE_137(p) BOOST_PP_IIF(p(137), 137, 138) +# define BOOST_PP_NODE_139(p) BOOST_PP_IIF(p(139), 139, 140) +# define BOOST_PP_NODE_142(p) BOOST_PP_IIF(p(142), BOOST_PP_NODE_141, BOOST_PP_NODE_143) +# define BOOST_PP_NODE_141(p) BOOST_PP_IIF(p(141), 141, 142) +# define BOOST_PP_NODE_143(p) BOOST_PP_IIF(p(143), 143, 144) +# define BOOST_PP_NODE_152(p) BOOST_PP_IIF(p(152), BOOST_PP_NODE_148, BOOST_PP_NODE_156) +# define BOOST_PP_NODE_148(p) BOOST_PP_IIF(p(148), BOOST_PP_NODE_146, BOOST_PP_NODE_150) +# define BOOST_PP_NODE_146(p) BOOST_PP_IIF(p(146), BOOST_PP_NODE_145, BOOST_PP_NODE_147) +# define BOOST_PP_NODE_145(p) BOOST_PP_IIF(p(145), 145, 146) +# define BOOST_PP_NODE_147(p) BOOST_PP_IIF(p(147), 147, 148) +# define BOOST_PP_NODE_150(p) BOOST_PP_IIF(p(150), BOOST_PP_NODE_149, BOOST_PP_NODE_151) +# define BOOST_PP_NODE_149(p) BOOST_PP_IIF(p(149), 149, 150) +# define BOOST_PP_NODE_151(p) BOOST_PP_IIF(p(151), 151, 152) +# define BOOST_PP_NODE_156(p) BOOST_PP_IIF(p(156), BOOST_PP_NODE_154, BOOST_PP_NODE_158) +# define BOOST_PP_NODE_154(p) BOOST_PP_IIF(p(154), BOOST_PP_NODE_153, BOOST_PP_NODE_155) +# define BOOST_PP_NODE_153(p) BOOST_PP_IIF(p(153), 153, 154) +# define BOOST_PP_NODE_155(p) BOOST_PP_IIF(p(155), 155, 156) +# define BOOST_PP_NODE_158(p) BOOST_PP_IIF(p(158), BOOST_PP_NODE_157, BOOST_PP_NODE_159) +# define BOOST_PP_NODE_157(p) BOOST_PP_IIF(p(157), 157, 158) +# define BOOST_PP_NODE_159(p) BOOST_PP_IIF(p(159), 159, 160) +# define BOOST_PP_NODE_176(p) BOOST_PP_IIF(p(176), BOOST_PP_NODE_168, BOOST_PP_NODE_184) +# define BOOST_PP_NODE_168(p) BOOST_PP_IIF(p(168), BOOST_PP_NODE_164, BOOST_PP_NODE_172) +# define BOOST_PP_NODE_164(p) BOOST_PP_IIF(p(164), BOOST_PP_NODE_162, BOOST_PP_NODE_166) +# define BOOST_PP_NODE_162(p) BOOST_PP_IIF(p(162), BOOST_PP_NODE_161, BOOST_PP_NODE_163) +# define BOOST_PP_NODE_161(p) BOOST_PP_IIF(p(161), 161, 162) +# define BOOST_PP_NODE_163(p) BOOST_PP_IIF(p(163), 163, 164) +# define BOOST_PP_NODE_166(p) BOOST_PP_IIF(p(166), BOOST_PP_NODE_165, BOOST_PP_NODE_167) +# define BOOST_PP_NODE_165(p) BOOST_PP_IIF(p(165), 165, 166) +# define BOOST_PP_NODE_167(p) BOOST_PP_IIF(p(167), 167, 168) +# define BOOST_PP_NODE_172(p) BOOST_PP_IIF(p(172), BOOST_PP_NODE_170, BOOST_PP_NODE_174) +# define BOOST_PP_NODE_170(p) BOOST_PP_IIF(p(170), BOOST_PP_NODE_169, BOOST_PP_NODE_171) +# define BOOST_PP_NODE_169(p) BOOST_PP_IIF(p(169), 169, 170) +# define BOOST_PP_NODE_171(p) BOOST_PP_IIF(p(171), 171, 172) +# define BOOST_PP_NODE_174(p) BOOST_PP_IIF(p(174), BOOST_PP_NODE_173, BOOST_PP_NODE_175) +# define BOOST_PP_NODE_173(p) BOOST_PP_IIF(p(173), 173, 174) +# define BOOST_PP_NODE_175(p) BOOST_PP_IIF(p(175), 175, 176) +# define BOOST_PP_NODE_184(p) BOOST_PP_IIF(p(184), BOOST_PP_NODE_180, BOOST_PP_NODE_188) +# define BOOST_PP_NODE_180(p) BOOST_PP_IIF(p(180), BOOST_PP_NODE_178, BOOST_PP_NODE_182) +# define BOOST_PP_NODE_178(p) BOOST_PP_IIF(p(178), BOOST_PP_NODE_177, BOOST_PP_NODE_179) +# define BOOST_PP_NODE_177(p) BOOST_PP_IIF(p(177), 177, 178) +# define BOOST_PP_NODE_179(p) BOOST_PP_IIF(p(179), 179, 180) +# define BOOST_PP_NODE_182(p) BOOST_PP_IIF(p(182), BOOST_PP_NODE_181, BOOST_PP_NODE_183) +# define BOOST_PP_NODE_181(p) BOOST_PP_IIF(p(181), 181, 182) +# define BOOST_PP_NODE_183(p) BOOST_PP_IIF(p(183), 183, 184) +# define BOOST_PP_NODE_188(p) BOOST_PP_IIF(p(188), BOOST_PP_NODE_186, BOOST_PP_NODE_190) +# define BOOST_PP_NODE_186(p) BOOST_PP_IIF(p(186), BOOST_PP_NODE_185, BOOST_PP_NODE_187) +# define BOOST_PP_NODE_185(p) BOOST_PP_IIF(p(185), 185, 186) +# define BOOST_PP_NODE_187(p) BOOST_PP_IIF(p(187), 187, 188) +# define BOOST_PP_NODE_190(p) BOOST_PP_IIF(p(190), BOOST_PP_NODE_189, BOOST_PP_NODE_191) +# define BOOST_PP_NODE_189(p) BOOST_PP_IIF(p(189), 189, 190) +# define BOOST_PP_NODE_191(p) BOOST_PP_IIF(p(191), 191, 192) +# define BOOST_PP_NODE_224(p) BOOST_PP_IIF(p(224), BOOST_PP_NODE_208, BOOST_PP_NODE_240) +# define BOOST_PP_NODE_208(p) BOOST_PP_IIF(p(208), BOOST_PP_NODE_200, BOOST_PP_NODE_216) +# define BOOST_PP_NODE_200(p) BOOST_PP_IIF(p(200), BOOST_PP_NODE_196, BOOST_PP_NODE_204) +# define BOOST_PP_NODE_196(p) BOOST_PP_IIF(p(196), BOOST_PP_NODE_194, BOOST_PP_NODE_198) +# define BOOST_PP_NODE_194(p) BOOST_PP_IIF(p(194), BOOST_PP_NODE_193, BOOST_PP_NODE_195) +# define BOOST_PP_NODE_193(p) BOOST_PP_IIF(p(193), 193, 194) +# define BOOST_PP_NODE_195(p) BOOST_PP_IIF(p(195), 195, 196) +# define BOOST_PP_NODE_198(p) BOOST_PP_IIF(p(198), BOOST_PP_NODE_197, BOOST_PP_NODE_199) +# define BOOST_PP_NODE_197(p) BOOST_PP_IIF(p(197), 197, 198) +# define BOOST_PP_NODE_199(p) BOOST_PP_IIF(p(199), 199, 200) +# define BOOST_PP_NODE_204(p) BOOST_PP_IIF(p(204), BOOST_PP_NODE_202, BOOST_PP_NODE_206) +# define BOOST_PP_NODE_202(p) BOOST_PP_IIF(p(202), BOOST_PP_NODE_201, BOOST_PP_NODE_203) +# define BOOST_PP_NODE_201(p) BOOST_PP_IIF(p(201), 201, 202) +# define BOOST_PP_NODE_203(p) BOOST_PP_IIF(p(203), 203, 204) +# define BOOST_PP_NODE_206(p) BOOST_PP_IIF(p(206), BOOST_PP_NODE_205, BOOST_PP_NODE_207) +# define BOOST_PP_NODE_205(p) BOOST_PP_IIF(p(205), 205, 206) +# define BOOST_PP_NODE_207(p) BOOST_PP_IIF(p(207), 207, 208) +# define BOOST_PP_NODE_216(p) BOOST_PP_IIF(p(216), BOOST_PP_NODE_212, BOOST_PP_NODE_220) +# define BOOST_PP_NODE_212(p) BOOST_PP_IIF(p(212), BOOST_PP_NODE_210, BOOST_PP_NODE_214) +# define BOOST_PP_NODE_210(p) BOOST_PP_IIF(p(210), BOOST_PP_NODE_209, BOOST_PP_NODE_211) +# define BOOST_PP_NODE_209(p) BOOST_PP_IIF(p(209), 209, 210) +# define BOOST_PP_NODE_211(p) BOOST_PP_IIF(p(211), 211, 212) +# define BOOST_PP_NODE_214(p) BOOST_PP_IIF(p(214), BOOST_PP_NODE_213, BOOST_PP_NODE_215) +# define BOOST_PP_NODE_213(p) BOOST_PP_IIF(p(213), 213, 214) +# define BOOST_PP_NODE_215(p) BOOST_PP_IIF(p(215), 215, 216) +# define BOOST_PP_NODE_220(p) BOOST_PP_IIF(p(220), BOOST_PP_NODE_218, BOOST_PP_NODE_222) +# define BOOST_PP_NODE_218(p) BOOST_PP_IIF(p(218), BOOST_PP_NODE_217, BOOST_PP_NODE_219) +# define BOOST_PP_NODE_217(p) BOOST_PP_IIF(p(217), 217, 218) +# define BOOST_PP_NODE_219(p) BOOST_PP_IIF(p(219), 219, 220) +# define BOOST_PP_NODE_222(p) BOOST_PP_IIF(p(222), BOOST_PP_NODE_221, BOOST_PP_NODE_223) +# define BOOST_PP_NODE_221(p) BOOST_PP_IIF(p(221), 221, 222) +# define BOOST_PP_NODE_223(p) BOOST_PP_IIF(p(223), 223, 224) +# define BOOST_PP_NODE_240(p) BOOST_PP_IIF(p(240), BOOST_PP_NODE_232, BOOST_PP_NODE_248) +# define BOOST_PP_NODE_232(p) BOOST_PP_IIF(p(232), BOOST_PP_NODE_228, BOOST_PP_NODE_236) +# define BOOST_PP_NODE_228(p) BOOST_PP_IIF(p(228), BOOST_PP_NODE_226, BOOST_PP_NODE_230) +# define BOOST_PP_NODE_226(p) BOOST_PP_IIF(p(226), BOOST_PP_NODE_225, BOOST_PP_NODE_227) +# define BOOST_PP_NODE_225(p) BOOST_PP_IIF(p(225), 225, 226) +# define BOOST_PP_NODE_227(p) BOOST_PP_IIF(p(227), 227, 228) +# define BOOST_PP_NODE_230(p) BOOST_PP_IIF(p(230), BOOST_PP_NODE_229, BOOST_PP_NODE_231) +# define BOOST_PP_NODE_229(p) BOOST_PP_IIF(p(229), 229, 230) +# define BOOST_PP_NODE_231(p) BOOST_PP_IIF(p(231), 231, 232) +# define BOOST_PP_NODE_236(p) BOOST_PP_IIF(p(236), BOOST_PP_NODE_234, BOOST_PP_NODE_238) +# define BOOST_PP_NODE_234(p) BOOST_PP_IIF(p(234), BOOST_PP_NODE_233, BOOST_PP_NODE_235) +# define BOOST_PP_NODE_233(p) BOOST_PP_IIF(p(233), 233, 234) +# define BOOST_PP_NODE_235(p) BOOST_PP_IIF(p(235), 235, 236) +# define BOOST_PP_NODE_238(p) BOOST_PP_IIF(p(238), BOOST_PP_NODE_237, BOOST_PP_NODE_239) +# define BOOST_PP_NODE_237(p) BOOST_PP_IIF(p(237), 237, 238) +# define BOOST_PP_NODE_239(p) BOOST_PP_IIF(p(239), 239, 240) +# define BOOST_PP_NODE_248(p) BOOST_PP_IIF(p(248), BOOST_PP_NODE_244, BOOST_PP_NODE_252) +# define BOOST_PP_NODE_244(p) BOOST_PP_IIF(p(244), BOOST_PP_NODE_242, BOOST_PP_NODE_246) +# define BOOST_PP_NODE_242(p) BOOST_PP_IIF(p(242), BOOST_PP_NODE_241, BOOST_PP_NODE_243) +# define BOOST_PP_NODE_241(p) BOOST_PP_IIF(p(241), 241, 242) +# define BOOST_PP_NODE_243(p) BOOST_PP_IIF(p(243), 243, 244) +# define BOOST_PP_NODE_246(p) BOOST_PP_IIF(p(246), BOOST_PP_NODE_245, BOOST_PP_NODE_247) +# define BOOST_PP_NODE_245(p) BOOST_PP_IIF(p(245), 245, 246) +# define BOOST_PP_NODE_247(p) BOOST_PP_IIF(p(247), 247, 248) +# define BOOST_PP_NODE_252(p) BOOST_PP_IIF(p(252), BOOST_PP_NODE_250, BOOST_PP_NODE_254) +# define BOOST_PP_NODE_250(p) BOOST_PP_IIF(p(250), BOOST_PP_NODE_249, BOOST_PP_NODE_251) +# define BOOST_PP_NODE_249(p) BOOST_PP_IIF(p(249), 249, 250) +# define BOOST_PP_NODE_251(p) BOOST_PP_IIF(p(251), 251, 252) +# define BOOST_PP_NODE_254(p) BOOST_PP_IIF(p(254), BOOST_PP_NODE_253, BOOST_PP_NODE_255) +# define BOOST_PP_NODE_253(p) BOOST_PP_IIF(p(253), 253, 254) +# define BOOST_PP_NODE_255(p) BOOST_PP_IIF(p(255), 255, 256) +# +# endif +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/check.hpp b/plugin/wave/include/boost/preprocessor/detail/check.hpp new file mode 100644 index 0000000..63f8ff9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/check.hpp @@ -0,0 +1,48 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_CHECK_HPP +# define BOOST_PREPROCESSOR_DETAIL_CHECK_HPP +# +# include +# include +# +# /* BOOST_PP_CHECK */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_CHECK(x, type) BOOST_PP_CHECK_D(x, type) +# else +# define BOOST_PP_CHECK(x, type) BOOST_PP_CHECK_OO((x, type)) +# define BOOST_PP_CHECK_OO(par) BOOST_PP_CHECK_D ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_CHECK_D(x, type) BOOST_PP_CHECK_1(BOOST_PP_CAT(BOOST_PP_CHECK_RESULT_, type x)) +# define BOOST_PP_CHECK_1(chk) BOOST_PP_CHECK_2(chk) +# define BOOST_PP_CHECK_2(res, _) res +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_CHECK_D(x, type) BOOST_PP_CHECK_1(type x) +# define BOOST_PP_CHECK_1(chk) BOOST_PP_CHECK_2(chk) +# define BOOST_PP_CHECK_2(chk) BOOST_PP_CHECK_3((BOOST_PP_CHECK_RESULT_ ## chk)) +# define BOOST_PP_CHECK_3(im) BOOST_PP_CHECK_5(BOOST_PP_CHECK_4 im) +# define BOOST_PP_CHECK_4(res, _) res +# define BOOST_PP_CHECK_5(res) res +# else /* DMC */ +# define BOOST_PP_CHECK_D(x, type) BOOST_PP_CHECK_OO((type x)) +# define BOOST_PP_CHECK_OO(par) BOOST_PP_CHECK_0 ## par +# define BOOST_PP_CHECK_0(chk) BOOST_PP_CHECK_1(BOOST_PP_CAT(BOOST_PP_CHECK_RESULT_, chk)) +# define BOOST_PP_CHECK_1(chk) BOOST_PP_CHECK_2(chk) +# define BOOST_PP_CHECK_2(res, _) res +# endif +# +# define BOOST_PP_CHECK_RESULT_1 1, BOOST_PP_NIL +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/dmc/auto_rec.hpp b/plugin/wave/include/boost/preprocessor/detail/dmc/auto_rec.hpp new file mode 100644 index 0000000..37fbe04 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/dmc/auto_rec.hpp @@ -0,0 +1,286 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP +# define BOOST_PREPROCESSOR_DETAIL_AUTO_REC_HPP +# +# include +# +# /* BOOST_PP_AUTO_REC */ +# +# define BOOST_PP_AUTO_REC(pred, n) BOOST_PP_NODE_ENTRY_ ## n(pred) +# +# define BOOST_PP_NODE_ENTRY_256(p) BOOST_PP_NODE_128(p)(p)(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_128(p) BOOST_PP_NODE_64(p)(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_64(p) BOOST_PP_NODE_32(p)(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_32(p) BOOST_PP_NODE_16(p)(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_16(p) BOOST_PP_NODE_8(p)(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_8(p) BOOST_PP_NODE_4(p)(p)(p) +# define BOOST_PP_NODE_ENTRY_4(p) BOOST_PP_NODE_2(p)(p) +# define BOOST_PP_NODE_ENTRY_2(p) BOOST_PP_NODE_1(p) +# +# define BOOST_PP_NODE_128(p) BOOST_PP_IIF(p##(128), BOOST_PP_NODE_64, BOOST_PP_NODE_192) +# define BOOST_PP_NODE_64(p) BOOST_PP_IIF(p##(64), BOOST_PP_NODE_32, BOOST_PP_NODE_96) +# define BOOST_PP_NODE_32(p) BOOST_PP_IIF(p##(32), BOOST_PP_NODE_16, BOOST_PP_NODE_48) +# define BOOST_PP_NODE_16(p) BOOST_PP_IIF(p##(16), BOOST_PP_NODE_8, BOOST_PP_NODE_24) +# define BOOST_PP_NODE_8(p) BOOST_PP_IIF(p##(8), BOOST_PP_NODE_4, BOOST_PP_NODE_12) +# define BOOST_PP_NODE_4(p) BOOST_PP_IIF(p##(4), BOOST_PP_NODE_2, BOOST_PP_NODE_6) +# define BOOST_PP_NODE_2(p) BOOST_PP_IIF(p##(2), BOOST_PP_NODE_1, BOOST_PP_NODE_3) +# define BOOST_PP_NODE_1(p) BOOST_PP_IIF(p##(1), 1, 2) +# define BOOST_PP_NODE_3(p) BOOST_PP_IIF(p##(3), 3, 4) +# define BOOST_PP_NODE_6(p) BOOST_PP_IIF(p##(6), BOOST_PP_NODE_5, BOOST_PP_NODE_7) +# define BOOST_PP_NODE_5(p) BOOST_PP_IIF(p##(5), 5, 6) +# define BOOST_PP_NODE_7(p) BOOST_PP_IIF(p##(7), 7, 8) +# define BOOST_PP_NODE_12(p) BOOST_PP_IIF(p##(12), BOOST_PP_NODE_10, BOOST_PP_NODE_14) +# define BOOST_PP_NODE_10(p) BOOST_PP_IIF(p##(10), BOOST_PP_NODE_9, BOOST_PP_NODE_11) +# define BOOST_PP_NODE_9(p) BOOST_PP_IIF(p##(9), 9, 10) +# define BOOST_PP_NODE_11(p) BOOST_PP_IIF(p##(11), 11, 12) +# define BOOST_PP_NODE_14(p) BOOST_PP_IIF(p##(14), BOOST_PP_NODE_13, BOOST_PP_NODE_15) +# define BOOST_PP_NODE_13(p) BOOST_PP_IIF(p##(13), 13, 14) +# define BOOST_PP_NODE_15(p) BOOST_PP_IIF(p##(15), 15, 16) +# define BOOST_PP_NODE_24(p) BOOST_PP_IIF(p##(24), BOOST_PP_NODE_20, BOOST_PP_NODE_28) +# define BOOST_PP_NODE_20(p) BOOST_PP_IIF(p##(20), BOOST_PP_NODE_18, BOOST_PP_NODE_22) +# define BOOST_PP_NODE_18(p) BOOST_PP_IIF(p##(18), BOOST_PP_NODE_17, BOOST_PP_NODE_19) +# define BOOST_PP_NODE_17(p) BOOST_PP_IIF(p##(17), 17, 18) +# define BOOST_PP_NODE_19(p) BOOST_PP_IIF(p##(19), 19, 20) +# define BOOST_PP_NODE_22(p) BOOST_PP_IIF(p##(22), BOOST_PP_NODE_21, BOOST_PP_NODE_23) +# define BOOST_PP_NODE_21(p) BOOST_PP_IIF(p##(21), 21, 22) +# define BOOST_PP_NODE_23(p) BOOST_PP_IIF(p##(23), 23, 24) +# define BOOST_PP_NODE_28(p) BOOST_PP_IIF(p##(28), BOOST_PP_NODE_26, BOOST_PP_NODE_30) +# define BOOST_PP_NODE_26(p) BOOST_PP_IIF(p##(26), BOOST_PP_NODE_25, BOOST_PP_NODE_27) +# define BOOST_PP_NODE_25(p) BOOST_PP_IIF(p##(25), 25, 26) +# define BOOST_PP_NODE_27(p) BOOST_PP_IIF(p##(27), 27, 28) +# define BOOST_PP_NODE_30(p) BOOST_PP_IIF(p##(30), BOOST_PP_NODE_29, BOOST_PP_NODE_31) +# define BOOST_PP_NODE_29(p) BOOST_PP_IIF(p##(29), 29, 30) +# define BOOST_PP_NODE_31(p) BOOST_PP_IIF(p##(31), 31, 32) +# define BOOST_PP_NODE_48(p) BOOST_PP_IIF(p##(48), BOOST_PP_NODE_40, BOOST_PP_NODE_56) +# define BOOST_PP_NODE_40(p) BOOST_PP_IIF(p##(40), BOOST_PP_NODE_36, BOOST_PP_NODE_44) +# define BOOST_PP_NODE_36(p) BOOST_PP_IIF(p##(36), BOOST_PP_NODE_34, BOOST_PP_NODE_38) +# define BOOST_PP_NODE_34(p) BOOST_PP_IIF(p##(34), BOOST_PP_NODE_33, BOOST_PP_NODE_35) +# define BOOST_PP_NODE_33(p) BOOST_PP_IIF(p##(33), 33, 34) +# define BOOST_PP_NODE_35(p) BOOST_PP_IIF(p##(35), 35, 36) +# define BOOST_PP_NODE_38(p) BOOST_PP_IIF(p##(38), BOOST_PP_NODE_37, BOOST_PP_NODE_39) +# define BOOST_PP_NODE_37(p) BOOST_PP_IIF(p##(37), 37, 38) +# define BOOST_PP_NODE_39(p) BOOST_PP_IIF(p##(39), 39, 40) +# define BOOST_PP_NODE_44(p) BOOST_PP_IIF(p##(44), BOOST_PP_NODE_42, BOOST_PP_NODE_46) +# define BOOST_PP_NODE_42(p) BOOST_PP_IIF(p##(42), BOOST_PP_NODE_41, BOOST_PP_NODE_43) +# define BOOST_PP_NODE_41(p) BOOST_PP_IIF(p##(41), 41, 42) +# define BOOST_PP_NODE_43(p) BOOST_PP_IIF(p##(43), 43, 44) +# define BOOST_PP_NODE_46(p) BOOST_PP_IIF(p##(46), BOOST_PP_NODE_45, BOOST_PP_NODE_47) +# define BOOST_PP_NODE_45(p) BOOST_PP_IIF(p##(45), 45, 46) +# define BOOST_PP_NODE_47(p) BOOST_PP_IIF(p##(47), 47, 48) +# define BOOST_PP_NODE_56(p) BOOST_PP_IIF(p##(56), BOOST_PP_NODE_52, BOOST_PP_NODE_60) +# define BOOST_PP_NODE_52(p) BOOST_PP_IIF(p##(52), BOOST_PP_NODE_50, BOOST_PP_NODE_54) +# define BOOST_PP_NODE_50(p) BOOST_PP_IIF(p##(50), BOOST_PP_NODE_49, BOOST_PP_NODE_51) +# define BOOST_PP_NODE_49(p) BOOST_PP_IIF(p##(49), 49, 50) +# define BOOST_PP_NODE_51(p) BOOST_PP_IIF(p##(51), 51, 52) +# define BOOST_PP_NODE_54(p) BOOST_PP_IIF(p##(54), BOOST_PP_NODE_53, BOOST_PP_NODE_55) +# define BOOST_PP_NODE_53(p) BOOST_PP_IIF(p##(53), 53, 54) +# define BOOST_PP_NODE_55(p) BOOST_PP_IIF(p##(55), 55, 56) +# define BOOST_PP_NODE_60(p) BOOST_PP_IIF(p##(60), BOOST_PP_NODE_58, BOOST_PP_NODE_62) +# define BOOST_PP_NODE_58(p) BOOST_PP_IIF(p##(58), BOOST_PP_NODE_57, BOOST_PP_NODE_59) +# define BOOST_PP_NODE_57(p) BOOST_PP_IIF(p##(57), 57, 58) +# define BOOST_PP_NODE_59(p) BOOST_PP_IIF(p##(59), 59, 60) +# define BOOST_PP_NODE_62(p) BOOST_PP_IIF(p##(62), BOOST_PP_NODE_61, BOOST_PP_NODE_63) +# define BOOST_PP_NODE_61(p) BOOST_PP_IIF(p##(61), 61, 62) +# define BOOST_PP_NODE_63(p) BOOST_PP_IIF(p##(63), 63, 64) +# define BOOST_PP_NODE_96(p) BOOST_PP_IIF(p##(96), BOOST_PP_NODE_80, BOOST_PP_NODE_112) +# define BOOST_PP_NODE_80(p) BOOST_PP_IIF(p##(80), BOOST_PP_NODE_72, BOOST_PP_NODE_88) +# define BOOST_PP_NODE_72(p) BOOST_PP_IIF(p##(72), BOOST_PP_NODE_68, BOOST_PP_NODE_76) +# define BOOST_PP_NODE_68(p) BOOST_PP_IIF(p##(68), BOOST_PP_NODE_66, BOOST_PP_NODE_70) +# define BOOST_PP_NODE_66(p) BOOST_PP_IIF(p##(66), BOOST_PP_NODE_65, BOOST_PP_NODE_67) +# define BOOST_PP_NODE_65(p) BOOST_PP_IIF(p##(65), 65, 66) +# define BOOST_PP_NODE_67(p) BOOST_PP_IIF(p##(67), 67, 68) +# define BOOST_PP_NODE_70(p) BOOST_PP_IIF(p##(70), BOOST_PP_NODE_69, BOOST_PP_NODE_71) +# define BOOST_PP_NODE_69(p) BOOST_PP_IIF(p##(69), 69, 70) +# define BOOST_PP_NODE_71(p) BOOST_PP_IIF(p##(71), 71, 72) +# define BOOST_PP_NODE_76(p) BOOST_PP_IIF(p##(76), BOOST_PP_NODE_74, BOOST_PP_NODE_78) +# define BOOST_PP_NODE_74(p) BOOST_PP_IIF(p##(74), BOOST_PP_NODE_73, BOOST_PP_NODE_75) +# define BOOST_PP_NODE_73(p) BOOST_PP_IIF(p##(73), 73, 74) +# define BOOST_PP_NODE_75(p) BOOST_PP_IIF(p##(75), 75, 76) +# define BOOST_PP_NODE_78(p) BOOST_PP_IIF(p##(78), BOOST_PP_NODE_77, BOOST_PP_NODE_79) +# define BOOST_PP_NODE_77(p) BOOST_PP_IIF(p##(77), 77, 78) +# define BOOST_PP_NODE_79(p) BOOST_PP_IIF(p##(79), 79, 80) +# define BOOST_PP_NODE_88(p) BOOST_PP_IIF(p##(88), BOOST_PP_NODE_84, BOOST_PP_NODE_92) +# define BOOST_PP_NODE_84(p) BOOST_PP_IIF(p##(84), BOOST_PP_NODE_82, BOOST_PP_NODE_86) +# define BOOST_PP_NODE_82(p) BOOST_PP_IIF(p##(82), BOOST_PP_NODE_81, BOOST_PP_NODE_83) +# define BOOST_PP_NODE_81(p) BOOST_PP_IIF(p##(81), 81, 82) +# define BOOST_PP_NODE_83(p) BOOST_PP_IIF(p##(83), 83, 84) +# define BOOST_PP_NODE_86(p) BOOST_PP_IIF(p##(86), BOOST_PP_NODE_85, BOOST_PP_NODE_87) +# define BOOST_PP_NODE_85(p) BOOST_PP_IIF(p##(85), 85, 86) +# define BOOST_PP_NODE_87(p) BOOST_PP_IIF(p##(87), 87, 88) +# define BOOST_PP_NODE_92(p) BOOST_PP_IIF(p##(92), BOOST_PP_NODE_90, BOOST_PP_NODE_94) +# define BOOST_PP_NODE_90(p) BOOST_PP_IIF(p##(90), BOOST_PP_NODE_89, BOOST_PP_NODE_91) +# define BOOST_PP_NODE_89(p) BOOST_PP_IIF(p##(89), 89, 90) +# define BOOST_PP_NODE_91(p) BOOST_PP_IIF(p##(91), 91, 92) +# define BOOST_PP_NODE_94(p) BOOST_PP_IIF(p##(94), BOOST_PP_NODE_93, BOOST_PP_NODE_95) +# define BOOST_PP_NODE_93(p) BOOST_PP_IIF(p##(93), 93, 94) +# define BOOST_PP_NODE_95(p) BOOST_PP_IIF(p##(95), 95, 96) +# define BOOST_PP_NODE_112(p) BOOST_PP_IIF(p##(112), BOOST_PP_NODE_104, BOOST_PP_NODE_120) +# define BOOST_PP_NODE_104(p) BOOST_PP_IIF(p##(104), BOOST_PP_NODE_100, BOOST_PP_NODE_108) +# define BOOST_PP_NODE_100(p) BOOST_PP_IIF(p##(100), BOOST_PP_NODE_98, BOOST_PP_NODE_102) +# define BOOST_PP_NODE_98(p) BOOST_PP_IIF(p##(98), BOOST_PP_NODE_97, BOOST_PP_NODE_99) +# define BOOST_PP_NODE_97(p) BOOST_PP_IIF(p##(97), 97, 98) +# define BOOST_PP_NODE_99(p) BOOST_PP_IIF(p##(99), 99, 100) +# define BOOST_PP_NODE_102(p) BOOST_PP_IIF(p##(102), BOOST_PP_NODE_101, BOOST_PP_NODE_103) +# define BOOST_PP_NODE_101(p) BOOST_PP_IIF(p##(101), 101, 102) +# define BOOST_PP_NODE_103(p) BOOST_PP_IIF(p##(103), 103, 104) +# define BOOST_PP_NODE_108(p) BOOST_PP_IIF(p##(108), BOOST_PP_NODE_106, BOOST_PP_NODE_110) +# define BOOST_PP_NODE_106(p) BOOST_PP_IIF(p##(106), BOOST_PP_NODE_105, BOOST_PP_NODE_107) +# define BOOST_PP_NODE_105(p) BOOST_PP_IIF(p##(105), 105, 106) +# define BOOST_PP_NODE_107(p) BOOST_PP_IIF(p##(107), 107, 108) +# define BOOST_PP_NODE_110(p) BOOST_PP_IIF(p##(110), BOOST_PP_NODE_109, BOOST_PP_NODE_111) +# define BOOST_PP_NODE_109(p) BOOST_PP_IIF(p##(109), 109, 110) +# define BOOST_PP_NODE_111(p) BOOST_PP_IIF(p##(111), 111, 112) +# define BOOST_PP_NODE_120(p) BOOST_PP_IIF(p##(120), BOOST_PP_NODE_116, BOOST_PP_NODE_124) +# define BOOST_PP_NODE_116(p) BOOST_PP_IIF(p##(116), BOOST_PP_NODE_114, BOOST_PP_NODE_118) +# define BOOST_PP_NODE_114(p) BOOST_PP_IIF(p##(114), BOOST_PP_NODE_113, BOOST_PP_NODE_115) +# define BOOST_PP_NODE_113(p) BOOST_PP_IIF(p##(113), 113, 114) +# define BOOST_PP_NODE_115(p) BOOST_PP_IIF(p##(115), 115, 116) +# define BOOST_PP_NODE_118(p) BOOST_PP_IIF(p##(118), BOOST_PP_NODE_117, BOOST_PP_NODE_119) +# define BOOST_PP_NODE_117(p) BOOST_PP_IIF(p##(117), 117, 118) +# define BOOST_PP_NODE_119(p) BOOST_PP_IIF(p##(119), 119, 120) +# define BOOST_PP_NODE_124(p) BOOST_PP_IIF(p##(124), BOOST_PP_NODE_122, BOOST_PP_NODE_126) +# define BOOST_PP_NODE_122(p) BOOST_PP_IIF(p##(122), BOOST_PP_NODE_121, BOOST_PP_NODE_123) +# define BOOST_PP_NODE_121(p) BOOST_PP_IIF(p##(121), 121, 122) +# define BOOST_PP_NODE_123(p) BOOST_PP_IIF(p##(123), 123, 124) +# define BOOST_PP_NODE_126(p) BOOST_PP_IIF(p##(126), BOOST_PP_NODE_125, BOOST_PP_NODE_127) +# define BOOST_PP_NODE_125(p) BOOST_PP_IIF(p##(125), 125, 126) +# define BOOST_PP_NODE_127(p) BOOST_PP_IIF(p##(127), 127, 128) +# define BOOST_PP_NODE_192(p) BOOST_PP_IIF(p##(192), BOOST_PP_NODE_160, BOOST_PP_NODE_224) +# define BOOST_PP_NODE_160(p) BOOST_PP_IIF(p##(160), BOOST_PP_NODE_144, BOOST_PP_NODE_176) +# define BOOST_PP_NODE_144(p) BOOST_PP_IIF(p##(144), BOOST_PP_NODE_136, BOOST_PP_NODE_152) +# define BOOST_PP_NODE_136(p) BOOST_PP_IIF(p##(136), BOOST_PP_NODE_132, BOOST_PP_NODE_140) +# define BOOST_PP_NODE_132(p) BOOST_PP_IIF(p##(132), BOOST_PP_NODE_130, BOOST_PP_NODE_134) +# define BOOST_PP_NODE_130(p) BOOST_PP_IIF(p##(130), BOOST_PP_NODE_129, BOOST_PP_NODE_131) +# define BOOST_PP_NODE_129(p) BOOST_PP_IIF(p##(129), 129, 130) +# define BOOST_PP_NODE_131(p) BOOST_PP_IIF(p##(131), 131, 132) +# define BOOST_PP_NODE_134(p) BOOST_PP_IIF(p##(134), BOOST_PP_NODE_133, BOOST_PP_NODE_135) +# define BOOST_PP_NODE_133(p) BOOST_PP_IIF(p##(133), 133, 134) +# define BOOST_PP_NODE_135(p) BOOST_PP_IIF(p##(135), 135, 136) +# define BOOST_PP_NODE_140(p) BOOST_PP_IIF(p##(140), BOOST_PP_NODE_138, BOOST_PP_NODE_142) +# define BOOST_PP_NODE_138(p) BOOST_PP_IIF(p##(138), BOOST_PP_NODE_137, BOOST_PP_NODE_139) +# define BOOST_PP_NODE_137(p) BOOST_PP_IIF(p##(137), 137, 138) +# define BOOST_PP_NODE_139(p) BOOST_PP_IIF(p##(139), 139, 140) +# define BOOST_PP_NODE_142(p) BOOST_PP_IIF(p##(142), BOOST_PP_NODE_141, BOOST_PP_NODE_143) +# define BOOST_PP_NODE_141(p) BOOST_PP_IIF(p##(141), 141, 142) +# define BOOST_PP_NODE_143(p) BOOST_PP_IIF(p##(143), 143, 144) +# define BOOST_PP_NODE_152(p) BOOST_PP_IIF(p##(152), BOOST_PP_NODE_148, BOOST_PP_NODE_156) +# define BOOST_PP_NODE_148(p) BOOST_PP_IIF(p##(148), BOOST_PP_NODE_146, BOOST_PP_NODE_150) +# define BOOST_PP_NODE_146(p) BOOST_PP_IIF(p##(146), BOOST_PP_NODE_145, BOOST_PP_NODE_147) +# define BOOST_PP_NODE_145(p) BOOST_PP_IIF(p##(145), 145, 146) +# define BOOST_PP_NODE_147(p) BOOST_PP_IIF(p##(147), 147, 148) +# define BOOST_PP_NODE_150(p) BOOST_PP_IIF(p##(150), BOOST_PP_NODE_149, BOOST_PP_NODE_151) +# define BOOST_PP_NODE_149(p) BOOST_PP_IIF(p##(149), 149, 150) +# define BOOST_PP_NODE_151(p) BOOST_PP_IIF(p##(151), 151, 152) +# define BOOST_PP_NODE_156(p) BOOST_PP_IIF(p##(156), BOOST_PP_NODE_154, BOOST_PP_NODE_158) +# define BOOST_PP_NODE_154(p) BOOST_PP_IIF(p##(154), BOOST_PP_NODE_153, BOOST_PP_NODE_155) +# define BOOST_PP_NODE_153(p) BOOST_PP_IIF(p##(153), 153, 154) +# define BOOST_PP_NODE_155(p) BOOST_PP_IIF(p##(155), 155, 156) +# define BOOST_PP_NODE_158(p) BOOST_PP_IIF(p##(158), BOOST_PP_NODE_157, BOOST_PP_NODE_159) +# define BOOST_PP_NODE_157(p) BOOST_PP_IIF(p##(157), 157, 158) +# define BOOST_PP_NODE_159(p) BOOST_PP_IIF(p##(159), 159, 160) +# define BOOST_PP_NODE_176(p) BOOST_PP_IIF(p##(176), BOOST_PP_NODE_168, BOOST_PP_NODE_184) +# define BOOST_PP_NODE_168(p) BOOST_PP_IIF(p##(168), BOOST_PP_NODE_164, BOOST_PP_NODE_172) +# define BOOST_PP_NODE_164(p) BOOST_PP_IIF(p##(164), BOOST_PP_NODE_162, BOOST_PP_NODE_166) +# define BOOST_PP_NODE_162(p) BOOST_PP_IIF(p##(162), BOOST_PP_NODE_161, BOOST_PP_NODE_163) +# define BOOST_PP_NODE_161(p) BOOST_PP_IIF(p##(161), 161, 162) +# define BOOST_PP_NODE_163(p) BOOST_PP_IIF(p##(163), 163, 164) +# define BOOST_PP_NODE_166(p) BOOST_PP_IIF(p##(166), BOOST_PP_NODE_165, BOOST_PP_NODE_167) +# define BOOST_PP_NODE_165(p) BOOST_PP_IIF(p##(165), 165, 166) +# define BOOST_PP_NODE_167(p) BOOST_PP_IIF(p##(167), 167, 168) +# define BOOST_PP_NODE_172(p) BOOST_PP_IIF(p##(172), BOOST_PP_NODE_170, BOOST_PP_NODE_174) +# define BOOST_PP_NODE_170(p) BOOST_PP_IIF(p##(170), BOOST_PP_NODE_169, BOOST_PP_NODE_171) +# define BOOST_PP_NODE_169(p) BOOST_PP_IIF(p##(169), 169, 170) +# define BOOST_PP_NODE_171(p) BOOST_PP_IIF(p##(171), 171, 172) +# define BOOST_PP_NODE_174(p) BOOST_PP_IIF(p##(174), BOOST_PP_NODE_173, BOOST_PP_NODE_175) +# define BOOST_PP_NODE_173(p) BOOST_PP_IIF(p##(173), 173, 174) +# define BOOST_PP_NODE_175(p) BOOST_PP_IIF(p##(175), 175, 176) +# define BOOST_PP_NODE_184(p) BOOST_PP_IIF(p##(184), BOOST_PP_NODE_180, BOOST_PP_NODE_188) +# define BOOST_PP_NODE_180(p) BOOST_PP_IIF(p##(180), BOOST_PP_NODE_178, BOOST_PP_NODE_182) +# define BOOST_PP_NODE_178(p) BOOST_PP_IIF(p##(178), BOOST_PP_NODE_177, BOOST_PP_NODE_179) +# define BOOST_PP_NODE_177(p) BOOST_PP_IIF(p##(177), 177, 178) +# define BOOST_PP_NODE_179(p) BOOST_PP_IIF(p##(179), 179, 180) +# define BOOST_PP_NODE_182(p) BOOST_PP_IIF(p##(182), BOOST_PP_NODE_181, BOOST_PP_NODE_183) +# define BOOST_PP_NODE_181(p) BOOST_PP_IIF(p##(181), 181, 182) +# define BOOST_PP_NODE_183(p) BOOST_PP_IIF(p##(183), 183, 184) +# define BOOST_PP_NODE_188(p) BOOST_PP_IIF(p##(188), BOOST_PP_NODE_186, BOOST_PP_NODE_190) +# define BOOST_PP_NODE_186(p) BOOST_PP_IIF(p##(186), BOOST_PP_NODE_185, BOOST_PP_NODE_187) +# define BOOST_PP_NODE_185(p) BOOST_PP_IIF(p##(185), 185, 186) +# define BOOST_PP_NODE_187(p) BOOST_PP_IIF(p##(187), 187, 188) +# define BOOST_PP_NODE_190(p) BOOST_PP_IIF(p##(190), BOOST_PP_NODE_189, BOOST_PP_NODE_191) +# define BOOST_PP_NODE_189(p) BOOST_PP_IIF(p##(189), 189, 190) +# define BOOST_PP_NODE_191(p) BOOST_PP_IIF(p##(191), 191, 192) +# define BOOST_PP_NODE_224(p) BOOST_PP_IIF(p##(224), BOOST_PP_NODE_208, BOOST_PP_NODE_240) +# define BOOST_PP_NODE_208(p) BOOST_PP_IIF(p##(208), BOOST_PP_NODE_200, BOOST_PP_NODE_216) +# define BOOST_PP_NODE_200(p) BOOST_PP_IIF(p##(200), BOOST_PP_NODE_196, BOOST_PP_NODE_204) +# define BOOST_PP_NODE_196(p) BOOST_PP_IIF(p##(196), BOOST_PP_NODE_194, BOOST_PP_NODE_198) +# define BOOST_PP_NODE_194(p) BOOST_PP_IIF(p##(194), BOOST_PP_NODE_193, BOOST_PP_NODE_195) +# define BOOST_PP_NODE_193(p) BOOST_PP_IIF(p##(193), 193, 194) +# define BOOST_PP_NODE_195(p) BOOST_PP_IIF(p##(195), 195, 196) +# define BOOST_PP_NODE_198(p) BOOST_PP_IIF(p##(198), BOOST_PP_NODE_197, BOOST_PP_NODE_199) +# define BOOST_PP_NODE_197(p) BOOST_PP_IIF(p##(197), 197, 198) +# define BOOST_PP_NODE_199(p) BOOST_PP_IIF(p##(199), 199, 200) +# define BOOST_PP_NODE_204(p) BOOST_PP_IIF(p##(204), BOOST_PP_NODE_202, BOOST_PP_NODE_206) +# define BOOST_PP_NODE_202(p) BOOST_PP_IIF(p##(202), BOOST_PP_NODE_201, BOOST_PP_NODE_203) +# define BOOST_PP_NODE_201(p) BOOST_PP_IIF(p##(201), 201, 202) +# define BOOST_PP_NODE_203(p) BOOST_PP_IIF(p##(203), 203, 204) +# define BOOST_PP_NODE_206(p) BOOST_PP_IIF(p##(206), BOOST_PP_NODE_205, BOOST_PP_NODE_207) +# define BOOST_PP_NODE_205(p) BOOST_PP_IIF(p##(205), 205, 206) +# define BOOST_PP_NODE_207(p) BOOST_PP_IIF(p##(207), 207, 208) +# define BOOST_PP_NODE_216(p) BOOST_PP_IIF(p##(216), BOOST_PP_NODE_212, BOOST_PP_NODE_220) +# define BOOST_PP_NODE_212(p) BOOST_PP_IIF(p##(212), BOOST_PP_NODE_210, BOOST_PP_NODE_214) +# define BOOST_PP_NODE_210(p) BOOST_PP_IIF(p##(210), BOOST_PP_NODE_209, BOOST_PP_NODE_211) +# define BOOST_PP_NODE_209(p) BOOST_PP_IIF(p##(209), 209, 210) +# define BOOST_PP_NODE_211(p) BOOST_PP_IIF(p##(211), 211, 212) +# define BOOST_PP_NODE_214(p) BOOST_PP_IIF(p##(214), BOOST_PP_NODE_213, BOOST_PP_NODE_215) +# define BOOST_PP_NODE_213(p) BOOST_PP_IIF(p##(213), 213, 214) +# define BOOST_PP_NODE_215(p) BOOST_PP_IIF(p##(215), 215, 216) +# define BOOST_PP_NODE_220(p) BOOST_PP_IIF(p##(220), BOOST_PP_NODE_218, BOOST_PP_NODE_222) +# define BOOST_PP_NODE_218(p) BOOST_PP_IIF(p##(218), BOOST_PP_NODE_217, BOOST_PP_NODE_219) +# define BOOST_PP_NODE_217(p) BOOST_PP_IIF(p##(217), 217, 218) +# define BOOST_PP_NODE_219(p) BOOST_PP_IIF(p##(219), 219, 220) +# define BOOST_PP_NODE_222(p) BOOST_PP_IIF(p##(222), BOOST_PP_NODE_221, BOOST_PP_NODE_223) +# define BOOST_PP_NODE_221(p) BOOST_PP_IIF(p##(221), 221, 222) +# define BOOST_PP_NODE_223(p) BOOST_PP_IIF(p##(223), 223, 224) +# define BOOST_PP_NODE_240(p) BOOST_PP_IIF(p##(240), BOOST_PP_NODE_232, BOOST_PP_NODE_248) +# define BOOST_PP_NODE_232(p) BOOST_PP_IIF(p##(232), BOOST_PP_NODE_228, BOOST_PP_NODE_236) +# define BOOST_PP_NODE_228(p) BOOST_PP_IIF(p##(228), BOOST_PP_NODE_226, BOOST_PP_NODE_230) +# define BOOST_PP_NODE_226(p) BOOST_PP_IIF(p##(226), BOOST_PP_NODE_225, BOOST_PP_NODE_227) +# define BOOST_PP_NODE_225(p) BOOST_PP_IIF(p##(225), 225, 226) +# define BOOST_PP_NODE_227(p) BOOST_PP_IIF(p##(227), 227, 228) +# define BOOST_PP_NODE_230(p) BOOST_PP_IIF(p##(230), BOOST_PP_NODE_229, BOOST_PP_NODE_231) +# define BOOST_PP_NODE_229(p) BOOST_PP_IIF(p##(229), 229, 230) +# define BOOST_PP_NODE_231(p) BOOST_PP_IIF(p##(231), 231, 232) +# define BOOST_PP_NODE_236(p) BOOST_PP_IIF(p##(236), BOOST_PP_NODE_234, BOOST_PP_NODE_238) +# define BOOST_PP_NODE_234(p) BOOST_PP_IIF(p##(234), BOOST_PP_NODE_233, BOOST_PP_NODE_235) +# define BOOST_PP_NODE_233(p) BOOST_PP_IIF(p##(233), 233, 234) +# define BOOST_PP_NODE_235(p) BOOST_PP_IIF(p##(235), 235, 236) +# define BOOST_PP_NODE_238(p) BOOST_PP_IIF(p##(238), BOOST_PP_NODE_237, BOOST_PP_NODE_239) +# define BOOST_PP_NODE_237(p) BOOST_PP_IIF(p##(237), 237, 238) +# define BOOST_PP_NODE_239(p) BOOST_PP_IIF(p##(239), 239, 240) +# define BOOST_PP_NODE_248(p) BOOST_PP_IIF(p##(248), BOOST_PP_NODE_244, BOOST_PP_NODE_252) +# define BOOST_PP_NODE_244(p) BOOST_PP_IIF(p##(244), BOOST_PP_NODE_242, BOOST_PP_NODE_246) +# define BOOST_PP_NODE_242(p) BOOST_PP_IIF(p##(242), BOOST_PP_NODE_241, BOOST_PP_NODE_243) +# define BOOST_PP_NODE_241(p) BOOST_PP_IIF(p##(241), 241, 242) +# define BOOST_PP_NODE_243(p) BOOST_PP_IIF(p##(243), 243, 244) +# define BOOST_PP_NODE_246(p) BOOST_PP_IIF(p##(246), BOOST_PP_NODE_245, BOOST_PP_NODE_247) +# define BOOST_PP_NODE_245(p) BOOST_PP_IIF(p##(245), 245, 246) +# define BOOST_PP_NODE_247(p) BOOST_PP_IIF(p##(247), 247, 248) +# define BOOST_PP_NODE_252(p) BOOST_PP_IIF(p##(252), BOOST_PP_NODE_250, BOOST_PP_NODE_254) +# define BOOST_PP_NODE_250(p) BOOST_PP_IIF(p##(250), BOOST_PP_NODE_249, BOOST_PP_NODE_251) +# define BOOST_PP_NODE_249(p) BOOST_PP_IIF(p##(249), 249, 250) +# define BOOST_PP_NODE_251(p) BOOST_PP_IIF(p##(251), 251, 252) +# define BOOST_PP_NODE_254(p) BOOST_PP_IIF(p##(254), BOOST_PP_NODE_253, BOOST_PP_NODE_255) +# define BOOST_PP_NODE_253(p) BOOST_PP_IIF(p##(253), 253, 254) +# define BOOST_PP_NODE_255(p) BOOST_PP_IIF(p##(255), 255, 256) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/is_binary.hpp b/plugin/wave/include/boost/preprocessor/detail/is_binary.hpp new file mode 100644 index 0000000..3428833 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/is_binary.hpp @@ -0,0 +1,30 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_IS_BINARY_HPP +# define BOOST_PREPROCESSOR_DETAIL_IS_BINARY_HPP +# +# include +# include +# +# /* BOOST_PP_IS_BINARY */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_IS_BINARY(x) BOOST_PP_CHECK(x, BOOST_PP_IS_BINARY_CHECK) +# else +# define BOOST_PP_IS_BINARY(x) BOOST_PP_IS_BINARY_I(x) +# define BOOST_PP_IS_BINARY_I(x) BOOST_PP_CHECK(x, BOOST_PP_IS_BINARY_CHECK) +# endif +# +# define BOOST_PP_IS_BINARY_CHECK(a, b) 1 +# define BOOST_PP_CHECK_RESULT_BOOST_PP_IS_BINARY_CHECK 0, BOOST_PP_NIL +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/is_nullary.hpp b/plugin/wave/include/boost/preprocessor/detail/is_nullary.hpp new file mode 100644 index 0000000..dee4075 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/is_nullary.hpp @@ -0,0 +1,30 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_IS_NULLARY_HPP +# define BOOST_PREPROCESSOR_DETAIL_IS_NULLARY_HPP +# +# include +# include +# +# /* BOOST_PP_IS_NULLARY */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_IS_NULLARY(x) BOOST_PP_CHECK(x, BOOST_PP_IS_NULLARY_CHECK) +# else +# define BOOST_PP_IS_NULLARY(x) BOOST_PP_IS_NULLARY_I(x) +# define BOOST_PP_IS_NULLARY_I(x) BOOST_PP_CHECK(x, BOOST_PP_IS_NULLARY_CHECK) +# endif +# +# define BOOST_PP_IS_NULLARY_CHECK() 1 +# define BOOST_PP_CHECK_RESULT_BOOST_PP_IS_NULLARY_CHECK 0, BOOST_PP_NIL +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/is_unary.hpp b/plugin/wave/include/boost/preprocessor/detail/is_unary.hpp new file mode 100644 index 0000000..e73cdfb --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/is_unary.hpp @@ -0,0 +1,30 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_IS_UNARY_HPP +# define BOOST_PREPROCESSOR_DETAIL_IS_UNARY_HPP +# +# include +# include +# +# /* BOOST_PP_IS_UNARY */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_IS_UNARY(x) BOOST_PP_CHECK(x, BOOST_PP_IS_UNARY_CHECK) +# else +# define BOOST_PP_IS_UNARY(x) BOOST_PP_IS_UNARY_I(x) +# define BOOST_PP_IS_UNARY_I(x) BOOST_PP_CHECK(x, BOOST_PP_IS_UNARY_CHECK) +# endif +# +# define BOOST_PP_IS_UNARY_CHECK(a) 1 +# define BOOST_PP_CHECK_RESULT_BOOST_PP_IS_UNARY_CHECK 0, BOOST_PP_NIL +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/null.hpp b/plugin/wave/include/boost/preprocessor/detail/null.hpp new file mode 100644 index 0000000..5eb0bd4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/null.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_NULL_HPP +# define BOOST_PREPROCESSOR_DETAIL_NULL_HPP +# +# /* empty file */ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/detail/split.hpp b/plugin/wave/include/boost/preprocessor/detail/split.hpp new file mode 100644 index 0000000..f28a723 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/detail/split.hpp @@ -0,0 +1,35 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# ifndef BOOST_PREPROCESSOR_DETAIL_SPLIT_HPP +# define BOOST_PREPROCESSOR_DETAIL_SPLIT_HPP +# +# include +# +# /* BOOST_PP_SPLIT */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SPLIT(n, im) BOOST_PP_SPLIT_I((n, im)) +# define BOOST_PP_SPLIT_I(par) BOOST_PP_SPLIT_II ## par +# define BOOST_PP_SPLIT_II(n, a, b) BOOST_PP_SPLIT_ ## n(a, b) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_SPLIT(n, im) BOOST_PP_SPLIT_I(n((im))) +# define BOOST_PP_SPLIT_I(n) BOOST_PP_SPLIT_ID(BOOST_PP_SPLIT_II_ ## n) +# define BOOST_PP_SPLIT_II_0(s) BOOST_PP_SPLIT_ID(BOOST_PP_SPLIT_0 s) +# define BOOST_PP_SPLIT_II_1(s) BOOST_PP_SPLIT_ID(BOOST_PP_SPLIT_1 s) +# define BOOST_PP_SPLIT_ID(id) id +# else +# define BOOST_PP_SPLIT(n, im) BOOST_PP_SPLIT_I(n)(im) +# define BOOST_PP_SPLIT_I(n) BOOST_PP_SPLIT_ ## n +# endif +# +# define BOOST_PP_SPLIT_0(a, b) a +# define BOOST_PP_SPLIT_1(a, b) b +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/empty.hpp b/plugin/wave/include/boost/preprocessor/empty.hpp new file mode 100644 index 0000000..116ef74 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/empty.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_EMPTY_HPP +# define BOOST_PREPROCESSOR_EMPTY_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum.hpp b/plugin/wave/include/boost/preprocessor/enum.hpp new file mode 100644 index 0000000..ae05bb0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_HPP +# define BOOST_PREPROCESSOR_ENUM_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum_params.hpp b/plugin/wave/include/boost/preprocessor/enum_params.hpp new file mode 100644 index 0000000..414f8aa --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum_params.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_HPP +# define BOOST_PREPROCESSOR_ENUM_PARAMS_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum_params_with_a_default.hpp b/plugin/wave/include/boost/preprocessor/enum_params_with_a_default.hpp new file mode 100644 index 0000000..fd1ad4c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum_params_with_a_default.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_A_DEFAULT_HPP +# define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_A_DEFAULT_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum_params_with_defaults.hpp b/plugin/wave/include/boost/preprocessor/enum_params_with_defaults.hpp new file mode 100644 index 0000000..e58fa3e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum_params_with_defaults.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_DEFAULTS_HPP +# define BOOST_PREPROCESSOR_ENUM_PARAMS_WITH_DEFAULTS_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum_shifted.hpp b/plugin/wave/include/boost/preprocessor/enum_shifted.hpp new file mode 100644 index 0000000..aa6a698 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum_shifted.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_SHIFTED_HPP +# define BOOST_PREPROCESSOR_ENUM_SHIFTED_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/enum_shifted_params.hpp b/plugin/wave/include/boost/preprocessor/enum_shifted_params.hpp new file mode 100644 index 0000000..462c642 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/enum_shifted_params.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ENUM_SHIFTED_PARAMS_HPP +# define BOOST_PREPROCESSOR_ENUM_SHIFTED_PARAMS_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/expand.hpp b/plugin/wave/include/boost/preprocessor/expand.hpp new file mode 100644 index 0000000..8c5d972 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/expand.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_EXPAND_HPP +# define BOOST_PREPROCESSOR_EXPAND_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/expr_if.hpp b/plugin/wave/include/boost/preprocessor/expr_if.hpp new file mode 100644 index 0000000..f93e29b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/expr_if.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_EXPR_IF_HPP +# define BOOST_PREPROCESSOR_EXPR_IF_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities.hpp b/plugin/wave/include/boost/preprocessor/facilities.hpp new file mode 100644 index 0000000..c20547c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities.hpp @@ -0,0 +1,23 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_HPP +# define BOOST_PREPROCESSOR_FACILITIES_HPP +# +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/apply.hpp b/plugin/wave/include/boost/preprocessor/facilities/apply.hpp new file mode 100644 index 0000000..e7d8c36 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/apply.hpp @@ -0,0 +1,34 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_APPLY_HPP +# define BOOST_PREPROCESSOR_FACILITIES_APPLY_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_APPLY */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_APPLY(x) BOOST_PP_APPLY_I(x) +# define BOOST_PP_APPLY_I(x) BOOST_PP_EXPR_IIF(BOOST_PP_IS_UNARY(x), BOOST_PP_TUPLE_REM_1 x) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_BCC() +# define BOOST_PP_APPLY(x) BOOST_PP_APPLY_I(x) +# define BOOST_PP_APPLY_I(x) BOOST_PP_APPLY_ ## x +# define BOOST_PP_APPLY_(x) x +# define BOOST_PP_APPLY_BOOST_PP_NIL +# else +# define BOOST_PP_APPLY(x) BOOST_PP_EXPR_IIF(BOOST_PP_IS_UNARY(x), BOOST_PP_TUPLE_REM_1 x) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/detail/is_empty.hpp b/plugin/wave/include/boost/preprocessor/facilities/detail/is_empty.hpp new file mode 100644 index 0000000..e044970 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/detail/is_empty.hpp @@ -0,0 +1,55 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +#ifndef BOOST_PREPROCESSOR_DETAIL_IS_EMPTY_HPP +#define BOOST_PREPROCESSOR_DETAIL_IS_EMPTY_HPP + +#include + +#if BOOST_PP_VARIADICS_MSVC + +# pragma warning(once:4002) + +#define BOOST_PP_DETAIL_IS_EMPTY_IIF_0(t, b) b +#define BOOST_PP_DETAIL_IS_EMPTY_IIF_1(t, b) t + +#else + +#define BOOST_PP_DETAIL_IS_EMPTY_IIF_0(t, ...) __VA_ARGS__ +#define BOOST_PP_DETAIL_IS_EMPTY_IIF_1(t, ...) t + +#endif + +#if BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 + +#define BOOST_PP_DETAIL_IS_EMPTY_PROCESS(param) \ + BOOST_PP_IS_BEGIN_PARENS \ + ( \ + BOOST_PP_DETAIL_IS_EMPTY_NON_FUNCTION_C param () \ + ) \ +/**/ + +#else + +#define BOOST_PP_DETAIL_IS_EMPTY_PROCESS(...) \ + BOOST_PP_IS_BEGIN_PARENS \ + ( \ + BOOST_PP_DETAIL_IS_EMPTY_NON_FUNCTION_C __VA_ARGS__ () \ + ) \ +/**/ + +#endif + +#define BOOST_PP_DETAIL_IS_EMPTY_PRIMITIVE_CAT(a, b) a ## b +#define BOOST_PP_DETAIL_IS_EMPTY_IIF(bit) BOOST_PP_DETAIL_IS_EMPTY_PRIMITIVE_CAT(BOOST_PP_DETAIL_IS_EMPTY_IIF_,bit) +#define BOOST_PP_DETAIL_IS_EMPTY_NON_FUNCTION_C(...) () + +#endif /* BOOST_PREPROCESSOR_DETAIL_IS_EMPTY_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/facilities/empty.hpp b/plugin/wave/include/boost/preprocessor/facilities/empty.hpp new file mode 100644 index 0000000..6f215dc --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/empty.hpp @@ -0,0 +1,23 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_EMPTY_HPP +# define BOOST_PREPROCESSOR_FACILITIES_EMPTY_HPP +# +# include +# +# /* BOOST_PP_EMPTY */ +# +# define BOOST_PP_EMPTY() +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/expand.hpp b/plugin/wave/include/boost/preprocessor/facilities/expand.hpp new file mode 100644 index 0000000..c8661a1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/expand.hpp @@ -0,0 +1,28 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_EXPAND_HPP +# define BOOST_PREPROCESSOR_FACILITIES_EXPAND_HPP +# +# include +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_EXPAND(x) BOOST_PP_EXPAND_I(x) +# else +# define BOOST_PP_EXPAND(x) BOOST_PP_EXPAND_OO((x)) +# define BOOST_PP_EXPAND_OO(par) BOOST_PP_EXPAND_I ## par +# endif +# +# define BOOST_PP_EXPAND_I(x) x +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/identity.hpp b/plugin/wave/include/boost/preprocessor/facilities/identity.hpp new file mode 100644 index 0000000..8a7834d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/identity.hpp @@ -0,0 +1,27 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# /* Revised by Edward Diener (2015) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_IDENTITY_HPP +# define BOOST_PREPROCESSOR_FACILITIES_IDENTITY_HPP +# +# include +# include +# +# /* BOOST_PP_IDENTITY */ +# +# define BOOST_PP_IDENTITY(item) item BOOST_PP_EMPTY +# +# define BOOST_PP_IDENTITY_N(item,n) item BOOST_PP_TUPLE_EAT_N(n) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/intercept.hpp b/plugin/wave/include/boost/preprocessor/facilities/intercept.hpp new file mode 100644 index 0000000..41dcc6a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/intercept.hpp @@ -0,0 +1,277 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_HPP +# define BOOST_PREPROCESSOR_FACILITIES_INTERCEPT_HPP +# +# /* BOOST_PP_INTERCEPT */ +# +# define BOOST_PP_INTERCEPT BOOST_PP_INTERCEPT_ +# +# define BOOST_PP_INTERCEPT_0 +# define BOOST_PP_INTERCEPT_1 +# define BOOST_PP_INTERCEPT_2 +# define BOOST_PP_INTERCEPT_3 +# define BOOST_PP_INTERCEPT_4 +# define BOOST_PP_INTERCEPT_5 +# define BOOST_PP_INTERCEPT_6 +# define BOOST_PP_INTERCEPT_7 +# define BOOST_PP_INTERCEPT_8 +# define BOOST_PP_INTERCEPT_9 +# define BOOST_PP_INTERCEPT_10 +# define BOOST_PP_INTERCEPT_11 +# define BOOST_PP_INTERCEPT_12 +# define BOOST_PP_INTERCEPT_13 +# define BOOST_PP_INTERCEPT_14 +# define BOOST_PP_INTERCEPT_15 +# define BOOST_PP_INTERCEPT_16 +# define BOOST_PP_INTERCEPT_17 +# define BOOST_PP_INTERCEPT_18 +# define BOOST_PP_INTERCEPT_19 +# define BOOST_PP_INTERCEPT_20 +# define BOOST_PP_INTERCEPT_21 +# define BOOST_PP_INTERCEPT_22 +# define BOOST_PP_INTERCEPT_23 +# define BOOST_PP_INTERCEPT_24 +# define BOOST_PP_INTERCEPT_25 +# define BOOST_PP_INTERCEPT_26 +# define BOOST_PP_INTERCEPT_27 +# define BOOST_PP_INTERCEPT_28 +# define BOOST_PP_INTERCEPT_29 +# define BOOST_PP_INTERCEPT_30 +# define BOOST_PP_INTERCEPT_31 +# define BOOST_PP_INTERCEPT_32 +# define BOOST_PP_INTERCEPT_33 +# define BOOST_PP_INTERCEPT_34 +# define BOOST_PP_INTERCEPT_35 +# define BOOST_PP_INTERCEPT_36 +# define BOOST_PP_INTERCEPT_37 +# define BOOST_PP_INTERCEPT_38 +# define BOOST_PP_INTERCEPT_39 +# define BOOST_PP_INTERCEPT_40 +# define BOOST_PP_INTERCEPT_41 +# define BOOST_PP_INTERCEPT_42 +# define BOOST_PP_INTERCEPT_43 +# define BOOST_PP_INTERCEPT_44 +# define BOOST_PP_INTERCEPT_45 +# define BOOST_PP_INTERCEPT_46 +# define BOOST_PP_INTERCEPT_47 +# define BOOST_PP_INTERCEPT_48 +# define BOOST_PP_INTERCEPT_49 +# define BOOST_PP_INTERCEPT_50 +# define BOOST_PP_INTERCEPT_51 +# define BOOST_PP_INTERCEPT_52 +# define BOOST_PP_INTERCEPT_53 +# define BOOST_PP_INTERCEPT_54 +# define BOOST_PP_INTERCEPT_55 +# define BOOST_PP_INTERCEPT_56 +# define BOOST_PP_INTERCEPT_57 +# define BOOST_PP_INTERCEPT_58 +# define BOOST_PP_INTERCEPT_59 +# define BOOST_PP_INTERCEPT_60 +# define BOOST_PP_INTERCEPT_61 +# define BOOST_PP_INTERCEPT_62 +# define BOOST_PP_INTERCEPT_63 +# define BOOST_PP_INTERCEPT_64 +# define BOOST_PP_INTERCEPT_65 +# define BOOST_PP_INTERCEPT_66 +# define BOOST_PP_INTERCEPT_67 +# define BOOST_PP_INTERCEPT_68 +# define BOOST_PP_INTERCEPT_69 +# define BOOST_PP_INTERCEPT_70 +# define BOOST_PP_INTERCEPT_71 +# define BOOST_PP_INTERCEPT_72 +# define BOOST_PP_INTERCEPT_73 +# define BOOST_PP_INTERCEPT_74 +# define BOOST_PP_INTERCEPT_75 +# define BOOST_PP_INTERCEPT_76 +# define BOOST_PP_INTERCEPT_77 +# define BOOST_PP_INTERCEPT_78 +# define BOOST_PP_INTERCEPT_79 +# define BOOST_PP_INTERCEPT_80 +# define BOOST_PP_INTERCEPT_81 +# define BOOST_PP_INTERCEPT_82 +# define BOOST_PP_INTERCEPT_83 +# define BOOST_PP_INTERCEPT_84 +# define BOOST_PP_INTERCEPT_85 +# define BOOST_PP_INTERCEPT_86 +# define BOOST_PP_INTERCEPT_87 +# define BOOST_PP_INTERCEPT_88 +# define BOOST_PP_INTERCEPT_89 +# define BOOST_PP_INTERCEPT_90 +# define BOOST_PP_INTERCEPT_91 +# define BOOST_PP_INTERCEPT_92 +# define BOOST_PP_INTERCEPT_93 +# define BOOST_PP_INTERCEPT_94 +# define BOOST_PP_INTERCEPT_95 +# define BOOST_PP_INTERCEPT_96 +# define BOOST_PP_INTERCEPT_97 +# define BOOST_PP_INTERCEPT_98 +# define BOOST_PP_INTERCEPT_99 +# define BOOST_PP_INTERCEPT_100 +# define BOOST_PP_INTERCEPT_101 +# define BOOST_PP_INTERCEPT_102 +# define BOOST_PP_INTERCEPT_103 +# define BOOST_PP_INTERCEPT_104 +# define BOOST_PP_INTERCEPT_105 +# define BOOST_PP_INTERCEPT_106 +# define BOOST_PP_INTERCEPT_107 +# define BOOST_PP_INTERCEPT_108 +# define BOOST_PP_INTERCEPT_109 +# define BOOST_PP_INTERCEPT_110 +# define BOOST_PP_INTERCEPT_111 +# define BOOST_PP_INTERCEPT_112 +# define BOOST_PP_INTERCEPT_113 +# define BOOST_PP_INTERCEPT_114 +# define BOOST_PP_INTERCEPT_115 +# define BOOST_PP_INTERCEPT_116 +# define BOOST_PP_INTERCEPT_117 +# define BOOST_PP_INTERCEPT_118 +# define BOOST_PP_INTERCEPT_119 +# define BOOST_PP_INTERCEPT_120 +# define BOOST_PP_INTERCEPT_121 +# define BOOST_PP_INTERCEPT_122 +# define BOOST_PP_INTERCEPT_123 +# define BOOST_PP_INTERCEPT_124 +# define BOOST_PP_INTERCEPT_125 +# define BOOST_PP_INTERCEPT_126 +# define BOOST_PP_INTERCEPT_127 +# define BOOST_PP_INTERCEPT_128 +# define BOOST_PP_INTERCEPT_129 +# define BOOST_PP_INTERCEPT_130 +# define BOOST_PP_INTERCEPT_131 +# define BOOST_PP_INTERCEPT_132 +# define BOOST_PP_INTERCEPT_133 +# define BOOST_PP_INTERCEPT_134 +# define BOOST_PP_INTERCEPT_135 +# define BOOST_PP_INTERCEPT_136 +# define BOOST_PP_INTERCEPT_137 +# define BOOST_PP_INTERCEPT_138 +# define BOOST_PP_INTERCEPT_139 +# define BOOST_PP_INTERCEPT_140 +# define BOOST_PP_INTERCEPT_141 +# define BOOST_PP_INTERCEPT_142 +# define BOOST_PP_INTERCEPT_143 +# define BOOST_PP_INTERCEPT_144 +# define BOOST_PP_INTERCEPT_145 +# define BOOST_PP_INTERCEPT_146 +# define BOOST_PP_INTERCEPT_147 +# define BOOST_PP_INTERCEPT_148 +# define BOOST_PP_INTERCEPT_149 +# define BOOST_PP_INTERCEPT_150 +# define BOOST_PP_INTERCEPT_151 +# define BOOST_PP_INTERCEPT_152 +# define BOOST_PP_INTERCEPT_153 +# define BOOST_PP_INTERCEPT_154 +# define BOOST_PP_INTERCEPT_155 +# define BOOST_PP_INTERCEPT_156 +# define BOOST_PP_INTERCEPT_157 +# define BOOST_PP_INTERCEPT_158 +# define BOOST_PP_INTERCEPT_159 +# define BOOST_PP_INTERCEPT_160 +# define BOOST_PP_INTERCEPT_161 +# define BOOST_PP_INTERCEPT_162 +# define BOOST_PP_INTERCEPT_163 +# define BOOST_PP_INTERCEPT_164 +# define BOOST_PP_INTERCEPT_165 +# define BOOST_PP_INTERCEPT_166 +# define BOOST_PP_INTERCEPT_167 +# define BOOST_PP_INTERCEPT_168 +# define BOOST_PP_INTERCEPT_169 +# define BOOST_PP_INTERCEPT_170 +# define BOOST_PP_INTERCEPT_171 +# define BOOST_PP_INTERCEPT_172 +# define BOOST_PP_INTERCEPT_173 +# define BOOST_PP_INTERCEPT_174 +# define BOOST_PP_INTERCEPT_175 +# define BOOST_PP_INTERCEPT_176 +# define BOOST_PP_INTERCEPT_177 +# define BOOST_PP_INTERCEPT_178 +# define BOOST_PP_INTERCEPT_179 +# define BOOST_PP_INTERCEPT_180 +# define BOOST_PP_INTERCEPT_181 +# define BOOST_PP_INTERCEPT_182 +# define BOOST_PP_INTERCEPT_183 +# define BOOST_PP_INTERCEPT_184 +# define BOOST_PP_INTERCEPT_185 +# define BOOST_PP_INTERCEPT_186 +# define BOOST_PP_INTERCEPT_187 +# define BOOST_PP_INTERCEPT_188 +# define BOOST_PP_INTERCEPT_189 +# define BOOST_PP_INTERCEPT_190 +# define BOOST_PP_INTERCEPT_191 +# define BOOST_PP_INTERCEPT_192 +# define BOOST_PP_INTERCEPT_193 +# define BOOST_PP_INTERCEPT_194 +# define BOOST_PP_INTERCEPT_195 +# define BOOST_PP_INTERCEPT_196 +# define BOOST_PP_INTERCEPT_197 +# define BOOST_PP_INTERCEPT_198 +# define BOOST_PP_INTERCEPT_199 +# define BOOST_PP_INTERCEPT_200 +# define BOOST_PP_INTERCEPT_201 +# define BOOST_PP_INTERCEPT_202 +# define BOOST_PP_INTERCEPT_203 +# define BOOST_PP_INTERCEPT_204 +# define BOOST_PP_INTERCEPT_205 +# define BOOST_PP_INTERCEPT_206 +# define BOOST_PP_INTERCEPT_207 +# define BOOST_PP_INTERCEPT_208 +# define BOOST_PP_INTERCEPT_209 +# define BOOST_PP_INTERCEPT_210 +# define BOOST_PP_INTERCEPT_211 +# define BOOST_PP_INTERCEPT_212 +# define BOOST_PP_INTERCEPT_213 +# define BOOST_PP_INTERCEPT_214 +# define BOOST_PP_INTERCEPT_215 +# define BOOST_PP_INTERCEPT_216 +# define BOOST_PP_INTERCEPT_217 +# define BOOST_PP_INTERCEPT_218 +# define BOOST_PP_INTERCEPT_219 +# define BOOST_PP_INTERCEPT_220 +# define BOOST_PP_INTERCEPT_221 +# define BOOST_PP_INTERCEPT_222 +# define BOOST_PP_INTERCEPT_223 +# define BOOST_PP_INTERCEPT_224 +# define BOOST_PP_INTERCEPT_225 +# define BOOST_PP_INTERCEPT_226 +# define BOOST_PP_INTERCEPT_227 +# define BOOST_PP_INTERCEPT_228 +# define BOOST_PP_INTERCEPT_229 +# define BOOST_PP_INTERCEPT_230 +# define BOOST_PP_INTERCEPT_231 +# define BOOST_PP_INTERCEPT_232 +# define BOOST_PP_INTERCEPT_233 +# define BOOST_PP_INTERCEPT_234 +# define BOOST_PP_INTERCEPT_235 +# define BOOST_PP_INTERCEPT_236 +# define BOOST_PP_INTERCEPT_237 +# define BOOST_PP_INTERCEPT_238 +# define BOOST_PP_INTERCEPT_239 +# define BOOST_PP_INTERCEPT_240 +# define BOOST_PP_INTERCEPT_241 +# define BOOST_PP_INTERCEPT_242 +# define BOOST_PP_INTERCEPT_243 +# define BOOST_PP_INTERCEPT_244 +# define BOOST_PP_INTERCEPT_245 +# define BOOST_PP_INTERCEPT_246 +# define BOOST_PP_INTERCEPT_247 +# define BOOST_PP_INTERCEPT_248 +# define BOOST_PP_INTERCEPT_249 +# define BOOST_PP_INTERCEPT_250 +# define BOOST_PP_INTERCEPT_251 +# define BOOST_PP_INTERCEPT_252 +# define BOOST_PP_INTERCEPT_253 +# define BOOST_PP_INTERCEPT_254 +# define BOOST_PP_INTERCEPT_255 +# define BOOST_PP_INTERCEPT_256 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/is_1.hpp b/plugin/wave/include/boost/preprocessor/facilities/is_1.hpp new file mode 100644 index 0000000..f286dcd --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/is_1.hpp @@ -0,0 +1,23 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2003. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_IS_1_HPP +# define BOOST_PREPROCESSOR_FACILITIES_IS_1_HPP +# +# include +# include +# +# /* BOOST_PP_IS_1 */ +# +# define BOOST_PP_IS_1(x) BOOST_PP_IS_EMPTY(BOOST_PP_CAT(BOOST_PP_IS_1_HELPER_, x)) +# define BOOST_PP_IS_1_HELPER_1 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/is_empty.hpp b/plugin/wave/include/boost/preprocessor/facilities/is_empty.hpp new file mode 100644 index 0000000..46aadd3 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/is_empty.hpp @@ -0,0 +1,56 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2003. +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP +# define BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# +# else +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# include +# include +# else +# include +# include +# endif +# +# /* BOOST_PP_IS_EMPTY */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I(x BOOST_PP_IS_EMPTY_HELPER) +# define BOOST_PP_IS_EMPTY_I(contents) BOOST_PP_TUPLE_ELEM(2, 1, (BOOST_PP_IS_EMPTY_DEF_ ## contents())) +# define BOOST_PP_IS_EMPTY_DEF_BOOST_PP_IS_EMPTY_HELPER 1, BOOST_PP_IDENTITY(1) +# define BOOST_PP_IS_EMPTY_HELPER() , 0 +# else +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I(BOOST_PP_IS_EMPTY_HELPER x ()) +# define BOOST_PP_IS_EMPTY_I(test) BOOST_PP_IS_EMPTY_II(BOOST_PP_SPLIT(0, BOOST_PP_CAT(BOOST_PP_IS_EMPTY_DEF_, test))) +# define BOOST_PP_IS_EMPTY_II(id) id +# else +# define BOOST_PP_IS_EMPTY(x) BOOST_PP_IS_EMPTY_I((BOOST_PP_IS_EMPTY_HELPER x ())) +# define BOOST_PP_IS_EMPTY_I(par) BOOST_PP_IS_EMPTY_II ## par +# define BOOST_PP_IS_EMPTY_II(test) BOOST_PP_SPLIT(0, BOOST_PP_CAT(BOOST_PP_IS_EMPTY_DEF_, test)) +# endif +# define BOOST_PP_IS_EMPTY_HELPER() 1 +# define BOOST_PP_IS_EMPTY_DEF_1 1, BOOST_PP_NIL +# define BOOST_PP_IS_EMPTY_DEF_BOOST_PP_IS_EMPTY_HELPER 0, BOOST_PP_NIL +# endif +# +# endif /* BOOST_PP_VARIADICS */ +# +# endif /* BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/facilities/is_empty_or_1.hpp b/plugin/wave/include/boost/preprocessor/facilities/is_empty_or_1.hpp new file mode 100644 index 0000000..815666f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/is_empty_or_1.hpp @@ -0,0 +1,31 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2003. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_OR_1_HPP +# define BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_OR_1_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_IS_EMPTY_OR_1 */ +# +# define BOOST_PP_IS_EMPTY_OR_1(x) \ + BOOST_PP_IIF( \ + BOOST_PP_IS_EMPTY(x BOOST_PP_EMPTY()), \ + BOOST_PP_IDENTITY(1), \ + BOOST_PP_IS_1 \ + )(x) \ + /**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/facilities/is_empty_variadic.hpp b/plugin/wave/include/boost/preprocessor/facilities/is_empty_variadic.hpp new file mode 100644 index 0000000..eee4062 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/is_empty_variadic.hpp @@ -0,0 +1,57 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_VARIADIC_HPP +# define BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_VARIADIC_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# +#if BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 +# +#define BOOST_PP_IS_EMPTY(param) \ + BOOST_PP_DETAIL_IS_EMPTY_IIF \ + ( \ + BOOST_PP_IS_BEGIN_PARENS \ + ( \ + param \ + ) \ + ) \ + ( \ + BOOST_PP_IS_EMPTY_ZERO, \ + BOOST_PP_DETAIL_IS_EMPTY_PROCESS \ + ) \ + (param) \ +/**/ +#define BOOST_PP_IS_EMPTY_ZERO(param) 0 +# else +#define BOOST_PP_IS_EMPTY(...) \ + BOOST_PP_DETAIL_IS_EMPTY_IIF \ + ( \ + BOOST_PP_IS_BEGIN_PARENS \ + ( \ + __VA_ARGS__ \ + ) \ + ) \ + ( \ + BOOST_PP_IS_EMPTY_ZERO, \ + BOOST_PP_DETAIL_IS_EMPTY_PROCESS \ + ) \ + (__VA_ARGS__) \ +/**/ +#define BOOST_PP_IS_EMPTY_ZERO(...) 0 +# endif /* BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 */ +# endif /* BOOST_PP_VARIADICS */ +# endif /* BOOST_PREPROCESSOR_FACILITIES_IS_EMPTY_VARIADIC_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/facilities/overload.hpp b/plugin/wave/include/boost/preprocessor/facilities/overload.hpp new file mode 100644 index 0000000..1576316 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/facilities/overload.hpp @@ -0,0 +1,25 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FACILITIES_OVERLOAD_HPP +# define BOOST_PREPROCESSOR_FACILITIES_OVERLOAD_HPP +# +# include +# include +# +# /* BOOST_PP_OVERLOAD */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_OVERLOAD(prefix, ...) BOOST_PP_CAT(prefix, BOOST_PP_VARIADIC_SIZE(__VA_ARGS__)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/for.hpp b/plugin/wave/include/boost/preprocessor/for.hpp new file mode 100644 index 0000000..9ec9cee --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/for.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_FOR_HPP +# define BOOST_PREPROCESSOR_FOR_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/identity.hpp b/plugin/wave/include/boost/preprocessor/identity.hpp new file mode 100644 index 0000000..847dd13 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/identity.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_IDENTITY_HPP +# define BOOST_PREPROCESSOR_IDENTITY_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/if.hpp b/plugin/wave/include/boost/preprocessor/if.hpp new file mode 100644 index 0000000..f1783f7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/if.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_IF_HPP +# define BOOST_PREPROCESSOR_IF_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/inc.hpp b/plugin/wave/include/boost/preprocessor/inc.hpp new file mode 100644 index 0000000..b98d3a6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/inc.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_INC_HPP +# define BOOST_PREPROCESSOR_INC_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/iterate.hpp b/plugin/wave/include/boost/preprocessor/iterate.hpp new file mode 100644 index 0000000..e720ec8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iterate.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ITERATE_HPP +# define BOOST_PREPROCESSOR_ITERATE_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration.hpp b/plugin/wave/include/boost/preprocessor/iteration.hpp new file mode 100644 index 0000000..1055ac0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration.hpp @@ -0,0 +1,19 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ITERATION_HPP +# define BOOST_PREPROCESSOR_ITERATION_HPP +# +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp new file mode 100644 index 0000000..6694d0b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower1.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_START_1 +# +# undef BOOST_PP_ITERATION_START_1_DIGIT_1 +# undef BOOST_PP_ITERATION_START_1_DIGIT_2 +# undef BOOST_PP_ITERATION_START_1_DIGIT_3 +# undef BOOST_PP_ITERATION_START_1_DIGIT_4 +# undef BOOST_PP_ITERATION_START_1_DIGIT_5 +# undef BOOST_PP_ITERATION_START_1_DIGIT_6 +# undef BOOST_PP_ITERATION_START_1_DIGIT_7 +# undef BOOST_PP_ITERATION_START_1_DIGIT_8 +# undef BOOST_PP_ITERATION_START_1_DIGIT_9 +# undef BOOST_PP_ITERATION_START_1_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_START_1_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_START_1_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_START_1_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_START_1_DIGIT_3 +# define BOOST_PP_ITERATION_START_1 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_1_DIGIT_3, BOOST_PP_ITERATION_START_1_DIGIT_2, BOOST_PP_ITERATION_START_1_DIGIT_1) +# elif BOOST_PP_ITERATION_START_1_DIGIT_2 +# define BOOST_PP_ITERATION_START_1 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_1_DIGIT_2, BOOST_PP_ITERATION_START_1_DIGIT_1) +# else +# define BOOST_PP_ITERATION_START_1 BOOST_PP_ITERATION_START_1_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp new file mode 100644 index 0000000..ece21fc --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower2.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_START_2 +# +# undef BOOST_PP_ITERATION_START_2_DIGIT_1 +# undef BOOST_PP_ITERATION_START_2_DIGIT_2 +# undef BOOST_PP_ITERATION_START_2_DIGIT_3 +# undef BOOST_PP_ITERATION_START_2_DIGIT_4 +# undef BOOST_PP_ITERATION_START_2_DIGIT_5 +# undef BOOST_PP_ITERATION_START_2_DIGIT_6 +# undef BOOST_PP_ITERATION_START_2_DIGIT_7 +# undef BOOST_PP_ITERATION_START_2_DIGIT_8 +# undef BOOST_PP_ITERATION_START_2_DIGIT_9 +# undef BOOST_PP_ITERATION_START_2_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_START_2_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_START_2_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_START_2_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_START_2_DIGIT_3 +# define BOOST_PP_ITERATION_START_2 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_2_DIGIT_3, BOOST_PP_ITERATION_START_2_DIGIT_2, BOOST_PP_ITERATION_START_2_DIGIT_1) +# elif BOOST_PP_ITERATION_START_2_DIGIT_2 +# define BOOST_PP_ITERATION_START_2 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_2_DIGIT_2, BOOST_PP_ITERATION_START_2_DIGIT_1) +# else +# define BOOST_PP_ITERATION_START_2 BOOST_PP_ITERATION_START_2_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp new file mode 100644 index 0000000..8429eac --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower3.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_START_3 +# +# undef BOOST_PP_ITERATION_START_3_DIGIT_1 +# undef BOOST_PP_ITERATION_START_3_DIGIT_2 +# undef BOOST_PP_ITERATION_START_3_DIGIT_3 +# undef BOOST_PP_ITERATION_START_3_DIGIT_4 +# undef BOOST_PP_ITERATION_START_3_DIGIT_5 +# undef BOOST_PP_ITERATION_START_3_DIGIT_6 +# undef BOOST_PP_ITERATION_START_3_DIGIT_7 +# undef BOOST_PP_ITERATION_START_3_DIGIT_8 +# undef BOOST_PP_ITERATION_START_3_DIGIT_9 +# undef BOOST_PP_ITERATION_START_3_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_START_3_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_START_3_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_START_3_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_START_3_DIGIT_3 +# define BOOST_PP_ITERATION_START_3 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_3_DIGIT_3, BOOST_PP_ITERATION_START_3_DIGIT_2, BOOST_PP_ITERATION_START_3_DIGIT_1) +# elif BOOST_PP_ITERATION_START_3_DIGIT_2 +# define BOOST_PP_ITERATION_START_3 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_3_DIGIT_2, BOOST_PP_ITERATION_START_3_DIGIT_1) +# else +# define BOOST_PP_ITERATION_START_3 BOOST_PP_ITERATION_START_3_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp new file mode 100644 index 0000000..ba0832f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower4.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_START_4 +# +# undef BOOST_PP_ITERATION_START_4_DIGIT_1 +# undef BOOST_PP_ITERATION_START_4_DIGIT_2 +# undef BOOST_PP_ITERATION_START_4_DIGIT_3 +# undef BOOST_PP_ITERATION_START_4_DIGIT_4 +# undef BOOST_PP_ITERATION_START_4_DIGIT_5 +# undef BOOST_PP_ITERATION_START_4_DIGIT_6 +# undef BOOST_PP_ITERATION_START_4_DIGIT_7 +# undef BOOST_PP_ITERATION_START_4_DIGIT_8 +# undef BOOST_PP_ITERATION_START_4_DIGIT_9 +# undef BOOST_PP_ITERATION_START_4_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_START_4_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_START_4_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_START_4_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_START_4_DIGIT_3 +# define BOOST_PP_ITERATION_START_4 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_4_DIGIT_3, BOOST_PP_ITERATION_START_4_DIGIT_2, BOOST_PP_ITERATION_START_4_DIGIT_1) +# elif BOOST_PP_ITERATION_START_4_DIGIT_2 +# define BOOST_PP_ITERATION_START_4 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_4_DIGIT_2, BOOST_PP_ITERATION_START_4_DIGIT_1) +# else +# define BOOST_PP_ITERATION_START_4 BOOST_PP_ITERATION_START_4_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp new file mode 100644 index 0000000..f4888c7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/lower5.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_START_5 +# +# undef BOOST_PP_ITERATION_START_5_DIGIT_1 +# undef BOOST_PP_ITERATION_START_5_DIGIT_2 +# undef BOOST_PP_ITERATION_START_5_DIGIT_3 +# undef BOOST_PP_ITERATION_START_5_DIGIT_4 +# undef BOOST_PP_ITERATION_START_5_DIGIT_5 +# undef BOOST_PP_ITERATION_START_5_DIGIT_6 +# undef BOOST_PP_ITERATION_START_5_DIGIT_7 +# undef BOOST_PP_ITERATION_START_5_DIGIT_8 +# undef BOOST_PP_ITERATION_START_5_DIGIT_9 +# undef BOOST_PP_ITERATION_START_5_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_START_5_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_START_5_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_START_5_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_START_5_DIGIT_3 +# define BOOST_PP_ITERATION_START_5 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_START_5_DIGIT_3, BOOST_PP_ITERATION_START_5_DIGIT_2, BOOST_PP_ITERATION_START_5_DIGIT_1) +# elif BOOST_PP_ITERATION_START_5_DIGIT_2 +# define BOOST_PP_ITERATION_START_5 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_START_5_DIGIT_2, BOOST_PP_ITERATION_START_5_DIGIT_1) +# else +# define BOOST_PP_ITERATION_START_5 BOOST_PP_ITERATION_START_5_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp new file mode 100644 index 0000000..50d0fcf --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper1.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_FINISH_1 +# +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_1 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_2 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_3 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_4 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_5 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_6 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_7 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_8 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_9 +# undef BOOST_PP_ITERATION_FINISH_1_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_FINISH_1_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_FINISH_1_DIGIT_3 +# define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_1_DIGIT_3, BOOST_PP_ITERATION_FINISH_1_DIGIT_2, BOOST_PP_ITERATION_FINISH_1_DIGIT_1) +# elif BOOST_PP_ITERATION_FINISH_1_DIGIT_2 +# define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_1_DIGIT_2, BOOST_PP_ITERATION_FINISH_1_DIGIT_1) +# else +# define BOOST_PP_ITERATION_FINISH_1 BOOST_PP_ITERATION_FINISH_1_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp new file mode 100644 index 0000000..faef6f4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper2.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_FINISH_2 +# +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_1 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_2 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_3 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_4 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_5 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_6 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_7 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_8 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_9 +# undef BOOST_PP_ITERATION_FINISH_2_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_FINISH_2_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_FINISH_2_DIGIT_3 +# define BOOST_PP_ITERATION_FINISH_2 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_2_DIGIT_3, BOOST_PP_ITERATION_FINISH_2_DIGIT_2, BOOST_PP_ITERATION_FINISH_2_DIGIT_1) +# elif BOOST_PP_ITERATION_FINISH_2_DIGIT_2 +# define BOOST_PP_ITERATION_FINISH_2 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_2_DIGIT_2, BOOST_PP_ITERATION_FINISH_2_DIGIT_1) +# else +# define BOOST_PP_ITERATION_FINISH_2 BOOST_PP_ITERATION_FINISH_2_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp new file mode 100644 index 0000000..38d9ade --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper3.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_FINISH_3 +# +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_1 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_2 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_3 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_4 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_5 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_6 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_7 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_8 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_9 +# undef BOOST_PP_ITERATION_FINISH_3_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_FINISH_3_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_FINISH_3_DIGIT_3 +# define BOOST_PP_ITERATION_FINISH_3 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_3_DIGIT_3, BOOST_PP_ITERATION_FINISH_3_DIGIT_2, BOOST_PP_ITERATION_FINISH_3_DIGIT_1) +# elif BOOST_PP_ITERATION_FINISH_3_DIGIT_2 +# define BOOST_PP_ITERATION_FINISH_3 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_3_DIGIT_2, BOOST_PP_ITERATION_FINISH_3_DIGIT_1) +# else +# define BOOST_PP_ITERATION_FINISH_3 BOOST_PP_ITERATION_FINISH_3_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp new file mode 100644 index 0000000..7f771c2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper4.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_FINISH_4 +# +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_1 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_2 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_3 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_4 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_5 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_6 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_7 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_8 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_9 +# undef BOOST_PP_ITERATION_FINISH_4_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_FINISH_4_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_FINISH_4_DIGIT_3 +# define BOOST_PP_ITERATION_FINISH_4 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_4_DIGIT_3, BOOST_PP_ITERATION_FINISH_4_DIGIT_2, BOOST_PP_ITERATION_FINISH_4_DIGIT_1) +# elif BOOST_PP_ITERATION_FINISH_4_DIGIT_2 +# define BOOST_PP_ITERATION_FINISH_4 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_4_DIGIT_2, BOOST_PP_ITERATION_FINISH_4_DIGIT_1) +# else +# define BOOST_PP_ITERATION_FINISH_4 BOOST_PP_ITERATION_FINISH_4_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp new file mode 100644 index 0000000..9f27d58 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/bounds/upper5.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_ITERATION_FINISH_5 +# +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_1 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_2 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_3 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_4 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_5 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_6 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_7 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_8 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_9 +# undef BOOST_PP_ITERATION_FINISH_5_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_ITERATION_FINISH_5_DIGIT_1 9 +# endif +# +# if BOOST_PP_ITERATION_FINISH_5_DIGIT_3 +# define BOOST_PP_ITERATION_FINISH_5 BOOST_PP_SLOT_CC_3(BOOST_PP_ITERATION_FINISH_5_DIGIT_3, BOOST_PP_ITERATION_FINISH_5_DIGIT_2, BOOST_PP_ITERATION_FINISH_5_DIGIT_1) +# elif BOOST_PP_ITERATION_FINISH_5_DIGIT_2 +# define BOOST_PP_ITERATION_FINISH_5 BOOST_PP_SLOT_CC_2(BOOST_PP_ITERATION_FINISH_5_DIGIT_2, BOOST_PP_ITERATION_FINISH_5_DIGIT_1) +# else +# define BOOST_PP_ITERATION_FINISH_5 BOOST_PP_ITERATION_FINISH_5_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/finish.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/finish.hpp new file mode 100644 index 0000000..0236944 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/finish.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_LOCAL_FE +# +# undef BOOST_PP_LOCAL_FE_DIGIT_1 +# undef BOOST_PP_LOCAL_FE_DIGIT_2 +# undef BOOST_PP_LOCAL_FE_DIGIT_3 +# undef BOOST_PP_LOCAL_FE_DIGIT_4 +# undef BOOST_PP_LOCAL_FE_DIGIT_5 +# undef BOOST_PP_LOCAL_FE_DIGIT_6 +# undef BOOST_PP_LOCAL_FE_DIGIT_7 +# undef BOOST_PP_LOCAL_FE_DIGIT_8 +# undef BOOST_PP_LOCAL_FE_DIGIT_9 +# undef BOOST_PP_LOCAL_FE_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_LOCAL_FE_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_LOCAL_FE_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_LOCAL_FE_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_LOCAL_FE_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_LOCAL_FE_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_LOCAL_FE_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_LOCAL_FE_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_LOCAL_FE_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_LOCAL_FE_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_LOCAL_FE_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_LOCAL_FE_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_LOCAL_FE_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_LOCAL_FE_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_LOCAL_FE_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_LOCAL_FE_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_LOCAL_FE_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_LOCAL_FE_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_LOCAL_FE_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_LOCAL_FE_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_LOCAL_FE_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_LOCAL_FE_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_LOCAL_FE_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_LOCAL_FE_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_LOCAL_FE_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_LOCAL_FE_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_LOCAL_FE_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_LOCAL_FE_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_LOCAL_FE_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_LOCAL_FE_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_LOCAL_FE_DIGIT_1 9 +# endif +# +# if BOOST_PP_LOCAL_FE_DIGIT_3 +# define BOOST_PP_LOCAL_FE() BOOST_PP_SLOT_CC_3(BOOST_PP_LOCAL_FE_DIGIT_3, BOOST_PP_LOCAL_FE_DIGIT_2, BOOST_PP_LOCAL_FE_DIGIT_1) +# elif BOOST_PP_LOCAL_FE_DIGIT_2 +# define BOOST_PP_LOCAL_FE() BOOST_PP_SLOT_CC_2(BOOST_PP_LOCAL_FE_DIGIT_2, BOOST_PP_LOCAL_FE_DIGIT_1) +# else +# define BOOST_PP_LOCAL_FE() BOOST_PP_LOCAL_FE_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward1.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward1.hpp new file mode 100644 index 0000000..3c6a458 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward1.hpp @@ -0,0 +1,1342 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if defined(BOOST_PP_ITERATION_LIMITS) +# if !defined(BOOST_PP_FILENAME_1) +# error BOOST_PP_ERROR: depth #1 filename is not defined +# endif +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_ITERATION_FLAGS_1() 0 +# undef BOOST_PP_ITERATION_LIMITS +# elif defined(BOOST_PP_ITERATION_PARAMS_1) +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(0, BOOST_PP_ITERATION_PARAMS_1) +# include +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(1, BOOST_PP_ITERATION_PARAMS_1) +# include +# define BOOST_PP_FILENAME_1 BOOST_PP_ARRAY_ELEM(2, BOOST_PP_ITERATION_PARAMS_1) +# if BOOST_PP_ARRAY_SIZE(BOOST_PP_ITERATION_PARAMS_1) >= 4 +# define BOOST_PP_ITERATION_FLAGS_1() BOOST_PP_ARRAY_ELEM(3, BOOST_PP_ITERATION_PARAMS_1) +# else +# define BOOST_PP_ITERATION_FLAGS_1() 0 +# endif +# else +# error BOOST_PP_ERROR: depth #1 iteration boundaries or filename not defined +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 1 +# +# define BOOST_PP_IS_ITERATING 1 +# +# if (BOOST_PP_ITERATION_START_1) > (BOOST_PP_ITERATION_FINISH_1) +# include +# else +# if BOOST_PP_ITERATION_START_1 <= 0 && BOOST_PP_ITERATION_FINISH_1 >= 0 +# define BOOST_PP_ITERATION_1 0 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 1 && BOOST_PP_ITERATION_FINISH_1 >= 1 +# define BOOST_PP_ITERATION_1 1 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 2 && BOOST_PP_ITERATION_FINISH_1 >= 2 +# define BOOST_PP_ITERATION_1 2 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 3 && BOOST_PP_ITERATION_FINISH_1 >= 3 +# define BOOST_PP_ITERATION_1 3 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 4 && BOOST_PP_ITERATION_FINISH_1 >= 4 +# define BOOST_PP_ITERATION_1 4 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 5 && BOOST_PP_ITERATION_FINISH_1 >= 5 +# define BOOST_PP_ITERATION_1 5 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 6 && BOOST_PP_ITERATION_FINISH_1 >= 6 +# define BOOST_PP_ITERATION_1 6 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 7 && BOOST_PP_ITERATION_FINISH_1 >= 7 +# define BOOST_PP_ITERATION_1 7 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 8 && BOOST_PP_ITERATION_FINISH_1 >= 8 +# define BOOST_PP_ITERATION_1 8 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 9 && BOOST_PP_ITERATION_FINISH_1 >= 9 +# define BOOST_PP_ITERATION_1 9 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 10 && BOOST_PP_ITERATION_FINISH_1 >= 10 +# define BOOST_PP_ITERATION_1 10 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 11 && BOOST_PP_ITERATION_FINISH_1 >= 11 +# define BOOST_PP_ITERATION_1 11 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 12 && BOOST_PP_ITERATION_FINISH_1 >= 12 +# define BOOST_PP_ITERATION_1 12 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 13 && BOOST_PP_ITERATION_FINISH_1 >= 13 +# define BOOST_PP_ITERATION_1 13 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 14 && BOOST_PP_ITERATION_FINISH_1 >= 14 +# define BOOST_PP_ITERATION_1 14 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 15 && BOOST_PP_ITERATION_FINISH_1 >= 15 +# define BOOST_PP_ITERATION_1 15 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 16 && BOOST_PP_ITERATION_FINISH_1 >= 16 +# define BOOST_PP_ITERATION_1 16 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 17 && BOOST_PP_ITERATION_FINISH_1 >= 17 +# define BOOST_PP_ITERATION_1 17 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 18 && BOOST_PP_ITERATION_FINISH_1 >= 18 +# define BOOST_PP_ITERATION_1 18 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 19 && BOOST_PP_ITERATION_FINISH_1 >= 19 +# define BOOST_PP_ITERATION_1 19 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 20 && BOOST_PP_ITERATION_FINISH_1 >= 20 +# define BOOST_PP_ITERATION_1 20 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 21 && BOOST_PP_ITERATION_FINISH_1 >= 21 +# define BOOST_PP_ITERATION_1 21 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 22 && BOOST_PP_ITERATION_FINISH_1 >= 22 +# define BOOST_PP_ITERATION_1 22 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 23 && BOOST_PP_ITERATION_FINISH_1 >= 23 +# define BOOST_PP_ITERATION_1 23 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 24 && BOOST_PP_ITERATION_FINISH_1 >= 24 +# define BOOST_PP_ITERATION_1 24 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 25 && BOOST_PP_ITERATION_FINISH_1 >= 25 +# define BOOST_PP_ITERATION_1 25 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 26 && BOOST_PP_ITERATION_FINISH_1 >= 26 +# define BOOST_PP_ITERATION_1 26 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 27 && BOOST_PP_ITERATION_FINISH_1 >= 27 +# define BOOST_PP_ITERATION_1 27 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 28 && BOOST_PP_ITERATION_FINISH_1 >= 28 +# define BOOST_PP_ITERATION_1 28 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 29 && BOOST_PP_ITERATION_FINISH_1 >= 29 +# define BOOST_PP_ITERATION_1 29 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 30 && BOOST_PP_ITERATION_FINISH_1 >= 30 +# define BOOST_PP_ITERATION_1 30 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 31 && BOOST_PP_ITERATION_FINISH_1 >= 31 +# define BOOST_PP_ITERATION_1 31 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 32 && BOOST_PP_ITERATION_FINISH_1 >= 32 +# define BOOST_PP_ITERATION_1 32 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 33 && BOOST_PP_ITERATION_FINISH_1 >= 33 +# define BOOST_PP_ITERATION_1 33 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 34 && BOOST_PP_ITERATION_FINISH_1 >= 34 +# define BOOST_PP_ITERATION_1 34 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 35 && BOOST_PP_ITERATION_FINISH_1 >= 35 +# define BOOST_PP_ITERATION_1 35 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 36 && BOOST_PP_ITERATION_FINISH_1 >= 36 +# define BOOST_PP_ITERATION_1 36 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 37 && BOOST_PP_ITERATION_FINISH_1 >= 37 +# define BOOST_PP_ITERATION_1 37 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 38 && BOOST_PP_ITERATION_FINISH_1 >= 38 +# define BOOST_PP_ITERATION_1 38 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 39 && BOOST_PP_ITERATION_FINISH_1 >= 39 +# define BOOST_PP_ITERATION_1 39 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 40 && BOOST_PP_ITERATION_FINISH_1 >= 40 +# define BOOST_PP_ITERATION_1 40 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 41 && BOOST_PP_ITERATION_FINISH_1 >= 41 +# define BOOST_PP_ITERATION_1 41 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 42 && BOOST_PP_ITERATION_FINISH_1 >= 42 +# define BOOST_PP_ITERATION_1 42 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 43 && BOOST_PP_ITERATION_FINISH_1 >= 43 +# define BOOST_PP_ITERATION_1 43 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 44 && BOOST_PP_ITERATION_FINISH_1 >= 44 +# define BOOST_PP_ITERATION_1 44 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 45 && BOOST_PP_ITERATION_FINISH_1 >= 45 +# define BOOST_PP_ITERATION_1 45 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 46 && BOOST_PP_ITERATION_FINISH_1 >= 46 +# define BOOST_PP_ITERATION_1 46 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 47 && BOOST_PP_ITERATION_FINISH_1 >= 47 +# define BOOST_PP_ITERATION_1 47 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 48 && BOOST_PP_ITERATION_FINISH_1 >= 48 +# define BOOST_PP_ITERATION_1 48 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 49 && BOOST_PP_ITERATION_FINISH_1 >= 49 +# define BOOST_PP_ITERATION_1 49 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 50 && BOOST_PP_ITERATION_FINISH_1 >= 50 +# define BOOST_PP_ITERATION_1 50 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 51 && BOOST_PP_ITERATION_FINISH_1 >= 51 +# define BOOST_PP_ITERATION_1 51 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 52 && BOOST_PP_ITERATION_FINISH_1 >= 52 +# define BOOST_PP_ITERATION_1 52 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 53 && BOOST_PP_ITERATION_FINISH_1 >= 53 +# define BOOST_PP_ITERATION_1 53 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 54 && BOOST_PP_ITERATION_FINISH_1 >= 54 +# define BOOST_PP_ITERATION_1 54 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 55 && BOOST_PP_ITERATION_FINISH_1 >= 55 +# define BOOST_PP_ITERATION_1 55 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 56 && BOOST_PP_ITERATION_FINISH_1 >= 56 +# define BOOST_PP_ITERATION_1 56 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 57 && BOOST_PP_ITERATION_FINISH_1 >= 57 +# define BOOST_PP_ITERATION_1 57 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 58 && BOOST_PP_ITERATION_FINISH_1 >= 58 +# define BOOST_PP_ITERATION_1 58 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 59 && BOOST_PP_ITERATION_FINISH_1 >= 59 +# define BOOST_PP_ITERATION_1 59 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 60 && BOOST_PP_ITERATION_FINISH_1 >= 60 +# define BOOST_PP_ITERATION_1 60 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 61 && BOOST_PP_ITERATION_FINISH_1 >= 61 +# define BOOST_PP_ITERATION_1 61 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 62 && BOOST_PP_ITERATION_FINISH_1 >= 62 +# define BOOST_PP_ITERATION_1 62 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 63 && BOOST_PP_ITERATION_FINISH_1 >= 63 +# define BOOST_PP_ITERATION_1 63 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 64 && BOOST_PP_ITERATION_FINISH_1 >= 64 +# define BOOST_PP_ITERATION_1 64 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 65 && BOOST_PP_ITERATION_FINISH_1 >= 65 +# define BOOST_PP_ITERATION_1 65 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 66 && BOOST_PP_ITERATION_FINISH_1 >= 66 +# define BOOST_PP_ITERATION_1 66 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 67 && BOOST_PP_ITERATION_FINISH_1 >= 67 +# define BOOST_PP_ITERATION_1 67 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 68 && BOOST_PP_ITERATION_FINISH_1 >= 68 +# define BOOST_PP_ITERATION_1 68 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 69 && BOOST_PP_ITERATION_FINISH_1 >= 69 +# define BOOST_PP_ITERATION_1 69 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 70 && BOOST_PP_ITERATION_FINISH_1 >= 70 +# define BOOST_PP_ITERATION_1 70 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 71 && BOOST_PP_ITERATION_FINISH_1 >= 71 +# define BOOST_PP_ITERATION_1 71 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 72 && BOOST_PP_ITERATION_FINISH_1 >= 72 +# define BOOST_PP_ITERATION_1 72 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 73 && BOOST_PP_ITERATION_FINISH_1 >= 73 +# define BOOST_PP_ITERATION_1 73 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 74 && BOOST_PP_ITERATION_FINISH_1 >= 74 +# define BOOST_PP_ITERATION_1 74 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 75 && BOOST_PP_ITERATION_FINISH_1 >= 75 +# define BOOST_PP_ITERATION_1 75 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 76 && BOOST_PP_ITERATION_FINISH_1 >= 76 +# define BOOST_PP_ITERATION_1 76 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 77 && BOOST_PP_ITERATION_FINISH_1 >= 77 +# define BOOST_PP_ITERATION_1 77 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 78 && BOOST_PP_ITERATION_FINISH_1 >= 78 +# define BOOST_PP_ITERATION_1 78 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 79 && BOOST_PP_ITERATION_FINISH_1 >= 79 +# define BOOST_PP_ITERATION_1 79 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 80 && BOOST_PP_ITERATION_FINISH_1 >= 80 +# define BOOST_PP_ITERATION_1 80 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 81 && BOOST_PP_ITERATION_FINISH_1 >= 81 +# define BOOST_PP_ITERATION_1 81 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 82 && BOOST_PP_ITERATION_FINISH_1 >= 82 +# define BOOST_PP_ITERATION_1 82 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 83 && BOOST_PP_ITERATION_FINISH_1 >= 83 +# define BOOST_PP_ITERATION_1 83 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 84 && BOOST_PP_ITERATION_FINISH_1 >= 84 +# define BOOST_PP_ITERATION_1 84 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 85 && BOOST_PP_ITERATION_FINISH_1 >= 85 +# define BOOST_PP_ITERATION_1 85 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 86 && BOOST_PP_ITERATION_FINISH_1 >= 86 +# define BOOST_PP_ITERATION_1 86 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 87 && BOOST_PP_ITERATION_FINISH_1 >= 87 +# define BOOST_PP_ITERATION_1 87 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 88 && BOOST_PP_ITERATION_FINISH_1 >= 88 +# define BOOST_PP_ITERATION_1 88 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 89 && BOOST_PP_ITERATION_FINISH_1 >= 89 +# define BOOST_PP_ITERATION_1 89 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 90 && BOOST_PP_ITERATION_FINISH_1 >= 90 +# define BOOST_PP_ITERATION_1 90 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 91 && BOOST_PP_ITERATION_FINISH_1 >= 91 +# define BOOST_PP_ITERATION_1 91 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 92 && BOOST_PP_ITERATION_FINISH_1 >= 92 +# define BOOST_PP_ITERATION_1 92 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 93 && BOOST_PP_ITERATION_FINISH_1 >= 93 +# define BOOST_PP_ITERATION_1 93 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 94 && BOOST_PP_ITERATION_FINISH_1 >= 94 +# define BOOST_PP_ITERATION_1 94 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 95 && BOOST_PP_ITERATION_FINISH_1 >= 95 +# define BOOST_PP_ITERATION_1 95 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 96 && BOOST_PP_ITERATION_FINISH_1 >= 96 +# define BOOST_PP_ITERATION_1 96 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 97 && BOOST_PP_ITERATION_FINISH_1 >= 97 +# define BOOST_PP_ITERATION_1 97 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 98 && BOOST_PP_ITERATION_FINISH_1 >= 98 +# define BOOST_PP_ITERATION_1 98 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 99 && BOOST_PP_ITERATION_FINISH_1 >= 99 +# define BOOST_PP_ITERATION_1 99 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 100 && BOOST_PP_ITERATION_FINISH_1 >= 100 +# define BOOST_PP_ITERATION_1 100 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 101 && BOOST_PP_ITERATION_FINISH_1 >= 101 +# define BOOST_PP_ITERATION_1 101 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 102 && BOOST_PP_ITERATION_FINISH_1 >= 102 +# define BOOST_PP_ITERATION_1 102 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 103 && BOOST_PP_ITERATION_FINISH_1 >= 103 +# define BOOST_PP_ITERATION_1 103 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 104 && BOOST_PP_ITERATION_FINISH_1 >= 104 +# define BOOST_PP_ITERATION_1 104 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 105 && BOOST_PP_ITERATION_FINISH_1 >= 105 +# define BOOST_PP_ITERATION_1 105 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 106 && BOOST_PP_ITERATION_FINISH_1 >= 106 +# define BOOST_PP_ITERATION_1 106 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 107 && BOOST_PP_ITERATION_FINISH_1 >= 107 +# define BOOST_PP_ITERATION_1 107 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 108 && BOOST_PP_ITERATION_FINISH_1 >= 108 +# define BOOST_PP_ITERATION_1 108 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 109 && BOOST_PP_ITERATION_FINISH_1 >= 109 +# define BOOST_PP_ITERATION_1 109 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 110 && BOOST_PP_ITERATION_FINISH_1 >= 110 +# define BOOST_PP_ITERATION_1 110 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 111 && BOOST_PP_ITERATION_FINISH_1 >= 111 +# define BOOST_PP_ITERATION_1 111 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 112 && BOOST_PP_ITERATION_FINISH_1 >= 112 +# define BOOST_PP_ITERATION_1 112 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 113 && BOOST_PP_ITERATION_FINISH_1 >= 113 +# define BOOST_PP_ITERATION_1 113 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 114 && BOOST_PP_ITERATION_FINISH_1 >= 114 +# define BOOST_PP_ITERATION_1 114 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 115 && BOOST_PP_ITERATION_FINISH_1 >= 115 +# define BOOST_PP_ITERATION_1 115 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 116 && BOOST_PP_ITERATION_FINISH_1 >= 116 +# define BOOST_PP_ITERATION_1 116 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 117 && BOOST_PP_ITERATION_FINISH_1 >= 117 +# define BOOST_PP_ITERATION_1 117 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 118 && BOOST_PP_ITERATION_FINISH_1 >= 118 +# define BOOST_PP_ITERATION_1 118 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 119 && BOOST_PP_ITERATION_FINISH_1 >= 119 +# define BOOST_PP_ITERATION_1 119 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 120 && BOOST_PP_ITERATION_FINISH_1 >= 120 +# define BOOST_PP_ITERATION_1 120 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 121 && BOOST_PP_ITERATION_FINISH_1 >= 121 +# define BOOST_PP_ITERATION_1 121 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 122 && BOOST_PP_ITERATION_FINISH_1 >= 122 +# define BOOST_PP_ITERATION_1 122 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 123 && BOOST_PP_ITERATION_FINISH_1 >= 123 +# define BOOST_PP_ITERATION_1 123 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 124 && BOOST_PP_ITERATION_FINISH_1 >= 124 +# define BOOST_PP_ITERATION_1 124 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 125 && BOOST_PP_ITERATION_FINISH_1 >= 125 +# define BOOST_PP_ITERATION_1 125 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 126 && BOOST_PP_ITERATION_FINISH_1 >= 126 +# define BOOST_PP_ITERATION_1 126 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 127 && BOOST_PP_ITERATION_FINISH_1 >= 127 +# define BOOST_PP_ITERATION_1 127 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 128 && BOOST_PP_ITERATION_FINISH_1 >= 128 +# define BOOST_PP_ITERATION_1 128 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 129 && BOOST_PP_ITERATION_FINISH_1 >= 129 +# define BOOST_PP_ITERATION_1 129 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 130 && BOOST_PP_ITERATION_FINISH_1 >= 130 +# define BOOST_PP_ITERATION_1 130 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 131 && BOOST_PP_ITERATION_FINISH_1 >= 131 +# define BOOST_PP_ITERATION_1 131 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 132 && BOOST_PP_ITERATION_FINISH_1 >= 132 +# define BOOST_PP_ITERATION_1 132 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 133 && BOOST_PP_ITERATION_FINISH_1 >= 133 +# define BOOST_PP_ITERATION_1 133 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 134 && BOOST_PP_ITERATION_FINISH_1 >= 134 +# define BOOST_PP_ITERATION_1 134 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 135 && BOOST_PP_ITERATION_FINISH_1 >= 135 +# define BOOST_PP_ITERATION_1 135 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 136 && BOOST_PP_ITERATION_FINISH_1 >= 136 +# define BOOST_PP_ITERATION_1 136 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 137 && BOOST_PP_ITERATION_FINISH_1 >= 137 +# define BOOST_PP_ITERATION_1 137 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 138 && BOOST_PP_ITERATION_FINISH_1 >= 138 +# define BOOST_PP_ITERATION_1 138 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 139 && BOOST_PP_ITERATION_FINISH_1 >= 139 +# define BOOST_PP_ITERATION_1 139 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 140 && BOOST_PP_ITERATION_FINISH_1 >= 140 +# define BOOST_PP_ITERATION_1 140 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 141 && BOOST_PP_ITERATION_FINISH_1 >= 141 +# define BOOST_PP_ITERATION_1 141 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 142 && BOOST_PP_ITERATION_FINISH_1 >= 142 +# define BOOST_PP_ITERATION_1 142 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 143 && BOOST_PP_ITERATION_FINISH_1 >= 143 +# define BOOST_PP_ITERATION_1 143 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 144 && BOOST_PP_ITERATION_FINISH_1 >= 144 +# define BOOST_PP_ITERATION_1 144 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 145 && BOOST_PP_ITERATION_FINISH_1 >= 145 +# define BOOST_PP_ITERATION_1 145 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 146 && BOOST_PP_ITERATION_FINISH_1 >= 146 +# define BOOST_PP_ITERATION_1 146 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 147 && BOOST_PP_ITERATION_FINISH_1 >= 147 +# define BOOST_PP_ITERATION_1 147 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 148 && BOOST_PP_ITERATION_FINISH_1 >= 148 +# define BOOST_PP_ITERATION_1 148 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 149 && BOOST_PP_ITERATION_FINISH_1 >= 149 +# define BOOST_PP_ITERATION_1 149 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 150 && BOOST_PP_ITERATION_FINISH_1 >= 150 +# define BOOST_PP_ITERATION_1 150 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 151 && BOOST_PP_ITERATION_FINISH_1 >= 151 +# define BOOST_PP_ITERATION_1 151 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 152 && BOOST_PP_ITERATION_FINISH_1 >= 152 +# define BOOST_PP_ITERATION_1 152 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 153 && BOOST_PP_ITERATION_FINISH_1 >= 153 +# define BOOST_PP_ITERATION_1 153 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 154 && BOOST_PP_ITERATION_FINISH_1 >= 154 +# define BOOST_PP_ITERATION_1 154 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 155 && BOOST_PP_ITERATION_FINISH_1 >= 155 +# define BOOST_PP_ITERATION_1 155 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 156 && BOOST_PP_ITERATION_FINISH_1 >= 156 +# define BOOST_PP_ITERATION_1 156 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 157 && BOOST_PP_ITERATION_FINISH_1 >= 157 +# define BOOST_PP_ITERATION_1 157 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 158 && BOOST_PP_ITERATION_FINISH_1 >= 158 +# define BOOST_PP_ITERATION_1 158 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 159 && BOOST_PP_ITERATION_FINISH_1 >= 159 +# define BOOST_PP_ITERATION_1 159 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 160 && BOOST_PP_ITERATION_FINISH_1 >= 160 +# define BOOST_PP_ITERATION_1 160 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 161 && BOOST_PP_ITERATION_FINISH_1 >= 161 +# define BOOST_PP_ITERATION_1 161 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 162 && BOOST_PP_ITERATION_FINISH_1 >= 162 +# define BOOST_PP_ITERATION_1 162 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 163 && BOOST_PP_ITERATION_FINISH_1 >= 163 +# define BOOST_PP_ITERATION_1 163 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 164 && BOOST_PP_ITERATION_FINISH_1 >= 164 +# define BOOST_PP_ITERATION_1 164 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 165 && BOOST_PP_ITERATION_FINISH_1 >= 165 +# define BOOST_PP_ITERATION_1 165 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 166 && BOOST_PP_ITERATION_FINISH_1 >= 166 +# define BOOST_PP_ITERATION_1 166 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 167 && BOOST_PP_ITERATION_FINISH_1 >= 167 +# define BOOST_PP_ITERATION_1 167 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 168 && BOOST_PP_ITERATION_FINISH_1 >= 168 +# define BOOST_PP_ITERATION_1 168 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 169 && BOOST_PP_ITERATION_FINISH_1 >= 169 +# define BOOST_PP_ITERATION_1 169 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 170 && BOOST_PP_ITERATION_FINISH_1 >= 170 +# define BOOST_PP_ITERATION_1 170 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 171 && BOOST_PP_ITERATION_FINISH_1 >= 171 +# define BOOST_PP_ITERATION_1 171 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 172 && BOOST_PP_ITERATION_FINISH_1 >= 172 +# define BOOST_PP_ITERATION_1 172 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 173 && BOOST_PP_ITERATION_FINISH_1 >= 173 +# define BOOST_PP_ITERATION_1 173 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 174 && BOOST_PP_ITERATION_FINISH_1 >= 174 +# define BOOST_PP_ITERATION_1 174 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 175 && BOOST_PP_ITERATION_FINISH_1 >= 175 +# define BOOST_PP_ITERATION_1 175 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 176 && BOOST_PP_ITERATION_FINISH_1 >= 176 +# define BOOST_PP_ITERATION_1 176 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 177 && BOOST_PP_ITERATION_FINISH_1 >= 177 +# define BOOST_PP_ITERATION_1 177 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 178 && BOOST_PP_ITERATION_FINISH_1 >= 178 +# define BOOST_PP_ITERATION_1 178 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 179 && BOOST_PP_ITERATION_FINISH_1 >= 179 +# define BOOST_PP_ITERATION_1 179 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 180 && BOOST_PP_ITERATION_FINISH_1 >= 180 +# define BOOST_PP_ITERATION_1 180 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 181 && BOOST_PP_ITERATION_FINISH_1 >= 181 +# define BOOST_PP_ITERATION_1 181 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 182 && BOOST_PP_ITERATION_FINISH_1 >= 182 +# define BOOST_PP_ITERATION_1 182 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 183 && BOOST_PP_ITERATION_FINISH_1 >= 183 +# define BOOST_PP_ITERATION_1 183 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 184 && BOOST_PP_ITERATION_FINISH_1 >= 184 +# define BOOST_PP_ITERATION_1 184 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 185 && BOOST_PP_ITERATION_FINISH_1 >= 185 +# define BOOST_PP_ITERATION_1 185 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 186 && BOOST_PP_ITERATION_FINISH_1 >= 186 +# define BOOST_PP_ITERATION_1 186 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 187 && BOOST_PP_ITERATION_FINISH_1 >= 187 +# define BOOST_PP_ITERATION_1 187 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 188 && BOOST_PP_ITERATION_FINISH_1 >= 188 +# define BOOST_PP_ITERATION_1 188 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 189 && BOOST_PP_ITERATION_FINISH_1 >= 189 +# define BOOST_PP_ITERATION_1 189 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 190 && BOOST_PP_ITERATION_FINISH_1 >= 190 +# define BOOST_PP_ITERATION_1 190 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 191 && BOOST_PP_ITERATION_FINISH_1 >= 191 +# define BOOST_PP_ITERATION_1 191 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 192 && BOOST_PP_ITERATION_FINISH_1 >= 192 +# define BOOST_PP_ITERATION_1 192 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 193 && BOOST_PP_ITERATION_FINISH_1 >= 193 +# define BOOST_PP_ITERATION_1 193 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 194 && BOOST_PP_ITERATION_FINISH_1 >= 194 +# define BOOST_PP_ITERATION_1 194 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 195 && BOOST_PP_ITERATION_FINISH_1 >= 195 +# define BOOST_PP_ITERATION_1 195 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 196 && BOOST_PP_ITERATION_FINISH_1 >= 196 +# define BOOST_PP_ITERATION_1 196 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 197 && BOOST_PP_ITERATION_FINISH_1 >= 197 +# define BOOST_PP_ITERATION_1 197 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 198 && BOOST_PP_ITERATION_FINISH_1 >= 198 +# define BOOST_PP_ITERATION_1 198 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 199 && BOOST_PP_ITERATION_FINISH_1 >= 199 +# define BOOST_PP_ITERATION_1 199 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 200 && BOOST_PP_ITERATION_FINISH_1 >= 200 +# define BOOST_PP_ITERATION_1 200 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 201 && BOOST_PP_ITERATION_FINISH_1 >= 201 +# define BOOST_PP_ITERATION_1 201 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 202 && BOOST_PP_ITERATION_FINISH_1 >= 202 +# define BOOST_PP_ITERATION_1 202 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 203 && BOOST_PP_ITERATION_FINISH_1 >= 203 +# define BOOST_PP_ITERATION_1 203 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 204 && BOOST_PP_ITERATION_FINISH_1 >= 204 +# define BOOST_PP_ITERATION_1 204 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 205 && BOOST_PP_ITERATION_FINISH_1 >= 205 +# define BOOST_PP_ITERATION_1 205 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 206 && BOOST_PP_ITERATION_FINISH_1 >= 206 +# define BOOST_PP_ITERATION_1 206 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 207 && BOOST_PP_ITERATION_FINISH_1 >= 207 +# define BOOST_PP_ITERATION_1 207 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 208 && BOOST_PP_ITERATION_FINISH_1 >= 208 +# define BOOST_PP_ITERATION_1 208 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 209 && BOOST_PP_ITERATION_FINISH_1 >= 209 +# define BOOST_PP_ITERATION_1 209 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 210 && BOOST_PP_ITERATION_FINISH_1 >= 210 +# define BOOST_PP_ITERATION_1 210 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 211 && BOOST_PP_ITERATION_FINISH_1 >= 211 +# define BOOST_PP_ITERATION_1 211 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 212 && BOOST_PP_ITERATION_FINISH_1 >= 212 +# define BOOST_PP_ITERATION_1 212 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 213 && BOOST_PP_ITERATION_FINISH_1 >= 213 +# define BOOST_PP_ITERATION_1 213 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 214 && BOOST_PP_ITERATION_FINISH_1 >= 214 +# define BOOST_PP_ITERATION_1 214 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 215 && BOOST_PP_ITERATION_FINISH_1 >= 215 +# define BOOST_PP_ITERATION_1 215 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 216 && BOOST_PP_ITERATION_FINISH_1 >= 216 +# define BOOST_PP_ITERATION_1 216 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 217 && BOOST_PP_ITERATION_FINISH_1 >= 217 +# define BOOST_PP_ITERATION_1 217 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 218 && BOOST_PP_ITERATION_FINISH_1 >= 218 +# define BOOST_PP_ITERATION_1 218 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 219 && BOOST_PP_ITERATION_FINISH_1 >= 219 +# define BOOST_PP_ITERATION_1 219 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 220 && BOOST_PP_ITERATION_FINISH_1 >= 220 +# define BOOST_PP_ITERATION_1 220 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 221 && BOOST_PP_ITERATION_FINISH_1 >= 221 +# define BOOST_PP_ITERATION_1 221 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 222 && BOOST_PP_ITERATION_FINISH_1 >= 222 +# define BOOST_PP_ITERATION_1 222 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 223 && BOOST_PP_ITERATION_FINISH_1 >= 223 +# define BOOST_PP_ITERATION_1 223 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 224 && BOOST_PP_ITERATION_FINISH_1 >= 224 +# define BOOST_PP_ITERATION_1 224 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 225 && BOOST_PP_ITERATION_FINISH_1 >= 225 +# define BOOST_PP_ITERATION_1 225 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 226 && BOOST_PP_ITERATION_FINISH_1 >= 226 +# define BOOST_PP_ITERATION_1 226 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 227 && BOOST_PP_ITERATION_FINISH_1 >= 227 +# define BOOST_PP_ITERATION_1 227 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 228 && BOOST_PP_ITERATION_FINISH_1 >= 228 +# define BOOST_PP_ITERATION_1 228 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 229 && BOOST_PP_ITERATION_FINISH_1 >= 229 +# define BOOST_PP_ITERATION_1 229 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 230 && BOOST_PP_ITERATION_FINISH_1 >= 230 +# define BOOST_PP_ITERATION_1 230 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 231 && BOOST_PP_ITERATION_FINISH_1 >= 231 +# define BOOST_PP_ITERATION_1 231 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 232 && BOOST_PP_ITERATION_FINISH_1 >= 232 +# define BOOST_PP_ITERATION_1 232 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 233 && BOOST_PP_ITERATION_FINISH_1 >= 233 +# define BOOST_PP_ITERATION_1 233 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 234 && BOOST_PP_ITERATION_FINISH_1 >= 234 +# define BOOST_PP_ITERATION_1 234 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 235 && BOOST_PP_ITERATION_FINISH_1 >= 235 +# define BOOST_PP_ITERATION_1 235 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 236 && BOOST_PP_ITERATION_FINISH_1 >= 236 +# define BOOST_PP_ITERATION_1 236 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 237 && BOOST_PP_ITERATION_FINISH_1 >= 237 +# define BOOST_PP_ITERATION_1 237 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 238 && BOOST_PP_ITERATION_FINISH_1 >= 238 +# define BOOST_PP_ITERATION_1 238 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 239 && BOOST_PP_ITERATION_FINISH_1 >= 239 +# define BOOST_PP_ITERATION_1 239 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 240 && BOOST_PP_ITERATION_FINISH_1 >= 240 +# define BOOST_PP_ITERATION_1 240 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 241 && BOOST_PP_ITERATION_FINISH_1 >= 241 +# define BOOST_PP_ITERATION_1 241 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 242 && BOOST_PP_ITERATION_FINISH_1 >= 242 +# define BOOST_PP_ITERATION_1 242 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 243 && BOOST_PP_ITERATION_FINISH_1 >= 243 +# define BOOST_PP_ITERATION_1 243 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 244 && BOOST_PP_ITERATION_FINISH_1 >= 244 +# define BOOST_PP_ITERATION_1 244 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 245 && BOOST_PP_ITERATION_FINISH_1 >= 245 +# define BOOST_PP_ITERATION_1 245 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 246 && BOOST_PP_ITERATION_FINISH_1 >= 246 +# define BOOST_PP_ITERATION_1 246 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 247 && BOOST_PP_ITERATION_FINISH_1 >= 247 +# define BOOST_PP_ITERATION_1 247 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 248 && BOOST_PP_ITERATION_FINISH_1 >= 248 +# define BOOST_PP_ITERATION_1 248 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 249 && BOOST_PP_ITERATION_FINISH_1 >= 249 +# define BOOST_PP_ITERATION_1 249 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 250 && BOOST_PP_ITERATION_FINISH_1 >= 250 +# define BOOST_PP_ITERATION_1 250 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 251 && BOOST_PP_ITERATION_FINISH_1 >= 251 +# define BOOST_PP_ITERATION_1 251 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 252 && BOOST_PP_ITERATION_FINISH_1 >= 252 +# define BOOST_PP_ITERATION_1 252 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 253 && BOOST_PP_ITERATION_FINISH_1 >= 253 +# define BOOST_PP_ITERATION_1 253 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 254 && BOOST_PP_ITERATION_FINISH_1 >= 254 +# define BOOST_PP_ITERATION_1 254 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 255 && BOOST_PP_ITERATION_FINISH_1 >= 255 +# define BOOST_PP_ITERATION_1 255 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_START_1 <= 256 && BOOST_PP_ITERATION_FINISH_1 >= 256 +# define BOOST_PP_ITERATION_1 256 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# endif +# +# undef BOOST_PP_IS_ITERATING +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 0 +# +# undef BOOST_PP_ITERATION_START_1 +# undef BOOST_PP_ITERATION_FINISH_1 +# undef BOOST_PP_FILENAME_1 +# +# undef BOOST_PP_ITERATION_FLAGS_1 +# undef BOOST_PP_ITERATION_PARAMS_1 diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward2.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward2.hpp new file mode 100644 index 0000000..e61a329 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward2.hpp @@ -0,0 +1,1338 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if defined(BOOST_PP_ITERATION_LIMITS) +# if !defined(BOOST_PP_FILENAME_2) +# error BOOST_PP_ERROR: depth #2 filename is not defined +# endif +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_ITERATION_FLAGS_2() 0 +# undef BOOST_PP_ITERATION_LIMITS +# elif defined(BOOST_PP_ITERATION_PARAMS_2) +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(0, BOOST_PP_ITERATION_PARAMS_2) +# include +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(1, BOOST_PP_ITERATION_PARAMS_2) +# include +# define BOOST_PP_FILENAME_2 BOOST_PP_ARRAY_ELEM(2, BOOST_PP_ITERATION_PARAMS_2) +# if BOOST_PP_ARRAY_SIZE(BOOST_PP_ITERATION_PARAMS_2) >= 4 +# define BOOST_PP_ITERATION_FLAGS_2() BOOST_PP_ARRAY_ELEM(3, BOOST_PP_ITERATION_PARAMS_2) +# else +# define BOOST_PP_ITERATION_FLAGS_2() 0 +# endif +# else +# error BOOST_PP_ERROR: depth #2 iteration boundaries or filename not defined +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 2 +# +# if (BOOST_PP_ITERATION_START_2) > (BOOST_PP_ITERATION_FINISH_2) +# include +# else +# if BOOST_PP_ITERATION_START_2 <= 0 && BOOST_PP_ITERATION_FINISH_2 >= 0 +# define BOOST_PP_ITERATION_2 0 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 1 && BOOST_PP_ITERATION_FINISH_2 >= 1 +# define BOOST_PP_ITERATION_2 1 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 2 && BOOST_PP_ITERATION_FINISH_2 >= 2 +# define BOOST_PP_ITERATION_2 2 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 3 && BOOST_PP_ITERATION_FINISH_2 >= 3 +# define BOOST_PP_ITERATION_2 3 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 4 && BOOST_PP_ITERATION_FINISH_2 >= 4 +# define BOOST_PP_ITERATION_2 4 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 5 && BOOST_PP_ITERATION_FINISH_2 >= 5 +# define BOOST_PP_ITERATION_2 5 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 6 && BOOST_PP_ITERATION_FINISH_2 >= 6 +# define BOOST_PP_ITERATION_2 6 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 7 && BOOST_PP_ITERATION_FINISH_2 >= 7 +# define BOOST_PP_ITERATION_2 7 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 8 && BOOST_PP_ITERATION_FINISH_2 >= 8 +# define BOOST_PP_ITERATION_2 8 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 9 && BOOST_PP_ITERATION_FINISH_2 >= 9 +# define BOOST_PP_ITERATION_2 9 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 10 && BOOST_PP_ITERATION_FINISH_2 >= 10 +# define BOOST_PP_ITERATION_2 10 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 11 && BOOST_PP_ITERATION_FINISH_2 >= 11 +# define BOOST_PP_ITERATION_2 11 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 12 && BOOST_PP_ITERATION_FINISH_2 >= 12 +# define BOOST_PP_ITERATION_2 12 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 13 && BOOST_PP_ITERATION_FINISH_2 >= 13 +# define BOOST_PP_ITERATION_2 13 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 14 && BOOST_PP_ITERATION_FINISH_2 >= 14 +# define BOOST_PP_ITERATION_2 14 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 15 && BOOST_PP_ITERATION_FINISH_2 >= 15 +# define BOOST_PP_ITERATION_2 15 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 16 && BOOST_PP_ITERATION_FINISH_2 >= 16 +# define BOOST_PP_ITERATION_2 16 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 17 && BOOST_PP_ITERATION_FINISH_2 >= 17 +# define BOOST_PP_ITERATION_2 17 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 18 && BOOST_PP_ITERATION_FINISH_2 >= 18 +# define BOOST_PP_ITERATION_2 18 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 19 && BOOST_PP_ITERATION_FINISH_2 >= 19 +# define BOOST_PP_ITERATION_2 19 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 20 && BOOST_PP_ITERATION_FINISH_2 >= 20 +# define BOOST_PP_ITERATION_2 20 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 21 && BOOST_PP_ITERATION_FINISH_2 >= 21 +# define BOOST_PP_ITERATION_2 21 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 22 && BOOST_PP_ITERATION_FINISH_2 >= 22 +# define BOOST_PP_ITERATION_2 22 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 23 && BOOST_PP_ITERATION_FINISH_2 >= 23 +# define BOOST_PP_ITERATION_2 23 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 24 && BOOST_PP_ITERATION_FINISH_2 >= 24 +# define BOOST_PP_ITERATION_2 24 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 25 && BOOST_PP_ITERATION_FINISH_2 >= 25 +# define BOOST_PP_ITERATION_2 25 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 26 && BOOST_PP_ITERATION_FINISH_2 >= 26 +# define BOOST_PP_ITERATION_2 26 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 27 && BOOST_PP_ITERATION_FINISH_2 >= 27 +# define BOOST_PP_ITERATION_2 27 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 28 && BOOST_PP_ITERATION_FINISH_2 >= 28 +# define BOOST_PP_ITERATION_2 28 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 29 && BOOST_PP_ITERATION_FINISH_2 >= 29 +# define BOOST_PP_ITERATION_2 29 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 30 && BOOST_PP_ITERATION_FINISH_2 >= 30 +# define BOOST_PP_ITERATION_2 30 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 31 && BOOST_PP_ITERATION_FINISH_2 >= 31 +# define BOOST_PP_ITERATION_2 31 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 32 && BOOST_PP_ITERATION_FINISH_2 >= 32 +# define BOOST_PP_ITERATION_2 32 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 33 && BOOST_PP_ITERATION_FINISH_2 >= 33 +# define BOOST_PP_ITERATION_2 33 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 34 && BOOST_PP_ITERATION_FINISH_2 >= 34 +# define BOOST_PP_ITERATION_2 34 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 35 && BOOST_PP_ITERATION_FINISH_2 >= 35 +# define BOOST_PP_ITERATION_2 35 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 36 && BOOST_PP_ITERATION_FINISH_2 >= 36 +# define BOOST_PP_ITERATION_2 36 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 37 && BOOST_PP_ITERATION_FINISH_2 >= 37 +# define BOOST_PP_ITERATION_2 37 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 38 && BOOST_PP_ITERATION_FINISH_2 >= 38 +# define BOOST_PP_ITERATION_2 38 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 39 && BOOST_PP_ITERATION_FINISH_2 >= 39 +# define BOOST_PP_ITERATION_2 39 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 40 && BOOST_PP_ITERATION_FINISH_2 >= 40 +# define BOOST_PP_ITERATION_2 40 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 41 && BOOST_PP_ITERATION_FINISH_2 >= 41 +# define BOOST_PP_ITERATION_2 41 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 42 && BOOST_PP_ITERATION_FINISH_2 >= 42 +# define BOOST_PP_ITERATION_2 42 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 43 && BOOST_PP_ITERATION_FINISH_2 >= 43 +# define BOOST_PP_ITERATION_2 43 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 44 && BOOST_PP_ITERATION_FINISH_2 >= 44 +# define BOOST_PP_ITERATION_2 44 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 45 && BOOST_PP_ITERATION_FINISH_2 >= 45 +# define BOOST_PP_ITERATION_2 45 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 46 && BOOST_PP_ITERATION_FINISH_2 >= 46 +# define BOOST_PP_ITERATION_2 46 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 47 && BOOST_PP_ITERATION_FINISH_2 >= 47 +# define BOOST_PP_ITERATION_2 47 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 48 && BOOST_PP_ITERATION_FINISH_2 >= 48 +# define BOOST_PP_ITERATION_2 48 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 49 && BOOST_PP_ITERATION_FINISH_2 >= 49 +# define BOOST_PP_ITERATION_2 49 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 50 && BOOST_PP_ITERATION_FINISH_2 >= 50 +# define BOOST_PP_ITERATION_2 50 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 51 && BOOST_PP_ITERATION_FINISH_2 >= 51 +# define BOOST_PP_ITERATION_2 51 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 52 && BOOST_PP_ITERATION_FINISH_2 >= 52 +# define BOOST_PP_ITERATION_2 52 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 53 && BOOST_PP_ITERATION_FINISH_2 >= 53 +# define BOOST_PP_ITERATION_2 53 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 54 && BOOST_PP_ITERATION_FINISH_2 >= 54 +# define BOOST_PP_ITERATION_2 54 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 55 && BOOST_PP_ITERATION_FINISH_2 >= 55 +# define BOOST_PP_ITERATION_2 55 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 56 && BOOST_PP_ITERATION_FINISH_2 >= 56 +# define BOOST_PP_ITERATION_2 56 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 57 && BOOST_PP_ITERATION_FINISH_2 >= 57 +# define BOOST_PP_ITERATION_2 57 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 58 && BOOST_PP_ITERATION_FINISH_2 >= 58 +# define BOOST_PP_ITERATION_2 58 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 59 && BOOST_PP_ITERATION_FINISH_2 >= 59 +# define BOOST_PP_ITERATION_2 59 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 60 && BOOST_PP_ITERATION_FINISH_2 >= 60 +# define BOOST_PP_ITERATION_2 60 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 61 && BOOST_PP_ITERATION_FINISH_2 >= 61 +# define BOOST_PP_ITERATION_2 61 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 62 && BOOST_PP_ITERATION_FINISH_2 >= 62 +# define BOOST_PP_ITERATION_2 62 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 63 && BOOST_PP_ITERATION_FINISH_2 >= 63 +# define BOOST_PP_ITERATION_2 63 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 64 && BOOST_PP_ITERATION_FINISH_2 >= 64 +# define BOOST_PP_ITERATION_2 64 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 65 && BOOST_PP_ITERATION_FINISH_2 >= 65 +# define BOOST_PP_ITERATION_2 65 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 66 && BOOST_PP_ITERATION_FINISH_2 >= 66 +# define BOOST_PP_ITERATION_2 66 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 67 && BOOST_PP_ITERATION_FINISH_2 >= 67 +# define BOOST_PP_ITERATION_2 67 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 68 && BOOST_PP_ITERATION_FINISH_2 >= 68 +# define BOOST_PP_ITERATION_2 68 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 69 && BOOST_PP_ITERATION_FINISH_2 >= 69 +# define BOOST_PP_ITERATION_2 69 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 70 && BOOST_PP_ITERATION_FINISH_2 >= 70 +# define BOOST_PP_ITERATION_2 70 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 71 && BOOST_PP_ITERATION_FINISH_2 >= 71 +# define BOOST_PP_ITERATION_2 71 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 72 && BOOST_PP_ITERATION_FINISH_2 >= 72 +# define BOOST_PP_ITERATION_2 72 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 73 && BOOST_PP_ITERATION_FINISH_2 >= 73 +# define BOOST_PP_ITERATION_2 73 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 74 && BOOST_PP_ITERATION_FINISH_2 >= 74 +# define BOOST_PP_ITERATION_2 74 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 75 && BOOST_PP_ITERATION_FINISH_2 >= 75 +# define BOOST_PP_ITERATION_2 75 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 76 && BOOST_PP_ITERATION_FINISH_2 >= 76 +# define BOOST_PP_ITERATION_2 76 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 77 && BOOST_PP_ITERATION_FINISH_2 >= 77 +# define BOOST_PP_ITERATION_2 77 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 78 && BOOST_PP_ITERATION_FINISH_2 >= 78 +# define BOOST_PP_ITERATION_2 78 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 79 && BOOST_PP_ITERATION_FINISH_2 >= 79 +# define BOOST_PP_ITERATION_2 79 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 80 && BOOST_PP_ITERATION_FINISH_2 >= 80 +# define BOOST_PP_ITERATION_2 80 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 81 && BOOST_PP_ITERATION_FINISH_2 >= 81 +# define BOOST_PP_ITERATION_2 81 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 82 && BOOST_PP_ITERATION_FINISH_2 >= 82 +# define BOOST_PP_ITERATION_2 82 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 83 && BOOST_PP_ITERATION_FINISH_2 >= 83 +# define BOOST_PP_ITERATION_2 83 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 84 && BOOST_PP_ITERATION_FINISH_2 >= 84 +# define BOOST_PP_ITERATION_2 84 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 85 && BOOST_PP_ITERATION_FINISH_2 >= 85 +# define BOOST_PP_ITERATION_2 85 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 86 && BOOST_PP_ITERATION_FINISH_2 >= 86 +# define BOOST_PP_ITERATION_2 86 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 87 && BOOST_PP_ITERATION_FINISH_2 >= 87 +# define BOOST_PP_ITERATION_2 87 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 88 && BOOST_PP_ITERATION_FINISH_2 >= 88 +# define BOOST_PP_ITERATION_2 88 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 89 && BOOST_PP_ITERATION_FINISH_2 >= 89 +# define BOOST_PP_ITERATION_2 89 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 90 && BOOST_PP_ITERATION_FINISH_2 >= 90 +# define BOOST_PP_ITERATION_2 90 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 91 && BOOST_PP_ITERATION_FINISH_2 >= 91 +# define BOOST_PP_ITERATION_2 91 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 92 && BOOST_PP_ITERATION_FINISH_2 >= 92 +# define BOOST_PP_ITERATION_2 92 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 93 && BOOST_PP_ITERATION_FINISH_2 >= 93 +# define BOOST_PP_ITERATION_2 93 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 94 && BOOST_PP_ITERATION_FINISH_2 >= 94 +# define BOOST_PP_ITERATION_2 94 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 95 && BOOST_PP_ITERATION_FINISH_2 >= 95 +# define BOOST_PP_ITERATION_2 95 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 96 && BOOST_PP_ITERATION_FINISH_2 >= 96 +# define BOOST_PP_ITERATION_2 96 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 97 && BOOST_PP_ITERATION_FINISH_2 >= 97 +# define BOOST_PP_ITERATION_2 97 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 98 && BOOST_PP_ITERATION_FINISH_2 >= 98 +# define BOOST_PP_ITERATION_2 98 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 99 && BOOST_PP_ITERATION_FINISH_2 >= 99 +# define BOOST_PP_ITERATION_2 99 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 100 && BOOST_PP_ITERATION_FINISH_2 >= 100 +# define BOOST_PP_ITERATION_2 100 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 101 && BOOST_PP_ITERATION_FINISH_2 >= 101 +# define BOOST_PP_ITERATION_2 101 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 102 && BOOST_PP_ITERATION_FINISH_2 >= 102 +# define BOOST_PP_ITERATION_2 102 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 103 && BOOST_PP_ITERATION_FINISH_2 >= 103 +# define BOOST_PP_ITERATION_2 103 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 104 && BOOST_PP_ITERATION_FINISH_2 >= 104 +# define BOOST_PP_ITERATION_2 104 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 105 && BOOST_PP_ITERATION_FINISH_2 >= 105 +# define BOOST_PP_ITERATION_2 105 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 106 && BOOST_PP_ITERATION_FINISH_2 >= 106 +# define BOOST_PP_ITERATION_2 106 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 107 && BOOST_PP_ITERATION_FINISH_2 >= 107 +# define BOOST_PP_ITERATION_2 107 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 108 && BOOST_PP_ITERATION_FINISH_2 >= 108 +# define BOOST_PP_ITERATION_2 108 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 109 && BOOST_PP_ITERATION_FINISH_2 >= 109 +# define BOOST_PP_ITERATION_2 109 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 110 && BOOST_PP_ITERATION_FINISH_2 >= 110 +# define BOOST_PP_ITERATION_2 110 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 111 && BOOST_PP_ITERATION_FINISH_2 >= 111 +# define BOOST_PP_ITERATION_2 111 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 112 && BOOST_PP_ITERATION_FINISH_2 >= 112 +# define BOOST_PP_ITERATION_2 112 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 113 && BOOST_PP_ITERATION_FINISH_2 >= 113 +# define BOOST_PP_ITERATION_2 113 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 114 && BOOST_PP_ITERATION_FINISH_2 >= 114 +# define BOOST_PP_ITERATION_2 114 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 115 && BOOST_PP_ITERATION_FINISH_2 >= 115 +# define BOOST_PP_ITERATION_2 115 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 116 && BOOST_PP_ITERATION_FINISH_2 >= 116 +# define BOOST_PP_ITERATION_2 116 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 117 && BOOST_PP_ITERATION_FINISH_2 >= 117 +# define BOOST_PP_ITERATION_2 117 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 118 && BOOST_PP_ITERATION_FINISH_2 >= 118 +# define BOOST_PP_ITERATION_2 118 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 119 && BOOST_PP_ITERATION_FINISH_2 >= 119 +# define BOOST_PP_ITERATION_2 119 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 120 && BOOST_PP_ITERATION_FINISH_2 >= 120 +# define BOOST_PP_ITERATION_2 120 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 121 && BOOST_PP_ITERATION_FINISH_2 >= 121 +# define BOOST_PP_ITERATION_2 121 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 122 && BOOST_PP_ITERATION_FINISH_2 >= 122 +# define BOOST_PP_ITERATION_2 122 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 123 && BOOST_PP_ITERATION_FINISH_2 >= 123 +# define BOOST_PP_ITERATION_2 123 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 124 && BOOST_PP_ITERATION_FINISH_2 >= 124 +# define BOOST_PP_ITERATION_2 124 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 125 && BOOST_PP_ITERATION_FINISH_2 >= 125 +# define BOOST_PP_ITERATION_2 125 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 126 && BOOST_PP_ITERATION_FINISH_2 >= 126 +# define BOOST_PP_ITERATION_2 126 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 127 && BOOST_PP_ITERATION_FINISH_2 >= 127 +# define BOOST_PP_ITERATION_2 127 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 128 && BOOST_PP_ITERATION_FINISH_2 >= 128 +# define BOOST_PP_ITERATION_2 128 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 129 && BOOST_PP_ITERATION_FINISH_2 >= 129 +# define BOOST_PP_ITERATION_2 129 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 130 && BOOST_PP_ITERATION_FINISH_2 >= 130 +# define BOOST_PP_ITERATION_2 130 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 131 && BOOST_PP_ITERATION_FINISH_2 >= 131 +# define BOOST_PP_ITERATION_2 131 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 132 && BOOST_PP_ITERATION_FINISH_2 >= 132 +# define BOOST_PP_ITERATION_2 132 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 133 && BOOST_PP_ITERATION_FINISH_2 >= 133 +# define BOOST_PP_ITERATION_2 133 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 134 && BOOST_PP_ITERATION_FINISH_2 >= 134 +# define BOOST_PP_ITERATION_2 134 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 135 && BOOST_PP_ITERATION_FINISH_2 >= 135 +# define BOOST_PP_ITERATION_2 135 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 136 && BOOST_PP_ITERATION_FINISH_2 >= 136 +# define BOOST_PP_ITERATION_2 136 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 137 && BOOST_PP_ITERATION_FINISH_2 >= 137 +# define BOOST_PP_ITERATION_2 137 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 138 && BOOST_PP_ITERATION_FINISH_2 >= 138 +# define BOOST_PP_ITERATION_2 138 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 139 && BOOST_PP_ITERATION_FINISH_2 >= 139 +# define BOOST_PP_ITERATION_2 139 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 140 && BOOST_PP_ITERATION_FINISH_2 >= 140 +# define BOOST_PP_ITERATION_2 140 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 141 && BOOST_PP_ITERATION_FINISH_2 >= 141 +# define BOOST_PP_ITERATION_2 141 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 142 && BOOST_PP_ITERATION_FINISH_2 >= 142 +# define BOOST_PP_ITERATION_2 142 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 143 && BOOST_PP_ITERATION_FINISH_2 >= 143 +# define BOOST_PP_ITERATION_2 143 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 144 && BOOST_PP_ITERATION_FINISH_2 >= 144 +# define BOOST_PP_ITERATION_2 144 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 145 && BOOST_PP_ITERATION_FINISH_2 >= 145 +# define BOOST_PP_ITERATION_2 145 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 146 && BOOST_PP_ITERATION_FINISH_2 >= 146 +# define BOOST_PP_ITERATION_2 146 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 147 && BOOST_PP_ITERATION_FINISH_2 >= 147 +# define BOOST_PP_ITERATION_2 147 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 148 && BOOST_PP_ITERATION_FINISH_2 >= 148 +# define BOOST_PP_ITERATION_2 148 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 149 && BOOST_PP_ITERATION_FINISH_2 >= 149 +# define BOOST_PP_ITERATION_2 149 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 150 && BOOST_PP_ITERATION_FINISH_2 >= 150 +# define BOOST_PP_ITERATION_2 150 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 151 && BOOST_PP_ITERATION_FINISH_2 >= 151 +# define BOOST_PP_ITERATION_2 151 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 152 && BOOST_PP_ITERATION_FINISH_2 >= 152 +# define BOOST_PP_ITERATION_2 152 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 153 && BOOST_PP_ITERATION_FINISH_2 >= 153 +# define BOOST_PP_ITERATION_2 153 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 154 && BOOST_PP_ITERATION_FINISH_2 >= 154 +# define BOOST_PP_ITERATION_2 154 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 155 && BOOST_PP_ITERATION_FINISH_2 >= 155 +# define BOOST_PP_ITERATION_2 155 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 156 && BOOST_PP_ITERATION_FINISH_2 >= 156 +# define BOOST_PP_ITERATION_2 156 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 157 && BOOST_PP_ITERATION_FINISH_2 >= 157 +# define BOOST_PP_ITERATION_2 157 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 158 && BOOST_PP_ITERATION_FINISH_2 >= 158 +# define BOOST_PP_ITERATION_2 158 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 159 && BOOST_PP_ITERATION_FINISH_2 >= 159 +# define BOOST_PP_ITERATION_2 159 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 160 && BOOST_PP_ITERATION_FINISH_2 >= 160 +# define BOOST_PP_ITERATION_2 160 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 161 && BOOST_PP_ITERATION_FINISH_2 >= 161 +# define BOOST_PP_ITERATION_2 161 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 162 && BOOST_PP_ITERATION_FINISH_2 >= 162 +# define BOOST_PP_ITERATION_2 162 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 163 && BOOST_PP_ITERATION_FINISH_2 >= 163 +# define BOOST_PP_ITERATION_2 163 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 164 && BOOST_PP_ITERATION_FINISH_2 >= 164 +# define BOOST_PP_ITERATION_2 164 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 165 && BOOST_PP_ITERATION_FINISH_2 >= 165 +# define BOOST_PP_ITERATION_2 165 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 166 && BOOST_PP_ITERATION_FINISH_2 >= 166 +# define BOOST_PP_ITERATION_2 166 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 167 && BOOST_PP_ITERATION_FINISH_2 >= 167 +# define BOOST_PP_ITERATION_2 167 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 168 && BOOST_PP_ITERATION_FINISH_2 >= 168 +# define BOOST_PP_ITERATION_2 168 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 169 && BOOST_PP_ITERATION_FINISH_2 >= 169 +# define BOOST_PP_ITERATION_2 169 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 170 && BOOST_PP_ITERATION_FINISH_2 >= 170 +# define BOOST_PP_ITERATION_2 170 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 171 && BOOST_PP_ITERATION_FINISH_2 >= 171 +# define BOOST_PP_ITERATION_2 171 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 172 && BOOST_PP_ITERATION_FINISH_2 >= 172 +# define BOOST_PP_ITERATION_2 172 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 173 && BOOST_PP_ITERATION_FINISH_2 >= 173 +# define BOOST_PP_ITERATION_2 173 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 174 && BOOST_PP_ITERATION_FINISH_2 >= 174 +# define BOOST_PP_ITERATION_2 174 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 175 && BOOST_PP_ITERATION_FINISH_2 >= 175 +# define BOOST_PP_ITERATION_2 175 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 176 && BOOST_PP_ITERATION_FINISH_2 >= 176 +# define BOOST_PP_ITERATION_2 176 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 177 && BOOST_PP_ITERATION_FINISH_2 >= 177 +# define BOOST_PP_ITERATION_2 177 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 178 && BOOST_PP_ITERATION_FINISH_2 >= 178 +# define BOOST_PP_ITERATION_2 178 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 179 && BOOST_PP_ITERATION_FINISH_2 >= 179 +# define BOOST_PP_ITERATION_2 179 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 180 && BOOST_PP_ITERATION_FINISH_2 >= 180 +# define BOOST_PP_ITERATION_2 180 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 181 && BOOST_PP_ITERATION_FINISH_2 >= 181 +# define BOOST_PP_ITERATION_2 181 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 182 && BOOST_PP_ITERATION_FINISH_2 >= 182 +# define BOOST_PP_ITERATION_2 182 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 183 && BOOST_PP_ITERATION_FINISH_2 >= 183 +# define BOOST_PP_ITERATION_2 183 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 184 && BOOST_PP_ITERATION_FINISH_2 >= 184 +# define BOOST_PP_ITERATION_2 184 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 185 && BOOST_PP_ITERATION_FINISH_2 >= 185 +# define BOOST_PP_ITERATION_2 185 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 186 && BOOST_PP_ITERATION_FINISH_2 >= 186 +# define BOOST_PP_ITERATION_2 186 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 187 && BOOST_PP_ITERATION_FINISH_2 >= 187 +# define BOOST_PP_ITERATION_2 187 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 188 && BOOST_PP_ITERATION_FINISH_2 >= 188 +# define BOOST_PP_ITERATION_2 188 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 189 && BOOST_PP_ITERATION_FINISH_2 >= 189 +# define BOOST_PP_ITERATION_2 189 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 190 && BOOST_PP_ITERATION_FINISH_2 >= 190 +# define BOOST_PP_ITERATION_2 190 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 191 && BOOST_PP_ITERATION_FINISH_2 >= 191 +# define BOOST_PP_ITERATION_2 191 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 192 && BOOST_PP_ITERATION_FINISH_2 >= 192 +# define BOOST_PP_ITERATION_2 192 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 193 && BOOST_PP_ITERATION_FINISH_2 >= 193 +# define BOOST_PP_ITERATION_2 193 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 194 && BOOST_PP_ITERATION_FINISH_2 >= 194 +# define BOOST_PP_ITERATION_2 194 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 195 && BOOST_PP_ITERATION_FINISH_2 >= 195 +# define BOOST_PP_ITERATION_2 195 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 196 && BOOST_PP_ITERATION_FINISH_2 >= 196 +# define BOOST_PP_ITERATION_2 196 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 197 && BOOST_PP_ITERATION_FINISH_2 >= 197 +# define BOOST_PP_ITERATION_2 197 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 198 && BOOST_PP_ITERATION_FINISH_2 >= 198 +# define BOOST_PP_ITERATION_2 198 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 199 && BOOST_PP_ITERATION_FINISH_2 >= 199 +# define BOOST_PP_ITERATION_2 199 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 200 && BOOST_PP_ITERATION_FINISH_2 >= 200 +# define BOOST_PP_ITERATION_2 200 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 201 && BOOST_PP_ITERATION_FINISH_2 >= 201 +# define BOOST_PP_ITERATION_2 201 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 202 && BOOST_PP_ITERATION_FINISH_2 >= 202 +# define BOOST_PP_ITERATION_2 202 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 203 && BOOST_PP_ITERATION_FINISH_2 >= 203 +# define BOOST_PP_ITERATION_2 203 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 204 && BOOST_PP_ITERATION_FINISH_2 >= 204 +# define BOOST_PP_ITERATION_2 204 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 205 && BOOST_PP_ITERATION_FINISH_2 >= 205 +# define BOOST_PP_ITERATION_2 205 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 206 && BOOST_PP_ITERATION_FINISH_2 >= 206 +# define BOOST_PP_ITERATION_2 206 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 207 && BOOST_PP_ITERATION_FINISH_2 >= 207 +# define BOOST_PP_ITERATION_2 207 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 208 && BOOST_PP_ITERATION_FINISH_2 >= 208 +# define BOOST_PP_ITERATION_2 208 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 209 && BOOST_PP_ITERATION_FINISH_2 >= 209 +# define BOOST_PP_ITERATION_2 209 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 210 && BOOST_PP_ITERATION_FINISH_2 >= 210 +# define BOOST_PP_ITERATION_2 210 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 211 && BOOST_PP_ITERATION_FINISH_2 >= 211 +# define BOOST_PP_ITERATION_2 211 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 212 && BOOST_PP_ITERATION_FINISH_2 >= 212 +# define BOOST_PP_ITERATION_2 212 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 213 && BOOST_PP_ITERATION_FINISH_2 >= 213 +# define BOOST_PP_ITERATION_2 213 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 214 && BOOST_PP_ITERATION_FINISH_2 >= 214 +# define BOOST_PP_ITERATION_2 214 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 215 && BOOST_PP_ITERATION_FINISH_2 >= 215 +# define BOOST_PP_ITERATION_2 215 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 216 && BOOST_PP_ITERATION_FINISH_2 >= 216 +# define BOOST_PP_ITERATION_2 216 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 217 && BOOST_PP_ITERATION_FINISH_2 >= 217 +# define BOOST_PP_ITERATION_2 217 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 218 && BOOST_PP_ITERATION_FINISH_2 >= 218 +# define BOOST_PP_ITERATION_2 218 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 219 && BOOST_PP_ITERATION_FINISH_2 >= 219 +# define BOOST_PP_ITERATION_2 219 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 220 && BOOST_PP_ITERATION_FINISH_2 >= 220 +# define BOOST_PP_ITERATION_2 220 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 221 && BOOST_PP_ITERATION_FINISH_2 >= 221 +# define BOOST_PP_ITERATION_2 221 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 222 && BOOST_PP_ITERATION_FINISH_2 >= 222 +# define BOOST_PP_ITERATION_2 222 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 223 && BOOST_PP_ITERATION_FINISH_2 >= 223 +# define BOOST_PP_ITERATION_2 223 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 224 && BOOST_PP_ITERATION_FINISH_2 >= 224 +# define BOOST_PP_ITERATION_2 224 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 225 && BOOST_PP_ITERATION_FINISH_2 >= 225 +# define BOOST_PP_ITERATION_2 225 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 226 && BOOST_PP_ITERATION_FINISH_2 >= 226 +# define BOOST_PP_ITERATION_2 226 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 227 && BOOST_PP_ITERATION_FINISH_2 >= 227 +# define BOOST_PP_ITERATION_2 227 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 228 && BOOST_PP_ITERATION_FINISH_2 >= 228 +# define BOOST_PP_ITERATION_2 228 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 229 && BOOST_PP_ITERATION_FINISH_2 >= 229 +# define BOOST_PP_ITERATION_2 229 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 230 && BOOST_PP_ITERATION_FINISH_2 >= 230 +# define BOOST_PP_ITERATION_2 230 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 231 && BOOST_PP_ITERATION_FINISH_2 >= 231 +# define BOOST_PP_ITERATION_2 231 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 232 && BOOST_PP_ITERATION_FINISH_2 >= 232 +# define BOOST_PP_ITERATION_2 232 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 233 && BOOST_PP_ITERATION_FINISH_2 >= 233 +# define BOOST_PP_ITERATION_2 233 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 234 && BOOST_PP_ITERATION_FINISH_2 >= 234 +# define BOOST_PP_ITERATION_2 234 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 235 && BOOST_PP_ITERATION_FINISH_2 >= 235 +# define BOOST_PP_ITERATION_2 235 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 236 && BOOST_PP_ITERATION_FINISH_2 >= 236 +# define BOOST_PP_ITERATION_2 236 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 237 && BOOST_PP_ITERATION_FINISH_2 >= 237 +# define BOOST_PP_ITERATION_2 237 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 238 && BOOST_PP_ITERATION_FINISH_2 >= 238 +# define BOOST_PP_ITERATION_2 238 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 239 && BOOST_PP_ITERATION_FINISH_2 >= 239 +# define BOOST_PP_ITERATION_2 239 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 240 && BOOST_PP_ITERATION_FINISH_2 >= 240 +# define BOOST_PP_ITERATION_2 240 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 241 && BOOST_PP_ITERATION_FINISH_2 >= 241 +# define BOOST_PP_ITERATION_2 241 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 242 && BOOST_PP_ITERATION_FINISH_2 >= 242 +# define BOOST_PP_ITERATION_2 242 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 243 && BOOST_PP_ITERATION_FINISH_2 >= 243 +# define BOOST_PP_ITERATION_2 243 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 244 && BOOST_PP_ITERATION_FINISH_2 >= 244 +# define BOOST_PP_ITERATION_2 244 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 245 && BOOST_PP_ITERATION_FINISH_2 >= 245 +# define BOOST_PP_ITERATION_2 245 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 246 && BOOST_PP_ITERATION_FINISH_2 >= 246 +# define BOOST_PP_ITERATION_2 246 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 247 && BOOST_PP_ITERATION_FINISH_2 >= 247 +# define BOOST_PP_ITERATION_2 247 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 248 && BOOST_PP_ITERATION_FINISH_2 >= 248 +# define BOOST_PP_ITERATION_2 248 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 249 && BOOST_PP_ITERATION_FINISH_2 >= 249 +# define BOOST_PP_ITERATION_2 249 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 250 && BOOST_PP_ITERATION_FINISH_2 >= 250 +# define BOOST_PP_ITERATION_2 250 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 251 && BOOST_PP_ITERATION_FINISH_2 >= 251 +# define BOOST_PP_ITERATION_2 251 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 252 && BOOST_PP_ITERATION_FINISH_2 >= 252 +# define BOOST_PP_ITERATION_2 252 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 253 && BOOST_PP_ITERATION_FINISH_2 >= 253 +# define BOOST_PP_ITERATION_2 253 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 254 && BOOST_PP_ITERATION_FINISH_2 >= 254 +# define BOOST_PP_ITERATION_2 254 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 255 && BOOST_PP_ITERATION_FINISH_2 >= 255 +# define BOOST_PP_ITERATION_2 255 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_START_2 <= 256 && BOOST_PP_ITERATION_FINISH_2 >= 256 +# define BOOST_PP_ITERATION_2 256 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 1 +# +# undef BOOST_PP_ITERATION_START_2 +# undef BOOST_PP_ITERATION_FINISH_2 +# undef BOOST_PP_FILENAME_2 +# +# undef BOOST_PP_ITERATION_FLAGS_2 +# undef BOOST_PP_ITERATION_PARAMS_2 diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward3.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward3.hpp new file mode 100644 index 0000000..e68966f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward3.hpp @@ -0,0 +1,1338 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if defined(BOOST_PP_ITERATION_LIMITS) +# if !defined(BOOST_PP_FILENAME_3) +# error BOOST_PP_ERROR: depth #3 filename is not defined +# endif +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_ITERATION_FLAGS_3() 0 +# undef BOOST_PP_ITERATION_LIMITS +# elif defined(BOOST_PP_ITERATION_PARAMS_3) +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(0, BOOST_PP_ITERATION_PARAMS_3) +# include +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(1, BOOST_PP_ITERATION_PARAMS_3) +# include +# define BOOST_PP_FILENAME_3 BOOST_PP_ARRAY_ELEM(2, BOOST_PP_ITERATION_PARAMS_3) +# if BOOST_PP_ARRAY_SIZE(BOOST_PP_ITERATION_PARAMS_3) >= 4 +# define BOOST_PP_ITERATION_FLAGS_3() BOOST_PP_ARRAY_ELEM(3, BOOST_PP_ITERATION_PARAMS_3) +# else +# define BOOST_PP_ITERATION_FLAGS_3() 0 +# endif +# else +# error BOOST_PP_ERROR: depth #3 iteration boundaries or filename not defined +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 3 +# +# if (BOOST_PP_ITERATION_START_3) > (BOOST_PP_ITERATION_FINISH_3) +# include +# else +# if BOOST_PP_ITERATION_START_3 <= 0 && BOOST_PP_ITERATION_FINISH_3 >= 0 +# define BOOST_PP_ITERATION_3 0 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 1 && BOOST_PP_ITERATION_FINISH_3 >= 1 +# define BOOST_PP_ITERATION_3 1 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 2 && BOOST_PP_ITERATION_FINISH_3 >= 2 +# define BOOST_PP_ITERATION_3 2 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 3 && BOOST_PP_ITERATION_FINISH_3 >= 3 +# define BOOST_PP_ITERATION_3 3 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 4 && BOOST_PP_ITERATION_FINISH_3 >= 4 +# define BOOST_PP_ITERATION_3 4 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 5 && BOOST_PP_ITERATION_FINISH_3 >= 5 +# define BOOST_PP_ITERATION_3 5 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 6 && BOOST_PP_ITERATION_FINISH_3 >= 6 +# define BOOST_PP_ITERATION_3 6 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 7 && BOOST_PP_ITERATION_FINISH_3 >= 7 +# define BOOST_PP_ITERATION_3 7 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 8 && BOOST_PP_ITERATION_FINISH_3 >= 8 +# define BOOST_PP_ITERATION_3 8 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 9 && BOOST_PP_ITERATION_FINISH_3 >= 9 +# define BOOST_PP_ITERATION_3 9 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 10 && BOOST_PP_ITERATION_FINISH_3 >= 10 +# define BOOST_PP_ITERATION_3 10 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 11 && BOOST_PP_ITERATION_FINISH_3 >= 11 +# define BOOST_PP_ITERATION_3 11 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 12 && BOOST_PP_ITERATION_FINISH_3 >= 12 +# define BOOST_PP_ITERATION_3 12 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 13 && BOOST_PP_ITERATION_FINISH_3 >= 13 +# define BOOST_PP_ITERATION_3 13 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 14 && BOOST_PP_ITERATION_FINISH_3 >= 14 +# define BOOST_PP_ITERATION_3 14 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 15 && BOOST_PP_ITERATION_FINISH_3 >= 15 +# define BOOST_PP_ITERATION_3 15 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 16 && BOOST_PP_ITERATION_FINISH_3 >= 16 +# define BOOST_PP_ITERATION_3 16 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 17 && BOOST_PP_ITERATION_FINISH_3 >= 17 +# define BOOST_PP_ITERATION_3 17 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 18 && BOOST_PP_ITERATION_FINISH_3 >= 18 +# define BOOST_PP_ITERATION_3 18 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 19 && BOOST_PP_ITERATION_FINISH_3 >= 19 +# define BOOST_PP_ITERATION_3 19 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 20 && BOOST_PP_ITERATION_FINISH_3 >= 20 +# define BOOST_PP_ITERATION_3 20 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 21 && BOOST_PP_ITERATION_FINISH_3 >= 21 +# define BOOST_PP_ITERATION_3 21 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 22 && BOOST_PP_ITERATION_FINISH_3 >= 22 +# define BOOST_PP_ITERATION_3 22 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 23 && BOOST_PP_ITERATION_FINISH_3 >= 23 +# define BOOST_PP_ITERATION_3 23 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 24 && BOOST_PP_ITERATION_FINISH_3 >= 24 +# define BOOST_PP_ITERATION_3 24 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 25 && BOOST_PP_ITERATION_FINISH_3 >= 25 +# define BOOST_PP_ITERATION_3 25 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 26 && BOOST_PP_ITERATION_FINISH_3 >= 26 +# define BOOST_PP_ITERATION_3 26 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 27 && BOOST_PP_ITERATION_FINISH_3 >= 27 +# define BOOST_PP_ITERATION_3 27 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 28 && BOOST_PP_ITERATION_FINISH_3 >= 28 +# define BOOST_PP_ITERATION_3 28 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 29 && BOOST_PP_ITERATION_FINISH_3 >= 29 +# define BOOST_PP_ITERATION_3 29 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 30 && BOOST_PP_ITERATION_FINISH_3 >= 30 +# define BOOST_PP_ITERATION_3 30 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 31 && BOOST_PP_ITERATION_FINISH_3 >= 31 +# define BOOST_PP_ITERATION_3 31 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 32 && BOOST_PP_ITERATION_FINISH_3 >= 32 +# define BOOST_PP_ITERATION_3 32 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 33 && BOOST_PP_ITERATION_FINISH_3 >= 33 +# define BOOST_PP_ITERATION_3 33 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 34 && BOOST_PP_ITERATION_FINISH_3 >= 34 +# define BOOST_PP_ITERATION_3 34 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 35 && BOOST_PP_ITERATION_FINISH_3 >= 35 +# define BOOST_PP_ITERATION_3 35 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 36 && BOOST_PP_ITERATION_FINISH_3 >= 36 +# define BOOST_PP_ITERATION_3 36 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 37 && BOOST_PP_ITERATION_FINISH_3 >= 37 +# define BOOST_PP_ITERATION_3 37 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 38 && BOOST_PP_ITERATION_FINISH_3 >= 38 +# define BOOST_PP_ITERATION_3 38 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 39 && BOOST_PP_ITERATION_FINISH_3 >= 39 +# define BOOST_PP_ITERATION_3 39 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 40 && BOOST_PP_ITERATION_FINISH_3 >= 40 +# define BOOST_PP_ITERATION_3 40 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 41 && BOOST_PP_ITERATION_FINISH_3 >= 41 +# define BOOST_PP_ITERATION_3 41 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 42 && BOOST_PP_ITERATION_FINISH_3 >= 42 +# define BOOST_PP_ITERATION_3 42 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 43 && BOOST_PP_ITERATION_FINISH_3 >= 43 +# define BOOST_PP_ITERATION_3 43 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 44 && BOOST_PP_ITERATION_FINISH_3 >= 44 +# define BOOST_PP_ITERATION_3 44 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 45 && BOOST_PP_ITERATION_FINISH_3 >= 45 +# define BOOST_PP_ITERATION_3 45 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 46 && BOOST_PP_ITERATION_FINISH_3 >= 46 +# define BOOST_PP_ITERATION_3 46 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 47 && BOOST_PP_ITERATION_FINISH_3 >= 47 +# define BOOST_PP_ITERATION_3 47 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 48 && BOOST_PP_ITERATION_FINISH_3 >= 48 +# define BOOST_PP_ITERATION_3 48 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 49 && BOOST_PP_ITERATION_FINISH_3 >= 49 +# define BOOST_PP_ITERATION_3 49 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 50 && BOOST_PP_ITERATION_FINISH_3 >= 50 +# define BOOST_PP_ITERATION_3 50 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 51 && BOOST_PP_ITERATION_FINISH_3 >= 51 +# define BOOST_PP_ITERATION_3 51 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 52 && BOOST_PP_ITERATION_FINISH_3 >= 52 +# define BOOST_PP_ITERATION_3 52 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 53 && BOOST_PP_ITERATION_FINISH_3 >= 53 +# define BOOST_PP_ITERATION_3 53 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 54 && BOOST_PP_ITERATION_FINISH_3 >= 54 +# define BOOST_PP_ITERATION_3 54 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 55 && BOOST_PP_ITERATION_FINISH_3 >= 55 +# define BOOST_PP_ITERATION_3 55 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 56 && BOOST_PP_ITERATION_FINISH_3 >= 56 +# define BOOST_PP_ITERATION_3 56 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 57 && BOOST_PP_ITERATION_FINISH_3 >= 57 +# define BOOST_PP_ITERATION_3 57 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 58 && BOOST_PP_ITERATION_FINISH_3 >= 58 +# define BOOST_PP_ITERATION_3 58 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 59 && BOOST_PP_ITERATION_FINISH_3 >= 59 +# define BOOST_PP_ITERATION_3 59 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 60 && BOOST_PP_ITERATION_FINISH_3 >= 60 +# define BOOST_PP_ITERATION_3 60 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 61 && BOOST_PP_ITERATION_FINISH_3 >= 61 +# define BOOST_PP_ITERATION_3 61 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 62 && BOOST_PP_ITERATION_FINISH_3 >= 62 +# define BOOST_PP_ITERATION_3 62 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 63 && BOOST_PP_ITERATION_FINISH_3 >= 63 +# define BOOST_PP_ITERATION_3 63 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 64 && BOOST_PP_ITERATION_FINISH_3 >= 64 +# define BOOST_PP_ITERATION_3 64 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 65 && BOOST_PP_ITERATION_FINISH_3 >= 65 +# define BOOST_PP_ITERATION_3 65 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 66 && BOOST_PP_ITERATION_FINISH_3 >= 66 +# define BOOST_PP_ITERATION_3 66 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 67 && BOOST_PP_ITERATION_FINISH_3 >= 67 +# define BOOST_PP_ITERATION_3 67 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 68 && BOOST_PP_ITERATION_FINISH_3 >= 68 +# define BOOST_PP_ITERATION_3 68 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 69 && BOOST_PP_ITERATION_FINISH_3 >= 69 +# define BOOST_PP_ITERATION_3 69 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 70 && BOOST_PP_ITERATION_FINISH_3 >= 70 +# define BOOST_PP_ITERATION_3 70 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 71 && BOOST_PP_ITERATION_FINISH_3 >= 71 +# define BOOST_PP_ITERATION_3 71 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 72 && BOOST_PP_ITERATION_FINISH_3 >= 72 +# define BOOST_PP_ITERATION_3 72 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 73 && BOOST_PP_ITERATION_FINISH_3 >= 73 +# define BOOST_PP_ITERATION_3 73 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 74 && BOOST_PP_ITERATION_FINISH_3 >= 74 +# define BOOST_PP_ITERATION_3 74 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 75 && BOOST_PP_ITERATION_FINISH_3 >= 75 +# define BOOST_PP_ITERATION_3 75 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 76 && BOOST_PP_ITERATION_FINISH_3 >= 76 +# define BOOST_PP_ITERATION_3 76 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 77 && BOOST_PP_ITERATION_FINISH_3 >= 77 +# define BOOST_PP_ITERATION_3 77 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 78 && BOOST_PP_ITERATION_FINISH_3 >= 78 +# define BOOST_PP_ITERATION_3 78 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 79 && BOOST_PP_ITERATION_FINISH_3 >= 79 +# define BOOST_PP_ITERATION_3 79 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 80 && BOOST_PP_ITERATION_FINISH_3 >= 80 +# define BOOST_PP_ITERATION_3 80 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 81 && BOOST_PP_ITERATION_FINISH_3 >= 81 +# define BOOST_PP_ITERATION_3 81 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 82 && BOOST_PP_ITERATION_FINISH_3 >= 82 +# define BOOST_PP_ITERATION_3 82 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 83 && BOOST_PP_ITERATION_FINISH_3 >= 83 +# define BOOST_PP_ITERATION_3 83 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 84 && BOOST_PP_ITERATION_FINISH_3 >= 84 +# define BOOST_PP_ITERATION_3 84 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 85 && BOOST_PP_ITERATION_FINISH_3 >= 85 +# define BOOST_PP_ITERATION_3 85 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 86 && BOOST_PP_ITERATION_FINISH_3 >= 86 +# define BOOST_PP_ITERATION_3 86 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 87 && BOOST_PP_ITERATION_FINISH_3 >= 87 +# define BOOST_PP_ITERATION_3 87 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 88 && BOOST_PP_ITERATION_FINISH_3 >= 88 +# define BOOST_PP_ITERATION_3 88 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 89 && BOOST_PP_ITERATION_FINISH_3 >= 89 +# define BOOST_PP_ITERATION_3 89 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 90 && BOOST_PP_ITERATION_FINISH_3 >= 90 +# define BOOST_PP_ITERATION_3 90 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 91 && BOOST_PP_ITERATION_FINISH_3 >= 91 +# define BOOST_PP_ITERATION_3 91 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 92 && BOOST_PP_ITERATION_FINISH_3 >= 92 +# define BOOST_PP_ITERATION_3 92 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 93 && BOOST_PP_ITERATION_FINISH_3 >= 93 +# define BOOST_PP_ITERATION_3 93 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 94 && BOOST_PP_ITERATION_FINISH_3 >= 94 +# define BOOST_PP_ITERATION_3 94 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 95 && BOOST_PP_ITERATION_FINISH_3 >= 95 +# define BOOST_PP_ITERATION_3 95 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 96 && BOOST_PP_ITERATION_FINISH_3 >= 96 +# define BOOST_PP_ITERATION_3 96 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 97 && BOOST_PP_ITERATION_FINISH_3 >= 97 +# define BOOST_PP_ITERATION_3 97 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 98 && BOOST_PP_ITERATION_FINISH_3 >= 98 +# define BOOST_PP_ITERATION_3 98 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 99 && BOOST_PP_ITERATION_FINISH_3 >= 99 +# define BOOST_PP_ITERATION_3 99 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 100 && BOOST_PP_ITERATION_FINISH_3 >= 100 +# define BOOST_PP_ITERATION_3 100 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 101 && BOOST_PP_ITERATION_FINISH_3 >= 101 +# define BOOST_PP_ITERATION_3 101 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 102 && BOOST_PP_ITERATION_FINISH_3 >= 102 +# define BOOST_PP_ITERATION_3 102 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 103 && BOOST_PP_ITERATION_FINISH_3 >= 103 +# define BOOST_PP_ITERATION_3 103 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 104 && BOOST_PP_ITERATION_FINISH_3 >= 104 +# define BOOST_PP_ITERATION_3 104 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 105 && BOOST_PP_ITERATION_FINISH_3 >= 105 +# define BOOST_PP_ITERATION_3 105 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 106 && BOOST_PP_ITERATION_FINISH_3 >= 106 +# define BOOST_PP_ITERATION_3 106 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 107 && BOOST_PP_ITERATION_FINISH_3 >= 107 +# define BOOST_PP_ITERATION_3 107 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 108 && BOOST_PP_ITERATION_FINISH_3 >= 108 +# define BOOST_PP_ITERATION_3 108 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 109 && BOOST_PP_ITERATION_FINISH_3 >= 109 +# define BOOST_PP_ITERATION_3 109 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 110 && BOOST_PP_ITERATION_FINISH_3 >= 110 +# define BOOST_PP_ITERATION_3 110 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 111 && BOOST_PP_ITERATION_FINISH_3 >= 111 +# define BOOST_PP_ITERATION_3 111 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 112 && BOOST_PP_ITERATION_FINISH_3 >= 112 +# define BOOST_PP_ITERATION_3 112 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 113 && BOOST_PP_ITERATION_FINISH_3 >= 113 +# define BOOST_PP_ITERATION_3 113 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 114 && BOOST_PP_ITERATION_FINISH_3 >= 114 +# define BOOST_PP_ITERATION_3 114 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 115 && BOOST_PP_ITERATION_FINISH_3 >= 115 +# define BOOST_PP_ITERATION_3 115 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 116 && BOOST_PP_ITERATION_FINISH_3 >= 116 +# define BOOST_PP_ITERATION_3 116 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 117 && BOOST_PP_ITERATION_FINISH_3 >= 117 +# define BOOST_PP_ITERATION_3 117 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 118 && BOOST_PP_ITERATION_FINISH_3 >= 118 +# define BOOST_PP_ITERATION_3 118 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 119 && BOOST_PP_ITERATION_FINISH_3 >= 119 +# define BOOST_PP_ITERATION_3 119 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 120 && BOOST_PP_ITERATION_FINISH_3 >= 120 +# define BOOST_PP_ITERATION_3 120 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 121 && BOOST_PP_ITERATION_FINISH_3 >= 121 +# define BOOST_PP_ITERATION_3 121 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 122 && BOOST_PP_ITERATION_FINISH_3 >= 122 +# define BOOST_PP_ITERATION_3 122 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 123 && BOOST_PP_ITERATION_FINISH_3 >= 123 +# define BOOST_PP_ITERATION_3 123 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 124 && BOOST_PP_ITERATION_FINISH_3 >= 124 +# define BOOST_PP_ITERATION_3 124 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 125 && BOOST_PP_ITERATION_FINISH_3 >= 125 +# define BOOST_PP_ITERATION_3 125 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 126 && BOOST_PP_ITERATION_FINISH_3 >= 126 +# define BOOST_PP_ITERATION_3 126 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 127 && BOOST_PP_ITERATION_FINISH_3 >= 127 +# define BOOST_PP_ITERATION_3 127 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 128 && BOOST_PP_ITERATION_FINISH_3 >= 128 +# define BOOST_PP_ITERATION_3 128 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 129 && BOOST_PP_ITERATION_FINISH_3 >= 129 +# define BOOST_PP_ITERATION_3 129 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 130 && BOOST_PP_ITERATION_FINISH_3 >= 130 +# define BOOST_PP_ITERATION_3 130 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 131 && BOOST_PP_ITERATION_FINISH_3 >= 131 +# define BOOST_PP_ITERATION_3 131 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 132 && BOOST_PP_ITERATION_FINISH_3 >= 132 +# define BOOST_PP_ITERATION_3 132 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 133 && BOOST_PP_ITERATION_FINISH_3 >= 133 +# define BOOST_PP_ITERATION_3 133 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 134 && BOOST_PP_ITERATION_FINISH_3 >= 134 +# define BOOST_PP_ITERATION_3 134 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 135 && BOOST_PP_ITERATION_FINISH_3 >= 135 +# define BOOST_PP_ITERATION_3 135 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 136 && BOOST_PP_ITERATION_FINISH_3 >= 136 +# define BOOST_PP_ITERATION_3 136 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 137 && BOOST_PP_ITERATION_FINISH_3 >= 137 +# define BOOST_PP_ITERATION_3 137 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 138 && BOOST_PP_ITERATION_FINISH_3 >= 138 +# define BOOST_PP_ITERATION_3 138 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 139 && BOOST_PP_ITERATION_FINISH_3 >= 139 +# define BOOST_PP_ITERATION_3 139 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 140 && BOOST_PP_ITERATION_FINISH_3 >= 140 +# define BOOST_PP_ITERATION_3 140 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 141 && BOOST_PP_ITERATION_FINISH_3 >= 141 +# define BOOST_PP_ITERATION_3 141 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 142 && BOOST_PP_ITERATION_FINISH_3 >= 142 +# define BOOST_PP_ITERATION_3 142 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 143 && BOOST_PP_ITERATION_FINISH_3 >= 143 +# define BOOST_PP_ITERATION_3 143 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 144 && BOOST_PP_ITERATION_FINISH_3 >= 144 +# define BOOST_PP_ITERATION_3 144 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 145 && BOOST_PP_ITERATION_FINISH_3 >= 145 +# define BOOST_PP_ITERATION_3 145 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 146 && BOOST_PP_ITERATION_FINISH_3 >= 146 +# define BOOST_PP_ITERATION_3 146 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 147 && BOOST_PP_ITERATION_FINISH_3 >= 147 +# define BOOST_PP_ITERATION_3 147 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 148 && BOOST_PP_ITERATION_FINISH_3 >= 148 +# define BOOST_PP_ITERATION_3 148 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 149 && BOOST_PP_ITERATION_FINISH_3 >= 149 +# define BOOST_PP_ITERATION_3 149 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 150 && BOOST_PP_ITERATION_FINISH_3 >= 150 +# define BOOST_PP_ITERATION_3 150 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 151 && BOOST_PP_ITERATION_FINISH_3 >= 151 +# define BOOST_PP_ITERATION_3 151 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 152 && BOOST_PP_ITERATION_FINISH_3 >= 152 +# define BOOST_PP_ITERATION_3 152 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 153 && BOOST_PP_ITERATION_FINISH_3 >= 153 +# define BOOST_PP_ITERATION_3 153 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 154 && BOOST_PP_ITERATION_FINISH_3 >= 154 +# define BOOST_PP_ITERATION_3 154 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 155 && BOOST_PP_ITERATION_FINISH_3 >= 155 +# define BOOST_PP_ITERATION_3 155 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 156 && BOOST_PP_ITERATION_FINISH_3 >= 156 +# define BOOST_PP_ITERATION_3 156 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 157 && BOOST_PP_ITERATION_FINISH_3 >= 157 +# define BOOST_PP_ITERATION_3 157 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 158 && BOOST_PP_ITERATION_FINISH_3 >= 158 +# define BOOST_PP_ITERATION_3 158 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 159 && BOOST_PP_ITERATION_FINISH_3 >= 159 +# define BOOST_PP_ITERATION_3 159 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 160 && BOOST_PP_ITERATION_FINISH_3 >= 160 +# define BOOST_PP_ITERATION_3 160 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 161 && BOOST_PP_ITERATION_FINISH_3 >= 161 +# define BOOST_PP_ITERATION_3 161 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 162 && BOOST_PP_ITERATION_FINISH_3 >= 162 +# define BOOST_PP_ITERATION_3 162 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 163 && BOOST_PP_ITERATION_FINISH_3 >= 163 +# define BOOST_PP_ITERATION_3 163 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 164 && BOOST_PP_ITERATION_FINISH_3 >= 164 +# define BOOST_PP_ITERATION_3 164 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 165 && BOOST_PP_ITERATION_FINISH_3 >= 165 +# define BOOST_PP_ITERATION_3 165 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 166 && BOOST_PP_ITERATION_FINISH_3 >= 166 +# define BOOST_PP_ITERATION_3 166 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 167 && BOOST_PP_ITERATION_FINISH_3 >= 167 +# define BOOST_PP_ITERATION_3 167 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 168 && BOOST_PP_ITERATION_FINISH_3 >= 168 +# define BOOST_PP_ITERATION_3 168 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 169 && BOOST_PP_ITERATION_FINISH_3 >= 169 +# define BOOST_PP_ITERATION_3 169 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 170 && BOOST_PP_ITERATION_FINISH_3 >= 170 +# define BOOST_PP_ITERATION_3 170 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 171 && BOOST_PP_ITERATION_FINISH_3 >= 171 +# define BOOST_PP_ITERATION_3 171 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 172 && BOOST_PP_ITERATION_FINISH_3 >= 172 +# define BOOST_PP_ITERATION_3 172 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 173 && BOOST_PP_ITERATION_FINISH_3 >= 173 +# define BOOST_PP_ITERATION_3 173 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 174 && BOOST_PP_ITERATION_FINISH_3 >= 174 +# define BOOST_PP_ITERATION_3 174 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 175 && BOOST_PP_ITERATION_FINISH_3 >= 175 +# define BOOST_PP_ITERATION_3 175 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 176 && BOOST_PP_ITERATION_FINISH_3 >= 176 +# define BOOST_PP_ITERATION_3 176 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 177 && BOOST_PP_ITERATION_FINISH_3 >= 177 +# define BOOST_PP_ITERATION_3 177 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 178 && BOOST_PP_ITERATION_FINISH_3 >= 178 +# define BOOST_PP_ITERATION_3 178 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 179 && BOOST_PP_ITERATION_FINISH_3 >= 179 +# define BOOST_PP_ITERATION_3 179 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 180 && BOOST_PP_ITERATION_FINISH_3 >= 180 +# define BOOST_PP_ITERATION_3 180 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 181 && BOOST_PP_ITERATION_FINISH_3 >= 181 +# define BOOST_PP_ITERATION_3 181 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 182 && BOOST_PP_ITERATION_FINISH_3 >= 182 +# define BOOST_PP_ITERATION_3 182 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 183 && BOOST_PP_ITERATION_FINISH_3 >= 183 +# define BOOST_PP_ITERATION_3 183 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 184 && BOOST_PP_ITERATION_FINISH_3 >= 184 +# define BOOST_PP_ITERATION_3 184 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 185 && BOOST_PP_ITERATION_FINISH_3 >= 185 +# define BOOST_PP_ITERATION_3 185 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 186 && BOOST_PP_ITERATION_FINISH_3 >= 186 +# define BOOST_PP_ITERATION_3 186 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 187 && BOOST_PP_ITERATION_FINISH_3 >= 187 +# define BOOST_PP_ITERATION_3 187 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 188 && BOOST_PP_ITERATION_FINISH_3 >= 188 +# define BOOST_PP_ITERATION_3 188 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 189 && BOOST_PP_ITERATION_FINISH_3 >= 189 +# define BOOST_PP_ITERATION_3 189 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 190 && BOOST_PP_ITERATION_FINISH_3 >= 190 +# define BOOST_PP_ITERATION_3 190 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 191 && BOOST_PP_ITERATION_FINISH_3 >= 191 +# define BOOST_PP_ITERATION_3 191 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 192 && BOOST_PP_ITERATION_FINISH_3 >= 192 +# define BOOST_PP_ITERATION_3 192 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 193 && BOOST_PP_ITERATION_FINISH_3 >= 193 +# define BOOST_PP_ITERATION_3 193 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 194 && BOOST_PP_ITERATION_FINISH_3 >= 194 +# define BOOST_PP_ITERATION_3 194 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 195 && BOOST_PP_ITERATION_FINISH_3 >= 195 +# define BOOST_PP_ITERATION_3 195 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 196 && BOOST_PP_ITERATION_FINISH_3 >= 196 +# define BOOST_PP_ITERATION_3 196 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 197 && BOOST_PP_ITERATION_FINISH_3 >= 197 +# define BOOST_PP_ITERATION_3 197 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 198 && BOOST_PP_ITERATION_FINISH_3 >= 198 +# define BOOST_PP_ITERATION_3 198 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 199 && BOOST_PP_ITERATION_FINISH_3 >= 199 +# define BOOST_PP_ITERATION_3 199 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 200 && BOOST_PP_ITERATION_FINISH_3 >= 200 +# define BOOST_PP_ITERATION_3 200 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 201 && BOOST_PP_ITERATION_FINISH_3 >= 201 +# define BOOST_PP_ITERATION_3 201 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 202 && BOOST_PP_ITERATION_FINISH_3 >= 202 +# define BOOST_PP_ITERATION_3 202 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 203 && BOOST_PP_ITERATION_FINISH_3 >= 203 +# define BOOST_PP_ITERATION_3 203 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 204 && BOOST_PP_ITERATION_FINISH_3 >= 204 +# define BOOST_PP_ITERATION_3 204 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 205 && BOOST_PP_ITERATION_FINISH_3 >= 205 +# define BOOST_PP_ITERATION_3 205 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 206 && BOOST_PP_ITERATION_FINISH_3 >= 206 +# define BOOST_PP_ITERATION_3 206 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 207 && BOOST_PP_ITERATION_FINISH_3 >= 207 +# define BOOST_PP_ITERATION_3 207 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 208 && BOOST_PP_ITERATION_FINISH_3 >= 208 +# define BOOST_PP_ITERATION_3 208 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 209 && BOOST_PP_ITERATION_FINISH_3 >= 209 +# define BOOST_PP_ITERATION_3 209 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 210 && BOOST_PP_ITERATION_FINISH_3 >= 210 +# define BOOST_PP_ITERATION_3 210 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 211 && BOOST_PP_ITERATION_FINISH_3 >= 211 +# define BOOST_PP_ITERATION_3 211 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 212 && BOOST_PP_ITERATION_FINISH_3 >= 212 +# define BOOST_PP_ITERATION_3 212 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 213 && BOOST_PP_ITERATION_FINISH_3 >= 213 +# define BOOST_PP_ITERATION_3 213 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 214 && BOOST_PP_ITERATION_FINISH_3 >= 214 +# define BOOST_PP_ITERATION_3 214 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 215 && BOOST_PP_ITERATION_FINISH_3 >= 215 +# define BOOST_PP_ITERATION_3 215 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 216 && BOOST_PP_ITERATION_FINISH_3 >= 216 +# define BOOST_PP_ITERATION_3 216 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 217 && BOOST_PP_ITERATION_FINISH_3 >= 217 +# define BOOST_PP_ITERATION_3 217 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 218 && BOOST_PP_ITERATION_FINISH_3 >= 218 +# define BOOST_PP_ITERATION_3 218 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 219 && BOOST_PP_ITERATION_FINISH_3 >= 219 +# define BOOST_PP_ITERATION_3 219 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 220 && BOOST_PP_ITERATION_FINISH_3 >= 220 +# define BOOST_PP_ITERATION_3 220 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 221 && BOOST_PP_ITERATION_FINISH_3 >= 221 +# define BOOST_PP_ITERATION_3 221 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 222 && BOOST_PP_ITERATION_FINISH_3 >= 222 +# define BOOST_PP_ITERATION_3 222 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 223 && BOOST_PP_ITERATION_FINISH_3 >= 223 +# define BOOST_PP_ITERATION_3 223 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 224 && BOOST_PP_ITERATION_FINISH_3 >= 224 +# define BOOST_PP_ITERATION_3 224 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 225 && BOOST_PP_ITERATION_FINISH_3 >= 225 +# define BOOST_PP_ITERATION_3 225 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 226 && BOOST_PP_ITERATION_FINISH_3 >= 226 +# define BOOST_PP_ITERATION_3 226 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 227 && BOOST_PP_ITERATION_FINISH_3 >= 227 +# define BOOST_PP_ITERATION_3 227 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 228 && BOOST_PP_ITERATION_FINISH_3 >= 228 +# define BOOST_PP_ITERATION_3 228 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 229 && BOOST_PP_ITERATION_FINISH_3 >= 229 +# define BOOST_PP_ITERATION_3 229 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 230 && BOOST_PP_ITERATION_FINISH_3 >= 230 +# define BOOST_PP_ITERATION_3 230 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 231 && BOOST_PP_ITERATION_FINISH_3 >= 231 +# define BOOST_PP_ITERATION_3 231 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 232 && BOOST_PP_ITERATION_FINISH_3 >= 232 +# define BOOST_PP_ITERATION_3 232 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 233 && BOOST_PP_ITERATION_FINISH_3 >= 233 +# define BOOST_PP_ITERATION_3 233 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 234 && BOOST_PP_ITERATION_FINISH_3 >= 234 +# define BOOST_PP_ITERATION_3 234 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 235 && BOOST_PP_ITERATION_FINISH_3 >= 235 +# define BOOST_PP_ITERATION_3 235 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 236 && BOOST_PP_ITERATION_FINISH_3 >= 236 +# define BOOST_PP_ITERATION_3 236 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 237 && BOOST_PP_ITERATION_FINISH_3 >= 237 +# define BOOST_PP_ITERATION_3 237 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 238 && BOOST_PP_ITERATION_FINISH_3 >= 238 +# define BOOST_PP_ITERATION_3 238 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 239 && BOOST_PP_ITERATION_FINISH_3 >= 239 +# define BOOST_PP_ITERATION_3 239 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 240 && BOOST_PP_ITERATION_FINISH_3 >= 240 +# define BOOST_PP_ITERATION_3 240 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 241 && BOOST_PP_ITERATION_FINISH_3 >= 241 +# define BOOST_PP_ITERATION_3 241 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 242 && BOOST_PP_ITERATION_FINISH_3 >= 242 +# define BOOST_PP_ITERATION_3 242 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 243 && BOOST_PP_ITERATION_FINISH_3 >= 243 +# define BOOST_PP_ITERATION_3 243 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 244 && BOOST_PP_ITERATION_FINISH_3 >= 244 +# define BOOST_PP_ITERATION_3 244 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 245 && BOOST_PP_ITERATION_FINISH_3 >= 245 +# define BOOST_PP_ITERATION_3 245 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 246 && BOOST_PP_ITERATION_FINISH_3 >= 246 +# define BOOST_PP_ITERATION_3 246 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 247 && BOOST_PP_ITERATION_FINISH_3 >= 247 +# define BOOST_PP_ITERATION_3 247 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 248 && BOOST_PP_ITERATION_FINISH_3 >= 248 +# define BOOST_PP_ITERATION_3 248 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 249 && BOOST_PP_ITERATION_FINISH_3 >= 249 +# define BOOST_PP_ITERATION_3 249 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 250 && BOOST_PP_ITERATION_FINISH_3 >= 250 +# define BOOST_PP_ITERATION_3 250 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 251 && BOOST_PP_ITERATION_FINISH_3 >= 251 +# define BOOST_PP_ITERATION_3 251 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 252 && BOOST_PP_ITERATION_FINISH_3 >= 252 +# define BOOST_PP_ITERATION_3 252 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 253 && BOOST_PP_ITERATION_FINISH_3 >= 253 +# define BOOST_PP_ITERATION_3 253 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 254 && BOOST_PP_ITERATION_FINISH_3 >= 254 +# define BOOST_PP_ITERATION_3 254 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 255 && BOOST_PP_ITERATION_FINISH_3 >= 255 +# define BOOST_PP_ITERATION_3 255 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_START_3 <= 256 && BOOST_PP_ITERATION_FINISH_3 >= 256 +# define BOOST_PP_ITERATION_3 256 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 2 +# +# undef BOOST_PP_ITERATION_START_3 +# undef BOOST_PP_ITERATION_FINISH_3 +# undef BOOST_PP_FILENAME_3 +# +# undef BOOST_PP_ITERATION_FLAGS_3 +# undef BOOST_PP_ITERATION_PARAMS_3 diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward4.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward4.hpp new file mode 100644 index 0000000..1b4f588 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward4.hpp @@ -0,0 +1,1338 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if defined(BOOST_PP_ITERATION_LIMITS) +# if !defined(BOOST_PP_FILENAME_4) +# error BOOST_PP_ERROR: depth #4 filename is not defined +# endif +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_ITERATION_FLAGS_4() 0 +# undef BOOST_PP_ITERATION_LIMITS +# elif defined(BOOST_PP_ITERATION_PARAMS_4) +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(0, BOOST_PP_ITERATION_PARAMS_4) +# include +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(1, BOOST_PP_ITERATION_PARAMS_4) +# include +# define BOOST_PP_FILENAME_4 BOOST_PP_ARRAY_ELEM(2, BOOST_PP_ITERATION_PARAMS_4) +# if BOOST_PP_ARRAY_SIZE(BOOST_PP_ITERATION_PARAMS_4) >= 4 +# define BOOST_PP_ITERATION_FLAGS_4() BOOST_PP_ARRAY_ELEM(3, BOOST_PP_ITERATION_PARAMS_4) +# else +# define BOOST_PP_ITERATION_FLAGS_4() 0 +# endif +# else +# error BOOST_PP_ERROR: depth #4 iteration boundaries or filename not defined +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 4 +# +# if (BOOST_PP_ITERATION_START_4) > (BOOST_PP_ITERATION_FINISH_4) +# include +# else +# if BOOST_PP_ITERATION_START_4 <= 0 && BOOST_PP_ITERATION_FINISH_4 >= 0 +# define BOOST_PP_ITERATION_4 0 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 1 && BOOST_PP_ITERATION_FINISH_4 >= 1 +# define BOOST_PP_ITERATION_4 1 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 2 && BOOST_PP_ITERATION_FINISH_4 >= 2 +# define BOOST_PP_ITERATION_4 2 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 3 && BOOST_PP_ITERATION_FINISH_4 >= 3 +# define BOOST_PP_ITERATION_4 3 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 4 && BOOST_PP_ITERATION_FINISH_4 >= 4 +# define BOOST_PP_ITERATION_4 4 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 5 && BOOST_PP_ITERATION_FINISH_4 >= 5 +# define BOOST_PP_ITERATION_4 5 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 6 && BOOST_PP_ITERATION_FINISH_4 >= 6 +# define BOOST_PP_ITERATION_4 6 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 7 && BOOST_PP_ITERATION_FINISH_4 >= 7 +# define BOOST_PP_ITERATION_4 7 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 8 && BOOST_PP_ITERATION_FINISH_4 >= 8 +# define BOOST_PP_ITERATION_4 8 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 9 && BOOST_PP_ITERATION_FINISH_4 >= 9 +# define BOOST_PP_ITERATION_4 9 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 10 && BOOST_PP_ITERATION_FINISH_4 >= 10 +# define BOOST_PP_ITERATION_4 10 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 11 && BOOST_PP_ITERATION_FINISH_4 >= 11 +# define BOOST_PP_ITERATION_4 11 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 12 && BOOST_PP_ITERATION_FINISH_4 >= 12 +# define BOOST_PP_ITERATION_4 12 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 13 && BOOST_PP_ITERATION_FINISH_4 >= 13 +# define BOOST_PP_ITERATION_4 13 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 14 && BOOST_PP_ITERATION_FINISH_4 >= 14 +# define BOOST_PP_ITERATION_4 14 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 15 && BOOST_PP_ITERATION_FINISH_4 >= 15 +# define BOOST_PP_ITERATION_4 15 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 16 && BOOST_PP_ITERATION_FINISH_4 >= 16 +# define BOOST_PP_ITERATION_4 16 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 17 && BOOST_PP_ITERATION_FINISH_4 >= 17 +# define BOOST_PP_ITERATION_4 17 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 18 && BOOST_PP_ITERATION_FINISH_4 >= 18 +# define BOOST_PP_ITERATION_4 18 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 19 && BOOST_PP_ITERATION_FINISH_4 >= 19 +# define BOOST_PP_ITERATION_4 19 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 20 && BOOST_PP_ITERATION_FINISH_4 >= 20 +# define BOOST_PP_ITERATION_4 20 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 21 && BOOST_PP_ITERATION_FINISH_4 >= 21 +# define BOOST_PP_ITERATION_4 21 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 22 && BOOST_PP_ITERATION_FINISH_4 >= 22 +# define BOOST_PP_ITERATION_4 22 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 23 && BOOST_PP_ITERATION_FINISH_4 >= 23 +# define BOOST_PP_ITERATION_4 23 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 24 && BOOST_PP_ITERATION_FINISH_4 >= 24 +# define BOOST_PP_ITERATION_4 24 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 25 && BOOST_PP_ITERATION_FINISH_4 >= 25 +# define BOOST_PP_ITERATION_4 25 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 26 && BOOST_PP_ITERATION_FINISH_4 >= 26 +# define BOOST_PP_ITERATION_4 26 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 27 && BOOST_PP_ITERATION_FINISH_4 >= 27 +# define BOOST_PP_ITERATION_4 27 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 28 && BOOST_PP_ITERATION_FINISH_4 >= 28 +# define BOOST_PP_ITERATION_4 28 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 29 && BOOST_PP_ITERATION_FINISH_4 >= 29 +# define BOOST_PP_ITERATION_4 29 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 30 && BOOST_PP_ITERATION_FINISH_4 >= 30 +# define BOOST_PP_ITERATION_4 30 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 31 && BOOST_PP_ITERATION_FINISH_4 >= 31 +# define BOOST_PP_ITERATION_4 31 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 32 && BOOST_PP_ITERATION_FINISH_4 >= 32 +# define BOOST_PP_ITERATION_4 32 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 33 && BOOST_PP_ITERATION_FINISH_4 >= 33 +# define BOOST_PP_ITERATION_4 33 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 34 && BOOST_PP_ITERATION_FINISH_4 >= 34 +# define BOOST_PP_ITERATION_4 34 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 35 && BOOST_PP_ITERATION_FINISH_4 >= 35 +# define BOOST_PP_ITERATION_4 35 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 36 && BOOST_PP_ITERATION_FINISH_4 >= 36 +# define BOOST_PP_ITERATION_4 36 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 37 && BOOST_PP_ITERATION_FINISH_4 >= 37 +# define BOOST_PP_ITERATION_4 37 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 38 && BOOST_PP_ITERATION_FINISH_4 >= 38 +# define BOOST_PP_ITERATION_4 38 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 39 && BOOST_PP_ITERATION_FINISH_4 >= 39 +# define BOOST_PP_ITERATION_4 39 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 40 && BOOST_PP_ITERATION_FINISH_4 >= 40 +# define BOOST_PP_ITERATION_4 40 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 41 && BOOST_PP_ITERATION_FINISH_4 >= 41 +# define BOOST_PP_ITERATION_4 41 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 42 && BOOST_PP_ITERATION_FINISH_4 >= 42 +# define BOOST_PP_ITERATION_4 42 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 43 && BOOST_PP_ITERATION_FINISH_4 >= 43 +# define BOOST_PP_ITERATION_4 43 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 44 && BOOST_PP_ITERATION_FINISH_4 >= 44 +# define BOOST_PP_ITERATION_4 44 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 45 && BOOST_PP_ITERATION_FINISH_4 >= 45 +# define BOOST_PP_ITERATION_4 45 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 46 && BOOST_PP_ITERATION_FINISH_4 >= 46 +# define BOOST_PP_ITERATION_4 46 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 47 && BOOST_PP_ITERATION_FINISH_4 >= 47 +# define BOOST_PP_ITERATION_4 47 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 48 && BOOST_PP_ITERATION_FINISH_4 >= 48 +# define BOOST_PP_ITERATION_4 48 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 49 && BOOST_PP_ITERATION_FINISH_4 >= 49 +# define BOOST_PP_ITERATION_4 49 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 50 && BOOST_PP_ITERATION_FINISH_4 >= 50 +# define BOOST_PP_ITERATION_4 50 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 51 && BOOST_PP_ITERATION_FINISH_4 >= 51 +# define BOOST_PP_ITERATION_4 51 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 52 && BOOST_PP_ITERATION_FINISH_4 >= 52 +# define BOOST_PP_ITERATION_4 52 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 53 && BOOST_PP_ITERATION_FINISH_4 >= 53 +# define BOOST_PP_ITERATION_4 53 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 54 && BOOST_PP_ITERATION_FINISH_4 >= 54 +# define BOOST_PP_ITERATION_4 54 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 55 && BOOST_PP_ITERATION_FINISH_4 >= 55 +# define BOOST_PP_ITERATION_4 55 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 56 && BOOST_PP_ITERATION_FINISH_4 >= 56 +# define BOOST_PP_ITERATION_4 56 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 57 && BOOST_PP_ITERATION_FINISH_4 >= 57 +# define BOOST_PP_ITERATION_4 57 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 58 && BOOST_PP_ITERATION_FINISH_4 >= 58 +# define BOOST_PP_ITERATION_4 58 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 59 && BOOST_PP_ITERATION_FINISH_4 >= 59 +# define BOOST_PP_ITERATION_4 59 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 60 && BOOST_PP_ITERATION_FINISH_4 >= 60 +# define BOOST_PP_ITERATION_4 60 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 61 && BOOST_PP_ITERATION_FINISH_4 >= 61 +# define BOOST_PP_ITERATION_4 61 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 62 && BOOST_PP_ITERATION_FINISH_4 >= 62 +# define BOOST_PP_ITERATION_4 62 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 63 && BOOST_PP_ITERATION_FINISH_4 >= 63 +# define BOOST_PP_ITERATION_4 63 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 64 && BOOST_PP_ITERATION_FINISH_4 >= 64 +# define BOOST_PP_ITERATION_4 64 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 65 && BOOST_PP_ITERATION_FINISH_4 >= 65 +# define BOOST_PP_ITERATION_4 65 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 66 && BOOST_PP_ITERATION_FINISH_4 >= 66 +# define BOOST_PP_ITERATION_4 66 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 67 && BOOST_PP_ITERATION_FINISH_4 >= 67 +# define BOOST_PP_ITERATION_4 67 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 68 && BOOST_PP_ITERATION_FINISH_4 >= 68 +# define BOOST_PP_ITERATION_4 68 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 69 && BOOST_PP_ITERATION_FINISH_4 >= 69 +# define BOOST_PP_ITERATION_4 69 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 70 && BOOST_PP_ITERATION_FINISH_4 >= 70 +# define BOOST_PP_ITERATION_4 70 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 71 && BOOST_PP_ITERATION_FINISH_4 >= 71 +# define BOOST_PP_ITERATION_4 71 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 72 && BOOST_PP_ITERATION_FINISH_4 >= 72 +# define BOOST_PP_ITERATION_4 72 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 73 && BOOST_PP_ITERATION_FINISH_4 >= 73 +# define BOOST_PP_ITERATION_4 73 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 74 && BOOST_PP_ITERATION_FINISH_4 >= 74 +# define BOOST_PP_ITERATION_4 74 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 75 && BOOST_PP_ITERATION_FINISH_4 >= 75 +# define BOOST_PP_ITERATION_4 75 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 76 && BOOST_PP_ITERATION_FINISH_4 >= 76 +# define BOOST_PP_ITERATION_4 76 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 77 && BOOST_PP_ITERATION_FINISH_4 >= 77 +# define BOOST_PP_ITERATION_4 77 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 78 && BOOST_PP_ITERATION_FINISH_4 >= 78 +# define BOOST_PP_ITERATION_4 78 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 79 && BOOST_PP_ITERATION_FINISH_4 >= 79 +# define BOOST_PP_ITERATION_4 79 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 80 && BOOST_PP_ITERATION_FINISH_4 >= 80 +# define BOOST_PP_ITERATION_4 80 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 81 && BOOST_PP_ITERATION_FINISH_4 >= 81 +# define BOOST_PP_ITERATION_4 81 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 82 && BOOST_PP_ITERATION_FINISH_4 >= 82 +# define BOOST_PP_ITERATION_4 82 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 83 && BOOST_PP_ITERATION_FINISH_4 >= 83 +# define BOOST_PP_ITERATION_4 83 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 84 && BOOST_PP_ITERATION_FINISH_4 >= 84 +# define BOOST_PP_ITERATION_4 84 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 85 && BOOST_PP_ITERATION_FINISH_4 >= 85 +# define BOOST_PP_ITERATION_4 85 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 86 && BOOST_PP_ITERATION_FINISH_4 >= 86 +# define BOOST_PP_ITERATION_4 86 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 87 && BOOST_PP_ITERATION_FINISH_4 >= 87 +# define BOOST_PP_ITERATION_4 87 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 88 && BOOST_PP_ITERATION_FINISH_4 >= 88 +# define BOOST_PP_ITERATION_4 88 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 89 && BOOST_PP_ITERATION_FINISH_4 >= 89 +# define BOOST_PP_ITERATION_4 89 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 90 && BOOST_PP_ITERATION_FINISH_4 >= 90 +# define BOOST_PP_ITERATION_4 90 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 91 && BOOST_PP_ITERATION_FINISH_4 >= 91 +# define BOOST_PP_ITERATION_4 91 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 92 && BOOST_PP_ITERATION_FINISH_4 >= 92 +# define BOOST_PP_ITERATION_4 92 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 93 && BOOST_PP_ITERATION_FINISH_4 >= 93 +# define BOOST_PP_ITERATION_4 93 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 94 && BOOST_PP_ITERATION_FINISH_4 >= 94 +# define BOOST_PP_ITERATION_4 94 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 95 && BOOST_PP_ITERATION_FINISH_4 >= 95 +# define BOOST_PP_ITERATION_4 95 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 96 && BOOST_PP_ITERATION_FINISH_4 >= 96 +# define BOOST_PP_ITERATION_4 96 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 97 && BOOST_PP_ITERATION_FINISH_4 >= 97 +# define BOOST_PP_ITERATION_4 97 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 98 && BOOST_PP_ITERATION_FINISH_4 >= 98 +# define BOOST_PP_ITERATION_4 98 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 99 && BOOST_PP_ITERATION_FINISH_4 >= 99 +# define BOOST_PP_ITERATION_4 99 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 100 && BOOST_PP_ITERATION_FINISH_4 >= 100 +# define BOOST_PP_ITERATION_4 100 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 101 && BOOST_PP_ITERATION_FINISH_4 >= 101 +# define BOOST_PP_ITERATION_4 101 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 102 && BOOST_PP_ITERATION_FINISH_4 >= 102 +# define BOOST_PP_ITERATION_4 102 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 103 && BOOST_PP_ITERATION_FINISH_4 >= 103 +# define BOOST_PP_ITERATION_4 103 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 104 && BOOST_PP_ITERATION_FINISH_4 >= 104 +# define BOOST_PP_ITERATION_4 104 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 105 && BOOST_PP_ITERATION_FINISH_4 >= 105 +# define BOOST_PP_ITERATION_4 105 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 106 && BOOST_PP_ITERATION_FINISH_4 >= 106 +# define BOOST_PP_ITERATION_4 106 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 107 && BOOST_PP_ITERATION_FINISH_4 >= 107 +# define BOOST_PP_ITERATION_4 107 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 108 && BOOST_PP_ITERATION_FINISH_4 >= 108 +# define BOOST_PP_ITERATION_4 108 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 109 && BOOST_PP_ITERATION_FINISH_4 >= 109 +# define BOOST_PP_ITERATION_4 109 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 110 && BOOST_PP_ITERATION_FINISH_4 >= 110 +# define BOOST_PP_ITERATION_4 110 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 111 && BOOST_PP_ITERATION_FINISH_4 >= 111 +# define BOOST_PP_ITERATION_4 111 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 112 && BOOST_PP_ITERATION_FINISH_4 >= 112 +# define BOOST_PP_ITERATION_4 112 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 113 && BOOST_PP_ITERATION_FINISH_4 >= 113 +# define BOOST_PP_ITERATION_4 113 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 114 && BOOST_PP_ITERATION_FINISH_4 >= 114 +# define BOOST_PP_ITERATION_4 114 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 115 && BOOST_PP_ITERATION_FINISH_4 >= 115 +# define BOOST_PP_ITERATION_4 115 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 116 && BOOST_PP_ITERATION_FINISH_4 >= 116 +# define BOOST_PP_ITERATION_4 116 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 117 && BOOST_PP_ITERATION_FINISH_4 >= 117 +# define BOOST_PP_ITERATION_4 117 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 118 && BOOST_PP_ITERATION_FINISH_4 >= 118 +# define BOOST_PP_ITERATION_4 118 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 119 && BOOST_PP_ITERATION_FINISH_4 >= 119 +# define BOOST_PP_ITERATION_4 119 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 120 && BOOST_PP_ITERATION_FINISH_4 >= 120 +# define BOOST_PP_ITERATION_4 120 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 121 && BOOST_PP_ITERATION_FINISH_4 >= 121 +# define BOOST_PP_ITERATION_4 121 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 122 && BOOST_PP_ITERATION_FINISH_4 >= 122 +# define BOOST_PP_ITERATION_4 122 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 123 && BOOST_PP_ITERATION_FINISH_4 >= 123 +# define BOOST_PP_ITERATION_4 123 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 124 && BOOST_PP_ITERATION_FINISH_4 >= 124 +# define BOOST_PP_ITERATION_4 124 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 125 && BOOST_PP_ITERATION_FINISH_4 >= 125 +# define BOOST_PP_ITERATION_4 125 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 126 && BOOST_PP_ITERATION_FINISH_4 >= 126 +# define BOOST_PP_ITERATION_4 126 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 127 && BOOST_PP_ITERATION_FINISH_4 >= 127 +# define BOOST_PP_ITERATION_4 127 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 128 && BOOST_PP_ITERATION_FINISH_4 >= 128 +# define BOOST_PP_ITERATION_4 128 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 129 && BOOST_PP_ITERATION_FINISH_4 >= 129 +# define BOOST_PP_ITERATION_4 129 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 130 && BOOST_PP_ITERATION_FINISH_4 >= 130 +# define BOOST_PP_ITERATION_4 130 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 131 && BOOST_PP_ITERATION_FINISH_4 >= 131 +# define BOOST_PP_ITERATION_4 131 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 132 && BOOST_PP_ITERATION_FINISH_4 >= 132 +# define BOOST_PP_ITERATION_4 132 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 133 && BOOST_PP_ITERATION_FINISH_4 >= 133 +# define BOOST_PP_ITERATION_4 133 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 134 && BOOST_PP_ITERATION_FINISH_4 >= 134 +# define BOOST_PP_ITERATION_4 134 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 135 && BOOST_PP_ITERATION_FINISH_4 >= 135 +# define BOOST_PP_ITERATION_4 135 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 136 && BOOST_PP_ITERATION_FINISH_4 >= 136 +# define BOOST_PP_ITERATION_4 136 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 137 && BOOST_PP_ITERATION_FINISH_4 >= 137 +# define BOOST_PP_ITERATION_4 137 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 138 && BOOST_PP_ITERATION_FINISH_4 >= 138 +# define BOOST_PP_ITERATION_4 138 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 139 && BOOST_PP_ITERATION_FINISH_4 >= 139 +# define BOOST_PP_ITERATION_4 139 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 140 && BOOST_PP_ITERATION_FINISH_4 >= 140 +# define BOOST_PP_ITERATION_4 140 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 141 && BOOST_PP_ITERATION_FINISH_4 >= 141 +# define BOOST_PP_ITERATION_4 141 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 142 && BOOST_PP_ITERATION_FINISH_4 >= 142 +# define BOOST_PP_ITERATION_4 142 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 143 && BOOST_PP_ITERATION_FINISH_4 >= 143 +# define BOOST_PP_ITERATION_4 143 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 144 && BOOST_PP_ITERATION_FINISH_4 >= 144 +# define BOOST_PP_ITERATION_4 144 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 145 && BOOST_PP_ITERATION_FINISH_4 >= 145 +# define BOOST_PP_ITERATION_4 145 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 146 && BOOST_PP_ITERATION_FINISH_4 >= 146 +# define BOOST_PP_ITERATION_4 146 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 147 && BOOST_PP_ITERATION_FINISH_4 >= 147 +# define BOOST_PP_ITERATION_4 147 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 148 && BOOST_PP_ITERATION_FINISH_4 >= 148 +# define BOOST_PP_ITERATION_4 148 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 149 && BOOST_PP_ITERATION_FINISH_4 >= 149 +# define BOOST_PP_ITERATION_4 149 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 150 && BOOST_PP_ITERATION_FINISH_4 >= 150 +# define BOOST_PP_ITERATION_4 150 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 151 && BOOST_PP_ITERATION_FINISH_4 >= 151 +# define BOOST_PP_ITERATION_4 151 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 152 && BOOST_PP_ITERATION_FINISH_4 >= 152 +# define BOOST_PP_ITERATION_4 152 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 153 && BOOST_PP_ITERATION_FINISH_4 >= 153 +# define BOOST_PP_ITERATION_4 153 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 154 && BOOST_PP_ITERATION_FINISH_4 >= 154 +# define BOOST_PP_ITERATION_4 154 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 155 && BOOST_PP_ITERATION_FINISH_4 >= 155 +# define BOOST_PP_ITERATION_4 155 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 156 && BOOST_PP_ITERATION_FINISH_4 >= 156 +# define BOOST_PP_ITERATION_4 156 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 157 && BOOST_PP_ITERATION_FINISH_4 >= 157 +# define BOOST_PP_ITERATION_4 157 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 158 && BOOST_PP_ITERATION_FINISH_4 >= 158 +# define BOOST_PP_ITERATION_4 158 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 159 && BOOST_PP_ITERATION_FINISH_4 >= 159 +# define BOOST_PP_ITERATION_4 159 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 160 && BOOST_PP_ITERATION_FINISH_4 >= 160 +# define BOOST_PP_ITERATION_4 160 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 161 && BOOST_PP_ITERATION_FINISH_4 >= 161 +# define BOOST_PP_ITERATION_4 161 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 162 && BOOST_PP_ITERATION_FINISH_4 >= 162 +# define BOOST_PP_ITERATION_4 162 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 163 && BOOST_PP_ITERATION_FINISH_4 >= 163 +# define BOOST_PP_ITERATION_4 163 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 164 && BOOST_PP_ITERATION_FINISH_4 >= 164 +# define BOOST_PP_ITERATION_4 164 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 165 && BOOST_PP_ITERATION_FINISH_4 >= 165 +# define BOOST_PP_ITERATION_4 165 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 166 && BOOST_PP_ITERATION_FINISH_4 >= 166 +# define BOOST_PP_ITERATION_4 166 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 167 && BOOST_PP_ITERATION_FINISH_4 >= 167 +# define BOOST_PP_ITERATION_4 167 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 168 && BOOST_PP_ITERATION_FINISH_4 >= 168 +# define BOOST_PP_ITERATION_4 168 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 169 && BOOST_PP_ITERATION_FINISH_4 >= 169 +# define BOOST_PP_ITERATION_4 169 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 170 && BOOST_PP_ITERATION_FINISH_4 >= 170 +# define BOOST_PP_ITERATION_4 170 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 171 && BOOST_PP_ITERATION_FINISH_4 >= 171 +# define BOOST_PP_ITERATION_4 171 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 172 && BOOST_PP_ITERATION_FINISH_4 >= 172 +# define BOOST_PP_ITERATION_4 172 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 173 && BOOST_PP_ITERATION_FINISH_4 >= 173 +# define BOOST_PP_ITERATION_4 173 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 174 && BOOST_PP_ITERATION_FINISH_4 >= 174 +# define BOOST_PP_ITERATION_4 174 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 175 && BOOST_PP_ITERATION_FINISH_4 >= 175 +# define BOOST_PP_ITERATION_4 175 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 176 && BOOST_PP_ITERATION_FINISH_4 >= 176 +# define BOOST_PP_ITERATION_4 176 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 177 && BOOST_PP_ITERATION_FINISH_4 >= 177 +# define BOOST_PP_ITERATION_4 177 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 178 && BOOST_PP_ITERATION_FINISH_4 >= 178 +# define BOOST_PP_ITERATION_4 178 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 179 && BOOST_PP_ITERATION_FINISH_4 >= 179 +# define BOOST_PP_ITERATION_4 179 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 180 && BOOST_PP_ITERATION_FINISH_4 >= 180 +# define BOOST_PP_ITERATION_4 180 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 181 && BOOST_PP_ITERATION_FINISH_4 >= 181 +# define BOOST_PP_ITERATION_4 181 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 182 && BOOST_PP_ITERATION_FINISH_4 >= 182 +# define BOOST_PP_ITERATION_4 182 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 183 && BOOST_PP_ITERATION_FINISH_4 >= 183 +# define BOOST_PP_ITERATION_4 183 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 184 && BOOST_PP_ITERATION_FINISH_4 >= 184 +# define BOOST_PP_ITERATION_4 184 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 185 && BOOST_PP_ITERATION_FINISH_4 >= 185 +# define BOOST_PP_ITERATION_4 185 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 186 && BOOST_PP_ITERATION_FINISH_4 >= 186 +# define BOOST_PP_ITERATION_4 186 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 187 && BOOST_PP_ITERATION_FINISH_4 >= 187 +# define BOOST_PP_ITERATION_4 187 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 188 && BOOST_PP_ITERATION_FINISH_4 >= 188 +# define BOOST_PP_ITERATION_4 188 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 189 && BOOST_PP_ITERATION_FINISH_4 >= 189 +# define BOOST_PP_ITERATION_4 189 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 190 && BOOST_PP_ITERATION_FINISH_4 >= 190 +# define BOOST_PP_ITERATION_4 190 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 191 && BOOST_PP_ITERATION_FINISH_4 >= 191 +# define BOOST_PP_ITERATION_4 191 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 192 && BOOST_PP_ITERATION_FINISH_4 >= 192 +# define BOOST_PP_ITERATION_4 192 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 193 && BOOST_PP_ITERATION_FINISH_4 >= 193 +# define BOOST_PP_ITERATION_4 193 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 194 && BOOST_PP_ITERATION_FINISH_4 >= 194 +# define BOOST_PP_ITERATION_4 194 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 195 && BOOST_PP_ITERATION_FINISH_4 >= 195 +# define BOOST_PP_ITERATION_4 195 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 196 && BOOST_PP_ITERATION_FINISH_4 >= 196 +# define BOOST_PP_ITERATION_4 196 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 197 && BOOST_PP_ITERATION_FINISH_4 >= 197 +# define BOOST_PP_ITERATION_4 197 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 198 && BOOST_PP_ITERATION_FINISH_4 >= 198 +# define BOOST_PP_ITERATION_4 198 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 199 && BOOST_PP_ITERATION_FINISH_4 >= 199 +# define BOOST_PP_ITERATION_4 199 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 200 && BOOST_PP_ITERATION_FINISH_4 >= 200 +# define BOOST_PP_ITERATION_4 200 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 201 && BOOST_PP_ITERATION_FINISH_4 >= 201 +# define BOOST_PP_ITERATION_4 201 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 202 && BOOST_PP_ITERATION_FINISH_4 >= 202 +# define BOOST_PP_ITERATION_4 202 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 203 && BOOST_PP_ITERATION_FINISH_4 >= 203 +# define BOOST_PP_ITERATION_4 203 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 204 && BOOST_PP_ITERATION_FINISH_4 >= 204 +# define BOOST_PP_ITERATION_4 204 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 205 && BOOST_PP_ITERATION_FINISH_4 >= 205 +# define BOOST_PP_ITERATION_4 205 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 206 && BOOST_PP_ITERATION_FINISH_4 >= 206 +# define BOOST_PP_ITERATION_4 206 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 207 && BOOST_PP_ITERATION_FINISH_4 >= 207 +# define BOOST_PP_ITERATION_4 207 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 208 && BOOST_PP_ITERATION_FINISH_4 >= 208 +# define BOOST_PP_ITERATION_4 208 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 209 && BOOST_PP_ITERATION_FINISH_4 >= 209 +# define BOOST_PP_ITERATION_4 209 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 210 && BOOST_PP_ITERATION_FINISH_4 >= 210 +# define BOOST_PP_ITERATION_4 210 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 211 && BOOST_PP_ITERATION_FINISH_4 >= 211 +# define BOOST_PP_ITERATION_4 211 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 212 && BOOST_PP_ITERATION_FINISH_4 >= 212 +# define BOOST_PP_ITERATION_4 212 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 213 && BOOST_PP_ITERATION_FINISH_4 >= 213 +# define BOOST_PP_ITERATION_4 213 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 214 && BOOST_PP_ITERATION_FINISH_4 >= 214 +# define BOOST_PP_ITERATION_4 214 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 215 && BOOST_PP_ITERATION_FINISH_4 >= 215 +# define BOOST_PP_ITERATION_4 215 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 216 && BOOST_PP_ITERATION_FINISH_4 >= 216 +# define BOOST_PP_ITERATION_4 216 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 217 && BOOST_PP_ITERATION_FINISH_4 >= 217 +# define BOOST_PP_ITERATION_4 217 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 218 && BOOST_PP_ITERATION_FINISH_4 >= 218 +# define BOOST_PP_ITERATION_4 218 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 219 && BOOST_PP_ITERATION_FINISH_4 >= 219 +# define BOOST_PP_ITERATION_4 219 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 220 && BOOST_PP_ITERATION_FINISH_4 >= 220 +# define BOOST_PP_ITERATION_4 220 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 221 && BOOST_PP_ITERATION_FINISH_4 >= 221 +# define BOOST_PP_ITERATION_4 221 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 222 && BOOST_PP_ITERATION_FINISH_4 >= 222 +# define BOOST_PP_ITERATION_4 222 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 223 && BOOST_PP_ITERATION_FINISH_4 >= 223 +# define BOOST_PP_ITERATION_4 223 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 224 && BOOST_PP_ITERATION_FINISH_4 >= 224 +# define BOOST_PP_ITERATION_4 224 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 225 && BOOST_PP_ITERATION_FINISH_4 >= 225 +# define BOOST_PP_ITERATION_4 225 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 226 && BOOST_PP_ITERATION_FINISH_4 >= 226 +# define BOOST_PP_ITERATION_4 226 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 227 && BOOST_PP_ITERATION_FINISH_4 >= 227 +# define BOOST_PP_ITERATION_4 227 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 228 && BOOST_PP_ITERATION_FINISH_4 >= 228 +# define BOOST_PP_ITERATION_4 228 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 229 && BOOST_PP_ITERATION_FINISH_4 >= 229 +# define BOOST_PP_ITERATION_4 229 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 230 && BOOST_PP_ITERATION_FINISH_4 >= 230 +# define BOOST_PP_ITERATION_4 230 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 231 && BOOST_PP_ITERATION_FINISH_4 >= 231 +# define BOOST_PP_ITERATION_4 231 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 232 && BOOST_PP_ITERATION_FINISH_4 >= 232 +# define BOOST_PP_ITERATION_4 232 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 233 && BOOST_PP_ITERATION_FINISH_4 >= 233 +# define BOOST_PP_ITERATION_4 233 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 234 && BOOST_PP_ITERATION_FINISH_4 >= 234 +# define BOOST_PP_ITERATION_4 234 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 235 && BOOST_PP_ITERATION_FINISH_4 >= 235 +# define BOOST_PP_ITERATION_4 235 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 236 && BOOST_PP_ITERATION_FINISH_4 >= 236 +# define BOOST_PP_ITERATION_4 236 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 237 && BOOST_PP_ITERATION_FINISH_4 >= 237 +# define BOOST_PP_ITERATION_4 237 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 238 && BOOST_PP_ITERATION_FINISH_4 >= 238 +# define BOOST_PP_ITERATION_4 238 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 239 && BOOST_PP_ITERATION_FINISH_4 >= 239 +# define BOOST_PP_ITERATION_4 239 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 240 && BOOST_PP_ITERATION_FINISH_4 >= 240 +# define BOOST_PP_ITERATION_4 240 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 241 && BOOST_PP_ITERATION_FINISH_4 >= 241 +# define BOOST_PP_ITERATION_4 241 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 242 && BOOST_PP_ITERATION_FINISH_4 >= 242 +# define BOOST_PP_ITERATION_4 242 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 243 && BOOST_PP_ITERATION_FINISH_4 >= 243 +# define BOOST_PP_ITERATION_4 243 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 244 && BOOST_PP_ITERATION_FINISH_4 >= 244 +# define BOOST_PP_ITERATION_4 244 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 245 && BOOST_PP_ITERATION_FINISH_4 >= 245 +# define BOOST_PP_ITERATION_4 245 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 246 && BOOST_PP_ITERATION_FINISH_4 >= 246 +# define BOOST_PP_ITERATION_4 246 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 247 && BOOST_PP_ITERATION_FINISH_4 >= 247 +# define BOOST_PP_ITERATION_4 247 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 248 && BOOST_PP_ITERATION_FINISH_4 >= 248 +# define BOOST_PP_ITERATION_4 248 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 249 && BOOST_PP_ITERATION_FINISH_4 >= 249 +# define BOOST_PP_ITERATION_4 249 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 250 && BOOST_PP_ITERATION_FINISH_4 >= 250 +# define BOOST_PP_ITERATION_4 250 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 251 && BOOST_PP_ITERATION_FINISH_4 >= 251 +# define BOOST_PP_ITERATION_4 251 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 252 && BOOST_PP_ITERATION_FINISH_4 >= 252 +# define BOOST_PP_ITERATION_4 252 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 253 && BOOST_PP_ITERATION_FINISH_4 >= 253 +# define BOOST_PP_ITERATION_4 253 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 254 && BOOST_PP_ITERATION_FINISH_4 >= 254 +# define BOOST_PP_ITERATION_4 254 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 255 && BOOST_PP_ITERATION_FINISH_4 >= 255 +# define BOOST_PP_ITERATION_4 255 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_START_4 <= 256 && BOOST_PP_ITERATION_FINISH_4 >= 256 +# define BOOST_PP_ITERATION_4 256 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 3 +# +# undef BOOST_PP_ITERATION_START_4 +# undef BOOST_PP_ITERATION_FINISH_4 +# undef BOOST_PP_FILENAME_4 +# +# undef BOOST_PP_ITERATION_FLAGS_4 +# undef BOOST_PP_ITERATION_PARAMS_4 diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward5.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward5.hpp new file mode 100644 index 0000000..7617607 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/forward5.hpp @@ -0,0 +1,1338 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if defined(BOOST_PP_ITERATION_LIMITS) +# if !defined(BOOST_PP_FILENAME_5) +# error BOOST_PP_ERROR: depth #5 filename is not defined +# endif +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_ITERATION_LIMITS) +# include +# define BOOST_PP_ITERATION_FLAGS_5() 0 +# undef BOOST_PP_ITERATION_LIMITS +# elif defined(BOOST_PP_ITERATION_PARAMS_5) +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(0, BOOST_PP_ITERATION_PARAMS_5) +# include +# define BOOST_PP_VALUE BOOST_PP_ARRAY_ELEM(1, BOOST_PP_ITERATION_PARAMS_5) +# include +# define BOOST_PP_FILENAME_5 BOOST_PP_ARRAY_ELEM(2, BOOST_PP_ITERATION_PARAMS_5) +# if BOOST_PP_ARRAY_SIZE(BOOST_PP_ITERATION_PARAMS_5) >= 4 +# define BOOST_PP_ITERATION_FLAGS_5() BOOST_PP_ARRAY_ELEM(3, BOOST_PP_ITERATION_PARAMS_5) +# else +# define BOOST_PP_ITERATION_FLAGS_5() 0 +# endif +# else +# error BOOST_PP_ERROR: depth #5 iteration boundaries or filename not defined +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 5 +# +# if (BOOST_PP_ITERATION_START_5) > (BOOST_PP_ITERATION_FINISH_5) +# include +# else +# if BOOST_PP_ITERATION_START_5 <= 0 && BOOST_PP_ITERATION_FINISH_5 >= 0 +# define BOOST_PP_ITERATION_5 0 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 1 && BOOST_PP_ITERATION_FINISH_5 >= 1 +# define BOOST_PP_ITERATION_5 1 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 2 && BOOST_PP_ITERATION_FINISH_5 >= 2 +# define BOOST_PP_ITERATION_5 2 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 3 && BOOST_PP_ITERATION_FINISH_5 >= 3 +# define BOOST_PP_ITERATION_5 3 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 4 && BOOST_PP_ITERATION_FINISH_5 >= 4 +# define BOOST_PP_ITERATION_5 4 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 5 && BOOST_PP_ITERATION_FINISH_5 >= 5 +# define BOOST_PP_ITERATION_5 5 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 6 && BOOST_PP_ITERATION_FINISH_5 >= 6 +# define BOOST_PP_ITERATION_5 6 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 7 && BOOST_PP_ITERATION_FINISH_5 >= 7 +# define BOOST_PP_ITERATION_5 7 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 8 && BOOST_PP_ITERATION_FINISH_5 >= 8 +# define BOOST_PP_ITERATION_5 8 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 9 && BOOST_PP_ITERATION_FINISH_5 >= 9 +# define BOOST_PP_ITERATION_5 9 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 10 && BOOST_PP_ITERATION_FINISH_5 >= 10 +# define BOOST_PP_ITERATION_5 10 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 11 && BOOST_PP_ITERATION_FINISH_5 >= 11 +# define BOOST_PP_ITERATION_5 11 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 12 && BOOST_PP_ITERATION_FINISH_5 >= 12 +# define BOOST_PP_ITERATION_5 12 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 13 && BOOST_PP_ITERATION_FINISH_5 >= 13 +# define BOOST_PP_ITERATION_5 13 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 14 && BOOST_PP_ITERATION_FINISH_5 >= 14 +# define BOOST_PP_ITERATION_5 14 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 15 && BOOST_PP_ITERATION_FINISH_5 >= 15 +# define BOOST_PP_ITERATION_5 15 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 16 && BOOST_PP_ITERATION_FINISH_5 >= 16 +# define BOOST_PP_ITERATION_5 16 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 17 && BOOST_PP_ITERATION_FINISH_5 >= 17 +# define BOOST_PP_ITERATION_5 17 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 18 && BOOST_PP_ITERATION_FINISH_5 >= 18 +# define BOOST_PP_ITERATION_5 18 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 19 && BOOST_PP_ITERATION_FINISH_5 >= 19 +# define BOOST_PP_ITERATION_5 19 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 20 && BOOST_PP_ITERATION_FINISH_5 >= 20 +# define BOOST_PP_ITERATION_5 20 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 21 && BOOST_PP_ITERATION_FINISH_5 >= 21 +# define BOOST_PP_ITERATION_5 21 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 22 && BOOST_PP_ITERATION_FINISH_5 >= 22 +# define BOOST_PP_ITERATION_5 22 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 23 && BOOST_PP_ITERATION_FINISH_5 >= 23 +# define BOOST_PP_ITERATION_5 23 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 24 && BOOST_PP_ITERATION_FINISH_5 >= 24 +# define BOOST_PP_ITERATION_5 24 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 25 && BOOST_PP_ITERATION_FINISH_5 >= 25 +# define BOOST_PP_ITERATION_5 25 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 26 && BOOST_PP_ITERATION_FINISH_5 >= 26 +# define BOOST_PP_ITERATION_5 26 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 27 && BOOST_PP_ITERATION_FINISH_5 >= 27 +# define BOOST_PP_ITERATION_5 27 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 28 && BOOST_PP_ITERATION_FINISH_5 >= 28 +# define BOOST_PP_ITERATION_5 28 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 29 && BOOST_PP_ITERATION_FINISH_5 >= 29 +# define BOOST_PP_ITERATION_5 29 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 30 && BOOST_PP_ITERATION_FINISH_5 >= 30 +# define BOOST_PP_ITERATION_5 30 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 31 && BOOST_PP_ITERATION_FINISH_5 >= 31 +# define BOOST_PP_ITERATION_5 31 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 32 && BOOST_PP_ITERATION_FINISH_5 >= 32 +# define BOOST_PP_ITERATION_5 32 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 33 && BOOST_PP_ITERATION_FINISH_5 >= 33 +# define BOOST_PP_ITERATION_5 33 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 34 && BOOST_PP_ITERATION_FINISH_5 >= 34 +# define BOOST_PP_ITERATION_5 34 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 35 && BOOST_PP_ITERATION_FINISH_5 >= 35 +# define BOOST_PP_ITERATION_5 35 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 36 && BOOST_PP_ITERATION_FINISH_5 >= 36 +# define BOOST_PP_ITERATION_5 36 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 37 && BOOST_PP_ITERATION_FINISH_5 >= 37 +# define BOOST_PP_ITERATION_5 37 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 38 && BOOST_PP_ITERATION_FINISH_5 >= 38 +# define BOOST_PP_ITERATION_5 38 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 39 && BOOST_PP_ITERATION_FINISH_5 >= 39 +# define BOOST_PP_ITERATION_5 39 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 40 && BOOST_PP_ITERATION_FINISH_5 >= 40 +# define BOOST_PP_ITERATION_5 40 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 41 && BOOST_PP_ITERATION_FINISH_5 >= 41 +# define BOOST_PP_ITERATION_5 41 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 42 && BOOST_PP_ITERATION_FINISH_5 >= 42 +# define BOOST_PP_ITERATION_5 42 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 43 && BOOST_PP_ITERATION_FINISH_5 >= 43 +# define BOOST_PP_ITERATION_5 43 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 44 && BOOST_PP_ITERATION_FINISH_5 >= 44 +# define BOOST_PP_ITERATION_5 44 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 45 && BOOST_PP_ITERATION_FINISH_5 >= 45 +# define BOOST_PP_ITERATION_5 45 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 46 && BOOST_PP_ITERATION_FINISH_5 >= 46 +# define BOOST_PP_ITERATION_5 46 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 47 && BOOST_PP_ITERATION_FINISH_5 >= 47 +# define BOOST_PP_ITERATION_5 47 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 48 && BOOST_PP_ITERATION_FINISH_5 >= 48 +# define BOOST_PP_ITERATION_5 48 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 49 && BOOST_PP_ITERATION_FINISH_5 >= 49 +# define BOOST_PP_ITERATION_5 49 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 50 && BOOST_PP_ITERATION_FINISH_5 >= 50 +# define BOOST_PP_ITERATION_5 50 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 51 && BOOST_PP_ITERATION_FINISH_5 >= 51 +# define BOOST_PP_ITERATION_5 51 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 52 && BOOST_PP_ITERATION_FINISH_5 >= 52 +# define BOOST_PP_ITERATION_5 52 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 53 && BOOST_PP_ITERATION_FINISH_5 >= 53 +# define BOOST_PP_ITERATION_5 53 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 54 && BOOST_PP_ITERATION_FINISH_5 >= 54 +# define BOOST_PP_ITERATION_5 54 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 55 && BOOST_PP_ITERATION_FINISH_5 >= 55 +# define BOOST_PP_ITERATION_5 55 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 56 && BOOST_PP_ITERATION_FINISH_5 >= 56 +# define BOOST_PP_ITERATION_5 56 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 57 && BOOST_PP_ITERATION_FINISH_5 >= 57 +# define BOOST_PP_ITERATION_5 57 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 58 && BOOST_PP_ITERATION_FINISH_5 >= 58 +# define BOOST_PP_ITERATION_5 58 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 59 && BOOST_PP_ITERATION_FINISH_5 >= 59 +# define BOOST_PP_ITERATION_5 59 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 60 && BOOST_PP_ITERATION_FINISH_5 >= 60 +# define BOOST_PP_ITERATION_5 60 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 61 && BOOST_PP_ITERATION_FINISH_5 >= 61 +# define BOOST_PP_ITERATION_5 61 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 62 && BOOST_PP_ITERATION_FINISH_5 >= 62 +# define BOOST_PP_ITERATION_5 62 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 63 && BOOST_PP_ITERATION_FINISH_5 >= 63 +# define BOOST_PP_ITERATION_5 63 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 64 && BOOST_PP_ITERATION_FINISH_5 >= 64 +# define BOOST_PP_ITERATION_5 64 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 65 && BOOST_PP_ITERATION_FINISH_5 >= 65 +# define BOOST_PP_ITERATION_5 65 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 66 && BOOST_PP_ITERATION_FINISH_5 >= 66 +# define BOOST_PP_ITERATION_5 66 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 67 && BOOST_PP_ITERATION_FINISH_5 >= 67 +# define BOOST_PP_ITERATION_5 67 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 68 && BOOST_PP_ITERATION_FINISH_5 >= 68 +# define BOOST_PP_ITERATION_5 68 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 69 && BOOST_PP_ITERATION_FINISH_5 >= 69 +# define BOOST_PP_ITERATION_5 69 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 70 && BOOST_PP_ITERATION_FINISH_5 >= 70 +# define BOOST_PP_ITERATION_5 70 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 71 && BOOST_PP_ITERATION_FINISH_5 >= 71 +# define BOOST_PP_ITERATION_5 71 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 72 && BOOST_PP_ITERATION_FINISH_5 >= 72 +# define BOOST_PP_ITERATION_5 72 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 73 && BOOST_PP_ITERATION_FINISH_5 >= 73 +# define BOOST_PP_ITERATION_5 73 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 74 && BOOST_PP_ITERATION_FINISH_5 >= 74 +# define BOOST_PP_ITERATION_5 74 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 75 && BOOST_PP_ITERATION_FINISH_5 >= 75 +# define BOOST_PP_ITERATION_5 75 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 76 && BOOST_PP_ITERATION_FINISH_5 >= 76 +# define BOOST_PP_ITERATION_5 76 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 77 && BOOST_PP_ITERATION_FINISH_5 >= 77 +# define BOOST_PP_ITERATION_5 77 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 78 && BOOST_PP_ITERATION_FINISH_5 >= 78 +# define BOOST_PP_ITERATION_5 78 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 79 && BOOST_PP_ITERATION_FINISH_5 >= 79 +# define BOOST_PP_ITERATION_5 79 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 80 && BOOST_PP_ITERATION_FINISH_5 >= 80 +# define BOOST_PP_ITERATION_5 80 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 81 && BOOST_PP_ITERATION_FINISH_5 >= 81 +# define BOOST_PP_ITERATION_5 81 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 82 && BOOST_PP_ITERATION_FINISH_5 >= 82 +# define BOOST_PP_ITERATION_5 82 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 83 && BOOST_PP_ITERATION_FINISH_5 >= 83 +# define BOOST_PP_ITERATION_5 83 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 84 && BOOST_PP_ITERATION_FINISH_5 >= 84 +# define BOOST_PP_ITERATION_5 84 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 85 && BOOST_PP_ITERATION_FINISH_5 >= 85 +# define BOOST_PP_ITERATION_5 85 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 86 && BOOST_PP_ITERATION_FINISH_5 >= 86 +# define BOOST_PP_ITERATION_5 86 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 87 && BOOST_PP_ITERATION_FINISH_5 >= 87 +# define BOOST_PP_ITERATION_5 87 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 88 && BOOST_PP_ITERATION_FINISH_5 >= 88 +# define BOOST_PP_ITERATION_5 88 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 89 && BOOST_PP_ITERATION_FINISH_5 >= 89 +# define BOOST_PP_ITERATION_5 89 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 90 && BOOST_PP_ITERATION_FINISH_5 >= 90 +# define BOOST_PP_ITERATION_5 90 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 91 && BOOST_PP_ITERATION_FINISH_5 >= 91 +# define BOOST_PP_ITERATION_5 91 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 92 && BOOST_PP_ITERATION_FINISH_5 >= 92 +# define BOOST_PP_ITERATION_5 92 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 93 && BOOST_PP_ITERATION_FINISH_5 >= 93 +# define BOOST_PP_ITERATION_5 93 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 94 && BOOST_PP_ITERATION_FINISH_5 >= 94 +# define BOOST_PP_ITERATION_5 94 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 95 && BOOST_PP_ITERATION_FINISH_5 >= 95 +# define BOOST_PP_ITERATION_5 95 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 96 && BOOST_PP_ITERATION_FINISH_5 >= 96 +# define BOOST_PP_ITERATION_5 96 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 97 && BOOST_PP_ITERATION_FINISH_5 >= 97 +# define BOOST_PP_ITERATION_5 97 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 98 && BOOST_PP_ITERATION_FINISH_5 >= 98 +# define BOOST_PP_ITERATION_5 98 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 99 && BOOST_PP_ITERATION_FINISH_5 >= 99 +# define BOOST_PP_ITERATION_5 99 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 100 && BOOST_PP_ITERATION_FINISH_5 >= 100 +# define BOOST_PP_ITERATION_5 100 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 101 && BOOST_PP_ITERATION_FINISH_5 >= 101 +# define BOOST_PP_ITERATION_5 101 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 102 && BOOST_PP_ITERATION_FINISH_5 >= 102 +# define BOOST_PP_ITERATION_5 102 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 103 && BOOST_PP_ITERATION_FINISH_5 >= 103 +# define BOOST_PP_ITERATION_5 103 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 104 && BOOST_PP_ITERATION_FINISH_5 >= 104 +# define BOOST_PP_ITERATION_5 104 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 105 && BOOST_PP_ITERATION_FINISH_5 >= 105 +# define BOOST_PP_ITERATION_5 105 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 106 && BOOST_PP_ITERATION_FINISH_5 >= 106 +# define BOOST_PP_ITERATION_5 106 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 107 && BOOST_PP_ITERATION_FINISH_5 >= 107 +# define BOOST_PP_ITERATION_5 107 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 108 && BOOST_PP_ITERATION_FINISH_5 >= 108 +# define BOOST_PP_ITERATION_5 108 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 109 && BOOST_PP_ITERATION_FINISH_5 >= 109 +# define BOOST_PP_ITERATION_5 109 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 110 && BOOST_PP_ITERATION_FINISH_5 >= 110 +# define BOOST_PP_ITERATION_5 110 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 111 && BOOST_PP_ITERATION_FINISH_5 >= 111 +# define BOOST_PP_ITERATION_5 111 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 112 && BOOST_PP_ITERATION_FINISH_5 >= 112 +# define BOOST_PP_ITERATION_5 112 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 113 && BOOST_PP_ITERATION_FINISH_5 >= 113 +# define BOOST_PP_ITERATION_5 113 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 114 && BOOST_PP_ITERATION_FINISH_5 >= 114 +# define BOOST_PP_ITERATION_5 114 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 115 && BOOST_PP_ITERATION_FINISH_5 >= 115 +# define BOOST_PP_ITERATION_5 115 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 116 && BOOST_PP_ITERATION_FINISH_5 >= 116 +# define BOOST_PP_ITERATION_5 116 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 117 && BOOST_PP_ITERATION_FINISH_5 >= 117 +# define BOOST_PP_ITERATION_5 117 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 118 && BOOST_PP_ITERATION_FINISH_5 >= 118 +# define BOOST_PP_ITERATION_5 118 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 119 && BOOST_PP_ITERATION_FINISH_5 >= 119 +# define BOOST_PP_ITERATION_5 119 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 120 && BOOST_PP_ITERATION_FINISH_5 >= 120 +# define BOOST_PP_ITERATION_5 120 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 121 && BOOST_PP_ITERATION_FINISH_5 >= 121 +# define BOOST_PP_ITERATION_5 121 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 122 && BOOST_PP_ITERATION_FINISH_5 >= 122 +# define BOOST_PP_ITERATION_5 122 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 123 && BOOST_PP_ITERATION_FINISH_5 >= 123 +# define BOOST_PP_ITERATION_5 123 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 124 && BOOST_PP_ITERATION_FINISH_5 >= 124 +# define BOOST_PP_ITERATION_5 124 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 125 && BOOST_PP_ITERATION_FINISH_5 >= 125 +# define BOOST_PP_ITERATION_5 125 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 126 && BOOST_PP_ITERATION_FINISH_5 >= 126 +# define BOOST_PP_ITERATION_5 126 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 127 && BOOST_PP_ITERATION_FINISH_5 >= 127 +# define BOOST_PP_ITERATION_5 127 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 128 && BOOST_PP_ITERATION_FINISH_5 >= 128 +# define BOOST_PP_ITERATION_5 128 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 129 && BOOST_PP_ITERATION_FINISH_5 >= 129 +# define BOOST_PP_ITERATION_5 129 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 130 && BOOST_PP_ITERATION_FINISH_5 >= 130 +# define BOOST_PP_ITERATION_5 130 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 131 && BOOST_PP_ITERATION_FINISH_5 >= 131 +# define BOOST_PP_ITERATION_5 131 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 132 && BOOST_PP_ITERATION_FINISH_5 >= 132 +# define BOOST_PP_ITERATION_5 132 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 133 && BOOST_PP_ITERATION_FINISH_5 >= 133 +# define BOOST_PP_ITERATION_5 133 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 134 && BOOST_PP_ITERATION_FINISH_5 >= 134 +# define BOOST_PP_ITERATION_5 134 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 135 && BOOST_PP_ITERATION_FINISH_5 >= 135 +# define BOOST_PP_ITERATION_5 135 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 136 && BOOST_PP_ITERATION_FINISH_5 >= 136 +# define BOOST_PP_ITERATION_5 136 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 137 && BOOST_PP_ITERATION_FINISH_5 >= 137 +# define BOOST_PP_ITERATION_5 137 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 138 && BOOST_PP_ITERATION_FINISH_5 >= 138 +# define BOOST_PP_ITERATION_5 138 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 139 && BOOST_PP_ITERATION_FINISH_5 >= 139 +# define BOOST_PP_ITERATION_5 139 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 140 && BOOST_PP_ITERATION_FINISH_5 >= 140 +# define BOOST_PP_ITERATION_5 140 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 141 && BOOST_PP_ITERATION_FINISH_5 >= 141 +# define BOOST_PP_ITERATION_5 141 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 142 && BOOST_PP_ITERATION_FINISH_5 >= 142 +# define BOOST_PP_ITERATION_5 142 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 143 && BOOST_PP_ITERATION_FINISH_5 >= 143 +# define BOOST_PP_ITERATION_5 143 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 144 && BOOST_PP_ITERATION_FINISH_5 >= 144 +# define BOOST_PP_ITERATION_5 144 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 145 && BOOST_PP_ITERATION_FINISH_5 >= 145 +# define BOOST_PP_ITERATION_5 145 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 146 && BOOST_PP_ITERATION_FINISH_5 >= 146 +# define BOOST_PP_ITERATION_5 146 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 147 && BOOST_PP_ITERATION_FINISH_5 >= 147 +# define BOOST_PP_ITERATION_5 147 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 148 && BOOST_PP_ITERATION_FINISH_5 >= 148 +# define BOOST_PP_ITERATION_5 148 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 149 && BOOST_PP_ITERATION_FINISH_5 >= 149 +# define BOOST_PP_ITERATION_5 149 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 150 && BOOST_PP_ITERATION_FINISH_5 >= 150 +# define BOOST_PP_ITERATION_5 150 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 151 && BOOST_PP_ITERATION_FINISH_5 >= 151 +# define BOOST_PP_ITERATION_5 151 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 152 && BOOST_PP_ITERATION_FINISH_5 >= 152 +# define BOOST_PP_ITERATION_5 152 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 153 && BOOST_PP_ITERATION_FINISH_5 >= 153 +# define BOOST_PP_ITERATION_5 153 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 154 && BOOST_PP_ITERATION_FINISH_5 >= 154 +# define BOOST_PP_ITERATION_5 154 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 155 && BOOST_PP_ITERATION_FINISH_5 >= 155 +# define BOOST_PP_ITERATION_5 155 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 156 && BOOST_PP_ITERATION_FINISH_5 >= 156 +# define BOOST_PP_ITERATION_5 156 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 157 && BOOST_PP_ITERATION_FINISH_5 >= 157 +# define BOOST_PP_ITERATION_5 157 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 158 && BOOST_PP_ITERATION_FINISH_5 >= 158 +# define BOOST_PP_ITERATION_5 158 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 159 && BOOST_PP_ITERATION_FINISH_5 >= 159 +# define BOOST_PP_ITERATION_5 159 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 160 && BOOST_PP_ITERATION_FINISH_5 >= 160 +# define BOOST_PP_ITERATION_5 160 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 161 && BOOST_PP_ITERATION_FINISH_5 >= 161 +# define BOOST_PP_ITERATION_5 161 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 162 && BOOST_PP_ITERATION_FINISH_5 >= 162 +# define BOOST_PP_ITERATION_5 162 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 163 && BOOST_PP_ITERATION_FINISH_5 >= 163 +# define BOOST_PP_ITERATION_5 163 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 164 && BOOST_PP_ITERATION_FINISH_5 >= 164 +# define BOOST_PP_ITERATION_5 164 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 165 && BOOST_PP_ITERATION_FINISH_5 >= 165 +# define BOOST_PP_ITERATION_5 165 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 166 && BOOST_PP_ITERATION_FINISH_5 >= 166 +# define BOOST_PP_ITERATION_5 166 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 167 && BOOST_PP_ITERATION_FINISH_5 >= 167 +# define BOOST_PP_ITERATION_5 167 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 168 && BOOST_PP_ITERATION_FINISH_5 >= 168 +# define BOOST_PP_ITERATION_5 168 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 169 && BOOST_PP_ITERATION_FINISH_5 >= 169 +# define BOOST_PP_ITERATION_5 169 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 170 && BOOST_PP_ITERATION_FINISH_5 >= 170 +# define BOOST_PP_ITERATION_5 170 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 171 && BOOST_PP_ITERATION_FINISH_5 >= 171 +# define BOOST_PP_ITERATION_5 171 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 172 && BOOST_PP_ITERATION_FINISH_5 >= 172 +# define BOOST_PP_ITERATION_5 172 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 173 && BOOST_PP_ITERATION_FINISH_5 >= 173 +# define BOOST_PP_ITERATION_5 173 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 174 && BOOST_PP_ITERATION_FINISH_5 >= 174 +# define BOOST_PP_ITERATION_5 174 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 175 && BOOST_PP_ITERATION_FINISH_5 >= 175 +# define BOOST_PP_ITERATION_5 175 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 176 && BOOST_PP_ITERATION_FINISH_5 >= 176 +# define BOOST_PP_ITERATION_5 176 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 177 && BOOST_PP_ITERATION_FINISH_5 >= 177 +# define BOOST_PP_ITERATION_5 177 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 178 && BOOST_PP_ITERATION_FINISH_5 >= 178 +# define BOOST_PP_ITERATION_5 178 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 179 && BOOST_PP_ITERATION_FINISH_5 >= 179 +# define BOOST_PP_ITERATION_5 179 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 180 && BOOST_PP_ITERATION_FINISH_5 >= 180 +# define BOOST_PP_ITERATION_5 180 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 181 && BOOST_PP_ITERATION_FINISH_5 >= 181 +# define BOOST_PP_ITERATION_5 181 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 182 && BOOST_PP_ITERATION_FINISH_5 >= 182 +# define BOOST_PP_ITERATION_5 182 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 183 && BOOST_PP_ITERATION_FINISH_5 >= 183 +# define BOOST_PP_ITERATION_5 183 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 184 && BOOST_PP_ITERATION_FINISH_5 >= 184 +# define BOOST_PP_ITERATION_5 184 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 185 && BOOST_PP_ITERATION_FINISH_5 >= 185 +# define BOOST_PP_ITERATION_5 185 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 186 && BOOST_PP_ITERATION_FINISH_5 >= 186 +# define BOOST_PP_ITERATION_5 186 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 187 && BOOST_PP_ITERATION_FINISH_5 >= 187 +# define BOOST_PP_ITERATION_5 187 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 188 && BOOST_PP_ITERATION_FINISH_5 >= 188 +# define BOOST_PP_ITERATION_5 188 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 189 && BOOST_PP_ITERATION_FINISH_5 >= 189 +# define BOOST_PP_ITERATION_5 189 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 190 && BOOST_PP_ITERATION_FINISH_5 >= 190 +# define BOOST_PP_ITERATION_5 190 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 191 && BOOST_PP_ITERATION_FINISH_5 >= 191 +# define BOOST_PP_ITERATION_5 191 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 192 && BOOST_PP_ITERATION_FINISH_5 >= 192 +# define BOOST_PP_ITERATION_5 192 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 193 && BOOST_PP_ITERATION_FINISH_5 >= 193 +# define BOOST_PP_ITERATION_5 193 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 194 && BOOST_PP_ITERATION_FINISH_5 >= 194 +# define BOOST_PP_ITERATION_5 194 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 195 && BOOST_PP_ITERATION_FINISH_5 >= 195 +# define BOOST_PP_ITERATION_5 195 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 196 && BOOST_PP_ITERATION_FINISH_5 >= 196 +# define BOOST_PP_ITERATION_5 196 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 197 && BOOST_PP_ITERATION_FINISH_5 >= 197 +# define BOOST_PP_ITERATION_5 197 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 198 && BOOST_PP_ITERATION_FINISH_5 >= 198 +# define BOOST_PP_ITERATION_5 198 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 199 && BOOST_PP_ITERATION_FINISH_5 >= 199 +# define BOOST_PP_ITERATION_5 199 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 200 && BOOST_PP_ITERATION_FINISH_5 >= 200 +# define BOOST_PP_ITERATION_5 200 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 201 && BOOST_PP_ITERATION_FINISH_5 >= 201 +# define BOOST_PP_ITERATION_5 201 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 202 && BOOST_PP_ITERATION_FINISH_5 >= 202 +# define BOOST_PP_ITERATION_5 202 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 203 && BOOST_PP_ITERATION_FINISH_5 >= 203 +# define BOOST_PP_ITERATION_5 203 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 204 && BOOST_PP_ITERATION_FINISH_5 >= 204 +# define BOOST_PP_ITERATION_5 204 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 205 && BOOST_PP_ITERATION_FINISH_5 >= 205 +# define BOOST_PP_ITERATION_5 205 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 206 && BOOST_PP_ITERATION_FINISH_5 >= 206 +# define BOOST_PP_ITERATION_5 206 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 207 && BOOST_PP_ITERATION_FINISH_5 >= 207 +# define BOOST_PP_ITERATION_5 207 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 208 && BOOST_PP_ITERATION_FINISH_5 >= 208 +# define BOOST_PP_ITERATION_5 208 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 209 && BOOST_PP_ITERATION_FINISH_5 >= 209 +# define BOOST_PP_ITERATION_5 209 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 210 && BOOST_PP_ITERATION_FINISH_5 >= 210 +# define BOOST_PP_ITERATION_5 210 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 211 && BOOST_PP_ITERATION_FINISH_5 >= 211 +# define BOOST_PP_ITERATION_5 211 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 212 && BOOST_PP_ITERATION_FINISH_5 >= 212 +# define BOOST_PP_ITERATION_5 212 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 213 && BOOST_PP_ITERATION_FINISH_5 >= 213 +# define BOOST_PP_ITERATION_5 213 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 214 && BOOST_PP_ITERATION_FINISH_5 >= 214 +# define BOOST_PP_ITERATION_5 214 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 215 && BOOST_PP_ITERATION_FINISH_5 >= 215 +# define BOOST_PP_ITERATION_5 215 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 216 && BOOST_PP_ITERATION_FINISH_5 >= 216 +# define BOOST_PP_ITERATION_5 216 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 217 && BOOST_PP_ITERATION_FINISH_5 >= 217 +# define BOOST_PP_ITERATION_5 217 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 218 && BOOST_PP_ITERATION_FINISH_5 >= 218 +# define BOOST_PP_ITERATION_5 218 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 219 && BOOST_PP_ITERATION_FINISH_5 >= 219 +# define BOOST_PP_ITERATION_5 219 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 220 && BOOST_PP_ITERATION_FINISH_5 >= 220 +# define BOOST_PP_ITERATION_5 220 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 221 && BOOST_PP_ITERATION_FINISH_5 >= 221 +# define BOOST_PP_ITERATION_5 221 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 222 && BOOST_PP_ITERATION_FINISH_5 >= 222 +# define BOOST_PP_ITERATION_5 222 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 223 && BOOST_PP_ITERATION_FINISH_5 >= 223 +# define BOOST_PP_ITERATION_5 223 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 224 && BOOST_PP_ITERATION_FINISH_5 >= 224 +# define BOOST_PP_ITERATION_5 224 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 225 && BOOST_PP_ITERATION_FINISH_5 >= 225 +# define BOOST_PP_ITERATION_5 225 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 226 && BOOST_PP_ITERATION_FINISH_5 >= 226 +# define BOOST_PP_ITERATION_5 226 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 227 && BOOST_PP_ITERATION_FINISH_5 >= 227 +# define BOOST_PP_ITERATION_5 227 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 228 && BOOST_PP_ITERATION_FINISH_5 >= 228 +# define BOOST_PP_ITERATION_5 228 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 229 && BOOST_PP_ITERATION_FINISH_5 >= 229 +# define BOOST_PP_ITERATION_5 229 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 230 && BOOST_PP_ITERATION_FINISH_5 >= 230 +# define BOOST_PP_ITERATION_5 230 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 231 && BOOST_PP_ITERATION_FINISH_5 >= 231 +# define BOOST_PP_ITERATION_5 231 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 232 && BOOST_PP_ITERATION_FINISH_5 >= 232 +# define BOOST_PP_ITERATION_5 232 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 233 && BOOST_PP_ITERATION_FINISH_5 >= 233 +# define BOOST_PP_ITERATION_5 233 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 234 && BOOST_PP_ITERATION_FINISH_5 >= 234 +# define BOOST_PP_ITERATION_5 234 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 235 && BOOST_PP_ITERATION_FINISH_5 >= 235 +# define BOOST_PP_ITERATION_5 235 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 236 && BOOST_PP_ITERATION_FINISH_5 >= 236 +# define BOOST_PP_ITERATION_5 236 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 237 && BOOST_PP_ITERATION_FINISH_5 >= 237 +# define BOOST_PP_ITERATION_5 237 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 238 && BOOST_PP_ITERATION_FINISH_5 >= 238 +# define BOOST_PP_ITERATION_5 238 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 239 && BOOST_PP_ITERATION_FINISH_5 >= 239 +# define BOOST_PP_ITERATION_5 239 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 240 && BOOST_PP_ITERATION_FINISH_5 >= 240 +# define BOOST_PP_ITERATION_5 240 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 241 && BOOST_PP_ITERATION_FINISH_5 >= 241 +# define BOOST_PP_ITERATION_5 241 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 242 && BOOST_PP_ITERATION_FINISH_5 >= 242 +# define BOOST_PP_ITERATION_5 242 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 243 && BOOST_PP_ITERATION_FINISH_5 >= 243 +# define BOOST_PP_ITERATION_5 243 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 244 && BOOST_PP_ITERATION_FINISH_5 >= 244 +# define BOOST_PP_ITERATION_5 244 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 245 && BOOST_PP_ITERATION_FINISH_5 >= 245 +# define BOOST_PP_ITERATION_5 245 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 246 && BOOST_PP_ITERATION_FINISH_5 >= 246 +# define BOOST_PP_ITERATION_5 246 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 247 && BOOST_PP_ITERATION_FINISH_5 >= 247 +# define BOOST_PP_ITERATION_5 247 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 248 && BOOST_PP_ITERATION_FINISH_5 >= 248 +# define BOOST_PP_ITERATION_5 248 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 249 && BOOST_PP_ITERATION_FINISH_5 >= 249 +# define BOOST_PP_ITERATION_5 249 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 250 && BOOST_PP_ITERATION_FINISH_5 >= 250 +# define BOOST_PP_ITERATION_5 250 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 251 && BOOST_PP_ITERATION_FINISH_5 >= 251 +# define BOOST_PP_ITERATION_5 251 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 252 && BOOST_PP_ITERATION_FINISH_5 >= 252 +# define BOOST_PP_ITERATION_5 252 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 253 && BOOST_PP_ITERATION_FINISH_5 >= 253 +# define BOOST_PP_ITERATION_5 253 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 254 && BOOST_PP_ITERATION_FINISH_5 >= 254 +# define BOOST_PP_ITERATION_5 254 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 255 && BOOST_PP_ITERATION_FINISH_5 >= 255 +# define BOOST_PP_ITERATION_5 255 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_START_5 <= 256 && BOOST_PP_ITERATION_FINISH_5 >= 256 +# define BOOST_PP_ITERATION_5 256 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# endif +# +# undef BOOST_PP_ITERATION_DEPTH +# define BOOST_PP_ITERATION_DEPTH() 4 +# +# undef BOOST_PP_ITERATION_START_5 +# undef BOOST_PP_ITERATION_FINISH_5 +# undef BOOST_PP_FILENAME_5 +# +# undef BOOST_PP_ITERATION_FLAGS_5 +# undef BOOST_PP_ITERATION_PARAMS_5 diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp new file mode 100644 index 0000000..bf88d2f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse1.hpp @@ -0,0 +1,1296 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_ITERATION_FINISH_1 <= 256 && BOOST_PP_ITERATION_START_1 >= 256 +# define BOOST_PP_ITERATION_1 256 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 255 && BOOST_PP_ITERATION_START_1 >= 255 +# define BOOST_PP_ITERATION_1 255 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 254 && BOOST_PP_ITERATION_START_1 >= 254 +# define BOOST_PP_ITERATION_1 254 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 253 && BOOST_PP_ITERATION_START_1 >= 253 +# define BOOST_PP_ITERATION_1 253 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 252 && BOOST_PP_ITERATION_START_1 >= 252 +# define BOOST_PP_ITERATION_1 252 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 251 && BOOST_PP_ITERATION_START_1 >= 251 +# define BOOST_PP_ITERATION_1 251 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 250 && BOOST_PP_ITERATION_START_1 >= 250 +# define BOOST_PP_ITERATION_1 250 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 249 && BOOST_PP_ITERATION_START_1 >= 249 +# define BOOST_PP_ITERATION_1 249 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 248 && BOOST_PP_ITERATION_START_1 >= 248 +# define BOOST_PP_ITERATION_1 248 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 247 && BOOST_PP_ITERATION_START_1 >= 247 +# define BOOST_PP_ITERATION_1 247 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 246 && BOOST_PP_ITERATION_START_1 >= 246 +# define BOOST_PP_ITERATION_1 246 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 245 && BOOST_PP_ITERATION_START_1 >= 245 +# define BOOST_PP_ITERATION_1 245 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 244 && BOOST_PP_ITERATION_START_1 >= 244 +# define BOOST_PP_ITERATION_1 244 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 243 && BOOST_PP_ITERATION_START_1 >= 243 +# define BOOST_PP_ITERATION_1 243 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 242 && BOOST_PP_ITERATION_START_1 >= 242 +# define BOOST_PP_ITERATION_1 242 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 241 && BOOST_PP_ITERATION_START_1 >= 241 +# define BOOST_PP_ITERATION_1 241 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 240 && BOOST_PP_ITERATION_START_1 >= 240 +# define BOOST_PP_ITERATION_1 240 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 239 && BOOST_PP_ITERATION_START_1 >= 239 +# define BOOST_PP_ITERATION_1 239 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 238 && BOOST_PP_ITERATION_START_1 >= 238 +# define BOOST_PP_ITERATION_1 238 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 237 && BOOST_PP_ITERATION_START_1 >= 237 +# define BOOST_PP_ITERATION_1 237 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 236 && BOOST_PP_ITERATION_START_1 >= 236 +# define BOOST_PP_ITERATION_1 236 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 235 && BOOST_PP_ITERATION_START_1 >= 235 +# define BOOST_PP_ITERATION_1 235 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 234 && BOOST_PP_ITERATION_START_1 >= 234 +# define BOOST_PP_ITERATION_1 234 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 233 && BOOST_PP_ITERATION_START_1 >= 233 +# define BOOST_PP_ITERATION_1 233 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 232 && BOOST_PP_ITERATION_START_1 >= 232 +# define BOOST_PP_ITERATION_1 232 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 231 && BOOST_PP_ITERATION_START_1 >= 231 +# define BOOST_PP_ITERATION_1 231 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 230 && BOOST_PP_ITERATION_START_1 >= 230 +# define BOOST_PP_ITERATION_1 230 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 229 && BOOST_PP_ITERATION_START_1 >= 229 +# define BOOST_PP_ITERATION_1 229 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 228 && BOOST_PP_ITERATION_START_1 >= 228 +# define BOOST_PP_ITERATION_1 228 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 227 && BOOST_PP_ITERATION_START_1 >= 227 +# define BOOST_PP_ITERATION_1 227 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 226 && BOOST_PP_ITERATION_START_1 >= 226 +# define BOOST_PP_ITERATION_1 226 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 225 && BOOST_PP_ITERATION_START_1 >= 225 +# define BOOST_PP_ITERATION_1 225 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 224 && BOOST_PP_ITERATION_START_1 >= 224 +# define BOOST_PP_ITERATION_1 224 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 223 && BOOST_PP_ITERATION_START_1 >= 223 +# define BOOST_PP_ITERATION_1 223 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 222 && BOOST_PP_ITERATION_START_1 >= 222 +# define BOOST_PP_ITERATION_1 222 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 221 && BOOST_PP_ITERATION_START_1 >= 221 +# define BOOST_PP_ITERATION_1 221 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 220 && BOOST_PP_ITERATION_START_1 >= 220 +# define BOOST_PP_ITERATION_1 220 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 219 && BOOST_PP_ITERATION_START_1 >= 219 +# define BOOST_PP_ITERATION_1 219 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 218 && BOOST_PP_ITERATION_START_1 >= 218 +# define BOOST_PP_ITERATION_1 218 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 217 && BOOST_PP_ITERATION_START_1 >= 217 +# define BOOST_PP_ITERATION_1 217 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 216 && BOOST_PP_ITERATION_START_1 >= 216 +# define BOOST_PP_ITERATION_1 216 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 215 && BOOST_PP_ITERATION_START_1 >= 215 +# define BOOST_PP_ITERATION_1 215 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 214 && BOOST_PP_ITERATION_START_1 >= 214 +# define BOOST_PP_ITERATION_1 214 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 213 && BOOST_PP_ITERATION_START_1 >= 213 +# define BOOST_PP_ITERATION_1 213 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 212 && BOOST_PP_ITERATION_START_1 >= 212 +# define BOOST_PP_ITERATION_1 212 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 211 && BOOST_PP_ITERATION_START_1 >= 211 +# define BOOST_PP_ITERATION_1 211 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 210 && BOOST_PP_ITERATION_START_1 >= 210 +# define BOOST_PP_ITERATION_1 210 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 209 && BOOST_PP_ITERATION_START_1 >= 209 +# define BOOST_PP_ITERATION_1 209 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 208 && BOOST_PP_ITERATION_START_1 >= 208 +# define BOOST_PP_ITERATION_1 208 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 207 && BOOST_PP_ITERATION_START_1 >= 207 +# define BOOST_PP_ITERATION_1 207 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 206 && BOOST_PP_ITERATION_START_1 >= 206 +# define BOOST_PP_ITERATION_1 206 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 205 && BOOST_PP_ITERATION_START_1 >= 205 +# define BOOST_PP_ITERATION_1 205 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 204 && BOOST_PP_ITERATION_START_1 >= 204 +# define BOOST_PP_ITERATION_1 204 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 203 && BOOST_PP_ITERATION_START_1 >= 203 +# define BOOST_PP_ITERATION_1 203 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 202 && BOOST_PP_ITERATION_START_1 >= 202 +# define BOOST_PP_ITERATION_1 202 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 201 && BOOST_PP_ITERATION_START_1 >= 201 +# define BOOST_PP_ITERATION_1 201 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 200 && BOOST_PP_ITERATION_START_1 >= 200 +# define BOOST_PP_ITERATION_1 200 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 199 && BOOST_PP_ITERATION_START_1 >= 199 +# define BOOST_PP_ITERATION_1 199 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 198 && BOOST_PP_ITERATION_START_1 >= 198 +# define BOOST_PP_ITERATION_1 198 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 197 && BOOST_PP_ITERATION_START_1 >= 197 +# define BOOST_PP_ITERATION_1 197 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 196 && BOOST_PP_ITERATION_START_1 >= 196 +# define BOOST_PP_ITERATION_1 196 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 195 && BOOST_PP_ITERATION_START_1 >= 195 +# define BOOST_PP_ITERATION_1 195 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 194 && BOOST_PP_ITERATION_START_1 >= 194 +# define BOOST_PP_ITERATION_1 194 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 193 && BOOST_PP_ITERATION_START_1 >= 193 +# define BOOST_PP_ITERATION_1 193 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 192 && BOOST_PP_ITERATION_START_1 >= 192 +# define BOOST_PP_ITERATION_1 192 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 191 && BOOST_PP_ITERATION_START_1 >= 191 +# define BOOST_PP_ITERATION_1 191 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 190 && BOOST_PP_ITERATION_START_1 >= 190 +# define BOOST_PP_ITERATION_1 190 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 189 && BOOST_PP_ITERATION_START_1 >= 189 +# define BOOST_PP_ITERATION_1 189 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 188 && BOOST_PP_ITERATION_START_1 >= 188 +# define BOOST_PP_ITERATION_1 188 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 187 && BOOST_PP_ITERATION_START_1 >= 187 +# define BOOST_PP_ITERATION_1 187 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 186 && BOOST_PP_ITERATION_START_1 >= 186 +# define BOOST_PP_ITERATION_1 186 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 185 && BOOST_PP_ITERATION_START_1 >= 185 +# define BOOST_PP_ITERATION_1 185 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 184 && BOOST_PP_ITERATION_START_1 >= 184 +# define BOOST_PP_ITERATION_1 184 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 183 && BOOST_PP_ITERATION_START_1 >= 183 +# define BOOST_PP_ITERATION_1 183 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 182 && BOOST_PP_ITERATION_START_1 >= 182 +# define BOOST_PP_ITERATION_1 182 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 181 && BOOST_PP_ITERATION_START_1 >= 181 +# define BOOST_PP_ITERATION_1 181 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 180 && BOOST_PP_ITERATION_START_1 >= 180 +# define BOOST_PP_ITERATION_1 180 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 179 && BOOST_PP_ITERATION_START_1 >= 179 +# define BOOST_PP_ITERATION_1 179 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 178 && BOOST_PP_ITERATION_START_1 >= 178 +# define BOOST_PP_ITERATION_1 178 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 177 && BOOST_PP_ITERATION_START_1 >= 177 +# define BOOST_PP_ITERATION_1 177 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 176 && BOOST_PP_ITERATION_START_1 >= 176 +# define BOOST_PP_ITERATION_1 176 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 175 && BOOST_PP_ITERATION_START_1 >= 175 +# define BOOST_PP_ITERATION_1 175 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 174 && BOOST_PP_ITERATION_START_1 >= 174 +# define BOOST_PP_ITERATION_1 174 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 173 && BOOST_PP_ITERATION_START_1 >= 173 +# define BOOST_PP_ITERATION_1 173 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 172 && BOOST_PP_ITERATION_START_1 >= 172 +# define BOOST_PP_ITERATION_1 172 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 171 && BOOST_PP_ITERATION_START_1 >= 171 +# define BOOST_PP_ITERATION_1 171 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 170 && BOOST_PP_ITERATION_START_1 >= 170 +# define BOOST_PP_ITERATION_1 170 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 169 && BOOST_PP_ITERATION_START_1 >= 169 +# define BOOST_PP_ITERATION_1 169 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 168 && BOOST_PP_ITERATION_START_1 >= 168 +# define BOOST_PP_ITERATION_1 168 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 167 && BOOST_PP_ITERATION_START_1 >= 167 +# define BOOST_PP_ITERATION_1 167 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 166 && BOOST_PP_ITERATION_START_1 >= 166 +# define BOOST_PP_ITERATION_1 166 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 165 && BOOST_PP_ITERATION_START_1 >= 165 +# define BOOST_PP_ITERATION_1 165 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 164 && BOOST_PP_ITERATION_START_1 >= 164 +# define BOOST_PP_ITERATION_1 164 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 163 && BOOST_PP_ITERATION_START_1 >= 163 +# define BOOST_PP_ITERATION_1 163 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 162 && BOOST_PP_ITERATION_START_1 >= 162 +# define BOOST_PP_ITERATION_1 162 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 161 && BOOST_PP_ITERATION_START_1 >= 161 +# define BOOST_PP_ITERATION_1 161 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 160 && BOOST_PP_ITERATION_START_1 >= 160 +# define BOOST_PP_ITERATION_1 160 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 159 && BOOST_PP_ITERATION_START_1 >= 159 +# define BOOST_PP_ITERATION_1 159 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 158 && BOOST_PP_ITERATION_START_1 >= 158 +# define BOOST_PP_ITERATION_1 158 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 157 && BOOST_PP_ITERATION_START_1 >= 157 +# define BOOST_PP_ITERATION_1 157 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 156 && BOOST_PP_ITERATION_START_1 >= 156 +# define BOOST_PP_ITERATION_1 156 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 155 && BOOST_PP_ITERATION_START_1 >= 155 +# define BOOST_PP_ITERATION_1 155 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 154 && BOOST_PP_ITERATION_START_1 >= 154 +# define BOOST_PP_ITERATION_1 154 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 153 && BOOST_PP_ITERATION_START_1 >= 153 +# define BOOST_PP_ITERATION_1 153 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 152 && BOOST_PP_ITERATION_START_1 >= 152 +# define BOOST_PP_ITERATION_1 152 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 151 && BOOST_PP_ITERATION_START_1 >= 151 +# define BOOST_PP_ITERATION_1 151 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 150 && BOOST_PP_ITERATION_START_1 >= 150 +# define BOOST_PP_ITERATION_1 150 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 149 && BOOST_PP_ITERATION_START_1 >= 149 +# define BOOST_PP_ITERATION_1 149 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 148 && BOOST_PP_ITERATION_START_1 >= 148 +# define BOOST_PP_ITERATION_1 148 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 147 && BOOST_PP_ITERATION_START_1 >= 147 +# define BOOST_PP_ITERATION_1 147 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 146 && BOOST_PP_ITERATION_START_1 >= 146 +# define BOOST_PP_ITERATION_1 146 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 145 && BOOST_PP_ITERATION_START_1 >= 145 +# define BOOST_PP_ITERATION_1 145 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 144 && BOOST_PP_ITERATION_START_1 >= 144 +# define BOOST_PP_ITERATION_1 144 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 143 && BOOST_PP_ITERATION_START_1 >= 143 +# define BOOST_PP_ITERATION_1 143 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 142 && BOOST_PP_ITERATION_START_1 >= 142 +# define BOOST_PP_ITERATION_1 142 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 141 && BOOST_PP_ITERATION_START_1 >= 141 +# define BOOST_PP_ITERATION_1 141 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 140 && BOOST_PP_ITERATION_START_1 >= 140 +# define BOOST_PP_ITERATION_1 140 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 139 && BOOST_PP_ITERATION_START_1 >= 139 +# define BOOST_PP_ITERATION_1 139 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 138 && BOOST_PP_ITERATION_START_1 >= 138 +# define BOOST_PP_ITERATION_1 138 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 137 && BOOST_PP_ITERATION_START_1 >= 137 +# define BOOST_PP_ITERATION_1 137 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 136 && BOOST_PP_ITERATION_START_1 >= 136 +# define BOOST_PP_ITERATION_1 136 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 135 && BOOST_PP_ITERATION_START_1 >= 135 +# define BOOST_PP_ITERATION_1 135 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 134 && BOOST_PP_ITERATION_START_1 >= 134 +# define BOOST_PP_ITERATION_1 134 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 133 && BOOST_PP_ITERATION_START_1 >= 133 +# define BOOST_PP_ITERATION_1 133 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 132 && BOOST_PP_ITERATION_START_1 >= 132 +# define BOOST_PP_ITERATION_1 132 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 131 && BOOST_PP_ITERATION_START_1 >= 131 +# define BOOST_PP_ITERATION_1 131 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 130 && BOOST_PP_ITERATION_START_1 >= 130 +# define BOOST_PP_ITERATION_1 130 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 129 && BOOST_PP_ITERATION_START_1 >= 129 +# define BOOST_PP_ITERATION_1 129 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 128 && BOOST_PP_ITERATION_START_1 >= 128 +# define BOOST_PP_ITERATION_1 128 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 127 && BOOST_PP_ITERATION_START_1 >= 127 +# define BOOST_PP_ITERATION_1 127 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 126 && BOOST_PP_ITERATION_START_1 >= 126 +# define BOOST_PP_ITERATION_1 126 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 125 && BOOST_PP_ITERATION_START_1 >= 125 +# define BOOST_PP_ITERATION_1 125 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 124 && BOOST_PP_ITERATION_START_1 >= 124 +# define BOOST_PP_ITERATION_1 124 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 123 && BOOST_PP_ITERATION_START_1 >= 123 +# define BOOST_PP_ITERATION_1 123 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 122 && BOOST_PP_ITERATION_START_1 >= 122 +# define BOOST_PP_ITERATION_1 122 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 121 && BOOST_PP_ITERATION_START_1 >= 121 +# define BOOST_PP_ITERATION_1 121 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 120 && BOOST_PP_ITERATION_START_1 >= 120 +# define BOOST_PP_ITERATION_1 120 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 119 && BOOST_PP_ITERATION_START_1 >= 119 +# define BOOST_PP_ITERATION_1 119 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 118 && BOOST_PP_ITERATION_START_1 >= 118 +# define BOOST_PP_ITERATION_1 118 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 117 && BOOST_PP_ITERATION_START_1 >= 117 +# define BOOST_PP_ITERATION_1 117 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 116 && BOOST_PP_ITERATION_START_1 >= 116 +# define BOOST_PP_ITERATION_1 116 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 115 && BOOST_PP_ITERATION_START_1 >= 115 +# define BOOST_PP_ITERATION_1 115 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 114 && BOOST_PP_ITERATION_START_1 >= 114 +# define BOOST_PP_ITERATION_1 114 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 113 && BOOST_PP_ITERATION_START_1 >= 113 +# define BOOST_PP_ITERATION_1 113 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 112 && BOOST_PP_ITERATION_START_1 >= 112 +# define BOOST_PP_ITERATION_1 112 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 111 && BOOST_PP_ITERATION_START_1 >= 111 +# define BOOST_PP_ITERATION_1 111 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 110 && BOOST_PP_ITERATION_START_1 >= 110 +# define BOOST_PP_ITERATION_1 110 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 109 && BOOST_PP_ITERATION_START_1 >= 109 +# define BOOST_PP_ITERATION_1 109 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 108 && BOOST_PP_ITERATION_START_1 >= 108 +# define BOOST_PP_ITERATION_1 108 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 107 && BOOST_PP_ITERATION_START_1 >= 107 +# define BOOST_PP_ITERATION_1 107 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 106 && BOOST_PP_ITERATION_START_1 >= 106 +# define BOOST_PP_ITERATION_1 106 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 105 && BOOST_PP_ITERATION_START_1 >= 105 +# define BOOST_PP_ITERATION_1 105 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 104 && BOOST_PP_ITERATION_START_1 >= 104 +# define BOOST_PP_ITERATION_1 104 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 103 && BOOST_PP_ITERATION_START_1 >= 103 +# define BOOST_PP_ITERATION_1 103 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 102 && BOOST_PP_ITERATION_START_1 >= 102 +# define BOOST_PP_ITERATION_1 102 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 101 && BOOST_PP_ITERATION_START_1 >= 101 +# define BOOST_PP_ITERATION_1 101 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 100 && BOOST_PP_ITERATION_START_1 >= 100 +# define BOOST_PP_ITERATION_1 100 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 99 && BOOST_PP_ITERATION_START_1 >= 99 +# define BOOST_PP_ITERATION_1 99 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 98 && BOOST_PP_ITERATION_START_1 >= 98 +# define BOOST_PP_ITERATION_1 98 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 97 && BOOST_PP_ITERATION_START_1 >= 97 +# define BOOST_PP_ITERATION_1 97 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 96 && BOOST_PP_ITERATION_START_1 >= 96 +# define BOOST_PP_ITERATION_1 96 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 95 && BOOST_PP_ITERATION_START_1 >= 95 +# define BOOST_PP_ITERATION_1 95 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 94 && BOOST_PP_ITERATION_START_1 >= 94 +# define BOOST_PP_ITERATION_1 94 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 93 && BOOST_PP_ITERATION_START_1 >= 93 +# define BOOST_PP_ITERATION_1 93 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 92 && BOOST_PP_ITERATION_START_1 >= 92 +# define BOOST_PP_ITERATION_1 92 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 91 && BOOST_PP_ITERATION_START_1 >= 91 +# define BOOST_PP_ITERATION_1 91 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 90 && BOOST_PP_ITERATION_START_1 >= 90 +# define BOOST_PP_ITERATION_1 90 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 89 && BOOST_PP_ITERATION_START_1 >= 89 +# define BOOST_PP_ITERATION_1 89 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 88 && BOOST_PP_ITERATION_START_1 >= 88 +# define BOOST_PP_ITERATION_1 88 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 87 && BOOST_PP_ITERATION_START_1 >= 87 +# define BOOST_PP_ITERATION_1 87 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 86 && BOOST_PP_ITERATION_START_1 >= 86 +# define BOOST_PP_ITERATION_1 86 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 85 && BOOST_PP_ITERATION_START_1 >= 85 +# define BOOST_PP_ITERATION_1 85 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 84 && BOOST_PP_ITERATION_START_1 >= 84 +# define BOOST_PP_ITERATION_1 84 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 83 && BOOST_PP_ITERATION_START_1 >= 83 +# define BOOST_PP_ITERATION_1 83 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 82 && BOOST_PP_ITERATION_START_1 >= 82 +# define BOOST_PP_ITERATION_1 82 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 81 && BOOST_PP_ITERATION_START_1 >= 81 +# define BOOST_PP_ITERATION_1 81 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 80 && BOOST_PP_ITERATION_START_1 >= 80 +# define BOOST_PP_ITERATION_1 80 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 79 && BOOST_PP_ITERATION_START_1 >= 79 +# define BOOST_PP_ITERATION_1 79 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 78 && BOOST_PP_ITERATION_START_1 >= 78 +# define BOOST_PP_ITERATION_1 78 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 77 && BOOST_PP_ITERATION_START_1 >= 77 +# define BOOST_PP_ITERATION_1 77 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 76 && BOOST_PP_ITERATION_START_1 >= 76 +# define BOOST_PP_ITERATION_1 76 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 75 && BOOST_PP_ITERATION_START_1 >= 75 +# define BOOST_PP_ITERATION_1 75 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 74 && BOOST_PP_ITERATION_START_1 >= 74 +# define BOOST_PP_ITERATION_1 74 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 73 && BOOST_PP_ITERATION_START_1 >= 73 +# define BOOST_PP_ITERATION_1 73 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 72 && BOOST_PP_ITERATION_START_1 >= 72 +# define BOOST_PP_ITERATION_1 72 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 71 && BOOST_PP_ITERATION_START_1 >= 71 +# define BOOST_PP_ITERATION_1 71 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 70 && BOOST_PP_ITERATION_START_1 >= 70 +# define BOOST_PP_ITERATION_1 70 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 69 && BOOST_PP_ITERATION_START_1 >= 69 +# define BOOST_PP_ITERATION_1 69 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 68 && BOOST_PP_ITERATION_START_1 >= 68 +# define BOOST_PP_ITERATION_1 68 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 67 && BOOST_PP_ITERATION_START_1 >= 67 +# define BOOST_PP_ITERATION_1 67 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 66 && BOOST_PP_ITERATION_START_1 >= 66 +# define BOOST_PP_ITERATION_1 66 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 65 && BOOST_PP_ITERATION_START_1 >= 65 +# define BOOST_PP_ITERATION_1 65 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 64 && BOOST_PP_ITERATION_START_1 >= 64 +# define BOOST_PP_ITERATION_1 64 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 63 && BOOST_PP_ITERATION_START_1 >= 63 +# define BOOST_PP_ITERATION_1 63 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 62 && BOOST_PP_ITERATION_START_1 >= 62 +# define BOOST_PP_ITERATION_1 62 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 61 && BOOST_PP_ITERATION_START_1 >= 61 +# define BOOST_PP_ITERATION_1 61 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 60 && BOOST_PP_ITERATION_START_1 >= 60 +# define BOOST_PP_ITERATION_1 60 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 59 && BOOST_PP_ITERATION_START_1 >= 59 +# define BOOST_PP_ITERATION_1 59 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 58 && BOOST_PP_ITERATION_START_1 >= 58 +# define BOOST_PP_ITERATION_1 58 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 57 && BOOST_PP_ITERATION_START_1 >= 57 +# define BOOST_PP_ITERATION_1 57 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 56 && BOOST_PP_ITERATION_START_1 >= 56 +# define BOOST_PP_ITERATION_1 56 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 55 && BOOST_PP_ITERATION_START_1 >= 55 +# define BOOST_PP_ITERATION_1 55 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 54 && BOOST_PP_ITERATION_START_1 >= 54 +# define BOOST_PP_ITERATION_1 54 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 53 && BOOST_PP_ITERATION_START_1 >= 53 +# define BOOST_PP_ITERATION_1 53 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 52 && BOOST_PP_ITERATION_START_1 >= 52 +# define BOOST_PP_ITERATION_1 52 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 51 && BOOST_PP_ITERATION_START_1 >= 51 +# define BOOST_PP_ITERATION_1 51 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 50 && BOOST_PP_ITERATION_START_1 >= 50 +# define BOOST_PP_ITERATION_1 50 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 49 && BOOST_PP_ITERATION_START_1 >= 49 +# define BOOST_PP_ITERATION_1 49 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 48 && BOOST_PP_ITERATION_START_1 >= 48 +# define BOOST_PP_ITERATION_1 48 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 47 && BOOST_PP_ITERATION_START_1 >= 47 +# define BOOST_PP_ITERATION_1 47 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 46 && BOOST_PP_ITERATION_START_1 >= 46 +# define BOOST_PP_ITERATION_1 46 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 45 && BOOST_PP_ITERATION_START_1 >= 45 +# define BOOST_PP_ITERATION_1 45 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 44 && BOOST_PP_ITERATION_START_1 >= 44 +# define BOOST_PP_ITERATION_1 44 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 43 && BOOST_PP_ITERATION_START_1 >= 43 +# define BOOST_PP_ITERATION_1 43 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 42 && BOOST_PP_ITERATION_START_1 >= 42 +# define BOOST_PP_ITERATION_1 42 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 41 && BOOST_PP_ITERATION_START_1 >= 41 +# define BOOST_PP_ITERATION_1 41 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 40 && BOOST_PP_ITERATION_START_1 >= 40 +# define BOOST_PP_ITERATION_1 40 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 39 && BOOST_PP_ITERATION_START_1 >= 39 +# define BOOST_PP_ITERATION_1 39 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 38 && BOOST_PP_ITERATION_START_1 >= 38 +# define BOOST_PP_ITERATION_1 38 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 37 && BOOST_PP_ITERATION_START_1 >= 37 +# define BOOST_PP_ITERATION_1 37 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 36 && BOOST_PP_ITERATION_START_1 >= 36 +# define BOOST_PP_ITERATION_1 36 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 35 && BOOST_PP_ITERATION_START_1 >= 35 +# define BOOST_PP_ITERATION_1 35 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 34 && BOOST_PP_ITERATION_START_1 >= 34 +# define BOOST_PP_ITERATION_1 34 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 33 && BOOST_PP_ITERATION_START_1 >= 33 +# define BOOST_PP_ITERATION_1 33 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 32 && BOOST_PP_ITERATION_START_1 >= 32 +# define BOOST_PP_ITERATION_1 32 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 31 && BOOST_PP_ITERATION_START_1 >= 31 +# define BOOST_PP_ITERATION_1 31 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 30 && BOOST_PP_ITERATION_START_1 >= 30 +# define BOOST_PP_ITERATION_1 30 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 29 && BOOST_PP_ITERATION_START_1 >= 29 +# define BOOST_PP_ITERATION_1 29 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 28 && BOOST_PP_ITERATION_START_1 >= 28 +# define BOOST_PP_ITERATION_1 28 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 27 && BOOST_PP_ITERATION_START_1 >= 27 +# define BOOST_PP_ITERATION_1 27 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 26 && BOOST_PP_ITERATION_START_1 >= 26 +# define BOOST_PP_ITERATION_1 26 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 25 && BOOST_PP_ITERATION_START_1 >= 25 +# define BOOST_PP_ITERATION_1 25 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 24 && BOOST_PP_ITERATION_START_1 >= 24 +# define BOOST_PP_ITERATION_1 24 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 23 && BOOST_PP_ITERATION_START_1 >= 23 +# define BOOST_PP_ITERATION_1 23 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 22 && BOOST_PP_ITERATION_START_1 >= 22 +# define BOOST_PP_ITERATION_1 22 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 21 && BOOST_PP_ITERATION_START_1 >= 21 +# define BOOST_PP_ITERATION_1 21 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 20 && BOOST_PP_ITERATION_START_1 >= 20 +# define BOOST_PP_ITERATION_1 20 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 19 && BOOST_PP_ITERATION_START_1 >= 19 +# define BOOST_PP_ITERATION_1 19 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 18 && BOOST_PP_ITERATION_START_1 >= 18 +# define BOOST_PP_ITERATION_1 18 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 17 && BOOST_PP_ITERATION_START_1 >= 17 +# define BOOST_PP_ITERATION_1 17 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 16 && BOOST_PP_ITERATION_START_1 >= 16 +# define BOOST_PP_ITERATION_1 16 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 15 && BOOST_PP_ITERATION_START_1 >= 15 +# define BOOST_PP_ITERATION_1 15 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 14 && BOOST_PP_ITERATION_START_1 >= 14 +# define BOOST_PP_ITERATION_1 14 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 13 && BOOST_PP_ITERATION_START_1 >= 13 +# define BOOST_PP_ITERATION_1 13 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 12 && BOOST_PP_ITERATION_START_1 >= 12 +# define BOOST_PP_ITERATION_1 12 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 11 && BOOST_PP_ITERATION_START_1 >= 11 +# define BOOST_PP_ITERATION_1 11 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 10 && BOOST_PP_ITERATION_START_1 >= 10 +# define BOOST_PP_ITERATION_1 10 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 9 && BOOST_PP_ITERATION_START_1 >= 9 +# define BOOST_PP_ITERATION_1 9 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 8 && BOOST_PP_ITERATION_START_1 >= 8 +# define BOOST_PP_ITERATION_1 8 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 7 && BOOST_PP_ITERATION_START_1 >= 7 +# define BOOST_PP_ITERATION_1 7 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 6 && BOOST_PP_ITERATION_START_1 >= 6 +# define BOOST_PP_ITERATION_1 6 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 5 && BOOST_PP_ITERATION_START_1 >= 5 +# define BOOST_PP_ITERATION_1 5 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 4 && BOOST_PP_ITERATION_START_1 >= 4 +# define BOOST_PP_ITERATION_1 4 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 3 && BOOST_PP_ITERATION_START_1 >= 3 +# define BOOST_PP_ITERATION_1 3 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 2 && BOOST_PP_ITERATION_START_1 >= 2 +# define BOOST_PP_ITERATION_1 2 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 1 && BOOST_PP_ITERATION_START_1 >= 1 +# define BOOST_PP_ITERATION_1 1 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif +# if BOOST_PP_ITERATION_FINISH_1 <= 0 && BOOST_PP_ITERATION_START_1 >= 0 +# define BOOST_PP_ITERATION_1 0 +# include BOOST_PP_FILENAME_1 +# undef BOOST_PP_ITERATION_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp new file mode 100644 index 0000000..521bd24 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse2.hpp @@ -0,0 +1,1296 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_ITERATION_FINISH_2 <= 256 && BOOST_PP_ITERATION_START_2 >= 256 +# define BOOST_PP_ITERATION_2 256 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 255 && BOOST_PP_ITERATION_START_2 >= 255 +# define BOOST_PP_ITERATION_2 255 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 254 && BOOST_PP_ITERATION_START_2 >= 254 +# define BOOST_PP_ITERATION_2 254 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 253 && BOOST_PP_ITERATION_START_2 >= 253 +# define BOOST_PP_ITERATION_2 253 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 252 && BOOST_PP_ITERATION_START_2 >= 252 +# define BOOST_PP_ITERATION_2 252 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 251 && BOOST_PP_ITERATION_START_2 >= 251 +# define BOOST_PP_ITERATION_2 251 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 250 && BOOST_PP_ITERATION_START_2 >= 250 +# define BOOST_PP_ITERATION_2 250 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 249 && BOOST_PP_ITERATION_START_2 >= 249 +# define BOOST_PP_ITERATION_2 249 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 248 && BOOST_PP_ITERATION_START_2 >= 248 +# define BOOST_PP_ITERATION_2 248 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 247 && BOOST_PP_ITERATION_START_2 >= 247 +# define BOOST_PP_ITERATION_2 247 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 246 && BOOST_PP_ITERATION_START_2 >= 246 +# define BOOST_PP_ITERATION_2 246 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 245 && BOOST_PP_ITERATION_START_2 >= 245 +# define BOOST_PP_ITERATION_2 245 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 244 && BOOST_PP_ITERATION_START_2 >= 244 +# define BOOST_PP_ITERATION_2 244 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 243 && BOOST_PP_ITERATION_START_2 >= 243 +# define BOOST_PP_ITERATION_2 243 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 242 && BOOST_PP_ITERATION_START_2 >= 242 +# define BOOST_PP_ITERATION_2 242 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 241 && BOOST_PP_ITERATION_START_2 >= 241 +# define BOOST_PP_ITERATION_2 241 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 240 && BOOST_PP_ITERATION_START_2 >= 240 +# define BOOST_PP_ITERATION_2 240 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 239 && BOOST_PP_ITERATION_START_2 >= 239 +# define BOOST_PP_ITERATION_2 239 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 238 && BOOST_PP_ITERATION_START_2 >= 238 +# define BOOST_PP_ITERATION_2 238 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 237 && BOOST_PP_ITERATION_START_2 >= 237 +# define BOOST_PP_ITERATION_2 237 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 236 && BOOST_PP_ITERATION_START_2 >= 236 +# define BOOST_PP_ITERATION_2 236 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 235 && BOOST_PP_ITERATION_START_2 >= 235 +# define BOOST_PP_ITERATION_2 235 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 234 && BOOST_PP_ITERATION_START_2 >= 234 +# define BOOST_PP_ITERATION_2 234 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 233 && BOOST_PP_ITERATION_START_2 >= 233 +# define BOOST_PP_ITERATION_2 233 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 232 && BOOST_PP_ITERATION_START_2 >= 232 +# define BOOST_PP_ITERATION_2 232 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 231 && BOOST_PP_ITERATION_START_2 >= 231 +# define BOOST_PP_ITERATION_2 231 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 230 && BOOST_PP_ITERATION_START_2 >= 230 +# define BOOST_PP_ITERATION_2 230 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 229 && BOOST_PP_ITERATION_START_2 >= 229 +# define BOOST_PP_ITERATION_2 229 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 228 && BOOST_PP_ITERATION_START_2 >= 228 +# define BOOST_PP_ITERATION_2 228 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 227 && BOOST_PP_ITERATION_START_2 >= 227 +# define BOOST_PP_ITERATION_2 227 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 226 && BOOST_PP_ITERATION_START_2 >= 226 +# define BOOST_PP_ITERATION_2 226 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 225 && BOOST_PP_ITERATION_START_2 >= 225 +# define BOOST_PP_ITERATION_2 225 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 224 && BOOST_PP_ITERATION_START_2 >= 224 +# define BOOST_PP_ITERATION_2 224 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 223 && BOOST_PP_ITERATION_START_2 >= 223 +# define BOOST_PP_ITERATION_2 223 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 222 && BOOST_PP_ITERATION_START_2 >= 222 +# define BOOST_PP_ITERATION_2 222 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 221 && BOOST_PP_ITERATION_START_2 >= 221 +# define BOOST_PP_ITERATION_2 221 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 220 && BOOST_PP_ITERATION_START_2 >= 220 +# define BOOST_PP_ITERATION_2 220 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 219 && BOOST_PP_ITERATION_START_2 >= 219 +# define BOOST_PP_ITERATION_2 219 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 218 && BOOST_PP_ITERATION_START_2 >= 218 +# define BOOST_PP_ITERATION_2 218 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 217 && BOOST_PP_ITERATION_START_2 >= 217 +# define BOOST_PP_ITERATION_2 217 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 216 && BOOST_PP_ITERATION_START_2 >= 216 +# define BOOST_PP_ITERATION_2 216 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 215 && BOOST_PP_ITERATION_START_2 >= 215 +# define BOOST_PP_ITERATION_2 215 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 214 && BOOST_PP_ITERATION_START_2 >= 214 +# define BOOST_PP_ITERATION_2 214 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 213 && BOOST_PP_ITERATION_START_2 >= 213 +# define BOOST_PP_ITERATION_2 213 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 212 && BOOST_PP_ITERATION_START_2 >= 212 +# define BOOST_PP_ITERATION_2 212 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 211 && BOOST_PP_ITERATION_START_2 >= 211 +# define BOOST_PP_ITERATION_2 211 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 210 && BOOST_PP_ITERATION_START_2 >= 210 +# define BOOST_PP_ITERATION_2 210 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 209 && BOOST_PP_ITERATION_START_2 >= 209 +# define BOOST_PP_ITERATION_2 209 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 208 && BOOST_PP_ITERATION_START_2 >= 208 +# define BOOST_PP_ITERATION_2 208 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 207 && BOOST_PP_ITERATION_START_2 >= 207 +# define BOOST_PP_ITERATION_2 207 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 206 && BOOST_PP_ITERATION_START_2 >= 206 +# define BOOST_PP_ITERATION_2 206 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 205 && BOOST_PP_ITERATION_START_2 >= 205 +# define BOOST_PP_ITERATION_2 205 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 204 && BOOST_PP_ITERATION_START_2 >= 204 +# define BOOST_PP_ITERATION_2 204 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 203 && BOOST_PP_ITERATION_START_2 >= 203 +# define BOOST_PP_ITERATION_2 203 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 202 && BOOST_PP_ITERATION_START_2 >= 202 +# define BOOST_PP_ITERATION_2 202 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 201 && BOOST_PP_ITERATION_START_2 >= 201 +# define BOOST_PP_ITERATION_2 201 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 200 && BOOST_PP_ITERATION_START_2 >= 200 +# define BOOST_PP_ITERATION_2 200 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 199 && BOOST_PP_ITERATION_START_2 >= 199 +# define BOOST_PP_ITERATION_2 199 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 198 && BOOST_PP_ITERATION_START_2 >= 198 +# define BOOST_PP_ITERATION_2 198 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 197 && BOOST_PP_ITERATION_START_2 >= 197 +# define BOOST_PP_ITERATION_2 197 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 196 && BOOST_PP_ITERATION_START_2 >= 196 +# define BOOST_PP_ITERATION_2 196 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 195 && BOOST_PP_ITERATION_START_2 >= 195 +# define BOOST_PP_ITERATION_2 195 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 194 && BOOST_PP_ITERATION_START_2 >= 194 +# define BOOST_PP_ITERATION_2 194 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 193 && BOOST_PP_ITERATION_START_2 >= 193 +# define BOOST_PP_ITERATION_2 193 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 192 && BOOST_PP_ITERATION_START_2 >= 192 +# define BOOST_PP_ITERATION_2 192 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 191 && BOOST_PP_ITERATION_START_2 >= 191 +# define BOOST_PP_ITERATION_2 191 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 190 && BOOST_PP_ITERATION_START_2 >= 190 +# define BOOST_PP_ITERATION_2 190 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 189 && BOOST_PP_ITERATION_START_2 >= 189 +# define BOOST_PP_ITERATION_2 189 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 188 && BOOST_PP_ITERATION_START_2 >= 188 +# define BOOST_PP_ITERATION_2 188 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 187 && BOOST_PP_ITERATION_START_2 >= 187 +# define BOOST_PP_ITERATION_2 187 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 186 && BOOST_PP_ITERATION_START_2 >= 186 +# define BOOST_PP_ITERATION_2 186 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 185 && BOOST_PP_ITERATION_START_2 >= 185 +# define BOOST_PP_ITERATION_2 185 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 184 && BOOST_PP_ITERATION_START_2 >= 184 +# define BOOST_PP_ITERATION_2 184 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 183 && BOOST_PP_ITERATION_START_2 >= 183 +# define BOOST_PP_ITERATION_2 183 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 182 && BOOST_PP_ITERATION_START_2 >= 182 +# define BOOST_PP_ITERATION_2 182 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 181 && BOOST_PP_ITERATION_START_2 >= 181 +# define BOOST_PP_ITERATION_2 181 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 180 && BOOST_PP_ITERATION_START_2 >= 180 +# define BOOST_PP_ITERATION_2 180 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 179 && BOOST_PP_ITERATION_START_2 >= 179 +# define BOOST_PP_ITERATION_2 179 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 178 && BOOST_PP_ITERATION_START_2 >= 178 +# define BOOST_PP_ITERATION_2 178 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 177 && BOOST_PP_ITERATION_START_2 >= 177 +# define BOOST_PP_ITERATION_2 177 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 176 && BOOST_PP_ITERATION_START_2 >= 176 +# define BOOST_PP_ITERATION_2 176 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 175 && BOOST_PP_ITERATION_START_2 >= 175 +# define BOOST_PP_ITERATION_2 175 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 174 && BOOST_PP_ITERATION_START_2 >= 174 +# define BOOST_PP_ITERATION_2 174 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 173 && BOOST_PP_ITERATION_START_2 >= 173 +# define BOOST_PP_ITERATION_2 173 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 172 && BOOST_PP_ITERATION_START_2 >= 172 +# define BOOST_PP_ITERATION_2 172 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 171 && BOOST_PP_ITERATION_START_2 >= 171 +# define BOOST_PP_ITERATION_2 171 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 170 && BOOST_PP_ITERATION_START_2 >= 170 +# define BOOST_PP_ITERATION_2 170 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 169 && BOOST_PP_ITERATION_START_2 >= 169 +# define BOOST_PP_ITERATION_2 169 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 168 && BOOST_PP_ITERATION_START_2 >= 168 +# define BOOST_PP_ITERATION_2 168 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 167 && BOOST_PP_ITERATION_START_2 >= 167 +# define BOOST_PP_ITERATION_2 167 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 166 && BOOST_PP_ITERATION_START_2 >= 166 +# define BOOST_PP_ITERATION_2 166 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 165 && BOOST_PP_ITERATION_START_2 >= 165 +# define BOOST_PP_ITERATION_2 165 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 164 && BOOST_PP_ITERATION_START_2 >= 164 +# define BOOST_PP_ITERATION_2 164 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 163 && BOOST_PP_ITERATION_START_2 >= 163 +# define BOOST_PP_ITERATION_2 163 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 162 && BOOST_PP_ITERATION_START_2 >= 162 +# define BOOST_PP_ITERATION_2 162 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 161 && BOOST_PP_ITERATION_START_2 >= 161 +# define BOOST_PP_ITERATION_2 161 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 160 && BOOST_PP_ITERATION_START_2 >= 160 +# define BOOST_PP_ITERATION_2 160 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 159 && BOOST_PP_ITERATION_START_2 >= 159 +# define BOOST_PP_ITERATION_2 159 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 158 && BOOST_PP_ITERATION_START_2 >= 158 +# define BOOST_PP_ITERATION_2 158 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 157 && BOOST_PP_ITERATION_START_2 >= 157 +# define BOOST_PP_ITERATION_2 157 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 156 && BOOST_PP_ITERATION_START_2 >= 156 +# define BOOST_PP_ITERATION_2 156 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 155 && BOOST_PP_ITERATION_START_2 >= 155 +# define BOOST_PP_ITERATION_2 155 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 154 && BOOST_PP_ITERATION_START_2 >= 154 +# define BOOST_PP_ITERATION_2 154 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 153 && BOOST_PP_ITERATION_START_2 >= 153 +# define BOOST_PP_ITERATION_2 153 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 152 && BOOST_PP_ITERATION_START_2 >= 152 +# define BOOST_PP_ITERATION_2 152 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 151 && BOOST_PP_ITERATION_START_2 >= 151 +# define BOOST_PP_ITERATION_2 151 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 150 && BOOST_PP_ITERATION_START_2 >= 150 +# define BOOST_PP_ITERATION_2 150 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 149 && BOOST_PP_ITERATION_START_2 >= 149 +# define BOOST_PP_ITERATION_2 149 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 148 && BOOST_PP_ITERATION_START_2 >= 148 +# define BOOST_PP_ITERATION_2 148 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 147 && BOOST_PP_ITERATION_START_2 >= 147 +# define BOOST_PP_ITERATION_2 147 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 146 && BOOST_PP_ITERATION_START_2 >= 146 +# define BOOST_PP_ITERATION_2 146 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 145 && BOOST_PP_ITERATION_START_2 >= 145 +# define BOOST_PP_ITERATION_2 145 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 144 && BOOST_PP_ITERATION_START_2 >= 144 +# define BOOST_PP_ITERATION_2 144 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 143 && BOOST_PP_ITERATION_START_2 >= 143 +# define BOOST_PP_ITERATION_2 143 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 142 && BOOST_PP_ITERATION_START_2 >= 142 +# define BOOST_PP_ITERATION_2 142 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 141 && BOOST_PP_ITERATION_START_2 >= 141 +# define BOOST_PP_ITERATION_2 141 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 140 && BOOST_PP_ITERATION_START_2 >= 140 +# define BOOST_PP_ITERATION_2 140 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 139 && BOOST_PP_ITERATION_START_2 >= 139 +# define BOOST_PP_ITERATION_2 139 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 138 && BOOST_PP_ITERATION_START_2 >= 138 +# define BOOST_PP_ITERATION_2 138 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 137 && BOOST_PP_ITERATION_START_2 >= 137 +# define BOOST_PP_ITERATION_2 137 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 136 && BOOST_PP_ITERATION_START_2 >= 136 +# define BOOST_PP_ITERATION_2 136 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 135 && BOOST_PP_ITERATION_START_2 >= 135 +# define BOOST_PP_ITERATION_2 135 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 134 && BOOST_PP_ITERATION_START_2 >= 134 +# define BOOST_PP_ITERATION_2 134 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 133 && BOOST_PP_ITERATION_START_2 >= 133 +# define BOOST_PP_ITERATION_2 133 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 132 && BOOST_PP_ITERATION_START_2 >= 132 +# define BOOST_PP_ITERATION_2 132 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 131 && BOOST_PP_ITERATION_START_2 >= 131 +# define BOOST_PP_ITERATION_2 131 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 130 && BOOST_PP_ITERATION_START_2 >= 130 +# define BOOST_PP_ITERATION_2 130 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 129 && BOOST_PP_ITERATION_START_2 >= 129 +# define BOOST_PP_ITERATION_2 129 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 128 && BOOST_PP_ITERATION_START_2 >= 128 +# define BOOST_PP_ITERATION_2 128 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 127 && BOOST_PP_ITERATION_START_2 >= 127 +# define BOOST_PP_ITERATION_2 127 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 126 && BOOST_PP_ITERATION_START_2 >= 126 +# define BOOST_PP_ITERATION_2 126 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 125 && BOOST_PP_ITERATION_START_2 >= 125 +# define BOOST_PP_ITERATION_2 125 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 124 && BOOST_PP_ITERATION_START_2 >= 124 +# define BOOST_PP_ITERATION_2 124 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 123 && BOOST_PP_ITERATION_START_2 >= 123 +# define BOOST_PP_ITERATION_2 123 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 122 && BOOST_PP_ITERATION_START_2 >= 122 +# define BOOST_PP_ITERATION_2 122 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 121 && BOOST_PP_ITERATION_START_2 >= 121 +# define BOOST_PP_ITERATION_2 121 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 120 && BOOST_PP_ITERATION_START_2 >= 120 +# define BOOST_PP_ITERATION_2 120 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 119 && BOOST_PP_ITERATION_START_2 >= 119 +# define BOOST_PP_ITERATION_2 119 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 118 && BOOST_PP_ITERATION_START_2 >= 118 +# define BOOST_PP_ITERATION_2 118 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 117 && BOOST_PP_ITERATION_START_2 >= 117 +# define BOOST_PP_ITERATION_2 117 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 116 && BOOST_PP_ITERATION_START_2 >= 116 +# define BOOST_PP_ITERATION_2 116 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 115 && BOOST_PP_ITERATION_START_2 >= 115 +# define BOOST_PP_ITERATION_2 115 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 114 && BOOST_PP_ITERATION_START_2 >= 114 +# define BOOST_PP_ITERATION_2 114 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 113 && BOOST_PP_ITERATION_START_2 >= 113 +# define BOOST_PP_ITERATION_2 113 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 112 && BOOST_PP_ITERATION_START_2 >= 112 +# define BOOST_PP_ITERATION_2 112 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 111 && BOOST_PP_ITERATION_START_2 >= 111 +# define BOOST_PP_ITERATION_2 111 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 110 && BOOST_PP_ITERATION_START_2 >= 110 +# define BOOST_PP_ITERATION_2 110 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 109 && BOOST_PP_ITERATION_START_2 >= 109 +# define BOOST_PP_ITERATION_2 109 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 108 && BOOST_PP_ITERATION_START_2 >= 108 +# define BOOST_PP_ITERATION_2 108 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 107 && BOOST_PP_ITERATION_START_2 >= 107 +# define BOOST_PP_ITERATION_2 107 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 106 && BOOST_PP_ITERATION_START_2 >= 106 +# define BOOST_PP_ITERATION_2 106 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 105 && BOOST_PP_ITERATION_START_2 >= 105 +# define BOOST_PP_ITERATION_2 105 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 104 && BOOST_PP_ITERATION_START_2 >= 104 +# define BOOST_PP_ITERATION_2 104 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 103 && BOOST_PP_ITERATION_START_2 >= 103 +# define BOOST_PP_ITERATION_2 103 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 102 && BOOST_PP_ITERATION_START_2 >= 102 +# define BOOST_PP_ITERATION_2 102 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 101 && BOOST_PP_ITERATION_START_2 >= 101 +# define BOOST_PP_ITERATION_2 101 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 100 && BOOST_PP_ITERATION_START_2 >= 100 +# define BOOST_PP_ITERATION_2 100 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 99 && BOOST_PP_ITERATION_START_2 >= 99 +# define BOOST_PP_ITERATION_2 99 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 98 && BOOST_PP_ITERATION_START_2 >= 98 +# define BOOST_PP_ITERATION_2 98 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 97 && BOOST_PP_ITERATION_START_2 >= 97 +# define BOOST_PP_ITERATION_2 97 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 96 && BOOST_PP_ITERATION_START_2 >= 96 +# define BOOST_PP_ITERATION_2 96 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 95 && BOOST_PP_ITERATION_START_2 >= 95 +# define BOOST_PP_ITERATION_2 95 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 94 && BOOST_PP_ITERATION_START_2 >= 94 +# define BOOST_PP_ITERATION_2 94 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 93 && BOOST_PP_ITERATION_START_2 >= 93 +# define BOOST_PP_ITERATION_2 93 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 92 && BOOST_PP_ITERATION_START_2 >= 92 +# define BOOST_PP_ITERATION_2 92 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 91 && BOOST_PP_ITERATION_START_2 >= 91 +# define BOOST_PP_ITERATION_2 91 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 90 && BOOST_PP_ITERATION_START_2 >= 90 +# define BOOST_PP_ITERATION_2 90 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 89 && BOOST_PP_ITERATION_START_2 >= 89 +# define BOOST_PP_ITERATION_2 89 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 88 && BOOST_PP_ITERATION_START_2 >= 88 +# define BOOST_PP_ITERATION_2 88 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 87 && BOOST_PP_ITERATION_START_2 >= 87 +# define BOOST_PP_ITERATION_2 87 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 86 && BOOST_PP_ITERATION_START_2 >= 86 +# define BOOST_PP_ITERATION_2 86 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 85 && BOOST_PP_ITERATION_START_2 >= 85 +# define BOOST_PP_ITERATION_2 85 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 84 && BOOST_PP_ITERATION_START_2 >= 84 +# define BOOST_PP_ITERATION_2 84 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 83 && BOOST_PP_ITERATION_START_2 >= 83 +# define BOOST_PP_ITERATION_2 83 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 82 && BOOST_PP_ITERATION_START_2 >= 82 +# define BOOST_PP_ITERATION_2 82 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 81 && BOOST_PP_ITERATION_START_2 >= 81 +# define BOOST_PP_ITERATION_2 81 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 80 && BOOST_PP_ITERATION_START_2 >= 80 +# define BOOST_PP_ITERATION_2 80 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 79 && BOOST_PP_ITERATION_START_2 >= 79 +# define BOOST_PP_ITERATION_2 79 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 78 && BOOST_PP_ITERATION_START_2 >= 78 +# define BOOST_PP_ITERATION_2 78 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 77 && BOOST_PP_ITERATION_START_2 >= 77 +# define BOOST_PP_ITERATION_2 77 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 76 && BOOST_PP_ITERATION_START_2 >= 76 +# define BOOST_PP_ITERATION_2 76 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 75 && BOOST_PP_ITERATION_START_2 >= 75 +# define BOOST_PP_ITERATION_2 75 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 74 && BOOST_PP_ITERATION_START_2 >= 74 +# define BOOST_PP_ITERATION_2 74 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 73 && BOOST_PP_ITERATION_START_2 >= 73 +# define BOOST_PP_ITERATION_2 73 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 72 && BOOST_PP_ITERATION_START_2 >= 72 +# define BOOST_PP_ITERATION_2 72 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 71 && BOOST_PP_ITERATION_START_2 >= 71 +# define BOOST_PP_ITERATION_2 71 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 70 && BOOST_PP_ITERATION_START_2 >= 70 +# define BOOST_PP_ITERATION_2 70 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 69 && BOOST_PP_ITERATION_START_2 >= 69 +# define BOOST_PP_ITERATION_2 69 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 68 && BOOST_PP_ITERATION_START_2 >= 68 +# define BOOST_PP_ITERATION_2 68 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 67 && BOOST_PP_ITERATION_START_2 >= 67 +# define BOOST_PP_ITERATION_2 67 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 66 && BOOST_PP_ITERATION_START_2 >= 66 +# define BOOST_PP_ITERATION_2 66 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 65 && BOOST_PP_ITERATION_START_2 >= 65 +# define BOOST_PP_ITERATION_2 65 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 64 && BOOST_PP_ITERATION_START_2 >= 64 +# define BOOST_PP_ITERATION_2 64 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 63 && BOOST_PP_ITERATION_START_2 >= 63 +# define BOOST_PP_ITERATION_2 63 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 62 && BOOST_PP_ITERATION_START_2 >= 62 +# define BOOST_PP_ITERATION_2 62 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 61 && BOOST_PP_ITERATION_START_2 >= 61 +# define BOOST_PP_ITERATION_2 61 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 60 && BOOST_PP_ITERATION_START_2 >= 60 +# define BOOST_PP_ITERATION_2 60 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 59 && BOOST_PP_ITERATION_START_2 >= 59 +# define BOOST_PP_ITERATION_2 59 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 58 && BOOST_PP_ITERATION_START_2 >= 58 +# define BOOST_PP_ITERATION_2 58 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 57 && BOOST_PP_ITERATION_START_2 >= 57 +# define BOOST_PP_ITERATION_2 57 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 56 && BOOST_PP_ITERATION_START_2 >= 56 +# define BOOST_PP_ITERATION_2 56 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 55 && BOOST_PP_ITERATION_START_2 >= 55 +# define BOOST_PP_ITERATION_2 55 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 54 && BOOST_PP_ITERATION_START_2 >= 54 +# define BOOST_PP_ITERATION_2 54 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 53 && BOOST_PP_ITERATION_START_2 >= 53 +# define BOOST_PP_ITERATION_2 53 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 52 && BOOST_PP_ITERATION_START_2 >= 52 +# define BOOST_PP_ITERATION_2 52 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 51 && BOOST_PP_ITERATION_START_2 >= 51 +# define BOOST_PP_ITERATION_2 51 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 50 && BOOST_PP_ITERATION_START_2 >= 50 +# define BOOST_PP_ITERATION_2 50 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 49 && BOOST_PP_ITERATION_START_2 >= 49 +# define BOOST_PP_ITERATION_2 49 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 48 && BOOST_PP_ITERATION_START_2 >= 48 +# define BOOST_PP_ITERATION_2 48 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 47 && BOOST_PP_ITERATION_START_2 >= 47 +# define BOOST_PP_ITERATION_2 47 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 46 && BOOST_PP_ITERATION_START_2 >= 46 +# define BOOST_PP_ITERATION_2 46 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 45 && BOOST_PP_ITERATION_START_2 >= 45 +# define BOOST_PP_ITERATION_2 45 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 44 && BOOST_PP_ITERATION_START_2 >= 44 +# define BOOST_PP_ITERATION_2 44 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 43 && BOOST_PP_ITERATION_START_2 >= 43 +# define BOOST_PP_ITERATION_2 43 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 42 && BOOST_PP_ITERATION_START_2 >= 42 +# define BOOST_PP_ITERATION_2 42 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 41 && BOOST_PP_ITERATION_START_2 >= 41 +# define BOOST_PP_ITERATION_2 41 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 40 && BOOST_PP_ITERATION_START_2 >= 40 +# define BOOST_PP_ITERATION_2 40 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 39 && BOOST_PP_ITERATION_START_2 >= 39 +# define BOOST_PP_ITERATION_2 39 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 38 && BOOST_PP_ITERATION_START_2 >= 38 +# define BOOST_PP_ITERATION_2 38 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 37 && BOOST_PP_ITERATION_START_2 >= 37 +# define BOOST_PP_ITERATION_2 37 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 36 && BOOST_PP_ITERATION_START_2 >= 36 +# define BOOST_PP_ITERATION_2 36 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 35 && BOOST_PP_ITERATION_START_2 >= 35 +# define BOOST_PP_ITERATION_2 35 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 34 && BOOST_PP_ITERATION_START_2 >= 34 +# define BOOST_PP_ITERATION_2 34 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 33 && BOOST_PP_ITERATION_START_2 >= 33 +# define BOOST_PP_ITERATION_2 33 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 32 && BOOST_PP_ITERATION_START_2 >= 32 +# define BOOST_PP_ITERATION_2 32 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 31 && BOOST_PP_ITERATION_START_2 >= 31 +# define BOOST_PP_ITERATION_2 31 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 30 && BOOST_PP_ITERATION_START_2 >= 30 +# define BOOST_PP_ITERATION_2 30 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 29 && BOOST_PP_ITERATION_START_2 >= 29 +# define BOOST_PP_ITERATION_2 29 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 28 && BOOST_PP_ITERATION_START_2 >= 28 +# define BOOST_PP_ITERATION_2 28 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 27 && BOOST_PP_ITERATION_START_2 >= 27 +# define BOOST_PP_ITERATION_2 27 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 26 && BOOST_PP_ITERATION_START_2 >= 26 +# define BOOST_PP_ITERATION_2 26 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 25 && BOOST_PP_ITERATION_START_2 >= 25 +# define BOOST_PP_ITERATION_2 25 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 24 && BOOST_PP_ITERATION_START_2 >= 24 +# define BOOST_PP_ITERATION_2 24 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 23 && BOOST_PP_ITERATION_START_2 >= 23 +# define BOOST_PP_ITERATION_2 23 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 22 && BOOST_PP_ITERATION_START_2 >= 22 +# define BOOST_PP_ITERATION_2 22 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 21 && BOOST_PP_ITERATION_START_2 >= 21 +# define BOOST_PP_ITERATION_2 21 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 20 && BOOST_PP_ITERATION_START_2 >= 20 +# define BOOST_PP_ITERATION_2 20 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 19 && BOOST_PP_ITERATION_START_2 >= 19 +# define BOOST_PP_ITERATION_2 19 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 18 && BOOST_PP_ITERATION_START_2 >= 18 +# define BOOST_PP_ITERATION_2 18 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 17 && BOOST_PP_ITERATION_START_2 >= 17 +# define BOOST_PP_ITERATION_2 17 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 16 && BOOST_PP_ITERATION_START_2 >= 16 +# define BOOST_PP_ITERATION_2 16 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 15 && BOOST_PP_ITERATION_START_2 >= 15 +# define BOOST_PP_ITERATION_2 15 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 14 && BOOST_PP_ITERATION_START_2 >= 14 +# define BOOST_PP_ITERATION_2 14 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 13 && BOOST_PP_ITERATION_START_2 >= 13 +# define BOOST_PP_ITERATION_2 13 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 12 && BOOST_PP_ITERATION_START_2 >= 12 +# define BOOST_PP_ITERATION_2 12 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 11 && BOOST_PP_ITERATION_START_2 >= 11 +# define BOOST_PP_ITERATION_2 11 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 10 && BOOST_PP_ITERATION_START_2 >= 10 +# define BOOST_PP_ITERATION_2 10 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 9 && BOOST_PP_ITERATION_START_2 >= 9 +# define BOOST_PP_ITERATION_2 9 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 8 && BOOST_PP_ITERATION_START_2 >= 8 +# define BOOST_PP_ITERATION_2 8 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 7 && BOOST_PP_ITERATION_START_2 >= 7 +# define BOOST_PP_ITERATION_2 7 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 6 && BOOST_PP_ITERATION_START_2 >= 6 +# define BOOST_PP_ITERATION_2 6 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 5 && BOOST_PP_ITERATION_START_2 >= 5 +# define BOOST_PP_ITERATION_2 5 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 4 && BOOST_PP_ITERATION_START_2 >= 4 +# define BOOST_PP_ITERATION_2 4 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 3 && BOOST_PP_ITERATION_START_2 >= 3 +# define BOOST_PP_ITERATION_2 3 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 2 && BOOST_PP_ITERATION_START_2 >= 2 +# define BOOST_PP_ITERATION_2 2 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 1 && BOOST_PP_ITERATION_START_2 >= 1 +# define BOOST_PP_ITERATION_2 1 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif +# if BOOST_PP_ITERATION_FINISH_2 <= 0 && BOOST_PP_ITERATION_START_2 >= 0 +# define BOOST_PP_ITERATION_2 0 +# include BOOST_PP_FILENAME_2 +# undef BOOST_PP_ITERATION_2 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp new file mode 100644 index 0000000..0a65514 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse3.hpp @@ -0,0 +1,1296 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_ITERATION_FINISH_3 <= 256 && BOOST_PP_ITERATION_START_3 >= 256 +# define BOOST_PP_ITERATION_3 256 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 255 && BOOST_PP_ITERATION_START_3 >= 255 +# define BOOST_PP_ITERATION_3 255 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 254 && BOOST_PP_ITERATION_START_3 >= 254 +# define BOOST_PP_ITERATION_3 254 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 253 && BOOST_PP_ITERATION_START_3 >= 253 +# define BOOST_PP_ITERATION_3 253 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 252 && BOOST_PP_ITERATION_START_3 >= 252 +# define BOOST_PP_ITERATION_3 252 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 251 && BOOST_PP_ITERATION_START_3 >= 251 +# define BOOST_PP_ITERATION_3 251 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 250 && BOOST_PP_ITERATION_START_3 >= 250 +# define BOOST_PP_ITERATION_3 250 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 249 && BOOST_PP_ITERATION_START_3 >= 249 +# define BOOST_PP_ITERATION_3 249 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 248 && BOOST_PP_ITERATION_START_3 >= 248 +# define BOOST_PP_ITERATION_3 248 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 247 && BOOST_PP_ITERATION_START_3 >= 247 +# define BOOST_PP_ITERATION_3 247 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 246 && BOOST_PP_ITERATION_START_3 >= 246 +# define BOOST_PP_ITERATION_3 246 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 245 && BOOST_PP_ITERATION_START_3 >= 245 +# define BOOST_PP_ITERATION_3 245 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 244 && BOOST_PP_ITERATION_START_3 >= 244 +# define BOOST_PP_ITERATION_3 244 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 243 && BOOST_PP_ITERATION_START_3 >= 243 +# define BOOST_PP_ITERATION_3 243 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 242 && BOOST_PP_ITERATION_START_3 >= 242 +# define BOOST_PP_ITERATION_3 242 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 241 && BOOST_PP_ITERATION_START_3 >= 241 +# define BOOST_PP_ITERATION_3 241 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 240 && BOOST_PP_ITERATION_START_3 >= 240 +# define BOOST_PP_ITERATION_3 240 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 239 && BOOST_PP_ITERATION_START_3 >= 239 +# define BOOST_PP_ITERATION_3 239 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 238 && BOOST_PP_ITERATION_START_3 >= 238 +# define BOOST_PP_ITERATION_3 238 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 237 && BOOST_PP_ITERATION_START_3 >= 237 +# define BOOST_PP_ITERATION_3 237 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 236 && BOOST_PP_ITERATION_START_3 >= 236 +# define BOOST_PP_ITERATION_3 236 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 235 && BOOST_PP_ITERATION_START_3 >= 235 +# define BOOST_PP_ITERATION_3 235 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 234 && BOOST_PP_ITERATION_START_3 >= 234 +# define BOOST_PP_ITERATION_3 234 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 233 && BOOST_PP_ITERATION_START_3 >= 233 +# define BOOST_PP_ITERATION_3 233 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 232 && BOOST_PP_ITERATION_START_3 >= 232 +# define BOOST_PP_ITERATION_3 232 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 231 && BOOST_PP_ITERATION_START_3 >= 231 +# define BOOST_PP_ITERATION_3 231 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 230 && BOOST_PP_ITERATION_START_3 >= 230 +# define BOOST_PP_ITERATION_3 230 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 229 && BOOST_PP_ITERATION_START_3 >= 229 +# define BOOST_PP_ITERATION_3 229 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 228 && BOOST_PP_ITERATION_START_3 >= 228 +# define BOOST_PP_ITERATION_3 228 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 227 && BOOST_PP_ITERATION_START_3 >= 227 +# define BOOST_PP_ITERATION_3 227 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 226 && BOOST_PP_ITERATION_START_3 >= 226 +# define BOOST_PP_ITERATION_3 226 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 225 && BOOST_PP_ITERATION_START_3 >= 225 +# define BOOST_PP_ITERATION_3 225 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 224 && BOOST_PP_ITERATION_START_3 >= 224 +# define BOOST_PP_ITERATION_3 224 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 223 && BOOST_PP_ITERATION_START_3 >= 223 +# define BOOST_PP_ITERATION_3 223 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 222 && BOOST_PP_ITERATION_START_3 >= 222 +# define BOOST_PP_ITERATION_3 222 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 221 && BOOST_PP_ITERATION_START_3 >= 221 +# define BOOST_PP_ITERATION_3 221 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 220 && BOOST_PP_ITERATION_START_3 >= 220 +# define BOOST_PP_ITERATION_3 220 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 219 && BOOST_PP_ITERATION_START_3 >= 219 +# define BOOST_PP_ITERATION_3 219 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 218 && BOOST_PP_ITERATION_START_3 >= 218 +# define BOOST_PP_ITERATION_3 218 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 217 && BOOST_PP_ITERATION_START_3 >= 217 +# define BOOST_PP_ITERATION_3 217 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 216 && BOOST_PP_ITERATION_START_3 >= 216 +# define BOOST_PP_ITERATION_3 216 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 215 && BOOST_PP_ITERATION_START_3 >= 215 +# define BOOST_PP_ITERATION_3 215 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 214 && BOOST_PP_ITERATION_START_3 >= 214 +# define BOOST_PP_ITERATION_3 214 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 213 && BOOST_PP_ITERATION_START_3 >= 213 +# define BOOST_PP_ITERATION_3 213 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 212 && BOOST_PP_ITERATION_START_3 >= 212 +# define BOOST_PP_ITERATION_3 212 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 211 && BOOST_PP_ITERATION_START_3 >= 211 +# define BOOST_PP_ITERATION_3 211 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 210 && BOOST_PP_ITERATION_START_3 >= 210 +# define BOOST_PP_ITERATION_3 210 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 209 && BOOST_PP_ITERATION_START_3 >= 209 +# define BOOST_PP_ITERATION_3 209 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 208 && BOOST_PP_ITERATION_START_3 >= 208 +# define BOOST_PP_ITERATION_3 208 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 207 && BOOST_PP_ITERATION_START_3 >= 207 +# define BOOST_PP_ITERATION_3 207 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 206 && BOOST_PP_ITERATION_START_3 >= 206 +# define BOOST_PP_ITERATION_3 206 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 205 && BOOST_PP_ITERATION_START_3 >= 205 +# define BOOST_PP_ITERATION_3 205 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 204 && BOOST_PP_ITERATION_START_3 >= 204 +# define BOOST_PP_ITERATION_3 204 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 203 && BOOST_PP_ITERATION_START_3 >= 203 +# define BOOST_PP_ITERATION_3 203 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 202 && BOOST_PP_ITERATION_START_3 >= 202 +# define BOOST_PP_ITERATION_3 202 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 201 && BOOST_PP_ITERATION_START_3 >= 201 +# define BOOST_PP_ITERATION_3 201 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 200 && BOOST_PP_ITERATION_START_3 >= 200 +# define BOOST_PP_ITERATION_3 200 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 199 && BOOST_PP_ITERATION_START_3 >= 199 +# define BOOST_PP_ITERATION_3 199 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 198 && BOOST_PP_ITERATION_START_3 >= 198 +# define BOOST_PP_ITERATION_3 198 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 197 && BOOST_PP_ITERATION_START_3 >= 197 +# define BOOST_PP_ITERATION_3 197 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 196 && BOOST_PP_ITERATION_START_3 >= 196 +# define BOOST_PP_ITERATION_3 196 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 195 && BOOST_PP_ITERATION_START_3 >= 195 +# define BOOST_PP_ITERATION_3 195 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 194 && BOOST_PP_ITERATION_START_3 >= 194 +# define BOOST_PP_ITERATION_3 194 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 193 && BOOST_PP_ITERATION_START_3 >= 193 +# define BOOST_PP_ITERATION_3 193 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 192 && BOOST_PP_ITERATION_START_3 >= 192 +# define BOOST_PP_ITERATION_3 192 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 191 && BOOST_PP_ITERATION_START_3 >= 191 +# define BOOST_PP_ITERATION_3 191 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 190 && BOOST_PP_ITERATION_START_3 >= 190 +# define BOOST_PP_ITERATION_3 190 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 189 && BOOST_PP_ITERATION_START_3 >= 189 +# define BOOST_PP_ITERATION_3 189 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 188 && BOOST_PP_ITERATION_START_3 >= 188 +# define BOOST_PP_ITERATION_3 188 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 187 && BOOST_PP_ITERATION_START_3 >= 187 +# define BOOST_PP_ITERATION_3 187 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 186 && BOOST_PP_ITERATION_START_3 >= 186 +# define BOOST_PP_ITERATION_3 186 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 185 && BOOST_PP_ITERATION_START_3 >= 185 +# define BOOST_PP_ITERATION_3 185 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 184 && BOOST_PP_ITERATION_START_3 >= 184 +# define BOOST_PP_ITERATION_3 184 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 183 && BOOST_PP_ITERATION_START_3 >= 183 +# define BOOST_PP_ITERATION_3 183 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 182 && BOOST_PP_ITERATION_START_3 >= 182 +# define BOOST_PP_ITERATION_3 182 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 181 && BOOST_PP_ITERATION_START_3 >= 181 +# define BOOST_PP_ITERATION_3 181 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 180 && BOOST_PP_ITERATION_START_3 >= 180 +# define BOOST_PP_ITERATION_3 180 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 179 && BOOST_PP_ITERATION_START_3 >= 179 +# define BOOST_PP_ITERATION_3 179 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 178 && BOOST_PP_ITERATION_START_3 >= 178 +# define BOOST_PP_ITERATION_3 178 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 177 && BOOST_PP_ITERATION_START_3 >= 177 +# define BOOST_PP_ITERATION_3 177 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 176 && BOOST_PP_ITERATION_START_3 >= 176 +# define BOOST_PP_ITERATION_3 176 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 175 && BOOST_PP_ITERATION_START_3 >= 175 +# define BOOST_PP_ITERATION_3 175 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 174 && BOOST_PP_ITERATION_START_3 >= 174 +# define BOOST_PP_ITERATION_3 174 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 173 && BOOST_PP_ITERATION_START_3 >= 173 +# define BOOST_PP_ITERATION_3 173 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 172 && BOOST_PP_ITERATION_START_3 >= 172 +# define BOOST_PP_ITERATION_3 172 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 171 && BOOST_PP_ITERATION_START_3 >= 171 +# define BOOST_PP_ITERATION_3 171 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 170 && BOOST_PP_ITERATION_START_3 >= 170 +# define BOOST_PP_ITERATION_3 170 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 169 && BOOST_PP_ITERATION_START_3 >= 169 +# define BOOST_PP_ITERATION_3 169 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 168 && BOOST_PP_ITERATION_START_3 >= 168 +# define BOOST_PP_ITERATION_3 168 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 167 && BOOST_PP_ITERATION_START_3 >= 167 +# define BOOST_PP_ITERATION_3 167 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 166 && BOOST_PP_ITERATION_START_3 >= 166 +# define BOOST_PP_ITERATION_3 166 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 165 && BOOST_PP_ITERATION_START_3 >= 165 +# define BOOST_PP_ITERATION_3 165 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 164 && BOOST_PP_ITERATION_START_3 >= 164 +# define BOOST_PP_ITERATION_3 164 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 163 && BOOST_PP_ITERATION_START_3 >= 163 +# define BOOST_PP_ITERATION_3 163 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 162 && BOOST_PP_ITERATION_START_3 >= 162 +# define BOOST_PP_ITERATION_3 162 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 161 && BOOST_PP_ITERATION_START_3 >= 161 +# define BOOST_PP_ITERATION_3 161 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 160 && BOOST_PP_ITERATION_START_3 >= 160 +# define BOOST_PP_ITERATION_3 160 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 159 && BOOST_PP_ITERATION_START_3 >= 159 +# define BOOST_PP_ITERATION_3 159 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 158 && BOOST_PP_ITERATION_START_3 >= 158 +# define BOOST_PP_ITERATION_3 158 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 157 && BOOST_PP_ITERATION_START_3 >= 157 +# define BOOST_PP_ITERATION_3 157 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 156 && BOOST_PP_ITERATION_START_3 >= 156 +# define BOOST_PP_ITERATION_3 156 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 155 && BOOST_PP_ITERATION_START_3 >= 155 +# define BOOST_PP_ITERATION_3 155 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 154 && BOOST_PP_ITERATION_START_3 >= 154 +# define BOOST_PP_ITERATION_3 154 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 153 && BOOST_PP_ITERATION_START_3 >= 153 +# define BOOST_PP_ITERATION_3 153 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 152 && BOOST_PP_ITERATION_START_3 >= 152 +# define BOOST_PP_ITERATION_3 152 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 151 && BOOST_PP_ITERATION_START_3 >= 151 +# define BOOST_PP_ITERATION_3 151 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 150 && BOOST_PP_ITERATION_START_3 >= 150 +# define BOOST_PP_ITERATION_3 150 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 149 && BOOST_PP_ITERATION_START_3 >= 149 +# define BOOST_PP_ITERATION_3 149 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 148 && BOOST_PP_ITERATION_START_3 >= 148 +# define BOOST_PP_ITERATION_3 148 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 147 && BOOST_PP_ITERATION_START_3 >= 147 +# define BOOST_PP_ITERATION_3 147 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 146 && BOOST_PP_ITERATION_START_3 >= 146 +# define BOOST_PP_ITERATION_3 146 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 145 && BOOST_PP_ITERATION_START_3 >= 145 +# define BOOST_PP_ITERATION_3 145 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 144 && BOOST_PP_ITERATION_START_3 >= 144 +# define BOOST_PP_ITERATION_3 144 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 143 && BOOST_PP_ITERATION_START_3 >= 143 +# define BOOST_PP_ITERATION_3 143 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 142 && BOOST_PP_ITERATION_START_3 >= 142 +# define BOOST_PP_ITERATION_3 142 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 141 && BOOST_PP_ITERATION_START_3 >= 141 +# define BOOST_PP_ITERATION_3 141 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 140 && BOOST_PP_ITERATION_START_3 >= 140 +# define BOOST_PP_ITERATION_3 140 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 139 && BOOST_PP_ITERATION_START_3 >= 139 +# define BOOST_PP_ITERATION_3 139 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 138 && BOOST_PP_ITERATION_START_3 >= 138 +# define BOOST_PP_ITERATION_3 138 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 137 && BOOST_PP_ITERATION_START_3 >= 137 +# define BOOST_PP_ITERATION_3 137 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 136 && BOOST_PP_ITERATION_START_3 >= 136 +# define BOOST_PP_ITERATION_3 136 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 135 && BOOST_PP_ITERATION_START_3 >= 135 +# define BOOST_PP_ITERATION_3 135 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 134 && BOOST_PP_ITERATION_START_3 >= 134 +# define BOOST_PP_ITERATION_3 134 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 133 && BOOST_PP_ITERATION_START_3 >= 133 +# define BOOST_PP_ITERATION_3 133 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 132 && BOOST_PP_ITERATION_START_3 >= 132 +# define BOOST_PP_ITERATION_3 132 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 131 && BOOST_PP_ITERATION_START_3 >= 131 +# define BOOST_PP_ITERATION_3 131 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 130 && BOOST_PP_ITERATION_START_3 >= 130 +# define BOOST_PP_ITERATION_3 130 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 129 && BOOST_PP_ITERATION_START_3 >= 129 +# define BOOST_PP_ITERATION_3 129 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 128 && BOOST_PP_ITERATION_START_3 >= 128 +# define BOOST_PP_ITERATION_3 128 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 127 && BOOST_PP_ITERATION_START_3 >= 127 +# define BOOST_PP_ITERATION_3 127 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 126 && BOOST_PP_ITERATION_START_3 >= 126 +# define BOOST_PP_ITERATION_3 126 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 125 && BOOST_PP_ITERATION_START_3 >= 125 +# define BOOST_PP_ITERATION_3 125 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 124 && BOOST_PP_ITERATION_START_3 >= 124 +# define BOOST_PP_ITERATION_3 124 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 123 && BOOST_PP_ITERATION_START_3 >= 123 +# define BOOST_PP_ITERATION_3 123 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 122 && BOOST_PP_ITERATION_START_3 >= 122 +# define BOOST_PP_ITERATION_3 122 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 121 && BOOST_PP_ITERATION_START_3 >= 121 +# define BOOST_PP_ITERATION_3 121 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 120 && BOOST_PP_ITERATION_START_3 >= 120 +# define BOOST_PP_ITERATION_3 120 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 119 && BOOST_PP_ITERATION_START_3 >= 119 +# define BOOST_PP_ITERATION_3 119 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 118 && BOOST_PP_ITERATION_START_3 >= 118 +# define BOOST_PP_ITERATION_3 118 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 117 && BOOST_PP_ITERATION_START_3 >= 117 +# define BOOST_PP_ITERATION_3 117 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 116 && BOOST_PP_ITERATION_START_3 >= 116 +# define BOOST_PP_ITERATION_3 116 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 115 && BOOST_PP_ITERATION_START_3 >= 115 +# define BOOST_PP_ITERATION_3 115 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 114 && BOOST_PP_ITERATION_START_3 >= 114 +# define BOOST_PP_ITERATION_3 114 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 113 && BOOST_PP_ITERATION_START_3 >= 113 +# define BOOST_PP_ITERATION_3 113 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 112 && BOOST_PP_ITERATION_START_3 >= 112 +# define BOOST_PP_ITERATION_3 112 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 111 && BOOST_PP_ITERATION_START_3 >= 111 +# define BOOST_PP_ITERATION_3 111 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 110 && BOOST_PP_ITERATION_START_3 >= 110 +# define BOOST_PP_ITERATION_3 110 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 109 && BOOST_PP_ITERATION_START_3 >= 109 +# define BOOST_PP_ITERATION_3 109 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 108 && BOOST_PP_ITERATION_START_3 >= 108 +# define BOOST_PP_ITERATION_3 108 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 107 && BOOST_PP_ITERATION_START_3 >= 107 +# define BOOST_PP_ITERATION_3 107 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 106 && BOOST_PP_ITERATION_START_3 >= 106 +# define BOOST_PP_ITERATION_3 106 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 105 && BOOST_PP_ITERATION_START_3 >= 105 +# define BOOST_PP_ITERATION_3 105 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 104 && BOOST_PP_ITERATION_START_3 >= 104 +# define BOOST_PP_ITERATION_3 104 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 103 && BOOST_PP_ITERATION_START_3 >= 103 +# define BOOST_PP_ITERATION_3 103 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 102 && BOOST_PP_ITERATION_START_3 >= 102 +# define BOOST_PP_ITERATION_3 102 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 101 && BOOST_PP_ITERATION_START_3 >= 101 +# define BOOST_PP_ITERATION_3 101 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 100 && BOOST_PP_ITERATION_START_3 >= 100 +# define BOOST_PP_ITERATION_3 100 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 99 && BOOST_PP_ITERATION_START_3 >= 99 +# define BOOST_PP_ITERATION_3 99 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 98 && BOOST_PP_ITERATION_START_3 >= 98 +# define BOOST_PP_ITERATION_3 98 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 97 && BOOST_PP_ITERATION_START_3 >= 97 +# define BOOST_PP_ITERATION_3 97 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 96 && BOOST_PP_ITERATION_START_3 >= 96 +# define BOOST_PP_ITERATION_3 96 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 95 && BOOST_PP_ITERATION_START_3 >= 95 +# define BOOST_PP_ITERATION_3 95 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 94 && BOOST_PP_ITERATION_START_3 >= 94 +# define BOOST_PP_ITERATION_3 94 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 93 && BOOST_PP_ITERATION_START_3 >= 93 +# define BOOST_PP_ITERATION_3 93 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 92 && BOOST_PP_ITERATION_START_3 >= 92 +# define BOOST_PP_ITERATION_3 92 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 91 && BOOST_PP_ITERATION_START_3 >= 91 +# define BOOST_PP_ITERATION_3 91 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 90 && BOOST_PP_ITERATION_START_3 >= 90 +# define BOOST_PP_ITERATION_3 90 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 89 && BOOST_PP_ITERATION_START_3 >= 89 +# define BOOST_PP_ITERATION_3 89 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 88 && BOOST_PP_ITERATION_START_3 >= 88 +# define BOOST_PP_ITERATION_3 88 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 87 && BOOST_PP_ITERATION_START_3 >= 87 +# define BOOST_PP_ITERATION_3 87 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 86 && BOOST_PP_ITERATION_START_3 >= 86 +# define BOOST_PP_ITERATION_3 86 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 85 && BOOST_PP_ITERATION_START_3 >= 85 +# define BOOST_PP_ITERATION_3 85 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 84 && BOOST_PP_ITERATION_START_3 >= 84 +# define BOOST_PP_ITERATION_3 84 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 83 && BOOST_PP_ITERATION_START_3 >= 83 +# define BOOST_PP_ITERATION_3 83 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 82 && BOOST_PP_ITERATION_START_3 >= 82 +# define BOOST_PP_ITERATION_3 82 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 81 && BOOST_PP_ITERATION_START_3 >= 81 +# define BOOST_PP_ITERATION_3 81 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 80 && BOOST_PP_ITERATION_START_3 >= 80 +# define BOOST_PP_ITERATION_3 80 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 79 && BOOST_PP_ITERATION_START_3 >= 79 +# define BOOST_PP_ITERATION_3 79 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 78 && BOOST_PP_ITERATION_START_3 >= 78 +# define BOOST_PP_ITERATION_3 78 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 77 && BOOST_PP_ITERATION_START_3 >= 77 +# define BOOST_PP_ITERATION_3 77 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 76 && BOOST_PP_ITERATION_START_3 >= 76 +# define BOOST_PP_ITERATION_3 76 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 75 && BOOST_PP_ITERATION_START_3 >= 75 +# define BOOST_PP_ITERATION_3 75 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 74 && BOOST_PP_ITERATION_START_3 >= 74 +# define BOOST_PP_ITERATION_3 74 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 73 && BOOST_PP_ITERATION_START_3 >= 73 +# define BOOST_PP_ITERATION_3 73 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 72 && BOOST_PP_ITERATION_START_3 >= 72 +# define BOOST_PP_ITERATION_3 72 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 71 && BOOST_PP_ITERATION_START_3 >= 71 +# define BOOST_PP_ITERATION_3 71 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 70 && BOOST_PP_ITERATION_START_3 >= 70 +# define BOOST_PP_ITERATION_3 70 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 69 && BOOST_PP_ITERATION_START_3 >= 69 +# define BOOST_PP_ITERATION_3 69 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 68 && BOOST_PP_ITERATION_START_3 >= 68 +# define BOOST_PP_ITERATION_3 68 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 67 && BOOST_PP_ITERATION_START_3 >= 67 +# define BOOST_PP_ITERATION_3 67 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 66 && BOOST_PP_ITERATION_START_3 >= 66 +# define BOOST_PP_ITERATION_3 66 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 65 && BOOST_PP_ITERATION_START_3 >= 65 +# define BOOST_PP_ITERATION_3 65 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 64 && BOOST_PP_ITERATION_START_3 >= 64 +# define BOOST_PP_ITERATION_3 64 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 63 && BOOST_PP_ITERATION_START_3 >= 63 +# define BOOST_PP_ITERATION_3 63 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 62 && BOOST_PP_ITERATION_START_3 >= 62 +# define BOOST_PP_ITERATION_3 62 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 61 && BOOST_PP_ITERATION_START_3 >= 61 +# define BOOST_PP_ITERATION_3 61 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 60 && BOOST_PP_ITERATION_START_3 >= 60 +# define BOOST_PP_ITERATION_3 60 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 59 && BOOST_PP_ITERATION_START_3 >= 59 +# define BOOST_PP_ITERATION_3 59 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 58 && BOOST_PP_ITERATION_START_3 >= 58 +# define BOOST_PP_ITERATION_3 58 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 57 && BOOST_PP_ITERATION_START_3 >= 57 +# define BOOST_PP_ITERATION_3 57 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 56 && BOOST_PP_ITERATION_START_3 >= 56 +# define BOOST_PP_ITERATION_3 56 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 55 && BOOST_PP_ITERATION_START_3 >= 55 +# define BOOST_PP_ITERATION_3 55 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 54 && BOOST_PP_ITERATION_START_3 >= 54 +# define BOOST_PP_ITERATION_3 54 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 53 && BOOST_PP_ITERATION_START_3 >= 53 +# define BOOST_PP_ITERATION_3 53 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 52 && BOOST_PP_ITERATION_START_3 >= 52 +# define BOOST_PP_ITERATION_3 52 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 51 && BOOST_PP_ITERATION_START_3 >= 51 +# define BOOST_PP_ITERATION_3 51 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 50 && BOOST_PP_ITERATION_START_3 >= 50 +# define BOOST_PP_ITERATION_3 50 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 49 && BOOST_PP_ITERATION_START_3 >= 49 +# define BOOST_PP_ITERATION_3 49 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 48 && BOOST_PP_ITERATION_START_3 >= 48 +# define BOOST_PP_ITERATION_3 48 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 47 && BOOST_PP_ITERATION_START_3 >= 47 +# define BOOST_PP_ITERATION_3 47 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 46 && BOOST_PP_ITERATION_START_3 >= 46 +# define BOOST_PP_ITERATION_3 46 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 45 && BOOST_PP_ITERATION_START_3 >= 45 +# define BOOST_PP_ITERATION_3 45 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 44 && BOOST_PP_ITERATION_START_3 >= 44 +# define BOOST_PP_ITERATION_3 44 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 43 && BOOST_PP_ITERATION_START_3 >= 43 +# define BOOST_PP_ITERATION_3 43 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 42 && BOOST_PP_ITERATION_START_3 >= 42 +# define BOOST_PP_ITERATION_3 42 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 41 && BOOST_PP_ITERATION_START_3 >= 41 +# define BOOST_PP_ITERATION_3 41 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 40 && BOOST_PP_ITERATION_START_3 >= 40 +# define BOOST_PP_ITERATION_3 40 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 39 && BOOST_PP_ITERATION_START_3 >= 39 +# define BOOST_PP_ITERATION_3 39 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 38 && BOOST_PP_ITERATION_START_3 >= 38 +# define BOOST_PP_ITERATION_3 38 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 37 && BOOST_PP_ITERATION_START_3 >= 37 +# define BOOST_PP_ITERATION_3 37 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 36 && BOOST_PP_ITERATION_START_3 >= 36 +# define BOOST_PP_ITERATION_3 36 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 35 && BOOST_PP_ITERATION_START_3 >= 35 +# define BOOST_PP_ITERATION_3 35 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 34 && BOOST_PP_ITERATION_START_3 >= 34 +# define BOOST_PP_ITERATION_3 34 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 33 && BOOST_PP_ITERATION_START_3 >= 33 +# define BOOST_PP_ITERATION_3 33 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 32 && BOOST_PP_ITERATION_START_3 >= 32 +# define BOOST_PP_ITERATION_3 32 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 31 && BOOST_PP_ITERATION_START_3 >= 31 +# define BOOST_PP_ITERATION_3 31 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 30 && BOOST_PP_ITERATION_START_3 >= 30 +# define BOOST_PP_ITERATION_3 30 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 29 && BOOST_PP_ITERATION_START_3 >= 29 +# define BOOST_PP_ITERATION_3 29 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 28 && BOOST_PP_ITERATION_START_3 >= 28 +# define BOOST_PP_ITERATION_3 28 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 27 && BOOST_PP_ITERATION_START_3 >= 27 +# define BOOST_PP_ITERATION_3 27 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 26 && BOOST_PP_ITERATION_START_3 >= 26 +# define BOOST_PP_ITERATION_3 26 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 25 && BOOST_PP_ITERATION_START_3 >= 25 +# define BOOST_PP_ITERATION_3 25 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 24 && BOOST_PP_ITERATION_START_3 >= 24 +# define BOOST_PP_ITERATION_3 24 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 23 && BOOST_PP_ITERATION_START_3 >= 23 +# define BOOST_PP_ITERATION_3 23 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 22 && BOOST_PP_ITERATION_START_3 >= 22 +# define BOOST_PP_ITERATION_3 22 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 21 && BOOST_PP_ITERATION_START_3 >= 21 +# define BOOST_PP_ITERATION_3 21 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 20 && BOOST_PP_ITERATION_START_3 >= 20 +# define BOOST_PP_ITERATION_3 20 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 19 && BOOST_PP_ITERATION_START_3 >= 19 +# define BOOST_PP_ITERATION_3 19 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 18 && BOOST_PP_ITERATION_START_3 >= 18 +# define BOOST_PP_ITERATION_3 18 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 17 && BOOST_PP_ITERATION_START_3 >= 17 +# define BOOST_PP_ITERATION_3 17 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 16 && BOOST_PP_ITERATION_START_3 >= 16 +# define BOOST_PP_ITERATION_3 16 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 15 && BOOST_PP_ITERATION_START_3 >= 15 +# define BOOST_PP_ITERATION_3 15 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 14 && BOOST_PP_ITERATION_START_3 >= 14 +# define BOOST_PP_ITERATION_3 14 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 13 && BOOST_PP_ITERATION_START_3 >= 13 +# define BOOST_PP_ITERATION_3 13 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 12 && BOOST_PP_ITERATION_START_3 >= 12 +# define BOOST_PP_ITERATION_3 12 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 11 && BOOST_PP_ITERATION_START_3 >= 11 +# define BOOST_PP_ITERATION_3 11 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 10 && BOOST_PP_ITERATION_START_3 >= 10 +# define BOOST_PP_ITERATION_3 10 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 9 && BOOST_PP_ITERATION_START_3 >= 9 +# define BOOST_PP_ITERATION_3 9 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 8 && BOOST_PP_ITERATION_START_3 >= 8 +# define BOOST_PP_ITERATION_3 8 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 7 && BOOST_PP_ITERATION_START_3 >= 7 +# define BOOST_PP_ITERATION_3 7 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 6 && BOOST_PP_ITERATION_START_3 >= 6 +# define BOOST_PP_ITERATION_3 6 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 5 && BOOST_PP_ITERATION_START_3 >= 5 +# define BOOST_PP_ITERATION_3 5 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 4 && BOOST_PP_ITERATION_START_3 >= 4 +# define BOOST_PP_ITERATION_3 4 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 3 && BOOST_PP_ITERATION_START_3 >= 3 +# define BOOST_PP_ITERATION_3 3 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 2 && BOOST_PP_ITERATION_START_3 >= 2 +# define BOOST_PP_ITERATION_3 2 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 1 && BOOST_PP_ITERATION_START_3 >= 1 +# define BOOST_PP_ITERATION_3 1 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif +# if BOOST_PP_ITERATION_FINISH_3 <= 0 && BOOST_PP_ITERATION_START_3 >= 0 +# define BOOST_PP_ITERATION_3 0 +# include BOOST_PP_FILENAME_3 +# undef BOOST_PP_ITERATION_3 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp new file mode 100644 index 0000000..3bcfba0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse4.hpp @@ -0,0 +1,1296 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_ITERATION_FINISH_4 <= 256 && BOOST_PP_ITERATION_START_4 >= 256 +# define BOOST_PP_ITERATION_4 256 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 255 && BOOST_PP_ITERATION_START_4 >= 255 +# define BOOST_PP_ITERATION_4 255 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 254 && BOOST_PP_ITERATION_START_4 >= 254 +# define BOOST_PP_ITERATION_4 254 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 253 && BOOST_PP_ITERATION_START_4 >= 253 +# define BOOST_PP_ITERATION_4 253 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 252 && BOOST_PP_ITERATION_START_4 >= 252 +# define BOOST_PP_ITERATION_4 252 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 251 && BOOST_PP_ITERATION_START_4 >= 251 +# define BOOST_PP_ITERATION_4 251 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 250 && BOOST_PP_ITERATION_START_4 >= 250 +# define BOOST_PP_ITERATION_4 250 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 249 && BOOST_PP_ITERATION_START_4 >= 249 +# define BOOST_PP_ITERATION_4 249 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 248 && BOOST_PP_ITERATION_START_4 >= 248 +# define BOOST_PP_ITERATION_4 248 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 247 && BOOST_PP_ITERATION_START_4 >= 247 +# define BOOST_PP_ITERATION_4 247 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 246 && BOOST_PP_ITERATION_START_4 >= 246 +# define BOOST_PP_ITERATION_4 246 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 245 && BOOST_PP_ITERATION_START_4 >= 245 +# define BOOST_PP_ITERATION_4 245 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 244 && BOOST_PP_ITERATION_START_4 >= 244 +# define BOOST_PP_ITERATION_4 244 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 243 && BOOST_PP_ITERATION_START_4 >= 243 +# define BOOST_PP_ITERATION_4 243 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 242 && BOOST_PP_ITERATION_START_4 >= 242 +# define BOOST_PP_ITERATION_4 242 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 241 && BOOST_PP_ITERATION_START_4 >= 241 +# define BOOST_PP_ITERATION_4 241 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 240 && BOOST_PP_ITERATION_START_4 >= 240 +# define BOOST_PP_ITERATION_4 240 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 239 && BOOST_PP_ITERATION_START_4 >= 239 +# define BOOST_PP_ITERATION_4 239 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 238 && BOOST_PP_ITERATION_START_4 >= 238 +# define BOOST_PP_ITERATION_4 238 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 237 && BOOST_PP_ITERATION_START_4 >= 237 +# define BOOST_PP_ITERATION_4 237 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 236 && BOOST_PP_ITERATION_START_4 >= 236 +# define BOOST_PP_ITERATION_4 236 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 235 && BOOST_PP_ITERATION_START_4 >= 235 +# define BOOST_PP_ITERATION_4 235 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 234 && BOOST_PP_ITERATION_START_4 >= 234 +# define BOOST_PP_ITERATION_4 234 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 233 && BOOST_PP_ITERATION_START_4 >= 233 +# define BOOST_PP_ITERATION_4 233 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 232 && BOOST_PP_ITERATION_START_4 >= 232 +# define BOOST_PP_ITERATION_4 232 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 231 && BOOST_PP_ITERATION_START_4 >= 231 +# define BOOST_PP_ITERATION_4 231 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 230 && BOOST_PP_ITERATION_START_4 >= 230 +# define BOOST_PP_ITERATION_4 230 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 229 && BOOST_PP_ITERATION_START_4 >= 229 +# define BOOST_PP_ITERATION_4 229 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 228 && BOOST_PP_ITERATION_START_4 >= 228 +# define BOOST_PP_ITERATION_4 228 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 227 && BOOST_PP_ITERATION_START_4 >= 227 +# define BOOST_PP_ITERATION_4 227 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 226 && BOOST_PP_ITERATION_START_4 >= 226 +# define BOOST_PP_ITERATION_4 226 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 225 && BOOST_PP_ITERATION_START_4 >= 225 +# define BOOST_PP_ITERATION_4 225 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 224 && BOOST_PP_ITERATION_START_4 >= 224 +# define BOOST_PP_ITERATION_4 224 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 223 && BOOST_PP_ITERATION_START_4 >= 223 +# define BOOST_PP_ITERATION_4 223 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 222 && BOOST_PP_ITERATION_START_4 >= 222 +# define BOOST_PP_ITERATION_4 222 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 221 && BOOST_PP_ITERATION_START_4 >= 221 +# define BOOST_PP_ITERATION_4 221 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 220 && BOOST_PP_ITERATION_START_4 >= 220 +# define BOOST_PP_ITERATION_4 220 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 219 && BOOST_PP_ITERATION_START_4 >= 219 +# define BOOST_PP_ITERATION_4 219 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 218 && BOOST_PP_ITERATION_START_4 >= 218 +# define BOOST_PP_ITERATION_4 218 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 217 && BOOST_PP_ITERATION_START_4 >= 217 +# define BOOST_PP_ITERATION_4 217 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 216 && BOOST_PP_ITERATION_START_4 >= 216 +# define BOOST_PP_ITERATION_4 216 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 215 && BOOST_PP_ITERATION_START_4 >= 215 +# define BOOST_PP_ITERATION_4 215 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 214 && BOOST_PP_ITERATION_START_4 >= 214 +# define BOOST_PP_ITERATION_4 214 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 213 && BOOST_PP_ITERATION_START_4 >= 213 +# define BOOST_PP_ITERATION_4 213 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 212 && BOOST_PP_ITERATION_START_4 >= 212 +# define BOOST_PP_ITERATION_4 212 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 211 && BOOST_PP_ITERATION_START_4 >= 211 +# define BOOST_PP_ITERATION_4 211 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 210 && BOOST_PP_ITERATION_START_4 >= 210 +# define BOOST_PP_ITERATION_4 210 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 209 && BOOST_PP_ITERATION_START_4 >= 209 +# define BOOST_PP_ITERATION_4 209 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 208 && BOOST_PP_ITERATION_START_4 >= 208 +# define BOOST_PP_ITERATION_4 208 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 207 && BOOST_PP_ITERATION_START_4 >= 207 +# define BOOST_PP_ITERATION_4 207 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 206 && BOOST_PP_ITERATION_START_4 >= 206 +# define BOOST_PP_ITERATION_4 206 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 205 && BOOST_PP_ITERATION_START_4 >= 205 +# define BOOST_PP_ITERATION_4 205 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 204 && BOOST_PP_ITERATION_START_4 >= 204 +# define BOOST_PP_ITERATION_4 204 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 203 && BOOST_PP_ITERATION_START_4 >= 203 +# define BOOST_PP_ITERATION_4 203 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 202 && BOOST_PP_ITERATION_START_4 >= 202 +# define BOOST_PP_ITERATION_4 202 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 201 && BOOST_PP_ITERATION_START_4 >= 201 +# define BOOST_PP_ITERATION_4 201 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 200 && BOOST_PP_ITERATION_START_4 >= 200 +# define BOOST_PP_ITERATION_4 200 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 199 && BOOST_PP_ITERATION_START_4 >= 199 +# define BOOST_PP_ITERATION_4 199 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 198 && BOOST_PP_ITERATION_START_4 >= 198 +# define BOOST_PP_ITERATION_4 198 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 197 && BOOST_PP_ITERATION_START_4 >= 197 +# define BOOST_PP_ITERATION_4 197 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 196 && BOOST_PP_ITERATION_START_4 >= 196 +# define BOOST_PP_ITERATION_4 196 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 195 && BOOST_PP_ITERATION_START_4 >= 195 +# define BOOST_PP_ITERATION_4 195 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 194 && BOOST_PP_ITERATION_START_4 >= 194 +# define BOOST_PP_ITERATION_4 194 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 193 && BOOST_PP_ITERATION_START_4 >= 193 +# define BOOST_PP_ITERATION_4 193 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 192 && BOOST_PP_ITERATION_START_4 >= 192 +# define BOOST_PP_ITERATION_4 192 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 191 && BOOST_PP_ITERATION_START_4 >= 191 +# define BOOST_PP_ITERATION_4 191 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 190 && BOOST_PP_ITERATION_START_4 >= 190 +# define BOOST_PP_ITERATION_4 190 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 189 && BOOST_PP_ITERATION_START_4 >= 189 +# define BOOST_PP_ITERATION_4 189 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 188 && BOOST_PP_ITERATION_START_4 >= 188 +# define BOOST_PP_ITERATION_4 188 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 187 && BOOST_PP_ITERATION_START_4 >= 187 +# define BOOST_PP_ITERATION_4 187 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 186 && BOOST_PP_ITERATION_START_4 >= 186 +# define BOOST_PP_ITERATION_4 186 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 185 && BOOST_PP_ITERATION_START_4 >= 185 +# define BOOST_PP_ITERATION_4 185 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 184 && BOOST_PP_ITERATION_START_4 >= 184 +# define BOOST_PP_ITERATION_4 184 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 183 && BOOST_PP_ITERATION_START_4 >= 183 +# define BOOST_PP_ITERATION_4 183 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 182 && BOOST_PP_ITERATION_START_4 >= 182 +# define BOOST_PP_ITERATION_4 182 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 181 && BOOST_PP_ITERATION_START_4 >= 181 +# define BOOST_PP_ITERATION_4 181 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 180 && BOOST_PP_ITERATION_START_4 >= 180 +# define BOOST_PP_ITERATION_4 180 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 179 && BOOST_PP_ITERATION_START_4 >= 179 +# define BOOST_PP_ITERATION_4 179 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 178 && BOOST_PP_ITERATION_START_4 >= 178 +# define BOOST_PP_ITERATION_4 178 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 177 && BOOST_PP_ITERATION_START_4 >= 177 +# define BOOST_PP_ITERATION_4 177 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 176 && BOOST_PP_ITERATION_START_4 >= 176 +# define BOOST_PP_ITERATION_4 176 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 175 && BOOST_PP_ITERATION_START_4 >= 175 +# define BOOST_PP_ITERATION_4 175 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 174 && BOOST_PP_ITERATION_START_4 >= 174 +# define BOOST_PP_ITERATION_4 174 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 173 && BOOST_PP_ITERATION_START_4 >= 173 +# define BOOST_PP_ITERATION_4 173 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 172 && BOOST_PP_ITERATION_START_4 >= 172 +# define BOOST_PP_ITERATION_4 172 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 171 && BOOST_PP_ITERATION_START_4 >= 171 +# define BOOST_PP_ITERATION_4 171 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 170 && BOOST_PP_ITERATION_START_4 >= 170 +# define BOOST_PP_ITERATION_4 170 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 169 && BOOST_PP_ITERATION_START_4 >= 169 +# define BOOST_PP_ITERATION_4 169 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 168 && BOOST_PP_ITERATION_START_4 >= 168 +# define BOOST_PP_ITERATION_4 168 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 167 && BOOST_PP_ITERATION_START_4 >= 167 +# define BOOST_PP_ITERATION_4 167 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 166 && BOOST_PP_ITERATION_START_4 >= 166 +# define BOOST_PP_ITERATION_4 166 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 165 && BOOST_PP_ITERATION_START_4 >= 165 +# define BOOST_PP_ITERATION_4 165 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 164 && BOOST_PP_ITERATION_START_4 >= 164 +# define BOOST_PP_ITERATION_4 164 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 163 && BOOST_PP_ITERATION_START_4 >= 163 +# define BOOST_PP_ITERATION_4 163 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 162 && BOOST_PP_ITERATION_START_4 >= 162 +# define BOOST_PP_ITERATION_4 162 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 161 && BOOST_PP_ITERATION_START_4 >= 161 +# define BOOST_PP_ITERATION_4 161 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 160 && BOOST_PP_ITERATION_START_4 >= 160 +# define BOOST_PP_ITERATION_4 160 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 159 && BOOST_PP_ITERATION_START_4 >= 159 +# define BOOST_PP_ITERATION_4 159 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 158 && BOOST_PP_ITERATION_START_4 >= 158 +# define BOOST_PP_ITERATION_4 158 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 157 && BOOST_PP_ITERATION_START_4 >= 157 +# define BOOST_PP_ITERATION_4 157 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 156 && BOOST_PP_ITERATION_START_4 >= 156 +# define BOOST_PP_ITERATION_4 156 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 155 && BOOST_PP_ITERATION_START_4 >= 155 +# define BOOST_PP_ITERATION_4 155 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 154 && BOOST_PP_ITERATION_START_4 >= 154 +# define BOOST_PP_ITERATION_4 154 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 153 && BOOST_PP_ITERATION_START_4 >= 153 +# define BOOST_PP_ITERATION_4 153 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 152 && BOOST_PP_ITERATION_START_4 >= 152 +# define BOOST_PP_ITERATION_4 152 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 151 && BOOST_PP_ITERATION_START_4 >= 151 +# define BOOST_PP_ITERATION_4 151 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 150 && BOOST_PP_ITERATION_START_4 >= 150 +# define BOOST_PP_ITERATION_4 150 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 149 && BOOST_PP_ITERATION_START_4 >= 149 +# define BOOST_PP_ITERATION_4 149 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 148 && BOOST_PP_ITERATION_START_4 >= 148 +# define BOOST_PP_ITERATION_4 148 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 147 && BOOST_PP_ITERATION_START_4 >= 147 +# define BOOST_PP_ITERATION_4 147 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 146 && BOOST_PP_ITERATION_START_4 >= 146 +# define BOOST_PP_ITERATION_4 146 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 145 && BOOST_PP_ITERATION_START_4 >= 145 +# define BOOST_PP_ITERATION_4 145 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 144 && BOOST_PP_ITERATION_START_4 >= 144 +# define BOOST_PP_ITERATION_4 144 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 143 && BOOST_PP_ITERATION_START_4 >= 143 +# define BOOST_PP_ITERATION_4 143 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 142 && BOOST_PP_ITERATION_START_4 >= 142 +# define BOOST_PP_ITERATION_4 142 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 141 && BOOST_PP_ITERATION_START_4 >= 141 +# define BOOST_PP_ITERATION_4 141 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 140 && BOOST_PP_ITERATION_START_4 >= 140 +# define BOOST_PP_ITERATION_4 140 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 139 && BOOST_PP_ITERATION_START_4 >= 139 +# define BOOST_PP_ITERATION_4 139 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 138 && BOOST_PP_ITERATION_START_4 >= 138 +# define BOOST_PP_ITERATION_4 138 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 137 && BOOST_PP_ITERATION_START_4 >= 137 +# define BOOST_PP_ITERATION_4 137 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 136 && BOOST_PP_ITERATION_START_4 >= 136 +# define BOOST_PP_ITERATION_4 136 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 135 && BOOST_PP_ITERATION_START_4 >= 135 +# define BOOST_PP_ITERATION_4 135 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 134 && BOOST_PP_ITERATION_START_4 >= 134 +# define BOOST_PP_ITERATION_4 134 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 133 && BOOST_PP_ITERATION_START_4 >= 133 +# define BOOST_PP_ITERATION_4 133 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 132 && BOOST_PP_ITERATION_START_4 >= 132 +# define BOOST_PP_ITERATION_4 132 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 131 && BOOST_PP_ITERATION_START_4 >= 131 +# define BOOST_PP_ITERATION_4 131 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 130 && BOOST_PP_ITERATION_START_4 >= 130 +# define BOOST_PP_ITERATION_4 130 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 129 && BOOST_PP_ITERATION_START_4 >= 129 +# define BOOST_PP_ITERATION_4 129 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 128 && BOOST_PP_ITERATION_START_4 >= 128 +# define BOOST_PP_ITERATION_4 128 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 127 && BOOST_PP_ITERATION_START_4 >= 127 +# define BOOST_PP_ITERATION_4 127 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 126 && BOOST_PP_ITERATION_START_4 >= 126 +# define BOOST_PP_ITERATION_4 126 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 125 && BOOST_PP_ITERATION_START_4 >= 125 +# define BOOST_PP_ITERATION_4 125 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 124 && BOOST_PP_ITERATION_START_4 >= 124 +# define BOOST_PP_ITERATION_4 124 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 123 && BOOST_PP_ITERATION_START_4 >= 123 +# define BOOST_PP_ITERATION_4 123 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 122 && BOOST_PP_ITERATION_START_4 >= 122 +# define BOOST_PP_ITERATION_4 122 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 121 && BOOST_PP_ITERATION_START_4 >= 121 +# define BOOST_PP_ITERATION_4 121 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 120 && BOOST_PP_ITERATION_START_4 >= 120 +# define BOOST_PP_ITERATION_4 120 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 119 && BOOST_PP_ITERATION_START_4 >= 119 +# define BOOST_PP_ITERATION_4 119 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 118 && BOOST_PP_ITERATION_START_4 >= 118 +# define BOOST_PP_ITERATION_4 118 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 117 && BOOST_PP_ITERATION_START_4 >= 117 +# define BOOST_PP_ITERATION_4 117 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 116 && BOOST_PP_ITERATION_START_4 >= 116 +# define BOOST_PP_ITERATION_4 116 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 115 && BOOST_PP_ITERATION_START_4 >= 115 +# define BOOST_PP_ITERATION_4 115 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 114 && BOOST_PP_ITERATION_START_4 >= 114 +# define BOOST_PP_ITERATION_4 114 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 113 && BOOST_PP_ITERATION_START_4 >= 113 +# define BOOST_PP_ITERATION_4 113 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 112 && BOOST_PP_ITERATION_START_4 >= 112 +# define BOOST_PP_ITERATION_4 112 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 111 && BOOST_PP_ITERATION_START_4 >= 111 +# define BOOST_PP_ITERATION_4 111 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 110 && BOOST_PP_ITERATION_START_4 >= 110 +# define BOOST_PP_ITERATION_4 110 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 109 && BOOST_PP_ITERATION_START_4 >= 109 +# define BOOST_PP_ITERATION_4 109 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 108 && BOOST_PP_ITERATION_START_4 >= 108 +# define BOOST_PP_ITERATION_4 108 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 107 && BOOST_PP_ITERATION_START_4 >= 107 +# define BOOST_PP_ITERATION_4 107 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 106 && BOOST_PP_ITERATION_START_4 >= 106 +# define BOOST_PP_ITERATION_4 106 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 105 && BOOST_PP_ITERATION_START_4 >= 105 +# define BOOST_PP_ITERATION_4 105 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 104 && BOOST_PP_ITERATION_START_4 >= 104 +# define BOOST_PP_ITERATION_4 104 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 103 && BOOST_PP_ITERATION_START_4 >= 103 +# define BOOST_PP_ITERATION_4 103 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 102 && BOOST_PP_ITERATION_START_4 >= 102 +# define BOOST_PP_ITERATION_4 102 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 101 && BOOST_PP_ITERATION_START_4 >= 101 +# define BOOST_PP_ITERATION_4 101 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 100 && BOOST_PP_ITERATION_START_4 >= 100 +# define BOOST_PP_ITERATION_4 100 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 99 && BOOST_PP_ITERATION_START_4 >= 99 +# define BOOST_PP_ITERATION_4 99 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 98 && BOOST_PP_ITERATION_START_4 >= 98 +# define BOOST_PP_ITERATION_4 98 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 97 && BOOST_PP_ITERATION_START_4 >= 97 +# define BOOST_PP_ITERATION_4 97 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 96 && BOOST_PP_ITERATION_START_4 >= 96 +# define BOOST_PP_ITERATION_4 96 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 95 && BOOST_PP_ITERATION_START_4 >= 95 +# define BOOST_PP_ITERATION_4 95 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 94 && BOOST_PP_ITERATION_START_4 >= 94 +# define BOOST_PP_ITERATION_4 94 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 93 && BOOST_PP_ITERATION_START_4 >= 93 +# define BOOST_PP_ITERATION_4 93 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 92 && BOOST_PP_ITERATION_START_4 >= 92 +# define BOOST_PP_ITERATION_4 92 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 91 && BOOST_PP_ITERATION_START_4 >= 91 +# define BOOST_PP_ITERATION_4 91 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 90 && BOOST_PP_ITERATION_START_4 >= 90 +# define BOOST_PP_ITERATION_4 90 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 89 && BOOST_PP_ITERATION_START_4 >= 89 +# define BOOST_PP_ITERATION_4 89 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 88 && BOOST_PP_ITERATION_START_4 >= 88 +# define BOOST_PP_ITERATION_4 88 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 87 && BOOST_PP_ITERATION_START_4 >= 87 +# define BOOST_PP_ITERATION_4 87 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 86 && BOOST_PP_ITERATION_START_4 >= 86 +# define BOOST_PP_ITERATION_4 86 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 85 && BOOST_PP_ITERATION_START_4 >= 85 +# define BOOST_PP_ITERATION_4 85 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 84 && BOOST_PP_ITERATION_START_4 >= 84 +# define BOOST_PP_ITERATION_4 84 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 83 && BOOST_PP_ITERATION_START_4 >= 83 +# define BOOST_PP_ITERATION_4 83 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 82 && BOOST_PP_ITERATION_START_4 >= 82 +# define BOOST_PP_ITERATION_4 82 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 81 && BOOST_PP_ITERATION_START_4 >= 81 +# define BOOST_PP_ITERATION_4 81 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 80 && BOOST_PP_ITERATION_START_4 >= 80 +# define BOOST_PP_ITERATION_4 80 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 79 && BOOST_PP_ITERATION_START_4 >= 79 +# define BOOST_PP_ITERATION_4 79 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 78 && BOOST_PP_ITERATION_START_4 >= 78 +# define BOOST_PP_ITERATION_4 78 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 77 && BOOST_PP_ITERATION_START_4 >= 77 +# define BOOST_PP_ITERATION_4 77 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 76 && BOOST_PP_ITERATION_START_4 >= 76 +# define BOOST_PP_ITERATION_4 76 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 75 && BOOST_PP_ITERATION_START_4 >= 75 +# define BOOST_PP_ITERATION_4 75 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 74 && BOOST_PP_ITERATION_START_4 >= 74 +# define BOOST_PP_ITERATION_4 74 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 73 && BOOST_PP_ITERATION_START_4 >= 73 +# define BOOST_PP_ITERATION_4 73 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 72 && BOOST_PP_ITERATION_START_4 >= 72 +# define BOOST_PP_ITERATION_4 72 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 71 && BOOST_PP_ITERATION_START_4 >= 71 +# define BOOST_PP_ITERATION_4 71 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 70 && BOOST_PP_ITERATION_START_4 >= 70 +# define BOOST_PP_ITERATION_4 70 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 69 && BOOST_PP_ITERATION_START_4 >= 69 +# define BOOST_PP_ITERATION_4 69 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 68 && BOOST_PP_ITERATION_START_4 >= 68 +# define BOOST_PP_ITERATION_4 68 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 67 && BOOST_PP_ITERATION_START_4 >= 67 +# define BOOST_PP_ITERATION_4 67 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 66 && BOOST_PP_ITERATION_START_4 >= 66 +# define BOOST_PP_ITERATION_4 66 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 65 && BOOST_PP_ITERATION_START_4 >= 65 +# define BOOST_PP_ITERATION_4 65 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 64 && BOOST_PP_ITERATION_START_4 >= 64 +# define BOOST_PP_ITERATION_4 64 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 63 && BOOST_PP_ITERATION_START_4 >= 63 +# define BOOST_PP_ITERATION_4 63 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 62 && BOOST_PP_ITERATION_START_4 >= 62 +# define BOOST_PP_ITERATION_4 62 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 61 && BOOST_PP_ITERATION_START_4 >= 61 +# define BOOST_PP_ITERATION_4 61 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 60 && BOOST_PP_ITERATION_START_4 >= 60 +# define BOOST_PP_ITERATION_4 60 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 59 && BOOST_PP_ITERATION_START_4 >= 59 +# define BOOST_PP_ITERATION_4 59 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 58 && BOOST_PP_ITERATION_START_4 >= 58 +# define BOOST_PP_ITERATION_4 58 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 57 && BOOST_PP_ITERATION_START_4 >= 57 +# define BOOST_PP_ITERATION_4 57 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 56 && BOOST_PP_ITERATION_START_4 >= 56 +# define BOOST_PP_ITERATION_4 56 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 55 && BOOST_PP_ITERATION_START_4 >= 55 +# define BOOST_PP_ITERATION_4 55 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 54 && BOOST_PP_ITERATION_START_4 >= 54 +# define BOOST_PP_ITERATION_4 54 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 53 && BOOST_PP_ITERATION_START_4 >= 53 +# define BOOST_PP_ITERATION_4 53 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 52 && BOOST_PP_ITERATION_START_4 >= 52 +# define BOOST_PP_ITERATION_4 52 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 51 && BOOST_PP_ITERATION_START_4 >= 51 +# define BOOST_PP_ITERATION_4 51 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 50 && BOOST_PP_ITERATION_START_4 >= 50 +# define BOOST_PP_ITERATION_4 50 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 49 && BOOST_PP_ITERATION_START_4 >= 49 +# define BOOST_PP_ITERATION_4 49 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 48 && BOOST_PP_ITERATION_START_4 >= 48 +# define BOOST_PP_ITERATION_4 48 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 47 && BOOST_PP_ITERATION_START_4 >= 47 +# define BOOST_PP_ITERATION_4 47 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 46 && BOOST_PP_ITERATION_START_4 >= 46 +# define BOOST_PP_ITERATION_4 46 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 45 && BOOST_PP_ITERATION_START_4 >= 45 +# define BOOST_PP_ITERATION_4 45 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 44 && BOOST_PP_ITERATION_START_4 >= 44 +# define BOOST_PP_ITERATION_4 44 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 43 && BOOST_PP_ITERATION_START_4 >= 43 +# define BOOST_PP_ITERATION_4 43 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 42 && BOOST_PP_ITERATION_START_4 >= 42 +# define BOOST_PP_ITERATION_4 42 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 41 && BOOST_PP_ITERATION_START_4 >= 41 +# define BOOST_PP_ITERATION_4 41 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 40 && BOOST_PP_ITERATION_START_4 >= 40 +# define BOOST_PP_ITERATION_4 40 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 39 && BOOST_PP_ITERATION_START_4 >= 39 +# define BOOST_PP_ITERATION_4 39 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 38 && BOOST_PP_ITERATION_START_4 >= 38 +# define BOOST_PP_ITERATION_4 38 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 37 && BOOST_PP_ITERATION_START_4 >= 37 +# define BOOST_PP_ITERATION_4 37 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 36 && BOOST_PP_ITERATION_START_4 >= 36 +# define BOOST_PP_ITERATION_4 36 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 35 && BOOST_PP_ITERATION_START_4 >= 35 +# define BOOST_PP_ITERATION_4 35 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 34 && BOOST_PP_ITERATION_START_4 >= 34 +# define BOOST_PP_ITERATION_4 34 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 33 && BOOST_PP_ITERATION_START_4 >= 33 +# define BOOST_PP_ITERATION_4 33 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 32 && BOOST_PP_ITERATION_START_4 >= 32 +# define BOOST_PP_ITERATION_4 32 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 31 && BOOST_PP_ITERATION_START_4 >= 31 +# define BOOST_PP_ITERATION_4 31 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 30 && BOOST_PP_ITERATION_START_4 >= 30 +# define BOOST_PP_ITERATION_4 30 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 29 && BOOST_PP_ITERATION_START_4 >= 29 +# define BOOST_PP_ITERATION_4 29 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 28 && BOOST_PP_ITERATION_START_4 >= 28 +# define BOOST_PP_ITERATION_4 28 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 27 && BOOST_PP_ITERATION_START_4 >= 27 +# define BOOST_PP_ITERATION_4 27 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 26 && BOOST_PP_ITERATION_START_4 >= 26 +# define BOOST_PP_ITERATION_4 26 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 25 && BOOST_PP_ITERATION_START_4 >= 25 +# define BOOST_PP_ITERATION_4 25 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 24 && BOOST_PP_ITERATION_START_4 >= 24 +# define BOOST_PP_ITERATION_4 24 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 23 && BOOST_PP_ITERATION_START_4 >= 23 +# define BOOST_PP_ITERATION_4 23 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 22 && BOOST_PP_ITERATION_START_4 >= 22 +# define BOOST_PP_ITERATION_4 22 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 21 && BOOST_PP_ITERATION_START_4 >= 21 +# define BOOST_PP_ITERATION_4 21 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 20 && BOOST_PP_ITERATION_START_4 >= 20 +# define BOOST_PP_ITERATION_4 20 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 19 && BOOST_PP_ITERATION_START_4 >= 19 +# define BOOST_PP_ITERATION_4 19 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 18 && BOOST_PP_ITERATION_START_4 >= 18 +# define BOOST_PP_ITERATION_4 18 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 17 && BOOST_PP_ITERATION_START_4 >= 17 +# define BOOST_PP_ITERATION_4 17 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 16 && BOOST_PP_ITERATION_START_4 >= 16 +# define BOOST_PP_ITERATION_4 16 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 15 && BOOST_PP_ITERATION_START_4 >= 15 +# define BOOST_PP_ITERATION_4 15 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 14 && BOOST_PP_ITERATION_START_4 >= 14 +# define BOOST_PP_ITERATION_4 14 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 13 && BOOST_PP_ITERATION_START_4 >= 13 +# define BOOST_PP_ITERATION_4 13 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 12 && BOOST_PP_ITERATION_START_4 >= 12 +# define BOOST_PP_ITERATION_4 12 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 11 && BOOST_PP_ITERATION_START_4 >= 11 +# define BOOST_PP_ITERATION_4 11 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 10 && BOOST_PP_ITERATION_START_4 >= 10 +# define BOOST_PP_ITERATION_4 10 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 9 && BOOST_PP_ITERATION_START_4 >= 9 +# define BOOST_PP_ITERATION_4 9 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 8 && BOOST_PP_ITERATION_START_4 >= 8 +# define BOOST_PP_ITERATION_4 8 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 7 && BOOST_PP_ITERATION_START_4 >= 7 +# define BOOST_PP_ITERATION_4 7 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 6 && BOOST_PP_ITERATION_START_4 >= 6 +# define BOOST_PP_ITERATION_4 6 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 5 && BOOST_PP_ITERATION_START_4 >= 5 +# define BOOST_PP_ITERATION_4 5 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 4 && BOOST_PP_ITERATION_START_4 >= 4 +# define BOOST_PP_ITERATION_4 4 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 3 && BOOST_PP_ITERATION_START_4 >= 3 +# define BOOST_PP_ITERATION_4 3 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 2 && BOOST_PP_ITERATION_START_4 >= 2 +# define BOOST_PP_ITERATION_4 2 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 1 && BOOST_PP_ITERATION_START_4 >= 1 +# define BOOST_PP_ITERATION_4 1 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif +# if BOOST_PP_ITERATION_FINISH_4 <= 0 && BOOST_PP_ITERATION_START_4 >= 0 +# define BOOST_PP_ITERATION_4 0 +# include BOOST_PP_FILENAME_4 +# undef BOOST_PP_ITERATION_4 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp new file mode 100644 index 0000000..225a557 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/iter/reverse5.hpp @@ -0,0 +1,1296 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_ITERATION_FINISH_5 <= 256 && BOOST_PP_ITERATION_START_5 >= 256 +# define BOOST_PP_ITERATION_5 256 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 255 && BOOST_PP_ITERATION_START_5 >= 255 +# define BOOST_PP_ITERATION_5 255 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 254 && BOOST_PP_ITERATION_START_5 >= 254 +# define BOOST_PP_ITERATION_5 254 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 253 && BOOST_PP_ITERATION_START_5 >= 253 +# define BOOST_PP_ITERATION_5 253 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 252 && BOOST_PP_ITERATION_START_5 >= 252 +# define BOOST_PP_ITERATION_5 252 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 251 && BOOST_PP_ITERATION_START_5 >= 251 +# define BOOST_PP_ITERATION_5 251 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 250 && BOOST_PP_ITERATION_START_5 >= 250 +# define BOOST_PP_ITERATION_5 250 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 249 && BOOST_PP_ITERATION_START_5 >= 249 +# define BOOST_PP_ITERATION_5 249 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 248 && BOOST_PP_ITERATION_START_5 >= 248 +# define BOOST_PP_ITERATION_5 248 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 247 && BOOST_PP_ITERATION_START_5 >= 247 +# define BOOST_PP_ITERATION_5 247 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 246 && BOOST_PP_ITERATION_START_5 >= 246 +# define BOOST_PP_ITERATION_5 246 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 245 && BOOST_PP_ITERATION_START_5 >= 245 +# define BOOST_PP_ITERATION_5 245 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 244 && BOOST_PP_ITERATION_START_5 >= 244 +# define BOOST_PP_ITERATION_5 244 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 243 && BOOST_PP_ITERATION_START_5 >= 243 +# define BOOST_PP_ITERATION_5 243 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 242 && BOOST_PP_ITERATION_START_5 >= 242 +# define BOOST_PP_ITERATION_5 242 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 241 && BOOST_PP_ITERATION_START_5 >= 241 +# define BOOST_PP_ITERATION_5 241 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 240 && BOOST_PP_ITERATION_START_5 >= 240 +# define BOOST_PP_ITERATION_5 240 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 239 && BOOST_PP_ITERATION_START_5 >= 239 +# define BOOST_PP_ITERATION_5 239 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 238 && BOOST_PP_ITERATION_START_5 >= 238 +# define BOOST_PP_ITERATION_5 238 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 237 && BOOST_PP_ITERATION_START_5 >= 237 +# define BOOST_PP_ITERATION_5 237 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 236 && BOOST_PP_ITERATION_START_5 >= 236 +# define BOOST_PP_ITERATION_5 236 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 235 && BOOST_PP_ITERATION_START_5 >= 235 +# define BOOST_PP_ITERATION_5 235 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 234 && BOOST_PP_ITERATION_START_5 >= 234 +# define BOOST_PP_ITERATION_5 234 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 233 && BOOST_PP_ITERATION_START_5 >= 233 +# define BOOST_PP_ITERATION_5 233 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 232 && BOOST_PP_ITERATION_START_5 >= 232 +# define BOOST_PP_ITERATION_5 232 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 231 && BOOST_PP_ITERATION_START_5 >= 231 +# define BOOST_PP_ITERATION_5 231 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 230 && BOOST_PP_ITERATION_START_5 >= 230 +# define BOOST_PP_ITERATION_5 230 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 229 && BOOST_PP_ITERATION_START_5 >= 229 +# define BOOST_PP_ITERATION_5 229 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 228 && BOOST_PP_ITERATION_START_5 >= 228 +# define BOOST_PP_ITERATION_5 228 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 227 && BOOST_PP_ITERATION_START_5 >= 227 +# define BOOST_PP_ITERATION_5 227 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 226 && BOOST_PP_ITERATION_START_5 >= 226 +# define BOOST_PP_ITERATION_5 226 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 225 && BOOST_PP_ITERATION_START_5 >= 225 +# define BOOST_PP_ITERATION_5 225 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 224 && BOOST_PP_ITERATION_START_5 >= 224 +# define BOOST_PP_ITERATION_5 224 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 223 && BOOST_PP_ITERATION_START_5 >= 223 +# define BOOST_PP_ITERATION_5 223 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 222 && BOOST_PP_ITERATION_START_5 >= 222 +# define BOOST_PP_ITERATION_5 222 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 221 && BOOST_PP_ITERATION_START_5 >= 221 +# define BOOST_PP_ITERATION_5 221 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 220 && BOOST_PP_ITERATION_START_5 >= 220 +# define BOOST_PP_ITERATION_5 220 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 219 && BOOST_PP_ITERATION_START_5 >= 219 +# define BOOST_PP_ITERATION_5 219 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 218 && BOOST_PP_ITERATION_START_5 >= 218 +# define BOOST_PP_ITERATION_5 218 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 217 && BOOST_PP_ITERATION_START_5 >= 217 +# define BOOST_PP_ITERATION_5 217 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 216 && BOOST_PP_ITERATION_START_5 >= 216 +# define BOOST_PP_ITERATION_5 216 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 215 && BOOST_PP_ITERATION_START_5 >= 215 +# define BOOST_PP_ITERATION_5 215 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 214 && BOOST_PP_ITERATION_START_5 >= 214 +# define BOOST_PP_ITERATION_5 214 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 213 && BOOST_PP_ITERATION_START_5 >= 213 +# define BOOST_PP_ITERATION_5 213 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 212 && BOOST_PP_ITERATION_START_5 >= 212 +# define BOOST_PP_ITERATION_5 212 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 211 && BOOST_PP_ITERATION_START_5 >= 211 +# define BOOST_PP_ITERATION_5 211 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 210 && BOOST_PP_ITERATION_START_5 >= 210 +# define BOOST_PP_ITERATION_5 210 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 209 && BOOST_PP_ITERATION_START_5 >= 209 +# define BOOST_PP_ITERATION_5 209 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 208 && BOOST_PP_ITERATION_START_5 >= 208 +# define BOOST_PP_ITERATION_5 208 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 207 && BOOST_PP_ITERATION_START_5 >= 207 +# define BOOST_PP_ITERATION_5 207 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 206 && BOOST_PP_ITERATION_START_5 >= 206 +# define BOOST_PP_ITERATION_5 206 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 205 && BOOST_PP_ITERATION_START_5 >= 205 +# define BOOST_PP_ITERATION_5 205 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 204 && BOOST_PP_ITERATION_START_5 >= 204 +# define BOOST_PP_ITERATION_5 204 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 203 && BOOST_PP_ITERATION_START_5 >= 203 +# define BOOST_PP_ITERATION_5 203 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 202 && BOOST_PP_ITERATION_START_5 >= 202 +# define BOOST_PP_ITERATION_5 202 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 201 && BOOST_PP_ITERATION_START_5 >= 201 +# define BOOST_PP_ITERATION_5 201 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 200 && BOOST_PP_ITERATION_START_5 >= 200 +# define BOOST_PP_ITERATION_5 200 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 199 && BOOST_PP_ITERATION_START_5 >= 199 +# define BOOST_PP_ITERATION_5 199 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 198 && BOOST_PP_ITERATION_START_5 >= 198 +# define BOOST_PP_ITERATION_5 198 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 197 && BOOST_PP_ITERATION_START_5 >= 197 +# define BOOST_PP_ITERATION_5 197 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 196 && BOOST_PP_ITERATION_START_5 >= 196 +# define BOOST_PP_ITERATION_5 196 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 195 && BOOST_PP_ITERATION_START_5 >= 195 +# define BOOST_PP_ITERATION_5 195 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 194 && BOOST_PP_ITERATION_START_5 >= 194 +# define BOOST_PP_ITERATION_5 194 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 193 && BOOST_PP_ITERATION_START_5 >= 193 +# define BOOST_PP_ITERATION_5 193 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 192 && BOOST_PP_ITERATION_START_5 >= 192 +# define BOOST_PP_ITERATION_5 192 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 191 && BOOST_PP_ITERATION_START_5 >= 191 +# define BOOST_PP_ITERATION_5 191 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 190 && BOOST_PP_ITERATION_START_5 >= 190 +# define BOOST_PP_ITERATION_5 190 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 189 && BOOST_PP_ITERATION_START_5 >= 189 +# define BOOST_PP_ITERATION_5 189 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 188 && BOOST_PP_ITERATION_START_5 >= 188 +# define BOOST_PP_ITERATION_5 188 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 187 && BOOST_PP_ITERATION_START_5 >= 187 +# define BOOST_PP_ITERATION_5 187 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 186 && BOOST_PP_ITERATION_START_5 >= 186 +# define BOOST_PP_ITERATION_5 186 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 185 && BOOST_PP_ITERATION_START_5 >= 185 +# define BOOST_PP_ITERATION_5 185 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 184 && BOOST_PP_ITERATION_START_5 >= 184 +# define BOOST_PP_ITERATION_5 184 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 183 && BOOST_PP_ITERATION_START_5 >= 183 +# define BOOST_PP_ITERATION_5 183 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 182 && BOOST_PP_ITERATION_START_5 >= 182 +# define BOOST_PP_ITERATION_5 182 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 181 && BOOST_PP_ITERATION_START_5 >= 181 +# define BOOST_PP_ITERATION_5 181 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 180 && BOOST_PP_ITERATION_START_5 >= 180 +# define BOOST_PP_ITERATION_5 180 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 179 && BOOST_PP_ITERATION_START_5 >= 179 +# define BOOST_PP_ITERATION_5 179 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 178 && BOOST_PP_ITERATION_START_5 >= 178 +# define BOOST_PP_ITERATION_5 178 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 177 && BOOST_PP_ITERATION_START_5 >= 177 +# define BOOST_PP_ITERATION_5 177 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 176 && BOOST_PP_ITERATION_START_5 >= 176 +# define BOOST_PP_ITERATION_5 176 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 175 && BOOST_PP_ITERATION_START_5 >= 175 +# define BOOST_PP_ITERATION_5 175 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 174 && BOOST_PP_ITERATION_START_5 >= 174 +# define BOOST_PP_ITERATION_5 174 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 173 && BOOST_PP_ITERATION_START_5 >= 173 +# define BOOST_PP_ITERATION_5 173 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 172 && BOOST_PP_ITERATION_START_5 >= 172 +# define BOOST_PP_ITERATION_5 172 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 171 && BOOST_PP_ITERATION_START_5 >= 171 +# define BOOST_PP_ITERATION_5 171 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 170 && BOOST_PP_ITERATION_START_5 >= 170 +# define BOOST_PP_ITERATION_5 170 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 169 && BOOST_PP_ITERATION_START_5 >= 169 +# define BOOST_PP_ITERATION_5 169 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 168 && BOOST_PP_ITERATION_START_5 >= 168 +# define BOOST_PP_ITERATION_5 168 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 167 && BOOST_PP_ITERATION_START_5 >= 167 +# define BOOST_PP_ITERATION_5 167 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 166 && BOOST_PP_ITERATION_START_5 >= 166 +# define BOOST_PP_ITERATION_5 166 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 165 && BOOST_PP_ITERATION_START_5 >= 165 +# define BOOST_PP_ITERATION_5 165 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 164 && BOOST_PP_ITERATION_START_5 >= 164 +# define BOOST_PP_ITERATION_5 164 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 163 && BOOST_PP_ITERATION_START_5 >= 163 +# define BOOST_PP_ITERATION_5 163 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 162 && BOOST_PP_ITERATION_START_5 >= 162 +# define BOOST_PP_ITERATION_5 162 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 161 && BOOST_PP_ITERATION_START_5 >= 161 +# define BOOST_PP_ITERATION_5 161 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 160 && BOOST_PP_ITERATION_START_5 >= 160 +# define BOOST_PP_ITERATION_5 160 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 159 && BOOST_PP_ITERATION_START_5 >= 159 +# define BOOST_PP_ITERATION_5 159 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 158 && BOOST_PP_ITERATION_START_5 >= 158 +# define BOOST_PP_ITERATION_5 158 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 157 && BOOST_PP_ITERATION_START_5 >= 157 +# define BOOST_PP_ITERATION_5 157 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 156 && BOOST_PP_ITERATION_START_5 >= 156 +# define BOOST_PP_ITERATION_5 156 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 155 && BOOST_PP_ITERATION_START_5 >= 155 +# define BOOST_PP_ITERATION_5 155 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 154 && BOOST_PP_ITERATION_START_5 >= 154 +# define BOOST_PP_ITERATION_5 154 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 153 && BOOST_PP_ITERATION_START_5 >= 153 +# define BOOST_PP_ITERATION_5 153 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 152 && BOOST_PP_ITERATION_START_5 >= 152 +# define BOOST_PP_ITERATION_5 152 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 151 && BOOST_PP_ITERATION_START_5 >= 151 +# define BOOST_PP_ITERATION_5 151 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 150 && BOOST_PP_ITERATION_START_5 >= 150 +# define BOOST_PP_ITERATION_5 150 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 149 && BOOST_PP_ITERATION_START_5 >= 149 +# define BOOST_PP_ITERATION_5 149 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 148 && BOOST_PP_ITERATION_START_5 >= 148 +# define BOOST_PP_ITERATION_5 148 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 147 && BOOST_PP_ITERATION_START_5 >= 147 +# define BOOST_PP_ITERATION_5 147 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 146 && BOOST_PP_ITERATION_START_5 >= 146 +# define BOOST_PP_ITERATION_5 146 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 145 && BOOST_PP_ITERATION_START_5 >= 145 +# define BOOST_PP_ITERATION_5 145 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 144 && BOOST_PP_ITERATION_START_5 >= 144 +# define BOOST_PP_ITERATION_5 144 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 143 && BOOST_PP_ITERATION_START_5 >= 143 +# define BOOST_PP_ITERATION_5 143 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 142 && BOOST_PP_ITERATION_START_5 >= 142 +# define BOOST_PP_ITERATION_5 142 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 141 && BOOST_PP_ITERATION_START_5 >= 141 +# define BOOST_PP_ITERATION_5 141 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 140 && BOOST_PP_ITERATION_START_5 >= 140 +# define BOOST_PP_ITERATION_5 140 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 139 && BOOST_PP_ITERATION_START_5 >= 139 +# define BOOST_PP_ITERATION_5 139 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 138 && BOOST_PP_ITERATION_START_5 >= 138 +# define BOOST_PP_ITERATION_5 138 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 137 && BOOST_PP_ITERATION_START_5 >= 137 +# define BOOST_PP_ITERATION_5 137 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 136 && BOOST_PP_ITERATION_START_5 >= 136 +# define BOOST_PP_ITERATION_5 136 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 135 && BOOST_PP_ITERATION_START_5 >= 135 +# define BOOST_PP_ITERATION_5 135 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 134 && BOOST_PP_ITERATION_START_5 >= 134 +# define BOOST_PP_ITERATION_5 134 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 133 && BOOST_PP_ITERATION_START_5 >= 133 +# define BOOST_PP_ITERATION_5 133 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 132 && BOOST_PP_ITERATION_START_5 >= 132 +# define BOOST_PP_ITERATION_5 132 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 131 && BOOST_PP_ITERATION_START_5 >= 131 +# define BOOST_PP_ITERATION_5 131 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 130 && BOOST_PP_ITERATION_START_5 >= 130 +# define BOOST_PP_ITERATION_5 130 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 129 && BOOST_PP_ITERATION_START_5 >= 129 +# define BOOST_PP_ITERATION_5 129 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 128 && BOOST_PP_ITERATION_START_5 >= 128 +# define BOOST_PP_ITERATION_5 128 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 127 && BOOST_PP_ITERATION_START_5 >= 127 +# define BOOST_PP_ITERATION_5 127 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 126 && BOOST_PP_ITERATION_START_5 >= 126 +# define BOOST_PP_ITERATION_5 126 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 125 && BOOST_PP_ITERATION_START_5 >= 125 +# define BOOST_PP_ITERATION_5 125 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 124 && BOOST_PP_ITERATION_START_5 >= 124 +# define BOOST_PP_ITERATION_5 124 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 123 && BOOST_PP_ITERATION_START_5 >= 123 +# define BOOST_PP_ITERATION_5 123 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 122 && BOOST_PP_ITERATION_START_5 >= 122 +# define BOOST_PP_ITERATION_5 122 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 121 && BOOST_PP_ITERATION_START_5 >= 121 +# define BOOST_PP_ITERATION_5 121 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 120 && BOOST_PP_ITERATION_START_5 >= 120 +# define BOOST_PP_ITERATION_5 120 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 119 && BOOST_PP_ITERATION_START_5 >= 119 +# define BOOST_PP_ITERATION_5 119 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 118 && BOOST_PP_ITERATION_START_5 >= 118 +# define BOOST_PP_ITERATION_5 118 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 117 && BOOST_PP_ITERATION_START_5 >= 117 +# define BOOST_PP_ITERATION_5 117 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 116 && BOOST_PP_ITERATION_START_5 >= 116 +# define BOOST_PP_ITERATION_5 116 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 115 && BOOST_PP_ITERATION_START_5 >= 115 +# define BOOST_PP_ITERATION_5 115 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 114 && BOOST_PP_ITERATION_START_5 >= 114 +# define BOOST_PP_ITERATION_5 114 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 113 && BOOST_PP_ITERATION_START_5 >= 113 +# define BOOST_PP_ITERATION_5 113 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 112 && BOOST_PP_ITERATION_START_5 >= 112 +# define BOOST_PP_ITERATION_5 112 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 111 && BOOST_PP_ITERATION_START_5 >= 111 +# define BOOST_PP_ITERATION_5 111 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 110 && BOOST_PP_ITERATION_START_5 >= 110 +# define BOOST_PP_ITERATION_5 110 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 109 && BOOST_PP_ITERATION_START_5 >= 109 +# define BOOST_PP_ITERATION_5 109 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 108 && BOOST_PP_ITERATION_START_5 >= 108 +# define BOOST_PP_ITERATION_5 108 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 107 && BOOST_PP_ITERATION_START_5 >= 107 +# define BOOST_PP_ITERATION_5 107 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 106 && BOOST_PP_ITERATION_START_5 >= 106 +# define BOOST_PP_ITERATION_5 106 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 105 && BOOST_PP_ITERATION_START_5 >= 105 +# define BOOST_PP_ITERATION_5 105 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 104 && BOOST_PP_ITERATION_START_5 >= 104 +# define BOOST_PP_ITERATION_5 104 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 103 && BOOST_PP_ITERATION_START_5 >= 103 +# define BOOST_PP_ITERATION_5 103 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 102 && BOOST_PP_ITERATION_START_5 >= 102 +# define BOOST_PP_ITERATION_5 102 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 101 && BOOST_PP_ITERATION_START_5 >= 101 +# define BOOST_PP_ITERATION_5 101 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 100 && BOOST_PP_ITERATION_START_5 >= 100 +# define BOOST_PP_ITERATION_5 100 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 99 && BOOST_PP_ITERATION_START_5 >= 99 +# define BOOST_PP_ITERATION_5 99 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 98 && BOOST_PP_ITERATION_START_5 >= 98 +# define BOOST_PP_ITERATION_5 98 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 97 && BOOST_PP_ITERATION_START_5 >= 97 +# define BOOST_PP_ITERATION_5 97 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 96 && BOOST_PP_ITERATION_START_5 >= 96 +# define BOOST_PP_ITERATION_5 96 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 95 && BOOST_PP_ITERATION_START_5 >= 95 +# define BOOST_PP_ITERATION_5 95 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 94 && BOOST_PP_ITERATION_START_5 >= 94 +# define BOOST_PP_ITERATION_5 94 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 93 && BOOST_PP_ITERATION_START_5 >= 93 +# define BOOST_PP_ITERATION_5 93 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 92 && BOOST_PP_ITERATION_START_5 >= 92 +# define BOOST_PP_ITERATION_5 92 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 91 && BOOST_PP_ITERATION_START_5 >= 91 +# define BOOST_PP_ITERATION_5 91 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 90 && BOOST_PP_ITERATION_START_5 >= 90 +# define BOOST_PP_ITERATION_5 90 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 89 && BOOST_PP_ITERATION_START_5 >= 89 +# define BOOST_PP_ITERATION_5 89 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 88 && BOOST_PP_ITERATION_START_5 >= 88 +# define BOOST_PP_ITERATION_5 88 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 87 && BOOST_PP_ITERATION_START_5 >= 87 +# define BOOST_PP_ITERATION_5 87 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 86 && BOOST_PP_ITERATION_START_5 >= 86 +# define BOOST_PP_ITERATION_5 86 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 85 && BOOST_PP_ITERATION_START_5 >= 85 +# define BOOST_PP_ITERATION_5 85 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 84 && BOOST_PP_ITERATION_START_5 >= 84 +# define BOOST_PP_ITERATION_5 84 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 83 && BOOST_PP_ITERATION_START_5 >= 83 +# define BOOST_PP_ITERATION_5 83 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 82 && BOOST_PP_ITERATION_START_5 >= 82 +# define BOOST_PP_ITERATION_5 82 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 81 && BOOST_PP_ITERATION_START_5 >= 81 +# define BOOST_PP_ITERATION_5 81 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 80 && BOOST_PP_ITERATION_START_5 >= 80 +# define BOOST_PP_ITERATION_5 80 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 79 && BOOST_PP_ITERATION_START_5 >= 79 +# define BOOST_PP_ITERATION_5 79 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 78 && BOOST_PP_ITERATION_START_5 >= 78 +# define BOOST_PP_ITERATION_5 78 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 77 && BOOST_PP_ITERATION_START_5 >= 77 +# define BOOST_PP_ITERATION_5 77 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 76 && BOOST_PP_ITERATION_START_5 >= 76 +# define BOOST_PP_ITERATION_5 76 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 75 && BOOST_PP_ITERATION_START_5 >= 75 +# define BOOST_PP_ITERATION_5 75 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 74 && BOOST_PP_ITERATION_START_5 >= 74 +# define BOOST_PP_ITERATION_5 74 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 73 && BOOST_PP_ITERATION_START_5 >= 73 +# define BOOST_PP_ITERATION_5 73 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 72 && BOOST_PP_ITERATION_START_5 >= 72 +# define BOOST_PP_ITERATION_5 72 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 71 && BOOST_PP_ITERATION_START_5 >= 71 +# define BOOST_PP_ITERATION_5 71 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 70 && BOOST_PP_ITERATION_START_5 >= 70 +# define BOOST_PP_ITERATION_5 70 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 69 && BOOST_PP_ITERATION_START_5 >= 69 +# define BOOST_PP_ITERATION_5 69 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 68 && BOOST_PP_ITERATION_START_5 >= 68 +# define BOOST_PP_ITERATION_5 68 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 67 && BOOST_PP_ITERATION_START_5 >= 67 +# define BOOST_PP_ITERATION_5 67 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 66 && BOOST_PP_ITERATION_START_5 >= 66 +# define BOOST_PP_ITERATION_5 66 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 65 && BOOST_PP_ITERATION_START_5 >= 65 +# define BOOST_PP_ITERATION_5 65 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 64 && BOOST_PP_ITERATION_START_5 >= 64 +# define BOOST_PP_ITERATION_5 64 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 63 && BOOST_PP_ITERATION_START_5 >= 63 +# define BOOST_PP_ITERATION_5 63 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 62 && BOOST_PP_ITERATION_START_5 >= 62 +# define BOOST_PP_ITERATION_5 62 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 61 && BOOST_PP_ITERATION_START_5 >= 61 +# define BOOST_PP_ITERATION_5 61 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 60 && BOOST_PP_ITERATION_START_5 >= 60 +# define BOOST_PP_ITERATION_5 60 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 59 && BOOST_PP_ITERATION_START_5 >= 59 +# define BOOST_PP_ITERATION_5 59 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 58 && BOOST_PP_ITERATION_START_5 >= 58 +# define BOOST_PP_ITERATION_5 58 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 57 && BOOST_PP_ITERATION_START_5 >= 57 +# define BOOST_PP_ITERATION_5 57 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 56 && BOOST_PP_ITERATION_START_5 >= 56 +# define BOOST_PP_ITERATION_5 56 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 55 && BOOST_PP_ITERATION_START_5 >= 55 +# define BOOST_PP_ITERATION_5 55 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 54 && BOOST_PP_ITERATION_START_5 >= 54 +# define BOOST_PP_ITERATION_5 54 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 53 && BOOST_PP_ITERATION_START_5 >= 53 +# define BOOST_PP_ITERATION_5 53 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 52 && BOOST_PP_ITERATION_START_5 >= 52 +# define BOOST_PP_ITERATION_5 52 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 51 && BOOST_PP_ITERATION_START_5 >= 51 +# define BOOST_PP_ITERATION_5 51 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 50 && BOOST_PP_ITERATION_START_5 >= 50 +# define BOOST_PP_ITERATION_5 50 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 49 && BOOST_PP_ITERATION_START_5 >= 49 +# define BOOST_PP_ITERATION_5 49 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 48 && BOOST_PP_ITERATION_START_5 >= 48 +# define BOOST_PP_ITERATION_5 48 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 47 && BOOST_PP_ITERATION_START_5 >= 47 +# define BOOST_PP_ITERATION_5 47 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 46 && BOOST_PP_ITERATION_START_5 >= 46 +# define BOOST_PP_ITERATION_5 46 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 45 && BOOST_PP_ITERATION_START_5 >= 45 +# define BOOST_PP_ITERATION_5 45 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 44 && BOOST_PP_ITERATION_START_5 >= 44 +# define BOOST_PP_ITERATION_5 44 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 43 && BOOST_PP_ITERATION_START_5 >= 43 +# define BOOST_PP_ITERATION_5 43 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 42 && BOOST_PP_ITERATION_START_5 >= 42 +# define BOOST_PP_ITERATION_5 42 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 41 && BOOST_PP_ITERATION_START_5 >= 41 +# define BOOST_PP_ITERATION_5 41 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 40 && BOOST_PP_ITERATION_START_5 >= 40 +# define BOOST_PP_ITERATION_5 40 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 39 && BOOST_PP_ITERATION_START_5 >= 39 +# define BOOST_PP_ITERATION_5 39 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 38 && BOOST_PP_ITERATION_START_5 >= 38 +# define BOOST_PP_ITERATION_5 38 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 37 && BOOST_PP_ITERATION_START_5 >= 37 +# define BOOST_PP_ITERATION_5 37 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 36 && BOOST_PP_ITERATION_START_5 >= 36 +# define BOOST_PP_ITERATION_5 36 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 35 && BOOST_PP_ITERATION_START_5 >= 35 +# define BOOST_PP_ITERATION_5 35 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 34 && BOOST_PP_ITERATION_START_5 >= 34 +# define BOOST_PP_ITERATION_5 34 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 33 && BOOST_PP_ITERATION_START_5 >= 33 +# define BOOST_PP_ITERATION_5 33 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 32 && BOOST_PP_ITERATION_START_5 >= 32 +# define BOOST_PP_ITERATION_5 32 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 31 && BOOST_PP_ITERATION_START_5 >= 31 +# define BOOST_PP_ITERATION_5 31 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 30 && BOOST_PP_ITERATION_START_5 >= 30 +# define BOOST_PP_ITERATION_5 30 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 29 && BOOST_PP_ITERATION_START_5 >= 29 +# define BOOST_PP_ITERATION_5 29 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 28 && BOOST_PP_ITERATION_START_5 >= 28 +# define BOOST_PP_ITERATION_5 28 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 27 && BOOST_PP_ITERATION_START_5 >= 27 +# define BOOST_PP_ITERATION_5 27 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 26 && BOOST_PP_ITERATION_START_5 >= 26 +# define BOOST_PP_ITERATION_5 26 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 25 && BOOST_PP_ITERATION_START_5 >= 25 +# define BOOST_PP_ITERATION_5 25 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 24 && BOOST_PP_ITERATION_START_5 >= 24 +# define BOOST_PP_ITERATION_5 24 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 23 && BOOST_PP_ITERATION_START_5 >= 23 +# define BOOST_PP_ITERATION_5 23 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 22 && BOOST_PP_ITERATION_START_5 >= 22 +# define BOOST_PP_ITERATION_5 22 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 21 && BOOST_PP_ITERATION_START_5 >= 21 +# define BOOST_PP_ITERATION_5 21 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 20 && BOOST_PP_ITERATION_START_5 >= 20 +# define BOOST_PP_ITERATION_5 20 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 19 && BOOST_PP_ITERATION_START_5 >= 19 +# define BOOST_PP_ITERATION_5 19 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 18 && BOOST_PP_ITERATION_START_5 >= 18 +# define BOOST_PP_ITERATION_5 18 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 17 && BOOST_PP_ITERATION_START_5 >= 17 +# define BOOST_PP_ITERATION_5 17 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 16 && BOOST_PP_ITERATION_START_5 >= 16 +# define BOOST_PP_ITERATION_5 16 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 15 && BOOST_PP_ITERATION_START_5 >= 15 +# define BOOST_PP_ITERATION_5 15 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 14 && BOOST_PP_ITERATION_START_5 >= 14 +# define BOOST_PP_ITERATION_5 14 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 13 && BOOST_PP_ITERATION_START_5 >= 13 +# define BOOST_PP_ITERATION_5 13 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 12 && BOOST_PP_ITERATION_START_5 >= 12 +# define BOOST_PP_ITERATION_5 12 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 11 && BOOST_PP_ITERATION_START_5 >= 11 +# define BOOST_PP_ITERATION_5 11 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 10 && BOOST_PP_ITERATION_START_5 >= 10 +# define BOOST_PP_ITERATION_5 10 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 9 && BOOST_PP_ITERATION_START_5 >= 9 +# define BOOST_PP_ITERATION_5 9 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 8 && BOOST_PP_ITERATION_START_5 >= 8 +# define BOOST_PP_ITERATION_5 8 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 7 && BOOST_PP_ITERATION_START_5 >= 7 +# define BOOST_PP_ITERATION_5 7 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 6 && BOOST_PP_ITERATION_START_5 >= 6 +# define BOOST_PP_ITERATION_5 6 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 5 && BOOST_PP_ITERATION_START_5 >= 5 +# define BOOST_PP_ITERATION_5 5 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 4 && BOOST_PP_ITERATION_START_5 >= 4 +# define BOOST_PP_ITERATION_5 4 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 3 && BOOST_PP_ITERATION_START_5 >= 3 +# define BOOST_PP_ITERATION_5 3 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 2 && BOOST_PP_ITERATION_START_5 >= 2 +# define BOOST_PP_ITERATION_5 2 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 1 && BOOST_PP_ITERATION_START_5 >= 1 +# define BOOST_PP_ITERATION_5 1 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif +# if BOOST_PP_ITERATION_FINISH_5 <= 0 && BOOST_PP_ITERATION_START_5 >= 0 +# define BOOST_PP_ITERATION_5 0 +# include BOOST_PP_FILENAME_5 +# undef BOOST_PP_ITERATION_5 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/local.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/local.hpp new file mode 100644 index 0000000..ccddd5e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/local.hpp @@ -0,0 +1,812 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if !defined(BOOST_PP_LOCAL_LIMITS) +# error BOOST_PP_ERROR: local iteration boundaries are not defined +# elif !defined(BOOST_PP_LOCAL_MACRO) +# error BOOST_PP_ERROR: local iteration target macro is not defined +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LOCAL_S BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_LOCAL_LIMITS) +# define BOOST_PP_LOCAL_F BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_LOCAL_LIMITS) +# else +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_LOCAL_LIMITS) +# include +# define BOOST_PP_VALUE BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_LOCAL_LIMITS) +# include +# define BOOST_PP_LOCAL_S BOOST_PP_LOCAL_SE() +# define BOOST_PP_LOCAL_F BOOST_PP_LOCAL_FE() +# endif +# endif +# +# if (BOOST_PP_LOCAL_S) > (BOOST_PP_LOCAL_F) +# include +# else +# if BOOST_PP_LOCAL_C(0) + BOOST_PP_LOCAL_MACRO(0) +# endif +# if BOOST_PP_LOCAL_C(1) + BOOST_PP_LOCAL_MACRO(1) +# endif +# if BOOST_PP_LOCAL_C(2) + BOOST_PP_LOCAL_MACRO(2) +# endif +# if BOOST_PP_LOCAL_C(3) + BOOST_PP_LOCAL_MACRO(3) +# endif +# if BOOST_PP_LOCAL_C(4) + BOOST_PP_LOCAL_MACRO(4) +# endif +# if BOOST_PP_LOCAL_C(5) + BOOST_PP_LOCAL_MACRO(5) +# endif +# if BOOST_PP_LOCAL_C(6) + BOOST_PP_LOCAL_MACRO(6) +# endif +# if BOOST_PP_LOCAL_C(7) + BOOST_PP_LOCAL_MACRO(7) +# endif +# if BOOST_PP_LOCAL_C(8) + BOOST_PP_LOCAL_MACRO(8) +# endif +# if BOOST_PP_LOCAL_C(9) + BOOST_PP_LOCAL_MACRO(9) +# endif +# if BOOST_PP_LOCAL_C(10) + BOOST_PP_LOCAL_MACRO(10) +# endif +# if BOOST_PP_LOCAL_C(11) + BOOST_PP_LOCAL_MACRO(11) +# endif +# if BOOST_PP_LOCAL_C(12) + BOOST_PP_LOCAL_MACRO(12) +# endif +# if BOOST_PP_LOCAL_C(13) + BOOST_PP_LOCAL_MACRO(13) +# endif +# if BOOST_PP_LOCAL_C(14) + BOOST_PP_LOCAL_MACRO(14) +# endif +# if BOOST_PP_LOCAL_C(15) + BOOST_PP_LOCAL_MACRO(15) +# endif +# if BOOST_PP_LOCAL_C(16) + BOOST_PP_LOCAL_MACRO(16) +# endif +# if BOOST_PP_LOCAL_C(17) + BOOST_PP_LOCAL_MACRO(17) +# endif +# if BOOST_PP_LOCAL_C(18) + BOOST_PP_LOCAL_MACRO(18) +# endif +# if BOOST_PP_LOCAL_C(19) + BOOST_PP_LOCAL_MACRO(19) +# endif +# if BOOST_PP_LOCAL_C(20) + BOOST_PP_LOCAL_MACRO(20) +# endif +# if BOOST_PP_LOCAL_C(21) + BOOST_PP_LOCAL_MACRO(21) +# endif +# if BOOST_PP_LOCAL_C(22) + BOOST_PP_LOCAL_MACRO(22) +# endif +# if BOOST_PP_LOCAL_C(23) + BOOST_PP_LOCAL_MACRO(23) +# endif +# if BOOST_PP_LOCAL_C(24) + BOOST_PP_LOCAL_MACRO(24) +# endif +# if BOOST_PP_LOCAL_C(25) + BOOST_PP_LOCAL_MACRO(25) +# endif +# if BOOST_PP_LOCAL_C(26) + BOOST_PP_LOCAL_MACRO(26) +# endif +# if BOOST_PP_LOCAL_C(27) + BOOST_PP_LOCAL_MACRO(27) +# endif +# if BOOST_PP_LOCAL_C(28) + BOOST_PP_LOCAL_MACRO(28) +# endif +# if BOOST_PP_LOCAL_C(29) + BOOST_PP_LOCAL_MACRO(29) +# endif +# if BOOST_PP_LOCAL_C(30) + BOOST_PP_LOCAL_MACRO(30) +# endif +# if BOOST_PP_LOCAL_C(31) + BOOST_PP_LOCAL_MACRO(31) +# endif +# if BOOST_PP_LOCAL_C(32) + BOOST_PP_LOCAL_MACRO(32) +# endif +# if BOOST_PP_LOCAL_C(33) + BOOST_PP_LOCAL_MACRO(33) +# endif +# if BOOST_PP_LOCAL_C(34) + BOOST_PP_LOCAL_MACRO(34) +# endif +# if BOOST_PP_LOCAL_C(35) + BOOST_PP_LOCAL_MACRO(35) +# endif +# if BOOST_PP_LOCAL_C(36) + BOOST_PP_LOCAL_MACRO(36) +# endif +# if BOOST_PP_LOCAL_C(37) + BOOST_PP_LOCAL_MACRO(37) +# endif +# if BOOST_PP_LOCAL_C(38) + BOOST_PP_LOCAL_MACRO(38) +# endif +# if BOOST_PP_LOCAL_C(39) + BOOST_PP_LOCAL_MACRO(39) +# endif +# if BOOST_PP_LOCAL_C(40) + BOOST_PP_LOCAL_MACRO(40) +# endif +# if BOOST_PP_LOCAL_C(41) + BOOST_PP_LOCAL_MACRO(41) +# endif +# if BOOST_PP_LOCAL_C(42) + BOOST_PP_LOCAL_MACRO(42) +# endif +# if BOOST_PP_LOCAL_C(43) + BOOST_PP_LOCAL_MACRO(43) +# endif +# if BOOST_PP_LOCAL_C(44) + BOOST_PP_LOCAL_MACRO(44) +# endif +# if BOOST_PP_LOCAL_C(45) + BOOST_PP_LOCAL_MACRO(45) +# endif +# if BOOST_PP_LOCAL_C(46) + BOOST_PP_LOCAL_MACRO(46) +# endif +# if BOOST_PP_LOCAL_C(47) + BOOST_PP_LOCAL_MACRO(47) +# endif +# if BOOST_PP_LOCAL_C(48) + BOOST_PP_LOCAL_MACRO(48) +# endif +# if BOOST_PP_LOCAL_C(49) + BOOST_PP_LOCAL_MACRO(49) +# endif +# if BOOST_PP_LOCAL_C(50) + BOOST_PP_LOCAL_MACRO(50) +# endif +# if BOOST_PP_LOCAL_C(51) + BOOST_PP_LOCAL_MACRO(51) +# endif +# if BOOST_PP_LOCAL_C(52) + BOOST_PP_LOCAL_MACRO(52) +# endif +# if BOOST_PP_LOCAL_C(53) + BOOST_PP_LOCAL_MACRO(53) +# endif +# if BOOST_PP_LOCAL_C(54) + BOOST_PP_LOCAL_MACRO(54) +# endif +# if BOOST_PP_LOCAL_C(55) + BOOST_PP_LOCAL_MACRO(55) +# endif +# if BOOST_PP_LOCAL_C(56) + BOOST_PP_LOCAL_MACRO(56) +# endif +# if BOOST_PP_LOCAL_C(57) + BOOST_PP_LOCAL_MACRO(57) +# endif +# if BOOST_PP_LOCAL_C(58) + BOOST_PP_LOCAL_MACRO(58) +# endif +# if BOOST_PP_LOCAL_C(59) + BOOST_PP_LOCAL_MACRO(59) +# endif +# if BOOST_PP_LOCAL_C(60) + BOOST_PP_LOCAL_MACRO(60) +# endif +# if BOOST_PP_LOCAL_C(61) + BOOST_PP_LOCAL_MACRO(61) +# endif +# if BOOST_PP_LOCAL_C(62) + BOOST_PP_LOCAL_MACRO(62) +# endif +# if BOOST_PP_LOCAL_C(63) + BOOST_PP_LOCAL_MACRO(63) +# endif +# if BOOST_PP_LOCAL_C(64) + BOOST_PP_LOCAL_MACRO(64) +# endif +# if BOOST_PP_LOCAL_C(65) + BOOST_PP_LOCAL_MACRO(65) +# endif +# if BOOST_PP_LOCAL_C(66) + BOOST_PP_LOCAL_MACRO(66) +# endif +# if BOOST_PP_LOCAL_C(67) + BOOST_PP_LOCAL_MACRO(67) +# endif +# if BOOST_PP_LOCAL_C(68) + BOOST_PP_LOCAL_MACRO(68) +# endif +# if BOOST_PP_LOCAL_C(69) + BOOST_PP_LOCAL_MACRO(69) +# endif +# if BOOST_PP_LOCAL_C(70) + BOOST_PP_LOCAL_MACRO(70) +# endif +# if BOOST_PP_LOCAL_C(71) + BOOST_PP_LOCAL_MACRO(71) +# endif +# if BOOST_PP_LOCAL_C(72) + BOOST_PP_LOCAL_MACRO(72) +# endif +# if BOOST_PP_LOCAL_C(73) + BOOST_PP_LOCAL_MACRO(73) +# endif +# if BOOST_PP_LOCAL_C(74) + BOOST_PP_LOCAL_MACRO(74) +# endif +# if BOOST_PP_LOCAL_C(75) + BOOST_PP_LOCAL_MACRO(75) +# endif +# if BOOST_PP_LOCAL_C(76) + BOOST_PP_LOCAL_MACRO(76) +# endif +# if BOOST_PP_LOCAL_C(77) + BOOST_PP_LOCAL_MACRO(77) +# endif +# if BOOST_PP_LOCAL_C(78) + BOOST_PP_LOCAL_MACRO(78) +# endif +# if BOOST_PP_LOCAL_C(79) + BOOST_PP_LOCAL_MACRO(79) +# endif +# if BOOST_PP_LOCAL_C(80) + BOOST_PP_LOCAL_MACRO(80) +# endif +# if BOOST_PP_LOCAL_C(81) + BOOST_PP_LOCAL_MACRO(81) +# endif +# if BOOST_PP_LOCAL_C(82) + BOOST_PP_LOCAL_MACRO(82) +# endif +# if BOOST_PP_LOCAL_C(83) + BOOST_PP_LOCAL_MACRO(83) +# endif +# if BOOST_PP_LOCAL_C(84) + BOOST_PP_LOCAL_MACRO(84) +# endif +# if BOOST_PP_LOCAL_C(85) + BOOST_PP_LOCAL_MACRO(85) +# endif +# if BOOST_PP_LOCAL_C(86) + BOOST_PP_LOCAL_MACRO(86) +# endif +# if BOOST_PP_LOCAL_C(87) + BOOST_PP_LOCAL_MACRO(87) +# endif +# if BOOST_PP_LOCAL_C(88) + BOOST_PP_LOCAL_MACRO(88) +# endif +# if BOOST_PP_LOCAL_C(89) + BOOST_PP_LOCAL_MACRO(89) +# endif +# if BOOST_PP_LOCAL_C(90) + BOOST_PP_LOCAL_MACRO(90) +# endif +# if BOOST_PP_LOCAL_C(91) + BOOST_PP_LOCAL_MACRO(91) +# endif +# if BOOST_PP_LOCAL_C(92) + BOOST_PP_LOCAL_MACRO(92) +# endif +# if BOOST_PP_LOCAL_C(93) + BOOST_PP_LOCAL_MACRO(93) +# endif +# if BOOST_PP_LOCAL_C(94) + BOOST_PP_LOCAL_MACRO(94) +# endif +# if BOOST_PP_LOCAL_C(95) + BOOST_PP_LOCAL_MACRO(95) +# endif +# if BOOST_PP_LOCAL_C(96) + BOOST_PP_LOCAL_MACRO(96) +# endif +# if BOOST_PP_LOCAL_C(97) + BOOST_PP_LOCAL_MACRO(97) +# endif +# if BOOST_PP_LOCAL_C(98) + BOOST_PP_LOCAL_MACRO(98) +# endif +# if BOOST_PP_LOCAL_C(99) + BOOST_PP_LOCAL_MACRO(99) +# endif +# if BOOST_PP_LOCAL_C(100) + BOOST_PP_LOCAL_MACRO(100) +# endif +# if BOOST_PP_LOCAL_C(101) + BOOST_PP_LOCAL_MACRO(101) +# endif +# if BOOST_PP_LOCAL_C(102) + BOOST_PP_LOCAL_MACRO(102) +# endif +# if BOOST_PP_LOCAL_C(103) + BOOST_PP_LOCAL_MACRO(103) +# endif +# if BOOST_PP_LOCAL_C(104) + BOOST_PP_LOCAL_MACRO(104) +# endif +# if BOOST_PP_LOCAL_C(105) + BOOST_PP_LOCAL_MACRO(105) +# endif +# if BOOST_PP_LOCAL_C(106) + BOOST_PP_LOCAL_MACRO(106) +# endif +# if BOOST_PP_LOCAL_C(107) + BOOST_PP_LOCAL_MACRO(107) +# endif +# if BOOST_PP_LOCAL_C(108) + BOOST_PP_LOCAL_MACRO(108) +# endif +# if BOOST_PP_LOCAL_C(109) + BOOST_PP_LOCAL_MACRO(109) +# endif +# if BOOST_PP_LOCAL_C(110) + BOOST_PP_LOCAL_MACRO(110) +# endif +# if BOOST_PP_LOCAL_C(111) + BOOST_PP_LOCAL_MACRO(111) +# endif +# if BOOST_PP_LOCAL_C(112) + BOOST_PP_LOCAL_MACRO(112) +# endif +# if BOOST_PP_LOCAL_C(113) + BOOST_PP_LOCAL_MACRO(113) +# endif +# if BOOST_PP_LOCAL_C(114) + BOOST_PP_LOCAL_MACRO(114) +# endif +# if BOOST_PP_LOCAL_C(115) + BOOST_PP_LOCAL_MACRO(115) +# endif +# if BOOST_PP_LOCAL_C(116) + BOOST_PP_LOCAL_MACRO(116) +# endif +# if BOOST_PP_LOCAL_C(117) + BOOST_PP_LOCAL_MACRO(117) +# endif +# if BOOST_PP_LOCAL_C(118) + BOOST_PP_LOCAL_MACRO(118) +# endif +# if BOOST_PP_LOCAL_C(119) + BOOST_PP_LOCAL_MACRO(119) +# endif +# if BOOST_PP_LOCAL_C(120) + BOOST_PP_LOCAL_MACRO(120) +# endif +# if BOOST_PP_LOCAL_C(121) + BOOST_PP_LOCAL_MACRO(121) +# endif +# if BOOST_PP_LOCAL_C(122) + BOOST_PP_LOCAL_MACRO(122) +# endif +# if BOOST_PP_LOCAL_C(123) + BOOST_PP_LOCAL_MACRO(123) +# endif +# if BOOST_PP_LOCAL_C(124) + BOOST_PP_LOCAL_MACRO(124) +# endif +# if BOOST_PP_LOCAL_C(125) + BOOST_PP_LOCAL_MACRO(125) +# endif +# if BOOST_PP_LOCAL_C(126) + BOOST_PP_LOCAL_MACRO(126) +# endif +# if BOOST_PP_LOCAL_C(127) + BOOST_PP_LOCAL_MACRO(127) +# endif +# if BOOST_PP_LOCAL_C(128) + BOOST_PP_LOCAL_MACRO(128) +# endif +# if BOOST_PP_LOCAL_C(129) + BOOST_PP_LOCAL_MACRO(129) +# endif +# if BOOST_PP_LOCAL_C(130) + BOOST_PP_LOCAL_MACRO(130) +# endif +# if BOOST_PP_LOCAL_C(131) + BOOST_PP_LOCAL_MACRO(131) +# endif +# if BOOST_PP_LOCAL_C(132) + BOOST_PP_LOCAL_MACRO(132) +# endif +# if BOOST_PP_LOCAL_C(133) + BOOST_PP_LOCAL_MACRO(133) +# endif +# if BOOST_PP_LOCAL_C(134) + BOOST_PP_LOCAL_MACRO(134) +# endif +# if BOOST_PP_LOCAL_C(135) + BOOST_PP_LOCAL_MACRO(135) +# endif +# if BOOST_PP_LOCAL_C(136) + BOOST_PP_LOCAL_MACRO(136) +# endif +# if BOOST_PP_LOCAL_C(137) + BOOST_PP_LOCAL_MACRO(137) +# endif +# if BOOST_PP_LOCAL_C(138) + BOOST_PP_LOCAL_MACRO(138) +# endif +# if BOOST_PP_LOCAL_C(139) + BOOST_PP_LOCAL_MACRO(139) +# endif +# if BOOST_PP_LOCAL_C(140) + BOOST_PP_LOCAL_MACRO(140) +# endif +# if BOOST_PP_LOCAL_C(141) + BOOST_PP_LOCAL_MACRO(141) +# endif +# if BOOST_PP_LOCAL_C(142) + BOOST_PP_LOCAL_MACRO(142) +# endif +# if BOOST_PP_LOCAL_C(143) + BOOST_PP_LOCAL_MACRO(143) +# endif +# if BOOST_PP_LOCAL_C(144) + BOOST_PP_LOCAL_MACRO(144) +# endif +# if BOOST_PP_LOCAL_C(145) + BOOST_PP_LOCAL_MACRO(145) +# endif +# if BOOST_PP_LOCAL_C(146) + BOOST_PP_LOCAL_MACRO(146) +# endif +# if BOOST_PP_LOCAL_C(147) + BOOST_PP_LOCAL_MACRO(147) +# endif +# if BOOST_PP_LOCAL_C(148) + BOOST_PP_LOCAL_MACRO(148) +# endif +# if BOOST_PP_LOCAL_C(149) + BOOST_PP_LOCAL_MACRO(149) +# endif +# if BOOST_PP_LOCAL_C(150) + BOOST_PP_LOCAL_MACRO(150) +# endif +# if BOOST_PP_LOCAL_C(151) + BOOST_PP_LOCAL_MACRO(151) +# endif +# if BOOST_PP_LOCAL_C(152) + BOOST_PP_LOCAL_MACRO(152) +# endif +# if BOOST_PP_LOCAL_C(153) + BOOST_PP_LOCAL_MACRO(153) +# endif +# if BOOST_PP_LOCAL_C(154) + BOOST_PP_LOCAL_MACRO(154) +# endif +# if BOOST_PP_LOCAL_C(155) + BOOST_PP_LOCAL_MACRO(155) +# endif +# if BOOST_PP_LOCAL_C(156) + BOOST_PP_LOCAL_MACRO(156) +# endif +# if BOOST_PP_LOCAL_C(157) + BOOST_PP_LOCAL_MACRO(157) +# endif +# if BOOST_PP_LOCAL_C(158) + BOOST_PP_LOCAL_MACRO(158) +# endif +# if BOOST_PP_LOCAL_C(159) + BOOST_PP_LOCAL_MACRO(159) +# endif +# if BOOST_PP_LOCAL_C(160) + BOOST_PP_LOCAL_MACRO(160) +# endif +# if BOOST_PP_LOCAL_C(161) + BOOST_PP_LOCAL_MACRO(161) +# endif +# if BOOST_PP_LOCAL_C(162) + BOOST_PP_LOCAL_MACRO(162) +# endif +# if BOOST_PP_LOCAL_C(163) + BOOST_PP_LOCAL_MACRO(163) +# endif +# if BOOST_PP_LOCAL_C(164) + BOOST_PP_LOCAL_MACRO(164) +# endif +# if BOOST_PP_LOCAL_C(165) + BOOST_PP_LOCAL_MACRO(165) +# endif +# if BOOST_PP_LOCAL_C(166) + BOOST_PP_LOCAL_MACRO(166) +# endif +# if BOOST_PP_LOCAL_C(167) + BOOST_PP_LOCAL_MACRO(167) +# endif +# if BOOST_PP_LOCAL_C(168) + BOOST_PP_LOCAL_MACRO(168) +# endif +# if BOOST_PP_LOCAL_C(169) + BOOST_PP_LOCAL_MACRO(169) +# endif +# if BOOST_PP_LOCAL_C(170) + BOOST_PP_LOCAL_MACRO(170) +# endif +# if BOOST_PP_LOCAL_C(171) + BOOST_PP_LOCAL_MACRO(171) +# endif +# if BOOST_PP_LOCAL_C(172) + BOOST_PP_LOCAL_MACRO(172) +# endif +# if BOOST_PP_LOCAL_C(173) + BOOST_PP_LOCAL_MACRO(173) +# endif +# if BOOST_PP_LOCAL_C(174) + BOOST_PP_LOCAL_MACRO(174) +# endif +# if BOOST_PP_LOCAL_C(175) + BOOST_PP_LOCAL_MACRO(175) +# endif +# if BOOST_PP_LOCAL_C(176) + BOOST_PP_LOCAL_MACRO(176) +# endif +# if BOOST_PP_LOCAL_C(177) + BOOST_PP_LOCAL_MACRO(177) +# endif +# if BOOST_PP_LOCAL_C(178) + BOOST_PP_LOCAL_MACRO(178) +# endif +# if BOOST_PP_LOCAL_C(179) + BOOST_PP_LOCAL_MACRO(179) +# endif +# if BOOST_PP_LOCAL_C(180) + BOOST_PP_LOCAL_MACRO(180) +# endif +# if BOOST_PP_LOCAL_C(181) + BOOST_PP_LOCAL_MACRO(181) +# endif +# if BOOST_PP_LOCAL_C(182) + BOOST_PP_LOCAL_MACRO(182) +# endif +# if BOOST_PP_LOCAL_C(183) + BOOST_PP_LOCAL_MACRO(183) +# endif +# if BOOST_PP_LOCAL_C(184) + BOOST_PP_LOCAL_MACRO(184) +# endif +# if BOOST_PP_LOCAL_C(185) + BOOST_PP_LOCAL_MACRO(185) +# endif +# if BOOST_PP_LOCAL_C(186) + BOOST_PP_LOCAL_MACRO(186) +# endif +# if BOOST_PP_LOCAL_C(187) + BOOST_PP_LOCAL_MACRO(187) +# endif +# if BOOST_PP_LOCAL_C(188) + BOOST_PP_LOCAL_MACRO(188) +# endif +# if BOOST_PP_LOCAL_C(189) + BOOST_PP_LOCAL_MACRO(189) +# endif +# if BOOST_PP_LOCAL_C(190) + BOOST_PP_LOCAL_MACRO(190) +# endif +# if BOOST_PP_LOCAL_C(191) + BOOST_PP_LOCAL_MACRO(191) +# endif +# if BOOST_PP_LOCAL_C(192) + BOOST_PP_LOCAL_MACRO(192) +# endif +# if BOOST_PP_LOCAL_C(193) + BOOST_PP_LOCAL_MACRO(193) +# endif +# if BOOST_PP_LOCAL_C(194) + BOOST_PP_LOCAL_MACRO(194) +# endif +# if BOOST_PP_LOCAL_C(195) + BOOST_PP_LOCAL_MACRO(195) +# endif +# if BOOST_PP_LOCAL_C(196) + BOOST_PP_LOCAL_MACRO(196) +# endif +# if BOOST_PP_LOCAL_C(197) + BOOST_PP_LOCAL_MACRO(197) +# endif +# if BOOST_PP_LOCAL_C(198) + BOOST_PP_LOCAL_MACRO(198) +# endif +# if BOOST_PP_LOCAL_C(199) + BOOST_PP_LOCAL_MACRO(199) +# endif +# if BOOST_PP_LOCAL_C(200) + BOOST_PP_LOCAL_MACRO(200) +# endif +# if BOOST_PP_LOCAL_C(201) + BOOST_PP_LOCAL_MACRO(201) +# endif +# if BOOST_PP_LOCAL_C(202) + BOOST_PP_LOCAL_MACRO(202) +# endif +# if BOOST_PP_LOCAL_C(203) + BOOST_PP_LOCAL_MACRO(203) +# endif +# if BOOST_PP_LOCAL_C(204) + BOOST_PP_LOCAL_MACRO(204) +# endif +# if BOOST_PP_LOCAL_C(205) + BOOST_PP_LOCAL_MACRO(205) +# endif +# if BOOST_PP_LOCAL_C(206) + BOOST_PP_LOCAL_MACRO(206) +# endif +# if BOOST_PP_LOCAL_C(207) + BOOST_PP_LOCAL_MACRO(207) +# endif +# if BOOST_PP_LOCAL_C(208) + BOOST_PP_LOCAL_MACRO(208) +# endif +# if BOOST_PP_LOCAL_C(209) + BOOST_PP_LOCAL_MACRO(209) +# endif +# if BOOST_PP_LOCAL_C(210) + BOOST_PP_LOCAL_MACRO(210) +# endif +# if BOOST_PP_LOCAL_C(211) + BOOST_PP_LOCAL_MACRO(211) +# endif +# if BOOST_PP_LOCAL_C(212) + BOOST_PP_LOCAL_MACRO(212) +# endif +# if BOOST_PP_LOCAL_C(213) + BOOST_PP_LOCAL_MACRO(213) +# endif +# if BOOST_PP_LOCAL_C(214) + BOOST_PP_LOCAL_MACRO(214) +# endif +# if BOOST_PP_LOCAL_C(215) + BOOST_PP_LOCAL_MACRO(215) +# endif +# if BOOST_PP_LOCAL_C(216) + BOOST_PP_LOCAL_MACRO(216) +# endif +# if BOOST_PP_LOCAL_C(217) + BOOST_PP_LOCAL_MACRO(217) +# endif +# if BOOST_PP_LOCAL_C(218) + BOOST_PP_LOCAL_MACRO(218) +# endif +# if BOOST_PP_LOCAL_C(219) + BOOST_PP_LOCAL_MACRO(219) +# endif +# if BOOST_PP_LOCAL_C(220) + BOOST_PP_LOCAL_MACRO(220) +# endif +# if BOOST_PP_LOCAL_C(221) + BOOST_PP_LOCAL_MACRO(221) +# endif +# if BOOST_PP_LOCAL_C(222) + BOOST_PP_LOCAL_MACRO(222) +# endif +# if BOOST_PP_LOCAL_C(223) + BOOST_PP_LOCAL_MACRO(223) +# endif +# if BOOST_PP_LOCAL_C(224) + BOOST_PP_LOCAL_MACRO(224) +# endif +# if BOOST_PP_LOCAL_C(225) + BOOST_PP_LOCAL_MACRO(225) +# endif +# if BOOST_PP_LOCAL_C(226) + BOOST_PP_LOCAL_MACRO(226) +# endif +# if BOOST_PP_LOCAL_C(227) + BOOST_PP_LOCAL_MACRO(227) +# endif +# if BOOST_PP_LOCAL_C(228) + BOOST_PP_LOCAL_MACRO(228) +# endif +# if BOOST_PP_LOCAL_C(229) + BOOST_PP_LOCAL_MACRO(229) +# endif +# if BOOST_PP_LOCAL_C(230) + BOOST_PP_LOCAL_MACRO(230) +# endif +# if BOOST_PP_LOCAL_C(231) + BOOST_PP_LOCAL_MACRO(231) +# endif +# if BOOST_PP_LOCAL_C(232) + BOOST_PP_LOCAL_MACRO(232) +# endif +# if BOOST_PP_LOCAL_C(233) + BOOST_PP_LOCAL_MACRO(233) +# endif +# if BOOST_PP_LOCAL_C(234) + BOOST_PP_LOCAL_MACRO(234) +# endif +# if BOOST_PP_LOCAL_C(235) + BOOST_PP_LOCAL_MACRO(235) +# endif +# if BOOST_PP_LOCAL_C(236) + BOOST_PP_LOCAL_MACRO(236) +# endif + +# if BOOST_PP_LOCAL_C(237) + BOOST_PP_LOCAL_MACRO(237) +# endif +# if BOOST_PP_LOCAL_C(238) + BOOST_PP_LOCAL_MACRO(238) +# endif +# if BOOST_PP_LOCAL_C(239) + BOOST_PP_LOCAL_MACRO(239) +# endif +# if BOOST_PP_LOCAL_C(240) + BOOST_PP_LOCAL_MACRO(240) +# endif +# if BOOST_PP_LOCAL_C(241) + BOOST_PP_LOCAL_MACRO(241) +# endif +# if BOOST_PP_LOCAL_C(242) + BOOST_PP_LOCAL_MACRO(242) +# endif +# if BOOST_PP_LOCAL_C(243) + BOOST_PP_LOCAL_MACRO(243) +# endif +# if BOOST_PP_LOCAL_C(244) + BOOST_PP_LOCAL_MACRO(244) +# endif +# if BOOST_PP_LOCAL_C(245) + BOOST_PP_LOCAL_MACRO(245) +# endif +# if BOOST_PP_LOCAL_C(246) + BOOST_PP_LOCAL_MACRO(246) +# endif +# if BOOST_PP_LOCAL_C(247) + BOOST_PP_LOCAL_MACRO(247) +# endif +# if BOOST_PP_LOCAL_C(248) + BOOST_PP_LOCAL_MACRO(248) +# endif +# if BOOST_PP_LOCAL_C(249) + BOOST_PP_LOCAL_MACRO(249) +# endif +# if BOOST_PP_LOCAL_C(250) + BOOST_PP_LOCAL_MACRO(250) +# endif +# if BOOST_PP_LOCAL_C(251) + BOOST_PP_LOCAL_MACRO(251) +# endif +# if BOOST_PP_LOCAL_C(252) + BOOST_PP_LOCAL_MACRO(252) +# endif +# if BOOST_PP_LOCAL_C(253) + BOOST_PP_LOCAL_MACRO(253) +# endif +# if BOOST_PP_LOCAL_C(254) + BOOST_PP_LOCAL_MACRO(254) +# endif +# if BOOST_PP_LOCAL_C(255) + BOOST_PP_LOCAL_MACRO(255) +# endif +# if BOOST_PP_LOCAL_C(256) + BOOST_PP_LOCAL_MACRO(256) +# endif +# endif +# +# undef BOOST_PP_LOCAL_LIMITS +# +# undef BOOST_PP_LOCAL_S +# undef BOOST_PP_LOCAL_F +# +# undef BOOST_PP_LOCAL_MACRO diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/rlocal.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/rlocal.hpp new file mode 100644 index 0000000..413afa0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/rlocal.hpp @@ -0,0 +1,782 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if BOOST_PP_LOCAL_R(256) + BOOST_PP_LOCAL_MACRO(256) +# endif +# if BOOST_PP_LOCAL_R(255) + BOOST_PP_LOCAL_MACRO(255) +# endif +# if BOOST_PP_LOCAL_R(254) + BOOST_PP_LOCAL_MACRO(254) +# endif +# if BOOST_PP_LOCAL_R(253) + BOOST_PP_LOCAL_MACRO(253) +# endif +# if BOOST_PP_LOCAL_R(252) + BOOST_PP_LOCAL_MACRO(252) +# endif +# if BOOST_PP_LOCAL_R(251) + BOOST_PP_LOCAL_MACRO(251) +# endif +# if BOOST_PP_LOCAL_R(250) + BOOST_PP_LOCAL_MACRO(250) +# endif +# if BOOST_PP_LOCAL_R(249) + BOOST_PP_LOCAL_MACRO(249) +# endif +# if BOOST_PP_LOCAL_R(248) + BOOST_PP_LOCAL_MACRO(248) +# endif +# if BOOST_PP_LOCAL_R(247) + BOOST_PP_LOCAL_MACRO(247) +# endif +# if BOOST_PP_LOCAL_R(246) + BOOST_PP_LOCAL_MACRO(246) +# endif +# if BOOST_PP_LOCAL_R(245) + BOOST_PP_LOCAL_MACRO(245) +# endif +# if BOOST_PP_LOCAL_R(244) + BOOST_PP_LOCAL_MACRO(244) +# endif +# if BOOST_PP_LOCAL_R(243) + BOOST_PP_LOCAL_MACRO(243) +# endif +# if BOOST_PP_LOCAL_R(242) + BOOST_PP_LOCAL_MACRO(242) +# endif +# if BOOST_PP_LOCAL_R(241) + BOOST_PP_LOCAL_MACRO(241) +# endif +# if BOOST_PP_LOCAL_R(240) + BOOST_PP_LOCAL_MACRO(240) +# endif +# if BOOST_PP_LOCAL_R(239) + BOOST_PP_LOCAL_MACRO(239) +# endif +# if BOOST_PP_LOCAL_R(238) + BOOST_PP_LOCAL_MACRO(238) +# endif +# if BOOST_PP_LOCAL_R(237) + BOOST_PP_LOCAL_MACRO(237) +# endif +# if BOOST_PP_LOCAL_R(236) + BOOST_PP_LOCAL_MACRO(236) +# endif +# if BOOST_PP_LOCAL_R(235) + BOOST_PP_LOCAL_MACRO(235) +# endif +# if BOOST_PP_LOCAL_R(234) + BOOST_PP_LOCAL_MACRO(234) +# endif +# if BOOST_PP_LOCAL_R(233) + BOOST_PP_LOCAL_MACRO(233) +# endif +# if BOOST_PP_LOCAL_R(232) + BOOST_PP_LOCAL_MACRO(232) +# endif +# if BOOST_PP_LOCAL_R(231) + BOOST_PP_LOCAL_MACRO(231) +# endif +# if BOOST_PP_LOCAL_R(230) + BOOST_PP_LOCAL_MACRO(230) +# endif +# if BOOST_PP_LOCAL_R(229) + BOOST_PP_LOCAL_MACRO(229) +# endif +# if BOOST_PP_LOCAL_R(228) + BOOST_PP_LOCAL_MACRO(228) +# endif +# if BOOST_PP_LOCAL_R(227) + BOOST_PP_LOCAL_MACRO(227) +# endif +# if BOOST_PP_LOCAL_R(226) + BOOST_PP_LOCAL_MACRO(226) +# endif +# if BOOST_PP_LOCAL_R(225) + BOOST_PP_LOCAL_MACRO(225) +# endif +# if BOOST_PP_LOCAL_R(224) + BOOST_PP_LOCAL_MACRO(224) +# endif +# if BOOST_PP_LOCAL_R(223) + BOOST_PP_LOCAL_MACRO(223) +# endif +# if BOOST_PP_LOCAL_R(222) + BOOST_PP_LOCAL_MACRO(222) +# endif +# if BOOST_PP_LOCAL_R(221) + BOOST_PP_LOCAL_MACRO(221) +# endif +# if BOOST_PP_LOCAL_R(220) + BOOST_PP_LOCAL_MACRO(220) +# endif +# if BOOST_PP_LOCAL_R(219) + BOOST_PP_LOCAL_MACRO(219) +# endif +# if BOOST_PP_LOCAL_R(218) + BOOST_PP_LOCAL_MACRO(218) +# endif +# if BOOST_PP_LOCAL_R(217) + BOOST_PP_LOCAL_MACRO(217) +# endif +# if BOOST_PP_LOCAL_R(216) + BOOST_PP_LOCAL_MACRO(216) +# endif +# if BOOST_PP_LOCAL_R(215) + BOOST_PP_LOCAL_MACRO(215) +# endif +# if BOOST_PP_LOCAL_R(214) + BOOST_PP_LOCAL_MACRO(214) +# endif +# if BOOST_PP_LOCAL_R(213) + BOOST_PP_LOCAL_MACRO(213) +# endif +# if BOOST_PP_LOCAL_R(212) + BOOST_PP_LOCAL_MACRO(212) +# endif +# if BOOST_PP_LOCAL_R(211) + BOOST_PP_LOCAL_MACRO(211) +# endif +# if BOOST_PP_LOCAL_R(210) + BOOST_PP_LOCAL_MACRO(210) +# endif +# if BOOST_PP_LOCAL_R(209) + BOOST_PP_LOCAL_MACRO(209) +# endif +# if BOOST_PP_LOCAL_R(208) + BOOST_PP_LOCAL_MACRO(208) +# endif +# if BOOST_PP_LOCAL_R(207) + BOOST_PP_LOCAL_MACRO(207) +# endif +# if BOOST_PP_LOCAL_R(206) + BOOST_PP_LOCAL_MACRO(206) +# endif +# if BOOST_PP_LOCAL_R(205) + BOOST_PP_LOCAL_MACRO(205) +# endif +# if BOOST_PP_LOCAL_R(204) + BOOST_PP_LOCAL_MACRO(204) +# endif +# if BOOST_PP_LOCAL_R(203) + BOOST_PP_LOCAL_MACRO(203) +# endif +# if BOOST_PP_LOCAL_R(202) + BOOST_PP_LOCAL_MACRO(202) +# endif +# if BOOST_PP_LOCAL_R(201) + BOOST_PP_LOCAL_MACRO(201) +# endif +# if BOOST_PP_LOCAL_R(200) + BOOST_PP_LOCAL_MACRO(200) +# endif +# if BOOST_PP_LOCAL_R(199) + BOOST_PP_LOCAL_MACRO(199) +# endif +# if BOOST_PP_LOCAL_R(198) + BOOST_PP_LOCAL_MACRO(198) +# endif +# if BOOST_PP_LOCAL_R(197) + BOOST_PP_LOCAL_MACRO(197) +# endif +# if BOOST_PP_LOCAL_R(196) + BOOST_PP_LOCAL_MACRO(196) +# endif +# if BOOST_PP_LOCAL_R(195) + BOOST_PP_LOCAL_MACRO(195) +# endif +# if BOOST_PP_LOCAL_R(194) + BOOST_PP_LOCAL_MACRO(194) +# endif +# if BOOST_PP_LOCAL_R(193) + BOOST_PP_LOCAL_MACRO(193) +# endif +# if BOOST_PP_LOCAL_R(192) + BOOST_PP_LOCAL_MACRO(192) +# endif +# if BOOST_PP_LOCAL_R(191) + BOOST_PP_LOCAL_MACRO(191) +# endif +# if BOOST_PP_LOCAL_R(190) + BOOST_PP_LOCAL_MACRO(190) +# endif +# if BOOST_PP_LOCAL_R(189) + BOOST_PP_LOCAL_MACRO(189) +# endif +# if BOOST_PP_LOCAL_R(188) + BOOST_PP_LOCAL_MACRO(188) +# endif +# if BOOST_PP_LOCAL_R(187) + BOOST_PP_LOCAL_MACRO(187) +# endif +# if BOOST_PP_LOCAL_R(186) + BOOST_PP_LOCAL_MACRO(186) +# endif +# if BOOST_PP_LOCAL_R(185) + BOOST_PP_LOCAL_MACRO(185) +# endif +# if BOOST_PP_LOCAL_R(184) + BOOST_PP_LOCAL_MACRO(184) +# endif +# if BOOST_PP_LOCAL_R(183) + BOOST_PP_LOCAL_MACRO(183) +# endif +# if BOOST_PP_LOCAL_R(182) + BOOST_PP_LOCAL_MACRO(182) +# endif +# if BOOST_PP_LOCAL_R(181) + BOOST_PP_LOCAL_MACRO(181) +# endif +# if BOOST_PP_LOCAL_R(180) + BOOST_PP_LOCAL_MACRO(180) +# endif +# if BOOST_PP_LOCAL_R(179) + BOOST_PP_LOCAL_MACRO(179) +# endif +# if BOOST_PP_LOCAL_R(178) + BOOST_PP_LOCAL_MACRO(178) +# endif +# if BOOST_PP_LOCAL_R(177) + BOOST_PP_LOCAL_MACRO(177) +# endif +# if BOOST_PP_LOCAL_R(176) + BOOST_PP_LOCAL_MACRO(176) +# endif +# if BOOST_PP_LOCAL_R(175) + BOOST_PP_LOCAL_MACRO(175) +# endif +# if BOOST_PP_LOCAL_R(174) + BOOST_PP_LOCAL_MACRO(174) +# endif +# if BOOST_PP_LOCAL_R(173) + BOOST_PP_LOCAL_MACRO(173) +# endif +# if BOOST_PP_LOCAL_R(172) + BOOST_PP_LOCAL_MACRO(172) +# endif +# if BOOST_PP_LOCAL_R(171) + BOOST_PP_LOCAL_MACRO(171) +# endif +# if BOOST_PP_LOCAL_R(170) + BOOST_PP_LOCAL_MACRO(170) +# endif +# if BOOST_PP_LOCAL_R(169) + BOOST_PP_LOCAL_MACRO(169) +# endif +# if BOOST_PP_LOCAL_R(168) + BOOST_PP_LOCAL_MACRO(168) +# endif +# if BOOST_PP_LOCAL_R(167) + BOOST_PP_LOCAL_MACRO(167) +# endif +# if BOOST_PP_LOCAL_R(166) + BOOST_PP_LOCAL_MACRO(166) +# endif +# if BOOST_PP_LOCAL_R(165) + BOOST_PP_LOCAL_MACRO(165) +# endif +# if BOOST_PP_LOCAL_R(164) + BOOST_PP_LOCAL_MACRO(164) +# endif +# if BOOST_PP_LOCAL_R(163) + BOOST_PP_LOCAL_MACRO(163) +# endif +# if BOOST_PP_LOCAL_R(162) + BOOST_PP_LOCAL_MACRO(162) +# endif +# if BOOST_PP_LOCAL_R(161) + BOOST_PP_LOCAL_MACRO(161) +# endif +# if BOOST_PP_LOCAL_R(160) + BOOST_PP_LOCAL_MACRO(160) +# endif +# if BOOST_PP_LOCAL_R(159) + BOOST_PP_LOCAL_MACRO(159) +# endif +# if BOOST_PP_LOCAL_R(158) + BOOST_PP_LOCAL_MACRO(158) +# endif +# if BOOST_PP_LOCAL_R(157) + BOOST_PP_LOCAL_MACRO(157) +# endif +# if BOOST_PP_LOCAL_R(156) + BOOST_PP_LOCAL_MACRO(156) +# endif +# if BOOST_PP_LOCAL_R(155) + BOOST_PP_LOCAL_MACRO(155) +# endif +# if BOOST_PP_LOCAL_R(154) + BOOST_PP_LOCAL_MACRO(154) +# endif +# if BOOST_PP_LOCAL_R(153) + BOOST_PP_LOCAL_MACRO(153) +# endif +# if BOOST_PP_LOCAL_R(152) + BOOST_PP_LOCAL_MACRO(152) +# endif +# if BOOST_PP_LOCAL_R(151) + BOOST_PP_LOCAL_MACRO(151) +# endif +# if BOOST_PP_LOCAL_R(150) + BOOST_PP_LOCAL_MACRO(150) +# endif +# if BOOST_PP_LOCAL_R(149) + BOOST_PP_LOCAL_MACRO(149) +# endif +# if BOOST_PP_LOCAL_R(148) + BOOST_PP_LOCAL_MACRO(148) +# endif +# if BOOST_PP_LOCAL_R(147) + BOOST_PP_LOCAL_MACRO(147) +# endif +# if BOOST_PP_LOCAL_R(146) + BOOST_PP_LOCAL_MACRO(146) +# endif +# if BOOST_PP_LOCAL_R(145) + BOOST_PP_LOCAL_MACRO(145) +# endif +# if BOOST_PP_LOCAL_R(144) + BOOST_PP_LOCAL_MACRO(144) +# endif +# if BOOST_PP_LOCAL_R(143) + BOOST_PP_LOCAL_MACRO(143) +# endif +# if BOOST_PP_LOCAL_R(142) + BOOST_PP_LOCAL_MACRO(142) +# endif +# if BOOST_PP_LOCAL_R(141) + BOOST_PP_LOCAL_MACRO(141) +# endif +# if BOOST_PP_LOCAL_R(140) + BOOST_PP_LOCAL_MACRO(140) +# endif +# if BOOST_PP_LOCAL_R(139) + BOOST_PP_LOCAL_MACRO(139) +# endif +# if BOOST_PP_LOCAL_R(138) + BOOST_PP_LOCAL_MACRO(138) +# endif +# if BOOST_PP_LOCAL_R(137) + BOOST_PP_LOCAL_MACRO(137) +# endif +# if BOOST_PP_LOCAL_R(136) + BOOST_PP_LOCAL_MACRO(136) +# endif +# if BOOST_PP_LOCAL_R(135) + BOOST_PP_LOCAL_MACRO(135) +# endif +# if BOOST_PP_LOCAL_R(134) + BOOST_PP_LOCAL_MACRO(134) +# endif +# if BOOST_PP_LOCAL_R(133) + BOOST_PP_LOCAL_MACRO(133) +# endif +# if BOOST_PP_LOCAL_R(132) + BOOST_PP_LOCAL_MACRO(132) +# endif +# if BOOST_PP_LOCAL_R(131) + BOOST_PP_LOCAL_MACRO(131) +# endif +# if BOOST_PP_LOCAL_R(130) + BOOST_PP_LOCAL_MACRO(130) +# endif +# if BOOST_PP_LOCAL_R(129) + BOOST_PP_LOCAL_MACRO(129) +# endif +# if BOOST_PP_LOCAL_R(128) + BOOST_PP_LOCAL_MACRO(128) +# endif +# if BOOST_PP_LOCAL_R(127) + BOOST_PP_LOCAL_MACRO(127) +# endif +# if BOOST_PP_LOCAL_R(126) + BOOST_PP_LOCAL_MACRO(126) +# endif +# if BOOST_PP_LOCAL_R(125) + BOOST_PP_LOCAL_MACRO(125) +# endif +# if BOOST_PP_LOCAL_R(124) + BOOST_PP_LOCAL_MACRO(124) +# endif +# if BOOST_PP_LOCAL_R(123) + BOOST_PP_LOCAL_MACRO(123) +# endif +# if BOOST_PP_LOCAL_R(122) + BOOST_PP_LOCAL_MACRO(122) +# endif +# if BOOST_PP_LOCAL_R(121) + BOOST_PP_LOCAL_MACRO(121) +# endif +# if BOOST_PP_LOCAL_R(120) + BOOST_PP_LOCAL_MACRO(120) +# endif +# if BOOST_PP_LOCAL_R(119) + BOOST_PP_LOCAL_MACRO(119) +# endif +# if BOOST_PP_LOCAL_R(118) + BOOST_PP_LOCAL_MACRO(118) +# endif +# if BOOST_PP_LOCAL_R(117) + BOOST_PP_LOCAL_MACRO(117) +# endif +# if BOOST_PP_LOCAL_R(116) + BOOST_PP_LOCAL_MACRO(116) +# endif +# if BOOST_PP_LOCAL_R(115) + BOOST_PP_LOCAL_MACRO(115) +# endif +# if BOOST_PP_LOCAL_R(114) + BOOST_PP_LOCAL_MACRO(114) +# endif +# if BOOST_PP_LOCAL_R(113) + BOOST_PP_LOCAL_MACRO(113) +# endif +# if BOOST_PP_LOCAL_R(112) + BOOST_PP_LOCAL_MACRO(112) +# endif +# if BOOST_PP_LOCAL_R(111) + BOOST_PP_LOCAL_MACRO(111) +# endif +# if BOOST_PP_LOCAL_R(110) + BOOST_PP_LOCAL_MACRO(110) +# endif +# if BOOST_PP_LOCAL_R(109) + BOOST_PP_LOCAL_MACRO(109) +# endif +# if BOOST_PP_LOCAL_R(108) + BOOST_PP_LOCAL_MACRO(108) +# endif +# if BOOST_PP_LOCAL_R(107) + BOOST_PP_LOCAL_MACRO(107) +# endif +# if BOOST_PP_LOCAL_R(106) + BOOST_PP_LOCAL_MACRO(106) +# endif +# if BOOST_PP_LOCAL_R(105) + BOOST_PP_LOCAL_MACRO(105) +# endif +# if BOOST_PP_LOCAL_R(104) + BOOST_PP_LOCAL_MACRO(104) +# endif +# if BOOST_PP_LOCAL_R(103) + BOOST_PP_LOCAL_MACRO(103) +# endif +# if BOOST_PP_LOCAL_R(102) + BOOST_PP_LOCAL_MACRO(102) +# endif +# if BOOST_PP_LOCAL_R(101) + BOOST_PP_LOCAL_MACRO(101) +# endif +# if BOOST_PP_LOCAL_R(100) + BOOST_PP_LOCAL_MACRO(100) +# endif +# if BOOST_PP_LOCAL_R(99) + BOOST_PP_LOCAL_MACRO(99) +# endif +# if BOOST_PP_LOCAL_R(98) + BOOST_PP_LOCAL_MACRO(98) +# endif +# if BOOST_PP_LOCAL_R(97) + BOOST_PP_LOCAL_MACRO(97) +# endif +# if BOOST_PP_LOCAL_R(96) + BOOST_PP_LOCAL_MACRO(96) +# endif +# if BOOST_PP_LOCAL_R(95) + BOOST_PP_LOCAL_MACRO(95) +# endif +# if BOOST_PP_LOCAL_R(94) + BOOST_PP_LOCAL_MACRO(94) +# endif +# if BOOST_PP_LOCAL_R(93) + BOOST_PP_LOCAL_MACRO(93) +# endif +# if BOOST_PP_LOCAL_R(92) + BOOST_PP_LOCAL_MACRO(92) +# endif +# if BOOST_PP_LOCAL_R(91) + BOOST_PP_LOCAL_MACRO(91) +# endif +# if BOOST_PP_LOCAL_R(90) + BOOST_PP_LOCAL_MACRO(90) +# endif +# if BOOST_PP_LOCAL_R(89) + BOOST_PP_LOCAL_MACRO(89) +# endif +# if BOOST_PP_LOCAL_R(88) + BOOST_PP_LOCAL_MACRO(88) +# endif +# if BOOST_PP_LOCAL_R(87) + BOOST_PP_LOCAL_MACRO(87) +# endif +# if BOOST_PP_LOCAL_R(86) + BOOST_PP_LOCAL_MACRO(86) +# endif +# if BOOST_PP_LOCAL_R(85) + BOOST_PP_LOCAL_MACRO(85) +# endif +# if BOOST_PP_LOCAL_R(84) + BOOST_PP_LOCAL_MACRO(84) +# endif +# if BOOST_PP_LOCAL_R(83) + BOOST_PP_LOCAL_MACRO(83) +# endif +# if BOOST_PP_LOCAL_R(82) + BOOST_PP_LOCAL_MACRO(82) +# endif +# if BOOST_PP_LOCAL_R(81) + BOOST_PP_LOCAL_MACRO(81) +# endif +# if BOOST_PP_LOCAL_R(80) + BOOST_PP_LOCAL_MACRO(80) +# endif +# if BOOST_PP_LOCAL_R(79) + BOOST_PP_LOCAL_MACRO(79) +# endif +# if BOOST_PP_LOCAL_R(78) + BOOST_PP_LOCAL_MACRO(78) +# endif +# if BOOST_PP_LOCAL_R(77) + BOOST_PP_LOCAL_MACRO(77) +# endif +# if BOOST_PP_LOCAL_R(76) + BOOST_PP_LOCAL_MACRO(76) +# endif +# if BOOST_PP_LOCAL_R(75) + BOOST_PP_LOCAL_MACRO(75) +# endif +# if BOOST_PP_LOCAL_R(74) + BOOST_PP_LOCAL_MACRO(74) +# endif +# if BOOST_PP_LOCAL_R(73) + BOOST_PP_LOCAL_MACRO(73) +# endif +# if BOOST_PP_LOCAL_R(72) + BOOST_PP_LOCAL_MACRO(72) +# endif +# if BOOST_PP_LOCAL_R(71) + BOOST_PP_LOCAL_MACRO(71) +# endif +# if BOOST_PP_LOCAL_R(70) + BOOST_PP_LOCAL_MACRO(70) +# endif +# if BOOST_PP_LOCAL_R(69) + BOOST_PP_LOCAL_MACRO(69) +# endif +# if BOOST_PP_LOCAL_R(68) + BOOST_PP_LOCAL_MACRO(68) +# endif +# if BOOST_PP_LOCAL_R(67) + BOOST_PP_LOCAL_MACRO(67) +# endif +# if BOOST_PP_LOCAL_R(66) + BOOST_PP_LOCAL_MACRO(66) +# endif +# if BOOST_PP_LOCAL_R(65) + BOOST_PP_LOCAL_MACRO(65) +# endif +# if BOOST_PP_LOCAL_R(64) + BOOST_PP_LOCAL_MACRO(64) +# endif +# if BOOST_PP_LOCAL_R(63) + BOOST_PP_LOCAL_MACRO(63) +# endif +# if BOOST_PP_LOCAL_R(62) + BOOST_PP_LOCAL_MACRO(62) +# endif +# if BOOST_PP_LOCAL_R(61) + BOOST_PP_LOCAL_MACRO(61) +# endif +# if BOOST_PP_LOCAL_R(60) + BOOST_PP_LOCAL_MACRO(60) +# endif +# if BOOST_PP_LOCAL_R(59) + BOOST_PP_LOCAL_MACRO(59) +# endif +# if BOOST_PP_LOCAL_R(58) + BOOST_PP_LOCAL_MACRO(58) +# endif +# if BOOST_PP_LOCAL_R(57) + BOOST_PP_LOCAL_MACRO(57) +# endif +# if BOOST_PP_LOCAL_R(56) + BOOST_PP_LOCAL_MACRO(56) +# endif +# if BOOST_PP_LOCAL_R(55) + BOOST_PP_LOCAL_MACRO(55) +# endif +# if BOOST_PP_LOCAL_R(54) + BOOST_PP_LOCAL_MACRO(54) +# endif +# if BOOST_PP_LOCAL_R(53) + BOOST_PP_LOCAL_MACRO(53) +# endif +# if BOOST_PP_LOCAL_R(52) + BOOST_PP_LOCAL_MACRO(52) +# endif +# if BOOST_PP_LOCAL_R(51) + BOOST_PP_LOCAL_MACRO(51) +# endif +# if BOOST_PP_LOCAL_R(50) + BOOST_PP_LOCAL_MACRO(50) +# endif +# if BOOST_PP_LOCAL_R(49) + BOOST_PP_LOCAL_MACRO(49) +# endif +# if BOOST_PP_LOCAL_R(48) + BOOST_PP_LOCAL_MACRO(48) +# endif +# if BOOST_PP_LOCAL_R(47) + BOOST_PP_LOCAL_MACRO(47) +# endif +# if BOOST_PP_LOCAL_R(46) + BOOST_PP_LOCAL_MACRO(46) +# endif +# if BOOST_PP_LOCAL_R(45) + BOOST_PP_LOCAL_MACRO(45) +# endif +# if BOOST_PP_LOCAL_R(44) + BOOST_PP_LOCAL_MACRO(44) +# endif +# if BOOST_PP_LOCAL_R(43) + BOOST_PP_LOCAL_MACRO(43) +# endif +# if BOOST_PP_LOCAL_R(42) + BOOST_PP_LOCAL_MACRO(42) +# endif +# if BOOST_PP_LOCAL_R(41) + BOOST_PP_LOCAL_MACRO(41) +# endif +# if BOOST_PP_LOCAL_R(40) + BOOST_PP_LOCAL_MACRO(40) +# endif +# if BOOST_PP_LOCAL_R(39) + BOOST_PP_LOCAL_MACRO(39) +# endif +# if BOOST_PP_LOCAL_R(38) + BOOST_PP_LOCAL_MACRO(38) +# endif +# if BOOST_PP_LOCAL_R(37) + BOOST_PP_LOCAL_MACRO(37) +# endif +# if BOOST_PP_LOCAL_R(36) + BOOST_PP_LOCAL_MACRO(36) +# endif +# if BOOST_PP_LOCAL_R(35) + BOOST_PP_LOCAL_MACRO(35) +# endif +# if BOOST_PP_LOCAL_R(34) + BOOST_PP_LOCAL_MACRO(34) +# endif +# if BOOST_PP_LOCAL_R(33) + BOOST_PP_LOCAL_MACRO(33) +# endif +# if BOOST_PP_LOCAL_R(32) + BOOST_PP_LOCAL_MACRO(32) +# endif +# if BOOST_PP_LOCAL_R(31) + BOOST_PP_LOCAL_MACRO(31) +# endif +# if BOOST_PP_LOCAL_R(30) + BOOST_PP_LOCAL_MACRO(30) +# endif +# if BOOST_PP_LOCAL_R(29) + BOOST_PP_LOCAL_MACRO(29) +# endif +# if BOOST_PP_LOCAL_R(28) + BOOST_PP_LOCAL_MACRO(28) +# endif +# if BOOST_PP_LOCAL_R(27) + BOOST_PP_LOCAL_MACRO(27) +# endif +# if BOOST_PP_LOCAL_R(26) + BOOST_PP_LOCAL_MACRO(26) +# endif +# if BOOST_PP_LOCAL_R(25) + BOOST_PP_LOCAL_MACRO(25) +# endif +# if BOOST_PP_LOCAL_R(24) + BOOST_PP_LOCAL_MACRO(24) +# endif +# if BOOST_PP_LOCAL_R(23) + BOOST_PP_LOCAL_MACRO(23) +# endif +# if BOOST_PP_LOCAL_R(22) + BOOST_PP_LOCAL_MACRO(22) +# endif +# if BOOST_PP_LOCAL_R(21) + BOOST_PP_LOCAL_MACRO(21) +# endif +# if BOOST_PP_LOCAL_R(20) + BOOST_PP_LOCAL_MACRO(20) +# endif +# if BOOST_PP_LOCAL_R(19) + BOOST_PP_LOCAL_MACRO(19) +# endif +# if BOOST_PP_LOCAL_R(18) + BOOST_PP_LOCAL_MACRO(18) +# endif +# if BOOST_PP_LOCAL_R(17) + BOOST_PP_LOCAL_MACRO(17) +# endif +# if BOOST_PP_LOCAL_R(16) + BOOST_PP_LOCAL_MACRO(16) +# endif +# if BOOST_PP_LOCAL_R(15) + BOOST_PP_LOCAL_MACRO(15) +# endif +# if BOOST_PP_LOCAL_R(14) + BOOST_PP_LOCAL_MACRO(14) +# endif +# if BOOST_PP_LOCAL_R(13) + BOOST_PP_LOCAL_MACRO(13) +# endif +# if BOOST_PP_LOCAL_R(12) + BOOST_PP_LOCAL_MACRO(12) +# endif +# if BOOST_PP_LOCAL_R(11) + BOOST_PP_LOCAL_MACRO(11) +# endif +# if BOOST_PP_LOCAL_R(10) + BOOST_PP_LOCAL_MACRO(10) +# endif +# if BOOST_PP_LOCAL_R(9) + BOOST_PP_LOCAL_MACRO(9) +# endif +# if BOOST_PP_LOCAL_R(8) + BOOST_PP_LOCAL_MACRO(8) +# endif +# if BOOST_PP_LOCAL_R(7) + BOOST_PP_LOCAL_MACRO(7) +# endif +# if BOOST_PP_LOCAL_R(6) + BOOST_PP_LOCAL_MACRO(6) +# endif +# if BOOST_PP_LOCAL_R(5) + BOOST_PP_LOCAL_MACRO(5) +# endif +# if BOOST_PP_LOCAL_R(4) + BOOST_PP_LOCAL_MACRO(4) +# endif +# if BOOST_PP_LOCAL_R(3) + BOOST_PP_LOCAL_MACRO(3) +# endif +# if BOOST_PP_LOCAL_R(2) + BOOST_PP_LOCAL_MACRO(2) +# endif +# if BOOST_PP_LOCAL_R(1) + BOOST_PP_LOCAL_MACRO(1) +# endif +# if BOOST_PP_LOCAL_R(0) + BOOST_PP_LOCAL_MACRO(0) +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/self.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/self.hpp new file mode 100644 index 0000000..757185c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/self.hpp @@ -0,0 +1,21 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# if !defined(BOOST_PP_INDIRECT_SELF) +# error BOOST_PP_ERROR: no indirect file to include +# endif +# +# define BOOST_PP_IS_SELFISH 1 +# +# include BOOST_PP_INDIRECT_SELF +# +# undef BOOST_PP_IS_SELFISH +# undef BOOST_PP_INDIRECT_SELF diff --git a/plugin/wave/include/boost/preprocessor/iteration/detail/start.hpp b/plugin/wave/include/boost/preprocessor/iteration/detail/start.hpp new file mode 100644 index 0000000..cbf0381 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/detail/start.hpp @@ -0,0 +1,99 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_LOCAL_SE +# +# undef BOOST_PP_LOCAL_SE_DIGIT_1 +# undef BOOST_PP_LOCAL_SE_DIGIT_2 +# undef BOOST_PP_LOCAL_SE_DIGIT_3 +# undef BOOST_PP_LOCAL_SE_DIGIT_4 +# undef BOOST_PP_LOCAL_SE_DIGIT_5 +# undef BOOST_PP_LOCAL_SE_DIGIT_6 +# undef BOOST_PP_LOCAL_SE_DIGIT_7 +# undef BOOST_PP_LOCAL_SE_DIGIT_8 +# undef BOOST_PP_LOCAL_SE_DIGIT_9 +# undef BOOST_PP_LOCAL_SE_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_LOCAL_SE_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_LOCAL_SE_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_LOCAL_SE_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_LOCAL_SE_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_LOCAL_SE_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_LOCAL_SE_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_LOCAL_SE_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_LOCAL_SE_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_LOCAL_SE_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_LOCAL_SE_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_LOCAL_SE_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_LOCAL_SE_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_LOCAL_SE_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_LOCAL_SE_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_LOCAL_SE_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_LOCAL_SE_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_LOCAL_SE_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_LOCAL_SE_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_LOCAL_SE_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_LOCAL_SE_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_LOCAL_SE_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_LOCAL_SE_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_LOCAL_SE_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_LOCAL_SE_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_LOCAL_SE_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_LOCAL_SE_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_LOCAL_SE_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_LOCAL_SE_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_LOCAL_SE_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_LOCAL_SE_DIGIT_1 9 +# endif +# +# if BOOST_PP_LOCAL_SE_DIGIT_3 +# define BOOST_PP_LOCAL_SE() BOOST_PP_SLOT_CC_3(BOOST_PP_LOCAL_SE_DIGIT_3, BOOST_PP_LOCAL_SE_DIGIT_2, BOOST_PP_LOCAL_SE_DIGIT_1) +# elif BOOST_PP_LOCAL_SE_DIGIT_2 +# define BOOST_PP_LOCAL_SE() BOOST_PP_SLOT_CC_2(BOOST_PP_LOCAL_SE_DIGIT_2, BOOST_PP_LOCAL_SE_DIGIT_1) +# else +# define BOOST_PP_LOCAL_SE() BOOST_PP_LOCAL_SE_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/iterate.hpp b/plugin/wave/include/boost/preprocessor/iteration/iterate.hpp new file mode 100644 index 0000000..8f861e7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/iterate.hpp @@ -0,0 +1,82 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ITERATION_ITERATE_HPP +# define BOOST_PREPROCESSOR_ITERATION_ITERATE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ITERATION_DEPTH */ +# +# define BOOST_PP_ITERATION_DEPTH() 0 +# +# /* BOOST_PP_ITERATION */ +# +# define BOOST_PP_ITERATION() BOOST_PP_CAT(BOOST_PP_ITERATION_, BOOST_PP_ITERATION_DEPTH()) +# +# /* BOOST_PP_ITERATION_START && BOOST_PP_ITERATION_FINISH */ +# +# define BOOST_PP_ITERATION_START() BOOST_PP_CAT(BOOST_PP_ITERATION_START_, BOOST_PP_ITERATION_DEPTH()) +# define BOOST_PP_ITERATION_FINISH() BOOST_PP_CAT(BOOST_PP_ITERATION_FINISH_, BOOST_PP_ITERATION_DEPTH()) +# +# /* BOOST_PP_ITERATION_FLAGS */ +# +# define BOOST_PP_ITERATION_FLAGS() (BOOST_PP_CAT(BOOST_PP_ITERATION_FLAGS_, BOOST_PP_ITERATION_DEPTH())()) +# +# /* BOOST_PP_FRAME_ITERATION */ +# +# define BOOST_PP_FRAME_ITERATION(i) BOOST_PP_CAT(BOOST_PP_ITERATION_, i) +# +# /* BOOST_PP_FRAME_START && BOOST_PP_FRAME_FINISH */ +# +# define BOOST_PP_FRAME_START(i) BOOST_PP_CAT(BOOST_PP_ITERATION_START_, i) +# define BOOST_PP_FRAME_FINISH(i) BOOST_PP_CAT(BOOST_PP_ITERATION_FINISH_, i) +# +# /* BOOST_PP_FRAME_FLAGS */ +# +# define BOOST_PP_FRAME_FLAGS(i) (BOOST_PP_CAT(BOOST_PP_ITERATION_FLAGS_, i)()) +# +# /* BOOST_PP_RELATIVE_ITERATION */ +# +# define BOOST_PP_RELATIVE_ITERATION(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_) +# +# define BOOST_PP_RELATIVE_0(m) BOOST_PP_CAT(m, BOOST_PP_ITERATION_DEPTH()) +# define BOOST_PP_RELATIVE_1(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH())) +# define BOOST_PP_RELATIVE_2(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH()))) +# define BOOST_PP_RELATIVE_3(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH())))) +# define BOOST_PP_RELATIVE_4(m) BOOST_PP_CAT(m, BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_DEC(BOOST_PP_ITERATION_DEPTH()))))) +# +# /* BOOST_PP_RELATIVE_START && BOOST_PP_RELATIVE_FINISH */ +# +# define BOOST_PP_RELATIVE_START(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_START_) +# define BOOST_PP_RELATIVE_FINISH(i) BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_FINISH_) +# +# /* BOOST_PP_RELATIVE_FLAGS */ +# +# define BOOST_PP_RELATIVE_FLAGS(i) (BOOST_PP_CAT(BOOST_PP_RELATIVE_, i)(BOOST_PP_ITERATION_FLAGS_)()) +# +# /* BOOST_PP_ITERATE */ +# +# define BOOST_PP_ITERATE() BOOST_PP_CAT(BOOST_PP_ITERATE_, BOOST_PP_INC(BOOST_PP_ITERATION_DEPTH())) +# +# define BOOST_PP_ITERATE_1 +# define BOOST_PP_ITERATE_2 +# define BOOST_PP_ITERATE_3 +# define BOOST_PP_ITERATE_4 +# define BOOST_PP_ITERATE_5 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/local.hpp b/plugin/wave/include/boost/preprocessor/iteration/local.hpp new file mode 100644 index 0000000..289fb1a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/local.hpp @@ -0,0 +1,26 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ITERATION_LOCAL_HPP +# define BOOST_PREPROCESSOR_ITERATION_LOCAL_HPP +# +# include +# include +# include +# +# /* BOOST_PP_LOCAL_ITERATE */ +# +# define BOOST_PP_LOCAL_ITERATE() +# +# define BOOST_PP_LOCAL_C(n) (BOOST_PP_LOCAL_S) <= n && (BOOST_PP_LOCAL_F) >= n +# define BOOST_PP_LOCAL_R(n) (BOOST_PP_LOCAL_F) <= n && (BOOST_PP_LOCAL_S) >= n +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/iteration/self.hpp b/plugin/wave/include/boost/preprocessor/iteration/self.hpp new file mode 100644 index 0000000..6e0464c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/iteration/self.hpp @@ -0,0 +1,19 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_ITERATION_SELF_HPP +# define BOOST_PREPROCESSOR_ITERATION_SELF_HPP +# +# /* BOOST_PP_INCLUDE_SELF */ +# +# define BOOST_PP_INCLUDE_SELF() +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/library.hpp b/plugin/wave/include/boost/preprocessor/library.hpp new file mode 100644 index 0000000..3fb03d8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/library.hpp @@ -0,0 +1,37 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIBRARY_HPP +# define BOOST_PREPROCESSOR_LIBRARY_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/limits.hpp b/plugin/wave/include/boost/preprocessor/limits.hpp new file mode 100644 index 0000000..e264cc3 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/limits.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIMITS_HPP +# define BOOST_PREPROCESSOR_LIMITS_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list.hpp b/plugin/wave/include/boost/preprocessor/list.hpp new file mode 100644 index 0000000..ef592c2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list.hpp @@ -0,0 +1,37 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_HPP +# define BOOST_PREPROCESSOR_LIST_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/adt.hpp b/plugin/wave/include/boost/preprocessor/list/adt.hpp new file mode 100644 index 0000000..b4f12ba --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/adt.hpp @@ -0,0 +1,73 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * +# * See http://www.boost.org for most recent version. +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# ifndef BOOST_PREPROCESSOR_LIST_ADT_HPP +# define BOOST_PREPROCESSOR_LIST_ADT_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_CONS */ +# +# define BOOST_PP_LIST_CONS(head, tail) (head, tail) +# +# /* BOOST_PP_LIST_NIL */ +# +# define BOOST_PP_LIST_NIL BOOST_PP_NIL +# +# /* BOOST_PP_LIST_FIRST */ +# +# define BOOST_PP_LIST_FIRST(list) BOOST_PP_LIST_FIRST_D(list) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_FIRST_D(list) BOOST_PP_LIST_FIRST_I list +# else +# define BOOST_PP_LIST_FIRST_D(list) BOOST_PP_LIST_FIRST_I ## list +# endif +# +# define BOOST_PP_LIST_FIRST_I(head, tail) head +# +# /* BOOST_PP_LIST_REST */ +# +# define BOOST_PP_LIST_REST(list) BOOST_PP_LIST_REST_D(list) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_REST_D(list) BOOST_PP_LIST_REST_I list +# else +# define BOOST_PP_LIST_REST_D(list) BOOST_PP_LIST_REST_I ## list +# endif +# +# define BOOST_PP_LIST_REST_I(head, tail) tail +# +# /* BOOST_PP_LIST_IS_CONS */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_BCC() +# define BOOST_PP_LIST_IS_CONS(list) BOOST_PP_LIST_IS_CONS_D(list) +# define BOOST_PP_LIST_IS_CONS_D(list) BOOST_PP_LIST_IS_CONS_ ## list +# define BOOST_PP_LIST_IS_CONS_(head, tail) 1 +# define BOOST_PP_LIST_IS_CONS_BOOST_PP_NIL 0 +# else +# define BOOST_PP_LIST_IS_CONS(list) BOOST_PP_IS_BINARY(list) +# endif +# +# /* BOOST_PP_LIST_IS_NIL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_BCC() +# define BOOST_PP_LIST_IS_NIL(list) BOOST_PP_COMPL(BOOST_PP_IS_BINARY(list)) +# else +# define BOOST_PP_LIST_IS_NIL(list) BOOST_PP_COMPL(BOOST_PP_LIST_IS_CONS(list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/append.hpp b/plugin/wave/include/boost/preprocessor/list/append.hpp new file mode 100644 index 0000000..26e9d74 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/append.hpp @@ -0,0 +1,40 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_APPEND_HPP +# define BOOST_PREPROCESSOR_LIST_APPEND_HPP +# +# include +# include +# +# /* BOOST_PP_LIST_APPEND */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_APPEND(a, b) BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_APPEND_O, b, a) +# else +# define BOOST_PP_LIST_APPEND(a, b) BOOST_PP_LIST_APPEND_I(a, b) +# define BOOST_PP_LIST_APPEND_I(a, b) BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_APPEND_O, b, a) +# endif +# +# define BOOST_PP_LIST_APPEND_O(d, s, x) (x, s) +# +# /* BOOST_PP_LIST_APPEND_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_APPEND_D(d, a, b) BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_APPEND_O, b, a) +# else +# define BOOST_PP_LIST_APPEND_D(d, a, b) BOOST_PP_LIST_APPEND_D_I(d, a, b) +# define BOOST_PP_LIST_APPEND_D_I(d, a, b) BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_APPEND_O, b, a) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/at.hpp b/plugin/wave/include/boost/preprocessor/list/at.hpp new file mode 100644 index 0000000..125669b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/at.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_AT_HPP +# define BOOST_PREPROCESSOR_LIST_AT_HPP +# +# include +# include +# include +# +# /* BOOST_PP_LIST_AT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_AT(list, index) BOOST_PP_LIST_FIRST(BOOST_PP_LIST_REST_N(index, list)) +# else +# define BOOST_PP_LIST_AT(list, index) BOOST_PP_LIST_AT_I(list, index) +# define BOOST_PP_LIST_AT_I(list, index) BOOST_PP_LIST_FIRST(BOOST_PP_LIST_REST_N(index, list)) +# endif +# +# /* BOOST_PP_LIST_AT_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_AT_D(d, list, index) BOOST_PP_LIST_FIRST(BOOST_PP_LIST_REST_N_D(d, index, list)) +# else +# define BOOST_PP_LIST_AT_D(d, list, index) BOOST_PP_LIST_AT_D_I(d, list, index) +# define BOOST_PP_LIST_AT_D_I(d, list, index) BOOST_PP_LIST_FIRST(BOOST_PP_LIST_REST_N_D(d, index, list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/cat.hpp b/plugin/wave/include/boost/preprocessor/list/cat.hpp new file mode 100644 index 0000000..1ef74bf --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/cat.hpp @@ -0,0 +1,42 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_CAT_HPP +# define BOOST_PREPROCESSOR_LIST_CAT_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_CAT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_CAT(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_CAT_O, BOOST_PP_LIST_FIRST(list), BOOST_PP_LIST_REST(list)) +# else +# define BOOST_PP_LIST_CAT(list) BOOST_PP_LIST_CAT_I(list) +# define BOOST_PP_LIST_CAT_I(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_CAT_O, BOOST_PP_LIST_FIRST(list), BOOST_PP_LIST_REST(list)) +# endif +# +# define BOOST_PP_LIST_CAT_O(d, s, x) BOOST_PP_CAT(s, x) +# +# /* BOOST_PP_LIST_CAT_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_CAT_D(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_CAT_O, BOOST_PP_LIST_FIRST(list), BOOST_PP_LIST_REST(list)) +# else +# define BOOST_PP_LIST_CAT_D(d, list) BOOST_PP_LIST_CAT_D_I(d, list) +# define BOOST_PP_LIST_CAT_D_I(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_CAT_O, BOOST_PP_LIST_FIRST(list), BOOST_PP_LIST_REST(list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/detail/dmc/fold_left.hpp b/plugin/wave/include/boost/preprocessor/list/detail/dmc/fold_left.hpp new file mode 100644 index 0000000..844ac5b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/detail/dmc/fold_left.hpp @@ -0,0 +1,279 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_HPP +# define BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_HPP +# +# include +# include +# include +# include +# +# define BOOST_PP_LIST_FOLD_LEFT_1(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_2, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(2, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_2(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_3, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(3, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_3(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_4, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(4, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_4(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_5, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(5, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_5(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_6, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(6, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_6(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_7, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(7, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_7(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_8, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(8, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_8(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_9, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(9, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_9(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_10, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(10, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_10(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_11, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(11, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_11(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_12, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(12, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_12(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_13, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(13, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_13(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_14, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(14, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_14(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_15, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(15, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_15(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_16, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(16, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_16(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_17, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(17, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_17(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_18, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(18, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_18(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_19, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(19, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_19(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_20, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(20, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_20(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_21, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(21, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_21(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_22, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(22, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_22(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_23, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(23, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_23(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_24, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(24, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_24(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_25, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(25, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_25(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_26, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(26, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_26(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_27, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(27, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_27(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_28, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(28, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_28(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_29, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(29, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_29(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_30, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(30, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_30(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_31, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(31, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_31(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_32, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(32, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_32(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_33, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(33, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_33(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_34, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(34, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_34(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_35, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(35, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_35(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_36, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(36, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_36(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_37, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(37, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_37(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_38, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(38, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_38(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_39, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(39, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_39(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_40, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(40, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_40(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_41, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(41, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_41(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_42, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(42, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_42(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_43, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(43, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_43(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_44, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(44, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_44(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_45, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(45, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_45(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_46, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(46, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_46(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_47, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(47, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_47(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_48, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(48, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_48(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_49, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(49, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_49(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_50, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(50, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_50(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_51, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(51, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_51(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_52, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(52, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_52(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_53, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(53, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_53(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_54, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(54, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_54(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_55, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(55, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_55(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_56, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(56, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_56(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_57, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(57, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_57(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_58, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(58, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_58(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_59, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(59, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_59(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_60, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(60, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_60(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_61, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(61, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_61(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_62, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(62, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_62(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_63, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(63, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_63(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_64, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(64, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_64(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_65, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(65, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_65(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_66, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(66, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_66(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_67, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(67, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_67(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_68, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(68, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_68(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_69, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(69, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_69(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_70, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(70, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_70(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_71, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(71, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_71(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_72, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(72, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_72(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_73, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(73, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_73(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_74, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(74, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_74(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_75, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(75, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_75(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_76, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(76, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_76(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_77, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(77, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_77(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_78, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(78, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_78(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_79, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(79, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_79(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_80, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(80, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_80(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_81, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(81, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_81(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_82, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(82, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_82(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_83, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(83, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_83(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_84, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(84, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_84(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_85, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(85, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_85(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_86, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(86, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_86(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_87, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(87, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_87(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_88, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(88, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_88(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_89, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(89, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_89(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_90, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(90, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_90(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_91, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(91, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_91(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_92, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(92, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_92(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_93, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(93, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_93(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_94, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(94, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_94(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_95, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(95, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_95(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_96, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(96, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_96(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_97, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(97, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_97(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_98, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(98, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_98(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_99, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(99, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_99(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_100, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(100, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_100(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_101, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(101, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_101(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_102, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(102, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_102(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_103, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(103, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_103(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_104, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(104, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_104(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_105, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(105, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_105(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_106, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(106, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_106(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_107, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(107, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_107(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_108, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(108, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_108(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_109, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(109, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_109(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_110, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(110, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_110(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_111, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(111, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_111(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_112, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(112, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_112(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_113, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(113, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_113(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_114, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(114, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_114(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_115, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(115, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_115(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_116, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(116, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_116(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_117, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(117, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_117(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_118, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(118, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_118(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_119, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(119, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_119(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_120, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(120, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_120(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_121, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(121, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_121(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_122, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(122, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_122(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_123, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(123, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_123(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_124, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(124, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_124(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_125, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(125, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_125(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_126, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(126, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_126(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_127, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(127, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_127(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_128, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(128, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_128(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_129, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(129, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_129(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_130, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(130, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_130(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_131, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(131, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_131(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_132, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(132, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_132(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_133, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(133, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_133(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_134, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(134, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_134(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_135, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(135, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_135(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_136, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(136, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_136(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_137, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(137, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_137(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_138, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(138, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_138(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_139, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(139, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_139(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_140, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(140, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_140(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_141, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(141, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_141(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_142, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(142, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_142(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_143, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(143, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_143(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_144, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(144, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_144(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_145, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(145, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_145(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_146, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(146, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_146(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_147, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(147, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_147(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_148, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(148, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_148(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_149, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(149, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_149(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_150, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(150, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_150(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_151, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(151, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_151(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_152, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(152, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_152(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_153, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(153, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_153(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_154, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(154, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_154(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_155, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(155, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_155(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_156, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(156, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_156(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_157, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(157, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_157(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_158, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(158, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_158(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_159, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(159, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_159(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_160, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(160, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_160(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_161, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(161, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_161(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_162, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(162, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_162(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_163, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(163, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_163(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_164, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(164, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_164(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_165, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(165, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_165(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_166, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(166, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_166(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_167, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(167, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_167(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_168, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(168, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_168(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_169, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(169, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_169(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_170, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(170, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_170(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_171, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(171, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_171(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_172, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(172, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_172(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_173, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(173, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_173(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_174, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(174, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_174(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_175, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(175, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_175(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_176, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(176, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_176(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_177, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(177, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_177(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_178, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(178, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_178(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_179, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(179, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_179(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_180, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(180, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_180(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_181, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(181, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_181(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_182, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(182, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_182(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_183, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(183, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_183(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_184, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(184, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_184(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_185, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(185, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_185(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_186, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(186, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_186(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_187, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(187, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_187(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_188, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(188, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_188(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_189, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(189, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_189(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_190, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(190, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_190(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_191, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(191, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_191(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_192, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(192, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_192(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_193, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(193, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_193(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_194, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(194, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_194(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_195, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(195, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_195(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_196, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(196, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_196(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_197, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(197, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_197(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_198, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(198, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_198(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_199, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(199, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_199(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_200, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(200, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_200(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_201, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(201, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_201(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_202, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(202, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_202(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_203, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(203, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_203(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_204, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(204, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_204(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_205, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(205, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_205(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_206, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(206, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_206(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_207, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(207, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_207(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_208, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(208, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_208(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_209, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(209, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_209(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_210, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(210, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_210(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_211, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(211, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_211(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_212, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(212, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_212(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_213, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(213, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_213(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_214, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(214, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_214(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_215, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(215, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_215(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_216, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(216, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_216(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_217, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(217, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_217(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_218, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(218, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_218(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_219, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(219, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_219(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_220, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(220, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_220(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_221, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(221, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_221(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_222, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(222, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_222(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_223, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(223, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_223(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_224, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(224, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_224(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_225, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(225, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_225(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_226, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(226, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_226(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_227, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(227, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_227(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_228, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(228, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_228(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_229, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(229, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_229(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_230, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(230, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_230(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_231, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(231, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_231(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_232, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(232, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_232(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_233, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(233, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_233(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_234, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(234, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_234(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_235, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(235, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_235(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_236, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(236, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_236(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_237, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(237, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_237(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_238, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(238, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_238(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_239, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(239, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_239(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_240, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(240, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_240(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_241, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(241, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_241(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_242, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(242, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_242(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_243, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(243, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_243(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_244, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(244, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_244(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_245, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(245, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_245(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_246, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(246, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_246(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_247, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(247, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_247(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_248, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(248, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_248(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_249, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(249, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_249(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_250, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(250, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_250(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_251, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(251, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_251(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_252, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(252, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_252(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_253, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(253, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_253(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_254, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(254, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_254(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_255, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(255, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_255(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_256, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(256, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_256(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_257, BOOST_PP_TUPLE_ELEM_3_1)(o, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, BOOST_PP_TUPLE_ELEM_3_1)(257, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_left.hpp b/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_left.hpp new file mode 100644 index 0000000..ae9524f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_left.hpp @@ -0,0 +1,536 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_DETAIL_EDG_FOLD_LEFT_HPP +# define BOOST_PREPROCESSOR_LIST_DETAIL_EDG_FOLD_LEFT_HPP +# +# include +# include +# include +# include +# +# define BOOST_PP_LIST_FOLD_LEFT_1(o, s, l) BOOST_PP_LIST_FOLD_LEFT_1_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_2(o, s, l) BOOST_PP_LIST_FOLD_LEFT_2_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_3(o, s, l) BOOST_PP_LIST_FOLD_LEFT_3_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_4(o, s, l) BOOST_PP_LIST_FOLD_LEFT_4_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_5(o, s, l) BOOST_PP_LIST_FOLD_LEFT_5_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_6(o, s, l) BOOST_PP_LIST_FOLD_LEFT_6_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_7(o, s, l) BOOST_PP_LIST_FOLD_LEFT_7_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_8(o, s, l) BOOST_PP_LIST_FOLD_LEFT_8_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_9(o, s, l) BOOST_PP_LIST_FOLD_LEFT_9_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_10(o, s, l) BOOST_PP_LIST_FOLD_LEFT_10_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_11(o, s, l) BOOST_PP_LIST_FOLD_LEFT_11_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_12(o, s, l) BOOST_PP_LIST_FOLD_LEFT_12_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_13(o, s, l) BOOST_PP_LIST_FOLD_LEFT_13_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_14(o, s, l) BOOST_PP_LIST_FOLD_LEFT_14_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_15(o, s, l) BOOST_PP_LIST_FOLD_LEFT_15_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_16(o, s, l) BOOST_PP_LIST_FOLD_LEFT_16_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_17(o, s, l) BOOST_PP_LIST_FOLD_LEFT_17_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_18(o, s, l) BOOST_PP_LIST_FOLD_LEFT_18_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_19(o, s, l) BOOST_PP_LIST_FOLD_LEFT_19_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_20(o, s, l) BOOST_PP_LIST_FOLD_LEFT_20_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_21(o, s, l) BOOST_PP_LIST_FOLD_LEFT_21_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_22(o, s, l) BOOST_PP_LIST_FOLD_LEFT_22_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_23(o, s, l) BOOST_PP_LIST_FOLD_LEFT_23_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_24(o, s, l) BOOST_PP_LIST_FOLD_LEFT_24_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_25(o, s, l) BOOST_PP_LIST_FOLD_LEFT_25_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_26(o, s, l) BOOST_PP_LIST_FOLD_LEFT_26_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_27(o, s, l) BOOST_PP_LIST_FOLD_LEFT_27_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_28(o, s, l) BOOST_PP_LIST_FOLD_LEFT_28_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_29(o, s, l) BOOST_PP_LIST_FOLD_LEFT_29_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_30(o, s, l) BOOST_PP_LIST_FOLD_LEFT_30_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_31(o, s, l) BOOST_PP_LIST_FOLD_LEFT_31_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_32(o, s, l) BOOST_PP_LIST_FOLD_LEFT_32_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_33(o, s, l) BOOST_PP_LIST_FOLD_LEFT_33_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_34(o, s, l) BOOST_PP_LIST_FOLD_LEFT_34_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_35(o, s, l) BOOST_PP_LIST_FOLD_LEFT_35_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_36(o, s, l) BOOST_PP_LIST_FOLD_LEFT_36_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_37(o, s, l) BOOST_PP_LIST_FOLD_LEFT_37_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_38(o, s, l) BOOST_PP_LIST_FOLD_LEFT_38_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_39(o, s, l) BOOST_PP_LIST_FOLD_LEFT_39_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_40(o, s, l) BOOST_PP_LIST_FOLD_LEFT_40_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_41(o, s, l) BOOST_PP_LIST_FOLD_LEFT_41_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_42(o, s, l) BOOST_PP_LIST_FOLD_LEFT_42_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_43(o, s, l) BOOST_PP_LIST_FOLD_LEFT_43_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_44(o, s, l) BOOST_PP_LIST_FOLD_LEFT_44_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_45(o, s, l) BOOST_PP_LIST_FOLD_LEFT_45_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_46(o, s, l) BOOST_PP_LIST_FOLD_LEFT_46_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_47(o, s, l) BOOST_PP_LIST_FOLD_LEFT_47_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_48(o, s, l) BOOST_PP_LIST_FOLD_LEFT_48_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_49(o, s, l) BOOST_PP_LIST_FOLD_LEFT_49_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_50(o, s, l) BOOST_PP_LIST_FOLD_LEFT_50_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_51(o, s, l) BOOST_PP_LIST_FOLD_LEFT_51_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_52(o, s, l) BOOST_PP_LIST_FOLD_LEFT_52_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_53(o, s, l) BOOST_PP_LIST_FOLD_LEFT_53_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_54(o, s, l) BOOST_PP_LIST_FOLD_LEFT_54_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_55(o, s, l) BOOST_PP_LIST_FOLD_LEFT_55_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_56(o, s, l) BOOST_PP_LIST_FOLD_LEFT_56_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_57(o, s, l) BOOST_PP_LIST_FOLD_LEFT_57_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_58(o, s, l) BOOST_PP_LIST_FOLD_LEFT_58_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_59(o, s, l) BOOST_PP_LIST_FOLD_LEFT_59_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_60(o, s, l) BOOST_PP_LIST_FOLD_LEFT_60_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_61(o, s, l) BOOST_PP_LIST_FOLD_LEFT_61_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_62(o, s, l) BOOST_PP_LIST_FOLD_LEFT_62_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_63(o, s, l) BOOST_PP_LIST_FOLD_LEFT_63_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_64(o, s, l) BOOST_PP_LIST_FOLD_LEFT_64_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_65(o, s, l) BOOST_PP_LIST_FOLD_LEFT_65_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_66(o, s, l) BOOST_PP_LIST_FOLD_LEFT_66_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_67(o, s, l) BOOST_PP_LIST_FOLD_LEFT_67_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_68(o, s, l) BOOST_PP_LIST_FOLD_LEFT_68_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_69(o, s, l) BOOST_PP_LIST_FOLD_LEFT_69_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_70(o, s, l) BOOST_PP_LIST_FOLD_LEFT_70_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_71(o, s, l) BOOST_PP_LIST_FOLD_LEFT_71_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_72(o, s, l) BOOST_PP_LIST_FOLD_LEFT_72_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_73(o, s, l) BOOST_PP_LIST_FOLD_LEFT_73_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_74(o, s, l) BOOST_PP_LIST_FOLD_LEFT_74_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_75(o, s, l) BOOST_PP_LIST_FOLD_LEFT_75_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_76(o, s, l) BOOST_PP_LIST_FOLD_LEFT_76_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_77(o, s, l) BOOST_PP_LIST_FOLD_LEFT_77_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_78(o, s, l) BOOST_PP_LIST_FOLD_LEFT_78_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_79(o, s, l) BOOST_PP_LIST_FOLD_LEFT_79_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_80(o, s, l) BOOST_PP_LIST_FOLD_LEFT_80_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_81(o, s, l) BOOST_PP_LIST_FOLD_LEFT_81_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_82(o, s, l) BOOST_PP_LIST_FOLD_LEFT_82_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_83(o, s, l) BOOST_PP_LIST_FOLD_LEFT_83_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_84(o, s, l) BOOST_PP_LIST_FOLD_LEFT_84_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_85(o, s, l) BOOST_PP_LIST_FOLD_LEFT_85_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_86(o, s, l) BOOST_PP_LIST_FOLD_LEFT_86_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_87(o, s, l) BOOST_PP_LIST_FOLD_LEFT_87_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_88(o, s, l) BOOST_PP_LIST_FOLD_LEFT_88_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_89(o, s, l) BOOST_PP_LIST_FOLD_LEFT_89_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_90(o, s, l) BOOST_PP_LIST_FOLD_LEFT_90_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_91(o, s, l) BOOST_PP_LIST_FOLD_LEFT_91_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_92(o, s, l) BOOST_PP_LIST_FOLD_LEFT_92_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_93(o, s, l) BOOST_PP_LIST_FOLD_LEFT_93_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_94(o, s, l) BOOST_PP_LIST_FOLD_LEFT_94_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_95(o, s, l) BOOST_PP_LIST_FOLD_LEFT_95_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_96(o, s, l) BOOST_PP_LIST_FOLD_LEFT_96_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_97(o, s, l) BOOST_PP_LIST_FOLD_LEFT_97_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_98(o, s, l) BOOST_PP_LIST_FOLD_LEFT_98_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_99(o, s, l) BOOST_PP_LIST_FOLD_LEFT_99_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_100(o, s, l) BOOST_PP_LIST_FOLD_LEFT_100_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_101(o, s, l) BOOST_PP_LIST_FOLD_LEFT_101_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_102(o, s, l) BOOST_PP_LIST_FOLD_LEFT_102_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_103(o, s, l) BOOST_PP_LIST_FOLD_LEFT_103_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_104(o, s, l) BOOST_PP_LIST_FOLD_LEFT_104_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_105(o, s, l) BOOST_PP_LIST_FOLD_LEFT_105_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_106(o, s, l) BOOST_PP_LIST_FOLD_LEFT_106_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_107(o, s, l) BOOST_PP_LIST_FOLD_LEFT_107_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_108(o, s, l) BOOST_PP_LIST_FOLD_LEFT_108_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_109(o, s, l) BOOST_PP_LIST_FOLD_LEFT_109_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_110(o, s, l) BOOST_PP_LIST_FOLD_LEFT_110_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_111(o, s, l) BOOST_PP_LIST_FOLD_LEFT_111_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_112(o, s, l) BOOST_PP_LIST_FOLD_LEFT_112_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_113(o, s, l) BOOST_PP_LIST_FOLD_LEFT_113_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_114(o, s, l) BOOST_PP_LIST_FOLD_LEFT_114_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_115(o, s, l) BOOST_PP_LIST_FOLD_LEFT_115_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_116(o, s, l) BOOST_PP_LIST_FOLD_LEFT_116_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_117(o, s, l) BOOST_PP_LIST_FOLD_LEFT_117_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_118(o, s, l) BOOST_PP_LIST_FOLD_LEFT_118_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_119(o, s, l) BOOST_PP_LIST_FOLD_LEFT_119_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_120(o, s, l) BOOST_PP_LIST_FOLD_LEFT_120_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_121(o, s, l) BOOST_PP_LIST_FOLD_LEFT_121_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_122(o, s, l) BOOST_PP_LIST_FOLD_LEFT_122_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_123(o, s, l) BOOST_PP_LIST_FOLD_LEFT_123_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_124(o, s, l) BOOST_PP_LIST_FOLD_LEFT_124_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_125(o, s, l) BOOST_PP_LIST_FOLD_LEFT_125_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_126(o, s, l) BOOST_PP_LIST_FOLD_LEFT_126_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_127(o, s, l) BOOST_PP_LIST_FOLD_LEFT_127_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_128(o, s, l) BOOST_PP_LIST_FOLD_LEFT_128_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_129(o, s, l) BOOST_PP_LIST_FOLD_LEFT_129_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_130(o, s, l) BOOST_PP_LIST_FOLD_LEFT_130_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_131(o, s, l) BOOST_PP_LIST_FOLD_LEFT_131_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_132(o, s, l) BOOST_PP_LIST_FOLD_LEFT_132_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_133(o, s, l) BOOST_PP_LIST_FOLD_LEFT_133_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_134(o, s, l) BOOST_PP_LIST_FOLD_LEFT_134_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_135(o, s, l) BOOST_PP_LIST_FOLD_LEFT_135_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_136(o, s, l) BOOST_PP_LIST_FOLD_LEFT_136_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_137(o, s, l) BOOST_PP_LIST_FOLD_LEFT_137_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_138(o, s, l) BOOST_PP_LIST_FOLD_LEFT_138_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_139(o, s, l) BOOST_PP_LIST_FOLD_LEFT_139_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_140(o, s, l) BOOST_PP_LIST_FOLD_LEFT_140_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_141(o, s, l) BOOST_PP_LIST_FOLD_LEFT_141_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_142(o, s, l) BOOST_PP_LIST_FOLD_LEFT_142_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_143(o, s, l) BOOST_PP_LIST_FOLD_LEFT_143_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_144(o, s, l) BOOST_PP_LIST_FOLD_LEFT_144_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_145(o, s, l) BOOST_PP_LIST_FOLD_LEFT_145_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_146(o, s, l) BOOST_PP_LIST_FOLD_LEFT_146_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_147(o, s, l) BOOST_PP_LIST_FOLD_LEFT_147_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_148(o, s, l) BOOST_PP_LIST_FOLD_LEFT_148_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_149(o, s, l) BOOST_PP_LIST_FOLD_LEFT_149_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_150(o, s, l) BOOST_PP_LIST_FOLD_LEFT_150_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_151(o, s, l) BOOST_PP_LIST_FOLD_LEFT_151_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_152(o, s, l) BOOST_PP_LIST_FOLD_LEFT_152_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_153(o, s, l) BOOST_PP_LIST_FOLD_LEFT_153_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_154(o, s, l) BOOST_PP_LIST_FOLD_LEFT_154_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_155(o, s, l) BOOST_PP_LIST_FOLD_LEFT_155_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_156(o, s, l) BOOST_PP_LIST_FOLD_LEFT_156_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_157(o, s, l) BOOST_PP_LIST_FOLD_LEFT_157_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_158(o, s, l) BOOST_PP_LIST_FOLD_LEFT_158_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_159(o, s, l) BOOST_PP_LIST_FOLD_LEFT_159_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_160(o, s, l) BOOST_PP_LIST_FOLD_LEFT_160_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_161(o, s, l) BOOST_PP_LIST_FOLD_LEFT_161_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_162(o, s, l) BOOST_PP_LIST_FOLD_LEFT_162_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_163(o, s, l) BOOST_PP_LIST_FOLD_LEFT_163_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_164(o, s, l) BOOST_PP_LIST_FOLD_LEFT_164_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_165(o, s, l) BOOST_PP_LIST_FOLD_LEFT_165_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_166(o, s, l) BOOST_PP_LIST_FOLD_LEFT_166_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_167(o, s, l) BOOST_PP_LIST_FOLD_LEFT_167_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_168(o, s, l) BOOST_PP_LIST_FOLD_LEFT_168_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_169(o, s, l) BOOST_PP_LIST_FOLD_LEFT_169_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_170(o, s, l) BOOST_PP_LIST_FOLD_LEFT_170_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_171(o, s, l) BOOST_PP_LIST_FOLD_LEFT_171_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_172(o, s, l) BOOST_PP_LIST_FOLD_LEFT_172_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_173(o, s, l) BOOST_PP_LIST_FOLD_LEFT_173_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_174(o, s, l) BOOST_PP_LIST_FOLD_LEFT_174_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_175(o, s, l) BOOST_PP_LIST_FOLD_LEFT_175_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_176(o, s, l) BOOST_PP_LIST_FOLD_LEFT_176_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_177(o, s, l) BOOST_PP_LIST_FOLD_LEFT_177_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_178(o, s, l) BOOST_PP_LIST_FOLD_LEFT_178_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_179(o, s, l) BOOST_PP_LIST_FOLD_LEFT_179_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_180(o, s, l) BOOST_PP_LIST_FOLD_LEFT_180_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_181(o, s, l) BOOST_PP_LIST_FOLD_LEFT_181_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_182(o, s, l) BOOST_PP_LIST_FOLD_LEFT_182_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_183(o, s, l) BOOST_PP_LIST_FOLD_LEFT_183_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_184(o, s, l) BOOST_PP_LIST_FOLD_LEFT_184_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_185(o, s, l) BOOST_PP_LIST_FOLD_LEFT_185_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_186(o, s, l) BOOST_PP_LIST_FOLD_LEFT_186_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_187(o, s, l) BOOST_PP_LIST_FOLD_LEFT_187_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_188(o, s, l) BOOST_PP_LIST_FOLD_LEFT_188_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_189(o, s, l) BOOST_PP_LIST_FOLD_LEFT_189_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_190(o, s, l) BOOST_PP_LIST_FOLD_LEFT_190_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_191(o, s, l) BOOST_PP_LIST_FOLD_LEFT_191_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_192(o, s, l) BOOST_PP_LIST_FOLD_LEFT_192_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_193(o, s, l) BOOST_PP_LIST_FOLD_LEFT_193_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_194(o, s, l) BOOST_PP_LIST_FOLD_LEFT_194_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_195(o, s, l) BOOST_PP_LIST_FOLD_LEFT_195_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_196(o, s, l) BOOST_PP_LIST_FOLD_LEFT_196_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_197(o, s, l) BOOST_PP_LIST_FOLD_LEFT_197_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_198(o, s, l) BOOST_PP_LIST_FOLD_LEFT_198_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_199(o, s, l) BOOST_PP_LIST_FOLD_LEFT_199_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_200(o, s, l) BOOST_PP_LIST_FOLD_LEFT_200_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_201(o, s, l) BOOST_PP_LIST_FOLD_LEFT_201_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_202(o, s, l) BOOST_PP_LIST_FOLD_LEFT_202_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_203(o, s, l) BOOST_PP_LIST_FOLD_LEFT_203_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_204(o, s, l) BOOST_PP_LIST_FOLD_LEFT_204_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_205(o, s, l) BOOST_PP_LIST_FOLD_LEFT_205_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_206(o, s, l) BOOST_PP_LIST_FOLD_LEFT_206_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_207(o, s, l) BOOST_PP_LIST_FOLD_LEFT_207_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_208(o, s, l) BOOST_PP_LIST_FOLD_LEFT_208_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_209(o, s, l) BOOST_PP_LIST_FOLD_LEFT_209_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_210(o, s, l) BOOST_PP_LIST_FOLD_LEFT_210_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_211(o, s, l) BOOST_PP_LIST_FOLD_LEFT_211_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_212(o, s, l) BOOST_PP_LIST_FOLD_LEFT_212_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_213(o, s, l) BOOST_PP_LIST_FOLD_LEFT_213_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_214(o, s, l) BOOST_PP_LIST_FOLD_LEFT_214_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_215(o, s, l) BOOST_PP_LIST_FOLD_LEFT_215_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_216(o, s, l) BOOST_PP_LIST_FOLD_LEFT_216_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_217(o, s, l) BOOST_PP_LIST_FOLD_LEFT_217_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_218(o, s, l) BOOST_PP_LIST_FOLD_LEFT_218_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_219(o, s, l) BOOST_PP_LIST_FOLD_LEFT_219_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_220(o, s, l) BOOST_PP_LIST_FOLD_LEFT_220_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_221(o, s, l) BOOST_PP_LIST_FOLD_LEFT_221_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_222(o, s, l) BOOST_PP_LIST_FOLD_LEFT_222_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_223(o, s, l) BOOST_PP_LIST_FOLD_LEFT_223_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_224(o, s, l) BOOST_PP_LIST_FOLD_LEFT_224_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_225(o, s, l) BOOST_PP_LIST_FOLD_LEFT_225_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_226(o, s, l) BOOST_PP_LIST_FOLD_LEFT_226_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_227(o, s, l) BOOST_PP_LIST_FOLD_LEFT_227_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_228(o, s, l) BOOST_PP_LIST_FOLD_LEFT_228_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_229(o, s, l) BOOST_PP_LIST_FOLD_LEFT_229_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_230(o, s, l) BOOST_PP_LIST_FOLD_LEFT_230_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_231(o, s, l) BOOST_PP_LIST_FOLD_LEFT_231_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_232(o, s, l) BOOST_PP_LIST_FOLD_LEFT_232_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_233(o, s, l) BOOST_PP_LIST_FOLD_LEFT_233_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_234(o, s, l) BOOST_PP_LIST_FOLD_LEFT_234_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_235(o, s, l) BOOST_PP_LIST_FOLD_LEFT_235_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_236(o, s, l) BOOST_PP_LIST_FOLD_LEFT_236_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_237(o, s, l) BOOST_PP_LIST_FOLD_LEFT_237_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_238(o, s, l) BOOST_PP_LIST_FOLD_LEFT_238_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_239(o, s, l) BOOST_PP_LIST_FOLD_LEFT_239_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_240(o, s, l) BOOST_PP_LIST_FOLD_LEFT_240_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_241(o, s, l) BOOST_PP_LIST_FOLD_LEFT_241_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_242(o, s, l) BOOST_PP_LIST_FOLD_LEFT_242_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_243(o, s, l) BOOST_PP_LIST_FOLD_LEFT_243_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_244(o, s, l) BOOST_PP_LIST_FOLD_LEFT_244_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_245(o, s, l) BOOST_PP_LIST_FOLD_LEFT_245_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_246(o, s, l) BOOST_PP_LIST_FOLD_LEFT_246_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_247(o, s, l) BOOST_PP_LIST_FOLD_LEFT_247_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_248(o, s, l) BOOST_PP_LIST_FOLD_LEFT_248_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_249(o, s, l) BOOST_PP_LIST_FOLD_LEFT_249_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_250(o, s, l) BOOST_PP_LIST_FOLD_LEFT_250_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_251(o, s, l) BOOST_PP_LIST_FOLD_LEFT_251_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_252(o, s, l) BOOST_PP_LIST_FOLD_LEFT_252_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_253(o, s, l) BOOST_PP_LIST_FOLD_LEFT_253_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_254(o, s, l) BOOST_PP_LIST_FOLD_LEFT_254_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_255(o, s, l) BOOST_PP_LIST_FOLD_LEFT_255_D(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_256(o, s, l) BOOST_PP_LIST_FOLD_LEFT_256_D(o, s, l) +# +# define BOOST_PP_LIST_FOLD_LEFT_1_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_2, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(2, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_2_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_3, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(3, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_3_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_4, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(4, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_4_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_5, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(5, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_5_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_6, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(6, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_6_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_7, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(7, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_7_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_8, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(8, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_8_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_9, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(9, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_9_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_10, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(10, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_10_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_11, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(11, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_11_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_12, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(12, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_12_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_13, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(13, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_13_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_14, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(14, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_14_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_15, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(15, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_15_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_16, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(16, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_16_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_17, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(17, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_17_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_18, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(18, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_18_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_19, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(19, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_19_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_20, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(20, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_20_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_21, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(21, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_21_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_22, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(22, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_22_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_23, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(23, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_23_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_24, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(24, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_24_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_25, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(25, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_25_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_26, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(26, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_26_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_27, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(27, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_27_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_28, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(28, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_28_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_29, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(29, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_29_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_30, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(30, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_30_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_31, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(31, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_31_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_32, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(32, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_32_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_33, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(33, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_33_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_34, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(34, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_34_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_35, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(35, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_35_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_36, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(36, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_36_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_37, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(37, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_37_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_38, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(38, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_38_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_39, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(39, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_39_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_40, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(40, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_40_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_41, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(41, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_41_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_42, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(42, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_42_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_43, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(43, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_43_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_44, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(44, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_44_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_45, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(45, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_45_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_46, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(46, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_46_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_47, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(47, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_47_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_48, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(48, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_48_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_49, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(49, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_49_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_50, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(50, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_50_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_51, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(51, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_51_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_52, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(52, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_52_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_53, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(53, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_53_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_54, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(54, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_54_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_55, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(55, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_55_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_56, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(56, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_56_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_57, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(57, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_57_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_58, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(58, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_58_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_59, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(59, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_59_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_60, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(60, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_60_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_61, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(61, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_61_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_62, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(62, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_62_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_63, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(63, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_63_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_64, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(64, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_64_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_65, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(65, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_65_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_66, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(66, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_66_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_67, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(67, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_67_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_68, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(68, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_68_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_69, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(69, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_69_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_70, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(70, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_70_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_71, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(71, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_71_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_72, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(72, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_72_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_73, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(73, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_73_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_74, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(74, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_74_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_75, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(75, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_75_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_76, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(76, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_76_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_77, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(77, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_77_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_78, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(78, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_78_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_79, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(79, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_79_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_80, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(80, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_80_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_81, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(81, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_81_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_82, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(82, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_82_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_83, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(83, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_83_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_84, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(84, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_84_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_85, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(85, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_85_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_86, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(86, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_86_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_87, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(87, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_87_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_88, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(88, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_88_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_89, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(89, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_89_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_90, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(90, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_90_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_91, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(91, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_91_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_92, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(92, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_92_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_93, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(93, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_93_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_94, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(94, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_94_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_95, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(95, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_95_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_96, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(96, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_96_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_97, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(97, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_97_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_98, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(98, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_98_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_99, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(99, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_99_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_100, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(100, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_100_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_101, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(101, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_101_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_102, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(102, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_102_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_103, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(103, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_103_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_104, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(104, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_104_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_105, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(105, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_105_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_106, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(106, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_106_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_107, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(107, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_107_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_108, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(108, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_108_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_109, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(109, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_109_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_110, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(110, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_110_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_111, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(111, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_111_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_112, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(112, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_112_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_113, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(113, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_113_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_114, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(114, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_114_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_115, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(115, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_115_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_116, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(116, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_116_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_117, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(117, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_117_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_118, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(118, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_118_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_119, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(119, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_119_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_120, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(120, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_120_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_121, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(121, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_121_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_122, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(122, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_122_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_123, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(123, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_123_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_124, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(124, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_124_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_125, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(125, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_125_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_126, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(126, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_126_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_127, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(127, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_127_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_128, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(128, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_128_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_129, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(129, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_129_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_130, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(130, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_130_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_131, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(131, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_131_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_132, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(132, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_132_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_133, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(133, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_133_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_134, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(134, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_134_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_135, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(135, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_135_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_136, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(136, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_136_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_137, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(137, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_137_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_138, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(138, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_138_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_139, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(139, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_139_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_140, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(140, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_140_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_141, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(141, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_141_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_142, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(142, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_142_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_143, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(143, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_143_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_144, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(144, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_144_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_145, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(145, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_145_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_146, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(146, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_146_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_147, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(147, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_147_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_148, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(148, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_148_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_149, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(149, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_149_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_150, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(150, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_150_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_151, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(151, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_151_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_152, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(152, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_152_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_153, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(153, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_153_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_154, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(154, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_154_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_155, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(155, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_155_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_156, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(156, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_156_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_157, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(157, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_157_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_158, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(158, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_158_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_159, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(159, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_159_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_160, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(160, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_160_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_161, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(161, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_161_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_162, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(162, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_162_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_163, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(163, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_163_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_164, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(164, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_164_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_165, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(165, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_165_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_166, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(166, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_166_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_167, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(167, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_167_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_168, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(168, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_168_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_169, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(169, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_169_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_170, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(170, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_170_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_171, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(171, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_171_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_172, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(172, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_172_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_173, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(173, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_173_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_174, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(174, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_174_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_175, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(175, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_175_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_176, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(176, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_176_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_177, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(177, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_177_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_178, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(178, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_178_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_179, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(179, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_179_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_180, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(180, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_180_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_181, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(181, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_181_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_182, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(182, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_182_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_183, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(183, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_183_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_184, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(184, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_184_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_185, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(185, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_185_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_186, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(186, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_186_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_187, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(187, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_187_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_188, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(188, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_188_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_189, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(189, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_189_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_190, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(190, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_190_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_191, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(191, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_191_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_192, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(192, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_192_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_193, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(193, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_193_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_194, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(194, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_194_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_195, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(195, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_195_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_196, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(196, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_196_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_197, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(197, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_197_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_198, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(198, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_198_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_199, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(199, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_199_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_200, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(200, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_200_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_201, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(201, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_201_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_202, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(202, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_202_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_203, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(203, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_203_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_204, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(204, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_204_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_205, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(205, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_205_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_206, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(206, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_206_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_207, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(207, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_207_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_208, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(208, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_208_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_209, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(209, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_209_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_210, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(210, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_210_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_211, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(211, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_211_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_212, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(212, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_212_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_213, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(213, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_213_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_214, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(214, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_214_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_215, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(215, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_215_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_216, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(216, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_216_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_217, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(217, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_217_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_218, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(218, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_218_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_219, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(219, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_219_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_220, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(220, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_220_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_221, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(221, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_221_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_222, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(222, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_222_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_223, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(223, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_223_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_224, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(224, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_224_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_225, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(225, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_225_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_226, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(226, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_226_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_227, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(227, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_227_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_228, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(228, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_228_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_229, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(229, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_229_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_230, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(230, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_230_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_231, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(231, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_231_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_232, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(232, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_232_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_233, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(233, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_233_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_234, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(234, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_234_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_235, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(235, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_235_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_236, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(236, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_236_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_237, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(237, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_237_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_238, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(238, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_238_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_239, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(239, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_239_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_240, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(240, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_240_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_241, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(241, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_241_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_242, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(242, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_242_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_243, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(243, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_243_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_244, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(244, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_244_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_245, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(245, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_245_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_246, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(246, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_246_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_247, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(247, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_247_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_248, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(248, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_248_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_249, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(249, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_249_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_250, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(250, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_250_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_251, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(251, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_251_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_252, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(252, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_252_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_253, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(253, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_253_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_254, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(254, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_254_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_255, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(255, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_255_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_256, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(256, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_256_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_257, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(257, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_right.hpp b/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_right.hpp new file mode 100644 index 0000000..d372d2e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/detail/edg/fold_right.hpp @@ -0,0 +1,794 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_DETAIL_EDG_FOLD_RIGHT_HPP +# define BOOST_PREPROCESSOR_LIST_DETAIL_EDG_FOLD_RIGHT_HPP +# +# include +# include +# include +# +# define BOOST_PP_LIST_FOLD_RIGHT_1(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_1_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_2(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_2_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_3(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_3_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_4(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_4_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_5(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_5_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_6(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_6_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_7(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_7_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_8(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_8_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_9(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_9_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_10(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_10_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_11(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_11_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_12(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_12_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_13(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_13_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_14(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_14_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_15(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_15_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_16(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_16_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_17(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_17_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_18(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_18_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_19(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_19_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_20(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_20_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_21(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_21_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_22(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_22_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_23(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_23_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_24(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_24_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_25(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_25_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_26(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_26_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_27(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_27_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_28(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_28_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_29(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_29_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_30(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_30_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_31(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_31_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_32(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_32_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_33(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_33_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_34(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_34_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_35(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_35_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_36(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_36_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_37(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_37_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_38(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_38_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_39(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_39_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_40(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_40_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_41(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_41_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_42(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_42_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_43(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_43_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_44(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_44_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_45(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_45_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_46(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_46_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_47(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_47_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_48(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_48_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_49(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_49_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_50(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_50_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_51(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_51_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_52(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_52_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_53(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_53_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_54(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_54_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_55(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_55_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_56(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_56_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_57(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_57_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_58(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_58_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_59(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_59_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_60(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_60_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_61(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_61_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_62(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_62_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_63(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_63_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_64(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_64_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_65(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_65_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_66(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_66_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_67(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_67_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_68(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_68_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_69(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_69_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_70(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_70_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_71(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_71_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_72(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_72_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_73(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_73_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_74(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_74_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_75(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_75_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_76(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_76_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_77(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_77_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_78(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_78_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_79(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_79_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_80(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_80_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_81(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_81_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_82(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_82_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_83(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_83_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_84(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_84_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_85(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_85_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_86(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_86_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_87(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_87_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_88(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_88_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_89(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_89_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_90(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_90_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_91(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_91_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_92(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_92_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_93(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_93_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_94(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_94_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_95(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_95_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_96(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_96_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_97(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_97_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_98(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_98_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_99(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_99_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_100(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_100_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_101(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_101_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_102(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_102_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_103(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_103_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_104(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_104_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_105(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_105_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_106(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_106_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_107(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_107_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_108(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_108_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_109(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_109_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_110(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_110_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_111(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_111_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_112(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_112_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_113(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_113_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_114(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_114_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_115(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_115_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_116(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_116_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_117(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_117_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_118(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_118_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_119(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_119_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_120(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_120_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_121(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_121_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_122(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_122_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_123(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_123_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_124(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_124_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_125(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_125_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_126(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_126_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_127(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_127_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_128(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_128_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_129(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_129_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_130(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_130_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_131(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_131_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_132(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_132_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_133(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_133_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_134(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_134_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_135(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_135_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_136(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_136_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_137(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_137_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_138(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_138_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_139(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_139_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_140(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_140_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_141(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_141_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_142(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_142_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_143(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_143_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_144(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_144_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_145(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_145_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_146(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_146_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_147(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_147_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_148(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_148_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_149(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_149_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_150(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_150_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_151(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_151_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_152(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_152_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_153(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_153_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_154(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_154_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_155(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_155_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_156(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_156_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_157(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_157_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_158(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_158_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_159(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_159_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_160(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_160_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_161(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_161_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_162(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_162_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_163(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_163_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_164(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_164_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_165(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_165_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_166(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_166_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_167(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_167_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_168(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_168_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_169(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_169_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_170(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_170_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_171(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_171_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_172(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_172_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_173(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_173_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_174(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_174_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_175(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_175_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_176(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_176_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_177(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_177_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_178(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_178_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_179(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_179_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_180(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_180_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_181(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_181_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_182(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_182_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_183(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_183_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_184(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_184_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_185(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_185_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_186(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_186_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_187(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_187_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_188(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_188_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_189(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_189_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_190(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_190_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_191(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_191_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_192(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_192_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_193(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_193_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_194(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_194_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_195(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_195_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_196(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_196_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_197(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_197_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_198(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_198_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_199(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_199_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_200(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_200_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_201(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_201_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_202(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_202_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_203(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_203_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_204(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_204_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_205(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_205_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_206(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_206_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_207(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_207_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_208(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_208_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_209(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_209_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_210(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_210_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_211(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_211_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_212(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_212_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_213(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_213_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_214(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_214_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_215(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_215_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_216(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_216_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_217(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_217_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_218(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_218_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_219(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_219_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_220(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_220_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_221(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_221_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_222(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_222_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_223(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_223_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_224(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_224_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_225(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_225_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_226(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_226_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_227(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_227_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_228(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_228_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_229(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_229_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_230(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_230_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_231(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_231_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_232(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_232_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_233(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_233_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_234(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_234_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_235(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_235_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_236(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_236_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_237(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_237_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_238(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_238_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_239(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_239_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_240(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_240_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_241(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_241_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_242(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_242_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_243(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_243_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_244(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_244_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_245(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_245_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_246(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_246_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_247(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_247_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_248(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_248_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_249(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_249_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_250(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_250_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_251(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_251_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_252(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_252_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_253(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_253_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_254(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_254_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_255(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_255_D(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_256(o, s, l) BOOST_PP_LIST_FOLD_RIGHT_256_D(o, s, l) +# +# define BOOST_PP_LIST_FOLD_RIGHT_1_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(2, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_2, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_2_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(3, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_3, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_3_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(4, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_4, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_4_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(5, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_5, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_5_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(6, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_6, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_6_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(7, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_7, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_7_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(8, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_8, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_8_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(9, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_9, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_9_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(10, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_10, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_10_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(11, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_11, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_11_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(12, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_12, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_12_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(13, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_13, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_13_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(14, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_14, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_14_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(15, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_15, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_15_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(16, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_16, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_16_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(17, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_17, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_17_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(18, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_18, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_18_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(19, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_19, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_19_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(20, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_20, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_20_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(21, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_21, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_21_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(22, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_22, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_22_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(23, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_23, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_23_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(24, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_24, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_24_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(25, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_25, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_25_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(26, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_26, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_26_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(27, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_27, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_27_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(28, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_28, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_28_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(29, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_29, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_29_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(30, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_30, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_30_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(31, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_31, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_31_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(32, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_32, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_32_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(33, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_33, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_33_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(34, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_34, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_34_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(35, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_35, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_35_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(36, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_36, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_36_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(37, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_37, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_37_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(38, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_38, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_38_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(39, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_39, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_39_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(40, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_40, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_40_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(41, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_41, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_41_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(42, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_42, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_42_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(43, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_43, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_43_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(44, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_44, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_44_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(45, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_45, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_45_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(46, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_46, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_46_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(47, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_47, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_47_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(48, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_48, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_48_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(49, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_49, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_49_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(50, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_50, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_50_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(51, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_51, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_51_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(52, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_52, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_52_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(53, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_53, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_53_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(54, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_54, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_54_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(55, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_55, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_55_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(56, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_56, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_56_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(57, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_57, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_57_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(58, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_58, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_58_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(59, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_59, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_59_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(60, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_60, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_60_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(61, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_61, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_61_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(62, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_62, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_62_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(63, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_63, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_63_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(64, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_64, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_64_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(65, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_65, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_65_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(66, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_66, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_66_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(67, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_67, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_67_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(68, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_68, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_68_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(69, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_69, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_69_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(70, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_70, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_70_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(71, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_71, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_71_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(72, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_72, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_72_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(73, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_73, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_73_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(74, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_74, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_74_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(75, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_75, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_75_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(76, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_76, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_76_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(77, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_77, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_77_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(78, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_78, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_78_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(79, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_79, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_79_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(80, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_80, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_80_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(81, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_81, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_81_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(82, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_82, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_82_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(83, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_83, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_83_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(84, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_84, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_84_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(85, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_85, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_85_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(86, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_86, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_86_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(87, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_87, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_87_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(88, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_88, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_88_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(89, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_89, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_89_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(90, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_90, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_90_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(91, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_91, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_91_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(92, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_92, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_92_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(93, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_93, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_93_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(94, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_94, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_94_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(95, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_95, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_95_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(96, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_96, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_96_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(97, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_97, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_97_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(98, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_98, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_98_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(99, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_99, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_99_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(100, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_100, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_100_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(101, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_101, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_101_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(102, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_102, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_102_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(103, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_103, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_103_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(104, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_104, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_104_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(105, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_105, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_105_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(106, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_106, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_106_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(107, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_107, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_107_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(108, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_108, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_108_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(109, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_109, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_109_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(110, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_110, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_110_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(111, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_111, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_111_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(112, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_112, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_112_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(113, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_113, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_113_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(114, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_114, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_114_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(115, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_115, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_115_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(116, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_116, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_116_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(117, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_117, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_117_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(118, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_118, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_118_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(119, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_119, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_119_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(120, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_120, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_120_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(121, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_121, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_121_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(122, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_122, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_122_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(123, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_123, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_123_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(124, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_124, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_124_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(125, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_125, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_125_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(126, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_126, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_126_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(127, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_127, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_127_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(128, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_128, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_128_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(129, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_129, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_129_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(130, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_130, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_130_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(131, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_131, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_131_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(132, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_132, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_132_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(133, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_133, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_133_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(134, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_134, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_134_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(135, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_135, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_135_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(136, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_136, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_136_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(137, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_137, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_137_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(138, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_138, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_138_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(139, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_139, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_139_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(140, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_140, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_140_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(141, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_141, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_141_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(142, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_142, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_142_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(143, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_143, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_143_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(144, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_144, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_144_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(145, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_145, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_145_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(146, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_146, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_146_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(147, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_147, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_147_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(148, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_148, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_148_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(149, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_149, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_149_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(150, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_150, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_150_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(151, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_151, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_151_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(152, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_152, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_152_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(153, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_153, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_153_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(154, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_154, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_154_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(155, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_155, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_155_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(156, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_156, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_156_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(157, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_157, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_157_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(158, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_158, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_158_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(159, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_159, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_159_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(160, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_160, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_160_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(161, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_161, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_161_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(162, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_162, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_162_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(163, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_163, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_163_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(164, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_164, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_164_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(165, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_165, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_165_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(166, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_166, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_166_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(167, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_167, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_167_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(168, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_168, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_168_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(169, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_169, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_169_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(170, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_170, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_170_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(171, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_171, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_171_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(172, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_172, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_172_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(173, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_173, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_173_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(174, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_174, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_174_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(175, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_175, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_175_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(176, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_176, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_176_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(177, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_177, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_177_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(178, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_178, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_178_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(179, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_179, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_179_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(180, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_180, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_180_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(181, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_181, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_181_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(182, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_182, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_182_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(183, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_183, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_183_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(184, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_184, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_184_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(185, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_185, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_185_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(186, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_186, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_186_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(187, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_187, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_187_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(188, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_188, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_188_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(189, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_189, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_189_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(190, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_190, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_190_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(191, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_191, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_191_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(192, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_192, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_192_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(193, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_193, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_193_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(194, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_194, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_194_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(195, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_195, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_195_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(196, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_196, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_196_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(197, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_197, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_197_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(198, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_198, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_198_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(199, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_199, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_199_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(200, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_200, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_200_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(201, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_201, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_201_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(202, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_202, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_202_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(203, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_203, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_203_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(204, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_204, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_204_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(205, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_205, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_205_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(206, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_206, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_206_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(207, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_207, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_207_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(208, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_208, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_208_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(209, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_209, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_209_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(210, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_210, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_210_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(211, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_211, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_211_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(212, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_212, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_212_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(213, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_213, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_213_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(214, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_214, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_214_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(215, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_215, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_215_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(216, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_216, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_216_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(217, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_217, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_217_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(218, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_218, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_218_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(219, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_219, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_219_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(220, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_220, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_220_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(221, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_221, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_221_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(222, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_222, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_222_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(223, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_223, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_223_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(224, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_224, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_224_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(225, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_225, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_225_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(226, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_226, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_226_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(227, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_227, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_227_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(228, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_228, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_228_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(229, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_229, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_229_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(230, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_230, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_230_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(231, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_231, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_231_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(232, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_232, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_232_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(233, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_233, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_233_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(234, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_234, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_234_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(235, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_235, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_235_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(236, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_236, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_236_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(237, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_237, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_237_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(238, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_238, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_238_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(239, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_239, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_239_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(240, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_240, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_240_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(241, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_241, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_241_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(242, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_242, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_242_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(243, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_243, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_243_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(244, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_244, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_244_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(245, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_245, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_245_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(246, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_246, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_246_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(247, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_247, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_247_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(248, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_248, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_248_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(249, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_249, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_249_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(250, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_250, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_250_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(251, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_251, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_251_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(252, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_252, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_252_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(253, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_253, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_253_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(254, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_254, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_254_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(255, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_255, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_255_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(256, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_256, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# define BOOST_PP_LIST_FOLD_RIGHT_256_D(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), o, s BOOST_PP_TUPLE_EAT_3)(257, BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_RIGHT_257, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3)(o, s, BOOST_PP_LIST_REST(l)), BOOST_PP_LIST_FIRST(l)) +# +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_1(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_2(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_3(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_4(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_5(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_6(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_7(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_8(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_9(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_10(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_11(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_12(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_13(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_14(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_15(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_16(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_17(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_18(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_19(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_20(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_21(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_22(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_23(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_24(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_25(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_26(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_27(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_28(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_29(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_30(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_31(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_32(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_33(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_34(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_35(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_36(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_37(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_38(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_39(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_40(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_41(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_42(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_43(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_44(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_45(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_46(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_47(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_48(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_49(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_50(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_51(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_52(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_53(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_54(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_55(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_56(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_57(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_58(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_59(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_60(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_61(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_62(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_63(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_64(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_65(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_66(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_67(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_68(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_69(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_70(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_71(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_72(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_73(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_74(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_75(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_76(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_77(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_78(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_79(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_80(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_81(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_82(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_83(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_84(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_85(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_86(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_87(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_88(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_89(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_90(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_91(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_92(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_93(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_94(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_95(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_96(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_97(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_98(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_99(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_100(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_101(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_102(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_103(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_104(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_105(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_106(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_107(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_108(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_109(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_110(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_111(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_112(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_113(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_114(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_115(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_116(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_117(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_118(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_119(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_120(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_121(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_122(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_123(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_124(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_125(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_126(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_127(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_128(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_129(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_130(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_131(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_132(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_133(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_134(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_135(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_136(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_137(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_138(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_139(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_140(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_141(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_142(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_143(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_144(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_145(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_146(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_147(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_148(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_149(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_150(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_151(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_152(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_153(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_154(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_155(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_156(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_157(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_158(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_159(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_160(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_161(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_162(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_163(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_164(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_165(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_166(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_167(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_168(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_169(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_170(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_171(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_172(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_173(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_174(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_175(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_176(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_177(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_178(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_179(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_180(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_181(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_182(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_183(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_184(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_185(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_186(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_187(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_188(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_189(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_190(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_191(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_192(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_193(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_194(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_195(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_196(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_197(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_198(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_199(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_200(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_201(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_202(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_203(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_204(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_205(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_206(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_207(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_208(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_209(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_210(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_211(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_212(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_213(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_214(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_215(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_216(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_217(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_218(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_219(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_220(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_221(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_222(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_223(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_224(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_225(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_226(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_227(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_228(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_229(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_230(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_231(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_232(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_233(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_234(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_235(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_236(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_237(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_238(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_239(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_240(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_241(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_242(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_243(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_244(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_245(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_246(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_247(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_248(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_249(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_250(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_251(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_252(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_253(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_254(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_255(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_RIGHT_CHECK_BOOST_PP_LIST_FOLD_RIGHT_256(o, s, l) 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/detail/fold_left.hpp b/plugin/wave/include/boost/preprocessor/list/detail/fold_left.hpp new file mode 100644 index 0000000..f5fcab7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/detail/fold_left.hpp @@ -0,0 +1,279 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_HPP +# define BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_LEFT_HPP +# +# include +# include +# include +# include +# +# define BOOST_PP_LIST_FOLD_LEFT_1(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_2, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(2, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_2(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_3, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(3, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_3(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_4, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(4, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_4(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_5, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(5, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_5(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_6, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(6, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_6(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_7, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(7, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_7(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_8, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(8, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_8(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_9, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(9, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_9(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_10, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(10, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_10(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_11, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(11, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_11(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_12, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(12, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_12(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_13, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(13, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_13(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_14, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(14, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_14(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_15, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(15, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_15(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_16, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(16, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_16(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_17, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(17, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_17(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_18, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(18, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_18(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_19, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(19, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_19(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_20, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(20, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_20(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_21, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(21, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_21(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_22, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(22, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_22(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_23, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(23, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_23(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_24, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(24, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_24(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_25, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(25, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_25(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_26, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(26, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_26(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_27, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(27, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_27(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_28, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(28, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_28(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_29, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(29, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_29(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_30, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(30, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_30(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_31, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(31, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_31(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_32, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(32, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_32(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_33, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(33, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_33(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_34, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(34, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_34(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_35, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(35, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_35(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_36, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(36, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_36(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_37, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(37, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_37(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_38, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(38, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_38(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_39, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(39, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_39(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_40, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(40, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_40(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_41, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(41, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_41(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_42, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(42, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_42(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_43, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(43, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_43(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_44, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(44, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_44(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_45, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(45, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_45(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_46, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(46, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_46(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_47, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(47, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_47(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_48, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(48, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_48(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_49, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(49, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_49(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_50, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(50, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_50(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_51, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(51, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_51(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_52, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(52, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_52(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_53, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(53, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_53(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_54, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(54, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_54(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_55, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(55, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_55(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_56, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(56, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_56(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_57, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(57, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_57(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_58, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(58, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_58(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_59, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(59, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_59(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_60, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(60, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_60(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_61, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(61, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_61(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_62, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(62, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_62(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_63, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(63, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_63(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_64, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(64, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_64(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_65, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(65, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_65(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_66, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(66, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_66(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_67, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(67, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_67(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_68, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(68, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_68(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_69, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(69, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_69(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_70, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(70, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_70(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_71, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(71, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_71(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_72, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(72, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_72(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_73, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(73, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_73(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_74, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(74, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_74(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_75, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(75, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_75(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_76, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(76, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_76(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_77, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(77, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_77(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_78, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(78, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_78(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_79, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(79, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_79(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_80, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(80, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_80(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_81, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(81, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_81(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_82, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(82, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_82(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_83, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(83, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_83(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_84, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(84, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_84(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_85, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(85, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_85(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_86, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(86, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_86(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_87, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(87, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_87(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_88, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(88, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_88(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_89, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(89, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_89(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_90, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(90, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_90(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_91, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(91, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_91(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_92, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(92, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_92(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_93, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(93, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_93(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_94, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(94, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_94(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_95, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(95, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_95(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_96, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(96, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_96(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_97, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(97, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_97(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_98, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(98, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_98(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_99, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(99, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_99(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_100, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(100, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_100(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_101, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(101, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_101(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_102, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(102, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_102(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_103, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(103, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_103(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_104, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(104, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_104(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_105, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(105, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_105(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_106, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(106, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_106(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_107, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(107, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_107(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_108, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(108, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_108(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_109, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(109, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_109(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_110, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(110, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_110(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_111, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(111, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_111(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_112, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(112, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_112(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_113, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(113, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_113(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_114, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(114, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_114(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_115, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(115, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_115(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_116, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(116, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_116(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_117, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(117, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_117(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_118, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(118, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_118(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_119, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(119, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_119(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_120, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(120, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_120(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_121, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(121, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_121(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_122, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(122, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_122(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_123, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(123, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_123(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_124, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(124, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_124(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_125, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(125, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_125(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_126, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(126, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_126(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_127, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(127, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_127(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_128, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(128, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_128(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_129, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(129, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_129(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_130, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(130, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_130(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_131, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(131, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_131(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_132, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(132, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_132(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_133, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(133, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_133(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_134, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(134, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_134(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_135, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(135, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_135(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_136, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(136, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_136(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_137, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(137, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_137(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_138, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(138, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_138(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_139, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(139, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_139(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_140, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(140, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_140(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_141, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(141, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_141(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_142, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(142, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_142(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_143, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(143, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_143(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_144, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(144, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_144(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_145, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(145, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_145(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_146, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(146, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_146(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_147, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(147, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_147(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_148, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(148, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_148(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_149, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(149, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_149(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_150, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(150, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_150(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_151, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(151, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_151(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_152, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(152, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_152(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_153, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(153, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_153(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_154, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(154, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_154(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_155, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(155, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_155(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_156, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(156, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_156(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_157, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(157, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_157(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_158, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(158, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_158(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_159, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(159, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_159(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_160, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(160, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_160(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_161, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(161, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_161(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_162, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(162, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_162(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_163, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(163, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_163(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_164, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(164, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_164(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_165, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(165, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_165(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_166, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(166, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_166(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_167, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(167, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_167(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_168, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(168, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_168(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_169, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(169, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_169(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_170, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(170, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_170(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_171, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(171, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_171(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_172, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(172, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_172(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_173, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(173, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_173(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_174, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(174, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_174(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_175, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(175, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_175(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_176, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(176, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_176(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_177, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(177, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_177(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_178, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(178, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_178(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_179, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(179, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_179(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_180, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(180, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_180(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_181, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(181, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_181(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_182, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(182, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_182(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_183, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(183, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_183(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_184, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(184, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_184(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_185, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(185, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_185(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_186, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(186, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_186(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_187, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(187, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_187(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_188, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(188, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_188(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_189, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(189, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_189(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_190, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(190, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_190(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_191, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(191, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_191(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_192, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(192, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_192(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_193, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(193, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_193(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_194, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(194, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_194(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_195, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(195, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_195(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_196, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(196, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_196(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_197, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(197, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_197(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_198, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(198, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_198(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_199, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(199, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_199(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_200, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(200, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_200(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_201, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(201, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_201(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_202, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(202, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_202(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_203, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(203, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_203(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_204, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(204, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_204(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_205, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(205, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_205(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_206, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(206, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_206(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_207, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(207, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_207(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_208, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(208, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_208(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_209, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(209, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_209(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_210, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(210, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_210(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_211, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(211, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_211(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_212, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(212, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_212(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_213, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(213, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_213(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_214, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(214, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_214(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_215, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(215, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_215(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_216, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(216, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_216(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_217, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(217, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_217(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_218, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(218, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_218(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_219, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(219, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_219(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_220, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(220, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_220(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_221, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(221, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_221(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_222, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(222, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_222(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_223, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(223, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_223(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_224, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(224, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_224(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_225, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(225, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_225(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_226, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(226, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_226(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_227, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(227, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_227(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_228, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(228, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_228(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_229, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(229, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_229(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_230, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(230, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_230(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_231, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(231, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_231(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_232, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(232, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_232(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_233, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(233, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_233(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_234, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(234, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_234(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_235, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(235, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_235(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_236, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(236, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_236(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_237, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(237, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_237(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_238, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(238, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_238(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_239, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(239, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_239(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_240, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(240, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_240(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_241, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(241, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_241(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_242, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(242, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_242(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_243, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(243, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_243(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_244, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(244, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_244(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_245, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(245, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_245(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_246, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(246, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_246(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_247, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(247, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_247(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_248, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(248, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_248(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_249, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(249, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_249(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_250, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(250, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_250(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_251, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(251, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_251(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_252, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(252, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_252(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_253, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(253, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_253(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_254, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(254, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_254(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_255, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(255, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_255(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_256, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(256, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# define BOOST_PP_LIST_FOLD_LEFT_256(o, s, l) BOOST_PP_IIF(BOOST_PP_LIST_IS_CONS(l), BOOST_PP_LIST_FOLD_LEFT_257, s BOOST_PP_TUPLE_EAT_3)(o, BOOST_PP_EXPR_IIF(BOOST_PP_LIST_IS_CONS(l), o)(257, s, BOOST_PP_LIST_FIRST(l)), BOOST_PP_LIST_REST(l)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/detail/fold_right.hpp b/plugin/wave/include/boost/preprocessor/list/detail/fold_right.hpp new file mode 100644 index 0000000..29146d5 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/detail/fold_right.hpp @@ -0,0 +1,277 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_RIGHT_HPP +# define BOOST_PREPROCESSOR_LIST_DETAIL_FOLD_RIGHT_HPP +# +# include +# include +# +# define BOOST_PP_LIST_FOLD_RIGHT_1(o, s, l) BOOST_PP_LIST_FOLD_LEFT_1(o, s, BOOST_PP_LIST_REVERSE_D(1, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_2(o, s, l) BOOST_PP_LIST_FOLD_LEFT_2(o, s, BOOST_PP_LIST_REVERSE_D(2, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_3(o, s, l) BOOST_PP_LIST_FOLD_LEFT_3(o, s, BOOST_PP_LIST_REVERSE_D(3, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_4(o, s, l) BOOST_PP_LIST_FOLD_LEFT_4(o, s, BOOST_PP_LIST_REVERSE_D(4, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_5(o, s, l) BOOST_PP_LIST_FOLD_LEFT_5(o, s, BOOST_PP_LIST_REVERSE_D(5, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_6(o, s, l) BOOST_PP_LIST_FOLD_LEFT_6(o, s, BOOST_PP_LIST_REVERSE_D(6, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_7(o, s, l) BOOST_PP_LIST_FOLD_LEFT_7(o, s, BOOST_PP_LIST_REVERSE_D(7, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_8(o, s, l) BOOST_PP_LIST_FOLD_LEFT_8(o, s, BOOST_PP_LIST_REVERSE_D(8, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_9(o, s, l) BOOST_PP_LIST_FOLD_LEFT_9(o, s, BOOST_PP_LIST_REVERSE_D(9, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_10(o, s, l) BOOST_PP_LIST_FOLD_LEFT_10(o, s, BOOST_PP_LIST_REVERSE_D(10, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_11(o, s, l) BOOST_PP_LIST_FOLD_LEFT_11(o, s, BOOST_PP_LIST_REVERSE_D(11, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_12(o, s, l) BOOST_PP_LIST_FOLD_LEFT_12(o, s, BOOST_PP_LIST_REVERSE_D(12, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_13(o, s, l) BOOST_PP_LIST_FOLD_LEFT_13(o, s, BOOST_PP_LIST_REVERSE_D(13, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_14(o, s, l) BOOST_PP_LIST_FOLD_LEFT_14(o, s, BOOST_PP_LIST_REVERSE_D(14, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_15(o, s, l) BOOST_PP_LIST_FOLD_LEFT_15(o, s, BOOST_PP_LIST_REVERSE_D(15, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_16(o, s, l) BOOST_PP_LIST_FOLD_LEFT_16(o, s, BOOST_PP_LIST_REVERSE_D(16, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_17(o, s, l) BOOST_PP_LIST_FOLD_LEFT_17(o, s, BOOST_PP_LIST_REVERSE_D(17, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_18(o, s, l) BOOST_PP_LIST_FOLD_LEFT_18(o, s, BOOST_PP_LIST_REVERSE_D(18, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_19(o, s, l) BOOST_PP_LIST_FOLD_LEFT_19(o, s, BOOST_PP_LIST_REVERSE_D(19, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_20(o, s, l) BOOST_PP_LIST_FOLD_LEFT_20(o, s, BOOST_PP_LIST_REVERSE_D(20, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_21(o, s, l) BOOST_PP_LIST_FOLD_LEFT_21(o, s, BOOST_PP_LIST_REVERSE_D(21, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_22(o, s, l) BOOST_PP_LIST_FOLD_LEFT_22(o, s, BOOST_PP_LIST_REVERSE_D(22, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_23(o, s, l) BOOST_PP_LIST_FOLD_LEFT_23(o, s, BOOST_PP_LIST_REVERSE_D(23, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_24(o, s, l) BOOST_PP_LIST_FOLD_LEFT_24(o, s, BOOST_PP_LIST_REVERSE_D(24, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_25(o, s, l) BOOST_PP_LIST_FOLD_LEFT_25(o, s, BOOST_PP_LIST_REVERSE_D(25, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_26(o, s, l) BOOST_PP_LIST_FOLD_LEFT_26(o, s, BOOST_PP_LIST_REVERSE_D(26, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_27(o, s, l) BOOST_PP_LIST_FOLD_LEFT_27(o, s, BOOST_PP_LIST_REVERSE_D(27, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_28(o, s, l) BOOST_PP_LIST_FOLD_LEFT_28(o, s, BOOST_PP_LIST_REVERSE_D(28, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_29(o, s, l) BOOST_PP_LIST_FOLD_LEFT_29(o, s, BOOST_PP_LIST_REVERSE_D(29, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_30(o, s, l) BOOST_PP_LIST_FOLD_LEFT_30(o, s, BOOST_PP_LIST_REVERSE_D(30, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_31(o, s, l) BOOST_PP_LIST_FOLD_LEFT_31(o, s, BOOST_PP_LIST_REVERSE_D(31, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_32(o, s, l) BOOST_PP_LIST_FOLD_LEFT_32(o, s, BOOST_PP_LIST_REVERSE_D(32, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_33(o, s, l) BOOST_PP_LIST_FOLD_LEFT_33(o, s, BOOST_PP_LIST_REVERSE_D(33, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_34(o, s, l) BOOST_PP_LIST_FOLD_LEFT_34(o, s, BOOST_PP_LIST_REVERSE_D(34, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_35(o, s, l) BOOST_PP_LIST_FOLD_LEFT_35(o, s, BOOST_PP_LIST_REVERSE_D(35, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_36(o, s, l) BOOST_PP_LIST_FOLD_LEFT_36(o, s, BOOST_PP_LIST_REVERSE_D(36, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_37(o, s, l) BOOST_PP_LIST_FOLD_LEFT_37(o, s, BOOST_PP_LIST_REVERSE_D(37, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_38(o, s, l) BOOST_PP_LIST_FOLD_LEFT_38(o, s, BOOST_PP_LIST_REVERSE_D(38, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_39(o, s, l) BOOST_PP_LIST_FOLD_LEFT_39(o, s, BOOST_PP_LIST_REVERSE_D(39, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_40(o, s, l) BOOST_PP_LIST_FOLD_LEFT_40(o, s, BOOST_PP_LIST_REVERSE_D(40, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_41(o, s, l) BOOST_PP_LIST_FOLD_LEFT_41(o, s, BOOST_PP_LIST_REVERSE_D(41, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_42(o, s, l) BOOST_PP_LIST_FOLD_LEFT_42(o, s, BOOST_PP_LIST_REVERSE_D(42, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_43(o, s, l) BOOST_PP_LIST_FOLD_LEFT_43(o, s, BOOST_PP_LIST_REVERSE_D(43, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_44(o, s, l) BOOST_PP_LIST_FOLD_LEFT_44(o, s, BOOST_PP_LIST_REVERSE_D(44, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_45(o, s, l) BOOST_PP_LIST_FOLD_LEFT_45(o, s, BOOST_PP_LIST_REVERSE_D(45, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_46(o, s, l) BOOST_PP_LIST_FOLD_LEFT_46(o, s, BOOST_PP_LIST_REVERSE_D(46, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_47(o, s, l) BOOST_PP_LIST_FOLD_LEFT_47(o, s, BOOST_PP_LIST_REVERSE_D(47, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_48(o, s, l) BOOST_PP_LIST_FOLD_LEFT_48(o, s, BOOST_PP_LIST_REVERSE_D(48, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_49(o, s, l) BOOST_PP_LIST_FOLD_LEFT_49(o, s, BOOST_PP_LIST_REVERSE_D(49, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_50(o, s, l) BOOST_PP_LIST_FOLD_LEFT_50(o, s, BOOST_PP_LIST_REVERSE_D(50, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_51(o, s, l) BOOST_PP_LIST_FOLD_LEFT_51(o, s, BOOST_PP_LIST_REVERSE_D(51, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_52(o, s, l) BOOST_PP_LIST_FOLD_LEFT_52(o, s, BOOST_PP_LIST_REVERSE_D(52, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_53(o, s, l) BOOST_PP_LIST_FOLD_LEFT_53(o, s, BOOST_PP_LIST_REVERSE_D(53, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_54(o, s, l) BOOST_PP_LIST_FOLD_LEFT_54(o, s, BOOST_PP_LIST_REVERSE_D(54, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_55(o, s, l) BOOST_PP_LIST_FOLD_LEFT_55(o, s, BOOST_PP_LIST_REVERSE_D(55, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_56(o, s, l) BOOST_PP_LIST_FOLD_LEFT_56(o, s, BOOST_PP_LIST_REVERSE_D(56, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_57(o, s, l) BOOST_PP_LIST_FOLD_LEFT_57(o, s, BOOST_PP_LIST_REVERSE_D(57, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_58(o, s, l) BOOST_PP_LIST_FOLD_LEFT_58(o, s, BOOST_PP_LIST_REVERSE_D(58, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_59(o, s, l) BOOST_PP_LIST_FOLD_LEFT_59(o, s, BOOST_PP_LIST_REVERSE_D(59, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_60(o, s, l) BOOST_PP_LIST_FOLD_LEFT_60(o, s, BOOST_PP_LIST_REVERSE_D(60, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_61(o, s, l) BOOST_PP_LIST_FOLD_LEFT_61(o, s, BOOST_PP_LIST_REVERSE_D(61, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_62(o, s, l) BOOST_PP_LIST_FOLD_LEFT_62(o, s, BOOST_PP_LIST_REVERSE_D(62, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_63(o, s, l) BOOST_PP_LIST_FOLD_LEFT_63(o, s, BOOST_PP_LIST_REVERSE_D(63, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_64(o, s, l) BOOST_PP_LIST_FOLD_LEFT_64(o, s, BOOST_PP_LIST_REVERSE_D(64, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_65(o, s, l) BOOST_PP_LIST_FOLD_LEFT_65(o, s, BOOST_PP_LIST_REVERSE_D(65, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_66(o, s, l) BOOST_PP_LIST_FOLD_LEFT_66(o, s, BOOST_PP_LIST_REVERSE_D(66, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_67(o, s, l) BOOST_PP_LIST_FOLD_LEFT_67(o, s, BOOST_PP_LIST_REVERSE_D(67, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_68(o, s, l) BOOST_PP_LIST_FOLD_LEFT_68(o, s, BOOST_PP_LIST_REVERSE_D(68, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_69(o, s, l) BOOST_PP_LIST_FOLD_LEFT_69(o, s, BOOST_PP_LIST_REVERSE_D(69, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_70(o, s, l) BOOST_PP_LIST_FOLD_LEFT_70(o, s, BOOST_PP_LIST_REVERSE_D(70, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_71(o, s, l) BOOST_PP_LIST_FOLD_LEFT_71(o, s, BOOST_PP_LIST_REVERSE_D(71, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_72(o, s, l) BOOST_PP_LIST_FOLD_LEFT_72(o, s, BOOST_PP_LIST_REVERSE_D(72, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_73(o, s, l) BOOST_PP_LIST_FOLD_LEFT_73(o, s, BOOST_PP_LIST_REVERSE_D(73, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_74(o, s, l) BOOST_PP_LIST_FOLD_LEFT_74(o, s, BOOST_PP_LIST_REVERSE_D(74, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_75(o, s, l) BOOST_PP_LIST_FOLD_LEFT_75(o, s, BOOST_PP_LIST_REVERSE_D(75, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_76(o, s, l) BOOST_PP_LIST_FOLD_LEFT_76(o, s, BOOST_PP_LIST_REVERSE_D(76, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_77(o, s, l) BOOST_PP_LIST_FOLD_LEFT_77(o, s, BOOST_PP_LIST_REVERSE_D(77, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_78(o, s, l) BOOST_PP_LIST_FOLD_LEFT_78(o, s, BOOST_PP_LIST_REVERSE_D(78, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_79(o, s, l) BOOST_PP_LIST_FOLD_LEFT_79(o, s, BOOST_PP_LIST_REVERSE_D(79, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_80(o, s, l) BOOST_PP_LIST_FOLD_LEFT_80(o, s, BOOST_PP_LIST_REVERSE_D(80, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_81(o, s, l) BOOST_PP_LIST_FOLD_LEFT_81(o, s, BOOST_PP_LIST_REVERSE_D(81, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_82(o, s, l) BOOST_PP_LIST_FOLD_LEFT_82(o, s, BOOST_PP_LIST_REVERSE_D(82, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_83(o, s, l) BOOST_PP_LIST_FOLD_LEFT_83(o, s, BOOST_PP_LIST_REVERSE_D(83, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_84(o, s, l) BOOST_PP_LIST_FOLD_LEFT_84(o, s, BOOST_PP_LIST_REVERSE_D(84, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_85(o, s, l) BOOST_PP_LIST_FOLD_LEFT_85(o, s, BOOST_PP_LIST_REVERSE_D(85, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_86(o, s, l) BOOST_PP_LIST_FOLD_LEFT_86(o, s, BOOST_PP_LIST_REVERSE_D(86, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_87(o, s, l) BOOST_PP_LIST_FOLD_LEFT_87(o, s, BOOST_PP_LIST_REVERSE_D(87, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_88(o, s, l) BOOST_PP_LIST_FOLD_LEFT_88(o, s, BOOST_PP_LIST_REVERSE_D(88, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_89(o, s, l) BOOST_PP_LIST_FOLD_LEFT_89(o, s, BOOST_PP_LIST_REVERSE_D(89, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_90(o, s, l) BOOST_PP_LIST_FOLD_LEFT_90(o, s, BOOST_PP_LIST_REVERSE_D(90, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_91(o, s, l) BOOST_PP_LIST_FOLD_LEFT_91(o, s, BOOST_PP_LIST_REVERSE_D(91, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_92(o, s, l) BOOST_PP_LIST_FOLD_LEFT_92(o, s, BOOST_PP_LIST_REVERSE_D(92, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_93(o, s, l) BOOST_PP_LIST_FOLD_LEFT_93(o, s, BOOST_PP_LIST_REVERSE_D(93, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_94(o, s, l) BOOST_PP_LIST_FOLD_LEFT_94(o, s, BOOST_PP_LIST_REVERSE_D(94, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_95(o, s, l) BOOST_PP_LIST_FOLD_LEFT_95(o, s, BOOST_PP_LIST_REVERSE_D(95, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_96(o, s, l) BOOST_PP_LIST_FOLD_LEFT_96(o, s, BOOST_PP_LIST_REVERSE_D(96, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_97(o, s, l) BOOST_PP_LIST_FOLD_LEFT_97(o, s, BOOST_PP_LIST_REVERSE_D(97, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_98(o, s, l) BOOST_PP_LIST_FOLD_LEFT_98(o, s, BOOST_PP_LIST_REVERSE_D(98, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_99(o, s, l) BOOST_PP_LIST_FOLD_LEFT_99(o, s, BOOST_PP_LIST_REVERSE_D(99, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_100(o, s, l) BOOST_PP_LIST_FOLD_LEFT_100(o, s, BOOST_PP_LIST_REVERSE_D(100, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_101(o, s, l) BOOST_PP_LIST_FOLD_LEFT_101(o, s, BOOST_PP_LIST_REVERSE_D(101, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_102(o, s, l) BOOST_PP_LIST_FOLD_LEFT_102(o, s, BOOST_PP_LIST_REVERSE_D(102, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_103(o, s, l) BOOST_PP_LIST_FOLD_LEFT_103(o, s, BOOST_PP_LIST_REVERSE_D(103, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_104(o, s, l) BOOST_PP_LIST_FOLD_LEFT_104(o, s, BOOST_PP_LIST_REVERSE_D(104, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_105(o, s, l) BOOST_PP_LIST_FOLD_LEFT_105(o, s, BOOST_PP_LIST_REVERSE_D(105, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_106(o, s, l) BOOST_PP_LIST_FOLD_LEFT_106(o, s, BOOST_PP_LIST_REVERSE_D(106, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_107(o, s, l) BOOST_PP_LIST_FOLD_LEFT_107(o, s, BOOST_PP_LIST_REVERSE_D(107, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_108(o, s, l) BOOST_PP_LIST_FOLD_LEFT_108(o, s, BOOST_PP_LIST_REVERSE_D(108, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_109(o, s, l) BOOST_PP_LIST_FOLD_LEFT_109(o, s, BOOST_PP_LIST_REVERSE_D(109, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_110(o, s, l) BOOST_PP_LIST_FOLD_LEFT_110(o, s, BOOST_PP_LIST_REVERSE_D(110, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_111(o, s, l) BOOST_PP_LIST_FOLD_LEFT_111(o, s, BOOST_PP_LIST_REVERSE_D(111, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_112(o, s, l) BOOST_PP_LIST_FOLD_LEFT_112(o, s, BOOST_PP_LIST_REVERSE_D(112, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_113(o, s, l) BOOST_PP_LIST_FOLD_LEFT_113(o, s, BOOST_PP_LIST_REVERSE_D(113, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_114(o, s, l) BOOST_PP_LIST_FOLD_LEFT_114(o, s, BOOST_PP_LIST_REVERSE_D(114, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_115(o, s, l) BOOST_PP_LIST_FOLD_LEFT_115(o, s, BOOST_PP_LIST_REVERSE_D(115, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_116(o, s, l) BOOST_PP_LIST_FOLD_LEFT_116(o, s, BOOST_PP_LIST_REVERSE_D(116, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_117(o, s, l) BOOST_PP_LIST_FOLD_LEFT_117(o, s, BOOST_PP_LIST_REVERSE_D(117, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_118(o, s, l) BOOST_PP_LIST_FOLD_LEFT_118(o, s, BOOST_PP_LIST_REVERSE_D(118, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_119(o, s, l) BOOST_PP_LIST_FOLD_LEFT_119(o, s, BOOST_PP_LIST_REVERSE_D(119, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_120(o, s, l) BOOST_PP_LIST_FOLD_LEFT_120(o, s, BOOST_PP_LIST_REVERSE_D(120, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_121(o, s, l) BOOST_PP_LIST_FOLD_LEFT_121(o, s, BOOST_PP_LIST_REVERSE_D(121, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_122(o, s, l) BOOST_PP_LIST_FOLD_LEFT_122(o, s, BOOST_PP_LIST_REVERSE_D(122, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_123(o, s, l) BOOST_PP_LIST_FOLD_LEFT_123(o, s, BOOST_PP_LIST_REVERSE_D(123, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_124(o, s, l) BOOST_PP_LIST_FOLD_LEFT_124(o, s, BOOST_PP_LIST_REVERSE_D(124, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_125(o, s, l) BOOST_PP_LIST_FOLD_LEFT_125(o, s, BOOST_PP_LIST_REVERSE_D(125, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_126(o, s, l) BOOST_PP_LIST_FOLD_LEFT_126(o, s, BOOST_PP_LIST_REVERSE_D(126, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_127(o, s, l) BOOST_PP_LIST_FOLD_LEFT_127(o, s, BOOST_PP_LIST_REVERSE_D(127, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_128(o, s, l) BOOST_PP_LIST_FOLD_LEFT_128(o, s, BOOST_PP_LIST_REVERSE_D(128, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_129(o, s, l) BOOST_PP_LIST_FOLD_LEFT_129(o, s, BOOST_PP_LIST_REVERSE_D(129, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_130(o, s, l) BOOST_PP_LIST_FOLD_LEFT_130(o, s, BOOST_PP_LIST_REVERSE_D(130, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_131(o, s, l) BOOST_PP_LIST_FOLD_LEFT_131(o, s, BOOST_PP_LIST_REVERSE_D(131, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_132(o, s, l) BOOST_PP_LIST_FOLD_LEFT_132(o, s, BOOST_PP_LIST_REVERSE_D(132, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_133(o, s, l) BOOST_PP_LIST_FOLD_LEFT_133(o, s, BOOST_PP_LIST_REVERSE_D(133, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_134(o, s, l) BOOST_PP_LIST_FOLD_LEFT_134(o, s, BOOST_PP_LIST_REVERSE_D(134, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_135(o, s, l) BOOST_PP_LIST_FOLD_LEFT_135(o, s, BOOST_PP_LIST_REVERSE_D(135, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_136(o, s, l) BOOST_PP_LIST_FOLD_LEFT_136(o, s, BOOST_PP_LIST_REVERSE_D(136, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_137(o, s, l) BOOST_PP_LIST_FOLD_LEFT_137(o, s, BOOST_PP_LIST_REVERSE_D(137, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_138(o, s, l) BOOST_PP_LIST_FOLD_LEFT_138(o, s, BOOST_PP_LIST_REVERSE_D(138, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_139(o, s, l) BOOST_PP_LIST_FOLD_LEFT_139(o, s, BOOST_PP_LIST_REVERSE_D(139, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_140(o, s, l) BOOST_PP_LIST_FOLD_LEFT_140(o, s, BOOST_PP_LIST_REVERSE_D(140, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_141(o, s, l) BOOST_PP_LIST_FOLD_LEFT_141(o, s, BOOST_PP_LIST_REVERSE_D(141, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_142(o, s, l) BOOST_PP_LIST_FOLD_LEFT_142(o, s, BOOST_PP_LIST_REVERSE_D(142, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_143(o, s, l) BOOST_PP_LIST_FOLD_LEFT_143(o, s, BOOST_PP_LIST_REVERSE_D(143, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_144(o, s, l) BOOST_PP_LIST_FOLD_LEFT_144(o, s, BOOST_PP_LIST_REVERSE_D(144, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_145(o, s, l) BOOST_PP_LIST_FOLD_LEFT_145(o, s, BOOST_PP_LIST_REVERSE_D(145, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_146(o, s, l) BOOST_PP_LIST_FOLD_LEFT_146(o, s, BOOST_PP_LIST_REVERSE_D(146, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_147(o, s, l) BOOST_PP_LIST_FOLD_LEFT_147(o, s, BOOST_PP_LIST_REVERSE_D(147, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_148(o, s, l) BOOST_PP_LIST_FOLD_LEFT_148(o, s, BOOST_PP_LIST_REVERSE_D(148, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_149(o, s, l) BOOST_PP_LIST_FOLD_LEFT_149(o, s, BOOST_PP_LIST_REVERSE_D(149, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_150(o, s, l) BOOST_PP_LIST_FOLD_LEFT_150(o, s, BOOST_PP_LIST_REVERSE_D(150, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_151(o, s, l) BOOST_PP_LIST_FOLD_LEFT_151(o, s, BOOST_PP_LIST_REVERSE_D(151, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_152(o, s, l) BOOST_PP_LIST_FOLD_LEFT_152(o, s, BOOST_PP_LIST_REVERSE_D(152, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_153(o, s, l) BOOST_PP_LIST_FOLD_LEFT_153(o, s, BOOST_PP_LIST_REVERSE_D(153, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_154(o, s, l) BOOST_PP_LIST_FOLD_LEFT_154(o, s, BOOST_PP_LIST_REVERSE_D(154, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_155(o, s, l) BOOST_PP_LIST_FOLD_LEFT_155(o, s, BOOST_PP_LIST_REVERSE_D(155, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_156(o, s, l) BOOST_PP_LIST_FOLD_LEFT_156(o, s, BOOST_PP_LIST_REVERSE_D(156, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_157(o, s, l) BOOST_PP_LIST_FOLD_LEFT_157(o, s, BOOST_PP_LIST_REVERSE_D(157, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_158(o, s, l) BOOST_PP_LIST_FOLD_LEFT_158(o, s, BOOST_PP_LIST_REVERSE_D(158, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_159(o, s, l) BOOST_PP_LIST_FOLD_LEFT_159(o, s, BOOST_PP_LIST_REVERSE_D(159, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_160(o, s, l) BOOST_PP_LIST_FOLD_LEFT_160(o, s, BOOST_PP_LIST_REVERSE_D(160, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_161(o, s, l) BOOST_PP_LIST_FOLD_LEFT_161(o, s, BOOST_PP_LIST_REVERSE_D(161, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_162(o, s, l) BOOST_PP_LIST_FOLD_LEFT_162(o, s, BOOST_PP_LIST_REVERSE_D(162, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_163(o, s, l) BOOST_PP_LIST_FOLD_LEFT_163(o, s, BOOST_PP_LIST_REVERSE_D(163, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_164(o, s, l) BOOST_PP_LIST_FOLD_LEFT_164(o, s, BOOST_PP_LIST_REVERSE_D(164, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_165(o, s, l) BOOST_PP_LIST_FOLD_LEFT_165(o, s, BOOST_PP_LIST_REVERSE_D(165, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_166(o, s, l) BOOST_PP_LIST_FOLD_LEFT_166(o, s, BOOST_PP_LIST_REVERSE_D(166, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_167(o, s, l) BOOST_PP_LIST_FOLD_LEFT_167(o, s, BOOST_PP_LIST_REVERSE_D(167, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_168(o, s, l) BOOST_PP_LIST_FOLD_LEFT_168(o, s, BOOST_PP_LIST_REVERSE_D(168, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_169(o, s, l) BOOST_PP_LIST_FOLD_LEFT_169(o, s, BOOST_PP_LIST_REVERSE_D(169, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_170(o, s, l) BOOST_PP_LIST_FOLD_LEFT_170(o, s, BOOST_PP_LIST_REVERSE_D(170, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_171(o, s, l) BOOST_PP_LIST_FOLD_LEFT_171(o, s, BOOST_PP_LIST_REVERSE_D(171, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_172(o, s, l) BOOST_PP_LIST_FOLD_LEFT_172(o, s, BOOST_PP_LIST_REVERSE_D(172, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_173(o, s, l) BOOST_PP_LIST_FOLD_LEFT_173(o, s, BOOST_PP_LIST_REVERSE_D(173, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_174(o, s, l) BOOST_PP_LIST_FOLD_LEFT_174(o, s, BOOST_PP_LIST_REVERSE_D(174, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_175(o, s, l) BOOST_PP_LIST_FOLD_LEFT_175(o, s, BOOST_PP_LIST_REVERSE_D(175, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_176(o, s, l) BOOST_PP_LIST_FOLD_LEFT_176(o, s, BOOST_PP_LIST_REVERSE_D(176, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_177(o, s, l) BOOST_PP_LIST_FOLD_LEFT_177(o, s, BOOST_PP_LIST_REVERSE_D(177, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_178(o, s, l) BOOST_PP_LIST_FOLD_LEFT_178(o, s, BOOST_PP_LIST_REVERSE_D(178, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_179(o, s, l) BOOST_PP_LIST_FOLD_LEFT_179(o, s, BOOST_PP_LIST_REVERSE_D(179, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_180(o, s, l) BOOST_PP_LIST_FOLD_LEFT_180(o, s, BOOST_PP_LIST_REVERSE_D(180, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_181(o, s, l) BOOST_PP_LIST_FOLD_LEFT_181(o, s, BOOST_PP_LIST_REVERSE_D(181, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_182(o, s, l) BOOST_PP_LIST_FOLD_LEFT_182(o, s, BOOST_PP_LIST_REVERSE_D(182, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_183(o, s, l) BOOST_PP_LIST_FOLD_LEFT_183(o, s, BOOST_PP_LIST_REVERSE_D(183, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_184(o, s, l) BOOST_PP_LIST_FOLD_LEFT_184(o, s, BOOST_PP_LIST_REVERSE_D(184, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_185(o, s, l) BOOST_PP_LIST_FOLD_LEFT_185(o, s, BOOST_PP_LIST_REVERSE_D(185, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_186(o, s, l) BOOST_PP_LIST_FOLD_LEFT_186(o, s, BOOST_PP_LIST_REVERSE_D(186, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_187(o, s, l) BOOST_PP_LIST_FOLD_LEFT_187(o, s, BOOST_PP_LIST_REVERSE_D(187, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_188(o, s, l) BOOST_PP_LIST_FOLD_LEFT_188(o, s, BOOST_PP_LIST_REVERSE_D(188, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_189(o, s, l) BOOST_PP_LIST_FOLD_LEFT_189(o, s, BOOST_PP_LIST_REVERSE_D(189, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_190(o, s, l) BOOST_PP_LIST_FOLD_LEFT_190(o, s, BOOST_PP_LIST_REVERSE_D(190, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_191(o, s, l) BOOST_PP_LIST_FOLD_LEFT_191(o, s, BOOST_PP_LIST_REVERSE_D(191, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_192(o, s, l) BOOST_PP_LIST_FOLD_LEFT_192(o, s, BOOST_PP_LIST_REVERSE_D(192, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_193(o, s, l) BOOST_PP_LIST_FOLD_LEFT_193(o, s, BOOST_PP_LIST_REVERSE_D(193, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_194(o, s, l) BOOST_PP_LIST_FOLD_LEFT_194(o, s, BOOST_PP_LIST_REVERSE_D(194, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_195(o, s, l) BOOST_PP_LIST_FOLD_LEFT_195(o, s, BOOST_PP_LIST_REVERSE_D(195, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_196(o, s, l) BOOST_PP_LIST_FOLD_LEFT_196(o, s, BOOST_PP_LIST_REVERSE_D(196, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_197(o, s, l) BOOST_PP_LIST_FOLD_LEFT_197(o, s, BOOST_PP_LIST_REVERSE_D(197, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_198(o, s, l) BOOST_PP_LIST_FOLD_LEFT_198(o, s, BOOST_PP_LIST_REVERSE_D(198, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_199(o, s, l) BOOST_PP_LIST_FOLD_LEFT_199(o, s, BOOST_PP_LIST_REVERSE_D(199, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_200(o, s, l) BOOST_PP_LIST_FOLD_LEFT_200(o, s, BOOST_PP_LIST_REVERSE_D(200, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_201(o, s, l) BOOST_PP_LIST_FOLD_LEFT_201(o, s, BOOST_PP_LIST_REVERSE_D(201, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_202(o, s, l) BOOST_PP_LIST_FOLD_LEFT_202(o, s, BOOST_PP_LIST_REVERSE_D(202, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_203(o, s, l) BOOST_PP_LIST_FOLD_LEFT_203(o, s, BOOST_PP_LIST_REVERSE_D(203, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_204(o, s, l) BOOST_PP_LIST_FOLD_LEFT_204(o, s, BOOST_PP_LIST_REVERSE_D(204, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_205(o, s, l) BOOST_PP_LIST_FOLD_LEFT_205(o, s, BOOST_PP_LIST_REVERSE_D(205, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_206(o, s, l) BOOST_PP_LIST_FOLD_LEFT_206(o, s, BOOST_PP_LIST_REVERSE_D(206, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_207(o, s, l) BOOST_PP_LIST_FOLD_LEFT_207(o, s, BOOST_PP_LIST_REVERSE_D(207, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_208(o, s, l) BOOST_PP_LIST_FOLD_LEFT_208(o, s, BOOST_PP_LIST_REVERSE_D(208, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_209(o, s, l) BOOST_PP_LIST_FOLD_LEFT_209(o, s, BOOST_PP_LIST_REVERSE_D(209, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_210(o, s, l) BOOST_PP_LIST_FOLD_LEFT_210(o, s, BOOST_PP_LIST_REVERSE_D(210, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_211(o, s, l) BOOST_PP_LIST_FOLD_LEFT_211(o, s, BOOST_PP_LIST_REVERSE_D(211, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_212(o, s, l) BOOST_PP_LIST_FOLD_LEFT_212(o, s, BOOST_PP_LIST_REVERSE_D(212, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_213(o, s, l) BOOST_PP_LIST_FOLD_LEFT_213(o, s, BOOST_PP_LIST_REVERSE_D(213, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_214(o, s, l) BOOST_PP_LIST_FOLD_LEFT_214(o, s, BOOST_PP_LIST_REVERSE_D(214, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_215(o, s, l) BOOST_PP_LIST_FOLD_LEFT_215(o, s, BOOST_PP_LIST_REVERSE_D(215, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_216(o, s, l) BOOST_PP_LIST_FOLD_LEFT_216(o, s, BOOST_PP_LIST_REVERSE_D(216, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_217(o, s, l) BOOST_PP_LIST_FOLD_LEFT_217(o, s, BOOST_PP_LIST_REVERSE_D(217, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_218(o, s, l) BOOST_PP_LIST_FOLD_LEFT_218(o, s, BOOST_PP_LIST_REVERSE_D(218, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_219(o, s, l) BOOST_PP_LIST_FOLD_LEFT_219(o, s, BOOST_PP_LIST_REVERSE_D(219, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_220(o, s, l) BOOST_PP_LIST_FOLD_LEFT_220(o, s, BOOST_PP_LIST_REVERSE_D(220, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_221(o, s, l) BOOST_PP_LIST_FOLD_LEFT_221(o, s, BOOST_PP_LIST_REVERSE_D(221, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_222(o, s, l) BOOST_PP_LIST_FOLD_LEFT_222(o, s, BOOST_PP_LIST_REVERSE_D(222, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_223(o, s, l) BOOST_PP_LIST_FOLD_LEFT_223(o, s, BOOST_PP_LIST_REVERSE_D(223, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_224(o, s, l) BOOST_PP_LIST_FOLD_LEFT_224(o, s, BOOST_PP_LIST_REVERSE_D(224, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_225(o, s, l) BOOST_PP_LIST_FOLD_LEFT_225(o, s, BOOST_PP_LIST_REVERSE_D(225, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_226(o, s, l) BOOST_PP_LIST_FOLD_LEFT_226(o, s, BOOST_PP_LIST_REVERSE_D(226, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_227(o, s, l) BOOST_PP_LIST_FOLD_LEFT_227(o, s, BOOST_PP_LIST_REVERSE_D(227, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_228(o, s, l) BOOST_PP_LIST_FOLD_LEFT_228(o, s, BOOST_PP_LIST_REVERSE_D(228, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_229(o, s, l) BOOST_PP_LIST_FOLD_LEFT_229(o, s, BOOST_PP_LIST_REVERSE_D(229, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_230(o, s, l) BOOST_PP_LIST_FOLD_LEFT_230(o, s, BOOST_PP_LIST_REVERSE_D(230, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_231(o, s, l) BOOST_PP_LIST_FOLD_LEFT_231(o, s, BOOST_PP_LIST_REVERSE_D(231, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_232(o, s, l) BOOST_PP_LIST_FOLD_LEFT_232(o, s, BOOST_PP_LIST_REVERSE_D(232, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_233(o, s, l) BOOST_PP_LIST_FOLD_LEFT_233(o, s, BOOST_PP_LIST_REVERSE_D(233, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_234(o, s, l) BOOST_PP_LIST_FOLD_LEFT_234(o, s, BOOST_PP_LIST_REVERSE_D(234, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_235(o, s, l) BOOST_PP_LIST_FOLD_LEFT_235(o, s, BOOST_PP_LIST_REVERSE_D(235, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_236(o, s, l) BOOST_PP_LIST_FOLD_LEFT_236(o, s, BOOST_PP_LIST_REVERSE_D(236, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_237(o, s, l) BOOST_PP_LIST_FOLD_LEFT_237(o, s, BOOST_PP_LIST_REVERSE_D(237, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_238(o, s, l) BOOST_PP_LIST_FOLD_LEFT_238(o, s, BOOST_PP_LIST_REVERSE_D(238, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_239(o, s, l) BOOST_PP_LIST_FOLD_LEFT_239(o, s, BOOST_PP_LIST_REVERSE_D(239, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_240(o, s, l) BOOST_PP_LIST_FOLD_LEFT_240(o, s, BOOST_PP_LIST_REVERSE_D(240, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_241(o, s, l) BOOST_PP_LIST_FOLD_LEFT_241(o, s, BOOST_PP_LIST_REVERSE_D(241, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_242(o, s, l) BOOST_PP_LIST_FOLD_LEFT_242(o, s, BOOST_PP_LIST_REVERSE_D(242, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_243(o, s, l) BOOST_PP_LIST_FOLD_LEFT_243(o, s, BOOST_PP_LIST_REVERSE_D(243, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_244(o, s, l) BOOST_PP_LIST_FOLD_LEFT_244(o, s, BOOST_PP_LIST_REVERSE_D(244, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_245(o, s, l) BOOST_PP_LIST_FOLD_LEFT_245(o, s, BOOST_PP_LIST_REVERSE_D(245, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_246(o, s, l) BOOST_PP_LIST_FOLD_LEFT_246(o, s, BOOST_PP_LIST_REVERSE_D(246, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_247(o, s, l) BOOST_PP_LIST_FOLD_LEFT_247(o, s, BOOST_PP_LIST_REVERSE_D(247, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_248(o, s, l) BOOST_PP_LIST_FOLD_LEFT_248(o, s, BOOST_PP_LIST_REVERSE_D(248, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_249(o, s, l) BOOST_PP_LIST_FOLD_LEFT_249(o, s, BOOST_PP_LIST_REVERSE_D(249, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_250(o, s, l) BOOST_PP_LIST_FOLD_LEFT_250(o, s, BOOST_PP_LIST_REVERSE_D(250, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_251(o, s, l) BOOST_PP_LIST_FOLD_LEFT_251(o, s, BOOST_PP_LIST_REVERSE_D(251, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_252(o, s, l) BOOST_PP_LIST_FOLD_LEFT_252(o, s, BOOST_PP_LIST_REVERSE_D(252, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_253(o, s, l) BOOST_PP_LIST_FOLD_LEFT_253(o, s, BOOST_PP_LIST_REVERSE_D(253, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_254(o, s, l) BOOST_PP_LIST_FOLD_LEFT_254(o, s, BOOST_PP_LIST_REVERSE_D(254, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_255(o, s, l) BOOST_PP_LIST_FOLD_LEFT_255(o, s, BOOST_PP_LIST_REVERSE_D(255, l)) +# define BOOST_PP_LIST_FOLD_RIGHT_256(o, s, l) BOOST_PP_LIST_FOLD_LEFT_256(o, s, BOOST_PP_LIST_REVERSE_D(256, l)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/enum.hpp b/plugin/wave/include/boost/preprocessor/list/enum.hpp new file mode 100644 index 0000000..1eabea6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/enum.hpp @@ -0,0 +1,41 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_ENUM_HPP +# define BOOST_PREPROCESSOR_LIST_ENUM_HPP +# +# include +# include +# include +# +# /* BOOST_PP_LIST_ENUM */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_ENUM(list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list) +# else +# define BOOST_PP_LIST_ENUM(list) BOOST_PP_LIST_ENUM_I(list) +# define BOOST_PP_LIST_ENUM_I(list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list) +# endif +# +# define BOOST_PP_LIST_ENUM_O(r, _, i, elem) BOOST_PP_COMMA_IF(i) elem +# +# /* BOOST_PP_LIST_ENUM_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_ENUM_R(r, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list) +# else +# define BOOST_PP_LIST_ENUM_R(r, list) BOOST_PP_LIST_ENUM_R_I(r, list) +# define BOOST_PP_LIST_ENUM_R_I(r, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_ENUM_O, BOOST_PP_NIL, list) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/filter.hpp b/plugin/wave/include/boost/preprocessor/list/filter.hpp new file mode 100644 index 0000000..9e0faab --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/filter.hpp @@ -0,0 +1,54 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FILTER_HPP +# define BOOST_PREPROCESSOR_LIST_FILTER_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FILTER */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FILTER(pred, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_FILTER_O, (pred, data, BOOST_PP_NIL), list)) +# else +# define BOOST_PP_LIST_FILTER(pred, data, list) BOOST_PP_LIST_FILTER_I(pred, data, list) +# define BOOST_PP_LIST_FILTER_I(pred, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_FILTER_O, (pred, data, BOOST_PP_NIL), list)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FILTER_O(d, pdr, elem) BOOST_PP_LIST_FILTER_O_D(d, BOOST_PP_TUPLE_ELEM(3, 0, pdr), BOOST_PP_TUPLE_ELEM(3, 1, pdr), BOOST_PP_TUPLE_ELEM(3, 2, pdr), elem) +# else +# define BOOST_PP_LIST_FILTER_O(d, pdr, elem) BOOST_PP_LIST_FILTER_O_I(d, BOOST_PP_TUPLE_REM_3 pdr, elem) +# define BOOST_PP_LIST_FILTER_O_I(d, im, elem) BOOST_PP_LIST_FILTER_O_D(d, im, elem) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_LIST_FILTER_O_D(d, pred, data, res, elem) (pred, data, BOOST_PP_IF(pred(d, data, elem), (elem, res), res)) +# else +# define BOOST_PP_LIST_FILTER_O_D(d, pred, data, res, elem) (pred, data, BOOST_PP_IF(pred##(d, data, elem), (elem, res), res)) +# endif +# +# /* BOOST_PP_LIST_FILTER_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FILTER_D(d, pred, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_FILTER_O, (pred, data, BOOST_PP_NIL), list)) +# else +# define BOOST_PP_LIST_FILTER_D(d, pred, data, list) BOOST_PP_LIST_FILTER_D_I(d, pred, data, list) +# define BOOST_PP_LIST_FILTER_D_I(d, pred, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_FILTER_O, (pred, data, BOOST_PP_NIL), list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/first_n.hpp b/plugin/wave/include/boost/preprocessor/list/first_n.hpp new file mode 100644 index 0000000..5e60c50 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/first_n.hpp @@ -0,0 +1,58 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FIRST_N_HPP +# define BOOST_PREPROCESSOR_LIST_FIRST_N_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FIRST_N */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FIRST_N(count, list) BOOST_PP_LIST_REVERSE(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_WHILE(BOOST_PP_LIST_FIRST_N_P, BOOST_PP_LIST_FIRST_N_O, (count, list, BOOST_PP_NIL)))) +# else +# define BOOST_PP_LIST_FIRST_N(count, list) BOOST_PP_LIST_FIRST_N_I(count, list) +# define BOOST_PP_LIST_FIRST_N_I(count, list) BOOST_PP_LIST_REVERSE(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_WHILE(BOOST_PP_LIST_FIRST_N_P, BOOST_PP_LIST_FIRST_N_O, (count, list, BOOST_PP_NIL)))) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FIRST_N_P(d, data) BOOST_PP_TUPLE_ELEM(3, 0, data) +# else +# define BOOST_PP_LIST_FIRST_N_P(d, data) BOOST_PP_LIST_FIRST_N_P_I data +# define BOOST_PP_LIST_FIRST_N_P_I(c, l, nl) c +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_FIRST_N_O(d, data) BOOST_PP_LIST_FIRST_N_O_D data +# else +# define BOOST_PP_LIST_FIRST_N_O(d, data) BOOST_PP_LIST_FIRST_N_O_D(BOOST_PP_TUPLE_ELEM(3, 0, data), BOOST_PP_TUPLE_ELEM(3, 1, data), BOOST_PP_TUPLE_ELEM(3, 2, data)) +# endif +# +# define BOOST_PP_LIST_FIRST_N_O_D(c, l, nl) (BOOST_PP_DEC(c), BOOST_PP_LIST_REST(l), (BOOST_PP_LIST_FIRST(l), nl)) +# +# /* BOOST_PP_LIST_FIRST_N_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FIRST_N_D(d, count, list) BOOST_PP_LIST_REVERSE_D(d, BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_FIRST_N_P, BOOST_PP_LIST_FIRST_N_O, (count, list, BOOST_PP_NIL)))) +# else +# define BOOST_PP_LIST_FIRST_N_D(d, count, list) BOOST_PP_LIST_FIRST_N_D_I(d, count, list) +# define BOOST_PP_LIST_FIRST_N_D_I(d, count, list) BOOST_PP_LIST_REVERSE_D(d, BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_FIRST_N_P, BOOST_PP_LIST_FIRST_N_O, (count, list, BOOST_PP_NIL)))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/fold_left.hpp b/plugin/wave/include/boost/preprocessor/list/fold_left.hpp new file mode 100644 index 0000000..f235aec --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/fold_left.hpp @@ -0,0 +1,303 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FOLD_LEFT_HPP +# define BOOST_PREPROCESSOR_LIST_FOLD_LEFT_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FOLD_LEFT */ +# +# if 0 +# define BOOST_PP_LIST_FOLD_LEFT(op, state, list) +# endif +# +# define BOOST_PP_LIST_FOLD_LEFT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_LEFT_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)) +# +# define BOOST_PP_LIST_FOLD_LEFT_257(o, s, l) BOOST_PP_ERROR(0x0004) +# +# define BOOST_PP_LIST_FOLD_LEFT_D(d, o, s, l) BOOST_PP_LIST_FOLD_LEFT_ ## d(o, s, l) +# define BOOST_PP_LIST_FOLD_LEFT_2ND BOOST_PP_LIST_FOLD_LEFT +# define BOOST_PP_LIST_FOLD_LEFT_2ND_D BOOST_PP_LIST_FOLD_LEFT_D +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# include +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# include +# else +# include +# endif +# +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_1(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_2(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_3(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_4(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_5(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_6(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_7(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_8(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_9(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_10(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_11(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_12(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_13(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_14(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_15(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_16(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_17(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_18(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_19(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_20(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_21(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_22(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_23(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_24(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_25(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_26(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_27(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_28(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_29(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_30(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_31(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_32(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_33(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_34(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_35(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_36(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_37(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_38(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_39(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_40(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_41(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_42(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_43(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_44(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_45(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_46(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_47(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_48(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_49(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_50(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_51(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_52(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_53(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_54(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_55(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_56(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_57(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_58(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_59(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_60(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_61(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_62(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_63(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_64(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_65(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_66(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_67(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_68(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_69(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_70(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_71(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_72(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_73(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_74(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_75(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_76(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_77(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_78(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_79(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_80(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_81(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_82(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_83(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_84(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_85(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_86(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_87(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_88(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_89(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_90(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_91(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_92(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_93(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_94(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_95(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_96(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_97(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_98(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_99(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_100(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_101(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_102(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_103(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_104(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_105(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_106(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_107(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_108(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_109(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_110(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_111(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_112(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_113(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_114(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_115(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_116(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_117(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_118(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_119(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_120(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_121(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_122(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_123(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_124(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_125(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_126(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_127(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_128(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_129(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_130(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_131(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_132(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_133(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_134(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_135(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_136(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_137(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_138(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_139(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_140(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_141(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_142(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_143(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_144(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_145(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_146(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_147(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_148(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_149(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_150(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_151(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_152(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_153(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_154(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_155(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_156(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_157(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_158(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_159(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_160(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_161(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_162(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_163(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_164(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_165(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_166(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_167(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_168(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_169(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_170(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_171(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_172(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_173(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_174(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_175(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_176(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_177(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_178(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_179(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_180(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_181(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_182(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_183(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_184(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_185(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_186(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_187(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_188(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_189(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_190(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_191(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_192(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_193(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_194(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_195(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_196(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_197(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_198(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_199(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_200(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_201(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_202(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_203(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_204(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_205(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_206(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_207(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_208(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_209(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_210(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_211(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_212(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_213(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_214(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_215(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_216(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_217(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_218(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_219(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_220(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_221(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_222(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_223(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_224(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_225(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_226(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_227(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_228(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_229(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_230(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_231(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_232(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_233(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_234(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_235(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_236(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_237(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_238(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_239(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_240(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_241(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_242(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_243(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_244(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_245(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_246(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_247(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_248(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_249(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_250(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_251(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_252(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_253(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_254(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_255(o, s, l) 0 +# define BOOST_PP_LIST_FOLD_LEFT_CHECK_BOOST_PP_LIST_FOLD_LEFT_256(o, s, l) 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/fold_right.hpp b/plugin/wave/include/boost/preprocessor/list/fold_right.hpp new file mode 100644 index 0000000..ce18afe --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/fold_right.hpp @@ -0,0 +1,40 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP +# define BOOST_PREPROCESSOR_LIST_FOLD_RIGHT_HPP +# +# include +# include +# include +# include +# +# if 0 +# define BOOST_PP_LIST_FOLD_RIGHT(op, state, list) +# endif +# +# define BOOST_PP_LIST_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_LIST_FOLD_RIGHT_, BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256)) +# +# define BOOST_PP_LIST_FOLD_RIGHT_257(o, s, l) BOOST_PP_ERROR(0x0004) +# +# define BOOST_PP_LIST_FOLD_RIGHT_D(d, o, s, l) BOOST_PP_LIST_FOLD_RIGHT_ ## d(o, s, l) +# define BOOST_PP_LIST_FOLD_RIGHT_2ND BOOST_PP_LIST_FOLD_RIGHT +# define BOOST_PP_LIST_FOLD_RIGHT_2ND_D BOOST_PP_LIST_FOLD_RIGHT_D +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# include +# else +# include +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/for_each.hpp b/plugin/wave/include/boost/preprocessor/list/for_each.hpp new file mode 100644 index 0000000..dd04eaa --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/for_each.hpp @@ -0,0 +1,49 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FOR_EACH_HPP +# define BOOST_PREPROCESSOR_LIST_FOR_EACH_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FOR_EACH */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH(macro, data, list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_FOR_EACH_O, (macro, data), list) +# else +# define BOOST_PP_LIST_FOR_EACH(macro, data, list) BOOST_PP_LIST_FOR_EACH_X(macro, data, list) +# define BOOST_PP_LIST_FOR_EACH_X(macro, data, list) BOOST_PP_LIST_FOR_EACH_I(BOOST_PP_LIST_FOR_EACH_O, (macro, data), list) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_O(r, md, i, elem) BOOST_PP_LIST_FOR_EACH_O_D(r, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md), elem) +# else +# define BOOST_PP_LIST_FOR_EACH_O(r, md, i, elem) BOOST_PP_LIST_FOR_EACH_O_I(r, BOOST_PP_TUPLE_REM_2 md, elem) +# define BOOST_PP_LIST_FOR_EACH_O_I(r, im, elem) BOOST_PP_LIST_FOR_EACH_O_D(r, im, elem) +# endif +# +# define BOOST_PP_LIST_FOR_EACH_O_D(r, m, d, elem) m(r, d, elem) +# +# /* BOOST_PP_LIST_FOR_EACH_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_R(r, macro, data, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_FOR_EACH_O, (macro, data), list) +# else +# define BOOST_PP_LIST_FOR_EACH_R(r, macro, data, list) BOOST_PP_LIST_FOR_EACH_R_X(r, macro, data, list) +# define BOOST_PP_LIST_FOR_EACH_R_X(r, macro, data, list) BOOST_PP_LIST_FOR_EACH_I_R(r, BOOST_PP_LIST_FOR_EACH_O, (macro, data), list) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/for_each_i.hpp b/plugin/wave/include/boost/preprocessor/list/for_each_i.hpp new file mode 100644 index 0000000..8f02e2e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/for_each_i.hpp @@ -0,0 +1,65 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_LIST_FOR_EACH_I_HPP +# define BOOST_PREPROCESSOR_LIST_LIST_FOR_EACH_I_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FOR_EACH_I */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() && ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_LIST_FOR_EACH_I(macro, data, list) BOOST_PP_FOR((macro, data, list, 0), BOOST_PP_LIST_FOR_EACH_I_P, BOOST_PP_LIST_FOR_EACH_I_O, BOOST_PP_LIST_FOR_EACH_I_M) +# else +# define BOOST_PP_LIST_FOR_EACH_I(macro, data, list) BOOST_PP_LIST_FOR_EACH_I_I(macro, data, list) +# define BOOST_PP_LIST_FOR_EACH_I_I(macro, data, list) BOOST_PP_FOR((macro, data, list, 0), BOOST_PP_LIST_FOR_EACH_I_P, BOOST_PP_LIST_FOR_EACH_I_O, BOOST_PP_LIST_FOR_EACH_I_M) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_LIST_FOR_EACH_I_P(r, x) BOOST_PP_LIST_FOR_EACH_I_P_D x +# define BOOST_PP_LIST_FOR_EACH_I_P_D(m, d, l, i) BOOST_PP_LIST_IS_CONS(l) +# else +# define BOOST_PP_LIST_FOR_EACH_I_P(r, x) BOOST_PP_LIST_IS_CONS(BOOST_PP_TUPLE_ELEM(4, 2, x)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_FOR_EACH_I_O(r, x) BOOST_PP_LIST_FOR_EACH_I_O_D x +# define BOOST_PP_LIST_FOR_EACH_I_O_D(m, d, l, i) (m, d, BOOST_PP_LIST_REST(l), BOOST_PP_INC(i)) +# else +# define BOOST_PP_LIST_FOR_EACH_I_O(r, x) (BOOST_PP_TUPLE_ELEM(4, 0, x), BOOST_PP_TUPLE_ELEM(4, 1, x), BOOST_PP_LIST_REST(BOOST_PP_TUPLE_ELEM(4, 2, x)), BOOST_PP_INC(BOOST_PP_TUPLE_ELEM(4, 3, x))) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_I_M(r, x) BOOST_PP_LIST_FOR_EACH_I_M_D(r, BOOST_PP_TUPLE_ELEM(4, 0, x), BOOST_PP_TUPLE_ELEM(4, 1, x), BOOST_PP_TUPLE_ELEM(4, 2, x), BOOST_PP_TUPLE_ELEM(4, 3, x)) +# else +# define BOOST_PP_LIST_FOR_EACH_I_M(r, x) BOOST_PP_LIST_FOR_EACH_I_M_I(r, BOOST_PP_TUPLE_REM_4 x) +# define BOOST_PP_LIST_FOR_EACH_I_M_I(r, x_e) BOOST_PP_LIST_FOR_EACH_I_M_D(r, x_e) +# endif +# +# define BOOST_PP_LIST_FOR_EACH_I_M_D(r, m, d, l, i) m(r, d, i, BOOST_PP_LIST_FIRST(l)) +# +# /* BOOST_PP_LIST_FOR_EACH_I_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_I_R(r, macro, data, list) BOOST_PP_FOR_ ## r((macro, data, list, 0), BOOST_PP_LIST_FOR_EACH_I_P, BOOST_PP_LIST_FOR_EACH_I_O, BOOST_PP_LIST_FOR_EACH_I_M) +# else +# define BOOST_PP_LIST_FOR_EACH_I_R(r, macro, data, list) BOOST_PP_LIST_FOR_EACH_I_R_I(r, macro, data, list) +# define BOOST_PP_LIST_FOR_EACH_I_R_I(r, macro, data, list) BOOST_PP_FOR_ ## r((macro, data, list, 0), BOOST_PP_LIST_FOR_EACH_I_P, BOOST_PP_LIST_FOR_EACH_I_O, BOOST_PP_LIST_FOR_EACH_I_M) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/for_each_product.hpp b/plugin/wave/include/boost/preprocessor/list/for_each_product.hpp new file mode 100644 index 0000000..6d5319b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/for_each_product.hpp @@ -0,0 +1,141 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_FOR_EACH_PRODUCT_HPP +# define BOOST_PREPROCESSOR_LIST_FOR_EACH_PRODUCT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_FOR_EACH_PRODUCT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT(macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_E(BOOST_PP_FOR, macro, size, BOOST_PP_TUPLE_TO_LIST(size, tuple)) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT(macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_Q(macro, size, tuple) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_Q(macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_E(BOOST_PP_FOR, macro, size, BOOST_PP_TUPLE_TO_LIST(size, tuple)) +# endif +# +# /* BOOST_PP_LIST_FOR_EACH_PRODUCT_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_R(r, macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_E(BOOST_PP_FOR_ ## r, macro, size, BOOST_PP_TUPLE_TO_LIST(size, tuple)) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_R(r, macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_R_Q(r, macro, size, tuple) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_R_Q(r, macro, size, tuple) BOOST_PP_LIST_FOR_EACH_PRODUCT_E(BOOST_PP_FOR_ ## r, macro, size, BOOST_PP_TUPLE_TO_LIST(size, tuple)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_E(impl, macro, size, lists) impl((BOOST_PP_LIST_FIRST(lists), BOOST_PP_LIST_REST(lists), BOOST_PP_NIL, macro, size), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_0) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_E(impl, macro, size, lists) BOOST_PP_LIST_FOR_EACH_PRODUCT_E_D(impl, macro, size, lists) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_E_D(impl, macro, size, lists) impl((BOOST_PP_LIST_FIRST(lists), BOOST_PP_LIST_REST(lists), BOOST_PP_NIL, macro, size), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_0) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_P(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_P_I data +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_P_I(a, b, res, macro, size) BOOST_PP_LIST_IS_CONS(a) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_P(r, data) BOOST_PP_LIST_IS_CONS(BOOST_PP_TUPLE_ELEM(5, 0, data)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_O(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_O_I data +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_O_I(a, b, res, macro, size) (BOOST_PP_LIST_REST(a), b, res, macro, size) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_O(r, data) (BOOST_PP_LIST_REST(BOOST_PP_TUPLE_ELEM(5, 0, data)), BOOST_PP_TUPLE_ELEM(5, 1, data), BOOST_PP_TUPLE_ELEM(5, 2, data), BOOST_PP_TUPLE_ELEM(5, 3, data), BOOST_PP_TUPLE_ELEM(5, 4, data)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_I_I(r, BOOST_PP_TUPLE_ELEM(5, 0, data), BOOST_PP_TUPLE_ELEM(5, 1, data), BOOST_PP_TUPLE_ELEM(5, 2, data), BOOST_PP_TUPLE_ELEM(5, 3, data), BOOST_PP_TUPLE_ELEM(5, 4, data)) +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_I_D(r, BOOST_PP_TUPLE_REM_5 data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I_D(r, data_e) BOOST_PP_LIST_FOR_EACH_PRODUCT_I_I(r, data_e) +# endif +# +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I_I(r, a, b, res, macro, size) BOOST_PP_LIST_FOR_EACH_PRODUCT_I_II(r, macro, BOOST_PP_LIST_TO_TUPLE_R(r, (BOOST_PP_LIST_FIRST(a), res)), size) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I_II(r, macro, args, size) BOOST_PP_LIST_FOR_EACH_PRODUCT_I_III(r, macro, args, size) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_I_III(r, macro, args, size) macro(r, BOOST_PP_TUPLE_REVERSE(size, args)) +# +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, i) BOOST_PP_IF(BOOST_PP_LIST_IS_CONS(BOOST_PP_TUPLE_ELEM(5, 1, data)), BOOST_PP_LIST_FOR_EACH_PRODUCT_N_ ## i, BOOST_PP_LIST_FOR_EACH_PRODUCT_I) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data) BOOST_PP_LIST_FOR_EACH_PRODUCT_H_I data +# else +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data) BOOST_PP_LIST_FOR_EACH_PRODUCT_H_I(BOOST_PP_TUPLE_ELEM(5, 0, data), BOOST_PP_TUPLE_ELEM(5, 1, data), BOOST_PP_TUPLE_ELEM(5, 2, data), BOOST_PP_TUPLE_ELEM(5, 3, data), BOOST_PP_TUPLE_ELEM(5, 4, data)) +# endif +# +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_H_I(a, b, res, macro, size) (BOOST_PP_LIST_FIRST(b), BOOST_PP_LIST_REST(b), (BOOST_PP_LIST_FIRST(a), res), macro, size) +# +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_0(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 0)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_1(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 1)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_2(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 2)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_3(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 3)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_4(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 4)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_5(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 5)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_6(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 6)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_7(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 7)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_8(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 8)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_9(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 9)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_10(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 10)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_11(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 11)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_12(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 12)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_13(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 13)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_14(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 14)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_15(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 15)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_16(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 16)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_17(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 17)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_18(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 18)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_19(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 19)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_20(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 20)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_21(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 21)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_22(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 22)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_23(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 23)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_24(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 24)(r, data) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_M_25(r, data) BOOST_PP_LIST_FOR_EACH_PRODUCT_C(data, 25)(r, data) +# +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_0(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_1) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_1(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_2) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_2(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_3) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_3(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_4) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_4(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_5) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_5(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_6) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_6(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_7) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_7(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_8) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_8(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_9) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_9(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_10) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_10(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_11) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_11(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_12) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_12(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_13) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_13(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_14) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_14(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_15) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_15(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_16) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_16(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_17) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_17(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_18) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_18(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_19) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_19(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_20) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_20(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_21) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_21(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_22) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_22(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_23) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_23(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_24) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_24(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_25) +# define BOOST_PP_LIST_FOR_EACH_PRODUCT_N_25(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_LIST_FOR_EACH_PRODUCT_H(data), BOOST_PP_LIST_FOR_EACH_PRODUCT_P, BOOST_PP_LIST_FOR_EACH_PRODUCT_O, BOOST_PP_LIST_FOR_EACH_PRODUCT_M_26) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/rest_n.hpp b/plugin/wave/include/boost/preprocessor/list/rest_n.hpp new file mode 100644 index 0000000..b42ee5f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/rest_n.hpp @@ -0,0 +1,55 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_REST_N_HPP +# define BOOST_PREPROCESSOR_LIST_REST_N_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_REST_N */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REST_N(count, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_LIST_REST_N_P, BOOST_PP_LIST_REST_N_O, (list, count))) +# else +# define BOOST_PP_LIST_REST_N(count, list) BOOST_PP_LIST_REST_N_I(count, list) +# define BOOST_PP_LIST_REST_N_I(count, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_LIST_REST_N_P, BOOST_PP_LIST_REST_N_O, (list, count))) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REST_N_P(d, lc) BOOST_PP_TUPLE_ELEM(2, 1, lc) +# else +# define BOOST_PP_LIST_REST_N_P(d, lc) BOOST_PP_LIST_REST_N_P_I lc +# define BOOST_PP_LIST_REST_N_P_I(list, count) count +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REST_N_O(d, lc) (BOOST_PP_LIST_REST(BOOST_PP_TUPLE_ELEM(2, 0, lc)), BOOST_PP_DEC(BOOST_PP_TUPLE_ELEM(2, 1, lc))) +# else +# define BOOST_PP_LIST_REST_N_O(d, lc) BOOST_PP_LIST_REST_N_O_I lc +# define BOOST_PP_LIST_REST_N_O_I(list, count) (BOOST_PP_LIST_REST(list), BOOST_PP_DEC(count)) +# endif +# +# /* BOOST_PP_LIST_REST_N_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REST_N_D(d, count, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_REST_N_P, BOOST_PP_LIST_REST_N_O, (list, count))) +# else +# define BOOST_PP_LIST_REST_N_D(d, count, list) BOOST_PP_LIST_REST_N_D_I(d, count, list) +# define BOOST_PP_LIST_REST_N_D_I(d, count, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_REST_N_P, BOOST_PP_LIST_REST_N_O, (list, count))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/reverse.hpp b/plugin/wave/include/boost/preprocessor/list/reverse.hpp new file mode 100644 index 0000000..651da05 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/reverse.hpp @@ -0,0 +1,40 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_REVERSE_HPP +# define BOOST_PREPROCESSOR_LIST_REVERSE_HPP +# +# include +# include +# +# /* BOOST_PP_LIST_REVERSE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REVERSE(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) +# else +# define BOOST_PP_LIST_REVERSE(list) BOOST_PP_LIST_REVERSE_I(list) +# define BOOST_PP_LIST_REVERSE_I(list) BOOST_PP_LIST_FOLD_LEFT(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) +# endif +# +# define BOOST_PP_LIST_REVERSE_O(d, s, x) (x, s) +# +# /* BOOST_PP_LIST_REVERSE_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_REVERSE_D(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) +# else +# define BOOST_PP_LIST_REVERSE_D(d, list) BOOST_PP_LIST_REVERSE_D_I(d, list) +# define BOOST_PP_LIST_REVERSE_D_I(d, list) BOOST_PP_LIST_FOLD_LEFT_ ## d(BOOST_PP_LIST_REVERSE_O, BOOST_PP_NIL, list) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/size.hpp b/plugin/wave/include/boost/preprocessor/list/size.hpp new file mode 100644 index 0000000..0757fba --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/size.hpp @@ -0,0 +1,58 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_SIZE_HPP +# define BOOST_PREPROCESSOR_LIST_SIZE_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_SIZE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_SIZE(list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_LIST_SIZE_P, BOOST_PP_LIST_SIZE_O, (0, list))) +# else +# define BOOST_PP_LIST_SIZE(list) BOOST_PP_LIST_SIZE_I(list) +# define BOOST_PP_LIST_SIZE_I(list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE(BOOST_PP_LIST_SIZE_P, BOOST_PP_LIST_SIZE_O, (0, list))) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_SIZE_P(d, rl) BOOST_PP_LIST_IS_CONS(BOOST_PP_TUPLE_ELEM(2, 1, rl)) +# else +# define BOOST_PP_LIST_SIZE_P(d, rl) BOOST_PP_LIST_SIZE_P_I(BOOST_PP_TUPLE_REM_2 rl) +# define BOOST_PP_LIST_SIZE_P_I(im) BOOST_PP_LIST_SIZE_P_II(im) +# define BOOST_PP_LIST_SIZE_P_II(r, l) BOOST_PP_LIST_IS_CONS(l) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_SIZE_O(d, rl) (BOOST_PP_INC(BOOST_PP_TUPLE_ELEM(2, 0, rl)), BOOST_PP_LIST_REST(BOOST_PP_TUPLE_ELEM(2, 1, rl))) +# else +# define BOOST_PP_LIST_SIZE_O(d, rl) BOOST_PP_LIST_SIZE_O_I(BOOST_PP_TUPLE_REM_2 rl) +# define BOOST_PP_LIST_SIZE_O_I(im) BOOST_PP_LIST_SIZE_O_II(im) +# define BOOST_PP_LIST_SIZE_O_II(r, l) (BOOST_PP_INC(r), BOOST_PP_LIST_REST(l)) +# endif +# +# /* BOOST_PP_LIST_SIZE_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_SIZE_D(d, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_SIZE_P, BOOST_PP_LIST_SIZE_O, (0, list))) +# else +# define BOOST_PP_LIST_SIZE_D(d, list) BOOST_PP_LIST_SIZE_D_I(d, list) +# define BOOST_PP_LIST_SIZE_D_I(d, list) BOOST_PP_TUPLE_ELEM(2, 0, BOOST_PP_WHILE_ ## d(BOOST_PP_LIST_SIZE_P, BOOST_PP_LIST_SIZE_O, (0, list))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/to_array.hpp b/plugin/wave/include/boost/preprocessor/list/to_array.hpp new file mode 100644 index 0000000..20829b9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/to_array.hpp @@ -0,0 +1,155 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2011. +# * (C) Copyright Edward Diener 2011,2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_TO_ARRAY_HPP +# define BOOST_PREPROCESSOR_LIST_TO_ARRAY_HPP +# +# include +# include +# include +# include +# include +# include +# include +# if BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC && (_MSC_VER <= 1400) +# include +# endif +# +# /* BOOST_PP_LIST_TO_ARRAY */ +# +# if BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC && (_MSC_VER <= 1400) +# define BOOST_PP_LIST_TO_ARRAY(list) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_LIST_IS_NIL(list), \ + BOOST_PP_LIST_TO_ARRAY_VC8ORLESS_EMPTY, \ + BOOST_PP_LIST_TO_ARRAY_VC8ORLESS_DO \ + ) \ + (list) \ +/**/ +# define BOOST_PP_LIST_TO_ARRAY_VC8ORLESS_EMPTY(list) (0,()) +# define BOOST_PP_LIST_TO_ARRAY_VC8ORLESS_DO(list) BOOST_PP_LIST_TO_ARRAY_I(BOOST_PP_WHILE, list) +# else +# define BOOST_PP_LIST_TO_ARRAY(list) BOOST_PP_LIST_TO_ARRAY_I(BOOST_PP_WHILE, list) +# endif + +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_LIST_TO_ARRAY_I(w, list) \ + BOOST_PP_LIST_TO_ARRAY_II(((BOOST_PP_TUPLE_REM_CTOR( \ + 3, \ + w(BOOST_PP_LIST_TO_ARRAY_P, BOOST_PP_LIST_TO_ARRAY_O, (list, 1, (~))) \ + )))) \ + /**/ +# define BOOST_PP_LIST_TO_ARRAY_II(p) BOOST_PP_LIST_TO_ARRAY_II_B(p) +# define BOOST_PP_LIST_TO_ARRAY_II_B(p) BOOST_PP_LIST_TO_ARRAY_II_C ## p +# define BOOST_PP_LIST_TO_ARRAY_II_C(p) BOOST_PP_LIST_TO_ARRAY_III p +# else +# define BOOST_PP_LIST_TO_ARRAY_I(w, list) \ + BOOST_PP_LIST_TO_ARRAY_II(BOOST_PP_TUPLE_REM_CTOR( \ + 3, \ + w(BOOST_PP_LIST_TO_ARRAY_P, BOOST_PP_LIST_TO_ARRAY_O, (list, 1, (~))) \ + )) \ + /**/ +# define BOOST_PP_LIST_TO_ARRAY_II(im) BOOST_PP_LIST_TO_ARRAY_III(im) +# endif +# if BOOST_PP_VARIADICS +# define BOOST_PP_LIST_TO_ARRAY_III(list, size, tuple) (BOOST_PP_DEC(size), BOOST_PP_LIST_TO_ARRAY_IV tuple) +# define BOOST_PP_LIST_TO_ARRAY_IV(_, ...) (__VA_ARGS__) +# else +# define BOOST_PP_LIST_TO_ARRAY_III(list, size, tuple) (BOOST_PP_DEC(size), BOOST_PP_LIST_TO_ARRAY_IV_ ## size tuple) +# define BOOST_PP_LIST_TO_ARRAY_IV_2(_, e0) (e0) +# define BOOST_PP_LIST_TO_ARRAY_IV_3(_, e0, e1) (e0, e1) +# define BOOST_PP_LIST_TO_ARRAY_IV_4(_, e0, e1, e2) (e0, e1, e2) +# define BOOST_PP_LIST_TO_ARRAY_IV_5(_, e0, e1, e2, e3) (e0, e1, e2, e3) +# define BOOST_PP_LIST_TO_ARRAY_IV_6(_, e0, e1, e2, e3, e4) (e0, e1, e2, e3, e4) +# define BOOST_PP_LIST_TO_ARRAY_IV_7(_, e0, e1, e2, e3, e4, e5) (e0, e1, e2, e3, e4, e5) +# define BOOST_PP_LIST_TO_ARRAY_IV_8(_, e0, e1, e2, e3, e4, e5, e6) (e0, e1, e2, e3, e4, e5, e6) +# define BOOST_PP_LIST_TO_ARRAY_IV_9(_, e0, e1, e2, e3, e4, e5, e6, e7) (e0, e1, e2, e3, e4, e5, e6, e7) +# define BOOST_PP_LIST_TO_ARRAY_IV_10(_, e0, e1, e2, e3, e4, e5, e6, e7, e8) (e0, e1, e2, e3, e4, e5, e6, e7, e8) +# define BOOST_PP_LIST_TO_ARRAY_IV_11(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) +# define BOOST_PP_LIST_TO_ARRAY_IV_12(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) +# define BOOST_PP_LIST_TO_ARRAY_IV_13(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) +# define BOOST_PP_LIST_TO_ARRAY_IV_14(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) +# define BOOST_PP_LIST_TO_ARRAY_IV_15(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) +# define BOOST_PP_LIST_TO_ARRAY_IV_16(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) +# define BOOST_PP_LIST_TO_ARRAY_IV_17(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) +# define BOOST_PP_LIST_TO_ARRAY_IV_18(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) +# define BOOST_PP_LIST_TO_ARRAY_IV_19(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) +# define BOOST_PP_LIST_TO_ARRAY_IV_20(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) +# define BOOST_PP_LIST_TO_ARRAY_IV_21(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) +# define BOOST_PP_LIST_TO_ARRAY_IV_22(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) +# define BOOST_PP_LIST_TO_ARRAY_IV_23(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) +# define BOOST_PP_LIST_TO_ARRAY_IV_24(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) +# define BOOST_PP_LIST_TO_ARRAY_IV_25(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) +# define BOOST_PP_LIST_TO_ARRAY_IV_26(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) +# define BOOST_PP_LIST_TO_ARRAY_IV_27(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) +# define BOOST_PP_LIST_TO_ARRAY_IV_28(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) +# define BOOST_PP_LIST_TO_ARRAY_IV_29(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) +# define BOOST_PP_LIST_TO_ARRAY_IV_30(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) +# define BOOST_PP_LIST_TO_ARRAY_IV_31(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) +# define BOOST_PP_LIST_TO_ARRAY_IV_32(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) +# define BOOST_PP_LIST_TO_ARRAY_IV_33(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) +# define BOOST_PP_LIST_TO_ARRAY_IV_34(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) +# define BOOST_PP_LIST_TO_ARRAY_IV_35(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) +# define BOOST_PP_LIST_TO_ARRAY_IV_36(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) +# define BOOST_PP_LIST_TO_ARRAY_IV_37(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) +# define BOOST_PP_LIST_TO_ARRAY_IV_38(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) +# define BOOST_PP_LIST_TO_ARRAY_IV_39(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) +# define BOOST_PP_LIST_TO_ARRAY_IV_40(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) +# define BOOST_PP_LIST_TO_ARRAY_IV_41(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) +# define BOOST_PP_LIST_TO_ARRAY_IV_42(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) +# define BOOST_PP_LIST_TO_ARRAY_IV_43(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) +# define BOOST_PP_LIST_TO_ARRAY_IV_44(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) +# define BOOST_PP_LIST_TO_ARRAY_IV_45(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) +# define BOOST_PP_LIST_TO_ARRAY_IV_46(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) +# define BOOST_PP_LIST_TO_ARRAY_IV_47(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) +# define BOOST_PP_LIST_TO_ARRAY_IV_48(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) +# define BOOST_PP_LIST_TO_ARRAY_IV_49(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) +# define BOOST_PP_LIST_TO_ARRAY_IV_50(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) +# define BOOST_PP_LIST_TO_ARRAY_IV_51(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) +# define BOOST_PP_LIST_TO_ARRAY_IV_52(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) +# define BOOST_PP_LIST_TO_ARRAY_IV_53(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) +# define BOOST_PP_LIST_TO_ARRAY_IV_54(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) +# define BOOST_PP_LIST_TO_ARRAY_IV_55(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) +# define BOOST_PP_LIST_TO_ARRAY_IV_56(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) +# define BOOST_PP_LIST_TO_ARRAY_IV_57(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) +# define BOOST_PP_LIST_TO_ARRAY_IV_58(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) +# define BOOST_PP_LIST_TO_ARRAY_IV_59(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) +# define BOOST_PP_LIST_TO_ARRAY_IV_60(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) +# define BOOST_PP_LIST_TO_ARRAY_IV_61(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) +# define BOOST_PP_LIST_TO_ARRAY_IV_62(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) +# define BOOST_PP_LIST_TO_ARRAY_IV_63(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) +# define BOOST_PP_LIST_TO_ARRAY_IV_64(_, e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) +# endif +# define BOOST_PP_LIST_TO_ARRAY_P(d, state) BOOST_PP_LIST_IS_CONS(BOOST_PP_TUPLE_ELEM(3, 0, state)) +# define BOOST_PP_LIST_TO_ARRAY_O(d, state) BOOST_PP_LIST_TO_ARRAY_O_I state +# define BOOST_PP_LIST_TO_ARRAY_O_I(list, size, tuple) (BOOST_PP_LIST_REST(list), BOOST_PP_INC(size), (BOOST_PP_TUPLE_REM(size) tuple, BOOST_PP_LIST_FIRST(list))) +# +# /* BOOST_PP_LIST_TO_ARRAY_D */ +# +# if BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC && (_MSC_VER <= 1400) +# define BOOST_PP_LIST_TO_ARRAY_D(d, list) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_LIST_IS_NIL(list), \ + BOOST_PP_LIST_TO_ARRAY_D_VC8ORLESS_EMPTY, \ + BOOST_PP_LIST_TO_ARRAY_D_VC8ORLESS_DO \ + ) \ + (d, list) \ +/**/ +# define BOOST_PP_LIST_TO_ARRAY_D_VC8ORLESS_EMPTY(d, list) (0,()) +# define BOOST_PP_LIST_TO_ARRAY_D_VC8ORLESS_DO(d, list) BOOST_PP_LIST_TO_ARRAY_I(BOOST_PP_WHILE_ ## d, list) +# else +# define BOOST_PP_LIST_TO_ARRAY_D(d, list) BOOST_PP_LIST_TO_ARRAY_I(BOOST_PP_WHILE_ ## d, list) +# endif +# +# endif /* BOOST_PREPROCESSOR_LIST_TO_ARRAY_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/list/to_seq.hpp b/plugin/wave/include/boost/preprocessor/list/to_seq.hpp new file mode 100644 index 0000000..7425907 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/to_seq.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* Revised by Paul Mensonides (2011) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_TO_SEQ_HPP +# define BOOST_PREPROCESSOR_LIST_TO_SEQ_HPP +# +# include +# +# /* BOOST_PP_LIST_TO_SEQ */ +# +# define BOOST_PP_LIST_TO_SEQ(list) \ + BOOST_PP_LIST_FOR_EACH(BOOST_PP_LIST_TO_SEQ_MACRO, ~, list) \ + /**/ +# define BOOST_PP_LIST_TO_SEQ_MACRO(r, data, elem) (elem) +# +# /* BOOST_PP_LIST_TO_SEQ_R */ +# +# define BOOST_PP_LIST_TO_SEQ_R(r, list) \ + BOOST_PP_LIST_FOR_EACH_R(r, BOOST_PP_LIST_TO_SEQ_MACRO, ~, list) \ + /**/ +# +# endif /* BOOST_PREPROCESSOR_LIST_TO_SEQ_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/list/to_tuple.hpp b/plugin/wave/include/boost/preprocessor/list/to_tuple.hpp new file mode 100644 index 0000000..c7b3da8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/to_tuple.hpp @@ -0,0 +1,61 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_TO_TUPLE_HPP +# define BOOST_PREPROCESSOR_LIST_TO_TUPLE_HPP +# +# include +# include +# include +# +# /* BOOST_PP_LIST_TO_TUPLE */ +# +# define BOOST_PP_LIST_TO_TUPLE(list) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_LIST_IS_NIL(list), \ + BOOST_PP_LIST_TO_TUPLE_EMPTY, \ + BOOST_PP_LIST_TO_TUPLE_DO \ + ) \ + (list) \ +/**/ +# define BOOST_PP_LIST_TO_TUPLE_EMPTY(list) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_TO_TUPLE_DO(list) (BOOST_PP_LIST_ENUM(list)) +# else +# define BOOST_PP_LIST_TO_TUPLE_DO(list) BOOST_PP_LIST_TO_TUPLE_I(list) +# define BOOST_PP_LIST_TO_TUPLE_I(list) (BOOST_PP_LIST_ENUM(list)) +# endif +# +# /* BOOST_PP_LIST_TO_TUPLE_R */ +# +# define BOOST_PP_LIST_TO_TUPLE_R(r, list) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_LIST_IS_NIL(list), \ + BOOST_PP_LIST_TO_TUPLE_R_EMPTY, \ + BOOST_PP_LIST_TO_TUPLE_R_DO \ + ) \ + (r, list) \ +/**/ +# define BOOST_PP_LIST_TO_TUPLE_R_EMPTY(r,list) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_TO_TUPLE_R_DO(r, list) (BOOST_PP_LIST_ENUM_R(r, list)) +# else +# define BOOST_PP_LIST_TO_TUPLE_R_DO(r, list) BOOST_PP_LIST_TO_TUPLE_R_I(r, list) +# define BOOST_PP_LIST_TO_TUPLE_R_I(r, list) (BOOST_PP_LIST_ENUM_R(r, list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/list/transform.hpp b/plugin/wave/include/boost/preprocessor/list/transform.hpp new file mode 100644 index 0000000..840f306 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/list/transform.hpp @@ -0,0 +1,49 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LIST_TRANSFORM_HPP +# define BOOST_PREPROCESSOR_LIST_TRANSFORM_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LIST_TRANSFORM */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_TRANSFORM(op, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_TRANSFORM_O, (op, data, BOOST_PP_NIL), list)) +# else +# define BOOST_PP_LIST_TRANSFORM(op, data, list) BOOST_PP_LIST_TRANSFORM_I(op, data, list) +# define BOOST_PP_LIST_TRANSFORM_I(op, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT(BOOST_PP_LIST_TRANSFORM_O, (op, data, BOOST_PP_NIL), list)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_TRANSFORM_O(d, odr, elem) BOOST_PP_LIST_TRANSFORM_O_D(d, BOOST_PP_TUPLE_ELEM(3, 0, odr), BOOST_PP_TUPLE_ELEM(3, 1, odr), BOOST_PP_TUPLE_ELEM(3, 2, odr), elem) +# else +# define BOOST_PP_LIST_TRANSFORM_O(d, odr, elem) BOOST_PP_LIST_TRANSFORM_O_I(d, BOOST_PP_TUPLE_REM_3 odr, elem) +# define BOOST_PP_LIST_TRANSFORM_O_I(d, im, elem) BOOST_PP_LIST_TRANSFORM_O_D(d, im, elem) +# endif +# +# define BOOST_PP_LIST_TRANSFORM_O_D(d, op, data, res, elem) (op, data, (op(d, data, elem), res)) +# +# /* BOOST_PP_LIST_TRANSFORM_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LIST_TRANSFORM_D(d, op, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_TRANSFORM_O, (op, data, BOOST_PP_NIL), list)) +# else +# define BOOST_PP_LIST_TRANSFORM_D(d, op, data, list) BOOST_PP_LIST_TRANSFORM_D_I(d, op, data, list) +# define BOOST_PP_LIST_TRANSFORM_D_I(d, op, data, list) BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_LIST_FOLD_RIGHT_ ## d(BOOST_PP_LIST_TRANSFORM_O, (op, data, BOOST_PP_NIL), list)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical.hpp b/plugin/wave/include/boost/preprocessor/logical.hpp new file mode 100644 index 0000000..040edeb --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical.hpp @@ -0,0 +1,29 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_HPP +# define BOOST_PREPROCESSOR_LOGICAL_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/and.hpp b/plugin/wave/include/boost/preprocessor/logical/and.hpp new file mode 100644 index 0000000..8590365 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/and.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_AND_HPP +# define BOOST_PREPROCESSOR_LOGICAL_AND_HPP +# +# include +# include +# include +# +# /* BOOST_PP_AND */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_AND(p, q) BOOST_PP_BITAND(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# else +# define BOOST_PP_AND(p, q) BOOST_PP_AND_I(p, q) +# define BOOST_PP_AND_I(p, q) BOOST_PP_BITAND(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/bitand.hpp b/plugin/wave/include/boost/preprocessor/logical/bitand.hpp new file mode 100644 index 0000000..74e9527 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/bitand.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_BITAND_HPP +# define BOOST_PREPROCESSOR_LOGICAL_BITAND_HPP +# +# include +# +# /* BOOST_PP_BITAND */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_I(x, y) +# else +# define BOOST_PP_BITAND(x, y) BOOST_PP_BITAND_OO((x, y)) +# define BOOST_PP_BITAND_OO(par) BOOST_PP_BITAND_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ ## x ## y +# else +# define BOOST_PP_BITAND_I(x, y) BOOST_PP_BITAND_ID(BOOST_PP_BITAND_ ## x ## y) +# define BOOST_PP_BITAND_ID(res) res +# endif +# +# define BOOST_PP_BITAND_00 0 +# define BOOST_PP_BITAND_01 0 +# define BOOST_PP_BITAND_10 0 +# define BOOST_PP_BITAND_11 1 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/bitnor.hpp b/plugin/wave/include/boost/preprocessor/logical/bitnor.hpp new file mode 100644 index 0000000..110fba8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/bitnor.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_BITNOR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_BITNOR_HPP +# +# include +# +# /* BOOST_PP_BITNOR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_BITNOR(x, y) BOOST_PP_BITNOR_I(x, y) +# else +# define BOOST_PP_BITNOR(x, y) BOOST_PP_BITNOR_OO((x, y)) +# define BOOST_PP_BITNOR_OO(par) BOOST_PP_BITNOR_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_BITNOR_I(x, y) BOOST_PP_BITNOR_ ## x ## y +# else +# define BOOST_PP_BITNOR_I(x, y) BOOST_PP_BITNOR_ID(BOOST_PP_BITNOR_ ## x ## y) +# define BOOST_PP_BITNOR_ID(id) id +# endif +# +# define BOOST_PP_BITNOR_00 1 +# define BOOST_PP_BITNOR_01 0 +# define BOOST_PP_BITNOR_10 0 +# define BOOST_PP_BITNOR_11 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/bitor.hpp b/plugin/wave/include/boost/preprocessor/logical/bitor.hpp new file mode 100644 index 0000000..c0bc2c6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/bitor.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_BITOR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_BITOR_HPP +# +# include +# +# /* BOOST_PP_BITOR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_BITOR(x, y) BOOST_PP_BITOR_I(x, y) +# else +# define BOOST_PP_BITOR(x, y) BOOST_PP_BITOR_OO((x, y)) +# define BOOST_PP_BITOR_OO(par) BOOST_PP_BITOR_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_BITOR_I(x, y) BOOST_PP_BITOR_ ## x ## y +# else +# define BOOST_PP_BITOR_I(x, y) BOOST_PP_BITOR_ID(BOOST_PP_BITOR_ ## x ## y) +# define BOOST_PP_BITOR_ID(id) id +# endif +# +# define BOOST_PP_BITOR_00 0 +# define BOOST_PP_BITOR_01 1 +# define BOOST_PP_BITOR_10 1 +# define BOOST_PP_BITOR_11 1 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/bitxor.hpp b/plugin/wave/include/boost/preprocessor/logical/bitxor.hpp new file mode 100644 index 0000000..0488aca --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/bitxor.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_BITXOR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_BITXOR_HPP +# +# include +# +# /* BOOST_PP_BITXOR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_BITXOR(x, y) BOOST_PP_BITXOR_I(x, y) +# else +# define BOOST_PP_BITXOR(x, y) BOOST_PP_BITXOR_OO((x, y)) +# define BOOST_PP_BITXOR_OO(par) BOOST_PP_BITXOR_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_BITXOR_I(x, y) BOOST_PP_BITXOR_ ## x ## y +# else +# define BOOST_PP_BITXOR_I(x, y) BOOST_PP_BITXOR_ID(BOOST_PP_BITXOR_ ## x ## y) +# define BOOST_PP_BITXOR_ID(id) id +# endif +# +# define BOOST_PP_BITXOR_00 0 +# define BOOST_PP_BITXOR_01 1 +# define BOOST_PP_BITXOR_10 1 +# define BOOST_PP_BITXOR_11 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/bool.hpp b/plugin/wave/include/boost/preprocessor/logical/bool.hpp new file mode 100644 index 0000000..fc01b5b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/bool.hpp @@ -0,0 +1,288 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP +# define BOOST_PREPROCESSOR_LOGICAL_BOOL_HPP +# +# include +# +# /* BOOST_PP_BOOL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_BOOL(x) BOOST_PP_BOOL_I(x) +# else +# define BOOST_PP_BOOL(x) BOOST_PP_BOOL_OO((x)) +# define BOOST_PP_BOOL_OO(par) BOOST_PP_BOOL_I ## par +# endif +# +# define BOOST_PP_BOOL_I(x) BOOST_PP_BOOL_ ## x +# +# define BOOST_PP_BOOL_0 0 +# define BOOST_PP_BOOL_1 1 +# define BOOST_PP_BOOL_2 1 +# define BOOST_PP_BOOL_3 1 +# define BOOST_PP_BOOL_4 1 +# define BOOST_PP_BOOL_5 1 +# define BOOST_PP_BOOL_6 1 +# define BOOST_PP_BOOL_7 1 +# define BOOST_PP_BOOL_8 1 +# define BOOST_PP_BOOL_9 1 +# define BOOST_PP_BOOL_10 1 +# define BOOST_PP_BOOL_11 1 +# define BOOST_PP_BOOL_12 1 +# define BOOST_PP_BOOL_13 1 +# define BOOST_PP_BOOL_14 1 +# define BOOST_PP_BOOL_15 1 +# define BOOST_PP_BOOL_16 1 +# define BOOST_PP_BOOL_17 1 +# define BOOST_PP_BOOL_18 1 +# define BOOST_PP_BOOL_19 1 +# define BOOST_PP_BOOL_20 1 +# define BOOST_PP_BOOL_21 1 +# define BOOST_PP_BOOL_22 1 +# define BOOST_PP_BOOL_23 1 +# define BOOST_PP_BOOL_24 1 +# define BOOST_PP_BOOL_25 1 +# define BOOST_PP_BOOL_26 1 +# define BOOST_PP_BOOL_27 1 +# define BOOST_PP_BOOL_28 1 +# define BOOST_PP_BOOL_29 1 +# define BOOST_PP_BOOL_30 1 +# define BOOST_PP_BOOL_31 1 +# define BOOST_PP_BOOL_32 1 +# define BOOST_PP_BOOL_33 1 +# define BOOST_PP_BOOL_34 1 +# define BOOST_PP_BOOL_35 1 +# define BOOST_PP_BOOL_36 1 +# define BOOST_PP_BOOL_37 1 +# define BOOST_PP_BOOL_38 1 +# define BOOST_PP_BOOL_39 1 +# define BOOST_PP_BOOL_40 1 +# define BOOST_PP_BOOL_41 1 +# define BOOST_PP_BOOL_42 1 +# define BOOST_PP_BOOL_43 1 +# define BOOST_PP_BOOL_44 1 +# define BOOST_PP_BOOL_45 1 +# define BOOST_PP_BOOL_46 1 +# define BOOST_PP_BOOL_47 1 +# define BOOST_PP_BOOL_48 1 +# define BOOST_PP_BOOL_49 1 +# define BOOST_PP_BOOL_50 1 +# define BOOST_PP_BOOL_51 1 +# define BOOST_PP_BOOL_52 1 +# define BOOST_PP_BOOL_53 1 +# define BOOST_PP_BOOL_54 1 +# define BOOST_PP_BOOL_55 1 +# define BOOST_PP_BOOL_56 1 +# define BOOST_PP_BOOL_57 1 +# define BOOST_PP_BOOL_58 1 +# define BOOST_PP_BOOL_59 1 +# define BOOST_PP_BOOL_60 1 +# define BOOST_PP_BOOL_61 1 +# define BOOST_PP_BOOL_62 1 +# define BOOST_PP_BOOL_63 1 +# define BOOST_PP_BOOL_64 1 +# define BOOST_PP_BOOL_65 1 +# define BOOST_PP_BOOL_66 1 +# define BOOST_PP_BOOL_67 1 +# define BOOST_PP_BOOL_68 1 +# define BOOST_PP_BOOL_69 1 +# define BOOST_PP_BOOL_70 1 +# define BOOST_PP_BOOL_71 1 +# define BOOST_PP_BOOL_72 1 +# define BOOST_PP_BOOL_73 1 +# define BOOST_PP_BOOL_74 1 +# define BOOST_PP_BOOL_75 1 +# define BOOST_PP_BOOL_76 1 +# define BOOST_PP_BOOL_77 1 +# define BOOST_PP_BOOL_78 1 +# define BOOST_PP_BOOL_79 1 +# define BOOST_PP_BOOL_80 1 +# define BOOST_PP_BOOL_81 1 +# define BOOST_PP_BOOL_82 1 +# define BOOST_PP_BOOL_83 1 +# define BOOST_PP_BOOL_84 1 +# define BOOST_PP_BOOL_85 1 +# define BOOST_PP_BOOL_86 1 +# define BOOST_PP_BOOL_87 1 +# define BOOST_PP_BOOL_88 1 +# define BOOST_PP_BOOL_89 1 +# define BOOST_PP_BOOL_90 1 +# define BOOST_PP_BOOL_91 1 +# define BOOST_PP_BOOL_92 1 +# define BOOST_PP_BOOL_93 1 +# define BOOST_PP_BOOL_94 1 +# define BOOST_PP_BOOL_95 1 +# define BOOST_PP_BOOL_96 1 +# define BOOST_PP_BOOL_97 1 +# define BOOST_PP_BOOL_98 1 +# define BOOST_PP_BOOL_99 1 +# define BOOST_PP_BOOL_100 1 +# define BOOST_PP_BOOL_101 1 +# define BOOST_PP_BOOL_102 1 +# define BOOST_PP_BOOL_103 1 +# define BOOST_PP_BOOL_104 1 +# define BOOST_PP_BOOL_105 1 +# define BOOST_PP_BOOL_106 1 +# define BOOST_PP_BOOL_107 1 +# define BOOST_PP_BOOL_108 1 +# define BOOST_PP_BOOL_109 1 +# define BOOST_PP_BOOL_110 1 +# define BOOST_PP_BOOL_111 1 +# define BOOST_PP_BOOL_112 1 +# define BOOST_PP_BOOL_113 1 +# define BOOST_PP_BOOL_114 1 +# define BOOST_PP_BOOL_115 1 +# define BOOST_PP_BOOL_116 1 +# define BOOST_PP_BOOL_117 1 +# define BOOST_PP_BOOL_118 1 +# define BOOST_PP_BOOL_119 1 +# define BOOST_PP_BOOL_120 1 +# define BOOST_PP_BOOL_121 1 +# define BOOST_PP_BOOL_122 1 +# define BOOST_PP_BOOL_123 1 +# define BOOST_PP_BOOL_124 1 +# define BOOST_PP_BOOL_125 1 +# define BOOST_PP_BOOL_126 1 +# define BOOST_PP_BOOL_127 1 +# define BOOST_PP_BOOL_128 1 +# define BOOST_PP_BOOL_129 1 +# define BOOST_PP_BOOL_130 1 +# define BOOST_PP_BOOL_131 1 +# define BOOST_PP_BOOL_132 1 +# define BOOST_PP_BOOL_133 1 +# define BOOST_PP_BOOL_134 1 +# define BOOST_PP_BOOL_135 1 +# define BOOST_PP_BOOL_136 1 +# define BOOST_PP_BOOL_137 1 +# define BOOST_PP_BOOL_138 1 +# define BOOST_PP_BOOL_139 1 +# define BOOST_PP_BOOL_140 1 +# define BOOST_PP_BOOL_141 1 +# define BOOST_PP_BOOL_142 1 +# define BOOST_PP_BOOL_143 1 +# define BOOST_PP_BOOL_144 1 +# define BOOST_PP_BOOL_145 1 +# define BOOST_PP_BOOL_146 1 +# define BOOST_PP_BOOL_147 1 +# define BOOST_PP_BOOL_148 1 +# define BOOST_PP_BOOL_149 1 +# define BOOST_PP_BOOL_150 1 +# define BOOST_PP_BOOL_151 1 +# define BOOST_PP_BOOL_152 1 +# define BOOST_PP_BOOL_153 1 +# define BOOST_PP_BOOL_154 1 +# define BOOST_PP_BOOL_155 1 +# define BOOST_PP_BOOL_156 1 +# define BOOST_PP_BOOL_157 1 +# define BOOST_PP_BOOL_158 1 +# define BOOST_PP_BOOL_159 1 +# define BOOST_PP_BOOL_160 1 +# define BOOST_PP_BOOL_161 1 +# define BOOST_PP_BOOL_162 1 +# define BOOST_PP_BOOL_163 1 +# define BOOST_PP_BOOL_164 1 +# define BOOST_PP_BOOL_165 1 +# define BOOST_PP_BOOL_166 1 +# define BOOST_PP_BOOL_167 1 +# define BOOST_PP_BOOL_168 1 +# define BOOST_PP_BOOL_169 1 +# define BOOST_PP_BOOL_170 1 +# define BOOST_PP_BOOL_171 1 +# define BOOST_PP_BOOL_172 1 +# define BOOST_PP_BOOL_173 1 +# define BOOST_PP_BOOL_174 1 +# define BOOST_PP_BOOL_175 1 +# define BOOST_PP_BOOL_176 1 +# define BOOST_PP_BOOL_177 1 +# define BOOST_PP_BOOL_178 1 +# define BOOST_PP_BOOL_179 1 +# define BOOST_PP_BOOL_180 1 +# define BOOST_PP_BOOL_181 1 +# define BOOST_PP_BOOL_182 1 +# define BOOST_PP_BOOL_183 1 +# define BOOST_PP_BOOL_184 1 +# define BOOST_PP_BOOL_185 1 +# define BOOST_PP_BOOL_186 1 +# define BOOST_PP_BOOL_187 1 +# define BOOST_PP_BOOL_188 1 +# define BOOST_PP_BOOL_189 1 +# define BOOST_PP_BOOL_190 1 +# define BOOST_PP_BOOL_191 1 +# define BOOST_PP_BOOL_192 1 +# define BOOST_PP_BOOL_193 1 +# define BOOST_PP_BOOL_194 1 +# define BOOST_PP_BOOL_195 1 +# define BOOST_PP_BOOL_196 1 +# define BOOST_PP_BOOL_197 1 +# define BOOST_PP_BOOL_198 1 +# define BOOST_PP_BOOL_199 1 +# define BOOST_PP_BOOL_200 1 +# define BOOST_PP_BOOL_201 1 +# define BOOST_PP_BOOL_202 1 +# define BOOST_PP_BOOL_203 1 +# define BOOST_PP_BOOL_204 1 +# define BOOST_PP_BOOL_205 1 +# define BOOST_PP_BOOL_206 1 +# define BOOST_PP_BOOL_207 1 +# define BOOST_PP_BOOL_208 1 +# define BOOST_PP_BOOL_209 1 +# define BOOST_PP_BOOL_210 1 +# define BOOST_PP_BOOL_211 1 +# define BOOST_PP_BOOL_212 1 +# define BOOST_PP_BOOL_213 1 +# define BOOST_PP_BOOL_214 1 +# define BOOST_PP_BOOL_215 1 +# define BOOST_PP_BOOL_216 1 +# define BOOST_PP_BOOL_217 1 +# define BOOST_PP_BOOL_218 1 +# define BOOST_PP_BOOL_219 1 +# define BOOST_PP_BOOL_220 1 +# define BOOST_PP_BOOL_221 1 +# define BOOST_PP_BOOL_222 1 +# define BOOST_PP_BOOL_223 1 +# define BOOST_PP_BOOL_224 1 +# define BOOST_PP_BOOL_225 1 +# define BOOST_PP_BOOL_226 1 +# define BOOST_PP_BOOL_227 1 +# define BOOST_PP_BOOL_228 1 +# define BOOST_PP_BOOL_229 1 +# define BOOST_PP_BOOL_230 1 +# define BOOST_PP_BOOL_231 1 +# define BOOST_PP_BOOL_232 1 +# define BOOST_PP_BOOL_233 1 +# define BOOST_PP_BOOL_234 1 +# define BOOST_PP_BOOL_235 1 +# define BOOST_PP_BOOL_236 1 +# define BOOST_PP_BOOL_237 1 +# define BOOST_PP_BOOL_238 1 +# define BOOST_PP_BOOL_239 1 +# define BOOST_PP_BOOL_240 1 +# define BOOST_PP_BOOL_241 1 +# define BOOST_PP_BOOL_242 1 +# define BOOST_PP_BOOL_243 1 +# define BOOST_PP_BOOL_244 1 +# define BOOST_PP_BOOL_245 1 +# define BOOST_PP_BOOL_246 1 +# define BOOST_PP_BOOL_247 1 +# define BOOST_PP_BOOL_248 1 +# define BOOST_PP_BOOL_249 1 +# define BOOST_PP_BOOL_250 1 +# define BOOST_PP_BOOL_251 1 +# define BOOST_PP_BOOL_252 1 +# define BOOST_PP_BOOL_253 1 +# define BOOST_PP_BOOL_254 1 +# define BOOST_PP_BOOL_255 1 +# define BOOST_PP_BOOL_256 1 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/compl.hpp b/plugin/wave/include/boost/preprocessor/logical/compl.hpp new file mode 100644 index 0000000..ad4c7a4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/compl.hpp @@ -0,0 +1,36 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_COMPL_HPP +# define BOOST_PREPROCESSOR_LOGICAL_COMPL_HPP +# +# include +# +# /* BOOST_PP_COMPL */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_COMPL(x) BOOST_PP_COMPL_I(x) +# else +# define BOOST_PP_COMPL(x) BOOST_PP_COMPL_OO((x)) +# define BOOST_PP_COMPL_OO(par) BOOST_PP_COMPL_I ## par +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_COMPL_I(x) BOOST_PP_COMPL_ ## x +# else +# define BOOST_PP_COMPL_I(x) BOOST_PP_COMPL_ID(BOOST_PP_COMPL_ ## x) +# define BOOST_PP_COMPL_ID(id) id +# endif +# +# define BOOST_PP_COMPL_0 1 +# define BOOST_PP_COMPL_1 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/nor.hpp b/plugin/wave/include/boost/preprocessor/logical/nor.hpp new file mode 100644 index 0000000..2c0df4b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/nor.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_NOR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_NOR_HPP +# +# include +# include +# include +# +# /* BOOST_PP_NOR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_NOR(p, q) BOOST_PP_BITNOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# else +# define BOOST_PP_NOR(p, q) BOOST_PP_NOR_I(p, q) +# define BOOST_PP_NOR_I(p, q) BOOST_PP_BITNOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/not.hpp b/plugin/wave/include/boost/preprocessor/logical/not.hpp new file mode 100644 index 0000000..b509d3f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/not.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_NOT_HPP +# define BOOST_PREPROCESSOR_LOGICAL_NOT_HPP +# +# include +# include +# include +# +# /* BOOST_PP_NOT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_NOT(x) BOOST_PP_COMPL(BOOST_PP_BOOL(x)) +# else +# define BOOST_PP_NOT(x) BOOST_PP_NOT_I(x) +# define BOOST_PP_NOT_I(x) BOOST_PP_COMPL(BOOST_PP_BOOL(x)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/or.hpp b/plugin/wave/include/boost/preprocessor/logical/or.hpp new file mode 100644 index 0000000..88d5207 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/or.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_OR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_OR_HPP +# +# include +# include +# include +# +# /* BOOST_PP_OR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_OR(p, q) BOOST_PP_BITOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# else +# define BOOST_PP_OR(p, q) BOOST_PP_OR_I(p, q) +# define BOOST_PP_OR_I(p, q) BOOST_PP_BITOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/logical/xor.hpp b/plugin/wave/include/boost/preprocessor/logical/xor.hpp new file mode 100644 index 0000000..34c00e0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/logical/xor.hpp @@ -0,0 +1,30 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_LOGICAL_XOR_HPP +# define BOOST_PREPROCESSOR_LOGICAL_XOR_HPP +# +# include +# include +# include +# +# /* BOOST_PP_XOR */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_XOR(p, q) BOOST_PP_BITXOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# else +# define BOOST_PP_XOR(p, q) BOOST_PP_XOR_I(p, q) +# define BOOST_PP_XOR_I(p, q) BOOST_PP_BITXOR(BOOST_PP_BOOL(p), BOOST_PP_BOOL(q)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/max.hpp b/plugin/wave/include/boost/preprocessor/max.hpp new file mode 100644 index 0000000..3a46ed9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/max.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_MAX_HPP +# define BOOST_PREPROCESSOR_MAX_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/min.hpp b/plugin/wave/include/boost/preprocessor/min.hpp new file mode 100644 index 0000000..8d8e9af --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/min.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_MIN_HPP +# define BOOST_PREPROCESSOR_MIN_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation.hpp b/plugin/wave/include/boost/preprocessor/punctuation.hpp new file mode 100644 index 0000000..56dd064 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_PUNCTUATION_HPP +# define BOOST_PREPROCESSOR_PUNCTUATION_HPP +# +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation/comma.hpp b/plugin/wave/include/boost/preprocessor/punctuation/comma.hpp new file mode 100644 index 0000000..38c2e0e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/comma.hpp @@ -0,0 +1,21 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_PUNCTUATION_COMMA_HPP +# define BOOST_PREPROCESSOR_PUNCTUATION_COMMA_HPP +# +# /* BOOST_PP_COMMA */ +# +# define BOOST_PP_COMMA() , +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation/comma_if.hpp b/plugin/wave/include/boost/preprocessor/punctuation/comma_if.hpp new file mode 100644 index 0000000..c711f36 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/comma_if.hpp @@ -0,0 +1,31 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_PUNCTUATION_COMMA_IF_HPP +# define BOOST_PREPROCESSOR_PUNCTUATION_COMMA_IF_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_COMMA_IF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_COMMA_IF(cond) BOOST_PP_IF(cond, BOOST_PP_COMMA, BOOST_PP_EMPTY)() +# else +# define BOOST_PP_COMMA_IF(cond) BOOST_PP_COMMA_IF_I(cond) +# define BOOST_PP_COMMA_IF_I(cond) BOOST_PP_IF(cond, BOOST_PP_COMMA, BOOST_PP_EMPTY)() +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation/detail/is_begin_parens.hpp b/plugin/wave/include/boost/preprocessor/punctuation/detail/is_begin_parens.hpp new file mode 100644 index 0000000..c94ccf3 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/detail/is_begin_parens.hpp @@ -0,0 +1,48 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +#ifndef BOOST_PREPROCESSOR_DETAIL_IS_BEGIN_PARENS_HPP +#define BOOST_PREPROCESSOR_DETAIL_IS_BEGIN_PARENS_HPP + +#if BOOST_PP_VARIADICS_MSVC + +#include + +#define BOOST_PP_DETAIL_VD_IBP_CAT(a, b) BOOST_PP_DETAIL_VD_IBP_CAT_I(a, b) +#define BOOST_PP_DETAIL_VD_IBP_CAT_I(a, b) BOOST_PP_DETAIL_VD_IBP_CAT_II(a ## b) +#define BOOST_PP_DETAIL_VD_IBP_CAT_II(res) res + +#define BOOST_PP_DETAIL_IBP_SPLIT(i, ...) \ + BOOST_PP_DETAIL_VD_IBP_CAT(BOOST_PP_DETAIL_IBP_PRIMITIVE_CAT(BOOST_PP_DETAIL_IBP_SPLIT_,i)(__VA_ARGS__),BOOST_PP_EMPTY()) \ +/**/ + +#define BOOST_PP_DETAIL_IBP_IS_VARIADIC_C(...) 1 1 + +#else + +#define BOOST_PP_DETAIL_IBP_SPLIT(i, ...) \ + BOOST_PP_DETAIL_IBP_PRIMITIVE_CAT(BOOST_PP_DETAIL_IBP_SPLIT_,i)(__VA_ARGS__) \ +/**/ + +#define BOOST_PP_DETAIL_IBP_IS_VARIADIC_C(...) 1 + +#endif /* BOOST_PP_VARIADICS_MSVC */ + +#define BOOST_PP_DETAIL_IBP_SPLIT_0(a, ...) a +#define BOOST_PP_DETAIL_IBP_SPLIT_1(a, ...) __VA_ARGS__ + +#define BOOST_PP_DETAIL_IBP_CAT(a, ...) BOOST_PP_DETAIL_IBP_PRIMITIVE_CAT(a,__VA_ARGS__) +#define BOOST_PP_DETAIL_IBP_PRIMITIVE_CAT(a, ...) a ## __VA_ARGS__ + +#define BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_1 1, +#define BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_BOOST_PP_DETAIL_IBP_IS_VARIADIC_C 0, + +#endif /* BOOST_PREPROCESSOR_DETAIL_IS_BEGIN_PARENS_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/punctuation/is_begin_parens.hpp b/plugin/wave/include/boost/preprocessor/punctuation/is_begin_parens.hpp new file mode 100644 index 0000000..20b32bc --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/is_begin_parens.hpp @@ -0,0 +1,51 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP +# define BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP + +# include + +#if BOOST_PP_VARIADICS + +#include + +#if BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 + +#define BOOST_PP_IS_BEGIN_PARENS(param) \ + BOOST_PP_DETAIL_IBP_SPLIT \ + ( \ + 0, \ + BOOST_PP_DETAIL_IBP_CAT \ + ( \ + BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_, \ + BOOST_PP_DETAIL_IBP_IS_VARIADIC_C param \ + ) \ + ) \ +/**/ + +#else + +#define BOOST_PP_IS_BEGIN_PARENS(...) \ + BOOST_PP_DETAIL_IBP_SPLIT \ + ( \ + 0, \ + BOOST_PP_DETAIL_IBP_CAT \ + ( \ + BOOST_PP_DETAIL_IBP_IS_VARIADIC_R_, \ + BOOST_PP_DETAIL_IBP_IS_VARIADIC_C __VA_ARGS__ \ + ) \ + ) \ +/**/ + +#endif /* BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400 */ +#endif /* BOOST_PP_VARIADICS */ +#endif /* BOOST_PREPROCESSOR_IS_BEGIN_PARENS_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/punctuation/paren.hpp b/plugin/wave/include/boost/preprocessor/punctuation/paren.hpp new file mode 100644 index 0000000..28c18cb --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/paren.hpp @@ -0,0 +1,23 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_PUNCTUATION_PAREN_HPP +# define BOOST_PREPROCESSOR_PUNCTUATION_PAREN_HPP +# +# /* BOOST_PP_LPAREN */ +# +# define BOOST_PP_LPAREN() ( +# +# /* BOOST_PP_RPAREN */ +# +# define BOOST_PP_RPAREN() ) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation/paren_if.hpp b/plugin/wave/include/boost/preprocessor/punctuation/paren_if.hpp new file mode 100644 index 0000000..1239ec1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/paren_if.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_PUNCTUATION_PAREN_IF_HPP +# define BOOST_PREPROCESSOR_PUNCTUATION_PAREN_IF_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_LPAREN_IF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_LPAREN_IF(cond) BOOST_PP_IF(cond, BOOST_PP_LPAREN, BOOST_PP_EMPTY)() +# else +# define BOOST_PP_LPAREN_IF(cond) BOOST_PP_LPAREN_IF_I(cond) +# define BOOST_PP_LPAREN_IF_I(cond) BOOST_PP_IF(cond, BOOST_PP_LPAREN, BOOST_PP_EMPTY)() +# endif +# +# /* BOOST_PP_RPAREN_IF */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_RPAREN_IF(cond) BOOST_PP_IF(cond, BOOST_PP_RPAREN, BOOST_PP_EMPTY)() +# else +# define BOOST_PP_RPAREN_IF(cond) BOOST_PP_RPAREN_IF_I(cond) +# define BOOST_PP_RPAREN_IF_I(cond) BOOST_PP_IF(cond, BOOST_PP_RPAREN, BOOST_PP_EMPTY)() +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/punctuation/remove_parens.hpp b/plugin/wave/include/boost/preprocessor/punctuation/remove_parens.hpp new file mode 100644 index 0000000..4700936 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/punctuation/remove_parens.hpp @@ -0,0 +1,39 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +#ifndef BOOST_PREPROCESSOR_REMOVE_PARENS_HPP +#define BOOST_PREPROCESSOR_REMOVE_PARENS_HPP + +#include + +#if BOOST_PP_VARIADICS + +#include +#include +#include +#include + +#define BOOST_PP_REMOVE_PARENS(param) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_IS_BEGIN_PARENS(param), \ + BOOST_PP_REMOVE_PARENS_DO, \ + BOOST_PP_IDENTITY \ + ) \ + (param)() \ +/**/ + +#define BOOST_PP_REMOVE_PARENS_DO(param) \ + BOOST_PP_IDENTITY(BOOST_PP_TUPLE_ENUM(param)) \ +/**/ + +#endif /* BOOST_PP_VARIADICS */ +#endif /* BOOST_PREPROCESSOR_REMOVE_PARENS_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/repeat.hpp b/plugin/wave/include/boost/preprocessor/repeat.hpp new file mode 100644 index 0000000..7c47ee8 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_HPP +# define BOOST_PREPROCESSOR_REPEAT_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repeat_2nd.hpp b/plugin/wave/include/boost/preprocessor/repeat_2nd.hpp new file mode 100644 index 0000000..030c432 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat_2nd.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_2ND_HPP +# define BOOST_PREPROCESSOR_REPEAT_2ND_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repeat_3rd.hpp b/plugin/wave/include/boost/preprocessor/repeat_3rd.hpp new file mode 100644 index 0000000..9ab36a5 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat_3rd.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_3RD_HPP +# define BOOST_PREPROCESSOR_REPEAT_3RD_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repeat_from_to.hpp b/plugin/wave/include/boost/preprocessor/repeat_from_to.hpp new file mode 100644 index 0000000..4ddc3be --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat_from_to.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_FROM_TO_HPP +# define BOOST_PREPROCESSOR_REPEAT_FROM_TO_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repeat_from_to_2nd.hpp b/plugin/wave/include/boost/preprocessor/repeat_from_to_2nd.hpp new file mode 100644 index 0000000..b833fb5 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat_from_to_2nd.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_FROM_TO_2ND_HPP +# define BOOST_PREPROCESSOR_REPEAT_FROM_TO_2ND_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repeat_from_to_3rd.hpp b/plugin/wave/include/boost/preprocessor/repeat_from_to_3rd.hpp new file mode 100644 index 0000000..8cd776f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repeat_from_to_3rd.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPEAT_FROM_TO_3RD_HPP +# define BOOST_PREPROCESSOR_REPEAT_FROM_TO_3RD_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition.hpp b/plugin/wave/include/boost/preprocessor/repetition.hpp new file mode 100644 index 0000000..efcd60a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_HPP +# define BOOST_PREPROCESSOR_REPETITION_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/deduce_r.hpp b/plugin/wave/include/boost/preprocessor/repetition/deduce_r.hpp new file mode 100644 index 0000000..e49296a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/deduce_r.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DEDUCE_R_HPP +# define BOOST_PREPROCESSOR_REPETITION_DEDUCE_R_HPP +# +# include +# include +# +# /* BOOST_PP_DEDUCE_R */ +# +# define BOOST_PP_DEDUCE_R() BOOST_PP_AUTO_REC(BOOST_PP_FOR_P, 256) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/deduce_z.hpp b/plugin/wave/include/boost/preprocessor/repetition/deduce_z.hpp new file mode 100644 index 0000000..14dedc2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/deduce_z.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DEDUCE_Z_HPP +# define BOOST_PREPROCESSOR_REPETITION_DEDUCE_Z_HPP +# +# include +# include +# +# /* BOOST_PP_DEDUCE_Z */ +# +# define BOOST_PP_DEDUCE_Z() BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/detail/dmc/for.hpp b/plugin/wave/include/boost/preprocessor/repetition/detail/dmc/for.hpp new file mode 100644 index 0000000..1d907ff --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/detail/dmc/for.hpp @@ -0,0 +1,536 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DETAIL_FOR_HPP +# define BOOST_PREPROCESSOR_REPETITION_DETAIL_FOR_HPP +# +# include +# include +# include +# include +# +# define BOOST_PP_FOR_1(s, p, o, m) BOOST_PP_FOR_1_C(BOOST_PP_BOOL(p##(2, s)), s, p, o, m) +# define BOOST_PP_FOR_2(s, p, o, m) BOOST_PP_FOR_2_C(BOOST_PP_BOOL(p##(3, s)), s, p, o, m) +# define BOOST_PP_FOR_3(s, p, o, m) BOOST_PP_FOR_3_C(BOOST_PP_BOOL(p##(4, s)), s, p, o, m) +# define BOOST_PP_FOR_4(s, p, o, m) BOOST_PP_FOR_4_C(BOOST_PP_BOOL(p##(5, s)), s, p, o, m) +# define BOOST_PP_FOR_5(s, p, o, m) BOOST_PP_FOR_5_C(BOOST_PP_BOOL(p##(6, s)), s, p, o, m) +# define BOOST_PP_FOR_6(s, p, o, m) BOOST_PP_FOR_6_C(BOOST_PP_BOOL(p##(7, s)), s, p, o, m) +# define BOOST_PP_FOR_7(s, p, o, m) BOOST_PP_FOR_7_C(BOOST_PP_BOOL(p##(8, s)), s, p, o, m) +# define BOOST_PP_FOR_8(s, p, o, m) BOOST_PP_FOR_8_C(BOOST_PP_BOOL(p##(9, s)), s, p, o, m) +# define BOOST_PP_FOR_9(s, p, o, m) BOOST_PP_FOR_9_C(BOOST_PP_BOOL(p##(10, s)), s, p, o, m) +# define BOOST_PP_FOR_10(s, p, o, m) BOOST_PP_FOR_10_C(BOOST_PP_BOOL(p##(11, s)), s, p, o, m) +# define BOOST_PP_FOR_11(s, p, o, m) BOOST_PP_FOR_11_C(BOOST_PP_BOOL(p##(12, s)), s, p, o, m) +# define BOOST_PP_FOR_12(s, p, o, m) BOOST_PP_FOR_12_C(BOOST_PP_BOOL(p##(13, s)), s, p, o, m) +# define BOOST_PP_FOR_13(s, p, o, m) BOOST_PP_FOR_13_C(BOOST_PP_BOOL(p##(14, s)), s, p, o, m) +# define BOOST_PP_FOR_14(s, p, o, m) BOOST_PP_FOR_14_C(BOOST_PP_BOOL(p##(15, s)), s, p, o, m) +# define BOOST_PP_FOR_15(s, p, o, m) BOOST_PP_FOR_15_C(BOOST_PP_BOOL(p##(16, s)), s, p, o, m) +# define BOOST_PP_FOR_16(s, p, o, m) BOOST_PP_FOR_16_C(BOOST_PP_BOOL(p##(17, s)), s, p, o, m) +# define BOOST_PP_FOR_17(s, p, o, m) BOOST_PP_FOR_17_C(BOOST_PP_BOOL(p##(18, s)), s, p, o, m) +# define BOOST_PP_FOR_18(s, p, o, m) BOOST_PP_FOR_18_C(BOOST_PP_BOOL(p##(19, s)), s, p, o, m) +# define BOOST_PP_FOR_19(s, p, o, m) BOOST_PP_FOR_19_C(BOOST_PP_BOOL(p##(20, s)), s, p, o, m) +# define BOOST_PP_FOR_20(s, p, o, m) BOOST_PP_FOR_20_C(BOOST_PP_BOOL(p##(21, s)), s, p, o, m) +# define BOOST_PP_FOR_21(s, p, o, m) BOOST_PP_FOR_21_C(BOOST_PP_BOOL(p##(22, s)), s, p, o, m) +# define BOOST_PP_FOR_22(s, p, o, m) BOOST_PP_FOR_22_C(BOOST_PP_BOOL(p##(23, s)), s, p, o, m) +# define BOOST_PP_FOR_23(s, p, o, m) BOOST_PP_FOR_23_C(BOOST_PP_BOOL(p##(24, s)), s, p, o, m) +# define BOOST_PP_FOR_24(s, p, o, m) BOOST_PP_FOR_24_C(BOOST_PP_BOOL(p##(25, s)), s, p, o, m) +# define BOOST_PP_FOR_25(s, p, o, m) BOOST_PP_FOR_25_C(BOOST_PP_BOOL(p##(26, s)), s, p, o, m) +# define BOOST_PP_FOR_26(s, p, o, m) BOOST_PP_FOR_26_C(BOOST_PP_BOOL(p##(27, s)), s, p, o, m) +# define BOOST_PP_FOR_27(s, p, o, m) BOOST_PP_FOR_27_C(BOOST_PP_BOOL(p##(28, s)), s, p, o, m) +# define BOOST_PP_FOR_28(s, p, o, m) BOOST_PP_FOR_28_C(BOOST_PP_BOOL(p##(29, s)), s, p, o, m) +# define BOOST_PP_FOR_29(s, p, o, m) BOOST_PP_FOR_29_C(BOOST_PP_BOOL(p##(30, s)), s, p, o, m) +# define BOOST_PP_FOR_30(s, p, o, m) BOOST_PP_FOR_30_C(BOOST_PP_BOOL(p##(31, s)), s, p, o, m) +# define BOOST_PP_FOR_31(s, p, o, m) BOOST_PP_FOR_31_C(BOOST_PP_BOOL(p##(32, s)), s, p, o, m) +# define BOOST_PP_FOR_32(s, p, o, m) BOOST_PP_FOR_32_C(BOOST_PP_BOOL(p##(33, s)), s, p, o, m) +# define BOOST_PP_FOR_33(s, p, o, m) BOOST_PP_FOR_33_C(BOOST_PP_BOOL(p##(34, s)), s, p, o, m) +# define BOOST_PP_FOR_34(s, p, o, m) BOOST_PP_FOR_34_C(BOOST_PP_BOOL(p##(35, s)), s, p, o, m) +# define BOOST_PP_FOR_35(s, p, o, m) BOOST_PP_FOR_35_C(BOOST_PP_BOOL(p##(36, s)), s, p, o, m) +# define BOOST_PP_FOR_36(s, p, o, m) BOOST_PP_FOR_36_C(BOOST_PP_BOOL(p##(37, s)), s, p, o, m) +# define BOOST_PP_FOR_37(s, p, o, m) BOOST_PP_FOR_37_C(BOOST_PP_BOOL(p##(38, s)), s, p, o, m) +# define BOOST_PP_FOR_38(s, p, o, m) BOOST_PP_FOR_38_C(BOOST_PP_BOOL(p##(39, s)), s, p, o, m) +# define BOOST_PP_FOR_39(s, p, o, m) BOOST_PP_FOR_39_C(BOOST_PP_BOOL(p##(40, s)), s, p, o, m) +# define BOOST_PP_FOR_40(s, p, o, m) BOOST_PP_FOR_40_C(BOOST_PP_BOOL(p##(41, s)), s, p, o, m) +# define BOOST_PP_FOR_41(s, p, o, m) BOOST_PP_FOR_41_C(BOOST_PP_BOOL(p##(42, s)), s, p, o, m) +# define BOOST_PP_FOR_42(s, p, o, m) BOOST_PP_FOR_42_C(BOOST_PP_BOOL(p##(43, s)), s, p, o, m) +# define BOOST_PP_FOR_43(s, p, o, m) BOOST_PP_FOR_43_C(BOOST_PP_BOOL(p##(44, s)), s, p, o, m) +# define BOOST_PP_FOR_44(s, p, o, m) BOOST_PP_FOR_44_C(BOOST_PP_BOOL(p##(45, s)), s, p, o, m) +# define BOOST_PP_FOR_45(s, p, o, m) BOOST_PP_FOR_45_C(BOOST_PP_BOOL(p##(46, s)), s, p, o, m) +# define BOOST_PP_FOR_46(s, p, o, m) BOOST_PP_FOR_46_C(BOOST_PP_BOOL(p##(47, s)), s, p, o, m) +# define BOOST_PP_FOR_47(s, p, o, m) BOOST_PP_FOR_47_C(BOOST_PP_BOOL(p##(48, s)), s, p, o, m) +# define BOOST_PP_FOR_48(s, p, o, m) BOOST_PP_FOR_48_C(BOOST_PP_BOOL(p##(49, s)), s, p, o, m) +# define BOOST_PP_FOR_49(s, p, o, m) BOOST_PP_FOR_49_C(BOOST_PP_BOOL(p##(50, s)), s, p, o, m) +# define BOOST_PP_FOR_50(s, p, o, m) BOOST_PP_FOR_50_C(BOOST_PP_BOOL(p##(51, s)), s, p, o, m) +# define BOOST_PP_FOR_51(s, p, o, m) BOOST_PP_FOR_51_C(BOOST_PP_BOOL(p##(52, s)), s, p, o, m) +# define BOOST_PP_FOR_52(s, p, o, m) BOOST_PP_FOR_52_C(BOOST_PP_BOOL(p##(53, s)), s, p, o, m) +# define BOOST_PP_FOR_53(s, p, o, m) BOOST_PP_FOR_53_C(BOOST_PP_BOOL(p##(54, s)), s, p, o, m) +# define BOOST_PP_FOR_54(s, p, o, m) BOOST_PP_FOR_54_C(BOOST_PP_BOOL(p##(55, s)), s, p, o, m) +# define BOOST_PP_FOR_55(s, p, o, m) BOOST_PP_FOR_55_C(BOOST_PP_BOOL(p##(56, s)), s, p, o, m) +# define BOOST_PP_FOR_56(s, p, o, m) BOOST_PP_FOR_56_C(BOOST_PP_BOOL(p##(57, s)), s, p, o, m) +# define BOOST_PP_FOR_57(s, p, o, m) BOOST_PP_FOR_57_C(BOOST_PP_BOOL(p##(58, s)), s, p, o, m) +# define BOOST_PP_FOR_58(s, p, o, m) BOOST_PP_FOR_58_C(BOOST_PP_BOOL(p##(59, s)), s, p, o, m) +# define BOOST_PP_FOR_59(s, p, o, m) BOOST_PP_FOR_59_C(BOOST_PP_BOOL(p##(60, s)), s, p, o, m) +# define BOOST_PP_FOR_60(s, p, o, m) BOOST_PP_FOR_60_C(BOOST_PP_BOOL(p##(61, s)), s, p, o, m) +# define BOOST_PP_FOR_61(s, p, o, m) BOOST_PP_FOR_61_C(BOOST_PP_BOOL(p##(62, s)), s, p, o, m) +# define BOOST_PP_FOR_62(s, p, o, m) BOOST_PP_FOR_62_C(BOOST_PP_BOOL(p##(63, s)), s, p, o, m) +# define BOOST_PP_FOR_63(s, p, o, m) BOOST_PP_FOR_63_C(BOOST_PP_BOOL(p##(64, s)), s, p, o, m) +# define BOOST_PP_FOR_64(s, p, o, m) BOOST_PP_FOR_64_C(BOOST_PP_BOOL(p##(65, s)), s, p, o, m) +# define BOOST_PP_FOR_65(s, p, o, m) BOOST_PP_FOR_65_C(BOOST_PP_BOOL(p##(66, s)), s, p, o, m) +# define BOOST_PP_FOR_66(s, p, o, m) BOOST_PP_FOR_66_C(BOOST_PP_BOOL(p##(67, s)), s, p, o, m) +# define BOOST_PP_FOR_67(s, p, o, m) BOOST_PP_FOR_67_C(BOOST_PP_BOOL(p##(68, s)), s, p, o, m) +# define BOOST_PP_FOR_68(s, p, o, m) BOOST_PP_FOR_68_C(BOOST_PP_BOOL(p##(69, s)), s, p, o, m) +# define BOOST_PP_FOR_69(s, p, o, m) BOOST_PP_FOR_69_C(BOOST_PP_BOOL(p##(70, s)), s, p, o, m) +# define BOOST_PP_FOR_70(s, p, o, m) BOOST_PP_FOR_70_C(BOOST_PP_BOOL(p##(71, s)), s, p, o, m) +# define BOOST_PP_FOR_71(s, p, o, m) BOOST_PP_FOR_71_C(BOOST_PP_BOOL(p##(72, s)), s, p, o, m) +# define BOOST_PP_FOR_72(s, p, o, m) BOOST_PP_FOR_72_C(BOOST_PP_BOOL(p##(73, s)), s, p, o, m) +# define BOOST_PP_FOR_73(s, p, o, m) BOOST_PP_FOR_73_C(BOOST_PP_BOOL(p##(74, s)), s, p, o, m) +# define BOOST_PP_FOR_74(s, p, o, m) BOOST_PP_FOR_74_C(BOOST_PP_BOOL(p##(75, s)), s, p, o, m) +# define BOOST_PP_FOR_75(s, p, o, m) BOOST_PP_FOR_75_C(BOOST_PP_BOOL(p##(76, s)), s, p, o, m) +# define BOOST_PP_FOR_76(s, p, o, m) BOOST_PP_FOR_76_C(BOOST_PP_BOOL(p##(77, s)), s, p, o, m) +# define BOOST_PP_FOR_77(s, p, o, m) BOOST_PP_FOR_77_C(BOOST_PP_BOOL(p##(78, s)), s, p, o, m) +# define BOOST_PP_FOR_78(s, p, o, m) BOOST_PP_FOR_78_C(BOOST_PP_BOOL(p##(79, s)), s, p, o, m) +# define BOOST_PP_FOR_79(s, p, o, m) BOOST_PP_FOR_79_C(BOOST_PP_BOOL(p##(80, s)), s, p, o, m) +# define BOOST_PP_FOR_80(s, p, o, m) BOOST_PP_FOR_80_C(BOOST_PP_BOOL(p##(81, s)), s, p, o, m) +# define BOOST_PP_FOR_81(s, p, o, m) BOOST_PP_FOR_81_C(BOOST_PP_BOOL(p##(82, s)), s, p, o, m) +# define BOOST_PP_FOR_82(s, p, o, m) BOOST_PP_FOR_82_C(BOOST_PP_BOOL(p##(83, s)), s, p, o, m) +# define BOOST_PP_FOR_83(s, p, o, m) BOOST_PP_FOR_83_C(BOOST_PP_BOOL(p##(84, s)), s, p, o, m) +# define BOOST_PP_FOR_84(s, p, o, m) BOOST_PP_FOR_84_C(BOOST_PP_BOOL(p##(85, s)), s, p, o, m) +# define BOOST_PP_FOR_85(s, p, o, m) BOOST_PP_FOR_85_C(BOOST_PP_BOOL(p##(86, s)), s, p, o, m) +# define BOOST_PP_FOR_86(s, p, o, m) BOOST_PP_FOR_86_C(BOOST_PP_BOOL(p##(87, s)), s, p, o, m) +# define BOOST_PP_FOR_87(s, p, o, m) BOOST_PP_FOR_87_C(BOOST_PP_BOOL(p##(88, s)), s, p, o, m) +# define BOOST_PP_FOR_88(s, p, o, m) BOOST_PP_FOR_88_C(BOOST_PP_BOOL(p##(89, s)), s, p, o, m) +# define BOOST_PP_FOR_89(s, p, o, m) BOOST_PP_FOR_89_C(BOOST_PP_BOOL(p##(90, s)), s, p, o, m) +# define BOOST_PP_FOR_90(s, p, o, m) BOOST_PP_FOR_90_C(BOOST_PP_BOOL(p##(91, s)), s, p, o, m) +# define BOOST_PP_FOR_91(s, p, o, m) BOOST_PP_FOR_91_C(BOOST_PP_BOOL(p##(92, s)), s, p, o, m) +# define BOOST_PP_FOR_92(s, p, o, m) BOOST_PP_FOR_92_C(BOOST_PP_BOOL(p##(93, s)), s, p, o, m) +# define BOOST_PP_FOR_93(s, p, o, m) BOOST_PP_FOR_93_C(BOOST_PP_BOOL(p##(94, s)), s, p, o, m) +# define BOOST_PP_FOR_94(s, p, o, m) BOOST_PP_FOR_94_C(BOOST_PP_BOOL(p##(95, s)), s, p, o, m) +# define BOOST_PP_FOR_95(s, p, o, m) BOOST_PP_FOR_95_C(BOOST_PP_BOOL(p##(96, s)), s, p, o, m) +# define BOOST_PP_FOR_96(s, p, o, m) BOOST_PP_FOR_96_C(BOOST_PP_BOOL(p##(97, s)), s, p, o, m) +# define BOOST_PP_FOR_97(s, p, o, m) BOOST_PP_FOR_97_C(BOOST_PP_BOOL(p##(98, s)), s, p, o, m) +# define BOOST_PP_FOR_98(s, p, o, m) BOOST_PP_FOR_98_C(BOOST_PP_BOOL(p##(99, s)), s, p, o, m) +# define BOOST_PP_FOR_99(s, p, o, m) BOOST_PP_FOR_99_C(BOOST_PP_BOOL(p##(100, s)), s, p, o, m) +# define BOOST_PP_FOR_100(s, p, o, m) BOOST_PP_FOR_100_C(BOOST_PP_BOOL(p##(101, s)), s, p, o, m) +# define BOOST_PP_FOR_101(s, p, o, m) BOOST_PP_FOR_101_C(BOOST_PP_BOOL(p##(102, s)), s, p, o, m) +# define BOOST_PP_FOR_102(s, p, o, m) BOOST_PP_FOR_102_C(BOOST_PP_BOOL(p##(103, s)), s, p, o, m) +# define BOOST_PP_FOR_103(s, p, o, m) BOOST_PP_FOR_103_C(BOOST_PP_BOOL(p##(104, s)), s, p, o, m) +# define BOOST_PP_FOR_104(s, p, o, m) BOOST_PP_FOR_104_C(BOOST_PP_BOOL(p##(105, s)), s, p, o, m) +# define BOOST_PP_FOR_105(s, p, o, m) BOOST_PP_FOR_105_C(BOOST_PP_BOOL(p##(106, s)), s, p, o, m) +# define BOOST_PP_FOR_106(s, p, o, m) BOOST_PP_FOR_106_C(BOOST_PP_BOOL(p##(107, s)), s, p, o, m) +# define BOOST_PP_FOR_107(s, p, o, m) BOOST_PP_FOR_107_C(BOOST_PP_BOOL(p##(108, s)), s, p, o, m) +# define BOOST_PP_FOR_108(s, p, o, m) BOOST_PP_FOR_108_C(BOOST_PP_BOOL(p##(109, s)), s, p, o, m) +# define BOOST_PP_FOR_109(s, p, o, m) BOOST_PP_FOR_109_C(BOOST_PP_BOOL(p##(110, s)), s, p, o, m) +# define BOOST_PP_FOR_110(s, p, o, m) BOOST_PP_FOR_110_C(BOOST_PP_BOOL(p##(111, s)), s, p, o, m) +# define BOOST_PP_FOR_111(s, p, o, m) BOOST_PP_FOR_111_C(BOOST_PP_BOOL(p##(112, s)), s, p, o, m) +# define BOOST_PP_FOR_112(s, p, o, m) BOOST_PP_FOR_112_C(BOOST_PP_BOOL(p##(113, s)), s, p, o, m) +# define BOOST_PP_FOR_113(s, p, o, m) BOOST_PP_FOR_113_C(BOOST_PP_BOOL(p##(114, s)), s, p, o, m) +# define BOOST_PP_FOR_114(s, p, o, m) BOOST_PP_FOR_114_C(BOOST_PP_BOOL(p##(115, s)), s, p, o, m) +# define BOOST_PP_FOR_115(s, p, o, m) BOOST_PP_FOR_115_C(BOOST_PP_BOOL(p##(116, s)), s, p, o, m) +# define BOOST_PP_FOR_116(s, p, o, m) BOOST_PP_FOR_116_C(BOOST_PP_BOOL(p##(117, s)), s, p, o, m) +# define BOOST_PP_FOR_117(s, p, o, m) BOOST_PP_FOR_117_C(BOOST_PP_BOOL(p##(118, s)), s, p, o, m) +# define BOOST_PP_FOR_118(s, p, o, m) BOOST_PP_FOR_118_C(BOOST_PP_BOOL(p##(119, s)), s, p, o, m) +# define BOOST_PP_FOR_119(s, p, o, m) BOOST_PP_FOR_119_C(BOOST_PP_BOOL(p##(120, s)), s, p, o, m) +# define BOOST_PP_FOR_120(s, p, o, m) BOOST_PP_FOR_120_C(BOOST_PP_BOOL(p##(121, s)), s, p, o, m) +# define BOOST_PP_FOR_121(s, p, o, m) BOOST_PP_FOR_121_C(BOOST_PP_BOOL(p##(122, s)), s, p, o, m) +# define BOOST_PP_FOR_122(s, p, o, m) BOOST_PP_FOR_122_C(BOOST_PP_BOOL(p##(123, s)), s, p, o, m) +# define BOOST_PP_FOR_123(s, p, o, m) BOOST_PP_FOR_123_C(BOOST_PP_BOOL(p##(124, s)), s, p, o, m) +# define BOOST_PP_FOR_124(s, p, o, m) BOOST_PP_FOR_124_C(BOOST_PP_BOOL(p##(125, s)), s, p, o, m) +# define BOOST_PP_FOR_125(s, p, o, m) BOOST_PP_FOR_125_C(BOOST_PP_BOOL(p##(126, s)), s, p, o, m) +# define BOOST_PP_FOR_126(s, p, o, m) BOOST_PP_FOR_126_C(BOOST_PP_BOOL(p##(127, s)), s, p, o, m) +# define BOOST_PP_FOR_127(s, p, o, m) BOOST_PP_FOR_127_C(BOOST_PP_BOOL(p##(128, s)), s, p, o, m) +# define BOOST_PP_FOR_128(s, p, o, m) BOOST_PP_FOR_128_C(BOOST_PP_BOOL(p##(129, s)), s, p, o, m) +# define BOOST_PP_FOR_129(s, p, o, m) BOOST_PP_FOR_129_C(BOOST_PP_BOOL(p##(130, s)), s, p, o, m) +# define BOOST_PP_FOR_130(s, p, o, m) BOOST_PP_FOR_130_C(BOOST_PP_BOOL(p##(131, s)), s, p, o, m) +# define BOOST_PP_FOR_131(s, p, o, m) BOOST_PP_FOR_131_C(BOOST_PP_BOOL(p##(132, s)), s, p, o, m) +# define BOOST_PP_FOR_132(s, p, o, m) BOOST_PP_FOR_132_C(BOOST_PP_BOOL(p##(133, s)), s, p, o, m) +# define BOOST_PP_FOR_133(s, p, o, m) BOOST_PP_FOR_133_C(BOOST_PP_BOOL(p##(134, s)), s, p, o, m) +# define BOOST_PP_FOR_134(s, p, o, m) BOOST_PP_FOR_134_C(BOOST_PP_BOOL(p##(135, s)), s, p, o, m) +# define BOOST_PP_FOR_135(s, p, o, m) BOOST_PP_FOR_135_C(BOOST_PP_BOOL(p##(136, s)), s, p, o, m) +# define BOOST_PP_FOR_136(s, p, o, m) BOOST_PP_FOR_136_C(BOOST_PP_BOOL(p##(137, s)), s, p, o, m) +# define BOOST_PP_FOR_137(s, p, o, m) BOOST_PP_FOR_137_C(BOOST_PP_BOOL(p##(138, s)), s, p, o, m) +# define BOOST_PP_FOR_138(s, p, o, m) BOOST_PP_FOR_138_C(BOOST_PP_BOOL(p##(139, s)), s, p, o, m) +# define BOOST_PP_FOR_139(s, p, o, m) BOOST_PP_FOR_139_C(BOOST_PP_BOOL(p##(140, s)), s, p, o, m) +# define BOOST_PP_FOR_140(s, p, o, m) BOOST_PP_FOR_140_C(BOOST_PP_BOOL(p##(141, s)), s, p, o, m) +# define BOOST_PP_FOR_141(s, p, o, m) BOOST_PP_FOR_141_C(BOOST_PP_BOOL(p##(142, s)), s, p, o, m) +# define BOOST_PP_FOR_142(s, p, o, m) BOOST_PP_FOR_142_C(BOOST_PP_BOOL(p##(143, s)), s, p, o, m) +# define BOOST_PP_FOR_143(s, p, o, m) BOOST_PP_FOR_143_C(BOOST_PP_BOOL(p##(144, s)), s, p, o, m) +# define BOOST_PP_FOR_144(s, p, o, m) BOOST_PP_FOR_144_C(BOOST_PP_BOOL(p##(145, s)), s, p, o, m) +# define BOOST_PP_FOR_145(s, p, o, m) BOOST_PP_FOR_145_C(BOOST_PP_BOOL(p##(146, s)), s, p, o, m) +# define BOOST_PP_FOR_146(s, p, o, m) BOOST_PP_FOR_146_C(BOOST_PP_BOOL(p##(147, s)), s, p, o, m) +# define BOOST_PP_FOR_147(s, p, o, m) BOOST_PP_FOR_147_C(BOOST_PP_BOOL(p##(148, s)), s, p, o, m) +# define BOOST_PP_FOR_148(s, p, o, m) BOOST_PP_FOR_148_C(BOOST_PP_BOOL(p##(149, s)), s, p, o, m) +# define BOOST_PP_FOR_149(s, p, o, m) BOOST_PP_FOR_149_C(BOOST_PP_BOOL(p##(150, s)), s, p, o, m) +# define BOOST_PP_FOR_150(s, p, o, m) BOOST_PP_FOR_150_C(BOOST_PP_BOOL(p##(151, s)), s, p, o, m) +# define BOOST_PP_FOR_151(s, p, o, m) BOOST_PP_FOR_151_C(BOOST_PP_BOOL(p##(152, s)), s, p, o, m) +# define BOOST_PP_FOR_152(s, p, o, m) BOOST_PP_FOR_152_C(BOOST_PP_BOOL(p##(153, s)), s, p, o, m) +# define BOOST_PP_FOR_153(s, p, o, m) BOOST_PP_FOR_153_C(BOOST_PP_BOOL(p##(154, s)), s, p, o, m) +# define BOOST_PP_FOR_154(s, p, o, m) BOOST_PP_FOR_154_C(BOOST_PP_BOOL(p##(155, s)), s, p, o, m) +# define BOOST_PP_FOR_155(s, p, o, m) BOOST_PP_FOR_155_C(BOOST_PP_BOOL(p##(156, s)), s, p, o, m) +# define BOOST_PP_FOR_156(s, p, o, m) BOOST_PP_FOR_156_C(BOOST_PP_BOOL(p##(157, s)), s, p, o, m) +# define BOOST_PP_FOR_157(s, p, o, m) BOOST_PP_FOR_157_C(BOOST_PP_BOOL(p##(158, s)), s, p, o, m) +# define BOOST_PP_FOR_158(s, p, o, m) BOOST_PP_FOR_158_C(BOOST_PP_BOOL(p##(159, s)), s, p, o, m) +# define BOOST_PP_FOR_159(s, p, o, m) BOOST_PP_FOR_159_C(BOOST_PP_BOOL(p##(160, s)), s, p, o, m) +# define BOOST_PP_FOR_160(s, p, o, m) BOOST_PP_FOR_160_C(BOOST_PP_BOOL(p##(161, s)), s, p, o, m) +# define BOOST_PP_FOR_161(s, p, o, m) BOOST_PP_FOR_161_C(BOOST_PP_BOOL(p##(162, s)), s, p, o, m) +# define BOOST_PP_FOR_162(s, p, o, m) BOOST_PP_FOR_162_C(BOOST_PP_BOOL(p##(163, s)), s, p, o, m) +# define BOOST_PP_FOR_163(s, p, o, m) BOOST_PP_FOR_163_C(BOOST_PP_BOOL(p##(164, s)), s, p, o, m) +# define BOOST_PP_FOR_164(s, p, o, m) BOOST_PP_FOR_164_C(BOOST_PP_BOOL(p##(165, s)), s, p, o, m) +# define BOOST_PP_FOR_165(s, p, o, m) BOOST_PP_FOR_165_C(BOOST_PP_BOOL(p##(166, s)), s, p, o, m) +# define BOOST_PP_FOR_166(s, p, o, m) BOOST_PP_FOR_166_C(BOOST_PP_BOOL(p##(167, s)), s, p, o, m) +# define BOOST_PP_FOR_167(s, p, o, m) BOOST_PP_FOR_167_C(BOOST_PP_BOOL(p##(168, s)), s, p, o, m) +# define BOOST_PP_FOR_168(s, p, o, m) BOOST_PP_FOR_168_C(BOOST_PP_BOOL(p##(169, s)), s, p, o, m) +# define BOOST_PP_FOR_169(s, p, o, m) BOOST_PP_FOR_169_C(BOOST_PP_BOOL(p##(170, s)), s, p, o, m) +# define BOOST_PP_FOR_170(s, p, o, m) BOOST_PP_FOR_170_C(BOOST_PP_BOOL(p##(171, s)), s, p, o, m) +# define BOOST_PP_FOR_171(s, p, o, m) BOOST_PP_FOR_171_C(BOOST_PP_BOOL(p##(172, s)), s, p, o, m) +# define BOOST_PP_FOR_172(s, p, o, m) BOOST_PP_FOR_172_C(BOOST_PP_BOOL(p##(173, s)), s, p, o, m) +# define BOOST_PP_FOR_173(s, p, o, m) BOOST_PP_FOR_173_C(BOOST_PP_BOOL(p##(174, s)), s, p, o, m) +# define BOOST_PP_FOR_174(s, p, o, m) BOOST_PP_FOR_174_C(BOOST_PP_BOOL(p##(175, s)), s, p, o, m) +# define BOOST_PP_FOR_175(s, p, o, m) BOOST_PP_FOR_175_C(BOOST_PP_BOOL(p##(176, s)), s, p, o, m) +# define BOOST_PP_FOR_176(s, p, o, m) BOOST_PP_FOR_176_C(BOOST_PP_BOOL(p##(177, s)), s, p, o, m) +# define BOOST_PP_FOR_177(s, p, o, m) BOOST_PP_FOR_177_C(BOOST_PP_BOOL(p##(178, s)), s, p, o, m) +# define BOOST_PP_FOR_178(s, p, o, m) BOOST_PP_FOR_178_C(BOOST_PP_BOOL(p##(179, s)), s, p, o, m) +# define BOOST_PP_FOR_179(s, p, o, m) BOOST_PP_FOR_179_C(BOOST_PP_BOOL(p##(180, s)), s, p, o, m) +# define BOOST_PP_FOR_180(s, p, o, m) BOOST_PP_FOR_180_C(BOOST_PP_BOOL(p##(181, s)), s, p, o, m) +# define BOOST_PP_FOR_181(s, p, o, m) BOOST_PP_FOR_181_C(BOOST_PP_BOOL(p##(182, s)), s, p, o, m) +# define BOOST_PP_FOR_182(s, p, o, m) BOOST_PP_FOR_182_C(BOOST_PP_BOOL(p##(183, s)), s, p, o, m) +# define BOOST_PP_FOR_183(s, p, o, m) BOOST_PP_FOR_183_C(BOOST_PP_BOOL(p##(184, s)), s, p, o, m) +# define BOOST_PP_FOR_184(s, p, o, m) BOOST_PP_FOR_184_C(BOOST_PP_BOOL(p##(185, s)), s, p, o, m) +# define BOOST_PP_FOR_185(s, p, o, m) BOOST_PP_FOR_185_C(BOOST_PP_BOOL(p##(186, s)), s, p, o, m) +# define BOOST_PP_FOR_186(s, p, o, m) BOOST_PP_FOR_186_C(BOOST_PP_BOOL(p##(187, s)), s, p, o, m) +# define BOOST_PP_FOR_187(s, p, o, m) BOOST_PP_FOR_187_C(BOOST_PP_BOOL(p##(188, s)), s, p, o, m) +# define BOOST_PP_FOR_188(s, p, o, m) BOOST_PP_FOR_188_C(BOOST_PP_BOOL(p##(189, s)), s, p, o, m) +# define BOOST_PP_FOR_189(s, p, o, m) BOOST_PP_FOR_189_C(BOOST_PP_BOOL(p##(190, s)), s, p, o, m) +# define BOOST_PP_FOR_190(s, p, o, m) BOOST_PP_FOR_190_C(BOOST_PP_BOOL(p##(191, s)), s, p, o, m) +# define BOOST_PP_FOR_191(s, p, o, m) BOOST_PP_FOR_191_C(BOOST_PP_BOOL(p##(192, s)), s, p, o, m) +# define BOOST_PP_FOR_192(s, p, o, m) BOOST_PP_FOR_192_C(BOOST_PP_BOOL(p##(193, s)), s, p, o, m) +# define BOOST_PP_FOR_193(s, p, o, m) BOOST_PP_FOR_193_C(BOOST_PP_BOOL(p##(194, s)), s, p, o, m) +# define BOOST_PP_FOR_194(s, p, o, m) BOOST_PP_FOR_194_C(BOOST_PP_BOOL(p##(195, s)), s, p, o, m) +# define BOOST_PP_FOR_195(s, p, o, m) BOOST_PP_FOR_195_C(BOOST_PP_BOOL(p##(196, s)), s, p, o, m) +# define BOOST_PP_FOR_196(s, p, o, m) BOOST_PP_FOR_196_C(BOOST_PP_BOOL(p##(197, s)), s, p, o, m) +# define BOOST_PP_FOR_197(s, p, o, m) BOOST_PP_FOR_197_C(BOOST_PP_BOOL(p##(198, s)), s, p, o, m) +# define BOOST_PP_FOR_198(s, p, o, m) BOOST_PP_FOR_198_C(BOOST_PP_BOOL(p##(199, s)), s, p, o, m) +# define BOOST_PP_FOR_199(s, p, o, m) BOOST_PP_FOR_199_C(BOOST_PP_BOOL(p##(200, s)), s, p, o, m) +# define BOOST_PP_FOR_200(s, p, o, m) BOOST_PP_FOR_200_C(BOOST_PP_BOOL(p##(201, s)), s, p, o, m) +# define BOOST_PP_FOR_201(s, p, o, m) BOOST_PP_FOR_201_C(BOOST_PP_BOOL(p##(202, s)), s, p, o, m) +# define BOOST_PP_FOR_202(s, p, o, m) BOOST_PP_FOR_202_C(BOOST_PP_BOOL(p##(203, s)), s, p, o, m) +# define BOOST_PP_FOR_203(s, p, o, m) BOOST_PP_FOR_203_C(BOOST_PP_BOOL(p##(204, s)), s, p, o, m) +# define BOOST_PP_FOR_204(s, p, o, m) BOOST_PP_FOR_204_C(BOOST_PP_BOOL(p##(205, s)), s, p, o, m) +# define BOOST_PP_FOR_205(s, p, o, m) BOOST_PP_FOR_205_C(BOOST_PP_BOOL(p##(206, s)), s, p, o, m) +# define BOOST_PP_FOR_206(s, p, o, m) BOOST_PP_FOR_206_C(BOOST_PP_BOOL(p##(207, s)), s, p, o, m) +# define BOOST_PP_FOR_207(s, p, o, m) BOOST_PP_FOR_207_C(BOOST_PP_BOOL(p##(208, s)), s, p, o, m) +# define BOOST_PP_FOR_208(s, p, o, m) BOOST_PP_FOR_208_C(BOOST_PP_BOOL(p##(209, s)), s, p, o, m) +# define BOOST_PP_FOR_209(s, p, o, m) BOOST_PP_FOR_209_C(BOOST_PP_BOOL(p##(210, s)), s, p, o, m) +# define BOOST_PP_FOR_210(s, p, o, m) BOOST_PP_FOR_210_C(BOOST_PP_BOOL(p##(211, s)), s, p, o, m) +# define BOOST_PP_FOR_211(s, p, o, m) BOOST_PP_FOR_211_C(BOOST_PP_BOOL(p##(212, s)), s, p, o, m) +# define BOOST_PP_FOR_212(s, p, o, m) BOOST_PP_FOR_212_C(BOOST_PP_BOOL(p##(213, s)), s, p, o, m) +# define BOOST_PP_FOR_213(s, p, o, m) BOOST_PP_FOR_213_C(BOOST_PP_BOOL(p##(214, s)), s, p, o, m) +# define BOOST_PP_FOR_214(s, p, o, m) BOOST_PP_FOR_214_C(BOOST_PP_BOOL(p##(215, s)), s, p, o, m) +# define BOOST_PP_FOR_215(s, p, o, m) BOOST_PP_FOR_215_C(BOOST_PP_BOOL(p##(216, s)), s, p, o, m) +# define BOOST_PP_FOR_216(s, p, o, m) BOOST_PP_FOR_216_C(BOOST_PP_BOOL(p##(217, s)), s, p, o, m) +# define BOOST_PP_FOR_217(s, p, o, m) BOOST_PP_FOR_217_C(BOOST_PP_BOOL(p##(218, s)), s, p, o, m) +# define BOOST_PP_FOR_218(s, p, o, m) BOOST_PP_FOR_218_C(BOOST_PP_BOOL(p##(219, s)), s, p, o, m) +# define BOOST_PP_FOR_219(s, p, o, m) BOOST_PP_FOR_219_C(BOOST_PP_BOOL(p##(220, s)), s, p, o, m) +# define BOOST_PP_FOR_220(s, p, o, m) BOOST_PP_FOR_220_C(BOOST_PP_BOOL(p##(221, s)), s, p, o, m) +# define BOOST_PP_FOR_221(s, p, o, m) BOOST_PP_FOR_221_C(BOOST_PP_BOOL(p##(222, s)), s, p, o, m) +# define BOOST_PP_FOR_222(s, p, o, m) BOOST_PP_FOR_222_C(BOOST_PP_BOOL(p##(223, s)), s, p, o, m) +# define BOOST_PP_FOR_223(s, p, o, m) BOOST_PP_FOR_223_C(BOOST_PP_BOOL(p##(224, s)), s, p, o, m) +# define BOOST_PP_FOR_224(s, p, o, m) BOOST_PP_FOR_224_C(BOOST_PP_BOOL(p##(225, s)), s, p, o, m) +# define BOOST_PP_FOR_225(s, p, o, m) BOOST_PP_FOR_225_C(BOOST_PP_BOOL(p##(226, s)), s, p, o, m) +# define BOOST_PP_FOR_226(s, p, o, m) BOOST_PP_FOR_226_C(BOOST_PP_BOOL(p##(227, s)), s, p, o, m) +# define BOOST_PP_FOR_227(s, p, o, m) BOOST_PP_FOR_227_C(BOOST_PP_BOOL(p##(228, s)), s, p, o, m) +# define BOOST_PP_FOR_228(s, p, o, m) BOOST_PP_FOR_228_C(BOOST_PP_BOOL(p##(229, s)), s, p, o, m) +# define BOOST_PP_FOR_229(s, p, o, m) BOOST_PP_FOR_229_C(BOOST_PP_BOOL(p##(230, s)), s, p, o, m) +# define BOOST_PP_FOR_230(s, p, o, m) BOOST_PP_FOR_230_C(BOOST_PP_BOOL(p##(231, s)), s, p, o, m) +# define BOOST_PP_FOR_231(s, p, o, m) BOOST_PP_FOR_231_C(BOOST_PP_BOOL(p##(232, s)), s, p, o, m) +# define BOOST_PP_FOR_232(s, p, o, m) BOOST_PP_FOR_232_C(BOOST_PP_BOOL(p##(233, s)), s, p, o, m) +# define BOOST_PP_FOR_233(s, p, o, m) BOOST_PP_FOR_233_C(BOOST_PP_BOOL(p##(234, s)), s, p, o, m) +# define BOOST_PP_FOR_234(s, p, o, m) BOOST_PP_FOR_234_C(BOOST_PP_BOOL(p##(235, s)), s, p, o, m) +# define BOOST_PP_FOR_235(s, p, o, m) BOOST_PP_FOR_235_C(BOOST_PP_BOOL(p##(236, s)), s, p, o, m) +# define BOOST_PP_FOR_236(s, p, o, m) BOOST_PP_FOR_236_C(BOOST_PP_BOOL(p##(237, s)), s, p, o, m) +# define BOOST_PP_FOR_237(s, p, o, m) BOOST_PP_FOR_237_C(BOOST_PP_BOOL(p##(238, s)), s, p, o, m) +# define BOOST_PP_FOR_238(s, p, o, m) BOOST_PP_FOR_238_C(BOOST_PP_BOOL(p##(239, s)), s, p, o, m) +# define BOOST_PP_FOR_239(s, p, o, m) BOOST_PP_FOR_239_C(BOOST_PP_BOOL(p##(240, s)), s, p, o, m) +# define BOOST_PP_FOR_240(s, p, o, m) BOOST_PP_FOR_240_C(BOOST_PP_BOOL(p##(241, s)), s, p, o, m) +# define BOOST_PP_FOR_241(s, p, o, m) BOOST_PP_FOR_241_C(BOOST_PP_BOOL(p##(242, s)), s, p, o, m) +# define BOOST_PP_FOR_242(s, p, o, m) BOOST_PP_FOR_242_C(BOOST_PP_BOOL(p##(243, s)), s, p, o, m) +# define BOOST_PP_FOR_243(s, p, o, m) BOOST_PP_FOR_243_C(BOOST_PP_BOOL(p##(244, s)), s, p, o, m) +# define BOOST_PP_FOR_244(s, p, o, m) BOOST_PP_FOR_244_C(BOOST_PP_BOOL(p##(245, s)), s, p, o, m) +# define BOOST_PP_FOR_245(s, p, o, m) BOOST_PP_FOR_245_C(BOOST_PP_BOOL(p##(246, s)), s, p, o, m) +# define BOOST_PP_FOR_246(s, p, o, m) BOOST_PP_FOR_246_C(BOOST_PP_BOOL(p##(247, s)), s, p, o, m) +# define BOOST_PP_FOR_247(s, p, o, m) BOOST_PP_FOR_247_C(BOOST_PP_BOOL(p##(248, s)), s, p, o, m) +# define BOOST_PP_FOR_248(s, p, o, m) BOOST_PP_FOR_248_C(BOOST_PP_BOOL(p##(249, s)), s, p, o, m) +# define BOOST_PP_FOR_249(s, p, o, m) BOOST_PP_FOR_249_C(BOOST_PP_BOOL(p##(250, s)), s, p, o, m) +# define BOOST_PP_FOR_250(s, p, o, m) BOOST_PP_FOR_250_C(BOOST_PP_BOOL(p##(251, s)), s, p, o, m) +# define BOOST_PP_FOR_251(s, p, o, m) BOOST_PP_FOR_251_C(BOOST_PP_BOOL(p##(252, s)), s, p, o, m) +# define BOOST_PP_FOR_252(s, p, o, m) BOOST_PP_FOR_252_C(BOOST_PP_BOOL(p##(253, s)), s, p, o, m) +# define BOOST_PP_FOR_253(s, p, o, m) BOOST_PP_FOR_253_C(BOOST_PP_BOOL(p##(254, s)), s, p, o, m) +# define BOOST_PP_FOR_254(s, p, o, m) BOOST_PP_FOR_254_C(BOOST_PP_BOOL(p##(255, s)), s, p, o, m) +# define BOOST_PP_FOR_255(s, p, o, m) BOOST_PP_FOR_255_C(BOOST_PP_BOOL(p##(256, s)), s, p, o, m) +# define BOOST_PP_FOR_256(s, p, o, m) BOOST_PP_FOR_256_C(BOOST_PP_BOOL(p##(257, s)), s, p, o, m) +# +# define BOOST_PP_FOR_1_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(2, s) BOOST_PP_IIF(c, BOOST_PP_FOR_2, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(2, s), p, o, m) +# define BOOST_PP_FOR_2_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(3, s) BOOST_PP_IIF(c, BOOST_PP_FOR_3, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(3, s), p, o, m) +# define BOOST_PP_FOR_3_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(4, s) BOOST_PP_IIF(c, BOOST_PP_FOR_4, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(4, s), p, o, m) +# define BOOST_PP_FOR_4_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(5, s) BOOST_PP_IIF(c, BOOST_PP_FOR_5, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(5, s), p, o, m) +# define BOOST_PP_FOR_5_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(6, s) BOOST_PP_IIF(c, BOOST_PP_FOR_6, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(6, s), p, o, m) +# define BOOST_PP_FOR_6_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(7, s) BOOST_PP_IIF(c, BOOST_PP_FOR_7, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(7, s), p, o, m) +# define BOOST_PP_FOR_7_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(8, s) BOOST_PP_IIF(c, BOOST_PP_FOR_8, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(8, s), p, o, m) +# define BOOST_PP_FOR_8_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(9, s) BOOST_PP_IIF(c, BOOST_PP_FOR_9, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(9, s), p, o, m) +# define BOOST_PP_FOR_9_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(10, s) BOOST_PP_IIF(c, BOOST_PP_FOR_10, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(10, s), p, o, m) +# define BOOST_PP_FOR_10_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(11, s) BOOST_PP_IIF(c, BOOST_PP_FOR_11, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(11, s), p, o, m) +# define BOOST_PP_FOR_11_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(12, s) BOOST_PP_IIF(c, BOOST_PP_FOR_12, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(12, s), p, o, m) +# define BOOST_PP_FOR_12_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(13, s) BOOST_PP_IIF(c, BOOST_PP_FOR_13, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(13, s), p, o, m) +# define BOOST_PP_FOR_13_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(14, s) BOOST_PP_IIF(c, BOOST_PP_FOR_14, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(14, s), p, o, m) +# define BOOST_PP_FOR_14_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(15, s) BOOST_PP_IIF(c, BOOST_PP_FOR_15, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(15, s), p, o, m) +# define BOOST_PP_FOR_15_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(16, s) BOOST_PP_IIF(c, BOOST_PP_FOR_16, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(16, s), p, o, m) +# define BOOST_PP_FOR_16_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(17, s) BOOST_PP_IIF(c, BOOST_PP_FOR_17, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(17, s), p, o, m) +# define BOOST_PP_FOR_17_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(18, s) BOOST_PP_IIF(c, BOOST_PP_FOR_18, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(18, s), p, o, m) +# define BOOST_PP_FOR_18_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(19, s) BOOST_PP_IIF(c, BOOST_PP_FOR_19, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(19, s), p, o, m) +# define BOOST_PP_FOR_19_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(20, s) BOOST_PP_IIF(c, BOOST_PP_FOR_20, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(20, s), p, o, m) +# define BOOST_PP_FOR_20_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(21, s) BOOST_PP_IIF(c, BOOST_PP_FOR_21, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(21, s), p, o, m) +# define BOOST_PP_FOR_21_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(22, s) BOOST_PP_IIF(c, BOOST_PP_FOR_22, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(22, s), p, o, m) +# define BOOST_PP_FOR_22_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(23, s) BOOST_PP_IIF(c, BOOST_PP_FOR_23, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(23, s), p, o, m) +# define BOOST_PP_FOR_23_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(24, s) BOOST_PP_IIF(c, BOOST_PP_FOR_24, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(24, s), p, o, m) +# define BOOST_PP_FOR_24_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(25, s) BOOST_PP_IIF(c, BOOST_PP_FOR_25, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(25, s), p, o, m) +# define BOOST_PP_FOR_25_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(26, s) BOOST_PP_IIF(c, BOOST_PP_FOR_26, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(26, s), p, o, m) +# define BOOST_PP_FOR_26_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(27, s) BOOST_PP_IIF(c, BOOST_PP_FOR_27, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(27, s), p, o, m) +# define BOOST_PP_FOR_27_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(28, s) BOOST_PP_IIF(c, BOOST_PP_FOR_28, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(28, s), p, o, m) +# define BOOST_PP_FOR_28_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(29, s) BOOST_PP_IIF(c, BOOST_PP_FOR_29, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(29, s), p, o, m) +# define BOOST_PP_FOR_29_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(30, s) BOOST_PP_IIF(c, BOOST_PP_FOR_30, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(30, s), p, o, m) +# define BOOST_PP_FOR_30_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(31, s) BOOST_PP_IIF(c, BOOST_PP_FOR_31, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(31, s), p, o, m) +# define BOOST_PP_FOR_31_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(32, s) BOOST_PP_IIF(c, BOOST_PP_FOR_32, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(32, s), p, o, m) +# define BOOST_PP_FOR_32_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(33, s) BOOST_PP_IIF(c, BOOST_PP_FOR_33, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(33, s), p, o, m) +# define BOOST_PP_FOR_33_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(34, s) BOOST_PP_IIF(c, BOOST_PP_FOR_34, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(34, s), p, o, m) +# define BOOST_PP_FOR_34_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(35, s) BOOST_PP_IIF(c, BOOST_PP_FOR_35, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(35, s), p, o, m) +# define BOOST_PP_FOR_35_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(36, s) BOOST_PP_IIF(c, BOOST_PP_FOR_36, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(36, s), p, o, m) +# define BOOST_PP_FOR_36_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(37, s) BOOST_PP_IIF(c, BOOST_PP_FOR_37, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(37, s), p, o, m) +# define BOOST_PP_FOR_37_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(38, s) BOOST_PP_IIF(c, BOOST_PP_FOR_38, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(38, s), p, o, m) +# define BOOST_PP_FOR_38_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(39, s) BOOST_PP_IIF(c, BOOST_PP_FOR_39, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(39, s), p, o, m) +# define BOOST_PP_FOR_39_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(40, s) BOOST_PP_IIF(c, BOOST_PP_FOR_40, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(40, s), p, o, m) +# define BOOST_PP_FOR_40_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(41, s) BOOST_PP_IIF(c, BOOST_PP_FOR_41, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(41, s), p, o, m) +# define BOOST_PP_FOR_41_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(42, s) BOOST_PP_IIF(c, BOOST_PP_FOR_42, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(42, s), p, o, m) +# define BOOST_PP_FOR_42_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(43, s) BOOST_PP_IIF(c, BOOST_PP_FOR_43, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(43, s), p, o, m) +# define BOOST_PP_FOR_43_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(44, s) BOOST_PP_IIF(c, BOOST_PP_FOR_44, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(44, s), p, o, m) +# define BOOST_PP_FOR_44_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(45, s) BOOST_PP_IIF(c, BOOST_PP_FOR_45, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(45, s), p, o, m) +# define BOOST_PP_FOR_45_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(46, s) BOOST_PP_IIF(c, BOOST_PP_FOR_46, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(46, s), p, o, m) +# define BOOST_PP_FOR_46_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(47, s) BOOST_PP_IIF(c, BOOST_PP_FOR_47, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(47, s), p, o, m) +# define BOOST_PP_FOR_47_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(48, s) BOOST_PP_IIF(c, BOOST_PP_FOR_48, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(48, s), p, o, m) +# define BOOST_PP_FOR_48_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(49, s) BOOST_PP_IIF(c, BOOST_PP_FOR_49, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(49, s), p, o, m) +# define BOOST_PP_FOR_49_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(50, s) BOOST_PP_IIF(c, BOOST_PP_FOR_50, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(50, s), p, o, m) +# define BOOST_PP_FOR_50_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(51, s) BOOST_PP_IIF(c, BOOST_PP_FOR_51, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(51, s), p, o, m) +# define BOOST_PP_FOR_51_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(52, s) BOOST_PP_IIF(c, BOOST_PP_FOR_52, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(52, s), p, o, m) +# define BOOST_PP_FOR_52_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(53, s) BOOST_PP_IIF(c, BOOST_PP_FOR_53, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(53, s), p, o, m) +# define BOOST_PP_FOR_53_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(54, s) BOOST_PP_IIF(c, BOOST_PP_FOR_54, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(54, s), p, o, m) +# define BOOST_PP_FOR_54_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(55, s) BOOST_PP_IIF(c, BOOST_PP_FOR_55, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(55, s), p, o, m) +# define BOOST_PP_FOR_55_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(56, s) BOOST_PP_IIF(c, BOOST_PP_FOR_56, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(56, s), p, o, m) +# define BOOST_PP_FOR_56_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(57, s) BOOST_PP_IIF(c, BOOST_PP_FOR_57, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(57, s), p, o, m) +# define BOOST_PP_FOR_57_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(58, s) BOOST_PP_IIF(c, BOOST_PP_FOR_58, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(58, s), p, o, m) +# define BOOST_PP_FOR_58_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(59, s) BOOST_PP_IIF(c, BOOST_PP_FOR_59, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(59, s), p, o, m) +# define BOOST_PP_FOR_59_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(60, s) BOOST_PP_IIF(c, BOOST_PP_FOR_60, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(60, s), p, o, m) +# define BOOST_PP_FOR_60_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(61, s) BOOST_PP_IIF(c, BOOST_PP_FOR_61, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(61, s), p, o, m) +# define BOOST_PP_FOR_61_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(62, s) BOOST_PP_IIF(c, BOOST_PP_FOR_62, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(62, s), p, o, m) +# define BOOST_PP_FOR_62_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(63, s) BOOST_PP_IIF(c, BOOST_PP_FOR_63, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(63, s), p, o, m) +# define BOOST_PP_FOR_63_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(64, s) BOOST_PP_IIF(c, BOOST_PP_FOR_64, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(64, s), p, o, m) +# define BOOST_PP_FOR_64_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(65, s) BOOST_PP_IIF(c, BOOST_PP_FOR_65, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(65, s), p, o, m) +# define BOOST_PP_FOR_65_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(66, s) BOOST_PP_IIF(c, BOOST_PP_FOR_66, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(66, s), p, o, m) +# define BOOST_PP_FOR_66_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(67, s) BOOST_PP_IIF(c, BOOST_PP_FOR_67, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(67, s), p, o, m) +# define BOOST_PP_FOR_67_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(68, s) BOOST_PP_IIF(c, BOOST_PP_FOR_68, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(68, s), p, o, m) +# define BOOST_PP_FOR_68_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(69, s) BOOST_PP_IIF(c, BOOST_PP_FOR_69, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(69, s), p, o, m) +# define BOOST_PP_FOR_69_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(70, s) BOOST_PP_IIF(c, BOOST_PP_FOR_70, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(70, s), p, o, m) +# define BOOST_PP_FOR_70_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(71, s) BOOST_PP_IIF(c, BOOST_PP_FOR_71, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(71, s), p, o, m) +# define BOOST_PP_FOR_71_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(72, s) BOOST_PP_IIF(c, BOOST_PP_FOR_72, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(72, s), p, o, m) +# define BOOST_PP_FOR_72_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(73, s) BOOST_PP_IIF(c, BOOST_PP_FOR_73, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(73, s), p, o, m) +# define BOOST_PP_FOR_73_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(74, s) BOOST_PP_IIF(c, BOOST_PP_FOR_74, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(74, s), p, o, m) +# define BOOST_PP_FOR_74_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(75, s) BOOST_PP_IIF(c, BOOST_PP_FOR_75, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(75, s), p, o, m) +# define BOOST_PP_FOR_75_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(76, s) BOOST_PP_IIF(c, BOOST_PP_FOR_76, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(76, s), p, o, m) +# define BOOST_PP_FOR_76_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(77, s) BOOST_PP_IIF(c, BOOST_PP_FOR_77, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(77, s), p, o, m) +# define BOOST_PP_FOR_77_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(78, s) BOOST_PP_IIF(c, BOOST_PP_FOR_78, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(78, s), p, o, m) +# define BOOST_PP_FOR_78_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(79, s) BOOST_PP_IIF(c, BOOST_PP_FOR_79, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(79, s), p, o, m) +# define BOOST_PP_FOR_79_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(80, s) BOOST_PP_IIF(c, BOOST_PP_FOR_80, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(80, s), p, o, m) +# define BOOST_PP_FOR_80_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(81, s) BOOST_PP_IIF(c, BOOST_PP_FOR_81, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(81, s), p, o, m) +# define BOOST_PP_FOR_81_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(82, s) BOOST_PP_IIF(c, BOOST_PP_FOR_82, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(82, s), p, o, m) +# define BOOST_PP_FOR_82_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(83, s) BOOST_PP_IIF(c, BOOST_PP_FOR_83, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(83, s), p, o, m) +# define BOOST_PP_FOR_83_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(84, s) BOOST_PP_IIF(c, BOOST_PP_FOR_84, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(84, s), p, o, m) +# define BOOST_PP_FOR_84_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(85, s) BOOST_PP_IIF(c, BOOST_PP_FOR_85, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(85, s), p, o, m) +# define BOOST_PP_FOR_85_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(86, s) BOOST_PP_IIF(c, BOOST_PP_FOR_86, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(86, s), p, o, m) +# define BOOST_PP_FOR_86_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(87, s) BOOST_PP_IIF(c, BOOST_PP_FOR_87, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(87, s), p, o, m) +# define BOOST_PP_FOR_87_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(88, s) BOOST_PP_IIF(c, BOOST_PP_FOR_88, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(88, s), p, o, m) +# define BOOST_PP_FOR_88_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(89, s) BOOST_PP_IIF(c, BOOST_PP_FOR_89, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(89, s), p, o, m) +# define BOOST_PP_FOR_89_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(90, s) BOOST_PP_IIF(c, BOOST_PP_FOR_90, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(90, s), p, o, m) +# define BOOST_PP_FOR_90_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(91, s) BOOST_PP_IIF(c, BOOST_PP_FOR_91, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(91, s), p, o, m) +# define BOOST_PP_FOR_91_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(92, s) BOOST_PP_IIF(c, BOOST_PP_FOR_92, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(92, s), p, o, m) +# define BOOST_PP_FOR_92_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(93, s) BOOST_PP_IIF(c, BOOST_PP_FOR_93, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(93, s), p, o, m) +# define BOOST_PP_FOR_93_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(94, s) BOOST_PP_IIF(c, BOOST_PP_FOR_94, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(94, s), p, o, m) +# define BOOST_PP_FOR_94_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(95, s) BOOST_PP_IIF(c, BOOST_PP_FOR_95, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(95, s), p, o, m) +# define BOOST_PP_FOR_95_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(96, s) BOOST_PP_IIF(c, BOOST_PP_FOR_96, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(96, s), p, o, m) +# define BOOST_PP_FOR_96_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(97, s) BOOST_PP_IIF(c, BOOST_PP_FOR_97, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(97, s), p, o, m) +# define BOOST_PP_FOR_97_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(98, s) BOOST_PP_IIF(c, BOOST_PP_FOR_98, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(98, s), p, o, m) +# define BOOST_PP_FOR_98_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(99, s) BOOST_PP_IIF(c, BOOST_PP_FOR_99, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(99, s), p, o, m) +# define BOOST_PP_FOR_99_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(100, s) BOOST_PP_IIF(c, BOOST_PP_FOR_100, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(100, s), p, o, m) +# define BOOST_PP_FOR_100_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(101, s) BOOST_PP_IIF(c, BOOST_PP_FOR_101, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(101, s), p, o, m) +# define BOOST_PP_FOR_101_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(102, s) BOOST_PP_IIF(c, BOOST_PP_FOR_102, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(102, s), p, o, m) +# define BOOST_PP_FOR_102_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(103, s) BOOST_PP_IIF(c, BOOST_PP_FOR_103, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(103, s), p, o, m) +# define BOOST_PP_FOR_103_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(104, s) BOOST_PP_IIF(c, BOOST_PP_FOR_104, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(104, s), p, o, m) +# define BOOST_PP_FOR_104_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(105, s) BOOST_PP_IIF(c, BOOST_PP_FOR_105, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(105, s), p, o, m) +# define BOOST_PP_FOR_105_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(106, s) BOOST_PP_IIF(c, BOOST_PP_FOR_106, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(106, s), p, o, m) +# define BOOST_PP_FOR_106_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(107, s) BOOST_PP_IIF(c, BOOST_PP_FOR_107, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(107, s), p, o, m) +# define BOOST_PP_FOR_107_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(108, s) BOOST_PP_IIF(c, BOOST_PP_FOR_108, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(108, s), p, o, m) +# define BOOST_PP_FOR_108_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(109, s) BOOST_PP_IIF(c, BOOST_PP_FOR_109, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(109, s), p, o, m) +# define BOOST_PP_FOR_109_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(110, s) BOOST_PP_IIF(c, BOOST_PP_FOR_110, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(110, s), p, o, m) +# define BOOST_PP_FOR_110_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(111, s) BOOST_PP_IIF(c, BOOST_PP_FOR_111, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(111, s), p, o, m) +# define BOOST_PP_FOR_111_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(112, s) BOOST_PP_IIF(c, BOOST_PP_FOR_112, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(112, s), p, o, m) +# define BOOST_PP_FOR_112_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(113, s) BOOST_PP_IIF(c, BOOST_PP_FOR_113, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(113, s), p, o, m) +# define BOOST_PP_FOR_113_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(114, s) BOOST_PP_IIF(c, BOOST_PP_FOR_114, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(114, s), p, o, m) +# define BOOST_PP_FOR_114_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(115, s) BOOST_PP_IIF(c, BOOST_PP_FOR_115, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(115, s), p, o, m) +# define BOOST_PP_FOR_115_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(116, s) BOOST_PP_IIF(c, BOOST_PP_FOR_116, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(116, s), p, o, m) +# define BOOST_PP_FOR_116_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(117, s) BOOST_PP_IIF(c, BOOST_PP_FOR_117, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(117, s), p, o, m) +# define BOOST_PP_FOR_117_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(118, s) BOOST_PP_IIF(c, BOOST_PP_FOR_118, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(118, s), p, o, m) +# define BOOST_PP_FOR_118_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(119, s) BOOST_PP_IIF(c, BOOST_PP_FOR_119, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(119, s), p, o, m) +# define BOOST_PP_FOR_119_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(120, s) BOOST_PP_IIF(c, BOOST_PP_FOR_120, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(120, s), p, o, m) +# define BOOST_PP_FOR_120_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(121, s) BOOST_PP_IIF(c, BOOST_PP_FOR_121, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(121, s), p, o, m) +# define BOOST_PP_FOR_121_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(122, s) BOOST_PP_IIF(c, BOOST_PP_FOR_122, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(122, s), p, o, m) +# define BOOST_PP_FOR_122_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(123, s) BOOST_PP_IIF(c, BOOST_PP_FOR_123, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(123, s), p, o, m) +# define BOOST_PP_FOR_123_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(124, s) BOOST_PP_IIF(c, BOOST_PP_FOR_124, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(124, s), p, o, m) +# define BOOST_PP_FOR_124_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(125, s) BOOST_PP_IIF(c, BOOST_PP_FOR_125, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(125, s), p, o, m) +# define BOOST_PP_FOR_125_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(126, s) BOOST_PP_IIF(c, BOOST_PP_FOR_126, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(126, s), p, o, m) +# define BOOST_PP_FOR_126_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(127, s) BOOST_PP_IIF(c, BOOST_PP_FOR_127, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(127, s), p, o, m) +# define BOOST_PP_FOR_127_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(128, s) BOOST_PP_IIF(c, BOOST_PP_FOR_128, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(128, s), p, o, m) +# define BOOST_PP_FOR_128_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(129, s) BOOST_PP_IIF(c, BOOST_PP_FOR_129, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(129, s), p, o, m) +# define BOOST_PP_FOR_129_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(130, s) BOOST_PP_IIF(c, BOOST_PP_FOR_130, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(130, s), p, o, m) +# define BOOST_PP_FOR_130_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(131, s) BOOST_PP_IIF(c, BOOST_PP_FOR_131, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(131, s), p, o, m) +# define BOOST_PP_FOR_131_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(132, s) BOOST_PP_IIF(c, BOOST_PP_FOR_132, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(132, s), p, o, m) +# define BOOST_PP_FOR_132_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(133, s) BOOST_PP_IIF(c, BOOST_PP_FOR_133, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(133, s), p, o, m) +# define BOOST_PP_FOR_133_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(134, s) BOOST_PP_IIF(c, BOOST_PP_FOR_134, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(134, s), p, o, m) +# define BOOST_PP_FOR_134_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(135, s) BOOST_PP_IIF(c, BOOST_PP_FOR_135, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(135, s), p, o, m) +# define BOOST_PP_FOR_135_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(136, s) BOOST_PP_IIF(c, BOOST_PP_FOR_136, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(136, s), p, o, m) +# define BOOST_PP_FOR_136_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(137, s) BOOST_PP_IIF(c, BOOST_PP_FOR_137, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(137, s), p, o, m) +# define BOOST_PP_FOR_137_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(138, s) BOOST_PP_IIF(c, BOOST_PP_FOR_138, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(138, s), p, o, m) +# define BOOST_PP_FOR_138_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(139, s) BOOST_PP_IIF(c, BOOST_PP_FOR_139, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(139, s), p, o, m) +# define BOOST_PP_FOR_139_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(140, s) BOOST_PP_IIF(c, BOOST_PP_FOR_140, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(140, s), p, o, m) +# define BOOST_PP_FOR_140_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(141, s) BOOST_PP_IIF(c, BOOST_PP_FOR_141, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(141, s), p, o, m) +# define BOOST_PP_FOR_141_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(142, s) BOOST_PP_IIF(c, BOOST_PP_FOR_142, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(142, s), p, o, m) +# define BOOST_PP_FOR_142_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(143, s) BOOST_PP_IIF(c, BOOST_PP_FOR_143, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(143, s), p, o, m) +# define BOOST_PP_FOR_143_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(144, s) BOOST_PP_IIF(c, BOOST_PP_FOR_144, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(144, s), p, o, m) +# define BOOST_PP_FOR_144_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(145, s) BOOST_PP_IIF(c, BOOST_PP_FOR_145, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(145, s), p, o, m) +# define BOOST_PP_FOR_145_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(146, s) BOOST_PP_IIF(c, BOOST_PP_FOR_146, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(146, s), p, o, m) +# define BOOST_PP_FOR_146_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(147, s) BOOST_PP_IIF(c, BOOST_PP_FOR_147, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(147, s), p, o, m) +# define BOOST_PP_FOR_147_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(148, s) BOOST_PP_IIF(c, BOOST_PP_FOR_148, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(148, s), p, o, m) +# define BOOST_PP_FOR_148_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(149, s) BOOST_PP_IIF(c, BOOST_PP_FOR_149, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(149, s), p, o, m) +# define BOOST_PP_FOR_149_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(150, s) BOOST_PP_IIF(c, BOOST_PP_FOR_150, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(150, s), p, o, m) +# define BOOST_PP_FOR_150_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(151, s) BOOST_PP_IIF(c, BOOST_PP_FOR_151, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(151, s), p, o, m) +# define BOOST_PP_FOR_151_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(152, s) BOOST_PP_IIF(c, BOOST_PP_FOR_152, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(152, s), p, o, m) +# define BOOST_PP_FOR_152_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(153, s) BOOST_PP_IIF(c, BOOST_PP_FOR_153, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(153, s), p, o, m) +# define BOOST_PP_FOR_153_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(154, s) BOOST_PP_IIF(c, BOOST_PP_FOR_154, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(154, s), p, o, m) +# define BOOST_PP_FOR_154_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(155, s) BOOST_PP_IIF(c, BOOST_PP_FOR_155, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(155, s), p, o, m) +# define BOOST_PP_FOR_155_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(156, s) BOOST_PP_IIF(c, BOOST_PP_FOR_156, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(156, s), p, o, m) +# define BOOST_PP_FOR_156_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(157, s) BOOST_PP_IIF(c, BOOST_PP_FOR_157, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(157, s), p, o, m) +# define BOOST_PP_FOR_157_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(158, s) BOOST_PP_IIF(c, BOOST_PP_FOR_158, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(158, s), p, o, m) +# define BOOST_PP_FOR_158_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(159, s) BOOST_PP_IIF(c, BOOST_PP_FOR_159, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(159, s), p, o, m) +# define BOOST_PP_FOR_159_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(160, s) BOOST_PP_IIF(c, BOOST_PP_FOR_160, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(160, s), p, o, m) +# define BOOST_PP_FOR_160_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(161, s) BOOST_PP_IIF(c, BOOST_PP_FOR_161, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(161, s), p, o, m) +# define BOOST_PP_FOR_161_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(162, s) BOOST_PP_IIF(c, BOOST_PP_FOR_162, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(162, s), p, o, m) +# define BOOST_PP_FOR_162_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(163, s) BOOST_PP_IIF(c, BOOST_PP_FOR_163, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(163, s), p, o, m) +# define BOOST_PP_FOR_163_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(164, s) BOOST_PP_IIF(c, BOOST_PP_FOR_164, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(164, s), p, o, m) +# define BOOST_PP_FOR_164_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(165, s) BOOST_PP_IIF(c, BOOST_PP_FOR_165, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(165, s), p, o, m) +# define BOOST_PP_FOR_165_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(166, s) BOOST_PP_IIF(c, BOOST_PP_FOR_166, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(166, s), p, o, m) +# define BOOST_PP_FOR_166_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(167, s) BOOST_PP_IIF(c, BOOST_PP_FOR_167, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(167, s), p, o, m) +# define BOOST_PP_FOR_167_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(168, s) BOOST_PP_IIF(c, BOOST_PP_FOR_168, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(168, s), p, o, m) +# define BOOST_PP_FOR_168_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(169, s) BOOST_PP_IIF(c, BOOST_PP_FOR_169, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(169, s), p, o, m) +# define BOOST_PP_FOR_169_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(170, s) BOOST_PP_IIF(c, BOOST_PP_FOR_170, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(170, s), p, o, m) +# define BOOST_PP_FOR_170_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(171, s) BOOST_PP_IIF(c, BOOST_PP_FOR_171, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(171, s), p, o, m) +# define BOOST_PP_FOR_171_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(172, s) BOOST_PP_IIF(c, BOOST_PP_FOR_172, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(172, s), p, o, m) +# define BOOST_PP_FOR_172_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(173, s) BOOST_PP_IIF(c, BOOST_PP_FOR_173, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(173, s), p, o, m) +# define BOOST_PP_FOR_173_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(174, s) BOOST_PP_IIF(c, BOOST_PP_FOR_174, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(174, s), p, o, m) +# define BOOST_PP_FOR_174_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(175, s) BOOST_PP_IIF(c, BOOST_PP_FOR_175, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(175, s), p, o, m) +# define BOOST_PP_FOR_175_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(176, s) BOOST_PP_IIF(c, BOOST_PP_FOR_176, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(176, s), p, o, m) +# define BOOST_PP_FOR_176_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(177, s) BOOST_PP_IIF(c, BOOST_PP_FOR_177, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(177, s), p, o, m) +# define BOOST_PP_FOR_177_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(178, s) BOOST_PP_IIF(c, BOOST_PP_FOR_178, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(178, s), p, o, m) +# define BOOST_PP_FOR_178_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(179, s) BOOST_PP_IIF(c, BOOST_PP_FOR_179, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(179, s), p, o, m) +# define BOOST_PP_FOR_179_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(180, s) BOOST_PP_IIF(c, BOOST_PP_FOR_180, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(180, s), p, o, m) +# define BOOST_PP_FOR_180_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(181, s) BOOST_PP_IIF(c, BOOST_PP_FOR_181, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(181, s), p, o, m) +# define BOOST_PP_FOR_181_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(182, s) BOOST_PP_IIF(c, BOOST_PP_FOR_182, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(182, s), p, o, m) +# define BOOST_PP_FOR_182_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(183, s) BOOST_PP_IIF(c, BOOST_PP_FOR_183, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(183, s), p, o, m) +# define BOOST_PP_FOR_183_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(184, s) BOOST_PP_IIF(c, BOOST_PP_FOR_184, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(184, s), p, o, m) +# define BOOST_PP_FOR_184_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(185, s) BOOST_PP_IIF(c, BOOST_PP_FOR_185, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(185, s), p, o, m) +# define BOOST_PP_FOR_185_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(186, s) BOOST_PP_IIF(c, BOOST_PP_FOR_186, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(186, s), p, o, m) +# define BOOST_PP_FOR_186_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(187, s) BOOST_PP_IIF(c, BOOST_PP_FOR_187, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(187, s), p, o, m) +# define BOOST_PP_FOR_187_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(188, s) BOOST_PP_IIF(c, BOOST_PP_FOR_188, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(188, s), p, o, m) +# define BOOST_PP_FOR_188_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(189, s) BOOST_PP_IIF(c, BOOST_PP_FOR_189, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(189, s), p, o, m) +# define BOOST_PP_FOR_189_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(190, s) BOOST_PP_IIF(c, BOOST_PP_FOR_190, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(190, s), p, o, m) +# define BOOST_PP_FOR_190_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(191, s) BOOST_PP_IIF(c, BOOST_PP_FOR_191, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(191, s), p, o, m) +# define BOOST_PP_FOR_191_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(192, s) BOOST_PP_IIF(c, BOOST_PP_FOR_192, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(192, s), p, o, m) +# define BOOST_PP_FOR_192_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(193, s) BOOST_PP_IIF(c, BOOST_PP_FOR_193, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(193, s), p, o, m) +# define BOOST_PP_FOR_193_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(194, s) BOOST_PP_IIF(c, BOOST_PP_FOR_194, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(194, s), p, o, m) +# define BOOST_PP_FOR_194_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(195, s) BOOST_PP_IIF(c, BOOST_PP_FOR_195, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(195, s), p, o, m) +# define BOOST_PP_FOR_195_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(196, s) BOOST_PP_IIF(c, BOOST_PP_FOR_196, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(196, s), p, o, m) +# define BOOST_PP_FOR_196_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(197, s) BOOST_PP_IIF(c, BOOST_PP_FOR_197, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(197, s), p, o, m) +# define BOOST_PP_FOR_197_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(198, s) BOOST_PP_IIF(c, BOOST_PP_FOR_198, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(198, s), p, o, m) +# define BOOST_PP_FOR_198_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(199, s) BOOST_PP_IIF(c, BOOST_PP_FOR_199, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(199, s), p, o, m) +# define BOOST_PP_FOR_199_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(200, s) BOOST_PP_IIF(c, BOOST_PP_FOR_200, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(200, s), p, o, m) +# define BOOST_PP_FOR_200_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(201, s) BOOST_PP_IIF(c, BOOST_PP_FOR_201, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(201, s), p, o, m) +# define BOOST_PP_FOR_201_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(202, s) BOOST_PP_IIF(c, BOOST_PP_FOR_202, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(202, s), p, o, m) +# define BOOST_PP_FOR_202_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(203, s) BOOST_PP_IIF(c, BOOST_PP_FOR_203, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(203, s), p, o, m) +# define BOOST_PP_FOR_203_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(204, s) BOOST_PP_IIF(c, BOOST_PP_FOR_204, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(204, s), p, o, m) +# define BOOST_PP_FOR_204_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(205, s) BOOST_PP_IIF(c, BOOST_PP_FOR_205, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(205, s), p, o, m) +# define BOOST_PP_FOR_205_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(206, s) BOOST_PP_IIF(c, BOOST_PP_FOR_206, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(206, s), p, o, m) +# define BOOST_PP_FOR_206_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(207, s) BOOST_PP_IIF(c, BOOST_PP_FOR_207, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(207, s), p, o, m) +# define BOOST_PP_FOR_207_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(208, s) BOOST_PP_IIF(c, BOOST_PP_FOR_208, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(208, s), p, o, m) +# define BOOST_PP_FOR_208_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(209, s) BOOST_PP_IIF(c, BOOST_PP_FOR_209, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(209, s), p, o, m) +# define BOOST_PP_FOR_209_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(210, s) BOOST_PP_IIF(c, BOOST_PP_FOR_210, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(210, s), p, o, m) +# define BOOST_PP_FOR_210_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(211, s) BOOST_PP_IIF(c, BOOST_PP_FOR_211, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(211, s), p, o, m) +# define BOOST_PP_FOR_211_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(212, s) BOOST_PP_IIF(c, BOOST_PP_FOR_212, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(212, s), p, o, m) +# define BOOST_PP_FOR_212_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(213, s) BOOST_PP_IIF(c, BOOST_PP_FOR_213, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(213, s), p, o, m) +# define BOOST_PP_FOR_213_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(214, s) BOOST_PP_IIF(c, BOOST_PP_FOR_214, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(214, s), p, o, m) +# define BOOST_PP_FOR_214_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(215, s) BOOST_PP_IIF(c, BOOST_PP_FOR_215, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(215, s), p, o, m) +# define BOOST_PP_FOR_215_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(216, s) BOOST_PP_IIF(c, BOOST_PP_FOR_216, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(216, s), p, o, m) +# define BOOST_PP_FOR_216_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(217, s) BOOST_PP_IIF(c, BOOST_PP_FOR_217, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(217, s), p, o, m) +# define BOOST_PP_FOR_217_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(218, s) BOOST_PP_IIF(c, BOOST_PP_FOR_218, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(218, s), p, o, m) +# define BOOST_PP_FOR_218_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(219, s) BOOST_PP_IIF(c, BOOST_PP_FOR_219, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(219, s), p, o, m) +# define BOOST_PP_FOR_219_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(220, s) BOOST_PP_IIF(c, BOOST_PP_FOR_220, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(220, s), p, o, m) +# define BOOST_PP_FOR_220_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(221, s) BOOST_PP_IIF(c, BOOST_PP_FOR_221, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(221, s), p, o, m) +# define BOOST_PP_FOR_221_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(222, s) BOOST_PP_IIF(c, BOOST_PP_FOR_222, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(222, s), p, o, m) +# define BOOST_PP_FOR_222_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(223, s) BOOST_PP_IIF(c, BOOST_PP_FOR_223, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(223, s), p, o, m) +# define BOOST_PP_FOR_223_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(224, s) BOOST_PP_IIF(c, BOOST_PP_FOR_224, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(224, s), p, o, m) +# define BOOST_PP_FOR_224_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(225, s) BOOST_PP_IIF(c, BOOST_PP_FOR_225, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(225, s), p, o, m) +# define BOOST_PP_FOR_225_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(226, s) BOOST_PP_IIF(c, BOOST_PP_FOR_226, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(226, s), p, o, m) +# define BOOST_PP_FOR_226_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(227, s) BOOST_PP_IIF(c, BOOST_PP_FOR_227, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(227, s), p, o, m) +# define BOOST_PP_FOR_227_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(228, s) BOOST_PP_IIF(c, BOOST_PP_FOR_228, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(228, s), p, o, m) +# define BOOST_PP_FOR_228_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(229, s) BOOST_PP_IIF(c, BOOST_PP_FOR_229, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(229, s), p, o, m) +# define BOOST_PP_FOR_229_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(230, s) BOOST_PP_IIF(c, BOOST_PP_FOR_230, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(230, s), p, o, m) +# define BOOST_PP_FOR_230_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(231, s) BOOST_PP_IIF(c, BOOST_PP_FOR_231, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(231, s), p, o, m) +# define BOOST_PP_FOR_231_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(232, s) BOOST_PP_IIF(c, BOOST_PP_FOR_232, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(232, s), p, o, m) +# define BOOST_PP_FOR_232_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(233, s) BOOST_PP_IIF(c, BOOST_PP_FOR_233, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(233, s), p, o, m) +# define BOOST_PP_FOR_233_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(234, s) BOOST_PP_IIF(c, BOOST_PP_FOR_234, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(234, s), p, o, m) +# define BOOST_PP_FOR_234_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(235, s) BOOST_PP_IIF(c, BOOST_PP_FOR_235, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(235, s), p, o, m) +# define BOOST_PP_FOR_235_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(236, s) BOOST_PP_IIF(c, BOOST_PP_FOR_236, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(236, s), p, o, m) +# define BOOST_PP_FOR_236_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(237, s) BOOST_PP_IIF(c, BOOST_PP_FOR_237, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(237, s), p, o, m) +# define BOOST_PP_FOR_237_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(238, s) BOOST_PP_IIF(c, BOOST_PP_FOR_238, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(238, s), p, o, m) +# define BOOST_PP_FOR_238_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(239, s) BOOST_PP_IIF(c, BOOST_PP_FOR_239, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(239, s), p, o, m) +# define BOOST_PP_FOR_239_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(240, s) BOOST_PP_IIF(c, BOOST_PP_FOR_240, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(240, s), p, o, m) +# define BOOST_PP_FOR_240_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(241, s) BOOST_PP_IIF(c, BOOST_PP_FOR_241, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(241, s), p, o, m) +# define BOOST_PP_FOR_241_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(242, s) BOOST_PP_IIF(c, BOOST_PP_FOR_242, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(242, s), p, o, m) +# define BOOST_PP_FOR_242_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(243, s) BOOST_PP_IIF(c, BOOST_PP_FOR_243, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(243, s), p, o, m) +# define BOOST_PP_FOR_243_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(244, s) BOOST_PP_IIF(c, BOOST_PP_FOR_244, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(244, s), p, o, m) +# define BOOST_PP_FOR_244_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(245, s) BOOST_PP_IIF(c, BOOST_PP_FOR_245, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(245, s), p, o, m) +# define BOOST_PP_FOR_245_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(246, s) BOOST_PP_IIF(c, BOOST_PP_FOR_246, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(246, s), p, o, m) +# define BOOST_PP_FOR_246_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(247, s) BOOST_PP_IIF(c, BOOST_PP_FOR_247, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(247, s), p, o, m) +# define BOOST_PP_FOR_247_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(248, s) BOOST_PP_IIF(c, BOOST_PP_FOR_248, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(248, s), p, o, m) +# define BOOST_PP_FOR_248_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(249, s) BOOST_PP_IIF(c, BOOST_PP_FOR_249, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(249, s), p, o, m) +# define BOOST_PP_FOR_249_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(250, s) BOOST_PP_IIF(c, BOOST_PP_FOR_250, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(250, s), p, o, m) +# define BOOST_PP_FOR_250_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(251, s) BOOST_PP_IIF(c, BOOST_PP_FOR_251, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(251, s), p, o, m) +# define BOOST_PP_FOR_251_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(252, s) BOOST_PP_IIF(c, BOOST_PP_FOR_252, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(252, s), p, o, m) +# define BOOST_PP_FOR_252_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(253, s) BOOST_PP_IIF(c, BOOST_PP_FOR_253, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(253, s), p, o, m) +# define BOOST_PP_FOR_253_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(254, s) BOOST_PP_IIF(c, BOOST_PP_FOR_254, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(254, s), p, o, m) +# define BOOST_PP_FOR_254_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(255, s) BOOST_PP_IIF(c, BOOST_PP_FOR_255, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(255, s), p, o, m) +# define BOOST_PP_FOR_255_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(256, s) BOOST_PP_IIF(c, BOOST_PP_FOR_256, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(256, s), p, o, m) +# define BOOST_PP_FOR_256_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(257, s) BOOST_PP_IIF(c, BOOST_PP_FOR_257, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(257, s), p, o, m) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/detail/edg/for.hpp b/plugin/wave/include/boost/preprocessor/repetition/detail/edg/for.hpp new file mode 100644 index 0000000..212921a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/detail/edg/for.hpp @@ -0,0 +1,534 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DETAIL_EDG_FOR_HPP +# define BOOST_PREPROCESSOR_REPETITION_DETAIL_EDG_FOR_HPP +# +# include +# include +# +# define BOOST_PP_FOR_1(s, p, o, m) BOOST_PP_FOR_1_I(s, p, o, m) +# define BOOST_PP_FOR_2(s, p, o, m) BOOST_PP_FOR_2_I(s, p, o, m) +# define BOOST_PP_FOR_3(s, p, o, m) BOOST_PP_FOR_3_I(s, p, o, m) +# define BOOST_PP_FOR_4(s, p, o, m) BOOST_PP_FOR_4_I(s, p, o, m) +# define BOOST_PP_FOR_5(s, p, o, m) BOOST_PP_FOR_5_I(s, p, o, m) +# define BOOST_PP_FOR_6(s, p, o, m) BOOST_PP_FOR_6_I(s, p, o, m) +# define BOOST_PP_FOR_7(s, p, o, m) BOOST_PP_FOR_7_I(s, p, o, m) +# define BOOST_PP_FOR_8(s, p, o, m) BOOST_PP_FOR_8_I(s, p, o, m) +# define BOOST_PP_FOR_9(s, p, o, m) BOOST_PP_FOR_9_I(s, p, o, m) +# define BOOST_PP_FOR_10(s, p, o, m) BOOST_PP_FOR_10_I(s, p, o, m) +# define BOOST_PP_FOR_11(s, p, o, m) BOOST_PP_FOR_11_I(s, p, o, m) +# define BOOST_PP_FOR_12(s, p, o, m) BOOST_PP_FOR_12_I(s, p, o, m) +# define BOOST_PP_FOR_13(s, p, o, m) BOOST_PP_FOR_13_I(s, p, o, m) +# define BOOST_PP_FOR_14(s, p, o, m) BOOST_PP_FOR_14_I(s, p, o, m) +# define BOOST_PP_FOR_15(s, p, o, m) BOOST_PP_FOR_15_I(s, p, o, m) +# define BOOST_PP_FOR_16(s, p, o, m) BOOST_PP_FOR_16_I(s, p, o, m) +# define BOOST_PP_FOR_17(s, p, o, m) BOOST_PP_FOR_17_I(s, p, o, m) +# define BOOST_PP_FOR_18(s, p, o, m) BOOST_PP_FOR_18_I(s, p, o, m) +# define BOOST_PP_FOR_19(s, p, o, m) BOOST_PP_FOR_19_I(s, p, o, m) +# define BOOST_PP_FOR_20(s, p, o, m) BOOST_PP_FOR_20_I(s, p, o, m) +# define BOOST_PP_FOR_21(s, p, o, m) BOOST_PP_FOR_21_I(s, p, o, m) +# define BOOST_PP_FOR_22(s, p, o, m) BOOST_PP_FOR_22_I(s, p, o, m) +# define BOOST_PP_FOR_23(s, p, o, m) BOOST_PP_FOR_23_I(s, p, o, m) +# define BOOST_PP_FOR_24(s, p, o, m) BOOST_PP_FOR_24_I(s, p, o, m) +# define BOOST_PP_FOR_25(s, p, o, m) BOOST_PP_FOR_25_I(s, p, o, m) +# define BOOST_PP_FOR_26(s, p, o, m) BOOST_PP_FOR_26_I(s, p, o, m) +# define BOOST_PP_FOR_27(s, p, o, m) BOOST_PP_FOR_27_I(s, p, o, m) +# define BOOST_PP_FOR_28(s, p, o, m) BOOST_PP_FOR_28_I(s, p, o, m) +# define BOOST_PP_FOR_29(s, p, o, m) BOOST_PP_FOR_29_I(s, p, o, m) +# define BOOST_PP_FOR_30(s, p, o, m) BOOST_PP_FOR_30_I(s, p, o, m) +# define BOOST_PP_FOR_31(s, p, o, m) BOOST_PP_FOR_31_I(s, p, o, m) +# define BOOST_PP_FOR_32(s, p, o, m) BOOST_PP_FOR_32_I(s, p, o, m) +# define BOOST_PP_FOR_33(s, p, o, m) BOOST_PP_FOR_33_I(s, p, o, m) +# define BOOST_PP_FOR_34(s, p, o, m) BOOST_PP_FOR_34_I(s, p, o, m) +# define BOOST_PP_FOR_35(s, p, o, m) BOOST_PP_FOR_35_I(s, p, o, m) +# define BOOST_PP_FOR_36(s, p, o, m) BOOST_PP_FOR_36_I(s, p, o, m) +# define BOOST_PP_FOR_37(s, p, o, m) BOOST_PP_FOR_37_I(s, p, o, m) +# define BOOST_PP_FOR_38(s, p, o, m) BOOST_PP_FOR_38_I(s, p, o, m) +# define BOOST_PP_FOR_39(s, p, o, m) BOOST_PP_FOR_39_I(s, p, o, m) +# define BOOST_PP_FOR_40(s, p, o, m) BOOST_PP_FOR_40_I(s, p, o, m) +# define BOOST_PP_FOR_41(s, p, o, m) BOOST_PP_FOR_41_I(s, p, o, m) +# define BOOST_PP_FOR_42(s, p, o, m) BOOST_PP_FOR_42_I(s, p, o, m) +# define BOOST_PP_FOR_43(s, p, o, m) BOOST_PP_FOR_43_I(s, p, o, m) +# define BOOST_PP_FOR_44(s, p, o, m) BOOST_PP_FOR_44_I(s, p, o, m) +# define BOOST_PP_FOR_45(s, p, o, m) BOOST_PP_FOR_45_I(s, p, o, m) +# define BOOST_PP_FOR_46(s, p, o, m) BOOST_PP_FOR_46_I(s, p, o, m) +# define BOOST_PP_FOR_47(s, p, o, m) BOOST_PP_FOR_47_I(s, p, o, m) +# define BOOST_PP_FOR_48(s, p, o, m) BOOST_PP_FOR_48_I(s, p, o, m) +# define BOOST_PP_FOR_49(s, p, o, m) BOOST_PP_FOR_49_I(s, p, o, m) +# define BOOST_PP_FOR_50(s, p, o, m) BOOST_PP_FOR_50_I(s, p, o, m) +# define BOOST_PP_FOR_51(s, p, o, m) BOOST_PP_FOR_51_I(s, p, o, m) +# define BOOST_PP_FOR_52(s, p, o, m) BOOST_PP_FOR_52_I(s, p, o, m) +# define BOOST_PP_FOR_53(s, p, o, m) BOOST_PP_FOR_53_I(s, p, o, m) +# define BOOST_PP_FOR_54(s, p, o, m) BOOST_PP_FOR_54_I(s, p, o, m) +# define BOOST_PP_FOR_55(s, p, o, m) BOOST_PP_FOR_55_I(s, p, o, m) +# define BOOST_PP_FOR_56(s, p, o, m) BOOST_PP_FOR_56_I(s, p, o, m) +# define BOOST_PP_FOR_57(s, p, o, m) BOOST_PP_FOR_57_I(s, p, o, m) +# define BOOST_PP_FOR_58(s, p, o, m) BOOST_PP_FOR_58_I(s, p, o, m) +# define BOOST_PP_FOR_59(s, p, o, m) BOOST_PP_FOR_59_I(s, p, o, m) +# define BOOST_PP_FOR_60(s, p, o, m) BOOST_PP_FOR_60_I(s, p, o, m) +# define BOOST_PP_FOR_61(s, p, o, m) BOOST_PP_FOR_61_I(s, p, o, m) +# define BOOST_PP_FOR_62(s, p, o, m) BOOST_PP_FOR_62_I(s, p, o, m) +# define BOOST_PP_FOR_63(s, p, o, m) BOOST_PP_FOR_63_I(s, p, o, m) +# define BOOST_PP_FOR_64(s, p, o, m) BOOST_PP_FOR_64_I(s, p, o, m) +# define BOOST_PP_FOR_65(s, p, o, m) BOOST_PP_FOR_65_I(s, p, o, m) +# define BOOST_PP_FOR_66(s, p, o, m) BOOST_PP_FOR_66_I(s, p, o, m) +# define BOOST_PP_FOR_67(s, p, o, m) BOOST_PP_FOR_67_I(s, p, o, m) +# define BOOST_PP_FOR_68(s, p, o, m) BOOST_PP_FOR_68_I(s, p, o, m) +# define BOOST_PP_FOR_69(s, p, o, m) BOOST_PP_FOR_69_I(s, p, o, m) +# define BOOST_PP_FOR_70(s, p, o, m) BOOST_PP_FOR_70_I(s, p, o, m) +# define BOOST_PP_FOR_71(s, p, o, m) BOOST_PP_FOR_71_I(s, p, o, m) +# define BOOST_PP_FOR_72(s, p, o, m) BOOST_PP_FOR_72_I(s, p, o, m) +# define BOOST_PP_FOR_73(s, p, o, m) BOOST_PP_FOR_73_I(s, p, o, m) +# define BOOST_PP_FOR_74(s, p, o, m) BOOST_PP_FOR_74_I(s, p, o, m) +# define BOOST_PP_FOR_75(s, p, o, m) BOOST_PP_FOR_75_I(s, p, o, m) +# define BOOST_PP_FOR_76(s, p, o, m) BOOST_PP_FOR_76_I(s, p, o, m) +# define BOOST_PP_FOR_77(s, p, o, m) BOOST_PP_FOR_77_I(s, p, o, m) +# define BOOST_PP_FOR_78(s, p, o, m) BOOST_PP_FOR_78_I(s, p, o, m) +# define BOOST_PP_FOR_79(s, p, o, m) BOOST_PP_FOR_79_I(s, p, o, m) +# define BOOST_PP_FOR_80(s, p, o, m) BOOST_PP_FOR_80_I(s, p, o, m) +# define BOOST_PP_FOR_81(s, p, o, m) BOOST_PP_FOR_81_I(s, p, o, m) +# define BOOST_PP_FOR_82(s, p, o, m) BOOST_PP_FOR_82_I(s, p, o, m) +# define BOOST_PP_FOR_83(s, p, o, m) BOOST_PP_FOR_83_I(s, p, o, m) +# define BOOST_PP_FOR_84(s, p, o, m) BOOST_PP_FOR_84_I(s, p, o, m) +# define BOOST_PP_FOR_85(s, p, o, m) BOOST_PP_FOR_85_I(s, p, o, m) +# define BOOST_PP_FOR_86(s, p, o, m) BOOST_PP_FOR_86_I(s, p, o, m) +# define BOOST_PP_FOR_87(s, p, o, m) BOOST_PP_FOR_87_I(s, p, o, m) +# define BOOST_PP_FOR_88(s, p, o, m) BOOST_PP_FOR_88_I(s, p, o, m) +# define BOOST_PP_FOR_89(s, p, o, m) BOOST_PP_FOR_89_I(s, p, o, m) +# define BOOST_PP_FOR_90(s, p, o, m) BOOST_PP_FOR_90_I(s, p, o, m) +# define BOOST_PP_FOR_91(s, p, o, m) BOOST_PP_FOR_91_I(s, p, o, m) +# define BOOST_PP_FOR_92(s, p, o, m) BOOST_PP_FOR_92_I(s, p, o, m) +# define BOOST_PP_FOR_93(s, p, o, m) BOOST_PP_FOR_93_I(s, p, o, m) +# define BOOST_PP_FOR_94(s, p, o, m) BOOST_PP_FOR_94_I(s, p, o, m) +# define BOOST_PP_FOR_95(s, p, o, m) BOOST_PP_FOR_95_I(s, p, o, m) +# define BOOST_PP_FOR_96(s, p, o, m) BOOST_PP_FOR_96_I(s, p, o, m) +# define BOOST_PP_FOR_97(s, p, o, m) BOOST_PP_FOR_97_I(s, p, o, m) +# define BOOST_PP_FOR_98(s, p, o, m) BOOST_PP_FOR_98_I(s, p, o, m) +# define BOOST_PP_FOR_99(s, p, o, m) BOOST_PP_FOR_99_I(s, p, o, m) +# define BOOST_PP_FOR_100(s, p, o, m) BOOST_PP_FOR_100_I(s, p, o, m) +# define BOOST_PP_FOR_101(s, p, o, m) BOOST_PP_FOR_101_I(s, p, o, m) +# define BOOST_PP_FOR_102(s, p, o, m) BOOST_PP_FOR_102_I(s, p, o, m) +# define BOOST_PP_FOR_103(s, p, o, m) BOOST_PP_FOR_103_I(s, p, o, m) +# define BOOST_PP_FOR_104(s, p, o, m) BOOST_PP_FOR_104_I(s, p, o, m) +# define BOOST_PP_FOR_105(s, p, o, m) BOOST_PP_FOR_105_I(s, p, o, m) +# define BOOST_PP_FOR_106(s, p, o, m) BOOST_PP_FOR_106_I(s, p, o, m) +# define BOOST_PP_FOR_107(s, p, o, m) BOOST_PP_FOR_107_I(s, p, o, m) +# define BOOST_PP_FOR_108(s, p, o, m) BOOST_PP_FOR_108_I(s, p, o, m) +# define BOOST_PP_FOR_109(s, p, o, m) BOOST_PP_FOR_109_I(s, p, o, m) +# define BOOST_PP_FOR_110(s, p, o, m) BOOST_PP_FOR_110_I(s, p, o, m) +# define BOOST_PP_FOR_111(s, p, o, m) BOOST_PP_FOR_111_I(s, p, o, m) +# define BOOST_PP_FOR_112(s, p, o, m) BOOST_PP_FOR_112_I(s, p, o, m) +# define BOOST_PP_FOR_113(s, p, o, m) BOOST_PP_FOR_113_I(s, p, o, m) +# define BOOST_PP_FOR_114(s, p, o, m) BOOST_PP_FOR_114_I(s, p, o, m) +# define BOOST_PP_FOR_115(s, p, o, m) BOOST_PP_FOR_115_I(s, p, o, m) +# define BOOST_PP_FOR_116(s, p, o, m) BOOST_PP_FOR_116_I(s, p, o, m) +# define BOOST_PP_FOR_117(s, p, o, m) BOOST_PP_FOR_117_I(s, p, o, m) +# define BOOST_PP_FOR_118(s, p, o, m) BOOST_PP_FOR_118_I(s, p, o, m) +# define BOOST_PP_FOR_119(s, p, o, m) BOOST_PP_FOR_119_I(s, p, o, m) +# define BOOST_PP_FOR_120(s, p, o, m) BOOST_PP_FOR_120_I(s, p, o, m) +# define BOOST_PP_FOR_121(s, p, o, m) BOOST_PP_FOR_121_I(s, p, o, m) +# define BOOST_PP_FOR_122(s, p, o, m) BOOST_PP_FOR_122_I(s, p, o, m) +# define BOOST_PP_FOR_123(s, p, o, m) BOOST_PP_FOR_123_I(s, p, o, m) +# define BOOST_PP_FOR_124(s, p, o, m) BOOST_PP_FOR_124_I(s, p, o, m) +# define BOOST_PP_FOR_125(s, p, o, m) BOOST_PP_FOR_125_I(s, p, o, m) +# define BOOST_PP_FOR_126(s, p, o, m) BOOST_PP_FOR_126_I(s, p, o, m) +# define BOOST_PP_FOR_127(s, p, o, m) BOOST_PP_FOR_127_I(s, p, o, m) +# define BOOST_PP_FOR_128(s, p, o, m) BOOST_PP_FOR_128_I(s, p, o, m) +# define BOOST_PP_FOR_129(s, p, o, m) BOOST_PP_FOR_129_I(s, p, o, m) +# define BOOST_PP_FOR_130(s, p, o, m) BOOST_PP_FOR_130_I(s, p, o, m) +# define BOOST_PP_FOR_131(s, p, o, m) BOOST_PP_FOR_131_I(s, p, o, m) +# define BOOST_PP_FOR_132(s, p, o, m) BOOST_PP_FOR_132_I(s, p, o, m) +# define BOOST_PP_FOR_133(s, p, o, m) BOOST_PP_FOR_133_I(s, p, o, m) +# define BOOST_PP_FOR_134(s, p, o, m) BOOST_PP_FOR_134_I(s, p, o, m) +# define BOOST_PP_FOR_135(s, p, o, m) BOOST_PP_FOR_135_I(s, p, o, m) +# define BOOST_PP_FOR_136(s, p, o, m) BOOST_PP_FOR_136_I(s, p, o, m) +# define BOOST_PP_FOR_137(s, p, o, m) BOOST_PP_FOR_137_I(s, p, o, m) +# define BOOST_PP_FOR_138(s, p, o, m) BOOST_PP_FOR_138_I(s, p, o, m) +# define BOOST_PP_FOR_139(s, p, o, m) BOOST_PP_FOR_139_I(s, p, o, m) +# define BOOST_PP_FOR_140(s, p, o, m) BOOST_PP_FOR_140_I(s, p, o, m) +# define BOOST_PP_FOR_141(s, p, o, m) BOOST_PP_FOR_141_I(s, p, o, m) +# define BOOST_PP_FOR_142(s, p, o, m) BOOST_PP_FOR_142_I(s, p, o, m) +# define BOOST_PP_FOR_143(s, p, o, m) BOOST_PP_FOR_143_I(s, p, o, m) +# define BOOST_PP_FOR_144(s, p, o, m) BOOST_PP_FOR_144_I(s, p, o, m) +# define BOOST_PP_FOR_145(s, p, o, m) BOOST_PP_FOR_145_I(s, p, o, m) +# define BOOST_PP_FOR_146(s, p, o, m) BOOST_PP_FOR_146_I(s, p, o, m) +# define BOOST_PP_FOR_147(s, p, o, m) BOOST_PP_FOR_147_I(s, p, o, m) +# define BOOST_PP_FOR_148(s, p, o, m) BOOST_PP_FOR_148_I(s, p, o, m) +# define BOOST_PP_FOR_149(s, p, o, m) BOOST_PP_FOR_149_I(s, p, o, m) +# define BOOST_PP_FOR_150(s, p, o, m) BOOST_PP_FOR_150_I(s, p, o, m) +# define BOOST_PP_FOR_151(s, p, o, m) BOOST_PP_FOR_151_I(s, p, o, m) +# define BOOST_PP_FOR_152(s, p, o, m) BOOST_PP_FOR_152_I(s, p, o, m) +# define BOOST_PP_FOR_153(s, p, o, m) BOOST_PP_FOR_153_I(s, p, o, m) +# define BOOST_PP_FOR_154(s, p, o, m) BOOST_PP_FOR_154_I(s, p, o, m) +# define BOOST_PP_FOR_155(s, p, o, m) BOOST_PP_FOR_155_I(s, p, o, m) +# define BOOST_PP_FOR_156(s, p, o, m) BOOST_PP_FOR_156_I(s, p, o, m) +# define BOOST_PP_FOR_157(s, p, o, m) BOOST_PP_FOR_157_I(s, p, o, m) +# define BOOST_PP_FOR_158(s, p, o, m) BOOST_PP_FOR_158_I(s, p, o, m) +# define BOOST_PP_FOR_159(s, p, o, m) BOOST_PP_FOR_159_I(s, p, o, m) +# define BOOST_PP_FOR_160(s, p, o, m) BOOST_PP_FOR_160_I(s, p, o, m) +# define BOOST_PP_FOR_161(s, p, o, m) BOOST_PP_FOR_161_I(s, p, o, m) +# define BOOST_PP_FOR_162(s, p, o, m) BOOST_PP_FOR_162_I(s, p, o, m) +# define BOOST_PP_FOR_163(s, p, o, m) BOOST_PP_FOR_163_I(s, p, o, m) +# define BOOST_PP_FOR_164(s, p, o, m) BOOST_PP_FOR_164_I(s, p, o, m) +# define BOOST_PP_FOR_165(s, p, o, m) BOOST_PP_FOR_165_I(s, p, o, m) +# define BOOST_PP_FOR_166(s, p, o, m) BOOST_PP_FOR_166_I(s, p, o, m) +# define BOOST_PP_FOR_167(s, p, o, m) BOOST_PP_FOR_167_I(s, p, o, m) +# define BOOST_PP_FOR_168(s, p, o, m) BOOST_PP_FOR_168_I(s, p, o, m) +# define BOOST_PP_FOR_169(s, p, o, m) BOOST_PP_FOR_169_I(s, p, o, m) +# define BOOST_PP_FOR_170(s, p, o, m) BOOST_PP_FOR_170_I(s, p, o, m) +# define BOOST_PP_FOR_171(s, p, o, m) BOOST_PP_FOR_171_I(s, p, o, m) +# define BOOST_PP_FOR_172(s, p, o, m) BOOST_PP_FOR_172_I(s, p, o, m) +# define BOOST_PP_FOR_173(s, p, o, m) BOOST_PP_FOR_173_I(s, p, o, m) +# define BOOST_PP_FOR_174(s, p, o, m) BOOST_PP_FOR_174_I(s, p, o, m) +# define BOOST_PP_FOR_175(s, p, o, m) BOOST_PP_FOR_175_I(s, p, o, m) +# define BOOST_PP_FOR_176(s, p, o, m) BOOST_PP_FOR_176_I(s, p, o, m) +# define BOOST_PP_FOR_177(s, p, o, m) BOOST_PP_FOR_177_I(s, p, o, m) +# define BOOST_PP_FOR_178(s, p, o, m) BOOST_PP_FOR_178_I(s, p, o, m) +# define BOOST_PP_FOR_179(s, p, o, m) BOOST_PP_FOR_179_I(s, p, o, m) +# define BOOST_PP_FOR_180(s, p, o, m) BOOST_PP_FOR_180_I(s, p, o, m) +# define BOOST_PP_FOR_181(s, p, o, m) BOOST_PP_FOR_181_I(s, p, o, m) +# define BOOST_PP_FOR_182(s, p, o, m) BOOST_PP_FOR_182_I(s, p, o, m) +# define BOOST_PP_FOR_183(s, p, o, m) BOOST_PP_FOR_183_I(s, p, o, m) +# define BOOST_PP_FOR_184(s, p, o, m) BOOST_PP_FOR_184_I(s, p, o, m) +# define BOOST_PP_FOR_185(s, p, o, m) BOOST_PP_FOR_185_I(s, p, o, m) +# define BOOST_PP_FOR_186(s, p, o, m) BOOST_PP_FOR_186_I(s, p, o, m) +# define BOOST_PP_FOR_187(s, p, o, m) BOOST_PP_FOR_187_I(s, p, o, m) +# define BOOST_PP_FOR_188(s, p, o, m) BOOST_PP_FOR_188_I(s, p, o, m) +# define BOOST_PP_FOR_189(s, p, o, m) BOOST_PP_FOR_189_I(s, p, o, m) +# define BOOST_PP_FOR_190(s, p, o, m) BOOST_PP_FOR_190_I(s, p, o, m) +# define BOOST_PP_FOR_191(s, p, o, m) BOOST_PP_FOR_191_I(s, p, o, m) +# define BOOST_PP_FOR_192(s, p, o, m) BOOST_PP_FOR_192_I(s, p, o, m) +# define BOOST_PP_FOR_193(s, p, o, m) BOOST_PP_FOR_193_I(s, p, o, m) +# define BOOST_PP_FOR_194(s, p, o, m) BOOST_PP_FOR_194_I(s, p, o, m) +# define BOOST_PP_FOR_195(s, p, o, m) BOOST_PP_FOR_195_I(s, p, o, m) +# define BOOST_PP_FOR_196(s, p, o, m) BOOST_PP_FOR_196_I(s, p, o, m) +# define BOOST_PP_FOR_197(s, p, o, m) BOOST_PP_FOR_197_I(s, p, o, m) +# define BOOST_PP_FOR_198(s, p, o, m) BOOST_PP_FOR_198_I(s, p, o, m) +# define BOOST_PP_FOR_199(s, p, o, m) BOOST_PP_FOR_199_I(s, p, o, m) +# define BOOST_PP_FOR_200(s, p, o, m) BOOST_PP_FOR_200_I(s, p, o, m) +# define BOOST_PP_FOR_201(s, p, o, m) BOOST_PP_FOR_201_I(s, p, o, m) +# define BOOST_PP_FOR_202(s, p, o, m) BOOST_PP_FOR_202_I(s, p, o, m) +# define BOOST_PP_FOR_203(s, p, o, m) BOOST_PP_FOR_203_I(s, p, o, m) +# define BOOST_PP_FOR_204(s, p, o, m) BOOST_PP_FOR_204_I(s, p, o, m) +# define BOOST_PP_FOR_205(s, p, o, m) BOOST_PP_FOR_205_I(s, p, o, m) +# define BOOST_PP_FOR_206(s, p, o, m) BOOST_PP_FOR_206_I(s, p, o, m) +# define BOOST_PP_FOR_207(s, p, o, m) BOOST_PP_FOR_207_I(s, p, o, m) +# define BOOST_PP_FOR_208(s, p, o, m) BOOST_PP_FOR_208_I(s, p, o, m) +# define BOOST_PP_FOR_209(s, p, o, m) BOOST_PP_FOR_209_I(s, p, o, m) +# define BOOST_PP_FOR_210(s, p, o, m) BOOST_PP_FOR_210_I(s, p, o, m) +# define BOOST_PP_FOR_211(s, p, o, m) BOOST_PP_FOR_211_I(s, p, o, m) +# define BOOST_PP_FOR_212(s, p, o, m) BOOST_PP_FOR_212_I(s, p, o, m) +# define BOOST_PP_FOR_213(s, p, o, m) BOOST_PP_FOR_213_I(s, p, o, m) +# define BOOST_PP_FOR_214(s, p, o, m) BOOST_PP_FOR_214_I(s, p, o, m) +# define BOOST_PP_FOR_215(s, p, o, m) BOOST_PP_FOR_215_I(s, p, o, m) +# define BOOST_PP_FOR_216(s, p, o, m) BOOST_PP_FOR_216_I(s, p, o, m) +# define BOOST_PP_FOR_217(s, p, o, m) BOOST_PP_FOR_217_I(s, p, o, m) +# define BOOST_PP_FOR_218(s, p, o, m) BOOST_PP_FOR_218_I(s, p, o, m) +# define BOOST_PP_FOR_219(s, p, o, m) BOOST_PP_FOR_219_I(s, p, o, m) +# define BOOST_PP_FOR_220(s, p, o, m) BOOST_PP_FOR_220_I(s, p, o, m) +# define BOOST_PP_FOR_221(s, p, o, m) BOOST_PP_FOR_221_I(s, p, o, m) +# define BOOST_PP_FOR_222(s, p, o, m) BOOST_PP_FOR_222_I(s, p, o, m) +# define BOOST_PP_FOR_223(s, p, o, m) BOOST_PP_FOR_223_I(s, p, o, m) +# define BOOST_PP_FOR_224(s, p, o, m) BOOST_PP_FOR_224_I(s, p, o, m) +# define BOOST_PP_FOR_225(s, p, o, m) BOOST_PP_FOR_225_I(s, p, o, m) +# define BOOST_PP_FOR_226(s, p, o, m) BOOST_PP_FOR_226_I(s, p, o, m) +# define BOOST_PP_FOR_227(s, p, o, m) BOOST_PP_FOR_227_I(s, p, o, m) +# define BOOST_PP_FOR_228(s, p, o, m) BOOST_PP_FOR_228_I(s, p, o, m) +# define BOOST_PP_FOR_229(s, p, o, m) BOOST_PP_FOR_229_I(s, p, o, m) +# define BOOST_PP_FOR_230(s, p, o, m) BOOST_PP_FOR_230_I(s, p, o, m) +# define BOOST_PP_FOR_231(s, p, o, m) BOOST_PP_FOR_231_I(s, p, o, m) +# define BOOST_PP_FOR_232(s, p, o, m) BOOST_PP_FOR_232_I(s, p, o, m) +# define BOOST_PP_FOR_233(s, p, o, m) BOOST_PP_FOR_233_I(s, p, o, m) +# define BOOST_PP_FOR_234(s, p, o, m) BOOST_PP_FOR_234_I(s, p, o, m) +# define BOOST_PP_FOR_235(s, p, o, m) BOOST_PP_FOR_235_I(s, p, o, m) +# define BOOST_PP_FOR_236(s, p, o, m) BOOST_PP_FOR_236_I(s, p, o, m) +# define BOOST_PP_FOR_237(s, p, o, m) BOOST_PP_FOR_237_I(s, p, o, m) +# define BOOST_PP_FOR_238(s, p, o, m) BOOST_PP_FOR_238_I(s, p, o, m) +# define BOOST_PP_FOR_239(s, p, o, m) BOOST_PP_FOR_239_I(s, p, o, m) +# define BOOST_PP_FOR_240(s, p, o, m) BOOST_PP_FOR_240_I(s, p, o, m) +# define BOOST_PP_FOR_241(s, p, o, m) BOOST_PP_FOR_241_I(s, p, o, m) +# define BOOST_PP_FOR_242(s, p, o, m) BOOST_PP_FOR_242_I(s, p, o, m) +# define BOOST_PP_FOR_243(s, p, o, m) BOOST_PP_FOR_243_I(s, p, o, m) +# define BOOST_PP_FOR_244(s, p, o, m) BOOST_PP_FOR_244_I(s, p, o, m) +# define BOOST_PP_FOR_245(s, p, o, m) BOOST_PP_FOR_245_I(s, p, o, m) +# define BOOST_PP_FOR_246(s, p, o, m) BOOST_PP_FOR_246_I(s, p, o, m) +# define BOOST_PP_FOR_247(s, p, o, m) BOOST_PP_FOR_247_I(s, p, o, m) +# define BOOST_PP_FOR_248(s, p, o, m) BOOST_PP_FOR_248_I(s, p, o, m) +# define BOOST_PP_FOR_249(s, p, o, m) BOOST_PP_FOR_249_I(s, p, o, m) +# define BOOST_PP_FOR_250(s, p, o, m) BOOST_PP_FOR_250_I(s, p, o, m) +# define BOOST_PP_FOR_251(s, p, o, m) BOOST_PP_FOR_251_I(s, p, o, m) +# define BOOST_PP_FOR_252(s, p, o, m) BOOST_PP_FOR_252_I(s, p, o, m) +# define BOOST_PP_FOR_253(s, p, o, m) BOOST_PP_FOR_253_I(s, p, o, m) +# define BOOST_PP_FOR_254(s, p, o, m) BOOST_PP_FOR_254_I(s, p, o, m) +# define BOOST_PP_FOR_255(s, p, o, m) BOOST_PP_FOR_255_I(s, p, o, m) +# define BOOST_PP_FOR_256(s, p, o, m) BOOST_PP_FOR_256_I(s, p, o, m) +# +# define BOOST_PP_FOR_1_I(s, p, o, m) BOOST_PP_IF(p(2, s), m, BOOST_PP_TUPLE_EAT_2)(2, s) BOOST_PP_IF(p(2, s), BOOST_PP_FOR_2, BOOST_PP_TUPLE_EAT_4)(o(2, s), p, o, m) +# define BOOST_PP_FOR_2_I(s, p, o, m) BOOST_PP_IF(p(3, s), m, BOOST_PP_TUPLE_EAT_2)(3, s) BOOST_PP_IF(p(3, s), BOOST_PP_FOR_3, BOOST_PP_TUPLE_EAT_4)(o(3, s), p, o, m) +# define BOOST_PP_FOR_3_I(s, p, o, m) BOOST_PP_IF(p(4, s), m, BOOST_PP_TUPLE_EAT_2)(4, s) BOOST_PP_IF(p(4, s), BOOST_PP_FOR_4, BOOST_PP_TUPLE_EAT_4)(o(4, s), p, o, m) +# define BOOST_PP_FOR_4_I(s, p, o, m) BOOST_PP_IF(p(5, s), m, BOOST_PP_TUPLE_EAT_2)(5, s) BOOST_PP_IF(p(5, s), BOOST_PP_FOR_5, BOOST_PP_TUPLE_EAT_4)(o(5, s), p, o, m) +# define BOOST_PP_FOR_5_I(s, p, o, m) BOOST_PP_IF(p(6, s), m, BOOST_PP_TUPLE_EAT_2)(6, s) BOOST_PP_IF(p(6, s), BOOST_PP_FOR_6, BOOST_PP_TUPLE_EAT_4)(o(6, s), p, o, m) +# define BOOST_PP_FOR_6_I(s, p, o, m) BOOST_PP_IF(p(7, s), m, BOOST_PP_TUPLE_EAT_2)(7, s) BOOST_PP_IF(p(7, s), BOOST_PP_FOR_7, BOOST_PP_TUPLE_EAT_4)(o(7, s), p, o, m) +# define BOOST_PP_FOR_7_I(s, p, o, m) BOOST_PP_IF(p(8, s), m, BOOST_PP_TUPLE_EAT_2)(8, s) BOOST_PP_IF(p(8, s), BOOST_PP_FOR_8, BOOST_PP_TUPLE_EAT_4)(o(8, s), p, o, m) +# define BOOST_PP_FOR_8_I(s, p, o, m) BOOST_PP_IF(p(9, s), m, BOOST_PP_TUPLE_EAT_2)(9, s) BOOST_PP_IF(p(9, s), BOOST_PP_FOR_9, BOOST_PP_TUPLE_EAT_4)(o(9, s), p, o, m) +# define BOOST_PP_FOR_9_I(s, p, o, m) BOOST_PP_IF(p(10, s), m, BOOST_PP_TUPLE_EAT_2)(10, s) BOOST_PP_IF(p(10, s), BOOST_PP_FOR_10, BOOST_PP_TUPLE_EAT_4)(o(10, s), p, o, m) +# define BOOST_PP_FOR_10_I(s, p, o, m) BOOST_PP_IF(p(11, s), m, BOOST_PP_TUPLE_EAT_2)(11, s) BOOST_PP_IF(p(11, s), BOOST_PP_FOR_11, BOOST_PP_TUPLE_EAT_4)(o(11, s), p, o, m) +# define BOOST_PP_FOR_11_I(s, p, o, m) BOOST_PP_IF(p(12, s), m, BOOST_PP_TUPLE_EAT_2)(12, s) BOOST_PP_IF(p(12, s), BOOST_PP_FOR_12, BOOST_PP_TUPLE_EAT_4)(o(12, s), p, o, m) +# define BOOST_PP_FOR_12_I(s, p, o, m) BOOST_PP_IF(p(13, s), m, BOOST_PP_TUPLE_EAT_2)(13, s) BOOST_PP_IF(p(13, s), BOOST_PP_FOR_13, BOOST_PP_TUPLE_EAT_4)(o(13, s), p, o, m) +# define BOOST_PP_FOR_13_I(s, p, o, m) BOOST_PP_IF(p(14, s), m, BOOST_PP_TUPLE_EAT_2)(14, s) BOOST_PP_IF(p(14, s), BOOST_PP_FOR_14, BOOST_PP_TUPLE_EAT_4)(o(14, s), p, o, m) +# define BOOST_PP_FOR_14_I(s, p, o, m) BOOST_PP_IF(p(15, s), m, BOOST_PP_TUPLE_EAT_2)(15, s) BOOST_PP_IF(p(15, s), BOOST_PP_FOR_15, BOOST_PP_TUPLE_EAT_4)(o(15, s), p, o, m) +# define BOOST_PP_FOR_15_I(s, p, o, m) BOOST_PP_IF(p(16, s), m, BOOST_PP_TUPLE_EAT_2)(16, s) BOOST_PP_IF(p(16, s), BOOST_PP_FOR_16, BOOST_PP_TUPLE_EAT_4)(o(16, s), p, o, m) +# define BOOST_PP_FOR_16_I(s, p, o, m) BOOST_PP_IF(p(17, s), m, BOOST_PP_TUPLE_EAT_2)(17, s) BOOST_PP_IF(p(17, s), BOOST_PP_FOR_17, BOOST_PP_TUPLE_EAT_4)(o(17, s), p, o, m) +# define BOOST_PP_FOR_17_I(s, p, o, m) BOOST_PP_IF(p(18, s), m, BOOST_PP_TUPLE_EAT_2)(18, s) BOOST_PP_IF(p(18, s), BOOST_PP_FOR_18, BOOST_PP_TUPLE_EAT_4)(o(18, s), p, o, m) +# define BOOST_PP_FOR_18_I(s, p, o, m) BOOST_PP_IF(p(19, s), m, BOOST_PP_TUPLE_EAT_2)(19, s) BOOST_PP_IF(p(19, s), BOOST_PP_FOR_19, BOOST_PP_TUPLE_EAT_4)(o(19, s), p, o, m) +# define BOOST_PP_FOR_19_I(s, p, o, m) BOOST_PP_IF(p(20, s), m, BOOST_PP_TUPLE_EAT_2)(20, s) BOOST_PP_IF(p(20, s), BOOST_PP_FOR_20, BOOST_PP_TUPLE_EAT_4)(o(20, s), p, o, m) +# define BOOST_PP_FOR_20_I(s, p, o, m) BOOST_PP_IF(p(21, s), m, BOOST_PP_TUPLE_EAT_2)(21, s) BOOST_PP_IF(p(21, s), BOOST_PP_FOR_21, BOOST_PP_TUPLE_EAT_4)(o(21, s), p, o, m) +# define BOOST_PP_FOR_21_I(s, p, o, m) BOOST_PP_IF(p(22, s), m, BOOST_PP_TUPLE_EAT_2)(22, s) BOOST_PP_IF(p(22, s), BOOST_PP_FOR_22, BOOST_PP_TUPLE_EAT_4)(o(22, s), p, o, m) +# define BOOST_PP_FOR_22_I(s, p, o, m) BOOST_PP_IF(p(23, s), m, BOOST_PP_TUPLE_EAT_2)(23, s) BOOST_PP_IF(p(23, s), BOOST_PP_FOR_23, BOOST_PP_TUPLE_EAT_4)(o(23, s), p, o, m) +# define BOOST_PP_FOR_23_I(s, p, o, m) BOOST_PP_IF(p(24, s), m, BOOST_PP_TUPLE_EAT_2)(24, s) BOOST_PP_IF(p(24, s), BOOST_PP_FOR_24, BOOST_PP_TUPLE_EAT_4)(o(24, s), p, o, m) +# define BOOST_PP_FOR_24_I(s, p, o, m) BOOST_PP_IF(p(25, s), m, BOOST_PP_TUPLE_EAT_2)(25, s) BOOST_PP_IF(p(25, s), BOOST_PP_FOR_25, BOOST_PP_TUPLE_EAT_4)(o(25, s), p, o, m) +# define BOOST_PP_FOR_25_I(s, p, o, m) BOOST_PP_IF(p(26, s), m, BOOST_PP_TUPLE_EAT_2)(26, s) BOOST_PP_IF(p(26, s), BOOST_PP_FOR_26, BOOST_PP_TUPLE_EAT_4)(o(26, s), p, o, m) +# define BOOST_PP_FOR_26_I(s, p, o, m) BOOST_PP_IF(p(27, s), m, BOOST_PP_TUPLE_EAT_2)(27, s) BOOST_PP_IF(p(27, s), BOOST_PP_FOR_27, BOOST_PP_TUPLE_EAT_4)(o(27, s), p, o, m) +# define BOOST_PP_FOR_27_I(s, p, o, m) BOOST_PP_IF(p(28, s), m, BOOST_PP_TUPLE_EAT_2)(28, s) BOOST_PP_IF(p(28, s), BOOST_PP_FOR_28, BOOST_PP_TUPLE_EAT_4)(o(28, s), p, o, m) +# define BOOST_PP_FOR_28_I(s, p, o, m) BOOST_PP_IF(p(29, s), m, BOOST_PP_TUPLE_EAT_2)(29, s) BOOST_PP_IF(p(29, s), BOOST_PP_FOR_29, BOOST_PP_TUPLE_EAT_4)(o(29, s), p, o, m) +# define BOOST_PP_FOR_29_I(s, p, o, m) BOOST_PP_IF(p(30, s), m, BOOST_PP_TUPLE_EAT_2)(30, s) BOOST_PP_IF(p(30, s), BOOST_PP_FOR_30, BOOST_PP_TUPLE_EAT_4)(o(30, s), p, o, m) +# define BOOST_PP_FOR_30_I(s, p, o, m) BOOST_PP_IF(p(31, s), m, BOOST_PP_TUPLE_EAT_2)(31, s) BOOST_PP_IF(p(31, s), BOOST_PP_FOR_31, BOOST_PP_TUPLE_EAT_4)(o(31, s), p, o, m) +# define BOOST_PP_FOR_31_I(s, p, o, m) BOOST_PP_IF(p(32, s), m, BOOST_PP_TUPLE_EAT_2)(32, s) BOOST_PP_IF(p(32, s), BOOST_PP_FOR_32, BOOST_PP_TUPLE_EAT_4)(o(32, s), p, o, m) +# define BOOST_PP_FOR_32_I(s, p, o, m) BOOST_PP_IF(p(33, s), m, BOOST_PP_TUPLE_EAT_2)(33, s) BOOST_PP_IF(p(33, s), BOOST_PP_FOR_33, BOOST_PP_TUPLE_EAT_4)(o(33, s), p, o, m) +# define BOOST_PP_FOR_33_I(s, p, o, m) BOOST_PP_IF(p(34, s), m, BOOST_PP_TUPLE_EAT_2)(34, s) BOOST_PP_IF(p(34, s), BOOST_PP_FOR_34, BOOST_PP_TUPLE_EAT_4)(o(34, s), p, o, m) +# define BOOST_PP_FOR_34_I(s, p, o, m) BOOST_PP_IF(p(35, s), m, BOOST_PP_TUPLE_EAT_2)(35, s) BOOST_PP_IF(p(35, s), BOOST_PP_FOR_35, BOOST_PP_TUPLE_EAT_4)(o(35, s), p, o, m) +# define BOOST_PP_FOR_35_I(s, p, o, m) BOOST_PP_IF(p(36, s), m, BOOST_PP_TUPLE_EAT_2)(36, s) BOOST_PP_IF(p(36, s), BOOST_PP_FOR_36, BOOST_PP_TUPLE_EAT_4)(o(36, s), p, o, m) +# define BOOST_PP_FOR_36_I(s, p, o, m) BOOST_PP_IF(p(37, s), m, BOOST_PP_TUPLE_EAT_2)(37, s) BOOST_PP_IF(p(37, s), BOOST_PP_FOR_37, BOOST_PP_TUPLE_EAT_4)(o(37, s), p, o, m) +# define BOOST_PP_FOR_37_I(s, p, o, m) BOOST_PP_IF(p(38, s), m, BOOST_PP_TUPLE_EAT_2)(38, s) BOOST_PP_IF(p(38, s), BOOST_PP_FOR_38, BOOST_PP_TUPLE_EAT_4)(o(38, s), p, o, m) +# define BOOST_PP_FOR_38_I(s, p, o, m) BOOST_PP_IF(p(39, s), m, BOOST_PP_TUPLE_EAT_2)(39, s) BOOST_PP_IF(p(39, s), BOOST_PP_FOR_39, BOOST_PP_TUPLE_EAT_4)(o(39, s), p, o, m) +# define BOOST_PP_FOR_39_I(s, p, o, m) BOOST_PP_IF(p(40, s), m, BOOST_PP_TUPLE_EAT_2)(40, s) BOOST_PP_IF(p(40, s), BOOST_PP_FOR_40, BOOST_PP_TUPLE_EAT_4)(o(40, s), p, o, m) +# define BOOST_PP_FOR_40_I(s, p, o, m) BOOST_PP_IF(p(41, s), m, BOOST_PP_TUPLE_EAT_2)(41, s) BOOST_PP_IF(p(41, s), BOOST_PP_FOR_41, BOOST_PP_TUPLE_EAT_4)(o(41, s), p, o, m) +# define BOOST_PP_FOR_41_I(s, p, o, m) BOOST_PP_IF(p(42, s), m, BOOST_PP_TUPLE_EAT_2)(42, s) BOOST_PP_IF(p(42, s), BOOST_PP_FOR_42, BOOST_PP_TUPLE_EAT_4)(o(42, s), p, o, m) +# define BOOST_PP_FOR_42_I(s, p, o, m) BOOST_PP_IF(p(43, s), m, BOOST_PP_TUPLE_EAT_2)(43, s) BOOST_PP_IF(p(43, s), BOOST_PP_FOR_43, BOOST_PP_TUPLE_EAT_4)(o(43, s), p, o, m) +# define BOOST_PP_FOR_43_I(s, p, o, m) BOOST_PP_IF(p(44, s), m, BOOST_PP_TUPLE_EAT_2)(44, s) BOOST_PP_IF(p(44, s), BOOST_PP_FOR_44, BOOST_PP_TUPLE_EAT_4)(o(44, s), p, o, m) +# define BOOST_PP_FOR_44_I(s, p, o, m) BOOST_PP_IF(p(45, s), m, BOOST_PP_TUPLE_EAT_2)(45, s) BOOST_PP_IF(p(45, s), BOOST_PP_FOR_45, BOOST_PP_TUPLE_EAT_4)(o(45, s), p, o, m) +# define BOOST_PP_FOR_45_I(s, p, o, m) BOOST_PP_IF(p(46, s), m, BOOST_PP_TUPLE_EAT_2)(46, s) BOOST_PP_IF(p(46, s), BOOST_PP_FOR_46, BOOST_PP_TUPLE_EAT_4)(o(46, s), p, o, m) +# define BOOST_PP_FOR_46_I(s, p, o, m) BOOST_PP_IF(p(47, s), m, BOOST_PP_TUPLE_EAT_2)(47, s) BOOST_PP_IF(p(47, s), BOOST_PP_FOR_47, BOOST_PP_TUPLE_EAT_4)(o(47, s), p, o, m) +# define BOOST_PP_FOR_47_I(s, p, o, m) BOOST_PP_IF(p(48, s), m, BOOST_PP_TUPLE_EAT_2)(48, s) BOOST_PP_IF(p(48, s), BOOST_PP_FOR_48, BOOST_PP_TUPLE_EAT_4)(o(48, s), p, o, m) +# define BOOST_PP_FOR_48_I(s, p, o, m) BOOST_PP_IF(p(49, s), m, BOOST_PP_TUPLE_EAT_2)(49, s) BOOST_PP_IF(p(49, s), BOOST_PP_FOR_49, BOOST_PP_TUPLE_EAT_4)(o(49, s), p, o, m) +# define BOOST_PP_FOR_49_I(s, p, o, m) BOOST_PP_IF(p(50, s), m, BOOST_PP_TUPLE_EAT_2)(50, s) BOOST_PP_IF(p(50, s), BOOST_PP_FOR_50, BOOST_PP_TUPLE_EAT_4)(o(50, s), p, o, m) +# define BOOST_PP_FOR_50_I(s, p, o, m) BOOST_PP_IF(p(51, s), m, BOOST_PP_TUPLE_EAT_2)(51, s) BOOST_PP_IF(p(51, s), BOOST_PP_FOR_51, BOOST_PP_TUPLE_EAT_4)(o(51, s), p, o, m) +# define BOOST_PP_FOR_51_I(s, p, o, m) BOOST_PP_IF(p(52, s), m, BOOST_PP_TUPLE_EAT_2)(52, s) BOOST_PP_IF(p(52, s), BOOST_PP_FOR_52, BOOST_PP_TUPLE_EAT_4)(o(52, s), p, o, m) +# define BOOST_PP_FOR_52_I(s, p, o, m) BOOST_PP_IF(p(53, s), m, BOOST_PP_TUPLE_EAT_2)(53, s) BOOST_PP_IF(p(53, s), BOOST_PP_FOR_53, BOOST_PP_TUPLE_EAT_4)(o(53, s), p, o, m) +# define BOOST_PP_FOR_53_I(s, p, o, m) BOOST_PP_IF(p(54, s), m, BOOST_PP_TUPLE_EAT_2)(54, s) BOOST_PP_IF(p(54, s), BOOST_PP_FOR_54, BOOST_PP_TUPLE_EAT_4)(o(54, s), p, o, m) +# define BOOST_PP_FOR_54_I(s, p, o, m) BOOST_PP_IF(p(55, s), m, BOOST_PP_TUPLE_EAT_2)(55, s) BOOST_PP_IF(p(55, s), BOOST_PP_FOR_55, BOOST_PP_TUPLE_EAT_4)(o(55, s), p, o, m) +# define BOOST_PP_FOR_55_I(s, p, o, m) BOOST_PP_IF(p(56, s), m, BOOST_PP_TUPLE_EAT_2)(56, s) BOOST_PP_IF(p(56, s), BOOST_PP_FOR_56, BOOST_PP_TUPLE_EAT_4)(o(56, s), p, o, m) +# define BOOST_PP_FOR_56_I(s, p, o, m) BOOST_PP_IF(p(57, s), m, BOOST_PP_TUPLE_EAT_2)(57, s) BOOST_PP_IF(p(57, s), BOOST_PP_FOR_57, BOOST_PP_TUPLE_EAT_4)(o(57, s), p, o, m) +# define BOOST_PP_FOR_57_I(s, p, o, m) BOOST_PP_IF(p(58, s), m, BOOST_PP_TUPLE_EAT_2)(58, s) BOOST_PP_IF(p(58, s), BOOST_PP_FOR_58, BOOST_PP_TUPLE_EAT_4)(o(58, s), p, o, m) +# define BOOST_PP_FOR_58_I(s, p, o, m) BOOST_PP_IF(p(59, s), m, BOOST_PP_TUPLE_EAT_2)(59, s) BOOST_PP_IF(p(59, s), BOOST_PP_FOR_59, BOOST_PP_TUPLE_EAT_4)(o(59, s), p, o, m) +# define BOOST_PP_FOR_59_I(s, p, o, m) BOOST_PP_IF(p(60, s), m, BOOST_PP_TUPLE_EAT_2)(60, s) BOOST_PP_IF(p(60, s), BOOST_PP_FOR_60, BOOST_PP_TUPLE_EAT_4)(o(60, s), p, o, m) +# define BOOST_PP_FOR_60_I(s, p, o, m) BOOST_PP_IF(p(61, s), m, BOOST_PP_TUPLE_EAT_2)(61, s) BOOST_PP_IF(p(61, s), BOOST_PP_FOR_61, BOOST_PP_TUPLE_EAT_4)(o(61, s), p, o, m) +# define BOOST_PP_FOR_61_I(s, p, o, m) BOOST_PP_IF(p(62, s), m, BOOST_PP_TUPLE_EAT_2)(62, s) BOOST_PP_IF(p(62, s), BOOST_PP_FOR_62, BOOST_PP_TUPLE_EAT_4)(o(62, s), p, o, m) +# define BOOST_PP_FOR_62_I(s, p, o, m) BOOST_PP_IF(p(63, s), m, BOOST_PP_TUPLE_EAT_2)(63, s) BOOST_PP_IF(p(63, s), BOOST_PP_FOR_63, BOOST_PP_TUPLE_EAT_4)(o(63, s), p, o, m) +# define BOOST_PP_FOR_63_I(s, p, o, m) BOOST_PP_IF(p(64, s), m, BOOST_PP_TUPLE_EAT_2)(64, s) BOOST_PP_IF(p(64, s), BOOST_PP_FOR_64, BOOST_PP_TUPLE_EAT_4)(o(64, s), p, o, m) +# define BOOST_PP_FOR_64_I(s, p, o, m) BOOST_PP_IF(p(65, s), m, BOOST_PP_TUPLE_EAT_2)(65, s) BOOST_PP_IF(p(65, s), BOOST_PP_FOR_65, BOOST_PP_TUPLE_EAT_4)(o(65, s), p, o, m) +# define BOOST_PP_FOR_65_I(s, p, o, m) BOOST_PP_IF(p(66, s), m, BOOST_PP_TUPLE_EAT_2)(66, s) BOOST_PP_IF(p(66, s), BOOST_PP_FOR_66, BOOST_PP_TUPLE_EAT_4)(o(66, s), p, o, m) +# define BOOST_PP_FOR_66_I(s, p, o, m) BOOST_PP_IF(p(67, s), m, BOOST_PP_TUPLE_EAT_2)(67, s) BOOST_PP_IF(p(67, s), BOOST_PP_FOR_67, BOOST_PP_TUPLE_EAT_4)(o(67, s), p, o, m) +# define BOOST_PP_FOR_67_I(s, p, o, m) BOOST_PP_IF(p(68, s), m, BOOST_PP_TUPLE_EAT_2)(68, s) BOOST_PP_IF(p(68, s), BOOST_PP_FOR_68, BOOST_PP_TUPLE_EAT_4)(o(68, s), p, o, m) +# define BOOST_PP_FOR_68_I(s, p, o, m) BOOST_PP_IF(p(69, s), m, BOOST_PP_TUPLE_EAT_2)(69, s) BOOST_PP_IF(p(69, s), BOOST_PP_FOR_69, BOOST_PP_TUPLE_EAT_4)(o(69, s), p, o, m) +# define BOOST_PP_FOR_69_I(s, p, o, m) BOOST_PP_IF(p(70, s), m, BOOST_PP_TUPLE_EAT_2)(70, s) BOOST_PP_IF(p(70, s), BOOST_PP_FOR_70, BOOST_PP_TUPLE_EAT_4)(o(70, s), p, o, m) +# define BOOST_PP_FOR_70_I(s, p, o, m) BOOST_PP_IF(p(71, s), m, BOOST_PP_TUPLE_EAT_2)(71, s) BOOST_PP_IF(p(71, s), BOOST_PP_FOR_71, BOOST_PP_TUPLE_EAT_4)(o(71, s), p, o, m) +# define BOOST_PP_FOR_71_I(s, p, o, m) BOOST_PP_IF(p(72, s), m, BOOST_PP_TUPLE_EAT_2)(72, s) BOOST_PP_IF(p(72, s), BOOST_PP_FOR_72, BOOST_PP_TUPLE_EAT_4)(o(72, s), p, o, m) +# define BOOST_PP_FOR_72_I(s, p, o, m) BOOST_PP_IF(p(73, s), m, BOOST_PP_TUPLE_EAT_2)(73, s) BOOST_PP_IF(p(73, s), BOOST_PP_FOR_73, BOOST_PP_TUPLE_EAT_4)(o(73, s), p, o, m) +# define BOOST_PP_FOR_73_I(s, p, o, m) BOOST_PP_IF(p(74, s), m, BOOST_PP_TUPLE_EAT_2)(74, s) BOOST_PP_IF(p(74, s), BOOST_PP_FOR_74, BOOST_PP_TUPLE_EAT_4)(o(74, s), p, o, m) +# define BOOST_PP_FOR_74_I(s, p, o, m) BOOST_PP_IF(p(75, s), m, BOOST_PP_TUPLE_EAT_2)(75, s) BOOST_PP_IF(p(75, s), BOOST_PP_FOR_75, BOOST_PP_TUPLE_EAT_4)(o(75, s), p, o, m) +# define BOOST_PP_FOR_75_I(s, p, o, m) BOOST_PP_IF(p(76, s), m, BOOST_PP_TUPLE_EAT_2)(76, s) BOOST_PP_IF(p(76, s), BOOST_PP_FOR_76, BOOST_PP_TUPLE_EAT_4)(o(76, s), p, o, m) +# define BOOST_PP_FOR_76_I(s, p, o, m) BOOST_PP_IF(p(77, s), m, BOOST_PP_TUPLE_EAT_2)(77, s) BOOST_PP_IF(p(77, s), BOOST_PP_FOR_77, BOOST_PP_TUPLE_EAT_4)(o(77, s), p, o, m) +# define BOOST_PP_FOR_77_I(s, p, o, m) BOOST_PP_IF(p(78, s), m, BOOST_PP_TUPLE_EAT_2)(78, s) BOOST_PP_IF(p(78, s), BOOST_PP_FOR_78, BOOST_PP_TUPLE_EAT_4)(o(78, s), p, o, m) +# define BOOST_PP_FOR_78_I(s, p, o, m) BOOST_PP_IF(p(79, s), m, BOOST_PP_TUPLE_EAT_2)(79, s) BOOST_PP_IF(p(79, s), BOOST_PP_FOR_79, BOOST_PP_TUPLE_EAT_4)(o(79, s), p, o, m) +# define BOOST_PP_FOR_79_I(s, p, o, m) BOOST_PP_IF(p(80, s), m, BOOST_PP_TUPLE_EAT_2)(80, s) BOOST_PP_IF(p(80, s), BOOST_PP_FOR_80, BOOST_PP_TUPLE_EAT_4)(o(80, s), p, o, m) +# define BOOST_PP_FOR_80_I(s, p, o, m) BOOST_PP_IF(p(81, s), m, BOOST_PP_TUPLE_EAT_2)(81, s) BOOST_PP_IF(p(81, s), BOOST_PP_FOR_81, BOOST_PP_TUPLE_EAT_4)(o(81, s), p, o, m) +# define BOOST_PP_FOR_81_I(s, p, o, m) BOOST_PP_IF(p(82, s), m, BOOST_PP_TUPLE_EAT_2)(82, s) BOOST_PP_IF(p(82, s), BOOST_PP_FOR_82, BOOST_PP_TUPLE_EAT_4)(o(82, s), p, o, m) +# define BOOST_PP_FOR_82_I(s, p, o, m) BOOST_PP_IF(p(83, s), m, BOOST_PP_TUPLE_EAT_2)(83, s) BOOST_PP_IF(p(83, s), BOOST_PP_FOR_83, BOOST_PP_TUPLE_EAT_4)(o(83, s), p, o, m) +# define BOOST_PP_FOR_83_I(s, p, o, m) BOOST_PP_IF(p(84, s), m, BOOST_PP_TUPLE_EAT_2)(84, s) BOOST_PP_IF(p(84, s), BOOST_PP_FOR_84, BOOST_PP_TUPLE_EAT_4)(o(84, s), p, o, m) +# define BOOST_PP_FOR_84_I(s, p, o, m) BOOST_PP_IF(p(85, s), m, BOOST_PP_TUPLE_EAT_2)(85, s) BOOST_PP_IF(p(85, s), BOOST_PP_FOR_85, BOOST_PP_TUPLE_EAT_4)(o(85, s), p, o, m) +# define BOOST_PP_FOR_85_I(s, p, o, m) BOOST_PP_IF(p(86, s), m, BOOST_PP_TUPLE_EAT_2)(86, s) BOOST_PP_IF(p(86, s), BOOST_PP_FOR_86, BOOST_PP_TUPLE_EAT_4)(o(86, s), p, o, m) +# define BOOST_PP_FOR_86_I(s, p, o, m) BOOST_PP_IF(p(87, s), m, BOOST_PP_TUPLE_EAT_2)(87, s) BOOST_PP_IF(p(87, s), BOOST_PP_FOR_87, BOOST_PP_TUPLE_EAT_4)(o(87, s), p, o, m) +# define BOOST_PP_FOR_87_I(s, p, o, m) BOOST_PP_IF(p(88, s), m, BOOST_PP_TUPLE_EAT_2)(88, s) BOOST_PP_IF(p(88, s), BOOST_PP_FOR_88, BOOST_PP_TUPLE_EAT_4)(o(88, s), p, o, m) +# define BOOST_PP_FOR_88_I(s, p, o, m) BOOST_PP_IF(p(89, s), m, BOOST_PP_TUPLE_EAT_2)(89, s) BOOST_PP_IF(p(89, s), BOOST_PP_FOR_89, BOOST_PP_TUPLE_EAT_4)(o(89, s), p, o, m) +# define BOOST_PP_FOR_89_I(s, p, o, m) BOOST_PP_IF(p(90, s), m, BOOST_PP_TUPLE_EAT_2)(90, s) BOOST_PP_IF(p(90, s), BOOST_PP_FOR_90, BOOST_PP_TUPLE_EAT_4)(o(90, s), p, o, m) +# define BOOST_PP_FOR_90_I(s, p, o, m) BOOST_PP_IF(p(91, s), m, BOOST_PP_TUPLE_EAT_2)(91, s) BOOST_PP_IF(p(91, s), BOOST_PP_FOR_91, BOOST_PP_TUPLE_EAT_4)(o(91, s), p, o, m) +# define BOOST_PP_FOR_91_I(s, p, o, m) BOOST_PP_IF(p(92, s), m, BOOST_PP_TUPLE_EAT_2)(92, s) BOOST_PP_IF(p(92, s), BOOST_PP_FOR_92, BOOST_PP_TUPLE_EAT_4)(o(92, s), p, o, m) +# define BOOST_PP_FOR_92_I(s, p, o, m) BOOST_PP_IF(p(93, s), m, BOOST_PP_TUPLE_EAT_2)(93, s) BOOST_PP_IF(p(93, s), BOOST_PP_FOR_93, BOOST_PP_TUPLE_EAT_4)(o(93, s), p, o, m) +# define BOOST_PP_FOR_93_I(s, p, o, m) BOOST_PP_IF(p(94, s), m, BOOST_PP_TUPLE_EAT_2)(94, s) BOOST_PP_IF(p(94, s), BOOST_PP_FOR_94, BOOST_PP_TUPLE_EAT_4)(o(94, s), p, o, m) +# define BOOST_PP_FOR_94_I(s, p, o, m) BOOST_PP_IF(p(95, s), m, BOOST_PP_TUPLE_EAT_2)(95, s) BOOST_PP_IF(p(95, s), BOOST_PP_FOR_95, BOOST_PP_TUPLE_EAT_4)(o(95, s), p, o, m) +# define BOOST_PP_FOR_95_I(s, p, o, m) BOOST_PP_IF(p(96, s), m, BOOST_PP_TUPLE_EAT_2)(96, s) BOOST_PP_IF(p(96, s), BOOST_PP_FOR_96, BOOST_PP_TUPLE_EAT_4)(o(96, s), p, o, m) +# define BOOST_PP_FOR_96_I(s, p, o, m) BOOST_PP_IF(p(97, s), m, BOOST_PP_TUPLE_EAT_2)(97, s) BOOST_PP_IF(p(97, s), BOOST_PP_FOR_97, BOOST_PP_TUPLE_EAT_4)(o(97, s), p, o, m) +# define BOOST_PP_FOR_97_I(s, p, o, m) BOOST_PP_IF(p(98, s), m, BOOST_PP_TUPLE_EAT_2)(98, s) BOOST_PP_IF(p(98, s), BOOST_PP_FOR_98, BOOST_PP_TUPLE_EAT_4)(o(98, s), p, o, m) +# define BOOST_PP_FOR_98_I(s, p, o, m) BOOST_PP_IF(p(99, s), m, BOOST_PP_TUPLE_EAT_2)(99, s) BOOST_PP_IF(p(99, s), BOOST_PP_FOR_99, BOOST_PP_TUPLE_EAT_4)(o(99, s), p, o, m) +# define BOOST_PP_FOR_99_I(s, p, o, m) BOOST_PP_IF(p(100, s), m, BOOST_PP_TUPLE_EAT_2)(100, s) BOOST_PP_IF(p(100, s), BOOST_PP_FOR_100, BOOST_PP_TUPLE_EAT_4)(o(100, s), p, o, m) +# define BOOST_PP_FOR_100_I(s, p, o, m) BOOST_PP_IF(p(101, s), m, BOOST_PP_TUPLE_EAT_2)(101, s) BOOST_PP_IF(p(101, s), BOOST_PP_FOR_101, BOOST_PP_TUPLE_EAT_4)(o(101, s), p, o, m) +# define BOOST_PP_FOR_101_I(s, p, o, m) BOOST_PP_IF(p(102, s), m, BOOST_PP_TUPLE_EAT_2)(102, s) BOOST_PP_IF(p(102, s), BOOST_PP_FOR_102, BOOST_PP_TUPLE_EAT_4)(o(102, s), p, o, m) +# define BOOST_PP_FOR_102_I(s, p, o, m) BOOST_PP_IF(p(103, s), m, BOOST_PP_TUPLE_EAT_2)(103, s) BOOST_PP_IF(p(103, s), BOOST_PP_FOR_103, BOOST_PP_TUPLE_EAT_4)(o(103, s), p, o, m) +# define BOOST_PP_FOR_103_I(s, p, o, m) BOOST_PP_IF(p(104, s), m, BOOST_PP_TUPLE_EAT_2)(104, s) BOOST_PP_IF(p(104, s), BOOST_PP_FOR_104, BOOST_PP_TUPLE_EAT_4)(o(104, s), p, o, m) +# define BOOST_PP_FOR_104_I(s, p, o, m) BOOST_PP_IF(p(105, s), m, BOOST_PP_TUPLE_EAT_2)(105, s) BOOST_PP_IF(p(105, s), BOOST_PP_FOR_105, BOOST_PP_TUPLE_EAT_4)(o(105, s), p, o, m) +# define BOOST_PP_FOR_105_I(s, p, o, m) BOOST_PP_IF(p(106, s), m, BOOST_PP_TUPLE_EAT_2)(106, s) BOOST_PP_IF(p(106, s), BOOST_PP_FOR_106, BOOST_PP_TUPLE_EAT_4)(o(106, s), p, o, m) +# define BOOST_PP_FOR_106_I(s, p, o, m) BOOST_PP_IF(p(107, s), m, BOOST_PP_TUPLE_EAT_2)(107, s) BOOST_PP_IF(p(107, s), BOOST_PP_FOR_107, BOOST_PP_TUPLE_EAT_4)(o(107, s), p, o, m) +# define BOOST_PP_FOR_107_I(s, p, o, m) BOOST_PP_IF(p(108, s), m, BOOST_PP_TUPLE_EAT_2)(108, s) BOOST_PP_IF(p(108, s), BOOST_PP_FOR_108, BOOST_PP_TUPLE_EAT_4)(o(108, s), p, o, m) +# define BOOST_PP_FOR_108_I(s, p, o, m) BOOST_PP_IF(p(109, s), m, BOOST_PP_TUPLE_EAT_2)(109, s) BOOST_PP_IF(p(109, s), BOOST_PP_FOR_109, BOOST_PP_TUPLE_EAT_4)(o(109, s), p, o, m) +# define BOOST_PP_FOR_109_I(s, p, o, m) BOOST_PP_IF(p(110, s), m, BOOST_PP_TUPLE_EAT_2)(110, s) BOOST_PP_IF(p(110, s), BOOST_PP_FOR_110, BOOST_PP_TUPLE_EAT_4)(o(110, s), p, o, m) +# define BOOST_PP_FOR_110_I(s, p, o, m) BOOST_PP_IF(p(111, s), m, BOOST_PP_TUPLE_EAT_2)(111, s) BOOST_PP_IF(p(111, s), BOOST_PP_FOR_111, BOOST_PP_TUPLE_EAT_4)(o(111, s), p, o, m) +# define BOOST_PP_FOR_111_I(s, p, o, m) BOOST_PP_IF(p(112, s), m, BOOST_PP_TUPLE_EAT_2)(112, s) BOOST_PP_IF(p(112, s), BOOST_PP_FOR_112, BOOST_PP_TUPLE_EAT_4)(o(112, s), p, o, m) +# define BOOST_PP_FOR_112_I(s, p, o, m) BOOST_PP_IF(p(113, s), m, BOOST_PP_TUPLE_EAT_2)(113, s) BOOST_PP_IF(p(113, s), BOOST_PP_FOR_113, BOOST_PP_TUPLE_EAT_4)(o(113, s), p, o, m) +# define BOOST_PP_FOR_113_I(s, p, o, m) BOOST_PP_IF(p(114, s), m, BOOST_PP_TUPLE_EAT_2)(114, s) BOOST_PP_IF(p(114, s), BOOST_PP_FOR_114, BOOST_PP_TUPLE_EAT_4)(o(114, s), p, o, m) +# define BOOST_PP_FOR_114_I(s, p, o, m) BOOST_PP_IF(p(115, s), m, BOOST_PP_TUPLE_EAT_2)(115, s) BOOST_PP_IF(p(115, s), BOOST_PP_FOR_115, BOOST_PP_TUPLE_EAT_4)(o(115, s), p, o, m) +# define BOOST_PP_FOR_115_I(s, p, o, m) BOOST_PP_IF(p(116, s), m, BOOST_PP_TUPLE_EAT_2)(116, s) BOOST_PP_IF(p(116, s), BOOST_PP_FOR_116, BOOST_PP_TUPLE_EAT_4)(o(116, s), p, o, m) +# define BOOST_PP_FOR_116_I(s, p, o, m) BOOST_PP_IF(p(117, s), m, BOOST_PP_TUPLE_EAT_2)(117, s) BOOST_PP_IF(p(117, s), BOOST_PP_FOR_117, BOOST_PP_TUPLE_EAT_4)(o(117, s), p, o, m) +# define BOOST_PP_FOR_117_I(s, p, o, m) BOOST_PP_IF(p(118, s), m, BOOST_PP_TUPLE_EAT_2)(118, s) BOOST_PP_IF(p(118, s), BOOST_PP_FOR_118, BOOST_PP_TUPLE_EAT_4)(o(118, s), p, o, m) +# define BOOST_PP_FOR_118_I(s, p, o, m) BOOST_PP_IF(p(119, s), m, BOOST_PP_TUPLE_EAT_2)(119, s) BOOST_PP_IF(p(119, s), BOOST_PP_FOR_119, BOOST_PP_TUPLE_EAT_4)(o(119, s), p, o, m) +# define BOOST_PP_FOR_119_I(s, p, o, m) BOOST_PP_IF(p(120, s), m, BOOST_PP_TUPLE_EAT_2)(120, s) BOOST_PP_IF(p(120, s), BOOST_PP_FOR_120, BOOST_PP_TUPLE_EAT_4)(o(120, s), p, o, m) +# define BOOST_PP_FOR_120_I(s, p, o, m) BOOST_PP_IF(p(121, s), m, BOOST_PP_TUPLE_EAT_2)(121, s) BOOST_PP_IF(p(121, s), BOOST_PP_FOR_121, BOOST_PP_TUPLE_EAT_4)(o(121, s), p, o, m) +# define BOOST_PP_FOR_121_I(s, p, o, m) BOOST_PP_IF(p(122, s), m, BOOST_PP_TUPLE_EAT_2)(122, s) BOOST_PP_IF(p(122, s), BOOST_PP_FOR_122, BOOST_PP_TUPLE_EAT_4)(o(122, s), p, o, m) +# define BOOST_PP_FOR_122_I(s, p, o, m) BOOST_PP_IF(p(123, s), m, BOOST_PP_TUPLE_EAT_2)(123, s) BOOST_PP_IF(p(123, s), BOOST_PP_FOR_123, BOOST_PP_TUPLE_EAT_4)(o(123, s), p, o, m) +# define BOOST_PP_FOR_123_I(s, p, o, m) BOOST_PP_IF(p(124, s), m, BOOST_PP_TUPLE_EAT_2)(124, s) BOOST_PP_IF(p(124, s), BOOST_PP_FOR_124, BOOST_PP_TUPLE_EAT_4)(o(124, s), p, o, m) +# define BOOST_PP_FOR_124_I(s, p, o, m) BOOST_PP_IF(p(125, s), m, BOOST_PP_TUPLE_EAT_2)(125, s) BOOST_PP_IF(p(125, s), BOOST_PP_FOR_125, BOOST_PP_TUPLE_EAT_4)(o(125, s), p, o, m) +# define BOOST_PP_FOR_125_I(s, p, o, m) BOOST_PP_IF(p(126, s), m, BOOST_PP_TUPLE_EAT_2)(126, s) BOOST_PP_IF(p(126, s), BOOST_PP_FOR_126, BOOST_PP_TUPLE_EAT_4)(o(126, s), p, o, m) +# define BOOST_PP_FOR_126_I(s, p, o, m) BOOST_PP_IF(p(127, s), m, BOOST_PP_TUPLE_EAT_2)(127, s) BOOST_PP_IF(p(127, s), BOOST_PP_FOR_127, BOOST_PP_TUPLE_EAT_4)(o(127, s), p, o, m) +# define BOOST_PP_FOR_127_I(s, p, o, m) BOOST_PP_IF(p(128, s), m, BOOST_PP_TUPLE_EAT_2)(128, s) BOOST_PP_IF(p(128, s), BOOST_PP_FOR_128, BOOST_PP_TUPLE_EAT_4)(o(128, s), p, o, m) +# define BOOST_PP_FOR_128_I(s, p, o, m) BOOST_PP_IF(p(129, s), m, BOOST_PP_TUPLE_EAT_2)(129, s) BOOST_PP_IF(p(129, s), BOOST_PP_FOR_129, BOOST_PP_TUPLE_EAT_4)(o(129, s), p, o, m) +# define BOOST_PP_FOR_129_I(s, p, o, m) BOOST_PP_IF(p(130, s), m, BOOST_PP_TUPLE_EAT_2)(130, s) BOOST_PP_IF(p(130, s), BOOST_PP_FOR_130, BOOST_PP_TUPLE_EAT_4)(o(130, s), p, o, m) +# define BOOST_PP_FOR_130_I(s, p, o, m) BOOST_PP_IF(p(131, s), m, BOOST_PP_TUPLE_EAT_2)(131, s) BOOST_PP_IF(p(131, s), BOOST_PP_FOR_131, BOOST_PP_TUPLE_EAT_4)(o(131, s), p, o, m) +# define BOOST_PP_FOR_131_I(s, p, o, m) BOOST_PP_IF(p(132, s), m, BOOST_PP_TUPLE_EAT_2)(132, s) BOOST_PP_IF(p(132, s), BOOST_PP_FOR_132, BOOST_PP_TUPLE_EAT_4)(o(132, s), p, o, m) +# define BOOST_PP_FOR_132_I(s, p, o, m) BOOST_PP_IF(p(133, s), m, BOOST_PP_TUPLE_EAT_2)(133, s) BOOST_PP_IF(p(133, s), BOOST_PP_FOR_133, BOOST_PP_TUPLE_EAT_4)(o(133, s), p, o, m) +# define BOOST_PP_FOR_133_I(s, p, o, m) BOOST_PP_IF(p(134, s), m, BOOST_PP_TUPLE_EAT_2)(134, s) BOOST_PP_IF(p(134, s), BOOST_PP_FOR_134, BOOST_PP_TUPLE_EAT_4)(o(134, s), p, o, m) +# define BOOST_PP_FOR_134_I(s, p, o, m) BOOST_PP_IF(p(135, s), m, BOOST_PP_TUPLE_EAT_2)(135, s) BOOST_PP_IF(p(135, s), BOOST_PP_FOR_135, BOOST_PP_TUPLE_EAT_4)(o(135, s), p, o, m) +# define BOOST_PP_FOR_135_I(s, p, o, m) BOOST_PP_IF(p(136, s), m, BOOST_PP_TUPLE_EAT_2)(136, s) BOOST_PP_IF(p(136, s), BOOST_PP_FOR_136, BOOST_PP_TUPLE_EAT_4)(o(136, s), p, o, m) +# define BOOST_PP_FOR_136_I(s, p, o, m) BOOST_PP_IF(p(137, s), m, BOOST_PP_TUPLE_EAT_2)(137, s) BOOST_PP_IF(p(137, s), BOOST_PP_FOR_137, BOOST_PP_TUPLE_EAT_4)(o(137, s), p, o, m) +# define BOOST_PP_FOR_137_I(s, p, o, m) BOOST_PP_IF(p(138, s), m, BOOST_PP_TUPLE_EAT_2)(138, s) BOOST_PP_IF(p(138, s), BOOST_PP_FOR_138, BOOST_PP_TUPLE_EAT_4)(o(138, s), p, o, m) +# define BOOST_PP_FOR_138_I(s, p, o, m) BOOST_PP_IF(p(139, s), m, BOOST_PP_TUPLE_EAT_2)(139, s) BOOST_PP_IF(p(139, s), BOOST_PP_FOR_139, BOOST_PP_TUPLE_EAT_4)(o(139, s), p, o, m) +# define BOOST_PP_FOR_139_I(s, p, o, m) BOOST_PP_IF(p(140, s), m, BOOST_PP_TUPLE_EAT_2)(140, s) BOOST_PP_IF(p(140, s), BOOST_PP_FOR_140, BOOST_PP_TUPLE_EAT_4)(o(140, s), p, o, m) +# define BOOST_PP_FOR_140_I(s, p, o, m) BOOST_PP_IF(p(141, s), m, BOOST_PP_TUPLE_EAT_2)(141, s) BOOST_PP_IF(p(141, s), BOOST_PP_FOR_141, BOOST_PP_TUPLE_EAT_4)(o(141, s), p, o, m) +# define BOOST_PP_FOR_141_I(s, p, o, m) BOOST_PP_IF(p(142, s), m, BOOST_PP_TUPLE_EAT_2)(142, s) BOOST_PP_IF(p(142, s), BOOST_PP_FOR_142, BOOST_PP_TUPLE_EAT_4)(o(142, s), p, o, m) +# define BOOST_PP_FOR_142_I(s, p, o, m) BOOST_PP_IF(p(143, s), m, BOOST_PP_TUPLE_EAT_2)(143, s) BOOST_PP_IF(p(143, s), BOOST_PP_FOR_143, BOOST_PP_TUPLE_EAT_4)(o(143, s), p, o, m) +# define BOOST_PP_FOR_143_I(s, p, o, m) BOOST_PP_IF(p(144, s), m, BOOST_PP_TUPLE_EAT_2)(144, s) BOOST_PP_IF(p(144, s), BOOST_PP_FOR_144, BOOST_PP_TUPLE_EAT_4)(o(144, s), p, o, m) +# define BOOST_PP_FOR_144_I(s, p, o, m) BOOST_PP_IF(p(145, s), m, BOOST_PP_TUPLE_EAT_2)(145, s) BOOST_PP_IF(p(145, s), BOOST_PP_FOR_145, BOOST_PP_TUPLE_EAT_4)(o(145, s), p, o, m) +# define BOOST_PP_FOR_145_I(s, p, o, m) BOOST_PP_IF(p(146, s), m, BOOST_PP_TUPLE_EAT_2)(146, s) BOOST_PP_IF(p(146, s), BOOST_PP_FOR_146, BOOST_PP_TUPLE_EAT_4)(o(146, s), p, o, m) +# define BOOST_PP_FOR_146_I(s, p, o, m) BOOST_PP_IF(p(147, s), m, BOOST_PP_TUPLE_EAT_2)(147, s) BOOST_PP_IF(p(147, s), BOOST_PP_FOR_147, BOOST_PP_TUPLE_EAT_4)(o(147, s), p, o, m) +# define BOOST_PP_FOR_147_I(s, p, o, m) BOOST_PP_IF(p(148, s), m, BOOST_PP_TUPLE_EAT_2)(148, s) BOOST_PP_IF(p(148, s), BOOST_PP_FOR_148, BOOST_PP_TUPLE_EAT_4)(o(148, s), p, o, m) +# define BOOST_PP_FOR_148_I(s, p, o, m) BOOST_PP_IF(p(149, s), m, BOOST_PP_TUPLE_EAT_2)(149, s) BOOST_PP_IF(p(149, s), BOOST_PP_FOR_149, BOOST_PP_TUPLE_EAT_4)(o(149, s), p, o, m) +# define BOOST_PP_FOR_149_I(s, p, o, m) BOOST_PP_IF(p(150, s), m, BOOST_PP_TUPLE_EAT_2)(150, s) BOOST_PP_IF(p(150, s), BOOST_PP_FOR_150, BOOST_PP_TUPLE_EAT_4)(o(150, s), p, o, m) +# define BOOST_PP_FOR_150_I(s, p, o, m) BOOST_PP_IF(p(151, s), m, BOOST_PP_TUPLE_EAT_2)(151, s) BOOST_PP_IF(p(151, s), BOOST_PP_FOR_151, BOOST_PP_TUPLE_EAT_4)(o(151, s), p, o, m) +# define BOOST_PP_FOR_151_I(s, p, o, m) BOOST_PP_IF(p(152, s), m, BOOST_PP_TUPLE_EAT_2)(152, s) BOOST_PP_IF(p(152, s), BOOST_PP_FOR_152, BOOST_PP_TUPLE_EAT_4)(o(152, s), p, o, m) +# define BOOST_PP_FOR_152_I(s, p, o, m) BOOST_PP_IF(p(153, s), m, BOOST_PP_TUPLE_EAT_2)(153, s) BOOST_PP_IF(p(153, s), BOOST_PP_FOR_153, BOOST_PP_TUPLE_EAT_4)(o(153, s), p, o, m) +# define BOOST_PP_FOR_153_I(s, p, o, m) BOOST_PP_IF(p(154, s), m, BOOST_PP_TUPLE_EAT_2)(154, s) BOOST_PP_IF(p(154, s), BOOST_PP_FOR_154, BOOST_PP_TUPLE_EAT_4)(o(154, s), p, o, m) +# define BOOST_PP_FOR_154_I(s, p, o, m) BOOST_PP_IF(p(155, s), m, BOOST_PP_TUPLE_EAT_2)(155, s) BOOST_PP_IF(p(155, s), BOOST_PP_FOR_155, BOOST_PP_TUPLE_EAT_4)(o(155, s), p, o, m) +# define BOOST_PP_FOR_155_I(s, p, o, m) BOOST_PP_IF(p(156, s), m, BOOST_PP_TUPLE_EAT_2)(156, s) BOOST_PP_IF(p(156, s), BOOST_PP_FOR_156, BOOST_PP_TUPLE_EAT_4)(o(156, s), p, o, m) +# define BOOST_PP_FOR_156_I(s, p, o, m) BOOST_PP_IF(p(157, s), m, BOOST_PP_TUPLE_EAT_2)(157, s) BOOST_PP_IF(p(157, s), BOOST_PP_FOR_157, BOOST_PP_TUPLE_EAT_4)(o(157, s), p, o, m) +# define BOOST_PP_FOR_157_I(s, p, o, m) BOOST_PP_IF(p(158, s), m, BOOST_PP_TUPLE_EAT_2)(158, s) BOOST_PP_IF(p(158, s), BOOST_PP_FOR_158, BOOST_PP_TUPLE_EAT_4)(o(158, s), p, o, m) +# define BOOST_PP_FOR_158_I(s, p, o, m) BOOST_PP_IF(p(159, s), m, BOOST_PP_TUPLE_EAT_2)(159, s) BOOST_PP_IF(p(159, s), BOOST_PP_FOR_159, BOOST_PP_TUPLE_EAT_4)(o(159, s), p, o, m) +# define BOOST_PP_FOR_159_I(s, p, o, m) BOOST_PP_IF(p(160, s), m, BOOST_PP_TUPLE_EAT_2)(160, s) BOOST_PP_IF(p(160, s), BOOST_PP_FOR_160, BOOST_PP_TUPLE_EAT_4)(o(160, s), p, o, m) +# define BOOST_PP_FOR_160_I(s, p, o, m) BOOST_PP_IF(p(161, s), m, BOOST_PP_TUPLE_EAT_2)(161, s) BOOST_PP_IF(p(161, s), BOOST_PP_FOR_161, BOOST_PP_TUPLE_EAT_4)(o(161, s), p, o, m) +# define BOOST_PP_FOR_161_I(s, p, o, m) BOOST_PP_IF(p(162, s), m, BOOST_PP_TUPLE_EAT_2)(162, s) BOOST_PP_IF(p(162, s), BOOST_PP_FOR_162, BOOST_PP_TUPLE_EAT_4)(o(162, s), p, o, m) +# define BOOST_PP_FOR_162_I(s, p, o, m) BOOST_PP_IF(p(163, s), m, BOOST_PP_TUPLE_EAT_2)(163, s) BOOST_PP_IF(p(163, s), BOOST_PP_FOR_163, BOOST_PP_TUPLE_EAT_4)(o(163, s), p, o, m) +# define BOOST_PP_FOR_163_I(s, p, o, m) BOOST_PP_IF(p(164, s), m, BOOST_PP_TUPLE_EAT_2)(164, s) BOOST_PP_IF(p(164, s), BOOST_PP_FOR_164, BOOST_PP_TUPLE_EAT_4)(o(164, s), p, o, m) +# define BOOST_PP_FOR_164_I(s, p, o, m) BOOST_PP_IF(p(165, s), m, BOOST_PP_TUPLE_EAT_2)(165, s) BOOST_PP_IF(p(165, s), BOOST_PP_FOR_165, BOOST_PP_TUPLE_EAT_4)(o(165, s), p, o, m) +# define BOOST_PP_FOR_165_I(s, p, o, m) BOOST_PP_IF(p(166, s), m, BOOST_PP_TUPLE_EAT_2)(166, s) BOOST_PP_IF(p(166, s), BOOST_PP_FOR_166, BOOST_PP_TUPLE_EAT_4)(o(166, s), p, o, m) +# define BOOST_PP_FOR_166_I(s, p, o, m) BOOST_PP_IF(p(167, s), m, BOOST_PP_TUPLE_EAT_2)(167, s) BOOST_PP_IF(p(167, s), BOOST_PP_FOR_167, BOOST_PP_TUPLE_EAT_4)(o(167, s), p, o, m) +# define BOOST_PP_FOR_167_I(s, p, o, m) BOOST_PP_IF(p(168, s), m, BOOST_PP_TUPLE_EAT_2)(168, s) BOOST_PP_IF(p(168, s), BOOST_PP_FOR_168, BOOST_PP_TUPLE_EAT_4)(o(168, s), p, o, m) +# define BOOST_PP_FOR_168_I(s, p, o, m) BOOST_PP_IF(p(169, s), m, BOOST_PP_TUPLE_EAT_2)(169, s) BOOST_PP_IF(p(169, s), BOOST_PP_FOR_169, BOOST_PP_TUPLE_EAT_4)(o(169, s), p, o, m) +# define BOOST_PP_FOR_169_I(s, p, o, m) BOOST_PP_IF(p(170, s), m, BOOST_PP_TUPLE_EAT_2)(170, s) BOOST_PP_IF(p(170, s), BOOST_PP_FOR_170, BOOST_PP_TUPLE_EAT_4)(o(170, s), p, o, m) +# define BOOST_PP_FOR_170_I(s, p, o, m) BOOST_PP_IF(p(171, s), m, BOOST_PP_TUPLE_EAT_2)(171, s) BOOST_PP_IF(p(171, s), BOOST_PP_FOR_171, BOOST_PP_TUPLE_EAT_4)(o(171, s), p, o, m) +# define BOOST_PP_FOR_171_I(s, p, o, m) BOOST_PP_IF(p(172, s), m, BOOST_PP_TUPLE_EAT_2)(172, s) BOOST_PP_IF(p(172, s), BOOST_PP_FOR_172, BOOST_PP_TUPLE_EAT_4)(o(172, s), p, o, m) +# define BOOST_PP_FOR_172_I(s, p, o, m) BOOST_PP_IF(p(173, s), m, BOOST_PP_TUPLE_EAT_2)(173, s) BOOST_PP_IF(p(173, s), BOOST_PP_FOR_173, BOOST_PP_TUPLE_EAT_4)(o(173, s), p, o, m) +# define BOOST_PP_FOR_173_I(s, p, o, m) BOOST_PP_IF(p(174, s), m, BOOST_PP_TUPLE_EAT_2)(174, s) BOOST_PP_IF(p(174, s), BOOST_PP_FOR_174, BOOST_PP_TUPLE_EAT_4)(o(174, s), p, o, m) +# define BOOST_PP_FOR_174_I(s, p, o, m) BOOST_PP_IF(p(175, s), m, BOOST_PP_TUPLE_EAT_2)(175, s) BOOST_PP_IF(p(175, s), BOOST_PP_FOR_175, BOOST_PP_TUPLE_EAT_4)(o(175, s), p, o, m) +# define BOOST_PP_FOR_175_I(s, p, o, m) BOOST_PP_IF(p(176, s), m, BOOST_PP_TUPLE_EAT_2)(176, s) BOOST_PP_IF(p(176, s), BOOST_PP_FOR_176, BOOST_PP_TUPLE_EAT_4)(o(176, s), p, o, m) +# define BOOST_PP_FOR_176_I(s, p, o, m) BOOST_PP_IF(p(177, s), m, BOOST_PP_TUPLE_EAT_2)(177, s) BOOST_PP_IF(p(177, s), BOOST_PP_FOR_177, BOOST_PP_TUPLE_EAT_4)(o(177, s), p, o, m) +# define BOOST_PP_FOR_177_I(s, p, o, m) BOOST_PP_IF(p(178, s), m, BOOST_PP_TUPLE_EAT_2)(178, s) BOOST_PP_IF(p(178, s), BOOST_PP_FOR_178, BOOST_PP_TUPLE_EAT_4)(o(178, s), p, o, m) +# define BOOST_PP_FOR_178_I(s, p, o, m) BOOST_PP_IF(p(179, s), m, BOOST_PP_TUPLE_EAT_2)(179, s) BOOST_PP_IF(p(179, s), BOOST_PP_FOR_179, BOOST_PP_TUPLE_EAT_4)(o(179, s), p, o, m) +# define BOOST_PP_FOR_179_I(s, p, o, m) BOOST_PP_IF(p(180, s), m, BOOST_PP_TUPLE_EAT_2)(180, s) BOOST_PP_IF(p(180, s), BOOST_PP_FOR_180, BOOST_PP_TUPLE_EAT_4)(o(180, s), p, o, m) +# define BOOST_PP_FOR_180_I(s, p, o, m) BOOST_PP_IF(p(181, s), m, BOOST_PP_TUPLE_EAT_2)(181, s) BOOST_PP_IF(p(181, s), BOOST_PP_FOR_181, BOOST_PP_TUPLE_EAT_4)(o(181, s), p, o, m) +# define BOOST_PP_FOR_181_I(s, p, o, m) BOOST_PP_IF(p(182, s), m, BOOST_PP_TUPLE_EAT_2)(182, s) BOOST_PP_IF(p(182, s), BOOST_PP_FOR_182, BOOST_PP_TUPLE_EAT_4)(o(182, s), p, o, m) +# define BOOST_PP_FOR_182_I(s, p, o, m) BOOST_PP_IF(p(183, s), m, BOOST_PP_TUPLE_EAT_2)(183, s) BOOST_PP_IF(p(183, s), BOOST_PP_FOR_183, BOOST_PP_TUPLE_EAT_4)(o(183, s), p, o, m) +# define BOOST_PP_FOR_183_I(s, p, o, m) BOOST_PP_IF(p(184, s), m, BOOST_PP_TUPLE_EAT_2)(184, s) BOOST_PP_IF(p(184, s), BOOST_PP_FOR_184, BOOST_PP_TUPLE_EAT_4)(o(184, s), p, o, m) +# define BOOST_PP_FOR_184_I(s, p, o, m) BOOST_PP_IF(p(185, s), m, BOOST_PP_TUPLE_EAT_2)(185, s) BOOST_PP_IF(p(185, s), BOOST_PP_FOR_185, BOOST_PP_TUPLE_EAT_4)(o(185, s), p, o, m) +# define BOOST_PP_FOR_185_I(s, p, o, m) BOOST_PP_IF(p(186, s), m, BOOST_PP_TUPLE_EAT_2)(186, s) BOOST_PP_IF(p(186, s), BOOST_PP_FOR_186, BOOST_PP_TUPLE_EAT_4)(o(186, s), p, o, m) +# define BOOST_PP_FOR_186_I(s, p, o, m) BOOST_PP_IF(p(187, s), m, BOOST_PP_TUPLE_EAT_2)(187, s) BOOST_PP_IF(p(187, s), BOOST_PP_FOR_187, BOOST_PP_TUPLE_EAT_4)(o(187, s), p, o, m) +# define BOOST_PP_FOR_187_I(s, p, o, m) BOOST_PP_IF(p(188, s), m, BOOST_PP_TUPLE_EAT_2)(188, s) BOOST_PP_IF(p(188, s), BOOST_PP_FOR_188, BOOST_PP_TUPLE_EAT_4)(o(188, s), p, o, m) +# define BOOST_PP_FOR_188_I(s, p, o, m) BOOST_PP_IF(p(189, s), m, BOOST_PP_TUPLE_EAT_2)(189, s) BOOST_PP_IF(p(189, s), BOOST_PP_FOR_189, BOOST_PP_TUPLE_EAT_4)(o(189, s), p, o, m) +# define BOOST_PP_FOR_189_I(s, p, o, m) BOOST_PP_IF(p(190, s), m, BOOST_PP_TUPLE_EAT_2)(190, s) BOOST_PP_IF(p(190, s), BOOST_PP_FOR_190, BOOST_PP_TUPLE_EAT_4)(o(190, s), p, o, m) +# define BOOST_PP_FOR_190_I(s, p, o, m) BOOST_PP_IF(p(191, s), m, BOOST_PP_TUPLE_EAT_2)(191, s) BOOST_PP_IF(p(191, s), BOOST_PP_FOR_191, BOOST_PP_TUPLE_EAT_4)(o(191, s), p, o, m) +# define BOOST_PP_FOR_191_I(s, p, o, m) BOOST_PP_IF(p(192, s), m, BOOST_PP_TUPLE_EAT_2)(192, s) BOOST_PP_IF(p(192, s), BOOST_PP_FOR_192, BOOST_PP_TUPLE_EAT_4)(o(192, s), p, o, m) +# define BOOST_PP_FOR_192_I(s, p, o, m) BOOST_PP_IF(p(193, s), m, BOOST_PP_TUPLE_EAT_2)(193, s) BOOST_PP_IF(p(193, s), BOOST_PP_FOR_193, BOOST_PP_TUPLE_EAT_4)(o(193, s), p, o, m) +# define BOOST_PP_FOR_193_I(s, p, o, m) BOOST_PP_IF(p(194, s), m, BOOST_PP_TUPLE_EAT_2)(194, s) BOOST_PP_IF(p(194, s), BOOST_PP_FOR_194, BOOST_PP_TUPLE_EAT_4)(o(194, s), p, o, m) +# define BOOST_PP_FOR_194_I(s, p, o, m) BOOST_PP_IF(p(195, s), m, BOOST_PP_TUPLE_EAT_2)(195, s) BOOST_PP_IF(p(195, s), BOOST_PP_FOR_195, BOOST_PP_TUPLE_EAT_4)(o(195, s), p, o, m) +# define BOOST_PP_FOR_195_I(s, p, o, m) BOOST_PP_IF(p(196, s), m, BOOST_PP_TUPLE_EAT_2)(196, s) BOOST_PP_IF(p(196, s), BOOST_PP_FOR_196, BOOST_PP_TUPLE_EAT_4)(o(196, s), p, o, m) +# define BOOST_PP_FOR_196_I(s, p, o, m) BOOST_PP_IF(p(197, s), m, BOOST_PP_TUPLE_EAT_2)(197, s) BOOST_PP_IF(p(197, s), BOOST_PP_FOR_197, BOOST_PP_TUPLE_EAT_4)(o(197, s), p, o, m) +# define BOOST_PP_FOR_197_I(s, p, o, m) BOOST_PP_IF(p(198, s), m, BOOST_PP_TUPLE_EAT_2)(198, s) BOOST_PP_IF(p(198, s), BOOST_PP_FOR_198, BOOST_PP_TUPLE_EAT_4)(o(198, s), p, o, m) +# define BOOST_PP_FOR_198_I(s, p, o, m) BOOST_PP_IF(p(199, s), m, BOOST_PP_TUPLE_EAT_2)(199, s) BOOST_PP_IF(p(199, s), BOOST_PP_FOR_199, BOOST_PP_TUPLE_EAT_4)(o(199, s), p, o, m) +# define BOOST_PP_FOR_199_I(s, p, o, m) BOOST_PP_IF(p(200, s), m, BOOST_PP_TUPLE_EAT_2)(200, s) BOOST_PP_IF(p(200, s), BOOST_PP_FOR_200, BOOST_PP_TUPLE_EAT_4)(o(200, s), p, o, m) +# define BOOST_PP_FOR_200_I(s, p, o, m) BOOST_PP_IF(p(201, s), m, BOOST_PP_TUPLE_EAT_2)(201, s) BOOST_PP_IF(p(201, s), BOOST_PP_FOR_201, BOOST_PP_TUPLE_EAT_4)(o(201, s), p, o, m) +# define BOOST_PP_FOR_201_I(s, p, o, m) BOOST_PP_IF(p(202, s), m, BOOST_PP_TUPLE_EAT_2)(202, s) BOOST_PP_IF(p(202, s), BOOST_PP_FOR_202, BOOST_PP_TUPLE_EAT_4)(o(202, s), p, o, m) +# define BOOST_PP_FOR_202_I(s, p, o, m) BOOST_PP_IF(p(203, s), m, BOOST_PP_TUPLE_EAT_2)(203, s) BOOST_PP_IF(p(203, s), BOOST_PP_FOR_203, BOOST_PP_TUPLE_EAT_4)(o(203, s), p, o, m) +# define BOOST_PP_FOR_203_I(s, p, o, m) BOOST_PP_IF(p(204, s), m, BOOST_PP_TUPLE_EAT_2)(204, s) BOOST_PP_IF(p(204, s), BOOST_PP_FOR_204, BOOST_PP_TUPLE_EAT_4)(o(204, s), p, o, m) +# define BOOST_PP_FOR_204_I(s, p, o, m) BOOST_PP_IF(p(205, s), m, BOOST_PP_TUPLE_EAT_2)(205, s) BOOST_PP_IF(p(205, s), BOOST_PP_FOR_205, BOOST_PP_TUPLE_EAT_4)(o(205, s), p, o, m) +# define BOOST_PP_FOR_205_I(s, p, o, m) BOOST_PP_IF(p(206, s), m, BOOST_PP_TUPLE_EAT_2)(206, s) BOOST_PP_IF(p(206, s), BOOST_PP_FOR_206, BOOST_PP_TUPLE_EAT_4)(o(206, s), p, o, m) +# define BOOST_PP_FOR_206_I(s, p, o, m) BOOST_PP_IF(p(207, s), m, BOOST_PP_TUPLE_EAT_2)(207, s) BOOST_PP_IF(p(207, s), BOOST_PP_FOR_207, BOOST_PP_TUPLE_EAT_4)(o(207, s), p, o, m) +# define BOOST_PP_FOR_207_I(s, p, o, m) BOOST_PP_IF(p(208, s), m, BOOST_PP_TUPLE_EAT_2)(208, s) BOOST_PP_IF(p(208, s), BOOST_PP_FOR_208, BOOST_PP_TUPLE_EAT_4)(o(208, s), p, o, m) +# define BOOST_PP_FOR_208_I(s, p, o, m) BOOST_PP_IF(p(209, s), m, BOOST_PP_TUPLE_EAT_2)(209, s) BOOST_PP_IF(p(209, s), BOOST_PP_FOR_209, BOOST_PP_TUPLE_EAT_4)(o(209, s), p, o, m) +# define BOOST_PP_FOR_209_I(s, p, o, m) BOOST_PP_IF(p(210, s), m, BOOST_PP_TUPLE_EAT_2)(210, s) BOOST_PP_IF(p(210, s), BOOST_PP_FOR_210, BOOST_PP_TUPLE_EAT_4)(o(210, s), p, o, m) +# define BOOST_PP_FOR_210_I(s, p, o, m) BOOST_PP_IF(p(211, s), m, BOOST_PP_TUPLE_EAT_2)(211, s) BOOST_PP_IF(p(211, s), BOOST_PP_FOR_211, BOOST_PP_TUPLE_EAT_4)(o(211, s), p, o, m) +# define BOOST_PP_FOR_211_I(s, p, o, m) BOOST_PP_IF(p(212, s), m, BOOST_PP_TUPLE_EAT_2)(212, s) BOOST_PP_IF(p(212, s), BOOST_PP_FOR_212, BOOST_PP_TUPLE_EAT_4)(o(212, s), p, o, m) +# define BOOST_PP_FOR_212_I(s, p, o, m) BOOST_PP_IF(p(213, s), m, BOOST_PP_TUPLE_EAT_2)(213, s) BOOST_PP_IF(p(213, s), BOOST_PP_FOR_213, BOOST_PP_TUPLE_EAT_4)(o(213, s), p, o, m) +# define BOOST_PP_FOR_213_I(s, p, o, m) BOOST_PP_IF(p(214, s), m, BOOST_PP_TUPLE_EAT_2)(214, s) BOOST_PP_IF(p(214, s), BOOST_PP_FOR_214, BOOST_PP_TUPLE_EAT_4)(o(214, s), p, o, m) +# define BOOST_PP_FOR_214_I(s, p, o, m) BOOST_PP_IF(p(215, s), m, BOOST_PP_TUPLE_EAT_2)(215, s) BOOST_PP_IF(p(215, s), BOOST_PP_FOR_215, BOOST_PP_TUPLE_EAT_4)(o(215, s), p, o, m) +# define BOOST_PP_FOR_215_I(s, p, o, m) BOOST_PP_IF(p(216, s), m, BOOST_PP_TUPLE_EAT_2)(216, s) BOOST_PP_IF(p(216, s), BOOST_PP_FOR_216, BOOST_PP_TUPLE_EAT_4)(o(216, s), p, o, m) +# define BOOST_PP_FOR_216_I(s, p, o, m) BOOST_PP_IF(p(217, s), m, BOOST_PP_TUPLE_EAT_2)(217, s) BOOST_PP_IF(p(217, s), BOOST_PP_FOR_217, BOOST_PP_TUPLE_EAT_4)(o(217, s), p, o, m) +# define BOOST_PP_FOR_217_I(s, p, o, m) BOOST_PP_IF(p(218, s), m, BOOST_PP_TUPLE_EAT_2)(218, s) BOOST_PP_IF(p(218, s), BOOST_PP_FOR_218, BOOST_PP_TUPLE_EAT_4)(o(218, s), p, o, m) +# define BOOST_PP_FOR_218_I(s, p, o, m) BOOST_PP_IF(p(219, s), m, BOOST_PP_TUPLE_EAT_2)(219, s) BOOST_PP_IF(p(219, s), BOOST_PP_FOR_219, BOOST_PP_TUPLE_EAT_4)(o(219, s), p, o, m) +# define BOOST_PP_FOR_219_I(s, p, o, m) BOOST_PP_IF(p(220, s), m, BOOST_PP_TUPLE_EAT_2)(220, s) BOOST_PP_IF(p(220, s), BOOST_PP_FOR_220, BOOST_PP_TUPLE_EAT_4)(o(220, s), p, o, m) +# define BOOST_PP_FOR_220_I(s, p, o, m) BOOST_PP_IF(p(221, s), m, BOOST_PP_TUPLE_EAT_2)(221, s) BOOST_PP_IF(p(221, s), BOOST_PP_FOR_221, BOOST_PP_TUPLE_EAT_4)(o(221, s), p, o, m) +# define BOOST_PP_FOR_221_I(s, p, o, m) BOOST_PP_IF(p(222, s), m, BOOST_PP_TUPLE_EAT_2)(222, s) BOOST_PP_IF(p(222, s), BOOST_PP_FOR_222, BOOST_PP_TUPLE_EAT_4)(o(222, s), p, o, m) +# define BOOST_PP_FOR_222_I(s, p, o, m) BOOST_PP_IF(p(223, s), m, BOOST_PP_TUPLE_EAT_2)(223, s) BOOST_PP_IF(p(223, s), BOOST_PP_FOR_223, BOOST_PP_TUPLE_EAT_4)(o(223, s), p, o, m) +# define BOOST_PP_FOR_223_I(s, p, o, m) BOOST_PP_IF(p(224, s), m, BOOST_PP_TUPLE_EAT_2)(224, s) BOOST_PP_IF(p(224, s), BOOST_PP_FOR_224, BOOST_PP_TUPLE_EAT_4)(o(224, s), p, o, m) +# define BOOST_PP_FOR_224_I(s, p, o, m) BOOST_PP_IF(p(225, s), m, BOOST_PP_TUPLE_EAT_2)(225, s) BOOST_PP_IF(p(225, s), BOOST_PP_FOR_225, BOOST_PP_TUPLE_EAT_4)(o(225, s), p, o, m) +# define BOOST_PP_FOR_225_I(s, p, o, m) BOOST_PP_IF(p(226, s), m, BOOST_PP_TUPLE_EAT_2)(226, s) BOOST_PP_IF(p(226, s), BOOST_PP_FOR_226, BOOST_PP_TUPLE_EAT_4)(o(226, s), p, o, m) +# define BOOST_PP_FOR_226_I(s, p, o, m) BOOST_PP_IF(p(227, s), m, BOOST_PP_TUPLE_EAT_2)(227, s) BOOST_PP_IF(p(227, s), BOOST_PP_FOR_227, BOOST_PP_TUPLE_EAT_4)(o(227, s), p, o, m) +# define BOOST_PP_FOR_227_I(s, p, o, m) BOOST_PP_IF(p(228, s), m, BOOST_PP_TUPLE_EAT_2)(228, s) BOOST_PP_IF(p(228, s), BOOST_PP_FOR_228, BOOST_PP_TUPLE_EAT_4)(o(228, s), p, o, m) +# define BOOST_PP_FOR_228_I(s, p, o, m) BOOST_PP_IF(p(229, s), m, BOOST_PP_TUPLE_EAT_2)(229, s) BOOST_PP_IF(p(229, s), BOOST_PP_FOR_229, BOOST_PP_TUPLE_EAT_4)(o(229, s), p, o, m) +# define BOOST_PP_FOR_229_I(s, p, o, m) BOOST_PP_IF(p(230, s), m, BOOST_PP_TUPLE_EAT_2)(230, s) BOOST_PP_IF(p(230, s), BOOST_PP_FOR_230, BOOST_PP_TUPLE_EAT_4)(o(230, s), p, o, m) +# define BOOST_PP_FOR_230_I(s, p, o, m) BOOST_PP_IF(p(231, s), m, BOOST_PP_TUPLE_EAT_2)(231, s) BOOST_PP_IF(p(231, s), BOOST_PP_FOR_231, BOOST_PP_TUPLE_EAT_4)(o(231, s), p, o, m) +# define BOOST_PP_FOR_231_I(s, p, o, m) BOOST_PP_IF(p(232, s), m, BOOST_PP_TUPLE_EAT_2)(232, s) BOOST_PP_IF(p(232, s), BOOST_PP_FOR_232, BOOST_PP_TUPLE_EAT_4)(o(232, s), p, o, m) +# define BOOST_PP_FOR_232_I(s, p, o, m) BOOST_PP_IF(p(233, s), m, BOOST_PP_TUPLE_EAT_2)(233, s) BOOST_PP_IF(p(233, s), BOOST_PP_FOR_233, BOOST_PP_TUPLE_EAT_4)(o(233, s), p, o, m) +# define BOOST_PP_FOR_233_I(s, p, o, m) BOOST_PP_IF(p(234, s), m, BOOST_PP_TUPLE_EAT_2)(234, s) BOOST_PP_IF(p(234, s), BOOST_PP_FOR_234, BOOST_PP_TUPLE_EAT_4)(o(234, s), p, o, m) +# define BOOST_PP_FOR_234_I(s, p, o, m) BOOST_PP_IF(p(235, s), m, BOOST_PP_TUPLE_EAT_2)(235, s) BOOST_PP_IF(p(235, s), BOOST_PP_FOR_235, BOOST_PP_TUPLE_EAT_4)(o(235, s), p, o, m) +# define BOOST_PP_FOR_235_I(s, p, o, m) BOOST_PP_IF(p(236, s), m, BOOST_PP_TUPLE_EAT_2)(236, s) BOOST_PP_IF(p(236, s), BOOST_PP_FOR_236, BOOST_PP_TUPLE_EAT_4)(o(236, s), p, o, m) +# define BOOST_PP_FOR_236_I(s, p, o, m) BOOST_PP_IF(p(237, s), m, BOOST_PP_TUPLE_EAT_2)(237, s) BOOST_PP_IF(p(237, s), BOOST_PP_FOR_237, BOOST_PP_TUPLE_EAT_4)(o(237, s), p, o, m) +# define BOOST_PP_FOR_237_I(s, p, o, m) BOOST_PP_IF(p(238, s), m, BOOST_PP_TUPLE_EAT_2)(238, s) BOOST_PP_IF(p(238, s), BOOST_PP_FOR_238, BOOST_PP_TUPLE_EAT_4)(o(238, s), p, o, m) +# define BOOST_PP_FOR_238_I(s, p, o, m) BOOST_PP_IF(p(239, s), m, BOOST_PP_TUPLE_EAT_2)(239, s) BOOST_PP_IF(p(239, s), BOOST_PP_FOR_239, BOOST_PP_TUPLE_EAT_4)(o(239, s), p, o, m) +# define BOOST_PP_FOR_239_I(s, p, o, m) BOOST_PP_IF(p(240, s), m, BOOST_PP_TUPLE_EAT_2)(240, s) BOOST_PP_IF(p(240, s), BOOST_PP_FOR_240, BOOST_PP_TUPLE_EAT_4)(o(240, s), p, o, m) +# define BOOST_PP_FOR_240_I(s, p, o, m) BOOST_PP_IF(p(241, s), m, BOOST_PP_TUPLE_EAT_2)(241, s) BOOST_PP_IF(p(241, s), BOOST_PP_FOR_241, BOOST_PP_TUPLE_EAT_4)(o(241, s), p, o, m) +# define BOOST_PP_FOR_241_I(s, p, o, m) BOOST_PP_IF(p(242, s), m, BOOST_PP_TUPLE_EAT_2)(242, s) BOOST_PP_IF(p(242, s), BOOST_PP_FOR_242, BOOST_PP_TUPLE_EAT_4)(o(242, s), p, o, m) +# define BOOST_PP_FOR_242_I(s, p, o, m) BOOST_PP_IF(p(243, s), m, BOOST_PP_TUPLE_EAT_2)(243, s) BOOST_PP_IF(p(243, s), BOOST_PP_FOR_243, BOOST_PP_TUPLE_EAT_4)(o(243, s), p, o, m) +# define BOOST_PP_FOR_243_I(s, p, o, m) BOOST_PP_IF(p(244, s), m, BOOST_PP_TUPLE_EAT_2)(244, s) BOOST_PP_IF(p(244, s), BOOST_PP_FOR_244, BOOST_PP_TUPLE_EAT_4)(o(244, s), p, o, m) +# define BOOST_PP_FOR_244_I(s, p, o, m) BOOST_PP_IF(p(245, s), m, BOOST_PP_TUPLE_EAT_2)(245, s) BOOST_PP_IF(p(245, s), BOOST_PP_FOR_245, BOOST_PP_TUPLE_EAT_4)(o(245, s), p, o, m) +# define BOOST_PP_FOR_245_I(s, p, o, m) BOOST_PP_IF(p(246, s), m, BOOST_PP_TUPLE_EAT_2)(246, s) BOOST_PP_IF(p(246, s), BOOST_PP_FOR_246, BOOST_PP_TUPLE_EAT_4)(o(246, s), p, o, m) +# define BOOST_PP_FOR_246_I(s, p, o, m) BOOST_PP_IF(p(247, s), m, BOOST_PP_TUPLE_EAT_2)(247, s) BOOST_PP_IF(p(247, s), BOOST_PP_FOR_247, BOOST_PP_TUPLE_EAT_4)(o(247, s), p, o, m) +# define BOOST_PP_FOR_247_I(s, p, o, m) BOOST_PP_IF(p(248, s), m, BOOST_PP_TUPLE_EAT_2)(248, s) BOOST_PP_IF(p(248, s), BOOST_PP_FOR_248, BOOST_PP_TUPLE_EAT_4)(o(248, s), p, o, m) +# define BOOST_PP_FOR_248_I(s, p, o, m) BOOST_PP_IF(p(249, s), m, BOOST_PP_TUPLE_EAT_2)(249, s) BOOST_PP_IF(p(249, s), BOOST_PP_FOR_249, BOOST_PP_TUPLE_EAT_4)(o(249, s), p, o, m) +# define BOOST_PP_FOR_249_I(s, p, o, m) BOOST_PP_IF(p(250, s), m, BOOST_PP_TUPLE_EAT_2)(250, s) BOOST_PP_IF(p(250, s), BOOST_PP_FOR_250, BOOST_PP_TUPLE_EAT_4)(o(250, s), p, o, m) +# define BOOST_PP_FOR_250_I(s, p, o, m) BOOST_PP_IF(p(251, s), m, BOOST_PP_TUPLE_EAT_2)(251, s) BOOST_PP_IF(p(251, s), BOOST_PP_FOR_251, BOOST_PP_TUPLE_EAT_4)(o(251, s), p, o, m) +# define BOOST_PP_FOR_251_I(s, p, o, m) BOOST_PP_IF(p(252, s), m, BOOST_PP_TUPLE_EAT_2)(252, s) BOOST_PP_IF(p(252, s), BOOST_PP_FOR_252, BOOST_PP_TUPLE_EAT_4)(o(252, s), p, o, m) +# define BOOST_PP_FOR_252_I(s, p, o, m) BOOST_PP_IF(p(253, s), m, BOOST_PP_TUPLE_EAT_2)(253, s) BOOST_PP_IF(p(253, s), BOOST_PP_FOR_253, BOOST_PP_TUPLE_EAT_4)(o(253, s), p, o, m) +# define BOOST_PP_FOR_253_I(s, p, o, m) BOOST_PP_IF(p(254, s), m, BOOST_PP_TUPLE_EAT_2)(254, s) BOOST_PP_IF(p(254, s), BOOST_PP_FOR_254, BOOST_PP_TUPLE_EAT_4)(o(254, s), p, o, m) +# define BOOST_PP_FOR_254_I(s, p, o, m) BOOST_PP_IF(p(255, s), m, BOOST_PP_TUPLE_EAT_2)(255, s) BOOST_PP_IF(p(255, s), BOOST_PP_FOR_255, BOOST_PP_TUPLE_EAT_4)(o(255, s), p, o, m) +# define BOOST_PP_FOR_255_I(s, p, o, m) BOOST_PP_IF(p(256, s), m, BOOST_PP_TUPLE_EAT_2)(256, s) BOOST_PP_IF(p(256, s), BOOST_PP_FOR_256, BOOST_PP_TUPLE_EAT_4)(o(256, s), p, o, m) +# define BOOST_PP_FOR_256_I(s, p, o, m) BOOST_PP_IF(p(257, s), m, BOOST_PP_TUPLE_EAT_2)(257, s) BOOST_PP_IF(p(257, s), BOOST_PP_FOR_257, BOOST_PP_TUPLE_EAT_4)(o(257, s), p, o, m) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/detail/for.hpp b/plugin/wave/include/boost/preprocessor/repetition/detail/for.hpp new file mode 100644 index 0000000..2770f2c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/detail/for.hpp @@ -0,0 +1,536 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DETAIL_FOR_HPP +# define BOOST_PREPROCESSOR_REPETITION_DETAIL_FOR_HPP +# +# include +# include +# include +# include +# +# define BOOST_PP_FOR_1(s, p, o, m) BOOST_PP_FOR_1_C(BOOST_PP_BOOL(p(2, s)), s, p, o, m) +# define BOOST_PP_FOR_2(s, p, o, m) BOOST_PP_FOR_2_C(BOOST_PP_BOOL(p(3, s)), s, p, o, m) +# define BOOST_PP_FOR_3(s, p, o, m) BOOST_PP_FOR_3_C(BOOST_PP_BOOL(p(4, s)), s, p, o, m) +# define BOOST_PP_FOR_4(s, p, o, m) BOOST_PP_FOR_4_C(BOOST_PP_BOOL(p(5, s)), s, p, o, m) +# define BOOST_PP_FOR_5(s, p, o, m) BOOST_PP_FOR_5_C(BOOST_PP_BOOL(p(6, s)), s, p, o, m) +# define BOOST_PP_FOR_6(s, p, o, m) BOOST_PP_FOR_6_C(BOOST_PP_BOOL(p(7, s)), s, p, o, m) +# define BOOST_PP_FOR_7(s, p, o, m) BOOST_PP_FOR_7_C(BOOST_PP_BOOL(p(8, s)), s, p, o, m) +# define BOOST_PP_FOR_8(s, p, o, m) BOOST_PP_FOR_8_C(BOOST_PP_BOOL(p(9, s)), s, p, o, m) +# define BOOST_PP_FOR_9(s, p, o, m) BOOST_PP_FOR_9_C(BOOST_PP_BOOL(p(10, s)), s, p, o, m) +# define BOOST_PP_FOR_10(s, p, o, m) BOOST_PP_FOR_10_C(BOOST_PP_BOOL(p(11, s)), s, p, o, m) +# define BOOST_PP_FOR_11(s, p, o, m) BOOST_PP_FOR_11_C(BOOST_PP_BOOL(p(12, s)), s, p, o, m) +# define BOOST_PP_FOR_12(s, p, o, m) BOOST_PP_FOR_12_C(BOOST_PP_BOOL(p(13, s)), s, p, o, m) +# define BOOST_PP_FOR_13(s, p, o, m) BOOST_PP_FOR_13_C(BOOST_PP_BOOL(p(14, s)), s, p, o, m) +# define BOOST_PP_FOR_14(s, p, o, m) BOOST_PP_FOR_14_C(BOOST_PP_BOOL(p(15, s)), s, p, o, m) +# define BOOST_PP_FOR_15(s, p, o, m) BOOST_PP_FOR_15_C(BOOST_PP_BOOL(p(16, s)), s, p, o, m) +# define BOOST_PP_FOR_16(s, p, o, m) BOOST_PP_FOR_16_C(BOOST_PP_BOOL(p(17, s)), s, p, o, m) +# define BOOST_PP_FOR_17(s, p, o, m) BOOST_PP_FOR_17_C(BOOST_PP_BOOL(p(18, s)), s, p, o, m) +# define BOOST_PP_FOR_18(s, p, o, m) BOOST_PP_FOR_18_C(BOOST_PP_BOOL(p(19, s)), s, p, o, m) +# define BOOST_PP_FOR_19(s, p, o, m) BOOST_PP_FOR_19_C(BOOST_PP_BOOL(p(20, s)), s, p, o, m) +# define BOOST_PP_FOR_20(s, p, o, m) BOOST_PP_FOR_20_C(BOOST_PP_BOOL(p(21, s)), s, p, o, m) +# define BOOST_PP_FOR_21(s, p, o, m) BOOST_PP_FOR_21_C(BOOST_PP_BOOL(p(22, s)), s, p, o, m) +# define BOOST_PP_FOR_22(s, p, o, m) BOOST_PP_FOR_22_C(BOOST_PP_BOOL(p(23, s)), s, p, o, m) +# define BOOST_PP_FOR_23(s, p, o, m) BOOST_PP_FOR_23_C(BOOST_PP_BOOL(p(24, s)), s, p, o, m) +# define BOOST_PP_FOR_24(s, p, o, m) BOOST_PP_FOR_24_C(BOOST_PP_BOOL(p(25, s)), s, p, o, m) +# define BOOST_PP_FOR_25(s, p, o, m) BOOST_PP_FOR_25_C(BOOST_PP_BOOL(p(26, s)), s, p, o, m) +# define BOOST_PP_FOR_26(s, p, o, m) BOOST_PP_FOR_26_C(BOOST_PP_BOOL(p(27, s)), s, p, o, m) +# define BOOST_PP_FOR_27(s, p, o, m) BOOST_PP_FOR_27_C(BOOST_PP_BOOL(p(28, s)), s, p, o, m) +# define BOOST_PP_FOR_28(s, p, o, m) BOOST_PP_FOR_28_C(BOOST_PP_BOOL(p(29, s)), s, p, o, m) +# define BOOST_PP_FOR_29(s, p, o, m) BOOST_PP_FOR_29_C(BOOST_PP_BOOL(p(30, s)), s, p, o, m) +# define BOOST_PP_FOR_30(s, p, o, m) BOOST_PP_FOR_30_C(BOOST_PP_BOOL(p(31, s)), s, p, o, m) +# define BOOST_PP_FOR_31(s, p, o, m) BOOST_PP_FOR_31_C(BOOST_PP_BOOL(p(32, s)), s, p, o, m) +# define BOOST_PP_FOR_32(s, p, o, m) BOOST_PP_FOR_32_C(BOOST_PP_BOOL(p(33, s)), s, p, o, m) +# define BOOST_PP_FOR_33(s, p, o, m) BOOST_PP_FOR_33_C(BOOST_PP_BOOL(p(34, s)), s, p, o, m) +# define BOOST_PP_FOR_34(s, p, o, m) BOOST_PP_FOR_34_C(BOOST_PP_BOOL(p(35, s)), s, p, o, m) +# define BOOST_PP_FOR_35(s, p, o, m) BOOST_PP_FOR_35_C(BOOST_PP_BOOL(p(36, s)), s, p, o, m) +# define BOOST_PP_FOR_36(s, p, o, m) BOOST_PP_FOR_36_C(BOOST_PP_BOOL(p(37, s)), s, p, o, m) +# define BOOST_PP_FOR_37(s, p, o, m) BOOST_PP_FOR_37_C(BOOST_PP_BOOL(p(38, s)), s, p, o, m) +# define BOOST_PP_FOR_38(s, p, o, m) BOOST_PP_FOR_38_C(BOOST_PP_BOOL(p(39, s)), s, p, o, m) +# define BOOST_PP_FOR_39(s, p, o, m) BOOST_PP_FOR_39_C(BOOST_PP_BOOL(p(40, s)), s, p, o, m) +# define BOOST_PP_FOR_40(s, p, o, m) BOOST_PP_FOR_40_C(BOOST_PP_BOOL(p(41, s)), s, p, o, m) +# define BOOST_PP_FOR_41(s, p, o, m) BOOST_PP_FOR_41_C(BOOST_PP_BOOL(p(42, s)), s, p, o, m) +# define BOOST_PP_FOR_42(s, p, o, m) BOOST_PP_FOR_42_C(BOOST_PP_BOOL(p(43, s)), s, p, o, m) +# define BOOST_PP_FOR_43(s, p, o, m) BOOST_PP_FOR_43_C(BOOST_PP_BOOL(p(44, s)), s, p, o, m) +# define BOOST_PP_FOR_44(s, p, o, m) BOOST_PP_FOR_44_C(BOOST_PP_BOOL(p(45, s)), s, p, o, m) +# define BOOST_PP_FOR_45(s, p, o, m) BOOST_PP_FOR_45_C(BOOST_PP_BOOL(p(46, s)), s, p, o, m) +# define BOOST_PP_FOR_46(s, p, o, m) BOOST_PP_FOR_46_C(BOOST_PP_BOOL(p(47, s)), s, p, o, m) +# define BOOST_PP_FOR_47(s, p, o, m) BOOST_PP_FOR_47_C(BOOST_PP_BOOL(p(48, s)), s, p, o, m) +# define BOOST_PP_FOR_48(s, p, o, m) BOOST_PP_FOR_48_C(BOOST_PP_BOOL(p(49, s)), s, p, o, m) +# define BOOST_PP_FOR_49(s, p, o, m) BOOST_PP_FOR_49_C(BOOST_PP_BOOL(p(50, s)), s, p, o, m) +# define BOOST_PP_FOR_50(s, p, o, m) BOOST_PP_FOR_50_C(BOOST_PP_BOOL(p(51, s)), s, p, o, m) +# define BOOST_PP_FOR_51(s, p, o, m) BOOST_PP_FOR_51_C(BOOST_PP_BOOL(p(52, s)), s, p, o, m) +# define BOOST_PP_FOR_52(s, p, o, m) BOOST_PP_FOR_52_C(BOOST_PP_BOOL(p(53, s)), s, p, o, m) +# define BOOST_PP_FOR_53(s, p, o, m) BOOST_PP_FOR_53_C(BOOST_PP_BOOL(p(54, s)), s, p, o, m) +# define BOOST_PP_FOR_54(s, p, o, m) BOOST_PP_FOR_54_C(BOOST_PP_BOOL(p(55, s)), s, p, o, m) +# define BOOST_PP_FOR_55(s, p, o, m) BOOST_PP_FOR_55_C(BOOST_PP_BOOL(p(56, s)), s, p, o, m) +# define BOOST_PP_FOR_56(s, p, o, m) BOOST_PP_FOR_56_C(BOOST_PP_BOOL(p(57, s)), s, p, o, m) +# define BOOST_PP_FOR_57(s, p, o, m) BOOST_PP_FOR_57_C(BOOST_PP_BOOL(p(58, s)), s, p, o, m) +# define BOOST_PP_FOR_58(s, p, o, m) BOOST_PP_FOR_58_C(BOOST_PP_BOOL(p(59, s)), s, p, o, m) +# define BOOST_PP_FOR_59(s, p, o, m) BOOST_PP_FOR_59_C(BOOST_PP_BOOL(p(60, s)), s, p, o, m) +# define BOOST_PP_FOR_60(s, p, o, m) BOOST_PP_FOR_60_C(BOOST_PP_BOOL(p(61, s)), s, p, o, m) +# define BOOST_PP_FOR_61(s, p, o, m) BOOST_PP_FOR_61_C(BOOST_PP_BOOL(p(62, s)), s, p, o, m) +# define BOOST_PP_FOR_62(s, p, o, m) BOOST_PP_FOR_62_C(BOOST_PP_BOOL(p(63, s)), s, p, o, m) +# define BOOST_PP_FOR_63(s, p, o, m) BOOST_PP_FOR_63_C(BOOST_PP_BOOL(p(64, s)), s, p, o, m) +# define BOOST_PP_FOR_64(s, p, o, m) BOOST_PP_FOR_64_C(BOOST_PP_BOOL(p(65, s)), s, p, o, m) +# define BOOST_PP_FOR_65(s, p, o, m) BOOST_PP_FOR_65_C(BOOST_PP_BOOL(p(66, s)), s, p, o, m) +# define BOOST_PP_FOR_66(s, p, o, m) BOOST_PP_FOR_66_C(BOOST_PP_BOOL(p(67, s)), s, p, o, m) +# define BOOST_PP_FOR_67(s, p, o, m) BOOST_PP_FOR_67_C(BOOST_PP_BOOL(p(68, s)), s, p, o, m) +# define BOOST_PP_FOR_68(s, p, o, m) BOOST_PP_FOR_68_C(BOOST_PP_BOOL(p(69, s)), s, p, o, m) +# define BOOST_PP_FOR_69(s, p, o, m) BOOST_PP_FOR_69_C(BOOST_PP_BOOL(p(70, s)), s, p, o, m) +# define BOOST_PP_FOR_70(s, p, o, m) BOOST_PP_FOR_70_C(BOOST_PP_BOOL(p(71, s)), s, p, o, m) +# define BOOST_PP_FOR_71(s, p, o, m) BOOST_PP_FOR_71_C(BOOST_PP_BOOL(p(72, s)), s, p, o, m) +# define BOOST_PP_FOR_72(s, p, o, m) BOOST_PP_FOR_72_C(BOOST_PP_BOOL(p(73, s)), s, p, o, m) +# define BOOST_PP_FOR_73(s, p, o, m) BOOST_PP_FOR_73_C(BOOST_PP_BOOL(p(74, s)), s, p, o, m) +# define BOOST_PP_FOR_74(s, p, o, m) BOOST_PP_FOR_74_C(BOOST_PP_BOOL(p(75, s)), s, p, o, m) +# define BOOST_PP_FOR_75(s, p, o, m) BOOST_PP_FOR_75_C(BOOST_PP_BOOL(p(76, s)), s, p, o, m) +# define BOOST_PP_FOR_76(s, p, o, m) BOOST_PP_FOR_76_C(BOOST_PP_BOOL(p(77, s)), s, p, o, m) +# define BOOST_PP_FOR_77(s, p, o, m) BOOST_PP_FOR_77_C(BOOST_PP_BOOL(p(78, s)), s, p, o, m) +# define BOOST_PP_FOR_78(s, p, o, m) BOOST_PP_FOR_78_C(BOOST_PP_BOOL(p(79, s)), s, p, o, m) +# define BOOST_PP_FOR_79(s, p, o, m) BOOST_PP_FOR_79_C(BOOST_PP_BOOL(p(80, s)), s, p, o, m) +# define BOOST_PP_FOR_80(s, p, o, m) BOOST_PP_FOR_80_C(BOOST_PP_BOOL(p(81, s)), s, p, o, m) +# define BOOST_PP_FOR_81(s, p, o, m) BOOST_PP_FOR_81_C(BOOST_PP_BOOL(p(82, s)), s, p, o, m) +# define BOOST_PP_FOR_82(s, p, o, m) BOOST_PP_FOR_82_C(BOOST_PP_BOOL(p(83, s)), s, p, o, m) +# define BOOST_PP_FOR_83(s, p, o, m) BOOST_PP_FOR_83_C(BOOST_PP_BOOL(p(84, s)), s, p, o, m) +# define BOOST_PP_FOR_84(s, p, o, m) BOOST_PP_FOR_84_C(BOOST_PP_BOOL(p(85, s)), s, p, o, m) +# define BOOST_PP_FOR_85(s, p, o, m) BOOST_PP_FOR_85_C(BOOST_PP_BOOL(p(86, s)), s, p, o, m) +# define BOOST_PP_FOR_86(s, p, o, m) BOOST_PP_FOR_86_C(BOOST_PP_BOOL(p(87, s)), s, p, o, m) +# define BOOST_PP_FOR_87(s, p, o, m) BOOST_PP_FOR_87_C(BOOST_PP_BOOL(p(88, s)), s, p, o, m) +# define BOOST_PP_FOR_88(s, p, o, m) BOOST_PP_FOR_88_C(BOOST_PP_BOOL(p(89, s)), s, p, o, m) +# define BOOST_PP_FOR_89(s, p, o, m) BOOST_PP_FOR_89_C(BOOST_PP_BOOL(p(90, s)), s, p, o, m) +# define BOOST_PP_FOR_90(s, p, o, m) BOOST_PP_FOR_90_C(BOOST_PP_BOOL(p(91, s)), s, p, o, m) +# define BOOST_PP_FOR_91(s, p, o, m) BOOST_PP_FOR_91_C(BOOST_PP_BOOL(p(92, s)), s, p, o, m) +# define BOOST_PP_FOR_92(s, p, o, m) BOOST_PP_FOR_92_C(BOOST_PP_BOOL(p(93, s)), s, p, o, m) +# define BOOST_PP_FOR_93(s, p, o, m) BOOST_PP_FOR_93_C(BOOST_PP_BOOL(p(94, s)), s, p, o, m) +# define BOOST_PP_FOR_94(s, p, o, m) BOOST_PP_FOR_94_C(BOOST_PP_BOOL(p(95, s)), s, p, o, m) +# define BOOST_PP_FOR_95(s, p, o, m) BOOST_PP_FOR_95_C(BOOST_PP_BOOL(p(96, s)), s, p, o, m) +# define BOOST_PP_FOR_96(s, p, o, m) BOOST_PP_FOR_96_C(BOOST_PP_BOOL(p(97, s)), s, p, o, m) +# define BOOST_PP_FOR_97(s, p, o, m) BOOST_PP_FOR_97_C(BOOST_PP_BOOL(p(98, s)), s, p, o, m) +# define BOOST_PP_FOR_98(s, p, o, m) BOOST_PP_FOR_98_C(BOOST_PP_BOOL(p(99, s)), s, p, o, m) +# define BOOST_PP_FOR_99(s, p, o, m) BOOST_PP_FOR_99_C(BOOST_PP_BOOL(p(100, s)), s, p, o, m) +# define BOOST_PP_FOR_100(s, p, o, m) BOOST_PP_FOR_100_C(BOOST_PP_BOOL(p(101, s)), s, p, o, m) +# define BOOST_PP_FOR_101(s, p, o, m) BOOST_PP_FOR_101_C(BOOST_PP_BOOL(p(102, s)), s, p, o, m) +# define BOOST_PP_FOR_102(s, p, o, m) BOOST_PP_FOR_102_C(BOOST_PP_BOOL(p(103, s)), s, p, o, m) +# define BOOST_PP_FOR_103(s, p, o, m) BOOST_PP_FOR_103_C(BOOST_PP_BOOL(p(104, s)), s, p, o, m) +# define BOOST_PP_FOR_104(s, p, o, m) BOOST_PP_FOR_104_C(BOOST_PP_BOOL(p(105, s)), s, p, o, m) +# define BOOST_PP_FOR_105(s, p, o, m) BOOST_PP_FOR_105_C(BOOST_PP_BOOL(p(106, s)), s, p, o, m) +# define BOOST_PP_FOR_106(s, p, o, m) BOOST_PP_FOR_106_C(BOOST_PP_BOOL(p(107, s)), s, p, o, m) +# define BOOST_PP_FOR_107(s, p, o, m) BOOST_PP_FOR_107_C(BOOST_PP_BOOL(p(108, s)), s, p, o, m) +# define BOOST_PP_FOR_108(s, p, o, m) BOOST_PP_FOR_108_C(BOOST_PP_BOOL(p(109, s)), s, p, o, m) +# define BOOST_PP_FOR_109(s, p, o, m) BOOST_PP_FOR_109_C(BOOST_PP_BOOL(p(110, s)), s, p, o, m) +# define BOOST_PP_FOR_110(s, p, o, m) BOOST_PP_FOR_110_C(BOOST_PP_BOOL(p(111, s)), s, p, o, m) +# define BOOST_PP_FOR_111(s, p, o, m) BOOST_PP_FOR_111_C(BOOST_PP_BOOL(p(112, s)), s, p, o, m) +# define BOOST_PP_FOR_112(s, p, o, m) BOOST_PP_FOR_112_C(BOOST_PP_BOOL(p(113, s)), s, p, o, m) +# define BOOST_PP_FOR_113(s, p, o, m) BOOST_PP_FOR_113_C(BOOST_PP_BOOL(p(114, s)), s, p, o, m) +# define BOOST_PP_FOR_114(s, p, o, m) BOOST_PP_FOR_114_C(BOOST_PP_BOOL(p(115, s)), s, p, o, m) +# define BOOST_PP_FOR_115(s, p, o, m) BOOST_PP_FOR_115_C(BOOST_PP_BOOL(p(116, s)), s, p, o, m) +# define BOOST_PP_FOR_116(s, p, o, m) BOOST_PP_FOR_116_C(BOOST_PP_BOOL(p(117, s)), s, p, o, m) +# define BOOST_PP_FOR_117(s, p, o, m) BOOST_PP_FOR_117_C(BOOST_PP_BOOL(p(118, s)), s, p, o, m) +# define BOOST_PP_FOR_118(s, p, o, m) BOOST_PP_FOR_118_C(BOOST_PP_BOOL(p(119, s)), s, p, o, m) +# define BOOST_PP_FOR_119(s, p, o, m) BOOST_PP_FOR_119_C(BOOST_PP_BOOL(p(120, s)), s, p, o, m) +# define BOOST_PP_FOR_120(s, p, o, m) BOOST_PP_FOR_120_C(BOOST_PP_BOOL(p(121, s)), s, p, o, m) +# define BOOST_PP_FOR_121(s, p, o, m) BOOST_PP_FOR_121_C(BOOST_PP_BOOL(p(122, s)), s, p, o, m) +# define BOOST_PP_FOR_122(s, p, o, m) BOOST_PP_FOR_122_C(BOOST_PP_BOOL(p(123, s)), s, p, o, m) +# define BOOST_PP_FOR_123(s, p, o, m) BOOST_PP_FOR_123_C(BOOST_PP_BOOL(p(124, s)), s, p, o, m) +# define BOOST_PP_FOR_124(s, p, o, m) BOOST_PP_FOR_124_C(BOOST_PP_BOOL(p(125, s)), s, p, o, m) +# define BOOST_PP_FOR_125(s, p, o, m) BOOST_PP_FOR_125_C(BOOST_PP_BOOL(p(126, s)), s, p, o, m) +# define BOOST_PP_FOR_126(s, p, o, m) BOOST_PP_FOR_126_C(BOOST_PP_BOOL(p(127, s)), s, p, o, m) +# define BOOST_PP_FOR_127(s, p, o, m) BOOST_PP_FOR_127_C(BOOST_PP_BOOL(p(128, s)), s, p, o, m) +# define BOOST_PP_FOR_128(s, p, o, m) BOOST_PP_FOR_128_C(BOOST_PP_BOOL(p(129, s)), s, p, o, m) +# define BOOST_PP_FOR_129(s, p, o, m) BOOST_PP_FOR_129_C(BOOST_PP_BOOL(p(130, s)), s, p, o, m) +# define BOOST_PP_FOR_130(s, p, o, m) BOOST_PP_FOR_130_C(BOOST_PP_BOOL(p(131, s)), s, p, o, m) +# define BOOST_PP_FOR_131(s, p, o, m) BOOST_PP_FOR_131_C(BOOST_PP_BOOL(p(132, s)), s, p, o, m) +# define BOOST_PP_FOR_132(s, p, o, m) BOOST_PP_FOR_132_C(BOOST_PP_BOOL(p(133, s)), s, p, o, m) +# define BOOST_PP_FOR_133(s, p, o, m) BOOST_PP_FOR_133_C(BOOST_PP_BOOL(p(134, s)), s, p, o, m) +# define BOOST_PP_FOR_134(s, p, o, m) BOOST_PP_FOR_134_C(BOOST_PP_BOOL(p(135, s)), s, p, o, m) +# define BOOST_PP_FOR_135(s, p, o, m) BOOST_PP_FOR_135_C(BOOST_PP_BOOL(p(136, s)), s, p, o, m) +# define BOOST_PP_FOR_136(s, p, o, m) BOOST_PP_FOR_136_C(BOOST_PP_BOOL(p(137, s)), s, p, o, m) +# define BOOST_PP_FOR_137(s, p, o, m) BOOST_PP_FOR_137_C(BOOST_PP_BOOL(p(138, s)), s, p, o, m) +# define BOOST_PP_FOR_138(s, p, o, m) BOOST_PP_FOR_138_C(BOOST_PP_BOOL(p(139, s)), s, p, o, m) +# define BOOST_PP_FOR_139(s, p, o, m) BOOST_PP_FOR_139_C(BOOST_PP_BOOL(p(140, s)), s, p, o, m) +# define BOOST_PP_FOR_140(s, p, o, m) BOOST_PP_FOR_140_C(BOOST_PP_BOOL(p(141, s)), s, p, o, m) +# define BOOST_PP_FOR_141(s, p, o, m) BOOST_PP_FOR_141_C(BOOST_PP_BOOL(p(142, s)), s, p, o, m) +# define BOOST_PP_FOR_142(s, p, o, m) BOOST_PP_FOR_142_C(BOOST_PP_BOOL(p(143, s)), s, p, o, m) +# define BOOST_PP_FOR_143(s, p, o, m) BOOST_PP_FOR_143_C(BOOST_PP_BOOL(p(144, s)), s, p, o, m) +# define BOOST_PP_FOR_144(s, p, o, m) BOOST_PP_FOR_144_C(BOOST_PP_BOOL(p(145, s)), s, p, o, m) +# define BOOST_PP_FOR_145(s, p, o, m) BOOST_PP_FOR_145_C(BOOST_PP_BOOL(p(146, s)), s, p, o, m) +# define BOOST_PP_FOR_146(s, p, o, m) BOOST_PP_FOR_146_C(BOOST_PP_BOOL(p(147, s)), s, p, o, m) +# define BOOST_PP_FOR_147(s, p, o, m) BOOST_PP_FOR_147_C(BOOST_PP_BOOL(p(148, s)), s, p, o, m) +# define BOOST_PP_FOR_148(s, p, o, m) BOOST_PP_FOR_148_C(BOOST_PP_BOOL(p(149, s)), s, p, o, m) +# define BOOST_PP_FOR_149(s, p, o, m) BOOST_PP_FOR_149_C(BOOST_PP_BOOL(p(150, s)), s, p, o, m) +# define BOOST_PP_FOR_150(s, p, o, m) BOOST_PP_FOR_150_C(BOOST_PP_BOOL(p(151, s)), s, p, o, m) +# define BOOST_PP_FOR_151(s, p, o, m) BOOST_PP_FOR_151_C(BOOST_PP_BOOL(p(152, s)), s, p, o, m) +# define BOOST_PP_FOR_152(s, p, o, m) BOOST_PP_FOR_152_C(BOOST_PP_BOOL(p(153, s)), s, p, o, m) +# define BOOST_PP_FOR_153(s, p, o, m) BOOST_PP_FOR_153_C(BOOST_PP_BOOL(p(154, s)), s, p, o, m) +# define BOOST_PP_FOR_154(s, p, o, m) BOOST_PP_FOR_154_C(BOOST_PP_BOOL(p(155, s)), s, p, o, m) +# define BOOST_PP_FOR_155(s, p, o, m) BOOST_PP_FOR_155_C(BOOST_PP_BOOL(p(156, s)), s, p, o, m) +# define BOOST_PP_FOR_156(s, p, o, m) BOOST_PP_FOR_156_C(BOOST_PP_BOOL(p(157, s)), s, p, o, m) +# define BOOST_PP_FOR_157(s, p, o, m) BOOST_PP_FOR_157_C(BOOST_PP_BOOL(p(158, s)), s, p, o, m) +# define BOOST_PP_FOR_158(s, p, o, m) BOOST_PP_FOR_158_C(BOOST_PP_BOOL(p(159, s)), s, p, o, m) +# define BOOST_PP_FOR_159(s, p, o, m) BOOST_PP_FOR_159_C(BOOST_PP_BOOL(p(160, s)), s, p, o, m) +# define BOOST_PP_FOR_160(s, p, o, m) BOOST_PP_FOR_160_C(BOOST_PP_BOOL(p(161, s)), s, p, o, m) +# define BOOST_PP_FOR_161(s, p, o, m) BOOST_PP_FOR_161_C(BOOST_PP_BOOL(p(162, s)), s, p, o, m) +# define BOOST_PP_FOR_162(s, p, o, m) BOOST_PP_FOR_162_C(BOOST_PP_BOOL(p(163, s)), s, p, o, m) +# define BOOST_PP_FOR_163(s, p, o, m) BOOST_PP_FOR_163_C(BOOST_PP_BOOL(p(164, s)), s, p, o, m) +# define BOOST_PP_FOR_164(s, p, o, m) BOOST_PP_FOR_164_C(BOOST_PP_BOOL(p(165, s)), s, p, o, m) +# define BOOST_PP_FOR_165(s, p, o, m) BOOST_PP_FOR_165_C(BOOST_PP_BOOL(p(166, s)), s, p, o, m) +# define BOOST_PP_FOR_166(s, p, o, m) BOOST_PP_FOR_166_C(BOOST_PP_BOOL(p(167, s)), s, p, o, m) +# define BOOST_PP_FOR_167(s, p, o, m) BOOST_PP_FOR_167_C(BOOST_PP_BOOL(p(168, s)), s, p, o, m) +# define BOOST_PP_FOR_168(s, p, o, m) BOOST_PP_FOR_168_C(BOOST_PP_BOOL(p(169, s)), s, p, o, m) +# define BOOST_PP_FOR_169(s, p, o, m) BOOST_PP_FOR_169_C(BOOST_PP_BOOL(p(170, s)), s, p, o, m) +# define BOOST_PP_FOR_170(s, p, o, m) BOOST_PP_FOR_170_C(BOOST_PP_BOOL(p(171, s)), s, p, o, m) +# define BOOST_PP_FOR_171(s, p, o, m) BOOST_PP_FOR_171_C(BOOST_PP_BOOL(p(172, s)), s, p, o, m) +# define BOOST_PP_FOR_172(s, p, o, m) BOOST_PP_FOR_172_C(BOOST_PP_BOOL(p(173, s)), s, p, o, m) +# define BOOST_PP_FOR_173(s, p, o, m) BOOST_PP_FOR_173_C(BOOST_PP_BOOL(p(174, s)), s, p, o, m) +# define BOOST_PP_FOR_174(s, p, o, m) BOOST_PP_FOR_174_C(BOOST_PP_BOOL(p(175, s)), s, p, o, m) +# define BOOST_PP_FOR_175(s, p, o, m) BOOST_PP_FOR_175_C(BOOST_PP_BOOL(p(176, s)), s, p, o, m) +# define BOOST_PP_FOR_176(s, p, o, m) BOOST_PP_FOR_176_C(BOOST_PP_BOOL(p(177, s)), s, p, o, m) +# define BOOST_PP_FOR_177(s, p, o, m) BOOST_PP_FOR_177_C(BOOST_PP_BOOL(p(178, s)), s, p, o, m) +# define BOOST_PP_FOR_178(s, p, o, m) BOOST_PP_FOR_178_C(BOOST_PP_BOOL(p(179, s)), s, p, o, m) +# define BOOST_PP_FOR_179(s, p, o, m) BOOST_PP_FOR_179_C(BOOST_PP_BOOL(p(180, s)), s, p, o, m) +# define BOOST_PP_FOR_180(s, p, o, m) BOOST_PP_FOR_180_C(BOOST_PP_BOOL(p(181, s)), s, p, o, m) +# define BOOST_PP_FOR_181(s, p, o, m) BOOST_PP_FOR_181_C(BOOST_PP_BOOL(p(182, s)), s, p, o, m) +# define BOOST_PP_FOR_182(s, p, o, m) BOOST_PP_FOR_182_C(BOOST_PP_BOOL(p(183, s)), s, p, o, m) +# define BOOST_PP_FOR_183(s, p, o, m) BOOST_PP_FOR_183_C(BOOST_PP_BOOL(p(184, s)), s, p, o, m) +# define BOOST_PP_FOR_184(s, p, o, m) BOOST_PP_FOR_184_C(BOOST_PP_BOOL(p(185, s)), s, p, o, m) +# define BOOST_PP_FOR_185(s, p, o, m) BOOST_PP_FOR_185_C(BOOST_PP_BOOL(p(186, s)), s, p, o, m) +# define BOOST_PP_FOR_186(s, p, o, m) BOOST_PP_FOR_186_C(BOOST_PP_BOOL(p(187, s)), s, p, o, m) +# define BOOST_PP_FOR_187(s, p, o, m) BOOST_PP_FOR_187_C(BOOST_PP_BOOL(p(188, s)), s, p, o, m) +# define BOOST_PP_FOR_188(s, p, o, m) BOOST_PP_FOR_188_C(BOOST_PP_BOOL(p(189, s)), s, p, o, m) +# define BOOST_PP_FOR_189(s, p, o, m) BOOST_PP_FOR_189_C(BOOST_PP_BOOL(p(190, s)), s, p, o, m) +# define BOOST_PP_FOR_190(s, p, o, m) BOOST_PP_FOR_190_C(BOOST_PP_BOOL(p(191, s)), s, p, o, m) +# define BOOST_PP_FOR_191(s, p, o, m) BOOST_PP_FOR_191_C(BOOST_PP_BOOL(p(192, s)), s, p, o, m) +# define BOOST_PP_FOR_192(s, p, o, m) BOOST_PP_FOR_192_C(BOOST_PP_BOOL(p(193, s)), s, p, o, m) +# define BOOST_PP_FOR_193(s, p, o, m) BOOST_PP_FOR_193_C(BOOST_PP_BOOL(p(194, s)), s, p, o, m) +# define BOOST_PP_FOR_194(s, p, o, m) BOOST_PP_FOR_194_C(BOOST_PP_BOOL(p(195, s)), s, p, o, m) +# define BOOST_PP_FOR_195(s, p, o, m) BOOST_PP_FOR_195_C(BOOST_PP_BOOL(p(196, s)), s, p, o, m) +# define BOOST_PP_FOR_196(s, p, o, m) BOOST_PP_FOR_196_C(BOOST_PP_BOOL(p(197, s)), s, p, o, m) +# define BOOST_PP_FOR_197(s, p, o, m) BOOST_PP_FOR_197_C(BOOST_PP_BOOL(p(198, s)), s, p, o, m) +# define BOOST_PP_FOR_198(s, p, o, m) BOOST_PP_FOR_198_C(BOOST_PP_BOOL(p(199, s)), s, p, o, m) +# define BOOST_PP_FOR_199(s, p, o, m) BOOST_PP_FOR_199_C(BOOST_PP_BOOL(p(200, s)), s, p, o, m) +# define BOOST_PP_FOR_200(s, p, o, m) BOOST_PP_FOR_200_C(BOOST_PP_BOOL(p(201, s)), s, p, o, m) +# define BOOST_PP_FOR_201(s, p, o, m) BOOST_PP_FOR_201_C(BOOST_PP_BOOL(p(202, s)), s, p, o, m) +# define BOOST_PP_FOR_202(s, p, o, m) BOOST_PP_FOR_202_C(BOOST_PP_BOOL(p(203, s)), s, p, o, m) +# define BOOST_PP_FOR_203(s, p, o, m) BOOST_PP_FOR_203_C(BOOST_PP_BOOL(p(204, s)), s, p, o, m) +# define BOOST_PP_FOR_204(s, p, o, m) BOOST_PP_FOR_204_C(BOOST_PP_BOOL(p(205, s)), s, p, o, m) +# define BOOST_PP_FOR_205(s, p, o, m) BOOST_PP_FOR_205_C(BOOST_PP_BOOL(p(206, s)), s, p, o, m) +# define BOOST_PP_FOR_206(s, p, o, m) BOOST_PP_FOR_206_C(BOOST_PP_BOOL(p(207, s)), s, p, o, m) +# define BOOST_PP_FOR_207(s, p, o, m) BOOST_PP_FOR_207_C(BOOST_PP_BOOL(p(208, s)), s, p, o, m) +# define BOOST_PP_FOR_208(s, p, o, m) BOOST_PP_FOR_208_C(BOOST_PP_BOOL(p(209, s)), s, p, o, m) +# define BOOST_PP_FOR_209(s, p, o, m) BOOST_PP_FOR_209_C(BOOST_PP_BOOL(p(210, s)), s, p, o, m) +# define BOOST_PP_FOR_210(s, p, o, m) BOOST_PP_FOR_210_C(BOOST_PP_BOOL(p(211, s)), s, p, o, m) +# define BOOST_PP_FOR_211(s, p, o, m) BOOST_PP_FOR_211_C(BOOST_PP_BOOL(p(212, s)), s, p, o, m) +# define BOOST_PP_FOR_212(s, p, o, m) BOOST_PP_FOR_212_C(BOOST_PP_BOOL(p(213, s)), s, p, o, m) +# define BOOST_PP_FOR_213(s, p, o, m) BOOST_PP_FOR_213_C(BOOST_PP_BOOL(p(214, s)), s, p, o, m) +# define BOOST_PP_FOR_214(s, p, o, m) BOOST_PP_FOR_214_C(BOOST_PP_BOOL(p(215, s)), s, p, o, m) +# define BOOST_PP_FOR_215(s, p, o, m) BOOST_PP_FOR_215_C(BOOST_PP_BOOL(p(216, s)), s, p, o, m) +# define BOOST_PP_FOR_216(s, p, o, m) BOOST_PP_FOR_216_C(BOOST_PP_BOOL(p(217, s)), s, p, o, m) +# define BOOST_PP_FOR_217(s, p, o, m) BOOST_PP_FOR_217_C(BOOST_PP_BOOL(p(218, s)), s, p, o, m) +# define BOOST_PP_FOR_218(s, p, o, m) BOOST_PP_FOR_218_C(BOOST_PP_BOOL(p(219, s)), s, p, o, m) +# define BOOST_PP_FOR_219(s, p, o, m) BOOST_PP_FOR_219_C(BOOST_PP_BOOL(p(220, s)), s, p, o, m) +# define BOOST_PP_FOR_220(s, p, o, m) BOOST_PP_FOR_220_C(BOOST_PP_BOOL(p(221, s)), s, p, o, m) +# define BOOST_PP_FOR_221(s, p, o, m) BOOST_PP_FOR_221_C(BOOST_PP_BOOL(p(222, s)), s, p, o, m) +# define BOOST_PP_FOR_222(s, p, o, m) BOOST_PP_FOR_222_C(BOOST_PP_BOOL(p(223, s)), s, p, o, m) +# define BOOST_PP_FOR_223(s, p, o, m) BOOST_PP_FOR_223_C(BOOST_PP_BOOL(p(224, s)), s, p, o, m) +# define BOOST_PP_FOR_224(s, p, o, m) BOOST_PP_FOR_224_C(BOOST_PP_BOOL(p(225, s)), s, p, o, m) +# define BOOST_PP_FOR_225(s, p, o, m) BOOST_PP_FOR_225_C(BOOST_PP_BOOL(p(226, s)), s, p, o, m) +# define BOOST_PP_FOR_226(s, p, o, m) BOOST_PP_FOR_226_C(BOOST_PP_BOOL(p(227, s)), s, p, o, m) +# define BOOST_PP_FOR_227(s, p, o, m) BOOST_PP_FOR_227_C(BOOST_PP_BOOL(p(228, s)), s, p, o, m) +# define BOOST_PP_FOR_228(s, p, o, m) BOOST_PP_FOR_228_C(BOOST_PP_BOOL(p(229, s)), s, p, o, m) +# define BOOST_PP_FOR_229(s, p, o, m) BOOST_PP_FOR_229_C(BOOST_PP_BOOL(p(230, s)), s, p, o, m) +# define BOOST_PP_FOR_230(s, p, o, m) BOOST_PP_FOR_230_C(BOOST_PP_BOOL(p(231, s)), s, p, o, m) +# define BOOST_PP_FOR_231(s, p, o, m) BOOST_PP_FOR_231_C(BOOST_PP_BOOL(p(232, s)), s, p, o, m) +# define BOOST_PP_FOR_232(s, p, o, m) BOOST_PP_FOR_232_C(BOOST_PP_BOOL(p(233, s)), s, p, o, m) +# define BOOST_PP_FOR_233(s, p, o, m) BOOST_PP_FOR_233_C(BOOST_PP_BOOL(p(234, s)), s, p, o, m) +# define BOOST_PP_FOR_234(s, p, o, m) BOOST_PP_FOR_234_C(BOOST_PP_BOOL(p(235, s)), s, p, o, m) +# define BOOST_PP_FOR_235(s, p, o, m) BOOST_PP_FOR_235_C(BOOST_PP_BOOL(p(236, s)), s, p, o, m) +# define BOOST_PP_FOR_236(s, p, o, m) BOOST_PP_FOR_236_C(BOOST_PP_BOOL(p(237, s)), s, p, o, m) +# define BOOST_PP_FOR_237(s, p, o, m) BOOST_PP_FOR_237_C(BOOST_PP_BOOL(p(238, s)), s, p, o, m) +# define BOOST_PP_FOR_238(s, p, o, m) BOOST_PP_FOR_238_C(BOOST_PP_BOOL(p(239, s)), s, p, o, m) +# define BOOST_PP_FOR_239(s, p, o, m) BOOST_PP_FOR_239_C(BOOST_PP_BOOL(p(240, s)), s, p, o, m) +# define BOOST_PP_FOR_240(s, p, o, m) BOOST_PP_FOR_240_C(BOOST_PP_BOOL(p(241, s)), s, p, o, m) +# define BOOST_PP_FOR_241(s, p, o, m) BOOST_PP_FOR_241_C(BOOST_PP_BOOL(p(242, s)), s, p, o, m) +# define BOOST_PP_FOR_242(s, p, o, m) BOOST_PP_FOR_242_C(BOOST_PP_BOOL(p(243, s)), s, p, o, m) +# define BOOST_PP_FOR_243(s, p, o, m) BOOST_PP_FOR_243_C(BOOST_PP_BOOL(p(244, s)), s, p, o, m) +# define BOOST_PP_FOR_244(s, p, o, m) BOOST_PP_FOR_244_C(BOOST_PP_BOOL(p(245, s)), s, p, o, m) +# define BOOST_PP_FOR_245(s, p, o, m) BOOST_PP_FOR_245_C(BOOST_PP_BOOL(p(246, s)), s, p, o, m) +# define BOOST_PP_FOR_246(s, p, o, m) BOOST_PP_FOR_246_C(BOOST_PP_BOOL(p(247, s)), s, p, o, m) +# define BOOST_PP_FOR_247(s, p, o, m) BOOST_PP_FOR_247_C(BOOST_PP_BOOL(p(248, s)), s, p, o, m) +# define BOOST_PP_FOR_248(s, p, o, m) BOOST_PP_FOR_248_C(BOOST_PP_BOOL(p(249, s)), s, p, o, m) +# define BOOST_PP_FOR_249(s, p, o, m) BOOST_PP_FOR_249_C(BOOST_PP_BOOL(p(250, s)), s, p, o, m) +# define BOOST_PP_FOR_250(s, p, o, m) BOOST_PP_FOR_250_C(BOOST_PP_BOOL(p(251, s)), s, p, o, m) +# define BOOST_PP_FOR_251(s, p, o, m) BOOST_PP_FOR_251_C(BOOST_PP_BOOL(p(252, s)), s, p, o, m) +# define BOOST_PP_FOR_252(s, p, o, m) BOOST_PP_FOR_252_C(BOOST_PP_BOOL(p(253, s)), s, p, o, m) +# define BOOST_PP_FOR_253(s, p, o, m) BOOST_PP_FOR_253_C(BOOST_PP_BOOL(p(254, s)), s, p, o, m) +# define BOOST_PP_FOR_254(s, p, o, m) BOOST_PP_FOR_254_C(BOOST_PP_BOOL(p(255, s)), s, p, o, m) +# define BOOST_PP_FOR_255(s, p, o, m) BOOST_PP_FOR_255_C(BOOST_PP_BOOL(p(256, s)), s, p, o, m) +# define BOOST_PP_FOR_256(s, p, o, m) BOOST_PP_FOR_256_C(BOOST_PP_BOOL(p(257, s)), s, p, o, m) +# +# define BOOST_PP_FOR_1_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(2, s) BOOST_PP_IIF(c, BOOST_PP_FOR_2, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(2, s), p, o, m) +# define BOOST_PP_FOR_2_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(3, s) BOOST_PP_IIF(c, BOOST_PP_FOR_3, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(3, s), p, o, m) +# define BOOST_PP_FOR_3_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(4, s) BOOST_PP_IIF(c, BOOST_PP_FOR_4, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(4, s), p, o, m) +# define BOOST_PP_FOR_4_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(5, s) BOOST_PP_IIF(c, BOOST_PP_FOR_5, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(5, s), p, o, m) +# define BOOST_PP_FOR_5_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(6, s) BOOST_PP_IIF(c, BOOST_PP_FOR_6, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(6, s), p, o, m) +# define BOOST_PP_FOR_6_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(7, s) BOOST_PP_IIF(c, BOOST_PP_FOR_7, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(7, s), p, o, m) +# define BOOST_PP_FOR_7_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(8, s) BOOST_PP_IIF(c, BOOST_PP_FOR_8, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(8, s), p, o, m) +# define BOOST_PP_FOR_8_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(9, s) BOOST_PP_IIF(c, BOOST_PP_FOR_9, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(9, s), p, o, m) +# define BOOST_PP_FOR_9_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(10, s) BOOST_PP_IIF(c, BOOST_PP_FOR_10, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(10, s), p, o, m) +# define BOOST_PP_FOR_10_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(11, s) BOOST_PP_IIF(c, BOOST_PP_FOR_11, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(11, s), p, o, m) +# define BOOST_PP_FOR_11_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(12, s) BOOST_PP_IIF(c, BOOST_PP_FOR_12, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(12, s), p, o, m) +# define BOOST_PP_FOR_12_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(13, s) BOOST_PP_IIF(c, BOOST_PP_FOR_13, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(13, s), p, o, m) +# define BOOST_PP_FOR_13_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(14, s) BOOST_PP_IIF(c, BOOST_PP_FOR_14, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(14, s), p, o, m) +# define BOOST_PP_FOR_14_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(15, s) BOOST_PP_IIF(c, BOOST_PP_FOR_15, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(15, s), p, o, m) +# define BOOST_PP_FOR_15_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(16, s) BOOST_PP_IIF(c, BOOST_PP_FOR_16, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(16, s), p, o, m) +# define BOOST_PP_FOR_16_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(17, s) BOOST_PP_IIF(c, BOOST_PP_FOR_17, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(17, s), p, o, m) +# define BOOST_PP_FOR_17_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(18, s) BOOST_PP_IIF(c, BOOST_PP_FOR_18, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(18, s), p, o, m) +# define BOOST_PP_FOR_18_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(19, s) BOOST_PP_IIF(c, BOOST_PP_FOR_19, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(19, s), p, o, m) +# define BOOST_PP_FOR_19_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(20, s) BOOST_PP_IIF(c, BOOST_PP_FOR_20, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(20, s), p, o, m) +# define BOOST_PP_FOR_20_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(21, s) BOOST_PP_IIF(c, BOOST_PP_FOR_21, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(21, s), p, o, m) +# define BOOST_PP_FOR_21_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(22, s) BOOST_PP_IIF(c, BOOST_PP_FOR_22, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(22, s), p, o, m) +# define BOOST_PP_FOR_22_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(23, s) BOOST_PP_IIF(c, BOOST_PP_FOR_23, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(23, s), p, o, m) +# define BOOST_PP_FOR_23_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(24, s) BOOST_PP_IIF(c, BOOST_PP_FOR_24, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(24, s), p, o, m) +# define BOOST_PP_FOR_24_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(25, s) BOOST_PP_IIF(c, BOOST_PP_FOR_25, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(25, s), p, o, m) +# define BOOST_PP_FOR_25_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(26, s) BOOST_PP_IIF(c, BOOST_PP_FOR_26, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(26, s), p, o, m) +# define BOOST_PP_FOR_26_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(27, s) BOOST_PP_IIF(c, BOOST_PP_FOR_27, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(27, s), p, o, m) +# define BOOST_PP_FOR_27_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(28, s) BOOST_PP_IIF(c, BOOST_PP_FOR_28, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(28, s), p, o, m) +# define BOOST_PP_FOR_28_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(29, s) BOOST_PP_IIF(c, BOOST_PP_FOR_29, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(29, s), p, o, m) +# define BOOST_PP_FOR_29_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(30, s) BOOST_PP_IIF(c, BOOST_PP_FOR_30, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(30, s), p, o, m) +# define BOOST_PP_FOR_30_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(31, s) BOOST_PP_IIF(c, BOOST_PP_FOR_31, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(31, s), p, o, m) +# define BOOST_PP_FOR_31_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(32, s) BOOST_PP_IIF(c, BOOST_PP_FOR_32, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(32, s), p, o, m) +# define BOOST_PP_FOR_32_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(33, s) BOOST_PP_IIF(c, BOOST_PP_FOR_33, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(33, s), p, o, m) +# define BOOST_PP_FOR_33_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(34, s) BOOST_PP_IIF(c, BOOST_PP_FOR_34, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(34, s), p, o, m) +# define BOOST_PP_FOR_34_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(35, s) BOOST_PP_IIF(c, BOOST_PP_FOR_35, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(35, s), p, o, m) +# define BOOST_PP_FOR_35_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(36, s) BOOST_PP_IIF(c, BOOST_PP_FOR_36, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(36, s), p, o, m) +# define BOOST_PP_FOR_36_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(37, s) BOOST_PP_IIF(c, BOOST_PP_FOR_37, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(37, s), p, o, m) +# define BOOST_PP_FOR_37_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(38, s) BOOST_PP_IIF(c, BOOST_PP_FOR_38, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(38, s), p, o, m) +# define BOOST_PP_FOR_38_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(39, s) BOOST_PP_IIF(c, BOOST_PP_FOR_39, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(39, s), p, o, m) +# define BOOST_PP_FOR_39_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(40, s) BOOST_PP_IIF(c, BOOST_PP_FOR_40, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(40, s), p, o, m) +# define BOOST_PP_FOR_40_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(41, s) BOOST_PP_IIF(c, BOOST_PP_FOR_41, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(41, s), p, o, m) +# define BOOST_PP_FOR_41_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(42, s) BOOST_PP_IIF(c, BOOST_PP_FOR_42, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(42, s), p, o, m) +# define BOOST_PP_FOR_42_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(43, s) BOOST_PP_IIF(c, BOOST_PP_FOR_43, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(43, s), p, o, m) +# define BOOST_PP_FOR_43_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(44, s) BOOST_PP_IIF(c, BOOST_PP_FOR_44, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(44, s), p, o, m) +# define BOOST_PP_FOR_44_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(45, s) BOOST_PP_IIF(c, BOOST_PP_FOR_45, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(45, s), p, o, m) +# define BOOST_PP_FOR_45_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(46, s) BOOST_PP_IIF(c, BOOST_PP_FOR_46, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(46, s), p, o, m) +# define BOOST_PP_FOR_46_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(47, s) BOOST_PP_IIF(c, BOOST_PP_FOR_47, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(47, s), p, o, m) +# define BOOST_PP_FOR_47_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(48, s) BOOST_PP_IIF(c, BOOST_PP_FOR_48, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(48, s), p, o, m) +# define BOOST_PP_FOR_48_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(49, s) BOOST_PP_IIF(c, BOOST_PP_FOR_49, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(49, s), p, o, m) +# define BOOST_PP_FOR_49_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(50, s) BOOST_PP_IIF(c, BOOST_PP_FOR_50, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(50, s), p, o, m) +# define BOOST_PP_FOR_50_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(51, s) BOOST_PP_IIF(c, BOOST_PP_FOR_51, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(51, s), p, o, m) +# define BOOST_PP_FOR_51_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(52, s) BOOST_PP_IIF(c, BOOST_PP_FOR_52, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(52, s), p, o, m) +# define BOOST_PP_FOR_52_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(53, s) BOOST_PP_IIF(c, BOOST_PP_FOR_53, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(53, s), p, o, m) +# define BOOST_PP_FOR_53_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(54, s) BOOST_PP_IIF(c, BOOST_PP_FOR_54, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(54, s), p, o, m) +# define BOOST_PP_FOR_54_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(55, s) BOOST_PP_IIF(c, BOOST_PP_FOR_55, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(55, s), p, o, m) +# define BOOST_PP_FOR_55_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(56, s) BOOST_PP_IIF(c, BOOST_PP_FOR_56, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(56, s), p, o, m) +# define BOOST_PP_FOR_56_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(57, s) BOOST_PP_IIF(c, BOOST_PP_FOR_57, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(57, s), p, o, m) +# define BOOST_PP_FOR_57_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(58, s) BOOST_PP_IIF(c, BOOST_PP_FOR_58, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(58, s), p, o, m) +# define BOOST_PP_FOR_58_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(59, s) BOOST_PP_IIF(c, BOOST_PP_FOR_59, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(59, s), p, o, m) +# define BOOST_PP_FOR_59_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(60, s) BOOST_PP_IIF(c, BOOST_PP_FOR_60, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(60, s), p, o, m) +# define BOOST_PP_FOR_60_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(61, s) BOOST_PP_IIF(c, BOOST_PP_FOR_61, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(61, s), p, o, m) +# define BOOST_PP_FOR_61_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(62, s) BOOST_PP_IIF(c, BOOST_PP_FOR_62, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(62, s), p, o, m) +# define BOOST_PP_FOR_62_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(63, s) BOOST_PP_IIF(c, BOOST_PP_FOR_63, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(63, s), p, o, m) +# define BOOST_PP_FOR_63_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(64, s) BOOST_PP_IIF(c, BOOST_PP_FOR_64, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(64, s), p, o, m) +# define BOOST_PP_FOR_64_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(65, s) BOOST_PP_IIF(c, BOOST_PP_FOR_65, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(65, s), p, o, m) +# define BOOST_PP_FOR_65_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(66, s) BOOST_PP_IIF(c, BOOST_PP_FOR_66, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(66, s), p, o, m) +# define BOOST_PP_FOR_66_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(67, s) BOOST_PP_IIF(c, BOOST_PP_FOR_67, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(67, s), p, o, m) +# define BOOST_PP_FOR_67_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(68, s) BOOST_PP_IIF(c, BOOST_PP_FOR_68, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(68, s), p, o, m) +# define BOOST_PP_FOR_68_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(69, s) BOOST_PP_IIF(c, BOOST_PP_FOR_69, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(69, s), p, o, m) +# define BOOST_PP_FOR_69_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(70, s) BOOST_PP_IIF(c, BOOST_PP_FOR_70, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(70, s), p, o, m) +# define BOOST_PP_FOR_70_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(71, s) BOOST_PP_IIF(c, BOOST_PP_FOR_71, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(71, s), p, o, m) +# define BOOST_PP_FOR_71_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(72, s) BOOST_PP_IIF(c, BOOST_PP_FOR_72, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(72, s), p, o, m) +# define BOOST_PP_FOR_72_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(73, s) BOOST_PP_IIF(c, BOOST_PP_FOR_73, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(73, s), p, o, m) +# define BOOST_PP_FOR_73_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(74, s) BOOST_PP_IIF(c, BOOST_PP_FOR_74, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(74, s), p, o, m) +# define BOOST_PP_FOR_74_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(75, s) BOOST_PP_IIF(c, BOOST_PP_FOR_75, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(75, s), p, o, m) +# define BOOST_PP_FOR_75_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(76, s) BOOST_PP_IIF(c, BOOST_PP_FOR_76, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(76, s), p, o, m) +# define BOOST_PP_FOR_76_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(77, s) BOOST_PP_IIF(c, BOOST_PP_FOR_77, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(77, s), p, o, m) +# define BOOST_PP_FOR_77_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(78, s) BOOST_PP_IIF(c, BOOST_PP_FOR_78, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(78, s), p, o, m) +# define BOOST_PP_FOR_78_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(79, s) BOOST_PP_IIF(c, BOOST_PP_FOR_79, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(79, s), p, o, m) +# define BOOST_PP_FOR_79_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(80, s) BOOST_PP_IIF(c, BOOST_PP_FOR_80, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(80, s), p, o, m) +# define BOOST_PP_FOR_80_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(81, s) BOOST_PP_IIF(c, BOOST_PP_FOR_81, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(81, s), p, o, m) +# define BOOST_PP_FOR_81_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(82, s) BOOST_PP_IIF(c, BOOST_PP_FOR_82, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(82, s), p, o, m) +# define BOOST_PP_FOR_82_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(83, s) BOOST_PP_IIF(c, BOOST_PP_FOR_83, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(83, s), p, o, m) +# define BOOST_PP_FOR_83_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(84, s) BOOST_PP_IIF(c, BOOST_PP_FOR_84, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(84, s), p, o, m) +# define BOOST_PP_FOR_84_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(85, s) BOOST_PP_IIF(c, BOOST_PP_FOR_85, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(85, s), p, o, m) +# define BOOST_PP_FOR_85_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(86, s) BOOST_PP_IIF(c, BOOST_PP_FOR_86, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(86, s), p, o, m) +# define BOOST_PP_FOR_86_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(87, s) BOOST_PP_IIF(c, BOOST_PP_FOR_87, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(87, s), p, o, m) +# define BOOST_PP_FOR_87_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(88, s) BOOST_PP_IIF(c, BOOST_PP_FOR_88, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(88, s), p, o, m) +# define BOOST_PP_FOR_88_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(89, s) BOOST_PP_IIF(c, BOOST_PP_FOR_89, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(89, s), p, o, m) +# define BOOST_PP_FOR_89_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(90, s) BOOST_PP_IIF(c, BOOST_PP_FOR_90, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(90, s), p, o, m) +# define BOOST_PP_FOR_90_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(91, s) BOOST_PP_IIF(c, BOOST_PP_FOR_91, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(91, s), p, o, m) +# define BOOST_PP_FOR_91_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(92, s) BOOST_PP_IIF(c, BOOST_PP_FOR_92, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(92, s), p, o, m) +# define BOOST_PP_FOR_92_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(93, s) BOOST_PP_IIF(c, BOOST_PP_FOR_93, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(93, s), p, o, m) +# define BOOST_PP_FOR_93_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(94, s) BOOST_PP_IIF(c, BOOST_PP_FOR_94, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(94, s), p, o, m) +# define BOOST_PP_FOR_94_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(95, s) BOOST_PP_IIF(c, BOOST_PP_FOR_95, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(95, s), p, o, m) +# define BOOST_PP_FOR_95_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(96, s) BOOST_PP_IIF(c, BOOST_PP_FOR_96, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(96, s), p, o, m) +# define BOOST_PP_FOR_96_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(97, s) BOOST_PP_IIF(c, BOOST_PP_FOR_97, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(97, s), p, o, m) +# define BOOST_PP_FOR_97_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(98, s) BOOST_PP_IIF(c, BOOST_PP_FOR_98, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(98, s), p, o, m) +# define BOOST_PP_FOR_98_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(99, s) BOOST_PP_IIF(c, BOOST_PP_FOR_99, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(99, s), p, o, m) +# define BOOST_PP_FOR_99_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(100, s) BOOST_PP_IIF(c, BOOST_PP_FOR_100, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(100, s), p, o, m) +# define BOOST_PP_FOR_100_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(101, s) BOOST_PP_IIF(c, BOOST_PP_FOR_101, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(101, s), p, o, m) +# define BOOST_PP_FOR_101_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(102, s) BOOST_PP_IIF(c, BOOST_PP_FOR_102, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(102, s), p, o, m) +# define BOOST_PP_FOR_102_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(103, s) BOOST_PP_IIF(c, BOOST_PP_FOR_103, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(103, s), p, o, m) +# define BOOST_PP_FOR_103_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(104, s) BOOST_PP_IIF(c, BOOST_PP_FOR_104, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(104, s), p, o, m) +# define BOOST_PP_FOR_104_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(105, s) BOOST_PP_IIF(c, BOOST_PP_FOR_105, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(105, s), p, o, m) +# define BOOST_PP_FOR_105_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(106, s) BOOST_PP_IIF(c, BOOST_PP_FOR_106, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(106, s), p, o, m) +# define BOOST_PP_FOR_106_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(107, s) BOOST_PP_IIF(c, BOOST_PP_FOR_107, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(107, s), p, o, m) +# define BOOST_PP_FOR_107_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(108, s) BOOST_PP_IIF(c, BOOST_PP_FOR_108, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(108, s), p, o, m) +# define BOOST_PP_FOR_108_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(109, s) BOOST_PP_IIF(c, BOOST_PP_FOR_109, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(109, s), p, o, m) +# define BOOST_PP_FOR_109_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(110, s) BOOST_PP_IIF(c, BOOST_PP_FOR_110, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(110, s), p, o, m) +# define BOOST_PP_FOR_110_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(111, s) BOOST_PP_IIF(c, BOOST_PP_FOR_111, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(111, s), p, o, m) +# define BOOST_PP_FOR_111_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(112, s) BOOST_PP_IIF(c, BOOST_PP_FOR_112, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(112, s), p, o, m) +# define BOOST_PP_FOR_112_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(113, s) BOOST_PP_IIF(c, BOOST_PP_FOR_113, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(113, s), p, o, m) +# define BOOST_PP_FOR_113_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(114, s) BOOST_PP_IIF(c, BOOST_PP_FOR_114, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(114, s), p, o, m) +# define BOOST_PP_FOR_114_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(115, s) BOOST_PP_IIF(c, BOOST_PP_FOR_115, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(115, s), p, o, m) +# define BOOST_PP_FOR_115_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(116, s) BOOST_PP_IIF(c, BOOST_PP_FOR_116, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(116, s), p, o, m) +# define BOOST_PP_FOR_116_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(117, s) BOOST_PP_IIF(c, BOOST_PP_FOR_117, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(117, s), p, o, m) +# define BOOST_PP_FOR_117_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(118, s) BOOST_PP_IIF(c, BOOST_PP_FOR_118, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(118, s), p, o, m) +# define BOOST_PP_FOR_118_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(119, s) BOOST_PP_IIF(c, BOOST_PP_FOR_119, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(119, s), p, o, m) +# define BOOST_PP_FOR_119_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(120, s) BOOST_PP_IIF(c, BOOST_PP_FOR_120, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(120, s), p, o, m) +# define BOOST_PP_FOR_120_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(121, s) BOOST_PP_IIF(c, BOOST_PP_FOR_121, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(121, s), p, o, m) +# define BOOST_PP_FOR_121_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(122, s) BOOST_PP_IIF(c, BOOST_PP_FOR_122, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(122, s), p, o, m) +# define BOOST_PP_FOR_122_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(123, s) BOOST_PP_IIF(c, BOOST_PP_FOR_123, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(123, s), p, o, m) +# define BOOST_PP_FOR_123_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(124, s) BOOST_PP_IIF(c, BOOST_PP_FOR_124, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(124, s), p, o, m) +# define BOOST_PP_FOR_124_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(125, s) BOOST_PP_IIF(c, BOOST_PP_FOR_125, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(125, s), p, o, m) +# define BOOST_PP_FOR_125_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(126, s) BOOST_PP_IIF(c, BOOST_PP_FOR_126, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(126, s), p, o, m) +# define BOOST_PP_FOR_126_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(127, s) BOOST_PP_IIF(c, BOOST_PP_FOR_127, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(127, s), p, o, m) +# define BOOST_PP_FOR_127_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(128, s) BOOST_PP_IIF(c, BOOST_PP_FOR_128, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(128, s), p, o, m) +# define BOOST_PP_FOR_128_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(129, s) BOOST_PP_IIF(c, BOOST_PP_FOR_129, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(129, s), p, o, m) +# define BOOST_PP_FOR_129_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(130, s) BOOST_PP_IIF(c, BOOST_PP_FOR_130, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(130, s), p, o, m) +# define BOOST_PP_FOR_130_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(131, s) BOOST_PP_IIF(c, BOOST_PP_FOR_131, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(131, s), p, o, m) +# define BOOST_PP_FOR_131_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(132, s) BOOST_PP_IIF(c, BOOST_PP_FOR_132, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(132, s), p, o, m) +# define BOOST_PP_FOR_132_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(133, s) BOOST_PP_IIF(c, BOOST_PP_FOR_133, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(133, s), p, o, m) +# define BOOST_PP_FOR_133_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(134, s) BOOST_PP_IIF(c, BOOST_PP_FOR_134, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(134, s), p, o, m) +# define BOOST_PP_FOR_134_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(135, s) BOOST_PP_IIF(c, BOOST_PP_FOR_135, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(135, s), p, o, m) +# define BOOST_PP_FOR_135_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(136, s) BOOST_PP_IIF(c, BOOST_PP_FOR_136, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(136, s), p, o, m) +# define BOOST_PP_FOR_136_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(137, s) BOOST_PP_IIF(c, BOOST_PP_FOR_137, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(137, s), p, o, m) +# define BOOST_PP_FOR_137_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(138, s) BOOST_PP_IIF(c, BOOST_PP_FOR_138, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(138, s), p, o, m) +# define BOOST_PP_FOR_138_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(139, s) BOOST_PP_IIF(c, BOOST_PP_FOR_139, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(139, s), p, o, m) +# define BOOST_PP_FOR_139_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(140, s) BOOST_PP_IIF(c, BOOST_PP_FOR_140, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(140, s), p, o, m) +# define BOOST_PP_FOR_140_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(141, s) BOOST_PP_IIF(c, BOOST_PP_FOR_141, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(141, s), p, o, m) +# define BOOST_PP_FOR_141_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(142, s) BOOST_PP_IIF(c, BOOST_PP_FOR_142, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(142, s), p, o, m) +# define BOOST_PP_FOR_142_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(143, s) BOOST_PP_IIF(c, BOOST_PP_FOR_143, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(143, s), p, o, m) +# define BOOST_PP_FOR_143_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(144, s) BOOST_PP_IIF(c, BOOST_PP_FOR_144, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(144, s), p, o, m) +# define BOOST_PP_FOR_144_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(145, s) BOOST_PP_IIF(c, BOOST_PP_FOR_145, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(145, s), p, o, m) +# define BOOST_PP_FOR_145_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(146, s) BOOST_PP_IIF(c, BOOST_PP_FOR_146, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(146, s), p, o, m) +# define BOOST_PP_FOR_146_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(147, s) BOOST_PP_IIF(c, BOOST_PP_FOR_147, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(147, s), p, o, m) +# define BOOST_PP_FOR_147_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(148, s) BOOST_PP_IIF(c, BOOST_PP_FOR_148, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(148, s), p, o, m) +# define BOOST_PP_FOR_148_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(149, s) BOOST_PP_IIF(c, BOOST_PP_FOR_149, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(149, s), p, o, m) +# define BOOST_PP_FOR_149_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(150, s) BOOST_PP_IIF(c, BOOST_PP_FOR_150, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(150, s), p, o, m) +# define BOOST_PP_FOR_150_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(151, s) BOOST_PP_IIF(c, BOOST_PP_FOR_151, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(151, s), p, o, m) +# define BOOST_PP_FOR_151_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(152, s) BOOST_PP_IIF(c, BOOST_PP_FOR_152, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(152, s), p, o, m) +# define BOOST_PP_FOR_152_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(153, s) BOOST_PP_IIF(c, BOOST_PP_FOR_153, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(153, s), p, o, m) +# define BOOST_PP_FOR_153_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(154, s) BOOST_PP_IIF(c, BOOST_PP_FOR_154, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(154, s), p, o, m) +# define BOOST_PP_FOR_154_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(155, s) BOOST_PP_IIF(c, BOOST_PP_FOR_155, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(155, s), p, o, m) +# define BOOST_PP_FOR_155_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(156, s) BOOST_PP_IIF(c, BOOST_PP_FOR_156, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(156, s), p, o, m) +# define BOOST_PP_FOR_156_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(157, s) BOOST_PP_IIF(c, BOOST_PP_FOR_157, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(157, s), p, o, m) +# define BOOST_PP_FOR_157_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(158, s) BOOST_PP_IIF(c, BOOST_PP_FOR_158, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(158, s), p, o, m) +# define BOOST_PP_FOR_158_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(159, s) BOOST_PP_IIF(c, BOOST_PP_FOR_159, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(159, s), p, o, m) +# define BOOST_PP_FOR_159_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(160, s) BOOST_PP_IIF(c, BOOST_PP_FOR_160, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(160, s), p, o, m) +# define BOOST_PP_FOR_160_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(161, s) BOOST_PP_IIF(c, BOOST_PP_FOR_161, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(161, s), p, o, m) +# define BOOST_PP_FOR_161_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(162, s) BOOST_PP_IIF(c, BOOST_PP_FOR_162, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(162, s), p, o, m) +# define BOOST_PP_FOR_162_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(163, s) BOOST_PP_IIF(c, BOOST_PP_FOR_163, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(163, s), p, o, m) +# define BOOST_PP_FOR_163_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(164, s) BOOST_PP_IIF(c, BOOST_PP_FOR_164, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(164, s), p, o, m) +# define BOOST_PP_FOR_164_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(165, s) BOOST_PP_IIF(c, BOOST_PP_FOR_165, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(165, s), p, o, m) +# define BOOST_PP_FOR_165_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(166, s) BOOST_PP_IIF(c, BOOST_PP_FOR_166, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(166, s), p, o, m) +# define BOOST_PP_FOR_166_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(167, s) BOOST_PP_IIF(c, BOOST_PP_FOR_167, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(167, s), p, o, m) +# define BOOST_PP_FOR_167_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(168, s) BOOST_PP_IIF(c, BOOST_PP_FOR_168, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(168, s), p, o, m) +# define BOOST_PP_FOR_168_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(169, s) BOOST_PP_IIF(c, BOOST_PP_FOR_169, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(169, s), p, o, m) +# define BOOST_PP_FOR_169_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(170, s) BOOST_PP_IIF(c, BOOST_PP_FOR_170, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(170, s), p, o, m) +# define BOOST_PP_FOR_170_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(171, s) BOOST_PP_IIF(c, BOOST_PP_FOR_171, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(171, s), p, o, m) +# define BOOST_PP_FOR_171_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(172, s) BOOST_PP_IIF(c, BOOST_PP_FOR_172, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(172, s), p, o, m) +# define BOOST_PP_FOR_172_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(173, s) BOOST_PP_IIF(c, BOOST_PP_FOR_173, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(173, s), p, o, m) +# define BOOST_PP_FOR_173_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(174, s) BOOST_PP_IIF(c, BOOST_PP_FOR_174, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(174, s), p, o, m) +# define BOOST_PP_FOR_174_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(175, s) BOOST_PP_IIF(c, BOOST_PP_FOR_175, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(175, s), p, o, m) +# define BOOST_PP_FOR_175_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(176, s) BOOST_PP_IIF(c, BOOST_PP_FOR_176, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(176, s), p, o, m) +# define BOOST_PP_FOR_176_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(177, s) BOOST_PP_IIF(c, BOOST_PP_FOR_177, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(177, s), p, o, m) +# define BOOST_PP_FOR_177_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(178, s) BOOST_PP_IIF(c, BOOST_PP_FOR_178, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(178, s), p, o, m) +# define BOOST_PP_FOR_178_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(179, s) BOOST_PP_IIF(c, BOOST_PP_FOR_179, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(179, s), p, o, m) +# define BOOST_PP_FOR_179_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(180, s) BOOST_PP_IIF(c, BOOST_PP_FOR_180, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(180, s), p, o, m) +# define BOOST_PP_FOR_180_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(181, s) BOOST_PP_IIF(c, BOOST_PP_FOR_181, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(181, s), p, o, m) +# define BOOST_PP_FOR_181_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(182, s) BOOST_PP_IIF(c, BOOST_PP_FOR_182, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(182, s), p, o, m) +# define BOOST_PP_FOR_182_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(183, s) BOOST_PP_IIF(c, BOOST_PP_FOR_183, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(183, s), p, o, m) +# define BOOST_PP_FOR_183_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(184, s) BOOST_PP_IIF(c, BOOST_PP_FOR_184, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(184, s), p, o, m) +# define BOOST_PP_FOR_184_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(185, s) BOOST_PP_IIF(c, BOOST_PP_FOR_185, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(185, s), p, o, m) +# define BOOST_PP_FOR_185_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(186, s) BOOST_PP_IIF(c, BOOST_PP_FOR_186, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(186, s), p, o, m) +# define BOOST_PP_FOR_186_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(187, s) BOOST_PP_IIF(c, BOOST_PP_FOR_187, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(187, s), p, o, m) +# define BOOST_PP_FOR_187_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(188, s) BOOST_PP_IIF(c, BOOST_PP_FOR_188, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(188, s), p, o, m) +# define BOOST_PP_FOR_188_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(189, s) BOOST_PP_IIF(c, BOOST_PP_FOR_189, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(189, s), p, o, m) +# define BOOST_PP_FOR_189_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(190, s) BOOST_PP_IIF(c, BOOST_PP_FOR_190, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(190, s), p, o, m) +# define BOOST_PP_FOR_190_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(191, s) BOOST_PP_IIF(c, BOOST_PP_FOR_191, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(191, s), p, o, m) +# define BOOST_PP_FOR_191_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(192, s) BOOST_PP_IIF(c, BOOST_PP_FOR_192, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(192, s), p, o, m) +# define BOOST_PP_FOR_192_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(193, s) BOOST_PP_IIF(c, BOOST_PP_FOR_193, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(193, s), p, o, m) +# define BOOST_PP_FOR_193_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(194, s) BOOST_PP_IIF(c, BOOST_PP_FOR_194, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(194, s), p, o, m) +# define BOOST_PP_FOR_194_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(195, s) BOOST_PP_IIF(c, BOOST_PP_FOR_195, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(195, s), p, o, m) +# define BOOST_PP_FOR_195_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(196, s) BOOST_PP_IIF(c, BOOST_PP_FOR_196, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(196, s), p, o, m) +# define BOOST_PP_FOR_196_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(197, s) BOOST_PP_IIF(c, BOOST_PP_FOR_197, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(197, s), p, o, m) +# define BOOST_PP_FOR_197_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(198, s) BOOST_PP_IIF(c, BOOST_PP_FOR_198, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(198, s), p, o, m) +# define BOOST_PP_FOR_198_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(199, s) BOOST_PP_IIF(c, BOOST_PP_FOR_199, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(199, s), p, o, m) +# define BOOST_PP_FOR_199_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(200, s) BOOST_PP_IIF(c, BOOST_PP_FOR_200, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(200, s), p, o, m) +# define BOOST_PP_FOR_200_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(201, s) BOOST_PP_IIF(c, BOOST_PP_FOR_201, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(201, s), p, o, m) +# define BOOST_PP_FOR_201_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(202, s) BOOST_PP_IIF(c, BOOST_PP_FOR_202, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(202, s), p, o, m) +# define BOOST_PP_FOR_202_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(203, s) BOOST_PP_IIF(c, BOOST_PP_FOR_203, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(203, s), p, o, m) +# define BOOST_PP_FOR_203_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(204, s) BOOST_PP_IIF(c, BOOST_PP_FOR_204, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(204, s), p, o, m) +# define BOOST_PP_FOR_204_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(205, s) BOOST_PP_IIF(c, BOOST_PP_FOR_205, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(205, s), p, o, m) +# define BOOST_PP_FOR_205_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(206, s) BOOST_PP_IIF(c, BOOST_PP_FOR_206, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(206, s), p, o, m) +# define BOOST_PP_FOR_206_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(207, s) BOOST_PP_IIF(c, BOOST_PP_FOR_207, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(207, s), p, o, m) +# define BOOST_PP_FOR_207_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(208, s) BOOST_PP_IIF(c, BOOST_PP_FOR_208, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(208, s), p, o, m) +# define BOOST_PP_FOR_208_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(209, s) BOOST_PP_IIF(c, BOOST_PP_FOR_209, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(209, s), p, o, m) +# define BOOST_PP_FOR_209_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(210, s) BOOST_PP_IIF(c, BOOST_PP_FOR_210, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(210, s), p, o, m) +# define BOOST_PP_FOR_210_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(211, s) BOOST_PP_IIF(c, BOOST_PP_FOR_211, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(211, s), p, o, m) +# define BOOST_PP_FOR_211_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(212, s) BOOST_PP_IIF(c, BOOST_PP_FOR_212, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(212, s), p, o, m) +# define BOOST_PP_FOR_212_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(213, s) BOOST_PP_IIF(c, BOOST_PP_FOR_213, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(213, s), p, o, m) +# define BOOST_PP_FOR_213_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(214, s) BOOST_PP_IIF(c, BOOST_PP_FOR_214, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(214, s), p, o, m) +# define BOOST_PP_FOR_214_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(215, s) BOOST_PP_IIF(c, BOOST_PP_FOR_215, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(215, s), p, o, m) +# define BOOST_PP_FOR_215_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(216, s) BOOST_PP_IIF(c, BOOST_PP_FOR_216, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(216, s), p, o, m) +# define BOOST_PP_FOR_216_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(217, s) BOOST_PP_IIF(c, BOOST_PP_FOR_217, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(217, s), p, o, m) +# define BOOST_PP_FOR_217_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(218, s) BOOST_PP_IIF(c, BOOST_PP_FOR_218, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(218, s), p, o, m) +# define BOOST_PP_FOR_218_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(219, s) BOOST_PP_IIF(c, BOOST_PP_FOR_219, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(219, s), p, o, m) +# define BOOST_PP_FOR_219_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(220, s) BOOST_PP_IIF(c, BOOST_PP_FOR_220, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(220, s), p, o, m) +# define BOOST_PP_FOR_220_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(221, s) BOOST_PP_IIF(c, BOOST_PP_FOR_221, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(221, s), p, o, m) +# define BOOST_PP_FOR_221_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(222, s) BOOST_PP_IIF(c, BOOST_PP_FOR_222, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(222, s), p, o, m) +# define BOOST_PP_FOR_222_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(223, s) BOOST_PP_IIF(c, BOOST_PP_FOR_223, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(223, s), p, o, m) +# define BOOST_PP_FOR_223_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(224, s) BOOST_PP_IIF(c, BOOST_PP_FOR_224, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(224, s), p, o, m) +# define BOOST_PP_FOR_224_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(225, s) BOOST_PP_IIF(c, BOOST_PP_FOR_225, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(225, s), p, o, m) +# define BOOST_PP_FOR_225_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(226, s) BOOST_PP_IIF(c, BOOST_PP_FOR_226, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(226, s), p, o, m) +# define BOOST_PP_FOR_226_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(227, s) BOOST_PP_IIF(c, BOOST_PP_FOR_227, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(227, s), p, o, m) +# define BOOST_PP_FOR_227_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(228, s) BOOST_PP_IIF(c, BOOST_PP_FOR_228, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(228, s), p, o, m) +# define BOOST_PP_FOR_228_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(229, s) BOOST_PP_IIF(c, BOOST_PP_FOR_229, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(229, s), p, o, m) +# define BOOST_PP_FOR_229_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(230, s) BOOST_PP_IIF(c, BOOST_PP_FOR_230, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(230, s), p, o, m) +# define BOOST_PP_FOR_230_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(231, s) BOOST_PP_IIF(c, BOOST_PP_FOR_231, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(231, s), p, o, m) +# define BOOST_PP_FOR_231_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(232, s) BOOST_PP_IIF(c, BOOST_PP_FOR_232, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(232, s), p, o, m) +# define BOOST_PP_FOR_232_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(233, s) BOOST_PP_IIF(c, BOOST_PP_FOR_233, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(233, s), p, o, m) +# define BOOST_PP_FOR_233_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(234, s) BOOST_PP_IIF(c, BOOST_PP_FOR_234, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(234, s), p, o, m) +# define BOOST_PP_FOR_234_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(235, s) BOOST_PP_IIF(c, BOOST_PP_FOR_235, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(235, s), p, o, m) +# define BOOST_PP_FOR_235_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(236, s) BOOST_PP_IIF(c, BOOST_PP_FOR_236, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(236, s), p, o, m) +# define BOOST_PP_FOR_236_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(237, s) BOOST_PP_IIF(c, BOOST_PP_FOR_237, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(237, s), p, o, m) +# define BOOST_PP_FOR_237_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(238, s) BOOST_PP_IIF(c, BOOST_PP_FOR_238, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(238, s), p, o, m) +# define BOOST_PP_FOR_238_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(239, s) BOOST_PP_IIF(c, BOOST_PP_FOR_239, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(239, s), p, o, m) +# define BOOST_PP_FOR_239_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(240, s) BOOST_PP_IIF(c, BOOST_PP_FOR_240, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(240, s), p, o, m) +# define BOOST_PP_FOR_240_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(241, s) BOOST_PP_IIF(c, BOOST_PP_FOR_241, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(241, s), p, o, m) +# define BOOST_PP_FOR_241_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(242, s) BOOST_PP_IIF(c, BOOST_PP_FOR_242, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(242, s), p, o, m) +# define BOOST_PP_FOR_242_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(243, s) BOOST_PP_IIF(c, BOOST_PP_FOR_243, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(243, s), p, o, m) +# define BOOST_PP_FOR_243_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(244, s) BOOST_PP_IIF(c, BOOST_PP_FOR_244, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(244, s), p, o, m) +# define BOOST_PP_FOR_244_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(245, s) BOOST_PP_IIF(c, BOOST_PP_FOR_245, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(245, s), p, o, m) +# define BOOST_PP_FOR_245_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(246, s) BOOST_PP_IIF(c, BOOST_PP_FOR_246, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(246, s), p, o, m) +# define BOOST_PP_FOR_246_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(247, s) BOOST_PP_IIF(c, BOOST_PP_FOR_247, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(247, s), p, o, m) +# define BOOST_PP_FOR_247_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(248, s) BOOST_PP_IIF(c, BOOST_PP_FOR_248, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(248, s), p, o, m) +# define BOOST_PP_FOR_248_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(249, s) BOOST_PP_IIF(c, BOOST_PP_FOR_249, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(249, s), p, o, m) +# define BOOST_PP_FOR_249_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(250, s) BOOST_PP_IIF(c, BOOST_PP_FOR_250, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(250, s), p, o, m) +# define BOOST_PP_FOR_250_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(251, s) BOOST_PP_IIF(c, BOOST_PP_FOR_251, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(251, s), p, o, m) +# define BOOST_PP_FOR_251_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(252, s) BOOST_PP_IIF(c, BOOST_PP_FOR_252, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(252, s), p, o, m) +# define BOOST_PP_FOR_252_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(253, s) BOOST_PP_IIF(c, BOOST_PP_FOR_253, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(253, s), p, o, m) +# define BOOST_PP_FOR_253_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(254, s) BOOST_PP_IIF(c, BOOST_PP_FOR_254, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(254, s), p, o, m) +# define BOOST_PP_FOR_254_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(255, s) BOOST_PP_IIF(c, BOOST_PP_FOR_255, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(255, s), p, o, m) +# define BOOST_PP_FOR_255_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(256, s) BOOST_PP_IIF(c, BOOST_PP_FOR_256, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(256, s), p, o, m) +# define BOOST_PP_FOR_256_C(c, s, p, o, m) BOOST_PP_IIF(c, m, BOOST_PP_TUPLE_EAT_2)(257, s) BOOST_PP_IIF(c, BOOST_PP_FOR_257, BOOST_PP_TUPLE_EAT_4)(BOOST_PP_EXPR_IIF(c, o)(257, s), p, o, m) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/detail/msvc/for.hpp b/plugin/wave/include/boost/preprocessor/repetition/detail/msvc/for.hpp new file mode 100644 index 0000000..35c1996 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/detail/msvc/for.hpp @@ -0,0 +1,277 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_DETAIL_MSVC_FOR_HPP +# define BOOST_PREPROCESSOR_REPETITION_DETAIL_MSVC_FOR_HPP +# +# include +# include +# +# define BOOST_PP_FOR_1(s, p, o, m) BOOST_PP_IF(p(2, s), m, BOOST_PP_TUPLE_EAT_2)(2, s) BOOST_PP_IF(p(2, s), BOOST_PP_FOR_2, BOOST_PP_TUPLE_EAT_4)(o(2, s), p, o, m) +# define BOOST_PP_FOR_2(s, p, o, m) BOOST_PP_IF(p(3, s), m, BOOST_PP_TUPLE_EAT_2)(3, s) BOOST_PP_IF(p(3, s), BOOST_PP_FOR_3, BOOST_PP_TUPLE_EAT_4)(o(3, s), p, o, m) +# define BOOST_PP_FOR_3(s, p, o, m) BOOST_PP_IF(p(4, s), m, BOOST_PP_TUPLE_EAT_2)(4, s) BOOST_PP_IF(p(4, s), BOOST_PP_FOR_4, BOOST_PP_TUPLE_EAT_4)(o(4, s), p, o, m) +# define BOOST_PP_FOR_4(s, p, o, m) BOOST_PP_IF(p(5, s), m, BOOST_PP_TUPLE_EAT_2)(5, s) BOOST_PP_IF(p(5, s), BOOST_PP_FOR_5, BOOST_PP_TUPLE_EAT_4)(o(5, s), p, o, m) +# define BOOST_PP_FOR_5(s, p, o, m) BOOST_PP_IF(p(6, s), m, BOOST_PP_TUPLE_EAT_2)(6, s) BOOST_PP_IF(p(6, s), BOOST_PP_FOR_6, BOOST_PP_TUPLE_EAT_4)(o(6, s), p, o, m) +# define BOOST_PP_FOR_6(s, p, o, m) BOOST_PP_IF(p(7, s), m, BOOST_PP_TUPLE_EAT_2)(7, s) BOOST_PP_IF(p(7, s), BOOST_PP_FOR_7, BOOST_PP_TUPLE_EAT_4)(o(7, s), p, o, m) +# define BOOST_PP_FOR_7(s, p, o, m) BOOST_PP_IF(p(8, s), m, BOOST_PP_TUPLE_EAT_2)(8, s) BOOST_PP_IF(p(8, s), BOOST_PP_FOR_8, BOOST_PP_TUPLE_EAT_4)(o(8, s), p, o, m) +# define BOOST_PP_FOR_8(s, p, o, m) BOOST_PP_IF(p(9, s), m, BOOST_PP_TUPLE_EAT_2)(9, s) BOOST_PP_IF(p(9, s), BOOST_PP_FOR_9, BOOST_PP_TUPLE_EAT_4)(o(9, s), p, o, m) +# define BOOST_PP_FOR_9(s, p, o, m) BOOST_PP_IF(p(10, s), m, BOOST_PP_TUPLE_EAT_2)(10, s) BOOST_PP_IF(p(10, s), BOOST_PP_FOR_10, BOOST_PP_TUPLE_EAT_4)(o(10, s), p, o, m) +# define BOOST_PP_FOR_10(s, p, o, m) BOOST_PP_IF(p(11, s), m, BOOST_PP_TUPLE_EAT_2)(11, s) BOOST_PP_IF(p(11, s), BOOST_PP_FOR_11, BOOST_PP_TUPLE_EAT_4)(o(11, s), p, o, m) +# define BOOST_PP_FOR_11(s, p, o, m) BOOST_PP_IF(p(12, s), m, BOOST_PP_TUPLE_EAT_2)(12, s) BOOST_PP_IF(p(12, s), BOOST_PP_FOR_12, BOOST_PP_TUPLE_EAT_4)(o(12, s), p, o, m) +# define BOOST_PP_FOR_12(s, p, o, m) BOOST_PP_IF(p(13, s), m, BOOST_PP_TUPLE_EAT_2)(13, s) BOOST_PP_IF(p(13, s), BOOST_PP_FOR_13, BOOST_PP_TUPLE_EAT_4)(o(13, s), p, o, m) +# define BOOST_PP_FOR_13(s, p, o, m) BOOST_PP_IF(p(14, s), m, BOOST_PP_TUPLE_EAT_2)(14, s) BOOST_PP_IF(p(14, s), BOOST_PP_FOR_14, BOOST_PP_TUPLE_EAT_4)(o(14, s), p, o, m) +# define BOOST_PP_FOR_14(s, p, o, m) BOOST_PP_IF(p(15, s), m, BOOST_PP_TUPLE_EAT_2)(15, s) BOOST_PP_IF(p(15, s), BOOST_PP_FOR_15, BOOST_PP_TUPLE_EAT_4)(o(15, s), p, o, m) +# define BOOST_PP_FOR_15(s, p, o, m) BOOST_PP_IF(p(16, s), m, BOOST_PP_TUPLE_EAT_2)(16, s) BOOST_PP_IF(p(16, s), BOOST_PP_FOR_16, BOOST_PP_TUPLE_EAT_4)(o(16, s), p, o, m) +# define BOOST_PP_FOR_16(s, p, o, m) BOOST_PP_IF(p(17, s), m, BOOST_PP_TUPLE_EAT_2)(17, s) BOOST_PP_IF(p(17, s), BOOST_PP_FOR_17, BOOST_PP_TUPLE_EAT_4)(o(17, s), p, o, m) +# define BOOST_PP_FOR_17(s, p, o, m) BOOST_PP_IF(p(18, s), m, BOOST_PP_TUPLE_EAT_2)(18, s) BOOST_PP_IF(p(18, s), BOOST_PP_FOR_18, BOOST_PP_TUPLE_EAT_4)(o(18, s), p, o, m) +# define BOOST_PP_FOR_18(s, p, o, m) BOOST_PP_IF(p(19, s), m, BOOST_PP_TUPLE_EAT_2)(19, s) BOOST_PP_IF(p(19, s), BOOST_PP_FOR_19, BOOST_PP_TUPLE_EAT_4)(o(19, s), p, o, m) +# define BOOST_PP_FOR_19(s, p, o, m) BOOST_PP_IF(p(20, s), m, BOOST_PP_TUPLE_EAT_2)(20, s) BOOST_PP_IF(p(20, s), BOOST_PP_FOR_20, BOOST_PP_TUPLE_EAT_4)(o(20, s), p, o, m) +# define BOOST_PP_FOR_20(s, p, o, m) BOOST_PP_IF(p(21, s), m, BOOST_PP_TUPLE_EAT_2)(21, s) BOOST_PP_IF(p(21, s), BOOST_PP_FOR_21, BOOST_PP_TUPLE_EAT_4)(o(21, s), p, o, m) +# define BOOST_PP_FOR_21(s, p, o, m) BOOST_PP_IF(p(22, s), m, BOOST_PP_TUPLE_EAT_2)(22, s) BOOST_PP_IF(p(22, s), BOOST_PP_FOR_22, BOOST_PP_TUPLE_EAT_4)(o(22, s), p, o, m) +# define BOOST_PP_FOR_22(s, p, o, m) BOOST_PP_IF(p(23, s), m, BOOST_PP_TUPLE_EAT_2)(23, s) BOOST_PP_IF(p(23, s), BOOST_PP_FOR_23, BOOST_PP_TUPLE_EAT_4)(o(23, s), p, o, m) +# define BOOST_PP_FOR_23(s, p, o, m) BOOST_PP_IF(p(24, s), m, BOOST_PP_TUPLE_EAT_2)(24, s) BOOST_PP_IF(p(24, s), BOOST_PP_FOR_24, BOOST_PP_TUPLE_EAT_4)(o(24, s), p, o, m) +# define BOOST_PP_FOR_24(s, p, o, m) BOOST_PP_IF(p(25, s), m, BOOST_PP_TUPLE_EAT_2)(25, s) BOOST_PP_IF(p(25, s), BOOST_PP_FOR_25, BOOST_PP_TUPLE_EAT_4)(o(25, s), p, o, m) +# define BOOST_PP_FOR_25(s, p, o, m) BOOST_PP_IF(p(26, s), m, BOOST_PP_TUPLE_EAT_2)(26, s) BOOST_PP_IF(p(26, s), BOOST_PP_FOR_26, BOOST_PP_TUPLE_EAT_4)(o(26, s), p, o, m) +# define BOOST_PP_FOR_26(s, p, o, m) BOOST_PP_IF(p(27, s), m, BOOST_PP_TUPLE_EAT_2)(27, s) BOOST_PP_IF(p(27, s), BOOST_PP_FOR_27, BOOST_PP_TUPLE_EAT_4)(o(27, s), p, o, m) +# define BOOST_PP_FOR_27(s, p, o, m) BOOST_PP_IF(p(28, s), m, BOOST_PP_TUPLE_EAT_2)(28, s) BOOST_PP_IF(p(28, s), BOOST_PP_FOR_28, BOOST_PP_TUPLE_EAT_4)(o(28, s), p, o, m) +# define BOOST_PP_FOR_28(s, p, o, m) BOOST_PP_IF(p(29, s), m, BOOST_PP_TUPLE_EAT_2)(29, s) BOOST_PP_IF(p(29, s), BOOST_PP_FOR_29, BOOST_PP_TUPLE_EAT_4)(o(29, s), p, o, m) +# define BOOST_PP_FOR_29(s, p, o, m) BOOST_PP_IF(p(30, s), m, BOOST_PP_TUPLE_EAT_2)(30, s) BOOST_PP_IF(p(30, s), BOOST_PP_FOR_30, BOOST_PP_TUPLE_EAT_4)(o(30, s), p, o, m) +# define BOOST_PP_FOR_30(s, p, o, m) BOOST_PP_IF(p(31, s), m, BOOST_PP_TUPLE_EAT_2)(31, s) BOOST_PP_IF(p(31, s), BOOST_PP_FOR_31, BOOST_PP_TUPLE_EAT_4)(o(31, s), p, o, m) +# define BOOST_PP_FOR_31(s, p, o, m) BOOST_PP_IF(p(32, s), m, BOOST_PP_TUPLE_EAT_2)(32, s) BOOST_PP_IF(p(32, s), BOOST_PP_FOR_32, BOOST_PP_TUPLE_EAT_4)(o(32, s), p, o, m) +# define BOOST_PP_FOR_32(s, p, o, m) BOOST_PP_IF(p(33, s), m, BOOST_PP_TUPLE_EAT_2)(33, s) BOOST_PP_IF(p(33, s), BOOST_PP_FOR_33, BOOST_PP_TUPLE_EAT_4)(o(33, s), p, o, m) +# define BOOST_PP_FOR_33(s, p, o, m) BOOST_PP_IF(p(34, s), m, BOOST_PP_TUPLE_EAT_2)(34, s) BOOST_PP_IF(p(34, s), BOOST_PP_FOR_34, BOOST_PP_TUPLE_EAT_4)(o(34, s), p, o, m) +# define BOOST_PP_FOR_34(s, p, o, m) BOOST_PP_IF(p(35, s), m, BOOST_PP_TUPLE_EAT_2)(35, s) BOOST_PP_IF(p(35, s), BOOST_PP_FOR_35, BOOST_PP_TUPLE_EAT_4)(o(35, s), p, o, m) +# define BOOST_PP_FOR_35(s, p, o, m) BOOST_PP_IF(p(36, s), m, BOOST_PP_TUPLE_EAT_2)(36, s) BOOST_PP_IF(p(36, s), BOOST_PP_FOR_36, BOOST_PP_TUPLE_EAT_4)(o(36, s), p, o, m) +# define BOOST_PP_FOR_36(s, p, o, m) BOOST_PP_IF(p(37, s), m, BOOST_PP_TUPLE_EAT_2)(37, s) BOOST_PP_IF(p(37, s), BOOST_PP_FOR_37, BOOST_PP_TUPLE_EAT_4)(o(37, s), p, o, m) +# define BOOST_PP_FOR_37(s, p, o, m) BOOST_PP_IF(p(38, s), m, BOOST_PP_TUPLE_EAT_2)(38, s) BOOST_PP_IF(p(38, s), BOOST_PP_FOR_38, BOOST_PP_TUPLE_EAT_4)(o(38, s), p, o, m) +# define BOOST_PP_FOR_38(s, p, o, m) BOOST_PP_IF(p(39, s), m, BOOST_PP_TUPLE_EAT_2)(39, s) BOOST_PP_IF(p(39, s), BOOST_PP_FOR_39, BOOST_PP_TUPLE_EAT_4)(o(39, s), p, o, m) +# define BOOST_PP_FOR_39(s, p, o, m) BOOST_PP_IF(p(40, s), m, BOOST_PP_TUPLE_EAT_2)(40, s) BOOST_PP_IF(p(40, s), BOOST_PP_FOR_40, BOOST_PP_TUPLE_EAT_4)(o(40, s), p, o, m) +# define BOOST_PP_FOR_40(s, p, o, m) BOOST_PP_IF(p(41, s), m, BOOST_PP_TUPLE_EAT_2)(41, s) BOOST_PP_IF(p(41, s), BOOST_PP_FOR_41, BOOST_PP_TUPLE_EAT_4)(o(41, s), p, o, m) +# define BOOST_PP_FOR_41(s, p, o, m) BOOST_PP_IF(p(42, s), m, BOOST_PP_TUPLE_EAT_2)(42, s) BOOST_PP_IF(p(42, s), BOOST_PP_FOR_42, BOOST_PP_TUPLE_EAT_4)(o(42, s), p, o, m) +# define BOOST_PP_FOR_42(s, p, o, m) BOOST_PP_IF(p(43, s), m, BOOST_PP_TUPLE_EAT_2)(43, s) BOOST_PP_IF(p(43, s), BOOST_PP_FOR_43, BOOST_PP_TUPLE_EAT_4)(o(43, s), p, o, m) +# define BOOST_PP_FOR_43(s, p, o, m) BOOST_PP_IF(p(44, s), m, BOOST_PP_TUPLE_EAT_2)(44, s) BOOST_PP_IF(p(44, s), BOOST_PP_FOR_44, BOOST_PP_TUPLE_EAT_4)(o(44, s), p, o, m) +# define BOOST_PP_FOR_44(s, p, o, m) BOOST_PP_IF(p(45, s), m, BOOST_PP_TUPLE_EAT_2)(45, s) BOOST_PP_IF(p(45, s), BOOST_PP_FOR_45, BOOST_PP_TUPLE_EAT_4)(o(45, s), p, o, m) +# define BOOST_PP_FOR_45(s, p, o, m) BOOST_PP_IF(p(46, s), m, BOOST_PP_TUPLE_EAT_2)(46, s) BOOST_PP_IF(p(46, s), BOOST_PP_FOR_46, BOOST_PP_TUPLE_EAT_4)(o(46, s), p, o, m) +# define BOOST_PP_FOR_46(s, p, o, m) BOOST_PP_IF(p(47, s), m, BOOST_PP_TUPLE_EAT_2)(47, s) BOOST_PP_IF(p(47, s), BOOST_PP_FOR_47, BOOST_PP_TUPLE_EAT_4)(o(47, s), p, o, m) +# define BOOST_PP_FOR_47(s, p, o, m) BOOST_PP_IF(p(48, s), m, BOOST_PP_TUPLE_EAT_2)(48, s) BOOST_PP_IF(p(48, s), BOOST_PP_FOR_48, BOOST_PP_TUPLE_EAT_4)(o(48, s), p, o, m) +# define BOOST_PP_FOR_48(s, p, o, m) BOOST_PP_IF(p(49, s), m, BOOST_PP_TUPLE_EAT_2)(49, s) BOOST_PP_IF(p(49, s), BOOST_PP_FOR_49, BOOST_PP_TUPLE_EAT_4)(o(49, s), p, o, m) +# define BOOST_PP_FOR_49(s, p, o, m) BOOST_PP_IF(p(50, s), m, BOOST_PP_TUPLE_EAT_2)(50, s) BOOST_PP_IF(p(50, s), BOOST_PP_FOR_50, BOOST_PP_TUPLE_EAT_4)(o(50, s), p, o, m) +# define BOOST_PP_FOR_50(s, p, o, m) BOOST_PP_IF(p(51, s), m, BOOST_PP_TUPLE_EAT_2)(51, s) BOOST_PP_IF(p(51, s), BOOST_PP_FOR_51, BOOST_PP_TUPLE_EAT_4)(o(51, s), p, o, m) +# define BOOST_PP_FOR_51(s, p, o, m) BOOST_PP_IF(p(52, s), m, BOOST_PP_TUPLE_EAT_2)(52, s) BOOST_PP_IF(p(52, s), BOOST_PP_FOR_52, BOOST_PP_TUPLE_EAT_4)(o(52, s), p, o, m) +# define BOOST_PP_FOR_52(s, p, o, m) BOOST_PP_IF(p(53, s), m, BOOST_PP_TUPLE_EAT_2)(53, s) BOOST_PP_IF(p(53, s), BOOST_PP_FOR_53, BOOST_PP_TUPLE_EAT_4)(o(53, s), p, o, m) +# define BOOST_PP_FOR_53(s, p, o, m) BOOST_PP_IF(p(54, s), m, BOOST_PP_TUPLE_EAT_2)(54, s) BOOST_PP_IF(p(54, s), BOOST_PP_FOR_54, BOOST_PP_TUPLE_EAT_4)(o(54, s), p, o, m) +# define BOOST_PP_FOR_54(s, p, o, m) BOOST_PP_IF(p(55, s), m, BOOST_PP_TUPLE_EAT_2)(55, s) BOOST_PP_IF(p(55, s), BOOST_PP_FOR_55, BOOST_PP_TUPLE_EAT_4)(o(55, s), p, o, m) +# define BOOST_PP_FOR_55(s, p, o, m) BOOST_PP_IF(p(56, s), m, BOOST_PP_TUPLE_EAT_2)(56, s) BOOST_PP_IF(p(56, s), BOOST_PP_FOR_56, BOOST_PP_TUPLE_EAT_4)(o(56, s), p, o, m) +# define BOOST_PP_FOR_56(s, p, o, m) BOOST_PP_IF(p(57, s), m, BOOST_PP_TUPLE_EAT_2)(57, s) BOOST_PP_IF(p(57, s), BOOST_PP_FOR_57, BOOST_PP_TUPLE_EAT_4)(o(57, s), p, o, m) +# define BOOST_PP_FOR_57(s, p, o, m) BOOST_PP_IF(p(58, s), m, BOOST_PP_TUPLE_EAT_2)(58, s) BOOST_PP_IF(p(58, s), BOOST_PP_FOR_58, BOOST_PP_TUPLE_EAT_4)(o(58, s), p, o, m) +# define BOOST_PP_FOR_58(s, p, o, m) BOOST_PP_IF(p(59, s), m, BOOST_PP_TUPLE_EAT_2)(59, s) BOOST_PP_IF(p(59, s), BOOST_PP_FOR_59, BOOST_PP_TUPLE_EAT_4)(o(59, s), p, o, m) +# define BOOST_PP_FOR_59(s, p, o, m) BOOST_PP_IF(p(60, s), m, BOOST_PP_TUPLE_EAT_2)(60, s) BOOST_PP_IF(p(60, s), BOOST_PP_FOR_60, BOOST_PP_TUPLE_EAT_4)(o(60, s), p, o, m) +# define BOOST_PP_FOR_60(s, p, o, m) BOOST_PP_IF(p(61, s), m, BOOST_PP_TUPLE_EAT_2)(61, s) BOOST_PP_IF(p(61, s), BOOST_PP_FOR_61, BOOST_PP_TUPLE_EAT_4)(o(61, s), p, o, m) +# define BOOST_PP_FOR_61(s, p, o, m) BOOST_PP_IF(p(62, s), m, BOOST_PP_TUPLE_EAT_2)(62, s) BOOST_PP_IF(p(62, s), BOOST_PP_FOR_62, BOOST_PP_TUPLE_EAT_4)(o(62, s), p, o, m) +# define BOOST_PP_FOR_62(s, p, o, m) BOOST_PP_IF(p(63, s), m, BOOST_PP_TUPLE_EAT_2)(63, s) BOOST_PP_IF(p(63, s), BOOST_PP_FOR_63, BOOST_PP_TUPLE_EAT_4)(o(63, s), p, o, m) +# define BOOST_PP_FOR_63(s, p, o, m) BOOST_PP_IF(p(64, s), m, BOOST_PP_TUPLE_EAT_2)(64, s) BOOST_PP_IF(p(64, s), BOOST_PP_FOR_64, BOOST_PP_TUPLE_EAT_4)(o(64, s), p, o, m) +# define BOOST_PP_FOR_64(s, p, o, m) BOOST_PP_IF(p(65, s), m, BOOST_PP_TUPLE_EAT_2)(65, s) BOOST_PP_IF(p(65, s), BOOST_PP_FOR_65, BOOST_PP_TUPLE_EAT_4)(o(65, s), p, o, m) +# define BOOST_PP_FOR_65(s, p, o, m) BOOST_PP_IF(p(66, s), m, BOOST_PP_TUPLE_EAT_2)(66, s) BOOST_PP_IF(p(66, s), BOOST_PP_FOR_66, BOOST_PP_TUPLE_EAT_4)(o(66, s), p, o, m) +# define BOOST_PP_FOR_66(s, p, o, m) BOOST_PP_IF(p(67, s), m, BOOST_PP_TUPLE_EAT_2)(67, s) BOOST_PP_IF(p(67, s), BOOST_PP_FOR_67, BOOST_PP_TUPLE_EAT_4)(o(67, s), p, o, m) +# define BOOST_PP_FOR_67(s, p, o, m) BOOST_PP_IF(p(68, s), m, BOOST_PP_TUPLE_EAT_2)(68, s) BOOST_PP_IF(p(68, s), BOOST_PP_FOR_68, BOOST_PP_TUPLE_EAT_4)(o(68, s), p, o, m) +# define BOOST_PP_FOR_68(s, p, o, m) BOOST_PP_IF(p(69, s), m, BOOST_PP_TUPLE_EAT_2)(69, s) BOOST_PP_IF(p(69, s), BOOST_PP_FOR_69, BOOST_PP_TUPLE_EAT_4)(o(69, s), p, o, m) +# define BOOST_PP_FOR_69(s, p, o, m) BOOST_PP_IF(p(70, s), m, BOOST_PP_TUPLE_EAT_2)(70, s) BOOST_PP_IF(p(70, s), BOOST_PP_FOR_70, BOOST_PP_TUPLE_EAT_4)(o(70, s), p, o, m) +# define BOOST_PP_FOR_70(s, p, o, m) BOOST_PP_IF(p(71, s), m, BOOST_PP_TUPLE_EAT_2)(71, s) BOOST_PP_IF(p(71, s), BOOST_PP_FOR_71, BOOST_PP_TUPLE_EAT_4)(o(71, s), p, o, m) +# define BOOST_PP_FOR_71(s, p, o, m) BOOST_PP_IF(p(72, s), m, BOOST_PP_TUPLE_EAT_2)(72, s) BOOST_PP_IF(p(72, s), BOOST_PP_FOR_72, BOOST_PP_TUPLE_EAT_4)(o(72, s), p, o, m) +# define BOOST_PP_FOR_72(s, p, o, m) BOOST_PP_IF(p(73, s), m, BOOST_PP_TUPLE_EAT_2)(73, s) BOOST_PP_IF(p(73, s), BOOST_PP_FOR_73, BOOST_PP_TUPLE_EAT_4)(o(73, s), p, o, m) +# define BOOST_PP_FOR_73(s, p, o, m) BOOST_PP_IF(p(74, s), m, BOOST_PP_TUPLE_EAT_2)(74, s) BOOST_PP_IF(p(74, s), BOOST_PP_FOR_74, BOOST_PP_TUPLE_EAT_4)(o(74, s), p, o, m) +# define BOOST_PP_FOR_74(s, p, o, m) BOOST_PP_IF(p(75, s), m, BOOST_PP_TUPLE_EAT_2)(75, s) BOOST_PP_IF(p(75, s), BOOST_PP_FOR_75, BOOST_PP_TUPLE_EAT_4)(o(75, s), p, o, m) +# define BOOST_PP_FOR_75(s, p, o, m) BOOST_PP_IF(p(76, s), m, BOOST_PP_TUPLE_EAT_2)(76, s) BOOST_PP_IF(p(76, s), BOOST_PP_FOR_76, BOOST_PP_TUPLE_EAT_4)(o(76, s), p, o, m) +# define BOOST_PP_FOR_76(s, p, o, m) BOOST_PP_IF(p(77, s), m, BOOST_PP_TUPLE_EAT_2)(77, s) BOOST_PP_IF(p(77, s), BOOST_PP_FOR_77, BOOST_PP_TUPLE_EAT_4)(o(77, s), p, o, m) +# define BOOST_PP_FOR_77(s, p, o, m) BOOST_PP_IF(p(78, s), m, BOOST_PP_TUPLE_EAT_2)(78, s) BOOST_PP_IF(p(78, s), BOOST_PP_FOR_78, BOOST_PP_TUPLE_EAT_4)(o(78, s), p, o, m) +# define BOOST_PP_FOR_78(s, p, o, m) BOOST_PP_IF(p(79, s), m, BOOST_PP_TUPLE_EAT_2)(79, s) BOOST_PP_IF(p(79, s), BOOST_PP_FOR_79, BOOST_PP_TUPLE_EAT_4)(o(79, s), p, o, m) +# define BOOST_PP_FOR_79(s, p, o, m) BOOST_PP_IF(p(80, s), m, BOOST_PP_TUPLE_EAT_2)(80, s) BOOST_PP_IF(p(80, s), BOOST_PP_FOR_80, BOOST_PP_TUPLE_EAT_4)(o(80, s), p, o, m) +# define BOOST_PP_FOR_80(s, p, o, m) BOOST_PP_IF(p(81, s), m, BOOST_PP_TUPLE_EAT_2)(81, s) BOOST_PP_IF(p(81, s), BOOST_PP_FOR_81, BOOST_PP_TUPLE_EAT_4)(o(81, s), p, o, m) +# define BOOST_PP_FOR_81(s, p, o, m) BOOST_PP_IF(p(82, s), m, BOOST_PP_TUPLE_EAT_2)(82, s) BOOST_PP_IF(p(82, s), BOOST_PP_FOR_82, BOOST_PP_TUPLE_EAT_4)(o(82, s), p, o, m) +# define BOOST_PP_FOR_82(s, p, o, m) BOOST_PP_IF(p(83, s), m, BOOST_PP_TUPLE_EAT_2)(83, s) BOOST_PP_IF(p(83, s), BOOST_PP_FOR_83, BOOST_PP_TUPLE_EAT_4)(o(83, s), p, o, m) +# define BOOST_PP_FOR_83(s, p, o, m) BOOST_PP_IF(p(84, s), m, BOOST_PP_TUPLE_EAT_2)(84, s) BOOST_PP_IF(p(84, s), BOOST_PP_FOR_84, BOOST_PP_TUPLE_EAT_4)(o(84, s), p, o, m) +# define BOOST_PP_FOR_84(s, p, o, m) BOOST_PP_IF(p(85, s), m, BOOST_PP_TUPLE_EAT_2)(85, s) BOOST_PP_IF(p(85, s), BOOST_PP_FOR_85, BOOST_PP_TUPLE_EAT_4)(o(85, s), p, o, m) +# define BOOST_PP_FOR_85(s, p, o, m) BOOST_PP_IF(p(86, s), m, BOOST_PP_TUPLE_EAT_2)(86, s) BOOST_PP_IF(p(86, s), BOOST_PP_FOR_86, BOOST_PP_TUPLE_EAT_4)(o(86, s), p, o, m) +# define BOOST_PP_FOR_86(s, p, o, m) BOOST_PP_IF(p(87, s), m, BOOST_PP_TUPLE_EAT_2)(87, s) BOOST_PP_IF(p(87, s), BOOST_PP_FOR_87, BOOST_PP_TUPLE_EAT_4)(o(87, s), p, o, m) +# define BOOST_PP_FOR_87(s, p, o, m) BOOST_PP_IF(p(88, s), m, BOOST_PP_TUPLE_EAT_2)(88, s) BOOST_PP_IF(p(88, s), BOOST_PP_FOR_88, BOOST_PP_TUPLE_EAT_4)(o(88, s), p, o, m) +# define BOOST_PP_FOR_88(s, p, o, m) BOOST_PP_IF(p(89, s), m, BOOST_PP_TUPLE_EAT_2)(89, s) BOOST_PP_IF(p(89, s), BOOST_PP_FOR_89, BOOST_PP_TUPLE_EAT_4)(o(89, s), p, o, m) +# define BOOST_PP_FOR_89(s, p, o, m) BOOST_PP_IF(p(90, s), m, BOOST_PP_TUPLE_EAT_2)(90, s) BOOST_PP_IF(p(90, s), BOOST_PP_FOR_90, BOOST_PP_TUPLE_EAT_4)(o(90, s), p, o, m) +# define BOOST_PP_FOR_90(s, p, o, m) BOOST_PP_IF(p(91, s), m, BOOST_PP_TUPLE_EAT_2)(91, s) BOOST_PP_IF(p(91, s), BOOST_PP_FOR_91, BOOST_PP_TUPLE_EAT_4)(o(91, s), p, o, m) +# define BOOST_PP_FOR_91(s, p, o, m) BOOST_PP_IF(p(92, s), m, BOOST_PP_TUPLE_EAT_2)(92, s) BOOST_PP_IF(p(92, s), BOOST_PP_FOR_92, BOOST_PP_TUPLE_EAT_4)(o(92, s), p, o, m) +# define BOOST_PP_FOR_92(s, p, o, m) BOOST_PP_IF(p(93, s), m, BOOST_PP_TUPLE_EAT_2)(93, s) BOOST_PP_IF(p(93, s), BOOST_PP_FOR_93, BOOST_PP_TUPLE_EAT_4)(o(93, s), p, o, m) +# define BOOST_PP_FOR_93(s, p, o, m) BOOST_PP_IF(p(94, s), m, BOOST_PP_TUPLE_EAT_2)(94, s) BOOST_PP_IF(p(94, s), BOOST_PP_FOR_94, BOOST_PP_TUPLE_EAT_4)(o(94, s), p, o, m) +# define BOOST_PP_FOR_94(s, p, o, m) BOOST_PP_IF(p(95, s), m, BOOST_PP_TUPLE_EAT_2)(95, s) BOOST_PP_IF(p(95, s), BOOST_PP_FOR_95, BOOST_PP_TUPLE_EAT_4)(o(95, s), p, o, m) +# define BOOST_PP_FOR_95(s, p, o, m) BOOST_PP_IF(p(96, s), m, BOOST_PP_TUPLE_EAT_2)(96, s) BOOST_PP_IF(p(96, s), BOOST_PP_FOR_96, BOOST_PP_TUPLE_EAT_4)(o(96, s), p, o, m) +# define BOOST_PP_FOR_96(s, p, o, m) BOOST_PP_IF(p(97, s), m, BOOST_PP_TUPLE_EAT_2)(97, s) BOOST_PP_IF(p(97, s), BOOST_PP_FOR_97, BOOST_PP_TUPLE_EAT_4)(o(97, s), p, o, m) +# define BOOST_PP_FOR_97(s, p, o, m) BOOST_PP_IF(p(98, s), m, BOOST_PP_TUPLE_EAT_2)(98, s) BOOST_PP_IF(p(98, s), BOOST_PP_FOR_98, BOOST_PP_TUPLE_EAT_4)(o(98, s), p, o, m) +# define BOOST_PP_FOR_98(s, p, o, m) BOOST_PP_IF(p(99, s), m, BOOST_PP_TUPLE_EAT_2)(99, s) BOOST_PP_IF(p(99, s), BOOST_PP_FOR_99, BOOST_PP_TUPLE_EAT_4)(o(99, s), p, o, m) +# define BOOST_PP_FOR_99(s, p, o, m) BOOST_PP_IF(p(100, s), m, BOOST_PP_TUPLE_EAT_2)(100, s) BOOST_PP_IF(p(100, s), BOOST_PP_FOR_100, BOOST_PP_TUPLE_EAT_4)(o(100, s), p, o, m) +# define BOOST_PP_FOR_100(s, p, o, m) BOOST_PP_IF(p(101, s), m, BOOST_PP_TUPLE_EAT_2)(101, s) BOOST_PP_IF(p(101, s), BOOST_PP_FOR_101, BOOST_PP_TUPLE_EAT_4)(o(101, s), p, o, m) +# define BOOST_PP_FOR_101(s, p, o, m) BOOST_PP_IF(p(102, s), m, BOOST_PP_TUPLE_EAT_2)(102, s) BOOST_PP_IF(p(102, s), BOOST_PP_FOR_102, BOOST_PP_TUPLE_EAT_4)(o(102, s), p, o, m) +# define BOOST_PP_FOR_102(s, p, o, m) BOOST_PP_IF(p(103, s), m, BOOST_PP_TUPLE_EAT_2)(103, s) BOOST_PP_IF(p(103, s), BOOST_PP_FOR_103, BOOST_PP_TUPLE_EAT_4)(o(103, s), p, o, m) +# define BOOST_PP_FOR_103(s, p, o, m) BOOST_PP_IF(p(104, s), m, BOOST_PP_TUPLE_EAT_2)(104, s) BOOST_PP_IF(p(104, s), BOOST_PP_FOR_104, BOOST_PP_TUPLE_EAT_4)(o(104, s), p, o, m) +# define BOOST_PP_FOR_104(s, p, o, m) BOOST_PP_IF(p(105, s), m, BOOST_PP_TUPLE_EAT_2)(105, s) BOOST_PP_IF(p(105, s), BOOST_PP_FOR_105, BOOST_PP_TUPLE_EAT_4)(o(105, s), p, o, m) +# define BOOST_PP_FOR_105(s, p, o, m) BOOST_PP_IF(p(106, s), m, BOOST_PP_TUPLE_EAT_2)(106, s) BOOST_PP_IF(p(106, s), BOOST_PP_FOR_106, BOOST_PP_TUPLE_EAT_4)(o(106, s), p, o, m) +# define BOOST_PP_FOR_106(s, p, o, m) BOOST_PP_IF(p(107, s), m, BOOST_PP_TUPLE_EAT_2)(107, s) BOOST_PP_IF(p(107, s), BOOST_PP_FOR_107, BOOST_PP_TUPLE_EAT_4)(o(107, s), p, o, m) +# define BOOST_PP_FOR_107(s, p, o, m) BOOST_PP_IF(p(108, s), m, BOOST_PP_TUPLE_EAT_2)(108, s) BOOST_PP_IF(p(108, s), BOOST_PP_FOR_108, BOOST_PP_TUPLE_EAT_4)(o(108, s), p, o, m) +# define BOOST_PP_FOR_108(s, p, o, m) BOOST_PP_IF(p(109, s), m, BOOST_PP_TUPLE_EAT_2)(109, s) BOOST_PP_IF(p(109, s), BOOST_PP_FOR_109, BOOST_PP_TUPLE_EAT_4)(o(109, s), p, o, m) +# define BOOST_PP_FOR_109(s, p, o, m) BOOST_PP_IF(p(110, s), m, BOOST_PP_TUPLE_EAT_2)(110, s) BOOST_PP_IF(p(110, s), BOOST_PP_FOR_110, BOOST_PP_TUPLE_EAT_4)(o(110, s), p, o, m) +# define BOOST_PP_FOR_110(s, p, o, m) BOOST_PP_IF(p(111, s), m, BOOST_PP_TUPLE_EAT_2)(111, s) BOOST_PP_IF(p(111, s), BOOST_PP_FOR_111, BOOST_PP_TUPLE_EAT_4)(o(111, s), p, o, m) +# define BOOST_PP_FOR_111(s, p, o, m) BOOST_PP_IF(p(112, s), m, BOOST_PP_TUPLE_EAT_2)(112, s) BOOST_PP_IF(p(112, s), BOOST_PP_FOR_112, BOOST_PP_TUPLE_EAT_4)(o(112, s), p, o, m) +# define BOOST_PP_FOR_112(s, p, o, m) BOOST_PP_IF(p(113, s), m, BOOST_PP_TUPLE_EAT_2)(113, s) BOOST_PP_IF(p(113, s), BOOST_PP_FOR_113, BOOST_PP_TUPLE_EAT_4)(o(113, s), p, o, m) +# define BOOST_PP_FOR_113(s, p, o, m) BOOST_PP_IF(p(114, s), m, BOOST_PP_TUPLE_EAT_2)(114, s) BOOST_PP_IF(p(114, s), BOOST_PP_FOR_114, BOOST_PP_TUPLE_EAT_4)(o(114, s), p, o, m) +# define BOOST_PP_FOR_114(s, p, o, m) BOOST_PP_IF(p(115, s), m, BOOST_PP_TUPLE_EAT_2)(115, s) BOOST_PP_IF(p(115, s), BOOST_PP_FOR_115, BOOST_PP_TUPLE_EAT_4)(o(115, s), p, o, m) +# define BOOST_PP_FOR_115(s, p, o, m) BOOST_PP_IF(p(116, s), m, BOOST_PP_TUPLE_EAT_2)(116, s) BOOST_PP_IF(p(116, s), BOOST_PP_FOR_116, BOOST_PP_TUPLE_EAT_4)(o(116, s), p, o, m) +# define BOOST_PP_FOR_116(s, p, o, m) BOOST_PP_IF(p(117, s), m, BOOST_PP_TUPLE_EAT_2)(117, s) BOOST_PP_IF(p(117, s), BOOST_PP_FOR_117, BOOST_PP_TUPLE_EAT_4)(o(117, s), p, o, m) +# define BOOST_PP_FOR_117(s, p, o, m) BOOST_PP_IF(p(118, s), m, BOOST_PP_TUPLE_EAT_2)(118, s) BOOST_PP_IF(p(118, s), BOOST_PP_FOR_118, BOOST_PP_TUPLE_EAT_4)(o(118, s), p, o, m) +# define BOOST_PP_FOR_118(s, p, o, m) BOOST_PP_IF(p(119, s), m, BOOST_PP_TUPLE_EAT_2)(119, s) BOOST_PP_IF(p(119, s), BOOST_PP_FOR_119, BOOST_PP_TUPLE_EAT_4)(o(119, s), p, o, m) +# define BOOST_PP_FOR_119(s, p, o, m) BOOST_PP_IF(p(120, s), m, BOOST_PP_TUPLE_EAT_2)(120, s) BOOST_PP_IF(p(120, s), BOOST_PP_FOR_120, BOOST_PP_TUPLE_EAT_4)(o(120, s), p, o, m) +# define BOOST_PP_FOR_120(s, p, o, m) BOOST_PP_IF(p(121, s), m, BOOST_PP_TUPLE_EAT_2)(121, s) BOOST_PP_IF(p(121, s), BOOST_PP_FOR_121, BOOST_PP_TUPLE_EAT_4)(o(121, s), p, o, m) +# define BOOST_PP_FOR_121(s, p, o, m) BOOST_PP_IF(p(122, s), m, BOOST_PP_TUPLE_EAT_2)(122, s) BOOST_PP_IF(p(122, s), BOOST_PP_FOR_122, BOOST_PP_TUPLE_EAT_4)(o(122, s), p, o, m) +# define BOOST_PP_FOR_122(s, p, o, m) BOOST_PP_IF(p(123, s), m, BOOST_PP_TUPLE_EAT_2)(123, s) BOOST_PP_IF(p(123, s), BOOST_PP_FOR_123, BOOST_PP_TUPLE_EAT_4)(o(123, s), p, o, m) +# define BOOST_PP_FOR_123(s, p, o, m) BOOST_PP_IF(p(124, s), m, BOOST_PP_TUPLE_EAT_2)(124, s) BOOST_PP_IF(p(124, s), BOOST_PP_FOR_124, BOOST_PP_TUPLE_EAT_4)(o(124, s), p, o, m) +# define BOOST_PP_FOR_124(s, p, o, m) BOOST_PP_IF(p(125, s), m, BOOST_PP_TUPLE_EAT_2)(125, s) BOOST_PP_IF(p(125, s), BOOST_PP_FOR_125, BOOST_PP_TUPLE_EAT_4)(o(125, s), p, o, m) +# define BOOST_PP_FOR_125(s, p, o, m) BOOST_PP_IF(p(126, s), m, BOOST_PP_TUPLE_EAT_2)(126, s) BOOST_PP_IF(p(126, s), BOOST_PP_FOR_126, BOOST_PP_TUPLE_EAT_4)(o(126, s), p, o, m) +# define BOOST_PP_FOR_126(s, p, o, m) BOOST_PP_IF(p(127, s), m, BOOST_PP_TUPLE_EAT_2)(127, s) BOOST_PP_IF(p(127, s), BOOST_PP_FOR_127, BOOST_PP_TUPLE_EAT_4)(o(127, s), p, o, m) +# define BOOST_PP_FOR_127(s, p, o, m) BOOST_PP_IF(p(128, s), m, BOOST_PP_TUPLE_EAT_2)(128, s) BOOST_PP_IF(p(128, s), BOOST_PP_FOR_128, BOOST_PP_TUPLE_EAT_4)(o(128, s), p, o, m) +# define BOOST_PP_FOR_128(s, p, o, m) BOOST_PP_IF(p(129, s), m, BOOST_PP_TUPLE_EAT_2)(129, s) BOOST_PP_IF(p(129, s), BOOST_PP_FOR_129, BOOST_PP_TUPLE_EAT_4)(o(129, s), p, o, m) +# define BOOST_PP_FOR_129(s, p, o, m) BOOST_PP_IF(p(130, s), m, BOOST_PP_TUPLE_EAT_2)(130, s) BOOST_PP_IF(p(130, s), BOOST_PP_FOR_130, BOOST_PP_TUPLE_EAT_4)(o(130, s), p, o, m) +# define BOOST_PP_FOR_130(s, p, o, m) BOOST_PP_IF(p(131, s), m, BOOST_PP_TUPLE_EAT_2)(131, s) BOOST_PP_IF(p(131, s), BOOST_PP_FOR_131, BOOST_PP_TUPLE_EAT_4)(o(131, s), p, o, m) +# define BOOST_PP_FOR_131(s, p, o, m) BOOST_PP_IF(p(132, s), m, BOOST_PP_TUPLE_EAT_2)(132, s) BOOST_PP_IF(p(132, s), BOOST_PP_FOR_132, BOOST_PP_TUPLE_EAT_4)(o(132, s), p, o, m) +# define BOOST_PP_FOR_132(s, p, o, m) BOOST_PP_IF(p(133, s), m, BOOST_PP_TUPLE_EAT_2)(133, s) BOOST_PP_IF(p(133, s), BOOST_PP_FOR_133, BOOST_PP_TUPLE_EAT_4)(o(133, s), p, o, m) +# define BOOST_PP_FOR_133(s, p, o, m) BOOST_PP_IF(p(134, s), m, BOOST_PP_TUPLE_EAT_2)(134, s) BOOST_PP_IF(p(134, s), BOOST_PP_FOR_134, BOOST_PP_TUPLE_EAT_4)(o(134, s), p, o, m) +# define BOOST_PP_FOR_134(s, p, o, m) BOOST_PP_IF(p(135, s), m, BOOST_PP_TUPLE_EAT_2)(135, s) BOOST_PP_IF(p(135, s), BOOST_PP_FOR_135, BOOST_PP_TUPLE_EAT_4)(o(135, s), p, o, m) +# define BOOST_PP_FOR_135(s, p, o, m) BOOST_PP_IF(p(136, s), m, BOOST_PP_TUPLE_EAT_2)(136, s) BOOST_PP_IF(p(136, s), BOOST_PP_FOR_136, BOOST_PP_TUPLE_EAT_4)(o(136, s), p, o, m) +# define BOOST_PP_FOR_136(s, p, o, m) BOOST_PP_IF(p(137, s), m, BOOST_PP_TUPLE_EAT_2)(137, s) BOOST_PP_IF(p(137, s), BOOST_PP_FOR_137, BOOST_PP_TUPLE_EAT_4)(o(137, s), p, o, m) +# define BOOST_PP_FOR_137(s, p, o, m) BOOST_PP_IF(p(138, s), m, BOOST_PP_TUPLE_EAT_2)(138, s) BOOST_PP_IF(p(138, s), BOOST_PP_FOR_138, BOOST_PP_TUPLE_EAT_4)(o(138, s), p, o, m) +# define BOOST_PP_FOR_138(s, p, o, m) BOOST_PP_IF(p(139, s), m, BOOST_PP_TUPLE_EAT_2)(139, s) BOOST_PP_IF(p(139, s), BOOST_PP_FOR_139, BOOST_PP_TUPLE_EAT_4)(o(139, s), p, o, m) +# define BOOST_PP_FOR_139(s, p, o, m) BOOST_PP_IF(p(140, s), m, BOOST_PP_TUPLE_EAT_2)(140, s) BOOST_PP_IF(p(140, s), BOOST_PP_FOR_140, BOOST_PP_TUPLE_EAT_4)(o(140, s), p, o, m) +# define BOOST_PP_FOR_140(s, p, o, m) BOOST_PP_IF(p(141, s), m, BOOST_PP_TUPLE_EAT_2)(141, s) BOOST_PP_IF(p(141, s), BOOST_PP_FOR_141, BOOST_PP_TUPLE_EAT_4)(o(141, s), p, o, m) +# define BOOST_PP_FOR_141(s, p, o, m) BOOST_PP_IF(p(142, s), m, BOOST_PP_TUPLE_EAT_2)(142, s) BOOST_PP_IF(p(142, s), BOOST_PP_FOR_142, BOOST_PP_TUPLE_EAT_4)(o(142, s), p, o, m) +# define BOOST_PP_FOR_142(s, p, o, m) BOOST_PP_IF(p(143, s), m, BOOST_PP_TUPLE_EAT_2)(143, s) BOOST_PP_IF(p(143, s), BOOST_PP_FOR_143, BOOST_PP_TUPLE_EAT_4)(o(143, s), p, o, m) +# define BOOST_PP_FOR_143(s, p, o, m) BOOST_PP_IF(p(144, s), m, BOOST_PP_TUPLE_EAT_2)(144, s) BOOST_PP_IF(p(144, s), BOOST_PP_FOR_144, BOOST_PP_TUPLE_EAT_4)(o(144, s), p, o, m) +# define BOOST_PP_FOR_144(s, p, o, m) BOOST_PP_IF(p(145, s), m, BOOST_PP_TUPLE_EAT_2)(145, s) BOOST_PP_IF(p(145, s), BOOST_PP_FOR_145, BOOST_PP_TUPLE_EAT_4)(o(145, s), p, o, m) +# define BOOST_PP_FOR_145(s, p, o, m) BOOST_PP_IF(p(146, s), m, BOOST_PP_TUPLE_EAT_2)(146, s) BOOST_PP_IF(p(146, s), BOOST_PP_FOR_146, BOOST_PP_TUPLE_EAT_4)(o(146, s), p, o, m) +# define BOOST_PP_FOR_146(s, p, o, m) BOOST_PP_IF(p(147, s), m, BOOST_PP_TUPLE_EAT_2)(147, s) BOOST_PP_IF(p(147, s), BOOST_PP_FOR_147, BOOST_PP_TUPLE_EAT_4)(o(147, s), p, o, m) +# define BOOST_PP_FOR_147(s, p, o, m) BOOST_PP_IF(p(148, s), m, BOOST_PP_TUPLE_EAT_2)(148, s) BOOST_PP_IF(p(148, s), BOOST_PP_FOR_148, BOOST_PP_TUPLE_EAT_4)(o(148, s), p, o, m) +# define BOOST_PP_FOR_148(s, p, o, m) BOOST_PP_IF(p(149, s), m, BOOST_PP_TUPLE_EAT_2)(149, s) BOOST_PP_IF(p(149, s), BOOST_PP_FOR_149, BOOST_PP_TUPLE_EAT_4)(o(149, s), p, o, m) +# define BOOST_PP_FOR_149(s, p, o, m) BOOST_PP_IF(p(150, s), m, BOOST_PP_TUPLE_EAT_2)(150, s) BOOST_PP_IF(p(150, s), BOOST_PP_FOR_150, BOOST_PP_TUPLE_EAT_4)(o(150, s), p, o, m) +# define BOOST_PP_FOR_150(s, p, o, m) BOOST_PP_IF(p(151, s), m, BOOST_PP_TUPLE_EAT_2)(151, s) BOOST_PP_IF(p(151, s), BOOST_PP_FOR_151, BOOST_PP_TUPLE_EAT_4)(o(151, s), p, o, m) +# define BOOST_PP_FOR_151(s, p, o, m) BOOST_PP_IF(p(152, s), m, BOOST_PP_TUPLE_EAT_2)(152, s) BOOST_PP_IF(p(152, s), BOOST_PP_FOR_152, BOOST_PP_TUPLE_EAT_4)(o(152, s), p, o, m) +# define BOOST_PP_FOR_152(s, p, o, m) BOOST_PP_IF(p(153, s), m, BOOST_PP_TUPLE_EAT_2)(153, s) BOOST_PP_IF(p(153, s), BOOST_PP_FOR_153, BOOST_PP_TUPLE_EAT_4)(o(153, s), p, o, m) +# define BOOST_PP_FOR_153(s, p, o, m) BOOST_PP_IF(p(154, s), m, BOOST_PP_TUPLE_EAT_2)(154, s) BOOST_PP_IF(p(154, s), BOOST_PP_FOR_154, BOOST_PP_TUPLE_EAT_4)(o(154, s), p, o, m) +# define BOOST_PP_FOR_154(s, p, o, m) BOOST_PP_IF(p(155, s), m, BOOST_PP_TUPLE_EAT_2)(155, s) BOOST_PP_IF(p(155, s), BOOST_PP_FOR_155, BOOST_PP_TUPLE_EAT_4)(o(155, s), p, o, m) +# define BOOST_PP_FOR_155(s, p, o, m) BOOST_PP_IF(p(156, s), m, BOOST_PP_TUPLE_EAT_2)(156, s) BOOST_PP_IF(p(156, s), BOOST_PP_FOR_156, BOOST_PP_TUPLE_EAT_4)(o(156, s), p, o, m) +# define BOOST_PP_FOR_156(s, p, o, m) BOOST_PP_IF(p(157, s), m, BOOST_PP_TUPLE_EAT_2)(157, s) BOOST_PP_IF(p(157, s), BOOST_PP_FOR_157, BOOST_PP_TUPLE_EAT_4)(o(157, s), p, o, m) +# define BOOST_PP_FOR_157(s, p, o, m) BOOST_PP_IF(p(158, s), m, BOOST_PP_TUPLE_EAT_2)(158, s) BOOST_PP_IF(p(158, s), BOOST_PP_FOR_158, BOOST_PP_TUPLE_EAT_4)(o(158, s), p, o, m) +# define BOOST_PP_FOR_158(s, p, o, m) BOOST_PP_IF(p(159, s), m, BOOST_PP_TUPLE_EAT_2)(159, s) BOOST_PP_IF(p(159, s), BOOST_PP_FOR_159, BOOST_PP_TUPLE_EAT_4)(o(159, s), p, o, m) +# define BOOST_PP_FOR_159(s, p, o, m) BOOST_PP_IF(p(160, s), m, BOOST_PP_TUPLE_EAT_2)(160, s) BOOST_PP_IF(p(160, s), BOOST_PP_FOR_160, BOOST_PP_TUPLE_EAT_4)(o(160, s), p, o, m) +# define BOOST_PP_FOR_160(s, p, o, m) BOOST_PP_IF(p(161, s), m, BOOST_PP_TUPLE_EAT_2)(161, s) BOOST_PP_IF(p(161, s), BOOST_PP_FOR_161, BOOST_PP_TUPLE_EAT_4)(o(161, s), p, o, m) +# define BOOST_PP_FOR_161(s, p, o, m) BOOST_PP_IF(p(162, s), m, BOOST_PP_TUPLE_EAT_2)(162, s) BOOST_PP_IF(p(162, s), BOOST_PP_FOR_162, BOOST_PP_TUPLE_EAT_4)(o(162, s), p, o, m) +# define BOOST_PP_FOR_162(s, p, o, m) BOOST_PP_IF(p(163, s), m, BOOST_PP_TUPLE_EAT_2)(163, s) BOOST_PP_IF(p(163, s), BOOST_PP_FOR_163, BOOST_PP_TUPLE_EAT_4)(o(163, s), p, o, m) +# define BOOST_PP_FOR_163(s, p, o, m) BOOST_PP_IF(p(164, s), m, BOOST_PP_TUPLE_EAT_2)(164, s) BOOST_PP_IF(p(164, s), BOOST_PP_FOR_164, BOOST_PP_TUPLE_EAT_4)(o(164, s), p, o, m) +# define BOOST_PP_FOR_164(s, p, o, m) BOOST_PP_IF(p(165, s), m, BOOST_PP_TUPLE_EAT_2)(165, s) BOOST_PP_IF(p(165, s), BOOST_PP_FOR_165, BOOST_PP_TUPLE_EAT_4)(o(165, s), p, o, m) +# define BOOST_PP_FOR_165(s, p, o, m) BOOST_PP_IF(p(166, s), m, BOOST_PP_TUPLE_EAT_2)(166, s) BOOST_PP_IF(p(166, s), BOOST_PP_FOR_166, BOOST_PP_TUPLE_EAT_4)(o(166, s), p, o, m) +# define BOOST_PP_FOR_166(s, p, o, m) BOOST_PP_IF(p(167, s), m, BOOST_PP_TUPLE_EAT_2)(167, s) BOOST_PP_IF(p(167, s), BOOST_PP_FOR_167, BOOST_PP_TUPLE_EAT_4)(o(167, s), p, o, m) +# define BOOST_PP_FOR_167(s, p, o, m) BOOST_PP_IF(p(168, s), m, BOOST_PP_TUPLE_EAT_2)(168, s) BOOST_PP_IF(p(168, s), BOOST_PP_FOR_168, BOOST_PP_TUPLE_EAT_4)(o(168, s), p, o, m) +# define BOOST_PP_FOR_168(s, p, o, m) BOOST_PP_IF(p(169, s), m, BOOST_PP_TUPLE_EAT_2)(169, s) BOOST_PP_IF(p(169, s), BOOST_PP_FOR_169, BOOST_PP_TUPLE_EAT_4)(o(169, s), p, o, m) +# define BOOST_PP_FOR_169(s, p, o, m) BOOST_PP_IF(p(170, s), m, BOOST_PP_TUPLE_EAT_2)(170, s) BOOST_PP_IF(p(170, s), BOOST_PP_FOR_170, BOOST_PP_TUPLE_EAT_4)(o(170, s), p, o, m) +# define BOOST_PP_FOR_170(s, p, o, m) BOOST_PP_IF(p(171, s), m, BOOST_PP_TUPLE_EAT_2)(171, s) BOOST_PP_IF(p(171, s), BOOST_PP_FOR_171, BOOST_PP_TUPLE_EAT_4)(o(171, s), p, o, m) +# define BOOST_PP_FOR_171(s, p, o, m) BOOST_PP_IF(p(172, s), m, BOOST_PP_TUPLE_EAT_2)(172, s) BOOST_PP_IF(p(172, s), BOOST_PP_FOR_172, BOOST_PP_TUPLE_EAT_4)(o(172, s), p, o, m) +# define BOOST_PP_FOR_172(s, p, o, m) BOOST_PP_IF(p(173, s), m, BOOST_PP_TUPLE_EAT_2)(173, s) BOOST_PP_IF(p(173, s), BOOST_PP_FOR_173, BOOST_PP_TUPLE_EAT_4)(o(173, s), p, o, m) +# define BOOST_PP_FOR_173(s, p, o, m) BOOST_PP_IF(p(174, s), m, BOOST_PP_TUPLE_EAT_2)(174, s) BOOST_PP_IF(p(174, s), BOOST_PP_FOR_174, BOOST_PP_TUPLE_EAT_4)(o(174, s), p, o, m) +# define BOOST_PP_FOR_174(s, p, o, m) BOOST_PP_IF(p(175, s), m, BOOST_PP_TUPLE_EAT_2)(175, s) BOOST_PP_IF(p(175, s), BOOST_PP_FOR_175, BOOST_PP_TUPLE_EAT_4)(o(175, s), p, o, m) +# define BOOST_PP_FOR_175(s, p, o, m) BOOST_PP_IF(p(176, s), m, BOOST_PP_TUPLE_EAT_2)(176, s) BOOST_PP_IF(p(176, s), BOOST_PP_FOR_176, BOOST_PP_TUPLE_EAT_4)(o(176, s), p, o, m) +# define BOOST_PP_FOR_176(s, p, o, m) BOOST_PP_IF(p(177, s), m, BOOST_PP_TUPLE_EAT_2)(177, s) BOOST_PP_IF(p(177, s), BOOST_PP_FOR_177, BOOST_PP_TUPLE_EAT_4)(o(177, s), p, o, m) +# define BOOST_PP_FOR_177(s, p, o, m) BOOST_PP_IF(p(178, s), m, BOOST_PP_TUPLE_EAT_2)(178, s) BOOST_PP_IF(p(178, s), BOOST_PP_FOR_178, BOOST_PP_TUPLE_EAT_4)(o(178, s), p, o, m) +# define BOOST_PP_FOR_178(s, p, o, m) BOOST_PP_IF(p(179, s), m, BOOST_PP_TUPLE_EAT_2)(179, s) BOOST_PP_IF(p(179, s), BOOST_PP_FOR_179, BOOST_PP_TUPLE_EAT_4)(o(179, s), p, o, m) +# define BOOST_PP_FOR_179(s, p, o, m) BOOST_PP_IF(p(180, s), m, BOOST_PP_TUPLE_EAT_2)(180, s) BOOST_PP_IF(p(180, s), BOOST_PP_FOR_180, BOOST_PP_TUPLE_EAT_4)(o(180, s), p, o, m) +# define BOOST_PP_FOR_180(s, p, o, m) BOOST_PP_IF(p(181, s), m, BOOST_PP_TUPLE_EAT_2)(181, s) BOOST_PP_IF(p(181, s), BOOST_PP_FOR_181, BOOST_PP_TUPLE_EAT_4)(o(181, s), p, o, m) +# define BOOST_PP_FOR_181(s, p, o, m) BOOST_PP_IF(p(182, s), m, BOOST_PP_TUPLE_EAT_2)(182, s) BOOST_PP_IF(p(182, s), BOOST_PP_FOR_182, BOOST_PP_TUPLE_EAT_4)(o(182, s), p, o, m) +# define BOOST_PP_FOR_182(s, p, o, m) BOOST_PP_IF(p(183, s), m, BOOST_PP_TUPLE_EAT_2)(183, s) BOOST_PP_IF(p(183, s), BOOST_PP_FOR_183, BOOST_PP_TUPLE_EAT_4)(o(183, s), p, o, m) +# define BOOST_PP_FOR_183(s, p, o, m) BOOST_PP_IF(p(184, s), m, BOOST_PP_TUPLE_EAT_2)(184, s) BOOST_PP_IF(p(184, s), BOOST_PP_FOR_184, BOOST_PP_TUPLE_EAT_4)(o(184, s), p, o, m) +# define BOOST_PP_FOR_184(s, p, o, m) BOOST_PP_IF(p(185, s), m, BOOST_PP_TUPLE_EAT_2)(185, s) BOOST_PP_IF(p(185, s), BOOST_PP_FOR_185, BOOST_PP_TUPLE_EAT_4)(o(185, s), p, o, m) +# define BOOST_PP_FOR_185(s, p, o, m) BOOST_PP_IF(p(186, s), m, BOOST_PP_TUPLE_EAT_2)(186, s) BOOST_PP_IF(p(186, s), BOOST_PP_FOR_186, BOOST_PP_TUPLE_EAT_4)(o(186, s), p, o, m) +# define BOOST_PP_FOR_186(s, p, o, m) BOOST_PP_IF(p(187, s), m, BOOST_PP_TUPLE_EAT_2)(187, s) BOOST_PP_IF(p(187, s), BOOST_PP_FOR_187, BOOST_PP_TUPLE_EAT_4)(o(187, s), p, o, m) +# define BOOST_PP_FOR_187(s, p, o, m) BOOST_PP_IF(p(188, s), m, BOOST_PP_TUPLE_EAT_2)(188, s) BOOST_PP_IF(p(188, s), BOOST_PP_FOR_188, BOOST_PP_TUPLE_EAT_4)(o(188, s), p, o, m) +# define BOOST_PP_FOR_188(s, p, o, m) BOOST_PP_IF(p(189, s), m, BOOST_PP_TUPLE_EAT_2)(189, s) BOOST_PP_IF(p(189, s), BOOST_PP_FOR_189, BOOST_PP_TUPLE_EAT_4)(o(189, s), p, o, m) +# define BOOST_PP_FOR_189(s, p, o, m) BOOST_PP_IF(p(190, s), m, BOOST_PP_TUPLE_EAT_2)(190, s) BOOST_PP_IF(p(190, s), BOOST_PP_FOR_190, BOOST_PP_TUPLE_EAT_4)(o(190, s), p, o, m) +# define BOOST_PP_FOR_190(s, p, o, m) BOOST_PP_IF(p(191, s), m, BOOST_PP_TUPLE_EAT_2)(191, s) BOOST_PP_IF(p(191, s), BOOST_PP_FOR_191, BOOST_PP_TUPLE_EAT_4)(o(191, s), p, o, m) +# define BOOST_PP_FOR_191(s, p, o, m) BOOST_PP_IF(p(192, s), m, BOOST_PP_TUPLE_EAT_2)(192, s) BOOST_PP_IF(p(192, s), BOOST_PP_FOR_192, BOOST_PP_TUPLE_EAT_4)(o(192, s), p, o, m) +# define BOOST_PP_FOR_192(s, p, o, m) BOOST_PP_IF(p(193, s), m, BOOST_PP_TUPLE_EAT_2)(193, s) BOOST_PP_IF(p(193, s), BOOST_PP_FOR_193, BOOST_PP_TUPLE_EAT_4)(o(193, s), p, o, m) +# define BOOST_PP_FOR_193(s, p, o, m) BOOST_PP_IF(p(194, s), m, BOOST_PP_TUPLE_EAT_2)(194, s) BOOST_PP_IF(p(194, s), BOOST_PP_FOR_194, BOOST_PP_TUPLE_EAT_4)(o(194, s), p, o, m) +# define BOOST_PP_FOR_194(s, p, o, m) BOOST_PP_IF(p(195, s), m, BOOST_PP_TUPLE_EAT_2)(195, s) BOOST_PP_IF(p(195, s), BOOST_PP_FOR_195, BOOST_PP_TUPLE_EAT_4)(o(195, s), p, o, m) +# define BOOST_PP_FOR_195(s, p, o, m) BOOST_PP_IF(p(196, s), m, BOOST_PP_TUPLE_EAT_2)(196, s) BOOST_PP_IF(p(196, s), BOOST_PP_FOR_196, BOOST_PP_TUPLE_EAT_4)(o(196, s), p, o, m) +# define BOOST_PP_FOR_196(s, p, o, m) BOOST_PP_IF(p(197, s), m, BOOST_PP_TUPLE_EAT_2)(197, s) BOOST_PP_IF(p(197, s), BOOST_PP_FOR_197, BOOST_PP_TUPLE_EAT_4)(o(197, s), p, o, m) +# define BOOST_PP_FOR_197(s, p, o, m) BOOST_PP_IF(p(198, s), m, BOOST_PP_TUPLE_EAT_2)(198, s) BOOST_PP_IF(p(198, s), BOOST_PP_FOR_198, BOOST_PP_TUPLE_EAT_4)(o(198, s), p, o, m) +# define BOOST_PP_FOR_198(s, p, o, m) BOOST_PP_IF(p(199, s), m, BOOST_PP_TUPLE_EAT_2)(199, s) BOOST_PP_IF(p(199, s), BOOST_PP_FOR_199, BOOST_PP_TUPLE_EAT_4)(o(199, s), p, o, m) +# define BOOST_PP_FOR_199(s, p, o, m) BOOST_PP_IF(p(200, s), m, BOOST_PP_TUPLE_EAT_2)(200, s) BOOST_PP_IF(p(200, s), BOOST_PP_FOR_200, BOOST_PP_TUPLE_EAT_4)(o(200, s), p, o, m) +# define BOOST_PP_FOR_200(s, p, o, m) BOOST_PP_IF(p(201, s), m, BOOST_PP_TUPLE_EAT_2)(201, s) BOOST_PP_IF(p(201, s), BOOST_PP_FOR_201, BOOST_PP_TUPLE_EAT_4)(o(201, s), p, o, m) +# define BOOST_PP_FOR_201(s, p, o, m) BOOST_PP_IF(p(202, s), m, BOOST_PP_TUPLE_EAT_2)(202, s) BOOST_PP_IF(p(202, s), BOOST_PP_FOR_202, BOOST_PP_TUPLE_EAT_4)(o(202, s), p, o, m) +# define BOOST_PP_FOR_202(s, p, o, m) BOOST_PP_IF(p(203, s), m, BOOST_PP_TUPLE_EAT_2)(203, s) BOOST_PP_IF(p(203, s), BOOST_PP_FOR_203, BOOST_PP_TUPLE_EAT_4)(o(203, s), p, o, m) +# define BOOST_PP_FOR_203(s, p, o, m) BOOST_PP_IF(p(204, s), m, BOOST_PP_TUPLE_EAT_2)(204, s) BOOST_PP_IF(p(204, s), BOOST_PP_FOR_204, BOOST_PP_TUPLE_EAT_4)(o(204, s), p, o, m) +# define BOOST_PP_FOR_204(s, p, o, m) BOOST_PP_IF(p(205, s), m, BOOST_PP_TUPLE_EAT_2)(205, s) BOOST_PP_IF(p(205, s), BOOST_PP_FOR_205, BOOST_PP_TUPLE_EAT_4)(o(205, s), p, o, m) +# define BOOST_PP_FOR_205(s, p, o, m) BOOST_PP_IF(p(206, s), m, BOOST_PP_TUPLE_EAT_2)(206, s) BOOST_PP_IF(p(206, s), BOOST_PP_FOR_206, BOOST_PP_TUPLE_EAT_4)(o(206, s), p, o, m) +# define BOOST_PP_FOR_206(s, p, o, m) BOOST_PP_IF(p(207, s), m, BOOST_PP_TUPLE_EAT_2)(207, s) BOOST_PP_IF(p(207, s), BOOST_PP_FOR_207, BOOST_PP_TUPLE_EAT_4)(o(207, s), p, o, m) +# define BOOST_PP_FOR_207(s, p, o, m) BOOST_PP_IF(p(208, s), m, BOOST_PP_TUPLE_EAT_2)(208, s) BOOST_PP_IF(p(208, s), BOOST_PP_FOR_208, BOOST_PP_TUPLE_EAT_4)(o(208, s), p, o, m) +# define BOOST_PP_FOR_208(s, p, o, m) BOOST_PP_IF(p(209, s), m, BOOST_PP_TUPLE_EAT_2)(209, s) BOOST_PP_IF(p(209, s), BOOST_PP_FOR_209, BOOST_PP_TUPLE_EAT_4)(o(209, s), p, o, m) +# define BOOST_PP_FOR_209(s, p, o, m) BOOST_PP_IF(p(210, s), m, BOOST_PP_TUPLE_EAT_2)(210, s) BOOST_PP_IF(p(210, s), BOOST_PP_FOR_210, BOOST_PP_TUPLE_EAT_4)(o(210, s), p, o, m) +# define BOOST_PP_FOR_210(s, p, o, m) BOOST_PP_IF(p(211, s), m, BOOST_PP_TUPLE_EAT_2)(211, s) BOOST_PP_IF(p(211, s), BOOST_PP_FOR_211, BOOST_PP_TUPLE_EAT_4)(o(211, s), p, o, m) +# define BOOST_PP_FOR_211(s, p, o, m) BOOST_PP_IF(p(212, s), m, BOOST_PP_TUPLE_EAT_2)(212, s) BOOST_PP_IF(p(212, s), BOOST_PP_FOR_212, BOOST_PP_TUPLE_EAT_4)(o(212, s), p, o, m) +# define BOOST_PP_FOR_212(s, p, o, m) BOOST_PP_IF(p(213, s), m, BOOST_PP_TUPLE_EAT_2)(213, s) BOOST_PP_IF(p(213, s), BOOST_PP_FOR_213, BOOST_PP_TUPLE_EAT_4)(o(213, s), p, o, m) +# define BOOST_PP_FOR_213(s, p, o, m) BOOST_PP_IF(p(214, s), m, BOOST_PP_TUPLE_EAT_2)(214, s) BOOST_PP_IF(p(214, s), BOOST_PP_FOR_214, BOOST_PP_TUPLE_EAT_4)(o(214, s), p, o, m) +# define BOOST_PP_FOR_214(s, p, o, m) BOOST_PP_IF(p(215, s), m, BOOST_PP_TUPLE_EAT_2)(215, s) BOOST_PP_IF(p(215, s), BOOST_PP_FOR_215, BOOST_PP_TUPLE_EAT_4)(o(215, s), p, o, m) +# define BOOST_PP_FOR_215(s, p, o, m) BOOST_PP_IF(p(216, s), m, BOOST_PP_TUPLE_EAT_2)(216, s) BOOST_PP_IF(p(216, s), BOOST_PP_FOR_216, BOOST_PP_TUPLE_EAT_4)(o(216, s), p, o, m) +# define BOOST_PP_FOR_216(s, p, o, m) BOOST_PP_IF(p(217, s), m, BOOST_PP_TUPLE_EAT_2)(217, s) BOOST_PP_IF(p(217, s), BOOST_PP_FOR_217, BOOST_PP_TUPLE_EAT_4)(o(217, s), p, o, m) +# define BOOST_PP_FOR_217(s, p, o, m) BOOST_PP_IF(p(218, s), m, BOOST_PP_TUPLE_EAT_2)(218, s) BOOST_PP_IF(p(218, s), BOOST_PP_FOR_218, BOOST_PP_TUPLE_EAT_4)(o(218, s), p, o, m) +# define BOOST_PP_FOR_218(s, p, o, m) BOOST_PP_IF(p(219, s), m, BOOST_PP_TUPLE_EAT_2)(219, s) BOOST_PP_IF(p(219, s), BOOST_PP_FOR_219, BOOST_PP_TUPLE_EAT_4)(o(219, s), p, o, m) +# define BOOST_PP_FOR_219(s, p, o, m) BOOST_PP_IF(p(220, s), m, BOOST_PP_TUPLE_EAT_2)(220, s) BOOST_PP_IF(p(220, s), BOOST_PP_FOR_220, BOOST_PP_TUPLE_EAT_4)(o(220, s), p, o, m) +# define BOOST_PP_FOR_220(s, p, o, m) BOOST_PP_IF(p(221, s), m, BOOST_PP_TUPLE_EAT_2)(221, s) BOOST_PP_IF(p(221, s), BOOST_PP_FOR_221, BOOST_PP_TUPLE_EAT_4)(o(221, s), p, o, m) +# define BOOST_PP_FOR_221(s, p, o, m) BOOST_PP_IF(p(222, s), m, BOOST_PP_TUPLE_EAT_2)(222, s) BOOST_PP_IF(p(222, s), BOOST_PP_FOR_222, BOOST_PP_TUPLE_EAT_4)(o(222, s), p, o, m) +# define BOOST_PP_FOR_222(s, p, o, m) BOOST_PP_IF(p(223, s), m, BOOST_PP_TUPLE_EAT_2)(223, s) BOOST_PP_IF(p(223, s), BOOST_PP_FOR_223, BOOST_PP_TUPLE_EAT_4)(o(223, s), p, o, m) +# define BOOST_PP_FOR_223(s, p, o, m) BOOST_PP_IF(p(224, s), m, BOOST_PP_TUPLE_EAT_2)(224, s) BOOST_PP_IF(p(224, s), BOOST_PP_FOR_224, BOOST_PP_TUPLE_EAT_4)(o(224, s), p, o, m) +# define BOOST_PP_FOR_224(s, p, o, m) BOOST_PP_IF(p(225, s), m, BOOST_PP_TUPLE_EAT_2)(225, s) BOOST_PP_IF(p(225, s), BOOST_PP_FOR_225, BOOST_PP_TUPLE_EAT_4)(o(225, s), p, o, m) +# define BOOST_PP_FOR_225(s, p, o, m) BOOST_PP_IF(p(226, s), m, BOOST_PP_TUPLE_EAT_2)(226, s) BOOST_PP_IF(p(226, s), BOOST_PP_FOR_226, BOOST_PP_TUPLE_EAT_4)(o(226, s), p, o, m) +# define BOOST_PP_FOR_226(s, p, o, m) BOOST_PP_IF(p(227, s), m, BOOST_PP_TUPLE_EAT_2)(227, s) BOOST_PP_IF(p(227, s), BOOST_PP_FOR_227, BOOST_PP_TUPLE_EAT_4)(o(227, s), p, o, m) +# define BOOST_PP_FOR_227(s, p, o, m) BOOST_PP_IF(p(228, s), m, BOOST_PP_TUPLE_EAT_2)(228, s) BOOST_PP_IF(p(228, s), BOOST_PP_FOR_228, BOOST_PP_TUPLE_EAT_4)(o(228, s), p, o, m) +# define BOOST_PP_FOR_228(s, p, o, m) BOOST_PP_IF(p(229, s), m, BOOST_PP_TUPLE_EAT_2)(229, s) BOOST_PP_IF(p(229, s), BOOST_PP_FOR_229, BOOST_PP_TUPLE_EAT_4)(o(229, s), p, o, m) +# define BOOST_PP_FOR_229(s, p, o, m) BOOST_PP_IF(p(230, s), m, BOOST_PP_TUPLE_EAT_2)(230, s) BOOST_PP_IF(p(230, s), BOOST_PP_FOR_230, BOOST_PP_TUPLE_EAT_4)(o(230, s), p, o, m) +# define BOOST_PP_FOR_230(s, p, o, m) BOOST_PP_IF(p(231, s), m, BOOST_PP_TUPLE_EAT_2)(231, s) BOOST_PP_IF(p(231, s), BOOST_PP_FOR_231, BOOST_PP_TUPLE_EAT_4)(o(231, s), p, o, m) +# define BOOST_PP_FOR_231(s, p, o, m) BOOST_PP_IF(p(232, s), m, BOOST_PP_TUPLE_EAT_2)(232, s) BOOST_PP_IF(p(232, s), BOOST_PP_FOR_232, BOOST_PP_TUPLE_EAT_4)(o(232, s), p, o, m) +# define BOOST_PP_FOR_232(s, p, o, m) BOOST_PP_IF(p(233, s), m, BOOST_PP_TUPLE_EAT_2)(233, s) BOOST_PP_IF(p(233, s), BOOST_PP_FOR_233, BOOST_PP_TUPLE_EAT_4)(o(233, s), p, o, m) +# define BOOST_PP_FOR_233(s, p, o, m) BOOST_PP_IF(p(234, s), m, BOOST_PP_TUPLE_EAT_2)(234, s) BOOST_PP_IF(p(234, s), BOOST_PP_FOR_234, BOOST_PP_TUPLE_EAT_4)(o(234, s), p, o, m) +# define BOOST_PP_FOR_234(s, p, o, m) BOOST_PP_IF(p(235, s), m, BOOST_PP_TUPLE_EAT_2)(235, s) BOOST_PP_IF(p(235, s), BOOST_PP_FOR_235, BOOST_PP_TUPLE_EAT_4)(o(235, s), p, o, m) +# define BOOST_PP_FOR_235(s, p, o, m) BOOST_PP_IF(p(236, s), m, BOOST_PP_TUPLE_EAT_2)(236, s) BOOST_PP_IF(p(236, s), BOOST_PP_FOR_236, BOOST_PP_TUPLE_EAT_4)(o(236, s), p, o, m) +# define BOOST_PP_FOR_236(s, p, o, m) BOOST_PP_IF(p(237, s), m, BOOST_PP_TUPLE_EAT_2)(237, s) BOOST_PP_IF(p(237, s), BOOST_PP_FOR_237, BOOST_PP_TUPLE_EAT_4)(o(237, s), p, o, m) +# define BOOST_PP_FOR_237(s, p, o, m) BOOST_PP_IF(p(238, s), m, BOOST_PP_TUPLE_EAT_2)(238, s) BOOST_PP_IF(p(238, s), BOOST_PP_FOR_238, BOOST_PP_TUPLE_EAT_4)(o(238, s), p, o, m) +# define BOOST_PP_FOR_238(s, p, o, m) BOOST_PP_IF(p(239, s), m, BOOST_PP_TUPLE_EAT_2)(239, s) BOOST_PP_IF(p(239, s), BOOST_PP_FOR_239, BOOST_PP_TUPLE_EAT_4)(o(239, s), p, o, m) +# define BOOST_PP_FOR_239(s, p, o, m) BOOST_PP_IF(p(240, s), m, BOOST_PP_TUPLE_EAT_2)(240, s) BOOST_PP_IF(p(240, s), BOOST_PP_FOR_240, BOOST_PP_TUPLE_EAT_4)(o(240, s), p, o, m) +# define BOOST_PP_FOR_240(s, p, o, m) BOOST_PP_IF(p(241, s), m, BOOST_PP_TUPLE_EAT_2)(241, s) BOOST_PP_IF(p(241, s), BOOST_PP_FOR_241, BOOST_PP_TUPLE_EAT_4)(o(241, s), p, o, m) +# define BOOST_PP_FOR_241(s, p, o, m) BOOST_PP_IF(p(242, s), m, BOOST_PP_TUPLE_EAT_2)(242, s) BOOST_PP_IF(p(242, s), BOOST_PP_FOR_242, BOOST_PP_TUPLE_EAT_4)(o(242, s), p, o, m) +# define BOOST_PP_FOR_242(s, p, o, m) BOOST_PP_IF(p(243, s), m, BOOST_PP_TUPLE_EAT_2)(243, s) BOOST_PP_IF(p(243, s), BOOST_PP_FOR_243, BOOST_PP_TUPLE_EAT_4)(o(243, s), p, o, m) +# define BOOST_PP_FOR_243(s, p, o, m) BOOST_PP_IF(p(244, s), m, BOOST_PP_TUPLE_EAT_2)(244, s) BOOST_PP_IF(p(244, s), BOOST_PP_FOR_244, BOOST_PP_TUPLE_EAT_4)(o(244, s), p, o, m) +# define BOOST_PP_FOR_244(s, p, o, m) BOOST_PP_IF(p(245, s), m, BOOST_PP_TUPLE_EAT_2)(245, s) BOOST_PP_IF(p(245, s), BOOST_PP_FOR_245, BOOST_PP_TUPLE_EAT_4)(o(245, s), p, o, m) +# define BOOST_PP_FOR_245(s, p, o, m) BOOST_PP_IF(p(246, s), m, BOOST_PP_TUPLE_EAT_2)(246, s) BOOST_PP_IF(p(246, s), BOOST_PP_FOR_246, BOOST_PP_TUPLE_EAT_4)(o(246, s), p, o, m) +# define BOOST_PP_FOR_246(s, p, o, m) BOOST_PP_IF(p(247, s), m, BOOST_PP_TUPLE_EAT_2)(247, s) BOOST_PP_IF(p(247, s), BOOST_PP_FOR_247, BOOST_PP_TUPLE_EAT_4)(o(247, s), p, o, m) +# define BOOST_PP_FOR_247(s, p, o, m) BOOST_PP_IF(p(248, s), m, BOOST_PP_TUPLE_EAT_2)(248, s) BOOST_PP_IF(p(248, s), BOOST_PP_FOR_248, BOOST_PP_TUPLE_EAT_4)(o(248, s), p, o, m) +# define BOOST_PP_FOR_248(s, p, o, m) BOOST_PP_IF(p(249, s), m, BOOST_PP_TUPLE_EAT_2)(249, s) BOOST_PP_IF(p(249, s), BOOST_PP_FOR_249, BOOST_PP_TUPLE_EAT_4)(o(249, s), p, o, m) +# define BOOST_PP_FOR_249(s, p, o, m) BOOST_PP_IF(p(250, s), m, BOOST_PP_TUPLE_EAT_2)(250, s) BOOST_PP_IF(p(250, s), BOOST_PP_FOR_250, BOOST_PP_TUPLE_EAT_4)(o(250, s), p, o, m) +# define BOOST_PP_FOR_250(s, p, o, m) BOOST_PP_IF(p(251, s), m, BOOST_PP_TUPLE_EAT_2)(251, s) BOOST_PP_IF(p(251, s), BOOST_PP_FOR_251, BOOST_PP_TUPLE_EAT_4)(o(251, s), p, o, m) +# define BOOST_PP_FOR_251(s, p, o, m) BOOST_PP_IF(p(252, s), m, BOOST_PP_TUPLE_EAT_2)(252, s) BOOST_PP_IF(p(252, s), BOOST_PP_FOR_252, BOOST_PP_TUPLE_EAT_4)(o(252, s), p, o, m) +# define BOOST_PP_FOR_252(s, p, o, m) BOOST_PP_IF(p(253, s), m, BOOST_PP_TUPLE_EAT_2)(253, s) BOOST_PP_IF(p(253, s), BOOST_PP_FOR_253, BOOST_PP_TUPLE_EAT_4)(o(253, s), p, o, m) +# define BOOST_PP_FOR_253(s, p, o, m) BOOST_PP_IF(p(254, s), m, BOOST_PP_TUPLE_EAT_2)(254, s) BOOST_PP_IF(p(254, s), BOOST_PP_FOR_254, BOOST_PP_TUPLE_EAT_4)(o(254, s), p, o, m) +# define BOOST_PP_FOR_254(s, p, o, m) BOOST_PP_IF(p(255, s), m, BOOST_PP_TUPLE_EAT_2)(255, s) BOOST_PP_IF(p(255, s), BOOST_PP_FOR_255, BOOST_PP_TUPLE_EAT_4)(o(255, s), p, o, m) +# define BOOST_PP_FOR_255(s, p, o, m) BOOST_PP_IF(p(256, s), m, BOOST_PP_TUPLE_EAT_2)(256, s) BOOST_PP_IF(p(256, s), BOOST_PP_FOR_256, BOOST_PP_TUPLE_EAT_4)(o(256, s), p, o, m) +# define BOOST_PP_FOR_256(s, p, o, m) BOOST_PP_IF(p(257, s), m, BOOST_PP_TUPLE_EAT_2)(257, s) BOOST_PP_IF(p(257, s), BOOST_PP_FOR_257, BOOST_PP_TUPLE_EAT_4)(o(257, s), p, o, m) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum.hpp new file mode 100644 index 0000000..0198cd9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum.hpp @@ -0,0 +1,66 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM */ +# +# if 0 +# define BOOST_PP_ENUM(count, macro, data) +# endif +# +# define BOOST_PP_ENUM BOOST_PP_CAT(BOOST_PP_ENUM_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_1(c, m, d) BOOST_PP_REPEAT_1(c, BOOST_PP_ENUM_M_1, (m, d)) +# define BOOST_PP_ENUM_2(c, m, d) BOOST_PP_REPEAT_2(c, BOOST_PP_ENUM_M_2, (m, d)) +# define BOOST_PP_ENUM_3(c, m, d) BOOST_PP_REPEAT_3(c, BOOST_PP_ENUM_M_3, (m, d)) +# else +# define BOOST_PP_ENUM_1(c, m, d) BOOST_PP_ENUM_1_I(c, m, d) +# define BOOST_PP_ENUM_2(c, m, d) BOOST_PP_ENUM_2_I(c, m, d) +# define BOOST_PP_ENUM_3(c, m, d) BOOST_PP_ENUM_3_I(c, m, d) +# define BOOST_PP_ENUM_1_I(c, m, d) BOOST_PP_REPEAT_1(c, BOOST_PP_ENUM_M_1, (m, d)) +# define BOOST_PP_ENUM_2_I(c, m, d) BOOST_PP_REPEAT_2(c, BOOST_PP_ENUM_M_2, (m, d)) +# define BOOST_PP_ENUM_3_I(c, m, d) BOOST_PP_REPEAT_3(c, BOOST_PP_ENUM_M_3, (m, d)) +# endif +# +# define BOOST_PP_ENUM_4(c, m, d) BOOST_PP_ERROR(0x0003) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_M_1(z, n, md) BOOST_PP_ENUM_M_1_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_M_2(z, n, md) BOOST_PP_ENUM_M_2_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_M_3(z, n, md) BOOST_PP_ENUM_M_3_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_M_1_IM(z, n, im) BOOST_PP_ENUM_M_1_I(z, n, im) +# define BOOST_PP_ENUM_M_2_IM(z, n, im) BOOST_PP_ENUM_M_2_I(z, n, im) +# define BOOST_PP_ENUM_M_3_IM(z, n, im) BOOST_PP_ENUM_M_3_I(z, n, im) +# else +# define BOOST_PP_ENUM_M_1(z, n, md) BOOST_PP_ENUM_M_1_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_M_2(z, n, md) BOOST_PP_ENUM_M_2_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_M_3(z, n, md) BOOST_PP_ENUM_M_3_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# endif +# +# define BOOST_PP_ENUM_M_1_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, n, d) +# define BOOST_PP_ENUM_M_2_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, n, d) +# define BOOST_PP_ENUM_M_3_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, n, d) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_binary_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_binary_params.hpp new file mode 100644 index 0000000..a2c1048 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_binary_params.hpp @@ -0,0 +1,54 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_BINARY_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_BINARY_PARAMS_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_BINARY_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_BINARY_PARAMS(count, p1, p2) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_BINARY_PARAMS(count, p1, p2) BOOST_PP_ENUM_BINARY_PARAMS_I(count, p1, p2) +# define BOOST_PP_ENUM_BINARY_PARAMS_I(count, p1, p2) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_BINARY_PARAMS_M_IM(z, n, BOOST_PP_TUPLE_REM_2 pp) +# define BOOST_PP_ENUM_BINARY_PARAMS_M_IM(z, n, im) BOOST_PP_ENUM_BINARY_PARAMS_M_I(z, n, im) +# else +# define BOOST_PP_ENUM_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_BINARY_PARAMS_M_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, pp), BOOST_PP_TUPLE_ELEM(2, 1, pp)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_ENUM_BINARY_PARAMS_M_I(z, n, p1, p2) BOOST_PP_ENUM_BINARY_PARAMS_M_II(z, n, p1, p2) +# define BOOST_PP_ENUM_BINARY_PARAMS_M_II(z, n, p1, p2) BOOST_PP_COMMA_IF(n) p1 ## n p2 ## n +# else +# define BOOST_PP_ENUM_BINARY_PARAMS_M_I(z, n, p1, p2) BOOST_PP_COMMA_IF(n) BOOST_PP_CAT(p1, n) BOOST_PP_CAT(p2, n) +# endif +# +# /* BOOST_PP_ENUM_BINARY_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_ENUM_BINARY_PARAMS_Z_I(z, count, p1, p2) +# define BOOST_PP_ENUM_BINARY_PARAMS_Z_I(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_params.hpp new file mode 100644 index 0000000..65a2369 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_params.hpp @@ -0,0 +1,41 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_HPP +# +# include +# include +# include +# +# /* BOOST_PP_ENUM_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_PARAMS(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_PARAMS(count, param) BOOST_PP_ENUM_PARAMS_I(count, param) +# define BOOST_PP_ENUM_PARAMS_I(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_PARAMS_M, param) +# endif +# +# define BOOST_PP_ENUM_PARAMS_M(z, n, param) BOOST_PP_COMMA_IF(n) param ## n +# +# /* BOOST_PP_ENUM_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_PARAMS_Z(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_PARAMS_Z(z, count, param) BOOST_PP_ENUM_PARAMS_Z_I(z, count, param) +# define BOOST_PP_ENUM_PARAMS_Z_I(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_PARAMS_M, param) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp new file mode 100644 index 0000000..7496df6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_a_default.hpp @@ -0,0 +1,25 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_WITH_A_DEFAULT_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_WITH_A_DEFAULT_HPP +# +# include +# include +# include +# +# /* BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT */ +# +# define BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(count, param, def) BOOST_PP_ENUM_BINARY_PARAMS(count, param, = def BOOST_PP_INTERCEPT) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp new file mode 100644 index 0000000..fa0106f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_params_with_defaults.hpp @@ -0,0 +1,24 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_WITH_DEFAULTS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_PARAMS_WITH_DEFAULTS_HPP +# +# include +# include +# +# /* BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS */ +# +# define BOOST_PP_ENUM_PARAMS_WITH_DEFAULTS(count, param, def) BOOST_PP_ENUM_BINARY_PARAMS(count, param, = def) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_shifted.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted.hpp new file mode 100644 index 0000000..d5b006f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted.hpp @@ -0,0 +1,68 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_SHIFTED */ +# +# if 0 +# define BOOST_PP_ENUM_SHIFTED(count, macro, data) +# endif +# +# define BOOST_PP_ENUM_SHIFTED BOOST_PP_CAT(BOOST_PP_ENUM_SHIFTED_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_SHIFTED_1(c, m, d) BOOST_PP_REPEAT_1(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_1, (m, d)) +# define BOOST_PP_ENUM_SHIFTED_2(c, m, d) BOOST_PP_REPEAT_2(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_2, (m, d)) +# define BOOST_PP_ENUM_SHIFTED_3(c, m, d) BOOST_PP_REPEAT_3(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_3, (m, d)) +# else +# define BOOST_PP_ENUM_SHIFTED_1(c, m, d) BOOST_PP_ENUM_SHIFTED_1_I(c, m, d) +# define BOOST_PP_ENUM_SHIFTED_2(c, m, d) BOOST_PP_ENUM_SHIFTED_1_2(c, m, d) +# define BOOST_PP_ENUM_SHIFTED_3(c, m, d) BOOST_PP_ENUM_SHIFTED_1_3(c, m, d) +# define BOOST_PP_ENUM_SHIFTED_1_I(c, m, d) BOOST_PP_REPEAT_1(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_1, (m, d)) +# define BOOST_PP_ENUM_SHIFTED_2_I(c, m, d) BOOST_PP_REPEAT_2(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_2, (m, d)) +# define BOOST_PP_ENUM_SHIFTED_3_I(c, m, d) BOOST_PP_REPEAT_3(BOOST_PP_DEC(c), BOOST_PP_ENUM_SHIFTED_M_3, (m, d)) +# endif +# +# define BOOST_PP_ENUM_SHIFTED_4(c, m, d) BOOST_PP_ERROR(0x0003) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_SHIFTED_M_1(z, n, md) BOOST_PP_ENUM_SHIFTED_M_1_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_SHIFTED_M_2(z, n, md) BOOST_PP_ENUM_SHIFTED_M_2_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_SHIFTED_M_3(z, n, md) BOOST_PP_ENUM_SHIFTED_M_3_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_SHIFTED_M_1_IM(z, n, im) BOOST_PP_ENUM_SHIFTED_M_1_I(z, n, im) +# define BOOST_PP_ENUM_SHIFTED_M_2_IM(z, n, im) BOOST_PP_ENUM_SHIFTED_M_2_I(z, n, im) +# define BOOST_PP_ENUM_SHIFTED_M_3_IM(z, n, im) BOOST_PP_ENUM_SHIFTED_M_3_I(z, n, im) +# else +# define BOOST_PP_ENUM_SHIFTED_M_1(z, n, md) BOOST_PP_ENUM_SHIFTED_M_1_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_SHIFTED_M_2(z, n, md) BOOST_PP_ENUM_SHIFTED_M_2_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_SHIFTED_M_3(z, n, md) BOOST_PP_ENUM_SHIFTED_M_3_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# endif +# +# define BOOST_PP_ENUM_SHIFTED_M_1_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, BOOST_PP_INC(n), d) +# define BOOST_PP_ENUM_SHIFTED_M_2_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, BOOST_PP_INC(n), d) +# define BOOST_PP_ENUM_SHIFTED_M_3_I(z, n, m, d) BOOST_PP_COMMA_IF(n) m(z, BOOST_PP_INC(n), d) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp new file mode 100644 index 0000000..f3d20fc --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_binary_params.hpp @@ -0,0 +1,51 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2005. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_BINARY_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_BINARY_PARAMS_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS(count, p1, p2) BOOST_PP_REPEAT(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS(count, p1, p2) BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_I(count, p1, p2) +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_I(count, p1, p2) BOOST_PP_REPEAT(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M_IM(z, n, BOOST_PP_TUPLE_REM_2 pp) +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M_IM(z, n, im) BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M_I(z, n, im) +# else +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, pp), BOOST_PP_TUPLE_ELEM(2, 1, pp)) +# endif +# +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M_I(z, n, p1, p2) BOOST_PP_COMMA_IF(n) BOOST_PP_CAT(p1, BOOST_PP_INC(n)) BOOST_PP_CAT(p2, BOOST_PP_INC(n)) +# +# /* BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_Z_I(z, count, p1, p2) +# define BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_Z_I(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_params.hpp new file mode 100644 index 0000000..88b2bf4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_shifted_params.hpp @@ -0,0 +1,44 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_SHIFTED_PARAMS_HPP +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_SHIFTED_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_SHIFTED_PARAMS(count, param) BOOST_PP_REPEAT(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_SHIFTED_PARAMS(count, param) BOOST_PP_ENUM_SHIFTED_PARAMS_I(count, param) +# define BOOST_PP_ENUM_SHIFTED_PARAMS_I(count, param) BOOST_PP_REPEAT(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_PARAMS_M, param) +# endif +# +# define BOOST_PP_ENUM_SHIFTED_PARAMS_M(z, n, param) BOOST_PP_COMMA_IF(n) BOOST_PP_CAT(param, BOOST_PP_INC(n)) +# +# /* BOOST_PP_ENUM_SHIFTED_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_SHIFTED_PARAMS_Z(z, count, param) BOOST_PP_REPEAT_ ## z(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_SHIFTED_PARAMS_Z(z, count, param) BOOST_PP_ENUM_SHIFTED_PARAMS_Z_I(z, count, param) +# define BOOST_PP_ENUM_SHIFTED_PARAMS_Z_I(z, count, param) BOOST_PP_REPEAT_ ## z(BOOST_PP_DEC(count), BOOST_PP_ENUM_SHIFTED_PARAMS_M, param) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_trailing.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing.hpp new file mode 100644 index 0000000..20af2d5 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing.hpp @@ -0,0 +1,63 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_TRAILING */ +# +# if 0 +# define BOOST_PP_ENUM_TRAILING(count, macro, data) +# endif +# +# define BOOST_PP_ENUM_TRAILING BOOST_PP_CAT(BOOST_PP_ENUM_TRAILING_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_TRAILING_1(c, m, d) BOOST_PP_REPEAT_1(c, BOOST_PP_ENUM_TRAILING_M_1, (m, d)) +# define BOOST_PP_ENUM_TRAILING_2(c, m, d) BOOST_PP_REPEAT_2(c, BOOST_PP_ENUM_TRAILING_M_2, (m, d)) +# define BOOST_PP_ENUM_TRAILING_3(c, m, d) BOOST_PP_REPEAT_3(c, BOOST_PP_ENUM_TRAILING_M_3, (m, d)) +# else +# define BOOST_PP_ENUM_TRAILING_1(c, m, d) BOOST_PP_ENUM_TRAILING_1_I(c, m, d) +# define BOOST_PP_ENUM_TRAILING_2(c, m, d) BOOST_PP_ENUM_TRAILING_2_I(c, m, d) +# define BOOST_PP_ENUM_TRAILING_3(c, m, d) BOOST_PP_ENUM_TRAILING_3_I(c, m, d) +# define BOOST_PP_ENUM_TRAILING_1_I(c, m, d) BOOST_PP_REPEAT_1(c, BOOST_PP_ENUM_TRAILING_M_1, (m, d)) +# define BOOST_PP_ENUM_TRAILING_2_I(c, m, d) BOOST_PP_REPEAT_2(c, BOOST_PP_ENUM_TRAILING_M_2, (m, d)) +# define BOOST_PP_ENUM_TRAILING_3_I(c, m, d) BOOST_PP_REPEAT_3(c, BOOST_PP_ENUM_TRAILING_M_3, (m, d)) +# endif +# +# define BOOST_PP_ENUM_TRAILING_4(c, m, d) BOOST_PP_ERROR(0x0003) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_TRAILING_M_1(z, n, md) BOOST_PP_ENUM_TRAILING_M_1_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_TRAILING_M_2(z, n, md) BOOST_PP_ENUM_TRAILING_M_2_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_TRAILING_M_3(z, n, md) BOOST_PP_ENUM_TRAILING_M_3_IM(z, n, BOOST_PP_TUPLE_REM_2 md) +# define BOOST_PP_ENUM_TRAILING_M_1_IM(z, n, im) BOOST_PP_ENUM_TRAILING_M_1_I(z, n, im) +# define BOOST_PP_ENUM_TRAILING_M_2_IM(z, n, im) BOOST_PP_ENUM_TRAILING_M_2_I(z, n, im) +# define BOOST_PP_ENUM_TRAILING_M_3_IM(z, n, im) BOOST_PP_ENUM_TRAILING_M_3_I(z, n, im) +# else +# define BOOST_PP_ENUM_TRAILING_M_1(z, n, md) BOOST_PP_ENUM_TRAILING_M_1_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_TRAILING_M_2(z, n, md) BOOST_PP_ENUM_TRAILING_M_2_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# define BOOST_PP_ENUM_TRAILING_M_3(z, n, md) BOOST_PP_ENUM_TRAILING_M_3_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, md), BOOST_PP_TUPLE_ELEM(2, 1, md)) +# endif +# +# define BOOST_PP_ENUM_TRAILING_M_1_I(z, n, m, d) , m(z, n, d) +# define BOOST_PP_ENUM_TRAILING_M_2_I(z, n, m, d) , m(z, n, d) +# define BOOST_PP_ENUM_TRAILING_M_3_I(z, n, m, d) , m(z, n, d) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp new file mode 100644 index 0000000..e201b69 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_binary_params.hpp @@ -0,0 +1,53 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_BINARY_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_BINARY_PARAMS_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_ENUM_TRAILING_BINARY_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(count, p1, p2) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS(count, p1, p2) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_I(count, p1, p2) +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_I(count, p1, p2) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_IM(z, n, BOOST_PP_TUPLE_REM_2 pp) +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_IM(z, n, im) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_I(z, n, im) +# else +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M(z, n, pp) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_I(z, n, BOOST_PP_TUPLE_ELEM(2, 0, pp), BOOST_PP_TUPLE_ELEM(2, 1, pp)) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_I(z, n, p1, p2) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_II(z, n, p1, p2) +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_II(z, n, p1, p2) , p1 ## n p2 ## n +# else +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M_I(z, n, p1, p2) , BOOST_PP_CAT(p1, n) BOOST_PP_CAT(p2, n) +# endif +# +# /* BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M, (p1, p2)) +# else +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z(z, count, p1, p2) BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z_I(z, count, p1, p2) +# define BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_Z_I(z, count, p1, p2) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_BINARY_PARAMS_M, (p1, p2)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_params.hpp b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_params.hpp new file mode 100644 index 0000000..f7520db --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/enum_trailing_params.hpp @@ -0,0 +1,38 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_PARAMS_HPP +# define BOOST_PREPROCESSOR_REPETITION_ENUM_TRAILING_PARAMS_HPP +# +# include +# include +# +# /* BOOST_PP_ENUM_TRAILING_PARAMS */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_TRAILING_PARAMS(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_TRAILING_PARAMS(count, param) BOOST_PP_ENUM_TRAILING_PARAMS_I(count, param) +# define BOOST_PP_ENUM_TRAILING_PARAMS_I(count, param) BOOST_PP_REPEAT(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) +# endif +# +# define BOOST_PP_ENUM_TRAILING_PARAMS_M(z, n, param) , param ## n +# +# /* BOOST_PP_ENUM_TRAILING_PARAMS_Z */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_ENUM_TRAILING_PARAMS_Z(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) +# else +# define BOOST_PP_ENUM_TRAILING_PARAMS_Z(z, count, param) BOOST_PP_ENUM_TRAILING_PARAMS_Z_I(z, count, param) +# define BOOST_PP_ENUM_TRAILING_PARAMS_Z_I(z, count, param) BOOST_PP_REPEAT_ ## z(count, BOOST_PP_ENUM_TRAILING_PARAMS_M, param) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/for.hpp b/plugin/wave/include/boost/preprocessor/repetition/for.hpp new file mode 100644 index 0000000..c38946b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/for.hpp @@ -0,0 +1,324 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_FOR_HPP +# define BOOST_PREPROCESSOR_REPETITION_FOR_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_FOR */ +# +# if 0 +# define BOOST_PP_FOR(state, pred, op, macro) +# endif +# +# define BOOST_PP_FOR BOOST_PP_CAT(BOOST_PP_FOR_, BOOST_PP_AUTO_REC(BOOST_PP_FOR_P, 256)) +# +# define BOOST_PP_FOR_P(n) BOOST_PP_CAT(BOOST_PP_FOR_CHECK_, BOOST_PP_FOR_ ## n(1, BOOST_PP_FOR_SR_P, BOOST_PP_FOR_SR_O, BOOST_PP_FOR_SR_M)) +# +# define BOOST_PP_FOR_SR_P(r, s) s +# define BOOST_PP_FOR_SR_O(r, s) 0 +# define BOOST_PP_FOR_SR_M(r, s) BOOST_PP_NIL +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# include +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# include +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# include +# else +# include +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_FOR_257_PR(s, p) BOOST_PP_BOOL(p##(257, s)) +# else +# define BOOST_PP_FOR_257_PR(s, p) BOOST_PP_BOOL(p(257, s)) +# endif + +# define BOOST_PP_FOR_257_ERROR() BOOST_PP_ERROR(0x0002) +# define BOOST_PP_FOR_257(s, p, o, m) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_FOR_257_PR(s,p), \ + BOOST_PP_FOR_257_ERROR, \ + BOOST_PP_EMPTY \ + ) \ + () \ +/**/ +// # define BOOST_PP_FOR_257(s, p, o, m) BOOST_PP_ERROR(0x0002) +# +# define BOOST_PP_FOR_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_1(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_2(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_3(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_4(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_5(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_6(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_7(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_8(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_9(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_10(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_11(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_12(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_13(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_14(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_15(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_16(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_17(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_18(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_19(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_20(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_21(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_22(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_23(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_24(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_25(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_26(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_27(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_28(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_29(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_30(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_31(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_32(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_33(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_34(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_35(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_36(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_37(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_38(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_39(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_40(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_41(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_42(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_43(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_44(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_45(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_46(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_47(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_48(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_49(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_50(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_51(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_52(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_53(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_54(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_55(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_56(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_57(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_58(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_59(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_60(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_61(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_62(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_63(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_64(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_65(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_66(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_67(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_68(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_69(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_70(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_71(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_72(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_73(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_74(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_75(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_76(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_77(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_78(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_79(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_80(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_81(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_82(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_83(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_84(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_85(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_86(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_87(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_88(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_89(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_90(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_91(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_92(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_93(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_94(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_95(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_96(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_97(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_98(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_99(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_100(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_101(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_102(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_103(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_104(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_105(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_106(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_107(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_108(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_109(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_110(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_111(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_112(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_113(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_114(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_115(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_116(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_117(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_118(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_119(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_120(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_121(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_122(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_123(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_124(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_125(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_126(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_127(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_128(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_129(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_130(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_131(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_132(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_133(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_134(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_135(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_136(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_137(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_138(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_139(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_140(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_141(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_142(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_143(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_144(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_145(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_146(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_147(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_148(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_149(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_150(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_151(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_152(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_153(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_154(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_155(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_156(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_157(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_158(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_159(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_160(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_161(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_162(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_163(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_164(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_165(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_166(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_167(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_168(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_169(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_170(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_171(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_172(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_173(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_174(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_175(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_176(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_177(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_178(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_179(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_180(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_181(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_182(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_183(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_184(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_185(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_186(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_187(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_188(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_189(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_190(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_191(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_192(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_193(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_194(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_195(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_196(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_197(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_198(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_199(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_200(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_201(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_202(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_203(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_204(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_205(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_206(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_207(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_208(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_209(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_210(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_211(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_212(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_213(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_214(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_215(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_216(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_217(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_218(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_219(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_220(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_221(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_222(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_223(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_224(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_225(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_226(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_227(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_228(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_229(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_230(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_231(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_232(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_233(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_234(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_235(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_236(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_237(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_238(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_239(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_240(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_241(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_242(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_243(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_244(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_245(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_246(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_247(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_248(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_249(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_250(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_251(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_252(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_253(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_254(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_255(s, p, o, m) 0 +# define BOOST_PP_FOR_CHECK_BOOST_PP_FOR_256(s, p, o, m) 0 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/repeat.hpp b/plugin/wave/include/boost/preprocessor/repetition/repeat.hpp new file mode 100644 index 0000000..0172738 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/repeat.hpp @@ -0,0 +1,825 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_REPEAT_HPP +# define BOOST_PREPROCESSOR_REPETITION_REPEAT_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_REPEAT */ +# +# if 0 +# define BOOST_PP_REPEAT(count, macro, data) +# endif +# +# define BOOST_PP_REPEAT BOOST_PP_CAT(BOOST_PP_REPEAT_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# define BOOST_PP_REPEAT_P(n) BOOST_PP_CAT(BOOST_PP_REPEAT_CHECK_, BOOST_PP_REPEAT_ ## n(1, BOOST_PP_NIL BOOST_PP_TUPLE_EAT_3, BOOST_PP_NIL)) +# +# define BOOST_PP_REPEAT_CHECK_BOOST_PP_NIL 1 +# define BOOST_PP_REPEAT_CHECK_BOOST_PP_REPEAT_1(c, m, d) 0 +# define BOOST_PP_REPEAT_CHECK_BOOST_PP_REPEAT_2(c, m, d) 0 +# define BOOST_PP_REPEAT_CHECK_BOOST_PP_REPEAT_3(c, m, d) 0 +# +# define BOOST_PP_REPEAT_1(c, m, d) BOOST_PP_REPEAT_1_I(c, m, d) +# define BOOST_PP_REPEAT_2(c, m, d) BOOST_PP_REPEAT_2_I(c, m, d) +# define BOOST_PP_REPEAT_3(c, m, d) BOOST_PP_REPEAT_3_I(c, m, d) +# define BOOST_PP_REPEAT_4(c, m, d) BOOST_PP_ERROR(0x0003) +# +# define BOOST_PP_REPEAT_1_I(c, m, d) BOOST_PP_REPEAT_1_ ## c(m, d) +# define BOOST_PP_REPEAT_2_I(c, m, d) BOOST_PP_REPEAT_2_ ## c(m, d) +# define BOOST_PP_REPEAT_3_I(c, m, d) BOOST_PP_REPEAT_3_ ## c(m, d) +# +# define BOOST_PP_REPEAT_1ST BOOST_PP_REPEAT_1 +# define BOOST_PP_REPEAT_2ND BOOST_PP_REPEAT_2 +# define BOOST_PP_REPEAT_3RD BOOST_PP_REPEAT_3 +# +# define BOOST_PP_REPEAT_1_0(m, d) +# define BOOST_PP_REPEAT_1_1(m, d) m(2, 0, d) +# define BOOST_PP_REPEAT_1_2(m, d) BOOST_PP_REPEAT_1_1(m, d) m(2, 1, d) +# define BOOST_PP_REPEAT_1_3(m, d) BOOST_PP_REPEAT_1_2(m, d) m(2, 2, d) +# define BOOST_PP_REPEAT_1_4(m, d) BOOST_PP_REPEAT_1_3(m, d) m(2, 3, d) +# define BOOST_PP_REPEAT_1_5(m, d) BOOST_PP_REPEAT_1_4(m, d) m(2, 4, d) +# define BOOST_PP_REPEAT_1_6(m, d) BOOST_PP_REPEAT_1_5(m, d) m(2, 5, d) +# define BOOST_PP_REPEAT_1_7(m, d) BOOST_PP_REPEAT_1_6(m, d) m(2, 6, d) +# define BOOST_PP_REPEAT_1_8(m, d) BOOST_PP_REPEAT_1_7(m, d) m(2, 7, d) +# define BOOST_PP_REPEAT_1_9(m, d) BOOST_PP_REPEAT_1_8(m, d) m(2, 8, d) +# define BOOST_PP_REPEAT_1_10(m, d) BOOST_PP_REPEAT_1_9(m, d) m(2, 9, d) +# define BOOST_PP_REPEAT_1_11(m, d) BOOST_PP_REPEAT_1_10(m, d) m(2, 10, d) +# define BOOST_PP_REPEAT_1_12(m, d) BOOST_PP_REPEAT_1_11(m, d) m(2, 11, d) +# define BOOST_PP_REPEAT_1_13(m, d) BOOST_PP_REPEAT_1_12(m, d) m(2, 12, d) +# define BOOST_PP_REPEAT_1_14(m, d) BOOST_PP_REPEAT_1_13(m, d) m(2, 13, d) +# define BOOST_PP_REPEAT_1_15(m, d) BOOST_PP_REPEAT_1_14(m, d) m(2, 14, d) +# define BOOST_PP_REPEAT_1_16(m, d) BOOST_PP_REPEAT_1_15(m, d) m(2, 15, d) +# define BOOST_PP_REPEAT_1_17(m, d) BOOST_PP_REPEAT_1_16(m, d) m(2, 16, d) +# define BOOST_PP_REPEAT_1_18(m, d) BOOST_PP_REPEAT_1_17(m, d) m(2, 17, d) +# define BOOST_PP_REPEAT_1_19(m, d) BOOST_PP_REPEAT_1_18(m, d) m(2, 18, d) +# define BOOST_PP_REPEAT_1_20(m, d) BOOST_PP_REPEAT_1_19(m, d) m(2, 19, d) +# define BOOST_PP_REPEAT_1_21(m, d) BOOST_PP_REPEAT_1_20(m, d) m(2, 20, d) +# define BOOST_PP_REPEAT_1_22(m, d) BOOST_PP_REPEAT_1_21(m, d) m(2, 21, d) +# define BOOST_PP_REPEAT_1_23(m, d) BOOST_PP_REPEAT_1_22(m, d) m(2, 22, d) +# define BOOST_PP_REPEAT_1_24(m, d) BOOST_PP_REPEAT_1_23(m, d) m(2, 23, d) +# define BOOST_PP_REPEAT_1_25(m, d) BOOST_PP_REPEAT_1_24(m, d) m(2, 24, d) +# define BOOST_PP_REPEAT_1_26(m, d) BOOST_PP_REPEAT_1_25(m, d) m(2, 25, d) +# define BOOST_PP_REPEAT_1_27(m, d) BOOST_PP_REPEAT_1_26(m, d) m(2, 26, d) +# define BOOST_PP_REPEAT_1_28(m, d) BOOST_PP_REPEAT_1_27(m, d) m(2, 27, d) +# define BOOST_PP_REPEAT_1_29(m, d) BOOST_PP_REPEAT_1_28(m, d) m(2, 28, d) +# define BOOST_PP_REPEAT_1_30(m, d) BOOST_PP_REPEAT_1_29(m, d) m(2, 29, d) +# define BOOST_PP_REPEAT_1_31(m, d) BOOST_PP_REPEAT_1_30(m, d) m(2, 30, d) +# define BOOST_PP_REPEAT_1_32(m, d) BOOST_PP_REPEAT_1_31(m, d) m(2, 31, d) +# define BOOST_PP_REPEAT_1_33(m, d) BOOST_PP_REPEAT_1_32(m, d) m(2, 32, d) +# define BOOST_PP_REPEAT_1_34(m, d) BOOST_PP_REPEAT_1_33(m, d) m(2, 33, d) +# define BOOST_PP_REPEAT_1_35(m, d) BOOST_PP_REPEAT_1_34(m, d) m(2, 34, d) +# define BOOST_PP_REPEAT_1_36(m, d) BOOST_PP_REPEAT_1_35(m, d) m(2, 35, d) +# define BOOST_PP_REPEAT_1_37(m, d) BOOST_PP_REPEAT_1_36(m, d) m(2, 36, d) +# define BOOST_PP_REPEAT_1_38(m, d) BOOST_PP_REPEAT_1_37(m, d) m(2, 37, d) +# define BOOST_PP_REPEAT_1_39(m, d) BOOST_PP_REPEAT_1_38(m, d) m(2, 38, d) +# define BOOST_PP_REPEAT_1_40(m, d) BOOST_PP_REPEAT_1_39(m, d) m(2, 39, d) +# define BOOST_PP_REPEAT_1_41(m, d) BOOST_PP_REPEAT_1_40(m, d) m(2, 40, d) +# define BOOST_PP_REPEAT_1_42(m, d) BOOST_PP_REPEAT_1_41(m, d) m(2, 41, d) +# define BOOST_PP_REPEAT_1_43(m, d) BOOST_PP_REPEAT_1_42(m, d) m(2, 42, d) +# define BOOST_PP_REPEAT_1_44(m, d) BOOST_PP_REPEAT_1_43(m, d) m(2, 43, d) +# define BOOST_PP_REPEAT_1_45(m, d) BOOST_PP_REPEAT_1_44(m, d) m(2, 44, d) +# define BOOST_PP_REPEAT_1_46(m, d) BOOST_PP_REPEAT_1_45(m, d) m(2, 45, d) +# define BOOST_PP_REPEAT_1_47(m, d) BOOST_PP_REPEAT_1_46(m, d) m(2, 46, d) +# define BOOST_PP_REPEAT_1_48(m, d) BOOST_PP_REPEAT_1_47(m, d) m(2, 47, d) +# define BOOST_PP_REPEAT_1_49(m, d) BOOST_PP_REPEAT_1_48(m, d) m(2, 48, d) +# define BOOST_PP_REPEAT_1_50(m, d) BOOST_PP_REPEAT_1_49(m, d) m(2, 49, d) +# define BOOST_PP_REPEAT_1_51(m, d) BOOST_PP_REPEAT_1_50(m, d) m(2, 50, d) +# define BOOST_PP_REPEAT_1_52(m, d) BOOST_PP_REPEAT_1_51(m, d) m(2, 51, d) +# define BOOST_PP_REPEAT_1_53(m, d) BOOST_PP_REPEAT_1_52(m, d) m(2, 52, d) +# define BOOST_PP_REPEAT_1_54(m, d) BOOST_PP_REPEAT_1_53(m, d) m(2, 53, d) +# define BOOST_PP_REPEAT_1_55(m, d) BOOST_PP_REPEAT_1_54(m, d) m(2, 54, d) +# define BOOST_PP_REPEAT_1_56(m, d) BOOST_PP_REPEAT_1_55(m, d) m(2, 55, d) +# define BOOST_PP_REPEAT_1_57(m, d) BOOST_PP_REPEAT_1_56(m, d) m(2, 56, d) +# define BOOST_PP_REPEAT_1_58(m, d) BOOST_PP_REPEAT_1_57(m, d) m(2, 57, d) +# define BOOST_PP_REPEAT_1_59(m, d) BOOST_PP_REPEAT_1_58(m, d) m(2, 58, d) +# define BOOST_PP_REPEAT_1_60(m, d) BOOST_PP_REPEAT_1_59(m, d) m(2, 59, d) +# define BOOST_PP_REPEAT_1_61(m, d) BOOST_PP_REPEAT_1_60(m, d) m(2, 60, d) +# define BOOST_PP_REPEAT_1_62(m, d) BOOST_PP_REPEAT_1_61(m, d) m(2, 61, d) +# define BOOST_PP_REPEAT_1_63(m, d) BOOST_PP_REPEAT_1_62(m, d) m(2, 62, d) +# define BOOST_PP_REPEAT_1_64(m, d) BOOST_PP_REPEAT_1_63(m, d) m(2, 63, d) +# define BOOST_PP_REPEAT_1_65(m, d) BOOST_PP_REPEAT_1_64(m, d) m(2, 64, d) +# define BOOST_PP_REPEAT_1_66(m, d) BOOST_PP_REPEAT_1_65(m, d) m(2, 65, d) +# define BOOST_PP_REPEAT_1_67(m, d) BOOST_PP_REPEAT_1_66(m, d) m(2, 66, d) +# define BOOST_PP_REPEAT_1_68(m, d) BOOST_PP_REPEAT_1_67(m, d) m(2, 67, d) +# define BOOST_PP_REPEAT_1_69(m, d) BOOST_PP_REPEAT_1_68(m, d) m(2, 68, d) +# define BOOST_PP_REPEAT_1_70(m, d) BOOST_PP_REPEAT_1_69(m, d) m(2, 69, d) +# define BOOST_PP_REPEAT_1_71(m, d) BOOST_PP_REPEAT_1_70(m, d) m(2, 70, d) +# define BOOST_PP_REPEAT_1_72(m, d) BOOST_PP_REPEAT_1_71(m, d) m(2, 71, d) +# define BOOST_PP_REPEAT_1_73(m, d) BOOST_PP_REPEAT_1_72(m, d) m(2, 72, d) +# define BOOST_PP_REPEAT_1_74(m, d) BOOST_PP_REPEAT_1_73(m, d) m(2, 73, d) +# define BOOST_PP_REPEAT_1_75(m, d) BOOST_PP_REPEAT_1_74(m, d) m(2, 74, d) +# define BOOST_PP_REPEAT_1_76(m, d) BOOST_PP_REPEAT_1_75(m, d) m(2, 75, d) +# define BOOST_PP_REPEAT_1_77(m, d) BOOST_PP_REPEAT_1_76(m, d) m(2, 76, d) +# define BOOST_PP_REPEAT_1_78(m, d) BOOST_PP_REPEAT_1_77(m, d) m(2, 77, d) +# define BOOST_PP_REPEAT_1_79(m, d) BOOST_PP_REPEAT_1_78(m, d) m(2, 78, d) +# define BOOST_PP_REPEAT_1_80(m, d) BOOST_PP_REPEAT_1_79(m, d) m(2, 79, d) +# define BOOST_PP_REPEAT_1_81(m, d) BOOST_PP_REPEAT_1_80(m, d) m(2, 80, d) +# define BOOST_PP_REPEAT_1_82(m, d) BOOST_PP_REPEAT_1_81(m, d) m(2, 81, d) +# define BOOST_PP_REPEAT_1_83(m, d) BOOST_PP_REPEAT_1_82(m, d) m(2, 82, d) +# define BOOST_PP_REPEAT_1_84(m, d) BOOST_PP_REPEAT_1_83(m, d) m(2, 83, d) +# define BOOST_PP_REPEAT_1_85(m, d) BOOST_PP_REPEAT_1_84(m, d) m(2, 84, d) +# define BOOST_PP_REPEAT_1_86(m, d) BOOST_PP_REPEAT_1_85(m, d) m(2, 85, d) +# define BOOST_PP_REPEAT_1_87(m, d) BOOST_PP_REPEAT_1_86(m, d) m(2, 86, d) +# define BOOST_PP_REPEAT_1_88(m, d) BOOST_PP_REPEAT_1_87(m, d) m(2, 87, d) +# define BOOST_PP_REPEAT_1_89(m, d) BOOST_PP_REPEAT_1_88(m, d) m(2, 88, d) +# define BOOST_PP_REPEAT_1_90(m, d) BOOST_PP_REPEAT_1_89(m, d) m(2, 89, d) +# define BOOST_PP_REPEAT_1_91(m, d) BOOST_PP_REPEAT_1_90(m, d) m(2, 90, d) +# define BOOST_PP_REPEAT_1_92(m, d) BOOST_PP_REPEAT_1_91(m, d) m(2, 91, d) +# define BOOST_PP_REPEAT_1_93(m, d) BOOST_PP_REPEAT_1_92(m, d) m(2, 92, d) +# define BOOST_PP_REPEAT_1_94(m, d) BOOST_PP_REPEAT_1_93(m, d) m(2, 93, d) +# define BOOST_PP_REPEAT_1_95(m, d) BOOST_PP_REPEAT_1_94(m, d) m(2, 94, d) +# define BOOST_PP_REPEAT_1_96(m, d) BOOST_PP_REPEAT_1_95(m, d) m(2, 95, d) +# define BOOST_PP_REPEAT_1_97(m, d) BOOST_PP_REPEAT_1_96(m, d) m(2, 96, d) +# define BOOST_PP_REPEAT_1_98(m, d) BOOST_PP_REPEAT_1_97(m, d) m(2, 97, d) +# define BOOST_PP_REPEAT_1_99(m, d) BOOST_PP_REPEAT_1_98(m, d) m(2, 98, d) +# define BOOST_PP_REPEAT_1_100(m, d) BOOST_PP_REPEAT_1_99(m, d) m(2, 99, d) +# define BOOST_PP_REPEAT_1_101(m, d) BOOST_PP_REPEAT_1_100(m, d) m(2, 100, d) +# define BOOST_PP_REPEAT_1_102(m, d) BOOST_PP_REPEAT_1_101(m, d) m(2, 101, d) +# define BOOST_PP_REPEAT_1_103(m, d) BOOST_PP_REPEAT_1_102(m, d) m(2, 102, d) +# define BOOST_PP_REPEAT_1_104(m, d) BOOST_PP_REPEAT_1_103(m, d) m(2, 103, d) +# define BOOST_PP_REPEAT_1_105(m, d) BOOST_PP_REPEAT_1_104(m, d) m(2, 104, d) +# define BOOST_PP_REPEAT_1_106(m, d) BOOST_PP_REPEAT_1_105(m, d) m(2, 105, d) +# define BOOST_PP_REPEAT_1_107(m, d) BOOST_PP_REPEAT_1_106(m, d) m(2, 106, d) +# define BOOST_PP_REPEAT_1_108(m, d) BOOST_PP_REPEAT_1_107(m, d) m(2, 107, d) +# define BOOST_PP_REPEAT_1_109(m, d) BOOST_PP_REPEAT_1_108(m, d) m(2, 108, d) +# define BOOST_PP_REPEAT_1_110(m, d) BOOST_PP_REPEAT_1_109(m, d) m(2, 109, d) +# define BOOST_PP_REPEAT_1_111(m, d) BOOST_PP_REPEAT_1_110(m, d) m(2, 110, d) +# define BOOST_PP_REPEAT_1_112(m, d) BOOST_PP_REPEAT_1_111(m, d) m(2, 111, d) +# define BOOST_PP_REPEAT_1_113(m, d) BOOST_PP_REPEAT_1_112(m, d) m(2, 112, d) +# define BOOST_PP_REPEAT_1_114(m, d) BOOST_PP_REPEAT_1_113(m, d) m(2, 113, d) +# define BOOST_PP_REPEAT_1_115(m, d) BOOST_PP_REPEAT_1_114(m, d) m(2, 114, d) +# define BOOST_PP_REPEAT_1_116(m, d) BOOST_PP_REPEAT_1_115(m, d) m(2, 115, d) +# define BOOST_PP_REPEAT_1_117(m, d) BOOST_PP_REPEAT_1_116(m, d) m(2, 116, d) +# define BOOST_PP_REPEAT_1_118(m, d) BOOST_PP_REPEAT_1_117(m, d) m(2, 117, d) +# define BOOST_PP_REPEAT_1_119(m, d) BOOST_PP_REPEAT_1_118(m, d) m(2, 118, d) +# define BOOST_PP_REPEAT_1_120(m, d) BOOST_PP_REPEAT_1_119(m, d) m(2, 119, d) +# define BOOST_PP_REPEAT_1_121(m, d) BOOST_PP_REPEAT_1_120(m, d) m(2, 120, d) +# define BOOST_PP_REPEAT_1_122(m, d) BOOST_PP_REPEAT_1_121(m, d) m(2, 121, d) +# define BOOST_PP_REPEAT_1_123(m, d) BOOST_PP_REPEAT_1_122(m, d) m(2, 122, d) +# define BOOST_PP_REPEAT_1_124(m, d) BOOST_PP_REPEAT_1_123(m, d) m(2, 123, d) +# define BOOST_PP_REPEAT_1_125(m, d) BOOST_PP_REPEAT_1_124(m, d) m(2, 124, d) +# define BOOST_PP_REPEAT_1_126(m, d) BOOST_PP_REPEAT_1_125(m, d) m(2, 125, d) +# define BOOST_PP_REPEAT_1_127(m, d) BOOST_PP_REPEAT_1_126(m, d) m(2, 126, d) +# define BOOST_PP_REPEAT_1_128(m, d) BOOST_PP_REPEAT_1_127(m, d) m(2, 127, d) +# define BOOST_PP_REPEAT_1_129(m, d) BOOST_PP_REPEAT_1_128(m, d) m(2, 128, d) +# define BOOST_PP_REPEAT_1_130(m, d) BOOST_PP_REPEAT_1_129(m, d) m(2, 129, d) +# define BOOST_PP_REPEAT_1_131(m, d) BOOST_PP_REPEAT_1_130(m, d) m(2, 130, d) +# define BOOST_PP_REPEAT_1_132(m, d) BOOST_PP_REPEAT_1_131(m, d) m(2, 131, d) +# define BOOST_PP_REPEAT_1_133(m, d) BOOST_PP_REPEAT_1_132(m, d) m(2, 132, d) +# define BOOST_PP_REPEAT_1_134(m, d) BOOST_PP_REPEAT_1_133(m, d) m(2, 133, d) +# define BOOST_PP_REPEAT_1_135(m, d) BOOST_PP_REPEAT_1_134(m, d) m(2, 134, d) +# define BOOST_PP_REPEAT_1_136(m, d) BOOST_PP_REPEAT_1_135(m, d) m(2, 135, d) +# define BOOST_PP_REPEAT_1_137(m, d) BOOST_PP_REPEAT_1_136(m, d) m(2, 136, d) +# define BOOST_PP_REPEAT_1_138(m, d) BOOST_PP_REPEAT_1_137(m, d) m(2, 137, d) +# define BOOST_PP_REPEAT_1_139(m, d) BOOST_PP_REPEAT_1_138(m, d) m(2, 138, d) +# define BOOST_PP_REPEAT_1_140(m, d) BOOST_PP_REPEAT_1_139(m, d) m(2, 139, d) +# define BOOST_PP_REPEAT_1_141(m, d) BOOST_PP_REPEAT_1_140(m, d) m(2, 140, d) +# define BOOST_PP_REPEAT_1_142(m, d) BOOST_PP_REPEAT_1_141(m, d) m(2, 141, d) +# define BOOST_PP_REPEAT_1_143(m, d) BOOST_PP_REPEAT_1_142(m, d) m(2, 142, d) +# define BOOST_PP_REPEAT_1_144(m, d) BOOST_PP_REPEAT_1_143(m, d) m(2, 143, d) +# define BOOST_PP_REPEAT_1_145(m, d) BOOST_PP_REPEAT_1_144(m, d) m(2, 144, d) +# define BOOST_PP_REPEAT_1_146(m, d) BOOST_PP_REPEAT_1_145(m, d) m(2, 145, d) +# define BOOST_PP_REPEAT_1_147(m, d) BOOST_PP_REPEAT_1_146(m, d) m(2, 146, d) +# define BOOST_PP_REPEAT_1_148(m, d) BOOST_PP_REPEAT_1_147(m, d) m(2, 147, d) +# define BOOST_PP_REPEAT_1_149(m, d) BOOST_PP_REPEAT_1_148(m, d) m(2, 148, d) +# define BOOST_PP_REPEAT_1_150(m, d) BOOST_PP_REPEAT_1_149(m, d) m(2, 149, d) +# define BOOST_PP_REPEAT_1_151(m, d) BOOST_PP_REPEAT_1_150(m, d) m(2, 150, d) +# define BOOST_PP_REPEAT_1_152(m, d) BOOST_PP_REPEAT_1_151(m, d) m(2, 151, d) +# define BOOST_PP_REPEAT_1_153(m, d) BOOST_PP_REPEAT_1_152(m, d) m(2, 152, d) +# define BOOST_PP_REPEAT_1_154(m, d) BOOST_PP_REPEAT_1_153(m, d) m(2, 153, d) +# define BOOST_PP_REPEAT_1_155(m, d) BOOST_PP_REPEAT_1_154(m, d) m(2, 154, d) +# define BOOST_PP_REPEAT_1_156(m, d) BOOST_PP_REPEAT_1_155(m, d) m(2, 155, d) +# define BOOST_PP_REPEAT_1_157(m, d) BOOST_PP_REPEAT_1_156(m, d) m(2, 156, d) +# define BOOST_PP_REPEAT_1_158(m, d) BOOST_PP_REPEAT_1_157(m, d) m(2, 157, d) +# define BOOST_PP_REPEAT_1_159(m, d) BOOST_PP_REPEAT_1_158(m, d) m(2, 158, d) +# define BOOST_PP_REPEAT_1_160(m, d) BOOST_PP_REPEAT_1_159(m, d) m(2, 159, d) +# define BOOST_PP_REPEAT_1_161(m, d) BOOST_PP_REPEAT_1_160(m, d) m(2, 160, d) +# define BOOST_PP_REPEAT_1_162(m, d) BOOST_PP_REPEAT_1_161(m, d) m(2, 161, d) +# define BOOST_PP_REPEAT_1_163(m, d) BOOST_PP_REPEAT_1_162(m, d) m(2, 162, d) +# define BOOST_PP_REPEAT_1_164(m, d) BOOST_PP_REPEAT_1_163(m, d) m(2, 163, d) +# define BOOST_PP_REPEAT_1_165(m, d) BOOST_PP_REPEAT_1_164(m, d) m(2, 164, d) +# define BOOST_PP_REPEAT_1_166(m, d) BOOST_PP_REPEAT_1_165(m, d) m(2, 165, d) +# define BOOST_PP_REPEAT_1_167(m, d) BOOST_PP_REPEAT_1_166(m, d) m(2, 166, d) +# define BOOST_PP_REPEAT_1_168(m, d) BOOST_PP_REPEAT_1_167(m, d) m(2, 167, d) +# define BOOST_PP_REPEAT_1_169(m, d) BOOST_PP_REPEAT_1_168(m, d) m(2, 168, d) +# define BOOST_PP_REPEAT_1_170(m, d) BOOST_PP_REPEAT_1_169(m, d) m(2, 169, d) +# define BOOST_PP_REPEAT_1_171(m, d) BOOST_PP_REPEAT_1_170(m, d) m(2, 170, d) +# define BOOST_PP_REPEAT_1_172(m, d) BOOST_PP_REPEAT_1_171(m, d) m(2, 171, d) +# define BOOST_PP_REPEAT_1_173(m, d) BOOST_PP_REPEAT_1_172(m, d) m(2, 172, d) +# define BOOST_PP_REPEAT_1_174(m, d) BOOST_PP_REPEAT_1_173(m, d) m(2, 173, d) +# define BOOST_PP_REPEAT_1_175(m, d) BOOST_PP_REPEAT_1_174(m, d) m(2, 174, d) +# define BOOST_PP_REPEAT_1_176(m, d) BOOST_PP_REPEAT_1_175(m, d) m(2, 175, d) +# define BOOST_PP_REPEAT_1_177(m, d) BOOST_PP_REPEAT_1_176(m, d) m(2, 176, d) +# define BOOST_PP_REPEAT_1_178(m, d) BOOST_PP_REPEAT_1_177(m, d) m(2, 177, d) +# define BOOST_PP_REPEAT_1_179(m, d) BOOST_PP_REPEAT_1_178(m, d) m(2, 178, d) +# define BOOST_PP_REPEAT_1_180(m, d) BOOST_PP_REPEAT_1_179(m, d) m(2, 179, d) +# define BOOST_PP_REPEAT_1_181(m, d) BOOST_PP_REPEAT_1_180(m, d) m(2, 180, d) +# define BOOST_PP_REPEAT_1_182(m, d) BOOST_PP_REPEAT_1_181(m, d) m(2, 181, d) +# define BOOST_PP_REPEAT_1_183(m, d) BOOST_PP_REPEAT_1_182(m, d) m(2, 182, d) +# define BOOST_PP_REPEAT_1_184(m, d) BOOST_PP_REPEAT_1_183(m, d) m(2, 183, d) +# define BOOST_PP_REPEAT_1_185(m, d) BOOST_PP_REPEAT_1_184(m, d) m(2, 184, d) +# define BOOST_PP_REPEAT_1_186(m, d) BOOST_PP_REPEAT_1_185(m, d) m(2, 185, d) +# define BOOST_PP_REPEAT_1_187(m, d) BOOST_PP_REPEAT_1_186(m, d) m(2, 186, d) +# define BOOST_PP_REPEAT_1_188(m, d) BOOST_PP_REPEAT_1_187(m, d) m(2, 187, d) +# define BOOST_PP_REPEAT_1_189(m, d) BOOST_PP_REPEAT_1_188(m, d) m(2, 188, d) +# define BOOST_PP_REPEAT_1_190(m, d) BOOST_PP_REPEAT_1_189(m, d) m(2, 189, d) +# define BOOST_PP_REPEAT_1_191(m, d) BOOST_PP_REPEAT_1_190(m, d) m(2, 190, d) +# define BOOST_PP_REPEAT_1_192(m, d) BOOST_PP_REPEAT_1_191(m, d) m(2, 191, d) +# define BOOST_PP_REPEAT_1_193(m, d) BOOST_PP_REPEAT_1_192(m, d) m(2, 192, d) +# define BOOST_PP_REPEAT_1_194(m, d) BOOST_PP_REPEAT_1_193(m, d) m(2, 193, d) +# define BOOST_PP_REPEAT_1_195(m, d) BOOST_PP_REPEAT_1_194(m, d) m(2, 194, d) +# define BOOST_PP_REPEAT_1_196(m, d) BOOST_PP_REPEAT_1_195(m, d) m(2, 195, d) +# define BOOST_PP_REPEAT_1_197(m, d) BOOST_PP_REPEAT_1_196(m, d) m(2, 196, d) +# define BOOST_PP_REPEAT_1_198(m, d) BOOST_PP_REPEAT_1_197(m, d) m(2, 197, d) +# define BOOST_PP_REPEAT_1_199(m, d) BOOST_PP_REPEAT_1_198(m, d) m(2, 198, d) +# define BOOST_PP_REPEAT_1_200(m, d) BOOST_PP_REPEAT_1_199(m, d) m(2, 199, d) +# define BOOST_PP_REPEAT_1_201(m, d) BOOST_PP_REPEAT_1_200(m, d) m(2, 200, d) +# define BOOST_PP_REPEAT_1_202(m, d) BOOST_PP_REPEAT_1_201(m, d) m(2, 201, d) +# define BOOST_PP_REPEAT_1_203(m, d) BOOST_PP_REPEAT_1_202(m, d) m(2, 202, d) +# define BOOST_PP_REPEAT_1_204(m, d) BOOST_PP_REPEAT_1_203(m, d) m(2, 203, d) +# define BOOST_PP_REPEAT_1_205(m, d) BOOST_PP_REPEAT_1_204(m, d) m(2, 204, d) +# define BOOST_PP_REPEAT_1_206(m, d) BOOST_PP_REPEAT_1_205(m, d) m(2, 205, d) +# define BOOST_PP_REPEAT_1_207(m, d) BOOST_PP_REPEAT_1_206(m, d) m(2, 206, d) +# define BOOST_PP_REPEAT_1_208(m, d) BOOST_PP_REPEAT_1_207(m, d) m(2, 207, d) +# define BOOST_PP_REPEAT_1_209(m, d) BOOST_PP_REPEAT_1_208(m, d) m(2, 208, d) +# define BOOST_PP_REPEAT_1_210(m, d) BOOST_PP_REPEAT_1_209(m, d) m(2, 209, d) +# define BOOST_PP_REPEAT_1_211(m, d) BOOST_PP_REPEAT_1_210(m, d) m(2, 210, d) +# define BOOST_PP_REPEAT_1_212(m, d) BOOST_PP_REPEAT_1_211(m, d) m(2, 211, d) +# define BOOST_PP_REPEAT_1_213(m, d) BOOST_PP_REPEAT_1_212(m, d) m(2, 212, d) +# define BOOST_PP_REPEAT_1_214(m, d) BOOST_PP_REPEAT_1_213(m, d) m(2, 213, d) +# define BOOST_PP_REPEAT_1_215(m, d) BOOST_PP_REPEAT_1_214(m, d) m(2, 214, d) +# define BOOST_PP_REPEAT_1_216(m, d) BOOST_PP_REPEAT_1_215(m, d) m(2, 215, d) +# define BOOST_PP_REPEAT_1_217(m, d) BOOST_PP_REPEAT_1_216(m, d) m(2, 216, d) +# define BOOST_PP_REPEAT_1_218(m, d) BOOST_PP_REPEAT_1_217(m, d) m(2, 217, d) +# define BOOST_PP_REPEAT_1_219(m, d) BOOST_PP_REPEAT_1_218(m, d) m(2, 218, d) +# define BOOST_PP_REPEAT_1_220(m, d) BOOST_PP_REPEAT_1_219(m, d) m(2, 219, d) +# define BOOST_PP_REPEAT_1_221(m, d) BOOST_PP_REPEAT_1_220(m, d) m(2, 220, d) +# define BOOST_PP_REPEAT_1_222(m, d) BOOST_PP_REPEAT_1_221(m, d) m(2, 221, d) +# define BOOST_PP_REPEAT_1_223(m, d) BOOST_PP_REPEAT_1_222(m, d) m(2, 222, d) +# define BOOST_PP_REPEAT_1_224(m, d) BOOST_PP_REPEAT_1_223(m, d) m(2, 223, d) +# define BOOST_PP_REPEAT_1_225(m, d) BOOST_PP_REPEAT_1_224(m, d) m(2, 224, d) +# define BOOST_PP_REPEAT_1_226(m, d) BOOST_PP_REPEAT_1_225(m, d) m(2, 225, d) +# define BOOST_PP_REPEAT_1_227(m, d) BOOST_PP_REPEAT_1_226(m, d) m(2, 226, d) +# define BOOST_PP_REPEAT_1_228(m, d) BOOST_PP_REPEAT_1_227(m, d) m(2, 227, d) +# define BOOST_PP_REPEAT_1_229(m, d) BOOST_PP_REPEAT_1_228(m, d) m(2, 228, d) +# define BOOST_PP_REPEAT_1_230(m, d) BOOST_PP_REPEAT_1_229(m, d) m(2, 229, d) +# define BOOST_PP_REPEAT_1_231(m, d) BOOST_PP_REPEAT_1_230(m, d) m(2, 230, d) +# define BOOST_PP_REPEAT_1_232(m, d) BOOST_PP_REPEAT_1_231(m, d) m(2, 231, d) +# define BOOST_PP_REPEAT_1_233(m, d) BOOST_PP_REPEAT_1_232(m, d) m(2, 232, d) +# define BOOST_PP_REPEAT_1_234(m, d) BOOST_PP_REPEAT_1_233(m, d) m(2, 233, d) +# define BOOST_PP_REPEAT_1_235(m, d) BOOST_PP_REPEAT_1_234(m, d) m(2, 234, d) +# define BOOST_PP_REPEAT_1_236(m, d) BOOST_PP_REPEAT_1_235(m, d) m(2, 235, d) +# define BOOST_PP_REPEAT_1_237(m, d) BOOST_PP_REPEAT_1_236(m, d) m(2, 236, d) +# define BOOST_PP_REPEAT_1_238(m, d) BOOST_PP_REPEAT_1_237(m, d) m(2, 237, d) +# define BOOST_PP_REPEAT_1_239(m, d) BOOST_PP_REPEAT_1_238(m, d) m(2, 238, d) +# define BOOST_PP_REPEAT_1_240(m, d) BOOST_PP_REPEAT_1_239(m, d) m(2, 239, d) +# define BOOST_PP_REPEAT_1_241(m, d) BOOST_PP_REPEAT_1_240(m, d) m(2, 240, d) +# define BOOST_PP_REPEAT_1_242(m, d) BOOST_PP_REPEAT_1_241(m, d) m(2, 241, d) +# define BOOST_PP_REPEAT_1_243(m, d) BOOST_PP_REPEAT_1_242(m, d) m(2, 242, d) +# define BOOST_PP_REPEAT_1_244(m, d) BOOST_PP_REPEAT_1_243(m, d) m(2, 243, d) +# define BOOST_PP_REPEAT_1_245(m, d) BOOST_PP_REPEAT_1_244(m, d) m(2, 244, d) +# define BOOST_PP_REPEAT_1_246(m, d) BOOST_PP_REPEAT_1_245(m, d) m(2, 245, d) +# define BOOST_PP_REPEAT_1_247(m, d) BOOST_PP_REPEAT_1_246(m, d) m(2, 246, d) +# define BOOST_PP_REPEAT_1_248(m, d) BOOST_PP_REPEAT_1_247(m, d) m(2, 247, d) +# define BOOST_PP_REPEAT_1_249(m, d) BOOST_PP_REPEAT_1_248(m, d) m(2, 248, d) +# define BOOST_PP_REPEAT_1_250(m, d) BOOST_PP_REPEAT_1_249(m, d) m(2, 249, d) +# define BOOST_PP_REPEAT_1_251(m, d) BOOST_PP_REPEAT_1_250(m, d) m(2, 250, d) +# define BOOST_PP_REPEAT_1_252(m, d) BOOST_PP_REPEAT_1_251(m, d) m(2, 251, d) +# define BOOST_PP_REPEAT_1_253(m, d) BOOST_PP_REPEAT_1_252(m, d) m(2, 252, d) +# define BOOST_PP_REPEAT_1_254(m, d) BOOST_PP_REPEAT_1_253(m, d) m(2, 253, d) +# define BOOST_PP_REPEAT_1_255(m, d) BOOST_PP_REPEAT_1_254(m, d) m(2, 254, d) +# define BOOST_PP_REPEAT_1_256(m, d) BOOST_PP_REPEAT_1_255(m, d) m(2, 255, d) +# +# define BOOST_PP_REPEAT_2_0(m, d) +# define BOOST_PP_REPEAT_2_1(m, d) m(3, 0, d) +# define BOOST_PP_REPEAT_2_2(m, d) BOOST_PP_REPEAT_2_1(m, d) m(3, 1, d) +# define BOOST_PP_REPEAT_2_3(m, d) BOOST_PP_REPEAT_2_2(m, d) m(3, 2, d) +# define BOOST_PP_REPEAT_2_4(m, d) BOOST_PP_REPEAT_2_3(m, d) m(3, 3, d) +# define BOOST_PP_REPEAT_2_5(m, d) BOOST_PP_REPEAT_2_4(m, d) m(3, 4, d) +# define BOOST_PP_REPEAT_2_6(m, d) BOOST_PP_REPEAT_2_5(m, d) m(3, 5, d) +# define BOOST_PP_REPEAT_2_7(m, d) BOOST_PP_REPEAT_2_6(m, d) m(3, 6, d) +# define BOOST_PP_REPEAT_2_8(m, d) BOOST_PP_REPEAT_2_7(m, d) m(3, 7, d) +# define BOOST_PP_REPEAT_2_9(m, d) BOOST_PP_REPEAT_2_8(m, d) m(3, 8, d) +# define BOOST_PP_REPEAT_2_10(m, d) BOOST_PP_REPEAT_2_9(m, d) m(3, 9, d) +# define BOOST_PP_REPEAT_2_11(m, d) BOOST_PP_REPEAT_2_10(m, d) m(3, 10, d) +# define BOOST_PP_REPEAT_2_12(m, d) BOOST_PP_REPEAT_2_11(m, d) m(3, 11, d) +# define BOOST_PP_REPEAT_2_13(m, d) BOOST_PP_REPEAT_2_12(m, d) m(3, 12, d) +# define BOOST_PP_REPEAT_2_14(m, d) BOOST_PP_REPEAT_2_13(m, d) m(3, 13, d) +# define BOOST_PP_REPEAT_2_15(m, d) BOOST_PP_REPEAT_2_14(m, d) m(3, 14, d) +# define BOOST_PP_REPEAT_2_16(m, d) BOOST_PP_REPEAT_2_15(m, d) m(3, 15, d) +# define BOOST_PP_REPEAT_2_17(m, d) BOOST_PP_REPEAT_2_16(m, d) m(3, 16, d) +# define BOOST_PP_REPEAT_2_18(m, d) BOOST_PP_REPEAT_2_17(m, d) m(3, 17, d) +# define BOOST_PP_REPEAT_2_19(m, d) BOOST_PP_REPEAT_2_18(m, d) m(3, 18, d) +# define BOOST_PP_REPEAT_2_20(m, d) BOOST_PP_REPEAT_2_19(m, d) m(3, 19, d) +# define BOOST_PP_REPEAT_2_21(m, d) BOOST_PP_REPEAT_2_20(m, d) m(3, 20, d) +# define BOOST_PP_REPEAT_2_22(m, d) BOOST_PP_REPEAT_2_21(m, d) m(3, 21, d) +# define BOOST_PP_REPEAT_2_23(m, d) BOOST_PP_REPEAT_2_22(m, d) m(3, 22, d) +# define BOOST_PP_REPEAT_2_24(m, d) BOOST_PP_REPEAT_2_23(m, d) m(3, 23, d) +# define BOOST_PP_REPEAT_2_25(m, d) BOOST_PP_REPEAT_2_24(m, d) m(3, 24, d) +# define BOOST_PP_REPEAT_2_26(m, d) BOOST_PP_REPEAT_2_25(m, d) m(3, 25, d) +# define BOOST_PP_REPEAT_2_27(m, d) BOOST_PP_REPEAT_2_26(m, d) m(3, 26, d) +# define BOOST_PP_REPEAT_2_28(m, d) BOOST_PP_REPEAT_2_27(m, d) m(3, 27, d) +# define BOOST_PP_REPEAT_2_29(m, d) BOOST_PP_REPEAT_2_28(m, d) m(3, 28, d) +# define BOOST_PP_REPEAT_2_30(m, d) BOOST_PP_REPEAT_2_29(m, d) m(3, 29, d) +# define BOOST_PP_REPEAT_2_31(m, d) BOOST_PP_REPEAT_2_30(m, d) m(3, 30, d) +# define BOOST_PP_REPEAT_2_32(m, d) BOOST_PP_REPEAT_2_31(m, d) m(3, 31, d) +# define BOOST_PP_REPEAT_2_33(m, d) BOOST_PP_REPEAT_2_32(m, d) m(3, 32, d) +# define BOOST_PP_REPEAT_2_34(m, d) BOOST_PP_REPEAT_2_33(m, d) m(3, 33, d) +# define BOOST_PP_REPEAT_2_35(m, d) BOOST_PP_REPEAT_2_34(m, d) m(3, 34, d) +# define BOOST_PP_REPEAT_2_36(m, d) BOOST_PP_REPEAT_2_35(m, d) m(3, 35, d) +# define BOOST_PP_REPEAT_2_37(m, d) BOOST_PP_REPEAT_2_36(m, d) m(3, 36, d) +# define BOOST_PP_REPEAT_2_38(m, d) BOOST_PP_REPEAT_2_37(m, d) m(3, 37, d) +# define BOOST_PP_REPEAT_2_39(m, d) BOOST_PP_REPEAT_2_38(m, d) m(3, 38, d) +# define BOOST_PP_REPEAT_2_40(m, d) BOOST_PP_REPEAT_2_39(m, d) m(3, 39, d) +# define BOOST_PP_REPEAT_2_41(m, d) BOOST_PP_REPEAT_2_40(m, d) m(3, 40, d) +# define BOOST_PP_REPEAT_2_42(m, d) BOOST_PP_REPEAT_2_41(m, d) m(3, 41, d) +# define BOOST_PP_REPEAT_2_43(m, d) BOOST_PP_REPEAT_2_42(m, d) m(3, 42, d) +# define BOOST_PP_REPEAT_2_44(m, d) BOOST_PP_REPEAT_2_43(m, d) m(3, 43, d) +# define BOOST_PP_REPEAT_2_45(m, d) BOOST_PP_REPEAT_2_44(m, d) m(3, 44, d) +# define BOOST_PP_REPEAT_2_46(m, d) BOOST_PP_REPEAT_2_45(m, d) m(3, 45, d) +# define BOOST_PP_REPEAT_2_47(m, d) BOOST_PP_REPEAT_2_46(m, d) m(3, 46, d) +# define BOOST_PP_REPEAT_2_48(m, d) BOOST_PP_REPEAT_2_47(m, d) m(3, 47, d) +# define BOOST_PP_REPEAT_2_49(m, d) BOOST_PP_REPEAT_2_48(m, d) m(3, 48, d) +# define BOOST_PP_REPEAT_2_50(m, d) BOOST_PP_REPEAT_2_49(m, d) m(3, 49, d) +# define BOOST_PP_REPEAT_2_51(m, d) BOOST_PP_REPEAT_2_50(m, d) m(3, 50, d) +# define BOOST_PP_REPEAT_2_52(m, d) BOOST_PP_REPEAT_2_51(m, d) m(3, 51, d) +# define BOOST_PP_REPEAT_2_53(m, d) BOOST_PP_REPEAT_2_52(m, d) m(3, 52, d) +# define BOOST_PP_REPEAT_2_54(m, d) BOOST_PP_REPEAT_2_53(m, d) m(3, 53, d) +# define BOOST_PP_REPEAT_2_55(m, d) BOOST_PP_REPEAT_2_54(m, d) m(3, 54, d) +# define BOOST_PP_REPEAT_2_56(m, d) BOOST_PP_REPEAT_2_55(m, d) m(3, 55, d) +# define BOOST_PP_REPEAT_2_57(m, d) BOOST_PP_REPEAT_2_56(m, d) m(3, 56, d) +# define BOOST_PP_REPEAT_2_58(m, d) BOOST_PP_REPEAT_2_57(m, d) m(3, 57, d) +# define BOOST_PP_REPEAT_2_59(m, d) BOOST_PP_REPEAT_2_58(m, d) m(3, 58, d) +# define BOOST_PP_REPEAT_2_60(m, d) BOOST_PP_REPEAT_2_59(m, d) m(3, 59, d) +# define BOOST_PP_REPEAT_2_61(m, d) BOOST_PP_REPEAT_2_60(m, d) m(3, 60, d) +# define BOOST_PP_REPEAT_2_62(m, d) BOOST_PP_REPEAT_2_61(m, d) m(3, 61, d) +# define BOOST_PP_REPEAT_2_63(m, d) BOOST_PP_REPEAT_2_62(m, d) m(3, 62, d) +# define BOOST_PP_REPEAT_2_64(m, d) BOOST_PP_REPEAT_2_63(m, d) m(3, 63, d) +# define BOOST_PP_REPEAT_2_65(m, d) BOOST_PP_REPEAT_2_64(m, d) m(3, 64, d) +# define BOOST_PP_REPEAT_2_66(m, d) BOOST_PP_REPEAT_2_65(m, d) m(3, 65, d) +# define BOOST_PP_REPEAT_2_67(m, d) BOOST_PP_REPEAT_2_66(m, d) m(3, 66, d) +# define BOOST_PP_REPEAT_2_68(m, d) BOOST_PP_REPEAT_2_67(m, d) m(3, 67, d) +# define BOOST_PP_REPEAT_2_69(m, d) BOOST_PP_REPEAT_2_68(m, d) m(3, 68, d) +# define BOOST_PP_REPEAT_2_70(m, d) BOOST_PP_REPEAT_2_69(m, d) m(3, 69, d) +# define BOOST_PP_REPEAT_2_71(m, d) BOOST_PP_REPEAT_2_70(m, d) m(3, 70, d) +# define BOOST_PP_REPEAT_2_72(m, d) BOOST_PP_REPEAT_2_71(m, d) m(3, 71, d) +# define BOOST_PP_REPEAT_2_73(m, d) BOOST_PP_REPEAT_2_72(m, d) m(3, 72, d) +# define BOOST_PP_REPEAT_2_74(m, d) BOOST_PP_REPEAT_2_73(m, d) m(3, 73, d) +# define BOOST_PP_REPEAT_2_75(m, d) BOOST_PP_REPEAT_2_74(m, d) m(3, 74, d) +# define BOOST_PP_REPEAT_2_76(m, d) BOOST_PP_REPEAT_2_75(m, d) m(3, 75, d) +# define BOOST_PP_REPEAT_2_77(m, d) BOOST_PP_REPEAT_2_76(m, d) m(3, 76, d) +# define BOOST_PP_REPEAT_2_78(m, d) BOOST_PP_REPEAT_2_77(m, d) m(3, 77, d) +# define BOOST_PP_REPEAT_2_79(m, d) BOOST_PP_REPEAT_2_78(m, d) m(3, 78, d) +# define BOOST_PP_REPEAT_2_80(m, d) BOOST_PP_REPEAT_2_79(m, d) m(3, 79, d) +# define BOOST_PP_REPEAT_2_81(m, d) BOOST_PP_REPEAT_2_80(m, d) m(3, 80, d) +# define BOOST_PP_REPEAT_2_82(m, d) BOOST_PP_REPEAT_2_81(m, d) m(3, 81, d) +# define BOOST_PP_REPEAT_2_83(m, d) BOOST_PP_REPEAT_2_82(m, d) m(3, 82, d) +# define BOOST_PP_REPEAT_2_84(m, d) BOOST_PP_REPEAT_2_83(m, d) m(3, 83, d) +# define BOOST_PP_REPEAT_2_85(m, d) BOOST_PP_REPEAT_2_84(m, d) m(3, 84, d) +# define BOOST_PP_REPEAT_2_86(m, d) BOOST_PP_REPEAT_2_85(m, d) m(3, 85, d) +# define BOOST_PP_REPEAT_2_87(m, d) BOOST_PP_REPEAT_2_86(m, d) m(3, 86, d) +# define BOOST_PP_REPEAT_2_88(m, d) BOOST_PP_REPEAT_2_87(m, d) m(3, 87, d) +# define BOOST_PP_REPEAT_2_89(m, d) BOOST_PP_REPEAT_2_88(m, d) m(3, 88, d) +# define BOOST_PP_REPEAT_2_90(m, d) BOOST_PP_REPEAT_2_89(m, d) m(3, 89, d) +# define BOOST_PP_REPEAT_2_91(m, d) BOOST_PP_REPEAT_2_90(m, d) m(3, 90, d) +# define BOOST_PP_REPEAT_2_92(m, d) BOOST_PP_REPEAT_2_91(m, d) m(3, 91, d) +# define BOOST_PP_REPEAT_2_93(m, d) BOOST_PP_REPEAT_2_92(m, d) m(3, 92, d) +# define BOOST_PP_REPEAT_2_94(m, d) BOOST_PP_REPEAT_2_93(m, d) m(3, 93, d) +# define BOOST_PP_REPEAT_2_95(m, d) BOOST_PP_REPEAT_2_94(m, d) m(3, 94, d) +# define BOOST_PP_REPEAT_2_96(m, d) BOOST_PP_REPEAT_2_95(m, d) m(3, 95, d) +# define BOOST_PP_REPEAT_2_97(m, d) BOOST_PP_REPEAT_2_96(m, d) m(3, 96, d) +# define BOOST_PP_REPEAT_2_98(m, d) BOOST_PP_REPEAT_2_97(m, d) m(3, 97, d) +# define BOOST_PP_REPEAT_2_99(m, d) BOOST_PP_REPEAT_2_98(m, d) m(3, 98, d) +# define BOOST_PP_REPEAT_2_100(m, d) BOOST_PP_REPEAT_2_99(m, d) m(3, 99, d) +# define BOOST_PP_REPEAT_2_101(m, d) BOOST_PP_REPEAT_2_100(m, d) m(3, 100, d) +# define BOOST_PP_REPEAT_2_102(m, d) BOOST_PP_REPEAT_2_101(m, d) m(3, 101, d) +# define BOOST_PP_REPEAT_2_103(m, d) BOOST_PP_REPEAT_2_102(m, d) m(3, 102, d) +# define BOOST_PP_REPEAT_2_104(m, d) BOOST_PP_REPEAT_2_103(m, d) m(3, 103, d) +# define BOOST_PP_REPEAT_2_105(m, d) BOOST_PP_REPEAT_2_104(m, d) m(3, 104, d) +# define BOOST_PP_REPEAT_2_106(m, d) BOOST_PP_REPEAT_2_105(m, d) m(3, 105, d) +# define BOOST_PP_REPEAT_2_107(m, d) BOOST_PP_REPEAT_2_106(m, d) m(3, 106, d) +# define BOOST_PP_REPEAT_2_108(m, d) BOOST_PP_REPEAT_2_107(m, d) m(3, 107, d) +# define BOOST_PP_REPEAT_2_109(m, d) BOOST_PP_REPEAT_2_108(m, d) m(3, 108, d) +# define BOOST_PP_REPEAT_2_110(m, d) BOOST_PP_REPEAT_2_109(m, d) m(3, 109, d) +# define BOOST_PP_REPEAT_2_111(m, d) BOOST_PP_REPEAT_2_110(m, d) m(3, 110, d) +# define BOOST_PP_REPEAT_2_112(m, d) BOOST_PP_REPEAT_2_111(m, d) m(3, 111, d) +# define BOOST_PP_REPEAT_2_113(m, d) BOOST_PP_REPEAT_2_112(m, d) m(3, 112, d) +# define BOOST_PP_REPEAT_2_114(m, d) BOOST_PP_REPEAT_2_113(m, d) m(3, 113, d) +# define BOOST_PP_REPEAT_2_115(m, d) BOOST_PP_REPEAT_2_114(m, d) m(3, 114, d) +# define BOOST_PP_REPEAT_2_116(m, d) BOOST_PP_REPEAT_2_115(m, d) m(3, 115, d) +# define BOOST_PP_REPEAT_2_117(m, d) BOOST_PP_REPEAT_2_116(m, d) m(3, 116, d) +# define BOOST_PP_REPEAT_2_118(m, d) BOOST_PP_REPEAT_2_117(m, d) m(3, 117, d) +# define BOOST_PP_REPEAT_2_119(m, d) BOOST_PP_REPEAT_2_118(m, d) m(3, 118, d) +# define BOOST_PP_REPEAT_2_120(m, d) BOOST_PP_REPEAT_2_119(m, d) m(3, 119, d) +# define BOOST_PP_REPEAT_2_121(m, d) BOOST_PP_REPEAT_2_120(m, d) m(3, 120, d) +# define BOOST_PP_REPEAT_2_122(m, d) BOOST_PP_REPEAT_2_121(m, d) m(3, 121, d) +# define BOOST_PP_REPEAT_2_123(m, d) BOOST_PP_REPEAT_2_122(m, d) m(3, 122, d) +# define BOOST_PP_REPEAT_2_124(m, d) BOOST_PP_REPEAT_2_123(m, d) m(3, 123, d) +# define BOOST_PP_REPEAT_2_125(m, d) BOOST_PP_REPEAT_2_124(m, d) m(3, 124, d) +# define BOOST_PP_REPEAT_2_126(m, d) BOOST_PP_REPEAT_2_125(m, d) m(3, 125, d) +# define BOOST_PP_REPEAT_2_127(m, d) BOOST_PP_REPEAT_2_126(m, d) m(3, 126, d) +# define BOOST_PP_REPEAT_2_128(m, d) BOOST_PP_REPEAT_2_127(m, d) m(3, 127, d) +# define BOOST_PP_REPEAT_2_129(m, d) BOOST_PP_REPEAT_2_128(m, d) m(3, 128, d) +# define BOOST_PP_REPEAT_2_130(m, d) BOOST_PP_REPEAT_2_129(m, d) m(3, 129, d) +# define BOOST_PP_REPEAT_2_131(m, d) BOOST_PP_REPEAT_2_130(m, d) m(3, 130, d) +# define BOOST_PP_REPEAT_2_132(m, d) BOOST_PP_REPEAT_2_131(m, d) m(3, 131, d) +# define BOOST_PP_REPEAT_2_133(m, d) BOOST_PP_REPEAT_2_132(m, d) m(3, 132, d) +# define BOOST_PP_REPEAT_2_134(m, d) BOOST_PP_REPEAT_2_133(m, d) m(3, 133, d) +# define BOOST_PP_REPEAT_2_135(m, d) BOOST_PP_REPEAT_2_134(m, d) m(3, 134, d) +# define BOOST_PP_REPEAT_2_136(m, d) BOOST_PP_REPEAT_2_135(m, d) m(3, 135, d) +# define BOOST_PP_REPEAT_2_137(m, d) BOOST_PP_REPEAT_2_136(m, d) m(3, 136, d) +# define BOOST_PP_REPEAT_2_138(m, d) BOOST_PP_REPEAT_2_137(m, d) m(3, 137, d) +# define BOOST_PP_REPEAT_2_139(m, d) BOOST_PP_REPEAT_2_138(m, d) m(3, 138, d) +# define BOOST_PP_REPEAT_2_140(m, d) BOOST_PP_REPEAT_2_139(m, d) m(3, 139, d) +# define BOOST_PP_REPEAT_2_141(m, d) BOOST_PP_REPEAT_2_140(m, d) m(3, 140, d) +# define BOOST_PP_REPEAT_2_142(m, d) BOOST_PP_REPEAT_2_141(m, d) m(3, 141, d) +# define BOOST_PP_REPEAT_2_143(m, d) BOOST_PP_REPEAT_2_142(m, d) m(3, 142, d) +# define BOOST_PP_REPEAT_2_144(m, d) BOOST_PP_REPEAT_2_143(m, d) m(3, 143, d) +# define BOOST_PP_REPEAT_2_145(m, d) BOOST_PP_REPEAT_2_144(m, d) m(3, 144, d) +# define BOOST_PP_REPEAT_2_146(m, d) BOOST_PP_REPEAT_2_145(m, d) m(3, 145, d) +# define BOOST_PP_REPEAT_2_147(m, d) BOOST_PP_REPEAT_2_146(m, d) m(3, 146, d) +# define BOOST_PP_REPEAT_2_148(m, d) BOOST_PP_REPEAT_2_147(m, d) m(3, 147, d) +# define BOOST_PP_REPEAT_2_149(m, d) BOOST_PP_REPEAT_2_148(m, d) m(3, 148, d) +# define BOOST_PP_REPEAT_2_150(m, d) BOOST_PP_REPEAT_2_149(m, d) m(3, 149, d) +# define BOOST_PP_REPEAT_2_151(m, d) BOOST_PP_REPEAT_2_150(m, d) m(3, 150, d) +# define BOOST_PP_REPEAT_2_152(m, d) BOOST_PP_REPEAT_2_151(m, d) m(3, 151, d) +# define BOOST_PP_REPEAT_2_153(m, d) BOOST_PP_REPEAT_2_152(m, d) m(3, 152, d) +# define BOOST_PP_REPEAT_2_154(m, d) BOOST_PP_REPEAT_2_153(m, d) m(3, 153, d) +# define BOOST_PP_REPEAT_2_155(m, d) BOOST_PP_REPEAT_2_154(m, d) m(3, 154, d) +# define BOOST_PP_REPEAT_2_156(m, d) BOOST_PP_REPEAT_2_155(m, d) m(3, 155, d) +# define BOOST_PP_REPEAT_2_157(m, d) BOOST_PP_REPEAT_2_156(m, d) m(3, 156, d) +# define BOOST_PP_REPEAT_2_158(m, d) BOOST_PP_REPEAT_2_157(m, d) m(3, 157, d) +# define BOOST_PP_REPEAT_2_159(m, d) BOOST_PP_REPEAT_2_158(m, d) m(3, 158, d) +# define BOOST_PP_REPEAT_2_160(m, d) BOOST_PP_REPEAT_2_159(m, d) m(3, 159, d) +# define BOOST_PP_REPEAT_2_161(m, d) BOOST_PP_REPEAT_2_160(m, d) m(3, 160, d) +# define BOOST_PP_REPEAT_2_162(m, d) BOOST_PP_REPEAT_2_161(m, d) m(3, 161, d) +# define BOOST_PP_REPEAT_2_163(m, d) BOOST_PP_REPEAT_2_162(m, d) m(3, 162, d) +# define BOOST_PP_REPEAT_2_164(m, d) BOOST_PP_REPEAT_2_163(m, d) m(3, 163, d) +# define BOOST_PP_REPEAT_2_165(m, d) BOOST_PP_REPEAT_2_164(m, d) m(3, 164, d) +# define BOOST_PP_REPEAT_2_166(m, d) BOOST_PP_REPEAT_2_165(m, d) m(3, 165, d) +# define BOOST_PP_REPEAT_2_167(m, d) BOOST_PP_REPEAT_2_166(m, d) m(3, 166, d) +# define BOOST_PP_REPEAT_2_168(m, d) BOOST_PP_REPEAT_2_167(m, d) m(3, 167, d) +# define BOOST_PP_REPEAT_2_169(m, d) BOOST_PP_REPEAT_2_168(m, d) m(3, 168, d) +# define BOOST_PP_REPEAT_2_170(m, d) BOOST_PP_REPEAT_2_169(m, d) m(3, 169, d) +# define BOOST_PP_REPEAT_2_171(m, d) BOOST_PP_REPEAT_2_170(m, d) m(3, 170, d) +# define BOOST_PP_REPEAT_2_172(m, d) BOOST_PP_REPEAT_2_171(m, d) m(3, 171, d) +# define BOOST_PP_REPEAT_2_173(m, d) BOOST_PP_REPEAT_2_172(m, d) m(3, 172, d) +# define BOOST_PP_REPEAT_2_174(m, d) BOOST_PP_REPEAT_2_173(m, d) m(3, 173, d) +# define BOOST_PP_REPEAT_2_175(m, d) BOOST_PP_REPEAT_2_174(m, d) m(3, 174, d) +# define BOOST_PP_REPEAT_2_176(m, d) BOOST_PP_REPEAT_2_175(m, d) m(3, 175, d) +# define BOOST_PP_REPEAT_2_177(m, d) BOOST_PP_REPEAT_2_176(m, d) m(3, 176, d) +# define BOOST_PP_REPEAT_2_178(m, d) BOOST_PP_REPEAT_2_177(m, d) m(3, 177, d) +# define BOOST_PP_REPEAT_2_179(m, d) BOOST_PP_REPEAT_2_178(m, d) m(3, 178, d) +# define BOOST_PP_REPEAT_2_180(m, d) BOOST_PP_REPEAT_2_179(m, d) m(3, 179, d) +# define BOOST_PP_REPEAT_2_181(m, d) BOOST_PP_REPEAT_2_180(m, d) m(3, 180, d) +# define BOOST_PP_REPEAT_2_182(m, d) BOOST_PP_REPEAT_2_181(m, d) m(3, 181, d) +# define BOOST_PP_REPEAT_2_183(m, d) BOOST_PP_REPEAT_2_182(m, d) m(3, 182, d) +# define BOOST_PP_REPEAT_2_184(m, d) BOOST_PP_REPEAT_2_183(m, d) m(3, 183, d) +# define BOOST_PP_REPEAT_2_185(m, d) BOOST_PP_REPEAT_2_184(m, d) m(3, 184, d) +# define BOOST_PP_REPEAT_2_186(m, d) BOOST_PP_REPEAT_2_185(m, d) m(3, 185, d) +# define BOOST_PP_REPEAT_2_187(m, d) BOOST_PP_REPEAT_2_186(m, d) m(3, 186, d) +# define BOOST_PP_REPEAT_2_188(m, d) BOOST_PP_REPEAT_2_187(m, d) m(3, 187, d) +# define BOOST_PP_REPEAT_2_189(m, d) BOOST_PP_REPEAT_2_188(m, d) m(3, 188, d) +# define BOOST_PP_REPEAT_2_190(m, d) BOOST_PP_REPEAT_2_189(m, d) m(3, 189, d) +# define BOOST_PP_REPEAT_2_191(m, d) BOOST_PP_REPEAT_2_190(m, d) m(3, 190, d) +# define BOOST_PP_REPEAT_2_192(m, d) BOOST_PP_REPEAT_2_191(m, d) m(3, 191, d) +# define BOOST_PP_REPEAT_2_193(m, d) BOOST_PP_REPEAT_2_192(m, d) m(3, 192, d) +# define BOOST_PP_REPEAT_2_194(m, d) BOOST_PP_REPEAT_2_193(m, d) m(3, 193, d) +# define BOOST_PP_REPEAT_2_195(m, d) BOOST_PP_REPEAT_2_194(m, d) m(3, 194, d) +# define BOOST_PP_REPEAT_2_196(m, d) BOOST_PP_REPEAT_2_195(m, d) m(3, 195, d) +# define BOOST_PP_REPEAT_2_197(m, d) BOOST_PP_REPEAT_2_196(m, d) m(3, 196, d) +# define BOOST_PP_REPEAT_2_198(m, d) BOOST_PP_REPEAT_2_197(m, d) m(3, 197, d) +# define BOOST_PP_REPEAT_2_199(m, d) BOOST_PP_REPEAT_2_198(m, d) m(3, 198, d) +# define BOOST_PP_REPEAT_2_200(m, d) BOOST_PP_REPEAT_2_199(m, d) m(3, 199, d) +# define BOOST_PP_REPEAT_2_201(m, d) BOOST_PP_REPEAT_2_200(m, d) m(3, 200, d) +# define BOOST_PP_REPEAT_2_202(m, d) BOOST_PP_REPEAT_2_201(m, d) m(3, 201, d) +# define BOOST_PP_REPEAT_2_203(m, d) BOOST_PP_REPEAT_2_202(m, d) m(3, 202, d) +# define BOOST_PP_REPEAT_2_204(m, d) BOOST_PP_REPEAT_2_203(m, d) m(3, 203, d) +# define BOOST_PP_REPEAT_2_205(m, d) BOOST_PP_REPEAT_2_204(m, d) m(3, 204, d) +# define BOOST_PP_REPEAT_2_206(m, d) BOOST_PP_REPEAT_2_205(m, d) m(3, 205, d) +# define BOOST_PP_REPEAT_2_207(m, d) BOOST_PP_REPEAT_2_206(m, d) m(3, 206, d) +# define BOOST_PP_REPEAT_2_208(m, d) BOOST_PP_REPEAT_2_207(m, d) m(3, 207, d) +# define BOOST_PP_REPEAT_2_209(m, d) BOOST_PP_REPEAT_2_208(m, d) m(3, 208, d) +# define BOOST_PP_REPEAT_2_210(m, d) BOOST_PP_REPEAT_2_209(m, d) m(3, 209, d) +# define BOOST_PP_REPEAT_2_211(m, d) BOOST_PP_REPEAT_2_210(m, d) m(3, 210, d) +# define BOOST_PP_REPEAT_2_212(m, d) BOOST_PP_REPEAT_2_211(m, d) m(3, 211, d) +# define BOOST_PP_REPEAT_2_213(m, d) BOOST_PP_REPEAT_2_212(m, d) m(3, 212, d) +# define BOOST_PP_REPEAT_2_214(m, d) BOOST_PP_REPEAT_2_213(m, d) m(3, 213, d) +# define BOOST_PP_REPEAT_2_215(m, d) BOOST_PP_REPEAT_2_214(m, d) m(3, 214, d) +# define BOOST_PP_REPEAT_2_216(m, d) BOOST_PP_REPEAT_2_215(m, d) m(3, 215, d) +# define BOOST_PP_REPEAT_2_217(m, d) BOOST_PP_REPEAT_2_216(m, d) m(3, 216, d) +# define BOOST_PP_REPEAT_2_218(m, d) BOOST_PP_REPEAT_2_217(m, d) m(3, 217, d) +# define BOOST_PP_REPEAT_2_219(m, d) BOOST_PP_REPEAT_2_218(m, d) m(3, 218, d) +# define BOOST_PP_REPEAT_2_220(m, d) BOOST_PP_REPEAT_2_219(m, d) m(3, 219, d) +# define BOOST_PP_REPEAT_2_221(m, d) BOOST_PP_REPEAT_2_220(m, d) m(3, 220, d) +# define BOOST_PP_REPEAT_2_222(m, d) BOOST_PP_REPEAT_2_221(m, d) m(3, 221, d) +# define BOOST_PP_REPEAT_2_223(m, d) BOOST_PP_REPEAT_2_222(m, d) m(3, 222, d) +# define BOOST_PP_REPEAT_2_224(m, d) BOOST_PP_REPEAT_2_223(m, d) m(3, 223, d) +# define BOOST_PP_REPEAT_2_225(m, d) BOOST_PP_REPEAT_2_224(m, d) m(3, 224, d) +# define BOOST_PP_REPEAT_2_226(m, d) BOOST_PP_REPEAT_2_225(m, d) m(3, 225, d) +# define BOOST_PP_REPEAT_2_227(m, d) BOOST_PP_REPEAT_2_226(m, d) m(3, 226, d) +# define BOOST_PP_REPEAT_2_228(m, d) BOOST_PP_REPEAT_2_227(m, d) m(3, 227, d) +# define BOOST_PP_REPEAT_2_229(m, d) BOOST_PP_REPEAT_2_228(m, d) m(3, 228, d) +# define BOOST_PP_REPEAT_2_230(m, d) BOOST_PP_REPEAT_2_229(m, d) m(3, 229, d) +# define BOOST_PP_REPEAT_2_231(m, d) BOOST_PP_REPEAT_2_230(m, d) m(3, 230, d) +# define BOOST_PP_REPEAT_2_232(m, d) BOOST_PP_REPEAT_2_231(m, d) m(3, 231, d) +# define BOOST_PP_REPEAT_2_233(m, d) BOOST_PP_REPEAT_2_232(m, d) m(3, 232, d) +# define BOOST_PP_REPEAT_2_234(m, d) BOOST_PP_REPEAT_2_233(m, d) m(3, 233, d) +# define BOOST_PP_REPEAT_2_235(m, d) BOOST_PP_REPEAT_2_234(m, d) m(3, 234, d) +# define BOOST_PP_REPEAT_2_236(m, d) BOOST_PP_REPEAT_2_235(m, d) m(3, 235, d) +# define BOOST_PP_REPEAT_2_237(m, d) BOOST_PP_REPEAT_2_236(m, d) m(3, 236, d) +# define BOOST_PP_REPEAT_2_238(m, d) BOOST_PP_REPEAT_2_237(m, d) m(3, 237, d) +# define BOOST_PP_REPEAT_2_239(m, d) BOOST_PP_REPEAT_2_238(m, d) m(3, 238, d) +# define BOOST_PP_REPEAT_2_240(m, d) BOOST_PP_REPEAT_2_239(m, d) m(3, 239, d) +# define BOOST_PP_REPEAT_2_241(m, d) BOOST_PP_REPEAT_2_240(m, d) m(3, 240, d) +# define BOOST_PP_REPEAT_2_242(m, d) BOOST_PP_REPEAT_2_241(m, d) m(3, 241, d) +# define BOOST_PP_REPEAT_2_243(m, d) BOOST_PP_REPEAT_2_242(m, d) m(3, 242, d) +# define BOOST_PP_REPEAT_2_244(m, d) BOOST_PP_REPEAT_2_243(m, d) m(3, 243, d) +# define BOOST_PP_REPEAT_2_245(m, d) BOOST_PP_REPEAT_2_244(m, d) m(3, 244, d) +# define BOOST_PP_REPEAT_2_246(m, d) BOOST_PP_REPEAT_2_245(m, d) m(3, 245, d) +# define BOOST_PP_REPEAT_2_247(m, d) BOOST_PP_REPEAT_2_246(m, d) m(3, 246, d) +# define BOOST_PP_REPEAT_2_248(m, d) BOOST_PP_REPEAT_2_247(m, d) m(3, 247, d) +# define BOOST_PP_REPEAT_2_249(m, d) BOOST_PP_REPEAT_2_248(m, d) m(3, 248, d) +# define BOOST_PP_REPEAT_2_250(m, d) BOOST_PP_REPEAT_2_249(m, d) m(3, 249, d) +# define BOOST_PP_REPEAT_2_251(m, d) BOOST_PP_REPEAT_2_250(m, d) m(3, 250, d) +# define BOOST_PP_REPEAT_2_252(m, d) BOOST_PP_REPEAT_2_251(m, d) m(3, 251, d) +# define BOOST_PP_REPEAT_2_253(m, d) BOOST_PP_REPEAT_2_252(m, d) m(3, 252, d) +# define BOOST_PP_REPEAT_2_254(m, d) BOOST_PP_REPEAT_2_253(m, d) m(3, 253, d) +# define BOOST_PP_REPEAT_2_255(m, d) BOOST_PP_REPEAT_2_254(m, d) m(3, 254, d) +# define BOOST_PP_REPEAT_2_256(m, d) BOOST_PP_REPEAT_2_255(m, d) m(3, 255, d) +# +# define BOOST_PP_REPEAT_3_0(m, d) +# define BOOST_PP_REPEAT_3_1(m, d) m(4, 0, d) +# define BOOST_PP_REPEAT_3_2(m, d) BOOST_PP_REPEAT_3_1(m, d) m(4, 1, d) +# define BOOST_PP_REPEAT_3_3(m, d) BOOST_PP_REPEAT_3_2(m, d) m(4, 2, d) +# define BOOST_PP_REPEAT_3_4(m, d) BOOST_PP_REPEAT_3_3(m, d) m(4, 3, d) +# define BOOST_PP_REPEAT_3_5(m, d) BOOST_PP_REPEAT_3_4(m, d) m(4, 4, d) +# define BOOST_PP_REPEAT_3_6(m, d) BOOST_PP_REPEAT_3_5(m, d) m(4, 5, d) +# define BOOST_PP_REPEAT_3_7(m, d) BOOST_PP_REPEAT_3_6(m, d) m(4, 6, d) +# define BOOST_PP_REPEAT_3_8(m, d) BOOST_PP_REPEAT_3_7(m, d) m(4, 7, d) +# define BOOST_PP_REPEAT_3_9(m, d) BOOST_PP_REPEAT_3_8(m, d) m(4, 8, d) +# define BOOST_PP_REPEAT_3_10(m, d) BOOST_PP_REPEAT_3_9(m, d) m(4, 9, d) +# define BOOST_PP_REPEAT_3_11(m, d) BOOST_PP_REPEAT_3_10(m, d) m(4, 10, d) +# define BOOST_PP_REPEAT_3_12(m, d) BOOST_PP_REPEAT_3_11(m, d) m(4, 11, d) +# define BOOST_PP_REPEAT_3_13(m, d) BOOST_PP_REPEAT_3_12(m, d) m(4, 12, d) +# define BOOST_PP_REPEAT_3_14(m, d) BOOST_PP_REPEAT_3_13(m, d) m(4, 13, d) +# define BOOST_PP_REPEAT_3_15(m, d) BOOST_PP_REPEAT_3_14(m, d) m(4, 14, d) +# define BOOST_PP_REPEAT_3_16(m, d) BOOST_PP_REPEAT_3_15(m, d) m(4, 15, d) +# define BOOST_PP_REPEAT_3_17(m, d) BOOST_PP_REPEAT_3_16(m, d) m(4, 16, d) +# define BOOST_PP_REPEAT_3_18(m, d) BOOST_PP_REPEAT_3_17(m, d) m(4, 17, d) +# define BOOST_PP_REPEAT_3_19(m, d) BOOST_PP_REPEAT_3_18(m, d) m(4, 18, d) +# define BOOST_PP_REPEAT_3_20(m, d) BOOST_PP_REPEAT_3_19(m, d) m(4, 19, d) +# define BOOST_PP_REPEAT_3_21(m, d) BOOST_PP_REPEAT_3_20(m, d) m(4, 20, d) +# define BOOST_PP_REPEAT_3_22(m, d) BOOST_PP_REPEAT_3_21(m, d) m(4, 21, d) +# define BOOST_PP_REPEAT_3_23(m, d) BOOST_PP_REPEAT_3_22(m, d) m(4, 22, d) +# define BOOST_PP_REPEAT_3_24(m, d) BOOST_PP_REPEAT_3_23(m, d) m(4, 23, d) +# define BOOST_PP_REPEAT_3_25(m, d) BOOST_PP_REPEAT_3_24(m, d) m(4, 24, d) +# define BOOST_PP_REPEAT_3_26(m, d) BOOST_PP_REPEAT_3_25(m, d) m(4, 25, d) +# define BOOST_PP_REPEAT_3_27(m, d) BOOST_PP_REPEAT_3_26(m, d) m(4, 26, d) +# define BOOST_PP_REPEAT_3_28(m, d) BOOST_PP_REPEAT_3_27(m, d) m(4, 27, d) +# define BOOST_PP_REPEAT_3_29(m, d) BOOST_PP_REPEAT_3_28(m, d) m(4, 28, d) +# define BOOST_PP_REPEAT_3_30(m, d) BOOST_PP_REPEAT_3_29(m, d) m(4, 29, d) +# define BOOST_PP_REPEAT_3_31(m, d) BOOST_PP_REPEAT_3_30(m, d) m(4, 30, d) +# define BOOST_PP_REPEAT_3_32(m, d) BOOST_PP_REPEAT_3_31(m, d) m(4, 31, d) +# define BOOST_PP_REPEAT_3_33(m, d) BOOST_PP_REPEAT_3_32(m, d) m(4, 32, d) +# define BOOST_PP_REPEAT_3_34(m, d) BOOST_PP_REPEAT_3_33(m, d) m(4, 33, d) +# define BOOST_PP_REPEAT_3_35(m, d) BOOST_PP_REPEAT_3_34(m, d) m(4, 34, d) +# define BOOST_PP_REPEAT_3_36(m, d) BOOST_PP_REPEAT_3_35(m, d) m(4, 35, d) +# define BOOST_PP_REPEAT_3_37(m, d) BOOST_PP_REPEAT_3_36(m, d) m(4, 36, d) +# define BOOST_PP_REPEAT_3_38(m, d) BOOST_PP_REPEAT_3_37(m, d) m(4, 37, d) +# define BOOST_PP_REPEAT_3_39(m, d) BOOST_PP_REPEAT_3_38(m, d) m(4, 38, d) +# define BOOST_PP_REPEAT_3_40(m, d) BOOST_PP_REPEAT_3_39(m, d) m(4, 39, d) +# define BOOST_PP_REPEAT_3_41(m, d) BOOST_PP_REPEAT_3_40(m, d) m(4, 40, d) +# define BOOST_PP_REPEAT_3_42(m, d) BOOST_PP_REPEAT_3_41(m, d) m(4, 41, d) +# define BOOST_PP_REPEAT_3_43(m, d) BOOST_PP_REPEAT_3_42(m, d) m(4, 42, d) +# define BOOST_PP_REPEAT_3_44(m, d) BOOST_PP_REPEAT_3_43(m, d) m(4, 43, d) +# define BOOST_PP_REPEAT_3_45(m, d) BOOST_PP_REPEAT_3_44(m, d) m(4, 44, d) +# define BOOST_PP_REPEAT_3_46(m, d) BOOST_PP_REPEAT_3_45(m, d) m(4, 45, d) +# define BOOST_PP_REPEAT_3_47(m, d) BOOST_PP_REPEAT_3_46(m, d) m(4, 46, d) +# define BOOST_PP_REPEAT_3_48(m, d) BOOST_PP_REPEAT_3_47(m, d) m(4, 47, d) +# define BOOST_PP_REPEAT_3_49(m, d) BOOST_PP_REPEAT_3_48(m, d) m(4, 48, d) +# define BOOST_PP_REPEAT_3_50(m, d) BOOST_PP_REPEAT_3_49(m, d) m(4, 49, d) +# define BOOST_PP_REPEAT_3_51(m, d) BOOST_PP_REPEAT_3_50(m, d) m(4, 50, d) +# define BOOST_PP_REPEAT_3_52(m, d) BOOST_PP_REPEAT_3_51(m, d) m(4, 51, d) +# define BOOST_PP_REPEAT_3_53(m, d) BOOST_PP_REPEAT_3_52(m, d) m(4, 52, d) +# define BOOST_PP_REPEAT_3_54(m, d) BOOST_PP_REPEAT_3_53(m, d) m(4, 53, d) +# define BOOST_PP_REPEAT_3_55(m, d) BOOST_PP_REPEAT_3_54(m, d) m(4, 54, d) +# define BOOST_PP_REPEAT_3_56(m, d) BOOST_PP_REPEAT_3_55(m, d) m(4, 55, d) +# define BOOST_PP_REPEAT_3_57(m, d) BOOST_PP_REPEAT_3_56(m, d) m(4, 56, d) +# define BOOST_PP_REPEAT_3_58(m, d) BOOST_PP_REPEAT_3_57(m, d) m(4, 57, d) +# define BOOST_PP_REPEAT_3_59(m, d) BOOST_PP_REPEAT_3_58(m, d) m(4, 58, d) +# define BOOST_PP_REPEAT_3_60(m, d) BOOST_PP_REPEAT_3_59(m, d) m(4, 59, d) +# define BOOST_PP_REPEAT_3_61(m, d) BOOST_PP_REPEAT_3_60(m, d) m(4, 60, d) +# define BOOST_PP_REPEAT_3_62(m, d) BOOST_PP_REPEAT_3_61(m, d) m(4, 61, d) +# define BOOST_PP_REPEAT_3_63(m, d) BOOST_PP_REPEAT_3_62(m, d) m(4, 62, d) +# define BOOST_PP_REPEAT_3_64(m, d) BOOST_PP_REPEAT_3_63(m, d) m(4, 63, d) +# define BOOST_PP_REPEAT_3_65(m, d) BOOST_PP_REPEAT_3_64(m, d) m(4, 64, d) +# define BOOST_PP_REPEAT_3_66(m, d) BOOST_PP_REPEAT_3_65(m, d) m(4, 65, d) +# define BOOST_PP_REPEAT_3_67(m, d) BOOST_PP_REPEAT_3_66(m, d) m(4, 66, d) +# define BOOST_PP_REPEAT_3_68(m, d) BOOST_PP_REPEAT_3_67(m, d) m(4, 67, d) +# define BOOST_PP_REPEAT_3_69(m, d) BOOST_PP_REPEAT_3_68(m, d) m(4, 68, d) +# define BOOST_PP_REPEAT_3_70(m, d) BOOST_PP_REPEAT_3_69(m, d) m(4, 69, d) +# define BOOST_PP_REPEAT_3_71(m, d) BOOST_PP_REPEAT_3_70(m, d) m(4, 70, d) +# define BOOST_PP_REPEAT_3_72(m, d) BOOST_PP_REPEAT_3_71(m, d) m(4, 71, d) +# define BOOST_PP_REPEAT_3_73(m, d) BOOST_PP_REPEAT_3_72(m, d) m(4, 72, d) +# define BOOST_PP_REPEAT_3_74(m, d) BOOST_PP_REPEAT_3_73(m, d) m(4, 73, d) +# define BOOST_PP_REPEAT_3_75(m, d) BOOST_PP_REPEAT_3_74(m, d) m(4, 74, d) +# define BOOST_PP_REPEAT_3_76(m, d) BOOST_PP_REPEAT_3_75(m, d) m(4, 75, d) +# define BOOST_PP_REPEAT_3_77(m, d) BOOST_PP_REPEAT_3_76(m, d) m(4, 76, d) +# define BOOST_PP_REPEAT_3_78(m, d) BOOST_PP_REPEAT_3_77(m, d) m(4, 77, d) +# define BOOST_PP_REPEAT_3_79(m, d) BOOST_PP_REPEAT_3_78(m, d) m(4, 78, d) +# define BOOST_PP_REPEAT_3_80(m, d) BOOST_PP_REPEAT_3_79(m, d) m(4, 79, d) +# define BOOST_PP_REPEAT_3_81(m, d) BOOST_PP_REPEAT_3_80(m, d) m(4, 80, d) +# define BOOST_PP_REPEAT_3_82(m, d) BOOST_PP_REPEAT_3_81(m, d) m(4, 81, d) +# define BOOST_PP_REPEAT_3_83(m, d) BOOST_PP_REPEAT_3_82(m, d) m(4, 82, d) +# define BOOST_PP_REPEAT_3_84(m, d) BOOST_PP_REPEAT_3_83(m, d) m(4, 83, d) +# define BOOST_PP_REPEAT_3_85(m, d) BOOST_PP_REPEAT_3_84(m, d) m(4, 84, d) +# define BOOST_PP_REPEAT_3_86(m, d) BOOST_PP_REPEAT_3_85(m, d) m(4, 85, d) +# define BOOST_PP_REPEAT_3_87(m, d) BOOST_PP_REPEAT_3_86(m, d) m(4, 86, d) +# define BOOST_PP_REPEAT_3_88(m, d) BOOST_PP_REPEAT_3_87(m, d) m(4, 87, d) +# define BOOST_PP_REPEAT_3_89(m, d) BOOST_PP_REPEAT_3_88(m, d) m(4, 88, d) +# define BOOST_PP_REPEAT_3_90(m, d) BOOST_PP_REPEAT_3_89(m, d) m(4, 89, d) +# define BOOST_PP_REPEAT_3_91(m, d) BOOST_PP_REPEAT_3_90(m, d) m(4, 90, d) +# define BOOST_PP_REPEAT_3_92(m, d) BOOST_PP_REPEAT_3_91(m, d) m(4, 91, d) +# define BOOST_PP_REPEAT_3_93(m, d) BOOST_PP_REPEAT_3_92(m, d) m(4, 92, d) +# define BOOST_PP_REPEAT_3_94(m, d) BOOST_PP_REPEAT_3_93(m, d) m(4, 93, d) +# define BOOST_PP_REPEAT_3_95(m, d) BOOST_PP_REPEAT_3_94(m, d) m(4, 94, d) +# define BOOST_PP_REPEAT_3_96(m, d) BOOST_PP_REPEAT_3_95(m, d) m(4, 95, d) +# define BOOST_PP_REPEAT_3_97(m, d) BOOST_PP_REPEAT_3_96(m, d) m(4, 96, d) +# define BOOST_PP_REPEAT_3_98(m, d) BOOST_PP_REPEAT_3_97(m, d) m(4, 97, d) +# define BOOST_PP_REPEAT_3_99(m, d) BOOST_PP_REPEAT_3_98(m, d) m(4, 98, d) +# define BOOST_PP_REPEAT_3_100(m, d) BOOST_PP_REPEAT_3_99(m, d) m(4, 99, d) +# define BOOST_PP_REPEAT_3_101(m, d) BOOST_PP_REPEAT_3_100(m, d) m(4, 100, d) +# define BOOST_PP_REPEAT_3_102(m, d) BOOST_PP_REPEAT_3_101(m, d) m(4, 101, d) +# define BOOST_PP_REPEAT_3_103(m, d) BOOST_PP_REPEAT_3_102(m, d) m(4, 102, d) +# define BOOST_PP_REPEAT_3_104(m, d) BOOST_PP_REPEAT_3_103(m, d) m(4, 103, d) +# define BOOST_PP_REPEAT_3_105(m, d) BOOST_PP_REPEAT_3_104(m, d) m(4, 104, d) +# define BOOST_PP_REPEAT_3_106(m, d) BOOST_PP_REPEAT_3_105(m, d) m(4, 105, d) +# define BOOST_PP_REPEAT_3_107(m, d) BOOST_PP_REPEAT_3_106(m, d) m(4, 106, d) +# define BOOST_PP_REPEAT_3_108(m, d) BOOST_PP_REPEAT_3_107(m, d) m(4, 107, d) +# define BOOST_PP_REPEAT_3_109(m, d) BOOST_PP_REPEAT_3_108(m, d) m(4, 108, d) +# define BOOST_PP_REPEAT_3_110(m, d) BOOST_PP_REPEAT_3_109(m, d) m(4, 109, d) +# define BOOST_PP_REPEAT_3_111(m, d) BOOST_PP_REPEAT_3_110(m, d) m(4, 110, d) +# define BOOST_PP_REPEAT_3_112(m, d) BOOST_PP_REPEAT_3_111(m, d) m(4, 111, d) +# define BOOST_PP_REPEAT_3_113(m, d) BOOST_PP_REPEAT_3_112(m, d) m(4, 112, d) +# define BOOST_PP_REPEAT_3_114(m, d) BOOST_PP_REPEAT_3_113(m, d) m(4, 113, d) +# define BOOST_PP_REPEAT_3_115(m, d) BOOST_PP_REPEAT_3_114(m, d) m(4, 114, d) +# define BOOST_PP_REPEAT_3_116(m, d) BOOST_PP_REPEAT_3_115(m, d) m(4, 115, d) +# define BOOST_PP_REPEAT_3_117(m, d) BOOST_PP_REPEAT_3_116(m, d) m(4, 116, d) +# define BOOST_PP_REPEAT_3_118(m, d) BOOST_PP_REPEAT_3_117(m, d) m(4, 117, d) +# define BOOST_PP_REPEAT_3_119(m, d) BOOST_PP_REPEAT_3_118(m, d) m(4, 118, d) +# define BOOST_PP_REPEAT_3_120(m, d) BOOST_PP_REPEAT_3_119(m, d) m(4, 119, d) +# define BOOST_PP_REPEAT_3_121(m, d) BOOST_PP_REPEAT_3_120(m, d) m(4, 120, d) +# define BOOST_PP_REPEAT_3_122(m, d) BOOST_PP_REPEAT_3_121(m, d) m(4, 121, d) +# define BOOST_PP_REPEAT_3_123(m, d) BOOST_PP_REPEAT_3_122(m, d) m(4, 122, d) +# define BOOST_PP_REPEAT_3_124(m, d) BOOST_PP_REPEAT_3_123(m, d) m(4, 123, d) +# define BOOST_PP_REPEAT_3_125(m, d) BOOST_PP_REPEAT_3_124(m, d) m(4, 124, d) +# define BOOST_PP_REPEAT_3_126(m, d) BOOST_PP_REPEAT_3_125(m, d) m(4, 125, d) +# define BOOST_PP_REPEAT_3_127(m, d) BOOST_PP_REPEAT_3_126(m, d) m(4, 126, d) +# define BOOST_PP_REPEAT_3_128(m, d) BOOST_PP_REPEAT_3_127(m, d) m(4, 127, d) +# define BOOST_PP_REPEAT_3_129(m, d) BOOST_PP_REPEAT_3_128(m, d) m(4, 128, d) +# define BOOST_PP_REPEAT_3_130(m, d) BOOST_PP_REPEAT_3_129(m, d) m(4, 129, d) +# define BOOST_PP_REPEAT_3_131(m, d) BOOST_PP_REPEAT_3_130(m, d) m(4, 130, d) +# define BOOST_PP_REPEAT_3_132(m, d) BOOST_PP_REPEAT_3_131(m, d) m(4, 131, d) +# define BOOST_PP_REPEAT_3_133(m, d) BOOST_PP_REPEAT_3_132(m, d) m(4, 132, d) +# define BOOST_PP_REPEAT_3_134(m, d) BOOST_PP_REPEAT_3_133(m, d) m(4, 133, d) +# define BOOST_PP_REPEAT_3_135(m, d) BOOST_PP_REPEAT_3_134(m, d) m(4, 134, d) +# define BOOST_PP_REPEAT_3_136(m, d) BOOST_PP_REPEAT_3_135(m, d) m(4, 135, d) +# define BOOST_PP_REPEAT_3_137(m, d) BOOST_PP_REPEAT_3_136(m, d) m(4, 136, d) +# define BOOST_PP_REPEAT_3_138(m, d) BOOST_PP_REPEAT_3_137(m, d) m(4, 137, d) +# define BOOST_PP_REPEAT_3_139(m, d) BOOST_PP_REPEAT_3_138(m, d) m(4, 138, d) +# define BOOST_PP_REPEAT_3_140(m, d) BOOST_PP_REPEAT_3_139(m, d) m(4, 139, d) +# define BOOST_PP_REPEAT_3_141(m, d) BOOST_PP_REPEAT_3_140(m, d) m(4, 140, d) +# define BOOST_PP_REPEAT_3_142(m, d) BOOST_PP_REPEAT_3_141(m, d) m(4, 141, d) +# define BOOST_PP_REPEAT_3_143(m, d) BOOST_PP_REPEAT_3_142(m, d) m(4, 142, d) +# define BOOST_PP_REPEAT_3_144(m, d) BOOST_PP_REPEAT_3_143(m, d) m(4, 143, d) +# define BOOST_PP_REPEAT_3_145(m, d) BOOST_PP_REPEAT_3_144(m, d) m(4, 144, d) +# define BOOST_PP_REPEAT_3_146(m, d) BOOST_PP_REPEAT_3_145(m, d) m(4, 145, d) +# define BOOST_PP_REPEAT_3_147(m, d) BOOST_PP_REPEAT_3_146(m, d) m(4, 146, d) +# define BOOST_PP_REPEAT_3_148(m, d) BOOST_PP_REPEAT_3_147(m, d) m(4, 147, d) +# define BOOST_PP_REPEAT_3_149(m, d) BOOST_PP_REPEAT_3_148(m, d) m(4, 148, d) +# define BOOST_PP_REPEAT_3_150(m, d) BOOST_PP_REPEAT_3_149(m, d) m(4, 149, d) +# define BOOST_PP_REPEAT_3_151(m, d) BOOST_PP_REPEAT_3_150(m, d) m(4, 150, d) +# define BOOST_PP_REPEAT_3_152(m, d) BOOST_PP_REPEAT_3_151(m, d) m(4, 151, d) +# define BOOST_PP_REPEAT_3_153(m, d) BOOST_PP_REPEAT_3_152(m, d) m(4, 152, d) +# define BOOST_PP_REPEAT_3_154(m, d) BOOST_PP_REPEAT_3_153(m, d) m(4, 153, d) +# define BOOST_PP_REPEAT_3_155(m, d) BOOST_PP_REPEAT_3_154(m, d) m(4, 154, d) +# define BOOST_PP_REPEAT_3_156(m, d) BOOST_PP_REPEAT_3_155(m, d) m(4, 155, d) +# define BOOST_PP_REPEAT_3_157(m, d) BOOST_PP_REPEAT_3_156(m, d) m(4, 156, d) +# define BOOST_PP_REPEAT_3_158(m, d) BOOST_PP_REPEAT_3_157(m, d) m(4, 157, d) +# define BOOST_PP_REPEAT_3_159(m, d) BOOST_PP_REPEAT_3_158(m, d) m(4, 158, d) +# define BOOST_PP_REPEAT_3_160(m, d) BOOST_PP_REPEAT_3_159(m, d) m(4, 159, d) +# define BOOST_PP_REPEAT_3_161(m, d) BOOST_PP_REPEAT_3_160(m, d) m(4, 160, d) +# define BOOST_PP_REPEAT_3_162(m, d) BOOST_PP_REPEAT_3_161(m, d) m(4, 161, d) +# define BOOST_PP_REPEAT_3_163(m, d) BOOST_PP_REPEAT_3_162(m, d) m(4, 162, d) +# define BOOST_PP_REPEAT_3_164(m, d) BOOST_PP_REPEAT_3_163(m, d) m(4, 163, d) +# define BOOST_PP_REPEAT_3_165(m, d) BOOST_PP_REPEAT_3_164(m, d) m(4, 164, d) +# define BOOST_PP_REPEAT_3_166(m, d) BOOST_PP_REPEAT_3_165(m, d) m(4, 165, d) +# define BOOST_PP_REPEAT_3_167(m, d) BOOST_PP_REPEAT_3_166(m, d) m(4, 166, d) +# define BOOST_PP_REPEAT_3_168(m, d) BOOST_PP_REPEAT_3_167(m, d) m(4, 167, d) +# define BOOST_PP_REPEAT_3_169(m, d) BOOST_PP_REPEAT_3_168(m, d) m(4, 168, d) +# define BOOST_PP_REPEAT_3_170(m, d) BOOST_PP_REPEAT_3_169(m, d) m(4, 169, d) +# define BOOST_PP_REPEAT_3_171(m, d) BOOST_PP_REPEAT_3_170(m, d) m(4, 170, d) +# define BOOST_PP_REPEAT_3_172(m, d) BOOST_PP_REPEAT_3_171(m, d) m(4, 171, d) +# define BOOST_PP_REPEAT_3_173(m, d) BOOST_PP_REPEAT_3_172(m, d) m(4, 172, d) +# define BOOST_PP_REPEAT_3_174(m, d) BOOST_PP_REPEAT_3_173(m, d) m(4, 173, d) +# define BOOST_PP_REPEAT_3_175(m, d) BOOST_PP_REPEAT_3_174(m, d) m(4, 174, d) +# define BOOST_PP_REPEAT_3_176(m, d) BOOST_PP_REPEAT_3_175(m, d) m(4, 175, d) +# define BOOST_PP_REPEAT_3_177(m, d) BOOST_PP_REPEAT_3_176(m, d) m(4, 176, d) +# define BOOST_PP_REPEAT_3_178(m, d) BOOST_PP_REPEAT_3_177(m, d) m(4, 177, d) +# define BOOST_PP_REPEAT_3_179(m, d) BOOST_PP_REPEAT_3_178(m, d) m(4, 178, d) +# define BOOST_PP_REPEAT_3_180(m, d) BOOST_PP_REPEAT_3_179(m, d) m(4, 179, d) +# define BOOST_PP_REPEAT_3_181(m, d) BOOST_PP_REPEAT_3_180(m, d) m(4, 180, d) +# define BOOST_PP_REPEAT_3_182(m, d) BOOST_PP_REPEAT_3_181(m, d) m(4, 181, d) +# define BOOST_PP_REPEAT_3_183(m, d) BOOST_PP_REPEAT_3_182(m, d) m(4, 182, d) +# define BOOST_PP_REPEAT_3_184(m, d) BOOST_PP_REPEAT_3_183(m, d) m(4, 183, d) +# define BOOST_PP_REPEAT_3_185(m, d) BOOST_PP_REPEAT_3_184(m, d) m(4, 184, d) +# define BOOST_PP_REPEAT_3_186(m, d) BOOST_PP_REPEAT_3_185(m, d) m(4, 185, d) +# define BOOST_PP_REPEAT_3_187(m, d) BOOST_PP_REPEAT_3_186(m, d) m(4, 186, d) +# define BOOST_PP_REPEAT_3_188(m, d) BOOST_PP_REPEAT_3_187(m, d) m(4, 187, d) +# define BOOST_PP_REPEAT_3_189(m, d) BOOST_PP_REPEAT_3_188(m, d) m(4, 188, d) +# define BOOST_PP_REPEAT_3_190(m, d) BOOST_PP_REPEAT_3_189(m, d) m(4, 189, d) +# define BOOST_PP_REPEAT_3_191(m, d) BOOST_PP_REPEAT_3_190(m, d) m(4, 190, d) +# define BOOST_PP_REPEAT_3_192(m, d) BOOST_PP_REPEAT_3_191(m, d) m(4, 191, d) +# define BOOST_PP_REPEAT_3_193(m, d) BOOST_PP_REPEAT_3_192(m, d) m(4, 192, d) +# define BOOST_PP_REPEAT_3_194(m, d) BOOST_PP_REPEAT_3_193(m, d) m(4, 193, d) +# define BOOST_PP_REPEAT_3_195(m, d) BOOST_PP_REPEAT_3_194(m, d) m(4, 194, d) +# define BOOST_PP_REPEAT_3_196(m, d) BOOST_PP_REPEAT_3_195(m, d) m(4, 195, d) +# define BOOST_PP_REPEAT_3_197(m, d) BOOST_PP_REPEAT_3_196(m, d) m(4, 196, d) +# define BOOST_PP_REPEAT_3_198(m, d) BOOST_PP_REPEAT_3_197(m, d) m(4, 197, d) +# define BOOST_PP_REPEAT_3_199(m, d) BOOST_PP_REPEAT_3_198(m, d) m(4, 198, d) +# define BOOST_PP_REPEAT_3_200(m, d) BOOST_PP_REPEAT_3_199(m, d) m(4, 199, d) +# define BOOST_PP_REPEAT_3_201(m, d) BOOST_PP_REPEAT_3_200(m, d) m(4, 200, d) +# define BOOST_PP_REPEAT_3_202(m, d) BOOST_PP_REPEAT_3_201(m, d) m(4, 201, d) +# define BOOST_PP_REPEAT_3_203(m, d) BOOST_PP_REPEAT_3_202(m, d) m(4, 202, d) +# define BOOST_PP_REPEAT_3_204(m, d) BOOST_PP_REPEAT_3_203(m, d) m(4, 203, d) +# define BOOST_PP_REPEAT_3_205(m, d) BOOST_PP_REPEAT_3_204(m, d) m(4, 204, d) +# define BOOST_PP_REPEAT_3_206(m, d) BOOST_PP_REPEAT_3_205(m, d) m(4, 205, d) +# define BOOST_PP_REPEAT_3_207(m, d) BOOST_PP_REPEAT_3_206(m, d) m(4, 206, d) +# define BOOST_PP_REPEAT_3_208(m, d) BOOST_PP_REPEAT_3_207(m, d) m(4, 207, d) +# define BOOST_PP_REPEAT_3_209(m, d) BOOST_PP_REPEAT_3_208(m, d) m(4, 208, d) +# define BOOST_PP_REPEAT_3_210(m, d) BOOST_PP_REPEAT_3_209(m, d) m(4, 209, d) +# define BOOST_PP_REPEAT_3_211(m, d) BOOST_PP_REPEAT_3_210(m, d) m(4, 210, d) +# define BOOST_PP_REPEAT_3_212(m, d) BOOST_PP_REPEAT_3_211(m, d) m(4, 211, d) +# define BOOST_PP_REPEAT_3_213(m, d) BOOST_PP_REPEAT_3_212(m, d) m(4, 212, d) +# define BOOST_PP_REPEAT_3_214(m, d) BOOST_PP_REPEAT_3_213(m, d) m(4, 213, d) +# define BOOST_PP_REPEAT_3_215(m, d) BOOST_PP_REPEAT_3_214(m, d) m(4, 214, d) +# define BOOST_PP_REPEAT_3_216(m, d) BOOST_PP_REPEAT_3_215(m, d) m(4, 215, d) +# define BOOST_PP_REPEAT_3_217(m, d) BOOST_PP_REPEAT_3_216(m, d) m(4, 216, d) +# define BOOST_PP_REPEAT_3_218(m, d) BOOST_PP_REPEAT_3_217(m, d) m(4, 217, d) +# define BOOST_PP_REPEAT_3_219(m, d) BOOST_PP_REPEAT_3_218(m, d) m(4, 218, d) +# define BOOST_PP_REPEAT_3_220(m, d) BOOST_PP_REPEAT_3_219(m, d) m(4, 219, d) +# define BOOST_PP_REPEAT_3_221(m, d) BOOST_PP_REPEAT_3_220(m, d) m(4, 220, d) +# define BOOST_PP_REPEAT_3_222(m, d) BOOST_PP_REPEAT_3_221(m, d) m(4, 221, d) +# define BOOST_PP_REPEAT_3_223(m, d) BOOST_PP_REPEAT_3_222(m, d) m(4, 222, d) +# define BOOST_PP_REPEAT_3_224(m, d) BOOST_PP_REPEAT_3_223(m, d) m(4, 223, d) +# define BOOST_PP_REPEAT_3_225(m, d) BOOST_PP_REPEAT_3_224(m, d) m(4, 224, d) +# define BOOST_PP_REPEAT_3_226(m, d) BOOST_PP_REPEAT_3_225(m, d) m(4, 225, d) +# define BOOST_PP_REPEAT_3_227(m, d) BOOST_PP_REPEAT_3_226(m, d) m(4, 226, d) +# define BOOST_PP_REPEAT_3_228(m, d) BOOST_PP_REPEAT_3_227(m, d) m(4, 227, d) +# define BOOST_PP_REPEAT_3_229(m, d) BOOST_PP_REPEAT_3_228(m, d) m(4, 228, d) +# define BOOST_PP_REPEAT_3_230(m, d) BOOST_PP_REPEAT_3_229(m, d) m(4, 229, d) +# define BOOST_PP_REPEAT_3_231(m, d) BOOST_PP_REPEAT_3_230(m, d) m(4, 230, d) +# define BOOST_PP_REPEAT_3_232(m, d) BOOST_PP_REPEAT_3_231(m, d) m(4, 231, d) +# define BOOST_PP_REPEAT_3_233(m, d) BOOST_PP_REPEAT_3_232(m, d) m(4, 232, d) +# define BOOST_PP_REPEAT_3_234(m, d) BOOST_PP_REPEAT_3_233(m, d) m(4, 233, d) +# define BOOST_PP_REPEAT_3_235(m, d) BOOST_PP_REPEAT_3_234(m, d) m(4, 234, d) +# define BOOST_PP_REPEAT_3_236(m, d) BOOST_PP_REPEAT_3_235(m, d) m(4, 235, d) +# define BOOST_PP_REPEAT_3_237(m, d) BOOST_PP_REPEAT_3_236(m, d) m(4, 236, d) +# define BOOST_PP_REPEAT_3_238(m, d) BOOST_PP_REPEAT_3_237(m, d) m(4, 237, d) +# define BOOST_PP_REPEAT_3_239(m, d) BOOST_PP_REPEAT_3_238(m, d) m(4, 238, d) +# define BOOST_PP_REPEAT_3_240(m, d) BOOST_PP_REPEAT_3_239(m, d) m(4, 239, d) +# define BOOST_PP_REPEAT_3_241(m, d) BOOST_PP_REPEAT_3_240(m, d) m(4, 240, d) +# define BOOST_PP_REPEAT_3_242(m, d) BOOST_PP_REPEAT_3_241(m, d) m(4, 241, d) +# define BOOST_PP_REPEAT_3_243(m, d) BOOST_PP_REPEAT_3_242(m, d) m(4, 242, d) +# define BOOST_PP_REPEAT_3_244(m, d) BOOST_PP_REPEAT_3_243(m, d) m(4, 243, d) +# define BOOST_PP_REPEAT_3_245(m, d) BOOST_PP_REPEAT_3_244(m, d) m(4, 244, d) +# define BOOST_PP_REPEAT_3_246(m, d) BOOST_PP_REPEAT_3_245(m, d) m(4, 245, d) +# define BOOST_PP_REPEAT_3_247(m, d) BOOST_PP_REPEAT_3_246(m, d) m(4, 246, d) +# define BOOST_PP_REPEAT_3_248(m, d) BOOST_PP_REPEAT_3_247(m, d) m(4, 247, d) +# define BOOST_PP_REPEAT_3_249(m, d) BOOST_PP_REPEAT_3_248(m, d) m(4, 248, d) +# define BOOST_PP_REPEAT_3_250(m, d) BOOST_PP_REPEAT_3_249(m, d) m(4, 249, d) +# define BOOST_PP_REPEAT_3_251(m, d) BOOST_PP_REPEAT_3_250(m, d) m(4, 250, d) +# define BOOST_PP_REPEAT_3_252(m, d) BOOST_PP_REPEAT_3_251(m, d) m(4, 251, d) +# define BOOST_PP_REPEAT_3_253(m, d) BOOST_PP_REPEAT_3_252(m, d) m(4, 252, d) +# define BOOST_PP_REPEAT_3_254(m, d) BOOST_PP_REPEAT_3_253(m, d) m(4, 253, d) +# define BOOST_PP_REPEAT_3_255(m, d) BOOST_PP_REPEAT_3_254(m, d) m(4, 254, d) +# define BOOST_PP_REPEAT_3_256(m, d) BOOST_PP_REPEAT_3_255(m, d) m(4, 255, d) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/repetition/repeat_from_to.hpp b/plugin/wave/include/boost/preprocessor/repetition/repeat_from_to.hpp new file mode 100644 index 0000000..efe539e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/repetition/repeat_from_to.hpp @@ -0,0 +1,87 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_REPETITION_REPEAT_FROM_TO_HPP +# define BOOST_PREPROCESSOR_REPETITION_REPEAT_FROM_TO_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_REPEAT_FROM_TO */ +# +# if 0 +# define BOOST_PP_REPEAT_FROM_TO(first, last, macro, data) +# endif +# +# define BOOST_PP_REPEAT_FROM_TO BOOST_PP_CAT(BOOST_PP_REPEAT_FROM_TO_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# define BOOST_PP_REPEAT_FROM_TO_1(f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_1(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256), f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_2(f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_2(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256), f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_3(f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_3(BOOST_PP_AUTO_REC(BOOST_PP_WHILE_P, 256), f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_4(f, l, m, dt) BOOST_PP_ERROR(0x0003) +# +# define BOOST_PP_REPEAT_FROM_TO_1ST BOOST_PP_REPEAT_FROM_TO_1 +# define BOOST_PP_REPEAT_FROM_TO_2ND BOOST_PP_REPEAT_FROM_TO_2 +# define BOOST_PP_REPEAT_FROM_TO_3RD BOOST_PP_REPEAT_FROM_TO_3 +# +# /* BOOST_PP_REPEAT_FROM_TO_D */ +# +# if 0 +# define BOOST_PP_REPEAT_FROM_TO_D(d, first, last, macro, data) +# endif +# +# define BOOST_PP_REPEAT_FROM_TO_D BOOST_PP_CAT(BOOST_PP_REPEAT_FROM_TO_D_, BOOST_PP_AUTO_REC(BOOST_PP_REPEAT_P, 4)) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_REPEAT_FROM_TO_D_1(d, f, l, m, dt) BOOST_PP_REPEAT_1(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_1, (d, f, m, dt)) +# define BOOST_PP_REPEAT_FROM_TO_D_2(d, f, l, m, dt) BOOST_PP_REPEAT_2(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_2, (d, f, m, dt)) +# define BOOST_PP_REPEAT_FROM_TO_D_3(d, f, l, m, dt) BOOST_PP_REPEAT_3(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_3, (d, f, m, dt)) +# else +# define BOOST_PP_REPEAT_FROM_TO_D_1(d, f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_1_I(d, f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_D_2(d, f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_2_I(d, f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_D_3(d, f, l, m, dt) BOOST_PP_REPEAT_FROM_TO_D_3_I(d, f, l, m, dt) +# define BOOST_PP_REPEAT_FROM_TO_D_1_I(d, f, l, m, dt) BOOST_PP_REPEAT_1(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_1, (d, f, m, dt)) +# define BOOST_PP_REPEAT_FROM_TO_D_2_I(d, f, l, m, dt) BOOST_PP_REPEAT_2(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_2, (d, f, m, dt)) +# define BOOST_PP_REPEAT_FROM_TO_D_3_I(d, f, l, m, dt) BOOST_PP_REPEAT_3(BOOST_PP_SUB_D(d, l, f), BOOST_PP_REPEAT_FROM_TO_M_3, (d, f, m, dt)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_REPEAT_FROM_TO_M_1(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_1_IM(z, n, BOOST_PP_TUPLE_REM_4 dfmd) +# define BOOST_PP_REPEAT_FROM_TO_M_2(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_2_IM(z, n, BOOST_PP_TUPLE_REM_4 dfmd) +# define BOOST_PP_REPEAT_FROM_TO_M_3(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_3_IM(z, n, BOOST_PP_TUPLE_REM_4 dfmd) +# define BOOST_PP_REPEAT_FROM_TO_M_1_IM(z, n, im) BOOST_PP_REPEAT_FROM_TO_M_1_I(z, n, im) +# define BOOST_PP_REPEAT_FROM_TO_M_2_IM(z, n, im) BOOST_PP_REPEAT_FROM_TO_M_2_I(z, n, im) +# define BOOST_PP_REPEAT_FROM_TO_M_3_IM(z, n, im) BOOST_PP_REPEAT_FROM_TO_M_3_I(z, n, im) +# else +# define BOOST_PP_REPEAT_FROM_TO_M_1(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_1_I(z, n, BOOST_PP_TUPLE_ELEM(4, 0, dfmd), BOOST_PP_TUPLE_ELEM(4, 1, dfmd), BOOST_PP_TUPLE_ELEM(4, 2, dfmd), BOOST_PP_TUPLE_ELEM(4, 3, dfmd)) +# define BOOST_PP_REPEAT_FROM_TO_M_2(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_2_I(z, n, BOOST_PP_TUPLE_ELEM(4, 0, dfmd), BOOST_PP_TUPLE_ELEM(4, 1, dfmd), BOOST_PP_TUPLE_ELEM(4, 2, dfmd), BOOST_PP_TUPLE_ELEM(4, 3, dfmd)) +# define BOOST_PP_REPEAT_FROM_TO_M_3(z, n, dfmd) BOOST_PP_REPEAT_FROM_TO_M_3_I(z, n, BOOST_PP_TUPLE_ELEM(4, 0, dfmd), BOOST_PP_TUPLE_ELEM(4, 1, dfmd), BOOST_PP_TUPLE_ELEM(4, 2, dfmd), BOOST_PP_TUPLE_ELEM(4, 3, dfmd)) +# endif +# +# define BOOST_PP_REPEAT_FROM_TO_M_1_I(z, n, d, f, m, dt) BOOST_PP_REPEAT_FROM_TO_M_1_II(z, BOOST_PP_ADD_D(d, n, f), m, dt) +# define BOOST_PP_REPEAT_FROM_TO_M_2_I(z, n, d, f, m, dt) BOOST_PP_REPEAT_FROM_TO_M_2_II(z, BOOST_PP_ADD_D(d, n, f), m, dt) +# define BOOST_PP_REPEAT_FROM_TO_M_3_I(z, n, d, f, m, dt) BOOST_PP_REPEAT_FROM_TO_M_3_II(z, BOOST_PP_ADD_D(d, n, f), m, dt) +# +# define BOOST_PP_REPEAT_FROM_TO_M_1_II(z, n, m, dt) m(z, n, dt) +# define BOOST_PP_REPEAT_FROM_TO_M_2_II(z, n, m, dt) m(z, n, dt) +# define BOOST_PP_REPEAT_FROM_TO_M_3_II(z, n, m, dt) m(z, n, dt) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/selection.hpp b/plugin/wave/include/boost/preprocessor/selection.hpp new file mode 100644 index 0000000..3b67fad --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/selection.hpp @@ -0,0 +1,18 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SELECTION_HPP +# define BOOST_PREPROCESSOR_SELECTION_HPP +# +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/selection/max.hpp b/plugin/wave/include/boost/preprocessor/selection/max.hpp new file mode 100644 index 0000000..407d702 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/selection/max.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SELECTION_MAX_HPP +# define BOOST_PREPROCESSOR_SELECTION_MAX_HPP +# +# include +# include +# include +# +# /* BOOST_PP_MAX */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MAX(x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL(x, y), y, x) +# else +# define BOOST_PP_MAX(x, y) BOOST_PP_MAX_I(x, y) +# define BOOST_PP_MAX_I(x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL(x, y), y, x) +# endif +# +# /* BOOST_PP_MAX_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MAX_D(d, x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL_D(d, x, y), y, x) +# else +# define BOOST_PP_MAX_D(d, x, y) BOOST_PP_MAX_D_I(d, x, y) +# define BOOST_PP_MAX_D_I(d, x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL_D(d, x, y), y, x) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/selection/min.hpp b/plugin/wave/include/boost/preprocessor/selection/min.hpp new file mode 100644 index 0000000..ee05588 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/selection/min.hpp @@ -0,0 +1,39 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SELECTION_MIN_HPP +# define BOOST_PREPROCESSOR_SELECTION_MIN_HPP +# +# include +# include +# include +# +# /* BOOST_PP_MIN */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MIN(x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL(y, x), y, x) +# else +# define BOOST_PP_MIN(x, y) BOOST_PP_MIN_I(x, y) +# define BOOST_PP_MIN_I(x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL(y, x), y, x) +# endif +# +# /* BOOST_PP_MIN_D */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_MIN_D(d, x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL_D(d, y, x), y, x) +# else +# define BOOST_PP_MIN_D(d, x, y) BOOST_PP_MIN_D_I(d, x, y) +# define BOOST_PP_MIN_D_I(d, x, y) BOOST_PP_IIF(BOOST_PP_LESS_EQUAL_D(d, y, x), y, x) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq.hpp b/plugin/wave/include/boost/preprocessor/seq.hpp new file mode 100644 index 0000000..cde208c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq.hpp @@ -0,0 +1,44 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_HPP +# define BOOST_PREPROCESSOR_SEQ_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/cat.hpp b/plugin/wave/include/boost/preprocessor/seq/cat.hpp new file mode 100644 index 0000000..b6b09ff --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/cat.hpp @@ -0,0 +1,49 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_CAT_HPP +# define BOOST_PREPROCESSOR_SEQ_CAT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_CAT */ +# +# define BOOST_PP_SEQ_CAT(seq) \ + BOOST_PP_IF( \ + BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq)), \ + BOOST_PP_SEQ_CAT_I, \ + BOOST_PP_SEQ_HEAD \ + )(seq) \ + /**/ +# define BOOST_PP_SEQ_CAT_I(seq) BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_CAT_O, BOOST_PP_SEQ_HEAD(seq), BOOST_PP_SEQ_TAIL(seq)) +# +# define BOOST_PP_SEQ_CAT_O(s, st, elem) BOOST_PP_SEQ_CAT_O_I(st, elem) +# define BOOST_PP_SEQ_CAT_O_I(a, b) a ## b +# +# /* BOOST_PP_SEQ_CAT_S */ +# +# define BOOST_PP_SEQ_CAT_S(s, seq) \ + BOOST_PP_IF( \ + BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq)), \ + BOOST_PP_SEQ_CAT_S_I_A, \ + BOOST_PP_SEQ_CAT_S_I_B \ + )(s, seq) \ + /**/ +# define BOOST_PP_SEQ_CAT_S_I_A(s, seq) BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_CAT_O, BOOST_PP_SEQ_HEAD(seq), BOOST_PP_SEQ_TAIL(seq)) +# define BOOST_PP_SEQ_CAT_S_I_B(s, seq) BOOST_PP_SEQ_HEAD(seq) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/detail/binary_transform.hpp b/plugin/wave/include/boost/preprocessor/seq/detail/binary_transform.hpp new file mode 100644 index 0000000..70897b0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/detail/binary_transform.hpp @@ -0,0 +1,48 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_DETAIL_BINARY_TRANSFORM_HPP +# define BOOST_PREPROCESSOR_SEQ_DETAIL_BINARY_TRANSFORM_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_BINARY_TRANSFORM */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_SEQ_BINARY_TRANSFORM(seq) BOOST_PP_SEQ_BINARY_TRANSFORM_I(, seq) +# define BOOST_PP_SEQ_BINARY_TRANSFORM_I(p, seq) BOOST_PP_SEQ_BINARY_TRANSFORM_II(p ## seq) +# define BOOST_PP_SEQ_BINARY_TRANSFORM_II(seq) BOOST_PP_SEQ_BINARY_TRANSFORM_III(seq) +# define BOOST_PP_SEQ_BINARY_TRANSFORM_III(seq) BOOST_PP_CAT(BOOST_PP_SEQ_BINARY_TRANSFORM_A seq, 0) +# else +# define BOOST_PP_SEQ_BINARY_TRANSFORM(seq) BOOST_PP_CAT(BOOST_PP_SEQ_BINARY_TRANSFORM_A seq, 0) +# endif +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_SEQ_BINARY_TRANSFORM_GET_REM(...) \ + BOOST_PP_VARIADIC_IS_SINGLE_RETURN(BOOST_PP_REM_CAT,BOOST_PP_REM,__VA_ARGS__) \ + /**/ +# else +# define BOOST_PP_SEQ_BINARY_TRANSFORM_GET_REM(...) BOOST_PP_REM +# endif +# define BOOST_PP_SEQ_BINARY_TRANSFORM_A(...) (BOOST_PP_SEQ_BINARY_TRANSFORM_GET_REM(__VA_ARGS__), __VA_ARGS__)() BOOST_PP_SEQ_BINARY_TRANSFORM_B +# define BOOST_PP_SEQ_BINARY_TRANSFORM_B(...) (BOOST_PP_SEQ_BINARY_TRANSFORM_GET_REM(__VA_ARGS__), __VA_ARGS__)() BOOST_PP_SEQ_BINARY_TRANSFORM_A +# else +# define BOOST_PP_SEQ_BINARY_TRANSFORM_A(e) (BOOST_PP_REM, e)() BOOST_PP_SEQ_BINARY_TRANSFORM_B +# define BOOST_PP_SEQ_BINARY_TRANSFORM_B(e) (BOOST_PP_REM, e)() BOOST_PP_SEQ_BINARY_TRANSFORM_A +# endif +# define BOOST_PP_SEQ_BINARY_TRANSFORM_A0 (BOOST_PP_EAT, ?) +# define BOOST_PP_SEQ_BINARY_TRANSFORM_B0 (BOOST_PP_EAT, ?) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/detail/is_empty.hpp b/plugin/wave/include/boost/preprocessor/seq/detail/is_empty.hpp new file mode 100644 index 0000000..1a80a2f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/detail/is_empty.hpp @@ -0,0 +1,49 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2015. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_DETAIL_IS_EMPTY_HPP +# define BOOST_PREPROCESSOR_SEQ_DETAIL_IS_EMPTY_HPP +# +# include +# include +# include +# include +# include +# +/* An empty seq is one that is just BOOST_PP_SEQ_NIL */ +# +# define BOOST_PP_SEQ_DETAIL_IS_EMPTY(seq) \ + BOOST_PP_COMPL \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq) \ + ) \ +/**/ +# +# define BOOST_PP_SEQ_DETAIL_IS_EMPTY_SIZE(size) \ + BOOST_PP_COMPL \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY_SIZE(size) \ + ) \ +/**/ +# +# define BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq) \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY_SIZE(BOOST_PP_SEQ_DETAIL_EMPTY_SIZE(seq)) \ +/**/ +# +# define BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY_SIZE(size) \ + BOOST_PP_BOOL(size) \ +/**/ +# +# define BOOST_PP_SEQ_DETAIL_EMPTY_SIZE(seq) \ + BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq (nil))) \ +/**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/detail/split.hpp b/plugin/wave/include/boost/preprocessor/seq/detail/split.hpp new file mode 100644 index 0000000..7c33931 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/detail/split.hpp @@ -0,0 +1,284 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_DETAIL_SPLIT_HPP +# define BOOST_PREPROCESSOR_SEQ_DETAIL_SPLIT_HPP +# +# include +# +# /* BOOST_PP_SEQ_SPLIT */ +# +# define BOOST_PP_SEQ_SPLIT(n, seq) BOOST_PP_SEQ_SPLIT_D(n, seq) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_SPLIT_D(n, seq) (BOOST_PP_SEQ_SPLIT_ ## n seq) +# else +# define BOOST_PP_SEQ_SPLIT_D(n, seq) (BOOST_PP_SEQ_SPLIT_ ## n ## seq) +# endif +# +# define BOOST_PP_SEQ_SPLIT_1(x) (x), +# define BOOST_PP_SEQ_SPLIT_2(x) (x) BOOST_PP_SEQ_SPLIT_1 +# define BOOST_PP_SEQ_SPLIT_3(x) (x) BOOST_PP_SEQ_SPLIT_2 +# define BOOST_PP_SEQ_SPLIT_4(x) (x) BOOST_PP_SEQ_SPLIT_3 +# define BOOST_PP_SEQ_SPLIT_5(x) (x) BOOST_PP_SEQ_SPLIT_4 +# define BOOST_PP_SEQ_SPLIT_6(x) (x) BOOST_PP_SEQ_SPLIT_5 +# define BOOST_PP_SEQ_SPLIT_7(x) (x) BOOST_PP_SEQ_SPLIT_6 +# define BOOST_PP_SEQ_SPLIT_8(x) (x) BOOST_PP_SEQ_SPLIT_7 +# define BOOST_PP_SEQ_SPLIT_9(x) (x) BOOST_PP_SEQ_SPLIT_8 +# define BOOST_PP_SEQ_SPLIT_10(x) (x) BOOST_PP_SEQ_SPLIT_9 +# define BOOST_PP_SEQ_SPLIT_11(x) (x) BOOST_PP_SEQ_SPLIT_10 +# define BOOST_PP_SEQ_SPLIT_12(x) (x) BOOST_PP_SEQ_SPLIT_11 +# define BOOST_PP_SEQ_SPLIT_13(x) (x) BOOST_PP_SEQ_SPLIT_12 +# define BOOST_PP_SEQ_SPLIT_14(x) (x) BOOST_PP_SEQ_SPLIT_13 +# define BOOST_PP_SEQ_SPLIT_15(x) (x) BOOST_PP_SEQ_SPLIT_14 +# define BOOST_PP_SEQ_SPLIT_16(x) (x) BOOST_PP_SEQ_SPLIT_15 +# define BOOST_PP_SEQ_SPLIT_17(x) (x) BOOST_PP_SEQ_SPLIT_16 +# define BOOST_PP_SEQ_SPLIT_18(x) (x) BOOST_PP_SEQ_SPLIT_17 +# define BOOST_PP_SEQ_SPLIT_19(x) (x) BOOST_PP_SEQ_SPLIT_18 +# define BOOST_PP_SEQ_SPLIT_20(x) (x) BOOST_PP_SEQ_SPLIT_19 +# define BOOST_PP_SEQ_SPLIT_21(x) (x) BOOST_PP_SEQ_SPLIT_20 +# define BOOST_PP_SEQ_SPLIT_22(x) (x) BOOST_PP_SEQ_SPLIT_21 +# define BOOST_PP_SEQ_SPLIT_23(x) (x) BOOST_PP_SEQ_SPLIT_22 +# define BOOST_PP_SEQ_SPLIT_24(x) (x) BOOST_PP_SEQ_SPLIT_23 +# define BOOST_PP_SEQ_SPLIT_25(x) (x) BOOST_PP_SEQ_SPLIT_24 +# define BOOST_PP_SEQ_SPLIT_26(x) (x) BOOST_PP_SEQ_SPLIT_25 +# define BOOST_PP_SEQ_SPLIT_27(x) (x) BOOST_PP_SEQ_SPLIT_26 +# define BOOST_PP_SEQ_SPLIT_28(x) (x) BOOST_PP_SEQ_SPLIT_27 +# define BOOST_PP_SEQ_SPLIT_29(x) (x) BOOST_PP_SEQ_SPLIT_28 +# define BOOST_PP_SEQ_SPLIT_30(x) (x) BOOST_PP_SEQ_SPLIT_29 +# define BOOST_PP_SEQ_SPLIT_31(x) (x) BOOST_PP_SEQ_SPLIT_30 +# define BOOST_PP_SEQ_SPLIT_32(x) (x) BOOST_PP_SEQ_SPLIT_31 +# define BOOST_PP_SEQ_SPLIT_33(x) (x) BOOST_PP_SEQ_SPLIT_32 +# define BOOST_PP_SEQ_SPLIT_34(x) (x) BOOST_PP_SEQ_SPLIT_33 +# define BOOST_PP_SEQ_SPLIT_35(x) (x) BOOST_PP_SEQ_SPLIT_34 +# define BOOST_PP_SEQ_SPLIT_36(x) (x) BOOST_PP_SEQ_SPLIT_35 +# define BOOST_PP_SEQ_SPLIT_37(x) (x) BOOST_PP_SEQ_SPLIT_36 +# define BOOST_PP_SEQ_SPLIT_38(x) (x) BOOST_PP_SEQ_SPLIT_37 +# define BOOST_PP_SEQ_SPLIT_39(x) (x) BOOST_PP_SEQ_SPLIT_38 +# define BOOST_PP_SEQ_SPLIT_40(x) (x) BOOST_PP_SEQ_SPLIT_39 +# define BOOST_PP_SEQ_SPLIT_41(x) (x) BOOST_PP_SEQ_SPLIT_40 +# define BOOST_PP_SEQ_SPLIT_42(x) (x) BOOST_PP_SEQ_SPLIT_41 +# define BOOST_PP_SEQ_SPLIT_43(x) (x) BOOST_PP_SEQ_SPLIT_42 +# define BOOST_PP_SEQ_SPLIT_44(x) (x) BOOST_PP_SEQ_SPLIT_43 +# define BOOST_PP_SEQ_SPLIT_45(x) (x) BOOST_PP_SEQ_SPLIT_44 +# define BOOST_PP_SEQ_SPLIT_46(x) (x) BOOST_PP_SEQ_SPLIT_45 +# define BOOST_PP_SEQ_SPLIT_47(x) (x) BOOST_PP_SEQ_SPLIT_46 +# define BOOST_PP_SEQ_SPLIT_48(x) (x) BOOST_PP_SEQ_SPLIT_47 +# define BOOST_PP_SEQ_SPLIT_49(x) (x) BOOST_PP_SEQ_SPLIT_48 +# define BOOST_PP_SEQ_SPLIT_50(x) (x) BOOST_PP_SEQ_SPLIT_49 +# define BOOST_PP_SEQ_SPLIT_51(x) (x) BOOST_PP_SEQ_SPLIT_50 +# define BOOST_PP_SEQ_SPLIT_52(x) (x) BOOST_PP_SEQ_SPLIT_51 +# define BOOST_PP_SEQ_SPLIT_53(x) (x) BOOST_PP_SEQ_SPLIT_52 +# define BOOST_PP_SEQ_SPLIT_54(x) (x) BOOST_PP_SEQ_SPLIT_53 +# define BOOST_PP_SEQ_SPLIT_55(x) (x) BOOST_PP_SEQ_SPLIT_54 +# define BOOST_PP_SEQ_SPLIT_56(x) (x) BOOST_PP_SEQ_SPLIT_55 +# define BOOST_PP_SEQ_SPLIT_57(x) (x) BOOST_PP_SEQ_SPLIT_56 +# define BOOST_PP_SEQ_SPLIT_58(x) (x) BOOST_PP_SEQ_SPLIT_57 +# define BOOST_PP_SEQ_SPLIT_59(x) (x) BOOST_PP_SEQ_SPLIT_58 +# define BOOST_PP_SEQ_SPLIT_60(x) (x) BOOST_PP_SEQ_SPLIT_59 +# define BOOST_PP_SEQ_SPLIT_61(x) (x) BOOST_PP_SEQ_SPLIT_60 +# define BOOST_PP_SEQ_SPLIT_62(x) (x) BOOST_PP_SEQ_SPLIT_61 +# define BOOST_PP_SEQ_SPLIT_63(x) (x) BOOST_PP_SEQ_SPLIT_62 +# define BOOST_PP_SEQ_SPLIT_64(x) (x) BOOST_PP_SEQ_SPLIT_63 +# define BOOST_PP_SEQ_SPLIT_65(x) (x) BOOST_PP_SEQ_SPLIT_64 +# define BOOST_PP_SEQ_SPLIT_66(x) (x) BOOST_PP_SEQ_SPLIT_65 +# define BOOST_PP_SEQ_SPLIT_67(x) (x) BOOST_PP_SEQ_SPLIT_66 +# define BOOST_PP_SEQ_SPLIT_68(x) (x) BOOST_PP_SEQ_SPLIT_67 +# define BOOST_PP_SEQ_SPLIT_69(x) (x) BOOST_PP_SEQ_SPLIT_68 +# define BOOST_PP_SEQ_SPLIT_70(x) (x) BOOST_PP_SEQ_SPLIT_69 +# define BOOST_PP_SEQ_SPLIT_71(x) (x) BOOST_PP_SEQ_SPLIT_70 +# define BOOST_PP_SEQ_SPLIT_72(x) (x) BOOST_PP_SEQ_SPLIT_71 +# define BOOST_PP_SEQ_SPLIT_73(x) (x) BOOST_PP_SEQ_SPLIT_72 +# define BOOST_PP_SEQ_SPLIT_74(x) (x) BOOST_PP_SEQ_SPLIT_73 +# define BOOST_PP_SEQ_SPLIT_75(x) (x) BOOST_PP_SEQ_SPLIT_74 +# define BOOST_PP_SEQ_SPLIT_76(x) (x) BOOST_PP_SEQ_SPLIT_75 +# define BOOST_PP_SEQ_SPLIT_77(x) (x) BOOST_PP_SEQ_SPLIT_76 +# define BOOST_PP_SEQ_SPLIT_78(x) (x) BOOST_PP_SEQ_SPLIT_77 +# define BOOST_PP_SEQ_SPLIT_79(x) (x) BOOST_PP_SEQ_SPLIT_78 +# define BOOST_PP_SEQ_SPLIT_80(x) (x) BOOST_PP_SEQ_SPLIT_79 +# define BOOST_PP_SEQ_SPLIT_81(x) (x) BOOST_PP_SEQ_SPLIT_80 +# define BOOST_PP_SEQ_SPLIT_82(x) (x) BOOST_PP_SEQ_SPLIT_81 +# define BOOST_PP_SEQ_SPLIT_83(x) (x) BOOST_PP_SEQ_SPLIT_82 +# define BOOST_PP_SEQ_SPLIT_84(x) (x) BOOST_PP_SEQ_SPLIT_83 +# define BOOST_PP_SEQ_SPLIT_85(x) (x) BOOST_PP_SEQ_SPLIT_84 +# define BOOST_PP_SEQ_SPLIT_86(x) (x) BOOST_PP_SEQ_SPLIT_85 +# define BOOST_PP_SEQ_SPLIT_87(x) (x) BOOST_PP_SEQ_SPLIT_86 +# define BOOST_PP_SEQ_SPLIT_88(x) (x) BOOST_PP_SEQ_SPLIT_87 +# define BOOST_PP_SEQ_SPLIT_89(x) (x) BOOST_PP_SEQ_SPLIT_88 +# define BOOST_PP_SEQ_SPLIT_90(x) (x) BOOST_PP_SEQ_SPLIT_89 +# define BOOST_PP_SEQ_SPLIT_91(x) (x) BOOST_PP_SEQ_SPLIT_90 +# define BOOST_PP_SEQ_SPLIT_92(x) (x) BOOST_PP_SEQ_SPLIT_91 +# define BOOST_PP_SEQ_SPLIT_93(x) (x) BOOST_PP_SEQ_SPLIT_92 +# define BOOST_PP_SEQ_SPLIT_94(x) (x) BOOST_PP_SEQ_SPLIT_93 +# define BOOST_PP_SEQ_SPLIT_95(x) (x) BOOST_PP_SEQ_SPLIT_94 +# define BOOST_PP_SEQ_SPLIT_96(x) (x) BOOST_PP_SEQ_SPLIT_95 +# define BOOST_PP_SEQ_SPLIT_97(x) (x) BOOST_PP_SEQ_SPLIT_96 +# define BOOST_PP_SEQ_SPLIT_98(x) (x) BOOST_PP_SEQ_SPLIT_97 +# define BOOST_PP_SEQ_SPLIT_99(x) (x) BOOST_PP_SEQ_SPLIT_98 +# define BOOST_PP_SEQ_SPLIT_100(x) (x) BOOST_PP_SEQ_SPLIT_99 +# define BOOST_PP_SEQ_SPLIT_101(x) (x) BOOST_PP_SEQ_SPLIT_100 +# define BOOST_PP_SEQ_SPLIT_102(x) (x) BOOST_PP_SEQ_SPLIT_101 +# define BOOST_PP_SEQ_SPLIT_103(x) (x) BOOST_PP_SEQ_SPLIT_102 +# define BOOST_PP_SEQ_SPLIT_104(x) (x) BOOST_PP_SEQ_SPLIT_103 +# define BOOST_PP_SEQ_SPLIT_105(x) (x) BOOST_PP_SEQ_SPLIT_104 +# define BOOST_PP_SEQ_SPLIT_106(x) (x) BOOST_PP_SEQ_SPLIT_105 +# define BOOST_PP_SEQ_SPLIT_107(x) (x) BOOST_PP_SEQ_SPLIT_106 +# define BOOST_PP_SEQ_SPLIT_108(x) (x) BOOST_PP_SEQ_SPLIT_107 +# define BOOST_PP_SEQ_SPLIT_109(x) (x) BOOST_PP_SEQ_SPLIT_108 +# define BOOST_PP_SEQ_SPLIT_110(x) (x) BOOST_PP_SEQ_SPLIT_109 +# define BOOST_PP_SEQ_SPLIT_111(x) (x) BOOST_PP_SEQ_SPLIT_110 +# define BOOST_PP_SEQ_SPLIT_112(x) (x) BOOST_PP_SEQ_SPLIT_111 +# define BOOST_PP_SEQ_SPLIT_113(x) (x) BOOST_PP_SEQ_SPLIT_112 +# define BOOST_PP_SEQ_SPLIT_114(x) (x) BOOST_PP_SEQ_SPLIT_113 +# define BOOST_PP_SEQ_SPLIT_115(x) (x) BOOST_PP_SEQ_SPLIT_114 +# define BOOST_PP_SEQ_SPLIT_116(x) (x) BOOST_PP_SEQ_SPLIT_115 +# define BOOST_PP_SEQ_SPLIT_117(x) (x) BOOST_PP_SEQ_SPLIT_116 +# define BOOST_PP_SEQ_SPLIT_118(x) (x) BOOST_PP_SEQ_SPLIT_117 +# define BOOST_PP_SEQ_SPLIT_119(x) (x) BOOST_PP_SEQ_SPLIT_118 +# define BOOST_PP_SEQ_SPLIT_120(x) (x) BOOST_PP_SEQ_SPLIT_119 +# define BOOST_PP_SEQ_SPLIT_121(x) (x) BOOST_PP_SEQ_SPLIT_120 +# define BOOST_PP_SEQ_SPLIT_122(x) (x) BOOST_PP_SEQ_SPLIT_121 +# define BOOST_PP_SEQ_SPLIT_123(x) (x) BOOST_PP_SEQ_SPLIT_122 +# define BOOST_PP_SEQ_SPLIT_124(x) (x) BOOST_PP_SEQ_SPLIT_123 +# define BOOST_PP_SEQ_SPLIT_125(x) (x) BOOST_PP_SEQ_SPLIT_124 +# define BOOST_PP_SEQ_SPLIT_126(x) (x) BOOST_PP_SEQ_SPLIT_125 +# define BOOST_PP_SEQ_SPLIT_127(x) (x) BOOST_PP_SEQ_SPLIT_126 +# define BOOST_PP_SEQ_SPLIT_128(x) (x) BOOST_PP_SEQ_SPLIT_127 +# define BOOST_PP_SEQ_SPLIT_129(x) (x) BOOST_PP_SEQ_SPLIT_128 +# define BOOST_PP_SEQ_SPLIT_130(x) (x) BOOST_PP_SEQ_SPLIT_129 +# define BOOST_PP_SEQ_SPLIT_131(x) (x) BOOST_PP_SEQ_SPLIT_130 +# define BOOST_PP_SEQ_SPLIT_132(x) (x) BOOST_PP_SEQ_SPLIT_131 +# define BOOST_PP_SEQ_SPLIT_133(x) (x) BOOST_PP_SEQ_SPLIT_132 +# define BOOST_PP_SEQ_SPLIT_134(x) (x) BOOST_PP_SEQ_SPLIT_133 +# define BOOST_PP_SEQ_SPLIT_135(x) (x) BOOST_PP_SEQ_SPLIT_134 +# define BOOST_PP_SEQ_SPLIT_136(x) (x) BOOST_PP_SEQ_SPLIT_135 +# define BOOST_PP_SEQ_SPLIT_137(x) (x) BOOST_PP_SEQ_SPLIT_136 +# define BOOST_PP_SEQ_SPLIT_138(x) (x) BOOST_PP_SEQ_SPLIT_137 +# define BOOST_PP_SEQ_SPLIT_139(x) (x) BOOST_PP_SEQ_SPLIT_138 +# define BOOST_PP_SEQ_SPLIT_140(x) (x) BOOST_PP_SEQ_SPLIT_139 +# define BOOST_PP_SEQ_SPLIT_141(x) (x) BOOST_PP_SEQ_SPLIT_140 +# define BOOST_PP_SEQ_SPLIT_142(x) (x) BOOST_PP_SEQ_SPLIT_141 +# define BOOST_PP_SEQ_SPLIT_143(x) (x) BOOST_PP_SEQ_SPLIT_142 +# define BOOST_PP_SEQ_SPLIT_144(x) (x) BOOST_PP_SEQ_SPLIT_143 +# define BOOST_PP_SEQ_SPLIT_145(x) (x) BOOST_PP_SEQ_SPLIT_144 +# define BOOST_PP_SEQ_SPLIT_146(x) (x) BOOST_PP_SEQ_SPLIT_145 +# define BOOST_PP_SEQ_SPLIT_147(x) (x) BOOST_PP_SEQ_SPLIT_146 +# define BOOST_PP_SEQ_SPLIT_148(x) (x) BOOST_PP_SEQ_SPLIT_147 +# define BOOST_PP_SEQ_SPLIT_149(x) (x) BOOST_PP_SEQ_SPLIT_148 +# define BOOST_PP_SEQ_SPLIT_150(x) (x) BOOST_PP_SEQ_SPLIT_149 +# define BOOST_PP_SEQ_SPLIT_151(x) (x) BOOST_PP_SEQ_SPLIT_150 +# define BOOST_PP_SEQ_SPLIT_152(x) (x) BOOST_PP_SEQ_SPLIT_151 +# define BOOST_PP_SEQ_SPLIT_153(x) (x) BOOST_PP_SEQ_SPLIT_152 +# define BOOST_PP_SEQ_SPLIT_154(x) (x) BOOST_PP_SEQ_SPLIT_153 +# define BOOST_PP_SEQ_SPLIT_155(x) (x) BOOST_PP_SEQ_SPLIT_154 +# define BOOST_PP_SEQ_SPLIT_156(x) (x) BOOST_PP_SEQ_SPLIT_155 +# define BOOST_PP_SEQ_SPLIT_157(x) (x) BOOST_PP_SEQ_SPLIT_156 +# define BOOST_PP_SEQ_SPLIT_158(x) (x) BOOST_PP_SEQ_SPLIT_157 +# define BOOST_PP_SEQ_SPLIT_159(x) (x) BOOST_PP_SEQ_SPLIT_158 +# define BOOST_PP_SEQ_SPLIT_160(x) (x) BOOST_PP_SEQ_SPLIT_159 +# define BOOST_PP_SEQ_SPLIT_161(x) (x) BOOST_PP_SEQ_SPLIT_160 +# define BOOST_PP_SEQ_SPLIT_162(x) (x) BOOST_PP_SEQ_SPLIT_161 +# define BOOST_PP_SEQ_SPLIT_163(x) (x) BOOST_PP_SEQ_SPLIT_162 +# define BOOST_PP_SEQ_SPLIT_164(x) (x) BOOST_PP_SEQ_SPLIT_163 +# define BOOST_PP_SEQ_SPLIT_165(x) (x) BOOST_PP_SEQ_SPLIT_164 +# define BOOST_PP_SEQ_SPLIT_166(x) (x) BOOST_PP_SEQ_SPLIT_165 +# define BOOST_PP_SEQ_SPLIT_167(x) (x) BOOST_PP_SEQ_SPLIT_166 +# define BOOST_PP_SEQ_SPLIT_168(x) (x) BOOST_PP_SEQ_SPLIT_167 +# define BOOST_PP_SEQ_SPLIT_169(x) (x) BOOST_PP_SEQ_SPLIT_168 +# define BOOST_PP_SEQ_SPLIT_170(x) (x) BOOST_PP_SEQ_SPLIT_169 +# define BOOST_PP_SEQ_SPLIT_171(x) (x) BOOST_PP_SEQ_SPLIT_170 +# define BOOST_PP_SEQ_SPLIT_172(x) (x) BOOST_PP_SEQ_SPLIT_171 +# define BOOST_PP_SEQ_SPLIT_173(x) (x) BOOST_PP_SEQ_SPLIT_172 +# define BOOST_PP_SEQ_SPLIT_174(x) (x) BOOST_PP_SEQ_SPLIT_173 +# define BOOST_PP_SEQ_SPLIT_175(x) (x) BOOST_PP_SEQ_SPLIT_174 +# define BOOST_PP_SEQ_SPLIT_176(x) (x) BOOST_PP_SEQ_SPLIT_175 +# define BOOST_PP_SEQ_SPLIT_177(x) (x) BOOST_PP_SEQ_SPLIT_176 +# define BOOST_PP_SEQ_SPLIT_178(x) (x) BOOST_PP_SEQ_SPLIT_177 +# define BOOST_PP_SEQ_SPLIT_179(x) (x) BOOST_PP_SEQ_SPLIT_178 +# define BOOST_PP_SEQ_SPLIT_180(x) (x) BOOST_PP_SEQ_SPLIT_179 +# define BOOST_PP_SEQ_SPLIT_181(x) (x) BOOST_PP_SEQ_SPLIT_180 +# define BOOST_PP_SEQ_SPLIT_182(x) (x) BOOST_PP_SEQ_SPLIT_181 +# define BOOST_PP_SEQ_SPLIT_183(x) (x) BOOST_PP_SEQ_SPLIT_182 +# define BOOST_PP_SEQ_SPLIT_184(x) (x) BOOST_PP_SEQ_SPLIT_183 +# define BOOST_PP_SEQ_SPLIT_185(x) (x) BOOST_PP_SEQ_SPLIT_184 +# define BOOST_PP_SEQ_SPLIT_186(x) (x) BOOST_PP_SEQ_SPLIT_185 +# define BOOST_PP_SEQ_SPLIT_187(x) (x) BOOST_PP_SEQ_SPLIT_186 +# define BOOST_PP_SEQ_SPLIT_188(x) (x) BOOST_PP_SEQ_SPLIT_187 +# define BOOST_PP_SEQ_SPLIT_189(x) (x) BOOST_PP_SEQ_SPLIT_188 +# define BOOST_PP_SEQ_SPLIT_190(x) (x) BOOST_PP_SEQ_SPLIT_189 +# define BOOST_PP_SEQ_SPLIT_191(x) (x) BOOST_PP_SEQ_SPLIT_190 +# define BOOST_PP_SEQ_SPLIT_192(x) (x) BOOST_PP_SEQ_SPLIT_191 +# define BOOST_PP_SEQ_SPLIT_193(x) (x) BOOST_PP_SEQ_SPLIT_192 +# define BOOST_PP_SEQ_SPLIT_194(x) (x) BOOST_PP_SEQ_SPLIT_193 +# define BOOST_PP_SEQ_SPLIT_195(x) (x) BOOST_PP_SEQ_SPLIT_194 +# define BOOST_PP_SEQ_SPLIT_196(x) (x) BOOST_PP_SEQ_SPLIT_195 +# define BOOST_PP_SEQ_SPLIT_197(x) (x) BOOST_PP_SEQ_SPLIT_196 +# define BOOST_PP_SEQ_SPLIT_198(x) (x) BOOST_PP_SEQ_SPLIT_197 +# define BOOST_PP_SEQ_SPLIT_199(x) (x) BOOST_PP_SEQ_SPLIT_198 +# define BOOST_PP_SEQ_SPLIT_200(x) (x) BOOST_PP_SEQ_SPLIT_199 +# define BOOST_PP_SEQ_SPLIT_201(x) (x) BOOST_PP_SEQ_SPLIT_200 +# define BOOST_PP_SEQ_SPLIT_202(x) (x) BOOST_PP_SEQ_SPLIT_201 +# define BOOST_PP_SEQ_SPLIT_203(x) (x) BOOST_PP_SEQ_SPLIT_202 +# define BOOST_PP_SEQ_SPLIT_204(x) (x) BOOST_PP_SEQ_SPLIT_203 +# define BOOST_PP_SEQ_SPLIT_205(x) (x) BOOST_PP_SEQ_SPLIT_204 +# define BOOST_PP_SEQ_SPLIT_206(x) (x) BOOST_PP_SEQ_SPLIT_205 +# define BOOST_PP_SEQ_SPLIT_207(x) (x) BOOST_PP_SEQ_SPLIT_206 +# define BOOST_PP_SEQ_SPLIT_208(x) (x) BOOST_PP_SEQ_SPLIT_207 +# define BOOST_PP_SEQ_SPLIT_209(x) (x) BOOST_PP_SEQ_SPLIT_208 +# define BOOST_PP_SEQ_SPLIT_210(x) (x) BOOST_PP_SEQ_SPLIT_209 +# define BOOST_PP_SEQ_SPLIT_211(x) (x) BOOST_PP_SEQ_SPLIT_210 +# define BOOST_PP_SEQ_SPLIT_212(x) (x) BOOST_PP_SEQ_SPLIT_211 +# define BOOST_PP_SEQ_SPLIT_213(x) (x) BOOST_PP_SEQ_SPLIT_212 +# define BOOST_PP_SEQ_SPLIT_214(x) (x) BOOST_PP_SEQ_SPLIT_213 +# define BOOST_PP_SEQ_SPLIT_215(x) (x) BOOST_PP_SEQ_SPLIT_214 +# define BOOST_PP_SEQ_SPLIT_216(x) (x) BOOST_PP_SEQ_SPLIT_215 +# define BOOST_PP_SEQ_SPLIT_217(x) (x) BOOST_PP_SEQ_SPLIT_216 +# define BOOST_PP_SEQ_SPLIT_218(x) (x) BOOST_PP_SEQ_SPLIT_217 +# define BOOST_PP_SEQ_SPLIT_219(x) (x) BOOST_PP_SEQ_SPLIT_218 +# define BOOST_PP_SEQ_SPLIT_220(x) (x) BOOST_PP_SEQ_SPLIT_219 +# define BOOST_PP_SEQ_SPLIT_221(x) (x) BOOST_PP_SEQ_SPLIT_220 +# define BOOST_PP_SEQ_SPLIT_222(x) (x) BOOST_PP_SEQ_SPLIT_221 +# define BOOST_PP_SEQ_SPLIT_223(x) (x) BOOST_PP_SEQ_SPLIT_222 +# define BOOST_PP_SEQ_SPLIT_224(x) (x) BOOST_PP_SEQ_SPLIT_223 +# define BOOST_PP_SEQ_SPLIT_225(x) (x) BOOST_PP_SEQ_SPLIT_224 +# define BOOST_PP_SEQ_SPLIT_226(x) (x) BOOST_PP_SEQ_SPLIT_225 +# define BOOST_PP_SEQ_SPLIT_227(x) (x) BOOST_PP_SEQ_SPLIT_226 +# define BOOST_PP_SEQ_SPLIT_228(x) (x) BOOST_PP_SEQ_SPLIT_227 +# define BOOST_PP_SEQ_SPLIT_229(x) (x) BOOST_PP_SEQ_SPLIT_228 +# define BOOST_PP_SEQ_SPLIT_230(x) (x) BOOST_PP_SEQ_SPLIT_229 +# define BOOST_PP_SEQ_SPLIT_231(x) (x) BOOST_PP_SEQ_SPLIT_230 +# define BOOST_PP_SEQ_SPLIT_232(x) (x) BOOST_PP_SEQ_SPLIT_231 +# define BOOST_PP_SEQ_SPLIT_233(x) (x) BOOST_PP_SEQ_SPLIT_232 +# define BOOST_PP_SEQ_SPLIT_234(x) (x) BOOST_PP_SEQ_SPLIT_233 +# define BOOST_PP_SEQ_SPLIT_235(x) (x) BOOST_PP_SEQ_SPLIT_234 +# define BOOST_PP_SEQ_SPLIT_236(x) (x) BOOST_PP_SEQ_SPLIT_235 +# define BOOST_PP_SEQ_SPLIT_237(x) (x) BOOST_PP_SEQ_SPLIT_236 +# define BOOST_PP_SEQ_SPLIT_238(x) (x) BOOST_PP_SEQ_SPLIT_237 +# define BOOST_PP_SEQ_SPLIT_239(x) (x) BOOST_PP_SEQ_SPLIT_238 +# define BOOST_PP_SEQ_SPLIT_240(x) (x) BOOST_PP_SEQ_SPLIT_239 +# define BOOST_PP_SEQ_SPLIT_241(x) (x) BOOST_PP_SEQ_SPLIT_240 +# define BOOST_PP_SEQ_SPLIT_242(x) (x) BOOST_PP_SEQ_SPLIT_241 +# define BOOST_PP_SEQ_SPLIT_243(x) (x) BOOST_PP_SEQ_SPLIT_242 +# define BOOST_PP_SEQ_SPLIT_244(x) (x) BOOST_PP_SEQ_SPLIT_243 +# define BOOST_PP_SEQ_SPLIT_245(x) (x) BOOST_PP_SEQ_SPLIT_244 +# define BOOST_PP_SEQ_SPLIT_246(x) (x) BOOST_PP_SEQ_SPLIT_245 +# define BOOST_PP_SEQ_SPLIT_247(x) (x) BOOST_PP_SEQ_SPLIT_246 +# define BOOST_PP_SEQ_SPLIT_248(x) (x) BOOST_PP_SEQ_SPLIT_247 +# define BOOST_PP_SEQ_SPLIT_249(x) (x) BOOST_PP_SEQ_SPLIT_248 +# define BOOST_PP_SEQ_SPLIT_250(x) (x) BOOST_PP_SEQ_SPLIT_249 +# define BOOST_PP_SEQ_SPLIT_251(x) (x) BOOST_PP_SEQ_SPLIT_250 +# define BOOST_PP_SEQ_SPLIT_252(x) (x) BOOST_PP_SEQ_SPLIT_251 +# define BOOST_PP_SEQ_SPLIT_253(x) (x) BOOST_PP_SEQ_SPLIT_252 +# define BOOST_PP_SEQ_SPLIT_254(x) (x) BOOST_PP_SEQ_SPLIT_253 +# define BOOST_PP_SEQ_SPLIT_255(x) (x) BOOST_PP_SEQ_SPLIT_254 +# define BOOST_PP_SEQ_SPLIT_256(x) (x) BOOST_PP_SEQ_SPLIT_255 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/elem.hpp b/plugin/wave/include/boost/preprocessor/seq/elem.hpp new file mode 100644 index 0000000..9c7a4b2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/elem.hpp @@ -0,0 +1,304 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_ELEM_HPP +# define BOOST_PREPROCESSOR_SEQ_ELEM_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_ELEM */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_ELEM(i, seq) BOOST_PP_SEQ_ELEM_I(i, seq) +# else +# define BOOST_PP_SEQ_ELEM(i, seq) BOOST_PP_SEQ_ELEM_I((i, seq)) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II((BOOST_PP_SEQ_ELEM_ ## i seq)) +# define BOOST_PP_SEQ_ELEM_II(res) BOOST_PP_SEQ_ELEM_IV(BOOST_PP_SEQ_ELEM_III res) +# define BOOST_PP_SEQ_ELEM_III(x, _) x BOOST_PP_EMPTY() +# define BOOST_PP_SEQ_ELEM_IV(x) x +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_ELEM_I(par) BOOST_PP_SEQ_ELEM_II ## par +# define BOOST_PP_SEQ_ELEM_II(i, seq) BOOST_PP_SEQ_ELEM_III(BOOST_PP_SEQ_ELEM_ ## i ## seq) +# define BOOST_PP_SEQ_ELEM_III(im) BOOST_PP_SEQ_ELEM_IV(im) +# define BOOST_PP_SEQ_ELEM_IV(x, _) x +# else +# if defined(__IBMC__) || defined(__IBMCPP__) +# define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_CAT(BOOST_PP_SEQ_ELEM_ ## i, seq)) +# else +# define BOOST_PP_SEQ_ELEM_I(i, seq) BOOST_PP_SEQ_ELEM_II(BOOST_PP_SEQ_ELEM_ ## i seq) +# endif +# define BOOST_PP_SEQ_ELEM_II(im) BOOST_PP_SEQ_ELEM_III(im) +# define BOOST_PP_SEQ_ELEM_III(x, _) x +# endif +# +# define BOOST_PP_SEQ_ELEM_0(x) x, BOOST_PP_NIL +# define BOOST_PP_SEQ_ELEM_1(_) BOOST_PP_SEQ_ELEM_0 +# define BOOST_PP_SEQ_ELEM_2(_) BOOST_PP_SEQ_ELEM_1 +# define BOOST_PP_SEQ_ELEM_3(_) BOOST_PP_SEQ_ELEM_2 +# define BOOST_PP_SEQ_ELEM_4(_) BOOST_PP_SEQ_ELEM_3 +# define BOOST_PP_SEQ_ELEM_5(_) BOOST_PP_SEQ_ELEM_4 +# define BOOST_PP_SEQ_ELEM_6(_) BOOST_PP_SEQ_ELEM_5 +# define BOOST_PP_SEQ_ELEM_7(_) BOOST_PP_SEQ_ELEM_6 +# define BOOST_PP_SEQ_ELEM_8(_) BOOST_PP_SEQ_ELEM_7 +# define BOOST_PP_SEQ_ELEM_9(_) BOOST_PP_SEQ_ELEM_8 +# define BOOST_PP_SEQ_ELEM_10(_) BOOST_PP_SEQ_ELEM_9 +# define BOOST_PP_SEQ_ELEM_11(_) BOOST_PP_SEQ_ELEM_10 +# define BOOST_PP_SEQ_ELEM_12(_) BOOST_PP_SEQ_ELEM_11 +# define BOOST_PP_SEQ_ELEM_13(_) BOOST_PP_SEQ_ELEM_12 +# define BOOST_PP_SEQ_ELEM_14(_) BOOST_PP_SEQ_ELEM_13 +# define BOOST_PP_SEQ_ELEM_15(_) BOOST_PP_SEQ_ELEM_14 +# define BOOST_PP_SEQ_ELEM_16(_) BOOST_PP_SEQ_ELEM_15 +# define BOOST_PP_SEQ_ELEM_17(_) BOOST_PP_SEQ_ELEM_16 +# define BOOST_PP_SEQ_ELEM_18(_) BOOST_PP_SEQ_ELEM_17 +# define BOOST_PP_SEQ_ELEM_19(_) BOOST_PP_SEQ_ELEM_18 +# define BOOST_PP_SEQ_ELEM_20(_) BOOST_PP_SEQ_ELEM_19 +# define BOOST_PP_SEQ_ELEM_21(_) BOOST_PP_SEQ_ELEM_20 +# define BOOST_PP_SEQ_ELEM_22(_) BOOST_PP_SEQ_ELEM_21 +# define BOOST_PP_SEQ_ELEM_23(_) BOOST_PP_SEQ_ELEM_22 +# define BOOST_PP_SEQ_ELEM_24(_) BOOST_PP_SEQ_ELEM_23 +# define BOOST_PP_SEQ_ELEM_25(_) BOOST_PP_SEQ_ELEM_24 +# define BOOST_PP_SEQ_ELEM_26(_) BOOST_PP_SEQ_ELEM_25 +# define BOOST_PP_SEQ_ELEM_27(_) BOOST_PP_SEQ_ELEM_26 +# define BOOST_PP_SEQ_ELEM_28(_) BOOST_PP_SEQ_ELEM_27 +# define BOOST_PP_SEQ_ELEM_29(_) BOOST_PP_SEQ_ELEM_28 +# define BOOST_PP_SEQ_ELEM_30(_) BOOST_PP_SEQ_ELEM_29 +# define BOOST_PP_SEQ_ELEM_31(_) BOOST_PP_SEQ_ELEM_30 +# define BOOST_PP_SEQ_ELEM_32(_) BOOST_PP_SEQ_ELEM_31 +# define BOOST_PP_SEQ_ELEM_33(_) BOOST_PP_SEQ_ELEM_32 +# define BOOST_PP_SEQ_ELEM_34(_) BOOST_PP_SEQ_ELEM_33 +# define BOOST_PP_SEQ_ELEM_35(_) BOOST_PP_SEQ_ELEM_34 +# define BOOST_PP_SEQ_ELEM_36(_) BOOST_PP_SEQ_ELEM_35 +# define BOOST_PP_SEQ_ELEM_37(_) BOOST_PP_SEQ_ELEM_36 +# define BOOST_PP_SEQ_ELEM_38(_) BOOST_PP_SEQ_ELEM_37 +# define BOOST_PP_SEQ_ELEM_39(_) BOOST_PP_SEQ_ELEM_38 +# define BOOST_PP_SEQ_ELEM_40(_) BOOST_PP_SEQ_ELEM_39 +# define BOOST_PP_SEQ_ELEM_41(_) BOOST_PP_SEQ_ELEM_40 +# define BOOST_PP_SEQ_ELEM_42(_) BOOST_PP_SEQ_ELEM_41 +# define BOOST_PP_SEQ_ELEM_43(_) BOOST_PP_SEQ_ELEM_42 +# define BOOST_PP_SEQ_ELEM_44(_) BOOST_PP_SEQ_ELEM_43 +# define BOOST_PP_SEQ_ELEM_45(_) BOOST_PP_SEQ_ELEM_44 +# define BOOST_PP_SEQ_ELEM_46(_) BOOST_PP_SEQ_ELEM_45 +# define BOOST_PP_SEQ_ELEM_47(_) BOOST_PP_SEQ_ELEM_46 +# define BOOST_PP_SEQ_ELEM_48(_) BOOST_PP_SEQ_ELEM_47 +# define BOOST_PP_SEQ_ELEM_49(_) BOOST_PP_SEQ_ELEM_48 +# define BOOST_PP_SEQ_ELEM_50(_) BOOST_PP_SEQ_ELEM_49 +# define BOOST_PP_SEQ_ELEM_51(_) BOOST_PP_SEQ_ELEM_50 +# define BOOST_PP_SEQ_ELEM_52(_) BOOST_PP_SEQ_ELEM_51 +# define BOOST_PP_SEQ_ELEM_53(_) BOOST_PP_SEQ_ELEM_52 +# define BOOST_PP_SEQ_ELEM_54(_) BOOST_PP_SEQ_ELEM_53 +# define BOOST_PP_SEQ_ELEM_55(_) BOOST_PP_SEQ_ELEM_54 +# define BOOST_PP_SEQ_ELEM_56(_) BOOST_PP_SEQ_ELEM_55 +# define BOOST_PP_SEQ_ELEM_57(_) BOOST_PP_SEQ_ELEM_56 +# define BOOST_PP_SEQ_ELEM_58(_) BOOST_PP_SEQ_ELEM_57 +# define BOOST_PP_SEQ_ELEM_59(_) BOOST_PP_SEQ_ELEM_58 +# define BOOST_PP_SEQ_ELEM_60(_) BOOST_PP_SEQ_ELEM_59 +# define BOOST_PP_SEQ_ELEM_61(_) BOOST_PP_SEQ_ELEM_60 +# define BOOST_PP_SEQ_ELEM_62(_) BOOST_PP_SEQ_ELEM_61 +# define BOOST_PP_SEQ_ELEM_63(_) BOOST_PP_SEQ_ELEM_62 +# define BOOST_PP_SEQ_ELEM_64(_) BOOST_PP_SEQ_ELEM_63 +# define BOOST_PP_SEQ_ELEM_65(_) BOOST_PP_SEQ_ELEM_64 +# define BOOST_PP_SEQ_ELEM_66(_) BOOST_PP_SEQ_ELEM_65 +# define BOOST_PP_SEQ_ELEM_67(_) BOOST_PP_SEQ_ELEM_66 +# define BOOST_PP_SEQ_ELEM_68(_) BOOST_PP_SEQ_ELEM_67 +# define BOOST_PP_SEQ_ELEM_69(_) BOOST_PP_SEQ_ELEM_68 +# define BOOST_PP_SEQ_ELEM_70(_) BOOST_PP_SEQ_ELEM_69 +# define BOOST_PP_SEQ_ELEM_71(_) BOOST_PP_SEQ_ELEM_70 +# define BOOST_PP_SEQ_ELEM_72(_) BOOST_PP_SEQ_ELEM_71 +# define BOOST_PP_SEQ_ELEM_73(_) BOOST_PP_SEQ_ELEM_72 +# define BOOST_PP_SEQ_ELEM_74(_) BOOST_PP_SEQ_ELEM_73 +# define BOOST_PP_SEQ_ELEM_75(_) BOOST_PP_SEQ_ELEM_74 +# define BOOST_PP_SEQ_ELEM_76(_) BOOST_PP_SEQ_ELEM_75 +# define BOOST_PP_SEQ_ELEM_77(_) BOOST_PP_SEQ_ELEM_76 +# define BOOST_PP_SEQ_ELEM_78(_) BOOST_PP_SEQ_ELEM_77 +# define BOOST_PP_SEQ_ELEM_79(_) BOOST_PP_SEQ_ELEM_78 +# define BOOST_PP_SEQ_ELEM_80(_) BOOST_PP_SEQ_ELEM_79 +# define BOOST_PP_SEQ_ELEM_81(_) BOOST_PP_SEQ_ELEM_80 +# define BOOST_PP_SEQ_ELEM_82(_) BOOST_PP_SEQ_ELEM_81 +# define BOOST_PP_SEQ_ELEM_83(_) BOOST_PP_SEQ_ELEM_82 +# define BOOST_PP_SEQ_ELEM_84(_) BOOST_PP_SEQ_ELEM_83 +# define BOOST_PP_SEQ_ELEM_85(_) BOOST_PP_SEQ_ELEM_84 +# define BOOST_PP_SEQ_ELEM_86(_) BOOST_PP_SEQ_ELEM_85 +# define BOOST_PP_SEQ_ELEM_87(_) BOOST_PP_SEQ_ELEM_86 +# define BOOST_PP_SEQ_ELEM_88(_) BOOST_PP_SEQ_ELEM_87 +# define BOOST_PP_SEQ_ELEM_89(_) BOOST_PP_SEQ_ELEM_88 +# define BOOST_PP_SEQ_ELEM_90(_) BOOST_PP_SEQ_ELEM_89 +# define BOOST_PP_SEQ_ELEM_91(_) BOOST_PP_SEQ_ELEM_90 +# define BOOST_PP_SEQ_ELEM_92(_) BOOST_PP_SEQ_ELEM_91 +# define BOOST_PP_SEQ_ELEM_93(_) BOOST_PP_SEQ_ELEM_92 +# define BOOST_PP_SEQ_ELEM_94(_) BOOST_PP_SEQ_ELEM_93 +# define BOOST_PP_SEQ_ELEM_95(_) BOOST_PP_SEQ_ELEM_94 +# define BOOST_PP_SEQ_ELEM_96(_) BOOST_PP_SEQ_ELEM_95 +# define BOOST_PP_SEQ_ELEM_97(_) BOOST_PP_SEQ_ELEM_96 +# define BOOST_PP_SEQ_ELEM_98(_) BOOST_PP_SEQ_ELEM_97 +# define BOOST_PP_SEQ_ELEM_99(_) BOOST_PP_SEQ_ELEM_98 +# define BOOST_PP_SEQ_ELEM_100(_) BOOST_PP_SEQ_ELEM_99 +# define BOOST_PP_SEQ_ELEM_101(_) BOOST_PP_SEQ_ELEM_100 +# define BOOST_PP_SEQ_ELEM_102(_) BOOST_PP_SEQ_ELEM_101 +# define BOOST_PP_SEQ_ELEM_103(_) BOOST_PP_SEQ_ELEM_102 +# define BOOST_PP_SEQ_ELEM_104(_) BOOST_PP_SEQ_ELEM_103 +# define BOOST_PP_SEQ_ELEM_105(_) BOOST_PP_SEQ_ELEM_104 +# define BOOST_PP_SEQ_ELEM_106(_) BOOST_PP_SEQ_ELEM_105 +# define BOOST_PP_SEQ_ELEM_107(_) BOOST_PP_SEQ_ELEM_106 +# define BOOST_PP_SEQ_ELEM_108(_) BOOST_PP_SEQ_ELEM_107 +# define BOOST_PP_SEQ_ELEM_109(_) BOOST_PP_SEQ_ELEM_108 +# define BOOST_PP_SEQ_ELEM_110(_) BOOST_PP_SEQ_ELEM_109 +# define BOOST_PP_SEQ_ELEM_111(_) BOOST_PP_SEQ_ELEM_110 +# define BOOST_PP_SEQ_ELEM_112(_) BOOST_PP_SEQ_ELEM_111 +# define BOOST_PP_SEQ_ELEM_113(_) BOOST_PP_SEQ_ELEM_112 +# define BOOST_PP_SEQ_ELEM_114(_) BOOST_PP_SEQ_ELEM_113 +# define BOOST_PP_SEQ_ELEM_115(_) BOOST_PP_SEQ_ELEM_114 +# define BOOST_PP_SEQ_ELEM_116(_) BOOST_PP_SEQ_ELEM_115 +# define BOOST_PP_SEQ_ELEM_117(_) BOOST_PP_SEQ_ELEM_116 +# define BOOST_PP_SEQ_ELEM_118(_) BOOST_PP_SEQ_ELEM_117 +# define BOOST_PP_SEQ_ELEM_119(_) BOOST_PP_SEQ_ELEM_118 +# define BOOST_PP_SEQ_ELEM_120(_) BOOST_PP_SEQ_ELEM_119 +# define BOOST_PP_SEQ_ELEM_121(_) BOOST_PP_SEQ_ELEM_120 +# define BOOST_PP_SEQ_ELEM_122(_) BOOST_PP_SEQ_ELEM_121 +# define BOOST_PP_SEQ_ELEM_123(_) BOOST_PP_SEQ_ELEM_122 +# define BOOST_PP_SEQ_ELEM_124(_) BOOST_PP_SEQ_ELEM_123 +# define BOOST_PP_SEQ_ELEM_125(_) BOOST_PP_SEQ_ELEM_124 +# define BOOST_PP_SEQ_ELEM_126(_) BOOST_PP_SEQ_ELEM_125 +# define BOOST_PP_SEQ_ELEM_127(_) BOOST_PP_SEQ_ELEM_126 +# define BOOST_PP_SEQ_ELEM_128(_) BOOST_PP_SEQ_ELEM_127 +# define BOOST_PP_SEQ_ELEM_129(_) BOOST_PP_SEQ_ELEM_128 +# define BOOST_PP_SEQ_ELEM_130(_) BOOST_PP_SEQ_ELEM_129 +# define BOOST_PP_SEQ_ELEM_131(_) BOOST_PP_SEQ_ELEM_130 +# define BOOST_PP_SEQ_ELEM_132(_) BOOST_PP_SEQ_ELEM_131 +# define BOOST_PP_SEQ_ELEM_133(_) BOOST_PP_SEQ_ELEM_132 +# define BOOST_PP_SEQ_ELEM_134(_) BOOST_PP_SEQ_ELEM_133 +# define BOOST_PP_SEQ_ELEM_135(_) BOOST_PP_SEQ_ELEM_134 +# define BOOST_PP_SEQ_ELEM_136(_) BOOST_PP_SEQ_ELEM_135 +# define BOOST_PP_SEQ_ELEM_137(_) BOOST_PP_SEQ_ELEM_136 +# define BOOST_PP_SEQ_ELEM_138(_) BOOST_PP_SEQ_ELEM_137 +# define BOOST_PP_SEQ_ELEM_139(_) BOOST_PP_SEQ_ELEM_138 +# define BOOST_PP_SEQ_ELEM_140(_) BOOST_PP_SEQ_ELEM_139 +# define BOOST_PP_SEQ_ELEM_141(_) BOOST_PP_SEQ_ELEM_140 +# define BOOST_PP_SEQ_ELEM_142(_) BOOST_PP_SEQ_ELEM_141 +# define BOOST_PP_SEQ_ELEM_143(_) BOOST_PP_SEQ_ELEM_142 +# define BOOST_PP_SEQ_ELEM_144(_) BOOST_PP_SEQ_ELEM_143 +# define BOOST_PP_SEQ_ELEM_145(_) BOOST_PP_SEQ_ELEM_144 +# define BOOST_PP_SEQ_ELEM_146(_) BOOST_PP_SEQ_ELEM_145 +# define BOOST_PP_SEQ_ELEM_147(_) BOOST_PP_SEQ_ELEM_146 +# define BOOST_PP_SEQ_ELEM_148(_) BOOST_PP_SEQ_ELEM_147 +# define BOOST_PP_SEQ_ELEM_149(_) BOOST_PP_SEQ_ELEM_148 +# define BOOST_PP_SEQ_ELEM_150(_) BOOST_PP_SEQ_ELEM_149 +# define BOOST_PP_SEQ_ELEM_151(_) BOOST_PP_SEQ_ELEM_150 +# define BOOST_PP_SEQ_ELEM_152(_) BOOST_PP_SEQ_ELEM_151 +# define BOOST_PP_SEQ_ELEM_153(_) BOOST_PP_SEQ_ELEM_152 +# define BOOST_PP_SEQ_ELEM_154(_) BOOST_PP_SEQ_ELEM_153 +# define BOOST_PP_SEQ_ELEM_155(_) BOOST_PP_SEQ_ELEM_154 +# define BOOST_PP_SEQ_ELEM_156(_) BOOST_PP_SEQ_ELEM_155 +# define BOOST_PP_SEQ_ELEM_157(_) BOOST_PP_SEQ_ELEM_156 +# define BOOST_PP_SEQ_ELEM_158(_) BOOST_PP_SEQ_ELEM_157 +# define BOOST_PP_SEQ_ELEM_159(_) BOOST_PP_SEQ_ELEM_158 +# define BOOST_PP_SEQ_ELEM_160(_) BOOST_PP_SEQ_ELEM_159 +# define BOOST_PP_SEQ_ELEM_161(_) BOOST_PP_SEQ_ELEM_160 +# define BOOST_PP_SEQ_ELEM_162(_) BOOST_PP_SEQ_ELEM_161 +# define BOOST_PP_SEQ_ELEM_163(_) BOOST_PP_SEQ_ELEM_162 +# define BOOST_PP_SEQ_ELEM_164(_) BOOST_PP_SEQ_ELEM_163 +# define BOOST_PP_SEQ_ELEM_165(_) BOOST_PP_SEQ_ELEM_164 +# define BOOST_PP_SEQ_ELEM_166(_) BOOST_PP_SEQ_ELEM_165 +# define BOOST_PP_SEQ_ELEM_167(_) BOOST_PP_SEQ_ELEM_166 +# define BOOST_PP_SEQ_ELEM_168(_) BOOST_PP_SEQ_ELEM_167 +# define BOOST_PP_SEQ_ELEM_169(_) BOOST_PP_SEQ_ELEM_168 +# define BOOST_PP_SEQ_ELEM_170(_) BOOST_PP_SEQ_ELEM_169 +# define BOOST_PP_SEQ_ELEM_171(_) BOOST_PP_SEQ_ELEM_170 +# define BOOST_PP_SEQ_ELEM_172(_) BOOST_PP_SEQ_ELEM_171 +# define BOOST_PP_SEQ_ELEM_173(_) BOOST_PP_SEQ_ELEM_172 +# define BOOST_PP_SEQ_ELEM_174(_) BOOST_PP_SEQ_ELEM_173 +# define BOOST_PP_SEQ_ELEM_175(_) BOOST_PP_SEQ_ELEM_174 +# define BOOST_PP_SEQ_ELEM_176(_) BOOST_PP_SEQ_ELEM_175 +# define BOOST_PP_SEQ_ELEM_177(_) BOOST_PP_SEQ_ELEM_176 +# define BOOST_PP_SEQ_ELEM_178(_) BOOST_PP_SEQ_ELEM_177 +# define BOOST_PP_SEQ_ELEM_179(_) BOOST_PP_SEQ_ELEM_178 +# define BOOST_PP_SEQ_ELEM_180(_) BOOST_PP_SEQ_ELEM_179 +# define BOOST_PP_SEQ_ELEM_181(_) BOOST_PP_SEQ_ELEM_180 +# define BOOST_PP_SEQ_ELEM_182(_) BOOST_PP_SEQ_ELEM_181 +# define BOOST_PP_SEQ_ELEM_183(_) BOOST_PP_SEQ_ELEM_182 +# define BOOST_PP_SEQ_ELEM_184(_) BOOST_PP_SEQ_ELEM_183 +# define BOOST_PP_SEQ_ELEM_185(_) BOOST_PP_SEQ_ELEM_184 +# define BOOST_PP_SEQ_ELEM_186(_) BOOST_PP_SEQ_ELEM_185 +# define BOOST_PP_SEQ_ELEM_187(_) BOOST_PP_SEQ_ELEM_186 +# define BOOST_PP_SEQ_ELEM_188(_) BOOST_PP_SEQ_ELEM_187 +# define BOOST_PP_SEQ_ELEM_189(_) BOOST_PP_SEQ_ELEM_188 +# define BOOST_PP_SEQ_ELEM_190(_) BOOST_PP_SEQ_ELEM_189 +# define BOOST_PP_SEQ_ELEM_191(_) BOOST_PP_SEQ_ELEM_190 +# define BOOST_PP_SEQ_ELEM_192(_) BOOST_PP_SEQ_ELEM_191 +# define BOOST_PP_SEQ_ELEM_193(_) BOOST_PP_SEQ_ELEM_192 +# define BOOST_PP_SEQ_ELEM_194(_) BOOST_PP_SEQ_ELEM_193 +# define BOOST_PP_SEQ_ELEM_195(_) BOOST_PP_SEQ_ELEM_194 +# define BOOST_PP_SEQ_ELEM_196(_) BOOST_PP_SEQ_ELEM_195 +# define BOOST_PP_SEQ_ELEM_197(_) BOOST_PP_SEQ_ELEM_196 +# define BOOST_PP_SEQ_ELEM_198(_) BOOST_PP_SEQ_ELEM_197 +# define BOOST_PP_SEQ_ELEM_199(_) BOOST_PP_SEQ_ELEM_198 +# define BOOST_PP_SEQ_ELEM_200(_) BOOST_PP_SEQ_ELEM_199 +# define BOOST_PP_SEQ_ELEM_201(_) BOOST_PP_SEQ_ELEM_200 +# define BOOST_PP_SEQ_ELEM_202(_) BOOST_PP_SEQ_ELEM_201 +# define BOOST_PP_SEQ_ELEM_203(_) BOOST_PP_SEQ_ELEM_202 +# define BOOST_PP_SEQ_ELEM_204(_) BOOST_PP_SEQ_ELEM_203 +# define BOOST_PP_SEQ_ELEM_205(_) BOOST_PP_SEQ_ELEM_204 +# define BOOST_PP_SEQ_ELEM_206(_) BOOST_PP_SEQ_ELEM_205 +# define BOOST_PP_SEQ_ELEM_207(_) BOOST_PP_SEQ_ELEM_206 +# define BOOST_PP_SEQ_ELEM_208(_) BOOST_PP_SEQ_ELEM_207 +# define BOOST_PP_SEQ_ELEM_209(_) BOOST_PP_SEQ_ELEM_208 +# define BOOST_PP_SEQ_ELEM_210(_) BOOST_PP_SEQ_ELEM_209 +# define BOOST_PP_SEQ_ELEM_211(_) BOOST_PP_SEQ_ELEM_210 +# define BOOST_PP_SEQ_ELEM_212(_) BOOST_PP_SEQ_ELEM_211 +# define BOOST_PP_SEQ_ELEM_213(_) BOOST_PP_SEQ_ELEM_212 +# define BOOST_PP_SEQ_ELEM_214(_) BOOST_PP_SEQ_ELEM_213 +# define BOOST_PP_SEQ_ELEM_215(_) BOOST_PP_SEQ_ELEM_214 +# define BOOST_PP_SEQ_ELEM_216(_) BOOST_PP_SEQ_ELEM_215 +# define BOOST_PP_SEQ_ELEM_217(_) BOOST_PP_SEQ_ELEM_216 +# define BOOST_PP_SEQ_ELEM_218(_) BOOST_PP_SEQ_ELEM_217 +# define BOOST_PP_SEQ_ELEM_219(_) BOOST_PP_SEQ_ELEM_218 +# define BOOST_PP_SEQ_ELEM_220(_) BOOST_PP_SEQ_ELEM_219 +# define BOOST_PP_SEQ_ELEM_221(_) BOOST_PP_SEQ_ELEM_220 +# define BOOST_PP_SEQ_ELEM_222(_) BOOST_PP_SEQ_ELEM_221 +# define BOOST_PP_SEQ_ELEM_223(_) BOOST_PP_SEQ_ELEM_222 +# define BOOST_PP_SEQ_ELEM_224(_) BOOST_PP_SEQ_ELEM_223 +# define BOOST_PP_SEQ_ELEM_225(_) BOOST_PP_SEQ_ELEM_224 +# define BOOST_PP_SEQ_ELEM_226(_) BOOST_PP_SEQ_ELEM_225 +# define BOOST_PP_SEQ_ELEM_227(_) BOOST_PP_SEQ_ELEM_226 +# define BOOST_PP_SEQ_ELEM_228(_) BOOST_PP_SEQ_ELEM_227 +# define BOOST_PP_SEQ_ELEM_229(_) BOOST_PP_SEQ_ELEM_228 +# define BOOST_PP_SEQ_ELEM_230(_) BOOST_PP_SEQ_ELEM_229 +# define BOOST_PP_SEQ_ELEM_231(_) BOOST_PP_SEQ_ELEM_230 +# define BOOST_PP_SEQ_ELEM_232(_) BOOST_PP_SEQ_ELEM_231 +# define BOOST_PP_SEQ_ELEM_233(_) BOOST_PP_SEQ_ELEM_232 +# define BOOST_PP_SEQ_ELEM_234(_) BOOST_PP_SEQ_ELEM_233 +# define BOOST_PP_SEQ_ELEM_235(_) BOOST_PP_SEQ_ELEM_234 +# define BOOST_PP_SEQ_ELEM_236(_) BOOST_PP_SEQ_ELEM_235 +# define BOOST_PP_SEQ_ELEM_237(_) BOOST_PP_SEQ_ELEM_236 +# define BOOST_PP_SEQ_ELEM_238(_) BOOST_PP_SEQ_ELEM_237 +# define BOOST_PP_SEQ_ELEM_239(_) BOOST_PP_SEQ_ELEM_238 +# define BOOST_PP_SEQ_ELEM_240(_) BOOST_PP_SEQ_ELEM_239 +# define BOOST_PP_SEQ_ELEM_241(_) BOOST_PP_SEQ_ELEM_240 +# define BOOST_PP_SEQ_ELEM_242(_) BOOST_PP_SEQ_ELEM_241 +# define BOOST_PP_SEQ_ELEM_243(_) BOOST_PP_SEQ_ELEM_242 +# define BOOST_PP_SEQ_ELEM_244(_) BOOST_PP_SEQ_ELEM_243 +# define BOOST_PP_SEQ_ELEM_245(_) BOOST_PP_SEQ_ELEM_244 +# define BOOST_PP_SEQ_ELEM_246(_) BOOST_PP_SEQ_ELEM_245 +# define BOOST_PP_SEQ_ELEM_247(_) BOOST_PP_SEQ_ELEM_246 +# define BOOST_PP_SEQ_ELEM_248(_) BOOST_PP_SEQ_ELEM_247 +# define BOOST_PP_SEQ_ELEM_249(_) BOOST_PP_SEQ_ELEM_248 +# define BOOST_PP_SEQ_ELEM_250(_) BOOST_PP_SEQ_ELEM_249 +# define BOOST_PP_SEQ_ELEM_251(_) BOOST_PP_SEQ_ELEM_250 +# define BOOST_PP_SEQ_ELEM_252(_) BOOST_PP_SEQ_ELEM_251 +# define BOOST_PP_SEQ_ELEM_253(_) BOOST_PP_SEQ_ELEM_252 +# define BOOST_PP_SEQ_ELEM_254(_) BOOST_PP_SEQ_ELEM_253 +# define BOOST_PP_SEQ_ELEM_255(_) BOOST_PP_SEQ_ELEM_254 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/enum.hpp b/plugin/wave/include/boost/preprocessor/seq/enum.hpp new file mode 100644 index 0000000..b63b242 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/enum.hpp @@ -0,0 +1,288 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_ENUM_HPP +# define BOOST_PREPROCESSOR_SEQ_ENUM_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_ENUM */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_ENUM(seq) BOOST_PP_SEQ_ENUM_I(seq) +# define BOOST_PP_SEQ_ENUM_I(seq) BOOST_PP_CAT(BOOST_PP_SEQ_ENUM_, BOOST_PP_SEQ_SIZE(seq)) seq +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_ENUM(seq) BOOST_PP_SEQ_ENUM_I(BOOST_PP_SEQ_SIZE(seq), seq) +# define BOOST_PP_SEQ_ENUM_I(size, seq) BOOST_PP_CAT(BOOST_PP_SEQ_ENUM_, size) seq +# else +# define BOOST_PP_SEQ_ENUM(seq) BOOST_PP_CAT(BOOST_PP_SEQ_ENUM_, BOOST_PP_SEQ_SIZE(seq)) seq +# endif +# +# define BOOST_PP_SEQ_ENUM_1(x) x +# define BOOST_PP_SEQ_ENUM_2(x) x, BOOST_PP_SEQ_ENUM_1 +# define BOOST_PP_SEQ_ENUM_3(x) x, BOOST_PP_SEQ_ENUM_2 +# define BOOST_PP_SEQ_ENUM_4(x) x, BOOST_PP_SEQ_ENUM_3 +# define BOOST_PP_SEQ_ENUM_5(x) x, BOOST_PP_SEQ_ENUM_4 +# define BOOST_PP_SEQ_ENUM_6(x) x, BOOST_PP_SEQ_ENUM_5 +# define BOOST_PP_SEQ_ENUM_7(x) x, BOOST_PP_SEQ_ENUM_6 +# define BOOST_PP_SEQ_ENUM_8(x) x, BOOST_PP_SEQ_ENUM_7 +# define BOOST_PP_SEQ_ENUM_9(x) x, BOOST_PP_SEQ_ENUM_8 +# define BOOST_PP_SEQ_ENUM_10(x) x, BOOST_PP_SEQ_ENUM_9 +# define BOOST_PP_SEQ_ENUM_11(x) x, BOOST_PP_SEQ_ENUM_10 +# define BOOST_PP_SEQ_ENUM_12(x) x, BOOST_PP_SEQ_ENUM_11 +# define BOOST_PP_SEQ_ENUM_13(x) x, BOOST_PP_SEQ_ENUM_12 +# define BOOST_PP_SEQ_ENUM_14(x) x, BOOST_PP_SEQ_ENUM_13 +# define BOOST_PP_SEQ_ENUM_15(x) x, BOOST_PP_SEQ_ENUM_14 +# define BOOST_PP_SEQ_ENUM_16(x) x, BOOST_PP_SEQ_ENUM_15 +# define BOOST_PP_SEQ_ENUM_17(x) x, BOOST_PP_SEQ_ENUM_16 +# define BOOST_PP_SEQ_ENUM_18(x) x, BOOST_PP_SEQ_ENUM_17 +# define BOOST_PP_SEQ_ENUM_19(x) x, BOOST_PP_SEQ_ENUM_18 +# define BOOST_PP_SEQ_ENUM_20(x) x, BOOST_PP_SEQ_ENUM_19 +# define BOOST_PP_SEQ_ENUM_21(x) x, BOOST_PP_SEQ_ENUM_20 +# define BOOST_PP_SEQ_ENUM_22(x) x, BOOST_PP_SEQ_ENUM_21 +# define BOOST_PP_SEQ_ENUM_23(x) x, BOOST_PP_SEQ_ENUM_22 +# define BOOST_PP_SEQ_ENUM_24(x) x, BOOST_PP_SEQ_ENUM_23 +# define BOOST_PP_SEQ_ENUM_25(x) x, BOOST_PP_SEQ_ENUM_24 +# define BOOST_PP_SEQ_ENUM_26(x) x, BOOST_PP_SEQ_ENUM_25 +# define BOOST_PP_SEQ_ENUM_27(x) x, BOOST_PP_SEQ_ENUM_26 +# define BOOST_PP_SEQ_ENUM_28(x) x, BOOST_PP_SEQ_ENUM_27 +# define BOOST_PP_SEQ_ENUM_29(x) x, BOOST_PP_SEQ_ENUM_28 +# define BOOST_PP_SEQ_ENUM_30(x) x, BOOST_PP_SEQ_ENUM_29 +# define BOOST_PP_SEQ_ENUM_31(x) x, BOOST_PP_SEQ_ENUM_30 +# define BOOST_PP_SEQ_ENUM_32(x) x, BOOST_PP_SEQ_ENUM_31 +# define BOOST_PP_SEQ_ENUM_33(x) x, BOOST_PP_SEQ_ENUM_32 +# define BOOST_PP_SEQ_ENUM_34(x) x, BOOST_PP_SEQ_ENUM_33 +# define BOOST_PP_SEQ_ENUM_35(x) x, BOOST_PP_SEQ_ENUM_34 +# define BOOST_PP_SEQ_ENUM_36(x) x, BOOST_PP_SEQ_ENUM_35 +# define BOOST_PP_SEQ_ENUM_37(x) x, BOOST_PP_SEQ_ENUM_36 +# define BOOST_PP_SEQ_ENUM_38(x) x, BOOST_PP_SEQ_ENUM_37 +# define BOOST_PP_SEQ_ENUM_39(x) x, BOOST_PP_SEQ_ENUM_38 +# define BOOST_PP_SEQ_ENUM_40(x) x, BOOST_PP_SEQ_ENUM_39 +# define BOOST_PP_SEQ_ENUM_41(x) x, BOOST_PP_SEQ_ENUM_40 +# define BOOST_PP_SEQ_ENUM_42(x) x, BOOST_PP_SEQ_ENUM_41 +# define BOOST_PP_SEQ_ENUM_43(x) x, BOOST_PP_SEQ_ENUM_42 +# define BOOST_PP_SEQ_ENUM_44(x) x, BOOST_PP_SEQ_ENUM_43 +# define BOOST_PP_SEQ_ENUM_45(x) x, BOOST_PP_SEQ_ENUM_44 +# define BOOST_PP_SEQ_ENUM_46(x) x, BOOST_PP_SEQ_ENUM_45 +# define BOOST_PP_SEQ_ENUM_47(x) x, BOOST_PP_SEQ_ENUM_46 +# define BOOST_PP_SEQ_ENUM_48(x) x, BOOST_PP_SEQ_ENUM_47 +# define BOOST_PP_SEQ_ENUM_49(x) x, BOOST_PP_SEQ_ENUM_48 +# define BOOST_PP_SEQ_ENUM_50(x) x, BOOST_PP_SEQ_ENUM_49 +# define BOOST_PP_SEQ_ENUM_51(x) x, BOOST_PP_SEQ_ENUM_50 +# define BOOST_PP_SEQ_ENUM_52(x) x, BOOST_PP_SEQ_ENUM_51 +# define BOOST_PP_SEQ_ENUM_53(x) x, BOOST_PP_SEQ_ENUM_52 +# define BOOST_PP_SEQ_ENUM_54(x) x, BOOST_PP_SEQ_ENUM_53 +# define BOOST_PP_SEQ_ENUM_55(x) x, BOOST_PP_SEQ_ENUM_54 +# define BOOST_PP_SEQ_ENUM_56(x) x, BOOST_PP_SEQ_ENUM_55 +# define BOOST_PP_SEQ_ENUM_57(x) x, BOOST_PP_SEQ_ENUM_56 +# define BOOST_PP_SEQ_ENUM_58(x) x, BOOST_PP_SEQ_ENUM_57 +# define BOOST_PP_SEQ_ENUM_59(x) x, BOOST_PP_SEQ_ENUM_58 +# define BOOST_PP_SEQ_ENUM_60(x) x, BOOST_PP_SEQ_ENUM_59 +# define BOOST_PP_SEQ_ENUM_61(x) x, BOOST_PP_SEQ_ENUM_60 +# define BOOST_PP_SEQ_ENUM_62(x) x, BOOST_PP_SEQ_ENUM_61 +# define BOOST_PP_SEQ_ENUM_63(x) x, BOOST_PP_SEQ_ENUM_62 +# define BOOST_PP_SEQ_ENUM_64(x) x, BOOST_PP_SEQ_ENUM_63 +# define BOOST_PP_SEQ_ENUM_65(x) x, BOOST_PP_SEQ_ENUM_64 +# define BOOST_PP_SEQ_ENUM_66(x) x, BOOST_PP_SEQ_ENUM_65 +# define BOOST_PP_SEQ_ENUM_67(x) x, BOOST_PP_SEQ_ENUM_66 +# define BOOST_PP_SEQ_ENUM_68(x) x, BOOST_PP_SEQ_ENUM_67 +# define BOOST_PP_SEQ_ENUM_69(x) x, BOOST_PP_SEQ_ENUM_68 +# define BOOST_PP_SEQ_ENUM_70(x) x, BOOST_PP_SEQ_ENUM_69 +# define BOOST_PP_SEQ_ENUM_71(x) x, BOOST_PP_SEQ_ENUM_70 +# define BOOST_PP_SEQ_ENUM_72(x) x, BOOST_PP_SEQ_ENUM_71 +# define BOOST_PP_SEQ_ENUM_73(x) x, BOOST_PP_SEQ_ENUM_72 +# define BOOST_PP_SEQ_ENUM_74(x) x, BOOST_PP_SEQ_ENUM_73 +# define BOOST_PP_SEQ_ENUM_75(x) x, BOOST_PP_SEQ_ENUM_74 +# define BOOST_PP_SEQ_ENUM_76(x) x, BOOST_PP_SEQ_ENUM_75 +# define BOOST_PP_SEQ_ENUM_77(x) x, BOOST_PP_SEQ_ENUM_76 +# define BOOST_PP_SEQ_ENUM_78(x) x, BOOST_PP_SEQ_ENUM_77 +# define BOOST_PP_SEQ_ENUM_79(x) x, BOOST_PP_SEQ_ENUM_78 +# define BOOST_PP_SEQ_ENUM_80(x) x, BOOST_PP_SEQ_ENUM_79 +# define BOOST_PP_SEQ_ENUM_81(x) x, BOOST_PP_SEQ_ENUM_80 +# define BOOST_PP_SEQ_ENUM_82(x) x, BOOST_PP_SEQ_ENUM_81 +# define BOOST_PP_SEQ_ENUM_83(x) x, BOOST_PP_SEQ_ENUM_82 +# define BOOST_PP_SEQ_ENUM_84(x) x, BOOST_PP_SEQ_ENUM_83 +# define BOOST_PP_SEQ_ENUM_85(x) x, BOOST_PP_SEQ_ENUM_84 +# define BOOST_PP_SEQ_ENUM_86(x) x, BOOST_PP_SEQ_ENUM_85 +# define BOOST_PP_SEQ_ENUM_87(x) x, BOOST_PP_SEQ_ENUM_86 +# define BOOST_PP_SEQ_ENUM_88(x) x, BOOST_PP_SEQ_ENUM_87 +# define BOOST_PP_SEQ_ENUM_89(x) x, BOOST_PP_SEQ_ENUM_88 +# define BOOST_PP_SEQ_ENUM_90(x) x, BOOST_PP_SEQ_ENUM_89 +# define BOOST_PP_SEQ_ENUM_91(x) x, BOOST_PP_SEQ_ENUM_90 +# define BOOST_PP_SEQ_ENUM_92(x) x, BOOST_PP_SEQ_ENUM_91 +# define BOOST_PP_SEQ_ENUM_93(x) x, BOOST_PP_SEQ_ENUM_92 +# define BOOST_PP_SEQ_ENUM_94(x) x, BOOST_PP_SEQ_ENUM_93 +# define BOOST_PP_SEQ_ENUM_95(x) x, BOOST_PP_SEQ_ENUM_94 +# define BOOST_PP_SEQ_ENUM_96(x) x, BOOST_PP_SEQ_ENUM_95 +# define BOOST_PP_SEQ_ENUM_97(x) x, BOOST_PP_SEQ_ENUM_96 +# define BOOST_PP_SEQ_ENUM_98(x) x, BOOST_PP_SEQ_ENUM_97 +# define BOOST_PP_SEQ_ENUM_99(x) x, BOOST_PP_SEQ_ENUM_98 +# define BOOST_PP_SEQ_ENUM_100(x) x, BOOST_PP_SEQ_ENUM_99 +# define BOOST_PP_SEQ_ENUM_101(x) x, BOOST_PP_SEQ_ENUM_100 +# define BOOST_PP_SEQ_ENUM_102(x) x, BOOST_PP_SEQ_ENUM_101 +# define BOOST_PP_SEQ_ENUM_103(x) x, BOOST_PP_SEQ_ENUM_102 +# define BOOST_PP_SEQ_ENUM_104(x) x, BOOST_PP_SEQ_ENUM_103 +# define BOOST_PP_SEQ_ENUM_105(x) x, BOOST_PP_SEQ_ENUM_104 +# define BOOST_PP_SEQ_ENUM_106(x) x, BOOST_PP_SEQ_ENUM_105 +# define BOOST_PP_SEQ_ENUM_107(x) x, BOOST_PP_SEQ_ENUM_106 +# define BOOST_PP_SEQ_ENUM_108(x) x, BOOST_PP_SEQ_ENUM_107 +# define BOOST_PP_SEQ_ENUM_109(x) x, BOOST_PP_SEQ_ENUM_108 +# define BOOST_PP_SEQ_ENUM_110(x) x, BOOST_PP_SEQ_ENUM_109 +# define BOOST_PP_SEQ_ENUM_111(x) x, BOOST_PP_SEQ_ENUM_110 +# define BOOST_PP_SEQ_ENUM_112(x) x, BOOST_PP_SEQ_ENUM_111 +# define BOOST_PP_SEQ_ENUM_113(x) x, BOOST_PP_SEQ_ENUM_112 +# define BOOST_PP_SEQ_ENUM_114(x) x, BOOST_PP_SEQ_ENUM_113 +# define BOOST_PP_SEQ_ENUM_115(x) x, BOOST_PP_SEQ_ENUM_114 +# define BOOST_PP_SEQ_ENUM_116(x) x, BOOST_PP_SEQ_ENUM_115 +# define BOOST_PP_SEQ_ENUM_117(x) x, BOOST_PP_SEQ_ENUM_116 +# define BOOST_PP_SEQ_ENUM_118(x) x, BOOST_PP_SEQ_ENUM_117 +# define BOOST_PP_SEQ_ENUM_119(x) x, BOOST_PP_SEQ_ENUM_118 +# define BOOST_PP_SEQ_ENUM_120(x) x, BOOST_PP_SEQ_ENUM_119 +# define BOOST_PP_SEQ_ENUM_121(x) x, BOOST_PP_SEQ_ENUM_120 +# define BOOST_PP_SEQ_ENUM_122(x) x, BOOST_PP_SEQ_ENUM_121 +# define BOOST_PP_SEQ_ENUM_123(x) x, BOOST_PP_SEQ_ENUM_122 +# define BOOST_PP_SEQ_ENUM_124(x) x, BOOST_PP_SEQ_ENUM_123 +# define BOOST_PP_SEQ_ENUM_125(x) x, BOOST_PP_SEQ_ENUM_124 +# define BOOST_PP_SEQ_ENUM_126(x) x, BOOST_PP_SEQ_ENUM_125 +# define BOOST_PP_SEQ_ENUM_127(x) x, BOOST_PP_SEQ_ENUM_126 +# define BOOST_PP_SEQ_ENUM_128(x) x, BOOST_PP_SEQ_ENUM_127 +# define BOOST_PP_SEQ_ENUM_129(x) x, BOOST_PP_SEQ_ENUM_128 +# define BOOST_PP_SEQ_ENUM_130(x) x, BOOST_PP_SEQ_ENUM_129 +# define BOOST_PP_SEQ_ENUM_131(x) x, BOOST_PP_SEQ_ENUM_130 +# define BOOST_PP_SEQ_ENUM_132(x) x, BOOST_PP_SEQ_ENUM_131 +# define BOOST_PP_SEQ_ENUM_133(x) x, BOOST_PP_SEQ_ENUM_132 +# define BOOST_PP_SEQ_ENUM_134(x) x, BOOST_PP_SEQ_ENUM_133 +# define BOOST_PP_SEQ_ENUM_135(x) x, BOOST_PP_SEQ_ENUM_134 +# define BOOST_PP_SEQ_ENUM_136(x) x, BOOST_PP_SEQ_ENUM_135 +# define BOOST_PP_SEQ_ENUM_137(x) x, BOOST_PP_SEQ_ENUM_136 +# define BOOST_PP_SEQ_ENUM_138(x) x, BOOST_PP_SEQ_ENUM_137 +# define BOOST_PP_SEQ_ENUM_139(x) x, BOOST_PP_SEQ_ENUM_138 +# define BOOST_PP_SEQ_ENUM_140(x) x, BOOST_PP_SEQ_ENUM_139 +# define BOOST_PP_SEQ_ENUM_141(x) x, BOOST_PP_SEQ_ENUM_140 +# define BOOST_PP_SEQ_ENUM_142(x) x, BOOST_PP_SEQ_ENUM_141 +# define BOOST_PP_SEQ_ENUM_143(x) x, BOOST_PP_SEQ_ENUM_142 +# define BOOST_PP_SEQ_ENUM_144(x) x, BOOST_PP_SEQ_ENUM_143 +# define BOOST_PP_SEQ_ENUM_145(x) x, BOOST_PP_SEQ_ENUM_144 +# define BOOST_PP_SEQ_ENUM_146(x) x, BOOST_PP_SEQ_ENUM_145 +# define BOOST_PP_SEQ_ENUM_147(x) x, BOOST_PP_SEQ_ENUM_146 +# define BOOST_PP_SEQ_ENUM_148(x) x, BOOST_PP_SEQ_ENUM_147 +# define BOOST_PP_SEQ_ENUM_149(x) x, BOOST_PP_SEQ_ENUM_148 +# define BOOST_PP_SEQ_ENUM_150(x) x, BOOST_PP_SEQ_ENUM_149 +# define BOOST_PP_SEQ_ENUM_151(x) x, BOOST_PP_SEQ_ENUM_150 +# define BOOST_PP_SEQ_ENUM_152(x) x, BOOST_PP_SEQ_ENUM_151 +# define BOOST_PP_SEQ_ENUM_153(x) x, BOOST_PP_SEQ_ENUM_152 +# define BOOST_PP_SEQ_ENUM_154(x) x, BOOST_PP_SEQ_ENUM_153 +# define BOOST_PP_SEQ_ENUM_155(x) x, BOOST_PP_SEQ_ENUM_154 +# define BOOST_PP_SEQ_ENUM_156(x) x, BOOST_PP_SEQ_ENUM_155 +# define BOOST_PP_SEQ_ENUM_157(x) x, BOOST_PP_SEQ_ENUM_156 +# define BOOST_PP_SEQ_ENUM_158(x) x, BOOST_PP_SEQ_ENUM_157 +# define BOOST_PP_SEQ_ENUM_159(x) x, BOOST_PP_SEQ_ENUM_158 +# define BOOST_PP_SEQ_ENUM_160(x) x, BOOST_PP_SEQ_ENUM_159 +# define BOOST_PP_SEQ_ENUM_161(x) x, BOOST_PP_SEQ_ENUM_160 +# define BOOST_PP_SEQ_ENUM_162(x) x, BOOST_PP_SEQ_ENUM_161 +# define BOOST_PP_SEQ_ENUM_163(x) x, BOOST_PP_SEQ_ENUM_162 +# define BOOST_PP_SEQ_ENUM_164(x) x, BOOST_PP_SEQ_ENUM_163 +# define BOOST_PP_SEQ_ENUM_165(x) x, BOOST_PP_SEQ_ENUM_164 +# define BOOST_PP_SEQ_ENUM_166(x) x, BOOST_PP_SEQ_ENUM_165 +# define BOOST_PP_SEQ_ENUM_167(x) x, BOOST_PP_SEQ_ENUM_166 +# define BOOST_PP_SEQ_ENUM_168(x) x, BOOST_PP_SEQ_ENUM_167 +# define BOOST_PP_SEQ_ENUM_169(x) x, BOOST_PP_SEQ_ENUM_168 +# define BOOST_PP_SEQ_ENUM_170(x) x, BOOST_PP_SEQ_ENUM_169 +# define BOOST_PP_SEQ_ENUM_171(x) x, BOOST_PP_SEQ_ENUM_170 +# define BOOST_PP_SEQ_ENUM_172(x) x, BOOST_PP_SEQ_ENUM_171 +# define BOOST_PP_SEQ_ENUM_173(x) x, BOOST_PP_SEQ_ENUM_172 +# define BOOST_PP_SEQ_ENUM_174(x) x, BOOST_PP_SEQ_ENUM_173 +# define BOOST_PP_SEQ_ENUM_175(x) x, BOOST_PP_SEQ_ENUM_174 +# define BOOST_PP_SEQ_ENUM_176(x) x, BOOST_PP_SEQ_ENUM_175 +# define BOOST_PP_SEQ_ENUM_177(x) x, BOOST_PP_SEQ_ENUM_176 +# define BOOST_PP_SEQ_ENUM_178(x) x, BOOST_PP_SEQ_ENUM_177 +# define BOOST_PP_SEQ_ENUM_179(x) x, BOOST_PP_SEQ_ENUM_178 +# define BOOST_PP_SEQ_ENUM_180(x) x, BOOST_PP_SEQ_ENUM_179 +# define BOOST_PP_SEQ_ENUM_181(x) x, BOOST_PP_SEQ_ENUM_180 +# define BOOST_PP_SEQ_ENUM_182(x) x, BOOST_PP_SEQ_ENUM_181 +# define BOOST_PP_SEQ_ENUM_183(x) x, BOOST_PP_SEQ_ENUM_182 +# define BOOST_PP_SEQ_ENUM_184(x) x, BOOST_PP_SEQ_ENUM_183 +# define BOOST_PP_SEQ_ENUM_185(x) x, BOOST_PP_SEQ_ENUM_184 +# define BOOST_PP_SEQ_ENUM_186(x) x, BOOST_PP_SEQ_ENUM_185 +# define BOOST_PP_SEQ_ENUM_187(x) x, BOOST_PP_SEQ_ENUM_186 +# define BOOST_PP_SEQ_ENUM_188(x) x, BOOST_PP_SEQ_ENUM_187 +# define BOOST_PP_SEQ_ENUM_189(x) x, BOOST_PP_SEQ_ENUM_188 +# define BOOST_PP_SEQ_ENUM_190(x) x, BOOST_PP_SEQ_ENUM_189 +# define BOOST_PP_SEQ_ENUM_191(x) x, BOOST_PP_SEQ_ENUM_190 +# define BOOST_PP_SEQ_ENUM_192(x) x, BOOST_PP_SEQ_ENUM_191 +# define BOOST_PP_SEQ_ENUM_193(x) x, BOOST_PP_SEQ_ENUM_192 +# define BOOST_PP_SEQ_ENUM_194(x) x, BOOST_PP_SEQ_ENUM_193 +# define BOOST_PP_SEQ_ENUM_195(x) x, BOOST_PP_SEQ_ENUM_194 +# define BOOST_PP_SEQ_ENUM_196(x) x, BOOST_PP_SEQ_ENUM_195 +# define BOOST_PP_SEQ_ENUM_197(x) x, BOOST_PP_SEQ_ENUM_196 +# define BOOST_PP_SEQ_ENUM_198(x) x, BOOST_PP_SEQ_ENUM_197 +# define BOOST_PP_SEQ_ENUM_199(x) x, BOOST_PP_SEQ_ENUM_198 +# define BOOST_PP_SEQ_ENUM_200(x) x, BOOST_PP_SEQ_ENUM_199 +# define BOOST_PP_SEQ_ENUM_201(x) x, BOOST_PP_SEQ_ENUM_200 +# define BOOST_PP_SEQ_ENUM_202(x) x, BOOST_PP_SEQ_ENUM_201 +# define BOOST_PP_SEQ_ENUM_203(x) x, BOOST_PP_SEQ_ENUM_202 +# define BOOST_PP_SEQ_ENUM_204(x) x, BOOST_PP_SEQ_ENUM_203 +# define BOOST_PP_SEQ_ENUM_205(x) x, BOOST_PP_SEQ_ENUM_204 +# define BOOST_PP_SEQ_ENUM_206(x) x, BOOST_PP_SEQ_ENUM_205 +# define BOOST_PP_SEQ_ENUM_207(x) x, BOOST_PP_SEQ_ENUM_206 +# define BOOST_PP_SEQ_ENUM_208(x) x, BOOST_PP_SEQ_ENUM_207 +# define BOOST_PP_SEQ_ENUM_209(x) x, BOOST_PP_SEQ_ENUM_208 +# define BOOST_PP_SEQ_ENUM_210(x) x, BOOST_PP_SEQ_ENUM_209 +# define BOOST_PP_SEQ_ENUM_211(x) x, BOOST_PP_SEQ_ENUM_210 +# define BOOST_PP_SEQ_ENUM_212(x) x, BOOST_PP_SEQ_ENUM_211 +# define BOOST_PP_SEQ_ENUM_213(x) x, BOOST_PP_SEQ_ENUM_212 +# define BOOST_PP_SEQ_ENUM_214(x) x, BOOST_PP_SEQ_ENUM_213 +# define BOOST_PP_SEQ_ENUM_215(x) x, BOOST_PP_SEQ_ENUM_214 +# define BOOST_PP_SEQ_ENUM_216(x) x, BOOST_PP_SEQ_ENUM_215 +# define BOOST_PP_SEQ_ENUM_217(x) x, BOOST_PP_SEQ_ENUM_216 +# define BOOST_PP_SEQ_ENUM_218(x) x, BOOST_PP_SEQ_ENUM_217 +# define BOOST_PP_SEQ_ENUM_219(x) x, BOOST_PP_SEQ_ENUM_218 +# define BOOST_PP_SEQ_ENUM_220(x) x, BOOST_PP_SEQ_ENUM_219 +# define BOOST_PP_SEQ_ENUM_221(x) x, BOOST_PP_SEQ_ENUM_220 +# define BOOST_PP_SEQ_ENUM_222(x) x, BOOST_PP_SEQ_ENUM_221 +# define BOOST_PP_SEQ_ENUM_223(x) x, BOOST_PP_SEQ_ENUM_222 +# define BOOST_PP_SEQ_ENUM_224(x) x, BOOST_PP_SEQ_ENUM_223 +# define BOOST_PP_SEQ_ENUM_225(x) x, BOOST_PP_SEQ_ENUM_224 +# define BOOST_PP_SEQ_ENUM_226(x) x, BOOST_PP_SEQ_ENUM_225 +# define BOOST_PP_SEQ_ENUM_227(x) x, BOOST_PP_SEQ_ENUM_226 +# define BOOST_PP_SEQ_ENUM_228(x) x, BOOST_PP_SEQ_ENUM_227 +# define BOOST_PP_SEQ_ENUM_229(x) x, BOOST_PP_SEQ_ENUM_228 +# define BOOST_PP_SEQ_ENUM_230(x) x, BOOST_PP_SEQ_ENUM_229 +# define BOOST_PP_SEQ_ENUM_231(x) x, BOOST_PP_SEQ_ENUM_230 +# define BOOST_PP_SEQ_ENUM_232(x) x, BOOST_PP_SEQ_ENUM_231 +# define BOOST_PP_SEQ_ENUM_233(x) x, BOOST_PP_SEQ_ENUM_232 +# define BOOST_PP_SEQ_ENUM_234(x) x, BOOST_PP_SEQ_ENUM_233 +# define BOOST_PP_SEQ_ENUM_235(x) x, BOOST_PP_SEQ_ENUM_234 +# define BOOST_PP_SEQ_ENUM_236(x) x, BOOST_PP_SEQ_ENUM_235 +# define BOOST_PP_SEQ_ENUM_237(x) x, BOOST_PP_SEQ_ENUM_236 +# define BOOST_PP_SEQ_ENUM_238(x) x, BOOST_PP_SEQ_ENUM_237 +# define BOOST_PP_SEQ_ENUM_239(x) x, BOOST_PP_SEQ_ENUM_238 +# define BOOST_PP_SEQ_ENUM_240(x) x, BOOST_PP_SEQ_ENUM_239 +# define BOOST_PP_SEQ_ENUM_241(x) x, BOOST_PP_SEQ_ENUM_240 +# define BOOST_PP_SEQ_ENUM_242(x) x, BOOST_PP_SEQ_ENUM_241 +# define BOOST_PP_SEQ_ENUM_243(x) x, BOOST_PP_SEQ_ENUM_242 +# define BOOST_PP_SEQ_ENUM_244(x) x, BOOST_PP_SEQ_ENUM_243 +# define BOOST_PP_SEQ_ENUM_245(x) x, BOOST_PP_SEQ_ENUM_244 +# define BOOST_PP_SEQ_ENUM_246(x) x, BOOST_PP_SEQ_ENUM_245 +# define BOOST_PP_SEQ_ENUM_247(x) x, BOOST_PP_SEQ_ENUM_246 +# define BOOST_PP_SEQ_ENUM_248(x) x, BOOST_PP_SEQ_ENUM_247 +# define BOOST_PP_SEQ_ENUM_249(x) x, BOOST_PP_SEQ_ENUM_248 +# define BOOST_PP_SEQ_ENUM_250(x) x, BOOST_PP_SEQ_ENUM_249 +# define BOOST_PP_SEQ_ENUM_251(x) x, BOOST_PP_SEQ_ENUM_250 +# define BOOST_PP_SEQ_ENUM_252(x) x, BOOST_PP_SEQ_ENUM_251 +# define BOOST_PP_SEQ_ENUM_253(x) x, BOOST_PP_SEQ_ENUM_252 +# define BOOST_PP_SEQ_ENUM_254(x) x, BOOST_PP_SEQ_ENUM_253 +# define BOOST_PP_SEQ_ENUM_255(x) x, BOOST_PP_SEQ_ENUM_254 +# define BOOST_PP_SEQ_ENUM_256(x) x, BOOST_PP_SEQ_ENUM_255 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/filter.hpp b/plugin/wave/include/boost/preprocessor/seq/filter.hpp new file mode 100644 index 0000000..4596bfe --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/filter.hpp @@ -0,0 +1,54 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FILTER_HPP +# define BOOST_PREPROCESSOR_SEQ_FILTER_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FILTER */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FILTER(pred, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_FILTER_O, (pred, data, (nil)), seq))) +# else +# define BOOST_PP_SEQ_FILTER(pred, data, seq) BOOST_PP_SEQ_FILTER_I(pred, data, seq) +# define BOOST_PP_SEQ_FILTER_I(pred, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_FILTER_O, (pred, data, (nil)), seq))) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FILTER_O(s, st, elem) BOOST_PP_SEQ_FILTER_O_IM(s, BOOST_PP_TUPLE_REM_3 st, elem) +# define BOOST_PP_SEQ_FILTER_O_IM(s, im, elem) BOOST_PP_SEQ_FILTER_O_I(s, im, elem) +# else +# define BOOST_PP_SEQ_FILTER_O(s, st, elem) BOOST_PP_SEQ_FILTER_O_I(s, BOOST_PP_TUPLE_ELEM(3, 0, st), BOOST_PP_TUPLE_ELEM(3, 1, st), BOOST_PP_TUPLE_ELEM(3, 2, st), elem) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_SEQ_FILTER_O_I(s, pred, data, res, elem) (pred, data, res BOOST_PP_EXPR_IF(pred(s, data, elem), (elem))) +# else +# define BOOST_PP_SEQ_FILTER_O_I(s, pred, data, res, elem) (pred, data, res BOOST_PP_EXPR_IF(pred##(s, data, elem), (elem))) +# endif +# +# /* BOOST_PP_SEQ_FILTER_S */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FILTER_S(s, pred, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_FILTER_O, (pred, data, (nil)), seq))) +# else +# define BOOST_PP_SEQ_FILTER_S(s, pred, data, seq) BOOST_PP_SEQ_FILTER_S_I(s, pred, data, seq) +# define BOOST_PP_SEQ_FILTER_S_I(s, pred, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_FILTER_O, (pred, data, (nil)), seq))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/first_n.hpp b/plugin/wave/include/boost/preprocessor/seq/first_n.hpp new file mode 100644 index 0000000..c3c0716 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/first_n.hpp @@ -0,0 +1,30 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FIRST_N_HPP +# define BOOST_PREPROCESSOR_SEQ_FIRST_N_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FIRST_N */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FIRST_N(n, seq) BOOST_PP_IF(n, BOOST_PP_TUPLE_ELEM, BOOST_PP_TUPLE_EAT_3)(2, 0, BOOST_PP_SEQ_SPLIT(n, seq (nil))) +# else +# define BOOST_PP_SEQ_FIRST_N(n, seq) BOOST_PP_SEQ_FIRST_N_I(n, seq) +# define BOOST_PP_SEQ_FIRST_N_I(n, seq) BOOST_PP_IF(n, BOOST_PP_TUPLE_ELEM, BOOST_PP_TUPLE_EAT_3)(2, 0, BOOST_PP_SEQ_SPLIT(n, seq (nil))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/fold_left.hpp b/plugin/wave/include/boost/preprocessor/seq/fold_left.hpp new file mode 100644 index 0000000..ab051b6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/fold_left.hpp @@ -0,0 +1,1070 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FOLD_LEFT_HPP +# define BOOST_PREPROCESSOR_SEQ_FOLD_LEFT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FOLD_LEFT */ +# +# if 0 +# define BOOST_PP_SEQ_FOLD_LEFT(op, state, seq) ... +# endif +# +# define BOOST_PP_SEQ_FOLD_LEFT BOOST_PP_CAT(BOOST_PP_SEQ_FOLD_LEFT_, BOOST_PP_AUTO_REC(BOOST_PP_SEQ_FOLD_LEFT_P, 256)) +# define BOOST_PP_SEQ_FOLD_LEFT_P(n) BOOST_PP_CAT(BOOST_PP_SEQ_FOLD_LEFT_CHECK_, BOOST_PP_SEQ_FOLD_LEFT_I_ ## n(BOOST_PP_SEQ_FOLD_LEFT_O, BOOST_PP_NIL, (nil), 1)) +# define BOOST_PP_SEQ_FOLD_LEFT_O(s, st, _) st +# +# define BOOST_PP_SEQ_FOLD_LEFT_257(op, st, ss) BOOST_PP_ERROR(0x0005) +# define BOOST_PP_SEQ_FOLD_LEFT_I_257(op, st, ss, sz) BOOST_PP_ERROR(0x0005) +# +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_NIL 1 +# +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_1(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_2(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_3(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_4(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_5(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_6(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_7(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_8(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_9(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_10(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_11(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_12(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_13(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_14(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_15(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_16(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_17(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_18(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_19(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_20(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_21(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_22(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_23(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_24(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_25(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_26(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_27(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_28(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_29(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_30(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_31(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_32(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_33(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_34(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_35(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_36(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_37(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_38(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_39(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_40(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_41(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_42(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_43(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_44(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_45(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_46(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_47(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_48(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_49(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_50(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_51(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_52(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_53(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_54(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_55(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_56(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_57(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_58(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_59(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_60(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_61(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_62(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_63(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_64(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_65(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_66(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_67(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_68(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_69(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_70(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_71(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_72(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_73(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_74(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_75(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_76(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_77(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_78(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_79(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_80(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_81(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_82(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_83(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_84(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_85(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_86(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_87(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_88(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_89(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_90(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_91(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_92(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_93(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_94(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_95(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_96(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_97(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_98(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_99(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_100(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_101(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_102(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_103(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_104(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_105(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_106(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_107(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_108(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_109(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_110(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_111(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_112(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_113(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_114(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_115(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_116(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_117(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_118(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_119(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_120(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_121(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_122(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_123(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_124(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_125(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_126(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_127(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_128(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_129(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_130(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_131(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_132(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_133(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_134(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_135(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_136(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_137(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_138(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_139(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_140(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_141(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_142(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_143(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_144(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_145(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_146(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_147(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_148(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_149(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_150(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_151(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_152(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_153(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_154(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_155(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_156(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_157(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_158(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_159(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_160(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_161(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_162(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_163(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_164(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_165(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_166(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_167(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_168(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_169(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_170(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_171(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_172(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_173(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_174(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_175(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_176(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_177(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_178(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_179(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_180(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_181(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_182(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_183(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_184(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_185(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_186(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_187(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_188(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_189(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_190(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_191(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_192(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_193(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_194(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_195(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_196(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_197(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_198(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_199(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_200(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_201(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_202(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_203(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_204(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_205(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_206(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_207(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_208(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_209(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_210(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_211(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_212(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_213(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_214(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_215(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_216(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_217(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_218(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_219(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_220(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_221(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_222(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_223(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_224(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_225(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_226(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_227(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_228(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_229(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_230(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_231(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_232(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_233(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_234(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_235(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_236(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_237(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_238(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_239(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_240(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_241(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_242(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_243(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_244(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_245(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_246(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_247(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_248(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_249(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_250(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_251(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_252(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_253(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_254(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_255(op, st, ss, sz) 0 +# define BOOST_PP_SEQ_FOLD_LEFT_CHECK_BOOST_PP_SEQ_FOLD_LEFT_I_256(op, st, ss, sz) 0 +# +# define BOOST_PP_SEQ_FOLD_LEFT_F(op, st, ss, sz) st +# +# define BOOST_PP_SEQ_FOLD_LEFT_1(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_1(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_2(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_2(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_3(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_3(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_4(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_4(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_5(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_5(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_6(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_6(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_7(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_7(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_8(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_8(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_9(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_9(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_10(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_10(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_11(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_11(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_12(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_12(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_13(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_13(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_14(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_14(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_15(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_15(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_16(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_16(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_17(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_17(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_18(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_18(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_19(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_19(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_20(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_20(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_21(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_21(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_22(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_22(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_23(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_23(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_24(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_24(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_25(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_25(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_26(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_26(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_27(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_27(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_28(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_28(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_29(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_29(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_30(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_30(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_31(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_31(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_32(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_32(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_33(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_33(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_34(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_34(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_35(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_35(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_36(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_36(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_37(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_37(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_38(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_38(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_39(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_39(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_40(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_40(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_41(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_41(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_42(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_42(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_43(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_43(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_44(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_44(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_45(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_45(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_46(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_46(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_47(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_47(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_48(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_48(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_49(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_49(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_50(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_50(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_51(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_51(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_52(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_52(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_53(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_53(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_54(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_54(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_55(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_55(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_56(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_56(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_57(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_57(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_58(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_58(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_59(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_59(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_60(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_60(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_61(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_61(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_62(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_62(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_63(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_63(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_64(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_64(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_65(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_65(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_66(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_66(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_67(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_67(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_68(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_68(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_69(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_69(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_70(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_70(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_71(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_71(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_72(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_72(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_73(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_73(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_74(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_74(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_75(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_75(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_76(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_76(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_77(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_77(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_78(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_78(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_79(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_79(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_80(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_80(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_81(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_81(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_82(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_82(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_83(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_83(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_84(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_84(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_85(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_85(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_86(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_86(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_87(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_87(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_88(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_88(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_89(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_89(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_90(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_90(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_91(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_91(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_92(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_92(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_93(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_93(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_94(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_94(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_95(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_95(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_96(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_96(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_97(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_97(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_98(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_98(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_99(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_99(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_100(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_100(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_101(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_101(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_102(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_102(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_103(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_103(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_104(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_104(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_105(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_105(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_106(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_106(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_107(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_107(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_108(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_108(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_109(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_109(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_110(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_110(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_111(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_111(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_112(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_112(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_113(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_113(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_114(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_114(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_115(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_115(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_116(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_116(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_117(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_117(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_118(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_118(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_119(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_119(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_120(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_120(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_121(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_121(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_122(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_122(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_123(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_123(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_124(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_124(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_125(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_125(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_126(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_126(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_127(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_127(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_128(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_128(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_129(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_129(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_130(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_130(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_131(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_131(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_132(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_132(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_133(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_133(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_134(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_134(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_135(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_135(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_136(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_136(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_137(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_137(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_138(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_138(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_139(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_139(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_140(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_140(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_141(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_141(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_142(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_142(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_143(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_143(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_144(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_144(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_145(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_145(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_146(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_146(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_147(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_147(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_148(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_148(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_149(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_149(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_150(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_150(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_151(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_151(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_152(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_152(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_153(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_153(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_154(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_154(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_155(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_155(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_156(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_156(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_157(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_157(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_158(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_158(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_159(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_159(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_160(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_160(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_161(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_161(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_162(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_162(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_163(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_163(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_164(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_164(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_165(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_165(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_166(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_166(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_167(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_167(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_168(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_168(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_169(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_169(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_170(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_170(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_171(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_171(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_172(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_172(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_173(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_173(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_174(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_174(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_175(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_175(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_176(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_176(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_177(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_177(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_178(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_178(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_179(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_179(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_180(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_180(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_181(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_181(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_182(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_182(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_183(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_183(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_184(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_184(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_185(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_185(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_186(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_186(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_187(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_187(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_188(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_188(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_189(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_189(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_190(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_190(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_191(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_191(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_192(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_192(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_193(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_193(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_194(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_194(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_195(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_195(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_196(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_196(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_197(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_197(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_198(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_198(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_199(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_199(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_200(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_200(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_201(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_201(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_202(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_202(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_203(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_203(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_204(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_204(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_205(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_205(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_206(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_206(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_207(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_207(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_208(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_208(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_209(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_209(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_210(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_210(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_211(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_211(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_212(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_212(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_213(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_213(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_214(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_214(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_215(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_215(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_216(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_216(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_217(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_217(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_218(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_218(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_219(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_219(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_220(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_220(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_221(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_221(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_222(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_222(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_223(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_223(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_224(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_224(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_225(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_225(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_226(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_226(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_227(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_227(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_228(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_228(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_229(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_229(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_230(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_230(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_231(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_231(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_232(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_232(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_233(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_233(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_234(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_234(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_235(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_235(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_236(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_236(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_237(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_237(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_238(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_238(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_239(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_239(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_240(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_240(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_241(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_241(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_242(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_242(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_243(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_243(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_244(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_244(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_245(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_245(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_246(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_246(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_247(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_247(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_248(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_248(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_249(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_249(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_250(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_250(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_251(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_251(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_252(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_252(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_253(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_253(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_254(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_254(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_255(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_255(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_LEFT_256(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_256(op, st, ss, BOOST_PP_SEQ_SIZE(ss)) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_DMC() +# define BOOST_PP_SEQ_FOLD_LEFT_I_1(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_2, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(2, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_2(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_3, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(3, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_3(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_4, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(4, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_4(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_5, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(5, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_5(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_6, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(6, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_6(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_7, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(7, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_7(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_8, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(8, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_8(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_9, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(9, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_9(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_10, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(10, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_10(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_11, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(11, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_11(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_12, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(12, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_12(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_13, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(13, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_13(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_14, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(14, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_14(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_15, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(15, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_15(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_16, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(16, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_16(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_17, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(17, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_17(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_18, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(18, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_18(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_19, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(19, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_19(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_20, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(20, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_20(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_21, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(21, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_21(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_22, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(22, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_22(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_23, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(23, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_23(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_24, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(24, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_24(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_25, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(25, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_25(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_26, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(26, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_26(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_27, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(27, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_27(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_28, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(28, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_28(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_29, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(29, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_29(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_30, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(30, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_30(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_31, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(31, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_31(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_32, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(32, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_32(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_33, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(33, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_33(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_34, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(34, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_34(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_35, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(35, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_35(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_36, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(36, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_36(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_37, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(37, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_37(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_38, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(38, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_38(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_39, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(39, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_39(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_40, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(40, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_40(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_41, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(41, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_41(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_42, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(42, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_42(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_43, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(43, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_43(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_44, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(44, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_44(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_45, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(45, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_45(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_46, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(46, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_46(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_47, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(47, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_47(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_48, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(48, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_48(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_49, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(49, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_49(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_50, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(50, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_50(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_51, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(51, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_51(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_52, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(52, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_52(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_53, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(53, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_53(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_54, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(54, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_54(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_55, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(55, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_55(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_56, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(56, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_56(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_57, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(57, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_57(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_58, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(58, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_58(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_59, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(59, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_59(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_60, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(60, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_60(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_61, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(61, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_61(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_62, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(62, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_62(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_63, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(63, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_63(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_64, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(64, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_64(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_65, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(65, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_65(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_66, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(66, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_66(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_67, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(67, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_67(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_68, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(68, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_68(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_69, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(69, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_69(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_70, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(70, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_70(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_71, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(71, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_71(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_72, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(72, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_72(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_73, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(73, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_73(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_74, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(74, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_74(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_75, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(75, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_75(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_76, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(76, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_76(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_77, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(77, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_77(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_78, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(78, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_78(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_79, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(79, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_79(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_80, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(80, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_80(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_81, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(81, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_81(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_82, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(82, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_82(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_83, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(83, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_83(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_84, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(84, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_84(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_85, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(85, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_85(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_86, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(86, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_86(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_87, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(87, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_87(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_88, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(88, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_88(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_89, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(89, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_89(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_90, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(90, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_90(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_91, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(91, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_91(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_92, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(92, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_92(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_93, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(93, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_93(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_94, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(94, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_94(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_95, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(95, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_95(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_96, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(96, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_96(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_97, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(97, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_97(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_98, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(98, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_98(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_99, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(99, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_99(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_100, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(100, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_100(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_101, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(101, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_101(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_102, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(102, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_102(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_103, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(103, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_103(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_104, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(104, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_104(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_105, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(105, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_105(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_106, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(106, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_106(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_107, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(107, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_107(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_108, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(108, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_108(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_109, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(109, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_109(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_110, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(110, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_110(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_111, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(111, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_111(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_112, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(112, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_112(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_113, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(113, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_113(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_114, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(114, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_114(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_115, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(115, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_115(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_116, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(116, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_116(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_117, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(117, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_117(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_118, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(118, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_118(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_119, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(119, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_119(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_120, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(120, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_120(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_121, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(121, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_121(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_122, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(122, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_122(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_123, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(123, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_123(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_124, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(124, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_124(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_125, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(125, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_125(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_126, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(126, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_126(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_127, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(127, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_127(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_128, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(128, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_128(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_129, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(129, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_129(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_130, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(130, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_130(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_131, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(131, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_131(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_132, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(132, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_132(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_133, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(133, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_133(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_134, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(134, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_134(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_135, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(135, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_135(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_136, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(136, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_136(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_137, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(137, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_137(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_138, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(138, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_138(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_139, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(139, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_139(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_140, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(140, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_140(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_141, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(141, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_141(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_142, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(142, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_142(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_143, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(143, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_143(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_144, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(144, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_144(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_145, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(145, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_145(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_146, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(146, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_146(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_147, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(147, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_147(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_148, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(148, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_148(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_149, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(149, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_149(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_150, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(150, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_150(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_151, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(151, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_151(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_152, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(152, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_152(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_153, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(153, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_153(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_154, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(154, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_154(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_155, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(155, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_155(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_156, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(156, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_156(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_157, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(157, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_157(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_158, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(158, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_158(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_159, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(159, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_159(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_160, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(160, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_160(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_161, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(161, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_161(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_162, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(162, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_162(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_163, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(163, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_163(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_164, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(164, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_164(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_165, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(165, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_165(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_166, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(166, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_166(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_167, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(167, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_167(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_168, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(168, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_168(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_169, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(169, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_169(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_170, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(170, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_170(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_171, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(171, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_171(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_172, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(172, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_172(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_173, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(173, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_173(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_174, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(174, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_174(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_175, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(175, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_175(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_176, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(176, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_176(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_177, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(177, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_177(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_178, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(178, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_178(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_179, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(179, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_179(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_180, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(180, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_180(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_181, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(181, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_181(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_182, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(182, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_182(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_183, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(183, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_183(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_184, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(184, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_184(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_185, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(185, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_185(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_186, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(186, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_186(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_187, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(187, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_187(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_188, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(188, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_188(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_189, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(189, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_189(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_190, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(190, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_190(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_191, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(191, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_191(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_192, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(192, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_192(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_193, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(193, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_193(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_194, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(194, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_194(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_195, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(195, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_195(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_196, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(196, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_196(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_197, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(197, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_197(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_198, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(198, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_198(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_199, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(199, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_199(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_200, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(200, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_200(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_201, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(201, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_201(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_202, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(202, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_202(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_203, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(203, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_203(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_204, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(204, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_204(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_205, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(205, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_205(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_206, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(206, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_206(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_207, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(207, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_207(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_208, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(208, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_208(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_209, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(209, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_209(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_210, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(210, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_210(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_211, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(211, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_211(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_212, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(212, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_212(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_213, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(213, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_213(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_214, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(214, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_214(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_215, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(215, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_215(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_216, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(216, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_216(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_217, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(217, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_217(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_218, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(218, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_218(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_219, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(219, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_219(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_220, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(220, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_220(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_221, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(221, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_221(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_222, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(222, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_222(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_223, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(223, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_223(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_224, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(224, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_224(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_225, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(225, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_225(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_226, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(226, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_226(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_227, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(227, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_227(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_228, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(228, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_228(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_229, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(229, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_229(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_230, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(230, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_230(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_231, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(231, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_231(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_232, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(232, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_232(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_233, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(233, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_233(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_234, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(234, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_234(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_235, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(235, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_235(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_236, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(236, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_236(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_237, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(237, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_237(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_238, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(238, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_238(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_239, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(239, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_239(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_240, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(240, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_240(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_241, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(241, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_241(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_242, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(242, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_242(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_243, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(243, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_243(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_244, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(244, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_244(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_245, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(245, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_245(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_246, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(246, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_246(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_247, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(247, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_247(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_248, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(248, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_248(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_249, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(249, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_249(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_250, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(250, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_250(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_251, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(251, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_251(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_252, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(252, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_252(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_253, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(253, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_253(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_254, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(254, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_254(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_255, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(255, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_255(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_256, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(256, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_256(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_257, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op(257, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# else +# define BOOST_PP_SEQ_FOLD_LEFT_I_1(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_2, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(2, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_2(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_3, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(3, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_3(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_4, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(4, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_4(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_5, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(5, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_5(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_6, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(6, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_6(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_7, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(7, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_7(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_8, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(8, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_8(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_9, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(9, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_9(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_10, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(10, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_10(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_11, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(11, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_11(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_12, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(12, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_12(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_13, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(13, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_13(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_14, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(14, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_14(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_15, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(15, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_15(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_16, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(16, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_16(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_17, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(17, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_17(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_18, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(18, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_18(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_19, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(19, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_19(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_20, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(20, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_20(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_21, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(21, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_21(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_22, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(22, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_22(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_23, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(23, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_23(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_24, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(24, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_24(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_25, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(25, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_25(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_26, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(26, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_26(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_27, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(27, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_27(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_28, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(28, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_28(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_29, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(29, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_29(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_30, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(30, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_30(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_31, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(31, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_31(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_32, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(32, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_32(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_33, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(33, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_33(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_34, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(34, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_34(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_35, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(35, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_35(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_36, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(36, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_36(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_37, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(37, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_37(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_38, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(38, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_38(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_39, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(39, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_39(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_40, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(40, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_40(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_41, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(41, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_41(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_42, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(42, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_42(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_43, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(43, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_43(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_44, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(44, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_44(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_45, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(45, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_45(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_46, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(46, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_46(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_47, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(47, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_47(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_48, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(48, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_48(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_49, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(49, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_49(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_50, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(50, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_50(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_51, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(51, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_51(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_52, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(52, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_52(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_53, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(53, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_53(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_54, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(54, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_54(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_55, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(55, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_55(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_56, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(56, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_56(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_57, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(57, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_57(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_58, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(58, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_58(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_59, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(59, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_59(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_60, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(60, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_60(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_61, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(61, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_61(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_62, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(62, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_62(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_63, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(63, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_63(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_64, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(64, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_64(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_65, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(65, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_65(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_66, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(66, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_66(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_67, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(67, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_67(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_68, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(68, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_68(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_69, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(69, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_69(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_70, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(70, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_70(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_71, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(71, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_71(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_72, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(72, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_72(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_73, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(73, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_73(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_74, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(74, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_74(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_75, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(75, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_75(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_76, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(76, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_76(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_77, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(77, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_77(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_78, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(78, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_78(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_79, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(79, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_79(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_80, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(80, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_80(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_81, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(81, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_81(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_82, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(82, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_82(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_83, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(83, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_83(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_84, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(84, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_84(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_85, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(85, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_85(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_86, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(86, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_86(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_87, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(87, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_87(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_88, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(88, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_88(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_89, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(89, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_89(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_90, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(90, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_90(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_91, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(91, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_91(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_92, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(92, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_92(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_93, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(93, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_93(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_94, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(94, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_94(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_95, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(95, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_95(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_96, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(96, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_96(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_97, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(97, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_97(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_98, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(98, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_98(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_99, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(99, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_99(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_100, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(100, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_100(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_101, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(101, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_101(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_102, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(102, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_102(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_103, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(103, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_103(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_104, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(104, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_104(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_105, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(105, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_105(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_106, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(106, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_106(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_107, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(107, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_107(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_108, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(108, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_108(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_109, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(109, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_109(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_110, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(110, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_110(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_111, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(111, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_111(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_112, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(112, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_112(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_113, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(113, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_113(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_114, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(114, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_114(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_115, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(115, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_115(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_116, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(116, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_116(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_117, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(117, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_117(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_118, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(118, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_118(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_119, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(119, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_119(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_120, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(120, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_120(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_121, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(121, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_121(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_122, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(122, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_122(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_123, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(123, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_123(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_124, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(124, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_124(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_125, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(125, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_125(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_126, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(126, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_126(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_127, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(127, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_127(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_128, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(128, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_128(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_129, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(129, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_129(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_130, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(130, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_130(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_131, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(131, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_131(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_132, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(132, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_132(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_133, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(133, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_133(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_134, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(134, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_134(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_135, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(135, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_135(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_136, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(136, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_136(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_137, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(137, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_137(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_138, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(138, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_138(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_139, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(139, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_139(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_140, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(140, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_140(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_141, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(141, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_141(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_142, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(142, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_142(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_143, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(143, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_143(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_144, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(144, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_144(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_145, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(145, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_145(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_146, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(146, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_146(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_147, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(147, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_147(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_148, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(148, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_148(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_149, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(149, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_149(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_150, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(150, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_150(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_151, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(151, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_151(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_152, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(152, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_152(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_153, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(153, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_153(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_154, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(154, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_154(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_155, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(155, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_155(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_156, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(156, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_156(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_157, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(157, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_157(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_158, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(158, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_158(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_159, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(159, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_159(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_160, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(160, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_160(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_161, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(161, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_161(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_162, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(162, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_162(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_163, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(163, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_163(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_164, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(164, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_164(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_165, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(165, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_165(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_166, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(166, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_166(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_167, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(167, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_167(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_168, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(168, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_168(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_169, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(169, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_169(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_170, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(170, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_170(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_171, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(171, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_171(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_172, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(172, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_172(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_173, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(173, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_173(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_174, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(174, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_174(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_175, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(175, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_175(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_176, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(176, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_176(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_177, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(177, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_177(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_178, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(178, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_178(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_179, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(179, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_179(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_180, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(180, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_180(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_181, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(181, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_181(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_182, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(182, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_182(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_183, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(183, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_183(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_184, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(184, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_184(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_185, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(185, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_185(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_186, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(186, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_186(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_187, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(187, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_187(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_188, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(188, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_188(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_189, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(189, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_189(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_190, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(190, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_190(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_191, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(191, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_191(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_192, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(192, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_192(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_193, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(193, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_193(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_194, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(194, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_194(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_195, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(195, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_195(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_196, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(196, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_196(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_197, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(197, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_197(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_198, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(198, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_198(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_199, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(199, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_199(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_200, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(200, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_200(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_201, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(201, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_201(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_202, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(202, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_202(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_203, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(203, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_203(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_204, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(204, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_204(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_205, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(205, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_205(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_206, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(206, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_206(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_207, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(207, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_207(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_208, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(208, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_208(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_209, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(209, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_209(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_210, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(210, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_210(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_211, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(211, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_211(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_212, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(212, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_212(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_213, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(213, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_213(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_214, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(214, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_214(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_215, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(215, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_215(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_216, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(216, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_216(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_217, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(217, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_217(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_218, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(218, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_218(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_219, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(219, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_219(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_220, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(220, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_220(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_221, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(221, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_221(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_222, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(222, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_222(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_223, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(223, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_223(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_224, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(224, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_224(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_225, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(225, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_225(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_226, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(226, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_226(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_227, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(227, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_227(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_228, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(228, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_228(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_229, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(229, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_229(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_230, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(230, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_230(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_231, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(231, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_231(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_232, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(232, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_232(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_233, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(233, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_233(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_234, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(234, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_234(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_235, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(235, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_235(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_236, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(236, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_236(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_237, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(237, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_237(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_238, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(238, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_238(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_239, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(239, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_239(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_240, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(240, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_240(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_241, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(241, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_241(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_242, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(242, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_242(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_243, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(243, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_243(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_244, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(244, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_244(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_245, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(245, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_245(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_246, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(246, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_246(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_247, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(247, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_247(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_248, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(248, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_248(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_249, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(249, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_249(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_250, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(250, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_250(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_251, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(251, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_251(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_252, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(252, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_252(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_253, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(253, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_253(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_254, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(254, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_254(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_255, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(255, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_255(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_256, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(256, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# define BOOST_PP_SEQ_FOLD_LEFT_I_256(op, st, ss, sz) BOOST_PP_IF(BOOST_PP_DEC(sz), BOOST_PP_SEQ_FOLD_LEFT_I_257, BOOST_PP_SEQ_FOLD_LEFT_F)(op, op##(257, st, BOOST_PP_SEQ_HEAD(ss)), BOOST_PP_SEQ_TAIL(ss), BOOST_PP_DEC(sz)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/fold_right.hpp b/plugin/wave/include/boost/preprocessor/seq/fold_right.hpp new file mode 100644 index 0000000..c2c365b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/fold_right.hpp @@ -0,0 +1,288 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FOLD_RIGHT_HPP +# define BOOST_PREPROCESSOR_SEQ_FOLD_RIGHT_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FOLD_RIGHT */ +# +# if 0 +# define BOOST_PP_SEQ_FOLD_RIGHT(op, state, seq) ... +# endif +# +# define BOOST_PP_SEQ_FOLD_RIGHT BOOST_PP_CAT(BOOST_PP_SEQ_FOLD_RIGHT_, BOOST_PP_AUTO_REC(BOOST_PP_SEQ_FOLD_LEFT_P, 256)) +# +# define BOOST_PP_SEQ_FOLD_RIGHT_257(op, st, ss) BOOST_PP_ERROR(0x0005) +# +# define BOOST_PP_SEQ_FOLD_RIGHT_1(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_1(op, st, BOOST_PP_SEQ_REVERSE_S(2, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_2(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_2(op, st, BOOST_PP_SEQ_REVERSE_S(3, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_3(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_3(op, st, BOOST_PP_SEQ_REVERSE_S(4, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_4(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_4(op, st, BOOST_PP_SEQ_REVERSE_S(5, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_5(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_5(op, st, BOOST_PP_SEQ_REVERSE_S(6, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_6(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_6(op, st, BOOST_PP_SEQ_REVERSE_S(7, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_7(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_7(op, st, BOOST_PP_SEQ_REVERSE_S(8, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_8(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_8(op, st, BOOST_PP_SEQ_REVERSE_S(9, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_9(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_9(op, st, BOOST_PP_SEQ_REVERSE_S(10, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_10(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_10(op, st, BOOST_PP_SEQ_REVERSE_S(11, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_11(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_11(op, st, BOOST_PP_SEQ_REVERSE_S(12, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_12(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_12(op, st, BOOST_PP_SEQ_REVERSE_S(13, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_13(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_13(op, st, BOOST_PP_SEQ_REVERSE_S(14, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_14(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_14(op, st, BOOST_PP_SEQ_REVERSE_S(15, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_15(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_15(op, st, BOOST_PP_SEQ_REVERSE_S(16, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_16(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_16(op, st, BOOST_PP_SEQ_REVERSE_S(17, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_17(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_17(op, st, BOOST_PP_SEQ_REVERSE_S(18, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_18(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_18(op, st, BOOST_PP_SEQ_REVERSE_S(19, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_19(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_19(op, st, BOOST_PP_SEQ_REVERSE_S(20, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_20(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_20(op, st, BOOST_PP_SEQ_REVERSE_S(21, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_21(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_21(op, st, BOOST_PP_SEQ_REVERSE_S(22, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_22(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_22(op, st, BOOST_PP_SEQ_REVERSE_S(23, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_23(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_23(op, st, BOOST_PP_SEQ_REVERSE_S(24, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_24(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_24(op, st, BOOST_PP_SEQ_REVERSE_S(25, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_25(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_25(op, st, BOOST_PP_SEQ_REVERSE_S(26, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_26(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_26(op, st, BOOST_PP_SEQ_REVERSE_S(27, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_27(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_27(op, st, BOOST_PP_SEQ_REVERSE_S(28, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_28(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_28(op, st, BOOST_PP_SEQ_REVERSE_S(29, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_29(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_29(op, st, BOOST_PP_SEQ_REVERSE_S(30, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_30(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_30(op, st, BOOST_PP_SEQ_REVERSE_S(31, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_31(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_31(op, st, BOOST_PP_SEQ_REVERSE_S(32, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_32(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_32(op, st, BOOST_PP_SEQ_REVERSE_S(33, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_33(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_33(op, st, BOOST_PP_SEQ_REVERSE_S(34, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_34(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_34(op, st, BOOST_PP_SEQ_REVERSE_S(35, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_35(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_35(op, st, BOOST_PP_SEQ_REVERSE_S(36, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_36(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_36(op, st, BOOST_PP_SEQ_REVERSE_S(37, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_37(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_37(op, st, BOOST_PP_SEQ_REVERSE_S(38, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_38(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_38(op, st, BOOST_PP_SEQ_REVERSE_S(39, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_39(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_39(op, st, BOOST_PP_SEQ_REVERSE_S(40, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_40(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_40(op, st, BOOST_PP_SEQ_REVERSE_S(41, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_41(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_41(op, st, BOOST_PP_SEQ_REVERSE_S(42, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_42(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_42(op, st, BOOST_PP_SEQ_REVERSE_S(43, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_43(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_43(op, st, BOOST_PP_SEQ_REVERSE_S(44, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_44(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_44(op, st, BOOST_PP_SEQ_REVERSE_S(45, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_45(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_45(op, st, BOOST_PP_SEQ_REVERSE_S(46, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_46(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_46(op, st, BOOST_PP_SEQ_REVERSE_S(47, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_47(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_47(op, st, BOOST_PP_SEQ_REVERSE_S(48, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_48(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_48(op, st, BOOST_PP_SEQ_REVERSE_S(49, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_49(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_49(op, st, BOOST_PP_SEQ_REVERSE_S(50, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_50(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_50(op, st, BOOST_PP_SEQ_REVERSE_S(51, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_51(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_51(op, st, BOOST_PP_SEQ_REVERSE_S(52, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_52(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_52(op, st, BOOST_PP_SEQ_REVERSE_S(53, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_53(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_53(op, st, BOOST_PP_SEQ_REVERSE_S(54, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_54(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_54(op, st, BOOST_PP_SEQ_REVERSE_S(55, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_55(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_55(op, st, BOOST_PP_SEQ_REVERSE_S(56, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_56(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_56(op, st, BOOST_PP_SEQ_REVERSE_S(57, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_57(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_57(op, st, BOOST_PP_SEQ_REVERSE_S(58, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_58(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_58(op, st, BOOST_PP_SEQ_REVERSE_S(59, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_59(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_59(op, st, BOOST_PP_SEQ_REVERSE_S(60, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_60(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_60(op, st, BOOST_PP_SEQ_REVERSE_S(61, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_61(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_61(op, st, BOOST_PP_SEQ_REVERSE_S(62, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_62(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_62(op, st, BOOST_PP_SEQ_REVERSE_S(63, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_63(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_63(op, st, BOOST_PP_SEQ_REVERSE_S(64, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_64(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_64(op, st, BOOST_PP_SEQ_REVERSE_S(65, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_65(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_65(op, st, BOOST_PP_SEQ_REVERSE_S(66, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_66(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_66(op, st, BOOST_PP_SEQ_REVERSE_S(67, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_67(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_67(op, st, BOOST_PP_SEQ_REVERSE_S(68, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_68(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_68(op, st, BOOST_PP_SEQ_REVERSE_S(69, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_69(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_69(op, st, BOOST_PP_SEQ_REVERSE_S(70, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_70(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_70(op, st, BOOST_PP_SEQ_REVERSE_S(71, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_71(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_71(op, st, BOOST_PP_SEQ_REVERSE_S(72, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_72(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_72(op, st, BOOST_PP_SEQ_REVERSE_S(73, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_73(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_73(op, st, BOOST_PP_SEQ_REVERSE_S(74, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_74(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_74(op, st, BOOST_PP_SEQ_REVERSE_S(75, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_75(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_75(op, st, BOOST_PP_SEQ_REVERSE_S(76, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_76(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_76(op, st, BOOST_PP_SEQ_REVERSE_S(77, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_77(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_77(op, st, BOOST_PP_SEQ_REVERSE_S(78, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_78(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_78(op, st, BOOST_PP_SEQ_REVERSE_S(79, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_79(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_79(op, st, BOOST_PP_SEQ_REVERSE_S(80, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_80(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_80(op, st, BOOST_PP_SEQ_REVERSE_S(81, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_81(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_81(op, st, BOOST_PP_SEQ_REVERSE_S(82, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_82(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_82(op, st, BOOST_PP_SEQ_REVERSE_S(83, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_83(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_83(op, st, BOOST_PP_SEQ_REVERSE_S(84, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_84(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_84(op, st, BOOST_PP_SEQ_REVERSE_S(85, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_85(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_85(op, st, BOOST_PP_SEQ_REVERSE_S(86, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_86(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_86(op, st, BOOST_PP_SEQ_REVERSE_S(87, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_87(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_87(op, st, BOOST_PP_SEQ_REVERSE_S(88, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_88(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_88(op, st, BOOST_PP_SEQ_REVERSE_S(89, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_89(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_89(op, st, BOOST_PP_SEQ_REVERSE_S(90, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_90(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_90(op, st, BOOST_PP_SEQ_REVERSE_S(91, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_91(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_91(op, st, BOOST_PP_SEQ_REVERSE_S(92, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_92(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_92(op, st, BOOST_PP_SEQ_REVERSE_S(93, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_93(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_93(op, st, BOOST_PP_SEQ_REVERSE_S(94, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_94(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_94(op, st, BOOST_PP_SEQ_REVERSE_S(95, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_95(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_95(op, st, BOOST_PP_SEQ_REVERSE_S(96, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_96(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_96(op, st, BOOST_PP_SEQ_REVERSE_S(97, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_97(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_97(op, st, BOOST_PP_SEQ_REVERSE_S(98, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_98(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_98(op, st, BOOST_PP_SEQ_REVERSE_S(99, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_99(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_99(op, st, BOOST_PP_SEQ_REVERSE_S(100, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_100(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_100(op, st, BOOST_PP_SEQ_REVERSE_S(101, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_101(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_101(op, st, BOOST_PP_SEQ_REVERSE_S(102, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_102(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_102(op, st, BOOST_PP_SEQ_REVERSE_S(103, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_103(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_103(op, st, BOOST_PP_SEQ_REVERSE_S(104, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_104(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_104(op, st, BOOST_PP_SEQ_REVERSE_S(105, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_105(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_105(op, st, BOOST_PP_SEQ_REVERSE_S(106, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_106(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_106(op, st, BOOST_PP_SEQ_REVERSE_S(107, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_107(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_107(op, st, BOOST_PP_SEQ_REVERSE_S(108, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_108(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_108(op, st, BOOST_PP_SEQ_REVERSE_S(109, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_109(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_109(op, st, BOOST_PP_SEQ_REVERSE_S(110, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_110(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_110(op, st, BOOST_PP_SEQ_REVERSE_S(111, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_111(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_111(op, st, BOOST_PP_SEQ_REVERSE_S(112, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_112(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_112(op, st, BOOST_PP_SEQ_REVERSE_S(113, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_113(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_113(op, st, BOOST_PP_SEQ_REVERSE_S(114, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_114(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_114(op, st, BOOST_PP_SEQ_REVERSE_S(115, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_115(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_115(op, st, BOOST_PP_SEQ_REVERSE_S(116, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_116(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_116(op, st, BOOST_PP_SEQ_REVERSE_S(117, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_117(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_117(op, st, BOOST_PP_SEQ_REVERSE_S(118, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_118(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_118(op, st, BOOST_PP_SEQ_REVERSE_S(119, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_119(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_119(op, st, BOOST_PP_SEQ_REVERSE_S(120, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_120(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_120(op, st, BOOST_PP_SEQ_REVERSE_S(121, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_121(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_121(op, st, BOOST_PP_SEQ_REVERSE_S(122, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_122(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_122(op, st, BOOST_PP_SEQ_REVERSE_S(123, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_123(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_123(op, st, BOOST_PP_SEQ_REVERSE_S(124, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_124(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_124(op, st, BOOST_PP_SEQ_REVERSE_S(125, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_125(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_125(op, st, BOOST_PP_SEQ_REVERSE_S(126, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_126(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_126(op, st, BOOST_PP_SEQ_REVERSE_S(127, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_127(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_127(op, st, BOOST_PP_SEQ_REVERSE_S(128, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_128(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_128(op, st, BOOST_PP_SEQ_REVERSE_S(129, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_129(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_129(op, st, BOOST_PP_SEQ_REVERSE_S(130, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_130(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_130(op, st, BOOST_PP_SEQ_REVERSE_S(131, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_131(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_131(op, st, BOOST_PP_SEQ_REVERSE_S(132, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_132(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_132(op, st, BOOST_PP_SEQ_REVERSE_S(133, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_133(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_133(op, st, BOOST_PP_SEQ_REVERSE_S(134, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_134(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_134(op, st, BOOST_PP_SEQ_REVERSE_S(135, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_135(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_135(op, st, BOOST_PP_SEQ_REVERSE_S(136, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_136(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_136(op, st, BOOST_PP_SEQ_REVERSE_S(137, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_137(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_137(op, st, BOOST_PP_SEQ_REVERSE_S(138, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_138(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_138(op, st, BOOST_PP_SEQ_REVERSE_S(139, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_139(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_139(op, st, BOOST_PP_SEQ_REVERSE_S(140, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_140(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_140(op, st, BOOST_PP_SEQ_REVERSE_S(141, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_141(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_141(op, st, BOOST_PP_SEQ_REVERSE_S(142, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_142(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_142(op, st, BOOST_PP_SEQ_REVERSE_S(143, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_143(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_143(op, st, BOOST_PP_SEQ_REVERSE_S(144, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_144(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_144(op, st, BOOST_PP_SEQ_REVERSE_S(145, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_145(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_145(op, st, BOOST_PP_SEQ_REVERSE_S(146, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_146(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_146(op, st, BOOST_PP_SEQ_REVERSE_S(147, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_147(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_147(op, st, BOOST_PP_SEQ_REVERSE_S(148, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_148(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_148(op, st, BOOST_PP_SEQ_REVERSE_S(149, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_149(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_149(op, st, BOOST_PP_SEQ_REVERSE_S(150, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_150(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_150(op, st, BOOST_PP_SEQ_REVERSE_S(151, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_151(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_151(op, st, BOOST_PP_SEQ_REVERSE_S(152, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_152(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_152(op, st, BOOST_PP_SEQ_REVERSE_S(153, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_153(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_153(op, st, BOOST_PP_SEQ_REVERSE_S(154, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_154(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_154(op, st, BOOST_PP_SEQ_REVERSE_S(155, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_155(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_155(op, st, BOOST_PP_SEQ_REVERSE_S(156, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_156(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_156(op, st, BOOST_PP_SEQ_REVERSE_S(157, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_157(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_157(op, st, BOOST_PP_SEQ_REVERSE_S(158, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_158(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_158(op, st, BOOST_PP_SEQ_REVERSE_S(159, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_159(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_159(op, st, BOOST_PP_SEQ_REVERSE_S(160, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_160(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_160(op, st, BOOST_PP_SEQ_REVERSE_S(161, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_161(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_161(op, st, BOOST_PP_SEQ_REVERSE_S(162, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_162(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_162(op, st, BOOST_PP_SEQ_REVERSE_S(163, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_163(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_163(op, st, BOOST_PP_SEQ_REVERSE_S(164, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_164(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_164(op, st, BOOST_PP_SEQ_REVERSE_S(165, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_165(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_165(op, st, BOOST_PP_SEQ_REVERSE_S(166, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_166(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_166(op, st, BOOST_PP_SEQ_REVERSE_S(167, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_167(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_167(op, st, BOOST_PP_SEQ_REVERSE_S(168, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_168(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_168(op, st, BOOST_PP_SEQ_REVERSE_S(169, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_169(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_169(op, st, BOOST_PP_SEQ_REVERSE_S(170, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_170(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_170(op, st, BOOST_PP_SEQ_REVERSE_S(171, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_171(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_171(op, st, BOOST_PP_SEQ_REVERSE_S(172, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_172(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_172(op, st, BOOST_PP_SEQ_REVERSE_S(173, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_173(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_173(op, st, BOOST_PP_SEQ_REVERSE_S(174, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_174(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_174(op, st, BOOST_PP_SEQ_REVERSE_S(175, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_175(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_175(op, st, BOOST_PP_SEQ_REVERSE_S(176, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_176(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_176(op, st, BOOST_PP_SEQ_REVERSE_S(177, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_177(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_177(op, st, BOOST_PP_SEQ_REVERSE_S(178, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_178(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_178(op, st, BOOST_PP_SEQ_REVERSE_S(179, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_179(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_179(op, st, BOOST_PP_SEQ_REVERSE_S(180, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_180(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_180(op, st, BOOST_PP_SEQ_REVERSE_S(181, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_181(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_181(op, st, BOOST_PP_SEQ_REVERSE_S(182, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_182(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_182(op, st, BOOST_PP_SEQ_REVERSE_S(183, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_183(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_183(op, st, BOOST_PP_SEQ_REVERSE_S(184, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_184(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_184(op, st, BOOST_PP_SEQ_REVERSE_S(185, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_185(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_185(op, st, BOOST_PP_SEQ_REVERSE_S(186, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_186(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_186(op, st, BOOST_PP_SEQ_REVERSE_S(187, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_187(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_187(op, st, BOOST_PP_SEQ_REVERSE_S(188, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_188(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_188(op, st, BOOST_PP_SEQ_REVERSE_S(189, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_189(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_189(op, st, BOOST_PP_SEQ_REVERSE_S(190, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_190(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_190(op, st, BOOST_PP_SEQ_REVERSE_S(191, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_191(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_191(op, st, BOOST_PP_SEQ_REVERSE_S(192, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_192(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_192(op, st, BOOST_PP_SEQ_REVERSE_S(193, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_193(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_193(op, st, BOOST_PP_SEQ_REVERSE_S(194, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_194(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_194(op, st, BOOST_PP_SEQ_REVERSE_S(195, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_195(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_195(op, st, BOOST_PP_SEQ_REVERSE_S(196, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_196(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_196(op, st, BOOST_PP_SEQ_REVERSE_S(197, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_197(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_197(op, st, BOOST_PP_SEQ_REVERSE_S(198, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_198(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_198(op, st, BOOST_PP_SEQ_REVERSE_S(199, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_199(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_199(op, st, BOOST_PP_SEQ_REVERSE_S(200, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_200(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_200(op, st, BOOST_PP_SEQ_REVERSE_S(201, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_201(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_201(op, st, BOOST_PP_SEQ_REVERSE_S(202, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_202(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_202(op, st, BOOST_PP_SEQ_REVERSE_S(203, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_203(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_203(op, st, BOOST_PP_SEQ_REVERSE_S(204, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_204(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_204(op, st, BOOST_PP_SEQ_REVERSE_S(205, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_205(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_205(op, st, BOOST_PP_SEQ_REVERSE_S(206, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_206(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_206(op, st, BOOST_PP_SEQ_REVERSE_S(207, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_207(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_207(op, st, BOOST_PP_SEQ_REVERSE_S(208, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_208(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_208(op, st, BOOST_PP_SEQ_REVERSE_S(209, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_209(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_209(op, st, BOOST_PP_SEQ_REVERSE_S(210, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_210(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_210(op, st, BOOST_PP_SEQ_REVERSE_S(211, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_211(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_211(op, st, BOOST_PP_SEQ_REVERSE_S(212, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_212(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_212(op, st, BOOST_PP_SEQ_REVERSE_S(213, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_213(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_213(op, st, BOOST_PP_SEQ_REVERSE_S(214, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_214(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_214(op, st, BOOST_PP_SEQ_REVERSE_S(215, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_215(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_215(op, st, BOOST_PP_SEQ_REVERSE_S(216, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_216(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_216(op, st, BOOST_PP_SEQ_REVERSE_S(217, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_217(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_217(op, st, BOOST_PP_SEQ_REVERSE_S(218, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_218(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_218(op, st, BOOST_PP_SEQ_REVERSE_S(219, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_219(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_219(op, st, BOOST_PP_SEQ_REVERSE_S(220, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_220(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_220(op, st, BOOST_PP_SEQ_REVERSE_S(221, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_221(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_221(op, st, BOOST_PP_SEQ_REVERSE_S(222, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_222(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_222(op, st, BOOST_PP_SEQ_REVERSE_S(223, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_223(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_223(op, st, BOOST_PP_SEQ_REVERSE_S(224, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_224(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_224(op, st, BOOST_PP_SEQ_REVERSE_S(225, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_225(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_225(op, st, BOOST_PP_SEQ_REVERSE_S(226, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_226(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_226(op, st, BOOST_PP_SEQ_REVERSE_S(227, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_227(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_227(op, st, BOOST_PP_SEQ_REVERSE_S(228, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_228(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_228(op, st, BOOST_PP_SEQ_REVERSE_S(229, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_229(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_229(op, st, BOOST_PP_SEQ_REVERSE_S(230, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_230(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_230(op, st, BOOST_PP_SEQ_REVERSE_S(231, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_231(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_231(op, st, BOOST_PP_SEQ_REVERSE_S(232, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_232(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_232(op, st, BOOST_PP_SEQ_REVERSE_S(233, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_233(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_233(op, st, BOOST_PP_SEQ_REVERSE_S(234, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_234(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_234(op, st, BOOST_PP_SEQ_REVERSE_S(235, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_235(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_235(op, st, BOOST_PP_SEQ_REVERSE_S(236, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_236(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_236(op, st, BOOST_PP_SEQ_REVERSE_S(237, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_237(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_237(op, st, BOOST_PP_SEQ_REVERSE_S(238, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_238(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_238(op, st, BOOST_PP_SEQ_REVERSE_S(239, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_239(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_239(op, st, BOOST_PP_SEQ_REVERSE_S(240, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_240(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_240(op, st, BOOST_PP_SEQ_REVERSE_S(241, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_241(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_241(op, st, BOOST_PP_SEQ_REVERSE_S(242, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_242(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_242(op, st, BOOST_PP_SEQ_REVERSE_S(243, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_243(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_243(op, st, BOOST_PP_SEQ_REVERSE_S(244, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_244(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_244(op, st, BOOST_PP_SEQ_REVERSE_S(245, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_245(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_245(op, st, BOOST_PP_SEQ_REVERSE_S(246, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_246(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_246(op, st, BOOST_PP_SEQ_REVERSE_S(247, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_247(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_247(op, st, BOOST_PP_SEQ_REVERSE_S(248, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_248(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_248(op, st, BOOST_PP_SEQ_REVERSE_S(249, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_249(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_249(op, st, BOOST_PP_SEQ_REVERSE_S(250, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_250(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_250(op, st, BOOST_PP_SEQ_REVERSE_S(251, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_251(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_251(op, st, BOOST_PP_SEQ_REVERSE_S(252, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_252(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_252(op, st, BOOST_PP_SEQ_REVERSE_S(253, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_253(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_253(op, st, BOOST_PP_SEQ_REVERSE_S(254, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_254(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_254(op, st, BOOST_PP_SEQ_REVERSE_S(255, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_255(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_255(op, st, BOOST_PP_SEQ_REVERSE_S(256, ss), BOOST_PP_SEQ_SIZE(ss)) +# define BOOST_PP_SEQ_FOLD_RIGHT_256(op, st, ss) BOOST_PP_SEQ_FOLD_LEFT_I_256(op, st, BOOST_PP_SEQ_REVERSE_S(257, ss), BOOST_PP_SEQ_SIZE(ss)) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/for_each.hpp b/plugin/wave/include/boost/preprocessor/seq/for_each.hpp new file mode 100644 index 0000000..3f9c0d7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/for_each.hpp @@ -0,0 +1,107 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FOR_EACH_HPP +# define BOOST_PREPROCESSOR_SEQ_FOR_EACH_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FOR_EACH */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK(macro, data, seq) +# else +# define BOOST_PP_SEQ_FOR_EACH(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_D(macro, data, seq) +# define BOOST_PP_SEQ_FOR_EACH_D(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK(macro, data, seq) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EXEC(macro, data, seq) BOOST_PP_FOR((macro, data, seq, BOOST_PP_SEQ_SIZE(seq)), BOOST_PP_SEQ_FOR_EACH_P, BOOST_PP_SEQ_FOR_EACH_O, BOOST_PP_SEQ_FOR_EACH_M) +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EMPTY(macro, data, seq) +# +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK(macro, data, seq) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ + BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EXEC, \ + BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EMPTY \ + ) \ + (macro, data, seq) \ +/**/ +# +# define BOOST_PP_SEQ_FOR_EACH_P(r, x) BOOST_PP_TUPLE_ELEM(4, 3, x) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FOR_EACH_O(r, x) BOOST_PP_SEQ_FOR_EACH_O_I x +# else +# define BOOST_PP_SEQ_FOR_EACH_O(r, x) BOOST_PP_SEQ_FOR_EACH_O_I(BOOST_PP_TUPLE_ELEM(4, 0, x), BOOST_PP_TUPLE_ELEM(4, 1, x), BOOST_PP_TUPLE_ELEM(4, 2, x), BOOST_PP_TUPLE_ELEM(4, 3, x)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_O_I(macro, data, seq, sz) \ + BOOST_PP_SEQ_FOR_EACH_O_I_DEC(macro, data, seq, BOOST_PP_DEC(sz)) \ +/**/ +# define BOOST_PP_SEQ_FOR_EACH_O_I_DEC(macro, data, seq, sz) \ + ( \ + macro, \ + data, \ + BOOST_PP_IF \ + ( \ + sz, \ + BOOST_PP_SEQ_FOR_EACH_O_I_TAIL, \ + BOOST_PP_SEQ_FOR_EACH_O_I_NIL \ + ) \ + (seq), \ + sz \ + ) \ +/**/ +# define BOOST_PP_SEQ_FOR_EACH_O_I_TAIL(seq) BOOST_PP_SEQ_TAIL(seq) +# define BOOST_PP_SEQ_FOR_EACH_O_I_NIL(seq) BOOST_PP_NIL +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FOR_EACH_M(r, x) BOOST_PP_SEQ_FOR_EACH_M_IM(r, BOOST_PP_TUPLE_REM_4 x) +# define BOOST_PP_SEQ_FOR_EACH_M_IM(r, im) BOOST_PP_SEQ_FOR_EACH_M_I(r, im) +# else +# define BOOST_PP_SEQ_FOR_EACH_M(r, x) BOOST_PP_SEQ_FOR_EACH_M_I(r, BOOST_PP_TUPLE_ELEM(4, 0, x), BOOST_PP_TUPLE_ELEM(4, 1, x), BOOST_PP_TUPLE_ELEM(4, 2, x), BOOST_PP_TUPLE_ELEM(4, 3, x)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_M_I(r, macro, data, seq, sz) macro(r, data, BOOST_PP_SEQ_HEAD(seq)) +# +# /* BOOST_PP_SEQ_FOR_EACH_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH_R(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_R(r, macro, data, seq) +# else +# define BOOST_PP_SEQ_FOR_EACH_R(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_R_I(r, macro, data, seq) +# define BOOST_PP_SEQ_FOR_EACH_R_I(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_R(r, macro, data, seq) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EXEC_R(r, macro, data, seq) BOOST_PP_FOR_ ## r((macro, data, seq, BOOST_PP_SEQ_SIZE(seq)), BOOST_PP_SEQ_FOR_EACH_P, BOOST_PP_SEQ_FOR_EACH_O, BOOST_PP_SEQ_FOR_EACH_M) +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EMPTY_R(r, macro, data, seq) +# +# define BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_R(r, macro, data, seq) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ + BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EXEC_R, \ + BOOST_PP_SEQ_FOR_EACH_DETAIL_CHECK_EMPTY_R \ + ) \ + (r, macro, data, seq) \ +/**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/for_each_i.hpp b/plugin/wave/include/boost/preprocessor/seq/for_each_i.hpp new file mode 100644 index 0000000..81028d7 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/for_each_i.hpp @@ -0,0 +1,109 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FOR_EACH_I_HPP +# define BOOST_PREPROCESSOR_SEQ_FOR_EACH_I_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FOR_EACH_I */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) +# else +# define BOOST_PP_SEQ_FOR_EACH_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_I(macro, data, seq) +# define BOOST_PP_SEQ_FOR_EACH_I_I(macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC(macro, data, seq) BOOST_PP_FOR((macro, data, seq, 0, BOOST_PP_SEQ_SIZE(seq)), BOOST_PP_SEQ_FOR_EACH_I_P, BOOST_PP_SEQ_FOR_EACH_I_O, BOOST_PP_SEQ_FOR_EACH_I_M) +# define BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EMPTY(macro, data, seq) +# +# define BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK(macro, data, seq) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ + BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EXEC, \ + BOOST_PP_SEQ_FOR_EACH_I_DETAIL_CHECK_EMPTY \ + ) \ + (macro, data, seq) \ +/**/ +# +# define BOOST_PP_SEQ_FOR_EACH_I_P(r, x) BOOST_PP_TUPLE_ELEM(5, 4, x) +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FOR_EACH_I_O(r, x) BOOST_PP_SEQ_FOR_EACH_I_O_I x +# else +# define BOOST_PP_SEQ_FOR_EACH_I_O(r, x) BOOST_PP_SEQ_FOR_EACH_I_O_I(BOOST_PP_TUPLE_ELEM(5, 0, x), BOOST_PP_TUPLE_ELEM(5, 1, x), BOOST_PP_TUPLE_ELEM(5, 2, x), BOOST_PP_TUPLE_ELEM(5, 3, x), BOOST_PP_TUPLE_ELEM(5, 4, x)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_I_O_I(macro, data, seq, i, sz) \ + BOOST_PP_SEQ_FOR_EACH_I_O_I_DEC(macro, data, seq, i, BOOST_PP_DEC(sz)) \ +/**/ +# define BOOST_PP_SEQ_FOR_EACH_I_O_I_DEC(macro, data, seq, i, sz) \ + ( \ + macro, \ + data, \ + BOOST_PP_IF \ + ( \ + sz, \ + BOOST_PP_SEQ_FOR_EACH_I_O_I_TAIL, \ + BOOST_PP_SEQ_FOR_EACH_I_O_I_NIL \ + ) \ + (seq), \ + BOOST_PP_INC(i), \ + sz \ + ) \ +/**/ +# define BOOST_PP_SEQ_FOR_EACH_I_O_I_TAIL(seq) BOOST_PP_SEQ_TAIL(seq) +# define BOOST_PP_SEQ_FOR_EACH_I_O_I_NIL(seq) BOOST_PP_NIL +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FOR_EACH_I_M(r, x) BOOST_PP_SEQ_FOR_EACH_I_M_IM(r, BOOST_PP_TUPLE_REM_5 x) +# define BOOST_PP_SEQ_FOR_EACH_I_M_IM(r, im) BOOST_PP_SEQ_FOR_EACH_I_M_I(r, im) +# else +# define BOOST_PP_SEQ_FOR_EACH_I_M(r, x) BOOST_PP_SEQ_FOR_EACH_I_M_I(r, BOOST_PP_TUPLE_ELEM(5, 0, x), BOOST_PP_TUPLE_ELEM(5, 1, x), BOOST_PP_TUPLE_ELEM(5, 2, x), BOOST_PP_TUPLE_ELEM(5, 3, x), BOOST_PP_TUPLE_ELEM(5, 4, x)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_I_M_I(r, macro, data, seq, i, sz) macro(r, data, i, BOOST_PP_SEQ_HEAD(seq)) +# +# /* BOOST_PP_SEQ_FOR_EACH_I_R */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH_I_R(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK(r, macro, data, seq) +# else +# define BOOST_PP_SEQ_FOR_EACH_I_R(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_R_I(r, macro, data, seq) +# define BOOST_PP_SEQ_FOR_EACH_I_R_I(r, macro, data, seq) BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK(r, macro, data, seq) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK_EXEC(r, macro, data, seq) BOOST_PP_FOR_ ## r((macro, data, seq, 0, BOOST_PP_SEQ_SIZE(seq)), BOOST_PP_SEQ_FOR_EACH_I_P, BOOST_PP_SEQ_FOR_EACH_I_O, BOOST_PP_SEQ_FOR_EACH_I_M) +# define BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK_EMPTY(r, macro, data, seq) +# +# define BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK(r, macro, data, seq) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY(seq), \ + BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK_EXEC, \ + BOOST_PP_SEQ_FOR_EACH_I_R_DETAIL_CHECK_EMPTY \ + ) \ + (r, macro, data, seq) \ +/**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/for_each_product.hpp b/plugin/wave/include/boost/preprocessor/seq/for_each_product.hpp new file mode 100644 index 0000000..baf22df --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/for_each_product.hpp @@ -0,0 +1,126 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_FOR_EACH_PRODUCT_HPP +# define BOOST_PREPROCESSOR_SEQ_FOR_EACH_PRODUCT_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_FOR_EACH_PRODUCT */ +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT(macro, sets) BOOST_PP_SEQ_FOR_EACH_PRODUCT_E(BOOST_PP_FOR, macro, sets) +# +# /* BOOST_PP_SEQ_FOR_EACH_PRODUCT_R */ +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_R(r, macro, sets) BOOST_PP_SEQ_FOR_EACH_PRODUCT_E(BOOST_PP_FOR_ ## r, macro, sets) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_E(impl, macro, sets) impl((BOOST_PP_SEQ_HEAD(sets)(nil), BOOST_PP_SEQ_TAIL(sets)(nil), (nil), macro), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_0) +# else +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_E(impl, macro, sets) BOOST_PP_SEQ_FOR_EACH_PRODUCT_E_I(impl, macro, sets) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_E_I(impl, macro, sets) impl((BOOST_PP_SEQ_HEAD(sets)(nil), BOOST_PP_SEQ_TAIL(sets)(nil), (nil), macro), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_0) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_P(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_P_I data +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_P_I(cset, rset, res, macro) BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(cset)) +# else +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_P(r, data) BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(BOOST_PP_TUPLE_ELEM(4, 0, data))) +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_O(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_O_I data +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_O_I(cset, rset, res, macro) (BOOST_PP_SEQ_TAIL(cset), rset, res, macro) +# else +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_O(r, data) (BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(4, 0, data)), BOOST_PP_TUPLE_ELEM(4, 1, data), BOOST_PP_TUPLE_ELEM(4, 2, data), BOOST_PP_TUPLE_ELEM(4, 3, data)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, i) BOOST_PP_IF(BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(BOOST_PP_TUPLE_ELEM(4, 1, data))), BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_ ## i, BOOST_PP_SEQ_FOR_EACH_PRODUCT_I) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_I(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_I_I(r, BOOST_PP_TUPLE_ELEM(4, 0, data), BOOST_PP_TUPLE_ELEM(4, 1, data), BOOST_PP_TUPLE_ELEM(4, 2, data), BOOST_PP_TUPLE_ELEM(4, 3, data)) +# else +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_I(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_I_IM(r, BOOST_PP_TUPLE_REM_4 data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_I_IM(r, im) BOOST_PP_SEQ_FOR_EACH_PRODUCT_I_I(r, im) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_I_I(r, cset, rset, res, macro) macro(r, BOOST_PP_SEQ_TAIL(res (BOOST_PP_SEQ_HEAD(cset)))) +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_H_I data +# else +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_H_I(BOOST_PP_TUPLE_ELEM(4, 0, data), BOOST_PP_TUPLE_ELEM(4, 1, data), BOOST_PP_TUPLE_ELEM(4, 2, data), BOOST_PP_TUPLE_ELEM(4, 3, data)) +# endif +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_H_I(cset, rset, res, macro) (BOOST_PP_SEQ_HEAD(rset)(nil), BOOST_PP_SEQ_TAIL(rset), res (BOOST_PP_SEQ_HEAD(cset)), macro) +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_0(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 0)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_1(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 1)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_2(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 2)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_3(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 3)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_4(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 4)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_5(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 5)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_6(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 6)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_7(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 7)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_8(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 8)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_9(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 9)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_10(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 10)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_11(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 11)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_12(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 12)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_13(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 13)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_14(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 14)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_15(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 15)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_16(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 16)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_17(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 17)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_18(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 18)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_19(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 19)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_20(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 20)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_21(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 21)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_22(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 22)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_23(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 23)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_24(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 24)(r, data) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_25(r, data) BOOST_PP_SEQ_FOR_EACH_PRODUCT_C(data, 25)(r, data) +# +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_0(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_1) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_1(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_2) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_2(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_3) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_3(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_4) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_4(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_5) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_5(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_6) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_6(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_7) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_7(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_8) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_8(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_9) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_9(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_10) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_10(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_11) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_11(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_12) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_12(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_13) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_13(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_14) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_14(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_15) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_15(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_16) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_16(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_17) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_17(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_18) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_18(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_19) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_19(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_20) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_20(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_21) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_21(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_22) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_22(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_23) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_23(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_24) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_24(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_25) +# define BOOST_PP_SEQ_FOR_EACH_PRODUCT_N_25(r, data) BOOST_PP_FOR_ ## r(BOOST_PP_SEQ_FOR_EACH_PRODUCT_H(data), BOOST_PP_SEQ_FOR_EACH_PRODUCT_P, BOOST_PP_SEQ_FOR_EACH_PRODUCT_O, BOOST_PP_SEQ_FOR_EACH_PRODUCT_M_26) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/insert.hpp b/plugin/wave/include/boost/preprocessor/seq/insert.hpp new file mode 100644 index 0000000..59ce2f4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/insert.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_INSERT_HPP +# define BOOST_PREPROCESSOR_SEQ_INSERT_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_INSERT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_INSERT(seq, i, elem) BOOST_PP_SEQ_FIRST_N(i, seq) (elem) BOOST_PP_SEQ_REST_N(i, seq) +# else +# define BOOST_PP_SEQ_INSERT(seq, i, elem) BOOST_PP_SEQ_INSERT_I(seq, i, elem) +# define BOOST_PP_SEQ_INSERT_I(seq, i, elem) BOOST_PP_SEQ_FIRST_N(i, seq) (elem) BOOST_PP_SEQ_REST_N(i, seq) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/pop_back.hpp b/plugin/wave/include/boost/preprocessor/seq/pop_back.hpp new file mode 100644 index 0000000..54200d6 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/pop_back.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_POP_BACK_HPP +# define BOOST_PREPROCESSOR_SEQ_POP_BACK_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_POP_BACK */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_POP_BACK(seq) BOOST_PP_SEQ_FIRST_N(BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq)), seq) +# else +# define BOOST_PP_SEQ_POP_BACK(seq) BOOST_PP_SEQ_POP_BACK_I(seq) +# define BOOST_PP_SEQ_POP_BACK_I(seq) BOOST_PP_SEQ_FIRST_N(BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq)), seq) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/pop_front.hpp b/plugin/wave/include/boost/preprocessor/seq/pop_front.hpp new file mode 100644 index 0000000..7d94eea --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/pop_front.hpp @@ -0,0 +1,27 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_POP_FRONT_HPP +# define BOOST_PREPROCESSOR_SEQ_POP_FRONT_HPP +# +# include +# include +# +# /* BOOST_PP_SEQ_POP_FRONT */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_POP_FRONT(seq) BOOST_PP_SEQ_TAIL(seq) +# else +# define BOOST_PP_SEQ_POP_FRONT(seq) BOOST_PP_SEQ_POP_FRONT_I(seq) +# define BOOST_PP_SEQ_POP_FRONT_I(seq) BOOST_PP_SEQ_TAIL(seq) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/push_back.hpp b/plugin/wave/include/boost/preprocessor/seq/push_back.hpp new file mode 100644 index 0000000..1938d0b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/push_back.hpp @@ -0,0 +1,19 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_PUSH_BACK_HPP +# define BOOST_PREPROCESSOR_SEQ_PUSH_BACK_HPP +# +# /* BOOST_PP_SEQ_PUSH_BACK */ +# +# define BOOST_PP_SEQ_PUSH_BACK(seq, elem) seq(elem) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/push_front.hpp b/plugin/wave/include/boost/preprocessor/seq/push_front.hpp new file mode 100644 index 0000000..2ce73ad --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/push_front.hpp @@ -0,0 +1,19 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_PUSH_FRONT_HPP +# define BOOST_PREPROCESSOR_SEQ_PUSH_FRONT_HPP +# +# /* BOOST_PP_SEQ_PUSH_FRONT */ +# +# define BOOST_PP_SEQ_PUSH_FRONT(seq, elem) (elem)seq +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/remove.hpp b/plugin/wave/include/boost/preprocessor/seq/remove.hpp new file mode 100644 index 0000000..d2f77b0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/remove.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_REMOVE_HPP +# define BOOST_PREPROCESSOR_SEQ_REMOVE_HPP +# +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_REMOVE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_REMOVE(seq, i) BOOST_PP_SEQ_FIRST_N(i, seq) BOOST_PP_SEQ_REST_N(BOOST_PP_INC(i), seq) +# else +# define BOOST_PP_SEQ_REMOVE(seq, i) BOOST_PP_SEQ_REMOVE_I(seq, i) +# define BOOST_PP_SEQ_REMOVE_I(seq, i) BOOST_PP_SEQ_FIRST_N(i, seq) BOOST_PP_SEQ_REST_N(BOOST_PP_INC(i), seq) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/replace.hpp b/plugin/wave/include/boost/preprocessor/seq/replace.hpp new file mode 100644 index 0000000..0cf6b77 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/replace.hpp @@ -0,0 +1,45 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_REPLACE_HPP +# define BOOST_PREPROCESSOR_SEQ_REPLACE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_REPLACE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_REPLACE(seq, i, elem) BOOST_PP_SEQ_FIRST_N(i, seq) (elem) BOOST_PP_SEQ_REPLACE_DETAIL_REST(seq, i) +# else +# define BOOST_PP_SEQ_REPLACE(seq, i, elem) BOOST_PP_SEQ_REPLACE_I(seq, i, elem) +# define BOOST_PP_SEQ_REPLACE_I(seq, i, elem) BOOST_PP_SEQ_FIRST_N(i, seq) (elem) BOOST_PP_SEQ_REPLACE_DETAIL_REST(seq, i) +# endif +# +# define BOOST_PP_SEQ_REPLACE_DETAIL_REST_EMPTY(seq, i) +# define BOOST_PP_SEQ_REPLACE_DETAIL_REST_VALID(seq, i) BOOST_PP_SEQ_REST_N(BOOST_PP_INC(i), seq) +# define BOOST_PP_SEQ_REPLACE_DETAIL_REST(seq, i) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_EQUAL(i,BOOST_PP_DEC(BOOST_PP_SEQ_SIZE(seq))), \ + BOOST_PP_SEQ_REPLACE_DETAIL_REST_EMPTY, \ + BOOST_PP_SEQ_REPLACE_DETAIL_REST_VALID \ + ) \ + (seq, i) \ +/**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/rest_n.hpp b/plugin/wave/include/boost/preprocessor/seq/rest_n.hpp new file mode 100644 index 0000000..4aefba4 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/rest_n.hpp @@ -0,0 +1,46 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_REST_N_HPP +# define BOOST_PREPROCESSOR_SEQ_REST_N_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_REST_N */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_REST_N(n, seq) BOOST_PP_SEQ_REST_N_DETAIL_EXEC(n, seq, BOOST_PP_SEQ_DETAIL_EMPTY_SIZE(seq)) +# else +# define BOOST_PP_SEQ_REST_N(n, seq) BOOST_PP_SEQ_REST_N_I(n, seq) +# define BOOST_PP_SEQ_REST_N_I(n, seq) BOOST_PP_SEQ_REST_N_DETAIL_EXEC(n, seq, BOOST_PP_SEQ_DETAIL_EMPTY_SIZE(seq)) +# endif +# +# define BOOST_PP_SEQ_REST_N_DETAIL_EXEC(n, seq, size) \ + BOOST_PP_EXPR_IIF \ + ( \ + BOOST_PP_BITAND \ + ( \ + BOOST_PP_SEQ_DETAIL_IS_NOT_EMPTY_SIZE(size), \ + BOOST_PP_NOT_EQUAL(n,size) \ + ), \ + BOOST_PP_TUPLE_ELEM(2, 1, BOOST_PP_SEQ_SPLIT(BOOST_PP_INC(n), BOOST_PP_IDENTITY( (nil) seq )))() \ + ) \ +/**/ +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/reverse.hpp b/plugin/wave/include/boost/preprocessor/seq/reverse.hpp new file mode 100644 index 0000000..338d777 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/reverse.hpp @@ -0,0 +1,39 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_REVERSE_HPP +# define BOOST_PREPROCESSOR_SEQ_REVERSE_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_REVERSE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_REVERSE(seq) BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() +# else +# define BOOST_PP_SEQ_REVERSE(seq) BOOST_PP_SEQ_REVERSE_I(seq) +# define BOOST_PP_SEQ_REVERSE_I(seq) BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() +# endif +# +# define BOOST_PP_SEQ_REVERSE_O(s, state, elem) (elem) state +# +# /* BOOST_PP_SEQ_REVERSE_S */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_REVERSE_S(s, seq) BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() +# else +# define BOOST_PP_SEQ_REVERSE_S(s, seq) BOOST_PP_SEQ_REVERSE_S_I(s, seq) +# define BOOST_PP_SEQ_REVERSE_S_I(s, seq) BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_REVERSE_O, BOOST_PP_EMPTY, seq)() +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/seq.hpp b/plugin/wave/include/boost/preprocessor/seq/seq.hpp new file mode 100644 index 0000000..f5ca84c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/seq.hpp @@ -0,0 +1,44 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_SEQ_HPP +# define BOOST_PREPROCESSOR_SEQ_SEQ_HPP +# +# include +# include +# +# /* BOOST_PP_SEQ_HEAD */ +# +# define BOOST_PP_SEQ_HEAD(seq) BOOST_PP_SEQ_ELEM(0, seq) +# +# /* BOOST_PP_SEQ_TAIL */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_1((seq)) +# define BOOST_PP_SEQ_TAIL_1(par) BOOST_PP_SEQ_TAIL_2 ## par +# define BOOST_PP_SEQ_TAIL_2(seq) BOOST_PP_SEQ_TAIL_I ## seq +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_ID(BOOST_PP_SEQ_TAIL_I seq) +# define BOOST_PP_SEQ_TAIL_ID(id) id +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_D(seq) +# define BOOST_PP_SEQ_TAIL_D(seq) BOOST_PP_SEQ_TAIL_I seq +# else +# define BOOST_PP_SEQ_TAIL(seq) BOOST_PP_SEQ_TAIL_I seq +# endif +# +# define BOOST_PP_SEQ_TAIL_I(x) +# +# /* BOOST_PP_SEQ_NIL */ +# +# define BOOST_PP_SEQ_NIL(x) (x) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/size.hpp b/plugin/wave/include/boost/preprocessor/seq/size.hpp new file mode 100644 index 0000000..b5c8d9d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/size.hpp @@ -0,0 +1,548 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_SIZE_HPP +# define BOOST_PREPROCESSOR_SEQ_SIZE_HPP +# +# include +# include +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_SEQ_SIZE_I((seq)) +# define BOOST_PP_SEQ_SIZE_I(par) BOOST_PP_SEQ_SIZE_II ## par +# define BOOST_PP_SEQ_SIZE_II(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 ## seq) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() || BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_SEQ_SIZE_I(seq) +# define BOOST_PP_SEQ_SIZE_I(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq) +# elif defined(__IBMC__) || defined(__IBMCPP__) +# define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_0, seq)) +# else +# define BOOST_PP_SEQ_SIZE(seq) BOOST_PP_CAT(BOOST_PP_SEQ_SIZE_, BOOST_PP_SEQ_SIZE_0 seq) +# endif +# +# define BOOST_PP_SEQ_SIZE_0(_) BOOST_PP_SEQ_SIZE_1 +# define BOOST_PP_SEQ_SIZE_1(_) BOOST_PP_SEQ_SIZE_2 +# define BOOST_PP_SEQ_SIZE_2(_) BOOST_PP_SEQ_SIZE_3 +# define BOOST_PP_SEQ_SIZE_3(_) BOOST_PP_SEQ_SIZE_4 +# define BOOST_PP_SEQ_SIZE_4(_) BOOST_PP_SEQ_SIZE_5 +# define BOOST_PP_SEQ_SIZE_5(_) BOOST_PP_SEQ_SIZE_6 +# define BOOST_PP_SEQ_SIZE_6(_) BOOST_PP_SEQ_SIZE_7 +# define BOOST_PP_SEQ_SIZE_7(_) BOOST_PP_SEQ_SIZE_8 +# define BOOST_PP_SEQ_SIZE_8(_) BOOST_PP_SEQ_SIZE_9 +# define BOOST_PP_SEQ_SIZE_9(_) BOOST_PP_SEQ_SIZE_10 +# define BOOST_PP_SEQ_SIZE_10(_) BOOST_PP_SEQ_SIZE_11 +# define BOOST_PP_SEQ_SIZE_11(_) BOOST_PP_SEQ_SIZE_12 +# define BOOST_PP_SEQ_SIZE_12(_) BOOST_PP_SEQ_SIZE_13 +# define BOOST_PP_SEQ_SIZE_13(_) BOOST_PP_SEQ_SIZE_14 +# define BOOST_PP_SEQ_SIZE_14(_) BOOST_PP_SEQ_SIZE_15 +# define BOOST_PP_SEQ_SIZE_15(_) BOOST_PP_SEQ_SIZE_16 +# define BOOST_PP_SEQ_SIZE_16(_) BOOST_PP_SEQ_SIZE_17 +# define BOOST_PP_SEQ_SIZE_17(_) BOOST_PP_SEQ_SIZE_18 +# define BOOST_PP_SEQ_SIZE_18(_) BOOST_PP_SEQ_SIZE_19 +# define BOOST_PP_SEQ_SIZE_19(_) BOOST_PP_SEQ_SIZE_20 +# define BOOST_PP_SEQ_SIZE_20(_) BOOST_PP_SEQ_SIZE_21 +# define BOOST_PP_SEQ_SIZE_21(_) BOOST_PP_SEQ_SIZE_22 +# define BOOST_PP_SEQ_SIZE_22(_) BOOST_PP_SEQ_SIZE_23 +# define BOOST_PP_SEQ_SIZE_23(_) BOOST_PP_SEQ_SIZE_24 +# define BOOST_PP_SEQ_SIZE_24(_) BOOST_PP_SEQ_SIZE_25 +# define BOOST_PP_SEQ_SIZE_25(_) BOOST_PP_SEQ_SIZE_26 +# define BOOST_PP_SEQ_SIZE_26(_) BOOST_PP_SEQ_SIZE_27 +# define BOOST_PP_SEQ_SIZE_27(_) BOOST_PP_SEQ_SIZE_28 +# define BOOST_PP_SEQ_SIZE_28(_) BOOST_PP_SEQ_SIZE_29 +# define BOOST_PP_SEQ_SIZE_29(_) BOOST_PP_SEQ_SIZE_30 +# define BOOST_PP_SEQ_SIZE_30(_) BOOST_PP_SEQ_SIZE_31 +# define BOOST_PP_SEQ_SIZE_31(_) BOOST_PP_SEQ_SIZE_32 +# define BOOST_PP_SEQ_SIZE_32(_) BOOST_PP_SEQ_SIZE_33 +# define BOOST_PP_SEQ_SIZE_33(_) BOOST_PP_SEQ_SIZE_34 +# define BOOST_PP_SEQ_SIZE_34(_) BOOST_PP_SEQ_SIZE_35 +# define BOOST_PP_SEQ_SIZE_35(_) BOOST_PP_SEQ_SIZE_36 +# define BOOST_PP_SEQ_SIZE_36(_) BOOST_PP_SEQ_SIZE_37 +# define BOOST_PP_SEQ_SIZE_37(_) BOOST_PP_SEQ_SIZE_38 +# define BOOST_PP_SEQ_SIZE_38(_) BOOST_PP_SEQ_SIZE_39 +# define BOOST_PP_SEQ_SIZE_39(_) BOOST_PP_SEQ_SIZE_40 +# define BOOST_PP_SEQ_SIZE_40(_) BOOST_PP_SEQ_SIZE_41 +# define BOOST_PP_SEQ_SIZE_41(_) BOOST_PP_SEQ_SIZE_42 +# define BOOST_PP_SEQ_SIZE_42(_) BOOST_PP_SEQ_SIZE_43 +# define BOOST_PP_SEQ_SIZE_43(_) BOOST_PP_SEQ_SIZE_44 +# define BOOST_PP_SEQ_SIZE_44(_) BOOST_PP_SEQ_SIZE_45 +# define BOOST_PP_SEQ_SIZE_45(_) BOOST_PP_SEQ_SIZE_46 +# define BOOST_PP_SEQ_SIZE_46(_) BOOST_PP_SEQ_SIZE_47 +# define BOOST_PP_SEQ_SIZE_47(_) BOOST_PP_SEQ_SIZE_48 +# define BOOST_PP_SEQ_SIZE_48(_) BOOST_PP_SEQ_SIZE_49 +# define BOOST_PP_SEQ_SIZE_49(_) BOOST_PP_SEQ_SIZE_50 +# define BOOST_PP_SEQ_SIZE_50(_) BOOST_PP_SEQ_SIZE_51 +# define BOOST_PP_SEQ_SIZE_51(_) BOOST_PP_SEQ_SIZE_52 +# define BOOST_PP_SEQ_SIZE_52(_) BOOST_PP_SEQ_SIZE_53 +# define BOOST_PP_SEQ_SIZE_53(_) BOOST_PP_SEQ_SIZE_54 +# define BOOST_PP_SEQ_SIZE_54(_) BOOST_PP_SEQ_SIZE_55 +# define BOOST_PP_SEQ_SIZE_55(_) BOOST_PP_SEQ_SIZE_56 +# define BOOST_PP_SEQ_SIZE_56(_) BOOST_PP_SEQ_SIZE_57 +# define BOOST_PP_SEQ_SIZE_57(_) BOOST_PP_SEQ_SIZE_58 +# define BOOST_PP_SEQ_SIZE_58(_) BOOST_PP_SEQ_SIZE_59 +# define BOOST_PP_SEQ_SIZE_59(_) BOOST_PP_SEQ_SIZE_60 +# define BOOST_PP_SEQ_SIZE_60(_) BOOST_PP_SEQ_SIZE_61 +# define BOOST_PP_SEQ_SIZE_61(_) BOOST_PP_SEQ_SIZE_62 +# define BOOST_PP_SEQ_SIZE_62(_) BOOST_PP_SEQ_SIZE_63 +# define BOOST_PP_SEQ_SIZE_63(_) BOOST_PP_SEQ_SIZE_64 +# define BOOST_PP_SEQ_SIZE_64(_) BOOST_PP_SEQ_SIZE_65 +# define BOOST_PP_SEQ_SIZE_65(_) BOOST_PP_SEQ_SIZE_66 +# define BOOST_PP_SEQ_SIZE_66(_) BOOST_PP_SEQ_SIZE_67 +# define BOOST_PP_SEQ_SIZE_67(_) BOOST_PP_SEQ_SIZE_68 +# define BOOST_PP_SEQ_SIZE_68(_) BOOST_PP_SEQ_SIZE_69 +# define BOOST_PP_SEQ_SIZE_69(_) BOOST_PP_SEQ_SIZE_70 +# define BOOST_PP_SEQ_SIZE_70(_) BOOST_PP_SEQ_SIZE_71 +# define BOOST_PP_SEQ_SIZE_71(_) BOOST_PP_SEQ_SIZE_72 +# define BOOST_PP_SEQ_SIZE_72(_) BOOST_PP_SEQ_SIZE_73 +# define BOOST_PP_SEQ_SIZE_73(_) BOOST_PP_SEQ_SIZE_74 +# define BOOST_PP_SEQ_SIZE_74(_) BOOST_PP_SEQ_SIZE_75 +# define BOOST_PP_SEQ_SIZE_75(_) BOOST_PP_SEQ_SIZE_76 +# define BOOST_PP_SEQ_SIZE_76(_) BOOST_PP_SEQ_SIZE_77 +# define BOOST_PP_SEQ_SIZE_77(_) BOOST_PP_SEQ_SIZE_78 +# define BOOST_PP_SEQ_SIZE_78(_) BOOST_PP_SEQ_SIZE_79 +# define BOOST_PP_SEQ_SIZE_79(_) BOOST_PP_SEQ_SIZE_80 +# define BOOST_PP_SEQ_SIZE_80(_) BOOST_PP_SEQ_SIZE_81 +# define BOOST_PP_SEQ_SIZE_81(_) BOOST_PP_SEQ_SIZE_82 +# define BOOST_PP_SEQ_SIZE_82(_) BOOST_PP_SEQ_SIZE_83 +# define BOOST_PP_SEQ_SIZE_83(_) BOOST_PP_SEQ_SIZE_84 +# define BOOST_PP_SEQ_SIZE_84(_) BOOST_PP_SEQ_SIZE_85 +# define BOOST_PP_SEQ_SIZE_85(_) BOOST_PP_SEQ_SIZE_86 +# define BOOST_PP_SEQ_SIZE_86(_) BOOST_PP_SEQ_SIZE_87 +# define BOOST_PP_SEQ_SIZE_87(_) BOOST_PP_SEQ_SIZE_88 +# define BOOST_PP_SEQ_SIZE_88(_) BOOST_PP_SEQ_SIZE_89 +# define BOOST_PP_SEQ_SIZE_89(_) BOOST_PP_SEQ_SIZE_90 +# define BOOST_PP_SEQ_SIZE_90(_) BOOST_PP_SEQ_SIZE_91 +# define BOOST_PP_SEQ_SIZE_91(_) BOOST_PP_SEQ_SIZE_92 +# define BOOST_PP_SEQ_SIZE_92(_) BOOST_PP_SEQ_SIZE_93 +# define BOOST_PP_SEQ_SIZE_93(_) BOOST_PP_SEQ_SIZE_94 +# define BOOST_PP_SEQ_SIZE_94(_) BOOST_PP_SEQ_SIZE_95 +# define BOOST_PP_SEQ_SIZE_95(_) BOOST_PP_SEQ_SIZE_96 +# define BOOST_PP_SEQ_SIZE_96(_) BOOST_PP_SEQ_SIZE_97 +# define BOOST_PP_SEQ_SIZE_97(_) BOOST_PP_SEQ_SIZE_98 +# define BOOST_PP_SEQ_SIZE_98(_) BOOST_PP_SEQ_SIZE_99 +# define BOOST_PP_SEQ_SIZE_99(_) BOOST_PP_SEQ_SIZE_100 +# define BOOST_PP_SEQ_SIZE_100(_) BOOST_PP_SEQ_SIZE_101 +# define BOOST_PP_SEQ_SIZE_101(_) BOOST_PP_SEQ_SIZE_102 +# define BOOST_PP_SEQ_SIZE_102(_) BOOST_PP_SEQ_SIZE_103 +# define BOOST_PP_SEQ_SIZE_103(_) BOOST_PP_SEQ_SIZE_104 +# define BOOST_PP_SEQ_SIZE_104(_) BOOST_PP_SEQ_SIZE_105 +# define BOOST_PP_SEQ_SIZE_105(_) BOOST_PP_SEQ_SIZE_106 +# define BOOST_PP_SEQ_SIZE_106(_) BOOST_PP_SEQ_SIZE_107 +# define BOOST_PP_SEQ_SIZE_107(_) BOOST_PP_SEQ_SIZE_108 +# define BOOST_PP_SEQ_SIZE_108(_) BOOST_PP_SEQ_SIZE_109 +# define BOOST_PP_SEQ_SIZE_109(_) BOOST_PP_SEQ_SIZE_110 +# define BOOST_PP_SEQ_SIZE_110(_) BOOST_PP_SEQ_SIZE_111 +# define BOOST_PP_SEQ_SIZE_111(_) BOOST_PP_SEQ_SIZE_112 +# define BOOST_PP_SEQ_SIZE_112(_) BOOST_PP_SEQ_SIZE_113 +# define BOOST_PP_SEQ_SIZE_113(_) BOOST_PP_SEQ_SIZE_114 +# define BOOST_PP_SEQ_SIZE_114(_) BOOST_PP_SEQ_SIZE_115 +# define BOOST_PP_SEQ_SIZE_115(_) BOOST_PP_SEQ_SIZE_116 +# define BOOST_PP_SEQ_SIZE_116(_) BOOST_PP_SEQ_SIZE_117 +# define BOOST_PP_SEQ_SIZE_117(_) BOOST_PP_SEQ_SIZE_118 +# define BOOST_PP_SEQ_SIZE_118(_) BOOST_PP_SEQ_SIZE_119 +# define BOOST_PP_SEQ_SIZE_119(_) BOOST_PP_SEQ_SIZE_120 +# define BOOST_PP_SEQ_SIZE_120(_) BOOST_PP_SEQ_SIZE_121 +# define BOOST_PP_SEQ_SIZE_121(_) BOOST_PP_SEQ_SIZE_122 +# define BOOST_PP_SEQ_SIZE_122(_) BOOST_PP_SEQ_SIZE_123 +# define BOOST_PP_SEQ_SIZE_123(_) BOOST_PP_SEQ_SIZE_124 +# define BOOST_PP_SEQ_SIZE_124(_) BOOST_PP_SEQ_SIZE_125 +# define BOOST_PP_SEQ_SIZE_125(_) BOOST_PP_SEQ_SIZE_126 +# define BOOST_PP_SEQ_SIZE_126(_) BOOST_PP_SEQ_SIZE_127 +# define BOOST_PP_SEQ_SIZE_127(_) BOOST_PP_SEQ_SIZE_128 +# define BOOST_PP_SEQ_SIZE_128(_) BOOST_PP_SEQ_SIZE_129 +# define BOOST_PP_SEQ_SIZE_129(_) BOOST_PP_SEQ_SIZE_130 +# define BOOST_PP_SEQ_SIZE_130(_) BOOST_PP_SEQ_SIZE_131 +# define BOOST_PP_SEQ_SIZE_131(_) BOOST_PP_SEQ_SIZE_132 +# define BOOST_PP_SEQ_SIZE_132(_) BOOST_PP_SEQ_SIZE_133 +# define BOOST_PP_SEQ_SIZE_133(_) BOOST_PP_SEQ_SIZE_134 +# define BOOST_PP_SEQ_SIZE_134(_) BOOST_PP_SEQ_SIZE_135 +# define BOOST_PP_SEQ_SIZE_135(_) BOOST_PP_SEQ_SIZE_136 +# define BOOST_PP_SEQ_SIZE_136(_) BOOST_PP_SEQ_SIZE_137 +# define BOOST_PP_SEQ_SIZE_137(_) BOOST_PP_SEQ_SIZE_138 +# define BOOST_PP_SEQ_SIZE_138(_) BOOST_PP_SEQ_SIZE_139 +# define BOOST_PP_SEQ_SIZE_139(_) BOOST_PP_SEQ_SIZE_140 +# define BOOST_PP_SEQ_SIZE_140(_) BOOST_PP_SEQ_SIZE_141 +# define BOOST_PP_SEQ_SIZE_141(_) BOOST_PP_SEQ_SIZE_142 +# define BOOST_PP_SEQ_SIZE_142(_) BOOST_PP_SEQ_SIZE_143 +# define BOOST_PP_SEQ_SIZE_143(_) BOOST_PP_SEQ_SIZE_144 +# define BOOST_PP_SEQ_SIZE_144(_) BOOST_PP_SEQ_SIZE_145 +# define BOOST_PP_SEQ_SIZE_145(_) BOOST_PP_SEQ_SIZE_146 +# define BOOST_PP_SEQ_SIZE_146(_) BOOST_PP_SEQ_SIZE_147 +# define BOOST_PP_SEQ_SIZE_147(_) BOOST_PP_SEQ_SIZE_148 +# define BOOST_PP_SEQ_SIZE_148(_) BOOST_PP_SEQ_SIZE_149 +# define BOOST_PP_SEQ_SIZE_149(_) BOOST_PP_SEQ_SIZE_150 +# define BOOST_PP_SEQ_SIZE_150(_) BOOST_PP_SEQ_SIZE_151 +# define BOOST_PP_SEQ_SIZE_151(_) BOOST_PP_SEQ_SIZE_152 +# define BOOST_PP_SEQ_SIZE_152(_) BOOST_PP_SEQ_SIZE_153 +# define BOOST_PP_SEQ_SIZE_153(_) BOOST_PP_SEQ_SIZE_154 +# define BOOST_PP_SEQ_SIZE_154(_) BOOST_PP_SEQ_SIZE_155 +# define BOOST_PP_SEQ_SIZE_155(_) BOOST_PP_SEQ_SIZE_156 +# define BOOST_PP_SEQ_SIZE_156(_) BOOST_PP_SEQ_SIZE_157 +# define BOOST_PP_SEQ_SIZE_157(_) BOOST_PP_SEQ_SIZE_158 +# define BOOST_PP_SEQ_SIZE_158(_) BOOST_PP_SEQ_SIZE_159 +# define BOOST_PP_SEQ_SIZE_159(_) BOOST_PP_SEQ_SIZE_160 +# define BOOST_PP_SEQ_SIZE_160(_) BOOST_PP_SEQ_SIZE_161 +# define BOOST_PP_SEQ_SIZE_161(_) BOOST_PP_SEQ_SIZE_162 +# define BOOST_PP_SEQ_SIZE_162(_) BOOST_PP_SEQ_SIZE_163 +# define BOOST_PP_SEQ_SIZE_163(_) BOOST_PP_SEQ_SIZE_164 +# define BOOST_PP_SEQ_SIZE_164(_) BOOST_PP_SEQ_SIZE_165 +# define BOOST_PP_SEQ_SIZE_165(_) BOOST_PP_SEQ_SIZE_166 +# define BOOST_PP_SEQ_SIZE_166(_) BOOST_PP_SEQ_SIZE_167 +# define BOOST_PP_SEQ_SIZE_167(_) BOOST_PP_SEQ_SIZE_168 +# define BOOST_PP_SEQ_SIZE_168(_) BOOST_PP_SEQ_SIZE_169 +# define BOOST_PP_SEQ_SIZE_169(_) BOOST_PP_SEQ_SIZE_170 +# define BOOST_PP_SEQ_SIZE_170(_) BOOST_PP_SEQ_SIZE_171 +# define BOOST_PP_SEQ_SIZE_171(_) BOOST_PP_SEQ_SIZE_172 +# define BOOST_PP_SEQ_SIZE_172(_) BOOST_PP_SEQ_SIZE_173 +# define BOOST_PP_SEQ_SIZE_173(_) BOOST_PP_SEQ_SIZE_174 +# define BOOST_PP_SEQ_SIZE_174(_) BOOST_PP_SEQ_SIZE_175 +# define BOOST_PP_SEQ_SIZE_175(_) BOOST_PP_SEQ_SIZE_176 +# define BOOST_PP_SEQ_SIZE_176(_) BOOST_PP_SEQ_SIZE_177 +# define BOOST_PP_SEQ_SIZE_177(_) BOOST_PP_SEQ_SIZE_178 +# define BOOST_PP_SEQ_SIZE_178(_) BOOST_PP_SEQ_SIZE_179 +# define BOOST_PP_SEQ_SIZE_179(_) BOOST_PP_SEQ_SIZE_180 +# define BOOST_PP_SEQ_SIZE_180(_) BOOST_PP_SEQ_SIZE_181 +# define BOOST_PP_SEQ_SIZE_181(_) BOOST_PP_SEQ_SIZE_182 +# define BOOST_PP_SEQ_SIZE_182(_) BOOST_PP_SEQ_SIZE_183 +# define BOOST_PP_SEQ_SIZE_183(_) BOOST_PP_SEQ_SIZE_184 +# define BOOST_PP_SEQ_SIZE_184(_) BOOST_PP_SEQ_SIZE_185 +# define BOOST_PP_SEQ_SIZE_185(_) BOOST_PP_SEQ_SIZE_186 +# define BOOST_PP_SEQ_SIZE_186(_) BOOST_PP_SEQ_SIZE_187 +# define BOOST_PP_SEQ_SIZE_187(_) BOOST_PP_SEQ_SIZE_188 +# define BOOST_PP_SEQ_SIZE_188(_) BOOST_PP_SEQ_SIZE_189 +# define BOOST_PP_SEQ_SIZE_189(_) BOOST_PP_SEQ_SIZE_190 +# define BOOST_PP_SEQ_SIZE_190(_) BOOST_PP_SEQ_SIZE_191 +# define BOOST_PP_SEQ_SIZE_191(_) BOOST_PP_SEQ_SIZE_192 +# define BOOST_PP_SEQ_SIZE_192(_) BOOST_PP_SEQ_SIZE_193 +# define BOOST_PP_SEQ_SIZE_193(_) BOOST_PP_SEQ_SIZE_194 +# define BOOST_PP_SEQ_SIZE_194(_) BOOST_PP_SEQ_SIZE_195 +# define BOOST_PP_SEQ_SIZE_195(_) BOOST_PP_SEQ_SIZE_196 +# define BOOST_PP_SEQ_SIZE_196(_) BOOST_PP_SEQ_SIZE_197 +# define BOOST_PP_SEQ_SIZE_197(_) BOOST_PP_SEQ_SIZE_198 +# define BOOST_PP_SEQ_SIZE_198(_) BOOST_PP_SEQ_SIZE_199 +# define BOOST_PP_SEQ_SIZE_199(_) BOOST_PP_SEQ_SIZE_200 +# define BOOST_PP_SEQ_SIZE_200(_) BOOST_PP_SEQ_SIZE_201 +# define BOOST_PP_SEQ_SIZE_201(_) BOOST_PP_SEQ_SIZE_202 +# define BOOST_PP_SEQ_SIZE_202(_) BOOST_PP_SEQ_SIZE_203 +# define BOOST_PP_SEQ_SIZE_203(_) BOOST_PP_SEQ_SIZE_204 +# define BOOST_PP_SEQ_SIZE_204(_) BOOST_PP_SEQ_SIZE_205 +# define BOOST_PP_SEQ_SIZE_205(_) BOOST_PP_SEQ_SIZE_206 +# define BOOST_PP_SEQ_SIZE_206(_) BOOST_PP_SEQ_SIZE_207 +# define BOOST_PP_SEQ_SIZE_207(_) BOOST_PP_SEQ_SIZE_208 +# define BOOST_PP_SEQ_SIZE_208(_) BOOST_PP_SEQ_SIZE_209 +# define BOOST_PP_SEQ_SIZE_209(_) BOOST_PP_SEQ_SIZE_210 +# define BOOST_PP_SEQ_SIZE_210(_) BOOST_PP_SEQ_SIZE_211 +# define BOOST_PP_SEQ_SIZE_211(_) BOOST_PP_SEQ_SIZE_212 +# define BOOST_PP_SEQ_SIZE_212(_) BOOST_PP_SEQ_SIZE_213 +# define BOOST_PP_SEQ_SIZE_213(_) BOOST_PP_SEQ_SIZE_214 +# define BOOST_PP_SEQ_SIZE_214(_) BOOST_PP_SEQ_SIZE_215 +# define BOOST_PP_SEQ_SIZE_215(_) BOOST_PP_SEQ_SIZE_216 +# define BOOST_PP_SEQ_SIZE_216(_) BOOST_PP_SEQ_SIZE_217 +# define BOOST_PP_SEQ_SIZE_217(_) BOOST_PP_SEQ_SIZE_218 +# define BOOST_PP_SEQ_SIZE_218(_) BOOST_PP_SEQ_SIZE_219 +# define BOOST_PP_SEQ_SIZE_219(_) BOOST_PP_SEQ_SIZE_220 +# define BOOST_PP_SEQ_SIZE_220(_) BOOST_PP_SEQ_SIZE_221 +# define BOOST_PP_SEQ_SIZE_221(_) BOOST_PP_SEQ_SIZE_222 +# define BOOST_PP_SEQ_SIZE_222(_) BOOST_PP_SEQ_SIZE_223 +# define BOOST_PP_SEQ_SIZE_223(_) BOOST_PP_SEQ_SIZE_224 +# define BOOST_PP_SEQ_SIZE_224(_) BOOST_PP_SEQ_SIZE_225 +# define BOOST_PP_SEQ_SIZE_225(_) BOOST_PP_SEQ_SIZE_226 +# define BOOST_PP_SEQ_SIZE_226(_) BOOST_PP_SEQ_SIZE_227 +# define BOOST_PP_SEQ_SIZE_227(_) BOOST_PP_SEQ_SIZE_228 +# define BOOST_PP_SEQ_SIZE_228(_) BOOST_PP_SEQ_SIZE_229 +# define BOOST_PP_SEQ_SIZE_229(_) BOOST_PP_SEQ_SIZE_230 +# define BOOST_PP_SEQ_SIZE_230(_) BOOST_PP_SEQ_SIZE_231 +# define BOOST_PP_SEQ_SIZE_231(_) BOOST_PP_SEQ_SIZE_232 +# define BOOST_PP_SEQ_SIZE_232(_) BOOST_PP_SEQ_SIZE_233 +# define BOOST_PP_SEQ_SIZE_233(_) BOOST_PP_SEQ_SIZE_234 +# define BOOST_PP_SEQ_SIZE_234(_) BOOST_PP_SEQ_SIZE_235 +# define BOOST_PP_SEQ_SIZE_235(_) BOOST_PP_SEQ_SIZE_236 +# define BOOST_PP_SEQ_SIZE_236(_) BOOST_PP_SEQ_SIZE_237 +# define BOOST_PP_SEQ_SIZE_237(_) BOOST_PP_SEQ_SIZE_238 +# define BOOST_PP_SEQ_SIZE_238(_) BOOST_PP_SEQ_SIZE_239 +# define BOOST_PP_SEQ_SIZE_239(_) BOOST_PP_SEQ_SIZE_240 +# define BOOST_PP_SEQ_SIZE_240(_) BOOST_PP_SEQ_SIZE_241 +# define BOOST_PP_SEQ_SIZE_241(_) BOOST_PP_SEQ_SIZE_242 +# define BOOST_PP_SEQ_SIZE_242(_) BOOST_PP_SEQ_SIZE_243 +# define BOOST_PP_SEQ_SIZE_243(_) BOOST_PP_SEQ_SIZE_244 +# define BOOST_PP_SEQ_SIZE_244(_) BOOST_PP_SEQ_SIZE_245 +# define BOOST_PP_SEQ_SIZE_245(_) BOOST_PP_SEQ_SIZE_246 +# define BOOST_PP_SEQ_SIZE_246(_) BOOST_PP_SEQ_SIZE_247 +# define BOOST_PP_SEQ_SIZE_247(_) BOOST_PP_SEQ_SIZE_248 +# define BOOST_PP_SEQ_SIZE_248(_) BOOST_PP_SEQ_SIZE_249 +# define BOOST_PP_SEQ_SIZE_249(_) BOOST_PP_SEQ_SIZE_250 +# define BOOST_PP_SEQ_SIZE_250(_) BOOST_PP_SEQ_SIZE_251 +# define BOOST_PP_SEQ_SIZE_251(_) BOOST_PP_SEQ_SIZE_252 +# define BOOST_PP_SEQ_SIZE_252(_) BOOST_PP_SEQ_SIZE_253 +# define BOOST_PP_SEQ_SIZE_253(_) BOOST_PP_SEQ_SIZE_254 +# define BOOST_PP_SEQ_SIZE_254(_) BOOST_PP_SEQ_SIZE_255 +# define BOOST_PP_SEQ_SIZE_255(_) BOOST_PP_SEQ_SIZE_256 +# define BOOST_PP_SEQ_SIZE_256(_) BOOST_PP_SEQ_SIZE_257 +# +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_0 0 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_1 1 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_2 2 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_3 3 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_4 4 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_5 5 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_6 6 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_7 7 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_8 8 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_9 9 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_10 10 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_11 11 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_12 12 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_13 13 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_14 14 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_15 15 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_16 16 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_17 17 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_18 18 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_19 19 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_20 20 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_21 21 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_22 22 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_23 23 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_24 24 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_25 25 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_26 26 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_27 27 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_28 28 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_29 29 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_30 30 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_31 31 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_32 32 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_33 33 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_34 34 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_35 35 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_36 36 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_37 37 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_38 38 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_39 39 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_40 40 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_41 41 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_42 42 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_43 43 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_44 44 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_45 45 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_46 46 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_47 47 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_48 48 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_49 49 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_50 50 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_51 51 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_52 52 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_53 53 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_54 54 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_55 55 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_56 56 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_57 57 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_58 58 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_59 59 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_60 60 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_61 61 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_62 62 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_63 63 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_64 64 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_65 65 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_66 66 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_67 67 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_68 68 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_69 69 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_70 70 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_71 71 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_72 72 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_73 73 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_74 74 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_75 75 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_76 76 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_77 77 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_78 78 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_79 79 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_80 80 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_81 81 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_82 82 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_83 83 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_84 84 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_85 85 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_86 86 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_87 87 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_88 88 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_89 89 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_90 90 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_91 91 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_92 92 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_93 93 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_94 94 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_95 95 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_96 96 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_97 97 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_98 98 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_99 99 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_100 100 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_101 101 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_102 102 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_103 103 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_104 104 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_105 105 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_106 106 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_107 107 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_108 108 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_109 109 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_110 110 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_111 111 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_112 112 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_113 113 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_114 114 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_115 115 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_116 116 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_117 117 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_118 118 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_119 119 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_120 120 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_121 121 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_122 122 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_123 123 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_124 124 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_125 125 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_126 126 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_127 127 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_128 128 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_129 129 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_130 130 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_131 131 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_132 132 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_133 133 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_134 134 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_135 135 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_136 136 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_137 137 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_138 138 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_139 139 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_140 140 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_141 141 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_142 142 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_143 143 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_144 144 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_145 145 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_146 146 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_147 147 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_148 148 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_149 149 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_150 150 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_151 151 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_152 152 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_153 153 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_154 154 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_155 155 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_156 156 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_157 157 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_158 158 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_159 159 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_160 160 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_161 161 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_162 162 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_163 163 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_164 164 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_165 165 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_166 166 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_167 167 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_168 168 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_169 169 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_170 170 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_171 171 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_172 172 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_173 173 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_174 174 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_175 175 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_176 176 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_177 177 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_178 178 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_179 179 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_180 180 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_181 181 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_182 182 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_183 183 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_184 184 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_185 185 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_186 186 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_187 187 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_188 188 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_189 189 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_190 190 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_191 191 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_192 192 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_193 193 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_194 194 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_195 195 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_196 196 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_197 197 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_198 198 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_199 199 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_200 200 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_201 201 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_202 202 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_203 203 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_204 204 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_205 205 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_206 206 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_207 207 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_208 208 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_209 209 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_210 210 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_211 211 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_212 212 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_213 213 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_214 214 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_215 215 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_216 216 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_217 217 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_218 218 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_219 219 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_220 220 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_221 221 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_222 222 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_223 223 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_224 224 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_225 225 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_226 226 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_227 227 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_228 228 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_229 229 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_230 230 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_231 231 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_232 232 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_233 233 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_234 234 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_235 235 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_236 236 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_237 237 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_238 238 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_239 239 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_240 240 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_241 241 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_242 242 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_243 243 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_244 244 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_245 245 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_246 246 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_247 247 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_248 248 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_249 249 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_250 250 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_251 251 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_252 252 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_253 253 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_254 254 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_255 255 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_256 256 +# define BOOST_PP_SEQ_SIZE_BOOST_PP_SEQ_SIZE_257 257 +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/subseq.hpp b/plugin/wave/include/boost/preprocessor/seq/subseq.hpp new file mode 100644 index 0000000..fb242f1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/subseq.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_SUBSEQ_HPP +# define BOOST_PREPROCESSOR_SEQ_SUBSEQ_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_SUBSEQ */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_SUBSEQ(seq, i, len) BOOST_PP_SEQ_FIRST_N(len, BOOST_PP_SEQ_REST_N(i, seq)) +# else +# define BOOST_PP_SEQ_SUBSEQ(seq, i, len) BOOST_PP_SEQ_SUBSEQ_I(seq, i, len) +# define BOOST_PP_SEQ_SUBSEQ_I(seq, i, len) BOOST_PP_SEQ_FIRST_N(len, BOOST_PP_SEQ_REST_N(i, seq)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/to_array.hpp b/plugin/wave/include/boost/preprocessor/seq/to_array.hpp new file mode 100644 index 0000000..d8a8040 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/to_array.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_TO_ARRAY_HPP +# define BOOST_PREPROCESSOR_SEQ_TO_ARRAY_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_TO_ARRAY */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_TO_ARRAY(seq) (BOOST_PP_SEQ_SIZE(seq), (BOOST_PP_SEQ_ENUM(seq))) +# else +# define BOOST_PP_SEQ_TO_ARRAY(seq) BOOST_PP_SEQ_TO_ARRAY_I(seq) +# define BOOST_PP_SEQ_TO_ARRAY_I(seq) (BOOST_PP_SEQ_SIZE(seq), (BOOST_PP_SEQ_ENUM(seq))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/to_list.hpp b/plugin/wave/include/boost/preprocessor/seq/to_list.hpp new file mode 100644 index 0000000..fa0421b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/to_list.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_TO_LIST_HPP +# define BOOST_PREPROCESSOR_SEQ_TO_LIST_HPP +# +# include +# include +# include +# +# /* BOOST_PP_SEQ_TO_LIST */ +# +# define BOOST_PP_SEQ_TO_LIST(seq) BOOST_PP_SEQ_TO_LIST_I(BOOST_PP_SEQ_BINARY_TRANSFORM(seq)) +# define BOOST_PP_SEQ_TO_LIST_I(bseq) BOOST_PP_SEQ_TO_LIST_A bseq BOOST_PP_NIL BOOST_PP_SEQ_TO_LIST_B bseq +# define BOOST_PP_SEQ_TO_LIST_A(m, e) m(BOOST_PP_LPAREN() e BOOST_PP_COMMA() BOOST_PP_SEQ_TO_LIST_A_ID) +# define BOOST_PP_SEQ_TO_LIST_A_ID() BOOST_PP_SEQ_TO_LIST_A +# define BOOST_PP_SEQ_TO_LIST_B(m, e) m(BOOST_PP_RPAREN() BOOST_PP_SEQ_TO_LIST_B_ID) +# define BOOST_PP_SEQ_TO_LIST_B_ID() BOOST_PP_SEQ_TO_LIST_B +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/to_tuple.hpp b/plugin/wave/include/boost/preprocessor/seq/to_tuple.hpp new file mode 100644 index 0000000..ab38eb9 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/to_tuple.hpp @@ -0,0 +1,27 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_TO_TUPLE_HPP +# define BOOST_PREPROCESSOR_SEQ_TO_TUPLE_HPP +# +# include +# include +# +# /* BOOST_PP_SEQ_TO_TUPLE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_TO_TUPLE(seq) (BOOST_PP_SEQ_ENUM(seq)) +# else +# define BOOST_PP_SEQ_TO_TUPLE(seq) BOOST_PP_SEQ_TO_TUPLE_I(seq) +# define BOOST_PP_SEQ_TO_TUPLE_I(seq) (BOOST_PP_SEQ_ENUM(seq)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/transform.hpp b/plugin/wave/include/boost/preprocessor/seq/transform.hpp new file mode 100644 index 0000000..79d8108 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/transform.hpp @@ -0,0 +1,48 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_TRANSFORM_HPP +# define BOOST_PREPROCESSOR_SEQ_TRANSFORM_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_SEQ_TRANSFORM */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_TRANSFORM(op, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_TRANSFORM_O, (op, data, (nil)), seq))) +# else +# define BOOST_PP_SEQ_TRANSFORM(op, data, seq) BOOST_PP_SEQ_TRANSFORM_I(op, data, seq) +# define BOOST_PP_SEQ_TRANSFORM_I(op, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT(BOOST_PP_SEQ_TRANSFORM_O, (op, data, (nil)), seq))) +# endif +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT() +# define BOOST_PP_SEQ_TRANSFORM_O(s, state, elem) BOOST_PP_SEQ_TRANSFORM_O_IM(s, BOOST_PP_TUPLE_REM_3 state, elem) +# define BOOST_PP_SEQ_TRANSFORM_O_IM(s, im, elem) BOOST_PP_SEQ_TRANSFORM_O_I(s, im, elem) +# else +# define BOOST_PP_SEQ_TRANSFORM_O(s, state, elem) BOOST_PP_SEQ_TRANSFORM_O_I(s, BOOST_PP_TUPLE_ELEM(3, 0, state), BOOST_PP_TUPLE_ELEM(3, 1, state), BOOST_PP_TUPLE_ELEM(3, 2, state), elem) +# endif +# +# define BOOST_PP_SEQ_TRANSFORM_O_I(s, op, data, res, elem) (op, data, res (op(s, data, elem))) +# +# /* BOOST_PP_SEQ_TRANSFORM_S */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_SEQ_TRANSFORM_S(s, op, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_TRANSFORM_O, (op, data, (nil)), seq))) +# else +# define BOOST_PP_SEQ_TRANSFORM_S(s, op, data, seq) BOOST_PP_SEQ_TRANSFORM_S_I(s, op, data, seq) +# define BOOST_PP_SEQ_TRANSFORM_S_I(s, op, data, seq) BOOST_PP_SEQ_TAIL(BOOST_PP_TUPLE_ELEM(3, 2, BOOST_PP_SEQ_FOLD_LEFT_ ## s(BOOST_PP_SEQ_TRANSFORM_O, (op, data, (nil)), seq))) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/seq/variadic_seq_to_seq.hpp b/plugin/wave/include/boost/preprocessor/seq/variadic_seq_to_seq.hpp new file mode 100644 index 0000000..f94a2bf --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/seq/variadic_seq_to_seq.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2012. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SEQ_VARIADIC_SEQ_TO_SEQ_HPP +# define BOOST_PREPROCESSOR_SEQ_VARIADIC_SEQ_TO_SEQ_HPP +# +# include +# include +# +# /* BOOST_PP_VARIADIC_SEQ_TO_SEQ */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_VARIADIC_SEQ_TO_SEQ(vseq) BOOST_PP_CAT(BOOST_PP_VARIADIC_SEQ_TO_SEQ_A vseq, 0) +# define BOOST_PP_VARIADIC_SEQ_TO_SEQ_A(...) ((__VA_ARGS__)) BOOST_PP_VARIADIC_SEQ_TO_SEQ_B +# define BOOST_PP_VARIADIC_SEQ_TO_SEQ_B(...) ((__VA_ARGS__)) BOOST_PP_VARIADIC_SEQ_TO_SEQ_A +# define BOOST_PP_VARIADIC_SEQ_TO_SEQ_A0 +# define BOOST_PP_VARIADIC_SEQ_TO_SEQ_B0 +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot.hpp b/plugin/wave/include/boost/preprocessor/slot.hpp new file mode 100644 index 0000000..fb3c9b0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SLOT_HPP +# define BOOST_PREPROCESSOR_SLOT_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/counter.hpp b/plugin/wave/include/boost/preprocessor/slot/counter.hpp new file mode 100644 index 0000000..d257a64 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/counter.hpp @@ -0,0 +1,25 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2005. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SLOT_COUNTER_HPP +# define BOOST_PREPROCESSOR_SLOT_COUNTER_HPP +# +# include +# +# /* BOOST_PP_COUNTER */ +# +# define BOOST_PP_COUNTER 0 +# +# /* BOOST_PP_UPDATE_COUNTER */ +# +# define BOOST_PP_UPDATE_COUNTER() +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/counter.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/counter.hpp new file mode 100644 index 0000000..a1c0df1 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/counter.hpp @@ -0,0 +1,269 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2005. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# define BOOST_PP_VALUE BOOST_PP_COUNTER + 1 +# +# include +# +# undef BOOST_PP_COUNTER +# +# undef BOOST_PP_COUNTER_DIGIT_1 +# undef BOOST_PP_COUNTER_DIGIT_2 +# undef BOOST_PP_COUNTER_DIGIT_3 +# undef BOOST_PP_COUNTER_DIGIT_4 +# undef BOOST_PP_COUNTER_DIGIT_5 +# undef BOOST_PP_COUNTER_DIGIT_6 +# undef BOOST_PP_COUNTER_DIGIT_7 +# undef BOOST_PP_COUNTER_DIGIT_8 +# undef BOOST_PP_COUNTER_DIGIT_9 +# undef BOOST_PP_COUNTER_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_COUNTER_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_COUNTER_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_COUNTER_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_COUNTER_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_COUNTER_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_COUNTER_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_COUNTER_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_COUNTER_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_COUNTER_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_COUNTER_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_COUNTER_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_COUNTER_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_COUNTER_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_COUNTER_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_COUNTER_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_COUNTER_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_COUNTER_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_COUNTER_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_COUNTER_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_COUNTER_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_COUNTER_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_COUNTER_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_COUNTER_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_COUNTER_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_COUNTER_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_COUNTER_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_COUNTER_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_COUNTER_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_COUNTER_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_COUNTER_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_COUNTER_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_COUNTER_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_COUNTER_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_COUNTER_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_COUNTER_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_COUNTER_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_COUNTER_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_COUNTER_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_COUNTER_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_COUNTER_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_COUNTER_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_COUNTER_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_COUNTER_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_COUNTER_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_COUNTER_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_COUNTER_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_COUNTER_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_COUNTER_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_COUNTER_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_COUNTER_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_COUNTER_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_COUNTER_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_COUNTER_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_COUNTER_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_COUNTER_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_COUNTER_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_COUNTER_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_COUNTER_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_COUNTER_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_COUNTER_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_COUNTER_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_COUNTER_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_COUNTER_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_COUNTER_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_COUNTER_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_COUNTER_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_COUNTER_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_COUNTER_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_COUNTER_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_COUNTER_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_COUNTER_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_COUNTER_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_COUNTER_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_COUNTER_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_COUNTER_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_COUNTER_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_COUNTER_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_COUNTER_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_COUNTER_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_COUNTER_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_COUNTER_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_COUNTER_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_COUNTER_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_COUNTER_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_COUNTER_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_COUNTER_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_COUNTER_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_COUNTER_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_COUNTER_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_COUNTER_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_COUNTER_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_COUNTER_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_COUNTER_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_COUNTER_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_COUNTER_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_COUNTER_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_COUNTER_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_COUNTER_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_COUNTER_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_COUNTER_DIGIT_1 9 +# endif +# +# if BOOST_PP_COUNTER_DIGIT_10 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_10(BOOST_PP_COUNTER_DIGIT_10, BOOST_PP_COUNTER_DIGIT_9, BOOST_PP_COUNTER_DIGIT_8, BOOST_PP_COUNTER_DIGIT_7, BOOST_PP_COUNTER_DIGIT_6, BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_9 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_9(BOOST_PP_COUNTER_DIGIT_9, BOOST_PP_COUNTER_DIGIT_8, BOOST_PP_COUNTER_DIGIT_7, BOOST_PP_COUNTER_DIGIT_6, BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_8 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_8(BOOST_PP_COUNTER_DIGIT_8, BOOST_PP_COUNTER_DIGIT_7, BOOST_PP_COUNTER_DIGIT_6, BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_7 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_7(BOOST_PP_COUNTER_DIGIT_7, BOOST_PP_COUNTER_DIGIT_6, BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_6 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_6(BOOST_PP_COUNTER_DIGIT_6, BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_5 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_5(BOOST_PP_COUNTER_DIGIT_5, BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_4 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_4(BOOST_PP_COUNTER_DIGIT_4, BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_3 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_3(BOOST_PP_COUNTER_DIGIT_3, BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# elif BOOST_PP_COUNTER_DIGIT_2 +# define BOOST_PP_COUNTER BOOST_PP_SLOT_CC_2(BOOST_PP_COUNTER_DIGIT_2, BOOST_PP_COUNTER_DIGIT_1) +# else +# define BOOST_PP_COUNTER BOOST_PP_COUNTER_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/def.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/def.hpp new file mode 100644 index 0000000..885099e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/def.hpp @@ -0,0 +1,49 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SLOT_DETAIL_DEF_HPP +# define BOOST_PREPROCESSOR_SLOT_DETAIL_DEF_HPP +# +# /* BOOST_PP_SLOT_OFFSET_x */ +# +# define BOOST_PP_SLOT_OFFSET_10(x) (x) % 1000000000UL +# define BOOST_PP_SLOT_OFFSET_9(x) BOOST_PP_SLOT_OFFSET_10(x) % 100000000UL +# define BOOST_PP_SLOT_OFFSET_8(x) BOOST_PP_SLOT_OFFSET_9(x) % 10000000UL +# define BOOST_PP_SLOT_OFFSET_7(x) BOOST_PP_SLOT_OFFSET_8(x) % 1000000UL +# define BOOST_PP_SLOT_OFFSET_6(x) BOOST_PP_SLOT_OFFSET_7(x) % 100000UL +# define BOOST_PP_SLOT_OFFSET_5(x) BOOST_PP_SLOT_OFFSET_6(x) % 10000UL +# define BOOST_PP_SLOT_OFFSET_4(x) BOOST_PP_SLOT_OFFSET_5(x) % 1000UL +# define BOOST_PP_SLOT_OFFSET_3(x) BOOST_PP_SLOT_OFFSET_4(x) % 100UL +# define BOOST_PP_SLOT_OFFSET_2(x) BOOST_PP_SLOT_OFFSET_3(x) % 10UL +# +# /* BOOST_PP_SLOT_CC_x */ +# +# define BOOST_PP_SLOT_CC_2(a, b) BOOST_PP_SLOT_CC_2_D(a, b) +# define BOOST_PP_SLOT_CC_3(a, b, c) BOOST_PP_SLOT_CC_3_D(a, b, c) +# define BOOST_PP_SLOT_CC_4(a, b, c, d) BOOST_PP_SLOT_CC_4_D(a, b, c, d) +# define BOOST_PP_SLOT_CC_5(a, b, c, d, e) BOOST_PP_SLOT_CC_5_D(a, b, c, d, e) +# define BOOST_PP_SLOT_CC_6(a, b, c, d, e, f) BOOST_PP_SLOT_CC_6_D(a, b, c, d, e, f) +# define BOOST_PP_SLOT_CC_7(a, b, c, d, e, f, g) BOOST_PP_SLOT_CC_7_D(a, b, c, d, e, f, g) +# define BOOST_PP_SLOT_CC_8(a, b, c, d, e, f, g, h) BOOST_PP_SLOT_CC_8_D(a, b, c, d, e, f, g, h) +# define BOOST_PP_SLOT_CC_9(a, b, c, d, e, f, g, h, i) BOOST_PP_SLOT_CC_9_D(a, b, c, d, e, f, g, h, i) +# define BOOST_PP_SLOT_CC_10(a, b, c, d, e, f, g, h, i, j) BOOST_PP_SLOT_CC_10_D(a, b, c, d, e, f, g, h, i, j) +# +# define BOOST_PP_SLOT_CC_2_D(a, b) a ## b +# define BOOST_PP_SLOT_CC_3_D(a, b, c) a ## b ## c +# define BOOST_PP_SLOT_CC_4_D(a, b, c, d) a ## b ## c ## d +# define BOOST_PP_SLOT_CC_5_D(a, b, c, d, e) a ## b ## c ## d ## e +# define BOOST_PP_SLOT_CC_6_D(a, b, c, d, e, f) a ## b ## c ## d ## e ## f +# define BOOST_PP_SLOT_CC_7_D(a, b, c, d, e, f, g) a ## b ## c ## d ## e ## f ## g +# define BOOST_PP_SLOT_CC_8_D(a, b, c, d, e, f, g, h) a ## b ## c ## d ## e ## f ## g ## h +# define BOOST_PP_SLOT_CC_9_D(a, b, c, d, e, f, g, h, i) a ## b ## c ## d ## e ## f ## g ## h ## i +# define BOOST_PP_SLOT_CC_10_D(a, b, c, d, e, f, g, h, i, j) a ## b ## c ## d ## e ## f ## g ## h ## i ## j +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/shared.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/shared.hpp new file mode 100644 index 0000000..c97ac54 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/shared.hpp @@ -0,0 +1,247 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PP_VALUE +# error BOOST_PP_ERROR: BOOST_PP_VALUE is not defined +# endif +# +# undef BOOST_PP_SLOT_TEMP_1 +# undef BOOST_PP_SLOT_TEMP_2 +# undef BOOST_PP_SLOT_TEMP_3 +# undef BOOST_PP_SLOT_TEMP_4 +# undef BOOST_PP_SLOT_TEMP_5 +# undef BOOST_PP_SLOT_TEMP_6 +# undef BOOST_PP_SLOT_TEMP_7 +# undef BOOST_PP_SLOT_TEMP_8 +# undef BOOST_PP_SLOT_TEMP_9 +# undef BOOST_PP_SLOT_TEMP_10 +# +# if (BOOST_PP_VALUE) / 1000000000UL == 0 +# define BOOST_PP_SLOT_TEMP_10 0 +# elif (BOOST_PP_VALUE) / 1000000000UL == 1 +# define BOOST_PP_SLOT_TEMP_10 1 +# elif (BOOST_PP_VALUE) / 1000000000UL == 2 +# define BOOST_PP_SLOT_TEMP_10 2 +# elif (BOOST_PP_VALUE) / 1000000000UL == 3 +# define BOOST_PP_SLOT_TEMP_10 3 +# elif (BOOST_PP_VALUE) / 1000000000UL == 4 +# define BOOST_PP_SLOT_TEMP_10 4 +# elif (BOOST_PP_VALUE) / 1000000000UL == 5 +# define BOOST_PP_SLOT_TEMP_10 5 +# elif (BOOST_PP_VALUE) / 1000000000UL == 6 +# define BOOST_PP_SLOT_TEMP_10 6 +# elif (BOOST_PP_VALUE) / 1000000000UL == 7 +# define BOOST_PP_SLOT_TEMP_10 7 +# elif (BOOST_PP_VALUE) / 1000000000UL == 8 +# define BOOST_PP_SLOT_TEMP_10 8 +# elif (BOOST_PP_VALUE) / 1000000000UL == 9 +# define BOOST_PP_SLOT_TEMP_10 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 0 +# define BOOST_PP_SLOT_TEMP_9 0 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 1 +# define BOOST_PP_SLOT_TEMP_9 1 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 2 +# define BOOST_PP_SLOT_TEMP_9 2 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 3 +# define BOOST_PP_SLOT_TEMP_9 3 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 4 +# define BOOST_PP_SLOT_TEMP_9 4 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 5 +# define BOOST_PP_SLOT_TEMP_9 5 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 6 +# define BOOST_PP_SLOT_TEMP_9 6 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 7 +# define BOOST_PP_SLOT_TEMP_9 7 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 8 +# define BOOST_PP_SLOT_TEMP_9 8 +# elif BOOST_PP_SLOT_OFFSET_10(BOOST_PP_VALUE) / 100000000UL == 9 +# define BOOST_PP_SLOT_TEMP_9 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 0 +# define BOOST_PP_SLOT_TEMP_8 0 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 1 +# define BOOST_PP_SLOT_TEMP_8 1 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 2 +# define BOOST_PP_SLOT_TEMP_8 2 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 3 +# define BOOST_PP_SLOT_TEMP_8 3 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 4 +# define BOOST_PP_SLOT_TEMP_8 4 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 5 +# define BOOST_PP_SLOT_TEMP_8 5 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 6 +# define BOOST_PP_SLOT_TEMP_8 6 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 7 +# define BOOST_PP_SLOT_TEMP_8 7 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 8 +# define BOOST_PP_SLOT_TEMP_8 8 +# elif BOOST_PP_SLOT_OFFSET_9(BOOST_PP_VALUE) / 10000000UL == 9 +# define BOOST_PP_SLOT_TEMP_8 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 0 +# define BOOST_PP_SLOT_TEMP_7 0 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 1 +# define BOOST_PP_SLOT_TEMP_7 1 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 2 +# define BOOST_PP_SLOT_TEMP_7 2 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 3 +# define BOOST_PP_SLOT_TEMP_7 3 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 4 +# define BOOST_PP_SLOT_TEMP_7 4 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 5 +# define BOOST_PP_SLOT_TEMP_7 5 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 6 +# define BOOST_PP_SLOT_TEMP_7 6 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 7 +# define BOOST_PP_SLOT_TEMP_7 7 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 8 +# define BOOST_PP_SLOT_TEMP_7 8 +# elif BOOST_PP_SLOT_OFFSET_8(BOOST_PP_VALUE) / 1000000UL == 9 +# define BOOST_PP_SLOT_TEMP_7 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 0 +# define BOOST_PP_SLOT_TEMP_6 0 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 1 +# define BOOST_PP_SLOT_TEMP_6 1 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 2 +# define BOOST_PP_SLOT_TEMP_6 2 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 3 +# define BOOST_PP_SLOT_TEMP_6 3 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 4 +# define BOOST_PP_SLOT_TEMP_6 4 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 5 +# define BOOST_PP_SLOT_TEMP_6 5 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 6 +# define BOOST_PP_SLOT_TEMP_6 6 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 7 +# define BOOST_PP_SLOT_TEMP_6 7 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 8 +# define BOOST_PP_SLOT_TEMP_6 8 +# elif BOOST_PP_SLOT_OFFSET_7(BOOST_PP_VALUE) / 100000UL == 9 +# define BOOST_PP_SLOT_TEMP_6 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 0 +# define BOOST_PP_SLOT_TEMP_5 0 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 1 +# define BOOST_PP_SLOT_TEMP_5 1 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 2 +# define BOOST_PP_SLOT_TEMP_5 2 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 3 +# define BOOST_PP_SLOT_TEMP_5 3 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 4 +# define BOOST_PP_SLOT_TEMP_5 4 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 5 +# define BOOST_PP_SLOT_TEMP_5 5 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 6 +# define BOOST_PP_SLOT_TEMP_5 6 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 7 +# define BOOST_PP_SLOT_TEMP_5 7 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 8 +# define BOOST_PP_SLOT_TEMP_5 8 +# elif BOOST_PP_SLOT_OFFSET_6(BOOST_PP_VALUE) / 10000UL == 9 +# define BOOST_PP_SLOT_TEMP_5 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 0 +# define BOOST_PP_SLOT_TEMP_4 0 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 1 +# define BOOST_PP_SLOT_TEMP_4 1 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 2 +# define BOOST_PP_SLOT_TEMP_4 2 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 3 +# define BOOST_PP_SLOT_TEMP_4 3 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 4 +# define BOOST_PP_SLOT_TEMP_4 4 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 5 +# define BOOST_PP_SLOT_TEMP_4 5 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 6 +# define BOOST_PP_SLOT_TEMP_4 6 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 7 +# define BOOST_PP_SLOT_TEMP_4 7 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 8 +# define BOOST_PP_SLOT_TEMP_4 8 +# elif BOOST_PP_SLOT_OFFSET_5(BOOST_PP_VALUE) / 1000UL == 9 +# define BOOST_PP_SLOT_TEMP_4 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 0 +# define BOOST_PP_SLOT_TEMP_3 0 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 1 +# define BOOST_PP_SLOT_TEMP_3 1 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 2 +# define BOOST_PP_SLOT_TEMP_3 2 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 3 +# define BOOST_PP_SLOT_TEMP_3 3 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 4 +# define BOOST_PP_SLOT_TEMP_3 4 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 5 +# define BOOST_PP_SLOT_TEMP_3 5 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 6 +# define BOOST_PP_SLOT_TEMP_3 6 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 7 +# define BOOST_PP_SLOT_TEMP_3 7 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 8 +# define BOOST_PP_SLOT_TEMP_3 8 +# elif BOOST_PP_SLOT_OFFSET_4(BOOST_PP_VALUE) / 100UL == 9 +# define BOOST_PP_SLOT_TEMP_3 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 0 +# define BOOST_PP_SLOT_TEMP_2 0 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 1 +# define BOOST_PP_SLOT_TEMP_2 1 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 2 +# define BOOST_PP_SLOT_TEMP_2 2 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 3 +# define BOOST_PP_SLOT_TEMP_2 3 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 4 +# define BOOST_PP_SLOT_TEMP_2 4 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 5 +# define BOOST_PP_SLOT_TEMP_2 5 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 6 +# define BOOST_PP_SLOT_TEMP_2 6 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 7 +# define BOOST_PP_SLOT_TEMP_2 7 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 8 +# define BOOST_PP_SLOT_TEMP_2 8 +# elif BOOST_PP_SLOT_OFFSET_3(BOOST_PP_VALUE) / 10UL == 9 +# define BOOST_PP_SLOT_TEMP_2 9 +# endif +# +# if BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 0 +# define BOOST_PP_SLOT_TEMP_1 0 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 1 +# define BOOST_PP_SLOT_TEMP_1 1 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 2 +# define BOOST_PP_SLOT_TEMP_1 2 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 3 +# define BOOST_PP_SLOT_TEMP_1 3 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 4 +# define BOOST_PP_SLOT_TEMP_1 4 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 5 +# define BOOST_PP_SLOT_TEMP_1 5 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 6 +# define BOOST_PP_SLOT_TEMP_1 6 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 7 +# define BOOST_PP_SLOT_TEMP_1 7 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 8 +# define BOOST_PP_SLOT_TEMP_1 8 +# elif BOOST_PP_SLOT_OFFSET_2(BOOST_PP_VALUE) == 9 +# define BOOST_PP_SLOT_TEMP_1 9 +# endif +# +# undef BOOST_PP_VALUE diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/slot1.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/slot1.hpp new file mode 100644 index 0000000..b22748e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/slot1.hpp @@ -0,0 +1,267 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_SLOT_1 +# +# undef BOOST_PP_SLOT_1_DIGIT_1 +# undef BOOST_PP_SLOT_1_DIGIT_2 +# undef BOOST_PP_SLOT_1_DIGIT_3 +# undef BOOST_PP_SLOT_1_DIGIT_4 +# undef BOOST_PP_SLOT_1_DIGIT_5 +# undef BOOST_PP_SLOT_1_DIGIT_6 +# undef BOOST_PP_SLOT_1_DIGIT_7 +# undef BOOST_PP_SLOT_1_DIGIT_8 +# undef BOOST_PP_SLOT_1_DIGIT_9 +# undef BOOST_PP_SLOT_1_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_SLOT_1_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_SLOT_1_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_SLOT_1_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_SLOT_1_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_SLOT_1_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_SLOT_1_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_SLOT_1_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_SLOT_1_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_SLOT_1_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_SLOT_1_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_SLOT_1_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_SLOT_1_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_SLOT_1_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_SLOT_1_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_SLOT_1_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_SLOT_1_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_SLOT_1_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_SLOT_1_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_SLOT_1_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_SLOT_1_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_SLOT_1_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_SLOT_1_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_SLOT_1_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_SLOT_1_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_SLOT_1_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_SLOT_1_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_SLOT_1_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_SLOT_1_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_SLOT_1_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_SLOT_1_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_SLOT_1_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_SLOT_1_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_SLOT_1_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_SLOT_1_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_SLOT_1_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_SLOT_1_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_SLOT_1_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_SLOT_1_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_SLOT_1_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_SLOT_1_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_SLOT_1_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_SLOT_1_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_SLOT_1_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_SLOT_1_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_SLOT_1_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_SLOT_1_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_SLOT_1_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_SLOT_1_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_SLOT_1_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_SLOT_1_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_SLOT_1_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_SLOT_1_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_SLOT_1_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_SLOT_1_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_SLOT_1_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_SLOT_1_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_SLOT_1_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_SLOT_1_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_SLOT_1_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_SLOT_1_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_SLOT_1_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_SLOT_1_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_SLOT_1_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_SLOT_1_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_SLOT_1_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_SLOT_1_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_SLOT_1_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_SLOT_1_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_SLOT_1_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_SLOT_1_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_SLOT_1_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_SLOT_1_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_SLOT_1_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_SLOT_1_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_SLOT_1_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_SLOT_1_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_SLOT_1_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_SLOT_1_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_SLOT_1_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_SLOT_1_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_SLOT_1_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_SLOT_1_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_SLOT_1_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_SLOT_1_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_SLOT_1_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_SLOT_1_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_SLOT_1_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_SLOT_1_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_SLOT_1_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_SLOT_1_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_SLOT_1_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_SLOT_1_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_SLOT_1_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_SLOT_1_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_SLOT_1_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_SLOT_1_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_SLOT_1_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_SLOT_1_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_SLOT_1_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_SLOT_1_DIGIT_1 9 +# endif +# +# if BOOST_PP_SLOT_1_DIGIT_10 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_1_DIGIT_10, BOOST_PP_SLOT_1_DIGIT_9, BOOST_PP_SLOT_1_DIGIT_8, BOOST_PP_SLOT_1_DIGIT_7, BOOST_PP_SLOT_1_DIGIT_6, BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_9 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_1_DIGIT_9, BOOST_PP_SLOT_1_DIGIT_8, BOOST_PP_SLOT_1_DIGIT_7, BOOST_PP_SLOT_1_DIGIT_6, BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_8 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_1_DIGIT_8, BOOST_PP_SLOT_1_DIGIT_7, BOOST_PP_SLOT_1_DIGIT_6, BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_7 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_1_DIGIT_7, BOOST_PP_SLOT_1_DIGIT_6, BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_6 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_1_DIGIT_6, BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_5 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_1_DIGIT_5, BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_4 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_1_DIGIT_4, BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_3 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_1_DIGIT_3, BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# elif BOOST_PP_SLOT_1_DIGIT_2 +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_1_DIGIT_2, BOOST_PP_SLOT_1_DIGIT_1) +# else +# define BOOST_PP_SLOT_1() BOOST_PP_SLOT_1_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/slot2.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/slot2.hpp new file mode 100644 index 0000000..5d5258c --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/slot2.hpp @@ -0,0 +1,267 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_SLOT_2 +# +# undef BOOST_PP_SLOT_2_DIGIT_1 +# undef BOOST_PP_SLOT_2_DIGIT_2 +# undef BOOST_PP_SLOT_2_DIGIT_3 +# undef BOOST_PP_SLOT_2_DIGIT_4 +# undef BOOST_PP_SLOT_2_DIGIT_5 +# undef BOOST_PP_SLOT_2_DIGIT_6 +# undef BOOST_PP_SLOT_2_DIGIT_7 +# undef BOOST_PP_SLOT_2_DIGIT_8 +# undef BOOST_PP_SLOT_2_DIGIT_9 +# undef BOOST_PP_SLOT_2_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_SLOT_2_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_SLOT_2_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_SLOT_2_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_SLOT_2_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_SLOT_2_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_SLOT_2_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_SLOT_2_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_SLOT_2_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_SLOT_2_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_SLOT_2_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_SLOT_2_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_SLOT_2_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_SLOT_2_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_SLOT_2_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_SLOT_2_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_SLOT_2_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_SLOT_2_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_SLOT_2_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_SLOT_2_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_SLOT_2_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_SLOT_2_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_SLOT_2_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_SLOT_2_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_SLOT_2_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_SLOT_2_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_SLOT_2_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_SLOT_2_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_SLOT_2_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_SLOT_2_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_SLOT_2_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_SLOT_2_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_SLOT_2_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_SLOT_2_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_SLOT_2_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_SLOT_2_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_SLOT_2_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_SLOT_2_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_SLOT_2_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_SLOT_2_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_SLOT_2_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_SLOT_2_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_SLOT_2_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_SLOT_2_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_SLOT_2_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_SLOT_2_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_SLOT_2_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_SLOT_2_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_SLOT_2_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_SLOT_2_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_SLOT_2_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_SLOT_2_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_SLOT_2_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_SLOT_2_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_SLOT_2_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_SLOT_2_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_SLOT_2_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_SLOT_2_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_SLOT_2_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_SLOT_2_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_SLOT_2_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_SLOT_2_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_SLOT_2_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_SLOT_2_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_SLOT_2_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_SLOT_2_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_SLOT_2_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_SLOT_2_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_SLOT_2_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_SLOT_2_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_SLOT_2_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_SLOT_2_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_SLOT_2_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_SLOT_2_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_SLOT_2_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_SLOT_2_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_SLOT_2_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_SLOT_2_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_SLOT_2_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_SLOT_2_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_SLOT_2_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_SLOT_2_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_SLOT_2_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_SLOT_2_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_SLOT_2_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_SLOT_2_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_SLOT_2_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_SLOT_2_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_SLOT_2_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_SLOT_2_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_SLOT_2_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_SLOT_2_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_SLOT_2_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_SLOT_2_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_SLOT_2_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_SLOT_2_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_SLOT_2_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_SLOT_2_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_SLOT_2_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_SLOT_2_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_SLOT_2_DIGIT_1 9 +# endif +# +# if BOOST_PP_SLOT_2_DIGIT_10 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_2_DIGIT_10, BOOST_PP_SLOT_2_DIGIT_9, BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_9 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_2_DIGIT_9, BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_8 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_2_DIGIT_8, BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_7 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_2_DIGIT_7, BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_6 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_2_DIGIT_6, BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_5 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_2_DIGIT_5, BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_4 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_2_DIGIT_4, BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_3 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_2_DIGIT_3, BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# elif BOOST_PP_SLOT_2_DIGIT_2 +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_2_DIGIT_2, BOOST_PP_SLOT_2_DIGIT_1) +# else +# define BOOST_PP_SLOT_2() BOOST_PP_SLOT_2_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/slot3.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/slot3.hpp new file mode 100644 index 0000000..005cf21 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/slot3.hpp @@ -0,0 +1,267 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_SLOT_3 +# +# undef BOOST_PP_SLOT_3_DIGIT_1 +# undef BOOST_PP_SLOT_3_DIGIT_2 +# undef BOOST_PP_SLOT_3_DIGIT_3 +# undef BOOST_PP_SLOT_3_DIGIT_4 +# undef BOOST_PP_SLOT_3_DIGIT_5 +# undef BOOST_PP_SLOT_3_DIGIT_6 +# undef BOOST_PP_SLOT_3_DIGIT_7 +# undef BOOST_PP_SLOT_3_DIGIT_8 +# undef BOOST_PP_SLOT_3_DIGIT_9 +# undef BOOST_PP_SLOT_3_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_SLOT_3_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_SLOT_3_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_SLOT_3_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_SLOT_3_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_SLOT_3_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_SLOT_3_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_SLOT_3_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_SLOT_3_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_SLOT_3_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_SLOT_3_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_SLOT_3_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_SLOT_3_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_SLOT_3_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_SLOT_3_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_SLOT_3_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_SLOT_3_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_SLOT_3_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_SLOT_3_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_SLOT_3_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_SLOT_3_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_SLOT_3_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_SLOT_3_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_SLOT_3_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_SLOT_3_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_SLOT_3_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_SLOT_3_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_SLOT_3_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_SLOT_3_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_SLOT_3_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_SLOT_3_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_SLOT_3_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_SLOT_3_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_SLOT_3_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_SLOT_3_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_SLOT_3_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_SLOT_3_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_SLOT_3_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_SLOT_3_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_SLOT_3_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_SLOT_3_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_SLOT_3_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_SLOT_3_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_SLOT_3_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_SLOT_3_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_SLOT_3_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_SLOT_3_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_SLOT_3_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_SLOT_3_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_SLOT_3_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_SLOT_3_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_SLOT_3_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_SLOT_3_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_SLOT_3_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_SLOT_3_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_SLOT_3_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_SLOT_3_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_SLOT_3_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_SLOT_3_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_SLOT_3_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_SLOT_3_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_SLOT_3_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_SLOT_3_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_SLOT_3_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_SLOT_3_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_SLOT_3_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_SLOT_3_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_SLOT_3_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_SLOT_3_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_SLOT_3_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_SLOT_3_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_SLOT_3_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_SLOT_3_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_SLOT_3_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_SLOT_3_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_SLOT_3_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_SLOT_3_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_SLOT_3_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_SLOT_3_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_SLOT_3_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_SLOT_3_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_SLOT_3_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_SLOT_3_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_SLOT_3_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_SLOT_3_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_SLOT_3_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_SLOT_3_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_SLOT_3_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_SLOT_3_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_SLOT_3_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_SLOT_3_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_SLOT_3_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_SLOT_3_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_SLOT_3_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_SLOT_3_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_SLOT_3_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_SLOT_3_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_SLOT_3_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_SLOT_3_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_SLOT_3_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_SLOT_3_DIGIT_1 9 +# endif +# +# if BOOST_PP_SLOT_3_DIGIT_10 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_3_DIGIT_10, BOOST_PP_SLOT_3_DIGIT_9, BOOST_PP_SLOT_3_DIGIT_8, BOOST_PP_SLOT_3_DIGIT_7, BOOST_PP_SLOT_3_DIGIT_6, BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_9 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_3_DIGIT_9, BOOST_PP_SLOT_3_DIGIT_8, BOOST_PP_SLOT_3_DIGIT_7, BOOST_PP_SLOT_3_DIGIT_6, BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_8 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_3_DIGIT_8, BOOST_PP_SLOT_3_DIGIT_7, BOOST_PP_SLOT_3_DIGIT_6, BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_7 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_3_DIGIT_7, BOOST_PP_SLOT_3_DIGIT_6, BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_6 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_3_DIGIT_6, BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_5 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_3_DIGIT_5, BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_4 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_3_DIGIT_4, BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_3 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_3_DIGIT_3, BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# elif BOOST_PP_SLOT_3_DIGIT_2 +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_3_DIGIT_2, BOOST_PP_SLOT_3_DIGIT_1) +# else +# define BOOST_PP_SLOT_3() BOOST_PP_SLOT_3_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/slot4.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/slot4.hpp new file mode 100644 index 0000000..9aa4d8a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/slot4.hpp @@ -0,0 +1,267 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_SLOT_4 +# +# undef BOOST_PP_SLOT_4_DIGIT_1 +# undef BOOST_PP_SLOT_4_DIGIT_2 +# undef BOOST_PP_SLOT_4_DIGIT_3 +# undef BOOST_PP_SLOT_4_DIGIT_4 +# undef BOOST_PP_SLOT_4_DIGIT_5 +# undef BOOST_PP_SLOT_4_DIGIT_6 +# undef BOOST_PP_SLOT_4_DIGIT_7 +# undef BOOST_PP_SLOT_4_DIGIT_8 +# undef BOOST_PP_SLOT_4_DIGIT_9 +# undef BOOST_PP_SLOT_4_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_SLOT_4_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_SLOT_4_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_SLOT_4_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_SLOT_4_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_SLOT_4_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_SLOT_4_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_SLOT_4_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_SLOT_4_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_SLOT_4_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_SLOT_4_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_SLOT_4_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_SLOT_4_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_SLOT_4_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_SLOT_4_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_SLOT_4_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_SLOT_4_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_SLOT_4_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_SLOT_4_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_SLOT_4_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_SLOT_4_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_SLOT_4_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_SLOT_4_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_SLOT_4_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_SLOT_4_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_SLOT_4_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_SLOT_4_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_SLOT_4_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_SLOT_4_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_SLOT_4_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_SLOT_4_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_SLOT_4_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_SLOT_4_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_SLOT_4_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_SLOT_4_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_SLOT_4_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_SLOT_4_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_SLOT_4_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_SLOT_4_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_SLOT_4_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_SLOT_4_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_SLOT_4_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_SLOT_4_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_SLOT_4_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_SLOT_4_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_SLOT_4_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_SLOT_4_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_SLOT_4_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_SLOT_4_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_SLOT_4_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_SLOT_4_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_SLOT_4_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_SLOT_4_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_SLOT_4_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_SLOT_4_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_SLOT_4_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_SLOT_4_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_SLOT_4_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_SLOT_4_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_SLOT_4_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_SLOT_4_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_SLOT_4_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_SLOT_4_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_SLOT_4_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_SLOT_4_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_SLOT_4_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_SLOT_4_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_SLOT_4_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_SLOT_4_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_SLOT_4_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_SLOT_4_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_SLOT_4_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_SLOT_4_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_SLOT_4_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_SLOT_4_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_SLOT_4_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_SLOT_4_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_SLOT_4_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_SLOT_4_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_SLOT_4_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_SLOT_4_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_SLOT_4_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_SLOT_4_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_SLOT_4_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_SLOT_4_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_SLOT_4_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_SLOT_4_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_SLOT_4_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_SLOT_4_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_SLOT_4_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_SLOT_4_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_SLOT_4_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_SLOT_4_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_SLOT_4_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_SLOT_4_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_SLOT_4_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_SLOT_4_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_SLOT_4_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_SLOT_4_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_SLOT_4_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_SLOT_4_DIGIT_1 9 +# endif +# +# if BOOST_PP_SLOT_4_DIGIT_10 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_4_DIGIT_10, BOOST_PP_SLOT_4_DIGIT_9, BOOST_PP_SLOT_4_DIGIT_8, BOOST_PP_SLOT_4_DIGIT_7, BOOST_PP_SLOT_4_DIGIT_6, BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_9 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_4_DIGIT_9, BOOST_PP_SLOT_4_DIGIT_8, BOOST_PP_SLOT_4_DIGIT_7, BOOST_PP_SLOT_4_DIGIT_6, BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_8 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_4_DIGIT_8, BOOST_PP_SLOT_4_DIGIT_7, BOOST_PP_SLOT_4_DIGIT_6, BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_7 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_4_DIGIT_7, BOOST_PP_SLOT_4_DIGIT_6, BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_6 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_4_DIGIT_6, BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_5 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_4_DIGIT_5, BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_4 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_4_DIGIT_4, BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_3 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_4_DIGIT_3, BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# elif BOOST_PP_SLOT_4_DIGIT_2 +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_4_DIGIT_2, BOOST_PP_SLOT_4_DIGIT_1) +# else +# define BOOST_PP_SLOT_4() BOOST_PP_SLOT_4_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/detail/slot5.hpp b/plugin/wave/include/boost/preprocessor/slot/detail/slot5.hpp new file mode 100644 index 0000000..d17535d --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/detail/slot5.hpp @@ -0,0 +1,267 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# include +# +# undef BOOST_PP_SLOT_5 +# +# undef BOOST_PP_SLOT_5_DIGIT_1 +# undef BOOST_PP_SLOT_5_DIGIT_2 +# undef BOOST_PP_SLOT_5_DIGIT_3 +# undef BOOST_PP_SLOT_5_DIGIT_4 +# undef BOOST_PP_SLOT_5_DIGIT_5 +# undef BOOST_PP_SLOT_5_DIGIT_6 +# undef BOOST_PP_SLOT_5_DIGIT_7 +# undef BOOST_PP_SLOT_5_DIGIT_8 +# undef BOOST_PP_SLOT_5_DIGIT_9 +# undef BOOST_PP_SLOT_5_DIGIT_10 +# +# if BOOST_PP_SLOT_TEMP_10 == 0 +# define BOOST_PP_SLOT_5_DIGIT_10 0 +# elif BOOST_PP_SLOT_TEMP_10 == 1 +# define BOOST_PP_SLOT_5_DIGIT_10 1 +# elif BOOST_PP_SLOT_TEMP_10 == 2 +# define BOOST_PP_SLOT_5_DIGIT_10 2 +# elif BOOST_PP_SLOT_TEMP_10 == 3 +# define BOOST_PP_SLOT_5_DIGIT_10 3 +# elif BOOST_PP_SLOT_TEMP_10 == 4 +# define BOOST_PP_SLOT_5_DIGIT_10 4 +# elif BOOST_PP_SLOT_TEMP_10 == 5 +# define BOOST_PP_SLOT_5_DIGIT_10 5 +# elif BOOST_PP_SLOT_TEMP_10 == 6 +# define BOOST_PP_SLOT_5_DIGIT_10 6 +# elif BOOST_PP_SLOT_TEMP_10 == 7 +# define BOOST_PP_SLOT_5_DIGIT_10 7 +# elif BOOST_PP_SLOT_TEMP_10 == 8 +# define BOOST_PP_SLOT_5_DIGIT_10 8 +# elif BOOST_PP_SLOT_TEMP_10 == 9 +# define BOOST_PP_SLOT_5_DIGIT_10 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_9 == 0 +# define BOOST_PP_SLOT_5_DIGIT_9 0 +# elif BOOST_PP_SLOT_TEMP_9 == 1 +# define BOOST_PP_SLOT_5_DIGIT_9 1 +# elif BOOST_PP_SLOT_TEMP_9 == 2 +# define BOOST_PP_SLOT_5_DIGIT_9 2 +# elif BOOST_PP_SLOT_TEMP_9 == 3 +# define BOOST_PP_SLOT_5_DIGIT_9 3 +# elif BOOST_PP_SLOT_TEMP_9 == 4 +# define BOOST_PP_SLOT_5_DIGIT_9 4 +# elif BOOST_PP_SLOT_TEMP_9 == 5 +# define BOOST_PP_SLOT_5_DIGIT_9 5 +# elif BOOST_PP_SLOT_TEMP_9 == 6 +# define BOOST_PP_SLOT_5_DIGIT_9 6 +# elif BOOST_PP_SLOT_TEMP_9 == 7 +# define BOOST_PP_SLOT_5_DIGIT_9 7 +# elif BOOST_PP_SLOT_TEMP_9 == 8 +# define BOOST_PP_SLOT_5_DIGIT_9 8 +# elif BOOST_PP_SLOT_TEMP_9 == 9 +# define BOOST_PP_SLOT_5_DIGIT_9 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_8 == 0 +# define BOOST_PP_SLOT_5_DIGIT_8 0 +# elif BOOST_PP_SLOT_TEMP_8 == 1 +# define BOOST_PP_SLOT_5_DIGIT_8 1 +# elif BOOST_PP_SLOT_TEMP_8 == 2 +# define BOOST_PP_SLOT_5_DIGIT_8 2 +# elif BOOST_PP_SLOT_TEMP_8 == 3 +# define BOOST_PP_SLOT_5_DIGIT_8 3 +# elif BOOST_PP_SLOT_TEMP_8 == 4 +# define BOOST_PP_SLOT_5_DIGIT_8 4 +# elif BOOST_PP_SLOT_TEMP_8 == 5 +# define BOOST_PP_SLOT_5_DIGIT_8 5 +# elif BOOST_PP_SLOT_TEMP_8 == 6 +# define BOOST_PP_SLOT_5_DIGIT_8 6 +# elif BOOST_PP_SLOT_TEMP_8 == 7 +# define BOOST_PP_SLOT_5_DIGIT_8 7 +# elif BOOST_PP_SLOT_TEMP_8 == 8 +# define BOOST_PP_SLOT_5_DIGIT_8 8 +# elif BOOST_PP_SLOT_TEMP_8 == 9 +# define BOOST_PP_SLOT_5_DIGIT_8 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_7 == 0 +# define BOOST_PP_SLOT_5_DIGIT_7 0 +# elif BOOST_PP_SLOT_TEMP_7 == 1 +# define BOOST_PP_SLOT_5_DIGIT_7 1 +# elif BOOST_PP_SLOT_TEMP_7 == 2 +# define BOOST_PP_SLOT_5_DIGIT_7 2 +# elif BOOST_PP_SLOT_TEMP_7 == 3 +# define BOOST_PP_SLOT_5_DIGIT_7 3 +# elif BOOST_PP_SLOT_TEMP_7 == 4 +# define BOOST_PP_SLOT_5_DIGIT_7 4 +# elif BOOST_PP_SLOT_TEMP_7 == 5 +# define BOOST_PP_SLOT_5_DIGIT_7 5 +# elif BOOST_PP_SLOT_TEMP_7 == 6 +# define BOOST_PP_SLOT_5_DIGIT_7 6 +# elif BOOST_PP_SLOT_TEMP_7 == 7 +# define BOOST_PP_SLOT_5_DIGIT_7 7 +# elif BOOST_PP_SLOT_TEMP_7 == 8 +# define BOOST_PP_SLOT_5_DIGIT_7 8 +# elif BOOST_PP_SLOT_TEMP_7 == 9 +# define BOOST_PP_SLOT_5_DIGIT_7 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_6 == 0 +# define BOOST_PP_SLOT_5_DIGIT_6 0 +# elif BOOST_PP_SLOT_TEMP_6 == 1 +# define BOOST_PP_SLOT_5_DIGIT_6 1 +# elif BOOST_PP_SLOT_TEMP_6 == 2 +# define BOOST_PP_SLOT_5_DIGIT_6 2 +# elif BOOST_PP_SLOT_TEMP_6 == 3 +# define BOOST_PP_SLOT_5_DIGIT_6 3 +# elif BOOST_PP_SLOT_TEMP_6 == 4 +# define BOOST_PP_SLOT_5_DIGIT_6 4 +# elif BOOST_PP_SLOT_TEMP_6 == 5 +# define BOOST_PP_SLOT_5_DIGIT_6 5 +# elif BOOST_PP_SLOT_TEMP_6 == 6 +# define BOOST_PP_SLOT_5_DIGIT_6 6 +# elif BOOST_PP_SLOT_TEMP_6 == 7 +# define BOOST_PP_SLOT_5_DIGIT_6 7 +# elif BOOST_PP_SLOT_TEMP_6 == 8 +# define BOOST_PP_SLOT_5_DIGIT_6 8 +# elif BOOST_PP_SLOT_TEMP_6 == 9 +# define BOOST_PP_SLOT_5_DIGIT_6 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_5 == 0 +# define BOOST_PP_SLOT_5_DIGIT_5 0 +# elif BOOST_PP_SLOT_TEMP_5 == 1 +# define BOOST_PP_SLOT_5_DIGIT_5 1 +# elif BOOST_PP_SLOT_TEMP_5 == 2 +# define BOOST_PP_SLOT_5_DIGIT_5 2 +# elif BOOST_PP_SLOT_TEMP_5 == 3 +# define BOOST_PP_SLOT_5_DIGIT_5 3 +# elif BOOST_PP_SLOT_TEMP_5 == 4 +# define BOOST_PP_SLOT_5_DIGIT_5 4 +# elif BOOST_PP_SLOT_TEMP_5 == 5 +# define BOOST_PP_SLOT_5_DIGIT_5 5 +# elif BOOST_PP_SLOT_TEMP_5 == 6 +# define BOOST_PP_SLOT_5_DIGIT_5 6 +# elif BOOST_PP_SLOT_TEMP_5 == 7 +# define BOOST_PP_SLOT_5_DIGIT_5 7 +# elif BOOST_PP_SLOT_TEMP_5 == 8 +# define BOOST_PP_SLOT_5_DIGIT_5 8 +# elif BOOST_PP_SLOT_TEMP_5 == 9 +# define BOOST_PP_SLOT_5_DIGIT_5 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_4 == 0 +# define BOOST_PP_SLOT_5_DIGIT_4 0 +# elif BOOST_PP_SLOT_TEMP_4 == 1 +# define BOOST_PP_SLOT_5_DIGIT_4 1 +# elif BOOST_PP_SLOT_TEMP_4 == 2 +# define BOOST_PP_SLOT_5_DIGIT_4 2 +# elif BOOST_PP_SLOT_TEMP_4 == 3 +# define BOOST_PP_SLOT_5_DIGIT_4 3 +# elif BOOST_PP_SLOT_TEMP_4 == 4 +# define BOOST_PP_SLOT_5_DIGIT_4 4 +# elif BOOST_PP_SLOT_TEMP_4 == 5 +# define BOOST_PP_SLOT_5_DIGIT_4 5 +# elif BOOST_PP_SLOT_TEMP_4 == 6 +# define BOOST_PP_SLOT_5_DIGIT_4 6 +# elif BOOST_PP_SLOT_TEMP_4 == 7 +# define BOOST_PP_SLOT_5_DIGIT_4 7 +# elif BOOST_PP_SLOT_TEMP_4 == 8 +# define BOOST_PP_SLOT_5_DIGIT_4 8 +# elif BOOST_PP_SLOT_TEMP_4 == 9 +# define BOOST_PP_SLOT_5_DIGIT_4 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_3 == 0 +# define BOOST_PP_SLOT_5_DIGIT_3 0 +# elif BOOST_PP_SLOT_TEMP_3 == 1 +# define BOOST_PP_SLOT_5_DIGIT_3 1 +# elif BOOST_PP_SLOT_TEMP_3 == 2 +# define BOOST_PP_SLOT_5_DIGIT_3 2 +# elif BOOST_PP_SLOT_TEMP_3 == 3 +# define BOOST_PP_SLOT_5_DIGIT_3 3 +# elif BOOST_PP_SLOT_TEMP_3 == 4 +# define BOOST_PP_SLOT_5_DIGIT_3 4 +# elif BOOST_PP_SLOT_TEMP_3 == 5 +# define BOOST_PP_SLOT_5_DIGIT_3 5 +# elif BOOST_PP_SLOT_TEMP_3 == 6 +# define BOOST_PP_SLOT_5_DIGIT_3 6 +# elif BOOST_PP_SLOT_TEMP_3 == 7 +# define BOOST_PP_SLOT_5_DIGIT_3 7 +# elif BOOST_PP_SLOT_TEMP_3 == 8 +# define BOOST_PP_SLOT_5_DIGIT_3 8 +# elif BOOST_PP_SLOT_TEMP_3 == 9 +# define BOOST_PP_SLOT_5_DIGIT_3 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_2 == 0 +# define BOOST_PP_SLOT_5_DIGIT_2 0 +# elif BOOST_PP_SLOT_TEMP_2 == 1 +# define BOOST_PP_SLOT_5_DIGIT_2 1 +# elif BOOST_PP_SLOT_TEMP_2 == 2 +# define BOOST_PP_SLOT_5_DIGIT_2 2 +# elif BOOST_PP_SLOT_TEMP_2 == 3 +# define BOOST_PP_SLOT_5_DIGIT_2 3 +# elif BOOST_PP_SLOT_TEMP_2 == 4 +# define BOOST_PP_SLOT_5_DIGIT_2 4 +# elif BOOST_PP_SLOT_TEMP_2 == 5 +# define BOOST_PP_SLOT_5_DIGIT_2 5 +# elif BOOST_PP_SLOT_TEMP_2 == 6 +# define BOOST_PP_SLOT_5_DIGIT_2 6 +# elif BOOST_PP_SLOT_TEMP_2 == 7 +# define BOOST_PP_SLOT_5_DIGIT_2 7 +# elif BOOST_PP_SLOT_TEMP_2 == 8 +# define BOOST_PP_SLOT_5_DIGIT_2 8 +# elif BOOST_PP_SLOT_TEMP_2 == 9 +# define BOOST_PP_SLOT_5_DIGIT_2 9 +# endif +# +# if BOOST_PP_SLOT_TEMP_1 == 0 +# define BOOST_PP_SLOT_5_DIGIT_1 0 +# elif BOOST_PP_SLOT_TEMP_1 == 1 +# define BOOST_PP_SLOT_5_DIGIT_1 1 +# elif BOOST_PP_SLOT_TEMP_1 == 2 +# define BOOST_PP_SLOT_5_DIGIT_1 2 +# elif BOOST_PP_SLOT_TEMP_1 == 3 +# define BOOST_PP_SLOT_5_DIGIT_1 3 +# elif BOOST_PP_SLOT_TEMP_1 == 4 +# define BOOST_PP_SLOT_5_DIGIT_1 4 +# elif BOOST_PP_SLOT_TEMP_1 == 5 +# define BOOST_PP_SLOT_5_DIGIT_1 5 +# elif BOOST_PP_SLOT_TEMP_1 == 6 +# define BOOST_PP_SLOT_5_DIGIT_1 6 +# elif BOOST_PP_SLOT_TEMP_1 == 7 +# define BOOST_PP_SLOT_5_DIGIT_1 7 +# elif BOOST_PP_SLOT_TEMP_1 == 8 +# define BOOST_PP_SLOT_5_DIGIT_1 8 +# elif BOOST_PP_SLOT_TEMP_1 == 9 +# define BOOST_PP_SLOT_5_DIGIT_1 9 +# endif +# +# if BOOST_PP_SLOT_5_DIGIT_10 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_10(BOOST_PP_SLOT_5_DIGIT_10, BOOST_PP_SLOT_5_DIGIT_9, BOOST_PP_SLOT_5_DIGIT_8, BOOST_PP_SLOT_5_DIGIT_7, BOOST_PP_SLOT_5_DIGIT_6, BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_9 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_9(BOOST_PP_SLOT_5_DIGIT_9, BOOST_PP_SLOT_5_DIGIT_8, BOOST_PP_SLOT_5_DIGIT_7, BOOST_PP_SLOT_5_DIGIT_6, BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_8 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_8(BOOST_PP_SLOT_5_DIGIT_8, BOOST_PP_SLOT_5_DIGIT_7, BOOST_PP_SLOT_5_DIGIT_6, BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_7 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_7(BOOST_PP_SLOT_5_DIGIT_7, BOOST_PP_SLOT_5_DIGIT_6, BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_6 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_6(BOOST_PP_SLOT_5_DIGIT_6, BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_5 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_5(BOOST_PP_SLOT_5_DIGIT_5, BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_4 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_4(BOOST_PP_SLOT_5_DIGIT_4, BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_3 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_3(BOOST_PP_SLOT_5_DIGIT_3, BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# elif BOOST_PP_SLOT_5_DIGIT_2 +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_CC_2(BOOST_PP_SLOT_5_DIGIT_2, BOOST_PP_SLOT_5_DIGIT_1) +# else +# define BOOST_PP_SLOT_5() BOOST_PP_SLOT_5_DIGIT_1 +# endif diff --git a/plugin/wave/include/boost/preprocessor/slot/slot.hpp b/plugin/wave/include/boost/preprocessor/slot/slot.hpp new file mode 100644 index 0000000..147b097 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/slot/slot.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_SLOT_SLOT_HPP +# define BOOST_PREPROCESSOR_SLOT_SLOT_HPP +# +# include +# include +# +# /* BOOST_PP_ASSIGN_SLOT */ +# +# define BOOST_PP_ASSIGN_SLOT(i) BOOST_PP_CAT(BOOST_PP_ASSIGN_SLOT_, i) +# +# define BOOST_PP_ASSIGN_SLOT_1 +# define BOOST_PP_ASSIGN_SLOT_2 +# define BOOST_PP_ASSIGN_SLOT_3 +# define BOOST_PP_ASSIGN_SLOT_4 +# define BOOST_PP_ASSIGN_SLOT_5 +# +# /* BOOST_PP_SLOT */ +# +# define BOOST_PP_SLOT(i) BOOST_PP_CAT(BOOST_PP_SLOT_, i)() +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/stringize.hpp b/plugin/wave/include/boost/preprocessor/stringize.hpp new file mode 100644 index 0000000..64dd5fd --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/stringize.hpp @@ -0,0 +1,33 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_STRINGIZE_HPP +# define BOOST_PREPROCESSOR_STRINGIZE_HPP +# +# include +# +# /* BOOST_PP_STRINGIZE */ +# +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_A((text)) +# define BOOST_PP_STRINGIZE_A(arg) BOOST_PP_STRINGIZE_I arg +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_OO((text)) +# define BOOST_PP_STRINGIZE_OO(par) BOOST_PP_STRINGIZE_I ## par +# else +# define BOOST_PP_STRINGIZE(text) BOOST_PP_STRINGIZE_I(text) +# endif +# +# define BOOST_PP_STRINGIZE_I(text) #text +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple.hpp b/plugin/wave/include/boost/preprocessor/tuple.hpp new file mode 100644 index 0000000..76fad36 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple.hpp @@ -0,0 +1,35 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002) */ +# /* Revised by Edward Diener (2011,2013) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_HPP +# define BOOST_PREPROCESSOR_TUPLE_HPP +# +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/detail/is_single_return.hpp b/plugin/wave/include/boost/preprocessor/tuple/detail/is_single_return.hpp new file mode 100644 index 0000000..02a4fb2 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/detail/is_single_return.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_DETAIL_IS_SINGLE_RETURN_HPP +# define BOOST_PREPROCESSOR_TUPLE_DETAIL_IS_SINGLE_RETURN_HPP +# +# include +# +# /* BOOST_PP_TUPLE_IS_SINGLE_RETURN */ +# +# if BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC +# include +# include +# include +# define BOOST_PP_TUPLE_IS_SINGLE_RETURN(sr,nsr,tuple) \ + BOOST_PP_IIF(BOOST_PP_IS_1(BOOST_PP_TUPLE_SIZE(tuple)),sr,nsr) \ + /**/ +# endif /* BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC */ +# +# endif /* BOOST_PREPROCESSOR_TUPLE_DETAIL_IS_SINGLE_RETURN_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/tuple/eat.hpp b/plugin/wave/include/boost/preprocessor/tuple/eat.hpp new file mode 100644 index 0000000..7e8a100 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/eat.hpp @@ -0,0 +1,115 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002-2011) */ +# /* Revised by Edward Diener (2011,2015) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_EAT_HPP +# define BOOST_PREPROCESSOR_TUPLE_EAT_HPP +# +# include +# +# /* BOOST_PP_EAT */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_EAT(...) +# else +# define BOOST_PP_EAT(x) +# endif +# +# /* BOOST_PP_TUPLE_EAT */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_TUPLE_EAT(size) BOOST_PP_EAT +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_EAT(size) BOOST_PP_TUPLE_EAT_I(size) +# else +# define BOOST_PP_TUPLE_EAT(size) BOOST_PP_TUPLE_EAT_OO((size)) +# define BOOST_PP_TUPLE_EAT_OO(par) BOOST_PP_TUPLE_EAT_I ## par +# endif +# define BOOST_PP_TUPLE_EAT_I(size) BOOST_PP_TUPLE_EAT_ ## size +# endif +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_EAT_N(size) BOOST_PP_TUPLE_EAT_N_I(size) +# else +# define BOOST_PP_TUPLE_EAT_N(size) BOOST_PP_TUPLE_EAT_N_OO((size)) +# define BOOST_PP_TUPLE_EAT_N_OO(par) BOOST_PP_TUPLE_EAT_N_I ## par +# endif +# define BOOST_PP_TUPLE_EAT_N_I(size) BOOST_PP_TUPLE_EAT_ ## size +# +# define BOOST_PP_TUPLE_EAT_1(e0) +# define BOOST_PP_TUPLE_EAT_2(e0, e1) +# define BOOST_PP_TUPLE_EAT_3(e0, e1, e2) +# define BOOST_PP_TUPLE_EAT_4(e0, e1, e2, e3) +# define BOOST_PP_TUPLE_EAT_5(e0, e1, e2, e3, e4) +# define BOOST_PP_TUPLE_EAT_6(e0, e1, e2, e3, e4, e5) +# define BOOST_PP_TUPLE_EAT_7(e0, e1, e2, e3, e4, e5, e6) +# define BOOST_PP_TUPLE_EAT_8(e0, e1, e2, e3, e4, e5, e6, e7) +# define BOOST_PP_TUPLE_EAT_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) +# define BOOST_PP_TUPLE_EAT_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) +# define BOOST_PP_TUPLE_EAT_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) +# define BOOST_PP_TUPLE_EAT_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) +# define BOOST_PP_TUPLE_EAT_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) +# define BOOST_PP_TUPLE_EAT_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) +# define BOOST_PP_TUPLE_EAT_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) +# define BOOST_PP_TUPLE_EAT_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) +# define BOOST_PP_TUPLE_EAT_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) +# define BOOST_PP_TUPLE_EAT_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) +# define BOOST_PP_TUPLE_EAT_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) +# define BOOST_PP_TUPLE_EAT_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) +# define BOOST_PP_TUPLE_EAT_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) +# define BOOST_PP_TUPLE_EAT_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) +# define BOOST_PP_TUPLE_EAT_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) +# define BOOST_PP_TUPLE_EAT_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) +# define BOOST_PP_TUPLE_EAT_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) +# define BOOST_PP_TUPLE_EAT_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) +# define BOOST_PP_TUPLE_EAT_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) +# define BOOST_PP_TUPLE_EAT_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) +# define BOOST_PP_TUPLE_EAT_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) +# define BOOST_PP_TUPLE_EAT_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) +# define BOOST_PP_TUPLE_EAT_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) +# define BOOST_PP_TUPLE_EAT_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) +# define BOOST_PP_TUPLE_EAT_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) +# define BOOST_PP_TUPLE_EAT_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) +# define BOOST_PP_TUPLE_EAT_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) +# define BOOST_PP_TUPLE_EAT_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) +# define BOOST_PP_TUPLE_EAT_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) +# define BOOST_PP_TUPLE_EAT_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) +# define BOOST_PP_TUPLE_EAT_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) +# define BOOST_PP_TUPLE_EAT_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) +# define BOOST_PP_TUPLE_EAT_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) +# define BOOST_PP_TUPLE_EAT_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) +# define BOOST_PP_TUPLE_EAT_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) +# define BOOST_PP_TUPLE_EAT_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) +# define BOOST_PP_TUPLE_EAT_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) +# define BOOST_PP_TUPLE_EAT_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) +# define BOOST_PP_TUPLE_EAT_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) +# define BOOST_PP_TUPLE_EAT_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) +# define BOOST_PP_TUPLE_EAT_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) +# define BOOST_PP_TUPLE_EAT_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) +# define BOOST_PP_TUPLE_EAT_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) +# define BOOST_PP_TUPLE_EAT_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) +# define BOOST_PP_TUPLE_EAT_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) +# define BOOST_PP_TUPLE_EAT_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) +# define BOOST_PP_TUPLE_EAT_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) +# define BOOST_PP_TUPLE_EAT_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) +# define BOOST_PP_TUPLE_EAT_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) +# define BOOST_PP_TUPLE_EAT_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) +# define BOOST_PP_TUPLE_EAT_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) +# define BOOST_PP_TUPLE_EAT_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) +# define BOOST_PP_TUPLE_EAT_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) +# define BOOST_PP_TUPLE_EAT_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) +# define BOOST_PP_TUPLE_EAT_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) +# define BOOST_PP_TUPLE_EAT_64(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/elem.hpp b/plugin/wave/include/boost/preprocessor/tuple/elem.hpp new file mode 100644 index 0000000..88044d3 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/elem.hpp @@ -0,0 +1,201 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002-2011) */ +# /* Revised by Edward Diener (2011,2014) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_ELEM_HPP +# define BOOST_PREPROCESSOR_TUPLE_ELEM_HPP +# +# include +# include +# include +# include +# include +# include +# include +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_ELEM(...) BOOST_PP_TUPLE_ELEM_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_ELEM_O_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_ELEM_I(m, args) BOOST_PP_TUPLE_ELEM_II(m, args) +# define BOOST_PP_TUPLE_ELEM_II(m, args) BOOST_PP_CAT(m ## args,) +/* + Use BOOST_PP_REM_CAT if it is a single element tuple ( which might be empty ) + else use BOOST_PP_REM. This fixes a VC++ problem with an empty tuple and BOOST_PP_TUPLE_ELEM + functionality. See tuple_elem_bug_test.cxx. +*/ +# define BOOST_PP_TUPLE_ELEM_O_2(n, tuple) \ + BOOST_PP_VARIADIC_ELEM(n, BOOST_PP_EXPAND(BOOST_PP_TUPLE_IS_SINGLE_RETURN(BOOST_PP_REM_CAT,BOOST_PP_REM,tuple) tuple)) \ + /**/ +# else +# define BOOST_PP_TUPLE_ELEM(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_ELEM_O_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_ELEM_O_2(n, tuple) BOOST_PP_VARIADIC_ELEM(n, BOOST_PP_REM tuple) +# endif +# define BOOST_PP_TUPLE_ELEM_O_3(size, n, tuple) BOOST_PP_TUPLE_ELEM_O_2(n, tuple) +# else +# if BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_TUPLE_ELEM(size, n, tuple) BOOST_PP_TUPLE_ELEM_I(BOOST_PP_CAT(BOOST_PP_TUPLE_ELEM_, n), BOOST_PP_CAT(BOOST_PP_CAT(BOOST_PP_TUPLE_ELEM_E_, size), tuple)) +# define BOOST_PP_TUPLE_ELEM_I(m, args) BOOST_PP_TUPLE_ELEM_II(m, args) +# define BOOST_PP_TUPLE_ELEM_II(m, args) BOOST_PP_CAT(m ## args,) +# elif BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_ELEM(size, n, tuple) BOOST_PP_TUPLE_ELEM_I_OO((size, n, tuple)) +# define BOOST_PP_TUPLE_ELEM_I_OO(par) BOOST_PP_TUPLE_ELEM_I ## par +# define BOOST_PP_TUPLE_ELEM_I(size, n, tuple) BOOST_PP_TUPLE_ELEM_II((n, BOOST_PP_TUPLE_ELEM_E_ ## size ## tuple)) +# define BOOST_PP_TUPLE_ELEM_II(par) BOOST_PP_TUPLE_ELEM_III_OO(par) +# define BOOST_PP_TUPLE_ELEM_III_OO(par) BOOST_PP_TUPLE_ELEM_III ## par +# define BOOST_PP_TUPLE_ELEM_III(n, etuple) BOOST_PP_TUPLE_ELEM_ ## n ## etuple +# else +# define BOOST_PP_TUPLE_ELEM(size, n, tuple) BOOST_PP_TUPLE_ELEM_I(BOOST_PP_CAT(BOOST_PP_TUPLE_ELEM_, n) BOOST_PP_CAT(BOOST_PP_TUPLE_ELEM_E_, size) tuple) +# define BOOST_PP_TUPLE_ELEM_I(x) x +# endif +# define BOOST_PP_TUPLE_ELEM_E_1(e0) (e0, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_2(e0, e1) (e0, e1, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_3(e0, e1, e2) (e0, e1, e2, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_4(e0, e1, e2, e3) (e0, e1, e2, e3, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_5(e0, e1, e2, e3, e4) (e0, e1, e2, e3, e4, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_6(e0, e1, e2, e3, e4, e5) (e0, e1, e2, e3, e4, e5, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_7(e0, e1, e2, e3, e4, e5, e6) (e0, e1, e2, e3, e4, e5, e6, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_8(e0, e1, e2, e3, e4, e5, e6, e7) (e0, e1, e2, e3, e4, e5, e6, e7, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) (e0, e1, e2, e3, e4, e5, e6, e7, e8, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, ?, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, ?, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, ?, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, ?, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, ?, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, ?, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, ?, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, ?, ?) +# define BOOST_PP_TUPLE_ELEM_E_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) (e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, ?) +# define BOOST_PP_TUPLE_ELEM_E_64 +# define BOOST_PP_TUPLE_ELEM_0(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e0 +# define BOOST_PP_TUPLE_ELEM_1(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e1 +# define BOOST_PP_TUPLE_ELEM_2(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e2 +# define BOOST_PP_TUPLE_ELEM_3(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e3 +# define BOOST_PP_TUPLE_ELEM_4(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e4 +# define BOOST_PP_TUPLE_ELEM_5(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e5 +# define BOOST_PP_TUPLE_ELEM_6(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e6 +# define BOOST_PP_TUPLE_ELEM_7(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e7 +# define BOOST_PP_TUPLE_ELEM_8(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e8 +# define BOOST_PP_TUPLE_ELEM_9(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e9 +# define BOOST_PP_TUPLE_ELEM_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e10 +# define BOOST_PP_TUPLE_ELEM_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e11 +# define BOOST_PP_TUPLE_ELEM_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e12 +# define BOOST_PP_TUPLE_ELEM_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e13 +# define BOOST_PP_TUPLE_ELEM_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e14 +# define BOOST_PP_TUPLE_ELEM_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e15 +# define BOOST_PP_TUPLE_ELEM_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e16 +# define BOOST_PP_TUPLE_ELEM_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e17 +# define BOOST_PP_TUPLE_ELEM_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e18 +# define BOOST_PP_TUPLE_ELEM_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e19 +# define BOOST_PP_TUPLE_ELEM_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e20 +# define BOOST_PP_TUPLE_ELEM_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e21 +# define BOOST_PP_TUPLE_ELEM_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e22 +# define BOOST_PP_TUPLE_ELEM_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e23 +# define BOOST_PP_TUPLE_ELEM_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e24 +# define BOOST_PP_TUPLE_ELEM_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e25 +# define BOOST_PP_TUPLE_ELEM_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e26 +# define BOOST_PP_TUPLE_ELEM_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e27 +# define BOOST_PP_TUPLE_ELEM_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e28 +# define BOOST_PP_TUPLE_ELEM_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e29 +# define BOOST_PP_TUPLE_ELEM_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e30 +# define BOOST_PP_TUPLE_ELEM_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e31 +# define BOOST_PP_TUPLE_ELEM_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e32 +# define BOOST_PP_TUPLE_ELEM_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e33 +# define BOOST_PP_TUPLE_ELEM_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e34 +# define BOOST_PP_TUPLE_ELEM_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e35 +# define BOOST_PP_TUPLE_ELEM_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e36 +# define BOOST_PP_TUPLE_ELEM_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e37 +# define BOOST_PP_TUPLE_ELEM_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e38 +# define BOOST_PP_TUPLE_ELEM_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e39 +# define BOOST_PP_TUPLE_ELEM_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e40 +# define BOOST_PP_TUPLE_ELEM_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e41 +# define BOOST_PP_TUPLE_ELEM_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e42 +# define BOOST_PP_TUPLE_ELEM_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e43 +# define BOOST_PP_TUPLE_ELEM_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e44 +# define BOOST_PP_TUPLE_ELEM_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e45 +# define BOOST_PP_TUPLE_ELEM_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e46 +# define BOOST_PP_TUPLE_ELEM_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e47 +# define BOOST_PP_TUPLE_ELEM_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e48 +# define BOOST_PP_TUPLE_ELEM_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e49 +# define BOOST_PP_TUPLE_ELEM_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e50 +# define BOOST_PP_TUPLE_ELEM_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e51 +# define BOOST_PP_TUPLE_ELEM_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e52 +# define BOOST_PP_TUPLE_ELEM_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e53 +# define BOOST_PP_TUPLE_ELEM_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e54 +# define BOOST_PP_TUPLE_ELEM_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e55 +# define BOOST_PP_TUPLE_ELEM_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e56 +# define BOOST_PP_TUPLE_ELEM_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e57 +# define BOOST_PP_TUPLE_ELEM_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e58 +# define BOOST_PP_TUPLE_ELEM_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e59 +# define BOOST_PP_TUPLE_ELEM_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e60 +# define BOOST_PP_TUPLE_ELEM_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e61 +# define BOOST_PP_TUPLE_ELEM_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e62 +# define BOOST_PP_TUPLE_ELEM_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e63 +# endif +# +# /* directly used elsewhere in Boost... */ +# +# define BOOST_PP_TUPLE_ELEM_1_0(a) a +# +# define BOOST_PP_TUPLE_ELEM_2_0(a, b) a +# define BOOST_PP_TUPLE_ELEM_2_1(a, b) b +# +# define BOOST_PP_TUPLE_ELEM_3_0(a, b, c) a +# define BOOST_PP_TUPLE_ELEM_3_1(a, b, c) b +# define BOOST_PP_TUPLE_ELEM_3_2(a, b, c) c +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/enum.hpp b/plugin/wave/include/boost/preprocessor/tuple/enum.hpp new file mode 100644 index 0000000..4915831 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/enum.hpp @@ -0,0 +1,22 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_ENUM_HPP +# define BOOST_PREPROCESSOR_TUPLE_ENUM_HPP +# +# include +# +# /* BOOST_PP_TUPLE_ENUM */ +# +# define BOOST_PP_TUPLE_ENUM BOOST_PP_TUPLE_REM_CTOR +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/insert.hpp b/plugin/wave/include/boost/preprocessor/tuple/insert.hpp new file mode 100644 index 0000000..ce4544f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/insert.hpp @@ -0,0 +1,37 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_INSERT_HPP +# define BOOST_PREPROCESSOR_TUPLE_INSERT_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# +# /* BOOST_PP_TUPLE_INSERT */ +# +# define BOOST_PP_TUPLE_INSERT(tuple, i, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_INSERT(BOOST_PP_TUPLE_TO_ARRAY(tuple), i, elem)) \ +/**/ +# +# /* BOOST_PP_TUPLE_INSERT_D */ +# +# define BOOST_PP_TUPLE_INSERT_D(d, tuple, i, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_INSERT_D(d, BOOST_PP_TUPLE_TO_ARRAY(tuple), i, elem)) \ +/**/ +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_INSERT_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/pop_back.hpp b/plugin/wave/include/boost/preprocessor/tuple/pop_back.hpp new file mode 100644 index 0000000..3ac414b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/pop_back.hpp @@ -0,0 +1,64 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_POP_BACK_HPP +# define BOOST_PREPROCESSOR_TUPLE_POP_BACK_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_POP_BACK */ +# +# define BOOST_PP_TUPLE_POP_BACK(tuple) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER(BOOST_PP_TUPLE_SIZE(tuple),1), \ + BOOST_PP_TUPLE_POP_BACK_EXEC, \ + BOOST_PP_TUPLE_POP_BACK_RETURN \ + ) \ + (tuple) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_BACK_EXEC(tuple) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_POP_BACK(BOOST_PP_TUPLE_TO_ARRAY(tuple))) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_BACK_RETURN(tuple) tuple +# +# /* BOOST_PP_TUPLE_POP_BACK_Z */ +# +# define BOOST_PP_TUPLE_POP_BACK_Z(z, tuple) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER(BOOST_PP_TUPLE_SIZE(tuple),1), \ + BOOST_PP_TUPLE_POP_BACK_Z_EXEC, \ + BOOST_PP_TUPLE_POP_BACK_Z_RETURN \ + ) \ + (z, tuple) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_BACK_Z_EXEC(z, tuple) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_POP_BACK_Z(z, BOOST_PP_TUPLE_TO_ARRAY(tuple))) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_BACK_Z_RETURN(z, tuple) tuple +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_POP_BACK_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/pop_front.hpp b/plugin/wave/include/boost/preprocessor/tuple/pop_front.hpp new file mode 100644 index 0000000..fafaa77 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/pop_front.hpp @@ -0,0 +1,65 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_POP_FRONT_HPP +# define BOOST_PREPROCESSOR_TUPLE_POP_FRONT_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# include +# include +# include +# +# +# /* BOOST_PP_TUPLE_POP_FRONT */ +# +# define BOOST_PP_TUPLE_POP_FRONT(tuple) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER(BOOST_PP_TUPLE_SIZE(tuple),1), \ + BOOST_PP_TUPLE_POP_FRONT_EXEC, \ + BOOST_PP_TUPLE_POP_FRONT_RETURN \ + ) \ + (tuple) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_FRONT_EXEC(tuple) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_POP_FRONT(BOOST_PP_TUPLE_TO_ARRAY(tuple))) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_FRONT_RETURN(tuple) tuple +# +# /* BOOST_PP_TUPLE_POP_FRONT_Z */ +# +# define BOOST_PP_TUPLE_POP_FRONT_Z(z, tuple) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER(BOOST_PP_TUPLE_SIZE(tuple),1), \ + BOOST_PP_TUPLE_POP_FRONT_Z_EXEC, \ + BOOST_PP_TUPLE_POP_FRONT_Z_RETURN \ + ) \ + (z, tuple) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_FRONT_Z_EXEC(z, tuple) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_POP_FRONT_Z(z, BOOST_PP_TUPLE_TO_ARRAY(tuple))) \ +/**/ +# +# define BOOST_PP_TUPLE_POP_FRONT_Z_RETURN(z, tuple) tuple +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_POP_FRONT_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/push_back.hpp b/plugin/wave/include/boost/preprocessor/tuple/push_back.hpp new file mode 100644 index 0000000..2ae8f63 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/push_back.hpp @@ -0,0 +1,31 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_PUSH_BACK_HPP +# define BOOST_PREPROCESSOR_TUPLE_PUSH_BACK_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# +# /* BOOST_PP_TUPLE_PUSH_BACK */ +# +# define BOOST_PP_TUPLE_PUSH_BACK(tuple, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_PUSH_BACK(BOOST_PP_TUPLE_TO_ARRAY(tuple), elem)) \ +/**/ +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_PUSH_BACK_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/push_front.hpp b/plugin/wave/include/boost/preprocessor/tuple/push_front.hpp new file mode 100644 index 0000000..81fea85 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/push_front.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_PUSH_FRONT_HPP +# define BOOST_PREPROCESSOR_TUPLE_PUSH_FRONT_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# +# +# /* BOOST_PP_TUPLE_PUSH_FRONT */ +# +# define BOOST_PP_TUPLE_PUSH_FRONT(tuple, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_PUSH_FRONT(BOOST_PP_TUPLE_TO_ARRAY(tuple), elem)) \ +/**/ +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_PUSH_FRONT_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/rem.hpp b/plugin/wave/include/boost/preprocessor/tuple/rem.hpp new file mode 100644 index 0000000..c934447 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/rem.hpp @@ -0,0 +1,149 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011,2013. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_REM_HPP +# define BOOST_PREPROCESSOR_TUPLE_REM_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_REM */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC + /* To be used internally when __VA_ARGS__ could be empty ( or is a single element ) */ +# define BOOST_PP_REM_CAT(...) BOOST_PP_CAT(__VA_ARGS__,) +# endif +# define BOOST_PP_REM(...) __VA_ARGS__ +# else +# define BOOST_PP_REM(x) x +# endif +# +# /* BOOST_PP_TUPLE_REM */ +# +/* + VC++8.0 cannot handle the variadic version of BOOST_PP_TUPLE_REM(size) +*/ +# if BOOST_PP_VARIADICS && !(BOOST_PP_VARIADICS_MSVC && _MSC_VER <= 1400) +# if BOOST_PP_VARIADICS_MSVC + /* To be used internally when the size could be 0 ( or 1 ) */ +# define BOOST_PP_TUPLE_REM_CAT(size) BOOST_PP_REM_CAT +# endif +# define BOOST_PP_TUPLE_REM(size) BOOST_PP_REM +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_REM(size) BOOST_PP_TUPLE_REM_I(size) +# else +# define BOOST_PP_TUPLE_REM(size) BOOST_PP_TUPLE_REM_OO((size)) +# define BOOST_PP_TUPLE_REM_OO(par) BOOST_PP_TUPLE_REM_I ## par +# endif +# define BOOST_PP_TUPLE_REM_I(size) BOOST_PP_TUPLE_REM_ ## size +# endif +# define BOOST_PP_TUPLE_REM_0() +# define BOOST_PP_TUPLE_REM_1(e0) e0 +# define BOOST_PP_TUPLE_REM_2(e0, e1) e0, e1 +# define BOOST_PP_TUPLE_REM_3(e0, e1, e2) e0, e1, e2 +# define BOOST_PP_TUPLE_REM_4(e0, e1, e2, e3) e0, e1, e2, e3 +# define BOOST_PP_TUPLE_REM_5(e0, e1, e2, e3, e4) e0, e1, e2, e3, e4 +# define BOOST_PP_TUPLE_REM_6(e0, e1, e2, e3, e4, e5) e0, e1, e2, e3, e4, e5 +# define BOOST_PP_TUPLE_REM_7(e0, e1, e2, e3, e4, e5, e6) e0, e1, e2, e3, e4, e5, e6 +# define BOOST_PP_TUPLE_REM_8(e0, e1, e2, e3, e4, e5, e6, e7) e0, e1, e2, e3, e4, e5, e6, e7 +# define BOOST_PP_TUPLE_REM_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) e0, e1, e2, e3, e4, e5, e6, e7, e8 +# define BOOST_PP_TUPLE_REM_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9 +# define BOOST_PP_TUPLE_REM_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10 +# define BOOST_PP_TUPLE_REM_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11 +# define BOOST_PP_TUPLE_REM_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12 +# define BOOST_PP_TUPLE_REM_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13 +# define BOOST_PP_TUPLE_REM_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14 +# define BOOST_PP_TUPLE_REM_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15 +# define BOOST_PP_TUPLE_REM_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16 +# define BOOST_PP_TUPLE_REM_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17 +# define BOOST_PP_TUPLE_REM_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18 +# define BOOST_PP_TUPLE_REM_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19 +# define BOOST_PP_TUPLE_REM_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20 +# define BOOST_PP_TUPLE_REM_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21 +# define BOOST_PP_TUPLE_REM_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22 +# define BOOST_PP_TUPLE_REM_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23 +# define BOOST_PP_TUPLE_REM_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24 +# define BOOST_PP_TUPLE_REM_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25 +# define BOOST_PP_TUPLE_REM_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26 +# define BOOST_PP_TUPLE_REM_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27 +# define BOOST_PP_TUPLE_REM_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28 +# define BOOST_PP_TUPLE_REM_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29 +# define BOOST_PP_TUPLE_REM_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30 +# define BOOST_PP_TUPLE_REM_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31 +# define BOOST_PP_TUPLE_REM_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32 +# define BOOST_PP_TUPLE_REM_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33 +# define BOOST_PP_TUPLE_REM_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34 +# define BOOST_PP_TUPLE_REM_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35 +# define BOOST_PP_TUPLE_REM_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36 +# define BOOST_PP_TUPLE_REM_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37 +# define BOOST_PP_TUPLE_REM_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38 +# define BOOST_PP_TUPLE_REM_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39 +# define BOOST_PP_TUPLE_REM_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40 +# define BOOST_PP_TUPLE_REM_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41 +# define BOOST_PP_TUPLE_REM_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42 +# define BOOST_PP_TUPLE_REM_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43 +# define BOOST_PP_TUPLE_REM_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44 +# define BOOST_PP_TUPLE_REM_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45 +# define BOOST_PP_TUPLE_REM_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46 +# define BOOST_PP_TUPLE_REM_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47 +# define BOOST_PP_TUPLE_REM_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48 +# define BOOST_PP_TUPLE_REM_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49 +# define BOOST_PP_TUPLE_REM_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50 +# define BOOST_PP_TUPLE_REM_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51 +# define BOOST_PP_TUPLE_REM_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52 +# define BOOST_PP_TUPLE_REM_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53 +# define BOOST_PP_TUPLE_REM_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54 +# define BOOST_PP_TUPLE_REM_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55 +# define BOOST_PP_TUPLE_REM_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56 +# define BOOST_PP_TUPLE_REM_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57 +# define BOOST_PP_TUPLE_REM_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58 +# define BOOST_PP_TUPLE_REM_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59 +# define BOOST_PP_TUPLE_REM_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60 +# define BOOST_PP_TUPLE_REM_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61 +# define BOOST_PP_TUPLE_REM_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62 +# define BOOST_PP_TUPLE_REM_64(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63 +# +# /* BOOST_PP_TUPLE_REM_CTOR */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_REM_CTOR(...) BOOST_PP_TUPLE_REM_CTOR_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_REM_CTOR_O_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_REM_CTOR_I(m, args) BOOST_PP_TUPLE_REM_CTOR_II(m, args) +# define BOOST_PP_TUPLE_REM_CTOR_II(m, args) BOOST_PP_CAT(m ## args,) +# define BOOST_PP_TUPLE_REM_CTOR_O_1(tuple) BOOST_PP_EXPAND(BOOST_PP_TUPLE_IS_SINGLE_RETURN(BOOST_PP_REM_CAT,BOOST_PP_REM,tuple) tuple) +# else +# define BOOST_PP_TUPLE_REM_CTOR(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_REM_CTOR_O_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_REM_CTOR_O_1(tuple) BOOST_PP_REM tuple +# endif +# define BOOST_PP_TUPLE_REM_CTOR_O_2(size, tuple) BOOST_PP_TUPLE_REM_CTOR_O_1(tuple) +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_EDG() +# define BOOST_PP_TUPLE_REM_CTOR(size, tuple) BOOST_PP_TUPLE_REM_CTOR_I(BOOST_PP_TUPLE_REM(size), tuple) +# else +# define BOOST_PP_TUPLE_REM_CTOR(size, tuple) BOOST_PP_TUPLE_REM_CTOR_D(size, tuple) +# define BOOST_PP_TUPLE_REM_CTOR_D(size, tuple) BOOST_PP_TUPLE_REM_CTOR_I(BOOST_PP_TUPLE_REM(size), tuple) +# endif +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_REM_CTOR_I(ext, tuple) ext tuple +# else +# define BOOST_PP_TUPLE_REM_CTOR_I(ext, tuple) BOOST_PP_TUPLE_REM_CTOR_OO((ext, tuple)) +# define BOOST_PP_TUPLE_REM_CTOR_OO(par) BOOST_PP_TUPLE_REM_CTOR_II ## par +# define BOOST_PP_TUPLE_REM_CTOR_II(ext, tuple) ext ## tuple +# endif +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/remove.hpp b/plugin/wave/include/boost/preprocessor/tuple/remove.hpp new file mode 100644 index 0000000..25fa376 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/remove.hpp @@ -0,0 +1,64 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_REMOVE_HPP +# define BOOST_PREPROCESSOR_TUPLE_REMOVE_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_REMOVE */ +# +# define BOOST_PP_TUPLE_REMOVE(tuple, i) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER(BOOST_PP_TUPLE_SIZE(tuple),1), \ + BOOST_PP_TUPLE_REMOVE_EXEC, \ + BOOST_PP_TUPLE_REMOVE_RETURN \ + ) \ + (tuple, i) \ +/**/ +# +# define BOOST_PP_TUPLE_REMOVE_EXEC(tuple, i) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_REMOVE(BOOST_PP_TUPLE_TO_ARRAY(tuple), i)) \ +/**/ +# +# define BOOST_PP_TUPLE_REMOVE_RETURN(tuple, i) tuple +# +# /* BOOST_PP_TUPLE_REMOVE_D */ +# +# define BOOST_PP_TUPLE_REMOVE_D(d, tuple, i) \ + BOOST_PP_IIF \ + ( \ + BOOST_PP_GREATER_D(d, BOOST_PP_TUPLE_SIZE(tuple), 1), \ + BOOST_PP_TUPLE_REMOVE_D_EXEC, \ + BOOST_PP_TUPLE_REMOVE_D_RETURN \ + ) \ + (d, tuple, i) \ +/**/ +# +# define BOOST_PP_TUPLE_REMOVE_D_EXEC(d, tuple, i) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_REMOVE_D(d, BOOST_PP_TUPLE_TO_ARRAY(tuple), i)) \ +/**/ +# +# define BOOST_PP_TUPLE_REMOVE_D_RETURN(d, tuple, i) tuple +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_REMOVE_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/replace.hpp b/plugin/wave/include/boost/preprocessor/tuple/replace.hpp new file mode 100644 index 0000000..320ef9e --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/replace.hpp @@ -0,0 +1,37 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2013. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_REPLACE_HPP +# define BOOST_PREPROCESSOR_TUPLE_REPLACE_HPP +# +# include +# +# if BOOST_PP_VARIADICS +# +# include +# include +# include +# +# /* BOOST_PP_TUPLE_REPLACE */ +# +# define BOOST_PP_TUPLE_REPLACE(tuple, i, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_REPLACE(BOOST_PP_TUPLE_TO_ARRAY(tuple), i, elem)) \ +/**/ +# +# /* BOOST_PP_TUPLE_REPLACE_D */ +# +# define BOOST_PP_TUPLE_REPLACE_D(d, tuple, i, elem) \ + BOOST_PP_ARRAY_TO_TUPLE(BOOST_PP_ARRAY_REPLACE_D(d, BOOST_PP_TUPLE_TO_ARRAY(tuple), i, elem)) \ +/**/ +# +# endif // BOOST_PP_VARIADICS +# +# endif // BOOST_PREPROCESSOR_TUPLE_REPLACE_HPP diff --git a/plugin/wave/include/boost/preprocessor/tuple/reverse.hpp b/plugin/wave/include/boost/preprocessor/tuple/reverse.hpp new file mode 100644 index 0000000..489c442 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/reverse.hpp @@ -0,0 +1,117 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002-2011) */ +# /* Revised by Edward Diener (2011) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_REVERSE_HPP +# define BOOST_PREPROCESSOR_TUPLE_REVERSE_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_REVERSE */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_REVERSE(...) BOOST_PP_TUPLE_REVERSE_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_REVERSE_O_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_REVERSE_I(m, args) BOOST_PP_TUPLE_REVERSE_II(m, args) +# define BOOST_PP_TUPLE_REVERSE_II(m, args) BOOST_PP_CAT(m ## args,) +# define BOOST_PP_TUPLE_REVERSE_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_REVERSE_, BOOST_PP_TUPLE_SIZE(tuple)) tuple +# else +# define BOOST_PP_TUPLE_REVERSE(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_REVERSE_O_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_REVERSE_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_REVERSE_, BOOST_PP_VARIADIC_SIZE tuple) tuple +# endif +# define BOOST_PP_TUPLE_REVERSE_O_2(size, tuple) BOOST_PP_TUPLE_REVERSE_O_1(tuple) +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_REVERSE(size, tuple) BOOST_PP_TUPLE_REVERSE_I(size, tuple) +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_TUPLE_REVERSE_I(s, t) BOOST_PP_TUPLE_REVERSE_ ## s t +# else +# define BOOST_PP_TUPLE_REVERSE_I(s, t) BOOST_PP_TUPLE_REVERSE_II(BOOST_PP_TUPLE_REVERSE_ ## s t) +# define BOOST_PP_TUPLE_REVERSE_II(res) res +# endif +# else +# define BOOST_PP_TUPLE_REVERSE(size, tuple) BOOST_PP_TUPLE_REVERSE_OO((size, tuple)) +# define BOOST_PP_TUPLE_REVERSE_OO(par) BOOST_PP_TUPLE_REVERSE_I ## par +# define BOOST_PP_TUPLE_REVERSE_I(s, t) BOOST_PP_TUPLE_REVERSE_ ## s ## t +# endif +# endif +# define BOOST_PP_TUPLE_REVERSE_1(e0) (e0) +# define BOOST_PP_TUPLE_REVERSE_2(e0, e1) (e1, e0) +# define BOOST_PP_TUPLE_REVERSE_3(e0, e1, e2) (e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_4(e0, e1, e2, e3) (e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_5(e0, e1, e2, e3, e4) (e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_6(e0, e1, e2, e3, e4, e5) (e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_7(e0, e1, e2, e3, e4, e5, e6) (e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_8(e0, e1, e2, e3, e4, e5, e6, e7) (e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) (e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) (e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) (e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) (e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) (e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) (e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) (e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) (e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) (e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) (e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) (e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) (e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) (e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) (e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) (e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) (e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) (e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) (e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) (e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) (e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) (e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) (e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) (e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) (e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) (e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) (e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) (e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) (e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) (e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) (e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) (e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) (e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) (e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) (e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) (e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) (e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) (e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) (e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) (e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) (e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) (e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) (e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) (e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) (e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) (e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) (e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) (e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) (e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) (e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) (e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) (e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) (e59, e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) (e60, e59, e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) (e61, e60, e59, e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) (e62, e61, e60, e59, e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# define BOOST_PP_TUPLE_REVERSE_64(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) (e63, e62, e61, e60, e59, e58, e57, e56, e55, e54, e53, e52, e51, e50, e49, e48, e47, e46, e45, e44, e43, e42, e41, e40, e39, e38, e37, e36, e35, e34, e33, e32, e31, e30, e29, e28, e27, e26, e25, e24, e23, e22, e21, e20, e19, e18, e17, e16, e15, e14, e13, e12, e11, e10, e9, e8, e7, e6, e5, e4, e3, e2, e1, e0) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/size.hpp b/plugin/wave/include/boost/preprocessor/tuple/size.hpp new file mode 100644 index 0000000..675c065 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/size.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_SIZE_HPP +# define BOOST_PREPROCESSOR_TUPLE_SIZE_HPP +# +# include +# include +# include +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_SIZE(tuple) BOOST_PP_CAT(BOOST_PP_VARIADIC_SIZE tuple,) +# else +# define BOOST_PP_TUPLE_SIZE(tuple) BOOST_PP_VARIADIC_SIZE tuple +# endif +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/to_array.hpp b/plugin/wave/include/boost/preprocessor/tuple/to_array.hpp new file mode 100644 index 0000000..0a52811 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/to_array.hpp @@ -0,0 +1,39 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_TO_ARRAY_HPP +# define BOOST_PREPROCESSOR_TUPLE_TO_ARRAY_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_TO_ARRAY */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_TO_ARRAY(...) BOOST_PP_TUPLE_TO_ARRAY_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_ARRAY_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_TO_ARRAY_I(m, args) BOOST_PP_TUPLE_TO_ARRAY_II(m, args) +# define BOOST_PP_TUPLE_TO_ARRAY_II(m, args) BOOST_PP_CAT(m ## args,) +# define BOOST_PP_TUPLE_TO_ARRAY_1(tuple) (BOOST_PP_TUPLE_SIZE(tuple), tuple) +# else +# define BOOST_PP_TUPLE_TO_ARRAY(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_ARRAY_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_TO_ARRAY_1(tuple) (BOOST_PP_VARIADIC_SIZE tuple, tuple) +# endif +# define BOOST_PP_TUPLE_TO_ARRAY_2(size, tuple) (size, tuple) +# else +# define BOOST_PP_TUPLE_TO_ARRAY(size, tuple) (size, tuple) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/to_list.hpp b/plugin/wave/include/boost/preprocessor/tuple/to_list.hpp new file mode 100644 index 0000000..da7828f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/to_list.hpp @@ -0,0 +1,118 @@ +# /* Copyright (C) 2001 +# * Housemarque Oy +# * http://www.housemarque.com +# * +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# */ +# +# /* Revised by Paul Mensonides (2002-2011) */ +# /* Revised by Edward Diener (2011) */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP +# define BOOST_PREPROCESSOR_TUPLE_TO_LIST_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_TO_LIST */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_TO_LIST(...) BOOST_PP_TUPLE_TO_LIST_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_LIST_O_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_TO_LIST_I(m, args) BOOST_PP_TUPLE_TO_LIST_II(m, args) +# define BOOST_PP_TUPLE_TO_LIST_II(m, args) BOOST_PP_CAT(m ## args,) +# define BOOST_PP_TUPLE_TO_LIST_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_TO_LIST_, BOOST_PP_TUPLE_SIZE(tuple)) tuple +# else +# define BOOST_PP_TUPLE_TO_LIST(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_LIST_O_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_TO_LIST_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_TO_LIST_, BOOST_PP_VARIADIC_SIZE tuple) tuple +# endif +# define BOOST_PP_TUPLE_TO_LIST_O_2(size, tuple) BOOST_PP_TUPLE_TO_LIST_O_1(tuple) +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_TO_LIST(size, tuple) BOOST_PP_TUPLE_TO_LIST_I(size, tuple) +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_TUPLE_TO_LIST_I(s, t) BOOST_PP_TUPLE_TO_LIST_ ## s t +# else +# define BOOST_PP_TUPLE_TO_LIST_I(s, t) BOOST_PP_TUPLE_TO_LIST_II(BOOST_PP_TUPLE_TO_LIST_ ## s t) +# define BOOST_PP_TUPLE_TO_LIST_II(res) res +# endif +# else +# define BOOST_PP_TUPLE_TO_LIST(size, tuple) BOOST_PP_TUPLE_TO_LIST_OO((size, tuple)) +# define BOOST_PP_TUPLE_TO_LIST_OO(par) BOOST_PP_TUPLE_TO_LIST_I ## par +# define BOOST_PP_TUPLE_TO_LIST_I(s, t) BOOST_PP_TUPLE_TO_LIST_ ## s ## t +# endif +# endif +# +# define BOOST_PP_TUPLE_TO_LIST_1(e0) (e0, BOOST_PP_NIL) +# define BOOST_PP_TUPLE_TO_LIST_2(e0, e1) (e0, (e1, BOOST_PP_NIL)) +# define BOOST_PP_TUPLE_TO_LIST_3(e0, e1, e2) (e0, (e1, (e2, BOOST_PP_NIL))) +# define BOOST_PP_TUPLE_TO_LIST_4(e0, e1, e2, e3) (e0, (e1, (e2, (e3, BOOST_PP_NIL)))) +# define BOOST_PP_TUPLE_TO_LIST_5(e0, e1, e2, e3, e4) (e0, (e1, (e2, (e3, (e4, BOOST_PP_NIL))))) +# define BOOST_PP_TUPLE_TO_LIST_6(e0, e1, e2, e3, e4, e5) (e0, (e1, (e2, (e3, (e4, (e5, BOOST_PP_NIL)))))) +# define BOOST_PP_TUPLE_TO_LIST_7(e0, e1, e2, e3, e4, e5, e6) (e0, (e1, (e2, (e3, (e4, (e5, (e6, BOOST_PP_NIL))))))) +# define BOOST_PP_TUPLE_TO_LIST_8(e0, e1, e2, e3, e4, e5, e6, e7) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, BOOST_PP_NIL)))))))) +# define BOOST_PP_TUPLE_TO_LIST_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, BOOST_PP_NIL))))))))) +# define BOOST_PP_TUPLE_TO_LIST_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, BOOST_PP_NIL)))))))))) +# define BOOST_PP_TUPLE_TO_LIST_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, BOOST_PP_NIL))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, BOOST_PP_NIL)))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, BOOST_PP_NIL))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, BOOST_PP_NIL)))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, BOOST_PP_NIL))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, BOOST_PP_NIL)))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, BOOST_PP_NIL))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, BOOST_PP_NIL)))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, BOOST_PP_NIL))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, BOOST_PP_NIL)))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, BOOST_PP_NIL))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, BOOST_PP_NIL)))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, BOOST_PP_NIL))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, BOOST_PP_NIL)))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, BOOST_PP_NIL))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, BOOST_PP_NIL)))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, BOOST_PP_NIL))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, BOOST_PP_NIL)))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, BOOST_PP_NIL))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, BOOST_PP_NIL)))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, BOOST_PP_NIL))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, BOOST_PP_NIL)))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, BOOST_PP_NIL))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, BOOST_PP_NIL)))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, BOOST_PP_NIL))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, (e59, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, (e59, (e60, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, (e59, (e60, (e61, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, (e59, (e60, (e61, (e62, BOOST_PP_NIL))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# define BOOST_PP_TUPLE_TO_LIST_64(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) (e0, (e1, (e2, (e3, (e4, (e5, (e6, (e7, (e8, (e9, (e10, (e11, (e12, (e13, (e14, (e15, (e16, (e17, (e18, (e19, (e20, (e21, (e22, (e23, (e24, (e25, (e26, (e27, (e28, (e29, (e30, (e31, (e32, (e33, (e34, (e35, (e36, (e37, (e38, (e39, (e40, (e41, (e42, (e43, (e44, (e45, (e46, (e47, (e48, (e49, (e50, (e51, (e52, (e53, (e54, (e55, (e56, (e57, (e58, (e59, (e60, (e61, (e62, (e63, BOOST_PP_NIL)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/tuple/to_seq.hpp b/plugin/wave/include/boost/preprocessor/tuple/to_seq.hpp new file mode 100644 index 0000000..a53f5a0 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/tuple/to_seq.hpp @@ -0,0 +1,119 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002-2011. * +# * (C) Copyright Edward Diener 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_TUPLE_TO_SEQ_HPP +# define BOOST_PREPROCESSOR_TUPLE_TO_SEQ_HPP +# +# include +# include +# include +# include +# include +# +# /* BOOST_PP_TUPLE_TO_SEQ */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_TUPLE_TO_SEQ(...) BOOST_PP_TUPLE_TO_SEQ_I(BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_SEQ_O_, __VA_ARGS__), (__VA_ARGS__)) +# define BOOST_PP_TUPLE_TO_SEQ_I(m, args) BOOST_PP_TUPLE_TO_SEQ_II(m, args) +# define BOOST_PP_TUPLE_TO_SEQ_II(m, args) BOOST_PP_CAT(m ## args,) +# define BOOST_PP_TUPLE_TO_SEQ_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_TO_SEQ_, BOOST_PP_TUPLE_SIZE(tuple)) tuple +# else +# define BOOST_PP_TUPLE_TO_SEQ(...) BOOST_PP_OVERLOAD(BOOST_PP_TUPLE_TO_SEQ_O_, __VA_ARGS__)(__VA_ARGS__) +# define BOOST_PP_TUPLE_TO_SEQ_O_1(tuple) BOOST_PP_CAT(BOOST_PP_TUPLE_TO_SEQ_, BOOST_PP_VARIADIC_SIZE tuple) tuple +# endif +# define BOOST_PP_TUPLE_TO_SEQ_O_2(size, tuple) BOOST_PP_TUPLE_TO_SEQ_O_1(tuple) +# else +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_TUPLE_TO_SEQ(size, tuple) BOOST_PP_TUPLE_TO_SEQ_I(size, tuple) +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MSVC() +# define BOOST_PP_TUPLE_TO_SEQ_I(s, t) BOOST_PP_TUPLE_TO_SEQ_ ## s t +# else +# define BOOST_PP_TUPLE_TO_SEQ_I(s, t) BOOST_PP_TUPLE_TO_SEQ_II(BOOST_PP_TUPLE_TO_SEQ_ ## s t) +# define BOOST_PP_TUPLE_TO_SEQ_II(res) res +# endif +# else +# define BOOST_PP_TUPLE_TO_SEQ(size, tuple) BOOST_PP_TUPLE_TO_SEQ_OO((size, tuple)) +# define BOOST_PP_TUPLE_TO_SEQ_OO(par) BOOST_PP_TUPLE_TO_SEQ_I ## par +# define BOOST_PP_TUPLE_TO_SEQ_I(s, t) BOOST_PP_TUPLE_TO_SEQ_ ## s ## t +# endif +# endif +# +/* An empty array can be passed */ +# define BOOST_PP_TUPLE_TO_SEQ_0() () +# +# define BOOST_PP_TUPLE_TO_SEQ_1(e0) (e0) +# define BOOST_PP_TUPLE_TO_SEQ_2(e0, e1) (e0)(e1) +# define BOOST_PP_TUPLE_TO_SEQ_3(e0, e1, e2) (e0)(e1)(e2) +# define BOOST_PP_TUPLE_TO_SEQ_4(e0, e1, e2, e3) (e0)(e1)(e2)(e3) +# define BOOST_PP_TUPLE_TO_SEQ_5(e0, e1, e2, e3, e4) (e0)(e1)(e2)(e3)(e4) +# define BOOST_PP_TUPLE_TO_SEQ_6(e0, e1, e2, e3, e4, e5) (e0)(e1)(e2)(e3)(e4)(e5) +# define BOOST_PP_TUPLE_TO_SEQ_7(e0, e1, e2, e3, e4, e5, e6) (e0)(e1)(e2)(e3)(e4)(e5)(e6) +# define BOOST_PP_TUPLE_TO_SEQ_8(e0, e1, e2, e3, e4, e5, e6, e7) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7) +# define BOOST_PP_TUPLE_TO_SEQ_9(e0, e1, e2, e3, e4, e5, e6, e7, e8) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8) +# define BOOST_PP_TUPLE_TO_SEQ_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9) +# define BOOST_PP_TUPLE_TO_SEQ_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10) +# define BOOST_PP_TUPLE_TO_SEQ_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11) +# define BOOST_PP_TUPLE_TO_SEQ_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12) +# define BOOST_PP_TUPLE_TO_SEQ_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13) +# define BOOST_PP_TUPLE_TO_SEQ_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14) +# define BOOST_PP_TUPLE_TO_SEQ_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15) +# define BOOST_PP_TUPLE_TO_SEQ_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16) +# define BOOST_PP_TUPLE_TO_SEQ_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17) +# define BOOST_PP_TUPLE_TO_SEQ_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18) +# define BOOST_PP_TUPLE_TO_SEQ_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19) +# define BOOST_PP_TUPLE_TO_SEQ_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20) +# define BOOST_PP_TUPLE_TO_SEQ_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21) +# define BOOST_PP_TUPLE_TO_SEQ_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22) +# define BOOST_PP_TUPLE_TO_SEQ_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23) +# define BOOST_PP_TUPLE_TO_SEQ_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24) +# define BOOST_PP_TUPLE_TO_SEQ_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25) +# define BOOST_PP_TUPLE_TO_SEQ_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26) +# define BOOST_PP_TUPLE_TO_SEQ_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27) +# define BOOST_PP_TUPLE_TO_SEQ_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28) +# define BOOST_PP_TUPLE_TO_SEQ_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29) +# define BOOST_PP_TUPLE_TO_SEQ_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30) +# define BOOST_PP_TUPLE_TO_SEQ_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31) +# define BOOST_PP_TUPLE_TO_SEQ_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32) +# define BOOST_PP_TUPLE_TO_SEQ_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33) +# define BOOST_PP_TUPLE_TO_SEQ_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34) +# define BOOST_PP_TUPLE_TO_SEQ_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35) +# define BOOST_PP_TUPLE_TO_SEQ_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36) +# define BOOST_PP_TUPLE_TO_SEQ_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37) +# define BOOST_PP_TUPLE_TO_SEQ_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38) +# define BOOST_PP_TUPLE_TO_SEQ_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39) +# define BOOST_PP_TUPLE_TO_SEQ_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40) +# define BOOST_PP_TUPLE_TO_SEQ_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41) +# define BOOST_PP_TUPLE_TO_SEQ_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42) +# define BOOST_PP_TUPLE_TO_SEQ_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43) +# define BOOST_PP_TUPLE_TO_SEQ_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44) +# define BOOST_PP_TUPLE_TO_SEQ_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45) +# define BOOST_PP_TUPLE_TO_SEQ_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46) +# define BOOST_PP_TUPLE_TO_SEQ_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47) +# define BOOST_PP_TUPLE_TO_SEQ_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48) +# define BOOST_PP_TUPLE_TO_SEQ_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49) +# define BOOST_PP_TUPLE_TO_SEQ_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50) +# define BOOST_PP_TUPLE_TO_SEQ_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51) +# define BOOST_PP_TUPLE_TO_SEQ_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52) +# define BOOST_PP_TUPLE_TO_SEQ_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53) +# define BOOST_PP_TUPLE_TO_SEQ_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54) +# define BOOST_PP_TUPLE_TO_SEQ_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55) +# define BOOST_PP_TUPLE_TO_SEQ_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56) +# define BOOST_PP_TUPLE_TO_SEQ_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57) +# define BOOST_PP_TUPLE_TO_SEQ_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58) +# define BOOST_PP_TUPLE_TO_SEQ_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58)(e59) +# define BOOST_PP_TUPLE_TO_SEQ_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58)(e59)(e60) +# define BOOST_PP_TUPLE_TO_SEQ_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58)(e59)(e60)(e61) +# define BOOST_PP_TUPLE_TO_SEQ_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58)(e59)(e60)(e61)(e62) +# define BOOST_PP_TUPLE_TO_SEQ_64(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63) (e0)(e1)(e2)(e3)(e4)(e5)(e6)(e7)(e8)(e9)(e10)(e11)(e12)(e13)(e14)(e15)(e16)(e17)(e18)(e19)(e20)(e21)(e22)(e23)(e24)(e25)(e26)(e27)(e28)(e29)(e30)(e31)(e32)(e33)(e34)(e35)(e36)(e37)(e38)(e39)(e40)(e41)(e42)(e43)(e44)(e45)(e46)(e47)(e48)(e49)(e50)(e51)(e52)(e53)(e54)(e55)(e56)(e57)(e58)(e59)(e60)(e61)(e62)(e63) +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic.hpp b/plugin/wave/include/boost/preprocessor/variadic.hpp new file mode 100644 index 0000000..a28e026 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic.hpp @@ -0,0 +1,23 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_HPP +# define BOOST_PREPROCESSOR_VARIADIC_HPP +# +# include +# include +# include +# include +# include +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/detail/is_single_return.hpp b/plugin/wave/include/boost/preprocessor/variadic/detail/is_single_return.hpp new file mode 100644 index 0000000..5c95029 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/detail/is_single_return.hpp @@ -0,0 +1,28 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2014. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_DETAIL_IS_SINGLE_RETURN_HPP +# define BOOST_PREPROCESSOR_VARIADIC_DETAIL_IS_SINGLE_RETURN_HPP +# +# include +# +# /* BOOST_PP_VARIADIC_IS_SINGLE_RETURN */ +# +# if BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC +# include +# include +# include +# define BOOST_PP_VARIADIC_IS_SINGLE_RETURN(sr,nsr,...) \ + BOOST_PP_IIF(BOOST_PP_IS_1(BOOST_PP_VARIADIC_SIZE(__VA_ARGS__)),sr,nsr) \ + /**/ +# endif /* BOOST_PP_VARIADICS && BOOST_PP_VARIADICS_MSVC */ +# +# endif /* BOOST_PREPROCESSOR_VARIADIC_DETAIL_IS_SINGLE_RETURN_HPP */ diff --git a/plugin/wave/include/boost/preprocessor/variadic/elem.hpp b/plugin/wave/include/boost/preprocessor/variadic/elem.hpp new file mode 100644 index 0000000..be38a94 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/elem.hpp @@ -0,0 +1,94 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_ELEM_HPP +# define BOOST_PREPROCESSOR_VARIADIC_ELEM_HPP +# +# include +# include +# +# /* BOOST_PP_VARIADIC_ELEM */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_VARIADIC_ELEM(n, ...) BOOST_PP_VARIADIC_ELEM_I(n,__VA_ARGS__) +# define BOOST_PP_VARIADIC_ELEM_I(n, ...) BOOST_PP_CAT(BOOST_PP_CAT(BOOST_PP_VARIADIC_ELEM_, n)(__VA_ARGS__,),) +# else +# define BOOST_PP_VARIADIC_ELEM(n, ...) BOOST_PP_CAT(BOOST_PP_VARIADIC_ELEM_, n)(__VA_ARGS__,) +# endif +# define BOOST_PP_VARIADIC_ELEM_0(e0, ...) e0 +# define BOOST_PP_VARIADIC_ELEM_1(e0, e1, ...) e1 +# define BOOST_PP_VARIADIC_ELEM_2(e0, e1, e2, ...) e2 +# define BOOST_PP_VARIADIC_ELEM_3(e0, e1, e2, e3, ...) e3 +# define BOOST_PP_VARIADIC_ELEM_4(e0, e1, e2, e3, e4, ...) e4 +# define BOOST_PP_VARIADIC_ELEM_5(e0, e1, e2, e3, e4, e5, ...) e5 +# define BOOST_PP_VARIADIC_ELEM_6(e0, e1, e2, e3, e4, e5, e6, ...) e6 +# define BOOST_PP_VARIADIC_ELEM_7(e0, e1, e2, e3, e4, e5, e6, e7, ...) e7 +# define BOOST_PP_VARIADIC_ELEM_8(e0, e1, e2, e3, e4, e5, e6, e7, e8, ...) e8 +# define BOOST_PP_VARIADIC_ELEM_9(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, ...) e9 +# define BOOST_PP_VARIADIC_ELEM_10(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, ...) e10 +# define BOOST_PP_VARIADIC_ELEM_11(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, ...) e11 +# define BOOST_PP_VARIADIC_ELEM_12(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, ...) e12 +# define BOOST_PP_VARIADIC_ELEM_13(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, ...) e13 +# define BOOST_PP_VARIADIC_ELEM_14(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, ...) e14 +# define BOOST_PP_VARIADIC_ELEM_15(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, ...) e15 +# define BOOST_PP_VARIADIC_ELEM_16(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, ...) e16 +# define BOOST_PP_VARIADIC_ELEM_17(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, ...) e17 +# define BOOST_PP_VARIADIC_ELEM_18(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, ...) e18 +# define BOOST_PP_VARIADIC_ELEM_19(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, ...) e19 +# define BOOST_PP_VARIADIC_ELEM_20(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, ...) e20 +# define BOOST_PP_VARIADIC_ELEM_21(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, ...) e21 +# define BOOST_PP_VARIADIC_ELEM_22(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, ...) e22 +# define BOOST_PP_VARIADIC_ELEM_23(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, ...) e23 +# define BOOST_PP_VARIADIC_ELEM_24(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, ...) e24 +# define BOOST_PP_VARIADIC_ELEM_25(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, ...) e25 +# define BOOST_PP_VARIADIC_ELEM_26(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, ...) e26 +# define BOOST_PP_VARIADIC_ELEM_27(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, ...) e27 +# define BOOST_PP_VARIADIC_ELEM_28(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, ...) e28 +# define BOOST_PP_VARIADIC_ELEM_29(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, ...) e29 +# define BOOST_PP_VARIADIC_ELEM_30(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, ...) e30 +# define BOOST_PP_VARIADIC_ELEM_31(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, ...) e31 +# define BOOST_PP_VARIADIC_ELEM_32(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, ...) e32 +# define BOOST_PP_VARIADIC_ELEM_33(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, ...) e33 +# define BOOST_PP_VARIADIC_ELEM_34(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, ...) e34 +# define BOOST_PP_VARIADIC_ELEM_35(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, ...) e35 +# define BOOST_PP_VARIADIC_ELEM_36(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, ...) e36 +# define BOOST_PP_VARIADIC_ELEM_37(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, ...) e37 +# define BOOST_PP_VARIADIC_ELEM_38(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, ...) e38 +# define BOOST_PP_VARIADIC_ELEM_39(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, ...) e39 +# define BOOST_PP_VARIADIC_ELEM_40(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, ...) e40 +# define BOOST_PP_VARIADIC_ELEM_41(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, ...) e41 +# define BOOST_PP_VARIADIC_ELEM_42(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, ...) e42 +# define BOOST_PP_VARIADIC_ELEM_43(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, ...) e43 +# define BOOST_PP_VARIADIC_ELEM_44(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, ...) e44 +# define BOOST_PP_VARIADIC_ELEM_45(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, ...) e45 +# define BOOST_PP_VARIADIC_ELEM_46(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, ...) e46 +# define BOOST_PP_VARIADIC_ELEM_47(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, ...) e47 +# define BOOST_PP_VARIADIC_ELEM_48(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, ...) e48 +# define BOOST_PP_VARIADIC_ELEM_49(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, ...) e49 +# define BOOST_PP_VARIADIC_ELEM_50(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, ...) e50 +# define BOOST_PP_VARIADIC_ELEM_51(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, ...) e51 +# define BOOST_PP_VARIADIC_ELEM_52(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, ...) e52 +# define BOOST_PP_VARIADIC_ELEM_53(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, ...) e53 +# define BOOST_PP_VARIADIC_ELEM_54(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, ...) e54 +# define BOOST_PP_VARIADIC_ELEM_55(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, ...) e55 +# define BOOST_PP_VARIADIC_ELEM_56(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, ...) e56 +# define BOOST_PP_VARIADIC_ELEM_57(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, ...) e57 +# define BOOST_PP_VARIADIC_ELEM_58(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, ...) e58 +# define BOOST_PP_VARIADIC_ELEM_59(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, ...) e59 +# define BOOST_PP_VARIADIC_ELEM_60(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, ...) e60 +# define BOOST_PP_VARIADIC_ELEM_61(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, ...) e61 +# define BOOST_PP_VARIADIC_ELEM_62(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, ...) e62 +# define BOOST_PP_VARIADIC_ELEM_63(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63, ...) e63 +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/size.hpp b/plugin/wave/include/boost/preprocessor/variadic/size.hpp new file mode 100644 index 0000000..b92a5ff --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/size.hpp @@ -0,0 +1,30 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_SIZE_HPP +# define BOOST_PREPROCESSOR_VARIADIC_SIZE_HPP +# +# include +# include +# +# /* BOOST_PP_VARIADIC_SIZE */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_VARIADIC_SIZE(...) BOOST_PP_CAT(BOOST_PP_VARIADIC_SIZE_I(__VA_ARGS__, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,),) +# else +# define BOOST_PP_VARIADIC_SIZE(...) BOOST_PP_VARIADIC_SIZE_I(__VA_ARGS__, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1,) +# endif +# define BOOST_PP_VARIADIC_SIZE_I(e0, e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12, e13, e14, e15, e16, e17, e18, e19, e20, e21, e22, e23, e24, e25, e26, e27, e28, e29, e30, e31, e32, e33, e34, e35, e36, e37, e38, e39, e40, e41, e42, e43, e44, e45, e46, e47, e48, e49, e50, e51, e52, e53, e54, e55, e56, e57, e58, e59, e60, e61, e62, e63, size, ...) size +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/to_array.hpp b/plugin/wave/include/boost/preprocessor/variadic/to_array.hpp new file mode 100644 index 0000000..14c2b92 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/to_array.hpp @@ -0,0 +1,32 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_TO_ARRAY_HPP +# define BOOST_PREPROCESSOR_VARIADIC_TO_ARRAY_HPP +# +# include +# include +# if BOOST_PP_VARIADICS_MSVC +# include +# endif +# +# /* BOOST_PP_VARIADIC_TO_ARRAY */ +# +# if BOOST_PP_VARIADICS +# if BOOST_PP_VARIADICS_MSVC +# define BOOST_PP_VARIADIC_TO_ARRAY(...) BOOST_PP_TUPLE_TO_ARRAY_2(BOOST_PP_VARIADIC_SIZE(__VA_ARGS__),(__VA_ARGS__)) +# else +# define BOOST_PP_VARIADIC_TO_ARRAY(...) BOOST_PP_TUPLE_TO_ARRAY((__VA_ARGS__)) +# endif +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/to_list.hpp b/plugin/wave/include/boost/preprocessor/variadic/to_list.hpp new file mode 100644 index 0000000..43d526a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/to_list.hpp @@ -0,0 +1,25 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_TO_LIST_HPP +# define BOOST_PREPROCESSOR_VARIADIC_TO_LIST_HPP +# +# include +# include +# +# /* BOOST_PP_VARIADIC_TO_LIST */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_VARIADIC_TO_LIST(...) BOOST_PP_TUPLE_TO_LIST((__VA_ARGS__)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/to_seq.hpp b/plugin/wave/include/boost/preprocessor/variadic/to_seq.hpp new file mode 100644 index 0000000..255af4f --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/to_seq.hpp @@ -0,0 +1,25 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_TO_SEQ_HPP +# define BOOST_PREPROCESSOR_VARIADIC_TO_SEQ_HPP +# +# include +# include +# +# /* BOOST_PP_VARIADIC_TO_SEQ */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_VARIADIC_TO_SEQ(...) BOOST_PP_TUPLE_TO_SEQ((__VA_ARGS__)) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/variadic/to_tuple.hpp b/plugin/wave/include/boost/preprocessor/variadic/to_tuple.hpp new file mode 100644 index 0000000..ddb6d8b --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/variadic/to_tuple.hpp @@ -0,0 +1,24 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Edward Diener 2011. * +# * (C) Copyright Paul Mensonides 2011. * +# * Distributed under the Boost Software License, Version 1.0. (See * +# * accompanying file LICENSE_1_0.txt or copy at * +# * http://www.boost.org/LICENSE_1_0.txt) * +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_VARIADIC_TO_TUPLE_HPP +# define BOOST_PREPROCESSOR_VARIADIC_TO_TUPLE_HPP +# +# include +# +# /* BOOST_PP_VARIADIC_TO_TUPLE */ +# +# if BOOST_PP_VARIADICS +# define BOOST_PP_VARIADIC_TO_TUPLE(...) (__VA_ARGS__) +# endif +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/while.hpp b/plugin/wave/include/boost/preprocessor/while.hpp new file mode 100644 index 0000000..4b9c801 --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/while.hpp @@ -0,0 +1,17 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_WHILE_HPP +# define BOOST_PREPROCESSOR_WHILE_HPP +# +# include +# +# endif diff --git a/plugin/wave/include/boost/preprocessor/wstringize.hpp b/plugin/wave/include/boost/preprocessor/wstringize.hpp new file mode 100644 index 0000000..5d1a83a --- /dev/null +++ b/plugin/wave/include/boost/preprocessor/wstringize.hpp @@ -0,0 +1,29 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef BOOST_PREPROCESSOR_WSTRINGIZE_HPP +# define BOOST_PREPROCESSOR_WSTRINGIZE_HPP +# +# include +# +# /* BOOST_PP_WSTRINGIZE */ +# +# if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC() +# define BOOST_PP_WSTRINGIZE(text) BOOST_PP_WSTRINGIZE_I(text) +# else +# define BOOST_PP_WSTRINGIZE(text) BOOST_PP_WSTRINGIZE_OO((text)) +# define BOOST_PP_WSTRINGIZE_OO(par) BOOST_PP_WSTRINGIZE_I ## par +# endif +# +# define BOOST_PP_WSTRINGIZE_I(text) BOOST_PP_WSTRINGIZE_II(#text) +# define BOOST_PP_WSTRINGIZE_II(str) L ## str +# +# endif diff --git a/plugin/ydhost/ydhost.exe b/plugin/ydhost/ydhost.exe new file mode 100644 index 0000000..a5c4dec Binary files /dev/null and b/plugin/ydhost/ydhost.exe differ diff --git a/share/locale/zh_CN/LC_MESSAGES/MainScript.mo b/share/locale/zh_CN/LC_MESSAGES/MainScript.mo new file mode 100644 index 0000000..b391890 Binary files /dev/null and b/share/locale/zh_CN/LC_MESSAGES/MainScript.mo differ diff --git a/share/locale/zh_CN/LC_MESSAGES/MainScript.po b/share/locale/zh_CN/LC_MESSAGES/MainScript.po new file mode 100644 index 0000000..2f1241e --- /dev/null +++ b/share/locale/zh_CN/LC_MESSAGES/MainScript.po @@ -0,0 +1,191 @@ +msgid "" +msgstr "" +"Project-Id-Version: YDWE Main Script\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-10 10:31+0800\n" +"PO-Revision-Date: 2018-08-14 09:45+0800\n" +"Last-Translator: \n" +"Language-Team: YDWE <417214250@qq.com>\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-KeywordsList: _;gettext;gettext_noop\n" +"X-Poedit-Basepath: ../../../..\n" +"X-Poedit-SourceCharset: UTF-8\n" +"X-Generator: Poedit 2.0.2\n" +"X-Poedit-SearchPath-0: plugin\n" +"X-Poedit-SearchPath-1: share/script\n" + +#: share/script/compile/template.lua:105 +msgid "Unknown" +msgstr "未知" + +#: share/script/compile/wave.lua:85 +#, lua-format +msgid "" +"Preprocessor failed with message:\n" +"stdout:%s\n" +"stderr: %s" +msgstr "" +"预处理出现错误,信息:\n" +"stdout:%s\n" +"stderr: %s" + +#: share/script/compile/wave.lua:87 +msgid "Cannot start preprocessor process." +msgstr "无法启动预处理进程" + +#: share/script/ffi/gui.lua:36 +msgid "Error" +msgstr "错误" + +#: share/script/ffi/gui.lua:40 share/script/ydwe_on_startup.lua:31 +msgid "YDWE" +msgstr "WE" + +#: share/script/ydwe_on_menu.lua:52 +msgid "Export file" +msgstr "导出文件" + +#: share/script/ydwe_on_menu.lua:53 +msgid "" +"Please enter the file path to export. Currently you can export only one file " +"each time" +msgstr "请输需要导出的文件路径。当前仅支持每次导出一个文件。" + +#: share/script/ydwe_on_menu.lua:55 share/script/ydwe_on_menu.lua:87 +#: share/script/ydwe_on_new_object_id.lua:84 +msgid "OK" +msgstr "确定" + +#: share/script/ydwe_on_menu.lua:56 share/script/ydwe_on_menu.lua:88 +#: share/script/ydwe_on_new_object_id.lua:85 +msgid "Cancel" +msgstr "取消" + +#: share/script/ydwe_on_menu.lua:67 +msgid "Save file" +msgstr "保存文件" + +#: share/script/ydwe_on_menu.lua:74 +msgid "The file you have entered does not exist." +msgstr "你输入的文件不存在" + +#: share/script/ydwe_on_menu.lua:84 +msgid "Lua Test" +msgstr "执行Lua代码" + +#: share/script/ydwe_on_menu.lua:85 +msgid "Please enter the lua script to execute" +msgstr "请输入需要执行的Lua脚本代码" + +#: share/script/ydwe_on_menu.lua:99 +msgid "Error occured when executing code: " +msgstr "执行代码时发生错误:" + +#: share/script/ydwe_on_menu.lua:103 +msgid "There are syntax errors in your code." +msgstr "你输入的代码中有语法错误。" + +#: share/script/ydwe_on_menu.lua:124 +msgid "&YDWE" +msgstr "配置(&C)" + +#: share/script/ydwe_on_menu.lua:125 +msgid "YDWE &Config" +msgstr "配置(&C)" + +#: share/script/ydwe_on_menu.lua:126 +msgid "Launch &Warcraft3" +msgstr "启动魔兽(&W)" + +#: share/script/ydwe_on_menu.lua:127 +msgid "Show las&t compile result" +msgstr "显示上一次编译的结果(&T)" + +#: share/script/ydwe_on_menu.lua:128 +msgid "Show J&assHelper version" +msgstr "显示JassHelper的版本(&A)" + +#: share/script/ydwe_on_menu.lua:129 +msgid "Show c&Jass version" +msgstr "显示cJass的版本(&J)" + +#: share/script/ydwe_on_menu.lua:131 +msgid "&Export WE file" +msgstr "导出WE文件(&E)" + +#: share/script/ydwe_on_menu.lua:132 +msgid "&Lua Test" +msgstr "执行Lua代码(&L)" + +#: share/script/ydwe_on_menu.lua:133 +msgid "Cre&dits" +msgstr "致谢(&D)" + +#: share/script/ydwe_on_menu.lua:134 +msgid "&Platform" +msgstr "作者之家(&P)" + +#: share/script/ydwe_on_menu.lua:135 +msgid "Launch Platform &official website" +msgstr "打开官网(&O)" + +#: share/script/ydwe_on_menu.lua:136 +msgid "Launch Author's &Home" +msgstr "打开作者之家(&H)" + +#: share/script/ydwe_on_new_object_id.lua:81 +msgid "New Object Id" +msgstr "新物体的ID" + +#: share/script/ydwe_on_new_object_id.lua:82 +msgid "Please input new object ID, or cancel to use the default one." +msgstr "请输入新物体的ID值(4个字母数字)。或者选择取消使用默认值。" + +#: share/script/ydwe_on_new_object_id.lua:98 +msgid "" +"You have entered an invalid ID. The ID must contain just 4 letters or " +"digits. It cannot contain chars other than those in ASCII." +msgstr "" +"你输入的ID值不合法。ID必须包含恰好4个字符,不能是除了ASCII码以外的其他字符," +"特别是汉字。" + +#: share/script/ydwe_on_new_object_id.lua:102 +msgid "You have entered an invalid ID. This ID already exists." +msgstr "你输入的ID已经存在。" + +#: share/script/ydwe_on_save.lua:198 +#, lua-format +msgid "Whether to remove the read-only attribute from \"%s\"?" +msgstr "地图 \"%s\" 带有只读属性,是否去掉地图中的只读属性?" + +#: share/script/ydwe_on_startup.lua:31 share/script/ydwe_on_startup.lua:53 +#, lua-format +msgid "" +"YDWE has detected that there is a directory named \"%s\" located in Warcraft " +"3 installation directory. It may prevent YDWE from working. Do you want to " +"delete it?" +msgstr "" +"WE检测到魔兽的安装路径下存在一个名为\"%s\"的文件夹。它可能影响WE运行,是否删" +"除?" + +#: share/script/ydwe_on_startup.lua:123 +msgid "" +"YDWE has detected that your game.dll and war3patch.mpq mismatch. It may be " +"caused by the so called \"Warcraft Version Converter\". This situation will " +"cause a failure on saving and testing maps. It is strongly recommended to " +"use the offical patched provided by Blizzard." +msgstr "" +"检测到您的魔兽Game.dll和War3Patch.mpq的版本不一致,这可能是由版本转换器造成" +"的,这会导致您无法保存和测试地图,强烈建议您使用正确的魔兽补丁还原您的魔兽。" + +#~ msgid "UTF-8 to &native" +#~ msgstr "剪贴板UTF-8转码(&N)" + +#~ msgid "&Set file association" +#~ msgstr "设置文件关联(&S)" + +#~ msgid "Preprocessor failed." +#~ msgstr "预处理失败" diff --git a/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.mo b/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.mo new file mode 100644 index 0000000..fbfa643 Binary files /dev/null and b/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.mo differ diff --git a/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.po b/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.po new file mode 100644 index 0000000..a1184f0 --- /dev/null +++ b/share/locale/zh_CN/LC_MESSAGES/YDWEStartup.po @@ -0,0 +1,72 @@ +msgid "" +msgstr "" +"Project-Id-Version: YDWEStartup\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-11-10 10:33+0800\n" +"PO-Revision-Date: 2018-08-14 09:46+0800\n" +"Last-Translator: \n" +"Language-Team: YDWE <417214250@qq.com>\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-KeywordsList: _;gettext;gettext_noop;__\n" +"X-Poedit-Basepath: ../../../../../Core/YDWEStartup\n" +"X-Poedit-SourceCharset: UTF-8\n" +"X-Generator: Poedit 2.0.2\n" +"X-Poedit-SearchPath-0: .\n" + +#: DllMain.cpp:184 +msgid "Error YDWE directory." +msgstr "" +"WE路径含有非法的字符,这可能是由于你的操作系统区域并非简体中文而WE路径里却包" +"含了简体中文导致的。如果你不明白上述原因,请将WE放到英文路径下,再次尝试。" + +#: DllMain.cpp:188 +msgid "Please choose your Warcraft 3 installation directory" +msgstr "请选择你的《魔兽争霸III》目录" + +#: DllMain.cpp:202 +msgid "Cannot delete YDDllFixer.dll in war3 directory." +msgstr "War3目录有有YDDllFixer.dll并且无法删除,这会导致WE无法启动。" + +#: DllMain.cpp:210 +msgid "Cannot delete YDDllFixer.dll in ydwe directory." +msgstr "WE目录有有YDDllFixer.dll并且无法删除,这会导致WE无法启动。" + +#: DllMain.cpp:230 +msgid "Cannot find main executable file of world editor in YDWE/bin directory." +msgstr "WE/bin文件夹下找不到WE的主程序,请确认WE文件的完整性。" + +#: DllMain.cpp:240 +msgid "Failed to launch world editor." +msgstr "启动WE失败。" + +#: DllMain.cpp:257 DllMain.cpp:261 DllMain.cpp:265 +msgid "Error" +msgstr "错误" + +#: DllMain.cpp:265 +msgid "Unknown error" +msgstr "未知错误" + +#~ msgid "Cannot find YDWE directory." +#~ msgstr "找不到YDWE的文件夹(卧槽,诡异啊,赶紧报告作者)" + +#~ msgid "" +#~ "Cannot find some important files(war3.exe, game.dll, etc.) in your " +#~ "Warcraft 3 directory. Please make sure you have copied the fixer to you " +#~ "Warcraft 3 directory and run it." +#~ msgstr "" +#~ "你选择的魔兽的文件夹里面缺少几个重要的文件(war3.exe, game.dll等等),请确" +#~ "认你选择的确实是魔兽的文件夹。" + +#~ msgid "" +#~ "Cannot find Warcraft 3 installation path. Please check if your registry " +#~ "contains enough information about your Warcraft 3. Use registry fixer if " +#~ "needed." +#~ msgstr "找不到魔兽安装路径,请检查注册表信息是否正确。" + +#~ msgid "Cannot find YDWEInject.dll in YDWE/bin directory." +#~ msgstr "" +#~ "YDWE/bin文件夹下面没有重要文件YDWEInject.dll,请确认你的YDWE文件的完整性。" diff --git a/share/mpq/bzapi/action.txt b/share/mpq/bzapi/action.txt new file mode 100644 index 0000000..72c5da7 --- /dev/null +++ b/share/mpq/bzapi/action.txt @@ -0,0 +1,596 @@ +[DzDestructablePosition] +title = "设置可破坏物位置 [BZAPI]" +description = "设置 ${可破坏物} 的坐标为 (${x}, ${y})" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +[[.args]] +type = real +default = 0 +[[.args]] +type = real +default = 0 + +[DzSetUnitPosition] +title = "设置单位位置 - 本地调用 [BZAPI]" +description = "设置 ${单位} 的坐标为 (${x}, ${y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = real +default = 0 +[[.args]] +type = real +default = 0 + +[DzSetUnitTexture] +title = "替换单位贴图 [BZAPI]" +description = "替换 ${单位} 的 贴图:${path} TexId:${texId})" +comment = "只能替换模型中有Replaceable ID x 贴图的模型,ID为索引。不会替换大头像中的模型" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = string +[[.args]] +type = integer + +[DzSetUnitModel] +title = "替换单位模型 [BZAPI]" +description = "替换 ${单位} 的 模型:${path}" +comment = "不会替换大头像中的模型" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = string + +[DzSetUnitID] +title = "替换单位类型 [BZAPI]" +description = "替换 ${单位} 的 单位类型为:${type}" +comment = "不会替换大头像中的模型" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = unitcode +default = 'hfoo' + +[DzSetMousePos] +title = "设置鼠标的坐标" +description = "设置鼠标的坐标为 (${x}, ${y})" +comment = "" +category = BZ_HW +[[.args]] +type = integer +[[.args]] +type = integer + +[DzSetMemory] +title = "设置内存数值" +description = "设置内存数据 ${地址} = ${数值}" +comment = "" +category = BZ_HW +[[.args]] +type = integer +[[.args]] +type = real + +[DzSyncData] +title = "同步数据" +description = "同步 标签:${prefix} 发送数据:${data}" +comment = "向本局游戏的其他玩家发送数据同步广播,用以防止游戏内各玩家的数据不一致导致的掉线。其他玩家可通过同步数据事件接收广播内容。" +category = BZ_SYNC +[[.args]] +type = string +[[.args]] +type = string + +[DzExecuteFunc] +title = "异步执行函数" +description = "异步执行函数 ${funcName}" +comment = "" +category = BZ_SYNC +[[.args]] +type = string + +[DzFrameSetPoint] +title = "设置相对位置" +description = "设置 ${frame} 的 ${Point} 锚点 (跟随Frame-->${relativeFrame} 的 ${relativePoint} 锚点) 偏移(${x}, ${y})" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = framepoints +default = "FramePoints_Center" +[[.args]] +type = frame +[[.args]] +type = framepoints +default = "FramePoints_Center" +[[.args]] +type = real +default = 0 +min = -0.8 +max = 0.8 +[[.args]] +type = real +default = 0 +min = -0.6 +max = 0.6 + +[DzFrameSetAbsolutePoint] +title = "设置绝对位置" +description = "设置 ${frame} 的 ${Point} 锚点 在 (${x}, ${y})" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = framepoints +default = "FramePoints_Center" +[[.args]] +type = real +default = 0 +min = -0.8 +max = 0.8 +[[.args]] +type = real +default = 0 +min = -0.6 +max = 0.6 + +[DzFrameSetAllPoints] +title = "移动所有锚点到Frame" +description = "移动 ${frame} 的 所有锚点 到 ${frame} 上" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = frame + +[DzFrameSetScale] +title = "设置缩放" +description = "设置 ${frame} 的缩放 ${scale}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = 1 + +[DzFrameSetSize] +title = "设置大小" +description = "设置 ${frame} (宽 ${w} 高 ${h})" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = 0 +[[.args]] +type = real +default = 0 + +[DzFrameSetFocus] +title = "设置焦点" +description = "设置 ${frame} 获取焦点 ${enable}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = boolean +default = "true" + +[DzFrameSetText] +title = "设置文本" +description = "设置 ${frame} 的文本为 ${string}" +comment = "(支持EditBox, TextFrame, TextArea, SimpleFontString、GlueEditBoxWar3、SlashChatBox、TimerTextFrame、TextButtonFrame、GlueTextButton)" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = string + +[DzFrameSetTexture] +title = "设置贴图" +description = "设置 ${frame} 的贴图为:${texture} 是否平铺 ${flag}" +comment = "(支持Backdrop、SimpleStatusBar)" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = imagefile +[[.args]] +type = integer + +[DzFrameSetAlpha] +title = "设置透明度(0-255)" +description = "设置 ${frame} 的透明度为 ${alpha}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer +default = "255" + +[DzFrameSetVertexColor] +title = "设置颜色" +description = "设置 ${frame} 颜色 ${color}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer +default = "DzGetColor" + +[DzFrameSetTextSizeLimit] +title = "设置字数限制" +description = "设置 ${frame} 的字数限制为 ${size}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer + +[DzFrameSetTooltip] +title = "设置提示" +description = "设置 ${frame} 的提示Frame为 ${tooltip} " +comment = "设置tooltip" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer + +[DzFrameCageMouse] +title = "限制鼠标移动" +description = "限制鼠标在 ${frame} 内: ${enable} " +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = boolean +default = "false" + +[DzFrameSetModel] +title = "设置模型" +description = "设置 ${frame} 的模型文件为 ${modelFile} ModelType:${modelType} Flag:${flag}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = string +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "0" + +[DzFrameSetAnimate] +title = "设置动画" +description = "设置 ${frame} 播放序号 ${alpha} 的动画 自动播放:${autocast}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer +default = "0" +[[.args]] +type = boolean +default = "false" + +[DzFrameSetAnimateOffset] +title = "设置动画进度" +description = "设置 ${frame} 的动画进度为:${offset}" +comment = "自动播放为false是可用" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = "0.5" + +[DzFrameSetScript] +title = "注册UI事件回调(func name)" +description = "注册 ${frame} 的 ${事件类型} 事件 运行:${func name} 是否同步:${sync}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = frameevent +[[.args]] +type = string +[[.args]] +type = boolean +default = "true" + +[DzFrameSetScriptByCode] +title = "注册UI事件回调(func handle)" +description = "注册 ${frame} 的 ${事件类型} 事件 运行:${code handle} 是否同步:${sync}" +comment = "运行触发器时需要打开同步" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = frameevent +[[.args]] +type = code +[[.args]] +type = boolean +default = "true" + +[DzClickFrame] +title = "点击" +description = "点击 ${frame}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame + +[DzFrameClearAllPoints] +title = "清空所有锚点" +description = "清空 ${frame} 的 全部锚点" +comment = "" +category = BZ_GUI +[[.args]] +type = frame + +[DzFrameSetMinMaxValue] +title = "设置最大/最小值" +description = "设置 ${frame} 的 最小值为 ${Min} 最大值为 ${Max}" +comment = "(支持Slider、SimpleStatusBar、StatusBar)" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[DzFrameSetStepValue] +title = "设置步进值" +description = "设置 ${frame} 的 步进值 为 ${step}" +comment = "(支持Slider)" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = "0" + +[DzFrameSetValue] +title = "设置当前值" +description = "设置 ${frame} 的 当前值 为 ${value}" +comment = "(支持Slider、SimpleStatusBar、StatusBar)" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = real +default = "0" + +[DzFrameSetEnable] +title = "启用/禁用" +description = "设置 ${frame} 启用:${bottomHeight}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = boolean +default = "false" + +[DzFrameShow] +title = "显示/隐藏" +description = "设置 ${frame} 显示:${bottomHeight}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = boolean +default = "false" + +[DzFrameSetPriority] +title = "设置优先级 [NEW]" +description = "设置 ${frame} 优先级:${int}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer + +[DzFrameSetParent] +title = "设置父窗口 [NEW]" +description = "设置 ${frame} 的父窗口为 ${frame2}" +comment = "" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = frame + +[DzFrameSetFont] +title = "设置字体 [NEW]" +description = "设置 ${frame} 的字体为 ${font}, 大小 ${height}, flag ${flag}" +comment = "支持EditBox、SimpleFontString、SimpleMessageFrame以及非SimpleFrame类型的例如TEXT,flag作用未知" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = string +[[.args]] +type = real +[[.args]] +type = integer + +[DzFrameSetTextAlignment] +title = "设置对齐方式 [NEW]" +description = "设置 ${frame} 的对齐方式为 ${align}" +comment = "支持TextFrame、SimpleFontString、SimpleMessageFrame" +category = BZ_GUI +[[.args]] +type = frame +[[.args]] +type = integer + +[DzDestroyFrame] +title = "销毁" +description = "销毁 ${frame}" +comment = "销毁一个被重复创建过的Frame会导致游戏崩溃,重复创建同名Frame请使用Tag创建" +category = BZ_GUI +[[.args]] +type = frame + +[DzLoadToc] +title = "加载Toc文件列表" +description = "加载--> ${fileName.toc}" +comment = "载入自己的fdf列表文件" +category = BZ_GUI +[[.args]] +type = anyfile + +[DzFrameHideInterface] +title = "原生 - 隐藏界面元素" +description = "隐藏所有界面UI" +comment = "不再在地图初始化时调用则会残留小地图和时钟模型" +category = BZ_GUI + +[DzEnableWideScreen] +title = "原生 - 使用宽屏模式" +description = "设置 宽屏模式:${bool}" +comment = "" +category = BZ_GUI +[[.args]] +type = boolean + +[DzSetCustomFovFix] +title = "原生 - 修改屏幕比例(FOV)" +description = "修改屏幕比例(FOV):${val}" +comment = "" +category = BZ_GUI +[[.args]] +type = real + +[DzFrameEditBlackBorders] +title = "原生 - 修改游戏渲染黑边范围" +description = "修改游戏渲染黑边: 上方高度:${upperHeight} 下方高度:${bottomHeight}" +comment = "" +category = BZ_GUI +[[.args]] +type = real +default = 0 +[[.args]] +type = real +default = 0 + +[DzSetWar3MapMap] +title = "原生 - 设置小地图背景贴图" +description = "修改小地图背景贴图为 ${bottomHeight}" +comment = "" +category = BZ_GUI +[[.args]] +type = string +default = "war3mapMap.blp" + +[DzTriggerRegisterMouseEventMultiple] +title = "注册 - 异步注册玩家鼠标事件" +description = "当玩家 ${player} ${gamekeyaction} ${gamekey} 时" +comment = "注意,这个事件只会异步执行!在使用前你最好知道异步应该如何使用。这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 +[[.args]] +type = gamekeyaction +default = "GameKeyAction_Press" +[[.args]] +type = mousekey +default = "MouseKey_Mouse_Left" + +[DzTriggerRegisterKeyEventMultiple] +title = "注册 - 异步注册玩家按键事件" +description = "当玩家 ${player} ${gamekeyaction} ${gamekey} 时" +comment = "注意,这个事件只会异步执行!在使用前你最好知道异步应该如何使用。这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 +[[.args]] +type = gamekeyaction +default = "GameKeyAction_Press" +[[.args]] +type = gamekey +default = "GameKey_Mouse_Left" + +[DzTriggerRegisterMouseWheelEventMultiple] +title = "注册 - 异步注册玩家鼠标滚轮事件" +description = "当玩家 ${player} 滑动鼠标滚轮 时" +comment = "注意,这个事件只会异步执行!在使用前你最好知道异步应该如何使用。这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 + +[DzTriggerRegisterMouseMoveEventMultiple] +title = "注册 - 异步注册玩家鼠标移动事件" +description = "当玩家 ${player} 移动鼠标 时" +comment = "注意,这个事件只会异步执行!在使用前你最好知道异步应该如何使用。这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 + +[DzTriggerRegisterWindowResizeEventMultiple] +title = "注册 - 异步注册玩家窗口大小变化事件" +description = "当玩家 ${player} 改变窗口大小 时" +comment = "注意,这个事件只会异步执行!在玩家拖动窗口大小时会频繁执行!这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 + +[DzFrameSetUpdateCallbackMultiple] +title = "注册 - 异步注册玩家界面更新回调" +description = "当玩家 ${player} 每帧绘制 时" +comment = "注意,这个事件只会异步执行!帧数间隔不稳定,执行间隔也不同!这个事件不能注销,请勿重复注册!" +category = BZ_HW +[[.args]] +type = player +default = Player00 + +[DzFrameSetScriptMultiple] +title = "注册 - 异步注册Frame回调事件" +description = "当玩家 ${player} ${frameevent} ${frame} 时" +comment = "注意,这个事件只会异步执行!在使用前你最好知道异步应该如何使用。这个事件不能注销,请勿重复注册!" +category = BZ_GUI +[[.args]] +type = player +default = Player00 +[[.args]] +type = frameevent +default = "FrameEvent_Evenr_Pressed" +[[.args]] +type = frame + + diff --git a/share/mpq/bzapi/call.txt b/share/mpq/bzapi/call.txt new file mode 100644 index 0000000..a949527 --- /dev/null +++ b/share/mpq/bzapi/call.txt @@ -0,0 +1,529 @@ +[DzIsKeyDown] +title = "判断按键是否按下" +description = "判断 ${按键} 是否按下" +comment = "" +category = BZ_GUI +returns = boolean +[[.args]] +type = gamekey +default = "GameKey_TriggerGameKey" + +[DzFrameGetEnable] +title = "控件是否启用" +description = "${frame} 是否启用" +comment = "" +category = BZ_GUI +returns = boolean +[[.args]] +type = frame + +[DzFrameGetValue] +title = "获取当前值" +description = "获取 ${frame} 当前值" +comment = "(支持Slider、SimpleStatusBar、StatusBar)" +category = BZ_GUI +returns = real +[[.args]] +type = frame + +[DzIsMouseOverUI] +title = "鼠标是否在游戏内" +description = "鼠标是否在游戏内" +comment = "" +category = BZ_HW +returns = boolean + +[DzIsWindowActive] +title = "判断游戏窗口是否处于活动状态" +description = "判断窗口是否处于活动状态" +comment = "" +category = BZ_HW +returns = boolean + +[DzGetMouseTerrainX] +title = "获取鼠标在游戏内的坐标X" +description = "获取鼠标在游戏内的坐标X" +comment = "" +category = BZ_HW +returns = real + +[DzGetMouseTerrainY] +title = "获取鼠标在游戏内的坐标Y" +description = "获取鼠标在游戏内的坐标Y" +comment = "" +category = BZ_HW +returns = real + +[DzGetMouseTerrainZ] +title = "获取鼠标在游戏内的坐标Z" +description = "获取鼠标在游戏内的坐标Z" +comment = "" +category = BZ_HW +returns = real + +[DzGetMouseX] +title = "获取鼠标在屏幕的坐标X" +description = "获取鼠标在屏幕的坐标X" +comment = "" +category = BZ_HW +returns = integer + +[DzGetMouseY] +title = "获取鼠标在屏幕的坐标Y" +description = "获取鼠标在屏幕的坐标Y" +comment = "" +category = BZ_HW +returns = integer + +[DzGetMouseXRelative] +title = "获取鼠标游戏窗口坐标X" +description = "获取鼠标游戏窗口坐标X" +comment = "" +category = BZ_HW +returns = integer + +[DzGetMouseYRelative] +title = "获取鼠标游戏窗口坐标Y" +description = "获取鼠标游戏窗口坐标Y" +comment = "" +category = BZ_HW +returns = integer + +[DzGetWindowWidth] +title = "获取war3窗口宽度" +description = "获取魔兽窗口宽度" +comment = "" +category = BZ_HW +returns = integer + +[DzGetWindowHeight] +title = "获取魔兽窗口高度" +description = "获取魔兽窗口高度" +comment = "" +category = BZ_HW +returns = integer + +[DzGetWindowX] +title = "获取魔兽窗口X坐标" +description = "获取魔兽窗口X坐标" +comment = "" +category = BZ_HW +returns = integer + +[DzGetWindowY] +title = "获取魔兽窗口Y坐标" +description = "获取魔兽窗口Y坐标" +comment = "" +category = BZ_HW +returns = integer + +[DzGetTriggerSyncData] +title = "事件响应 - 数据同步事件的数据" +description = "获取同步的数据" +comment = "获取数据同步事件中所收到的数据内容。仅限在[数据同步事件]内使用。" +category = BZ_SYNC +returns = string + +[DzGetTriggerSyncPlayer] +title = "事件响应 - 数据同步事件的来源玩家" +description = "获取同步数据的玩家" +comment = "获取是哪位玩家发送了数据同步事件。仅限在数据同步事件内使用。" +category = BZ_SYNC +returns = player + +[DzGetTriggerKey] +title = "事件响应 - 获取触发的按键" +description = "获取触发的按键" +comment = "响应 [硬件] - 按键事件" +category = BZ_HW +returns = gamekey + +[DzGetWheelDelta] +title = "事件响应 - 获取滚轮变化值" +description = "获取滚轮变化值" +comment = "响应 [硬件] - 鼠标滚轮事件,正负区分上下" +category = BZ_HW +returns = integer + +[DzGetTriggerKeyPlayer] +title = "事件响应 - 获取触发硬件事件的玩家" +description = "获取触发硬件事件的玩家" +comment = "响应 [硬件] - 按键事件 滚轮事件 窗口大小变化事件" +category = BZ_HW +returns = player + +[DzGetUnitUnderMouse] +title = "获取鼠标指向的单位" +description = "鼠标指向的单位" +comment = "" +category = BZ_HW +returns = unit + +[DzGetLocale] +title = "获取客户端语言 [NEW]" +description = "获取客户端语言" +comment = "对不同语言客户端返回不同" +category = BZ_HW +returns = string + +[DzGetUnitNeededXP] +title = "获取升级所需经验 [NEW]" +description = "获取单位 ${unit} 的 ${level}级 升级所需经验" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = string +[[.args]] +type = integer + +[DzCreateFrame] +title = "新建Frame" +description = "新建Frame 名字:${frame} 父节点:${parent} ID:${Id}" +comment = "名字为fdf文件中的名字,ID默认填0。重复创建同名Frame会导致游戏退出时显示崩溃消息,如需避免可以使用Tag创建" +category = BZ_GUI +returns = frame +[[.args]] +type = string +default = "name" +[[.args]] +type = frame +default = DzGetGameUI +[[.args]] +type = integer +default = 0 + +[DzCreateFrameByTagName] +title = "新建Frame [Tag]" +description = "创建 类型:${type} 名字:${frame} 父节点:${parent} 模版:${template} ID:${Id}" +comment = "此处名字可以自定义,类型和模版填写fdf文件中的内容。通过此函数创建的Frame无法获取到子Frame。" +category = BZ_GUI +returns = frame +[[.args]] +type = string +default = FRAME +[[.args]] +type = string +default = "name" +[[.args]] +type = frame +default = DzGetGameUI +[[.args]] +type = string +default = "template" +[[.args]] +type = integer +default = 0 + +[DzFrameFindByName] +title = "获取子Frame" +description = "获取名字为 ${name} 的子Frame ID:${Id}" +comment = "ID默认填0,同名时优先获取最后被创建的。非Simple类的Frame类型都用此函数来获取子Frame。" +category = BZ_GUI +returns = frame +[[.args]] +type = string +[[.args]] +type = integer +default = 0 + +[DzSimpleFrameFindByName] +title = "获取子SimpleFrame" +description = "获取名字为 ${name} 的子SimpleFrame ID:${Id}" +comment = "ID默认填0,同名时优先获取最后被创建的。SimpleFrame为fdf中的Frame类型。" +category = BZ_GUI +returns = frame +[[.args]] +type = string +[[.args]] +type = integer +default = 0 + +[DzSimpleFontStringFindByName] +title = "获取子SimpleFontString" +description = "获取名字为 ${name} 的子SimpleFontString ID:${Id}" +comment = "ID默认填0,同名时优先获取最后被创建的。SimpleFontString为fdf中的Frame类型。" +category = BZ_GUI +returns = frame +[[.args]] +type = string +[[.args]] +type = integer +default = 0 + +[DzSimpleTextureFindByName] +title = "获取子SimpleTexture" +description = "获取名字为 ${name} 的子SimpleTexture ID:${Id}" +comment = "ID默认填0,同名时优先获取最后被创建的。SimpleTexture为fdf中的Frame类型。" +category = BZ_GUI +returns = frame +[[.args]] +type = string +[[.args]] +type = integer + +[DzGetTriggerUIEventFrame] +title = "事件响应 - 触发的Frame" +description = "触发的Frame" +comment = "" +category = BZ_GUI +returns = frame + +[DzGetTriggerUIEventPlayer] +title = "事件响应 - 获取触发ui的玩家" +description = "获取触发ui的玩家" +comment = "" +category = BZ_GUI +returns = player + +[DzGetMouseFocus] +title = "鼠标所在的Frame控件指针" +description = "鼠标所在的Frame控件指针" +comment = "不是所有类型的Frame都能响应鼠标,能响应的有BUTTON,TEXT等" +category = BZ_GUI +returns = frame + +[DzFrameGetPortrait] +title = "原生 - 单位大头像" +description = "单位大头像" +comment = "小地图右侧的大头像" +category = BZ_GUI +returns = frame + +[DzFrameGetMinimap] +title = "原生 - 小地图" +description = "小地图" +comment = "" +category = BZ_GUI +returns = frame + +[DzFrameGetCommandBarButton] +title = "原生 - 技能按钮" +description = "技能按钮:(${row}, ${calumn})" +comment = "参考物编中的技能按钮(x,y)坐标" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 +[[.args]] +type = integer +default = 0 + +[DzFrameGetHeroBarButton] +title = "原生 - 英雄按钮" +description = "英雄按钮:${buttnoid}" +comment = "左侧的英雄头像,参数表示第N+1个英雄,索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetHeroHPBar] +title = "原生 - 英雄血条" +description = "英雄血条:${buttnoid}" +comment = "左侧的英雄头像下的血条,参数表示第N+1个英雄,索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetHeroManaBar] +title = "原生 - 英雄蓝条" +description = "英雄蓝条:${buttnoid}" +comment = "左侧的英雄头像下的蓝条,参数表示第N+1个英雄,索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetItemBarButton] +title = "原生 - 物品栏按钮" +description = "物品栏按钮:${buttnoid}" +comment = "索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetMinimapButton] +title = "原生 - 小地图按钮" +description = "小地图按钮:${buttnoid}" +comment = "小地图右侧竖排按钮,索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetUpperButtonBarButton] +title = "原生 - 界面按钮" +description = "界面按钮:${buttnoid}" +comment = "左上的菜单等按钮,索引从0开始" +category = BZ_GUI +returns = frame +[[.args]] +type = integer +default = 0 + +[DzFrameGetTooltip] +title = "原生 - 鼠标提示" +description = "鼠标提示" +comment = "鼠标移动到物品或技能按钮上显示的提示窗,初始位于技能栏上方" +category = BZ_GUI +returns = frame + +[DzFrameGetChatMessage] +title = "原生 - 玩家聊天信息框" +description = "玩家聊天信息框" +comment = "" +category = BZ_GUI +returns = frame + +[DzFrameGetUnitMessage] +title = "原生 - 系统消息框" +description = "系统消息框" +comment = "包含显示消息给玩家 及 显示Debug消息 等," +category = BZ_GUI +returns = frame + +[DzFrameGetTopMessage] +title = "原生 - 上方消息框" +description = "上方消息框" +comment = "高维修费用 等消息" +category = BZ_GUI +returns = frame + +[DzGetGameUI] +title = "原生 - 游戏UI" +description = "游戏UI" +comment = "一般用作创建自定义UI的父节点" +category = BZ_GUI +returns = frame + +[DzFrameGetText] +title = "获取 Frame 内的文字" +description = "获取 ${buttnoid} 的文字" +comment = "(支持EditBox, TextFrame, TextArea, SimpleFontString)" +category = BZ_GUI +returns = string +[[.args]] +type = frame + +[DzFrameGetAlpha] +title = "获取 Frame 的 透明度(0-255)" +description = "获取 ${Frame} 的透明度" +comment = "" +category = BZ_GUI +returns = integer +[[.args]] +type = frame + +[DzFrameGetTextSizeLimit] +title = "获取 Frame 的 字数限制" +description = "获取 ${frame} 的字数限制" +comment = "(支持EditBox)" +category = BZ_GUI +returns = integer +[[.args]] +type = frame + +[DzFrameGetHeight] +title = "获取 Frame 的 高度 [NEW]" +description = "获取 ${frame} 的高度" +comment = "" +category = BZ_GUI +returns = real +[[.args]] +type = frame + +[DzFrameGetParent] +title = "获取 Frame 的 Parent [NEW]" +description = "获取 ${frame} 的 Parent" +comment = "" +category = BZ_GUI +returns = frame +[[.args]] +type = frame + +[DzFrameGetName] +title = "获取 Frame 的 名称 [NEW]" +description = "获取 ${frame} 的 名称" +comment = "" +category = BZ_GUI +returns = string +[[.args]] +type = frame + +[DzGetColor] +title = "取 RGBA 色值" +description = "红色:${Red} 绿色:${Green} 蓝色:${Blue} 透明度:${Alpha}" +comment = "返回一个整数,用于设置Frame颜色" +category = BZ_GUI +returns = integer +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[DzF2I] +title = "转换 Frame 为 整数" +description = "转换 ${Frame} 为 整数" +comment = "" +category = BZ_GUI +returns = integer +[[.args]] +type = frame + +[DzI2F] +title = "转换 整数 为 Frame" +description = "转换 ${Integer} 为 Frame" +comment = "" +category = BZ_GUI +returns = frame +[[.args]] +type = integer + +[DzK2I] +title = "转换 按键 为 整数" +description = "转换 ${Key} 为 整数" +comment = "" +category = BZ_HW +returns = integer +[[.args]] +type = gamekey + +[DzI2K] +title = "转换 整数 为 按键" +description = "转换 ${Integer} 为 按键" +comment = "" +category = BZ_HW +returns = gamekey +[[.args]] +type = integer + + + + + + diff --git a/share/mpq/bzapi/condition.txt b/share/mpq/bzapi/condition.txt new file mode 100644 index 0000000..e9eb1d6 --- /dev/null +++ b/share/mpq/bzapi/condition.txt @@ -0,0 +1,14 @@ +[OperatorCompareGameKey] +title = "按键" +description = "${KeyA} ${Operator} ${KeyB}" +comment = "" +category = TC_CONDITION +[[.args]] +type = gamekey +default = "GameKey_TriggerGameKey" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = gamekey +default = "GameKey_A" \ No newline at end of file diff --git a/share/mpq/bzapi/define.txt b/share/mpq/bzapi/define.txt new file mode 100644 index 0000000..3bf4af0 --- /dev/null +++ b/share/mpq/bzapi/define.txt @@ -0,0 +1,98 @@ +[TriggerCategories] +BZ_GUI=[界面],ReplaceableTextures\WorldEditUI\Regions\RegionFourCorner.blp +BZ_HW=[硬件],ReplaceableTextures\WorldEditUI\Editor-TriggerFunction.blp +BZ_SYNC=[同步],ReplaceableTextures\CommandButtons\BTNPatrol.blp + +[TriggerTypes] +frame=0,1,1,Frame,integer +framepoints=0,1,1,锚点,integer +frameevent=0,1,1,界面事件,integer +gamekey=0,1,1,按键,integer +mousekey=0,1,1,鼠标,integer +gamekeyaction=0,0,1,按键动作,integer + + +[TriggerParams] +FramePoints_TopLeft=0,framepoints,0,左上 +FramePoints_Top =0,framepoints,1,顶部 +FramePoints_TopRight=0,framepoints,2,右上 +FramePoints_Left=0,framepoints,3,左侧 +FramePoints_Center=0,framepoints,4,中心 +FramePoints_Right=0,framepoints,5,右侧 +FramePoints_BottomLeft=0,framepoints,6,左下 +FramePoints_Bottom=0,framepoints,7,底部 +FramePoints_BottomRight=0,framepoints,8,右下 + +FrameEvent_None=0,frameevent,0,无 +FrameEvent_Evenr_Pressed=0,frameevent,1,鼠标点击 +FrameEvent_Mouse_Enter=0,frameevent,2,鼠标进入 +FrameEvent_Mouse_Leave=0,frameevent,3,鼠标离开 +FrameEvent_Mouse_Up=0,frameevent,4,鼠标释放 +FrameEvent_Mouse_Down=0,frameevent,5,未知5 +FrameEvent_Mouse_Wheel=0,frameevent,6,鼠标轮滚 +FrameEvent_Checkbox_Checked=0,frameevent,7,未知7 +FrameEvent_Checkbox_Unchecked=0,frameevent,8,未知8 +FrameEvent_Editbox_Text_Changed=0,frameevent,9,未知9 +FrameEvent_Popupmenu_Item_Change_Start=0,frameevent,10,未知10 +FrameEvent_Popupmenu_Item_Changed_Start=0,frameevent,11,未知11 +FrameEvent_Mouse_Doubleclick=0,frameevent,12,鼠标双击 +FrameEvent_Sprite_Anim_Update=0,frameevent,13,未知13 + +MouseKey_Mouse_Left=0,mousekey,1,鼠标左键 +MouseKey_Mouse_Right=0,mousekey,2,鼠标右键 + +GameKey_TriggerGameKey=0,gamekey,DzGetTriggerKey(),触发按键 +GameKey_Mouse_Left=0,gamekey,1,鼠标左键 +GameKey_Mouse_Right=0,gamekey,2,鼠标右键 +GameKey_A=0,gamekey,'A',A +GameKey_B=0,gamekey,'B',B +GameKey_C=0,gamekey,'C',C +GameKey_D=0,gamekey,'D',D +GameKey_E=0,gamekey,'E',E +GameKey_F=0,gamekey,'F',F +GameKey_G=0,gamekey,'G',G +GameKey_H=0,gamekey,'H',H +GameKey_I=0,gamekey,'I',I +GameKey_J=0,gamekey,'J',J +GameKey_K=0,gamekey,'K',K +GameKey_L=0,gamekey,'L',L +GameKey_M=0,gamekey,'M',M +GameKey_N=0,gamekey,'N',N +GameKey_O=0,gamekey,'O',O +GameKey_P=0,gamekey,'P',P +GameKey_Q=0,gamekey,'Q',Q +GameKey_R=0,gamekey,'R',R +GameKey_S=0,gamekey,'S',S +GameKey_T=0,gamekey,'T',T +GameKey_U=0,gamekey,'U',U +GameKey_V=0,gamekey,'V',V +GameKey_W=0,gamekey,'W',W +GameKey_X=0,gamekey,'X',X +GameKey_Y=0,gamekey,'Y',Y +GameKey_Z=0,gamekey,'Z',Z + +GameKey_0=0,gamekey,48,0 +GameKey_1=0,gamekey,49,1 +GameKey_2=0,gamekey,50,2 +GameKey_3=0,gamekey,51,3 +GameKey_4=0,gamekey,52,4 +GameKey_5=0,gamekey,53,5 +GameKey_6=0,gamekey,53,6 +GameKey_7=0,gamekey,55,7 +GameKey_8=0,gamekey,56,8 +GameKey_9=0,gamekey,57,9 + +GameKey_Tab=0,gamekey,9,Tab +GameKey_Space=0,gamekey,32,空格 +GameKey_Enter=0,gamekey,513,回车 +GameKey_Backspace=0,gamekey,514,退格 +GameKey_Shift=0,gamekey,0,Shift + +GameKey_Tab=0,gamekey,516,→ +//GameKey_Tab=0,gamekey,517,↑ +//GameKey_Tab=0,gamekey,518,← +//GameKey_Tab=0,gamekey,519,↓ + +GameKeyAction_Press=0,gamekeyaction,1,点击 +GameKeyAction_Release=0,gamekeyaction,0,释放 + diff --git a/share/mpq/bzapi/event.txt b/share/mpq/bzapi/event.txt new file mode 100644 index 0000000..04a7d1d --- /dev/null +++ b/share/mpq/bzapi/event.txt @@ -0,0 +1,52 @@ +[DzTriggerRegisterMouseWheelEventTrg] +title = "鼠标滚轮事件" +description = "任意玩家滑动鼠标滚轮" +comment = "请使用“获取触发硬件事件的玩家”来获取触发玩家,滚轮的方向由“获取滚轮变化值”的正负来判断" +category = BZ_HW + +[DzTriggerRegisterMouseMoveEventTrg] +title = "鼠标移动事件" +description = "任意玩家移动鼠标" +comment = "请使用“获取触发硬件事件的玩家”来获取触发玩家" +category = BZ_HW + +[DzTriggerRegisterMouseEventTrg] +title = "注册鼠标事件" +description = "任意玩家 ${key} ${actionkey} 时" +comment = "请使用“获取触发硬件事件的玩家”来获取触发玩家" +category = BZ_HW +[[.args]] +type = gamekeyaction +default = "GameKeyAction_Press" +[[.args]] +type = gamekey +default = "GameKey_Mouse_Left" + +[DzTriggerRegisterKeyEventTrg] +title = "键盘事件" +description = "任意玩家 ${keyaction} ${key} 时" +comment = "请使用“获取触发硬件事件的玩家”来获取触发玩家" +category = BZ_HW +[[.args]] +type = gamekeyaction +default = "GameKeyAction_Press" +[[.args]] +type = gamekey +default = "GameKey_A" + +[DzTriggerRegisterWindowResizeEventTrg] +title = "窗口大小变化事件" +description = "任意玩家改变窗口大小" +comment = "请使用“获取触发硬件事件的玩家”来获取触发玩家。这个事件会在玩家拖动窗口大小时频繁触发" +category = BZ_HW + +[DzTriggerRegisterSyncData] +title = "数据同步事件" +description = "标签为 ${prefix} 的数据被同步 | 来自平台:${server}" +comment = "接收到来自平台、或本局游戏其他玩家所发送[同步数据]的回调事件。可在事件内配合[事件响应 - 数据同步事件的来源玩家]和[事件响应 - 数据同步事件的数据]使用。来自平台的参数填false" +category = BZ_SYNC +[[.args]] +type = string +[[.args]] +type = boolean +default = "false" \ No newline at end of file diff --git a/share/mpq/config b/share/mpq/config new file mode 100644 index 0000000..9b27d77 --- /dev/null +++ b/share/mpq/config @@ -0,0 +1,6 @@ +japi +ydwe +dzapi2 +dzapi +bzapi +ydtrigger diff --git a/share/mpq/dzapi/ui/TriggerData.txt b/share/mpq/dzapi/ui/TriggerData.txt new file mode 100644 index 0000000..93da4a9 --- /dev/null +++ b/share/mpq/dzapi/ui/TriggerData.txt @@ -0,0 +1,364 @@ +[TriggerCategories] +TC_DZAPI=网易[DzAPI],ReplaceableTextures\CommandButtons\BTNSpellBreaker.blp + +[TriggerTypes] +ReturnUser=0,0,0,回流用户类型 +SKINTYPE=0,0,0,皮肤类型,integer + +[TriggerParams] +ReturnUser1=0,ReturnUser,1,曾经是平台回流用户【废弃】 +ReturnUser2=0,ReturnUser,2,当前是平台回流用户【废弃】 +ReturnUser3=0,ReturnUser,4,曾经是地图回流用户【废弃】 +ReturnUser4=0,ReturnUser,8,当前是地图回流用户 +ReturnUser5=0,ReturnUser,16,地图是否被玩家收藏 +skinType4=0,SKINTYPE,4,底纹 +skinType3=0,SKINTYPE,3,称号 +skinType2=0,SKINTYPE,2,边框 +skinType1=0,SKINTYPE,1,头像 + +[TriggerEvents] +DzTriggerRegisterMallItemSyncData=0 +_DzTriggerRegisterMallItemSyncData_Defaults= +_DzTriggerRegisterMallItemSyncData_Category=TC_DZAPI + +[TriggerActions] +DzAPI_Map_Stat_SetStat=0,player,string,string +_DzAPI_Map_Stat_SetStat_Defaults=Player00,Miao,1 +_DzAPI_Map_Stat_SetStat_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitBooleanData=0,player,string,completionoption +_DzAPI_Map_Ladder_SubmitBooleanData_Defaults=Player00,_,CompletionOptionCompleted +_DzAPI_Map_Ladder_SubmitBooleanData_Category=TC_DZAPI +DzAPI_Map_Ladder_SetStat=0,player,string,string +_DzAPI_Map_Ladder_SetStat_Defaults=Player00,Name,魂 +_DzAPI_Map_Ladder_SetStat_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitIntegerData=0,player,string,integer +_DzAPI_Map_Ladder_SubmitIntegerData_Defaults=Player00,Kill,10 +_DzAPI_Map_Ladder_SubmitIntegerData_Category=TC_DZAPI +DzAPI_Map_Stat_SubmitUnitIdData=0,player,string,unitcode +_DzAPI_Map_Stat_SubmitUnitIdData_Defaults=Player00,Hero,X001 +_DzAPI_Map_Stat_SubmitUnitIdData_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitAblityIdData=0,player,string,abilcode +_DzAPI_Map_Ladder_SubmitAblityIdData_Defaults=Player00,Skill1,AXAA +_DzAPI_Map_Ladder_SubmitAblityIdData_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitItemIdData=0,player,string,itemcode +_DzAPI_Map_Ladder_SubmitItemIdData_Defaults=Player00,Item,ocor +_DzAPI_Map_Ladder_SubmitItemIdData_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitTitle=0,player,string +_DzAPI_Map_Ladder_SubmitTitle_Defaults=Player00,MVP +_DzAPI_Map_Ladder_SubmitTitle_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitPlayerRank=0,player,integer +_DzAPI_Map_Ladder_SubmitPlayerRank_Defaults=Player00,1 +_DzAPI_Map_Ladder_SubmitPlayerRank_Limits=_,_,1,10 +_DzAPI_Map_Ladder_SubmitPlayerRank_Category=TC_DZAPI +DzAPI_Map_Ladder_SubmitPlayerExtraExp=0,player,integer +_DzAPI_Map_Ladder_SubmitPlayerExtraExp_Defaults=Player00,30 +_DzAPI_Map_Ladder_SubmitPlayerExtraExp_Category=TC_DZAPI +DzAPI_Map_SaveServerValue=0,player,string,string +_DzAPI_Map_SaveServerValue_Defaults=Player00,key,value +_DzAPI_Map_SaveServerValue_Category=TC_DZAPI +DzAPI_Map_StoreBoolean=0,player,string,boolean +_DzAPI_Map_StoreBoolean_Defaults=Player00,_,true +_DzAPI_Map_StoreBoolean_Category=TC_DZAPI +DzAPI_Map_StoreInteger=0,player,string,integer +_DzAPI_Map_StoreInteger_Defaults=Player00,英雄等级,10 +_DzAPI_Map_StoreInteger_Category=TC_DZAPI +DzAPI_Map_StoreReal=0,player,string,real +_DzAPI_Map_StoreReal_Defaults=Player00,X坐标,1024 +_DzAPI_Map_StoreReal_Category=TC_DZAPI +DzAPI_Map_StoreString=0,player,string,string +_DzAPI_Map_StoreString_Defaults=Player00,游戏称号,无冕之王 +_DzAPI_Map_StoreString_Category=TC_DZAPI +DzAPI_Map_StoreUnitType=0,player,string,unitcode +_DzAPI_Map_StoreUnitType_Defaults=Player00,英雄类型,Hamg +_DzAPI_Map_StoreUnitType_Category=TC_DZAPI +_DzAPI_Map_StoreUnitType_ScriptName=DzAPI_Map_StoreInteger +DzAPI_Map_StoreAbilityId=0,player,string,abilcode +_DzAPI_Map_StoreAbilityId_Defaults=Player00,Sk01,AHbz +_DzAPI_Map_StoreAbilityId_Category=TC_DZAPI +_DzAPI_Map_StoreAbilityId_ScriptName=DzAPI_Map_StoreInteger +DzAPI_Map_FlushStoredMission=0,player,string +_DzAPI_Map_FlushStoredMission_Defaults=Player00,英雄等级 +_DzAPI_Map_FlushStoredMission_Category=TC_DZAPI + +DzAPI_Map_OrpgTrigger=0,player,string +_DzAPI_Map_OrpgTrigger_Defaults=Player00,_ +_DzAPI_Map_OrpgTrigger_Category=TC_DZAPI +DzAPI_Map_SavePublicArchive=0,player,string,string +_DzAPI_Map_SavePublicArchive_Defaults=_,_,_ +_DzAPI_Map_SavePublicArchive_Category=TC_DZAPI +DzAPI_Map_Global_StoreString=0,string,string +_DzAPI_Map_Global_StoreString_Defaults=_,_ +_DzAPI_Map_Global_StoreString_Category=TC_DZAPI +DzAPI_Map_UseConsumablesItem=0,player,string +_DzAPI_Map_UseConsumablesItem_Defaults=_,_ +_DzAPI_Map_UseConsumablesItem_Category=TC_DZAPI +DzAPI_Map_Statistics=0,player,string,string,integer +_DzAPI_Map_Statistics_Defaults=Player00,eventKey,不填,0 +_DzAPI_Map_Statistics_Category=TC_DZAPI + +DzAPI_Map_OpenMall=0,player,string +_DzAPI_Map_OpenMall_Defaults=_,_ +_DzAPI_Map_OpenMall_Category=TC_DZAPI +DzAPI_Map_GameResult_CommitData=0,player,string,string +_DzAPI_Map_GameResult_CommitData_Defaults=_,_,_ +_DzAPI_Map_GameResult_CommitData_Category=TC_DZAPI +DzAPI_Map_GameResult_CommitTitle=0,player,string +_DzAPI_Map_GameResult_CommitTitle_Defaults=_,_ +_DzAPI_Map_GameResult_CommitTitle_Category=TC_DZAPI +DzAPI_Map_GameResult_CommitGameMode=0,string +_DzAPI_Map_GameResult_CommitGameMode_Defaults=_ +_DzAPI_Map_GameResult_CommitGameMode_Category=TC_DZAPI +DzAPI_Map_GameResult_CommitGameResult=0,player,winorfail +_DzAPI_Map_GameResult_CommitGameResult_Defaults=_,GameResult0 +_DzAPI_Map_GameResult_CommitGameResult_Category=TC_DZAPI + +DzAPI_Map_GameResult_CommitGameResultNoEnd=0,player,winorfail +_DzAPI_Map_GameResult_CommitGameResultNoEnd_Defaults=_,GameResult0 +_DzAPI_Map_GameResult_CommitGameResultNoEnd_Category=TC_DZAPI + +DzAPI_Map_GameResult_CommitPlayerRank=0,player,integer +_DzAPI_Map_GameResult_CommitPlayerRank_Defaults=_,_ +_DzAPI_Map_GameResult_CommitPlayerRank_Category=TC_DZAPI + +DzAPI_Map_QuickBuy=0,player,string,integer,integer +_DzAPI_Map_QuickBuy_Defaults=_,_,_,30 +_DzAPI_Map_QuickBuy_Category=TC_DZAPI + +DzAPI_Map_CancelQuickBuy=0,player +_DzAPI_Map_CancelQuickBuy_Defaults=_ +_DzAPI_Map_CancelQuickBuy_Category=TC_DZAPI + +[TriggerCalls] + +DzAPI_Map_CommentTotalCount1=0,0,integer,player,integer +_DzAPI_Map_CommentTotalCount1_Defaults=Player00,0 +_DzAPI_Map_CommentTotalCount1_Category=TC_DZAPI + +DzAPI_Map_IsRedVIP=0,0,boolean,player +_DzAPI_Map_IsRedVIP_Defaults=Player00, +_DzAPI_Map_IsRedVIP_Category=TC_DZAPI +DzAPI_Map_IsBlueVIP=0,0,boolean,player +_DzAPI_Map_IsBlueVIP_Defaults=Player00, +_DzAPI_Map_IsBlueVIP_Category=TC_DZAPI +DzAPI_Map_IsRPGLobby=0,0,boolean +_DzAPI_Map_IsRPGLobby_Defaults= +_DzAPI_Map_IsRPGLobby_Category=TC_DZAPI +DzAPI_Map_IsRPGLadder=0,0,boolean +_DzAPI_Map_IsRPGLadder_Defaults= +_DzAPI_Map_IsRPGLadder_Category=TC_DZAPI + +DzAPI_Map_GetMatchType=0,0,integer +_DzAPI_Map_GetMatchType_Defaults= +_DzAPI_Map_GetMatchType_Category=TC_DZAPI + +DzAPI_Map_GetLadderLevel=0,0,integer,player +_DzAPI_Map_GetLadderLevel_Defaults=Player00, +_DzAPI_Map_GetLadderLevel_Category=TC_DZAPI + +DzAPI_Map_GetLadderRank=0,0,integer,player +_DzAPI_Map_GetLadderRank_Defaults=Player00, +_DzAPI_Map_GetLadderRank_Category=TC_DZAPI + +DzAPI_Map_GetGameStartTime=0,0,integer +_DzAPI_Map_GetGameStartTime_Defaults= +_DzAPI_Map_GetGameStartTime_Category=TC_DZAPI + +DzAPI_Map_GetMapLevel=0,0,integer,player +_DzAPI_Map_GetMapLevel_Defaults=Player00, +_DzAPI_Map_GetMapLevel_Category=TC_DZAPI +_DzAPI_Map_GetMapLevel_ScriptName=DzAPI_Map_GetMapLevel + +DzAPI_Map_GetMapLevelRank=0,0,integer,player +_DzAPI_Map_GetMapLevelRank_Defaults=Player00, +_DzAPI_Map_GetMapLevelRank_Category=TC_DZAPI + + + +DzAPI_Map_GetMapConfig=0,0,string,string +_DzAPI_Map_GetMapConfig_Defaults=_, +_DzAPI_Map_GetMapConfig_Category=TC_DZAPI + +DzAPI_Map_HasMallItem=0,0,boolean,player,string +_DzAPI_Map_HasMallItem_Defaults=Player00,_, +_DzAPI_Map_HasMallItem_Category=TC_DZAPI + +GetPlayerServerValueSuccess=0,0,boolean,player +_GetPlayerServerValueSuccess_Defaults=Player00, +_GetPlayerServerValueSuccess_Category=TC_DZAPI + +DzAPI_Map_PlayerLoadedItems=0,0,boolean,player +_DzAPI_Map_PlayerLoadedItems_Defaults=_, +_DzAPI_Map_PlayerLoadedItems_Category=TC_DZAPI + +DzAPI_Map_GetServerValue=0,0,string,player,string +_DzAPI_Map_GetServerValue_Defaults=Player00,数据名称, +_DzAPI_Map_GetServerValue_Category=TC_DZAPI + +DzAPI_Map_GetStoredBoolean=0,0,boolean,player,string +_DzAPI_Map_GetStoredBoolean_Defaults=Player00,_, +_DzAPI_Map_GetStoredBoolean_Category=TC_DZAPI + + +DzAPI_Map_GetStoredInteger=0,0,integer,player,string +_DzAPI_Map_GetStoredInteger_Defaults=Player00,_, +_DzAPI_Map_GetStoredInteger_Category=TC_DZAPI + +DzAPI_Map_GetStoredUnitType=0,0,integer,player,string +_DzAPI_Map_GetStoredUnitType_Defaults=Player00,_, +_DzAPI_Map_GetStoredUnitType_Category=TC_DZAPI +_DzAPI_Map_GetStoredUnitType_ScriptName=DzAPI_Map_GetStoredInteger + +DzAPI_Map_GetStoredAbilityId=0,0,integer,player,string +_DzAPI_Map_GetStoredAbilityId_Defaults=Player00,_, +_DzAPI_Map_GetStoredAbilityId_Category=TC_DZAPI +_DzAPI_Map_GetStoredAbilityId_ScriptName=DzAPI_Map_GetStoredInteger + +DzAPI_Map_GetStoredReal=0,0,real,player,string +_DzAPI_Map_GetStoredReal_Defaults=Player00,_, +_DzAPI_Map_GetStoredReal_Category=TC_DZAPI + +DzAPI_Map_GetStoredString=0,0,string,player,string +_DzAPI_Map_GetStoredString_Defaults=Player00,_, +_DzAPI_Map_GetStoredString_Category=TC_DZAPI + +DzAPI_Map_GetGuildName=0,0,string,player +_DzAPI_Map_GetGuildName_Defaults=Player00, +_DzAPI_Map_GetGuildName_Category=TC_DZAPI + +DzAPI_Map_GetGuildRole=0,0,integer,player +_DzAPI_Map_GetGuildRole_Defaults=Player00, +_DzAPI_Map_GetGuildRole_Category=TC_DZAPI + +DzAPI_Map_GetServerArchiveDrop=0,0,string,player,string +_DzAPI_Map_GetServerArchiveDrop_Defaults=Player00,_, +_DzAPI_Map_GetServerArchiveDrop_Category=TC_DZAPI + +DzAPI_Map_GetServerArchiveEquip=0,0,integer,player,string +_DzAPI_Map_GetServerArchiveEquip_Defaults=Player00,_, +_DzAPI_Map_GetServerArchiveEquip_Category=TC_DZAPI + +DzAPI_Map_GetPublicArchive=0,0,string,player,string +_DzAPI_Map_GetPublicArchive_Defaults=_,_, +_DzAPI_Map_GetPublicArchive_Category=TC_DZAPI + +DzAPI_Map_Global_GetStoreString=0,0,string,string +_DzAPI_Map_Global_GetStoreString_Defaults=_, +_DzAPI_Map_Global_GetStoreString_Category=TC_DZAPI + +DzAPI_Map_ServerArchive=0,0,string,player,string +_DzAPI_Map_ServerArchive_Defaults=Player00,_, +_DzAPI_Map_ServerArchive_Category=TC_DZAPI + +DzAPI_Map_PlayedGames=0,0,integer,player +_DzAPI_Map_PlayedGames_Defaults=Player00, +_DzAPI_Map_PlayedGames_Category=TC_DZAPI + +DzAPI_Map_CommentCount=0,0,integer,player +_DzAPI_Map_CommentCount_Defaults=Player00, +_DzAPI_Map_CommentCount_Category=TC_DZAPI + +DzAPI_Map_FriendCount=0,0,integer,player +_DzAPI_Map_FriendCount_Defaults=Player00, +_DzAPI_Map_FriendCount_Category=TC_DZAPI + +DzAPI_Map_IsConnoisseur=0,0,boolean,player +_DzAPI_Map_IsConnoisseur_Defaults=Player00, +_DzAPI_Map_IsConnoisseur_Category=TC_DZAPI + +DzAPI_Map_IsBattleNetAccount=0,0,boolean,player +_DzAPI_Map_IsBattleNetAccount_Defaults=Player00, +_DzAPI_Map_IsBattleNetAccount_Category=TC_DZAPI + +DzAPI_Map_IsAuthor=0,0,boolean,player +_DzAPI_Map_IsAuthor_Defaults=Player00, +_DzAPI_Map_IsAuthor_Category=TC_DZAPI + +DzAPI_Map_CommentTotalCount=0,0,integer +_DzAPI_Map_CommentTotalCount_Defaults= +_DzAPI_Map_CommentTotalCount_Category=TC_DZAPI + +DzAPI_Map_Returns=0,0,boolean,player,ReturnUser +_DzAPI_Map_Returns_Defaults=Player00,ReturnUser2, +_DzAPI_Map_Returns_Category=TC_DZAPI + +DzAPI_Map_ContinuousCount=0,0,integer,player,ContinuousCountType +_DzAPI_Map_ContinuousCount_Defaults=Player00,ContinuousCountType0, +_DzAPI_Map_ContinuousCount_Category=TC_DZAPI + +DzAPI_Map_MapsTotalPlayed=0,0,integer,player +_DzAPI_Map_MapsTotalPlayed_Defaults=_, +_DzAPI_Map_MapsTotalPlayed_Category=TC_DZAPI + +DzAPI_Map_MapsLevel=0,0,integer,player,integer +_DzAPI_Map_MapsLevel_Defaults=_,_, +_DzAPI_Map_MapsLevel_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeGold=0,0,integer,player,integer +_DzAPI_Map_MapsConsumeGold_Defaults=_,_, +_DzAPI_Map_MapsConsumeGold_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeLumber=0,0,integer,player,integer +_DzAPI_Map_MapsConsumeLumber_Defaults=_,_, +_DzAPI_Map_MapsConsumeLumber_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeLv1=0,0,boolean,player,integer +_DzAPI_Map_MapsConsumeLv1_Defaults=_,_, +_DzAPI_Map_MapsConsumeLv1_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeLv2=0,0,boolean,player,integer +_DzAPI_Map_MapsConsumeLv2_Defaults=_,_, +_DzAPI_Map_MapsConsumeLv2_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeLv3=0,0,boolean,player,integer +_DzAPI_Map_MapsConsumeLv3_Defaults=_,_, +_DzAPI_Map_MapsConsumeLv3_Category=TC_DZAPI + +DzAPI_Map_MapsConsumeLv4=0,0,boolean,player,integer +_DzAPI_Map_MapsConsumeLv4_Defaults=_,_, +_DzAPI_Map_MapsConsumeLv4_Category=TC_DZAPI + +DzAPI_Map_GetForumData=0,0,integer,player,ForumData +_DzAPI_Map_GetForumData_Defaults=_,ForumData0, +_DzAPI_Map_GetForumData_Category=TC_DZAPI + +DzAPI_Map_GetLotteryUsedCount=0,0,integer,player +_DzAPI_Map_GetLotteryUsedCount_Defaults=_, +_DzAPI_Map_GetLotteryUsedCount_Category=TC_DZAPI + +DzAPI_Map_PlayerFlags=0,0,boolean,player,ReturnUser +_DzAPI_Map_PlayerFlags_Defaults=_,ReturnUser2, +_DzAPI_Map_PlayerFlags_Category=TC_DZAPI + +DzAPI_Map_IsPlayerUsingSkin=0,0,boolean,player,SKINTYPE,integer +_DzAPI_Map_IsPlayerUsingSkin_Defaults=Player00,skinType4,_, +_DzAPI_Map_IsPlayerUsingSkin_Category=TC_DZAPI + +DzGetTriggerMallItem=0,0,string +_DzGetTriggerMallItem_Defaults= +_DzGetTriggerMallItem_Category=TC_DZAPI + +DzGetTriggerMallItemPlayer=0,0,player +_DzGetTriggerMallItemPlayer_Defaults= +_DzGetTriggerMallItemPlayer_Category=TC_DZAPI + +DzAPI_Map_GetSinceLastPlayedSeconds=0,0,integer,player +_DzAPI_Map_GetSinceLastPlayedSeconds_Defaults=_, +_DzAPI_Map_GetSinceLastPlayedSeconds_Category=TC_DZAPI + +DzAPI_Map_GetLastRecommendTime=0,0,integer,player +_DzAPI_Map_GetLastRecommendTime_Defaults=_, +_DzAPI_Map_GetLastRecommendTime_Category=TC_DZAPI + +DzAPI_Map_IsMapTest=0,0,boolean +_DzAPI_Map_IsMapTest_Defaults= +_DzAPI_Map_IsMapTest_Category=TC_DZAPI + +DzAPI_Map_IsPlayer=0,0,boolean,player +_DzAPI_Map_IsPlayer_Defaults=_, +_DzAPI_Map_IsPlayer_Category=TC_DZAPI + +[remove:TriggerActions] + + +[DefaultTriggers] + diff --git a/share/mpq/dzapi/ui/TriggerStrings.txt b/share/mpq/dzapi/ui/TriggerStrings.txt new file mode 100644 index 0000000..00ff1fd --- /dev/null +++ b/share/mpq/dzapi/ui/TriggerStrings.txt @@ -0,0 +1,380 @@ +[TriggerEventStrings] +DzTriggerRegisterMallItemSyncData=玩家获得平台道具事件 +DzTriggerRegisterMallItemSyncData="注册实时购买商品事件" +DzTriggerRegisterMallItemSyncDataHint="玩家背包中新获得了当前地图道具的回调事件,用于地图实现玩家在游戏内商城购买成功后在游戏内立即生效。可在事件内配合[事件响应-实时获得平台道具的玩家]和[事件响应-实时获得的平台道具]使用。" + +[TriggerActionStrings] +DzAPI_Map_MissionComplete=DzAPI-活动完成 [JAPI] +DzAPI_Map_MissionComplete="DzAPI: ",~玩家,"完成任务[",~任务类型,"][",~任务名称,"]" +DzAPI_Map_MissionCompleteHint="完成平台活动[RPG大厅限定]" + + + +DzAPI_Map_Stat_SetStat=上报房间内显示的数据 +DzAPI_Map_Stat_SetStat="设置 ",~whichPlayer," 房间的 ",~key," 项目显示 ",~value +DzAPI_Map_Stat_SetStatHint="作者可以将游戏内的关键数值或结果上报给平台,用于在平台游戏房间内展示以方便玩家相互快速了解实力,数据上报后需在作者之家进行配置后才能展示出来。比如:比如获得MVP次数、最高通关难度等。" + +DzAPI_Map_Ladder_SubmitBooleanData=天梯提交布尔值数据 +DzAPI_Map_Ladder_SubmitBooleanData="提交 ",~whichPlayer," 天梯项目:",~key," 的目的 ",~value +DzAPI_Map_Ladder_SubmitBooleanDataHint="" + +DzAPI_Map_Ladder_SetStat=天梯提交字符串数据 +DzAPI_Map_Ladder_SetStat="提交 ",~whichPlayer," 天梯项目:",~key," 的值为:",~value +DzAPI_Map_Ladder_SetStatHint="" + +DzAPI_Map_Ladder_SubmitIntegerData=天梯提交整数数据 +DzAPI_Map_Ladder_SubmitIntegerData="提交 ",~whichPlayer," 天梯项目:",~key," 的值为:",~value +DzAPI_Map_Ladder_SubmitIntegerDataHint="" + +DzAPI_Map_Stat_SubmitUnitIdData=天梯提交单位类型数据 +DzAPI_Map_Stat_SubmitUnitIdData="提高 ",~whichPlayer," 天梯项目:",~key," 的值为:",~value +DzAPI_Map_Stat_SubmitUnitIdDataHint="" + +DzAPI_Map_Ladder_SubmitAblityIdData=天梯提交技能数据 +DzAPI_Map_Ladder_SubmitAblityIdData="提交 ",~whichPlayer," 天梯项目:",~key," 的值为:",~value +DzAPI_Map_Ladder_SubmitAblityIdDataHint="" + +DzAPI_Map_Ladder_SubmitItemIdData=天梯提交物品数据 +DzAPI_Map_Ladder_SubmitItemIdData="提交 ",~whichPlayer," 天梯项目:",~key," 的值为:",~value +DzAPI_Map_Ladder_SubmitItemIdDataHint="" + +DzAPI_Map_Ladder_SubmitTitle=天梯提交获得称号 +DzAPI_Map_Ladder_SubmitTitle="提交 ",~whichPlayer," 获得称号:",~key +DzAPI_Map_Ladder_SubmitTitleHint="" + +DzAPI_Map_Ladder_SubmitPlayerRank=天梯提交玩家排名 +DzAPI_Map_Ladder_SubmitPlayerRank="设置 ",~whichPlayer," 的游戏排名为:",~value +DzAPI_Map_Ladder_SubmitPlayerRankHint="" + +DzAPI_Map_Ladder_SubmitPlayerExtraExp=天梯设置玩家额外分 +DzAPI_Map_Ladder_SubmitPlayerExtraExp="设置 ",~whichPlayer," 的额外分为 ",~value +DzAPI_Map_Ladder_SubmitPlayerExtraExpHint="最多30分" + +DzAPI_Map_SaveServerValue=保存服务器存档 [JAPI] +DzAPI_Map_SaveServerValue="DzAPI: ",~玩家,"保存存档[",~存档名称,"][",~存档内容,"]"," 最大长度64位 +DzAPI_Map_SaveServerValueHint="保存服务器存档" + +DzAPI_Map_StoreBoolean=保存布尔值变量至服务器 +DzAPI_Map_StoreBoolean="服务器存档:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value," 最大长度63位 +DzAPI_Map_StoreBooleanHint="这是经过封装的接口,实际Key会在原Key前面加”B,(如您的key是AA,实际key为BAA。【BAA用于作者之家填写,在编辑器上获取和读都填写AA就可以了】)”" + +DzAPI_Map_StoreInteger=保存整数变量至服务器 +DzAPI_Map_StoreInteger="服务器存档:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value," 最大长度63位 +DzAPI_Map_StoreIntegerHint="这是经过封装的接口,实际Key会在原Key前面加”I,(如您的key是AA,实际key为IAA。【IAA用于作者之家填写,在编辑器上获取和读都填写AA就可以了】)”" + +DzAPI_Map_StoreReal=保存实数变量至服务器 +DzAPI_Map_StoreReal="服务器存档:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value," 最大长度63位 +DzAPI_Map_StoreRealHint="这是经过封装的接口,实际Key会在原Key前面加”R,(如您的key是AA,实际key为RAA。【RAA用于作者之家填写,在编辑器上获取和读都填写AA就可以了】”" + + +DzAPI_Map_StoreString=保存字符串变量至服务器 +DzAPI_Map_StoreString="服务器存档:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value," 最大长度63位 +DzAPI_Map_StoreStringHint="这是经过封装的接口,实际Key会在原Key前面加”S,(如您的key是AA,实际key为SAA。【SAA用于作者之家填写,在编辑器上获取和读都填写AA就可以了】”" + +DzAPI_Map_StoreUnitType=服务器存储单位类型 +DzAPI_Map_StoreUnitType="服务器存档:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value," 最大长度63位 +DzAPI_Map_StoreUnitTypeHint="这是经过封装的接口,实际Key会在原Key前面加”I”" + +DzAPI_Map_StoreAbilityId=服务器存储技能Id +DzAPI_Map_StoreAbilityId="服务器存档:存储 ",~," 数据,名称:",~,",值:",~ +DzAPI_Map_StoreAbilityIdHint="这是经过封装的接口,实际Key会在原Key前面加”I”" + +DzAPI_Map_FlushStoredMission=清理服务器数据 +DzAPI_Map_FlushStoredMission="服务器数据:清理",~whichPlayer,"数据,名称: ",~key +DzAPI_Map_FlushStoredMissionHint="清理封装的接口记得在前面加对应的B、I、R、S" + + +DzAPI_Map_OrpgTrigger=触发BOSS击杀 +DzAPI_Map_OrpgTrigger="设置 ",~whichPlayer," 触发击杀 ",~bosskey +DzAPI_Map_OrpgTriggerHint="告知平台服务器游戏内发生了BOSS击杀,请求平台服务器计算BOSS掉落内容。触发之后用[DzAPI_Map_GetServerArchiveEquip]和[DzAPI_Map_GetServerArchiveDrop]读取" + +DzAPI_Map_SavePublicArchive=保存服务器存档组 +DzAPI_Map_SavePublicArchive="在服务器存档组:存储 ",~whichPlayer," 数据,名称:",~key,",值:",~value +DzAPI_Map_SavePublicArchiveHint="将变量保存到当前作者账号下的服务器存档组中。" + +DzAPI_Map_Global_StoreString=保存全局存档 +DzAPI_Map_Global_StoreString="在全局存档 ",~key,",存储值:",~value +DzAPI_Map_Global_StoreStringHint="将变量数据存储到平台服务器上的全局存档中,保存时会受到作者之家所配置的保存规则限制。保存成功后本局游戏及同一时间正在进行的其他游戏局内的所有玩家都会收到全局存档变化事件的事件广播。" + +DzAPI_Map_UseConsumablesItem=使用平台道具(局数型) +DzAPI_Map_UseConsumablesItem="设置该局消耗 ",~whichPlayer," 的商品:",~key," 一个 +DzAPI_Map_UseConsumablesItemHint="扣减玩家背包中的局数型道具1个,多次对同一个道具调用也只扣减1次。需先通过获取道具剩余数量确保玩家背包中的道具剩余数量大于0。" + +DzAPI_Map_Statistics=上报埋点数据 +DzAPI_Map_Statistics="上报埋点数据: ",~whichPlayer,",埋点key:",~eventKey,",子key:",~不填,",次数 ",~value +DzAPI_Map_StatisticsHint="可以在游戏内的关键行为操作进行埋点,以便进行游戏内的玩家行为数据统计分析(比如某个英雄选择次数),上报前需先在作者之家创建埋点。" + +DzAPI_Map_OpenMall=打开游戏内置商城道具购买界面 +DzAPI_Map_OpenMall=~whichPlayer," 打开商城道具 ",~道具key," 购买界面" +DzAPI_Map_OpenMallHint="打开游戏内置商城的道具购买页面,用于作者在地图内开发引导消费场景。购买成功后可通过玩家获得平台道具事件实现在游戏内立即生效。" + +DzAPI_Map_GameResult_CommitData=上报本局游戏玩家数据 +DzAPI_Map_GameResult_CommitData="上报本局游戏:",~whichPlayer," 项目:",~key," 数据:",~value +DzAPI_Map_GameResult_CommitDataHint="上报本局游戏的玩家数据,比如战斗力、杀敌数等。" + +DzAPI_Map_GameResult_CommitTitle=上报本局游戏玩家称号 +DzAPI_Map_GameResult_CommitTitle="上报本局游戏:",~whichPlayer," 称号:",~key +DzAPI_Map_GameResult_CommitTitleHint="上报本局游戏玩家所获得的称号,请注意**称号Key**不能和[上报本局游戏玩家数据]的**数据项Key**重复。" + +DzAPI_Map_GameResult_CommitGameMode=上报本局游戏模式 +DzAPI_Map_GameResult_CommitGameMode="上报本局游戏模式:",~模式名 +DzAPI_Map_GameResult_CommitGameModeHint="上报本局游戏所选择的地图模式名称。" + +DzAPI_Map_GameResult_CommitGameResult=上报本局游戏结果 +DzAPI_Map_GameResult_CommitGameResult="上报本局游戏结果:",~whichPlayer," ",~value +DzAPI_Map_GameResult_CommitGameResultHint="上报本局游戏玩家游戏结果(胜负),提交后会立即结束游戏。" + +DzAPI_Map_GameResult_CommitGameResultNoEnd=上报本局游戏结果(不结束游戏) +DzAPI_Map_GameResult_CommitGameResultNoEnd="上报本局游戏结果:",~whichPlayer," ",~value," [不结束游戏]" +DzAPI_Map_GameResult_CommitGameResultNoEndHint="上报本局游戏玩家游戏结果(胜负),提交后不会立即结束游戏,适用于游戏正常结束后还有奖励关的地图。" + + +DzAPI_Map_GameResult_CommitPlayerRank=上报本局游戏玩家排名 +DzAPI_Map_GameResult_CommitPlayerRank="上报本局游戏 ",~whichPlayer," 的排名为:",~value +DzAPI_Map_GameResult_CommitPlayerRankHint="对于乱斗模式的地图,上报每一名玩家的名次。" + +DzAPI_Map_QuickBuy=打开牛币快速购买窗口 +DzAPI_Map_QuickBuy="向 ",~whichPlayer," 弹出商品 ",~key," 的购买窗口,购买数量 ",~数量," 窗口持续时间 ",~时间," 秒" +DzAPI_Map_QuickBuyHint="弹出提示框询问玩家是否使用牛币直接购买指定道具,作者需已在商城上架对应商品(商品信息中的**道具和数量**与接口所请求的参数一致)。如果前一次购买的提示框未关闭的情况下再次调用此接口,后续请求无效。购买成功后可通过[玩家获得平台道具事件]实现在游戏内立即生效。" + +DzAPI_Map_CancelQuickBuy=关闭牛币快速购买窗口 +DzAPI_Map_CancelQuickBuy="关闭 ",~whichPlayer," 牛币快速购买窗口" +DzAPI_Map_CancelQuickBuyHint="关闭最后一次打开的牛币快速购买窗口,结合打开牛币快速购买窗口使用。" + +[TriggerCallStrings] + +DzAPI_Map_CommentTotalCount1=玩家在地图自定义排行榜上的排名 +DzAPI_Map_CommentTotalCount1="获取玩家 ",~whichPlayer," 自定义排行榜KEY(作者之家填写):",~key," 的排名,【请注意100名以外的玩家获取的值为0!】 +DzAPI_Map_CommentTotalCount1Hint="【100名以外的玩家排名为0】该功能适用于作者之家-服务器存档-自定义排行榜 " + +DzAPI_Map_IsRedVIP=玩家是否平台认证的职业选手 +DzAPI_Map_IsRedVIP="判断 ",~player," 是否是职业选手" +DzAPI_Map_IsRedVIPHint="判断玩家是否平台认证的职业选手(红V)。" + +DzAPI_Map_IsBlueVIP=玩家是否平台认证的主播 +DzAPI_Map_IsBlueVIP="判断 ",~player," 平台认证的主播(蓝V)" +DzAPI_Map_IsBlueVIPHint="判断指定玩家是否平台认证的主播(蓝V)。" + +DzAPI_Map_IsRPGLobby=本局游戏是否处于RPG游戏大厅 +DzAPI_Map_IsRPGLobby="本局游戏是否处于RPG游戏大厅" +DzAPI_Map_IsRPGLobbyHint="获取当前游戏局是否通过RPG游戏大厅启动。" + +DzAPI_Map_IsRPGLadder=本局游戏是否天梯排位赛 +DzAPI_Map_IsRPGLadder="判断地图是否在RPG天梯" +DzAPI_Map_IsRPGLadderHint="本局游戏是否通过RPG天梯启动,如果地图配置了多个天梯模式,可通过获取本局游戏的地图模式接口获取具体选定的是哪一个天梯模式。" + + +DzAPI_Map_GetMatchType=本局游戏的地图模式 +DzAPI_Map_GetMatchType="本局游戏的地图模式" +DzAPI_Map_GetMatchTypeHint="获取本局游戏所选择地图模式,地图模式均由作者在作者之家进行配置(包括天梯排位赛模式、快速匹配模式、建房间时房主所选定的地图模式)。" + +DzAPI_Map_GetLadderLevel=玩家天梯等级 +DzAPI_Map_GetLadderLevel="获取 ",~player," 天梯等级" +DzAPI_Map_GetLadderLevelHint="获取玩家在当前游戏局所采用的天梯模式下的天梯等级,仅天梯模式下的游戏局有效。" + +DzAPI_Map_GetLadderRank=玩家天梯排名 +DzAPI_Map_GetLadderRank="获取 ",~player," 天梯排名" +DzAPI_Map_GetLadderRankHint="排名>1000的获取值为0,获取玩家在当前游戏局所采用的天梯模式下的天梯排名,仅天梯模式下的游戏局有效。" + +DzAPI_Map_GetGameStartTime=本局游戏的开始时间 +DzAPI_Map_GetGameStartTime="本局游戏的开始时间" +DzAPI_Map_GetGameStartTimeHint="获取本局游戏开始时的服务器时间。" + +DzAPI_Map_GetMapLevel=玩家地图等级 +DzAPI_Map_GetMapLevel="获取 ",~player," 的地图等级" +DzAPI_Map_GetMapLevelHint="玩家地图等级【RPG大厅限定】" + +DzAPI_Map_GetMapLevelRank=玩家在地图等级排行榜上的排名 +DzAPI_Map_GetMapLevelRank="获取 ",~player," 在地图等级排行榜上的排名" +DzAPI_Map_GetMapLevelRankHint="排名>100的获取值为0" + +DzAPI_Map_GetMapConfig=地图配置参数 +DzAPI_Map_GetMapConfig="获取:",~key," 地图配置参数" +DzAPI_Map_GetMapConfigHint="获取作者在作者之家配置的地图参数(原只读类型的地图全局存档),作者可以通过此接口实现节日活动开关、口令等功能。" + +DzAPI_Map_HasMallItem=玩家是否拥有平台道具 +DzAPI_Map_HasMallItem="获取 ",~whichPlayer," 是否拥有:",~key," 对应的商城道具." +DzAPI_Map_HasMallItemHint="检测玩家背包中是否拥该道具且处于有效状态。已过期的时效性道具、剩余数量为0的数量型道具均视为无效;" + +GetPlayerServerValueSuccess=读取玩家服务器存档成功 +GetPlayerServerValueSuccess="获取",~whichPlayer," 服务器存档成功." +GetPlayerServerValueSuccessHint="如果返回false代表读取失败,反之成功,之后游戏里平台不会再发送“服务器保存失败”的信息,所以希望地图作者在游戏开始给玩家发下信息服务器存档是否正确读取。" + +DzAPI_Map_PlayerLoadedItems=玩家平台道具是否读取成功 +DzAPI_Map_PlayerLoadedItems=~whichPlayer," 平台道具是否读取成功" +DzAPI_Map_PlayerLoadedItemsHint="" + +DzAPI_Map_GetServerValue=读取服务器存储的数据 +DzAPI_Map_GetServerValue="获取 ",~whichPlayer," ",~key," 里的数据" +DzAPI_Map_GetServerValueHint="" + +DzAPI_Map_GetStoredBoolean=读取服务器上的布尔变量 +DzAPI_Map_GetStoredBoolean="获取 ",~whichPlayer," 数据名称:",~key," 里存储的布尔值" +DzAPI_Map_GetStoredBooleanHint="这是经过封装的接口,实际Key会在原Key前面加”B”" + +DzAPI_Map_GetStoredInteger=读取服务器上的整数变量 +DzAPI_Map_GetStoredInteger="获取",~whichPlayer," 数据名称:",~key," 里存储的整数." +DzAPI_Map_GetStoredIntegerHint="这是经过封装的接口,实际Key会在原Key前面加”I”" + +DzAPI_Map_GetStoredUnitType=读取服务器存储的单位类型 +DzAPI_Map_GetStoredUnitType="获取 ",~whichPlayer," 数据名称:",~key," 里存储的单位类型" +DzAPI_Map_GetStoredUnitTypeHint="这是经过封装的接口,实际Key会在原Key前面加”I”" + +DzAPI_Map_GetStoredAbilityId=读取服务器存储的技能类型 +DzAPI_Map_GetStoredAbilityId="获取 ",~whichPlayer," 数据名称:",~key," 里存储的技能类型" +DzAPI_Map_GetStoredAbilityIdHint="这是经过封装的接口,实际Key会在原Key前面加”I”" + + + +DzAPI_Map_GetStoredReal=读取服务器上的实数变量 +DzAPI_Map_GetStoredReal="获取 ",~whichPlayer," 数据名称:",~key," 里存储的实数" +DzAPI_Map_GetStoredRealHint="这是经过封装的接口,实际Key会在原Key前面加”R”" + + + +DzAPI_Map_GetStoredString=读取服务器上的字符串变量 +DzAPI_Map_GetStoredString="获取 ",~whichPlayer," 数据名称:",~key," 里存储的字符串" +DzAPI_Map_GetStoredStringHint="这是经过封装的接口,实际Key会在原Key前面加”S”" + + +DzAPI_Map_GetGuildName=玩家所属公会 +DzAPI_Map_GetGuildName="获取 ",~whichPlayer," 公会名称" +DzAPI_Map_GetGuildNameHint="获取玩家所属公会名称。" + +DzAPI_Map_GetGuildRole=玩家在公会的职责 +DzAPI_Map_GetGuildRole="获取 ",~whichPlayer," 公会职责" +DzAPI_Map_GetGuildRoleHint="获取玩家公会职责 Member=10 Admin=20 Leader=30" + +DzAPI_Map_GetServerArchiveDrop=BOSS击杀后的掉落内容 +DzAPI_Map_GetServerArchiveDrop="获取 ",~whichPlayer," 击杀boss ",~bosskey," 掉落的装备" +DzAPI_Map_GetServerArchiveDropHint="游戏内调用触发BOSS击杀后,获取本次掉落内容。" + + +DzAPI_Map_GetServerArchiveEquip=BOSS击杀后的掉落数量 +DzAPI_Map_GetServerArchiveEquip="读取 ",~whichPlayer," BOSS击杀后的 ",~itemkey," 掉落的数量" +DzAPI_Map_GetServerArchiveEquipHint="游戏内调用[触发BOSS击杀]后,获取本次掉落数量。" + +DzAPI_Map_GetPublicArchive=读取服务器存档组 +DzAPI_Map_GetPublicArchive="在服务器存档组读取 ",~whichPlayer,",名称:",~key," 里的数据" +DzAPI_Map_GetPublicArchiveHint="读取当前作者账号下的服务器存档组变量数据。。" + +DzAPI_Map_Global_GetStoreString=读取全局存档 +DzAPI_Map_Global_GetStoreString="读取全局存档 ",~key," 里的数据" +DzAPI_Map_Global_GetStoreStringHint="从服务器上读取的全局存档数据。" + +DzAPI_Map_ServerArchive=读取服务器存档(区分大小写) +DzAPI_Map_ServerArchive="读取服务器玩家 ",~whichPlayer,",名称:",~key," 里的数据" +DzAPI_Map_ServerArchiveHint="从服务器上读取变量数据,存档变量Key区分大小写,保存时会受到作者之家所配置的防刷分规则限制。" + +DzAPI_Map_PlayedGames=玩家累计游戏局数 +DzAPI_Map_PlayedGames="获取 ",~whichPlayer," 游戏局数" +DzAPI_Map_PlayedGamesHint="获取玩家中游戏局数" + +DzAPI_Map_CommentCount=评论次数【废弃】 +DzAPI_Map_CommentCount="获取 ",~whichPlayer," 评论次数" +DzAPI_Map_CommentCountHint="获取玩家的评论次数,该功能已失效,始终返回1" + +DzAPI_Map_FriendCount=玩家好友数量【废弃】 +DzAPI_Map_FriendCount="获取 ",~whichPlayer," 好友数量" +DzAPI_Map_FriendCountHint="该功能废弃" + +DzAPI_Map_IsConnoisseur=玩家是否平台认证的鉴赏家 +DzAPI_Map_IsConnoisseur=" ",~whichPlayer," 是鉴赏家" +DzAPI_Map_IsConnoisseurHint="评论里的鉴赏家" + +DzAPI_Map_IsBattleNetAccount=战网账号【废弃】 +DzAPI_Map_IsBattleNetAccount=" ",~whichPlayer," 登陆的是战网账号【废弃】" +DzAPI_Map_IsBattleNetAccountHint="玩家登陆的是战网账号,该功能已废弃" + +DzAPI_Map_IsAuthor=玩家是否当前地图作者 +DzAPI_Map_IsAuthor=" ",~whichPlayer," 是本图作者" +DzAPI_Map_IsAuthorHint="判断指定玩家是否为本地图的作者。" + +DzAPI_Map_CommentTotalCount=地图评论次数 +DzAPI_Map_CommentTotalCount="该图总评论次数" +DzAPI_Map_CommentTotalCountHint="获取该图总评论次数" + + +DzAPI_Map_Returns=是否回流/收藏过地图的用户 +DzAPI_Map_Returns=~whichPlayer," ",~label +DzAPI_Map_ReturnsHint="超过7天未玩地图的用户再次登录被称为地图回流用户,地图回流BUFF会存在7天,7天后消失。平台回流用户的BUFF存在15天,15天后消失。建议设置奖励,鼓励玩家回来玩地图!" + + +DzAPI_Map_ContinuousCount=玩家签到天数 +DzAPI_Map_ContinuousCount=~whichPlayer," ",~label +DzAPI_Map_ContinuousCountHint="获取玩家在指定地图的地图签到数据。" + +DzAPI_Map_MapsTotalPlayed=玩家累计游戏时长 +DzAPI_Map_MapsTotalPlayed=~whichPlayer," 累计游戏时长" +DzAPI_Map_MapsTotalPlayedHint="获取玩家在当前地图的累计游戏时长" + +DzAPI_Map_MapsLevel= 玩家在指定地图的地图等级 +DzAPI_Map_MapsLevel=~whichPlayer," 在地图:",~mapId," 的地图等级" +DzAPI_Map_MapsLevelHint="获取 玩家在指定地图的地图等级。" + +DzAPI_Map_MapsConsumeGold=玩家在指定地图累计消耗平台金币 +DzAPI_Map_MapsConsumeGold=~whichPlayer," 在地图:",~mapId," 的平台金币消耗" +DzAPI_Map_MapsConsumeGoldHint="获取玩家在指定地图的累计消耗平台金币数量。" + +DzAPI_Map_MapsConsumeLumber=指定地图的平台木材消耗 +DzAPI_Map_MapsConsumeLumber=~whichPlayer," 地图:",~mapId," 的平台木材消耗" +DzAPI_Map_MapsConsumeLumberHint="" + +DzAPI_Map_MapsConsumeLv1=玩家在指定地图累计消费金额区间(1~199) +DzAPI_Map_MapsConsumeLv1=~whichPlayer," 地图 ",~mapId," 消费在(1~199)区间" +DzAPI_Map_MapsConsumeLv1Hint="检测消费是否在(1~199)区间" + +DzAPI_Map_MapsConsumeLv2=玩家在指定地图累计消费金额区间(200~499) +DzAPI_Map_MapsConsumeLv2=~whichPlayer," 地图 ",~mapId," 消费在(200~499)区间" +DzAPI_Map_MapsConsumeLv2Hint="检测消费是否在(200~499)区间" + +DzAPI_Map_MapsConsumeLv3=玩家在指定地图累计消费金额区间(500~999) +DzAPI_Map_MapsConsumeLv3=~whichPlayer," 地图 ",~mapId," 消费在(500~999)区间" +DzAPI_Map_MapsConsumeLv3Hint="检测消费是否在(500~999)区间" + +DzAPI_Map_MapsConsumeLv4=玩家在指定地图累计消费金额区间(1000+) +DzAPI_Map_MapsConsumeLv4=~whichPlayer," 地图 ",~mapId," 消费在(1000+)区间" +DzAPI_Map_MapsConsumeLv4Hint="检测消费是否在(1000+)区间" + + +DzAPI_Map_GetForumData=玩家在地图社区上的互动数据 +DzAPI_Map_GetForumData=~whichPlayer," ",~whichData +DzAPI_Map_GetForumDataHint="“获取玩家在当前地图的社区内的行为统计数据及身份数据。" + +DzAPI_Map_GetLotteryUsedCount=玩家累计抽取地图宝箱次数 +DzAPI_Map_GetLotteryUsedCount=~whichPlayer," 玩家累计抽取地图宝箱次数" +DzAPI_Map_GetLotteryUsedCountHint="" + +DzAPI_Map_PlayerFlags=玩家标记 +DzAPI_Map_PlayerFlags=~whichPlayer," 是 ",~label +DzAPI_Map_PlayerFlagsHint="获取玩家在当前地图上的身份标记(当前是否回流用户、是否收藏地图)。" + +DzAPI_Map_IsPlayerUsingSkin=玩家是否装备指定平台装饰 +DzAPI_Map_IsPlayerUsingSkin=~whichPlayer," 装备了 ",~skinType," 的 ",~id," 道具" +DzAPI_Map_IsPlayerUsingSkinHint="检查玩家是否装备着指定平台装饰(仅限平台和地图的合作装饰)。" + +DzGetTriggerMallItem=事件响应 - 实时获得的平台道具 +DzGetTriggerMallItem="实时购买的商品" +DzGetTriggerMallItemHint="获取所得到的平台道具。仅限在玩家获得平台道具事件内使用。" + +DzGetTriggerMallItemPlayer=事件响应 - 实时获得平台道具的玩家 +DzGetTriggerMallItemPlayer="实时购买商城道具的玩家" +DzGetTriggerMallItemPlayerHint="获取是哪位玩家获得了平台道具。仅限在玩家获得平台道具事件内使用。" + +DzAPI_Map_GetSinceLastPlayedSeconds=玩家本局游戏距上一局游戏的时间差 +DzAPI_Map_GetSinceLastPlayedSeconds=~whichPlayer," 本局游戏距上一局游戏的时间差" +DzAPI_Map_GetSinceLastPlayedSecondsHint="返查询该玩家上次玩游戏时间至本次玩游戏时间的差值,可以利用此接口实现离线收益之类的功能。" + +DzAPI_Map_GetLastRecommendTime=玩家最近一次上安利墙时间 +DzAPI_Map_GetLastRecommendTime=~whichPlayer," 最后上安利墙时间" +DzAPI_Map_GetLastRecommendTimeHint="获取玩家最近一次在当前地图的优质评论被推荐上安利墙的时间。" + +DzAPI_Map_IsMapTest=本局游戏是否处于平台自测服 +DzAPI_Map_IsMapTest="本局游戏是否处于平台自测服" +DzAPI_Map_IsMapTestHint="获取当前游戏局所处的平台环境。" + +DzAPI_Map_IsPlayer=玩家是否为真实玩家 +DzAPI_Map_IsPlayer=~whichPlayer," 是否为真实玩家" +DzAPI_Map_IsPlayerHint="当作者开启匹配模式的虚拟电脑玩家(AI)补位功能后,可通过此接口判定是否真实玩家。" + +[remove:TriggerActionStrings] diff --git a/share/mpq/dzapi2/action.txt b/share/mpq/dzapi2/action.txt new file mode 100644 index 0000000..533891e --- /dev/null +++ b/share/mpq/dzapi2/action.txt @@ -0,0 +1,87 @@ + +[DzAPI_Map_Global_StoreString] +title = "保存全局存档 [NEW]" +description = "保存全局存档 名称 ${key} 值 ${value}" +comment = "保存时受作者之家设定的规则限制" +category = TC_DZAPI +[[.args]] +type = string +default = "key" +[[.args]] +type = string +default = "value" + +[DzAPI_Map_SaveServerArchive] +title = "保存服务器存档(区分大小写)" +description = "保存服务器存档(区分大小写) 玩家 ${player} 名称 ${key} 值 ${value}" +comment = "用将变量存储到服务器,存档变量Key区分大小写。" +category = TC_DZAPI +[[.args]] +type = player +default = GetTriggerPlayer +[[.args]] +type = string +default = "Key" +[[.args]] +type = string +default = "value" + +[DzAPI_Map_StoreIntegerEX] +title = "服务器存储整数(区分大小写) [NEW]" +description = "服务器存储整数(区分大小写) 玩家 ${player} 名称 ${key} 值 ${value}" +comment = "这是经过封装的接口,实际Key会在原Key前面加”I”,与普通存档共用KEY" +category = TC_DZAPI +[[.args]] +type = player +default = GetTriggerPlayer +[[.args]] +type = string +default = "IKey" +[[.args]] +type = integer +default = "0" + +[DzAPI_Map_StoreStringEX] +title = "服务器存储字符串(区分大小写) [NEW]" +description = "服务器存储字符串(区分大小写) 玩家 ${player} 名称 ${key} 值 ${value}" +comment = "这是经过封装的接口,实际Key会在原Key前面加”S”,与普通存档共用KEY" +category = TC_DZAPI +[[.args]] +type = player +default = GetTriggerPlayer +[[.args]] +type = string +default = "SKey" +[[.args]] +type = string +default = "value" + +[DzAPI_Map_ConsumeMallItem] +title = "使用平台道具(数量型)" +description = "使用 ${player} 名称 ${key} 的商城道具 ${value} 次" +comment = "扣减玩家背包中的数量消耗型道具,可以多次调用。" +category = TC_DZAPI +[[.args]] +type = player +default = GetTriggerPlayer +[[.args]] +type = string +default = "Key" +[[.args]] +type = integer +default = 1 + +[DzAPI_Map_EnablePlatformSettings] +title = "游戏内辅助功能开关" +description = "设置 ${player} 的 ${option} 号平台功能为 ${enable}" +comment = "地图可以根据自身特点,强制打开或关闭视距调整、显示血条/蓝条、智能施法功能。1号功能为锁定镜头距离,2号功能为显示血、蓝条" +category = TC_DZAPI +[[.args]] +type = player +default = GetTriggerPlayer +[[.args]] +type = platformFunction +default = platformFunction_1 +[[.args]] +type = optionEnable +default = optionEnable_Disable diff --git a/share/mpq/dzapi2/call.txt b/share/mpq/dzapi2/call.txt new file mode 100644 index 0000000..b62e99d --- /dev/null +++ b/share/mpq/dzapi2/call.txt @@ -0,0 +1,80 @@ + +[DzAPI_Map_Global_GetStoreString] +title = "读取全局存档 [NEW]" +description = "读取全局存档 名称 ${key}" +comment = "只读的公共存档请使用另一个API读取" +category = TC_DZAPI +returns = string +[[.args]] +type = string + +[DzAPI_Map_ServerArchive] +title = "读取服务器存档(区分大小写)" +description = "获取服务器存储的数据(区分大小写) 玩家 ${player} 名称 ${key}" +comment = "从服务器上读取变量数据,存档变量Key区分大小写,保存时会受到作者之家所配置的防刷分规则限制。" +category = TC_DZAPI +returns = string +[[.args]] +type = player +[[.args]] +type = string + +[DzAPI_Map_GetStoredIntegerEX] +title = "获取服务器存储的整数(区分大小写) [NEW]" +description = "获取服务器存储的整数(区分大小写) 玩家 ${player} 名称 ${key}" +comment = "这是经过封装的接口,实际Key会在原Key前面加”I”,用于作者之家设置的防刷分存档,与普通存档共用KEY" +category = TC_DZAPI +returns = integer +[[.args]] +type = player +[[.args]] +type = string + +[DzAPI_Map_GetStoredStringEX] +title = "获取服务器存储的字符串(区分大小写) [NEW]" +description = "获取服务器存储的字符串(区分大小写) 玩家 ${player} 名称 ${key}" +comment = "这是经过封装的接口,实际Key会在原Key前面加”S”,用于作者之家设置的防刷分存档,与普通存档共用KEY" +category = TC_DZAPI +returns = string +[[.args]] +type = player +[[.args]] +type = string + +[DzAPI_Map_IsPlatformVIP] +title = "玩家是否平台荣耀会员" +description = "玩家 ${player} 是平台荣耀会员" +comment = "判断玩家是否平台的荣耀会员。" +category = TC_DZAPI +returns = boolean +[[.args]] +type = player +default = GetTriggerPlayer + +[DzAPI_Map_IsRPGQuickMatch] +title = "本局游戏是否快速匹配" +description = "判断玩家是否是通过匹配模式进入游戏" +comment = "本局游戏是否通过RPG快速匹配启动,如果地图配置了多个匹配模式,可通过[获取本局游戏的地图模式]接口获取具体选定的是哪一个匹配模式。" +category = TC_DZAPI +returns = boolean + +[DzAPI_Map_GetMallItemCount] +title = "玩家平台道具剩余数量" +description = "获取 玩家 ${player} KEY ${key} 的商品剩余库存次数" +comment = "获取玩家背包中指定道具的剩余数量。仅对次数消耗型商品有效" +category = TC_DZAPI +returns = integer +[[.args]] +type = player +[[.args]] +type = string + +[DzAPI_Map_IsBuyReforged] +title = "玩家是否购买魔兽争霸3重制版" +description = "玩家 ${player} 购买了重制版" +comment = "判断指定玩家是否购买了重制版。" +category = TC_DZAPI +returns = boolean +[[.args]] +type = player +default = GetTriggerPlayer diff --git a/share/mpq/dzapi2/define.txt b/share/mpq/dzapi2/define.txt new file mode 100644 index 0000000..540dda7 --- /dev/null +++ b/share/mpq/dzapi2/define.txt @@ -0,0 +1,38 @@ +[TriggerTypes] +platformFunction=1,0,0,平台功能,integer +optionEnable=1,0,0,状态,boolean +ReturnUser=0,0,0,回流用户类型 +ContinuousCountType=0,0,0,持续游戏类型 +ForumData=0,0,0,论坛数据类型,integer +winorfail=0,0,0,胜/败 + +[TriggerParams] +platformFunction_1=0,platformFunction,1,锁定视距 +platformFunction_2=0,platformFunction,2,显血/显蓝 +platformFunction_3=0,platformFunction,3,智能施法 + +optionEnable_Enable=0,optionEnable,true,开启 +optionEnable_Disable=0,optionEnable,false,关闭 + +ReturnUser2=0,ReturnUser,2,当前是平台回流用户 +ReturnUser4=0,ReturnUser,8,当前是地图回流用户 +ReturnUser3=0,ReturnUser,4,曾经是地图回流用户 +ReturnUser1=0,ReturnUser,1,曾经是平台回流用户 +ReturnUser5=0,ReturnUser,16,收藏过地图 + +ContinuousCountType0=0,ContinuousCountType,0,总签到天数 +ContinuousCountType1=0,ContinuousCountType,1,最高连续签到天数 +ContinuousCountType2=0,ContinuousCountType,2,连续签到天数 + +ForumData4=0,ForumData,4,是否发过贴子 +ForumData5=0,ForumData,5,是否版主 +ForumData6=0,ForumData,6,主题数量 +ForumData2=0,ForumData,2,发表回复次数 +ForumData3=0,ForumData,3,收到的欢乐数 +ForumData1=0,ForumData,1,精华帖数量 +ForumData0=0,ForumData,0,累计获得赞数 + + +[TriggerParams] +GameResult0=0,winorfail,0,WESTRING_FAILUREOPTION_FAILED +GameResult1=0,winorfail,1,WESTRING_PEVENT_VICTORY \ No newline at end of file diff --git a/share/mpq/dzapi2/event.txt b/share/mpq/dzapi2/event.txt new file mode 100644 index 0000000..c79c153 --- /dev/null +++ b/share/mpq/dzapi2/event.txt @@ -0,0 +1,6 @@ + +[DzAPI_Map_Global_ChangeMsg] +title = "全局存档变化事件" +description = "全局存档发生变化" +comment = "本局游戏或其他游戏保存的全局存档都会触发这个事件,请使用[同步]分类下的获取同步数据来获得发生变化的全局存档KEY值" +category = TC_DZAPI diff --git a/share/mpq/japi/action.txt b/share/mpq/japi/action.txt new file mode 100644 index 0000000..34062b5 --- /dev/null +++ b/share/mpq/japi/action.txt @@ -0,0 +1,361 @@ +[YDWESetUnitAbilityState] +title = "设置技能属性 [JAPI]" +description = "设置 ${单位} 的 ${技能} 的 ${状态} 为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = AbilityState +default = "ABILITY_STATE_COOLDOWN" +[[.args]] +type = real + +[YDWESetUnitAbilityDataInteger] +title = "设置技能数据 (整数) [JAPI]" +description = "设置 ${单位} 的 ${技能} 第 ${等级} 级的 ${数据} 为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataInteger +default = "ABILITY_DATA_COST" +[[.args]] +type = integer + +[YDWESetUnitAbilityDataReal] +title = "设置技能数据 (实数) [JAPI]" +description = "设置 ${单位} 的 ${技能} 第 ${等级} 级的 ${数据} 为 ${Value}" +comment = "数据A~数据I也就是物体编辑器里按Ctrl+D后看到的DataA~DataI" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataReal +default = "ABILITY_DATA_COOL" +[[.args]] +type = real + +[YDWESetUnitAbilityDataString] +title = "设置技能数据 (字符串) [JAPI]" +description = "设置 ${单位} 的 ${技能} 第 ${等级} 级的 ${数据} 为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataString +default = "ABILITY_DATA_TIP" +[[.args]] +type = string + +[YDWEUnitTransform] +title = "单位变身 [JAPI]" +description = "${单位} ${技能}为 ${目标单位}" +comment = "技能请填恶魔猎手的变身或其复制品" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +default = "AEme" +[[.args]] +type = unitcode +default = "hfoo" + +[YDWEUnitAddStun] +title = "单位添加晕眩 [JAPI]" +description = "${单位} 添加晕眩" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWEUnitRemoveStun] +title = "单位移除晕眩 [JAPI]" +description = "${单位} 移除晕眩" +comment = "别用来移风暴之锤之类的晕眩。因为它只会移除晕眩并不会移除晕眩的buff。" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWESetEventDamage] +title = "设置伤害值 [JAPI]" +description = "设置单位所受伤害为 ${伤害值}" +comment = "修改伤害事件里的伤害值,不能在等待之后使用。" +category = TC_UNIT +[[.args]] +type = real +default = "0." + +[YDWEDisplayChat] +title = "模拟玩家聊天 [JAPI]" +description = "模拟 ${Player} 在 ${频道} 发言: ${文字}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = ChatRecipient +default = "CHAT_RECIPIENT_ALL" +[[.args]] +type = StringExt + +[YDWESetItemDataString] +title = "设置物品数据 (字符串) [JAPI]" +description = "设置 ${物品} 的 ${数据} 为 ${Value}" +comment = "" +category = TC_ITEM +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = ItemDataString +default = "ITEM_DATA_TIP" +[[.args]] +type = string + +[YDWESetEffectLoc] +title = "移动到点 [JAPI] [New!]" +description = "移动 ${特效} 到${点}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = location + +[EXSetEffectXY] +title = "移动到坐标 [JAPI] [New!]" +description = "移动 ${特效} 到( ${X}, ${Y} )" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[EXSetEffectZ] +title = "设置高度 [JAPI] [New!]" +description = "设置 ${特效} 的高度为 ${高度}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = real +default = "0" + +[EXSetEffectSize] +title = "设置大小 [JAPI] [New!]" +description = "设置 ${特效} 的大小为 ${大小}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = real +default = "1" + +[EXSetEffectSpeed] +title = "设置动画速度 [JAPI] [New!]" +description = "设置 ${特效} 的动画速度为 ${动画速度}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = real +default = "1" + +[EXEffectMatReset] +title = "重置变换 [JAPI] [New!]" +description = "重置 ${特效}" +comment = "清空所有的旋转和缩放,重置为初始状态。" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + +[EXEffectMatRotateX] +title = "绕X轴旋转 [JAPI] [New!]" +description = "${特效} 绕X轴旋转 ${度} 度" +comment = "多次调用,效果会叠加,不想叠加需要先重置为初始状态。" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = degree +default = "0" + +[EXEffectMatRotateY] +title = "绕Y轴旋转 [JAPI] [New!]" +description = "${特效} 绕Y轴旋转 ${度} 度" +comment = "多次调用,效果会叠加,不想叠加需要先重置为初始状态。" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = degree +default = "0" + +[EXEffectMatRotateZ] +title = "绕Z轴旋转 [JAPI] [New!]" +description = "${特效} 绕Z轴旋转 ${度} 度" +comment = "多次调用,效果会叠加,不想叠加需要先重置为初始状态。" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = degree +default = "0" + +[EXEffectMatScale] +title = "缩放 [JAPI] [New!]" +description = "设置 ${特效} 的X轴缩放[ ${缩放} ],Y轴缩放[ ${缩放} ],Z轴缩放[ ${缩放} ]。" +comment = "多次调用,效果会叠加,不想叠加需要先重置为初始状态。设置为2,2,2时相当于大小变为2倍。设置为负数时,就是镜像翻转。" +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "bj_lastCreatedEffect" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "1" + +[EXSetUnitFacing] +title = "设置单位面向角度 [JAPI] [New!]" +description = "设置 ${单位} 的面向角度为 ${Angle} 度" +comment = "立即转身" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = degree +default = "RealUnitFacing" + +[EXSetUnitMoveType] +title = "设置单位的移动类型 [JAPI] [New!]" +description = "设置 ${单位} 的移动类型为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = MoveType +default = "MoveType06" + +[EXSetUnitCollisionType] +title = "设置单位的碰撞类型 [JAPI] [New!]" +description = "${启用/禁用} ${单位} 对 ${碰撞} 的碰撞" +comment = "" +category = TC_UNIT +[[.args]] +type = onoffoption +default = "OnOffOff" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = CollisionType +default = "CollisionType01" + +[DzSetUnitAttackType] +title = "设置攻击类型[API]" +description = "设置 ${单位} ${~index} 的攻击类型为 ${attackType} " +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = Dmgplus +default = "Dmgplus1" +[[.args]] +type = attacktype +default = "AttackTypeNormal" + + +[DzSetUnitDefenseType] +title = "设置护甲类型[API]" +description = "设置 ${单位} 的护甲类型为 ${defenseType} " +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = defensetype +default = "DefenseTypeNormal" + +[DzSetUnitTypeName] +title = "设置单位名[API][new]" +description = "设置 ${单位} 的名字: ${name} " +comment = "" +category = TC_UNIT +[[.args]] +type = unitcode +default = "Hamg" +[[.args]] +type = string +default = "" + +[DzSetHeroTypeProperName] +title = "设置英雄称谓名[API][new]" +description = "设置 ${英雄} 的称谓名: ${name} " +comment = "" +category = TC_HERO +[[.args]] +type = unitcode +default = "Hamg" +[[.args]] +type = string +default = "" + diff --git a/share/mpq/japi/call.txt b/share/mpq/japi/call.txt new file mode 100644 index 0000000..120d105 --- /dev/null +++ b/share/mpq/japi/call.txt @@ -0,0 +1,267 @@ +[YDWEIsEventPhysicalDamage] +title = "是物理伤害 [JAPI]" +description = "单位所受伤害是物理伤害" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean + +[YDWEIsEventAttackDamage] +title = "是攻击伤害 [JAPI]" +description = "单位所受伤害是攻击伤害" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean + +[YDWEIsEventRangedDamage] +title = "是远程伤害 [JAPI]" +description = "单位所受伤害是远程伤害" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean + +[YDWEIsEventDamageType] +title = "伤害类型 [JAPI]" +description = "单位所受伤害的伤害类型是 ${伤害类型}" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean +[[.args]] +type = damagetype +default = "DamageTypeNormal" + +[YDWEIsEventWeaponType] +title = "武器类型 [JAPI]" +description = "单位所受伤害的武器类型是 ${武器类型}" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" + +[YDWEIsEventAttackType] +title = "攻击类型 [JAPI]" +description = "单位所受伤害的攻击类型是 ${攻击类型}" +comment = "响应'受到伤害'单位事件,不能用在等待之后" +category = TC_EVENTRESPONSE +returns = boolean +[[.args]] +type = attacktype +default = "AttackTypeNormal" + +[YDWEGetObjectPropertyInteger] +title = "物体属性 (整数) [JAPI]" +description = "[${类型}]${物体} 的 ${属性名}" +comment = "属性名也就是物体编辑器里按Ctrl+D后看到的英文名" +category = TC_UNIT +use_in_event = 0 +returns = integer +[[.args]] +type = objecttype +default = "objecttype00_abilcode" +[[.args]] +type = Null +default = "AHhb" +[[.args]] +type = string +default = "\"levels\"" + +[YDWEGetObjectPropertyReal] +title = "物体属性 (实数) [JAPI]" +description = "[${类型}]${物体} 的 ${属性名}" +comment = "属性名也就是物体编辑器里按Ctrl+D后看到的英文名" +category = TC_UNIT +use_in_event = 0 +returns = real +[[.args]] +type = objecttype +default = "objecttype00_abilcode" +[[.args]] +type = Null +default = "AHhb" +[[.args]] +type = string +default = "\"Rng1\"" + +[YDWEGetObjectPropertyString] +title = "物体属性 (字符串) [JAPI]" +description = "[${类型}]${物体} 的 ${属性名}" +comment = "属性名也就是物体编辑器里按Ctrl+D后看到的英文名" +category = TC_UNIT +use_in_event = 0 +returns = string +[[.args]] +type = objecttype +default = "objecttype00_abilcode" +[[.args]] +type = Null +default = "AHhb" +[[.args]] +type = string +default = "\"Name\"" + +[YDWEGetUnitAbilityState] +title = "技能属性 [JAPI]" +description = "${单位} 的 ${技能} 的 ${状态}" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = AbilityState +default = "ABILITY_STATE_COOLDOWN" + +[YDWEGetUnitAbilityDataInteger] +title = "技能数据 (整数) [JAPI]" +description = "${单位} 的 ${技能} 第 ${等级} 级的 ${数据}" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataInteger +default = "ABILITY_DATA_COST" + +[YDWEGetUnitAbilityDataReal] +title = "技能数据 (实数) [JAPI]" +description = "${单位} 的 ${技能} 第 ${等级} 级的 ${数据}" +comment = "数据A~数据I也就是物体编辑器里按Ctrl+D后看到的DataA~DataI" +category = TC_UNIT +use_in_event = 0 +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataReal +default = "ABILITY_DATA_COOL" + +[YDWEGetUnitAbilityDataString] +title = "技能数据 (字符串) [JAPI]" +description = "${单位} 的 ${技能} 第 ${等级} 级的 ${数据}" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = string +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = AbilityDataString +default = "ABILITY_DATA_TIP" + +[YDWEGetItemDataString] +title = "物品数据 (字符串) [JAPI]" +description = "${物品} 的 ${数据}" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = string +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = ItemDataString +default = "ITEM_DATA_TIP" + +[EXGetEffectX] +title = "X轴坐标 [JAPI] [New!]" +description = "${特效} 的X轴坐标" +comment = "" +category = TC_SPECIALEFFECT +use_in_event = 0 +returns = real +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + +[EXGetEffectY] +title = "Y轴坐标 [JAPI] [New!]" +description = "${特效} 的Y轴坐标" +comment = "" +category = TC_SPECIALEFFECT +use_in_event = 0 +returns = real +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + +[EXGetEffectZ] +title = "高度 [JAPI] [New!]" +description = "${特效} 的高度" +comment = "" +category = TC_SPECIALEFFECT +use_in_event = 0 +returns = real +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + +[EXGetEffectSize] +title = "大小 [JAPI] [New!]" +description = "${特效} 的大小" +comment = "" +category = TC_SPECIALEFFECT +use_in_event = 0 +returns = real +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + + +[DzIsUnitAttackType] +title = "攻击类型[JAPI]" +description = "[${whichUnit}] ${index} 的攻击类型为 ${attackType}" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = Dmgplus +default = "Dmgplus1" +[[.args]] +type = attacktype +default = "AttackTypePierce" + +[DzIsUnitDefenseType] +title = "护甲类型[JAPI]" +description = "[${whichUnit}] 的护甲类型为 ${defenseType}" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = defensetype +default = "DefenseTypeNormal" \ No newline at end of file diff --git a/share/mpq/japi/define.txt b/share/mpq/japi/define.txt new file mode 100644 index 0000000..8014ae4 --- /dev/null +++ b/share/mpq/japi/define.txt @@ -0,0 +1,53 @@ + +[TriggerTypes] +MoveType=0,0,0,移动类型,integer +CollisionType=0,0,0,碰撞类型,integer +defensetype=1,0,1,WESTRING_COD_TYPE_DEFENSETYPEINT,integer +Dmgplus=0,0,0,攻击索引 + +[TriggerParams] +UnitStateDamageDice=0,unitstate,ConvertUnitState(0x10),"骰子数量 [JAPI]" +UnitStateDamageSide=0,unitstate,ConvertUnitState(0x11),"骰子面数 [JAPI]" +UnitStateDamageBase=0,unitstate,ConvertUnitState(0x12),"基础伤害 [JAPI]" +UnitStateDamageBonus=0,unitstate,ConvertUnitState(0x13),"附加伤害 [JAPI]" +UnitStateDamageMix=0,unitstate,ConvertUnitState(0x14),"攻击最小值 [JAPI]" +UnitStateDamageMax=0,unitstate,ConvertUnitState(0x15),"攻击最大值 [JAPI]" +UnitStateDamageRange=0,unitstate,ConvertUnitState(0x16),"攻击范围 [JAPI]" +UnitStateDamageCool=0,unitstate,ConvertUnitState(0x25),"攻击间隔 [JAPI]" +UnitStateAttackSpeed=0,unitstate,ConvertUnitState(0x51),"攻击速度 [JAPI]" +UnitStateArmor=0,unitstate,ConvertUnitState(0x20),"护甲 [JAPI]" +UnitStateDamageDiceSec=0,unitstatesec,ConvertUnitState(0x10),"骰子数量 [JAPI]" +UnitStateDamageSideSec=0,unitstatesec,ConvertUnitState(0x11),"骰子面数 [JAPI]" +UnitStateDamageBaseSec=0,unitstatesec,ConvertUnitState(0x12),"基础伤害 [JAPI]" +UnitStateDamageBonusSec=0,unitstatesec,ConvertUnitState(0x13),"附加伤害 [JAPI]" +UnitStateDamageRangeSec=0,unitstatesec,ConvertUnitState(0x16),"攻击范围 [JAPI]" +UnitStateDamageCoolSec=0,unitstatesec,ConvertUnitState(0x25),"攻击间隔 [JAPI]" +UnitStateAttackSpeedSec=0,unitstatesec,ConvertUnitState(0x51),"攻击速度 [JAPI]" +UnitStateArmorSec=0,unitstatesec,ConvertUnitState(0x20),"护甲 [JAPI]" +UnitStateMaxLifeSec=0,unitstatesec,UNIT_STATE_MAX_LIFE,"最大生命值 [JAPI]" +UnitStateMaxManaSec=0,unitstatesec,UNIT_STATE_MAX_MANA,"最大魔法值 [JAPI]" + +MoveType01=0,MoveType,0x00,"没有" +MoveType02=0,MoveType,0x01,"无法移动" +MoveType03=0,MoveType,0x02,WESTRING_UE_MOVETYPE_FOOT +MoveType04=0,MoveType,0x04,WESTRING_UE_MOVETYPE_FLY +MoveType05=0,MoveType,0x08,"地雷" +MoveType06=0,MoveType,0x10,"疾风步" +MoveType07=0,MoveType,0x20,"未知" +MoveType08=0,MoveType,0x40,WESTRING_UE_MOVETYPE_FLOAT +MoveType09=0,MoveType,0x80,WESTRING_UE_MOVETYPE_AMPH + +CollisionType01=0,CollisionType,1,"单位" +CollisionType03=0,CollisionType,3,"建筑" + +Dmgplus1=0,Dmgplus,1,WESTRING_AE_ATTACKBITS_ONE +Dmgplus2=0,Dmgplus,2,WESTRING_AE_ATTACKBITS_TWO + +DefenseTypeSmall=1,defensetype,DEFENSE_TYPE_SMALL,WESTRING_UE_DEFENSETYPE_SMALL +DefenseTypeMedium=1,defensetype,DEFENSE_TYPE_MEDIUM,WESTRING_UE_DEFENSETYPE_MEDIUM +DefenseTypeLarge=1,defensetype,DEFENSE_TYPE_LARGE,WESTRING_UE_DEFENSETYPE_LARGE +DefenseTypeFort=1,defensetype,DEFENSE_TYPE_FORT,WESTRING_UE_DEFENSETYPE_FORT +DefenseTypeNormal=1,defensetype,DEFENSE_TYPE_NORMAL,WESTRING_UE_DEFENSETYPE_NORMAL +DefenseTypeHero=1,defensetype,DEFENSE_TYPE_HERO,WESTRING_UE_DEFENSETYPE_HERO +DefenseTypeDivine=1,defensetype,DEFENSE_TYPE_DIVINE,WESTRING_UE_DEFENSETYPE_DIVINE +DefenseTypeNone=1,defensetype,DEFENSE_TYPE_NONE,WESTRING_UE_DEFENSETYPE_NONE \ No newline at end of file diff --git a/share/mpq/units/doodads/doodadmetadata.slk b/share/mpq/units/doodads/doodadmetadata.slk new file mode 100644 index 0000000..4915b50 --- /dev/null +++ b/share/mpq/units/doodads/doodadmetadata.slk @@ -0,0 +1,571 @@ +ID;PWXL;N;E +B;X19;Y36;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"repeat" +C;X6;K"category" +C;X7;K"displayName" +C;X8;K"sort" +C;X9;K"type" +C;X10;K"changeFlags" +C;X11;K"importType" +C;X12;K"stringExt" +C;X13;K"caseSens" +C;X14;K"canBeEmpty" +C;X15;K"minVal" +C;X16;K"maxVal" +C;X17;K"forceNonNeg" +C;X18;K"version" +C;X19;K"section" +C;X1;Y2;K"dnam" +C;X2;K"Name" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"text" +C;X7;K"WESTRING_DEVAL_DNAM" +C;X8;K"a1a00" +C;X9;K"string" +C;X10;K"t" +C;X12;K1 +C;X13;K1 +C;X14;K0 +C;X16;K"TTName" +C;X17;K0 +C;X18;K1 +C;X1;Y3;K"dcat" +C;X2;K"category" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DCAT" +C;X8;K"a2a00" +C;X9;K"doodadCategory" +C;X10;K"c" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y4;K"dtil" +C;X2;K"tilesets" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DTIL" +C;X8;K"a3a00" +C;X9;K"tilesetList" +C;X10;K"c" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X16;K"TTDesc" +C;X17;K0 +C;X18;K1 +C;X1;Y5;K"dtsp" +C;X2;K"tilesetSpecific" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DTSP" +C;X8;K"a4a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y6;K"dfil" +C;X2;K"file" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DFIL" +C;X8;K"a6a00" +C;X9;K"model" +C;X10;K"m" +C;X11;K"Model" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X16;K"TTDesc" +C;X17;K0 +C;X18;K1 +C;X1;Y7;K"dsnd" +C;X2;K"soundLoop" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"sound" +C;X7;K"WESTRING_DEVAL_DSND" +C;X8;K"a8a00" +C;X9;K"soundLabel" +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X16;K"TTDesc" +C;X17;K0 +C;X18;K1 +C;X1;Y8;K"dsel" +C;X2;K"selSize" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DSEL" +C;X8;K"a9a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K99999 +C;X17;K1 +C;X18;K1 +C;X1;Y9;K"ddes" +C;X2;K"defScale" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DDES" +C;X8;K"b1a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0.01 +C;X16;K100 +C;X17;K1 +C;X18;K1 +C;X1;Y10;K"dmis" +C;X2;K"minScale" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DMIS" +C;X8;K"b2a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0.01 +C;X16;K100 +C;X17;K1 +C;X18;K1 +C;X1;Y11;K"dmas" +C;X2;K"maxScale" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DMAS" +C;X8;K"b3a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0.01 +C;X16;K100 +C;X17;K1 +C;X18;K1 +C;X1;Y12;K"dcpr" +C;X2;K"canPlaceRandScale" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DCPR" +C;X8;K"b4a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y13;K"duch" +C;X2;K"useClickHelper" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DUCH" +C;X8;K"b5a00" +C;X9;K"bool" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y14;K"dimc" +C;X2;K"ignoreModelClick" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DIMC" +C;X8;K"b5a01" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y15;K"dmap" +C;X2;K"maxPitch" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DMAP" +C;X8;K"b6a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K99999 +C;X17;K1 +C;X18;K1 +C;X1;Y16;K"dmar" +C;X2;K"maxRoll" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DMAR" +C;X8;K"b7a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K99999 +C;X17;K1 +C;X18;K1 +C;X1;Y17;K"dvis" +C;X2;K"visRadius" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DVIS" +C;X8;K"b8a00" +C;X9;K"unreal" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K99999 +C;X17;K1 +C;X18;K1 +C;X1;Y18;K"dwlk" +C;X2;K"walkable" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"path" +C;X7;K"WESTRING_DEVAL_DWLK" +C;X8;K"b9a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y19;K"dvar" +C;X2;K"numVar" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DVAR" +C;X8;K"u1a00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K10 +C;X17;K0 +C;X18;K1 +C;X1;Y20;K"donc" +C;X2;K"onCliffs" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DONC" +C;X8;K"c2a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y21;K"donw" +C;X2;K"onWater" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DONW" +C;X8;K"c3a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y22;K"dflt" +C;X2;K"floats" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DFLT" +C;X8;K"c4a00" +C;X9;K"bool" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y23;K"dshd" +C;X2;K"shadow" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DSHD" +C;X8;K"c5a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y24;K"dshf" +C;X2;K"showInFog" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DSHF" +C;X8;K"c6a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y25;K"danf" +C;X2;K"animInFog" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DANF" +C;X8;K"c7a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y26;K"dfxr" +C;X2;K"fixedRot" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DFXR" +C;X8;K"c8a00" +C;X9;K"unreal" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K-1 +C;X16;K360 +C;X17;K0 +C;X18;K1 +C;X1;Y27;K"dptx" +C;X2;K"pathTex" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"path" +C;X7;K"WESTRING_DEVAL_DPTX" +C;X8;K"c9a00" +C;X9;K"pathingTexture" +C;X10;K"m" +C;X11;K"Image" +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X17;K0 +C;X18;K1 +C;X1;Y28;K"dsmm" +C;X2;K"showInMM" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DSMM" +C;X8;K"d1a00" +C;X9;K"bool" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y29;K"dumc" +C;X2;K"useMMColor" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DUMC" +C;X8;K"d2a00" +C;X9;K"bool" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +C;X1;Y30;K"dmmr" +C;X2;K"MMRed" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DMMR" +C;X8;K"d3a00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y31;K"dmmg" +C;X2;K"MMGreen" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DMMG" +C;X8;K"d4a00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y32;K"dmmb" +C;X2;K"MMBlue" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DMMB" +C;X8;K"d5a00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y33;K"dvr1" +C;X2;K"vertR" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K10 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DVR1" +C;X8;K"v1a00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y34;K"dvg1" +C;X2;K"vertG" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K10 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DVG1" +C;X8;K"v1b00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y35;K"dvb1" +C;X2;K"vertB" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K10 +C;X6;K"art" +C;X7;K"WESTRING_DEVAL_DVB1" +C;X8;K"v1c00" +C;X9;K"int" +C;X10;K"m" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K255 +C;X17;K0 +C;X18;K1 +C;X1;Y36;K"dusr" +C;X2;K"UserList" +C;X3;K"DoodadData" +C;X4;K0 +C;X5;K0 +C;X6;K"editor" +C;X7;K"WESTRING_DEVAL_DUSR" +C;X8;K"b000" +C;X9;K"bool" +C;X10;K"c" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X17;K0 +C;X18;K1 +E diff --git a/share/mpq/units/doodads/doodads.slk b/share/mpq/units/doodads/doodads.slk new file mode 100644 index 0000000..d486ba5 --- /dev/null +++ b/share/mpq/units/doodads/doodads.slk @@ -0,0 +1,31023 @@ +ID;PWXL;N;E +B;X67;Y470;D0 +C;X1;Y1;K"doodID" +C;X2;K"category" +C;X3;K"tilesets" +C;X4;K"tilesetSpecific" +C;X5;K"file" +C;X6;K"comment" +C;X7;K"Name" +C;X8;K"doodClass" +C;X9;K"soundLoop" +C;X10;K"selSize" +C;X11;K"defScale" +C;X12;K"minScale" +C;X13;K"maxScale" +C;X14;K"canPlaceRandScale" +C;X15;K"useClickHelper" +C;X16;K"ignoreModelClick" +C;X17;K"maxPitch" +C;X18;K"maxRoll" +C;X19;K"visRadius" +C;X20;K"walkable" +C;X21;K"numVar" +C;X22;K"onCliffs" +C;X23;K"onWater" +C;X24;K"floats" +C;X25;K"shadow" +C;X26;K"showInFog" +C;X27;K"animInFog" +C;X28;K"fixedRot" +C;X29;K"pathTex" +C;X30;K"showInMM" +C;X31;K"useMMColor" +C;X32;K"MMRed" +C;X33;K"MMGreen" +C;X34;K"MMBlue" +C;X35;K"vertR01" +C;X36;K"vertG01" +C;X37;K"vertB01" +C;X38;K"vertR02" +C;X39;K"vertG02" +C;X40;K"vertB02" +C;X41;K"vertR03" +C;X42;K"vertG03" +C;X43;K"vertB03" +C;X44;K"vertR04" +C;X45;K"vertG04" +C;X46;K"vertB04" +C;X47;K"vertR05" +C;X48;K"vertG05" +C;X49;K"vertB05" +C;X50;K"vertR06" +C;X51;K"vertG06" +C;X52;K"vertB06" +C;X53;K"vertR07" +C;X54;K"vertG07" +C;X55;K"vertB07" +C;X56;K"vertR08" +C;X57;K"vertG08" +C;X58;K"vertB08" +C;X59;K"vertR09" +C;X60;K"vertG09" +C;X61;K"vertB09" +C;X62;K"vertR10" +C;X63;K"vertG10" +C;X64;K"vertB10" +C;X65;K"UserList" +C;X66;K"InBeta" +C;X67;K"version" +C;X1;Y2;K"APms" +C;X2;K"E" +C;X3;K"A,G" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenShrooms\AshenShrooms" +C;X6;K"Mushrooms" +C;X7;K"WESTRING_DOOD_APMS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y3;K"AOhs" +C;X2;K"E" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\AshenHollowStump\AshenHollowStump" +C;X6;K"Hollow Stump" +C;X7;K"WESTRING_DOOD_APHS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y4;K"APtv" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Plants\Felwood_Thorns\Felwood_Thorns" +C;X6;K"Thorny Vines" +C;X7;K"WESTRING_DOOD_APTV" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K7 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y5;K"APct" +C;X2;K"E" +C;X3;K"A,L,F,W,Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCatTail\AshenCatTail" +C;X6;K"Cattail" +C;X7;K"WESTRING_DOOD_APCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y6;K"AObd" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\Bird\Bird" +C;X6;K"Birds" +C;X7;K"WESTRING_DOOD_AOBD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y7;K"AObr" +C;X2;K"O" +C;X3;K"C,D,G" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\Brazier\Brazier" +C;X6;K"Skull Brazier" +C;X7;K"WESTRING_DOOD_AOBR" +C;X8;K"_" +C;X9;K"AshenvaleBrazierLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y8;K"AWfs" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Water\Fish\Fish" +C;X6;K"Fish" +C;X7;K"WESTRING_DOOD_AOFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y9;K"AOgs" +C;X2;K"O" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\SentinelStatue\SentinelStatue" +C;X6;K"Guardian Statue of Aszune" +C;X7;K"WESTRING_DOOD_AOGS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Cross.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y10;K"AOks" +C;X2;K"O" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\KeeperStatue\KeeperStatue" +C;X6;K"Keeper Statue" +C;X7;K"WESTRING_DOOD_AOKS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y11;K"AOlg" +C;X2;K"E" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\AshenLogStraight\AshenLogStraight" +C;X6;K"Straight Log" +C;X7;K"WESTRING_DOOD_AOLG" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y12;K"AOla" +C;X2;K"E" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\AshenLogAngled\AshenLogAngled" +C;X6;K"Angled Log" +C;X7;K"WESTRING_DOOD_AOLA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Log45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y13;K"AOob" +C;X2;K"O" +C;X3;K"C,O,K" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\Obelisk\Obelisk" +C;X6;K"Glowing Obelisk" +C;X7;K"WESTRING_DOOD_AOGO" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y14;K"AOsk" +C;X2;K"O" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\AshenObilisk\AshenObilisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y15;K"AObo" +C;X2;K"O" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\AshenBrokenObilisk\AshenBrokenObilisk" +C;X6;K"Broken Obelisk" +C;X7;K"WESTRING_DOOD_NOBK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y16;K"AOsr" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\ScorchedRemains\ScorchedRemains" +C;X6;K"Scorched Remains" +C;X7;K"WESTRING_DOOD_AOSR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y17;K"APbs" +C;X2;K"E" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenBush0\AshenBush0" +C;X6;K"Bush" +C;X7;K"WESTRING_DOOD_APBS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y18;K"AWlp" +C;X2;K"W" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Water\AshenLillyPad\AshenLillyPad" +C;X6;K"Lily Pads" +C;X7;K"WESTRING_DOOD_APLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y19;K"AWfl" +C;X2;K"W" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Water\AshenvaleLilyPad\AshenvaleLilyPad" +C;X6;K"Floating Lily Pads" +C;X7;K"WESTRING_DOOD_LPFP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y20;K"ARrk" +C;X2;K"E" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Rocks\AshenRock\AshenRock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y21;K"ASbc" +C;X2;K"S" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\AshenBrokenColumn\AshenBrokenColumn" +C;X6;K"Broken Column" +C;X7;K"WESTRING_DOOD_ASBC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y22;K"ASbr" +C;X2;K"S" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\AshenRubble\AshenRubble" +C;X6;K"Black Ruined Rubble" +C;X7;K"WESTRING_DOOD_ASBR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y23;K"ASbl" +C;X2;K"S" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\AshenRuinsBlocks\AshenRuinsBlocks" +C;X6;K"Ruined Blocks" +C;X7;K"WESTRING_DOOD_ASBL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y24;K"ASra" +C;X2;K"S" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\ARockArch\ARockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_ASRA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y25;K"ASr1" +C;X2;K"S" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\ARockArch45\ARockArch45" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_ASR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y26;K"ASwt" +C;X2;K"Z" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\Worldtree\Worldtree" +C;X6;K"World Tree" +C;X7;K"WESTRING_DOOD_ASWT" +C;X8;K"_" +C;X9;K"_" +C;X10;K1024 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\24x24Unflyable.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y27;K"BPca" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Plants\Cactus\Cactus" +C;X6;K"Cactus" +C;X7;K"WESTRING_DOOD_BPCA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y28;K"BObo" +C;X2;K"O" +C;X3;K"B,O,K" +C;X4;K0 +C;X5;K"Doodads\Barrens\Props\Barrens_Bones\Barrens_Bones" +C;X6;K"Bones" +C;X7;K"WESTRING_DOOD_BOBO" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Unbuildable.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y29;K"BOct" +C;X2;K"O" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Props\CentaurTotem\CentaurTotem" +C;X6;K"Totem" +C;X7;K"WESTRING_DOOD_BOCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y30;K"BOth" +C;X2;K"O" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Props\HellscreamThrone\HellscreamThrone" +C;X6;K"Throne" +C;X7;K"WESTRING_DOOD_YOTH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y31;K"BOtt" +C;X2;K"O" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Props\TaurenTotem\TaurenTotem" +C;X6;K"Totem" +C;X7;K"WESTRING_DOOD_BOTT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y32;K"BRcr" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\Crator\Crator" +C;X6;K"Crater" +C;X7;K"WESTRING_DOOD_BRCR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x12Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y33;K"BRfs" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\BarrensFissure\BarrensFissure" +C;X6;K"Fissure" +C;X7;K"WESTRING_DOOD_BRFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y34;K"BRrk" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\Barrens_Rocks\Barrens_Rocks" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y35;K"BRrp" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\RockPillar\RockPillar" +C;X6;K"Pillar of Rock" +C;X7;K"WESTRING_DOOD_BRRP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y36;K"BRrs" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\Barrens_Spires\Barrens_Spires" +C;X6;K"Rock Spires" +C;X7;K"WESTRING_DOOD_BRRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\LargeRockSpire.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y37;K"BRsp" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\Barrens_Spires\Barrens_Spires" +C;X6;K"Small Rock Spires" +C;X7;K"WESTRING_DOOD_BRSP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.36 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K0 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y38;K"BRgs" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Rocks\Geyser\Geyser" +C;X6;K"Geyser" +C;X7;K"WESTRING_DOOD_BRGS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y39;K"BSar" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\RuinedArch\RuinedArch" +C;X6;K"Ruined Arch" +C;X7;K"WESTRING_DOOD_BSAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y40;K"BSra" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\BRockArch\BRockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_BSRA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y41;K"BSr1" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\BRockArch45\BRockArch45" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_BSR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y42;K"BSrc" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\RuinedChunk\RuinedChunk" +C;X6;K"Ruined Chunk" +C;X7;K"WESTRING_DOOD_BSRC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y43;K"BSrv" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\RuinedCurvedWall\RuinedCurvedWall" +C;X6;K"Ruined Curved Wall" +C;X7;K"WESTRING_DOOD_BSRV" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y44;K"BSrw" +C;X2;K"S" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Structures\RuinedWall\RuinedWall" +C;X6;K"Ruined Wall" +C;X7;K"WESTRING_DOOD_BSRW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y45;K"CObl" +C;X2;K"O" +C;X3;K"C" +C;X4;K0 +C;X5;K"Environment\BlightDoodad\BlightDoodad" +C;X6;K"Blighted Mist" +C;X7;K"WESTRING_DOOD_COBL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y46;K"COhs" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\FelwoodHollowStump\FelwoodHollowStump" +C;X6;K"Hollow Stump" +C;X7;K"WESTRING_DOOD_APHS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y47;K"COlg" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\FelwoodLogStraight\FelwoodLogStraight" +C;X6;K"Straight Log" +C;X7;K"WESTRING_DOOD_AOLG" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y48;K"COla" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\FelwoodLogAngled\FelwoodLogAngled" +C;X6;K"Angled Log" +C;X7;K"WESTRING_DOOD_AOLA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y49;K"COob" +C;X2;K"O" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\FelwoodObilisk\FelwoodObilisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y50;K"CObo" +C;X2;K"O" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\FelwoodBrokenObilisk\FelwoodBrokenObilisk" +C;X6;K"Broken Obelisk" +C;X7;K"WESTRING_DOOD_NOBK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y51;K"CPbs" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Plants\FelwoodBush\FelwoodBush" +C;X6;K"Bush" +C;X7;K"WESTRING_DOOD_YPBS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y52;K"CPct" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Plants\FelwoodCatTail\FelwoodCatTail" +C;X6;K"Cattail" +C;X7;K"WESTRING_DOOD_APCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y53;K"CPms" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Plants\FelwoodShrooms\FelwoodShrooms" +C;X6;K"Mushrooms" +C;X7;K"WESTRING_DOOD_APMS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y54;K"CPlp" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Plants\FelwoodLillyPad\FelwoodLillyPad" +C;X6;K"Lily Pad" +C;X7;K"WESTRING_DOOD_LPLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y55;K"CRfs" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Rocks\FelwoodFissure\FelwoodFissure" +C;X6;K"Fissure" +C;X7;K"WESTRING_DOOD_BRFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y56;K"CRrs" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Rocks\Felwood_Spires\Felwood_Spires" +C;X6;K"Rock Spires" +C;X7;K"WESTRING_DOOD_BRRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\LargeRockSpire.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y57;K"CSbc" +C;X2;K"S" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Structures\FelwoodBrokenColumn\FelwoodBrokenColumn" +C;X6;K"Broken Column" +C;X7;K"WESTRING_DOOD_ASBC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y58;K"CSbr" +C;X2;K"S" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Structures\FelwoodRubble\FelwoodRubble" +C;X6;K"Black Ruined Rubble" +C;X7;K"WESTRING_DOOD_ASBR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y59;K"CSbl" +C;X2;K"S" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Structures\FelwoodRuinsBlocks\FelwoodRuinsBlocks" +C;X6;K"Ruined Blocks" +C;X7;K"WESTRING_DOOD_ASBL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y60;K"CSra" +C;X2;K"S" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Structures\CRockArch\CRockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y61;K"CSr1" +C;X2;K"S" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Structures\CRockArch45\CRockArch45" +C;X6;K"Angled Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y62;K"LPcr" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\Corn\Corn" +C;X6;K"Corn" +C;X7;K"WESTRING_DOOD_LPCR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y63;K"LPfp" +C;X2;K"W" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\LilyPad\LilyPad" +C;X6;K"Floating Lily Pads" +C;X7;K"WESTRING_DOOD_LPFP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y64;K"LPlp" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\LillyPad\LillyPad" +C;X6;K"Lilly Pad" +C;X7;K"WESTRING_DOOD_LPLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y65;K"LPrs" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\RiverRushes\RiverRushes" +C;X6;K"River Rushes" +C;X7;K"WESTRING_DOOD_LPRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y66;K"LPwb" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\WheatBunch\WheatBunch" +C;X6;K"Wheat Bunch" +C;X7;K"WESTRING_DOOD_LPWB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y67;K"LPwh" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\Wheat\Wheat" +C;X6;K"Wheat" +C;X7;K"WESTRING_DOOD_LPWH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y68;K"LPcw" +C;X2;K"E" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Plants\CornWheatScorched\CornWheatScorched" +C;X6;K"Scorched Grain" +C;X7;K"WESTRING_DOOD_LPCW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y69;K"LOar" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\ArcheryRange\ArcheryRange" +C;X6;K"Archery Target" +C;X7;K"WESTRING_DOOD_LOAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y70;K"LOam" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\ArmorRack\ArmorRack" +C;X6;K"Armor Rack" +C;X7;K"WESTRING_DOOD_LOAM" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y71;K"LOh1" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\BannerHuman\BannerHuman" +C;X6;K"Human Banner" +C;X7;K"WESTRING_DOOD_LOH1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y72;K"LOo1" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\BannerOrc\BannerOrc" +C;X6;K"Orc Banner" +C;X7;K"WESTRING_DOOD_LOO1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y73;K"LOo2" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\TutorialOrcBanner\TutorialOrcBanner" +C;X6;K"Tutorial Orc Banner" +C;X7;K"WESTRING_DOOD_LOO2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y74;K"LObr" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Brazier\Brazier" +C;X6;K"Brazier" +C;X7;K"WESTRING_DOOD_LOBR" +C;X8;K"_" +C;X9;K"LordSumBrazierLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y75;K"LObz" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\brazieromni\brazieromni" +C;X6;K"Glowing Brazier" +C;X7;K"WESTRING_DOOD_LOBZ" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y76;K"LOce" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\CageEmpty\CageEmpty" +C;X6;K"Empty Cage" +C;X7;K"WESTRING_DOOD_LOCE" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y77;K"LOca" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\CauldronWithHeads\CauldronWithHeads" +C;X6;K"Cauldron with Heads" +C;X7;K"WESTRING_DOOD_LOCA" +C;X8;K"_" +C;X9;K"CauldronLoop" +C;X10;K0 +C;X11;K1.2 +C;X12;K1 +C;X13;K1.4 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y78;K"LOct" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\CageTrashed\CageTrashed" +C;X6;K"Empty Cage" +C;X7;K"WESTRING_DOOD_LOCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y79;K"LOfl" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Flies\Flies" +C;X6;K"Flies" +C;X7;K"WESTRING_DOOD_LOFL" +C;X8;K"_" +C;X9;K"FliesLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y80;K"LOgr" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Grave\Grave" +C;X6;K"Grave" +C;X7;K"WESTRING_DOOD_LOGR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y81;K"LOhb" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Hay\Hay" +C;X6;K"Hay" +C;X7;K"WESTRING_DOOD_LOHB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y82;K"LOch" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\HayCart\HayCart" +C;X6;K"Hay Cart" +C;X7;K"WESTRING_DOOD_LOCH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y83;K"LOcb" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\HayCartbroken\HayCartbroken" +C;X6;K"Broken Hay Cart" +C;X7;K"WESTRING_DOOD_LOCB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y84;K"LOrc" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\RottenHayCart\RottenHayCart" +C;X6;K"Hay Cart Infected" +C;X7;K"WESTRING_DOOD_LORC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y85;K"LOxx" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\RottenHayCartbroken\RottenHayCartbroken" +C;X6;K"Broken Hay Cart Infected" +C;X7;K"WESTRING_DOOD_LOXX" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y86;K"LOhc" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\HayClump\HayClump" +C;X6;K"Hay Clump" +C;X7;K"WESTRING_DOOD_LOHC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y87;K"LOsh" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\HeadOnSpear\HeadOnSpear" +C;X6;K"Head on Spear" +C;X7;K"WESTRING_DOOD_LOSH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y88;K"LOhp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\HitchingPost\HitchingPost" +C;X6;K"Hitching Post" +C;X7;K"WESTRING_DOOD_LOHP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y89;K"LOic" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\ImpaledBody\ImpaledBody" +C;X6;K"Impaled Corpse" +C;X7;K"WESTRING_DOOD_LOIC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y90;K"LOlp" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\LanternPost\LanternPost" +C;X6;K"Lantern Post" +C;X7;K"WESTRING_DOOD_LOLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y91;K"LOpg" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\PeasantGrave\PeasantGrave" +C;X6;K"Peasant Grave" +C;X7;K"WESTRING_DOOD_LOPG" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y92;K"LOrb" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\RibBones\RibBones" +C;X6;K"Rib Bones" +C;X7;K"WESTRING_DOOD_LORB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y93;K"LOrh" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\RottenHay\RottenHay" +C;X6;K"Hay (Infected)" +C;X7;K"WESTRING_DOOD_LORH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y94;K"LOsp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\SignPost\SignPost" +C;X6;K"Sign Post" +C;X7;K"WESTRING_DOOD_LOSP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y95;K"LOsc" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\SittingCorpse\SittingCorpse" +C;X6;K"Sitting Corpse" +C;X7;K"WESTRING_DOOD_LOSC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y96;K"LOss" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\SkullonStick\SkullonStick" +C;X6;K"Skulls on Stick" +C;X7;K"WESTRING_DOOD_LOSS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K6 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y97;K"LOsk" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\SkullPile\SkullPile" +C;X6;K"Skull Pile" +C;X7;K"WESTRING_DOOD_LOSK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y98;K"LOsm" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\SmokeSmudge\SmokeSmudge" +C;X6;K"Smoke Smudge" +C;X7;K"WESTRING_DOOD_LOSM" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y99;K"LOsw" +C;X2;K"O" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\RubbleStoneWall\RubbleStoneWall" +C;X6;K"Stone Wall" +C;X7;K"WESTRING_DOOD_LOSW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y100;K"LOth" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\TorchHuman\TorchHuman" +C;X6;K"Torch" +C;X7;K"WESTRING_DOOD_LOTH" +C;X8;K"_" +C;X9;K"LordSumHumanTorchLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y101;K"LOtz" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\TorchHumanOmni\TorchHumanOmni" +C;X6;K"Glowing Torch" +C;X7;K"WESTRING_DOOD_LOTZ" +C;X8;K"_" +C;X9;K"LordSumHumanTorchLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y102;K"LOt1" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Trash1\Trash1" +C;X6;K"Trash" +C;X7;K"WESTRING_DOOD_LOT1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y103;K"LOtr" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Trough\Trough" +C;X6;K"Trough" +C;X7;K"WESTRING_DOOD_LOTR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y104;K"LOwb" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\WheelBarrel\WheelBarrel" +C;X6;K"Wheelbarrel" +C;X7;K"WESTRING_DOOD_LOWB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y105;K"LOwr" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\WheelBarrelBroken\WheelBarrelBroken" +C;X6;K"Broken Wheelbarrel" +C;X7;K"WESTRING_DOOD_LOWR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y106;K"LOwp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Weapons\Weapons" +C;X6;K"Weapon Rack" +C;X7;K"WESTRING_DOOD_LOWP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y107;K"LRrk" +C;X2;K"E" +C;X3;K"L,F,W,Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Rocks\Lords_Rock\Lords_Rock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y108;K"LSba" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\Barn\Barn" +C;X6;K"Barn" +C;X7;K"WESTRING_DOOD_LSBA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.05 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y109;K"LSeb" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\ElvenVillageBuilding\ElvenVillageBuilding" +C;X6;K"Elven Building" +C;X7;K"WESTRING_DOOD_LSEB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y110;K"LSsb" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\BarnScorched\BarnScorched" +C;X6;K"Scorched Barn" +C;X7;K"WESTRING_DOOD_LSSB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.9 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y111;K"LSsf" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\FarmScorched\FarmScorched" +C;X6;K"Scorched Farm" +C;X7;K"WESTRING_DOOD_LSSF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y112;K"LSgr" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\Granary\Granary" +C;X6;K"Granary" +C;X7;K"WESTRING_DOOD_LSGR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.05 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x6Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y113;K"LSgs" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\GranaryBurned\GranaryBurned" +C;X6;K"Scorched Granary" +C;X7;K"WESTRING_DOOD_LSGS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.9 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x6Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y114;K"LSin" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\Inn\Inn" +C;X6;K"Inn" +C;X7;K"WESTRING_DOOD_LSIN" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.9 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y115;K"LSra" +C;X2;K"S" +C;X3;K"L,F,W,Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\LRockArch\LRockArch" +C;X6;K"Rock Archway" +C;X7;K"WESTRING_DOOD_LSRA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y116;K"LSr1" +C;X2;K"S" +C;X3;K"L,F,W,Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\LRockArch45\LRockArch45" +C;X6;K"Angled Rock Archway" +C;X7;K"WESTRING_DOOD_LSR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y117;K"LSsi" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\InnScorched\InnScorched" +C;X6;K"Scorched Inn" +C;X7;K"WESTRING_DOOD_LSSI" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.9 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y118;K"LSst" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\TowerScorched\TowerScorched" +C;X6;K"Scorched Tower" +C;X7;K"WESTRING_DOOD_LSST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x6Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y119;K"LSwl" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\well\well" +C;X6;K"Well" +C;X7;K"WESTRING_DOOD_LSWL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1.4 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y120;K"LSwb" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\WindMillBurned\WindMillBurned" +C;X6;K"Burned Wind Mill" +C;X7;K"WESTRING_DOOD_LSWB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y121;K"LSwm" +C;X2;K"S" +C;X3;K"L,F,W,V,Q" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\WindMill\WindMill" +C;X6;K"Wind Mill" +C;X7;K"WESTRING_DOOD_LSWM" +C;X8;K"_" +C;X9;K"WindMillLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y122;K"NObc" +C;X2;K"O" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendBrokenColumn\NorthrendBrokenColumn" +C;X6;K"Broken Column" +C;X7;K"WESTRING_DOOD_NOBC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y123;K"NObk" +C;X2;K"O" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendBrokenObilisk\NorthrendBrokenObilisk" +C;X6;K"Broken Obelisk" +C;X7;K"WESTRING_DOOD_NOBK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y124;K"NObo" +C;X2;K"O" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\North_Bones\North_Bones" +C;X6;K"Bones" +C;X7;K"WESTRING_DOOD_BOBO" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Unbuildable.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y125;K"NOfl" +C;X2;K"O" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendFenceStraight\NorthrendFenceStraight" +C;X6;K"Fence" +C;X7;K"WESTRING_DOOD_NOFL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y126;K"NOal" +C;X2;K"O" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendFenceAngled\NorthrendFenceAngled" +C;X6;K"Angled Fence" +C;X7;K"WESTRING_DOOD_NOAL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Fence45.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y127;K"NOgv" +C;X2;K"O" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendGrave\NorthrendGrave" +C;X6;K"Stone Grave" +C;X7;K"WESTRING_DOOD_NOGV" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y128;K"NOok" +C;X2;K"O" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendObilisk\NorthrendObilisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y129;K"NOtb" +C;X2;K"O" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\NorthrendTombstone\NorthrendTombstone" +C;X6;K"Tombstone" +C;X7;K"WESTRING_DOOD_NOTB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y130;K"NWfb" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\FloatingBox\FloatingBox" +C;X6;K"Floating Box" +C;X7;K"WESTRING_DOOD_NOFB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y131;K"NWfp" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\FloatingPlank\FloatingPlank" +C;X6;K"Floating Plank" +C;X7;K"WESTRING_DOOD_NWFP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y132;K"NWf1" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe\North_IceFloe" +C;X6;K"IceFloe" +C;X7;K"WESTRING_DOOD_NWF1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y133;K"NWf2" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe2\North_IceFloe2" +C;X6;K"IceFloe" +C;X7;K"WESTRING_DOOD_NWF1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y134;K"NWf3" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe3\North_IceFloe3" +C;X6;K"IceFloe" +C;X7;K"WESTRING_DOOD_NWF1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y135;K"NWf4" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe4\North_IceFloe4" +C;X6;K"IceFloe" +C;X7;K"WESTRING_DOOD_NWF1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y136;K"NWi1" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_Iceberg\North_Iceberg" +C;X6;K"Iceberg" +C;X7;K"WESTRING_DOOD_NWI1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y137;K"NWi2" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_Iceberg2\North_Iceberg2" +C;X6;K"Iceberg" +C;X7;K"WESTRING_DOOD_NWI1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y138;K"NWi3" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_Iceberg3\North_Iceberg3" +C;X6;K"Iceberg" +C;X7;K"WESTRING_DOOD_NWI1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y139;K"NWi4" +C;X2;K"W" +C;X3;K"N,I" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_Iceberg4\North_Iceberg4" +C;X6;K"Iceberg" +C;X7;K"WESTRING_DOOD_NWI1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y140;K"NWpa" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\FloatingPanel\FloatingPanel" +C;X6;K"Floating Panel" +C;X7;K"WESTRING_DOOD_NWPA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y141;K"NOfp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\FirePit\FirePit" +C;X6;K"Fire Pit" +C;X7;K"WESTRING_DOOD_NOFP" +C;X8;K"_" +C;X9;K"LordSumHumanTorchLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y142;K"NOfg" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\FirePitPig\FirePitPig" +C;X6;K"Fire Pit w/ Pig" +C;X7;K"WESTRING_DOOD_NOFG" +C;X8;K"_" +C;X9;K"LordSumHumanTorchLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y143;K"NOft" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\FirePitTrashed\FirePitTrashed" +C;X6;K"Trashed Fire Pit" +C;X7;K"WESTRING_DOOD_NOFT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y144;K"NObt" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Props\Bats\Bats" +C;X6;K"Bats" +C;X7;K"WESTRING_DOOD_NOBT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y145;K"NWrw" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\Rowboat\Rowboat" +C;X6;K"Rowboat" +C;X7;K"WESTRING_DOOD_NORW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K10 +C;X18;K5 +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y146;K"NWrd" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\RowboatDestroyed\RowboatDestroyed" +C;X6;K"Destroyed Rowboat" +C;X7;K"WESTRING_DOOD_NORD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y147;K"NWsp" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\Battleship\Battleship" +C;X6;K"Ship" +C;X7;K"WESTRING_DOOD_NOSP" +C;X8;K"_" +C;X9;K"BattleshipLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y148;K"NWsd" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\BattleshipDestroyed\BattleshipDestroyed" +C;X6;K"Destroyed Ship" +C;X7;K"WESTRING_DOOD_NOSD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y149;K"NWwh" +C;X2;K"W" +C;X3;K"L,F,W,N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\Whale\Whale" +C;X6;K"Whale" +C;X7;K"WESTRING_DOOD_NWWH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y150;K"NPth" +C;X2;K"E" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Plants\North_Thorns\North_Thorns" +C;X6;K"Thorny Vines" +C;X7;K"WESTRING_DOOD_APTV" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K7 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y151;K"NRfs" +C;X2;K"E" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Rocks\NorthrendFissure\NorthrendFissure" +C;X6;K"Fissure" +C;X7;K"WESTRING_DOOD_BRFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y152;K"NRic" +C;X2;K"E" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Rocks\North_IceClaw\North_IceClaw" +C;X6;K"Ice Claws" +C;X7;K"WESTRING_DOOD_NRIC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y153;K"NRrk" +C;X2;K"E" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Rocks\North_Rocks\North_Rocks" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y154;K"NRwr" +C;X2;K"E" +C;X3;K"N,G" +C;X4;K0 +C;X5;K"Doodads\Northrend\Rocks\North_WebRocks\North_WebRocks" +C;X6;K"Webbed Rocks" +C;X7;K"WESTRING_DOOD_NRWR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y155;K"NSct" +C;X2;K"S" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Structures\NorthrendCrypt\NorthrendCrypt" +C;X6;K"Crypt" +C;X7;K"WESTRING_DOOD_NSCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.9 +C;X13;K1.1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y156;K"NSra" +C;X2;K"S" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Structures\NRockArch\NRockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y157;K"NSr1" +C;X2;K"S" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Structures\NRockArch45\NRockArch45" +C;X6;K"Angled Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y158;K"NSrb" +C;X2;K"S" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Structures\NorthrendRubble\NorthrendRubble" +C;X6;K"Rubble" +C;X7;K"WESTRING_DOOD_NSRB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y159;K"VOfl" +C;X2;K"O" +C;X3;K"V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Village\Props\Village_Fencelong\Village_Fencelong" +C;X6;K"Long Fence" +C;X7;K"WESTRING_DOOD_VOFL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y160;K"VOal" +C;X2;K"O" +C;X3;K"V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Village\Props\Village_FencelongAngled\Village_FencelongAngled" +C;X6;K"Angled Long Fence" +C;X7;K"WESTRING_DOOD_VOAL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Fence135.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y161;K"VOfs" +C;X2;K"O" +C;X3;K"V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Village\Props\Village_Fenceshort\Village_Fenceshort" +C;X6;K"Short Fence" +C;X7;K"WESTRING_DOOD_VOFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y162;K"VOas" +C;X2;K"O" +C;X3;K"V,Q,L,F,W,Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Village\Props\Village_FenceshortAngled\Village_FenceshortAngled" +C;X6;K"Angled Short Fence" +C;X7;K"WESTRING_DOOD_VOAS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1.2 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\ShortFence135.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y163;K"VSvb" +C;X2;K"S" +C;X3;K"V,Q,L,F,W,X,Y,J" +C;X4;K0 +C;X5;K"Doodads\Village\Structures\VillageBuilding\VillageBuilding" +C;X6;K"Building" +C;X7;K"WESTRING_DOOD_VSVB" +C;X8;K"_" +C;X9;K"_" +C;X10;K256 +C;X11;K1 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y164;K"YObb" +C;X2;K"O" +C;X3;K"Y" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\Banner_Long\Banner_Long" +C;X6;K"Long Blue Banner" +C;X7;K"WESTRING_DOOD_YOBB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.5 +C;X13;K1.5 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y165;K"YOwb" +C;X2;K"O" +C;X3;K"Y" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\Banner_Long2\Banner_Long2" +C;X6;K"Long White Banner" +C;X7;K"WESTRING_DOOD_YOWB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.5 +C;X13;K1.5 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y166;K"YObs" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CityStoneBench\CityStoneBench" +C;X6;K"Stone Bench" +C;X7;K"WESTRING_DOOD_YOBS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y167;K"YOsa" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CityStoneBenchAngled\CityStoneBenchAngled" +C;X6;K"Angled Stone Bench" +C;X7;K"WESTRING_DOOD_YOSA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y168;K"YObw" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CityWoodBench\CityWoodBench" +C;X6;K"Wood Bench" +C;X7;K"WESTRING_DOOD_YOBW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y169;K"YOwa" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CityWoodBenchAngled\CityWoodBenchAngled" +C;X6;K"Angled Wood Bench" +C;X7;K"WESTRING_DOOD_YOWA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y170;K"YOfn" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\City_Fountain\City_Fountain" +C;X6;K"Fountain" +C;X7;K"WESTRING_DOOD_YOFN" +C;X8;K"_" +C;X9;K"FountainLoop" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y171;K"YOgr" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CityGrave\CityGrave" +C;X6;K"Grave" +C;X7;K"WESTRING_DOOD_LOGR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y172;K"YOob" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\City_Oblisk\City_Oblisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K128 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y173;K"YOlp" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\LanternPost\LanternPost" +C;X6;K"Lantern Post" +C;X7;K"WESTRING_DOOD_LOLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y174;K"YOst" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\City_Statue\City_Statue" +C;X6;K"Statue" +C;X7;K"WESTRING_DOOD_YOST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y175;K"YOks" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\KnightStatueA\KnightStatueA" +C;X6;K"Shieldless Statue" +C;X7;K"WESTRING_DOOD_YOKS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y176;K"XOcs" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CrystalShield\CrystalShield" +C;X6;K"Power Generator" +C;X7;K"WESTRING_DOOD_XOCS" +C;X8;K"_" +C;X9;K"CrystalShieldLoop" +C;X10;K192 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y177;K"XOcl" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\CrystalLamp\CrystalLamp" +C;X6;K"Magical Lantern" +C;X7;K"WESTRING_DOOD_XOCL" +C;X8;K"_" +C;X9;K"CrystalLampLoop" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y178;K"XOmr" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\MagicRunes\MagicRunes" +C;X6;K"Magical Runes" +C;X7;K"WESTRING_DOOD_XOMR" +C;X8;K"_" +C;X9;K"MagicRunesLoop" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Unbuildable.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y179;K"YOts" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\TavernSign\TavernSign" +C;X6;K"Tavern Sign" +C;X7;K"WESTRING_DOOD_YOTS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y180;K"YObg" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\TavernSignBobsGuns\TavernSignBobsGuns" +C;X6;K"Bob's Guns Sign" +C;X7;K"WESTRING_DOOD_YOBG" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y181;K"YOta" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\TavernSignTraceysArmory\TavernSignTraceysArmory" +C;X6;K"Tracey's Armory Sign" +C;X7;K"WESTRING_DOOD_YOTA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.4 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y182;K"YOec" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\EmptyCrates\EmptyCrates" +C;X6;K"Empty Crates" +C;X7;K"WESTRING_DOOD_YOEC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y183;K"YOth" +C;X2;K"O" +C;X3;K"Y,X,D,G,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\Throne\Throne" +C;X6;K"Throne" +C;X7;K"WESTRING_DOOD_YOTH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y184;K"YOws" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\WhaleStatue\WhaleStatue" +C;X6;K"Whale Statue" +C;X7;K"WESTRING_DOOD_YOWS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y185;K"YPbs" +C;X2;K"E" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Plants\CityBush\CityBush" +C;X6;K"Bush" +C;X7;K"WESTRING_DOOD_YPBS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y186;K"YPfs" +C;X2;K"E" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Plants\FlowerBedStraight\FlowerBedStraight" +C;X6;K"Straight Flower Bed" +C;X7;K"WESTRING_DOOD_YPFS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y187;K"YPfa" +C;X2;K"E" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Plants\FlowerBedAngled\FlowerBedAngled" +C;X6;K"Angled Flower Bed" +C;X7;K"WESTRING_DOOD_YPFA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\ShortFence135.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y188;K"YPpp" +C;X2;K"E" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Plants\PottedPlant\PottedPlant" +C;X6;K"Potted Plant" +C;X7;K"WESTRING_DOOD_YPPP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y189;K"YSaw" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Archway1\Archway1" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y190;K"YSa1" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Archway45\Archway45" +C;X6;K"Angled Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y191;K"YSca" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Cathedral\Cathedral" +C;X6;K"Cathedral" +C;X7;K"WESTRING_DOOD_YSCA" +C;X8;K"_" +C;X9;K"CathedralLoop" +C;X10;K0 +C;X11;K1.2 +C;X12;K1.1 +C;X13;K1.3 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\Cathedral.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y192;K"YSco" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSingle\City_ColumnSingle" +C;X6;K"Single Column" +C;X7;K"WESTRING_DOOD_YSCO" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.05 +C;X12;K0.9 +C;X13;K1.15 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y193;K"YScd" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnDouble\City_ColumnDouble" +C;X6;K"Double Column" +C;X7;K"WESTRING_DOOD_YSCD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\22x4DoubleColumn.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y194;K"YSc5" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnDouble45\City_ColumnDouble45" +C;X6;K"Double Column 45" +C;X7;K"WESTRING_DOOD_YSC5" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\DoubleColumn45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y195;K"YScs" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle" +C;X6;K"Column Semi Circle" +C;X7;K"WESTRING_DOOD_YSCS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y196;K"YSc2" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle" +C;X6;K"Column Semi Circle2" +C;X7;K"WESTRING_DOOD_YSC2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y197;K"YSc3" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle" +C;X6;K"Column Semi Circle3" +C;X7;K"WESTRING_DOOD_YSC3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K90 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y198;K"YSc4" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle\City_ColumnSemiCircle" +C;X6;K"Column Semi Circle4" +C;X7;K"WESTRING_DOOD_YSC4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K180 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y199;K"YSls" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_LowWall_ShortEndCap\City_LowWall_ShortEndCap" +C;X6;K"Short Wall End" +C;X7;K"WESTRING_DOOD_YSLS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y200;K"YSw0" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityLowWall0\CityLowWall0" +C;X6;K"Low Wall" +C;X7;K"WESTRING_DOOD_YSW0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\2x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y201;K"YSw1" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityLowWall45\CityLowWall45" +C;X6;K"Low Wall" +C;X7;K"WESTRING_DOOD_YSW1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\4x4diag0.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y202;K"YSw2" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityLowWall90\CityLowWall90" +C;X6;K"Low Wall" +C;X7;K"WESTRING_DOOD_YSW2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y203;K"YSw3" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityLowWall135\CityLowWall135" +C;X6;K"Low Wall" +C;X7;K"WESTRING_DOOD_YSW3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\4x4Diag1.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y204;K"YSlt" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_LowWall_TallEndCap\City_LowWall_TallEndCap" +C;X6;K"Tall Wall End" +C;X7;K"WESTRING_DOOD_YSLT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y205;K"YSll" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_LowWall_TallEndCapWithLantern\City_LowWall_TallEndCapWithLantern" +C;X6;K"Lantern Wall End" +C;X7;K"WESTRING_DOOD_YSLL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y206;K"YSta" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Tavern\Tavern" +C;X6;K"Tavern" +C;X7;K"WESTRING_DOOD_YSTA" +C;X8;K"_" +C;X9;K"TavernLoop" +C;X10;K0 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y207;K"COdf" +C;X2;K"O" +C;X3;K"C,D,G" +C;X4;K0 +C;X5;K"Doodads\Felwood\Props\Fish_Dead\Fish_Dead" +C;X6;K"Dead Fish" +C;X7;K"WESTRING_DOOD_CODF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y208;K"CRrk" +C;X2;K"E" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Felwood\Rocks\FelwoodRock\FelwoodRock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y209;K"DRrk" +C;X2;K"E" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Rocks\DungeonRock\DungeonRock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y210;K"YOlb" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\Lightningbolt\Lightningbolt" +C;X6;K"Lightning Bolt" +C;X7;K"WESTRING_DOOD_YOLB" +C;X8;K"_" +C;X9;K"_" +C;X10;K64 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y211;K"YOtf" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\TownBurningFireEmitter\TownBurningFireEmitter" +C;X6;K"Fire" +C;X7;K"WESTRING_DOOD_YOTF" +C;X8;K"_" +C;X9;K"HumanFireMedium" +C;X10;K128 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y212;K"YOfb" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\TownBurningFireEmitterBlue\TownBurningFireEmitterBlue" +C;X6;K"Blue Fire" +C;X7;K"WESTRING_DOOD_YOFB" +C;X8;K"_" +C;X9;K"HumanFireMedium" +C;X10;K128 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y213;K"YOfs" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FireRockSmall\FireRockSmall" +C;X6;K"Small Fire" +C;X7;K"WESTRING_DOOD_YOFS" +C;X8;K"_" +C;X9;K"HumanFireSmall" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y214;K"YOf1" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FireTrapSide\FireTrapSide" +C;X6;K"Side Fire Trap" +C;X7;K"WESTRING_DOOD_YOF1" +C;X8;K"_" +C;X9;K"_" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y215;K"YOf2" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FireTrapUp\FireTrapUp" +C;X6;K"Fire Trap" +C;X7;K"WESTRING_DOOD_YOF2" +C;X8;K"_" +C;X9;K"_" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y216;K"YOf3" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FirePillarMedium\FirePillarMedium" +C;X6;K"Fire Gust" +C;X7;K"WESTRING_DOOD_YOF3" +C;X8;K"_" +C;X9;K"HumanFireSmall" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y217;K"YOr1" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FrostTrapSide\FrostTrapSide" +C;X6;K"Side Frost Trap" +C;X7;K"WESTRING_DOOD_YOR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y218;K"YOr2" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FrostTrapUp\FrostTrapUp" +C;X6;K"Frost Trap" +C;X7;K"WESTRING_DOOD_YOR2" +C;X8;K"_" +C;X9;K"_" +C;X10;K96 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y219;K"DSar" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\DRockArch\DRockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y220;K"DSa1" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\DRockArch45\DRockArch45" +C;X6;K"Angled Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y221;K"DSah" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\DungeonArchway1\DungeonArchway1" +C;X6;K"Stone Archway" +C;X7;K"WESTRING_DOOD_GSAH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y222;K"DSa2" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\DungeonArchway45\DungeonArchway45" +C;X6;K"Stone Archway" +C;X7;K"WESTRING_DOOD_GSA2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y223;K"DOtp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\TreasurePile\TreasurePile" +C;X6;K"Pile of Treasure" +C;X7;K"WESTRING_DOOD_DOTP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y224;K"DOjp" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\JunkPile\JunkPile" +C;X6;K"Pile of Junk" +C;X7;K"WESTRING_DOOD_DOJP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y225;K"DOch" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Chain\Chain" +C;X6;K"Chains" +C;X7;K"WESTRING_DOOD_DOCH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y226;K"DOcp" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\ChainPost\ChainPost" +C;X6;K"Chain Post" +C;X7;K"WESTRING_DOOD_DOCP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y227;K"DRfc" +C;X2;K"E" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Rocks\Cave_FieryCrator\Cave_FieryCrator" +C;X6;K"Fiery Crater" +C;X7;K"WESTRING_DOOD_DRFC" +C;X8;K"_" +C;X9;K"HumanFireMedium" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y228;K"DRst" +C;X2;K"E" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Rocks\DungeonStalagmite\DungeonStalagmite" +C;X6;K"Stalagmite" +C;X7;K"WESTRING_DOOD_DRST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y229;K"DOlc" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\LavaCracks\LavaCracks" +C;X6;K"Lava Cracks" +C;X7;K"WESTRING_DOOD_DOLC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y230;K"DOcr" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Chair\Chair" +C;X6;K"Chair" +C;X7;K"WESTRING_DOOD_DOCR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y231;K"DObh" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Bench\Bench" +C;X6;K"Bench" +C;X7;K"WESTRING_DOOD_DOBH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y232;K"DObk" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Bookshelf\Bookshelf" +C;X6;K"Bookshelf" +C;X7;K"WESTRING_DOOD_DOBK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y233;K"DOkb" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\BigBookshelf\BigBookshelf" +C;X6;K"Large Bookshelf" +C;X7;K"WESTRING_DOOD_DOKB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y234;K"DObw" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\BookshelfWall\BookshelfWall" +C;X6;K"Long Bookshelf" +C;X7;K"WESTRING_DOOD_DOBW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y235;K"DOab" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\BookshelfWall45\BookshelfWall45" +C;X6;K"Angled Bookshelf" +C;X7;K"WESTRING_DOOD_DOAB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Diag1.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y236;K"DOob" +C;X2;K"O" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\DungeonObilisk\DungeonObilisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y237;K"DOtb" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Table\Table" +C;X6;K"Table" +C;X7;K"WESTRING_DOOD_DOTB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y238;K"DOtc" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\TableNChair\TableNChair" +C;X6;K"Table and Chair" +C;X7;K"WESTRING_DOOD_DOTC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y239;K"DOim" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\IronMaiden\IronMaiden" +C;X6;K"Iron Maiden" +C;X7;K"WESTRING_DOOD_DOIM" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y240;K"DOtt" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\TortureTable\TortureTable" +C;X6;K"Torture Table" +C;X7;K"WESTRING_DOOD_DOTT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y241;K"DOmc" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\MineCart\MineCart" +C;X6;K"Mine Cart" +C;X7;K"WESTRING_DOOD_DOMC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y242;K"DOme" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\MineCartEmpty\MineCartEmpty" +C;X6;K"Empty Mine Cart" +C;X7;K"WESTRING_DOOD_DOME" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y243;K"DSp0" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\PorticulisWall0_\PorticulisWall0_" +C;X6;K"Barred Wall" +C;X7;K"WESTRING_DOOD_DSP0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y244;K"DSp9" +C;X2;K"S" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Structures\PorticulisWall45_\PorticulisWall45_" +C;X6;K"Barred Wall" +C;X7;K"WESTRING_DOOD_DSP9" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Fence135.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y245;K"GPsh" +C;X2;K"E" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Plants\ShroomsBlue\ShroomsBlue" +C;X6;K"Blue Mushroom" +C;X7;K"WESTRING_DOOD_DPSH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.75 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y246;K"GRrk" +C;X2;K"E" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Rocks\UndergoundRock\UndergoundRock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y247;K"GRfc" +C;X2;K"E" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Rocks\Underground_FieryCrator\Underground_FieryCrator" +C;X6;K"Fiery Crater" +C;X7;K"WESTRING_DOOD_DRFC" +C;X8;K"_" +C;X9;K"HumanFireMedium" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y248;K"GRst" +C;X2;K"E" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Rocks\UndergroundStalagmite\UndergroundStalagmite" +C;X6;K"Stalagmite" +C;X7;K"WESTRING_DOOD_DRST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y249;K"GOob" +C;X2;K"O" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Props\UndergroundObilisk\UndergroundObilisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y250;K"GSah" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\UndergroundArchway1\UndergroundArchway1" +C;X6;K"Stone Archway" +C;X7;K"WESTRING_DOOD_GSAH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y251;K"GSa2" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\UndergroundArchway45\UndergroundArchway45" +C;X6;K"Stone Archway" +C;X7;K"WESTRING_DOOD_GSA2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y252;K"GSar" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\GRockArch\GRockArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y253;K"GSa1" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\GRockArch45\GRockArch45" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y254;K"GSp0" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\GPorticulisWall0_\GPorticulisWall0_" +C;X6;K"Barred Wall" +C;X7;K"WESTRING_DOOD_DSP0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y255;K"GSp9" +C;X2;K"S" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Structures\GPorticulisWall45_\GPorticulisWall45_" +C;X6;K"Barred Wall" +C;X7;K"WESTRING_DOOD_DSP9" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Fence135.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y256;K"GOlc" +C;X2;K"O" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Underground\Props\GCracks\GCracks" +C;X6;K"Lava Cracks" +C;X7;K"WESTRING_DOOD_DOLC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"_" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y257;K"LWw0" +C;X2;K"W" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\Waterfall\Waterfall" +C;X6;K"WaterfallEffect" +C;X7;K"WESTRING_DOOD_LWWF" +C;X8;K"_" +C;X9;K"WaterfallLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.5 +C;X13;K1.5 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K100 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K1 +C;X28;K-1 +C;X29;K"_" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y258;K"LCc0" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CliffDoodadCave\CliffDoodadCave" +C;X6;K"Cave0" +C;X7;K"WESTRING_DOOD_LCc0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\Cave0base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y259;K"LCc2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CliffDoodadCave2\CliffDoodadCave2" +C;X6;K"Cave2" +C;X7;K"WESTRING_DOOD_LCc2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\Cave2base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y260;K"YOsw" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\SunWell\SunWell" +C;X6;K"Sun Well" +C;X7;K"WESTRING_DOOD_YOSW" +C;X8;K"_" +C;X9;K"FountainLoop" +C;X10;K256 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y261;K"YOcp" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\CameraProp\CameraProp" +C;X6;K"Camera Prop" +C;X7;K"WESTRING_DOOD_YOCP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y262;K"YS00" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall45_0\CityBuildingSmall45_0" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS00" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y263;K"YS01" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall45_1\CityBuildingSmall45_1" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS01" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y264;K"YS02" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall45_2\CityBuildingSmall45_2" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS02" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y265;K"YS03" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall90_0\CityBuildingSmall90_0" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS03" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y266;K"YS04" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall90_1\CityBuildingSmall90_1" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS04" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y267;K"YS05" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall90_2\CityBuildingSmall90_2" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS05" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y268;K"YS06" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall135_0\CityBuildingSmall135_0" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS06" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y269;K"YS07" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall135_1\CityBuildingSmall135_1" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS07" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y270;K"YS08" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall135_2\CityBuildingSmall135_2" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS08" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y271;K"YS09" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall0_0\CityBuildingSmall0_0" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS09" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y272;K"YS10" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall0_1\CityBuildingSmall0_1" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS10" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y273;K"YS11" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingSmall0_2\CityBuildingSmall0_2" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YS11" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y274;K"YS12" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingLarge_0\CityBuildingLarge_0" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YS12" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_0.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y275;K"YS13" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingLarge_45\CityBuildingLarge_45" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YS13" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_135.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y276;K"YS14" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingLarge_90\CityBuildingLarge_90" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YS14" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_90.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y277;K"YS15" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Buildings\Other\CityBuildingLarge_135\CityBuildingLarge_135" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YS15" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_45.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K0 +C;X1;Y278;K"YZef" +C;X2;K"Z" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Cinematic\EnergyField\EnergyField" +C;X6;K"Energy Field" +C;X7;K"WESTRING_DOOD_YZEF" +C;X8;K"_" +C;X9;K"_" +C;X10;K512 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K270 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y279;K"LZth" +C;X2;K"Z" +C;X3;K"L" +C;X4;K0 +C;X5;K"Doodads\Cinematic\ThrallsHut\ThrallsHut" +C;X6;K"Thrall's Hut" +C;X7;K"WESTRING_DOOD_LZTH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x12Simple.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K0 +C;X1;Y280;K"ZObz" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Brazier\Brazier" +C;X6;K"Ruins Brazier" +C;X7;K"WESTRING_DOOD_ZOBR" +C;X8;K"z" +C;X9;K"LordSumBrazierLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y281;K"ZOst" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Statue\Statue" +C;X6;K"Ruins Statue" +C;X7;K"WESTRING_DOOD_ZOST" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y282;K"ZOsb" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\StatueBroken\StatueBroken" +C;X6;K"Ruins Broken Statue" +C;X7;K"WESTRING_DOOD_ZOSB" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y283;K"ZOss" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Stone\Stone" +C;X6;K" Ruins Stones" +C;X7;K"WESTRING_DOOD_ZOSS" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y284;K"ZSar" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\SRuinArch\SRuinArch" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_ZSAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y285;K"ZSa1" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\SRuinArch45\SRuinArch45" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_ZSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y286;K"ZSas" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\RuinsArchway0_\RuinsArchway0_" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSAW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y287;K"ZSs1" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\RuinsArchway45_\RuinsArchway45_" +C;X6;K"Archway" +C;X7;K"WESTRING_DOOD_YSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y288;K"ZSab" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\RuinsArchwayBroken00\RuinsArchwayBroken00" +C;X6;K"Ruined Archway" +C;X7;K"WESTRING_DOOD_ZSAB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y289;K"ZSb1" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\RuinsArchwayBroken450\RuinsArchwayBroken450" +C;X6;K"Ruined Archway" +C;X7;K"WESTRING_DOOD_ZSB1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y290;K"ZWfs" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\FishTropical\FishTropical" +C;X6;K"Green Fish" +C;X7;K"WESTRING_DOOD_AOF2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y291;K"ZWsf" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\FishSchool\FishSchool" +C;X6;K"School of Fish" +C;X7;K"WESTRING_DOOD_ZWSF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y292;K"ZSrb" +C;X2;K"S" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Structures\RuinsBuilding\RuinsBuilding" +C;X6;K"Ruins" +C;X7;K"WESTRING_DOOD_ZSRB" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\6x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y293;K"ZOfo" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinFountain\RuinFountain" +C;X6;K"Ruins Fountain" +C;X7;K"WESTRING_DOOD_ZOFO" +C;X8;K"z" +C;X9;K"FountainLoop" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y294;K"ZOob" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinsObelisk\RuinsObelisk" +C;X6;K"Ruins Obelisk" +C;X7;K"WESTRING_DOOD_ZOOB" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y295;K"ZOrt" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinsRuinedThrone\RuinsRuinedThrone" +C;X6;K"Ruins Throne" +C;X7;K"WESTRING_DOOD_ZORT" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y296;K"IRrk" +C;X2;K"E" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Rocks\Ice_Rock\Ice_Rock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y297;K"ZOrp" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinsPillar\RuinsPillar" +C;X6;K"Ruins Pillar" +C;X7;K"WESTRING_DOOD_ZORP" +C;X8;K"z" +C;X9;K"_" +C;X10;K80 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y298;K"ZOsh" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Ruins_Shells\Ruins_Shells" +C;X6;K"Shells" +C;X7;K"WESTRING_DOOD_ZOSH" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y299;K"YCc1" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCave1\CityCliffDoodadCave1" +C;X6;K"CityCliffCave1" +C;X7;K"WESTRING_DOOD_YCC1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff1base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y300;K"YCc2" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCave2\CityCliffDoodadCave2" +C;X6;K"CityCliffCave2" +C;X7;K"WESTRING_DOOD_YCC2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff2base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y301;K"YCc3" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCave3\CityCliffDoodadCave3" +C;X6;K"CityCliffCave3" +C;X7;K"WESTRING_DOOD_YCC3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff3base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y302;K"YCc4" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCave4\CityCliffDoodadCave4" +C;X6;K"CityCliffCave4" +C;X7;K"WESTRING_DOOD_YCC4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff4base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y303;K"YCd1" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapse0\CityCliffDoodadCollapse0" +C;X6;K"CityCliffCollapse1" +C;X7;K"WESTRING_DOOD_YCD1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y304;K"YCd2" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapse1\CityCliffDoodadCollapse1" +C;X6;K"CityCliffCollapse2" +C;X7;K"WESTRING_DOOD_YCD2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y305;K"YCd3" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapse2\CityCliffDoodadCollapse2" +C;X6;K"CityCliffCollapse3" +C;X7;K"WESTRING_DOOD_YCD3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y306;K"YCd4" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapse3\CityCliffDoodadCollapse3" +C;X6;K"CityCliffCollapse4" +C;X7;K"WESTRING_DOOD_YCD4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y307;K"ZOrc" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinCrystals\DalaranRuinCrystals" +C;X6;K"Ruined Crystal Tower" +C;X7;K"WESTRING_DOOD_ZORC" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y308;K"ZOdt" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinTower\DalaranRuinTower" +C;X6;K"Ruined Tower" +C;X7;K"WESTRING_DOOD_ZODT" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y309;K"ZOd2" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinTower2\DalaranRuinTower2" +C;X6;K"Ruined Tower" +C;X7;K"WESTRING_DOOD_ZODT" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y310;K"ZOrb" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinTowerBase\DalaranRuinTowerBase" +C;X6;K"Ruined Tower Base" +C;X7;K"WESTRING_DOOD_ZORB" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y311;K"ZOtb" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinTwoBases\DalaranRuinTwoBases" +C;X6;K"Ruined Double Base" +C;X7;K"WESTRING_DOOD_ZOTB" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y312;K"ZOt2" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranRuinTwoBases2\DalaranRuinTwoBases2" +C;X6;K"Ruined Double Base" +C;X7;K"WESTRING_DOOD_ZOTB" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y313;K"ZOvr" +C;X2;K"O" +C;X3;K"X,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\DalaranVioletCitadelRuin\DalaranVioletCitadelRuin" +C;X6;K"Ruined Violet Citadel" +C;X7;K"WESTRING_DOOD_ZOVR" +C;X8;K"_" +C;X9;K"_" +C;X10;K128 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x12Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y314;K"ZOfp" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Firepot\Firepot" +C;X6;K"Ruins Firepot" +C;X7;K"WESTRING_DOOD_ZOFP" +C;X8;K"z" +C;X9;K"LordSumBrazierLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y315;K"ZRrk" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Rocks\Ruins_Rock\Ruins_Rock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y316;K"ZCv1" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\CityCliffVines0\CityCliffVines0" +C;X6;K"Cliffside Vines" +C;X7;K"WESTRING_DOOD_ZCV1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y317;K"ZCv2" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\CityCliffVines1\CityCliffVines1" +C;X6;K"Cliffside Vines" +C;X7;K"WESTRING_DOOD_ZCV1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y318;K"ZWsw" +C;X2;K"W" +C;X3;K"A,B,L,F,W,Y,X,V,Q,N,Z,J" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\Seaweed0\Seaweed0" +C;X6;K"Seaweed" +C;X7;K"WESTRING_DOOD_ZWSW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.75 +C;X12;K1.5 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y319;K"ZWbg" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\BubbleGeyser\BubbleGeyser" +C;X6;K"Bubbles" +C;X7;K"WESTRING_DOOD_ZWBG" +C;X8;K"_" +C;X9;K"_" +C;X10;K64 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y320;K"IWbg" +C;X2;K"W" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Water\BubbleGeyserSteam\BubbleGeyserSteam" +C;X6;K"Steam Bubbles" +C;X7;K"WESTRING_DOOD_IWBG" +C;X8;K"_" +C;X9;K"_" +C;X10;K96 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y321;K"IWie" +C;X2;K"W" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Water\IceEdge\IceEdge" +C;X6;K"Floating Ice" +C;X7;K"WESTRING_DOOD_IWIE" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y322;K"IWw0" +C;X2;K"W" +C;X3;K"I" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\IceCrownWaterfall\IceCrownWaterfall" +C;X6;K"Icy Waterfall Effect" +C;X7;K"WESTRING_DOOD_IWWF" +C;X8;K"_" +C;X9;K"WaterfallLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.5 +C;X13;K1.5 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K100 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K1 +C;X28;K-1 +C;X29;K"_" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y323;K"ZPfw" +C;X2;K"E" +C;X3;K"Z,L,F,A,C,X,J,Y,V,Q" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\Ruins_Flower\Ruins_Flower" +C;X6;K"Flowers" +C;X7;K"WESTRING_DOOD_ZPFW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y324;K"ZPsh" +C;X2;K"E" +C;X3;K"Z,L,F,A,C,X,J,Y,V,Q" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\Ruins_Shrub\Ruins_Shrub" +C;X6;K"Shrub" +C;X7;K"WESTRING_DOOD_ZPSH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y325;K"ZPlp" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\Ruins_Lilypad\Ruins_Lilypad" +C;X6;K"Lilypad" +C;X7;K"WESTRING_DOOD_LPLP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y326;K"ZPru" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\Ruins_Rush\Ruins_Rush" +C;X6;K"CatTail" +C;X7;K"WESTRING_DOOD_APCT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y327;K"ZWcl" +C;X2;K"W" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\Coral\Coral" +C;X6;K"Coral" +C;X7;K"WESTRING_DOOD_ZWCL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x6Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y328;K"ZWca" +C;X2;K"W" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Water\CoralArch\CoralArch" +C;X6;K"Coral Arch" +C;X7;K"WESTRING_DOOD_ZWCA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\18x12Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y329;K"ZZdt" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\DemonFootPrint\DemonFootPrint" +C;X6;K"Demonic Footprints" +C;X7;K"WESTRING_DOOD_ZZDT" +C;X8;K"_" +C;X9;K"_" +C;X10;K64 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y330;K"IOst" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\IceTorch\IceTorch" +C;X6;K"Skull Torch" +C;X7;K"WESTRING_DOOD_IOST" +C;X8;K"_" +C;X9;K"LordSumBrazierLoop" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y331;K"ISar" +C;X2;K"S" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\IC_IceArch\IC_IceArch" +C;X6;K"Ice Archway" +C;X7;K"WESTRING_DOOD_ISAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y332;K"ISa1" +C;X2;K"S" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\IC_IceArch45\IC_IceArch45" +C;X6;K"Ice Archway" +C;X7;K"WESTRING_DOOD_ISA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y333;K"IOob" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\IceCrownObelisk\IceCrownObelisk" +C;X6;K"Obelisk" +C;X7;K"WESTRING_DOOD_AOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y334;K"IOpr" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\IceCrownPillar\IceCrownPillar" +C;X6;K"Pillar" +C;X7;K"WESTRING_DOOD_ASPL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y335;K"IRic" +C;X2;K"E" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Rocks\IceBlock\IceBlock" +C;X6;K"Ice Block" +C;X7;K"WESTRING_DOOD_IRIC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y336;K"DOas" +C;X2;K"O" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\AzsharaStatue\AzsharaStatue" +C;X6;K"Statue of Azshara" +C;X7;K"WESTRING_DOOD_DOAS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y337;K"IOsm" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\SnowMan\SnowMan" +C;X6;K"Snowman" +C;X7;K"WESTRING_DOOD_IOSM" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y338;K"ZRrs" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Rocks\Ruins_Spires\Ruins_Spires" +C;X6;K"Rock Spires" +C;X7;K"WESTRING_DOOD_BRRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\LargeRockSpire.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y339;K"ZRsp" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Rocks\Ruins_Spires\Ruins_Spires" +C;X6;K"Small Rock Spires" +C;X7;K"WESTRING_DOOD_BRSP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K0.36 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K0 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y340;K"ORrk" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Rocks\Outland_Rock\Outland_Rock" +C;X6;K"Rocks" +C;X7;K"WESTRING_DOOD_NRRK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y341;K"ORrs" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Rocks\Outland_Spires\Outland_Spires" +C;X6;K"Rock Spires" +C;X7;K"WESTRING_DOOD_BRRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\LargeRockSpire.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y342;K"IOss" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\SpiderStatue1\SpiderStatue1" +C;X6;K"Ice Spider on Pedestal" +C;X7;K"WESTRING_DOOD_IOSS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y343;K"IOsl" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\SpiderStatue0\SpiderStatue0" +C;X6;K"Ice Spider Statue" +C;X7;K"WESTRING_DOOD_IOSL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\Log45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y344;K"AZrf" +C;X2;K"W" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Doodads\Cinematic\NightElfTransportShipRuined\NightElfTransportShipRuined" +C;X6;K"Ruined Ship" +C;X7;K"WESTRING_DOOD_AZRF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y345;K"OPop" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Plants\Outland_Plant\Outland_Plant" +C;X6;K"Plants" +C;X7;K"WESTRING_DOOD_OPOP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K8 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y346;K"IRgc" +C;X2;K"E" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Rocks\Glacier\Glacier" +C;X6;K"Glacier" +C;X7;K"WESTRING_DOOD_IRGC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\LargeRockSpire.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y347;K"ORmk" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Rocks\Outland_MagmaRock\Outland_MagmaRock" +C;X6;K"Magma Rock" +C;X7;K"WESTRING_DOOD_ORMK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y348;K"YCx1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor2x2_0\Ruinedfloor2x2_0" +C;X6;K"RuinedFloor2x2_" +C;X7;K"WESTRING_DOOD_YCX1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y349;K"YCx2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor2x2_1\Ruinedfloor2x2_1" +C;X6;K"RuinedFloor2x2_" +C;X7;K"WESTRING_DOOD_YCX1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y350;K"YCx3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor2x2_2\Ruinedfloor2x2_2" +C;X6;K"RuinedFloor2x2_" +C;X7;K"WESTRING_DOOD_YCX1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y351;K"YCx4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor2x2_3\Ruinedfloor2x2_3" +C;X6;K"RuinedFloor2x2_" +C;X7;K"WESTRING_DOOD_YCX1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y352;K"YCx5" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor4x4_0\Ruinedfloor4x4_0" +C;X6;K"RuinedFloor4x4_" +C;X7;K"WESTRING_DOOD_YCX2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\16x16UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y353;K"YCx6" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor4x4_1\Ruinedfloor4x4_1" +C;X6;K"RuinedFloor4x4_" +C;X7;K"WESTRING_DOOD_YCX2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\16x16UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y354;K"YCx7" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor4x2_0\Ruinedfloor4x2_0" +C;X6;K"RuinedFloor4x2_" +C;X7;K"WESTRING_DOOD_YCX3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\16x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y355;K"YCx8" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\Ruinedfloor4x2_1\Ruinedfloor4x2_1" +C;X6;K"RuinedFloor4x2_" +C;X7;K"WESTRING_DOOD_YCX3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\16x8UnbuildableHeightA.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y356;K"YCr1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\NewRoughCliffDoodadCave1\NewRoughCliffDoodadCave1" +C;X6;K"Rough cliff cave 1" +C;X7;K"WESTRING_DOOD_YCR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff1base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y357;K"YCr2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\NewRoughCliffDoodadCave2\NewRoughCliffDoodadCave2" +C;X6;K"Rough cliff cave 2" +C;X7;K"WESTRING_DOOD_YCR2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff2base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y358;K"YCr3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\NewRoughCliffDoodadCave3\NewRoughCliffDoodadCave3" +C;X6;K"Rough cliff cave 3" +C;X7;K"WESTRING_DOOD_YCR3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff3base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y359;K"YCr4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\NewRoughCliffDoodadCave4\NewRoughCliffDoodadCave4" +C;X6;K"Rough cliff cave 4" +C;X7;K"WESTRING_DOOD_YCR4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CaveCityCliff4base.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y360;K"YCp1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapse0\RoughCliffDoodadCollapse0" +C;X6;K"Rough Cliff Collapse 1" +C;X7;K"WESTRING_DOOD_YCP1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y361;K"YCp2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapse1\RoughCliffDoodadCollapse1" +C;X6;K"Rough Cliff Collapse 2" +C;X7;K"WESTRING_DOOD_YCP2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y362;K"YCp3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapse2\RoughCliffDoodadCollapse2" +C;X6;K"Rough Cliff Collapse 3" +C;X7;K"WESTRING_DOOD_YCP3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y363;K"YCp4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapse3\RoughCliffDoodadCollapse3" +C;X6;K"Rough Cliff Collapse 4" +C;X7;K"WESTRING_DOOD_YCP4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y364;K"YCs1" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlide0\CityCliffDoodadSlide0" +C;X6;K"City Cliff Slide 1" +C;X7;K"WESTRING_DOOD_YCS1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y365;K"YCs2" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlide1\CityCliffDoodadSlide1" +C;X6;K"City Cliff Slide 2" +C;X7;K"WESTRING_DOOD_YCS2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y366;K"YCs3" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlide2\CityCliffDoodadSlide2" +C;X6;K"City Cliff Slide 3" +C;X7;K"WESTRING_DOOD_YCS3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y367;K"YCs4" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlide3\CityCliffDoodadSlide3" +C;X6;K"City Cliff Slide 4" +C;X7;K"WESTRING_DOOD_YCS4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y368;K"YCt1" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapseShort0\CityCliffDoodadCollapseShort0" +C;X6;K"CityCliffCollapseShort1" +C;X7;K"WESTRING_DOOD_YCT1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y369;K"YCt2" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapseShort1\CityCliffDoodadCollapseShort1" +C;X6;K"CityCliffCollapseShort2" +C;X7;K"WESTRING_DOOD_YCT2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y370;K"YCt3" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapseShort2\CityCliffDoodadCollapseShort2" +C;X6;K"CityCliffCollapseShort3" +C;X7;K"WESTRING_DOOD_YCT3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y371;K"YCt4" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadCollapseShort3\CityCliffDoodadCollapseShort3" +C;X6;K"CityCliffCollapseShort4" +C;X7;K"WESTRING_DOOD_YCT4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y372;K"YCo1" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlideShort0\CityCliffDoodadSlideShort0" +C;X6;K"City Cliff Slide Short 1" +C;X7;K"WESTRING_DOOD_YCO1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y373;K"YCo2" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlideShort1\CityCliffDoodadSlideShort1" +C;X6;K"City Cliff Slide Short 2" +C;X7;K"WESTRING_DOOD_YCO2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y374;K"YCo3" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlideShort2\CityCliffDoodadSlideShort2" +C;X6;K"City Cliff Slide Short 3" +C;X7;K"WESTRING_DOOD_YCO3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y375;K"YCo4" +C;X2;K"C" +C;X3;K"Y,X,D,G,Z,I,O,J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\CityCliffDoodadSlideShort3\CityCliffDoodadSlideShort3" +C;X6;K"City Cliff Slide Short 4" +C;X7;K"WESTRING_DOOD_YCO4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y376;K"YCg1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlide0\RoughCliffDoodadSlide0" +C;X6;K"Rough Cliff Slide 1" +C;X7;K"WESTRING_DOOD_YCG1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y377;K"YCg2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlide1\RoughCliffDoodadSlide1" +C;X6;K"Rough Cliff Slide 2" +C;X7;K"WESTRING_DOOD_YCG2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y378;K"YCg3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlide2\RoughCliffDoodadSlide2" +C;X6;K"Rough Cliff Slide 3" +C;X7;K"WESTRING_DOOD_YCG3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y379;K"YCg4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlide3\RoughCliffDoodadSlide3" +C;X6;K"Rough Cliff Slide 4" +C;X7;K"WESTRING_DOOD_YCG4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3Path.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y380;K"YCu1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlideShort0\RoughCliffDoodadSlideShort0" +C;X6;K"Rough Cliff Slide Short 1" +C;X7;K"WESTRING_DOOD_YCU1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y381;K"YCu2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlideShort1\RoughCliffDoodadSlideShort1" +C;X6;K"Rough Cliff Slide Short 2" +C;X7;K"WESTRING_DOOD_YCU2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y382;K"YCu3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlideShort2\RoughCliffDoodadSlideShort2" +C;X6;K"Rough Cliff Slide Short 3" +C;X7;K"WESTRING_DOOD_YCU3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y383;K"YCu4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadSlideShort3\RoughCliffDoodadSlideShort3" +C;X6;K"Rough Cliff Slide Short 4" +C;X7;K"WESTRING_DOOD_YCU4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y384;K"YCl1" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapseShort0\RoughCliffDoodadCollapseShort0" +C;X6;K"Rough Cliff Collapse Short 1" +C;X7;K"WESTRING_DOOD_YCL1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse0ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y385;K"YCl2" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapseShort1\RoughCliffDoodadCollapseShort1" +C;X6;K"Rough Cliff Collapse Short 2" +C;X7;K"WESTRING_DOOD_YCL2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse1ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y386;K"YCl3" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapseShort2\RoughCliffDoodadCollapseShort2" +C;X6;K"Rough Cliff Collapse Short 3" +C;X7;K"WESTRING_DOOD_YCL3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse2ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y387;K"YCl4" +C;X2;K"C" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\CliffDoodad\RoughCliffDoodadCollapseShort3\RoughCliffDoodadCollapseShort3" +C;X6;K"Rough Cliff Collapse Short 4" +C;X7;K"WESTRING_DOOD_YCL4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CliffCollapse3ShortPath.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y388;K"ZRbs" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Rocks\CliffRubble_Single\CliffRubble_Single" +C;X6;K"Small Rubble" +C;X7;K"WESTRING_DOOD_ZRBS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y389;K"ZRbd" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Rocks\CliffRubble_Double\CliffRubble_Double" +C;X6;K"Large Rubble" +C;X7;K"WESTRING_DOOD_ZRBD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y390;K"ORfk" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Cinematic\Outland_FloatingChunks\Outland_FloatingChunks" +C;X6;K"Floating Rock" +C;X7;K"WESTRING_DOOD_ORFK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\8x8Unflyable.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y391;K"OZfc" +C;X2;K"Z" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Cinematic\Outland_FloatingChunksCluster\Outland_FloatingChunksCluster" +C;X6;K"Floating Rock Cluster" +C;X7;K"WESTRING_DOOD_ORFC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"none" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y392;K"ASpr" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\Pier\Pier" +C;X6;K"Pier" +C;X7;K"WESTRING_DOOD_ASPR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y393;K"ASpt" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Structures\PierTrashed\PierTrashed" +C;X6;K"Ruined Pier" +C;X7;K"WESTRING_DOOD_ASPT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y394;K"ZPms" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\Ruins_Shroom\Ruins_Shroom" +C;X6;K"Mushrooms" +C;X7;K"WESTRING_DOOD_APMS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K6 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y395;K"ZPvp" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\VinyPlant\VinyPlant" +C;X6;K"Viny Plant" +C;X7;K"WESTRING_DOOD_ZPVP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y396;K"ZOls" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\LibraryShelf\LibraryShelf" +C;X6;K"Library Shelf" +C;X7;K"WESTRING_DOOD_ZOLS" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y397;K"YScr" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CathedralRuined\CathedralRuined" +C;X6;K"Ruined Cathedral" +C;X7;K"WESTRING_DOOD_YSCR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.2 +C;X12;K1.1 +C;X13;K1.3 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\Cathedral.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y398;K"YOfr" +C;X2;K"O" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Props\FountainRuined\FountainRuined" +C;X6;K"Ruined Fountain" +C;X7;K"WESTRING_DOOD_YOFR" +C;X8;K"_" +C;X9;K"_" +C;X10;K288 +C;X11;K0.9 +C;X12;K0.8 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y399;K"ZZgr" +C;X2;K"Z" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Cinematic\RunesOfGuldan\RunesOfGuldan" +C;X6;K"Gul'dan's Runes" +C;X7;K"WESTRING_DOOD_ZZGR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.5 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K6 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y400;K"JZif" +C;X2;K"Z" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cinematic\EnergyFieldWall\EnergyFieldWall" +C;X6;K"Invulnerability Field" +C;X7;K"WESTRING_DOOD_JZIF" +C;X8;K"_" +C;X9;K"_" +C;X10;K128 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y401;K"YSr0" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall45_0_Ruined\CityBuildingSmall45_0_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y402;K"YSr1" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall45_1_Ruined\CityBuildingSmall45_1_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y403;K"YSr2" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall45_2_Ruined\CityBuildingSmall45_2_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding0-2.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y404;K"YSr3" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall90_0_Ruined\CityBuildingSmall90_0_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y405;K"YSr4" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall90_1_Ruined\CityBuildingSmall90_1_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y406;K"YSr5" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall90_2_Ruined\CityBuildingSmall90_2_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR5" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding3-5.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y407;K"YSr6" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall135_0_Ruined\CityBuildingSmall135_0_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR6" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y408;K"YSr7" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall135_1_Ruined\CityBuildingSmall135_1_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR7" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y409;K"YSr8" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall135_2_Ruined\CityBuildingSmall135_2_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR8" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding6-8.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y410;K"YSr9" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall0_0_Ruined\CityBuildingSmall0_0_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSR9" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y411;K"YSra" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall0_1_Ruined\CityBuildingSmall0_1_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSRA" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y412;K"YSrb" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall0_2_Ruined\CityBuildingSmall0_2_Ruined" +C;X6;K"City Building" +C;X7;K"WESTRING_DOOD_YSRB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuilding9-11.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y413;K"YSrc" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingLarge_0_Ruined\CityBuildingLarge_0_Ruined" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YSRC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_0.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y414;K"YSrd" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingLarge_45_Ruined\CityBuildingLarge_45_Ruined" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YSRD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_135.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y415;K"YSre" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingLarge_90_Ruined\CityBuildingLarge_90_Ruined" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YSRE" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_90.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y416;K"YSrf" +C;X2;K"S" +C;X3;K"Y,X,V,Q,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingLarge_135_Ruined\CityBuildingLarge_135_Ruined" +C;X6;K"Large City Building" +C;X7;K"WESTRING_DOOD_YSRF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\CityBuildingLarge_45.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y417;K"ZZys" +C;X2;K"Z" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Cinematic\EyeOfSargeras\EyeOfSargeras" +C;X6;K"Eye of Sargeras" +C;X7;K"WESTRING_DOOD_ZZYS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y418;K"JScs" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle_Ruined\City_ColumnSemiCircle_Ruined" +C;X6;K"Column Semi Circle Ruined" +C;X7;K"WESTRING_DOOD_JSCS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K270 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y419;K"JSc2" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle_Ruined\City_ColumnSemiCircle_Ruined" +C;X6;K"Column Semi Circle2 Ruined" +C;X7;K"WESTRING_DOOD_JSC2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K"PathTextures\ColumnSemiCircle.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y420;K"JSc3" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle_Ruined\City_ColumnSemiCircle_Ruined" +C;X6;K"Column Semi Circle3 Ruined" +C;X7;K"WESTRING_DOOD_JSC3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K90 +C;X29;K"PathTextures\ColumnSemiCircle3.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y421;K"JSc4" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSemiCircle_Ruined\City_ColumnSemiCircle_Ruined" +C;X6;K"Column Semi Circle4 Ruined" +C;X7;K"WESTRING_DOOD_JSC4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.095 +C;X12;K1.095 +C;X13;K1.095 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K180 +C;X29;K"PathTextures\ColumnSemiCircle.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y422;K"JSco" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSingle1_Ruined\City_ColumnSingle1_Ruined" +C;X6;K"Single Column Ruined" +C;X7;K"WESTRING_DOOD_JSCO" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.05 +C;X12;K0.9 +C;X13;K1.15 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y423;K"JScx" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_ColumnSingle2_Ruined\City_ColumnSingle2_Ruined" +C;X6;K"Single Column Ruined" +C;X7;K"WESTRING_DOOD_JSCX" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1.05 +C;X12;K0.9 +C;X13;K1.15 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y424;K"JSrc" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingLarge_0_BaseRuin\CityBuildingLarge_0_BaseRuin" +C;X6;K"Large City Building Ruined Base" +C;X7;K"WESTRING_DOOD_JSRC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y425;K"JSr6" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\CityBuildingSmall135_0_BaseRuin\CityBuildingSmall135_0_BaseRuin" +C;X6;K"City Building Ruined Base" +C;X7;K"WESTRING_DOOD_JSR6" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y426;K"JSar" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Archway2_Ruined\Archway2_Ruined" +C;X6;K"Archway Ruined" +C;X7;K"WESTRING_DOOD_JSAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y427;K"JSax" +C;X2;K"S" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\Archway1_Ruined\Archway1_Ruined" +C;X6;K"Archway Ruined" +C;X7;K"WESTRING_DOOD_JSAX" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y428;K"ZZcd" +C;X2;K"Z" +C;X3;K"Z,D,G" +C;X4;K0 +C;X5;K"Doodads\Cinematic\CavernDust\CavernDust" +C;X6;K"Dust" +C;X7;K"WESTRING_DOOD_ZZCD" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y429;K"LSrg" +C;X2;K"S" +C;X3;K"L,W,F,Z" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Structures\GoblinShipyardRuined\GoblinShipyardRuined" +C;X6;K"Ruined Goblin Shipyard" +C;X7;K"WESTRING_DOOD_LSRG" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y430;K"AOnt" +C;X2;K"O" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Props\Totem\Totem" +C;X6;K"Totem Lantern" +C;X7;K"WESTRING_DOOD_AONT" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y431;K"DOsv" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\SewerVent\SewerVent" +C;X6;K"Sewer Vent" +C;X7;K"WESTRING_DOOD_DOSV" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K4 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y432;K"DOsw" +C;X2;K"O" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\SewerWallpipes\SewerWallpipes" +C;X6;K"Sewer Wallpipes" +C;X7;K"WESTRING_DOOD_DOSW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y433;K"LOwf" +C;X2;K"O" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\WallFountainCliff\WallFountainCliff" +C;X6;K"Wall Fountain" +C;X7;K"WESTRING_DOOD_LOWF" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\12x12WallFountain.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y434;K"KOdr" +C;X2;K"O" +C;X3;K"K" +C;X4;K0 +C;X5;K"Doodads\BlackCitadel\Props\RuneArt\RuneArt" +C;X6;K"Runes" +C;X7;K"WESTRING_DOOD_KODR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K7 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y435;K"OZsp" +C;X2;K"Z" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Cinematic\ShimmeringPortal\ShimmeringPortal" +C;X6;K"Shimmering Portal" +C;X7;K"WESTRING_DOOD_OZSP" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y436;K"ASv0" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuilding0\ElvenFishVillageBuilding0" +C;X6;K"Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASV0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y437;K"ASv1" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuilding1\ElvenFishVillageBuilding1" +C;X6;K"Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASV1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y438;K"ASv2" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuilding2\ElvenFishVillageBuilding2" +C;X6;K"Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASV2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y439;K"ASv3" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuilding3\ElvenFishVillageBuilding3" +C;X6;K"Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASV3" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y440;K"ASv4" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuilding4\ElvenFishVillageBuilding4" +C;X6;K"Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASV4" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y441;K"ASx0" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuildingRuined0\ElvenFishVillageBuildingRuined0" +C;X6;K"Ruined Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASX0" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y442;K"ASx1" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuildingRuined1\ElvenFishVillageBuildingRuined1" +C;X6;K"Ruined Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASX1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Round.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y443;K"ASx2" +C;X2;K"S" +C;X3;K"A,C" +C;X4;K0 +C;X5;K"Buildings\Other\ElvenFishVillageBuildingRuined2\ElvenFishVillageBuildingRuined2" +C;X6;K"Ruined Elven Fishing Village" +C;X7;K"WESTRING_DOOD_ASX2" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y444;K"ZOtr" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinsTrash\RuinsTrash" +C;X6;K"Trash" +C;X7;K"WESTRING_DOOD_ZOTR" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K1 +C;X67;K1 +C;X1;Y445;K"ZOba" +C;X2;K"O" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\RuinsBloodyAltar\RuinsBloodyAltar" +C;X6;K"Bloody Altar" +C;X7;K"WESTRING_DOOD_ZOBA" +C;X8;K"z" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y446;K"IZrw" +C;X2;K"Z" +C;X3;K"I" +C;X4;K1 +C;X5;K"Doodads\Cinematic\RisingWaterDoodad\RisingWaterDoodad" +C;X6;K"Rising Water" +C;X7;K"WESTRING_DOOD_IZRW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y447;K"KOst" +C;X2;K"O" +C;X3;K"K" +C;X4;K0 +C;X5;K"Doodads\BlackCitadel\Props\BlackCitadelStatue\BlackCitadelStatue" +C;X6;K"Black Citadel Statue" +C;X7;K"WESTRING_DOOD_KOST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y448;K"IZft" +C;X2;K"Z" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FrozenThrone\FrozenThrone" +C;X6;K"The Frozen Throne" +C;X7;K"WESTRING_DOOD_IZFT" +C;X8;K"_" +C;X9;K"_" +C;X10;K256 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y449;K"IOic" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\Icecrown_IceChair\Icecrown_IceChair" +C;X6;K"Icey Chair" +C;X7;K"WESTRING_DOOD_IOIC" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y450;K"IRcy" +C;X2;K"E" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Rocks\Icecrown_Crystal\Icecrown_Crystal" +C;X6;K"Crystal" +C;X7;K"WESTRING_DOOD_IRCY" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K9 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\8x8Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y451;K"ISsr" +C;X2;K"S" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\Icecrown_StoneArch\Icecrown_StoneArch" +C;X6;K"Stone Archway" +C;X7;K"WESTRING_DOOD_ISSR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y452;K"ISs1" +C;X2;K"S" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\Icecrown_StoneArch45\Icecrown_StoneArch45" +C;X6;K"Angled Stone Archway" +C;X7;K"WESTRING_DOOD_ISS1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArchAngle.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y453;K"IOch" +C;X2;K"O" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Props\IcecrownChair\IcecrownChair" +C;X6;K"Chair" +C;X7;K"WESTRING_DOOD_IOCH" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y454;K"OOal" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Altar\Altar" +C;X6;K"Altar" +C;X7;K"WESTRING_DOOD_OOAL" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y455;K"OOgr" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Grate\Grate" +C;X6;K"Flame Grate" +C;X7;K"WESTRING_DOOD_OOGR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y456;K"OOob" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Obstacle\Obstacle" +C;X6;K"Obstacle" +C;X7;K"WESTRING_DOOD_OOOB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K5 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y457;K"OOsk" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Skull\Skull" +C;X6;K"Skull" +C;X7;K"WESTRING_DOOD_OOSK" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y458;K"OOst" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Stake\Stake" +C;X6;K"Stake" +C;X7;K"WESTRING_DOOD_OOST" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y459;K"ORrr" +C;X2;K"E" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Rocks\RubbleRock\RubbleRock" +C;X6;K"Rubble" +C;X7;K"WESTRING_DOOD_ORRR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K6 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y460;K"JZud" +C;X2;K"Z" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\UndergroundDome\UndergroundDome" +C;X6;K"Underground Dome" +C;X7;K"WESTRING_DOOD_JZUD" +C;X8;K"_" +C;X9;K"_" +C;X10;K256 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K"-" +C;X18;K"-" +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y461;K"OOsd" +C;X2;K"O" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Props\Standard\Standard" +C;X6;K"Standard" +C;X7;K"WESTRING_DOOD_OOSD" +C;X8;K"_" +C;X9;K"_" +C;X10;K64 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K2 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y462;K"IRrs" +C;X2;K"E" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Rocks\Ice_SnowRock\Ice_SnowRock" +C;X6;K"Snowy Rocks" +C;X7;K"WESTRING_DOOD_IRRS" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y463;K"ISrb" +C;X2;K"S" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\Icecrown_Rubble\Icecrown_Rubble" +C;X6;K"Rubble" +C;X7;K"WESTRING_DOOD_NSRB" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K3 +C;X22;K0 +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y464;K"JOgr" +C;X2;K"O" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Cinematic\GlowingRunes\GlowingRunes" +C;X6;K"Glowing Runes" +C;X7;K"WESTRING_DOOD_JOGR" +C;X8;K"_" +C;X9;K"MagicRunesLoop" +C;X10;K0 +C;X11;K0.95 +C;X12;K0.9 +C;X13;K1 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K9 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Unbuildable.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y465;K"BPtw" +C;X2;K"E" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Barrens\Plants\Barrens_TreeDoodad\Barrens_TreeDoodad" +C;X6;K"Barrens Tree" +C;X7;K"WESTRING_DOOD_BPTW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y466;K"ZPtw" +C;X2;K"E" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Plants\RuinsTreeDoodad\RuinsTreeDoodad" +C;X6;K"Sunken Ruins Tree" +C;X7;K"WESTRING_DOOD_ZPTW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K10 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\4x4Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y467;K"IZww" +C;X2;K"Z" +C;X3;K"I" +C;X4;K1 +C;X5;K"Doodads\Cinematic\RisingWaterWIDEDoodad\RisingWaterWIDEDoodad" +C;X6;K"Rising Water Wide" +C;X7;K"WESTRING_DOOD_IZWW" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K-1 +C;X29;K"none" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y468;K"YSlx" +C;X2;K"S" +C;X3;K"Y,X,J" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Structures\City_LowWall_TallEndCapWithoutLantern\City_LowWall_TallEndCapWithoutLantern" +C;X6;K"No Lantern Wall End" +C;X7;K"WESTRING_DOOD_YSLX" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K2 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\2x2Default.tga" +C;X30;K1 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y469;K"OSar" +C;X2;K"S" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Structures\Outland_RockArch\Outland_RockArch" +C;X6;K"Rock Archway" +C;X7;K"WESTRING_DOOD_OSAR" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +C;X1;Y470;K"OSa1" +C;X2;K"S" +C;X3;K"O,K" +C;X4;K0 +C;X5;K"Doodads\Outland\Structures\Outland_RockArch45\Outland_RockArch45" +C;X6;K"Angled Rock Archway" +C;X7;K"WESTRING_DOOD_OSA1" +C;X8;K"_" +C;X9;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K0.8 +C;X13;K1.2 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K"-" +C;X18;K"-" +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K-1 +C;X29;K"PathTextures\CityArch45.tga" +C;X30;K0 +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K0 +C;X35;K255 +C;X36;K255 +C;X37;K255 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K255 +C;X44;K255 +C;X45;K255 +C;X46;K255 +C;X47;K255 +C;X48;K255 +C;X49;K255 +C;X50;K255 +C;X51;K255 +C;X52;K255 +C;X53;K255 +C;X54;K255 +C;X55;K255 +C;X56;K255 +C;X57;K255 +C;X58;K255 +C;X59;K255 +C;X60;K255 +C;X61;K255 +C;X62;K255 +C;X63;K255 +C;X64;K255 +C;X66;K0 +C;X67;K1 +E diff --git a/share/mpq/units/ui/WarcraftIIIFTLogo.blp b/share/mpq/units/ui/WarcraftIIIFTLogo.blp new file mode 100644 index 0000000..3238e7c Binary files /dev/null and b/share/mpq/units/ui/WarcraftIIIFTLogo.blp differ diff --git a/share/mpq/units/ui/WorldEditStrings.txt b/share/mpq/units/ui/WorldEditStrings.txt new file mode 100644 index 0000000..e9d78df --- /dev/null +++ b/share/mpq/units/ui/WorldEditStrings.txt @@ -0,0 +1,9325 @@ +[WorldEditStrings] + +WESTRING_APPNAME=WorldEdit +//=======DWE +WESTRING_TRIGCAT_DEBUG=侦错 +WESTRING_TRIGCAT_OBSOLETE=废弃的 +WESTRING_FILESEPARATOR_CAMPAIGNMAP="--" +WESTRING_FILESEPARATOR_MAPAI="--" +WESTRING_RACE_HUMAN=人族 +WESTRING_RACE_ORC=兽族 +WESTRING_RACE_UNDEAD=不死族 +WESTRING_RACE_NIGHTELF=暗夜精灵族 +WESTRING_RACE_NEUTRAL=中立 +WESTRING_RACE_NEUTRAL_NAGA=中立 - 娜迦 +WESTRING_RACE_OTHER=特殊 +WESTRING_RACE_SELECTABLE=可选择的 +WESTRING_NEUTRAL_HOSTILE=中立敌对 +WESTRING_NEUTRAL_PASSIVE=中立被动 +WESTRING_UTYPE_NORMAL=普通 +WESTRING_UTYPE_HERO=英雄 +WESTRING_UTYPE_BUILDING=建筑 +WESTRING_UTYPE_HEROES=英雄 +WESTRING_UTYPE_BUILDINGS=建筑 +WESTRING_UTYPE_BUILDINGS_UPROOTED=建筑(移动形态) +WESTRING_UTYPE_SPECIAL=特殊 +WESTRING_UTYPE_CUSTOM=自定义 +WESTRING_ITEM=物品 +WESTRING_DROPPEDITEMS=掉落的物品 +WESTRING_DTYPE_PROPS=道具 +WESTRING_DTYPE_STRUCTURES=建筑 +WESTRING_DTYPE_TERRAIN=WESTRING_TERRAIN +WESTRING_DTYPE_WATER=水 +WESTRING_DTYPE_DESTRUCTABLE=树木/可破坏物 +WESTRING_DTYPE_PATHING=路径阻断器 +WESTRING_DTYPE_BRIDGE=桥/斜坡 +WESTRING_DTYPE_CLIFF=悬崖/地形 +WESTRING_DTYPE_ENVIRONMENT=环境 +WESTRING_DTYPE_CINEMATIC=电影 +WESTRING_BRUSH=刷子 +WESTRING_BRUSHPALETTE=刷子面板 +WESTRING_BRUSHSIZE=刷子尺寸 +WESTRING_BRUSHSHAPE=刷子形状 +WESTRING_BRUSH_TEXTURE=WESTRING_TEXTURE +WESTRING_BRUSH_HEIGHT=高度 +WESTRING_BRUSH_CLIFF=悬崖 +WESTRING_BRUSH_CLIFFLEVEL=WESTRING_CLIFFLEVEL +WESTRING_BRUSH_CLIFFTYPE=悬崖类型 +WESTRING_BRUSH_DOODADS=WESTRING_DOODADS +WESTRING_BRUSH_UNITS=WESTRING_UNITS +WESTRING_BRUSH_PATHING=WESTRING_PATHING +WESTRING_BRUSH_REGIONS=WESTRING_REGIONS +WESTRING_BRUSH_CIRCLE=圆形 +WESTRING_BRUSH_SQUARE=正方形 +WESTRING_BRUSH_RECTANGLE=矩形 +WESTRING_BRUSH_PLATEAU=推平地表 +WESTRING_BRUSH_NOISE=陡峭地表 +WESTRING_BRUSH_SELECT=选择 +WESTRING_HEIGHT=高度 +WESTRING_TRUE=TRUE +WESTRING_FALSE=FALSE +WESTRING_ZERO=零 +WESTRING_ONE=一 +WESTRING_TWO=二 +WESTRING_THREE=三 +WESTRING_FOUR=四 +WESTRING_FIVE=五 +WESTRING_SIX=六 +WESTRING_SEVEN=七 +WESTRING_EIGHT=八 +WESTRING_INCONE=升高一层 +WESTRING_INCTWO=升高两层 +WESTRING_SAMELEVEL=整平地面 +WESTRING_DECONE=降低一层 +WESTRING_DECTWO=降低两层 +WESTRING_0=0 +WESTRING_1=1 +WESTRING_2=2 +WESTRING_3=3 +WESTRING_4=4 +WESTRING_5=5 +WESTRING_6=6 +WESTRING_7=7 +WESTRING_8=8 +WESTRING_BRUSH_RAISE=隆起地表 +WESTRING_BRUSH_LOWER=降低地表 +WESTRING_BRUSH_LEVEL=水平面 +WESTRING_BRUSH_MELT=软化地表 +WESTRING_BRUSH_SMOOTH=平滑化地表 +WESTRING_BRUSH_RAMP=斜坡 +WESTRING_PATHINGTYPE=路径类型 +WESTRING_PASSABLE=可通行 +WESTRING_IMPASSABLE=不可通行 +WESTRING_PATHTYPE_GROUND=地面 +WESTRING_PATHTYPE_AIR=空中 +WESTRING_PATHTYPE_BUILDINGS=建造 +WESTRING_COMPUTINGPATHINGMAP=处理路径纹理 +WESTRING_STARTLOCATION=开始点 +WESTRING_UNITPROPS=单位属性 +WESTRING_DOODPROPS=地形装饰物属性 +WESTRING_MODIFYPLAYERS=修改玩家 +WESTRING_ADDPLAYER=添加玩家 +WESTRING_REMOVEPLAYER=删除玩家 +WESTRING_NEUTRAL=中立 +WESTRING_NONE=没有 +WESTRING_PLAYER_HUMAN=用户 +WESTRING_PLAYER_COMPUTER=电脑 +WESTRING_PLAYER_NEUTRAL=WESTRING_NEUTRAL +WESTRING_PLAYER_RESCUE=可营救的 +WESTRING_PROGRESS=进程 +WESTRING_RESETTINGPATHMAP=重设路径纹理 +WESTRING_RESETTINGHEIGHTS=重设地形高度 +WESTRING_RANDOMIZINGHEIGHTS=随机化地形高度 +WESTRING_SMOOTHINGHEIGHTS=平滑化高度区域 +WESTRING_REBUILDINGMODELS=重建模型 +WESTRING_TILE=地形 +WESTRING_TRANSFERTEXTURE=<---- +WESTRING_COPYALLTEXTURES=复制所有 +WESTRING_OK=确定 +WESTRING_CANCEL=取消 +WESTRING_SUGGESTEDPLAYERS=建议玩家数(&S) +WESTRING_PLAYERS=玩家 +WESTRING_NAME=名字(&N) +WESTRING_DESCRIPTION=说明(&D) +WESTRING_AUTHOR=作者(&A) +WESTRING_MAPDESC_EXPANSION=资料片 +WESTRING_MAPVERSION=地图版本 +WESTRING_MAPEDITORVERSION=保存并纪录编辑器版本 +WESTRING_SIZE=尺寸 +WESTRING_SHAPE=形状 +WESTRING_CLIFFSET=悬崖基础地形 - 组 %d +WESTRING_TILESET=地形设置(&T) +WESTRING_PLAYERNAME=玩家名字 +WESTRING_CONTROLLER=控制 +WESTRING_RACE=种族 +WESTRING_COLOR=颜色 +WESTRING_TEAM=队伍 +WESTRING_TEXTURE=纹理 +WESTRING_NONE_CAPS=没有 +WESTRING_CREATINGMODELS=创建模型 +WESTRING_INVALIDCELLSIZE=发现无效的单元尺寸 +WESTRING_SCALETO=比例 +WESTRING_SAVECHANGES=保存变化到 +WESTRING_UNTITLED=未命名的 +WESTRING_DEEPWATER=深水 +WESTRING_SHALLOWWATER=浅水 +WESTRING_LOWGROUND=低地 +WESTRING_MIDGROUND=中间地层 +WESTRING_HIGHGROUND=高地 +WESTRING_MOUNTAINPEAK=山峰 +WESTRING_NOCLIFF=没有悬崖 +WESTRING_RANDOMHEIGHT=随机地形高度 +WESTRING_RANDOM=随机(&R) +WESTRING_VARIATION=样式(&V) +WESTRING_ROTATION=旋转角度(&R) +WESTRING_SMOOTHING=平滑(&S) +WESTRING_PREFERENCES=参数选择 +WESTRING_UNDOLIMIT=不限制(&U) +WESTRING_INVERTMOUSE=鼠标变换(&I) +WESTRING_AUTOSAVE=自动保存(&A) +WESTRING_EVERY=每 +WESTRING_MINUTES=分钟 +WESTRING_SHOWTOOLTIPS=显示提示(&T) +WESTRING_RESETDEFAULTS=重设默认设置 +WESTRING_LARGEGRIDCOLOR=大栅格颜色(&L) +WESTRING_MEDIUMGRIDCOLOR=中栅格颜色(&M) +WESTRING_SMALLGRIDCOLOR=小栅格颜色(&S) +WESTRING_TERRAINWIRECOLOR=地形线框颜色(&T) +WESTRING_PREFS_TERRAINCURSOR=使用地形指针(&U) +WESTRING_PREFS_PREVIEWAUTOZOOM=自动扩缩预览器以适应新模型 +WESTRING_TERRAIN=地形 +WESTRING_DOODADS=地形装饰物 +WESTRING_UNITS=单位 +WESTRING_REGION=矩形区域 +WESTRING_REGIONS=矩形区域 +WESTRING_PATHING=路径 +WESTRING_DAWN=黎明 +WESTRING_NOON=正午 +WESTRING_DUSK=黄昏 +WESTRING_MIDNIGHT=午夜 +WESTRING_FIXEDDNC=固定昼夜时间(&X) +WESTRING_DEBUG=调试 +WESTRING_PLAYERNAME=玩家名字 +WESTRING_PLAYERNUMBER=# +WESTRING_PLAYERRACE=种族 +WESTRING_PLAYERCONTROL=控制者 +WESTRING_PLAYERFIXEDLOC=固定开始点 +WESTRING_PLAYERCOLOR=颜色 +WESTRING_PLAYER=玩家 +WESTRING_DATAMIRROR=数据镜像 +WESTRING_CHOOSEDIRECTORY=选择一个目录 +WESTRING_TRIGGERS=触发器 +WESTRING_INITIALIZATION=初始化 +WESTRING_ALLPLAYERS=所有玩家 +WESTRING_UNTITLEDTRIGGER=未命名触发器 +WESTRING_TRIGGERCOMMENT_DEFAULT="-----------" +WESTRING_MELEEINITIALIZATION=对战初始化 +WESTRING_MELEEINITIALIZATION_COMMENT=对所有玩家进行默认的对战游戏初始化,自定义非对战地图请酌情删除. +WESTRING_EVENTS=事件 +WESTRING_CONDITIONS=条件 +WESTRING_ACTIONS=动作 +WESTRING_PARAMETERS=参数 +WESTRING_EVENT=事件 +WESTRING_CONDITION=条件 +WESTRING_ACTION=动作 +WESTRING_FILTER=筛选 +WESTRING_FUNCTIONS=函数 +WESTRING_FUNCTIONCALL=函数调用 +WESTRING_FUNCTIONCALLS=函数调用 +WESTRING_CONFIGURE=设置 +WESTRING_TYPE=类型(&T) +WESTRING_TEXT=文本 +WESTRING_EDITFUNCTIP=点击下划线部分来赋值 +WESTRING_UNTITLEDTRIGGER=未命名触发器 +WESTRING_UNTITLEDTRIGGERCATEGORY=未命名类别 +WESTRING_VICTORY=胜利 +WESTRING_DEFEAT=失败 +WESTRING_DRAW=平局 +WESTRING_WAR3=《魔兽争霸III》 +WESTRING_MODIFYMAPBOUNDS=修改地图范围(&M) +WESTRING_MODIFYCAMERABOUNDS=修改镜头范围(&C) +WESTRING_DEFAULTCAMERABOUNDS=默认镜头范围 +WESTRING_MAP=地图 +WESTRING_CAMERA=镜头 +WESTRING_LEVEL=等级 +WESTRING_TOTAL=总和 +WESTRING_ANYLEVEL=任何等级 +WESTRING_VARIABLENAME=变量名(&N) +WESTRING_VARIABLETYPE=变量类型(&T) +WESTRING_INITIALVALUE=初始值 +WESTRING_GLOBALVARIABLE=变量 +WESTRING_GENVAR_SUFFIX= <预设> +WESTRING_VALUE=值(&A) +WESTRING_GLOBVAR_DEFAULT= (默认) +WESTRING_GENSCRIPTONSAVE=保存时生成脚本 +WESTRING_EMPTYSTRING=<空字符串> +WESTRING_EMPTY=空 +WESTRING_ITEMS=物品 +WESTRING_ADD=添加 +WESTRING_VIEW=察看 +WESTRING_DELETE=删除 +WESTRING_RENAME=重命名 +WESTRING_ENTERREGIONNAME=输入新的地区名 +WESTRING_ENTERCAMERANAME=输入新的镜头名 +WESTRING_USESELECTEDOBJECT=使用选定物体 +WESTRING_CANTUSEOBJECT=必须有一个'%s'的物体被选中 +WESTRING_CLIFFLEVEL=悬崖层面 +WESTRING_TIME=时间 +WESTRING_POINT=点 +WESTRING_LOCKPALVISIBLE=必要时自动设置可见度(&L) +WESTRING_GLOBVARS=变量 +WESTRING_MAPSIZE_DIALOG=镜头范围和地图大小 +WESTRING_PLAYERPROPS=玩家属性 +WESTRING_RESETHEIGHT=重置地形高度 +WESTRING_EVENT=事件 +WESTRING_CONDITION=条件 +WESTRING_ACTION=动作 +WESTRING_PRESET=预设(&R) +WESTRING_GLOBAL=变量(&V) +WESTRING_FUNCTION=函数(&F) +WESTRING_TRIGPARAM_SOURCE_IMPORT=导入 +WESTRING_EDIT=编辑 +WESTRING_EDITFUNCTION=编辑函数 +WESTRING_TRIGGERCOMMENT=触发器注释(&C) +WESTRING_TRIGGERFUNCTIONS=触发器函数(&T) +WESTRING_CUSTOMSCRIPT=自定义脚本 +WESTRING_CUSTOMSCRIPT_COMMENT=自定义脚本注释(&C): +WESTRING_CUSTOMSCRIPT_TEXT=自定义脚本代码(&S): +WESTRING_CUSTOMSCRIPTCODE_DEFAULTCOMMENT=在下面输入自定义脚本代码. 该部分内容会被添加到地图脚本的变量声明和触发代码之间. +WESTRING_TRIGGERENABLED=允许(&A) +WESTRING_TRIGGERINITENABLED=初始打开(&I) +WESTRING_TRIGGERCUSTOMMAPINIT=地图初始化时运行(&R) +WESTRING_PREVIEWER_ROTATE=角度 +WESTRING_PREVIEWER_DISTANCE=距离 +WESTRING_PREVIEWER_ANIM=动画 +WESTRING_PREVIEWER_LIGHT=光线 +WESTRING_PREVIEWER_VAR=样式 +WESTRING_PREVIEWCAMERAMOTION=预览镜头运动 +WESTRING_CAMERAPREVIEW=镜头预览 +WESTRING_CAMERAS=镜头 +WESTRING_GEMACTIVATE=宝石激活 +WESTRING_GEMDEACTIVATE=宝石禁用 +WESTRING_DUPLICATE=复制 +WESTRING_DUPNAMEENDING=复制 +WESTRING_PLACERANDOMVARIATION=放置随机样式 +WESTRING_RANDOMROTATION=随机旋转角度 +WESTRING_RANDOMSCALESYM=随机大小 - 对称 +WESTRING_RANDOMSCALEZ=随机大小 - Z轴 +WESTRING_RANDOMSCALEXY=随机大小 - XY面 +WESTRING_SCARE=删除所有单位并创建随机地形... +WESTRING_CAKE_HINT1=你喜欢吃蛋糕吗 +WESTRING_CAKE_HINT2=这个玩家喜欢吃蛋糕. +WESTRING_CAKE_HINT3=拿着你的蛋糕,也把它吃了. +WESTRING_CAKE_1="一块蛋糕被吃了..." +WESTRING_CAKE_2="两块蛋糕被吃了..." +WESTRING_CAKE_3="三块蛋糕被吃了. 恭喜,你所得的奖励是重启编辑器!" +WESTRING_COPY=复制 +WESTRING_EXTERNALIZETEXT=游戏显示文本 +WESTRING_MAPPROPS=地图属性 +WESTRING_MAPTAB_DESCRIPTION=说明 +WESTRING_MAPTAB_OPTIONS=选项 +WESTRING_MAPTAB_SIZE=地图范围 +WESTRING_MAPTAB_LOADSCREEN=载入画面 +WESTRING_MAPTAB_PROLOGUE=序言场景 +WESTRING_MAPTAB_PREFS=参数设定 +WESTRING_MAPTAB_DESCRIPTION_RESET=重设为默认说明(&R) +WESTRING_MAPTAB_OPTIONS_RESET=重设为默认选项(&R) +WESTRING_MAPTAB_SIZE_RESET=重设为默认镜头范围(&R) +WESTRING_MAPTAB_LOADSCREEN_RESET=重设为默认值载入画面(&R) +WESTRING_MAPTAB_PROLOGUE_RESET=重设为默认序言场景 +WESTRING_MAPTAB_PREFS_RESET=重设为默认地图参数 +WESTRING_SCENARIOPROPS=玩家属性 +WESTRING_SCENTAB_PLAYERS=WESTRING_PLAYERS +WESTRING_SCENTAB_FORCES=队伍 +WESTRING_SCENTAB_TECHTREE=科技树 +WESTRING_SCENTAB_ABILITIES=技能 +WESTRING_SCENTAB_UPGRADES=升级 +WESTRING_SCENTAB_ALLYPRIORITIES=联盟优先权 +WESTRING_SCENARIO_RESET=重设%s到默认设置(&R) +WESTRING_OBJECTEDITOR=物体编辑器 +WESTRING_OBJTAB_UNITS=单位 +WESTRING_OBJTAB_ITEMS=物品 +WESTRING_OBJTAB_DESTRUCTABLES=可破坏物 +WESTRING_OBJTAB_DOODADS=地形装饰物 +WESTRING_OBJTAB_ABILITIES=技能 +WESTRING_OBJTAB_BUFFS=魔法效果 +WESTRING_OBJTAB_UPGRADES=科技 +WESTRING_PREFTAB_GENERAL=综合 +WESTRING_PREFTAB_VISUAL=视觉 +WESTRING_PREFTAB_TRIGGERS=文本颜色 +WESTRING_PREFTAB_TESTMAP=地图测试 +WESTRING_PREFTAB_VIDEO=图像 +WESTRING_PREFTAB_SOUND=声音 +WESTRING_PREFTAB_DEBUG=调试 +WESTRING_PREFTAB_GENERAL_RESET=重设综合设置为默认值(&R) +WESTRING_PREFTAB_VISUAL_RESET=重设视觉设置为默认值(&R) +WESTRING_PREFTAB_TRIGGERS_RESET=重设文本颜色设置为默认值(&R) +WESTRING_PREFTAB_TESTMAP_RESET=重设地图测试设置为默认值(&R) +WESTRING_PREFTAB_VIDEO_RESET=重设图像设置为默认值(&R) +WESTRING_PREFTAB_SOUND_RESET=重设声音设置为默认值(&R) +WESTRING_PREFTAB_DEBUG_RESET=重设调试设置为默认值(&R) +WESTRING_ALLIED=同盟 +WESTRING_ALLIEDVICTORY=联盟胜利 +WESTRING_RANDOMSTARTLOC=随机开始点 +WESTRING_SHAREVISION=共享视野 +WESTRING_SHARECONTROL=共享单位控制权 +WESTRING_SHARECONTROLADV=共享所有控制权 +WESTRING_GOLDAMOUNT=金钱数量(&G) +WESTRING_NOFORCESELECTED=没有队伍选定 +WESTRING_SKIPWATERAREAS=跳过水域(&W) +WESTRING_CHOOSEITEM=选择物品 +WESTRING_CHANCE=几率 +WESTRING_ARRAY=数组(&A) +WESTRING_ARRAYSIZE=大小(&S) +WESTRING_INDEX=索引 +WESTRING_OWNER=所有者 +WESTRING_SELECTION=选择 +WESTRING_NEWMAPONSTARTUP=启动时自动创建新地图(&C) +WESTRING_UNBUILDABLE=不可建造 +WESTRING_GENERATINGSHADOWS=生成阴影 +WESTRING_SMG_COMPUTINGHEIGHTS=计算高度 +WESTRING_SMG_ADDINGDOODADS=添加物体阴影 +WESTRING_ENTERSTRING=输入文本 +WESTRING_CLEARVALUE=清除数值(&C) +WESTRING_BLIGHT=荒芜地表 +WESTRING_NOTHINGTILE=边界 +WESTRING_REMOVENOTHINGTILE=去除边界 +WESTRING_APPLYTEXTURE=应用纹理 +WESTRING_APPLYCLIFF=应用悬崖 +WESTRING_APPLYHEIGHT=应用高度 +WESTRING_CONFIRMGENSHADOWS_1=阴影纹理生成可能需要几分钟. +WESTRING_CONFIRMGENSHADOWS_2=这取决于你的地图内容和系统配置. +WESTRING_CONFIRMGENSHADOWS_3=确定要重建阴影纹理吗 +WESTRING_DP_SCALE=大小(%) +WESTRING_DP_SCALE_X=&X +WESTRING_DP_SCALE_Y=&Y +WESTRING_DP_SCALE_Z=&Z +WESTRING_DP_LIFE=生命(%) +WESTRING_DOODDEADSUFFIX= (死亡) +WESTRING_NA=N/A +WESTRING_MAPSIZE=地图大小 +WESTRING_PLAYABLE=可用 +WESTRING_FULL=全部 +WESTRING_PREFS_ASSOCIATEFILES=与该程序关联的《魔兽争霸III》文件 +WESTRING_PREFS_CREATENEWPALS=自动创建新面板窗口(&P) +WESTRING_PREFS_AUTOCREATEVARS=当粘贴触发器数据时自动创建未知变量(&W) +WESTRING_PREFS_NEGATIVEVALUES=允许物体编辑器中输入负数值 +WESTRING_PREFS_PALBUTTONSIZE=面板按钮大小(&B) +WESTRING_PREFS_PALBUTTONSIZE_SMALL=小 +WESTRING_PREFS_PALBUTTONSIZE_MEDIUM=中 +WESTRING_PREFS_PALBUTTONSIZE_LARGE=大 +WESTRING_PREFS_TRIGCATCOLORS=文本显示颜色(&P) +WESTRING_PREFS_MODELDETAIL=模型细节(&M) +WESTRING_PREFS_ANIMQUALITY=动画质量(&A) +WESTRING_PREFS_TEXQUALITY=纹理质量(&T) +WESTRING_PREFS_PARTICLES=粒子效果(&P) +WESTRING_PREFS_LIGHTS=光线(&L) +WESTRING_PREFS_MATCHWAR3=与游戏图像选项同步(&V) +WESTRING_PREFS_TESTMAPDIFFICULTY=难度级别(&D) +WESTRING_PREFS_TESTMAPPROFILE=玩家名字(&P) +WESTRING_PREFS_TESTMAPFIXEDSEED=固定随机种子(&F) +WESTRING_PREFS_TESTMAPCOPYFILE=地图文件路径(&C) +WESTRING_PREFS_AUTOSCROLL=鼠标滚轴: +WESTRING_PREFS_AUTOSCROLL_OFF=关闭 +WESTRING_PREFS_AUTOSCROLL_VERYSLOW=非常慢 +WESTRING_PREFS_AUTOSCROLL_SLOW=慢速 +WESTRING_PREFS_AUTOSCROLL_MEDIUM=中等 +WESTRING_PREFS_AUTOSCROLL_FAST=快速 +WESTRING_PREFS_AUTOSCROLL_VERYFAST=非常快 +WESTRING_LOW=低 +WESTRING_MEDIUM=中 +WESTRING_HIGH=高 +WESTRING_PREFS_VOLUME_NORMAL=音效音量(&S): +WESTRING_PREFS_VOLUME_UI=UI效果音量(&U): +WESTRING_PREFS_VOLUME_MUSIC=音乐音量(&M): +WESTRING_TRIGCAT_NONE=普通 +WESTRING_TRIGCAT_DISABLED=禁用 +WESTRING_TRIGCAT_TRIG_ENABLED=允许 +WESTRING_TRIGCAT_TRIG_PARTENABLED=部分允许 +WESTRING_TRIGCAT_TRIG_DISABLED=不允许 +WESTRING_TRIGCAT_TRIG_ENABLED_UNUSED=允许(初始关闭) +WESTRING_TRIGCAT_TRIG_PARTENABLED_UNUSED=部分允许(初始关闭) +WESTRING_TRIGCAT_TRIG_DISABLED_UNUSED=禁用(初始关闭) +WESTRING_TRIGCAT_TRIG_CUT=剪切 +WESTRING_TRIGCAT_TRIG_COMMENT=注释 +WESTRING_OE_COLOR_DEFAULT=默认值 +WESTRING_OE_COLOR_FROMMAP=地图数据 +WESTRING_OE_COLOR_FROMCAMPAIGN=战役数据 +WESTRING_TRIGCAT_PREFIX_TRIGGER=触发编辑器 - 触发器 +WESTRING_TRIGCAT_PREFIX_FUNCTION=触发编辑器 - 功能 +WESTRING_TRIGCAT_PREFIX_OEFIELD=物体编辑器 +WESTRING_TRIGCAT_ALL=- 全部 +WESTRING_TRIGCAT_SEARCH= -查找 ---> +WESTRING_TRIGCAT_UNCAT=- 普通 +WESTRING_NOFUNCTIONSFOUND=没有符合的函数 +WESTRING_GAMECAMERALOCK=游戏镜头 +WESTRING_GAMEVIEWLOCK=游戏显示设置 +WESTRING_MINIMUM=最小 +WESTRING_MAXIMUM=最大 +WESTRING_USECUSTOMFORCES=自定义队伍设置(&C) +WESTRING_USECUSTOMPLAYERS=固定玩家设置(&F) +WESTRING_USECUSTOMTECHTREE=自定义科技树(&C) +WESTRING_USECUSTOMABILITIES=自定义技能(&C) +WESTRING_USECUSTOMUPGRADES=自定义升级(&C) +WESTRING_ALLYPRI_CUSTOM=修改联盟优先权(&M) +WESTRING_ALLYPRI_PRIORITYHIGH=高优先权 +WESTRING_ALLYPRI_PRIORITYLOW=低优先权 +WESTRING_ALLYPRI_PRIORITYNONE=无 +WESTRING_EDITPROPERTIES=编辑属性 +WESTRING_PASTEMODE=粘贴物体 +WESTRING_UPGRADESRACE=种族 +WESTRING_SELECTALLPLAYERS=选择所有玩家(S) +WESTRING_UPGRADE_UNAVAILABLE=不可取得 +WESTRING_UPGRADE_AVAILABLE=可取得 +WESTRING_UPGRADE_RESEARCHED=已研究 +WESTRING_TECHTREERACE=种族 +WESTRING_TECHTREETYPE=类型 +WESTRING_TECHTYPE_NORMAL=单位 +WESTRING_TECHTYPE_HERO=英雄 +WESTRING_TECHTYPE_BUILDING=建筑 +WESTRING_TECHTYPE_SPECIAL=特殊 +WESTRING_TECHTYPE_ITEM=物品 +WESTRING_TECHTREENAMELABEL=单位名 +WESTRING_TECHTREEAVAILABLELABEL=可取得 +WESTRING_ABILTYPE_UNIT=单位 +WESTRING_ABILTYPE_HERO=英雄 +WESTRING_ABILTYPE_ITEM=物品 +WESTRING_ABILCUST_ALL=所有 +WESTRING_ABILCUST_STANDARD=标准 +WESTRING_ABILCUST_CUSTOM=自定义 +WESTRING_BUFFTYPE_BUFF=魔法效果 +WESTRING_BUFFTYPE_EFFECT=区域效果 +WESTRING_ABILITYNAMELABEL=技能 +WESTRING_UPGRADENAMELABEL=科技 +WESTRING_FORCEPROPS_ADD=添加队伍(&A) +WESTRING_FORCEPROPS_REMOVE=移除队伍(&E) +WESTRING_FORCEPROPS_RENAME=重命名队伍(&M) +WESTRING_EDITVARIABLES=编辑变量(&E) +WESTRING_NOVARSDEFINED=没有该类型的变量 +WESTRING_NOGENVARSDEFINED=没有该类型的变量存在 +WESTRING_GVD_NOVALUE=- 没有 - +WESTRING_UPROPS_DROPTABLE_TOTCHANCE=总概率 +WESTRING_SELECTION_MULTIPLE=多种类型 +WESTRING_VARIES="" +WESTRING_STAT_MELEE=对战地图 +WESTRING_STAT_MELEEFAILURE=这张地图将不再作为对战地图因为 +WESTRING_YES=是 +WESTRING_NO=否 +WESTRING_UPGRADE=升级 +WESTRING_CAMPAL_RESIZEHINT=提高窗口角度来显示镜头值 +WESTRING_RANDOM_UNIT=随机单位 +WESTRING_RANDOM_BUILDING=随机建筑 +WESTRING_RANDOM_ITEM=随机物品 +WESTRING_VERBOSETOOLTIPS=在单位面板中显示详细提示(&V) +WESTRING_PREFS_SKYMODEL=显示天空(&K) +WESTRING_LOADING_IMAGE=载入画面图片 +WESTRING_PLACED=放置 +WESTRING_ALLOWED=允许 +WESTRING_CHOOSECOLOR=选择一种颜色 +WESTRING_REMINDER=提示 +WESTRING_VARIABLES=变量 +WESTRING_SOUNDS=声音 +WESTRING_SHOWNEUTRALICONS=显示中立建筑图标 +WESTRING_SHOWCREEPCAMPS=显示中立生物图标 +WESTRING_VIEWGAMEMINIMAP=察看游戏小地图 +WESTRING_CHOOSEICON=选择图标(&C) +WESTRING_CHOOSEMODEL=选择模型(&C) +WESTRING_ICONDLG_SHOWRAWVAL=显示文件路径 +WESTRING_COMPILE_ERROR_SING=%d 编译错误 +WESTRING_COMPILE_ERROR_MULT=%d 编译错误 +WESTRING_SCRIPTERRORS_LINE=行数: +WESTRING_ADJUSTCLIFFLEVELS=输入悬崖层面 +WESTRING_DOODPAL_USERLIST=用户-指定 + +WESTRING_MODEL_CHECKCUBE_1=紫色方块 +WESTRING_MODEL_CHECKCUBE_2=绿色方块 +WESTRING_MODEL_CAMERA=镜头对象 +WESTRING_MODEL_QUESTION=问号 +WESTRING_MODEL_EXCLAMATION=感叹号 +//#LINENOBETA +WESTRING_MODEL_MALFURIONNOSTAG=没有坐骑的玛尔法瑞恩 +//#LINENOBETA +WESTRING_MODEL_VICTORYCINEMATICARTHAS=电影场景 阿尔塞斯vs尤迪安 +//#LINENOBETA +WESTRING_MODEL_VICTORYCINEMATICILLIDAN=电影模型 尤迪安 +WESTRING_MODEL_RUNE=符文石 + +WESTRING_ICON_INVALID=未知物体 +WESTRING_ICON_MINIMAP_GOLD=小地图 - 黄金 +WESTRING_ICON_MINIMAP_BUILDING=小地图 - 建筑 +WESTRING_ICON_MINIMAP_STARTLOC=小地图 - 开始点 +WESTRING_ICON_MINIMAP_CREEPS1=小地图 - 中立生物营地 (小) +WESTRING_ICON_MINIMAP_CREEPS2=小地图 - 中立生物营地 (大) +WESTRING_ICON_MULTIPLE_UNITS=多个单位 +WESTRING_ICON_MULTIPLE_DOODADS=多个装饰物 +WESTRING_ICON_FORCE=队伍 +WESTRING_ICON_ITEMSET=物品设置 +WESTRING_ICON_ALLY_HIGH=联盟优先权 - 高 +WESTRING_ICON_ALLY_LOW=联盟优先权 - 低 +WESTRING_ICON_ALLY_NONE=联盟优先权 - 无 +WESTRING_ICON_DOODCAT_PROPS=装饰物 - 道具 +WESTRING_ICON_DOODCAT_STRUCT=装饰物 - 建筑 +WESTRING_ICON_DOODCAT_WATER=装饰物 - 水 +WESTRING_ICON_DOODCAT_CLIFF=装饰物 - 悬崖/地形 +WESTRING_ICON_DOODCAT_ENV=装饰物 - 环境 +WESTRING_ICON_DOODCAT_CINEMA=装饰物 - 电影 +WESTRING_ICON_DOODCAT_DEST=装饰物 - 树木/可破坏物 +WESTRING_ICON_DOODCAT_BRIDGE=装饰物 - 桥/斜坡 +WESTRING_ICON_DWARFIN=矮人入 +WESTRING_ICON_DWARFOUT=矮人出 +WESTRING_ICON_ACORN=橡树果实 +WESTRING_ICON_MINIMAPENTRANCE=小地图入口 +WESTRING_ICON_MINIMAPENTRANCESMALL=小地图入口(小) +WESTRING_ICON_SCORESCREEN_NAGA=计分屏玩家 - 娜迦族 +WESTRING_ICON_SCORESCREEN_BLOODELF=计分屏玩家 - 血精灵 + +WESTRING_CONFIGCONTROLS=快捷键设置 +WESTRING_CONFIGCONTROLS_RESET=重设 %s 到默认快捷键设置 + +WESTRING_BATCHRESAVE_CHOOSEDIR=选择批量重存目录 +WESTRING_BATCHRESAVE_PROGRESS=重新存盘 +WESTRING_BATCHRESAVE_STOP=停止 + +WESTRING_MODIFYTEXTURES=修改地形设置 +WESTRING_MODTEX_BASETILESET=基础地形设置 +WESTRING_MODTEX_SHIFTLEFT=左移(&L) +WESTRING_MODTEX_SHIFTRIGHT=右移(&R) +WESTRING_MODTEX_REMOVETILE=删除地形(&E) +WESTRING_MODTEX_SPACEUSED=使用纹理数量 +WESTRING_MODTEX_SPACELEFT=可用纹理数量 +WESTRING_MODTEX_CLIFFNOTE="注意: 悬崖地形(红)无法添加、删除或替换." +WESTRING_MODTEX_USECUSTOM=使用自定义地形设置(&C) +WESTRING_MODTEX_ADDITIONALTEX=额外地形纹理 +WESTRING_MODTEX_ADDTILE=添加地形(&A) +WESTRING_MODTEX_REPLACETILE=替换地形(&T) + +WESTRING_REPLACE_CLIFFTYPE=替换悬崖类型 +WESTRING_REPLACE_CLIFFTYPE_OLD=旧悬崖类型: +WESTRING_REPLACE_CLIFFTYPE_NEW=新悬崖类型: +WESTRING_REPLACE_CLIFFTYPE_SWAP=双向替换悬崖类型 + +WESTRING_REPLACE_TILES=替换地形 +WESTRING_REPLACE_TILES_OLD=旧地形: +WESTRING_REPLACE_TILES_NEW=新地形: +WESTRING_REPLACE_TILES_SWAP=双向替换地形 + +WESTRING_REPLACE_DOODADS=替换地形装饰物 +WESTRING_REPLACE_DOODADS_OLD=旧装饰物类型: +WESTRING_REPLACE_DOODADS_NEW=新装饰物类型: +WESTRING_REPLACE_DOODADS_SWAP=双向替换装饰物类型 +WESTRING_REPLACE_DOODADS_SELONLY=只替换选择的装饰物 +WESTRING_REPLACE_DOODADS_RESETVAR=重设装饰物样式 + +WESTRING_REPLACE_UNITS=替换单位 +WESTRING_REPLACE_UNITS_OLD=旧单位类型: +WESTRING_REPLACE_UNITS_NEW=新单位类型: +WESTRING_REPLACE_UNITS_SWAP=双向替换单位类型 +WESTRING_REPLACE_UNITS_SELONLY=只替换选择的单位 + +WESTRING_TRIGSUBFUNC_FORLOOPACTIONS=Loop - 动作 +WESTRING_TRIGSUBFUNC_IFCONDITIONS=If - 条件 +WESTRING_TRIGSUBFUNC_IFTHENACTIONS=Then - 动作 +WESTRING_TRIGSUBFUNC_IFELSEACTIONS=Else - 动作 +WESTRING_TRIGSUBFUNC_ANDORCONDITIONS=条件 + +WESTRING_SELECTOBJ_UNIT=选择一个单位(&S) +WESTRING_SELECTOBJ_ITEM=选择一件物品(&S) +WESTRING_SELECTOBJ_DEST=选择可破坏物(&S) +WESTRING_SELECTOBJ_REGION=选择矩形区域(&S) +WESTRING_SELECTOBJ_CAMERA=选择镜头对象(&S) +WESTRING_OBJTYPE_UNIT=单位 +WESTRING_OBJTYPE_ITEM=物品 +WESTRING_OBJTYPE_DEST=树木/可破坏物 +WESTRING_OBJTYPE_REGION=矩形区域 +WESTRING_OBJTYPE_CAMERA=镜头 + +WESTRING_CREATENEWLEVEL=创建新地图 +WESTRING_NEWMAP_SIZE=地图大小 +WESTRING_NEWMAP_SIZEX=宽度 +WESTRING_NEWMAP_SIZEY=高度 +WESTRING_NEWMAP_PLAYSIZE=可用区域 +WESTRING_NEWMAP_PLAYSIZEX=宽度 +WESTRING_NEWMAP_PLAYSIZEY=高度 +WESTRING_NEWMAP_SIZEDESC=尺寸说明 +WESTRING_NEWMAP_DEFTILE=初始地形 +WESTRING_NEWMAP_DEFCLIFF=初始悬崖高度 +WESTRING_NEWMAP_DEFWATER=初始水位 + +WESTRING_EXPORTMINIMAP=导出小地图 +WESTRING_EXPORTMINIMAP_FILE=图片文件 +WESTRING_EXPORTMINIMAP_SIZE=图片大小 +WESTRING_EXPORTMINIMAP_SMOOTH=图片平滑度 +WESTRING_EXPORTMINIMAP_OPTIONS=选项 +WESTRING_MINIMAPOPT_TERRAIN=包括地形(&T) +WESTRING_MINIMAPOPT_WATER=包括水(&W) +WESTRING_MINIMAPOPT_PATHING=包括路径纹理(&P) +WESTRING_MINIMAPOPT_DOODADS=包括地形装饰物(&D) +WESTRING_MINIMAPOPT_UNITS=包括单位(&U) +WESTRING_MINIMAPOPT_REGIONS=包括矩形区域(&R) +WESTRING_MINIMAPOPT_ICONS=包括预览图标(&I) +WESTRING_MINIMAPOPT_PLAYABLE=仅限可用区域(&A) +WESTRING_MINIMAPOPT_BLIGHT=包括荒芜地表(&B) +WESTRING_MINIMAPOPT_CREEPS=包括中立生物营地图标(&C) + +WESTRING_RANDOMGROUPS=随机组 +WESTRING_RG_GROUPS=组(&R) +WESTRING_RG_ADDGROUP=添加组(&G) +WESTRING_RG_DELGROUP=删除组(&T) +WESTRING_RG_ADDSET=添加设置(&A) +WESTRING_RG_EDITSET=编辑设置(&E) +WESTRING_RG_DELSET=删除设置(&D) +WESTRING_RG_COPYSET=复制设置(&C) +WESTRING_RG_NUMBER=数目 +WESTRING_RG_TYPE=类型 +WESTRING_RGTYPE_UNIT=单位 +WESTRING_RGTYPE_BUILDING=建筑 +WESTRING_RGTYPE_ITEM=物品 +WESTRING_RG_GROUPNAME=组名(&N) +WESTRING_RG_UNTITLEDGROUP=未命名的组 +WESTRING_RG_SET=设置 +WESTRING_RG_CHANCE=几率 +WESTRING_RG_POSITION=位置 +WESTRING_RG_CONFIRM_CHANGETYPE1="这些组的位置正被单位或物品列表使用.|n改变它们的类型将重设当前所用的随机数据.|n|n仍然要继续吗?" +WESTRING_RG_CONFIRM_CHANGETYPE2="改变类型会清空对应位置所有的物体.|n|n仍然要继续吗?" +WESTRING_RG_CONFIRM_DELETEGROUP="这些组的位置正被单位或物品列表使用.|n删除它将重设当前所用的随机数据.|n|n仍然要继续吗?" +WESTRING_RG_CONFIRM_DELETEPOS="这些组的位置正被单位或物品列表使用.|n删除它们将重设当前所用的随机数据.|n|n仍然要继续吗?" +WESTRING_RG_EDITTYPES=编辑类型(&E) +WESTRING_RS_TITLE=随机组设置 +WESTRING_RS_TITLE_TYPES=随机组类型 +WESTRING_RS_TYPELABEL=类型 +WESTRING_RS_OBJECTLABEL=位置 +WESTRING_RS_OBJECTLABEL_SHORT=位置 +WESTRING_RS_EDITOBJ=编辑 +WESTRING_RG_POSITIONS=位置 +WESTRING_RUG_TYPE_ANYCREEP=任何中立敌对单位 +WESTRING_RUG_TYPE_ANYBUILDING=任何中立被动建筑 +WESTRING_RUG_TYPE_ANYITEM=任何物品 +WESTRING_RUG_TYPE_FROMGROUP=来自随机组 +WESTRING_RUG_TYPE_TABLE=使用自定义列表 +WESTRING_RUG_GROUP=随机组(&G) +WESTRING_RUG_GROUPPOS=位置 +WESTRING_RUG_EDITGROUPS=编辑随机组(&E) +WESTRING_RUG_NOGROUPS=未定义随机组 +WESTRING_RUG_NOPOSITIONS=无匹配位置 + +WESTRING_ANYCREEP=随机 %s 中立敌对单位 +WESTRING_ANYNPBUILDING=随机中立被动建筑 +WESTRING_ANYITEM_NOCLASS=随机 %s 物品 +WESTRING_ANYITEM_CLASS=随机 %s %s 物品 +WESTRING_ANY=任何 + +WESTRING_RANDOMGROUP_UNIT_UNKNOWN="组: 未知" +WESTRING_RANDOMGROUP_UNIT="组: %s, 位置 %d" + +WESTRING_RNDDLG_RANDOM=随机(&R) +WESTRING_RNDDLG_RANDGROUP=组(&G) +WESTRING_RNDDLG_SPECIFIC=指定(&S) + +WESTRING_ITEMTABLES=物品列表 +WESTRING_ITEMTABLES_TABLES=列表(&B) +WESTRING_ITEMTABLES_ADDTABLE=添加列表(&A) +WESTRING_ITEMTABLES_DELTABLE=删除列表(&L) +WESTRING_ITEMTABLES_TABLENAME=列表名(&N) +WESTRING_ITEMTABLES_UNTITLEDTABLE=未命名的物品列表 +WESTRING_ITEMTABLES_CONFIRM_DELETETABLE="该列表正被单位或装饰物使用.|n删除它会去除这些物体的物品列表.|n|n仍然要继续吗?" + +WESTRING_ITEMTABLE_CM_SETADD=新设置(&S) +WESTRING_ITEMTABLE_CM_SETDEL=删除设置(&T) +WESTRING_ITEMTABLE_CM_ITEMADD=新物品(&N) +WESTRING_ITEMTABLE_CM_ITEMEDIT=编辑物品(&E) +WESTRING_ITEMTABLE_CM_ITEMDEL=删除物品(&D) +WESTRING_ITEMTABLE_CM_REDISTCHANCES=重新分配几率(&R) + +WESTRING_DPROPS_NAME_MULTIPLE=多种类型 +WESTRING_DPROPS_LIGHTSOURCE=光线来源 + +WESTRING_UPTAB_GENERAL=普通 +WESTRING_UPTAB_RANDOMUNIT=随机单位 +WESTRING_UPTAB_ABILITIES=技能 +WESTRING_UPTAB_INVENTORY=物品栏 +WESTRING_UPTAB_DROPTABLE=掉落物品 +WESTRING_UPTAB_DESCRIPTION=说明 + +WESTRING_UPROPS_HITPOINTS=生命值% +WESTRING_UPROPS_HPINFO=%d +WESTRING_UPROPS_MANA=魔法值 +WESTRING_UPROPS_MPINFO=%d +WESTRING_UPROPS_LEVEL=等级 +WESTRING_UPROPS_LEVELINFO=%d +WESTRING_UPROPS_DEFATTS=使用默认属性(&D) +WESTRING_UPROPS_STR=力量(&S) +WESTRING_UPROPS_AGI=敏捷(&A) +WESTRING_UPROPS_INT=智力(&I) +WESTRING_UPROPS_ROTATION=面向角度 +WESTRING_UPROPS_INVENTORY=物品栏 +WESTRING_UPROPS_INVSLOT=NO. +WESTRING_UPROPS_ABILITIES=技能 +WESTRING_UPROPS_ABILITIES_MULTIPLE=技能 (多种单位类型) +WESTRING_UPROPS_ABILITIES_ACTIVE=激活 +WESTRING_UPROPS_ABILITIES_LEVEL=等级 +WESTRING_UPROPS_ACQUIRERADIUS=单位警戒范围 +WESTRING_UPROPS_AR_NORMAL=普通(&N) +WESTRING_UPROPS_AR_CAMP=营地(&C) +WESTRING_UPROPS_DROPTABLE=死亡掉落物品 +WESTRING_UPROPS_DROPTABLE_FROMMAP=从物品列表中查找 +WESTRING_UPROPS_DROPTABLE_CUSTOM=使用自定义物品列表 +WESTRING_UPROPS_DROPTABLE_TABLEID=物品列表 +WESTRING_UPROPS_DROPTABLE_NOTABLES=未定义物品列表 +WESTRING_UPROPS_DROPTABLE_EDITTABLES=编辑物品列表(&M) +WESTRING_UPROPS_DROPTABLE_NEWSET=新设置(&S) +WESTRING_UPROPS_DROPTABLE_DELETESET=删除设置(&T) +WESTRING_UPROPS_DROPTABLE_NEWITEM=新物品(&N) +WESTRING_UPROPS_DROPTABLE_DELETEITEM=删除物品(&D) +WESTRING_UPROPS_DROPTABLE_EDITITEM=编辑物品(&E) +WESTRING_UPROPS_DROPTABLE_ITEMSET=物品设置 +WESTRING_UPROPS_RANDOMUNITS=随机单位类型(&R) +WESTRING_UPROPS_RANDOMUNITS_NEWITEM=新单位(&N) +WESTRING_UPROPS_RANDOMUNITS_DELETEITEM=删除单位(&D) +WESTRING_UPROPS_RANDOMUNITS_EDITITEM=编辑单位(&E) +WESTRING_UPROPS_RANDOMUNITS_CANTEDITMULTIPLE="无法修改多个随机单位类型的列表.请选择单一单位、建筑或是物品。" +WESTRING_UPROPS_RANDOMUNITS_CHOOSEUNIT=选择单位 +WESTRING_UPROPS_WAYGATEACTIVE=传送门激活 +WESTRING_UPROPS_WAYGATEDEST=目的地 +WESTRING_UPROPS_NOREGIONS=未定义区域 +WESTRING_UPROPS_CUSTOMCOLOR=自定义颜色(&U) + +WESTRING_UPROPS_MULTIPLE=多种设置 +WESTRING_UPROPS_NAME_MULTIPLE=多种类型 +WESTRING_UPROPS_NAME_MULT_SUFFIX=" (数量: %d,总等级: %d)" +WESTRING_UPROPS_DESC_MULTIPLE=请选择单一物品并在这里察看说明 +WESTRING_UPROPS_HPINFO_MULTIPLE=最大值可变 +WESTRING_UPROPS_AR_NORMAL_MULTIPLE=可变 +WESTRING_UPROPS_INVENTORY_MULTIPLE=WESTRING_UPROPS_MULTIPLE +WESTRING_UPROPS_DROPTABLE_MULTIPLE=WESTRING_UPROPS_MULTIPLE +WESTRING_UPROPS_RANDOMUNITS_MULTIPLE=WESTRING_UPROPS_MULTIPLE + +WESTRING_DPTAB_GENERAL=普通 +WESTRING_DPTAB_DROPTABLE=掉落物品 + +WESTRING_DPROPS_HPINFO_MULTIPLE=最大值可变 +WESTRING_DPROPS_HPINFO=%d + +WESTRING_MISCDATADLG_TITLE=游戏平衡性常数 +WESTRING_SKINDATADLG_TITLE=游戏界面 +WESTRING_MISCDATADLG_USECUSTOMDATA=使用自定义平衡性常数 +WESTRING_SKINDATADLG_USECUSTOMDATA=使用自定义游戏界面 +WESTRING_MISCDATADLG_FIELDNAME=名字 +WESTRING_MISCDATADLG_FIELDVALUE=值 +WESTRING_MISCDATADLG_EDITVALUE=编辑平衡性常数 - %s +WESTRING_SKINDATADLG_EDITVALUE=编辑游戏界面 - %s +WESTRING_MISCDATADLG_EDITBUTTON=编辑值(&E) +WESTRING_MISCDATADLG_RESETBUTTON=重设值(&R) +WESTRING_MISCDATADLG_CM_EDITVAL=编辑值(&E) +WESTRING_MISCDATADLG_CM_RESETVAL=重设值(&R) +WESTRING_MISCDATADLG_DISPLAYRAWDATA=使用原始数据显示(&D) + +WESTRING_AUTOFILL_TITLE=自动等级填充 +WESTRING_AUTOFILL_STARTLEVEL=开始等级: +WESTRING_AUTOFILL_STARTVALUE=基础值: +WESTRING_AUTOFILL_FACTORPREVIOUS=上一个值因素: +WESTRING_AUTOFILL_FACTORLEVEL=等级因素: +WESTRING_AUTOFILL_FACTORCONSTANT=固定因素: +WESTRING_AUTOFILL_PREVIEW=预览: +WESTRING_AUTOFILL_PREVIEW_LEVEL=等级 +WESTRING_AUTOFILL_PREVIEW_VALUE=值 +WESTRING_AUTOFILL_STRINGVALUE=基础文本: +WESTRING_AUTOFILL_LEVELREPLACE=用等级替代: + +WESTRING_FINDDLG_TITLE=查找 +WESTRING_FINDDLG_FIND=查找: +WESTRING_FINDDLG_CASESENS=区分大小写 + +WESTRING_OP_FIELDNAME=名字 +WESTRING_OP_FIELDVALUE=值 + +WESTRING_SE_EXPORTAS=导出触发器数据 +WESTRING_UE_EXPORTAS=导出单位数据 +WESTRING_UE_FIELDNAME=名字 +WESTRING_UE_FIELDVALUE=值 +WESTRING_UE_STANDARDUNITS=标准单位 +WESTRING_UE_CAMPAIGNUNITS=战役单位 +WESTRING_UE_CUSTOMUNITS=自定义单位 +WESTRING_UE_CREATECUSTOMUNIT=新建自定义单位 +WESTRING_UE_BASEUNIT=基础单位(&B) +WESTRING_UE_NEWITEM=添加%s(&A) +WESTRING_UE_EDITITEM=编辑%s(&E) +WESTRING_UE_DELETEITEM=删除%s(&D) +WESTRING_UE_MOVEUPITEM=上移%s(&U) +WESTRING_UE_MOVEDOWNITEM=下移%s(&D) +WESTRING_UE_ENTERSTRING=输入字符串 +WESTRING_UE_ENTERNUMBER=输入数目 +WESTRING_UE_CHOOSEUNIT=选择单位 +WESTRING_UE_CHOOSEITEM=选择物品 + +WESTRING_IE_EXPORTAS=导出物品数据 +WESTRING_IE_FIELDNAME=名字 +WESTRING_IE_FIELDVALUE=值 +WESTRING_IE_STANDARDITEMS=标准物品 +WESTRING_IE_CAMPAIGNITEMS=战役物品 +WESTRING_IE_CUSTOMITEMS=自定义物品 +WESTRING_IE_CREATECUSTOMITEM=新建自定义物品 +WESTRING_IE_BASEITEM=基础物品(&B) +WESTRING_IE_NEWITEM=添加%s +WESTRING_IE_EDITITEM=编辑%s +WESTRING_IE_DELETEITEM=删除%s +WESTRING_IE_MOVEUPITEM=上移%s +WESTRING_IE_MOVEDOWNITEM=下移%s +WESTRING_IE_ENTERSTRING=输入字符串 +WESTRING_IE_CHOOSEUNIT=选择单位 +WESTRING_IE_CHOOSEITEM=选择物品 + +WESTRING_BE_EXPORTAS=导出可破坏物数据 +WESTRING_BE_FIELDNAME=名字 +WESTRING_BE_FIELDVALUE=值 +WESTRING_BE_STANDARDDESTS=标准可破坏物 +WESTRING_BE_CAMPAIGNDESTS=战役可破坏物 +WESTRING_BE_CUSTOMDESTS=自定义可破坏物 +WESTRING_BE_CREATECUSTOMDEST=新建自定义可破坏物 +WESTRING_BE_BASEDEST=基础可破坏物(&B) +WESTRING_BE_NEWITEM=添加%s +WESTRING_BE_EDITITEM=编辑%s +WESTRING_BE_DELETEITEM=删除%s +WESTRING_BE_MOVEUPITEM=上移%s +WESTRING_BE_MOVEDOWNITEM=下移%s +WESTRING_BE_ENTERSTRING=输入字符串 + +WESTRING_DE_EXPORTAS=导出地形装饰物数据 +WESTRING_DE_FIELDNAME=名字 +WESTRING_DE_FIELDVALUE=值 +WESTRING_DE_STANDARDDOODS=标准地形装饰物 +WESTRING_DE_CAMPAIGNDOODS=战役地形装饰物 +WESTRING_DE_CUSTOMDOODS=自定义装饰物 +WESTRING_DE_CREATECUSTOMDOOD=新建自定义装饰物 +WESTRING_DE_BASEDOOD=基础地形装饰物(&B) +WESTRING_DE_NEWITEM=添加%s +WESTRING_DE_EDITITEM=编辑%s +WESTRING_DE_DELETEITEM=删除%s +WESTRING_DE_MOVEUPITEM=上移%s +WESTRING_DE_MOVEDOWNITEM=下移%s +WESTRING_DE_ENTERSTRING=输入字符串 + +WESTRING_AE_EXPORTAS=导出技能数据 +WESTRING_AE_FIELDNAME=名字 +WESTRING_AE_FIELDVALUE=值 +WESTRING_AE_STANDARDABILS=标准技能 +WESTRING_AE_CAMPAIGNABILS=战役技能 +WESTRING_AE_CUSTOMABILS=自定义技能 +WESTRING_AE_ITEMS=物品 +WESTRING_AE_CREATECUSTOMABIL=新建自定义技能 +WESTRING_AE_BASEABIL=基础技能(&B) +WESTRING_AE_NEWITEM=添加%s +WESTRING_AE_EDITITEM=编辑%s +WESTRING_AE_DELETEITEM=删除%s +WESTRING_AE_MOVEUPITEM=上移%s +WESTRING_AE_MOVEDOWNITEM=下移%s +WESTRING_AE_ENTERSTRING=输入字符串 +WESTRING_AE_CHOOSEUNIT=选择单位 + +WESTRING_FE_EXPORTAS=导出魔法效果数据 +WESTRING_FE_FIELDNAME=名字 +WESTRING_FE_FIELDVALUE=值 +WESTRING_FE_STANDARDBUFFS=标准魔法效果 +WESTRING_FE_CAMPAIGNBUFFS=战役魔法效果 +WESTRING_FE_CUSTOMBUFFS=自定义魔法效果 +WESTRING_FE_ITEMS=物品 +WESTRING_FE_CREATECUSTOMBUFF=新建自定义效果 +WESTRING_FE_BASEBUFF=基础魔法效果 +WESTRING_FE_NEWITEM=添加%s +WESTRING_FE_EDITITEM=编辑%s +WESTRING_FE_DELETEITEM=删除%s +WESTRING_FE_MOVEUPITEM=上移%s +WESTRING_FE_MOVEDOWNITEM=下移%s +WESTRING_FE_ENTERSTRING=输入字符串 +WESTRING_FE_CHOOSEUNIT=选择单位 + +WESTRING_GE_EXPORTAS=导出科技数据 +WESTRING_GE_FIELDNAME=名字 +WESTRING_GE_FIELDVALUE=值 +WESTRING_GE_STANDARDUPGRS=标准科技 +WESTRING_GE_CAMPAIGNUPGRS=战役科技 +WESTRING_GE_CUSTOMUPGRS=自定义科技 +WESTRING_GE_CREATECUSTOMUPGR=新建自定义科技 +WESTRING_GE_BASEUPGR=基础科技(&B) +WESTRING_GE_NEWITEM=添加%s +WESTRING_GE_EDITITEM=编辑%s +WESTRING_GE_DELETEITEM=删除%s +WESTRING_GE_MOVEUPITEM=上移%s +WESTRING_GE_MOVEDOWNITEM=下移%s +WESTRING_GE_ENTERSTRING=输入字符串 + +WESTRING_CHOOSEUPGRADE=选择科技 +WESTRING_CHOOSEABILITY=选择技能 +WESTRING_CHOOSEBUFF=选择魔法效果 +WESTRING_CHOOSETECHITEM=选择科技项目 +WESTRING_ABILITY=技能 +WESTRING_UPGRADE=科技 +WESTRING_TECHITEM=科技项目 +WESTRING_TECHITEMTYPE_UNIT=单位 +WESTRING_TECHITEMTYPE_UPGR=科技 +WESTRING_TECHITEMTYPE_EQUIV=等价物 + +WESTRING_SPECEQUIV_HERO=任何英雄 +WESTRING_SPECEQUIV_TALT=任何祭坛 +WESTRING_SPECEQUIV_TWN1=任何等级 1 基地 +WESTRING_SPECEQUIV_TWN2=任何等级 2 基地 +WESTRING_SPECEQUIV_TWN3=任何等级 3 基地 +WESTRING_SPECEQUIV_TWN4=任何等级 4 基地 +WESTRING_SPECEQUIV_TWN5=任何等级 5 基地 +WESTRING_SPECEQUIV_TWN6=任何等级 6 基地 +WESTRING_SPECEQUIV_TWN7=任何等级 7 基地 +WESTRING_SPECEQUIV_TWN8=任何等级 8 基地 +WESTRING_SPECEQUIV_TWN9=任何等级 9 基地 + +WESTRING_COD_TYPE_INT=整数 +WESTRING_COD_TYPE_REAL=实数 +WESTRING_COD_TYPE_UNREAL=实数 +WESTRING_COD_TYPE_STRING=字符串 +WESTRING_COD_TYPE_BOOL=布尔值 +WESTRING_COD_TYPE_CHAR=快捷键 +WESTRING_COD_TYPE_UNIT=单位 +WESTRING_COD_TYPE_ITEM=物品 +WESTRING_COD_TYPE_UNITCLASS=单位类别 +WESTRING_COD_TYPE_UNITLIST=单位列表 +WESTRING_COD_TYPE_ITEMLIST=物品列表 +WESTRING_COD_TYPE_REGENTYPE=回复类型 +WESTRING_COD_TYPE_ATTACKTYPE=攻击类型 +WESTRING_COD_TYPE_WEAPONTYPE=武器类型 +WESTRING_COD_TYPE_TARGETLIST=目标类型 +WESTRING_COD_TYPE_MOVEMENTTYPE=移动类型 +WESTRING_COD_TYPE_DEFENSETYPE=防御类型 +WESTRING_COD_TYPE_DEFENSETYPEINT=WESTRING_COD_TYPE_DEFENSETYPE +WESTRING_COD_TYPE_PATHINGTEXTURE=路径纹理 +WESTRING_COD_TYPE_UPGRADE=科技 +WESTRING_COD_TYPE_UPGRADELIST=科技列表 +WESTRING_COD_TYPE_STRINGLIST=字符串列表 +WESTRING_COD_TYPE_ABILITY=技能 +WESTRING_COD_TYPE_ABILITYLIST=技能列表 +WESTRING_COD_TYPE_HEROABILITY=英雄技能 +WESTRING_COD_TYPE_HEROABILITYLIST=英雄技能列表 +WESTRING_COD_TYPE_ATTRIBUTETYPE=英雄属性 +WESTRING_COD_TYPE_ATTACKBITS=攻击 +WESTRING_COD_TYPE_UPGRADECLASS=升级类型 +WESTRING_COD_TYPE_UPGRADEEFFECT=科技效果 +WESTRING_COD_TYPE_DESTRUCTABLECATEGORY=类别 +WESTRING_COD_TYPE_DOODADCATEGORY=类别 +WESTRING_COD_TYPE_TILESETLIST=地形列表 +WESTRING_COD_TYPE_UNITICON=单位图标 +WESTRING_COD_TYPE_UNITSOUND=单位声音 +WESTRING_COD_TYPE_ABILICON=技能图标 +WESTRING_COD_TYPE_UPGRICON=科技图标 +WESTRING_COD_TYPE_UNITCODE=单位类型 +WESTRING_COD_TYPE_ABILCODE=技能 +WESTRING_COD_TYPE_UPGRADECODE=科技 +WESTRING_COD_TYPE_MODEL=模型 +WESTRING_COD_TYPE_ICON=图标 +WESTRING_COD_TYPE_INTLIST=整数列表 +WESTRING_COD_TYPE_UNREALLIST=实数列表 +WESTRING_COD_TYPE_PATHINGLIST_PREVENT=路径类型 +WESTRING_COD_TYPE_PATHINGLIST_REQUIRE=路径类型 +WESTRING_COD_TYPE_UNITRACE=单位种族 +WESTRING_COD_TYPE_DETECTIONTYPE=侦察类型 +WESTRING_COD_TYPE_DEFENSETABLE=防御列表 +WESTRING_COD_TYPE_ATTACKTABLE=攻击列表 +WESTRING_COD_TYPE_ITEMCLASS=物品分类 +WESTRING_COD_TYPE_ARMORTYPE=装甲类型 +WESTRING_COD_TYPE_DEATHTYPE=死亡类型 +WESTRING_COD_TYPE_UBERSPLAT=地面纹理 +WESTRING_COD_TYPE_SHADOWTEXTURE=阴影纹理 +WESTRING_COD_TYPE_SHADOWIMAGE=阴影图像 +WESTRING_COD_TYPE_TEAMCOLOR=队伍颜色 +WESTRING_COD_TYPE_AIBUFFER=AI识别类型 +WESTRING_COD_TYPE_COMBATSOUND=战斗声音 +WESTRING_COD_TYPE_SOUNDLABEL=声音设置 +WESTRING_COD_TYPE_TEXTURE=纹理 +WESTRING_COD_TYPE_TECHLIST=科技树需求列表 +WESTRING_COD_TYPE_MORPHFLAGS=变形参数 +WESTRING_COD_TYPE_SILENCEFLAGS=禁止类型 +WESTRING_COD_TYPE_STACKFLAGS=叠加类型 +WESTRING_COD_TYPE_INTERACTFLAGS=选择单位类型 +WESTRING_COD_TYPE_PICKFLAGS=建筑类型 +WESTRING_COD_TYPE_MODELLIST=模型列表 +WESTRING_COD_TYPE_ORDERSTRING=命令字符串 +WESTRING_COD_TYPE_MUSICFILE=音乐文件 +WESTRING_COD_TYPE_VERSIONFLAGS=版本 +WESTRING_COD_TYPE_FULLFLAGS=可用性选项 +WESTRING_COD_TYPE_CHANNELTYPE=技能目标类型 +WESTRING_COD_TYPE_BUFFLIST=魔法效果列表 +WESTRING_COD_TYPE_EFFECTLIST=特效列表 +WESTRING_COD_TYPE_SPELLDETAIL=魔法细节设置 +WESTRING_COD_TYPE_TECHAVAIL=科技可用性 +WESTRING_COD_TYPE_LIGHTNINGEFFECT=闪电效果 +WESTRING_COD_TYPE_LIGHTNINGLIST=闪电效果 +WESTRING_COD_TYPE_CHANNELFLAGS=通魔选项 + +WESTRING_SOUNDDBTYPE_UNITACK=单位 +WESTRING_SOUNDDBTYPE_UNITCOMBAT=战斗 +WESTRING_SOUNDDBTYPE_UI=界面 +WESTRING_SOUNDDBTYPE_AMBIENCE=环境 +WESTRING_SOUNDDBTYPE_ANIM=动画 +WESTRING_SOUNDDBTYPE_ABILITY=技能 +WESTRING_SOUNDDBTYPE_DIALOG=对话 + +WESTRING_UE_DLG_EDITVALUE=编辑单位值 - %s +WESTRING_IE_DLG_EDITVALUE=编辑物品值 - %s +WESTRING_AE_DLG_EDITVALUE=编辑技能值 - %s +WESTRING_FE_DLG_EDITVALUE=编辑效果值 - %s +WESTRING_BE_DLG_EDITVALUE=编辑可破坏物值 - %s +WESTRING_DE_DLG_EDITVALUE=编辑装饰物值 - %s +WESTRING_GE_DLG_EDITVALUE=编辑科技值 - %s + +WESTRING_OE_DLG_PRESET=选择: +WESTRING_OE_DLG_IMPORT=导入: +WESTRING_OE_DLG_CUSTOM=自定义: +WESTRING_OE_DLG_NOIMPORTS=没有合适的外部导入文件 +WESTRING_IMPORTMENU_CAMPAIGN_SUFFIX= (战役) + +WESTRING_OE_TYPECAT_UNIT=单位 +WESTRING_OE_TYPECAT_UNIT_MSSL=单位 - 投射物 +WESTRING_OE_TYPECAT_UNIT_SPEC=单位 - 特殊 +WESTRING_OE_TYPECAT_ITEM=物品 +WESTRING_OE_TYPECAT_ABIL=技能 +WESTRING_OE_TYPECAT_BUFF=魔法效果 +WESTRING_OE_TYPECAT_UPGR=科技 +WESTRING_OE_TYPECAT_DEST=可破坏物 +WESTRING_OE_TYPECAT_DOOD=地形装饰物 +WESTRING_OE_TYPECAT_SPWN=产出特效 +WESTRING_OE_TYPECAT_SKIN=游戏界面 +WESTRING_OE_TYPECAT_XTRA=其它 + +WESTRING_OE_TYPECAT_SUFFIX_CASTER= <施法者> +WESTRING_OE_TYPECAT_SUFFIX_TARGET= <目标> +WESTRING_OE_TYPECAT_SUFFIX_SPECIAL= <特殊> +WESTRING_OE_TYPECAT_SUFFIX_EFFECT= <效果> +WESTRING_OE_TYPECAT_SUFFIX_AREAEFFECT= <区域> +WESTRING_OE_TYPECAT_SUFFIX_MISSILE= <投射物> +WESTRING_OE_TYPECAT_SUFFIX_NORMAL= <普通> +WESTRING_OE_TYPECAT_SUFFIX_TURNOFF= <关闭> +WESTRING_OE_TYPECAT_SUFFIX_RESEARCH= <研究> +WESTRING_OE_TYPECAT_SUFFIX_DEAD= <死亡> +WESTRING_OE_TYPECAT_SUFFIX_SCORESCREEN= <计分屏> +WESTRING_OE_TYPECAT_SUFFIX_BUFF= +WESTRING_OE_TYPECAT_SUFFIX_DOODBASE= <基础> +WESTRING_OE_TYPECAT_SUFFIX_DOODVAR= <样式 %d> + +WESTRING_SNE_SOUNDS=声音 +WESTRING_SNE_MUSIC=音乐 +WESTRING_SNE_INTERNAL=内部 +WESTRING_SNE_IMPORTED=输入 +WESTRING_SNE_FILENAME=文件名 +WESTRING_SNE_VARNAME=变量名 +WESTRING_SNE_LENGTH=长度 +WESTRING_SNE_EXPORTSOUNDAS=输出声音 +WESTRING_SNE_FORMAT_WAV="WAV - %.3f kHz, %d bit, %d %s" +WESTRING_SNE_FORMAT_MP3="MP3 - %.3f kHz, %d kbps, %s, layer %d" +WESTRING_SNE_MPEG1=MPEG1 +WESTRING_SNE_MPEG2=MPEG2 +WESTRING_SNE_CHANNEL=channel +WESTRING_SNE_CHANNELS=channels + +WESTRING_SOUNDPROPS=声音属性 +WESTRING_SNDPROPS_FILE=文件 +WESTRING_SNDPROPS_PATH=路径 +WESTRING_SNDPROPS_FORMAT=格式 +WESTRING_SNDPROPS_LENGTH=长度 +WESTRING_SNDPROPS_VARIABLE=变量(&A) +WESTRING_SNDPROPS_OPTIONS=选项 +WESTRING_SNDPROPS_LOOPING=循环(&L) +WESTRING_SNDPROPS_3DSOUND=3D音效(&3) +WESTRING_SNDPROPS_STOPOOR=超出范围时停止(&S) +WESTRING_SNDPROPS_FADEINRATE=淡入率(&I) +WESTRING_SNDPROPS_FADEOUTRATE=淡出率(&F) +WESTRING_SNDPROPS_EFFECT=效果(&E) +WESTRING_SNDPROPS_VOLUME=音量(&V) +WESTRING_SNDPROPS_PITCH=速率(&P) +WESTRING_SNDPROPS_MINDIST=最小衰减范围(&N) +WESTRING_SNDPROPS_MAXDIST=最大衰减范围(&X) +WESTRING_SNDPROPS_DISTCUT=截断距离(&D) +WESTRING_SNDPROPS_CHANNEL=通道(&C) + +WESTRING_SOUNDCHANNEL_GENERAL=普通 +WESTRING_SOUNDCHANNEL_UNITSELECT=单位选择 +WESTRING_SOUNDCHANNEL_UNITACK=单位确认 +WESTRING_SOUNDCHANNEL_UNITMOVE=单位移动 +WESTRING_SOUNDCHANNEL_UNITREADY=单位准备 +WESTRING_SOUNDCHANNEL_COMBAT=战斗 +WESTRING_SOUNDCHANNEL_ERROR=错误 +WESTRING_SOUNDCHANNEL_MUSIC=音乐 +WESTRING_SOUNDCHANNEL_UI=用户界面 +WESTRING_SOUNDCHANNEL_LOOPMOVE=循环移动 +WESTRING_SOUNDCHANNEL_LOOPAMB=循环环境 +WESTRING_SOUNDCHANNEL_ANIM=动画 +WESTRING_SOUNDCHANNEL_CONSTRUCTION=建筑 +WESTRING_SOUNDCHANNEL_BIRTH=出生 +WESTRING_SOUNDCHANNEL_FIRE=火焰 + +WESTRING_SNDENV_DEFAULT=山峰 +WESTRING_SNDENV_DUNGEON=地下城 +WESTRING_SNDENV_FOREST=森林 +WESTRING_SNDENV_LAKE=湖泊 +WESTRING_SNDENV_PSYCHOTIC=精神~ + +WESTRING_EAX_DEFAULT=默认 +WESTRING_EAX_COMBAT=战斗 +WESTRING_EAX_KOTODRUMS=战鼓 +WESTRING_EAX_SPELLS=魔法 +WESTRING_EAX_MISSILES=投射物 +WESTRING_EAX_HERO=英雄语音 +WESTRING_EAX_DOODADS=装饰物 + +WESTRING_OM_VIEW_MAPSUMMARY=地图概况 +WESTRING_OM_VIEW_UNITS=单位 +WESTRING_OM_VIEW_ITEMS=物品 +WESTRING_OM_VIEW_DOODADS=地形装饰物 +WESTRING_OM_VIEW_REGIONS=矩形区域 +WESTRING_OM_VIEW_CAMERAS=镜头 +WESTRING_OM_VIEW_TRIGGERS=触发器 +WESTRING_OM_VIEW_FUNCTIONS=函数 +WESTRING_OM_VIEW_VARIABLES=变量 +WESTRING_OM_VIEW_SOUNDS=声音 + +WESTRING_OM_MSROW_MAPNAME=地图名 +WESTRING_OM_MSROW_MAPSIZE=可用地图大小 +WESTRING_OM_MSROW_MAPSIZEDESC=地图尺寸说明 +WESTRING_OM_MSROW_TILESET=地形设置 +WESTRING_OM_MSROW_EXPREQ=资料片 +WESTRING_OM_MSROW_MAPTYPE=地图类型 +WESTRING_OM_MSROW_UNITS_TOT=单位总数 +WESTRING_OM_MSROW_UNITS=单位(%s) +WESTRING_OM_MSROW_ITEMS=物品 +WESTRING_OM_MSROW_DEST=可破坏物 +WESTRING_OM_MSROW_DOOD=地形装饰物 +WESTRING_OM_MSROW_REGIONS=矩形区域 +WESTRING_OM_MSROW_CAMERAS=镜头 +WESTRING_OM_MSROW_TRIGGERS=触发器 +WESTRING_OM_MSROW_VARIABLES=变量 +WESTRING_OM_MSROW_SOUNDS=声音 +WESTRING_OM_MSROW_CUSTOM_TOTAL=自定义对象(全部) +WESTRING_OM_MSROW_CUSTOM_UNIT=自定义单位 +WESTRING_OM_MSROW_CUSTOM_ITEM=自定义物品 +WESTRING_OM_MSROW_CUSTOM_DEST=自定义可破坏物 +WESTRING_OM_MSROW_CUSTOM_DOOD=自定义装饰物 +WESTRING_OM_MSROW_CUSTOM_ABIL=自定义技能 +WESTRING_OM_MSROW_CUSTOM_BUFF=自定义魔法效果 +WESTRING_OM_MSROW_CUSTOM_UPGR=自定义科技 + +WESTRING_CUSTOM=自定义 +WESTRING_MELEE=对战 +WESTRING_CAMPAIGN=战役 +WESTRING_EXPANSIONBECAUSE=该地图只用于资料片因为 +WESTRING_OM_NUMBERWITHMAX=%d (最大: %d) +WESTRING_OM_SUPPLY_NOPROD= (已使用人口: %d) +WESTRING_OM_SUPPLY_PROD= (已使用人口: %d/%d) +WESTRING_OM_CUSTOMOBJECTCOUNTS="%d 标准, %d 自定义" + +WESTRING_OM_TRIGGERSUSED=已使用的触发器 +WESTRING_OM_USEDBYTRIGGERS=被触发使用 +WESTRING_OM_ITEMTABLE=物品列表: %s + +WESTRING_IMP_FILENAME=文件名 +WESTRING_IMP_FILETYPE=类型 +WESTRING_IMP_FILESIZE=大小 (KB) +WESTRING_IMP_FILEPATH=完整路径 + +WESTRING_IMP_TYPE_OTHER=其它 +WESTRING_IMP_TYPE_MODEL=模型 +WESTRING_IMP_TYPE_IMAGE=图像/纹理 +WESTRING_IMP_TYPE_SOUND=声音/音乐 +WESTRING_IMP_TYPE_AISCRIPT=AI脚本 +WESTRING_IMP_TYPE_AIDATA=AI数据 +WESTRING_IMP_TYPE_TEXT=文本 +WESTRING_IMP_TYPE_PRELOAD=预载 + +WESTRING_IM_CHOOSEIMPORTDIR=选择导入路径: +WESTRING_IM_CHOOSEEXPORTDIR=选择导出路径: +WESTRING_IM_EXPORTFILEAS=导出文件 +WESTRING_IM_INFOBAR=全部文件: %d (%s KB) + +WESTRING_IMPORTPROPS=导入的文件属性 +WESTRING_IMPORTPROPS_NAME=文件名 +WESTRING_IMPORTPROPS_TYPE=类型 +WESTRING_IMPORTPROPS_SIZE=大小 +WESTRING_IMPORTPROPS_BYTES=字节 +WESTRING_IMPORTPROPS_PATH=完整路径(&F) +WESTRING_IMPORTPROPS_CUSTOMPATH=使用自定义路径(&U) +WESTRING_IMPORTPROPS_PATHTIP=注意: 使用与游戏中要使用的数据文档相同的路径名可以达到覆盖这些文档的效果. +WESTRING_IMPORTPROPS_USED=已使用的 + +WESTRING_CAMPAIGNTAB_GENERAL=普通 +WESTRING_CAMPAIGNTAB_SCREEN=载入画面 +WESTRING_CAMPAIGNTAB_CUSTOMDATA=自定义数据 +WESTRING_CAMPAIGNTAB_IMPORTS=导入文件 + +WESTRING_CE_NOCAMPAIGNOPEN=没有战役被打开. 请创建一个 '新的'战役或'打开'一个已有的战役. +WESTRING_CE_NAME=名字: +WESTRING_CE_DIFFICULTYTEXT=难度: +WESTRING_CE_AUTHOR=作者: +WESTRING_CE_DESCRIPTION=地图说明: +WESTRING_CE_OPTIONS=选项: +WESTRING_CE_USEDIFFICULTY=使用不同的难度级别(&V) +WESTRING_CE_FILEVERSION=战役版本: +WESTRING_CE_EDITORVERSION=保存并记录编辑器版本: +WESTRING_CE_IMAGE=小地图图片: +WESTRING_CE_IMAGE_PRESET=预设(&P): +WESTRING_CE_IMAGE_MINIMAP=其他地图(&U): +WESTRING_CE_IMAGE_IMPORT=导入文件(&I): +WESTRING_CE_SCREEN=背景: +WESTRING_CE_SCREEN_GAME=游戏图片(&G): +WESTRING_CE_SCREEN_IMPORT=导入文件(&I): +WESTRING_CE_SOUND=环境音效: +WESTRING_CE_SOUND_GAME=游戏音效(&S): +WESTRING_CE_SOUND_IMPORT=导入文件(&P): +WESTRING_CE_NOMAPS=没有地图 +WESTRING_CE_CURSOR=指针(&C): +WESTRING_CE_USEFOG=自定义迷雾效果: + +WESTRING_CAMPAIGNSCREEN_TUTORIAL=教程 +WESTRING_CAMPAIGNSCREEN_HUMAN=人族 +WESTRING_CAMPAIGNSCREEN_ORC=兽族 +WESTRING_CAMPAIGNSCREEN_UNDEAD=不死族 +WESTRING_CAMPAIGNSCREEN_NIGHTELF=暗夜精灵族 +WESTRING_CAMPAIGNSCREEN_MAINMENU=主菜单 +WESTRING_CAMPAIGNSCREEN_BATTLENET=站网 +WESTRING_CAMPAIGNSCREEN_SCORESCREEN=计分屏 +//#LINENOBETA +WESTRING_CAMPAIGNSCREEN_NIGHTELFEXPANSION=资料片暗夜精灵族 +//#LINENOBETA +WESTRING_CAMPAIGNSCREEN_HUMANEXPANSION=资料片人族 +//#LINENOBETA +WESTRING_CAMPAIGNSCREEN_UNDEADEXPANSION=资料片不死族 +//#LINENOBETA +WESTRING_CAMPAIGNSCREEN_ORCEXPANSION=资料片兽族族 +WESTRING_CAMPAIGNSCREEN_LOADING_PREFIX=载入画面 - + +WESTRING_CAMPAIGNIMAGE_HUMAN=人族 +WESTRING_CAMPAIGNIMAGE_ORC=兽族 +WESTRING_CAMPAIGNIMAGE_UNDEAD=不死族 +WESTRING_CAMPAIGNIMAGE_NIGHTELF=暗夜精灵族 +WESTRING_CAMPAIGNIMAGE_ORCCAMPAIGN=兽族战役 + +WESTRING_AMBIENTSOUND_TUTORIAL=教程 +WESTRING_AMBIENTSOUND_HUMAN=人族 +WESTRING_AMBIENTSOUND_ORC=兽族 +WESTRING_AMBIENTSOUND_UNDEAD=不死族 +WESTRING_AMBIENTSOUND_NIGHTELF=暗夜精灵族 +WESTRING_AMBIENTSOUND_NIGHTELFEXP=资料片暗夜精灵族 +WESTRING_AMBIENTSOUND_HUMANEXP=资料片人族 +WESTRING_AMBIENTSOUND_UNDEADEXP=资料片不死族 + +WESTRING_CE_MAPLIST=地图文件(&L): +WESTRING_CE_ADDMAP=添加地图 +WESTRING_CE_REMOVEMAP=移除地图 +WESTRING_CE_BUTTONLIST=战役屏幕按钮(&B): +WESTRING_CE_ADDBUTTON=添加按钮 +WESTRING_CE_EDITBUTTON=编辑按钮 +WESTRING_CE_DELETEBUTTON=删除按钮 +WESTRING_CE_MOVEBUTTONUP=上移按钮 +WESTRING_CE_MOVEBUTTONDOWN=下移按钮 + +WESTRING_CE_BUTTON_ID=ID +WESTRING_CE_BUTTON_INITVIS=可见度 +WESTRING_CE_BUTTON_FILE=读取文件 +WESTRING_CE_BUTTON_CHAPTER=章节 +WESTRING_CE_BUTTON_TITLE=标题 + +WESTRING_CAMPAIGNBUTTON_DLG=战役按钮属性 +WESTRING_CAMPAIGNBUTTON_DLG_CHAPTER=章节(&C): +WESTRING_CAMPAIGNBUTTON_DLG_TITLE=标题(&T): +WESTRING_CAMPAIGNBUTTON_DLG_FILE=文件(&F): +WESTRING_CAMPAIGNBUTTON_DLG_INITVIS=初始可见(&V) +WESTRING_CAMPAIGNBUTTON_DLG_NOMAPS=没有地图 +WESTRING_CAMPAIGNBUTTON_DLG_DEFAULTCHAPTERNAME=第一章 +WESTRING_CAMPAIGNBUTTON_DLG_DEFAULTTITLENAME=未命名的按钮 + +WESTRING_AITAB_GENERAL=普通 +WESTRING_AITAB_BUILDINGS=建筑 +WESTRING_AITAB_HEROES=英雄 +WESTRING_AITAB_ATTACKS=攻击 +WESTRING_AITAB_TESTCONFIG=测试设置 + +WESTRING_AIE_ADDTOMAP_TITLE=导入AI数据到当前地图 +WESTRING_AIE_ADDTOMAP_GETPATH=导入AI数据路径: +WESTRING_AIE_NAME=名字: +WESTRING_AIE_RACE=种族: +WESTRING_AIE_RACE_CUSTOM=自定义 +WESTRING_AIE_OPTIONS=选项: +WESTRING_AIE_CUSTOMDATA=自定义数据: +WESTRING_AIE_CUSTOMDATA_FROMMAP=使用地图数据 +WESTRING_AIE_CUSTOMDATA_IMPORT=导入 +WESTRING_AIE_CUSTOMDATA_IMPORT_TIP="为了能在AI编辑器中使用自定义单位,请在这里导入一个定义这些单位的自定义物体数据文件.|n|n在物体编辑器中使用'输出所有物体数据'就可以创建一个自定义物体数据文件." +WESTRING_AIE_CUSTOMDATA_EXPORT=导出 +WESTRING_AIE_CUSTOMDATA_CLEAR=清除 +WESTRING_AIE_CUSTOMDATA_FILE=导入文件: +WESTRING_AIE_CUSTOMDATA_TIME=导入时间: +WESTRING_AIE_GENERAL_CONDITIONS=条件: (在建造和攻击数据使用) +WESTRING_AIE_GENERAL_COND_NAME=名字 +WESTRING_AIE_GENERAL_COND_REFS=使用 +WESTRING_AIE_GENERAL_COND_TEXT=条件 +WESTRING_AIE_GENERAL_CONDADD=添加条件 +WESTRING_AIE_GENERAL_CONDEDIT=编辑条件 +WESTRING_AIE_GENERAL_CONDDELETE=删除条件 +WESTRING_AIFLAG_SETPLAYERNAME=设置玩家名字 +WESTRING_AIFLAG_SETPLAYERNAME_TIP="选项开启时会使用AI名字作为玩家名字." +WESTRING_AIFLAG_MELEE=对战 +WESTRING_AIFLAG_MELEE_TIP="在标准对战模式会使用对战AI.|n|n对战AI会更有效的和盟友一起进攻和防守." +WESTRING_AIFLAG_DEFENDUSERS=保护用户 +WESTRING_AIFLAG_DEFENDUSERS_TIP="AI会试图保护那些遭受攻击的盟友用户玩家." +WESTRING_AIFLAG_RANDOMPATHS=随机路径 +WESTRING_AIFLAG_RANDOMPATHS_TIP="增加AI选择目的地的随机性." +WESTRING_AIFLAG_TARGETHEROES=锁定英雄 +WESTRING_AIFLAG_TARGETHEROES_TIP="AI会在战斗中设置较高的优先权来攻击英雄." +WESTRING_AIFLAG_REPAIRS=修理建筑 +WESTRING_AIFLAG_REPAIRS_TIP="农民会自动修理需要修理建筑." +WESTRING_AIFLAG_HEROESFLEE=英雄逃跑 +WESTRING_AIFLAG_HEROESFLEE_TIP="英雄在受伤严重或遭受攻击时会试图逃跑." +WESTRING_AIFLAG_UNITSFLEE=单位逃跑 +WESTRING_AIFLAG_UNITSFLEE_TIP="非英雄单位在受伤严重或遭受攻击时会试图逃跑." +WESTRING_AIFLAG_GROUPSFLEE=队伍逃跑 +WESTRING_AIFLAG_GROUPSFLEE_TIP="在对己方不利的情况下,队伍会放弃战斗从战场逃离." +WESTRING_AIFLAG_WATCHMEGA=没有怜悯 +WESTRING_AIFLAG_WATCHMEGA_TIP="AI会抓住敌人较弱或处于劣势的时候进攻.|n|n对应'敌人 - 主攻'的目标类型." +WESTRING_AIFLAG_IGNOREINJURED=忽略受伤者 +WESTRING_AIFLAG_IGNOREINJURED_TIP="在集结部队进攻时,忽略生命值低于50%的单位." +WESTRING_AIFLAG_REMOVEINJURIES=移除受伤者 +WESTRING_AIFLAG_REMOVEINJURIES_TIP="周期性的把受伤的单位送回基地或是生命之泉去回复生命." +WESTRING_AIFLAG_TAKEITEMS=拾取物品 +WESTRING_AIFLAG_TAKEITEMS_TIP="英雄会拾取路上遇到的有用物品." +WESTRING_AIFLAG_BUYITEMS=购买物品 +WESTRING_AIFLAG_BUYITEMS_TIP="英雄会在商店里购买有用的物品." +WESTRING_AIFLAG_SLOWHARVEST=慢速采矿 +WESTRING_AIFLAG_SLOWHARVEST_TIP="AI的黄金采集数量一次只有1. 这会对AI造成严重的经济障碍." +WESTRING_AIFLAG_CAPTCHANGE=允许基地更换 +WESTRING_AIFLAG_CAPTCHANGE_TIP="允许AI选择一个新基地来作为采矿和部队撤退使用." +WESTRING_AIFLAG_SMARTART=主动攻城 +WESTRING_AIFLAG_SMARTART_TIP="攻城单位会尽可能的攻击敌人基地." + +WESTRING_AIE_HERO_ID=使用英雄: +WESTRING_AIE_HERO_ORDER=训练命令: +WESTRING_AIE_HERO_ORDERCHANCE=%机率: +WESTRING_AIE_HERO_SKILLS=技能选择: +WESTRING_AIE_HERO_SKILLHERO=英雄: +WESTRING_AIE_HERO_ASFIRST=作为第一英雄: +WESTRING_AIE_HERO_ASSECOND=作为第二英雄: +WESTRING_AIE_HERO_ASTHIRD=作为第三英雄: +WESTRING_AIE_HERO_SAMEASPREV=和前面一样 +WESTRING_AIE_HERO_SKILLMOVEUP=上移 +WESTRING_AIE_HERO_SKILLMOVEDOWN=下移 + +WESTRING_AIE_UNIT_HALL=基础建筑: +WESTRING_AIE_UNIT_MINE=采矿建筑: +WESTRING_AIE_UNIT_GOLD=采金工人: +WESTRING_AIE_UNIT_WOOD=伐木工人: +WESTRING_AIE_UNIT_HALL_TIP="(只用于自定义种族 AI )|n|n该建筑是用来建造新据点的. 必须拥有'城镇大厅'类别." +WESTRING_AIE_UNIT_MINE_TIP="(只用于自定义种族 AI )|n|n该建筑会在金矿上建造. 必须拥有占据金矿的技能." +WESTRING_AIE_UNIT_GOLD_TIP="(只用于自定义种族 AI )|n|n该单位通常是用来采集金钱的. 它必须拥有采集金钱的技能." +WESTRING_AIE_UNIT_WOOD_TIP="(只用于自定义种族 AI )|n|n该单位通常是用来采集金钱的. 它必须拥有采集木材的技能." +WESTRING_AIE_BUILDPRIORITIES=建造设置: +WESTRING_AIE_HARVESTPRIORITIES=采集设置: +WESTRING_AIE_TARGETPRIORITIES=目标设置: + +WESTRING_AIE_TC_GAMESPEED=游戏速度: +WESTRING_AIE_TC_GAMESPEED_HINT="X 正常游戏速度" +WESTRING_AIE_TC_GAMEOPTIONS=游戏选项: +WESTRING_AIE_TC_SHOWMAP=禁用战争迷雾 +WESTRING_AIE_TC_NOVICDEF=禁用胜利/失败模式 +WESTRING_AIE_TC_MAPFILE=对战地图文件: +WESTRING_AIE_TC_SETMAPFILE=设置地图 +WESTRING_AIE_TC_PLAYERS=玩家: +WESTRING_AIE_TC_P_SLOT=NO. +WESTRING_AIE_TC_P_CONTROL=控制者 +WESTRING_AIE_TC_P_RACE=种族 +WESTRING_AIE_TC_P_TEAM=队伍 +WESTRING_AIE_TC_P_COLOR=颜色 +WESTRING_AIE_TC_P_HANDICAP=生命障碍 +WESTRING_AIE_TC_P_AI=AI +WESTRING_AIE_TC_P_AIDIFF=AI难度 +WESTRING_AIE_TC_P_AIFILE=AI脚本(自定义) +WESTRING_AIE_TC_P_AI_SET=设置 + +WESTRING_AIE_PRI_BUILD=建造类型 +WESTRING_AIE_PRI_HARVEST=采集类型 +WESTRING_AIE_PRI_TARGET=目标类型 +WESTRING_AIE_BUILD_TOWN=城镇: +WESTRING_AIE_BUILD_TYPE=建造: +WESTRING_AIE_BUILD_SPECIFICUNIT=指定单位 +WESTRING_AIE_BUILD_SPECIFICUPGRADE=指定科技 +WESTRING_AIE_HARVEST_TYPE=采集: +WESTRING_AIE_HARVEST_TYPE_GOLD=黄金 +WESTRING_AIE_HARVEST_TYPE_WOOD=木材 +WESTRING_AIE_HARVEST_TOWN=城镇: +WESTRING_AIE_TOWNMENU_ANY=任何 +WESTRING_AIE_TOWNMENU_MAIN=主基地 +WESTRING_AIE_TOWNMENU_EXP=分基地 # +WESTRING_AIE_TOWNMENU_MINE=金矿 # +WESTRING_AIE_HARVEST_WORKERS=人数: +WESTRING_AIE_WORKERSMENU_ALL=所有 +WESTRING_AIE_WORKERSMENU_ALL_NOTATTACKING=不在攻击的 +WESTRING_AIE_WORKERSMENU_FIXED=固定值 +WESTRING_AIE_TARGET_TYPE=目标: +WESTRING_AIE_TARGET_MINCREEP=最小总等级: +WESTRING_AIE_TARGET_MAXCREEP=最大总等级: +WESTRING_AIE_TARGET_ALLOWFLYERS=包括飞行单位 + +WESTRING_AIE_UNIT_HERO1=第一英雄 +WESTRING_AIE_UNIT_HERO2=第二英雄 +WESTRING_AIE_UNIT_HERO3=第三英雄 +WESTRING_AIE_UNIT_EXPANSION=分基地 +WESTRING_AIE_TOWN_ANY=任何 +WESTRING_AIE_TOWN_MAIN=主基地 +WESTRING_AIE_TOWN_EXP=分基地 %d +WESTRING_AIE_TOWN_MINE=金矿 %d +WESTRING_AIE_WORKERS_ALL=所有 +WESTRING_AIE_WORKERS_ALL_NOTATTACKING=不在攻击的 +WESTRING_AIE_TARGET_ALLIANCE=同盟信号点 +WESTRING_AIE_TARGET_EXPANSION=新的扩张点 +WESTRING_AIE_TARGET_ENEMY_MEGA=敌人 - 主基地 +WESTRING_AIE_TARGET_ENEMY_EXPANSION=敌人 - 分基地 +WESTRING_AIE_TARGET_ENEMY_ANY=敌人 - 任何基地 +WESTRING_AIE_TARGET_CREEPS=中立生物营地 +WESTRING_AIE_TARGET_CREEPS_LEVEL=" (%d-%d)" +WESTRING_AIE_TARGET_CREEPS_LEVEL_WITHFLYERS=" (%d-%d,飞行) +WESTRING_AIE_TARGET_BUYZEPPELIN=购买地精飞艇 + +WESTRING_AIE_CONTROL_NONE=没有 +WESTRING_AIE_CONTROL_COMPUTER=电脑 +WESTRING_AIE_CONTROL_USER=用户 +WESTRING_AIE_RACE_RANDOM=随机 +WESTRING_AIE_TEAM=队伍 %d +WESTRING_AIE_TEAM_OBSERVER=观察者 +WESTRING_AIE_AI_STANDARD=标准 +WESTRING_AIE_AI_CURRENT=当前 +WESTRING_AIE_AI_CUSTOM=自定义 +WESTRING_AIE_AIDIFF_EASY=简单 +WESTRING_AIE_AIDIFF_NORMAL=普通 +WESTRING_AIE_AIDIFF_HARD=疯狂 + +WESTRING_AIE_PRIORITY_ADD=添加设置 +WESTRING_AIE_PRIORITY_REMOVE=删除设置 +WESTRING_AIE_PRIORITY_EDIT=编辑设置 +WESTRING_AIE_PRIORITY_MOVEUP=上移设置 +WESTRING_AIE_PRIORITY_MOVEDOWN=下移设置 + +WESTRING_AIE_COL_BUILD_NAME=建造 +WESTRING_AIE_COL_BUILD_QUANTITY=总数 +WESTRING_AIE_COL_BUILD_SUPPLY=人口 +WESTRING_AIE_COL_BUILD_TOWN=城镇 +WESTRING_AIE_COL_CONDITIONS=条件 +WESTRING_AIE_COL_HARVEST_NAME=类型 +WESTRING_AIE_COL_HARVEST_QUANTITY=人数 +WESTRING_AIE_COL_HARVEST_TOWN=城镇 +WESTRING_AIE_COL_TARGET_NAME=目标 + +WESTRING_AIE_CONDDLG_TITLE=AI条件 +WESTRING_AIE_CONDDLG_NAME=名字: +WESTRING_AIE_CONDDLG_CONDITION=条件: +WESTRING_AIE_CONDDLG_SETCONDITION=设置条件 +WESTRING_AIE_DEFAULT_CONDITION_NAME=Untitled Condition +WESTRING_AIE_CONDDLG_CUSTOMCOND=自定义 + +WESTRING_AIE_ATTACK_GROUPS=攻击单位组: +WESTRING_AIE_ATTACK_ADDGROUP=添加单位组 +WESTRING_AIE_ATTACK_DELETEGROUP=删除单位组 +WESTRING_AIE_ATTACK_CURRENTGROUP=当前单位组: +WESTRING_AIE_ATTACK_GROUPNAME=名字: +WESTRING_AIE_ATTACK_GROUPUNITS=单位: +WESTRING_AIE_ATTACK_ADDUNIT=添加单位 +WESTRING_AIE_ATTACK_EDITUNIT=编辑单位 +WESTRING_AIE_ATTACK_DELETEUNIT=删除单位 +WESTRING_AIE_ATTACK_WAVES=攻击波次: +WESTRING_AIE_ATTACK_ADDWAVE=添加设置 +WESTRING_AIE_ATTACK_EDITWAVE=编辑设置 +WESTRING_AIE_ATTACK_DELETEWAVE=删除设置 +WESTRING_AIE_ATTACK_DELAY=开始时间: +WESTRING_AIE_ATTACK_DELAY_HINT="(以秒为单位,开始第一次攻击的时间)" +WESTRING_AIE_ATTACK_REPEATWAVES=重复波次: +WESTRING_AIE_ATTACK_REPEATWAVES_HINT="(结束后重复进行的攻击波次)" +WESTRING_AIE_ATTACK_MINFORCES=最小攻击组: +WESTRING_AIE_GROUPNAME_ALLUNITS=所有单位 +WESTRING_AIE_GROUPNAME_HEROONLY=只有首英雄 +WESTRING_AIE_GROUPNAME_DEFAULT=未命名攻击组 +WESTRING_AIE_ATTACK_UNITTYPE=单位类型 +WESTRING_AIE_ATTACK_UNITQUANTITY=数量 +WESTRING_AIE_ATTACK_WAVEID="#" +WESTRING_AIE_ATTACK_WAVEGROUP=攻击单位组 +WESTRING_AIE_ATTACK_WAVEDELAY=等待 +WESTRING_AIE_QUANTITY_ALL=所有 +WESTRING_AIE_UNITDLG_TITLE=攻击单位 +WESTRING_AIE_UNITDLG_QUANTITY=数量: +WESTRING_AIE_UNITDLG_QTY_ALL=所有 +WESTRING_AIE_UNITDLG_QTY_SINGLE=固定值 +WESTRING_AIE_UNITDLG_QTY_RANGE_ALL=范围: 最小 - 无穷大 +WESTRING_AIE_UNITDLG_QTY_RANGE_MAX=范围: 最小 - 最大 +WESTRING_AIE_UNITDLG_QTY_ALLEXCEPT=除去该值 +WESTRING_AIE_UNITDLG_VALUE=值: +WESTRING_AIE_UNITDLG_MINVAL=最小: +WESTRING_AIE_UNITDLG_MAXVAL=最大: +WESTRING_AIE_UNITDLG_UNIT=单位: +WESTRING_AIE_UNITDLG_UNIT_SPECIFIC=指定单位 +WESTRING_AIE_WAVEDLG_TITLE=攻击波次: +WESTRING_AIE_WAVEDLG_GROUP=攻击单位组: +WESTRING_AIE_WAVEDLG_DELAY=等待: +WESTRING_AIE_WAVEDLG_DELAY_HINT="(以秒为单位,开始下一次攻击前的等待时间)" + +WESTRING_REGIONPROPS=矩形区域属性 +WESTRING_REGIONPROPS_MINX=左(&L) +WESTRING_REGIONPROPS_MAXX=右(&R) +WESTRING_REGIONPROPS_MINY=下(&B) +WESTRING_REGIONPROPS_MAXY=上(&T) +WESTRING_REGIONPROPS_MULTIPLE=多个区域 +WESTRING_REGIONPROPS_EDITCOLOR=选择颜色(&C) +WESTRING_REGIONPROPS_HASWEATHER=天气效果(&W) +WESTRING_REGIONPROPS_HASSOUND=环境音效(&A) +WESTRING_REGIONPROPS_NOSOUNDS=未定义音效 + +WESTRING_REGION_CM_EDITPROPS=编辑区域属性 +WESTRING_REGION_CM_VIEW=察看区域(&V) +WESTRING_REGION_CM_RENAME=重命名区域(&R) +WESTRING_REGION_CM_DELETE=删除区域(&D) +WESTRING_REGION_CM_SORT=按名字排序(&S) + +WESTRING_LOADSCREEN_GRAPHIC=地图载入画面 +WESTRING_LOADSCREEN_USEDEFAULT=使用默认背景(&D) +WESTRING_LOADSCREEN_USECAMPAIGN=使用战役背景(&C) +WESTRING_LOADSCREEN_USEIMPORT=使用导入文件(&I) +WESTRING_LOADSCREEN_TITLE=载入画面标题(&T) +WESTRING_LOADSCREEN_SUBTITLE=载入画面子标题(&S) +WESTRING_LOADSCREEN_TEXT=载入画面文本说明(&L) + +WESTRING_PROLOGUE_GRAPHIC=序言背景图案 +WESTRING_PROLOGUE_USEDEFAULT=使用默认背景 +WESTRING_PROLOGUE_USECAMPAIGN=使用战役背景 +WESTRING_PROLOGUE_TITLE=序言场景标题 +WESTRING_PROLOGUE_SUBTITLE=序言场景子标题 +WESTRING_PROLOGUE_TEXT=序言场景文本 + +WESTRING_MAPPREFS_SKYDISPLAY=天空显示(&S): +WESTRING_MAPPREFS_TIMEOFDAY=游戏时间(&T): +WESTRING_MAPPREFS_CUSTOMDATA=外部自定义数据源(&C): +WESTRING_MAPPREFS_CUSTOMDATA_SELECT=选择文件(&F) +WESTRING_MAPPREFS_USEGLOBAL=使用编辑器参数 +WESTRING_MAPPREFS_TIMEOFDAY_UNFIXED=未修正 +WESTRING_MAPPREFS_TIMEOFDAY_FIXED=修正 - %s + +WESTRING_CAMERA_CREATE=创建镜头 +WESTRING_CAMERA_MOVETO=观看所选镜头 +WESTRING_CAMERA_COPY=设置到当前视角 + +WESTRING_CAMERAPROPS=镜头属性 +WESTRING_CAMERAPROPS_NAME=镜头名字(&N) +WESTRING_CAMERAPROPS_VALUES=镜头值 +WESTRING_CAMERAPROPS_PREVIEWVALS=在主窗口中预览(&V) +WESTRING_CAMERAPROPS_MULTIPLE=多个镜头 + +WESTRING_CAMVAL_TARGX=X坐标 +WESTRING_CAMVAL_TARGY=Y坐标 +WESTRING_CAMVAL_ZOFF=高度位移 +WESTRING_CAMVAL_DIR=旋转角度 +WESTRING_CAMVAL_AOA=水平角度 +WESTRING_CAMVAL_DIST=距离到目标 +WESTRING_CAMVAL_ROLL=滚动(横侧角) +WESTRING_CAMVAL_FOV=观察区域 +WESTRING_CAMVAL_FARZ=远景剪裁 +WESTRING_CAMVAL_NEARZ=近景截断距离 + +WESTRING_CAMERA_CM_EDITPROPS=编辑镜头属性(&E) +WESTRING_CAMERA_CM_VIEW=观看镜头(&V) +WESTRING_CAMERA_CM_RENAME=重命名镜头(&R) +WESTRING_CAMERA_CM_DUPLICATE=复制镜头(&C) +WESTRING_CAMERA_CM_DELETE=删除镜头(&D) +WESTRING_CAMERA_CM_SORT=按名字排序(&S) + +WESTRING_MODULE_TERRAIN=地形编辑器 +WESTRING_MODULE_SCRIPTS=触发编辑器 +WESTRING_MODULE_CAMPAIGN=战役编辑器 +WESTRING_MODULE_SOUND=声音编辑器 +WESTRING_MODULE_OBJEDIT=物体编辑器 +WESTRING_MODULE_OBJMAN=物体管理器 +WESTRING_MODULE_IMPORT=输入管理器 +WESTRING_MODULE_AI=AI编辑器 + +WESTRING_TOOL_PALETTE=工具面板 +WESTRING_PALETTE_TERRAIN=地形面板 +WESTRING_PALETTE_UNITS=单位面板 +WESTRING_PALETTE_DOODADS=装饰物面板 +WESTRING_PALETTE_REGIONS=区域面板 +WESTRING_PALETTE_CAMERAS=镜头面板 + +WESTRING_OLTYPE_DESTRUCTIBLE=树木/可破坏物 +WESTRING_OLTYPE_DOODAD=地形装饰物 +WESTRING_OLTYPE_NEUTRALUNIT=中立单位和敌对建筑 +WESTRING_OLTYPE_NEUTRALBUILDING=中立被动建筑 +WESTRING_OLTYPE_PLAYERUNIT=玩家单位 +WESTRING_OLTYPE_PLAYERBUILDING=玩家建筑 +WESTRING_OLTYPE_ITEM=物品 + +WESTRING_ABOUTTITLE=关于魔兽争霸III地图编辑器 +WESTRING_ABOUT_VERSION=版本 +WESTRING_ABOUT_COPYRIGHT=Copyright (c) 2002 - 2003 Blizzard Entertainment. All Rights Reserved. +WESTRING_ABOUT_LINK=Blizzard Entertainment + +WESTRING_LICENSETITLE=魔兽争霸III地图编辑器 - 最终用户协议 +WESTRING_LICENSE_AGREE=同意 +WESTRING_LICENSE_DISAGREE=拒绝 +WESTRING_LICENSE_DOYOUAGREE=你同意以上用户协议吗? + +WESTRING_WELCOMETITLE=欢迎使用魔兽争霸III地图编辑器 +WESTRING_WELCOME_LARGETEXT=欢迎使用魔兽争霸III地图编辑器 +WESTRING_WELCOME_SMALLTEXT1="这个编辑器是个威力强大的工具,可以让使用者调整魔兽争霸Ⅲ游戏中几乎各方面的功能,为了熟悉编辑器中的诸项功能,我们强烈的建议你加载预先制作的地图,做为参考。" +WESTRING_WELCOME_SMALLTEXT2="请注意: Blizzard Entertainment不会对编辑器提供任何直接的帮助。我们的技术支持小组不会回答关于编辑器功能的问题或者帮助你解决在使用编辑器时遇到的困难。" +WESTRING_WELCOME_LEGALTEXT="在使用这个程序时,你同意受到最终用户协议中的各项条款约束,这份合约可以在魔兽争霸Ⅲ安装目录中的「license.txt」文件档中找到。" + +// Colors +WESTRING_COLOR_CUSTOM=自定义 +WESTRING_COLOR_BLACK=黑色 +WESTRING_COLOR_WHITE=白色 +WESTRING_COLOR_RED=红色 +WESTRING_COLOR_GREEN=绿色 +WESTRING_COLOR_BLUE=蓝色 +WESTRING_COLOR_YELLOW=黄色 +WESTRING_COLOR_GRAY=灰色 +WESTRING_COLOR_DARKGREEN=暗绿色 +WESTRING_COLOR_PURPLE=紫色 +WESTRING_COLOR_ORANGE=橙色 +WESTRING_COLOR_BROWN=棕色 +WESTRING_COLOR_CYAN=青色 +WESTRING_COLOR_MAROON=栗色 +WESTRING_COLOR_PINK=粉红色 +WESTRING_COLOR_LIGHTGRAY=淡灰色 +WESTRING_COLOR_LIGHTBLUE=淡蓝色 +WESTRING_COLOR_DARKGRAY=暗灰色 +WESTRING_COLOR_AQUA=暗绿色 +WESTRING_COLOR_DARKRED=深红色 +WESTRING_COLOR_LIGHTGREEN=淡绿色 +WESTRING_COLOR_DARKBLUE=深蓝色 +WESTRING_COLOR_DARKYELLOW=深黄色 +WESTRING_COLOR_MAGENTA=洋红色 +WESTRING_COLOR_DARKMAGENTA=深洋红色 +WESTRING_COLOR_DARKCYAN=深青色 + +// Game types +WESTRING_GAMETYPESALLOWED=允许游戏类型 +WESTRING_GAMETYPE_MELEE=对战 +WESTRING_GAMETYPE_FFA=自由作战 +WESTRING_GAMETYPE_UMS=使用地图设置 +WESTRING_GAMETYPE_1V1=1 vs 1 +WESTRING_GAMETYPE_2V2=2 vs 2 +WESTRING_GAMETYPE_3V3=3 vs 3 +WESTRING_GAMETYPE_4V4=4 vs 4 + +// Map flags +WESTRING_MAPOPTIONS=地图选项 +WESTRING_MAPFLAG_HIDEMINIMAP=关闭预览图(&H) +WESTRING_MAPFLAG_USEDARKMASK=显示小地图地形(&M) +WESTRING_MAPFLAG_CLIFFWAVES=显示悬崖水波(&S) +WESTRING_MAPFLAG_ROLLINGWAVES=显示海岸水波(&W) +WESTRING_MAPFLAG_USEITEMCLASS=使用物品分类系统(&I) + +WESTRING_MAPOPTIONS_USEFOG=使用地形迷雾(&F) +WESTRING_MAPOPTIONS_FOGSTYLE=样式 +WESTRING_MAPOPTIONS_FOGZSTART=Z轴始 +WESTRING_MAPOPTIONS_FOGZEND=Z轴末 +WESTRING_MAPOPTIONS_FOGDENSITY=密度 +WESTRING_MAPOPTIONS_FOGCOLOR=颜色 +WESTRING_MAPOPTIONS_SETFOGCOLOR=设置颜色 + +WESTRING_MAPOPTIONS_USEWEATHER=使用全球气候(&U) +WESTRING_MAPOPTIONS_SOUNDENV=自定义环境音效(&V) +WESTRING_MAPOPTIONS_LIGHTENV=自定义光照环境(&L) +WESTRING_MAPOPTIONS_WATERCOLOR=设置水颜色(&T) +WESTRING_MAPOPTIONS_WATERCOLOR_SET=设置颜色(&C) + +WESTRING_MAPOPTIONS_GAMEDATASET=游戏数据设置 +WESTRING_GAMEDATASET_DEFAULT="默认 (1.07)(常规对战图用)" +WESTRING_GAMEDATASET_CUSTOM_V0="自定义 (1.01)" +WESTRING_GAMEDATASET_CUSTOM_V1="自定义 (TFT 1.07, RoC 1.01)" +WESTRING_GAMEDATASET_MELEE_V0="对战 (最新版本)" +WESTRING_GAMEDATASET_MELEE_V1="对战 (最新版本)" + +// Item classes +WESTRING_ITEMCLASS_ANY=任何 +WESTRING_ITEMCLASS_PERMANENT=永久 +WESTRING_ITEMCLASS_CHARGED=可充 +WESTRING_ITEMCLASS_POWERUP=力量提升 +WESTRING_ITEMCLASS_ARTIFACT=人造 +WESTRING_ITEMCLASS_PURCHASABLE=可购买 +WESTRING_ITEMCLASS_CAMPAIGN=战役 +WESTRING_ITEMCLASS_MISCELLANEOUS=混杂 +WESTRING_ITEMCLASS_UNKNOWN=WESTRING_UNKNOWN + +// File types (shown in file open/save dialogs) +WESTRING_FILETYPE_MAP=《魔兽争霸III》地图 +WESTRING_FILETYPE_MAP_EXP=《魔兽争霸III》资料片地图 +WESTRING_FILETYPE_CAMPAIGN=《魔兽争霸III》战役 +WESTRING_FILETYPE_SCRIPT=《魔兽争霸III》脚本 +WESTRING_FILETYPE_STRINGS=《魔兽争霸III》字符串 +WESTRING_FILETYPE_UNITDATA=《魔兽争霸III》单位数据 +WESTRING_FILETYPE_ITEMDATA=《魔兽争霸III》物品数据 +WESTRING_FILETYPE_ABILITYDATA=《魔兽争霸III》技能数据 +WESTRING_FILETYPE_BUFFDATA=《魔兽争霸III》魔法效果数据 +WESTRING_FILETYPE_UPGRADEDATA=《魔兽争霸III》科技数据 +WESTRING_FILETYPE_DOODADDATA=《魔兽争霸III》地形装饰物数据 +WESTRING_FILETYPE_DESTRUCTABLEDATA=《魔兽争霸III》可破坏物数据 +WESTRING_FILETYPE_OBJECTDATA=《魔兽争霸III》自定义物体数据 +WESTRING_FILETYPE_AIDATA=《魔兽争霸III》AI数据 +WESTRING_FILETYPE_AISCRIPT=《魔兽争霸III》AI脚本 +WESTRING_FILETYPE_TGA=TGA图像文件 +WESTRING_FILETYPE_EXE=可执行文件 +WESTRING_FILETYPE_WAV=WAV声音 +WESTRING_FILETYPE_MP3=MP3声音 +WESTRING_FILETYPE_WAVMP3="WAV声音,MP3声音" +WESTRING_FILETYPE_TRIGGERS=《魔兽争霸III》触发数据 + +// Loading +WESTRING_LOADING_MAPINFO=地形层信息读取中 +WESTRING_LOADING_DOODADS=地形装饰物读取中 +WESTRING_LOADING_CLIFFDOODADS=悬崖地形装饰物读取中 +WESTRING_LOADING_UNITS=单位读取中 +WESTRING_LOADING_CUSTOMDATA=自定义物体数据读取中 +WESTRING_LOADING_TERRAIN=地形读取中 +WESTRING_LOADING_SHADOWMAP=阴影纹理读取中 +WESTRING_LOADING_MINIMAP=小地图读取中 +WESTRING_LOADING_PATHMAP=路径纹理读取中 +WESTRING_LOADING_TEXTURE=纹理读取中 +WESTRING_LOADING_VERTICES=最高地形点读取中 +WESTRING_LOADING_TRIGGERS=触发读取中 +WESTRING_LOADING_REGIONS=矩形区域读取中 +WESTRING_LOADING_OCCLUSIONMAP=闭塞纹理读取中 +WESTRING_LOADING_CAMERAS=镜头对象读取中 +WESTRING_LOADING_TERRAIN_GEO=几何地形读取中 +WESTRING_LOADING_SOUNDS=声音读取中 +WESTRING_LOADING_GENERATINGOBJECTVARS=生成物体变量 + +// Saving +WESTRING_SAVING_MAPINFO=保存地形层信息 +WESTRING_SAVING_DOODADS=保存地形装饰物 +WESTRING_SAVING_UNITS=保存单位 +WESTRING_SAVING_CUSTOMDATA=保存自定义物体数据 +WESTRING_SAVING_TERRAIN=保存地形 +WESTRING_SAVING_MINIMAP=生成小地图 +WESTRING_SAVING_MINIMAP_FILTER_MEDIAN=边缘平滑化 +WESTRING_SAVING_MINIMAP_FILTER_BLUR=边缘模糊化 +WESTRING_SAVING_PREVIEWMAP=生成预览小地图 +WESTRING_SAVING_PATHINGMAP=保存路径纹理 +WESTRING_SAVING_TRIGGERS=保存触发 +WESTRING_SAVING_REGIONS=保存矩形区域 +WESTRING_SAVING_CAMERAS=保存镜头对象 +WESTRING_SAVING_MAPSCRIPT=重建地图脚本 +WESTRING_SAVING_ARCHIVE=创建地图文档 +WESTRING_SAVING_SOUNDS=声音 +WESTRING_SAVING_CAMPAIGNINFO=保存战役信息 +WESTRING_SAVING_CAMPAIGNMAPS=保存战役地图 +WESTRING_SAVING_CAMPAIGNARCHIVE=创建战役文档 + +WESTRING_SAVING_MAPSCRIPT_HEADER=标题 +WESTRING_SAVING_MAPSCRIPT_GLOBALS=变量 +WESTRING_SAVING_MAPSCRIPT_DESTRUCTABLES=树木/可破坏物 +WESTRING_SAVING_MAPSCRIPT_ITEMS=物品 +WESTRING_SAVING_MAPSCRIPT_ITEMDROPTABLES=物品掉落列表 +WESTRING_SAVING_MAPSCRIPT_UNITS=单位 +WESTRING_SAVING_MAPSCRIPT_SOUNDS=声音 +WESTRING_SAVING_MAPSCRIPT_REGIONS=矩形区域 +WESTRING_SAVING_MAPSCRIPT_CAMERAS=镜头对象 +WESTRING_SAVING_MAPSCRIPT_TRIGGERS_VAL=确认触发器 +WESTRING_SAVING_MAPSCRIPT_TRIGGERS=编写触发器 +WESTRING_SAVING_MAPSCRIPT_UPGRADES=科技 +WESTRING_SAVING_MAPSCRIPT_TECHTREE=科技树 +WESTRING_SAVING_MAPSCRIPT_PLAYERS=玩家 +WESTRING_SAVING_MAPSCRIPT_MAIN=主函数初始化 +WESTRING_SAVING_MAPSCRIPT_MAPCONFIG=地图配置 +WESTRING_SAVING_MAPSCRIPT_VALIDATE=确认脚本 + +WESTRING_UPDATINGDOODADS=更新地形装饰物 +WESTRING_UPDATINGUNITS=更新单位 +WESTRING_UPDATINGCAMERAS=更新镜头范围 + +// Melee condition failures +WESTRING_NOTMELEE_CUSTOMTRIGGERS=自定义触发器已指定 +WESTRING_NOTMELEE_PLAYERUNITS=玩家拥有单位已放置 +WESTRING_NOTMELEE_INVALIDSTARTLOCS=在无效位置有一个或多个的开始点 +WESTRING_NOTMELEE_CUSTOMFORCES=自定义队伍已指定 +WESTRING_NOTMELEE_CUSTOMTECHTREE=自定义科技树或技能设置已指定 +WESTRING_NOTMELEE_CUSTOMUPGRADES=自定义科技设置已指定 +WESTRING_NOTMELEE_HIDDENMINIMAP='隐藏预览图'选项被开启 +WESTRING_NOTMELEE_NODARKMASK='显示小地图地形'选项被关闭 +WESTRING_NOTMELEE_FIXEDSTARTLOCS=固定开始点已指定 +WESTRING_NOTMELEE_CUSTOMUNITS=自定义单位数据已指定 +WESTRING_NOTMELEE_CUSTOMITEMS=自定义物品数据已指定 +WESTRING_NOTMELEE_CUSTOMDESTRUCTABLES=自定义可破坏物数据已指定 +WESTRING_NOTMELEE_CUSTOMDOODADS=自定义地形装饰物数据已指定 +WESTRING_NOTMELEE_CUSTOMABILITIES=自定义技能数据已指定 +WESTRING_NOTMELEE_CUSTOMBUFFDATA=自定义魔法效果数据已指定 +WESTRING_NOTMELEE_CUSTOMUPGRADEDATA=自定义科技数据已指定 +WESTRING_NOTMELEE_CUSTOMMISCDATA=自定义游戏平衡性常数已指定 +WESTRING_NOTMELEE_CUSTOMSKINDATA=自定义游戏界面已指定 +WESTRING_NOTMELEE_GAMEDATASET=非默认的游戏数据被指定 + +// Expansion required +WESTRING_EXPFEATURE_LARGERMAPSIZE=地图尺寸大于或等于192 x 192 +WESTRING_EXPFEATURE_TERRAINFOG=自定义地形迷雾已指定(地图选项) +WESTRING_EXPFEATURE_INITARRAYS=变量数组大小已指定(触发编辑器) +WESTRING_EXPFEATURE_CUSTOMDATA_DEST=自定义可破坏物数据已指定(物体编辑器) +WESTRING_EXPFEATURE_CUSTOMDATA_DOOD=自定义地形装饰物数据已指定(物体编辑器) +WESTRING_EXPFEATURE_CUSTOMDATA_ABIL=自定义技能数据已指定(物体编辑器) +WESTRING_EXPFEATURE_CUSTOMDATA_BUFF=自定义魔法效果数据已指定(物体编辑器) +WESTRING_EXPFEATURE_CUSTOMDATA_UPGR=自定义科技数据已指定(物体编辑器) +WESTRING_EXPFEATURE_OBJECTS_TERRAIN=资料片地形被使用 +WESTRING_EXPFEATURE_OBJECTS_WEATHER=资料片天气效果被使用 +WESTRING_EXPFEATURE_OBJECTS_DOODAD=资料片装饰物/可破坏物被使用 +WESTRING_EXPFEATURE_OBJECTS_UNIT=资料片单位被使用 +WESTRING_EXPFEATURE_OBJECTS_ITEM=资料片物品被使用 +WESTRING_EXPFEATURE_OBJECTS_ABILITY=资料片技能被使用 +WESTRING_EXPFEATURE_OBJECTS_UPGRADE=资料片科技被使用 +WESTRING_EXPFEATURE_OBJECTS_SOUND=资料片音效被使用 +WESTRING_EXPFEATURE_OBJECTS_CUSTOM=资料片仅有的自定义数据已使用(物体编辑器) +WESTRING_EXPFEATURE_OBJECTS_TRIGGER="资料片仅有的触发器功能被使用(触发编辑器)" +WESTRING_EXPFEATURE_LOADINGSCREEN_EXP=资料片仅有的载入画面被指定(载入画面) +WESTRING_EXPFEATURE_LOADINGSCREEN_IMP=导入了外部载入画面(载入画面) +WESTRING_EXPFEATURE_CUSTOMHEROATTS=自定义英雄属性被指定(单位属性) +WESTRING_EXPFEATURE_COMMENTTRIGGERS=触发注释已使用(触发编辑器) +WESTRING_EXPFEATURE_GLOBALWEATHER=全球气候效果已指定(地图选项) +WESTRING_EXPFEATURE_CUSTOMDATA_MISC=自定义游戏平衡性常数已指定(高级->游戏平衡性常数) +WESTRING_EXPFEATURE_CUSTOMDATA_SKIN=自定义游戏界面已指定(高级->游戏界面) +WESTRING_EXPFEATURE_TRIGGER_SUBFUNCS=带有'做多个动作'的触发器功能被使用(触发编辑器) +WESTRING_EXPFEATURE_SOUNDENVIRONMENT=自定义声音环境已指定(地图选项) +WESTRING_EXPFEATURE_LIGHTENVIRONMENT=自定义光照环境已指定(地图选项) +WESTRING_EXPFEATURE_CUSTOMSCRIPTCODE=自定义脚本代码已指定(触发编辑器) +WESTRING_EXPFEATURE_ITEMTABLES=物品列表已指定(高级->物品列表) +WESTRING_EXPFEATURE_DOODADDROPITEMS=地形装饰物被设置掉落物品列表(地形装饰物属性) +WESTRING_EXPFEATURE_WATERCOLOR=自定义水颜色已设置(地图选项) + +// Tips +WESTRING_STARTLOCATION_TIP="定义游戏开始时的镜头位置,以及「对战游戏 - 创建刚开始的单位」触发的对战单位创建位置." +WESTRING_RANDOM_UNIT_TIP=表示游戏开始时将随机选取一个符合条件的单位 +WESTRING_RANDOM_ITEM_TIP=表示游戏开始时将随机选取一件符合条件的物品 +WESTRING_RANDOM_BUILDING_TIP=表示游戏开始时将随机选取一个符合条件的建筑 +WESTRING_TIP_FIXEDPLAYERS="如果「固定玩家设置」启用,则游戏创建画面中所有玩家设置将无法变更." + +// Undo action text +WESTRING_UNDO_TERRAIN_BRUSH=地形刷子 +WESTRING_UNDO_TERRAIN_FLIP=翻转地形 +WESTRING_UNDO_TERRAIN_ROTATE=旋转地形 +WESTRING_UNDO_PASTE_TERRAIN=粘帖地形 +WESTRING_UNDO_ADD_UNIT=添加单位 +WESTRING_UNDO_ADD_DOODAD=添加地形装饰物 +WESTRING_UNDO_ADD_REGION=添加矩形区域 +WESTRING_UNDO_ADD_CAMERA=添加镜头 +WESTRING_UNDO_DELETE_UNIT=删除单位 +WESTRING_UNDO_DELETE_DOODAD=删除地形装饰物 +WESTRING_UNDO_DELETE_REGION=删除矩形区域 +WESTRING_UNDO_DELETE_CAMERA=删除镜头 +WESTRING_UNDO_PASTE_UNIT=粘帖单位 +WESTRING_UNDO_PASTE_DOODAD=粘帖地形装饰物 +WESTRING_UNDO_PASTE_REGION=粘帖矩形区域 +WESTRING_UNDO_PASTE_CAMERA=粘帖镜头 +WESTRING_UNDO_MODIFY_UNIT=修改单位 +WESTRING_UNDO_MODIFY_DOODAD=修改地形装饰物 +WESTRING_UNDO_MODIFY_REGION=修改矩形区域 +WESTRING_UNDO_MODIFY_CAMERA=修改镜头 +WESTRING_UNDO_TRANSLATE_UNIT=移动单位 +WESTRING_UNDO_TRANSLATE_DOODAD=移动地形装饰物 +WESTRING_UNDO_ROTATE_UNIT=旋转单位 +WESTRING_UNDO_ROTATE_DOODAD=旋转地形装饰物 +WESTRING_UNDO_SCALE_DOODAD=缩放地形装饰物 +WESTRING_UNDO_MODIFY_TILESET=修改地形 +WESTRING_UNDO_ADJUSTCLIFFLEVELS=调整悬崖层面 +WESTRING_UNDO_REPLACE_CLIFFTYPE=替换悬崖类型 +WESTRING_UNDO_REPLACE_TILES=替换地形 +WESTRING_UNDO_REPLACE_DOODADS=替换地形装饰物 +WESTRING_UNDO_REPLACE_UNITS=替换单位 + +WESTRING_UNDO_ADD_TRIGGER=添加触发 +WESTRING_UNDO_ADD_CATEGORY=添加类别 +WESTRING_UNDO_ADD_FUNCTION=添加功能 +WESTRING_UNDO_DELETE_TRIGGER=删除触发 +WESTRING_UNDO_DELETE_CATEGORY=删除类别 +WESTRING_UNDO_DELETE_FUNCTION=删除功能 +WESTRING_UNDO_DELETE_VARIABLE=删除变量 +WESTRING_UNDO_PASTE_TRIGGER=粘帖触发 +WESTRING_UNDO_PASTE_CATEGORY=粘帖类别 +WESTRING_UNDO_PASTE_FUNCTION=粘帖功能 +WESTRING_UNDO_MOVE_TRIGGER=移动开关 +WESTRING_UNDO_MOVE_CATEGORY=移动类别 +WESTRING_UNDO_MOVE_FUNCTION=移动功能 +WESTRING_UNDO_MODIFY_TRIGGER=修改开关 +WESTRING_UNDO_MODIFY_CATEGORY=修改类别 +WESTRING_UNDO_MODIFY_FUNCTION=修改功能 +WESTRING_UNDO_MODIFY_VARIABLES=修改变量 +WESTRING_UNDO_RENAME_VARIABLE=重命名变量 +WESTRING_UNDO_CONVERT_TRIGGER=转换触发器 + +WESTRING_UNDO_VARIABLE_ADD=添加变量 +WESTRING_UNDO_VARIABLE_MODIFY=修改变量 +WESTRING_UNDO_VARIABLE_DELETE=删除变量 +WESTRING_UNDO_VARIABLE_PASTE=粘帖变量 + +// Errors and warnings +WESTRING_ERROR_CANTSAVE=无法保存文件 +WESTRING_ERROR_CANTLOAD=无法读取文件 +WESTRING_ERROR_CANTOPEN=无法打开文件 +WESTRING_ERROR_CANTFIND=无法找到文件 +WESTRING_ERROR_CANTEXECUTE=文件运行错误 +WESTRING_ERROR_MAC_CANTEXECUTE=《魔兽争霸III》无法被装载. +WESTRING_ERROR_CANTCREATEDIRECTORY=无法创建目录 +WESTRING_ERROR_MOVEFILE_CANTREPLACE=无法替换文件 '%s' +WESTRING_ERROR_MOVEFILE_CANTMOVE=无法移动文件'%s'到'%s' +WESTRING_ERROR_NOSUCHTRIGVAL=触发参数不存在 +WESTRING_ERROR_TRIGVALTYPEMISMATCH=指定值不符合触发参数类型 +WESTRING_ERROR_BADTRIGVAL=无效的参数值 +WESTRING_ERROR_NOTRIGFUNC=数据库中不存在此触发函数 +WESTRING_ERROR_TRIGFUNCTYPEMISMATCH=触发函数类型不匹配 +WESTRING_ERROR_PARAMWITHBADTYPE=触发参数列表中有无效类型 +WESTRING_ERROR_SELECTWAR3APP=请在参数选择对话框中选择你的《魔兽争霸III》应用程序. +WESTRING_ERROR_CANTADDTOMPQ=无法添加文件到存档 +WESTRING_ERROR_GLOBVARALREADYEXISTS=该变量已存在 +WESTRING_ERROR_GLOBVARTYPEMISMATCH=对同一变量赋不同类型值 +WESTRING_ERROR_GLOBVARPREDEFINED=用户定义变量和继承变量冲突 +WESTRING_ERROR_GLOBALNAMERESERVED=以'%s'开头的变量为系统保留变量 +WESTRING_ERROR_GLOBALNAMEINUSE=变量'%s'已存在. +WESTRING_ERROR_GLOBALNAMEINUSE_VARDLG=变量'%s'已存在.|n|n包括一些在当前变量对话框中已经删除的变量. +WESTRING_ERROR_VARIABLENAMEINVALID='%s'不是有效的脚本变量名. +WESTRING_ERROR_WAR3ALREADYRUNNING=《魔兽争霸III》已运行. 请关闭《魔兽争霸III》然后重试. +WESTRING_ERROR_TRIGGERCANTENABLE=该触发器被禁止因为变量'%s'不存在. +WESTRING_ERROR_TRIGNOINITFUNC=触发器'%s'必须要有初始化函数调用'%s'. +WESTRING_ERROR_TRIGGERDISABLED=发生错误. 触发'%s'被禁止. +WESTRING_ERROR_TRIGDB_ERROR=触发器数据库错误 +WESTRING_ERROR_TRIGDB_NUMPARAMMISMATCH=数据段和文本段参数数目不一致 +WESTRING_ERROR_FILEASSOCIATIONEXISTS=和%s文件关联的文件已经存在(%s). 覆盖这些设置吗 +WESTRING_ERROR_TRIGFUNCLOADERROR=读取触发功能键'%s'发生错误 +WESTRING_ERROR_CANTREMOVEFORCE=只有空的队伍可以被删除. 在删除该队伍前先把所有玩家移动到另一个队伍中. +WESTRING_ERROR_INVALIDGENGLOBALS=发现无效的继承变量并删除. 使用该变量的触发被禁用. +WESTRING_ERROR_CANTCREATEARCHIVE=无法创建存档 +WESTRING_ERROR_SYSTEMERROR=系统错误 +WESTRING_ERROR_TESTABORTED_SCRIPTERRS="脚本错误,放弃地图测试" +WESTRING_ERROR_AITESTABORTED_SCRIPTERRS="脚本错误,放弃AI测试" +WESTRING_ERROR_TRIGGERMISSINGVALUES=该触发被禁用因为缺少参数值. +WESTRING_ERROR_CANTENABLEFUNCTION_UNUSEDTRIG=该函数被禁用因为调用了未使用的触发'%s'. +WESTRING_ERROR_CANTENABLEFUNCTION_BADVAR=该函数被禁用因为变量'%s'不存在. +WESTRING_ERROR_FUNCTIONMISSINGVALUES=该函数被禁用因为缺少参数值. +WESTRING_ERROR_STRINGIMPORTMISSING=无法导入字符串因为在新文件中缺少下列字符串的ID: +WESTRING_ERROR_NOSAVEEXCEEDLIMITS1=地图无法保存因为物体最大允许数目超出范围. +WESTRING_ERROR_NOSAVEEXCEEDLIMITS2=为了保存该地图,请减少物体数目. +WESTRING_ERROR_NOSAVEEXCEEDLIMITS_DOODADNOTE=注意那些超过地图边界的可破坏物只能作为普通地形装饰物的. +WESTRING_ERROR_SOUNDVAREXISTS=变量'%s'已存在. +WESTRING_ERROR_IMPORTFILEDOESNTEXIST=导入失败:文件不能被打开 +WESTRING_ERROR_IMPORTFILENAMETOOLONG=导入失败:文件名太长 +WESTRING_ERROR_IMPORTNOTEMPDIR=导入失败:不能创建临时目录 +WESTRING_ERROR_IMPORTCANTCOPY=导入失败:不能复制文件到 +WESTRING_ERROR_IMPORTALREADYEXISTS=导入失败:文件已存在 +WESTRING_ERROR_SOUNDEXPORTFAILED=WESTRING_ERROR_FILEEXPORTFAILED +WESTRING_ERROR_FILEEXPORTFAILED=文件导出失败 +WESTRING_ERROR_CANTRESTOREDESTLIFE="和其他物体冲突,无法恢复装饰物的生命值." +WESTRING_ERROR_MAPSIZENOTMULTIPLE=完整地图大小必须是%d的倍数. +WESTRING_ERROR_MAPSIZETOOMANYCELLS=该完整地图(%d 大小) 超过了%d大小的限制 +WESTRING_ERROR_TESTABORTED_NOSTARTLOCS="缺少地图开始点,放弃地图测试" +WESTRING_ERROR_MAPFILEEXISTS=该战役中已存在'%s'地图文件. +WESTRING_ERROR_CANTCOPYCAMPAIGNMAP=无法从'%s'复制战役地图 +WESTRING_ERROR_CANTWRITECAMPAIGNMAP=无法写入战役地图 '%s' +WESTRING_ERROR_TESTAI_INVALIDMAPFILE=测试AI失败:无法打开地图'%s' +WESTRING_ERROR_TESTAI_COMPASOBSERVER=测试AI失败:电脑被设定为观察者. +WESTRING_ERROR_TESTAI_INVALIDAISCRIPT=测试AI失败:无法打开AI脚本'%s' +WESTRING_ERROR_TESTAI_NOPLAYERS=测试AI失败:没有非观察者玩家. +WESTRING_ERROR_TESTAI_TOOMANYPLAYERS=测试AI失败:太多非观察者玩家. +WESTRING_ERROR_TESTAI_NOUSER=测试AI失败:没有用户控制玩家. +WESTRING_ERROR_TESTAI_TOOMANYUSERS=测试AI失败:多个玩家被指定为用户控制. +WESTRING_AIE_ERROR_AICONDITIONNAMEXISTS=该条件名(或类似的文件名)已被使用 +WESTRING_ERROR_CE_REPLACEMAPINUSE=该地图正被编辑器打开, 请在替换地图文件之前先关掉. +WESTRING_ERROR_CE_DELETEMAPINUSE=该地图正被编辑器打开, 请在删除地图文件之前先关掉. +WESTRING_ERROR_MAPEXTERNALDATA_NOTREL=请选择与当前地图文件同目录的文件. +WESTRING_ERROR_MAPEXTERNALDATA_NOMAP=请在设置外部自定义数据之前保存当前地图. +WESTRING_ERROR_INVALIDSOUNDFILE=不是有效的声音文件. +WESTRING_ERROR_WINDOWS98ME="对不起,该功能不支持Window 98/ME系统." +WESTRING_ERROR_TRIGGERIMPORTEXPANSIONONLY=导入失败: 触发器文件包含资料片数据. + +WESTRING_LOADERROR_ARCHIVE=主要地图文件不能打开. +WESTRING_LOADERROR_MAPINFO=地形层信息数据丢失或无效. +WESTRING_LOADERROR_VERSION=地图版本不支持. +WESTRING_LOADERROR_TERRAIN=地形数据丢失或无效. +WESTRING_LOADERROR_DOODADS=地形装饰物数据丢失或无效. +WESTRING_LOADERROR_UNITS=单位数据丢失或无效. +WESTRING_LOADERROR_TRIGGERS=触发数据丢失或无效. + +WESTRING_WARNING_CANTUNDO=该动作无法被撤销.继续吗 +WESTRING_WARNING_NOSTARTLOCS=有玩家的开始点未被放置.自动放置开始点 +WESTRING_WARNING_RESETTRIGS=清除所有触发并重设到默认设置 +WESTRING_WARNING_IMPORTTRIGGERS=导入的新触发将替代所有现有触发.继续输入吗 +WESTRING_WARNING_GLOBALVARSTILLREFERENCED=该变量正被使用中 +WESTRING_WARNING_INVALIDMAPSIZE=地图大小必须在 %d 和 %d之间 +WESTRING_WARNING_NOGLOBALSDEFINED=没有定义变量! +WESTRING_WARNING_DISABLEVARIABLETRIGGERS=该变量'%s'仍在使用中.|n删除该物体会使所有使用它的触发功能失效.|n|n继续删除吗 +WESTRING_WARNING_DISABLETRIGGERINUSE=该变量'%s'正在使用中.|n禁用该触发会使所有使用它的触功能失效.|n|n继续禁用吗 +WESTRING_WARNING_REGIONEXISTS=一个同名区域已存在. +WESTRING_WARNING_REGIONNAMEALLSPACES=区域名必须包含一个非空字符. +WESTRING_WARNING_CAMERAEXISTS=一个同名镜头已存在. +WESTRING_WARNING_CAMERANAMEALLSPACES=镜头名必须包含一个非空字符. +WESTRING_WARNING_TRIGGERNAMEEXISTS=一个同名触发已存在. +WESTRING_WARNING_TRIGGERNAMEALLSPACES=触发和类别名必须包含一个非空字符. +WESTRING_WARNING_TRIGGERNAMEINVALID='%s'不是有效的触发名. +WESTRING_WARNING_VARIABLENAMEINVALID='%s'不是有效的变量名. +WESTRING_WARNING_CUSTOMTRIGGER=触发转换为文本格式后将不能被转换回去.|n请确定触发是否运行正确.|n|n继续吗 +WESTRING_WARNING_REVERTINGPLAYERS=确定要重设所有玩家信息到默认设置吗 +WESTRING_WARNING_REVERTINGALLYPRI=禁用自定义联盟优先权会改变所有现有的优先权设置.继续吗 +WESTRING_WARNING_REVERTINGFORCES=禁用自定义队伍会改变所有现有的队伍设置.继续吗 +WESTRING_WARNING_REVERTINGTECHTREE=禁用自定义科技树设置会改变所有现有的科技树设置.继续吗 +WESTRING_WARNING_REVERTINGABILITIES=禁用自定义技能设置会改变所有现有的技能设置.继续吗 +WESTRING_WARNING_REVERTINGUPGRADES=禁用自定义科技会改变所有现有的科技设置.继续吗 +WESTRING_WARNING_NOMINIMAPFILE=请选择一个目标文件来保存小地图图片. +WESTRING_WARNING_OVERWRITEFILE=%s'已经存在.|n|n是否替换该文件? +WESTRING_WARNING_CHANGEVARIABLETYPE=变量 '%s'仍在使用中.改变它的类型会重设所有和它相关的参数. 仍然要继续吗 +WESTRING_WARNING_TRIGFUNCSDISABLED=和变量'%s'相关的功能已经在下列触发中被禁用. +WESTRING_WARNING_MUSTHAVEHUMANPLAYER=至少需要一名玩家由用户控制. +WESTRING_WARNING_NOLONGERMELEE=该地图不再作为对战地图因为 +WESTRING_WARNING_EXPANSIONMAP=该地图将被作为资料片地图因为 +WESTRING_WARNING_NOSTRINGSTOEXPORT=这张地图不包含任何注册触发字符串. +WESTRING_WARNING_CANTUPROOT=无法在此拔根 +WESTRING_WARNING_CANTROOT=无法在此扎根 +WESTRING_WARNING_CANTMORPH=无法在此变形 +WESTRING_WARNING_EXCEEDEDLIMIT=超过最大数目%! +WESTRING_WARNING_RESETUNIT=你确定要将所选的单位恢复到默认设置吗 +WESTRING_WARNING_RESETITEM=你确定要将所选的物品恢复到默认设置吗 +WESTRING_WARNING_RESETDEST=你确定要将所选的可破坏物恢复到默认设置吗 +WESTRING_WARNING_RESETDOOD=你确定要将所选的地形装饰物恢复到默认设置吗 +WESTRING_WARNING_RESETABIL=你确定要将所选的技能恢复到默认设置吗 +WESTRING_WARNING_RESETBUFF=你确定要将所选的效果恢复到默认设置吗 +WESTRING_WARNING_RESETUPGR=你确定要将所选的科技恢复到默认设置吗 +WESTRING_WARNING_RESETALLUNITS=你肯定要将所有标准单位恢复到默认设置吗 +WESTRING_WARNING_RESETALLITEMS=你确定要将所有标准物品恢复到默认设置吗 +WESTRING_WARNING_RESETALLDESTS=你确定要将所有标准可破坏物恢复到默认设置吗 +WESTRING_WARNING_RESETALLDOODS=你确定要将所有标准地形装饰物恢复到默认设置吗 +WESTRING_WARNING_RESETALLABILS=你确定要将所有标准技能恢复到默认设置吗 +WESTRING_WARNING_RESETALLBUFFS=你确定要将所有标准效果恢复到默认设置吗 +WESTRING_WARNING_RESETALLUPGRS=你确定要将所有标准科技恢复到默认设置吗 +WESTRING_WARNING_SOUNDINITFAILED=警告: 无法初始化声音系统 +WESTRING_WARNING_DEFAULTNAME=该地图仍使用默认名 '%s'.|n地图名可以在地图说明对话框中设置. +WESTRING_WARNING_IMPORTUNITDATA=导入单位数据会替代所有现有的单位数据. 继续输入吗 +WESTRING_WARNING_IMPORTITEMDATA=导入物品数据会替代所有现有的物品数据. 继续输入吗 +WESTRING_WARNING_IMPORTDOODDATA=导入地形装饰物数据会替代所有现有的地形装饰物数据. 继续输入吗 +WESTRING_WARNING_IMPORTDESTDATA=导入可破坏物数据会替代所有现有的可破坏物数据. 继续输入吗 +WESTRING_WARNING_IMPORTABILDATA=导入技能数据会替代所有现有的技能数据. 继续输入吗 +WESTRING_WARNING_IMPORTBUFFDATA=导入魔法效果数据将会替代所有现有的魔法效果数据. 继续输入吗 +WESTRING_WARNING_IMPORTUPGRDATA=导入科技数据会替代所有现有的科技数据. 继续输入吗 +WESTRING_WARNING_IMPORTOBJECTDATA=导入物体数据会替代所有现有的物体数据. 继续输入吗 +WESTRING_WARNING_AIE_IMPORTCUSTOMDATA=导入自定义物体数据会替代所有现有的物体数据. 继续输入吗 +WESTRING_WARNING_AIE_CLEARCUSTOMDATA=清除所有现有的自定义物体数据 +WESTRING_WARNING_AIE_CHANGERACE=如果改变AI种族的话会改变所有表格中的数据,继续吗 +WESTRING_WARNING_REGIONUSEDBYUNITS1=该区域被以下单位使用: +WESTRING_WARNING_REGIONUSEDBYUNITS2=删除它会删除这些单位的区域数据. 继续吗 +WESTRING_WARNING_SOUNDUSEDBYREGIONS1=该声音被以下列区域使用: +WESTRING_WARNING_SOUNDUSEDBYREGIONS2=删除它会删除这些地区的声音数据. 继续吗 +WESTRING_WARNING_REVERTINGTILESET=禁用自定义地形设置会转换所有地形到标准地形设置. 继续吗 +WESTRING_WARNING_CREATECAMOUTOFBOUNDS=当前镜头位置超出允许范围. +WESTRING_WARNING_CUSTOMUNITSEXIST=该地图中仍有%d个该自定义单位. 继续删除吗 +WESTRING_WARNING_CUSTOMUNITSEXIST_ONE=该地图中仍有1个该自定义单位. 继续删除吗 +WESTRING_WARNING_CUSTOMDESTSEXIST=该地图中仍有%d个自定义可破坏物. 继续删除吗 +WESTRING_WARNING_CUSTOMDESTSEXIST_ONE=该地图中仍有1个自定义可破坏物. 继续删除吗 +WESTRING_WARNING_CUSTOMDOODSEXIST=该地图中仍有%d个自定义地形装饰物. 继续删除吗 +WESTRING_WARNING_CUSTOMDOODSEXIST_ONE=该地图中仍有1个自定义地形装饰物. 继续删除吗 +WESTRING_WARNING_DELETINGUNPLACEABLEOBJECT=删除不可放置的物体 +WESTRING_WARNING_MAPALREADYOPEN=文件'%s'已经被打开并激活了. +WESTRING_WARNING_CONFIRMDELETEIMPORT_UNUSED=你确定要删除导入文件'%s'吗 +WESTRING_WARNING_CONFIRMDELETEIMPORT_USED_ONE=导入文件正被(%d)使用. 继续删除 +WESTRING_WARNING_CONFIRMDELETEIMPORT_USED_MUL=导入文件正被(%d)使用. 继续删除 +WESTRING_WARNING_CAMPAIGNUNKNOWNMAPS="该战役包含了未知地图文件(%d,标示为红色).|n|n继续保存?" +WESTRING_WARNING_CAMPAIGNUNUSEDMAPS="该战役包含了未被使用的地图文件(%d,标示为蓝色).|n|n继续保存?" +WESTRING_WARNING_CAMPAIGNUNKNOWNANDUNUSEDMAPS="该战役包含了未知地图文件(%d,标示为红色).|n且地图文件未被使用(%d,标示为蓝色).|n|n继续保存?" +WESTRING_WARNING_BADCLIFFLEVELALPHA=未知的悬崖层Alpha值: %d +WESTRING_WARNING_ATTACKGROUPUSEDINWAVES=该单位组正被一个或更多的攻击波次设置所使用.|n|n删除它会同时删除波次设置. 继续吗 +WESTRING_WARNING_ATTACKGROUPUSEDASMIN=该单位组被使用作为最小攻击组.|n|n继续删除吗 +WESTRING_WARNING_AICONDITIONINUSE=该条件正被使用中.删除它会清除所有引用者的条件.|n|n继续吗 +WESTRING_WARNING_RESETGAMEPLAYCONSTANTS=重设所有游戏平衡性常数到默认值 +WESTRING_WARNING_AITC_INVALIDMAP=该文件不是有效的《魔兽争霸III》地图文件. +WESTRING_WARNING_AITC_MAPNOTMELEE="该地图并不是对战地图. 测试AI功能,只能用于对战地图中.|n|n对自定义地图而言,建议将AI直接导入地图中,然后再使用「测试地图」指令." +WESTRING_WARNING_AITC_MAPPATHTOOLONG=指定地图路径名过长. +WESTRING_WARNING_AITC_NOSTARTAIFUNCS=该地图不包含任何开启AI脚本的触发功能.|n|n继续使用这张地图吗 +WESTRING_WARNING_CANTLOADEXTERNALCUSTOMDATA=无法读取外部自定义数据从 +WESTRING_WARNING_REPLACEDOODAD_FAILED_SINGLE=1个地形装饰物无法被替代在其当前位置 +WESTRING_WARNING_REPLACEDOODAD_FAILED_MULT=%d个地形装饰物无法被替代在其当前位置 +WESTRING_WARNING_REPLACEUNIT_FAILED_SINGLE=1个单位无法被替代在其当前位置 +WESTRING_WARNING_REPLACEUNIT_FAILED_MULT=%d个单位无法被替代在其当前位置 +WESTRING_WARNING_CONFIRMOENEGATIVEVALS=请注意许多数据设置为负值可能会导致游戏中的问题或冲突.|n如果一定要使用,开启该项将允许你输入负数值.|n|n确定开启该项吗 +WESTRING_WARNING_CAMPAIGNMAPSTILLUSED=该地图正被一个或多个战役按钮所使用.|n|n你确定要删除该地图吗 +WESTRING_WARNING_MAPVERSIONTOONEW=该地图是由一个版本更新的编辑器保存的.|n或者它包含了一些现有版本并不支持的数据.|n|n继续载入地图吗 + +// Toolbars +WESTRING_TOOLBAR_NEW=创建新地图 +WESTRING_TOOLBAR_OPEN=打开地图... +WESTRING_TOOLBAR_SAVE=保存地图 +WESTRING_TOOLBAR_CUT=剪切 +WESTRING_TOOLBAR_COPY=复制 +WESTRING_TOOLBAR_PASTE=粘帖 +WESTRING_TOOLBAR_UNDO=撤销 +WESTRING_TOOLBAR_REDO=重做 +WESTRING_TOOLBAR_SELECT=选择刷子 +WESTRING_TOOLBAR_TESTMAP=测试地图 +WESTRING_TOOLBAR_SE_VAR=变量... +WESTRING_TOOLBAR_SE_NEWCAT=新类别 +WESTRING_TOOLBAR_SE_NEWTRIG=新触发 +WESTRING_TOOLBAR_SE_NEWTRIGCOM=新触发注释 +WESTRING_TOOLBAR_SE_EVENT=新事件 +WESTRING_TOOLBAR_SE_COND=新条件 +WESTRING_TOOLBAR_SE_ACTION=新动作 +WESTRING_TOOLBAR_OE_NEWOBJECT=新自定义物体 +WESTRING_TOOLBAR_USESOUND=作为音效使用 +WESTRING_TOOLBAR_IMPORTSOUND=导入声音 +WESTRING_TOOLBAR_EXPORTSOUND=导出声音 +WESTRING_TOOLBAR_USEMUSIC=作为音乐使用 +WESTRING_TOOLBAR_PLAYSOUND=播放声音 +WESTRING_TOOLBAR_STOPLAYBACK=停止播放 +WESTRING_TOOLBAR_IM_IMPORT=导入文件 +WESTRING_TOOLBAR_IM_EXPORT=导出文件 +WESTRING_TOOLBAR_CE_ADDMAP=添加地图 +WESTRING_TOOLBAR_CE_REMOVEMAP=删除地图 +WESTRING_TOOLBAR_CE_EDITMAP=编辑地图 +WESTRING_TOOLBAR_CE_EXPORTMAP=导出地图 +WESTRING_TOOLBAR_AIE_TESTAI=测试AI + +// Context menus +WESTRING_TRIGLIST_CM_CUT=剪切(&T) +WESTRING_TRIGLIST_CM_COPY=复制(&C) +WESTRING_TRIGLIST_CM_PASTE=粘帖(&P) +WESTRING_TRIGLIST_CM_DELETE=删除(&D) +WESTRING_TRIGLIST_CM_NEWCAT=新建类别(&G) +WESTRING_TRIGLIST_CM_NEWTRIG=新触发器(&G) +WESTRING_TRIGLIST_CM_NEWTRIGCOM=新触发注释(&M) +WESTRING_TRIGLIST_CM_ENABLED=允许触发(&E) +WESTRING_TRIGLIST_CM_INITON=初始打开(&I) + +WESTRING_FUNCLIST_CM_CUT=剪切(&T) +WESTRING_FUNCLIST_CM_COPY=复制(&C) +WESTRING_FUNCLIST_CM_COPYASTEXT=复制为文本格式(&Y) +WESTRING_FUNCLIST_CM_PASTE=粘帖(&P) +WESTRING_FUNCLIST_CM_DELETE=删除(&D) +WESTRING_FUNCLIST_CM_NEWEVENT=新事件(&V) +WESTRING_FUNCLIST_CM_NEWCOND=新条件(&N) +WESTRING_FUNCLIST_CM_NEWACTION=新动作(&A) +WESTRING_FUNCLIST_CM_ENABLEFUNC=功能允许(&E) + +WESTRING_SOUNDTREE_CM_PLAY=播放(&P) +WESTRING_SOUNDTREE_CM_STOP=停止播放(&S) +WESTRING_SOUNDTREE_CM_USESOUND=用作声音(&U) +WESTRING_SOUNDTREE_CM_EXPORTSOUND=导出声音(&E) +WESTRING_SOUNDTREE_CM_REMOVESOUND=删除导入声音(&V) +WESTRING_SOUNDTREE_CM_USEMUSIC=用作音乐(&M) +WESTRING_SOUNDTREE_CM_REPLACESOUND=替代内部声音(&R) + +WESTRING_SOUNDLIST_CM_PLAY=播放(&P) +WESTRING_SOUNDLIST_CM_STOP=停止播放(&S) +WESTRING_SOUNDLIST_CM_EDIT=编辑声音变量(&E) +WESTRING_SOUNDLIST_CM_RENAME=重命名声音变量(&M) +WESTRING_SOUNDLIST_CM_DELETE=删除声音变量(&D) + +WESTRING_OETREE_CM_NEW=新建自定义物体 +WESTRING_OETREE_CM_RENAME=重命名自定义物体 +WESTRING_OETREE_CM_DELETE=删除自定义物体 +WESTRING_OETREE_CM_RESET=重置选定物体到默认设置 + +WESTRING_FIELDLIST_CM_MODIFY=修改选定区域 +WESTRING_FIELDLIST_CM_RESET=重置选定区域到默认设置 +WESTRING_FIELDLIST_CM_AUTOFILL=自动等级填充 + +WESTRING_OBJECTTREE_CM_VIEW=察看对象(&V) +WESTRING_OBJECTTREE_CM_CROSSREF=察看引用对象(&C) +WESTRING_OBJECTTREE_CM_EDIT=编辑对象属性(&E) +WESTRING_OBJECTTREE_CM_RENAME=重命名对象(&M) +WESTRING_OBJECTTREE_CM_DELETE=删除对象(&D) + +// Hotkey text +WESTRING_HOTKEY_MOD_NONE="无附加键" +WESTRING_HOTKEY_MOD_CONTROL="Ctrl+" +WESTRING_HOTKEY_MOD_SHIFT="Shift+" +WESTRING_HOTKEY_MOD_ALT="Alt+" +WESTRING_HOTKEY_TAB="Tab" +WESTRING_HOTKEY_ESCAPE="Esc" +WESTRING_HOTKEY_DELETE="Delete" +WESTRING_HOTKEY_BACKSPACE="Backspace" +WESTRING_HOTKEY_SPACE="Space" +WESTRING_HOTKEY_UP="Up" +WESTRING_HOTKEY_DOWN="Down" +WESTRING_HOTKEY_LEFT="Left" +WESTRING_HOTKEY_RIGHT="Right" +WESTRING_HOTKEY_ENTER="Enter" +WESTRING_HOTKEY_BRACKET_OPEN="[" +WESTRING_HOTKEY_BRACKET_CLOSE="]" +WESTRING_HOTKEY_PAGEUP="Pg Up" +WESTRING_HOTKEY_PAGEDOWN="Pg Down" +WESTRING_HOTKEY_HOME="Home" +WESTRING_HOTKEY_END="End" +WESTRING_HOTKEY_PLUS="=" +WESTRING_HOTKEY_MINUS="-" +WESTRING_HOTKEY_TILDE="~" +WESTRING_HOTKEY_BACKSLASH="\" +WESTRING_HOTKEY_SEMICOLON=";" +WESTRING_HOTKEY_QUOTE="'" +WESTRING_HOTKEY_COMMA="," +WESTRING_HOTKEY_PERIOD="." +WESTRING_HOTKEY_SLASH="/" +WESTRING_HOTKEY_INSERT="Insert" +WESTRING_HOTKEY_PAUSE="Pause" +WESTRING_HOTKEY_CAPSLOCK="Caps Lock" +WESTRING_HOTKEY_NUMLOCK="Num Lock" +WESTRING_HOTKEY_SCROLLLOCK="Scroll Lock" +WESTRING_HOTKEY_PRINTSCREEN="Print Screen" +WESTRING_HOTKEY_NUMPAD_0="NumPad 0" +WESTRING_HOTKEY_NUMPAD_1="NumPad 1" +WESTRING_HOTKEY_NUMPAD_2="NumPad 2" +WESTRING_HOTKEY_NUMPAD_3="NumPad 3" +WESTRING_HOTKEY_NUMPAD_4="NumPad 4" +WESTRING_HOTKEY_NUMPAD_5="NumPad 5" +WESTRING_HOTKEY_NUMPAD_6="NumPad 6" +WESTRING_HOTKEY_NUMPAD_7="NumPad 7" +WESTRING_HOTKEY_NUMPAD_8="NumPad 8" +WESTRING_HOTKEY_NUMPAD_9="NumPad 9" +WESTRING_HOTKEY_NUMPAD_MULTIPLY="NumPad *" +WESTRING_HOTKEY_NUMPAD_DIVIDE="NumPad /" +WESTRING_HOTKEY_NUMPAD_PLUS="NumPad +" +WESTRING_HOTKEY_NUMPAD_MINUS="NumPad -" +WESTRING_HOTKEY_NUMPAD_DECIMAL="NumPad ." +WESTRING_HOTKEY_UNKNOWN=WESTRING_UNKNOWN + +WESTRING_MOUSE_BUTTON_LEFT=左按钮 +WESTRING_MOUSE_BUTTON_MIDDLE=中按钮 +WESTRING_MOUSE_BUTTON_RIGHT=右按钮 +WESTRING_MOUSE_WHEEL_UP=滚轮向上 +WESTRING_MOUSE_WHEEL_DOWN=滚轮向下 + +// Menus +WESTRING_MENU_FILE=文件(&F) +WESTRING_MENU_EDIT=编辑(&E) +WESTRING_MENU_VIEW=察看(&V) +WESTRING_MENU_LAYER=层面(&L) +WESTRING_MENU_SCENARIO=情节(&S) +WESTRING_MENU_TOOLS=工具(&T) +WESTRING_MENU_ADVANCED=高级(&A) +WESTRING_MENU_MODULE=模块(&M) +WESTRING_MENU_WINDOW=窗口(&W) +WESTRING_MENU_HELP=帮助(&H) +WESTRING_MENU_DEBUG=调试(&D) + +WESTRING_MENU_NEW=创建新地图(&N)… +WESTRING_MENU_OPEN=打开地图(&O)… +WESTRING_MENU_CLOSE=关闭地图(&C) +WESTRING_MENU_SAVE=保存地图(&S) +WESTRING_MENU_SAVEAS=地图另存为...(&A) +WESTRING_MENU_CALCSHADOWS=计算阴影并保存地图(&H) +WESTRING_MENU_EXPORTSCRIPT=导出脚本(&R)… +WESTRING_MENU_EXPORTMINIMAP=导出小地图(&M)… +WESTRING_MENU_EXPORTSTRINGS=导出字符串(&G)… +WESTRING_MENU_IMPORTSTRINGS=导入字符串(&I)… +WESTRING_MENU_EDITPREFS=参数设置(&F)… +WESTRING_MENU_CONFIGCTRLS=快捷键设置(&G)… +WESTRING_MENU_TESTMAP=测试地图(&T) +WESTRING_MENU_EXIT=退出(&X) +WESTRING_MENU_QUIT=退出(&Q) + +WESTRING_MENU_UNDO=撤消(&U) +WESTRING_MENU_REDO=重做(&R) +WESTRING_MENU_CUT=剪切(&T) +WESTRING_MENU_COPY=复制(&C) +WESTRING_MENU_COPYASTEXT=复制为文本格式(&Y) +WESTRING_MENU_PASTE=粘帖(&P) +WESTRING_MENU_PASTE_FLIPH=水平翻转粘帖内容(&H) +WESTRING_MENU_PASTE_FLIPV=垂直翻转粘帖内容(&Y) +WESTRING_MENU_PASTE_ROTCW=顺时针旋转90度粘帖内容(&9) +WESTRING_MENU_PASTE_ROTCCW=逆时针旋转90度粘帖内容(&9) +WESTRING_MENU_CLEAR=删除(&E) +WESTRING_MENU_SELECTALL=全选(&A) +WESTRING_MENU_SELECTALL_SPECIAL=全选指定类型(&L) +WESTRING_MENU_EDITPROPS=编辑属性(&D)… + +WESTRING_MENU_VIEWSELECTION=察看选择(&W) +WESTRING_MENU_VIEWCYCLE_NEXT=切换视角到下一个对象(&C) +WESTRING_MENU_VIEWCYCLE_PREV=切换视角到上一个对象(&Y) +WESTRING_MENU_VIEWINOBJMAN=在物体管理器中察看(&M) +WESTRING_MENU_VIEWINOBJED=在物体编辑器中察看(&O) +WESTRING_MENU_VIEWINPALETTE=在工具面板中选择(&P) + +WESTRING_MENU_NUDGE=位置变化(&N) +WESTRING_MENU_NUDGE_MOVE_L=向左移动(&L) +WESTRING_MENU_NUDGE_MOVE_R=向右移动(&R) +WESTRING_MENU_NUDGE_MOVE_U=向上移动(&U) +WESTRING_MENU_NUDGE_MOVE_D=向下移动(&D) +WESTRING_MENU_NUDGE_MOVE_LU=左上移动 +WESTRING_MENU_NUDGE_MOVE_LD=左下移动 +WESTRING_MENU_NUDGE_MOVE_RU=右上移动 +WESTRING_MENU_NUDGE_MOVE_RD=右下移动 +WESTRING_MENU_NUDGE_ROTATE_L=向左旋转 +WESTRING_MENU_NUDGE_ROTATE_R=向右旋转 +WESTRING_MENU_NUDGE_SCALE_U=尺寸放大 +WESTRING_MENU_NUDGE_SCALE_D=尺寸缩小 +WESTRING_MENU_NUDGE_SCALE_UXY=XY面放大 +WESTRING_MENU_NUDGE_SCALE_DXY=XY面缩小 +WESTRING_MENU_NUDGE_SCALE_UZ=Z轴放大 +WESTRING_MENU_NUDGE_SCALE_DZ=Z轴缩小 + +WESTRING_MENU_FLIPV=垂直翻转选择内容(&V) +WESTRING_MENU_FLIPH=水平翻转选择内容(&H) +WESTRING_MENU_ROTATE180=180度旋转选择内容(&1) +WESTRING_MENU_ROTATE90CW=顺时针90度旋转选择内容(&9) +WESTRING_MENU_ROTATE90CCW=逆时针90度旋转选择内容(&9) + +WESTRING_MENU_OBJECTMOVEUP=上移(&M) +WESTRING_MENU_OBJECTMOVEDOWN=下移(&W) +WESTRING_MENU_SELECTNEXTOBJ=选择下一个(&X) +WESTRING_MENU_SELECTPREVOBJ=选择上一个(&V) + +WESTRING_MENU_TEXTURED=纹理(&T) +WESTRING_MENU_WIREFRAME=线框(&W) +WESTRING_MENU_HIDDEN=隐藏(&H) + +WESTRING_MENU_TERRAIN=地形(&T) +WESTRING_MENU_DOODADS=地形装饰物(&D) +WESTRING_MENU_UNITS=单位(&U) +WESTRING_MENU_UNITINFO=信息显示(&I) +WESTRING_MENU_WATER=水(&W) +WESTRING_MENU_BLIGHT=荒芜地表(&H) +WESTRING_MENU_PATHING=路径-地面(&P) +WESTRING_MENU_NAVALPATHING=路径-海面(&V) +WESTRING_MENU_SHADOWS=阴影(&S) +WESTRING_MENU_LIGHTING=光照(&L) +WESTRING_MENU_WEATHER=天气(&E) +WESTRING_MENU_GRID=栅格(&G) +WESTRING_MENU_GRID_NONE=无(&N) +WESTRING_MENU_GRID_LARGE=大(&L) +WESTRING_MENU_GRID_MEDIUM=中(&M) +WESTRING_MENU_GRID_SMALL=小(&S) +WESTRING_MENU_CAMERABOUNDS=可用镜头范围(&B) +WESTRING_MENU_HEIGHTMAP=高度地图(&E) +WESTRING_MENU_REGIONS=矩形区域(&R) +WESTRING_MENU_CAMERAS=镜头(&C) +WESTRING_MENU_CAMERAOBJECTS=镜头对象(&J) +WESTRING_MENU_SKY=天空(&K) +WESTRING_MENU_FOGEFFECTS=迷雾效果(&F) +WESTRING_MENU_GAMEVIEWSETTINGS=锁定游戏显示设置(&M) +WESTRING_MENU_GAMECAMERATOG=锁定为游戏视角(&C) +WESTRING_MENU_LETTERBOX=信箱模式(&X) +WESTRING_MENU_GAMECAMERASNAP=跳转到游戏视角(&N) + +WESTRING_MENU_MAPDESCRIPTION=地图说明(&D)… +WESTRING_MENU_MAPOPTIONS=地图选项(&O)… +WESTRING_MENU_MAPSIZE=地图大小和镜头范围(&S)… +WESTRING_MENU_LOADSCREEN=载入画面(&L)... +WESTRING_MENU_PROLOGUE=地图序言场景(&G)... +WESTRING_MENU_MAPPREFS=地图参数(&R)... +WESTRING_MENU_PLAYERPROPS=玩家设置(&P)… +WESTRING_MENU_FORCEPROPS=队伍设置(&F)… +WESTRING_MENU_ALLYPRIPROPS=联盟优先权设置(&A)… +WESTRING_MENU_TECHPROPS=科技树设置(&T)… +WESTRING_MENU_ABILITIES=技能设置(&B)… +WESTRING_MENU_UPGRADEPROPS=科技设置(&U)… + +WESTRING_MENU_SELBRUSH=选择刷子(&E) +WESTRING_MENU_RESETRANDBRUSH=重设随机刷子(&M) +WESTRING_MENU_SETUNIFORMZ=统一所选装饰物高度(&U) +WESTRING_MENU_HEIGHTBRUSH=圆形刷子(&O) +WESTRING_MENU_LEVELBRUSH=高原刷子(&P) +WESTRING_MENU_NOISEBRUSH=陡峭刷子(&N) +WESTRING_MENU_SMOOTHBRUSH=平滑刷子(&S) +WESTRING_MENU_BRUSHSIZE=刷子大小(&B) +WESTRING_MENU_BRUSHSHAPE=刷子形状(&A) +WESTRING_MENU_CIRCLE=圆周(&C) +WESTRING_MENU_SQUARE=正方形(&S) +WESTRING_MENU_RANDROTDOODS=随机角度放置(&R) +WESTRING_MENU_RANDSCALEDOODS=随机大小放置(&D) +WESTRING_MENU_OFF=关闭(&O) +WESTRING_MENU_SYMMETRIC=对称(&S) +WESTRING_MENU_ASYMMETRIC=完全随机(&A) +WESTRING_MENU_ASYM_Z=Z轴随机(&Z) +WESTRING_MENU_ASYM_XY=XY面随机(&X) + +WESTRING_MENU_MODTILESET=修改地形设置(&M)... +WESTRING_MENU_RANDOMGROUPS=随机组(&G)... +WESTRING_MENU_ITEMTABLES=物品列表(&I)... +WESTRING_MENU_RESETHEIGHT=重置地形高度(&H)... +WESTRING_MENU_ADJUSTCLIFFLEVELS=调整悬崖层面(&L)... +WESTRING_MENU_REPLACETILES=替换地形(&S)... +WESTRING_MENU_REPLACECLIFFTYPE=替换悬崖类型(&Y)... +WESTRING_MENU_REPLACEDOODADS=替换地形装饰物(&D)... +WESTRING_MENU_REPLACEUNITS=替换单位(&U)... +WESTRING_MENU_GAMECONSTANTS=游戏平衡性常数(&P) +WESTRING_MENU_GAMEINTERFACE=游戏界面(&F)... +WESTRING_MENU_VIEWENTIREMAP=察看完整地图(&V) +WESTRING_MENU_RESETTEXVAR=重设纹理变化(&T) +WESTRING_MENU_CYCLERG_NEXT=循环随机组 - 后一个(&N) +WESTRING_MENU_CYCLERG_PREV=循环随机组 - 前一个(&R) +WESTRING_MENU_AUTORANDGROUPS=自动循环随机组(&A) +WESTRING_MENU_WATERLIMITS=强制水的高度限制(&W) +WESTRING_MENU_ENFORCE_CAMBOUNDS=强制可用镜头范围(&C) +WESTRING_MENU_RESETFIXEDZ=重置固定物体高度(&X) + +WESTRING_MENU_MODULE_TERRAIN=地形编辑器(&T) +WESTRING_MENU_MODULE_SCRIPTS=触发编辑器(&R) +WESTRING_MENU_MODULE_SOUND=声音编辑器(&N) +WESTRING_MENU_OBJECTEDITOR=物体编辑器(&O) +WESTRING_MENU_MODULE_CAMPAIGN=战役编辑器(&C) +WESTRING_MENU_OBJECTMANAGER=物体管理器(&O) +WESTRING_MENU_IMPORTMANAGER=输入管理器(&I) +WESTRING_MENU_MODULE_AI=AI编辑器(&A) + +WESTRING_MENU_NEWPALETTE=新面板(&N) +WESTRING_MENU_SHOWPALETTES=显示面板(&S) +WESTRING_MENU_TOOLBAR=工具栏(&T) +WESTRING_MENU_MINIMAP=小地图(&M) +WESTRING_MENU_PREVIEWER=预览器(&P) +WESTRING_MENU_TREEVIEW=刷子表(&B) + +WESTRING_MENU_W3HELP=《魔兽争霸III》地图编辑器帮助(&H)... +WESTRING_MENU_LICENSE=许可协议(&L)... +WESTRING_MENU_ABOUT=关于《魔兽争霸III》地图编辑器(&A)... + +WESTRING_MENU_DELINVALIDOBJS=删除无效物体(&I) + +WESTRING_MENU_RESETSCRIPT=重置触发器(&R) +WESTRING_MENU_RENAME=重命名(&M) +WESTRING_MENU_IMPORTTRIGGERS=导入触发器(&I)... +WESTRING_MENU_EXPORTTRIGGERS=导出触发器(&E)... +WESTRING_MENU_CLOSEMODULE=关闭模块(&C) + +WESTRING_MENU_ENABLETRIGGER=允许触发器(&I) +WESTRING_MENU_TRIGGERINITON=初始化打开(&O) +WESTRING_MENU_ENABLEFUNCTION=允许功能(&B) +WESTRING_MENU_CATEGORYCOMMENT=使用注释格式(&R) +WESTRING_MENU_TRIGGERTOTEXT=转化为自定义文本(&X) +WESTRING_MENU_SE_FIND=查找(&F)... +WESTRING_MENU_SE_FINDNEXT=查找下一个(&N) +WESTRING_MENU_SE_FINDPREV=查找上一个(&P) +WESTRING_MENU_GLOBVARS=变量(&V)… +WESTRING_MENU_MOVEUP=上移(&M) +WESTRING_MENU_MOVEDOWN=下移(&D) + +WESTRING_MENU_TE_NEW=新建(&N) +WESTRING_MENU_CATEGORY=类别(&G) +WESTRING_MENU_TRIGGER=触发器(&T) +WESTRING_MENU_TRIGGERCOMMENT=触发注释(&M) +WESTRING_MENU_EVENT=事件(&E)… +WESTRING_MENU_CONDITION=条件(&C)… +WESTRING_MENU_ACTION=动作(&A)... + +WESTRING_MENU_ADDVARIABLE=新建变量(&N)… +WESTRING_MENU_EDITVARIABLE=编辑变量(&E)… +WESTRING_MENU_RENAMEVARIABLE=重命名变量(&R)... +WESTRING_MENU_DELETEVARIABLE=删除变量(&D) + +WESTRING_MENU_OE_NEW=新建自定义物体(&N)... +WESTRING_MENU_OE_RENAME=重命名自定义物体(&R)... +WESTRING_MENU_OE_DELETE=删除自定义物体(&D) +WESTRING_MENU_OE_RESETSEL=重置选择物体到默认设置(&L) +WESTRING_MENU_OE_RESETALL=重置标准物体到默认设置(&T) +WESTRING_MENU_OE_EXPORT=导出物体设置(&E)... +WESTRING_MENU_OE_IMPORT=导入物体设置(&I)... +WESTRING_MENU_OE_EXPORTALL=导出所有物体数据(&X)... +WESTRING_MENU_OE_IMPORTALL=导入所有物体数据(&M)... +WESTRING_MENU_OE_MODIFYFIELD=修改选定区域(&M)... +WESTRING_MENU_OE_RESETFIELD=重置选定区域到默认设置(&S) +WESTRING_MENU_OE_AUTOFILL=自动等级填充(&L)… +WESTRING_MENU_OE_TOGGLERAWDATA=使用原始数据显示(&R) +WESTRING_MENU_OE_TOGGLESORTBYNAME=按名字排列(&J) +WESTRING_MENU_OE_FIELD_COPY=复制区域值(&C) +WESTRING_MENU_OE_FIELD_PASTE=粘帖区域值(&P) +WESTRING_MENU_OE_FIND=查找(&F)... +WESTRING_MENU_OE_FINDNEXT=查找下一个(&N) +WESTRING_MENU_OE_FINDPREV=寻找上一个(&P) + +WESTRING_MENU_OE_UNIT_NEW=新建自定义单位(&N)... +WESTRING_MENU_OE_UNIT_RENAME=重命名自定义单位(&M)... +WESTRING_MENU_OE_UNIT_DELETE=删除自定义单位(&D) +WESTRING_MENU_OE_UNIT_RESETSEL=重置选择单位到默认设置(&L) +WESTRING_MENU_OE_UNIT_RESETALL=重置标准单位到默认设置(&T) +WESTRING_MENU_OE_UNIT_EXPORT=导出单位设置(&E)... +WESTRING_MENU_OE_UNIT_IMPORT=导入单位设置(&I)... +WESTRING_MENU_OE_UNIT_COPY=复制单位(&C) +WESTRING_MENU_OE_UNIT_PASTE=粘帖单位(&P) + +WESTRING_MENU_OE_ITEM_NEW=新建自定义物品(&N)... +WESTRING_MENU_OE_ITEM_RENAME=重命名自定义物品(&M)... +WESTRING_MENU_OE_ITEM_DELETE=删除自定义物品(&D) +WESTRING_MENU_OE_ITEM_RESETSEL=重置选择物品到默认设置(&L) +WESTRING_MENU_OE_ITEM_RESETALL=重置标准物品到默认设置(&T) +WESTRING_MENU_OE_ITEM_EXPORT=导出物品设置(&E)... +WESTRING_MENU_OE_ITEM_IMPORT=导入物品设置(&I)... +WESTRING_MENU_OE_ITEM_COPY=复制物品(&C) +WESTRING_MENU_OE_ITEM_PASTE=粘帖物品(&P) + +WESTRING_MENU_OE_ABIL_NEW=新建自定义技能(&N)... +WESTRING_MENU_OE_ABIL_RENAME=重命名自定义技能(&M)… +WESTRING_MENU_OE_ABIL_DELETE=删除自定义技能(&D) +WESTRING_MENU_OE_ABIL_RESETSEL=重置选择技能到默认设置(&L) +WESTRING_MENU_OE_ABIL_RESETALL=重置标准技能到默认设置(&T) +WESTRING_MENU_OE_ABIL_EXPORT=导出技能设置(&E)... +WESTRING_MENU_OE_ABIL_IMPORT=导入技能设置(&I)... +WESTRING_MENU_OE_ABIL_COPY=复制技能(&C) +WESTRING_MENU_OE_ABIL_PASTE=粘帖技能(&P) + +WESTRING_MENU_OE_BUFF_NEW=新建自定义效果(&N)…… +WESTRING_MENU_OE_BUFF_RENAME=重命名自定义效果(&M)…… +WESTRING_MENU_OE_BUFF_DELETE=删除自定义效果(&D) +WESTRING_MENU_OE_BUFF_RESETSEL=重置选择魔法效果到默认设置(&L) +WESTRING_MENU_OE_BUFF_RESETALL=重置标准魔法效果到默认设置(&T) +WESTRING_MENU_OE_BUFF_EXPORT=导出魔法效果设置(&E)…… +WESTRING_MENU_OE_BUFF_IMPORT=导入魔法效果设置(&C)…… +WESTRING_MENU_OE_BUFF_COPY=复制魔法效果(&C) +WESTRING_MENU_OE_BUFF_PASTE=粘贴魔法效果(&P) + +WESTRING_MENU_OE_UPGR_NEW=新建自定义科技(&N)... +WESTRING_MENU_OE_UPGR_RENAME=重命名自定义科技(&M)... +WESTRING_MENU_OE_UPGR_DELETE=删除自定义科技(&D) +WESTRING_MENU_OE_UPGR_RESETSEL=重置选择科技到默认设置(&L) +WESTRING_MENU_OE_UPGR_RESETALL=重置标准科技到默认设置(&T) +WESTRING_MENU_OE_UPGR_EXPORT=导出科技设置(&E)... +WESTRING_MENU_OE_UPGR_IMPORT=导入科技设置(&I)... +WESTRING_MENU_OE_UPGR_COPY=复制科技(&C) +WESTRING_MENU_OE_UPGR_PASTE=粘帖科技(&P) + +WESTRING_MENU_OE_DEST_NEW=新建自定义可破坏物(&N)... +WESTRING_MENU_OE_DEST_RENAME=重命名自定义可破坏物(&M)... +WESTRING_MENU_OE_DEST_DELETE=删除自定义可破坏物(&D) +WESTRING_MENU_OE_DEST_RESETSEL=重设选择可破坏物到默认设置(&L) +WESTRING_MENU_OE_DEST_RESETALL=重设标准可破坏物到默认设置(&T) +WESTRING_MENU_OE_DEST_EXPORT=导出可破坏物设置(&E)... +WESTRING_MENU_OE_DEST_IMPORT=导入可破坏物设置(&I)... +WESTRING_MENU_OE_DEST_COPY=复制可破坏物(&C) +WESTRING_MENU_OE_DEST_PASTE=粘帖可破坏物(&P) + +WESTRING_MENU_OE_DOOD_NEW=新建自定义装饰物(&N)... +WESTRING_MENU_OE_DOOD_RENAME=重命名自定义装饰物(&M)... +WESTRING_MENU_OE_DOOD_DELETE=删除自定义装饰物(&D) +WESTRING_MENU_OE_DOOD_RESETSEL=重置选择装饰物到默认设置(&L) +WESTRING_MENU_OE_DOOD_RESETALL=重置标准装饰物到默认设置(&T) +WESTRING_MENU_OE_DOOD_EXPORT=导出地形装饰物设置(&E)... +WESTRING_MENU_OE_DOOD_IMPORT=导入地形装饰物设置(&I)... +WESTRING_MENU_OE_DOOD_COPY=复制地形装饰物(&C) +WESTRING_MENU_OE_DOOD_PASTE=粘帖地形装饰物(&P) + +WESTRING_MENU_USESOUND=用作音效(&U) +WESTRING_MENU_USESOUNDALL=用作音效(所有) +WESTRING_MENU_IMPORTSOUND=导入声音(&I)... +WESTRING_MENU_EXPORTSOUND=导出声音(&E)... +WESTRING_MENU_REMOVESOUND=删除导入的声音(&V) +WESTRING_MENU_USEMUSIC=用作音乐(&M) +WESTRING_MENU_REPLACESOUND=替代内部声音(&R)... + +WESTRING_MENU_PLAYSOUND=播放声音(&P) +WESTRING_MENU_STOPLAYBACK=停止播放(&S) +WESTRING_MENU_RENAMESOUNDVAR=重命名声音变量(&R)... +WESTRING_MENU_SORTSOUNDVAR=按名字排序(&O) +WESTRING_MENU_DELETESOUNDVAR=删除声音变量(&D) +WESTRING_MENU_VIEWSOUNDPROPS=编辑声音属性(&E)... +WESTRING_MENU_MOVESOUNDVARUP=向上移动(&U) +WESTRING_MENU_MOVESOUNDVARDOWN=向下移动(&W) +WESTRING_MENU_SNE_FIND=查找(&F)... +WESTRING_MENU_SNE_FINDNEXT=查找下一个(&N) +WESTRING_MENU_SNE_FINDPREV=查找前一个(&P) + +WESTRING_MENU_SOUNDVOL_UP=提高音效音量(&I) +WESTRING_MENU_SOUNDVOL_DOWN=降低音效音量(&C) +WESTRING_MENU_MUSICVOL_UP=提高音乐音量(&M) +WESTRING_MENU_MUSICVOL_DOWN=降低音乐音量(&U) + +WESTRING_MENU_CE_NEW=新建战役(&N)... +WESTRING_MENU_CE_OPEN=打开战役(&O)... +WESTRING_MENU_CE_CLOSE=关闭战役(&C) +WESTRING_MENU_CE_SAVE=保存战役(&S) +WESTRING_MENU_CE_SAVEAS=战役另存为(&A)... +WESTRING_MENU_CE_ADDMAP=添加地图(&M)... +WESTRING_MENU_CE_REMOVEMAP=删除地图(&R) +WESTRING_MENU_CE_EDITMAP=编辑地图(&E) +WESTRING_MENU_CE_EXPORTMAP=导出地图(&X)... +WESTRING_MENU_CE_REPLACEMAP=替换地图(&L)... +WESTRING_MENU_CE_MOVEMAPUP=上移地图(&U) +WESTRING_MENU_CE_MOVEMAPDOWN=下移地图(&D) +WESTRING_MENU_CE_GAMECONSTANTS=游戏平衡性常数(&P) +WESTRING_MENU_CE_GAMEINTERFACE=游戏界面(&F)... +WESTRING_MENU_CE_ADDBUTTON=添加按钮(&A)... +WESTRING_MENU_CE_EDITBUTTON=编辑按钮(&E)... +WESTRING_MENU_CE_DELETEBUTTON=删除按钮(&D) +WESTRING_MENU_CE_MOVEBUTTONUP=上移按钮(&U) +WESTRING_MENU_CE_MOVEBUTTONDOWN=下移按钮(&O) +WESTRING_MENU_CE_HELP=战役编辑器帮助(&H)... + +WESTRING_MENU_AIE_NEW=新建AI数据(&N)... +WESTRING_MENU_AIE_OPEN=打开AI数据(&O)... +WESTRING_MENU_AIE_CLOSE=关闭AI数据(&C) +WESTRING_MENU_AIE_SAVE=保存AI数据(&S) +WESTRING_MENU_AIE_SAVEAS=AI数据另存为(&A)… + +WESTRING_MENU_AIE_EXPORTSCRIPT=导出脚本(&X)... +WESTRING_MENU_AIE_ADDTOMAP=添加到地图(&M)... +WESTRING_MENU_AIE_TESTAI=测试AI(&T) +WESTRING_MENU_AIE_ADDITEM=添加项目(&A)... +WESTRING_MENU_AIE_EDITITEM=编辑项目(&E)... +WESTRING_MENU_AIE_MOVEUP=上移(&U) +WESTRING_MENU_AIE_MOVEDOWN=下移(&D) +WESTRING_MENU_AIE_MODIFY_COND=修改条件(&M)... + +WESTRING_MENU_AIE_ADD_COND=添加条件(&A)... +WESTRING_MENU_AIE_EDIT_COND=编辑条件(&E)... +WESTRING_MENU_AIE_ADD_PRIORITY=添加设置(&A)... +WESTRING_MENU_AIE_EDIT_PRIORITY=编辑设置(&E)... +WESTRING_MENU_AIE_ADD_GROUP=添加组(&A) +WESTRING_MENU_AIE_ADD_UNIT=添加单位(&A)... +WESTRING_MENU_AIE_EDIT_UNIT=编辑单位(&E)... +WESTRING_MENU_AIE_ADD_WAVE=添加设置(&A)... +WESTRING_MENU_AIE_EDIT_WAVE=编辑设置(&E)... + +WESTRING_MENU_OM_VIEW=察看对象(&V) +WESTRING_MENU_OM_CROSSREF=察看引用对象(&C) +WESTRING_MENU_OM_EDITPROPS=编辑对象属性(&E) +WESTRING_MENU_OM_DELETE=删除对象(&D) +WESTRING_MENU_OM_RENAME=重命名对象(&R) +WESTRING_MENU_OM_PLAYSOUND=播放声音(&P) + +WESTRING_MENU_OM_MAPSUMMARY=地图概况(&M) +WESTRING_MENU_OM_UNITS=单位(&U) +WESTRING_MENU_OM_ITEMS=物品(&I) +WESTRING_MENU_OM_DOODADS=地形装饰物(&D) +WESTRING_MENU_OM_REGIONS=矩形区域(&R) +WESTRING_MENU_OM_CAMERAS=镜头(&C) +WESTRING_MENU_OM_TRIGGERS=触发器(&T) +WESTRING_MENU_OM_FUNCTIONS=函数(&F) +WESTRING_MENU_OM_VARIABLES=变量(&V) +WESTRING_MENU_OM_SOUNDS=声音(&S) + +WESTRING_MENU_IM_IMPORT=导入文件(&I) +WESTRING_MENU_IM_IMPORTMULT=导入文件夹(&P)... +WESTRING_MENU_IM_EXPORT=导出文件(&E) +WESTRING_MENU_IM_EXPORTALL=导出所有文件(&X)... +WESTRING_MENU_IM_MODIFY=修改文件属性(&M) +WESTRING_MENU_IM_REPLACE=替换文件(&R)... +WESTRING_MENU_IM_DELETE=删除文件(&D) + +// Tiles +WESTRING_TILE_DIRT=泥土 +WESTRING_TILE_CRACKED_DIRT=碎土 +//#LINENOBETA +WESTRING_TILE_DARK_CRACKED_DIRT=碎土 +WESTRING_TILE_LIGHT_DIRT=淡色泥土 +WESTRING_TILE_ROCKY_DIRT=石质泥土 +WESTRING_TILE_ROUGH_DIRT=坑洼的泥土 +WESTRING_TILE_DARK_DIRT=黑泥 +WESTRING_TILE_FROSTY_DIRT=霜冻泥土 +WESTRING_TILE_RED_DIRT=红色泥土 +WESTRING_TILE_MIXED_DIRT=混合泥土 +WESTRING_TILE_FLAT_ROCK=平岩 +WESTRING_TILE_GRASSY_DIRT=草色泥土 +WESTRING_TILE_DIRT_SLAB=厚泥土 +WESTRING_TILE_ROCK_COBBLE=鹅卵石路 +WESTRING_TILE_DARK_ROCK=深色岩石 +WESTRING_TILE_LIGHT_ROCK=淡色岩石 +WESTRING_TILE_PEBBLES=石子地 +WESTRING_TILE_MOSS=苔 +WESTRING_TILE_ROCKY_GRASS=石质草地 +WESTRING_TILE_DARK_GRASS=深色草地 +WESTRING_TILE_GRASS=草地 +WESTRING_TILE_LIGHT_GRASS=淡色草地 +WESTRING_TILE_LUMPY_GRASS=粗草地 +WESTRING_TILE_SAND=沙地 +WESTRING_TILE_FLAT_ROCK=平岩地 +WESTRING_TILE_DARK_FLAT_ROCK=深色平岩 +WESTRING_TILE_LIGHT_FLAT_ROCK=淡色平岩 +WESTRING_TILE_ROCK=岩石 +WESTRING_TILE_GREY_STONES=灰色的石头 +WESTRING_TILE_RED_STONE=红色石头 +WESTRING_TILE_LAVA=火山岩 +WESTRING_TILE_LAVA_CRACKS=熔岩碎片 +WESTRING_TILE_GRASSY_LEAVES=草色叶子 +WESTRING_TILE_LIGHT_LEAVES=淡色叶子 +WESTRING_TILE_DARK_LEAVES=深色叶子 +WESTRING_TILE_SNOWY_LEAVES=覆盖雪的叶子 +WESTRING_TILE_LEAVES=叶子 +WESTRING_TILE_SNOW=雪 +WESTRING_TILE_CRACKED_POISON=轻微污染的地面 +WESTRING_TILE_POISON=污染的地面 +WESTRING_TILE_SKULLS=头骨 +WESTRING_TILE_DARK_BLACK_ICE=深色黑冰 +WESTRING_TILE_LIGHT_BLACK_ICE=淡色黑冰 +WESTRING_TILE_BLACK_ROCK=黑色岩石 +WESTRING_TILE_DARK_ICE=黑冰 +WESTRING_TILE_ICE=冰 +WESTRING_TILE_ICE_CHUNKS=冰块 +WESTRING_TILE_ICE_THICK=厚冰 +WESTRING_TILE_DARK_SNOW=脏雪 +WESTRING_TILE_ROCKY_SNOW=积雪石头 +WESTRING_TILE_TAR=柏油 +WESTRING_TILE_DESERT=沙漠 +WESTRING_TILE_DESERT_DETAIL=小型沙漠 +WESTRING_TILE_DARK_DESERT=深色沙漠 +WESTRING_TILE_GRASSY_SNOW=积雪的草 +WESTRING_TILE_MUD=泥土 +WESTRING_TILE_MUDDY_DIRT=泥泞泥土 +WESTRING_TILE_DIRT_ROAD=泥路 +WESTRING_TILE_ROCKY_ROAD=石质道路 +WESTRING_TILE_ROUND_TILES=圆形地形 +WESTRING_TILE_BRICK=砖 +WESTRING_TILE_SMALL_BRICKS=小砖 +WESTRING_TILE_LARGE_BRICKS=大砖 +WESTRING_TILE_SQUARE_TILES=正方形地形 +WESTRING_TILE_SHORT_GRASS=草地 +WESTRING_TILE_GRASS_TRIM=平整的草地 +WESTRING_TILE_BLACK_MARBLE=黑色的大理石 +WESTRING_TILE_WHITE_MARBLE=白色大理石 +WESTRING_TILE_BOUNDARY=边界 +WESTRING_TILE_ROCKS=岩石 +WESTRING_TILE_COBBLE_PATH=鹅卵石路 +WESTRING_TILE_VILLAGE_ROUNDS=村庄周围环境 +WESTRING_TILE_STONE_PATH=石头路径 +WESTRING_TILE_THICK_GRASS=厚草地 +WESTRING_TILE_CROPS=庄稼 +WESTRING_TILE_VINES=藤蔓 +WESTRING_TILE_ROUNDTILES=圆形地形 +WESTRING_TILE_BLACK_BRICKS=黑色的砖 +WESTRING_TILE_CRACKED_ICE=碎冰 +WESTRING_TILE_DARK_ICE=黑冰 +WESTRING_TILE_RUNED_BRICKS=刻有北欧文字的砖 +WESTRING_TILE_TILED_BRICKS=平铺的砖 +WESTRING_TILE_SAND=沙地 +WESTRING_TILE_BLACK_SQUARES=黑色的正方形 +WESTRING_TILE_FLAT_STONES=平石 +WESTRING_TILE_DARK_TILES=深色地形 +WESTRING_TILE_LIGHT_FLAT_STONES=淡色平石 +//#LINENOBETA +WESTRING_TILE_ABYSS=深渊 + +// Cliff types +WESTRING_CLIFF_CLdi=泥土悬崖 +WESTRING_CLIFF_CLgr=草地悬崖 +WESTRING_CLIFF_CLno=泥土/边界悬崖 +WESTRING_CLIFF_CFdi=泥土悬崖 +WESTRING_CLIFF_CFgr=草地悬崖 +WESTRING_CLIFF_CWsn=雪地悬崖 +WESTRING_CLIFF_CWgr=草地悬崖 +WESTRING_CLIFF_CBde=沙漠悬崖 +WESTRING_CLIFF_CBgr=草地悬崖 +WESTRING_CLIFF_CNdi=泥土悬崖 +WESTRING_CLIFF_CNsn=雪地悬崖 +WESTRING_CLIFF_CAgr=草地悬崖 +WESTRING_CLIFF_CAdi=泥土悬崖 +WESTRING_CLIFF_CCgr=草地悬崖 +WESTRING_CLIFF_CCdi=泥土悬崖 +WESTRING_CLIFF_CYdi=泥土悬崖 +WESTRING_CLIFF_CYsq=砖砌墙壁 +WESTRING_CLIFF_CVdi=泥土悬崖 +WESTRING_CLIFF_CVgr=草地悬崖 +WESTRING_CLIFF_CXdi=泥土悬崖 +WESTRING_CLIFF_CXsq=砖砌墙壁 +WESTRING_CLIFF_CDdi=天然墙壁 +WESTRING_CLIFF_CDsq=砖砌墙壁 +WESTRING_CLIFF_CZdi=泥土悬崖 +WESTRING_CLIFF_CZlb=遗迹墙壁 +WESTRING_CLIFF_CIsn=雪地悬崖 +WESTRING_CLIFF_CIrb=砖砌墙壁 +WESTRING_CLIFF_COdi=泥土悬崖 +WESTRING_CLIFF_COdt=黑土悬崖 +WESTRING_CLIFF_COrd=泥土悬崖 +//#LINENOBETA +WESTRING_CLIFF_CKdi=泥土悬崖 +//#LINENOBETA +WESTRING_CLIFF_CKdt=黑土悬崖 +//#LINENOBETA +WESTRING_CLIFF_CKrd=泥土悬崖 +//#LINENOBETA +WESTRING_CLIFF_CJdi=泥土悬崖 +//#LINENOBETA +WESTRING_CLIFF_CJsq=砖砌墙壁 + +// Doodads +WESTRING_DOOD_APBS=矮树丛 +WESTRING_DOOD_APCT=香蒲 +WESTRING_DOOD_APLP=睡莲叶子 +WESTRING_DOOD_ARST=石头 +WESTRING_DOOD_APMS=蘑菇 +WESTRING_DOOD_APHS=空树桩 +WESTRING_DOOD_APTV=带刺藤蔓 +WESTRING_DOOD_AOBD=鸟 +WESTRING_DOOD_AOBR=头骨火盆 +WESTRING_DOOD_AOFS=鱼 +WESTRING_DOOD_AOF2=绿色的鱼 +WESTRING_DOOD_AOGS=阿斯祖恩守护者雕像 +WESTRING_DOOD_AOKS=看守者雕像 +WESTRING_DOOD_AOLG=直放的圆木 +WESTRING_DOOD_AOLA=斜放的圆木 +WESTRING_DOOD_AOOB=石塔 +WESTRING_DOOD_AOGO=炽热石塔 +WESTRING_DOOD_AOSR=烧焦的遗体 +WESTRING_DOOD_AOTO=图腾 +WESTRING_DOOD_ASPL=柱子 +WESTRING_DOOD_ASPR=码头 +WESTRING_DOOD_ASBC=断裂的圆柱 +WESTRING_DOOD_ASBR=碎石 +WESTRING_DOOD_ASBW=毁坏的黑色墙壁 +WESTRING_DOOD_ASBL=毁坏的石块 +WESTRING_DOOD_ASSL=毁坏的路面 +WESTRING_DOOD_ASWT=世界之树 +WESTRING_DOOD_BOBO=骨头 +WESTRING_DOOD_BOCT=半人马图腾 +WESTRING_DOOD_BOTT=牛头人图腾 +WESTRING_DOOD_BPCA=仙人掌 +WESTRING_DOOD_BRCR=弹坑 +WESTRING_DOOD_BRFS=裂缝 +WESTRING_DOOD_BRGS=间歇泉 +WESTRING_DOOD_BRRP=岩石柱 +WESTRING_DOOD_BRRS=岩石尖顶 +WESTRING_DOOD_BRSP=小岩石尖顶 +WESTRING_DOOD_BSAR=毁坏的拱门 +WESTRING_DOOD_BSRB=毁坏的建筑 +WESTRING_DOOD_BSRC=毁坏的石块 +WESTRING_DOOD_BSRV=毁坏的弧形墙 +WESTRING_DOOD_BSRW=毁坏的墙 +WESTRING_DOOD_BSBS=石头桥 +WESTRING_DOOD_COBL=荒芜毒雾 +WESTRING_DOOD_CODF=死鱼 +WESTRING_DOOD_LPCR=玉米 +WESTRING_DOOD_LPLP=睡莲叶子 +WESTRING_DOOD_LPFP=飘浮的睡莲叶子 +WESTRING_DOOD_LPRS=河草 +WESTRING_DOOD_LPWB=成捆的小麦 +WESTRING_DOOD_LPWH=小麦 +WESTRING_DOOD_LPCW=烧焦的谷物 +WESTRING_DOOD_LOAM=装甲架 +WESTRING_DOOD_LOAR=标靶 +WESTRING_DOOD_LOH1=人族旗帜 +WESTRING_DOOD_LOO1=兽族旗帜 +WESTRING_DOOD_LOO2=兽族旗帜指南 +WESTRING_DOOD_LOBR=火盆 +WESTRING_DOOD_LOBZ=炽热的火盆 +WESTRING_DOOD_LOCA=放满头的锅炉 +WESTRING_DOOD_LOCB=损坏的干草车 +WESTRING_DOOD_LOXX=损坏的干草车(被感染的) +WESTRING_DOOD_LOCH=干草车 +WESTRING_DOOD_LORC=干草车(被感染的) +WESTRING_DOOD_LOCG=牢笼 +WESTRING_DOOD_LOCE=空的牢笼 +WESTRING_DOOD_LOCT=废弃的牢笼 +WESTRING_DOOD_LOFL=苍蝇 +WESTRING_DOOD_LOFT=废弃的兽族火窖 +WESTRING_DOOD_LOFZ=炽热的火窖 +WESTRING_DOOD_LOGR=坟墓 +WESTRING_DOOD_LOHB=干草 +WESTRING_DOOD_LOHC=干草堆 +WESTRING_DOOD_LOHP=系留柱 +WESTRING_DOOD_LOIC=钉在尖桩上的尸体 +WESTRING_DOOD_LOLP=挂灯笼的柱子 +WESTRING_DOOD_LOPG=农民的墓碑 +WESTRING_DOOD_LORB=肋骨 +WESTRING_DOOD_LORH=干草(被感染的) +WESTRING_DOOD_LOSC=坐着的尸体 +WESTRING_DOOD_LOSP=路标牌 +WESTRING_DOOD_LOSS=插在棒上的头骨 +WESTRING_DOOD_LOSH=矛上的头 +WESTRING_DOOD_LOSK=头骨堆 +WESTRING_DOOD_LOSM=熏烟 +WESTRING_DOOD_LOSW=石头之墙 +WESTRING_DOOD_LOTH=火炬 +WESTRING_DOOD_LOTZ=炽热的火炬 +WESTRING_DOOD_LOT1=垃圾 +WESTRING_DOOD_LOTR=水槽 +WESTRING_DOOD_LOWB=手推车 +WESTRING_DOOD_LOWR=损坏的手推车 +WESTRING_DOOD_LOWP=武器架 +WESTRING_DOOD_WRIC=冰 +WESTRING_DOOD_WRIS=碎冰片 +WESTRING_DOOD_LRRG=绿色的岩石 +WESTRING_DOOD_LRRS=积雪的岩石 +WESTRING_DOOD_LSBA=谷仓 +WESTRING_DOOD_LSSB=烧焦的谷仓 +WESTRING_DOOD_LSSF=烧焦的农场 +WESTRING_DOOD_LSGR=壳仓 +WESTRING_DOOD_LSGS=烧焦的壳仓 +WESTRING_DOOD_LSIN=旅馆 +WESTRING_DOOD_LSSI=烧焦的旅馆 +WESTRING_DOOD_LSST=烧焦的塔 +WESTRING_DOOD_LSBR=桥 +WESTRING_DOOD_LSBL=长圆木桥 +WESTRING_DOOD_LSLB=圆木桥 +WESTRING_DOOD_LSBS=小桥 +WESTRING_DOOD_LSEB=精灵建筑 +WESTRING_DOOD_LSWB=烧焦的风车 +WESTRING_DOOD_LSWL=井 +WESTRING_DOOD_LSWM=风车 +WESTRING_DOOD_ASRA=岩石拱门 +WESTRING_DOOD_ASR1=岩石拱门对角 +WESTRING_DOOD_BSRA=岩石拱门 +WESTRING_DOOD_BSR1=岩石拱门对角 +WESTRING_DOOD_CSRA=岩石拱门 +WESTRING_DOOD_CSR1=岩石拱门对角 +WESTRING_DOOD_DSRA=岩石拱门 +WESTRING_DOOD_DSR1=岩石拱门对角 +WESTRING_DOOD_LSRA=岩石拱门 +WESTRING_DOOD_LSR1=岩石拱门对角 +WESTRING_DOOD_YSA1=斜放的拱门 +WESTRING_DOOD_YSAW=拱门 +WESTRING_DOOD_DSAH=拱门 +WESTRING_DOOD_GSAH=石头拱门 +WESTRING_DOOD_GSA2=斜放的石头拱门 +WESTRING_DOOD_ZSAR=自然拱门 +WESTRING_DOOD_ZSA1=斜放的自然拱门 +WESTRING_DOOD_ZSAB=拱门 +WESTRING_DOOD_ZSB1=斜放的拱门 +//#LINENOBETA +WESTRING_DOOD_ISAR=冰拱门 +//#LINENOBETA +WESTRING_DOOD_ISA1=斜放的冰拱门 +WESTRING_DOOD_LWW0=瀑布 +WESTRING_DOOD_LCW0=瀑布底部 +WESTRING_DOOD_LWRW=海浪 +WESTRING_DOOD_LWWS=海潮 +WESTRING_DOOD_NOBC=损坏的圆柱 +WESTRING_DOOD_NOBK=损坏的石塔 +WESTRING_DOOD_NOFL=篱笆 +WESTRING_DOOD_NOAL=斜放的篱笆 +WESTRING_DOOD_NOTB=坟墓石头 +WESTRING_DOOD_NOBT=蝙蝠 +WESTRING_DOOD_NOFB=漂浮的盒子 +WESTRING_DOOD_NOGV=石头坟墓 +WESTRING_DOOD_NWFP=漂浮的厚木板 +WESTRING_DOOD_NWPA=漂浮的木板 +WESTRING_DOOD_NWI1=冰山 +WESTRING_DOOD_NOFG=烤猪的火窖 +WESTRING_DOOD_NOFP=火窖 +WESTRING_DOOD_NOFT=废弃的火窖 +WESTRING_DOOD_NWWH=鲸 +WESTRING_DOOD_NORW=小舟 +WESTRING_DOOD_NORD=毁坏的小舟 +WESTRING_DOOD_NOSD=毁坏的船 +WESTRING_DOOD_NRCI=冰块 +WESTRING_DOOD_NRIC=冰爪 +WESTRING_DOOD_NRRK=岩石 +WESTRING_DOOD_NRWR=带蛛网的岩石 +WESTRING_DOOD_NSCT=地穴 +WESTRING_DOOD_NSRB=碎石 +WESTRING_DOOD_VOFL=长篱笆 +WESTRING_DOOD_VOAL=斜放的长篱笆 +WESTRING_DOOD_VOFS=短篱笆 +WESTRING_DOOD_VOAS=斜放的短篱笆 +WESTRING_DOOD_VOLP=路灯 +WESTRING_DOOD_VSVB=建筑 +WESTRING_DOOD_XOCL=魔法灯 +WESTRING_DOOD_XOCS=能量发生器 +WESTRING_DOOD_XOMR=咒文 +WESTRING_DOOD_YOBB=长蓝色旗帜 +WESTRING_DOOD_YOWB=长条白色旗帜 +WESTRING_DOOD_YOBS=石头长凳 +WESTRING_DOOD_YOSA=斜放的石头长凳 +WESTRING_DOOD_YOBW=木头长凳 +WESTRING_DOOD_YOWA=斜放的木头长凳 +WESTRING_DOOD_YOEC=空的板条箱 +WESTRING_DOOD_YOFN=喷泉 +//#LINENOBETA +WESTRING_DOOD_YOFR=喷泉废墟 +WESTRING_DOOD_YOST=雕像 +WESTRING_DOOD_YOKS=希德雷斯的雕像 +WESTRING_DOOD_YOWS=鲸鱼雕像 +WESTRING_DOOD_YOTF=火焰 +WESTRING_DOOD_YOFB=蓝色火焰 +WESTRING_DOOD_YOFS=小的火焰 +WESTRING_DOOD_YOF1=侧面火焰陷阱 +WESTRING_DOOD_YOF2=火焰陷阱 +WESTRING_DOOD_YOF3=火焰风暴 +WESTRING_DOOD_YOR1=侧面冰霜陷阱 +WESTRING_DOOD_YOR2=冰霜陷阱 +WESTRING_DOOD_YOSW=太阳井 +WESTRING_DOOD_YOTH=王座 +WESTRING_DOOD_YOTS=客栈标志 +WESTRING_DOOD_YOBG=包波的手枪标志 +WESTRING_DOOD_YOTA=翠希的装甲标志 +WESTRING_DOOD_YPBS=矮树丛 +WESTRING_DOOD_YPFS=直放的花床 +WESTRING_DOOD_YPFA=斜放的花床 +WESTRING_DOOD_YPPP=盆栽植物 +WESTRING_DOOD_YSCA=大教堂 +//#LINENOBETA +WESTRING_DOOD_YSCR=大教堂遗迹 +WESTRING_DOOD_YSCO=单圆柱 +WESTRING_DOOD_YSCD=双圆柱 +WESTRING_DOOD_YSC5=方形的双圆柱 +WESTRING_DOOD_YSCS=半圆圆柱 +WESTRING_DOOD_YSC2=半圆圆柱 +WESTRING_DOOD_YSC3=半圆圆柱 +WESTRING_DOOD_YSC4=半圆圆柱 +WESTRING_DOOD_YSLS=短墙尽头 +WESTRING_DOOD_YSLT=高墙尽头 +WESTRING_DOOD_YSLL=灯墙尽头 +//#LINENOBETA +WESTRING_DOOD_YSLX=墙壁尽头的灯笼(没有亮光) +WESTRING_DOOD_YSTA=客栈 +WESTRING_DOOD_YSW0=矮墙 (水平) +WESTRING_DOOD_YSW1=矮墙 (对角 1) +WESTRING_DOOD_YSW2=矮墙 (垂直) +WESTRING_DOOD_YSW3=矮墙 (对角 2) +WESTRING_DOOD_YS00="都市建筑(对角 1,红色)" +WESTRING_DOOD_YS01="都市建筑(对角 1,绿色)" +WESTRING_DOOD_YS02="都市建筑(对角 1,紫色)" +WESTRING_DOOD_YS06="都市建筑(对角 2,紫色)" +WESTRING_DOOD_YS07="都市建筑(对角 2,绿色)" +WESTRING_DOOD_YS08="都市建筑(对角 2,蓝色)" +WESTRING_DOOD_YS03="都市建筑(水平,蓝色)" +WESTRING_DOOD_YS04="都市建筑(水平,绿色)" +WESTRING_DOOD_YS05="都市建筑(水平,红色)" +WESTRING_DOOD_YS09="都市建筑(垂直,绿色)" +WESTRING_DOOD_YS10="都市建筑(垂直,红色)" +WESTRING_DOOD_YS11="都市建筑(垂直,蓝色)" +WESTRING_DOOD_YS13="大的都市建筑(对角 1,红色)" +WESTRING_DOOD_YS15="大的都市建筑(对角 2,蓝色)" +WESTRING_DOOD_YS14="大的都市建筑(水平,绿色)" +WESTRING_DOOD_YS12="大的都市建筑(垂直,紫色)" +//#LINENOBETA +WESTRING_DOOD_YSR0="城市建筑废墟(对角 1,红色)" +//#LINENOBETA +WESTRING_DOOD_YSR1="城市建筑废墟(对角 1,绿色)" +//#LINENOBETA +WESTRING_DOOD_YSR2="城市建筑废墟(对角 1,紫色)" +//#LINENOBETA +WESTRING_DOOD_YSR6="城市建筑废墟(对角 2,紫色)" +//#LINENOBETA +WESTRING_DOOD_YSR7="城市建筑废墟(对角 2,绿色)" +//#LINENOBETA +WESTRING_DOOD_YSR8="城市建筑废墟(对角 2,蓝色)" +//#LINENOBETA +WESTRING_DOOD_YSR3="城市建筑废墟(水平,蓝色)" +//#LINENOBETA +WESTRING_DOOD_YSR4="城市建筑废墟(水平,绿色)" +//#LINENOBETA +WESTRING_DOOD_YSR5="城市建筑废墟(水平,红色)" +//#LINENOBETA +WESTRING_DOOD_YSR9="城市建筑废墟(垂直,绿色)" +//#LINENOBETA +WESTRING_DOOD_YSRA="城市建筑废墟(垂直,红色)" +//#LINENOBETA +WESTRING_DOOD_YSRB="城市建筑废墟(垂直,蓝色)" +//#LINENOBETA +WESTRING_DOOD_YSRD="城市建筑大废墟(对角 1,红色)" +//#LINENOBETA +WESTRING_DOOD_YSRF="城市建筑大废墟(对角 2,蓝色)" +//#LINENOBETA +WESTRING_DOOD_YSRE="城市建筑大废墟(水平,绿色)" +//#LINENOBETA +WESTRING_DOOD_YSRC="城市建筑大废墟(垂直,紫色)" +WESTRING_DOOD_LOMI=关于麦迪文的片断 +WESTRING_DOOD_YOCP=镜头道具 +WESTRING_DOOD_YOLB=闪电 +WESTRING_DOOD_YZEF=能量区域 +WESTRING_DOOD_DOTP=财宝堆 +WESTRING_DOOD_DOJP=武器堆 +WESTRING_DOOD_DOCH=链条 +WESTRING_DOOD_DOCP=链式桩杆 +WESTRING_DOOD_DOLC=熔岩碎片 +WESTRING_DOOD_DOCR=座椅 +WESTRING_DOOD_DOBH=长凳 +WESTRING_DOOD_DOBK=书架 +WESTRING_DOOD_DOKB=大书架 +WESTRING_DOOD_DOBW=长书架 +WESTRING_DOOD_DOAB=斜放的书架 +WESTRING_DOOD_DOTB=桌子 +WESTRING_DOOD_DOTC=桌子和座椅 +WESTRING_DOOD_DOTT=痛苦之桌 +WESTRING_DOOD_DOIM=铁娘子 +WESTRING_DOOD_DOMC=采矿车 +WESTRING_DOOD_DOME=空的采矿车 +WESTRING_DOOD_DPSH=蓝色蘑菇 +WESTRING_DOOD_DSP0=小栅栏墙 +WESTRING_DOOD_DSP9=大栅栏墙 +WESTRING_DOOD_DRFC=炽热弹坑 +WESTRING_DOOD_DRST=石笋 +WESTRING_DOOD_LCc0=悬崖洞穴 +WESTRING_DOOD_LCc2=悬崖洞穴 2 +WESTRING_DOOD_LWWF=瀑布 +WESTRING_DOOD_LZTH=萨尔的小屋 +WESTRING_DOOD_ZOFO=遗迹泉水 +WESTRING_DOOD_ZOSS=遗迹石头 +WESTRING_DOOD_ZWSF=小鱼群 +WESTRING_DOOD_ZSRB=遗迹 +WESTRING_DOOD_ZOSB=毁坏的遗迹雕像 +WESTRING_DOOD_ZORT=遗迹王座 +WESTRING_DOOD_ZORP=遗迹柱子 +WESTRING_DOOD_ZOBR=遗迹火盆 +WESTRING_DOOD_ZOOB=遗迹石塔 +WESTRING_DOOD_ZOST=遗迹雕像 +WESTRING_DOOD_ZOSH=壳 +//#LINENOBETA +WESTRING_DOOD_YCC1=洞穴城市悬崖 (北部右边) +//#LINENOBETA +WESTRING_DOOD_YCC2=洞穴城市悬崖 (北部左边) +//#LINENOBETA +WESTRING_DOOD_YCC3=洞穴城市悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCC4=洞穴城市悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCD1=毁坏的都市悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCD2=毁坏的都市悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCD3=毁坏的都市悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCD4=毁坏的都市悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCR1=洞穴自然悬崖 (北部右边) +//#LINENOBETA +WESTRING_DOOD_YCR2=洞穴自然悬崖 (北部左边) +//#LINENOBETA +WESTRING_DOOD_YCR3=洞穴自然悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCR4=洞穴自然悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCP1=毁坏的天然悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCP2=毁坏的天然悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCP3=毁坏的天然悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCP4=毁坏的天然悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCS1=光滑都市悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCS2=光滑都市悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCS3=光滑都市悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCS4=光滑都市悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCT1=毁坏的短都市悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCT2=毁坏的短都市悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCT3=毁坏的短都市悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCT4=毁坏的短都市悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCO1=光滑短都市悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCO2=光滑短都市悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCO3=光滑短都市悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCO4=光滑短都市悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCG1=光滑天然悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCG2=光滑天然悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCG3=光滑天然悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCG4=光滑天然悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCU1=光滑短天然悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCU2=光滑短天然悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCU3=光滑短天然悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCU4=光滑短天然悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_YCL1=毁坏的短天然悬崖 (北部) +//#LINENOBETA +WESTRING_DOOD_YCL2=毁坏的短天然悬崖 (东部) +//#LINENOBETA +WESTRING_DOOD_YCL3=毁坏的短天然悬崖 (南部) +//#LINENOBETA +WESTRING_DOOD_YCL4=毁坏的短天然悬崖 (西部) +//#LINENOBETA +WESTRING_DOOD_ZORC=水晶塔的废墟 +//#LINENOBETA +WESTRING_DOOD_ZODT=塔的废墟 +//#LINENOBETA +WESTRING_DOOD_ZORB=塔的废墟底部 +//#LINENOBETA +WESTRING_DOOD_ZOTB=毁坏的双基地 +//#LINENOBETA +WESTRING_DOOD_ZOVR=达拉然紫罗兰要塞废墟 +WESTRING_DOOD_ZOFP=火罐的废墟 +WESTRING_DOOD_ZCV1=悬崖边的藤蔓 +WESTRING_DOOD_ZWSW=海藻 +WESTRING_DOOD_ZWBG=泡沫 +//#LINENOBETA +WESTRING_DOOD_IWBG=蒸汽泡沫 +//#LINENOBETA +WESTRING_DOOD_IWIE=浮冰 +//#LINENOBETA +WESTRING_DOOD_IWWF=冰瀑布 +WESTRING_DOOD_ZPFW=鲜花 +WESTRING_DOOD_ZPSH=灌木 +WESTRING_DOOD_ZWCL=珊瑚 +WESTRING_DOOD_ZWCA=拱形珊瑚 +//#LINENOBETA +WESTRING_DOOD_ZZDT=恶魔足迹 +//#LINENOBETA +WESTRING_DOOD_IOST=头骨火炬 +//#LINENOBETA +WESTRING_DOOD_IRIC=冰块 +//#LINENOBETA +WESTRING_DOOD_DOAS=艾萨拉的雕像 +//#LINENOBETA +WESTRING_DOOD_IOSM=雪人 +//#LINENOBETA +WESTRING_DOOD_IOSS=有底座的冰蜘蛛 +//#LINENOBETA +WESTRING_DOOD_IOSL=冰蜘蛛雕像 +//#LINENOBETA +WESTRING_DOOD_AZRF=毁坏的船 +//#LINENOBETA +WESTRING_DOOD_OPOP=边缘之地植物 +//#LINENOBETA +WESTRING_DOOD_IRGC=冰河 +//#LINENOBETA +WESTRING_DOOD_ORMK=岩浆 +//#LINENOBETA +WESTRING_DOOD_YCX1=毁坏的地面 (2x2) +//#LINENOBETA +WESTRING_DOOD_YCX2=毁坏的地面 (4x4) +//#LINENOBETA +WESTRING_DOOD_YCX3=毁坏的地面 (4x2) +//#LINENOBETA +WESTRING_DOOD_ZRBS=遗迹小碎石 +//#LINENOBETA +WESTRING_DOOD_ZRBD=遗迹大碎石 +//#LINENOBETA +WESTRING_DOOD_ORFK=漂浮的岩石 +//#LINENOBETA +WESTRING_DOOD_ORFC=漂浮的岩石群 +//#LINENOBETA +WESTRING_DOOD_ASPR=码头 +//#LINENOBETA +WESTRING_DOOD_ASPT=废弃的码头 +//#LINENOBETA +WESTRING_DOOD_ZPVP=葡萄树 +//#LINENOBETA +WESTRING_DOOD_ZOLS=遗迹图书馆架 +//#LINENOBETA +WESTRING_DOOD_ZZGR=古尔丹的符文 +//#LINENOBETA +WESTRING_DOOD_JZIF=无敌区域 +//#LINENOBETA +WESTRING_DOOD_ZZYS=萨格拉斯之眼 +//#LINENOBETA +WESTRING_DOOD_JSCS=废弃的半圆圆柱 +//#LINENOBETA +WESTRING_DOOD_JSC2=废弃的半圆圆柱 +//#LINENOBETA +WESTRING_DOOD_JSC3=废弃的半圆圆柱 +//#LINENOBETA +WESTRING_DOOD_JSC4=废弃的半圆圆柱 +//#LINENOBETA +WESTRING_DOOD_JSCO=废弃的圆柱 +//#LINENOBETA +WESTRING_DOOD_JSCX=废弃的带顶圆柱 +//#LINENOBETA +WESTRING_DOOD_JSRC=毁坏的大型城市建筑底部 +//#LINENOBETA +WESTRING_DOOD_JSR6=毁坏的城市建筑底部 +//#LINENOBETA +WESTRING_DOOD_JSAR=毁坏的拱门 +//#LINENOBETA +WESTRING_DOOD_JSAX=毁坏的拱门 +//#LINENOBETA +WESTRING_DOOD_ZZCD=尘埃 +//#LINENOBETA +WESTRING_DOOD_LSRG=毁坏的地精造船所 +//#LINENOBETA +WESTRING_DOOD_AONT=路灯 +//#LINENOBETA +WESTRING_DOOD_DOSV=下水道通风口 +//#LINENOBETA +WESTRING_DOOD_DOSW=下水道管道 +//#LINENOBETA +WESTRING_DOOD_LOWF=墙围泉水 +//#LINENOBETA +WESTRING_DOOD_KODR=符文 +//#LINENOBETA +WESTRING_DOOD_ASV0=暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASV1=暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASV2=暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASV3=暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASV4=暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASX0=毁坏的暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASX1=毁坏的暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ASX2=毁坏的暗夜精灵族渔村 +//#LINENOBETA +WESTRING_DOOD_ZOTR=垃圾 +//#LINENOBETA +WESTRING_DOOD_ZOBA=血腥祭坛废墟 +//#LINENOBETA +WESTRING_DOOD_IZRW=涨潮 +//#LINENOBETA +WESTRING_DOOD_KOST=黑色城堡雕像 +//#LINENOBETA +WESTRING_DOOD_IZFT=冰封王座 +//#LINENOBETA +WESTRING_DOOD_IOIC=冰冻座椅 +//#LINENOBETA +WESTRING_DOOD_IRCY=水晶 +//#LINENOBETA +WESTRING_DOOD_ISSR=冰冠石拱顶 +//#LINENOBETA +WESTRING_DOOD_ISS1=斜放的冰冠石拱顶 +//#LINENOBETA +WESTRING_DOOD_IOCH=座椅 +//#LINENOBETA +WESTRING_DOOD_OOAL=祭坛 +//#LINENOBETA +WESTRING_DOOD_OOGR=火焰壁炉 +//#LINENOBETA +WESTRING_DOOD_OOOB=障碍 +//#LINENOBETA +WESTRING_DOOD_OOSK=头骨 +//#LINENOBETA +WESTRING_DOOD_OOST=树桩 +//#LINENOBETA +WESTRING_DOOD_ORRR=碎石 +//#LINENOBETA +WESTRING_DOOD_JZUD=地下拱顶 +//#LINENOBETA +WESTRING_DOOD_OOSD=标志 +//#LINENOBETA +WESTRING_DOOD_IRRS=积雪的岩石 +//#LINENOBETA +WESTRING_DOOD_JOGR=发光的神符 +//#LINENOBETA +WESTRING_DOOD_BPTW=贫瘠之地树木(不可摧毁的) +//#LINENOBETA +WESTRING_DOOD_ZPTW=沉沦的遗迹树木(不可摧毁的) +//#LINENOBETA +WESTRING_DOOD_IZWW=水面上升 +//#LINENOBETA +WESTRING_DOOD_OSAR=边缘之地拱顶 +//#LINENOBETA +WESTRING_DOOD_OSA1=斜放的边缘之地拱顶 + +// Triggers - Function categories +WESTRING_TRIGCAT_NOTHING="无" +WESTRING_TRIGCAT_ARITHMETIC="算术" +WESTRING_TRIGCAT_COMMENT="注释" +WESTRING_TRIGCAT_CUSTOM="自定义脚本" +WESTRING_TRIGCAT_CONDITION="条件" +WESTRING_TRIGCAT_CONVERSION="转化" +WESTRING_TRIGCAT_WAIT="等待" +WESTRING_TRIGCAT_SETVARIABLE="设置变量" +WESTRING_TRIGCAT_SKIPACTIONS="跳过动作" +WESTRING_TRIGCAT_LOGIC="If/Then/Else" +WESTRING_TRIGCAT_FORLOOP="Loop循环" +WESTRING_TRIGCAT_LAST="Last类" +WESTRING_TRIGCAT_YUKARI="穿越境界" +WESTRING_TRIGCAT_AI="AI" +WESTRING_TRIGCAT_ANIMATION="动画" +WESTRING_TRIGCAT_CAMERA="镜头" +WESTRING_TRIGCAT_CINEMATIC="电影" +WESTRING_TRIGCAT_TIMER="计时器" +WESTRING_TRIGCAT_DESTRUCT="可破坏物" +WESTRING_TRIGCAT_DIALOG="对话框" +WESTRING_TRIGCAT_ENVIRONMENT="环境" +WESTRING_TRIGCAT_EVENTRESPONSE="事件响应" +WESTRING_TRIGCAT_TEXTTAG="漂浮文字" +WESTRING_TRIGCAT_GAME="游戏" +WESTRING_TRIGCAT_GAMECACHE="游戏缓存" +WESTRING_TRIGCAT_HASHTABLE="哈希表" +WESTRING_TRIGCAT_HERO="英雄" +WESTRING_TRIGCAT_ITEM="物品" +WESTRING_TRIGCAT_LEADERBOARD="排行榜" +WESTRING_TRIGCAT_MATH="数学" +WESTRING_TRIGCAT_MELEE="对战游戏" +WESTRING_TRIGCAT_MULTIBOARD="多面板" +WESTRING_TRIGCAT_NEUTRALBUILDING="中立建筑" +WESTRING_TRIGCAT_PLAYER="玩家" +WESTRING_TRIGCAT_PLAYERGROUP="玩家组" +WESTRING_TRIGCAT_QUEST="任务" +WESTRING_TRIGCAT_REGION="区域" +WESTRING_TRIGCAT_UNITSEL="选择" +WESTRING_TRIGCAT_SOUND="声音" +WESTRING_TRIGCAT_SPECIALEFFECT="特效" +WESTRING_TRIGCAT_TIME="时间" +WESTRING_TRIGCAT_TRIGGER="触发器" +WESTRING_TRIGCAT_UNIT="单位" +WESTRING_TRIGCAT_UNITGROUP="单位组" +WESTRING_TRIGCAT_VISIBILITY="可见度" +//%%% DEBUG - Remove for retail +WESTRING_TRIGCAT_OBSOLETE="废弃" +WESTRING_TRIGCAT_DEBUG="测试" + +WESTRING_TRIGCAT_AI_TOWN=城镇 +WESTRING_TRIGCAT_AI_HERO=英雄 +WESTRING_TRIGCAT_AI_RESOURCES=资源 +WESTRING_TRIGCAT_AI_MISC=混杂 +WESTRING_TRIGCAT_AI_UNIT=单位 +WESTRING_TRIGCAT_AI_UPGRADE=科技 +WESTRING_TRIGCAT_AI_COMMAND=命令 + +// Trigger Variable Types +// These are sorted so that they appear as such in the Variables dialog. +WESTRING_TRIGTYPE_widget="小物件" +WESTRING_TRIGTYPE_abilcode="技能" +WESTRING_TRIGTYPE_boolean="布尔值" +WESTRING_TRIGTYPE_buffcode="魔法效果" +WESTRING_TRIGTYPE_camerasetup="镜头" +WESTRING_TRIGTYPE_destructable="可破坏物" +WESTRING_TRIGTYPE_destructablecode="可破坏物类型" +WESTRING_TRIGTYPE_defeatcondition="失败条件" +WESTRING_TRIGTYPE_dialog="对话框" +WESTRING_TRIGTYPE_button="对话框按钮" +WESTRING_TRIGTYPE_texttag="漂浮文字" +WESTRING_TRIGTYPE_gamecache="游戏缓存" +WESTRING_TRIGTYPE_gamespeed="游戏速度" +WESTRING_TRIGTYPE_handle="对象" +WESTRING_TRIGTYPE_hashtable="哈希表" +WESTRING_TRIGTYPE_agent="实体对象" +WESTRING_TRIGTYPE_integer="整数" +WESTRING_TRIGTYPE_item="物品" +WESTRING_TRIGTYPE_itemcode="物品类型" +WESTRING_TRIGTYPE_itemtype="物品分类" +WESTRING_TRIGTYPE_leaderboard="排行榜" +WESTRING_TRIGTYPE_multiboard="多面板" +WESTRING_TRIGTYPE_ordercode="命令ID" +WESTRING_TRIGTYPE_player="玩家" +WESTRING_TRIGTYPE_playercolor="玩家颜色" +WESTRING_TRIGTYPE_force="玩家组" +WESTRING_TRIGTYPE_location="点" +WESTRING_TRIGTYPE_quest="任务" +WESTRING_TRIGTYPE_questitem="任务要求" +WESTRING_TRIGTYPE_race="种族" +WESTRING_TRIGTYPE_real="实数" +WESTRING_TRIGTYPE_rect="矩形区域" +WESTRING_TRIGTYPE_sound="声音" +WESTRING_TRIGTYPE_effect="特效" +WESTRING_TRIGTYPE_string="字符串" +WESTRING_TRIGTYPE_techcode="科技类型" +WESTRING_TRIGTYPE_timer="计时器" +WESTRING_TRIGTYPE_timerdialog="计时器窗口" +WESTRING_TRIGTYPE_trigger="触发器" +WESTRING_TRIGTYPE_unit="单位" +WESTRING_TRIGTYPE_group="单位组" +WESTRING_TRIGTYPE_unitcode="单位类型" +WESTRING_TRIGTYPE_fogmodifier="可见度修正器" +WESTRING_TRIGTYPE_weathereffect="天气效果" +WESTRING_TRIGTYPE_terraindeformation="地形变化" + +// Trigger Non-Variable Types - Atomic (built-in to the language) +WESTRING_TRIGTYPE_code="函数" + +// Trigger Non-Variable Types - Basic (from common.j) +WESTRING_TRIGTYPE_event="触发事件" +WESTRING_TRIGTYPE_triggercondition="触发条件" +WESTRING_TRIGTYPE_triggeraction="触发动作" +WESTRING_TRIGTYPE_boolexpr="布尔表达式" +WESTRING_TRIGTYPE_unittype="单位分类" +WESTRING_TRIGTYPE_alliancetype="联盟类型" +WESTRING_TRIGTYPE_playerstate="玩家属性" +WESTRING_TRIGTYPE_playerscore="玩家得分" +WESTRING_TRIGTYPE_playergameresult="玩家得分" +WESTRING_TRIGTYPE_unitstate="单位属性" +WESTRING_TRIGTYPE_playerunitevent="玩家单位事件" +WESTRING_TRIGTYPE_unitevent="单位事件" +WESTRING_TRIGTYPE_limitop="比较符" +WESTRING_TRIGTYPE_gamedifficulty="游戏难度" +WESTRING_TRIGTYPE_gameevent="游戏事件" +WESTRING_TRIGTYPE_aidifficulty="对战AI" +WESTRING_TRIGTYPE_mapdensity="密集度" +WESTRING_TRIGTYPE_mapcontrol="玩家控制者" +WESTRING_TRIGTYPE_mapflag="地图参数" +WESTRING_TRIGTYPE_playerslotstate="玩家游戏状态" +WESTRING_TRIGTYPE_camerafield="镜头属性" +WESTRING_TRIGTYPE_raritycontrol="动画类型" +WESTRING_TRIGTYPE_blendmode="混合方式" +WESTRING_TRIGTYPE_fogstate="可见状态" +WESTRING_TRIGTYPE_volumegroup="声音通道" + +// Trigger Non-Variable Types - Utility, only used to simplify triggers +WESTRING_TRIGTYPE_keyeventtype="键盘事件类型" +WESTRING_TRIGTYPE_keyeventkey="方向键" +WESTRING_TRIGTYPE_colorchangeoption="颜色变化选项" +WESTRING_TRIGTYPE_playerchangecoloroption="玩家颜色变化选项" +WESTRING_TRIGTYPE_chatmatchtype="聊天信息匹配方式" +WESTRING_TRIGTYPE_unitfacingbone="身体部位" +WESTRING_TRIGTYPE_inclusionoption="包括选项" +WESTRING_TRIGTYPE_cameraapplyoption="镜头应用选项" +WESTRING_TRIGTYPE_cameraorientationoption="镜头方位选项" +WESTRING_TRIGTYPE_invulnerableoption="无敌选项" +WESTRING_TRIGTYPE_availabilityoption="可用性选项" +WESTRING_TRIGTYPE_showhideoption="显示/隐藏选项" +WESTRING_TRIGTYPE_minimizeoption="最大/最小化选项" +WESTRING_TRIGTYPE_skymodelstring="天空模型" +WESTRING_TRIGTYPE_cinefiltertexture="电影滤镜纹理" +WESTRING_TRIGTYPE_pathingoption="通行选项" +WESTRING_TRIGTYPE_pawnableoption="抵押选项" +WESTRING_TRIGTYPE_dropnodropoption="可丢弃选项" +WESTRING_TRIGTYPE_droppableoption="死亡掉落选项" +WESTRING_TRIGTYPE_beforeafteroption="前/后选项" +WESTRING_TRIGTYPE_onoffoption="打开/关闭选项" +WESTRING_TRIGTYPE_enabledisableoption="启用/禁用选项" +WESTRING_TRIGTYPE_enableddisabledoption="允许/禁止选项" +WESTRING_TRIGTYPE_rescuableoption="营救选项" +WESTRING_TRIGTYPE_allowdontoption="允许选项" +WESTRING_TRIGTYPE_fadedontoption="淡化选项" +WESTRING_TRIGTYPE_unitorderutarg="单位命令" +WESTRING_TRIGTYPE_unitorderptarg="单位命令" +WESTRING_TRIGTYPE_unitorderdtarg="单位命令" +WESTRING_TRIGTYPE_unitorderitarg="单位命令" +WESTRING_TRIGTYPE_unitordernotarg="单位命令" +WESTRING_TRIGTYPE_heroskillcode="英雄技能" +WESTRING_TRIGTYPE_weathereffectcode="天气效果类型" +WESTRING_TRIGTYPE_alliancesetting="联盟设置" +WESTRING_TRIGTYPE_addsettooption="设置方式" +WESTRING_TRIGTYPE_modifymethod="修改方式" +WESTRING_TRIGTYPE_waitdontoption="等待选项" +WESTRING_TRIGTYPE_cratertype="弹坑类型" +WESTRING_TRIGTYPE_rippletype="波纹类型" +WESTRING_TRIGTYPE_createremoveoption="创建/移除选项" +WESTRING_TRIGTYPE_addremoveoption="添加/删除选项" +WESTRING_TRIGTYPE_questtypeoption="任务类型" +WESTRING_TRIGTYPE_questmessagetype="任务信息类型" +WESTRING_TRIGTYPE_herostat="英雄属性" +WESTRING_TRIGTYPE_completionoption="完成选项" +WESTRING_TRIGTYPE_failureoption="失败选项" +WESTRING_TRIGTYPE_discoveredoption="发现选项" +WESTRING_TRIGTYPE_pauseresumeoption="暂停选项" +WESTRING_TRIGTYPE_periodicoption="周期选项" +WESTRING_TRIGTYPE_leaderboardsortoption="排序选项" +WESTRING_TRIGTYPE_ascendingoption="排序方式" +WESTRING_TRIGTYPE_sleepwakeoption="睡眠选项" +WESTRING_TRIGTYPE_pauseunpauseoption="暂停选项" +WESTRING_TRIGTYPE_sharedontoption="共享视野选项" +WESTRING_TRIGTYPE_fadetypeoption="淡化类型" +WESTRING_TRIGTYPE_bufftype="Buff类型" +WESTRING_TRIGTYPE_buffpolarity="Buff类型" +WESTRING_TRIGTYPE_buffresist="Buff类型" +WESTRING_TRIGTYPE_cameraboundsadjusttype="镜头范围调整类型" +WESTRING_TRIGTYPE_availableoption="可用性选项" +WESTRING_TRIGTYPE_explodedontoption="爆炸选项" +WESTRING_TRIGTYPE_suspendresumeoption="暂停选项" +WESTRING_TRIGTYPE_missionindex="关卡" +WESTRING_TRIGTYPE_campaignindex="战役" +WESTRING_TRIGTYPE_cinematicindex="过场电影" +WESTRING_TRIGTYPE_musictheme="主题音乐" +WESTRING_TRIGTYPE_ambientthemeday="白天环境音效" +WESTRING_TRIGTYPE_ambientthemenight="夜晚环境音效" +WESTRING_TRIGTYPE_unitstatemethod="单位属性选项" +WESTRING_TRIGTYPE_checkingignoringoption="检查选项" +WESTRING_TRIGTYPE_playerflag="玩家参数" +WESTRING_TRIGTYPE_playerresource="资源类型" +WESTRING_TRIGTYPE_gateoperation="开关选择" +WESTRING_TRIGTYPE_elevatorwallop="开关选择" +WESTRING_TRIGTYPE_elevatorwalltype="升降机墙壁" +WESTRING_TRIGTYPE_useskipoption="显示/跳过选项" +WESTRING_TRIGTYPE_seldeseloption="选择选项" +WESTRING_TRIGTYPE_cachevaluetype="缓存值类型" +WESTRING_TRIGTYPE_hashtablevaluetype="哈希表值类型" +WESTRING_TRIGTYPE_fogstyle="迷雾样式" +WESTRING_TRIGTYPE_timedlifebuffcode="生命周期类型" +WESTRING_TRIGTYPE_aicaptaintype="AI指挥类型" +WESTRING_TRIGTYPE_aicommandpop="AI命令选项" +WESTRING_TRIGTYPE_scriptcode="脚本代码" +WESTRING_TRIGTYPE_itemstatus="物品状态" +WESTRING_TRIGTYPE_itemcodestatus="物品状态" +WESTRING_TRIGTYPE_minimappingstyle="小地图信号类型" +WESTRING_TRIGTYPE_corpsetype="尸体类型" +WESTRING_TRIGTYPE_stringcaseoption="大小写选项" + +// Trigger Non-Variable Types - File strings +WESTRING_TRIGTYPE_aiscript="AI脚本文件" +WESTRING_TRIGTYPE_modelfile="模型文件" +WESTRING_TRIGTYPE_anyfile="任何文件" +WESTRING_TRIGTYPE_preloadfile="预载文件" +WESTRING_TRIGTYPE_imagefile="图像文件" + +// Trigger Non-Variable Types - Custom (handled internally by the editor) +WESTRING_TRIGTYPE_StringExt="字符串" +WESTRING_TRIGTYPE_AnyGlobal="变量" +WESTRING_TRIGTYPE_AnyType="类型" +WESTRING_TRIGTYPE_VarAsString_Real="实数变量" +WESTRING_TRIGTYPE_ArithmeticOperator="算术运算符" +WESTRING_TRIGTYPE_ComparisonOperator="比较运算符" +WESTRING_TRIGTYPE_EqualNotEqualOperator="等价运算符" +WESTRING_TRIGTYPE_boolcall="布尔表达式" +WESTRING_TRIGTYPE_eventcall="触发事件" +WESTRING_TRIGTYPE_doodadcode="地形装饰物类型" +WESTRING_TRIGTYPE_musicfile="音乐文件" + +// Trigger Variable Default values +WESTRING_TRIGDEFAULT_GROUP=空单位组 +WESTRING_TRIGDEFAULT_FORCE=空玩家组 +WESTRING_TRIGDEFAULT_TIMER=新建计时器 +WESTRING_TRIGDEFAULT_DIALOG=新建对话框 + +// Trigger ComparisonOperator values +WESTRING_COMPARISONOPERATOR_EQUAL="等于" +WESTRING_COMPARISONOPERATOR_NOTEQUAL="不等于" +WESTRING_COMPARISONOPERATOR_GREATER="大于" +WESTRING_COMPARISONOPERATOR_GREATEREQ="大于或等于" +WESTRING_COMPARISONOPERATOR_LESS="小于" +WESTRING_COMPARISONOPERATOR_LESSEQ="小于或等于" + +// Trigger EqualNotEqualOperator values +WESTRING_EQUALNOTEQUALOPERATOR_EQUAL="等于" +WESTRING_EQUALNOTEQUALOPERATOR_NOTEQUAL="不等于" + +// Trigger ArithmeticOperator values +WESTRING_ARITHMETICOPERATOR_ADD="+" +WESTRING_ARITHMETICOPERATOR_SUBTRACT="-" +WESTRING_ARITHMETICOPERATOR_MULTIPLY="x" +WESTRING_ARITHMETICOPERATOR_DIVIDE="/" + +// Trigger unit colors +WESTRING_UNITCOLOR_00="红色" +WESTRING_UNITCOLOR_01="蓝色" +WESTRING_UNITCOLOR_02="青色" +WESTRING_UNITCOLOR_03="紫色" +WESTRING_UNITCOLOR_04="黄色" +WESTRING_UNITCOLOR_05="橙色" +WESTRING_UNITCOLOR_06="绿色" +WESTRING_UNITCOLOR_07="粉红色" +WESTRING_UNITCOLOR_08="灰色" +WESTRING_UNITCOLOR_09="淡蓝色" +WESTRING_UNITCOLOR_10="暗绿色" +WESTRING_UNITCOLOR_11="棕色" +WESTRING_UNITCOLOR_12="黑色" + +// Trigger map flags +WESTRING_MAPFLAG_USEHANDICAPS="生命障碍" +WESTRING_MAPFLAG_OBSERVERS="允许观看者" +WESTRING_MAPFLAG_OBSERVERSONDEATH="失败时作为观看者" +WESTRING_MAPFLAG_RESOURCETRADINGLOCK="锁定资源交易" +WESTRING_MAPFLAG_RESOURCETRADINGALLIES="限制盟友资源交易" +WESTRING_MAPFLAG_ALLIANCECHANGESLOCK="锁定联盟设置" +WESTRING_MAPFLAG_ALLIANCECHANGESHIDDEN="隐藏联盟设置" +WESTRING_MAPFLAG_MAPRELOADED="地图转换" +WESTRING_MAPFLAG_RANDOM_HERO="使用随机英雄" +WESTRING_MAPFLAG_RANDOM_RACES="使用随机种族" +WESTRING_MAPFLAG_FOG_HIDE_TERRAIN="可见度 - 隐藏地形" +WESTRING_MAPFLAG_FOG_MAP_EXPLORED="可见度 - 可见地形" +WESTRING_MAPFLAG_FOG_ALWAYS_VISIBLE="可见度 - 总是可见" + +// Trigger reals +WESTRING_QUEUE_DELAY_QUEST="战役任务等待" +WESTRING_QUEUE_DELAY_HINT="战役提示等待" +WESTRING_QUEUE_DELAY_SECRET="战役秘密等待" +WESTRING_HANDICAP_EASY="战役简单难度生命障碍" +WESTRING_REAL_CELLWIDTH="单元点宽度" +WESTRING_REAL_UNITFACING="默认建筑朝向" +WESTRING_CAMDEFAULT_DISTANCE="默认镜头距离(距离到目标)" +WESTRING_CAMDEFAULT_FARZ="默认镜头远景截断距离(远景剪裁)" +WESTRING_CAMDEFAULT_AOA="默认镜头X轴旋转角度(水平角度)" +WESTRING_CAMDEFAULT_FOV="默认镜头区域(观察区域)" +WESTRING_CAMDEFAULT_ROLL="默认镜头Y轴旋转角度(滚动)" +WESTRING_CAMDEFAULT_ROTATION="默认镜头Z轴旋转角度(高度位移)" +WESTRING_REAL_E="e" +WESTRING_REAL_PI="π" + +// Trigger players +WESTRING_PLAYER_00="玩家1(红色)" +WESTRING_PLAYER_01="玩家2(蓝色)" +WESTRING_PLAYER_02="玩家3(青色)" +WESTRING_PLAYER_03="玩家4(紫色)" +WESTRING_PLAYER_04="玩家5(黄色)" +WESTRING_PLAYER_05="玩家6(橙色)" +WESTRING_PLAYER_06="玩家7(绿色)" +WESTRING_PLAYER_07="玩家8(粉红)" +WESTRING_PLAYER_08="玩家9(灰色)" +WESTRING_PLAYER_09="玩家10(淡蓝)" +WESTRING_PLAYER_10="玩家11(暗绿)" +WESTRING_PLAYER_11="玩家12(棕色)" +WESTRING_PLAYER_NA="中立敌对" +WESTRING_PLAYER_NV="中立受害" +WESTRING_PLAYER_NE="中立特殊" +WESTRING_PLAYER_NP="中立被动" + +// Trigger forces +WESTRING_FORCE_00="玩家组 - 玩家1(红色)" +WESTRING_FORCE_01="玩家组 - 玩家2(蓝色)" +WESTRING_FORCE_02="玩家组 - 玩家3(青色)" +WESTRING_FORCE_03="玩家组 - 玩家4(紫色)" +WESTRING_FORCE_04="玩家组 - 玩家5(黄色)" +WESTRING_FORCE_05="玩家组 - 玩家6(橙色)" +WESTRING_FORCE_06="玩家组 - 玩家7(绿色)" +WESTRING_FORCE_07="玩家组 - 玩家8(粉红)" +WESTRING_FORCE_08="玩家组 - 玩家9(灰色)" +WESTRING_FORCE_09="玩家组 - 玩家10(淡蓝)" +WESTRING_FORCE_10="玩家组 - 玩家11(暗绿)" +WESTRING_FORCE_11="玩家组 - 玩家12(棕色)" +WESTRING_FORCE_NA="玩家组 - 中立敌对" +WESTRING_FORCE_NV="玩家组 - 中立受害" +WESTRING_FORCE_NE="玩家组 - 中立特殊" +WESTRING_FORCE_NP="玩家组 - 中立被动" + +// Trigger player states +WESTRING_PSTATE_GOLD="现有黄金" +WESTRING_PSTATE_LUMBER="现有木材" +WESTRING_PSTATE_HEROTOKENS="剩余可用英雄" +WESTRING_PSTATE_UPKEEPGOLD="金钱维修费率" +WESTRING_PSTATE_UPKEEPLUMBER="木材维修费率" +WESTRING_PSTATE_GOLDGATHERED="总黄金采集量" +WESTRING_PSTATE_LUMBER_GATHERED="总木材采集量" +WESTRING_PSTATE_FOODUSED="已使用人口数" +WESTRING_PSTATE_FOODCAP="可用人口数" +WESTRING_PSTATE_FOODCAPLIMIT="最大人口上限" +WESTRING_PSTATE_GAMERESULT="游戏得分" + +// Trigger player resources +WESTRING_PRESOURCE_GOLD="黄金" +WESTRING_PRESOURCE_LUMBER="木材" + +// Trigger player scores +WESTRING_PSCORE_UNITSTRAINED=训练单位数量 +WESTRING_PSCORE_UNITSKILLED=杀死单位数量 +WESTRING_PSCORE_STRUCTBUILT=建造建筑数量 +WESTRING_PSCORE_STRUCTRAZED=摧毁建筑数量 +WESTRING_PSCORE_TECHPERCENT=科技百分比 +WESTRING_PSCORE_FOODPROD=最大可用人口数 +WESTRING_PSCORE_FOODUSED=最大使用人口数 +WESTRING_PSCORE_HEROESKILLED=杀死英雄次数 +WESTRING_PSCORE_ITEMSGAINED=获得物品数量 +WESTRING_PSCORE_MERCSHIRED=雇佣单位数量 +WESTRING_PSCORE_GOLDTOTAL=总黄金采集量 +WESTRING_PSCORE_GOLDUPKEEP=实际黄金采集量(带有维修费) +WESTRING_PSCORE_GOLDLOSTUPKEEP=维修费损失的黄金数量 +WESTRING_PSCORE_GOLDLOSTTAX=所得税损失的黄金数量 +WESTRING_PSCORE_GOLDGIVEN=给予盟友的黄金数量 +WESTRING_PSCORE_GOLDRECEIVED=从盟友那里收到的黄金数量 +WESTRING_PSCORE_LUMBERTOTAL=总木材采集量 +WESTRING_PSCORE_LUMBERLOSTUPKEEP=维修费损失的木材数量 +WESTRING_PSCORE_LUMBERLOSTTAX=所得税损失的木材数量 +WESTRING_PSCORE_LUMBERGIVEN=给予盟友的木材数量 +WESTRING_PSCORE_LUMBERECEIVED=从盟友那里收到的木材数量 +WESTRING_PSCORE_UNITTOTAL=总单位得分 +WESTRING_PSCORE_HEROTOTAL=总英雄得分 +WESTRING_PSCORE_RESOURCETOTAL=总资源得分 +WESTRING_PSCORE_TOTAL=整体得分 + +// Trigger player flags +WESTRING_PFLAG_UNFOLLOWABLE="不可跟随" +WESTRING_PFLAG_GIVESBOUNTY="给予奖励" +WESTRING_PFLAG_ALLIEDVICTORY="联盟胜利" + +// Trigger gate states +WESTRING_GATEOPERATION_CLOSE="关闭" +WESTRING_GATEOPERATION_OPEN="打开" +WESTRING_GATEOPERATION_DESTROY="破坏" + +// Trigger elevator wall operations +WESTRING_ELEVATORWALLOP_CLOSE="关闭" +WESTRING_ELEVATORWALLOP_OPEN="打开" + +// Trigger elevator wall choices +WESTRING_ELEVATORWALLTYPE_ALL="所有的墙" +WESTRING_ELEVATORWALLTYPE_EAST="东墙" +WESTRING_ELEVATORWALLTYPE_NORTH="北墙" +WESTRING_ELEVATORWALLTYPE_SOUTH="南墙" +WESTRING_ELEVATORWALLTYPE_WEST="西墙" + +// Trigger usage options +WESTRING_USESKIPOPTION_USE="显示" +WESTRING_USESKIPOPTION_SKIP="跳过" + +// Trigger seldesel options +WESTRING_SELDESELOPTION_SEL="选择" +WESTRING_SELDESELOPTION_DESEL="取消选择" + +// Trigger AI Captain options +WESTRING_AICAPTAIN_ATTACK="攻击" +WESTRING_AICAPTAIN_DEFENSE="防御" + +// Trigger AI Command Pop options +WESTRING_AICOMMAND_REMOVE="去除" +WESTRING_AICOMMAND_LEAVE="留下" + +// Trigger cache value types +WESTRING_CACHEVALUETYPE_BOOLEAN="布尔值" +WESTRING_CACHEVALUETYPE_INTEGER="整数" +WESTRING_CACHEVALUETYPE_REAL="实数" +WESTRING_CACHEVALUETYPE_UNIT="单位" +WESTRING_CACHEVALUETYPE_STRING="字符串" +WESTRING_CACHEVALUETYPE_HANDLE="handle" + +// Trigger map control +WESTRING_MAPCONTROL_NONE="没有" +WESTRING_MAPCONTROL_USER="用户" +WESTRING_MAPCONTROL_COMPUTER="电脑" +WESTRING_MAPCONTROL_RESCUABLE="可营救" +WESTRING_MAPCONTROL_NEUTRAL="中立被动" +WESTRING_MAPCONTROL_CREEP="中立敌对" + +// Trigger player slot states +WESTRING_PSLOT_EMPTY="没有使用" +WESTRING_PSLOT_PLAYING="正在游戏" +WESTRING_PSLOT_LEFT="已离开游戏" + +// Trigger player events +WESTRING_PEVENT_VICTORY="胜利" +WESTRING_PEVENT_DEFEAT="失败" +WESTRING_PEVENT_ALLIANCECHANGED="联盟设置更变" + +// Trigger player event messages +WESTRING_PEVENT_DEFEAT_MSG="失败!" +WESTRING_PEVENT_VICTORY_MSG="胜利!" + +// Trigger player unit events +WESTRING_PUEVENT_DEATH="死亡" +WESTRING_PUEVENT_DECAY="开始腐化" +WESTRING_PUEVENT_CHANGESOWNER="改变所有者" +WESTRING_PUEVENT_HEROLEVEL="提升等级" +WESTRING_PUEVENT_HEROSKILL="学习技能" +WESTRING_PUEVENT_HEROREVIVABLE="变得可重生" +WESTRING_PUEVENT_HEROUSEITEM="使用物品" +WESTRING_PUEVENT_HEROPICKUPITEM="获得物品" +WESTRING_PUEVENT_HERODROPITEM="丢弃物品" +WESTRING_PUEVENT_SELL="出售单位" +WESTRING_PUEVENT_SELLITEM="出售物品" +WESTRING_PUEVENT_PAWNITEM="抵押物品" +WESTRING_PUEVENT_ATTACKED="被攻击" +WESTRING_PUEVENT_RESCUED="被营救" +WESTRING_PUEVENT_SUMMONED="被召唤(召唤单位)" +WESTRING_PUEVENT_SPELLCHANNEL="准备施放技能" +WESTRING_PUEVENT_SPELLCAST="开始施放技能" +WESTRING_PUEVENT_SPELLENDCAST="停止施放技能" +WESTRING_PUEVENT_SPELLEFFECT="发动技能效果" +WESTRING_PUEVENT_SPELLFINISH="施放技能结束" +WESTRING_PUEVENT_LOADED="被运输机装载" +WESTRING_PUEVENT_TRAINSTART="开始训练单位" +WESTRING_PUEVENT_TRAINCANCEL="取消训练单位" +WESTRING_PUEVENT_TRAINFINISH="完成训练单位" +WESTRING_PUEVENT_CONSTRUCTSTART="开始被建造" +WESTRING_PUEVENT_CONSTRUCTCANCEL="被取消建造" +WESTRING_PUEVENT_CONSTRUCTFINISH="完成建造" +WESTRING_PUEVENT_REVIVESTART="开始复活英雄" +WESTRING_PUEVENT_REVIVECANCEL="取消复活英雄" +WESTRING_PUEVENT_REVIVEFINISH="完成复活英雄" +WESTRING_PUEVENT_UPGRADESTART="开始建筑升级" +WESTRING_PUEVENT_UPGRADECANCEL="取消建筑升级" +WESTRING_PUEVENT_UPGRADEFINISH="完成建筑升级" +WESTRING_PUEVENT_RESEARCHSTART="开始研究科技" +WESTRING_PUEVENT_RESEARCHCANCEL="取消研究科技" +WESTRING_PUEVENT_RESEARCHFINISH="完成研究科技" +WESTRING_PUEVENT_ISSUEDUNITORDER="发布指定物体目标指令" +WESTRING_PUEVENT_ISSUEDPOINTORDER="发布指定点目标指令" +WESTRING_PUEVENT_ISSUEDORDER="发布无目标指令" + +// Trigger unit events +WESTRING_UEVENT_DEATH=WESTRING_PUEVENT_DEATH +WESTRING_UEVENT_DECAY=WESTRING_PUEVENT_DECAY +WESTRING_UEVENT_CHANGESOWNER=WESTRING_PUEVENT_CHANGESOWNER +WESTRING_UEVENT_DAMAGED="接受伤害" +WESTRING_UEVENT_HEROLEVEL=WESTRING_PUEVENT_HEROLEVEL +WESTRING_UEVENT_HEROSKILL=WESTRING_PUEVENT_HEROSKILL +WESTRING_UEVENT_HEROREVIVABLE=WESTRING_PUEVENT_HEROREVIVABLE +WESTRING_UEVENT_HEROUSEITEM=WESTRING_PUEVENT_HEROUSEITEM +WESTRING_UEVENT_HEROPICKUPITEM=WESTRING_PUEVENT_HEROPICKUPITEM +WESTRING_UEVENT_HERODROPITEM=WESTRING_PUEVENT_HERODROPITEM +WESTRING_UEVENT_SELL=WESTRING_PUEVENT_SELL +WESTRING_UEVENT_SELLITEM=WESTRING_PUEVENT_SELLITEM +WESTRING_UEVENT_PAWNITEM=WESTRING_PUEVENT_PAWNITEM +WESTRING_UEVENT_ATTACKED=WESTRING_PUEVENT_ATTACKED +WESTRING_UEVENT_RESCUED=WESTRING_PUEVENT_RESCUED +WESTRING_UEVENT_SELECTED="被选择" +WESTRING_UEVENT_DESELECTED="被取消选择" +WESTRING_UEVENT_SPELLCHANNEL=WESTRING_PUEVENT_SPELLCHANNEL +WESTRING_UEVENT_SPELLCAST=WESTRING_PUEVENT_SPELLCAST +WESTRING_UEVENT_SPELLENDCAST=WESTRING_PUEVENT_SPELLENDCAST +WESTRING_UEVENT_SPELLEFFECT=WESTRING_PUEVENT_SPELLEFFECT +WESTRING_UEVENT_SPELLFINISH=WESTRING_PUEVENT_SPELLFINISH +WESTRING_UEVENT_LOADED=WESTRING_PUEVENT_LOADED +WESTRING_UEVENT_ACQUIREDTARGET="注意到攻击目标" +WESTRING_UEVENT_TARGETINRANGE="获取攻击目标" +WESTRING_UEVENT_TRAINSTART=WESTRING_PUEVENT_TRAINSTART +WESTRING_UEVENT_TRAINCANCEL=WESTRING_PUEVENT_TRAINCANCEL +WESTRING_UEVENT_TRAINFINISH=WESTRING_PUEVENT_TRAINFINISH +WESTRING_UEVENT_REVIVESTART=WESTRING_PUEVENT_REVIVESTART +WESTRING_UEVENT_REVIVECANCEL=WESTRING_PUEVENT_REVIVECANCEL +WESTRING_UEVENT_REVIVEFINISH=WESTRING_PUEVENT_REVIVEFINISH +WESTRING_UEVENT_UPGRADESTART=WESTRING_PUEVENT_UPGRADESTART +WESTRING_UEVENT_UPGRADECANCEL=WESTRING_PUEVENT_UPGRADECANCEL +WESTRING_UEVENT_UPGRADEFINISH=WESTRING_PUEVENT_UPGRADEFINISH +WESTRING_UEVENT_RESEARCHSTART=WESTRING_PUEVENT_RESEARCHSTART +WESTRING_UEVENT_RESEARCHCANCEL=WESTRING_PUEVENT_RESEARCHCANCEL +WESTRING_UEVENT_RESEARCHFINISH=WESTRING_PUEVENT_RESEARCHFINISH +WESTRING_UEVENT_ISSUEUNITORDER=WESTRING_PUEVENT_ISSUEDUNITORDER +WESTRING_UEVENT_ISSUEPOINTORDER=WESTRING_PUEVENT_ISSUEDPOINTORDER +WESTRING_UEVENT_ISSUEORDER=WESTRING_PUEVENT_ISSUEDORDER + +// Trigger unit states (read-only) +WESTRING_USTATE_LIFE="生命值" +WESTRING_USTATE_MAXLIFE="最大生命值" +WESTRING_USTATE_MANA="魔法值" +WESTRING_USTATE_MAXMANA="最大魔法值" + +// Trigger keyboard event types +WESTRING_KEYEVENTTYPE_DEPRESS="按下" +WESTRING_KEYEVENTTYPE_RELEASE="松开" + +// Trigger keyboard events +WESTRING_KEYEVENTKEY_LEFT="Left键" +WESTRING_KEYEVENTKEY_RIGHT="Right键" +WESTRING_KEYEVENTKEY_DOWN="Down键" +WESTRING_KEYEVENTKEY_UP="Up键" + +// Trigger unit types +WESTRING_UNITTYPE_STRUCTURE="建筑" +WESTRING_UNITTYPE_HERO="英雄" +WESTRING_UNITTYPE_GROUND="地面单位" +WESTRING_UNITTYPE_FLYING="飞行单位" +WESTRING_UNITTYPE_ATTACKSGROUND="可攻击地面的单位" +WESTRING_UNITTYPE_ATTACKSFLYING="可攻击飞行物的单位" +WESTRING_UNITTYPE_MELEEATTACKER="近战单位" +WESTRING_UNITTYPE_RANGEDATTACKER="远程单位" +WESTRING_UNITTYPE_SUMMONED="召唤单位" +WESTRING_UNITTYPE_UNDEAD="不死族" +WESTRING_UNITTYPE_MECHANICAL="机械" +WESTRING_UNITTYPE_ANCIENT="古树" +WESTRING_UNITTYPE_PEON="工人" +WESTRING_UNITTYPE_TOWNHALL="城镇大厅" +WESTRING_UNITTYPE_SAPPER="自爆工兵" + +// Trigger game speeds +WESTRING_GAMESPEED_SLOWEST="最慢速" +WESTRING_GAMESPEED_SLOW="慢速" +WESTRING_GAMESPEED_NORMAL="普通" +WESTRING_GAMESPEED_FAST="快速" +WESTRING_GAMESPEED_FASTEST="最快速" + +// Trigger game difficulties +WESTRING_GAMEDIFFICULTY_EASY="简单" +WESTRING_GAMEDIFFICULTY_NORMAL="普通" +WESTRING_GAMEDIFFICULTY_HARD="困难" + +// Trigger melee AI difficulties +WESTRING_AIDIFFICULTY_NEWBIE="简单AI" +WESTRING_AIDIFFICULTY_NORMAL="普通AI" +WESTRING_AIDIFFICULTY_INSANE="疯狂AI" + +// Trigger map densities +WESTRING_MAPDENSITY_NONE="无" +WESTRING_MAPDENSITY_LIGHT="轻" +WESTRING_MAPDENSITY_MEDIUM="中" +WESTRING_MAPDENSITY_HEAVY="重" + +// Trigger races +WESTRING_TRIGRACE_HUMAN="人族" +WESTRING_TRIGRACE_ORC="兽族" +WESTRING_TRIGRACE_UNDEAD="不死族" +WESTRING_TRIGRACE_NIGHTELF="暗夜精灵族" +WESTRING_TRIGRACE_DEMON="恶魔" + +// Trigger item classes +WESTRING_ITEMTYPE_ANY="任何" +WESTRING_ITEMTYPE_PERMANENT="永久" +WESTRING_ITEMTYPE_CHARGED="可充" +WESTRING_ITEMTYPE_POWERUP="能量提升" +WESTRING_ITEMTYPE_ARTIFACT="人造" +WESTRING_ITEMTYPE_PURCHASABLE="可购买" +WESTRING_ITEMTYPE_CAMPAIGN="战役" +WESTRING_ITEMTYPE_MISCELLANEOUS="混杂" +WESTRING_ITEMTYPE_UNKNOWN="未知" + +// Trigger units +WESTRING_TRIGUNIT_NULL="没有单位" + +// Trigger unit-types +WESTRING_TRIGUNITTYPE_NULL="没有单位类型" + +// Trigger items +WESTRING_TRIGITEM_NULL="没有物品" + +// Trigger destructables +WESTRING_TRIGDESTRUCTABLE_NULL="没有可破坏物" + +// Trigger rects +WESTRING_TRIGRECT_NULL="没有矩形区域" + +// Trigger sounds +WESTRING_TRIGSOUND_NULL="没有音效" + +// Trigger musicfiles +WESTRING_TRIGMUSICFILE_MUSIC="音乐" + +// Trigger limit operators +WESTRING_LIMITOP_EQUAL="等于" +WESTRING_LIMITOP_NOTEQUAL="不等于" +WESTRING_LIMITOP_LESSTHAN="小于" +WESTRING_LIMITOP_LESSTHANOREQUAL="小于或等于" +WESTRING_LIMITOP_GREATERTHAN="大于" +WESTRING_LIMITOP_GREATERTHANOREQUAL="大于或等于" + +// Trigger alliance settings +WESTRING_ALLIANCE_UNALLIED="敌对" +WESTRING_ALLIANCE_UNALLIEDVISION="敌对但共享视野" +WESTRING_ALLIANCE_NEUTRAL="中立" +WESTRING_ALLIANCE_NEUTRAL_VISION="中立并共享视野" +WESTRING_ALLIANCE_ALLIED="结盟" +WESTRING_ALLIANCE_ALLIEDVISION="结盟并共享视野" +WESTRING_ALLIANCE_ALLIEDUNITS="结盟并共享视野和单位" +WESTRING_ALLIANCE_ALLIEDADVUNITS="结盟并共享视野和完全控制权" + +// Trigger alliance types +WESTRING_ALLIANCE_PASSIVE="结盟(不侵犯)" +WESTRING_ALLIANCE_SHAREDVISION="共享视野" +WESTRING_ALLIANCE_SHAREDCONTROL="共享单位" +WESTRING_ALLIANCE_SHAREDFULLCONTROL="共享完全控制权" +WESTRING_ALLIANCE_XP="共享经验" +WESTRING_ALLIANCE_SPELLS="盟友魔法锁定" +WESTRING_ALLIANCE_HELPREQUEST="救援请求" +WESTRING_ALLIANCE_HELPRESPONSE="救援回应" + +// Trigger camera fields +WESTRING_CAMERA_TARGETDISTANCE="镜头距离(距离到目标)" +WESTRING_CAMERA_FARZ="远景截断距离(远景剪裁)" +WESTRING_CAMERA_AOA="X轴旋转角度(水平角度)" +WESTRING_CAMERA_FOV="镜头区域(观察区域)" +WESTRING_CAMERA_ROLL="Y轴旋转角度(滚动)" +WESTRING_CAMERA_ROTATION="Z轴旋转角度(旋转)" +WESTRING_CAMERA_ZOFFSET="Z轴偏移(高度位移)" + +// Trigger animation rarity controls +WESTRING_RARITY_FREQUENT="普通的" +WESTRING_RARITY_Rare="罕见的" + +// Blending Methods +WESTRING_BLENDMODE_NONE="无混合物" +WESTRING_BLENDMODE_BLEND="普通混合物" +WESTRING_BLENDMODE_ADDITIVE="附加的混合物" +WESTRING_BLENDMODE_MODULATE="调整的混合物" +WESTRING_BLENDMODE_MODULATE_2X="调整的2倍混合物" +WESTRING_BLENDMODE_KEYALPHA="关键的Alpha混合物" + +// Volume Groups +WESTRING_VOLUMEGROUP_AMBIENTSOUNDS="环境音效" +WESTRING_VOLUMEGROUP_SPELLS="动画和技能音效" +WESTRING_VOLUMEGROUP_COMBAT="战斗音效" +WESTRING_VOLUMEGROUP_FIRE="火焰音效" +WESTRING_VOLUMEGROUP_MUSIC="音乐" +WESTRING_VOLUMEGROUP_UNITMOVEMENT="单位移动音效" +WESTRING_VOLUMEGROUP_UNITSOUNDS="单位回应音效" +WESTRING_VOLUMEGROUP_UI="用户界面音效" + +// Fog states +WESTRING_FOGSTATE_MASKED="黑色迷雾" +WESTRING_FOGSTATE_FOGGED="战争迷雾" +WESTRING_FOGSTATE_VISIBLE="可见" + +// Fog styles +WESTRING_FOGSTYLE_LINEAR="直线" +WESTRING_FOGSTYLE_EXP1="指数1" +WESTRING_FOGSTYLE_EXP2="指数2" + +// Trigger timed-life buff codes +WESTRING_TIMEDLIFEBUFFCODE_ANIMATEDEAD="操纵死尸" +WESTRING_TIMEDLIFEBUFFCODE_PLAGUEWARD="疾病云雾" +WESTRING_TIMEDLIFEBUFFCODE_FORCEOFNATURE="自然之力" +WESTRING_TIMEDLIFEBUFFCODE_GENERIC="类" +WESTRING_TIMEDLIFEBUFFCODE_HEALINGWARD="治疗守卫" +WESTRING_TIMEDLIFEBUFFCODE_RAISEDEAD="复活死尸" +WESTRING_TIMEDLIFEBUFFCODE_WATERELEMENTAL="水元素" + +// Trigger item status codes +WESTRING_ITEMSTATUS_HIDDEN="隐藏" +WESTRING_ITEMSTATUS_OWNED="被持有" +WESTRING_ITEMSTATUS_INVULNERABLE="无敌" +WESTRING_ITEMSTATUS_POWERUP="捡取时自动使用" +WESTRING_ITEMSTATUS_SELLABLE="可被市场随机出售" +WESTRING_ITEMSTATUS_PAWNABLE="可抵押" + +// Trigger itemcode status codes +WESTRING_ITEMCODESTATUS_POWERUP="捡取时自动使用" +WESTRING_ITEMCODESTATUS_SELLABLE="可出售" +WESTRING_ITEMCODESTATUS_PAWNABLE="可被抵押掉" + +// Trigger minimap ping styles +WESTRING_MINIMAPPINGSTYLE_SIMPLE="简单" +WESTRING_MINIMAPPINGSTYLE_FLASHY="闪烁" +WESTRING_MINIMAPPINGSTYLE_ATTACK="警告" + +// Trigger corpse creation styles +WESTRING_CORPSETYPE_FLESH="肉态" +WESTRING_CORPSETYPE_BONE="骨态" + +// String case options +WESTRING_STRINGCASE_LOWER="小写" +WESTRING_STRINGCASE_UPPER="大写" + +// Trigger change color options +WESTRING_CHANGECOLOR_CHANGE="改变颜色" +WESTRING_CHANGECOLOR_RETAIN="保持颜色" + +// Trigger set player color options +WESTRING_SETPLAYERCOLOR_CHANGE="改变颜色" +WESTRING_SETPLAYERCOLOR_RETAIN="保持颜色" + +// Trigger chat match types +WESTRING_CHATMATCH_EXACT="完全匹配" +WESTRING_CHATMATCH_SUBSTRING="包含字符串" + +// Trigger unit-facing bones +WESTRING_UNITFACINGBONE_HEAD="头部" +WESTRING_UNITFACINGBONE_CHEST="胸部" + +// Trigger inclusion options +WESTRING_INCLUSION_INCLUDE="包括" +WESTRING_INCLUSION_EXCLUDE="不包括" + +// Trigger Camera Pan options +WESTRING_CAMERAAPPLYOPTION_APPLY="应用" +WESTRING_CAMERAAPPLYOPTION_APPLYNOPAN="不应用" + +// Trigger Camera Orientation options +WESTRING_CAMERAORIENTATION_INHERIT="单位角度" +WESTRING_CAMERAORIENTATION_NORMAL="默认角度" + +// Trigger invulnerability options +WESTRING_INVULNERABILITY_INVULNERABLE="无敌的" +WESTRING_INVULNERABILITY_VULNERABLE="可攻击的" + +// Trigger availability options +WESTRING_AVAILABILITY_AVAILABLE="可取得的" +WESTRING_AVAILABILITY_UNAVAILABLE="不可取得的" + +// Trigger showhide options +WESTRING_SHOWHIDE_SHOW="显示" +WESTRING_SHOWHIDE_HIDE="隐藏" + +// Trigger minimize options +WESTRING_MINIMIZEOPTION_MINIMIZE="最小化" +WESTRING_MINIMIZEOPTION_MAXIMIZE="最大化" + +// Trigger sky models +WESTRING_SKYMODEL_NONE="没有" +WESTRING_SKYMODEL_SKY01="一般的天空" +WESTRING_SKYMODEL_SKY02="达拉然的天空" +WESTRING_SKYMODEL_SKY03="洛丹伦的秋天的天空" +WESTRING_SKYMODEL_SKY04="洛丹伦的夏天的天空" +WESTRING_SKYMODEL_SKY05="洛丹伦的冬天的天空" +WESTRING_SKYMODEL_SKY06="费尔伍德的天空" +WESTRING_SKYMODEL_SKY07="迷雾的天空" +WESTRING_SKYMODEL_SKY08="暴风雪的天空" +WESTRING_SKYMODEL_SKY09="洛丹伦的冬天的天空 (亮绿色)" +WESTRING_SKYMODEL_SKY10="洛丹伦的冬天的天空 (粉红色)" +WESTRING_SKYMODEL_SKY11="洛丹伦的冬天的天空 (紫色)" +WESTRING_SKYMODEL_SKY12="洛丹伦的冬天的天空 (红色)" +WESTRING_SKYMODEL_SKY13="洛丹伦的冬天的天空 (黄色)" +//#LINENOBETA +WESTRING_SKYMODEL_SKY14="边缘之地的天空" + +// Trigger cinematic filter textures +WESTRING_CINEFILTERTEX_WHITE="白色迷雾" +WESTRING_CINEFILTERTEX_BLACK="黑色迷雾" +WESTRING_CINEFILTERTEX_HAZE="薄雾滤镜" +WESTRING_CINEFILTERTEX_GROUNDFOG="地面迷雾" +WESTRING_CINEFILTERTEX_HAZEANDFOG="薄雾和迷雾" +WESTRING_CINEFILTERTEX_DIAGONAL="对角线削减" +WESTRING_CINEFILTERTEX_DREAM="梦境(边框模糊)" +WESTRING_CINEFILTERTEX_SCOPE="范围" +WESTRING_CINEFILTERTEX_POW="乒!(字图)" +WESTRING_CINEFILTERTEX_SPLAT="溅泼声!(字图)" +WESTRING_CINEFILTERTEX_PANDA="年幼熊猫(图片)" + +// Music themes +WESTRING_MUSICTHEME_ARTHAS="阿尔塞斯的主题曲" +WESTRING_MUSICTHEME_BLOODELF="血精灵的主题曲" +WESTRING_MUSICTHEME_COMRADESHIP="伙伴的友谊" +WESTRING_MUSICTHEME_CREDITS="制作人员" +WESTRING_MUSICTHEME_DARKAGENTS="黑暗代言人" +WESTRING_MUSICTHEME_DARKVICTORY="黑暗胜利" +WESTRING_MUSICTHEME_DOOM="毁灭" +WESTRING_MUSICTHEME_HEROIC_VICTORY="英雄胜利" +WESTRING_MUSICTHEME_HUMAN1="人族1" +WESTRING_MUSICTHEME_HUMAN2="人族2" +WESTRING_MUSICTHEME_HUMAN3="人族3" +WESTRING_MUSICTHEME_HUMANX1="人族X1" +WESTRING_MUSICTHEME_DEFEAT_HUMAN="人族失败" +WESTRING_MUSICTHEME_VICTORY_HUMAN="人族胜利" +WESTRING_MUSICTHEME_ILLIDAN="尤迪安的主题曲" +WESTRING_MUSICTHEME_LICHKING="巫妖王的主题曲" +WESTRING_MUSICTHEME_MAINSCREEN="主要场景" +WESTRING_MUSICTHEME_MAINSCREENX="主要场景X" +WESTRING_MUSICTHEME_NAGA="娜迦的主题曲" +WESTRING_MUSICTHEME_NIGHTELF1="暗夜精灵族1" +WESTRING_MUSICTHEME_NIGHTELF2="暗夜精灵族2" +WESTRING_MUSICTHEME_NIGHTELF3="暗夜精灵族3" +WESTRING_MUSICTHEME_NIGHTELFX1="暗夜精灵族X1" +WESTRING_MUSICTHEME_DEFEAT_NIGHTELF="暗夜精灵族失败" +WESTRING_MUSICTHEME_VICTORY_NIGHTELF="暗夜精灵族胜利" +WESTRING_MUSICTHEME_ORC1="兽族1" +WESTRING_MUSICTHEME_ORC2="兽族2" +WESTRING_MUSICTHEME_ORC3="兽族3" +WESTRING_MUSICTHEME_ORCX1="兽族X1" +WESTRING_MUSICTHEME_DEFEAT_ORC="兽族失败" +WESTRING_MUSICTHEME_ORC_THEME="半兽人的主题曲" +WESTRING_MUSICTHEME_VICTORY_ORC="兽族胜利" +WESTRING_MUSICTHEME_PURSUIT="追击" +WESTRING_MUSICTHEME_SADMYSTERY="神秘哀伤" +WESTRING_MUSICTHEME_TENSION="紧张" +WESTRING_MUSICTHEME_TRAGICCONFRONTATION="悲剧降临" +WESTRING_MUSICTHEME_UNDEAD1="不死族1" +WESTRING_MUSICTHEME_UNDEAD2="不死族2" +WESTRING_MUSICTHEME_UNDEAD3="不死族3" +WESTRING_MUSICTHEME_UNDEADX1="不死族 X1" +WESTRING_MUSICTHEME_DEFEAT_UNDEAD="不死族失败" +WESTRING_MUSICTHEME_VICTORY_UNDEAD="不死族胜利" + +// Daytime Ambient Themes +WESTRING_AMBIENTTHEMEDAY_A="白杨谷" +WESTRING_AMBIENTTHEMEDAY_B="干燥荒地" +WESTRING_AMBIENTTHEMEDAY_K="黑色城堡" +WESTRING_AMBIENTTHEMEDAY_Y="城邦" +WESTRING_AMBIENTTHEMEDAY_X="达拉然" +WESTRING_AMBIENTTHEMEDAY_J="达拉然遗迹" +WESTRING_AMBIENTTHEMEDAY_D="地牢" +WESTRING_AMBIENTTHEMEDAY_C="费尔伍德" +WESTRING_AMBIENTTHEMEDAY_I="寒冰王冠" +WESTRING_AMBIENTTHEMEDAY_F="洛丹伦的秋天" +WESTRING_AMBIENTTHEMEDAY_L="洛丹伦的夏天" +WESTRING_AMBIENTTHEMEDAY_W="洛丹伦的冬天" +WESTRING_AMBIENTTHEMEDAY_N="诺森德" +WESTRING_AMBIENTTHEMEDAY_O="边缘之地" +WESTRING_AMBIENTTHEMEDAY_Z="沉沦的遗迹" +WESTRING_AMBIENTTHEMEDAY_V="村庄" +WESTRING_AMBIENTTHEMEDAY_Q="村庄的秋天" + +// Nighttime Ambient Themes +WESTRING_AMBIENTTHEMENIGHT_A="白杨谷" +WESTRING_AMBIENTTHEMENIGHT_B="干燥荒地" +WESTRING_AMBIENTTHEMENIGHT_K="黑色城堡" +WESTRING_AMBIENTTHEMENIGHT_Y="城邦" +WESTRING_AMBIENTTHEMENIGHT_X="达拉然" +WESTRING_AMBIENTTHEMENIGHT_J="达拉然遗迹" +WESTRING_AMBIENTTHEMENIGHT_D="地牢" +WESTRING_AMBIENTTHEMENIGHT_C="费尔伍德" +WESTRING_AMBIENTTHEMENIGHT_I="寒冰王冠" +WESTRING_AMBIENTTHEMENIGHT_F="洛丹伦的秋天" +WESTRING_AMBIENTTHEMENIGHT_L="洛丹伦的夏天" +WESTRING_AMBIENTTHEMENIGHT_W="洛丹伦的冬天" +WESTRING_AMBIENTTHEMENIGHT_N="诺森德" +WESTRING_AMBIENTTHEMENIGHT_O="边缘之地" +WESTRING_AMBIENTTHEMENIGHT_Z="沉沦的废墟" +WESTRING_AMBIENTTHEMENIGHT_V="村庄" +WESTRING_AMBIENTTHEMENIGHT_Q="村庄的秋天" + +// Unit State Method +WESTRING_UNITSTATEMETHOD_ABSOLUTE="旧单位的" +WESTRING_UNITSTATEMETHOD_RELATIVE="旧单位的相关物" +WESTRING_UNITSTATEMETHOD_DEFAULTS="新单位的默认值" +WESTRING_UNITSTATEMETHOD_MAXIMUM="新单位的最大值" + +// Trigger CheckingIgnoring option +WESTRING_CHECKINGIGNORINGOPTION_CHECKING="检查" +WESTRING_CHECKINGIGNORINGOPTION_IGNORING="忽略" + +// Trigger pathing options +WESTRING_PATHING_ON="打开" +WESTRING_PATHING_OFF="关闭" + +// Trigger Pawnable option +WESTRING_PAWNABLEOPTION_PAWNABLE="可被抵押掉的" +WESTRING_PAWNABLEOPTION_UNPAWNABLE="不可被抵押掉的" + +// Trigger DropNoDrop option +WESTRING_DROPNODROPOPTION_DROP="可抛弃的" +WESTRING_DROPNODROPOPTION_NODROP="不可抛弃的" + +// Trigger Droppable option +WESTRING_DROPPABLE_DROP="掉落" +WESTRING_DROPPABLE_NODROP="不掉落" + +// Trigger BeforeAfter option +WESTRING_BEFOREAFTER_BEFORE="之后" +WESTRING_BEFOREAFTER_AFTER="之前" + +// Trigger OnOff option +WESTRING_ONOFF_ON="打开" +WESTRING_ONOFF_OFF="关闭" + +// Trigger EnableDisable option +WESTRING_ENABLEDISABLE_ENABLE="允许" +WESTRING_ENABLEDISABLE_DISABLE="禁用" + +// Trigger EnabledDisabled option +WESTRING_ENABLEDDISABLED_ENABLED="允许" +WESTRING_ENABLEDDISABLED_DISABLED="禁用" + +// Trigger Rescuable option +WESTRING_RESCUABLEOPTION_RESCUABLE="可营救的" +WESTRING_RESCUABLEOPTION_UNRESCUABLE="不可营救的" + +// AllowDont option +WESTRING_ALLOWDONTOPTION_ALLOW="允许" +WESTRING_ALLOWDONTOPTION_DONT="禁止" + +// FadeDont option +WESTRING_FADEDONTOPTION_FADE="淡化后" +WESTRING_FADEDONTOPTION_DONT="立刻" + +// AddSetTo option +WESTRING_ADDSETTOOPTION_ADD="添加" +WESTRING_ADDSETTOOPTION_SUB="减去" +WESTRING_ADDSETTOOPTION_SET="设为" + +// Modify methods +WESTRING_MODIFYMETHOD_ADD="添加" +WESTRING_MODIFYMETHOD_SUB="减去" +WESTRING_MODIFYMETHOD_SET="设为" + +// WaitDont option +WESTRING_WAITDONTOPTION_WAIT="等待" +WESTRING_WAITDONTOPTION_DONT="不等待" + +// Crater types +WESTRING_CRATERTYPE_TEMPORARY="临时" +WESTRING_CRATERTYPE_PERMANENT="永久" + +// Ripple types +WESTRING_RIPPLETYPE_NORMAL="普通" +WESTRING_RIPPLETYPE_DEPRESSION="下陷" + +// CreateRemove option +WESTRING_CREATEREMOVEOPTION_CREATE="创建" +WESTRING_CREATEREMOVEOPTION_REMOVE="移除" + +// AddRemove option +WESTRING_ADDREMOVEOPTION_ADD="添加" +WESTRING_ADDREMOVEOPTION_REMOVE="删除" + +// QuestType option +WESTRING_QUESTTYPE_REQ_DISCOVERED="要求" +WESTRING_QUESTTYPE_OPT_DISCOVERED="可选择的" +WESTRING_QUESTTYPE_REQ_UNDISCOVERED="要求,未发现的" +WESTRING_QUESTTYPE_OPT_UNDISCOVERED="可选择的,未发现的" + +// QuestMessageType option +WESTRING_QUESTMESSAGE_DISCOVERED="发现任务" +WESTRING_QUESTMESSAGE_UPDATED="任务更新" +WESTRING_QUESTMESSAGE_COMPLETED="任务完成" +WESTRING_QUESTMESSAGE_FAILED="任务失败" +WESTRING_QUESTMESSAGE_REQUIREMENT="任务要求" +WESTRING_QUESTMESSAGE_MISSIONFAILED="任务失败" +WESTRING_QUESTMESSAGE_ALWAYSHINT="提示" +WESTRING_QUESTMESSAGE_HINT="简单提示" +WESTRING_QUESTMESSAGE_SECRET="秘密" +WESTRING_QUESTMESSAGE_WARNING="警告" +WESTRING_QUESTMESSAGE_UNITACQUIRED="获得新单位" +WESTRING_QUESTMESSAGE_UNITAVAILABLE="新单位可用" +WESTRING_QUESTMESSAGE_ITEMACQUIRED="收到新物品" + +// Hero Stats +WESTRING_HEROSTAT_STR="力量" +WESTRING_HEROSTAT_AGI="敏捷" +WESTRING_HEROSTAT_INT="智力" + +// Completion option +WESTRING_COMPLETIONOPTION_COMPLETED="完成" +WESTRING_COMPLETIONOPTION_INCOMPLETE="未完成" + +// Failure option +WESTRING_FAILUREOPTION_FAILED="失败" +WESTRING_FAILUREOPTION_NOTFAILED="未失败" + +// Discovered option +WESTRING_DISCOVEREDOPTION_DISCOVERED="发现" +WESTRING_DISCOVEREDOPTION_UNDISCOVERED="未发现" + +// PauseResume option +WESTRING_PAUSERESUMEOPTION_PAUSE="暂停" +WESTRING_PAUSERESUMEOPTION_RESUME="恢复" + +// Periodic option +WESTRING_PERIODICOPTION_ONETIME="一次" +WESTRING_PERIODICOPTION_PERIODIC="循环" + +// LeaderboardSort option +WESTRING_LEADERBOARDSORT_BYVALUE="分数" +WESTRING_LEADERBOARDSORT_BYPLAYER="玩家" +WESTRING_LEADERBOARDSORT_BYLABEL="名字" + +// Ascending option +WESTRING_ASCENDINGOPTION_ASCENDING="升序" +WESTRING_ASCENDINGOPTION_DESCENDING="降序" + +// SleepWake option +WESTRING_SLEEPWAKEOPTION_SLEEP="睡眠" +WESTRING_SLEEPWAKEOPTION_WAKE="清醒" + +// PauseUnpause option +WESTRING_PAUSEUNPAUSEOPTION_PAUSE="暂停" +WESTRING_PAUSEUNPAUSEOPTION_UNPAUSE="恢复" + +// ShareDont option +WESTRING_SHAREDONTOPTION_SHARE="同意" +WESTRING_SHAREDONTOPTION_DONT="拒绝" + +// InOut option +WESTRING_FADETYPEOPTION_FADEOUTIN="淡出并淡入" +WESTRING_FADETYPEOPTION_FADEOUT="淡出" +WESTRING_FADETYPEOPTION_FADEIN="淡入" + +// Buff Types +WESTRING_BUFFTYPE_ALL="全部" +WESTRING_BUFFTYPE_NONTLIFE="除生命周期外" +WESTRING_BUFFTYPE_POSITIVE="有益" +WESTRING_BUFFTYPE_NEGATIVE="有害" + +// Buff Polarity options +WESTRING_BUFF_POLARITY_POSITIVE="有益" +WESTRING_BUFF_POLARITY_NEGATIVE="有害" +WESTRING_BUFF_POLARITY_EITHER="全部" + +// Buff Resistance types +WESTRING_BUFF_RESIST_MAGIC="魔法" +WESTRING_BUFF_RESIST_PHYSICAL="物理" +WESTRING_BUFF_RESIST_EITHER="魔法或物理" +WESTRING_BUFF_RESIST_BOTH="无效选项" + +// Camera Bounds Adjustment Type +WESTRING_CAMERABOUNDSADJUST_ADD="扩展" +WESTRING_CAMERABOUNDSADJUST_SUB="收缩" + +// Availability Option +WESTRING_AVAILABLEOPTION_AVAILABLE="可用" +WESTRING_AVAILABLEOPTION_UNAVAILABLE="不可用" + +// Explode Option +WESTRING_EXPLODEDONTOPTION_EXPLODE="爆炸死亡" +WESTRING_EXPLODEDONTOPTION_DONT="普通死亡" + +// SuspendResume Option +WESTRING_SUSPENDRESUMEOPTION_SUSPEND="暂停" +WESTRING_SUSPENDRESUMEOPTION_RESUME="恢复" + +// Tournament Event Option +WESTRING_GAMEEVENT_TOURNAMENTFINISHSOON="不久" +WESTRING_GAMEEVENT_TOURNAMENTFINISHNOW="现在" + +// Mission Index +// Tutorial +WESTRING_MISSION_INDEX_T00="教程01" +WESTRING_MISSION_INDEX_T01="教程02" +// Human +WESTRING_MISSION_INDEX_H00="人族01" +WESTRING_MISSION_INDEX_H01="人族02" +WESTRING_MISSION_INDEX_H02="人族02 插曲" +WESTRING_MISSION_INDEX_H03="人族03" +WESTRING_MISSION_INDEX_H04="人族04" +WESTRING_MISSION_INDEX_H05="人族05" +WESTRING_MISSION_INDEX_H06="人族05 插曲" +WESTRING_MISSION_INDEX_H07="人族06" +WESTRING_MISSION_INDEX_H08="人族06 插曲" +WESTRING_MISSION_INDEX_H09="人族07" +WESTRING_MISSION_INDEX_H10="人族08" +WESTRING_MISSION_INDEX_H11="人族09" +// Undead +WESTRING_MISSION_INDEX_U00="不死族01" +WESTRING_MISSION_INDEX_U01="不死族02" +WESTRING_MISSION_INDEX_U02="不死族02 插曲" +WESTRING_MISSION_INDEX_U03="不死族03" +WESTRING_MISSION_INDEX_U05="不死族04" +WESTRING_MISSION_INDEX_U07="不死族05" +WESTRING_MISSION_INDEX_U08="不死族05 插曲" +WESTRING_MISSION_INDEX_U09="不死族06" +WESTRING_MISSION_INDEX_U10="不死族07" +WESTRING_MISSION_INDEX_U11="不死族08" +// Orc +WESTRING_MISSION_INDEX_O00="兽族01" +WESTRING_MISSION_INDEX_O01="兽族02" +WESTRING_MISSION_INDEX_O02="兽族02 插曲" +WESTRING_MISSION_INDEX_O03="兽族03" +WESTRING_MISSION_INDEX_O04="兽族04" +WESTRING_MISSION_INDEX_O05="兽族04 插曲" +WESTRING_MISSION_INDEX_O06="兽族05" +WESTRING_MISSION_INDEX_O07="兽族06" +WESTRING_MISSION_INDEX_O08="兽族07" +WESTRING_MISSION_INDEX_O09="兽族07 插曲" +WESTRING_MISSION_INDEX_O10="兽族08" +// Night Elf +WESTRING_MISSION_INDEX_N00="暗夜精灵族01" +WESTRING_MISSION_INDEX_N01="暗夜精灵族02" +WESTRING_MISSION_INDEX_N02="暗夜精灵族03" +WESTRING_MISSION_INDEX_N03="暗夜精灵族04" +WESTRING_MISSION_INDEX_N04="暗夜精灵族05" +WESTRING_MISSION_INDEX_N05="暗夜精灵族06" +WESTRING_MISSION_INDEX_N06="暗夜精灵族06 插曲" +WESTRING_MISSION_INDEX_N07="暗夜精灵族07" +// Expansion Night Elf +WESTRING_MISSION_INDEX_XN00="暗夜精灵族X01" +WESTRING_MISSION_INDEX_XN01="暗夜精灵族X02" +WESTRING_MISSION_INDEX_XN02="暗夜精灵族X03" +WESTRING_MISSION_INDEX_XN03="暗夜精灵族X04" +WESTRING_MISSION_INDEX_XN04="暗夜精灵族X04 插曲" +WESTRING_MISSION_INDEX_XN05="暗夜精灵族X05" +WESTRING_MISSION_INDEX_XN06="暗夜精灵族X06" +WESTRING_MISSION_INDEX_XN07="暗夜精灵族X06 插曲" +WESTRING_MISSION_INDEX_XN08="暗夜精灵族X07" +WESTRING_MISSION_INDEX_XN09="暗夜精灵族X08" +WESTRING_MISSION_INDEX_XN10="暗夜精灵族X08 结局" +// Expansion Human +WESTRING_MISSION_INDEX_XH00="人族X01" +WESTRING_MISSION_INDEX_XH01="人族X02" +WESTRING_MISSION_INDEX_XH02="人族X03" +WESTRING_MISSION_INDEX_XH03="人族X03 秘密关卡" +WESTRING_MISSION_INDEX_XH04="人族 X03 插曲" +WESTRING_MISSION_INDEX_XH05="人族X04" +WESTRING_MISSION_INDEX_XH06="人族X04 插曲" +WESTRING_MISSION_INDEX_XH07="人族X05" +WESTRING_MISSION_INDEX_XH08="人族X06" +WESTRING_MISSION_INDEX_XH09="人族X06 结局" +// Expansion Undead +WESTRING_MISSION_INDEX_XU00="不死族X01" +WESTRING_MISSION_INDEX_XU01="不死族X01 插曲" +WESTRING_MISSION_INDEX_XU02="不死族X02" +WESTRING_MISSION_INDEX_XU03="不死族X02 插曲" +WESTRING_MISSION_INDEX_XU04="不死族X03" +WESTRING_MISSION_INDEX_XU05="不死族X04" +WESTRING_MISSION_INDEX_XU06="不死族X05" +WESTRING_MISSION_INDEX_XU07="不死族X06" +WESTRING_MISSION_INDEX_XU08="不死族X07a" +WESTRING_MISSION_INDEX_XU09="不死族X07b" +WESTRING_MISSION_INDEX_XU10="不死族X07c" +WESTRING_MISSION_INDEX_XU11="不死族X07 插曲" +WESTRING_MISSION_INDEX_XU12="不死族X08" +WESTRING_MISSION_INDEX_XU13="不死族X08 结局" +// Expansion Orc +WESTRING_MISSION_INDEX_XO00="兽族 X01" + +// Campaign Index +WESTRING_CAMPAIGN_INDEX_T="教程战役" +WESTRING_CAMPAIGN_INDEX_H="人族战役" +WESTRING_CAMPAIGN_INDEX_U="不死族战役" +WESTRING_CAMPAIGN_INDEX_O="兽族战役" +WESTRING_CAMPAIGN_INDEX_N="暗夜精灵族战役" +WESTRING_CAMPAIGN_INDEX_XN="资料片暗夜精灵族战役" +WESTRING_CAMPAIGN_INDEX_XH="资料片人族战役" +WESTRING_CAMPAIGN_INDEX_XU="资料片不死族战役" +WESTRING_CAMPAIGN_INDEX_XO="资料片兽族战役" + +// Cinematic Index +WESTRING_CINEMATICTYPE_TOP="教程开场动画" +WESTRING_CINEMATICTYPE_HOP="人族开场动画" +WESTRING_CINEMATICTYPE_HED="人族结局动画" +WESTRING_CINEMATICTYPE_UED="不死族结局动画" +WESTRING_CINEMATICTYPE_OED="兽族结局动画" +WESTRING_CINEMATICTYPE_NED="暗夜精灵族结局动画" +WESTRING_CINEMATICTYPE_XOP="资料片开场动画" +WESTRING_CINEMATICTYPE_XED="资料片结局动画" + +// Trigger Unit-Targeted Unit Orders +// Common +WESTRING_UNITORDERUTARG_ATTACK="攻击" +WESTRING_UNITORDERUTARG_ATTACKONCE="攻击一次" +WESTRING_UNITORDERUTARG_MOVE="跟随" +WESTRING_UNITORDERUTARG_SMART="右键点击" +WESTRING_UNITORDERUTARG_HARVEST="采集" +WESTRING_UNITORDERUTARG_REVIVE="复活英雄" +WESTRING_UNITORDERUTARG_LOAD="装载" +WESTRING_UNITORDERUTARG_UNLOAD="卸载" +WESTRING_UNITORDERUTARG_BOARD="登陆" +WESTRING_UNITORDERUTARG_FORCEBOARD="全部登陆" +// Human +WESTRING_UNITORDERUTARG_REPAIR="人族农民 - 修理" +WESTRING_UNITORDERUTARG_INNERFIRE="人族牧师 - 心灵之火" +WESTRING_UNITORDERUTARG_DISPEL="人族牧师 - 驱散" +WESTRING_UNITORDERUTARG_HEAL="人族牧师 - 治疗" +WESTRING_UNITORDERUTARG_SLOW="人族女巫 - 减速" +WESTRING_UNITORDERUTARG_INVISIBILITY="人族女巫 - 隐形术" +WESTRING_UNITORDERUTARG_POLYMORPH="人族女巫 - 变形术" +WESTRING_UNITORDERUTARG_CONTROLMAGIC="人族破法者 - 控制魔法" +WESTRING_UNITORDERUTARG_SPELLSTEAL="人族破法者 - 魔法盗取" +WESTRING_UNITORDERUTARG_AERIALSHACKLES="人族龙鹰骑士 - 空中锁镣" +WESTRING_UNITORDERUTARG_MASSTELEPORT="人族大法师 - 群体传送" +WESTRING_UNITORDERUTARG_BANISH="人族血之法师 - 放逐" +WESTRING_UNITORDERUTARG_SIPHONMANA="人族血魔法师 - 魔法汲取" +WESTRING_UNITORDERUTARG_THUNDERBOLT="人族山丘之王 - 风暴之锤" +WESTRING_UNITORDERUTARG_HOLYBOLT="人族圣骑士 - 神圣之光" +// Orc +WESTRING_UNITORDERUTARG_REPAIRO="兽族苦工 - 修理" +WESTRING_UNITORDERUTARG_ENSNARE="兽族掠夺者 - 诱捕" +WESTRING_UNITORDERUTARG_UNSTABLECONCOCTION="兽族蝙蝠骑士 - 自爆" +WESTRING_UNITORDERUTARG_PURGE="兽族萨满祭司 - 净化" +WESTRING_UNITORDERUTARG_LIGHTNINGSHIELD="兽族萨满祭司 - 闪电护盾" +WESTRING_UNITORDERUTARG_BLOODLUST="兽族萨满祭司 - 嗜血术" +WESTRING_UNITORDERUTARG_SPIRITLINK="兽族灵魂行者 - 灵魂锁链" +WESTRING_UNITORDERUTARG_DEVOUR="兽族科多兽- 吞食" +WESTRING_UNITORDERUTARG_CHAINLIGHTNING="兽族先知 - 闪电链" +WESTRING_UNITORDERUTARG_HEALINGWAVE="兽族暗影猎手 - 医疗波" +WESTRING_UNITORDERUTARG_HEX="兽族暗影猎手 - 妖术" +WESTRING_UNITORDERUTARG_ANCESTRALSPIRIT="兽族灵魂行者 - 先祖幽灵" +// Night Elf +WESTRING_UNITORDERUTARG_RENEW="暗夜精灵族小精灵 - 修理" +WESTRING_UNITORDERUTARG_ENTANGLE="暗夜精灵族生命之树 - 纠缠金矿" +WESTRING_UNITORDERUTARG_ENTANGLEINSTANT="暗夜精灵族生命之树 - 纠缠金矿(立即)" +WESTRING_UNITORDERUTARG_REPLENISH="暗夜精灵族月亮井 - 补充魔法和生命" +WESTRING_UNITORDERUTARG_MOUNTHIPPOGRYPH="暗夜精灵族弓箭手 - 骑乘角鹰兽(无效)" +WESTRING_UNITORDERUTARG_LOADARCHER="暗夜精灵族角鹰兽 - 搭载弓箭手" +WESTRING_UNITORDERUTARG_AUTODISPEL="暗夜精灵族树妖 - 驱逐魔法" +WESTRING_UNITORDERUTARG_FAERIEFIRE="暗夜精灵族猛禽德鲁伊 - 精灵之火" +WESTRING_UNITORDERUTARG_CYCLONE="暗夜精灵族猛禽德鲁伊 - 飓风" +WESTRING_UNITORDERUTARG_REJUVINATION="暗夜精灵族利爪德鲁伊 - 生命恢复" +WESTRING_UNITORDERUTARG_VENGEANCE="暗夜精灵族复仇天神 - 召唤复仇之魂" +WESTRING_UNITORDERUTARG_MANABURN="暗夜精灵族恶魔猎手 - 法力燃烧" +WESTRING_UNITORDERUTARG_ENTANGLINGROOTS="暗夜精灵族丛林守护者 - 纠缠根须" +WESTRING_UNITORDERUTARG_SHADOWSTRIKE="暗夜精灵族守望者 - 暗影突袭" +// Undead +WESTRING_UNITORDERUTARG_RESTORE="不死族侍僧 - 修理" +WESTRING_UNITORDERUTARG_SACRIFICEACOLYTE="不死族牺牲深渊 - 牺牲" +WESTRING_UNITORDERUTARG_SACRIFICE="不死族侍僧 - 牺牲" +WESTRING_UNITORDERUTARG_UNSUMMON="不死族侍僧 - 回收建筑" +WESTRING_UNITORDERUTARG_WEB="不死族穴居恶魔 - 蛛网" +WESTRING_UNITORDERUTARG_RAISEDEAD="不死族巫师 - 召唤骷髅" +WESTRING_UNITORDERUTARG_UNHOLYFRENZY="不死族巫师 - 邪恶狂热" +WESTRING_UNITORDERUTARG_CRIPPLE="不死族巫师 - 残废" +WESTRING_UNITORDERUTARG_CURSE="不死族女妖 - 诅咒" +WESTRING_UNITORDERUTARG_ANTIMAGICSHELL="不死族女妖 - 反魔法外壳" +WESTRING_UNITORDERUTARG_POSSESSION="不死族女妖 - 占据" +WESTRING_UNITORDERUTARG_ABSORBMANA="不死族破坏者 - 吸收魔法" +WESTRING_UNITORDERUTARG_FLAMINGATTACK="不死族破坏者 - 毁灭之球" +WESTRING_UNITORDERUTARG_IMPALE="不死族地穴领主 - 穿刺" +WESTRING_UNITORDERUTARG_CARRIONSCARABS="不死族地穴领主 - 腐尸甲虫" +WESTRING_UNITORDERUTARG_DEATHCOIL="不死族死亡骑士 - 死亡缠绕" +WESTRING_UNITORDERUTARG_DEATHPACT="不死族死亡骑士 - 死亡契约" +WESTRING_UNITORDERUTARG_SLEEP="不死族恐惧魔王 - 睡眠" +WESTRING_UNITORDERUTARG_FROSTNOVA="不死族巫妖 - 霜冻新星" +WESTRING_UNITORDERUTARG_FROSTARMOR="不死族巫妖 - 霜冻护甲" +WESTRING_UNITORDERUTARG_DARKRITUAL="不死族巫妖 - 黑暗仪式" +// Neutral +WESTRING_UNITORDERUTARG_CREEPDEVOUR="中立 - 吞食" +WESTRING_UNITORDERUTARG_FIREBOLT="中立 - 火球" +WESTRING_UNITORDERUTARG_CREEPHEAL="中立 - 治疗" +WESTRING_UNITORDERUTARG_CREEPTHUNDERBOLT="中立 - 投石" +WESTRING_UNITORDERUTARG_PARASITE="中立 - 寄生虫" +WESTRING_UNITORDERUTARG_SELFDESTRUCT="中立 - 自爆(地精)" +WESTRING_UNITORDERUTARG_BLACKARROW="中立黑暗游侠 - 黑暗之箭" +WESTRING_UNITORDERUTARG_CHARM="中立黑暗游侠 - 符咒" +WESTRING_UNITORDERUTARG_LIFEDRAIN="中立黑暗游侠 - 生命汲取" +WESTRING_UNITORDERUTARG_COLDARROW="中立娜迦海巫 - 霜冻之箭" +WESTRING_UNITORDERUTARG_FORKEDLIGHTNING="中立娜迦海巫 - 叉状闪电" +WESTRING_UNITORDERUTARG_STRONGDRINK="中立熊猫酒仙 - 醉酒云雾" +WESTRING_UNITORDERUTARG_DOOM="中立深渊魔王 - 末日审判" +WESTRING_UNITORDERUTARG_POISONARROW="中立的 – 毒箭" +WESTRING_UNITORDERUTARG_ACIDBOMB="中立炼金术士 - 酸性炸弹" +WESTRING_UNITORDERUTARG_TRANSMUTE="中立炼金术士 - 点金术" +WESTRING_UNITORDERUTARG_SOULBURN="中立火焰领主 - 灵魂燃烧" +// Special +WESTRING_UNITORDERUTARG_FINGEROFDEATH="燃烧军团阿克蒙德 - 死亡之指" +WESTRING_UNITORDERUTARG_DARKCONVERSION="燃烧军团马哥尼斯 - 黑暗转换" +WESTRING_UNITORDERUTARG_SOULPRESERVATION="燃烧军团马哥尼斯 - 灵魂保存" +WESTRING_UNITORDERUTARG_DARKCONVERSIONFAST="燃烧军团 - 黑暗转换(快速)" + +// Trigger Point-Targeted Unit Orders +// Common +WESTRING_UNITORDERPTARG_ATTACK="攻击移动" +WESTRING_UNITORDERPTARG_ATTACKGROUND="攻击地面" +WESTRING_UNITORDERPTARG_MOVE="移动" +WESTRING_UNITORDERPTARG_PATROL="巡逻" +WESTRING_UNITORDERPTARG_SMART="右键点击" +WESTRING_UNITORDERPTARG_SETRALLY="设置集结点" +WESTRING_UNITORDERPTARG_UNLOADALL="全部卸载" +// Human +WESTRING_UNITORDERPTARG_FLARE="人族迫击炮小队 - 照明弹" +WESTRING_UNITORDERPTARG_CLOUDOFFOG="人族龙鹰骑士 - 乌云技能" +WESTRING_UNITORDERPTARG_BLIZZARD="人族大法师 - 暴风雪" +WESTRING_UNITORDERPTARG_FLAMESTRIKE="人族血魔法师 - 烈焰风暴" +// Orc +WESTRING_UNITORDERPTARG_SENTRYWARD="兽族巫医 - 岗哨守卫" +WESTRING_UNITORDERPTARG_STASISTRAP="兽族巫医 - 静止陷阱" +WESTRING_UNITORDERPTARG_HEALINGWARD="兽族巫医 - 治疗守卫" +WESTRING_UNITORDERPTARG_DISENCHANT="兽族灵魂行者 - 消魔" +WESTRING_UNITORDERPTARG_FARSIGHT="兽族先知 - 远视" +WESTRING_UNITORDERPTARG_EARTHQUAKE="兽族先知 - 地震" +WESTRING_UNITORDERPTARG_SERPENTWARD="兽族暗影猎手 - 毒蛇守卫" +WESTRING_UNITORDERPTARG_SHOCKWAVE="兽族牛头人酋长 - 震荡波" +// Night Elf +WESTRING_UNITORDERPTARG_ROOT="暗夜精灵族的古树 - 扎根" +WESTRING_UNITORDERPTARG_DETONATE="暗夜精灵族小精灵 - 爆炸" +WESTRING_UNITORDERPTARG_FORCEOFNATURE="暗夜精灵族丛林守护者 - 自然之力" +WESTRING_UNITORDERPTARG_STARFALL="暗夜精灵族月之女祭司 - 群星坠落(无效)" +WESTRING_UNITORDERPTARG_BLINK="暗夜精灵族守望者 - 闪烁" +// Undead +WESTRING_UNITORDERPTARG_DEVOURMAGIC="不死族破坏者 - 吞噬魔法" +WESTRING_UNITORDERPTARG_IMPALE="不死族地穴领主 - 穿刺" +WESTRING_UNITORDERPTARG_CARRIONSWARM="不死族恐惧魔王 - 腐臭蜂群" +WESTRING_UNITORDERPTARG_DARKSUMMONING="不死族恐惧魔王 - 地狱火" +WESTRING_UNITORDERPTARG_DEATHANDDECAY="不死族巫妖 - 死亡凋零" +// Neutral +WESTRING_UNITORDERPTARG_BREATHOFFROST="中立 - 霜冻吐息" +WESTRING_UNITORDERPTARG_MONSOON="中立 - 季风" +WESTRING_UNITORDERPTARG_SELFDESTRUCT="中立 - 自爆(地精)" +WESTRING_UNITORDERPTARG_INFERNO="中立敌对 - 地狱火" +WESTRING_UNITORDERPTARG_STAMPEDE="中立兽王 - 惊吓" +WESTRING_UNITORDERPTARG_SILENCE="中立黑暗游侠 - 沉默" +WESTRING_UNITORDERPTARG_TORNADO="中立娜迦海巫 - 龙卷风" +WESTRING_UNITORDERPTARG_BREATHOFFIRE="中立熊猫酒仙 - 火焰吐息" +WESTRING_UNITORDERPTARG_HERORAINOFFIRE="中立深渊魔王 - 火焰雨" +WESTRING_UNITORDERPTARG_HEALINGSPRAY="中立炼金术士 - 医疗气雾" +WESTRING_UNITORDERPTARG_CLUSTERROCKETS="中立修补匠 - 火箭群" +WESTRING_UNITORDERPTARG_SUMMONFACTORY="中立修补匠 - 口袋工厂" +WESTRING_UNITORDERPTARG_VOLCANO="中立火焰领主 - 火山爆发" +// Special +WESTRING_UNITORDERPTARG_DARKPORTAL="燃烧军团阿克蒙德 - 黑暗之门" +WESTRING_UNITORDERPTARG_RAINOFCHAOS="燃烧军团阿克蒙德 - 混乱之雨" +WESTRING_UNITORDERPTARG_RAINOFFIRE="燃烧军团毁灭守卫 - 火焰雨" +WESTRING_UNITORDERPTARG_DARKSUMMONINGOLD="燃烧军团 - 黑暗召唤" + +// Trigger Destructible-Targeted Unit Orders +// Common +WESTRING_UNITORDERDTARG_ATTACK="攻击" +WESTRING_UNITORDERDTARG_SMART="右键点击" +WESTRING_UNITORDERDTARG_HARVEST="采集" +// Human +// Orc +// Night Elf +WESTRING_UNITORDERDTARG_CONSUMETREE="暗夜精灵族古树 - 吞食树木" +WESTRING_UNITORDERDTARG_SENTINEL="暗夜精灵族女猎手 - 哨兵" +WESTRING_UNITORDERDTARG_GRABTREE="暗夜精灵族山岭巨人 - 战棍" +// Undead +// Neutral +// Special + +// Trigger Item-Targeted Unit Orders +// Common +WESTRING_UNITORDERITARG_ATTACK="攻击" +WESTRING_UNITORDERITARG_ATTACKONCE="攻击一次" +WESTRING_UNITORDERITARG_MOVE="移动" +WESTRING_UNITORDERITARG_SMART="右键点击" + +// Trigger Immediate / Untargeted Unit Orders +// Common +WESTRING_UNITORDERNOTARG_STOP="停止" +WESTRING_UNITORDERNOTARG_HOLDPOSITION="保持警戒位置" +WESTRING_UNITORDERNOTARG_AUTOHARVESTGOLD="自动采集黄金" +WESTRING_UNITORDERNOTARG_AUTOHARVESTLUMBER="自动采集木材" +WESTRING_UNITORDERNOTARG_RETURNRESOURCES="返还资源" +WESTRING_UNITORDERNOTARG_BUILD="打开建造菜单" +WESTRING_UNITORDERNOTARG_LEVELUP="升级 (无效)" +// Human +WESTRING_UNITORDERNOTARG_HUMANBUILD="人族 - 建造菜单" +WESTRING_UNITORDERNOTARG_TOWNBELLON="人族城镇大厅 - 战斗号召" +WESTRING_UNITORDERNOTARG_TOWNBELLOFF="人族城镇大厅 - 返回工作" +WESTRING_UNITORDERNOTARG_MILITIA="人族农民 - 战斗号召" +WESTRING_UNITORDERNOTARG_MILITIAOFF="人族民兵 - 返回工作" +WESTRING_UNITORDERNOTARG_REPAIRON="人族农民 - 激活修理" +WESTRING_UNITORDERNOTARG_REPAIROFF="人族农民 - 关闭修理" +WESTRING_UNITORDERNOTARG_DEFEND="人族步兵 - 激活防御" +WESTRING_UNITORDERNOTARG_UNDEFEND="人族步兵 - 解除防御" +WESTRING_UNITORDERNOTARG_HEALON="人族牧师 - 激活治疗" +WESTRING_UNITORDERNOTARG_HEALOFF="人族牧师 - 关闭治疗" +WESTRING_UNITORDERNOTARG_INNERFIREON="人族牧师 - 激活心灵之火" +WESTRING_UNITORDERNOTARG_INNERFIREOFF="人族牧师 - 关闭心灵之火" +WESTRING_UNITORDERNOTARG_SLOWON="人族女巫 - 激活减速" +WESTRING_UNITORDERNOTARG_SLOWOFF="人族女巫 - 关闭减速" +WESTRING_UNITORDERNOTARG_SPELLSTEALON="人族破法者 - 激活魔法盗取" +WESTRING_UNITORDERNOTARG_SPELLSTEALOFF="人族破法者 - 关闭魔法盗取" +WESTRING_UNITORDERNOTARG_WATERELEMENTAL="人族大法师 - 召唤水元素" +WESTRING_UNITORDERNOTARG_PHOENIX="人族血魔法师 - 火凤凰" +WESTRING_UNITORDERNOTARG_THUNDERCLAP="人族山丘之王 - 雷霆一击" +WESTRING_UNITORDERNOTARG_AVATAR="人族山丘之王 - 激活天神下凡" +WESTRING_UNITORDERNOTARG_DIVINESHIELD="人族圣骑士 - 激活神圣护甲" +WESTRING_UNITORDERNOTARG_UNDIVINESHIELD="人族圣骑士 - 解除神圣护甲" +WESTRING_UNITORDERNOTARG_RESURRECTION="人族圣骑士 - 复活" +// Orc +WESTRING_UNITORDERNOTARG_ORCBUILD="兽族 - 建造菜单" +WESTRING_UNITORDERNOTARG_BATTLESTATIONS="兽族地洞 - 战斗警备" +WESTRING_UNITORDERNOTARG_STANDDOWN="兽族地洞 - 卸载苦工" +WESTRING_UNITORDERNOTARG_REPAIROON="兽族苦工 - 激活修理" +WESTRING_UNITORDERNOTARG_REPAIROOFF="兽族苦工 - 关闭修理" +WESTRING_UNITORDERNOTARG_BERSERK="兽族巨魔狂暴者 - 狂战士" +WESTRING_UNITORDERNOTARG_BLOODLUSTON="兽族萨满祭司 - 激活嗜血术" +WESTRING_UNITORDERNOTARG_BLOODLUSTOFF="兽族萨满祭司 - 关闭嗜血术" +WESTRING_UNITORDERNOTARG_ANCESTRALSPIRIT="兽族灵魂行者 - 先祖幽灵" +WESTRING_UNITORDERNOTARG_ETHEREALFORM="兽族灵魂行者 - 虚无形态" +WESTRING_UNITORDERNOTARG_CORPOREALFORM="兽族灵魂行者 -灵肉形态" +WESTRING_UNITORDERNOTARG_WINDWALK="兽族剑圣 - 疾风步" +WESTRING_UNITORDERNOTARG_MIRRORIMAGE="兽族剑圣 - 镜像" +WESTRING_UNITORDERNOTARG_BLADESTORM="兽族剑圣 - 剑刃风暴" +WESTRING_UNITORDERNOTARG_FERALSPIRIT="兽族先知 - 野兽幽魂" +WESTRING_UNITORDERNOTARG_VOODOO="兽族暗影猎手 - 巫毒" +WESTRING_UNITORDERNOTARG_WARSTOMP="兽族牛头人酋长 - 战争践踏" +// Night Elf +WESTRING_UNITORDERNOTARG_NIGHTELFBUILD="暗夜精灵族 - 建造菜单" +WESTRING_UNITORDERNOTARG_UNROOT="暗夜精灵族的古树 - 拔根" +WESTRING_UNITORDERNOTARG_AUTOENTANGLE="暗夜精灵族生命之树 - 缠绕附近的金矿" +WESTRING_UNITORDERNOTARG_AUTOENTANGLEINSTANT="暗夜精灵族生命之树 - 缠绕附近的金矿(立即)" +WESTRING_UNITORDERNOTARG_REPLENISHON="暗夜精灵族月亮井 - 激活魔法和生命补充" +WESTRING_UNITORDERNOTARG_REPLENISHOFF="暗夜精灵族月亮井 - 关闭魔法和生命补充" +WESTRING_UNITORDERNOTARG_HIDE="暗夜精灵族哨兵 - 影遁(夜晚)" +WESTRING_UNITORDERNOTARG_RENEWON="暗夜精灵族小精灵 - 激活修理" +WESTRING_UNITORDERNOTARG_RENEWOFF="暗夜精灵族小精灵 - 关闭修理" +WESTRING_UNITORDERNOTARG_COUPLEINSTANT1="暗夜精灵族弓箭手 - 骑乘角鹰兽" +WESTRING_UNITORDERNOTARG_COUPLEINSTANT2="暗夜精灵族角鹰兽 - 搭载弓箭手" +WESTRING_UNITORDERNOTARG_DECOUPLE="暗夜精灵族角鹰兽骑士 - 卸载弓箭手" +WESTRING_UNITORDERNOTARG_AUTODISPELON="暗夜精灵族树妖 - 激活驱逐技能" +WESTRING_UNITORDERNOTARG_AUTODISPELOFF="暗夜精灵族树妖 - 关闭驱逐技能" +WESTRING_UNITORDERNOTARG_FAERIEFIREON="暗夜精灵族猛禽德鲁伊 - 激活精灵之火" +WESTRING_UNITORDERNOTARG_FAERIEFIREOFF="暗夜精灵族猛禽德鲁伊 - 关闭精灵之火" +WESTRING_UNITORDERNOTARG_RAVENFORM="暗夜精灵族猛禽德鲁伊 - 风暴之鸦" +WESTRING_UNITORDERNOTARG_UNRAVENFORM="暗夜精灵族猛禽德鲁伊 - 精灵形态" +WESTRING_UNITORDERNOTARG_ROAR="暗夜精灵族利爪德鲁伊 - 咆哮" +WESTRING_UNITORDERNOTARG_BEARFORM="暗夜精灵族利爪德鲁伊 - 变熊" +WESTRING_UNITORDERNOTARG_UNBEARFORM="暗夜精灵族利爪德鲁伊 - 精灵形态" +WESTRING_UNITORDERNOTARG_TAUNT="暗夜精灵族山岭巨人 - 嘲讽" +WESTRING_UNITORDERNOTARG_MANAFLAREON="暗夜精灵族精灵龙 - 魔力之焰" +WESTRING_UNITORDERNOTARG_MANAFLAREOFF="暗夜精灵族精灵龙 - 停止魔力之焰" +WESTRING_UNITORDERNOTARG_PHASESHIFT="暗夜精灵族精灵龙 - 相位移动" +WESTRING_UNITORDERNOTARG_PHASESHIFTON="暗夜精灵族精灵龙 - 激活相位移动" +WESTRING_UNITORDERNOTARG_PHASESHIFTOFF="暗夜精灵族精灵龙 - 关闭相位移动" +WESTRING_UNITORDERNOTARG_VENGEANCEINSTANT="暗夜精灵族复仇天神 - 复仇之魂" +WESTRING_UNITORDERNOTARG_VENGEANCEON="暗夜精灵族复仇天神 - 激活复仇之魂" +WESTRING_UNITORDERNOTARG_VENGEANCEOFF="暗夜精灵族复仇天神 - 关闭复仇之魂" +WESTRING_UNITORDERNOTARG_IMMOLATION="暗夜精灵族恶魔猎手 - 激活献祭" +WESTRING_UNITORDERNOTARG_UNIMMOLATION="暗夜精灵族恶魔猎手 - 解除献祭" +WESTRING_UNITORDERNOTARG_METAMORPHOSIS="暗夜精灵族恶魔猎手 - 恶魔变身" +WESTRING_UNITORDERNOTARG_TRANQUILITY="暗夜精灵族丛林守护者 - 宁静" +WESTRING_UNITORDERNOTARG_SEARINGARROWS="暗夜精灵族月之女祭司 - 激活灼热之箭" +WESTRING_UNITORDERNOTARG_UNSEARINGARROWS="暗夜精灵族月之女祭司 - 关闭灼热之箭" +WESTRING_UNITORDERNOTARG_SCOUT="暗夜精灵族月之女祭司 - 侦察" +WESTRING_UNITORDERNOTARG_STARFALL="暗夜精灵族月之女祭司 - 群星坠落" +WESTRING_UNITORDERNOTARG_FANOFKNIVES="暗夜精灵族守望者 - 刀阵旋风" +WESTRING_UNITORDERNOTARG_SPIRITOFVENGEANCE="暗夜精灵族守望者 - 复仇天神" +// Undead +WESTRING_UNITORDERNOTARG_UNDEADBUILD="不死族 - 建造菜单" +WESTRING_UNITORDERNOTARG_RESTOREON="不死族侍僧 - 激活修理" +WESTRING_UNITORDERNOTARG_RESTOREOFF="不死族侍僧 - 关闭修理" +WESTRING_UNITORDERNOTARG_CANNIBALIZE="不死族食尸鬼 - 吞食尸体" +WESTRING_UNITORDERNOTARG_WEBON="不死族穴居恶魔 - 激活蛛网" +WESTRING_UNITORDERNOTARG_WEBOFF="不死族穴居恶魔 - 关闭蛛网" +WESTRING_UNITORDERNOTARG_BURROW="不死族穴居恶魔 - 钻地" +WESTRING_UNITORDERNOTARG_UNBURROW="不死族穴居恶魔 - 取消钻地" +WESTRING_UNITORDERNOTARG_LOADCORPSE="不死族绞肉车 - 拾取尸体" +WESTRING_UNITORDERNOTARG_UNLOADALLCORPSES="不死族绞肉车 - 丢弃所有尸体" +WESTRING_UNITORDERNOTARG_STONEFORM="不死族石像鬼 - 石像形态" +WESTRING_UNITORDERNOTARG_UNSTONEFORM="不死族石像鬼 - 取消石像形态" +WESTRING_UNITORDERNOTARG_RAISEDEAD="不死族巫师 - 召唤骷髅" +WESTRING_UNITORDERNOTARG_RAISEDEADON="不死族巫师 - 激活召唤骷髅" +WESTRING_UNITORDERNOTARG_RAISEDEADOFF="不死族巫师 - 关闭召唤骷髅" +WESTRING_UNITORDERNOTARG_CURSEON="不死族女妖 - 激活诅咒" +WESTRING_UNITORDERNOTARG_CURSEOFF="不死族女妖 - 解除诅咒" +WESTRING_UNITORDERNOTARG_FLAMINGATTACKON="不死族破坏者 - 激活毁灭之球" +WESTRING_UNITORDERNOTARG_FLAMINGATTACKOFF="不死族破坏者 - 关闭毁灭之球" +WESTRING_UNITORDERNOTARG_SPHINXFORM="不死族十胜石雕像 - 破坏者形态" +WESTRING_UNITORDERNOTARG_REPLENISHLIFE="不死族十胜石雕像 - 枯萎精髓" +WESTRING_UNITORDERNOTARG_REPLENISHLIFEON="不死族十胜石雕像 - 激活枯萎精髓" +WESTRING_UNITORDERNOTARG_REPLENISHLIFEOFF="不死族十胜石雕像 - 关闭枯萎精髓" +WESTRING_UNITORDERNOTARG_REPLENISHMANA="不死族十胜石雕像 - 灵魂触摸" +WESTRING_UNITORDERNOTARG_REPLENISHMANAON="不死族十胜石雕像 - 激活灵魂触摸" +WESTRING_UNITORDERNOTARG_REPLENISHMANAOFF="不死族十胜石雕像 - 关闭灵魂触摸" +WESTRING_UNITORDERNOTARG_CARRIONSCARABSON="不死族地穴领主 - 激活腐尸甲虫" +WESTRING_UNITORDERNOTARG_CARRIONSCARABSOFF="不死族地穴领主 - 关闭腐尸甲虫" +WESTRING_UNITORDERNOTARG_CARRIONSCARABS="不死地穴领主 - 腐臭蜂群" +WESTRING_UNITORDERNOTARG_LOCUSTSWARM="不死族地穴领主 - 蝗虫群" +WESTRING_UNITORDERNOTARG_ANIMATEDEAD="不死族死亡骑士 - 操纵死尸" +WESTRING_UNITORDERNOTARG_FROSTARMORON="不死族巫妖 - 激活霜冻护甲" +WESTRING_UNITORDERNOTARG_FROSTARMOROFF="不死族巫妖 - 关闭霜冻护甲" +// Neutral +WESTRING_UNITORDERNOTARG_NAGABUILD="娜迦 - 建造菜单" +WESTRING_UNITORDERNOTARG_CREEPANIMATEDEAD="中立 - 操纵死尸" +WESTRING_UNITORDERNOTARG_CREEPHEALON="中立 - 激活治疗" +WESTRING_UNITORDERNOTARG_CREEPHEALOFF="中立 - 关闭治疗" +WESTRING_UNITORDERNOTARG_REVENGE="中立 - 复仇" +WESTRING_UNITORDERNOTARG_CREEPTHUNDERCLAP="中立 - 雷霆一击" +WESTRING_UNITORDERNOTARG_WATERYMINION="中立 - 召唤水奴" +WESTRING_UNITORDERNOTARG_SELFDESTRUCTON="中立 - 激活自爆" +WESTRING_UNITORDERNOTARG_SELFDESTRUCTOFF="中立 - 关闭自爆" +WESTRING_UNITORDERNOTARG_SUMMONGRIZZLY="中立兽王 - 召唤熊" +WESTRING_UNITORDERNOTARG_SUMMONQUILLBEAST="中立兽王 - 召唤豪猪" +WESTRING_UNITORDERNOTARG_SUMMONWAREAGLE="中立兽王 - 召唤战鹰" +WESTRING_UNITORDERNOTARG_BLACKARROWON="中立黑暗游侠 - 激活黑暗之箭" +WESTRING_UNITORDERNOTARG_BLACKARROWOFF="中立黑暗游侠 - 关闭黑暗之箭" +WESTRING_UNITORDERNOTARG_COLDARROWON="中立娜迦海巫 - 激活霜冻之箭" +WESTRING_UNITORDERNOTARG_COLDARROWOFF="中立娜迦海巫 - 关闭霜冻之箭" +WESTRING_UNITORDERNOTARG_MANASHIELDON="中立 娜迦海巫 - 激活魔法盾" +WESTRING_UNITORDERNOTARG_MANASHIELDOFF="中立 娜迦海巫 - 关闭魔法盾" +WESTRING_UNITORDERNOTARG_ELEMENTALFURY="中立 熊猫酒仙 - 火土风暴" +WESTRING_UNITORDERNOTARG_HOWLOFTERROR="中立深渊魔王 - 恐怖嚎叫" +WESTRING_UNITORDERNOTARG_POISONARROWON="中立 - 激活毒箭" +WESTRING_UNITORDERNOTARG_POISONARROWOFF="中立- 关闭毒箭" +WESTRING_UNITORDERNOTARG_CHEMICALRAGE="中立炼金术士 - 化学风暴" +WESTRING_UNITORDERNOTARG_ROBOGOBLIN="中立修补匠 - 开启机器人形态" +WESTRING_UNITORDERNOTARG_UNROBOGOBLIN="中立修补匠 - 取消机器人形态" +WESTRING_UNITORDERNOTARG_LAVAMONSTER="中立火焰领主 - 召唤炎魔" +// Special +WESTRING_UNITORDERNOTARG_CHANNEL="特殊 - 通魔" +WESTRING_UNITORDERNOTARG_MEDIVHRAVENFORM="特殊 麦迪文 - 乌鸦形态" +WESTRING_UNITORDERNOTARG_MEDIVHUNRAVENFORM="特殊 麦迪文 - 人类形态" +WESTRING_UNITORDERNOTARG_REXXARBATTLEROAR="特殊 雷克萨 - 战争咆哮" +WESTRING_UNITORDERNOTARG_COLDARROWS="特殊 追风之西尔瓦娜斯 - 激活冰冻冷箭" +WESTRING_UNITORDERNOTARG_UNCOLDARROWS="特殊 追风之西尔瓦娜斯 - 关闭冰冻冷箭" + +// Trigger Hero Skills +// Human Archmage +WESTRING_HEROSKILL_BLIZZARD="人族大法师 - 暴风雪" +WESTRING_HEROSKILL_WATERELEMENTAL="人族大法师 - 召唤水元素" +WESTRING_HEROSKILL_BRILLIANCEAURA="人族大法师 - 辉煌光环" +WESTRING_HEROSKILL_MASSTELEPORT="人族大法师 - 群体传送" +// Human Blood Mage +WESTRING_HEROSKILL_FLAMESTRIKE="人族血魔法师 - 烈焰风暴" +WESTRING_HEROSKILL_BANISH="人族血魔法师 - 虚无" +WESTRING_HEROSKILL_SIPHONMANA="人族血魔法师 - 魔法吸吮" +WESTRING_HEROSKILL_PHOENIX="人族血魔法师 - 火凤凰" +// Human Mountain King +WESTRING_HEROSKILL_STORMBOLT="人族山丘之王 - 风暴之锤" +WESTRING_HEROSKILL_THUNDERCLAP="人族山丘之王 - 雷霆一击" +WESTRING_HEROSKILL_BASH="人族山丘之王 - 重击" +WESTRING_HEROSKILL_AVATAR="人族山丘之王 - 天神下凡" +// Human Paladin +WESTRING_HEROSKILL_DIVINESHIELD="人族圣骑士 - 神圣护甲" +WESTRING_HEROSKILL_HOLYBOLT="人族圣骑士 - 神圣之光" +WESTRING_HEROSKILL_DEVOTIONAURA="人族圣骑士 - 专注光环" +WESTRING_HEROSKILL_RESURRECTION="人族圣骑士 - 复活" +// Orc Blademaster +WESTRING_HEROSKILL_WINDWALK="兽族剑圣 - 疾风步" +WESTRING_HEROSKILL_MIRRORIMAGE="兽族剑圣 - 镜像" +WESTRING_HEROSKILL_CRITICALSTRIKE="兽族剑圣 - 致命一击" +WESTRING_HEROSKILL_WHIRLWIND="兽族剑圣 - 剑刃风暴" +// Orc Far Seer +WESTRING_HEROSKILL_CHAINLIGHTNING="兽族先知 - 闪电链" +WESTRING_HEROSKILL_FARSIGHT="兽族先知 - 远视" +WESTRING_HEROSKILL_SPIRITWOLF="兽族先知 - 野兽幽魂" +WESTRING_HEROSKILL_EARTHQUAKE="兽族先知 - 地震" +// Orc Shadow Hunter +WESTRING_HEROSKILL_HEALINGWAVE="兽族暗影猎手 - 医疗波" +WESTRING_HEROSKILL_HEX="兽族暗影猎手 - 妖术" +WESTRING_HEROSKILL_SERPENTWARD="兽族暗影猎手 - 毒蛇守卫" +WESTRING_HEROSKILL_VOODOO="兽族暗影猎手 - 巫毒" +// Orc Tauren Chieftain +WESTRING_HEROSKILL_SHOCKWAVE="兽族牛头人酋长 - 震荡波" +WESTRING_HEROSKILL_WARSTOMP="兽族牛头人酋长 - 战争践踏" +WESTRING_HEROSKILL_ENDURANCEAURA="兽族牛头人酋长 - 耐久光环" +WESTRING_HEROSKILL_REINCARNATION="兽族牛头人酋长 - 重生" +// Undead Crypt Lord +WESTRING_HEROSKILL_IMPALE="不死族地穴领主 - 穿刺" +WESTRING_HEROSKILL_THORNYSHIELD="不死族地穴领主 - 尖刺甲壳" +WESTRING_HEROSKILL_CARRIONSCARABS="不死族地穴领主 - 腐尸甲虫" +WESTRING_HEROSKILL_LOCUSTSWARM="不死族地穴领主 - 蝗虫群" +// Undead Death Knight +WESTRING_HEROSKILL_DEATHCOIL="不死族死亡骑士 - 死亡缠绕" +WESTRING_HEROSKILL_DEATHPACT="不死族死亡骑士 - 死亡契约" +WESTRING_HEROSKILL_UNHOLYAURA="不死族死亡骑士 - 邪恶光环" +WESTRING_HEROSKILL_ANIMATEDEAD="不死族死亡骑士 - 操纵死尸" +// Undead Dreadlord +WESTRING_HEROSKILL_CARRIONSWARM="不死族恐惧魔王 - 腐臭蜂群" +WESTRING_HEROSKILL_SLEEP="不死族恐惧魔王 - 睡眠" +WESTRING_HEROSKILL_VAMPIRICAURA="不死族恐惧魔王 - 吸血光环" +WESTRING_HEROSKILL_DARKSUMMONING="不死族恐惧魔王 - 地狱火" +// Undead Lich +WESTRING_HEROSKILL_FROSTNOVA="不死族巫妖 - 霜冻新星" +WESTRING_HEROSKILL_FROSTARMOR="不死族巫妖 - 霜冻护甲" +WESTRING_HEROSKILL_DARKRITUAL="不死族巫妖 - 黑暗仪式" +WESTRING_HEROSKILL_DEATHANDDECAY="不死族巫妖 - 死亡凋零" +// Night Elf Demon Hunter +WESTRING_HEROSKILL_MANABURN="暗夜精灵族恶魔猎手 - 法力燃烧" +WESTRING_HEROSKILL_IMMOLATION="暗夜精灵族恶魔猎手 - 献祭" +WESTRING_HEROSKILL_EVASION="暗夜精灵族恶魔猎手 - 闪避" +WESTRING_HEROSKILL_METAMORPHOSIS="暗夜精灵族恶魔猎手 - 变身" +// Night Elf Keeper of the Grove +WESTRING_HEROSKILL_ENTANGLINGROOTS="暗夜精灵族丛林守护者 - 纠缠根须" +WESTRING_HEROSKILL_FORCEOFNATURE="暗夜精灵族丛林守护者 - 自然之力" +WESTRING_HEROSKILL_THORNSAURA="暗夜精灵族丛林守护者 - 荆棘光环" +WESTRING_HEROSKILL_TRANQUILITY="暗夜精灵族丛林守护者 - 宁静" +// Night Elf Priestess of the Moon +WESTRING_HEROSKILL_SCOUT="暗夜精灵族月之女祭司 - 侦察" +WESTRING_HEROSKILL_SEARINGARROWS="暗夜精灵族月之女祭司 - 灼热之箭" +WESTRING_HEROSKILL_TRUESHOTAURA="暗夜精灵族月之女祭司 - 强击光环" +WESTRING_HEROSKILL_STARFALL="暗夜精灵族月之女祭司 - 群星坠落" +// Night Elf Warden +WESTRING_HEROSKILL_FANOFKNIVES="暗夜精灵族守望者 - 刀阵旋风" +WESTRING_HEROSKILL_BLINK="暗夜精灵族守望者 - 闪烁" +WESTRING_HEROSKILL_SHADOWTOUCH="暗夜精灵族守望者 - 暗影突袭" +WESTRING_HEROSKILL_SPIRITOFVENGEANCE="暗夜精灵族守望者 - 复仇之魂" +// Neutral Beast Master +WESTRING_HEROSKILL_GRIZZLY="中立野兽之王 - 召唤熊" +WESTRING_HEROSKILL_QUILLBEAST="中立野兽之王 - 召唤豪猪" +WESTRING_HEROSKILL_WAREAGLE="中立野兽之王 - 召唤战鹰" +WESTRING_HEROSKILL_STAMPEDE="中立的野兽之王 - 惊吓" +// Neutral Dark Ranger +WESTRING_HEROSKILL_SILENCE="中立 黑暗游侠 - 沉默" +WESTRING_HEROSKILL_BLACKARROW="中立黑暗游侠 - 黑暗之箭" +WESTRING_HEROSKILL_LIFEDRAIN="中立黑暗游侠 - 生命汲取" +WESTRING_HEROSKILL_CHARM="中立黑暗游侠 - 符咒" +// Neutral Naga Sea Witch +WESTRING_HEROSKILL_FORKEDLIGHTNING="中立娜迦海巫 - 叉状闪电" +WESTRING_HEROSKILL_COLDARROW="中立娜迦海巫 - 霜冻之箭" +WESTRING_HEROSKILL_MANASHIELD="中立娜迦海巫 - 魔法盾" +WESTRING_HEROSKILL_TORNADO="中立娜迦海巫 - 龙卷风" +// Neutral Pandaren Brewmaster +WESTRING_HEROSKILL_BREATHOFFIRE="中立熊猫酒仙 - 火焰喷吐" +WESTRING_HEROSKILL_STRONGDRINK="中立熊猫酒仙 - 醉酒云雾" +WESTRING_HEROSKILL_DRUNKENBRAWLER="中立熊猫酒仙 - 醉拳" +WESTRING_HEROSKILL_ELEMENTALFURY="中立熊猫酒仙 - 火土风暴" +// Neutral Pit Lord +WESTRING_HEROSKILL_RAINOFFIRE="中立深渊魔王 - 火焰雨" +WESTRING_HEROSKILL_HOWLOFTERROR="中立深渊魔王 - 恐怖嚎叫" +WESTRING_HEROSKILL_CLEAVINGATTACK="中立深渊魔王 - 分裂攻击" +WESTRING_HEROSKILL_DOOM="中立深渊魔王 - 末日审判" +// Neutral Alchemist +WESTRING_HEROSKILL_ACIDBOMB="中立炼金术士 - 酸性炸弹" +WESTRING_HEROSKILL_CHEMICALRAGE="中立炼金术士 - 化学风暴" +WESTRING_HEROSKILL_HEALINGSPRAY="中立炼金术士 - 医疗气雾" +WESTRING_HEROSKILL_TRANSMUTE="中立炼金术士 - 点金术" +// Neutral Tinker +WESTRING_HEROSKILL_ENGINEERINGUPGRADE="中立修补匠 - 工程升级" +WESTRING_HEROSKILL_CLUSTERROCKETS="中立修补匠 - 火箭群" +WESTRING_HEROSKILL_SUMMONFACTORY="中立修补匠 - 口袋工厂" +WESTRING_HEROSKILL_ROBOGOBLIN="中立修补匠 - 机器人地精" +// Neutral Fire Lord +WESTRING_HEROSKILL_INCINERATE="中立火焰领主 - 燃灰" +WESTRING_HEROSKILL_SOULBURN="中立火焰领主 - 灵魂燃烧" +WESTRING_HEROSKILL_LAVAMONSTER="中立火焰领主 - 召唤炎魔" +WESTRING_HEROSKILL_VOLCANO="中立火焰领主 - 火山爆发" +// Special Akama +WESTRING_HEROSKILL_AKAMA_CHAINLIGHTNING="战役阿卡玛 - 闪电链" +WESTRING_HEROSKILL_AKAMA_FERALSPIRIT="战役阿卡玛 - 野兽幽魂" +WESTRING_HEROSKILL_AKAMA_SHADOWTOUCH="战役阿卡玛 - 暗影突袭" +WESTRING_HEROSKILL_AKAMA_REINCARNATION="战役阿卡玛 - 重生" +// Special Archimonde +WESTRING_HEROSKILL_DARKPORTAL="战役阿克蒙德 - 黑暗之门" +WESTRING_HEROSKILL_RAINOFCHAOS="战役阿克蒙德 - 混乱之雨" +WESTRING_HEROSKILL_ARCHIBASH="战役阿克蒙德 - 重击" +WESTRING_HEROSKILL_FINGEROFDEATH="战役阿克蒙德 - 死亡之指" +// Special Balnazzar +WESTRING_HEROSKILL_BALNA_SLEEP="战役巴那泽尔 - 睡眠" +WESTRING_HEROSKILL_BALNA_VAMPIRICAURA="战役巴那泽尔 - 吸血光环" +WESTRING_HEROSKILL_BALNA_RAINOFCHAOS="战役巴那泽尔 - 混乱之雨" +WESTRING_HEROSKILL_BALNA_FINGEROFPAIN="战役巴那泽尔 - 痛苦之指" +WESTRING_HEROSKILL_BALNA_EARTHQUAKE="战役巴那泽尔 - 地震" +// Special Chen +WESTRING_HEROSKILL_CHEN_BREATHOFFIRE="战役 陈 - 火焰喷吐" +WESTRING_HEROSKILL_CHEN_STRONGDRINK="战役 陈 - 醉酒云雾" +WESTRING_HEROSKILL_CHEN_DRUNKENBRAWLER="战役 陈 - 醉拳" +WESTRING_HEROSKILL_CHEN_ELEMENTALFURY="战役 陈 - 火土风暴" +WESTRING_HEROSKILL_CHEN_ATTRIBUTEBONUS="战役 陈 - 属性附加" +// Special Detheroc +WESTRING_HEROSKILL_DETHE_SLEEP="战役德赛洛克 - 睡眠" +WESTRING_HEROSKILL_DETHE_SHADOWTOUCH="战役德赛洛克 - 暗影突袭" +WESTRING_HEROSKILL_DETHE_CARRIONSWARM="战役德赛洛克 - 腐臭蜂群" +WESTRING_HEROSKILL_DETHE_DEATHANDDECAY="战役德赛洛克 - 死亡凋零" +// Special Garithos +WESTRING_HEROSKILL_GARIT_SHOCKWAVE="战役加理瑟斯 - 震荡波" +WESTRING_HEROSKILL_GARIT_HOLYLIGHT="战役加理瑟斯 - 神圣之光" +WESTRING_HEROSKILL_GARIT_DEVOTIONAURA="战役加理瑟斯 - 专注光环" +WESTRING_HEROSKILL_GARIT_AVATAR="战役加理瑟斯 - 天神下凡" +// Special Illidan +WESTRING_HEROSKILL_ILLIMORPHOSIS="战役尤迪安 - 变身" +WESTRING_HEROSKILL_EVILILLIMORPHOSIS="战役尤迪安(恶魔) - 变身" +// Special Malganis +WESTRING_HEROSKILL_DARKCONVERSION="战役马哥尼斯 - 黑暗转换" +WESTRING_HEROSKILL_SOULPRESERVATION="战役马哥尼斯 - 灵魂保存" +// Special Malganis +WESTRING_HEROSKILL_MANAROTHREINCARNATION="战役马纳洛斯 - 重生" +// Special Rexxar +WESTRING_HEROSKILL_REXXAR_GRIZZLY="战役雷克萨 - 召唤熊" +WESTRING_HEROSKILL_REXXAR_QUILLBEAST="战役雷克萨 - 召唤豪猪" +WESTRING_HEROSKILL_REXXAR_STORMBOLT="战役雷克萨 - 风暴之锤" +WESTRING_HEROSKILL_REXXAR_STAMPEDE="特战役雷克萨 - 惊吓" +WESTRING_HEROSKILL_REXXAR_ATTRIBUTEBONUS="战役雷克萨 - 属性附加" +// Special Rokhan +WESTRING_HEROSKILL_ROKHAN_HEALINGWAVE="战役洛克汗 - 医疗波" +WESTRING_HEROSKILL_ROKHAN_HEX="战役洛克汗 - 妖术" +WESTRING_HEROSKILL_ROKHAN_SERPENTWARD="战役洛克汗 - 毒蛇守卫" +WESTRING_HEROSKILL_ROKHAN_VOODOOSPIRITS="战役洛克汗 - 巫毒幽魂" +WESTRING_HEROSKILL_ROKHAN_ATTRIBUTEBONUS="战役洛克汗 - 属性附加" +// Special Sylvanas Windrunner +WESTRING_HEROSKILL_COLDARROWS="战役追风之西尔瓦娜斯 - 冰冻冷箭" +// Special Tichondrius +WESTRING_HEROSKILL_TICHONDRIUSINFERNO="战役提克迪奥斯 - 地狱火" +// Special Varimathras +WESTRING_HEROSKILL_VARIM_SLEEP="战役法理玛瑟斯 -睡眠" +WESTRING_HEROSKILL_VARIM_VAMPIRICAURA="战役法理玛瑟斯 - 吸血光环" +WESTRING_HEROSKILL_VARIM_RAINOFFIRE="战役法理玛瑟斯 - 火焰雨" +WESTRING_HEROSKILL_VARIM_DOOM="战役法理玛瑟斯 - 末日审判" +// Special Warlock +WESTRING_HEROSKILL_INFERNAL="战役巫师 - 召唤地狱火" +// Special Miscellaneous +WESTRING_HEROSKILL_DARKCONVERSIONFAST="特殊 - 黑暗转换(快速)" +WESTRING_HEROSKILL_DARKSUMMONINGOLD="特殊 - 黑暗召唤" + +// Weather Effects +WESTRING_WEATHER_ASHENVALEHEAVYRAIN="白杨谷大雨" +WESTRING_WEATHER_ASHENVALELIGHTRAIN="白杨谷小雨" +WESTRING_WEATHER_DALARANSHIELD="达拉然之盾" +WESTRING_WEATHER_DUNGEONHEAVYBLUEFOG="地下城蓝雾(厚)" +WESTRING_WEATHER_DUNGEONBLUEFOG="地下城蓝雾(薄)" +WESTRING_WEATHER_DUNGEONHEAVYGREENFOG="地下城绿雾(厚)" +WESTRING_WEATHER_DUNGEONGREENFOG="地下城绿雾(薄)" +WESTRING_WEATHER_DUNGEONHEAVYREDFOG="地下城红雾(厚)" +WESTRING_WEATHER_DUNGEONREDFOG="地下城红雾(薄)" +WESTRING_WEATHER_DUNGEONHEAVYWHITEFOG="地下城白雾(厚)" +WESTRING_WEATHER_DUNGEONWHITEFOG="地下城白雾(薄)" +WESTRING_WEATHER_LORDAERONHEAVYRAIN="洛丹伦大雨" +WESTRING_WEATHER_LORDAERONLIGHTRAIN="洛丹伦小雨" +WESTRING_WEATHER_NORTHRENDBLIZZARD="诺森德的暴风雪" +WESTRING_WEATHER_NORTHRENDHEAVYSNOW="诺森德大雪" +WESTRING_WEATHER_NORTHRENDLIGHTSNOW="诺森德小雪" +//#LINENOBETA +WESTRING_WEATHER_OUTLANDWIND="边缘之地大风" +//#LINENOBETA +WESTRING_WEATHER_OUTLANDWINDLIGHT="边缘之地的风" +WESTRING_WEATHER_RAYSOFLIGHT="日光" +WESTRING_WEATHER_RAYSOFMOONLIGHT="月光" +WESTRING_WEATHER_WIND="大风" + +// Object Editor categories +WESTRING_OE_CAT_ABILITIES=技能 +WESTRING_OE_CAT_ART=显示 +WESTRING_OE_CAT_COMBAT=战斗 +WESTRING_OE_CAT_DATA=数据 +WESTRING_OE_CAT_EDITOR=编辑器 +WESTRING_OE_CAT_MOVEMENT=移动 +WESTRING_OE_CAT_PATHING=路径 +WESTRING_OE_CAT_SOUND=声音 +WESTRING_OE_CAT_STATS=状态 +WESTRING_OE_CAT_TECHTREE=科技树 +WESTRING_OE_CAT_TEXT=文本 + +// Object Editor Unit fields +WESTRING_UEVAL_UABI=普通 +WESTRING_UEVAL_UDAA=默认主动技能 +WESTRING_UEVAL_UHAB=英雄 +WESTRING_UEVAL_UMDL=模型文件 +WESTRING_UEVAL_UVER=模型文件 - 版本 +WESTRING_UEVAL_USCA=模型缩放 +WESTRING_UEVAL_UCLR=颜色值(红) +WESTRING_UEVAL_UCLG=颜色值(绿) +WESTRING_UEVAL_UCLB=颜色值(蓝) +WESTRING_UEVAL_USSC=选择缩放 +WESTRING_UEVAL_ULPX=射弹偏移 - X +WESTRING_UEVAL_ULPX_HINT="单位攻击时发射投射物的X轴偏移." +WESTRING_UEVAL_ULPY=射弹偏移 - Y +WESTRING_UEVAL_ULPY_HINT="单位攻击时发射投射物的Y轴偏移." +WESTRING_UEVAL_ULPZ=射弹偏移 - Z +WESTRING_UEVAL_ULPZ_HINT="单位攻击时发射投射物的Z轴偏移." +WESTRING_UEVAL_ULSZ=射弹偏移 - Z (深水) +WESTRING_UEVAL_ULSZ_HINT=在深水区单位攻击时发射投射物的Z轴偏移. +WESTRING_UEVAL_UIMZ=射弹碰撞偏移 - Z +WESTRING_UEVAL_UIMZ_HINT=单位被攻击时投射物碰撞的Z轴偏移. +WESTRING_UEVAL_UISZ=射弹碰撞偏移 - Z (深水) +WESTRING_UEVAL_UISZ_HINT=在深水区单位被攻击时投射物碰撞的Z轴偏移. +WESTRING_UEVAL_UUBS=建筑地面纹理 +WESTRING_UEVAL_USHU=阴影图像(单位) +WESTRING_UEVAL_USHU_HINT=单位形态时的阴影形状. +WESTRING_UEVAL_USHB=阴影图像(建筑) +WESTRING_UEVAL_USHB_HINT=建筑形态时的阴影形状. +WESTRING_UEVAL_UICO=图标 - 游戏界面 +WESTRING_UEVAL_UICO_HINT=游戏中使用的图标. +WESTRING_UEVAL_USSI=图标 - 计分屏 +WESTRING_UEVAL_USSI_HINT="游戏结束计分屏显示的图标,注意该类图标是很小的." +WESTRING_UEVAL_UANI=要求动画名 +WESTRING_UEVAL_UANI_HINT="如为恶魔猎手添加alternate就会显示恶魔状态,为人类农民添加gold会显示背负黄金形态." +WESTRING_UEVAL_UAAP=要求动画名 - 附加动画 +WESTRING_UEVAL_UAAP_HINT="为附加在单位身上的效果动画添加动画名.一般为medium和large,影响如反魔法外壳的大小." +WESTRING_UEVAL_UALP=要求附加动画链接名 +WESTRING_UEVAL_UBPR=要求骨骼名 +WESTRING_UEVAL_UCUA=魔法升级图标 +WESTRING_UEVAL_UCUA_HINT="如果该单位有魔法科技升级(如各种法师),该项为左边状态栏中显示的图标." +WESTRING_UEVAL_UBPX=按钮位置(X) +WESTRING_UEVAL_UBPX_HINT=训练或雇用时单位按钮的排列横坐标(0,1,2,3). +WESTRING_UEVAL_UBPY=按钮位置(Y) +WESTRING_UEVAL_UBPY_HINT=训练或雇用时单位按钮的排列纵坐标(0,1,2). +WESTRING_UEVAL_UDTM=死亡时间(秒) +WESTRING_UEVAL_UDTM_HINT=从死亡到产生尸体的时间,期间无法被复活,之后该单位才会被判定为死亡. +WESTRING_UEVAL_USHW=阴影图像 - 宽度 +WESTRING_UEVAL_USHH=阴影图像 - 高度 +WESTRING_UEVAL_USHX=阴影图像 - X轴偏移 +WESTRING_UEVAL_USHY=阴影图像 - Y轴偏移 +WESTRING_UEVAL_USHR=深水区有阴影 +WESTRING_UEVAL_USHR_HINT=当阴影落在深水区时是否显示 +WESTRING_UEVAL_USEW=选择圈在水面上 +WESTRING_UEVAL_USEW_HINT="单位在水中时,选择圈在水面或是水底显示" +WESTRING_UEVAL_UTCO=队伍颜色 +WESTRING_UEVAL_UTCO_HINT="只有<队伍颜色-允许自定义>项为True才允许设置单位的队伍颜色." +WESTRING_UEVAL_UTCC=队伍颜色 - 允许自定义 +WESTRING_UEVAL_UPRW=动画 - 转向角度 +WESTRING_UEVAL_UPRW_HINT="单位最大转向角度. 当单位移动转向角度大于该值时将会有一个原地转身的过程. 建议调低转身速度自己测试看看效果" +WESTRING_UEVAL_UORI=动画 - 转向补正 +WESTRING_UEVAL_UORI_HINT="该值决定单位模型转向的速度和幅度,取值0-8,取值越大则速度越慢,幅度越大.不同移动类型的模型转向方式是不一样的,比如飞行单位会进行身体翻转." +WESTRING_UEVAL_UCPT=动画 - 魔法施放点 +WESTRING_UEVAL_UCPT_HINT="从施放法术到法术出手生效需要的时间,即施法前摇,该时间内单位不可做其他动作,但可以按Stop或Hold停止施法,此时魔法将不被发动." +WESTRING_UEVAL_UCBS=动画 - 魔法施放回复 +WESTRING_UEVAL_UCBS_HINT="从法术生效到结束施法所需最小时间,即施法后摇,该时间内作其他动作的话可取消该时间,但'施法结束'事件将不会被触发." +WESTRING_UEVAL_UBLE=动画 - 混合时间(秒) +WESTRING_UEVAL_UBLE_HINT="单位动画图像混合时间. 决定身体部件连接快慢,比如攻击时手臂挥舞速度. 增大该值单位动作僵硬化(如冰龙). 物体编辑器中无效,只能在触发中设置." +WESTRING_UEVAL_ULOS=不可见区域显示单位 +WESTRING_UEVAL_ULOS_HINT="勾选该项则单位可以在不可见区域被显示." +WESTRING_UEVAL_UMXP=X轴最大旋转角度(弧度) +WESTRING_UEVAL_UMXP_HINT="单位在斜坡上行走时模型会发生倾斜,该值即为模型的最大倾斜角度.(绕X轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_UEVAL_UMXR=Y轴最大旋转角度(弧度) +WESTRING_UEVAL_UMXR_HINT="单位在斜坡上行走时模型会发生倾斜,该值即为模型的最大倾斜角度.(绕Y轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_UEVAL_UEPT=高度变化 - 采样点数量 +WESTRING_UEVAL_UEPT_HINT="设置单位在经过突起或下陷的地面时的高度变化时将取采样范围处的几个点的平均值作为单位显示的高度,该值确定采样点的数量." +WESTRING_UEVAL_UERD=高度变化 - 采样范围 +WESTRING_UEVAL_UERD_HINT="设置单位在经过突起或下陷的地面时的高度变化时将取采样范围处的几个点的平均值作为单位显示的高度,该值确定采样的范围." +WESTRING_UEVAL_UFRD=战争迷雾 - 采样范围 +WESTRING_UEVAL_UWAL=动画 - 行走速度 +WESTRING_UEVAL_UWAL_HINT="该值和动画-跑步速度取两者中更接近于实际移动速度者. 该值和单位移动动画共同决定单位移动时的跨步距离,数值越大跨步越大,频率就会变小." +WESTRING_UEVAL_URUN=动画 - 跑步速度 +WESTRING_UEVAL_URUN_HINT="该值和动画-行走速度取两者中更接近于实际移动速度者. 该值和单位移动动画共同决定单位移动时的跨步距离,数值越大跨步越大,频率就会变小." +WESTRING_UEVAL_USLZ=选择圈高度 +WESTRING_UEVAL_UOCC=闭塞高度 +WESTRING_UEVAL_UOCC_HINT="单位站在有闭塞高度的非联盟建筑或可破坏物旁边会有局部视线被阻挡形成锥形,就是所谓闭塞.将该值设为0则不会有此效果." +WESTRING_UEVAL_USCB=缩放投射物 +WESTRING_UEVAL_USCB_HINT=修改模型大小时是否同时缩放攻击或技能的投射物大小. +WESTRING_UEVAL_USPA=特殊效果 +WESTRING_UEVAL_USPA_HINT=单位被炮轰而死时的爆炸效果. +WESTRING_UEVAL_UTAA=目标效果 +WESTRING_UEVAL_UTAA_HINT=弹射攻击时对弹射目标附加的效果. +WESTRING_UEVAL_UAEN=允许攻击模式 +WESTRING_UEVAL_UA1M=攻击 1 - 投射物图像 +WESTRING_UEVAL_UA1Z=攻击 1 - 射弹速率 +WESTRING_UEVAL_UMA1=攻击 1 - 射弹弧度 +WESTRING_UEVAL_UMA1_HINT="射弹弧度=射弹抛物线最大高度/平面位移距离" +WESTRING_UEVAL_UMH1=攻击 1 - 射弹自导允许 +WESTRING_UEVAL_UMH1_HINT=设置箭矢是否自动跟踪目标 +WESTRING_UEVAL_UA1R=攻击 1 - 攻击范围 +WESTRING_UEVAL_UA1R_HINT="就是射程,但受到主动攻击范围的制限." +WESTRING_UEVAL_UA1C=攻击 1 - 攻击间隔 +WESTRING_UEVAL_UA1C_HINT=两次攻击间的间隔,最小值为0.1.游戏中攻速增加上限为原速的5倍(即提高4倍),但不会超过每秒45.46次的上限. +WESTRING_UEVAL_UA1F=攻击 1 - 全伤害范围 +WESTRING_UEVAL_UA1F_HINT=溅射攻击的全伤害范围或是弹射攻击的弹射距离 +WESTRING_UEVAL_UA1H=攻击 1 - 中伤害范围 +WESTRING_UEVAL_UA1H_HINT="仅对溅射攻击有效. 应遵循全伤害范围<中伤害范围<小伤害范围(不包括0),否则会出问题.比如30/20/10的范围实际上会等于只有10的全伤害范围." +WESTRING_UEVAL_UHD1=攻击 1 - 中伤害参数 +WESTRING_UEVAL_UHD1_HINT=仅对溅射攻击有效. 伤害参数可以大于100%,伤害优先权:全伤害>中伤害>小伤害,与伤害值大小无关. +WESTRING_UEVAL_UA1Q=攻击 1 - 小伤害范围 +WESTRING_UEVAL_UQD1=攻击 1 - 小伤害参数 +WESTRING_UEVAL_UA1P=攻击 1 - 范围影响目标 +WESTRING_UEVAL_UA1P_HINT=受溅射或穿透攻击影响的目标允许类型 +WESTRING_UEVAL_UA1T=攻击 1 - 攻击类型 +WESTRING_UEVAL_UA1W=攻击 1 - 武器类型 +WESTRING_UEVAL_UCS1=攻击 1 - 武器声音 +WESTRING_UEVAL_UCS1_HINT=只对近战攻击有效.表示攻击时的声音效果. +WESTRING_UEVAL_UA1G=攻击 1 - 目标允许 +WESTRING_UEVAL_UA1G_HINT="(默认空中 地面 建筑 存活 可攻击 别人 英雄 非英雄 古树 非古树 自爆工兵 非自爆工兵 机械 有机 守卫) " +WESTRING_UEVAL_UTC1=攻击 1 -最大目标数 +WESTRING_UEVAL_UTC1_HINT=仅对弹射攻击有效. +WESTRING_UEVAL_UA1B=攻击 1 - 基础伤害 +WESTRING_UEVAL_UA1B_HINT="随机攻击伤害采用D&D的掷骰子模式.每次攻击力 = 基础伤害 + 伤害骰子数量 * 随机整数(1,伤害骰子面数)" +WESTRING_UEVAL_UA1D=攻击 1 - 伤害骰子数量 +WESTRING_UEVAL_UA1S=攻击 1 - 伤害骰子面数 +WESTRING_UEVAL_UDU1=攻击 1 - 伤害升级奖励 +WESTRING_UEVAL_UDUP_HINT=升级科技-提升一次攻击等级增加的攻击值. +WESTRING_UEVAL_UA2M=攻击 2 - 投射物图像 +WESTRING_UEVAL_UA2Z=攻击 2 - 射弹速率 +WESTRING_UEVAL_UMA2=攻击 2 - 射弹弧度 +WESTRING_UEVAL_UMA2_HINT="射弹弧度=射弹抛物线最大高度/平面位移距离" +WESTRING_UEVAL_UMH2=攻击 2 - 射弹自导允许 +WESTRING_UEVAL_UMH2_HINT=设置箭矢是否自动跟踪目标 +WESTRING_UEVAL_UA2R=攻击 2 - 攻击范围 +WESTRING_UEVAL_UA2R_HINT="就是射程,但受到主动攻击范围的制限." +WESTRING_UEVAL_UA2C=攻击 2 - 攻击间隔 +WESTRING_UEVAL_UA2C_HINT=两次攻击间的间隔,最小值为0.1.游戏中攻速增加上限为原速的5倍(即提高4倍),但不会超过每秒45.46次的上限. +WESTRING_UEVAL_UA2F=攻击 2 - 全伤害范围 +WESTRING_UEVAL_UA2F_HINT=溅射攻击的全伤害范围或是弹射攻击的弹射距离 +WESTRING_UEVAL_UA2H=攻击 2 - 中伤害范围 +WESTRING_UEVAL_UA2H_HINT=仅对溅射攻击有效. 应遵循全伤害范围<中伤害范围<小伤害范围(不包括0),否则会出问题.比如30/20/10的范围实际上会等于只有100的全伤害范围. +WESTRING_UEVAL_UHD2=攻击 2 - 中伤害参数 +WESTRING_UEVAL_UHD2_HINT=仅对溅射攻击有效. 伤害参数可以大于100%,伤害优先权:全伤害>中伤害>小伤害,与伤害值大小无关. +WESTRING_UEVAL_UA2Q=攻击 2 - 小伤害范围 +WESTRING_UEVAL_UQD2=攻击 2 - 小伤害参数 +WESTRING_UEVAL_UA2P=攻击 2 - 范围影响目标 +WESTRING_UEVAL_UA2P_HINT=受溅射或穿透攻击影响的目标允许类型 +WESTRING_UEVAL_UA2T=攻击 2 - 攻击类型 +WESTRING_UEVAL_UA2W=攻击 2 - 武器类型 +WESTRING_UEVAL_UCS2=攻击 2 - 武器声音 +WESTRING_UEVAL_UCS2_HINT=只对近战攻击有效.表示攻击时的声音效果. +WESTRING_UEVAL_UA2G=攻击 2 - 目标允许 +WESTRING_UEVAL_UA2G_HINT="(默认空中 地面 建筑 存活 可攻击 别人 英雄 非英雄 古树 非古树 自爆工兵 非自爆工兵 机械 有机 守卫) " +WESTRING_UEVAL_UTC2=攻击 2 -最大目标数 +WESTRING_UEVAL_UTC2_HINT=仅对弹射攻击有效. +WESTRING_UEVAL_UA2B=攻击 2 - 基础伤害 +WESTRING_UEVAL_UA2B_HINT="随机伤害输出采用D&D的掷骰子模式.每次攻击力 = 基础伤害 + 伤害骰子数量 * 随机整数(1,伤害骰子面数)" +WESTRING_UEVAL_UA2D=攻击 2 - 伤害骰子数量 +WESTRING_UEVAL_UA2S=攻击 2 - 伤害骰子面数 +WESTRING_UEVAL_UDU2=攻击 2 - 伤害升级奖励 +WESTRING_UEVAL_UDUP_HINT=升级科技-提升一次攻击等级增加的攻击值. +WESTRING_UEVAL_UWU1=攻击 1 - 显示UI +WESTRING_UEVAL_UWU1_HINT=设置面板是否显示攻击(A)键. +WESTRING_UEVAL_UWU2=攻击 2 - 显示UI +WESTRING_UEVAL_UWU2_HINT=设置面板是否显示攻击(A)键. +WESTRING_UEVAL_URB1=攻击 1 - 攻击范围缓冲 +WESTRING_UEVAL_URB1_HINT="近战或非跟踪箭矢单位攻击移动中的单位,发动攻击时目标可能已出射程外,只要目标没出该范围(射程+缓冲范围)则仍会伤害." +WESTRING_UEVAL_URB2=攻击 2 - 攻击范围缓冲 +WESTRING_UEVAL_URB2_HINT="近战或非跟踪箭矢单位攻击移动中的单位,发动攻击时目标可能已出射程外,只要目标没出该范围(射程+缓冲范围)则仍会伤害." +WESTRING_UEVAL_UDP1=攻击 1 - 动画伤害点 +WESTRING_UEVAL_UDP1_HINT="单位实际发动攻击效果的时间点,即攻击前摇,期间可以打断该次攻击,该项大于攻击间隔时将取该项为单位实际攻击间隔. " +WESTRING_UEVAL_UDP2=攻击 2 - 动画伤害点 +WESTRING_UEVAL_UDP2_HINT="单位实际发动攻击效果的时间点,即攻击前摇,期间可以打断该次攻击,该项大于攻击间隔时将取该项为单位实际攻击间隔. " +WESTRING_UEVAL_UBS1=攻击 1 - 动画回复点 +WESTRING_UEVAL_UBS1_HINT="发动攻击效果到完成攻击动作所需要的时间,该值不大于(攻击间隔-动画伤害点),攻击完成后可以通过发布其他命令手动取消." +WESTRING_UEVAL_UBS2=攻击 2 - 动画回复点 +WESTRING_UEVAL_UBS2_HINT="发动攻击效果到完成攻击动作所需要的时间,该值不大于(攻击间隔-动画伤害点),攻击完成后可以通过发布其他命令手动取消." +WESTRING_UEVAL_UDL1=攻击 1 - 伤害衰减参数 +WESTRING_UEVAL_UDL1_HINT=仅对弹射和穿透攻击有效. +WESTRING_UEVAL_UDL2=攻击 2 - 伤害衰减参数 +WESTRING_UEVAL_UDL2_HINT=仅对弹射和穿透攻击有效. +WESTRING_UEVAL_USD1=攻击 1 - 穿透伤害距离 +WESTRING_UEVAL_USD1_HINT=仅对穿透攻击有效. +WESTRING_UEVAL_USD2=攻击 2 - 穿透伤害距离 +WESTRING_UEVAL_USD2_HINT=仅对穿透攻击有效. +WESTRING_UEVAL_USR1=攻击 1 - 穿透伤害范围 +WESTRING_UEVAL_USR1_HINT=仅对穿透攻击有效. +WESTRING_UEVAL_USR2=攻击 2 - 穿透伤害范围 +WESTRING_UEVAL_USR2_HINT=仅对穿透攻击有效. +WESTRING_UEVAL_UACQ=主动攻击范围 +WESTRING_UEVAL_UACQ_HINT="单位会对该范围内的敌人进行主动攻击. 另外单位射程不大于该值.同时也影响到一些自动选目标技能的施法距离." +WESTRING_UEVAL_UAMN=最小攻击范围 +WESTRING_UEVAL_UAMN_HINT=单位无法对小于该值的范围内的敌人进行主动攻击. +WESTRING_UEVAL_UDTY=护甲类型 +WESTRING_UEVAL_UDEF=基础护甲 +WESTRING_UEVAL_UDUP=防御升级奖励 +WESTRING_UEVAL_UDUP_HINT=升级科技-提升防御等级一次增加的护甲值. +WESTRING_UEVAL_UTAR=作为目标类型 +WESTRING_UEVAL_UTAR_HINT="作为单位被攻击或施法时的目标判定依据. 该项为空则单位不能被攻击或施法,即无敌." +WESTRING_UEVAL_UARM=装甲类型 +WESTRING_UEVAL_UARM_HINT=该项只影响被近战单位攻击时的声音效果. 与其它任何东西无关. +WESTRING_UEVAL_UDEA=死亡类型 +WESTRING_UEVAL_UHOS=可作为中立敌对显示 +WESTRING_UEVAL_UHOS_HINT=勾选该项的中立单位会被显示在中立敌对分类中. +WESTRING_UEVAL_UTIL=地形设置 +WESTRING_UEVAL_UTIL_HINT=单位将只在工具面板的指定地形中显示,仅由于中立单位. +WESTRING_UEVAL_UTSS=有地形指定数据 +WESTRING_UEVAL_UTSS_HINT=某些模型对于不同地形会使用不同数据,比如模型皮肤.该项开启后更换地形很容易跳错. 建议不要理会. +WESTRING_UEVAL_UINE=可在编辑器中放置 +WESTRING_UEVAL_UINE_HINT=该项为False则单位将无法在编辑器中放置. +WESTRING_UEVAL_USPE=分类 - 特殊 +WESTRING_UEVAL_USPE_HINT=单位显示在特殊分类中. +WESTRING_UEVAL_UCAM=分类 - 战役 +WESTRING_UEVAL_UCAM_HINT=单位显示在战役分类中. +WESTRING_UEVAL_UDRO=可设置死亡掉落物品 +WESTRING_UEVAL_UDRO_HINT=可在设置单位属性中设置其死亡掉落物品. +WESTRING_UEVAL_UUCH=使用点击帮助 +WESTRING_UEVAL_UUCH_HINT=在模型中心显示一个紫色小方块,对一些特别小的模型大概有用. +WESTRING_UEVAL_UMVT=类型 +WESTRING_UEVAL_UMVT_HINT="移动类型影响单位可移动区域以及飞行高度和转身动作等等.<浮空>不会踩雷,<没有>则无视地形" +WESTRING_UEVAL_UMVH=高度 +WESTRING_UEVAL_UMVH_HINT=仅决定单位动画模型的飞行高度,和能否穿越地形无关. +WESTRING_UEVAL_UMVF=最小高度 +WESTRING_UEVAL_UMVF_HINT=单位飞行高度不会小于该值. +WESTRING_UEVAL_UMVS=基础速度 +WESTRING_UEVAL_UMVS_HINT="单位的移动速度将处于最大和最小值之间,不会超过平衡性常数中的最大速度,也不会超过522." +WESTRING_UEVAL_UMIS=最小速度 +WESTRING_UEVAL_UMIS_HINT="数值0代表使用默认值(游戏平衡常数)." +WESTRING_UEVAL_UMAS=最大速度 +WESTRING_UEVAL_UMAS_HINT=WESTRING_UEVAL_UMIS_HINT +WESTRING_UEVAL_UMVR=转身速度 +WESTRING_UEVAL_UMVR_HINT=取值0-3. 数值越大,单位转身越快. 为0时单位将只能向前移动. +WESTRING_UEVAL_URPO=组群分离 - 允许 +WESTRING_UEVAL_URPO_HINT=开启该项的同类单位在距离过近时会自动排斥.(像磁铁一样) +WESTRING_UEVAL_URPP=组群分离 - 参数 +WESTRING_UEVAL_URPP_HINT=设置排斥强度,即距离. +WESTRING_UEVAL_URPG=组群分离 - 组号 +WESTRING_UEVAL_URPG_HINT=同组的不同单位间也会有排斥效应.0表示无组号. +WESTRING_UEVAL_URPR=组群分离 -优先权 +WESTRING_UEVAL_URPR_HINT=两单位发生排斥时优先级低的单位会被排斥,优先级相同则相互排斥. +WESTRING_UEVAL_UCOL=碰撞体积 +WESTRING_UEVAL_UCOL_HINT=单位的实际体积大小而非显示大小,比如碰撞体积大的单位经过窄的路口会被堵住. +WESTRING_UEVAL_UPAT=路径纹理 +WESTRING_UEVAL_UPAT_HINT=建造建筑时显示的绿色方块区域,决定其在地图上占地区域,可以是不规则的. +WESTRING_UEVAL_UPAP=放置要求 +WESTRING_UEVAL_UPAR=放置不允许 +WESTRING_UEVAL_UPAW=放置要求距离水的范围 +WESTRING_UEVAL_UPAW_HINT=0表示不需要 +WESTRING_UEVAL_UABT=AI放置类型 +WESTRING_UEVAL_UABT_HINT=用于对战AI. +WESTRING_UEVAL_UABR=AI放置范围 +WESTRING_UEVAL_UABR_HINT=WESTRING_UEVAL_UABT_HINT +WESTRING_UEVAL_USND=单位声音设置 +WESTRING_UEVAL_UBSL=建筑 +WESTRING_UEVAL_UMSL=移动 +WESTRING_UEVAL_URSL=随机 +WESTRING_UEVAL_ULFI=循环淡入率 +WESTRING_UEVAL_ULFO=循环淡出率 +WESTRING_UEVAL_UGOL=黄金消耗 +WESTRING_UEVAL_ULUM=木材消耗 +WESTRING_UEVAL_UGOR=修理黄金消耗 +WESTRING_UEVAL_UGOR_HINT=修理该单位所需黄金,还和修理技能的参数设置有关. +WESTRING_UEVAL_ULUR=修理木材消耗 +WESTRING_UEVAL_ULUR_HINT=修理该单位所需木材,还和修理技能的参数设置有关. +WESTRING_UEVAL_UFOO=占用人口 +WESTRING_UEVAL_UFMA=提供人口 +WESTRING_UEVAL_UTYP=单位类别 +WESTRING_UEVAL_UHPM=生命最大值 +WESTRING_UEVAL_UHPR=生命回复 +WESTRING_UEVAL_UHRT=生命回复类型 +WESTRING_UEVAL_UMPM=魔法最大值 +WESTRING_UEVAL_UMPR=魔法回复 +WESTRING_UEVAL_UMPI=魔法初始数量 +WESTRING_UEVAL_UMPI_HINT=英雄复活以及单位刚建造出来时的魔法值. +WESTRING_UEVAL_USID=视野范围(白天) +WESTRING_UEVAL_USIN=视野范围(夜晚) +WESTRING_UEVAL_UCAR=运输尺寸 +WESTRING_UEVAL_UCAR_HINT=单位被装载时所占的装载格数. +WESTRING_UEVAL_ULEV=等级 +WESTRING_UEVAL_UBBA=黄金奖励 - 基础值 +WESTRING_UEVAL_UBBA_HINT="杀死该单位所得到的黄金奖励,默认仅中立敌对有效,其他需触发打开.所得奖励 = 基础值 + 骰子数量 x 随机整数(1,骰子面数)" +WESTRING_UEVAL_UBDI=黄金奖励 - 骰子数量 +WESTRING_UEVAL_UBSI=黄金奖励 - 骰子面数 +WESTRING_UEVAL_ULBA=木材奖励 - 基础值 +WESTRING_UEVAL_ULBA_HINT="杀死该单位所得到的木材奖励,默认仅中立敌对有效,其他需触发打开.所得奖励 = 基础值 + 骰子数量 x 随机整数(1,骰子面数)" +WESTRING_UEVAL_ULBD=木材奖励 - 骰子数量 +WESTRING_UEVAL_ULBS=木材奖励 - 骰子面数 +WESTRING_UEVAL_USMA=最大库存量 +WESTRING_UEVAL_USRG=雇佣时间间隔 +WESTRING_UEVAL_USRG_HINT=雇佣时间间隔 : 雇佣兵阵地里增加一个单位库存所需时间 +WESTRING_UEVAL_UPRI=编队优先权 +WESTRING_UEVAL_UPRI_HINT=编队时单位图标的排列顺序,该值较高者会排列在前面. +WESTRING_UEVAL_USTR=英雄 - 初始力量 +WESTRING_UEVAL_USTP=英雄 - 每等级提升力量 +WESTRING_UEVAL_UINT=英雄 - 初始智力 +WESTRING_UEVAL_UINP=英雄 - 每等级提升智力 +WESTRING_UEVAL_UAGI=英雄 - 初始敏捷 +WESTRING_UEVAL_UAGP=英雄 - 每等级提升敏捷 +WESTRING_UEVAL_UPRA=英雄 - 主要属性 +WESTRING_UEVAL_UPOI=单位附加值 +WESTRING_UEVAL_UPOI_HINT=并无任何实际意义的整数,仅用于触发器中,比如在一个TD地图中,我们可以使用该项来作为建筑的售出价格 +WESTRING_UEVAL_USLE=允许睡眠 +WESTRING_UEVAL_USLE_HINT=允许在夜晚进入睡眠状态. 只对中立敌对有效. +WESTRING_UEVAL_UFLE=可以逃跑 +WESTRING_UEVAL_UFLE_HINT=单位被攻击而无法反击时会自动跑开一段距离. +WESTRING_UEVAL_USST=雇佣开始时间 +WESTRING_UEVAL_USST_HINT=单位作为雇佣兵第一次能被雇佣的时间. +WESTRING_UEVAL_UBLD=建造时间 +WESTRING_UEVAL_URTM=修理时间 +WESTRING_UEVAL_URTM_HINT=修理该单位所需时间,还和修理技能的参数设置有关. +WESTRING_UEVAL_UFOR=队形排列 +WESTRING_UEVAL_UFOR_HINT=移动时的队形排列,数值越小的会越靠前. +WESTRING_UEVAL_URAC=种族 +WESTRING_UEVAL_UNBR=中立建筑 - 可作为随机建筑 +WESTRING_UEVAL_UNBM=中立建筑 - 显示小地图标记 +WESTRING_UEVAL_UHHB=英雄 - 隐藏英雄栏图标 +WESTRING_UEVAL_UHHB_HINT=左上角不显示该英雄图标. +WESTRING_UEVAL_UHHM=英雄 - 隐藏小地图英雄显示 +WESTRING_UEVAL_UHHM_HINT="勾选的话,会使用普通单位标记代替小地图中该英雄标记." +WESTRING_UEVAL_UHHD=英雄 - 隐藏英雄死亡信息 +WESTRING_UEVAL_UHHD_HINT=勾选则死亡时不显示默认附带的英雄的阵亡讯息. +WESTRING_UEVAL_UHOM=隐藏小地图显示 +WESTRING_UEVAL_UHOM_HINT=小地图上不显示该单位的标记. +WESTRING_UEVAL_UBDG=是一个建筑 +WESTRING_UEVAL_UREQ=需求 +WESTRING_UEVAL_UREQ_HINT=建造单位所需的科技项目,可添加多个. +WESTRING_UEVAL_URQC=需求 -使用等级数 +WESTRING_UEVAL_URQC_HINT=仅对对战英雄(游戏平衡性常数)有效,建造第N个英雄需要的科技项目. +WESTRING_UEVAL_URQ1=需求 - 等级 2 +WESTRING_UEVAL_URQ2=需求 - 等级 3 +WESTRING_UEVAL_URQ3=需求 - 等级 4 +WESTRING_UEVAL_URQ4=需求 - 等级 5 +WESTRING_UEVAL_URQ5=需求 - 等级 6 +WESTRING_UEVAL_URQ6=需求 - 等级 7 +WESTRING_UEVAL_URQ7=需求 - 等级 8 +WESTRING_UEVAL_URQ8=需求 - 等级 9 +WESTRING_UEVAL_URQA=需求值 +WESTRING_UEVAL_UDEP=从属等价物 +WESTRING_UEVAL_UDEP_HINT="这里列出的对象可以代替该单位,但该单位不能代替列出的对象. 即A属于B不代表B属于A." +WESTRING_UEVAL_UTRA=训练单位 +WESTRING_UEVAL_UTRA_HINT=这里添加的单位受到科技树限制. +WESTRING_UEVAL_URVA=指定复活点 +WESTRING_UEVAL_URVA_HINT="该建筑必须可以复活英雄. 英雄将只能在指定的建筑复活." +WESTRING_UEVAL_URES=可研究项目 +WESTRING_UEVAL_USEI=售出物品 +WESTRING_UEVAL_UMKI=制造物品 +WESTRING_UEVAL_UMKI_HINT=这里添加的物品受到科技树限制. +WESTRING_UEVAL_USEU=售出单位 +WESTRING_UEVAL_UPGR=使用科技 +WESTRING_UEVAL_UBUI=可建造建筑 +WESTRING_UEVAL_UUPT=建筑升级 +WESTRING_UEVAL_UTIP=提示工具 - 基础 +WESTRING_UEVAL_UTUB=提示工具 - 扩展 +WESTRING_UEVAL_UTPR=提示工具 -重生 +WESTRING_UEVAL_UAWT=提示工具 -唤醒 +WESTRING_UEVAL_UPRO=称谓 +WESTRING_UEVAL_UPRU=称谓数量 +WESTRING_UEVAL_UHOT=热键 +WESTRING_UEVAL_UNSF=名字 - 编辑器后缀 +WESTRING_UEVAL_UCUN=魔法升级名字 +WESTRING_UEVAL_UCUN_HINT=拥有魔法升级科技的单位在状态栏右边会有个魔法升级图标. 该项为其说明信息. 可参照各族法师. +WESTRING_UEVAL_UCUT=魔法升级说明 +WESTRING_UEVAL_UCUT_HINT=WESTRING_UEVAL_UCUN_HINT +WESTRING_UEVAL_UNAM=名字 +WESTRING_UEVAL_UREV=可重生阵亡英雄 + +WESTRING_UEVAL_IICO=界面图标 +WESTRING_UEVAL_IGOL=黄金消耗 +WESTRING_UEVAL_ILUM=木材消耗 +WESTRING_UEVAL_IUSE=使用次数 +WESTRING_UEVAL_IUSA=主动使用 +WESTRING_UEVAL_IPER=使用完会消失 +WESTRING_UEVAL_ISTO=最大库存量 +WESTRING_UEVAL_ISTR=购买时间间隔 +WESTRING_UEVAL_IDES=说明 +WESTRING_UEVAL_ISST=购买开始时间 +WESTRING_UEVAL_IABI=技能 +WESTRING_UEVAL_ICLA=物品分类 +WESTRING_UEVAL_ILEV=等级 +WESTRING_UEVAL_ILVO=等级(旧版) +WESTRING_UEVAL_IDRO=可以丢弃 +WESTRING_UEVAL_IDRP=持有者死亡时掉落 +WESTRING_UEVAL_IHTP=生命值 +WESTRING_UEVAL_IPRI=优先权 +WESTRING_UEVAL_IPRN=可作为随机物品 +WESTRING_UEVAL_IPOW=捡取时自动使用 +WESTRING_UEVAL_IMOR=有效的物品转换目标 +WESTRING_UEVAL_IMOR_HINT="使用'AIri'技能转换物品所得到的只能是该项设为True的物品." +WESTRING_UEVAL_IFIL=使用模型 +WESTRING_UEVAL_IARM=装甲类型 +WESTRING_UEVAL_IARM_HINT=该项只影响被近战单位攻击时的声音效果. 与其它任何东西无关. +WESTRING_UEVAL_ICID=CD间隔组 +WESTRING_UEVAL_ISEL=可被市场出售 +WESTRING_UEVAL_ISEL_HINT=只影响对战游戏中市场能否随机出售该物品. +WESTRING_UEVAL_IPAW=可以被抵押 +WESTRING_UEVAL_ISCA=模型缩放 +WESTRING_UEVAL_ISSC=选择圈大小(编辑器) +WESTRING_UEVAL_ISSC_HINT=编辑器中的选择圈直径. 0表示随模型大小自动调节. +WESTRING_UEVAL_ICLR=颜色值(红) +WESTRING_UEVAL_ICLG=颜色值(绿) +WESTRING_UEVAL_ICLB=颜色值(蓝) +WESTRING_UEVAL_IICD=无视CD间隔 +WESTRING_UEVAL_IICD_HINT="无视技能设置,可以无CD限制使用物品技能." + +// Unit Editor field values +WESTRING_UE_REGENTYPE_NONE=无 +WESTRING_UE_REGENTYPE_ALWAYS=总是 +WESTRING_UE_REGENTYPE_BLIGHT=只在荒芜地表上 +WESTRING_UE_REGENTYPE_DAY=只在白天 +WESTRING_UE_REGENTYPE_NIGHT=只在夜晚 + +WESTRING_UE_ATTACKBITS_NONE=无 +WESTRING_UE_ATTACKBITS_ONE=只有攻击1 +WESTRING_UE_ATTACKBITS_TWO=只有攻击2 +WESTRING_UE_ATTACKBITS_BOTH=全部 + +WESTRING_UE_DEATHTYPE_NONE="无法召唤,不会腐化" +WESTRING_UE_DEATHTYPE_RAISE="可召唤,不会腐化" +WESTRING_UE_DEATHTYPE_DECAY="无法召唤,会腐化" +WESTRING_UE_DEATHTYPE_BOTH="可召唤,会腐化" + +WESTRING_UE_WEAPONTYPE_NONE=无 +WESTRING_UE_WEAPONTYPE_NORMAL=近战 +WESTRING_UE_WEAPONTYPE_MISSILE=箭矢 +WESTRING_UE_WEAPONTYPE_INSTANT=立即 +WESTRING_UE_WEAPONTYPE_ARTILLERY=炮火 +WESTRING_UE_WEAPONTYPE_MSPLASH=箭矢(溅射) +WESTRING_UE_WEAPONTYPE_MBOUNCE=箭矢(弹射) +WESTRING_UE_WEAPONTYPE_MLINE=箭矢(穿透) +WESTRING_UE_WEAPONTYPE_ALINE=炮火(穿透) + +WESTRING_UE_ATTACKTYPE_NORMAL=普通 +WESTRING_UE_ATTACKTYPE_PIERCE=穿刺 +WESTRING_UE_ATTACKTYPE_SIEGE=攻城 +WESTRING_UE_ATTACKTYPE_SPELLS=法术 +WESTRING_UE_ATTACKTYPE_MAGIC=魔法 +WESTRING_UE_ATTACKTYPE_CHAOS=混乱 +WESTRING_UE_ATTACKTYPE_HERO=英雄 + +WESTRING_UE_TARGETTYPE_GROUND=地面 +WESTRING_UE_TARGETTYPE_AIR=空中 +WESTRING_UE_TARGETTYPE_STRUCTURE=建筑 +WESTRING_UE_TARGETTYPE_WARD=守卫 + +WESTRING_UE_MOVETYPE_FOOT=步行 +WESTRING_UE_MOVETYPE_HORSE=骑马 +WESTRING_UE_MOVETYPE_FLY=飞行 +WESTRING_UE_MOVETYPE_HOVER=浮空(陆) +WESTRING_UE_MOVETYPE_FLOAT=漂浮(水) +WESTRING_UE_MOVETYPE_AMPH=两栖 + +WESTRING_UE_DEFENSETYPE_NORMAL=普通 +WESTRING_UE_DEFENSETYPE_SMALL=小型 +WESTRING_UE_DEFENSETYPE_MEDIUM=中型 +WESTRING_UE_DEFENSETYPE_LARGE=大型 +WESTRING_UE_DEFENSETYPE_FORT=城墙 +WESTRING_UE_DEFENSETYPE_HERO=英雄 +WESTRING_UE_DEFENSETYPE_DIVINE=神圣 +WESTRING_UE_DEFENSETYPE_NONE=无装甲 + +WESTRING_UE_ATTRIBUTETYPE_AGI=敏捷 +WESTRING_UE_ATTRIBUTETYPE_INT=智力 +WESTRING_UE_ATTRIBUTETYPE_STR=力量 + +WESTRING_UE_DETECTIONTYPE_NONE=无 +WESTRING_UE_DETECTIONTYPE_INVIS=隐形 +WESTRING_UE_DETECTIONTYPE_BURROW=钻地 +WESTRING_UE_DETECTIONTYPE_BOTH=全部 + +WESTRING_UE_MISSILE_ANCGUARD=远古守护者 +WESTRING_UE_MISSILE_ANCPROT=远古保护者 +WESTRING_UE_MISSILE_ARROW=箭矢 +WESTRING_UE_MISSILE_AXE=斧头 +WESTRING_UE_MISSILE_BALLISTA=弩车 +WESTRING_UE_MISSILE_BANSHEE=女妖 +WESTRING_UE_MISSILE_BRISTLEBACK=猪鬃 +WESTRING_UE_MISSILE_CANNONTOWER=炮塔 +WESTRING_UE_MISSILE_CATAPULT=投石车 +WESTRING_UE_MISSILE_CHIMACID=奇美拉酸液 +WESTRING_UE_MISSILE_CHIMLIGHTNING=奇美拉闪电 +WESTRING_UE_MISSILE_COLDARROW=冰冻冷箭 +WESTRING_UE_MISSILE_CRYPTFIEND=穴居恶魔 +WESTRING_UE_MISSILE_DEMONHUNTER=恶魔猎手 +WESTRING_UE_MISSILE_DRAGONHAWK=龙鹰骑士 +WESTRING_UE_MISSILE_DRUIDTALON=猛禽德鲁伊 +WESTRING_UE_MISSILE_DRYAD=树妖 +WESTRING_UE_MISSILE_FARSEER=先知 +WESTRING_UE_MISSILE_FIREBALL=火球 +WESTRING_UE_MISSILE_FLAMINGARROW=烈焰之箭 +WESTRING_UE_MISSILE_FROSTWYRM=冰霜巨龙 +WESTRING_UE_MISSILE_GARGOYLE=石像鬼 +WESTRING_UE_MISSILE_GRYPHONRIDER=狮鹫骑士 +WESTRING_UE_MISSILE_GUARDTOWER=防御塔 +WESTRING_UE_MISSILE_GYROCOPTER=矮人直升机 +WESTRING_UE_MISSILE_GYROCOPTER_IMPACT=矮人直升机撞击 +WESTRING_UE_MISSILE_HARPY=鸟身女妖 +WESTRING_UE_MISSILE_HUNTER=猎头者 +WESTRING_UE_MISSILE_LICH=巫妖 +WESTRING_UE_MISSILE_MEATWAGON=绞肉车 +WESTRING_UE_MISSILE_MOONPRIESTESS=月之女祭司 +WESTRING_UE_MISSILE_MORTAR=迫击炮 +WESTRING_UE_MISSILE_NECROMANCER=不死族巫师 +WESTRING_UE_MISSILE_POISONARROW=淬毒之箭 +WESTRING_UE_MISSILE_POISONSTING=淬毒之刺 +WESTRING_UE_MISSILE_PRIEST=牧师 +WESTRING_UE_MISSILE_RANGER=游侠 +WESTRING_UE_MISSILE_REDDRAGON=红龙 +WESTRING_UE_MISSILE_RIFLE=火枪 +WESTRING_UE_MISSILE_SEARINGARROW=灼热之箭 +WESTRING_UE_MISSILE_SENTINEL=女猎手 +WESTRING_UE_MISSILE_SORCERESS=女巫 +WESTRING_UE_MISSILE_TREANT=树人 +WESTRING_UE_MISSILE_WATERELEMENTAL=水元素 +WESTRING_UE_MISSILE_WITCHDOCTOR=巫医 +WESTRING_UE_MISSILE_WYVERNSPEAR=双足飞龙长矛 +WESTRING_UE_MISSILE_ZIGGURAT=幽魂之塔 +WESTRING_UE_MISSILE_STEAMTANK=蒸汽坦克撞击 +WESTRING_UE_MISSILE_KEEPERGROVE=丛林守护者 +WESTRING_UE_MISSILE_BANDIT=强盗 +WESTRING_UE_MISSILE_GREENDRAGON=绿龙 +WESTRING_UE_MISSILE_BLACKKEEPER=黑色看守者 +WESTRING_UE_MISSILE_SLUDGE=泥泞兽 + +WESTRING_UE_UNITCLASS_GIANT=泰坦族(&G) +WESTRING_UE_UNITCLASS_UNDEAD=不死族(&U) +WESTRING_UE_UNITCLASS_SUMMONED=召唤生物(&S) +WESTRING_UE_UNITCLASS_MECHANICAL=机械类(&M) +WESTRING_UE_UNITCLASS_PEON=工人(&K) +WESTRING_UE_UNITCLASS_SAPPER=自爆工兵(&C) +WESTRING_UE_UNITCLASS_TOWNHALL=城镇大厅(&H) +WESTRING_UE_UNITCLASS_TREE=树木(&T) +WESTRING_UE_UNITCLASS_WARD=守卫(&D) +WESTRING_UE_UNITCLASS_ANCIENT=古树(&A) +WESTRING_UE_UNITCLASS_STANDON=可通行(&W) +WESTRING_UE_UNITCLASS_NEUTRAL=中立(&N) +WESTRING_UE_UNITCLASS_TAUREN=牛头人(&R) + +WESTRING_UE_UNITRACE_HUMAN=WESTRING_RACE_HUMAN +WESTRING_UE_UNITRACE_ORC=WESTRING_RACE_ORC +WESTRING_UE_UNITRACE_UNDEAD=WESTRING_RACE_UNDEAD +WESTRING_UE_UNITRACE_NIGHTELF=WESTRING_RACE_NIGHTELF +WESTRING_UE_UNITRACE_DEMON=恶魔 +WESTRING_UE_UNITRACE_CREEPS=野外生物 +WESTRING_UE_UNITRACE_CRITTERS=动物 +WESTRING_UE_UNITRACE_OTHER=其它 +WESTRING_UE_UNITRACE_COMMONER=平民 +WESTRING_UE_UNITRACE_NAGA=娜迦 +WESTRING_UE_UNITRACE_UNKNOWN=无 + +WESTRING_UE_PATHINGTYPE_PREVENT_UNFLYABLE=空中单位可通行 +WESTRING_UE_PATHINGTYPE_PREVENT_UNAMPHIBIOUS=两栖单位可通行 +WESTRING_UE_PATHINGTYPE_PREVENT_UNBUILDABLE=可建造地面 +WESTRING_UE_PATHINGTYPE_PREVENT_UNWALKABLE=可通行地面 +WESTRING_UE_PATHINGTYPE_PREVENT_UNFLOATABLE=可通行海面 +WESTRING_UE_PATHINGTYPE_PREVENT_BLIGHTED=不是荒芜之地 + +WESTRING_UE_PATHINGTYPE_REQUIRE_UNFLYABLE=空中单位可通行 +WESTRING_UE_PATHINGTYPE_REQUIRE_UNAMPHIBIOUS=两栖单位可通行 +WESTRING_UE_PATHINGTYPE_REQUIRE_UNBUILDABLE=可建造地面 +WESTRING_UE_PATHINGTYPE_REQUIRE_UNWALKABLE=可通行地面 +WESTRING_UE_PATHINGTYPE_REQUIRE_UNFLOATABLE=可通行海面 +WESTRING_UE_PATHINGTYPE_REQUIRE_BLIGHTED=不是荒芜之地 + +WESTRING_UE_TARGETTYPE_AIR=空中 +WESTRING_UE_TARGETTYPE_ALIVE=存活 +WESTRING_UE_TARGETTYPE_ALLIES=联盟 +WESTRING_UE_TARGETTYPE_DEAD=死亡 +WESTRING_UE_TARGETTYPE_DEBRIS=残骸 +WESTRING_UE_TARGETTYPE_ENEMIES=敌人 +WESTRING_UE_TARGETTYPE_GROUND=地面 +WESTRING_UE_TARGETTYPE_HERO=英雄 +WESTRING_UE_TARGETTYPE_INVULNERABLE=无敌 +WESTRING_UE_TARGETTYPE_ITEM=物品 +WESTRING_UE_TARGETTYPE_MECHANICAL=机械类 +WESTRING_UE_TARGETTYPE_NEUTRAL=中立 +WESTRING_UE_TARGETTYPE_NONE=没有 +WESTRING_UE_TARGETTYPE_NONHERO=非-英雄 +WESTRING_UE_TARGETTYPE_NONSAPPER=非-自爆工兵 +WESTRING_UE_TARGETTYPE_NOTSELF=别人 +WESTRING_UE_TARGETTYPE_ORGANIC=有机生物 +WESTRING_UE_TARGETTYPE_PLAYERUNITS=玩家单位 +WESTRING_UE_TARGETTYPE_SAPPER=自爆工兵 +WESTRING_UE_TARGETTYPE_SELF=自己 +WESTRING_UE_TARGETTYPE_STRUCTURE=建筑 +WESTRING_UE_TARGETTYPE_TERRAIN=地形 +WESTRING_UE_TARGETTYPE_TREE=树木 +WESTRING_UE_TARGETTYPE_VULNERABLE=可攻击的 +WESTRING_UE_TARGETTYPE_WALL=墙 +WESTRING_UE_TARGETTYPE_WARD=守卫 +WESTRING_UE_TARGETTYPE_ANCIENT=古树 +WESTRING_UE_TARGETTYPE_NONANCIENT=非-古树 +WESTRING_UE_TARGETTYPE_FRIEND=友军单位 +WESTRING_UE_TARGETTYPE_BRIDGE=桥 +WESTRING_UE_TARGETTYPE_DECORATION=装饰物 + +WESTRING_UE_ARMORTYPE_FLESH=肉体 +WESTRING_UE_ARMORTYPE_METAL=金属 +WESTRING_UE_ARMORTYPE_WOOD=木头 +WESTRING_UE_ARMORTYPE_ETHEREAL=气态 +WESTRING_UE_ARMORTYPE_STONE=石头 + +WESTRING_UE_SHADOWIMAGE_NORMAL=普通 +WESTRING_UE_SHADOWIMAGE_FLYER=飞行物 + +WESTRING_UE_TEAMCOLOR_NONE=自动匹配 +WESTRING_UE_TEAMCOLOR_00=WESTRING_PLAYER_00 +WESTRING_UE_TEAMCOLOR_01=WESTRING_PLAYER_01 +WESTRING_UE_TEAMCOLOR_02=WESTRING_PLAYER_02 +WESTRING_UE_TEAMCOLOR_03=WESTRING_PLAYER_03 +WESTRING_UE_TEAMCOLOR_04=WESTRING_PLAYER_04 +WESTRING_UE_TEAMCOLOR_05=WESTRING_PLAYER_05 +WESTRING_UE_TEAMCOLOR_06=WESTRING_PLAYER_06 +WESTRING_UE_TEAMCOLOR_07=WESTRING_PLAYER_07 +WESTRING_UE_TEAMCOLOR_08=WESTRING_PLAYER_08 +WESTRING_UE_TEAMCOLOR_09=WESTRING_PLAYER_09 +WESTRING_UE_TEAMCOLOR_10=WESTRING_PLAYER_10 +WESTRING_UE_TEAMCOLOR_11=WESTRING_PLAYER_11 +WESTRING_UE_TEAMCOLOR_12=WESTRING_PLAYER_NA + +WESTRING_UE_AIBUFFER_NONE=WESTRING_NONE +WESTRING_UE_AIBUFFER_HALL=基地 +WESTRING_UE_AIBUFFER_RESOURCE=资源 +WESTRING_UE_AIBUFFER_FACTORY=工厂 +WESTRING_UE_AIBUFFER_GENERAL=普通 + +WESTRING_UE_COMBATSOUND_AXEMEDIUMCHOP=斧头中砍 +WESTRING_UE_COMBATSOUND_METALHEAVYBASH=金属重击 +WESTRING_UE_COMBATSOUND_METALHEAVYCHOP=金属重砍 +WESTRING_UE_COMBATSOUND_METALHEAVYSLICE=金属重切 +WESTRING_UE_COMBATSOUND_METALLIGHTCHOP=金属轻砍 +WESTRING_UE_COMBATSOUND_METALLIGHTSLICE=金属轻切 +WESTRING_UE_COMBATSOUND_METALMEDIUMBASH=金属中击 +WESTRING_UE_COMBATSOUND_METALMEDIUMCHOP=金属中砍 +WESTRING_UE_COMBATSOUND_METALMEDIUMSLICE=金属中切 +WESTRING_UE_COMBATSOUND_ROCKHEAVYBASH=岩石重击 +WESTRING_UE_COMBATSOUND_WOODHEAVYBASH=木头重击 +WESTRING_UE_COMBATSOUND_WOODLIGHTBASH=木头轻击 +WESTRING_UE_COMBATSOUND_WOODMEDIUMBASH=木头中击 + +WESTRING_UE_MORPHFLAGS_UNINTERRUPTABLE=不可中断 +WESTRING_UE_MORPHFLAGS_IMMEDIATE_LANDING=着陆时直接变形 +WESTRING_UE_MORPHFLAGS_IMMEDIATE_TAKEOFF=起飞时直接变形 +WESTRING_UE_MORPHFLAGS_PERMANENT=永久变形 +WESTRING_UE_MORPHFLAGS_REQUIREPAYMENT=需要费用 + +WESTRING_UE_SILENCEFLAGS_MELEE=近战 +WESTRING_UE_SILENCEFLAGS_RANGED=远程 +WESTRING_UE_SILENCEFLAGS_SPECIAL=特殊 +WESTRING_UE_SILENCEFLAGS_SPELLS=魔法 + +WESTRING_UE_STACKFLAGS_DAMAGE=伤害 +WESTRING_UE_STACKFLAGS_MOVEMENT=移动速度 +WESTRING_UE_STACKFLAGS_ATTACKRATE=攻击速度 +WESTRING_UE_STACKFLAGS_KILLUNIT=杀死单位 + +WESTRING_UE_INTERACTIONFLAGS_INVENTORY=有物品栏的单位 +WESTRING_UE_INTERACTIONFLAGS_UNIT=非建筑单位 +WESTRING_UE_INTERACTIONFLAGS_ANY=任何 + +WESTRING_UE_PICKFLAGS_TOWNHALL=基地 +WESTRING_UE_PICKFLAGS_RESOURCE=资源 +WESTRING_UE_PICKFLAGS_FACTORY=工厂 +WESTRING_UE_PICKFLAGS_BUFFER=普通 + +WESTRING_UE_VERSIONFLAGS_VER0=混乱之治 +WESTRING_UE_VERSIONFLAGS_VER1=冰封王座 + +WESTRING_UE_FULLFLAGS_NONE=从不 +WESTRING_UE_FULLFLAGS_LIFE=生命 +WESTRING_UE_FULLFLAGS_MANA=魔法 +WESTRING_UE_FULLFLAGS_BOTH=总是 + +WESTRING_UE_CHANNELTYPE_INSTANT=无目标 +WESTRING_UE_CHANNELTYPE_UNIT=单位目标 +WESTRING_UE_CHANNELTYPE_POINT=点目标 +WESTRING_UE_CHANNELTYPE_UNITPOINT=单位或点目标 + +WESTRING_UE_CHANNELFLAGS_VISIBLE=图标可见 +WESTRING_UE_CHANNELFLAGS_TARGIMAGE=目标选取图像 +WESTRING_UE_CHANNELFLAGS_PHYSICAL=物理魔法 +WESTRING_UE_CHANNELFLAGS_UNIVERSAL=通用魔法 +WESTRING_UE_CHANNELFLAGS_UNIQUE=单独施放 + +WESTRING_UE_SPELLDETAIL_LOW=低 +WESTRING_UE_SPELLDETAIL_MEDIUM=中 +WESTRING_UE_SPELLDETAIL_HIGH=高 + +WESTRING_UE_TECHAVAIL_AVAILABLE=可用 +WESTRING_UE_TECHAVAIL_UNAVAILABLE=不可用 + +WESTRING_UE_LIGHTNINGEFFECT_CLPB=主闪电链 +WESTRING_UE_LIGHTNINGEFFECT_CLSB=次闪电链 +WESTRING_UE_LIGHTNINGEFFECT_MBUR=法力燃烧 +WESTRING_UE_LIGHTNINGEFFECT_CHIM=闪电攻击 +WESTRING_UE_LIGHTNINGEFFECT_AFOD=死亡之指 +WESTRING_UE_LIGHTNINGEFFECT_HWPB=主医疗波 +WESTRING_UE_LIGHTNINGEFFECT_HWSB=次医疗波 +WESTRING_UE_LIGHTNINGEFFECT_MFPB=魔力之焰 +WESTRING_UE_LIGHTNINGEFFECT_DRAB=汲取生命和魔法 +WESTRING_UE_LIGHTNINGEFFECT_DRAL=汲取生命 +WESTRING_UE_LIGHTNINGEFFECT_DRAM=汲取魔法 +WESTRING_UE_LIGHTNINGEFFECT_FORK=叉状闪电 +WESTRING_UE_LIGHTNINGEFFECT_SPLK=灵魂锁链 +WESTRING_UE_LIGHTNINGEFFECT_LEAS=空中锁镣 + +// Destructable Editor fields +WESTRING_BEVAL_BNAM=名字 +WESTRING_BEVAL_BSUF=编辑器后缀 +WESTRING_BEVAL_BCAT=类别 +WESTRING_BEVAL_BCAT_HINT="请勿选择“没有”,否则地图将无法用编辑器打开." +WESTRING_BEVAL_BTIL=地形设置 +WESTRING_BEVAL_BTSP=有地形指定数据 +WESTRING_BEVAL_BDIR=模型目录 +WESTRING_BEVAL_BFIL=模型文件 +WESTRING_BEVAL_BLIT=模型文件 - 有附属模型 +WESTRING_BEVAL_BLIT_HINT="如果用单位或其他没有多种样式的模型来做可破坏物的话,需要将该项设为False." +WESTRING_BEVAL_BFLO=加强闭塞范围 +WESTRING_BEVAL_BFLO_HINT="一般是以物体中心作为闭塞面的,钩选该项将以整个物体作为闭塞面." +WESTRING_BEVAL_BTXI=替换纹理ID +WESTRING_BEVAL_BTXF=替换纹理文件 +WESTRING_BEVAL_BUCH=使用点击帮助 +WESTRING_BEVAL_BONC=悬崖上可放置 +WESTRING_BEVAL_BONW=水面可放置 +WESTRING_BEVAL_BCPD=面板显示死亡版本 +WESTRING_BEVAL_BCPD_HINT=该项关闭时面板中不会显示死亡的可破坏物. +WESTRING_BEVAL_BWAL=可通行 +WESTRING_BEVAL_BCLH=悬崖高度 +WESTRING_BEVAL_BTAR=作为目标类型 +WESTRING_BEVAL_BARM=装甲类型 +WESTRING_BEVAL_BARM_HINT=该项只影响被近战单位攻击时的声音效果. 与其它任何东西无关. +WESTRING_BEVAL_BVAR=模型文件 - 样式总数 +WESTRING_BEVAL_BHPS=生命值 +WESTRING_BEVAL_BOCH=闭塞高度 +WESTRING_BEVAL_BOCH_HINT="单位站在有闭塞高度的非联盟建筑/可破坏物旁边,会有局部视线被阻挡形成锥形,就是所谓闭塞.将该值设为0则不会有此效果." +WESTRING_BEVAL_BFLH=飞越高度 +WESTRING_BEVAL_BFLH_HINT=单位飞越该物体时的飞行高度调整. +WESTRING_BEVAL_BFXR=固定角度 +WESTRING_BEVAL_BFXR_HINT=设置为-1可以自由调整角度. +WESTRING_BEVAL_BSEL=选择圈大小(编辑器) +WESTRING_BEVAL_BSEL_HINT=编辑器中的选择圈直径. 0表示随模型大小自动调节. +WESTRING_BEVAL_BMIS=最小比例 +WESTRING_BEVAL_BMAS=最大比例 +WESTRING_BEVAL_BCPR=可以放置随机比例 +WESTRING_BEVAL_BMAP=X轴最大旋转角度(度数) +WESTRING_BEVAL_BMAP_HINT="物体放置在斜坡上时模型会发生倾斜,该值即为模型的最大倾斜角度.(绕X轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_BEVAL_BMAR=Y轴最大旋转角度(度数) +WESTRING_BEVAL_BMAR_HINT="物体放置在斜坡上时模型会发生倾斜,该值即为模型的最大倾斜角度.(绕Y轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_BEVAL_BRAD=高度变化 - 采样范围 +WESTRING_BEVAL_BFRA=迷雾范围 +WESTRING_BEVAL_BFVI=迷雾中可见动画 +WESTRING_BEVAL_BPTX=路径纹理 +WESTRING_BEVAL_BPTD=路径纹理(死亡) +WESTRING_BEVAL_BPTD_HINT=作用于死亡的可破坏物. +WESTRING_BEVAL_BDSN=死亡 +WESTRING_BEVAL_BSHD=阴影 +WESTRING_BEVAL_BSMM=小地图 - 显示 +WESTRING_BEVAL_BMMR=小地图颜色(红) +WESTRING_BEVAL_BMMG=小地图颜色(绿) +WESTRING_BEVAL_BMMB=小地图颜色(蓝) +WESTRING_BEVAL_BUMM=小地图 - 使用自定义颜色 +WESTRING_BEVAL_BBUT=建造时间 +WESTRING_BEVAL_BRET=修理时间 +WESTRING_BEVAL_BREG=修理金子消耗 +WESTRING_BEVAL_BREL=修理木材消耗 +WESTRING_BEVAL_BUSR=加入用户指定列表 +WESTRING_BEVAL_BVCR=颜色值(红) +WESTRING_BEVAL_BVCG=颜色值(绿) +WESTRING_BEVAL_BVCB=颜色值(蓝) +WESTRING_BEVAL_BGSE=游戏中可选择 +WESTRING_BEVAL_BGSC=选择圈大小(游戏) +WESTRING_BEVAL_BGPM=模型文件 - 头像 + +// Doodad Editor fields +WESTRING_DEVAL_VAR=样式%d +WESTRING_DEVAL_DNAM=名字 +WESTRING_DEVAL_DCAT=类别 +WESTRING_DEVAL_DTIL=地形设置 +WESTRING_DEVAL_DTSP=有地形指定数据 +WESTRING_DEVAL_DDIR=模型目录 +WESTRING_DEVAL_DFIL=模型文件 +WESTRING_DEVAL_DSND=循环声音 +WESTRING_DEVAL_DSEL=选择圈大小 +WESTRING_DEVAL_DDES=默认比例 +WESTRING_DEVAL_DMIS=最小比例 +WESTRING_DEVAL_DMAS=最大比例 +WESTRING_DEVAL_DCPR=可以放置随机比例 +WESTRING_DEVAL_DUCH=使用点击帮助 +WESTRING_DEVAL_DIMC=忽略模型点击 +WESTRING_DEVAL_DMAP=X轴最大旋转角度(度数) +WESTRING_DEVAL_DMAP_HINT="装饰物放置在斜坡上时模型会发生倾斜,该值即为最大倾斜角度.(绕X轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_DEVAL_DMAR=Y轴最大旋转角度(度数) +WESTRING_DEVAL_DMAR_HINT="装饰物放置在斜坡上时模型会发生倾斜,该值即为最大倾斜角度.(绕Y轴旋转方向) 而当该值为负数时,即使其在平地上时,模型也会倾斜." +WESTRING_DEVAL_DVIS=可见范围 +WESTRING_DEVAL_DWLK=可通行 +WESTRING_DEVAL_DVAR=样式总数 +WESTRING_DEVAL_DONC=悬崖上可放置 +WESTRING_DEVAL_DONW=水面可放置 +WESTRING_DEVAL_DFLT=漂浮 +WESTRING_DEVAL_DFLT_HINT=水中的装饰物会漂浮在水面. +WESTRING_DEVAL_DSHD=有阴影 +WESTRING_DEVAL_DSHF=迷雾中显示 +WESTRING_DEVAL_DANF=迷雾中显示动画 +WESTRING_DEVAL_DFXR=固定角度 +WESTRING_BEVAL_DFXR_HINT=设置为-1可以自由调整角度. +WESTRING_DEVAL_DPTX=路径纹理 +WESTRING_DEVAL_DSMM=小地图 - 显示 +WESTRING_DEVAL_DUMC=小地图 - 使用自定义颜色 +WESTRING_DEVAL_DMMR=小地图颜色(红) +WESTRING_DEVAL_DMMG=小地图颜色(绿) +WESTRING_DEVAL_DMMB=小地图颜色(蓝) +WESTRING_DEVAL_DVR1=颜色值(红) +WESTRING_DEVAL_DVG1=颜色值(绿) +WESTRING_DEVAL_DVB1=颜色值(蓝) +WESTRING_DEVAL_DUSR=加入用户指定列表 + +// Ability Editor fields +WESTRING_AEVAL_LVL=等级 %d +WESTRING_AEVAL_ANAM=名字 +WESTRING_AEVAL_ANSF=编辑器后缀 +WESTRING_AEVAL_AHER=英雄技能 +WESTRING_AEVAL_AITE=物品技能 +WESTRING_AEVAL_ABPX=按钮位置 - 普通 (X) +WESTRING_AEVAL_ABPY=按钮位置 - 普通 (Y) +WESTRING_AEVAL_AUBX=按钮位置 - 关闭 (X) +WESTRING_AEVAL_AUBY=按钮位置 - 关闭 (Y) +WESTRING_AEVAL_ARPX=按钮位置 - 研究 (X) +WESTRING_AEVAL_ARPY=按钮位置 - 研究 (Y) +WESTRING_AEVAL_ABPX_HINT="面板中技能按钮的排列横坐标(0,1,2,3)." +WESTRING_AEVAL_ABPY_HINT="面板中技能按钮的排列纵坐标(0,1,2)." +WESTRING_AEVAL_AUPX_HINT="关闭时技能按钮的排列横坐标(0,1,2,3)." +WESTRING_AEVAL_AUPY_HINT="关闭时技能按钮的排列纵坐标(0,1,2)." +WESTRING_AEVAL_ARPX_HINT="学习时技能按钮的排列横坐标(0,1,2,3)." +WESTRING_AEVAL_ARPY_HINT="学习时技能按钮的排列纵坐标(0,1,2)." +WESTRING_AEVAL_AART=图标 - 普通 +WESTRING_AEVAL_AUAR=图标 -关闭 +WESTRING_AEVAL_ARAR=图标 - 学习 +WESTRING_AEVAL_ACAT=效果 - 施法者 +WESTRING_AEVAL_ATAT=效果 - 目标 +WESTRING_AEVAL_ASAT=效果 -特殊 +WESTRING_AEVAL_AEAT=效果 - 目标点 +WESTRING_AEVAL_AAEA=效果 - 区域 +WESTRING_AEVAL_ALIG=效果 - 闪电效果 +WESTRING_AEVAL_AMAT=效果 - 投射物图像 +WESTRING_AEVAL_AMAT_HINT=很多默认无投射物的技能此项无效,比如通魔 +WESTRING_AEVAL_AMSP=效果 - 射弹速度 +WESTRING_AEVAL_AMAC=效果 - 射弹弧度 +WESTRING_AEVAL_AMAC_HINT="射弹弧度=射弹抛物线最大高度/平面位移距离" +WESTRING_AEVAL_AMHO=效果 - 射弹自导允许 +WESTRING_AEVAL_AMHO="设置箭矢是否自动跟踪目标" +WESTRING_AEVAL_ATP1=提示工具 - 普通 +WESTRING_AEVAL_AUT1=提示工具 -关闭 +WESTRING_AEVAL_AUB1=提示工具 - 普通 - 扩展 +WESTRING_AEVAL_AUU1=提示工具 -关闭 - 扩展 +WESTRING_AEVAL_AHKY=热键 - 普通 +WESTRING_AEVAL_AUHK=热键 -关闭 +WESTRING_AEVAL_ALEV=等级 +WESTRING_AEVAL_ARLV=等级要求 +WESTRING_AEVAL_ARLV_HINT="英雄技能的该项决定需要多少级才能学习.另外若设为大于1,该技能会被视为大招,大部分无视魔免并且不被驱散." +WESTRING_AEVAL_ALSK=跳级要求 +WESTRING_AEVAL_ALSK_HINT=每隔多少级能够升级技能. 0表示使用默认值(游戏平衡常数). +WESTRING_AEVAL_ATAR=目标允许 +WESTRING_AEVAL_ACAS=魔法施放时间 +WESTRING_AEVAL_ACAS_HINT="开始施法前的准备时间.暗影突袭的此项为伤害间隔.暴风雪和火焰雨的此项为每波间隔." +WESTRING_AEVAL_ADUR=持续时间 - 普通 +WESTRING_AEVAL_ADUR_HINT="烈焰风暴的此项为燃烧持续时间.变身(恶魔猎手)的此项为完成变身前暂停时间" +WESTRING_AEVAL_AHDU=持续时间 - 英雄 +WESTRING_AEVAL_AHDU_HINT="技能对英雄或具有抗性皮肤的单位的持续时间.烈焰风暴的此项为熄灭持续时间.静止陷阱的此项是眩晕时间" +WESTRING_AEVAL_ACDN=魔法施放时间间隔 +WESTRING_AEVAL_AMCS=魔法消耗 +WESTRING_AEVAL_AARE=影响区域 +WESTRING_AEVAL_ARAN=施法距离 +WESTRING_AEVAL_ARAN_HINT=当目标单位/点处于该范围内时则开始施法,否则施法者会尝试接近目标单位/点. +WESTRING_AEVAL_AREQ=需求 +WESTRING_AEVAL_ARQA=需求值 +WESTRING_AEVAL_ARET=提示工具 - 学习 +WESTRING_AEVAL_ARUT=提示工具 - 学习 - 扩展 +WESTRING_AEVAL_ARHK=热键 - 学习 +WESTRING_AEVAL_ARAC=种族 +WESTRING_AEVAL_ACHD=检查等价所属 +WESTRING_AEVAL_ACHD_HINT=检查等价从属关系.如A从属于B,那么该项为True时A可以代替B,而B不能代替A;为False则两者可以相互替代. +WESTRING_AEVAL_APRI=魔法偷取优先权 +WESTRING_AEVAL_AORD=命令串 - 使用/打开 +WESTRING_AEVAL_AORU=命令串 - 关闭 +WESTRING_AEVAL_AORO=命令串 - 激活 +WESTRING_AEVAL_AORF=命令串 - 取消激活 +WESTRING_AEVAL_AEFS=音效 +WESTRING_AEVAL_AEFL=音效(循环) +WESTRING_AEVAL_ATAC=效果 - 目标 - 附加数量 +WESTRING_AEVAL_ATA0=效果 - 目标附加点1 +WESTRING_AEVAL_ATA1=效果 - 目标附加点2 +WESTRING_AEVAL_ATA2=效果 - 目标附加点3 +WESTRING_AEVAL_ATA3=效果 - 目标附加点4 +WESTRING_AEVAL_ATA4=效果 - 目标附加点5 +WESTRING_AEVAL_ATA5=效果 - 目标附加点6 +WESTRING_AEVAL_ACAC=效果 - 施法者 - 附加数量 +WESTRING_AEVAL_ACAP=效果 - 施法者附加点1 +WESTRING_AEVAL_ACA1=效果 - 施法者附加点2 +WESTRING_AEVAL_ASPT=效果 -特殊附加点 +WESTRING_AEVAL_ABUF=魔法效果 +WESTRING_AEVAL_AEFF=区域持续效果 +WESTRING_AEVAL_AEFF_HINT=只有像暴风雪、烈焰风暴等对点施放且持续效果的魔法才有效. +WESTRING_AEVAL_AANI=效果 - 施法动作 +WESTRING_AEVAL_YTIP="YDWE友情提示" +WESTRING_AEVAL_YDID="命令串 - 数字命令ID " +WESTRING_AEVAL_YDID_HINT="可以在触发中使用这项的数字施放自定义ID命令来施放该技能.不可修改,修改无效。" + + +// Ability Specific Values +WESTRING_AEVAL_HBZ1=波次数量 +WESTRING_AEVAL_HBZ2=每波伤害 +WESTRING_AEVAL_HBZ3=碎片数量 +WESTRING_AEVAL_HBZ4=建筑伤害参数(%) +WESTRING_AEVAL_HBZ5=每秒伤害 +WESTRING_AEVAL_HBZ6=每波最大伤害 +WESTRING_AEVAL_HAB1=魔法回复加快 +WESTRING_AEVAL_HMT1=传送单位数量 +WESTRING_AEVAL_HMT2=魔法施放延迟 +WESTRING_AEVAL_HMT3=传送单位聚集 +WESTRING_AEVAL_ITP2=传送单位聚集 +WESTRING_AEVAL_HWE1=召唤单位类型 +WESTRING_AEVAL_HWE2=召唤单位数量 +WESTRING_AEVAL_OWW1=每秒伤害 +WESTRING_AEVAL_OWW2=魔法伤害减少 +WESTRING_AEVAL_OCR1=致命一击几率 +WESTRING_AEVAL_OCR1_HINT="使用伪随机,只能向取5的倍数取整,超过25%的概率开始不准确." +WESTRING_AEVAL_OCR2=伤害倍数 +WESTRING_AEVAL_OCR2_HINT="设置此项则为致命一击,0倍不会显示数字" +WESTRING_AEVAL_OCR3=伤害奖励 +WESTRING_AEVAL_OCR3_HINT="设置此项并有持续时间则为重击" +WESTRING_AEVAL_OCR4=闪避几率 +WESTRING_AEVAL_OMI1=镜像数量 +WESTRING_AEVAL_OMI2=施加伤害(%) +WESTRING_AEVAL_OMI3=所受伤害(%) +WESTRING_AEVAL_OMI4=技能延迟 +WESTRING_AEVAL_OWK1=转变时间 +WESTRING_AEVAL_OWK2=移动速度增加(%) +WESTRING_AEVAL_OWK3=加成伤害 +WESTRING_AEVAL_UAN1=复活死尸数量 +WESTRING_AEVAL_UDC1=治疗数值 +WESTRING_AEVAL_UDP1=每点生命转换为魔法 +WESTRING_AEVAL_UDP1_HINT="将目标的一定生命转化为施法者的法力。若按数值转化,此项决定转换数值,若按百分比,则决定百分比率" +WESTRING_AEVAL_UDP2=每点生命转换为生命 +WESTRING_AEVAL_UDP2_HINT="将目标的一定生命转化为施法者的生命。若按数值转化,此项决定转换数值,若按百分比,则决定百分比率" +WESTRING_AEVAL_UDP3=魔法数值转换 +WESTRING_AEVAL_UDP3_HINT="此项为TRUE时则转换指定数值,为false时则转换目标现有生命的一定百分比。" +WESTRING_AEVAL_UDP4=生命数值转换 +WESTRING_AEVAL_UDP4_HINT="此项为TRUE时则转换指定数值,为false时则转换目标现有生命的一定百分比。" +WESTRING_AEVAL_UDP5=目标存活 +WESTRING_AEVAL_UDP5_HINT="此项为TRUE时,则目标扣除一定生命,施法者扣除相同的生命或魔法。此项为FALSE时,目标死亡,施法者恢复一定生命或魔法" +WESTRING_AEVAL_UAU1=移动速度增加(%) +WESTRING_AEVAL_UAU2=生命回复增加 +WESTRING_AEVAL_EEV1=闪避几率 +WESTRING_AEVAL_EIM1=伤害/间隔时间 +WESTRING_AEVAL_EIM2=每秒魔法消耗 +WESTRING_AEVAL_EIM3=启动魔法需求 +WESTRING_AEVAL_EMB1=魔法燃烧值 +WESTRING_AEVAL_EMB2=数字显示延迟 +WESTRING_AEVAL_EMB3=数字显示时间 +WESTRING_AEVAL_EME1=普通形态单位 +WESTRING_AEVAL_EME2=变形参数 +WESTRING_AEVAL_EME3=高度调整时间 +WESTRING_AEVAL_EME4=着陆延迟时间 +WESTRING_AEVAL_EME5=变形生命值奖励 +WESTRING_AEVAL_AVE5=每秒生命回复 +WESTRING_AEVAL_EMEU=变化形态单位 +WESTRING_AEVAL_USL1=无敌时间 +WESTRING_AEVAL_UAV1=近战伤害偷取(%) +WESTRING_AEVAL_UCS1=伤害 +WESTRING_AEVAL_UCS2=最大伤害 +WESTRING_AEVAL_UCS3=距离 +WESTRING_AEVAL_UCS4=最终区域范围 +WESTRING_AEVAL_UIN1=伤害 +WESTRING_AEVAL_UIN2=单位持续时间 +WESTRING_AEVAL_UIN3=碰撞延迟 +WESTRING_AEVAL_UIN4=召唤单位类型 +WESTRING_AEVAL_OCL1=伤害 +WESTRING_AEVAL_OCL2=最大目标数量 +WESTRING_AEVAL_OCL3=目标伤害衰减 +WESTRING_AEVAL_OEQ1=效果延迟 +WESTRING_AEVAL_OEQ2=每秒对建筑伤害 +WESTRING_AEVAL_OEQ3=单位减速(%) +WESTRING_AEVAL_OEQ4=最终区域范围 +WESTRING_AEVAL_OSF1=召唤单位类型 +WESTRING_AEVAL_OSF2=召唤单位数量 +WESTRING_AEVAL_EER1=每秒伤害 +WESTRING_AEVAL_EFN1=召唤单位数量 +WESTRING_AEVAL_EFNU=召唤单位类型 +WESTRING_AEVAL_EAH1=近战伤害反弹(%) +WESTRING_AEVAL_EAH1_HINT="按此次攻击力反射,法术攻击" +WESTRING_AEVAL_EAH2=按百分比反弹 +WESTRING_AEVAL_ETQ1=治疗生命值 +WESTRING_AEVAL_ETQ2=治疗间隔 +WESTRING_AEVAL_ETQ3=建筑伤害参数(无效) +WESTRING_AEVAL_UDD1=每秒损耗生命百分比(%) +WESTRING_AEVAL_UDD2=建筑伤害参数(无效) +WESTRING_AEVAL_UFA1=护甲持续时间 +WESTRING_AEVAL_UFA2=防御奖励 +WESTRING_AEVAL_UFN1=范围目标伤害 +WESTRING_AEVAL_UFN2=特定目标伤害 +WESTRING_AEVAL_HFA1=伤害奖励 +WESTRING_AEVAL_EST1=召唤单位类型 +WESTRING_AEVAL_ESF1=伤害 +WESTRING_AEVAL_ESF2=伤害间隔 +WESTRING_AEVAL_ESF3=建筑伤害参数(%) +WESTRING_AEVAL_EAR1=伤害奖励(%) +WESTRING_AEVAL_HAV1=防御奖励 +WESTRING_AEVAL_HAV2=生命值奖励 +WESTRING_AEVAL_HAV3=伤害奖励 +WESTRING_AEVAL_HAV4=魔法伤害减少(无效) +WESTRING_AEVAL_HBH1=重击几率 +WESTRING_AEVAL_HBH1_HINT="使用伪随机,只能向取5的倍数取整,超过25%的概率开始不准确." +WESTRING_AEVAL_HBH2=伤害倍数 +WESTRING_AEVAL_HBH3=伤害奖励 +WESTRING_AEVAL_HBH4=闪避几率 +WESTRING_AEVAL_HTB1=伤害 +WESTRING_AEVAL_HTC1=范围伤害 +WESTRING_AEVAL_HTC2=指定目标伤害 +WESTRING_AEVAL_HTC2_HINT="是对召唤生物的额外伤害" +WESTRING_AEVAL_HTC3=移动速度减少(%) +WESTRING_AEVAL_HTC4=攻击速度减少(%) +WESTRING_AEVAL_HAD1=防御奖励 +WESTRING_AEVAL_HHB1=治疗数值 +WESTRING_AEVAL_HRE1=复活单位数量 +WESTRING_AEVAL_HRE2=复活单位是无敌的 +WESTRING_AEVAL_HCA1=附加伤害 +WESTRING_AEVAL_HCA2=移动速度减少(%) +WESTRING_AEVAL_HCA3=攻击速度减少(%) +WESTRING_AEVAL_HCA4=叠加参数 +WESTRING_AEVAL_OAE1=移动速度增加(%) +WESTRING_AEVAL_OAE2=攻击速度增加(%) +WESTRING_AEVAL_ORE1=重生延迟 +WESTRING_AEVAL_OSH1=伤害 +WESTRING_AEVAL_OSH2=最大伤害 +WESTRING_AEVAL_OSH3=距离 +WESTRING_AEVAL_OSH4=最终区域范围 +WESTRING_AEVAL_NFD1=效果延迟 +WESTRING_AEVAL_NFD1_HINT="效果淡入时间,取值0到1" +WESTRING_AEVAL_NFD2=效果持续时间 +WESTRING_AEVAL_NFD3=伤害 +WESTRING_AEVAL_NDP1=召唤单位类型 +WESTRING_AEVAL_NDP2=最小单位数 +WESTRING_AEVAL_NDP3=最大单位数 +WESTRING_AEVAL_NRC1=关联技能 +WESTRING_AEVAL_NRC1_HINT="坑爹项,通常只关联地狱火,很难关联其他召唤技能" +WESTRING_AEVAL_NRC2=创建单位数量 +WESTRING_AEVAL_AMS1=对召唤单位伤害 +WESTRING_AEVAL_AMS2=魔法伤害减少(无效) +WESTRING_AEVAL_AMS3=护盾生命 +WESTRING_AEVAL_APL1=瘟疫效果持续时间 +WESTRING_AEVAL_APL2=每秒伤害 +WESTRING_AEVAL_APL3=瘟疫守卫持续时间 +WESTRING_AEVAL_APLU=瘟疫守卫单位类型 +WESTRING_AEVAL_OAR1=每秒生命回复 +WESTRING_AEVAL_OAR2=按百分比回复 +WESTRING_AEVAL_AKB1=攻击伤害增加 +WESTRING_AEVAL_ADM1=目标魔法损耗 +WESTRING_AEVAL_ADM2=对召唤单位伤害 +WESTRING_AEVAL_BTL1=允许单位类型 +WESTRING_AEVAL_BTL2=召集非空闲单位 +WESTRING_AEVAL_BLI1=扩张范围 +WESTRING_AEVAL_BLI1="以地图上的格数为单位,即向32的倍数取整" +WESTRING_AEVAL_BLI2=创建荒芜地表 +WESTRING_AEVAL_BLI2_HINT="决定是在区域内创建还是驱散荒芜之地。PS:<荒芜之地的置放>技能只能作为物品技能。" +WESTRING_AEVAL_BGM1=采集黄金数/间隔 +WESTRING_AEVAL_BGM2=采集间隔时间 +WESTRING_AEVAL_BGM3=最大矿工数量 +WESTRING_AEVAL_BGM4=采集环形半径 +WESTRING_AEVAL_BLO1=攻击速度增加(%) +WESTRING_AEVAL_BLO2=移动速度增加(%) +WESTRING_AEVAL_BLO3=模型放大比例 +WESTRING_AEVAL_CAN1=每秒恢复生命 +WESTRING_AEVAL_CAN2=最大恢复生命 +WESTRING_AEVAL_CAR1=装载容量 +WESTRING_AEVAL_DEV2=每秒伤害 +WESTRING_AEVAL_DEV3=最大目标中立生物等级 +WESTRING_AEVAL_CHD1=移动速度更新次数 +WESTRING_AEVAL_CHD2=攻击速度更新次数 +WESTRING_AEVAL_CHD3=对召唤单位伤害(无效) +WESTRING_AEVAL_CHA1=替换单位类型 +WESTRING_AEVAL_CRI1=移动速度减少(%) +WESTRING_AEVAL_CRI2=攻击速度减少(%) +WESTRING_AEVAL_CRI3=伤害减少(%) +WESTRING_AEVAL_CRS1=失误几率(%) +WESTRING_AEVAL_DDA1=全伤害范围 +WESTRING_AEVAL_DDA2=全伤害数值 +WESTRING_AEVAL_DDA3=部分伤害范围 +WESTRING_AEVAL_DDA4=部分伤害数值 +WESTRING_AEVAL_SDS5=建筑伤害参数(%) +WESTRING_AEVAL_DEF1=所受穿刺伤害(%) +WESTRING_AEVAL_DEF2=伤害倍乘(%) +WESTRING_AEVAL_DEF3=移动速度减少(%) +WESTRING_AEVAL_DEF3_HINT="防御(物品)和艾露恩的赐福此项无效" +WESTRING_AEVAL_DEF4=攻击速度减少(%) +WESTRING_AEVAL_DEF4_HINT="防御(物品)和艾露恩的赐福此项无效" +WESTRING_AEVAL_DEF5=所受魔法伤害(%) +WESTRING_AEVAL_DEF5_HINT="可以减少魔法攻击和法术攻击" +WESTRING_AEVAL_DEV1=最大目标中立生物等级 +WESTRING_AEVAL_EAT1=技能延迟 +WESTRING_AEVAL_EAT2=吞食延迟 +WESTRING_AEVAL_EAT3=总恢复生命值 +WESTRING_AEVAL_ENS1=空中单位坠落时间 +WESTRING_AEVAL_ENS2=空中单位高度 +WESTRING_AEVAL_ENS3=近战攻击范围 +WESTRING_AEVAL_ENT1=新单位类型 +WESTRING_AEVAL_EGM1=采集黄金数/间隔 +WESTRING_AEVAL_EGM2=间隔时间 +WESTRING_AEVAL_FAE1=防御减少 +WESTRING_AEVAL_FAE2=总是自动施放 +WESTRING_AEVAL_FLA1=侦察类型 +WESTRING_AEVAL_FLA1_HINT="未发现作用" +WESTRING_AEVAL_FLA2=效果延迟 +WESTRING_AEVAL_FLA3=闪光弹数量 +WESTRING_AEVAL_FLA3_HINT="决定一个单位能用几次此技能" +WESTRING_AEVAL_GLD1=最大黄金数量 +WESTRING_AEVAL_GLD2=采矿持续时间 +WESTRING_AEVAL_GLD3=最大矿工容量 +WESTRING_AEVAL_GYD1=最大尸体数量 +WESTRING_AEVAL_GYD2=墓碑范围 +WESTRING_AEVAL_GYD3=尸体范围 +WESTRING_AEVAL_GYDU=尸体单位类型 +WESTRING_AEVAL_HAR1=对树伤害 +WESTRING_AEVAL_HAR2=木材容量 +WESTRING_AEVAL_HAR3=金子容量 +WESTRING_AEVAL_HEA1=治疗生命值 +WESTRING_AEVAL_INF1=攻击增加(%) +WESTRING_AEVAL_INF2=防御增加 +WESTRING_AEVAL_INF3=自动施法范围 +WESTRING_AEVAL_INF4=生命恢复速度 +WESTRING_AEVAL_LIT1=效果延迟 +WESTRING_AEVAL_LIT1_HINT="闪电效果淡入时间,取值0到1" +WESTRING_AEVAL_LIT2=效果持续时间 +WESTRING_AEVAL_LIT2_HINT="闪电效果持续时间,取值0到1" +WESTRING_AEVAL_LSH1=每秒伤害 +WESTRING_AEVAL_LOA1=允许单位类型 +WESTRING_AEVAL_MBT1=恢复每点魔法所需魔法值 +WESTRING_AEVAL_MBT2=恢复每点生命所需魔法值 +WESTRING_AEVAL_MBT3=自动施法魔法要求 +WESTRING_AEVAL_MBT4=水面高度 +WESTRING_AEVAL_MBT5=只能在夜间回复 +WESTRING_AEVAL_MIL1=普通形态单位 +WESTRING_AEVAL_MIL2=变化形态单位 +WESTRING_AEVAL_MIN1=激活延迟 +WESTRING_AEVAL_NEU1=激活范围 +WESTRING_AEVAL_NEU2=选择单位类型 +WESTRING_AEVAL_NEU3=显示选择单位按钮 +WESTRING_AEVAL_NEU4=显示单位指示器 +WESTRING_AEVAL_NDT1=黄金消耗 +WESTRING_AEVAL_NDT2=木材消耗 +WESTRING_AEVAL_NDT3=侦察类型 +WESTRING_AEVAL_NDT3_HINT="未发现作用" +WESTRING_AEVAL_ANS5=基础命令ID +WESTRING_AEVAL_ANS5_HINT=按住shift双击再输入的非命令ID的自定值无效 +WESTRING_AEVAL_ANS6=向技能拥有者收费 +WESTRING_AEVAL_NRE1=每秒恢复值 +WESTRING_AEVAL_NRE2=按百分比恢复 +WESTRING_AEVAL_POI1=每秒伤害 +WESTRING_AEVAL_POI2=移动速度减少(%) +WESTRING_AEVAL_POI3=攻击速度减少(%) +WESTRING_AEVAL_POI4=叠加类型 +WESTRING_AEVAL_POA1=额外伤害 +WESTRING_AEVAL_POA2=WESTRING_AEVAL_POI1 +WESTRING_AEVAL_POA3=WESTRING_AEVAL_POI2 +WESTRING_AEVAL_POA4=WESTRING_AEVAL_POI3 +WESTRING_AEVAL_POA5=WESTRING_AEVAL_POI4 +WESTRING_AEVAL_PLY1=最大目标中立生物等级 +WESTRING_AEVAL_PLY2=变形单位 - 地面 +WESTRING_AEVAL_PLY3=变形单位 - 空中 +WESTRING_AEVAL_PLY4=变形单位 - 两栖 +WESTRING_AEVAL_PLY5=变形单位 - 水中 +WESTRING_AEVAL_POS1=最大目标中立生物等级 +WESTRING_AEVAL_POS2=施法时所受伤害值 +WESTRING_AEVAL_POS3=目标无敌 +WESTRING_AEVAL_POS4=目标魔法免疫 +WESTRING_AEVAL_WAR1=施放几率(%) +WESTRING_AEVAL_WAR2=附加伤害 +WESTRING_AEVAL_WAR3=全伤害范围 +WESTRING_AEVAL_WAR4=半伤害范围 +WESTRING_AEVAL_PRG1=移动速度更新次数 +WESTRING_AEVAL_PRG2=攻击速度更新次数 +WESTRING_AEVAL_PRG3=对召唤单位伤害 +WESTRING_AEVAL_PRG4=单位麻痹时间 +WESTRING_AEVAL_PRG5=英雄麻痹时间 +WESTRING_AEVAL_RAI1=单位召唤数量1 +WESTRING_AEVAL_RAI2=单位召唤数量2 +WESTRING_AEVAL_RAI3=单位召唤类型1 +WESTRING_AEVAL_RAI4=单位召唤类型2 +WESTRING_AEVAL_RAIU=单位类型限制检查 +WESTRING_AEVAL_UCB5=最大召唤数量 +WESTRING_AEVAL_REJ1=生命值恢复 +WESTRING_AEVAL_REJ2=魔法值恢复 +WESTRING_AEVAL_REJ3=选项完整时可用 +WESTRING_AEVAL_REJ4=只对自己施放 +WESTRING_AEVAL_RPB3=最小生命需求 +WESTRING_AEVAL_RPB4=最小魔法需求 +WESTRING_AEVAL_RPB5=最多消耗魔法倍数 +WESTRING_AEVAL_RPB6=最多可影响到的单位 +WESTRING_AEVAL_REP1=修理费用比率 +WESTRING_AEVAL_REP2=修理时间比率 +WESTRING_AEVAL_REP3=快速建造费用比率 +WESTRING_AEVAL_REP4=快速建造时间比率 +WESTRING_AEVAL_REP5=海上修理范围提升 +WESTRING_AEVAL_RTN1=接受黄金 +WESTRING_AEVAL_RTN2=接受木材 +WESTRING_AEVAL_ROA1=攻击增加(%) +WESTRING_AEVAL_ROA2=防御增加 +WESTRING_AEVAL_ROA3=生命恢复速度 +WESTRING_AEVAL_NBR1=攻击增加 +WESTRING_AEVAL_ROO1=扎根攻击模式 +WESTRING_AEVAL_ROO2=拔根攻击模式 +WESTRING_AEVAL_ROO3=扎根可转向 +WESTRING_AEVAL_ROO4=拔根防御模式 +WESTRING_AEVAL_SAL1=掠夺比率 +WESTRING_AEVAL_SAL2=积聚等级 +WESTRING_AEVAL_SAL2_HINT="每当积累的掠夺资源数到达积聚等级时则为拥有者增加资源" +WESTRING_AEVAL_ESN1=飞行视野范围 +WESTRING_AEVAL_ESN2=盘据视野范围 +WESTRING_AEVAL_ESN3=盘据高度 +WESTRING_AEVAL_ESN4=猫头鹰数量 +WESTRING_AEVAL_SHM1=淡化转换时间 +WESTRING_AEVAL_SHM2=昼夜交替转换时间 +WESTRING_AEVAL_SHM3=行动转换时间 +WESTRING_AEVAL_SLO1=降低移动速度(%) +WESTRING_AEVAL_SLO1_HINT="龙卷风此项为增加" +WESTRING_AEVAL_SLO2=降低攻击速度(%) +WESTRING_AEVAL_SLO2_HINT="龙卷风此项为增加" +WESTRING_AEVAL_SLO3=总是自动施放 +WESTRING_AEVAL_SPO1=每秒伤害 +WESTRING_AEVAL_SPO2=降低移动速度(%) +WESTRING_AEVAL_SPO3=降低攻击速度(%) +WESTRING_AEVAL_SPO4=叠加类型 +WESTRING_AEVAL_SOD1=单位数量 +WESTRING_AEVAL_SOD2=单位类型 +WESTRING_AEVAL_SPA1=蜘蛛数量 +WESTRING_AEVAL_STA1=激活延迟 +WESTRING_AEVAL_STA2=侦察范围 +WESTRING_AEVAL_STA3=爆炸范围 +WESTRING_AEVAL_STA4=晕眩持续时间 +WESTRING_AEVAL_STAU=守卫单位类型 +WESTRING_AEVAL_UHF1=攻击速度奖励(%) +WESTRING_AEVAL_UHF2=每秒伤害 +WESTRING_AEVAL_WHA1=采集木材数/间隔 +WESTRING_AEVAL_WHA2=间隔时间 +WESTRING_AEVAL_WHA3=附着点高度 +WESTRING_AEVAL_WRP1=传送区域宽度 +WESTRING_AEVAL_WRP2=传送区域高度 +WESTRING_AEVAL_IAGI=敏捷奖励 +WESTRING_AEVAL_IINT=智力奖励 +WESTRING_AEVAL_ISTR=力量奖励 +WESTRING_AEVAL_IHID=隐藏按钮 +WESTRING_AEVAL_IATT=攻击奖励 +WESTRING_AEVAL_IDEF=防御奖励 +WESTRING_AEVAL_ISN1=召唤单位数量1 +WESTRING_AEVAL_IST1=召唤单位类型1 +WESTRING_AEVAL_ISN2=召唤单位数量2 +WESTRING_AEVAL_IST2=召唤单位类型2 +WESTRING_AEVAL_IXPG=取得经验值 +WESTRING_AEVAL_IHPG=生命值恢复 +WESTRING_AEVAL_IMPG=魔法值恢复 +WESTRING_AEVAL_IAOE=影响范围 +WESTRING_AEVAL_IVAM=攻击偷取生命(%) +WESTRING_AEVAL_IDIC=攻击奖励 +WESTRING_AEVAL_IARP=目标防御降低 +WESTRING_AEVAL_IDAM=附加伤害 +WESTRING_AEVAL_IOB2=击中单位几率(%) +WESTRING_AEVAL_IOB3=击中英雄几率(%) +WESTRING_AEVAL_IOB4=击中召唤物几率(%) +WESTRING_AEVAL_IOB5=允许攻击索引 +WESTRING_AEVAL_IOB5_HINT="额外允许技能拥有者使用的攻击索引" +WESTRING_AEVAL_IOBU=效果技能 +WESTRING_AEVAL_ILEV=等级提升 +WESTRING_AEVAL_ILIF=增加最大生命值 +WESTRING_AEVAL_IMAN=增加最大魔法值 +WESTRING_AEVAL_IGOL=获得金钱 +WESTRING_AEVAL_ILUM=获得木材 +WESTRING_AEVAL_IDEL=目标效果延迟 +WESTRING_AEVAL_ICRE=最大目标中立生物等级 +WESTRING_AEVAL_IMVF=移动速度更新次数 +WESTRING_AEVAL_IATF=攻击速度更新次数 +WESTRING_AEVAL_IDMS=对召唤单位伤害 +WESTRING_AEVAL_IMVB=移动速度奖励 +WESTRING_AEVAL_IHPR=每秒生命回复 +WESTRING_AEVAL_ISIB=视野范围奖励 +WESTRING_AEVAL_ISIB_HINT="使用负数来减少,对于拥有真视技能的单位不能减少" +WESTRING_AEVAL_ICFD=伤害/间隔 +WESTRING_AEVAL_ICFM=每秒消耗魔法 +WESTRING_AEVAL_ICFX=额外魔法需求 +WESTRING_AEVAL_IDET=侦察范围 +WESTRING_AEVAL_IDIM=每个单位魔法损耗 +WESTRING_AEVAL_IDID=对召唤单位伤害 +WESTRING_AEVAL_IILD=施加伤害(%) +WESTRING_AEVAL_IILW=受到伤害倍数 +WESTRING_AEVAL_IREC=最大单位数 +WESTRING_AEVAL_IMRP=魔法回复奖励 +WESTRING_AEVAL_IRCD=重生延迟 +WESTRING_AEVAL_IRC2=生命值回复 +WESTRING_AEVAL_IRC3=魔法值回复 +WESTRING_AEVAL_IHPS=生命值回复 +WESTRING_AEVAL_IMPS=魔法值回复 +WESTRING_AEVAL_IREA=影响范围 +WESTRING_AEVAL_ISPI=移动速度增加(%) +WESTRING_AEVAL_ITPM=最大单位数 +WESTRING_AEVAL_IDPS=每秒伤害 +WESTRING_AEVAL_CAD1=复活死尸数量 +WESTRING_AEVAL_CAC1=攻击伤害增加(%) +WESTRING_AEVAL_COR1=每秒伤害 +WESTRING_AEVAL_ISX1=攻击速度增加(%) +WESTRING_AEVAL_WRS1=伤害 +WESTRING_AEVAL_WRS2=地形变形幅度 +WESTRING_AEVAL_WRS3=地形变形持续时间(毫秒) +WESTRING_AEVAL_CTC1=伤害 +WESTRING_AEVAL_CTC2=指定目标伤害 +WESTRING_AEVAL_CTC3=移动速度减少 +WESTRING_AEVAL_CTC4=攻击速度减少 +WESTRING_AEVAL_CTB1=伤害 +WESTRING_AEVAL_IBL1=创建单位(每个种族) +WESTRING_AEVAL_UDS1=传送单位数量 +WESTRING_AEVAL_UDS2=魔法施放延迟 +WESTRING_AEVAL_NDC1=允许转换种族 +WESTRING_AEVAL_NDC2=变化单位类型 +WESTRING_AEVAL_NSL1=可被保存单位 +WESTRING_AEVAL_CHL1=允许单位类型 +WESTRING_AEVAL_DET1=侦察类型 +WESTRING_AEVAL_DET1_HINT="未发现作用" +WESTRING_AEVAL_DTN1=范围目标魔法损耗 +WESTRING_AEVAL_DTN2=对召唤单位伤害 +WESTRING_AEVAL_ETH1=对变形效果免疫 +WESTRING_AEVAL_ETH2=不妨碍建造 +WESTRING_AEVAL_GHO1=自动获取攻击目标 +WESTRING_AEVAL_GHO2=WESTRING_AEVAL_ETH1 +WESTRING_AEVAL_GHO3=WESTRING_AEVAL_ETH2 +WESTRING_AEVAL_IVS1=转变时间 +WESTRING_AEVAL_NMR1=每秒魔法消耗 +WESTRING_AEVAL_NSP1=每次建造的金钱消耗 +WESTRING_AEVAL_NSP2=每次使用的木材消耗 +WESTRING_AEVAL_NSP3=侦察类型 +WESTRING_AEVAL_NSP3_HINT="未发现作用" +WESTRING_AEVAL_SSK1=减少伤害几率 (%) +WESTRING_AEVAL_SSK2=最小伤害 +WESTRING_AEVAL_SSK3=忽略伤害 +WESTRING_AEVAL_SSK4=远程伤害加成 +WESTRING_AEVAL_SSK5=近战伤害加成 +WESTRING_AEVAL_HFS1=全伤害数值 +WESTRING_AEVAL_HFS2=全伤害间隔 +WESTRING_AEVAL_HFS3=半伤害数值 +WESTRING_AEVAL_HFS4=半伤害间隔 +WESTRING_AEVAL_HFS5=建筑伤害因素(%) +WESTRING_AEVAL_HFS6=最大伤害输出 +WESTRING_AEVAL_NMS1=每点魔法抵消的伤害值 +WESTRING_AEVAL_NMS2=伤害吸收(%) +WESTRING_AEVAL_UIM1=波距离 +WESTRING_AEVAL_UIM2=波持续时间 +WESTRING_AEVAL_UIM3=施加伤害 +WESTRING_AEVAL_UIM4=空中停留时间 +WESTRING_AEVAL_ULS1=蝗虫群数量 +WESTRING_AEVAL_ULS2=单位释放间隔 +WESTRING_AEVAL_ULS3=每个目标最大蝗虫数量 +WESTRING_AEVAL_ULS4=生命偷取参数 +WESTRING_AEVAL_ULS4_HINT=每次蝗虫的攻击偷取的生命=生命偷取参数*该次攻击伤害 +WESTRING_AEVAL_ULS5=生命偷取极限 +WESTRING_AEVAL_ULS5_HINT=蝗虫累计的吸血量到达此值时则返回 +WESTRING_AEVAL_ULSU=蝗虫单位类型 +WESTRING_AEVAL_ULSU_HINT=必须有<蝗虫>技能 +WESTRING_AEVAL_UTS1=近战伤害反弹(%) +WESTRING_AEVAL_UTS1_HINT="法术攻击,魔法伤害,反射的是攻击力而非实际所受伤害值" +WESTRING_AEVAL_UTS2=所受近战伤害(%) +WESTRING_AEVAL_UTS3=防御奖励 +WESTRING_AEVAL_NBA1=伤害奖励 +WESTRING_AEVAL_NBA2=召唤单位数量 +WESTRING_AEVAL_NBA3=召唤单位持续时间 +WESTRING_AEVAL_NBAU=召唤单位类型 +WESTRING_AEVAL_NCH1=最大目标中立生物等级 +WESTRING_AEVAL_CMG2=召唤单位每点生命需要的魔法值 +WESTRING_AEVAL_NDR1=生命值汲取 +WESTRING_AEVAL_NDR2=魔法值汲取 +WESTRING_AEVAL_NDR3=汲取间隔 +WESTRING_AEVAL_NSI1=禁止类型 +WESTRING_AEVAL_NSI2=失误几率(%) +WESTRING_AEVAL_NSI3=移动速度减少(%) +WESTRING_AEVAL_NSI3_HINT="沉默魔法此项为移动速度增加(%)" +WESTRING_AEVAL_NSI4=攻击速度减少(%) +WESTRING_AEVAL_NSI4_HINT="沉默魔法此项为攻击速度增加(%)" +WESTRING_AEVAL_OFS1=侦察类型 +WESTRING_AEVAL_OFS1_HINT="未发现作用" +WESTRING_AEVAL_NTOU=召唤单位类型 +WESTRING_AEVAL_TDG1=每秒伤害 +WESTRING_AEVAL_TDG2=中范围半径 +WESTRING_AEVAL_TDG3=中范围每秒伤害 +WESTRING_AEVAL_TDG4=小范围半径 +WESTRING_AEVAL_TDG5=小范围每秒伤害 +WESTRING_AEVAL_TSP1=空中时间 +WESTRING_AEVAL_TSP2=最小间隔 +WESTRING_AEVAL_NBF5=每秒伤害 +WESTRING_AEVAL_EBL1=最大范围 +WESTRING_AEVAL_EBL2=最小范围 +WESTRING_AEVAL_EFK1=目标伤害 +WESTRING_AEVAL_EFK2=最大输出伤害 +WESTRING_AEVAL_EFK2_HINT="当累计造成总伤害(不计抗性)达到最大输出伤害时,随后被命中的单位受到伤害为0" +WESTRING_AEVAL_EFK3=最大目标数 +WESTRING_AEVAL_EFK3_HINT="该项决定最多向几个目标投射" +WESTRING_AEVAL_EFK4=最大速度调整 +WESTRING_AEVAL_EFK4_HINT="调整其对不同距离目标的速度,使这些单位被同时命中" +WESTRING_AEVAL_ESH1=持续伤害 +WESTRING_AEVAL_ESH2=移动速度减少 +WESTRING_AEVAL_ESH3=攻击速度减少 +WESTRING_AEVAL_ESH4=速度衰减幅度 +WESTRING_AEVAL_ESH5=初始伤害 +WESTRING_AEVAL_ESV1=召唤单位数量 +WESTRING_AEVAL_ESVU=召唤单位类型 +WESTRING_AEVAL_ABS1=最大生命吸收 +WESTRING_AEVAL_ABS2=最大魔法吸收 +WESTRING_AEVAL_BSK1=移动速度增加(%) +WESTRING_AEVAL_BSK2=攻击速度增加(%) +WESTRING_AEVAL_BSK3=所受伤害增加(%) +WESTRING_AEVAL_COAU=合成单位类型 +WESTRING_AEVAL_COA1=辅助单位类型 +WESTRING_AEVAL_COA2=向目标靠拢 +WESTRING_AEVAL_CYC1=可以被驱散 +WESTRING_AEVAL_DCP1=辅助单位类型一 +WESTRING_AEVAL_DCP2=辅助单位类型二 +WESTRING_AEVAL_DVM1=每个单位给予生命值 +WESTRING_AEVAL_DVM2=每个单位给予魔法值 +WESTRING_AEVAL_DVM3=每个Buff给予生命值 +WESTRING_AEVAL_DVM4=每个Buff给予魔法值 +WESTRING_AEVAL_DVM5=对召唤单位伤害 +WESTRING_AEVAL_DCH1=对召唤单位伤害 +WESTRING_AEVAL_DCH2=中伤害参数 +WESTRING_AEVAL_DCH3=小伤害参数 +WESTRING_AEVAL_EXH1=最大尸体数量 +WESTRING_AEVAL_EXHU=尸体单位类型 +WESTRING_AEVAL_FAK1=伤害奖励 +WESTRING_AEVAL_FAK2=中伤害参数 +WESTRING_AEVAL_FAK3=小伤害参数 +WESTRING_AEVAL_FAK4=全伤害范围 +WESTRING_AEVAL_FAK5=中伤害范围 +WESTRING_AEVAL_HWDU=守卫单位类型 +WESTRING_AEVAL_INV1=物品容量 +WESTRING_AEVAL_INV2=死亡掉落物品 +WESTRING_AEVAL_INV3=可以使用物品 +WESTRING_AEVAL_INV4=可以取得物品 +WESTRING_AEVAL_INV5=可以丢弃物品 +WESTRING_AEVAL_LIQ1=额外每秒伤害 +WESTRING_AEVAL_LIQ2=移动速度减少 +WESTRING_AEVAL_LIQ3=攻击速度减少 +WESTRING_AEVAL_LIQ4=修理允许 +WESTRING_AEVAL_MIM1=魔法伤害参数 +WESTRING_AEVAL_MFL1=单位 - 每点魔法造成的伤害 +WESTRING_AEVAL_MFL2=英雄 - 每点魔法造成的伤害 +WESTRING_AEVAL_MFL3=单位 - 最大伤害 +WESTRING_AEVAL_MFL4=英雄 - 最大伤害 +WESTRING_AEVAL_MFL5=护甲增加 +WESTRING_AEVAL_TPI1=要求单位类型 +WESTRING_AEVAL_TPI2=转换单位类型 +WESTRING_AEVAL_SPL1=分布伤害参数 +WESTRING_AEVAL_SPL2=最大目标数 +WESTRING_AEVAL_IRL1=生命回复 +WESTRING_AEVAL_IRL2=魔法回复 +WESTRING_AEVAL_IRL3=选项完整时可用 +WESTRING_AEVAL_IRL4=只对自己施放 +WESTRING_AEVAL_IRL5=被攻击时驱散效果 +WESTRING_AEVAL_IDC1=每个单位魔法损耗 +WESTRING_AEVAL_IDC2=对召唤单位伤害 +WESTRING_AEVAL_IDC3=最大驱散单位数量 +WESTRING_AEVAL_IMO1=陷阱数量 +WESTRING_AEVAL_IMO2=激活延迟 +WESTRING_AEVAL_IMO3=引诱间隔 +WESTRING_AEVAL_IMOU=陷阱单位类型 +WESTRING_AEVAL_ICT1=设置游戏时间 - 时 +WESTRING_AEVAL_ICT2=设置游戏时间 - 分 +WESTRING_AEVAL_ISR1=伤害奖励 +WESTRING_AEVAL_ISR2=魔法伤害减少 +WESTRING_AEVAL_IPV1=伤害奖励 +WESTRING_AEVAL_IPV2=生命偷取值 +WESTRING_AEVAL_IPV3=使用原始值 +WESTRING_AEVAL_MEC1=创建单位数量 +WESTRING_AEVAL_SPB1=法术列表 +WESTRING_AEVAL_SPB2=共享法术CD间隔 +WESTRING_AEVAL_SPB3=最小法术数量 +WESTRING_AEVAL_SPB4=最大法术数量 +WESTRING_AEVAL_SPB5=基础命令ID +WESTRING_AEVAL_SPB5_HINT=该项相同的魔法书包含的技能会合并.按住shift双击再输入的非命令ID的自定值无效. +WESTRING_AEVAL_AST1=生命回复参数 +WESTRING_AEVAL_AST2=魔法回复参数 +WESTRING_AEVAL_GRA1=附加延迟 +WESTRING_AEVAL_GRA2=移除延迟 +WESTRING_AEVAL_GRA3=禁止攻击索引 +WESTRING_AEVAL_GRA4=允许攻击索引 +WESTRING_AEVAL_GRA5=最大攻击次数 +WESTRING_AEVAL_IPMU=单位类型 +WESTRING_AEVAL_NPR1=建筑类型允许 +WESTRING_AEVAL_NSA1=建筑类型允许 +WESTRING_AEVAL_NSA2=英雄回复延迟 +WESTRING_AEVAL_NSA3=单位回复延迟 +WESTRING_AEVAL_NSA4=魔法伤害参数 +WESTRING_AEVAL_NSA5=每秒生命恢复 +WESTRING_AEVAL_IAA1=攻击增加 +WESTRING_AEVAL_IXS1=对召唤单位伤害 +WESTRING_AEVAL_IXS2=魔法伤害减少 +WESTRING_AEVAL_NEF1=召唤单位类型 +WESTRING_AEVAL_NPA5=召唤单位数量 +WESTRING_AEVAL_NPA6=召唤单位持续时间 +WESTRING_AEVAL_IGL1=科技升级等级 +WESTRING_AEVAL_IGLU=科技类型 +WESTRING_AEVAL_NSE1=护盾CD间隔 +WESTRING_AEVAL_NDO1=每秒伤害 +WESTRING_AEVAL_NDO2=召唤单位数量 +WESTRING_AEVAL_NDO3=召唤单位持续时间 +WESTRING_AEVAL_NDOU=召唤单位类型 +WESTRING_AEVAL_FLK1=小伤害范围 +WESTRING_AEVAL_FLK2=中伤害范围 +WESTRING_AEVAL_FLK3=全伤害数值 +WESTRING_AEVAL_FLK4=中伤害数值 +WESTRING_AEVAL_FLK5=小伤害数值 +WESTRING_AEVAL_HBN1=移动速度减少(%) +WESTRING_AEVAL_HBN2=攻击速度减少(%) +WESTRING_AEVAL_FBK1=最大损耗魔法-单位 +WESTRING_AEVAL_FBK2=伤害比率-单位 +WESTRING_AEVAL_FBK3=最大损耗魔法-英雄 +WESTRING_AEVAL_FBK4=伤害比率-英雄 +WESTRING_AEVAL_NCA1=分裂伤害参数 +WESTRING_AEVAL_PXF1=初始伤害 +WESTRING_AEVAL_PXF2=每秒伤害 +WESTRING_AEVAL_MLS1=每秒伤害 +WESTRING_AEVAL_SLA1=睡眠一次 +WESTRING_AEVAL_SLA2=允许任意玩家 +WESTRING_AEVAL_NST1=每秒野兽数量 +WESTRING_AEVAL_NST2=野兽碰撞范围 +WESTRING_AEVAL_NST3=伤害数值 +WESTRING_AEVAL_NST4=伤害范围 +WESTRING_AEVAL_NST5=伤害延迟 +WESTRING_AEVAL_NCL1=施法持续时间 +WESTRING_AEVAL_NCL1_HINT=单位在施放技能后的暂停时间,一般只有引导技能才需要 +WESTRING_AEVAL_NCL2=目标类型 +WESTRING_AEVAL_NCL2_HINT="没有:无效选项;无目标:点击后直接施放;单位目标:点击技能后需指定一个单位施放;点目标:需指定地面一点施放" +WESTRING_AEVAL_NCL3=选项 +WESTRING_AEVAL_NCL3_HINT="目标选取图像:勾选后使用该技能的准星会变成一个圆面;单独施放:当你施放该技能时,你选中的单位只有一个施放." +WESTRING_AEVAL_NCL4=动作持续时间 +WESTRING_AEVAL_NCL4_HINT=如果动作持续时间小于施法动作做一遍的时间施放技能时就会无动作 +WESTRING_AEVAL_NCL5=使其他技能无效 +WESTRING_AEVAL_NCL5_HINT=可以让其他技能的图标在施放本技能时消失 +WESTRING_AEVAL_NCL6=基础命令ID +WESTRING_AEVAL_NCL6_HINT=该项不同的两个通魔技能互不冲突,按住shift双击再输入的非命令ID的自定值无效,部分ID列表未标出 +WESTRING_AEVAL_NAB1=移动速度增加(%) +WESTRING_AEVAL_NAB2=攻击速度增加(%) +WESTRING_AEVAL_NAB3=护甲减少 +WESTRING_AEVAL_NAB4=目标持续伤害数值 +WESTRING_AEVAL_NAB5=范围持续伤害数值 +WESTRING_AEVAL_NAB6=伤害间隔 +WESTRING_AEVAL_NHS6=医疗波数 +WESTRING_AEVAL_NTM1=黄金奖励参数 +WESTRING_AEVAL_NTM2=木材奖励参数 +WESTRING_AEVAL_NTM3=最大目标中立生物等级 +WESTRING_AEVAL_NTM4=附加杀敌奖励 +WESTRING_AEVAL_NEG1=移动速度奖励 +WESTRING_AEVAL_NEG2=攻击奖励 +WESTRING_AEVAL_NEG3=技能升级 1 +WESTRING_AEVAL_NEG4=技能升级 2 +WESTRING_AEVAL_NEG5=技能升级 3 +WESTRING_AEVAL_NEG6=技能升级 4 +WESTRING_AEVAL_NCS1=伤害数值 +WESTRING_AEVAL_NCS2=伤害间隔 +WESTRING_AEVAL_NCS3=导弹数量 +WESTRING_AEVAL_NCS3_HINT="实际数量和速度与此项及<射弹速度>无关,永远只花0.75秒到达" +WESTRING_AEVAL_NCS4=最高输出伤害 +WESTRING_AEVAL_NCS5=建筑物伤害参数 +WESTRING_AEVAL_NCS6=技能持续时间 +WESTRING_AEVAL_NCS6_HINT=大于冷却时间则会永久施放 +WESTRING_AEVAL_NSY1=生产单位间隔 +WESTRING_AEVAL_NSY2=生产单位ID +WESTRING_AEVAL_NSY3=生产单位持续时间 +WESTRING_AEVAL_NSY4=产生单位位移 +WESTRING_AEVAL_NSYU=工厂单位ID +WESTRING_AEVAL_NFY1=生产单位间隔 +WESTRING_AEVAL_NFYU=生产单位ID +WESTRING_AEVAL_NDE1=粉碎几率 +WESTRING_AEVAL_NDE2=伤害倍乘(建筑物) +WESTRING_AEVAL_NDE2_HINT=乘法叠加 +WESTRING_AEVAL_NDE3=伤害倍乘(单位) +WESTRING_AEVAL_NDE3_HINT=乘法叠加 +WESTRING_AEVAL_NDE4=伤害倍乘(英雄) +WESTRING_AEVAL_NDE4_HINT=乘法叠加 +WESTRING_AEVAL_NIC1=燃灰伤害值奖励 +WESTRING_AEVAL_NIC1_HINT=新建的燃灰技能此项无效 +WESTRING_AEVAL_NIC2=死亡伤害-全伤害 +WESTRING_AEVAL_NIC3=死亡伤害-全伤害范围 +WESTRING_AEVAL_NIC4=死亡伤害-半伤害 +WESTRING_AEVAL_NIC5=死亡伤害-半伤害范围 +WESTRING_AEVAL_NIC6=死亡伤害-延迟 +WESTRING_AEVAL_NSO1=伤害值 +WESTRING_AEVAL_NSO2=伤害周期 +WESTRING_AEVAL_NSO3=攻击减少 +WESTRING_AEVAL_NSO4=移动速度减少(%) +WESTRING_AEVAL_NSO5=攻击速度减少(%) +WESTRING_AEVAL_NLM2=分裂延迟 +WESTRING_AEVAL_NLM3=分裂所需攻击次数 +WESTRING_AEVAL_NLM4=最大生命值参数 +WESTRING_AEVAL_NLM5=分裂生命周期奖励 +WESTRING_AEVAL_NLM6=分裂代数 +WESTRING_AEVAL_NLM6_HINT="超过三代会出现模型问题" +WESTRING_AEVAL_NVC1=岩石数 +WESTRING_AEVAL_NVC2=波数 +WESTRING_AEVAL_NVC3=波间隔时间 +WESTRING_AEVAL_NVC4=建筑伤害参数(%) +WESTRING_AEVAL_NVC5=全伤害数值 +WESTRING_AEVAL_NVC6=半伤害参数 + +// Ability Editor Field Values +WESTRING_AE_ATTACKBITS_NONE=无 +WESTRING_AE_ATTACKBITS_ONE=攻击1 +WESTRING_AE_ATTACKBITS_TWO=攻击2 +WESTRING_AE_ATTACKBITS_BOTH=全部 + +// Buff Editor Fields +WESTRING_FEVAL_FNAM=名字(编辑器) +WESTRING_FEVAL_FNSF=编辑器后缀 +WESTRING_FEVAL_FTIP=工具提示 +WESTRING_FEVAL_FUBE=工具提示 - 扩展 +WESTRING_FEVAL_FART=图标 +WESTRING_FEVAL_FEFF=是区域效果 +WESTRING_FEVAL_FRAC=种族 +WESTRING_FEVAL_FTAT=效果 - 目标 +WESTRING_FEVAL_FSAT=效果 -特殊 +WESTRING_FEVAL_FEAT=效果 - 点目标 +WESTRING_FEVAL_FLIG=效果 - 闪电效果 +WESTRING_FEVAL_FMAT=效果 - 投射物图像 +WESTRING_FEVAL_FMSP=效果 - 射弹速度 +WESTRING_FEVAL_FMAC=效果 - 射弹弧度 +WESTRING_FEVAL_FMAC_HINT="射弹弧度=射弹抛物线最大高度/平面位移距离" +WESTRING_FEVAL_FMHO=效果 - 射弹自导允许 +WESTRING_FEVAL_FMHO="设置箭矢是否跟踪目标" +WESTRING_FEVAL_FTAC=效果 - 目标 - 附加数量 +WESTRING_FEVAL_FTA0=效果 - 目标附加点1 +WESTRING_FEVAL_FTA1=效果 - 目标附加点2 +WESTRING_FEVAL_FTA2=效果 - 目标附加点3 +WESTRING_FEVAL_FTA3=效果 - 目标附加点4 +WESTRING_FEVAL_FTA4=效果 - 目标附加点5 +WESTRING_FEVAL_FTA5=效果 - 目标附加点6 +WESTRING_FEVAL_FEFT=效果 - 点目标附加点 +WESTRING_FEVAL_FSPT=效果 -特殊附加点 +WESTRING_FEVAL_FEFS=声音效果 +WESTRING_FEVAL_FEFL=声音效果(循环) +WESTRING_FEVAL_FSPD=效果显示需求 + +// Upgrade Editor Fields +WESTRING_GEVAL_LVL=等级 %d +WESTRING_GEVAL_GNAM=名字 +WESTRING_GEVAL_GNSF=编辑器后缀 +WESTRING_GEVAL_GTP1=提示工具 +WESTRING_GEVAL_GUB1=提示工具 - 扩展 +WESTRING_GEVAL_GHK1=热键 +WESTRING_GEVAL_GBPX=按钮位置(X) +WESTRING_GEVAL_GBPY=按钮位置(Y) +WESTRING_GEVAL_GBPX_HINT="研究时科技按钮的排列横坐标(0,1,2,3)." +WESTRING_GEVAL_GBPY_HINT="研究时科技按钮的排列纵坐标(0,1,2)." +WESTRING_GEVAL_GAR1=图标 +WESTRING_GEVAL_GCLS=升级类型 +WESTRING_GEVAL_GLVL=等级 +WESTRING_GEVAL_GGLB=基础黄金消耗 +WESTRING_GEVAL_GGLM=每等级增加黄金 +WESTRING_GEVAL_GLMB=基础木材消耗 +WESTRING_GEVAL_GLMM=每等级增加木材 +WESTRING_GEVAL_GTIB=基础时间消耗 +WESTRING_GEVAL_GTIM=每等级增加时间 +WESTRING_GEVAL_GEF1=效果 1 +WESTRING_GEVAL_GBA1=效果 1 - %s +WESTRING_GEVAL_GMO1=效果 1 - %s +WESTRING_GEVAL_GCO1=效果 1 - %s +WESTRING_GEVAL_GEF2=效果 2 +WESTRING_GEVAL_GBA2=效果 2 - %s +WESTRING_GEVAL_GMO2=效果 2 - %s +WESTRING_GEVAL_GCO2=效果 2 - %s +WESTRING_GEVAL_GEF3=效果 3 +WESTRING_GEVAL_GBA3=效果 3 - %s +WESTRING_GEVAL_GMO3=效果 3 - %s +WESTRING_GEVAL_GCO3=效果 3 - %s +WESTRING_GEVAL_GEF4=效果 4 +WESTRING_GEVAL_GBA4=效果 4 - %s +WESTRING_GEVAL_GMO4=效果 4 - %s +WESTRING_GEVAL_GCO4=效果 4 - %s +WESTRING_GEVAL_GINH=可随单位转移所有者 +WESTRING_GEVAL_GINH_HINT=转移单位所属同时能使玩家获得该单位的科技升级. +WESTRING_GEVAL_GREQ=需求 +WESTRING_GEVAL_GRQC=需求值 +WESTRING_GEVAL_GRAC=种族 +WESTRING_GEVAL_GLOB=只应用于之后生产的单位 + +// Upgrade Effect Fields +WESTRING_EEVAL_ATDB=攻击骰子数奖励 - 基础 +WESTRING_EEVAL_ATDM=攻击骰子数奖励 - 增量 +WESTRING_EEVAL_LEVB=技能等级奖励 - 基础 +WESTRING_EEVAL_LEVM=技能等级奖励 - 增量 +WESTRING_EEVAL_LEVC=技能影响 +WESTRING_EEVAL_HPXB=生命值奖励 - 基础 +WESTRING_EEVAL_HPXM=生命值奖励 - 增量 +WESTRING_EEVAL_MNXB=魔法值奖励 - 基础 +WESTRING_EEVAL_MNXM=魔法值奖励 - 增量 +WESTRING_EEVAL_MVXB=移动速度奖励 - 基础 +WESTRING_EEVAL_MVXM=移动速度奖励 - 增量 +WESTRING_EEVAL_MNRB=魔法回复奖励(%) - 基础 +WESTRING_EEVAL_MNRM=魔法回复奖励(%) - 增量 +WESTRING_EEVAL_HPOB=生命值奖励(%) - 基础 +WESTRING_EEVAL_HPOM=生命值奖励(%) - 增量 +WESTRING_EEVAL_MANB=魔法值奖励(%) - 基础 +WESTRING_EEVAL_MANM=魔法值奖励(%) - 增量 +WESTRING_EEVAL_MOVB=移动速度奖励(%) - 基础 +WESTRING_EEVAL_MOVM=移动速度奖励(%) - 增量 +WESTRING_EEVAL_ATXB=攻击伤害奖励 - 基础 +WESTRING_EEVAL_ATXM=攻击伤害奖励 - 增量 +WESTRING_EEVAL_LUMB=木材采集奖励 - 基础 +WESTRING_EEVAL_LUMM=木材采集奖励 - 增量 +WESTRING_EEVAL_ATRB=攻击射程奖励 - 基础 +WESTRING_EEVAL_ATRM=攻击射程奖励 - 增量 +WESTRING_EEVAL_ATSB=攻击速度奖励(%) - 基础 +WESTRING_EEVAL_ATSM=攻击速度奖励(%) - 增量 +WESTRING_EEVAL_SPIB=尖刺反弹伤害 - 基础 +WESTRING_EEVAL_SPIM=尖刺反弹伤害 - 增量 +WESTRING_EEVAL_HPRB=生命回复奖励 (%) - 基础 +WESTRING_EEVAL_HPRM=生命回复奖励 (%) - 增量 +WESTRING_EEVAL_SIGB=视野范围奖励 - 基础 +WESTRING_EEVAL_SIGM=视野范围奖励 - 增量 +WESTRING_EEVAL_ATCB=攻击目标数量奖励 - 基础 +WESTRING_EEVAL_ATCM=攻击目标数量奖励 - 增量 +WESTRING_EEVAL_ADLB=攻击伤害衰减奖励 - 基础 +WESTRING_EEVAL_ADLM=攻击伤害衰减奖励 - 增量 +WESTRING_EEVAL_MINB=黄金采集奖励 - 基础 +WESTRING_EEVAL_MINM=黄金采集奖励 - 增量 +WESTRING_EEVAL_RAIB=复活死尸持续时间奖励 - 基础 +WESTRING_EEVAL_RAIM=复活死尸持续时间奖励 - 增量 +WESTRING_EEVAL_ENTB=黄金采集奖励(缠绕) - 基础 +WESTRING_EEVAL_ENTM=黄金采集奖励(缠绕) - 增量 +WESTRING_EEVAL_ENWB=攻击允许 +WESTRING_EEVAL_AUDB=光环数据奖励 - 基础 +WESTRING_EEVAL_AUDM=光环数据奖励 - 增量 +WESTRING_EEVAL_ASDB=穿透攻击距离奖励 - 基础 +WESTRING_EEVAL_ASDM=穿透攻击距离奖励 - 增量 +WESTRING_EEVAL_ASRB=穿透攻击范围奖励 - 基础 +WESTRING_EEVAL_ASRM=穿透攻击范围奖励 - 增量 +WESTRING_EEVAL_ROOB=攻击允许(扎根) +WESTRING_EEVAL_UROB=攻击允许(拔起) +WESTRING_EEVAL_UART=新防御类型 +WESTRING_EEVAL_UTMA=新可用性 +WESTRING_EEVAL_TTMA=受影响的单位类型 + +// Upgrade Editor Field Values +WESTRING_GE_UPGRADECLASS_NONE=没有 +WESTRING_GE_UPGRADECLASS_ARMOR=装甲 +WESTRING_GE_UPGRADECLASS_ARTILLERY=炮火 +WESTRING_GE_UPGRADECLASS_MELEE=近战 +WESTRING_GE_UPGRADECLASS_RANGED=远程 +WESTRING_GE_UPGRADECLASS_CASTER=魔法 + +WESTRING_GE_UPGRADEEFFECT_ARMOR=应用防御升级奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACK=应用攻击升级奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKEX=攻击伤害奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKDMGLOSS=攻击伤害衰减奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKDICE=攻击骰子数奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKRANGE=攻击射程奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKSPEED=攻击速度奖励(%) +WESTRING_GE_UPGRADEEFFECT_ATTACKSPILLDST=穿透攻击距离奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKSPILLRAD=穿透攻击范围奖励 +WESTRING_GE_UPGRADEEFFECT_ATTACKTARGCOUNT=攻击目标数量奖励 +WESTRING_GE_UPGRADEEFFECT_AURADATA=光环数据奖励 +WESTRING_GE_UPGRADEEFFECT_ENABLEWEAPON=攻击允许 +WESTRING_GE_UPGRADEEFFECT_ENTANGLE=黄金采集奖励(缠绕) +WESTRING_GE_UPGRADEEFFECT_HITPOINTS=生命值奖励(%) +WESTRING_GE_UPGRADEEFFECT_HITPOINTSEX=生命值奖励 +WESTRING_GE_UPGRADEEFFECT_HITPOINTSREGEN=生命回复 +WESTRING_GE_UPGRADEEFFECT_LUMBERJACK=木材采集奖励 +WESTRING_GE_UPGRADEEFFECT_MAGICIMMUNITY=魔法免疫 +WESTRING_GE_UPGRADEEFFECT_MANA=魔法值奖励 (%) +WESTRING_GE_UPGRADEEFFECT_MANAEX=魔法值奖励 +WESTRING_GE_UPGRADEEFFECT_MANAREGEN=魔法回复 +WESTRING_GE_UPGRADEEFFECT_MINING=黄金采集奖励 +WESTRING_GE_UPGRADEEFFECT_MOVESPEED=移动速度奖励 (%) +WESTRING_GE_UPGRADEEFFECT_MOVESPEEDEX=移动速度奖励 +WESTRING_GE_UPGRADEEFFECT_RAISEDEAD=复活死尸持续时间奖励 +WESTRING_GE_UPGRADEEFFECT_ROOTWEAPONS=攻击允许(扎根) +WESTRING_GE_UPGRADEEFFECT_SIGHT=视野范围奖励 +WESTRING_GE_UPGRADEEFFECT_SPELL=技能等级奖励 +WESTRING_GE_UPGRADEEFFECT_SPIKES=尖刺障碍 +WESTRING_GE_UPGRADEEFFECT_UPROOTWEAPONS=攻击允许(拔起) +WESTRING_GE_UPGRADEEFFECT_UNITAVAILABLE=单位可用性更改 +WESTRING_GE_UPGRADEEFFECT_DEFENSETYPE=防御类型更改 +WESTRING_GE_UPGRADEEFFECT_ULTRAVISION=增加夜视能力 + +// Misc data fields +WESTRING_MISCVAL_GEXP=英雄EXP - 全球化分布 +WESTRING_MISCVAL_GEXP_HINT="当EXP取得范围内没有英雄时,是否将经验分配给其他英雄" +WESTRING_MISCVAL_BGXP=英雄EXP - 建筑杀死单位给予经验值 +WESTRING_MISCVAL_MHDX=英雄EXP - 最高等级英雄消耗经验值 +WESTRING_MISCVAL_DBST=建筑状态显示 +WESTRING_MISCVAL_DBST_HINT=设置建筑是否在状态栏下方显示魔法效果图标 +WESTRING_MISCVAL_DEIN=显示其它玩家物品栏 +WESTRING_MISCVAL_DEIN_HINT="该项为False将无法看到其他玩家的物品栏,除非得到其控制权." +WESTRING_MISCVAL_MHEL=英雄 - 最大等级 +WESTRING_MISCVAL_MULE=单位最大等级 +WESTRING_MISCVAL_MXPN=英雄EXP需求 - 列表 +WESTRING_MISCVAL_XPN1=英雄EXP需求 - 上一个值因数 +WESTRING_MISCVAL_XPN2=英雄EXP需求 - 等级因数 +WESTRING_MISCVAL_XPN3=英雄EXP需求 -固定因数 +WESTRING_MISCVAL_MHRC=英雄复活费用 - 黄金最大值 +WESTRING_MISCVAL_MHRC_HINT="复活消耗黄金 <= 黄金最大值" +WESTRING_MISCVAL_MHRL=英雄复活费用 -木材最大值 +WESTRING_MISCVAL_MHRL_HINT="复活消耗木材 <= 木材最大值" +WESTRING_MISCVAL_MHRT=英雄复活费用 - 时间最大值 +WESTRING_MISCVAL_MHRT_HINT="复活时间 <= 时间最大值" +WESTRING_MISCVAL_MHAC=英雄唤醒费用 - 黄金最大值 +WESTRING_MISCVAL_MHAC_HINT="唤醒消耗黄金 <= 黄金最大值" +WESTRING_MISCVAL_MHAL=英雄唤醒费用 -木材最大值 +WESTRING_MISCVAL_MHAL_HINT="唤醒消耗木材 <= 木材最大值" +WESTRING_MISCVAL_HRMS=英雄复活 -使用初始魔法值 +WESTRING_MISCVAL_HRMS_HINT=英雄被复活时是否使用单位编辑器中设置的初始魔法值. +WESTRING_MISCVAL_HRMF=英雄复活 - 魔法值因数 +WESTRING_MISCVAL_HRMF_HINT=当'使用初始魔法值'项为False时则使用该值. +WESTRING_MISCVAL_HRLF=英雄复活 - 生命值因数 +WESTRING_MISCVAL_HAMS=英雄唤醒 -使用初始魔法值 +WESTRING_MISCVAL_HAMS_HINT=英雄被唤醒时是否使用单位编辑器中设置的初始魔法值. +WESTRING_MISCVAL_HAMF=英雄唤醒 - 魔法值因数 +WESTRING_MISCVAL_HAMF_HINT=当'使用初始魔法值'项为False时则使用该值. +WESTRING_MISCVAL_HALF=英雄唤醒 - 生命值因数 +WESTRING_MISCVAL_BUBR=建筑荒芜地表驱散范围 +WESTRING_MISCVAL_BUBR_HINT=未发现作用 +WESTRING_MISCVAL_BCNR=中立生物 - 对建造建筑物的警戒范围 +WESTRING_MISCVAL_BCNR_HINT=未发现作用 +WESTRING_MISCVAL_NUNR=中立生物 - 对使用中立建筑的警戒范围 +WESTRING_MISCVAL_NUNR_HINT=未发现作用 +WESTRING_MISCVAL_FARR=迷雾展现范围 - 攻击 +WESTRING_MISCVAL_FARR_HINT=单位被视野之外敌人攻击时展现的攻击者所在地范围. +WESTRING_MISCVAL_DFRR=迷雾展现范围 - 死亡 +WESTRING_MISCVAL_DFRR_HINT="在白天单位死亡后展现的视野,以及在白天死亡的英雄未完成升天立即复活后所拥有的视野范围." +WESTRING_MISCVAL_BDET=衰退时间(秒)- 骨态尸体 +WESTRING_MISCVAL_BDET_HINT=单位死亡后骨态尸体持续时间 +WESTRING_MISCVAL_SDET=衰退时间(秒) - 建筑 +WESTRING_MISCVAL_SDET_HINT=建筑被破坏时残骸保留时间 +WESTRING_MISCVAL_DECT=衰退时间(秒)- 肉态尸体 +WESTRING_MISCVAL_DECT_HINT=单位死亡后肉态尸体持续时间 +WESTRING_MISCVAL_DIST=衰退时间(秒) -英雄消散 +WESTRING_MISCVAL_DIST_HINT=英雄升天效果持续时间 +WESTRING_MISCVAL_BUDT=衰退时间(秒) - 投射物 +WESTRING_MISCVAL_BUDT_HINT=射弹类攻击或魔法(如风暴之锤)击中目标时的动画效果持续时间. +WESTRING_MISCVAL_EFDT=衰退时间(秒) - 特效 +WESTRING_MISCVAL_EFDT_HINT="删除特效后,特效可以继续播放的时间." +WESTRING_MISCVAL_CADT=衰退时间(秒) - 取消 +WESTRING_MISCVAL_CADT_HINT=未发现作用 +WESTRING_MISCVAL_FFDT=衰退时间(秒) - 迷雾 +WESTRING_MISCVAL_FFDT_HINT=被攻击时展现攻击者所在地迷雾的持续时间. +WESTRING_MISCVAL_FOLR=跟随范围 - 单位 +WESTRING_MISCVAL_FOLR_HINT=跟随单位时所保持的距离. +WESTRING_MISCVAL_FOLS=跟随范围 - 建筑 +WESTRING_MISCVAL_FOLS_HINT="跟随建筑时所保持的距离,只对可移动的建筑有效,对古树无效." +WESTRING_MISCVAL_FOLI=跟随范围 - 物品 +WESTRING_MISCVAL_FOLI_HINT=捡取物品的检查范围.比如物品栏满的时候去捡取物品就会在该范围处停住. +WESTRING_MISCVAL_SCRB=魔法 -施法范围缓冲 +WESTRING_MISCVAL_SCRB_HINT="如果施法时间内目标跑出了施法范围+缓冲范围外则该次施法不成立." + + +WESTRING_MISCVAL_READ=攻击反应延迟 +WESTRING_MISCVAL_READ_HINT=单位发布攻击命令(或是发现攻击目标)到发动攻击之间的反应延迟. +WESTRING_MISCVAL_CHTM=战斗 - 失误几率 +WESTRING_MISCVAL_CHTM_HINT=远程单位攻击高地上单位时的命中失误几率. +WESTRING_MISCVAL_DAYL=时间 - 每日时间长度 +WESTRING_MISCVAL_DAYL_HINT=每日对应的真实时间秒数. +WESTRING_MISCVAL_DAWN=时间 - 黎明 +WESTRING_MISCVAL_DUSK=时间 -黄昏 +WESTRING_MISCVAL_DAYH=时间 - 每日的小时数 +WESTRING_MISCVAL_GMMG=金矿 - 最大储金量 +WESTRING_MISCVAL_GMMG_HINT="编辑器中允许设置的金矿最大储金量,不影响触发器的设置." +WESTRING_MISCVAL_HEXR=英雄EXP - 经验取得范围 +WESTRING_MISCVAL_RBFG=英雄复活费用 - 黄金基础因数 +WESTRING_MISCVAL_RBFG_HINT="复活消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_RLFG=英雄复活费用 - 黄金等级因数 +WESTRING_MISCVAL_RLFG_HINT="复活消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_RBFL=英雄复活费用 -木材基础因数 +WESTRING_MISCVAL_RBFL_HINT="复活消耗木材 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_RLFL=英雄复活费用 -木材等级因数 +WESTRING_MISCVAL_RLFL_HINT="复活消耗木材 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_RMAF=英雄复活费用 - 最大黄金/木材因数 +WESTRING_MISCVAL_RMAF_HINT="黄金/木材消费 <= 建造消费 * 最大黄金/木材因数" +WESTRING_MISCVAL_RBFT=英雄复活费用 - 时间因数 +WESTRING_MISCVAL_RBFT_HINT="复活时间 = 英雄建造时间 * 英雄等级 * 时间因数" +WESTRING_MISCVAL_RMTF=英雄复活费用 - 时间最大因数 +WESTRING_MISCVAL_RMTF_HINT="复活时间 <= 英雄建造时间 * 时间最大因数" +WESTRING_MISCVAL_AWBF=英雄唤醒费用 - 黄金基础因数 +WESTRING_MISCVAL_AWBF_HINT="唤醒消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_AWLF=英雄唤醒费用 - 黄金等级因数 +WESTRING_MISCVAL_AWLF_HINT="唤醒消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_AWBL=英雄唤醒费用 -木材基础因数 +WESTRING_MISCVAL_AWBL_HINT="唤醒消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_AWLL=英雄唤醒费用 -木材等级因数 +WESTRING_MISCVAL_AWLL_HINT="唤醒消耗黄金 = 建造消费*(基础因数+(等级因数*(等级-1)))" +WESTRING_MISCVAL_AWMF=英雄唤醒费用 - 最大黄金/木材因数 +WESTRING_MISCVAL_AWMF_HINT="黄金/木材消费 <= 建造消费 * 最大黄金/木材因数" +WESTRING_MISCVAL_LOGA=金矿 -低含金量 +WESTRING_MISCVAL_LOGA_HINT=当含金量小于该值时会提示金矿快采完了. +WESTRING_MISCVAL_GMOD=金矿 - 占据时间 +WESTRING_MISCVAL_GMOD_HINT="农民进入金矿后占据该金矿的时间,占据期间内其他玩家的农民不能进入该金矿." +WESTRING_MISCVAL_INVS=隐形转换速率 +WESTRING_MISCVAL_INVS_HINT=未发现作用 +WESTRING_MISCVAL_FROM=魔法 - 冰冻移动速度降低 +WESTRING_MISCVAL_FROM_HINT="霜冻新星,霜冻护甲等技能造成的冰冷效果的减速幅度" +WESTRING_MISCVAL_FROA=魔法 - 冰冻攻击速度降低 +WESTRING_MISCVAL_FROA_HINT="霜冻新星,霜冻护甲等技能造成的冰冷效果的减速幅度" +WESTRING_MISCVAL_GNXP="英雄EXP获取 - 普通 - 列表" +WESTRING_MISCVAL_GNXA="英雄EXP获取 - 普通 - 上一个值因数" +WESTRING_MISCVAL_GNXB="英雄EXP获取 - 普通 - 等级因数" +WESTRING_MISCVAL_GNXC="英雄EXP获取 - 普通 -固定因数" +WESTRING_MISCVAL_GHXP="英雄EXP获取 - 英雄 - 列表" +WESTRING_MISCVAL_GHFA="英雄EXP获取 - 英雄 - 上一个值因数" +WESTRING_MISCVAL_GHFB="英雄EXP获取 - 英雄 - 等级因数" +WESTRING_MISCVAL_GHFC="英雄EXP获取 - 英雄 -固定因数" +WESTRING_MISCVAL_HFXP=英雄EXP获取 - 中立生物经验参数表 +WESTRING_MISCVAL_HFXP_HINT="中立生物被杀死后,所获得的经验值需要乘以该参数.由1级开始,未列出的等级都按最后一个数据来计算." +WESTRING_MISCVAL_SATB=英雄属性 - 每点主属性攻击奖励 +WESTRING_MISCVAL_SHPB=英雄属性 - 每点力量生命值奖励 +WESTRING_MISCVAL_SREB=英雄属性 - 每点力量生命回复奖励 +WESTRING_MISCVAL_IMAB=英雄属性 - 每点智力魔法值奖励 +WESTRING_MISCVAL_IMRB=英雄属性 - 每点智力魔法回复奖励 +WESTRING_MISCVAL_ADEB=英雄属性 - 每点敏捷防御奖励 +WESTRING_MISCVAL_ADBA=英雄属性 -基础防御补正 +WESTRING_MISCVAL_ADBA_HINT="英雄本体防御 = 基础防御+防御补正+敏捷加成. 就是说敏捷为0的英雄防御 = 基础防御+防御补正." +WESTRING_MISCVAL_AMVB=英雄属性 - 每点敏捷移动奖励 +WESTRING_MISCVAL_AASB=英雄属性 - 每点敏捷攻击速度奖励 +WESTRING_MISCVAL_DROP=物品 - 丢弃物品范围 +WESTRING_MISCVAL_GIVE=物品 - 给予物品范围 +WESTRING_MISCVAL_PICK=物品 - 拾取物品范围 +WESTRING_MISCVAL_PAIR=物品 - 贩卖物品范围 +WESTRING_MISCVAL_PAIF=物品 - 贩卖物品价格 +WESTRING_MISCVAL_CFHR=战斗 -救援范围 +WESTRING_MISCVAL_CFHR_HINT=发生战斗时,该范围内拥有正面魔法并处于自动施放状态的单位会主动赶去支援. +WESTRING_MISCVAL_CFHC=战斗 -救援范围(中立) +WESTRING_MISCVAL_CFHC_HINT=WESTRING_MISCVAL_CFHR_HINT +WESTRING_MISCVAL_DEFA=战斗 - 护甲减少伤害因子 +WESTRING_MISCVAL_DEFA_HINT="设此项为a,护甲为x,正护甲减少百分比=ax/(ax+1),负护甲增加百分比=2-(1-a)^x" +WESTRING_MISCVAL_CTNO=战斗 - 伤害奖励列表 - 普通 +WESTRING_MISCVAL_CTPI=战斗 - 伤害奖励列表 - 穿刺 +WESTRING_MISCVAL_CTSI=战斗 - 伤害奖励列表 - 攻城 +WESTRING_MISCVAL_CTMA=战斗 - 伤害奖励列表 - 魔法 +WESTRING_MISCVAL_CTCH=战斗 - 伤害奖励列表 - 混乱 +WESTRING_MISCVAL_CTSP=战斗 - 伤害奖励列表 - 法术 +WESTRING_MISCVAL_CTHE=战斗 - 伤害奖励列表 - 英雄 +WESTRING_MISCVAL_GUAD=中立生物 - 警戒范围 +WESTRING_MISCVAL_GUAD_HINT=中立单位与警戒点距离小于该值时不会主动返回. +WESTRING_MISCVAL_GUAM=中立生物 - 警戒返回距离 +WESTRING_MISCVAL_GUAM_HINT=中立单位距离警戒点范围大于警戒返回距离时会无条件返回警戒点. +WESTRING_MISCVAL_GUAT=中立生物 - 警戒返回时间(秒) +WESTRING_MISCVAL_GUAT_HINT=中立单位在离开警戒范围时间超过该值时会自动返回. +WESTRING_MISCVAL_RRCO=取消返还参数 - 建造建筑 +WESTRING_MISCVAL_RRRE=取消返还参数 - 科技研究 +WESTRING_MISCVAL_RRHR=取消返还参数 - 英雄复活 +WESTRING_MISCVAL_RRTU=取消返还参数 - 单位训练 +WESTRING_MISCVAL_RRBU=取消返还参数 - 建筑升级 +WESTRING_MISCVAL_ANDE=战斗 -攻击通知 - 最小间隔(秒) +WESTRING_MISCVAL_ANDE_HINT=两次攻击通知之间的最小时间间隔. +WESTRING_MISCVAL_ANRA=战斗 -攻击通知 - 最小范围 +WESTRING_MISCVAL_ANRA_HINT=被攻击单位和镜头中心的距离超过此数值,才会收到攻击通知. +WESTRING_MISCVAL_TRAS=资源交易量 - 普通点击 +WESTRING_MISCVAL_TRAS_HINT=设置交易时点击一次增加的资源数量 +WESTRING_MISCVAL_TRAL=资源交易量 -Ctrl点击 +WESTRING_MISCVAL_TRAL_HINT=设置交易时点击一次增加的资源数量(按住Ctrl) +WESTRING_MISCVAL_HALS=英雄 - 默认技能跳级 +WESTRING_MISCVAL_HALS_HINT=默认每提升技能等级需要的英雄等级增加量. +WESTRING_MISCVAL_CLDR=回收建筑HP流失速率 +WESTRING_MISCVAL_CLDR_HINT="使用不死族侍僧的回收建筑时,被回收建筑的每秒流失的生命值." +WESTRING_MISCVAL_BANG=建筑朝向角度(度数) +WESTRING_MISCVAL_RANG=扎根建筑朝向角度(度数) +WESTRING_MISCVAL_MCOR=最大碰撞范围 +WESTRING_MISCVAL_MCOR_HINT=未发现作用 +WESTRING_MISCVAL_RZOF=集结点Z轴偏移 +WESTRING_MISCVAL_RZOF_HINT="在可见的可破坏物上设置集结点时,集结点模型的Z轴偏移." +WESTRING_MISCVAL_SANT=昼夜动画时间比例 +WESTRING_MISCVAL_SANT_HINT="昼夜更替速率,60为标准值,数值越大昼夜更替越快." +WESTRING_MISCVAL_SKIF=英雄EXP获取 - 召唤单位经验参数 +WESTRING_MISCVAL_SKIF_HINT="召唤单位被杀死后,所获得的经验值需要乘以该参数" +WESTRING_MISCVAL_EDBO=战斗 - 伤害奖励 - 虚无 +WESTRING_MISCVAL_EDBO_HINT="" +WESTRING_MISCVAL_MDRE=战斗 - 闪避抵消伤害因子 +WESTRING_MISCVAL_MDRE_HINT="溅射攻击被闪避时,单位仍会受到部分伤害,该值设置其所抵消的伤害值." +WESTRING_MISCVAL_EHBO=魔法 - 虚无状态医疗加成 +WESTRING_MISCVAL_MXUS=移动 - 单位最大速度 +WESTRING_MISCVAL_MXUS_HINT="实际游戏中不会超过522" +WESTRING_MISCVAL_MNUS=移动 - 单位最小速度 +WESTRING_MISCVAL_MXBS=移动 - 建筑最大速度 +WESTRING_MISCVAL_MNBS=移动 - 建筑最小速度 +WESTRING_MISCVAL_CCCR=中立生物 - 最大中立单位营地范围(路径单元) +WESTRING_MISCVAL_CCCR_HINT="该范围用来决定中立单位营地在小地图上的显示和相关AI判断. 以路径单元为单位,每个单元为32距离. 即10表示320距离." +//#LINENOBETA +WESTRING_MISCVAL_FCAP=人口上限 +//#LINENOBETA +WESTRING_MISCVAL_UPKU=维修费 - 人口设置 +//#LINENOBETA +WESTRING_MISCVAL_UPKG=维修费 - 黄金维修费 +//#LINENOBETA +WESTRING_MISCVAL_UPKW=维修费 -木材维修费 +WESTRING_MISCVAL_HERO=科技树 - 从属等价物 - 英雄 +WESTRING_MISCVAL_HERO_HINT="当限制玩家所能拥有的英雄数量时,只有这些单位被列入计算." +WESTRING_MISCVAL_TALT=科技树 - 从属等价物 - 祭坛 +WESTRING_MISCVAL_TWN1=科技树 - 从属等价物 - 等级 1 主基地 +WESTRING_MISCVAL_TWN2=科技树 - 从属等价物 - 等级 2 主基地 +WESTRING_MISCVAL_TWN3=科技树 - 从属等价物 - 等级 3 主基地 +WESTRING_MISCVAL_TWN4=科技树 - 从属等价物 - 等级 4 主基地 +WESTRING_MISCVAL_TWN5=科技树 - 从属等价物 - 等级 5 主基地 +WESTRING_MISCVAL_TWN6=科技树 - 从属等价物 - 等级 6 主基地 +WESTRING_MISCVAL_TWN7=科技树 - 从属等价物 - 等级 7 主基地 +WESTRING_MISCVAL_TWN8=科技树 - 从属等价物 - 等级 8 主基地 +WESTRING_MISCVAL_TWN9=科技树 - 从属等价物 - 等级 9 主基地 +WESTRING_MISCVAL_TXP1=英雄EXP获取 -等级 1 奖励因子 +WESTRING_MISCVAL_TXP2=英雄EXP获取 -等级 2 奖励因子 +WESTRING_MISCVAL_TXP3=英雄EXP获取 -等级 3 奖励因子 +WESTRING_MISCVAL_TXP4=英雄EXP获取 -等级 4 奖励因子 +WESTRING_MISCVAL_TXP5=英雄EXP获取 -等级 5 奖励因子 +WESTRING_MISCVAL_TXP6=英雄EXP获取 -等级 6 奖励因子 +WESTRING_MISCVAL_TXP7=英雄EXP获取 -等级 7 奖励因子 +WESTRING_MISCVAL_TXP8=英雄EXP获取 -等级 8 奖励因子 +WESTRING_MISCVAL_TXP9=英雄EXP获取 -等级 9 奖励因子 +WESTRING_MISCVAL_TXP1_HINT="等级X表示基地的等级,后面的数据排列表示拥有N个已定义英雄(等价英雄中定义过的英雄)时的经验加成." +WESTRING_MISCVAL_TXP2_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP3_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP4_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP5_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP6_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP7_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP8_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_TXP9_HINT=WESTRING_MISCVAL_TXP1_HINT +WESTRING_MISCVAL_EQNH=科技树 - 从属等价物文本 - 英雄 +WESTRING_MISCVAL_EQNA=科技树 - 从属等价物文本 - 祭坛 +WESTRING_MISCVAL_EQN1=科技树 - 从属等价物文本 - 等级 1 主基地 +WESTRING_MISCVAL_EQN2=科技树 - 从属等价物文本 - 等级 2 主基地 +WESTRING_MISCVAL_EQN3=科技树 - 从属等价物文本 - 等级 3 主基地 +WESTRING_MISCVAL_EQN4=科技树 - 从属等价物文本 - 等级 4 主基地 +WESTRING_MISCVAL_EQN5=科技树 - 从属等价物文本 - 等级 5 主基地 +WESTRING_MISCVAL_EQN6=科技树 - 从属等价物文本 - 等级 6 主基地 +WESTRING_MISCVAL_EQN7=科技树 - 从属等价物文本 - 等级 7 主基地 +WESTRING_MISCVAL_EQN8=科技树 - 从属等价物文本 - 等级 8 主基地 +WESTRING_MISCVAL_EQN9=科技树 - 从属等价物文本 - 等级 9 主基地 + +//=================== Added MiscData ============================ + +WESTRING_MISCVAL_ITSF=物品 -物品阴影 +WESTRING_MISCVAL_ITSF_HINT=设置物品所使用的阴影图像 +WESTRING_MISCVAL_ITSO=物品- 物品阴影位移 +WESTRING_MISCVAL_ITSO_HINT="以(X,Y)形式表示,相对于物品所在点的位移,方向为X、Y轴的负方向." +WESTRING_MISCVAL_ITSS=物品 -物品阴影大小 +WESTRING_MISCVAL_ITSS_HINT="以(X,Y)形式表示." +WESTRING_MISCVAL_FBDR=信息面板 - Buff图标消褪时间 +WESTRING_MISCVAL_FBDR_HINT=当Buff效果剩余时间为该值时Buff图标开始出现消褪效果. +WESTRING_MISCVAL_FBNA=信息面板 - Buff图标消褪最小Alpha值 +WESTRING_MISCVAL_FBXA=信息面板 - Buff图标消褪最大Alpha值 +WESTRING_MISCVAL_CSTC=漂浮文字 - 致命一击 - 文字颜色 +WESTRING_MISCVAL_CSTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_CSTH=漂浮文字 - 致命一击 - 字体大小 +WESTRING_MISCVAL_CSTV=漂浮文字 - 致命一击 - 移动速度 +WESTRING_MISCVAL_CSTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_CSTL=漂浮文字 - 致命一击 -持续时间 +WESTRING_MISCVAL_CSTF=漂浮文字 - 致命一击 -消逝时间点 +WESTRING_MISCVAL_MBTC=漂浮文字 - 法力燃烧 - 文字颜色 +WESTRING_MISCVAL_MBTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_MBTH=漂浮文字 - 法力燃烧 - 字体大小 +WESTRING_MISCVAL_MBTV=漂浮文字 - 法力燃烧 - 移动速度 +WESTRING_MISCVAL_MBTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_MBTL=漂浮文字 - 法力燃烧 -持续时间 +WESTRING_MISCVAL_MBTF=漂浮文字 - 法力燃烧 -消逝时间点 +WESTRING_MISCVAL_MSTC=漂浮文字 - 攻击丢失 - 文字颜色 +WESTRING_MISCVAL_MSTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_MSTH=漂浮文字 - 攻击丢失 - 字体大小 +WESTRING_MISCVAL_MSTV=漂浮文字 - 攻击丢失 - 移动速度 +WESTRING_MISCVAL_MSTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_MSTL=漂浮文字 - 攻击丢失 -持续时间 +WESTRING_MISCVAL_MSTF=漂浮文字 - 攻击丢失 -消逝时间点 +WESTRING_MISCVAL_SSTC=漂浮文字 - 暗影突袭 - 文字颜色 +WESTRING_MISCVAL_SSTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_SSTH=漂浮文字 - 暗影突袭 - 字体大小 +WESTRING_MISCVAL_SSTV=漂浮文字 - 暗影突袭 - 移动速度 +WESTRING_MISCVAL_SSTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_SSTL=漂浮文字 - 暗影突袭 -持续时间 +WESTRING_MISCVAL_SSTF=漂浮文字 - 暗影突袭 -消逝时间点 +WESTRING_MISCVAL_BOTC=漂浮文字 - 奖励 - 文字颜色 +WESTRING_MISCVAL_BOTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_BOTH=漂浮文字 - 奖励 - 字体大小 +WESTRING_MISCVAL_BOTV=漂浮文字 - 奖励 - 移动速度 +WESTRING_MISCVAL_BOTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_BOTL=漂浮文字 - 奖励 -持续时间 +WESTRING_MISCVAL_BOTF=漂浮文字 - 奖励 -消逝时间点 +WESTRING_MISCVAL_LMTC=漂浮文字 - 木材 - 文字颜色 +WESTRING_MISCVAL_LMTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_LMTH=漂浮文字 - 木材 - 字体大小 +WESTRING_MISCVAL_LMTV=漂浮文字 - 木材 - 移动速度 +WESTRING_MISCVAL_LMTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_LMTL=漂浮文字 - 木材 -持续时间 +WESTRING_MISCVAL_LMTF=漂浮文字 - 木材 -消逝时间点 +WESTRING_MISCVAL_GDTC=漂浮文字 - 黄金 - 文字颜色 +WESTRING_MISCVAL_GDTC_HINT="颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_GDTH=漂浮文字 - 黄金 - 字体大小 +WESTRING_MISCVAL_GDTV=漂浮文字 - 黄金 - 移动速度 +WESTRING_MISCVAL_GDTV_HINT="两者分别为X轴和Y轴的速度." +WESTRING_MISCVAL_GDTL=漂浮文字 - 黄金 -持续时间 +WESTRING_MISCVAL_GDTF=漂浮文字 - 黄金 -消逝时间点 +WESTRING_MISCVAL_QITO=信息面板 - 任务指示器持续时间 +WESTRING_MISCVAL_QITO_HINT=任务按钮闪动的持续时间. +WESTRING_MISCVAL_MRGX=信息面板 - 近战最大攻击距离 +WESTRING_MISCVAL_MRGX_HINT="该值以下攻击距离会被显示为近战,但与该单位是否为近战无关." +WESTRING_MISCVAL_ATKF=信息面板 - 攻击速度 - 快 +WESTRING_MISCVAL_ATKF_HINT=攻击速度'快'与'非常快'的分界点. +WESTRING_MISCVAL_ATKN=信息面板 - 攻击速度 - 中等 +WESTRING_MISCVAL_ATKN_HINT=攻击速度'快'与'中等'的分界点. +WESTRING_MISCVAL_ATKS=信息面板 - 攻击速度 - 慢 +WESTRING_MISCVAL_ATKS_HINT=攻击速度'中等'与'慢'的分界点. +WESTRING_MISCVAL_AKVS=信息面板 - 攻击速度 - 非常慢 +WESTRING_MISCVAL_AKVS_HINT=攻击速度'慢'与'非常慢'的分界点. +WESTRING_MISCVAL_SPDF=信息面板 - 移动速度 - 快 +WESTRING_MISCVAL_SPDF_HINT=移动速度速度'快'与'非常快'的分界点. +WESTRING_MISCVAL_SPDN=信息面板 - 移动速度 - 中等 +WESTRING_MISCVAL_SPDF_HINT=移动速度速度'快'与'中等'的分界点. +WESTRING_MISCVAL_SPDS=信息面板 - 移动速度 - 慢 +WESTRING_MISCVAL_SPDF_HINT=移动速度速度'中等'与'慢'的分界点. +WESTRING_MISCVAL_SPVS=信息面板 - 移动速度 - 非常慢 +WESTRING_MISCVAL_SPDF_HINT=移动速度速度'慢'与'非常慢'的分界点. +WESTRING_MISCVAL_IWZO=通过可破坏物时选择圈Z偏移 +WESTRING_MISCVAL_IWZO_HINT=地面单位通过可通行的可破坏物时选择圈和阴影的Z轴偏移. +WESTRING_MISCVAL_CRFD=点命令指示器颜色(一般) +WESTRING_MISCVAL_CRFD_HINT="发布一般点命令时的点命令指示器颜色. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_CREM=点命令指示器颜色(攻击) +WESTRING_MISCVAL_CREM_HINT="发布指定点攻击命令时的点命令指示器颜色. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_PICR=小地图信号 - 完成信号颜色 +WESTRING_MISCVAL_PICR_HINT="完成训练/研究/升级等动作时显示的信号. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_PACR=小地图信号 - 攻击信号颜色 +WESTRING_MISCVAL_PACR_HINT="遭受攻击时显示的信号. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_PVCR=小地图信号 - 建议信号颜色 +WESTRING_MISCVAL_PVCR_HINT="例如所采集金矿倒塌时会显示该信号. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_PPCR=小地图信号 - 路径点信号颜色 +WESTRING_MISCVAL_PPCR_HINT="按Shift设置路径点显示的信号,该信号只有绿颜色值可用. 颜色值格式:(A,R,G,B)" +WESTRING_MISCVAL_TTNA=字体大小 - 工具栏 - 标题 +WESTRING_MISCVAL_TTDS=字体大小 - 工具栏 - 说明 +WESTRING_MISCVAL_TTCS=字体大小 - 工具栏 - 消费数值 +WESTRING_MISCVAL_CEDB=字体大小 - 聊天输入栏文字大小 +WESTRING_MISCVAL_CBNB=字体大小 - 图标右下角数字 +WESTRING_MISCVAL_WFMG=字体大小 - 游戏信息提示 +WESTRING_MISCVAL_WFTM=字体大小 - 维修费提示 +WESTRING_MISCVAL_WFUM=字体大小 - 触发文本显示 +WESTRING_MISCVAL_WFCM=字体大小 - 聊天文本显示 +WESTRING_MISCVAL_INVY=字体大小 - 物品栏标题 +WESTRING_MISCVAL_PTST=字体大小 - 生命魔法值 +WESTRING_MISCVAL_UTPN=字体大小 - 物体悬浮窗 - 名字 +WESTRING_MISCVAL_UTDS=字体大小 - 物体悬浮窗 - 说明 +WESTRING_MISCVAL_SSNN=字体大小 - 计分屏 - 普通字体 +WESTRING_MISCVAL_SSNL=字体大小 - 计分屏 - 大字体 +WESTRING_MISCVAL_SSNT=字体大小 - 计分屏 - 玩家名字 +WESTRING_MISCVAL_LDBD=字体大小 - 排行榜和多面板 +WESTRING_MISCVAL_CAOA=炎魔分裂三代后的默认颜色 +WESTRING_MISCVAL_CAOA_HINT="炎魔分裂三代后可能会看不见,修改该项的透明度即可。每4个整数依次分别表示某一代的透明度,红,绿,蓝。" +WESTRING_MISCVAL_NABC=激活按钮的颜色 +WESTRING_MISCVAL_NAHA=攻击一半角度 + +// Skin data fields +WESTRING_SKINVAL_IDLE=图标 - 空闲工人 +WESTRING_SKINVAL_C001=图标 - 未知按钮 +WESTRING_SKINVAL_C002=图标 - 黄金 +WESTRING_SKINVAL_C003=图标 - 木材 +WESTRING_SKINVAL_C004=图标 - 维修费 +WESTRING_SKINVAL_C005=图标 - 食物 +WESTRING_SKINVAL_C006=图标 - 录像回放 暂停 +WESTRING_SKINVAL_C007=图标 - 录像回放 加速 +WESTRING_SKINVAL_C008=图标 - 录像回放 降速 +WESTRING_SKINVAL_C009=图标 - 录像回放 重新开始 +WESTRING_SKINVAL_C010=图标 - 录像回放 循环 +WESTRING_SKINVAL_C011=图标 - 录像回放 暂停 - 禁用 +WESTRING_SKINVAL_C012=图标 - 录像回放 提速 - 禁用 +WESTRING_SKINVAL_C013=图标 - 录像回放 降速 - 禁用 +WESTRING_SKINVAL_C014=图标 - 录像回放 重新开始 - 禁用 +WESTRING_SKINVAL_C015=图标 - 录像回放 循环 - 禁用 +WESTRING_SKINVAL_C016=图标 - 英雄力量 +WESTRING_SKINVAL_C017=图标 - 英雄敏捷 +WESTRING_SKINVAL_C018=图标 - 英雄智力 +WESTRING_SKINVAL_C019=图标 - 升级近战 +WESTRING_SKINVAL_C020=图标 - 升级远程 +WESTRING_SKINVAL_C021=图标 - 升级炮火 +WESTRING_SKINVAL_C022=图标 - 升级装甲 +WESTRING_SKINVAL_C023=图标 - 攻击类型 未知 +WESTRING_SKINVAL_C024=图标 - 攻击类型 法术 +WESTRING_SKINVAL_C025=图标 - 攻击攻击 普通 +WESTRING_SKINVAL_C026=图标 - 攻击类型 穿刺 +WESTRING_SKINVAL_C027=图标 - 攻击类型 攻城 +WESTRING_SKINVAL_C028=图标 - 攻击类型 魔法 +WESTRING_SKINVAL_C029=图标 - 攻击类型 混乱 +WESTRING_SKINVAL_C030=图标 - 攻击类型 英雄 +WESTRING_SKINVAL_C031=图标 - 防御类型 未知 +WESTRING_SKINVAL_C032=图标 - 防御类型 小型 +WESTRING_SKINVAL_C033=图标 - 防御类型 中型 +WESTRING_SKINVAL_C034=图标 - 防御类型 大型 +WESTRING_SKINVAL_C035=图标 - 防御类型 城墙 +WESTRING_SKINVAL_C036=图标 - 防御类型 普通 +WESTRING_SKINVAL_C037=图标 - 防御类型 英雄 +WESTRING_SKINVAL_C038=图标 - 防御类型 神圣 +WESTRING_SKINVAL_C039=图标 - 防御类型 无装甲 +WESTRING_SKINVAL_C040=图标 - 攻击类型 未知(没有升级) +WESTRING_SKINVAL_C041=图标 - 攻击类型 法术(没有升级) +WESTRING_SKINVAL_C042=图标 - 攻击类型 近战(没有升级) +WESTRING_SKINVAL_C043=图标 - 攻击类型 穿刺(没有升级) +WESTRING_SKINVAL_C044=图标 - 攻击类型 攻城(没有升级) +WESTRING_SKINVAL_C045=图标 - 攻击类型 魔法(没有升级) +WESTRING_SKINVAL_C046=图标 - 攻击类型 混乱(没有升级) +WESTRING_SKINVAL_C047=图标 - 攻击类型 英雄(没有升级) +WESTRING_SKINVAL_C048=图标 - 防御类型 未知(没有升级) +WESTRING_SKINVAL_C049=图标 - 防御类型 小型(没有升级) +WESTRING_SKINVAL_C050=图标 - 防御类型 中型(没有升级) +WESTRING_SKINVAL_C051=图标 - 防御类型 大型(没有升级) +WESTRING_SKINVAL_C052=图标 - 防御类型 城墙(没有升级) +WESTRING_SKINVAL_C053=图标 - 防御类型 普通(没有升级) +WESTRING_SKINVAL_C054=图标 - 防御类型 英雄(没有升级) +WESTRING_SKINVAL_C055=图标 - 防御类型 神圣(没有升级) +WESTRING_SKINVAL_C056=图标 - 防御类型 无装甲(没有升级) +WESTRING_SKINVAL_C057=图标 - 人口(信息面板) +WESTRING_SKINVAL_C058=图标 - 黄金(信息面板) +WESTRING_SKINVAL_C059=图标 - 英雄力量(信息面板) +WESTRING_SKINVAL_C060=图标 - 英雄敏捷(信息面板) +WESTRING_SKINVAL_C061=图标 - 英雄智力(信息面板) +WESTRING_SKINVAL_C062=模型 - 命令按钮 - 自动施放 +WESTRING_SKINVAL_C063=模型 - 命令按钮 - 魔法CD间隔 +WESTRING_SKINVAL_C064=图标 - 命令 - 激活高亮 +WESTRING_SKINVAL_C065=图标 - 命令 - 英雄发光 +WESTRING_SKINVAL_C066=图标 - 命令 - 数字覆盖 +WESTRING_SKINVAL_CM01=图标 - 小地图信号按钮 可用 +WESTRING_SKINVAL_CM02=图标 - 小地图信号按钮 按下 +WESTRING_SKINVAL_CM03=图标 - 小地图信号按钮 禁用 +WESTRING_SKINVAL_CM04=图标 - 小地图地形显示按钮 可用 +WESTRING_SKINVAL_CM05=图标 - 小地图地形显示按钮 按下 +WESTRING_SKINVAL_CM06=图标 - 小地图地形显示按钮 禁用 +WESTRING_SKINVAL_CM07=图标 - 小地图地形隐藏按钮 可用 +WESTRING_SKINVAL_CM08=图标 - 小地图地形隐藏按钮 按下 +WESTRING_SKINVAL_CM09=图标 - 小地图地形隐藏按钮 禁用 +WESTRING_SKINVAL_CM10=图标 - 小地图联盟颜色按钮1 可用 +WESTRING_SKINVAL_CM11=图标 - 小地图联盟颜色按钮1 按下 +WESTRING_SKINVAL_CM12=图标 - 小地图联盟颜色按钮1 禁用 +WESTRING_SKINVAL_CM13=图标 - 小地图联盟颜色按钮2 可用 +WESTRING_SKINVAL_CM14=图标 - 小地图联盟颜色按钮2 按下 +WESTRING_SKINVAL_CM15=图标 - 小地图联盟颜色按钮2 禁用 +WESTRING_SKINVAL_CM16=图标 - 小地图联盟颜色按钮3 可用 +WESTRING_SKINVAL_CM17=图标 - 小地图联盟颜色按钮3 按下 +WESTRING_SKINVAL_CM18=图标 - 小地图联盟颜色按钮3 禁用 +WESTRING_SKINVAL_CM19=图标 - 小地图中立生物显示按钮 可用 +WESTRING_SKINVAL_CM20=图标 - 小地图中立生物显示按钮 按下 +WESTRING_SKINVAL_CM21=图标 - 小地图中立生物显示按钮 禁用 +WESTRING_SKINVAL_CM22=图标 - 小地图中立生物隐藏按钮 可用 +WESTRING_SKINVAL_CM23=图标 - 小地图中立生物隐藏按钮 按下 +WESTRING_SKINVAL_CM24=图标 - 小地图中立生物隐藏按钮 禁用 +WESTRING_SKINVAL_CM25=图标 - 小地图队形打开按钮 可用 +WESTRING_SKINVAL_CM26=图标 - 小地图队形打开按钮 按下 +WESTRING_SKINVAL_CM27=图标 - 小地图队形打开按钮 禁用 +WESTRING_SKINVAL_CM28=图标 - 小地图队形关闭按钮 可用 +WESTRING_SKINVAL_CM29=图标 - 小地图队形关闭按钮 按下 +WESTRING_SKINVAL_CM30=图标 - 小地图队形关闭按钮 禁用 +WESTRING_SKINVAL_C094=图标 - 黄金(可交易) +WESTRING_SKINVAL_C095=图标 - 木材(可交易) +WESTRING_SKINVAL_C096=图标 - 黄金(禁止交易) +WESTRING_SKINVAL_C097=图标 - 木材(禁止交易) +WESTRING_SKINVAL_C098=图标 - 命令 - 攻击 +WESTRING_SKINVAL_C099=图标 - 命令 - 攻击地面 +WESTRING_SKINVAL_C100=图标 - 命令 - 高级建筑 +WESTRING_SKINVAL_C101=图标 - 命令 - 基础建筑 +WESTRING_SKINVAL_C102=图标 - 命令 - 基础建筑(人族) +WESTRING_SKINVAL_C103=图标 - 命令 - 基础建筑(兽族) +WESTRING_SKINVAL_C104=图标 - 命令 - 基础建筑(暗夜精灵) +WESTRING_SKINVAL_C105=图标 - 命令 - 基础建筑(不死族) +WESTRING_SKINVAL_C106=图标 - 命令 - 采集 +WESTRING_SKINVAL_C107=图标 - 命令 - 保持位置 +WESTRING_SKINVAL_C108=图标 - 命令 - 移动 +WESTRING_SKINVAL_C109=图标 - 命令 - 新技能 +WESTRING_SKINVAL_C110=图标 - 命令 - 巡逻 +WESTRING_SKINVAL_C111=图标 - 命令 - 拾取物品 +WESTRING_SKINVAL_C112=图标 - 命令 - 购买 +WESTRING_SKINVAL_C113=图标 - 命令 - 集合 +WESTRING_SKINVAL_C114=图标 - 命令 - 修理 +WESTRING_SKINVAL_C115=图标 - 命令 - 返还黄金 +WESTRING_SKINVAL_C116=图标 - 命令 - 停止 +WESTRING_SKINVAL_C117=图标 - 命令 - 取消 +WESTRING_SKINVAL_C118=图标 - 小地图资源 +WESTRING_SKINVAL_C119=图标 - 小地图中立单位 +WESTRING_SKINVAL_C120=图标 - 小地图能量圈 +WESTRING_SKINVAL_C121=图标 - 小地图英雄 +WESTRING_SKINVAL_C122=图标 - 小地图中立生物营地(小) +WESTRING_SKINVAL_C123=图标 - 小地图中立生物营地(大) +WESTRING_SKINVAL_C124=图标 - 未发现的任务 +WESTRING_SKINVAL_C125=图标 - 计分屏玩家(人族) +WESTRING_SKINVAL_C126=图标 - 计分屏玩家(兽族) +WESTRING_SKINVAL_C127=图标 - 计分屏玩家(不死族) +WESTRING_SKINVAL_C128=图标 - 计分屏玩家(暗夜精灵) + +WESTRING_SKINVAL_M001=模型 - 指针 +WESTRING_SKINVAL_M002=模型 - 地图载入背景 +WESTRING_SKINVAL_M003=模型 - 地图载按钮 +WESTRING_SKINVAL_M004=模型 - 选择圈 +WESTRING_SKINVAL_M005=模型 - 预选圈 +WESTRING_SKINVAL_M006=模型 - 集结指示器 +WESTRING_SKINVAL_M007=模型 - 路径点指示器 +WESTRING_SKINVAL_M008=模型 - 目标单位确认 +WESTRING_SKINVAL_M009=模型 - 目标点确认 +WESTRING_SKINVAL_M010=模型 - 目标预选择 +WESTRING_SKINVAL_M011=模型 - 控制台 - 生命槽 +WESTRING_SKINVAL_M012=模型 - 控制台 - 生命槽(小) +WESTRING_SKINVAL_M013=模型 - 控制台 - 魔法槽 +WESTRING_SKINVAL_M014=模型 - 控制台 - 魔法槽(小) +WESTRING_SKINVAL_M015=模型 - 控制台 - 经验槽 +WESTRING_SKINVAL_M016=模型 - 控制台 - 进度条 +WESTRING_SKINVAL_M017=模型 - 小地图单位 +WESTRING_SKINVAL_M018=模型 - 资源栏 +WESTRING_SKINVAL_M019=模型 - 建造时间指示器 +WESTRING_SKINVAL_M020=模型 - 联盟对话框背景 +WESTRING_SKINVAL_M021=模型 - 联盟对话框按钮 +WESTRING_SKINVAL_M022=模型 - 联盟对话框选择栏 +WESTRING_SKINVAL_M023=模型 - 游戏时间指示器 +WESTRING_SKINVAL_M024=模型 - 任务按钮变化 +WESTRING_SKINVAL_M025=模型 - 对战地图载入背景 +WESTRING_SKINVAL_M026=模型 - 地图载入进度条 +WESTRING_SKINVAL_M027=模型 - 计分屏 - 胜利 +WESTRING_SKINVAL_M028=模型 - 计分屏 - 失败 +WESTRING_SKINVAL_M029=模型 - 命令按钮 +WESTRING_SKINVAL_M030=模型 - 黄金奖励动画 +WESTRING_SKINVAL_M031=模型 - 小地图资源 +WESTRING_SKINVAL_M032=模型 - 小地图物品 +WESTRING_SKINVAL_M033=模型 - 小地图中立单位 +WESTRING_SKINVAL_M034=模型 - 小地图英雄 +WESTRING_SKINVAL_M035=模型 - 小地图指示器 +WESTRING_SKINVAL_M036=模型 - 小地图路径点 +WESTRING_SKINVAL_M037=模型 - 小地图中立生物营地(小) +WESTRING_SKINVAL_M038=模型 - 小地图中立生物营地(大) +WESTRING_SKINVAL_M039=模型 - 英雄栏点数 + +WESTRING_SKINVAL_I001=图像 - 控制台背景 +WESTRING_SKINVAL_I002=图像 - 控制台物品栏 +WESTRING_SKINVAL_I003=图像 - 控制台物品栏(无) +WESTRING_SKINVAL_I004=图像 - 放置指针 +WESTRING_SKINVAL_I005=图像 - 控制台 - 魔法栏 +WESTRING_SKINVAL_I006=图像 - 控制台 - 生命栏 +WESTRING_SKINVAL_I007=图像 - 控制台 - 经验值栏 +WESTRING_SKINVAL_I008=图像 - 控制台 - 经验值栏边界 +WESTRING_SKINVAL_I009=图像 - 控制台 - 进度栏 +WESTRING_SKINVAL_I010=图像 - 控制台 - 进度栏边界 +WESTRING_SKINVAL_I011=图像 - 控制台 - 生命栏(小) +WESTRING_SKINVAL_I012=图像 - 控制台 - 魔法栏(小) +WESTRING_SKINVAL_I013=图像 - 选定单位子组高亮状态 +WESTRING_SKINVAL_I014=图像 - 建造时间指示器 +WESTRING_SKINVAL_I015=图像 - 建造时间指示器边界 +WESTRING_SKINVAL_I016=图像 - 建造队列背景 +WESTRING_SKINVAL_I017=图像 - 装载单位背景 +WESTRING_SKINVAL_I018=图像 - 英雄属性背幕 +WESTRING_SKINVAL_I019=图像 - 英雄属性背景 +WESTRING_SKINVAL_I020=图像 - 英雄属性边界 +WESTRING_SKINVAL_I021=图像 - 录像回放面板背景 +WESTRING_SKINVAL_I022=图像 - 录像回放选择栏普通 +WESTRING_SKINVAL_I023=图像 - 录像回放选择栏按下 +WESTRING_SKINVAL_I024=图像 - 录像回放选择栏选择 +WESTRING_SKINVAL_I025=图像 - 控制台按钮背景 +WESTRING_SKINVAL_I026=图像 - 控制台按钮边界 +WESTRING_SKINVAL_I027=图像 - 控制台按下按钮背景 +WESTRING_SKINVAL_I028=图像 - 控制台按下按钮边界 +WESTRING_SKINVAL_I029=图像 - 控制台禁用按钮背景 +WESTRING_SKINVAL_I030=图像 - 控制台禁用按钮边界 +WESTRING_SKINVAL_I031=图像 - 控制台按钮鼠标越过高亮状态 +WESTRING_SKINVAL_I032=图像 - 提示栏背景 +WESTRING_SKINVAL_I033=图像 - 提示栏边界 +WESTRING_SKINVAL_I034=图像 - 提示栏黄金图标 +WESTRING_SKINVAL_I035=图像 - 提示栏木材图标 +WESTRING_SKINVAL_I036=图像 - 提示栏晶石图标 +WESTRING_SKINVAL_I037=图像 - 提示栏魔法图标 +WESTRING_SKINVAL_I038=图像 - 提示栏人口图标 +WESTRING_SKINVAL_I039=图像 - 英雄栏边界 +WESTRING_SKINVAL_I040=图像 - 单位组按钮边界 +WESTRING_SKINVAL_I041=图像 - 顶端菜单按钮 +WESTRING_SKINVAL_I042=图像 - 电影边界 +WESTRING_SKINVAL_I043=图像 - 任务对话框 边界 +WESTRING_SKINVAL_I044=图像 - 任务对话框 背景 +WESTRING_SKINVAL_I045=图像 - 任务对话框 按钮鼠标越过高亮状态 +WESTRING_SKINVAL_I046=图像 - 任务对话框普通 背景 +WESTRING_SKINVAL_I047=图像 - 任务对话框普通 边界 +WESTRING_SKINVAL_I048=图像 - 任务对话框完成 背景 +WESTRING_SKINVAL_I049=图像 - 任务对话框完成 边界 +WESTRING_SKINVAL_I050=图像 - 任务对话框完成 鼠标越过高亮状态 +WESTRING_SKINVAL_I051=图像 - 任务对话框失败 背景 +WESTRING_SKINVAL_I052=图像 - 任务对话框失败 边界 +WESTRING_SKINVAL_I053=图像 - 任务对话框失败 鼠标越过高亮状态 +WESTRING_SKINVAL_I054=图像 - 游戏菜单边界 +WESTRING_SKINVAL_I055=图像 - 游戏菜单背景 +WESTRING_SKINVAL_I056=图像 - 游戏菜单按钮背景 +WESTRING_SKINVAL_I057=图像 - 游戏菜单按钮边界 +WESTRING_SKINVAL_I058=图像 - 游戏菜单按钮背景按下 +WESTRING_SKINVAL_I059=图像 - 游戏菜单按钮边界按下 +WESTRING_SKINVAL_I060=图像 - 游戏菜单按钮背景(禁用) +WESTRING_SKINVAL_I061=图像 - 游戏菜单按钮边界(禁用) +WESTRING_SKINVAL_I062=图像 - 游戏菜单按钮背景按下(禁用) +WESTRING_SKINVAL_I063=图像 - 游戏菜单按钮边界按下(禁用) +WESTRING_SKINVAL_I064=图像 - 游戏菜单按钮鼠标越过高亮状态 +WESTRING_SKINVAL_I065=图像 - 游戏菜单滑动轴背景 +WESTRING_SKINVAL_I066=图像 - 游戏菜单滑动轴边界 +WESTRING_SKINVAL_I067=图像 - 游戏菜单滑动轴边界(禁用) +WESTRING_SKINVAL_I068=图像 - 游戏菜单滑动轴按钮 +WESTRING_SKINVAL_I069=图像 - 游戏菜单滑动轴按钮(禁用) +WESTRING_SKINVAL_I070=图像 - 游戏菜单弹出菜单菜单背景 +WESTRING_SKINVAL_I071=图像 - 游戏菜单弹出菜单箭头 +WESTRING_SKINVAL_I072=图像 - 游戏菜单选择框背景 +WESTRING_SKINVAL_I073=图像 - 游戏菜单选择框背景按下 +WESTRING_SKINVAL_I074=图像 - 游戏菜单选择框高亮状态 +WESTRING_SKINVAL_I075=图像 - 游戏菜单选择框背景(禁用) +WESTRING_SKINVAL_I076=图像 - 游戏菜单选择框高亮状态(禁用) +WESTRING_SKINVAL_I077=图像 - 游戏菜单单选按钮背景 +WESTRING_SKINVAL_I078=图像 - 游戏菜单单选按钮背景(禁用) +WESTRING_SKINVAL_I079=图像 - 游戏菜单单选按钮背景按下 +WESTRING_SKINVAL_I080=图像 - 游戏菜单单选按钮选定高亮状态 +WESTRING_SKINVAL_I081=图像 - 游戏菜单单选按钮选定高亮状态(禁用) +WESTRING_SKINVAL_I082=图像 - 游戏菜单空白背景 +WESTRING_SKINVAL_I083=图像 - 游戏菜单编辑框边界 +WESTRING_SKINVAL_I084=图像 - 游戏菜单编辑框背景 +WESTRING_SKINVAL_I085=图像 - 控制台纹理 1 +WESTRING_SKINVAL_I086=图像 - 控制台纹理 2 +WESTRING_SKINVAL_I087=图像 - 控制台纹理 3 +WESTRING_SKINVAL_I088=图像 - 控制台纹理 4 +WESTRING_SKINVAL_I089=图像 - 单位提示背景 +WESTRING_SKINVAL_I090=图像 - 多面板边界 +WESTRING_SKINVAL_I091=图像 - 多面板背景 +WESTRING_SKINVAL_I092=图像 - 多面板图标边界 +WESTRING_SKINVAL_I093=图像 - 多面板图标默认 +WESTRING_SKINVAL_I094=图像 - 多面板最小化按钮可用 +WESTRING_SKINVAL_I095=图像 - 多面板最小化按钮按下 +WESTRING_SKINVAL_I096=图像 - 多面板最小化按钮禁用 +WESTRING_SKINVAL_I097=图像 - 多面板最大化按钮可用 +WESTRING_SKINVAL_I098=图像 - 多面板最大化按钮按下 +WESTRING_SKINVAL_I099=图像 - 多面板最大化按钮禁用 +WESTRING_SKINVAL_I100=图像 - 计分屏横幅 - 胜利 +WESTRING_SKINVAL_I101=图像 - 计分屏横幅 - 失败 + +WESTRING_SKINVAL_S000=声音 - 工作完成 +WESTRING_SKINVAL_S001=声音 - 建筑升级完成 +WESTRING_SKINVAL_S002=声音 - 科技研究完成 +WESTRING_SKINVAL_S003=声音 - 受到攻击 +WESTRING_SKINVAL_S004=声音 - 基地被攻击 +WESTRING_SKINVAL_S005=声音 - 放置建筑 +WESTRING_SKINVAL_S006=声音 - 建造建筑 +WESTRING_SKINVAL_S007=声音 - 盟友受到攻击 +WESTRING_SKINVAL_S008=声音 - 盟友基地被攻击 +WESTRING_SKINVAL_S009=声音 - 金矿倒塌 +WESTRING_SKINVAL_S010=声音 - 金矿低储量 +WESTRING_SKINVAL_S011=声音 - 没有人口 +WESTRING_SKINVAL_S012=声音 - 没有黄金 +WESTRING_SKINVAL_S013=声音 - 没有木材 +WESTRING_SKINVAL_S014=声音 - 没有魔法 +WESTRING_SKINVAL_S015=声音 - 物品栏已满 +WESTRING_SKINVAL_S016=声音 - 无法放置 +WESTRING_SKINVAL_S017=声音 - 英雄死亡 +WESTRING_SKINVAL_S018=声音 - 盟友英雄死亡 + +WESTRING_SKINVAL_SOU1=声音 - 音乐 - 胜利 +WESTRING_SKINVAL_SOU2=声音 - 音乐 - 失败 + +WESTRING_SKINVAL_PAT1=文件路径 - 命令按钮禁用图标 +WESTRING_SKINVAL_PAT2=文件路径 - 队伍颜色图像 +WESTRING_SKINVAL_PAT3=文件路径 - 队伍发光图像 + +WESTRING_SKINVAL_FRAMEDEF_DEFAULT=文本 - 普通 - '%s' +WESTRING_SKINVAL_ERROR_DEFAULT=文本 - 消息 - '%s' + +WESTRING_SKINVAL_FUH2=文本 - 普通 - '|Cffff0000高维修费 2' +WESTRING_SKINVAL_FUH3=文本 - 普通 - '|Cffff0000高维修费 3' +WESTRING_SKINVAL_FUH4=文本 - 普通 - '|Cffff0000高维修费 4' +WESTRING_SKINVAL_FUH5=文本 - 普通 - '|Cffff0000高维修费 5' +WESTRING_SKINVAL_FUH6=文本 - 普通 - '|Cffff0000高维修费 6' +WESTRING_SKINVAL_FUH7=文本 - 普通 - '|Cffff0000高维修费 7' +WESTRING_SKINVAL_FUH8=文本 - 普通 - '|Cffff0000高维修费 8' + +WESTRING_SKINVAL_CAT1=文本 - 单位分类 - 泰坦族 +WESTRING_SKINVAL_CAT2=文本 - 单位分类 - 不死族 +WESTRING_SKINVAL_CAT3=文本 - 单位分类 - 机械类 +WESTRING_SKINVAL_CAT4=文本 - 单位分类 - 牛头人 + +// Loading Screen Values +WESTRING_LOADINGSCREEN_TUTORIAL01=教程01 +WESTRING_LOADINGSCREEN_TUTORIAL02=教程02 +WESTRING_LOADINGSCREEN_HUMAN01=人族01 +WESTRING_LOADINGSCREEN_HUMAN02=人族02 +WESTRING_LOADINGSCREEN_HUMAN02_INTERLUDE=人族02 插曲 +WESTRING_LOADINGSCREEN_HUMAN03=人族03 +WESTRING_LOADINGSCREEN_HUMAN04=人族04 +WESTRING_LOADINGSCREEN_HUMAN05=人族05 +WESTRING_LOADINGSCREEN_HUMAN05_INTERLUDE=人族05 插曲 +WESTRING_LOADINGSCREEN_HUMAN06=人族06 +WESTRING_LOADINGSCREEN_HUMAN06_INTERLUDE=人族06 插曲 +WESTRING_LOADINGSCREEN_HUMAN07=人族07 +WESTRING_LOADINGSCREEN_HUMAN08=人族08 +WESTRING_LOADINGSCREEN_HUMAN09=人族09 +WESTRING_LOADINGSCREEN_UNDEAD01=不死族01 +WESTRING_LOADINGSCREEN_UNDEAD02=不死族02 +WESTRING_LOADINGSCREEN_UNDEAD02_INTERLUDE=不死族02 插曲 +WESTRING_LOADINGSCREEN_UNDEAD03=不死族03 +WESTRING_LOADINGSCREEN_UNDEAD04=不死族04 +WESTRING_LOADINGSCREEN_UNDEAD05=不死族05 +WESTRING_LOADINGSCREEN_UNDEAD05_INTERLUDE=不死族05 插曲 +WESTRING_LOADINGSCREEN_UNDEAD06=不死族06 +WESTRING_LOADINGSCREEN_UNDEAD07=不死族07 +WESTRING_LOADINGSCREEN_UNDEAD08=不死族08 +WESTRING_LOADINGSCREEN_ORC01=兽族01 +WESTRING_LOADINGSCREEN_ORC02=兽族02 +WESTRING_LOADINGSCREEN_ORC02_INTERLUDE=兽族02 插曲 +WESTRING_LOADINGSCREEN_ORC03=兽族03 +WESTRING_LOADINGSCREEN_ORC04=兽族04 +WESTRING_LOADINGSCREEN_ORC04_INTERLUDE=兽族04 插曲 +WESTRING_LOADINGSCREEN_ORC05=兽族05 +WESTRING_LOADINGSCREEN_ORC06=兽族06 +WESTRING_LOADINGSCREEN_ORC07=兽族07 +WESTRING_LOADINGSCREEN_ORC08=兽族08 +WESTRING_LOADINGSCREEN_NIGHTELF01=暗夜精灵族01 +WESTRING_LOADINGSCREEN_NIGHTELF02=暗夜精灵族02 +WESTRING_LOADINGSCREEN_NIGHTELF03=暗夜精灵族03 +WESTRING_LOADINGSCREEN_NIGHTELF04=暗夜精灵族04 +WESTRING_LOADINGSCREEN_NIGHTELF05=暗夜精灵族05 +WESTRING_LOADINGSCREEN_NIGHTELF06=暗夜精灵族06 +WESTRING_LOADINGSCREEN_NIGHTELF06_INTERLUDE=暗夜精灵族06 插曲 +WESTRING_LOADINGSCREEN_NIGHTELF07=暗夜精灵族07 +WESTRING_LOADINGSCREEN_NIGHTELF07_INTERLUDE=暗夜精灵族07 插曲 +WESTRING_LOADINGSCREEN_NIGHTELF08=暗夜精灵族08 +WESTRING_LOADINGSCREEN_CREDITS=制作人员 +WESTRING_LOADINGSCREEN_GENERIC=普通 +WESTRING_LOADINGSCREEN_NIGHTELFX01=暗夜精灵族X01 +WESTRING_LOADINGSCREEN_NIGHTELFX02=暗夜精灵族X02 +WESTRING_LOADINGSCREEN_NIGHTELFX03=暗夜精灵族X03 +WESTRING_LOADINGSCREEN_NIGHTELFX04=暗夜精灵族X04 +WESTRING_LOADINGSCREEN_NIGHTELFX04_INTERLUDE=暗夜精灵族X04 插曲 +WESTRING_LOADINGSCREEN_NIGHTELFX05=暗夜精灵族X05 +WESTRING_LOADINGSCREEN_NIGHTELFX06=暗夜精灵族X06 +WESTRING_LOADINGSCREEN_NIGHTELFX06_INTERLUDE=暗夜精灵族X06 插曲 +WESTRING_LOADINGSCREEN_NIGHTELFX07=暗夜精灵族X07 +WESTRING_LOADINGSCREEN_NIGHTELFX08=暗夜精灵族X08 +WESTRING_LOADINGSCREEN_NIGHTELFX08_FINALE=暗夜精灵族X08 结局 +WESTRING_LOADINGSCREEN_HUMANX01=人族X01 +WESTRING_LOADINGSCREEN_HUMANX02=人族X02 +WESTRING_LOADINGSCREEN_HUMANX03=人族X03 +WESTRING_LOADINGSCREEN_HUMANX03_SECRET=人族 X 03 秘密关卡 +WESTRING_LOADINGSCREEN_HUMANX03_INTERLUDE=人族 X 03 插曲 +WESTRING_LOADINGSCREEN_HUMANX04=人族X04 +WESTRING_LOADINGSCREEN_HUMANX04_INTERLUDE=人族X04 插曲 +WESTRING_LOADINGSCREEN_HUMANX05=人族X05 +WESTRING_LOADINGSCREEN_HUMANX06=人族X06 +WESTRING_LOADINGSCREEN_HUMANX06_FINALE=人族 X 06 大结局 +WESTRING_LOADINGSCREEN_UNDEADX01=不死族X01 +WESTRING_LOADINGSCREEN_UNDEADX01_INTERLUDE=不死族X01 插曲 +WESTRING_LOADINGSCREEN_UNDEADX02=不死族X02 +WESTRING_LOADINGSCREEN_UNDEADX02_INTERLUDE=不死族X02 插曲 +WESTRING_LOADINGSCREEN_UNDEADX03=不死族X03 +WESTRING_LOADINGSCREEN_UNDEADX04=不死族X04 +WESTRING_LOADINGSCREEN_UNDEADX05=不死族X05 +WESTRING_LOADINGSCREEN_UNDEADX06=不死族X06 +WESTRING_LOADINGSCREEN_UNDEADX07A=不死族X07A +WESTRING_LOADINGSCREEN_UNDEADX07B=不死族X07B +WESTRING_LOADINGSCREEN_UNDEADX07C=不死族X07C +WESTRING_LOADINGSCREEN_UNDEADX07_INTERLUDE=不死族X07 插曲 +WESTRING_LOADINGSCREEN_UNDEADX08=不死族X08 +WESTRING_LOADINGSCREEN_UNDEADX08_FINALE=不死族X08 结局 +WESTRING_LOADINGSCREEN_ORCX01_01=兽族战役01 总图 +WESTRING_LOADINGSCREEN_ORCX01_02=兽族战役01 子图 02 +WESTRING_LOADINGSCREEN_ORCX01_03=兽族战役01 子图 03 +WESTRING_LOADINGSCREEN_ORCX01_04=兽族战役01 子图 04 +WESTRING_LOADINGSCREEN_ORCX01_05=兽族战役01 子图 05 +WESTRING_LOADINGSCREEN_ORCX02_01=兽族战役02 总图 +WESTRING_LOADINGSCREEN_ORCX02_02=兽族战役02 子图 02 +WESTRING_LOADINGSCREEN_ORCX02_03=兽族战役02 子图 03 +WESTRING_LOADINGSCREEN_ORCX02_04=兽族战役02 子图 04 +WESTRING_LOADINGSCREEN_ORCX02_05=兽族战役02 子图 05 +WESTRING_LOADINGSCREEN_ORCX02_06=兽族战役02 子图 06 +WESTRING_LOADINGSCREEN_ORCX02_07=兽族战役02 子图 07 +WESTRING_LOADINGSCREEN_ORCX02_08=兽族战役02 子图 08 +WESTRING_LOADINGSCREEN_ORCX02_09=兽族战役02 子图 09 +WESTRING_LOADINGSCREEN_ORCX02_10=兽族战役02 子图 10 +WESTRING_LOADINGSCREEN_ORCX03A=兽族战役03A +WESTRING_LOADINGSCREEN_ORCX03B=兽族战役03B + +// Unit Sounds +WESTRING_SOUND_ENTANGLEDGOLDMINE=缠绕金矿 +WESTRING_SOUND_ANCIENTOFLORE=知识古树 +WESTRING_SOUND_ANCIENTOFWAR=战争古树 +WESTRING_SOUND_ANCIENTOFWIND=风之古树 +WESTRING_SOUND_ARCHER=弓箭手 +WESTRING_SOUND_ALTAROFELDERS=长者祭坛 +WESTRING_SOUND_BALLISTA=弩车 +WESTRING_SOUND_CHIMAERA=奇美拉 +WESTRING_SOUND_HERODEMONHUNTER=恶魔猎手 +WESTRING_SOUND_HERODEMONHUNTERMORPHED=恶魔猎手(恶魔形态) +WESTRING_SOUND_HUNTERSHALL=猎手大厅 +WESTRING_SOUND_DRUIDOFTHECLAW=利爪德鲁伊 +WESTRING_SOUND_DRUIDOFTHECLAWMORPHED=利爪德鲁伊(熊形态) +WESTRING_SOUND_CHIMAERAROOST=奇美拉栖木 +WESTRING_SOUND_DRUIDOFTHETALON=猛禽德鲁伊 +WESTRING_SOUND_DRUIDOFTHETALONMORPHED=猛禽德鲁伊(乌鸦形态) +WESTRING_SOUND_DRYAD=树妖 +WESTRING_SOUND_ENT=树人 +WESTRING_SOUND_HIPPOGRYPH=角鹰兽 +WESTRING_SOUND_RIDDENHIPPOGRYPH=角鹰兽骑士 +WESTRING_SOUND_HEROKEEPEROFTHEGROVE=丛林守护者 +WESTRING_SOUND_HEROMOONPRIESTESS=月之女祭司 +WESTRING_SOUND_MOONWELL=月亮井 +WESTRING_SOUND_HUNTRESS=女猎手 +WESTRING_SOUND_TREEOFLIFE=生命之树 +WESTRING_SOUND_ANCIENTPROTECTOR=远古保护者 +WESTRING_SOUND_WISP=小精灵 +WESTRING_SOUND_ALTAROFKINGS=国王祭坛 +WESTRING_SOUND_HEROARCHMAGE=大法师 +WESTRING_SOUND_WORKSHOP=车间 +WESTRING_SOUND_ARCANESANCTUM=神秘圣地 +WESTRING_SOUND_HUMANBARRACKS=人族兵营 +WESTRING_SOUND_BLACKSMITH=铁匠铺 +WESTRING_SOUND_CASTLE=城堡 +WESTRING_SOUND_CANNONTOWER=炮塔 +WESTRING_SOUND_DRAGONHAWK=龙鹰骑士 +WESTRING_SOUND_FOOTMAN=步兵 +WESTRING_SOUND_GRYPHONAVIARY=狮鹫笼 +WESTRING_SOUND_GRYPHONRIDER=狮鹫骑士 +WESTRING_SOUND_GUARDTOWER=防御塔 +WESTRING_SOUND_GYROCOPTER=矮人直升机 +WESTRING_SOUND_FARM=农场 +WESTRING_SOUND_KEEP=守望 +WESTRING_SOUND_KNIGHT=骑士 +WESTRING_SOUND_HUMANLUMBERMILL=伐木场 +WESTRING_SOUND_PEASANT=农民 +WESTRING_SOUND_HEROMOUNTAINKING=山丘之王 +WESTRING_SOUND_PRIEST=牧师 +WESTRING_SOUND_MORTARTEAM=迫击炮小队 +WESTRING_SOUND_HEROPALADIN=圣骑士 +WESTRING_SOUND_PEASANT=农民 +WESTRING_SOUND_RIFLEMAN=火枪手 +WESTRING_SOUND_SORCERESS=女巫 +WESTRING_SOUND_STEAMTANK=蒸汽坦克 +WESTRING_SOUND_TOWNHALL=城镇大厅 +WESTRING_SOUND_WATERELEMENTAL=水元素 +WESTRING_SOUND_SCOUTTOWER=哨塔 +WESTRING_SOUND_AZUREDRAGON=龙 +WESTRING_SOUND_BANDIT=强盗 +WESTRING_SOUND_CENTAURARCHER=半人马弓箭手 +WESTRING_SOUND_COP=能量圈 +WESTRING_SOUND_WOLF=狼 +WESTRING_SOUND_DRAGONROOST=龙栖木 +WESTRING_SOUND_FORESTTROLLSHADOWPRIEST=森林巨魔阴影牧师 +WESTRING_SOUND_FORESTTTROLL=森林巨魔 +WESTRING_SOUND_CORRUPTEDENT=堕落树人 +WESTRING_SOUND_FELHOUND=地狱犬 +WESTRING_SOUND_FURBOLG=野猪 +WESTRING_SOUND_AMMODUMP=地精实验室 +WESTRING_SOUND_ROCKGOLEM=岩石傀儡 +WESTRING_SOUND_GHOST=鬼魂 +WESTRING_SOUND_IRONGOLEM=地精撕裂者 +WESTRING_SOUND_MERCHANT=地精商店 +WESTRING_SOUND_GNOLLARCHER=豺狼人弓箭手 +WESTRING_SOUND_GNOLL=豺狼人 +WESTRING_SOUND_GNOLLKING=豺狼人首领 +WESTRING_SOUND_GOLDMINE=金矿 +WESTRING_SOUND_GOBLINSAPPER=地精工兵 +WESTRING_SOUND_HARPY=鸟身女妖 +WESTRING_SOUND_ACOLYTE=侍僧 +WESTRING_SOUND_HARPYNEST=鸟身女妖巢穴 +WESTRING_SOUND_ICETROLLSHADOWPRIEST=冰巨魔阴影牧师 +WESTRING_SOUND_ICETROLL=冰巨魔 +WESTRING_SOUND_KOBOLD=狗头人 +WESTRING_SOUND_KOTOBEASTNORIDER=科多兽(无人) +WESTRING_SOUND_MERCENARY=雇佣兵营地 +WESTRING_SOUND_FOUNTAINOFLIFE=生命之泉 +WESTRING_SOUND_MURLOC=两栖鱼人 +WESTRING_SOUND_NERUBIAN=蛛网怪 +WESTRING_SOUND_OGRE=食人魔 +WESTRING_SOUND_OWLBEAR=夜熊 +WESTRING_SOUND_PIG=猪 +WESTRING_SOUND_RAT=老鼠 +WESTRING_SOUND_REVENANT=亡魂 +WESTRING_SOUND_RAZORMANE=拉泽曼恩 +WESTRING_SOUND_BRISTLEBACK=猪鬃 +WESTRING_SOUND_SATYR=赛特斯 +WESTRING_SOUND_SEAL=海豹 +WESTRING_SOUND_SHEEP=绵羊 +WESTRING_SOUND_OWL=猫头鹰 +WESTRING_SOUND_SKELETONARCHER=骷髅弓箭手 +WESTRING_SOUND_SKELETON=骷髅 +WESTRING_SOUND_SPIDER=蜘蛛 +WESTRING_SOUND_SLUDGEMONSTER=淤泥怪 +WESTRING_SOUND_WENDIGO=雪怪 +WESTRING_SOUND_VILLAGERMAN0=村民 1 +WESTRING_SOUND_VILLAGERMAN1=村民 2 +WESTRING_SOUND_VILLAGERWOMAN=村妇 +WESTRING_SOUND_VILLAGERKID=小孩 +WESTRING_SOUND_VULTURE=秃鹰 +WESTRING_SOUND_HUMANMAGE=强盗魔法师 +WESTRING_SOUND_SPIRITWOLF=幽魂之狼 +WESTRING_SOUND_GOBLINZEPPELIN=地精飞艇 +WESTRING_SOUND_ZOMBIE=僵尸 +WESTRING_SOUND_ALTAROFSTORMS=风暴祭坛 +WESTRING_SOUND_ANCESTRALGUARDIAN=远古守护者 +WESTRING_SOUND_ORCBARRACKS=兽族兵营 +WESTRING_SOUND_BESTIARY=怪物博览 +WESTRING_SOUND_HEROBLADEMASTER=剑圣 +WESTRING_SOUND_CATAPULT=投石车 +WESTRING_SOUND_WITCHDOCTOR=巫医 +WESTRING_SOUND_SENTRYWARD=岗哨守卫 +WESTRING_SOUND_STASISTOTEM=静止陷阱 +WESTRING_SOUND_HEROFARSEER=先知 +WESTRING_SOUND_WARMILL=战争磨坊 +WESTRING_SOUND_FORTRESS=堡垒 +WESTRING_SOUND_GREATHALL=大厅 +WESTRING_SOUND_GRUNT=兽族步兵 +WESTRING_SOUND_HEADHUNTER=猎头者 +WESTRING_SOUND_HEALINGWARD=治疗守卫 +WESTRING_SOUND_KOTOBEAST=科多兽 +WESTRING_SOUND_PEON=苦工 +WESTRING_SOUND_WOLFRIDER=掠夺者 +WESTRING_SOUND_SHAMAN=萨满祭司 +WESTRING_SOUND_SPIRITLODGE=灵魂归宿 +WESTRING_SOUND_STRONGHOLD=要塞 +WESTRING_SOUND_TAUREN=牛头人 +WESTRING_SOUND_HEROTAURENCHIEFTAIN=牛头人酋长 +WESTRING_SOUND_TROLLBURROW=兽族地洞 +WESTRING_SOUND_TAURENTOTEM=牛头人图腾 +WESTRING_SOUND_WATCHTOWER=了望塔 +WESTRING_SOUND_WYVERNRIDER=双足飞龙 +WESTRING_SOUND_ABOMINATION=憎恶 +WESTRING_SOUND_ALTAROFDARKNESS=黑暗祭坛 +WESTRING_SOUND_BANSHEE=女妖 +WESTRING_SOUND_BONEYARD=埋骨地 +WESTRING_SOUND_CRYPTFIEND=穴居恶魔 +WESTRING_SOUND_HERODEATHKNIGHT=死亡骑士 +WESTRING_SOUND_HERODREADLORD=恐惧魔王 +WESTRING_SOUND_FROSTWYRM=冰霜巨龙 +WESTRING_SOUND_GARGOYLE=石像鬼 +WESTRING_SOUND_HAUNTEDMINE=闹鬼金矿 +WESTRING_SOUND_GHOUL=食尸鬼 +WESTRING_SOUND_GRAVEYARD=坟场 +WESTRING_SOUND_HEROLICH=巫妖 +WESTRING_SOUND_MEATWAGON=绞肉车 +WESTRING_SOUND_NECROMANCER=不死族巫师 +WESTRING_SOUND_NECROPOLISU1=亡者大厅 +WESTRING_SOUND_NECROPOLISU2=黑色城堡 +WESTRING_SOUND_NECROPOLIS=大墓地 +WESTRING_SOUND_PLAGUECLOUD=瘟疫之云 +WESTRING_SOUND_SACRIFICIALPIT=牺牲深渊 +WESTRING_SOUND_CRYPT=地穴 +WESTRING_SOUND_SHADE=阴影 +WESTRING_SOUND_SLAUGHTERHOUSE=屠宰场 +WESTRING_SOUND_TEMPLEOFTHEDAMNED=诅咒神庙 +WESTRING_SOUND_ZIGGURAT=通灵塔 +WESTRING_SOUND_ZIGGURATUPGRADE=幽魂之塔 +WESTRING_SOUND_INFERNAL=地狱火恶魔 +WESTRING_SOUND_WARLOCK=阿克蒙德 +WESTRING_SOUND_DOOMGUARD=毁灭守卫 +WESTRING_SOUND_PITLORD=深渊领主 +WESTRING_SOUND_WAYGATE=传送门 +WESTRING_SOUND_CENTAURTENT=半人马帐篷 +WESTRING_SOUND_TAURENTENT=牛头人帐篷 1 +WESTRING_SOUND_TAURENTENT2=牛头人帐篷 2 +WESTRING_SOUND_GNOLLHUT=豺狼人小屋 +WESTRING_SOUND_TENT=帐篷 +WESTRING_SOUND_FORESTTROLLHUT0=森林巨魔小屋 1 +WESTRING_SOUND_FORESTTROLLHUT1=森林巨魔小屋 2 +WESTRING_SOUND_ICETROLLHUT0=冰巨魔小屋 1 +WESTRING_SOUND_ICETROLLHUT1=冰巨魔小屋 2 +WESTRING_SOUND_CITYBUILDING0=都市建筑 0 +WESTRING_SOUND_CITYBUILDING1=都市建筑 1 +WESTRING_SOUND_CITYBUILDING2=都市建筑 2 +WESTRING_SOUND_CITYBUILDING3=都市建筑 3 +WESTRING_SOUND_CITYBUILDING4=都市建筑 4 +WESTRING_SOUND_CITYBUILDING5=都市建筑 5 +WESTRING_SOUND_CITYBUILDING6=都市建筑 6 +WESTRING_SOUND_CITYBUILDING7=都市建筑 7 +WESTRING_SOUND_CITYBUILDING8=都市建筑 8 +WESTRING_SOUND_CITYBUILDING9=都市建筑 9 +WESTRING_SOUND_CITYBUILDINGA=都市建筑 10 +WESTRING_SOUND_CITYBUILDINGB=都市建筑 11 +WESTRING_SOUND_CITYBUILDINGC=都市建筑 12 +WESTRING_SOUND_CITYBUILDINGD=都市建筑 13 +WESTRING_SOUND_CITYBUILDINGE=都市建筑 14 +WESTRING_SOUND_CITYBUILDINGF=都市建筑 15 +WESTRING_SOUND_GRANARYINFECTED=被感染的壳仓 +WESTRING_SOUND_GRAINWAREHOUSE=谷仓 +WESTRING_SOUND_FURBOLGHUT=野猪小屋 +WESTRING_SOUND_MURLOCHUT0=两栖鱼人小屋 1 +WESTRING_SOUND_MURLOCHUT1=两栖鱼人小屋 2 +WESTRING_SOUND_NERUBIANZIGGURAT=蛛网怪通灵塔 +WESTRING_SOUND_CAPTAIN=步兵队长 +WESTRING_SOUND_HIGHELFSWORDSMAN=高级精灵剑士 +WESTRING_SOUND_ARTHAS=阿尔塞斯 +WESTRING_SOUND_EVILARTHAS=邪恶的阿尔塞斯 +WESTRING_SOUND_UTHER=乌瑟尔 +WESTRING_SOUND_JAINA=吉安娜 +WESTRING_SOUND_KELTHUZADNECRO=克尔苏加德(不死族巫师) +WESTRING_SOUND_KELTHUZADLICH=克尔苏加德(巫妖) +WESTRING_SOUND_MURADIN=穆拉丁 +WESTRING_SOUND_TICHONDRIUS=提克迪奥斯 +WESTRING_SOUND_SYLVANUS=希尔瓦纳斯 +WESTRING_SOUND_KNIGHTNORIDER=无人马 +WESTRING_SOUND_MEDIVH=麦迪文 +WESTRING_SOUND_THRALL=斯若 +WESTRING_SOUND_GROM=格罗姆·地狱咆哮 +WESTRING_SOUND_CAIRNE=卡林 +WESTRING_SOUND_ILLIDAN=尤迪安 +WESTRING_SOUND_ILLIDANMORPHED=尤迪安(恶魔形态) +WESTRING_SOUND_FURION=法里奥 +WESTRING_SOUND_TYRANDE=泰兰德 +WESTRING_SOUND_SHANDRIS=塞恩德里斯 +WESTRING_SOUND_SACRIFICIALALTAR=神殿 +WESTRING_SOUND_ELVENFARM=精灵农场 +WESTRING_SOUND_ELVENGUARDTOWER=精灵防御塔 +WESTRING_SOUND_CHAOSWARLORD=兽族酋长 +WESTRING_SOUND_CHAOSGRUNT=混乱兽族步兵 +WESTRING_SOUND_GOBLINLANDMINE=地精地雷 +WESTRING_SOUND_PIGFARM=猪圈 +WESTRING_SOUND_MAGETOWER=魔法塔 +WESTRING_SOUND_FOUNTAINOFLIFEBLOOD=血浴之泉 +WESTRING_SOUND_FOUNTAINOFLIFEDEFILED=被污染的生命之泉 +WESTRING_SOUND_BOOKOFSUMMONING=召唤之书 +WESTRING_SOUND_HORNOFCENARIUS=赛纳留斯的号角 +WESTRING_SOUND_FROSTMOURNE=霜之哀伤 +WESTRING_SOUND_BARROWDEN=兽穴 +WESTRING_SOUND_DEMONGATE=恶魔之门 +WESTRING_SOUND_TERRANMARINE=人族海军陆战队员 +WESTRING_SOUND_HYDRALISK=刺蛇 +WESTRING_SOUND_ORCJUGGERNAUT=兽族神像 +WESTRING_SOUND_ZERGLING=小狗 +WESTRING_SOUND_WATCHER=岗哨 +WESTRING_SOUND_ASSASSIN=守望者 +WESTRING_SOUND_CHAOSSPACEORC=混乱空间兽人 +WESTRING_SOUND_SAMMYCUBE=美国大兵方块 + +// Editor command names +WESTRING_WECOMMAND_NONE=没有 +WESTRING_WECOMMAND_DEBUG=蛋糕 +WESTRING_WECOMMAND_DEBUG_MOUSEMOVE=调试 - 鼠标移动 +WESTRING_WECOMMAND_DEBUG_UNDO=调试 - 撤销 +WESTRING_WECOMMAND_CAMERA_RESET_DEBUG=调试 - 镜头重设 +WESTRING_WECOMMAND_DEBUG_INFO=调试 - 开关调试信息 +WESTRING_WECOMMAND_REMOVEINVALIDOBJECTS=调试 - 删除无效物体 +WESTRING_WECOMMAND_CONVERTOLDWATER=调试 - 转换水面 +WESTRING_WECOMMAND_REVIEWWARNINGS=其他 - 查看警告 +WESTRING_WECOMMAND_FIXUPBLIGHT=调试 - 修正荒芜地表 +WESTRING_WECOMMAND_DEBUG_TILESHIFT=调试 - 修改地形 +WESTRING_WECOMMAND_CONVERTOLDBOUNDARY=调试 - 转换边界 +WESTRING_WECOMMAND_FORCE_OM_UPDATE=调试 - 强制物体管理器更新 +WESTRING_WECOMMAND_DEBUG_CONVERTWAVTOMP3=调试 - 转换WAV到MP3 +WESTRING_WECOMMAND_DEBUG_RESETSOUNDPITCH=调试 - 重置声音速率 +WESTRING_WECOMMAND_DEBUG_RESETSOUNDFADERATES=调试 - 重置声音淡化率 +WESTRING_WECOMMAND_ADJUSTMAPSTRINGS=调试 - 调整地图字符串 +WESTRING_WECOMMAND_DEBUG_FIXUNITABILITIES=调试 - 修正单位技能 +WESTRING_WECOMMAND_DEBUG_CHECKMETACOMPLETE=调试 - 检查技能数据完整性 +WESTRING_WECOMMAND_DEBUG_CHECKMETAFIELDS=调试 - 检查所有数据区域 +WESTRING_WECOMMAND_DEBUG_CHECKCMDTABLECOMPLETE=调试 - 检查命令列表完整性 +WESTRING_WECOMMAND_DEBUG_DUMP_REFS_IMAGE=调试 - 转储图象参数 +WESTRING_WECOMMAND_DEBUG_DUMP_REFS_MODEL=调试 - 转储模型参数 +WESTRING_WECOMMAND_DEBUG_DUMP_EXPTRIGFUNCS=调试 - 转储触发器函数 + +WESTRING_WECOMMAND_QUIT=文件 - 退出 +WESTRING_WECOMMAND_NEXTDOC=其他 - 下一张地图 +WESTRING_WECOMMAND_PREVDOC=其他 - 上一张地图 + +WESTRING_WECOMMAND_NEW=文件 - 新建地图 +WESTRING_WECOMMAND_SAVE=文件 - 保存地图 +WESTRING_WECOMMAND_SAVEAS=文件 - 地图另存为 +WESTRING_WECOMMAND_OPEN=文件 - 打开地图 +WESTRING_WECOMMAND_CLOSE=文件 - 关闭地图 +WESTRING_WECOMMAND_EDITPREFS=文件 - 参数设置 +WESTRING_WECOMMAND_CONFIGCONTROLS=文件 - 快捷键设置 +WESTRING_WECOMMAND_TESTMAP=文件 - 测试地图 +WESTRING_WECOMMAND_EXPORTSCRIPT=文件 - 导出脚本 +WESTRING_WECOMMAND_EXPORTMINIMAP=文件 - 导出小地图 +WESTRING_WECOMMAND_EXPORTSTRINGS=文件 - 导出字符串 +WESTRING_WECOMMAND_IMPORTSTRINGS=文件 - 导入字符串 +WESTRING_WECOMMAND_BATCHRESAVE=调试 - 批量重存 + +WESTRING_WECOMMAND_UNDO=编辑 - 撤消 +WESTRING_WECOMMAND_REDO=编辑 - 重做 + +WESTRING_WECOMMAND_COPY=编辑 - 复制 +WESTRING_WECOMMAND_CUT=编辑 - 剪切 +WESTRING_WECOMMAND_PASTE=编辑 - 粘贴 +WESTRING_WECOMMAND_CLEAR=编辑 - 清除 +WESTRING_WECOMMAND_CANCELPASTE=其他 - 取消粘贴 +WESTRING_WECOMMAND_PASTE_FLIPH=编辑 - 粘帖 - 水平翻转 +WESTRING_WECOMMAND_PASTE_FLIPV=编辑 - 粘帖 - 垂直翻转 +WESTRING_WECOMMAND_PASTE_ROTCW=编辑 - 粘帖 - 顺时针旋转90度 +WESTRING_WECOMMAND_PASTE_ROTCCW=编辑 - 粘帖 - 逆时针旋转90度 + +WESTRING_WECOMMAND_SELECT_ALL=编辑 - 全选 +WESTRING_WECOMMAND_SELECT_ALL_SPECIAL=编辑 - 全选指定类型 +WESTRING_WECOMMAND_SELECT_NONE=其他 - 取消选择 +WESTRING_WECOMMAND_SELECTION_MOVE=选择- 移动 +WESTRING_WECOMMAND_SELECTION_MOVE_RIGHT=选择 - 向右移动 +WESTRING_WECOMMAND_SELECTION_MOVE_LEFT=选择 - 向左移动 +WESTRING_WECOMMAND_SELECTION_MOVE_UP=选择 - 向上移动 +WESTRING_WECOMMAND_SELECTION_MOVE_DOWN=选择 - 向下移动 +WESTRING_WECOMMAND_SELECTION_MOVE_UP_RIGHT=选择 - 右上移动 +WESTRING_WECOMMAND_SELECTION_MOVE_UP_LEFT=选择 - 左上移动 +WESTRING_WECOMMAND_SELECTION_MOVE_DOWN_RIGHT=选择 - 右下移动 +WESTRING_WECOMMAND_SELECTION_MOVE_DOWN_LEFT=选择 - 左下移动 +WESTRING_WECOMMAND_SELECTION_MOVE_Z_UP=选择 - 增加Z轴高度 +WESTRING_WECOMMAND_SELECTION_MOVE_Z_DOWN=选择 - 降低Z轴高度 +WESTRING_WECOMMAND_SELECTION_ROTATE=选择 - 旋转 +WESTRING_WECOMMAND_SELECTION_ROTATE_GROUP=选择 - 旋转组 +WESTRING_WECOMMAND_SELECTION_ROTATE_RIGHT=选择 - 向右旋转 +WESTRING_WECOMMAND_SELECTION_ROTATE_LEFT=选择 - 向左旋转 +WESTRING_WECOMMAND_SELECTION_SCALE_UP=选择 - 按比例放大 +WESTRING_WECOMMAND_SELECTION_SCALE_DOWN=选择 - 按比例缩小 +WESTRING_WECOMMAND_SELECTION_SCALE_UP_XY=选择 - 按比例放大XY面 +WESTRING_WECOMMAND_SELECTION_SCALE_DOWN_XY=选择 - 按比例缩小XY面 +WESTRING_WECOMMAND_SELECTION_SCALE_UP_Z=选择 - 按比例放大Z轴 +WESTRING_WECOMMAND_SELECTION_SCALE_DOWN_Z=选择 - 按比例缩小Z轴 +WESTRING_WECOMMAND_SELECTION_EDITPROPERTIES=编辑 - 编辑属性 +WESTRING_WECOMMAND_SELECTION_CYCLEVIEW_NEXT=编辑 - 循环选择单位镜头 - 下一个 +WESTRING_WECOMMAND_SELECTION_CYCLEVIEW_PREV=编辑 - 循环选择单位镜头 - 上一个 + +WESTRING_WECOMMAND_SELECTION_FLIPH=选择- 水平翻转 +WESTRING_WECOMMAND_SELECTION_FLIPV=选择- 垂直翻转 +WESTRING_WECOMMAND_SELECTION_ROT180=选择- 旋转180度 +WESTRING_WECOMMAND_SELECTION_ROT90CW=选择 - 逆时针旋转90度 +WESTRING_WECOMMAND_SELECTION_ROT90CCW=选择 - 顺时针旋转90度 + +WESTRING_WECOMMAND_CANCEL_SELECTMODE=其他 - 取消选择模式 + +WESTRING_WECOMMAND_OBJECTLIST_MOVEUP=物体列表 - 向上移动 +WESTRING_WECOMMAND_OBJECTLIST_MOVEDOWN=物体列表 - 向下移动 +WESTRING_WECOMMAND_OBJECTLIST_SELECTNEXT=物体列表 - 选择下一个 +WESTRING_WECOMMAND_OBJECTLIST_SELECTPREV=物体列表 - 选择上一个 + +WESTRING_WECOMMAND_CAMERA_TRANSLATE=镜头 - 移动 +WESTRING_WECOMMAND_CAMERA_ROTATE=镜头 - 旋转 +WESTRING_WECOMMAND_CAMERA_ZOOM=镜头 - 缩放 +WESTRING_WECOMMAND_CAMERA_RESET=镜头 - 重置 +WESTRING_WECOMMAND_CAMERA_ADJUSTCLIP=镜头 - 调整剪辑 +WESTRING_WECOMMAND_CAMERA_VIEWWORLD=镜头 - 察看完整地图 + +WESTRING_WECOMMAND_CAMERA_TRANSLATE_UP=镜头 - 向上移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_DOWN=镜头 - 向下移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_RIGHT=镜头 - 向右移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_LEFT=镜头 - 向左移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_FAST_UP=镜头 - 快速向上移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_FAST_DOWN=镜头 - 快速向下移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_FAST_RIGHT=镜头 - 快速向右移动 +WESTRING_WECOMMAND_CAMERA_TRANSLATE_FAST_LEFT=镜头 - 快速向左移动 +WESTRING_WECOMMAND_CAMERA_ROTATE_RIGHT=镜头 - 向右旋转 +WESTRING_WECOMMAND_CAMERA_ROTATE_LEFT=镜头 - 向左旋转 +WESTRING_WECOMMAND_CAMERA_ZOOM_IN=镜头 - 放大 +WESTRING_WECOMMAND_CAMERA_ZOOM_OUT=镜头 - 缩小 +WESTRING_WECOMMAND_CAMERA_CLIP_IN=镜头 - 插入 +WESTRING_WECOMMAND_CAMERA_CLIP_OUT=镜头 - 剪掉 + +WESTRING_WECOMMAND_CAMERA_SNAPTOGAME=镜头 - 跳转到游戏视角 +WESTRING_WECOMMAND_CAMERA_STOPPREVIEW=镜头 - 取消预览 + +WESTRING_WECOMMAND_WORLDACTION=其他 - 应用刷子 +WESTRING_WECOMMAND_VIEWINOBJECTMANAGER=编辑 - 在物体管理器中察看 +WESTRING_WECOMMAND_VIEWINOBJECTEDITOR=编辑 - 在物体编辑器中查看 +WESTRING_WECOMMAND_VIEWINPALETTE=编辑 - 在工具面板中选择 + +WESTRING_WECOMMAND_MODIFY_MAPDESCRIPTION=情节 - 地图说明 +WESTRING_WECOMMAND_MODIFY_MAPOPTIONS=情节 - 地图选项 +WESTRING_WECOMMAND_MODIFY_MAPSIZE=情节 - 地图大小 +WESTRING_WECOMMAND_MODIFY_LOADSCREEN=情节 - 地图载入画面 +WESTRING_WECOMMAND_MODIFY_PROLOGUE=情节 - 地图序言 +WESTRING_WECOMMAND_MODIFY_MAPPREFS=情节 - 地图参数 + +WESTRING_WECOMMAND_MODIFY_PLAYERS=情节 - 玩家设置 +WESTRING_WECOMMAND_MODIFY_FORCES=情节 - 队伍设置 +WESTRING_WECOMMAND_MODIFY_ALLYPRIORITIES=情节 - 联盟优先权设置 +WESTRING_WECOMMAND_MODIFY_TECHTREE=情节 - 科技树设置 +WESTRING_WECOMMAND_MODIFY_ABILITIES=情节 - 技能设置 +WESTRING_WECOMMAND_MODIFY_UPGRADES=情节 - 科技设置 + +WESTRING_WECOMMAND_MODIFY_TEXTURES=高级 - 修改地形设置 +WESTRING_WECOMMAND_RANDOMGROUPS=高级 - 随机组 +WESTRING_WECOMMAND_ITEMTABLES=高级 - 物品列表 +WESTRING_WECOMMAND_RESETSHADOWMAP=文件 - 计算阴影纹理 +WESTRING_WECOMMAND_RESETHEIGHT=高级 - 重设地形高度 +WESTRING_WECOMMAND_GAMECONSTANTS=高级 - 游戏平衡性参数 +WESTRING_WECOMMAND_GAMEINTERFACE=高级 - 游戏界面 +WESTRING_WECOMMAND_ADJUSTCLIFFLEVELS=高级 - 调整悬崖层面 +WESTRING_WECOMMAND_REPLACE_CLIFFTYPE=高级 - 替换悬崖类型 +WESTRING_WECOMMAND_REPLACE_DOODAD=高级 - 替换装饰物 +WESTRING_WECOMMAND_REPLACE_UNITS=高级 - 替换单位 +WESTRING_WECOMMAND_REPLACE_TILES=高级 - 替换地形 +WESTRING_WECOMMAND_RESETTEXTUREVARIATIONS=高级 - 重设纹理变化 + +WESTRING_WECOMMAND_ABOUT=帮助 - 关于编辑器 +WESTRING_WECOMMAND_HELP=帮助 - 编辑器帮助 +WESTRING_WECOMMAND_LICENSE=帮助 - 编辑器许可协议 + +WESTRING_WECOMMAND_TOGGLE_PERF=察看 - 设置动画显示 +WESTRING_WECOMMAND_TOGGLE_DEBUGDRAW=察看 - 设置调试绘制 +WESTRING_WECOMMAND_TOGGLE_DEBUGCAMERA=察看 - 设置调试镜头 +WESTRING_WECOMMAND_TOGGLE_GAMECAMERA=察看 - 切换游戏镜头 +WESTRING_WECOMMAND_TOGGLE_LETTERBOX=察看 - 切换信箱模式 +WESTRING_WECOMMAND_TOGGLE_DEBUGMOUSE=察看 - 设置调试鼠标 +WESTRING_WECOMMAND_TOGGLE_CAMERATERRAINADJUST=察看 - 设置镜头地形调整 +WESTRING_WECOMMAND_TOGGLE_MAPGRID=察看 - 开关栅格显示 +WESTRING_WECOMMAND_TOGGLE_SHOWPATHING=察看 - 开关地面路径显示 +WESTRING_WECOMMAND_TOGGLE_NAVALPATHING=察看 - 开关海面路径显示 +WESTRING_WECOMMAND_TOGGLE_SHOWTERRAIN=察看 - 开关地形显示 +WESTRING_WECOMMAND_TOGGLE_SHOWWEATHER=察看 - 开关天气显示 +WESTRING_WECOMMAND_TOGGLE_SHOWWATER=察看 - 开关水的显示 +WESTRING_WECOMMAND_TOGGLE_SHOWSHADOWS=察看 - 开关阴影显示 +WESTRING_WECOMMAND_TOGGLE_SHOWDOODADS=察看 - 开关装饰物显示 +WESTRING_WECOMMAND_TOGGLE_SHOWUNITS=察看 - 开关单位显示 +WESTRING_WECOMMAND_TOGGLE_SHOWREGIONS=察看 - 开关区域显示 +WESTRING_WECOMMAND_TOGGLE_SHOWCAMERAOBJECTS=察看 - 开关镜头显示 +WESTRING_WECOMMAND_TOGGLE_SHOWCAMERABOUNDS=察看 - 开关镜头范围显示 +WESTRING_WECOMMAND_TOGGLE_MINIMAPSTYLE=察看 - 切换小地图镜头显示风格 +WESTRING_WECOMMAND_TOGGLE_SHOWGRID_CHUNKS=察看 - 开关大栅格显示 +WESTRING_WECOMMAND_TOGGLE_SHOWGRID_CELLS=察看 - 开关中栅格显示 +WESTRING_WECOMMAND_TOGGLE_SHOWGRID_PATHING=察看 - 开关小栅格显示 +WESTRING_WECOMMAND_TOGGLE_SHOWLIGHTING=察看 - 开关光线显示 +WESTRING_WECOMMAND_TOGGLE_UNITINFODISPLAY=察看 - 开关单位信息显示 +WESTRING_WECOMMAND_TOGGLE_SHOWBLIGHT=察看 - 开关荒芜地表显示 +WESTRING_WECOMMAND_TOGGLE_SHOWSKY=察看 - 开关天空显示 +WESTRING_WECOMMAND_TOGGLE_SHOWFOGEFFECTS=察看 - 开关迷雾效果显示 +WESTRING_WECOMMAND_TOGGLE_GAMEVIEWSETTINGS=察看 - 开关游戏显示设置 + +WESTRING_WECOMMAND_TOGGLE_MINIMAPDISPLAY=窗口 - 开关小地图显示 +WESTRING_WECOMMAND_TOGGLE_PREVIEWDISPLAY=窗口 - 开关预览器显示 +WESTRING_WECOMMAND_TOGGLE_TOOLBARDISPLAY=窗口 - 开关工具条显示 +WESTRING_WECOMMAND_TOGGLE_BRUSHTREEDISPLAY=窗口 - 开关刷子列表显示 + +WESTRING_WECOMMAND_SHOWTERRAIN=察看 - 显示地形 +WESTRING_WECOMMAND_HIDETERRAIN=察看 - 隐藏地形 +WESTRING_WECOMMAND_WIREFRAMETERRAIN=察看 - 显示地形线框 + +WESTRING_WECOMMAND_SHOWDOODADS=察看 - 显示装饰物 +WESTRING_WECOMMAND_HIDEDOODADS=察看 - 隐藏装饰物 + +WESTRING_WECOMMAND_SHOWUNITS=察看 - 显示单位 +WESTRING_WECOMMAND_HIDEUNITS=察看 - 隐藏单位 + +WESTRING_WECOMMAND_GRIDMODE_NONE=察看 - 隐藏栅格 +WESTRING_WECOMMAND_GRIDMODE_LARGE=察看 - 显示栅格 - 大 +WESTRING_WECOMMAND_GRIDMODE_MEDIUM=察看 - 显示栅格 - 中 +WESTRING_WECOMMAND_GRIDMODE_SMALL=察看 - 显示栅格 - 小 + +WESTRING_WECOMMAND_TOGGLE_AUTORANDGROUPS=高级 - 自动循环随机组 +WESTRING_WECOMMAND_CYCLE_RANDGROUPS_NEXT=高级 - 循环随机组 - 下一个 +WESTRING_WECOMMAND_CYCLE_RANDGROUPS_PREV=高级 - 循环随机组 - 上一个 + +WESTRING_WECOMMAND_BRUSH_SELECT=工具 - 开关选择模式 +WESTRING_WECOMMAND_BRUSH_SELECT_SET=工具 - 设置选择模式 + +WESTRING_WECOMMAND_BRUSHSIZE1=工具 - 设置刷子尺寸 - 1 +WESTRING_WECOMMAND_BRUSHSIZE2=工具 - 设置刷子尺寸 - 2 +WESTRING_WECOMMAND_BRUSHSIZE3=工具 - 设置刷子尺寸 - 3 +WESTRING_WECOMMAND_BRUSHSIZE4=工具 - 设置刷子尺寸 - 4 +WESTRING_WECOMMAND_BRUSHSIZE5=工具 - 设置刷子尺寸 - 5 +WESTRING_WECOMMAND_BRUSHSIZE6=工具 - 设置刷子尺寸 - 6 +WESTRING_WECOMMAND_BRUSHSIZE7=工具 - 设置刷子尺寸 - 7 +WESTRING_WECOMMAND_BRUSHSIZE8=工具 - 设置刷子尺寸 - 8 + +WESTRING_WECOMMAND_BRUSHSHAPE_CIRCLE=工具 - 设置刷子形状 - 圆形 +WESTRING_WECOMMAND_BRUSHSHAPE_SQUARE=工具 - 设置刷子形状 - 正方形 +WESTRING_WECOMMAND_TOGGLE_BRUSHSHAPE=工具 - 切换刷子形状 + +WESTRING_WECOMMAND_DOODRAND_ROTATE=工具 - 开关随机地形装饰物角度 +WESTRING_WECOMMAND_DOODRAND_SCALEOFF=工具 - 随机地形装饰物缩放 - 关闭 +WESTRING_WECOMMAND_DOODRAND_SCALESYM=工具 - 随机地形装饰物缩放 - 对称 +WESTRING_WECOMMAND_DOODRAND_SCALEASYM=工具 - 随机地形装饰物缩放 - 不对称 +WESTRING_WECOMMAND_DOODRAND_SCALEZ=工具 - 随机地形装饰物缩放 - Z轴 +WESTRING_WECOMMAND_DOODRAND_SCALEXY=工具 - 随机地形装饰物缩放 - XY面 +WESTRING_WECOMMAND_SELECTION_SETUNIFORMZ=工具 - 设置统一高度 +WESTRING_WECOMMAND_RESETRANDBRUSH=工具 - 重设随机刷子 +WESTRING_WECOMMAND_ENFORCE_WATERLIMITS=高级 - 开关强行水域限制 +WESTRING_WECOMMAND_ENFORCE_CAMBOUNDS=高级 - 开关强行镜头范围锁定 +WESTRING_WECOMMAND_RESETFIXEDZ=高级 - 开关重置固定物体高度 + +WESTRING_WECOMMAND_PLAYER_1=其他 - 设置当前玩家 - 01 +WESTRING_WECOMMAND_PLAYER_2=其他 - 设置当前玩家 - 02 +WESTRING_WECOMMAND_PLAYER_3=其他 - 设置当前玩家 - 03 +WESTRING_WECOMMAND_PLAYER_4=其他 - 设置当前玩家 - 04 +WESTRING_WECOMMAND_PLAYER_5=其他 - 设置当前玩家 - 05 +WESTRING_WECOMMAND_PLAYER_6=其他 - 设置当前玩家 - 06 +WESTRING_WECOMMAND_PLAYER_7=其他 - 设置当前玩家 - 07 +WESTRING_WECOMMAND_PLAYER_8=其他 - 设置当前玩家 - 08 +WESTRING_WECOMMAND_PLAYER_9=其他 - 设置当前玩家 - 09 +WESTRING_WECOMMAND_PLAYER_10=其他 - 设置当前玩家 - 10 +WESTRING_WECOMMAND_PLAYER_11=其他 - 设置当前玩家 - 11 +WESTRING_WECOMMAND_PLAYER_12=其他 - 设置当前玩家 - 12 +WESTRING_WECOMMAND_PLAYER_NP=其他 - 设置当前玩家 - 中立被动 +WESTRING_WECOMMAND_PLAYER_NH=其他 - 设置当前玩家 - 中立敌对 + +WESTRING_WECOMMAND_LAYER_TERRAIN=层面 - 地形 +WESTRING_WECOMMAND_LAYER_UNITS=层面 - 单位 +WESTRING_WECOMMAND_LAYER_DOODADS=层面 - 装饰物 +WESTRING_WECOMMAND_LAYER_REGIONS=层面 - 区域 +WESTRING_WECOMMAND_LAYER_CAMERAS=层面 - 镜头 + +WESTRING_WECOMMAND_NEWPAL_TERRAIN=窗口 - 新面板 - 地形 +WESTRING_WECOMMAND_NEWPAL_UNITS=窗口 - 新面板 - 单位 +WESTRING_WECOMMAND_NEWPAL_DOODADS=窗口 - 新面板 - 装饰物 +WESTRING_WECOMMAND_NEWPAL_REGIONS=窗口 - 新面板 - 地区 +WESTRING_WECOMMAND_NEWPAL_CAMERAS=窗口 - 新面板 - 镜头 +WESTRING_WECOMMAND_TOGGLE_PALETTEDISPLAY=窗口 - 开关面板显示 + +WESTRING_WECOMMAND_MODULE_TERRAIN=模块 - 地形编辑器 +WESTRING_WECOMMAND_MODULE_SCRIPTS=模块 - 触发编辑器 +WESTRING_WECOMMAND_MODULE_CAMPAIGN=模块 - 战役编辑器 +WESTRING_WECOMMAND_MODULE_SOUND=模块 - 声音编辑器 +WESTRING_WECOMMAND_MODULE_OBJEDIT=模块 - 物体编辑器 +WESTRING_WECOMMAND_MODULE_OBJMAN=模块 - 物体管理器 +WESTRING_WECOMMAND_MODULE_IMPORT=模块 - 导入管理器 +WESTRING_WECOMMAND_MODULE_AI=模块 - AI编辑器 + +WESTRING_WECOMMAND_MODULE_CLOSE=文件 - 关闭模块 +WESTRING_WECOMMAND_MODULE_UNDO=编辑 - 撤消 - 模块 +WESTRING_WECOMMAND_MODULE_REDO=编辑 - 重做 - 模块 +WESTRING_WECOMMAND_MODULE_TOGGLETOOLBAR=窗口 - 开关工具条显示 - 模块 + +WESTRING_WECOMMAND_SE_NEWCATEGORY=新建 - 类别 +WESTRING_WECOMMAND_SE_NEWTRIGGER=新建 - 触发 +WESTRING_WECOMMAND_SE_NEWTRIGGERCOMMENT=新建 - 触发器注释 +WESTRING_WECOMMAND_SE_NEWEVENT=新建 - 事件 +WESTRING_WECOMMAND_SE_NEWCONDITION=新建 - 条件 +WESTRING_WECOMMAND_SE_NEWACTION=新建 - 动作 +WESTRING_WECOMMAND_SE_RENAME=文件 - 重命名 +WESTRING_WECOMMAND_SE_GLOBVARS=编辑 - 编辑变量 +WESTRING_WECOMMAND_SE_RESETTRIGGERS=文件 - 重置触发器 +WESTRING_WECOMMAND_SE_IMPORTTRIGGERS=文件 - 导入触发器 +WESTRING_WECOMMAND_SE_EXPORTTRIGGERS=文件 - 导出触发器 +WESTRING_WECOMMAND_SE_COPY=编辑 - 复制 +WESTRING_WECOMMAND_SE_COPYASTEXT=编辑 - 复制为文本格式 +WESTRING_WECOMMAND_SE_PASTE=编辑 - 粘贴 +WESTRING_WECOMMAND_SE_CUT=编辑 - 剪切 +WESTRING_WECOMMAND_SE_CLEAR=编辑 - 清除 +WESTRING_WECOMMAND_SE_SELECTALL=编辑 - 全选 +WESTRING_WECOMMAND_SE_MOVEUP=编辑 - 上移 +WESTRING_WECOMMAND_SE_MOVEDOWN=编辑 - 下移 +WESTRING_WECOMMAND_SE_CONVERTTOCUSTOM=编辑 - 转换为自定义文本 +WESTRING_WECOMMAND_SE_TOGGLEFUNCENABLE=编辑 - 触发功能允许/禁止 +WESTRING_WECOMMAND_SE_TOGGLETRIGENABLE=编辑 - 触发允许/禁止 +WESTRING_WECOMMAND_SE_TOGGLETRIGINITON=编辑 - 触发初始打开/关闭 +WESTRING_WECOMMAND_SE_TOGGLECATCOMMENT=编辑 - 触发类别是/否注释格式 +WESTRING_WECOMMAND_SE_FIND=编辑 - 查找 +WESTRING_WECOMMAND_SE_FINDNEXT=编辑 - 查找下一个 +WESTRING_WECOMMAND_SE_FINDPREV=编辑 - 查找上一个 +WESTRING_WECOMMAND_SE_VARIABLE_ADD=编辑 - 变量对话框 - 添加变量 +WESTRING_WECOMMAND_SE_VARIABLE_EDIT=编辑 - 变量对话框 - 编辑变量 +WESTRING_WECOMMAND_SE_VARIABLE_RENAME=编辑 - 变量对话框 - 重命名变量 +WESTRING_WECOMMAND_SE_VARIABLE_DELETE=编辑 - 变量对话框 - 删除变量 + +WESTRING_WECOMMAND_OE_NEWOBJECT=文件 - 新建物体 +WESTRING_WECOMMAND_OE_RENAMEOBJECT=文件 - 重命名物体 +WESTRING_WECOMMAND_OE_DELETEOBJECT=文件 - 删除物体 +WESTRING_WECOMMAND_OE_RESETSELECTEDOBJECT=文件 - 重设物体 +WESTRING_WECOMMAND_OE_RESETALLOBJECTS=文件 - 重置所有物体 +WESTRING_WECOMMAND_OE_IMPORTDATA=文件 - 导入数据 +WESTRING_WECOMMAND_OE_EXPORTDATA=文件 - 导出数据 +WESTRING_WECOMMAND_OE_IMPORTALLDATA=文件 - 导入所有数据 +WESTRING_WECOMMAND_OE_EXPORTALLDATA=文件 - 导出所有数据 +WESTRING_WECOMMAND_OE_EDITFIELD=编辑 - 编辑区域 +WESTRING_WECOMMAND_OE_RESETFIELD=编辑 - 重设区域 +WESTRING_WECOMMAND_OE_TOGGLERAWDATA=察看 - 使用原始数据显示 +WESTRING_WECOMMAND_OE_TOGGLESORTBYNAME=显示 – 按名字排序 +WESTRING_WECOMMAND_OE_AUTOFILL=编辑 - 自动等级填充 +WESTRING_WECOMMAND_OE_COPY=编辑 - 复制 +WESTRING_WECOMMAND_OE_PASTE=编辑 - 粘贴 +WESTRING_WECOMMAND_OE_FIND=编辑 - 查找 +WESTRING_WECOMMAND_OE_FINDNEXT=编辑 - 查找下一个 +WESTRING_WECOMMAND_OE_FINDPREV=编辑 - 查找上一个 + +WESTRING_WECOMMAND_OE_VIEWCAT_00=察看 - 察看类别 01 +WESTRING_WECOMMAND_OE_VIEWCAT_01=察看 - 察看类别 02 +WESTRING_WECOMMAND_OE_VIEWCAT_02=察看 - 察看类别 03 +WESTRING_WECOMMAND_OE_VIEWCAT_03=察看 - 察看类别 04 +WESTRING_WECOMMAND_OE_VIEWCAT_04=察看 - 察看类别 05 +WESTRING_WECOMMAND_OE_VIEWCAT_05=察看 - 察看类别 06 +WESTRING_WECOMMAND_OE_VIEWCAT_06=察看 - 察看类别 07 +WESTRING_WECOMMAND_OE_VIEWCAT_07=察看 - 察看类别 08 +WESTRING_WECOMMAND_OE_VIEWCAT_08=察看 - 察看类别 09 +WESTRING_WECOMMAND_OE_VIEWCAT_09=察看 - 察看类别 10 +WESTRING_WECOMMAND_OE_VIEWCAT_10=察看 - 察看类别 11 +WESTRING_WECOMMAND_OE_VIEWCAT_11=察看 - 察看类别 12 + +WESTRING_WECOMMAND_SNE_USESOUND=文件 - 作为音效使用 +WESTRING_WECOMMAND_SNE_IMPORTSOUND=文件 - 导入声音 +WESTRING_WECOMMAND_SNE_EXPORTSOUND=文件 - 导出声音 +WESTRING_WECOMMAND_SNE_REMOVESOUND=文件 – 删除导入的声音 +WESTRING_WECOMMAND_SNE_USEMUSIC=文件 - 作为音乐使用 +WESTRING_WECOMMAND_SNE_REPLACESOUND=文件 - 替代内部声音 +WESTRING_WECOMMAND_SNE_PLAYSOUND=编辑 - 播放声音 +WESTRING_WECOMMAND_SNE_STOPPLAYBACK=编辑 - 停止播放 +WESTRING_WECOMMAND_SNE_RENAMEVARIABLE=编辑 - 重命名声音变量 +WESTRING_WECOMMAND_SNE_SORTVARIABLES=编辑 - 按名字排序 +WESTRING_WECOMMAND_SNE_DELETEVARIABLE=编辑 - 删除声音变量 +WESTRING_WECOMMAND_SNE_VIEWSOUNDPROPS=编辑 - 编辑声音属性 +WESTRING_WECOMMAND_SNE_MOVEVARUP=编辑 - 上移 +WESTRING_WECOMMAND_SNE_MOVEVARDOWN=编辑 - 下移 +WESTRING_WECOMMAND_SNE_FIND=编辑 – 查找 +WESTRING_WECOMMAND_SNE_FINDNEXT=编辑 – 查找下一个 +WESTRING_WECOMMAND_SNE_FINDPREV=编辑- 查找上一个 + +WESTRING_WECOMMAND_SOUNDVOLUME_UP=编辑 - 音效音量升高 +WESTRING_WECOMMAND_SOUNDVOLUME_DOWN=编辑 - 音效音量降低 +WESTRING_WECOMMAND_MUSICVOLUME_UP=编辑 - 音乐音量升高 +WESTRING_WECOMMAND_MUSICVOLUME_DOWN=编辑 - 音乐音量降低 + +WESTRING_WECOMMAND_CE_NEW=文件 - 新建 +WESTRING_WECOMMAND_CE_OPEN=文件 - 打开 +WESTRING_WECOMMAND_CE_CLOSE=文件 - 关闭 +WESTRING_WECOMMAND_CE_SAVE=文件 - 保存 +WESTRING_WECOMMAND_CE_SAVEAS=文件 - 另存为 +WESTRING_WECOMMAND_CE_ADDMAP=编辑 - 添加地图 +WESTRING_WECOMMAND_CE_REMOVEMAP=编辑 - 删除地图 +WESTRING_WECOMMAND_CE_EXPORTMAP=编辑 - 导出地图 +WESTRING_WECOMMAND_CE_REPLACEMAP=编辑 - 替代地图 +WESTRING_WECOMMAND_CE_EDITMAP=编辑 - 编辑地图 +WESTRING_WECOMMAND_CE_MOVEMAPUP=编辑 - 上移地图 +WESTRING_WECOMMAND_CE_MOVEMAPDOWN=编辑 - 下移地图 +WESTRING_WECOMMAND_CE_GAMECONSTANTS=编辑 - 游戏平衡性常数 +WESTRING_WECOMMAND_CE_GAMEINTERFACE=编辑 - 游戏界面 +WESTRING_WECOMMAND_CE_ADDBUTTON=编辑 - 添加按钮 +WESTRING_WECOMMAND_CE_EDITBUTTON=编辑 - 编辑按钮 +WESTRING_WECOMMAND_CE_DELETEBUTTON=编辑 - 删除按钮 +WESTRING_WECOMMAND_CE_MOVEBUTTONUP=编辑 - 上移按钮 +WESTRING_WECOMMAND_CE_MOVEBUTTONDOWN=编辑 - 下移按钮 +WESTRING_WECOMMAND_CE_COPY=编辑 - 复制 +WESTRING_WECOMMAND_CE_CUT=编辑 - 剪切 +WESTRING_WECOMMAND_CE_PASTE=编辑 - 粘贴 +WESTRING_WECOMMAND_CE_CLEAR=编辑 - 清除 +WESTRING_WECOMMAND_CE_HELP=帮助 - 战役编辑器帮助 + +WESTRING_WECOMMAND_AIE_NEW=文件 - 新建 +WESTRING_WECOMMAND_AIE_OPEN=文件 - 打开 +WESTRING_WECOMMAND_AIE_CLOSE=文件 - 关闭 +WESTRING_WECOMMAND_AIE_SAVE=文件 - 保存 +WESTRING_WECOMMAND_AIE_SAVEAS=文件 - 另存为 +WESTRING_WECOMMAND_AIE_EXPORTSCRIPT=文件 - 导出脚本 +WESTRING_WECOMMAND_AIE_TESTAI=文件 - 测试AI + +WESTRING_WECOMMAND_AIE_COPY=编辑 - 复制 +WESTRING_WECOMMAND_AIE_CUT=编辑 - 剪切 +WESTRING_WECOMMAND_AIE_PASTE=编辑 - 粘贴 +WESTRING_WECOMMAND_AIE_CLEAR=编辑 - 清除 +WESTRING_WECOMMAND_AIE_MOVEUP=编辑 - 上移 +WESTRING_WECOMMAND_AIE_MOVEDOWN=编辑 - 下移 +WESTRING_WECOMMAND_AIE_MODIFY_CONDITION=编辑 - 修改条件 +WESTRING_WECOMMAND_AIE_EDITITEM=编辑 - 编辑物品 +WESTRING_WECOMMAND_AIE_ADDITEM=编辑 - 添加物品 +WESTRING_WECOMMAND_AIE_CUSTOMDATA_IMPORT=编辑 - 导入自定义数据 +WESTRING_WECOMMAND_AIE_CUSTOMDATA_EXPORT=编辑 - 导出自定义数据 +WESTRING_WECOMMAND_AIE_CUSTOMDATA_CLEAR=编辑 - 清除自定义数据 +WESTRING_WECOMMAND_AIE_ADDTOMAP=文件 - 添加到地图 + +WESTRING_WECOMMAND_OM_VIEWOBJECT=编辑 - 察看物体 +WESTRING_WECOMMAND_OM_CROSSREF=编辑 - 察看引用对象 +WESTRING_WECOMMAND_OM_EDITPROPS=编辑 - 编辑对象属性 +WESTRING_WECOMMAND_OM_DELETEOBJ=编辑 - 删除对象 +WESTRING_WECOMMAND_OM_RENAMEOBJ=编辑 - 重命名对象 + +WESTRING_WECOMMAND_OM_VIEW_MAPSUMMARY=察看 - 察看 01 (地图概况) +WESTRING_WECOMMAND_OM_VIEW_UNITS=察看 - 察看 02 (单位) +WESTRING_WECOMMAND_OM_VIEW_ITEMS=察看 - 察看 03 (物品) +WESTRING_WECOMMAND_OM_VIEW_DOODADS=察看 - 察看 04 (地形装饰物) +WESTRING_WECOMMAND_OM_VIEW_REGIONS=察看 - 察看 05 (矩形区域) +WESTRING_WECOMMAND_OM_VIEW_CAMERAS=察看 - 察看 06 (镜头) +WESTRING_WECOMMAND_OM_VIEW_TRIGGERS=察看 - 察看 07 (触发器) +WESTRING_WECOMMAND_OM_VIEW_FUNCTIONS=察看 - 察看 08 (函数) +WESTRING_WECOMMAND_OM_VIEW_VARIABLES=察看 - 察看 09 (变量) +WESTRING_WECOMMAND_OM_VIEW_SOUNDS=察看 - 察看 10 (声音) + +WESTRING_WECOMMAND_IM_IMPORT=文件 – 导入文件 +WESTRING_WECOMMAND_IM_IMPORTMULTIPLE=文件 - 导入文件夹 +WESTRING_WECOMMAND_IM_EXPORT=文件- 导出文件 +WESTRING_WECOMMAND_IM_EXPORTALL=文件- 导出所有的文件 +WESTRING_WECOMMAND_IM_DELETE=编辑 - 删除 +WESTRING_WECOMMAND_IM_MODIFY=编辑 - 修改 +WESTRING_WECOMMAND_IM_REPLACE=编辑 - 替换 + +WESTRING_WECOMMAND_MORPHUNITS=其他 - 变形选择 +WESTRING_WECOMMAND_VICTORY=其他 - 胜利选择 + +WESTRING_EDITORSUFFIX_HORIZONTAL=(水平) +WESTRING_EDITORSUFFIX_VERTICAL=(垂直) +WESTRING_EDITORSUFFIX_HORIZONTAL1=(水平1) +WESTRING_EDITORSUFFIX_VERTICAL1=(垂直1) +WESTRING_EDITORSUFFIX_HORIZONTAL2=(水平2) +WESTRING_EDITORSUFFIX_VERTICAL2=(垂直2) +WESTRING_EDITORSUFFIX_HORIZONTAL3=(水平3) +WESTRING_EDITORSUFFIX_VERTICAL3=(垂直3) +WESTRING_EDITORSUFFIX_HORIZONTAL4=(水平4) +WESTRING_EDITORSUFFIX_VERTICAL4=(垂直4) +WESTRING_EDITORSUFFIX_DIAGONAL1=(对角1) +WESTRING_EDITORSUFFIX_DIAGONAL2=(对角2) +WESTRING_EDITORSUFFIX_BOTTOMLEFT=(左下) +WESTRING_EDITORSUFFIX_BOTTOMRIGHT=(右下) +WESTRING_EDITORSUFFIX_TOPLEFT=(左上) +WESTRING_EDITORSUFFIX_TOPRIGHT=(右上) +WESTRING_EDITORSUFFIX_BOTTOMLEFT2=(左下2) +WESTRING_EDITORSUFFIX_BOTTOMRIGHT2=(右下2) +WESTRING_EDITORSUFFIX_TOPLEFT2=(左上 2) +WESTRING_EDITORSUFFIX_TOPRIGHT2=(右上2) +WESTRING_EDITORSUFFIX_ANGLED=(有角度的) +WESTRING_EDITORSUFFIX_ONE=(1) +WESTRING_EDITORSUFFIX_TWO=(2) + +// 1.17 strings +WESTRING_UEVAL_UCBO=能被其他建筑建造 +WESTRING_UEVAL_UCBO_HINT="仅用于金矿,对其它建筑无用" +WESTRING_UEVAL_UIBO=能建造在其他建筑上 +WESTRING_UEVAL_UIBO_HINT="仅用于不死族金矿,对其它建筑无用" +WESTRING_AEVAL_AANC=动画名字等级 +WESTRING_AEVAL_AAN1=动画名字(等级 2) +WESTRING_AEVAL_AAN2=动画名字(等级 3) +WESTRING_AEVAL_AAN3=动画名字(等级 4) +WESTRING_SKINVAL_C11A=图标 - 小地图资源 (被缠绕) +WESTRING_SKINVAL_C11B=图标 - 小地图资源 (被不死占领) +WESTRING_MISCVAL_MIRD=游戏性 - 魔法免疫抵抗攻击 +WESTRING_MISCVAL_MIRD_HINT=设置魔法攻击能否攻击魔免单位. +WESTRING_MISCVAL_MIRT=游戏性 - 魔法免疫抵抗荆棘 +WESTRING_MISCVAL_MIRT_HINT=由于反弹并不会对魔免单位造成伤害,所以区别只是是否有反弹效果而已. +WESTRING_MISCVAL_MIRL=游戏性 - 魔法免疫抵抗吸血 +WESTRING_MISCVAL_MIRL_HINT=设置攻击魔免单位时吸血效果是否有效. +WESTRING_MISCVAL_MIRU=游戏性 - 魔法免疫抵抗终级 +WESTRING_MISCVAL_MIRU_HINT=设置终极技能否对魔免单位有效. +WESTRING_MISCVAL_CYST=游戏性 - 飓风技能隐藏单位 +WESTRING_MISCVAL_CYST_HINT=设置被飓风技能命中的单位能否被选取. +WESTRING_MISCVAL_DCAL=游戏性 - 等价所属检查 +WESTRING_MISCVAL_DCAL_HINT=未发现作用 +WESTRING_MISCVAL_MTCL=游戏性 - 群体传送使单位聚集 +WESTRING_MISCVAL_DSCL=游戏性 - 黑暗传送使单位聚集 +WESTRING_MISCVAL_TPCL=游戏性 - 回城卷轴使单位聚集 +WESTRING_MISCVAL_ARCL=游戏性 - 召唤护符使单位聚集 +WESTRING_MISCVAL_MLCL=游戏性 - 飞行单位变身寻找最近地着陆 +WESTRING_MISCVAL_MLCL_HINT="为True时,当有单位或可破坏物障碍时会自动寻找最近地着陆;为False时会提示无法登陆." +WESTRING_MISCVAL_MADI=游戏性 - 变身时禁用其它形态交替技能 +WESTRING_MISCVAL_MADI_HINT="使用各类变形技能时将禁用其它形态交替技能(这是个Bug项,事实上除个一些个别技能,几乎所有技能会被禁用)" +WESTRING_MISCVAL_ISDD=游戏性 - 驱逐魔法可对无敌单位造成伤害 +WESTRING_MISCVAL_CDRP=游戏性 - 建造建筑损伤返还惩罚 +WESTRING_MISCVAL_CDRP_HINT="如果建筑在升级中受到损伤,设置其被取消时是否需要扣除相应资源." +WESTRING_MISCVAL_UDRP=游戏性 - 升级建筑损伤返还惩罚 +WESTRING_MISCVAL_UDRP_HINT="如果建筑在建造中受到损伤,设置其被取消时是否需要扣除相应资源." +WESTRING_MISCVAL_AMBO=游戏性 - 允许多种奖励 +WESTRING_MISCVAL_AMBO_HINT=未发现作用 +WESTRING_MISCVAL_EIMA=游戏性 - 诱捕属于魔法技能 +WESTRING_MISCVAL_EIMA_HINT=设置诱捕属于物理或是魔法技能. +WESTRING_MISCVAL_WIMA=游戏性 - 蛛网属于魔法技能 +WESTRING_MISCVAL_WIMA_HINT=设置蛛网属于物理或是魔法技能. +WESTRING_MISCVAL_IGAB=游戏性 - 镜像有攻击加成 +WESTRING_MISCVAL_IASB=游戏性 - 镜像有攻击速度加成 +WESTRING_MISCVAL_IGMB=游戏性 - 镜像有移动速度加成 +WESTRING_MISCVAL_IGDB=游戏性 - 镜像有防御加成 +WESTRING_MISCVAL_ICRL=游戏性 - 镜像能回复生命 +WESTRING_MISCVAL_ICRM=游戏性 - 镜像能回复魔法 +WESTRING_MISCVAL_IBAU=游戏性 - 镜像能给予光环 +WESTRING_MISCVAL_IBAU_HINT="本体拥有的光环,镜像也能给予周围单位该光环的效果影响." +WESTRING_MISCVAL_IGAU=游戏性 - 镜像自动施法允许 +WESTRING_MISCVAL_IGAU_HINT=如霜冻护甲、心灵之火等自动施放技能是否对镜像自动施放. +WESTRING_MISCVAL_INBA=游戏性 - 隐形单位能给予光环 +WESTRING_MISCVAL_PUBA=游戏性 - 被变形单位能给予光环 +WESTRING_MISCVAL_BUBA=游戏性 - 钻地单位能给予光环 +WESTRING_MISCVAL_AUBA=游戏性 - 操纵死尸复活的单位能给予光环 +WESTRING_MISCVAL_FHBA=游戏性 - 飞行英雄能给予光环 +WESTRING_MISCVAL_FHBA_HINT=未发现作用 +WESTRING_MISCVAL_MSBS=游戏性 - 移动速度奖励累加 +WESTRING_MISCVAL_MSBS_HINT=无效项 +WESTRING_MISCVAL_DUEB=游戏性 - 汲取使用虚无奖励 +WESTRING_MISCVAL_DUEB_HINT=无效项 +WESTRING_MISCVAL_DTLI=游戏性 - 汲取可传输生命 +WESTRING_MISCVAL_DTMA=游戏性 - 汲取可传输魔法 +WESTRING_MISCVAL_DGBL=游戏性 - 汲取可获得额外生命值 +WESTRING_MISCVAL_DGBM=游戏性 - 汲取可获得额外魔法值 +WESTRING_MISCVAL_EDBA=游戏性 - 虚无对盟友伤害加成 +WESTRING_MISCVAL_EDBA_HINT=设置对盟友虚无单位造成伤害时是否有加成效果. +WESTRING_MISCVAL_CDDS=游戏性 -能取消神圣护盾 +WESTRING_MISCVAL_CDDS_HINT=设置神圣护盾可否取消 +WESTRING_MISCVAL_CDAV=游戏性- 能取消天神下凡(NYI) +WESTRING_MISCVAL_CDAF=游戏性- 能取消复仇者形态(NYI) +WESTRING_MISCVAL_CDBS=游戏性- 能取消装甲皮肤(NYI) +WESTRING_MISCVAL_CDBF=游戏性- 能取消熊形态(NYI) +WESTRING_MISCVAL_CDBM=游戏性- 能取消剑刃风暴(NYI) +WESTRING_MISCVAL_CDBU=游戏性- 能取消钻地(NYI) +WESTRING_MISCVAL_CDCA=游戏性- 能取消战斗号召(NYI) +WESTRING_MISCVAL_CDCR=游戏性- 能取消化学风暴(NYI) +WESTRING_MISCVAL_CDCF=游戏性- 能取消灵肉形态(NYI) +WESTRING_MISCVAL_CDDE=游戏性- 能取消防御(NYI) +WESTRING_MISCVAL_CDIM=游戏性- 能取消献祭(NYI) +WESTRING_MISCVAL_CDMF=游戏性- 能取消魔力之焰(NYI) +WESTRING_MISCVAL_CDMS=游戏性- 能取消魔法护盾(NYI) +WESTRING_MISCVAL_CDME=游戏性- 能取消变身(NYI) +WESTRING_MISCVAL_CDRF=游戏性- 能取消乌鸦形态(NYI) +WESTRING_MISCVAL_CDRG=游戏性- 能取消机器地精(NYI) +WESTRING_MISCVAL_CDSF=游戏性- 能取消石像形态(NYI) +WESTRING_MISCVAL_CDSU=游戏性- 能取消潜水(NYI) +WESTRING_MISCVAL_CDWW=游戏性- 能取消疾步风(NYI) +WESTRING_MISCVAL_RUCO=游戏性 - 升级使用建造费用 +WESTRING_MISCVAL_RUCO_HINT="该项为True时,建筑升级费用=该建筑建造费用;为False时,建筑升级费用=该建筑建造费用 - 原建筑建造费用." +WESTRING_MISCVAL_DEDE=游戏性 - 允许反弹远程攻击 +WESTRING_MISCVAL_DEDE_HINT=设置艾鲁尼之优雅、防御等技能的反弹功能可用 +WESTRING_MISCVAL_ISAR=中立生物 - 警戒范围 - 物品出售 +WESTRING_MISCVAL_ISAR_HINT=中立生物对玩家购买物品事件的警戒范围. +WESTRING_MISCVAL_USAR=中立生物 - 警戒范围 - 单位出售 +WESTRING_MISCVAL_USAR_ISAR=中立生物对玩家雇俑单位事件的警戒范围. +WESTRING_MISCVAL_ASAR=中立生物 - 警戒范围 - 技能出售 +WESTRING_MISCVAL_ASAR_ISAR=中立生物对玩家使用中立建筑技能的警戒范围. +WESTRING_TRIGTYPE_attacktype=WESTRING_COD_TYPE_ATTACKTYPE +WESTRING_TRIGTYPE_damagetype=伤害类型 +WESTRING_TRIGTYPE_lightning=闪电效果 +WESTRING_TRIGTYPE_weapontype=武器类型 +WESTRING_TRIGTYPE_effecttype=效果类型 +WESTRING_TRIGTYPE_soundtype=声音类型 +WESTRING_DAMAGE_TYPE_UNKNOWN=未知 +WESTRING_DAMAGE_TYPE_NORMAL=普通 +WESTRING_DAMAGE_TYPE_ENHANCED=强化 +WESTRING_DAMAGE_TYPE_FIRE=火焰 +WESTRING_DAMAGE_TYPE_COLD=冰冻 +WESTRING_DAMAGE_TYPE_LIGHTNING=闪电 +WESTRING_DAMAGE_TYPE_POISON=毒药 +WESTRING_DAMAGE_TYPE_DISEASE=疾病 +WESTRING_DAMAGE_TYPE_DIVINE=神圣 +WESTRING_DAMAGE_TYPE_MAGIC=魔法 +WESTRING_DAMAGE_TYPE_SONIC=音速 +WESTRING_DAMAGE_TYPE_ACID=酸性 +WESTRING_DAMAGE_TYPE_FORCE=力量 +WESTRING_DAMAGE_TYPE_DEATH=死亡 +WESTRING_DAMAGE_TYPE_MIND=精神 +WESTRING_DAMAGE_TYPE_PLANT=植物 +WESTRING_DAMAGE_TYPE_DEFENSIVE=防御 +WESTRING_DAMAGE_TYPE_DEMOLITION=破坏 +WESTRING_DAMAGE_TYPE_SLOW_POISON=慢性毒药 +WESTRING_DAMAGE_TYPE_SPIRIT_LINK=灵魂锁链 +WESTRING_DAMAGE_TYPE_SHADOW_STRIKE=暗影突袭 +WESTRING_DAMAGE_TYPE_UNIVERSAL=通用 +WESTRING_EFFECT_TYPE_EFFECT=点目标效果 +WESTRING_EFFECT_TYPE_TARGET=目标效果 +WESTRING_EFFECT_TYPE_CASTER=施法者效果 +WESTRING_EFFECT_TYPE_SPECIAL=特殊效果 +WESTRING_EFFECT_TYPE_AREA_EFFECT=区域效果 +WESTRING_EFFECT_TYPE_MISSILE=投射物效果 +WESTRING_EFFECT_TYPE_LIGHTNING=闪电效果 +WESTRING_SOUND_TYPE_EFFECT=音效 +WESTRING_SOUND_TYPE_EFFECT_LOOPED=循环音效 +WESTRING_AEVAL_HAB2=百分比奖励 +WESTRING_AEVAL_OCR5=不会丢失 +WESTRING_AEVAL_OCR5_HINT="能无视闪避技能和高地带来的丢失,不能无视离开攻击缓冲范围的丢失" +WESTRING_AEVAL_OWK4=不会丢失 +WESTRING_AEVAL_OWK4_HINT="能无视闪避技能和高地带来的丢失,不能无视离开攻击缓冲范围的丢失" +WESTRING_AEVAL_NDR4=每秒传输的生命值 +WESTRING_AEVAL_NDR5=每秒传输的魔法值 +WESTRING_AEVAL_NDR6=生命值奖励参数 +WESTRING_AEVAL_NDR7=魔法值奖励参数 +WESTRING_AEVAL_NDR8=生命值奖励衰减 +WESTRING_AEVAL_NDR9=魔法值奖励衰减 +WESTRING_AEVAL_UAN3=继承升级 +WESTRING_AEVAL_UAU3=百分比奖励 +WESTRING_AEVAL_HAD2=百分比奖励 +WESTRING_AEVAL_HDS1=可以取消 +WESTRING_AEVAL_ROA4=魔法再生 +WESTRING_AEVAL_ROA5=影响敌对数量 +WESTRING_AEVAL_ROA6=影响友军数量 +WESTRING_AEVAL_ROA7=最大单位数量 +WESTRING_AEVAL_EAR2=近战奖励 +WESTRING_AEVAL_EAR3=远程奖励 +WESTRING_AEVAL_EAR4=使用指定数值奖励 +WESTRING_AEVAL_NCR5=移动速度奖励 (仅限信息面板) +WESTRING_AEVAL_NCR5_HINT="只决定加减速的红字或绿字以及显示的<非常快>之类信息" +WESTRING_AEVAL_NCR6=攻击速度奖励 (仅限信息面板) +WESTRING_AEVAL_NCR6_HINT="只决定加减速的红字或绿字以及显示的<非常快>之类信息" +WESTRING_AEVAL_NRG5=力量奖励 +WESTRING_AEVAL_NRG6=防御奖励 +WESTRING_AEVAL_NSY5=约束范围 +WESTRING_AEVAL_NSY5_HINT="离开该范围则召唤单位死亡" +WESTRING_AEVAL_NVCU=可破坏物ID +WESTRING_AEVAL_NVCU_HINT="请按住shift双击该项打开并输入可破坏物ID(ID可在可破坏编辑中ctrl+D察看)" +WESTRING_AEVAL_CAD3=继承升级 +WESTRING_AEVAL_AMS4=魔法损耗 +WESTRING_AEVAL_CMG3=增加当前生命值 +WESTRING_AEVAL_DEF6=反弹几率 +WESTRING_AEVAL_DEF7=接受反弹攻击伤害(穿刺) +WESTRING_AEVAL_DEF8=接受反弹攻击伤害(魔法) +WESTRING_AEVAL_DVM6=忽略友军的增益魔法效果 +WESTRING_AEVAL_NFY2=约束范围 +WESTRING_AEVAL_FBK5=对召唤单位伤害 +WESTRING_AEVAL_MFL6=仅溅射伤害有魔法单位 +WESTRING_AEVAL_MIN2=转换时间 +WESTRING_AEVAL_PRG6=魔法损耗 +WESTRING_AEVAL_SDS6=尸体爆炸 +WESTRING_AEVAL_TAU1=影响敌对数量 +WESTRING_AEVAL_TAU2=影响友军数量 +WESTRING_AEVAL_TAU3=最大单位数量 +WESTRING_AEVAL_UCO5=最大攻击伤害 +WESTRING_AEVAL_UCO6=移动速度奖励 +WESTRING_AEVAL_UCB6=施法者死亡时杀死召唤单位 +WESTRING_AEVAL_HBH5=不会丢失 +WESTRING_AEVAL_HBH5_HINT="能无视闪避技能和高地带来的丢失,不能无视离开攻击缓冲范围的丢失" + +// 1.18 Strings +WESTRING_UNITTYPE_STUNNED="被枷锁的" +WESTRING_UNITTYPE_PLAGUED="附带瘟疫的" +WESTRING_UNITTYPE_SNARED="被束缚的" +WESTRING_UNITTYPE_POISONED="中毒的" +WESTRING_UNITTYPE_POLYMORPHED="被变形的" +WESTRING_UNITTYPE_SLEEPING="被催眠的" +WESTRING_UNITTYPE_RESISTANT="有抗性皮肤" +WESTRING_UNITTYPE_ETHEREAL="处于虚无状态" +WESTRING_UNITTYPE_MAGICIMMUNE="魔法免疫" +WESTRING_TRIGTYPE_image=图像 +WESTRING_TRIGTYPE_imagetype=图像类型 +WESTRING_TRIGTYPE_ubersplat=地面纹理变化 +WESTRING_TRIGTYPE_ubersplattype=地面纹理类型 +WESTRING_TRIGTYPE_lightningtype=闪电类型 +WESTRING_TRIGTYPE_pathingtype=路径类型 +WESTRING_TRIGTYPE_terrainshape=地形形状 +WESTRING_TRIGTYPE_terraintype=地形类型 +WESTRING_TRIGCAT_IMAGE="图像" +WESTRING_TRIGCAT_LIGHTNING="闪电效果" +WESTRING_TRIGCAT_UBERSPLAT="地面纹理" +WESTRING_PATHINGTYPE_ANY=任意 +WESTRING_PATHINGTYPE_WALKABILITY=可通行地面 +WESTRING_PATHINGTYPE_FLYABILITY=空中单位可通行 +WESTRING_PATHINGTYPE_BUILDABILITY=可建造地面 +WESTRING_PATHINGTYPE_PEONHARVESTPATHING=矿工采集可通行 +WESTRING_PATHINGTYPE_BLIGHTPATHING=荒芜地表 +WESTRING_PATHINGTYPE_FLOATABILITY=可通行海面 +WESTRING_PATHINGTYPE_AMPHIBIOUSPATHING=两栖单位可通行 +WESTRING_LIGHTNINGTYPE_CLPB=闪电链 - 主 +WESTRING_LIGHTNINGTYPE_CLSB=闪电链 - 次 +WESTRING_LIGHTNINGTYPE_DRAB=汲取 +WESTRING_LIGHTNINGTYPE_DRAL=生命汲取 +WESTRING_LIGHTNINGTYPE_DRAM=魔法汲取 +WESTRING_LIGHTNINGTYPE_AFOD=死亡之指 +WESTRING_LIGHTNINGTYPE_FORK=叉状闪电 +WESTRING_LIGHTNINGTYPE_HWPB=医疗波 - 主 +WESTRING_LIGHTNINGTYPE_HWSB=医疗波 - 次 +WESTRING_LIGHTNINGTYPE_CHIM=闪电攻击 +WESTRING_LIGHTNINGTYPE_LEAS=魔法镣铐 +WESTRING_LIGHTNINGTYPE_MBUR=法力燃烧 +WESTRING_LIGHTNINGTYPE_MFPB=魔力之焰 +WESTRING_LIGHTNINGTYPE_SPLK=灵魂锁链 +WESTRING_TERRAINTYPE_Ldrt=洛丹伦(夏) - 泥地 +WESTRING_TERRAINTYPE_Ldro=洛丹伦(夏) - 烂泥地 +WESTRING_TERRAINTYPE_Ldrg=洛丹伦(夏) - 泥草地 +WESTRING_TERRAINTYPE_Lrok=洛丹伦(夏) - 岩石 +WESTRING_TERRAINTYPE_Lgrs=洛丹伦(夏) - 草地 +WESTRING_TERRAINTYPE_Lgrd=洛丹伦(夏) - 黑暗草地 +WESTRING_TERRAINTYPE_Fdrt=洛丹伦(秋) - 泥地 +WESTRING_TERRAINTYPE_Fdro=洛丹伦(秋) - 烂泥地 +WESTRING_TERRAINTYPE_Fdrg=洛丹伦(秋) - 泥草地 +WESTRING_TERRAINTYPE_Frok=洛丹伦(秋) - 岩石 +WESTRING_TERRAINTYPE_Fgrs=洛丹伦(秋) - 草地 +WESTRING_TERRAINTYPE_Fgrd=洛丹伦(秋) - 黑暗草地 +WESTRING_TERRAINTYPE_Wdrt=洛丹伦(冬) - 泥地 +WESTRING_TERRAINTYPE_Wdro=洛丹伦(冬) - 烂泥地 +WESTRING_TERRAINTYPE_Wsng=洛丹伦(冬) - 雪草地 +WESTRING_TERRAINTYPE_Wrok=洛丹伦(冬) - 岩石 +WESTRING_TERRAINTYPE_Wgrs=洛丹伦(冬) - 草地 +WESTRING_TERRAINTYPE_Wsnw=洛丹伦(冬) - 雪地 +WESTRING_TERRAINTYPE_Bdrt=贫瘠之地 - 泥地 +WESTRING_TERRAINTYPE_Bdrh=贫瘠之地 - 烂泥地 +WESTRING_TERRAINTYPE_Bdrr=贫瘠之地 - 鹅卵石 +WESTRING_TERRAINTYPE_Bdrg=贫瘠之地 - 泥草地 +WESTRING_TERRAINTYPE_Bdsr=贫瘠之地 - 沙漠 +WESTRING_TERRAINTYPE_Bdsd=贫瘠之地 - 黑暗沙漠 +WESTRING_TERRAINTYPE_Bflr=贫瘠之地 - 岩石 +WESTRING_TERRAINTYPE_Bgrr=贫瘠之地 - 草地 +WESTRING_TERRAINTYPE_Adrt=白杨谷 - 泥地 +WESTRING_TERRAINTYPE_Adrd=白杨谷 - 烂泥地 +WESTRING_TERRAINTYPE_Agrs=白杨谷 - 草地 +WESTRING_TERRAINTYPE_Arck=白杨谷 - 岩石 +WESTRING_TERRAINTYPE_Agrd=白杨谷 - 长草 +WESTRING_TERRAINTYPE_Avin=白杨谷 - 藤蔓 +WESTRING_TERRAINTYPE_Adrg=白杨谷 - 泥草地 +WESTRING_TERRAINTYPE_Alvd=白杨谷 - 树叶 +WESTRING_TERRAINTYPE_Cdrt=费尔伍德 - 泥地 +WESTRING_TERRAINTYPE_Cdrd=费尔伍德 - 烂泥地 +WESTRING_TERRAINTYPE_Cpos=费尔伍德 - 毒沼 +WESTRING_TERRAINTYPE_Crck=费尔伍德 - 岩石 +WESTRING_TERRAINTYPE_Cvin=费尔伍德 - 藤蔓 +WESTRING_TERRAINTYPE_Cgrs=费尔伍德 - 草地 +WESTRING_TERRAINTYPE_Clvg=费尔伍德 - 树叶 +WESTRING_TERRAINTYPE_Ndrt=诺森德 - 泥地 +WESTRING_TERRAINTYPE_Ndrd=诺森德 - 暗黑泥地 +WESTRING_TERRAINTYPE_Nrck=诺森德 - 岩石 +WESTRING_TERRAINTYPE_Ngrs=诺森德 - 草地 +WESTRING_TERRAINTYPE_Nice=诺森德 - 冰 +WESTRING_TERRAINTYPE_Nsnw=诺森德 - 雪地 +WESTRING_TERRAINTYPE_Nsnr=诺森德 - 雪岩地 +WESTRING_TERRAINTYPE_Ydrt=城邦 - 泥地 +WESTRING_TERRAINTYPE_Ydtr=城邦 - 烂泥地 +WESTRING_TERRAINTYPE_Yblm=城邦 - 黑大理石 +WESTRING_TERRAINTYPE_Ybtl=城邦 - 砖 +WESTRING_TERRAINTYPE_Ysqd=城邦 - 方形地砖 +WESTRING_TERRAINTYPE_Yrtl=城邦 - 圆形地砖 +WESTRING_TERRAINTYPE_Ygsb=城邦 - 草地 +WESTRING_TERRAINTYPE_Yhdg=城邦 - 修剪的草地 +WESTRING_TERRAINTYPE_Ywmb=城邦 - 白大理石 +WESTRING_TERRAINTYPE_Vdrt=村庄 - 泥地 +WESTRING_TERRAINTYPE_Vdrr=村庄 - 烂泥地 +WESTRING_TERRAINTYPE_Vcrp=村庄 - 庄稼 +WESTRING_TERRAINTYPE_Vcbp=村庄 - 卵石路 +WESTRING_TERRAINTYPE_Vstp=村庄 - 碎石路 +WESTRING_TERRAINTYPE_Vgrs=村庄 - 矮草 +WESTRING_TERRAINTYPE_Vrck=村庄 - 岩石 +WESTRING_TERRAINTYPE_Vgrt=村庄 - 长草 +WESTRING_TERRAINTYPE_Qdrt=村庄(秋) - 泥地 +WESTRING_TERRAINTYPE_Qdrr=村庄(秋) - 烂泥地 +WESTRING_TERRAINTYPE_Qcrp=村庄(秋) - 庄稼 +WESTRING_TERRAINTYPE_Qcbp=村庄(秋) - 卵石路 +WESTRING_TERRAINTYPE_Qstp=村庄(秋) - 碎石路 +WESTRING_TERRAINTYPE_Qgrs=村庄(秋) - 矮草 +WESTRING_TERRAINTYPE_Qrck=村庄(秋) - 岩石 +WESTRING_TERRAINTYPE_Qgrt=村庄(秋) - 长草 +WESTRING_TERRAINTYPE_Xdrt=达拉然 - 泥地 +WESTRING_TERRAINTYPE_Xdtr=达拉然 - 烂泥地 +WESTRING_TERRAINTYPE_Xblm=达拉然 - 黑大理石 +WESTRING_TERRAINTYPE_Xbtl=达拉然 - 砖块 +WESTRING_TERRAINTYPE_Xsqd=达拉然 - 方形地砖 +WESTRING_TERRAINTYPE_Xrtl=达拉然 - 圆形地砖 +WESTRING_TERRAINTYPE_Xgsb=达拉然 - 草地 +WESTRING_TERRAINTYPE_Xhdg=达拉然 - 修剪的草地 +WESTRING_TERRAINTYPE_Xwmb=达拉然 - 白大理石 +WESTRING_TERRAINTYPE_Ddrt=地下城 - 泥地 +WESTRING_TERRAINTYPE_Dbrk=地下城 - 砖 +WESTRING_TERRAINTYPE_Drds=地下城 - 红色石头 +WESTRING_TERRAINTYPE_Dlvc=地下城 - 熔岩裂缝 +WESTRING_TERRAINTYPE_Dlav=地下城 - 熔岩 +WESTRING_TERRAINTYPE_Ddkr=地下城 - 黑暗岩石 +WESTRING_TERRAINTYPE_Dgrs=地下城 - 灰色石头 +WESTRING_TERRAINTYPE_Dsqd=地下城 - 方形地砖 +WESTRING_TERRAINTYPE_Gdrt=地底 - 泥地 +WESTRING_TERRAINTYPE_Gbrk=地底 - 砖 +WESTRING_TERRAINTYPE_Grds=地底 - 红色石头 +WESTRING_TERRAINTYPE_Glvc=地底 - 熔岩裂缝 +WESTRING_TERRAINTYPE_Glav=地底 - 熔岩 +WESTRING_TERRAINTYPE_Gdkr=地底 - 黑暗岩石 +WESTRING_TERRAINTYPE_Ggrs=地底 - 灰色石头 +WESTRING_TERRAINTYPE_Gsqd=地底 - 方形地砖 +WESTRING_TERRAINTYPE_Zdrt=沉沦的遗迹 - 泥地 +WESTRING_TERRAINTYPE_Zdtr=沉沦的遗迹 - 烂泥地 +WESTRING_TERRAINTYPE_Zdrg=沉沦的遗迹 - 泥草地 +WESTRING_TERRAINTYPE_Zbks=沉沦的遗迹 - 碎砖 +WESTRING_TERRAINTYPE_Zsan=沉沦的遗迹 - 沙地 +WESTRING_TERRAINTYPE_Zbkl=沉沦的遗迹 - 大砖块 +WESTRING_TERRAINTYPE_Ztil=沉沦的遗迹 - 圆形地砖 +WESTRING_TERRAINTYPE_Zgrs=沉沦的遗迹 - 草地 +WESTRING_TERRAINTYPE_Zvin=沉沦的遗迹 - 黑暗草地 +WESTRING_TERRAINTYPE_Idrt=冰封王座 - 泥地 +WESTRING_TERRAINTYPE_Idtr=冰封王座 - 烂泥地 +WESTRING_TERRAINTYPE_Idki=冰封王座 - 黑暗冰 +WESTRING_TERRAINTYPE_Ibkb=冰封王座 - 黑砖块 +WESTRING_TERRAINTYPE_Irbk=冰封王座 - 刻字砖块 +WESTRING_TERRAINTYPE_Itbk=冰封王座 - 砖铺 +WESTRING_TERRAINTYPE_Iice=冰封王座 - 冰 +WESTRING_TERRAINTYPE_Ibsq=冰封王座 - 黑方块 +WESTRING_TERRAINTYPE_Isnw=冰封王座 - 雪地 +WESTRING_TERRAINTYPE_Odrt=边缘之地 - 泥地 +WESTRING_TERRAINTYPE_Odtr=边缘之地 - 轻泥地 +WESTRING_TERRAINTYPE_Osmb=边缘之地 - 烂泥地 +WESTRING_TERRAINTYPE_Ofst=边缘之地 - 干裂土地 +WESTRING_TERRAINTYPE_Olgb=边缘之地 - 平石头 +WESTRING_TERRAINTYPE_Orok=边缘之地 - 岩石 +WESTRING_TERRAINTYPE_Ofsl=边缘之地 - 轻石头 +WESTRING_TERRAINTYPE_Oaby=边缘之地 - 深谷 +WESTRING_TERRAINTYPE_Kdrt=黑色城堡 - 泥地 +WESTRING_TERRAINTYPE_Kfsl=黑色城堡 - 轻泥地 +WESTRING_TERRAINTYPE_Kdtr=黑色城堡 - 烂泥地 +WESTRING_TERRAINTYPE_Kfst=黑色城堡 - 平石头 +WESTRING_TERRAINTYPE_Ksmb=黑色城堡 - 碎砖 +WESTRING_TERRAINTYPE_Klgb=黑色城堡 - 大砖块 +WESTRING_TERRAINTYPE_Ksqt=黑色城堡 - 方形地砖 +WESTRING_TERRAINTYPE_Kdkt=黑色城堡 - 黑砖块 +WESTRING_TERRAINTYPE_Jdrt=达拉然遗迹 - 泥地 +WESTRING_TERRAINTYPE_Jdtr=达拉然遗迹 - 烂泥地 +WESTRING_TERRAINTYPE_Jblm=达拉然遗迹 - 黑大理石 +WESTRING_TERRAINTYPE_Jbtl=达拉然遗迹 - 砖块 +WESTRING_TERRAINTYPE_Jsqd=达拉然遗迹 - 方形地砖 +WESTRING_TERRAINTYPE_Jrtl=达拉然遗迹 - 圆形地砖 +WESTRING_TERRAINTYPE_Jgsb=达拉然遗迹 - 草地 +WESTRING_TERRAINTYPE_Jhdg=达拉然遗迹 - 修剪的草地 +WESTRING_TERRAINTYPE_Jwmb=达拉然遗迹 - 白大理石 +WESTRING_TERRAINTYPE_cAc2=白杨谷 - 泥土悬崖 +WESTRING_TERRAINTYPE_cAc1=白杨谷 - 草地悬崖 +WESTRING_TERRAINTYPE_cBc2=贫瘠之地 - 沙地悬崖 +WESTRING_TERRAINTYPE_cBc1=贫瘠之地 - 草地悬崖 +WESTRING_TERRAINTYPE_cKc1=黑色城堡 - 泥土悬崖 +WESTRING_TERRAINTYPE_cKc2=黑色城堡 - 砖砌墙壁 +WESTRING_TERRAINTYPE_cYc2=城邦 - 泥土悬崖 +WESTRING_TERRAINTYPE_cYc1=城邦 - 方砖墙壁 +WESTRING_TERRAINTYPE_cXc2=达拉然 - 泥土悬崖 +WESTRING_TERRAINTYPE_cXc1=达拉然 - 方砖墙壁 +WESTRING_TERRAINTYPE_cJc2=达拉然遗迹 - 泥土悬崖 +WESTRING_TERRAINTYPE_cJc1=达拉然遗迹 - 方砖墙壁 +WESTRING_TERRAINTYPE_cDc2=地下城 - 天然墙壁 +WESTRING_TERRAINTYPE_cDc1=地下城 - 石砖墙壁 +WESTRING_TERRAINTYPE_cCc2=费尔伍德 - 泥土悬崖 +WESTRING_TERRAINTYPE_cCc1=费尔伍德 - 草地悬崖 +WESTRING_TERRAINTYPE_cIc2=冰封王座 - 石砌墙壁 +WESTRING_TERRAINTYPE_cIc1=冰封王座 - 雪地悬崖 +WESTRING_TERRAINTYPE_cFc2=洛丹伦(秋) - 泥土悬崖 +WESTRING_TERRAINTYPE_cFc1=洛丹伦(秋) - 草地悬崖 +WESTRING_TERRAINTYPE_cLc2=洛丹伦(夏) - 泥土悬崖 +WESTRING_TERRAINTYPE_cLc1=洛丹伦(夏) - 草地悬崖 +WESTRING_TERRAINTYPE_cWc2=洛丹伦(冬) - 草地悬崖 +WESTRING_TERRAINTYPE_cWc1=洛丹伦(冬) - 雪地悬崖 +WESTRING_TERRAINTYPE_cNc2=诺森德- 泥土悬崖 +WESTRING_TERRAINTYPE_cNc1=诺森德- 雪地悬崖 +WESTRING_TERRAINTYPE_cOc1=边缘之地- 深渊 +WESTRING_TERRAINTYPE_cOc2=边缘之地- 泥土悬崖 +WESTRING_TERRAINTYPE_cZc2=沉沦的遗迹 - 泥土悬崖 +WESTRING_TERRAINTYPE_cZc1=沉沦的遗迹 - 石砌墙壁 +WESTRING_TERRAINTYPE_cGc2=地底 - 天然墙壁 +WESTRING_TERRAINTYPE_cGc1=地底 - 砖砌墙壁 +WESTRING_TERRAINTYPE_cVc2=村庄 - 泥土悬崖 +WESTRING_TERRAINTYPE_cVc1=村庄 - 厚草地悬崖 +WESTRING_TERRAINTYPE_cQc2=村庄(秋) - 泥土悬崖 +WESTRING_TERRAINTYPE_cQc1=村庄(秋) - 厚草地悬崖 +WESTRING_TERRAINSHAPE_CIRCLE=圆形 +WESTRING_TERRAINSHAPE_SQUARE=方形 +WESTRING_IMAGETYPE_SHADOW=阴影 +WESTRING_IMAGETYPE_SELECTION=选择 +WESTRING_IMAGETYPE_INDICATOR=指示器 +WESTRING_IMAGETYPE_OCCLUSIONMARK=闭塞标志 +WESTRING_IMAGETYPE_UBERSPLAT=地面纹理变化 +WESTRING_IMAGETYPE_LAST=最顶端 +WESTRING_UBERSPLAT_TEST=测试 +WESTRING_UBERSPLAT_LSDS=洛丹伦(夏)泥地小 +WESTRING_UBERSPLAT_LSDM=洛丹伦(夏)泥地中 +WESTRING_UBERSPLAT_LSDL=洛丹伦(夏)泥地大 +WESTRING_UBERSPLAT_HCRT=人类弹坑 +WESTRING_UBERSPLAT_UDSU=不死族金矿 +WESTRING_UBERSPLAT_DNCS=中立城市小建筑(死亡) +WESTRING_UBERSPLAT_HMTP=群体传送 +WESTRING_UBERSPLAT_SCTP=回城卷轴 +WESTRING_UBERSPLAT_AMRC=召唤护身符 +WESTRING_UBERSPLAT_DRKC=黑暗转换 +WESTRING_UBERSPLAT_DOSB=兽族小建筑(死亡) +WESTRING_UBERSPLAT_DOMB=兽族中建筑(死亡) +WESTRING_UBERSPLAT_DOLB=兽族大建筑(死亡) +WESTRING_UBERSPLAT_DHSB=人类小建筑(死亡) +WESTRING_UBERSPLAT_DHMB=人类中建筑(死亡) +WESTRING_UBERSPLAT_DHLB=人类大建筑(死亡) +WESTRING_UBERSPLAT_DUSB=不死族小建筑(死亡) +WESTRING_UBERSPLAT_DUMB=不死族中建筑(死亡) +WESTRING_UBERSPLAT_DULB=不死族大建筑(死亡) +WESTRING_UBERSPLAT_DNSB=暗夜精灵小古树(死亡) +WESTRING_UBERSPLAT_DNMB=暗夜精灵中古树(死亡) +WESTRING_UBERSPLAT_DNSA=暗夜精灵小古迹(死亡) +WESTRING_UBERSPLAT_DNMA=暗夜精灵中古迹(死亡) +WESTRING_UBERSPLAT_HSMA=人类小建筑 +WESTRING_UBERSPLAT_HMED=人类中建筑 +WESTRING_UBERSPLAT_HLAR=人类大建筑 +WESTRING_UBERSPLAT_OSMA=兽族小建筑 +WESTRING_UBERSPLAT_OMED=兽族中建筑 +WESTRING_UBERSPLAT_OLAR=兽族大建筑 +WESTRING_UBERSPLAT_USMA=不死族建筑 +WESTRING_UBERSPLAT_UMED=不死族建筑 +WESTRING_UBERSPLAT_ULAR=不死族建筑 +WESTRING_UBERSPLAT_ESMA=暗夜精灵小古树 +WESTRING_UBERSPLAT_EMDA=暗夜精灵中古树 +WESTRING_UBERSPLAT_ESMB=暗夜精灵小建筑 +WESTRING_UBERSPLAT_EMDB=暗夜精灵中建筑 +WESTRING_UBERSPLAT_HTOW=城镇大厅 +WESTRING_UBERSPLAT_HCAS=城堡 +WESTRING_UBERSPLAT_NGOL=金矿 +WESTRING_UBERSPLAT_THND=雷霆一击 +WESTRING_UBERSPLAT_NDGS=恶魔之门 +WESTRING_UBERSPLAT_CLTS=荆棘之盾 +WESTRING_UBERSPLAT_HFS1=烈焰风暴1 +WESTRING_UBERSPLAT_HFS2=烈焰风暴2 +WESTRING_UBERSPLAT_USBR=兽族地洞 +WESTRING_UBERSPLAT_NLAR=娜迦族大建筑 +WESTRING_UBERSPLAT_NMED=娜迦族中建筑 +WESTRING_UBERSPLAT_DPSW=黑暗之门(面向西南) +WESTRING_UBERSPLAT_DPSE=黑暗之门(面向东南) +WESTRING_UBERSPLAT_NVOL=火山 +WESTRING_UBERSPLAT_NVCR=火山口 +WESTRING_UNITORDERUTARG_INCINERATEARROW="中立火焰领主 - 燃灰(箭矢)" +WESTRING_UNITORDERNOTARG_INCINERATEARROWON="中立 火焰领主 - 激活燃灰(箭矢)" +WESTRING_UNITORDERNOTARG_INCINERATEARROWOFF="中立 火焰领主 - 关闭燃灰(箭矢)" +WESTRING_HEROSKILL_INCINERATEARROW="中立火焰领主 - 燃灰(箭矢)" + + +//==========================WorldEditGameStrings.txt================================ + +// Tile set names +WESTRING_LOCALE_LORDAERON_SUMMER=洛丹伦(夏) +WESTRING_LOCALE_LORDAERON_FALL=洛丹伦(秋) +WESTRING_LOCALE_LORDAERON_WINTER=洛丹伦(冬) +WESTRING_LOCALE_BARRENS=贫瘠之地 +WESTRING_LOCALE_ASHENVALE=白杨谷 +WESTRING_LOCALE_FELWOOD=费尔伍德 +WESTRING_LOCALE_NORTHREND=诺森德 +WESTRING_LOCALE_CITYSCAPE=城邦 +WESTRING_LOCALE_VILLAGE=村庄 +WESTRING_LOCALE_VILLAGEFALL=村庄(秋) +WESTRING_LOCALE_DUNGEON=地下城 +WESTRING_LOCALE_DUNGEON2=地底 +WESTRING_LOCALE_DALARAN=达拉然 +WESTRING_LOCALE_ALL=所有 +WESTRING_LOCALE_RUINS=沉沦的遗迹 +//#LINENOBETA +WESTRING_LOCALE_ICECROWN=冰封王座 +//#LINENOBETA +WESTRING_LOCALE_OUTLAND=边缘之地 +//#LINENOBETA +WESTRING_LOCALE_BLACKCITADEL=黑色城堡 +//#LINENOBETA +WESTRING_LOCALE_DALARANRUINS=达拉然遗迹 + +// Map size descriptions +WESTRING_MAPSIZE_TINY=极小 +WESTRING_MAPSIZE_SMALL=小型 +WESTRING_MAPSIZE_MEDIUM=中型 +WESTRING_MAPSIZE_LARGE=大型 +WESTRING_MAPSIZE_HUGE=巨大的 +WESTRING_MAPSIZE_EPIC=硕大的 + +// Map info defaults +WESTRING_DEFAULT_MAPNAME=只是另外一张魔兽争霸的地图 +WESTRING_DEFAULT_MAPDESC=没有说明 +WESTRING_UNKNOWN=未知 +WESTRING_DEFAULT_MAPAUTHOR=WESTRING_UNKNOWN +WESTRING_DEFAULT_MAPSUGGESTEDPLAYERS=任何 +WESTRING_PLAYER=玩家 +WESTRING_FORCE=队伍 + +WESTRING_DEFAULT_CAMPAIGNNAME=只是另外一张魔兽争霸III的战役 +WESTRING_DEFAULT_CAMPAIGNDIFFICULTY=普通 +WESTRING_DEFAULT_AINAME=只是另外一个魔兽争霸III的AI脚本 + +// Errors and warnings +WESTRING_ERROR=错误 +WESTRING_ERROR_NOTEXTURE=无法读取纹理 +WESTRING_ERROR_NOFILE=无法读取文件 +WESTRING_ERROR_BADSHADOWMAP=无效的阴影纹理文件 +WESTRING_ERROR_BADOBJECTID=无效的物体ID + +WESTRING_WARNING=警告 +WESTRING_WARNING_BADWEATHEREFFECT=无效的天气效果句柄 +WESTRING_WARNING_MISSINGSTRING=缺少字符串 +WESTRING_WARNING_INVALIDTEXTUREID=无效的纹理ID +WESTRING_WARNING_DUPLICATEDBENTRIES=发现相同的数据输入: '%s' (%s) +WESTRING_WARNING_UNKNOWNDBFIELD=涉及未知的数据区域: '%s' (%s) + +// Script errors +WESTRING_SCRIPTERRORS=脚本错误 +WESTRING_SCRIPTCOMPILEERROR=脚本编译错误 +WESTRING_SCRIPT_LINE=行 +WESTRING_SCRIPTERR_OK=错误代码丢失 +WESTRING_SCRIPTERR_UNKNOWN=未知的编译错误 +WESTRING_SCRIPTERR_SYNTAX=语法错误 +WESTRING_SCRIPTERR_SEMICOLON=多余的 ';' +WESTRING_SCRIPTERR_EXP_COMMA=缺少 ',' +WESTRING_SCRIPTERR_EXP_COMMA_RETURNS=参数列表中缺少 ',' 或 'returns' +WESTRING_SCRIPTERR_EXP_EXPR=缺少表达式 +WESTRING_SCRIPTERR_EXP_LBRACE=缺少 '[' +WESTRING_SCRIPTERR_EXP_RBRACE=缺少 ']' +WESTRING_SCRIPTERR_EXP_LPAREN=缺少 '(' +WESTRING_SCRIPTERR_EXP_RPAREN=缺少 ')' +WESTRING_SCRIPTERR_EXP_EQUALS=期待 '=' +WESTRING_SCRIPTERR_EXP_ENDLINE=缺少结束标记 +WESTRING_SCRIPTERR_EXP_INDEX=缺少数组索引 +WESTRING_SCRIPTERR_EXP_BLOCK=缺少代码块 +WESTRING_SCRIPTERR_EXP_ENDLOOP=缺少 'endloop' +WESTRING_SCRIPTERR_EXP_STATEMENT=缺少代码声明 +WESTRING_SCRIPTERR_EXP_THEN=缺少 'then' +WESTRING_SCRIPTERR_EXP_EXTENDS=缺少 'extends' +WESTRING_SCRIPTERR_EXP_TAKES=缺少 'takes' +WESTRING_SCRIPTERR_EXP_RETURNS=缺少 'returns' +WESTRING_SCRIPTERR_EXP_FUNCTION=缺少 'function' +WESTRING_SCRIPTERR_EXP_ARGLIST=期待有效的变量列表 +WESTRING_SCRIPTERR_EXP_PARAMS=期待有效的参数列表 +WESTRING_SCRIPTERR_EXP_SET=缺少 'set' +WESTRING_SCRIPTERR_EXP_TYPE=保留类型或句柄类型被使用 +WESTRING_SCRIPTERR_EXP_CALL=缺少 'call' +WESTRING_SCRIPTERR_EXP_COMPARE=缺少 '==' +WESTRING_SCRIPTERR_EXP_ENDIF=缺少 'endif' +WESTRING_SCRIPTERR_EXP_UNKNOWN_NAME=未知名字错误 +WESTRING_SCRIPTERR_EXP_FUNC_NAME=错误的函数名 +WESTRING_SCRIPTERR_EXP_VAR_NAME=错误的变量名 +WESTRING_SCRIPTERR_EXP_HANDLE_NAME=错误句柄名 +WESTRING_SCRIPTERR_EXP_KNOWN_NAME=错误名字 +WESTRING_SCRIPTERR_NO_NATIVE_FUNC=未注册的本地函数 +WESTRING_SCRIPTERR_ARG_TYPE=无效的变量类型 +WESTRING_SCRIPTERR_ARG_COUNT=无效的变量数字 +WESTRING_SCRIPTERR_NATIVE_MISMATCH=本地声明不匹配 +WESTRING_SCRIPTERR_NEED_RETURN=需要函数返回值 +WESTRING_SCRIPTERR_VOID_RETURN=多余的返回值在无返回值函数中 +WESTRING_SCRIPTERR_TYPE_MISMATCH=类型不匹配 +WESTRING_SCRIPTERR_EXPR_TYPE=无效的操作符类型 +WESTRING_SCRIPTERR_SET_CONST=对常量赋值 +WESTRING_SCRIPTERR_NON_CONST_CALL=在非常量函数中调用常量函数 +WESTRING_SCRIPTERR_SET_CONST_CALL=在常量函数中设置变量 +WESTRING_SCRIPTERR_NOT_ORDINAL=无效的数组索引 +WESTRING_SCRIPTERR_NOT_ARRAY=对非数组变量使用数组下标 +WESTRING_SCRIPTERR_EXITWHEN=错误的 'exitwhen' +WESTRING_SCRIPTERR_NO_CONST_ARRAY=数组不能是常量 + +// Localizeable names of destructables for display +// in tooltips etc, should they be or become selectables +WESTRING_DEST_ROCK_CHUNKS=岩石屏障 +//#LINENOBETA +WESTRING_DEST_BARREL=木桶 +//#LINENOBETA +WESTRING_DEST_BARREL_EXPLOSIVES=炸药桶 +//#LINENOBETA +WESTRING_DEST_ICEY_ROCK=寒冰岩石 +WESTRING_DEST_CAGE=牢笼 +WESTRING_DEST_GATE_HORIZONTAL=大门 +WESTRING_DEST_GATE_DIAGONAL_1=大门 +WESTRING_DEST_GATE_VERTICAL=大门 +WESTRING_DEST_GATE_DIAGONAL_2=大门 +//#LINENOBETA +WESTRING_DEST_ICECROWN_GATE_HORIZONTAL=寒冰之门 +//#LINENOBETA +WESTRING_DEST_ICECROWN_GATE_DIAGONAL_1=寒冰之门 +//#LINENOBETA +WESTRING_DEST_ICECROWN_GATE_VERTICAL=寒冰之门 +//#LINENOBETA +WESTRING_DEST_ICECROWN_GATE_DIAGONAL_2=寒冰之门 +//#LINENOBETA +WESTRING_DEST_ICE_GATE_HORIZONTAL=冰岩之门 +//#LINENOBETA +WESTRING_DEST_ICE_GATE_DIAGONAL_1=冰岩之门 +//#LINENOBETA +WESTRING_DEST_ICE_GATE_VERTICAL=冰岩之门 +//#LINENOBETA +WESTRING_DEST_ICE_GATE_DIAGONAL_2="冰岩之门" +WESTRING_DEST_RUINS_GATE_HORIZONTAL="遗迹之门" +WESTRING_DEST_RUINS_GATE_DIAGONAL_1="遗迹之门" +WESTRING_DEST_RUINS_GATE_VERTICAL="遗迹之门" +WESTRING_DEST_RUINS_GATE_DIAGONAL_2="遗迹之门" +WESTRING_DEST_ELVEN_GATE_HORIZONTAL="精灵之门" +WESTRING_DEST_ELVEN_GATE_DIAGONAL_1="精灵之门" +WESTRING_DEST_ELVEN_GATE_VERTICAL="精灵之门" +WESTRING_DEST_ELVEN_GATE_DIAGONAL_2="精灵之门" +WESTRING_DEST_IRON_GATE_HORIZONTAL="钢铁之门" +WESTRING_DEST_IRON_GATE_DIAGONAL_1="钢铁之门" +WESTRING_DEST_IRON_GATE_VERTICAL="钢铁之门" +WESTRING_DEST_IRON_GATE_DIAGONAL_2="钢铁之门" +WESTRING_DEST_DEMON_GATE_HORIZONTAL="恶魔之门" +WESTRING_DEST_DEMON_GATE_DIAGONAL_1="恶魔之门" +WESTRING_DEST_DEMON_GATE_VERTICAL="恶魔之门" +WESTRING_DEST_DEMON_GATE_DIAGONAL_2="恶魔之门" +WESTRING_DEST_STONE_WALL_HORIZONTAL="石头之墙" +WESTRING_DEST_STONE_WALL_DIAGONAL_2="石头之墙" +WESTRING_DEST_STONE_WALL_VERTICAL="石头之墙" +WESTRING_DEST_STONE_WALL_DIAGONAL_1="石头之墙" +WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT="石头斜坡" +WESTRING_DEST_STONE_RAMP_TOP_LEFT="石头斜坡" +WESTRING_DEST_STONE_RAMP_TOP_RIGHT="石头斜坡" +WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT="石头斜坡" +WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT_2="石头斜坡" +WESTRING_DEST_STONE_RAMP_TOP_LEFT_2="石头斜坡" +WESTRING_DEST_STONE_RAMP_TOP_RIGHT_2="石头斜坡" +WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT_2="石头斜坡" +WESTRING_DEST_ASHENVALE_TREE_WALL=白杨谷树木 +WESTRING_DEST_BARRENS_TREE_WALL=荒芜之地树木 +WESTRING_DEST_FELWOOD_TREE_WALL=费尔伍德树木 +WESTRING_DEST_FALL_TREE_WALL=秋季树木 +WESTRING_DEST_SUMMER_TREE_WALL=夏季树木 +WESTRING_DEST_NORTHREND_TREE_WALL=诺森德树木 +WESTRING_DEST_WINTER_TREE_WALL=冬季树木 +WESTRING_DEST_SNOWY_TREE_WALL=积雪树木 +WESTRING_DEST_CITYSCAPE_SUMMER_TREE_WALL=城邦夏树木 +WESTRING_DEST_CITYSCAPE_WINTER_TREE_WALL=城邦冬树木 +WESTRING_DEST_CITYSCAPE_SNOWY_TREE_WALL=城邦积雪树木 +WESTRING_DEST_CITYSCAPE_FALL_TREE_WALL=城邦秋树木 +//#LINENOBETA +WESTRING_DEST_DALARAN_RUINS_TREE_WALL=达拉然遗迹树木 +//#LINENOBETA +WESTRING_DEST_CITYSCAPE_RUINED_TREE_WALL=城邦枯树 +WESTRING_DEST_VILLAGE_TREE_WALL=村庄树木 +WESTRING_DEST_DUNGEON_TREE_WALL=地下城树木 +//#LINENOBETA +WESTRING_DEST_ICECROWN_TREE_WALL=冰封王座树木 +//#LINENOBETA +WESTRING_DEST_OUTLAND_TREE_WALL=边缘之地树木 +//#LINENOBETA +WESTRING_DEST_BLACK_CITADEL_TREE_WALL=黑色城堡树木 +WESTRING_DEST_RUINS_TREE_WALL=遗迹树木 +WESTRING_DEST_SHORT_STONE_CLIFF_0_VERTICAL="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_1="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_0_HORIZONTAL="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_2="短石桥" +WESTRING_DEST_LONG_STONE_CLIFF_0_VERTICAL="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_1="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_0_HORIZONTAL="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_2="长石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_0_VERTICAL="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_1="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_0_HORIZONTAL="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_2="宽石桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_0_VERTICAL="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_1="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_0_HORIZONTAL="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_2="短天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_0_VERTICAL="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_1="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_0_HORIZONTAL="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_2="长天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_0_VERTICAL="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_1="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_0_HORIZONTAL="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_2="宽天然桥" +WESTRING_DEST_SHORT_STONE_CLIFF_1_VERTICAL="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_1="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_1_HORIZONTAL="短石桥" +WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_2="短石桥" +WESTRING_DEST_LONG_STONE_CLIFF_1_VERTICAL="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_1="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_1_HORIZONTAL="长石桥" +WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_2="长石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_1_VERTICAL="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_1="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_1_HORIZONTAL="宽石桥" +WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_2="宽石桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_1_VERTICAL="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_1="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_1_HORIZONTAL="短天然桥" +WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_2="短天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_1_VERTICAL="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_1="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_1_HORIZONTAL="长天然桥" +WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_2="长天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL="宽天然桥" +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2="宽天然桥" +WESTRING_DEST_SHORT_BRIDGE_VERTICAL=短木桥 +WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_1=短木桥 +WESTRING_DEST_SHORT_BRIDGE_HORIZONTAL=短木桥 +WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_2=短木桥 +WESTRING_DEST_LONG_BRIDGE_VERTICAL=长木桥 +WESTRING_DEST_LONG_BRIDGE_DIAGONAL_1=长木桥 +WESTRING_DEST_LONG_BRIDGE_HORIZONTAL=长木桥 +WESTRING_DEST_LONG_BRIDGE_DIAGONAL_2=长木桥 +WESTRING_DEST_WIDE_BRIDGE_VERTICAL=宽木桥 +WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_1=宽木桥 +WESTRING_DEST_WIDE_BRIDGE_HORIZONTAL=宽木桥 +WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_2=宽木桥 +WESTRING_DEST_FORCE_BRIDGE_VERTICAL=力量之桥 +WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_1=力量之桥 +WESTRING_DEST_FORCE_BRIDGE_HORIZONTAL=力量之桥 +WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_2=力量之桥 +WESTRING_DEST_BUILDING=建筑 +WESTRING_DEST_LARGE_BUILDING=达拉然紫罗兰要塞 +WESTRING_DEST_CENTAUR_TENT=半人马帐篷 +WESTRING_DEST_TAUREN_TENT=牛头人帐篷 +WESTRING_DEST_GNOLL_HUT=豺狼人小屋 +WESTRING_DEST_TENT=帐篷 +WESTRING_DEST_EGGSACK=蜘蛛蛋 +WESTRING_DEST_VAULT=魔法宝盒 +WESTRING_DEST_DTC1=悬崖洞穴之门 +WESTRING_DEST_DTC2=悬崖洞穴之门 +WESTRING_DEST_DTG1=地下城之门 +WESTRING_DEST_DTG2=地下城之门 +WESTRING_DEST_DTG3=地下城之门 +WESTRING_DEST_DTG4=地下城之门 +WESTRING_DEST_SPIKES=尖刺陷阱 +WESTRING_DEST_DOFV=力量之墙 +WESTRING_DEST_DOFW=力量之墙 +WESTRING_DEST_LOSBLOCKER=视野阻断器 +WESTRING_DEST_LOSBLOCKER_LARGE=视野阻断器 (大) +WESTRING_DEST_PATHBLOCKER=路径阻断器(陆) +WESTRING_DEST_PATHBLOCKER_LARGE=路径阻断器(陆)(大) +WESTRING_DEST_PATHBLOCKER_FLIER=路径阻断器(空) +WESTRING_DEST_PATHBLOCKER_LARGE_FLIER=路径阻断器(空)(大) +WESTRING_DEST_PATHBLOCKER_BOTH=路径阻断器(全部) +WESTRING_DEST_PATHBLOCKER_LARGE_BOTH=路径阻断器(全部)(大) +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_1="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_2="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_3="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_4="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_1="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_2="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_3="滚石之门" +//#LINENOBETA +WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_4="滚石之门" +//#LINENOBETA +WESTRING_DEST_ICE_BRIDGE_VERTICAL=浮冰之桥 +//#LINENOBETA +WESTRING_DEST_ICE_BRIDGE_DIAGONAL_1=浮冰之桥 +//#LINENOBETA +WESTRING_DEST_ICE_BRIDGE_HORIZONTAL=浮冰之桥 +//#LINENOBETA +WESTRING_DEST_ICE_BRIDGE_DIAGONAL_2=浮冰之桥 +//#LINENOBETA +WESTRING_DEST_TREE_BRIDGE_HORIZONTAL=大树之桥 +//#LINENOBETA +WESTRING_DEST_TREE_BRIDGE_VERTICAL=大树之桥 +//#LINENOBETA +WESTRING_DEST_MAGICAL_PEN=魔法围栏 +//#LINENOBETA +WESTRING_DEST_ANGLED_MAGICAL_PEN=魔法围栏 +//#LINENOBETA +WESTRING_DEST_MAGICAL_PEN_WALL=魔法围栏墙壁 +//#LINENOBETA +WESTRING_DEST_ANGLED_MAGICAL_PEN_WALL=魔法围栏墙壁 +//#LINENOBETA +WESTRING_DEST_ELEVATOR_PATHBLOCKER=升降机墙壁(不可见) +//#LINENOBETA +WESTRING_DEST_WHARF=码头 +//#LINENOBETA +WESTRING_DEST_SARGERAS_GATE=巨大遗迹之门 +//#LINENOBETA +WESTRING_DEST_SARGERAS_GATE_DIAG=巨大遗迹之门 +//#LINENOBETA +WESTRING_DEST_SMALL_ELEVATOR=脚踏开关 +//#LINENOBETA +WESTRING_DEST_LEVER=控制杆 +//#LINENOBETA +WESTRING_DEST_CITY_ENTRANCE=城邦入口大门 +//#LINENOBETA +WESTRING_DEST_TYRANDE_BRIDGE_VERTICAL=最后守护之桥 +//#LINENOBETA +WESTRING_DEST_TYRANDE_BRIDGE_HORIZONTAL=最后守护之桥 +//#LINENOBETA +WESTRING_DEST_FROZEN_THRONE_GATE=冰封王座之门 +WESTRING_DOOD_LOBA=路障 +WESTRING_DOOD_LOCS=木箱 +WESTRING_DOOD_NOSP=船 +WESTRING_DOOD_YSDB=毁坏的桥 +WESTRING_DOOD_YSDC=毁坏的桥 +WESTRING_DOOD_XOKT=国王的宝座 +WESTRING_DOOD_XOK1=国王的宝座(对角 1) +WESTRING_DOOD_XOK2=国王的宝座(对角 1) +WESTRING_DOOD_ZCR0=娜迦小斜坡(左) +WESTRING_DOOD_ZCR1=娜迦小斜坡(上) +WESTRING_DOOD_ZCR2=娜迦小斜坡(右) +WESTRING_DOOD_ZCR3=娜迦小斜坡(下) +WESTRING_DOOD_ZONC=遗迹娜迦圆形地面 +WESTRING_DOOD_NWF1=大浮冰 +//#LINENOBETA +WESTRING_DOOD_APTC=白杨谷伞状树木 +//#LINENOBETA +WESTRING_DOOD_ISIG=圆顶建筑 +//#LINENOBETA +WESTRING_DOOD_ZZEZ=升降机 +// new destructible strings go below here +//#LINENOBETA +WESTRING_DEST_UNDERGROUND_TREE_WALL=地底树木 +//#LINENOBETA +WESTRING_DEST_RES_STONE=复活石 +//#LINENOBETA +WESTRING_DEST_BOX=箱子 +//#LINENOBETA +WESTRING_DOOD_OZSP=发光的传送门 +//#LINENOBETA +WESTRING_DEST_INVISIBLE_PLATFORM=不可见平台 +//#LINENOBETA +WESTRING_DEST_INVISIBLE_PLATFORM_SMALL=不可见平台(小) +//#LINENOBETA +WESTRING_DOOD_BTTC=贫瘠之地的伞状树木 +//#LINENOBETA +WESTRING_DOOD_CTTC=费尔伍德伞状树木 +//#LINENOBETA +WESTRING_DOOD_NTTC=诺森德伞状树木 +//#LINENOBETA +WESTRING_DOOD_ZTTC=遗迹伞状树木 +//#LINENOBETA +WESTRING_DOOD_ITTC=冰封王座伞状树木 +//#LINENOBETA +WESTRING_DOOD_IOT0=冰封王座 +//#LINENOBETA +WESTRING_DOOD_IOT1=冰封王座(对角 1) +//#LINENOBETA +WESTRING_DOOD_IOT2=冰封王座(对角 1) +//#LINENOBETA +WESTRING_DEST_SUPPORT_COLUMN=支撑柱 +//#LINENOBETA +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL_EXTRA="特宽的天然桥" +//#LINENOBETA +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1_EXTRA="特宽的天然桥" +//#LINENOBETA +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL_EXTRA="特宽的天然桥" +//#LINENOBETA +WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2_EXTRA="特宽的天然桥" +//#LINENOBETA +WESTRING_DOOD_OZDS=恶魔风暴 +//#LINENOBETA +WESTRING_DEST_ROCKIN_ARTHAS=摇滚阿尔塞斯 +WESTRING_DEST_VOLCANO=火山 + +WESTRING_ERROR_YDTRIGGER_ILLEGAL_WAIT=YDTrigger Error: 不要在逆天计时器/逆天触发器内使用等待 +WESTRING_ERROR_YDTRIGGER_ILLEGAL_PARAMETER=YDTrigger Error: 不要在逆天计时器/逆天触发器的参数里嵌套逆天计时器/逆天触发器 +WESTRING_ERROR_YDTRIGGER_ANYPLAYER=YDTrigger Error: 不要在动作中使用“任意玩家” +WESTRING_ERROR_YDTRIGGER_LOCVAR=YDTrigger Error: 你使用了局部变量“%s”(类型:%s),但你在其他地方使用的是局部变量“%s”(类型:%s)。 +WESTRING_ERROR_YDTRIGGER_TIMER_FLUSH=YDTrigger Error: 不要在逆天计时器的动作外使用<清除逆天计时器> +WESTRING_ERROR_YDTRIGGER_TRIGGER_FLUSH=YDTrigger Error: 不要在逆天触发器的动作外使用<清除逆天触发器> +WESTRING_ERROR_YDTRIGGER_YDWEEnumUnitsInRangeMultiple=YDTrigger Error: 不要嵌套使用<逆天--选取单位> +WESTRING_ERROR_YDTRIGGER_ForForceMultiple=YDTrigger Error: 不要嵌套使用<选取玩家组> diff --git a/share/mpq/units/ui/editorsuffix.txt b/share/mpq/units/ui/editorsuffix.txt new file mode 100644 index 0000000..9efffe7 --- /dev/null +++ b/share/mpq/units/ui/editorsuffix.txt @@ -0,0 +1,282 @@ +[BNva] +EditorName=火山爆发(区域) +[XNvc] +EditorName=火山爆发(效果) +[XNcs] +EditorName=火箭群(效果) +[XNhs] +EditorName=医疗气雾(效果) +[AIlp] +EditorSuffix=(1)(法球施放) +[AIos] +EditorSuffix=(法球施放) +[AChx] +EditorSuffix=(中立敌对) +[Aenw] +EditorSuffix=(中立敌对 2) +[AChv] +EditorSuffix=(中立敌对) +[ACsi] +EditorSuffix=(中立敌对) +[ACmf] +EditorSuffix=(中立敌对) +[ACss] +EditorSuffix=(中立敌对) +[ACbc] +EditorSuffix=(中立敌对) +[ACfs] +EditorSuffix=(中立敌对) +[ANfs] +EditorSuffix=(中立敌对 2) +[ACmp] +EditorSuffix=(中立敌对) +[Aps2] +EditorSuffix=(引导) +[ACd2] +EditorSuffix=(中立敌对 2) +[BNpi] +EditorSuffix=(中立敌对 1) +[Bpig] +EditorSuffix=(中立敌对 2) +[Awan] +EditorSuffix=(中立) +[Avul] +EditorSuffix=(中立) +[ANbl] +EditorSuffix=(中立) +[ANtr] +EditorSuffix=(中立 2) +[Adtg] +EditorSuffix=(中立 1) +[ACnr] +EditorSuffix=(中立) +[ANre] +EditorSuffix=(中立) +[ANb2] +EditorSuffix=(中立敌对 3) +[ACbc] +EditorSuffix=(中立敌对) +[ACde] +EditorSuffix=(中立敌对) +[ANfs] +EditorSuffix=(中立敌对 2) +[ACss] +EditorSuffix=(中立敌对) +[ACmi] +EditorSuffix=(中立敌对) +[Acht] +EditorSuffix=(中立敌对) +[AChx] +EditorSuffix=(中立敌对) +[Aand] +EditorSuffix=(中立敌对) +[ACrk] +EditorSuffix=(中立敌对 1) +[ANfb] +EditorSuffix=(中立敌对) +[ACcs] +EditorSuffix=(中立敌对) +[ACls] +EditorSuffix=(中立敌对) +[SNdd] +EditorSuffix=(中立敌对) +[Anh1] +EditorSuffix=(中立敌对 2) +[ACat] +EditorSuffix=(中立敌对) +[ANin] +EditorSuffix=(中立敌对) +[Apig] +EditorSuffix=(中立敌对 2) +[ACce] +EditorSuffix=(中立敌对) +[Abu5] +EditorSuffix=(中立敌对) +[ACsl] +EditorSuffix=(中立敌对) +[ANpi] +EditorSuffix=(中立敌对 1) +[ACct] +EditorSuffix=(中立敌对) +[ACba] +EditorSuffix=(中立敌对) +[Amnb] +EditorSuffix=(中立敌对 2) +[ACwb] +EditorSuffix=(中立敌对) +[ACmf] +EditorSuffix=(中立敌对) +[ACif] +EditorSuffix=(中立敌对) +[ACrf] +EditorSuffix=(中立敌对 2) +[ACch] +EditorSuffix=(中立敌对) +[ACbb] +EditorSuffix=(中立敌对 2) +[ACad] +EditorSuffix=(中立敌对) +[ACpv] +EditorSuffix=(中立敌对) +[ACrn] +EditorSuffix=(中立敌对) +[ACdm] +EditorSuffix=(中立敌对) +[ACav] +EditorSuffix=(中立敌对) +[AChv] +EditorSuffix=(中立敌对) +[ACsw] +EditorSuffix=(中立敌对) +[Aenw] +EditorSuffix=(中立敌对 2) +[ACsk] +EditorSuffix=(中立敌对 2) +[ACen] +EditorSuffix=(中立敌对) +[AChd] +EditorSuffix=(中立敌对) +[ACbn] +EditorSuffix=(中立敌对) +[Awrg] +EditorSuffix=(中立敌对 3) +[ANwk] +EditorSuffix=(中立敌对) +[ACfu] +EditorSuffix=(自动施放) (中立敌对) +[ACro] +EditorSuffix=(中立敌对) +[ACfl] +EditorSuffix=(中立敌对) +[ACsa] +EditorSuffix=(中立敌对) +[SNeq] +EditorSuffix=(中立敌对) +[ACvs] +EditorSuffix=(中立敌对) +[ANbh] +EditorSuffix=(中立敌对 2) +[ACvp] +EditorSuffix=(中立敌对) +[Adsm] +EditorSuffix=(中立敌对) +[ACsh] +EditorSuffix=(中立敌对) +[ACes] +EditorSuffix=(中立敌对 100%) +[ACua] +EditorSuffix=(中立敌对) +[ACsm] +EditorSuffix=(中立敌对) +[ACah] +EditorSuffix=(中立敌对) +[ACfs] +EditorSuffix=(中立敌对) +[AChw] +EditorSuffix=(中立敌对) +[ACuf] +EditorSuffix=(中立敌对) +[ACfn] +EditorSuffix=(中立敌对) +[ACs9] +EditorSuffix=(中立敌对 野猪) +[ACf2] +EditorSuffix=(自动施放) (中立敌对) +[ACrj] +EditorSuffix=(中立敌对) +[ACrd] +EditorSuffix=(中立敌对) +[SCae] +EditorSuffix=(中立敌对) +[ACpu] +EditorSuffix=(中立敌对) +[Aspd] +EditorSuffix=(中立敌对) +[ACps] +EditorSuffix=(中立敌对) +[ACpy] +EditorSuffix=(中立敌对) +[Ambb] +EditorSuffix=(中立敌对 3) +[ACim] +EditorSuffix=(中立敌对) +[ACbk] +EditorSuffix=(中立敌对) +[Anh2] +EditorSuffix=(中立敌对 3) +[ACdc] +EditorSuffix=(中立敌对) +[ACfa] +EditorSuffix=(中立敌对) +[ACtc] +EditorSuffix=(中立敌对) +[ACfr] +EditorSuffix=(中立敌对) +[ACfb] +EditorSuffix=(中立敌对) +[ACsf] +EditorSuffix=(中立敌对) +[ACff] +EditorSuffix=(中立敌对) +[ACev] +EditorSuffix=(中立敌对) +[Ambd] +EditorSuffix=(中立敌对 1) +[ACds] +EditorSuffix=(中立敌对) +[ACcy] +EditorSuffix=(中立敌对) +[ACcr] +EditorSuffix=(中立敌对) +[ACcw] +EditorSuffix=(中立敌对) +[ACcl] +EditorSuffix=(中立敌对) +[ACca] +EditorSuffix=(中立敌对) +[ACcn] +EditorSuffix=(中立敌对) +[Aenr] +EditorSuffix=(中立敌对 1) +[ACdr] +EditorSuffix=(中立敌对) +[Aap4] +EditorSuffix=(中立敌对 无伤害) +[Aap3] +EditorSuffix=(中立敌对) +[Awrh] +EditorSuffix=(中立敌对 2) +[ACbh] +EditorSuffix=(中立敌对 1) +[ACbz] +EditorSuffix=(中立敌对) +[Awrs] +EditorSuffix=(中立敌对 1) +[ACdv] +EditorSuffix=(中立敌对) +[ACf3] +EditorSuffix=(中立敌对) +[ACam] +EditorSuffix=(中立敌对) +[ANta] +EditorSuffix=(中立敌对) +[ACbl] +EditorSuffix=(中立敌对 1) +[ACrg] +EditorSuffix=(中立敌对 1) +[Assp] +EditorSuffix=(中立敌对) +[ACmp] +EditorSuffix=(中立敌对) +[Afod] +EditorSuffix=(中立敌对) +[Anhe] +EditorSuffix=(中立敌对 1) +[ACfd] +EditorSuffix=(中立敌对) +[ACsi] +EditorSuffix=(中立敌对) +[nbal] +EditorSuffix=(标准) +[nba2] +EditorSuffix=(召唤的) diff --git a/share/mpq/units/ui/miscdata.txt b/share/mpq/units/ui/miscdata.txt new file mode 100644 index 0000000..f8c0a5f --- /dev/null +++ b/share/mpq/units/ui/miscdata.txt @@ -0,0 +1,384 @@ +[Misc] + +FadeBuffMinDuration=10 +FadeBuffMinAlpha=96 +FadeBuffMaxAlpha=255 + +// gold text data +GoldTextColor=255,255,220,0 +GoldTextHeight=0.024 +GoldTextVelocity=0,0.03 +GoldTextLifetime=2 +GoldTextFadeStart=1 + +// lumber text data +LumberTextColor=255,0,200,80 +LumberTextHeight=0.024 +LumberTextVelocity=0,0.03 +LumberTextLifetime=2 +LumberTextFadeStart=1 + +// bounty text data +BountyTextColor=255,255,220,0 +BountyTextHeight=0.024 +BountyTextVelocity=0,0.03 +BountyTextLifetime=3 +BountyTextFadeStart=2 + +// missile 'miss' text tag data +MissTextColor=255,255,0,0 +MissTextHeight=0.024 +MissTextVelocity=0,0.03 +MissTextLifetime=3 +MissTextFadeStart=1 + +// CriticalStrike text tag data +CriticalStrikeTextColor=255,255,0,0 +CriticalStrikeTextHeight=0.024 +CriticalStrikeTextVelocity=0,0.04 +CriticalStrikeTextLifetime=5 +CriticalStrikeTextFadeStart=2 + +// ShadowStrike text tag data +ShadowStrikeTextColor=255,160,255,0 +ShadowStrikeTextHeight=0.024 +ShadowStrikeTextVelocity=0,0.04 +ShadowStrikeTextLifetime=5 +ShadowStrikeTextFadeStart=2 + +// ManaBurn text tag data +ManaBurnTextColor=255,82,82,255 +ManaBurnTextHeight=0.024 +ManaBurnTextVelocity=0,0.04 +ManaBurnTextLifetime=5 +ManaBurnTextFadeStart=2 + +// CriticalStrike text tag data +BashTextColor=255,0,0,255 +BashTextVelocity=0,0.04 +BashTextLifetime=5 +BashTextFadeStart=2 + +// Lava Spawn Vertex Colors +LavaSpawnColor=255,255,255,255,255,220,220,220,255,185,185,185 + +ActiveButtonColor=255,75,150,255 + +[Camera] +// Update Listener section in bin\ui\soundinfo\miscdata.txt +// if the number of camera zooms changes +// game camera paramters +AOA=304,311,318,325,332,339 +FOV=70,70,70,70,70,70 +Rotation=90,90,90,90,90,90,20,20,20,20,20,20,160,160,160,160,160,160 +Distance=1650,1600,1500,1400,1275,1100 +FarZ=5000,5000,5000,5000,5000,5000 +NearZ=100,100,100,100,100,100,60 +Height=0,0,0,0,0,0,0 +// Camera smoothing. +Smoothing=0.00 +SmoothMaxDist=1000 +SmoothScale=0.80 +SmoothBias=0.15 +SmoothMinFPS=10 +SmoothBeta=1.5 + +[CameraRates] +// game camera change rates +AOA=20 +FOV=20 +Rotation=30 +Distance=1200 +Forward=3000 +Strafe=3000 + +[QuestIndicatorTimeout] +QuestIndicatorTimeout=10 + +[CameraMargins] +// Defines the distance (in cells) between the camera bounds and +// the playable map edge +left=4 +right=4 +top=2 +bottom=2 + +[UnpathableMargins] +// Defines the default number of unpathable cells to add to each map edge +left=6 +right=6 +top=8 +bottom=4 + +[DefaultZFog] +Style=0 +Start=20000 +End=50000 +Density=0 +Color=0,0,0,0 + +[TerrainZFog] +Style=0 +Start=3000 +End=5000 +Density=0.5 +Color=255,0,0,0 + +[MenuZFog] +Style=0,0 +Start=100,0 +End=5500,7000 +Density=1,1 +Color=255,11,20,11,255,178,178,204 + +[ArthasIllidanFightZFog] +Style=0 +Start=0 +End=6000 +Density=1 +Color=255,92,112,120 + +[ArthasIllidanFightPrefetchList] +File0="Sound\Ambient\DoodadEffects\FinalCinematic.mp3" +File1="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0001.mrf" +File3="Doodads\Cinematic\ArthasIllidanFight\ArthasCloakFight.blp" +File4="Doodads\Cinematic\ArthasIllidanFight\Arthas1.blp" +File5="Doodads\Cinematic\ArthasIllidanFight\StoneTiledSnowTALLtrev.blp" +File6="Doodads\Cinematic\ArthasIllidanFight\IllidanBlade.blp" +File7="Doodads\Cinematic\ArthasIllidanFight\FrostMorne.blp" +File8="Doodads\Cinematic\ArthasIllidanFight\BigAssSky.blp" +File9="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0000.mrf" +File10="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0002.mrf" +File11="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0003.mrf" +File12="Doodads\Cinematic\ArthasIllidanFight\SpeedLines1_solid.blp" +File13="Doodads\Cinematic\ArthasIllidanFight\IllidanDeathShadowA.blp" +File14="Doodads\Cinematic\ArthasIllidanFight\IllidanCineStuff.blp" +File15="Doodads\Cinematic\ArthasIllidanFight\IllidanCine.blp" +File16="Doodads\Cinematic\ArthasIllidanFight\IceCrownWalls.blp" +File17="Doodads\Cinematic\ArthasIllidanFight\IceCrownDoodads0.blp" +File18="Doodads\Cinematic\ArthasIllidanFight\Ice_Natural01.blp" +File19="Doodads\Cinematic\ArthasIllidanFight\Clouds8x8.blp" +File20="Doodads\Cinematic\ArthasIllidanFight\Ice_Natural01.blp" +File21="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0004.mrf" +File22="Doodads\Cinematic\ArthasIllidanFight\ArthasCape0005.mrf" +File23="Doodads\Cinematic\ArthasIllidanFight\SacrificialAltarskull1.blp" +File24="Doodads\Cinematic\ArthasIllidanFight\rockShadow.blp" +File25="Doodads\Cinematic\ArthasIllidanFight\IronForgeSnow01solid1.blp" +File26="Doodads\Cinematic\ArthasIllidanFight\furboots2.blp" +File27="Doodads\Cinematic\ArthasIllidanFight\IllidanBlade_mip1.blp" + +[ArthasIllidanFightSounds] +Scene1="FinalCinematic" + +[Terrain] +// terrain parameters + +// Maximum slope in degrees, (86+ will disable slope limits) +MaxSlope=90 + +// Global height limits +// 0 = low ground, each cliff level = 128 +MaxHeight=1920 +MinHeight=-1920 + +[FlyerMap] +// Radius, in pathing cells, to search for maximum height +MaximizeRadius=6 +// Number of times to halve map size +SmoothLevels=3 + +[Sound] +Attenuation=3.0 +MinDist=1200 +MaxDist=20000 +MusicFadeRate=16 +MusicFadeInterval=500 + +[Light] +// Vector from light to world +Direction=0.3,0.3,-0.25 + +[SelectionCircle] +// Defines different textures to be used based on selection circle size. +// The Size## value defines the largest size which uses the given textures. +// Note that the last size does not need a Size## value since anything bigger +// than the next size down uses it. +NumSizes=3 +Size00=100 +Texture00=ReplaceableTextures\Selection\SelectionCircleSmall +TextureDotted00=ReplaceableTextures\Selection\SelectionCircleSmallDotted + +Size01=300 +Texture01=ReplaceableTextures\Selection\SelectionCircleMed +TextureDotted01=ReplaceableTextures\Selection\SelectionCircleMedDotted + +Texture02=ReplaceableTextures\Selection\SelectionCircleLarge +TextureDotted02=ReplaceableTextures\Selection\SelectionCircleLargeDotted + +// This value is multiplied by the SLK scale field to get the circle size +ScaleFactor=72 + +// This value is added to the selection circle height +// when on walkable doodads. +// Note: this is also applied to shadow images +ImageWalkableZOffset=15 + +// Colors +ColorFriend=255,0,255,0 +ColorNeutral=255,255,255,0 +ColorEnemy=255,255,0,0 +AllyOffset=0.2 + +[Blight] +Texture=TerrainArt\Blight\Blight +PuffModel=Environment\BlightDoodad\BlightDoodad.mdl +PuffDuration=3000 // Duration of a puff, in milliseconds +PuffInterval=2500 // Interval between checks for new puffs, in milliseconds +PuffChance=0.7 // Chance for a vertex to create a puff (per interval), in percent + +// Dirt Chance Table +// Specifies the chance (in percent) that a neighboring vertex will be changed to dirt +// when a vertex is blighted. Due to symmetry, only five unique values are needed +// for a 2 vertex radius. The the upper right quadrant of the table is: +// +// s2 sd d2 +// s1 d1 sd +// cn s1 s2 +// +// where 'cn' is the center vertex, 's' means "straight", 'd' means "diagonal". +// Note that the chance for 'cn' is always 100%, and not listed here. +// + +DCT_s1=5 +DCT_s2=10 +DCT_sd=15 +DCT_d1=5 +DCT_d2=20 + +[Water] +// Depth-based colors +// The water plane is vertex colored based on the water "depth": the distance +// from the water plane to the ground. These values define the colors for two +// distinct ranges: "shallow" (MinDepth to DeepLevel) and "deep" (DeepLevel to MaxDepth). +// where the color is found by interpolating between the corresponding colors given +// in TerrainArt/Water.slk. +// + +MinDepth=10 +DeepLevel=64 +MaxDepth=72 + +// DeepLevelPathing defines the depth below which water +// is considered "deep" for pathing and placement rules. + +DeepLevelPathing=52 + +// WavesDepth defines the depth that terrain vertices need to be below the +// water before they will be considered "under" water for wave generation + +WavesDepth=25 + +[TeamColorFilter] +ColorIndexPlayer=1 +ColorIndexAlly=2 +ColorIndexCreep=12 +ColorIndexEnemy=0 + +[FogOfWar] +FoggedTerrain=170,16,16,32 +BlackMaskedTerrain=255,0,0,0 +DarkMaskedTerrain=230,0,0,0 +BoundaryTerrain=230,0,0,0 +FoggedBoundaryTerrain=170,16,16,32 +FoggedObject=255,64,64,96 +BlackMaskedObject=255,0,0,0 +DarkMaskedObject=255,32,32,48 +BoundaryObject=255,0,0,0 +FoggedBoundaryObject=255,64,64,96 +ShadowImageColor=170,0,0,0 + +FogColorPlayer=255,255,255,255 +FogColorAlly=255,0,255,210 +FogColorEnemy=255,255,0,0 +FogColorResource=255,32,128,128 +FogColorItem=255,240,240,0 +FogColorHero=255,255,255,128 +FogColorDestructable=255,0,160,128 +FogColorCreepAllied=255,0,0,50 +FogColorCreepNormal=255,0,0,50 +FogColorBlackMaskAlpha=0 +FogColorDarkMaskAlpha=96 +FogColorFogMaskAlpha=192 +FogColorVisibleAlpha=255 +FogColorBlightMask=0,63,63,64 + +[Minimap] +MinimapColorBorder=255,60,60,70 +MinimapMiddleCampThreshold=10 +MinimapToughCampThreshold=20 +MinimapMiddleCampScale=1.3 +MinimapWeakCampColor=255,0,200,0 +MinimapMiddleCampColor=255,255,128,0 +MinimapToughCampColor=255,220,0,0 +MinimapCampPulseScale=0.5 + +[TargetingColors] +TargetLightColor=180,0,255,0 +SelTargetColor=255,240,200,0 + +[Glue] +ControlFadeDuration=0.25 +ControlFadeDurationDebug=0.01 +CustomLoadTimerDuration=10.0 + +[BattleNetCustomFilter] +SmallMapRange=2,4 +MediumMapRange=5,8 +LargeMapRange=9,12 + +[InfoPanel] +MeleeRangeMax=128 +SpeedVerySlow=175 // lower bound, everything below this is "very slow" +SpeedSlow=220 +SpeedAverage=280 +SpeedFast=350 // upper bound, everything above this is "very fast" +AttackVerySlow=3 // upper bound, everything above this is "very slow" +AttackSlow=2 +AttackAverage=1.5 +AttackFast=1 // lower bound, everything below this is "very fast" + +[Occlusion] +MarkImage=ReplaceableTextures\Occlusion\OcclusionMark +MarkColor=255,255,0,255 +OccluderColor=128,255,255,255 +OccluderFadeTime=300 // Time to fade to OccluderColor, in milliseconds +BuildingsOcclude=0 + +[Placement] +PaidStructureColor=96,128,128,255 +UnpaidStructureColor=96,255,128,128 + +[PingColor] +PingColor=255,0,255,0 +PingAttackColor=255,255,0,0 +PingAdvisorColor=255,255,255,0 +PingWaypointColor=255,255,255,255 + +[FontHeights] +ToolTipName=0.011 +ToolTipDesc=0.011 +ToolTipCost=0.011 +ChatEditBar=0.013 +CommandButtonNumber=0.009 +WorldFrameMessage=0.015 +WorldFrameTopMessage=0.024 +WorldFrameUnitMessage=0.015 +WorldFrameChatMessage=0.013 +Inventory=0.011 +LeaderBoard=0.007 +PortraitStats=0.011 +UnitTipPlayerName=0.011 +UnitTipDesc=0.011 +ScoreScreenNormal=0.011 +ScoreScreenLarge=0.011 +ScoreScreenTeam=0.009 diff --git a/share/mpq/units/ui/uniteditordata.txt b/share/mpq/units/ui/uniteditordata.txt new file mode 100644 index 0000000..b65684e --- /dev/null +++ b/share/mpq/units/ui/uniteditordata.txt @@ -0,0 +1,420 @@ +// ------------------------------------------------------------------------ +// Each section corresponds to a field type in the Object Editor +// The section name should match the 'type' from MetaData.slk +// +// Key: Sort - Flag indicating to sort the list by name in editor display +// Key: NumValues - Number of string values this type can take +// +// Values: +// Key: 2 digit index +// Value 0: data string +// Value 1: display string (should be WESTRING reference) +// Value 2: game version (0 for normal (default), 1 for expansion) + +[regenType] +00=none,WESTRING_UE_REGENTYPE_NONE +01=always,WESTRING_UE_REGENTYPE_ALWAYS +02=blight,WESTRING_UE_REGENTYPE_BLIGHT +03=day,WESTRING_UE_REGENTYPE_DAY +04=night,WESTRING_UE_REGENTYPE_NIGHT +NumValues=5 + +[attackBits] +00=0,WESTRING_UE_ATTACKBITS_NONE +01=1,WESTRING_UE_ATTACKBITS_ONE +02=2,WESTRING_UE_ATTACKBITS_TWO +03=3,WESTRING_UE_ATTACKBITS_BOTH +NumValues=4 + +[deathType] +00=0,WESTRING_UE_DEATHTYPE_NONE +01=1,WESTRING_UE_DEATHTYPE_RAISE +02=2,WESTRING_UE_DEATHTYPE_DECAY +03=3,WESTRING_UE_DEATHTYPE_BOTH +NumValues=4 + +[weaponType] +00=normal,WESTRING_UE_WEAPONTYPE_NORMAL +01=instant,WESTRING_UE_WEAPONTYPE_INSTANT +02=artillery,WESTRING_UE_WEAPONTYPE_ARTILLERY +03=aline,WESTRING_UE_WEAPONTYPE_ALINE +04=missile,WESTRING_UE_WEAPONTYPE_MISSILE +05=msplash,WESTRING_UE_WEAPONTYPE_MSPLASH +06=mbounce,WESTRING_UE_WEAPONTYPE_MBOUNCE +07=mline,WESTRING_UE_WEAPONTYPE_MLINE +NumValues=8 + +[attackType] +00=unknown,WESTRING_NONE +01=normal,WESTRING_UE_ATTACKTYPE_NORMAL +02=pierce,WESTRING_UE_ATTACKTYPE_PIERCE +03=siege,WESTRING_UE_ATTACKTYPE_SIEGE +04=spells,WESTRING_UE_ATTACKTYPE_SPELLS +05=chaos,WESTRING_UE_ATTACKTYPE_CHAOS +06=magic,WESTRING_UE_ATTACKTYPE_MAGIC +07=hero,WESTRING_UE_ATTACKTYPE_HERO +NumValues=8 + +[targetType] +00=ground,WESTRING_UE_TARGETTYPE_GROUND +01=air,WESTRING_UE_TARGETTYPE_AIR +02=structure,WESTRING_UE_TARGETTYPE_STRUCTURE +03=ward,WESTRING_UE_TARGETTYPE_WARD +NumValues=4 + +[moveType] +00=foot,WESTRING_UE_MOVETYPE_FOOT +01=horse,WESTRING_UE_MOVETYPE_HORSE +02=fly,WESTRING_UE_MOVETYPE_FLY +03=hover,WESTRING_UE_MOVETYPE_HOVER +04=float,WESTRING_UE_MOVETYPE_FLOAT,1 +05=amph,WESTRING_UE_MOVETYPE_AMPH,1 +NumValues=6 + +[defenseType] +00=normal,WESTRING_UE_DEFENSETYPE_NORMAL +01=small,WESTRING_UE_DEFENSETYPE_SMALL +02=medium,WESTRING_UE_DEFENSETYPE_MEDIUM +03=large,WESTRING_UE_DEFENSETYPE_LARGE +04=fort,WESTRING_UE_DEFENSETYPE_FORT +05=hero,WESTRING_UE_DEFENSETYPE_HERO +06=divine,WESTRING_UE_DEFENSETYPE_DIVINE +07=none,WESTRING_UE_DEFENSETYPE_NONE +NumValues=8 + +[defenseTypeInt] +00=4,WESTRING_UE_DEFENSETYPE_NORMAL +01=0,WESTRING_UE_DEFENSETYPE_SMALL +02=1,WESTRING_UE_DEFENSETYPE_MEDIUM +03=2,WESTRING_UE_DEFENSETYPE_LARGE +04=3,WESTRING_UE_DEFENSETYPE_FORT +05=5,WESTRING_UE_DEFENSETYPE_HERO +06=6,WESTRING_UE_DEFENSETYPE_DIVINE +07=7,WESTRING_UE_DEFENSETYPE_NONE +NumValues=8 + +[attributeType] +00=AGI,WESTRING_UE_ATTRIBUTETYPE_AGI +01=INT,WESTRING_UE_ATTRIBUTETYPE_INT +02=STR,WESTRING_UE_ATTRIBUTETYPE_STR +NumValues=3 + +[detectionType] +00=0,WESTRING_UE_DETECTIONTYPE_NONE +01=1,WESTRING_UE_DETECTIONTYPE_INVIS +02=2,WESTRING_UE_DETECTIONTYPE_BURROW +03=3,WESTRING_UE_DETECTIONTYPE_BOTH +NumValues=4 + +[unitClass] +Sort=1 +00=giant,WESTRING_UE_UNITCLASS_GIANT +01=undead,WESTRING_UE_UNITCLASS_UNDEAD +02=summoned,WESTRING_UE_UNITCLASS_SUMMONED +03=mechanical,WESTRING_UE_UNITCLASS_MECHANICAL +04=peon,WESTRING_UE_UNITCLASS_PEON +05=sapper,WESTRING_UE_UNITCLASS_SAPPER +06=townhall,WESTRING_UE_UNITCLASS_TOWNHALL +07=tree,WESTRING_UE_UNITCLASS_TREE +08=ward,WESTRING_UE_UNITCLASS_WARD +09=ancient,WESTRING_UE_UNITCLASS_ANCIENT +10=standon,WESTRING_UE_UNITCLASS_STANDON +11=neutral,WESTRING_UE_UNITCLASS_NEUTRAL +12=tauren,WESTRING_UE_UNITCLASS_TAUREN +NumValues=13 + +[unitRace] +Sort=1 +00=human,WESTRING_UE_UNITRACE_HUMAN +01=orc,WESTRING_UE_UNITRACE_ORC +02=undead,WESTRING_UE_UNITRACE_UNDEAD +03=nightelf,WESTRING_UE_UNITRACE_NIGHTELF +04=demon,WESTRING_UE_UNITRACE_DEMON +05=creeps,WESTRING_UE_UNITRACE_CREEPS +06=critters,WESTRING_UE_UNITRACE_CRITTERS +07=other,WESTRING_UE_UNITRACE_OTHER +08=commoner,WESTRING_UE_UNITRACE_COMMONER +09=naga,WESTRING_UE_UNITRACE_NAGA,1 +10=unknown,WESTRING_UE_UNITRACE_UNKNOWN,1 +NumValues=11 + +[pathingListPrevent] +Sort=1 +00=blighted,WESTRING_UE_PATHINGTYPE_PREVENT_BLIGHTED +01=unbuildable,WESTRING_UE_PATHINGTYPE_PREVENT_UNBUILDABLE +02=unflyable,WESTRING_UE_PATHINGTYPE_PREVENT_UNFLYABLE +03=unwalkable,WESTRING_UE_PATHINGTYPE_PREVENT_UNWALKABLE +04=unamph,WESTRING_UE_PATHINGTYPE_PREVENT_UNAMPHIBIOUS +05=unfloat,WESTRING_UE_PATHINGTYPE_PREVENT_UNFLOATABLE +NumValues=6 + +[pathingListRequire] +Sort=1 +00=blighted,WESTRING_UE_PATHINGTYPE_REQUIRE_BLIGHTED +01=unbuildable,WESTRING_UE_PATHINGTYPE_REQUIRE_UNBUILDABLE +02=unflyable,WESTRING_UE_PATHINGTYPE_REQUIRE_UNFLYABLE +03=unwalkable,WESTRING_UE_PATHINGTYPE_REQUIRE_UNWALKABLE +04=unamph,WESTRING_UE_PATHINGTYPE_REQUIRE_UNAMPHIBIOUS +05=unfloat,WESTRING_UE_PATHINGTYPE_REQUIRE_UNFLOATABLE +NumValues=6 + +[targetList] +Sort=1 +00=air,WESTRING_UE_TARGETTYPE_AIR +01=alive,WESTRING_UE_TARGETTYPE_ALIVE +01_Alt=aliv +02=allies,WESTRING_UE_TARGETTYPE_ALLIES +02_Alt=alli,ally +03=dead,WESTRING_UE_TARGETTYPE_DEAD +04=debris,WESTRING_UE_TARGETTYPE_DEBRIS +04_Alt=debr +05=enemies,WESTRING_UE_TARGETTYPE_ENEMIES +05_Alt=enem,enemy +06=ground,WESTRING_UE_TARGETTYPE_GROUND +06_Alt=grou +07=hero,WESTRING_UE_TARGETTYPE_HERO +08=invulnerable,WESTRING_UE_TARGETTYPE_INVULNERABLE +08_Alt=invu +09=item,WESTRING_UE_TARGETTYPE_ITEM +10=mechanical,WESTRING_UE_TARGETTYPE_MECHANICAL +10_Alt=mech +11=neutral,WESTRING_UE_TARGETTYPE_NEUTRAL +11_Alt=neut +12=none,WESTRING_UE_TARGETTYPE_NONE +13=nonhero,WESTRING_UE_TARGETTYPE_NONHERO +13_Alt=nonh +14=nonsapper,WESTRING_UE_TARGETTYPE_NONSAPPER +15=notself,WESTRING_UE_TARGETTYPE_NOTSELF +15_Alt=nots +16=organic,WESTRING_UE_TARGETTYPE_ORGANIC +16_Alt=orga +17=player,WESTRING_UE_TARGETTYPE_PLAYERUNITS +17_Alt=play +18=sapper,WESTRING_UE_TARGETTYPE_SAPPER +19=self,WESTRING_UE_TARGETTYPE_SELF +20=structure,WESTRING_UE_TARGETTYPE_STRUCTURE +20_Alt=stru +21=terrain,WESTRING_UE_TARGETTYPE_TERRAIN +21_Alt=terr +22=tree,WESTRING_UE_TARGETTYPE_TREE +23=vulnerable,WESTRING_UE_TARGETTYPE_VULNERABLE +23_Alt=vuln +24=wall,WESTRING_UE_TARGETTYPE_WALL +25=ward,WESTRING_UE_TARGETTYPE_WARD +26=ancient,WESTRING_UE_TARGETTYPE_ANCIENT +27=nonancient,WESTRING_UE_TARGETTYPE_NONANCIENT +28=friend,WESTRING_UE_TARGETTYPE_FRIEND +28_Alt=frie +29=bridge,WESTRING_UE_TARGETTYPE_BRIDGE +30=decoration,WESTRING_UE_TARGETTYPE_DECORATION +30_Alt=deco +NumValues=31 + +[upgradeClass] +00=armor,WESTRING_GE_UPGRADECLASS_ARMOR +01=artillery,WESTRING_GE_UPGRADECLASS_ARTILLERY +02=melee,WESTRING_GE_UPGRADECLASS_MELEE +03=ranged,WESTRING_GE_UPGRADECLASS_RANGED +04=caster,WESTRING_GE_UPGRADECLASS_CASTER +NumValues=5 + +[upgradeEffect] +Sort=1 +00=rarm,WESTRING_GE_UPGRADEEFFECT_ARMOR +01=ratt,WESTRING_GE_UPGRADEEFFECT_ATTACK +02=ratx,WESTRING_GE_UPGRADEEFFECT_ATTACKEX +03=radl,WESTRING_GE_UPGRADEEFFECT_ATTACKDMGLOSS +04=ratd,WESTRING_GE_UPGRADEEFFECT_ATTACKDICE +05=ratr,WESTRING_GE_UPGRADEEFFECT_ATTACKRANGE +06=rats,WESTRING_GE_UPGRADEEFFECT_ATTACKSPEED +07=rasd,WESTRING_GE_UPGRADEEFFECT_ATTACKSPILLDST +08=rasr,WESTRING_GE_UPGRADEEFFECT_ATTACKSPILLRAD +09=ratc,WESTRING_GE_UPGRADEEFFECT_ATTACKTARGCOUNT +10=raud,WESTRING_GE_UPGRADEEFFECT_AURADATA +11=renw,WESTRING_GE_UPGRADEEFFECT_ENABLEWEAPON +12=rent,WESTRING_GE_UPGRADEEFFECT_ENTANGLE +13=rhpo,WESTRING_GE_UPGRADEEFFECT_HITPOINTS +14=rhpx,WESTRING_GE_UPGRADEEFFECT_HITPOINTSEX +15=rhpr,WESTRING_GE_UPGRADEEFFECT_HITPOINTSREGEN +16=rlum,WESTRING_GE_UPGRADEEFFECT_LUMBERJACK +17=rmim,WESTRING_GE_UPGRADEEFFECT_MAGICIMMUNITY +18=rman,WESTRING_GE_UPGRADEEFFECT_MANA +19=rmnx,WESTRING_GE_UPGRADEEFFECT_MANAEX +20=rmnr,WESTRING_GE_UPGRADEEFFECT_MANAREGEN +21=rmin,WESTRING_GE_UPGRADEEFFECT_MINING +22=rmov,WESTRING_GE_UPGRADEEFFECT_MOVESPEED +23=rmvx,WESTRING_GE_UPGRADEEFFECT_MOVESPEEDEX +24=rrai,WESTRING_GE_UPGRADEEFFECT_RAISEDEAD +25=rroo,WESTRING_GE_UPGRADEEFFECT_ROOTWEAPONS +26=rsig,WESTRING_GE_UPGRADEEFFECT_SIGHT +27=rlev,WESTRING_GE_UPGRADEEFFECT_SPELL +28=rspi,WESTRING_GE_UPGRADEEFFECT_SPIKES +29=ruro,WESTRING_GE_UPGRADEEFFECT_UPROOTWEAPONS +30=rtma,WESTRING_GE_UPGRADEEFFECT_UNITAVAILABLE +31=rart,WESTRING_GE_UPGRADEEFFECT_DEFENSETYPE +32=rauv,WESTRING_GE_UPGRADEEFFECT_ULTRAVISION +NumValues=33 + +[itemClass] +00=Permanent,WESTRING_ITEMCLASS_PERMANENT +01=Charged,WESTRING_ITEMCLASS_CHARGED +02=PowerUp,WESTRING_ITEMCLASS_POWERUP +03=Artifact,WESTRING_ITEMCLASS_ARTIFACT +04=Purchasable,WESTRING_ITEMCLASS_PURCHASABLE +05=Campaign,WESTRING_ITEMCLASS_CAMPAIGN +06=Miscellaneous,WESTRING_ITEMCLASS_MISCELLANEOUS +NumValues=7 + +[armorType] +Sort=1 +00=Flesh,WESTRING_UE_ARMORTYPE_FLESH +01=Metal,WESTRING_UE_ARMORTYPE_METAL +02=Wood,WESTRING_UE_ARMORTYPE_WOOD +03=Ethereal,WESTRING_UE_ARMORTYPE_ETHEREAL +04=Stone,WESTRING_UE_ARMORTYPE_STONE +NumValues=5 + +[shadowImage] +Sort=1 +00=Shadow,WESTRING_UE_SHADOWIMAGE_NORMAL +01=ShadowFlyer,WESTRING_UE_SHADOWIMAGE_FLYER +NumValues=2 + +[teamColor] +00=-1,WESTRING_UE_TEAMCOLOR_NONE +01=0,WESTRING_UE_TEAMCOLOR_00 +02=1,WESTRING_UE_TEAMCOLOR_01 +03=2,WESTRING_UE_TEAMCOLOR_02 +04=3,WESTRING_UE_TEAMCOLOR_03 +05=4,WESTRING_UE_TEAMCOLOR_04 +06=5,WESTRING_UE_TEAMCOLOR_05 +07=6,WESTRING_UE_TEAMCOLOR_06 +08=7,WESTRING_UE_TEAMCOLOR_07 +09=8,WESTRING_UE_TEAMCOLOR_08 +10=9,WESTRING_UE_TEAMCOLOR_09 +11=10,WESTRING_UE_TEAMCOLOR_10 +12=11,WESTRING_UE_TEAMCOLOR_11 +13=12,WESTRING_UE_TEAMCOLOR_12 +NumValues=14 + +[aiBuffer] +Sort=1 +00=_,WESTRING_UE_AIBUFFER_NONE +01=townhall,WESTRING_UE_AIBUFFER_HALL +02=resource,WESTRING_UE_AIBUFFER_RESOURCE +03=factory,WESTRING_UE_AIBUFFER_FACTORY +04=buffer,WESTRING_UE_AIBUFFER_GENERAL +NumValues=5 + +[combatSound] +Sort=1 +00=AxeMediumChop,WESTRING_UE_COMBATSOUND_AXEMEDIUMCHOP +01=MetalHeavyBash,WESTRING_UE_COMBATSOUND_METALHEAVYBASH +02=MetalHeavyChop,WESTRING_UE_COMBATSOUND_METALHEAVYCHOP +03=MetalHeavySlice,WESTRING_UE_COMBATSOUND_METALHEAVYSLICE +04=MetalLightChop,WESTRING_UE_COMBATSOUND_METALLIGHTCHOP +05=MetalLightSlice,WESTRING_UE_COMBATSOUND_METALLIGHTSLICE +06=MetalMediumBash,WESTRING_UE_COMBATSOUND_METALMEDIUMBASH +07=MetalMediumChop,WESTRING_UE_COMBATSOUND_METALMEDIUMCHOP +08=MetalMediumSlice,WESTRING_UE_COMBATSOUND_METALMEDIUMSLICE +09=RockHeavyBash,WESTRING_UE_COMBATSOUND_ROCKHEAVYBASH +10=WoodHeavyBash,WESTRING_UE_COMBATSOUND_WOODHEAVYBASH +11=WoodLightBash,WESTRING_UE_COMBATSOUND_WOODLIGHTBASH +12=WoodMediumBash,WESTRING_UE_COMBATSOUND_WOODMEDIUMBASH +NumValues=13 + +[morphFlags] +Sort=1 +00=0,WESTRING_UE_MORPHFLAGS_UNINTERRUPTABLE +01=1,WESTRING_UE_MORPHFLAGS_IMMEDIATE_LANDING +02=2,WESTRING_UE_MORPHFLAGS_IMMEDIATE_TAKEOFF +03=3,WESTRING_UE_MORPHFLAGS_PERMANENT +04=4,WESTRING_UE_MORPHFLAGS_REQUIREPAYMENT +NumValues=5 + +[silenceFlags] +Sort=1 +00=0,WESTRING_UE_SILENCEFLAGS_MELEE +01=1,WESTRING_UE_SILENCEFLAGS_RANGED +02=2,WESTRING_UE_SILENCEFLAGS_SPECIAL +03=3,WESTRING_UE_SILENCEFLAGS_SPELLS +NumValues=4 + +[stackFlags] +Sort=1 +00=0,WESTRING_UE_STACKFLAGS_DAMAGE +01=1,WESTRING_UE_STACKFLAGS_MOVEMENT +02=2,WESTRING_UE_STACKFLAGS_ATTACKRATE +03=3,WESTRING_UE_STACKFLAGS_KILLUNIT +NumValues=4 + +[interactionFlags] +Sort=1 +00=0,WESTRING_UE_INTERACTIONFLAGS_INVENTORY +01=1,WESTRING_UE_INTERACTIONFLAGS_UNIT +02=2,WESTRING_UE_INTERACTIONFLAGS_ANY +NumValues=3 + +[pickFlags] +Sort=1 +00=0,WESTRING_UE_PICKFLAGS_TOWNHALL +01=1,WESTRING_UE_PICKFLAGS_RESOURCE +02=2,WESTRING_UE_PICKFLAGS_FACTORY +03=3,WESTRING_UE_PICKFLAGS_BUFFER +NumValues=4 + +[versionFlags] +00=0,WESTRING_UE_VERSIONFLAGS_VER0 +01=1,WESTRING_UE_VERSIONFLAGS_VER1 +NumValues=2 + +[fullFlags] +00=0,WESTRING_UE_FULLFLAGS_NONE +01=1,WESTRING_UE_FULLFLAGS_LIFE +02=2,WESTRING_UE_FULLFLAGS_MANA +03=3,WESTRING_UE_FULLFLAGS_BOTH +NumValues=4 + +[channelType] +00=0,WESTRING_UE_CHANNELTYPE_INSTANT +01=1,WESTRING_UE_CHANNELTYPE_UNIT +02=2,WESTRING_UE_CHANNELTYPE_POINT +03=3,WESTRING_UE_CHANNELTYPE_UNITPOINT +NumValues=4 + +[channelFlags] +00=0,WESTRING_UE_CHANNELFLAGS_VISIBLE +01=1,WESTRING_UE_CHANNELFLAGS_TARGIMAGE +02=2,WESTRING_UE_CHANNELFLAGS_PHYSICAL +03=3,WESTRING_UE_CHANNELFLAGS_UNIVERSAL +04=4,WESTRING_UE_CHANNELFLAGS_UNIQUE +NumValues=5 + +[spellDetail] +00=0,WESTRING_UE_SPELLDETAIL_LOW +01=1,WESTRING_UE_SPELLDETAIL_MEDIUM +02=2,WESTRING_UE_SPELLDETAIL_HIGH +NumValues=3 + +[techAvail] +00=-1,WESTRING_UE_TECHAVAIL_AVAILABLE +01=1,WESTRING_UE_TECHAVAIL_UNAVAILABLE +NumValues=2 + +[lightningEffect] +Sort=1 +00=CLPB,WESTRING_UE_LIGHTNINGEFFECT_CLPB +01=CLSB,WESTRING_UE_LIGHTNINGEFFECT_CLSB +02=MBUR,WESTRING_UE_LIGHTNINGEFFECT_MBUR +03=CHIM,WESTRING_UE_LIGHTNINGEFFECT_CHIM +04=AFOD,WESTRING_UE_LIGHTNINGEFFECT_AFOD +05=HWPB,WESTRING_UE_LIGHTNINGEFFECT_HWPB +06=HWSB,WESTRING_UE_LIGHTNINGEFFECT_HWSB +07=MFPB,WESTRING_UE_LIGHTNINGEFFECT_MFPB +08=DRAB,WESTRING_UE_LIGHTNINGEFFECT_DRAB +09=DRAL,WESTRING_UE_LIGHTNINGEFFECT_DRAL +10=DRAM,WESTRING_UE_LIGHTNINGEFFECT_DRAM +11=FORK,WESTRING_UE_LIGHTNINGEFFECT_FORK +12=SPLK,WESTRING_UE_LIGHTNINGEFFECT_SPLK +13=LEAS,WESTRING_UE_LIGHTNINGEFFECT_LEAS +NumValues=14 diff --git a/share/mpq/units/ui/worldeditdata.txt b/share/mpq/units/ui/worldeditdata.txt new file mode 100644 index 0000000..fe46c53 --- /dev/null +++ b/share/mpq/units/ui/worldeditdata.txt @@ -0,0 +1,1206 @@ +[TileSets] +A=WESTRING_LOCALE_ASHENVALE,TerrainArt\Blight\Ashen_Blight +B=WESTRING_LOCALE_BARRENS,TerrainArt\Blight\Barrens_Blight +//#LINENOBETA +K=WESTRING_LOCALE_BLACKCITADEL,TerrainArt\Blight\Citadel_Blight +Y=WESTRING_LOCALE_CITYSCAPE,TerrainArt\Blight\Village_Blight +X=WESTRING_LOCALE_DALARAN,TerrainArt\Blight\Village_Blight +//#LINENOBETA +J=WESTRING_LOCALE_DALARANRUINS,TerrainArt\Blight\DRuins_Blight +D=WESTRING_LOCALE_DUNGEON,TerrainArt\Blight\Cave_Blight +C=WESTRING_LOCALE_FELWOOD,TerrainArt\Blight\Felwood_Blight +//#LINENOBETA +I=WESTRING_LOCALE_ICECROWN,TerrainArt\Blight\Ice_Blight +F=WESTRING_LOCALE_LORDAERON_FALL,TerrainArt\Blight\Lordf_Blight +L=WESTRING_LOCALE_LORDAERON_SUMMER,TerrainArt\Blight\Lords_Blight +W=WESTRING_LOCALE_LORDAERON_WINTER,TerrainArt\Blight\Lordw_Blight +N=WESTRING_LOCALE_NORTHREND,TerrainArt\Blight\North_Blight +//#LINENOBETA +O=WESTRING_LOCALE_OUTLAND,TerrainArt\Blight\Outland_Blight +Z=WESTRING_LOCALE_RUINS,TerrainArt\Blight\Ruins_Blight +G=WESTRING_LOCALE_DUNGEON2,TerrainArt\Blight\Dungeon_Blight +V=WESTRING_LOCALE_VILLAGE,TerrainArt\Blight\Village_Blight +Q=WESTRING_LOCALE_VILLAGEFALL,TerrainArt\Blight\VillageFall_Blight + +//***************************************************************// +// Note do not delete these for the following time. +//ASK Dhale if you have question +// +//L=WESTRING_LOCALE_LORDAERON_SUMMER,TerrainArt\Blight\Lords_Blight +//F=WESTRING_LOCALE_LORDAERON_FALL,TerrainArt\Blight\Lordf_Blight +//W=WESTRING_LOCALE_LORDAERON_WINTER,TerrainArt\Blight\Lordw_Blight +//B=WESTRING_LOCALE_BARRENS,TerrainArt\Blight\Barrens_Blight +//A=WESTRING_LOCALE_ASHENVALE,TerrainArt\Blight\Ashen_Blight +//C=WESTRING_LOCALE_FELWOOD,TerrainArt\Blight\Felwood_Blight +//N=WESTRING_LOCALE_NORTHREND,TerrainArt\Blight\North_Blight +//#LINENOBETA +//I=WESTRING_LOCALE_ICECROWN,TerrainArt\Blight\Ice_Blight +//Y=WESTRING_LOCALE_CITYSCAPE,TerrainArt\Blight\Village_Blight +//X=WESTRING_LOCALE_DALARAN,TerrainArt\Blight\Village_Blight +//#LINENOBETA +//J=WESTRING_LOCALE_DALARANRUINS,TerrainArt\Blight\DRuins_Blight +//V=WESTRING_LOCALE_VILLAGE,TerrainArt\Blight\Village_Blight +//Q=WESTRING_LOCALE_VILLAGEFALL,TerrainArt\Blight\VillageFall_Blight +//D=WESTRING_LOCALE_DUNGEON,TerrainArt\Blight\Cave_Blight +//G=WESTRING_LOCALE_DUNGEON2,TerrainArt\Blight\Dungeon_Blight +//Z=WESTRING_LOCALE_RUINS,TerrainArt\Blight\Ruins_Blight +//#LINENOBETA +//O=WESTRING_LOCALE_OUTLAND,TerrainArt\Blight\Outland_Blight +//#LINENOBETA +//K=WESTRING_LOCALE_BLACKCITADEL,TerrainArt\Blight\Citadel_Blight +//***************************************************************// + +// Note: If a tileset does not have an entry for a terrain/unit light, +// it will use the hard-coded default (Lordaeron) +[TerrainLights] +L=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +F=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +W=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +B=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +A=Environment\DNC\DNCAshenvale\DNCAshenvaleTerrain\DNCAshenvaleTerrain.mdl +C=Environment\DNC\DNCFelwood\DNCFelwoodTerrain\DNCFelwoodTerrain.mdl +N=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +Y=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +X=Environment\DNC\DNCDalaran\DNCDalaranTerrain\DNCDalaranTerrain.mdl +V=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +D=Environment\DNC\DNCDungeon\DNCDungeonTerrain\DNCDungeonTerrain.mdl +Q=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +G=Environment\DNC\DNCUnderground\DNCUndergroundTerrain\DNCUndergroundTerrain.mdl +Z=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +//#LINENOBETA +I=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +//#LINENOBETA +O=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +//#LINENOBETA +K=Environment\DNC\DNCLordaeron\DNCLordaeronTerrain\DNCLordaeronTerrain.mdl +//#LINENOBETA +J=Environment\DNC\DNCDalaran\DNCDalaranTerrain\DNCDalaranTerrain.mdl + +[UnitLights] +L=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +F=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +W=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +B=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +A=Environment\DNC\DNCAshenvale\DNCAshenvaleUnit\DNCAshenvaleUnit.mdl +C=Environment\DNC\DNCFelwood\DNCFelwoodUnit\DNCFelwoodUnit.mdl +N=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +Y=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +X=Environment\DNC\DNCDalaran\DNCDalaranUnit\DNCDalaranUnit.mdl +V=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +D=Environment\DNC\DNCDungeon\DNCDungeonUnit\DNCDungeonUnit.mdl +Q=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +G=Environment\DNC\DNCUnderground\DNCUndergroundUnit\DNCUndergroundUnit.mdl +Z=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +//#LINENOBETA +I=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +//#LINENOBETA +O=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +//#LINENOBETA +K=Environment\DNC\DNCLordaeron\DNCLordaeronUnit\DNCLordaeronUnit.mdl +//#LINENOBETA +J=Environment\DNC\DNCDalaran\DNCDalaranUnit\DNCDalaranUnit.mdl + +[DoodadCategories] +O=WESTRING_DTYPE_PROPS,ReplaceableTextures\WorldEditUI\Doodad-Prop +S=WESTRING_DTYPE_STRUCTURES,ReplaceableTextures\WorldEditUI\Doodad-Structures +W=WESTRING_DTYPE_WATER,ReplaceableTextures\WorldEditUI\Doodad-Water +C=WESTRING_DTYPE_CLIFF,ReplaceableTextures\WorldEditUI\Doodad-Cliff +E=WESTRING_DTYPE_ENVIRONMENT,ReplaceableTextures\WorldEditUI\Doodad-Environment +Z=WESTRING_DTYPE_CINEMATIC,ReplaceableTextures\WorldEditUI\Doodad-Cinematic + +[DestructibleCategories] +D=WESTRING_DTYPE_DESTRUCTABLE,ReplaceableTextures\WorldEditUI\Doodad-Destructible +P=WESTRING_DTYPE_PATHING,ReplaceableTextures\WorldEditUI\Doodad-Destructible +B=WESTRING_DTYPE_BRIDGE,ReplaceableTextures\WorldEditUI\Doodad-Bridge + +[SkyModels] +00=Environment\Sky\BlizzardSky\BlizzardSky.mdl,WESTRING_SKYMODEL_SKY08 +01=Environment\Sky\DalaranSky\DalaranSky.mdl,WESTRING_SKYMODEL_SKY02 +02=Environment\Sky\FelwoodSky\FelwoodSky.mdl,WESTRING_SKYMODEL_SKY06 +03=Environment\Sky\FoggedSky\FoggedSky.mdl,WESTRING_SKYMODEL_SKY07 +04=Environment\Sky\Sky\SkyLight.mdl,WESTRING_SKYMODEL_SKY01 +05=Environment\Sky\LordaeronFallSky\LordaeronFallSky.mdl,WESTRING_SKYMODEL_SKY03 +06=Environment\Sky\LordaeronSummerSky\LordaeronSummerSky.mdl,WESTRING_SKYMODEL_SKY04 +07=Environment\Sky\LordaeronWinterSky\LordaeronWinterSky.mdl,WESTRING_SKYMODEL_SKY05 +08=Environment\Sky\LordaeronWinterSkyBrightGreen\LordaeronWinterSkyBrightGreen.mdl,WESTRING_SKYMODEL_SKY09 +09=Environment\Sky\LordaeronWinterSkyPink\LordaeronWinterSkyPink.mdl,WESTRING_SKYMODEL_SKY10 +10=Environment\Sky\LordaeronWinterSkyPurple\LordaeronWinterSkyPurple.mdl,WESTRING_SKYMODEL_SKY11 +11=Environment\Sky\LordaeronWinterSkyRed\LordaeronWinterSkyRed.mdl,WESTRING_SKYMODEL_SKY12 +12=Environment\Sky\LordaeronWinterSkyYellow\LordaeronWinterSkyYellow.mdl,WESTRING_SKYMODEL_SKY13 +//#LINENOBETA +13=Environment\Sky\Outland_Sky\Outland_Sky.mdl,WESTRING_SKYMODEL_SKY14 + +[DayAmbience] +L=LordaeronSummerDay +F=LordaeronFallDay +W=LordaeronWinterDay +B=BarrensDay +A=AshenvaleDay +C=FelwoodDay +N=NorthrendDay +Y=CityScapeDay +X=DalaranDay +V=VillageDay +Q=VillageFallDay +D=DungeonDay +G=DungeonDay +Z=SunkenRuinsDay +//#LINENOBETA +I=IceCrownDay +//#LINENOBETA +O=BlackCitadelDay +//#LINENOBETA +K=BlackCitadelDay +//#LINENOBETA +J=DalaranRuinsDay + +[NightAmbience] +L=LordaeronSummerNight +F=LordaeronFallNight +W=LordaeronWinterNight +B=BarrensNight +A=AshenvaleNight +C=FelwoodNight +N=NorthrendNight +Y=CityScapeNight +X=DalaranNight +V=VillageNight +Q=VillageFallNight +D=DungeonNight +G=DungeonNight +Z=SunkenRuinsNight +//#LINENOBETA +I=IceCrownNight +//#LINENOBETA +O=BlackCitadelNight +//#LINENOBETA +K=BlackCitadelNight +//#LINENOBETA +J=DalaranRuinsNight + +[SoundEnvironment] +// Specifies the default sound environment for each tileset +// Environments are defined in UI\SoundInfo\EnvironmentSounds.slk +L=Default +F=Default +W=Default +B=Default +A=Default +C=Default +N=Default +Y=Default +X=Default +V=Default +Q=Default +D=Default +G=Default +Z=Default +//#LINENOBETA +I=Default +//#LINENOBETA +O=Default +//#LINENOBETA +K=Default +//#LINENOBETA +J=Default + +[MusicFiles] +// File, Game Version (0 is default) +00=Sound\Music\mp3Music\TragicConfrontation.mp3 +01=Sound\Music\mp3Music\DarkAgents.mp3 +02=Sound\Music\mp3Music\Human3.mp3 +03=Sound\Music\mp3Music\HumanDefeat.mp3 +04=Sound\Music\mp3Music\HumanVictory.mp3 +05=Sound\Music\mp3Music\Mainscreen.mp3 +06=Sound\Music\mp3Music\NightElf1.mp3 +07=Sound\Music\mp3Music\NightElf2.mp3 +08=Sound\Music\mp3Music\NightElf3.mp3 +09=Sound\Music\mp3Music\NightElfDefeat.mp3 +10=Sound\Music\mp3Music\NightElfVictory.mp3 +11=Sound\Music\mp3Music\Orc1.mp3 +12=Sound\Music\mp3Music\Orc2.mp3 +13=Sound\Music\mp3Music\Undead2.mp3 +14=Sound\Music\mp3Music\UndeadDefeat.mp3 +15=Sound\Music\mp3Music\UndeadVictory.mp3 +16=Sound\Music\mp3Music\Human1.mp3 +17=Sound\Music\mp3Music\SadMystery.mp3 +18=Sound\Music\mp3Music\Comradeship.mp3 +19=Sound\Music\mp3Music\DarkVictory.mp3 +20=Sound\Music\mp3Music\HeroicVictory.mp3 +21=Sound\Music\mp3Music\Credits.mp3 +22=Sound\Music\mp3Music\Orc3.mp3 +23=Sound\Music\mp3Music\OrcVictory.mp3 +24=Sound\Music\mp3Music\OrcDefeat.mp3 +25=Sound\Music\mp3Music\Undead1.mp3 +26=Sound\Music\mp3Music\Tension.mp3 +27=Sound\Music\mp3Music\Doom.mp3 +28=Sound\Music\mp3Music\War2IntroMusic.mp3 +29=Sound\Music\mp3Music\Human2.mp3 +30=Sound\Music\mp3Music\Undead3.mp3 +//#LINENOBETA +31=Sound\Music\mp3Music\NightElfX1.mp3,1 +//#LINENOBETA +32=Sound\Music\mp3Music\IllidansTheme.mp3,1 +//#LINENOBETA +33=Sound\Music\mp3Music\ArthasTheme.mp3,1 +//#LINENOBETA +34=Sound\Music\mp3Music\NagaTheme.mp3,1 +//#LINENOBETA +35=Sound\Music\mp3Music\PursuitTheme.mp3,1 +//#LINENOBETA +36=Sound\Music\mp3Music\LichKingTheme.mp3,1 +//#LINENOBETA +37=Sound\Music\mp3Music\BloodElfTheme.mp3,1 +//#LINENOBETA +38=Sound\Music\mp3Music\OrcTheme.mp3,1 +//#LINENOBETA +39=Sound\Music\mp3Music\HumanX1.mp3,1 +//#LINENOBETA +40=Sound\Music\mp3Music\OrcX1.mp3,1 +//#LINENOBETA +41=Sound\Music\mp3Music\UndeadX1.mp3,1 +//#LINENOBETA +42=Sound\Music\mp3Music\War3XMainScreen.mp3,1 + +// Sound channels available for use in Sound Editor +// Value 0: 0 or 1 - Can this channel play 3D sounds? +// Value 1: Display text in editor +[SoundChannels] +00=1,WESTRING_SOUNDCHANNEL_GENERAL +01=1,WESTRING_SOUNDCHANNEL_UNITSELECT +02=1,WESTRING_SOUNDCHANNEL_UNITACK +03=1,WESTRING_SOUNDCHANNEL_UNITMOVE +04=1,WESTRING_SOUNDCHANNEL_UNITREADY +05=1,WESTRING_SOUNDCHANNEL_COMBAT +06=0,WESTRING_SOUNDCHANNEL_ERROR +07=0,WESTRING_SOUNDCHANNEL_MUSIC +08=0,WESTRING_SOUNDCHANNEL_UI +09=1,WESTRING_SOUNDCHANNEL_LOOPMOVE +10=1,WESTRING_SOUNDCHANNEL_LOOPAMB +11=1,WESTRING_SOUNDCHANNEL_ANIM +12=1,WESTRING_SOUNDCHANNEL_CONSTRUCTION +13=1,WESTRING_SOUNDCHANNEL_BIRTH +14=1,WESTRING_SOUNDCHANNEL_FIRE + +// Loading and Prologue screen info +// Value 0: Game version in which this loading screen first appeared +// Value 1: Display text for editor +// Value 2: Integer indicating which animation sequence to use +// Value 3: Model file for screen graphics +[LoadingScreens] +NumScreens=98 +00=0,WESTRING_LOADINGSCREEN_TUTORIAL01,0,UI\Glues\Loading\Backgrounds\Campaigns\TutorialBackground.mdl +01=0,WESTRING_LOADINGSCREEN_TUTORIAL02,1,UI\Glues\Loading\Backgrounds\Campaigns\TutorialBackground.mdl +02=0,WESTRING_LOADINGSCREEN_HUMAN01,0,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +03=0,WESTRING_LOADINGSCREEN_HUMAN02,1,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +04=0,WESTRING_LOADINGSCREEN_HUMAN02_INTERLUDE,0,UI\Glues\Loading\Backgrounds\Campaigns\DalaranBackground.mdl +05=0,WESTRING_LOADINGSCREEN_HUMAN03,2,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +06=0,WESTRING_LOADINGSCREEN_HUMAN04,3,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +07=0,WESTRING_LOADINGSCREEN_HUMAN05,4,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +08=0,WESTRING_LOADINGSCREEN_HUMAN05_INTERLUDE,5,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +09=0,WESTRING_LOADINGSCREEN_HUMAN06,5,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +10=0,WESTRING_LOADINGSCREEN_HUMAN06_INTERLUDE,5,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +11=0,WESTRING_LOADINGSCREEN_HUMAN07,0,UI\Glues\Loading\Backgrounds\Campaigns\NorthrendBackground.mdl +12=0,WESTRING_LOADINGSCREEN_HUMAN08,0,UI\Glues\Loading\Backgrounds\Campaigns\NorthrendBackground.mdl +13=0,WESTRING_LOADINGSCREEN_HUMAN09,1,UI\Glues\Loading\Backgrounds\Campaigns\NorthrendBackground.mdl +14=0,WESTRING_LOADINGSCREEN_UNDEAD01,1,UI\Glues\Loading\Backgrounds\Campaigns\DalaranBackground.mdl +15=0,WESTRING_LOADINGSCREEN_UNDEAD02,6,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +16=0,WESTRING_LOADINGSCREEN_UNDEAD02_INTERLUDE,2,UI\Glues\Loading\Backgrounds\Campaigns\QuelThalasBackground.mdl +17=0,WESTRING_LOADINGSCREEN_UNDEAD03,0,UI\Glues\Loading\Backgrounds\Campaigns\QuelthalasBackground.mdl +18=0,WESTRING_LOADINGSCREEN_UNDEAD04,1,UI\Glues\Loading\Backgrounds\Campaigns\QuelthalasBackground.mdl +19=0,WESTRING_LOADINGSCREEN_UNDEAD05,3,UI\Glues\Loading\Backgrounds\Campaigns\QuelthalasBackground.mdl +20=0,WESTRING_LOADINGSCREEN_UNDEAD05_INTERLUDE,7,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +21=0,WESTRING_LOADINGSCREEN_UNDEAD06,8,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +22=0,WESTRING_LOADINGSCREEN_UNDEAD07,2,UI\Glues\Loading\Backgrounds\Campaigns\DalaranBackground.mdl +23=0,WESTRING_LOADINGSCREEN_UNDEAD08,2,UI\Glues\Loading\Backgrounds\Campaigns\DalaranBackground.mdl +24=0,WESTRING_LOADINGSCREEN_ORC01,0,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +25=0,WESTRING_LOADINGSCREEN_ORC02,1,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +26=0,WESTRING_LOADINGSCREEN_ORC02_INTERLUDE,9,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronBackground.mdl +27=0,WESTRING_LOADINGSCREEN_ORC03,2,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +28=0,WESTRING_LOADINGSCREEN_ORC04,3,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +29=0,WESTRING_LOADINGSCREEN_ORC04_INTERLUDE,3,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +30=0,WESTRING_LOADINGSCREEN_ORC05,3,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +31=0,WESTRING_LOADINGSCREEN_ORC06,4,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +32=0,WESTRING_LOADINGSCREEN_ORC07,5,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +33=0,WESTRING_LOADINGSCREEN_ORC08,6,UI\Glues\Loading\Backgrounds\Campaigns\BarrensBackground.mdl +34=0,WESTRING_LOADINGSCREEN_NIGHTELF01,2,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +35=0,WESTRING_LOADINGSCREEN_NIGHTELF02,3,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +36=0,WESTRING_LOADINGSCREEN_NIGHTELF03,4,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +37=0,WESTRING_LOADINGSCREEN_NIGHTELF04,5,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +38=0,WESTRING_LOADINGSCREEN_NIGHTELF05,6,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +39=0,WESTRING_LOADINGSCREEN_NIGHTELF06,7,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +40=0,WESTRING_LOADINGSCREEN_NIGHTELF06_INTERLUDE,8,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +41=0,WESTRING_LOADINGSCREEN_NIGHTELF07,9,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +42=0,WESTRING_LOADINGSCREEN_NIGHTELF07_INTERLUDE,9,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +43=0,WESTRING_LOADINGSCREEN_NIGHTELF08,10,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleBackground.mdl +44=0,WESTRING_LOADINGSCREEN_CREDITS,0,UI\Glues\Loading\Backgrounds\Load-Credits\Load-Credits.mdl +45=0,WESTRING_LOADINGSCREEN_GENERIC,0,UI\Glues\Loading\Load-Generic\Load-Generic.mdl +//#LINENOBETA +46=1,WESTRING_LOADINGSCREEN_NIGHTELFX01,0,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleExpansionBackground.mdl +//#LINENOBETA +47=1,WESTRING_LOADINGSCREEN_NIGHTELFX02,0,UI\Glues\Loading\Backgrounds\Campaigns\DrownedRuinsExpansionBackground.mdl +//#LINENOBETA +48=1,WESTRING_LOADINGSCREEN_NIGHTELFX03,1,UI\Glues\Loading\Backgrounds\Campaigns\DrownedRuinsExpansionBackground.mdl +//#LINENOBETA +49=1,WESTRING_LOADINGSCREEN_NIGHTELFX04,2,UI\Glues\Loading\Backgrounds\Campaigns\DrownedRuinsExpansionBackground.mdl +//#LINENOBETA +50=1,WESTRING_LOADINGSCREEN_NIGHTELFX04_INTERLUDE,1,UI\Glues\Loading\Backgrounds\Campaigns\AshenvaleExpansionBackground.mdl +//#LINENOBETA +51=1,WESTRING_LOADINGSCREEN_NIGHTELFX05,3,UI\Glues\Loading\Backgrounds\Campaigns\DrownedRuinsExpansionBackground.mdl +//#LINENOBETA +52=1,WESTRING_LOADINGSCREEN_NIGHTELFX06,0,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +53=1,WESTRING_LOADINGSCREEN_NIGHTELFX06_INTERLUDE,1,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +54=1,WESTRING_LOADINGSCREEN_NIGHTELFX07,2,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +55=1,WESTRING_LOADINGSCREEN_NIGHTELFX08,4,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +56=1,WESTRING_LOADINGSCREEN_NIGHTELFX08_FINALE,5,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +57=1,WESTRING_LOADINGSCREEN_HUMANX01,6,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +58=1,WESTRING_LOADINGSCREEN_HUMANX02,7,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +59=1,WESTRING_LOADINGSCREEN_HUMANX03,9,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +60=1,WESTRING_LOADINGSCREEN_HUMANX03_SECRET,10,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +61=1,WESTRING_LOADINGSCREEN_HUMANX03_INTERLUDE,0,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +62=1,WESTRING_LOADINGSCREEN_HUMANX04,1,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +63=1,WESTRING_LOADINGSCREEN_HUMANX04_INTERLUDE,2,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +64=1,WESTRING_LOADINGSCREEN_HUMANX05,3,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +65=1,WESTRING_LOADINGSCREEN_HUMANX06,4,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +66=1,WESTRING_LOADINGSCREEN_HUMANX06_FINALE,5,UI\Glues\Loading\Backgrounds\Campaigns\OutlandExpansionBackground.mdl +//#LINENOBETA +67=1,WESTRING_LOADINGSCREEN_UNDEADX01,11,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +68=1,WESTRING_LOADINGSCREEN_UNDEADX01_INTERLUDE,12,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +69=1,WESTRING_LOADINGSCREEN_UNDEADX02,13,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +70=1,WESTRING_LOADINGSCREEN_UNDEADX02_INTERLUDE,14,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +71=1,WESTRING_LOADINGSCREEN_UNDEADX03,15,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +72=1,WESTRING_LOADINGSCREEN_UNDEADX04,0,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +73=1,WESTRING_LOADINGSCREEN_UNDEADX05,16,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +74=1,WESTRING_LOADINGSCREEN_UNDEADX06,17,UI\Glues\Loading\Backgrounds\Campaigns\LordaeronExpansionBackground.mdl +//#LINENOBETA +75=1,WESTRING_LOADINGSCREEN_UNDEADX07A,1,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +76=1,WESTRING_LOADINGSCREEN_UNDEADX07B,2,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +77=1,WESTRING_LOADINGSCREEN_UNDEADX07C,3,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +78=1,WESTRING_LOADINGSCREEN_UNDEADX07_INTERLUDE,4,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +79=1,WESTRING_LOADINGSCREEN_UNDEADX08,5,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +80=1,WESTRING_LOADINGSCREEN_UNDEADX08_FINALE,5,UI\Glues\Loading\Backgrounds\Campaigns\IcecrownExpansionBackground.mdl +//#LINENOBETA +81=1,WESTRING_LOADINGSCREEN_ORCX01_01,0,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionQuest01Background.mdl +//#LINENOBETA +82=1,WESTRING_LOADINGSCREEN_ORCX01_02,0,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +83=1,WESTRING_LOADINGSCREEN_ORCX01_03,4,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +84=1,WESTRING_LOADINGSCREEN_ORCX01_04,3,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +85=1,WESTRING_LOADINGSCREEN_ORCX01_05,1,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +86=1,WESTRING_LOADINGSCREEN_ORCX02_01,0,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionQuest02Background.mdl +//#LINENOBETA +87=1,WESTRING_LOADINGSCREEN_ORCX02_02,5,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +88=1,WESTRING_LOADINGSCREEN_ORCX02_03,6,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +89=1,WESTRING_LOADINGSCREEN_ORCX02_04,8,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +90=1,WESTRING_LOADINGSCREEN_ORCX02_05,7,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +91=1,WESTRING_LOADINGSCREEN_ORCX02_06,9,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +92=1,WESTRING_LOADINGSCREEN_ORCX02_07,10,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +93=1,WESTRING_LOADINGSCREEN_ORCX02_08,11,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +94=1,WESTRING_LOADINGSCREEN_ORCX02_09,12,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +95=1,WESTRING_LOADINGSCREEN_ORCX02_10,13,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +96=1,WESTRING_LOADINGSCREEN_ORCX03A,14,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl +//#LINENOBETA +97=1,WESTRING_LOADINGSCREEN_ORCX03B,15,UI\Glues\Loading\Backgrounds\Campaigns\BarrensExpansionBackground.mdl + +[PrologueScreens] +NumScreens=1 +00=0,WESTRING_UNKNOWN,0,UI\Glues\Loading\LoadGlue.mdl + +[CampaignScreens] +NumScreens=12 +00=0,WESTRING_CAMPAIGNSCREEN_TUTORIAL,0,UI\Glues\SinglePlayer\TutorialCampaign3D\TutorialCampaign3D.mdl +01=0,WESTRING_CAMPAIGNSCREEN_HUMAN,0,UI\Glues\SinglePlayer\HumanCampaign3D\HumanCampaign3D.mdl +02=0,WESTRING_CAMPAIGNSCREEN_ORC,0,UI\Glues\SinglePlayer\OrcCampaign3D\OrcCampaign3D.mdl +03=0,WESTRING_CAMPAIGNSCREEN_UNDEAD,0,UI\Glues\SinglePlayer\UndeadCampaign3D\UndeadCampaign3D.mdl +04=0,WESTRING_CAMPAIGNSCREEN_NIGHTELF,0,UI\Glues\SinglePlayer\NightElfCampaign3D\NightElfCampaign3D.mdl +05=0,WESTRING_CAMPAIGNSCREEN_MAINMENU,0,UI\Glues\MainMenu\MainMenu3D\MainMenu3D.mdl +06=0,WESTRING_CAMPAIGNSCREEN_BATTLENET,0,UI\Glues\BattleNet\BattlenetLoginGlue\BattlenetLoginGlue.mdl +07=0,WESTRING_CAMPAIGNSCREEN_SCORESCREEN,0,UI\Glues\ScoreScreen\ScoreScreen-Background\ScoreScreen-Background.mdl +//#LINENOBETA +08=1,WESTRING_CAMPAIGNSCREEN_NIGHTELFEXPANSION,0,UI\Glues\SinglePlayer\NightElf_Exp\NightElf_Exp.mdl +//#LINENOBETA +09=1,WESTRING_CAMPAIGNSCREEN_HUMANEXPANSION,0,UI\Glues\SinglePlayer\Alliance_Exp\Alliance_Exp.mdl +//#LINENOBETA +10=1,WESTRING_CAMPAIGNSCREEN_UNDEADEXPANSION,0,UI\Glues\SinglePlayer\Undead3D_Exp\Undead3D_Exp.mdl +//#LINENOBETA +11=1,WESTRING_CAMPAIGNSCREEN_ORCEXPANSION,0,UI\Glues\SinglePlayer\Orc_Exp\Orc_Exp.mdl + +[CampaignScreenTags] +// Optional extra entries for each CampaignScreens entry to reference data from +// the CampaignStrings.txt files +// Value 0: 0 = CampaignStrings.txt, 1 = CampaignStrings_exp.txt +// Value 1: section name within the CampaignStrings profile +00=0,Tutorial +01=0,Human +02=0,Orc +03=0,Undead +04=0,NightElf +08=1,NightElf +09=1,Human + +[CampaignImages] +NumImages=5 +00=WESTRING_CAMPAIGNIMAGE_HUMAN,UI\Widgets\Glues\Minimap-CustomCampaign-Human +01=WESTRING_CAMPAIGNIMAGE_ORC,UI\Widgets\Glues\Minimap-CustomCampaign-Orc +02=WESTRING_CAMPAIGNIMAGE_UNDEAD,UI\Widgets\Glues\Minimap-CustomCampaign-Undead +03=WESTRING_CAMPAIGNIMAGE_NIGHTELF,UI\Widgets\Glues\Minimap-CustomCampaign-NightElf +04=WESTRING_CAMPAIGNIMAGE_ORCCAMPAIGN,UI\Widgets\Glues\Minimap-Campaign-Orc + +[AmbientSounds] +NumSounds=8 +00=0,WESTRING_AMBIENTSOUND_TUTORIAL,TutorialGlueScreenLoop +01=0,WESTRING_AMBIENTSOUND_HUMAN,HumanGlueScreenLoop +02=0,WESTRING_AMBIENTSOUND_ORC,OrcGlueScreenLoop +03=0,WESTRING_AMBIENTSOUND_UNDEAD,UndeadGlueScreenLoop +04=0,WESTRING_AMBIENTSOUND_NIGHTELF,NightElfGlueScreenLoop +05=1,WESTRING_AMBIENTSOUND_NIGHTELFEXP,ExpansionNightElfGlueScreenLoop +06=1,WESTRING_AMBIENTSOUND_HUMANEXP,ExpansionHumanGlueScreenLoop +07=1,WESTRING_AMBIENTSOUND_UNDEADEXP,ExpansionUndeadGlueScreenLoop + +// Field categories for Object Editor +// These are referenced from the various meta data SLKs +[ObjectEditorCategories] +abil=WESTRING_OE_CAT_ABILITIES +art=WESTRING_OE_CAT_ART +combat=WESTRING_OE_CAT_COMBAT +data=WESTRING_OE_CAT_DATA +editor=WESTRING_OE_CAT_EDITOR +move=WESTRING_OE_CAT_MOVEMENT +path=WESTRING_OE_CAT_PATHING +sound=WESTRING_OE_CAT_SOUND +stats=WESTRING_OE_CAT_STATS +tech=WESTRING_OE_CAT_TECHTREE +text=WESTRING_OE_CAT_TEXT + +// Map Sizes - Defines map size categories +// Value 0: Maximum area, in cells +// Value 1: Description text +[MapSizes] +NumSizes=6 +Size00=7500,WESTRING_MAPSIZE_TINY +Size01=13500,WESTRING_MAPSIZE_SMALL +Size02=22000,WESTRING_MAPSIZE_MEDIUM +Size03=32500,WESTRING_MAPSIZE_LARGE +Size04=45000,WESTRING_MAPSIZE_HUGE +Size05=99999,WESTRING_MAPSIZE_EPIC + +[Palette] +ButtonSize_Small=16 +ButtonSize_Medium=24 +ButtonSize_Large=32 + +[CliffBrushes] +0=WESTRING_DECTWO,ReplaceableTextures\WorldEditUI\CliffBrush07 +1=WESTRING_DECONE,ReplaceableTextures\WorldEditUI\CliffBrush06 +2=WESTRING_SAMELEVEL,ReplaceableTextures\WorldEditUI\CliffBrush02 +3=WESTRING_INCONE,ReplaceableTextures\WorldEditUI\CliffBrush03 +4=WESTRING_INCTWO,ReplaceableTextures\WorldEditUI\CliffBrush04 + +[PathingBrushes] +0=WESTRING_PASSABLE,ReplaceableTextures\WorldEditUI\PathingBrush00 +1=WESTRING_IMPASSABLE,ReplaceableTextures\WorldEditUI\PathingBrush01 + +[PathingTypeBrushes] +0=WESTRING_PATHTYPE_GROUND,ReplaceableTextures\WorldEditUI\PathingTypeBrush00 +1=WESTRING_PATHTYPE_AIR,ReplaceableTextures\WorldEditUI\PathingTypeBrush01 +2=WESTRING_PATHTYPE_BUILDINGS,ReplaceableTextures\WorldEditUI\PathingTypeBrush02 + +[RegionBrushes] +0=WESTRING_ADD,ReplaceableTextures\WorldEditUI\LocationBrush00 + +[HeightBrushes] +0=WESTRING_BRUSH_RAISE,ReplaceableTextures\WorldEditUI\HeightBrush00 +1=WESTRING_BRUSH_LOWER,ReplaceableTextures\WorldEditUI\HeightBrush04 +2=WESTRING_BRUSH_PLATEAU,ReplaceableTextures\WorldEditUI\HeightBrush01 +3=WESTRING_BRUSH_NOISE,ReplaceableTextures\WorldEditUI\HeightBrush03 +4=WESTRING_BRUSH_SMOOTH,ReplaceableTextures\WorldEditUI\HeightBrush02 + +[MiscBrushes] +Ramp=WESTRING_BRUSH_RAMP,ReplaceableTextures\WorldEditUI\RampBrush00 +DeepWater=WESTRING_DEEPWATER,ReplaceableTextures\WorldEditUI\CliffBrush00 +ShallowWater=WESTRING_SHALLOWWATER,ReplaceableTextures\WorldEditUI\CliffBrush01 +Blight=WESTRING_BLIGHT,TerrainArt\Blight\Lords_Blight +Nothing=WESTRING_NOTHINGTILE,ReplaceableTextures\WorldEditUI\BoundaryPlace +Unnothing=WESTRING_REMOVENOTHINGTILE,ReplaceableTextures\WorldEditUI\BoundaryRemove + +[BrushShapes] +0=WESTRING_BRUSH_CIRCLE,ReplaceableTextures\WorldEditUI\TextureBrush03 +1=WESTRING_BRUSH_SQUARE,ReplaceableTextures\WorldEditUI\SquareSizeBrush03 + +// Circle +[BrushSizes00] +0=WESTRING_1,ReplaceableTextures\WorldEditUI\TextureBrush00 +1=WESTRING_2,ReplaceableTextures\WorldEditUI\TextureBrush01 +2=WESTRING_3,ReplaceableTextures\WorldEditUI\TextureBrush02 +3=WESTRING_5,ReplaceableTextures\WorldEditUI\TextureBrush04 +4=WESTRING_8,ReplaceableTextures\WorldEditUI\TextureBrush07 + +// Square +[BrushSizes01] +0=WESTRING_1,ReplaceableTextures\WorldEditUI\SquareSizeBrush00 +1=WESTRING_2,ReplaceableTextures\WorldEditUI\SquareSizeBrush01 +2=WESTRING_3,ReplaceableTextures\WorldEditUI\SquareSizeBrush02 +3=WESTRING_5,ReplaceableTextures\WorldEditUI\SquareSizeBrush04 +4=WESTRING_8,ReplaceableTextures\WorldEditUI\SquareSizeBrush07 + +[TerrainCellRarity] +// Rarity table for the 18 possible terrain cells +// +// = +// +// The rarity values are normalized by their sum +// The id numbers correspond to the texture cells as follows: +// +// 0-15: extra variations --> 00 01 02 03 +// 04 05 06 07 +// 08 09 10 11 +// 12 13 14 15 +// 16: original lower right +// 17: original upper left + +// Common +16=85 +17=85 + +00=85 +04=85 +08=85 +12=85 + +// Uncommon +01=10 +05=10 +09=10 +13=10 + +02=4 +06=4 +10=4 +14=4 + +// Rare +03=1 +07=1 +11=1 +15=1 + +[DNCSpeeds] +// Defines speeds for Day/Night cycle modification +min=0.5 +max=8.0 + +[MinimapGeneration] +MedianRadius=2 +BlurRadius=.5 +NoisePercent=10 + +[WorldEditMisc] +CampAcquireRadius=200 +DropTableIndicatorBaseSize=96.0 +DropTableIndicatorScale=0.25 +DropTableIndicatorHeight=10 +MouseWheelZoomFactor=1.10 +DefaultMapSize=64,64 +MinimumMapSize=32 +MaximumMapSize=256 +DefaultDoodadCategory=D +DefaultTileset=L +ClickHelperScale=0.4 + +// Help documentation +HelpFile_V0=support\Layout\Index2.html +HelpFile_V0_Mac=ReadMe/Layout/Index2.html +HelpFile_V1=support\Layout\(PC)WEHIndex.html +HelpFile_V1_Mac=ReadMe/Layout/(Mac)WEHIndex.html +HelpFile_CampaignEditor=support\Layout\(PC)WEHIndex.html +HelpFile_CampaignEditor_Mac=ReadMe/Layout/(Mac)WEHIndex.html + +BlizzardLink=http://www.blizzard.com/ + +// Terrain height smoothing brush weights +// New terrain height will be computed as: +// +// w1 * oldZ + w2 * avgZ +// +// where: oldZ = the original vertex height +// avgZ = the average vertex height of all neighboring vertices +// w1, w2 are the weights given below for the normal and reverse (shift) +// versions of the smoothing brush + +SmoothBrushWeightsNormal=0.80,0.20 +SmoothBrushWeightsReverse=1.00,0.05 + +// Ally priority distances +// Represent the factor of the smallest distance +// +// ex: A setting of 0.25 means that all locations within a distance +// of 125% of the smallest distance from the location in question will be used + +AllyPriorityDist_High=0.25 +AllyPriorityDist_Low=0.50 + +StartLocPathingTexture=PathTextures\16x16Simple.blp +RandomBuildingPathingTexture=PathTextures\12x12Simple.blp + +RandomUnitCollisionRadius=32 +RandomUnitScale=2.5 +RandomBuildingScale=5.0 +RandomItemScale=1.5 + +RandomUnitMarkerScale=1.0 +RandomBuildingMarkerScale=2.0 +RandomItemMarkerScale=1.0 + +DefaultTestAIMap="Maps\(2)PlunderIsle.w3m" + +[WorldEditColors] +// Map size dialog +MapSizeDlg_NewTerrain=255,0,192,0 +MapSizeDlg_BorderOverlay=128,255,255,255 +MapSizeDlg_CameraBounds=255,0,0,255 + +CampVertexColor=255,16,16,255 +DropTableIndicatorColor=255,255,255,255 +StartLocGhostColor=64,255,255,255 +SelectedButtonOverlay=96,0,255,0 +ClickHelperColor=96,255,255,255 + +[WorldEditArt] +// Models +StartLocation=Objects\StartLocation\StartLocation.mdl +InvalidObject=Objects\InvalidObject\InvalidObject.mdl +InvalidModel=Objects\Invalidmodel\Invalidmodel.mdl +CameraModel=Objects\CameraHelper\CameraHelper.mdl +DropTableIndicator=Objects\StartLocation\StartLocation.mdl +RandomUnitModel=Objects\RandomObject\RandomObject.mdl +ClickHelper=Objects\InvalidObject\InvalidObject.mdl + +// Various palette icons +StartLocationIcon=ReplaceableTextures\WorldEditUI\StartingLocation.blp +InvalidIcon=ReplaceableTextures\WorldEditUI\DoodadPlaceholder.blp +RandomUnitIcon=ReplaceableTextures\WorldEditUI\Editor-Random-Unit.blp +RandomBuildingIcon=ReplaceableTextures\WorldEditUI\Editor-Random-Building.blp +RandomItemIcon=ReplaceableTextures\WorldEditUI\Editor-Random-Item.blp +TexSpaceOne=ReplaceableTextures\WorldEditUI\TextureSpaceOne +TexSpaceTwo=ReplaceableTextures\WorldEditUI\TextureSpaceTwo + +// Brush Tree icons +BTIcon_Category=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +BTIcon_CategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// DP = Doodad Palette buttons +DP_RandomRotation=ReplaceableTextures\WorldEditUI\RandomRotation +DP_RandomScaleSym=ReplaceableTextures\WorldEditUI\RandomScale-Symmetric +DP_RandomScaleZ=ReplaceableTextures\WorldEditUI\RandomScale-AsymmetricZ +DP_RandomScaleXY=ReplaceableTextures\WorldEditUI\RandomScale-AsymmetricXY + +// Minimap icons +MinimapIconGold=UI\MiniMap\MinimapIcon\MinimapIconGold.blp +MinimapIconNeutralBuilding=UI\MiniMap\MinimapIcon\MinimapIconNeutralBuilding.blp +MinimapIconStartLoc=UI\MiniMap\MinimapIcon\MinimapIconStartLoc.blp +MinimapIconCreepCampSmall=UI\Minimap\MinimapIconCreepLoc.blp +MinimapIconCreepCampLarge=UI\Minimap\MinimapIconCreepLoc2.blp + +// Multiple selection icons +UnitMultipleIcon=ReplaceableTextures\WorldEditUI\Editor-MultipleUnits.blp +DoodadMultipleIcon=ReplaceableTextures\WorldEditUI\Editor-MultipleDoodads.blp +RegionIcon=ReplaceableTextures\WorldEditUI\LocationBrush00 + +// Script editor icons +SEIcon_TriggerCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +SEIcon_TriggerCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp +SEIcon_Trigger=ReplaceableTextures\WorldEditUI\Editor-Trigger.blp +SEIcon_TriggerPartial=ReplaceableTextures\WorldEditUI\Editor-TriggerPartial.blp +SEIcon_TriggerDisabled=ReplaceableTextures\WorldEditUI\Editor-TriggerDisabled.blp +SEIcon_TriggerUnused=ReplaceableTextures\WorldEditUI\Editor-TriggerUnused.blp +SEIcon_TriggerUnusedPartial=ReplaceableTextures\WorldEditUI\Editor-TriggerPartialUnused.blp +SEIcon_TriggerUnusedDisabled=ReplaceableTextures\WorldEditUI\Editor-TriggerUnusedDisabled.blp +SEIcon_TriggerComment=ReplaceableTextures\WorldEditUI\Editor-Toolbar-TriggerComment +SEIcon_Function=ReplaceableTextures\WorldEditUI\Editor-TriggerFunction.blp +SEIcon_FunctionDisabled=ReplaceableTextures\WorldEditUI\Editor-TriggerFunctionDisabled.blp +SEIcon_Event=ReplaceableTextures\WorldEditUI\Editor-TriggerEvent.blp +SEIcon_Condition=ReplaceableTextures\WorldEditUI\Editor-TriggerCondition.blp +SEIcon_Action=ReplaceableTextures\WorldEditUI\Editor-TriggerAction.blp + +// Unit editor icons +UEIcon_UnitCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +UEIcon_UnitCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Item editor icons +IEIcon_ItemCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +IEIcon_ItemCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Destructible editor icons +BEIcon_DestructableCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +BEIcon_DestructableCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Doodad editor icons +DEIcon_DoodadCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +DEIcon_DoodadCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Ability editor icons +AEIcon_AbilityCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +AEIcon_AbilityCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Upgrade editor icons +GEIcon_UpgradeCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +GEIcon_UpgradeCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp + +// Sound Editor icons +SnEIcon_SoundCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +SnEIcon_SoundCategoryOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open.blp +SnEIcon_SoundFile=ReplaceableTextures\WorldEditUI\SoundEditor-UseSound +SnEIcon_MusicFile=ReplaceableTextures\WorldEditUI\SoundEditor-UseMusic + +// Campaign Editor icons +CEIcon_Campaign=ReplaceableTextures\WorldEditUI\Editor-Campaign +CEIcon_Map=ReplaceableTextures\WorldEditUI\CampaignEditor-Map +CEIcon_MapEx=ReplaceableTextures\WorldEditUI\CampaignEditor-ExpMap + +// Object Manager icons +OMIcon_Folder=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup +OMIcon_FolderOpen=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup-Open +OMIcon_Doodad=ReplaceableTextures\WorldEditUI\Actions-Destructibles +OMIcon_Region=ReplaceableTextures\WorldEditUI\Actions-Region +OMIcon_Camera=ReplaceableTextures\WorldEditUI\Actions-Camera +OMIcon_Sound=ReplaceableTextures\WorldEditUI\SoundEditor-UseSound +OMIcon_Music=ReplaceableTextures\WorldEditUI\SoundEditor-UseMusic +OMIcon_Variable=ReplaceableTextures\WorldEditUI\Actions-SetVariables + +// Miscellaneous icons +Icon_Force=ReplaceableTextures\WorldEditUI\Editor-Force.blp +Icon_ItemSet=ReplaceableTextures\WorldEditUI\Editor-ItemSet.blp +Icon_ItemTable=ReplaceableTextures\WorldEditUI\Editor-ItemSet.blp +Icon_AllyPri_High=ReplaceableTextures\WorldEditUI\Editor-Ally-HighPriority.blp +Icon_AllyPri_Low=ReplaceableTextures\WorldEditUI\Editor-Ally-LowPriority.blp +Icon_AllyPri_None=ReplaceableTextures\WorldEditUI\Editor-Ally-NoPriority.blp +GemAct=ReplaceableTextures\WorldEditUI\EditorGemAct.blp +GemDeact=ReplaceableTextures\WorldEditUI\EditorGemDeact.blp + +// Region textures +Region_Center=ReplaceableTextures\WorldEditUI\Regions\RegionCenter.blp +Region_HorSide=ReplaceableTextures\WorldEditUI\Regions\RegionTop.blp +Region_VerSide=ReplaceableTextures\WorldEditUI\Regions\RegionSide.blp +Region_Corner=ReplaceableTextures\WorldEditUI\Regions\RegionCorner.blp +Region_HorSide_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionTopSelected.blp +Region_VerSide_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionSideSelected.blp +Region_Corner_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionCornerSelected.blp +Region_Corner_Resize=ReplaceableTextures\WorldEditUI\Regions\RegionCornerSelectedScale.blp +Region_TwoSide=ReplaceableTextures\WorldEditUI\Regions\RegionTwoSide.blp +Region_TwoSide_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionTwoSideSelected.blp +Region_TwoCorner=ReplaceableTextures\WorldEditUI\Regions\RegionTwoCornerSide.blp +Region_TwoCorner_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionTwoCornerSelected.blp +Region_FourCorner=ReplaceableTextures\WorldEditUI\Regions\RegionFourCorner.blp +Region_FourCorner_Sel=ReplaceableTextures\WorldEditUI\Regions\RegionFourCornerSelected.blp + +// Toolbar Icons +ToolBarIcon_New=ReplaceableTextures\WorldEditUI\Editor-Toolbar-NewMap.blp +ToolBarIcon_Open=ReplaceableTextures\WorldEditUI\Editor-Toolbar-OpenMap.blp +ToolBarIcon_Save=ReplaceableTextures\WorldEditUI\Editor-Toolbar-SaveMap.blp +ToolBarIcon_Cut=ReplaceableTextures\WorldEditUI\Editor-Toolbar-Cut.blp +ToolBarIcon_Copy=ReplaceableTextures\WorldEditUI\Editor-Toolbar-Copy.blp +ToolBarIcon_Paste=ReplaceableTextures\WorldEditUI\Editor-Toolbar-Paste.blp +ToolBarIcon_Undo=ReplaceableTextures\WorldEditUI\Editor-Toolbar-Undo.blp +ToolBarIcon_Redo=ReplaceableTextures\WorldEditUI\Editor-Toolbar-Redo.blp +ToolBarIcon_Select=ReplaceableTextures\WorldEditUI\ToolBar07 +ToolBarIcon_Module_Terrain=ReplaceableTextures\WorldEditUI\Editor-Terrain.blp +ToolBarIcon_Module_Script=ReplaceableTextures\WorldEditUI\Editor-Script.blp +ToolBarIcon_Module_Sound=ReplaceableTextures\WorldEditUI\Editor-Toolbar-SoundEditor.blp +ToolBarIcon_Module_ObjectEditor=ReplaceableTextures\WorldEditUI\Editor-Unit.blp +ToolBarIcon_Module_Campaign=ReplaceableTextures\WorldEditUI\Editor-Campaign.blp +ToolBarIcon_Module_AIEditor=ReplaceableTextures\WorldEditUI\Editor-Toolbar-AIEditor +ToolBarIcon_Module_ObjectManager=ReplaceableTextures\WorldEditUI\Editor-Toolbar-ObjectManager.blp +ToolBarIcon_Module_ImportManager=ReplaceableTextures\WorldEditUI\Editor-Toolbar-ImportManager +ToolBarIcon_TestMap=ReplaceableTextures\WorldEditUI\Editor-TestMap.blp +ToolBarIcon_SE_Variables=ReplaceableTextures\WorldEditUI\Editor-ScriptVariable.blp +ToolBarIcon_SE_NewCategory=ReplaceableTextures\WorldEditUI\Editor-TriggerGroup.blp +ToolBarIcon_SE_NewTrigger=ReplaceableTextures\WorldEditUI\Editor-Trigger.blp +ToolBarIcon_SE_NewTriggerComment=ReplaceableTextures\WorldEditUI\Editor-Toolbar-TriggerComment +ToolBarIcon_SE_NewEvent=ReplaceableTextures\WorldEditUI\Editor-TriggerEvent.blp +ToolBarIcon_SE_NewCondition=ReplaceableTextures\WorldEditUI\Editor-TriggerCondition.blp +ToolBarIcon_SE_NewAction=ReplaceableTextures\WorldEditUI\Editor-TriggerAction.blp +ToolBarIcon_SE_AddVariable=ReplaceableTextures\WorldEditUI\Editor-Toolbar-TriggerAddVariable +ToolBarIcon_SE_EditVariable=ReplaceableTextures\WorldEditUI\Editor-Toolbar-TriggerEditVariable +ToolBarIcon_SE_DeleteVariable=ReplaceableTextures\WorldEditUI\Editor-Toolbar-TriggerDeleteVariable +ToolBarIcon_OE_NewObject=ReplaceableTextures\WorldEditUI\UnitEditor-CustomUnit +ToolBarIcon_OE_NewUnit=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomUnit +ToolBarIcon_OE_NewItem=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomItem +ToolBarIcon_OE_NewDood=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomDoodad +ToolBarIcon_OE_NewDest=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomDestructible +ToolBarIcon_OE_NewAbil=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomAbility +ToolBarIcon_OE_NewBuff=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomAbility +ToolBarIcon_OE_NewUpgr=ReplaceableTextures\WorldEditUI\ObjectEditor-CustomUpgrade +ToolBarIcon_UseSound=ReplaceableTextures\WorldEditUI\SoundEditor-UseSound +ToolBarIcon_ImportSound=ReplaceableTextures\WorldEditUI\SoundEditor-ImportSound +ToolBarIcon_ExportSound=ReplaceableTextures\WorldEditUI\SoundEditor-ExportSound +ToolBarIcon_UseMusic=ReplaceableTextures\WorldEditUI\SoundEditor-UseMusic +ToolBarIcon_ImportMusic=ReplaceableTextures\WorldEditUI\SoundEditor-ImportMusic +ToolBarIcon_ExportMusic=ReplaceableTextures\WorldEditUI\SoundEditor-ExportMusic +ToolBarIcon_PlaySound=ReplaceableTextures\WorldEditUI\SoundEditor-Play +ToolBarIcon_StopPlayback=ReplaceableTextures\WorldEditUI\SoundEditor-Stop +ToolBarIcon_IM_Import=ReplaceableTextures\WorldEditUI\ImportManager-ImportFile +ToolBarIcon_IM_Export=ReplaceableTextures\WorldEditUI\ImportManager-ExportFile +ToolBarIcon_CE_AddMap=ReplaceableTextures\WorldEditUI\CampaignEditor-AddMap +ToolBarIcon_CE_RemoveMap=ReplaceableTextures\WorldEditUI\CampaignEditor-RemoveMap +ToolBarIcon_CE_EditMap=ReplaceableTextures\WorldEditUI\Editor-Toolbar-EditMap +ToolBarIcon_CE_ExportMap=ReplaceableTextures\WorldEditUI\Editor-Toolbar-ExportMap + +// Misc art +War3Logo=UI\WarcraftIIIFTLogo.blp +War3XLogo=UI\WarcraftIIIFTLogo.blp +BlizzardLogo=ReplaceableTextures\WorldEditUI\BlizzardLogo + +[WorldEditSounds] +PlaceObject=Sound\Interface\RallyPointPlace1.wav +DeleteObject=Sound\Destructibles\CrateDeath1.wav +Undo=Abilities\Weapons\DryadMissile\DryadMissile1.wav +Redo=Abilities\Weapons\DryadMissile\DryadMissile2.wav +AboutDialog=Abilities\Spells\NightElf\Tranquility\Tranquility.wav +MeSoHungy=Units\Creeps\Ogre\OgrePissed1.wav +CakeEaten=Units\Orc\HeadHunter\HeadHunterYes4.wav +WelcomeFirstRun=Sound\Interface\GameFound.wav +WelcomeFirstRunDone=Units\Orc\Peon\PeonReady1.wav +Welcome=Sound\Ambient\DoodadEffects\UtherReturns.wav + +// Extra files for use by custom data +// Value 0: Game version in which this data was introduced +// Value 1: File path +// Value 2: Display text + +[ExtraIcons] +00=1,ReplaceableTextures\CommandButtons\BTNResStone.blp,WESTRING_DEST_RES_STONE +01=1,ReplaceableTextures\CommandButtons\BTNBarrel.blp,WESTRING_DEST_BARREL +02=1,ReplaceableTextures\CommandButtons\BTNOtherBarrel.blp,WESTRING_DEST_BARREL +03=1,ReplaceableTextures\CommandButtons\BTNBox.blp,WESTRING_DEST_BOX +04=1,ReplaceableTextures\CommandButtons\BTNCrate.blp,WESTRING_DOOD_LOCS +05=0,ReplaceableTextures\WorldEditUI\StartingLocation.blp,WESTRING_STARTLOCATION +06=0,ReplaceableTextures\WorldEditUI\DoodadPlaceholder.blp,WESTRING_ICON_INVALID +07=0,ReplaceableTextures\WorldEditUI\Editor-Random-Unit.blp,WESTRING_RANDOM_UNIT +08=0,ReplaceableTextures\WorldEditUI\Editor-Random-Building.blp,WESTRING_RANDOM_BUILDING +09=0,ReplaceableTextures\WorldEditUI\Editor-Random-Item.blp,WESTRING_RANDOM_ITEM +10=0,UI\MiniMap\MinimapIcon\MinimapIconGold.blp,WESTRING_ICON_MINIMAP_GOLD +11=0,UI\MiniMap\MinimapIcon\MinimapIconNeutralBuilding.blp,WESTRING_ICON_MINIMAP_BUILDING +12=0,UI\MiniMap\MinimapIcon\MinimapIconStartLoc.blp,WESTRING_ICON_MINIMAP_STARTLOC +13=1,UI\Minimap\MinimapIconCreepLoc.blp,WESTRING_ICON_MINIMAP_CREEPS1 +14=1,UI\Minimap\MinimapIconCreepLoc2.blp,WESTRING_ICON_MINIMAP_CREEPS2 +15=0,ReplaceableTextures\WorldEditUI\Editor-MultipleUnits.blp,WESTRING_ICON_MULTIPLE_UNITS +16=0,ReplaceableTextures\WorldEditUI\Editor-MultipleDoodads.blp,WESTRING_ICON_MULTIPLE_DOODADS +17=0,ReplaceableTextures\WorldEditUI\Editor-Force.blp,WESTRING_ICON_FORCE +18=0,ReplaceableTextures\WorldEditUI\Editor-ItemSet.blp,WESTRING_ICON_ITEMSET +19=0,ReplaceableTextures\WorldEditUI\Editor-Ally-HighPriority.blp,WESTRING_ICON_ALLY_HIGH +20=0,ReplaceableTextures\WorldEditUI\Editor-Ally-LowPriority.blp,WESTRING_ICON_ALLY_LOW +21=0,ReplaceableTextures\WorldEditUI\Editor-Ally-NoPriority.blp,WESTRING_ICON_ALLY_NONE +22=1,ReplaceableTextures\WorldEditUI\Doodad-Prop.blp,WESTRING_ICON_DOODCAT_PROPS +23=1,ReplaceableTextures\WorldEditUI\Doodad-Structures.blp,WESTRING_ICON_DOODCAT_STRUCT +24=1,ReplaceableTextures\WorldEditUI\Doodad-Water.blp,WESTRING_ICON_DOODCAT_WATER +25=1,ReplaceableTextures\WorldEditUI\Doodad-Cliff.blp,WESTRING_ICON_DOODCAT_CLIFF +26=1,ReplaceableTextures\WorldEditUI\Doodad-Environment.blp,WESTRING_ICON_DOODCAT_ENV +27=1,ReplaceableTextures\WorldEditUI\Doodad-Cinematic.blp,WESTRING_ICON_DOODCAT_CINEMA +28=1,ReplaceableTextures\WorldEditUI\Doodad-Destructible.blp,WESTRING_ICON_DOODCAT_DEST +29=1,ReplaceableTextures\WorldEditUI\Doodad-Bridge.blp,WESTRING_ICON_DOODCAT_BRIDGE +30=0,ReplaceableTextures\CommandButtons\BTNLoadDwarf.blp,WESTRING_ICON_DWARFIN +31=0,ReplaceableTextures\CommandButtons\BTNUnloadDwarf.blp,WESTRING_ICON_DWARFOUT +32=1,ReplaceableTextures\CommandButtons\BTNAcorn.blp,WESTRING_ICON_ACORN +33=1,UI\Minimap\MiniMap-Entrance.blp,WESTRING_ICON_MINIMAPENTRANCE +34=1,UI\Minimap\MiniMapIconEntrance.blp,WESTRING_ICON_MINIMAPENTRANCESMALL +35=1,UI\Glues\ScoreScreen\scorescreen-player-naga.blp,WESTRING_ICON_SCORESCREEN_NAGA +36=1,UI\Glues\ScoreScreen\scorescreen-player-bloodelf.blp,WESTRING_ICON_SCORESCREEN_BLOODELF + +//Added ExtraIcons +101=0,ReplaceableTextures\CommandButtons\BTNAdvStruct.blp,高级建造 +102=1,ReplaceableTextures\CommandButtons\BTNAkama.blp,阿卡玛 +103=1,ReplaceableTextures\CommandButtons\BTNArcaneTower.blp,精灵防御塔 +104=0,ReplaceableTextures\CommandButtons\BTNAttack.blp,命令图标 - 攻击 +105=0,ReplaceableTextures\CommandButtons\BTNAttackGround.blp,命令图标 - 攻击地面 +106=0,ReplaceableTextures\CommandButtons\BTNAuraOfDarkness.blp,黑暗之夜 +107=1,ReplaceableTextures\CommandButtons\BTNAvengingAssassin.blp,暗杀者 +108=0,ReplaceableTextures\CommandButtons\BTNBallista.blp,投刃车(原版) +109=0,ReplaceableTextures\CommandButtons\BTNBarkSkin.blp,装甲皮肤 +110=0,ReplaceableTextures\CommandButtons\BTNBarkSkinOn.blp,装甲皮肤 <激活> +111=1,ReplaceableTextures\CommandButtons\BTNBattleShip.blp,战舰 +112=0,ReplaceableTextures\CommandButtons\BTNBronzeBowl.blp,空碗 +113=0,ReplaceableTextures\CommandButtons\BTNBronzeBowlFull.blp,装满液体的碗 +114=0,ReplaceableTextures\CommandButtons\BTNCancel.blp,命令图标 - 取消 +115=0,ReplaceableTextures\CommandButtons\BTNChime.blp,敲钟 +116=1,ReplaceableTextures\CommandButtons\BTNDemolish.blp,粉碎 <研究> +117=1,ReplaceableTextures\CommandButtons\BTNDenOfWonders.blp,奇迹洞穴 +118=1,ReplaceableTextures\CommandButtons\BTNDrain.blp,生命与魔法汲取 +119=0,ReplaceableTextures\CommandButtons\BTNElunesBlessing.blp,月神的祝福 <研究> +120=0,ReplaceableTextures\CommandButtons\BTNEntangleMine.blp,缠绕金矿 +121=1,ReplaceableTextures\CommandButtons\BTNeredarRed.blp,埃瑞达法师(红) +122=0,ReplaceableTextures\CommandButtons\BTNExpandedView.blp,潜望镜 +123=1,ReplaceableTextures\CommandButtons\BTNFeedBack.blp,魔法反馈 <研究> +124=0,ReplaceableTextures\CommandButtons\BTNFlamingArrows.blp,燃烧之箭 +125=0,ReplaceableTextures\CommandButtons\BTNFlute.blp,长笛 +126=0,ReplaceableTextures\CommandButtons\BTNForceOfNature.blp,自然之力(未采用版) +127=1,ReplaceableTextures\CommandButtons\BTNGenericSpellImmunity.blp,魔法免疫 <研究> +128=0,ReplaceableTextures\CommandButtons\BTNGLExchange.blp,黄金换木材 +129=0,ReplaceableTextures\CommandButtons\BTNGMExchange.blp,医疗石 +130=0,ReplaceableTextures\CommandButtons\BTNHauntedMine.blp,不死族金矿 +131=0,ReplaceableTextures\CommandButtons\BTNHeroLich.blp,巫妖(原版) +132=0,ReplaceableTextures\CommandButtons\BTNHeroMoonPriestess.blp,月之女祭司(未采用版) +133=0,ReplaceableTextures\CommandButtons\BTNHoldPosition.blp,命令图标 - 站立地面 +134=0,ReplaceableTextures\CommandButtons\BTNHolyWater.blp,神圣药水 +135=1,ReplaceableTextures\CommandButtons\BTNHydra.blp,九头怪蛇 +136=1,ReplaceableTextures\CommandButtons\BTNIllidanPrisonWagon.blp,尤迪安的囚车 +137=0,ReplaceableTextures\CommandButtons\BTNImpalingBolt.blp,穿刺飞矛 +138=0,ReplaceableTextures\CommandButtons\BTNImprovedMining.blp,矿铲 +139=0,ReplaceableTextures\CommandButtons\BTNInn.blp,旅馆 +140=0,ReplaceableTextures\CommandButtons\BTNLament.blp,悲痛 +141=0,ReplaceableTextures\CommandButtons\BTNLamp.blp,灯笼 +142=0,ReplaceableTextures\CommandButtons\BTNLGExchange.blp,木材换黄金 +143=0,ReplaceableTextures\CommandButtons\BTNLoadPeon.blp,装载苦工 +144=0,ReplaceableTextures\CommandButtons\BTNMagicImmunity.blp,魔法免疫 <研究> +145=0,ReplaceableTextures\CommandButtons\BTNManaRecharge.blp,补充生命魔法 <普通> +146=1,ReplaceableTextures\CommandButtons\BTNManaShield.blp,血魔法师(虚无) +147=0,ReplaceableTextures\CommandButtons\BTNMantle.blp,魔法斗篷 +148=0,ReplaceableTextures\CommandButtons\BTNManual2.blp,书本 +149=0,ReplaceableTextures\CommandButtons\BTNMarine.blp,机枪兵 +150=0,ReplaceableTextures\CommandButtons\BTNMeatapult.blp,尖刺刑具 +151=0,ReplaceableTextures\CommandButtons\BTNMGExchange.blp,金币 +152=0,ReplaceableTextures\CommandButtons\BTNMove.blp,命令图标 - 移动 +153=1,ReplaceableTextures\CommandButtons\BTNNightElfFishingBoat.blp,暗夜精灵渔船 +154=0,ReplaceableTextures\CommandButtons\BTNOrb.blp,魔法球 +155=1,ReplaceableTextures\CommandButtons\BTNOrbOfDeath.blp,毁灭之球 <普通> +156=0,ReplaceableTextures\CommandButtons\BTNOrcLumberUpgradeTwo.blp,木材堆 +157=0,ReplaceableTextures\CommandButtons\BTNOrcRallyPoint.blp,设置集结点(兽族) +158=0,ReplaceableTextures\CommandButtons\BTNPatrol.blp,命令图标 - 巡逻 +159=0,ReplaceableTextures\CommandButtons\BTNPebble.blp,符石 +160=0,ReplaceableTextures\CommandButtons\BTNPickUpItem.blp,捡取物品 +161=0,ReplaceableTextures\CommandButtons\BTNPoisonArrow.blp,浸毒箭矢 +162=0,ReplaceableTextures\CommandButtons\BTNPoisonSting.blp,毒刺 <研究> +163=0,ReplaceableTextures\CommandButtons\BTNPotionBlue.blp,大瓶蓝药水 +164=0,ReplaceableTextures\CommandButtons\BTNPotionPurple.blp,大瓶紫药水 +165=1,ReplaceableTextures\CommandButtons\BTNProudMoore.blp,摩尔 +166=1,ReplaceableTextures\CommandButtons\BTNQuillBeastGod.blp,豪猪 +167=0,ReplaceableTextures\CommandButtons\BTNRallyPointNightElf.blp,设置集结点(精灵族) +168=0,ReplaceableTextures\CommandButtons\BTNRallyPointUndead.blp,设置集结点(不死族) +169=0,ReplaceableTextures\CommandButtons\BTNRegeneration.blp,生命恢复 +170=1,ReplaceableTextures\CommandButtons\BTNRejuvenationPotion.blp,恢复药水 +171=0,ReplaceableTextures\CommandButtons\BTNRepair.blp,命令图标 - 修理 +172=0,ReplaceableTextures\CommandButtons\BTNReplay-Loop.blp,录像 - 循环播放 +173=0,ReplaceableTextures\CommandButtons\BTNReplay-Pause.blp,录像 - 暂停 +174=0,ReplaceableTextures\CommandButtons\BTNReplay-Play.blp,录像 - 播放 +175=0,ReplaceableTextures\CommandButtons\BTNReplay-SpeedDown.blp,录像 - 降速播放 +176=0,ReplaceableTextures\CommandButtons\BTNReplay-SpeedUp.blp,录像 - 加速播放 +177=0,ReplaceableTextures\CommandButtons\BTNROBOGOBLINOn.blp,地精机器人 <激活> +178=1,ReplaceableTextures\CommandButtons\BTNScrollOfRegeneration.blp,魔法恢复卷轴 +179=1,ReplaceableTextures\CommandButtons\BTNSeaGiantPulverize.blp,粉碎 <研究> +180=1,ReplaceableTextures\CommandButtons\BTNSelectUnit.blp,选择单位 +181=0,ReplaceableTextures\CommandButtons\BTNSelfDestruct.blp,自爆 <普通> +182=0,ReplaceableTextures\CommandButtons\BTNShadowMeld.blp,暗夜精灵 +183=0,ReplaceableTextures\CommandButtons\BTNShoveler.blp,美国大兵 +184=0,ReplaceableTextures\CommandButtons\BTNSkillz.blp,学习技能 +185=0,ReplaceableTextures\CommandButtons\BTNSpiderling.blp,蜘蛛 +186=1,ReplaceableTextures\CommandButtons\BTNStaffOfPurification.blp,净化之杖 +187=0,ReplaceableTextures\CommandButtons\BTNSteamTank.blp,蒸汽坦克 +188=0,ReplaceableTextures\CommandButtons\BTNStop.blp,命令图标 - 停止 +189=1,ReplaceableTextures\CommandButtons\BTNThickFur.blp,抗性皮肤 <研究> +190=0,ReplaceableTextures\CommandButtons\BTNThievesGuild.blp,盗贼工会 +191=1,ReplaceableTextures\CommandButtons\BTNThornyShieldOff.blp,尖刺外壳 <关闭> +192=1,ReplaceableTextures\CommandButtons\BTNTuskaarNomad.blp,图斯卡尔游牧民族 +193=0,ReplaceableTextures\CommandButtons\BTNUndeadLoad.blp,绞肉车装载 <普通> +194=0,ReplaceableTextures\CommandButtons\BTNUnloadPeon.blp,兽族苦工卸载 <普通> +195=1,ReplaceableTextures\CommandButtons\BTNUpgradeRegenerationAura.blp,升级恢复光环 +196=1,ReplaceableTextures\CommandButtons\BTNVengeanceIncarnate.blp,复仇之魂 +197=0,ReplaceableTextures\CommandButtons\BTNWindWalkOff.blp,疾风步 <关闭> +198=0,ReplaceableTextures\PassiveButtons\PASBTNBattleRoar.blp,咆哮 <被动> +199=0,ReplaceableTextures\PassiveButtons\PASBTNImpalingBolt.blp,穿刺飞矛 <被动> +200=0,ReplaceableTextures\PassiveButtons\PASBTNRegenerate.blp,巨魔再生 <被动> +201=1,ReplaceableTextures\PassiveButtons\PASBTNSpiritOfVengeance.blp,复仇天神 <被动> +202=0,ReplaceableTextures\PassiveButtons\PASBTNWarStomp.blp,战争践踏 <被动> +203=1,ReplaceableTextures\CommandButtons\BTNUndeadCar.blp,官方赛车(巫妖) +204=1,ReplaceableTextures\CommandButtons\BTNOrcCar.blp,官方赛车(兽人) +205=1,ReplaceableTextures\CommandButtons\BTNDiabloCar.blp,官方赛车(怪兽) +206=1,ReplaceableTextures\CommandButtons\BTNDwarfCar.blp,官方赛车(矮人) +207=0,ReplaceableTextures\CommandButtons\BTNUnLoad.blp,卸载 +208=0,UI\Widgets\ToolTips\Human\ToolTipStonesIcon.blp,水晶(32x32) +209=0,Buildings\Other\TempArtB\BTNTempB.blp,人类头像(蓝色) +210=1,ReplaceableTextures\CommandButtonsDisabled\DISBTNManaShield.blp,血魔法师(虚无 暗图标)(YDWE) +211=1,ReplaceableTextures\WorldEditUI\WarcraftIIILogo.blp,魔兽3logo(YDWE) +212=1,ReplaceableTextures\WorldEditUI\BlizzardLogo.blp,暴雪logo(YDWE) + +[ExtraModels] +00=0,Objects\StartLocation\StartLocation,WESTRING_STARTLOCATION +01=0,Objects\InvalidObject\InvalidObject,WESTRING_MODEL_CHECKCUBE_1 +02=0,Objects\Invalidmodel\Invalidmodel,WESTRING_MODEL_CHECKCUBE_2 +03=0,Objects\CameraHelper\CameraHelper,WESTRING_MODEL_CAMERA +04=0,Objects\RandomObject\RandomObject,WESTRING_MODEL_QUESTION +05=0,Abilities\Spells\Other\TalkToMe\TalkToMe,WESTRING_MODEL_EXCLAMATION +//#LINENOBETA +06=1,Units\NightElf\MalFurion\MalFurionNoStag,WESTRING_MODEL_MALFURIONNOSTAG +//#LINENOBETA +07=1,Doodads\Cinematic\ArthasIllidanFight\ArthasIllidanFight,WESTRING_MODEL_VICTORYCINEMATICARTHAS +//#LINENOBETA +08=1,Doodads\Cinematic\IllidanVictoryCinematic\IllidanVictoryCinematic,WESTRING_MODEL_VICTORYCINEMATICILLIDAN +09=1,Objects\InventoryItems\Rune\Rune,WESTRING_MODEL_RUNE + +//Added ExtraIcons +101=0,Doodads\Northrend\Structures\AncientZiggurat\AncientZiggurat,遗迹之塔 <基础> +102=0,Doodads\Northrend\Structures\AncientZiggurat\AncientZiggurat0.mdl,遗迹之塔 <样式1> +103=0,Doodads\Northrend\Structures\AncientZiggurat\AncientZiggurat1.mdl,遗迹之塔 <样式2> +104=0,units\nightelf\Ballista\Ballista.mdl,投刃车(原版) +105=1,Abilities\Weapons\BallsOfFireMissile\BallsOfFireMissile.mdl,火球 <投射物> +106=0,Abilities\Spells\Orc\Berserker\Berserkertarget.mdl,毒雾 +107=0,Doodads\LordaeronSummer\Structures\BridgeLog\BridgeLog.mdl,木板桥 +108=0,Objects\InventoryItems\BundleofGifts\BundleofGifts.mdl,礼物 +109=0,Units\Creeps\BurningArcher\BurningArcher.mdl,火焰骷髅弓箭手 +110=0,units\orc\catapult\catapult.mdl,兽族投石车(原版) +111=0,Units\Demon\ChaosOrcRange\ChaosOrcRange.mdl,混乱兽人战士 +112=0,Doodads\LordaeronSummer\Structures\CityBridgeSmall\CityBridgeSmall.mdl,城市桥梁 +113=0,Units\Other\DiabloCar\DiabloCar.mdl,官方赛车(怪兽) +114=0,Units\Other\DwarfCar\DwarfCar.mdl,官方赛车(矮人) +115=0,Environment\NightElfBuildingFire\ElfLargeBuildingFire0.mdl,暗夜精灵大建筑火焰 +116=0,Environment\NightElfBuildingFire\ElfSmallBuildingFire0.mdl,暗夜精灵小建筑火焰 +117=0,Environment\NightElfBuildingFire\ElfSmallBuildingFire1.mdl,暗夜精灵小建筑火焰2 +118=0,Abilities\Weapons\flamingArrow\flamingArrowMissile.mdl,燃烧之箭 <投射物> +119=0,Doodads\Terrain\G_RockChunks\G_RockChunks,岩石堆 <基础> +120=0,Doodads\Terrain\G_RockChunks\G_RockChunks0.mdl,岩石堆 <样式1> +121=0,Doodads\Terrain\G_RockChunks\G_RockChunks1.mdl,岩石堆 <样式2> +122=0,Doodads\Terrain\G_RockChunks\G_RockChunks2.mdl,岩石堆 <样式3> +123=0,Doodads\Terrain\G_RockChunks\G_RockChunks3.mdl,岩石堆 <样式4> +124=0,Doodads\Terrain\G_RockChunks\G_RockChunks4.mdl,岩石堆 <样式5> +125=0,Doodads\Terrain\G_RockChunks\G_RockChunks5.mdl,岩石堆 <样式6> +126=0,Buildings\Undead\GargoyleSpire\GargoyleSpire.mdl,石像鬼宫殿 +127=0,Doodads\LordaeronSummer\Plants\GrassTuft\GrassTuft,草丛 <基础> +128=0,Doodads\LordaeronSummer\Plants\GrassTuft\GrassTuft0.mdl,草丛 <样式1> +129=0,Doodads\LordaeronSummer\Plants\GrassTuft\GrassTuft1.mdl,草丛 <样式2> +130=0,Doodads\LordaeronSummer\Plants\GrassTuft\GrassTuft2.mdl,草丛 <样式3> +131=0,Doodads\LordaeronSummer\Plants\GrassTuft\GrassTuft3.mdl,草丛 <样式4> +132=0,units\human\Gyrocopter\Gyrocopter.mdl,直升机(原版) +133=0,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,大建筑火焰 +134=0,Doodads\LordaeronSummer\Structures\LordaeronBridge\LordaeronBridge.mdl,洛丹伦的桥梁 +135=1,Abilities\Spells\Human\MarkOfChaos\MarkOfChaosDone.mdl,恶魔标记 +136=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding,更多城市建筑物 <基础> +137=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding0.mdl,更多城市建筑物 <样式1> +138=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding1.mdl,更多城市建筑物 <样式2> +139=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding2.mdl,更多城市建筑物 <样式3> +140=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding3.mdl,更多城市建筑物 <样式4> +141=0,Doodads\Cityscape\Structures\MoreCityBuilding\MoreCityBuilding4.mdl,更多城市建筑物 <样式5> +142=0,Units\Other\Orccar\Orccar.mdl,官方赛车(兽人) +143=0,Abilities\Weapons\Mortar\ScatterShotMissile.mdl,炮弹 <投射物> +144=0,Abilities\Weapons\Mortar\ScatterShotTarget.mdl,炮弹 <目标> +145=0,Environment\SmallBuildingFire\SmallBuildingFire0.mdl,小建筑火焰 +146=0,Environment\SmallBuildingFire\SmallBuildingFire1.mdl,小建筑火焰2 +147=0,Environment\SmallBuildingFire\SmallBuildingFire2.mdl,小建筑火焰3 +148=0,Abilities\Weapons\MeatwagonMissile\T_MeatwagonMissile.mdl,绞肉车 <投射物> (暗色) +149=0,Abilities\Weapons\TreantMissile\TreantMissile.mdl,沙尘 +150=0,Units\Other\UndeadCar\UndeadCar.mdl,官方赛车(巫妖) +151=0,Environment\UndeadBuildingFire\UndeadLargeBuildingFire0.mdl,不死族大建筑火焰 +152=0,Environment\UndeadBuildingFire\UndeadSmallBuildingFire0.mdl,不死族小建筑火焰 +153=0,Environment\UndeadBuildingFire\UndeadSmallBuildingFire1.mdl,不死族小建筑火焰2 +154=0,units\human\WarWagon\WarWagon.mdl,蒸汽坦克(原版) +155=1,Abilities\Spells\Other\BrakeLights\BrakeLights.mdl,红色光点 +156=1,Units\Undead\Abomination\T_AbominationExplosion.mdl,憎恶爆炸(黑色血) +157=1,Abilities\Spells\Items\ScrollOfRejuvenation\ScrollManaHealth.mdl,生命恢复(绿+紫) +158=1,Abilities\Spells\Items\ClarityPotion\ClarityTarget.mdl,生命恢复(青色) +159=1,Abilities\Spells\Human\HolyBolt\HolyBoltMissile.mdl,圣光弹 <投射物> +160=1,Abilities\Spells\Demon\ReviveDemon\ReviveDemon.mdl,复生之焰 +161=1,Doodads\LordaeronSummer\Props\Signpost\Signpost0.mdl,路标牌(大) +162=1,Abilities\Spells\Other\HealTarget2\HealTarget2.mdl,医疗之光 +163=1,Abilities\Weapons\HydraliskImpact\T_HydraliskImpact.mdl,刺蛇 <投射物> (黑色) +164=1,Abilities\Weapons\BallistaMissile\BallistaImpact.mdl,投刃车穿透效果2 +165=1,Abilities\Weapons\BallistaMissile\BallistaMissileTarget.mdl,投刃车穿透效果3 +166=1,Abilities\Spells\Orc\TrollBerserk\HeadhunterWEAPONSRight.mdl,狂战士效果(右手) +167=1,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestRight.mdl,尖刺外壳(右) +168=1,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountLeft.mdl,尖刺外壳(坐骑左) +169=1,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountRight.mdl,尖刺外壳(坐骑右) +170=1,Abilities\Weapons\Blood\BloodImpact.mdl,溅血效果 +171=1,Abilities\Spells\Orc\Bloodlust\BloodLustSpecial.mdl,嗜血术效果2 +172=1,Abilities\Spells\NightElf\MoonWell\CorruptedMoonWellTarget.mdl,月亮井水效果(绿色) +173=1,Abilities\Spells\Other\ForkedLightning\ForkedLightningTarget.mdl,叉状闪电 <目标> +174=1,Abilities\Weapons\PoisonSting\Rings_Green.mdl,绿环 +175=1,SharedModels\Smoke1_Green.mdl,绿雾 +176=1,SharedModels\Feather1.mdl,飘动的羽毛1 +177=1,SharedModels\Feather2.mdl,飘动的羽毛2 +178=1,SharedModels\ObsidianFeather.mdl,飘动的羽毛3 +179=1,Abilities\Spells\NightElf\ReviveNightElf\ReviveNightElf.mdl,复活英雄2 <目标> +180=1,SharedModels\Glow1_red.mdl,红色光点(闪动) +181=1,Abilities\Spells\Other\ANsa\ANsaTarget.mdl,火焰之魂 +182=1,Abilities\Spells\Orc\LiquidFire\BatRiderMissile.mdl,火焰瓶 +183=1,Abilities\Weapons\BallistaMissile\BallistaMissile.mdl,巨箭 +184=1,Abilities\Weapons\FlyingMachine\FlyingMachineMissile.mdl,飞行机器 <投射物> +185=1,Units\Creeps\EarthPandarenBrewmaster\EarthPandarenBrewmaster_Missile.mdl,大地熊猫(球态) +186=1,Units\Creeps\StormPandarenBrewmaster\StormPandarenBrewmaster_Missile.mdl,风暴熊猫(球态) +187=1,Abilities\Weapons\SteamMissile\SteamMissile.mdl,蒸汽弹 +188=1,Abilities\Spells\Items\ScrollOfRegeneration\Scroll_Regen_Target.mdl,生命恢复2 +189=1,Units\Orc\AncestralGuardian\AncestralGuardian.mdl,毒蛇守卫2 +190=1,Units\critters\Bloodelfpeasant\BloodElfpeasant.mdl,血精灵工人2 +191=1,SharedModels\EntangleWisp.mdl,小精灵(缠绕金矿) +192=1,SharedModels\IllidanImprisoned.mdl,恶魔猎手(电影) +193=1,Units\Nightelf\Nightelffishingboat\Nightelffishingboat.mdl,渔船(暗夜精灵) +194=1,Units\Other\IllidanWagon\IllidanWagon.mdl,伊利丹囚车(YDWE) +195=1,UI\Feedback\SelectionCircleEnemy\SelectionCircleEnemy.mdl,红色回旋圈(YDWE) +196=1,UI\Feedback\SelectionCircleHero\SelectionCircleHero.mdl,绿色回旋圈(YDWE) +197=1,SharedModels\FeatherPurple.mdl,飘动的羽毛4(YDWE) +198=1,SharedModels\Gutz1.mdl,红色的碎片(YDWE) +199=1,SharedModels\leaves.mdl,树叶(YDWE) +200=1,SharedModels\NEbirth.mdl,夜精建造效果(YDWE) +201=1,SharedModels\UBirth.mdl,恶魔传送门(YDWE) +202=1,Doodads\Ashenvale\Structures\PillarsRuined\PillarsRuined.mdl,废墟(YDWE) +203=1,SharedModels\Bones1.mdl,回旋骨头(YDWE) +204=1,SharedModels\Rocks1.mdl,岩石碎片(YDWE) +205=1,SharedModels\BuildingParticleBeam.mdl,旋转的木棍(YDWE) +206=1,Environment\Sky\Outland_sky\Outland_sky.mdl,外域天空(YDWE) +207=1,Units\Human\Priest\Priest.mdl,黄金甲男巫(YDWE) +208=1,Units\Human\Sorceress\Sorceress.mdl,银装女巫(YDWE) +209=1,Units\Creeps\MurlocFlesheater\MurlocFlesheater.mdl,小鱼人-蓝(YDWE) +210=1,Units\Creeps\MurlocWarrior\MurlocWarrior.mdl,小鱼人-橙(YDWE) +211=1,units\creeps\MurlocMutant\MurlocMutant.mdl,小鱼人-青(YDWE) +212=1,units\creeps\MurlocNightcrawler\MurlocNightcrawler.mdl,小鱼人-紫(YDWE) +213=1,units\creeps\Murloc\Murloc.mdl,小鱼人-黄(YDWE) +214=1,Buildings\Other\TempArtB\TempArtB.mdl,大兵盒子-蓝(YDWE) +215=1,Units\Creeps\TempArt\TempArt.mdl,大兵盒子(YDWE) +216=1,Abilities\Weapons\RangerMissile\RangerMissile.mdl,箭-投射物(YDWE) +217=1,Abilities\Spells\Human\FragmentationShards\FragMissile.mdl,导弹-投射物(YDWE) +218=1,SharedModels\Lightning2.mdl,闪电(YDWE) +219=1,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,复仇之魂碎片2(YDWE) +220=1,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,复仇之魂碎片3(YDWE) +221=1,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl,复仇之魂碎片4(YDWE) +222=1,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs5.mdl,复仇之魂碎片5(YDWE) +223=1,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs6.mdl,复仇之魂碎片6(YDWE) +224=1,Abilities\Spells\Other\TempSpellArt\TempSpellArt.mdl,旋转的马赛克盒(YDWE) +225=1,Abilities\Spells\Orc\CommandAura\CommandAuraTarget.mdl,命令光环-目标(YDWE) +226=1,Abilities\Spells\Items\StaffOfPurification\PurificationCaster.mdl,金色闪光-效果(YDWE) +227=1,Abilities\Spells\Items\StaffOfPurification\PurificationTarget.mdl,金色闪光-目标(YDWE) +228=1,Doodads\LordaeronSummer\Water\ShorelineWave\ShorelineWave0.mdl,波浪线-形态1(YDWE) +229=1,Doodads\LordaeronSummer\Water\ShorelineWave\ShorelineWave1.mdl,波浪线-形态2(YDWE) +230=1,Environment\Sky\Sky\SkyLight.mdl,风和日丽的天空(YDWE) \ No newline at end of file diff --git a/share/mpq/units/ui/ydwetip.txt b/share/mpq/units/ui/ydwetip.txt new file mode 100644 index 0000000..612e891 --- /dev/null +++ b/share/mpq/units/ui/ydwetip.txt @@ -0,0 +1,920 @@ +[Arsp] +YDWEtip="造成法术攻击,通用伤害" +[ANsb] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ANpa] +YDWEtip="法术攻击,毒药伤害(加强伤害)" +[AOr3] +YDWEtip="会被重生的死亡不会触发单位死亡事件" +[ANr2] +YDWEtip="会被重生的死亡不会触发单位死亡事件" +[ANcf] +YDWEtip="初始伤害是法术攻击,音速伤害(魔法伤害),持续伤害是法术攻击,火焰伤害(魔法伤害)。只对身上中了以醉酒云雾为模板的技能所施加的魔法效果的单位,才能造成持续伤害的魔法效果" +[Acdb] +YDWEtip="" +[ANcl] +YDWEtip="可作为大多数主动技能的模板,可以被魔法护盾护身符抵挡" +[AOls] +YDWEtip="造成的伤害依赖于其召唤的单位的攻击,召唤出的单位如果没有蝗虫技能可能不会主动巡逻" +[ACfu] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[AOw2] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ANhw] +YDWEtip="负值治疗能造成法术攻击,闪电伤害(魔法伤害)" +[AOs2] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[ANen] +YDWEtip="不能对不可移动单位使用" +[Andm] +YDWEtip="造成法术攻击,魔法伤害" +[Acdh] +YDWEtip="火焰呼吸为模板的技能能点燃该技能所施加的魔法效果,使其受到持续伤害" +[Afbb] +YDWEtip="武器类型为普通或立即时,反馈的消魔效果是4级纯法球,被更高级的法球效果覆盖。武器类型为箭矢时,反馈是4级空法球+非独立特效,被更高级的法球效果或攻击特效覆盖。其他武器类型反馈失效。" +[AOr2] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ANsh] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Arep] +YDWEtip="使用命令ID为852024,激活命令为852025,取消命令为852026" +[AHbu] +YDWEtip="命令ID为851995" +[AEpa] +YDWEtip="1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。持续伤害是法术攻击,毒药伤害(魔法伤害)。武器类型为箭矢时对单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。" +[AHmt] +YDWEtip="群体传送即使改了目标允许也不能对敌方单位释放。传送的目标单位无法移动,攻击,施法,相当于暂停。当前攻击该目标的单位会转移攻击目标。如果目标在这期间死亡了,那么群体传送进入冷却,但不会传送过去。可以在发布传送命令之后在目标地点创建一个马甲单位,该马甲能够成为作为该次传送的目标。" +[Amic] +YDWEtip="在变成民兵后失去战斗召唤技能,会在持续时间到期后游戏崩溃" +[Afbt] +YDWEtip="武器类型为普通或立即时,反馈的消魔效果是4级纯法球,被更高级的法球效果覆盖。武器类型为投射时,反馈是4级空法球+非独立特效,被更高级的法球效果或攻击特效覆盖。其他武器类型反馈失效。" +[Adts] +YDWEtip="真实视域可以超出视野,但是添加负视野的技能不会使视野小于真实视域" +[Acmg] +YDWEtip="只能控制召唤单位,包括单位类别为召唤的单位" +[AHds] +YDWEtip="不会打断单位的当前任何动作包括持续施法,可在眩晕,昏迷中捕捉到技能命令的发布" +[Aclf] +YDWEtip="该技能有bug,目标允许仅按照玩家1的敌友来判定。" +[AHfs] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)。该技能的魔法施放时间比较特殊,在施法时间中打断技能也会消耗魔法和进入冷却。" +[Amil] +YDWEtip="在变成民兵后失去战斗召唤技能,会在持续时间到期后游戏崩溃" +[Afbk] +YDWEtip="武器类型为普通或立即时,反馈的消魔效果是4级纯法球,被更高级的法球效果覆盖。武器类型为投射时,反馈是4级空法球+非独立特效,被更高级的法球效果或攻击特效覆盖。其他武器类型反馈失效。" +[BHab] +YDWEtip="魔法效果不同的同种光环可以叠加" +[Apxf] +YDWEtip="这个技能也可以给单位多重射击能力,不过伤害不基于单位的攻击力。它由自己的冷却时间、投射图像、伤害和持续伤害,而且会对范围内的敌人自动施放。其持续时间数据域决定了它持续伤害的持续时间和攻击同一个目标的间隔。如果有需要,你可以用物品来添加多个相同的凤凰之火技能,它们能同时生效。法术攻击,火焰伤害(魔法伤害)" +[Adef] +YDWEtip="伤害增加是1级类法球效果,被后获得的1级法球效果覆盖,和类法球效果完美叠加。" +[Amls] +YDWEtip="造成法术攻击,魔法伤害" +[AHbh] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[Asps] +YDWEtip="盗取的优先级由技能的魔法盗取优先级项决定。" +[AHtc] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[Ahea] +YDWEtip="被医疗中的单位不能被其他单位医疗。" +[Agyv] +YDWEtip="真实视域可以超出视野,但是添加负视野的技能不会使视野小于真实视域" +[AHhb] +YDWEtip="不能对单位类别为不死族的友军单位和非不死族的敌人单位施放,造成法术攻击,神圣伤害(魔法伤害)" +[AHtb] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[AHbz] +YDWEtip="造成法术攻击,冰冻伤害(魔法伤害)" +[Asth] +YDWEtip="这是一个无效果的被动技能,仅仅具有一个图标,可用来做一些触发制作的被动技能的图标" +[Aroc] +YDWEtip="4级空法球+独立类攻击特效,覆盖低级的法球效果,和低级或先获得的同级攻击特效共存,被高级或后获得的同级攻击特效覆盖。和类攻击特效完美叠加。对武器类型为箭矢(非溅射,穿透,弹射)的单位有效" +[AHad] +YDWEtip="魔法效果不同的同种光环可以叠加" +[Asph] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[AHwe] +YDWEtip="千万不要召唤负数个水元素,你懂的" +[AHdr] +YDWEtip="吸取生命部分造成法术攻击,魔法伤害。能否向友军转移魔法和生命取决于游戏平衡性常数" +[Afsh] +YDWEtip="碎片攻击仅对中甲和无甲单位有效.4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被后获得或者更高级的攻击特效覆盖。只对武器类型为炮火(非炮火(穿透))的单位有效" +[AHbn] +YDWEtip="虚无单位会受到魔法攻击,任意伤害的伤害,以及法术攻击,魔法类或通用类伤害的伤害。" +[Agyb] +YDWEtip="这是一个无效果的被动技能,仅仅具有一个图标,可用来做一些触发制作的被动技能的图标" +[Amdf] +YDWEtip="伤害增加是1级类法球效果,被后获得的1级法球效果覆盖,和类法球效果完美叠加。" +[AHre] +YDWEtip="会刷新并打断被复活单位的当前动作。" +[Aflk] +YDWEtip="造成的攻击类型和伤害类型与原始攻击相同。4级类攻击特效,和先获得或低级的攻击特效共存,被后获得或高级的攻击特效覆盖。和类攻击特效完美叠加。只对武器类型为普通或立即的单位有效。" +[Asd2] +YDWEtip="造成法术攻击,普通伤害" +[ANms] +YDWEtip="魔法护盾的开关不会打断单位当前指令。持续时间项可以决定每次开启多久自动关闭。" +[ANsi] +YDWEtip="如果单位没有被沉默魔法技能禁止其中的某项能力,也不会受到减速效果的影响。比如禁止魔法的沉默作用于无魔法技能的单位时无效果。" +[Sdro] +YDWEtip="该技能配合保持货物类技能才能使用,可以将当前装载的单位卸载出来。点目标技能。" +[ACtb] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ACfl] +YDWEtip="造成法术攻击,闪电伤害(魔法伤害)" +[Afzy] +YDWEtip="该技能无需指定目标便对自己使用。" +[Aasl] +YDWEtip="被该光环影响的单位在获得光环效果时会受到0点伤害。多个减速光环的buff可以叠加" +[Ambb] +YDWEtip="造成法术攻击,魔法伤害。伤害值取决于被燃烧的魔法值" +[Ansk] +YDWEtip="直接减少攻击伤害的攻击力,在计算护甲之前。只对攻击伤害有效。" +[Abgl] +YDWEtip="只在获得技能时进行一次地表改变" +[AHca] +YDWEtip="1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。武器类型为箭矢时对单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。其他武器类型特效失效。" +[ACen] +YDWEtip="移动速度为0的单位不能被诱捕" +[ACf3] +YDWEtip="造成法术攻击,魔法伤害。该技能始终可以对魔法免疫单位使用,但未必有伤害" +[ACfu] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[Adro] +YDWEtip="该技能配合保持货物类技能才能使用,可以将当前装载的单位卸载出来。点目标技能。" +[ACvp] +YDWEtip="魔法效果不同的同种光环可以叠加。只对武器类型为普通或立即的单位有效。" +[ACba] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ACmp] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。对被缠绕住的单位无效。对飞行单位无效。" +[ANth] +YDWEtip="该技能的科技需求项无效。反射造成法术攻击,防御伤害(魔法伤害)。反射的是原始攻击数值" +[Abdl] +YDWEtip="只在获得技能时进行一次地表改变" +[AOac] +YDWEtip="魔法效果不同的同种光环可以叠加" +[Atol] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型消失" +[ACc2] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[ACc3] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[ANmr] +YDWEtip="该技能能持续消耗目标的魔法值直到时间结束,魔法耗尽或者被驱散。" +[SNeq] +YDWEtip="造成法术攻击,通用伤害。伤害只对建筑物有效。" +[Asd3] +YDWEtip="造成法术攻击,普通伤害" +[ANdh] +YDWEtip="火焰呼吸为模板的技能能点燃该技能所施加的魔法效果,使其受到持续伤害" +[ACpv] +YDWEtip="多个粉碎攻击独立完美叠加。范围以自身为圆心。造成伤害是法术攻击,强化伤害(加强伤害)" +[AAns] +YDWEtip="该技能可以做出需要消耗资源才能施展的技能。" +[ANde] +YDWEtip="4级类法球效果,被高级的法球效果覆盖,和类法球效果完美叠加。多个粉碎乘法叠加。" +[Acar] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。" +[Asds] +YDWEtip="造成法术攻击,普通伤害" +[ANcs] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。修改该技能的buff为其他buff会导致无伤害,只能修改原buff的数据。" +[ANrf] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[ANtm] +YDWEtip="目标允许中勾上无敌则可以完美杀死无敌单位" +[ACmf] +YDWEtip="魔法护盾的开关不会打断单位当前指令。持续时间项可以决定每次开启多久自动关闭。" +[ANhs] +YDWEtip="负值治疗能造成法术攻击,通用伤害" +[ANef] +YDWEtip="施法单位将在原地被隐藏。" +[SNdd] +YDWEtip="造成法术攻击,通用伤害。多个死亡凋零不能叠加。" +[ACct] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[ACdr] +YDWEtip="吸取生命部分造成法术攻击,魔法伤害。能否向友军转移魔法和生命取决于游戏平衡性常数" +[ANbf] +YDWEtip="初始伤害是法术攻击,音速伤害(魔法伤害),持续伤害是法术攻击,火焰伤害(魔法伤害)。只对身上中了以醉酒云雾为模板的技能所施加的魔法效果的单位,才能造成持续伤害的魔法效果" +[ACpu] +YDWEtip="对召唤单位造成法术攻击,音速伤害(魔法伤害)" +[ANcr] +YDWEtip="在开启和结束时,变身都会释放一次" +[ANvc] +YDWEtip="造成法术攻击,普通伤害。按住shift打开可破坏物ID项可以修改召唤的可破坏物类型,默认为Volc" +[ANtr] +YDWEtip="真实视域可以超出视野,但是添加负视野的技能不会使视野小于真实视域" +[Sch5] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。" +[ANmo] +YDWEtip="造成法术攻击,通用伤害" +[ACuf] +YDWEtip="造成法术攻击,死亡伤害(魔法伤害)" +[ANb2] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[ANdr] +YDWEtip="吸取生命部分造成法术攻击,魔法伤害。能否向友军转移魔法和生命取决于游戏平衡性常数" +[Aloa] +YDWEtip="该技能配合保持货物类技能才能使用,也就是有'容量'的单位才能装载或吞噬其他单位。可以搭配卸载类技能。" +[ANfs] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)。该技能的魔法施放时间比较特殊,在施法时间中打断技能也会消耗魔法和进入冷却。" +[ANeg] +YDWEtip="英雄需要拥有能被替换掉的原技能.在地图初始化时禁用原技能并添加工程升级即可给英雄添加一个可学习的技能。将原技能和替换技能在工程升级的数据栏中反过来填,然后添加并删除这个工程升级则能在隐藏图标的基础上替换技能。对单位无效并且会报错。" +[ANg3] +YDWEtip="在开启和结束时,变身都会释放一次" +[ACds] +YDWEtip="不会打断单位的当前任何动作包括持续施法,可在眩晕,昏迷中捕捉到技能命令的发布" +[ACdv] +YDWEtip="造成伤害是法术攻击,酸性伤害(加强伤害)。事实上伤害是由吞噬货物技能给予的,该技能起到一个'装载'的作用,吞噬的单位也可以被卸载。" +[ANc2] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。修改该技能的buff为其他buff会导致无伤害,只能修改原buff的数据。" +[ACcv] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[ANg2] +YDWEtip="在开启和结束时,变身都会释放一次" +[ANpi] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[ACtc] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ACrk] +YDWEtip="使受到技能的持续时间按照英雄持续时间计算" +[ACcw] +YDWEtip="法球效果+非独立攻击特效,不能和其他法球效果和攻击特效叠加" +[Aenw] +YDWEtip="造成法术攻击,植物伤害(魔法伤害),对飞行单位无效。" +[ANrg] +YDWEtip="在开启和结束时,变身都会释放一次" +[Sch4] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。" +[Asod] +YDWEtip="武器类型为箭矢(非溅射,穿透或弹射)时,1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。另外该技能有bug,在武器类型为普通或立即时,变为1级类攻击特效,并且成为被动技能!" +[ACad] +YDWEtip="被复活的单位将属于施法者控制。修改目标允许后对存活单位也有效。" +[AChv] +YDWEtip="负值治疗能造成法术攻击,闪电伤害(魔法伤害)" +[ACac] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ACnr] +YDWEtip="该技能能够给单位绑定模型,该模型的队伍颜色随单位队伍颜色而变化,单位死亡则模型消失" +[ANbh] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[Awrs] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Abun] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。该技能能使单位失去攻击能力直到装载其他单位" +[ACde] +YDWEtip="对召唤单位造成法术攻击,魔法伤害" +[Atsp] +YDWEtip="该技能能吹起附近的单位" +[ANst] +YDWEtip="造成法术攻击,通用伤害。击中单位后的溅血模型无法更改,除非更改原版技能的数据" +[ACpa] +YDWEtip="法术攻击,毒药伤害(加强伤害)" +[ACsh] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Atwa] +YDWEtip="有这个技能的单位能比一般单位更加贴身地跟随目标。一旦离开影响区域就会死亡" +[Sbtl] +YDWEtip="该技能配合保持货物类技能才能使用,也就是有'容量'的单位才能装载或吞噬其他单位。可以搭配卸载类技能。无目标技能。" +[ANso] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)。使目标沉默" +[ANfd] +YDWEtip="造成法术攻击,魔法伤害。该技能始终可以对魔法免疫单位使用,但未必有伤害" +[Apig] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[Sch2] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。" +[ANfl] +YDWEtip="造成法术攻击,闪电伤害(魔法伤害)" +[ANdo] +YDWEtip="造成法术攻击,通用伤害。能禁止目标单位的主动技能和很多被动技能的效果。" +[Afod] +YDWEtip="造成法术攻击,魔法伤害。该技能始终可以对魔法免疫单位使用,但未必有伤害" +[ACsk] +YDWEtip="使受到技能的持续时间按照英雄持续时间计算" +[Apmf] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[ACls] +YDWEtip="不能对飞行单位使用,伤害始终无视敌我,造成法术攻击,闪电伤害(魔法伤害)" +[Adri] +YDWEtip="该技能配合保持货物类技能才能使用,可以将当前装载的单位立即在原地卸载出来。无目标技能。" +[ACvs] +YDWEtip="4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只在武器类型为普通,立即或箭矢时单体有效" +[ACua] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ACfs] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)。该技能的魔法施放时间比较特殊,在施法时间中打断技能也会消耗魔法和进入冷却。" +[ACca] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Awrh] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Amnz] +YDWEtip="造成法术攻击,普通伤害" +[SCae] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ACrg] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[ANt2] +YDWEtip="该技能的科技需求项无效。反射造成法术攻击,防御伤害(魔法伤害)。反射的是原始攻击数值" +[ANba] +YDWEtip="武器类型为箭矢(非溅射,穿透或弹射)时,1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。另外该技能有bug,在武器类型为普通或立即时,变为1级类攻击特效,并且成为被动技能!" +[ACcb] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ACrf] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[ANia] +YDWEtip="开启时是1级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被后获得的同级攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围),武器类型为箭矢(穿透)或箭矢(弹射)时,特效导致弹射失效。其他武器类型特效失效。自定义的燃灰技能的附加攻击伤害无效。增加伤害的效果只对原先不为0的伤害有效。叠加伤害只记录叠加层数和每层伤害,每次保留受到的较大的每层伤害。" +[ACim] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[Adtg] +YDWEtip="真实视域可以超出视野,但是添加负视野的技能不会使视野小于真实视域" +[ANlm] +YDWEtip="游戏平衡性常数中可修改该技能每代的染色数据。默认数据中分裂超过三代后无染色,可自行修改。" +[ANab] +YDWEtip="造成法术攻击,暗影突袭伤害(魔法伤害)" +[ACsa] +YDWEtip="纯法球效果,不能和其他法球效果叠加" +[ACf2] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[ACfa] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[ACfb] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[Atdg] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)" +[Ambd] +YDWEtip="造成法术攻击,魔法伤害。伤害值取决于被燃烧的魔法值" +[ANrn] +YDWEtip="会被重生的死亡不会触发单位死亡事件" +[ACd2] +YDWEtip="对召唤单位造成法术攻击,魔法伤害" +[ACdm] +YDWEtip="对召唤单位造成法术攻击,魔法伤害" +[Advc] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。造成法术攻击,酸性伤害(加强伤害)" +[ACst] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Adsm] +YDWEtip="对召唤单位造成法术攻击,魔法伤害" +[ACcl] +YDWEtip="造成法术攻击,闪电伤害(魔法伤害)。闪电链仍然在弹射时无法再次使用闪电链技能。" +[Awrg] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[ACcn] +YDWEtip="只会寻找默认范围内的尸体" +[ACat] +YDWEtip="魔法效果不同的同种光环可以叠加" +[ACbz] +YDWEtip="造成法术攻击,冰冻伤害(魔法伤害)" +[ACwb] +YDWEtip="不能对无法移动的单位使用" +[ACdc] +YDWEtip="对单位类别为不死族的敌方单位和非不死族的友军单位无效。造成法术攻击,死亡伤害(魔法伤害)" +[Abgs] +YDWEtip="只在获得技能时进行一次地表改变" +[Asdg] +YDWEtip="造成法术攻击,普通伤害" +[Abds] +YDWEtip="只在获得技能时进行一次地表改变" +[ACfn] +YDWEtip="造成法术攻击,冰冻伤害(魔法伤害),减速数值可以在游戏平衡性常数中修改" +[ANc1] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。修改该技能的buff为其他buff会导致无伤害,只能修改原buff的数据。" +[ANd3] +YDWEtip="4级类法球效果,被高级的法球效果覆盖,和类法球效果完美叠加。多个粉碎乘法叠加。" +[ACbh] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[ANdb] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[SCva] +YDWEtip="2级纯法球,覆盖低级的法球效果,被高级的法球效果覆盖。攻击幻象时不占用法球效果。另外,该技能是少有的几个能和炮火以及炮火(直线)的武器类型兼容的技能,但是只有单体效果。" +[Amnx] +YDWEtip="造成法术攻击,普通伤害。" +[ANwk] +YDWEtip="单位武器类型为普通或立即时,破隐一击不占用法球效果,是1级类攻击特效,其他武器类型破隐一击属于1级类法球,被法球效果覆盖,能和其他类法球叠加,因此处于疾风步期间攻击不会暴击。 " +[ANin] +YDWEtip="造成法术攻击,力量伤害(魔法伤害),伤害来源是召唤出的单位,没有则无伤害。会导致召唤出的单位的蝗虫技能失效。" +[ACbc] +YDWEtip="初始伤害是法术攻击,音速伤害(魔法伤害),持续伤害是法术攻击,火焰伤害(魔法伤害)。只对身上中了以醉酒云雾为模板的技能所施加的魔法效果的单位,才能造成持续伤害的魔法效果" +[Sch3] +YDWEtip="吞噬货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用。" +[ANic] +YDWEtip="1级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被后获得的同级攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围),武器类型为箭矢(穿透)或箭矢(弹射)时,特效导致弹射失效。其他武器类型特效失效。自定义的燃灰技能的附加攻击伤害无效。增加伤害的效果只对原先不为0的伤害有效。叠加伤害只记录叠加层数和每层伤害,每次保留受到的较大的每层伤害。" +[ACbf] +YDWEtip="初始伤害是法术攻击,音速伤害(魔法伤害),持续伤害是法术攻击,火焰伤害(魔法伤害)。无需醉酒云雾即可产生持续伤害效果。" +[ANak] +YDWEtip="只对武器类型为箭矢(溅射)的单位有效。1级纯法球效果,开启时覆盖其他法球效果。改变溅射数据的部分是1级类攻击特效。" +[ANd2] +YDWEtip="4级类法球效果,被高级的法球效果覆盖,和类法球效果完美叠加。多个粉碎乘法叠加。" +[ACbk] +YDWEtip="武器类型为箭矢(非溅射,穿透或弹射)时,1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。另外该技能有bug,在武器类型为普通或立即时,变为1级类攻击特效,并且成为被动技能!" +[Awrp] +YDWEtip="传送门技能始终无视敌我都可以使用。" +[Amin] +YDWEtip="该技能使得单位可以隐身,但是该单位即使是飞行单位也会有地面碰撞,且无论如何不能通过不可建造地面" +[ACbn] +YDWEtip="虚无单位会受到魔法攻击,任意伤害的伤害,以及法术攻击,魔法类或通用类伤害的伤害。" +[Adda] +YDWEtip="造成法术攻击,普通伤害" +[Amnb] +YDWEtip="造成法术攻击,魔法伤害。伤害值取决于被燃烧的魔法值" +[ACt2] +YDWEtip="造成法术攻击,音速伤害(魔法伤害)" +[ACss] +YDWEtip="初始伤害是法术攻击,慢性毒药伤害(加强伤害)。持续伤害是法术攻击,暗影突袭伤害(魔法伤害)。多个暗影突袭叠加时,伤害取剩余伤害较高的那个,而伤害间隔则取最短的那个。" +[ACrn] +YDWEtip="会被重生的死亡不会触发单位死亡事件。该技能(ACrn)有bug,在此技能冷却期间,若单位处于变身状态(妖术、恶魔变身等),且变身剩余时间大于重生延迟,则目标在播放完死亡动画后,会被系统删除。" +[ACsi] +YDWEtip="如果单位没有被沉默魔法技能禁止其中的某项能力,也不会受到减速效果的影响。比如禁止魔法的沉默作用于无魔法技能的单位时无效果。" +[ACsm] +YDWEtip="吸取生命部分造成法术攻击,魔法伤害。能否向友军转移魔法和生命取决于游戏平衡性常数" +[Achd] +YDWEtip="保持货物使单位能够容纳别的单位,可以配合装载类技能和卸载类技能的使用" +[ACah] +YDWEtip="魔法效果不同的同种光环可以叠加.造成法术攻击,植物伤害(魔法伤害)。反弹值为计算抗性和护甲前的初始伤害值。" +[ANc3] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。修改该技能的buff为其他buff会导致无伤害,只能修改原buff的数据。" +[ACmo] +YDWEtip="造成法术攻击,通用伤害" +[Aenr] +YDWEtip="造成法术攻击,植物伤害(魔法伤害)。不能对飞行单位使用。" +[ANg1] +YDWEtip="在开启和结束时,变身都会释放一次" +[ANca] +YDWEtip="1级类攻击特效,被后获得的的1级法球效果覆盖,覆盖低级的法球效果。造成原攻击类型强化伤害(加强伤害)。多个分裂攻击加法叠加。只在武器类型为普通或立即时有效。" +[ANfa] +YDWEtip="1级法球效果(增加攻击伤害)+非独立攻击特效,被后获得的的1级法球效果或攻击特效覆盖,覆盖低级的法球效果和攻击特效。武器类型为箭矢时对单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。其他武器类型特效失效。" +[ACfd] +YDWEtip="造成法术攻击,魔法伤害" +[ANd1] +YDWEtip="4级类法球效果,被高级的法球效果覆盖,和类法球效果完美叠加。多个粉碎乘法叠加。" +[SNin] +YDWEtip="造成法术攻击,力量伤害(魔法伤害),伤害来源是召唤出的单位,没有则无伤害。会导致召唤出的单位的蝗虫技能失效。" +[ACce] +YDWEtip="1级类攻击特效,被后获得的的1级法球效果覆盖,覆盖低级的法球效果。造成原攻击类型强化伤害(加强伤害)。多个分裂攻击加法叠加。只在武器类型为普通或立即时有效。" +[Adtn] +YDWEtip="对召唤单位伤害是法术攻击,魔法伤害。" +[Amgl] +YDWEtip="这是一个无效果的被动技能,仅仅具有一个图标,可用来做一些触发制作的被动技能的图标" +[Aegr] +YDWEtip="多个艾鲁尼的优雅的魔法抗性乘法叠加.伤害增加效果是1级类法球效果,被后获得的1级法球效果覆盖,和类法球效果完美叠加。" +[Aadm] +YDWEtip="对召唤单位伤害是法术攻击,魔法伤害。" +[Asp6] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[AEvi] +YDWEtip="在开启和结束时,变身都会释放一次" +[Amgr] +YDWEtip="这是一个无效果的被动技能,仅仅具有一个图标,可用来做一些触发制作的被动技能的图标" +[Apsh] +YDWEtip="变相移动其实只是处于隐身状态。" +[Asp2] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[Asp4] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[AEah] +YDWEtip="魔法效果不同的同种光环可以叠加.造成法术攻击,植物伤害(魔法伤害)。反弹值为计算抗性和护甲前的初始伤害值。" +[AHfa] +YDWEtip="1级纯法球效果,开启时覆盖其他法球效果及其带来的攻击伤害提升" +[AEsb] +YDWEtip="造成法术攻击,通用伤害" +[Asp5] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[Alit] +YDWEtip="能使单位的攻击变成瞬间的闪电效果。5级空法球效果+类攻击特效,被更高级的攻击特效覆盖。" +[AEer] +YDWEtip="造成法术攻击,植物伤害(魔法伤害)。不能对飞行单位使用。" +[Acor] +YDWEtip="这是一个无效果的技能" +[Arav] +YDWEtip="给任何单位添加风暴之鸦并立即删除,能使该单位可以被触发修改单位高度(动画)" +[AEsf] +YDWEtip="造成法术攻击,通用伤害" +[AEar] +YDWEtip="魔法效果不同的同种光环可以叠加" +[AEfk] +YDWEtip="无视施法前摇。造成法术攻击,强化伤害(加强伤害)" +[AEmb] +YDWEtip="造成法术攻击,魔法伤害。伤害值取决于被燃烧的魔法值" +[AEIl] +YDWEtip="在开启和结束时,变身都会释放一次" +[AEme] +YDWEtip="在开启和结束时,变身都会释放一次" +[AEim] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[Assk] +YDWEtip="直接减少攻击伤害的攻击力,在计算护甲之前。只对攻击伤害有效。" +[Aspo] +YDWEtip="3级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只在武器类型为普通,立即或箭矢时单体有效" +[Asp1] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[Asp3] +YDWEtip="该技能能够给单位绑定模型,该模型会在单位攻击或施法时播放死亡动画,魔法施放冷却时间过后才会重新创建,并播放该模型的诞生动画。单位死亡则特效消失。另外,该技能能在单位施放技能至发动技能期间,向目标释放投射物,投射物到达时间等同于单位的施法前摇。" +[Arsk] +YDWEtip="使受到技能的持续时间按照英雄持续时间计算" +[AEsh] +YDWEtip="初始伤害是法术攻击,慢性毒药伤害(加强伤害)。持续伤害是法术攻击,暗影突袭伤害(魔法伤害)。多个暗影突袭叠加时,伤害取剩余伤害较高的那个,而伤害间隔则取最短的那个。" +[Adch] +YDWEtip="对召唤单位的伤害是法术攻击,魔法伤害" +[AOcr] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[AOcl] +YDWEtip="造成法术攻击,闪电伤害(魔法伤害)。闪电链仍然在弹射时无法再次使用闪电链技能。" +[Astd] +YDWEtip="无目标技能。单位需要拥有保持货物之类的技能,保证其能携带单位。可以用来卸载被吞噬的单位" +[AOvd] +YDWEtip="施法单位不会因巫毒而无敌。另外该技能的学习等级小于等于1时,会出现间歇性解除无敌的情况。" +[Adcn] +YDWEtip="对召唤单位的伤害是法术攻击,魔法伤害" +[Aast] +YDWEtip="复活一个正在被吞噬的牛头人尸体会引起bug,复活出的单位将被隐藏但是占用人口" +[Aeye] +YDWEtip="该技能创建出的单位永久隐形" +[AOwk] +YDWEtip="单位武器类型为普通或立即时,破隐一击不占用法球效果,是1级类攻击特效,其他武器类型破隐一击属于1级类法球,被法球效果覆盖,能和其他类法球叠加,因此处于疾风步期间攻击不会暴击。 " +[AOhw] +YDWEtip="负值治疗造成法术攻击,闪电伤害(魔法伤害)" +[Absk] +YDWEtip="不会打断单位的当前任何动作包括持续施法,可在眩晕,昏迷中捕捉到技能命令的发布.当额外伤害为负时,单位免疫物理伤害,并会将受到的魔法伤害对应转化为一定的生命值" +[Alsh] +YDWEtip="不能对飞行单位使用,伤害始终无视敌我,造成法术攻击,闪电伤害(魔法伤害)" +[Acpf] +YDWEtip="虚无单位会受到魔法攻击,任意伤害的伤害,以及法术攻击,魔法类或通用类伤害的伤害。" +[Aspl] +YDWEtip="如果灵魂链接技只能对敌人使用,无论最大目标数,都只有技能施放目标拥有buff,不会连接到其他单位。分摊伤害为法术攻击灵魂锁链伤害(魔法伤害),总伤害值为单位的原始伤害值(不计护甲)" +[Abof] +YDWEtip="4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只对武器类型为箭矢,箭矢(溅射),炮火(非炮火(穿透))的单位有效。造成伤害是法术攻击,强化伤害(加强伤害)。" +[Apg2] +YDWEtip="造成伤害是法术攻击,魔法伤害。" +[AOeq] +YDWEtip="造成法术攻击,通用伤害。伤害只对建筑物有效。" +[AOre] +YDWEtip="会被重生的死亡不会触发单位死亡事件" +[AOmi] +YDWEtip="与各类变身技能冲突" +[Aprg] +YDWEtip="造成伤害是法术攻击,魔法伤害。" +[Aens] +YDWEtip="不能对不可移动单位使用" +[Abtl] +YDWEtip="无目标技能。单位需要拥有保持货物之类的技能,保证其能携带单位。" +[AOws] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[AOae] +YDWEtip="魔法效果不同的同种光环可以叠加" +[AOsh] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Aetf] +YDWEtip="虚无单位会受到魔法攻击,任意伤害的伤害,以及法术攻击,魔法类或通用类伤害的伤害。" +[Auco] +YDWEtip="造成伤害是法术攻击,普通伤害。" +[Apo2] +YDWEtip="对于近战单位,该技能需要和带有毒药效果的物品技能(AIpb)搭配才能有效果。4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只在武器类型为普通,立即或箭矢时单体有效。造成伤害是法术攻击,毒药伤害(加强伤害)。" +[Adev] +YDWEtip="造成伤害是法术攻击,酸性伤害(加强伤害)。事实上伤害是由吞噬货物技能给予的,该技能起到一个'装载'的作用,吞噬的单位也可以被卸载。" +[Aven] +YDWEtip="4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只在武器类型为普通,立即或箭矢时单体有效。造成伤害是法术攻击,毒药伤害(加强伤害)。" +[Asal] +YDWEtip="1级类法球效果,能和其他类法球完美叠加,被后获得的1级法球效果覆盖。" +[Awfb] +YDWEtip="造成伤害是法术攻击,火焰伤害(魔法伤害)。" +[Aliq] +YDWEtip="4级纯攻击特效,覆盖低级攻击特效,被更高级的攻击特效覆盖。造成伤害是法术攻击,火焰伤害(魔法伤害)。只对武器类型为箭矢和箭矢(溅射)的单位有效。" +[Apoi] +YDWEtip="4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。只在武器类型为普通,立即或箭矢时单体有效。造成伤害是法术攻击,毒药伤害(加强伤害)。" +[Awar] +YDWEtip="多个粉碎攻击独立完美叠加。范围以自身为圆心。造成伤害是法术攻击,强化伤害(加强伤害)" +[AOww] +YDWEtip="造成法术攻击,强化伤害(加强伤害)" +[Afak] +YDWEtip="只对武器类型为箭矢(溅射)的单位有效。1级纯法球效果,开启时覆盖其他法球效果。改变溅射数据的部分是1级类攻击特效。" +[Aam2] +YDWEtip="只能吸收法术攻击和魔法攻击的伤害,另外,不能吸收伤害类型为通用的伤害。" +[AUav] +YDWEtip="魔法效果不同的同种光环可以叠加" +[Acn2] +YDWEtip="只会寻找默认范围内的尸体" +[AUfa] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[AUls] +YDWEtip="造成的伤害依赖于其召唤的单位的攻击,召唤出的单位如果没有蝗虫技能可能不会主动巡逻" +[Auns] +YDWEtip="该技能造成法术攻击,破坏伤害(加强伤害)。返回资源率为100%则可能回收时不造成伤害。" +[Advm] +YDWEtip="对召唤单位和类别为召唤的单位造成法术攻击,魔法伤害" +[Aspa] +YDWEtip="只能产生小蜘蛛的投射物。5级空法球+独立攻击特效,被更高级或者后获得的同级攻击特效覆盖。" +[AUan] +YDWEtip="被复活的单位将属于施法者控制。修改目标允许后对存活单位也有效。" +[AUdr] +YDWEtip="对单位类别为不死族的敌方单位和非不死族的友军单位无效" +[Afr2] +YDWEtip="5级空法球+独立攻击特效,被更高级或者后获得的同级攻击特效覆盖。减速数值可以在游戏平衡性常数中修改" +[Aweb] +YDWEtip="不能对不可移动单位使用" +[AUin] +YDWEtip="造成法术攻击,力量伤害(魔法伤害),伤害来源是召唤出的单位,没有则无伤害。会导致召唤出的单位的蝗虫技能失效。" +[AUdd] +YDWEtip="造成法术攻击,通用伤害。多个死亡凋零不能叠加。" +[AUfn] +YDWEtip="造成法术攻击,冰冻伤害(魔法伤害),减速数值可以在游戏平衡性常数中修改" +[Aap3] +YDWEtip="对单位类型为不死族的单位无效。造成法术攻击,疾病伤害(不计算护甲的物理伤害)" +[AUdp] +YDWEtip="对单位类别为不死族的敌方单位和非不死族的友军单位无效" +[AUau] +YDWEtip="魔法效果不同的同种光环可以叠加" +[Auhf] +YDWEtip="造成法术攻击,死亡伤害(魔法伤害)" +[Aabr] +YDWEtip="魔法效果不同的同种光环可以叠加" +[AUts] +YDWEtip="该技能的科技需求项无效。反射造成法术攻击,防御伤害(魔法伤害)。反射的是原始攻击数值" +[AUdc] +YDWEtip="对单位类别为不死族的敌方单位和非不死族的友军单位无效。造成法术攻击,死亡伤害(魔法伤害)" +[AUim] +YDWEtip="造成法术攻击,力量伤害(魔法伤害)。对被缠绕住的单位无效。对飞行单位无效。" +[Atru] +YDWEtip="真实视域可以超出视野,但是添加负视野的技能不会使视野小于真实视域" +[AUcs] +YDWEtip="该技能不会对友军生效,造成法术攻击,音速伤害(魔法伤害)" +[Suhf] +YDWEtip="造成法术攻击,死亡伤害(魔法伤害)" +[AUfu] +YDWEtip="只能使非远程攻击者减速,减速数值可以在游戏平衡性常数中修改" +[Acan] +YDWEtip="只会寻找默认范围内的尸体" +[Aap4] +YDWEtip="对单位类型为不死族的单位无效。造成法术攻击,疾病伤害(不计算护甲的物理伤害)" +[Afra] +YDWEtip="5级空法球+独立攻击特效,被更高级或者后获得的同级攻击特效覆盖。减速数值可以在游戏平衡性常数中修改" +[Afrb] +YDWEtip="5级空法球+独立攻击特效,被更高级或者后获得的同级攻击特效覆盖。减速数值可以在游戏平衡性常数中修改" +[Aap2] +YDWEtip="对单位类型为不死族的单位无效。造成法术攻击,疾病伤害(不计算护甲的物理伤害)" +[Aap1] +YDWEtip="对单位类型为不死族的单位无效。造成法术攻击,疾病伤害(不计算护甲的物理伤害)" +[Aapl] +YDWEtip="对单位类型为不死族的单位无效。造成法术攻击,疾病伤害(不计算护甲的物理伤害)" +[Afrz] +YDWEtip="武器类型为箭矢(溅射)时,是4级空法球+独立攻击特效,覆盖低级的法球效果,被更高级或者后获得的同级攻击特效覆盖。武器类型为箭矢时,是4级空法球+类攻击特效,还会对目标立即增加一次攻击伤害,该次攻击也会附加其他法球效果,多个冰冻喷吐的增加攻击次数可以叠加(bug)。" +[Apts] +YDWEtip="该技能可以在攻击时召唤单位,召唤出的单位无法被选中但是可以被伤害。瘟疫对单位类型为不死族的单位无效。5级空法球+独立攻击特效,被更高级或者后获得的同级攻击特效覆盖。" +[Amec] +YDWEtip="命令ID是852564。通过这个技能召唤的单位,在非控制者(包括非共享控制的盟友)看来就像是中立友善的单位。唯一的区别是,当敌人右键点击该单位时发布的是攻击命令。你无法更改此技能召唤的单位类型,因为它只会在当前地形的小动物中随机选择,当然你也可以更改单位的所属种族,然后将其加入当前地形的小动物列表,效果一样。 " +[AItl] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIdi] +YDWEtip="命令ID是852271" +[AIgd] +YDWEtip="溅射伤害固定为该技能的数值,法术攻击,通用伤害。3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时溅射伤害被技能溅射覆盖。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。" +[AIfb] +YDWEtip="溅射伤害固定为该技能的数值,法术攻击,通用伤害。3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时溅射伤害被技能溅射覆盖。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AImo] +YDWEtip="命令ID是852614" +[AIt9] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIt6] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AItc] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIfr] +YDWEtip="命令ID是852261" +[AIir] +YDWEtip="命令ID是852261" +[AIp2] +YDWEtip="命令ID是852609" +[Aspp] +YDWEtip="如果灵魂链接技只能对敌人使用,无论最大目标数,都只有技能施放目标拥有buff,不会连接到其他单位。分摊伤害为法术攻击灵魂锁链伤害(魔法伤害),总伤害值为单位的原始伤害值(不计护甲)" +[AIsl] +YDWEtip="命令ID是852609" +[AIdd] +YDWEtip="伤害增加效果是类法球,能和其他类法球叠加,不能和其他法球效果叠加" +[AIhe] +YDWEtip="命令ID是852272" +[AIfg] +YDWEtip="该技能有bug,目标允许仅按照玩家1的敌友来判定。命令ID是852473" +[APmg] +YDWEtip="命令ID是852277" +[AIff] +YDWEtip="命令ID是852261" +[AIp3] +YDWEtip="命令ID是852609" +[AItp] +YDWEtip="命令ID是852286。施法单位处于无敌状态。即使改了目标允许也不能对敌方单位释放。传送的目标单位无法移动,攻击,施法,相当于暂停。当前攻击该目标的单位会转移攻击目标。如果目标在这期间死亡了,那么群体传送进入冷却,但不会传送过去。可以在发布传送命令之后在目标地点创建一个马甲单位,该马甲能够成为作为该次传送的目标。" +[AIra] +YDWEtip="命令ID是852282" +[AIrl] +YDWEtip="命令ID是852609" +[AIm1] +YDWEtip="命令ID是852276" +[AIuw] +YDWEtip="命令ID是852261" +[AItx] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[ANse] +YDWEtip="命令ID是852571" +[AIsw] +YDWEtip="该技能创建出的单位永久隐形" +[AIcb] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即,箭矢或箭矢(溅射)时单体有效。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[Aami] +YDWEtip="命令ID是852186" +[AIsp] +YDWEtip="命令ID是852285" +[AIdb] +YDWEtip="命令ID是852269" +[AIhb] +YDWEtip="命令ID是852273" +[AIv1] +YDWEtip="命令ID是852287" +[AIpr] +YDWEtip="命令ID是852609" +[AItb] +YDWEtip="命令ID是852625" +[AIsa] +YDWEtip="命令ID是852285" +[AIcf] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[AIbx] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[AIil] +YDWEtip="命令ID是852274" +[AIpl] +YDWEtip="命令ID是852609" +[Asou] +YDWEtip="命令ID是852284" +[AIrt] +YDWEtip="命令ID是852279" +[AIh1] +YDWEtip="命令ID是852272" +[AImt] +YDWEtip="命令ID是852093" +[AIpm] +YDWEtip="命令ID是852278" +[AIdc] +YDWEtip="命令ID是852615" +[AIvl] +YDWEtip="命令ID是852288" +[AIbh] +YDWEtip="命令ID是852619" +[AIda] +YDWEtip="命令ID是852269" +[AIth] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIlp] +YDWEtip="命令ID是852111" +[AIta] +YDWEtip="命令ID是852270" +[AIcs] +YDWEtip="不触发时不占用法球和攻击特效。伤害倍击部分是1级类法球。武器类型为普通或立即时,重击部分是1级类攻击特效,眩晕无视魔免但是是法术攻击力量伤害(魔法伤害)。武器类型为箭矢时,重击部分是1级攻击特效。武器类型为箭矢(溅射)时可以范围击晕,非终极技能的重击眩晕不能对魔免生效但是伤害附加算在原攻击中。武器类型为箭矢(弹射)或(直线)时,重击会致弹射失效。武器类型为炮火或炮火(直线)时,武器类型导致重击的攻击特效失效。多个致命一击触发概率互相独立,同时触发时红字不是真正伤害值,而是取后获得的倍率。" +[AIll] +YDWEtip="3级空法球+非独立攻击特效,未触发时不占用攻击特效,法球被叠加时不会触发。覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为炮火或炮火(穿透)时,特效失效。单位在未接受任何指令时或在“保持位置”命令下、自动攻击警戒范围内的敌人时,闪电之球无法正确触发。表现为:触发时占用攻击特效,消耗魔法值,但没有任何技能被施放,技能也不进入冷却。" +[Aste] +YDWEtip="命令ID是852574" +[AIre] +YDWEtip="命令ID是852281" +[AIrd] +YDWEtip="命令ID是852624" +[ANpr] +YDWEtip="命令ID是852568" +[AIlx] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[APmr] +YDWEtip="命令ID是852277" +[AIlb] +YDWEtip="该技能不包含净化效果。3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AIpb] +YDWEtip="该技能不包含中毒效果,对于近战单位,必须和毒刺(毒液之球)技能(Apo2)搭配才有攻击伤害,否则攻击将无伤害。3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AIco] +YDWEtip="命令ID是852093" +[AIbg] +YDWEtip="命令ID是852619" +[APra] +YDWEtip="命令ID是852282" +[AIbr] +YDWEtip="命令ID是852619" +[AIfw] +YDWEtip="溅射伤害固定为该技能的数值,法术攻击,通用伤害。3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时溅射伤害被技能溅射覆盖。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[Ashs] +YDWEtip="命令ID是852570。该技能能够获得目标单位的视野,直到魔法效果消失" +[AIbs] +YDWEtip="命令ID是852619" +[AIbf] +YDWEtip="命令ID是852619" +[AIvu] +YDWEtip="命令ID是852288" +[AIv2] +YDWEtip="命令ID是852287" +[AIfu] +YDWEtip="命令ID是852261" +[AIfi] +YDWEtip="造成法术攻击,火焰伤害(魔法伤害)" +[AImr] +YDWEtip="命令ID是852277" +[AIva] +YDWEtip="2级纯法球,覆盖低级的法球效果,被高级的法球效果覆盖。攻击幻象时不占用法球效果。另外,该技能是少有的几个能和炮火以及炮火(直线)的武器类型兼容的技能,但是只有单体效果。" +[AIfs] +YDWEtip="命令ID是852261" +[AIls] +YDWEtip="不能对飞行单位使用,伤害始终无视敌我,造成法术攻击,闪电伤害(魔法伤害)" +[AIvi] +YDWEtip="命令ID是852287" +[AItg] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIxk] +YDWEtip="不会打断单位的当前任何动作包括持续施法,可在眩晕,昏迷中捕捉到技能命令的发布.当额外伤害为负时,单位免疫物理伤害,并会将受到的魔法伤害对应转化为一定的生命值" +[AIcl] +YDWEtip="造成法术攻击,闪电伤害(魔法伤害)" +[AIsb] +YDWEtip="3级空法球+非独立攻击特效,未触发时不占用攻击特效,法球被叠加时不会触发。覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为炮火或炮火(穿透)时,特效失效。单位在未接受任何指令时或在“保持位置”命令下、自动攻击警戒范围内的敌人时,闪电之球无法正确触发。表现为:触发时占用攻击特效,消耗魔法值,但没有任何技能被施放,技能也不进入冷却。" +[AIfh] +YDWEtip="命令ID是852261" +[AIft] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AIds] +YDWEtip="命令ID是852274" +[AIsz] +YDWEtip="4级空法球+独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的攻击特效覆盖。造成法术攻击,慢性毒药伤害(加强伤害)" +[AIhl] +YDWEtip="造成法术攻击,神圣伤害(魔法伤害)" +[Aret] +YDWEtip="命令ID是852471" +[AIfz] +YDWEtip="造成法术攻击,魔法伤害。命令ID是852230" +[AIrc] +YDWEtip="会被重生的死亡不会触发单位死亡事件" +[AIbk] +YDWEtip="命令ID是852525" +[AIcm] +YDWEtip="只对召唤单位和类别为召唤的单位有效" +[AIuf] +YDWEtip="造成法术攻击,死亡伤害(魔法伤害)" +[ANbs] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为炮火或炮火(穿透)时无效。" +[AIp6] +YDWEtip="命令ID是852609" +[AItf] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIbb] +YDWEtip="命令ID是852619" +[AIp4] +YDWEtip="命令ID是852609" +[AIbt] +YDWEtip="命令ID是852619" +[AIh3] +YDWEtip="命令ID是852272" +[AIrv] +YDWEtip="命令ID是852612" +[AItn] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AItk] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIh2] +YDWEtip="命令ID是852272" +[AIct] +YDWEtip="命令ID是852621" +[AItj] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIti] +YDWEtip="该技能能够给单位绑定模型,单位死亡模型依然存在" +[AIp5] +YDWEtip="命令ID是852609" +[AIdv] +YDWEtip="不会打断单位的当前任何动作包括持续施法,可在眩晕,昏迷中捕捉到技能命令的发布" +[AUds] +YDWEtip="命令ID是852220" +[AIfa] +YDWEtip="命令ID是852618" +[AIms] +YDWEtip="不能叠加" +[Aspb] +YDWEtip="给单位添加一个魔法书,然后在触发里禁用那个魔法书,魔法书会不显示,但是里面装的被动技能都有效" +[AIwb] +YDWEtip="命令ID是852613" +[ANss] +YDWEtip="命令ID是852571" +[AIbl] +YDWEtip="命令ID是852619" +[AIhx] +YDWEtip="命令ID是852272" +[AIpv] +YDWEtip="命令ID是852623" +[AIob] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AIfd] +YDWEtip="命令ID是852261" +[AIm2] +YDWEtip="命令ID是852276" +[AIzb] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[AIpz] +YDWEtip="命令ID是852273" +[AIha] +YDWEtip="命令ID是852273" +[AIdf] +YDWEtip="3级空法球+非独立攻击特效,覆盖低级的法球效果和攻击特效,被高级的法球效果和攻击特效覆盖。武器类型为普通,立即或箭矢时单体有效,武器类型为箭矢(溅射)时造成范围特效(取决于技能的影响范围)。武器类型为箭矢(穿透)或箭矢(弹射)时,攻击失效。武器类型为炮火或炮火(穿透)时,特效失效" +[ACav] +YDWEtip="魔法效果不同的同种光环可以叠加" diff --git a/share/mpq/units/units/abilitybuffdata.slk b/share/mpq/units/units/abilitybuffdata.slk new file mode 100644 index 0000000..79fdc25 --- /dev/null +++ b/share/mpq/units/units/abilitybuffdata.slk @@ -0,0 +1,2145 @@ +ID;PWXL;N;E +B;X70;Y481;D0 +C;X1;Y1;K"alias" +C;X2;K"code" +C;X3;K"comments" +C;X4;K"isEffect" +C;X5;K"version" +C;X6;K"useInEditor" +C;X7;K"sort" +C;X8;K"race" +C;X9;K"InBeta" +C;X1;Y2;K"BPSE" +C;X2;K"BPSE" +C;X3;K"Pause" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y3;K"BSTN" +C;X2;K"BSTN" +C;X3;K"Stun" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y4;K"Bchd" +C;X2;K"Bchd" +C;X3;K"CargoHoldDeath " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y5;K"Bdef" +C;X2;K"Bdef" +C;X3;K"Defense " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y6;K"Bdet" +C;X2;K"Bdet" +C;X3;K"Detected " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y7;K"Bfre" +C;X2;K"Bfre" +C;X3;K"Freeze " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y8;K"Bfro" +C;X2;K"Bfro" +C;X3;K"Frost " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y9;K"Bvul" +C;X2;K"Bvul" +C;X3;K"Invulnerable " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y10;K"Bpoi" +C;X2;K"Bpoi" +C;X3;K"PoisonAttack " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y11;K"Bpsd" +C;X2;K"Bpsd" +C;X3;K"PoisonAttackStackDoT " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y12;K"Bpsi" +C;X2;K"Bpsi" +C;X3;K"PoisonAttackStackInfo" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y13;K"Bsha" +C;X2;K"Bsha" +C;X3;K"SharedVision " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y14;K"Bspe" +C;X2;K"Bspe" +C;X3;K"SpeedBonus " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y15;K"Btrv" +C;X2;K"Btrv" +C;X3;K"TeleportReveal " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y16;K"Bclf" +C;X2;K"Bclf" +C;X3;K"CloudOfFog " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y17;K"Bcmg" +C;X2;K"Bcmg" +C;X3;K"ControlMagic " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y18;K"Bhea" +C;X2;K"Bhea" +C;X3;K"Heal " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y19;K"Binf" +C;X2;K"Binf" +C;X3;K"InnerFire " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y20;K"Binv" +C;X2;K"Binv" +C;X3;K"Invisibility " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y21;K"Bmlc" +C;X2;K"Bmlc" +C;X3;K"MagicLeashCaster " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y22;K"Bmlt" +C;X2;K"Bmlt" +C;X3;K"MagicLeashTarget " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y23;K"Bmil" +C;X2;K"Bmil" +C;X3;K"Militia " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y24;K"Bpxf" +C;X2;K"Bpxf" +C;X3;K"PhoenixFire " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y25;K"Bphx" +C;X2;K"Bphx" +C;X3;K"Phoenix " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y26;K"Bply" +C;X2;K"Bply" +C;X3;K"Polymorph " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y27;K"Bslo" +C;X2;K"Bslo" +C;X3;K"Slow " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y28;K"BHab" +C;X2;K"BHab" +C;X3;K"AuraBrilliance " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y29;K"BHad" +C;X2;K"BHad" +C;X3;K"AuraDevotion " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y30;K"BHav" +C;X2;K"BHav" +C;X3;K"Avatar " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y31;K"BHbn" +C;X2;K"BHbn" +C;X3;K"Banish " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y32;K"BHbd" +C;X2;K"BHbd" +C;X3;K"Blizzard " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y33;K"BHbz" +C;X2;K"BHbz" +C;X3;K"BlizzardAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y34;K"BHds" +C;X2;K"BHds" +C;X3;K"DivineShield " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y35;K"Bdcb" +C;X2;K"Bdcb" +C;X3;K"DrainCaster " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y36;K"Bdcl" +C;X2;K"Bdcl" +C;X3;K"DrainCasterLife " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y37;K"Bdcm" +C;X2;K"Bdcm" +C;X3;K"DrainCasterMana " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y38;K"Bdtb" +C;X2;K"Bdtb" +C;X3;K"DrainTarget " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y39;K"Bdtl" +C;X2;K"Bdtl" +C;X3;K"DrainTargetLife " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y40;K"Bdtm" +C;X2;K"Bdtm" +C;X3;K"DrainTargetMana " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y41;K"BHfs" +C;X2;K"BHfs" +C;X3;K"FlameStrike " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y42;K"BHtc" +C;X2;K"BHtc" +C;X3;K"ThunderClap " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y43;K"BHwe" +C;X2;K"BHwe" +C;X3;K"WaterElemental " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y44;K"Bakb" +C;X2;K"Bakb" +C;X3;K"AuraKotoBeast " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y45;K"Boar" +C;X2;K"Boar" +C;X3;K"AuraRegenLife " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y46;K"Barm" +C;X2;K"Barm" +C;X3;K"AuraRegenMana " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y47;K"Bbof" +C;X2;K"Bbof" +C;X3;K"BallsOfFire " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y48;K"Bbsk" +C;X2;K"Bbsk" +C;X3;K"BerserkerRage " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y49;K"Bblo" +C;X2;K"Bblo" +C;X3;K"Bloodlust " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y50;K"Bdvv" +C;X2;K"Bdvv" +C;X3;K"DevourVision " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y51;K"Bdig" +C;X2;K"Bdig" +C;X3;K"Digesting " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y52;K"Bens" +C;X2;K"Bens" +C;X3;K"Ensnare " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y53;K"Bena" +C;X2;K"Bena" +C;X3;K"EnsnareAir " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y54;K"Beng" +C;X2;K"Beng" +C;X3;K"EnsnareGround " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y55;K"Beye" +C;X2;K"Beye" +C;X3;K"EvilEye " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y56;K"Bhwd" +C;X2;K"Bhwd" +C;X3;K"HealingWard " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y57;K"Blsh" +C;X2;K"Blsh" +C;X3;K"LightningShield " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y58;K"Blsa" +C;X2;K"Blsa" +C;X3;K"LightningShieldAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y59;K"Bliq" +C;X2;K"Bliq" +C;X3;K"LiquidFire " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y60;K"Bprg" +C;X2;K"Bprg" +C;X3;K"Purge " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y61;K"Bspl" +C;X2;K"Bspl" +C;X3;K"SpiritLink " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y62;K"Bstt" +C;X2;K"Bstt" +C;X3;K"StasisTrapTrigger " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y63;K"BOac" +C;X2;K"BOac" +C;X3;K"AuraCommand " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y64;K"BOae" +C;X2;K"BOae" +C;X3;K"AuraEndurance " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y65;K"BOeq" +C;X2;K"BOeq" +C;X3;K"Earthquake " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y66;K"BOea" +C;X2;K"BOea" +C;X3;K"EarthquakeAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y67;K"BOhx" +C;X2;K"BOhx" +C;X3;K"Hex " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y68;K"BOmi" +C;X2;K"BOmi" +C;X3;K"MirrorImage " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y69;K"BOsh" +C;X2;K"BOsh" +C;X3;K"Shockwave " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y70;K"BOsf" +C;X2;K"BOsf" +C;X3;K"SpiritWolf " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y71;K"BOvd" +C;X2;K"BOvd" +C;X3;K"Voodoo " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y72;K"BOvc" +C;X2;K"BOvc" +C;X3;K"VoodooCaster " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y73;K"BOwd" +C;X2;K"BOwd" +C;X3;K"Ward " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y74;K"BOww" +C;X2;K"BOww" +C;X3;K"WhirlwindAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y75;K"BOwk" +C;X2;K"BOwk" +C;X3;K"WindWalk " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y76;K"Bbar" +C;X2;K"Bbar" +C;X3;K"Barkskin " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y77;K"Bcor" +C;X2;K"Bcor" +C;X3;K"CorrosiveBreath " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y78;K"Bcyc" +C;X2;K"Bcyc" +C;X3;K"Cyclone " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y79;K"Bcy2" +C;X2;K"Bcy2" +C;X3;K"CycloneTwo " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y80;K"Beat" +C;X2;K"Beat" +C;X3;K"EatTree " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y81;K"Bfae" +C;X2;K"Bfae" +C;X3;K"FaerieFire " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y82;K"Bgra" +C;X2;K"Bgra" +C;X3;K"GrabTree " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y83;K"Bmfl" +C;X2;K"Bmfl" +C;X3;K"ManaFlare " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y84;K"Bmfa" +C;X2;K"Bmfa" +C;X3;K"ManaFlareAoe " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y85;K"Bpsh" +C;X2;K"Bpsh" +C;X3;K"PhaseShift " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y86;K"Brej" +C;X2;K"Brej" +C;X3;K"Rejuvination " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y87;K"Broa" +C;X2;K"Broa" +C;X3;K"Roar " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y88;K"Bspo" +C;X2;K"Bspo" +C;X3;K"SlowPoison " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y89;K"Bssd" +C;X2;K"Bssd" +C;X3;K"SlowPoisonStackDoT " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y90;K"Bssi" +C;X2;K"Bssi" +C;X3;K"SlowPoisonStackInfo " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y91;K"Bvng" +C;X2;K"Bvng" +C;X3;K"Vengeance " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y92;K"BEah" +C;X2;K"BEah" +C;X3;K"AuraThorns " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y93;K"BEar" +C;X2;K"BEar" +C;X3;K"AuraTrueshot " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y94;K"BEer" +C;X2;K"BEer" +C;X3;K"EntanglingRoots " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y95;K"BEfn" +C;X2;K"BEfn" +C;X3;K"ForceOfNature " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y96;K"BEim" +C;X2;K"BEim" +C;X3;K"Immolation " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y97;K"BEia" +C;X2;K"BEia" +C;X3;K"ImmolationAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y98;K"BEme" +C;X2;K"BEme" +C;X3;K"Metamorphosis " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y99;K"BEst" +C;X2;K"BEst" +C;X3;K"Scout " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y100;K"BEsh" +C;X2;K"BEsh" +C;X3;K"ShadowStrike " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y101;K"BEsv" +C;X2;K"BEsv" +C;X3;K"SpiritOfVengeance " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y102;K"Bams" +C;X2;K"Bams" +C;X3;K"AntiMagicShell " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y103;K"Bam2" +C;X2;K"Bam2" +C;X3;K"AntiMagicShell (Matrix)" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y104;K"Babr" +C;X2;K"Babr" +C;X3;K"AuraBlightRegen " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y105;K"Bapl" +C;X2;K"Bapl" +C;X3;K"AuraPlague " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y106;K"Bcri" +C;X2;K"Bcri" +C;X3;K"Cripple " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y107;K"Bcrs" +C;X2;K"Bcrs" +C;X3;K"Curse " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y108;K"Bfrz" +C;X2;K"Bfrz" +C;X3;K"FreezingBreath " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y109;K"Bplg" +C;X2;K"Bplg" +C;X3;K"PlagueWard " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y110;K"Bpoc" +C;X2;K"Bpoc" +C;X3;K"Possession" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y111;K"Bpos" +C;X2;K"Bpos" +C;X3;K"Possession" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y112;K"Brai" +C;X2;K"Brai" +C;X3;K"RaiseDead " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y113;K"Brpb" +C;X2;K"Brpb" +C;X3;K"Replenish " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y114;K"Brpl" +C;X2;K"Brpl" +C;X3;K"ReplenishLife " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y115;K"Brpm" +C;X2;K"Brpm" +C;X3;K"ReplenishMana " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y116;K"Bspa" +C;X2;K"Bspa" +C;X3;K"SpiderAttack " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y117;K"Buhf" +C;X2;K"Buhf" +C;X3;K"UnholyFrenzy " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y118;K"Buns" +C;X2;K"Buns" +C;X3;K"Unsummon " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y119;K"Bweb" +C;X2;K"Bweb" +C;X3;K"Web " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y120;K"Bwea" +C;X2;K"Bwea" +C;X3;K"WebAir " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y121;K"BUan" +C;X2;K"BUan" +C;X3;K"AnimateDead " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y122;K"BUau" +C;X2;K"BUau" +C;X3;K"AuraUnholy " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y123;K"BUav" +C;X2;K"BUav" +C;X3;K"AuraVampiric " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y124;K"BUcb" +C;X2;K"BUcb" +C;X3;K"CarrionScarab " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y125;K"BUcs" +C;X2;K"BUcs" +C;X3;K"CarrionSwarm " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y126;K"BUdd" +C;X2;K"BUdd" +C;X3;K"DeathAndDecayAoe " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y127;K"BUfa" +C;X2;K"BUfa" +C;X3;K"FrostArmor " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y128;K"BUim" +C;X2;K"BUim" +C;X3;K"Impale " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y129;K"BUsl" +C;X2;K"BUsl" +C;X3;K"Sleep " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y130;K"BUsp" +C;X2;K"BUsp" +C;X3;K"SleepPause " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y131;K"BUst" +C;X2;K"BUst" +C;X3;K"SleepStun " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y132;K"BUts" +C;X2;K"BUts" +C;X3;K"ThornyShield " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y133;K"Basl" +C;X2;K"Basl" +C;X3;K"AuraSlow " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y134;K"BCbf" +C;X2;K"BCbf" +C;X3;K"BreathOfFrost " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y135;K"BCtc" +C;X2;K"BCtc" +C;X3;K"CreepThunderClap " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y136;K"Bfzy" +C;X2;K"Bfzy" +C;X3;K"Frenzy " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y137;K"Bmec" +C;X2;K"Bmec" +C;X3;K"MechanicalCritter " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y138;K"BNmr" +C;X2;K"BNmr" +C;X3;K"MindRot " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y139;K"Bpig" +C;X2;K"Bpig" +C;X3;K"PandaImmolation " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y140;K"BNpi" +C;X2;K"BNpi" +C;X3;K"PermImmolation " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y141;K"BNsa" +C;X2;K"BNsa" +C;X3;K"Sanctuary " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y142;K"Bshs" +C;X2;K"Bshs" +C;X3;K"ShadowSight " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y143;K"BNss" +C;X2;K"BNss" +C;X3;K"SpellShield " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y144;K"Btdg" +C;X2;K"Btdg" +C;X3;K"TornadoDamageAoe " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y145;K"Btsp" +C;X2;K"Btsp" +C;X3;K"TornadoSpin " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y146;K"Btsa" +C;X2;K"Btsa" +C;X3;K"TornadoSpinAoe " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y147;K"BNba" +C;X2;K"BNba" +C;X3;K"BlackArrow " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y148;K"BNbf" +C;X2;K"BNbf" +C;X3;K"BreathOfFire " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y149;K"BHca" +C;X2;K"BHca" +C;X3;K"ColdArrow " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y150;K"Bcsd" +C;X2;K"Bcsd" +C;X3;K"ColdArrowStackDoT " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y151;K"Bcsi" +C;X2;K"Bcsi" +C;X3;K"ColdArrowStackInfo " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y152;K"BNdm" +C;X2;K"BNdm" +C;X3;K"DarkMinion " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y153;K"BNdo" +C;X2;K"BNdo" +C;X3;K"Doom " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y154;K"BNdi" +C;X2;K"BNdi" +C;X3;K"DoomMinion " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y155;K"BNdh" +C;X2;K"BNdh" +C;X3;K"DrunkenHaze " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y156;K"BNef" +C;X2;K"BNef" +C;X3;K"ElementalFury " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y157;K"BNht" +C;X2;K"BNht" +C;X3;K"HowlOfTerror " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y158;K"BNms" +C;X2;K"BNms" +C;X3;K"ManaShield " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y159;K"BNsi" +C;X2;K"BNsi" +C;X3;K"Silence " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y160;K"BNst" +C;X2;K"BNst" +C;X3;K"Stampede " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y161;K"BNsg" +C;X2;K"BNsg" +C;X3;K"SummonGrizzly " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y162;K"BNsq" +C;X2;K"BNsq" +C;X3;K"SummonQuillbeast " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y163;K"BNsw" +C;X2;K"BNsw" +C;X3;K"SummonWarEagle " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y164;K"BNto" +C;X2;K"BNto" +C;X3;K"Tornado " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y165;K"BNwm" +C;X2;K"BNwm" +C;X3;K"WateryMinion " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y166;K"BNbr" +C;X2;K"BNbr" +C;X3;K"BattleRoar " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y167;K"BNdc" +C;X2;K"BNdc" +C;X3;K"DarkConversion " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y168;K"BNin" +C;X2;K"BNin" +C;X3;K"Infernal " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y169;K"BNpa" +C;X2;K"BNpa" +C;X3;K"Parasite " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y170;K"BNpm" +C;X2;K"BNpm" +C;X3;K"ParasiteMinion " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y171;K"BNrd" +C;X2;K"BNrd" +C;X3;K"RainOfFire " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y172;K"BNrf" +C;X2;K"BNrf" +C;X3;K"RainOfFireAoe" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y173;K"BNsl" +C;X2;K"BNsl" +C;X3;K"SoulPreservation " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y174;K"BIcb" +C;X2;K"BIcb" +C;X3;K"Corruption " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y175;K"BFig" +C;X2;K"BFig" +C;X3;K"Figurine " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y176;K"BIcf" +C;X2;K"BIcf" +C;X3;K"ItemCloakOfFlames " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y177;K"BIil" +C;X2;K"BIil" +C;X3;K"ItemIllusion " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y178;K"BIrb" +C;X2;K"BIrb" +C;X3;K"Rebirth " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y179;K"BIrg" +C;X2;K"BIrg" +C;X3;K"Regeneration " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y180;K"BIrl" +C;X2;K"BIrl" +C;X3;K"RegenLife " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y181;K"BIrm" +C;X2;K"BIrm" +C;X3;K"RegenMana " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y182;K"BIsv" +C;X2;K"BIsv" +C;X3;K"SoulTrapVision " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y183;K"BIsh" +C;X2;K"BIsh" +C;X3;K"SpiritTroll " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y184;K"BIwb" +C;X2;K"BIwb" +C;X3;K"ItemWeb " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y185;K"BImo" +C;X2;K"BImo" +C;X3;K"ItemMonsterLure " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y186;K"BIpv" +C;X2;K"BIpv" +C;X3;K"ItemVampirePotion " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y187;K"Xclf" +C;X2;K"Xclf" +C;X3;K"CloudOfFog " +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y188;K"Xfla" +C;X2;K"Xfla" +C;X3;K"Flare " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y189;K"XHbz" +C;X2;K"XHbz" +C;X3;K"Blizzard " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y190;K"XHfs" +C;X2;K"XHfs" +C;X3;K"FlameStrike " +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"human" +C;X9;K1 +C;X1;Y191;K"Xbof" +C;X2;K"Xbof" +C;X3;K"BallsOfFire " +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y192;K"XOeq" +C;X2;K"XOeq" +C;X3;K"Earthquake " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y193;K"XOre" +C;X2;K"XOre" +C;X3;K"Reincarnation " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"orc" +C;X9;K1 +C;X1;Y194;K"Xesn" +C;X2;K"Xesn" +C;X3;K"Sentinel " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y195;K"XEsf" +C;X2;K"XEsf" +C;X3;K"Starfall " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y196;K"XEtq" +C;X2;K"XEtq" +C;X3;K"Tranquility " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y197;K"XUdd" +C;X2;K"XUdd" +C;X3;K"DeathAndDecay " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y198;K"XNmo" +C;X2;K"XNmo" +C;X3;K"Monsoon " +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y199;K"XErc" +C;X2;K"XErc" +C;X3;K"RainOfChaos " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y200;K"XErf" +C;X2;K"XErf" +C;X3;K"RainOfFire " +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y201;K"XIct" +C;X2;K"XIct" +C;X3;K"ItemChangeTOD " +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"item" +C;X8;K"other" +C;X9;K1 +C;X1;Y202;K"AEsd" +C;X2;K"AEsd" +C;X3;K"Starfall target" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y203;K"AEtr" +C;X2;K"AEtr" +C;X3;K"Tranquility target" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y204;K"ANmd" +C;X2;K"ANmd" +C;X3;K"Monsoon " +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y205;K"Bivs" +C;X2;K"Bivs" +C;X3;K"Invisibility " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y206;K"BUad" +C;X2;K"BUad" +C;X3;K"AnimateDead " +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"hero" +C;X8;K"undead" +C;X9;K1 +C;X1;Y207;K"Bult" +C;X2;K"Bult" +C;X3;K"Ultravision" +C;X4;K0 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y208;K"BNab" +C;X2;K"BNab" +C;X3;K"AcidBomb" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y209;K"BNcr" +C;X2;K"BNcr" +C;X3;K"ChemicalRage" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y210;K"BNhs" +C;X2;K"BNhs" +C;X3;K"HealingSpray" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y211;K"XNhs" +C;X2;K"XNhs" +C;X3;K"HealingSpray" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y212;K"BNtm" +C;X2;K"BNtm" +C;X3;K"Transmute" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y213;K"BNeg" +C;X2;K"BNeg" +C;X3;K"EngineeringUpgrade" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y214;K"BNcs" +C;X2;K"BNcs" +C;X3;K"ClusterRockets" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y215;K"XNcs" +C;X2;K"XNcs" +C;X3;K"ClusterRockets" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y216;K"BNfy" +C;X2;K"BNfy" +C;X3;K"SummonFactory" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y217;K"BNcg" +C;X2;K"BNcg" +C;X3;K"ClockwerkGoblin" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y218;K"BNic" +C;X2;K"BNic" +C;X3;K"Incinerate" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y219;K"BNso" +C;X2;K"BNso" +C;X3;K"SoulBurn" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y220;K"BNlm" +C;X2;K"BNlm" +C;X3;K"LavaMonster" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y221;K"BNvc" +C;X2;K"BNvc" +C;X3;K"Volcano" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y222;K"BNva" +C;X2;K"BNva" +C;X3;K"VolcanoAOE" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y223;K"XNvc" +C;X2;K"XNvc" +C;X3;K"Volcano" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K"hero" +C;X8;K"other" +C;X9;K1 +C;X1;Y224;K"Xbdt" +C;X2;K"Xbdt" +C;X3;K"EFFECT_BASEDETECTOR" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y225;K"Xbli" +C;X2;K"Xbli" +C;X3;K"EFFECT_BLIGHT" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y226;K"Xdis" +C;X2;K"Xdis" +C;X3;K"EFFECT_HERODISSIPATE" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"other" +C;X9;K1 +C;X1;Y227;K"Xfhs" +C;X2;K"Xfhs" +C;X3;K"EFFECT_OnFireHumanSml" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y228;K"Xfhm" +C;X2;K"Xfhm" +C;X3;K"EFFECT_OnFireHumanMed" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y229;K"Xfhl" +C;X2;K"Xfhl" +C;X3;K"EFFECT_OnFireHumanLrg" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"human" +C;X9;K1 +C;X1;Y230;K"Xfos" +C;X2;K"Xfos" +C;X3;K"EFFECT_OnFireOrcSml" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y231;K"Xfom" +C;X2;K"Xfom" +C;X3;K"EFFECT_OnFireOrcMed" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y232;K"Xfol" +C;X2;K"Xfol" +C;X3;K"EFFECT_OnFireOrcLrg" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"orc" +C;X9;K1 +C;X1;Y233;K"Xfns" +C;X2;K"Xfns" +C;X3;K"EFFECT_OnFireNightElfSml" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y234;K"Xfnm" +C;X2;K"Xfnm" +C;X3;K"EFFECT_OnFireNightElfMed" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y235;K"Xfnl" +C;X2;K"Xfnl" +C;X3;K"EFFECT_OnFireNightElfLrg" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"nightelf" +C;X9;K1 +C;X1;Y236;K"Xfus" +C;X2;K"Xfus" +C;X3;K"EFFECT_OnFireUndeadSml" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y237;K"Xfum" +C;X2;K"Xfum" +C;X3;K"EFFECT_OnFireUndeadMed" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +C;X1;Y238;K"Xful" +C;X2;K"Xful" +C;X3;K"EFFECT_OnFireUndeadLrg" +C;X4;K1 +C;X5;K0 +C;X6;K1 +C;X7;K"unit" +C;X8;K"undead" +C;X9;K1 +E diff --git a/share/mpq/units/units/abilitybuffmetadata.slk b/share/mpq/units/units/abilitybuffmetadata.slk new file mode 100644 index 0000000..cf270ee --- /dev/null +++ b/share/mpq/units/units/abilitybuffmetadata.slk @@ -0,0 +1,391 @@ +ID;PWXL;N;E +B;X23;Y28;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"category" +C;X6;K"displayName" +C;X7;K"sort" +C;X8;K"type" +C;X9;K"changeFlags" +C;X10;K"importType" +C;X11;K"stringExt" +C;X12;K"caseSens" +C;X13;K"canBeEmpty" +C;X14;K"minVal" +C;X15;K"maxVal" +C;X16;K"forceNonNeg" +C;X17;K"version" +C;X18;K"section" +C;X1;Y2;K"fnam" +C;X2;K"EditorName" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_FEVAL_FNAM" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTName" +C;X16;K0 +C;X17;K1 +C;X1;Y3;K"fnsf" +C;X2;K"EditorSuffix" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_FEVAL_FNSF" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K50 +C;X16;K0 +C;X17;K1 +C;X1;Y4;K"ftip" +C;X2;K"Bufftip" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_FEVAL_FTIP" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y5;K"fube" +C;X2;K"Buffubertip" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_FEVAL_FUBE" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTUber" +C;X16;K0 +C;X17;K1 +C;X1;Y6;K"feff" +C;X2;K"isEffect" +C;X3;K"AbilityBuffData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_FEVAL_FEFF" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y7;K"frac" +C;X2;K"race" +C;X3;K"AbilityBuffData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_FEVAL_FRAC" +C;X8;K"unitRace" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y8;K"fart" +C;X2;K"Buffart" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FART" +C;X8;K"icon" +C;X9;K"i" +C;X10;K"Image" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X1;Y9;K"ftat" +C;X2;K"TargetArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTAT" +C;X8;K"modelList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y10;K"fsat" +C;X2;K"SpecialArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FSAT" +C;X8;K"modelList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y11;K"feat" +C;X2;K"EffectArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FEAT" +C;X8;K"modelList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y12;K"flig" +C;X2;K"LightningEffect" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FLIG" +C;X8;K"lightningEffect" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X1;Y13;K"fmat" +C;X2;K"Missileart" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FMAT" +C;X8;K"modelList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y14;K"fmsp" +C;X2;K"Missilespeed" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FMSP" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y15;K"fmac" +C;X2;K"Missilearc" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FMAC" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y16;K"fmho" +C;X2;K"MissileHoming" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FMHO" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y17;K"ftac" +C;X2;K"Targetattachcount" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTAC" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K6 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y18;K"fta0" +C;X2;K"Targetattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA0" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y19;K"fta1" +C;X2;K"Targetattach1" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA1" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y20;K"fta2" +C;X2;K"Targetattach2" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA2" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y21;K"fta3" +C;X2;K"Targetattach3" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA3" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y22;K"fta4" +C;X2;K"Targetattach4" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA4" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y23;K"fta5" +C;X2;K"Targetattach5" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FTA5" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y24;K"feft" +C;X2;K"Effectattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FEFT" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y25;K"fspt" +C;X2;K"Specialattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FSPT" +C;X8;K"stringList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y26;K"fefs" +C;X2;K"Effectsound" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"sound" +C;X6;K"WESTRING_FEVAL_FEFS" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y27;K"fefl" +C;X2;K"Effectsoundlooped" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"sound" +C;X6;K"WESTRING_FEVAL_FEFL" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X23;K1 +C;X1;Y28;K"fspd" +C;X2;K"Spelldetail" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_FEVAL_FSPD" +C;X8;K"spellDetail" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +E diff --git a/share/mpq/units/units/abilitydata.slk b/share/mpq/units/units/abilitydata.slk new file mode 100644 index 0000000..2a8b001 --- /dev/null +++ b/share/mpq/units/units/abilitydata.slk @@ -0,0 +1,67388 @@ +ID;PWXL;N;E +B;X95;Y804;D0 +C;X1;Y1;K"alias" +C;X2;K"code" +C;X3;K"comments" +C;X4;K"version" +C;X5;K"useInEditor" +C;X6;K"hero" +C;X7;K"item" +C;X8;K"sort" +C;X9;K"race" +C;X10;K"checkDep" +C;X11;K"levels" +C;X12;K"reqLevel" +C;X13;K"levelSkip" +C;X14;K"priority" +C;X15;K"targs1" +C;X16;K"Cast1" +C;X17;K"Dur1" +C;X18;K"HeroDur1" +C;X19;K"Cool1" +C;X20;K"Cost1" +C;X21;K"Area1" +C;X22;K"Rng1" +C;X23;K"DataA1" +C;X24;K"DataB1" +C;X25;K"DataC1" +C;X26;K"DataD1" +C;X27;K"DataE1" +C;X28;K"DataF1" +C;X29;K"DataG1" +C;X30;K"DataH1" +C;X31;K"DataI1" +C;X32;K"UnitID1" +C;X33;K"BuffID1" +C;X34;K"EfctID1" +C;X35;K"targs2" +C;X36;K"Cast2" +C;X37;K"Dur2" +C;X38;K"HeroDur2" +C;X39;K"Cool2" +C;X40;K"Cost2" +C;X41;K"Area2" +C;X42;K"Rng2" +C;X43;K"DataA2" +C;X44;K"DataB2" +C;X45;K"DataC2" +C;X46;K"DataD2" +C;X47;K"DataE2" +C;X48;K"DataF2" +C;X49;K"DataG2" +C;X50;K"DataH2" +C;X51;K"DataI2" +C;X52;K"UnitID2" +C;X53;K"BuffID2" +C;X54;K"EfctID2" +C;X55;K"targs3" +C;X56;K"Cast3" +C;X57;K"Dur3" +C;X58;K"HeroDur3" +C;X59;K"Cool3" +C;X60;K"Cost3" +C;X61;K"Area3" +C;X62;K"Rng3" +C;X63;K"DataA3" +C;X64;K"DataB3" +C;X65;K"DataC3" +C;X66;K"DataD3" +C;X67;K"DataE3" +C;X68;K"DataF3" +C;X69;K"DataG3" +C;X70;K"DataH3" +C;X71;K"DataI3" +C;X72;K"UnitID3" +C;X73;K"BuffID3" +C;X74;K"EfctID3" +C;X75;K"targs4" +C;X76;K"Cast4" +C;X77;K"Dur4" +C;X78;K"HeroDur4" +C;X79;K"Cool4" +C;X80;K"Cost4" +C;X81;K"Area4" +C;X82;K"Rng4" +C;X83;K"DataA4" +C;X84;K"DataB4" +C;X85;K"DataC4" +C;X86;K"DataD4" +C;X87;K"DataE4" +C;X88;K"DataF4" +C;X89;K"DataG4" +C;X90;K"DataH4" +C;X91;K"DataI4" +C;X92;K"UnitID4" +C;X93;K"BuffID4" +C;X94;K"EfctID4" +C;X95;K"InBeta" +C;X1;Y2;K"AHbz" +C;X2;K"AHbz" +C;X3;K"Arch Mage - Blizzard" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K6 +C;X20;K75 +C;X21;K200 +C;X22;K800 +C;X23;K6 +C;X24;K30 +C;X25;K6 +C;X26;K0.5 +C;X27;K0 +C;X28;K150 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHbd,BHbz" +C;X34;K"XHbz" +C;X35;K"_" +C;X36;K1 +C;X37;K0 +C;X38;K0 +C;X39;K6 +C;X40;K75 +C;X41;K200 +C;X42;K800 +C;X43;K8 +C;X44;K40 +C;X45;K7 +C;X46;K0.5 +C;X47;K0 +C;X48;K200 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHbd,BHbz" +C;X54;K"XHbz" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K6 +C;X60;K75 +C;X61;K200 +C;X62;K800 +C;X63;K10 +C;X64;K50 +C;X65;K10 +C;X66;K0.5 +C;X67;K0 +C;X68;K250 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHbd,BHbz" +C;X74;K"XHbz" +C;X75;K"_" +C;X76;K1 +C;X77;K0 +C;X78;K0 +C;X79;K6 +C;X80;K75 +C;X81;K200 +C;X82;K800 +C;X83;K10 +C;X84;K50 +C;X85;K10 +C;X86;K0.5 +C;X87;K0 +C;X88;K250 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHbd,BHbz" +C;X94;K"XHbz" +C;X95;K1 +C;X1;Y3;K"AHab" +C;X2;K"AHab" +C;X3;K"Arch Mage - Brilliance Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.75 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHab" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K1.5 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHab" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K2.25 +C;X64;K0 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHab" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K2.25 +C;X84;K0 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHab" +C;X95;K1 +C;X1;Y4;K"AHmt" +C;X2;K"AHmt" +C;X3;K"Arch Mage - Mass Teleport" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,vuln,invu,player,neutral,ally" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K20 +C;X20;K100 +C;X21;K700 +C;X22;K99999 +C;X23;K24 +C;X24;K3 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"ground,structure,vuln,invu,player,neutral,ally" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K20 +C;X40;K100 +C;X41;K700 +C;X42;K99999 +C;X43;K12 +C;X44;K5 +C;X45;K1 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"ground,structure,vuln,invu,player,neutral,ally" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K20 +C;X60;K100 +C;X61;K700 +C;X62;K99999 +C;X63;K12 +C;X64;K5 +C;X65;K1 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"ground,structure,vuln,invu,player,neutral,ally" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K20 +C;X80;K100 +C;X81;K700 +C;X82;K99999 +C;X83;K12 +C;X84;K5 +C;X85;K1 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y5;K"AHwe" +C;X2;K"AHwe" +C;X3;K"Arch Mage - Water Elemental" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K125 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hwat" +C;X33;K"BHwe" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K20 +C;X40;K125 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"hwt2" +C;X53;K"BHwe" +C;X55;K"_" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K20 +C;X60;K125 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"hwt3" +C;X73;K"BHwe" +C;X75;K"_" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K20 +C;X80;K125 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"hwt3" +C;X93;K"BHwe" +C;X95;K1 +C;X1;Y6;K"ANst" +C;X2;K"ANst" +C;X3;K"Beast Master - Stampede" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K180 +C;X20;K150 +C;X21;K1000 +C;X22;K300 +C;X23;K2 +C;X24;K55 +C;X25;K60 +C;X26;K275 +C;X27;K0.2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNst" +C;X35;K"ground,structure,debris,enemy,neutral" +C;X36;K0 +C;X37;K20 +C;X38;K20 +C;X39;K180 +C;X40;K200 +C;X41;K600 +C;X42;K1000 +C;X43;K2 +C;X44;K48 +C;X45;K50 +C;X46;K200 +C;X47;K0.2 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNst" +C;X55;K"ground,structure,debris,enemy,neutral" +C;X56;K0 +C;X57;K20 +C;X58;K20 +C;X59;K180 +C;X60;K200 +C;X61;K600 +C;X62;K1000 +C;X63;K2 +C;X64;K48 +C;X65;K50 +C;X66;K200 +C;X67;K0.2 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNst" +C;X75;K"ground,structure,debris,enemy,neutral" +C;X76;K0 +C;X77;K20 +C;X78;K20 +C;X79;K180 +C;X80;K200 +C;X81;K600 +C;X82;K1000 +C;X83;K2 +C;X84;K48 +C;X85;K50 +C;X86;K200 +C;X87;K0.2 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNst" +C;X95;K1 +C;X1;Y7;K"ANsg" +C;X2;K"ANsg" +C;X3;K"Beast Master - Summon Bear" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K70 +C;X18;K70 +C;X19;K40 +C;X20;K125 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ngz1" +C;X33;K"BNsg" +C;X35;K"_" +C;X36;K0 +C;X37;K70 +C;X38;K70 +C;X39;K40 +C;X40;K125 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ngz2" +C;X53;K"BNsg" +C;X55;K"_" +C;X56;K0 +C;X57;K70 +C;X58;K70 +C;X59;K40 +C;X60;K125 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ngz3" +C;X73;K"BNsg" +C;X75;K"_" +C;X76;K0 +C;X77;K70 +C;X78;K70 +C;X79;K40 +C;X80;K125 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ngz3" +C;X93;K"BNsg" +C;X95;K1 +C;X1;Y8;K"ANsq" +C;X2;K"ANsq" +C;X3;K"Beast Master - Summon Quilbeast" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K70 +C;X18;K70 +C;X19;K25 +C;X20;K75 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nqb1" +C;X33;K"BNsq" +C;X35;K"_" +C;X36;K0 +C;X37;K70 +C;X38;K70 +C;X39;K25 +C;X40;K75 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nqb2" +C;X53;K"BNsq" +C;X55;K"_" +C;X56;K0 +C;X57;K70 +C;X58;K70 +C;X59;K25 +C;X60;K75 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nqb3" +C;X73;K"BNsq" +C;X75;K"_" +C;X76;K0 +C;X77;K70 +C;X78;K70 +C;X79;K25 +C;X80;K75 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nqb3" +C;X93;K"BNsq" +C;X95;K1 +C;X1;Y9;K"ANsw" +C;X2;K"ANsw" +C;X3;K"Beast Master - Summon Hawk" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K70 +C;X18;K70 +C;X19;K70 +C;X20;K50 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nwe1" +C;X33;K"BNsw" +C;X35;K"_" +C;X36;K0 +C;X37;K70 +C;X38;K70 +C;X39;K70 +C;X40;K50 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nwe2" +C;X53;K"BNsw" +C;X55;K"_" +C;X56;K0 +C;X57;K70 +C;X58;K70 +C;X59;K70 +C;X60;K50 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nwe3" +C;X73;K"BNsw" +C;X75;K"_" +C;X76;K0 +C;X77;K70 +C;X78;K70 +C;X79;K70 +C;X80;K50 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nwe3" +C;X93;K"BNsw" +C;X95;K1 +C;X1;Y10;K"AOww" +C;X2;K"AOww" +C;X3;K"Blade Master - Bladestorm" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K7 +C;X18;K5 +C;X19;K180 +C;X20;K200 +C;X21;K200 +C;X22;K"-" +C;X23;K110 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOww" +C;X35;K"ground,structure,debris,enemy,neutral" +C;X36;K"-" +C;X37;K5 +C;X38;K5 +C;X39;K240 +C;X40;K250 +C;X41;K200 +C;X42;K"-" +C;X43;K150 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOww" +C;X55;K"ground,structure,debris,enemy,neutral" +C;X56;K"-" +C;X57;K5 +C;X58;K5 +C;X59;K240 +C;X60;K250 +C;X61;K200 +C;X62;K"-" +C;X63;K150 +C;X64;K0 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOww" +C;X75;K"ground,structure,debris,enemy,neutral" +C;X76;K"-" +C;X77;K5 +C;X78;K5 +C;X79;K240 +C;X80;K250 +C;X81;K200 +C;X82;K"-" +C;X83;K150 +C;X84;K0 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOww" +C;X95;K1 +C;X1;Y11;K"AOcr" +C;X2;K"AOcr" +C;X3;K"Blade Master - Critical Strike" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K0 +C;X22;K"-" +C;X23;K15 +C;X24;K2 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,enemy,neutral" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K0 +C;X42;K"-" +C;X43;K15 +C;X44;K3 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,enemy,neutral" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K0 +C;X62;K"-" +C;X63;K15 +C;X64;K4 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,enemy,neutral" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K0 +C;X82;K"-" +C;X83;K15 +C;X84;K4 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y12;K"AOmi" +C;X2;K"AOmi" +C;X3;K"Blade Master - Mirror Image" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K3 +C;X20;K125 +C;X21;K1000 +C;X22;K128 +C;X23;K1 +C;X24;K0 +C;X25;K2 +C;X26;K0.5 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOmi" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K3 +C;X40;K125 +C;X41;K1000 +C;X42;K128 +C;X43;K2 +C;X44;K0 +C;X45;K2 +C;X46;K0.5 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOmi" +C;X55;K"_" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K3 +C;X60;K125 +C;X61;K1000 +C;X62;K128 +C;X63;K3 +C;X64;K0 +C;X65;K2 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOmi" +C;X75;K"_" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K3 +C;X80;K150 +C;X81;K1000 +C;X82;K128 +C;X83;K3 +C;X84;K0 +C;X85;K2 +C;X86;K0.5 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOmi" +C;X95;K1 +C;X1;Y13;K"AOwk" +C;X2;K"AOwk" +C;X3;K"Blade Master - Wind Walk" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K5 +C;X20;K75 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.6 +C;X24;K0.1 +C;X25;K40 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOwk" +C;X35;K"air,ground,enemy,neutral" +C;X36;K"-" +C;X37;K40 +C;X38;K40 +C;X39;K5 +C;X40;K75 +C;X41;K"-" +C;X42;K"-" +C;X43;K0.6 +C;X44;K0.4 +C;X45;K70 +C;X46;K1 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOwk" +C;X55;K"air,ground,enemy,neutral" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K5 +C;X60;K75 +C;X61;K"-" +C;X62;K"-" +C;X63;K0.6 +C;X64;K0.7 +C;X65;K100 +C;X66;K1 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOwk" +C;X75;K"air,ground,enemy,neutral" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K5 +C;X80;K75 +C;X81;K"-" +C;X82;K"-" +C;X83;K0.6 +C;X84;K0.7 +C;X85;K100 +C;X86;K1 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOwk" +C;X95;K1 +C;X1;Y14;K"AHbn" +C;X2;K"AHbn" +C;X3;K"Blood Mage - Banish" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonsapper,organic" +C;X16;K0 +C;X17;K12 +C;X18;K4 +C;X19;K0 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K0.5 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHbn" +C;X35;K"air,ground,nonsapper,organic" +C;X36;K"-" +C;X37;K15 +C;X38;K5 +C;X39;K0 +C;X40;K60 +C;X41;K"-" +C;X42;K800 +C;X43;K0.5 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHbn" +C;X55;K"air,ground,nonsapper,organic" +C;X56;K"-" +C;X57;K18 +C;X58;K6 +C;X59;K0 +C;X60;K50 +C;X61;K"-" +C;X62;K800 +C;X63;K0.5 +C;X64;K0 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHbn" +C;X75;K"air,ground,nonsapper,organic" +C;X76;K"-" +C;X77;K18 +C;X78;K6 +C;X79;K1 +C;X80;K75 +C;X81;K"-" +C;X82;K800 +C;X83;K0.5 +C;X84;K0 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHbn" +C;X95;K1 +C;X1;Y15;K"AHfs" +C;X2;K"AHfs" +C;X3;K"Blood Mage - Flame Strike" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,friend,structure,self,tree,debris" +C;X16;K1.33 +C;X17;K9 +C;X18;K2.67 +C;X19;K10 +C;X20;K135 +C;X21;K200 +C;X22;K800 +C;X23;K15 +C;X24;K0.33 +C;X25;K4 +C;X26;K1 +C;X27;K0.75 +C;X28;K90 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHfs" +C;X34;K"XHfs" +C;X35;K"ground,enemy,neutral,friend,structure,self,tree,debris" +C;X36;K1.33 +C;X37;K9 +C;X38;K2.67 +C;X39;K10 +C;X40;K135 +C;X41;K200 +C;X42;K800 +C;X43;K26.666 +C;X44;K0.33 +C;X45;K6 +C;X46;K1 +C;X47;K0.75 +C;X48;K160 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHfs" +C;X54;K"XHfs" +C;X55;K"ground,enemy,neutral,friend,structure,self,tree,debris" +C;X56;K1.33 +C;X57;K9 +C;X58;K2.67 +C;X59;K10 +C;X60;K135 +C;X61;K200 +C;X62;K800 +C;X63;K36.666 +C;X64;K0.33 +C;X65;K8 +C;X66;K1 +C;X67;K0.75 +C;X68;K220 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHfs" +C;X74;K"XHfs" +C;X75;K"ground,enemy,neutral,friend,structure,self,tree,debris" +C;X76;K1.33 +C;X77;K9 +C;X78;K2.67 +C;X79;K10 +C;X80;K135 +C;X81;K200 +C;X82;K800 +C;X83;K36.666 +C;X84;K0.33 +C;X85;K8 +C;X86;K1 +C;X87;K0.75 +C;X88;K220 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHfs" +C;X94;K"XHfs" +C;X95;K1 +C;X1;Y16;K"AHdr" +C;X2;K"AHdr" +C;X3;K"Blood Mage - Siphon Mana" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,notself" +C;X16;K0 +C;X17;K6 +C;X18;K6 +C;X19;K6 +C;X20;K10 +C;X21;K800 +C;X22;K600 +C;X23;K0 +C;X24;K15 +C;X25;K1 +C;X26;K0 +C;X27;K30 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K3 +C;X33;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X35;K"air,ground,organic,notself" +C;X36;K0 +C;X37;K6 +C;X38;K6 +C;X39;K6 +C;X40;K10 +C;X41;K800 +C;X42;K600 +C;X43;K0 +C;X44;K30 +C;X45;K1 +C;X46;K0 +C;X47;K60 +C;X48;K0 +C;X49;K0 +C;X50;K1 +C;X51;K3 +C;X53;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X55;K"air,ground,organic,notself" +C;X56;K0 +C;X57;K6 +C;X58;K6 +C;X59;K6 +C;X60;K10 +C;X61;K800 +C;X62;K600 +C;X63;K0 +C;X64;K45 +C;X65;K1 +C;X66;K0 +C;X67;K90 +C;X68;K0 +C;X69;K0 +C;X70;K1 +C;X71;K3 +C;X73;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X75;K"air,ground,organic,notself" +C;X76;K0 +C;X77;K6 +C;X78;K6 +C;X79;K6 +C;X80;K10 +C;X81;K800 +C;X82;K600 +C;X83;K0 +C;X84;K55 +C;X85;K1 +C;X86;K0 +C;X87;K50 +C;X88;K0 +C;X89;K0 +C;X90;K1 +C;X91;K3 +C;X93;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X95;K1 +C;X1;Y17;K"AHpx" +C;X2;K"AHpx" +C;X3;K"Blood Mage - Phoenix" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K180 +C;X20;K175 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hphx" +C;X35;K"_" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K120 +C;X40;K125 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"hphx" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K120 +C;X60;K125 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"hphx" +C;X75;K"_" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K120 +C;X80;K125 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"hphx" +C;X95;K1 +C;X1;Y18;K"AUcb" +C;X2;K"AUcb" +C;X3;K"Crypt Lord - Carrion Scarabs" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"dead" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K6 +C;X20;K30 +C;X21;K900 +C;X22;K900 +C;X23;K1 +C;X24;K0 +C;X25;K"ucs1" +C;X26;K"-" +C;X27;K5 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcb" +C;X35;K"dead" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K6 +C;X40;K30 +C;X41;K900 +C;X42;K900 +C;X43;K1 +C;X44;K0 +C;X45;K"ucs2" +C;X46;K"-" +C;X47;K5 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUcb" +C;X55;K"dead" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K6 +C;X60;K30 +C;X61;K900 +C;X62;K900 +C;X63;K1 +C;X64;K0 +C;X65;K"ucs3" +C;X66;K"-" +C;X67;K5 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUcb" +C;X75;K"dead" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K6 +C;X80;K30 +C;X81;K900 +C;X82;K900 +C;X83;K1 +C;X84;K0 +C;X85;K"ucs3" +C;X86;K"-" +C;X87;K5 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUcb" +C;X95;K1 +C;X1;Y19;K"AUim" +C;X2;K"AUim" +C;X3;K"Crypt Lord - Impale" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K2 +C;X18;K1 +C;X19;K9 +C;X20;K100 +C;X21;K250 +C;X22;K700 +C;X23;K600 +C;X24;K0.3 +C;X25;K50 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUim" +C;X35;K"ground,enemy,neutral,organic" +C;X36;K0 +C;X37;K3 +C;X38;K2 +C;X39;K9 +C;X40;K100 +C;X41;K250 +C;X42;K700 +C;X43;K600 +C;X44;K0.3 +C;X45;K80 +C;X46;K1 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUim" +C;X55;K"ground,enemy,neutral,organic" +C;X56;K0 +C;X57;K4 +C;X58;K3 +C;X59;K9 +C;X60;K100 +C;X61;K250 +C;X62;K700 +C;X63;K600 +C;X64;K0.3 +C;X65;K110 +C;X66;K1 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUim" +C;X75;K"ground,enemy,neutral,organic" +C;X76;K0 +C;X77;K4 +C;X78;K3 +C;X79;K9 +C;X80;K100 +C;X81;K300 +C;X82;K700 +C;X83;K600 +C;X84;K0.3 +C;X85;K110 +C;X86;K1 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUim" +C;X95;K1 +C;X1;Y20;K"AUls" +C;X2;K"AUls" +C;X3;K"Crypt Lord - Locust Swarm" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K180 +C;X20;K150 +C;X21;K800 +C;X22;K"-" +C;X23;K20 +C;X24;K0.2 +C;X25;K7 +C;X26;K0.75 +C;X27;K20 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uloc" +C;X35;K"air,ground,structure,neutral,enemy" +C;X36;K0 +C;X37;K30 +C;X38;K30 +C;X39;K180 +C;X40;K150 +C;X41;K800 +C;X42;K"-" +C;X43;K20 +C;X44;K0.2 +C;X45;K7 +C;X46;K1 +C;X47;K20 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"uloc" +C;X55;K"air,ground,structure,neutral,enemy" +C;X56;K0 +C;X57;K30 +C;X58;K30 +C;X59;K180 +C;X60;K150 +C;X61;K800 +C;X62;K"-" +C;X63;K20 +C;X64;K0.2 +C;X65;K7 +C;X66;K1 +C;X67;K20 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"uloc" +C;X75;K"air,ground,structure,neutral,enemy" +C;X76;K0 +C;X77;K30 +C;X78;K30 +C;X79;K180 +C;X80;K150 +C;X81;K800 +C;X82;K"-" +C;X83;K20 +C;X84;K0.2 +C;X85;K7 +C;X86;K1 +C;X87;K20 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"uloc" +C;X95;K1 +C;X1;Y21;K"AUts" +C;X2;K"AUts" +C;X3;K"Crypt Lord - Spiked Carapace" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K0.15 +C;X24;K1 +C;X25;K3 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUts" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K0.25 +C;X44;K1 +C;X45;K5 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUts" +C;X55;K"_" +C;X56;K0 +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K0.35 +C;X64;K1 +C;X65;K7 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUts" +C;X75;K"_" +C;X76;K0 +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K0.35 +C;X84;K1 +C;X85;K7 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUts" +C;X95;K1 +C;X1;Y22;K"ANba" +C;X2;K"ANba" +C;X3;K"Dark Ranger - Black Arrow" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K0 +C;X20;K6 +C;X21;K"-" +C;X22;K600 +C;X23;K2 +C;X24;K1 +C;X25;K80 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ndr1" +C;X33;K"BNba,BNdm" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K"-" +C;X37;K2 +C;X38;K0 +C;X39;K0 +C;X40;K6 +C;X41;K"-" +C;X42;K700 +C;X43;K10 +C;X44;K1 +C;X45;K80 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ndr2" +C;X53;K"BNba,BNdm" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K"-" +C;X57;K2 +C;X58;K0 +C;X59;K0 +C;X60;K6 +C;X61;K"-" +C;X62;K700 +C;X63;K20 +C;X64;K1 +C;X65;K80 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ndr3" +C;X73;K"BNba,BNdm" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K"-" +C;X77;K2 +C;X78;K0 +C;X79;K0 +C;X80;K6 +C;X81;K"-" +C;X82;K700 +C;X83;K20 +C;X84;K1 +C;X85;K80 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ndr3" +C;X93;K"BNba,BNdm" +C;X95;K1 +C;X1;Y23;K"ANch" +C;X2;K"ANch" +C;X3;K"Dark Ranger - Charm" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,enemy,neutral,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K45 +C;X20;K150 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,nonhero,enemy,neutral,organic" +C;X36;K"-" +C;X37;K0 +C;X38;K0 +C;X39;K30 +C;X40;K125 +C;X41;K"-" +C;X42;K700 +C;X43;K5 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,nonhero,enemy,neutral,organic" +C;X56;K"-" +C;X57;K0 +C;X58;K0 +C;X59;K30 +C;X60;K125 +C;X61;K"-" +C;X62;K700 +C;X63;K5 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,nonhero,enemy,neutral,organic" +C;X76;K"-" +C;X77;K0 +C;X78;K0 +C;X79;K30 +C;X80;K125 +C;X81;K"-" +C;X82;K700 +C;X83;K5 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y24;K"ANdr" +C;X2;K"AHdr" +C;X3;K"Dark Ranger - Drain" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K8 +C;X20;K75 +C;X21;K800 +C;X22;K500 +C;X23;K25 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X33;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X35;K"air,ground,organic" +C;X36;K0 +C;X37;K8 +C;X38;K8 +C;X39;K8 +C;X40;K75 +C;X41;K800 +C;X42;K500 +C;X43;K40 +C;X44;K0 +C;X45;K1 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X55;K"air,ground,organic" +C;X56;K0 +C;X57;K8 +C;X58;K8 +C;X59;K8 +C;X60;K75 +C;X61;K800 +C;X62;K500 +C;X63;K55 +C;X64;K0 +C;X65;K1 +C;X66;K0 +C;X67;K0 +C;X68;K0 +C;X69;K0 +C;X70;K0 +C;X71;K0 +C;X73;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X75;K"air,ground,organic" +C;X76;K0 +C;X77;K8 +C;X78;K8 +C;X79;K8 +C;X80;K75 +C;X81;K800 +C;X82;K500 +C;X83;K50 +C;X84;K0 +C;X85;K1 +C;X86;K0 +C;X87;K0 +C;X88;K0 +C;X89;K0 +C;X90;K0 +C;X91;K0 +C;X93;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X95;K1 +C;X1;Y25;K"ANsi" +C;X2;K"ANsi" +C;X3;K"Dark Ranger - Silence" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K16 +C;X18;K8 +C;X19;K15 +C;X20;K75 +C;X21;K200 +C;X22;K900 +C;X23;K8 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNsi" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K0 +C;X37;K20 +C;X38;K10 +C;X39;K15 +C;X40;K75 +C;X41;K275 +C;X42;K900 +C;X43;K8 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNsi" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K0 +C;X57;K24 +C;X58;K12 +C;X59;K15 +C;X60;K75 +C;X61;K350 +C;X62;K900 +C;X63;K8 +C;X64;K0 +C;X65;K0 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNsi" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K0 +C;X77;K24 +C;X78;K12 +C;X79;K15 +C;X80;K75 +C;X81;K350 +C;X82;K900 +C;X83;K8 +C;X84;K0 +C;X85;K0 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNsi" +C;X95;K1 +C;X1;Y26;K"AUan" +C;X2;K"AUan" +C;X3;K"Death Knight - Animate Dead" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K180 +C;X20;K175 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUan" +C;X35;K"air,ground,dead" +C;X36;K"-" +C;X37;K120 +C;X38;K120 +C;X39;K240 +C;X40;K175 +C;X41;K900 +C;X42;K400 +C;X43;K6 +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUan" +C;X55;K"air,ground,dead" +C;X56;K"-" +C;X57;K120 +C;X58;K120 +C;X59;K240 +C;X60;K175 +C;X61;K900 +C;X62;K400 +C;X63;K6 +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUan" +C;X75;K"air,ground,dead" +C;X76;K"-" +C;X77;K120 +C;X78;K120 +C;X79;K240 +C;X80;K175 +C;X81;K900 +C;X82;K400 +C;X83;K6 +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUan" +C;X95;K1 +C;X1;Y27;K"AUdc" +C;X2;K"AUdc" +C;X3;K"Death Knight - Death Coil" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K6 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K200 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K6 +C;X40;K75 +C;X41;K"-" +C;X42;K800 +C;X43;K400 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K6 +C;X60;K75 +C;X61;K"-" +C;X62;K800 +C;X63;K600 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K6 +C;X80;K75 +C;X81;K"-" +C;X82;K800 +C;X83;K600 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y28;K"AUdp" +C;X2;K"AUdp" +C;X3;K"Death Knight - Death Pact" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,player,nonhero,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K50 +C;X21;K"-" +C;X22;K800 +C;X23;K0 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,player,nonhero,invu,vuln" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K15 +C;X40;K50 +C;X41;K"-" +C;X42;K800 +C;X43;K0 +C;X44;K2 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,player,nonhero,invu,vuln" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K15 +C;X60;K50 +C;X61;K"-" +C;X62;K800 +C;X63;K0 +C;X64;K3 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,player,nonhero,invu,vuln" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K15 +C;X80;K50 +C;X81;K"-" +C;X82;K800 +C;X83;K0 +C;X84;K3 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y29;K"AUau" +C;X2;K"AUau" +C;X3;K"Death Knight - Unholy Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K" - " +C;X21;K900 +C;X22;K" - " +C;X23;K0.1 +C;X24;K0.5 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUau" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K900 +C;X42;K" - " +C;X43;K0.2 +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUau" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K900 +C;X62;K" - " +C;X63;K0.3 +C;X64;K1.5 +C;X65;K0 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUau" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K900 +C;X82;K" - " +C;X83;K0.3 +C;X84;K1.5 +C;X85;K0 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUau" +C;X95;K1 +C;X1;Y30;K"AEev" +C;X2;K"AEev" +C;X3;K"Demon Hunter - Evasion" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K0.1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K0.2 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K0.3 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K0.3 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y31;K"AEim" +C;X2;K"AEim" +C;X3;K"Demon Hunter - Immolation" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K25 +C;X21;K160 +C;X22;K"-" +C;X23;K10 +C;X24;K7 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEim,BEia" +C;X35;K"ground,enemy,neutral,organic" +C;X36;K"-" +C;X37;K1 +C;X38;K1 +C;X39;K"-" +C;X40;K25 +C;X41;K160 +C;X42;K"-" +C;X43;K15 +C;X44;K7 +C;X45;K10 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BEim,BEia" +C;X55;K"ground,enemy,neutral,organic" +C;X56;K"-" +C;X57;K1 +C;X58;K1 +C;X59;K"-" +C;X60;K25 +C;X61;K160 +C;X62;K"-" +C;X63;K20 +C;X64;K7 +C;X65;K10 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BEim,BEia" +C;X75;K"ground,enemy,neutral,organic" +C;X76;K"-" +C;X77;K1 +C;X78;K1 +C;X79;K"-" +C;X80;K25 +C;X81;K160 +C;X82;K"-" +C;X83;K20 +C;X84;K7 +C;X85;K10 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BEim,BEia" +C;X95;K1 +C;X1;Y32;K"AEmb" +C;X2;K"AEmb" +C;X3;K"Demon Hunter - Mana Burn" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K7 +C;X20;K50 +C;X21;K"-" +C;X22;K300 +C;X23;K50 +C;X24;K0.25 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,enemy,neutral" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K6 +C;X40;K50 +C;X41;K"-" +C;X42;K300 +C;X43;K100 +C;X44;K0.25 +C;X45;K1 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,enemy,neutral" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K5 +C;X60;K50 +C;X61;K"-" +C;X62;K300 +C;X63;K150 +C;X64;K0.25 +C;X65;K1 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,enemy,neutral" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K5 +C;X80;K50 +C;X81;K"-" +C;X82;K300 +C;X83;K150 +C;X84;K0.25 +C;X85;K1 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y33;K"AEme" +C;X2;K"AEme" +C;X3;K"Demon Hunter - Metamorphosis" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K60 +C;X19;K180 +C;X20;K150 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Edem" +C;X24;K1 +C;X25;K0 +C;X27;K500 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Edmm" +C;X33;K"BEme" +C;X35;K"_" +C;X37;K1.5 +C;X38;K60 +C;X39;K180 +C;X40;K150 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Edem" +C;X44;K1 +C;X45;K0 +C;X47;K500 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Edmm" +C;X53;K"BEme" +C;X55;K"_" +C;X57;K1.5 +C;X58;K60 +C;X59;K180 +C;X60;K150 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Edem" +C;X64;K1 +C;X65;K0 +C;X67;K500 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Edmm" +C;X73;K"BEme" +C;X75;K"_" +C;X77;K1.5 +C;X78;K60 +C;X79;K180 +C;X80;K150 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Edem" +C;X84;K1 +C;X85;K0 +C;X87;K500 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Edmm" +C;X93;K"BEme" +C;X95;K1 +C;X1;Y34;K"AUsl" +C;X2;K"AUsl" +C;X3;K"Dreadlord - Sleep" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K5 +C;X19;K6 +C;X20;K100 +C;X21;K"-" +C;X22;K800 +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUsl,BUsp,Bust" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K"-" +C;X37;K40 +C;X38;K10 +C;X39;K6 +C;X40;K75 +C;X41;K"-" +C;X42;K800 +C;X43;K2 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUsl,BUsp,Bust" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K"-" +C;X57;K60 +C;X58;K15 +C;X59;K6 +C;X60;K50 +C;X61;K"-" +C;X62;K800 +C;X63;K2 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUsl,BUsp,Bust" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K"-" +C;X77;K60 +C;X78;K15 +C;X79;K6 +C;X80;K50 +C;X81;K"-" +C;X82;K800 +C;X83;K2 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUsl,BUsp,Bust" +C;X95;K1 +C;X1;Y35;K"AUav" +C;X2;K"AUav" +C;X3;K"Dreadlord - Vampiric Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUav" +C;X35;K"air,ground,friend,self,vuln,invu,organic" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K0.3 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUav" +C;X55;K"air,ground,friend,self,vuln,invu,organic" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K0.45 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUav" +C;X75;K"air,ground,friend,self,vuln,invu,organic" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K0.45 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUav" +C;X95;K1 +C;X1;Y36;K"AUcs" +C;X2;K"AUcs" +C;X3;K"Dreadlord - Carrion Swarm" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K10 +C;X20;K110 +C;X21;K100 +C;X22;K700 +C;X23;K75 +C;X24;K300 +C;X25;K800 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcs" +C;X35;K"ground,air,organic" +C;X36;K"-" +C;X37;K0 +C;X38;K"-" +C;X39;K10 +C;X40;K110 +C;X41;K100 +C;X42;K700 +C;X43;K125 +C;X44;K600 +C;X45;K800 +C;X46;K300 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUcs" +C;X55;K"ground,air,organic" +C;X56;K"-" +C;X57;K0 +C;X58;K"-" +C;X59;K10 +C;X60;K110 +C;X61;K100 +C;X62;K700 +C;X63;K200 +C;X64;K1000 +C;X65;K800 +C;X66;K300 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUcs" +C;X75;K"ground,air,organic" +C;X76;K"-" +C;X77;K0 +C;X78;K"-" +C;X79;K10 +C;X80;K110 +C;X81;K100 +C;X82;K700 +C;X83;K200 +C;X84;K1000 +C;X85;K800 +C;X86;K300 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUcs" +C;X95;K1 +C;X1;Y37;K"AUin" +C;X2;K"AUin" +C;X3;K"Dreadlord - Inferno" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K180 +C;X20;K175 +C;X21;K250 +C;X22;K900 +C;X23;K50 +C;X24;K180 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ninf" +C;X33;K"BNin" +C;X35;K"ground,structure,debris,enemy,neutral" +C;X36;K"-" +C;X37;K4 +C;X38;K2 +C;X39;K180 +C;X40;K175 +C;X41;K250 +C;X42;K900 +C;X43;K50 +C;X44;K180 +C;X45;K1 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ninf" +C;X53;K"BNin" +C;X55;K"ground,structure,debris,enemy,neutral" +C;X56;K"-" +C;X57;K4 +C;X58;K2 +C;X59;K180 +C;X60;K175 +C;X61;K250 +C;X62;K900 +C;X63;K50 +C;X64;K180 +C;X65;K1 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ninf" +C;X73;K"BNin" +C;X75;K"ground,structure,debris,enemy,neutral" +C;X76;K"-" +C;X77;K4 +C;X78;K2 +C;X79;K180 +C;X80;K175 +C;X81;K250 +C;X82;K900 +C;X83;K50 +C;X84;K180 +C;X85;K1 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ninf" +C;X93;K"BNin" +C;X95;K1 +C;X1;Y38;K"AOcl" +C;X2;K"AOcl" +C;X3;K"Farseer - Chain Lightning" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K120 +C;X21;K500 +C;X22;K700 +C;X23;K85 +C;X24;K4 +C;X25;K0.15 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,enemy,neutral,organic" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K9 +C;X40;K120 +C;X41;K500 +C;X42;K700 +C;X43;K125 +C;X44;K6 +C;X45;K0.15 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,enemy,neutral,organic" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K9 +C;X60;K120 +C;X61;K500 +C;X62;K700 +C;X63;K180 +C;X64;K8 +C;X65;K0.15 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,enemy,neutral,organic" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K9 +C;X80;K120 +C;X81;K500 +C;X82;K700 +C;X83;K180 +C;X84;K8 +C;X85;K0.15 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y39;K"AOeq" +C;X2;K"AOeq" +C;X3;K"Farseer - Earthquake" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,tree" +C;X16;K0 +C;X17;K25 +C;X18;K20 +C;X19;K90 +C;X20;K150 +C;X21;K250 +C;X22;K1000 +C;X23;K0.5 +C;X24;K50 +C;X25;K0.75 +C;X26;K250 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOeq,BOea" +C;X34;K"XOeq" +C;X35;K"ground,structure,debris,tree" +C;X36;K"-" +C;X37;K20 +C;X38;K20 +C;X39;K90 +C;X40;K150 +C;X41;K400 +C;X42;K1000 +C;X43;K0.5 +C;X44;K40 +C;X45;K0.75 +C;X46;K400 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOeq,BOea" +C;X54;K"XOeq" +C;X55;K"ground,structure,debris,tree" +C;X56;K"-" +C;X57;K20 +C;X58;K20 +C;X59;K90 +C;X60;K150 +C;X61;K400 +C;X62;K1000 +C;X63;K0.5 +C;X64;K40 +C;X65;K0.75 +C;X66;K400 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOeq,BOea" +C;X74;K"XOeq" +C;X75;K"ground,structure,debris,tree" +C;X76;K"-" +C;X77;K20 +C;X78;K20 +C;X79;K90 +C;X80;K150 +C;X81;K400 +C;X82;K1000 +C;X83;K0.5 +C;X84;K40 +C;X85;K0.75 +C;X86;K400 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOeq,BOea" +C;X94;K"XOeq" +C;X95;K1 +C;X1;Y40;K"AOfs" +C;X2;K"AOfs" +C;X3;K"Farseer - Far Sight" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K0 +C;X20;K75 +C;X21;K600 +C;X22;K99999 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xbdt" +C;X35;K"_" +C;X36;K"-" +C;X37;K8 +C;X38;K8 +C;X39;K"-" +C;X40;K60 +C;X41;K1800 +C;X42;K99999 +C;X43;K3 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"Xbdt" +C;X55;K"_" +C;X56;K"-" +C;X57;K8 +C;X58;K8 +C;X59;K"-" +C;X60;K50 +C;X61;K4000 +C;X62;K99999 +C;X63;K3 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"Xbdt" +C;X75;K"_" +C;X76;K"-" +C;X77;K8 +C;X78;K8 +C;X79;K"-" +C;X80;K50 +C;X81;K4000 +C;X82;K99999 +C;X83;K3 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"Xbdt" +C;X95;K1 +C;X1;Y41;K"AOsf" +C;X2;K"AOsf" +C;X3;K"Farseer - Spirit Wolf" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K30 +C;X20;K75 +C;X21;K200 +C;X22;K800 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"osw1" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K30 +C;X40;K75 +C;X41;K200 +C;X42;K800 +C;X44;K2 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"osw2" +C;X53;K"BOsf" +C;X55;K"_" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K30 +C;X60;K75 +C;X61;K200 +C;X62;K800 +C;X64;K2 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"osw3" +C;X73;K"BOsf" +C;X75;K"_" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K30 +C;X80;K100 +C;X81;K200 +C;X82;K800 +C;X84;K2 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"osw3" +C;X93;K"BOsf" +C;X95;K1 +C;X1;Y42;K"AEer" +C;X2;K"AEer" +C;X3;K"Keeper - Entangling Roots" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K9 +C;X18;K3 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEer" +C;X35;K"ground,enemy,neutral,organic" +C;X36;K"-" +C;X37;K24 +C;X38;K4 +C;X39;K8 +C;X40;K75 +C;X41;K"-" +C;X42;K800 +C;X43;K15 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BEer" +C;X55;K"ground,enemy,neutral,organic" +C;X56;K"-" +C;X57;K36 +C;X58;K5 +C;X59;K8 +C;X60;K75 +C;X61;K"-" +C;X62;K800 +C;X63;K25 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BEer" +C;X75;K"ground,enemy,neutral,organic" +C;X76;K"-" +C;X77;K36 +C;X78;K7 +C;X79;K8 +C;X80;K75 +C;X81;K"-" +C;X82;K800 +C;X83;K25 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BEer" +C;X95;K1 +C;X1;Y43;K"AEfn" +C;X2;K"AEfn" +C;X3;K"Keeper - Force of Nature" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"tree" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K125 +C;X21;K150 +C;X22;K800 +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"efon" +C;X33;K"BEfn" +C;X35;K"tree" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K20 +C;X40;K125 +C;X41;K225 +C;X42;K800 +C;X43;K3 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"efon" +C;X53;K"BEfn" +C;X55;K"tree" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K20 +C;X60;K125 +C;X61;K300 +C;X62;K800 +C;X63;K4 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"efon" +C;X73;K"BEfn" +C;X75;K"tree" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K20 +C;X80;K125 +C;X81;K300 +C;X82;K800 +C;X83;K4 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"efon" +C;X93;K"BEfn" +C;X95;K1 +C;X1;Y44;K"AEah" +C;X2;K"AEah" +C;X3;K"Keeper - Thorns Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEah" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K0.2 +C;X44;K1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BEah" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K0.3 +C;X64;K1 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BEah" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K0.3 +C;X84;K1 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BEah" +C;X95;K1 +C;X1;Y45;K"AEtq" +C;X2;K"AEtq" +C;X3;K"Keeper - Tranquility" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,neutral" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K60 +C;X20;K125 +C;X21;K900 +C;X22;K" - " +C;X23;K20 +C;X24;K1 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"AEtr" +C;X34;K"XEtq" +C;X35;K"air,ground,friend,self,vuln,invu,neutral" +C;X36;K"-" +C;X37;K30 +C;X38;K30 +C;X39;K120 +C;X40;K300 +C;X41;K900 +C;X42;K" - " +C;X43;K15 +C;X44;K1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"AEtr" +C;X54;K"XEtq" +C;X55;K"air,ground,friend,self,vuln,invu,neutral" +C;X56;K"-" +C;X57;K30 +C;X58;K30 +C;X59;K120 +C;X60;K300 +C;X61;K900 +C;X62;K" - " +C;X63;K15 +C;X64;K1 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"AEtr" +C;X74;K"XEtq" +C;X75;K"air,ground,friend,self,vuln,invu,neutral" +C;X76;K"-" +C;X77;K30 +C;X78;K30 +C;X79;K120 +C;X80;K300 +C;X81;K900 +C;X82;K" - " +C;X83;K15 +C;X84;K1 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"AEtr" +C;X94;K"XEtq" +C;X95;K1 +C;X1;Y46;K"AUdr" +C;X2;K"AUdr" +C;X3;K"Lich - Dark Ritual" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,player,nonhero,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K25 +C;X21;K"-" +C;X22;K800 +C;X23;K0.33 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,player,nonhero,vuln,invu" +C;X36;K"-" +C;X37;K0 +C;X38;K0 +C;X39;K15 +C;X40;K25 +C;X41;K"-" +C;X42;K800 +C;X43;K0.66 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,player,nonhero,vuln,invu" +C;X56;K"-" +C;X57;K0 +C;X58;K0 +C;X59;K15 +C;X60;K25 +C;X61;K"-" +C;X62;K800 +C;X63;K1 +C;X64;K0 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,player,nonhero,vuln,invu" +C;X76;K"-" +C;X77;K0 +C;X78;K0 +C;X79;K15 +C;X80;K25 +C;X81;K"-" +C;X82;K800 +C;X83;K1 +C;X84;K0 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y47;K"AUdd" +C;X2;K"AUdd" +C;X3;K"Lich - Death and Decay" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,ward" +C;X16;K0 +C;X17;K35 +C;X18;K35 +C;X19;K150 +C;X20;K250 +C;X21;K300 +C;X22;K1000 +C;X23;K0.04 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUdd" +C;X34;K"XUdd" +C;X35;K"air,ground,structure,ward" +C;X36;K"-" +C;X37;K35 +C;X38;K35 +C;X39;K150 +C;X40;K250 +C;X41;K400 +C;X42;K1000 +C;X43;K0.04 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUdd" +C;X54;K"XUdd" +C;X55;K"air,ground,structure,ward" +C;X56;K"-" +C;X57;K35 +C;X58;K35 +C;X59;K150 +C;X60;K250 +C;X61;K400 +C;X62;K1000 +C;X63;K0.04 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUdd" +C;X74;K"XUdd" +C;X75;K"air,ground,structure,ward" +C;X76;K"-" +C;X77;K35 +C;X78;K35 +C;X79;K150 +C;X80;K250 +C;X81;K400 +C;X82;K1000 +C;X83;K0.04 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUdd" +C;X94;K"XUdd" +C;X95;K1 +C;X1;Y48;K"AUfa" +C;X2;K"AUfa" +C;X3;K"Lich - Frost Armor" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K2 +C;X20;K40 +C;X21;K"-" +C;X22;K800 +C;X23;K45 +C;X24;K3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUfa" +C;X35;K"air,ground,friend,self,neutral" +C;X36;K"-" +C;X37;K5 +C;X38;K5 +C;X39;K2 +C;X40;K40 +C;X41;K"-" +C;X42;K800 +C;X43;K45 +C;X44;K5 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUfa" +C;X55;K"air,ground,friend,self,neutral" +C;X56;K"-" +C;X57;K5 +C;X58;K5 +C;X59;K2 +C;X60;K40 +C;X61;K"-" +C;X62;K800 +C;X63;K45 +C;X64;K7 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUfa" +C;X75;K"air,ground,friend,self,neutral" +C;X76;K"-" +C;X77;K5 +C;X78;K5 +C;X79;K2 +C;X80;K40 +C;X81;K"-" +C;X82;K800 +C;X83;K45 +C;X84;K7 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUfa" +C;X95;K1 +C;X1;Y49;K"AUfu" +C;X2;K"AUfu" +C;X3;K"Lich - Frost Armor (Autocast)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K2 +C;X20;K40 +C;X21;K"-" +C;X22;K800 +C;X23;K45 +C;X24;K3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUfa" +C;X35;K"air,ground,friend,self,neutral" +C;X36;K"-" +C;X37;K5 +C;X38;K5 +C;X39;K2 +C;X40;K40 +C;X41;K"-" +C;X42;K800 +C;X43;K45 +C;X44;K5 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUfa" +C;X55;K"air,ground,friend,self,neutral" +C;X56;K"-" +C;X57;K5 +C;X58;K5 +C;X59;K2 +C;X60;K40 +C;X61;K"-" +C;X62;K800 +C;X63;K45 +C;X64;K7 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUfa" +C;X75;K"air,ground,friend,self,neutral" +C;X76;K"-" +C;X77;K5 +C;X78;K5 +C;X79;K2 +C;X80;K40 +C;X81;K"-" +C;X82;K800 +C;X83;K45 +C;X84;K7 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUfa" +C;X95;K1 +C;X1;Y50;K"AUfn" +C;X2;K"AUfn" +C;X3;K"Lich - Frost Nova" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"undead" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,air,neutral,organic" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K8 +C;X20;K125 +C;X21;K200 +C;X22;K800 +C;X23;K50 +C;X24;K100 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"ground,enemy,air,neutral,organic" +C;X36;K"-" +C;X37;K6 +C;X38;K3 +C;X39;K8 +C;X40;K125 +C;X41;K200 +C;X42;K800 +C;X43;K100 +C;X44;K100 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"Bfro" +C;X55;K"ground,enemy,air,neutral,organic" +C;X56;K"-" +C;X57;K8 +C;X58;K4 +C;X59;K8 +C;X60;K125 +C;X61;K200 +C;X62;K800 +C;X63;K150 +C;X64;K100 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"Bfro" +C;X75;K"ground,enemy,air,neutral,organic" +C;X76;K"-" +C;X77;K8 +C;X78;K8 +C;X79;K8 +C;X80;K125 +C;X81;K200 +C;X82;K800 +C;X83;K150 +C;X84;K100 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"Bfro" +C;X95;K1 +C;X1;Y51;K"AHav" +C;X2;K"AHav" +C;X3;K"Mountain King - Avatar" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K180 +C;X20;K150 +C;X21;K0.5 +C;X22;K"-" +C;X23;K5 +C;X24;K500 +C;X25;K20 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K180 +C;X40;K150 +C;X41;K0.5 +C;X42;K"-" +C;X43;K5 +C;X44;K500 +C;X45;K20 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K180 +C;X60;K150 +C;X61;K0.5 +C;X62;K"-" +C;X63;K5 +C;X64;K500 +C;X65;K20 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K180 +C;X80;K150 +C;X81;K0.5 +C;X82;K"-" +C;X83;K5 +C;X84;K500 +C;X85;K20 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y52;K"AHbh" +C;X2;K"AHbh" +C;X3;K"Mountain King - Bash" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air" +C;X16;K0 +C;X17;K2 +C;X18;K1 +C;X19;K0 +C;X20;K"-" +C;X21;K0 +C;X22;K"-" +C;X23;K20 +C;X24;K0 +C;X25;K25 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"ground,air" +C;X36;K"-" +C;X37;K2 +C;X38;K1 +C;X39;K"-" +C;X40;K"-" +C;X41;K0 +C;X42;K"-" +C;X43;K30 +C;X44;K0 +C;X45;K25 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BPSE" +C;X55;K"ground,air" +C;X56;K"-" +C;X57;K2 +C;X58;K1 +C;X59;K"-" +C;X60;K"-" +C;X61;K0 +C;X62;K"-" +C;X63;K40 +C;X64;K0 +C;X65;K25 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BPSE" +C;X75;K"ground,air" +C;X76;K"-" +C;X77;K2 +C;X78;K1 +C;X79;K"-" +C;X80;K"-" +C;X81;K0 +C;X82;K"-" +C;X83;K35 +C;X84;K0 +C;X85;K25 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BPSE" +C;X95;K1 +C;X1;Y53;K"AHtb" +C;X2;K"AHtb" +C;X3;K"Mountain King - Thunder Bolt" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,debris,enemy,neutral,organic" +C;X16;K0 +C;X17;K5 +C;X18;K3 +C;X19;K9 +C;X20;K75 +C;X21;K"-" +C;X22;K600 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"air,ground,debris,enemy,neutral,organic" +C;X36;K"-" +C;X37;K5 +C;X38;K3 +C;X39;K9 +C;X40;K75 +C;X41;K"-" +C;X42;K600 +C;X43;K225 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BPSE" +C;X55;K"air,ground,debris,enemy,neutral,organic" +C;X56;K"-" +C;X57;K5 +C;X58;K3 +C;X59;K9 +C;X60;K75 +C;X61;K"-" +C;X62;K600 +C;X63;K350 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BPSE" +C;X75;K"air,ground,debris,enemy,neutral,organic" +C;X76;K"-" +C;X77;K5 +C;X78;K3 +C;X79;K9 +C;X80;K75 +C;X81;K"-" +C;X82;K600 +C;X83;K300 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BPSE" +C;X95;K1 +C;X1;Y54;K"AHtc" +C;X2;K"AHtc" +C;X3;K"Mountain King - Thunder Clap" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,neutral,organic" +C;X16;K0 +C;X17;K5 +C;X18;K3 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K60 +C;X24;K0 +C;X25;K0.5 +C;X26;K0.5 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHtc" +C;X35;K"ground,neutral,organic" +C;X36;K"-" +C;X37;K5 +C;X38;K3 +C;X39;K6 +C;X40;K90 +C;X41;K300 +C;X42;K"-" +C;X43;K100 +C;X44;K0 +C;X45;K0.5 +C;X46;K0.5 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHtc" +C;X55;K"ground,neutral,organic" +C;X56;K"-" +C;X57;K5 +C;X58;K3 +C;X59;K6 +C;X60;K90 +C;X61;K350 +C;X62;K"-" +C;X63;K140 +C;X64;K0 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHtc" +C;X75;K"ground,neutral,organic" +C;X76;K"-" +C;X77;K5 +C;X78;K3 +C;X79;K6 +C;X80;K90 +C;X81;K350 +C;X82;K"-" +C;X83;K150 +C;X84;K0 +C;X85;K0.5 +C;X86;K0.5 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHtc" +C;X95;K1 +C;X1;Y55;K"ANfl" +C;X2;K"ANfl" +C;X3;K"Sea Witch - Forked Lightning" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K0.7 +C;X18;K0 +C;X19;K11 +C;X20;K110 +C;X21;K125 +C;X22;K600 +C;X23;K85 +C;X24;K3 +C;X25;K900 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,enemy,neutral,organic" +C;X36;K0 +C;X37;K0.7 +C;X38;K0 +C;X39;K11 +C;X40;K110 +C;X41;K125 +C;X42;K600 +C;X43;K160 +C;X44;K3 +C;X45;K900 +C;X46;K300 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,enemy,neutral,organic" +C;X56;K0 +C;X57;K0.7 +C;X58;K0 +C;X59;K11 +C;X60;K110 +C;X61;K125 +C;X62;K600 +C;X63;K250 +C;X64;K3 +C;X65;K900 +C;X66;K300 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,enemy,neutral,organic" +C;X76;K0 +C;X77;K0.7 +C;X78;K0 +C;X79;K11 +C;X80;K110 +C;X81;K125 +C;X82;K600 +C;X83;K250 +C;X84;K3 +C;X85;K900 +C;X86;K300 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y56;K"ANfa" +C;X2;K"AHca" +C;X3;K"Sea Witch - Frost Arrows" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K1.5 +C;X19;K0 +C;X20;K10 +C;X21;K"-" +C;X22;K600 +C;X23;K5 +C;X24;K0.3 +C;X25;K0.3 +C;X26;K7 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHca,Bcsd" +C;X35;K"air,ground,enemy,neutral" +C;X36;K"-" +C;X37;K5 +C;X38;K1.5 +C;X39;K"-" +C;X40;K10 +C;X41;K"-" +C;X42;K600 +C;X43;K10 +C;X44;K0.5 +C;X45;K0.5 +C;X46;K7 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHca,Bcsd" +C;X55;K"air,ground,enemy,neutral" +C;X56;K"-" +C;X57;K5 +C;X58;K1.5 +C;X59;K"-" +C;X60;K10 +C;X61;K"-" +C;X62;K600 +C;X63;K15 +C;X64;K0.7 +C;X65;K0.7 +C;X66;K7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHca,Bcsd" +C;X75;K"air,ground,enemy,neutral" +C;X76;K"-" +C;X77;K5 +C;X78;K1.5 +C;X79;K"-" +C;X80;K7 +C;X81;K"-" +C;X82;K600 +C;X83;K15 +C;X84;K0.7 +C;X85;K0.7 +C;X86;K7 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHca,Bcsd,Bcsi" +C;X95;K1 +C;X1;Y57;K"ANto" +C;X2;K"ANto" +C;X3;K"Sea Witch - Tornado" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K120 +C;X20;K200 +C;X21;K"-" +C;X22;K700 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ntor" +C;X33;K"BNto" +C;X35;K"_" +C;X36;K0 +C;X37;K30 +C;X38;K30 +C;X39;K120 +C;X40;K150 +C;X41;K"-" +C;X42;K700 +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ntor" +C;X53;K"BNto" +C;X55;K"_" +C;X56;K0 +C;X57;K30 +C;X58;K30 +C;X59;K120 +C;X60;K150 +C;X61;K"-" +C;X62;K700 +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ntor" +C;X73;K"BNto" +C;X75;K"_" +C;X76;K0 +C;X77;K30 +C;X78;K30 +C;X79;K120 +C;X80;K150 +C;X81;K"-" +C;X82;K700 +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ntor" +C;X93;K"BNto" +C;X95;K1 +C;X1;Y58;K"ANms" +C;X2;K"ANms" +C;X3;K"Sea Witch - Mana Shield" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"self" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K10 +C;X20;K25 +C;X21;K"-" +C;X22;K128 +C;X23;K1 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNms" +C;X35;K"self" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K10 +C;X40;K25 +C;X41;K"-" +C;X42;K128 +C;X43;K1.5 +C;X44;K1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNms" +C;X55;K"self" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K10 +C;X60;K25 +C;X61;K"-" +C;X62;K128 +C;X63;K2 +C;X64;K1 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNms" +C;X75;K"self" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K10 +C;X80;K25 +C;X81;K"-" +C;X82;K128 +C;X83;K2 +C;X84;K1 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNms" +C;X95;K1 +C;X1;Y59;K"AHad" +C;X2;K"AHad" +C;X3;K"Paladin - Devotion Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K1.5 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHad" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K"-" +C;X37;K4 +C;X38;K2 +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K3 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHad" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K"-" +C;X57;K4 +C;X58;K2 +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K4.5 +C;X64;K0 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHad" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K"-" +C;X77;K4 +C;X78;K2 +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K4.5 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHad" +C;X95;K1 +C;X1;Y60;K"AHds" +C;X2;K"AHds" +C;X3;K"Paladin - Divine Shield" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"invu,vuln" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K35 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHds" +C;X35;K"invu,vuln" +C;X36;K"-" +C;X37;K30 +C;X38;K30 +C;X39;K50 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K0 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHds" +C;X55;K"invu,vuln" +C;X56;K"-" +C;X57;K45 +C;X58;K45 +C;X59;K65 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K0 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHds" +C;X75;K"invu,vuln" +C;X76;K"-" +C;X77;K45 +C;X78;K45 +C;X79;K65 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K0 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHds" +C;X95;K1 +C;X1;Y61;K"AHhb" +C;X2;K"AHhb" +C;X3;K"Paladin - Holy Light" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K5 +C;X20;K65 +C;X21;K"-" +C;X22;K800 +C;X23;K200 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K5 +C;X40;K65 +C;X41;K"-" +C;X42;K800 +C;X43;K400 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K5 +C;X60;K65 +C;X61;K"-" +C;X62;K800 +C;X63;K600 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K5 +C;X80;K65 +C;X81;K"-" +C;X82;K800 +C;X83;K600 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y62;K"AHre" +C;X2;K"AHre" +C;X3;K"Paladin - Resurrection" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K200 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,dead,friend" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K240 +C;X40;K250 +C;X41;K900 +C;X42;K400 +C;X43;K6 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,dead,friend" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K240 +C;X60;K250 +C;X61;K900 +C;X62;K400 +C;X63;K6 +C;X64;K0 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,dead,friend" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K240 +C;X80;K250 +C;X81;K900 +C;X82;K400 +C;X83;K6 +C;X84;K0 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y63;K"ANbf" +C;X2;K"ANbf" +C;X3;K"Brewmaster - Breath of Fire" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,structure" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K10 +C;X20;K70 +C;X21;K125 +C;X22;K375 +C;X23;K65 +C;X24;K520 +C;X25;K375 +C;X26;K300 +C;X27;K7 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNbf" +C;X35;K"ground,air,structure" +C;X36;K"-" +C;X37;K5 +C;X38;K5 +C;X39;K10 +C;X40;K70 +C;X41;K120 +C;X42;K375 +C;X43;K125 +C;X44;K1000 +C;X45;K375 +C;X46;K300 +C;X47;K14 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNbf" +C;X55;K"ground,air,structure" +C;X56;K"-" +C;X57;K5 +C;X58;K5 +C;X59;K10 +C;X60;K70 +C;X61;K125 +C;X62;K375 +C;X63;K170 +C;X64;K1360 +C;X65;K375 +C;X66;K300 +C;X67;K21 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNbf" +C;X75;K"ground,air,structure" +C;X76;K"-" +C;X77;K5 +C;X78;K5 +C;X79;K10 +C;X80;K70 +C;X81;K125 +C;X82;K375 +C;X83;K170 +C;X84;K1360 +C;X85;K375 +C;X86;K300 +C;X87;K21 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNbf" +C;X95;K1 +C;X1;Y64;K"ANdb" +C;X2;K"ANdb" +C;X3;K"Brewmaster - Drunken Brawler" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K2 +C;X25;K0 +C;X26;K0.07 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K10 +C;X44;K3 +C;X45;K0 +C;X46;K0.14 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K10 +C;X64;K4 +C;X65;K0 +C;X66;K0.21 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K10 +C;X84;K5 +C;X85;K0 +C;X86;K0.2 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y65;K"ANdh" +C;X2;K"ANdh" +C;X3;K"Brewmaster - Drunken Haze" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K5 +C;X19;K12 +C;X20;K70 +C;X21;K200 +C;X22;K550 +C;X23;K0 +C;X24;K0.45 +C;X25;K0.15 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNdh" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K0 +C;X37;K12 +C;X38;K5 +C;X39;K12 +C;X40;K70 +C;X41;K200 +C;X42;K550 +C;X43;K0 +C;X44;K0.65 +C;X45;K0.3 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNdh" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K0 +C;X57;K12 +C;X58;K5 +C;X59;K12 +C;X60;K70 +C;X61;K200 +C;X62;K550 +C;X63;K0 +C;X64;K0.8 +C;X65;K0.5 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNdh" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K0 +C;X77;K12 +C;X78;K5 +C;X79;K12 +C;X80;K70 +C;X81;K200 +C;X82;K550 +C;X83;K0 +C;X84;K0.8 +C;X85;K0.5 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNdh" +C;X95;K1 +C;X1;Y66;K"ANef" +C;X2;K"ANef" +C;X3;K"Brewmaster - Storm, Earth and Fire" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K180 +C;X20;K150 +C;X21;K128 +C;X22;K"-" +C;X23;K"npn1,npn2,npn3" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNef" +C;X35;K"_" +C;X36;K0 +C;X37;K45 +C;X38;K45 +C;X39;K180 +C;X40;K150 +C;X41;K128 +C;X42;K"-" +C;X43;K"npn1,npn2,npn3" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNef" +C;X55;K"_" +C;X56;K0 +C;X57;K45 +C;X58;K45 +C;X59;K180 +C;X60;K150 +C;X61;K128 +C;X62;K"-" +C;X63;K"npn1,npn2,npn3" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNef" +C;X75;K"_" +C;X76;K0 +C;X77;K45 +C;X78;K45 +C;X79;K180 +C;X80;K150 +C;X81;K128 +C;X82;K"-" +C;X83;K"npn1,npn2,npn3" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNef" +C;X95;K1 +C;X1;Y67;K"ANdo" +C;X2;K"ANdo" +C;X3;K"Pit Lord - Doom" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K120 +C;X20;K150 +C;X21;K"-" +C;X22;K650 +C;X23;K40 +C;X24;K1 +C;X25;K120 +C;X26;K5 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nba2" +C;X33;K"BNdo,BNdi" +C;X35;K"air,ground,nonhero,organic" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K120 +C;X40;K125 +C;X41;K"-" +C;X42;K400 +C;X43;K5 +C;X44;K1 +C;X45;K80 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nba2" +C;X53;K"BNdo,BNdi" +C;X55;K"air,ground,nonhero,organic" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K120 +C;X60;K125 +C;X61;K"-" +C;X62;K400 +C;X63;K5 +C;X64;K1 +C;X65;K80 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nba2" +C;X73;K"BNdo,BNdi" +C;X75;K"air,ground,nonhero,organic" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K120 +C;X80;K125 +C;X81;K"-" +C;X82;K400 +C;X83;K5 +C;X84;K1 +C;X85;K80 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nba2" +C;X93;K"BNdo,BNdi" +C;X95;K1 +C;X1;Y68;K"ANht" +C;X2;K"ANht" +C;X3;K"Pit Lord - Howl of Terror" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K12 +C;X20;K75 +C;X21;K500 +C;X22;K"-" +C;X23;K0.3 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNht" +C;X35;K"air,ground,enemy,neutral" +C;X36;K0 +C;X37;K15 +C;X38;K15 +C;X39;K12 +C;X40;K75 +C;X41;K500 +C;X42;K"-" +C;X43;K0.4 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNht" +C;X55;K"air,ground,enemy,neutral" +C;X56;K0 +C;X57;K15 +C;X58;K15 +C;X59;K12 +C;X60;K75 +C;X61;K500 +C;X62;K"-" +C;X63;K0.5 +C;X64;K0 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K0 +C;X69;K0 +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNht" +C;X75;K"air,ground,enemy,neutral" +C;X76;K0 +C;X77;K15 +C;X78;K15 +C;X79;K12 +C;X80;K75 +C;X81;K500 +C;X82;K"-" +C;X83;K0.45 +C;X84;K0 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K0 +C;X89;K0 +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNht" +C;X95;K1 +C;X1;Y69;K"ANca" +C;X2;K"ANca" +C;X3;K"Pit Lord - Cleaving Attack" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K0.3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"ground,enemy,neutral" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K0 +C;X41;K200 +C;X42;K"-" +C;X43;K0.55 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"ground,enemy,neutral" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K0 +C;X61;K200 +C;X62;K"-" +C;X63;K0.8 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"ground,enemy,neutral" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K0 +C;X81;K200 +C;X82;K"-" +C;X83;K0.8 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y70;K"ANrf" +C;X2;K"ANrf" +C;X3;K"Pit Lord - Rain of Fire" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K3 +C;X18;K3 +C;X19;K8 +C;X20;K85 +C;X21;K200 +C;X22;K800 +C;X23;K6 +C;X24;K25 +C;X25;K6 +C;X26;K0.5 +C;X27;K5 +C;X28;K125 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNrd,BNrf" +C;X34;K"XErf" +C;X35;K"_" +C;X36;K1 +C;X37;K3 +C;X38;K3 +C;X39;K8 +C;X40;K85 +C;X41;K200 +C;X42;K800 +C;X43;K8 +C;X44;K30 +C;X45;K7 +C;X46;K0.5 +C;X47;K10 +C;X48;K150 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNrd,BNrf" +C;X54;K"XErf" +C;X55;K"_" +C;X56;K1 +C;X57;K3 +C;X58;K3 +C;X59;K8 +C;X60;K85 +C;X61;K200 +C;X62;K800 +C;X63;K10 +C;X64;K35 +C;X65;K10 +C;X66;K0.5 +C;X67;K15 +C;X68;K175 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNrd,BNrf" +C;X74;K"XErf" +C;X75;K"_" +C;X76;K1 +C;X77;K3 +C;X78;K3 +C;X79;K8 +C;X80;K85 +C;X81;K200 +C;X82;K800 +C;X83;K10 +C;X84;K35 +C;X85;K10 +C;X86;K0.5 +C;X87;K15 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNrd,BNrf" +C;X94;K"XErf" +C;X95;K1 +C;X1;Y71;K"AHfa" +C;X2;K"AHfa" +C;X3;K"Priestess - Searing Arrows" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K8 +C;X21;K"-" +C;X22;K600 +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,structure,enemy,neutral" +C;X36;K"-" +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K8 +C;X41;K"-" +C;X42;K700 +C;X43;K20 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,structure,enemy,neutral" +C;X56;K"-" +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K"-" +C;X62;K700 +C;X63;K30 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,structure,enemy,neutral" +C;X76;K"-" +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K8 +C;X81;K"-" +C;X82;K700 +C;X83;K30 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y72;K"AEst" +C;X2;K"AEst" +C;X3;K"Priestess - Scout" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K100 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nowl" +C;X33;K"BEst" +C;X35;K"_" +C;X36;K"-" +C;X37;K90 +C;X38;K90 +C;X39;K20 +C;X40;K75 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"now2" +C;X53;K"BEst" +C;X55;K"_" +C;X56;K"-" +C;X57;K120 +C;X58;K120 +C;X59;K20 +C;X60;K50 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"now3" +C;X73;K"BEst" +C;X75;K"_" +C;X76;K"-" +C;X77;K120 +C;X78;K120 +C;X79;K20 +C;X80;K50 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"now3" +C;X93;K"BEst" +C;X95;K1 +C;X1;Y73;K"AEsf" +C;X2;K"AEsf" +C;X3;K"Priestess - Starfall" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K45 +C;X18;K30 +C;X19;K180 +C;X20;K200 +C;X21;K1000 +C;X22;K" - " +C;X23;K50 +C;X24;K1.5 +C;X25;K0.35 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"AEsd" +C;X34;K"XEsf" +C;X35;K"air,ground,structure,enemy,neutral" +C;X36;K"-" +C;X37;K30 +C;X38;K30 +C;X39;K120 +C;X40;K300 +C;X41;K900 +C;X42;K" - " +C;X43;K30 +C;X44;K2 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"AEsd" +C;X54;K"XEsf" +C;X55;K"air,ground,structure,enemy,neutral" +C;X56;K"-" +C;X57;K30 +C;X58;K30 +C;X59;K120 +C;X60;K300 +C;X61;K900 +C;X62;K" - " +C;X63;K30 +C;X64;K2 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"AEsd" +C;X74;K"XEsf" +C;X75;K"air,ground,structure,enemy,neutral" +C;X76;K"-" +C;X77;K30 +C;X78;K30 +C;X79;K120 +C;X80;K300 +C;X81;K900 +C;X82;K" - " +C;X83;K30 +C;X84;K2 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"AEsd" +C;X94;K"XEsf" +C;X95;K1 +C;X1;Y74;K"AEar" +C;X2;K"AEar" +C;X3;K"Priestess - Trueshot Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K" - " +C;X21;K900 +C;X22;K" - " +C;X23;K0.1 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEar" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K900 +C;X42;K" - " +C;X43;K0.2 +C;X44;K0 +C;X45;K1 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BEar" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K900 +C;X62;K" - " +C;X63;K0.3 +C;X64;K0 +C;X65;K1 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BEar" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K900 +C;X82;K" - " +C;X83;K0.3 +C;X84;K0 +C;X85;K1 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BEar" +C;X95;K1 +C;X1;Y75;K"AOae" +C;X2;K"AOae" +C;X3;K"Chieftain - Endurance Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0.05 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOae" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K0.2 +C;X44;K0.1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOae" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K0.3 +C;X64;K0.15 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOae" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K0.3 +C;X84;K0.15 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOae" +C;X95;K1 +C;X1;Y76;K"AOre" +C;X2;K"AOre" +C;X3;K"Chieftain - Reincarnation" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K" - " +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K240 +C;X40;K" - " +C;X41;K"-" +C;X42;K"-" +C;X43;K7 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"XOre" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K240 +C;X60;K" - " +C;X61;K"-" +C;X62;K"-" +C;X63;K7 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"XOre" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K240 +C;X80;K" - " +C;X81;K"-" +C;X82;K"-" +C;X83;K7 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"XOre" +C;X95;K1 +C;X1;Y77;K"AOsh" +C;X2;K"AOsh" +C;X3;K"Chieftain - Shock Wave" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K125 +C;X22;K700 +C;X23;K75 +C;X24;K900 +C;X25;K800 +C;X26;K125 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOsh" +C;X35;K"ground,structure" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K8 +C;X40;K100 +C;X41;K125 +C;X42;K700 +C;X43;K130 +C;X44;K1560 +C;X45;K800 +C;X46;K125 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOsh" +C;X55;K"ground,structure" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K8 +C;X60;K100 +C;X61;K125 +C;X62;K700 +C;X63;K200 +C;X64;K2400 +C;X65;K800 +C;X66;K125 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOsh" +C;X75;K"ground,structure" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K8 +C;X80;K100 +C;X81;K125 +C;X82;K700 +C;X83;K200 +C;X84;K2400 +C;X85;K800 +C;X86;K125 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOsh" +C;X95;K1 +C;X1;Y78;K"AOws" +C;X2;K"AOws" +C;X3;K"Chieftain - War Stomp" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,organic" +C;X16;K0 +C;X17;K3 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"ground,organic" +C;X36;K"-" +C;X37;K4 +C;X38;K3 +C;X39;K6 +C;X40;K90 +C;X41;K300 +C;X42;K"-" +C;X43;K50 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BPSE" +C;X55;K"ground,organic" +C;X56;K"-" +C;X57;K5 +C;X58;K4 +C;X59;K6 +C;X60;K90 +C;X61;K350 +C;X62;K"-" +C;X63;K75 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BPSE" +C;X75;K"ground,organic" +C;X76;K"-" +C;X77;K5 +C;X78;K4 +C;X79;K6 +C;X80;K90 +C;X81;K350 +C;X82;K"-" +C;X83;K75 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BPSE" +C;X95;K1 +C;X1;Y79;K"AOhw" +C;X2;K"AOhw" +C;X3;K"Shadow Hunter - Healing Wave" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K90 +C;X21;K500 +C;X22;K700 +C;X23;K130 +C;X24;K3 +C;X25;K0.25 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,friend,self,vuln,invu,organic" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K9 +C;X40;K90 +C;X41;K500 +C;X42;K700 +C;X43;K215 +C;X44;K4 +C;X45;K0.25 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,friend,self,vuln,invu,organic" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K9 +C;X60;K90 +C;X61;K500 +C;X62;K700 +C;X63;K300 +C;X64;K5 +C;X65;K0.25 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,friend,self,vuln,invu,organic" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K9 +C;X80;K90 +C;X81;K500 +C;X82;K700 +C;X83;K300 +C;X84;K5 +C;X85;K0.25 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y80;K"AOhx" +C;X2;K"AOhx" +C;X3;K"Shadow Hunter - Hex" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K4 +C;X19;K7 +C;X20;K70 +C;X21;K"-" +C;X22;K800 +C;X23;K99 +C;X24;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X25;K"nalb,nvul,nsno" +C;X26;K"nsha,npng" +C;X27;K"nshw,npnw" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOhx" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K0 +C;X37;K30 +C;X38;K5 +C;X39;K7 +C;X40;K70 +C;X41;K"-" +C;X42;K800 +C;X43;K99 +C;X44;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X45;K"nalb,nvul,nsno" +C;X46;K"nsha,npng" +C;X47;K"nshw,npnw" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOhx" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K0 +C;X57;K45 +C;X58;K6 +C;X59;K7 +C;X60;K70 +C;X61;K"-" +C;X62;K800 +C;X63;K99 +C;X64;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X65;K"nalb,nvul,nsno" +C;X66;K"nsha,npng" +C;X67;K"nshw,npnw" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOhx" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K0 +C;X77;K45 +C;X78;K6 +C;X79;K7 +C;X80;K70 +C;X81;K"-" +C;X82;K800 +C;X83;K99 +C;X84;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X85;K"nalb,nvul,nsno" +C;X86;K"nsha,npng" +C;X87;K"nshw,npnw" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOhx" +C;X95;K1 +C;X1;Y81;K"AOsw" +C;X2;K"AOwd" +C;X3;K"Shadow Hunter - Serpent Ward" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K6.5 +C;X20;K30 +C;X21;K"-" +C;X22;K500 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"osp1" +C;X33;K"BOwd" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K6.5 +C;X40;K30 +C;X41;K"-" +C;X42;K500 +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"osp2" +C;X53;K"BOwd" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K6.5 +C;X60;K30 +C;X61;K"-" +C;X62;K500 +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"osp3" +C;X73;K"BOwd" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K6.5 +C;X80;K30 +C;X81;K"-" +C;X82;K500 +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"osp3" +C;X93;K"BOwd" +C;X95;K1 +C;X1;Y82;K"AOvd" +C;X2;K"AOvd" +C;X3;K"Shadow Hunter - Voodooo" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K180 +C;X20;K200 +C;X21;K800 +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOvd,BOvc" +C;X35;K"air,ground,friend,vuln,invu" +C;X36;K0 +C;X37;K30 +C;X38;K30 +C;X39;K180 +C;X40;K200 +C;X41;K800 +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOvd,BOvc" +C;X55;K"air,ground,friend,vuln,invu" +C;X56;K0 +C;X57;K30 +C;X58;K30 +C;X59;K180 +C;X60;K200 +C;X61;K800 +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOvd,BOvc" +C;X75;K"air,ground,friend,vuln,invu" +C;X76;K0 +C;X77;K30 +C;X78;K30 +C;X79;K180 +C;X80;K200 +C;X81;K800 +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOvd,BOvc" +C;X95;K1 +C;X1;Y83;K"AEbl" +C;X2;K"AEbl" +C;X3;K"Warden - Blink" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.33 +C;X18;K0 +C;X19;K10 +C;X20;K50 +C;X21;K"-" +C;X22;K99999 +C;X23;K1000 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K0.33 +C;X38;K"-" +C;X39;K10 +C;X40;K10 +C;X41;K"-" +C;X42;K99999 +C;X43;K1075 +C;X44;K200 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K0.33 +C;X58;K"-" +C;X59;K1 +C;X60;K10 +C;X61;K"-" +C;X62;K99999 +C;X63;K1150 +C;X64;K200 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K0.33 +C;X78;K"-" +C;X79;K1 +C;X80;K10 +C;X81;K"-" +C;X82;K99999 +C;X83;K1150 +C;X84;K200 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y84;K"AEfk" +C;X2;K"AEfk" +C;X3;K"Warden - Fan of Knives" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K100 +C;X21;K400 +C;X22;K"-" +C;X23;K75 +C;X24;K300 +C;X25;K0 +C;X26;K100 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,enemy,organic" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K9 +C;X40;K100 +C;X41;K450 +C;X42;K"-" +C;X43;K125 +C;X44;K625 +C;X45;K0 +C;X46;K100 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,enemy,organic" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K9 +C;X60;K100 +C;X61;K475 +C;X62;K"-" +C;X63;K190 +C;X64;K950 +C;X65;K0 +C;X66;K100 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,enemy,organic" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K9 +C;X80;K100 +C;X81;K475 +C;X82;K"-" +C;X83;K180 +C;X84;K950 +C;X85;K0 +C;X86;K100 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y85;K"AEsh" +C;X2;K"AEsh" +C;X3;K"Warden - Shadow Strike" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy,neutral,organic" +C;X16;K3 +C;X17;K15.1 +C;X18;K15.1 +C;X19;K8 +C;X20;K65 +C;X21;K"-" +C;X22;K300 +C;X23;K10 +C;X24;K0.5 +C;X25;K0 +C;X26;K3 +C;X27;K75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEsh" +C;X35;K"ground,air,enemy,neutral,organic" +C;X36;K3 +C;X37;K15.1 +C;X38;K15.1 +C;X39;K8 +C;X40;K65 +C;X41;K"-" +C;X42;K300 +C;X43;K30 +C;X44;K0.5 +C;X45;K0 +C;X46;K3 +C;X47;K150 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BEsh" +C;X55;K"ground,air,enemy,neutral,organic" +C;X56;K3 +C;X57;K15.1 +C;X58;K15.1 +C;X59;K8 +C;X60;K65 +C;X61;K"-" +C;X62;K300 +C;X63;K45 +C;X64;K0.5 +C;X65;K0 +C;X66;K3 +C;X67;K225 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BEsh" +C;X75;K"ground,air,enemy,neutral,organic" +C;X76;K3 +C;X77;K15.1 +C;X78;K15.1 +C;X79;K8 +C;X80;K65 +C;X81;K"-" +C;X82;K300 +C;X83;K45 +C;X84;K0.5 +C;X85;K0 +C;X86;K3 +C;X87;K225 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BEsh" +C;X95;K1 +C;X1;Y86;K"AEsv" +C;X2;K"AEsv" +C;X3;K"Warden - Spirit of Vengeance" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K180 +C;X19;K180 +C;X20;K150 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"espv" +C;X33;K"BEsv" +C;X35;K"_" +C;X36;K0 +C;X37;K60 +C;X38;K60 +C;X39;K20 +C;X40;K125 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"espv" +C;X53;K"BEsv" +C;X55;K"_" +C;X56;K0 +C;X57;K60 +C;X58;K60 +C;X59;K20 +C;X60;K125 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"espv" +C;X73;K"BEsv" +C;X75;K"_" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K20 +C;X80;K125 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"espv" +C;X93;K"BEsv" +C;X95;K1 +C;X1;Y87;K"ANab" +C;X2;K"ANab" +C;X3;K"Alchemist - Acid Bomb" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic,air" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K12 +C;X20;K75 +C;X21;K200 +C;X22;K700 +C;X23;K0 +C;X24;K0 +C;X25;K3 +C;X26;K5 +C;X27;K3 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNab" +C;X35;K"ground,enemy,neutral,organic,air" +C;X36;K0 +C;X37;K15 +C;X38;K15 +C;X39;K12 +C;X40;K75 +C;X41;K200 +C;X42;K700 +C;X43;K0 +C;X44;K0 +C;X45;K4 +C;X46;K10 +C;X47;K6.5 +C;X48;K1 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNab" +C;X55;K"ground,enemy,neutral,organic,air" +C;X56;K0 +C;X57;K15 +C;X58;K15 +C;X59;K12 +C;X60;K75 +C;X61;K200 +C;X62;K700 +C;X63;K0 +C;X64;K0 +C;X65;K5 +C;X66;K15 +C;X67;K10 +C;X68;K1 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNab" +C;X75;K"ground,enemy,neutral,organic,air" +C;X76;K0 +C;X77;K15 +C;X78;K15 +C;X79;K12 +C;X80;K75 +C;X81;K200 +C;X82;K700 +C;X83;K0 +C;X84;K0 +C;X85;K4 +C;X86;K16 +C;X87;K12 +C;X88;K1 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNab" +C;X95;K1 +C;X1;Y88;K"ANcr" +C;X2;K"ANcr" +C;X3;K"Alchemist - Chemical Rage" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"self" +C;X16;K0 +C;X17;K0.35 +C;X18;K15 +C;X19;K30 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Nalc" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K0.5 +C;X28;K0.25 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Nalm" +C;X33;K"BNcr" +C;X35;K"_" +C;X36;K0 +C;X37;K0.35 +C;X38;K15 +C;X39;K30 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Nalc" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K0.5 +C;X48;K0.75 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Nal2" +C;X53;K"BNcr" +C;X55;K"_" +C;X56;K0 +C;X57;K0.35 +C;X58;K15 +C;X59;K30 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Nalc" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K0.5 +C;X68;K1.25 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Nal3" +C;X73;K"BNcr" +C;X75;K"_" +C;X76;K0 +C;X77;K0.35 +C;X78;K15 +C;X79;K30 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Nalc" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K0.5 +C;X88;K1.25 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Nal3" +C;X93;K"BNcr" +C;X95;K1 +C;X1;Y89;K"ANhs" +C;X2;K"ANhs" +C;X3;K"Alchemist - Healing Spray" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K75 +C;X21;K250 +C;X22;K800 +C;X23;K40 +C;X24;K1 +C;X25;K6 +C;X26;K280 +C;X27;K1 +C;X28;K3 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNhs" +C;X34;K"XNhs" +C;X35;K"ground,air,organic" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K75 +C;X41;K250 +C;X42;K800 +C;X43;K55 +C;X44;K1 +C;X45;K6 +C;X46;K385 +C;X47;K1 +C;X48;K4 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNhs" +C;X54;K"XNhs" +C;X55;K"ground,air,organic" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K75 +C;X61;K250 +C;X62;K800 +C;X63;K70 +C;X64;K1 +C;X65;K6 +C;X66;K490 +C;X67;K1 +C;X68;K5 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNhs" +C;X74;K"XNhs" +C;X75;K"ground,air,organic" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K75 +C;X81;K200 +C;X82;K800 +C;X83;K70 +C;X84;K1 +C;X85;K6 +C;X86;K490 +C;X87;K1 +C;X88;K10 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNhs" +C;X94;K"XNhs" +C;X95;K1 +C;X1;Y90;K"ANtm" +C;X2;K"ANtm" +C;X3;K"Alchemist - Transmute" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,nonhero" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K45 +C;X20;K150 +C;X21;K"-" +C;X22;K650 +C;X23;K0.8 +C;X24;K0 +C;X25;K5 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNtm" +C;X35;K"air,ground,enemy,neutral" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K45 +C;X40;K200 +C;X41;K"-" +C;X42;K200 +C;X43;K2 +C;X44;K0 +C;X45;K5 +C;X46;K1 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNtm" +C;X55;K"air,ground,enemy,neutral" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K45 +C;X60;K200 +C;X61;K"-" +C;X62;K200 +C;X63;K2 +C;X64;K0 +C;X65;K5 +C;X66;K1 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNtm" +C;X75;K"air,ground,enemy,neutral" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K45 +C;X80;K200 +C;X81;K"-" +C;X82;K200 +C;X83;K2 +C;X84;K0 +C;X85;K5 +C;X86;K1 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNtm" +C;X95;K1 +C;X1;Y91;K"ANeg" +C;X2;K"ANeg" +C;X3;K"Tinkerer - Engineering Upgrade" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.1 +C;X24;K2 +C;X25;K"ANsy,ANs1" +C;X26;K"ANcs,ANc1" +C;X27;K"ANrg,ANg1" +C;X28;K"ANde,ANd1" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNeg" +C;X35;K"_" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K0 +C;X41;K"-" +C;X42;K"-" +C;X43;K0.2 +C;X44;K4 +C;X45;K"ANs1,ANs2" +C;X46;K"ANc1,ANc2" +C;X47;K"ANg1,ANg2" +C;X48;K"ANd1,ANd2" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNeg" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K0 +C;X61;K"-" +C;X62;K"-" +C;X63;K0.3 +C;X64;K6 +C;X65;K"ANs2,ANs3" +C;X66;K"ANc2,ANc3" +C;X67;K"ANg2,ANg3" +C;X68;K"ANd2,ANd3" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNeg" +C;X75;K"_" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K0 +C;X81;K"-" +C;X82;K"-" +C;X83;K0.3 +C;X84;K9 +C;X85;K"ANs2,ANs3" +C;X86;K"ANc2,ANc3" +C;X87;K"ANg2,ANg3" +C;X88;K"ANd2,ANd3" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNeg" +C;X95;K1 +C;X1;Y92;K"ANcs" +C;X2;K"ANcs" +C;X3;K"Tinkerer - Cluster Rockets (Level 0)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,structure" +C;X16;K0 +C;X17;K1.01 +C;X18;K1.01 +C;X19;K6 +C;X20;K70 +C;X21;K200 +C;X22;K800 +C;X23;K8.75 +C;X24;K0.25 +C;X25;K6 +C;X26;K105 +C;X27;K1 +C;X28;K1.01 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNcs" +C;X34;K"XNcs" +C;X35;K"ground,enemy,neutral,structure" +C;X36;K0 +C;X37;K1.01 +C;X38;K1.01 +C;X39;K6 +C;X40;K70 +C;X41;K200 +C;X42;K800 +C;X43;K16.25 +C;X44;K0.25 +C;X45;K12 +C;X46;K195 +C;X47;K1 +C;X48;K1.01 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNcs" +C;X54;K"XNcs" +C;X55;K"ground,enemy,neutral,structure" +C;X56;K0 +C;X57;K1.01 +C;X58;K1.01 +C;X59;K6 +C;X60;K70 +C;X61;K200 +C;X62;K800 +C;X63;K25 +C;X64;K0.25 +C;X65;K18 +C;X66;K300 +C;X67;K1 +C;X68;K1.01 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNcs" +C;X74;K"XNcs" +C;X75;K"ground,enemy,neutral,structure" +C;X76;K0 +C;X77;K1.01 +C;X78;K1.01 +C;X79;K6 +C;X80;K70 +C;X81;K200 +C;X82;K800 +C;X83;K25 +C;X84;K0.25 +C;X85;K24 +C;X86;K300 +C;X87;K1 +C;X88;K1.01 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNcs" +C;X94;K"XNcs" +C;X95;K1 +C;X1;Y93;K"ANc1" +C;X2;K"ANcs" +C;X3;K"Tinkerer - Cluster Rockets (Level 1)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,structure" +C;X16;K0 +C;X17;K1.01 +C;X18;K1.01 +C;X19;K6 +C;X20;K70 +C;X21;K230 +C;X22;K800 +C;X23;K8.75 +C;X24;K0.25 +C;X25;K6 +C;X26;K105 +C;X27;K1 +C;X28;K1.01 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNcs" +C;X34;K"XNcs" +C;X35;K"ground,enemy,neutral,structure" +C;X36;K0 +C;X37;K1.01 +C;X38;K1.01 +C;X39;K6 +C;X40;K70 +C;X41;K230 +C;X42;K800 +C;X43;K16.25 +C;X44;K0.25 +C;X45;K12 +C;X46;K195 +C;X47;K1 +C;X48;K1.01 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNcs" +C;X54;K"XNcs" +C;X55;K"ground,enemy,neutral,structure" +C;X56;K0 +C;X57;K1.01 +C;X58;K1.01 +C;X59;K6 +C;X60;K70 +C;X61;K230 +C;X62;K800 +C;X63;K25 +C;X64;K0.25 +C;X65;K18 +C;X66;K300 +C;X67;K1 +C;X68;K1.01 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNcs" +C;X74;K"XNcs" +C;X75;K"ground,enemy,neutral,structure" +C;X76;K0 +C;X77;K1.01 +C;X78;K1.01 +C;X79;K6 +C;X80;K70 +C;X81;K230 +C;X82;K800 +C;X83;K25 +C;X84;K0.25 +C;X85;K24 +C;X86;K300 +C;X87;K1 +C;X88;K1.01 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNcs" +C;X94;K"XNcs" +C;X95;K1 +C;X1;Y94;K"ANc2" +C;X2;K"ANcs" +C;X3;K"Tinkerer - Cluster Rockets (Level 2)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,structure" +C;X16;K0 +C;X17;K1.01 +C;X18;K1.01 +C;X19;K6 +C;X20;K70 +C;X21;K260 +C;X22;K800 +C;X23;K8.75 +C;X24;K0.25 +C;X25;K6 +C;X26;K105 +C;X27;K1 +C;X28;K1.01 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNcs" +C;X34;K"XNcs" +C;X35;K"ground,enemy,neutral,structure" +C;X36;K0 +C;X37;K1.01 +C;X38;K1.01 +C;X39;K6 +C;X40;K70 +C;X41;K260 +C;X42;K800 +C;X43;K16.25 +C;X44;K0.25 +C;X45;K12 +C;X46;K195 +C;X47;K1 +C;X48;K1.01 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNcs" +C;X54;K"XNcs" +C;X55;K"ground,enemy,neutral,structure" +C;X56;K0 +C;X57;K1.01 +C;X58;K1.01 +C;X59;K6 +C;X60;K70 +C;X61;K260 +C;X62;K800 +C;X63;K25 +C;X64;K0.25 +C;X65;K18 +C;X66;K300 +C;X67;K1 +C;X68;K1.01 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNcs" +C;X74;K"XNcs" +C;X75;K"ground,enemy,neutral,structure" +C;X76;K0 +C;X77;K1.01 +C;X78;K1.01 +C;X79;K6 +C;X80;K70 +C;X81;K260 +C;X82;K800 +C;X83;K25 +C;X84;K0.25 +C;X85;K24 +C;X86;K300 +C;X87;K1 +C;X88;K1.01 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNcs" +C;X94;K"XNcs" +C;X95;K1 +C;X1;Y95;K"ANc3" +C;X2;K"ANcs" +C;X3;K"Tinkerer - Cluster Rockets (Level 3)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,structure" +C;X16;K0 +C;X17;K1.01 +C;X18;K1.01 +C;X19;K6 +C;X20;K70 +C;X21;K290 +C;X22;K800 +C;X23;K8.75 +C;X24;K0.25 +C;X25;K6 +C;X26;K105 +C;X27;K1 +C;X28;K1.01 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNcs" +C;X34;K"XNcs" +C;X35;K"ground,enemy,neutral,structure" +C;X36;K0 +C;X37;K1.01 +C;X38;K1.01 +C;X39;K6 +C;X40;K70 +C;X41;K290 +C;X42;K800 +C;X43;K16.25 +C;X44;K0.25 +C;X45;K12 +C;X46;K195 +C;X47;K1 +C;X48;K1.01 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNcs" +C;X54;K"XNcs" +C;X55;K"ground,enemy,neutral,structure" +C;X56;K0 +C;X57;K1.01 +C;X58;K1.01 +C;X59;K6 +C;X60;K70 +C;X61;K290 +C;X62;K800 +C;X63;K25 +C;X64;K0.25 +C;X65;K18 +C;X66;K300 +C;X67;K1 +C;X68;K1.01 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNcs" +C;X74;K"XNcs" +C;X75;K"ground,enemy,neutral,structure" +C;X76;K0 +C;X77;K1.01 +C;X78;K1.01 +C;X79;K6 +C;X80;K70 +C;X81;K290 +C;X82;K800 +C;X83;K25 +C;X84;K0.25 +C;X85;K24 +C;X86;K300 +C;X87;K1 +C;X88;K1.01 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNcs" +C;X94;K"XNcs" +C;X95;K1 +C;X1;Y96;K"ANrg" +C;X2;K"ANrg" +C;X3;K"Tinkerer - Robo-Goblin (Level 0)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K0 +C;X19;K1 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Ntin" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K5 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Nrob" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K0 +C;X39;K1 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Ntin" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K7 +C;X48;K3 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Nrob" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K0 +C;X59;K1 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Ntin" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K7 +C;X68;K3 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Nrob" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K0 +C;X79;K1 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Ntin" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K7 +C;X88;K3 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Nrob" +C;X95;K1 +C;X1;Y97;K"ANg1" +C;X2;K"ANrg" +C;X3;K"Tinkerer - Robo-Goblin (Level 1)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K0 +C;X19;K1 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Ntin" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K7 +C;X28;K2 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Nrob" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K0 +C;X39;K1 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Ntin" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K10 +C;X48;K4 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Nrob" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K0 +C;X59;K1 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Ntin" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K10 +C;X68;K4 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Nrob" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K0 +C;X79;K1 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Ntin" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K10 +C;X88;K4 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Nrob" +C;X95;K1 +C;X1;Y98;K"ANg2" +C;X2;K"ANrg" +C;X3;K"Tinkerer - Robo-Goblin (Level 2)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K0 +C;X19;K1 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Ntin" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K9 +C;X28;K3 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Nrob" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K0 +C;X39;K1 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Ntin" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K13 +C;X48;K5 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Nrob" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K0 +C;X59;K1 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Ntin" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K13 +C;X68;K5 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Nrob" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K0 +C;X79;K1 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Ntin" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K13 +C;X88;K5 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Nrob" +C;X95;K1 +C;X1;Y99;K"ANg3" +C;X2;K"ANrg" +C;X3;K"Tinkerer - Robo-Goblin (Level 3)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K0 +C;X19;K1 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Ntin" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K11 +C;X28;K4 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Nrob" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K0 +C;X39;K1 +C;X40;K25 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Ntin" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K16 +C;X48;K6 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Nrob" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K0 +C;X59;K1 +C;X60;K25 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Ntin" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K16 +C;X68;K6 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Nrob" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K0 +C;X79;K1 +C;X80;K25 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Ntin" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K16 +C;X88;K6 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Nrob" +C;X95;K1 +C;X1;Y100;K"ANsy" +C;X2;K"ANsy" +C;X3;K"Tinkerer - Summon Factory (Level 0)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K35 +C;X20;K125 +C;X21;K"-" +C;X22;K500 +C;X23;K5 +C;X24;K"ncgb" +C;X25;K12 +C;X26;K200 +C;X27;K1100 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nfac" +C;X33;K"BNfy,BNcg" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K35 +C;X40;K125 +C;X41;K"-" +C;X42;K500 +C;X43;K5 +C;X44;K"ncg1" +C;X45;K12 +C;X46;K200 +C;X47;K1100 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nfa1" +C;X53;K"BNfy,BNcg" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K35 +C;X60;K125 +C;X61;K"-" +C;X62;K500 +C;X63;K5 +C;X64;K"ncg2" +C;X65;K12 +C;X66;K200 +C;X67;K1100 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nfa2" +C;X73;K"BNfy,BNcg" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K35 +C;X80;K125 +C;X81;K"-" +C;X82;K500 +C;X83;K5 +C;X84;K"ncg3" +C;X85;K12 +C;X86;K200 +C;X87;K1100 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nfa2" +C;X93;K"BNfy,BNcg" +C;X95;K1 +C;X1;Y101;K"ANs1" +C;X2;K"ANsy" +C;X3;K"Tinkerer - Summon Factory (Level 1)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K35 +C;X20;K125 +C;X21;K"-" +C;X22;K500 +C;X23;K4 +C;X24;K"ncgb" +C;X25;K12 +C;X26;K200 +C;X27;K1100 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nfac" +C;X33;K"BNfy,BNcg" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K35 +C;X40;K125 +C;X41;K"-" +C;X42;K500 +C;X43;K4 +C;X44;K"ncg1" +C;X45;K12 +C;X46;K200 +C;X47;K1100 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nfa1" +C;X53;K"BNfy,BNcg" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K35 +C;X60;K125 +C;X61;K"-" +C;X62;K500 +C;X63;K4 +C;X64;K"ncg2" +C;X65;K12 +C;X66;K200 +C;X67;K1100 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nfa2" +C;X73;K"BNfy,BNcg" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K35 +C;X80;K125 +C;X81;K"-" +C;X82;K500 +C;X83;K4 +C;X84;K"ncg3" +C;X85;K12 +C;X86;K200 +C;X87;K1100 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nfa2" +C;X93;K"BNfy,BNcg" +C;X95;K1 +C;X1;Y102;K"ANs2" +C;X2;K"ANsy" +C;X3;K"Tinkerer - Summon Factory (Level 2)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K35 +C;X20;K125 +C;X21;K"-" +C;X22;K500 +C;X23;K3.2 +C;X24;K"ncgb" +C;X25;K12 +C;X26;K200 +C;X27;K1100 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nfac" +C;X33;K"BNfy,BNcg" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K35 +C;X40;K125 +C;X41;K"-" +C;X42;K500 +C;X43;K3.2 +C;X44;K"ncg1" +C;X45;K12 +C;X46;K200 +C;X47;K1100 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nfa1" +C;X53;K"BNfy,BNcg" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K35 +C;X60;K125 +C;X61;K"-" +C;X62;K500 +C;X63;K3.2 +C;X64;K"ncg2" +C;X65;K12 +C;X66;K200 +C;X67;K1100 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nfa2" +C;X73;K"BNfy,BNcg" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K35 +C;X80;K125 +C;X81;K"-" +C;X82;K500 +C;X83;K3.2 +C;X84;K"ncg3" +C;X85;K12 +C;X86;K200 +C;X87;K1100 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nfa2" +C;X93;K"BNfy,BNcg" +C;X95;K1 +C;X1;Y103;K"ANs3" +C;X2;K"ANsy" +C;X3;K"Tinkerer - Summon Factory (Level 3)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K35 +C;X20;K125 +C;X21;K"-" +C;X22;K500 +C;X23;K2.56 +C;X24;K"ncgb" +C;X25;K12 +C;X26;K200 +C;X27;K1100 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nfac" +C;X33;K"BNfy,BNcg" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K35 +C;X40;K125 +C;X41;K"-" +C;X42;K500 +C;X43;K2.56 +C;X44;K"ncg1" +C;X45;K12 +C;X46;K200 +C;X47;K1100 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nfa1" +C;X53;K"BNfy,BNcg" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K35 +C;X60;K125 +C;X61;K"-" +C;X62;K500 +C;X63;K2.56 +C;X64;K"ncg2" +C;X65;K12 +C;X66;K200 +C;X67;K1100 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nfa2" +C;X73;K"BNfy,BNcg" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K35 +C;X80;K125 +C;X81;K"-" +C;X82;K500 +C;X83;K2.56 +C;X84;K"ncg3" +C;X85;K12 +C;X86;K200 +C;X87;K1100 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nfa2" +C;X93;K"BNfy,BNcg" +C;X95;K1 +C;X1;Y104;K"ANde" +C;X2;K"ANde" +C;X3;K"Tinkerer - Demolish (Level 0)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K2 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y105;K"ANd1" +C;X2;K"ANde" +C;X3;K"Tinkerer - Demolish (Level 1)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K2.5 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y106;K"ANd2" +C;X2;K"ANde" +C;X3;K"Tinkerer - Demolish (Level 2)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K3 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y107;K"ANd3" +C;X2;K"ANde" +C;X3;K"Tinkerer - Demolish (Level 3)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K3.5 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y108;K"ANic" +C;X2;K"ANic" +C;X3;K"Firelord - Incinerate" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,neutral,organic,nonancient" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K30 +C;X25;K90 +C;X26;K15 +C;X27;K180 +C;X28;K0.2 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNic" +C;X35;K"enemy,neutral,organic,nonancient" +C;X36;K0 +C;X37;K2 +C;X38;K2 +C;X39;K0 +C;X40;K0 +C;X41;K"-" +C;X42;K"-" +C;X43;K2 +C;X44;K45 +C;X45;K90 +C;X46;K22 +C;X47;K180 +C;X48;K0.2 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNic" +C;X55;K"enemy,neutral,organic,nonancient" +C;X56;K0 +C;X57;K2 +C;X58;K2 +C;X59;K0 +C;X60;K0 +C;X61;K"-" +C;X62;K"-" +C;X63;K3 +C;X64;K60 +C;X65;K100 +C;X66;K30 +C;X67;K180 +C;X68;K0.2 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNic" +C;X75;K"enemy,neutral,organic,nonancient" +C;X76;K0 +C;X77;K2 +C;X78;K2 +C;X79;K0 +C;X80;K0 +C;X81;K"-" +C;X82;K"-" +C;X83;K9 +C;X84;K80 +C;X85;K100 +C;X86;K40 +C;X87;K200 +C;X88;K0.2 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNic" +C;X95;K1 +C;X1;Y109;K"ANia" +C;X2;K"ANia" +C;X3;K"Firelord - Incinerate" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,neutral,organic,nonancient" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K6 +C;X21;K"-" +C;X22;K550 +C;X23;K1 +C;X24;K30 +C;X25;K90 +C;X26;K15 +C;X27;K180 +C;X28;K0.2 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNic" +C;X35;K"enemy,neutral,organic,nonancient" +C;X36;K0 +C;X37;K2 +C;X38;K2 +C;X39;K0 +C;X40;K6 +C;X41;K"-" +C;X42;K550 +C;X43;K2 +C;X44;K45 +C;X45;K90 +C;X46;K22 +C;X47;K180 +C;X48;K0.2 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNic" +C;X55;K"enemy,neutral,organic,nonancient" +C;X56;K0 +C;X57;K2 +C;X58;K2 +C;X59;K0 +C;X60;K6 +C;X61;K"-" +C;X62;K550 +C;X63;K3 +C;X64;K60 +C;X65;K100 +C;X66;K30 +C;X67;K180 +C;X68;K0.2 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNic" +C;X75;K"enemy,neutral,organic,nonancient" +C;X76;K0 +C;X77;K2 +C;X78;K2 +C;X79;K0 +C;X80;K6 +C;X81;K"-" +C;X82;K550 +C;X83;K9 +C;X84;K80 +C;X85;K100 +C;X86;K40 +C;X87;K200 +C;X88;K0.2 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNic" +C;X95;K1 +C;X1;Y110;K"ANso" +C;X2;K"ANso" +C;X3;K"Firelord - Soul Burn" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K14 +C;X18;K6 +C;X19;K12 +C;X20;K85 +C;X21;K"-" +C;X22;K700 +C;X23;K7.14 +C;X24;K1 +C;X25;K0.5 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNso" +C;X35;K"air,ground,enemy,neutral,organic" +C;X36;K0 +C;X37;K16 +C;X38;K7 +C;X39;K12 +C;X40;K85 +C;X41;K"-" +C;X42;K700 +C;X43;K14.06 +C;X44;K1 +C;X45;K0.5 +C;X46;K0 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNso" +C;X55;K"air,ground,enemy,neutral,organic" +C;X56;K0 +C;X57;K18 +C;X58;K8 +C;X59;K12 +C;X60;K85 +C;X61;K"-" +C;X62;K700 +C;X63;K20.833 +C;X64;K1 +C;X65;K0.5 +C;X66;K0 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNso" +C;X75;K"air,ground,enemy,neutral,organic" +C;X76;K0 +C;X77;K20 +C;X78;K10 +C;X79;K12 +C;X80;K85 +C;X81;K"-" +C;X82;K700 +C;X83;K27.5 +C;X84;K1 +C;X85;K0.5 +C;X86;K0 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNso" +C;X95;K1 +C;X1;Y111;K"ANlm" +C;X2;K"ANlm" +C;X3;K"Firelord - Summon Lava Spawn" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,neutral,air,ground,ward" +C;X16;K0 +C;X17;K70 +C;X18;K70 +C;X19;K32 +C;X20;K150 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K5 +C;X25;K15 +C;X26;K0.5 +C;X27;K12 +C;X28;K3 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nlv1" +C;X33;K"BNlm" +C;X35;K"enemy,neutral,air,ground,ward" +C;X36;K0 +C;X37;K70 +C;X38;K70 +C;X39;K32 +C;X40;K150 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K5 +C;X45;K15 +C;X46;K0.5 +C;X47;K12 +C;X48;K3 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nlv2" +C;X53;K"BNlm" +C;X55;K"enemy,neutral,air,ground,ward" +C;X56;K0 +C;X57;K70 +C;X58;K70 +C;X59;K32 +C;X60;K150 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K5 +C;X65;K15 +C;X66;K0.5 +C;X67;K12 +C;X68;K3 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nlv3" +C;X73;K"BNlm" +C;X75;K"enemy,neutral,air,ground,ward" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K35 +C;X80;K150 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K5 +C;X85;K15 +C;X86;K0.5 +C;X87;K12 +C;X88;K3 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nlv3" +C;X93;K"BNlm" +C;X95;K"]" +C;X1;Y112;K"ANvc" +C;X2;K"ANvc" +C;X3;K"Firelord - Volcano" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,notself,tree,debris" +C;X16;K0 +C;X17;K2 +C;X18;K1 +C;X19;K180 +C;X20;K200 +C;X21;K500 +C;X22;K800 +C;X23;K3 +C;X24;K8 +C;X25;K5 +C;X26;K2 +C;X27;K100 +C;X28;K0.5 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Volc" +C;X33;K"BNvc,BNva" +C;X34;K"XNvc" +C;X35;K"ground,structure,notself,tree,debris" +C;X36;K0 +C;X37;K2 +C;X38;K1 +C;X39;K180 +C;X40;K150 +C;X41;K500 +C;X42;K800 +C;X43;K3 +C;X44;K8 +C;X45;K5 +C;X46;K2 +C;X47;K100 +C;X48;K0.5 +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Volc" +C;X53;K"BNvc,BNva" +C;X54;K"XNvc" +C;X55;K"ground,structure,notself,tree,debris" +C;X56;K0 +C;X57;K2 +C;X58;K1 +C;X59;K180 +C;X60;K150 +C;X61;K500 +C;X62;K800 +C;X63;K3 +C;X64;K8 +C;X65;K5 +C;X66;K2 +C;X67;K100 +C;X68;K0.5 +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Volc" +C;X73;K"BNvc,BNva" +C;X74;K"XNvc" +C;X75;K"ground,structure,notself,tree,debris" +C;X76;K0 +C;X77;K2 +C;X78;K1 +C;X79;K180 +C;X80;K150 +C;X81;K500 +C;X82;K800 +C;X83;K3 +C;X84;K8 +C;X85;K5 +C;X86;K2 +C;X87;K100 +C;X88;K0.5 +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Volc" +C;X93;K"BNvc,BNva" +C;X94;K"XNvc" +C;X95;K1 +C;X29;Y113;K"-" +C;X30;K"-" +C;X31;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X1;Y114;K"ANin" +C;X2;K"ANin" +C;X3;K"Inferno" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K180 +C;X20;K175 +C;X21;K250 +C;X22;K900 +C;X23;K50 +C;X24;K360 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ninf" +C;X33;K"BNin" +C;X35;K"ground,structure,debris,enemy,neutral" +C;X36;K0 +C;X37;K4 +C;X38;K2 +C;X39;K180 +C;X40;K175 +C;X41;K250 +C;X42;K900 +C;X43;K50 +C;X44;K360 +C;X45;K1 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ninf" +C;X53;K"BNin" +C;X55;K"ground,structure,debris,enemy,neutral" +C;X56;K0 +C;X57;K4 +C;X58;K2 +C;X59;K180 +C;X60;K175 +C;X61;K250 +C;X62;K900 +C;X63;K50 +C;X64;K360 +C;X65;K1 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ninf" +C;X73;K"BNin" +C;X75;K"ground,structure,debris,enemy,neutral" +C;X76;K0 +C;X77;K4 +C;X78;K2 +C;X79;K180 +C;X80;K175 +C;X81;K250 +C;X82;K900 +C;X83;K50 +C;X84;K360 +C;X85;K1 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ninf" +C;X93;K"BNin" +C;X95;K1 +C;X1;Y115;K"SNin" +C;X2;K"AUin" +C;X3;K"Tichondrius - Inferno" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K30 +C;X20;K100 +C;X21;K250 +C;X22;K900 +C;X23;K50 +C;X24;K360 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ninf" +C;X33;K"BNin" +C;X35;K"ground,structure,debris,enemy,neutral" +C;X36;K"-" +C;X37;K4 +C;X38;K2 +C;X39;K30 +C;X40;K100 +C;X41;K250 +C;X42;K900 +C;X43;K50 +C;X44;K360 +C;X45;K1 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ninf" +C;X53;K"BNin" +C;X55;K"ground,structure,debris,enemy,neutral" +C;X56;K"-" +C;X57;K4 +C;X58;K2 +C;X59;K30 +C;X60;K100 +C;X61;K250 +C;X62;K900 +C;X63;K50 +C;X64;K360 +C;X65;K1 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ninf" +C;X73;K"BNin" +C;X75;K"ground,structure,debris,enemy,neutral" +C;X76;K"-" +C;X77;K4 +C;X78;K2 +C;X79;K30 +C;X80;K100 +C;X81;K250 +C;X82;K900 +C;X83;K50 +C;X84;K360 +C;X85;K1 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ninf" +C;X93;K"BNin" +C;X95;K1 +C;X1;Y116;K"ANfb" +C;X2;K"ANfb" +C;X3;K"Fire Bolt" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,enemy,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,organic,enemy,neutral" +C;X36;K"-" +C;X37;K3 +C;X38;K3 +C;X39;K8 +C;X40;K75 +C;X41;K"-" +C;X42;K800 +C;X43;K150 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,organic,enemy,neutral" +C;X56;K"-" +C;X57;K4 +C;X58;K4 +C;X59;K8 +C;X60;K75 +C;X61;K"-" +C;X62;K800 +C;X63;K200 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,organic,enemy,neutral" +C;X76;K"-" +C;X77;K4 +C;X78;K4 +C;X79;K8 +C;X80;K75 +C;X81;K"-" +C;X82;K800 +C;X83;K200 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y117;K"ANfd" +C;X2;K"ANfd" +C;X3;K"Finger of Death" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,structure,ancient,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K0.25 +C;X24;K1 +C;X25;K500 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,nonhero,structure,ancient,nonancient" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K15 +C;X40;K0 +C;X41;K"-" +C;X42;K800 +C;X43;K0.25 +C;X44;K1 +C;X45;K500 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,nonhero,structure,ancient,nonancient" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K15 +C;X60;K0 +C;X61;K"-" +C;X62;K800 +C;X63;K0.25 +C;X64;K1 +C;X65;K500 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,nonhero,structure,ancient,nonancient" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K15 +C;X80;K0 +C;X81;K"-" +C;X82;K800 +C;X83;K0.25 +C;X84;K1 +C;X85;K500 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y118;K"ACfd" +C;X2;K"ANfd" +C;X3;K"Finger of Pain" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,structure,ancient,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K5 +C;X20;K50 +C;X21;K"-" +C;X22;K800 +C;X23;K0.25 +C;X24;K1 +C;X25;K250 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,nonhero,structure,ancient,nonancient" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"air,ground,nonhero,structure,ancient,nonancient" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,nonhero,structure,ancient,nonancient" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y119;K"ACf3" +C;X2;K"ANfd" +C;X3;K"Finger of Pain (2,1 Button)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,structure,ancient,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K5 +C;X20;K50 +C;X21;K"-" +C;X22;K800 +C;X23;K0.25 +C;X24;K1 +C;X25;K250 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,nonhero,structure,ancient,nonancient" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"air,ground,nonhero,structure,ancient,nonancient" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,nonhero,structure,ancient,nonancient" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y120;K"ANdp" +C;X2;K"ANdp" +C;X3;K"Dark Portal" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K100 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K"nbal,nfel" +C;X24;K3 +C;X25;K5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K0 +C;X37;K1 +C;X38;K0 +C;X39;K100 +C;X40;K0 +C;X41;K"-" +C;X42;K800 +C;X43;K"nbal,nfel" +C;X44;K3 +C;X45;K6 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K0 +C;X57;K1 +C;X58;K0 +C;X59;K100 +C;X60;K0 +C;X61;K"-" +C;X62;K800 +C;X63;K"nbal,nfel" +C;X64;K5 +C;X65;K6 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K0 +C;X77;K1 +C;X78;K0 +C;X79;K100 +C;X80;K0 +C;X81;K"-" +C;X82;K800 +C;X83;K"nbal,nfel" +C;X84;K5 +C;X85;K6 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y121;K"ANrc" +C;X2;K"ANrc" +C;X3;K"Rain of Chaos" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K120 +C;X20;K0 +C;X21;K900 +C;X22;K1000 +C;X23;K"ANin" +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XErc" +C;X35;K"_" +C;X36;K0 +C;X37;K0.8 +C;X38;K0 +C;X39;K120 +C;X40;K0 +C;X41;K900 +C;X42;K1000 +C;X43;K"ANin" +C;X44;K3 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"XErc" +C;X55;K"_" +C;X56;K0 +C;X57;K0.6 +C;X58;K0 +C;X59;K120 +C;X60;K0 +C;X61;K900 +C;X62;K1000 +C;X63;K"ANin" +C;X64;K4 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"XErc" +C;X75;K"_" +C;X76;K0 +C;X77;K0.6 +C;X78;K0 +C;X79;K120 +C;X80;K0 +C;X81;K900 +C;X82;K1000 +C;X83;K"ANin" +C;X84;K4 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"XErc" +C;X95;K1 +C;X1;Y122;K"ANr3" +C;X2;K"ANrc" +C;X3;K"Rain of Chaos(Button 0,2)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K120 +C;X20;K0 +C;X21;K900 +C;X22;K1000 +C;X23;K"ANin" +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XErc" +C;X35;K"_" +C;X36;K0 +C;X37;K0.8 +C;X38;K0 +C;X39;K120 +C;X40;K0 +C;X41;K900 +C;X42;K1000 +C;X43;K"ANin" +C;X44;K3 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"XErc" +C;X55;K"_" +C;X56;K0 +C;X57;K0.6 +C;X58;K0 +C;X59;K120 +C;X60;K0 +C;X61;K900 +C;X62;K1000 +C;X63;K"ANin" +C;X64;K4 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"XErc" +C;X75;K"_" +C;X76;K0 +C;X77;K0.6 +C;X78;K0 +C;X79;K120 +C;X80;K0 +C;X81;K900 +C;X82;K1000 +C;X83;K"ANin" +C;X84;K4 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"XErc" +C;X95;K1 +C;X1;Y123;K"AEsb" +C;X2;K"AEsf" +C;X3;K"Cenarius - Beefy Starfall" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K35 +C;X18;K35 +C;X19;K100 +C;X20;K300 +C;X21;K900 +C;X22;K" - " +C;X23;K50 +C;X24;K2 +C;X25;K0.35 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"AEsd" +C;X34;K"XEsf" +C;X35;K"air,ground,structure,enemy,neutral" +C;X36;K"-" +C;X37;K30 +C;X38;K30 +C;X39;K120 +C;X40;K300 +C;X41;K900 +C;X42;K" - " +C;X43;K30 +C;X44;K2 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"AEsd" +C;X54;K"XEsf" +C;X55;K"air,ground,structure,enemy,neutral" +C;X56;K"-" +C;X57;K30 +C;X58;K30 +C;X59;K120 +C;X60;K300 +C;X61;K900 +C;X62;K" - " +C;X63;K30 +C;X64;K2 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"AEsd" +C;X74;K"XEsf" +C;X75;K"air,ground,structure,enemy,neutral" +C;X76;K"-" +C;X77;K30 +C;X78;K30 +C;X79;K120 +C;X80;K300 +C;X81;K900 +C;X82;K" - " +C;X83;K30 +C;X84;K2 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"AEsd" +C;X94;K"XEsf" +C;X95;K1 +C;X1;Y124;K"ANrn" +C;X2;K"AOre" +C;X3;K"Mannoroth - Reincarnation" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K" - " +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K3 +C;X37;K0 +C;X38;K0 +C;X39;K240 +C;X40;K" - " +C;X41;K"-" +C;X42;K"-" +C;X43;K7 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"XOre" +C;X55;K"_" +C;X56;K3 +C;X57;K0 +C;X58;K0 +C;X59;K240 +C;X60;K" - " +C;X61;K"-" +C;X62;K"-" +C;X63;K7 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"XOre" +C;X75;K"_" +C;X76;K3 +C;X77;K0 +C;X78;K0 +C;X79;K240 +C;X80;K" - " +C;X81;K"-" +C;X82;K"-" +C;X83;K7 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"XOre" +C;X95;K1 +C;X1;Y125;K"ANdc" +C;X2;K"ANdc" +C;X3;K"Malganis - Dark Conversion" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,nonhero" +C;X16;K5 +C;X17;K6 +C;X18;K6 +C;X19;K0.1 +C;X20;K0 +C;X21;K"-" +C;X22;K1000 +C;X23;K"commoner" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nzom" +C;X33;K"BNdc" +C;X35;K"air,ground,organic,nonhero" +C;X36;K5 +C;X37;K6 +C;X38;K6 +C;X39;K0.1 +C;X40;K0 +C;X41;K"-" +C;X42;K1000 +C;X43;K"commoner" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nzom" +C;X53;K"BNdc" +C;X55;K"air,ground,organic,nonhero" +C;X56;K5 +C;X57;K6 +C;X58;K6 +C;X59;K0.1 +C;X60;K0 +C;X61;K"-" +C;X62;K1000 +C;X63;K"commoner" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nzom" +C;X73;K"BNdc" +C;X75;K"air,ground,organic,nonhero" +C;X76;K5 +C;X77;K6 +C;X78;K6 +C;X79;K0.1 +C;X80;K0 +C;X81;K"-" +C;X82;K1000 +C;X83;K"commoner" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nzom" +C;X93;K"BNdc" +C;X95;K1 +C;X1;Y126;K"SNdc" +C;X2;K"ANdc" +C;X3;K"Dark Conversion (Fast)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,nonhero" +C;X16;K0 +C;X17;K6 +C;X18;K6 +C;X19;K0.1 +C;X20;K0 +C;X21;K"-" +C;X22;K1000 +C;X23;K"commoner" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nzom" +C;X33;K"BNdc" +C;X35;K"air,ground,organic,nonhero" +C;X36;K0 +C;X37;K6 +C;X38;K6 +C;X39;K0.1 +C;X40;K0 +C;X41;K"-" +C;X42;K1000 +C;X43;K"commoner" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nzom" +C;X53;K"BNdc" +C;X55;K"air,ground,organic,nonhero" +C;X56;K0 +C;X57;K6 +C;X58;K6 +C;X59;K0.1 +C;X60;K0 +C;X61;K"-" +C;X62;K1000 +C;X63;K"commoner" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nzom" +C;X73;K"BNdc" +C;X75;K"air,ground,organic,nonhero" +C;X76;K0 +C;X77;K6 +C;X78;K6 +C;X79;K0.1 +C;X80;K0 +C;X81;K"-" +C;X82;K1000 +C;X83;K"commoner" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nzom" +C;X93;K"BNdc" +C;X95;K1 +C;X1;Y127;K"ANsl" +C;X2;K"ANsl" +C;X3;K"Malganis - Soul Preservation" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,nonhero" +C;X16;K0.5 +C;X17;K3 +C;X18;K3 +C;X19;K0.1 +C;X20;K0 +C;X21;K"-" +C;X22;K1000 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nzom" +C;X33;K"BNsl" +C;X35;K"air,ground,organic,nonhero" +C;X36;K0.5 +C;X37;K3 +C;X38;K3 +C;X39;K0.1 +C;X40;K0 +C;X41;K"-" +C;X42;K1000 +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nzom" +C;X53;K"BNsl" +C;X55;K"air,ground,organic,nonhero" +C;X56;K0.5 +C;X57;K3 +C;X58;K3 +C;X59;K0.1 +C;X60;K0 +C;X61;K"-" +C;X62;K1000 +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nzom" +C;X73;K"BNsl" +C;X75;K"air,ground,organic,nonhero" +C;X76;K0.5 +C;X77;K3 +C;X78;K3 +C;X79;K0.1 +C;X80;K0 +C;X81;K"-" +C;X82;K1000 +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nzom" +C;X93;K"BNsl" +C;X95;K1 +C;X1;Y128;K"AEIl" +C;X2;K"AEme" +C;X3;K"Illidan - Metamorphosis" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K0 +C;X19;K120 +C;X20;K150 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Eill" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K500 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Eilm" +C;X33;K"BEme" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K0 +C;X39;K120 +C;X40;K150 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Eill" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K500 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Eilm" +C;X53;K"BEme" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K0 +C;X59;K120 +C;X60;K150 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Eill" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K500 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Eilm" +C;X73;K"BEme" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K0 +C;X79;K120 +C;X80;K150 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Eill" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K500 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Eilm" +C;X93;K"BEme" +C;X95;K1 +C;X1;Y129;K"AEvi" +C;X2;K"AEme" +C;X3;K"Evil Illidan - Metamorphosis" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K60 +C;X19;K120 +C;X20;K150 +C;X21;K"-" +C;X22;K"-" +C;X23;K"Eevi" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K500 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Eevm" +C;X33;K"BEme" +C;X35;K"_" +C;X36;K0 +C;X37;K1.5 +C;X38;K60 +C;X39;K120 +C;X40;K150 +C;X41;K"-" +C;X42;K"-" +C;X43;K"Eevi" +C;X44;K1 +C;X45;K0 +C;X46;K"-" +C;X47;K500 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Eevm" +C;X53;K"BEme" +C;X55;K"_" +C;X56;K0 +C;X57;K1.5 +C;X58;K60 +C;X59;K120 +C;X60;K150 +C;X61;K"-" +C;X62;K"-" +C;X63;K"Eevi" +C;X64;K1 +C;X65;K0 +C;X66;K"-" +C;X67;K500 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"Eevm" +C;X73;K"BEme" +C;X75;K"_" +C;X76;K0 +C;X77;K1.5 +C;X78;K60 +C;X79;K120 +C;X80;K150 +C;X81;K"-" +C;X82;K"-" +C;X83;K"Eevi" +C;X84;K1 +C;X85;K0 +C;X86;K"-" +C;X87;K500 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"Eevm" +C;X93;K"BEme" +C;X95;K0 +C;X1;Y130;K"SNeq" +C;X2;K"AOeq" +C;X3;K"Super Earthquake" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,tree" +C;X16;K0 +C;X17;K25 +C;X18;K20 +C;X19;K90 +C;X20;K150 +C;X21;K250 +C;X22;K1000 +C;X23;K0.5 +C;X24;K50 +C;X25;K0.75 +C;X26;K250 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOeq" +C;X34;K"XOeq" +C;X35;K"ground,structure,debris,tree" +C;X36;K0 +C;X37;K25 +C;X38;K20 +C;X39;K90 +C;X40;K150 +C;X41;K250 +C;X42;K1000 +C;X43;K0.5 +C;X44;K50 +C;X45;K0.75 +C;X46;K250 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOeq" +C;X54;K"XOeq" +C;X55;K"ground,structure,debris,tree" +C;X56;K0 +C;X57;K25 +C;X58;K20 +C;X59;K90 +C;X60;K150 +C;X61;K250 +C;X62;K1000 +C;X63;K0.5 +C;X64;K50 +C;X65;K0.75 +C;X66;K250 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOeq" +C;X74;K"XOeq" +C;X75;K"ground,structure,debris,tree" +C;X76;K0 +C;X77;K25 +C;X78;K20 +C;X79;K90 +C;X80;K150 +C;X81;K250 +C;X82;K1000 +C;X83;K0.5 +C;X84;K50 +C;X85;K0.75 +C;X86;K250 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOeq" +C;X94;K"XOeq" +C;X95;K1 +C;X1;Y131;K"SNdd" +C;X2;K"AUdd" +C;X3;K"Super Death and Decay" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,ward" +C;X16;K0 +C;X17;K35 +C;X18;K35 +C;X19;K150 +C;X20;K250 +C;X21;K300 +C;X22;K1000 +C;X23;K0.04 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUdd" +C;X34;K"XUdd" +C;X35;K"air,ground,structure,ward" +C;X36;K0 +C;X37;K35 +C;X38;K35 +C;X39;K150 +C;X40;K250 +C;X41;K300 +C;X42;K1000 +C;X43;K0.04 +C;X44;K1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BUdd" +C;X54;K"XUdd" +C;X55;K"air,ground,structure,ward" +C;X56;K0 +C;X57;K35 +C;X58;K35 +C;X59;K150 +C;X60;K250 +C;X61;K300 +C;X62;K1000 +C;X63;K0.04 +C;X64;K1 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BUdd" +C;X74;K"XUdd" +C;X75;K"air,ground,structure,ward" +C;X76;K0 +C;X77;K35 +C;X78;K35 +C;X79;K150 +C;X80;K250 +C;X81;K300 +C;X82;K1000 +C;X83;K0.04 +C;X84;K1 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BUdd" +C;X94;K"XUdd" +C;X95;K1 +C;X1;Y132;K"ANmo" +C;X2;K"ANmo" +C;X3;K"Monsoon" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K10 +C;X20;K75 +C;X21;K300 +C;X22;K500 +C;X23;K20 +C;X24;K1.5 +C;X25;K0.35 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"ANmd" +C;X34;K"XNmo" +C;X35;K"air,ground,structure,enemy,neutral" +C;X36;K"-" +C;X37;K15 +C;X38;K15 +C;X39;K10 +C;X40;K75 +C;X41;K400 +C;X42;K300 +C;X43;K20 +C;X44;K1.5 +C;X45;K0.35 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"ANmd" +C;X54;K"XNmo" +C;X55;K"air,ground,structure,enemy,neutral" +C;X56;K"-" +C;X57;K15 +C;X58;K15 +C;X59;K10 +C;X60;K75 +C;X61;K500 +C;X62;K300 +C;X63;K20 +C;X64;K1.5 +C;X65;K0.35 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"ANmd" +C;X74;K"XNmo" +C;X75;K"air,ground,structure,enemy,neutral" +C;X76;K"-" +C;X77;K15 +C;X78;K15 +C;X79;K10 +C;X80;K75 +C;X81;K500 +C;X82;K300 +C;X83;K20 +C;X84;K1.5 +C;X85;K0.35 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"ANmd" +C;X94;K"XNmo" +C;X95;K1 +C;X1;Y133;K"AEpa" +C;X2;K"AEpa" +C;X3;K"Poison Arrows" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K10 +C;X24;K4 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpoi,Bpsd,Bpsi" +C;X35;K"air,ground,organic" +C;X36;K0 +C;X37;K10 +C;X38;K10 +C;X39;K0 +C;X40;K0 +C;X41;K"-" +C;X42;K"-" +C;X43;K20 +C;X44;K6 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"Bpoi,Bpsd,Bpsi" +C;X55;K"air,ground,organic" +C;X56;K0 +C;X57;K10 +C;X58;K10 +C;X59;K0 +C;X60;K0 +C;X61;K"-" +C;X62;K"-" +C;X63;K30 +C;X64;K8 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"Bpoi,Bpsd,Bpsi" +C;X75;K"air,ground,organic" +C;X76;K0 +C;X77;K10 +C;X78;K10 +C;X79;K0 +C;X80;K0 +C;X81;K"-" +C;X82;K"-" +C;X83;K30 +C;X84;K8 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"Bpoi,Bpsd,Bpsi" +C;X95;K1 +C;X1;Y134;K"ANwm" +C;X2;K"ANwm" +C;X3;K"Watery Minion" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K75 +C;X21;K200 +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncfs" +C;X33;K"BNwm" +C;X35;K"_" +C;X36;K0 +C;X37;K60 +C;X38;K60 +C;X39;K20 +C;X40;K75 +C;X41;K200 +C;X42;K"-" +C;X43;K2 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ntws" +C;X53;K"BNwm" +C;X55;K"_" +C;X56;K0 +C;X57;K60 +C;X58;K60 +C;X59;K20 +C;X60;K75 +C;X61;K200 +C;X62;K"-" +C;X63;K2 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nsns" +C;X73;K"BNwm" +C;X75;K"_" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K20 +C;X80;K75 +C;X81;K200 +C;X82;K"-" +C;X83;K2 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nsns" +C;X93;K"BNwm" +C;X95;K1 +C;X1;Y135;K"AHca" +C;X2;K"AHca" +C;X3;K"Cold Arrows" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K6 +C;X18;K1 +C;X19;K0 +C;X20;K8 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0.3 +C;X25;K0.3 +C;X26;K7 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHca,Bcsd,Bcsi" +C;X35;K"air,ground,enemy,neutral" +C;X36;K"-" +C;X37;K6 +C;X38;K1 +C;X39;K"-" +C;X40;K8 +C;X41;K"-" +C;X42;K700 +C;X43;K10 +C;X44;K0.5 +C;X45;K0.5 +C;X46;K7 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BHca,Bcsd,Bcsi" +C;X55;K"air,ground,enemy,neutral" +C;X56;K"-" +C;X57;K6 +C;X58;K1 +C;X59;K"-" +C;X60;K8 +C;X61;K"-" +C;X62;K700 +C;X63;K15 +C;X64;K0.7 +C;X65;K0.7 +C;X66;K7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BHca,Bcsd,Bcsi" +C;X75;K"air,ground,enemy,neutral" +C;X76;K"-" +C;X77;K6 +C;X78;K1 +C;X79;K"-" +C;X80;K8 +C;X81;K"-" +C;X82;K700 +C;X83;K15 +C;X84;K0.7 +C;X85;K0.7 +C;X86;K7 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BHca,Bcsd,Bcsi" +C;X95;K1 +C;X29;Y136;K"-" +C;X30;K"-" +C;X31;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X1;Y137;K"ANbr" +C;X2;K"ANbr" +C;X3;K"Battle Roar" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K25 +C;X20;K50 +C;X21;K650 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNbr" +C;X35;K"air,ground,friend,self" +C;X36;K0 +C;X37;K10 +C;X38;K10 +C;X39;K25 +C;X40;K50 +C;X41;K650 +C;X42;K"-" +C;X43;K20 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNbr" +C;X55;K"air,ground,friend,self" +C;X56;K0 +C;X57;K10 +C;X58;K10 +C;X59;K25 +C;X60;K50 +C;X61;K650 +C;X62;K"-" +C;X63;K30 +C;X64;K0 +C;X65;K0 +C;X66;K0 +C;X67;K0 +C;X68;K0 +C;X69;K0 +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNbr" +C;X75;K"air,ground,friend,self" +C;X76;K0 +C;X77;K10 +C;X78;K10 +C;X79;K25 +C;X80;K50 +C;X81;K650 +C;X82;K"-" +C;X83;K40 +C;X84;K0 +C;X85;K0 +C;X86;K0 +C;X87;K0 +C;X88;K0 +C;X89;K0 +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNbr" +C;X95;K0 +C;X1;Y138;K"Arsg" +C;X2;K"AOsf" +C;X3;K"Rexxar - Summon Bear" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K150 +C;X21;K200 +C;X22;K800 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ngzc" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K30 +C;X40;K150 +C;X41;K200 +C;X42;K800 +C;X44;K1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"ngzd" +C;X53;K"BOsf" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K30 +C;X60;K150 +C;X61;K200 +C;X62;K800 +C;X64;K1 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"ngza" +C;X73;K"BOsf" +C;X75;K"_" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K30 +C;X80;K150 +C;X81;K200 +C;X82;K800 +C;X84;K1 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"ngz4" +C;X93;K"BOsf" +C;X95;K0 +C;X1;Y139;K"Aamk" +C;X2;K"Aamk" +C;X3;K"Attribute Modifier Skill" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K3 +C;X25;K3 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K0 +C;X41;K"-" +C;X42;K"-" +C;X43;K6 +C;X44;K6 +C;X45;K6 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K0 +C;X61;K"-" +C;X62;K"-" +C;X63;K9 +C;X64;K9 +C;X65;K9 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K0 +C;X81;K"-" +C;X82;K"-" +C;X83;K12 +C;X84;K12 +C;X85;K12 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y140;K"Arsq" +C;X2;K"ANsq" +C;X3;K"Rexxar - Summon Quilbeast" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K70 +C;X18;K70 +C;X19;K20 +C;X20;K50 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nqb1" +C;X33;K"BNsq" +C;X35;K"_" +C;X36;K0 +C;X37;K70 +C;X38;K70 +C;X39;K20 +C;X40;K50 +C;X41;K200 +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nqb2" +C;X53;K"BNsq" +C;X55;K"_" +C;X56;K0 +C;X57;K70 +C;X58;K70 +C;X59;K20 +C;X60;K50 +C;X61;K200 +C;X62;K"-" +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nqb3" +C;X73;K"BNsq" +C;X75;K"_" +C;X76;K0 +C;X77;K70 +C;X78;K70 +C;X79;K20 +C;X80;K50 +C;X81;K200 +C;X82;K"-" +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nqb4" +C;X93;K"BNsq" +C;X95;K0 +C;X1;Y141;K"Arsp" +C;X2;K"ANst" +C;X3;K"Rexxar - Stampede" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K2 +C;X12;K6 +C;X13;K6 +C;X14;K0 +C;X15;K"ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K180 +C;X20;K150 +C;X21;K1000 +C;X22;K300 +C;X23;K2 +C;X24;K55 +C;X25;K80 +C;X26;K275 +C;X27;K0.2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNst" +C;X35;K"ground,structure,enemy,neutral" +C;X36;K0 +C;X37;K30 +C;X38;K30 +C;X39;K180 +C;X40;K150 +C;X41;K1300 +C;X42;K400 +C;X43;K2 +C;X44;K55 +C;X45;K130 +C;X46;K275 +C;X47;K0.2 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNst" +C;X55;K"ground,structure,enemy,neutral" +C;X56;K0 +C;X57;K20 +C;X58;K20 +C;X59;K180 +C;X60;K200 +C;X61;K600 +C;X62;K1000 +C;X63;K2 +C;X64;K48 +C;X65;K50 +C;X66;K200 +C;X67;K0.2 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNst" +C;X75;K"ground,structure,enemy,neutral" +C;X76;K0 +C;X77;K20 +C;X78;K20 +C;X79;K180 +C;X80;K200 +C;X81;K600 +C;X82;K1000 +C;X83;K3.5 +C;X84;K48 +C;X85;K50 +C;X86;K200 +C;X87;K0.2 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNst" +C;X95;K0 +C;X1;Y142;K"ANsb" +C;X2;K"AHtb" +C;X3;K"Rexxar - Storm Bolt" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,debris,enemy,neutral,organic" +C;X16;K0 +C;X17;K5 +C;X18;K3 +C;X19;K9 +C;X20;K75 +C;X21;K"-" +C;X22;K600 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"air,ground,debris,enemy,neutral,organic" +C;X36;K"-" +C;X37;K7 +C;X38;K4 +C;X39;K9 +C;X40;K75 +C;X41;K"-" +C;X42;K600 +C;X43;K200 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BPSE" +C;X55;K"air,ground,debris,enemy,neutral,organic" +C;X56;K"-" +C;X57;K9 +C;X58;K5 +C;X59;K9 +C;X60;K75 +C;X61;K"-" +C;X62;K600 +C;X63;K300 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BPSE" +C;X75;K"air,ground,debris,enemy,neutral,organic" +C;X76;K"-" +C;X77;K12 +C;X78;K6 +C;X79;K9 +C;X80;K75 +C;X81;K"-" +C;X82;K600 +C;X83;K450 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BPSE" +C;X95;K0 +C;X1;Y143;K"ANhw" +C;X2;K"AOhw" +C;X3;K"Rokhan - Healing Wave" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K90 +C;X21;K500 +C;X22;K700 +C;X23;K130 +C;X24;K3 +C;X25;K0.25 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"air,ground,friend,self,vuln,invu,organic" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K9 +C;X40;K90 +C;X41;K500 +C;X42;K700 +C;X43;K215 +C;X44;K4 +C;X45;K0.25 +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"air,ground,friend,self,vuln,invu,organic" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K9 +C;X60;K90 +C;X61;K500 +C;X62;K700 +C;X63;K300 +C;X64;K5 +C;X65;K0.25 +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"air,ground,friend,self,vuln,invu,organic" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K9 +C;X80;K90 +C;X81;K500 +C;X82;K700 +C;X83;K425 +C;X84;K6 +C;X85;K0.25 +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y144;K"Arsw" +C;X2;K"AOwd" +C;X3;K"Rokhan - Serpent Ward" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K6.5 +C;X20;K30 +C;X21;K"-" +C;X22;K500 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"osp1" +C;X33;K"BOwd" +C;X35;K"_" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K6.5 +C;X40;K30 +C;X41;K"-" +C;X42;K500 +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"osp2" +C;X53;K"BOwd" +C;X55;K"_" +C;X56;K0 +C;X57;K40 +C;X58;K40 +C;X59;K6.5 +C;X60;K30 +C;X61;K"-" +C;X62;K500 +C;X63;K1 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"osp3" +C;X73;K"BOwd" +C;X75;K"_" +C;X76;K0 +C;X77;K40 +C;X78;K40 +C;X79;K6.5 +C;X80;K30 +C;X81;K"-" +C;X82;K500 +C;X83;K1 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"osp4" +C;X93;K"BOwd" +C;X95;K0 +C;X1;Y145;K"ANhx" +C;X2;K"AOhx" +C;X3;K"Rokhan - Hex" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K4 +C;X19;K7 +C;X20;K70 +C;X21;K"-" +C;X22;K800 +C;X23;K99 +C;X24;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X25;K"nalb,nvul,nsno" +C;X26;K"nsha,npng" +C;X27;K"nshw,npnw" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOhx" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K0 +C;X37;K30 +C;X38;K5 +C;X39;K7 +C;X40;K70 +C;X41;K"-" +C;X42;K800 +C;X43;K99 +C;X44;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X45;K"nalb,nvul,nsno" +C;X46;K"nsha,npng" +C;X47;K"nshw,npnw" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOhx" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K0 +C;X57;K45 +C;X58;K6 +C;X59;K7 +C;X60;K70 +C;X61;K"-" +C;X62;K800 +C;X63;K99 +C;X64;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X65;K"nalb,nvul,nsno" +C;X66;K"nsha,npng" +C;X67;K"nshw,npnw" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOhx" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K0 +C;X77;K45 +C;X78;K6 +C;X79;K7 +C;X80;K25 +C;X81;K"-" +C;X82;K800 +C;X83;K99 +C;X84;K"npig,nsea,ncrb,nhmc,nrat,nfro,nech,necr,nrac" +C;X85;K"nalb,nvul,nsno" +C;X86;K"nsha,npng" +C;X87;K"nshw,npnw" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOhx" +C;X95;K0 +C;X1;Y146;K"AOls" +C;X2;K"AUls" +C;X3;K"Rokhan - Voodoo Spirits" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K2 +C;X12;K6 +C;X13;K6 +C;X14;K0 +C;X15;K"air,ground,structure,neutral,enemy" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K180 +C;X20;K150 +C;X21;K800 +C;X22;K"-" +C;X23;K20 +C;X24;K0.2 +C;X25;K7 +C;X26;K0.75 +C;X27;K20 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uloc" +C;X35;K"air,ground,structure,neutral,enemy" +C;X36;K0 +C;X37;K30 +C;X38;K30 +C;X39;K180 +C;X40;K150 +C;X41;K800 +C;X42;K"-" +C;X43;K35 +C;X44;K0.2 +C;X45;K12 +C;X46;K1 +C;X47;K25 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"uloc" +C;X55;K"air,ground,structure,neutral,enemy" +C;X56;K0 +C;X57;K30 +C;X58;K30 +C;X59;K180 +C;X60;K150 +C;X61;K800 +C;X62;K"-" +C;X63;K20 +C;X64;K0.2 +C;X65;K7 +C;X66;K1 +C;X67;K20 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"uloc" +C;X75;K"air,ground,structure,neutral,enemy" +C;X76;K0 +C;X77;K30 +C;X78;K30 +C;X79;K180 +C;X80;K150 +C;X81;K800 +C;X82;K"-" +C;X83;K20 +C;X84;K0.2 +C;X85;K7 +C;X86;K1 +C;X87;K20 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"uloc" +C;X95;K0 +C;X1;Y147;K"ANcf" +C;X2;K"ANbf" +C;X3;K"Chen - Breath of Fire" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,structure" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K10 +C;X20;K75 +C;X21;K150 +C;X22;K500 +C;X23;K50 +C;X24;K99999 +C;X25;K500 +C;X26;K250 +C;X27;K7 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNbf" +C;X35;K"ground,air,structure" +C;X36;K"-" +C;X37;K5 +C;X38;K5 +C;X39;K10 +C;X40;K75 +C;X41;K150 +C;X42;K700 +C;X43;K100 +C;X44;K99999 +C;X45;K800 +C;X46;K150 +C;X47;K14 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNbf" +C;X55;K"ground,air,structure" +C;X56;K"-" +C;X57;K5 +C;X58;K5 +C;X59;K10 +C;X60;K75 +C;X61;K150 +C;X62;K700 +C;X63;K150 +C;X64;K99999 +C;X65;K800 +C;X66;K150 +C;X67;K21 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNbf" +C;X75;K"ground,air,structure" +C;X76;K"-" +C;X77;K5 +C;X78;K5 +C;X79;K10 +C;X80;K75 +C;X81;K150 +C;X82;K700 +C;X83;K225 +C;X84;K99999 +C;X85;K800 +C;X86;K150 +C;X87;K30 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNbf" +C;X95;K0 +C;X1;Y148;K"Acdb" +C;X2;K"ANdb" +C;X3;K"Chen- Drunken Brawler" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K2 +C;X25;K0 +C;X26;K0.07 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K10 +C;X44;K3 +C;X45;K0 +C;X46;K0.14 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K10 +C;X64;K4 +C;X65;K0 +C;X66;K0.21 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K10 +C;X84;K6 +C;X85;K0 +C;X86;K0.3 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y149;K"Acdh" +C;X2;K"ANdh" +C;X3;K"Chen - Drunken Haze" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K5 +C;X19;K12 +C;X20;K75 +C;X21;K200 +C;X22;K550 +C;X23;K0 +C;X24;K0.45 +C;X25;K0.5 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNdh" +C;X35;K"air,ground,enemy,organic,neutral" +C;X36;K0 +C;X37;K12 +C;X38;K5 +C;X39;K12 +C;X40;K75 +C;X41;K200 +C;X42;K550 +C;X43;K0 +C;X44;K0.65 +C;X45;K0.5 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNdh" +C;X55;K"air,ground,enemy,organic,neutral" +C;X56;K0 +C;X57;K12 +C;X58;K5 +C;X59;K12 +C;X60;K75 +C;X61;K200 +C;X62;K550 +C;X63;K0 +C;X64;K0.8 +C;X65;K0.5 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNdh" +C;X75;K"air,ground,enemy,organic,neutral" +C;X76;K0 +C;X77;K12 +C;X78;K5 +C;X79;K12 +C;X80;K75 +C;X81;K200 +C;X82;K550 +C;X83;K0 +C;X84;K0.95 +C;X85;K0.5 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNdh" +C;X95;K0 +C;X1;Y150;K"Acef" +C;X2;K"ANef" +C;X3;K"Chen - Storm, Earth and Fire" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K2 +C;X12;K6 +C;X13;K6 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K180 +C;X20;K150 +C;X21;K128 +C;X22;K"-" +C;X23;K"npn1,npn2,npn3" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNef" +C;X35;K"_" +C;X36;K0 +C;X37;K60 +C;X38;K60 +C;X39;K180 +C;X40;K150 +C;X41;K128 +C;X42;K"-" +C;X43;K"npn4,npn5,npn6" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BNef" +C;X55;K"_" +C;X56;K0 +C;X57;K60 +C;X58;K60 +C;X59;K180 +C;X60;K150 +C;X61;K128 +C;X62;K"-" +C;X63;K"npn1,npn2,npn3" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BNef" +C;X75;K"_" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K180 +C;X80;K150 +C;X81;K128 +C;X82;K"-" +C;X83;K"npn1,npn2,npn3" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BNef" +C;X95;K1 +C;X1;Y151;K"AOr2" +C;X2;K"AOae" +C;X3;K"Cairne - Endurance Aura" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0.05 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOae" +C;X35;K"air,ground,friend,self,vuln,invu" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K900 +C;X42;K"-" +C;X43;K0.2 +C;X44;K0.1 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOae" +C;X55;K"air,ground,friend,self,vuln,invu" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K900 +C;X62;K"-" +C;X63;K0.3 +C;X64;K0.15 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOae" +C;X75;K"air,ground,friend,self,vuln,invu" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K900 +C;X82;K"-" +C;X83;K0.4 +C;X84;K0.25 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOae" +C;X95;K1 +C;X1;Y152;K"AOr3" +C;X2;K"AOre" +C;X3;K"Cairne - Reincarnation" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K2 +C;X12;K6 +C;X13;K6 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K" - " +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K120 +C;X40;K" - " +C;X41;K"-" +C;X42;K"-" +C;X43;K2 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X54;K"XOre" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K240 +C;X60;K" - " +C;X61;K"-" +C;X62;K"-" +C;X63;K7 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X74;K"XOre" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K240 +C;X80;K" - " +C;X81;K"-" +C;X82;K"-" +C;X83;K7 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X94;K"XOre" +C;X95;K1 +C;X1;Y153;K"AOs2" +C;X2;K"AOsh" +C;X3;K"Cairne - Shock Wave" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K150 +C;X22;K700 +C;X23;K75 +C;X24;K99999 +C;X25;K800 +C;X26;K150 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOsh" +C;X35;K"ground,structure" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K8 +C;X40;K100 +C;X41;K150 +C;X42;K700 +C;X43;K130 +C;X44;K9999 +C;X45;K800 +C;X46;K150 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOsh" +C;X55;K"ground,structure" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K8 +C;X60;K100 +C;X61;K150 +C;X62;K700 +C;X63;K200 +C;X64;K9999 +C;X65;K800 +C;X66;K150 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOsh" +C;X75;K"ground,structure" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K8 +C;X80;K100 +C;X81;K150 +C;X82;K700 +C;X83;K300 +C;X84;K9999 +C;X85;K800 +C;X86;K150 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOsh" +C;X95;K1 +C;X1;Y154;K"AOw2" +C;X2;K"AOws" +C;X3;K"Cairne- War Stomp" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"orc" +C;X10;K1 +C;X11;K4 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,organic" +C;X16;K0 +C;X17;K3 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"ground,organic" +C;X36;K"-" +C;X37;K4 +C;X38;K3 +C;X39;K6 +C;X40;K90 +C;X41;K300 +C;X42;K"-" +C;X43;K50 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BPSE" +C;X55;K"ground,organic" +C;X56;K"-" +C;X57;K5 +C;X58;K4 +C;X59;K6 +C;X60;K90 +C;X61;K350 +C;X62;K"-" +C;X63;K75 +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BPSE" +C;X75;K"ground,organic" +C;X76;K"-" +C;X77;K6 +C;X78;K4.5 +C;X79;K6 +C;X80;K90 +C;X81;K350 +C;X82;K"-" +C;X83;K100 +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BPSE" +C;X95;K1 +C;X29;Y155;K"-" +C;X30;K"-" +C;X31;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X1;Y156;K"ANcl" +C;X2;K"ANcl" +C;X3;K"Illidan - Channel" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K180 +C;X24;K0 +C;X25;K0 +C;X26;K0.98 +C;X27;K1 +C;X28;K"channel" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K0 +C;X37;K0 +C;X38;K0 +C;X39;K0 +C;X40;K0 +C;X41;K"-" +C;X42;K500 +C;X43;K180 +C;X44;K0 +C;X45;K0 +C;X46;K0.98 +C;X47;K1 +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K0 +C;X61;K"-" +C;X62;K500 +C;X63;K180 +C;X64;K0 +C;X65;K0 +C;X66;K0.98 +C;X67;K1 +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K0 +C;X77;K0 +C;X78;K0 +C;X79;K0 +C;X80;K0 +C;X81;K"-" +C;X82;K500 +C;X83;K180 +C;X84;K0 +C;X85;K0 +C;X86;K0.98 +C;X87;K1 +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y157;K"Aadm" +C;X2;K"Aadm" +C;X3;K"Abolish Magic" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K300 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y158;K"Andm" +C;X2;K"Aadm" +C;X3;K"Abolish Magic(naga)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K300 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y159;K"ACdm" +C;X2;K"Aadm" +C;X3;K"Abolish Magic (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K75 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K300 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y160;K"ACd2" +C;X2;K"Aadm" +C;X3;K"Abolish Magic (Creep, 1,2 pos)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K75 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K300 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y161;K"Aabs" +C;X2;K"Aabs" +C;X3;K"Absorb Mana" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"player,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K0 +C;X24;K99999 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y162;K"Aaha" +C;X2;K"Aaha" +C;X3;K"Acolyte Harvest" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K200 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y163;K"ANav" +C;X2;K"AHav" +C;X3;K"Avatar(Garithos)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K6 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K180 +C;X20;K150 +C;X21;K0.5 +C;X22;K"-" +C;X23;K5 +C;X24;K500 +C;X25;K20 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K180 +C;X40;K150 +C;X41;K0.5 +C;X42;K"-" +C;X43;K5 +C;X44;K500 +C;X45;K20 +C;X46;K0 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K60 +C;X58;K60 +C;X59;K180 +C;X60;K150 +C;X61;K0.5 +C;X62;K"-" +C;X63;K5 +C;X64;K500 +C;X65;K20 +C;X66;K0 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K60 +C;X78;K60 +C;X79;K180 +C;X80;K150 +C;X81;K0.5 +C;X82;K"-" +C;X83;K5 +C;X84;K500 +C;X85;K20 +C;X86;K0 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y164;K"Aalr" +C;X2;K"Aalr" +C;X3;K"Alarm" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,vuln,invu" +C;X16;K0 +C;X17;K3 +C;X18;K3 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y165;K"Aall" +C;X2;K"Aall" +C;X3;K"Allied Building" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K350 +C;X23;K600 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y166;K"Aast" +C;X2;K"Aast" +C;X3;K"Ancestral Spirit" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,dead" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K250 +C;X21;K"-" +C;X22;K350 +C;X23;K1 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y167;K"ACad" +C;X2;K"ACad" +C;X3;K"Animate Dead (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead" +C;X16;K0 +C;X17;K120 +C;X18;K120 +C;X19;K240 +C;X20;K250 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUan" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y168;K"Aams" +C;X2;K"Aams" +C;X3;K"Anti-magic Shield" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,vuln,invu" +C;X16;K0 +C;X17;K90 +C;X18;K90 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bams,Bam2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y169;K"Aam2" +C;X2;K"Aams" +C;X3;K"Anti-magic Shield (Matrix)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,vuln,invu,friend,self" +C;X16;K0 +C;X17;K90 +C;X18;K90 +C;X19;K0 +C;X20;K75 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K0 +C;X25;K300 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bams,Bam2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y170;K"ACam" +C;X2;K"Aams" +C;X3;K"Anti-magic Shield (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,vuln,invu" +C;X16;K0 +C;X17;K90 +C;X18;K90 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bams,Bam2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y171;K"Aatk" +C;X2;K"Aatk" +C;X3;K"Attack" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y172;K"ACba" +C;X2;K"AHab" +C;X3;K"Aura - Brilliance (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K1 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHab" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y173;K"ACac" +C;X2;K"AOac" +C;X3;K"Aura - Command (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K1 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOac" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y174;K"ACav" +C;X2;K"AHad" +C;X3;K"Aura - Devotion (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K3 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHad" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y175;K"SCae" +C;X2;K"AOae" +C;X3;K"Aura - Endurance (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0.05 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOae" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y176;K"Aap1" +C;X2;K"Aapl" +C;X3;K"Aura - Plague (Abomination)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K176 +C;X22;K"-" +C;X23;K120 +C;X24;K1 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uplg" +C;X33;K"Bapl" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y177;K"Aap2" +C;X2;K"Aapl" +C;X3;K"Aura - Plague (Plague Ward)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K"-" +C;X23;K120 +C;X24;K1 +C;X25;K-1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bapl,Bplg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y178;K"Aap3" +C;X2;K"Aapl" +C;X3;K"Aura - Plague (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K"-" +C;X23;K120 +C;X24;K1 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uplg" +C;X33;K"Bapl,Bplg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y179;K"Aap4" +C;X2;K"Aapl" +C;X3;K"Aura - Plague (Creep gfx)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K-1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bapl,Bplg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y180;K"Aoar" +C;X2;K"Aoar" +C;X3;K"Aura - Regeneration (Ward)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic,vuln,invu,friend,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K0.02 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Boar" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y181;K"Aabr" +C;X2;K"Aabr" +C;X3;K"Aura - Regeneration (Statue)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic,vuln,invu,friend,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K700 +C;X22;K"-" +C;X23;K0.004 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Babr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y182;K"Aasl" +C;X2;K"Aasl" +C;X3;K"Aura - Slow" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K" - " +C;X23;K-0.6 +C;X24;K0 +C;X25;K" - " +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Basl" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K"-" +C;X44;K" - " +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K" - " +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K"-" +C;X84;K" - " +C;X85;K" - " +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y183;K"ACat" +C;X2;K"AEar" +C;X3;K"Aura - Trueshot (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEar" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y184;K"Aakb" +C;X2;K"Aakb" +C;X3;K"Aura - War Drums" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K1 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bakb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y185;K"Aave" +C;X2;K"Aave" +C;X3;K"Avenger Form" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K1.1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K-1 +C;X22;K"-" +C;X23;K"uobs" +C;X24;K31 +C;X25;K1 +C;X26;K0 +C;X27;K8 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ubsp" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y186;K"Aawa" +C;X2;K"Aawa" +C;X3;K"Awaken" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y187;K"Abof" +C;X2;K"Abof" +C;X3;K"Balls of Fire" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,friend,structure,self" +C;X16;K0 +C;X17;K2.51 +C;X18;K1.01 +C;X19;K10 +C;X20;K125 +C;X21;K150 +C;X22;K800 +C;X23;K6 +C;X24;K0.5 +C;X25;K3 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bbof" +C;X34;K"Xbof" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y188;K"ACbn" +C;X2;K"AHbn" +C;X3;K"Banish(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonsapper,organic" +C;X16;K0 +C;X17;K24 +C;X18;K6 +C;X19;K10 +C;X20;K50 +C;X21;K"-" +C;X22;K800 +C;X23;K0.5 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHbn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y189;K"ACbh" +C;X2;K"AHbh" +C;X3;K"Bash (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K15 +C;X24;K0 +C;X25;K25 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y190;K"ANbh" +C;X2;K"AHbh" +C;X3;K"Bash (Beastmaster Bear)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K2 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K25 +C;X24;K0 +C;X25;K25 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y191;K"ANb2" +C;X2;K"AHbh" +C;X3;K"Bash (maul , SP Bear, level 3)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K35 +C;X24;K0 +C;X25;K50 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y192;K"Abtl" +C;X2;K"Abtl" +C;X3;K"Battlestations" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2000 +C;X22;K"-" +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"opeo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y193;K"Sbtl" +C;X2;K"Abtl" +C;X3;K"Battlestations (Chaos)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2000 +C;X22;K"-" +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncpn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y194;K"Abrf" +C;X2;K"Abrf" +C;X3;K"Bearform" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.45 +C;X18;K0 +C;X19;K0 +C;X20;K25 +C;X21;K"-" +C;X22;K"-" +C;X23;K"edoc" +C;X24;K1 +C;X25;K0 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"edcm" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y195;K"Absk" +C;X2;K"Absk" +C;X3;K"Beserk" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.2 +C;X24;K0.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bbsk" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y196;K"Sbsk" +C;X2;K"Acha" +C;X3;K"Berserker Upgrade" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"otbk" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y197;K"ACbk" +C;X2;K"ANba" +C;X3;K"Black Arrow (melee, creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K2 +C;X20;K6 +C;X21;K"-" +C;X22;K600 +C;X23;K2 +C;X24;K1 +C;X25;K80 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ndr1" +C;X33;K"BNba,BNdm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y198;K"Abds" +C;X2;K"Abli" +C;X3;K"Blight Dispel (Small)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.08 +C;X18;K0.08 +C;X19;K0 +C;X20;K0 +C;X21;K768 +C;X22;K"-" +C;X23;K64 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y199;K"Abdl" +C;X2;K"Abli" +C;X3;K"Blight Dispel (Large)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.08 +C;X18;K0.08 +C;X19;K0 +C;X20;K0 +C;X21;K960 +C;X22;K"-" +C;X23;K64 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y200;K"Abgs" +C;X2;K"Abli" +C;X3;K"Blight Growth (Small)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.08 +C;X18;K0.08 +C;X19;K0 +C;X20;K0 +C;X21;K768 +C;X22;K"-" +C;X23;K64 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y201;K"Abgl" +C;X2;K"Abli" +C;X3;K"Blight Growth (Large)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.08 +C;X18;K0.08 +C;X19;K0 +C;X20;K0 +C;X21;K960 +C;X22;K"-" +C;X23;K64 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y202;K"Abgm" +C;X2;K"Abgm" +C;X3;K"Blighted Gold mine" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K1 +C;X25;K5 +C;X26;K200 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y203;K"ANbl" +C;X2;K"AEbl" +C;X3;K"Blink(Beastmaster Bear)" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.33 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K"-" +C;X22;K99999 +C;X23;K1050 +C;X24;K150 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K0.33 +C;X38;K"-" +C;X39;K10 +C;X40;K10 +C;X41;K"-" +C;X42;K99999 +C;X43;K1075 +C;X44;K200 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K0.33 +C;X58;K"-" +C;X59;K1 +C;X60;K10 +C;X61;K"-" +C;X62;K99999 +C;X63;K1150 +C;X64;K200 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K0.33 +C;X78;K"-" +C;X79;K1 +C;X80;K10 +C;X81;K"-" +C;X82;K99999 +C;X83;K1150 +C;X84;K200 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y204;K"ACbz" +C;X2;K"AHbz" +C;X3;K"Blizzard (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K12 +C;X20;K125 +C;X21;K200 +C;X22;K800 +C;X23;K6 +C;X24;K15 +C;X25;K6 +C;X26;K0.5 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHbd,BHbz" +C;X34;K"XHbz" +C;X35;K"_" +C;X36;K"-" +C;X37;K" - " +C;X38;K" - " +C;X39;K"-" +C;X40;K"-" +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y205;K"Ablo" +C;X2;K"Ablo" +C;X3;K"Bloodlust" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K11 +C;X15;K"air,ground,friend,organic,self,neutral" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K1 +C;X20;K40 +C;X21;K"-" +C;X22;K600 +C;X23;K0.4 +C;X24;K0.25 +C;X25;K0.3 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bblo" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y206;K"ACbl" +C;X2;K"Ablo" +C;X3;K"Bloodlust (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K11 +C;X15;K"air,ground,friend,organic,self,neutral" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K600 +C;X23;K0.4 +C;X24;K0.25 +C;X25;K0.3 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bblo" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y207;K"ACbb" +C;X2;K"Ablo" +C;X3;K"Bloodlust (creep, Hotkey B)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K11 +C;X15;K"air,ground,friend,organic,self,neutral" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K8 +C;X20;K50 +C;X21;K"-" +C;X22;K600 +C;X23;K0.4 +C;X24;K0.25 +C;X25;K0.3 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bblo" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y208;K"ACbc" +C;X2;K"ANbf" +C;X3;K"Breath of Fire(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K10 +C;X20;K125 +C;X21;K150 +C;X22;K700 +C;X23;K150 +C;X24;K99999 +C;X25;K800 +C;X26;K150 +C;X27;K21 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNbf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"-" +C;X95;K1 +C;X1;Y209;K"ACbf" +C;X2;K"ACbf" +C;X3;K"Breath of Frost(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K10 +C;X20;K125 +C;X21;K150 +C;X22;K700 +C;X23;K50 +C;X24;K99999 +C;X25;K800 +C;X26;K150 +C;X27;K7 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BCbf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"-" +C;X95;K1 +C;X1;Y210;K"ANbu" +C;X2;K"ANbu" +C;X3;K"Build (Neutral)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y211;K"AHbu" +C;X2;K"AHbu" +C;X3;K"Build (Human)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y212;K"AObu" +C;X2;K"AObu" +C;X3;K"Build (Orc)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y213;K"AEbu" +C;X2;K"AEbu" +C;X3;K"Build (Night Elf)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y214;K"AUbu" +C;X2;K"AUbu" +C;X3;K"Build (Undead)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y215;K"AGbu" +C;X2;K"AGbu" +C;X3;K"Build (Naga)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y216;K"Abur" +C;X2;K"Abur" +C;X3;K"Burrow" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.45 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"ucry" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ucrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y217;K"Abu2" +C;X2;K"Abur" +C;X3;K"Burrow(scarab lvl 2)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.45 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"ucs2" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ucsB" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y218;K"Abu3" +C;X2;K"Abur" +C;X3;K"Burrow(scarab lvl 3)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.45 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"ucs3" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ucsC" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y219;K"Abu5" +C;X2;K"Abur" +C;X3;K"Burrow(Barbed Arachnathid)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.45 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"nanm" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nbnb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y220;K"Abdt" +C;X2;K"Abdt" +C;X3;K"Burrow Detection (Flyers)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y221;K"Acan" +C;X2;K"Acan" +C;X3;K"Cannibalize" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,dead,organic" +C;X16;K0 +C;X17;K33 +C;X18;K33 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K10 +C;X24;K800 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y222;K"Acn2" +C;X2;K"Acan" +C;X3;K"Cannibalize (Abomination)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,dead,organic" +C;X16;K0 +C;X17;K33 +C;X18;K33 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K15 +C;X24;K800 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y223;K"ACcn" +C;X2;K"Acan" +C;X3;K"Cannibalize (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,dead,organic" +C;X16;K0 +C;X17;K33 +C;X18;K33 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K10 +C;X24;K800 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y224;K"Abun" +C;X2;K"Abun" +C;X3;K"Cargo Hold (Burrow)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K250 +C;X22;K120 +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y225;K"Advc" +C;X2;K"Advc" +C;X3;K"Cargo Hold (Devour)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,vuln,invu" +C;X16;K0 +C;X17;K0.5 +C;X18;K0.5 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K120 +C;X23;K2 +C;X24;K5 +C;X25;K5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y226;K"Sch2" +C;X2;K"Amtc" +C;X3;K"Cargo Hold (Meat Wagon)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"dead" +C;X16;K0 +C;X17;K0.5 +C;X18;K0.5 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K160 +C;X23;K8 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y227;K"Sch5" +C;X2;K"Acar" +C;X3;K"Cargo Hold (Ship)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,vuln,invu,nonsapper" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K200 +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y228;K"Sch4" +C;X2;K"Acar" +C;X3;K"Cargo Hold (Tank)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,vuln,invu" +C;X16;K0 +C;X17;K0.5 +C;X18;K0.5 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K160 +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y229;K"Sch3" +C;X2;K"Acar" +C;X3;K"Cargo Hold (Transport)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,vuln,invu,nonsapper" +C;X16;K0 +C;X17;K0.5 +C;X18;K0.5 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K160 +C;X23;K8 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y230;K"Aenc" +C;X2;K"Aenc" +C;X3;K"Cargo Hold (Gold Mine)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K250 +C;X22;K120 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y231;K"Achd" +C;X2;K"Achd" +C;X3;K"Cargo Hold Death" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,vuln,invu" +C;X16;K0 +C;X17;K60 +C;X18;K30 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K10 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y232;K"ACca" +C;X2;K"AUcs" +C;X3;K"Carrion Swarm (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K100 +C;X22;K700 +C;X23;K75 +C;X24;K300 +C;X25;K800 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y233;K"ACcv" +C;X2;K"AUcs" +C;X3;K"Crushing Wave" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K100 +C;X22;K700 +C;X23;K150 +C;X24;K900 +C;X25;K800 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y234;K"ACc2" +C;X2;K"AUcs" +C;X3;K"Crushing Wave (Dragon Turtle)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K100 +C;X22;K700 +C;X23;K150 +C;X24;K900 +C;X25;K800 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y235;K"ACc3" +C;X2;K"AUcs" +C;X3;K"Crushing Wave (Lesser)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K10 +C;X20;K125 +C;X21;K100 +C;X22;K700 +C;X23;K100 +C;X24;K300 +C;X25;K800 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUcs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y236;K"ACcl" +C;X2;K"AOcl" +C;X3;K"Chain Lightning (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K120 +C;X21;K500 +C;X22;K700 +C;X23;K100 +C;X24;K4 +C;X25;K0.25 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y237;K"Ache" +C;X2;K"AIdc" +C;X3;K"Chain Dispel" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,enemy,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K75 +C;X21;K400 +C;X22;K700 +C;X23;K0 +C;X24;K0 +C;X25;K8 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y238;K"Sca1" +C;X2;K"Acha" +C;X3;K"Chaos (Grunt)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nchg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y239;K"Sca2" +C;X2;K"Acha" +C;X3;K"Chaos (Raider)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nchr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y240;K"Sca3" +C;X2;K"Acha" +C;X3;K"Chaos (Shaman)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nchw" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y241;K"Sca4" +C;X2;K"Acha" +C;X3;K"Chaos (Kodo)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nckb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y242;K"Sca5" +C;X2;K"Acha" +C;X3;K"Chaos (Peon)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncpn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y243;K"Sca6" +C;X2;K"Acha" +C;X3;K"Chaos (Grom)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Opgh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y244;K"Achl" +C;X2;K"Achl" +C;X3;K"Chaos Cargo Load" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncpn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y245;K"ACch" +C;X2;K"ANch" +C;X3;K"Charm" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K20 +C;X20;K125 +C;X21;K"-" +C;X22;K700 +C;X23;K6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y246;K"ACce" +C;X2;K"ANca" +C;X3;K"Cleaving Attack (Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K150 +C;X22;K"-" +C;X23;K0.25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"-" +C;X95;K0 +C;X1;Y247;K"Aclf" +C;X2;K"Aclf" +C;X3;K"Cloud of Fog" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu,structure" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K20 +C;X20;K100 +C;X21;K300 +C;X22;K1000 +C;X23;K2 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bclf" +C;X34;K"Xclf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y248;K"ACcw" +C;X2;K"AHca" +C;X3;K"Cold Arrows (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K3 +C;X18;K0.75 +C;X19;K0 +C;X20;K5 +C;X21;K"-" +C;X22;K700 +C;X23;K0.25 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHca,Bcsd,Bcsi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y249;K"Acmg" +C;X2;K"Acmg" +C;X3;K"Control Magic" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,ward,organic" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K5 +C;X20;K25 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0.45 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcmg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y250;K"Acpf" +C;X2;K"Acpf" +C;X3;K"Corporeal Form" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.7 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"ospm" +C;X24;K1 +C;X25;K0 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ospw" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y251;K"Acor" +C;X2;K"Acor" +C;X3;K"Corrosive Breath" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K50 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y252;K"Acoa" +C;X2;K"Acoa" +C;X3;K"Couple (Archer)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"ehip" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ehpr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y253;K"Acoh" +C;X2;K"Acoh" +C;X3;K"Couple (Hippogryph)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"earc" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ehpr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y254;K"Aco2" +C;X2;K"Acoi" +C;X3;K"Couple Instant (Archer)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K900 +C;X22;K99999 +C;X23;K"ehip" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ehpr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y255;K"Aco3" +C;X2;K"Acoi" +C;X3;K"Couple Instant (Hippogryph)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K900 +C;X22;K0 +C;X23;K"earc" +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ehpr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y256;K"ACsp" +C;X2;K"ACsp" +C;X3;K"Creep Sleep" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y257;K"Acri" +C;X2;K"Acri" +C;X3;K"Cripple" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K60 +C;X18;K10 +C;X19;K10 +C;X20;K175 +C;X21;K"-" +C;X22;K600 +C;X23;K0.75 +C;X24;K0.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcri" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y258;K"Scri" +C;X2;K"Acri" +C;X3;K"Cripple (Warlock)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K60 +C;X18;K10 +C;X19;K10 +C;X20;K175 +C;X21;K"-" +C;X22;K600 +C;X23;K0.75 +C;X24;K0.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcri" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y259;K"ACcr" +C;X2;K"Acri" +C;X3;K"Cripple (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K60 +C;X18;K10 +C;X19;K10 +C;X20;K175 +C;X21;K"-" +C;X22;K600 +C;X23;K0.75 +C;X24;K0.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcri" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y260;K"ACct" +C;X2;K"AOcr" +C;X3;K"Critical Strike (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K20 +C;X24;K2 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y261;K"Acrs" +C;X2;K"Acrs" +C;X3;K"Curse" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K120 +C;X18;K60 +C;X19;K1 +C;X20;K40 +C;X21;K"-" +C;X22;K700 +C;X23;K0.33 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcrs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y262;K"ACcs" +C;X2;K"Acrs" +C;X3;K"Curse (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K30 +C;X18;K15 +C;X19;K8 +C;X20;K40 +C;X21;K"-" +C;X22;K700 +C;X23;K0.33 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcrs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y263;K"Acyc" +C;X2;K"Acyc" +C;X3;K"Cyclone" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K20 +C;X18;K6 +C;X19;K5 +C;X20;K150 +C;X21;K"-" +C;X22;K600 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcyc,Bcy2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y264;K"Acny" +C;X2;K"Acyc" +C;X3;K"Cyclone (naga)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K20 +C;X18;K6 +C;X19;K5 +C;X20;K150 +C;X21;K"-" +C;X22;K600 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcyc,Bcy2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y265;K"ACcy" +C;X2;K"Acyc" +C;X3;K"Cyclone (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K20 +C;X18;K6 +C;X19;K8 +C;X20;K150 +C;X21;K"-" +C;X22;K600 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcyc,Bcy2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y266;K"SCc1" +C;X2;K"Acyc" +C;X3;K"Cyclone (Cenarius)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K30 +C;X18;K6 +C;X19;K8 +C;X20;K150 +C;X21;K"-" +C;X22;K600 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcyc,Bcy2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y267;K"ACdc" +C;X2;K"AUdc" +C;X3;K"Death Coil (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,notself,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K400 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y268;K"Adda" +C;X2;K"Adda" +C;X3;K"Death Damage (sapper)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,ward" +C;X16;K0 +C;X17;K0.3 +C;X18;K0.3 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K500 +C;X25;K250 +C;X26;K200 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y269;K"Amnx" +C;X2;K"Adda" +C;X3;K"Death Damage (mine)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy" +C;X16;K0 +C;X17;K0.3 +C;X18;K0.3 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K150 +C;X24;K700 +C;X25;K400 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y270;K"Amnz" +C;X2;K"Adda" +C;X3;K"Death Damage (mine BIG)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy" +C;X16;K0 +C;X17;K0.3 +C;X18;K0.3 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K200 +C;X24;K700 +C;X25;K400 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y271;K"Adec" +C;X2;K"Adec" +C;X3;K"Decouple" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K-1 +C;X22;K"-" +C;X23;K"earc" +C;X24;K"ehip" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y272;K"Adef" +C;X2;K"Adef" +C;X3;K"Defend" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,debris,neutral,enemy,ward,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K1 +C;X25;K0.3 +C;X26;K0 +C;X27;K1 +C;X28;K30 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y273;K"Adt1" +C;X2;K"Adet" +C;X3;K"Detect (Sentry Ward)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K1100 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y274;K"Atru" +C;X2;K"Atru" +C;X3;K"Detect (Shade)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y275;K"Adtg" +C;X2;K"Atru" +C;X3;K"Detect (general)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y276;K"ANtr" +C;X2;K"Atru" +C;X3;K"Detect(War Eagle)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y277;K"Agyv" +C;X2;K"Agyv" +C;X3;K"Detect (Gyrocopter)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y278;K"Adts" +C;X2;K"Adts" +C;X3;K"Detect (Magic Sentinel)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y279;K"Adtn" +C;X2;K"Adtn" +C;X3;K"Detonate" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K300 +C;X22;K100 +C;X23;K50 +C;X24;K225 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y280;K"Adev" +C;X2;K"Adev" +C;X3;K"Devour" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,nonhero,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdig,Bdvv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y281;K"ACdv" +C;X2;K"ACdv" +C;X3;K"Devour (Dragon Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,nonhero,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdig,Bdvv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y282;K"Advm" +C;X2;K"Advm" +C;X3;K"Devour Magic" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K7 +C;X20;K0 +C;X21;K200 +C;X22;K600 +C;X23;K50 +C;X24;K75 +C;X25;K0 +C;X26;K0 +C;X27;K180 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y283;K"ACde" +C;X2;K"Advm" +C;X3;K"Devour Magic(creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K6 +C;X20;K0 +C;X21;K250 +C;X22;K600 +C;X23;K50 +C;X24;K75 +C;X25;K0 +C;X26;K0 +C;X27;K180 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y284;K"Adch" +C;X2;K"Adch" +C;X3;K"Disenchant(old)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K50 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K300 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y285;K"Adcn" +C;X2;K"Adis" +C;X3;K"Disenchant(new)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K100 +C;X21;K250 +C;X22;K650 +C;X23;K0 +C;X24;K250 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y286;K"Adis" +C;X2;K"Adis" +C;X3;K"Dispel Magic" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K75 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y287;K"Adsm" +C;X2;K"Adis" +C;X3;K"Dispel Magic (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K75 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y288;K"ACds" +C;X2;K"AHds" +C;X3;K"Divine Shield (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K60 +C;X20;K125 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHds" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y289;K"ACdr" +C;X2;K"AHdr" +C;X3;K"Drain Life(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K8 +C;X20;K75 +C;X21;K950 +C;X22;K500 +C;X23;K55 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X33;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y290;K"Adri" +C;X2;K"Adri" +C;X3;K"Drop Instant" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K80 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y291;K"Adro" +C;X2;K"Adro" +C;X3;K"Drop" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K80 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y292;K"Sdro" +C;X2;K"Adro" +C;X3;K"Drop" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K128 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y293;K"Atdp" +C;X2;K"Atdp" +C;X3;K"Drop Pilot" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y294;K"Aeat" +C;X2;K"Aeat" +C;X3;K"Eat Tree" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K32 +C;X23;K0.8 +C;X24;K2.5 +C;X25;K500 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Beat" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y295;K"Aegr" +C;X2;K"AIdd" +C;X3;K"Elune's Grace" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.65 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0.8 +C;X28;K0 +C;X29;K1 +C;X30;K1 +C;X31;K0 +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y296;K"ANen" +C;X2;K"Aens" +C;X3;K"Ensnare(Naga)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K12 +C;X19;K12 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bena,Beng" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y297;K"Aens" +C;X2;K"Aens" +C;X3;K"Ensnare" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K3 +C;X19;K12 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bena,Beng" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y298;K"ACen" +C;X2;K"Aens" +C;X3;K"Ensnare (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy,nonhero,neutral" +C;X16;K0 +C;X17;K10 +C;X18;K5 +C;X19;K10 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bena,Beng" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y299;K"Aent" +C;X2;K"Aent" +C;X3;K"Entangle" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"egol" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y300;K"Aegm" +C;X2;K"Aegm" +C;X3;K"Entangled Gold Mine" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K1 +C;X25;K" - " +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y301;K"Aenr" +C;X2;K"AEer" +C;X3;K"Entangling Roots (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,nonhero,organic" +C;X16;K0 +C;X17;K10 +C;X18;K3 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEer" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y302;K"Aenw" +C;X2;K"AEer" +C;X3;K"Entangling Seaweed" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,nonhero,organic" +C;X16;K0 +C;X17;K10 +C;X18;K3 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEer" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y303;K"Aetl" +C;X2;K"Aetl" +C;X3;K"Ethereal" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y304;K"Aetf" +C;X2;K"Aetf" +C;X3;K"Ethereal Form" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.7 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"ospw" +C;X24;K1 +C;X25;K0 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ospm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y305;K"ACev" +C;X2;K"AEev" +C;X3;K"Evasion (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K0.15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y306;K"ACes" +C;X2;K"AEev" +C;X3;K"Evasion (creep 100%)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y307;K"Aexh" +C;X2;K"Aexh" +C;X3;K"Exhume" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ugho" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y308;K"ANfy" +C;X2;K"ANfy" +C;X3;K"Factory" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K6 +C;X24;K1100 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncgb" +C;X33;K"BNcg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y309;K"Afae" +C;X2;K"Afae" +C;X3;K"Faerie Fire" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K120 +C;X18;K60 +C;X19;K1 +C;X20;K45 +C;X21;K"-" +C;X22;K700 +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfae" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y310;K"Afa2" +C;X2;K"Afae" +C;X3;K"Faerie Fire" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K120 +C;X18;K60 +C;X19;K1 +C;X20;K45 +C;X21;K"-" +C;X22;K700 +C;X23;K4 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfae" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y311;K"ACff" +C;X2;K"Afae" +C;X3;K"Faerie Fire (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K30 +C;X18;K15 +C;X19;K8 +C;X20;K45 +C;X21;K"-" +C;X22;K700 +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfae" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y312;K"Afbk" +C;X2;K"Afbk" +C;X3;K"Feedback" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K20 +C;X24;K1 +C;X25;K4 +C;X26;K1 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y313;K"Afbt" +C;X2;K"Afbk" +C;X3;K"Feedback(Arcane Tower)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K24 +C;X24;K1 +C;X25;K12 +C;X26;K1 +C;X27;K20 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y314;K"Afbb" +C;X2;K"Afbk" +C;X3;K"Feedback (Spirit Beast)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K20 +C;X24;K1 +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y315;K"ACsf" +C;X2;K"AOsf" +C;X3;K"Feral Spirit (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K15 +C;X20;K100 +C;X21;K200 +C;X22;K800 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"osw1" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y316;K"ACs9" +C;X2;K"AOsf" +C;X3;K"Feral Spirit (creep - pig)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K15 +C;X20;K100 +C;X21;K200 +C;X22;K800 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nspp" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y317;K"ACs8" +C;X2;K"AOsf" +C;X3;K"Feral Spirit (Spirit Beast)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K125 +C;X21;K200 +C;X22;K800 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nsw1" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K0 +C;X37;K60 +C;X38;K60 +C;X39;K20 +C;X40;K125 +C;X41;K200 +C;X42;K800 +C;X44;K2 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"nsw2" +C;X53;K"BOsf" +C;X55;K"_" +C;X56;K0 +C;X57;K60 +C;X58;K60 +C;X59;K20 +C;X60;K125 +C;X61;K200 +C;X62;K800 +C;X64;K2 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"nsw3" +C;X73;K"BOsf" +C;X75;K"_" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K20 +C;X80;K125 +C;X81;K200 +C;X82;K800 +C;X84;K2 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"nsw3" +C;X93;K"BOsf" +C;X95;K0 +C;X1;Y318;K"ACs7" +C;X2;K"AOsf" +C;X3;K"Feral Spirit (Akama)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K15 +C;X20;K100 +C;X21;K200 +C;X22;K800 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"osw1" +C;X33;K"BOsf" +C;X35;K"_" +C;X36;K"-" +C;X37;K60 +C;X38;K60 +C;X39;K15 +C;X40;K100 +C;X41;K200 +C;X42;K800 +C;X44;K2 +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"osw2" +C;X53;K"BOsf" +C;X55;K"_" +C;X56;K0 +C;X57;K60 +C;X58;K60 +C;X59;K15 +C;X60;K100 +C;X61;K200 +C;X62;K800 +C;X64;K2 +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"osw3" +C;X73;K"BOsf" +C;X75;K"_" +C;X76;K0 +C;X77;K60 +C;X78;K60 +C;X79;K15 +C;X80;K100 +C;X81;K200 +C;X82;K800 +C;X84;K2 +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X92;K"osw3" +C;X93;K"BOsf" +C;X95;K1 +C;X1;Y319;K"Afod" +C;X2;K"ANfd" +C;X3;K"Finger of Death" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,structure,ancient,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K0.25 +C;X24;K1 +C;X25;K500 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y320;K"Awfb" +C;X2;K"ANfb" +C;X3;K"Fire Bolt (warlock)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,enemy,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y321;K"ACfb" +C;X2;K"ANfb" +C;X3;K"Fire Bolt (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,enemy,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y322;K"Aflk" +C;X2;K"Aflk" +C;X3;K"Flak Cannon" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K75 +C;X22;K"-" +C;X23;K150 +C;X24;K325 +C;X25;K7 +C;X26;K6 +C;X27;K5 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y323;K"Afla" +C;X2;K"Afla" +C;X3;K"Flare" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K120 +C;X20;K0 +C;X21;K1800 +C;X22;K99999 +C;X23;K3 +C;X24;K0.8 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xfla" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y324;K"ACfs" +C;X2;K"AHfs" +C;X3;K"Flame Strike (Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,friend,structure,self" +C;X16;K1.33 +C;X17;K6 +C;X18;K1.67 +C;X19;K10 +C;X20;K100 +C;X21;K225 +C;X22;K800 +C;X23;K15 +C;X24;K0.33 +C;X25;K10 +C;X26;K1 +C;X27;K0.75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHfs" +C;X34;K"XHfs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y325;K"ANfs" +C;X2;K"AHfs" +C;X3;K"Flame Strike (Improved Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,friend,structure,self" +C;X16;K1.33 +C;X17;K8 +C;X18;K2.67 +C;X19;K10 +C;X20;K100 +C;X21;K250 +C;X22;K800 +C;X23;K25 +C;X24;K0.33 +C;X25;K25 +C;X26;K1 +C;X27;K0.75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHfs" +C;X34;K"XHfs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y326;K"ACfr" +C;X2;K"AEfn" +C;X3;K"Force of Nature (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K175 +C;X21;K200 +C;X22;K800 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"efon" +C;X33;K"BEfn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y327;K"ACfl" +C;X2;K"ANfl" +C;X3;K"Forked Lightning(creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K0.7 +C;X18;K0 +C;X19;K11 +C;X20;K110 +C;X21;K125 +C;X22;K600 +C;X23;K175 +C;X24;K3 +C;X25;K900 +C;X26;K300 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y328;K"Afsh" +C;X2;K"Afsh" +C;X3;K"Frag Shards" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K100 +C;X22;K"-" +C;X23;K275 +C;X24;K250 +C;X25;K25 +C;X26;K18 +C;X27;K12 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y329;K"Afrz" +C;X2;K"Afrz" +C;X3;K"Freezing Breath" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,enemy" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K100 +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfrz" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y330;K"Afzy" +C;X2;K"Afzy" +C;X3;K"Frenzy" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K11 +C;X15;K"air,ground,self" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K0.4 +C;X24;K0.25 +C;X25;K0.3 +C;X26;K" - " +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfzy" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K" - " +C;X64;K" - " +C;X65;K" - " +C;X66;K" - " +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K" - " +C;X84;K" - " +C;X85;K" - " +C;X86;K" - " +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y331;K"ACfa" +C;X2;K"AUfa" +C;X3;K"Frost Armor (creep,old)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K5 +C;X20;K40 +C;X21;K"-" +C;X22;K800 +C;X23;K45 +C;X24;K3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUfa,Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y332;K"ACf2" +C;X2;K"AUfu" +C;X3;K"Frost Armor (creep,autocast)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K5 +C;X20;K40 +C;X21;K"-" +C;X22;K800 +C;X23;K45 +C;X24;K3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUfa,Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y333;K"ACfu" +C;X2;K"AUfu" +C;X3;K"Frost Armor (Autocast, Naga)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K2 +C;X20;K40 +C;X21;K"-" +C;X22;K800 +C;X23;K45 +C;X24;K3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUfa,Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y334;K"Afra" +C;X2;K"Afra" +C;X3;K"Frost Attack" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y335;K"Afr2" +C;X2;K"Afra" +C;X3;K"Frost Attack (1,2)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y336;K"Afrb" +C;X2;K"Afrb" +C;X3;K"Frost Breath" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y337;K"ACfn" +C;X2;K"AUfn" +C;X3;K"Frost Nova (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,air,neutral,organic" +C;X16;K0 +C;X17;K4 +C;X18;K4 +C;X19;K8 +C;X20;K125 +C;X21;K200 +C;X22;K800 +C;X23;K50 +C;X24;K50 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y338;K"ACcb" +C;X2;K"AHtb" +C;X3;K"Frost Bolt" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K5 +C;X18;K3 +C;X19;K9 +C;X20;K75 +C;X21;K"-" +C;X22;K600 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHtb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y339;K"Agho" +C;X2;K"Agho" +C;X3;K"Ghost" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y340;K"Aeth" +C;X2;K"Aeth" +C;X3;K"Ghost (Visible)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y341;K"Agld" +C;X2;K"Agld" +C;X3;K"Gold Mine" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K12500 +C;X24;K1 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y342;K"Agra" +C;X2;K"Agra" +C;X3;K"Grab Tree" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K5 +C;X20;K0 +C;X21;K"-" +C;X22;K32 +C;X23;K0.8 +C;X24;K2.5 +C;X25;K0 +C;X26;K1 +C;X27;K15 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bgra" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y343;K"Agyd" +C;X2;K"Agyd" +C;X3;K"Graveyard" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K200 +C;X25;K250 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ugho" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y344;K"Agyb" +C;X2;K"Agyb" +C;X3;K"Gyrocopter Bombs" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y345;K"Assk" +C;X2;K"Assk" +C;X3;K"Hardened Skin" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,ally" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K3 +C;X25;K12 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y346;K"Ansk" +C;X2;K"Assk" +C;X3;K"Hardened Skin(Naga Turtle)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,ally" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K3 +C;X25;K12 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y347;K"Ahar" +C;X2;K"Ahar" +C;X3;K"Harvest" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K1.1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K116 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y348;K"ANha" +C;X2;K"Ahar" +C;X3;K"Harvest (naga)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K116 +C;X23;K1.25 +C;X24;K20 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y349;K"Ahrl" +C;X2;K"Ahrl" +C;X3;K"Harvest Lumber" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K1.35 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K116 +C;X23;K2 +C;X24;K20 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y350;K"Ahr3" +C;X2;K"Ahrl" +C;X3;K"Harvest Lumber (shredder)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K1.35 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K116 +C;X23;K10 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y351;K"Ahr2" +C;X2;K"Ahrl" +C;X3;K"Harvest Lumber (Arch ghouls)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K1.35 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K116 +C;X23;K5 +C;X24;K50 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y352;K"Ahea" +C;X2;K"Ahea" +C;X3;K"Heal" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,nonancient,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K5 +C;X21;K"-" +C;X22;K250 +C;X23;K25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bhea" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y353;K"Anhe" +C;X2;K"Anhe" +C;X3;K"Heal (Creep Normal)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,nonancient,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K5 +C;X21;K"-" +C;X22;K250 +C;X23;K15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bhea" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y354;K"Anh1" +C;X2;K"Anhe" +C;X3;K"Heal (Creep Normal)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,nonancient,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K5 +C;X21;K"-" +C;X22;K250 +C;X23;K12 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bhea" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y355;K"Anh2" +C;X2;K"Anhe" +C;X3;K"Heal (Creep High)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,nonancient,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K5 +C;X21;K"-" +C;X22;K250 +C;X23;K25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bhea" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y356;K"Ahwd" +C;X2;K"Ahwd" +C;X3;K"Healing Ward" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K200 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ohwd" +C;X33;K"Bhwd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y357;K"AChw" +C;X2;K"Ahwd" +C;X3;K"Healing Ward (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K200 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ohwd" +C;X33;K"Bhwd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y358;K"AChv" +C;X2;K"AOhw" +C;X3;K"Healing Wave(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K90 +C;X21;K500 +C;X22;K700 +C;X23;K215 +C;X24;K4 +C;X25;K0.25 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y359;K"Ahnl" +C;X2;K"Aroa" +C;X3;K"null roar (summoner)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"notself" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K50 +C;X21;K50 +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y360;K"AHer" +C;X2;K"AHer" +C;X3;K"Hero" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y361;K"AChx" +C;X2;K"AOhx" +C;X3;K"Hex (Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K5 +C;X19;K17 +C;X20;K100 +C;X21;K"-" +C;X22;K800 +C;X23;K99 +C;X24;K"npig,nsea,ncrb,nhmc,nrat" +C;X25;K"nalb,nvul,nsno" +C;X26;K"nsha,npng" +C;X27;K"nshw,npnw" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOhx" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y362;K"Acht" +C;X2;K"ANht" +C;X3;K"Howl of Terror" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K12 +C;X20;K100 +C;X21;K800 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNht" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y363;K"ACim" +C;X2;K"AEim" +C;X3;K"Immolation (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K25 +C;X21;K220 +C;X22;K"-" +C;X23;K10 +C;X24;K7 +C;X25;K10 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEim,BEia" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y364;K"ACmp" +C;X2;K"AUim" +C;X3;K"Impale(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K2 +C;X18;K1 +C;X19;K11 +C;X20;K100 +C;X21;K200 +C;X22;K700 +C;X23;K600 +C;X24;K0.3 +C;X25;K50 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUim" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y365;K"Aimp" +C;X2;K"Aimp" +C;X3;K"Impaling Bolt" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y366;K"Ainf" +C;X2;K"Ainf" +C;X3;K"Inner Fire" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10 +C;X15;K"air,ground,friend,neutral,self" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K1 +C;X20;K35 +C;X21;K"-" +C;X22;K500 +C;X23;K0.1 +C;X24;K5 +C;X25;K500 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Binf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y367;K"ACif" +C;X2;K"Ainf" +C;X3;K"Inner Fire (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10 +C;X15;K"air,ground,friend,neutral,self" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K5 +C;X20;K75 +C;X21;K"-" +C;X22;K500 +C;X23;K0.1 +C;X24;K5 +C;X25;K500 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Binf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y368;K"Aivs" +C;X2;K"Aivs" +C;X3;K"Invisibility" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,friend,nonsapper,neutral" +C;X16;K0 +C;X17;K120 +C;X18;K120 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K300 +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Binv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y369;K"AInv" +C;X2;K"AInv" +C;X3;K"Inventory" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y370;K"Apak" +C;X2;K"AInv" +C;X3;K"Inventory (Pack Mule)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y371;K"Aion" +C;X2;K"AInv" +C;X3;K"Inventory(2 slot unit) Orc" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y372;K"Aihn" +C;X2;K"AInv" +C;X3;K"Inventory(2 slot unit) Human" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y373;K"Aien" +C;X2;K"AInv" +C;X3;K"Inventory(2 slot unit) Night Elf" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y374;K"Aiun" +C;X2;K"AInv" +C;X3;K"Inventory(2 slot unit) Undead" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K1 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y375;K"Avul" +C;X2;K"Avul" +C;X3;K"Invulnerable" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y376;K"Alit" +C;X2;K"Alit" +C;X3;K"Lightning Attack" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,ward,item,debris" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.25 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y377;K"Alsh" +C;X2;K"Alsh" +C;X3;K"Lightning Shield" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K3 +C;X20;K100 +C;X21;K160 +C;X22;K600 +C;X23;K20 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Blsh,Blsa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y378;K"ACls" +C;X2;K"Alsh" +C;X3;K"Lightning Shield (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K8 +C;X20;K100 +C;X21;K160 +C;X22;K600 +C;X23;K20 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Blsh,Blsa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y379;K"Aliq" +C;X2;K"Aliq" +C;X3;K"Liquid Fire" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,enemy,neutral" +C;X16;K0 +C;X17;K3 +C;X18;K3 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K8 +C;X24;K0 +C;X25;K0.8 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bliq" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y380;K"Aloa" +C;X2;K"Aloa" +C;X3;K"Load" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K80 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y381;K"Sloa" +C;X2;K"Aloa" +C;X3;K"Load (Burrow)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K99999 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"opeo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y382;K"Slo2" +C;X2;K"Aloa" +C;X3;K"Load (Entangled Gold Mine)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K99999 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ewsp" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y383;K"Slo3" +C;X2;K"Aloa" +C;X3;K"Load (Navies)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K64 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y384;K"Atlp" +C;X2;K"Atlp" +C;X3;K"Load Pilot" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K80 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y385;K"Aloc" +C;X2;K"Aloc" +C;X3;K"Locust" +C;X4;K1 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y386;K"Amdf" +C;X2;K"Amdf" +C;X3;K"Magic Defense" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K0.33 +C;X26;K0 +C;X27;K0.33 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y387;K"Amim" +C;X2;K"Amim" +C;X3;K"Magic Immunity" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y388;K"ACmi" +C;X2;K"Amim" +C;X3;K"Magic Immunity (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y389;K"ACm2" +C;X2;K"Amim" +C;X3;K"Magic Immunity (Archimonde)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y390;K"ACm3" +C;X2;K"Amim" +C;X3;K"Magic Immunity (Dragons)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y391;K"Amls" +C;X2;K"Amls" +C;X3;K"Aerial Shackles" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,organic" +C;X16;K0 +C;X17;K40 +C;X18;K10 +C;X19;K30 +C;X20;K75 +C;X21;K"-" +C;X22;K550 +C;X23;K30 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bmlc,Bmlt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y392;K"Ambt" +C;X2;K"Ambt" +C;X3;K"Mana Battery" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,invu,vuln,friend,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K400 +C;X22;K99999 +C;X23;K2 +C;X24;K0.5 +C;X25;K10 +C;X26;K30 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y393;K"Amb2" +C;X2;K"Ambt" +C;X3;K"Mana Battery (Obsidian Statue)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,invu,vuln,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K400 +C;X22;K900 +C;X23;K1 +C;X24;K0 +C;X25;K10 +C;X26;K-1 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y394;K"Amnb" +C;X2;K"AEmb" +C;X3;K"Mana Burn (demon)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K50 +C;X21;K"MBUR" +C;X22;K450 +C;X23;K100 +C;X24;K0.25 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y395;K"Ambd" +C;X2;K"AEmb" +C;X3;K"Mana Burn (demon)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K50 +C;X21;K"MBUR" +C;X22;K450 +C;X23;K100 +C;X24;K0.25 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y396;K"Ambb" +C;X2;K"AEmb" +C;X3;K"Mana Burn (Hotkey B)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K50 +C;X21;K"MBUR" +C;X22;K450 +C;X23;K100 +C;X24;K0.25 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y397;K"Amfl" +C;X2;K"Amfl" +C;X3;K"Mana Flare" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy" +C;X16;K0.75 +C;X17;K30 +C;X18;K30 +C;X19;K20 +C;X20;K50 +C;X21;K750 +C;X22;K200 +C;X23;K3 +C;X24;K1 +C;X25;K90 +C;X26;K50 +C;X27;K12 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bmfl,Bmfa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y398;K"ACmf" +C;X2;K"ANms" +C;X3;K"Mana Shield(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K10 +C;X20;K25 +C;X21;K"-" +C;X22;K128 +C;X23;K2 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNms" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y399;K"Amed" +C;X2;K"Amed" +C;X3;K"Meat Drop" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y400;K"Amel" +C;X2;K"Amel" +C;X3;K"Meat Load" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,dead,nonhero" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y401;K"Amil" +C;X2;K"Amil" +C;X3;K"Militia" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"hpea" +C;X24;K"hmil" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y402;K"Amic" +C;X2;K"Amic" +C;X3;K"Militia Conversion" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2000 +C;X22;K50 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y403;K"ANmr" +C;X2;K"ANmr" +C;X3;K"Mind Rot" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNmr" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y404;K"Amin" +C;X2;K"Amin" +C;X3;K"Mine" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K200 +C;X23;K10 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y405;K"ACmo" +C;X2;K"ANmo" +C;X3;K"Monsoon(creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K10 +C;X20;K75 +C;X21;K300 +C;X22;K500 +C;X23;K20 +C;X24;K1.5 +C;X25;K0.35 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"ANmd" +C;X34;K"XNmo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y406;K"Amgl" +C;X2;K"Amgl" +C;X3;K"Moon Glaive" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y407;K"Amgr" +C;X2;K"Amgl" +C;X3;K"Moon Glaive (No research)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y408;K"Amov" +C;X2;K"Amov" +C;X3;K"Move" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y409;K"Aneu" +C;X2;K"Aneu" +C;X3;K"Neutral Building" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K350 +C;X23;K450 +C;X24;K1 +C;X25;K1 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y410;K"Ane2" +C;X2;K"Aneu" +C;X3;K"Neutral Building (any unit)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K350 +C;X23;K450 +C;X24;K16 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y411;K"Andt" +C;X2;K"Andt" +C;X3;K"Neutral Detection (Reveal ability)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K6 +C;X18;K6 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K50 +C;X24;K0 +C;X25;K3 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xbdt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y412;K"ANre" +C;X2;K"Aarm" +C;X3;K"Neutral Regen (mana only)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K0.01 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y413;K"ACnr" +C;X2;K"Aoar" +C;X3;K"Neutral Regen (health only)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K0.01 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y414;K"AAns" +C;X2;K"AAns" +C;X3;K"Neutral Spell" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K50 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"neutralspell" +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y415;K"Ansp" +C;X2;K"Ansp" +C;X3;K"Neutral Spies" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K0 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y416;K"Afak" +C;X2;K"Afak" +C;X3;K"Orb of Annihilation" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K25 +C;X21;K150 +C;X22;K450 +C;X23;K20 +C;X24;K0.45 +C;X25;K0.25 +C;X26;K1 +C;X27;K75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y417;K"ANak" +C;X2;K"Afak" +C;X3;K"Orb of Annihilation (Quill Spray)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K15 +C;X21;K175 +C;X22;K600 +C;X23;K15 +C;X24;K0.5 +C;X25;K0.25 +C;X26;K150 +C;X27;K300 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y418;K"Afir" +C;X2;K"Afir" +C;X3;K"On Fire" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y419;K"Afih" +C;X2;K"Afih" +C;X3;K"On Fire (Human)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y420;K"Afio" +C;X2;K"Afio" +C;X3;K"On Fire (Orc)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y421;K"Afin" +C;X2;K"Afin" +C;X3;K"On Fire (Night Elf)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y422;K"Afiu" +C;X2;K"Afiu" +C;X3;K"On Fire (Undead)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y423;K"ANpa" +C;X2;K"ANpa" +C;X3;K"Parasite" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral,nonhero" +C;X16;K90 +C;X17;K30 +C;X18;K0 +C;X19;K5 +C;X20;K50 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K0 +C;X26;K8 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ncfs" +C;X33;K"BNpa,BNpm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y424;K"ACpa" +C;X2;K"ANpa" +C;X3;K"Parasite(eredar)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral,nonhero" +C;X16;K90 +C;X17;K30 +C;X18;K0 +C;X19;K5 +C;X20;K50 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K0 +C;X26;K8 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nvdl" +C;X33;K"BNpa,BNpm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y425;K"ANpi" +C;X2;K"ANpi" +C;X3;K"Permanent Immolation" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K220 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNpi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y426;K"Apmf" +C;X2;K"ANpi" +C;X3;K"Permanent Immolation (flying)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,neutral,organic" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K220 +C;X22;K"-" +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNpi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y427;K"Apig" +C;X2;K"Apig" +C;X3;K"Permanent Immolation (graphic)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K220 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y428;K"Apiv" +C;X2;K"Apiv" +C;X3;K"Permanent Invisibility" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y429;K"Apsh" +C;X2;K"Apsh" +C;X3;K"Phase Shift" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K1.5 +C;X18;K1.5 +C;X19;K6.5 +C;X20;K20 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y430;K"Aphx" +C;X2;K"Aphx" +C;X3;K"Phoenix" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0.7 +C;X17;K0.5 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K-1 +C;X22;K"-" +C;X23;K"hphx" +C;X24;K7 +C;X25;K0.5 +C;X26;K0.5 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hpxe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y431;K"Apxf" +C;X2;K"Apxf" +C;X3;K"PhoenixFire" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy" +C;X16;K0 +C;X17;K10 +C;X18;K7 +C;X19;K0.5 +C;X20;K0 +C;X21;K600 +C;X23;K20 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y432;K"Apts" +C;X2;K"Apts" +C;X3;K"Plague Toss" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,structure,debris,tree,wall,organic,neutral" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uplg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y433;K"Apoi" +C;X2;K"Apoi" +C;X3;K"Poison Attack" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpoi,Bpsd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y434;K"Aply" +C;X2;K"Aply" +C;X3;K"Polymorph" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,enemy,organic,neutral" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K3 +C;X20;K220 +C;X21;K"-" +C;X22;K500 +C;X23;K5 +C;X24;K"nshe" +C;X25;K"nshf" +C;X26;K"nsha" +C;X27;K"nshw" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bply" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y435;K"ACpy" +C;X2;K"Aply" +C;X3;K"Polymorph (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,enemy,organic,neutral" +C;X16;K0 +C;X17;K25 +C;X18;K25 +C;X19;K10 +C;X20;K220 +C;X21;K"-" +C;X22;K500 +C;X23;K5 +C;X24;K"nshe" +C;X25;K"nshf" +C;X26;K"nsha" +C;X27;K"nshw" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bply" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y436;K"Apos" +C;X2;K"Apos" +C;X3;K"Possession" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,nonhero,enemy,organic,neutral" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K250 +C;X21;K"-" +C;X22;K200 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y437;K"ACps" +C;X2;K"Apos" +C;X3;K"Possession (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,nonhero,enemy,organic,neutral" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K250 +C;X21;K"-" +C;X22;K200 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y438;K"Aps2" +C;X2;K"Aps2" +C;X3;K"Possession (Channeling)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,nonhero,enemy,organic,neutral" +C;X16;K0 +C;X17;K4.5 +C;X18;K4.5 +C;X19;K0 +C;X20;K250 +C;X21;K"-" +C;X22;K350 +C;X23;K5 +C;X24;K1.66 +C;X25;K1 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpos,Bpoc" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y439;K"Awar" +C;X2;K"Awar" +C;X3;K"Pulverize" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K25 +C;X24;K60 +C;X25;K250 +C;X26;K350 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y440;K"ACpv" +C;X2;K"Awar" +C;X3;K"Pulverize (Sea Giant)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K20 +C;X24;K40 +C;X25;K150 +C;X26;K250 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y441;K"Apit" +C;X2;K"Apit" +C;X3;K"Purchase Item" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y442;K"Aprg" +C;X2;K"Aprg" +C;X3;K"Purge" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,vuln,invu,tree" +C;X16;K0 +C;X17;K15 +C;X18;K5 +C;X19;K1 +C;X20;K75 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K400 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y443;K"Apg2" +C;X2;K"Aprg" +C;X3;K"Purge" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,vuln,invu,tree" +C;X16;K0 +C;X17;K15 +C;X18;K5 +C;X19;K1 +C;X20;K75 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K400 +C;X26;K3 +C;X27;K1 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y444;K"ACpu" +C;X2;K"Aprg" +C;X3;K"Purge (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,vuln,invu,tree" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K5 +C;X20;K75 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K400 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y445;K"ACrf" +C;X2;K"ANrf" +C;X3;K"Rain of Fire (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K12 +C;X20;K125 +C;X21;K200 +C;X22;K800 +C;X23;K6 +C;X24;K25 +C;X25;K6 +C;X26;K0.5 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNrd,BNrf" +C;X34;K"XErf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y446;K"ACrg" +C;X2;K"ANrf" +C;X3;K"Rain of Fire (creep,greater)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1 +C;X17;K3 +C;X18;K3 +C;X19;K12 +C;X20;K125 +C;X21;K300 +C;X22;K800 +C;X23;K9 +C;X24;K50 +C;X25;K9 +C;X26;K0.75 +C;X27;K20 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNrd,BNrf" +C;X34;K"XErf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y447;K"Arai" +C;X2;K"Arai" +C;X3;K"Raise Dead" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K2 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"dead" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K8 +C;X20;K75 +C;X21;K900 +C;X22;K600 +C;X23;K2 +C;X24;K0 +C;X25;K"uske" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uske" +C;X33;K"Brai" +C;X35;K"dead" +C;X36;K0 +C;X37;K40 +C;X38;K40 +C;X39;K8 +C;X40;K75 +C;X41;K900 +C;X42;K600 +C;X43;K1 +C;X44;K1 +C;X45;K"uske" +C;X46;K"uskm" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"uske" +C;X53;K"Brai" +C;X55;K"dead" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y448;K"ACrd" +C;X2;K"Arai" +C;X3;K"Raise Dead (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"dead" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K12 +C;X20;K75 +C;X21;K900 +C;X22;K600 +C;X23;K2 +C;X24;K0 +C;X25;K"uske" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uske" +C;X33;K"Brai" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y449;K"ARal" +C;X2;K"ARal" +C;X3;K"Rally" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y450;K"Arav" +C;X2;K"Arav" +C;X3;K"Raven Form (Druid)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1.05 +C;X17;K0.6 +C;X18;K0 +C;X19;K0 +C;X20;K50 +C;X21;K-1 +C;X22;K"-" +C;X23;K"edot" +C;X24;K5 +C;X25;K1 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"edtm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y451;K"Amrf" +C;X2;K"Arav" +C;X3;K"Raven Form (Medivh)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K1.05 +C;X17;K0.6 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K-1 +C;X22;K"-" +C;X23;K"nmed" +C;X24;K5 +C;X25;K1 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nmdm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y452;K"ACrn" +C;X2;K"ACrn" +C;X3;K"Reincarnation (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K" - " +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y453;K"ANr2" +C;X2;K"AOre" +C;X3;K"Reincarnation (generic)" +C;X4;K0 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K" - " +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y454;K"Arbr" +C;X2;K"Arbr" +C;X3;K"Reinforced Burrows" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y455;K"Arej" +C;X2;K"Arej" +C;X3;K"Rejuvination" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K1 +C;X20;K125 +C;X21;K"-" +C;X22;K400 +C;X23;K400 +C;X24;K0 +C;X25;K3 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brej" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y456;K"ACrj" +C;X2;K"Arej" +C;X3;K"Rejuvination (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K5 +C;X20;K125 +C;X21;K"-" +C;X22;K400 +C;X23;K400 +C;X24;K0 +C;X25;K3 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brej" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y457;K"ACr2" +C;X2;K"Arej" +C;X3;K"Rejuvination (Furbolg)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,vuln,invu,self,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K0 +C;X20;K150 +C;X21;K"-" +C;X22;K400 +C;X23;K400 +C;X24;K0 +C;X25;K3 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brej" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y458;K"Aren" +C;X2;K"Aren" +C;X3;K"Renew" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"friend,ground,air,structure,bridge,alive,dead,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K0.35 +C;X24;K1.5 +C;X25;K0 +C;X26;K0 +C;X27;K175 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y459;K"Ahrp" +C;X2;K"Arep" +C;X3;K"Repair (Human)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K0.35 +C;X24;K1.5 +C;X25;K0.15 +C;X26;K0.6 +C;X27;K75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y460;K"Arep" +C;X2;K"Arep" +C;X3;K"Repair (Orc)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K0.35 +C;X24;K1.5 +C;X25;K0 +C;X26;K0 +C;X27;K75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y461;K"Arpb" +C;X2;K"Arpb" +C;X3;K"Replenish (Life & Mana)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K6 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K6 +C;X21;K700 +C;X22;K250 +C;X23;K25 +C;X24;K25 +C;X25;K0 +C;X26;K0 +C;X27;K5 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brpb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y462;K"Arpl" +C;X2;K"Arpl" +C;X3;K"Replenish (Life)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K6 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K2 +C;X21;K700 +C;X22;K250 +C;X23;K10 +C;X24;K"-" +C;X25;K0 +C;X26;K"-" +C;X27;K5 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brpl" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y463;K"Arpm" +C;X2;K"Arpm" +C;X3;K"Replenish (Mana)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K6 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K2 +C;X21;K700 +C;X22;K250 +C;X23;K"-" +C;X24;K3 +C;X25;K"-" +C;X26;K0 +C;X27;K5 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Brpm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y464;K"Arsk" +C;X2;K"Arsk" +C;X3;K"Resistant Skin" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y465;K"ACrk" +C;X2;K"Arsk" +C;X3;K"Resistant Skin (creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y466;K"ACsk" +C;X2;K"Arsk" +C;X3;K"Resistant Skin(3,1 pos, creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y467;K"Arst" +C;X2;K"Arst" +C;X3;K"Restoration" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"mechanical,friend,nonancient,ground,air,structure,bridge,alive,dead,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K50 +C;X23;K0.35 +C;X24;K1.5 +C;X25;K0 +C;X26;K0 +C;X27;K175 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y468;K"Argd" +C;X2;K"Artn" +C;X3;K"Return (Gold)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y469;K"Argl" +C;X2;K"Artn" +C;X3;K"Return (Gold & Lumber)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y470;K"Arlm" +C;X2;K"Artn" +C;X3;K"Return (Lumber)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y471;K"AHta" +C;X2;K"AIta" +C;X3;K"Reveal(Arcane Tower)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K180 +C;X20;K0 +C;X21;K900 +C;X22;K99999 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xbdt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y472;K"Arng" +C;X2;K"Arng" +C;X3;K"Revenge" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y473;K"Arev" +C;X2;K"Arev" +C;X3;K"Revive" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y474;K"Aroa" +C;X2;K"Aroa" +C;X3;K"Roar" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K100 +C;X21;K500 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y475;K"Ara2" +C;X2;K"Aroa" +C;X3;K"Roar" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K100 +C;X21;K500 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y476;K"ACr1" +C;X2;K"Aroa" +C;X3;K"Roar (creep) -- Skeletal Orc" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K100 +C;X21;K500 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y477;K"ACro" +C;X2;K"Aroa" +C;X3;K"Roar (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K100 +C;X21;K500 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y478;K"Aroc" +C;X2;K"Aroc" +C;X3;K"Rocket Attack" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K2 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K25 +C;X24;K630 +C;X25;K9 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y479;K"Aro1" +C;X2;K"Aroo" +C;X3;K"Root (Ancients)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K2.5 +C;X18;K2.5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K2 +C;X25;K0 +C;X26;K2 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y480;K"Aro2" +C;X2;K"Aroo" +C;X3;K"Root (Ancient Protector)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K2.5 +C;X18;K2.5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K1 +C;X25;K0 +C;X26;K2 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y481;K"Asac" +C;X2;K"Asac" +C;X3;K"Sacrifice (Sacrificial Pit)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,player,organic,nonhero" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K75 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y482;K"Asal" +C;X2;K"Asal" +C;X3;K"Pillage" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y483;K"Alam" +C;X2;K"Alam" +C;X3;K"Sacrifice (Acolyte)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,player" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y484;K"ACsa" +C;X2;K"AHfa" +C;X3;K"Searing Arrows (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,structure,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K8 +C;X21;K"-" +C;X22;K700 +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y485;K"Asds" +C;X2;K"Asds" +C;X3;K"Self Destruct" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,tree,ward" +C;X16;K0 +C;X17;K0.1 +C;X18;K0.1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K0 +C;X23;K100 +C;X24;K250 +C;X25;K250 +C;X26;K100 +C;X27;K3 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y486;K"Asdg" +C;X2;K"Asds" +C;X3;K"Self Destruct (Clockwerk Goblins)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K0.1 +C;X18;K0.1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K0 +C;X23;K100 +C;X24;K30 +C;X25;K250 +C;X26;K12 +C;X27;K1 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y487;K"Asd2" +C;X2;K"Asds" +C;X3;K"Self Destruct 2 (Clockwerk Goblins)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K0.1 +C;X18;K0.1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K0 +C;X23;K100 +C;X24;K60 +C;X25;K250 +C;X26;K22 +C;X27;K1 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y488;K"Asd3" +C;X2;K"Asds" +C;X3;K"Self Destruct 3 (Clockwerk Goblins)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K0.1 +C;X18;K0.1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K0 +C;X23;K100 +C;X24;K80 +C;X25;K250 +C;X26;K30 +C;X27;K1 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y489;K"Asid" +C;X2;K"Asid" +C;X3;K"Sell Item" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y490;K"Asud" +C;X2;K"Asud" +C;X3;K"Sell Unit" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y491;K"Aesn" +C;X2;K"Aesn" +C;X3;K"Sentinel" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K120 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K900 +C;X25;K275 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XEsn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y492;K"Aesr" +C;X2;K"Aesn" +C;X3;K"Sentinel (no research)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K60 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K900 +C;X25;K275 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XEsn" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y493;K"Aeye" +C;X2;K"Aeye" +C;X3;K"Sentry Ward" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K600 +C;X18;K600 +C;X19;K0 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"oeye" +C;X33;K"Beye" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y494;K"ACtn" +C;X2;K"AOwd" +C;X3;K"Serpent Ward (tentacle, Forgotten one)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K180 +C;X19;K1 +C;X20;K5 +C;X21;K"-" +C;X22;K900 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nfgt" +C;X33;K"BOwd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y495;K"Ashm" +C;X2;K"Ashm" +C;X3;K"Shadow Meld" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1.5 +C;X24;K2.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y496;K"Sshm" +C;X2;K"Ashm" +C;X3;K"Shadow Meld (Instant)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.1 +C;X24;K2.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y497;K"Ahid" +C;X2;K"Ahid" +C;X3;K"Shadow Meld (Akama)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.1 +C;X24;K2.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y498;K"ACss" +C;X2;K"AEsh" +C;X3;K"Shadow Strike(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,enemy,neutral" +C;X16;K3 +C;X17;K15.1 +C;X18;K15.1 +C;X19;K8 +C;X20;K65 +C;X21;K"-" +C;X22;K350 +C;X23;K10 +C;X24;K0.9 +C;X25;K0.9 +C;X26;K2 +C;X27;K75 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y499;K"ACsh" +C;X2;K"AOsh" +C;X3;K"Shockwave (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K150 +C;X22;K700 +C;X23;K75 +C;X24;K99999 +C;X25;K800 +C;X26;K150 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y500;K"ACst" +C;X2;K"AOsh" +C;X3;K"Shockwave (Trap)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K0 +C;X21;K150 +C;X22;K700 +C;X23;K75 +C;X24;K99999 +C;X25;K2048 +C;X26;K150 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y501;K"ANsh" +C;X2;K"AOsh" +C;X3;K"Garithos - Shock Wave" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"other" +C;X10;K1 +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K8 +C;X20;K100 +C;X21;K150 +C;X22;K700 +C;X23;K75 +C;X24;K99999 +C;X25;K800 +C;X26;K150 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K8 +C;X40;K100 +C;X41;K150 +C;X42;K700 +C;X43;K130 +C;X44;K9999 +C;X45;K800 +C;X46;K150 +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X53;K"BOsh" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K8 +C;X60;K100 +C;X61;K150 +C;X62;K700 +C;X63;K200 +C;X64;K9999 +C;X65;K800 +C;X66;K150 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X73;K"BOsh" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K8 +C;X80;K100 +C;X81;K150 +C;X82;K700 +C;X83;K200 +C;X84;K9999 +C;X85;K800 +C;X86;K150 +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X93;K"BOsh" +C;X95;K0 +C;X1;Y502;K"ACsi" +C;X2;K"ANsi" +C;X3;K"Silence(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K40 +C;X18;K8.5 +C;X19;K20 +C;X20;K75 +C;X21;K300 +C;X22;K700 +C;X23;K8 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNsi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y503;K"ACsm" +C;X2;K"AHdr" +C;X3;K"Siphon Mana (Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K8 +C;X20;K25 +C;X21;K850 +C;X22;K600 +C;X23;K0 +C;X24;K20 +C;X25;K1 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X33;K"Bdcb,Bdcl,Bdcm,Bdtb,Bdtl,Bdtm,Bdbb,Bdbl,Bdbm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y504;K"ACsl" +C;X2;K"AUsl" +C;X3;K"Sleep (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K10 +C;X18;K5 +C;X19;K6 +C;X20;K125 +C;X21;K"-" +C;X22;K800 +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUsl,BUsp,Bust" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y505;K"Asla" +C;X2;K"Asla" +C;X3;K"Sleep Always" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y506;K"Aslo" +C;X2;K"Aslo" +C;X3;K"Slow" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K3 +C;X15;K"air,ground,enemy" +C;X16;K0 +C;X17;K60 +C;X18;K10 +C;X19;K1 +C;X20;K50 +C;X21;K"-" +C;X22;K700 +C;X23;K0.6 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bslo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y507;K"ACsw" +C;X2;K"Aslo" +C;X3;K"Slow (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K3 +C;X15;K"air,ground,enemy" +C;X16;K0 +C;X17;K20 +C;X18;K10 +C;X19;K8 +C;X20;K50 +C;X21;K"-" +C;X22;K600 +C;X23;K0.6 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bslo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y508;K"Aspo" +C;X2;K"Aspo" +C;X3;K"Slow Poison" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K5 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K0.5 +C;X25;K0.25 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspo,Bssd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y509;K"Asod" +C;X2;K"Asod" +C;X3;K"Spawn Skeleton" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"nsce" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y510;K"Assp" +C;X2;K"Assp" +C;X3;K"Spawn Spiderling" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"nspd" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y511;K"Aspd" +C;X2;K"Aspd" +C;X3;K"Spawn Spider" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"nspr" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y512;K"Aspy" +C;X2;K"Aspd" +C;X3;K"Spawn Hydra" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"nhyd" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y513;K"Aspt" +C;X2;K"Aspd" +C;X3;K"Spawn Hydra Hatchling" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"nhyh" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y514;K"Asps" +C;X2;K"Asps" +C;X3;K"Spell Steal" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,enemy,neutral,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K3 +C;X20;K75 +C;X21;K700 +C;X22;K700 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y515;K"Asph" +C;X2;K"Asph" +C;X3;K"Sphere" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y516;K"Asp1" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 1)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y517;K"Asp2" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 2)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y518;K"Asp3" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 3)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y519;K"Asp4" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 4)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y520;K"Asp5" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 5)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y521;K"Asp6" +C;X2;K"Asph" +C;X3;K"Sphere (SoV Level 6)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.01 +C;X18;K0.01 +C;X19;K1 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y522;K"Aspa" +C;X2;K"Aspa" +C;X3;K"Spider Attack" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,ward,item,structure,debris,enemy" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y523;K"Aspi" +C;X2;K"Aspi" +C;X3;K"Spiked Barricades" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y524;K"Aspl" +C;X2;K"Aspl" +C;X3;K"Spirit Link" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic" +C;X16;K0 +C;X17;K75 +C;X18;K75 +C;X19;K0 +C;X20;K75 +C;X21;K500 +C;X22;K750 +C;X23;K0.5 +C;X24;K4 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspl" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y525;K"Astd" +C;X2;K"Astd" +C;X3;K"Stand Down" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y526;K"Asta" +C;X2;K"Asta" +C;X3;K"Stasis Trap" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,neutral,enemy" +C;X16;K0 +C;X17;K150 +C;X18;K2.5 +C;X19;K0 +C;X20;K100 +C;X21;K"-" +C;X22;K500 +C;X23;K10 +C;X24;K250 +C;X25;K400 +C;X26;K6 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"otot" +C;X33;K"Bsta" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y527;K"Astn" +C;X2;K"Astn" +C;X3;K"Stone Form" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0.7 +C;X17;K0.5 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K-1 +C;X22;K"-" +C;X23;K"ugar" +C;X24;K7 +C;X25;K0.5 +C;X26;K0.5 +C;X27;K8 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ugrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y528;K"Asth" +C;X2;K"Asth" +C;X3;K"Storm Hammers" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y529;K"Asb1" +C;X2;K"ANsu" +C;X3;K"Submerge (Myrmidon)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.67 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"nmyr" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nmys" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y530;K"Asb2" +C;X2;K"ANsu" +C;X3;K"Submerge (Royal Guard)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.7 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"nnrg" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nnrs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y531;K"Asb3" +C;X2;K"ANsu" +C;X3;K"Submerge (Snap Dragon)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.6 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"nsnp" +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nsbs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y532;K"Aslp" +C;X2;K"ANwm" +C;X3;K"Summon Lobstrok Prawns" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K30 +C;X20;K75 +C;X21;K200 +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nlps" +C;X33;K"BNwm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y533;K"ACwe" +C;X2;K"AHwe" +C;X3;K"Summon Sea Elemental" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"hero" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K65 +C;X18;K65 +C;X19;K30 +C;X20;K125 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nsel" +C;X33;K"BHwe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y534;K"Attu" +C;X2;K"Attu" +C;X3;K"Tank Turret" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y535;K"Srtt" +C;X2;K"Acha" +C;X3;K"Tank Upgrade" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"human" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hrtt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y536;K"Atau" +C;X2;K"Atau" +C;X3;K"Taunt" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K450 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y537;K"ANta" +C;X2;K"Atau" +C;X3;K"Taunt(Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K0 +C;X21;K450 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y538;K"ANth" +C;X2;K"AUts" +C;X3;K"Thorny Shield (Creep)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K0.3 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUts" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y539;K"ANt2" +C;X2;K"AUts" +C;X3;K"Thorny Shield (Dragon Turtle)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K0.3 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUts" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y540;K"ACah" +C;X2;K"AEah" +C;X3;K"Thorns Aura (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEah" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y541;K"ACtb" +C;X2;K"ACtb" +C;X3;K"Thunder Bolt (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,enemy,neutral" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K8 +C;X20;K75 +C;X21;K"-" +C;X22;K800 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y542;K"ACtc" +C;X2;K"ACtc" +C;X3;K"Thunder Clap (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K70 +C;X24;K0 +C;X25;K0.25 +C;X26;K0.25 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BCtc" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y543;K"ACt2" +C;X2;K"ACtc" +C;X3;K"Thunder Clap (Thunder Lizard)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K70 +C;X24;K0 +C;X25;K0.25 +C;X26;K0.25 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BCtc" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y544;K"Atdg" +C;X2;K"Atdg" +C;X3;K"TornadoDamage" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K650 +C;X23;K7 +C;X24;K125 +C;X25;K50 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Btdg" +C;X35;K"_" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y545;K"Atsp" +C;X2;K"Atsp" +C;X3;K"TornadoSpin" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy" +C;X16;K0 +C;X17;K12 +C;X18;K6 +C;X19;K0 +C;X20;K0 +C;X21;K275 +C;X23;K22 +C;X24;K3 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Btsp,Btsa" +C;X35;K"_" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y546;K"Atwa" +C;X2;K"Atwa" +C;X3;K"TornadoWander" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"naga" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K1500 +C;X22;K1400 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y547;K"Atol" +C;X2;K"Atol" +C;X3;K"Tree of life (for attaching art)" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y548;K"Ault" +C;X2;K"Ault" +C;X3;K"Ultravision" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y549;K"ACua" +C;X2;K"AUau" +C;X3;K"Unholy Aura (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0.5 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUau" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y550;K"Auhf" +C;X2;K"Auhf" +C;X3;K"Unholy Frenzy" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K1 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0.75 +C;X24;K4 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUhf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y551;K"Suhf" +C;X2;K"Auhf" +C;X3;K"Unholy Frenzy (Warlock)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K3 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0.75 +C;X24;K4 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUhf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y552;K"ACuf" +C;X2;K"Auhf" +C;X3;K"Unholy Frenzy (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K5 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0.75 +C;X24;K4 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUhf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y553;K"Auco" +C;X2;K"Auco" +C;X3;K"Unstable Concoction" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,neutral,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K400 +C;X23;K0 +C;X24;K600 +C;X25;K200 +C;X26;K140 +C;X27;K0 +C;X28;K280 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y554;K"Auns" +C;X2;K"Auns" +C;X3;K"Unsummon" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,player" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K50 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y555;K"SCva" +C;X2;K"AIva" +C;X3;K"Vampiric attack" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y556;K"ACvp" +C;X2;K"AUav" +C;X3;K"Vampiric Aura (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K900 +C;X22;K"-" +C;X23;K0.2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUav" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y557;K"Avng" +C;X2;K"Avng" +C;X3;K"Vengeance" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead" +C;X16;K0 +C;X17;K50 +C;X18;K50 +C;X19;K2 +C;X20;K25 +C;X21;K900 +C;X22;K600 +C;X23;K1 +C;X24;K0 +C;X25;K"even" +C;X26;K"-" +C;X27;K6 +C;X28;K1 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bvng" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y558;K"Awan" +C;X2;K"Awan" +C;X3;K"Wander" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y559;K"Awrs" +C;X2;K"AOws" +C;X3;K"War Stomp (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K3 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K25 +C;X24;K-50 +C;X25;K300 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y560;K"Awrg" +C;X2;K"AOws" +C;X3;K"War Stomp (sea giant)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K3 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K25 +C;X24;K-50 +C;X25;K300 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y561;K"Awrh" +C;X2;K"AOws" +C;X3;K"War Stomp (hydra)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground" +C;X16;K0 +C;X17;K3 +C;X18;K2 +C;X19;K6 +C;X20;K90 +C;X21;K250 +C;X22;K"-" +C;X23;K25 +C;X24;K-50 +C;X25;K300 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y562;K"ANwk" +C;X2;K"AOwk" +C;X3;K"Wind Walk" +C;X4;K1 +C;X5;K1 +C;X6;K1 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K7 +C;X20;K75 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.6 +C;X24;K0.1 +C;X25;K50 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOwk" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y563;K"Awha" +C;X2;K"Awha" +C;X3;K"Wisp Harvest" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"nightelf" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,alive,dead" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K5 +C;X24;K5 +C;X25;K150 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y564;K"Awh2" +C;X2;K"Awha" +C;X3;K"Wisp Harvest (Invulnerable)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"tree,vuln,invu,alive,dead" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K900 +C;X23;K5 +C;X24;K5 +C;X25;K150 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y565;K"Aven" +C;X2;K"Aven" +C;X3;K"Venom Spears" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"orc" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K25 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpoi,Bpsd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y566;K"ACvs" +C;X2;K"Aven" +C;X3;K"Venom Spears (Creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K20 +C;X18;K10 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bpoi,Bpsd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y567;K"Awrp" +C;X2;K"Awrp" +C;X3;K"Warp" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y568;K"Aweb" +C;X2;K"Aweb" +C;X3;K"Web" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"undead" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K7 +C;X19;K12 +C;X20;K0 +C;X21;K"-" +C;X22;K400 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bwea,Bweb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y569;K"ACwb" +C;X2;K"Aweb" +C;X3;K"Web (creep)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K0 +C;X8;K"unit" +C;X9;K"creeps" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K7 +C;X19;K12 +C;X20;K0 +C;X21;K"-" +C;X22;K400 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bwea,Bweb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X29;Y570;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X1;Y571;K"AIa1" +C;X2;K"AIab" +C;X3;K"AgilityBonus (+1)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y572;K"AIa3" +C;X2;K"AIab" +C;X3;K"AgilityBonus (+3)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y573;K"AIa4" +C;X2;K"AIab" +C;X3;K"AgilityBonus (+4) " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y574;K"AIa6" +C;X2;K"AIab" +C;X3;K"AgilityBonus (+6)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y575;K"AIx5" +C;X2;K"AIab" +C;X3;K"Crown of Kings (All + 5)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K5 +C;X25;K5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y576;K"AIx1" +C;X2;K"AIab" +C;X3;K"(All + 1)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y577;K"AIx2" +C;X2;K"AIab" +C;X3;K"(All + 2)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K2 +C;X25;K2 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y578;K"AIs1" +C;X2;K"AIab" +C;X3;K"StrengthBonus (+1)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y579;K"AIs3" +C;X2;K"AIab" +C;X3;K"StrengthBonus (+3)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K3 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y580;K"AIs4" +C;X2;K"AIab" +C;X3;K"StrengthBonus (+4)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K4 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y581;K"AIs6" +C;X2;K"AIab" +C;X3;K"StrengthBonus (+6)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K6 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y582;K"AIi1" +C;X2;K"AIab" +C;X3;K"IntelligenceBonus (+1)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y583;K"AIi3" +C;X2;K"AIab" +C;X3;K"IntelligenceBonus (+3)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K3 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y584;K"AIi4" +C;X2;K"AIab" +C;X3;K"IntelligenceBonus (+4)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K4 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y585;K"AIi6" +C;X2;K"AIab" +C;X3;K"IntelligenceBonus (+6)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K6 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y586;K"AIxm" +C;X2;K"AIxm" +C;X3;K"Permanent All + 1" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K1 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y587;K"AIam" +C;X2;K"AIam" +C;X3;K"AgilityMod " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y588;K"AIim" +C;X2;K"AIim" +C;X3;K"IntelligenceMod " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y589;K"AIsm" +C;X2;K"AIsm" +C;X3;K"StrengthMod " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y590;K"AIgm" +C;X2;K"AIam" +C;X3;K"AgilityMod +2" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y591;K"AItm" +C;X2;K"AIim" +C;X3;K"IntelligenceMod +2" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K2 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y592;K"AInm" +C;X2;K"AIsm" +C;X3;K"StrengthMod +2" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K2 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y593;K"AIaa" +C;X2;K"AIaa" +C;X3;K"AttackMod" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y594;K"AIat" +C;X2;K"AIat" +C;X3;K"AttackBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y595;K"AIt6" +C;X2;K"AIat" +C;X3;K"AttackBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y596;K"AIt9" +C;X2;K"AIat" +C;X3;K"AttackBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K9 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y597;K"AItc" +C;X2;K"AIat" +C;X3;K"AttackBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K12 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y598;K"AItf" +C;X2;K"AIat" +C;X3;K"AttackBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y599;K"AItg" +C;X2;K"AIat" +C;X3;K"AttackBonus +1" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y600;K"AIth" +C;X2;K"AIat" +C;X3;K"AttackBonus +2" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y601;K"AIti" +C;X2;K"AIat" +C;X3;K"AttackBonus +4" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y602;K"AItj" +C;X2;K"AIat" +C;X3;K"AttackBonus +5" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y603;K"AItk" +C;X2;K"AIat" +C;X3;K"AttackBonus +7" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y604;K"AItl" +C;X2;K"AIat" +C;X3;K"AttackBonus +8" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K8 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y605;K"AItn" +C;X2;K"AIat" +C;X3;K"AttackBonus +10" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y606;K"AIva" +C;X2;K"AIva" +C;X3;K"Vampiric attack" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y607;K"AIbk" +C;X2;K"AEbl" +C;X3;K"Blink (Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.33 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K99999 +C;X23;K1000 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y608;K"AIbl" +C;X2;K"AIbl" +C;X3;K"Build Tiny Castle" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hcas,ofrt,unp2,etoe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y609;K"AIbg" +C;X2;K"AIbl" +C;X3;K"Build Tiny Great Hall" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K20 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"htow,ogre,unpl,etol" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y610;K"AIbt" +C;X2;K"AIbl" +C;X3;K"Build Tiny Scout Tower" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K4 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hwtw,hwtw,hwtw,hwtw" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y611;K"AIbb" +C;X2;K"AIbl" +C;X3;K"Build Tiny Blacksmith" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hbla,hbla,hbla,hbla" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y612;K"AIbf" +C;X2;K"AIbl" +C;X3;K"Build Tiny Farm" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K5 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hhou,hhou,hhou,hhou" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y613;K"AIbr" +C;X2;K"AIbl" +C;X3;K"Build Tiny Lumber Mill" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hlum,hlum,hlum,hlum" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y614;K"AIbs" +C;X2;K"AIbl" +C;X3;K"Build Tiny Barracks" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"hbar,hbar,hbar,hbar" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y615;K"AIbh" +C;X2;K"AIbl" +C;X3;K"Build Tiny Altar" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K15 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"halt,halt,halt,halt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y616;K"AIcy" +C;X2;K"Acyc" +C;X3;K"Cyclone" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K5.6 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K600 +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcyc,Bcy2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y617;K"AId1" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+1)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y618;K"AId2" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+2)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y619;K"AId3" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+3)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y620;K"AId4" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+4)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y621;K"AId5" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+5)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y622;K"AIgf" +C;X2;K"AIgl" +C;X3;K"FortificationGlyph" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Rgfo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y623;K"AIgu" +C;X2;K"AIgl" +C;X3;K"UltraVisionGlyph" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K2 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"Rguv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K1 +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"Reuv" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y624;K"AIem" +C;X2;K"AIem" +C;X3;K"ExperienceMod " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K150 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y625;K"AIe2" +C;X2;K"AIem" +C;X3;K"ExperienceMod greater" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y626;K"AIfd" +C;X2;K"AIfs" +C;X3;K"FigurineRedDrake " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nrdr" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y627;K"AIff" +C;X2;K"AIfs" +C;X3;K"FigurineFurbolg" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nfrl" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y628;K"AIfr" +C;X2;K"AIfs" +C;X3;K"FigurineRockGolem " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"ngst" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y629;K"AIfu" +C;X2;K"AIfs" +C;X3;K"FigurineDoomGuard " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nba2" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y630;K"AIfh" +C;X2;K"AIfs" +C;X3;K"FigurineFelHound " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nfel" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y631;K"AIfs" +C;X2;K"AIfs" +C;X3;K"FigurineSkeleton " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K120 +C;X18;K60 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K4 +C;X24;K4 +C;X25;K"nsce" +C;X26;K"nsca" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y632;K"AIir" +C;X2;K"AIfs" +C;X3;K"FigurineIceRevenant" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K180 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nrvi" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y633;K"AIuw" +C;X2;K"AIfs" +C;X3;K"FigurineUrsaWarrior" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K180 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"nfra" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BFig" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y634;K"AIfl" +C;X2;K"AIfl" +C;X3;K"Flag " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y635;K"AIfm" +C;X2;K"AIfm" +C;X3;K"Flag (Human)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y636;K"AIfo" +C;X2;K"AIfo" +C;X3;K"Flag (Orc)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y637;K"AIfn" +C;X2;K"AIfn" +C;X3;K"Flag (Night Elf)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y638;K"AIfe" +C;X2;K"AIfe" +C;X3;K"Flag (Undead)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y639;K"AIfx" +C;X2;K"AIfl" +C;X3;K"Flag (Orc Battle Standard)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y640;K"AIfa" +C;X2;K"AIfa" +C;X3;K"FlareGun" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K1800 +C;X22;K99999 +C;X23;K1 +C;X24;K0.8 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xfla" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y641;K"AIin" +C;X2;K"AUin" +C;X3;K"ItemInferno" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,debris,enemy,neutral" +C;X16;K0 +C;X17;K4 +C;X18;K2 +C;X19;K20 +C;X20;K0 +C;X21;K250 +C;X22;K900 +C;X23;K50 +C;X24;K180 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ninf" +C;X33;K"BNin" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y642;K"AIlm" +C;X2;K"AIlm" +C;X3;K"LevelMod " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y643;K"AIlp" +C;X2;K"AIlp" +C;X3;K"LightningPurge" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K3 +C;X18;K0.3 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K0 +C;X25;K35 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y644;K"AIlf" +C;X2;K"AIml" +C;X3;K"MaxLifeBonus (Least)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K150 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y645;K"AIl1" +C;X2;K"AIml" +C;X3;K"MaxLifeBonus (Lesser)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K200 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y646;K"AIl2" +C;X2;K"AIml" +C;X3;K"MaxLifeBonus (Greater)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K300 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y647;K"AIms" +C;X2;K"AIms" +C;X3;K"MoveSpeedBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K60 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y648;K"ANbs" +C;X2;K"ANbs" +C;X3;K"Orb of Darkness (Black Arrow)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K3 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K600 +C;X23;K0 +C;X24;K1 +C;X25;K80 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ndr1" +C;X33;K"BNba,BNdm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y649;K"AIdf" +C;X2;K"AIsb" +C;X3;K"Orb of Darkness" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K100 +C;X25;K100 +C;X26;K100 +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ANbs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y650;K"AIcb" +C;X2;K"AIcb" +C;X3;K"Orb of Corruption" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K5 +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIcb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y651;K"AIdn" +C;X2;K"AIfb" +C;X3;K"Shadow Orb Ability" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y652;K"AIfb" +C;X2;K"AIfb" +C;X3;K"Orb of Fire" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K140 +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y653;K"AIgd" +C;X2;K"AIfb" +C;X3;K"Orb of Guldan" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K140 +C;X22;K"-" +C;X23;K6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y654;K"AIzb" +C;X2;K"AIzb" +C;X3;K"Orb of Freezing" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K9 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y655;K"AIob" +C;X2;K"AIob" +C;X3;K"Orb of Frost" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K3 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y656;K"AIll" +C;X2;K"AIsb" +C;X3;K"Orb of Lightning" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K35 +C;X25;K10 +C;X26;K35 +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"AIpg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y657;K"AIlb" +C;X2;K"AIlb" +C;X3;K"Orb of Lightning(old)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y658;K"AIsb" +C;X2;K"AIsb" +C;X3;K"Orb of Spells" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K6 +C;X24;K15 +C;X25;K5 +C;X26;K35 +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"AIos" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y659;K"AIpb" +C;X2;K"AIpb" +C;X3;K"Orb of Venom" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K2 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y660;K"Apo2" +C;X2;K"Apo2" +C;X3;K"Orb of Venom (Poison Attack)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic" +C;X16;K0 +C;X17;K8 +C;X18;K8 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K9 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIpb,BIpd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y661;K"AInd" +C;X2;K"ACad" +C;X3;K"Animate Dead (item, special)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K90 +C;X20;K0 +C;X21;K900 +C;X22;K400 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUan" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y662;K"Arel" +C;X2;K"Arel" +C;X3;K"Regen Life" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y663;K"Arll" +C;X2;K"Arel" +C;X3;K"Regen Life" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y664;K"AIsi" +C;X2;K"AIsi" +C;X3;K"SightBonus " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y665;K"AIos" +C;X2;K"Aslo" +C;X3;K"Slow" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,ward" +C;X16;K0 +C;X17;K60 +C;X18;K20 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K0.6 +C;X24;K0.25 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bslo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y666;K"AIso" +C;X2;K"AIso" +C;X3;K"SoulTrap " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"enemy,hero" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y667;K"Asou" +C;X2;K"Asou" +C;X3;K"SoulPossession" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIsv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y668;K"AIcf" +C;X2;K"AIcf" +C;X3;K"ItemCloakOfFlames" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,enemy,neutral" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K160 +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIcf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y669;K"AIco" +C;X2;K"AIco" +C;X3;K"ItemCommand " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,nonhero,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K750 +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y670;K"AIdm" +C;X2;K"AIdm" +C;X3;K"ItemDamageAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y671;K"AIda" +C;X2;K"AIda" +C;X3;K"ItemDefenseAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,invu,vuln" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K2 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdef" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y672;K"AIdb" +C;X2;K"AIda" +C;X3;K"ItemDefenseAoe (+ Healing)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,invu,vuln" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K2 +C;X24;K150 +C;X25;K100 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdef" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y673;K"AIta" +C;X2;K"AIta" +C;X3;K"ItemDetectAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K60 +C;X20;K0 +C;X21;K900 +C;X22;K99999 +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdet" +C;X34;K"Xbdt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y674;K"AIdi" +C;X2;K"AIdi" +C;X3;K"ItemDispelAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y675;K"AIds" +C;X2;K"AIdi" +C;X3;K"ItemDispelAoeWithCooldown" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K7.5 +C;X20;K0 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y676;K"APdi" +C;X2;K"AIdi" +C;X3;K"PowerupDispelAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,invu,vuln,tree" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K800 +C;X22;K500 +C;X23;K0 +C;X24;K250 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y677;K"AIh1" +C;X2;K"AIhe" +C;X3;K"ItemHeal (Lesser)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y678;K"AIh2" +C;X2;K"AIhe" +C;X3;K"ItemHeal (Greater)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K500 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y679;K"AIh3" +C;X2;K"AIhe" +C;X3;K"ItemHeal (Least)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K60 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y680;K"AIha" +C;X2;K"AIha" +C;X3;K"ItemHealAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K25 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K150 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y681;K"AIhb" +C;X2;K"AIha" +C;X3;K"ItemHealAoeGreater" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y682;K"APh1" +C;X2;K"AIha" +C;X3;K"PowerupHealAoeLesser" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K800 +C;X22;K250 +C;X23;K125 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y683;K"APh2" +C;X2;K"AIha" +C;X3;K"PowerupHealAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K800 +C;X22;K250 +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y684;K"APh3" +C;X2;K"AIha" +C;X3;K"PowerupHealAoeGreater" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K800 +C;X22;K250 +C;X23;K400 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y685;K"AIhw" +C;X2;K"Ahwd" +C;X3;K"Healing Ward" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"ohwd" +C;X33;K"Bhwd" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y686;K"AIsw" +C;X2;K"Aeye" +C;X3;K"Sentry Ward" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K300 +C;X18;K300 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"oeye" +C;X33;K"Beye" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y687;K"AIil" +C;X2;K"AIil" +C;X3;K"ItemIllusion " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K500 +C;X23;K0 +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIil" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y688;K"AIv1" +C;X2;K"AIvi" +C;X3;K"ItemInvis (Lesser)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K120 +C;X18;K120 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Binv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y689;K"AIv2" +C;X2;K"AIvi" +C;X3;K"ItemInvis (Greater)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K180 +C;X18;K180 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Binv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y690;K"AIvu" +C;X2;K"AIvu" +C;X3;K"ItemInvul " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K45 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bvul" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y691;K"AIvl" +C;X2;K"AIvu" +C;X3;K"ItemInvul " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K7 +C;X18;K7 +C;X19;K45 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bvul" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y692;K"AIm1" +C;X2;K"AIma" +C;X3;K"ItemManaRestore (Lesser)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K20 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K150 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y693;K"AIm2" +C;X2;K"AIma" +C;X3;K"ItemManaRestore (Greater)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K300 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y694;K"AImr" +C;X2;K"AImr" +C;X3;K"ItemManaRestoreAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y695;K"APmr" +C;X2;K"AImr" +C;X3;K"RuneManaRestoreAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1200 +C;X22;K1200 +C;X23;K125 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y696;K"APmg" +C;X2;K"AImr" +C;X3;K"RuneManaRestoreGreaterAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1200 +C;X22;K1200 +C;X23;K300 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y697;K"AIpm" +C;X2;K"AIpm" +C;X3;K"ItemPlaceMine " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K100 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nglm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y698;K"AIrt" +C;X2;K"AIrt" +C;X3;K"ItemRecall" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,player,vuln,invu,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K700 +C;X22;K99999 +C;X23;K12 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y699;K"AIrm" +C;X2;K"AIrm" +C;X3;K"ItemRegenMana " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y700;K"AIrn" +C;X2;K"AIrm" +C;X3;K"ItemRegenMana lesser" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.25 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y701;K"AIrc" +C;X2;K"AIrc" +C;X3;K"ItemReincarnation " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K500 +C;X25;K-1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XOre" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y702;K"AIre" +C;X2;K"AIre" +C;X3;K"ItemRestore " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K500 +C;X24;K200 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y703;K"AIra" +C;X2;K"AIra" +C;X3;K"ItemRestoreAoe " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K600 +C;X22;K250 +C;X23;K300 +C;X24;K150 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y704;K"APra" +C;X2;K"AIra" +C;X3;K"RuneRestoreAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K1200 +C;X22;K250 +C;X23;K300 +C;X24;K150 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y705;K"AIsp" +C;X2;K"AIsp" +C;X3;K"ItemSpeed" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.6 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y706;K"AIsa" +C;X2;K"AIsa" +C;X3;K"ItemSpeedAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K10 +C;X18;K10 +C;X19;K60 +C;X20;K0 +C;X21;K600 +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y707;K"APsa" +C;X2;K"AIsa" +C;X3;K"RuneSpeedAoe" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K60 +C;X20;K0 +C;X21;K1200 +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspe" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y708;K"AItp" +C;X2;K"AItp" +C;X3;K"ItemTownPortal " +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"structure,vuln,invu" +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1100 +C;X22;K99999 +C;X23;K90 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y709;K"AIad" +C;X2;K"AHad" +C;X3;K"ItemAuraDevotion" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K1 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHad" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y710;K"AIcd" +C;X2;K"AOac" +C;X3;K"ItemAuraCommand" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K1 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOac" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y711;K"AIba" +C;X2;K"AHab" +C;X3;K"ItemAuraBrilliance" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.75 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHab" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y712;K"AIav" +C;X2;K"AUav" +C;X3;K"ItemAuraVampiric" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUav" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y713;K"AIar" +C;X2;K"AEar" +C;X3;K"ItemAuraTrueshot" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K" - " +C;X23;K0.1 +C;X24;K0 +C;X25;K1 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BEar" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K"-" +C;X44;K" - " +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K" - " +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K"-" +C;X84;K" - " +C;X85;K" - " +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y714;K"AIae" +C;X2;K"AOae" +C;X3;K"ItemAuraEndurance" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K" - " +C;X23;K0.1 +C;X24;K0.05 +C;X25;K" - " +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BOae" +C;X35;K"_" +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K" - " +C;X41;K" - " +C;X42;K" - " +C;X43;K"-" +C;X44;K" - " +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K" - " +C;X57;K" - " +C;X58;K" - " +C;X59;K" - " +C;X60;K" - " +C;X61;K" - " +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K" - " +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K" - " +C;X77;K" - " +C;X78;K" - " +C;X79;K" - " +C;X80;K" - " +C;X81;K" - " +C;X82;K" - " +C;X83;K"-" +C;X84;K" - " +C;X85;K" - " +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y715;K"AIau" +C;X2;K"AUau" +C;X3;K"ItemAuraUnholy" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K"-" +C;X23;K0.1 +C;X24;K0.5 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUau" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K" - " +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K" - " +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y716;K"AIuv" +C;X2;K"Ault" +C;X3;K"ItemUltravision" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bult" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y717;K"AIls" +C;X2;K"Alsh" +C;X3;K"Lightning Shield" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,friend,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K10 +C;X20;K0 +C;X21;K160 +C;X22;K600 +C;X23;K20 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Blsh,Blsa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y718;K"AIxs" +C;X2;K"Aami" +C;X3;K"Anti-magic Shield" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground" +C;X16;K0 +C;X17;K15 +C;X18;K15 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K10 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bams,Bam2" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y719;K"AIan" +C;X2;K"AIan" +C;X3;K"Animate Dead" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead" +C;X16;K0 +C;X17;K40 +C;X18;K40 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K1 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BUan" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y720;K"AIrs" +C;X2;K"AIrs" +C;X3;K"Resurrection" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y721;K"AIrr" +C;X2;K"Aroa" +C;X3;K"Roar" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K0.25 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K"-" +C;X31;K"-" +C;X33;K"Broa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y722;K"AIev" +C;X2;K"AEev" +C;X3;K"Evasion" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y723;K"AImx" +C;X2;K"Amim" +C;X3;K"Magic Immunity" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y724;K"AImh" +C;X2;K"AImi" +C;X3;K"Permanent Hit point Bonus" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K50 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y725;K"AImb" +C;X2;K"AImm" +C;X3;K"MaxManaBonus (Least)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K150 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y726;K"AIbm" +C;X2;K"AImm" +C;X3;K"MaxManaBonus (Most)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y727;K"AIsx" +C;X2;K"AIas" +C;X3;K"Attack Speed Increase" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y728;K"AIs2" +C;X2;K"AIas" +C;X3;K"Attack Speed Increase(greater)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y729;K"AIrl" +C;X2;K"AIrg" +C;X3;K"Potion of Life Regen" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K400 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y730;K"AIpr" +C;X2;K"AIrg" +C;X3;K"Potion of Mana Regen(greater)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y731;K"AIsl" +C;X2;K"AIrg" +C;X3;K"Scroll of Life Regen" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K"-" +C;X23;K225 +C;X24;K0 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y732;K"AIpl" +C;X2;K"AIrg" +C;X3;K"Potion of Mana Regen(lesser)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y733;K"AIp1" +C;X2;K"AIrg" +C;X3;K"Potion of Rejuv I" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K25 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y734;K"AIp2" +C;X2;K"AIrg" +C;X3;K"Potion of Rejuv II" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K150 +C;X24;K50 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y735;K"AIp3" +C;X2;K"AIrg" +C;X3;K"Potion of Rejuv III" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K200 +C;X24;K75 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y736;K"AIp4" +C;X2;K"AIrg" +C;X3;K"Potion of Rejuv IV" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K125 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y737;K"AIp5" +C;X2;K"AIrg" +C;X3;K"Scroll of Rejuv I" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K"-" +C;X23;K250 +C;X24;K100 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y738;K"AIp6" +C;X2;K"AIrg" +C;X3;K"Scroll of Rejuv II" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic,vuln,invu" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K0 +C;X20;K0 +C;X21;K600 +C;X22;K"-" +C;X23;K450 +C;X24;K150 +C;X25;K0 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrg,BIrl,BIrm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y739;K"AIgo" +C;X2;K"AIgo" +C;X3;K"GiveGold " +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y740;K"AIlu" +C;X2;K"AIlu" +C;X3;K"GiveLumber " +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K250 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y741;K"AIrv" +C;X2;K"AIrv" +C;X3;K"ItemRevealMap" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K5 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"Xbdt" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y742;K"AIdc" +C;X2;K"AIdc" +C;X3;K"ItemDispelChain" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,enemy,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K400 +C;X22;K700 +C;X23;K0 +C;X24;K0 +C;X25;K8 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y743;K"AIwb" +C;X2;K"AIwb" +C;X3;K"ItemWeb" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,enemy,neutral" +C;X16;K0 +C;X17;K20 +C;X18;K7 +C;X19;K20 +C;X20;K0 +C;X21;K"-" +C;X22;K400 +C;X23;K0.6 +C;X24;K200 +C;X25;K128 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bwea,Bweb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y744;K"AImo" +C;X2;K"AImo" +C;X3;K"ItemMonsterLure" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K0 +C;X20;K75 +C;X21;K1750 +C;X22;K500 +C;X23;K1 +C;X24;K5 +C;X25;K2 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nlur" +C;X33;K"BImo" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y745;K"AIct" +C;X2;K"AIct" +C;X3;K"ItemChangeTOD" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K30 +C;X18;K0 +C;X19;K70 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X34;K"XIct" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y746;K"AIri" +C;X2;K"AIri" +C;X3;K"ItemRandomItem" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"item" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y747;K"AIsr" +C;X2;K"AIsr" +C;X3;K"Runed Bracers" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0 +C;X24;K0.33 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y748;K"Ablp" +C;X2;K"Ablp" +C;X3;K"BlightPlacement" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0.08 +C;X18;K0.08 +C;X19;K0 +C;X20;K0 +C;X21;K350 +C;X22;K500 +C;X23;K64 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y749;K"AIpv" +C;X2;K"AIpv" +C;X3;K"ItemPotionVampirism" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K60 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K12 +C;X24;K0.75 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIpv" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y750;K"Aste" +C;X2;K"Aste" +C;X3;K"ManaSteal" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"notself" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K10 +C;X20;K0 +C;X21;K"-" +C;X22;K650 +C;X23;K50 +C;X24;K0 +C;X25;K1 +C;X26;K1 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y751;K"Amec" +C;X2;K"Amec" +C;X3;K"MechanicalCritter" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K1 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bmec" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y752;K"Ashs" +C;X2;K"Ashs" +C;X3;K"ShadowSight" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bshs" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y753;K"ANpr" +C;X2;K"ANpr" +C;X3;K"Preservation" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,vuln,invu,player,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K15 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y754;K"ANsa" +C;X2;K"ANsa" +C;X3;K"Sanctuary" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,vuln,invu,player,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K45 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K15 +C;X24;K1 +C;X25;K5 +C;X26;K10 +C;X27;K15 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNsa" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y755;K"ANss" +C;X2;K"ANss" +C;X3;K"Spell Shield" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K40 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNss" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y756;K"ANse" +C;X2;K"ANse" +C;X3;K"Spell Shield AOE" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,invu,vuln,self" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1400 +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNss" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y757;K"Aret" +C;X2;K"Aret" +C;X3;K"Retrain" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y758;K"AImt" +C;X2;K"AHmt" +C;X3;K"Staff o' Teleportation" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,structure,vuln,invu,player,neutral,ally" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K90 +C;X20;K0 +C;X21;K50 +C;X22;K99999 +C;X23;K1 +C;X24;K3 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y759;K"Aspb" +C;X2;K"Aspb" +C;X3;K"Spell Book" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"AEer,Adis,Aroa" +C;X24;K1 +C;X25;K3 +C;X26;K3 +C;X27;K"spellbook" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y760;K"AIrd" +C;X2;K"AIrd" +C;X3;K"Raise Dead (Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"dead" +C;X16;K0 +C;X17;K65 +C;X18;K65 +C;X19;K22 +C;X20;K0 +C;X21;K900 +C;X22;K600 +C;X23;K2 +C;X24;K0 +C;X25;K"uske" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"uske" +C;X33;K"Brai" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y761;K"AItb" +C;X2;K"AItb" +C;X3;K"Dust of Appearance" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward,enemy,neutral,vuln,invu" +C;X16;K0 +C;X17;K20 +C;X18;K20 +C;X19;K20 +C;X20;K0 +C;X21;K1000 +C;X22;K"-" +C;X23;K3 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bdet" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y762;K"AIdv" +C;X2;K"AHds" +C;X3;K"Divine Shield (Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K25 +C;X18;K25 +C;X19;K60 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BHds" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y763;K"AIse" +C;X2;K"ANsi" +C;X3;K"Silence(Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K12 +C;X18;K6 +C;X19;K20 +C;X20;K0 +C;X21;K225 +C;X22;K700 +C;X23;K8 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BNsi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X52;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y764;K"AIpg" +C;X2;K"Aprg" +C;X3;K"Purge(orb)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward" +C;X16;K0 +C;X17;K15 +C;X18;K5 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K150 +C;X26;K3 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y765;K"AIps" +C;X2;K"Aprg" +C;X3;K"Purge(Totem, SP)" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,ward" +C;X16;K0 +C;X17;K15 +C;X18;K5 +C;X19;K8 +C;X20;K0 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0 +C;X25;K150 +C;X26;K3 +C;X27;K1 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bprg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y766;K"AIfg" +C;X2;K"Aclf" +C;X3;K"Cloud of Fog (Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu,structure" +C;X16;K0 +C;X17;K30 +C;X18;K30 +C;X19;K15 +C;X20;K0 +C;X21;K300 +C;X22;K1000 +C;X23;K2 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bclf" +C;X34;K"Xclf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y767;K"APrl" +C;X2;K"AHre" +C;X3;K"Rune of Lesser Resurrection" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1400 +C;X22;K400 +C;X23;K1 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y768;K"APrr" +C;X2;K"AHre" +C;X3;K"Rune of Greater Resurrection" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1400 +C;X22;K400 +C;X23;K3 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y769;K"AIrb" +C;X2;K"AIrb" +C;X3;K"Rune of Rebirth" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BIrb" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y770;K"Aspp" +C;X2;K"Aspl" +C;X3;K"Rune of Spirit Link" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,friend,self,organic" +C;X16;K0 +C;X17;K75 +C;X18;K75 +C;X19;K0 +C;X20;K0 +C;X21;K1400 +C;X22;K1400 +C;X23;K0.5 +C;X24;K50 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspl" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y771;K"AUds" +C;X2;K"AUds" +C;X3;K"Dark Summoning" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,vuln,invu,player" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K90 +C;X20;K0 +C;X21;K700 +C;X22;K99999 +C;X23;K12 +C;X24;K1 +C;X25;K1 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y772;K"APwt" +C;X2;K"Aeye" +C;X3;K"Rune of the Watcher" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K500 +C;X23;K"-" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nwad" +C;X33;K"Beye" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K1 +C;X1;Y773;K"AIuf" +C;X2;K"Auhf" +C;X3;K"Unholy Frenzy (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K45 +C;X18;K45 +C;X19;K1 +C;X20;K50 +C;X21;K"-" +C;X22;K500 +C;X23;K0.75 +C;X24;K4 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Buhf" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y774;K"AId0" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+10)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y775;K"AIcm" +C;X2;K"Acmg" +C;X3;K"Control Magic (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,ward" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K5 +C;X20;K25 +C;X21;K"-" +C;X22;K700 +C;X23;K5 +C;X24;K0.3 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bcmg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y776;K"AImz" +C;X2;K"AImm" +C;X3;K"MaxManaBonus (Leastest)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y777;K"AIfz" +C;X2;K"ANfd" +C;X3;K"Finger of Death (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,organic,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K0.25 +C;X24;K1 +C;X25;K250 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y778;K"AIdp" +C;X2;K"AUdp" +C;X3;K"Death Pact (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,player,nonhero,invu,vuln" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K15 +C;X20;K50 +C;X21;K"-" +C;X22;K800 +C;X23;K0 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y779;K"AImv" +C;X2;K"AImm" +C;X3;K"MaxManaBonus (Leastest, Really)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K75 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y780;K"AIpx" +C;X2;K"AImi" +C;X3;K"Permanent Hit point Bonus (small)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K20 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y781;K"AIdd" +C;X2;K"AIdd" +C;X3;K"Defend (Item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"vuln,invu" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.7 +C;X24;K1 +C;X25;K0 +C;X26;K0 +C;X27;K1 +C;X28;K0 +C;X29;K1 +C;X30;K1 +C;X31;K0 +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y782;K"AId8" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+8)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K8 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y783;K"AId7" +C;X2;K"AIde" +C;X3;K"DefenseBonus (+7)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K7 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y784;K"AIlz" +C;X2;K"AIml" +C;X3;K"MaxLifeBonus (Leastest)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K50 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y785;K"AIhx" +C;X2;K"AIhe" +C;X3;K"ItemHeal (Leastest)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K100 +C;X23;K50 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y786;K"AIaz" +C;X2;K"AIab" +C;X3;K"AgilityBonus (+10)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K10 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y787;K"AIrx" +C;X2;K"AHre" +C;X3;K"Resurrection - Item" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,dead,friend" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K240 +C;X20;K0 +C;X21;K900 +C;X22;K400 +C;X23;K6 +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y788;K"AIbx" +C;X2;K"AHbh" +C;X3;K"Bash (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,organic" +C;X16;K0 +C;X17;K2 +C;X18;K2 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K15 +C;X24;K0 +C;X25;K25 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"BPSE" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y789;K"AItx" +C;X2;K"AIat" +C;X3;K"AttackBonus +20" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K20 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y790;K"AIwm" +C;X2;K"ANwm" +C;X3;K"Watery Minion (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K20 +C;X20;K0 +C;X21;K200 +C;X22;K"-" +C;X23;K2 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"nmrr" +C;X33;K"BNwm" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y791;K"AIsh" +C;X2;K"AIsh" +C;X3;K"Summon Headhunter (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K60 +C;X18;K60 +C;X19;K60 +C;X20;K0 +C;X21;K200 +C;X22;K800 +C;X23;K"-" +C;X24;K2 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"otbk" +C;X33;K"BIsh" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y792;K"AI2m" +C;X2;K"AImm" +C;X3;K"200 mana bonus" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K200 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y793;K"AIgx" +C;X2;K"Aoar" +C;X3;K"Aura - Regeneration (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,air,organic,vuln,invu,friend,neutral,self" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K500 +C;X22;K"-" +C;X23;K0.02 +C;X24;K1 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Boar" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y794;K"AIhl" +C;X2;K"AHhb" +C;X3;K"Holy Light (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic,notself,invu,vuln,nonancient" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K5 +C;X20;K0 +C;X21;K"-" +C;X22;K800 +C;X23;K200 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y795;K"AIsz" +C;X2;K"Aspo" +C;X3;K"Slow Poison (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,organic" +C;X16;K0 +C;X17;K5 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K0.5 +C;X25;K0.25 +C;X26;K1 +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bspo,Bssd,Bssi" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y796;K"AIpz" +C;X2;K"AIha" +C;X3;K"Penguin Squeek" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K0 +C;X23;K0 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y797;K"AIfw" +C;X2;K"AIfb" +C;X3;K"Searing Blade - fire melee" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K100 +C;X22;K"-" +C;X23;K10 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y798;K"AIft" +C;X2;K"AIob" +C;X3;K"Frostguard - frost melee" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,ward" +C;X16;K0 +C;X17;K3 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K5 +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bfro" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y799;K"AIlx" +C;X2;K"AIsb" +C;X3;K"Shaman Claws - lightning melee" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"ground,ward" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K12 +C;X24;K35 +C;X25;K10 +C;X26;K35 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K"AIpg" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y800;K"AIcs" +C;X2;K"AOcr" +C;X3;K"Critical Strike (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K"-" +C;X23;K20 +C;X24;K2 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y801;K"AIcl" +C;X2;K"AOcl" +C;X3;K"Chain Lightning (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"air,ground,enemy,neutral,organic" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K9 +C;X20;K0 +C;X21;K500 +C;X22;K700 +C;X23;K100 +C;X24;K4 +C;X25;K0.25 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y802;K"AIx3" +C;X2;K"AIab" +C;X3;K"(All + 3)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K3 +C;X24;K3 +C;X25;K3 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y803;K"AIx4" +C;X2;K"AIab" +C;X3;K"(All + 4)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K4 +C;X24;K4 +C;X25;K4 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +C;X1;Y804;K"AIxk" +C;X2;K"Absk" +C;X3;K"Beserk (item)" +C;X4;K1 +C;X5;K1 +C;X6;K0 +C;X7;K1 +C;X8;K"item" +C;X9;K"other" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K"_" +C;X16;K0 +C;X17;K12 +C;X18;K12 +C;X19;K30 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K0.2 +C;X24;K0.5 +C;X25;K0.5 +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X33;K"Bbsk" +C;X35;K"_" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"-" +C;X41;K"-" +C;X42;K"-" +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"-" +C;X50;K"-" +C;X51;K"-" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K"-" +C;X63;K"-" +C;X64;K"-" +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X75;K"_" +C;X76;K"-" +C;X77;K"-" +C;X78;K"-" +C;X79;K"-" +C;X80;K"-" +C;X81;K"-" +C;X82;K"-" +C;X83;K"-" +C;X84;K"-" +C;X85;K"-" +C;X86;K"-" +C;X87;K"-" +C;X88;K"-" +C;X89;K"-" +C;X90;K"-" +C;X91;K"-" +C;X95;K0 +E diff --git a/share/mpq/units/units/abilitymetadata.slk b/share/mpq/units/units/abilitymetadata.slk new file mode 100644 index 0000000..f04e635 --- /dev/null +++ b/share/mpq/units/units/abilitymetadata.slk @@ -0,0 +1,16164 @@ +ID;PWXL;N;E +B;X26;Y751;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"repeat" +C;X6;K"data" +C;X7;K"category" +C;X8;K"displayName" +C;X9;K"sort" +C;X10;K"type" +C;X11;K"changeFlags" +C;X12;K"importType" +C;X13;K"stringExt" +C;X14;K"caseSens" +C;X15;K"canBeEmpty" +C;X16;K"minVal" +C;X17;K"maxVal" +C;X18;K"forceNonNeg" +C;X19;K"useUnit" +C;X20;K"useHero" +C;X21;K"useItem" +C;X22;K"useCreep" +C;X23;K"useSpecific" +C;X24;K"notSpecific" +C;X25;K"version" +C;X26;K"section" +C;X1;Y2;K"anam" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ANAM" +C;X9;K"c1a00" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTName" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y3;K"ansf" +C;X2;K"EditorSuffix" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ANSF" +C;X9;K"c1a01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y4;K"aher" +C;X2;K"hero" +C;X3;K"AbilityData" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AHER" +C;X9;K"c1a01" +C;X10;K"bool" +C;X11;K"c" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y5;K"aite" +C;X2;K"item" +C;X3;K"AbilityData" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AITE" +C;X9;K"c1a01" +C;X10;K"bool" +C;X11;K"c" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y6;K"arac" +C;X2;K"race" +C;X3;K"AbilityData" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ARAC" +C;X9;K"c1a02" +C;X10;K"unitRace" +C;X11;K"c" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y7;K"abpx" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ABPX" +C;X9;K"c2a00" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K3 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y8;K"abpy" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ABPY" +C;X9;K"c2a01" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y9;K"aubx" +C;X2;K"UnButtonpos" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AUBX" +C;X9;K"c2a02" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K3 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y10;K"auby" +C;X2;K"UnButtonpos" +C;X3;K"Profile" +C;X4;K1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AUBY" +C;X9;K"c2a03" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y11;K"arpx" +C;X2;K"Researchbuttonpos" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ARPX" +C;X9;K"c2a04" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K3 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y12;K"arpy" +C;X2;K"Researchbuttonpos" +C;X3;K"Profile" +C;X4;K1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ARPY" +C;X9;K"c2a05" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y13;K"aart" +C;X2;K"Art" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AART" +C;X9;K"c3a00" +C;X10;K"icon" +C;X11;K"i" +C;X12;K"Image" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y14;K"auar" +C;X2;K"Unart" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AUAR" +C;X9;K"c3a01" +C;X10;K"icon" +C;X12;K"Image" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y15;K"arar" +C;X2;K"ResearchArt" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ARAR" +C;X9;K"c3a02" +C;X10;K"icon" +C;X11;K"i" +C;X12;K"Image" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y16;K"acat" +C;X2;K"CasterArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ACAT" +C;X9;K"c4a00" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y17;K"atat" +C;X2;K"TargetArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATAT" +C;X9;K"c5a00" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y18;K"asat" +C;X2;K"SpecialArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ASAT" +C;X9;K"c6a00" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y19;K"aeat" +C;X2;K"EffectArt" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AEAT" +C;X9;K"c7a00" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y20;K"aaea" +C;X2;K"Areaeffectart" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AAEA" +C;X9;K"c7a01" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y21;K"alig" +C;X2;K"LightningEffect" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ALIG" +C;X10;K"lightningList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K3 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y22;K"amat" +C;X2;K"Missileart" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AMAT" +C;X9;K"c8a00" +C;X10;K"modelList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y23;K"amsp" +C;X2;K"Missilespeed" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AMSP" +C;X9;K"c8a01" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y24;K"amac" +C;X2;K"Missilearc" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AMAC" +C;X9;K"c8a02" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y25;K"amho" +C;X2;K"MissileHoming" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AMHO" +C;X9;K"c8a03" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y26;K"atac" +C;X2;K"Targetattachcount" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATAC" +C;X9;K"c9a00" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K6 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y27;K"ata0" +C;X2;K"Targetattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA0" +C;X9;K"c9a000" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y28;K"ata1" +C;X2;K"Targetattach1" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA1" +C;X9;K"c9a001" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y29;K"ata2" +C;X2;K"Targetattach2" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA2" +C;X9;K"c9a002" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y30;K"ata3" +C;X2;K"Targetattach3" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA3" +C;X9;K"c9a003" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y31;K"ata4" +C;X2;K"Targetattach4" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA4" +C;X9;K"c9a004" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y32;K"ata5" +C;X2;K"Targetattach5" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ATA5" +C;X9;K"c9a005" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y33;K"acac" +C;X2;K"Casterattachcount" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ACAC" +C;X9;K"c9a00" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y34;K"acap" +C;X2;K"Casterattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ACAP" +C;X9;K"c9b00" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y35;K"aca1" +C;X2;K"Casterattach1" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ACA1" +C;X9;K"c9b00" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y36;K"aspt" +C;X2;K"Specialattach" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_ASPT" +C;X9;K"c9b01" +C;X10;K"stringList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y37;K"aani" +C;X2;K"Animnames" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"art" +C;X8;K"WESTRING_AEVAL_AANI" +C;X10;K"stringList" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y38;K"atp1" +C;X2;K"Tip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K3 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ATP1" +C;X9;K"y0a01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTDesc" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y39;K"aut1" +C;X2;K"Untip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K3 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AUT1" +C;X9;K"y0b01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTDesc" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y40;K"aub1" +C;X2;K"Ubertip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K3 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AUB1" +C;X9;K"y0c01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTUber" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y41;K"auu1" +C;X2;K"Unubertip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K3 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AUU1" +C;X9;K"y0d01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTUber" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y42;K"aret" +C;X2;K"Researchtip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ARET" +C;X9;K"d0a00" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTDesc" +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y43;K"arut" +C;X2;K"Researchubertip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ARUT" +C;X9;K"d0a01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTUber" +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y44;K"arhk" +C;X2;K"Researchhotkey" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_ARHK" +C;X9;K"d0a02" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y45;K"ahky" +C;X2;K"Hotkey" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AHKY" +C;X9;K"e0a00" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y46;K"auhk" +C;X2;K"Unhotkey" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AUHK" +C;X9;K"e0a01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y47;K"areq" +C;X2;K"Requires" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"tech" +C;X8;K"WESTRING_AEVAL_AREQ" +C;X9;K"e0b01" +C;X10;K"techList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y48;K"arqa" +C;X2;K"Requiresamount" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"tech" +C;X8;K"WESTRING_AEVAL_ARQA" +C;X9;K"e0b02" +C;X10;K"intList" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y49;K"achd" +C;X2;K"checkDep" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"tech" +C;X8;K"WESTRING_AEVAL_ACHD" +C;X9;K"e2b00" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y50;K"apri" +C;X2;K"priority" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_APRI" +C;X9;K"e2b01" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y51;K"aord" +C;X2;K"Order" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AORD" +C;X9;K"e3b00" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y52;K"aoru" +C;X2;K"Unorder" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AORU" +C;X9;K"e3b01" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y53;K"aoro" +C;X2;K"Orderon" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AORO" +C;X9;K"e3b02" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y54;K"aorf" +C;X2;K"Orderoff" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_AORF" +C;X9;K"e3b03" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y55;K"aefs" +C;X2;K"Effectsound" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"sound" +C;X8;K"WESTRING_AEVAL_AEFS" +C;X9;K"e4b00" +C;X10;K"soundLabel" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y56;K"aefl" +C;X2;K"Effectsoundlooped" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"sound" +C;X8;K"WESTRING_AEVAL_AEFL" +C;X9;K"e4b01" +C;X10;K"soundLabel" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y57;K"alev" +C;X2;K"levels" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ALEV" +C;X9;K"f0a10" +C;X10;K"int" +C;X11;K"s" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y58;K"arlv" +C;X2;K"reqLevel" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ARLV" +C;X9;K"f0a01" +C;X10;K"int" +C;X11;K"s" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y59;K"alsk" +C;X2;K"levelSkip" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ALSK" +C;X9;K"f0a01a" +C;X10;K"int" +C;X11;K"s" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K1 +C;X25;K1 +C;X1;Y60;K"atar" +C;X2;K"targs" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ATAR" +C;X9;K"f0a02" +C;X10;K"targetList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y61;K"acas" +C;X2;K"Cast" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ACAS" +C;X9;K"g0a00" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K3600 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X24;K"Arpb,Arpl,Arpm,Anpa" +C;X25;K1 +C;X1;Y62;K"adur" +C;X2;K"Dur" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ADUR" +C;X9;K"g0a01" +C;X10;K"unreal" +C;X13;K3 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K3600 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y63;K"ahdu" +C;X2;K"HeroDur" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AHDU" +C;X9;K"g0a02" +C;X10;K"unreal" +C;X13;K3 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K3600 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y64;K"acdn" +C;X2;K"Cool" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ACDN" +C;X9;K"g0a03" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K3600 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y65;K"amcs" +C;X2;K"Cost" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AMCS" +C;X9;K"g0a04" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y66;K"aare" +C;X2;K"Area" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AARE" +C;X9;K"g0a05" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y67;K"aran" +C;X2;K"Rng" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ARAN" +C;X9;K"g0a06" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y68;K"abuf" +C;X2;K"BuffID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_ABUF" +C;X9;K"g0a07" +C;X10;K"buffList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y69;K"aeff" +C;X2;K"EfctID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"stats" +C;X8;K"WESTRING_AEVAL_AEFF" +C;X9;K"g0a07" +C;X10;K"effectList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +C;X1;Y70;K"Hbz1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y71;K"Hbz2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y72;K"Hbz3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y73;K"Hbz4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y74;K"Hbz5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ5" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y75;K"Hbz6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBZ6" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbz,ACbz,ANrf,ACrf" +C;X25;K1 +C;X1;Y76;K"Hab1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHab,ACba,AIba" +C;X25;K1 +C;X1;Y77;K"Hab2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAB2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHab,ACba,AIba" +C;X25;K1 +C;X1;Y78;K"Hmt1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HMT1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHmt,AImt" +C;X25;K1 +C;X1;Y79;K"Hmt2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HMT2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHmt,AImt" +C;X25;K1 +C;X1;Y80;K"Hmt3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HMT3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHmt,AImt,AUds" +C;X25;K1 +C;X1;Y81;K"Hwe1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HWE1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHwe,AEst,ANsg,ANsq,ANsw,ANwm,AOsw,AOwd,Anwm,ACwe,AHpx,ACtn,ANlm" +C;X25;K1 +C;X1;Y82;K"Hwe2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HWE2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K24 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHwe,AEst,ANsg,ANsq,ANsw,ANwm,AOsw,AOwd,Anwm,ACwe,AHpx,ACtn,ANlm" +C;X25;K1 +C;X1;Y83;K"Oww1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWW1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOww" +C;X25;K1 +C;X1;Y84;K"Oww2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWW2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOww" +C;X25;K1 +C;X1;Y85;K"Ocr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcr,ACct,ANdb" +C;X25;K1 +C;X1;Y86;K"Ocr2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCR2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcr,ACct,ANdb" +C;X25;K1 +C;X1;Y87;K"Ocr3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCR3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcr,ACct,ANdb" +C;X25;K1 +C;X1;Y88;K"Ocr4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCR4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcr,ACct,ANdb" +C;X25;K1 +C;X1;Y89;K"Ocr5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCR5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcr,ACct,ANdb" +C;X25;K1 +C;X1;Y90;K"Omi1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OMI1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K9 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOmi" +C;X25;K1 +C;X1;Y91;K"Omi2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OMI2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOmi" +C;X25;K1 +C;X1;Y92;K"Omi3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OMI3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOmi" +C;X25;K1 +C;X1;Y93;K"Omi4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OMI4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOmi" +C;X25;K1 +C;X1;Y94;K"Owk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWK1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOwk" +C;X25;K1 +C;X1;Y95;K"Owk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWK2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOwk" +C;X25;K1 +C;X1;Y96;K"Owk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWK3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOwk" +C;X25;K1 +C;X1;Y97;K"Owk4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OWK3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOwk,ANwk" +C;X25;K1 +C;X1;Y98;K"Uan1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAN1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUan" +C;X25;K1 +C;X1;Y99;K"Uan3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAN3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUan,ACad,AIan,AInd" +C;X25;K1 +C;X1;Y100;K"Udc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDC1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdc,ACdc" +C;X25;K1 +C;X1;Y101;K"Udp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDP1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdp,AUdr,Aste" +C;X25;K1 +C;X1;Y102;K"Udp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDP2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdp,AUdr,Aste" +C;X25;K1 +C;X1;Y103;K"Udp3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDP3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdp,AUdr,Aste" +C;X25;K1 +C;X1;Y104;K"Udp4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDP4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdp,AUdr,Aste" +C;X25;K1 +C;X1;Y105;K"Udp5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDP5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdp,AUdr,Aste" +C;X25;K1 +C;X1;Y106;K"Uau1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAU1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUau,AIau,ACua" +C;X25;K1 +C;X1;Y107;K"Uau2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAU2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUau,AIau,ACua" +C;X25;K1 +C;X1;Y108;K"Uau3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAU3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUau,AIau,ACua" +C;X25;K1 +C;X1;Y109;K"Eev1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EEV1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEev,AIev,ACev,ACes" +C;X25;K1 +C;X1;Y110;K"Eim1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EIM1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEim,ACim,ANpi,Apmf,Apig" +C;X25;K1 +C;X1;Y111;K"Eim2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EIM2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEim,ACim,ANpi,Apmf,Apig" +C;X25;K1 +C;X1;Y112;K"Eim3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EIM3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEim,ACim,ANpi,Apmf,Apig" +C;X25;K1 +C;X1;Y113;K"Emb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EMB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEmb,Amnb,Ambd" +C;X25;K1 +C;X1;Y114;K"Emb2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EMB2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEmb,Amnb,Ambd" +C;X25;K1 +C;X1;Y115;K"Emb3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EMB3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEmb,Amnb,Ambd" +C;X25;K1 +C;X1;Y116;K"Eme1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EME1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi,Abrf,Arav,Amrf,Astn,Aspx,Aave,Abur,Abu2,Abu3,Aetf,Acpf,Aphx,Asb1,Asb2,Asb3,ANcr,ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y117;K"Eme2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EME2" +C;X9;K"x0a001" +C;X10;K"morphFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi,Abrf,Arav,Amrf,Astn,Aspx,Aave,Abur,Abu2,Abu3,Aetf,Acpf,Aphx,Asb1,Asb2,Asb3,ANcr,ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y118;K"Eme3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EME3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi,Abrf,Arav,Amrf,Astn,Aspx,Aave,Abur,Abu2,Abu3,Aetf,Acpf,Aphx,Asb1,Asb2,Asb3,ANcr,ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y119;K"Eme4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EME4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi,Abrf,Arav,Amrf,Astn,Aspx,Aave,Abur,Abu2,Abu3,Aetf,Acpf,Aphx,ANcr,ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y120;K"Eme5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EME5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi" +C;X25;K1 +C;X1;Y121;K"Ncr5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCR5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcr" +C;X25;K1 +C;X1;Y122;K"Ncr6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCR6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcr" +C;X25;K1 +C;X1;Y123;K"Nrg5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRG5" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y124;K"Nrg6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRG6" +C;X9;K"x0a006" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y125;K"ave5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AVE5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aave,Astn" +C;X25;K1 +C;X1;Y126;K"Emeu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EMEU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEme,AEIl,AEvi,Abrf,Arav,Amrf,Astn,Aspx,Aave,Abur,Abu2,Abu3,Aetf,Acpf,Aphx,Asb1,Asb2,Asb3,ANcr,ANrg,ANg1,ANg2,ANg3" +C;X25;K1 +C;X1;Y127;K"Usl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_USL1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUsl,ACsl" +C;X25;K1 +C;X1;Y128;K"Uav1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UAV1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUav,AIav,ACvp" +C;X25;K1 +C;X1;Y129;K"Ucs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcs,ANbf,ACbc,ACbf,ACca,ACcv" +C;X25;K1 +C;X1;Y130;K"Ucs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCS2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcs,ANbf,ACbc,ACbf,ACca,ACcv" +C;X25;K1 +C;X1;Y131;K"Ucs3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCS3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcs,ANbf,ACbc,ACbf,ACca,ACcv,ANfl" +C;X25;K1 +C;X1;Y132;K"Ucs4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCS4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcs,ANbf,ACbc,ACbf,ACca,ACcv,ANfl" +C;X25;K1 +C;X1;Y133;K"Uin1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUin,ANin,SNin,AIin" +C;X25;K1 +C;X1;Y134;K"Uin2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUin,ANin,SNin,AIin" +C;X25;K1 +C;X1;Y135;K"Uin3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIN3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUin,ANin,SNin,AIin" +C;X25;K1 +C;X1;Y136;K"Uin4" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIN4" +C;X9;K"x0a003" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUin,ANin,SNin,AIin" +C;X25;K1 +C;X1;Y137;K"Ocl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCL1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcl,AOhw,ACcl,AChv,ANfl" +C;X25;K1 +C;X1;Y138;K"Ocl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCL2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K16 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcl,AOhw,ACcl,AChv,ANfl" +C;X25;K1 +C;X1;Y139;K"Ocl3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OCL3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOcl,AOhw,ACcl,AChv" +C;X25;K1 +C;X1;Y140;K"Oeq1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OEQ1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOeq,SNeq" +C;X25;K1 +C;X1;Y141;K"Oeq2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OEQ2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOeq,SNeq" +C;X25;K1 +C;X1;Y142;K"Oeq3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OEQ3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOeq,SNeq" +C;X25;K1 +C;X1;Y143;K"Oeq4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OEQ4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOeq,SNeq" +C;X25;K1 +C;X1;Y144;K"Ofs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OFS1" +C;X9;K"x0a000" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOfs" +C;X25;K1 +C;X1;Y145;K"Osf1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSF1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsf,ACsf,ACs9,AIsh" +C;X25;K1 +C;X1;Y146;K"Osf2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSF2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsf,ACsf,ACs9,AIsh" +C;X25;K1 +C;X1;Y147;K"Eer1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EER1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEer,Aenr,Aenw" +C;X25;K1 +C;X1;Y148;K"Efn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFN1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfn,ACfr" +C;X25;K1 +C;X1;Y149;K"Efnu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFNU" +C;X9;K"x0a000u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfn,ACfr" +C;X25;K1 +C;X1;Y150;K"Eah1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAH1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEah" +C;X25;K1 +C;X1;Y151;K"Eah2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAH2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEah" +C;X25;K1 +C;X1;Y152;K"Etq1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ETQ1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEtq" +C;X25;K1 +C;X1;Y153;K"Etq2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ETQ2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEtq" +C;X25;K1 +C;X1;Y154;K"Etq3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ETQ3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEtq" +C;X25;K1 +C;X1;Y155;K"Udd1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDD1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdd,SNdd" +C;X25;K1 +C;X1;Y156;K"Udd2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDD2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUdd,SNdd" +C;X25;K1 +C;X1;Y157;K"Ufa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UFA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUfa,AUfu,ACfa" +C;X25;K1 +C;X1;Y158;K"Ufa2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UFA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUfa,AUfu,ACfa" +C;X25;K1 +C;X1;Y159;K"Ufn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UFN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUfn,ACfn" +C;X25;K1 +C;X1;Y160;K"Ufn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UFN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUfn,ACfn" +C;X25;K1 +C;X1;Y161;K"Hfa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfa,ACsa" +C;X25;K1 +C;X1;Y162;K"Esf1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESF1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsf,AEsb,ANmo,ACmo" +C;X25;K1 +C;X1;Y163;K"Esf2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESF2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsf,AEsb,ANmo,ACmo" +C;X25;K1 +C;X1;Y164;K"Esf3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESF3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsf,AEsb,ANmo,ACmo" +C;X25;K1 +C;X1;Y165;K"Ear1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEar,AIar,ACat" +C;X25;K1 +C;X1;Y166;K"Ear2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAR2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEar,AIar,ACat,ACac,AIcd,Aakb" +C;X25;K1 +C;X1;Y167;K"Ear3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAR3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEar,AIar,ACat,ACac,AIcd,Aakb" +C;X25;K1 +C;X1;Y168;K"Ear4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAR4" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEar,AIar,ACat,ACac,AIcd,Aakb" +C;X25;K1 +C;X1;Y169;K"Hav1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAV1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHav" +C;X25;K1 +C;X1;Y170;K"Hav2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAV2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHav" +C;X25;K1 +C;X1;Y171;K"Hav3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAV3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHav" +C;X25;K1 +C;X1;Y172;K"Hav4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAV4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHav" +C;X25;K1 +C;X1;Y173;K"Hbh1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBH1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbh,ACbh" +C;X25;K1 +C;X1;Y174;K"Hbh2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBH2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbh,ACbh" +C;X25;K1 +C;X1;Y175;K"Hbh3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBH3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbh,ACbh" +C;X25;K1 +C;X1;Y176;K"Hbh4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBH4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbh,ACbh" +C;X25;K1 +C;X1;Y177;K"Hbh5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBH5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbh,ACbh,ANbh,ANb2,AIbx" +C;X25;K1 +C;X1;Y178;K"Htb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HTB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHtb,ANfb,Awfb,ACfb,ACcb" +C;X25;K1 +C;X1;Y179;K"Htc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HTC1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHtc" +C;X25;K1 +C;X1;Y180;K"Htc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HTC2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHtc" +C;X25;K1 +C;X1;Y181;K"Htc3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HTC3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHtc" +C;X25;K1 +C;X1;Y182;K"Htc4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HTC4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHtc" +C;X25;K1 +C;X1;Y183;K"Had1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAD1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHad,AIad,ACav" +C;X25;K1 +C;X1;Y184;K"Had2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAD2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHad,AIad,ACav" +C;X25;K1 +C;X1;Y185;K"Hds1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HDS1" +C;X9;K"x0a000" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHds" +C;X25;K1 +C;X1;Y186;K"Hhb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HHB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHhb" +C;X25;K1 +C;X1;Y187;K"Hre1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HRE1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHre,AIrs" +C;X25;K1 +C;X1;Y188;K"Hre2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HRE2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUan,AHre,ACad,AIan,AIrs,APrl,APrr" +C;X25;K1 +C;X1;Y189;K"Hca1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HCA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHca,ACcw,ANfa" +C;X25;K1 +C;X1;Y190;K"Hca2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HCA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHca,ACcw,ANfa" +C;X25;K1 +C;X1;Y191;K"Hca3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HCA3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHca,ACcw,ANfa" +C;X25;K1 +C;X1;Y192;K"Hca4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HCA4" +C;X9;K"x0a004" +C;X10;K"stackFlags" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHca,ACcw,ANfa" +C;X25;K1 +C;X1;Y193;K"Oae1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OAE1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOae,AIae,SCae" +C;X25;K1 +C;X1;Y194;K"Oae2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OAE2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOae,AIae,SCae" +C;X25;K1 +C;X1;Y195;K"Ore1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ORE1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOre,ACrn,ANrn" +C;X25;K1 +C;X1;Y196;K"Osh1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSH1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsh,ACsh,ACst" +C;X25;K1 +C;X1;Y197;K"Osh2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSH2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsh,ACsh,ACst" +C;X25;K1 +C;X1;Y198;K"Osh3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSH3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsh,ACsh,ACst" +C;X25;K1 +C;X1;Y199;K"Osh4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OSH4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AOsh,ACsh,ACst" +C;X25;K1 +C;X1;Y200;K"Nfd1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFD1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfd" +C;X25;K1 +C;X1;Y201;K"Nfd2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFD2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfd" +C;X25;K1 +C;X1;Y202;K"Nfd3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFD3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfd" +C;X25;K1 +C;X1;Y203;K"Ndp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDP1" +C;X9;K"x0a000" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdp" +C;X25;K1 +C;X1;Y204;K"Ndp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDP2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdp" +C;X25;K1 +C;X1;Y205;K"Ndp3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDP3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdp" +C;X25;K1 +C;X1;Y206;K"Nrc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRC1" +C;X9;K"x0a000" +C;X10;K"abilCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANrc" +C;X25;K1 +C;X1;Y207;K"Nrc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRC2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANrc" +C;X25;K1 +C;X1;Y208;K"Ams1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AMS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aams,ACam" +C;X25;K1 +C;X1;Y209;K"Ams2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AMS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aams,ACam" +C;X25;K1 +C;X1;Y210;K"Ams3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AMS3" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aams,ACam,AIxs" +C;X25;K1 +C;X1;Y211;K"Ams4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AMS4" +C;X9;K"x0a004" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aams,ACam,AIxs,Aam2" +C;X25;K1 +C;X1;Y212;K"Apl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_APL1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aapl,Aap1,Aap2,Aap3,Aap4" +C;X25;K1 +C;X1;Y213;K"Apl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_APL2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aapl,Aap1,Aap2,Aap3,Aap4" +C;X25;K1 +C;X1;Y214;K"Apl3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_APL3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-1 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aapl,Aap1,Aap2,Aap3,Aap4" +C;X25;K1 +C;X1;Y215;K"Aplu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_APLU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aapl,Aap1,Aap2,Aap3,Aap4" +C;X25;K1 +C;X1;Y216;K"Oar1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OAR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aoar,ACnr,Aabr" +C;X25;K1 +C;X1;Y217;K"Oar2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_OAR2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aoar,ACnr,Aabr" +C;X25;K1 +C;X1;Y218;K"Akb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AKB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aakb" +C;X25;K1 +C;X1;Y219;K"Adm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ADM1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aadm,ACdm,Adis,Adsm,Adch" +C;X25;K1 +C;X1;Y220;K"Adm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ADM2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aadm,ACdm,Adis,Adsm,Adch" +C;X25;K1 +C;X1;Y221;K"Btl1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BTL1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abtl,Sbtl" +C;X25;K1 +C;X1;Y222;K"Btl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BTL2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abtl,Sbtl" +C;X25;K1 +C;X1;Y223;K"Bli1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BLI1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abds,Abdl,Abgs,Abgl,Ablp" +C;X25;K1 +C;X1;Y224;K"Bli2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BLI2" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abds,Abdl,Abgs,Abgl,Ablp" +C;X25;K1 +C;X1;Y225;K"Bgm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BGM1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abgm" +C;X25;K1 +C;X1;Y226;K"Bgm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BGM2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abgm" +C;X25;K1 +C;X1;Y227;K"Bgm3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BGM3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K8 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abgm" +C;X25;K1 +C;X1;Y228;K"Bgm4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BGM4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abgm" +C;X25;K1 +C;X1;Y229;K"Blo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BLO1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ablo,ACbl,Afzy" +C;X25;K1 +C;X1;Y230;K"Blo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BLO2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ablo,ACbl.Afzy" +C;X25;K1 +C;X1;Y231;K"Blo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BLO3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ablo,ACbl,Afzy" +C;X25;K1 +C;X1;Y232;K"Can1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CAN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acan,ACcn" +C;X25;K1 +C;X1;Y233;K"Can2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CAN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acan,ACcn" +C;X25;K1 +C;X1;Y234;K"Car1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CAR1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K8 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Abun,Advc,Sch2,Sch3,Sch4,Sch5,Aenc" +C;X25;K1 +C;X1;Y235;K"Dev2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEV2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advc" +C;X25;K1 +C;X1;Y236;K"Dev3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEV3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advc" +C;X25;K1 +C;X1;Y237;K"Chd1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CHD1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Achd" +C;X25;K1 +C;X1;Y238;K"Chd2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CHD2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Achd" +C;X25;K1 +C;X1;Y239;K"Chd3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CHD3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Achd" +C;X25;K1 +C;X1;Y240;K"Cha1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CHA1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acha,Sca1,Sca2,Sca3,Sca4,Sca5,Sca6,Sbsk,Srtt" +C;X25;K1 +C;X1;Y241;K"Cri1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CRI1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acri,Scri,ACcr" +C;X25;K1 +C;X1;Y242;K"Cri2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CRI2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acri,Scri,ACcr" +C;X25;K1 +C;X1;Y243;K"Cri3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CRI3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acri,Scri,ACcr" +C;X25;K1 +C;X1;Y244;K"Crs" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CRS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acrs,ACcs" +C;X25;K1 +C;X1;Y245;K"Dda1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DDA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adda,Amnx,Amnz,Asds,Auco" +C;X25;K1 +C;X1;Y246;K"Dda2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DDA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adda,Amnx,Amnz,Asds,Auco" +C;X25;K1 +C;X1;Y247;K"Dda3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DDA3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adda,Amnx,Amnz,Asds,Auco" +C;X25;K1 +C;X1;Y248;K"Dda4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DDA4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adda,Amnx,Amnz,Asds,Auco" +C;X25;K1 +C;X1;Y249;K"Sds1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SDS5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asds" +C;X25;K1 +C;X1;Y250;K"Sds6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SDS6" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asds,Asdg,Asd2,Asd3" +C;X25;K1 +C;X1;Y251;K"Uco5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCO5" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Auco" +C;X25;K1 +C;X1;Y252;K"Uco6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCO6" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K522 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Auco" +C;X25;K1 +C;X1;Y253;K"Def1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd" +C;X25;K1 +C;X1;Y254;K"Def2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd" +C;X25;K1 +C;X1;Y255;K"Def3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd" +C;X25;K1 +C;X1;Y256;K"Def4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd" +C;X25;K1 +C;X1;Y257;K"Def5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd" +C;X25;K1 +C;X1;Y258;K"Def6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF6" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd,Aegr" +C;X25;K1 +C;X1;Y259;K"Def7" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K7 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF7" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd,Aegr" +C;X25;K1 +C;X1;Y260;K"Def8" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K8 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEF8" +C;X9;K"x0a007" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adef,Amdf,AIdd,Aegr" +C;X25;K1 +C;X1;Y261;K"Dev1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DEV1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adev,ACdv" +C;X25;K1 +C;X1;Y262;K"Eat1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAT1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aeat" +C;X25;K1 +C;X1;Y263;K"Eat2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAT2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aeat" +C;X25;K1 +C;X1;Y264;K"Eat3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EAT3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aeat" +C;X25;K1 +C;X1;Y265;K"Ens1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ENS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aens,ACen,Aweb,ACwb,AIwb" +C;X25;K1 +C;X1;Y266;K"Ens2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ENS2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aens,ACen,Aweb,ACwb,AIwb" +C;X25;K1 +C;X1;Y267;K"Ens3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ENS3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aens,ACen,Aweb,ACwb,AIwb" +C;X25;K1 +C;X1;Y268;K"ent1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ENT1" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aent" +C;X25;K1 +C;X1;Y269;K"Egm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EGM1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aegm" +C;X25;K1 +C;X1;Y270;K"Egm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EGM2" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K3600 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aegm" +C;X25;K1 +C;X1;Y271;K"Fae1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAE1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afae,Afa2,ACff" +C;X25;K1 +C;X1;Y272;K"Fae2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAE2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afae,Afa2,ACff" +C;X25;K1 +C;X1;Y273;K"Fla1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLA1" +C;X9;K"x0a000" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afla" +C;X25;K1 +C;X1;Y274;K"Fla2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afla" +C;X25;K1 +C;X1;Y275;K"Fla3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLA3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afla" +C;X25;K1 +C;X1;Y276;K"Gld1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GLD1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agld" +C;X25;K1 +C;X1;Y277;K"Gld2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GLD2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K3600 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agld" +C;X25;K1 +C;X1;Y278;K"Gld3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GLD3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agld" +C;X25;K1 +C;X1;Y279;K"Gyd1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GYD1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agyd" +C;X25;K1 +C;X1;Y280;K"Gyd2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GYD2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agyd" +C;X25;K1 +C;X1;Y281;K"Gyd3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GYD3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agyd" +C;X25;K1 +C;X1;Y282;K"Gydu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GYDU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agyd" +C;X25;K1 +C;X1;Y283;K"Har1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAR1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ahar,Ahrl,Ahr2,Ahr3" +C;X25;K1 +C;X1;Y284;K"Har2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAR2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ahar,Ahrl,Ahr2,Ahr3" +C;X25;K1 +C;X1;Y285;K"Har3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HAR3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ahar" +C;X25;K1 +C;X1;Y286;K"Hea1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HEA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ahea,Anh1,Anh2,Anhe" +C;X25;K1 +C;X1;Y287;K"Inf1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INF1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ainf,ACif" +C;X25;K1 +C;X1;Y288;K"Inf2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INF2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ainf,ACif" +C;X25;K1 +C;X1;Y289;K"Inf3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INF3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ainf,ACif" +C;X25;K1 +C;X1;Y290;K"Inf4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INF4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ainf,ACif" +C;X25;K1 +C;X1;Y291;K"Lit1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIT1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Alit" +C;X25;K1 +C;X1;Y292;K"Lit2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIT2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Alit" +C;X25;K1 +C;X1;Y293;K"Lsh1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LSH1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Alsh,ACls" +C;X25;K1 +C;X1;Y294;K"Loa1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LOA1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aloa,Sloa,Slo2,Slo3" +C;X25;K1 +C;X1;Y295;K"Mbt1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MBT1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ambt,Amb2" +C;X25;K1 +C;X1;Y296;K"Mbt2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MBT2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ambt,Amb2" +C;X25;K1 +C;X1;Y297;K"Mbt3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MBT3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ambt,Amb2" +C;X25;K1 +C;X1;Y298;K"Mbt4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MBT4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ambt,Amb2" +C;X25;K1 +C;X1;Y299;K"Mbt5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MBT5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ambt,Amb2" +C;X25;K1 +C;X1;Y300;K"Mil1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MIL1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amil" +C;X25;K1 +C;X1;Y301;K"Mil2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MIL2" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amil" +C;X25;K1 +C;X1;Y302;K"Min1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MIN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amin" +C;X25;K1 +C;X1;Y303;K"Min2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MIN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amin" +C;X25;K1 +C;X1;Y304;K"Neu1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEU1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aneu,Ane2,Aall" +C;X25;K1 +C;X1;Y305;K"Neu2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEU2" +C;X9;K"x0a002" +C;X10;K"interactionFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aneu,Ane2,Aall" +C;X25;K1 +C;X1;Y306;K"Neu3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEU3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aneu,Ane2,Aall" +C;X25;K1 +C;X1;Y307;K"Neu4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEU4" +C;X9;K"x0a000" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aneu,Ane2,Aall" +C;X25;K1 +C;X1;Y308;K"Ndt1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDT1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Andt,AAns" +C;X25;K1 +C;X1;Y309;K"Ndt2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDT2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Andt,AAns" +C;X25;K1 +C;X1;Y310;K"Ndt3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDT3" +C;X9;K"x0a002" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Andt" +C;X25;K1 +C;X1;Y311;K"Ans5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ANS5" +C;X9;K"x0a003" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AAns" +C;X25;K1 +C;X1;Y312;K"Ans6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ANS6" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AAns" +C;X25;K1 +C;X1;Y313;K"Arm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRE1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANre,Aarm" +C;X25;K1 +C;X1;Y314;K"Arm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NRE2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANre,Aarm" +C;X25;K1 +C;X1;Y315;K"Poi1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POI1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apoi,Apo2,Aven,ACvs,ANpa" +C;X25;K1 +C;X1;Y316;K"Poi2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POI2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apoi,Apo2,Aven,ACvs,ANpa" +C;X25;K1 +C;X1;Y317;K"Poi3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POI3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apoi,Apo2,Aven,ACvs,ANpa" +C;X25;K1 +C;X1;Y318;K"Poi4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POI4" +C;X9;K"x0a004" +C;X10;K"stackFlags" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apoi,Apo2,Aven,ACvs,ANpa" +C;X25;K1 +C;X1;Y319;K"Poa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEpa" +C;X25;K1 +C;X1;Y320;K"Poa2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEpa" +C;X25;K1 +C;X1;Y321;K"Poa3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POA3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEpa" +C;X25;K1 +C;X1;Y322;K"Poa4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POA4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEpa" +C;X25;K1 +C;X1;Y323;K"Poa5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POA5" +C;X9;K"x0a004" +C;X10;K"stackFlags" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEpa" +C;X25;K1 +C;X1;Y324;K"Ply1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PLY1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aply,ACpy,AOhx,AChx" +C;X25;K1 +C;X1;Y325;K"Ply2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PLY2" +C;X9;K"x0a001" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aply,ACpy,AOhx,AChx" +C;X25;K1 +C;X1;Y326;K"Ply3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PLY3" +C;X9;K"x0a002" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aply,ACpy,AOhx,AChx" +C;X25;K1 +C;X1;Y327;K"Ply4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PLY4" +C;X9;K"x0a003" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aply,ACpy,AOhx,AChx" +C;X25;K1 +C;X1;Y328;K"Ply5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PLY5" +C;X9;K"x0a005" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aply,ACpy,AOhx,AChx" +C;X25;K1 +C;X1;Y329;K"Pos1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POS1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apos,ACps,Aps2" +C;X25;K1 +C;X1;Y330;K"Pos2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POS2" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aps2" +C;X25;K1 +C;X1;Y331;K"Pos3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POS3" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aps2" +C;X25;K1 +C;X1;Y332;K"Pos4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_POS4" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aps2" +C;X25;K1 +C;X1;Y333;K"War1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WAR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awar,ACpv" +C;X25;K1 +C;X1;Y334;K"War2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WAR2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awar,ACpv" +C;X25;K1 +C;X1;Y335;K"War3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WAR3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awar,ACpv" +C;X25;K1 +C;X1;Y336;K"War4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WAR4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awar,ACpv" +C;X25;K1 +C;X1;Y337;K"Prg1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg" +C;X25;K1 +C;X1;Y338;K"Prg2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg" +C;X25;K1 +C;X1;Y339;K"Prg3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg" +C;X25;K1 +C;X1;Y340;K"Prg4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg" +C;X25;K1 +C;X1;Y341;K"Prg5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG5" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg" +C;X25;K1 +C;X1;Y342;K"Prg6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PRG6" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aprg,ACpu,AIlp,AIpg,Apg2" +C;X25;K1 +C;X1;Y343;K"Rai1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RAI1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arai,ACrd,AUcb,AIrd,Avng" +C;X25;K1 +C;X1;Y344;K"Rai2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RAI2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arai,ACrd,AUcb,AIrd,Avng" +C;X25;K1 +C;X1;Y345;K"Rai3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RAI3" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arai,ACrd,AUcb,AIrd,Avng" +C;X25;K1 +C;X1;Y346;K"Rai4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RAI4" +C;X9;K"x0a003" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arai,ACrd,AUcb,AIrd,Avng" +C;X25;K1 +C;X1;Y347;K"Raiu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RAIU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arai,ACrd,AIrd,Avng" +C;X25;K1 +C;X1;Y348;K"Ucb5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCB5" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K24 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcb,Avng" +C;X25;K1 +C;X1;Y349;K"Ucb6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UCB6" +C;X9;K"x0a006" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUcb,Avng" +C;X25;K1 +C;X1;Y350;K"Rej1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REJ1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arej,ACrj,ACr2,Arpb,Arpl" +C;X25;K1 +C;X1;Y351;K"Rej2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REJ2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arej,ACrj,ACr2,Arpb,Arpm" +C;X25;K1 +C;X1;Y352;K"Rej3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REJ3" +C;X9;K"x0a003" +C;X10;K"fullFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arej,ACrj,ACr2" +C;X25;K1 +C;X1;Y353;K"Rej4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REJ4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arej,ACrj,ACr2" +C;X25;K1 +C;X1;Y354;K"Rpb3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RPB3" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arpb,Arpl" +C;X25;K1 +C;X1;Y355;K"Rpb4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RPB4" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arpb,Arpm" +C;X25;K1 +C;X1;Y356;K"Rpb5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RPB5" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arpb,Arpl,Arpm" +C;X25;K1 +C;X1;Y357;K"Rpb6" +C;X2;K"Cast" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RPB6" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arpb,Arpl,Arpm" +C;X25;K1 +C;X1;Y358;K"Rep1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REP1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aren,Ahrp,Arep,Arst" +C;X25;K1 +C;X1;Y359;K"Rep2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REP2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aren,Ahrp,Arep,Arst" +C;X25;K1 +C;X1;Y360;K"Rep3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REP3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aren,Ahrp,Arep,Arst" +C;X25;K1 +C;X1;Y361;K"Rep4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REP4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aren,Ahrp,Arep,Arst" +C;X25;K1 +C;X1;Y362;K"Rep5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_REP5" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aren,Ahrp,Arep,Arst" +C;X25;K1 +C;X1;Y363;K"Rtn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RTN1" +C;X9;K"x0a000" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Artn,Argd,Argl,Arlm" +C;X25;K1 +C;X1;Y364;K"Rtn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_RTN2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Artn,Argd,Argl,Arlm" +C;X25;K1 +C;X1;Y365;K"Roa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht" +C;X25;K1 +C;X1;Y366;K"Roa2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr" +C;X25;K1 +C;X1;Y367;K"Roa3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr" +C;X25;K1 +C;X1;Y368;K"Roa4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr,Ahnl" +C;X25;K1 +C;X1;Y369;K"Roa5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA5" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr,Ahnl" +C;X25;K1 +C;X1;Y370;K"Roa6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA6" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr,Ahnl" +C;X25;K1 +C;X1;Y371;K"Roa7" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K7 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROA7" +C;X9;K"x0a006" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroa,Ara2,ACro,ACr1,AIrr,ANht,ANbr,Ahnl" +C;X25;K1 +C;X1;Y372;K"Nbr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANbr" +C;X25;K1 +C;X1;Y373;K"Roo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROO1" +C;X9;K"x0a000" +C;X10;K"attackBits" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroo,Aro1,Aro2" +C;X25;K1 +C;X1;Y374;K"Roo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROO2" +C;X9;K"x0a001" +C;X10;K"attackBits" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroo,Aro1,Aro2" +C;X25;K1 +C;X1;Y375;K"Roo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROO3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroo,Aro1,Aro2" +C;X25;K1 +C;X1;Y376;K"Roo4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ROO4" +C;X10;K"defenseTypeInt" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aroo,Aro1,Aro2" +C;X25;K1 +C;X1;Y377;K"Sal1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SAL1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asal,Auns" +C;X25;K1 +C;X1;Y378;K"Sal2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SAL2" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asal,Auns" +C;X25;K1 +C;X1;Y379;K"Esn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aesn" +C;X25;K1 +C;X1;Y380;K"Esn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aesn" +C;X25;K1 +C;X1;Y381;K"Esn3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESN3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aesn" +C;X25;K1 +C;X1;Y382;K"Esn4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESN4" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aesn" +C;X25;K1 +C;X1;Y383;K"Shm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SHM1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ashm,Sshm,Ahid" +C;X25;K1 +C;X1;Y384;K"Shm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SHM2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ashm,Sshm,Ahid" +C;X25;K1 +C;X1;Y385;K"Shm3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SHM3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ashm,Sshm,Ahid" +C;X25;K1 +C;X1;Y386;K"Slo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SLO1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-10 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aslo,ACsw,AIos,Aasl" +C;X25;K1 +C;X1;Y387;K"Slo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SLO2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-10 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aslo,ACsw,AIos,Aasl" +C;X25;K1 +C;X1;Y388;K"Slo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SLO3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aslo,ACsw,AIos,Aasl" +C;X25;K1 +C;X1;Y389;K"Spo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPO1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspo" +C;X25;K1 +C;X1;Y390;K"Spo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPO2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspo" +C;X25;K1 +C;X1;Y391;K"Spo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPO3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspo" +C;X25;K1 +C;X1;Y392;K"Spo4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPO4" +C;X9;K"x0a003" +C;X10;K"stackFlags" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspo" +C;X25;K1 +C;X1;Y393;K"Sod1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SOD1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asod,Assp,Aspd,Aspy,Aspt" +C;X25;K1 +C;X1;Y394;K"Sod2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SOD2" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asod,Assp,Aspd,Aspy,Aspt" +C;X25;K1 +C;X1;Y395;K"Spa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPA1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspa" +C;X25;K1 +C;X1;Y396;K"Sta1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_STA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asta" +C;X25;K1 +C;X1;Y397;K"Sta2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_STA2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asta" +C;X25;K1 +C;X1;Y398;K"Sta3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_STA3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asta" +C;X25;K1 +C;X1;Y399;K"Sta4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_STA4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asta" +C;X25;K1 +C;X1;Y400;K"Stau" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_STAU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asta" +C;X25;K1 +C;X1;Y401;K"Uhf1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UHF1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Auhf,Suhf,ACuf" +C;X25;K1 +C;X1;Y402;K"Uhf2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UHF2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Auhf,Suhf,ACuf" +C;X25;K1 +C;X1;Y403;K"Wha1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WHA1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awha,Awh2" +C;X25;K1 +C;X1;Y404;K"Wha2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WHA2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awha,Awh2" +C;X25;K1 +C;X1;Y405;K"Wha3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WHA3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awha,Awh2" +C;X25;K1 +C;X1;Y406;K"Wrp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WRP1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awrp" +C;X25;K1 +C;X1;Y407;K"Wrp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WRP2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awrp" +C;X25;K1 +C;X1;Y408;K"Iagi" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IAGI" +C;X9;K"x0i001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aamk,AIab,AIa1,AIa3,AIa4,AIa6,AIx5,AIx1,AIx2,AIs1,AIs3,AIs4,AIs6,AIi1,AIi3,AIi4,AIi6,AIxm,AIam,AIim,AIsm,AIgm,AItm,AInm" +C;X25;K1 +C;X1;Y409;K"Iint" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IINT" +C;X9;K"x0i002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aamk,AIab,AIa1,AIa3,AIa4,AIa6,AIx5,AIx1,AIx2,AIs1,AIs3,AIs4,AIs6,AIi1,AIi3,AIi4,AIi6,AIxm,AIam,AIim,AIsm,AIgm,AItm,AInm" +C;X25;K1 +C;X1;Y410;K"Istr" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISTR" +C;X9;K"x0i003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aamk,AIab,AIa1,AIa3,AIa4,AIa6,AIx5,AIx1,AIx2,AIs1,AIs3,AIs4,AIs6,AIi1,AIi3,AIi4,AIi6,AIxm,AIam,AIim,AIsm,AIgm,AItm,AInm" +C;X25;K1 +C;X1;Y411;K"Ihid" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IHID" +C;X9;K"x0i003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aamk,AIab,AIa1,AIa3,AIa4,AIa6,AIx5,AIx1,AIx2,AIs1,AIs3,AIs4,AIs6,AIi1,AIi3,AIi4,AIi6,AIxm,AIam,AIim,AIsm,AIgm,AItm,AInm" +C;X25;K1 +C;X1;Y412;K"Iatt" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IATT" +C;X9;K"x0i004" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K99999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIat,AIt6,AIt9,AItc,AItf,AItg,AIth,AIti,AItj,AItk,AItl,AItn" +C;X25;K1 +C;X1;Y413;K"Idef" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDEF" +C;X9;K"x0i005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K99999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIde,AId1,AId2,AId3,AId4,AId5,AIda,Aidb" +C;X25;K1 +C;X1;Y414;K"Isn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISN1" +C;X9;K"x0i006" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfd,AIff,AIfr,AIfu,AIfh,AIfs,AIir,AIuw" +C;X25;K1 +C;X1;Y415;K"Ist1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IST1" +C;X9;K"x0i007" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfd,AIff,AIfr,AIfu,AIfh,AIfs,AIir,AIuw" +C;X25;K1 +C;X1;Y416;K"Isn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISN2" +C;X9;K"x0i008" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfd,AIff,AIfr,AIfu,AIfh,AIfs,AIir,AIuw" +C;X25;K1 +C;X1;Y417;K"Ist2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IST2" +C;X9;K"x0i009" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfd,AIff,AIfr,AIfu,AIfh,AIfs,AIir,AIuw" +C;X25;K1 +C;X1;Y418;K"Ixpg" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IXPG" +C;X9;K"x0i010" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIem,AIe2" +C;X25;K1 +C;X1;Y419;K"Ihpg" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IHPG" +C;X9;K"x0i011" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIhe,AIh1,AIh2,AIh3,AIha,AIhb" +C;X25;K1 +C;X1;Y420;K"Impg" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMPG" +C;X9;K"x0i012" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIm1,AIm2,AImr" +C;X25;K1 +C;X1;Y421;K"Ihp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IHPG" +C;X9;K"x0i012" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIda,AIdb" +C;X25;K1 +C;X1;Y422;K"Imp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMPG" +C;X9;K"x0i013" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIda,AIdb" +C;X25;K1 +C;X1;Y423;K"Ivam" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IVAM" +C;X9;K"x0i014" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIva,SCva" +C;X25;K1 +C;X1;Y424;K"Idic" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDIC" +C;X9;K"x0i015" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIcb,AIlb,AIpb" +C;X25;K1 +C;X1;Y425;K"Iarp" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IARP" +C;X9;K"x0i016" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIcb" +C;X25;K1 +C;X1;Y426;K"Idam" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDAM" +C;X9;K"x0i017" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIfb,AIzb,AIob,AIll,AIsb" +C;X25;K1 +C;X1;Y427;K"Iob5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IOB5" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIcb,AIfb,AIzb,AIob,AIll,AIlb,AIsb,AIpb" +C;X25;K1 +C;X1;Y428;K"Iob2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IOB2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIll,AIsb" +C;X25;K1 +C;X1;Y429;K"Iob3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IOB3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIll,AIsb" +C;X25;K1 +C;X1;Y430;K"Iob4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IOB4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIll,AIsb" +C;X25;K1 +C;X1;Y431;K"Iobu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IOBU" +C;X9;K"x0a00u" +C;X10;K"abilCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdf,AIll,AIsb" +C;X25;K1 +C;X1;Y432;K"Ilev" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ILEV" +C;X9;K"x0i018" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIlm" +C;X25;K1 +C;X1;Y433;K"Ilif" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ILIF" +C;X9;K"x0i019" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIml,AImi,AIlf,AIl1,AIl2,AImh" +C;X25;K1 +C;X1;Y434;K"Iman" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMAN" +C;X9;K"x0i019" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AImm,AImb,AIbm" +C;X25;K1 +C;X1;Y435;K"Igol" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IGOL" +C;X9;K"x0i020" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIgo" +C;X25;K1 +C;X1;Y436;K"Ilum" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ILUM" +C;X9;K"x0i021" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIlu" +C;X25;K1 +C;X1;Y437;K"Ifa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DET1" +C;X9;K"x0a001" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfa" +C;X25;K1 +C;X1;Y438;K"Idel" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDEL" +C;X9;K"x0i022" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIfa" +C;X25;K1 +C;X1;Y439;K"Icre" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICRE" +C;X9;K"x0i023" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIco" +C;X25;K1 +C;X1;Y440;K"Imvb" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMVB" +C;X9;K"x0i027" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIms" +C;X25;K1 +C;X1;Y441;K"Ihpr" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IHPR" +C;X9;K"x0i028" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Arel,Arll" +C;X25;K1 +C;X1;Y442;K"Isib" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISIB" +C;X9;K"x0i029" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIsi" +C;X25;K1 +C;X1;Y443;K"Icfd" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICFD" +C;X9;K"x0i030" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIcf" +C;X25;K1 +C;X1;Y444;K"Icfm" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICFM" +C;X9;K"x0i031" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIcf" +C;X25;K1 +C;X1;Y445;K"Icfx" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICFX" +C;X9;K"x0i032" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIcf" +C;X25;K1 +C;X1;Y446;K"Idet" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDET" +C;X9;K"x0i033" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIta" +C;X25;K1 +C;X1;Y447;K"Idim" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDIM" +C;X9;K"x0i034" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdi,AIds" +C;X25;K1 +C;X1;Y448;K"Idid" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDID" +C;X9;K"x0i035" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdi,AIds" +C;X25;K1 +C;X1;Y449;K"Iild" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IILD" +C;X9;K"x0i036" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIil" +C;X25;K1 +C;X1;Y450;K"Iilw" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IILW" +C;X9;K"x0i037" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIil" +C;X25;K1 +C;X1;Y451;K"Irec" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IREC" +C;X9;K"x0i038" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrt" +C;X25;K1 +C;X1;Y452;K"Imrp" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMRP" +C;X9;K"x0i039" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrm,AIrn" +C;X25;K1 +C;X1;Y453;K"Ircd" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRCD" +C;X9;K"x0i040" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrc" +C;X25;K1 +C;X1;Y454;K"irc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRC2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrc" +C;X25;K1 +C;X1;Y455;K"irc3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRC3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K-1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrc" +C;X25;K1 +C;X1;Y456;K"Ihps" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IHPS" +C;X9;K"x0i041" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIre,AIra" +C;X25;K1 +C;X1;Y457;K"Imps" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMPS" +C;X9;K"x0i042" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIre,AIra" +C;X25;K1 +C;X1;Y458;K"Ispi" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISPI" +C;X9;K"x0i044" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIsp,AIsa" +C;X25;K1 +C;X1;Y459;K"Itpm" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ITPM" +C;X9;K"x0i045" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AItp" +C;X25;K1 +C;X1;Y460;K"Itp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ITP2" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AItp,AIrt" +C;X25;K1 +C;X1;Y462;K"Cad1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CAD1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACad,AIan" +C;X25;K1 +C;X1;Y463;K"Cac1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CAC1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACac,AIcd" +C;X25;K1 +C;X1;Y464;K"Cor1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_COR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acor" +C;X25;K1 +C;X1;Y465;K"Isx1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISX1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIas,AIsx,AIs2" +C;X25;K1 +C;X1;Y466;K"Wrs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WRS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awrs,Ahrs,Awrh,Awrg,AOws" +C;X25;K1 +C;X1;Y467;K"Wrs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WRS2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-1000 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awrs,Ahrs,Awrh,Awrg" +C;X25;K1 +C;X1;Y468;K"Wrs3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_WRS3" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Awrs,Ahrs,Awrh,Awrg" +C;X25;K1 +C;X1;Y469;K"Ctc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CTC1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACtc,ACt2" +C;X25;K1 +C;X1;Y470;K"Ctc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CTC2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACtc,ACt2" +C;X25;K1 +C;X1;Y471;K"Ctc3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CTC3" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACtc,ACt2" +C;X25;K1 +C;X1;Y472;K"Ctc4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CTC4" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACtc,ACt2" +C;X25;K1 +C;X1;Y473;K"Ctb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CTB1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ACtb" +C;X25;K1 +C;X1;Y474;K"Ibl1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IBL1" +C;X9;K"x0a000" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K4 +C;X17;K4 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIbl,AIbg,AIbt" +C;X25;K1 +C;X1;Y475;K"Uds1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDS1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K90 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUds" +C;X25;K1 +C;X1;Y476;K"Uds2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UDS2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUds" +C;X25;K1 +C;X1;Y477;K"Ndc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDC1" +C;X9;K"x0a000" +C;X10;K"unitRace" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdc,SNdc" +C;X25;K1 +C;X1;Y478;K"Ndc2" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDC2" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdc,SNdc" +C;X25;K1 +C;X1;Y479;K"Nsl1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSL1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsl" +C;X25;K1 +C;X1;Y480;K"Chl1" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CHL1" +C;X9;K"x0a000" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Achl" +C;X25;K1 +C;X1;Y481;K"Det1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DET1" +C;X9;K"x0a000" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adet,Adt1,Atru,Agyv,Adts,Adtg,Abdt,AIrv,AItb" +C;X25;K1 +C;X1;Y482;K"Dtn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DTN1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adtn" +C;X25;K1 +C;X1;Y483;K"Dtn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DTN2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adtn" +C;X25;K1 +C;X1;Y484;K"Eth1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ETH1" +C;X9;K"x0a000" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aeth" +C;X25;K1 +C;X1;Y485;K"Eth2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ETH2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aeth" +C;X25;K1 +C;X1;Y486;K"Gho1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GHO1" +C;X9;K"x0a000" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agho,Apiv" +C;X25;K1 +C;X1;Y487;K"Gho2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GHO2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agho" +C;X25;K1 +C;X1;Y488;K"Gho3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GHO3" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agho" +C;X25;K1 +C;X1;Y489;K"Ivs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IVS1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aivs" +C;X25;K1 +C;X1;Y490;K"Nmr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NMR1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANmr" +C;X25;K1 +C;X1;Y491;K"Nsp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSP1" +C;X9;K"x0a000" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ansp" +C;X25;K1 +C;X1;Y492;K"Nsp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSP2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ansp" +C;X25;K1 +C;X1;Y493;K"Nsp3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSP3" +C;X9;K"x0a002" +C;X10;K"detectionType" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ansp" +C;X25;K1 +C;X1;Y494;K"Ssk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SSK1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Assk" +C;X25;K1 +C;X1;Y495;K"Ssk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SSK2" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Assk" +C;X25;K1 +C;X1;Y496;K"Ssk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SSK3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Assk" +C;X25;K1 +C;X1;Y497;K"Ssk4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SSK4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Assk" +C;X25;K1 +C;X1;Y498;K"Ssk5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SSK5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Assk" +C;X25;K1 +C;X1;Y499;K"Hfs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y500;K"Hfs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y501;K"Hfs3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y502;K"Hfs4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y503;K"Hfs5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y504;K"Hfs6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HFS6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHfs,ACfs,Abof" +C;X25;K1 +C;X1;Y505;K"Nms1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NMS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANms,ACmf" +C;X25;K1 +C;X1;Y506;K"Nms2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NMS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANms,ACmf" +C;X25;K1 +C;X1;Y507;K"Uim1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIM1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUim,ACmp" +C;X25;K1 +C;X1;Y508;K"Uim2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIM2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUim,ACmp" +C;X25;K1 +C;X1;Y509;K"Uim3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIM3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUim,ACmp" +C;X25;K1 +C;X1;Y510;K"Uim4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UIM4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUim,ACmp" +C;X25;K1 +C;X1;Y511;K"Uls1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULS1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y512;K"Uls2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y513;K"Uls3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULS3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y514;K"Uls4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULS4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y515;K"Uls5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULS5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y516;K"Ulsu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ULSU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUls" +C;X25;K1 +C;X1;Y517;K"Uts1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UTS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUts,ANth" +C;X25;K1 +C;X1;Y518;K"Uts2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UTS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUts,ANth" +C;X25;K1 +C;X1;Y519;K"Uts3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_UTS3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AUts,ANth" +C;X25;K1 +C;X1;Y520;K"Nba1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBA1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANba,ANbs" +C;X25;K1 +C;X1;Y521;K"Nba2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBA2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANba,ANbs" +C;X25;K1 +C;X1;Y522;K"Nba3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBA3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANba,ANbs" +C;X25;K1 +C;X1;Y523;K"Nbau" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBAU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANba,ANbs" +C;X25;K1 +C;X1;Y524;K"Nch1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCH1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANch,ACch,Acmg" +C;X25;K1 +C;X1;Y525;K"Cmg2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CMG2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acmg" +C;X25;K1 +C;X1;Y526;K"Cmg3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CMG3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acmg" +C;X25;K1 +C;X1;Y527;K"Ndr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr" +C;X25;K1 +C;X1;Y528;K"Ndr2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr" +C;X25;K1 +C;X1;Y529;K"Ndr3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr" +C;X25;K1 +C;X1;Y530;K"Ndr4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y531;K"Ndr5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y532;K"Ndr6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y533;K"Ndr7" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K7 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR8" +C;X9;K"x0a007" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y534;K"Ndr8" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K8 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR7" +C;X9;K"x0a008" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y535;K"Ndr9" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K9 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDR9" +C;X9;K"x0a009" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdr,AHdr,ACdr,ACsm" +C;X25;K1 +C;X1;Y536;K"Nsi1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSI1" +C;X9;K"x0a001" +C;X10;K"silenceFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K15 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsi,ACsi,ANdh,Aclf,AIse,AIfg" +C;X25;K1 +C;X1;Y537;K"Nsi2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSI2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsi,ACsi,ANdh,Aclf,AIse,AIfg" +C;X25;K1 +C;X1;Y538;K"Nsi3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSI3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsi,ACsi,ANdh,Aclf,AIse,AIfg" +C;X25;K1 +C;X1;Y539;K"Nsi4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSI4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsi,ACsi,ANdh,Aclf,AIse,AIfg" +C;X25;K1 +C;X1;Y540;K"Ntou" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTOU" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANto" +C;X25;K1 +C;X1;Y541;K"Tdg1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TDG1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atdg" +C;X25;K1 +C;X1;Y542;K"Tdg2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TDG2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atdg" +C;X25;K1 +C;X1;Y543;K"Tdg3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TDG3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atdg" +C;X25;K1 +C;X1;Y544;K"Tdg4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TDG4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atdg" +C;X25;K1 +C;X1;Y545;K"Tdg5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TDG5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atdg" +C;X25;K1 +C;X1;Y546;K"Tsp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TSP1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atsp" +C;X25;K1 +C;X1;Y547;K"Tsp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TSP2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atsp" +C;X25;K1 +C;X1;Y548;K"Nbf5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NBF5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANbf,ACbc,ACbf" +C;X25;K1 +C;X1;Y549;K"Ebl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EBL1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEbl" +C;X25;K1 +C;X1;Y550;K"Ebl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EBL2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEbl" +C;X25;K1 +C;X1;Y551;K"Efk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFK1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfk,Aroc" +C;X25;K1 +C;X1;Y552;K"Efk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFK2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfk,Aroc" +C;X25;K1 +C;X1;Y553;K"Efk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFK3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfk,Aroc" +C;X25;K1 +C;X1;Y554;K"Efk4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EFK4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEfk" +C;X25;K1 +C;X1;Y555;K"Esh1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESH1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsh,ACss" +C;X25;K1 +C;X1;Y556;K"Esh2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESH2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsh,ACss" +C;X25;K1 +C;X1;Y557;K"Esh3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESH3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsh,ACss" +C;X25;K1 +C;X1;Y558;K"Esh4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESH4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsh,ACss" +C;X25;K1 +C;X1;Y559;K"Esh5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESH5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsh,ACss" +C;X25;K1 +C;X1;Y560;K"Esv1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESV1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsv" +C;X25;K1 +C;X1;Y561;K"Esvu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ESVU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AEsv" +C;X25;K1 +C;X1;Y562;K"abs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ABS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aabs" +C;X25;K1 +C;X1;Y563;K"abs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ABS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aabs" +C;X25;K1 +C;X1;Y564;K"bsk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BSK1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Absk" +C;X25;K1 +C;X1;Y565;K"bsk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BSK2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Absk" +C;X25;K1 +C;X1;Y566;K"bsk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_BSK3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Absk" +C;X25;K1 +C;X1;Y567;K"coau" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_COAU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acoa,Acoh,Aco2,Aco3" +C;X25;K1 +C;X1;Y568;K"coa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_COA1" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acoa,Acoh,Aco2,Aco3" +C;X25;K1 +C;X1;Y569;K"coa2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_COA2" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aco2,Aco3" +C;X25;K1 +C;X1;Y570;K"cyc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_CYC1" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Acyc,ACcy,SCc1,AIcy" +C;X25;K1 +C;X1;Y571;K"dcp1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DCP1" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adec" +C;X25;K1 +C;X1;Y572;K"dcp2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DCP2" +C;X9;K"x0a002" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Adec" +C;X25;K1 +C;X1;Y573;K"dvm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm" +C;X25;K1 +C;X1;Y574;K"dvm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm" +C;X25;K1 +C;X1;Y575;K"dvm3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm" +C;X25;K1 +C;X1;Y576;K"dvm4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm" +C;X25;K1 +C;X1;Y577;K"dvm5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm" +C;X25;K1 +C;X1;Y578;K"dvm6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_DVM6" +C;X9;K"x0a006" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Advm,ACde" +C;X25;K1 +C;X1;Y579;K"exh1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EXH1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K999 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aexh" +C;X25;K1 +C;X1;Y580;K"exhu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_EXHU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aexh" +C;X25;K1 +C;X1;Y581;K"fak1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAK1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afak" +C;X25;K1 +C;X1;Y582;K"fak2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAK2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afak" +C;X25;K1 +C;X1;Y583;K"fak3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAK3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afak" +C;X25;K1 +C;X1;Y584;K"fak4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAK4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afak" +C;X25;K1 +C;X1;Y585;K"fak5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FAK5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afak" +C;X25;K1 +C;X1;Y586;K"hwdu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HWDU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Ahwd,AChw,Apts,Aeye,AIhw,AIsw" +C;X25;K1 +C;X1;Y587;K"inv1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INV1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K6 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AInv,Apak,Aiun" +C;X25;K1 +C;X1;Y588;K"inv2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INV2" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AInv,Apak,Aiun" +C;X25;K1 +C;X1;Y589;K"inv3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INV3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AInv,Apak,Aiun" +C;X25;K1 +C;X1;Y590;K"inv4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INV4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AInv,Apak,Aiun" +C;X25;K1 +C;X1;Y591;K"inv5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_INV5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AInv,Apak,Aiun" +C;X25;K1 +C;X1;Y592;K"liq1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIQ1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aliq" +C;X25;K1 +C;X1;Y593;K"liq2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIQ2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aliq" +C;X25;K1 +C;X1;Y594;K"liq3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIQ3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aliq" +C;X25;K1 +C;X1;Y595;K"liq4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_LIQ4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aliq" +C;X25;K1 +C;X1;Y596;K"mim1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MIM1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amim,AImx,ACmi,ACm2,ACm3" +C;X25;K1 +C;X1;Y597;K"mfl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y598;K"mfl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y599;K"mfl3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y600;K"mfl4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y601;K"mfl5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y602;K"mfl6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MFL6" +C;X9;K"x0a006" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amfl" +C;X25;K1 +C;X1;Y603;K"tpi1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TPI1" +C;X9;K"x0a001" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Stpm,Stpr" +C;X25;K1 +C;X1;Y604;K"tpi2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TPI2" +C;X9;K"x0a002" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Stpm,Stpr" +C;X25;K1 +C;X1;Y605;K"spl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPL1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspl,Aspp" +C;X25;K1 +C;X1;Y606;K"spl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPL2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspl" +C;X25;K1 +C;X1;Y607;K"irl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRL1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrl,AIpr,AIsl,AIpl,AIp1,AIp2,AIp3,AIp4,AIp5,AIp6" +C;X25;K1 +C;X1;Y608;K"irl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRL2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrl,AIpr,AIsl,AIpl,AIp1,AIp2,AIp3,AIp4,AIp5,AIp6" +C;X25;K1 +C;X1;Y609;K"irl3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRL3" +C;X9;K"x0a003" +C;X10;K"fullFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrl,AIpr,AIsl,AIpl,AIp1,AIp2,AIp3,AIp4,AIp5,AIp6" +C;X25;K1 +C;X1;Y610;K"irl4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRL4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrl,AIpr,AIsl,AIpl,AIp1,AIp2,AIp3,AIp4,AIp5,AIp6" +C;X25;K1 +C;X1;Y611;K"irl5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IRL5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIrl,AIpr,AIsl,AIpl,AIp1,AIp2,AIp3,AIp4,AIp5,AIp6" +C;X25;K1 +C;X1;Y612;K"idc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDC1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdc" +C;X25;K1 +C;X1;Y613;K"idc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDC2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdc" +C;X25;K1 +C;X1;Y614;K"idc3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IDC3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIdc" +C;X25;K1 +C;X1;Y615;K"imo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMO1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AImo" +C;X25;K1 +C;X1;Y616;K"imo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMO2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AImo" +C;X25;K1 +C;X1;Y617;K"imo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMO3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AImo" +C;X25;K1 +C;X1;Y618;K"imou" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IMOU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AImo" +C;X25;K1 +C;X1;Y619;K"ict1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICT1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIct" +C;X25;K1 +C;X1;Y620;K"ict2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ICT2" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K60 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIct" +C;X25;K1 +C;X1;Y621;K"isr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISR1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIsr" +C;X25;K1 +C;X1;Y622;K"isr2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_ISR2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIsr" +C;X25;K1 +C;X1;Y623;K"ipv1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IPV1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIpv" +C;X25;K1 +C;X1;Y624;K"ipv2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IPV2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIpv" +C;X25;K1 +C;X1;Y625;K"ipv3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IPV3" +C;X9;K"x0a003" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIpv" +C;X25;K1 +C;X1;Y626;K"mec1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MEC1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amec" +C;X25;K1 +C;X1;Y627;K"spb1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPB1" +C;X9;K"x0a001" +C;X10;K"abilityList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspb" +C;X25;K1 +C;X1;Y628;K"spb2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPB2" +C;X9;K"x0a002" +C;X10;K"bool" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspb" +C;X25;K1 +C;X1;Y629;K"spb3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPB3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K12 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspb" +C;X25;K1 +C;X1;Y630;K"spb4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPB4" +C;X9;K"x0a004" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K12 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspb" +C;X25;K1 +C;X1;Y631;K"spb5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SPB5" +C;X9;K"x0a005" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aspb" +C;X25;K1 +C;X1;Y632;K"ast1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AST1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aast" +C;X25;K1 +C;X1;Y633;K"ast2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_AST2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aast" +C;X25;K1 +C;X1;Y634;K"gra1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GRA1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agra" +C;X25;K1 +C;X1;Y635;K"gra2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GRA2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agra" +C;X25;K1 +C;X1;Y636;K"gra3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GRA3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K-1 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agra" +C;X25;K1 +C;X1;Y637;K"gra4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GRA4" +C;X9;K"x0a004" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agra" +C;X25;K1 +C;X1;Y638;K"gra5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_GRA5" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Agra" +C;X25;K1 +C;X1;Y639;K"ipmu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IPMU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIpm,ANpa" +C;X25;K1 +C;X1;Y640;K"Npr1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NPR1" +C;X9;K"x0a001" +C;X10;K"pickFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANpr" +C;X25;K1 +C;X1;Y641;K"Nsa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSA1" +C;X9;K"x0a001" +C;X10;K"pickFlags" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsa" +C;X25;K1 +C;X1;Y642;K"Nsa2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSA2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsa" +C;X25;K1 +C;X1;Y643;K"Nsa3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSA3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsa" +C;X25;K1 +C;X1;Y644;K"Nsa4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSA4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsa" +C;X25;K1 +C;X1;Y645;K"Nsa5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSA5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsa" +C;X25;K1 +C;X1;Y646;K"Iaa1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IAA1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIaa" +C;X25;K1 +C;X1;Y647;K"Ixs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IXS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIxs" +C;X25;K1 +C;X1;Y648;K"Ixs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IXS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIxs" +C;X25;K1 +C;X1;Y649;K"Nef1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEF1" +C;X9;K"x0a001" +C;X10;K"unitList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANef" +C;X25;K1 +C;X1;Y650;K"Npa5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NPA5" +C;X9;K"x0a005" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANpa" +C;X25;K1 +C;X1;Y651;K"Npa6" +C;X2;K"Cast" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NPA6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANpa" +C;X25;K1 +C;X1;Y652;K"Igl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IGL1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIgf,AIgu" +C;X25;K1 +C;X1;Y653;K"Iglu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_IGLU" +C;X9;K"x0a00u" +C;X10;K"upgradeCode" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AIgf,AIgu" +C;X25;K1 +C;X1;Y654;K"Nse1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSE1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANse" +C;X25;K1 +C;X1;Y655;K"Ndo1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDO1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdo" +C;X25;K1 +C;X1;Y656;K"Ndo2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDO2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdo" +C;X25;K1 +C;X1;Y657;K"Ndo3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDO3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdo" +C;X25;K1 +C;X1;Y658;K"Ndou" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDOU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdo" +C;X25;K1 +C;X1;Y659;K"flk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLK1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aflk,Afsh" +C;X25;K1 +C;X1;Y660;K"flk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLK2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aflk,Afsh" +C;X25;K1 +C;X1;Y661;K"flk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLK3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aflk,Afsh" +C;X25;K1 +C;X1;Y662;K"flk4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLK4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aflk,Afsh" +C;X25;K1 +C;X1;Y663;K"flk5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FLK5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Aflk,Afsh" +C;X25;K1 +C;X1;Y664;K"Hbn1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBN1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbn,Apsh" +C;X25;K1 +C;X1;Y665;K"Hbn2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_HBN2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"AHbn,Apsh" +C;X25;K1 +C;X1;Y666;K"fbk1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FBK1" +C;X9;K"x0a000" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afbk" +C;X25;K1 +C;X1;Y667;K"fbk2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FBK2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afbk" +C;X25;K1 +C;X1;Y668;K"fbk3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FBK3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afbk" +C;X25;K1 +C;X1;Y669;K"fbk4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FBK4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afbk" +C;X25;K1 +C;X1;Y670;K"fbk5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_FBK5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Afbk,Afbt,Afbb" +C;X25;K1 +C;X1;Y671;K"nca1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCA1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANca" +C;X25;K1 +C;X1;Y672;K"pxf1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PXF1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apxf" +C;X25;K1 +C;X1;Y673;K"pxf2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_PXF2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Apxf" +C;X25;K1 +C;X1;Y674;K"mls1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_MLS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Amls" +C;X25;K1 +C;X1;Y675;K"sla1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SLA1" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asla" +C;X25;K1 +C;X1;Y676;K"Nst1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NST1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANst" +C;X25;K1 +C;X1;Y677;K"Nst2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NST2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1024 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANst" +C;X25;K1 +C;X1;Y678;K"Nst3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NST3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANst" +C;X25;K1 +C;X1;Y679;K"Nst4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NST4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANst" +C;X25;K1 +C;X1;Y680;K"Nst5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NST5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANst" +C;X25;K1 +C;X1;Y681;K"sla2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_SLA2" +C;X9;K"x0a001" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Asla" +C;X25;K1 +C;X1;Y682;K"Ncl1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y683;K"Ncl2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL2" +C;X9;K"x0a002" +C;X10;K"channelType" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y684;K"Ncl3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL3" +C;X9;K"x0a003" +C;X10;K"channelFlags" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y685;K"Ncl4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y686;K"Ncl5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL5" +C;X9;K"x0a005" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y687;K"Ncl6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCL6" +C;X9;K"x0a006" +C;X10;K"orderString" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K32 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcl" +C;X25;K1 +C;X1;Y688;K"Nab1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y689;K"Nab2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y690;K"Nab3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y691;K"Nab4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y692;K"Nab5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y693;K"Nab6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NAB6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANab" +C;X25;K1 +C;X1;Y694;K"Nhs6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NHS6" +C;X9;K"x0a006" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs" +C;X25;K1 +C;X1;Y695;K"Ntm1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTM1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANtm" +C;X25;K1 +C;X1;Y696;K"Ntm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTM2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANtm" +C;X25;K1 +C;X1;Y697;K"Ntm3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTM3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANtm" +C;X25;K1 +C;X1;Y698;K"Ntm4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTM4" +C;X9;K"x0a004" +C;X10;K"bool" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANtm" +C;X25;K1 +C;X1;Y699;K"Neg1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y700;K"Neg2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y701;K"Neg3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG3" +C;X9;K"x0a003" +C;X10;K"heroAbilityList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y702;K"Neg4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG4" +C;X9;K"x0a004" +C;X10;K"heroAbilityList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y703;K"Neg5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG5" +C;X9;K"x0a005" +C;X10;K"heroAbilityList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y704;K"Neg6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NEG6" +C;X9;K"x0a006" +C;X10;K"heroAbilityList" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X17;K2 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANeg" +C;X25;K1 +C;X1;Y705;K"Ncs1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs,ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y706;K"Ncs2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs,ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y707;K"Ncs3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs,ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y708;K"Ncs4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs,ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y709;K"Ncs5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANhs,ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y710;K"Ncs6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NCS6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANcs,ANc1,ANc2,ANc3" +C;X25;K1 +C;X1;Y711;K"Nsy1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSY1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y712;K"Nsy2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSY2" +C;X9;K"x0a002" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y713;K"Nsy3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSY3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y714;K"Nsy4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSY4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y715;K"Nsy5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSY5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y716;K"Nsyu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSYU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANsy,ANs1,ANs2,ANs3" +C;X25;K1 +C;X1;Y717;K"Nfy1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFY1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfy" +C;X25;K1 +C;X1;Y718;K"Nfy2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFY2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfy" +C;X25;K1 +C;X1;Y719;K"Nfyu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NFYU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANfy" +C;X25;K1 +C;X1;Y720;K"Nde1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDE1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANde,ANd1,ANd2,ANd3" +C;X25;K1 +C;X1;Y721;K"Nde2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDE2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANde,ANd1,ANd2,ANd3" +C;X25;K1 +C;X1;Y722;K"Nde3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDE3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANde,ANd1,ANd2,ANd3" +C;X25;K1 +C;X1;Y723;K"Nde4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NDE4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANde,ANd1,ANd2,ANd3" +C;X25;K1 +C;X1;Y724;K"Nic1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y725;K"Nic2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y726;K"Nic3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y727;K"Nic4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y728;K"Nic5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y729;K"Nic6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NIC6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANic,ANia" +C;X25;K1 +C;X1;Y730;K"Nso1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSO1" +C;X9;K"x0a001" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANso" +C;X25;K1 +C;X1;Y731;K"Nso2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSO2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANso" +C;X25;K1 +C;X1;Y732;K"Nso3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSO3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANso" +C;X25;K1 +C;X1;Y733;K"Nso4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSO4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANso" +C;X25;K1 +C;X1;Y734;K"Nso5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NSO5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANso" +C;X25;K1 +C;X1;Y735;K"Nlm2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NLM2" +C;X9;K"x0a002" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANlm" +C;X25;K1 +C;X1;Y736;K"Nlm3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NLM3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANlm" +C;X25;K1 +C;X1;Y737;K"Nlm4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NLM4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANlm" +C;X25;K1 +C;X1;Y738;K"Nlm5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NLM5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANlm" +C;X25;K1 +C;X1;Y739;K"Nlm6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NLM6" +C;X9;K"x0a006" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANlm" +C;X25;K1 +C;X1;Y740;K"Nvc1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y741;K"Nvc2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y742;K"Nvc3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC3" +C;X9;K"x0a003" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0.001 +C;X17;K300 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y743;K"Nvc4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC4" +C;X9;K"x0a004" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y744;K"Nvc5" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K5 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC5" +C;X9;K"x0a005" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K1000000000 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y745;K"Nvc6" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K6 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVC6" +C;X9;K"x0a006" +C;X10;K"unreal" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K10 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X1;Y746;K"Nvcu" +C;X2;K"UnitID" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K0 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NVCU" +C;X9;K"x0a00u" +C;X10;K"unitCode" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANvc" +C;X25;K1 +C;X1;Y747;K"Tau1" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K1 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TAU1" +C;X9;K"x0a001" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atau,ANta" +C;X25;K1 +C;X1;Y748;K"Tau2" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K2 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TAU2" +C;X9;K"x0a002" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atau,ANta" +C;X25;K1 +C;X1;Y749;K"Tau3" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K3 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_TAU3" +C;X9;K"x0a003" +C;X10;K"int" +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"Atau,ANta" +C;X25;K1 +C;X1;Y750;K"Ndo4" +C;X2;K"Data" +C;X3;K"AbilityData" +C;X4;K-1 +C;X5;K4 +C;X6;K4 +C;X7;K"data" +C;X8;K"WESTRING_AEVAL_NTM3" +C;X9;K"x0a004" +C;X10;K"int" +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K100 +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X23;K"ANdo" +C;X25;K1 +C;X1;Y751;K"Ytip" +C;X2;K"YDWEtip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X7;K"text" +C;X8;K"WESTRING_AEVAL_YTIP" +C;X9;K"y0e01" +C;X10;K"string" +C;X11;K"t" +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X17;K"TTUber" +C;X18;K0 +C;X19;K1 +C;X20;K1 +C;X21;K1 +C;X22;K1 +C;X25;K1 +E diff --git a/share/mpq/units/units/campaignabilityfunc.txt b/share/mpq/units/units/campaignabilityfunc.txt new file mode 100644 index 0000000..440dc39 --- /dev/null +++ b/share/mpq/units/units/campaignabilityfunc.txt @@ -0,0 +1,393 @@ +// Attribute Bonus +[Aamk] +Art=ReplaceableTextures\PassiveButtons\PASBTNStatUp.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStatUp.blp +Buttonpos=1,1 +Researchbuttonpos=3,1 +Order=attributemodskill + +// Feral Spirit +[ACs7] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl +Order=spiritwolf + +// Serpent Ward (Tentacles) +[ACtn] +Art=ReplaceableTextures\CommandButtons\BTNTentacle.blp +Buttonpos=0,2 +Order=Serpentward + + +// Avatar (garithos) +[ANav] +Art=ReplaceableTextures\CommandButtons\BTNAvatarOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNAvatarOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNAvatar.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Effectsound=HowlOfTerror +Order=avatar + +//naga harvest +[ANha] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Order=harvest + +// Shockwave +[ANsh] +Art=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl +Missilespeed=1050 +Order=shockwave +Animnames=attack,slam + +// Spirit Beast +[ACs8] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +ResearchArt=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl +Order=spiritwolf + +// Reincarnation (akama) +[ANr2] +Art=ReplaceableTextures\PassiveButtons\PASBTNReincarnation.blp +Researchart=ReplaceableTextures\CommandButtons\BTNReincarnation.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl +Casterart= +Targetart= + +// Feedback +[Afbb] +Art=ReplaceableTextures\PassiveButtons\PASBTNFeedBack.blp +Specialart=Abilities\Spells\Human\Feedback\SpellBreakerAttack.mdl +Buttonpos=1,2 + +// Naga Build +[AGbu] +Art=ReplaceableTextures\CommandButtons\BTNBasicStruct.blp +Buttonpos=0,2 +Order=nagabuild + +// Cyclone (naga) +[Acny] +Art=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Buttonpos=2,2 +Requires=Rnsw +Requiresamount=2 +order=cyclone + +// Submerge +[Asb1] +Requires=Rnsb +Art=ReplaceableTextures\CommandButtons\BTNNagaBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNNagaUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Effectsound=SubmergeSound +Order=submerge +Unorder=unsubmerge + +// Submerge +[Asb2] +Art=ReplaceableTextures\CommandButtons\BTNNagaBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNNagaUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Effectsound=SubmergeSound +Order=submerge +Unorder=unsubmerge + +// Submerge +[Asb3] +Requires=Rnsb +Art=ReplaceableTextures\CommandButtons\BTNNagaBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNNagaUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Effectsound=SubmergeSound +Order=submerge +Unorder=unsubmerge + +// Ensnare (Naga) +[ANen] +Art=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Buttonpos=0,2 +Requires=Rnen +Missileart=Abilities\Spells\Orc\Ensnare\EnsnareMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=ensnare + +// Auto-Dispel Magic +[Andm] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOff.blp +Requires=Rnsi +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=autodispel +Orderon=autodispelon +Orderoff=autodispeloff + +// Frost Armor (Autocast, Naga) +[ACfu] +Requires=Rnsw +Art=ReplaceableTextures\CommandButtons\BTNFrostArmorOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFrostArmorOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Order=frostarmor +Orderon=frostarmoron +Orderoff=frostarmoroff + +// Parasite +[ANpa] +Art=ReplaceableTextures\CommandButtons\BTNParasiteOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNParasiteOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Missileart=Abilities\Spells\Other\Parasite\ParasiteMissile.mdl +Missilespeed=1200 +MissileArc=0.0 +MissileHoming=1 +Orderon=parasiteon +Orderoff=parasiteoff +Order=parasite + +[BNpa] +Buffart=ReplaceableTextures\CommandButtons\BTNParasite.blp +Targetart=Abilities\Spells\Other\Parasite\ParasiteTarget.mdl +Targetattach=overhead + +[BNpm] +Buffart=ReplaceableTextures\CommandButtons\BTNParasite.blp + +// naga summoner null aoe roar +[Ahnl] +Art=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Casterart=Abilities\Spells\Other\ANrm\ANrmTarget.mdl +Buttonpos=3,2 +Order=roar +Animnames=spell,slam + +// Channel +[ANcl] +Art=ReplaceableTextures\CommandButtons\BTNDeathPact.blp +Buttonpos=2,0 +Order=channel +Casterart=Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl +Casterattach=origin +Targetart=Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl +Targetattach=origin +Effectart=Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl +Animnames=spell,channel + +//orc campaign hero stuff + +// War Stomp (Cairn) +[AOw2] +Art=ReplaceableTextures\CommandButtons\BTNWarStomp.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWarStomp.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Order=stomp +Animnames=spell,slam + +// Shockwave (Cairne) +[AOs2] +Art=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl +Missilespeed=1050 +Order=shockwave +Animnames=attack,slam + +// Endurance Aura (Cairne) +[AOr2] +Art=ReplaceableTextures\PassiveButtons\PASBTNCommand.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNCommand.blp +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Orc\CommandAura\CommandAura.mdl +Targetattach=origin + +// Reincarnation (Cairne) +[AOr3] +Art=ReplaceableTextures\PassiveButtons\PASBTNReincarnation.blp +Researchart=ReplaceableTextures\CommandButtons\BTNReincarnation.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl +Casterart= +Targetart= + +// Healing Wave (rokhan) +[ANhw] +Art=ReplaceableTextures\CommandButtons\BTNHealingWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHealingWave.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Orc\HealingWave\HealingWaveTarget.mdl +Order=healingwave +Animnames=spell,throw +LightningEffect=HWPB,HWSB + +// Hex (rokhan) +[ANhx] +Art=ReplaceableTextures\CommandButtons\BTNHex.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHex.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl +Order=hex + +// Serpent Ward (rokhan) +[Arsw] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=Serpentward + +// Voodoo Spirits (rokhan) +[AOls] +Art=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=Locustswarm +Effectsoundlooped=LocustSwarmLoop + +// Summon Quillbeast (Rexxar) +[Arsq] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Buttonpos=1,2 +Researchart=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Researchbuttonpos=1,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=summonquillbeast +Animnames=spell,slam + +// Stampede (Rexxar) +[Arsp] +Art=ReplaceableTextures\CommandButtons\BTNStampede.blp +Buttonpos=3,2 +Researchart=ReplaceableTextures\CommandButtons\BTNStampede.blp +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Other\Stampede\MissileDeath.mdl +Missileart=Abilities\Spells\Other\Stampede\StampedeMissile.mdl +Missilespeed=500 +Effectsoundlooped=StampedeLoop +Effectsound=StampedeCast +Order=stampede +Animnames=spell,looping + +// Battle Roar +[ANbr] +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=battleroar +Animnames=spell,slam + +[BNbr] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Targetart=Abilities\Spells\NightElf\BattleRoar\RoarTarget.mdl +Targetattach=overhead + +// Summon Grizzly (campaign) +[Arsg] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Buttonpos=0,2 +Researchart=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Researchbuttonpos=0,0 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=spiritwolf +Animnames=spell,slam + +// Storm Bolt (campaign) +[ANsb] +Art=ReplaceableTextures\CommandButtons\BTNStormBolt.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStormBolt.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Missileart=Abilities\Spells\Human\StormBolt\StormBoltMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Order=thunderbolt +Animnames=spell,throw + +// Breath of Fire (Chen) +[ANcf] +Art=ReplaceableTextures\CommandButtons\BTNBreathOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBreathOfFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Other\BreathOfFire\BreathOfFireMissile.mdl +Missilespeed=1050 +Order=breathoffire +Animnames=spell,slam + +// Drunken Brawler (Chen) +[Acdb] +Art=ReplaceableTextures\PassiveButtons\PASBTNDrunkenDodge.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDrunkenDodge.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 + +// Drunken Haze (Chen) +[Acdh] +Art=ReplaceableTextures\CommandButtons\BTNStrongDrink.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStrongDrink.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\StrongDrink\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Order=drunkenhaze + +// Earth, Storm, and Fire (Chen) +[Acef] +Art=ReplaceableTextures\CommandButtons\BTNStormEarth&Fire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStormEarth&Fire.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl +Order=elementalfury +Missileart=Units\Creeps\FirePandarenBrewmaster\FirePandarenBrewmaster_Missile.mdl,Units\Creeps\StormPandarenBrewmaster\StormPandarenBrewmaster_Missile.mdl,Units\Creeps\EarthPandarenBrewmaster\EarthPandarenBrewmaster_Missile.mdl +Missilearc=0.75 +Missilespeed=150 +Effectsound=StormEarthFireSound +Animnames=spell,throw + +// Voodoo Spirits (Rokhan) +[AOls] +Art=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=Locustswarm +Effectsoundlooped=LocustSwarmLoop diff --git a/share/mpq/units/units/campaignabilitystrings.txt b/share/mpq/units/units/campaignabilitystrings.txt new file mode 100644 index 0000000..6fd4a1a --- /dev/null +++ b/share/mpq/units/units/campaignabilitystrings.txt @@ -0,0 +1,383 @@ +// Attribute Bonus +[Aamk] +Name=属性附加 +Tip=属性加强 - [|cffffcc00等级 1|r],属性加强 - [|cffffcc00等级 2|r],属性加强 - [|cffffcc00等级 3|r],属性加强 - [|cffffcc00等级 4|r] +Ubertip="将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性","将总共点技能点分配到敏捷度,智力和力量这三个属性" +Researchtip="学习属性附加(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="永久性地增加智力,敏捷度和力量。 |n|n|cffffcc00等级 1|r - 对所有属性增加3点。|n|cffffcc00等级 2|r - 增加额外的3点。|n|cffffcc00等级 3|r - 增加额外的3点。|n|cffffcc00等级 4|r - 增加额外的3点。" +Researchhotkey=B + +// Serpent Ward (tentacle) +[ACtn] +Name=产卵触角 +Tip=产卵触角(|cffffcc00T|r) +Ubertip="在敌人头上召唤出一巨大的触角。" +Hotkey=T + +// Feral Spirit (akama) +[ACs7] +Name=野兽幽魂 +Tip=野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 1|r],野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 2|r],野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出条幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条具有致命一击技能的幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条具有致命一击和隐形技能的幽灵狼。每条幽灵狼有点生命值并能对敌人造成 - 点的伤害。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Researchtip="学习野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip=召唤出条幽灵狼来为你战斗。|n持续秒。|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,具有致命一击技能。|n|cffffcc00等级 3|r -点生命值,-点攻击力,具有致命一击和隐形技能。 +Hotkey=T +Researchhotkey=T + + +// Avatar (garithos) +[ANav] +Name=天神下凡 +EditorSuffix=(中立的) +Tip=激活天神下凡(|cffffcc00V|r) +UberTip="激活天神下凡之后给予加理瑟斯点额外的护甲,点额外的生命值,点额外的攻击力和魔法免疫技能。|n持续秒。" +Untip=取消天神下凡(|cffffcc00V|r) +UnUberTip="" +Hotkey=V +Unhotkey=V +Researchtip=学习天神下凡(|cffffcc00V|r) +ResearchUberTip="当天神下凡被激活的时候,加理瑟斯的护甲会增加点,生命值会增加点,攻击力会增加点,并具有魔法免疫技能。|n持续 秒。" +Researchhotkey=V + +// Shockwave +[ANsh] +Name=震荡波 +Tip=震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。","从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。","从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成点的伤害。" +Hotkey=W +Researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="从英雄身上发射出一道威力巨大的能量波,从而对一直线上的敌人地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害。|n|cffffcc00等级 2|r - 点伤害。|n|cffffcc00等级 3|r - 点伤害。" +Researchhotkey=W + +// Feral Spirit +[ACs8] +Name=灵兽 +Tip=灵兽(|cffffcc00B|r) - [|cffffcc00等级 1|r],灵兽(|cffffcc00B|r) - [|cffffcc00等级 2|r],灵兽(|cffffcc00B|r) - [|cffffcc00等级 3|r] +Ubertip="召唤灵兽伙伴。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r","召唤灵兽伙伴,拥有反馈技能。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r","召唤灵兽伙伴,拥有反馈和法力燃烧技能。每只灵兽有生命值并造成 - 伤害。|n持续秒。|n|n|cffffcc00攻击地面单位。|r" +Researchtip="学习灵兽(|cffffcc00B|r) - [|cffffcc00等级 %d|r]。" +Researchubertip="召唤只灵兽攻击阿卡玛的敌人。|n持续 秒。|n|n|cffffcc00等级 1|r - 生命值, - 伤害力。|n|cffffcc00等级 2|r - 生命值, - 伤害力及反馈。|n|cffffcc00等级 3|r - 生命值, - 伤害力,反馈和法力燃烧。" +Hotkey=B +Researchhotkey=B + +// Reincarnation (generic) +[ANr2] +Name=重生 +Tip=重生 +Ubertip="当被杀时,该英雄自动会复活。重生有秒的间隔时间。" +Researchtip=学习重生(|cffffcc00R|r) +Researchubertip="当被杀时,该英雄自动会复活。重生有秒的间隔时间。" +Researchhotkey=R +Globalmessage= +Globalsound= + +// Feedback +[Afbb] +Name=反馈 +Tip=反馈 +Ubertip="灵兽每次攻击抵消点魔力。这些魔力值燃烧,对被攻击单位造成伤害。" + + +// Auto-Dispel Magic +[Andm] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00B|r) +Ubertip="能去除敌方单位身上那些有利的魔法效果和友军单位身上那些不利的魔法效果。|n|cffffcc00对召唤单位造成点伤害。|r" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B + +// Submerge +[Asb1] +Name=潜水 +EditorSuffix= (暴徒) +Tip=潜水(|cffffcc00U|r) +Untip=浮出水面(|cffffcc00U|r) +Ubertip="使单位可以潜入水下,隐去行踪。" +Unubertip="使单位从水中出现。" +Hotkey=U +Unhotkey=U + +// Submerge +[Asb2] +Name=潜水 +EditorSuffix= (皇家卫兵) +Tip=潜水(|cffffcc00U|r) +Untip=浮出水面(|cffffcc00U|r) +Ubertip="使单位可以潜入水下,隐去行踪。" +Unubertip="使单位从水中出现。" +Hotkey=U +Unhotkey=U + +// Submerge +[Asb3] +Name=潜水 +EditorSuffix= (飞龙) +Tip=潜水(|cffffcc00U|r) +Untip=浮出水面(|cffffcc00U|r) +Ubertip="使单位可以潜入水下,隐去行踪。" +Unubertip="使单位从水中出现。" +Hotkey=U +Unhotkey=U + +//naga harvest +[ANha] +Name=采集 +EditorSuffix= (Neutral) +Tip=采集(|cffffcc00G|r) +Ubertip="从金矿处采集黄金资源,从树木上砍伐木材资源。" +Untip=返送资源(|cffffcc00E|r) +Unubertip="将采集到的资源返送到最近的潮汐神庙。" +Hotkey=G +Unhotkey=E +EditorSuffix= (金矿和木材) + +// Ensnare (Naga) +[ANen] +Name=诱捕 +Tip=诱捕(|cffffcc00E|r) +Ubertip="能将一个目标空中单位固定在地面上,使其在秒内不能移动。被诱捕的空中单位可以当作地面单位进行攻击。" +Hotkey=E + + +// Frost Armor (Autocast, Naga) +[ACfu] +Name=霜冻护甲 +EditorSuffix= (自动施放) +Tip=霜冻护甲(|cffffcc00F|r) +Ubertip="霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。" +Untip="|cffc3dbff点击右键以取消自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=F + +// Parasite +[ANpa] +Name=寄生虫 +Tip=寄生虫(|cffffcc00R|r) +Ubertip="用一个致命的寄生虫折磨目标单位,使它每秒受到的伤害,持续秒。如果命中单位在寄生虫仍有效果的时候死亡,一个战士将会从尸体上诞生。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +[BNpa] +Bufftip="寄生虫" +Buffubertip="这个单位已被寄生虫侵扰,它将随着时间逝去而受伤害,如果在它死时仍然在被折磨,一个单位将会从它的尸体上诞生。" + +// Parasite Minion +[BNpm] +Bufftip="寄生虫" +Buffubertip="这个单位已被寄生虫侵扰,它将随着时间逝去而受伤害,如果在它死时仍然在被折磨,一个单位将会从它的尸体上诞生。" +EditorSuffix= (奴) + +// Cyclone, Naga +//Unused line: When that unit lands, its movement speed is slowed by a factor of , and it will regain 1/ of its movement every seconds. +[Acny] +Name=飓风 +Tip=飓风(|cffffcc00C|r) +Ubertip="将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。" +Hotkey=C + +// null aoe roar, naga summoner +[Ahnl] +Name=召唤仪式 +Tip=召唤仪式(|cffffcc00U|r) +Ubertip="从扭曲的地狱召唤能量。" +Hotkey=U + +// Channel +[ANcl] +Name=通魔 +Tip=通魔(|cffffcc00C|r) +Ubertip="通向强大的守卫魔法力量。" +Hotkey=C + + +//orc campaign abilities + +// Summon Quilbeast (Rexxar) +[Arsq] +Name=召唤豪猪 +Tip=召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 1|r],召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 2|r],召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 3|r],召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 4|r] +Ubertip="召唤出一头具有点生命值的豪猪来为你战斗。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能并能造成范围伤害。|n持续秒。","召唤出一头具有点生命值的豪猪来为你战斗。具有狂热技能并能造成范围伤害。|n持续秒。" +Hotkey=Q +Researchtip=学习召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 %d|r] +Researchubertip="召唤出一头愤怒的豪猪来为你战斗。|n持续秒。|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,具有狂热技能。|n|cffffcc00等级 3|r -点生命值,-点攻击力,具有范围伤害效果。同时具有狂热技能。|n|cffffcc00等级 4|r -点生命值,-点攻击力,具有范围伤害效果。同时具有狂热技能。" +Researchhotkey=Q +EditorSuffix=(雷克萨) + +// Summon Bear (Rexxar) +[Arsg] +Name=召唤米纱 +Tip=召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 1|r],召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 2|r],召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 3|r],召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 4|r] +Ubertip="召唤出米纱,一头具有点生命值的野熊来为你战斗。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有重击技能。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有大锤技能。","召唤出米纱,一头具有点生命值的野熊来为你战斗。具有大锤技能。" +Hotkey=I +Researchtip=学习召唤米纱(|cffffcc00I|r) - [|cffffcc00等级 %d|r] +Researchubertip="召唤出米纱,一头强大的野熊来为你战斗。|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,具有重击技能。 |n|cffffcc00等级 3|r -点生命值,-点攻击力,具有大锤技能。|n|cffffcc00等级 4|r -点生命值,-点攻击力,具有大锤技能。" +Researchhotkey=I +EditorSuffix=(雷克萨) + +// Stampede (Rexxar) +[Arsp] +Name=惊吓 +Tip=惊吓(|cffffcc00E|r) - [|cffffcc00等级 1|r],惊吓(|cffffcc00E|r) - [|cffffcc00等级 2|r] +Ubertip="召唤出雷霆蜥蜴来爆炸在敌方单位的头上。每个爆炸的雷霆蜥蜴能造成点伤害。|n持续秒。","召唤出雷霆蜥蜴来爆炸在敌方单位的头上。每个爆炸的雷霆蜥蜴能造成点伤害。|n持续秒。" +Hotkey=E +Researchtip=学习惊吓(|cffffcc00E|r) - [|cffffcc00等级 %d|r] +Researchubertip="唤出雷霆蜥蜴来爆炸在敌方单位的头上。|n|n|cffffcc00等级 1|r -每个爆炸的雷霆蜥蜴能造成点伤害。|n|cffffcc00等级 2|r -每个爆炸的雷霆蜥蜴能造成点伤害。|n|n持续秒。" +Researchhotkey=E +EditorSuffix=(雷克萨) + +// Battle Roar +[ANbr] +Name=战争咆哮 +Tip=战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 1|r],战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 2|r],战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 3|r],战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 4|r] +Ubertip="增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。","增加周围单位点的攻击力。|n持续秒。" +Hotkey=R +Researchtip="学习战争咆哮(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="增加周围单位的攻击力。|n持续 秒。|n|n|cffffcc00等级 1|r - 点攻击力。|n|cffffcc00等级 2|r - 点攻击力。|n|cffffcc00等级 3|r - 点攻击力。|n|cffffcc00等级 4|r - 点攻击力。" +Researchhotkey=R + +[BNbr] +Bufftip=战争咆哮 +Buffubertip="该单位具有战争咆哮技能,因此它的攻击力增加了。" + +// storm bolt +[ANsb] +Name=风暴之锤 +Tip=风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 1|r],风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 2|r],风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 3|r],风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 4|r] +Ubertip="向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成 点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法斧,对其造成点伤害并使其秒内处于眩晕状态。" +Hotkey=T +Researchtip=学习风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 %d|r] +Researchubertip="向目标投掷一巨大的魔法斧,对其造成一定伤害并使其处于眩晕状态。|n|n|cffffcc00等级 1|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 2|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 3|r - 点伤害, 秒眩晕状态。|n|cffffcc00等级 4|r - 点伤害, 秒眩晕状态。" +Researchhotkey=T + +// Breath of Fire (Chen) +[ANcf] +Name=火焰呼吸 +Tip=火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 4|r] +Ubertip="对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。那些身上带有醉酒云雾的单位会自动引燃并在秒内持续受到每秒点的伤害。" +Hotkey=F +Researchtip="学习火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="对敌人吐出一道火焰,在一开始对其就造成伤害之后,如果对方身上有醉酒云雾的话那还能在一定时间内持续地对其造成伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 2|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 3|r - 最初造成点的伤害随后造成每秒点的伤害。|n|cffffcc00等级 4|r - 最初造成点的伤害随后造成每秒点的伤害。" +Researchhotkey=F +EditorSuffix=(陈) + +// Drunken Brawler (Chen) +[Acdb] +Name=醉拳 +Tip=醉拳 - [|cffffcc00等级 1|r],醉拳 - [|cffffcc00等级 2|r],醉拳 - [|cffffcc00等级 3|r],醉拳 - [|cffffcc00等级 4|r] +Ubertip="给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。","给予%的概率来躲避攻击和%的概率来施放出倍于常规攻击的伤害。" +Researchtip="学习醉拳(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="给予一定的概率来躲避攻击和%的概率来对敌人造成额外的伤害。|n|n|cffffcc00等级 1|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 2|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 3|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。|n|cffffcc00等级 4|r -%的概率来躲避攻击,倍于常规攻击的额外伤害。" +Researchhotkey=B +EditorSuffix=(陈) + +// Drunken Haze (Chen) +[Acdh] +Name=醉酒云雾 +Tip=醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 1|r],醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 2|r],醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 3|r],醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 4|r] +Ubertip="用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。" +Hotkey=D +Researchtip="学习醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +Researchubertip="用酒精浸透目标单位,减慢其移送速度,并使其有一定的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 2|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 3|r - 减慢%的移动速度,%的概率不能击中其他单位。|n|cffffcc00等级 4|r - 减慢%的移动速度,%的概率不能击中其他单位。" +Researchhotkey=D +EditorSuffix=(陈) + +// Storm, Earth, and Fire +[Acef] +Name="火土风暴" +Tip="火土风暴(|cffffcc00E|r) - [|cffffcc00等级 1|r]","火土风暴(|cffffcc00E|r) - [|cffffcc00等级 2|r]" +Ubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。","熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。" +Hotkey=E +Researchtip="学习火土风暴(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。|n|n|cffffcc00等级 1|r - 制造出3个巨大的熊猫战士。|n|cffffcc00等级 2|r - 制造出3个更加巨大的熊猫战士。" +Researchhotkey=E +EditorSuffix=(陈) + +// Healing Wave (Rokhan) +[ANhw] +Name=医疗波 +Tip=医疗波(|cffffcc00E|r) - [|cffffcc00等级 1|r],医疗波(|cffffcc00E|r) - [|cffffcc00等级 2|r],医疗波(|cffffcc00E|r) - [|cffffcc00等级 3|r],医疗波(|cffffcc00E|r) - [|cffffcc00等级 4|r] +Ubertip="召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。" +Hotkey=E +Researchtip="学习医疗波(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出一道能进行跳跃的医疗能量波,每次跳跃都会削弱医疗波的医疗能力。|n|n|cffffcc00等级 1|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 2|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 3|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 4|r - 恢复点生命值,跳跃次。" +Researchhotkey=E +EditorSuffix=(洛克汗) + +// Hex (rokhan) +[ANhx] +Name=妖术 +Tip=妖术(|cffffcc00X|r) - [|cffffcc00等级 1|r],妖术(|cffffcc00X|r) - [|cffffcc00等级 2|r],妖术(|cffffcc00X|r) - [|cffffcc00等级 3|r],妖术(|cffffcc00X|r) - [|cffffcc00等级 4|r] +Ubertip="将某个敌方单位变成随机的一种小动物,持续秒。","T将某个敌方单位变成随机的一种小动物,持续秒。","将某个敌方单位变成随机的一种小动物,持续秒。","将某个敌方单位变成随机的一种小动物,持续秒。" +Hotkey=X +Researchtip="学习妖术(|cffffcc00X|r) - [|cffffcc00等级 %d|r]" +Researchubertip="将敌方某个单位变成一种随机的小动物。|n|n|cffffcc00等级 1|r - 消耗点魔法,持续秒。|n|cffffcc00等级 2|r - 消耗点魔法,持续秒。|n|cffffcc00等级 3|r - 消耗点魔法,持续秒。|n|cffffcc00等级 4|r - 消耗点魔法,持续秒。" +Researchhotkey=X +EditorSuffix=(洛克汗) + +// Serpent Ward +[Arsw] +Name=毒蛇守卫 +Tip=毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 1|r],毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 2|r],毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 3|r],毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 4|r] +Ubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 —— 点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为点溅射伤害。|n持续秒。 |n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W +Researchtip="学习毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫对魔法免疫。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r -点生命值,-点攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力。|n|cffffcc00等级 3|r -点生命值,-点攻击力。|n|cffffcc00等级 4|r -点生命值,-点溅射攻击力。" +Researchhotkey=W +EditorSuffix=(洛克汗) + +// Endurance Aura (Cairne) +[AOr2] +Name=耐久光环 +Tip=耐久光环 - [|cffffcc00等级 1|r],耐久光环 - [|cffffcc00等级 2|r],耐久光环 - [|cffffcc00等级 3|r],耐久光环 - [|cffffcc00等级 4|r] +Ubertip="增加周围单位%的移动速度和%的攻击速度。","I增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。" +Researchtip="学习耐久光环(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="增加周围单位的移动和攻击速度。|n|n|cffffcc00等级 1|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 2|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 3|r - %的移动速度和%的攻击速度。|n|cffffcc00等级 4|r - %的移动速度和%的攻击速度。" +Researchhotkey=E +EditorSuffix=(卡林) + +// Shockwave (Cairne) +[AOs2] +Name=震荡波 +Tip=震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 4|r] +Ubertip="发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。","发射出一道向前的能量波,对一直线上的敌人造成点的伤害。" +Hotkey=W +Researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="发射出一道向前的能量波,对一直线上的敌人造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害。|n|cffffcc00等级 2|r - 点伤害。|n|cffffcc00等级 3|r - 点伤害。|n|cffffcc00等级 4|r - 点伤害。" +Researchhotkey=W +EditorSuffix=(卡林) + +// Reincarnation (Cairne) +[AOr3] +Name=重生 +Tip=重生 - [|cffffcc00等级 1|r],重生 - [|cffffcc00等级 1|r] +Ubertip="当被杀害的时候,卡林会自动复活。重生技能具有秒的魔法施放间隔时间。",""当被杀害的时候,卡林会自动复活。重生技能具有秒的魔法施放间隔时间。" +Researchtip=学习重生(|cffffcc00R|r) +Researchubertip="当被杀害的时候,酋长会自动复活。|n|n|cffffcc00等级 1|r - 秒的魔法施放间隔时间。|n|cffffcc00等级 2|r - 秒的魔法施放间隔时间。" +Researchhotkey=R +Globalmessage= +Globalsound= +EditorSuffix=(卡林) + +// War Stomp (Chieftan) +[AOw2] +Name=战争践踏 +Tip=战争践踏(|cffffcc00T|r) - [|cffffcc00等级 1|r],战争践踏(|cffffcc00T|r) - [|cffffcc00等级 2|r],战争践踏(|cffffcc00T|r) - [|cffffcc00等级 3|r],战争践踏(|cffffcc00T|r) - [|cffffcc00等级 4|r] +Ubertip="震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。","震击地面,对周围的敌方地面单位造成点的伤害,并让其在秒内处于昏晕的状态。" +Researchtip="学习战争践踏(|cffffcc00T|r) - [|cffffcc00等级 %d|r]。" +Researchubertip="震击地面,击晕周围的地面单位。|n|n|cffffcc00等级 1|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 2|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 3|r - 点伤害,昏晕状态持续秒。|n|n|cffffcc00等级 4|r - 点伤害,昏晕状态持续秒。" +Hotkey=T +Researchhotkey=T + + +// Voodoo Spirits +[AOls] +Name=巫毒幽魂 +Tip=巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 1|r],巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 2|r] +Ubertip="召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n持续秒。","召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n持续秒。" +Hotkey=V +Researchtip="学习巫毒幽魂(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出愤怒的幽灵来汲取敌人的生命值,幽灵能将汲取到的生命值补充到洛克汗的身上。|n|n|cffffcc00等级 1|r — 个幽灵。 |n|cffffcc00等级 2|r — 幽灵。|n|n持续秒。" +Researchhotkey=V diff --git a/share/mpq/units/units/campaignunitfunc.txt b/share/mpq/units/units/campaignunitfunc.txt new file mode 100644 index 0000000..fce6a15 --- /dev/null +++ b/share/mpq/units/units/campaignunitfunc.txt @@ -0,0 +1,1530 @@ +// Human Units +[Harf] +Art=ReplaceableTextures\CommandButtons\BTNArthas.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-arthas.blp + +[Hart] +Art=ReplaceableTextures\CommandButtons\BTNArthas.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-arthas.blp + +[Hant] +Art=ReplaceableTextures\CommandButtons\BTNHeroArchMage.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +MovementSoundLabel=HumanHeroArchMageMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archmage.blp + +[Huth] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hpb1] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hpb2] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hdgo] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hmgd] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hhkl] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[Hjai] +Art=ReplaceableTextures\CommandButtons\BTNJaina.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-jaina.blp + +[Hmbr] +Art=ReplaceableTextures\CommandButtons\BTNHeroMountainKing.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-mountainking.blp + +[Hvwd] +Art=ReplaceableTextures\CommandButtons\BTNSylvanusWindrunner.blp +Missileart=Abilities\Weapons\MoonPriestessMissile\MoonPriestessMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-sylvanus.blp + +// Kael +[Hkal] +Art=ReplaceableTextures\CommandButtons\BTNBloodMage2.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\BloodElfMissile\BloodElfMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-sorceror.blp + +// Lady Vashj +[Hvsh] +Art=ReplaceableTextures\CommandButtons\BTNNagaSeaWitch.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\NagaArrowMissile\NagaArrowMissile.mdl +Missilearc=0.08 +Missilespeed=1200 +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-seawitch.blp + +// Lord Garithos +[Hlgr] +Art=ReplaceableTextures\CommandButtons\BTNGarithos.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-garithos.blp + +// Arcane Observatory +[haro] +Art=ReplaceableTextures\CommandButtons\BTNArcaneObservatory.blp +Buttonpos=1,2 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[hcth] +Art=ReplaceableTextures\CommandButtons\BTNTheCaptain.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hhes] +Art=ReplaceableTextures\CommandButtons\BTNTheCaptain.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hhdl] +Art=ReplaceableTextures\CommandButtons\BTNRiderlessHorse.blp +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hbew] +Art=ReplaceableTextures\CommandButtons\BTNBloodElfSupplyWagon.blp +Attachmentanimprops=medium + +// Admiral Proudmoore +[Hapm] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[hrdh] +Art=ReplaceableTextures\CommandButtons\BTNRiderlessHorse.blp +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// ghostly archmage +[Hgam] +Art=ReplaceableTextures\CommandButtons\BTNGhostMage.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archmage.blp + +// Orc Units +[Othr] +Art=ReplaceableTextures\CommandButtons\BTNThrall.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-thrall.blp + +[Ogrh] +Art=ReplaceableTextures\CommandButtons\BTNHellScream.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-grom.blp + +[Opgh] +Art=ReplaceableTextures\CommandButtons\BTNChaosGrom.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-chaosgrom.blp + +[Ocbh] +Art=ReplaceableTextures\CommandButtons\BTNHeroTaurenChieftain.blp +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-taurenchieftain.blp + +//expansion version of cairne bloodhoof +[Ocb2] +Art=ReplaceableTextures\CommandButtons\BTNHeroTaurenChieftain.blp +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-taurenchieftain.blp + +[owar] +Art=ReplaceableTextures\CommandButtons\BTNChaosWarlord.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +[ocbw] +Art=ReplaceableTextures\CommandButtons\BTNTrollBurrow.blp +Buttonpos=0,1 +Missileart=abilities\weapons\huntermissile\huntermissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[oosc] +Art=ReplaceableTextures\CommandButtons\BTNRiderlessKodo.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +[ownr] +Art=ReplaceableTextures\CommandButtons\BTNWyvern.blp +Attachmentanimprops=medium + +// Drak'Thul, Orc Warlock +[odkt] +Art=ReplaceableTextures\CommandButtons\BTNOrcWarlockRed.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-guldan.blp + +// nazgrel, orc wolfrider +[onzg] +Art=ReplaceableTextures\CommandButtons\BTNRaider.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Drek'Thar +[Odrt] +Art=ReplaceableTextures\CommandButtons\BTNHeroFarseer.blp +Buttonpos=1,2 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-farseer.blp + +// Rokhan +[Orkn] +Art=ReplaceableTextures\CommandButtons\BTNShadowHunter.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\ShadowHunterMissile\ShadowHunterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-shadowhunter.blp + +// mathog +[omtg] +Art=ReplaceableTextures\CommandButtons\BTNChaosWarlord.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// vol'jin +[ovlj] +Art=ReplaceableTextures\CommandButtons\BTNWitchDoctor.blp +Buttonpos=1,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Missileart=Abilities\Weapons\WitchDoctorMissile\WitchDoctorMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-witchdoctor.blp + +// gul'dan +[Ogld] +Art=ReplaceableTextures\CommandButtons\BTNGuldan.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\SerpentWardMissile\SerpentWardMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// Samuro +[Osam] +Art=ReplaceableTextures\CommandButtons\BTNHeroBlademaster.blp +Buttonpos=0,2 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-blademaster.blp + +// Rexxar +[Orex] +Art=ReplaceableTextures\CommandButtons\BTNBeastmaster.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\RexxarMissile\RexxarMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-beastmaster.blp + +//Misha level 1 +[ngzc] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=medium + +//Misha level 2 +[ngzd] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=medium + +//Misha level 3 +[ngza] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=large + +//Misha level 4 +[ngz4] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=large + +//level 4 quillbeast +[nqb4] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Attachmentanimprops=medium + + +//level 4 serpent ward +[osp4] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Missileart=Abilities\Weapons\SerpentWardMissile\SerpentWardMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +// fire 2 +[npn4] +Art=ReplaceableTextures\CommandButtons\BTNFireBrewmaster.blp + +// storm 2 +[npn5] +Art=ReplaceableTextures\CommandButtons\BTNStormBrewmaster.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 + +// earth 2 +[npn6] +Art=ReplaceableTextures\CommandButtons\BTNEarthBrewmaster.blp + + +// spirit wyvern +[oswy] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWyvern.blp + +// gar'thok +[ogrk] +Art=ReplaceableTextures\CommandButtons\BTNGrunt.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// actual orc juggernaut unit +[ojgn] +Art=ReplaceableTextures\CommandButtons\BTNJuggernaut.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large + +// Undead Units +[Uear] +Art=ReplaceableTextures\CommandButtons\BTNHeroDeathKnight.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-deathknight.blp + +[Uktl] +Art=ReplaceableTextures\CommandButtons\BTNLichVersion2.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-lich.blp + +[Umal] +Art=ReplaceableTextures\CommandButtons\BTNHeroDreadlord.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-dreadlord.blp + +[Utic] +Art=ReplaceableTextures\CommandButtons\BTNTichondrius.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-tichondrius.blp + +[Uvar] +Art=ReplaceableTextures\CommandButtons\BTNHeroDreadlord.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-dreadlord.blp + +[Udth] +Art=ReplaceableTextures\CommandButtons\BTNHeroDreadlord.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-dreadlord.blp + +[Ubal] +Art=ReplaceableTextures\CommandButtons\BTNTichondrius.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-tichondrius.blp + +[Uvng] +Art=ReplaceableTextures\CommandButtons\BTNHeroDreadlord.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-dreadlord.blp + +[Uanb] +Art=ReplaceableTextures\CommandButtons\BTNHeroCryptLord.blp +Buttonpos=0,1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-cryptlord.blp + +[uktn] +Art=ReplaceableTextures\CommandButtons\BTNKelThuzad.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// Evil Sylvanas +[Usyl] +Art=ReplaceableTextures\CommandButtons\BTNBansheeRanger.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-bansheeranger.blp + +[uktg] +Art=ReplaceableTextures\CommandButtons\BTNGhostOfKelThuzad.blp + +[Uwar] +Art=ReplaceableTextures\CommandButtons\BTNArchimonde.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archimonde.blp + +// sylvanus windrunner banshee +[uswb] +Art=ReplaceableTextures\CommandButtons\BTNGhost.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\BansheeMissile\BansheeMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// air barge +[uarb] +Art=ReplaceableTextures\CommandButtons\BTNUndeadAirBarge.blp +Buttonpos=0,0 +Attachmentanimprops=large + +[ushp] +Art=ReplaceableTextures\CommandButtons\BTNUndeadShipyard.blp +Sellunits=ubot,udes + +[ubdr] +Attachmentanimprops=large +Art=ReplaceableTextures\CommandButtons\BTNAzureDragon.blp +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 + +[ubdd] +Art=ReplaceableTextures\CommandButtons\BTNFrostWyrm.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 +MissileHoming=1 +Attachmentanimprops=large + +// Night Elf Units +[Eill] +DependencyOr=Eilm +Art=ReplaceableTextures\CommandButtons\BTNHeroDemonHunter.blp +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +[Eilm] +Art=ReplaceableTextures\CommandButtons\BTNHeroDemonHunter.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +Attachmentlinkprops=alternate +Animprops=alternateex +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +[Eidm] +Art=ReplaceableTextures\CommandButtons\BTNHeroDemonHunter.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +Attachmentlinkprops=alternate +Animprops=alternate,alternateex +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +[Ecen] +Art=ReplaceableTextures\CommandButtons\BTNKeeperOfTheGrove.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=1300 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-keeperofthegrove.blp + +[Ekgg] +Art=ReplaceableTextures\CommandButtons\BTNKeeperGhostBlue.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=1300 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-keeperofthegrove.blp + +[Efur] +Art=ReplaceableTextures\CommandButtons\BTNFurion.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-furion.blp + +// Malfurion +[Emfr] +Art=ReplaceableTextures\CommandButtons\BTNFurion.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-furion.blp + +[Emns] +Art=ReplaceableTextures\CommandButtons\BTNFurion.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-furion.blp + +// Maiev +[Ewrd] +Art=ReplaceableTextures\CommandButtons\BTNWarden2.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\WardenMissile\WardenMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-warden.blp + +// evil illidan morphed +[Eevm] +Art=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +Attachmentlinkprops=alternate +Animprops=alternateex +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +// evil illidan +[Eevi] +DependencyOr=Eevm +Art=ReplaceableTextures\CommandButtons\BTNEvilIllidan.blp +Missileart=Abilities\Weapons\IllidanMissile\IllidanMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +// Naisha +[ensh] +Art=ReplaceableTextures\CommandButtons\BTNHuntress.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\SentinelMissile\SentinelMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium + +[eshd] +Art=ReplaceableTextures\CommandButtons\BTNShandris.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[Etyr] +Art=ReplaceableTextures\CommandButtons\BTNPriestessOfTheMoon.blp +Missileart=Abilities\Weapons\MoonPriestessMissile\MoonPriestessMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-priestessofthemoon.blp + +[enec] +Art=ReplaceableTextures\CommandButtons\BTNNightElfRunner.blp +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[eilw] +Art=ReplaceableTextures\CommandButtons\BTNCagedIllidan.blp +Attachmentanimprops=large + +// Neutral Units +[Nbbc] +Art=ReplaceableTextures\CommandButtons\BTNChaosBlademaster.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-chaosblademaster.blp + +[nckb] +Art=ReplaceableTextures\CommandButtons\BTNChaosKotoBeast.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Buttonpos=1,0 +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Attachmentanimprops=large + +[nchg] +Art=ReplaceableTextures\CommandButtons\BTNChaosGrunt.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[nchr] +Art=ReplaceableTextures\CommandButtons\BTNChaosWolfRider.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium + +[ncpn] +Builds=ogre,otrb,obar,ofor,oalt,obea,osld,otto,owtw +Art=ReplaceableTextures\CommandButtons\BTNChaosPeon.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Buttonpos=0,0 + +[nchw] +Art=ReplaceableTextures\CommandButtons\BTNChaosWarlock.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.00 +Missilespeed=1100 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[nw2w] +Art=ReplaceableTextures\CommandButtons\BTNChaosWarlockGreen.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.00 +Missilespeed=1100 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-shaman.blp + +[nmed] +Art=ReplaceableTextures\CommandButtons\BTNMedivh.blp +Missileart=Abilities\Weapons\DruidoftheTalonMissile\DruidoftheTalonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nmdm] +Art=ReplaceableTextures\CommandButtons\BTNRavenForm.blp +Missileart=Abilities\Weapons\DruidoftheTalonMissile\DruidoftheTalonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentlinkprops=alternate +Animprops=alternateex +Boneprops=alternate + +[Nman] +Art=ReplaceableTextures\CommandButtons\BTNMannoroth.blp +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-mannaroth.blp + +[Npld] +Art=ReplaceableTextures\CommandButtons\BTNPitLord.blp +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-pitlord.blp + +[nser] +Art=ReplaceableTextures\CommandButtons\BTNBlackDragon.blp +Attachmentanimprops=large +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.00 +Missilespeed=900 + +[nthr] +Art=ReplaceableTextures\CommandButtons\BTNGreenDragon.blp +Attachmentanimprops=large +Missileart=Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +[nemi] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\PriestMissile\PriestMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-priest.blp + +[nhem] +Art=ReplaceableTextures\CommandButtons\BTNElfVillager.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nhef] +Art=ReplaceableTextures\CommandButtons\BTNFemaleElfVillager.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nhea] +Art=ReplaceableTextures\CommandButtons\BTNHighElvenArcher.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nshr] +Art=ReplaceableTextures\CommandButtons\BTNUndeadShrine.blp + +[ndmg] +Art=ReplaceableTextures\CommandButtons\BTNDemonGate.blp +Trains=nfel,ninf,nbal + +[nefm] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef0] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef1] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef2] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef3] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef4] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef5] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef6] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[nef7] +Art=ReplaceableTextures\CommandButtons\BTNElvenFarm.blp + +[negt] +Art=ReplaceableTextures\CommandButtons\BTNElvenGuardTower.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 + +[negf] +Art=ReplaceableTextures\CommandButtons\BTNElvenGuardTower.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +[negm] +Art=ReplaceableTextures\CommandButtons\BTNElvenGuardTower.blp +Missileart=Abilities\Weapons\AncestralGuardianMissile\AncestralGuardianMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 + +[ndgt] +Art=ReplaceableTextures\CommandButtons\BTNDalaranGuardTower.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 + +[npgf] +Art=ReplaceableTextures\CommandButtons\BTNPigFarm.blp + +[nheb] +Art=ReplaceableTextures\CommandButtons\BTNMageTower.blp +Trains=hhes,nhea,nws1 +Researches=Rhde + +[nbfl] +Art=ReplaceableTextures\CommandButtons\BTNFountainOfLifeBlood.blp + +[nfnp] +Art=ReplaceableTextures\CommandButtons\BTNFountainOfLife.blp +Animprops=third + +[ndfl] +Art=ReplaceableTextures\CommandButtons\BTNFountainOfLifeDefiled.blp + +[ndrb] +Art=ReplaceableTextures\CommandButtons\BTNDragonRoost.blp +Trains=nrwm +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[nbsm] +Art=ReplaceableTextures\CommandButtons\BTNBookOfSummoning.blp + +[nhcn] +Art=ReplaceableTextures\CommandButtons\BTNHornOfCenarius.blp + +[nfrm] +Art=ReplaceableTextures\CommandButtons\BTNFrostmourne.blp + +[ngob] +Art=ReplaceableTextures\CommandButtons\BTNEnchantedGemstone.blp + +[nbwd] +Art=ReplaceableTextures\CommandButtons\BTNBearDen.blp + +[ncap] +Requires=edob +Art=ReplaceableTextures\CommandButtons\BTNCorruptedAncientProtector.blp +Buttonpos=3,0 +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.10 +Missilespeed=750 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[ncmw] +Art=ReplaceableTextures\CommandButtons\BTNCorruptedMoonWell.blp +Buttonpos=0,1 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[nctl] +Upgrade=ncta +Trains= +Art=ReplaceableTextures\CommandButtons\BTNCorruptedTreeOfLife.blp +Buttonpos=0,0 +Researches= +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops= +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[ncta] +Upgrade=ncte +Trains= +Art=ReplaceableTextures\CommandButtons\BTNTreeOfAges.blp +Buttonpos=0,2 +Researches= +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=Upgrade,First +Attachmentanimprops=upgrade,first +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[ncte] +Trains= +Art=ReplaceableTextures\CommandButtons\BTNTreeOfEternity.blp +Buttonpos=0,2 +Researches= +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=Upgrade,Second +Attachmentanimprops=upgrade,second +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[ncaw] +Art=ReplaceableTextures\CommandButtons\BTNCorruptedAncientOfWar.blp +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[nssn] +Art=ReplaceableTextures\CommandButtons\BTNAssassin.blp +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[nwat] +Art=ReplaceableTextures\CommandButtons\BTNHuntress.blp +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[nbsp] +Art=ReplaceableTextures\CommandButtons\BTNShip.blp + +// hi-poly cinematic lich, used for kel-thuzad cinematics +[Uclc] +Art=ReplaceableTextures\CommandButtons\BTNLichVersion2.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-lich.blp + +// hi-poly Abomination, used for cinematics +[uabc] +Requires=unp2 +Art=ReplaceableTextures\CommandButtons\BTNAbomination.blp +Buttonpos=1,0 +Specialart=Units\Undead\Abomination\AbominationExplosion.mdl +Attachmentanimprops=large + +// hi-poly tauren chieftain, used for Cairne cinematics +[Otcc] +Art=ReplaceableTextures\CommandButtons\BTNHeroTaurenChieftain.blp +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-taurenchieftain.blp + +[zmar] +Art=ReplaceableTextures\CommandButtons\BTNMarine.blp +Missileart=Abilities\Weapons\Rifle\RifleImpact.mdl +Missilearc=0.0 +Missilespeed=1900 + +[zjug] +Art=ReplaceableTextures\CommandButtons\BTNJuggernaut.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 + +[zzrg] +Art=ReplaceableTextures\CommandButtons\BTNZergling.blp + +[zhyd] +Art=ReplaceableTextures\CommandButtons\BTNHydralisk.blp +Missileart=Abilities\Weapons\HydraliskImpact\HydraliskImpact.mdl +Missilearc=0.0 +Missilespeed=1900 + +[zcso] +Art=ReplaceableTextures\CommandButtons\BTNChaosSpaceOrc.blp +Missileart=Abilities\Weapons\Rifle\RifleImpact.mdl +Missilearc=0.0 +Missilespeed=1900 + +[zsmc] +Art=ReplaceableTextures\CommandButtons\BTNTemp.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 + +[zshv] +Art=ReplaceableTextures\CommandButtons\BTNTemp.blp + +// naga units/buildings +[nmpe] +Builds=nnfm,nntg,nntt,nnsg,nnsa,nnad +Art=ReplaceableTextures\CommandButtons\BTNMurgalSlave.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Buttonpos=0,0 + +[nnfm] +Art=ReplaceableTextures\CommandButtons\BTNCoralBed.blp +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Buttonpos=2,0 + +[nntg] +Art=ReplaceableTextures\CommandButtons\BTNTidalGuardian.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Buttonpos=3,0 + +[nntt] +Art=ReplaceableTextures\CommandButtons\BTNTempleOfTides.blp +Trains=nmpe,nnmg +Researches=Rnat,Rnam,Rnsb +Buttonpos=0,0 +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Attachmentanimprops=large + +[nnsg] +Art=ReplaceableTextures\CommandButtons\BTNSpawningGrounds.blp +Trains=nmyr,nsnp,nhyc +Researches=Rnen +Buttonpos=1,0 +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Attachmentanimprops=medium + +[nnsa] +Art=ReplaceableTextures\CommandButtons\BTNShrineOfAszhara.blp +Trains=nnsw,nwgs +Researches=Rnsw,Rnsi +Buttonpos=0,1 +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Attachmentanimprops=medium + +[nnad] +Art=ReplaceableTextures\CommandButtons\BTNAltarOfDepths.blp +Buttonpos=0,0 +BuildingSoundLabel=NagaConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Naga\NagaDeath\NagaDeath.mdl +Attachmentanimprops=medium +Revive=1 + +[nhyc] +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleRed.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// mur'gul reaver (naga) +[nnmg] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// naga myrmidon +[nmyr] +DependencyOr=nmys +Art=ReplaceableTextures\CommandButtons\BTNNagaMyrmidon.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +[nmys] +Art=ReplaceableTextures\CommandButtons\BTNNagaMyrmidon.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// naga royal guard +[nnrg] +DependencyOr=nnrs +Art=ReplaceableTextures\CommandButtons\BTNNagaMyrmidonRoyalGuard.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=large + +[nnrs] +Art=ReplaceableTextures\CommandButtons\BTNNagaMyrmidonRoyalGuard.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=large + +// naga siren +[nnsw] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNSeaWitch.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-siren.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// naga summoner +[nnsu] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNNagaSummoner.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-siren.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// naga snap dragon +[nsnp] +DependencyOr=nsbs +Art=ReplaceableTextures\CommandButtons\BTNSnapDragon.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\snapMissile\snapMissile.mdl +Missilearc=0.0 +Missilespeed=1900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +[nsbs] +Art=ReplaceableTextures\CommandButtons\BTNSnapDragon.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\snapMissile\snapMissile.mdl +Missilearc=0.0 +Missilespeed=1900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// winged serpent +[nwgs] +Art=ReplaceableTextures\CommandButtons\BTNWindSerpent.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\WingedSerpentMissile\WingedSerpentMissile.mdl +Missilearc=0.0 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + + + + +//other stuff + +[nbel] +Art=ReplaceableTextures\CommandButtons\BTNSpellBreaker.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\BloodElfSpellThiefMISSILE\BloodElfSpellThiefMISSILE.mdl +Missilearc=0.00 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nbee] +Art=ReplaceableTextures\CommandButtons\BTNBloodElfPeasant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndmu] +Art=ReplaceableTextures\CommandButtons\BTNDalaranMutant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[ndrj] +Art=ReplaceableTextures\CommandButtons\BTNDalaranReject.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[nfgl] +Art=ReplaceableTextures\CommandButtons\BTNFleshGolem.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=large + +[njks] +Art=ReplaceableTextures\CommandButtons\BTNBandit.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + + +[Naka] +Art=ReplaceableTextures\CommandButtons\BTNDranaiAkama.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-akama.blp + +[nsw1] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Attachmentanimprops=medium + +[nsw2] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Attachmentanimprops=medium + +[nsw3] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Attachmentanimprops=medium + +[ndrl] +Builds=ndh2,ndh3,ndh4,nbt2 +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ncat] +Art=ReplaceableTextures\CommandButtons\BTNCatapult.blp +Buttonpos=0,0 +Missileart=abilities\weapons\catapult\catapultmissile.mdl +Missilearc=0.35 +Missilespeed=900 +MovementSoundLabel=OrcCatapultMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops=large + +// draenei salamander +[ndsa] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardVizier.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +//draenei seer lodge +[ndh4] +Art=ReplaceableTextures\CommandButtons\BTNDranaiHut.blp +Trains=ndrs,ndrh +Attachmentanimprops=medium +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 + +//draenei barracks +[ndh3] +Art=ReplaceableTextures\CommandButtons\BTNDranaiHut.blp +Trains=ndrn,ndrt,ndsa,ncat +Attachmentanimprops=medium +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 + +//seer's lodge +[ndh2] +Art=ReplaceableTextures\CommandButtons\BTNDranaiChiefHut.blp +Trains=ndrl +Attachmentanimprops=medium +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Revive=1 + +[Nmag] +Art=ReplaceableTextures\CommandButtons\BTNPitLord.blp +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-pitlord.blp + +[Nklj] +Art=ReplaceableTextures\CommandButtons\BTNKiljaedin.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archimonde.blp + +[Nkjx] +Art=ReplaceableTextures\CommandButtons\BTNKiljaedin.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archimonde.blp + +[nfv0] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nfv1] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nfv2] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nfv3] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nfv4] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nvr0] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nvr1] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[nvr2] +Art=ReplaceableTextures\CommandButtons\BTNNightElfFishingVillage.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[npgr] +Art=ReplaceableTextures\CommandButtons\BTNPowerGenerator.blp + +[nmsh] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[negz] +Art=ReplaceableTextures\CommandButtons\BTNGoblinSapper.blp + +[Nsjs] +Art=ReplaceableTextures\CommandButtons\BTNPandarenBrewmaster.blp +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=1,1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-pandarenbrewmaster.blp + +[nhew] +Art=ReplaceableTextures\CommandButtons\BTNElfVillager.blp +Builds=htow,hhou,hbar,hbla,hwtw,halt,nnsg,hars,hlum,nnsa,hvlt +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[nspc] +Art=ReplaceableTextures\CommandButtons\BTNSupportBeam.blp + +[ngbl] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNJunkGolem.blp +Missileart=Abilities\Weapons\FragDriller\FragDriller.mdl +Missilespeed=1900 + +[ndkw] +Art=ReplaceableTextures\CommandButtons\BTNDarkPortal.blp +Trains=nfel,ninf,nbal + +[ndke] +Art=ReplaceableTextures\CommandButtons\BTNDarkPortal.blp +Trains=nfel,ninf,nbal + +[nico] +Art=ReplaceableTextures\CommandButtons\BTNIceCrownObelisk.blp + +[net1] +Upgrade=net2 +Art=ReplaceableTextures\CommandButtons\BTNEnergyTower.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=first + +[net2] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedEnergyTower.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=upgrade,first + +[nbt1] +Upgrade=nbt2 +Art=ReplaceableTextures\CommandButtons\BTNRockTower.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.35 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=second + +[nbt2] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedRockTower.blp +Buttonpos=0,2 +Missileart=abilities\weapons\catapult\catapultmissile.mdl +Missilearc=0.35 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=upgrade,second + +[nft1] +Upgrade=nft2 +Art=ReplaceableTextures\CommandButtons\BTNFlameTower.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.35 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=third + +[nft2] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedFlameTower.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.35 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=upgrade,third + +[ndt1] +Upgrade=ndt2 +Art=ReplaceableTextures\CommandButtons\BTNColdTower.blp +Buttonpos=1,1 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.00 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=fourth + +[ndt2] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedFrostTower.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.00 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=upgrade,fourth + +[ntt1] +Upgrade=ntx2 +Art=ReplaceableTextures\CommandButtons\BTNDeathTower.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\NightElf\CorrosiveBreath\CorrosiveBreathMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=fifth + +[ntx2] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedDeathTower.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Undead\DeathCoil\DeathCoilMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Animprops=upgrade,fifth + +[nfrt] +Art=ReplaceableTextures\CommandButtons\BTNMarketplace.blp +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hprt] +Art=ReplaceableTextures\CommandButtons\BTNPortal.blp + +[nzlc] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp + +//chaplain +[nchp] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\PriestMissile\PriestMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// rogue wizard +[nhym] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +// zone indicator +[nzin] +Art=ReplaceableTextures\CommandButtons\BTNPortal.blp + +// bindstones +[nbse] +Art=ReplaceableTextures\CommandButtons\BTNResStone.blp + +[nbsw] +Art=ReplaceableTextures\CommandButtons\BTNResStone.blp \ No newline at end of file diff --git a/share/mpq/units/units/campaignunitstrings.txt b/share/mpq/units/units/campaignunitstrings.txt new file mode 100644 index 0000000..3f3b173 --- /dev/null +++ b/share/mpq/units/units/campaignunitstrings.txt @@ -0,0 +1,1264 @@ +// Human Units +[Harf] +Name=圣骑士 +EditorSuffix= (挥舞着霜之哀伤宝剑) +Hotkey=L +Propernames=阿尔塞斯 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hart] +Name=圣骑士 +Hotkey=L +Propernames=阿尔塞斯 +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) + +[Huth] +Name=圣骑士 +Hotkey=L +Propernames=乌瑟尔 +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) + +[Hpb1] +Name=圣骑士 +Hotkey=L +Propernames=尼科拉斯大人 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hpb2] +Name=圣骑士 +Hotkey=L +Propernames=格雷戈里爵士 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hdgo] +Name=圣骑士 +Hotkey=L +Propernames=达贡兽族屠杀者 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hmgd] +Name=圣骑士 +Hotkey=L +Propernames=马格罗斯守御者 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hhkl] +Name=圣骑士 +Hotkey=L +Propernames=哈拉生命使者 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Hjai] +Name=大魔法师 +Hotkey=A +Propernames=吉安娜 +Revivetip=复活大魔法师(|cffffcc00A|r) +Awakentip=复活大魔法师(|cffffcc00A|r) +Ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪、召唤水元素、辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Hmbr] +Name=山丘之王 +Hotkey=M +Propernames=穆拉丁 +Revivetip=复活山丘之王(|cffffcc00M|r) +Awakentip=复活山丘之王(|cffffcc00M|r) +UberTip="战士型英雄,特别擅长于冲锋陷阵。能学习到风暴之锤、雷霆一击、重击和天神下凡。|n|n|cffffcc00能攻击地面单位。|r" + +[Hant] +Name=大魔法师 +Hotkey=A +Propernames=安东尼达斯 +Revivetip=复活大魔法师(|cffffcc00A|r) +Awakentip=复活大魔法师(|cffffcc00A|r) +Ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪、召唤水元素、辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Hvwd] +Name=游侠 +Hotkey=P +Propernames=追风之西尔瓦娜斯 +Revivetip=复活游侠(|cffffcc00R|r) +Awakentip=复活游侠(|cffffcc00R|r) + +[Hkal] +Name=血魔法师 +Hotkey=B +Propernames=卡尔 +Revivetip=复活血魔法师(|cffffcc00B|r) +Awakentip=复活血魔法师(|cffffcc00B|r) +Ubertip="一位神秘的英雄,擅长于控制魔法能量和远程攻击。能学习到烈焰风暴、驱散、吸魔和火凤凰这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" + +[Hvsh] +Name=娜迦女海巫 +Hotkey=N +Propernames=法斯琪 +Revivetip=复活娜迦女海巫(|cffffcc00N|r) +Awakentip=复活娜迦女海巫(|cffffcc00N|r) +Ubertip="一位神秘的英雄,擅长于远距离战斗。能学习到叉状闪电、霜冻之箭、魔法护盾和龙卷风。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Hlgr] +Name=黑暗骑士 +Hotkey=L +Propernames=加理瑟斯 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[haro] +Name=神秘了望台 +Hotkey=V +Tip=建造神秘了望台(|cffffcc00V|r) + +[hcth] +Name=船长 + +[hhdl] +Name=无人之马 + +[hhes] +Name=剑士 +Tip=训练剑士(|cffffcc00S|r) +Hotkey=S +Ubertip="多才多艺的步兵战士。能学习到防御技能。|n|n|cffffcc00能攻击地面单位。|r" + +[hbew] +Name=车 + +[Hapm] +Name=圣骑士 +Hotkey=L +Propernames=海军上将普洛德摩尔 +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光、神圣护甲、专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[hrdh] +Name=背负背包的马 + +[Hgam] +Name=幽灵大魔法师 +Hotkey=A +Propernames=安东尼达斯 +Revivetip=复活幽灵大魔法师(|cffffcc00A|r) +Awakentip=复活幽灵大魔法师(|cffffcc00A|r) +Ubertip="一位神秘的英雄,擅长于远程攻击。能学习到暴风雪、召唤水元素、辉煌光环、和群体传送技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// Orc Units +[Othr] +Name=先知 +Hotkey=F +Propernames=萨尔 +Revivetip=复活先知(|cffffcc00F|r) +Awakentip=复活先知(|cffffcc00F|r) +Ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链、透视、野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Ogrh] +Name=剑圣 +Hotkey=B +Propernames=格罗姆-地狱咆哮 +Revivetip=复活剑圣(|cffffcc00B|r) +Awakentip=复活剑圣(|cffffcc00B|r) +Ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Opgh] +Name=剑圣 +EditorSuffix= (着磨的) +Hotkey=B +Propernames=格罗姆-地狱咆哮 +Revivetip=复活剑圣(|cffffcc00B|r) +Awakentip=复活剑圣(|cffffcc00B|r) +Ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Ocbh] +Name=牛头人酋长 +Hotkey=T +Propernames=卡林-血蹄 +Revivetip=复活牛头人酋长(|cffffcc00T|r) +Awakentip=复活牛头人酋长(|cffffcc00T|r) +Ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" + +//expansion version of cairne bloodhoof +[Ocb2] +Name=牛头人酋长 +Hotkey=T +Propernames=卡林-血蹄 +Revivetip=复活牛头人酋长(|cffffcc00T|r) +Awakentip=复活牛头人酋长(|cffffcc00T|r) +Ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" +EditorSuffix=(资料片) + +[owar] +Name=兽族战争首领 + +[ocbw] +Name=邪恶兽族地洞 +Hotkey=O +Tip=建造邪恶兽族地洞(|cffffcc00O|r) +Ubertip="能提供人口,从而增加可造单位数量的最大值。邪恶的苦工在进入其中以后还能对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r" +EditorSuffix= (混乱的) + +[oosc] +Name=科多兽 +EditorSuffix= (不需要分配驾驭者) + +[ownr] +Name=双足飞龙 +EditorSuffix= (不需要分配驾驭者) + +[odkt] +Name=德拉克苏尔 + +[onzg] +Name=那滋盖尔 + +[Odrt] +Name=先知 +Propernames=德雷克萨尔 +Hotkey=F +Tip=召唤先知(|cffffcc00F|r) +Ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链、透视、野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活先知(|cffffcc00F|r) +Awakentip=复活先知(|cffffcc00F|r) + +[Orkn] +Name=暗影猎手 +Propernames=洛克汗 +Hotkey=S +Tip=召唤暗影猎手(|cffffcc00S|r) +Ubertip="灵巧型的英雄,擅长于医疗和巫毒魔法。能学习到医疗波,妖术,毒蛇守卫和巫毒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活暗影猎手(|cffffcc00S|r) +Awakentip=复活暗影猎手(|cffffcc00S|r) + +[omtg] +Name=马索格 + +[ovlj] +Name=沃尔京 +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 岗哨守卫","- 岗哨守卫|n- 静止陷阱","- 岗哨守卫|n- 静止陷阱|n- 医疗守卫" + +[Ogld] +Name=巫师 +Propernames=古尔丹 +Hotkey=W +Tip=召唤巫师(|cffffcc00W|r) +Ubertip="在基尔加丹亲自监督下战斗的强大巫师。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活巫师(|cffffcc00W|r) +Awakentip=复活巫师(|cffffcc00W|r) + +[Osam] +Name=剑圣 +Hotkey=B +Propernames=萨穆罗 +Revivetip=复活剑圣(|cffffcc00B|r) +Awakentip=复活剑圣(|cffffcc00B|r) +Ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Orex] +Name=驯兽师 +Propernames=雷克萨 +Hotkey=B +Tip=召唤驯兽师(|cffffcc00B|r) +Ubertip="战士型英雄,特别擅长于召唤野兽和集合他的盟友。能够学习召唤熊、召唤豪猪、战嚎和惊吓这四个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活驯兽师(|cffffcc00B|r) +Awakentip=复活驯兽师(|cffffcc00B|r) + +[ngzc] +Name=米纱 +EditorSuffix= (等级 1) + +[ngzd] +Name=米纱 +EditorSuffix= (等级 2) + +[ngza] +Name=米纱 +EditorSuffix= (等级 3) + +[ngz4] +Name=米纱 +EditorSuffix= (等级 4) + +[nqb4] +Name=狂暴豪猪 +EditorSuffix= (等级 4) + +[osp4] +Name=毒蛇守卫 +EditorSuffix= (等级 4) + + +[npn4] +Name=火之熊猫战士 +Tip=召唤火之熊猫战士(|cffffcc00F|r) +Ubertip="勇猛的火之熊猫战士,具有永久献祭和抗性皮肤技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F + +[npn5] +Name=风之熊猫战士 +Tip=召唤风之熊猫战士(|cffffcc00T|r) +Ubertip="敏捷的风之熊猫战士,具有抗性皮肤,驱逐魔法,飓风和疾步风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=T + +[npn6] +Name=地之熊猫战士 +Tip=召唤地之熊猫战士(|cffffcc00E|r) +Ubertip="笨重的地之熊猫战士,具有抗性皮肤,魔法免疫,粉碎和嘲讽技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=E + +[oswy] +Name=灵魂飞龙 + +[ogrk] +Name=加索克 + +[ojgn] +Name=兽族魔力战舰 +Hotkey=R +Tip=训练兽族魔力战舰(|cffffcc00R|r) +Ubertip="巨大的战舰,擅长破坏敌人的舰只和从海上轰炸近海的建筑物。|n|n|cffffcc00能攻击地面单位。|r" + +// Undead Units +[Uear] +Name=死亡骑士 +EditorSuffix= (邪恶的) +Hotkey=D +Propernames=阿尔塞斯 +Revivetip=复活死亡骑士(|cffffcc00D|r) +Awakentip=复活死亡骑士(|cffffcc00D|r) +Ubertip="战士型英雄,是人族圣骑士的邪恶对手。能学习到死亡缠绕、死亡契约、邪恶光环和操纵死尸这四种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Uktl] +Name=巫妖 +EditorSuffix= (巫妖) +Hotkey=L +Propernames=克尔苏加德 +Revivetip=复活巫妖(|cffffcc00L|r) +Awakentip=复活巫妖(|cffffcc00L|r) +Ubertip="一种神秘的英雄,特别擅长于冰系魔法。能学习到霜冻护甲、霜冻新星、黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Umal] +Name=恐惧魔王 +Hotkey=E +Propernames=麦尔盖尼斯 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Utic] +Name=恐惧魔王 +Hotkey=E +Propernames=提克迪奥斯 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Uvar] +Name=恐惧魔王 +Hotkey=E +Propernames=法理玛瑟斯 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Udth] +Name=恐惧魔王 +Hotkey=E +Propernames=德赛洛克 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Ubal] +Name=恐惧魔王 +Hotkey=E +Propernames=巴那泽尔 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Uvng] +Name=恐惧魔王 +Hotkey=E +Propernames=戴尔维恩格尔 +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,善于控制战场。能学习到腐臭蜂群、睡眠、吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Uanb] +Name=地穴领主 +Hotkey=C +Propernames=阿诺拉克 +Revivetip=复活地穴首领(|cffffcc00C|r) +Awakentip=复活地穴领主(|cffffcc00C|r) +Ubertip="战士型英雄,擅长于控制昆虫进行攻击。能学习到穿刺、尖刺外壳、腐尸甲虫和蝗虫群这四个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Usyl] +Name=黑暗游侠 +Propernames=西尔瓦娜斯 +Hotkey=D +Tip=召唤黑暗游侠(|cffffcc00D|r) +Revivetip=复活黑暗游侠(|cffffcc00D|r) +Awakentip=复活黑暗游侠(|cffffcc00D|r) +Ubertip="灵巧型的英雄,擅长于与对手周旋。能学习到沉默魔法、黑暗之箭、生命汲取和符咒这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[uktn] +Name=克尔苏加德 +EditorSuffix= (不死族巫师) + +[uktg] +Name=克尔苏加德 +EditorSuffix= (幽灵) + +[Uwar] +Name=巫师 +Hotkey=W +Propernames=阿克蒙德 +Revivetip=复活巫师(|cffffcc00W|r) +Awakentip=复活巫师(|cffffcc00W|r) + +[uswb] +Name=追风之西尔瓦娜斯 +EditorSuffix= (女妖) + +[uarb] +Name=飞艇 +Tip=召唤飞艇(|cffffcc00B|r) +Ubertip="一种大批量的运输机。" +Hotkey=B + +[ubdr] +Name=萨皮洛恩 +EditorSuffix= (活着的) + +[ubdd] +Name=萨皮洛恩 +EditorSuffix= (不死族的) + +[ushp] +Name=不死族船坞 +Tip=船坞(|cffffcc00H|r) +Ubertip="造船工厂,能制造出不死族的运输船,护卫舰和战舰。" +Hotkey=H + +// Night Elf Units +[Eill] +Name=恶魔猎手 +Hotkey=D +Propernames=尤迪安 +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +Ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Eilm] +Name=恶魔猎手 +EditorSuffix= (被变了形的) +Hotkey=D +Propernames=尤迪安 +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +Ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Eidm] +Name=恶魔猎手 +EditorSuffix= (恶魔形态) +Hotkey=D +Propernames=尤迪安 +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +Ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Ecen] +Name=半神人 +Hotkey=C +Propernames=赛纳留斯 +Revivetip=复活赛纳留斯(|cffffcc00C|r) +Awakentip=复活赛纳留斯(|cffffcc00C|r) + +[Ekgg] +Name=丛林守护者 +Hotkey=G +Propernames=幽灵 +Revivetip=复活幽灵(|cffffcc00G|r) +Awakentip=复活幽灵(|cffffcc00G|r) +Ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" + +[Efur] +Name=丛林守护者 +Hotkey=K +Propernames=法里奥 +Revivetip=复活丛林守护者(|cffffcc00K|r) +Awakentip=复活丛林守护者(|cffffcc00K|r) +Ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" + +[Emfr] +Name=丛林守护者 +Hotkey=K +Propernames=玛尔法里奥 +Revivetip=复活丛林守护者(|cffffcc00K|r) +Awakentip=复活丛林守护者(|cffffcc00K|r) +Ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" + +[Emns] +Name=丛林守护者 +Hotkey=K +Propernames=玛尔法里奥 +Revivetip=复活丛林守护者(|cffffcc00K|r) +Awakentip=复活丛林守护者(|cffffcc00K|r) +EditorSuffix= (没有鹿角) +Ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须、自然之力、荆刺光环和宁静这四项技能。|n|n|cffffcc00攻击地面和空中单位。|r" + +[Ewrd] +Name=守望者 +Hotkey=W +Propernames=玛维 +Revivetip=复活守望者(|cffffcc00W|r) +Awakentip=复活守望者(|cffffcc00W|r) +Ubertip="灵巧型英雄,能在战场上来去自如,能学习到闪烁、刀阵旋风、暗影突袭和复仇之魂这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[eshd] +Name=塞恩德里斯 + +[Etyr] +Name=月之女祭司 +Hotkey=P +Propernames=泰兰德 +Revivetip=复活月之女祭司(|cffffcc00P|r) +Awakentip=复活月之女祭司(|cffffcc00P|r) +Ubertip="战士型英雄,擅长于远程攻击。能学习到侦察、灼热之箭、强击光环和群星坠落这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[Eevi] +Name=恶魔猎手 +Hotkey=D +Propernames=尤迪安 +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +EditorSuffix= (邪恶的) +Ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Eevm] +Name=恶魔猎手 +EditorSuffix= (Morphed) +Hotkey=D +Propernames=尤迪安 +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +EditorSuffix= (邪恶的) +Ubertip="一种灵活的英雄,能学习到献祭、闪避、法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ensh] +Name=娜萨 + +[enec] +Name=暗夜精灵信使 + +[eilw] +Name=囚车 + +// Neutral Units +[Nbbc] +Name=剑圣 +Hotkey=B +Propernames=黑岩氏族的剑圣 +Revivetip=复活剑圣(|cffffcc00B|r) +Awakentip=复活剑圣(|cffffcc00B|r) +Ubertip="一种灵活的英雄,特别擅长于一对一。能学习到镜像、疾步风、致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nckb] +Name=邪恶的科多兽 +Hotkey=K +Tip=训练邪恶的科多兽(|cffffcc00K|r) +Ubertip="一种笨重的战争野兽,上面骑着一个兽族鼓手。能学到战鼓和吞噬技能。战鼓能提高周围单位的攻击力,它本身也能进行升级。|n|cffffcc00能攻击地面和空中单位。|r" + +[nchg] +Name=邪恶的兽族步兵 +Hotkey=G +Tip=训练邪恶的兽族步兵(|cffffcc00G|r) +Ubertip="凶残的兽族战士,身体内流淌着恶魔的血液。|n|cffffcc00能攻击地面单位。|r" + +[nchr] +Name=邪恶的掠夺者 +Hotkey=R +Tip=训练邪恶的掠夺者(|cffffcc00R|r) +Ubertip="移动力很高的单位,身体内流淌着恶魔的血液。|n|cffffcc00能攻击地面单位。|r" + +[nchw] +Name=邪恶的巫师 +Hotkey=W +Tip=训练邪恶的巫师(|cffffcc00W|r) +Ubertip="兽族的魔法施放单位,一开始能施放霹雳闪电技能,伤害并击晕敌人。在升级之后还能拥有邪恶狂热和残废技能。|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 霹雳闪电","- 霹雳闪电|n- 邪恶狂热","- 霹雳闪电|n- 邪恶狂热|n- 残废" + +[nw2w] +Name=兽族巫师 +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 霹雳闪电","- 霹雳闪电|n- 邪恶狂热","- 霹雳闪电|n- 邪恶狂热|n- 残废" + +[ncpn] +Name=邪恶的苦工 +Hotkey=P +Tip=训练邪恶的苦工(|cffffcc00P|r) +Ubertip="兽族基本的工人单位。能采集黄金和木材,还能建造建筑物和进行修理。在钻入地洞以后还能对来犯的敌人进行反击。|n|cffffcc00能攻击地面单位和树木。|r" + +[nmed] +Name=麦迪文 + +[nmdm] +Name=麦迪文 +EditorSuffix= (血乌鸦形态) + +[Nman] +Name=深渊魔王 +Propernames=玛诺洛斯 +Revivetip=复活深渊魔王(|cffffcc00P|r) +Awakentip=复活深渊魔王(|cffffcc00P|r) +Hotkey=M + +[Npld] +Name=深渊魔王 +Propernames=阿哥勒尔,布鲁特里斯,蒙哥瑟德,迪斯麦斯,高哥那斯,麦哥瑟里登 +Revivetip=复活深渊魔王(|cffffcc00P|r) +Awakentip=复活深渊魔王(|cffffcc00P|r) +Hotkey=P + +[nser] +Name=西里诺克斯 + +[nthr] +Name=萨里法斯 + +[nemi] +Name=使者 +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 医疗","- 医疗|n- 驱逐魔法","- 医疗|n- 驱逐魔法|n- 心灵之火" + +[nhem] +Name=高等精灵 +EditorSuffix= (男性) + +[nhef] +Name=高等精灵 +EditorSuffix= (女性) + +[nhea] +Name=弓箭手 +Tip=训练弓箭手(|cffffcc00R|r) +Hotkey=R +Ubertip="基本的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nshr] +Name=神殿 + +[ndmg] +Name=恶魔之门 + +[nefm] +Name=高等精灵农场 + +[nef0] +Name=高等精灵农场 +EditorSuffix=1 + +[nef1] +Name=高等精灵农场 +EditorSuffix=2 + +[nef2] +Name=高等精灵农场 +EditorSuffix=3 + +[nef3] +Name=高等精灵农场 +EditorSuffix=4 + +[nef4] +Name=高等精灵农场 +EditorSuffix=5 + +[nef5] +Name=高等精灵农场 +EditorSuffix=6 + +[nef6] +Name=高等精灵农场 +EditorSuffix=7 + +[nef7] +Name=高等精灵农场 +EditorSuffix=8 + +[negt] +Name=高等精灵防御塔 +Hotkey=G +Tip=(|cffffcc00G|r)建造高等精灵守护塔 +Ubertip="主要的防御性建筑。 |n|n|cffffcc00能攻击地面和空中单位。|r" + + +[negf] +Name=地怒之塔 + +[negm] +Name=天怒之塔 + +[ndgt] +Name=达拉然守卫塔 + +[npgf] +Name=猪圈农场 +Tip=建造猪圈农场(|cffffcc00F|r) +Hotkey=F + +[nheb] +Name=高等精灵兵营 +Hotkey=B +Tip=(|cffffcc00B|r)建造兵营 +Ubertip="主要部队生产建筑。 训练高等精灵剑士和高等精灵弓箭手和龙鹰。|n 同时包括对于高等精灵剑士防御技能的升级。" + + +[nbfl] +Name=血浴之泉 + +[nfnp] +Name=威力之泉 + +[ndfl] +Name=被污染的生命之泉 + +[nbsm] +Name=召唤底座之书 + +[nhcn] +Name=半神赛纳留斯之角 + +[nfrm] +Name=霜之哀伤底座 + +[ngob] +Name=魔法宝石塔 + +[nbwd] +Name=兽穴 + +[ncap] +Name=远古守护者 +Hotkey=P +Tip=建造远古守护者(|cffffcc00P|r) +Ubertip="防御性的古树。当扎根于地面的时候,能投掷出巨大的石块对敌人造成伤害。|n能攻击地面和空中单位。" + +[ncmw] +Name=月亮井 +Hotkey=M +Tip=建造月亮井(|cffffcc00M|r) +Ubertip="能提供人口,从而增加可造单位数量的最大值。还能补充暗夜精灵族单位的魔法值和生命值。在夜间,它也能自我恢复魔法能量。" + +[nctl] +Name=生命之树 +Hotkey=T +Tip=建造生命之树(|cffffcc00T|r) +Ubertip="暗夜精灵族的基本建筑物。能训练小精灵和缠绕金矿。在升级到了远古之树和永恒之树之后能让玩家建造许多新的建筑物和单位。" + +[ncta] +Name=远古之树 +Hotkey=U +Tip=升级到远古之树(|cffffcc00U|r) +Ubertip="升级到了远古之树之后能让玩家建造许多新的建筑物和单位。" + +[ncte] +Name=永恒之树 +Hotkey=U +Tip=升级到永恒之树(|cffffcc00U|r) +Ubertip="升级到了永恒之树之后能让玩家建造许多新的建筑物和单位。" + +[ncaw] +Name=战争古树 +Hotkey=R +Tip=建造远古守护者(|cffffcc00R|r) +Ubertip="主要的产兵建筑。|n|n|cffffcc00能攻击地面单位。|r" + +[nbsp] +Name=船只 + +[nssn] +Name=守望者 + +[nwat] +Name=岗哨 + +[ndrb] +Name=龙之栖木 +Tip=建造龙之栖木 + +[Uclc] +Name=巫妖 +EditorSuffix=" (巫妖,过场动画)" +Hotkey=L +Propernames=克尔苏加德 +Revivetip=复活巫妖(|cffffcc00L|r) +Awakentip=复活巫妖(|cffffcc00L|r) +Ubertip="一种神秘的英雄,特别擅长于冰系魔法。能学习到霜冻护甲、霜冻新星、黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[uabc] +Name=憎恶 +EditorSuffix= (过场动画) +Tip=训练憎恶(|cffffcc00A|r) +Ubertip="重型近战单位。可以学习疾病云雾技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=A + +[Otcc] +Name=牛头人酋长 +EditorSuffix= (过场动画) +Hotkey=T +Propernames=卡林-血蹄 +Revivetip=复活牛头人酋长(|cffffcc00T|r) +Awakentip=复活牛头人酋长(|cffffcc00T|r) +Ubertip="战士型英雄,特别擅长于吸收伤害和近战战斗。能学习震荡波、战争践踏、耐久光环和重生技能。|n|n|cffffcc00能攻击地面单位。|r" + +[zmar] +Name=马里恩 +Hotkey=M +Tip=训练 +Ubertip="强大的人族海军陆战队,装备有自动脉冲来复枪。|n|cffffcc00能攻击地面和空中单位。|r" + +[zjug] +Name=兽族魔力战舰 +Hotkey=R +Tip=训练兽族神像(|cffffcc00R|r) +Ubertip="巨大的战舰,擅长破坏敌人的舰只和从海上轰炸近海的建筑物。|n|n|cffffcc00能攻击地面单位。|r" +EditorSuffix= (过场动画) + +[zzrg] +Name=小狗 +Hotkey=Z +Tip=训练小狗(|cffffcc00Z|r) +Ubertip="虫族军队的小型近战攻击生物。虽然很脆弱,但是他们以极大的数量闻名。|n|cffffcc00能攻击地面单位。|r" + +[zhyd] +Name=刺蛇 +Hotkey=H +Tip=训练刺蛇(|cffffcc00H|r) +Ubertip="强大的虫族生物,熟练于用包裹着酸液的脊液射弹摧毁敌人。|n|cffffcc00能攻击地面和空中单位。|r" + +[zcso] +Name=空间邪恶兽族 +Hotkey=C +Tip=训练空间邪恶兽族(|cffffcc00C|r) +Ubertip="邪恶的兽族被送往空间为恶魔军团而战。装备有强大的火焰喷射器,他们能够大量杀伤团聚在一起的敌人军队。|n|cffffcc00能攻击地面和空中单位。|r" + +[zsmc] +Name=大兵 +Hotkey=M +Tip=训练美国大兵(Sa|cffffcc00M|r) +Ubertip="艺术指导,山姆-戴迪。擅长概念艺术和纹理制作,有很多艺术青年当他的小弟给他卖命。|n|n|cffffcc00攻击糟糕的艺术。|r" + +[zshv] +Name=小鬼挖掘者 +Hotkey=K +Tip=训练小鬼挖掘者(|cffffcc00K|r) +Ubertip="暴雪的副总裁,法兰克-皮尔斯。强大的程序员,擅长打断笑话和完成任务。|n|n|cffffcc00攻击程序错误。|r" + +// naga units/buildings +[nmpe] +Name=穆格尔奴隶 +Hotkey=V +Tip=训练穆格尔奴隶(|cffffcc00V|r) +Ubertip="基本的工人单位,能采集木材和黄金,建造建筑物和进行修理。|n|cffffcc00能攻击地面单位和树木。|r" + +[nnfm] +Name=珊瑚礁 +Tip=建造珊瑚礁(|cffffcc00C|r) +Hotkey=C +Ubertip="提供人口,能增加你可造的单位最大数量。" + +[nntg] +Name=守护者 +Tip=建造守护者(|cffffcc00D|r) +Hotkey=D +Ubertip="主要的防御性建筑。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nntt] +Name=潮汐神庙 +Tip=建造潮汐神庙(|cffffcc00T|r) +Hotkey=T +Ubertip="主要建筑,用来训练穆格尔奴隶、穆格尔掠夺者以及存储资源。同时包括娜迦武器和防御的升级,以及潜水技能升级。" + +[nnsg] +Name=产卵之地 +Tip=建造产卵之地(|cffffcc00S|r) +Hotkey=S +Ubertip="训练娜迦暴徒、飞龙和龙龟,同时包括诱捕魔法的升级。" + +[nnsa] +Name=艾萨拉女王神殿 +Tip=建造艾萨拉女王神殿(|cffffcc00A|r) +Hotkey=A +Ubertip="训练娜迦海妖和飞蛇,同时包括娜迦海妖的魔法升级。" + +[nnad] +Name=深渊祭坛 +Tip=建造深渊祭坛(|cffffcc00L|r) +Hotkey=L +Ubertip="召唤英雄,复活阵亡的英雄。" + +[nnmg] +Name=穆格尔掠夺者 +Tip=训练穆格尔掠夺者(|cffffcc00R|r) +Hotkey=R +Ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmyr] +Name=娜迦暴徒 +Hotkey=M +Tip=训练娜迦暴徒(|cffffcc00M|r) +Ubertip="强力近战单位。有着潜水技能,可以隐藏在水中,能学习诱捕技能。|n|n|cffffcc00能攻击地面单位。" + +[nmys] +Name=潜水的娜迦暴徒 +Hotkey=M +Tip=训练娜迦暴徒(|cffffcc00M|r) +Ubertip="强力近战单位。有着潜水技能,可以隐藏在水中,能学习诱捕技能。|n|n|cffffcc00能攻击地面单位。" + +[nnrg] +Name=娜迦皇家卫兵 +Tip=训练娜迦皇家卫兵 +Ubertip="极其强大的近战单位,拥有潜水技能,允许该单位藏在水中。同时拥有抗性皮肤技能,可以减少负面魔法的延续时间,冰霜之箭技能,可以击晕目标单位,冲击波技能,能对一直线上的敌人造成伤害,以及召唤海元素技能,海元素是一个远程攻击单位。|n|ncffcc00能攻击地面单位。|r" + +[nnrs] +Name=潜水的娜迦皇家卫兵 +Tip=训练娜迦皇家卫兵 +Ubertip="极其强大的近战单位,拥有潜水技能,允许该单位藏在水中。同时拥有抗性皮肤技能,可以减少负面魔法的延续时间,冰霜之箭技能,可以击晕目标单位,冲击波技能,能对一直线上的敌人造成伤害,以及召唤海元素技能,海元素是一个远程攻击单位。|n|ncffcc00能攻击地面单位。|r" + +[nnsw] +Name=娜迦海妖 +Hotkey=S +Tip=雇用娜迦海妖(|cffffcc00S|r) +Ubertip="强大的召唤者。拥有初始技能寄生虫,可以对单位造成持续伤害并最终将其变成水奴。 还可以学习霜冻护甲和飓风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 寄生虫","- 寄生虫|n- 霜冻护甲","- 寄生虫|n- 霜冻护甲|n- 飓风" + +[nnsu] +Name=召唤者 +Hotkey=S +Tip=训练召唤者(|cffffcc00S|r) +Ubertip="强大的召唤者。拥有初始技能寄生虫,可以对单位造成持续伤害并最终将其变成水奴。还可以学习霜冻护甲和飓风技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 寄生虫","- 寄生虫|n- 霜冻护甲","- 寄生虫|n- 霜冻护甲|n- 飓风" + +[nsnp] +Name=飞龙 +Hotkey=D +Tip=训练飞龙(|cffffcc00D|r) +Ubertip="轻型远程单位,有着毒性攻击,可以缓慢和伤害敌单位。拥有潜水技能,可以隐藏在水中。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsbs] +Name=潜水的飞龙 +Hotkey=D +Tip=训练飞龙(|cffffcc00D|r) +Ubertip="轻型远程单位,有着毒性攻击,可以缓慢和伤害敌单位。拥有潜水技能,可以隐藏在水中。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nwgs] +Name=飞蛇 +Hotkey=C +Tip=训练飞蛇(|cffffcc00C|r) +Ubertip="轻型飞行单位,可以学习驱逐魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhyc] +Name=龙龟 +Hotkey=T +Tip=训练龙龟(|cffffcc00T|r) +Ubertip="一只可以吞噬敌方单位的强大海龟。善于破坏敌建筑。拥有硬化皮肤, 可以减少所受的伤害, 以及尖刺外壳,可以对敌人的近战攻击者造成伤害。|n|n|cffffcc00能攻击地面单位。" + +//end naga stuff + +[nbel] +Name=血精灵中尉 +Hotkey=L +Tip=训练血精灵中尉(|cffffcc00L|r) +Ubertip="来自于强大的卡尔省血精灵军队的中尉。破坏魔法施放单位的专家。|n|n|cffffcc00攻击地面单位|r" + +[nbee] +Name=血精灵工程师 +Hotkey=E +Tip=训练血精灵工程师(|cffffcc00E|r) +Ubertip="极度聪慧的血精灵在发明新的技术和打造强大的防御塔方面极为擅长。|n|n|cffffcc00攻击地面单位和树木。|r" + +[ndmu] +Name=达拉然之变种怪物 + +[ndrj] +Name=达拉然之孤胆怪物 + +[nfgl] +Name=灵肉傀儡 + +[njks] +Name=监狱小卒 + +[Naka] +Name=贤者 +Propernames=阿卡玛 +Revivetip=复活阿卡玛(|cffffcc00K|r) +Awakentip=复活阿卡玛(|cffffcc00K|r) +Hotkey=K + +[ndrl] +Name=达拉内尔工人 +Hotkey=D +Tip=训练达拉内尔工人(|cffffcc00D|r) +Ubertip="基本的工人单位,能采集木材和黄金,建造建筑物和进行修理。|n|cffffcc00能攻击地面单位和树木。|r" + +[ndh4] +Name=先知洞穴 +Tip=建造先知洞穴 +Ubertip="训练达拉内尔先知和先驱。" + +[ndh3] +Name=达拉内尔兵营 +Tip=建造达拉内尔兵营 +Ubertip="训练达拉内尔辩护者,漫步者,粉碎者和火蜥蜴。" + +[ndh2] +Name=达拉内尔港口 +Tip=建造达拉内尔港口 +Ubertip="使得能采集黄金,并能训练出工人和复活英雄。" + +[ndsa] +Name=火蜥蜴 +Tip=训练火蜥蜴 +Ubertip="能投掷出闪电之箭的重型远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsw1] +Name=小型灵兽 +EditorSuffix= (等级 1) + +[nsw2] +Name=灵兽 +EditorSuffix= (等级 2) + +[nsw3] +Name=大型灵兽 +EditorSuffix= (等级 3) + +[ncat] +Name=达拉内尔粉碎者 +Hotkey=D +Tip=训练达拉内尔粉碎者(|cffffcc00D|r) +Ubertip="远程攻城武器。特别擅长于破坏建筑物,但是行动缓慢容易遭到敌人的围攻。能学习到燃烧汽油技能。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[Nmag] +Name=深渊魔王 +Propernames=麦哥瑟里登 +Revivetip=复活深渊魔王(|cffffcc00P|r) +Awakentip=复活深渊魔王(|cffffcc00P|r) +Hotkey=P +Ubertip="战士型英雄,善于恐吓敌人。能学习火焰雨、恐怖嚎叫、分裂攻击和魔鬼缠身。|n|n|cffffcc00能攻击地面单位。|r" + +[Nklj] +Name=巫师 +Hotkey=W +Propernames=基尔加丹 +Revivetip=复活巫师(|cffffcc00W|r) +Awakentip=复活巫师(|cffffcc00W|r) + +[Nkjx] +Name=巫师 +Hotkey=W +Propernames=基尔加丹 +Revivetip=复活巫师(|cffffcc00W|r) +Awakentip=复活巫师(|cffffcc00W|r) +EditorSuffix=(过场动画) + +[nfv0] +Name=暗夜精灵族渔村 +EditorSuffix= (双层的, 面向西南面) + +[nfv1] +Name=暗夜精灵族渔村 +EditorSuffix= (顶层有装饰的, 面向西南面) + +[nfv2] +Name=暗夜精灵族渔村 +EditorSuffix= (一层的) + +[nfv3] +Name=暗夜精灵族渔村 +EditorSuffix= (双层的, 面向东南面) + +[nfv4] +Name=暗夜精灵族渔村 +EditorSuffix= (顶层有装饰的, 面向东南面) + +[nvr0] +Name=暗夜精灵族渔村 +EditorSuffix= (被毁坏的) + +[nvr1] +Name=暗夜精灵族渔村 +EditorSuffix= (被毁坏的) + +[nvr2] +Name=暗夜精灵族渔村 +EditorSuffix= (被毁坏的) + +[npgr] +Name=能量产生器 + +[nmsh] +Name=米纱 + +[negz] +Name=工程师加兹劳 + +[Nsjs] +Name=熊猫酒仙 +Propernames=陈-风暴烈酒 +Hotkey=N +Tip=召唤熊猫酒仙(|cffffcc00N|r) +Ubertip="战士型英雄,特别擅长于近战。能学习火焰呼吸、醉酒云雾、醉拳和风/地/火这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活熊猫酒仙(|cffffcc00N|r) +Awakentip=复活熊猫酒仙(|cffffcc00N|r) + +[nhew] +Name=工人 +EditorSuffix= (血精灵) +Hotkey=W +Tip=训练工人(|cffffcc00W|r) +Ubertip="基本的工人单位。能建造建筑物和进行修理。" + +[nspc] +Name=支柱 + +[ngbl] +Name=地精爆破工 + +[ndkw] +Name=异次元大门 +EditorSuffix= (面向最南方) + +[ndke] +Name=异次元大门 +EditorSuffix= (面向最南方) + +[nico] +Name=寒冰王座方尖塔 + +[net1] +Name=能量之塔 +Hotkey=E +Tip=建造能量之塔(|cffffcc00E|r) +Ubertip="射出能量之箭,擅长于对付敌人的空中单位,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[net2] +Name=高级能量之塔 +Hotkey=U +Tip=升级高级能量之塔(|cffffcc00U|r) +Ubertip="增加能量之箭的攻击力,擅长于对付敌人的空中单位,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbt1] +Name=巨石之塔 +Hotkey=B +Tip=建造巨石之塔(|cffffcc00B|r) +Ubertip="投掷出能造成溅射伤害的巨石,擅长于对付地面单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nbt2] +Name=高级巨石之塔 +Hotkey=U +Tip=升级高级巨石之塔(|cffffcc00U|r) +Ubertip="增加石头的攻击力,擅长于对付地面单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nft1] +Name=火焰之塔 +Hotkey=F +Tip=建造火焰之塔(|cffffcc00F|r) +Ubertip="能射出灼热的火焰。擅长于毁灭靠近的敌人。对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nft2] +Name=高级火焰之塔 +Hotkey=U +Tip=升级高级火焰之塔(|cffffcc00U|r) +Ubertip="增加喷射火焰的攻击力,擅长于毁灭靠近的敌人,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndt1] +Name=冰霜之塔 +Hotkey=C +Tip=建造冰霜之塔(|cffffcc00C|r) +Ubertip="射出冰片进行攻击,擅长于减慢敌人的速度,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndt2] +Name=高级冰霜之塔 +Hotkey=U +Tip=升级高级冰霜之塔(|cffffcc00U|r) +Ubertip="加快发射冰片的速度,擅长于减慢敌人的速度,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntt1] +Name=死亡之塔 +Hotkey=D +Tip=建造死亡之塔(|cffffcc00D|r) +Ubertip="射出致命的能量箭,擅长于实施大规模的伤害,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntx2] +Name=高级死亡之塔 +Hotkey=U +Tip=升级高级死亡之塔(|cffffcc00U|r) +Ubertip="射出致命的能量箭,擅长于实施大规模的伤害,对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfrt] +Name=水果店 +Tip=建造水果店 +Ubertip="你一生中所见过的最不可思议的水果店。" + +[hprt] +Name=传送门 +Tip=开放传送门 +Ubertip="打开传送门。" + +[nzlc] +Name=巫妖王 +Tip=巫妖王 +Ubertip="这就是巫妖王,事实的确是如此的,难道你不相信我么?" +EditorSuffix= (过场动画战役单位) + +[nchp] +Name=牧师 +Hotkey=C +Tip=训练牧师(|cffffcc00C|r) +Ubertip="支持性的魔法单位。能施放医疗,驱逐魔法和心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhym] +Name=术士 +Hotkey=Y +Tip=训练术士(|cffffcc00Y|r) +Ubertip="多才多艺的魔法单位。能施放减速,冲击波和变形魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nzin] +Name=地区显示 +Tip=地区显示 +Ubertip="地区显示" +EditorSuffix= (自定义战役) + +[nbse] +Name=复活石 +Tip=创建复活石 +Ubertip="" +EditorSuffix= (面向东南的) + +[nbsw] +Name=复活石 +Tip=创建复活石 +Ubertip="" +EditorSuffix= (面向西南的) diff --git a/share/mpq/units/units/campaignupgradefunc.txt b/share/mpq/units/units/campaignupgradefunc.txt new file mode 100644 index 0000000..13b97b5 --- /dev/null +++ b/share/mpq/units/units/campaignupgradefunc.txt @@ -0,0 +1,26 @@ +//naga siren training +[Rnsw] +Art=ReplaceableTextures\CommandButtons\BTNSirenAdept.blp,ReplaceableTextures\CommandButtons\BTNSirenMaster.blp +Buttonpos=0,2 + +[Rnen] +Art=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Buttonpos=0,2 + +[Rnsi] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagic.blp +Buttonpos=1,2 + +[Rnat] +Art=ReplaceableTextures\CommandButtons\BTNNagaWeaponUp1.blp,ReplaceableTextures\CommandButtons\BTNNagaWeaponUp2.blp,ReplaceableTextures\CommandButtons\BTNNagaWeaponUp3.blp +Buttonpos=0,2 + + +[Rnam] +Art=ReplaceableTextures\CommandButtons\BTNNagaArmorUp1.blp,ReplaceableTextures\CommandButtons\BTNNagaArmorUp2.blp,ReplaceableTextures\CommandButtons\BTNNagaArmorUp3.blp +Buttonpos=1,2 + +[Rnsb] +Art=ReplaceableTextures\CommandButtons\BTNNagaBurrow.blp +Buttonpos=2,2 + diff --git a/share/mpq/units/units/campaignupgradestrings.txt b/share/mpq/units/units/campaignupgradestrings.txt new file mode 100644 index 0000000..b9fec3d --- /dev/null +++ b/share/mpq/units/units/campaignupgradestrings.txt @@ -0,0 +1,35 @@ +[Rnsw] +Name=娜迦海妖专家训练,娜迦海妖大师训练 +Tip=研究娜迦海妖专家训练(|cffffcc00N|r),研究娜迦海妖大师训练(|cffffcc00N|r) +Ubertip="增加娜迦海妖的魔力容量、魔力回复速率、生命值,并给予她们施放霜冻护甲的能力。","增加娜迦海妖的魔力容量、魔力回复速率、生命值并给予她们施放飓风的能力。" +Hotkey=N,N + +[Rnen] +Name=诱捕 +Tip=研究诱捕(|cffffcc00N|r) +Ubertip="使娜迦暴徒能够使用诱捕技能。能将一个目标空中单位固定在地面上,使其不能移动。被诱捕的空中单位可以当作地面单位进行攻击。" +Hotkey=N + +[Rnsi] +Name=驱逐魔法 +Tip=研究驱逐魔法(|cffffcc00B|r) +Ubertip="给予飞蛇驱散敌单位正面效果的魔法,及友方单位负面效果魔法的能力。|n对召唤单位造成伤害。" +Hotkey=B + +[Rnam] +Name=珊瑚鳞甲,壳质鳞甲,尖刺鳞甲 +Tip=升级到珊瑚鳞甲(|cffffcc00C|r),升级壳质鳞甲(|cffffcc00C|r),升级到尖刺鳞甲(|cffffcc00C|r) +Ubertip="增加娜迦族攻击单位的防御力。","进一步增加娜迦攻击单位的防御力。","进一步增加娜迦攻击单位的防御力。" +Hotkey=C,C,C + +[Rnat] +Name=珊瑚剑,壳质剑,尖刺剑 +Tip=升级到珊瑚剑(|cffffcc00B|r),升级到壳质剑(|cffffcc00B|r),升级到尖刺剑(|cffffcc00B|r) +Ubertip="增加娜迦族攻击单位的攻击力。","进一步增加娜迦族攻击单位的攻击。","增加娜迦族攻击单位的攻击。" +Hotkey=B,B,B + +[Rnsb] +Name=潜水 +Tip=研究潜水(|cffffcc00U|r) +Ubertip="给予娜迦暴徒和飞龙潜入水中,隐去行踪的能力。" +Hotkey=U diff --git a/share/mpq/units/units/commandfunc.txt b/share/mpq/units/units/commandfunc.txt new file mode 100644 index 0000000..c3c3ebf --- /dev/null +++ b/share/mpq/units/units/commandfunc.txt @@ -0,0 +1,84 @@ +[CmdMove] +Art=CommandMove +Buttonpos=0,0 + +[CmdAttack] +Art=CommandAttack +Buttonpos=3,0 + +[CmdAttackGround] +Art=CommandAttackGround +Buttonpos=3,1 + +[CmdBuild] +Art=CommandBasicStruct +Buttonpos=0,2 + +[CmdBuildHuman] +Art=CommandBasicStructHuman +Buttonpos=0,2 + +[CmdBuildOrc] +Art=CommandBasicStructOrc +Buttonpos=0,2 + +[CmdBuildNightElf] +Art=CommandBasicStructNightElf +Buttonpos=0,2 + +[CmdBuildUndead] +Art=CommandBasicStructUndead +Buttonpos=0,2 + +[CmdCancel] +Art=CommandCancel +ButtonPos=3,2 + +[CmdCancelBuild] +Art=CommandCancel +ButtonPos=3,2 + +[CmdCancelTrain] +Art=CommandCancel +ButtonPos=3,2 + +[CmdCancelRevive] +Art=CommandCancel +ButtonPos=3,2 + +[CmdHoldPos] +Art=CommandHoldPosition +Buttonpos=2,0 + +[CmdPatrol] +Art=CommandPatrol +Buttonpos=0,1 + +[CmdPurchase] +Art=CommandPurchase +Buttonpos=0,0 + +[CmdRally] +Art=CommandRally +Buttonpos=3,1 +PlacementModel=UI\Feedback\RallyPoint\RallyPoint.mdl + +[CmdSelectSkill] +Art=CommandNewSkill +Buttonpos=3,1 + +[CmdStop] +Art=CommandStop +Buttonpos=1,0 + +//[CmdUnivAgi] +//Art= +//Buttonpos=2,0 + +//[CmdUnivInt] +//Art= +//Buttonpos=1,0 + +//[CmdUnivStr] +//Art= +//Buttonpos=0,0 \ No newline at end of file diff --git a/share/mpq/units/units/commandstrings.txt b/share/mpq/units/units/commandstrings.txt new file mode 100644 index 0000000..8dbaa4e --- /dev/null +++ b/share/mpq/units/units/commandstrings.txt @@ -0,0 +1,372 @@ +[CmdMove] +Tip=移动(|cffffcc00M|r) +Ubertip="命令你的部队去目标区域,在移动的过程中对于敌人的攻击他们将不予理睬。如果将该命令指向某个部队,则你的部队会跟着这个部队移动。" +Hotkey=M + +[CmdAttack] +Tip=攻击(|cffffcc00A|r) +Ubertip="命令你的部队去目标区域,在移动过程中他们会攻击遇到的所有敌人。如果将该命令指向某个单位,那么你的部队会忽视其他单位的攻击而一直猛攻那个单位,直到它被完全摧毁。" +Hotkey=A + +[CmdAttackGround] +Tip=攻击地面(|cffffcc00G|r) +Ubertip="命令你的部队对于某个区域进行强攻,直到他们被施放了停止命令或者其他一个命令,他们才会停止进攻。" +Hotkey=G + +[CmdBuild] +Tip=建造建筑物(|cffffcc00B|r) +Ubertip="能显示出当前你所能建造的建筑物。" +Hotkey=B + +[CmdBuildHuman] +Tip=建造建筑物(|cffffcc00B|r) +Ubertip="能显示出当前你所能建造的建筑物。" +Hotkey=B + +[CmdBuildOrc] +Tip=建造建筑物(|cffffcc00B|r) +Ubertip="能显示出当前你所能建造的建筑物。" +Hotkey=B + +[CmdBuildNightElf] +Tip=建造建筑物(|cffffcc00B|r) +Ubertip="打开一个你所能建造的建筑物的列表。" +Hotkey=B + +[CmdBuildUndead] +Tip=召唤建筑物(|cffffcc00B|r) +Ubertip="打开一个你所能建造的建筑物的列表。" +Hotkey=B + +[CmdBuildNaga] +Tip=建造建筑物(|cffffcc00B|r) +Ubertip="能显示出当前你所能建造的建筑物。" +Hotkey=B + +[CmdCancel] +Tip=取消(|cffffcc00ESC|r) +Ubertip="能让你取消未执行完毕的操作以选择另外一个。" +Hotkey=512 + +[CmdCancelBuild] +Tip=取消(|cffffcc00ESC|r) +Ubertip="能让你取消未执行完毕的操作以选择另外一个。" +Hotkey=512 + +[CmdCancelTrain] +Tip=取消(|cffffcc00ESC|r) +Ubertip="停止训练当前的单位。" +Hotkey=512 + +[CmdCancelRevive] +Tip=取消(|cffffcc00ESC|r) +Ubertip="停止复活当前的单位。" +Hotkey=512 + +[CmdHoldPos] +Tip=保持原位(|cffffcc00H|r) +Ubertip="让你的部队位于原地不动,他们能对进入射程范围内的敌人进行攻击。被施放了该命令后,你的单位不会去追捕敌人的单位也不会去进攻敌人的远程攻击单位。" +Hotkey=H + +[CmdPatrol] +Tip=巡逻(|cffffcc00P|r) +Ubertip="让你的部队在指定的两地之间进行巡逻。一旦敌人进入其射程,他们就会进行攻击。如果将巡逻命令用在某个目标单位上,那么被命令巡逻的单位就会模仿目标单位的动作。" +Hotkey=P + +[CmdPurchase] +Tip=出售物品(|cffffcc00S|r) +Hotkey=s + +[CmdRally] +Tip=设集结点(|cffffcc00Y|r) +Ubertip="让生产出来的单位自动走到指定的地点。 你可以将集结点设在金矿或者树木上这样以便让农民出来以后自动进行采集资源。你也可以将集结点设在某个单位身上,这样新单位出来以后就会自动跟着那个单位。" +Hotkey=Y + +[CmdSelectSkill] +Tip=英雄技能(|cffffcc00O|r) +Ubertip="打开技能菜单,以便让你将点数来分配在英雄的各个技能上。" +Hotkey=O + +[CmdStop] +Tip=停止(|cffffcc00S|r) +Ubertip="无论你的单位先前得到什么命令,都可以让他们停下来。不过他们随后也会对进入射程的敌人进行攻击或者追捕。" +Hotkey=S + +//[CmdUnivAgi] +//Tip=Increase |cffffcc00A|rgility +//Hotkey=A + +//[CmdUnivInt] +//Tip=Increase |cffffcc00I|rntelligence +//Hotkey=I + +//[CmdUnivStr] +//Tip=Increase |cffffcc00S|rtrength +//Hotkey=S + +[Errors] +Emptycontrolgroup=不能形成一个空的编队。 +Invalidcontrolgroup=不能将不是自己的单位编入编队中。 +Nonunitincontrolgroup=控制组只可以由单位组成。 +Nofood=建造更多的农场来增加你的人口。,建造更多的地洞来增加你的人口。,召唤更多的通灵塔来增加你的人口。,建造更多的月亮井来增加你的人口。 + +Maxsupply=达到人口上限,无法继续生产单位。 +Nogold=黄金不够。 +Nolumber=木材不够。 +Nomana=魔法值不够。 +Cooldown=魔法尚未恢复。 + +Noroom=没有剩余的空间了。 +Canttransport=不能装载该单位。 +Cantdevour=不能吞噬该单位。 +Cantcyclone=不能在该单位上施放飓风魔法。 +Cantspiritwolf=不能在该单位上施放野兽幽魂魔法。 +Cantpossess=不能在该单位上施放占据魔法。 +Cantmanaburn=不能在该单位上施放法力燃烧魔法。 +Onlyattackers=只对进攻型单位有效。 + +Notentangledmine=不能使用一个被缠绕的金矿。 +Notblightedmine=不能使用一个被闹鬼的金矿。 +Alreadyentangled=这金矿已经被缠绕了。 +Alreadyblightedmine=这金矿已经被闹鬼了。 +Targetwispresources=必须以一棵树木或者一个缠绕金矿为目标。 +Targetblightedmine=必须以一个闹鬼金矿为目标。 +Entangleminefirst=必须先将金矿缠绕。 +Blightminefirst=必须先让其变成一个闹鬼金矿。 +Entangledminefull=那个金矿不需要更多的小精灵。 +Blightringfull=那个金矿不需要更多的侍僧。 +Acolytealreadymining=选中的侍僧已经在采矿了。 +Nototherplayersmine=不能使用已经被别人占据的金矿。 +Targgetmine=必须以一个金矿作为目标。 +Targgetresources=必须以资源来作为目标。 + +Humanbuilding=必须以一个人族的建筑物作为目标。 +Undeadbuilding=必须以不死族的一个建筑物作为目标。 +Underconstruction=该建筑物正在被建造。 +Alreadyrebuilding=该建筑物正在被建造。 +Creeptoopowerful=这只生物威力太强了。 +Hibernating=该单位已经处于休眠状态了。 +Magicleashed=该单位已经被束缚。 +Immunetomagic=那单位对魔法免疫。 +Holybolttarget=必须以友军活生生的部队或是敌方不死部队作为目标。 +Deathcoiltarget=必须以友军活生生的部队或是敌方不死部队作为目标。 +Dispelmagictarget=必须以一个单位或者一片荒芜之地作为目标。 + +Treeoccupied=该树已经被占用,请选择其他的树木。 +Coupletarget=不能和该单位合为一体。 +Mounthippogryphtarget=必须以一头角鹰兽作为目标。 +Archerridertarget=必须以一个弓箭手作为目标。 + +Cantsee=必须先探测那里。 +Cantplace=不能在那里进行建造。 +Outofbounds=目标区域已超出地图边界。 +Offblight=必须在荒芜之地上召唤建筑物。 +Tooclosetomine=不能建造在离金矿过近的地方。 +Tooclosetohall=不能在离城镇大厅过近的地方创建一个金矿。 +Notonshoreline=不能在离开海岸线的地方建造。 +Buildingblocked=该新生产出的单位没有地方被放置。 +Teleportfail=该单位不能被传送。 +Stumpblocked=什么东西封住了那个树桩。 +Cantland=不能在那里着陆。 +Cantroot=不能在那里扎根。 +Cantrootunit=该单位不能在进行扎根了。 +Mustroottoentangle=必须在金矿附近进行扎根。 +Mustbeclosertomine=必须在金矿附近进行扎根。 + +Minenotentangleable=该金矿不能被缠绕。 +Notinrange=目标不在射程之内。 +UnderRange=目标不在射程之内。 + +Notthisunit=不能以该单位作为目标。 +Targetunit=必须以某个单位来作为目标。 + +Targetstructuretree=必须以树或者建筑物作为目标。 +Targetground=必须以地面单位作为目标。 +Targetair=必须以空中单位作为目标。 +Targetstructure=必须以建筑物作为目标。 +Targetward=必须以一个守卫来作为目标。 +Targetitem=必须以一件物品来作为目标。 +Targettree=必须以树木作为目标。 +Targetrepair=无法以建筑和机械单位为目标。 +Targetbridge=必须以桥梁作为目标。 +Targetnaval=必须以一个海上单位为目标。 + +Targetowned=必须以你自己的单位作为目标。 +Targetally=必须以友军的单位作为目标。 +Targetneutral=必须以一个中立单位作为目标。 +Targetenemy=必须以敌军的单位作为目标。 +Targetcontrol=必须以你所能控制的单位作为目标。 + +Targethero=必须以英雄作为目标。 +Targetenemyhero=必须以敌人的英雄作为目标。 +Targetcorpse=必须以尸体作为目标。 +Targetfleshycorpse=必须以血肉尸体作为目标。 +Targetbonecorpse=必须以骨骼尸体作为目标。 +Targetundead=必须以不死单位作为目标。 +Targetmechanical=必须以机械单位作为目标。 +Targetmoveable=必须以可移动单位作为目标。 +Targetorganicground=必须以非机械地面单位作为目标。 + +Targetancient=必须以古树作为目标。 +Targetarmoredtransport=必须以装甲运输车作为目标。 + +Targetmanauser=必须以拥有魔法的单位作为目标。 +Targetbunkerunit=必须以苦工作为目标。 +Targetwisp=必须以小精灵作为目标。 + +Targetacolyte=必须以侍僧作为目标。 +Targetpit=必须以牺牲深渊作为目标。 +Needemptytree=该树已经被一只猫头鹰占有。 +Needowltree=该树没有被猫头鹰占有。 + +Cantfindcorpse=附近没有可使用的尸体。 +Cantfindfriendlycorpse=附近没有友军单位的尸体。 +Nounits=不能以单位作为目标。 +Noground=不能以地面单位作为目标。 +Noair=不能以空中单位作为目标。 +Nostructure=不能以建筑物作为目标。 +Noward=不能以守卫作为目标。 +Noitem=不能以物品作为目标。 +Nodebris=不能以残骸作为目标。 +Notree=不能以树木作为目标。 +Nowall=不能以墙壁作为目标。 +Nobridge=不能以桥梁作为目标。 +Notfrozenbldg=目标建筑物已经被冰冻住。 +Nonaval=不能以海上单位为目标。 + +Nottownhall=必须以友军的城镇大厅作为目标。,必须以友军的大厅作为目标。,必须以友军的城镇大厅作为目标。,必须以友军的城镇大厅作为目标。 +Notownportalhalls=没有友军的城镇大厅来作为目标让你传送过去。,没有友军的大厅作为目标来让你传送过去。,没有友军的城镇大厅作为目标来让你传送过去。,没有友军的城镇大厅作为目标让你传送过去。 +Notself=不能以你自己作为目标。 +Notowned=不能以自己的单位作为目标。 +Notfriendly=不能以友军的单位作为目标。 +Notneutral=不能以中立单位作为目标。 +Notenemy=不能以敌人的单位作为目标。 +Notcargo=无法以建筑或运输船内的单位为目标。 +Nothidden=该目标在地图上不可见。 +Nothiddenitem=不能以携带的物品作为目标。 + +Notinvulnerable=目标是无敌的。 +Nohero=不能以英雄作为目标。 +Notcorpse=目标必须是有生单位。 +Notfleshycorpse=不能以血肉尸体作为目标。 +Notbonecorpse=不能以骨骼尸体作为目标。 +Notmechanical=必须以非机械单位作为目标。 +Notorganic=不能以非机械单位作为目标。 +Notdisabled=魔法施放者不能进行移动。 + +Cantattackloc=不能进攻那里。 +Canttargetloc=不能以那里作为目标。 + +Inventoryfull=物品栏已满。 +Inventoryinteract=请选择一个带有物品栏的单位。 +NeedInventory=只有带有物品栏的单位才能捡起该物品。 +Needretrainablehero=只有学习了魔法技能的英雄才能使用该物品。 +Neednearbyhero=一个英雄必须在附近。 +Neednearbypatron=一个有效的支持目标必须在附近。 + +Notsapper=不能以地精工兵作为目标。 +Notancient=不能以古树作为目标。 +Notsummoned=不能以召唤出来的单位作为目标。 +Nottransport=不能以运输机或者碉堡作为目标。 +Notunsummoned=该单位正在被反召唤。 +Notillusion=不能以幻象作为目标。 +Notmorphing=不能以变形单位作为目标。 +Notdot=不能以猛禽德鲁伊作为目标。 + +Illusionscantharvest=幻象不能采集资源。 +Illusionscantpickup=幻象不能捡起物品。 + +Cantpolymorphunit=该单位对变形魔法免疫。 + +Notundead=不能以不死单位作为目标。 +Heromaxed=英雄已达到最高等级。 +HPmaxed=英雄的生命值是满的。 +Manamaxed=魔法值已满。 +HPmanamaxed=生命值和魔法值都已满。 + +UnitHPmaxed=生命值已满。 +UnitManaMaxed=魔法值已满。 +RepairHPmaxed=目标并未受到伤害。 + +Alreadybeinghealed=目标正被医疗。 +Alreadybeingrepaired=目标正在被修理。 +Pitalreadysacrificing=牺牲深渊正在牺牲一个侍僧。 +Outofstock=没有库存了 +Cooldownstock=没有库存了 +Cantdrop=物品必须放于物品栏中。 +Cantpawn=物品不能被抵押掉。 + +Calltoarms=找不到任何农民。 +Calltoarmspeasant=没有找到可以将农民转换成民兵的城镇大厅。 +Backtowork=找不到任何民兵。 +Backtoworkmilitia=没有找到可以将民兵转换成农民的城镇大厅。 +BattleStations=找不到任何苦工。 + +Replaceme=请用有具体意义的东西来换掉这条错误的消息。 + +Notliquidfirebldg=目标建筑物已被汽油弹击中。 +Notethereal=气态单位只可以由法师和魔法攻击才能有效。 + +Needstealbuff=目标单位身上没有可盗取的东西。 + +Needmeleeattacker=必须以近战单位为目标。 +Needrangedattacker=必须以远程攻击单位为目标。 +Needspecialattacker=必须以特殊的攻击者为目标。 +Needattacker=必须以攻击单位为目标。 +Needcaster=必须以魔法施放单位为目标。 +Needattackerorcaster=必须以攻击单位或者魔法施放单位为目标。 + +Nopreservationtarget=没有可用的建筑物将目标单位传送过去。 + +Canttransformitem=不能转换这个物品。 + +Notmocunit=这个目标已经中了烈焰风暴技能。 + +Cantimpale=不能刺穿该单位。 + +Needpositivebuff=必须以带有正面效果魔法的敌方单位为目标。 +Needposbufforsummoned=必须以带有正面效果魔法的敌方单位或者召唤出来的单位为目标。 +Neednegativebuff=必须以带有负面效果魔法的友军单位为目标。 + +Absorbmana=没有足够的魔法来吸收。 + +Canttakeitem=不能捡起该物品。 +Cantdropitem=不能丢掉该物品。 +Cantuseitem=不能使用该物品。 +Notpowerup=不能使用能量上升。 + +Itemcooldown=该物品正在处于魔法施放间隔期。 + +Cantfindcoupletarget=不能找到一对目标。 + +Notdisabledinventory=该单位的物品栏是无效的。 + +Resistantskin=该单位具有防御性外壳。 + +Notinvulnerablespell=不能使用无敌的魔法和物品。 + +Needsummoned=目标必须是召唤单位。 + +Cantsubmergethere=无法在此潜水。 + +Alreadydoomed=该单位已遭灭顶之灾。 + +//[AdvisorStrings] +Unitattack=已经加入了战斗。 +Townattack=基地正在被围攻! +Herodies=%s已经于战斗中阵亡。 +Allyunderattack=%s正遭受攻击。 +Allytownattack=%s的基地正遭受围攻! +Allyminimapping=%s已经标好了路。 +Goldandlumberfromally=收到%d黄金和%d木材,从%s那里。 +Goldfromally=收到%d黄金,从%s那里。 +Lumberfromally=收到%d木材,从%s那里。 +Goldminedestroyed=一个金矿已经倒塌。,一个金矿已经倒塌。,我们的金矿资源已经被采空。,金矿已经被采空。 +Upkeeplevel=维修费用等级 %d。 +Herokilledhero=%s被%s击败。 +Herodeath=%s(%s等级 %d)已经阵亡。,%s(%s等级 %d)已经阵亡。,%s(%s等级 %d)已经阵亡。,%s(%s等级 %d)已经阵亡。 +Goldminelow=金矿快要采空了。,金矿快要采空了。,金矿快要采空了。,金矿快要采空了。 +Controlgranted=你现在可以控制%s的单位了。 +Controlrevoked=你已经丧失了对%s单位的控制权 。 + +// UI Strings are now all defined in GlobalStrings.fdf diff --git a/share/mpq/units/units/commonabilityfunc.txt b/share/mpq/units/units/commonabilityfunc.txt new file mode 100644 index 0000000..dcf249f --- /dev/null +++ b/share/mpq/units/units/commonabilityfunc.txt @@ -0,0 +1,121 @@ +//Allied building +[Aall] + +//purchase item +[Apit] +Effectsound=ReceiveGold + +//Burrow Detection (Fliers) +[Abdt] + +[Amou] +Art=ReplaceableTextures\CommandButtons\BTNTemp.blp +Unart=ReplaceableTextures\CommandButtons\BTNTemp.blp +Buttonpos=1,1 +Unbuttonpos=1,1 +Order=mount +Unorder=dismount + +[AHer] +Casterart=Abilities\Spells\Other\Levelup\LevelupCaster.mdl + +[Amov] +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialattach=origin + +[Ahar] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Order=harvest + +[Ahrl] +Order=harvest +// Lumber Harvest uses button art and position from the [Ahar] Harvest ability. + +[Aawa] +Targetart=Abilities\Spells\Other\Awaken\Awaken.mdl +Order=awaken + +[Arev] +Targetart=Abilities\Spells\Human\ReviveHuman\ReviveHuman.mdl,Abilities\Spells\Orc\ReviveOrc\ReviveOrc.mdl,Abilities\Spells\Undead\ReviveUndead\ReviveUndead.mdl,Abilities\Spells\NightElf\ReviveNightElf\ReviveNightElf.mdl,Abilities\Spells\Demon\ReviveDemon\ReviveDemon.mdl +Order=revive + +[Aque] +Targetart=Abilities\Spells\Human\ReviveHuman\ReviveHuman.mdl,Abilities\Spells\Orc\ReviveOrc\ReviveOrc.mdl,Abilities\Spells\Undead\ReviveUndead\ReviveUndead.mdl,Abilities\Spells\NightElf\ReviveNightElf\ReviveNightElf.mdl,Abilities\Spells\Demon\ReviveDemon\ReviveDemon.mdl +Order=revive + +// passive 'detector' ability +[Adet] +Buttonpos=0,2 +Casterart= + +[Adt1] +Buttonpos=0,2 + +[Adta] +Art=ReplaceableTextures\CommandButtons\BTNReveal.blp +Buttonpos=0,0 + +[Xbdt] +Effectart=Abilities\Spells\Other\Andt\Andt.mdl + +[Bdet] +Buffart=ReplaceableTextures\CommandButtons\BTNDustOfAppearance.blp +Targetart= + +[Bvul] +Buffart=ReplaceableTextures\CommandButtons\BTNInvulnerable.blp +Targetart=Abilities\Spells\Human\DivineShield\DivineShieldTarget.mdl +Targetattach=origin + +[Bspe] +Buffart=ReplaceableTextures\CommandButtons\BTNBoots.blp +Targetart=Abilities\Spells\Items\AIsp\SpeedTarget.mdl + +[Bfro] +Buffart=ReplaceableTextures\CommandButtons\BTNFrost.blp +Targetart=Abilities\Spells\Other\FrostDamage\FrostDamage.mdl + +// peon/peasant repair ability +[Arep] +Art=ReplaceableTextures\CommandButtons\BTNRepairOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNRepairOff.blp +Buttonpos=1,1 +Unbuttonpos=1,1 +Order=repair +Orderon=repairon +Orderoff=repairoff +Animnames=stand,work + +// Stun buff +[BSTN] +Buffart=ReplaceableTextures\CommandButtons\BTNStun.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +// Pause buff +[BPSE] +Buffart=ReplaceableTextures\CommandButtons\BTNStun.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +[ARal] +Art=ReplaceableTextures\CommandButtons\BTNRallyPoint.blp,ReplaceableTextures\CommandButtons\BTNOrcRallyPoint.blp,ReplaceableTextures\CommandButtons\BTNRallyPointUndead.blp,ReplaceableTextures\CommandButtons\BTNRallyPointNightElf.blp +Buttonpos=3,1 + +[AEpa] +Art=ReplaceableTextures\CommandButtons\BTNSearingArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSearingArrowsOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSearingArrows.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Weapons\SearingArrow\SearingArrowMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=poisonarrowstarg +Orderon=poisonarrows +Orderoff=unpoisonarrows +Animnames=attack diff --git a/share/mpq/units/units/commonabilitystrings.txt b/share/mpq/units/units/commonabilitystrings.txt new file mode 100644 index 0000000..0f9aaa2 --- /dev/null +++ b/share/mpq/units/units/commonabilitystrings.txt @@ -0,0 +1,178 @@ +//allied building +[Aall] +Name=共享商店,联盟建筑物。 + +//burrow detection, fliers +[Abdt] +Name=地洞探测 +EditorSuffix= (飞行单位,废弃的) + +//purchase (shop) +[Apit] +Name=商店购买物品 + +[Amou] +Name=骑乘 +Tip=变形(|cffffcc00R|r) +Untip=取消变形(|cffffcc00R|r) +Ubertip="将英雄变成另外一种形态。" +Unubertip="将英雄变回原来的形态。" +Hotkey=R +Unhotkey=R + +[Ahar] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="从金矿处采集黄金资源,从树木上砍伐木材资源。" +Untip=返送资源(|cffffcc00E|r) +Unubertip="将携带的资源送往自己的城镇大厅。" +Hotkey=G +Unhotkey=E +EditorSuffix= (黄金和木材) + +[Ahrl] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="从树上采集所需的木材。" +Untip=返送资源(|cffffcc00E|r) +Unubertip="将携带的资源送往大墓地或者坟场。" +Hotkey=G +Unhotkey=E +EditorSuffix= (采集木材) + +[Arev] +Name=复活英雄 + +[Aawa] +Name=立刻复活英雄 + +// passive 'detector' ability +[Adet] +Name=探测者 + +[Adt1] +Name=探测者 + +[Adta] +Name=显示 +Tip=显示(|cffffcc00R|r) +Hotkey=R + +[Bdet] +Bufftip=被探测到 +Buffubertip="该单位被探测到了,这就意味着敌人可以看见你的单位。" + +[Bvul] +Bufftip=无敌的 +Buffubertip="该单位是无敌的,所以任何的攻击和魔法都对其无效。" + +[Bspe] +Bufftip=速度加快 +Buffubertip="该单位速度被加快了,所以移动起来要比其他一般的单位要快。" + +[Bfro] +Bufftip=被减速的 +Buffubertip="该单位速度被减慢了,所以移动起来要比其他一般的单位要慢。" + +// peon/peasant repair ability +[Arep] +Name=修理 +Tip=修理(|cffffcc00R|r) +Ubertip="修理建筑物和机械单位,需要消耗资源。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +// Abilities that need names in the editor +[AEpa] +Name=毒箭 +Tip=毒箭(|cffffcc00R|r)- [|cffffcc00等级 1|r],毒箭(|cffffcc00R|r) - [|cffffcc00等级 2|r],毒箭(|cffffcc00R|r) - [|cffffcc00等级 3|r] +Ubertip="增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +Researchtip="学习毒箭(|cffffcc00R|r)- [|cffffcc00等级 %d|r]" +Researchubertip="通过附加的火焰伤害来增加女祭司的攻击力。|n|n|cffffcc00等级 1|r -增加点伤害。|n|cffffcc00等级 2|r –增加 点伤害。 |n|cffffcc00等级 3|r – 增加点伤害。" +Researchhotkey=R + +[AEbu] +Name=建造 (暗夜精灵族) + +[AGbu] +Name=建造(娜迦) + +[AHbu] +Name=建造(人族) + +[AHer] +Name=英雄 + +[ANbu] +Name=建造(中立) + +[AObu] +Name=建造(兽族) + +[ARal] +Name=集结 + +[AUbu] +Name=建造(不死族) + +[Aalr] +Name=警报 + +[Aatk] +Name=攻击 + +[Afih] +Name=开火 (人族) + +[Afin] +Name=开火 (暗夜精灵族) + +[Afio] +Name=开火 (兽族) + +[Afir] +Name=开火 + +[Afiu] +Name=开火 (不死族) + +[Aloc] +Name=蝗虫 + +[Amov] +Name=移动 + +[Atdp] +Name=放下驾驶员 + +[Atlp] +Name=装载驾驶员 + +[Attu] +Name=小塔 + +// Stun buff +[BSTN] +Bufftip=被击晕的 +Buffubertip="该单位被击晕了,所以不能移动,攻击和施放魔法。" + +// Pause buff +[BPSE] +Bufftip=被击晕的 +Buffubertip="该单位不能移动。" +EditorSuffix= (暂停) + +[Xbdt] +EditorName=显示 (效果) + +[Xbli] +EditorName=荒芜之地(效果) + +[Xdis] +EditorName=英雄 驱散 (效果) diff --git a/share/mpq/units/units/destructabledata.slk b/share/mpq/units/units/destructabledata.slk new file mode 100644 index 0000000..de251ef --- /dev/null +++ b/share/mpq/units/units/destructabledata.slk @@ -0,0 +1,13892 @@ +ID;PWXL;N;E +B;X57;Y248;D0 +C;X1;Y1;K"DestructableID" +C;X2;K"category" +C;X3;K"tilesets" +C;X4;K"tilesetSpecific" +C;X5;K"file" +C;X6;K"lightweight" +C;X7;K"fatLOS" +C;X8;K"texID" +C;X9;K"texFile" +C;X10;K"comment" +C;X11;K"Name" +C;X12;K"EditorSuffix" +C;X13;K"doodClass" +C;X14;K"useClickHelper" +C;X15;K"onCliffs" +C;X16;K"onWater" +C;X17;K"canPlaceDead" +C;X18;K"walkable" +C;X19;K"cliffHeight" +C;X20;K"targType" +C;X21;K"armor" +C;X22;K"numVar" +C;X23;K"HP" +C;X24;K"occH" +C;X25;K"flyH" +C;X26;K"fixedRot" +C;X27;K"selSize" +C;X28;K"minScale" +C;X29;K"maxScale" +C;X30;K"canPlaceRandScale" +C;X31;K"maxPitch" +C;X32;K"maxRoll" +C;X33;K"radius" +C;X34;K"fogRadius" +C;X35;K"fogVis" +C;X36;K"pathTex" +C;X37;K"pathTexDeath" +C;X38;K"deathSnd" +C;X39;K"shadow" +C;X40;K"colorR" +C;X41;K"colorG" +C;X42;K"colorB" +C;X43;K"showInMM" +C;X44;K"useMMColor" +C;X45;K"MMRed" +C;X46;K"MMGreen" +C;X47;K"MMBlue" +C;X48;K"buildTime" +C;X49;K"repairTime" +C;X50;K"goldRep" +C;X51;K"lumberRep" +C;X52;K"UserList" +C;X53;K"InBeta" +C;X54;K"version" +C;X55;K"selectable" +C;X56;K"selcircsize" +C;X57;K"portraitmodel" +C;X1;Y2;K"ATtr" +C;X2;K"D" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Terrain\AshenTree\AshenTree" +C;X6;K1 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\AshenTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_ASHENVALE_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K5 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K54 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y3;K"BTtw" +C;X2;K"D" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Terrain\BarrensTree\BarrensTree" +C;X6;K1 +C;X7;K0 +C;X8;K33 +C;X9;K"ReplaceableTextures\BarrensTree\BarrensTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_BARRENS_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K75 +C;X46;K50 +C;X47;K5 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y4;K"CTtr" +C;X2;K"D" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Terrain\AshenTree\AshenTree" +C;X6;K1 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\FelwoodTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_FELWOOD_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K5 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K48 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y5;K"FTtw" +C;X2;K"D" +C;X3;K"F,Q" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronFallTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_FALL_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K110 +C;X46;K60 +C;X47;K10 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y6;K"LOcg" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Props\Cage\Cage" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Cage" +C;X11;K"WESTRING_DEST_CAGE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowCage" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K80 +C;X57;K"Doodads\LordaeronSummer\Props\Cage\Cage.mdl" +C;X1;Y7;K"LTba" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Barricade\Barricade" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Barricade" +C;X11;K"WESTRING_DOOD_LOBA" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K80 +C;X57;K"Doodads\LordaeronSummer\Terrain\Barricade\Barricade0.mdl" +C;X1;Y8;K"LTcr" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Crates\Crates" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Crates" +C;X11;K"WESTRING_DOOD_LOCS" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K2 +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"CrateDeath" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K60 +C;X57;K"Buildings\Other\CratesUnit\CratesUnit.mdl" +C;X1;Y9;K"LTbr" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Buildings\Other\BarrelsUnit0\BarrelsUnit0" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Barrel" +C;X11;K"WESTRING_DEST_BARREL" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1.1 +C;X29;K1.5 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"CrateDeath" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K80 +C;X57;K"Buildings\Other\BarrelsUnit0\BarrelsUnit0.mdl" +C;X1;Y10;K"LTbx" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Buildings\Other\BarrelsUnit1\BarrelsUnit1" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Barrel" +C;X11;K"WESTRING_DEST_BARREL" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1.1 +C;X29;K1.5 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"CrateDeath" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K80 +C;X57;K"Buildings\Other\BarrelsUnit1\BarrelsUnit1.mdl" +C;X1;Y11;K"LTbs" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Buildings\Other\BarrelsUnit\BarrelsUnit" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Barrel" +C;X11;K"WESTRING_DEST_BARREL" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1.1 +C;X29;K1.5 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"CrateDeath" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K80 +C;X57;K"Buildings\Other\BarrelsUnit\BarrelsUnit.mdl" +C;X1;Y12;K"LTex" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Units\Other\TNTBarrel\TNTBarrel" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Barrel" +C;X11;K"WESTRING_DEST_BARREL_EXPLOSIVES" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K20 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1.1 +C;X29;K1.5 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"CrateDeath" +C;X39;K"ShadowCrates" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K90 +C;X57;K"Units\Other\TNTBarrel\TNTBarrel.mdl" +C;X1;Y13;K"LTg1" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Gate\Gate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y14;K"LTg2" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Gate45\Gate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y15;K"LTg3" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Gate\Gate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y16;K"LTg4" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\Gate45\Gate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y17;K"LTe1" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\ElfGate\ElfGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Elven Gate" +C;X11;K"WESTRING_DEST_ELVEN_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y18;K"LTe2" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\ElfGate45\ElfGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Elven Gate" +C;X11;K"WESTRING_DEST_ELVEN_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y19;K"LTe3" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\ElfGate\ElfGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Elven Gate" +C;X11;K"WESTRING_DEST_ELVEN_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y20;K"LTe4" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\ElfGate45\ElfGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Elven Gate" +C;X11;K"WESTRING_DEST_ELVEN_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y21;K"ATg1" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\BigElfGate\BigElfGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_DEMON_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\BigElfGate_Portrait\BigElfGate_Portrait.mdl" +C;X1;Y22;K"ATg2" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\BigElfGate45\BigElfGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_DEMON_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\BigElfGate_Portrait\BigElfGate_Portrait.mdl" +C;X1;Y23;K"ATg3" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\BigElfGate\BigElfGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_DEMON_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\BigElfGate_Portrait\BigElfGate_Portrait.mdl" +C;X1;Y24;K"ATg4" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\BigElfGate45\BigElfGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_DEMON_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\BigElfGate_Portrait\BigElfGate_Portrait.mdl" +C;X1;Y25;K"DTg5" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\IronGate\IronGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_IRON_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y26;K"DTg6" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\IronGate45\IronGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_IRON_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y27;K"DTg7" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\IronGate\IronGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_IRON_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y28;K"DTg8" +C;X2;K"D" +C;X3;K"L,F,W,B,A,C,Y,X,V,Q,D,G" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\IronGate45\IronGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Iron Gate" +C;X11;K"WESTRING_DEST_IRON_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y29;K"DTg1" +C;X2;K"D" +C;X3;K"D,G,Y,X" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\DungeonPorticulisGate\DungeonPorticulisGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"DungeonGate" +C;X11;K"WESTRING_DEST_DTG1" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K100 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\DungeonPorticulisGate_Portrait\DungeonPorticulisGate_Portrait.mdl" +C;X1;Y30;K"DTg2" +C;X2;K"D" +C;X3;K"D,G,Y,X" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\DungeonPorticulisGate45\DungeonPorticulisGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"DungeonGate" +C;X11;K"WESTRING_DEST_DTG2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K100 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\DungeonPorticulisGate_Portrait\DungeonPorticulisGate_Portrait.mdl" +C;X1;Y31;K"DTg3" +C;X2;K"D" +C;X3;K"D,G,Y,X" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\DungeonPorticulisGate\DungeonPorticulisGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"DungeonGate" +C;X11;K"WESTRING_DEST_DTG3" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K100 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\DungeonPorticulisGate_Portrait\DungeonPorticulisGate_Portrait.mdl" +C;X1;Y32;K"DTg4" +C;X2;K"D" +C;X3;K"D,G,Y,X" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\DungeonPorticulisGate45\DungeonPorticulisGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"DungeonGate" +C;X11;K"WESTRING_DEST_DTG4" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K100 +C;X24;K0 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\DungeonPorticulisGate_Portrait\DungeonPorticulisGate_Portrait.mdl" +C;X1;Y33;K"LTlt" +C;X2;K"D" +C;X3;K"L" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSummerTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_SUMMER_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y34;K"NTtw" +C;X2;K"D" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Terrain\NorthrendTree\NorthrendTree" +C;X6;K1 +C;X7;K0 +C;X8;K34 +C;X9;K"ReplaceableTextures\NorthrendTree\NorthTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_NORTHREND_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K48 +C;X47;K32 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y35;K"WTtw" +C;X2;K"D" +C;X3;K"W" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronWinterTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_WINTER_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K96 +C;X47;K32 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y36;K"WTst" +C;X2;K"D" +C;X3;K"W,N" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSnowTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_SNOWY_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K96 +C;X47;K32 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y37;K"YTct" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Terrain\CityscapeTree\CityscapeTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSummerTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_CITYSCAPE_SUMMER_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K300 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"ShadowCityTree" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y38;K"YTwt" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Terrain\CityscapeTree\CityscapeTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronWinterTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_CITYSCAPE_WINTER_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K300 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"ShadowCityTree" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K96 +C;X47;K32 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y39;K"YTst" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Terrain\CityscapeTree\CityscapeTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSnowTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_CITYSCAPE_SNOWY_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K300 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"ShadowCityTree" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K96 +C;X47;K32 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y40;K"YTft" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Terrain\CityscapeTree\CityscapeTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronFallTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_CITYSCAPE_FALL_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K300 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"ShadowCityTree" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y41;K"VTlt" +C;X2;K"D" +C;X3;K"V" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSummerTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_VILLAGE_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y42;K"LTw0" +C;X2;K"D" +C;X3;K"L,F,W,Y,X" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\StoneWall0\StoneWall0" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 0" +C;X11;K"WESTRING_DEST_STONE_WALL_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall1Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y43;K"LTw1" +C;X2;K"D" +C;X3;K"L,F,W,Y,X" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\StoneWall45\StoneWall45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 45" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall2Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y44;K"LTw2" +C;X2;K"D" +C;X3;K"L,F,W,Y,X" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\StoneWall90\StoneWall90" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 90" +C;X11;K"WESTRING_DEST_STONE_WALL_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall3Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y45;K"LTw3" +C;X2;K"D" +C;X3;K"L,F,W,Y,X" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\StoneWall135\StoneWall135" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 135" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall4Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y46;K"YT00" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall0\RockBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 0 0" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y47;K"YT01" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall45\RockBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 45 0" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y48;K"YT02" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall0\RockBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 90 0" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y49;K"YT03" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall45\RockBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 135 0" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y50;K"YT04" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge0\RockBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 0 0" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y51;K"YT05" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge45\RockBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 45 0" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y52;K"YT06" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge0\RockBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 90 0" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y53;K"YT07" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge45\RockBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 135 0" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y54;K"YT08" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 0 0" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y55;K"YT09" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 45 0" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y56;K"YT10" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 90 0" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y57;K"YT11" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 135 0" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y58;K"YT12" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall0\CityBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 0 1" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y59;K"YT13" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall45\CityBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 45 1" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y60;K"YT14" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall90\CityBridgeSmall90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 90 1" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall90.tga" +C;X37;K"PathTextures\CityBridgeSmall90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y61;K"YT15" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall135\CityBridgeSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 135 1" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall135.tga" +C;X37;K"PathTextures\CityBridgeSmall135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y62;K"YT16" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge0\CityBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 0 1" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y63;K"YT17" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge45\CityBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 45 1" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y64;K"YT18" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge90\CityBridgeLarge90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 90 1" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge90.tga" +C;X37;K"PathTextures\CityBridgeLarge90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y65;K"YT19" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge135\CityBridgeLarge135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 135 1" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge135.tga" +C;X37;K"PathTextures\CityBridgeLarge135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y66;K"YT20" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge0\CityBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 0 1" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y67;K"YT21" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge45\CityBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 45 1" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y68;K"YT22" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge90\CityBridgeExtraLarge90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 90 1" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge90.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y69;K"YT23" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge135\CityBridgeExtraLarge135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 135 1" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge135.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y70;K"LT00" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeSmall0\WoodBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 0 0" +C;X11;K"WESTRING_DEST_SHORT_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y71;K"LT01" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeSmall45\WoodBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 45 0" +C;X11;K"WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y72;K"LT02" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeSmall0\WoodBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 90 0" +C;X11;K"WESTRING_DEST_SHORT_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y73;K"LT03" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeSmall45\WoodBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 135 0" +C;X11;K"WESTRING_DEST_SHORT_BRIDGE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y74;K"LT04" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeLarge0\WoodBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 0 0" +C;X11;K"WESTRING_DEST_LONG_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y75;K"LT05" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeLarge45\WoodBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 45 0" +C;X11;K"WESTRING_DEST_LONG_BRIDGE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y76;K"LT06" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeLarge0\WoodBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 90 0" +C;X11;K"WESTRING_DEST_LONG_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y77;K"LT07" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeLarge45\WoodBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 135 0" +C;X11;K"WESTRING_DEST_LONG_BRIDGE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y78;K"LT08" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeExtraLarge0\WoodBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 0 0" +C;X11;K"WESTRING_DEST_WIDE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y79;K"LT09" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeExtraLarge45\WoodBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 45 0" +C;X11;K"WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y80;K"LT10" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeExtraLarge0\WoodBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 90 0" +C;X11;K"WESTRING_DEST_WIDE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y81;K"LT11" +C;X2;K"B" +C;X3;K"A,B,Y,X,J,D,C,I,F,L,W,N,Z,G,V,Q" +C;X4;K1 +C;X5;K"Doodads\Terrain\WoodBridgeExtraLarge45\WoodBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 135 0" +C;X11;K"WESTRING_DEST_WIDE_BRIDGE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y82;K"XTbd" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Dalaran\Terrain\DalaranBuilding\DalaranBuilding" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Building" +C;X11;K"WESTRING_DEST_BUILDING" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K2 +C;X23;K2500 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K384 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\8x8Unflyable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowDalaranBuilding" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y83;K"XTvt" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Dalaran\Terrain\DalaranVioletCitadel\DalaranVioletCitadel" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Large Building" +C;X11;K"WESTRING_DEST_LARGE_BUILDING" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K512 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K0 +C;X36;K"PathTextures\12x12Unflyable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowDalaranBuilding" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y84;K"LTr1" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall135\BridgeRampSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 135" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMLEFT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp45.tga" +C;X37;K"PathTextures\StoneCliffRamp45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y85;K"LTr2" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall225\BridgeRampSmall225" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 225" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_LEFT" +C;X12;K"WESTRING_EDITORSUFFIX_TOPLEFT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp135.tga" +C;X37;K"PathTextures\StoneCliffRamp135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y86;K"LTr3" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall315\BridgeRampSmall315" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 315" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_RIGHT" +C;X12;K"WESTRING_EDITORSUFFIX_TOPRIGHT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp45.tga" +C;X37;K"PathTextures\StoneCliffRamp45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y87;K"LTr4" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall45\BridgeRampSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 45" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMRIGHT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp135.tga" +C;X37;K"PathTextures\StoneCliffRamp135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y88;K"LTr5" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall135\BridgeRampSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 135" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT_2" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMLEFT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp45.tga" +C;X37;K"PathTextures\StoneCliffRamp45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y89;K"LTr6" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall225\BridgeRampSmall225" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 225" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_LEFT_2" +C;X12;K"WESTRING_EDITORSUFFIX_TOPLEFT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp135.tga" +C;X37;K"PathTextures\StoneCliffRamp135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y90;K"LTr7" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall315\BridgeRampSmall315" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 315" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_RIGHT_2" +C;X12;K"WESTRING_EDITORSUFFIX_TOPRIGHT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp45.tga" +C;X37;K"PathTextures\StoneCliffRamp45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y91;K"LTr8" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall45\BridgeRampSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 45" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT_2" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMRIGHT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K0 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneCliffRamp135.tga" +C;X37;K"PathTextures\StoneCliffRamp135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y92;K"NTbd" +C;X2;K"D" +C;X3;K"N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\Battleship\Battleship" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ship" +C;X11;K"WESTRING_DOOD_NOSP" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K200 +C;X24;K0 +C;X25;K100 +C;X26;K-1 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\8x8Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y93;K"DTes" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\EggSack\EggSack" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Egg Sack" +C;X11;K"WESTRING_DEST_EGGSACK" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K2 +C;X23;K15 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K60 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowCrates.tga" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K112 +C;X57;K"Doodads\Terrain\Portraits\EggSack_portrait\EggSack_portrait.mdl" +C;X1;Y94;K"DTsh" +C;X2;K"D" +C;X3;K"D" +C;X4;K0 +C;X5;K"Doodads\Terrain\Shrooms\Shrooms" +C;X6;K0 +C;X7;K0 +C;X8;K35 +C;X9;K"ReplaceableTextures\Mushroom\MushroomTree.tga" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_DUNGEON_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K8 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y95;K"YSdb" +C;X2;K"B" +C;X3;K"Y" +C;X4;K1 +C;X5;K"Doodads\Cityscape\Structures\CityBridgeLarge45Destroyed\CityBridgeLarge45Destroyed" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"destroyed bridge 45" +C;X11;K"WESTRING_DOOD_YSDB" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CitybridgeDestroyed.tga" +C;X37;K"PathTextures\CitybridgeDestroyed.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y96;K"YSdc" +C;X2;K"B" +C;X3;K"Y" +C;X4;K1 +C;X5;K"Doodads\Cityscape\Structures\CityBridgeLarge45Destroyed\CityBridgeLarge45Destroyed" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"destroyed bridge 135" +C;X11;K"WESTRING_DOOD_YSDC" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CitybridgeDestroyed.tga" +C;X37;K"PathTextures\CitybridgeDestroyed.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y97;K"XOkt" +C;X2;K"D" +C;X3;K"X,Y" +C;X4;K0 +C;X5;K"Doodads\Dalaran\Props\KingThrone\KingThrone" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_XOkt" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y98;K"XOk1" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Dalaran\Props\KingThrone45\KingThrone45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_XOk1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne135.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y99;K"XOk2" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Dalaran\Props\KingThrone135\KingThrone135" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_XOk2" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne45.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y100;K"DTc1" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\CaveGate\CaveGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"CaveGate1" +C;X11;K"WESTRING_DEST_DTC1" +C;X12;K"WESTRING_EDITORSUFFIX_ONE" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\CaveGate1Path.tga" +C;X37;K"PathTextures\CaveGate1PathDeath.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K160 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y101;K"DTc2" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Terrain\CaveGate2\CaveGate2" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"CaveGate2" +C;X11;K"WESTRING_DEST_DTC2" +C;X12;K"WESTRING_EDITORSUFFIX_TWO" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\CaveGate2Path.tga" +C;X37;K"PathTextures\CaveGate2PathDeath.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K160 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y102;K"DTsp" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Abilities\Spells\Orc\SpikeBarrier\SpikeBarrier" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Spikes" +C;X11;K"WESTRING_DEST_SPIKES" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.6 +C;X29;K1.2 +C;X30;K1 +C;X31;K45 +C;X32;K45 +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y103;K"DTrc" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Terrain\RockChunks\RockChunks" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"rock chunks" +C;X11;K"WESTRING_DEST_ROCK_CHUNKS" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K6 +C;X23;K250 +C;X24;K230 +C;X25;K100 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K1 +C;X56;K200 +C;X57;K"Doodads\Terrain\Portraits\RockChunks_Portrait\RockChunks_Portrait.mdl" +C;X1;Y104;K"DTsb" +C;X2;K"B" +C;X3;K"D,G" +C;X4;K1 +C;X5;K"Doodads\Terrain\ForceBridgeLarge0\ForceBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Force Bridge 0" +C;X11;K"WESTRING_DEST_FORCE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y105;K"DTs1" +C;X2;K"B" +C;X3;K"D,G" +C;X4;K1 +C;X5;K"Doodads\Terrain\ForceBridgeLarge45\ForceBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Force Bridge 45" +C;X11;K"WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y106;K"DTs2" +C;X2;K"B" +C;X3;K"D,G" +C;X4;K1 +C;X5;K"Doodads\Terrain\ForceBridgeLarge0\ForceBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Force Bridge 90" +C;X11;K"WESTRING_DEST_FORCE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y107;K"DTs3" +C;X2;K"B" +C;X3;K"D,G" +C;X4;K1 +C;X5;K"Doodads\Terrain\ForceBridgeLarge45\ForceBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Force Bridge 135" +C;X11;K"WESTRING_DEST_FORCE_BRIDGE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y108;K"Dofw" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Forcewall\Forcewall" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Forcewall" +C;X11;K"WESTRING_DEST_DOFW" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\ForceWall.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y109;K"Dofv" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Dungeon\Props\Forcewall45\Forcewall45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Forcewall45" +C;X11;K"WESTRING_DEST_DOFV" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\ForceWall45.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y110;K"YT24" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall0\RockBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 0 1" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y111;K"YT25" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall45\RockBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 45 1" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y112;K"YT26" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall0\RockBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 90 1" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y113;K"YT27" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeSmall45\RockBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge 135 1" +C;X11;K"WESTRING_DEST_SHORT_NATURAL_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y114;K"YT28" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge0\RockBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 0 1" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y115;K"YT29" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge45\RockBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 45 1" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y116;K"YT30" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge0\RockBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 90 1" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y117;K"YT31" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeLarge45\RockBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Large Bridge 135 1" +C;X11;K"WESTRING_DEST_LONG_NATURAL_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y118;K"YT32" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 0 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y119;K"YT33" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 45 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y120;K"YT34" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 90 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y121;K"YT35" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 135 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y122;K"YT36" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall0\CityBridgeSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 0 0" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall0.tga" +C;X37;K"PathTextures\CityBridgeSmall0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y123;K"YT37" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall45\CityBridgeSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 45 0" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall45.tga" +C;X37;K"PathTextures\CityBridgeSmall45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y124;K"YT38" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall90\CityBridgeSmall90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 90 0" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall90.tga" +C;X37;K"PathTextures\CityBridgeSmall90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y125;K"YT39" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeSmall135\CityBridgeSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge 135 0" +C;X11;K"WESTRING_DEST_SHORT_STONE_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeSmall135.tga" +C;X37;K"PathTextures\CityBridgeSmall135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y126;K"YT40" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge0\CityBridgeLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 0 0" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y127;K"YT41" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge45\CityBridgeLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 45 0" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y128;K"YT42" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge90\CityBridgeLarge90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 90 0" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge90.tga" +C;X37;K"PathTextures\CityBridgeLarge90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y129;K"YT43" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeLarge135\CityBridgeLarge135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 135 0" +C;X11;K"WESTRING_DEST_LONG_STONE_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge135.tga" +C;X37;K"PathTextures\CityBridgeLarge135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y130;K"YT44" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge0\CityBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 0 0" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_0_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y131;K"YT45" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge45\CityBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 45 0" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y132;K"YT46" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge90\CityBridgeExtraLarge90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 90 0" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_0_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge90.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y133;K"YT47" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\CityBridgeExtraLarge135\CityBridgeExtraLarge135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Extra Large Bridge 135 0" +C;X11;K"WESTRING_DEST_WIDE_STONE_CLIFF_0_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraLarge135.tga" +C;X37;K"PathTextures\CityBridgeExtraLarge135Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y134;K"ZTr0" +C;X2;K"B" +C;X3;K"Z" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\NagaStairsSmall0\NagaStairsSmall0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"NagaRampSmall0" +C;X11;K"WESTRING_DOOD_ZCR0" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\NagaStairsSmall0.tga" +C;X37;K"PathTextures\NagaStairsSmall0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y135;K"ZTr1" +C;X2;K"B" +C;X3;K"Z" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\NagaStairsSmall90\NagaStairsSmall90" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"NagaRampSmall90" +C;X11;K"WESTRING_DOOD_ZCR1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\NagaStairsSmall90.tga" +C;X37;K"PathTextures\NagaStairsSmall90.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y136;K"ZTr2" +C;X2;K"B" +C;X3;K"Z" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\NagaStairsSmall180\NagaStairsSmall180" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"NagaRampSmall180" +C;X11;K"WESTRING_DOOD_ZCR2" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\NagaStairsSmall180.tga" +C;X37;K"PathTextures\NagaStairsSmall180.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y137;K"ZTr3" +C;X2;K"B" +C;X3;K"Z" +C;X4;K1 +C;X5;K"Doodads\Terrain\CliffDoodad\NagaStairsSmall270\NagaStairsSmall270" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"NagaRampSmall270" +C;X11;K"WESTRING_DOOD_ZCR3" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\NagaStairsSmall270.tga" +C;X37;K"PathTextures\NagaStairsSmall270.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y138;K"ZTtw" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Terrain\RuinsTree\RuinsTree" +C;X6;K1 +C;X7;K0 +C;X8;K36 +C;X9;K"ReplaceableTextures\RuinsTree\RuinsTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_RUINS_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.65 +C;X29;K1.05 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K110 +C;X46;K60 +C;X47;K10 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y139;K"ZTw0" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsWall0\RuinsWall0" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 0" +C;X11;K"WESTRING_DEST_STONE_WALL_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall1Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y140;K"ZTw1" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsWall45\RuinsWall45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 45" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall2Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y141;K"ZTw2" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsWall90\RuinsWall90" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 90" +C;X11;K"WESTRING_DEST_STONE_WALL_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall3Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y142;K"ZTw3" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsWall135\RuinsWall135" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 135" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall4Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y143;K"ZTg1" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsGate\RuinsGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_RUINS_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y144;K"ZTg2" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsGate45\RuinsGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_RUINS_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y145;K"ZTg3" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsGate\RuinsGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_RUINS_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y146;K"ZTg4" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsGate45\RuinsGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_RUINS_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y147;K"ITtw" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Terrain\AshenTree\AshenTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\Ice_Tree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_ICECROWN_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K128 +C;X47;K100 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y148;K"ZTd1" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y149;K"ZTd2" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor1Path.tga" +C;X37;K"PathTextures\RoundDoor1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y150;K"ZTd3" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K90 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y151;K"ZTd4" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y152;K"ZTd5" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_3" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL3" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y153;K"ZTd6" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_3" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL3" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor1Path.tga" +C;X37;K"PathTextures\RoundDoor1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y154;K"ZTd7" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_HORIZONTAL_4" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL4" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K90 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y155;K"ZTd8" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Terrain\RuinsRoundDoor\RuinsRoundDoor" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"RoundDoor" +C;X11;K"WESTRING_DEST_RUINS_ROUND_DOOR_VERTICAL_4" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL4" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\RoundDoor2Path.tga" +C;X37;K"PathTextures\RoundDoor2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\RuinsRoundDoor_Portrait\RuinsRoundDoor_Portrait.mdl" +C;X1;Y156;K"ITib" +C;X2;K"B" +C;X3;K"I,N" +C;X4;K1 +C;X5;K"Doodads\Terrain\IceBridge\IceBridge" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Ice Bridge" +C;X11;K"WESTRING_DEST_ICE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y157;K"ITi2" +C;X2;K"B" +C;X3;K"I,N" +C;X4;K1 +C;X5;K"Doodads\Terrain\IceBridge45\IceBridge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Ice Bridge 45" +C;X11;K"WESTRING_DEST_ICE_BRIDGE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y158;K"ITi3" +C;X2;K"B" +C;X3;K"I,N" +C;X4;K1 +C;X5;K"Doodads\Terrain\IceBridge\IceBridge" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Ice Bridge" +C;X11;K"WESTRING_DEST_ICE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y159;K"ITi4" +C;X2;K"B" +C;X3;K"I,N" +C;X4;K1 +C;X5;K"Doodads\Terrain\IceBridge45\IceBridge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Ice Bridge 45" +C;X11;K"WESTRING_DEST_ICE_BRIDGE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge45.tga" +C;X37;K"PathTextures\CityBridgeLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y160;K"ITg1" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownGate\IceCrownGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICECROWN_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y161;K"ITg2" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownGate45\IceCrownGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICECROWN_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y162;K"ITg3" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownGate\IceCrownGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICECROWN_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y163;K"ITg4" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownGate45\IceCrownGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICECROWN_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y164;K"ITw0" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownWall0\IceCrownWall0" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 0" +C;X11;K"WESTRING_DEST_STONE_WALL_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall1Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y165;K"ITw1" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownWall45\IceCrownWall45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 45" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall2Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y166;K"ITw2" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownWall90\IceCrownWall90" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 90" +C;X11;K"WESTRING_DEST_STONE_WALL_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall3Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y167;K"ITw3" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownWall135\IceCrownWall135" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Stone Wall 135" +C;X11;K"WESTRING_DEST_STONE_WALL_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K5 +C;X23;K200 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\StoneWall4Path.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"ShadowStoneWall4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y168;K"LTt0" +C;X2;K"B" +C;X3;K"L" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSummerTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y169;K"LTt1" +C;X2;K"B" +C;X3;K"L" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronSummerTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y170;K"LTt2" +C;X2;K"B" +C;X3;K"F,Q" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronFallTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y171;K"LTt3" +C;X2;K"B" +C;X3;K"F,Q" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronFallTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y172;K"LTt4" +C;X2;K"B" +C;X3;K"W,N,I" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronWinterTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y173;K"ATt0" +C;X2;K"B" +C;X3;K"W,N,I" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\LordaeronTree\LordaeronWinterTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y174;K"ATt1" +C;X2;K"B" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\AshenvaleTree\AshenTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y175;K"LTt5" +C;X2;K"B" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Terrain\TreeBridge0\TreeBridge0" +C;X6;K0 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\AshenvaleTree\AshenTree" +C;X10;K"Tree Bridge" +C;X11;K"WESTRING_DEST_TREE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\TreeBridge0Death.tga" +C;X37;K"PathTextures\TreeBridge0.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y176;K"ZTnc" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ruins\Props\Ruins_NagaCircle\Ruins_NagaCircle" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ruins Naga Circle" +C;X11;K"WESTRING_DOOD_ZONC" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y177;K"ITf1" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe\North_IceFloe" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ice Floe" +C;X11;K"WESTRING_DOOD_NWF1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y178;K"ITf2" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe2\North_IceFloe2" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ice Floe" +C;X11;K"WESTRING_DOOD_NWF1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y179;K"ITf3" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe3\North_IceFloe3" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ice Floe" +C;X11;K"WESTRING_DOOD_NWF1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y180;K"ITf4" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Northrend\Water\North_IceFloe4\North_IceFloe4" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Ice Floe" +C;X11;K"WESTRING_DOOD_NWF1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y181;K"ITx1" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceGate\IceGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICE_GATE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y182;K"ITx2" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceGate45\IceGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICE_GATE_DIAGONAL_1" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate2" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y183;K"ITx3" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceGate\IceGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICE_GATE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K0.9 +C;X29;K0.9 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\Gate1Path.tga" +C;X37;K"PathTextures\Gate1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y184;K"ITx4" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceGate45\IceGate45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate" +C;X11;K"WESTRING_DEST_ICE_GATE_DIAGONAL_2" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\Gate2Path.tga" +C;X37;K"PathTextures\Gate2PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate4" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y185;K"ATtc" +C;X2;K"D" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\AshenCanopyTree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_APTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y186;K"OTtw" +C;X2;K"D" +C;X3;K"O" +C;X4;K0 +C;X5;K"Doodads\Terrain\OutlandMushroomTree\OutlandMushroomTree" +C;X6;K1 +C;X7;K0 +C;X8;K37 +C;X9;K"ReplaceableTextures\OutlandMushroomTree\MushroomTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_OUTLAND_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.65 +C;X29;K0.85 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K90 +C;X46;K70 +C;X47;K100 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y187;K"KTtw" +C;X2;K"D" +C;X3;K"K" +C;X4;K0 +C;X5;K"Doodads\Terrain\OutlandMushroomTree\OutlandMushroomTree" +C;X6;K1 +C;X7;K0 +C;X8;K37 +C;X9;K"ReplaceableTextures\OutlandMushroomTree\MushroomTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_BLACK_CITADEL_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.65 +C;X29;K0.85 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K90 +C;X46;K70 +C;X47;K100 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y188;K"ITig" +C;X2;K"D" +C;X3;K"I,N" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Structures\Igloo\Igloo" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Igloo" +C;X11;K"WESTRING_DOOD_ISIG" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K250 +C;X24;K230 +C;X25;K100 +C;X26;K-1 +C;X27;K200 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K256 +C;X57;K"Doodads\Icecrown\Structures\Igloo\Igloo.mdl" +C;X1;Y189;K"DTrf" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\ElevatorPuzzle\ElevatorPuzzle" +C;X6;K0 +C;X7;K1 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Elevator" +C;X11;K"WESTRING_DOOD_ZZEZ" +C;X12;K"WESTRING_EDITORSUFFIX_ONE" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\8x8Unbuildable.tga" +C;X37;K"PathTextures\8x8Unbuildable.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y190;K"DTrx" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\ElevatorPuzzle\ElevatorPuzzle" +C;X6;K0 +C;X7;K1 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Elevator" +C;X11;K"WESTRING_DOOD_ZZEZ" +C;X12;K"WESTRING_EDITORSUFFIX_TWO" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\8x8Unbuildable.tga" +C;X37;K"PathTextures\8x8Unbuildable.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y191;K"XTmp" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Terrain\DalaranMagicalPen\DalaranMagicalPen" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"magical pen" +C;X11;K"WESTRING_DEST_MAGICAL_PEN" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\8x8PenPath.tga" +C;X37;K"_" +C;X38;K"MagicalCellDeathSound" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K288 +C;X57;K"Doodads\Terrain\Portraits\DalaranMagicalPen_portrait\DalaranMagicalPen_portrait.mdl" +C;X1;Y192;K"XTm5" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Terrain\DalaranMagicalPen45\DalaranMagicalPen45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"angled magical pen" +C;X11;K"WESTRING_DEST_ANGLED_MAGICAL_PEN" +C;X12;K"WESTRING_EDITORSUFFIX_ANGLED" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\12x10Pen45Path.tga" +C;X37;K"_" +C;X38;K"MagicalCellDeathSound" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K288 +C;X57;K"Doodads\Terrain\Portraits\DalaranMagicalPen_portrait\DalaranMagicalPen_portrait.mdl" +C;X1;Y193;K"XTmx" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Terrain\DalaranMagicalPenWall\DalaranMagicalPenWall" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"magical pen wall" +C;X11;K"WESTRING_DEST_MAGICAL_PEN_WALL" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.85 +C;X29;K0.85 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\8x2Default.tga" +C;X37;K"_" +C;X38;K"MagicalCellDeathSound" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K128 +C;X57;K"Doodads\Terrain\Portraits\DalaranMagicalPen_portrait\DalaranMagicalPen_portrait.mdl" +C;X1;Y194;K"XTx5" +C;X2;K"D" +C;X3;K"X" +C;X4;K0 +C;X5;K"Doodads\Terrain\DalaranMagicalPenWall45\DalaranMagicalPenWall45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"angled magical pen wall" +C;X11;K"WESTRING_DEST_ANGLED_MAGICAL_PEN_WALL" +C;X12;K"WESTRING_EDITORSUFFIX_ANGLED" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K250 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\Fence45.tga" +C;X37;K"_" +C;X38;K"MagicalCellDeathSound" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K128 +C;X57;K"Doodads\Terrain\Portraits\DalaranMagicalPen_portrait\DalaranMagicalPen_portrait.mdl" +C;X1;Y195;K"ITcr" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\ClearIceRock\ClearIceRock" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Icey Rock" +C;X11;K"WESTRING_DEST_ICEY_ROCK" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K6 +C;X23;K500 +C;X24;K230 +C;X25;K100 +C;X26;K-1 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\8x8Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y196;K"DTep" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"elevator pathing block" +C;X11;K"WESTRING_DEST_ELEVATOR_PATHBLOCKER" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\16x4ElevatorBlockPath.tga" +C;X37;K"PathTextures\16x4ElevatorBlockPathDeath.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y197;K"ATwf" +C;X2;K"B" +C;X3;K"A" +C;X4;K0 +C;X5;K"Doodads\Terrain\Wharf\Wharf" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Wharf" +C;X11;K"WESTRING_DEST_WHARF" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"_" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y198;K"YTfb" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"pathing blocker both" +C;X11;K"WESTRING_DEST_PATHBLOCKER_BOTH" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Unflyable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y199;K"YTfc" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"large pathing blocker both" +C;X11;K"WESTRING_DEST_PATHBLOCKER_LARGE_BOTH" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K160 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Unflyable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y200;K"YTlb" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"line of sight blocker" +C;X11;K"WESTRING_DEST_LOSBLOCKER" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K230 +C;X25;K0 +C;X26;K270 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y201;K"Ytlc" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"large line of sight blocker" +C;X11;K"WESTRING_DEST_LOSBLOCKER_LARGE" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K230 +C;X25;K0 +C;X26;K270 +C;X27;K160 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K0 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y202;K"YTpb" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"pathing blocker ground" +C;X11;K"WESTRING_DEST_PATHBLOCKER" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y203;K"YTpc" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"large pathing blocker ground" +C;X11;K"WESTRING_DEST_PATHBLOCKER_LARGE" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K160 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y204;K"YTab" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"pathing blocker air" +C;X11;K"WESTRING_DEST_PATHBLOCKER_FLIER" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Cyan.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y205;K"YTac" +C;X2;K"P" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\LOSBlocker\LOSBlocker" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"large pathing blocker air" +C;X11;K"WESTRING_DEST_PATHBLOCKER_LARGE_FLIER" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Wood" +C;X22;K1 +C;X23;K9999 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K160 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Cyan.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y206;K"ZTsg" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Cinematic\SargerasGate\SargerasGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate to the Tomb of Sargeras" +C;X11;K"WESTRING_DEST_SARGERAS_GATE" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\GateLarge1Path.tga" +C;X37;K"PathTextures\GateLarge1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y207;K"ZTsx" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Cinematic\SargerasGate\SargerasGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Gate to the Tomb of Sargeras" +C;X11;K"WESTRING_DEST_SARGERAS_GATE" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\GateLarge1Path.tga" +C;X37;K"PathTextures\GateLarge1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y208;K"DTfp" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FootSwitch\FootSwitch" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Elevator" +C;X11;K"WESTRING_DEST_SMALL_ELEVATOR" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K256 +C;X26;K270 +C;X27;K175 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"PathTextures\4x4Unbuildable.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y209;K"DTfx" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\FootSwitch\FootSwitch" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Elevator" +C;X11;K"WESTRING_DEST_SMALL_ELEVATOR" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K256 +C;X26;K270 +C;X27;K175 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K1 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"PathTextures\4x4Unbuildable.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y210;K"DTlv" +C;X2;K"D" +C;X3;K"D,G" +C;X4;K0 +C;X5;K"Doodads\Cinematic\DungeonLever\DungeonLever" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Lever" +C;X11;K"WESTRING_DEST_LEVER" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Wood" +C;X22;K1 +C;X23;K5 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K0 +C;X28;K0.9 +C;X29;K1.1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"PathTextures\2x2Default.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K96 +C;X57;K"Doodads\Cinematic\DungeonLever\DungeonLever.mdl" +C;X1;Y211;K"YTce" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Terrain\CityEnteranceGate\CityEnteranceGate" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"City Entrance" +C;X11;K"WESTRING_DEST_CITY_ENTRANCE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\GateLarge1Path.tga" +C;X37;K"PathTextures\GateLarge1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\CityEnteranceGate_Portrait\CityEnteranceGate_Portrait.mdl" +C;X1;Y212;K"YTcx" +C;X2;K"D" +C;X3;K"Y,X" +C;X4;K0 +C;X5;K"Doodads\Cityscape\Terrain\CityEnteranceGate\CityEnteranceGate" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"City Entrance" +C;X11;K"WESTRING_DEST_CITY_ENTRANCE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\GateLarge1Path.tga" +C;X37;K"PathTextures\GateLarge1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate1" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\CityEnteranceGate_Portrait\CityEnteranceGate_Portrait.mdl" +C;X1;Y213;K"LTtc" +C;X2;K"B" +C;X3;K"Q" +C;X4;K1 +C;X5;K"Doodads\Cinematic\TyrandeWoodBridgeLarge\TyrandeWoodBridgeLarge" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 0 0" +C;X11;K"WESTRING_DEST_TYRANDE_BRIDGE_VERTICAL" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y214;K"LTtx" +C;X2;K"B" +C;X3;K"Q" +C;X4;K1 +C;X5;K"Doodads\Cinematic\TyrandeWoodBridgeLarge\TyrandeWoodBridgeLarge" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Large Bridge 90 0" +C;X11;K"WESTRING_DEST_TYRANDE_BRIDGE_HORIZONTAL" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeLarge0.tga" +C;X37;K"PathTextures\CityBridgeLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y215;K"JTct" +C;X2;K"D" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Terrain\CityscapeTree\CityscapeTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\DalaranRuinsTree\DalaranRuinsTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_CITYSCAPE_RUINED_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K2 +C;X23;K50 +C;X24;K300 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"ShadowCityTree" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y216;K"JTtw" +C;X2;K"D" +C;X3;K"J" +C;X4;K0 +C;X5;K"Doodads\Terrain\LordaeronTree\LordaeronTree" +C;X6;K1 +C;X7;K0 +C;X8;K31 +C;X9;K"ReplaceableTextures\DalaranRuinsTree\DalaranRuinsTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_DALARAN_RUINS_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K10 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K110 +C;X46;K60 +C;X47;K10 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y217;K"ITtg" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownThroneGate\IceCrownThroneGate" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Frozen Throne Gate" +C;X11;K"WESTRING_DEST_FROZEN_THRONE_GATE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K400 +C;X25;K0 +C;X26;K180 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\GateLarge1Path.tga" +C;X37;K"PathTextures\GateLarge1PathDeath.tga" +C;X38;K"_" +C;X39;K"ShadowGate3" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K512 +C;X57;K"Doodads\Terrain\Portraits\Gate_Portrait\Gate_Portrait.mdl" +C;X1;Y218;K"GTsh" +C;X2;K"D" +C;X3;K"G" +C;X4;K0 +C;X5;K"Doodads\Terrain\Shrooms\Shrooms" +C;X6;K0 +C;X7;K0 +C;X8;K35 +C;X9;K"ReplaceableTextures\UndergroundTree\UnderMushroomTree" +C;X10;K"Tree Wall" +C;X11;K"WESTRING_DEST_UNDERGROUND_TREE_WALL" +C;X12;K"_" +C;X13;K"A" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K8 +C;X23;K50 +C;X24;K230 +C;X25;K100 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K128 +C;X57;K"_" +C;X1;Y219;K"BTrs" +C;X2;K"D" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Cinematic\RessurectionStoneSW\RessurectionStoneSW" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Res Stone" +C;X11;K"WESTRING_DEST_RES_STONE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K256 +C;X57;K"Doodads\Cinematic\RessurectionStoneSW\RessurectionStoneSW.mdl" +C;X1;Y220;K"BTrx" +C;X2;K"D" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Cinematic\RessurectionStoneSE\RessurectionStoneSE" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Res Stone" +C;X11;K"WESTRING_DEST_RES_STONE" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K256 +C;X57;K"Doodads\Cinematic\RessurectionStoneSE\RessurectionStoneSE.mdl" +C;X1;Y221;K"OTsp" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\ShimmeringPortal\ShimmeringPortal" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Shimmering Portal" +C;X11;K"WESTRING_DOOD_OZSP" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"_" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K256 +C;X57;K"Doodads\Cinematic\ShimmeringPortal\ShimmeringPortal.mdl" +C;X1;Y222;K"OTip" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\InvisiblePlatform\InvisiblePlatform" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Invisible Platform" +C;X11;K"WESTRING_DEST_INVISIBLE_PLATFORM" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K80 +C;X57;K"_" +C;X1;Y223;K"OTis" +C;X2;K"B" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Terrain\InvisiblePlatformSmall\InvisiblePlatformSmall" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Invisible Platform Small" +C;X11;K"WESTRING_DEST_INVISIBLE_PLATFORM_SMALL" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K60 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Unbuildable.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K80 +C;X57;K"_" +C;X1;Y224;K"BTtc" +C;X2;K"D" +C;X3;K"B" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\BarrensTree\BarrensTree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_BTTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y225;K"CTtc" +C;X2;K"D" +C;X3;K"C" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\FelwoodTree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_CTTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y226;K"NTtc" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\NorthrendTree\NorthTree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_NTTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y227;K"ZTtc" +C;X2;K"D" +C;X3;K"Z" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\RuinsTree\RuinsTree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_ZTTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K0 +C;X46;K64 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y228;K"ITtc" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Ashenvale\Plants\AshenCanopyTree\AshenCanopyTree" +C;X6;K0 +C;X7;K0 +C;X8;K32 +C;X9;K"ReplaceableTextures\AshenvaleTree\Ice_Tree" +C;X10;K"Canopy Tree" +C;X11;K"WESTRING_DOOD_ITTC" +C;X12;K"_" +C;X13;K"B" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K"tree" +C;X21;K"Wood" +C;X22;K3 +C;X23;K50 +C;X24;K300 +C;X25;K256 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K1 +C;X45;K32 +C;X46;K128 +C;X47;K100 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y229;K"IOt0" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownThrone\IceCrownThrone" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_IOT0" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y230;K"IOt1" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownThrone45\IceCrownThrone45" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_IOT1" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne135.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y231;K"IOt2" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Icecrown\Terrain\IceCrownThrone135\IceCrownThrone135" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"_" +C;X11;K"WESTRING_DOOD_IOT2" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K0 +C;X26;K270 +C;X27;K0 +C;X28;K0.8 +C;X29;K1.2 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\throne45.tga" +C;X37;K"_" +C;X38;K"_" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y232;K"LTrc" +C;X2;K"D" +C;X3;K"L,W,F,V,Q,X,Y,J" +C;X4;K0 +C;X5;K"Doodads\LordaeronSummer\Terrain\LoardaeronRockChunks\LoardaeronRockChunks" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"rock chunks" +C;X11;K"WESTRING_DEST_ROCK_CHUNKS" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"debris" +C;X21;K"Stone" +C;X22;K6 +C;X23;K250 +C;X24;K230 +C;X25;K100 +C;X26;K-1 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"PathTextures\4x4Default.tga" +C;X37;K"_" +C;X38;K"RockWallDeath" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K144 +C;X57;K"Doodads\Terrain\Portraits\RockChunks_Portrait\RockChunks_Portrait.mdl" +C;X1;Y233;K"YT48" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 0 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_VERTICAL_EXTRA" +C;X12;K"WESTRING_EDITORSUFFIX_VERTICAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y234;K"YT49" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 45 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_1_EXTRA" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL1" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y235;K"YT50" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge0\RockBridgeExtraLarge0" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 90 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_HORIZONTAL_EXTRA" +C;X12;K"WESTRING_EDITORSUFFIX_HORIZONTAL" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraExtraLarge0.tga" +C;X37;K"PathTextures\CityBridgeExtraExtraLarge0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y236;K"YT51" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\Terrain\RockBridgeExtraLarge45\RockBridgeExtraLarge45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Extra Large Bridge 135 1" +C;X11;K"WESTRING_DEST_WIDE_NATURAL_CLIFF_1_DIAGONAL_2_EXTRA" +C;X12;K"WESTRING_EDITORSUFFIX_DIAGONAL2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K2 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K256 +C;X26;K90 +C;X27;K0 +C;X28;K1.1 +C;X29;K1.1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K200 +C;X34;K200 +C;X35;K1 +C;X36;K"PathTextures\CityBridgeExtraExtraLarge45.tga" +C;X37;K"PathTextures\CityBridgeExtraExtraLarge45Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y237;K"OTds" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Doodads\Cinematic\DemonStorm\DemonStorm" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Demon Storm" +C;X11;K"WESTRING_DOOD_OZDS" +C;X12;K"_" +C;X13;K"_" +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K80 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"_" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K80 +C;X57;K"Doodads\Cinematic\DemonStorm\DemonStorm.mdl" +C;X1;Y238;K"ITag" +C;X2;K"D" +C;X3;K"I" +C;X4;K0 +C;X5;K"Doodads\Cinematic\RockinArthas\RockinArthas" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Rockin' Arthas" +C;X11;K"WESTRING_DEST_ROCKIN_ARTHAS" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K256 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K0 +C;X34;K0 +C;X35;K0 +C;X36;K"_" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K80 +C;X57;K"_" +C;X1;Y239;K"BTsc" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"doodads\underground\terrain\SupportBeam\SupportBeam" +C;X6;K0 +C;X7;K0 +C;X8;K"-" +C;X9;K"_" +C;X10;K"Support Column" +C;X11;K"WESTRING_DEST_SUPPORT_COLUMN" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"wall" +C;X21;K"Wood" +C;X22;K1 +C;X23;K50 +C;X24;K0 +C;X25;K0 +C;X26;K-1 +C;X27;K256 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K1 +C;X36;K"PathTextures\2x2Default.tga" +C;X37;K"_" +C;X38;K"TreeWallDeath" +C;X39;K"BuildingShadowSmall" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K0 +C;X54;K1 +C;X55;K1 +C;X56;K256 +C;X57;K"doodads\underground\terrain\SupportBeam\SupportBeam.mdl" +C;X1;Y240;K"LTs1" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall135\BridgeRampSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 135" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMLEFT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight90.tga" +C;X37;K"PathTextures\CliffRampStraight90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y241;K"LTs2" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall45\BridgeRampSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 225" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_LEFT" +C;X12;K"WESTRING_EDITORSUFFIX_TOPLEFT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight180.tga" +C;X37;K"PathTextures\CliffRampStraight180Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y242;K"LTs3" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall315\BridgeRampSmall315" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 315" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_RIGHT" +C;X12;K"WESTRING_EDITORSUFFIX_TOPRIGHT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight270.tga" +C;X37;K"PathTextures\CliffRampStraight270Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y243;K"LTs4" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall225\BridgeRampSmall225" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff0.tga" +C;X10;K"Small Bridge Ramp 45" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMRIGHT" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight0.tga" +C;X37;K"PathTextures\CliffRampStraight0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y244;K"LTs5" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall135\BridgeRampSmall135" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 135" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_LEFT_2" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMLEFT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight90.tga" +C;X37;K"PathTextures\CliffRampStraight90Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y245;K"LTs6" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall45\BridgeRampSmall45" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 225" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_LEFT_2" +C;X12;K"WESTRING_EDITORSUFFIX_TOPLEFT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight180.tga" +C;X37;K"PathTextures\CliffRampStraight180Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y246;K"LTs7" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall315\BridgeRampSmall315" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 315" +C;X11;K"WESTRING_DEST_STONE_RAMP_TOP_RIGHT_2" +C;X12;K"WESTRING_EDITORSUFFIX_TOPRIGHT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight270.tga" +C;X37;K"PathTextures\CliffRampStraight270Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y247;K"LTs8" +C;X2;K"B" +C;X3;K"*" +C;X4;K1 +C;X5;K"Doodads\LordaeronSummer\Terrain\BridgeRampSmall225\BridgeRampSmall225" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"ReplaceableTextures\Cliff\Cliff1.tga" +C;X10;K"Small Bridge Ramp 45" +C;X11;K"WESTRING_DEST_STONE_RAMP_BOTTOM_RIGHT_2" +C;X12;K"WESTRING_EDITORSUFFIX_BOTTOMRIGHT2" +C;X13;K"_" +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"bridge" +C;X21;K"Stone" +C;X22;K1 +C;X23;K500 +C;X24;K0 +C;X25;K30 +C;X26;K225 +C;X27;K0 +C;X28;K1.33 +C;X29;K1.33 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K50 +C;X34;K50 +C;X35;K0 +C;X36;K"PathTextures\CliffRampStraight0.tga" +C;X37;K"PathTextures\CliffRampStraight0Death.tga" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K1 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K120 +C;X49;K120 +C;X50;K200 +C;X51;K100 +C;X53;K0 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +C;X1;Y248;K"Volc" +C;X2;K"D" +C;X3;K"*" +C;X4;K0 +C;X5;K"Abilities\Spells\Other\Volcano\Volcano.mdl" +C;X6;K0 +C;X7;K0 +C;X8;K11 +C;X9;K"_" +C;X10;K"Volcano" +C;X11;K"WESTRING_DEST_VOLCANO" +C;X12;K"_" +C;X13;K"_" +C;X14;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K"decoration" +C;X21;K"Stone" +C;X22;K1 +C;X23;K2500 +C;X24;K0 +C;X25;K0 +C;X26;K0 +C;X27;K0 +C;X28;K1 +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K"-" +C;X33;K100 +C;X34;K100 +C;X35;K0 +C;X36;K"_" +C;X37;K"_" +C;X38;K"_" +C;X39;K"none" +C;X40;K255 +C;X41;K255 +C;X42;K255 +C;X43;K0 +C;X44;K0 +C;X45;K0 +C;X46;K0 +C;X47;K0 +C;X48;K0 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X53;K1 +C;X54;K1 +C;X55;K0 +C;X56;K256 +C;X57;K"_" +E diff --git a/share/mpq/units/units/destructablemetadata.slk b/share/mpq/units/units/destructablemetadata.slk new file mode 100644 index 0000000..75362e7 --- /dev/null +++ b/share/mpq/units/units/destructablemetadata.slk @@ -0,0 +1,791 @@ +ID;PWXL;N;E +B;X18;Y53;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"category" +C;X6;K"displayName" +C;X7;K"sort" +C;X8;K"type" +C;X9;K"changeFlags" +C;X10;K"importType" +C;X11;K"stringExt" +C;X12;K"caseSens" +C;X13;K"canBeEmpty" +C;X14;K"minVal" +C;X15;K"maxVal" +C;X16;K"forceNonNeg" +C;X17;K"version" +C;X18;K"section" +C;X1;Y2;K"bnam" +C;X2;K"Name" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_BEVAL_BNAM" +C;X7;K"a1a00" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTName" +C;X16;K0 +C;X17;K1 +C;X1;Y3;K"bsuf" +C;X2;K"EditorSuffix" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_BEVAL_BSUF" +C;X7;K"a1a00a" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTName" +C;X16;K0 +C;X17;K1 +C;X1;Y4;K"bcat" +C;X2;K"category" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BCAT" +C;X7;K"a2a00" +C;X8;K"destructableCategory" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X1;Y5;K"btil" +C;X2;K"tilesets" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BTIL" +C;X7;K"a3a00" +C;X8;K"tilesetList" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y6;K"btsp" +C;X2;K"tilesetSpecific" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BTSP" +C;X7;K"a4a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y7;K"bfil" +C;X2;K"file" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFIL" +C;X7;K"a6a00" +C;X8;K"model" +C;X9;K"m" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y8;K"blit" +C;X2;K"lightweight" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BLIT" +C;X7;K"a7a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y9;K"bflo" +C;X2;K"fatLOS" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFLO" +C;X7;K"a8a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y10;K"btxi" +C;X2;K"texID" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BTXI" +C;X7;K"a9a00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X1;Y11;K"btxf" +C;X2;K"texFile" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BTXF" +C;X7;K"b1a00" +C;X8;K"texture" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y12;K"buch" +C;X2;K"useClickHelper" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BUCH" +C;X7;K"b3a00" +C;X8;K"bool" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y13;K"bonc" +C;X2;K"onCliffs" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BONC" +C;X7;K"b4a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y14;K"bonw" +C;X2;K"onWater" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BONW" +C;X7;K"b5a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y15;K"bcpd" +C;X2;K"canPlaceDead" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BCPD" +C;X7;K"b6a00" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y16;K"bwal" +C;X2;K"walkable" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"path" +C;X6;K"WESTRING_BEVAL_BWAL" +C;X7;K"b7a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y17;K"bclh" +C;X2;K"cliffHeight" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"path" +C;X6;K"WESTRING_BEVAL_BCLH" +C;X7;K"b8a00" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K50 +C;X16;K0 +C;X17;K1 +C;X1;Y18;K"btar" +C;X2;K"targType" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_BEVAL_BTAR" +C;X7;K"b9a00" +C;X8;K"targetList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y19;K"barm" +C;X2;K"armor" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_BEVAL_BARM" +C;X7;K"c1a00" +C;X8;K"armorType" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y20;K"bvar" +C;X2;K"numVar" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BVAR" +C;X7;K"c2a00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X1;Y21;K"bhps" +C;X2;K"HP" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"stats" +C;X6;K"WESTRING_BEVAL_BHPS" +C;X7;K"c3a00" +C;X8;K"unreal" +C;X9;K"s" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y22;K"boch" +C;X2;K"occH" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BOCH" +C;X7;K"c4a00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K0 +C;X17;K1 +C;X1;Y23;K"bflh" +C;X2;K"flyH" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFLH" +C;X7;K"c5a00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K0 +C;X17;K1 +C;X1;Y24;K"bfxr" +C;X2;K"fixedRot" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFXR" +C;X7;K"c6a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K-1 +C;X15;K360 +C;X16;K0 +C;X17;K1 +C;X1;Y25;K"bsel" +C;X2;K"selSize" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BSEL" +C;X7;K"c7a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y26;K"bmis" +C;X2;K"minScale" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BMIS" +C;X7;K"c8a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0.1 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X1;Y27;K"bmas" +C;X2;K"maxScale" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BMAS" +C;X7;K"c9a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0.1 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X1;Y28;K"bcpr" +C;X2;K"canPlaceRandScale" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BCPR" +C;X7;K"d1a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y29;K"bmap" +C;X2;K"maxPitch" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BMAP" +C;X7;K"d2a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y30;K"bmar" +C;X2;K"maxRoll" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BMAR" +C;X7;K"d3a00" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y31;K"brad" +C;X2;K"radius" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BRAD" +C;X7;K"d4a00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y32;K"bfra" +C;X2;K"fogRadius" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFRA" +C;X7;K"d5a00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y33;K"bfvi" +C;X2;K"fogVis" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BFVI" +C;X7;K"d6a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y34;K"bptx" +C;X2;K"pathTex" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"path" +C;X6;K"WESTRING_BEVAL_BPTX" +C;X7;K"d7a00" +C;X8;K"pathingTexture" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y35;K"bptd" +C;X2;K"pathTexDeath" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"path" +C;X6;K"WESTRING_BEVAL_BPTD" +C;X7;K"d8a00" +C;X8;K"pathingTexture" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y36;K"bdsn" +C;X2;K"deathSnd" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_BEVAL_BDSN" +C;X7;K"d9a00" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y37;K"bshd" +C;X2;K"shadow" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BSHD" +C;X7;K"e1a00" +C;X8;K"shadowTexture" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X1;Y38;K"bsmm" +C;X2;K"showInMM" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BSMM" +C;X7;K"e2a00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y39;K"bmmr" +C;X2;K"MMRed" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BMMR" +C;X7;K"e3a00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y40;K"bmmg" +C;X2;K"MMGreen" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BMMG" +C;X7;K"e4a00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y41;K"bmmb" +C;X2;K"MMBlue" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BMMB" +C;X7;K"e5a00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y42;K"bumm" +C;X2;K"useMMColor" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BUMM" +C;X7;K"e2a01" +C;X8;K"bool" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y43;K"bbut" +C;X2;K"buildTime" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"stats" +C;X6;K"WESTRING_BEVAL_BBUT" +C;X7;K"f1a00" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K298 +C;X16;K0 +C;X17;K1 +C;X1;Y44;K"bret" +C;X2;K"repairTime" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"stats" +C;X6;K"WESTRING_BEVAL_BRET" +C;X7;K"f2a00" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X1;Y45;K"breg" +C;X2;K"goldRep" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"stats" +C;X6;K"WESTRING_BEVAL_BREG" +C;X7;K"f2b00" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X1;Y46;K"brel" +C;X2;K"lumberRep" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"stats" +C;X6;K"WESTRING_BEVAL_BREL" +C;X7;K"f2c00" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X1;Y47;K"busr" +C;X2;K"UserList" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"editor" +C;X6;K"WESTRING_BEVAL_BUSR" +C;X7;K"b000" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y48;K"bvcr" +C;X2;K"colorR" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BVCR" +C;X7;K"c000" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y49;K"bvcg" +C;X2;K"colorG" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BVCG" +C;X7;K"c000" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y50;K"bvcb" +C;X2;K"colorB" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BVCB" +C;X7;K"c000" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X1;Y51;K"bgse" +C;X2;K"selectable" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BGSE" +C;X7;K"c000" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X1;Y52;K"bgsc" +C;X2;K"selcircsize" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BGSC" +C;X7;K"c000" +C;X8;K"real" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K99999 +C;X16;K1 +C;X17;K1 +C;X1;Y53;K"bgpm" +C;X2;K"portraitmodel" +C;X3;K"DestructableData" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_BEVAL_BGPM" +C;X7;K"c000" +C;X8;K"model" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +E diff --git a/share/mpq/units/units/humanabilityfunc.txt b/share/mpq/units/units/humanabilityfunc.txt new file mode 100644 index 0000000..017eece --- /dev/null +++ b/share/mpq/units/units/humanabilityfunc.txt @@ -0,0 +1,640 @@ +// Aerial Shackles +[Amls] +Art=ReplaceableTextures\CommandButtons\BTNMagicLariet.blp +Buttonpos=0,2 +Order=magicleash +Animnames=spell,looping +LightningEffect=LEAS + +// Aerial Shackles Caster +[Bmlc] +Effectsoundlooped=AerialShacklesLoop + +// Aerial Shackles Target +[Bmlt] +Buffart=ReplaceableTextures\CommandButtons\BTNMagicLariet.blp +Targetart=Abilities\Spells\Human\AerialShackles\AerialShacklesTarget.mdl +Targetattach=chest,mount + +// area of effect detection (scry) +[AHta] +Requires=Rhse +Art=ReplaceableTextures\CommandButtons\BTNReveal.blp +ButtonPos=0,2 +Casterart=Abilities\Spells\Items\AIta\CrystalBallCaster.mdl +Casterattach=overhead + +// Feedback +[Afbk] +Art=ReplaceableTextures\PassiveButtons\PASBTNFeedBack.blp +Specialart=Abilities\Spells\Human\Feedback\SpellBreakerAttack.mdl +Buttonpos=3,2 + +// Feedback +[Afbt] +Art=ReplaceableTextures\PassiveButtons\PASBTNFeedBack.blp +Specialart=Abilities\Spells\Human\Feedback\ArcaneTowerAttack.mdl +Buttonpos=3,2 + + +// Control Magic +[Acmg] +Requires=Rhss +Art=ReplaceableTextures\CommandButtons\BTNControlMagic.blp +Buttonpos=1,2 +Targetart=Abilities\Spells\Human\ControlMagic\ControlMagicTarget.mdl +Targetattach=overhead +Order=controlmagic + +[Bcmg] +Buffart=ReplaceableTextures\CommandButtons\BTNControlMagic.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Siphon Mana +[AHdr] +Art=ReplaceableTextures\CommandButtons\BTNManaDrain.blp +Researchart=ReplaceableTextures\CommandButtons\BTNManaDrain.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Effectsoundlooped=SiphonManaLoop +LightningEffect=DRAB,DRAL,DRAM + +[Bdbb] +Buffart=ReplaceableTextures\CommandButtons\BTNLifeDrain.blp + +[Bdbl] +Buffart=ReplaceableTextures\CommandButtons\BTNLifeDrain.blp + +[Bdbm] +Buffart=ReplaceableTextures\CommandButtons\BTNManaDrain.blp + +// Drain Life & Mana (Caster) +// This buff isn't ever visible on the info card. +[Bdcb] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\DrainCaster.mdl +Targetattach=chest + +// Drain Life (Caster) +// This buff isn't ever visible on the info card. +[Bdcl] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\DrainCaster.mdl +Targetattach=chest + +// Drain Mana (Caster) +// This buff isn't ever visible on the info card. +[Bdcm] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\ManaDrainCaster.mdl +Targetattach=chest + +// Drain Life & Mana (Target) +// This buff isn't ever visible on the info card. +[Bdtb] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\DrainTarget.mdl +Targetattach=chest + +// Drain Life (Target) +// This buff isn't ever visible on the info card. +[Bdtl] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\DrainTarget.mdl +Targetattach=chest + +// Drain Mana (Target) +// This buff isn't ever visible on the info card. +[Bdtm] +//Buffart= +Targetart=Abilities\Spells\Other\Drain\ManaDrainTarget.mdl +Targetattach=chest + +// Flak Cannons +[Aflk] +Art=ReplaceableTextures\PassiveButtons\PASBTNFlakCannons.blp +Buttonpos=2,2 +Requires=Rhfc +Targetart=Abilities\Spells\Human\FlakCannons\FlakTarget.mdl +Targetattach=chest +Specialart=Abilities\Spells\Human\FlakCannons\FlakTarget.mdl +Specialattach=chest + +// Frag Shards +[Afsh] +Art=ReplaceableTextures\PassiveButtons\PASBTNFragmentationBombs.blp +Buttonpos=1,2 +Requires=Rhfs +//Missileart=Abilities\Spells\Human\FragmentationShards\FragMissile.mdl +Targetart=Abilities\Weapons\FlyingMachine\FlyingMachineImpact.mdl +Targetattach=chest +//Specialart=Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl + +// Rocket Attack +[Aroc] +Requires=Rhrt +Art=ReplaceableTextures\PassiveButtons\PASBTNScatterRockets.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\RocketMissile\RocketMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +// Magic Defense +[Amdf] +Art=ReplaceableTextures\CommandButtons\BTNSpellBreakerMagicDefend.blp +Unart=ReplaceableTextures\CommandButtons\BTNSpellBreakerMagicUnDefend.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Casterart=Abilities\Spells\Human\Defend\DefendCaster.mdl +Order=magicdefense +Unorder=magicundefense + +// Human Build +[AHbu] +Art=ReplaceableTextures\CommandButtons\BTNHumanBuild.blp +Buttonpos=0,2 +Order=humanbuild + +// Sphere +[Asph] +Targetart=Units\Human\HeroBloodElf\BloodElfBall.mdl +Targetattachcount=3 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,third +Missileart=Units\Human\HeroBloodElf\BloodElfBall.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Spell Steal +[Asps] +Art=ReplaceableTextures\CommandButtons\BTNSpellStealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSpellStealOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=spellsteal +Orderon=spellstealon +Orderoff=spellstealoff +Targetart=Abilities\Spells\Human\SpellSteal\SpellStealTarget.mdl +Targetattach=overhead +Missileart=Abilities\Spells\Human\SpellSteal\SpellStealMissile.mdl +Missilearc=0.15 +Missilespeed=1000 +MissileHoming=1 + +// Cloud of Fog +[Aclf] +Art=ReplaceableTextures\CommandButtons\BTNCloudOfFog.blp +Requires=Rhcd +Buttonpos=1,2 +Order=cloudoffog +Animnames=stand,channel + +[Bclf] +Buffart=ReplaceableTextures\CommandButtons\BTNCloudOfFog.blp +Targetart= + +[Xclf] +Effectart=Abilities\Spells\Human\CloudOfFog\CloudOfFog.mdl +Effectsoundlooped=CloudOfFogLoop + +// Flame Strike +[AHfs] +Art=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=flamestrike +// Beware art +Effectart=Abilities\Spells\Human\FlameStrike\FlameStrikeTarget.mdl +// Impact art +Specialart=Abilities\Spells\Human\FlameStrike\FlameStrike1.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike2.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike.mdl +Animnames=spell,channel + +[BHfs] +// Burning art +Buffart=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Targetart=Abilities\Spells\Human\FlameStrike\FlameStrikeDamageTarget.mdl + +[XHfs] +// AOE Burn art +Effectart=Abilities\Spells\Human\FlameStrike\FlameStrikeEmbers.mdl +Effectsoundlooped=HumanFireLarge + +// Banish +[AHbn] +Art=ReplaceableTextures\CommandButtons\BTNBanish.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBanish.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Effectsound=BanishCaster +Order=banish + +[BHbn] +Buffart=ReplaceableTextures\CommandButtons\BTNBanish.blp +Targetart=Abilities\Spells\Human\Banish\BanishTarget.mdl +Effectsoundlooped=BanishLoop + +// Summon Phoenix +[AHpx] +Art=ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Human\MarkOfChaos\MarkOfChaosTarget.mdl +Order=summonphoenix + +// Phoenix (morph) +[Aphx] + +// Phoenix (progress bar) +[Bphx] + +// Phoenix Fire +[Apxf] +Art=ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\PhoenixMissile\Phoenix_Missile_mini.mdl +Missilespeed=900 +MissileHoming=1 + +// Phoenix Fire +[Bpxf] +Buffart=ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp +Targetart=Abilities\Spells\Other\BreathOfFire\BreathOfFireDamage.mdl + +// Flying Machine Bombs +[Agyb] +Requires=Rhgb +Art=ReplaceableTextures\PassiveButtons\PASBTNHumanArtilleryUpOne.blp +Buttonpos=1,2 + +// Storm Hammers +[Asth] +Requires=Rhhb +Art=ReplaceableTextures\PassiveButtons\PASBTNStormHammer.blp +Buttonpos=0,2 + +// flying machine detection +[Agyv] +Art=ReplaceableTextures\PassiveButtons\PASBTNFlyingMachineTrueSight.blp +Buttonpos=0,2 + +// Defend +[Adef] +Art=ReplaceableTextures\CommandButtons\BTNDefend.blp +Unart=ReplaceableTextures\CommandButtons\BTNDefendStop.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart=Abilities\Spells\Human\Defend\DefendCaster.mdl +Requires=Rhde +Order=defend +Unorder=undefend + +// Flare +[Afla] +Art=ReplaceableTextures\CommandButtons\BTNFlare.blp +Buttonpos=0,2 +Requires=Rhfl +Order=flare +Casterart=Abilities\Spells\Human\Flare\FlareCaster.mdl +Animnames=spell,attack + +[Xfla] +Effectart=Abilities\Spells\Human\Flare\FlareTarget.mdl + +// Magic Sentry (passive) +[Adts] +Art=ReplaceableTextures\PassiveButtons\PASBTNMagicalSentry.blp +Buttonpos=2,1 +Requires=Rhse +Casterart=Abilities\Spells\Human\MagicSentry\MagicSentryCaster.mdl +Casterattach=overhead + +// Inner Fire +[Ainf] +Art=ReplaceableTextures\CommandButtons\BTNInnerFireOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNInnerFireOff.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Casterart= +Requires=Rhpt +Requiresamount=2 +Effectsound=InnerFireCast +Order=innerfire +Orderon=innerfireon +Orderoff=innerfireoff + +// example of multiple attachment +[Binf] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNInnerFire.blp +Targetart=Abilities\Spells\Human\InnerFire\InnerFireTarget.mdl +Targetattachcount=1 +Targetattach=overhead +//Targetattach1=hand,left +//Targetattach2=hand,right + +// Dispel Magic +[Adis] +Art=ReplaceableTextures\CommandButtons\BTNDispelMagic.blp +Buttonpos=1,2 +Casterart= +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Specialart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Requires=Rhpt +Order=dispel + +// Heal +[Ahea] +Art=ReplaceableTextures\CommandButtons\BTNHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNHealOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=heal +Orderon=healon +Orderoff=healoff + +[Bhea] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNHeal.blp + +[BNhe] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNSlow.blp + +// Slow +[Aslo] +Art=ReplaceableTextures\CommandButtons\BTNSlowOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSlowOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart=Abilities\Spells\Human\Slow\SlowCaster.mdl +Order=slow +Orderon=slowon +Orderoff=slowoff + +[Bslo] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNSlow.blp +Targetart=Abilities\Spells\Human\slow\slowtarget.mdl + +// Invisibility +[Aivs] +Art=ReplaceableTextures\CommandButtons\BTNInvisibility.blp +Buttonpos=1,2 +Targetart=Abilities\Spells\Human\Invisibility\InvisibilityTarget.mdl +Targetattach=chest +Requires=Rhst +Order=invisibility + +[Binv] +Buffart=ReplaceableTextures\CommandButtons\BTNInvisibility.blp + +// Polymorph art notes: +// - When Polymorph is cast on an air unit, the "poof" [Aply] Specialart +// is played on the targeted unit, and the "falling sheep" [Aply] Effectart +// is played on ground under the targeted unit. +// - When cast on a ground unit, [Bply] Specialart is played on the ground +// under the unit when it turns into a sheep, and [Bply] Effectart is played +// on the ground under the unit when it turns back into the original unit. + +[Aply] +Art=ReplaceableTextures\CommandButtons\BTNPolymorph.blp +Buttonpos=2,2 +Casterart= +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphTarget.mdl +Effectart=Abilities\Spells\Human\Polymorph\PolyMorphFallingSheepArt.mdl +Requires=Rhst +Requiresamount=2 +Order=polymorph + +[Bply] +Buffart=ReplaceableTextures\CommandButtons\BTNPolymorph.blp +Specialart= +Effectart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl + +// Blizzard +[AHbz] +Art=ReplaceableTextures\CommandButtons\BTNBlizzard.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBlizzard.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Casterart= +Order=blizzard +Animnames=stand,channel + +[BHbd] +Buffart=ReplaceableTextures\CommandButtons\BTNBlizzard.blp +Targetart=Abilities\Spells\Other\FrostDamage\FrostDamage.mdl + +[XHbz] +Effectart=Abilities\Spells\Human\Blizzard\BlizzardTarget.mdl +Effectsoundlooped=BlizzardLoop +Effectsound=BlizzardWave + +// Summon Water Elemental +[AHwe] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=waterelemental + +[BHwe] +Buffart=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp + +// Brilliance Aura +[AHab] +Art=ReplaceableTextures\PassiveButtons\PASBTNBrilliance.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBrilliance.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Human\Brilliance\Brilliance.mdl +Targetattach=origin + +[BHab] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNBrilliance.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Mass Teleport +[AHmt] +Art=ReplaceableTextures\CommandButtons\BTNMassTeleport.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMassTeleport.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +// Shouldn't show art at targeted coordinate, so don't use Effectart. +Areaeffectart=Abilities\Spells\Human\MassTeleport\MassTeleportTo.mdl +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +// The targeted unit shouldn't show an effect, so there is no Targetart. +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Order=massteleport + +// Storm Bolt +[AHtb] +Art=ReplaceableTextures\CommandButtons\BTNStormBolt.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStormBolt.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Human\StormBolt\StormBoltMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Order=thunderbolt +Animnames=spell,throw + +[BHtb] +Buffart=ReplaceableTextures\CommandButtons\BTNStormBolt.blp +Targetart=Abilities\Spells\Human\StormBolt\StormBoltTarget.mdl +Targetattach=overhead + +// Thunder Clap +[AHtc] +Art=ReplaceableTextures\CommandButtons\BTNThunderclap.blp +Researchart=ReplaceableTextures\CommandButtons\BTNThunderclap.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Casterart=Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl +Casterattach=origin +Effectart= +Order=thunderclap +Animnames=spell,slam + +[BHtc] +Buffart=ReplaceableTextures\CommandButtons\BTNThunderclap.blp +Targetart=Abilities\Spells\Orc\StasisTrap\StasisTotemTarget.mdl +Targetattach=overhead + +// Bash +[AHbh] +Art=ReplaceableTextures\PassiveButtons\PASBTNBash.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBash.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=bash + +[BHbh] +Buffart=ReplaceableTextures\CommandButtons\BTNBash.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +// Avatar +[AHav] +Art=ReplaceableTextures\CommandButtons\BTNAvatarOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNAvatarOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNAvatar.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Casterart=Abilities\Spells\Human\Avatar\AvatarCaster.mdl +Order=avatar + +[BHav] +Buffart=ReplaceableTextures\CommandButtons\BTNAvatar.blp +Targetart= + +// Holy Light +[AHhb] +Art=ReplaceableTextures\CommandButtons\BTNHolyBolt.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHolyBolt.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl +Order=holybolt + +// Divine Shield +[AHds] +Art=ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp +Unart=ReplaceableTextures\CommandButtons\BTNDivineShieldOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Order=divineshield +Unorder=undivineshield + +[BHds] +Buffart=ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp +Targetart=Abilities\Spells\Human\DivineShield\DivineShieldTarget.mdl +Targetattach=origin + +// Devotion Aura +[AHad] +Art=ReplaceableTextures\PassiveButtons\PASBTNDevotion.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDevotion.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Human\DevotionAura\DevotionAura.mdl +Targetattach=origin + +[BHad] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNDevotion.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Resurrection +[AHre] +Art=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Researchart=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Casterart=Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl +Targetart=Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl +Order=resurrection + +// Militia +[Amil] +Art=ReplaceableTextures\CommandButtons\BTNCallToArms.blp +Unart=ReplaceableTextures\CommandButtons\BTNBacktoWork.blp +Buttonpos=1,2 +Unbuttonpos=2,2 +Order=militia +Unorder=militiaoff + +[Bmil] +Buffart=ReplaceableTextures\CommandButtons\BTNCallToArms.blp + +// Militia Conversion +[Amic] +Art=ReplaceableTextures\CommandButtons\BTNCallToArms.blp +Unart=ReplaceableTextures\CommandButtons\BTNBacktoWork.blp +Buttonpos=1,2 +Unbuttonpos=2,2 +Effectsound=TownHallCallToArms +Order=townbellon +Unorder=townbelloff + +// 'damaged' attachment effect, small +[Xfhs] +TargetArt=Environment\SmallBuildingFire\SmallBuildingFire2.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl +Targetattachcount=2 +Targetattach=sprite,first +Targetattach1=sprite,fourth +Effectsoundlooped=HumanFireSmall + +// medium +[Xfhm] +TargetArt=Environment\LargeBuildingFire\LargeBuildingFire2.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\SmallBuildingFire\SmallBuildingFire2.mdl +Targetattachcount=4 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fourth +Targetattach3=sprite,fifth +Effectsoundlooped=HumanFireMedium + +// large +[Xfhl] +TargetArt=Environment\LargeBuildingFire\LargeBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire1.mdl,Environment\SmallBuildingFire\SmallBuildingFire0.mdl +Targetattachcount=6 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fifth +Targetattach3=sprite,third +Targetattach4=sprite,fourth +Targetattach5=sprite,sixth +Effectsoundlooped=HumanFireLarge diff --git a/share/mpq/units/units/humanabilitystrings.txt b/share/mpq/units/units/humanabilitystrings.txt new file mode 100644 index 0000000..eb3d9de --- /dev/null +++ b/share/mpq/units/units/humanabilitystrings.txt @@ -0,0 +1,542 @@ +// Aerial Shackles +[Amls] +Name=空中锁镣 +Tip=空中锁镣(|cffffcc00E|r) +Ubertip="以魔力禁锢一个目标敌空中单位,使其不能移动或攻击,并每秒受到伤害力。|n持续秒。" +Hotkey=E + +// Aerial Shackles Target +[Bmlt] +Bufftip=空中锁镣 +Buffubertip="该单位已受空中锁镣禁锢,无法移动或攻击,并且不断受到伤害。" + +// area of effect detection (scry) +[AHta] +Name=显示 +Tip=显示(|cffffcc00R|r) +Ubertip="在地图上显示一块区域。|n探测到隐形的单位。|n持续秒。" +Hotkey=R + +// Feedback +[Afbk] +Name=魔法回应 +EditorSuffix= (魔法破坏者) +Tip=魔法回应 +Ubertip="魔法破坏者每次攻击消耗目标点魔法值。魔法燃烧后将会对攻击对象造成伤害。" + +// Feedback +[Afbt] +Name=魔法回应 +EditorSuffix= (神秘之塔) +Tip=魔法回应 +Ubertip="塔的每次攻击消耗目标点魔法值,同时还对于目标造成相同数值的伤害。|n|n这种塔的攻击对于召唤出来的单位还能造成点的附加伤害。" + + +// Control Magic +[Acmg] +Name=控制魔法 +Tip=控制魔法(|cffffcc00C|r) +Ubertip="控制一个敌军的召唤单位。消耗的魔法值基为召唤单位生命值的%。" +Hotkey=C + +[Bcmg] +Bufftip=控制魔法 +Buffubertip="这个单位可以被控制。它现在遵从一个新主人了。" + +// Siphon Mana +[AHdr] +Name=魔法吸吮 +Tip=魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 1|r],魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 2|r],魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 3|r] +Ubertip="让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快消失。|n持续秒。","让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。","让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人点魔法值。或者是每秒向己方单位转移点魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。" +Hotkey=N +Researchtip="学习魔法吸吮(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +Researchubertip="让魔法能量在血魔法师和目标单位之间转移。能每秒吸取敌人一定点数的魔法值。或者是每秒向己方单位转移一定点数的魔法值。|n|n吸吮魔法能让血魔法师的魔法值超过它自己的最大值。但是如果你不是尽快使用超量的魔法值的话,那么这些魔法值会很快地消失。|n持续秒。|n|n|cffffcc00等级 1|r - 每秒吸取点魔法值。|n|cffffcc00等级 2|r - 每秒吸取点魔法值。 |n|cffffcc00等级 3|r - 每秒吸取点魔法值。" +Researchhotkey=N + +[Bdbb] +Name=吸取生命值和魔法值(附加) +Bufftip=吸取生命值和魔法值 +Buffubertip="这个单位具有额外的生命值和魔法值。但是这个额外的值会消失得很快。" + +[Bdbl] +Name=吸取生命(附加) +Bufftip=吸取生命 +Buffubertip="这个单位具有额外的生命值。但是这个额外的值会消失得很快。" + +[Bdbm] +Name=吸取魔法(附加) +Bufftip=吸取魔法 +Buffubertip="这个单位具有额外的魔法值。但是这个额外的值会消失得很快。" + +// Flak Cannons +[Aflk] +Name=高射炮火 +Tip=高射炮火 +Ubertip="强大的加农炮对空将会造成区域性伤害。" + +// Frag Shards +[Afsh] +Name=碎片攻击 +Tip=碎片攻击 +Ubertip="迫击炮小队使用碎片攻击的迫击炮,将会增加其对无护甲和中型护甲单位的伤害。" + +// Barrage +[Aroc] +Name=弹幕攻击 +Tip=弹幕攻击 +Ubertip="对周围的敌方空中单位进行强有力的弹幕攻击。每次发射能造成 - 点的伤害。" + +// Tank upgrade +[Srtt] +Requires=Rhrt + +// Magic Defense +[Amdf] +Name=魔法防御 +Tip=魔法防御(|cffffcc00D|r) +Untip=停止使用魔法防御(|cffffcc00D|r) +Ubertip="激活该技能来获得魔法免疫,但是会减慢%的移动速度。" +Unubertip="取消激活该技能能恢复到正常的移动速度,但是同时也对魔法不再免疫。" +Hotkey=D +Unhotkey=D + +// Sphere +[Asph] +Name=球体 + +// Spell Steal +[Asps] +Name=魔法盗取 +Tip=魔法盗取(|cffffcc00T|r) +Ubertip="从敌人身上盗取正面效果的魔法并将其运用到附近的友军单位身上。或者是将友军单位身上的一个负面效果魔法应用到敌方单位身上。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=T +Unhotkey=T + +// Cloud +[Aclf] +Name=乌云技能 +Tip=乌云技能(|cffffcc00C|r) +Ubertip="施放在具有远程攻击能力的敌方建筑物上使其丧失攻击力。|n持续秒。" +Hotkey=C + +[Bclf] +Bufftip=乌云技能 +Buffubertip="该建筑物中了乌云技能,所以丧失了远程攻击的能力。" + +// Flame Strike +[AHfs] +Name=烈焰风暴 +Tip=烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 1|r],烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 2|r],烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成45点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。","召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成80点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到轻微的伤害。","召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成110点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到中等程度的伤害。" +Hotkey=F +Researchtip="学习烈焰风暴(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出一道巨大的火焰,对目标区域内的敌方步兵造成长时间的伤害。|n|n|cffffcc00等级 1|r -持续3秒,每秒45点的伤害,在接下来的6秒时间内持续造成极度轻微的伤害。|n|cffffcc00等级 2|r -持续3秒,每秒80点的伤害,在接下来的6秒时间内持续造成轻微的伤害。|n|cffffcc00等级 3|r -持续3秒,每秒110点的伤害,在接下来的6秒时间内持续造成中等程度的伤害。" +Researchhotkey=F + +[BHfs] +Bufftip=烈焰风暴 +Buffubertip="该单位处于烈焰风暴的攻击之中,因此会在一定时间内持续受到伤害。" + +// Banish +[AHbn] +Name=驱散 +Tip=驱散(|cffffcc00B|r) - [|cffffcc00等级 1|r],驱散(|cffffcc00B|r) - [|cffffcc00等级 2|r],驱散(|cffffcc00B|r) - [|cffffcc00等级 3|r] +Ubertip="使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。","使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。","使一个非机械单位的重量变轻,并通过 % 降低其移动速度持续 秒。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。" +Hotkey=B +Researchtip="学习驱散(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使一个非机械单位的重量变轻,并通过 % 在较短时期降低其移动速度。 变轻的单位不能攻击,但是他们能够施放魔法,几个魔法可以形成更强大的攻击。 |n|n|cffffcc00等级 1|r - 魔法, 持续 秒。 |n|cffffcc00等级 2|r - 魔法, 持续 秒。 |n|cffffcc00等级 3|r - 魔法, 持续 秒。" +Researchhotkey=B + +[BHbn] +Bufftip=驱散 +Buffubertip="该单位被驱散了并处于虚无状态之中。被化为虚无的单位不能攻击,但是能施放魔法。敌人的魔法也会对其造成额外的伤害。" + +// Summon Phoenix +[AHpx] +Name=火凤凰 +Tip=火凤凰(|cffffcc00X|r) +Ubertip="召唤一只强大的火凤凰。火凤凰全身燃烧剧烈的火焰,烧伤附近的空中敌人。具有魔法免疫、抗性皮肤。当火凤凰死后,会变成一只蛋,可以再次孵化成火凤凰。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=X +Researchtip=学习火凤凰(|cffffcc00X|r) +Researchubertip="召唤一只强大的火凤凰。火凤凰全身燃烧剧烈的火焰,烧伤附近的空中敌人。具有魔法免疫、抗性皮肤。当火凤凰死后,会变成一只蛋,可以再次孵化成火凤凰。|n|n|cffffcc00能攻击地面和空中单位。|r" +Researchhotkey=X + +// Phoenix (morph) +[Aphx] +Name=火凤凰变形(和凤凰蛋有关的) + +// Phoenix (progress bar) +[Bphx] +Bufftip=火凤凰 +Buffubertip="火凤凰的力量显现了。" + +// Phoenix Fire +[Apxf] +Name=凤凰火焰 +Tip=凤凰火焰 +Ubertip="火焰流淌,灼烧附近的敌单位。" + +// Phoenix Fire +[Bpxf] +Bufftip=凤凰火焰 +Buffubertip="该单位正受到凤凰火焰的灼伤,不断受到伤害。" + +// Flying Machine Bombs +[Agyb] +Name=飞行机器炸弹 +Tip=飞行机器炸弹 +Ubertip="使得飞行机器能攻击地面单位。" + +// Storm hammers +[Asth] +Name=风暴战锤 +Tip=风暴战锤 +Ubertip="让狮鹫骑士的战锤能进行弹射,从而对多个敌人造成伤害。" + +// Flying Machine Vision +[Agyv] +Name=真实视域 +Tip=真实视域 +Ubertip="显示周围的隐形单位。" +EditorSuffix= (飞行机器) + +// Defend +[Adef] +Name=防御 +Tip=防御(|cffffcc00D|r) +Ubertip="激活以拥有%的概率反弹穿刺攻击。对于没有被反弹的攻击,也只会受到%的伤害。如果防御状态被激活,移动速度会变成%的常规速度。" +Untip=停止防御(|cffffcc00D|r) +Unubertip="取消防御模式,回到以往的移动速度。" +Hotkey=D +Unhotkey=D + +// Flare +[Afla] +Name=照明弹 +Tip=照明弹(|cffffcc00F|r) +Ubertip="在目标区域内投射一颗矮人族的照明弹,从而在秒的时间内驱散那里的战争迷雾。|n也能探测到隐形单位。" +Hotkey=F + +// Magic Sentry (passive) +[Adts] +Name=魔法岗哨 +Tip=魔法岗哨 +Ubertip="显示周围的隐形单位。" +EditorSuffix= (人族的防御塔) + +// Inner Fire +[Ainf] +Name=心灵之火 +Tip=心灵之火(|cffffcc00F|r) +Ubertip="增加目标友军单位%的攻击力和的防御力。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=F +Unhotkey=F + +[Binf] +Bufftip=心灵之火 +Buffubertip="该单位拥有心灵之火,所以其防御和攻击力都得到了加强。" + +// Dispel Magic +[Adis] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00D|r) +UberTip="驱散目标区域内的所有魔法效果。|n|cffffcc00能对召唤出来的单位造成的伤害。|r" +Hotkey=D + +// Heal +[Ahea] +Name=医疗 +Tip=医疗(|cffffcc00E|r) +Ubertip="医疗一个友军的非机械受伤单位,恢复其的生命值。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=E +Unhotkey=E + +[Bhea] +Bufftip=医疗 +Buffubertip="该单位正在被医疗,其丧失的生命值将得到恢复。" + +[BNhe] +Bufftip=中立的医疗 +Buffubertip="该单位正在被医疗;其丧失的生命值将得到恢复。" + +// Slow +[Aslo] +Name=减速 +Tip=减速(|cffffcc00W|r) +Ubertip="减慢目标单位%的攻击速度和%的移动速度。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=W +Unhotkey=W + +[Bslo] +Bufftip=减速 +Buffubertip="该单位被减速了,其移动速度和攻击速度都会下降。" + +// Invisibility +[Aivs] +Name=隐形术 +Tip=隐形术(|cffffcc00I|r) +Ubertip="使目标单位处于隐形,但是一旦其攻击或者使用魔法则会显露原形。|n持续 秒。" +Hotkey=I + +[Binv] +Bufftip=隐形术 +Buffubertip="该单位处于隐形的状态之中; 敌人不能看到其存在。如果它攻击或者施放魔法,那么就会暴露出自己的踪迹。" + +// Polymorph +[Aply] +Name=变形术 +Tip=变形术(|cffffcc00O|r) +Ubertip="使得敌人的一个单位变成一头小绵羊,保有原有的生命值和防御,但是会使其丧失攻击力。|n不能被用在英雄身上。|n持续秒。" +Hotkey=O + +[Bply] +Bufftip=变形术 +Buffubertip="该单位被施放了变形术,因此被变成了一头温顺的小绵羊。" + +// Blizzard +[AHbz] +Name=暴风雪 +Tip=暴风雪(|cffffcc00B|r) - [|cffffcc00等级 1|r],暴风雪(|cffffcc00B|r) - [|cffffcc00等级 2|r],暴风雪(|cffffcc00B|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。","召唤出次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。","召唤出 次的冰片攻击,每一次攻击能对一小块区域内的单位造成的伤害值。" +Hotkey=B +Researchtip="学习暴风雪(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能召唤出若干次冰片攻击,对目标区域内的单位造成一定的伤害。|n|n|cffffcc00等级 1|r -次攻击,每次造成点的伤害。|n|cffffcc00等级 2|r -次攻击,每次造成点的伤害。|n|cffffcc00等级 3|r -次攻击,每次造成点的伤害。" +Researchhotkey=B + +[BHbd] +Bufftip=暴风雪 +Buffubertip="该单位正受到暴风雪的攻击伤害。" + +// Summon Water Elemental +[AHwe] +Name=召唤水元素 +Tip=召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 1|r],召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 2|r],召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为-点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个具有生命值的水元素来帮大魔法师进行战斗。攻击力为-点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r" +ResearchUberTip="召唤出一个水元素来帮大魔法师进行战斗。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r - 点生命值,-点的伤害。|n|cffffcc00等级 2|r - 点生命值,-点的伤害。|n|cffffcc00等级 3|r - 点生命值,-点的伤害。" +Hotkey=W +Researchtip="学习召唤水元素(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchhotkey=W + +[BHwe] +Bufftip=水元素 +Buffubertip="召唤出来的单位容易遭到驱散。" + +// Brilliance Aura +[AHab] +Name=辉煌光环 +Tip=辉煌光环 - [|cffffcc00等级 1|r],辉煌光环 - [|cffffcc00等级 2|r],辉煌光环 - [|cffffcc00等级 3|r] +Ubertip="能加快周围友军单位的魔法值恢复速度。","能加快周围友军单位的魔法值恢复速度。","能加快周围友军单位的魔法值恢复速度。" +Researchtip="学习辉煌光环(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能加快周围友军单位的魔法值恢复速度。|n|n|cffffcc00等级 1|r -能缓慢地加快周围友军的魔法值恢复速度。|n|cffffcc00等级 2|r -能稍快地加快周围友军的魔法值恢复速度。|n|cffffcc00等级 3|r -能迅速地加快周围友军的魔法值恢复速度。" +Researchhotkey=R + +[BHab] +Bufftip=辉煌光环 +Buffubertip="该单位处于辉煌光环之下,因此其魔法恢复速度将加快。" + +// Mass Teleport +[AHmt] +Name=群体传送 +Tip=群体传送(|cffffcc00T|r) +Ubertip="将个单位(包括大魔法师在内)传送到一个友军单位或者建筑物旁边。" +Hotkey=T +Researchtip=学习群体传送(|cffffcc00T|r) +Researchubertip="将个单位(包括大魔法师在内)传送到一个友军单位或者建筑物旁边。" +Researchhotkey=T +Globalmessage= +Globalsound= + +// Storm Bolt +[AHtb] +Name=风暴之锤 +Tip=风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 1|r], 风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 2|r], 风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 3|r] +Ubertip="向目标投掷一巨大的魔法锤,对其造成点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法锤,对其造成 点伤害并使其秒内处于眩晕状态。","向目标投掷一巨大的魔法锤,对其造成点伤害并使其秒内处于眩晕状态。" +Hotkey=T +Researchtip="学习风暴之锤(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="向目标投掷一巨大的魔法锤,对其造成一定伤害并使其处于眩晕状态。|n|n|cffffcc00等级 1|r - 点伤害,秒眩晕状态。|n|cffffcc00等级 2|r - 点伤害,秒眩晕状态。|n|cffffcc00等级 3|r - 点伤害,秒眩晕状态。" +Researchhotkey=T + +[BHtb] +Bufftip=风暴之锤 +Buffubertip="该单位遭到了风暴之锤的攻击,因此不能移动,攻击或者施放魔法。" + +// Thunder Clap +[AHtc] +Name=雷霆一击 +Tip=雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 1|r],雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 2|r],雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="重击地面,对周围的地面单位造成点伤害并使其减慢 %的移动速度和%的攻击速度。","重击地面,对周围的地面单位造成点伤害并使其减慢%的移动速度和%的攻击速度。","重击地面,对周围的地面单位造成点伤害并使其减慢%的移动速度和%的攻击速度。" +Hotkey=C +Researchtip="学习雷霆一击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="重击地面,对周围的地面单位造成伤害并减慢其移动速度和攻击速度。|n|n|cffffcc00等级 1|r - 点伤害,%的移动速度,%的攻击速度。|n|cffffcc00等级 2|r - 点伤害,%的移动速度,%的攻击速度。|n|cffffcc00等级 3|r - 点伤害,%的移动速度,%的攻击速度。" +Researchhotkey=C + +[BHtc] +Bufftip=雷霆一击 +Buffubertip="该单位受到了雷霆一击的攻击,其移动速度和攻击速度都会减慢。" + +// Bash +[AHbh] +Name=重击 +Tip=重击 - [|cffffcc00等级 1|r],重击 - [|cffffcc00等级 2|r],重击 - [|cffffcc00等级 3|r] +Ubertip="给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。","给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。","给予%的概率使得山丘之王的常规攻击能附带点的额外伤害值,并在秒内使得对手处于眩晕状态。" +Researchtip="学习重击(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="给予一定的概率使得山丘之王的常规攻击能附带点的附加伤害值并在秒内使得对手处于眩晕状态。|n|n|cffffcc00等级 1|r - 每次攻击%的概率。|n|cffffcc00等级 2|r - 每次攻击%的概率。|n|cffffcc00等级 3|r - 每次攻击%的概率。" +Researchhotkey=B + +[BHbh] +Bufftip=重击 +Buffubertip="这个单位遭到了重击,因此不能移动,攻击和施放魔法。" + +// Avatar +[AHav] +Name=天神下凡 +Tip=激活天神下凡(|cffffcc00V|r) +UberTip="激活该技能能提高山丘之王点的护甲,点的生命值,点的攻击力并使其对魔法免疫。|n持续秒。" +Untip=取消天神下凡(|cffffcc00V|r) +UnUberTip="" +Hotkey=V +Unhotkey=V +Researchtip=学习天神下凡(|cffffcc00V|r) +ResearchUberTip="激活了该技能以后能提高山丘之王点的护甲, 点的生命值, 点的攻击力并使其对魔法免疫。|n持续秒。" +Researchhotkey=V + +[BHav] +Bufftip=天神下凡 +Buffubertip="该单位处于天神下凡的状态之中,因此其生命值、攻击力、护甲都得到了加强。而且还会魔法免疫。" + +// Holy Light +[AHhb] +Name=神圣之光 +Tip=神圣之光(|cffffcc00T|r) - [|cffffcc00等级 1|r], 神圣之光(|cffffcc00T|r) - [|cffffcc00等级 2|r], 神圣之光(|cffffcc00T|r) - [|cffffcc00等级 3|r] +UberTip="神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。","神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。","神圣之光能治愈友军单位点的生命值或者对敌军的不死单位造成一半的伤害。" +Hotkey=T +Researchtip="学习神圣之光(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="神圣之光能治愈友军单位或者对敌军的不死单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 恢复友军单位点的生命值。|n|cffffcc00等级 2|r - 恢复友军单位点的生命值。|n|cffffcc00等级 3|r - 恢复友军单位点的生命值。" +Researchhotkey=T + +// Divine Shield +[AHds] +Name=神圣护甲 +Tip=激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 1|r],激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 2|r],激活神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 3|r] +Ubertip="在秒内使得圣骑士对所有的攻击免疫。","在秒内使得圣骑士对所有的攻击免疫。","在秒内使得圣骑士对所有的攻击免疫。" +Untip=取消神圣护甲(|cffffcc00D|r) +Hotkey=D +Unhotkey=D +Researchtip="学习神圣护甲(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +Researchubertip="在一定的时间内使得圣骑士对所有的攻击免疫。|n|n|cffffcc00等级 1|r - 持续秒。|n|cffffcc00等级 2|r - 持续秒。|n|cffffcc00等级 3|r - 持续秒。" +Researchhotkey=D +Globalmessage= +Globalsound= + +[BHds] +Bufftip=神圣护甲 +Buffubertip="该单位处于神圣护甲的保护之下,因此是无敌的。" + +// Devotion Aura +[AHad] +Name=专注光环 +Tip=专注光环 - [|cffffcc00等级 1|r],专注光环 - [|cffffcc00等级 2|r],专注光环 - [|cffffcc00等级 3|r] +Ubertip="为周围友军提供点的额外护甲。","为周围友军提供点的额外护甲。","为周围友军提供点的额外护甲。" +Researchtip="学习专注光环(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +Researchubertip="为周围友军提供一定额外的护甲。|n|n|cffffcc00等级 1|r - 增加点的护甲。|n|cffffcc00等级 2|r - 增加点的护甲。|n|cffffcc00等级 3|r - 增加点的护甲。" +Researchhotkey=V + +[BHad] +Bufftip=专注光环 +Buffubertip="该单位处于专注光环的作用之下,因此提高了护甲。" + +// Resurrection +[AHre] +Name=复活 +Tip=复活(|cffffcc00R|r) +Ubertip="复活周围个友军单位。" +Hotkey=R +Researchtip=学习复活(|cffffcc00R|r) +Researchubertip="复活周围个友军单位。" +Researchhotkey=R + +// Militia +[Amil] +Name=战斗号召 +Tip=战斗号召(|cffffcc00C|r) +Untip=回到工作(|cffffcc00W|r) +Ubertip="让农民跑到最近的一个城镇大厅从而转变成民兵。|n持续秒。" +Unubertip="让民兵跑到最近的一个城镇大厅从而让其重新变回农民。" +Hotkey=C +Unhotkey=W +EditorSuffix= (农民) + +[Bmil] +Bufftip=民兵 +Buffubertip="该农民变成了民兵,所有其移动速度,攻击速度,攻击力,护甲都得到了加强。" + +// Militia Conversion +[Amic] +Name=战斗号召 +Tip=战斗号召(|cffffcc00C|r) +Untip=回到工作(|cffffcc00W|r) +Ubertip="让附近的农民过来从而让其变成民兵。|n持续秒。" +Unubertip="让附近的民兵过来从而让其重新变成农民。" +Hotkey=C +Unhotkey=W +EditorSuffix= (城镇大厅) + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BHbz] +EditorName=暴风雪 (施法者) + +[Bdcb] +EditorName=汲取生命值和魔法值(施法者) + +[Bdcl] +EditorName=汲取生命值(施法者) + +[Bdcm] +EditorName=汲取魔法值 (施法者) + +[Bdtb] +EditorName=汲取生命值和魔法值(目标) + +[Bdtl] +EditorName=汲取生命值(目标) + +[Bdtm] +EditorName=汲取魔法值 (目标) + +[Bmlc] +EditorName=空中锁镣(施法者) + +[Bivs] +EditorName=隐形 (额外的) + +[XHbz] +EditorName=暴风雪 (效果) + +[XHfs] +EditorName=烈焰风暴(效果) + +[Xclf] +EditorName=乌云 (效果) + +[Xfla] +EditorName=照明弹(效果) + +[Xfhs] +EditorName=建筑物伤害 – 人族 小 + +[Xfhm] +EditorName=建筑物伤害 – 人族 中 + +[Xfhl] +EditorName=建筑物伤害 – 人族 大 diff --git a/share/mpq/units/units/humanunitfunc.txt b/share/mpq/units/units/humanunitfunc.txt new file mode 100644 index 0000000..c03a0d8 --- /dev/null +++ b/share/mpq/units/units/humanunitfunc.txt @@ -0,0 +1,444 @@ +[Hblm] +Art=ReplaceableTextures\CommandButtons\BTNHeroBloodElfPrince.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\BloodElfMissile\BloodElfMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-sorceror.blp + +[halt] +Trains=Hamg,Hmkg,Hpal,Hblm +Art=ReplaceableTextures\CommandButtons\BTNAltarOfKings.blp +Buttonpos=1,1 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium +Revive=1 + +[Hamg] +Art=ReplaceableTextures\CommandButtons\BTNHeroArchMage.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +MovementSoundLabel=HumanHeroArchMageMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-archmage.blp + +[harm] +Requires=hkee,hbla +Trains=hgyr,hmtm,hmtt,hrtt +Art=ReplaceableTextures\CommandButtons\BTNWorkshop.blp +Buttonpos=3,1 +Researches=Rhgb,Rhfl,Rhrt,Rhfc,Rhfs +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[hars] +Requires=hkee +Trains=hmpr,hsor,hspt +Researches=Rhpt,Rhst,Rhse,Rhss +Art=ReplaceableTextures\CommandButtons\BTNArcaneSanctum.blp +Buttonpos=2,1 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hbar] +Trains=hfoo,hrif,hkni +Researches=Rhde,Rhan,Rhri +Art=ReplaceableTextures\CommandButtons\BTNHumanBarracks.blp +Buttonpos=1,0 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[hbla] +Requires=htow +Art=ReplaceableTextures\CommandButtons\BTNBlacksmith.blp +Buttonpos=3,0 +Researches=Rhme,Rhar,Rhla,Rhra +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hcas] +Requires=halt +Trains=hpea +Researches=Rhpm +Art=ReplaceableTextures\CommandButtons\BTNCastle.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.15 +Missilespeed=1800 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,second +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=large + +[hctw] +Requires=harm +Art=ReplaceableTextures\CommandButtons\BTNCannonTower.blp +Buttonpos=1,2 +Missileart=Abilities\Weapons\CannonTowerMissile\CannonTowerMissile.mdl +Missilearc=0.35 +Missilespeed=700 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,second +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +// blood elf dragon hawk +[hdhw] +Requires=hvlt +Art=ReplaceableTextures\CommandButtons\BTNDragonHawk.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\DragonHawkMissile\DragonHawkMissile.mdl +Missilearc=0.15 +Missilespeed=1100 +MissileHoming=1 +Attachmentanimprops=medium + +[hhou] +Art=ReplaceableTextures\CommandButtons\BTNFarm.blp +Buttonpos=0,1 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hfoo] +Art=ReplaceableTextures\CommandButtons\BTNFootman.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hgra] +Requires=hcas,hlum +Trains=hgry,hdhw +Researches=Rhhb,Rhcd +Art=ReplaceableTextures\CommandButtons\BTNGryphonAviary.blp +Buttonpos=1,2 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[hgtw] +Requires=hlum +Art=ReplaceableTextures\CommandButtons\BTNGuardTower.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.15 +Missilespeed=1800 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,first +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hwtw] +Upgrade=hgtw,hctw,hatw +Art=ReplaceableTextures\CommandButtons\BTNHumanWatchTower.blp +Buttonpos=0,2 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hatw] +Requires= +Art=ReplaceableTextures\CommandButtons\BTNHumanArcaneTower.blp +Buttonpos=2,2 +Missileart=Abilities\Spells\Undead\OrbOfDeath\OrbOfDeathMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,third +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hgyr] +Art=ReplaceableTextures\CommandButtons\BTNFlyingMachine.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\GyroCopter\GyroCopterImpact.mdl,Abilities\Weapons\GyroCopter\GyroCopterMissile.mdl +Missilearc=0.0,0.0 +Missilespeed=2000,900 +MovementSoundLabel=HumanGyrocopterMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops=medium + +[hkee] +Upgrade=hcas +Trains=hpea +Researches=Rhpm +Art=ReplaceableTextures\CommandButtons\BTNKeep.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.15 +Missilespeed=1800 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,first +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=large + +[hkni] +Requires=hlum,hcas,hbla +Art=ReplaceableTextures\CommandButtons\BTNKnight.blp +Buttonpos=2,0 +MovementSoundLabel=HumanKnightMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +[hlum] +Art=ReplaceableTextures\CommandButtons\BTNHumanLumberMill.blp +Buttonpos=2,0 +Researches=Rhac,Rhlh +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[hmil] +Builds=htow,hhou,hbar,hbla,hwtw,halt,harm,hars,hlum,hgra,hvlt +Art=ReplaceableTextures\CommandButtons\BTNMilitia.blp +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[Hmkg] +Art=ReplaceableTextures\CommandButtons\BTNHeroMountainKing.blp +Buttonpos=1,2 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-mountainking.blp + +[hmpr] +Art=ReplaceableTextures\CommandButtons\BTNPriest.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\PriestMissile\PriestMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-priest.blp + +[hmtm] +Art=ReplaceableTextures\CommandButtons\BTNMortarTeam.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\Mortar\MortarMissile.mdl +Missilearc=0.35 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +[Hpal] +Art=ReplaceableTextures\CommandButtons\BTNHeroPaladin.blp +Buttonpos=2,2 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-paladin.blp + +[hpea] +Builds=htow,hhou,hbar,hbla,hwtw,halt,harm,hars,hlum,hgra,hvlt +Art=ReplaceableTextures\CommandButtons\BTNPeasant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hrif] +Requires=hbla +Art=ReplaceableTextures\CommandButtons\BTNRifleman.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\Rifle\RifleImpact.mdl +Missilearc=0.0 +Missilespeed=1900 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hsor] +Art=ReplaceableTextures\CommandButtons\BTNSorceress.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\SorceressMissile\SorceressMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-sorceress.blp + +// Blood Elf Spell Breaker +[hspt] +Requires=hvlt,hkee +Art=ReplaceableTextures\CommandButtons\BTNSpellBreaker.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\BloodElfSpellThiefMISSILE\BloodElfSpellThiefMISSILE.mdl +Missilearc=0.00 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[hmtt] +Requires=hcas +Art=ReplaceableTextures\CommandButtons\BTNSeigeEngine.blp +Attachmentanimprops=large +Buttonpos=2,0 +MovementSoundLabel=HumanSteamTankMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\SteamTank\SteamTankImpact.mdl +Missilearc=0.0 +Missilespeed=2500 + +[hrtt] +Requires=hcas +Art=ReplaceableTextures\CommandButtons\BTNSeigeEngineWithMissles.blp +Attachmentanimprops=large +Animprops=alternate +Buttonpos=2,0 +MovementSoundLabel=HumanSteamTankMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\SteamTank\SteamTankImpact.mdl,Abilities\Weapons\RocketMissile\RocketMissile.mdl +Missilearc=0.0,0.15 +Missilespeed=2500,900 +Missilehoming=1 + +[htow] +Upgrade=hkee +Trains=hpea +Researches=Rhpm +Art=ReplaceableTextures\CommandButtons\BTNTownHall.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.15 +Missilespeed=1800 +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=large + +// Arcane Vault +[hvlt] +Art=ReplaceableTextures\CommandButtons\BTNArcaneVault.blp +Buttonpos=2,2 +Makeitems=sreg,mcri,plcl,phea,pman,stwp,tsct,ofir,ssan +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium + +[hwat] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +[hwt2] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +[hwt3] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +[hgry] +Art=ReplaceableTextures\CommandButtons\BTNGryphonRider.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\GryphonRiderMissile\GryphonRiderMissile.mdl +Missilearc=0.15 +Missilespeed=1100 +Targetart=Abilities\Weapons\GryphonRiderMissile\GryphonRiderMissileTarget.mdl +Attachmentanimprops=medium + +[zmar] +Art=ReplaceableTextures\CommandButtons\BTNRifleman.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\Rifle\RifleImpact.mdl +Missilearc=0.0 +Missilespeed=1900 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// phoenix +[hphx] +Art=ReplaceableTextures\CommandButtons\BTNMarkOfFire.blp +Missileart=Abilities\Weapons\PhoenixMissile\Phoenix_Missile.mdl +Missilearc=0.15 +Missilespeed=1800 +MissileHoming=1 +Buttonpos=0,0 +Attachmentanimprops=medium + +// phoenix egg +[hpxe] +Art=ReplaceableTextures\CommandButtons\BTNPhoenixEgg.blp + +//#RESTNOBETA +[hbsh] +Art=ReplaceableTextures\CommandButtons\BTNHumanBattleShip.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\BoatMissile\BoatMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large + +[hdes] +Art=ReplaceableTextures\CommandButtons\BTNHumanDestroyer.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\BoatMissile\BoatMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large + +[hbot] +Art=ReplaceableTextures\CommandButtons\BTNHumanTransport.blp +Buttonpos=0,0 +Attachmentanimprops=large + +[hshy] +Art=ReplaceableTextures\CommandButtons\BTNHumanShipyard.blp +Sellunits=hbot +BuildingSoundLabel=BuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=medium \ No newline at end of file diff --git a/share/mpq/units/units/humanunitstrings.txt b/share/mpq/units/units/humanunitstrings.txt new file mode 100644 index 0000000..f0a169d --- /dev/null +++ b/share/mpq/units/units/humanunitstrings.txt @@ -0,0 +1,260 @@ +[Hblm] +Name=血魔法师 +Propernames=爱尔丁-破日者,泰尼恩-鹰翼,罗恩-嗜血者,阿尔多斯-火之星,吉里拉斯-德拉克森,哈尔-巫火,卡瑟拉力斯-雷马,特列尔-逐日者,西沃斯-疾风者,特恩利斯-闇血,马拉卡尼-怒星,格多尔-地狱火,哈勒恩多-柏金,科勒恩-破坏者 +Hotkey=B +Tip=召唤血魔法师(|cffffcc00B|r) +Ubertip="一位神秘的英雄,擅长于控制魔法能量和远程攻击。能学习到烈焰风暴、驱散、吸魔和火凤凰这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活血魔法师(|cffffcc00B|r) +Awakentip=复活血魔法师(|cffffcc00B|r) + +[halt] +Name=国王祭坛 +Hotkey=A +Tip=建造国王祭坛(|cffffcc00A|r) +Ubertip="召唤新的英雄或者复活死去的英雄。" + +[Hamg] +Name=大魔法师 +Propernames=特恩-施火者,神秘之力尼拉斯,安德若麦斯,沙尔-集光者,爱仑-挥术者,麦那斯-唱魔者,兰德泽尔-魔文字,多里尔-集法者,咒文佩里尔,雷克斯,费德里德爱仑-亚伦,达拉-暗舞者,凯恩-先知 +Hotkey=A +Tip=召唤大魔法师(|cffffcc00A|r) +Ubertip="一位神秘的英雄,特别擅长于远程攻击。他能学到暴风雪,召唤水元素,辉煌光环和群体传送魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活大魔法师(|cffffcc00A|r) +Awakentip=复活大魔法师(|cffffcc00A|r) + +[harm] +Name=车间 +Hotkey=W +Tip=建造车间(|cffffcc00W|r) +Ubertip="能生产出蒸汽机车、迫击炮小队和飞行机器。|n并且包括对照明弹、碎片攻击、弹幕攻击、飞行机器炸弹和高射炮火的升级。" + +[hars] +Name=神秘圣地 +Hotkey=R +Tip=神秘圣地(|cffffcc00R|r) +Ubertip="能训练出牧师,女巫,魔法破坏者。|n还包括对牧师,女巫的魔法技能升级,控制魔法的技能升级。使得人族的防御塔具有探测隐形单位能力的魔法岗哨也是在这里进行研究的。" + +[hbar] +Name=兵营 +Hotkey=B +Tip=建造兵营(|cffffcc00B|r) +Ubertip="最基本的产兵建筑物。能训练出人族的步兵,矮人火枪手和骑士。|n步兵的防御模式,矮人火枪手的长管火枪以及训兽术也都是在这里进行研究的。" + +[hbla] +Name=铁匠铺 +Hotkey=S +Tip=建造铁匠铺(|cffffcc00S|r) +Ubertip="能对护甲,武器和火药进行升级。" + +[hcas] +Name=城堡 +Hotkey=U +Tip=升级到城堡(|cffffcc00U|r) +Ubertip="升级到城堡之后能使玩家建造许多新的建筑物和单位。" + +[hdhw] +Name=龙鹰骑士 +Hotkey=D +Tip=训练龙鹰骑士(|cffffcc00D|r) +Ubertip="动作敏捷的飞行单位,骑乘一位精灵族战士。拥有空中锁镣技能,可以暂时禁锢和残废敌空中单位。可以学习到训兽术和乌云技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[hhou] +Name=农场 +Hotkey=F +Tip=建造农场(|cffffcc00F|r) +Ubertip="提供人口,增加可造单位数量的最大值。" + +[hfoo] +Name=步兵 +Hotkey=F +Tip=生产步兵(|cffffcc00F|r) +Ubertip="步兵能学习到防御模式技能。|n|n|cffffcc00能攻击地面单位。|r" + +[hgra] +Name=狮鹫笼 +Hotkey=G +Tip=建造狮鹫笼(|cffffcc00G|r) +Ubertip="能训练出狮鹫骑士和龙鹰骑士。|n还包括对风暴战锤和乌云技能的研究。" + +[hctw] +Name=炮塔 +Hotkey=C +Tip=升级到炮塔(|cffffcc00C|r) +Ubertip="重型的防御性建筑物,对付成群结队的敌人尤为有效。还能学到魔法岗哨技能。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[hgtw] +Name=防御塔 +Hotkey=G +Tip=升级到防御塔(|cffffcc00G|r) +Ubertip="基本的防守型建筑物,能学习到魔法岗哨技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[hwtw] +Name=哨塔 +Hotkey=T +Tip=哨塔(|cffffcc00T|r) +Ubertip="基本的侦察型建筑物,能升级到炮塔或者防御塔,还能学习到魔法岗哨技能。" + +[hatw] +Name=神秘之塔 +Hotkey=N +Tip=升级神秘之塔(|cffffcc00N|r) +Ubertip="魔法防御塔。对于敌人的英雄和魔法施放者特别有效。有魔法回应技能,使它的攻击能够破坏魔法值,破坏的量与攻击的伤害相同。可以学习魔法哨兵技能。|n|n|cffffcc00攻击地面和空中单位。" + +[hvlt] +Name=神秘藏宝室 +Hotkey=V +Tip=建造神秘藏宝室(|cffffcc00V|r) +Ubertip="建造一个出售物品的商店。可供购买的物品的种类取决于你的城镇大厅的升级情况(城镇大厅,主城或者城堡)以及你所拥有的建筑物种类。" + +[hgyr] +Name=飞行机器 +Hotkey=F +Tip=生产飞行机器(|cffffcc00F|r) +Ubertip="快速移动的飞行机器,能出色地完成侦察任务也能有效地抵抗敌人的空中单位,能获得飞行机器炸弹和高射炮火的升级。|n能看见隐形单位。|n|n|cffffcc00能攻击空中单位。|r" + +[hkee] +Name=主城 +Hotkey=U +Tip=升级到主城(|cffffcc00U|r) +Ubertip="升级到主城之后能使玩家建造许多新的建筑物和单位。" + +[hkni] +Name=骑士 +Hotkey=K +Tip=训练骑士(|cffffcc00K|r) +Ubertip="强大的地面单位,能学到训兽术。|n|n|cffffcc00能攻击地面单位。|r" + +[hlum] +Name=伐木场 +Hotkey=L +Tip=建造伐木场(|cffffcc00L|r) +Ubertip="能储存采集到的木材。|n还包括对伐木效率和石工技术的研究。" + +[hmil] +Name=民兵 + +[Hmkg] +Name=山丘之王 +Propernames=波尔-碎石者,穆林-铁壁,萨哥尔斯-阔斧,凯尔维-酷铁锤,哥里穆-雷鸣,布里-冰胡,黑哥因-铁壁,萨尔丁-岩胡,斑迪斯-炉火,伽尔-末日熔炉,比泽尔-棍石,穆迪-石匠,神奇爱哥诺尔先知 +Hotkey=M +Tip=召唤山丘之王(|cffffcc00M|r) +UberTip="战士型英雄,特别擅长于冲锋陷阵。能学习到风暴之锤、雷霆一击、重击和天神下凡。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活山丘之王(|cffffcc00M|r) +Awakentip=复活山丘之王(|cffffcc00M|r) + +[hmpr] +Name=牧师 +Hotkey=P +Tip=训练牧师(|cffffcc00P|r) +Ubertip="一开始就拥有强大的医疗能力,随后还能学习到驱逐魔法和心灵之火这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 医疗","- 医疗|n- 驱逐魔法","- 医疗|n- 驱逐魔法|n- 心灵之火" + +[hmtm] +Name=迫击炮小队 +Hotkey=M +Tip=训练迫击炮小队(|cffffcc00M|r) +Ubertip="远距离攻城单位,对付建筑物特别地有效,但是速度很慢很容易遭受敌人的近身攻击。还能获得照明弹和碎片攻击技能。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[Hpal] +Name=圣骑士 +Propernames=哥兰尼斯-闇锤,卓尔-忏悔者,塞杰尔,马拉克-复仇者,悲惨的哥维拉德,神奇的摩鲁尼,真实的阿杰曼德,光明的伯拉多尔,治疗之马曼那达尔,赞恩-防御者,阿留尔斯-追求者,纯真之阿尤里尔斯,卡那维尔德-追求者,无惧的布赞恩 +Hotkey=L +Tip=召唤圣骑士(|cffffcc00L|r) +Ubertip="战士型英雄,特别擅长于保护自己周围的部队,能学习到神圣之光,神圣护甲,专注光环和复活这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活圣骑士(|cffffcc00L|r) +Awakentip=复活圣骑士(|cffffcc00L|r) + +[hpea] +Name=农民 +Hotkey=P +Tip=生产农民(|cffffcc00P|r) +Ubertip="人族的基本工作单位,能采集金矿和木材还能建造和修理建筑物。紧急情况之下还可以变成民兵。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[hrif] +Name=矮人火枪手 +Hotkey=R +Tip=生产矮人火枪手(|cffffcc00R|r) +Ubertip="非常适合于对付敌人的空中单位,还能获得长管火枪的升级。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[hsor] +Name=女巫 +Hotkey=S +Tip=训练女妖(|cffffcc00S|r) +Ubertip="一开始能施放减慢敌人移动和进攻速度的减速魔法,随后还能学习到隐形术和变形术。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 减速","- 减速|n- 隐形术","- 减速|n- 隐形术|n- 变形术" + +[hspt] +Name=魔法破坏者 +Hotkey=B +Tip=训练魔法破坏者(|cffffcc00B|r) +Ubertip="精灵族的英勇战士,被训练来消灭法师。初始技能为魔法盗取,可以操纵魔法效果为你所用,还有魔法免疫和反馈技能,也可以学会控制魔法。|n|n|cffffcc00能攻击地面单位。|r" + +[hmtt] +Name=蒸汽机车 +Hotkey=E +Tip=训练蒸汽机车(|cffffcc00E|r) +Ubertip="重型装甲车辆,特别擅长于对付敌人的建筑物。升级之后可以拥有弹幕攻击能力。|n|n|cffffcc00能攻击建筑物。|r" + +[hrtt] +Name=蒸汽机车 +EditorSuffix= (弹幕攻击) +Hotkey=E +Tip=训练蒸汽机车(|cffffcc00E|r) +Ubertip="重型装甲车辆,特别擅长于对付敌人的建筑物。拥有弹幕攻击技能从而可以对敌人的空中单位进行攻击。|n|n|cffffcc00能攻击建筑物。|r" + +[htow] +Name=城镇大厅 +Hotkey=H +Tip=建造城镇大厅(|cffffcc00H|r) +Ubertip="基本建筑物,用来训练农民和存贮搜集到的资源,在升级到了主城和城堡之后能让玩家建造许多新的建筑物和单位。" + +[hwat] +Name=水元素 +EditorSuffix= (等级 1) + +[hwt2] +Name=水元素 +EditorSuffix= (等级 2) + +[hwt3] +Name=水元素 +EditorSuffix= (等级 3) + +[hgry] +Name=狮鹫骑士 +Hotkey=G +Tip=训练狮鹫骑士(|cffffcc00G|r) +Ubertip="威力巨大的飞行单位,狮鹫上面骑乘着一个矮人族的锤手。能学到风暴战锤技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[hphx] +Name=火凤凰 + +[hpxe] +Name=凤凰蛋 + +//#RESTNOBETA + +[hshy] +Name=人族船坞 +Tip=建造人族船坞 +Ubertip="船只建造工厂。这里能建造出人族的运输船,护卫舰和战舰。" + +[hbsh] +Name=人族战舰 +Hotkey=B +Tip=雇用战舰(|cffffcc00B|r) +Ubertip="强大的舰船,能够有效地攻击地面建筑物。|n|n|cffffcc00能攻击地面单位。" + +[hdes] +Name=人族护卫舰 +Hotkey=F +Tip=雇用护卫舰(|cffffcc00F|r) +Ubertip="多功能的攻击舰。擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[hbot] +Name=人族运输船 +Hotkey=T +Tip=雇用运输船(|cffffcc00T|r) +Ubertip="大型的海上船只,能携带单位。" diff --git a/share/mpq/units/units/humanupgradefunc.txt b/share/mpq/units/units/humanupgradefunc.txt new file mode 100644 index 0000000..14b1dbc --- /dev/null +++ b/share/mpq/units/units/humanupgradefunc.txt @@ -0,0 +1,123 @@ +[Rhss] +Requires=hvlt,hcas +Art=ReplaceableTextures\CommandButtons\BTNControlMagic.blp +Buttonpos=2,1 + +[Rhme] +Art=ReplaceableTextures\CommandButtons\BTNSteelMelee.blp,ReplaceableTextures\CommandButtons\BTNThoriumMelee.blp,ReplaceableTextures\CommandButtons\BTNArcaniteMelee.blp +Buttonpos=0,0 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas + +[Rhra] +Art=ReplaceableTextures\CommandButtons\BTNHumanMissileUpOne.blp,ReplaceableTextures\CommandButtons\BTNHumanMissileUpTwo.blp,ReplaceableTextures\CommandButtons\BTNHumanMissileUpThree.blp +Buttonpos=1,0 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas + +[Rhar] +Art=ReplaceableTextures\CommandButtons\BTNHumanArmorUpOne.blp,ReplaceableTextures\CommandButtons\BTNHumanArmorUpTwo.blp,ReplaceableTextures\CommandButtons\BTNHumanArmorUpThree.blp +Buttonpos=0,1 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas + +[Rhla] +Art=ReplaceableTextures\CommandButtons\BTNLeatherUpgradeOne.blp,ReplaceableTextures\CommandButtons\BTNLeatherUpgradeTwo.blp,ReplaceableTextures\CommandButtons\BTNLeatherUpgradeThree.blp +Buttonpos=1,1 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas + +[Rhac] +Art=ReplaceableTextures\CommandButtons\BTNStoneArchitecture.blp,ReplaceableTextures\CommandButtons\BTNArcaniteArchitecture.blp,ReplaceableTextures\CommandButtons\BTNImbuedMasonry.blp +Buttonpos=1,0 +Requirescount=3 +Requires= +Requires1=hkee +Requires2=hcas + +[Rhgb] +Art=ReplaceableTextures\CommandButtons\BTNHumanArtilleryUpOne.blp +Buttonpos=0,2 +Requires=hcas + +[Rhlh] +Art=ReplaceableTextures\CommandButtons\BTNHumanLumberUpgrade1.blp,ReplaceableTextures\CommandButtons\BTNHumanLumberUpgrade2.blp +Buttonpos=0,0 +Requirescount=2 +Requires=hkee +Requires1=hcas + +[Rhde] +Art=ReplaceableTextures\CommandButtons\BTNDefend.blp +Buttonpos=0,2 + +[Rhan] +Art=ReplaceableTextures\CommandButtons\BTNAnimalWarTraining.blp +Buttonpos=2,2 +Requires=hlum,hcas,hbla + +[Rhpt] +Art=ReplaceableTextures\CommandButtons\BTNPriestAdept.blp,ReplaceableTextures\CommandButtons\BTNPriestMaster.blp +Buttonpos=1,2 +Requirescount=2 +Requires= +Requires1=hcas + +[Rhst] +Art=ReplaceableTextures\CommandButtons\BTNSorceressAdept.blp,ReplaceableTextures\CommandButtons\BTNSorceressMaster.blp +Buttonpos=0,2 +Requirescount=2 +Requires= +Requires1=hcas + +[Rhri] +Art=ReplaceableTextures\CommandButtons\BTNDwarvenLongRifle.blp +Buttonpos=1,2 +Requires=harm + +[Rhse] +Art=ReplaceableTextures\CommandButtons\BTNMagicalSentry.blp +Buttonpos=2,2 + +[Rhfl] +Art=ReplaceableTextures\CommandButtons\BTNFlare.blp +Buttonpos=1,2 +Requires=hkee + +[Rhhb] +Art=ReplaceableTextures\CommandButtons\BTNStormHammer.blp +Buttonpos=0,2 +Requires= + +[Rhrt] +Art=ReplaceableTextures\CommandButtons\BTNScatterRockets.blp +Buttonpos=2,2 +Requires=hcas + +[Rhpm] +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp +Buttonpos=3,0 +Requires=hvlt + +[Rhfc] +Art=ReplaceableTextures\CommandButtons\BTNFlakCannons.blp +Buttonpos=0,1 +Requires=hcas + +[Rhfs] +Art=ReplaceableTextures\CommandButtons\BTNFragmentationBombs.blp +Buttonpos=1,1 +Requires=hcas + +[Rhcd] +Art=ReplaceableTextures\CommandButtons\BTNCloudOfFog.blp +Buttonpos=1,2 +Requires=hvlt \ No newline at end of file diff --git a/share/mpq/units/units/humanupgradestrings.txt b/share/mpq/units/units/humanupgradestrings.txt new file mode 100644 index 0000000..a0e9c5e --- /dev/null +++ b/share/mpq/units/units/humanupgradestrings.txt @@ -0,0 +1,126 @@ +[Rhss] +Name=控制魔法 +Tip=研究控制魔法(|cffffcc00G|r) +Ubertip="让魔法破坏者可以利用敌人召唤出来的单位。" +Hotkey=G + +[Rhme] +Name=铁剑术,钢剑术,毒剑术 +Tip=升级到铁剑术(|cffffcc00S|r),升级到钢剑术(|cffffcc00S|r),升级到毒剑术(|cffffcc00S|r) +Ubertip="增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。","进一步增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。","进一步增加民兵、步兵、魔法破坏者、龙鹰骑士、狮鹫骑士和骑士的攻击力。" +Hotkey=S,S,S + +[Rhra] +Name=黑火药,精练火药,终极火药 +Tip=升级到黑火药(|cffffcc00G|r),升级到精练火药(|cffffcc00G|r),升级到终极火药(|cffffcc00G|r) +Ubertip="增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。","进一步增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。","进一步增加矮人火枪手、迫击炮小队、蒸汽机车和飞行机器的攻击力。" +Hotkey=G,G,G + +[Rhar] +Name=铁甲,钢甲,重金甲 +Tip=铁甲(|cffffcc00P|r),升级到钢甲(|cffffcc00P|r),升级到重金甲(|cffffcc00P|r) +Ubertip="增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。","进一步增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。","进一步增加民兵、步兵、魔法破坏者、骑士、飞行机器和蒸汽机车的护甲。" +Hotkey=P,P,P + +[Rhla] +Name=镶皮甲,加强型镶皮甲,龙甲 +Tip=升级到镶皮甲(|cffffcc00A|r),升级到加强型镶皮甲(|cffffcc00A|r),升级到龙甲(|cffffcc00A|r) +Ubertip="增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。","进一步增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。","进一步增加矮人火枪手、迫击炮小队、龙鹰骑士和狮鹫骑士的护甲。" +Hotkey=A,A,A + +[Rhac] +Name=加强型石工技术,高级石工技术,终极石工技术 +Tip=升级到加强型石工技术(|cffffcc00M|r),升级到高级石工技术(|cffffcc00M|r),升级到终极石工技术(|cffffcc00M|r) +Ubertip="增加人族建筑物的生命值和护甲。","进一步增加人族建筑物的生命值和护甲。","进一步增加人族建筑物的生命值和护甲。" +Hotkey=M,M,M + +[Rhgb] +Name=飞行机器炸弹 +Tip=研究飞行机器炸弹(|cffffcc00B|r) +Ubertip="使得飞行机器能攻击地面单位。" +Hotkey=B + +[Rhlh] +Name=改进型伐木效率,高级伐木效率 +Tip=改进型伐木效率(|cffffcc00L|r),高级伐木效率(|cffffcc00L|r) +Ubertip="增加点农民每次能携带的木材数量。","进一步增加点农民每次能携带的木材数量。" +Hotkey=L,L + +[Rhde] +Name=防御 +Tip=研究防御(|cffffcc00D|r) +UberTip="使得步兵能拥有防御技能,有效地抵抗敌人的穿刺型攻击。" +Hotkey=D + +[Rhan] +Name=动物作战训练 +Tip=研究动物作战训练(|cffffcc00A|r) +Ubertip="能增加骑士、龙鹰骑士和狮鹫骑士点的生命值。" +Hotkey=A + +[Rhpt] +Name=牧师专家训练,牧师大师训练 +Tip=牧师专家训练(|cffffcc00T|r),牧师大师训练(|cffffcc00T|r) +Ubertip="增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有驱逐魔法技能。","增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有心灵之火技能。" +Hotkey=T,T + +[Rhst] +Name=女巫专家训练,女巫大师训练 +Tip=女巫专家训练(|cffffcc00O|r),女巫大师训练(|cffffcc00O|r) +Ubertip="增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有隐形技能。","增加牧师的魔法值、魔法恢复速度、生命值、攻击力,还能使其拥有变形技能。" +Hotkey=O,O + +[Rhri] +Name=长管火枪 +Tip=升级到长管火枪(|cffffcc00L|r) +Ubertip="增加矮人火枪手的攻击范围。" +Hotkey=L + +[Rhse] +Name=魔法岗哨 +Tip=研究魔法岗哨(|cffffcc00M|r) +Ubertip="让人族的各类塔能探测到隐形单位。" +Hotkey=M + +[Rhfl] +Name=照明弹 +Tip=研究照明弹(|cffffcc00R|r) +Ubertip="让每个迫击炮小队拥有一个照明弹,照明弹能驱散地图中任何一个区域内的战争迷雾。|n能探测到隐形单位。" +Hotkey=R + +[Rhhb] +Name=风暴战锤 +Tip=研究风暴战锤(|cffffcc00H|r) +Ubertip="让狮鹫骑士的战锤能进行弹射,从而对多个敌人造成伤害。" +Hotkey=H + +[Rhrt] +Name=弹幕攻击 +Tip=研究弹幕攻击(|cffffcc00G|r) +Ubertip="升级蒸汽机车,使其拥有弹幕攻击技能,从而可以对敌方的空中单位进行攻击。" +Hotkey=G + +[Rhpm] +Name=背包技能 +EditorSuffix= (人族) +Tip=研究背包技能(|cffffcc00B|r) +Ubertip="给人族地面部队携带物品的能力。" +Hotkey=B + +[Rhfc] +Name=高射炮火 +Tip=研究高射炮火(|cffffcc00C|r) +Ubertip="升级飞行机器的武器,使他们能够对空中单位造成区域性伤害。" +Hotkey=C + +[Rhfs] +Name=碎片攻击 +Tip=研究碎片攻击(|cffffcc00S|r) +Ubertip="升级迫击炮炮弹,增加迫击炮小队对无护甲和中型护甲单位的伤害。" +Hotkey=S + +[Rhcd] +Name=乌云技能 +Tip=研究乌云(|cffffcc00C|r) +Ubertip="使龙鹰骑士掌握乌云技能,从而使得敌人远程防御建筑不能攻击。" +Hotkey=C diff --git a/share/mpq/units/units/itemabilityfunc.txt b/share/mpq/units/units/itemabilityfunc.txt new file mode 100644 index 0000000..b519e11 --- /dev/null +++ b/share/mpq/units/units/itemabilityfunc.txt @@ -0,0 +1,1346 @@ +// Rune of the Watcher +[APwt] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp +Buttonpos=0,2 +Order=evileye +Effectsound=PowerupSound + +// glyph of fortification +[AIgf] +Effectsound=PowerupSound + +// glyph of ultravision +[AIgu] +Effectsound=PowerupSound + +// Blink (item) +[AIbk] +Art=ReplaceableTextures\CommandButtons\BTNBlink.blp +Buttonpos=1,2 +Order=blink +// Art to play at the new coordinate +Areaeffectart=Abilities\Spells\NightElf\Blink\BlinkTarget.mdl +// Art to leave behind at old coordinate +Specialart=Abilities\Spells\NightElf\Blink\BlinkCaster.mdl + +// One time permanent strength gain ability, usually on a Tome +[AIsm] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIsm\AIsmTarget.mdl +Targetattach=origin + +[AInm] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIsm\AIsmTarget.mdl +Targetattach=origin + +// One time permanent agility gain ability, usually on a tome +[AIam] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIam\AIamTarget.mdl +Targetattach=origin + +[AIgm] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIam\AIamTarget.mdl +Targetattach=origin + +// short duration single target speed bonus +[AIsp] +Art=ReplaceableTextures\CommandButtons\BTNPotionRed.blp + +// continuous Attack Bonus +[AIat] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AIt6] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AIt9] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItc] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItf] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +// item cyclone +[AIcy] +Art=ReplaceableTextures\CommandButtons\BTNCyclone.blp +order=cyclone + +// continuous Defense Bonus +[AIde] + +[AId1] + +[AId2] + +[AId3] + +[AId4] + +[AId5] + +[AId8] + +[AId7] + +[AId0] + +// area of effect damage of destructables +[AIdm] +Art=ReplaceableTextures\CommandButtons\BTNGoblinLandMine.blp + +// One time permanent hero experience gain, usually on a tome +[AIem] +Art=ReplaceableTextures\CommandButtons\BTNTomeBrown.blp +Casterart=Abilities\Spells\Items\AIem\AIemTarget.mdl +Casterattach=origin + +[AIe2] +Art=ReplaceableTextures\CommandButtons\BTNManual3.blp +Casterart=Abilities\Spells\Items\AIem\AIemTarget.mdl +Casterattach=origin + +// Cloud of Fog +[AIfg] +Art=ReplaceableTextures\CommandButtons\BTNCloudOfFog.blp +Order=cloudoffog + +// Flag ability +[AIfl] +Targetart=UI\Feedback\RallyPoint\RallyPoint.mdl +Targetattach=hand,right + +// human flag +[AIfm] +Art=ReplaceableTextures\CommandButtons\BTNHumanCaptureFlag.blp +Targetart=Objects\InventoryItems\HumanCaptureFlag\HumanCaptureFlag.mdl +Targetattach=hand,right + +// night elf flag +[AIfn] +Art=ReplaceableTextures\CommandButtons\BTNNightElfCaptureFlag.blp +Targetart=Objects\InventoryItems\NightElfCaptureFlag\NightElfCaptureFlag.mdl +Targetattach=hand,right + +// orc flag +[AIfo] +Art=ReplaceableTextures\CommandButtons\BTNOrcCaptureFlag.blp +Targetart=Objects\InventoryItems\OrcCaptureFlag\OrcCaptureFlag.mdl +Targetattach=hand,right + +// undead flag +[AIfe] +Art=ReplaceableTextures\CommandButtons\BTNUndeadCaptureFlag.blp +Targetart=Objects\InventoryItems\UndeadCaptureFlag\UndeadCaptureFlag.mdl +Targetattach=hand,right + +// One time permanent hero level gain, usually on a tome +[AIlm] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp +Casterart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Casterattach=origin + +// One time permanent intelligence gain, usually on a Tome +[AIim] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIim\AIimTarget.mdl +Targetattach=origin + +[AItm] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp +Targetart=Abilities\Spells\Items\AIim\AIimTarget.mdl +Targetattach=origin + +// One time permanent agi/int/str gain +[AIxm] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp +Targetart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Targetattach=origin + +// single shot one target healing (potions, typically) +[AIhe] +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +// single shot group area effect healing (scrolls, typically) +[AIha] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +[AIhb] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +// single shot group area effect healing (powerup, lesser) +[APh1] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// single shot group area effect healing (powerup) +[APh2] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// single shot group area effect healing (powerup, greater) +[APh3] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// short duration single target invisibility (potion) +[AIvi] +Targetart=Abilities\Spells\Items\AIvi\AIviTarget.mdl +Targetattach=chest + +// continuous invisibility (ring) +[AIpi] + +// short duration single target invulnerability (potion) +// brings up the invulnerability buff from CommonAbility +[AIvu] +Art=ReplaceableTextures\CommandButtons\BTNGreaterInvulneralbility.blp + +[AIvl] +Art=ReplaceableTextures\CommandButtons\BTNLesserInvulneralbility.blp + +// single shot one target mana regain (potions, typically) +[AIma] +Targetart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Targetattach=origin + +// single shot group area effect mana regain (scrolls, typically) +[AImr] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfProtection.blp +Targetart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Targetattach=origin + +// single shot group area effect mana regain (rune) +[APmr] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfProtection.blp +Targetart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// single shot group area effect mana regain (rune, greater) +[APmg] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfProtection.blp +Targetart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// single shot one target life/mana restore (potion) +[AIre] +Art=ReplaceableTextures\CommandButtons\BTNPotionRed.blp +Targetart=Abilities\Spells\Items\AIre\AIreTarget.mdl +Targetattach=origin + +// single shot group area effect life/mana restore (scroll) +[AIra] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHealing.blp +Targetart=Abilities\Spells\Items\AIre\AIreTarget.mdl +Targetattach=origin + +// single shot group area effect life/mana restore (rune) +[APra] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHealing.blp +Targetart=Abilities\Spells\Items\AIre\AIreTarget.mdl +Targetattach=origin +Effectsound=PowerupSound + +// area of effect application of a defensive buff (scroll of protection) +[AIda] +Art=ReplaceableTextures\CommandButtons\BTNScroll.blp +Casterart=Abilities\Spells\Items\AIda\AIdaCaster.mdl + +// area of effect application of a defensive buff (scroll of protection) (with healing) +[AIdb] +Art=ReplaceableTextures\CommandButtons\BTNScroll.blp +Casterart=Abilities\Spells\Items\AIda\AIdaCaster.mdl +Targetart=Abilities\Spells\Items\AIre\AIreTarget.mdl +Targetattach=origin + +// buff that AIda applies +[Bdef] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNScroll.blp +Targetart=Abilities\Spells\Items\AIda\AIdaTarget.mdl +Targetattach=overhead + +// area of effect detection (crystal ball) +[AIta] +Art=ReplaceableTextures\CommandButtons\BTNCrystalBall.blp +Casterart=Abilities\Spells\Items\AIta\CrystalBallCaster.mdl +Casterattach=overhead + +// area of effect application of a detected buff (dust of appearance) +[AItb] +Art=ReplaceableTextures\CommandButtons\BTNDustOfAppearance.blp +Casterart=Abilities\Spells\Items\AItb\AItbTarget.mdl + +[Bdet] +Buffart=ReplaceableTextures\CommandButtons\BTNDustOfAppearance.blp + +// continuous Mana regeneration (ring) +[AIrm] +Art=ReplaceableTextures\CommandButtons\BTNSobiMask.blp + +[AIfi] +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilespeed=900 +MissileHoming=1 + +// Illusion generator +[AIil] +Art=ReplaceableTextures\CommandButtons\BTNWand.blp +Targetart=Abilities\Spells\Items\AIil\AIilTarget.mdl +Targetattach=origin + +[BIil] +Buffart=ReplaceableTextures\CommandButtons\BTNWand.blp +Specialart=Abilities\Spells\Orc\MirrorImage\MirrorImageDeathCaster.mdl + +// Dispel effect (powerup) +[APdi] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp +// Effectart, if specified, will play at the targeted x,y +Effectart=Abilities\Spells\Items\AItb\AItbTarget.mdl +// Targetart, if specified, will play on affected units in the area-of-effect. +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Effectsound=PowerupSound + +// Dispel effect +[AIdi] +Art=ReplaceableTextures\CommandButtons\BTNWandSkull.blp +// Effectart, if specified, will play at the targeted x,y +Effectart=Abilities\Spells\Items\AItb\AItbTarget.mdl +// Targetart, if specified, will play on affected units in the area-of-effect. +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl + +// dispel w/ cooldown +[AIds] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfNegation.blp +// Effectart, if specified, will play at the targeted x,y +Effectart=Abilities\Spells\Items\AItb\AItbTarget.mdl +// Targetart, if specified, will play on affected units in the area-of-effect. +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl + +// Hero attacks get fire damage bonus, persistent, Orb of Fire +[AIfb] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFire.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIfb\AIfbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIfb\AIfbSpecialArt.mdl +Specialattach=chest + +// Hero attacks get lightning damage bonus, persistent, Orb of Lightning +[AIll] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfLightning.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIlb\AIlbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIlb\AIlbSpecialArt.mdl +Specialattach=chest + +// Hero attacks get lightning damage bonus, persistent, Orb of Lightning +[AIlb] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfLightning.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIlb\AIlbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIlb\AIlbSpecialArt.mdl +Specialattach=chest + +// Hero attacks get frost damage bonus, persistent, Orb of Frost +[AIob] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFrost.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Targetart=Abilities\Spells\Items\AIob\AIobTarget.mdl +Missilehoming=1 +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIob\AIobSpecialArt.mdl +Specialattach=chest + +// Hero attacks get poison damage bonus, persistent, Orb of Venom +[AIpb] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfVenom.blp +Missileart=Abilities\Spells\Items\OrbVenom\OrbVenomMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\OrbVenom\OrbVenom.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\OrbVenom\OrbVenomSpecialArt.mdl +Specialattach=chest + +// Hero attacks get corruption damage bonus, persistent, Orb of Corruption +[AIcb] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfCorruption.blp +Missileart=Abilities\Spells\Items\OrbCorruption\OrbCorruptionMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\OrbCorruption\OrbCorruption.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\OrbCorruption\OrbCorruptionSpecialArt.mdl +Specialattach=chest + +[BIcb] +Buffart=ReplaceableTextures\CommandButtons\BTNOrbOfCorruption.blp + +// Hero attacks get defilement/BA damage bonus, persistent, Orb of Defilement +[AIdf] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp +Missileart=Abilities\Weapons\AvengerMissile\AvengerMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\OrbDarkness\OrbDarkness.mdl +Targetattach=weapon +//Specialart=Abilities\Spells\Items\OrbCorruption\OrbCorruptionSpecialArt.mdl +//Specialattach=chest + +// Hero sight range increase, persistent, Telescope +[AIsi] +Art=ReplaceableTextures\CommandButtons\BTNTelescope.blp + +// Soul Gem Hero soul theft ability +[AIso] +Art=ReplaceableTextures\CommandButtons\BTNSoulGem.blp +Effectart=Abilities\Spells\Items\AIso\AIsoTarget.mdl + +// Soul Gem Hero soul-carying ability - remove this to release the soul +[Asou] +Art=ReplaceableTextures\CommandButtons\BTNUsedSoulGem.blp + +// caster buff for AIso +[BIsv] +Buffart=ReplaceableTextures\CommandButtons\BTNUsedSoulGem.blp +Targetart=Abilities\Spells\Items\AIso\BIsvTarget.mdl + +// daystone/nightstone +[AIto] + +// magical acorn (tree restorer) +[AIga] +Effectart=Abilities\Spells\NightElf\NatureTouch\NatureTouchTarget.mdl + +// reincarnation (ankh) +[AIrc] +Art=ReplaceableTextures\CommandButtons\BTNAnkh.blp +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl + +// recall (amulet) +[AIrt] +Art=ReplaceableTextures\CommandButtons\BTNAmulet.blp +// Play the same effect on all recalled units. Since the targeted unit +// will already play this effect, don't also play Targetart on that unit. +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +Targetart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl + +// teleport for items +[AIte] +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +Targetart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +// Shouldn't show art at targeted coordinate, so don't use Effectart. +Areaeffectart=Abilities\Spells\Human\MassTeleport\MassTeleportTo.mdl + +// town portal (scroll) +[AItp] +Art=ReplaceableTextures\CommandButtons\BTNScrollUber.blp +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +Targetart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +// Shouldn't show art at targeted coordinate, so don't use Effectart. +Areaeffectart=Abilities\Spells\Human\MassTeleport\MassTeleportTo.mdl + +// scepter of mastery, command ability +[AIco] +Art=ReplaceableTextures\CommandButtons\BTNScepterOfMastery.blp +Targetart=Abilities\Spells\Items\AIco\CrownOfCmndTarget.mdl +Targetattach=head + +// figurine unit summon ability - red drake +[AIfd] +Art=ReplaceableTextures\CommandButtons\BTNRedDragon.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl + +[BFig] +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// furbolg +[AIff] +Art=ReplaceableTextures\CommandButtons\BTNFurbolg.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl + +// rock golem +[AIfr] +Art=ReplaceableTextures\CommandButtons\BTNRockGolem.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl + +// doom guard +[AIfu] +Art=ReplaceableTextures\CommandButtons\BTNDoomGuard.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl + +// felhound +[AIfh] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl + +// skeleton +[AIfs] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp +Targetart=Abilities\Spells\Undead\RaiseSkeletonWarrior\RaiseSkeleton.mdl + +// Frost Revenant +[AIir] +Art=ReplaceableTextures\CommandButtons\BTNIceShard.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Ursa Warrior +[AIuw] +Art=ReplaceableTextures\CommandButtons\BTNAmuletOftheWild.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// infernal +[AIin] +Art=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Effectart=Units\Demon\Infernal\InfernalBirth.mdl +Order=inferno + +// place goblin land mine +[AIpm] +Art=ReplaceableTextures\CommandButtons\BTNGoblinLandMine.blp + +// permanent mana bonus +[AImn] +Casterart= + +// temporary max mana bonus +[AImm] + +[AImb] + +[AImz] + +[AImv] + +[AIbm] + +[AI2m] + +// temporary attack speed increase +[AIas] + +[AIsx] +Art=ReplaceableTextures\CommandButtons\BTNGlove.blp + +//improved attack speed +[AIs2] +Art=ReplaceableTextures\CommandButtons\BTNGlove.blp + +// vampiric life steal ability +[AIva] +Art=ReplaceableTextures\CommandButtons\BTNMaskOfDeath.blp +// target art played on hero carrying item +Targetart= +// special art played on hero when ability fires +Specialart=Abilities\Spells\Undead\VampiricAura\VampiricAuraTarget.mdl +Missileart=Abilities\Spells\Items\WandOfNeutralization\NeutralizationMissile.mdl + +// cloak of flames +[AIcf] +Art=ReplaceableTextures\CommandButtons\BTNCloakOfFlames.blp + +// Cloak of flames immolation buff +[BIcf] +Buffart=ReplaceableTextures\CommandButtons\BTNCloakOfFlames.blp +Targetart=Abilities\Spells\NightElf\Immolation\ImmolationTarget.mdl +Specialart=Abilities\Spells\NightElf\Immolation\ImmolationDamage.mdl +Specialattach=head + +// regen +[Arel] +Art=ReplaceableTextures\CommandButtons\BTNRingSkull.blp + +// regen lesser +[Arll] +Art=ReplaceableTextures\CommandButtons\BTNHealthStone.blp + +[AIs2] +Art=ReplaceableTextures\CommandButtons\BTNGauntletsOfOgrePower.blp + +[AIs6] +Art=ReplaceableTextures\CommandButtons\BTNBelt.blp + +[AIa6] +Art=ReplaceableTextures\CommandButtons\BTNBoots.blp + +[AIaz] + +[AIms] +Art=ReplaceableTextures\CommandButtons\BTNBootsOfSpeed.blp + +[AIi6] +Art=ReplaceableTextures\CommandButtons\BTNRobeOfTheMagi.blp + +[AIx2] +Art=ReplaceableTextures\CommandButtons\BTNCirclet.blp + +[AIx5] +Art=ReplaceableTextures\CommandButtons\BTNHelmutPurple.blp + +[AIh1] +Art=ReplaceableTextures\CommandButtons\BTNPotionGreenSmall.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +[AIh2] +Art=ReplaceableTextures\CommandButtons\BTNPotionGreen.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +// item healing wards +[AIhw] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp +Order=healingward + +// item sentry wards +[AIsw] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp +Order=evileye + +[AIv1] +Targetart=Abilities\Spells\Items\AIvi\AIviTarget.mdl +Targetattach=chest +Art=ReplaceableTextures\CommandButtons\BTNLesserInvisibility.blp + +[AIv2] +Targetart=Abilities\Spells\Items\AIvi\AIviTarget.mdl +Targetattach=chest +Art=ReplaceableTextures\CommandButtons\BTNGreaterInvisibility.blp + +[AIm1] +Art=ReplaceableTextures\CommandButtons\BTNPotionBlueSmall.blp +Casterart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Casterattach=origin + +[AIm2] +Art=ReplaceableTextures\CommandButtons\BTNPotionBlueBig.blp +Casterart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Casterattach=origin + +[AIuv] +Art=ReplaceableTextures\CommandButtons\BTNTelescope.blp + +[AIls] +Art=ReplaceableTextures\CommandButtons\BTNLightningShield.blp +Order=lightningshield + +// item roar +[AIrr] +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=roar + +// item evasion +[AIev] +Art=ReplaceableTextures\CommandButtons\BTNEvasion.blp + +// item magic immunity +[AImx] +Art=ReplaceableTextures\CommandButtons\BTNNecklace.blp + +[AIa2] +Art=ReplaceableTextures\CommandButtons\BTNSlippersOfAgility.blp + +[AId2] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +[AId3] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +[AId4] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +[AIl2] +Art=ReplaceableTextures\CommandButtons\BTNPeriapt1.blp + +[AIi2] +Art=ReplaceableTextures\CommandButtons\BTNMantleOfIntelligence.blp + +[AIcd] +Art=ReplaceableTextures\CommandButtons\BTNDrum.blp + +[AIan] +Art=ReplaceableTextures\CommandButtons\BTNAnimateDead.blp +Specialart=Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl +Order=animatedead + +[AIrc] +Art=ReplaceableTextures\CommandButtons\BTNReincarnation.blp +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl + +[AIrs] +Art=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Casterart=Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl +Targetart=Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl +Order=resurrection + +[APrl] +Art=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Casterart=Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl +Targetart=Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl +Order=resurrection +Effectsound=PowerupSound + +[APrr] +Art=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Casterart=Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl +Targetart=Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl +Order=resurrection +Effectsound=PowerupSound + +[AIrx] +Art=ReplaceableTextures\CommandButtons\BTNResurrection.blp +Casterart=Abilities\Spells\Human\Resurrect\ResurrectCaster.mdl +Targetart=Abilities\Spells\Human\Resurrect\ResurrectTarget.mdl +Order=resurrection + +// One time permanent attack damage gain +[AIaa] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp +Casterart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Casterattach=origin + +// One time permanent life gain +[AImi] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp +Casterart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Casterattach=origin + +[AImh] +Art=ReplaceableTextures\CommandButtons\BTNManual.blp +Casterart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Casterattach=origin + +[AIpx] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp +Casterart=Abilities\Spells\Items\AIlm\AIlmTarget.mdl +Casterattach=origin + +[AIa1] +Art=ReplaceableTextures\CommandButtons\BTNRingPurple.blp + +[AIx1] +Art=ReplaceableTextures\CommandButtons\BTNGoldRing.blp + +[AIs1] +Art=ReplaceableTextures\CommandButtons\BTNHammer.blp + +[AIi1] +Art=ReplaceableTextures\CommandButtons\BTNShadowPact.blp + +// Flying Carpet +[AIfc] +Art=ReplaceableTextures\CommandButtons\BTNRavenForm.blp + +// Brilliance Aura (Item) +[AIba] +Art=ReplaceableTextures\CommandButtons\BTNBrilliance.blp +Targetart=Abilities\Spells\Human\Brilliance\Brilliance.mdl +Targetattach=origin + +// Devotion Aura (Item) +[AIad] +Art=ReplaceableTextures\CommandButtons\BTNDevotion.blp +Targetart=Abilities\Spells\Human\DevotionAura\DevotionAura.mdl +Targetattach=origin + +// Command Aura (Item) +[AIcd] +Art=ReplaceableTextures\PassiveButtons\PASBTNGnollCommandAura.blp +Targetart=Abilities\Spells\Orc\WarDrums\DrumsCasterHeal.mdl +Targetattach=origin + +// Trueshot Aura (Item) +[AIar] +Art=ReplaceableTextures\CommandButtons\BTNTrueShot.blp +Targetart=Abilities\Spells\NightElf\TrueshotAura\TrueshotAura.mdl +Targetattach=origin + +// Endurance Aura (Item) +[AIae] +Art=ReplaceableTextures\CommandButtons\BTNCommand.blp +Targetart=Abilities\Spells\Orc\CommandAura\CommandAura.mdl +Targetattach=origin + +// Unholy Aura (Item) +[AIau] +Art=ReplaceableTextures\CommandButtons\BTNUnholyAura.blp +Targetart=Abilities\Spells\Undead\UnholyAura\UnholyAura.mdl +Targetattach=origin + +// Vampiric Aura (Item) +[AIav] +Art=ReplaceableTextures\CommandButtons\BTNVampiricAura.blp +Targetart=Abilities\Spells\Undead\VampiricAura\VampiricAura.mdl +Targetattach=origin + +// Healing Salve +[AIrl] +Art=ReplaceableTextures\CommandButtons\BTNHealingSalve.blp +Casterart=Abilities\Spells\Human\Heal\HealTarget.mdl +Casterattach=origin +Targetart=Abilities\Spells\Items\HealingSalve\HealingSalveTarget.mdl +Targetattach=origin + +// Clarity Potion +[AIpr] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfClarity.blp +Casterart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Casterattach=origin + +[AIpl] +Art=ReplaceableTextures\CommandButtons\BTNLesserClarityPotion.blp +Casterart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Casterattach=origin + +// Generic Rejuv scroll/potion base uberalias +[AIp1] +Art=ReplaceableTextures\CommandButtons\BTNMinorRejuvPotion.blp + + +[AIp2] +Art=ReplaceableTextures\CommandButtons\BTNLesserRejuvPotion.blp + +[AIp3] +Art=ReplaceableTextures\CommandButtons\BTNRejuvPotion.blp + +[AIp4] +Art=ReplaceableTextures\CommandButtons\BTNGreaterRejuvPotion.blp + +[AIp5] +Art=ReplaceableTextures\CommandButtons\BTNLesserRejuvScroll.blp +Casterart=Abilities\Spells\Human\Heal\HealTarget.mdl +Casterattach=origin + +[AIp6] +Art=ReplaceableTextures\CommandButtons\BTNGreaterRejuvScroll.blp +Casterart=Abilities\Spells\Human\Heal\HealTarget.mdl +Casterattach=origin + + +// Scroll of Regeneration +[AIsl] +Casterart=Abilities\Spells\Human\Heal\HealTarget.mdl +Casterattach=origin +Art=ReplaceableTextures\CommandButtons\BTNScrollOfRegenerationGreen.blp + +// Regeneration (Life) +[BIrl] +Buffart=ReplaceableTextures\CommandButtons\BTNHealingSalve.blp +//Targetart=Abilities\Spells\Items\ScrollOfRegeneration\Scroll_Regen_Target.mdl +Targetart=Abilities\Spells\Other\ANrm\ANrmTarget.mdl +Targetattach=origin + +// Regeneration (Mana) +[BIrm] +Buffart=ReplaceableTextures\CommandButtons\BTNPotionOfClarity.blp +//Targetart=Abilities\Spells\Items\ClarityPotion\ClarityTarget.mdl +Targetart=Abilities\Spells\Other\ANrl\ANrlTarget.mdl +Targetattach=origin + + +// Regeneration (Life & Mana) +[BIrg] +Buffart=ReplaceableTextures\CommandButtons\BTNGreaterRejuvScroll.blp +//Targetart=Abilities\Spells\Items\ScrollOfRejuvenation\ScrollManaHealth.mdl +Targetart=Abilities\Spells\Other\ANrl\ANrlTarget.mdl,Abilities\Spells\Other\ANrm\ANrmTarget.mdl +Targetattach=origin +Targetattach1=origin +Targetattachcount=2 + +// One time permanent gold gain +[AIgo] +Art=ReplaceableTextures\CommandButtons\BTNChestOfGold.blp +Casterart=Abilities\Spells\Items\ResourceItems\ResourceEffectTarget.mdl +Casterattach=origin +Effectsound=ReceiveGold + +// One time permanent lumber gain +[AIlu] +Art=ReplaceableTextures\CommandButtons\BTNBundleOfLumber.blp +Targetart=Abilities\Spells\Items\ResourceItems\ResourceEffectTarget.mdl +Targetattach=origin +Effectsound=ReceiveLumber + +// Flare Gun +[AIfa] +Art=ReplaceableTextures\CommandButtons\BTNFlare.blp +Casterart=Abilities\Spells\Human\Flare\FlareCaster.mdl + +// Potion of Omniscience +[AIrv] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfOmniscience.blp +Casterart=Abilities\Spells\Items\PotionOfOmniscience\CrystalBallCaster.mdl +Casterattach=overhead +Effectsound=PowerupSound + + +// Wand of Neutralization +[AIdc] +Art=ReplaceableTextures\CommandButtons\BTNWandOfNeutralization.blp +Missileart=Abilities\Spells\Items\WandOfNeutralization\NeutralizationMissile.mdl +Missilespeed=900 +MissileHoming=1 + +// Spider Silk +[AIwb] +Art=ReplaceableTextures\CommandButtons\BTNWebOn.blp +Missileart=Abilities\Spells\Undead\Web\Webmissile.mdl +Missilespeed=1500 +MissileHoming=1 + +// Monster Lure +[AImo] +Art=ReplaceableTextures\CommandButtons\BTNMonsterLure.blp + +// Random Item +[AIri] +Art=ReplaceableTextures\CommandButtons\BTNPhilosophersStone.blp + +// Blight Placement +[Ablp] +Art=ReplaceableTextures\CommandButtons\BTNSacrificialSkull.blp + +// mana steal +[Aste] +Art=ReplaceableTextures\CommandButtons\BTNWandOfManaSteal.blp +Casterart=Abilities\Spells\Other\Drain\ManaDrainCaster.mdl +Casterattach=chest +Targetart=Abilities\Spells\Other\Drain\ManaDrainTarget.mdl +Targetattach=chest + +// Change TOD +[AIct] +Art=ReplaceableTextures\CommandButtons\BTNMoonStone.blp + +// Vampiric Potion +[AIpv] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfVampirism.blp +Casterart=Abilities\Spells\Items\VampiricPotion\VampPotionCaster.mdl +Casterattach=origin + +[BIpv] +Buffart=ReplaceableTextures\CommandButtons\BTNPotionOfVampirism.blp + +// Spell Damage Reduction +[AIsr] +Art=ReplaceableTextures\CommandButtons\BTNRunedBracers.blp + +// Build Tiny Castle +[AIbl] +Art=ReplaceableTextures\CommandButtons\BTNTinyCastle.blp + +// Build Tiny Altar +[AIbh] +Art=ReplaceableTextures\CommandButtons\BTNAltarOfKings.blp + +// Build Tiny Great Hall +[AIbg] +Art=ReplaceableTextures\CommandButtons\BTNTownHall.blp + +// Build Tiny Scout Tower +[AIbt] +Art=ReplaceableTextures\CommandButtons\BTNHumanWatchTower.blp + +// Shadowsight +[Ashs] +Art=ReplaceableTextures\CommandButtons\BTNWandOfShadowSight.blp + +[Bshs] +Buffart=ReplaceableTextures\CommandButtons\BTNWandOfShadowSight.blp +// Don't show any buff art. + +// Tome of Retraining +[Aret] +Art=ReplaceableTextures\CommandButtons\BTNTomeOfRetraining.blp +Casterart=Abilities\Spells\Items\TomeOfRetraining\TomeOfRetrainingCaster.mdl +Casterattach=origin + +// Staff of Teleportation +[AImt] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfTeleportation.blp +// Shouldn't show art at targeted coordinate, so don't use Effectart. +Areaeffectart=Abilities\Spells\Human\MassTeleport\MassTeleportTo.mdl +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +// The targeted unit shouldn't show an effect, so there is no Targetart. +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl + +// Staff of Preservation +[ANpr] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfPreservation.blp +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +Targetart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl + +// Mechanical Critter +[Amec] +Art=ReplaceableTextures\CommandButtons\BTNMechanicalCritter.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Spell Shield +[ANss] +Art=ReplaceableTextures\CommandButtons\BTNSpellShieldAmulet.blp +Casterart=Abilities\Spells\Items\SpellShieldAmulet\SpellShieldCaster.mdl +Casterattach=origin + +// Spell Shield (AOE) +[ANse] +Art=ReplaceableTextures\CommandButtons\BTNSpellShieldAmulet.blp +Effectsound=PowerupSound + +[Bnss] +Buffart=ReplaceableTextures\CommandButtons\BTNSpellShieldAmulet.blp +Targetart=Abilities\Spells\Items\SpellShieldAmulet\SpellShieldCaster.mdl +Targetattach=origin + +// Spell book +[Aspb] +Art=ReplaceableTextures\CommandButtons\BTNSpellBookBLS.blp + +// Raise Dead +[AIrd] +Art=ReplaceableTextures\CommandButtons\BTNRaiseDead.blp + +// Staff of Sanctuary +[ANsa] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfSanctuary.blp +Casterart=Abilities\Spells\Human\MassTeleport\MassTeleportCaster.mdl +Targetart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl +Specialart=Abilities\Spells\Human\MassTeleport\MassTeleportTarget.mdl + +[BNsa] +Buffart=ReplaceableTextures\CommandButtons\BTNStaffOfSanctuary.blp +Targetart=Abilities\Spells\Items\StaffOfSanctuary\Staff_Sanctuary_Target.mdl + +// Scroll of Haste +[AIsa] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHaste.blp +// target art will be taken care of by buff Bspe, in commonabilityfunc + +// Rune of Speed +[APsa] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHaste.blp +// target art will be taken care of by buff Bspe, in commonabilityfunc +Effectsound=PowerupSound + +// Orb of Slow +[AIsb] +Art=ReplaceableTextures\CommandButtons\BTNOrbofSlowness.blp +Missileart=Abilities\Weapons\ProcMissile\ProcMissile.mdl +MissileHoming=1 +Targetart=Abilities\Spells\Items\OrbSlow\OrbSlow.mdl +Targetattach=weapon +//Specialart= + +[AIos] +Art=ReplaceableTextures\CommandButtons\BTNSlow.blp +Casterart=Abilities\Spells\Human\Slow\SlowCaster.mdl +Order=slow + +// Orb of Darkness +[ANbs] +Art=ReplaceableTextures\CommandButtons\BTNTheBlackArrow.blp +Buttonpos=1,2 +Missileart=Abilities\Spells\Other\BlackArrow\BlackArrowMissile.mdl +Missilespeed=1050 +MissileHoming=1 +Order=blackarrow + +// Spirit Link (AOE) +[Aspp] +Art=ReplaceableTextures\CommandButtons\BTNSpiritLink.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=spiritlinkaoe +Effectsound=PowerupSound +LightningEffect=SPLK + +// Rebirth +[AIrb] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp +Effectsound=PowerupSound + +[BIrb] +Buffart=ReplaceableTextures\CommandButtons\BTNRune.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Dark Summoning +[AUds] +Art=ReplaceableTextures\CommandButtons\BTNDarkSummoning.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDarkSummoning.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +// leaving art +Effectart=Abilities\Spells\Undead\Darksummoning\DarkSummonTarget.mdl +// arrival art +Targetart=Abilities\Spells\Undead\Darksummoning\DarkSummonTarget.mdl +Missileart=Abilities\Spells\Undead\DarkSummoning\DarkSummonMissile.mdl +Missilespeed=1500 +Order=darksummoning + +// anti-magic shield +[AIxs] +Art=ReplaceableTextures\CommandButtons\BTNSnazzyPotion.blp +Order=antimagicshell + +[Aami] +Order=antimagicshell + +// item divine shield +[AIdv] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfDivinity.blp +Order=divineshield + +// item silence +[AIse] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfSilence.blp +Order=silence + +// item purge +[AIpg] +Art=ReplaceableTextures\CommandButtons\BTNEntrapmentWard.blp +Order=purge + +// item purge (shamanistic totem) +[AIps] +Art=ReplaceableTextures\CommandButtons\BTNEntrapmentWard.blp +Order=purge +Specialart=Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl +Specialattach=origin + +//#RESTNOBETA +[AItg] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AIth] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AIti] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItj] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItk] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItl] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItn] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AItx] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[AIh3] +Art=ReplaceableTextures\CommandButtons\BTNHeartOfAszune.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +[AIhx] +Art=ReplaceableTextures\CommandButtons\BTNHealOn.blp +Targetart=Abilities\Spells\Items\AIhe\AIheTarget.mdl +Targetattach=origin + +// orcish battle standard +[AIfx] +Art=ReplaceableTextures\CommandButtons\BTNOrcBattleStandard.blp +Targetart=Objects\InventoryItems\BattleStandard\BattleStandard.mdl +Targetattach=chest + +// Hero attacks get fire damage bonus, persistent, Orb of Gul'dan +[AIgd] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFire.blp +Missileart=Abilities\Weapons\IllidanMissile\IllidanMissile.mdl +Targetart=Abilities\Spells\Items\AIfb\AIfbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIfb\AIfbSpecialArt.mdl +Specialattach=chest + +// tiny blacksmith +[AIbb] +Art=ReplaceableTextures\CommandButtons\BTNBlacksmith.blp + +// tiny lumber mill +[AIbr] +Art=ReplaceableTextures\CommandButtons\BTNHumanLumberMill.blp + +// tiny farm +[AIbf] +Art=ReplaceableTextures\CommandButtons\BTNFarm.blp + +// tiny barracks +[AIbs] +Art=ReplaceableTextures\CommandButtons\BTNHumanBarracks.blp + +[AIdn] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp +Missileart=Abilities\Weapons\VengeanceMissile\VengeanceMissile.mdl +Targetart=Abilities\Spells\Items\OrbDarkness\OrbDarkness.mdl +Targetattach=weapon + +// campaign item reanimation +[AInd] +Art=ReplaceableTextures\CommandButtons\BTNWandSkull.blp +Specialart=Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl +Order=animatedead + +// item unholy frenzy +[AIuf] +Art=ReplaceableTextures\CommandButtons\BTNUnholyFrenzy.blp +Order=unholyfrenzy + +// item control magic +[AIcm] +Art=ReplaceableTextures\CommandButtons\BTNSpellSteal.blp +Order=spellsteal +Targetart=Abilities\Spells\Human\SpellSteal\SpellStealTarget.mdl +Targetattach=overhead +Missileart=Abilities\Spells\Human\SpellSteal\SpellStealMissile.mdl +Missilearc=0.15 +Missilespeed=1000 +MissileHoming=1 + +// item death finger +[AIfz] +Art=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Targetart=Abilities\Spells\Demon\DemonBoltImpact\DemonBoltImpact.mdl +LightningEffect=AFOD + +// item death pact +[AIdp] +Art=ReplaceableTextures\CommandButtons\BTNDeathPact.blp +Casterart=Abilities\Spells\Undead\DeathPact\DeathPactCaster.mdl +Targetart=Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl +Targetattach=origin +Order=deathpact + +// item defend +[AIdd] +Art=ReplaceableTextures\CommandButtons\BTNDefend.blp +Casterart=Abilities\Spells\Human\Defend\DefendCaster.mdl +Order=defend + +// item Bash +[AIbx] +Art=ReplaceableTextures\PassiveButtons\PASBTNBash.blp +Order=bash + +// item watery minion +[AIwm] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=wateryminion + +// item summon troll headhunter +[AIsh] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=spiritwolf + +[BIsh] +// buffart not shown +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// item regen aura +[AIgx] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp + +// item holy light +[AIhl] +Art=ReplaceableTextures\CommandButtons\BTNHolyBolt.blp +Targetart=Abilities\Spells\Human\HolyBolt\HolyBoltSpecialArt.mdl +Order=holybolt + +// item slow poison +[AIsz] +Art=ReplaceableTextures\CommandButtons\BTNDaggerOfEscape.blp + +// penguin squeek +[AIpz] +Art=ReplaceableTextures\CommandButtons\BTNPenguin.blp +Effectsound=PenguinSqueek + +// item fire bonus +[AIfw] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFire.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIfb\AIfbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIfb\AIfbSpecialArt.mdl +Specialattach=chest + +// item cold bonus +[AIft] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFrost.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIob\AIobTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIob\AIobSpecialArt.mdl +Specialattach=chest + +// item lightning bonus +[AIlx] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfLightning.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilehoming=1 +Targetart=Abilities\Spells\Items\AIlb\AIlbTarget.mdl +Targetattach=weapon +Specialart=Abilities\Spells\Items\AIlb\AIlbSpecialArt.mdl +Specialattach=chest + +// purge part of lightning orb +[AIlp] +Art=ReplaceableTextures\CommandButtons\BTNPurge.blp + +// item critical strike +[AIcs] +Art=ReplaceableTextures\PassiveButtons\PASBTNCriticalStrike.blp + +// Passive Defense +[AIdd] +Art=ReplaceableTextures\CommandButtons\BTNDefend.blp +Casterart=Abilities\Spells\Human\Defend\DefendCaster.mdl + +// item chain lightning +[AIcl] +Art=ReplaceableTextures\CommandButtons\BTNChainLightning.blp +Missileart=Abilities\Spells\Orc\LightningBolt\LightningBoltMissile.mdl +Missilespeed=1500 +Targetart=Abilities\Weapons\Bolt\BoltImpact.mdl +Order=chainlightning +LightningEffect=CLPB,CLSB + +// item berserk +[AIxk] +Art=ReplaceableTextures\CommandButtons\BTNBerserkForTrolls.blp +order=berserk +Casterart=Abilities\Spells\Orc\TrollBerserk\TrollBeserkerTarget.mdl +Effectsound=BerserkerRage \ No newline at end of file diff --git a/share/mpq/units/units/itemabilitystrings.txt b/share/mpq/units/units/itemabilitystrings.txt new file mode 100644 index 0000000..6c9bc70 --- /dev/null +++ b/share/mpq/units/units/itemabilitystrings.txt @@ -0,0 +1,1061 @@ +// Item abilities are generally activated via the inventory UI and not through their own hotkeys + +// Rune of the Watcher +[APwt] +Name=岗哨神符 + +// Blink (item) +[AIbk] +Name=闪烁(物品等级) + +// One time permanent strength gain ability, usually on a Tome +[AIsm] +Name=能增加力量的物品 + +// One time permanent agility gain ability, usually on a tome +[AIam] +Name=能增加敏捷度的物品 + +// short duration single target speed bonus +[AIsp] +Name=能暂时加快移动速度的物品 + +// continuous Attack Bonus +[AIat] +Name=增加攻击力的物品 +EditorSuffix=(+3) + +// continuous Defense Bonus +[AIde] +Name=能增加护甲的物品 + +// area of effect damage of destructables +[AIdm] +Name=能对范围内的树木/墙壁造成伤害的物品 + +// One time permanent hero experience gain, usually on a tome +[AIem] +Name=能获取经验值的物品 + +[AIe2] +Name=能获取经验值的物品 +EditorSuffix= (大型) + +// Cloud of Fog +[AIfg] +Name=乌云技能 +Tip=乌云技能(|cffffcc00C|r) +Ubertip="能产生一小块乌云使得一定范围内的建筑物丧失远程攻击的能力。|n持续秒。" +Hotkey=C + +// Flag Ability, to show something on a hero carrying the flag +[AIfl] +Name=抢夺旗帜 + +// human flag +[AIfm] +Name=抢夺旗帜 +EditorSuffix=(人族) + +// night elf flag +[AIfn] +Name=抢夺旗帜 +EditorSuffix=(暗夜精灵族) + +// orc flag +[AIfo] +Name=抢夺旗帜 +EditorSuffix=(兽族) + +// undead flag +[AIfe] +Name=抢夺旗帜 +EditorSuffix=(不死族) + +// One time permanent hero level gain, usually on a tome +[AIlm] +Name=能提高等级的物品 + +// One time permanent intelligence gain, usually on a Tome +[AIim] +Name=能提高智力的物品 + +// One time permanent int/agi/str gain +[AIxm] +Name=能提高英雄三个属性的物品 + +// single shot one target healing (potions, typically) +[AIhe] +Name=具有医疗效果的物品 + +[AIhx] +Name=具有医疗效果的物品 +EditorSuffix=(最小的) + +// single shot group area effect healing (scrolls, typically) +[AIha] +Name=能进行范围医疗的物品 + +[AIhb] +Name=能进行范围医疗的物品 +EditorSuffix= (大型) + +// single shot group area effect healing (powerup, lesser) +[APh1] +Name=力量上升治疗区域减小 + +// single shot group area effect healing (powerup) +[APh2] +Name=力量上升治疗区域 + +// single shot group area effect healing (powerup, greater) +[APh3] +Name=力量上升治疗区域增强 + + +// short duration single target invisibility (potion) +[AIvi] +Name=能让单位暂时隐身的物品 + +// short duration single target invulnerability (potion) +[AIvu] +Name=能让单位暂时无敌的物品 + +[AIvl] +Name=能让单位暂时无敌的物品 +EditorSuffix= (小型) + +// single shot one target mana regain (potions, typically) +[AIma] +Name=能增加魔法恢复速度的物品 + +// single shot group area effect mana regain (scrolls, typically) +[AImr] +Name=能提高一定范围内所有单位魔法值的物品 + +// single shot group area effect mana regain (rune) +[APmr] +Name=神秘区域魔法恢复 + +// single shot group area effect mana regain (rune, greater) +[APmg] +Name=神秘区域魔法恢复增强 + +// single shot one target life/mana restore (potion) +[AIre] +Name=能进行医疗和增加魔法值的单位 + +// single shot group area effect life/mana restore (scroll) +[AIra] +Name=能提高一定范围内所有单位魔法值和生命值的物品 + +// single shot group area effect life/mana restore (rune) +[APra] +Name=神秘区域生命/魔法恢复 + +// area of effect application of a defensive buff (scroll of protection) +[AIda] +Name=能暂时提高一定范围内所有单位护甲的物品 + +// area of effect application of a defensive buff (scroll of protection) (with healing) +[AIdb] +Name=能暂时加强范围内所有单位护甲的物品 +EditorSuffix= (具有生命与魔法恢复技能) + +// buff that AIda applies +[Bdef] +Bufftip=守护卷轴 +Buffubertip="该单位受到了守护卷轴的作用,因此它的护甲暂时得到了加强。" + +// area of effect detection (crystal ball) +[AIta] +Name=能探测一定区域的物品 + +// continuous Mana regeneration (ring) +[AIrm] +Name=能增加魔法恢复速度的物品 + +[AIfi] +Name=霹雳闪电物品 + +// Illusion generator +[AIil] +Name=幻象物品 + +[BIil] +Bufftip=幻象物品 +Buffubertip="该单位是一个幻象,因此将从敌人那里得到额外的伤害。" + +// Dispel effect +[AIdi] +Name=具有驱逐魔法效果的物品 + +[AIds] +Name=具有驱逐魔法效果的物品 +EditorSuffix= (有使用间隔) + +// Dispel effect (powerup) +[APdi] +Name=力量上升驱散 + +// Hero attacks get fire damage bonus, persistent, Orb of Fire +[AIfb] +Name=能带有火焰伤害的物品 + +// Hero attacks get lightning damage bonus, persistent, Orb of Lightning +[AIlb] +Name=能带有闪电伤害的物品 + +// Hero attacks get black arrow bonus +[AIdf] +Name=能带有黑箭攻击伤害的物品 + +// purge portion of lightning orb +[AIlp] +Name=带有净化效果的物品 +EditorSuffix= (1) + +// Hero attacks get frost damage bonus, persistent, Orb of Frost +[AIob] +Name=带有霜冻攻击效果的物品 + +[AIpb] +Name=带有毒药效果的物品 + +[AIcb] +Name=带有腐蚀攻击效果的物品 + +[BIcb] +Bufftip=腐蚀 +Buffubertip="该单位受到了腐蚀之球的攻击,因此其护甲得到了削弱。" + +// Hero sight range increase, persistent, Telescope +[AIsi] +Name=能提高视野范围的物品 + +// Soul Gem Hero soul theft ability +[AIso] +Name=能盗取单位灵魂的物品 + +// Soul Gem Hero soul-carying ability - remove this to release the soul +[Asou] +Name=能占据单位灵魂的物品 + +// caster buff for AIso +[BIsv] +Bufftip=盗取灵魂 +Buffubertip="这是一个英雄的灵魂。" + +// reincarnation (ankh) +[AIrc] +Name=具有重生效果的物品 + +// recall (amulet) +[AIrt] +Name=召唤物品 + +[AItp] +Name=回城卷轴物品 + +[AIco] +Name=命令物品 + +// figurine unit summon ability - red drake +[AIfd] +Name=能召唤红龙的物品 + +// furbolg +[AIff] +Name=能召唤熊怪的物品 + +// rock golem +[AIfr] +Name=能召唤岩石傀儡的物品 + +// doom guard +[AIfu] +Name=能召唤毁灭守卫的物品 + +// felhound +[AIfh] +Name=能召唤地狱犬的物品 + +// skeleton +[AIfs] +Name=能召唤骷髅战士的物品 + +// Ice Revenant +[AIir] +Name=能召唤冰冻幽灵的物品 + +// Ursa Warrior +[AIuw] +Name=能召唤熊怪战士的物品 + +[BFig] +Bufftip=召唤出来的物品 +Buffubertip="对于驱逐魔法,召唤出来的单位将受到额外的伤害。" + +// place goblin land mine +[AIpm] +Name=能置放地精地雷的物品 + +// permanent attack bonus +[AIaa] +Name=Item Permanent Damage Gain + +// permanent hit point bonus +[AImi] +Name=Item Permanent Life Gain + +[AIpx] +Name=能永久增加生命值的物品 +EditorSuffix=(较小的) + +// vampiric life steal ability +[AIva] +Name=能盗取生命值的物品 + +// cloak of flames immolation +[AIcf] +Name=具有献祭效果的物品 + +// Cloak of Flames immolation buff +[BIcf] +Bufftip=火焰风衣 +Buffubertip="该单位拥有火焰风衣,周围的地面单位会受到持续的伤害。" + +// hero stat bonus +[AIab] +Name=能提高英雄属性的物品 + +// freeze damage bonus +[AIzb] +Name=带有冰冻攻击伤害的物品 + +// max life bonus +[AIml] +Name=能增加生命值的物品 + +[AIlz] +Name=能增加生命值的物品 +EditorSuffix=(最小的) + +// regen life +[Arel] +Name=提高英雄生命值恢复速度的物品 + +// anti-magic shield +[Aami] +Name=具有反魔法盾的物品 + +// max mana bonus +[AImm] +Name=能增加魔法值的物品 + +[AImz] +Name=能增加魔法值的物品(100) + +[AImv] +Name=能增加魔法值的物品(75) + +[AI2m] +Name=能增加魔法值的物品(200) + +// attack speed increase +[AIas] +Name=能提高攻击速度的物品 + +[AIsx] +Name=能提高攻击速度的物品 +EditorSuffix= (加速手套) + +[AIs2] +Name=能提高进攻速度的物品 +EditorSuffix= (较大的) + +[AIan] +Name=能操纵死尸的物品 + +[AIrs] +Name=具有复活效果的物品 + +[AIrx] +Name=具有复活效果的物品 +EditorSuffix=(魔法施放间隔时间) + +[APrl] +Name=小型复活神符 + +[APrr] +Name=大型复活神符 + +[AIaa] +Name=能增加攻击力的物品 + +[AImi] +Name=能增加生命值的物品 + +[AIms] +Name=能提高移动速度的物品 + +[AIa3] +Name=能提高英雄属性的物品 +EditorSuffix=(+3 敏捷度) + +[AIa4] +Name=能提高英雄属性的物品 +EditorSuffix=(+4 敏捷度) + +[AIa6] +Name=能提高英雄属性的物品 +EditorSuffix=(+6 敏捷度) + +[AIaz] +Name=能提高英雄属性的物品 +EditorSuffix=(+10 敏捷度) + +[AIx5] +Name=能提高英雄属性的物品 +EditorSuffix=(+5 所有属性) + +[AIx2] +Name=能提高英雄属性的物品 +EditorSuffix=(+2 所有属性) + +[AIs3] +Name=能提高英雄属性的物品 +EditorSuffix=(+3 力量) + +[AIs4] +Name=能提高英雄属性的物品 +EditorSuffix=(+4 力量) + +[AIs6] +Name=能提高英雄属性的物品 +EditorSuffix=(+6 力量) + +[AIi3] +Name=能提高英雄属性的物品 +EditorSuffix=(+3 智力) + +[AIi4] +Name=能提高英雄属性的物品 +EditorSuffix=(+4 智力) + +[AIi6] +Name=能提高英雄属性的物品 +EditorSuffix=(+6 智力) + +[AIgm] +Name=能增加敏捷度的物品 +EditorSuffix=(+2) + +[AItm] +Name=能提高智力的物品 +EditorSuffix=(+2) + +[AInm] +Name=能增加力量的物品 +EditorSuffix=(+2) + +[AIt6] +Name=增加攻击力的物品 +EditorSuffix=(+6) + +[AIt9] +Name=增加攻击力的物品 +EditorSuffix=(+9) + +[AItc] +Name=增加攻击力的物品 +EditorSuffix=(+12) + +[AItf] +Name=增加攻击力的物品 +EditorSuffix=(+15) + +[AIcy] +Name=飓风 +Tip=飓风(|cffffcc00C|r) +Ubertip="将一个目标非机械敌单位抛入空中,使其无法移动,攻击或使用魔法,同时使其他单无法攻击或对其使用魔法。|n持续秒。" +Hotkey=C +EditorSuffix=(物品) + +[AId1] +Name=能提高护甲的物品 +EditorSuffix=(+1) + +[AId2] +Name=能提高护甲的物品 +EditorSuffix=(+2) + +[AId3] +Name=能提高护甲的物品 +EditorSuffix=(+3) + +[AId4] +Name=能提高护甲的物品 +EditorSuffix=(+4) + +[AId5] +Name=能提高护甲的物品 +EditorSuffix=(+5) + +[AId7] +Name=能加强护甲的物品 +EditorSuffix=(+7) + +[AId8] +Name=能提高护甲的物品 +EditorSuffix=(+8) + +[AId0] +Name=能提高护甲的物品 +EditorSuffix=(+10) + +[AIin] +EditorSuffix=(物品) + +[AIlf] +Name=能增加生命值的物品 +EditorSuffix=(最小的) + +[AIl1] +Name=能增加生命值的物品 +EditorSuffix=(较小的) + +[AIl2] +Name=能增加生命值的物品 +EditorSuffix=(较大的) + +[Arll] +Name=提高英雄生命值恢复速度的物品 +EditorSuffix=(较小的) + +[AIh1] +Name=具有医疗效果的物品 +EditorSuffix=(较小的) + +[AIh2] +Name=具有医疗效果的物品 +EditorSuffix=(较大的) + +[AIhw] +Name=治疗守卫 +Ubertip="召唤一个不可移动的守卫来治疗周围的非机械友方单位%生命值/秒,持续时间为 秒。" +EditorSuffix=(物品) + +[AIsw] +Name=岗哨守卫 +Ubertip="召唤出一个固定隐形的守卫来监视一定的区域。|n能看见隐形单位。|n持续秒。" +EditorSuffix=(物品) + +[AIv1] +Name=能让单位暂时隐身的物品 +EditorSuffix=(较小的) + +[AIv2] +Name=能让单位暂时隐身的物品 +EditorSuffix=(较大的) + +[AIm1] +Name=能增加魔法恢复速度的物品 +EditorSuffix=(较小的) + +[AIm2] +Name=能增加魔法恢复速度的物品 +EditorSuffix=(较大的) + +[AIrn] +EditorSuffix=(较小的) + +[AIad] +EditorSuffix=(物品) + +[AIcd] +EditorSuffix=(物品) + +[AIba] +EditorSuffix=(物品) + +[AIav] +EditorSuffix=(物品) + +[AIar] +EditorSuffix=(物品) + +[AIae] +EditorSuffix=(物品) + +[AIau] +EditorSuffix=(物品) + +[AIls] +Name=闪电护盾 +Ubertip="在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。" +EditorSuffix=(物品) + +[AIrr] +Name=咆哮 +Ubertip="增加周围友军单位%的攻击力。|n持续秒。" +EditorSuffix=(物品) + +[AIev] +Name=闪避 +Ubertip="给予%的概率来躲避掉敌人的攻击。" +EditorSuffix=(物品) + +[AImx] +Name=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" +EditorSuffix=(物品) + +[AImb] +Name=能增加魔法值的物品 +EditorSuffix=(最小的) + +[AIbm] +Name=能增加魔法值的物品 +EditorSuffix=(较大的) + +[AIuv] +Name=夜视能力 +EditorSuffix=(物品) + +[AImh] +Name=能永久增加生命值的物品 +EditorSuffix=(+50) + +[AIa1] +Name=能提高英雄属性的物品 +EditorSuffix=(+1 敏捷度) + +[AIx1] +Name=能提高英雄属性的物品 +EditorSuffix=(+1 所有属性) + +[AIs1] +Name=能提高英雄属性的物品 +EditorSuffix=(+1 力量) + +[AIi1] +Name=能提高英雄属性的物品 +EditorSuffix=(+1 智力) + +[AIfc] +Name=飞行地毯 + +// Healing Salve +[AIrl] +Name=医疗剂 + +[BIrl] +Bufftip=再生物品 +Buffubertip="该单位身上带有再生物品,因此其生命值将会持续地恢复。" + +// Clarity Potion +[AIpr] +Name=净化药水 + +[AIpl] +Name=小净化药水 + +// generic rejuv potion/scroll base +[AIp1] +Name=普通物品-回复效果 + +[BIrm] +Bufftip=净化药水 +Buffubertip="该单位使用了净化药水,因此其魔法值会持续地恢复。" + +[AIp2] +Name=普通物品-回复效果 +EditorSuffix= (II) + +[AIp3] +Name=普通物品-回复效果 +EditorSuffix= (III) + +[AIp4] +Name=普通物品-回复效果 +EditorSuffix= (IV) + +[AIp5] +Name=普通物品-回复效果 +EditorSuffix= (V) + +[AIp6] +Name=普通物品-回复效果 +EditorSuffix= (VI) + +// Scroll of Regeneration +[AIsl] +Name=恢复卷轴 + +[BIrg] +Bufftip=生命恢复 +Buffubertip="该单位将会逐渐恢复生命值和魔力值。" +EditorSuffix= (物品) + +// One time permanent gold increase +[AIgo] +Name=金箱子 + +// One time permanent lumber increase +[AIlu] +Name=木材堆 + +// Flare Gun +[AIfa] +Name=信号枪 + +[AIrv] +Name=能显示整个地图的物品 + + +// Wand of Neutralization +[AIdc] +Name=带有锁链驱逐效果的物品 + +// Spider Silk +[AIwb] +Name=带有蛛网技能的物品 + +// Monster Lure +[AImo] +Name=怪兽诱捕守卫 + +[BImo] +Bufftip=怪兽诱捕守卫 +Buffubertip="周围的中立单位都将受到诱惑而为你服务。" + +// Random Item +[AIri] +Name=随机物品 + +// Blight Placement +[Ablp] +Name=荒芜之地的置放 + +// Steal +[Aste] +Name=盗取 + +// Change TOD +[AIct] +Name=改变一天的时间 + +// Vampiric Potion +[AIpv] +Name=吸血药水 + +[BIpv] +Bufftip=吸血药水 +Buffubertip="该英雄使用了吸血药水;因此其攻击力得到了增加,而且攻击的同时也能增加自己的生命值。" + +// Spell Damage Reduction +[AIsr] +Name=魔法伤害减少 + +// Build Tiny Castle +[AIbl] +Name=建造小型的城堡 + +// Build Tiny Castle +[AIbg] +Name=建造小型的大厅 + +//build tiny tower +[AIbt] +Name=建造小型的哨塔 + + +// Shadowsight +[Ashs] +Name=影子权杖 + +[Bshs] +Bufftip=影子权杖 +Buffubertip="该单位受到了影子权杖的作用; 因此其将暴露在敌人的视野之下。" + +// Tome of Retraining +[Aret] +Name=再训练之书 + +// Staff of Teleportation +[AImt] +Name=传送权杖 + +// Staff of Preservation +[ANpr] +Name=保存权杖 + +// Mechanical Critter +[Amec] +Name=机械类的小玩艺 + +[Bmec] +Bufftip=机械类的小玩艺 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Spell Shield +[ANss] +Name=魔法护盾 +EditorSuffix= (护身符) + +// Spell Shield (AOE) +[ANse] +Name=魔法护盾 +EditorSuffix= (神符) + +[BNss] +Bufftip=魔法护盾 +Buffubertip="一种可以阻挡法师的防护之盾。" + +// Spell book +[Aspb] +Name=魔法书 + +// Raise Dead +[AIrd] +Name=复活死尸(物品) + +// Staff of Sanctuary +[ANsa] +Name=避难权杖 + +[BNsa] +Bufftip=避难权杖 +Buffubertip="该单位处于避难权杖的效果之下,因此其生命值将持续地恢复,但是不能移动,攻击和施放任何魔法。" + +[AIsa] +Name=加速卷轴 + +[APsa] +Name=速度神符 + +[AItb] +Name=尘土之影 + +[Bdet] +Bufftip=尘土之影 +Buffubertip="尘土之影能显示出敌人的隐形单位。" + +[AIsb] +Name=减速之球 + +[AIll] +Name=闪电之球(新的) + +[AIos] +Name=减速 +Tip=减速(|cffffcc00W|r) +Ubertip="减慢目标单位%的攻击速度和%的移动速度。|n持续秒。" +EditorSuffix= (圆球视野) + +// Orb of Darkness +[ANbs] +Name=黑暗之球 + +// Spirit Link (AOE) +[Aspp] +Name=灵魂锁链 +EditorSuffix= (地区) + +[AIrb] +Name=重生 + +[BIrb] +Bufftip=再生 +Buffubertip="这个单位重生了。" + +// Dark Summoning +[AUds] +Name=黑暗召唤 +Tip=黑暗召唤(|cffffcc00D|r) +Ubertip="召唤出个友军单位来到自己的身边。" +Hotkey=D +Researchtip="学习黑暗召唤(|cffffcc00D|r)" +Researchubertip="召唤出个友军单位来到自己的身边。" +Researchhotkey=D + +// anti-magic shield +[AIxs] +Name=具有反魔法盾的物品 + +// divine shield item +[AIdv] +Name=物品神圣护甲 + +// silence item +[AIse] +Name=物品沉默 + +// item purge +[AIpg] +Name=带有净化效果的物品 +EditorSuffix= (2) + +// item purge +[AIps] +Name=带有净化效果的物品 +EditorSuffix= (3) + +//#RESTNOBETA +[AItg] +Name=增加攻击力的物品 +EditorSuffix=(+1) + +[AIth] +Name=增加攻击力的物品 +EditorSuffix=(+2) + +[AIti] +Name=增加攻击力的物品 +EditorSuffix=(+4) + +[AItj] +Name=增加攻击力的物品 +EditorSuffix=(+5) + +[AItk] +Name=增加攻击力的物品 +EditorSuffix=(+7) + +[AItl] +Name=增加攻击力的物品 +EditorSuffix=(+8) + +[AItn] +Name=增加攻击力的物品 +EditorSuffix=(+10) + +[AItx] +Name=增加攻击力的物品 +EditorSuffix=(+20) + +[AIh3] +Name=最小的医疗能力 +EditorSuffix=(增加魔法施放间隔时间) + +// orcish battle standard +[AIfx] +Name=物品兽族战斗标准 + +// Hero attacks get fire damage bonus, persistent, Orb of Gul'dan +[AIgd] +Name=能带有火焰伤害的物品 +EditorSuffix= (古尔丹) + + +// tiny altar of kings +[AIbh] +Name=建造微型国王祭坛 + +// tiny blacksmith +[AIbb] +Name=建造微型铁匠铺 + +// tiny lumber mill +[AIbr] +Name=建造微型伐木场 + +// tiny farm +[AIbf] +Name=建造微型农场 + +// tiny barracks +[AIbs] +Name=建造微型兵营 + +[AIdn] +Name=影子之球 技能 + +[AInd] +Name=鼓舞 +EditorSuffix= (特别战役物品) + +[AIuf] +Name=邪恶狂热 +EditorSuffix= (物品) + +[AIcm] +Name=控制魔法 +EditorSuffix= (物品) + +[AIfz] +Name=死亡之指 +EditorSuffix= (物品) + +[AIdp] +Name=死亡契约 +EditorSuffix= (物品) + +[AIdd] +Name=防御 +EditorSuffix= (物品) + +[AIbx] +Name=重击 +EditorSuffix= (物品) + +[AIwm] +Name=水奴 +EditorSuffix= (物品) + +[AIsh] +Name=召唤巨魔猎头者 +EditorSuffix= (物品) + +[BIsh] +Bufftip=猎头者灵魂 + +[AIgx] +Name=恢复光环 +EditorSuffix= (物品) + +[AIhl] +Name=神圣之光 +EditorSuffix= (物品) + +[AIsz] +Name=慢性毒药 +EditorSuffix= (物品) + +[AIpz] +Name=企鹅怪兽 + +[AIfw] +Name=近战攻击带有火焰伤害 + +[AIft] +Name=近战攻击带有冰冻伤害 + +[AIlx] +Name=近战攻击带有闪电伤害 + +[AIcs] +Name=致命一击 +EditorSuffix= (物品) + +[AIdd] +Name=Passive Defense + +[AIcl] +Name=闪电链 +EditorSuffix= (物品) + +[AIxk] +Name=狂暴愤怒 +EditorSuffix= (物品) + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BIwb] +EditorName=物品网 + +[Btrv] +EditorName=传送 显示 diff --git a/share/mpq/units/units/itemdata.slk b/share/mpq/units/units/itemdata.slk new file mode 100644 index 0000000..82fca4d --- /dev/null +++ b/share/mpq/units/units/itemdata.slk @@ -0,0 +1,9554 @@ +ID;PWXL;N;E +B;X35;Y274;D0 +C;X1;Y1;K"itemID" +C;X2;K"comment" +C;X3;K"scriptname" +C;X4;K"version" +C;X5;K"class" +C;X6;K"Level" +C;X7;K"oldLevel" +C;X8;K"abilList" +C;X9;K"cooldownID" +C;X10;K"ignoreCD" +C;X11;K"uses" +C;X12;K"prio" +C;X13;K"usable" +C;X14;K"perishable" +C;X15;K"droppable" +C;X16;K"pawnable" +C;X17;K"sellable" +C;X18;K"pickRandom" +C;X19;K"powerup" +C;X20;K"drop" +C;X21;K"stockMax" +C;X22;K"stockRegen" +C;X23;K"stockStart" +C;X24;K"goldcost" +C;X25;K"lumbercost" +C;X26;K"HP" +C;X27;K"morph" +C;X28;K"armor" +C;X29;K"file" +C;X30;K"scale" +C;X31;K"selSize" +C;X32;K"colorR" +C;X33;K"colorG" +C;X34;K"colorB" +C;X35;K"InBeta" +C;X1;Y2;K"ckng" +C;X2;K"Crown of Kings +5" +C;X3;K"CrownofKings5" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K8 +C;X7;K10 +C;X8;K"AIx5" +C;X9;K"AIx5" +C;X10;K0 +C;X11;K"-" +C;X12;K126 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y3;K"modt" +C;X2;K"mask of death" +C;X3;K"maskofdeath" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K8 +C;X7;K10 +C;X8;K"AIva" +C;X9;K"AIva" +C;X10;K0 +C;X11;K"-" +C;X12;K138 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y4;K"tkno" +C;X2;K"Tome of Power" +C;X3;K"TomeofPower" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K8 +C;X7;K9 +C;X8;K"AIlm" +C;X9;K"AIlm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeBrown\tomeBrown.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y5;K"ratf" +C;X2;K"Claws of Attack +15" +C;X3;K"ClawsofAttack15" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K7 +C;X7;K9 +C;X8;K"AItf" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K53 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K800 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y6;K"rde4" +C;X2;K"Ring of Protection +5" +C;X3;K"RingofProtection5" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K7 +C;X7;K9 +C;X8;K"AId5" +C;X9;K"AIde" +C;X10;K0 +C;X11;K"-" +C;X12;K117 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K800 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y7;K"ofro" +C;X2;K"Orb of Frost" +C;X3;K"OrbofFrost" +C;X4;K0 +C;X5;K"Artifact" +C;X6;K7 +C;X7;K7 +C;X8;K"AIob" +C;X9;K"AIob" +C;X10;K0 +C;X11;K"-" +C;X12;K97 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K800 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y8;K"fgdg" +C;X2;K"Demonic Figurine" +C;X3;K"DemonicFigurine" +C;X4;K0 +C;X5;K"Charged" +C;X6;K6 +C;X7;K8 +C;X8;K"AIfu" +C;X9;K"AIfu" +C;X10;K0 +C;X11;K1 +C;X12;K139 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y9;K"infs" +C;X2;K"Inferno Stone" +C;X3;K"InfernoStone" +C;X4;K0 +C;X5;K"Charged" +C;X6;K6 +C;X7;K8 +C;X8;K"AIin" +C;X9;K"AIin" +C;X10;K0 +C;X11;K1 +C;X12;K141 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y10;K"shar" +C;X2;K"Ice Shard" +C;X3;K"IceShard" +C;X4;K1 +C;X5;K"Charged" +C;X6;K6 +C;X7;K0 +C;X8;K"AIir" +C;X9;K"AIir" +C;X10;K0 +C;X11;K1 +C;X12;K135 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y11;K"sand" +C;X2;K"Scroll of Animate Dead" +C;X3;K"ScrollofAnimateDead" +C;X4;K0 +C;X5;K"Charged" +C;X6;K6 +C;X7;K8 +C;X8;K"AIan" +C;X9;K"AIan" +C;X10;K0 +C;X11;K1 +C;X12;K133 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y12;K"sres" +C;X2;K"Scroll of Restoration" +C;X3;K"ScrollofRestoration" +C;X4;K0 +C;X5;K"Charged" +C;X6;K5 +C;X7;K7 +C;X8;K"AIra" +C;X9;K"AIra" +C;X10;K0 +C;X11;K1 +C;X12;K144 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y13;K"wild" +C;X2;K"Amulet of the Wild" +C;X3;K"AmuletoftheWild" +C;X4;K1 +C;X5;K"Charged" +C;X6;K6 +C;X7;K0 +C;X8;K"AIuw" +C;X9;K"AIuw" +C;X10;K0 +C;X11;K1 +C;X12;K136 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y14;K"srrc" +C;X2;K"Scroll of Resurrection" +C;X3;K"ScrollofResurrection" +C;X4;K0 +C;X5;K"Charged" +C;X6;K6 +C;X7;K8 +C;X8;K"AIrs" +C;X9;K"AIrs" +C;X10;K0 +C;X11;K1 +C;X12;K134 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y15;K"rej6" +C;X2;K"Greater Scroll of Replenishment" +C;X3;K"GreaterScrollofReplenishment" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K6 +C;X7;K0 +C;X8;K"AIp6" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K130 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y16;K"odef" +C;X2;K"Orb of Darkness" +C;X3;K"OrbofDarkness" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K0 +C;X8;K"AIdf" +C;X9;K"AIdf" +C;X10;K0 +C;X11;K"-" +C;X12;K96 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y17;K"rde3" +C;X2;K"Ring of Protection +4" +C;X3;K"RingofProtection4" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K8 +C;X8;K"AId4" +C;X9;K"AIde" +C;X10;K0 +C;X11;K"-" +C;X12;K116 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y18;K"pmna" +C;X2;K"Pendant of Mana" +C;X3;K"PendantofMana" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K7 +C;X8;K"AIbm" +C;X9;K"AImm" +C;X10;K0 +C;X11;K"-" +C;X12;K61 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y19;K"rhth" +C;X2;K"Khadgar's Gem of Health" +C;X3;K"Khadgar'sGemofHealth" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K7 +C;X8;K"AIl2" +C;X9;K"AIml" +C;X10;K0 +C;X11;K"-" +C;X12;K128 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y20;K"ssil" +C;X2;K"Staff of Silence" +C;X3;K"StaffofSilence" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K0 +C;X8;K"AIse" +C;X9;K"ANsi" +C;X10;K0 +C;X11;K"-" +C;X12;K6 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y21;K"spsh" +C;X2;K"Amulet of Spell Shield" +C;X3;K"AmuletofSpellShield" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K6 +C;X7;K5 +C;X8;K"ANss" +C;X9;K"ANss" +C;X10;K0 +C;X11;K"-" +C;X12;K113 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y22;K"desc" +C;X2;K"Dagger of Escape" +C;X3;K"DaggerofEscape" +C;X4;K1 +C;X5;K"Artifact" +C;X6;K7 +C;X7;K0 +C;X8;K"AIbk" +C;X9;K"AIbk" +C;X10;K0 +C;X11;K"-" +C;X12;K47 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y23;K"ankh" +C;X2;K"Ankh of Reincarnation" +C;X3;K"AnkhofReincarnation" +C;X4;K0 +C;X5;K"Charged" +C;X6;K5 +C;X7;K6 +C;X8;K"AIrc" +C;X9;K"AIrc" +C;X10;K0 +C;X11;K1 +C;X12;K142 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K800 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y24;K"pdiv" +C;X2;K"Potion of Divinity" +C;X3;K"PotionofDivinity" +C;X4;K1 +C;X5;K"Charged" +C;X6;K5 +C;X7;K0 +C;X8;K"AIdv" +C;X9;K"AHds" +C;X10;K0 +C;X11;K1 +C;X12;K125 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y25;K"pres" +C;X2;K"Potion of Restoration" +C;X3;K"PotionofRestoration" +C;X4;K0 +C;X5;K"Charged" +C;X6;K5 +C;X7;K6 +C;X8;K"AIre" +C;X9;K"AIre" +C;X10;K0 +C;X11;K1 +C;X12;K132 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y26;K"whwd" +C;X2;K"Healing Wards" +C;X3;K"HealingWards" +C;X4;K0 +C;X5;K"Charged" +C;X6;K5 +C;X7;K6 +C;X8;K"AIhw" +C;X9;K"Ahwd" +C;X10;K0 +C;X11;K3 +C;X12;K85 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y27;K"rej5" +C;X2;K"Lesser Scroll of Replenishment" +C;X3;K"LesserScrollofReplenishment" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K5 +C;X7;K0 +C;X8;K"AIp5" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K129 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y28;K"hcun" +C;X2;K"Hood of Cunning" +C;X3;K"HoodofCunning" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K9 +C;X8;K"AIa4,AIi4" +C;X9;K"AIa4" +C;X10;K0 +C;X11;K"-" +C;X12;K62 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y29;K"hval" +C;X2;K"Helm of Valor" +C;X3;K"HelmofValor" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K9 +C;X8;K"AIs4,AIa4" +C;X9;K"AIs4" +C;X10;K0 +C;X11;K"-" +C;X12;K108 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y30;K"mcou" +C;X2;K"Medallion of Courage" +C;X3;K"MedallionofCourage" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K9 +C;X8;K"AIs4,AIi4" +C;X9;K"AIs4" +C;X10;K0 +C;X11;K"-" +C;X12;K87 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y31;K"belv" +C;X2;K"Boots of Quel'Thalas +6" +C;X3;K"BootsofQuel'Thalas6" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K8 +C;X8;K"AIa6" +C;X9;K"AIa6" +C;X10;K0 +C;X11;K"-" +C;X12;K78 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y32;K"bgst" +C;X2;K"Belt of Giant Strength +6" +C;X3;K"BeltofGiantStrength6" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K8 +C;X8;K"AIs6" +C;X9;K"AIs6" +C;X10;K0 +C;X11;K"-" +C;X12;K106 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y33;K"ciri" +C;X2;K"Robe of the Magi +6" +C;X3;K"RobeoftheMagi6" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K8 +C;X8;K"AIi6" +C;X9;K"AIi6" +C;X10;K0 +C;X11;K"-" +C;X12;K43 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y34;K"ajen" +C;X2;K"Ancient Janggo of Endurance" +C;X3;K"AncientJanggoofEndurance" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K7 +C;X8;K"AIae" +C;X9;K"AOae" +C;X10;K0 +C;X11;K"-" +C;X12;K118 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y35;K"clfm" +C;X2;K"Cloak of Flames" +C;X3;K"CloakofFlames" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K7 +C;X8;K"AIcf" +C;X9;K"AIcf" +C;X10;K0 +C;X11;K"-" +C;X12;K120 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y36;K"ratc" +C;X2;K"Claws of Attack +12" +C;X3;K"ClawsofAttack12" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K7 +C;X8;K"AItc" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K49 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y37;K"ward" +C;X2;K"Warsong Battle Drums" +C;X3;K"WarsongBattleDrums" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K7 +C;X8;K"AIcd" +C;X9;K"AOac" +C;X10;K0 +C;X11;K"-" +C;X12;K38 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y38;K"kpin" +C;X2;K"Khadgar's Pipe of Insight" +C;X3;K"Khadgar'sPipeofInsight" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K7 +C;X8;K"AIba" +C;X9;K"AHab" +C;X10;K0 +C;X11;K"-" +C;X12;K60 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y39;K"crys" +C;X2;K"Crystal Ball" +C;X3;K"CrystalBall" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K5 +C;X7;K3 +C;X8;K"AIta" +C;X9;K"AIta" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y40;K"totw" +C;X2;K"talisman of the wild" +C;X3;K"talismanofthewild" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K7 +C;X8;K"AIff" +C;X9;K"AIff" +C;X10;K0 +C;X11;K3 +C;X12;K84 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y41;K"fgfh" +C;X2;K"Spiked Collar" +C;X3;K"SpikedCollar" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K6 +C;X8;K"AIfh" +C;X9;K"AIfh" +C;X10;K0 +C;X11;K1 +C;X12;K83 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y42;K"fgrd" +C;X2;K"Red Drake Egg" +C;X3;K"RedDrakeEgg" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K6 +C;X8;K"AIfd" +C;X9;K"AIfd" +C;X10;K0 +C;X11;K1 +C;X12;K77 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y43;K"fgrg" +C;X2;K"Stone Token" +C;X3;K"StoneToken" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K6 +C;X8;K"AIfr" +C;X9;K"AIfr" +C;X10;K0 +C;X11;K1 +C;X12;K140 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y44;K"fgsk" +C;X2;K"Book of the Dead" +C;X3;K"BookoftheDead" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K6 +C;X8;K"AIfs" +C;X9;K"AIfs" +C;X10;K0 +C;X11;K1 +C;X12;K55 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y45;K"wcyc" +C;X2;K"Wand of the Wind" +C;X3;K"WandoftheWind" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K6 +C;X8;K"AIcy" +C;X9;K"Acyc" +C;X10;K0 +C;X11;K3 +C;X12;K30 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y46;K"hlst" +C;X2;K"Health Stone" +C;X3;K"HealthStone" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K4 +C;X8;K"AIh2,Arll" +C;X9;K"AIhe" +C;X10;K0 +C;X11;K1 +C;X12;K122 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y47;K"mnst" +C;X2;K"Mana Stone" +C;X3;K"ManaStone" +C;X4;K0 +C;X5;K"Charged" +C;X6;K4 +C;X7;K4 +C;X8;K"AIm2,AIrn" +C;X9;K"AIma" +C;X10;K0 +C;X11;K1 +C;X12;K90 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y48;K"rej4" +C;X2;K"Greater Replenishment Potion" +C;X3;K"GreaterReplenishmentPotion" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K4 +C;X7;K0 +C;X8;K"AIp4" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K119 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y49;K"ram4" +C;X2;K"Fourth Ring of the Archmagi" +C;X3;K"FourthRingoftheArchmagi" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K4 +C;X7;K2 +C;X8;K"AIx3,AIba" +C;X9;K"AHab" +C;X10;K0 +C;X11;K"-" +C;X12;K145 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y50;K"lhst" +C;X2;K"Lion Horn of Stormwind" +C;X3;K"LionHornofStormwind" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K7 +C;X8;K"AIad" +C;X9;K"AHad" +C;X10;K0 +C;X11;K"-" +C;X12;K76 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y51;K"afac" +C;X2;K"Alleria's Flute of Accuracy" +C;X3;K"Alleria'sFluteofAccuracy" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K7 +C;X8;K"AIar" +C;X9;K"AEar" +C;X10;K0 +C;X11;K"-" +C;X12;K46 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y52;K"lgdh" +C;X2;K"Legion Doom-Horn" +C;X3;K"LegionDoomHorn" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K7 +C;X8;K"AIau" +C;X9;K"AUau" +C;X10;K0 +C;X11;K"-" +C;X12;K124 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y53;K"sbch" +C;X2;K"Scourge Bone Chimes" +C;X3;K"ScourgeBoneChimes" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K7 +C;X8;K"AIav" +C;X9;K"AUav" +C;X10;K0 +C;X11;K"-" +C;X12;K71 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y54;K"brac" +C;X2;K"Runed Bracers" +C;X3;K"RunedBracers" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K4 +C;X8;K"AIsr" +C;X9;K"AIsr" +C;X10;K0 +C;X11;K"-" +C;X12;K114 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y55;K"rwiz" +C;X2;K"Sobi Mask" +C;X3;K"SobiMask" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K4 +C;X8;K"AIrm" +C;X9;K"AIrm" +C;X10;K0 +C;X11;K"-" +C;X12;K64 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y56;K"dsum" +C;X2;K"Diamond of Summoning" +C;X3;K"DiamondofSummoning" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K4 +C;X7;K0 +C;X8;K"AUds" +C;X9;K"AUds" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y57;K"pghe" +C;X2;K"potion of greater healing" +C;X3;K"potionofgreaterhealing" +C;X4;K0 +C;X5;K"Charged" +C;X6;K3 +C;X7;K3 +C;X8;K"AIh2" +C;X9;K"AIhe" +C;X10;K0 +C;X11;K1 +C;X12;K121 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y58;K"pgma" +C;X2;K"Potion of Greater Mana" +C;X3;K"PotionofGreaterMana" +C;X4;K0 +C;X5;K"Charged" +C;X6;K3 +C;X7;K3 +C;X8;K"AIm2" +C;X9;K"AIma" +C;X10;K0 +C;X11;K1 +C;X12;K68 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y59;K"pnvu" +C;X2;K"potion of invulnerability" +C;X3;K"potionofinvulnerability" +C;X4;K0 +C;X5;K"Charged" +C;X6;K3 +C;X7;K3 +C;X8;K"AIvu" +C;X9;K"AIvu" +C;X10;K0 +C;X11;K1 +C;X12;K102 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y60;K"sror" +C;X2;K"Scroll of the Beast" +C;X3;K"ScrolloftheBeast" +C;X4;K0 +C;X5;K"Charged" +C;X6;K3 +C;X7;K3 +C;X8;K"AIrr" +C;X9;K"Aroa" +C;X10;K0 +C;X11;K1 +C;X12;K63 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y61;K"woms" +C;X2;K"Wand of Mana Stealing" +C;X3;K"WandofManaStealing" +C;X4;K1 +C;X5;K"Charged" +C;X6;K3 +C;X7;K3 +C;X8;K"Aste" +C;X9;K"Aste" +C;X10;K0 +C;X11;K2 +C;X12;K69 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y62;K"rej3" +C;X2;K"Replenishment Potion" +C;X3;K"ReplenishmentPotion" +C;X4;K1 +C;X5;K"Charged" +C;X6;K2 +C;X7;K0 +C;X8;K"AIp3" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K75 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y63;K"ofir" +C;X2;K"Orb of Fire" +C;X3;K"OrbofFire" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K3 +C;X7;K7 +C;X8;K"AIfb" +C;X9;K"AIfb" +C;X10;K0 +C;X11;K"-" +C;X12;K95 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y64;K"ocor" +C;X2;K"Orb of Corruption" +C;X3;K"OrbofCorruption" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K3 +C;X7;K7 +C;X8;K"AIcb" +C;X9;K"AIcb" +C;X10;K0 +C;X11;K"-" +C;X12;K93 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y65;K"oli2" +C;X2;K"Orb of Lightning" +C;X3;K"OrbofLightning" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K3 +C;X7;K0 +C;X8;K"AIll" +C;X9;K"AIll" +C;X10;K0 +C;X11;K"-" +C;X12;K91 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y66;K"oven" +C;X2;K"Orb of Venom" +C;X3;K"OrbofVenom" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K3 +C;X7;K7 +C;X8;K"AIpb,Apo2" +C;X9;K"AIpb" +C;X10;K0 +C;X11;K"-" +C;X12;K94 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y67;K"ram3" +C;X2;K"Third Ring of the Archmagi" +C;X3;K"ThirdRingoftheArchmagi" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K3 +C;X7;K2 +C;X8;K"AIx3" +C;X9;K"AIab" +C;X10;K0 +C;X11;K"-" +C;X12;K109 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K550 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y68;K"evtl" +C;X2;K"Talisman of Evasion" +C;X3;K"TalismanofEvasion" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K7 +C;X8;K"AIev" +C;X9;K"AEev" +C;X10;K0 +C;X11;K"-" +C;X12;K99 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y69;K"penr" +C;X2;K"Pendant of Energy" +C;X3;K"PendantofEnergy" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K4 +C;X8;K"AImb" +C;X9;K"AImm" +C;X10;K0 +C;X11;K"-" +C;X12;K50 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y70;K"prvt" +C;X2;K"Periapt of Vitality" +C;X3;K"PeriaptofVitality" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K4 +C;X8;K"AIlf" +C;X9;K"AIml" +C;X10;K0 +C;X11;K"-" +C;X12;K107 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y71;K"rat9" +C;X2;K"Claws of Attack +9" +C;X3;K"ClawsofAttack9" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K4 +C;X8;K"AIt9" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K48 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y72;K"rde2" +C;X2;K"Ring of Protection +3" +C;X3;K"RingofProtection3" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K0 +C;X8;K"AId3" +C;X9;K"AIde" +C;X10;K0 +C;X11;K"-" +C;X12;K105 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y73;K"rlif" +C;X2;K"Ring of regeneration" +C;X3;K"Ringofregeneration" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K3 +C;X7;K4 +C;X8;K"Arel" +C;X9;K"Arel" +C;X10;K0 +C;X11;K"-" +C;X12;K42 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y74;K"tret" +C;X2;K"Tome of Retraining" +C;X3;K"TomeofRetraining" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K3 +C;X7;K0 +C;X8;K"Aret" +C;X9;K"Aret" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y75;K"tgrh" +C;X2;K"Tiny Great Hall" +C;X3;K"TinyGreatHall" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K3 +C;X7;K0 +C;X8;K"AIbg" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K600 +C;X25;K185 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y76;K"will" +C;X2;K"Wand of Illusion" +C;X3;K"WandofIllusion" +C;X4;K0 +C;X5;K"Charged" +C;X6;K2 +C;X7;K3 +C;X8;K"AIil" +C;X9;K"AIil" +C;X10;K0 +C;X11;K3 +C;X12;K14 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y77;K"wlsd" +C;X2;K"Wand of Lightning Shield" +C;X3;K"WandofLightningShield" +C;X4;K0 +C;X5;K"Charged" +C;X6;K2 +C;X7;K3 +C;X8;K"AIls" +C;X9;K"Alsh" +C;X10;K0 +C;X11;K3 +C;X12;K8 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y78;K"wswd" +C;X2;K"Sentry Wards" +C;X3;K"SentryWards" +C;X4;K0 +C;X5;K"Charged" +C;X6;K2 +C;X7;K3 +C;X8;K"AIsw" +C;X9;K"Ayeye" +C;X10;K0 +C;X11;K3 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y79;K"rej2" +C;X2;K"Lesser Replenishment Potion" +C;X3;K"LesserReplenishmentPotion" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K2 +C;X7;K0 +C;X8;K"AIp2" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K72 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y80;K"gemt" +C;X2;K"Gem of True Seeing" +C;X3;K"GemofTrueSeeing" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K2 +C;X7;K0 +C;X8;K"Adt1" +C;X9;K"Adet" +C;X10;K0 +C;X11;K"-" +C;X12;K35 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y81;K"ram2" +C;X2;K"Second Ring of the Archmagi" +C;X3;K"SecondRingoftheArchmagi" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K2 +C;X7;K2 +C;X8;K"AIx2" +C;X9;K"AIab" +C;X10;K0 +C;X11;K"-" +C;X12;K52 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y82;K"stel" +C;X2;K"Staff of Teleportation" +C;X3;K"StaffofTeleportation" +C;X4;K1 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K0 +C;X8;K"AImt" +C;X9;K"AHmt" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K220 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y83;K"cnob" +C;X2;K"Circlet of Nobility" +C;X3;K"CircletofNobility" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K4 +C;X8;K"AIx2" +C;X9;K"AIx2" +C;X10;K0 +C;X11;K"-" +C;X12;K79 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K175 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y84;K"gcel" +C;X2;K"Gloves of Haste" +C;X3;K"GlovesofHaste" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K2 +C;X8;K"AIsx" +C;X9;K"AIas" +C;X10;K0 +C;X11;K"-" +C;X12;K32 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y85;K"rat6" +C;X2;K"Claws of Attack +6" +C;X3;K"ClawsofAttack6" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K2 +C;X8;K"AIt6" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K44 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y86;K"rde1" +C;X2;K"Ring of Protection +2" +C;X3;K"RingofProtection2" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K2 +C;X8;K"AId2" +C;X9;K"AIde" +C;X10;K0 +C;X11;K"-" +C;X12;K80 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y87;K"bspd" +C;X2;K"Boots of Speed" +C;X3;K"BootsofSpeed" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K2 +C;X7;K2 +C;X8;K"AIms" +C;X9;K"AIms" +C;X10;K0 +C;X11;K"-" +C;X12;K41 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y88;K"tdx2" +C;X2;K"Tome of Agility +2" +C;X3;K"TomeofAgility2" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K2 +C;X7;K5 +C;X8;K"AIgm" +C;X9;K"AIgm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeGreen\tomeGreen.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y89;K"texp" +C;X2;K"Tome of Experience" +C;X3;K"TomeofExperience" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K2 +C;X7;K5 +C;X8;K"AIem" +C;X9;K"AIem" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeBrown\tomeBrown.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y90;K"tin2" +C;X2;K"Tome of Intelligence +2" +C;X3;K"TomeofIntelligence2" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K2 +C;X7;K5 +C;X8;K"AItm" +C;X9;K"AItm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeBlue\tomeBlue.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y91;K"tpow" +C;X2;K"Tome of Knowledge" +C;X3;K"TomeofKnowledge" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K2 +C;X7;K5 +C;X8;K"AIxm" +C;X9;K"AIxm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tome\tome.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y92;K"tst2" +C;X2;K"Tome of Strength +2" +C;X3;K"TomeofStrength2" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K2 +C;X7;K5 +C;X8;K"AInm" +C;X9;K"AInm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeRed\tomeRed.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y93;K"pnvl" +C;X2;K"Potion of Lesser Invulnerability" +C;X3;K"PotionofLesserInvulnerability" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AIvl" +C;X9;K"AIvu" +C;X10;K0 +C;X11;K1 +C;X12;K40 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y94;K"stwp" +C;X2;K"Scroll of Town Portal" +C;X3;K"ScrollofTownPortal" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AItp" +C;X9;K"AItp" +C;X10;K0 +C;X11;K1 +C;X12;K123 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K440 +C;X24;K350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y95;K"wneg" +C;X2;K"Wand of Negation" +C;X3;K"WandofNegation" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AIdi" +C;X9;K"AIdi" +C;X10;K1 +C;X11;K3 +C;X12;K110 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K90 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y96;K"sneg" +C;X2;K"Staff of Negation" +C;X3;K"StaffofNegation" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K3 +C;X8;K"AIds" +C;X9;K"AIds" +C;X10;K0 +C;X11;K"-" +C;X12;K112 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y97;K"wneu" +C;X2;K"Wand of Neutralization" +C;X3;K"WandofNeutralization" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AIdc" +C;X9;K"AIdc" +C;X10;K0 +C;X11;K4 +C;X12;K111 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K90 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y98;K"shea" +C;X2;K"Scroll of Healing" +C;X3;K"ScrollofHealing" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AIha" +C;X9;K"AIha" +C;X10;K0 +C;X11;K1 +C;X12;K73 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K440 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y99;K"sman" +C;X2;K"Scroll of Mana" +C;X3;K"ScrollofMana" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K2 +C;X7;K0 +C;X8;K"AImr" +C;X9;K"AImr" +C;X10;K0 +C;X11;K1 +C;X12;K65 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K5 +C;X22;K120 +C;X23;K440 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y100;K"rej1" +C;X2;K"Minor Replenishment Potion" +C;X3;K"MinorReplenishmentPotion" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K1 +C;X7;K0 +C;X8;K"AIp1" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K1 +C;X12;K31 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K1 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y101;K"pspd" +C;X2;K"Potion of Speed" +C;X3;K"PotionofSpeed" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K1 +C;X7;K0 +C;X8;K"AIsp" +C;X9;K"AIsp" +C;X10;K0 +C;X11;K1 +C;X12;K7 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K45 +C;X23;K440 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y102;K"dust" +C;X2;K"Dust of Appearance" +C;X3;K"DustofAppearance" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K1 +C;X7;K0 +C;X8;K"AItb" +C;X9;K"AItb" +C;X10;K0 +C;X11;K2 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y103;K"ram1" +C;X2;K"First Ring of the Archmagi" +C;X3;K"FirstRingoftheArchmagi" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K1 +C;X7;K2 +C;X8;K"AIx1" +C;X9;K"AIab" +C;X10;K0 +C;X11;K"-" +C;X12;K24 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K125 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y104;K"clsd" +C;X2;K"Cloak of Shadows" +C;X3;K"CloakofShadows" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K1 +C;X7;K2 +C;X8;K"Ashm" +C;X9;K"Ashm" +C;X10;K0 +C;X11;K"-" +C;X12;K2 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y105;K"rag1" +C;X2;K"Slippers of Agility +3" +C;X3;K"SlippersofAgility3" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K1 +C;X7;K2 +C;X8;K"AIa3" +C;X9;K"AIa3" +C;X10;K0 +C;X11;K"-" +C;X12;K104 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y106;K"rin1" +C;X2;K"Mantle of Intelligence +3" +C;X3;K"MantleofIntelligence3" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K1 +C;X7;K2 +C;X8;K"AIi3" +C;X9;K"AIi3" +C;X10;K0 +C;X11;K"-" +C;X12;K23 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y107;K"rst1" +C;X2;K"Gauntlets of Ogre Strength +3" +C;X3;K"GauntletsofOgreStrength3" +C;X4;K0 +C;X5;K"Permanent" +C;X6;K1 +C;X7;K2 +C;X8;K"AIs3" +C;X9;K"AIs3" +C;X10;K0 +C;X11;K"-" +C;X12;K58 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y108;K"manh" +C;X2;K"Manual of Health" +C;X3;K"ManualofHealth" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K1 +C;X7;K1 +C;X8;K"AImh" +C;X9;K"AImi" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tome\tome.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y109;K"tdex" +C;X2;K"Tome of Agility +1" +C;X3;K"TomeofAgility1" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K1 +C;X7;K1 +C;X8;K"AIam" +C;X9;K"AIam" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeGreen\tomeGreen.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y110;K"tint" +C;X2;K"Tome of Intelligence" +C;X3;K"TomeofIntelligence" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K1 +C;X7;K1 +C;X8;K"AIim" +C;X9;K"AIim" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeBlue\tomeBlue.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y111;K"tstr" +C;X2;K"Tome of Strength +1" +C;X3;K"TomeofStrength1" +C;X4;K0 +C;X5;K"PowerUp" +C;X6;K1 +C;X7;K1 +C;X8;K"AIsm" +C;X9;K"AIsm" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeRed\tomeRed.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y112;K"pinv" +C;X2;K"potion of invisibility" +C;X3;K"potionofinvisibility" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIv1" +C;X9;K"AIvi" +C;X10;K0 +C;X11;K1 +C;X12;K33 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y113;K"phea" +C;X2;K"potion of healing" +C;X3;K"potionofhealing" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K3 +C;X8;K"AIh1" +C;X9;K"AIhe" +C;X10;K0 +C;X11;K1 +C;X12;K74 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K440 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y114;K"pman" +C;X2;K"Potion of Mana" +C;X3;K"PotionofMana" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIm1" +C;X9;K"AIma" +C;X10;K0 +C;X11;K1 +C;X12;K66 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K440 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y115;K"spro" +C;X2;K"Scroll of Protection" +C;X3;K"ScrollofProtection" +C;X4;K0 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIda" +C;X9;K"AIda" +C;X10;K0 +C;X11;K1 +C;X12;K103 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K440 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y116;K"hslv" +C;X2;K"Healing Salve" +C;X3;K"HealingSalve" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIrl" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K3 +C;X12;K82 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y117;K"moon" +C;X2;K"Moonstone" +C;X3;K"Moonstone" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIct" +C;X9;K"AIct" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y118;K"shas" +C;X2;K"Scroll of Speed" +C;X3;K"ScrollofSpeed" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIsa" +C;X9;K"AIsp" +C;X10;K0 +C;X11;K1 +C;X12;K34 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y119;K"skul" +C;X2;K"Sacrificial Skull" +C;X3;K"SacrificialSkull" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"Ablp" +C;X9;K"Ablp" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y120;K"mcri" +C;X2;K"Mechanical Critter" +C;X3;K"MechanicalCritter" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"Amec" +C;X9;K"Amec" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y121;K"rnec" +C;X2;K"Rod of Necromancy" +C;X3;K"RodofNecromancy" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIrd" +C;X9;K"AIrd" +C;X10;K0 +C;X11;K4 +C;X12;K86 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y122;K"tsct" +C;X2;K"Ivory Tower" +C;X3;K"IvoryTower" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K1 +C;X7;K0 +C;X8;K"AIbt" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K30 +C;X23;K0 +C;X24;K30 +C;X25;K20 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y123;K"azhr" +C;X2;K"Heart of Aszune" +C;X3;K"HeartofAszune" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y124;K"bzbe" +C;X2;K"Empty Vial" +C;X3;K"EmptyVial" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y125;K"bzbf" +C;X2;K"Full Vial" +C;X3;K"FullVial" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y126;K"ches" +C;X2;K"Cheese" +C;X3;K"Cheese" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y127;K"cnhn" +C;X2;K"Horn of Cenarius" +C;X3;K"HornofCenarius" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"Arel,AIl1" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y128;K"glsk" +C;X2;K"Guldan's Skull" +C;X3;K"Guldan'sSkull" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y129;K"gopr" +C;X2;K"Glyph of Purification" +C;X3;K"GlyphofPurification" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y130;K"k3m1" +C;X2;K"Key of 3 Moons - 1" +C;X3;K"Keyof3Moons1" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y131;K"k3m2" +C;X2;K"Key of 3 Moons - 2" +C;X3;K"Keyof3Moons2" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y132;K"k3m3" +C;X2;K"Key of 3 Moons - 3" +C;X3;K"Keyof3Moons3" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y133;K"ktrm" +C;X2;K"Urn of Kel'Thuzad" +C;X3;K"UrnofKel'Thuzad" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y134;K"kybl" +C;X2;K"bloody key" +C;X3;K"bloodykey" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y135;K"kygh" +C;X2;K"ghost key" +C;X3;K"ghostkey" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y136;K"kymn" +C;X2;K"moon key" +C;X3;K"moonkey" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y137;K"kysn" +C;X2;K"sun key" +C;X3;K"sunkey" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y138;K"ledg" +C;X2;K"Gerard's Lost Ledger" +C;X3;K"Gerard'sLostLedger" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y139;K"phlt" +C;X2;K"Phat Lewt" +C;X3;K"PhatLewt" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K999 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y140;K"sehr" +C;X2;K"Searinox's Heart" +C;X3;K"Searinox'sHeart" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y141;K"engs" +C;X2;K"Enchanted Gemstone" +C;X3;K"EnchantedGemstone" +C;X4;K0 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y142;K"sorf" +C;X2;K"Shadow Orb Fragment" +C;X3;K"ShadowOrbFragment" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\CrystalShard\CrystalShard.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y143;K"gmfr" +C;X2;K"Gem Fragment" +C;X3;K"GemFragment" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y144;K"jpnt" +C;X2;K"note to jaina proudmoore" +C;X3;K"notetojainaproudmoore" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y145;K"shwd" +C;X2;K"shimmerweed" +C;X3;K"shimmerweed" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\Shimmerweed\Shimmerweed.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y146;K"skrt" +C;X2;K"Skeletal Artifact" +C;X3;K"SkeletalArtifact" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y147;K"thle" +C;X2;K"thunder lizard egg" +C;X3;K"thunderlizardegg" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\ThunderLizardEgg\ThunderLizardEgg.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y148;K"pomn" +C;X2;K"Potion of Omniscience" +C;X3;K"PotionofOmniscience" +C;X4;K1 +C;X5;K"Charged" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrv" +C;X9;K"AIrv" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y149;K"wshs" +C;X2;K"Wand of Shadowsight" +C;X3;K"WandofShadowsight" +C;X4;K1 +C;X5;K"Charged" +C;X6;K0 +C;X7;K0 +C;X8;K"Ashs" +C;X9;K"Ashs" +C;X10;K0 +C;X11;K2 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y150;K"fgun" +C;X2;K"Flare Gun" +C;X3;K"FlareGun" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K3 +C;X8;K"AIfa" +C;X9;K"AIfa" +C;X10;K0 +C;X11;K3 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K45 +C;X23;K0 +C;X24;K125 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y151;K"lure" +C;X2;K"Monster Lure" +C;X3;K"MonsterLure" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K3 +C;X8;K"AImo" +C;X9;K"AImo" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y152;K"olig" +C;X2;K"Orb of Lightning(old)" +C;X3;K"OrbofLightningold" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K10 +C;X8;K"AIlb,AIlp" +C;X9;K"AIlb" +C;X10;K0 +C;X11;K"-" +C;X12;K92 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y153;K"amrc" +C;X2;K"Amulet of Recall" +C;X3;K"AmuletofRecall" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrt" +C;X9;K"AIrt" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y154;K"ccmd" +C;X2;K"Scepter of Mastery" +C;X3;K"ScepterofMastery" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIco" +C;X9;K"AIco" +C;X10;K0 +C;X11;K3 +C;X12;K143 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y155;K"flag" +C;X2;K"human flag" +C;X3;K"humanflag" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfm" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\HumanCaptureFlag\HumanCaptureFlag.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y156;K"gobm" +C;X2;K"Goblin Land Mine" +C;X3;K"GoblinLandMine" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpm" +C;X9;K"AIpm" +C;X10;K0 +C;X11;K3 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K225 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y157;K"gsou" +C;X2;K"Soul Gem" +C;X3;K"SoulGem" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIso" +C;X9;K"AIso" +C;X10;K0 +C;X11;K1 +C;X12;K137 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y158;K"nflg" +C;X2;K"NightElf flag" +C;X3;K"NightElfflag" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfn" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\NightElfCaptureFlag\NightElfCaptureFlag.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y159;K"nspi" +C;X2;K"Necklace of Spell Immunity" +C;X3;K"NecklaceofSpellImmunity" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AImx" +C;X9;K"AImx" +C;X10;K0 +C;X11;K"-" +C;X12;K131 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y160;K"oflg" +C;X2;K"Orc flag" +C;X3;K"Orcflag" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfo" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\OrcCaptureFlag\OrcCaptureFlag.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y161;K"pams" +C;X2;K"Anti-Magic Potion" +C;X3;K"AntiMagicPotion" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIxs" +C;X9;K"Aami" +C;X10;K0 +C;X11;K1 +C;X12;K56 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y162;K"pgin" +C;X2;K"potion of greater invisibility" +C;X3;K"potionofgreaterinvisibility" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIv2" +C;X9;K"AIvi" +C;X10;K0 +C;X11;K1 +C;X12;K36 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y163;K"rat3" +C;X2;K"Claws of Attack +3" +C;X3;K"ClawsofAttack3" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIat" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K18 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y164;K"rde0" +C;X2;K"Ring of Protection +1" +C;X3;K"RingofProtection1" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId1" +C;X9;K"AIde" +C;X10;K0 +C;X11;K"-" +C;X12;K45 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y165;K"rnsp" +C;X2;K"Ring of Superiority" +C;X3;K"RingofSuperiority" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIx1" +C;X9;K"AIx1" +C;X10;K0 +C;X11;K"-" +C;X12;K25 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y166;K"soul" +C;X2;K"Soul" +C;X3;K"Soul" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y167;K"tels" +C;X2;K"Goblin Night Scope" +C;X3;K"GoblinNightScope" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIuv" +C;X9;K"Ault" +C;X10;K0 +C;X11;K"-" +C;X12;K5 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y168;K"tgxp" +C;X2;K"Tome of Greater Experience" +C;X3;K"TomeofGreaterExperience" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIe2" +C;X9;K"AIe2" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\tomeBrown\tomeBrown.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y169;K"uflg" +C;X2;K"Undead flag" +C;X3;K"Undeadflag" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfe" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\UndeadCaptureFlag\UndeadCaptureFlag.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y170;K"anfg" +C;X2;K"Ancient Figurine" +C;X3;K"AncientFigurine" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIi1" +C;X9;K"AIi1" +C;X10;K0 +C;X11;K"-" +C;X12;K11 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y171;K"brag" +C;X2;K"Bracer of Agility" +C;X3;K"BracerofAgility" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIa1" +C;X9;K"AIa1" +C;X10;K0 +C;X11;K"-" +C;X12;K20 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y172;K"drph" +C;X2;K"Druid Pouch" +C;X3;K"DruidPouch" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIi1" +C;X9;K"AIi1" +C;X10;K0 +C;X11;K"-" +C;X12;K10 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y173;K"iwbr" +C;X2;K"Ironwood Branch" +C;X3;K"IronwoodBranch" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIs1" +C;X9;K"AIs1" +C;X10;K0 +C;X11;K"-" +C;X12;K27 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y174;K"jdrn" +C;X2;K"Jade Ring" +C;X3;K"JadeRing" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIa1" +C;X9;K"AIa1" +C;X10;K0 +C;X11;K"-" +C;X12;K21 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y175;K"lnrn" +C;X2;K"Lion's Ring" +C;X3;K"Lion'sRing" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIa1" +C;X9;K"AIa1" +C;X10;K0 +C;X11;K"-" +C;X12;K22 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y176;K"mlst" +C;X2;K"Maul of Strength" +C;X3;K"MaulofStrength" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIs1" +C;X9;K"AIs1" +C;X10;K0 +C;X11;K"-" +C;X12;K29 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y177;K"oslo" +C;X2;K"Orb of Slow" +C;X3;K"OrbofSlow" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIsb" +C;X9;K"AIsb" +C;X10;K0 +C;X11;K"-" +C;X12;K98 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K550 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y178;K"sbok" +C;X2;K"Spell Book" +C;X3;K"SpellBook" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"Aspb" +C;X9;K"Aspb" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K440 +C;X24;K325 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y179;K"sksh" +C;X2;K"Skull Shield" +C;X3;K"SkullShield" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIs1" +C;X9;K"AIs1" +C;X10;K0 +C;X11;K"-" +C;X12;K26 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y180;K"sprn" +C;X2;K"Spider Ring" +C;X3;K"SpiderRing" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIa1" +C;X9;K"AIa1" +C;X10;K0 +C;X11;K"-" +C;X12;K19 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y181;K"tmmt" +C;X2;K"Totem of Might" +C;X3;K"TotemofMight" +C;X4;K0 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIs1" +C;X9;K"AIs1" +C;X10;K0 +C;X11;K"-" +C;X12;K28 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y182;K"vddl" +C;X2;K"Voodoo Doll" +C;X3;K"VoodooDoll" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIi1" +C;X9;K"AIi1" +C;X10;K0 +C;X11;K"-" +C;X12;K16 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y183;K"spre" +C;X2;K"Staff of Preservation" +C;X3;K"StaffofPreservation" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"ANpr" +C;X9;K"ANpr" +C;X10;K0 +C;X11;K"-" +C;X12;K4 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y184;K"sfog" +C;X2;K"Horn of the Clouds" +C;X3;K"HornoftheClouds" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfg" +C;X9;K"Aclf" +C;X10;K0 +C;X11;K"-" +C;X12;K13 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y185;K"sor1" +C;X2;K"Shadow Orb +1" +C;X3;K"ShadowOrb1" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItg,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K9 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y186;K"sor2" +C;X2;K"Shadow Orb +2" +C;X3;K"ShadowOrb2" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIth,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K15 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y187;K"sor3" +C;X2;K"Shadow Orb +3" +C;X3;K"ShadowOrb3" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIat,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K17 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y188;K"sor4" +C;X2;K"Shadow Orb +4" +C;X3;K"ShadowOrb4" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIti,AId1,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K51 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y189;K"sor5" +C;X2;K"Shadow Orb +5" +C;X3;K"ShadowOrb5" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItj,AId1,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K54 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y190;K"sor6" +C;X2;K"Shadow Orb +6" +C;X3;K"ShadowOrb6" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIt6,AId1,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K59 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y191;K"sor7" +C;X2;K"Shadow Orb +7" +C;X3;K"ShadowOrb7" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItk,AId2,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K88 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K550 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y192;K"sor8" +C;X2;K"Shadow Orb +8" +C;X3;K"ShadowOrb8" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItl,AId2,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K100 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K700 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y193;K"sor9" +C;X2;K"Shadow Orb +9" +C;X3;K"ShadowOrb9" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIt9,AId2,Arel,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K101 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K900 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y194;K"sora" +C;X2;K"Shadow Orb +10" +C;X3;K"ShadowOrb10" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItn,AId3,Arel,AIdn" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K115 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y195;K"fwss" +C;X2;K"Frostwyrm Skull Shield" +C;X3;K"FrostwyrmSkullShield" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId2,AIsr" +C;X9;K"AIsr" +C;X10;K0 +C;X11;K"-" +C;X12;K127 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K750 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y196;K"shtm" +C;X2;K"Shamanic Totem" +C;X3;K"ShamanicTotem" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIps" +C;X9;K"Aprg" +C;X10;K0 +C;X11;K"-" +C;X12;K37 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y197;K"esaz" +C;X2;K"Essence of Aszune" +C;X3;K"EssenceofAszune" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIh3" +C;X9;K"AIhe" +C;X10;K0 +C;X11;K"-" +C;X12;K89 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y198;K"btst" +C;X2;K"orcish battle standard" +C;X3;K"orcishbattlestandard" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfx" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\BattleStandard\BattleStandard.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y199;K"gold" +C;X2;K"Chest of Gold" +C;X3;K"ChestofGold" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIgo" +C;X9;K"AIgo" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\PotofGold\PotofGold.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y200;K"lmbr" +C;X2;K"Bundle of Lumber" +C;X3;K"BundleofLumber" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIlu" +C;X9;K"AIlu" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K3 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\BundleofLumber\BundleofLumber.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y201;K"gfor" +C;X2;K"Glyph of Fortification" +C;X3;K"GlyphofFortification" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIgf" +C;X9;K"AIgl" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\Glyph\Glyph.mdl" +C;X30;K1 +C;X31;K120 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y202;K"guvi" +C;X2;K"Glyph of UltraVision" +C;X3;K"GlyphofUltraVision" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIgu" +C;X9;K"AIgl" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K125 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\Glyph\Glyph.mdl" +C;X30;K1 +C;X31;K120 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y203;K"rspl" +C;X2;K"Rune of Spirit Link" +C;X3;K"RuneofSpiritLink" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"Aspp" +C;X9;K"Aspp" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y204;K"rre1" +C;X2;K"Rune of Lesser Resurrection" +C;X3;K"RuneofLesserResurrection" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APrl" +C;X9;K"AIrs" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y205;K"rre2" +C;X2;K"Rune of Greater Resurrection" +C;X3;K"RuneofGreaterResurrection" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APrr" +C;X9;K"AIrs" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y206;K"gomn" +C;X2;K"Glyph of Omniscience" +C;X3;K"GlyphofOmniscience" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrv" +C;X9;K"AIrv" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K240 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\Glyph\Glyph.mdl" +C;X30;K1 +C;X31;K120 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y207;K"rsps" +C;X2;K"Rune of Shielding" +C;X3;K"RuneofShielding" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"ANse" +C;X9;K"ANse" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y208;K"rspd" +C;X2;K"Rune of Speed" +C;X3;K"RuneofSpeed" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APsa" +C;X9;K"AIsp" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y209;K"rman" +C;X2;K"Rune of Mana(Lesser)" +C;X3;K"RuneofManaLesser" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APmr" +C;X9;K"AImr" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y210;K"rma2" +C;X2;K"Rune of Mana(Greater)" +C;X3;K"RuneofManaGreater" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APmg" +C;X9;K"AImr" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y211;K"rres" +C;X2;K"Rune of Restoration" +C;X3;K"RuneofRestoration" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APra" +C;X9;K"AIra" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y212;K"rreb" +C;X2;K"Rune of Rebirth" +C;X3;K"RuneofRebirth" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrb" +C;X9;K"AIrb" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y213;K"rhe1" +C;X2;K"Rune of Lesser Healing" +C;X3;K"RuneofLesserHealing" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APh1" +C;X9;K"AIha" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y214;K"rhe2" +C;X2;K"Rune of Healing" +C;X3;K"RuneofHealing" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APh2" +C;X9;K"AIha" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y215;K"rhe3" +C;X2;K"Rune of Greater Healing" +C;X3;K"RuneofGreaterHealing" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APh3" +C;X9;K"AIha" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K90 +C;X23;K0 +C;X24;K300 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y216;K"rdis" +C;X2;K"Rune of Dispel Magic" +C;X3;K"RuneofDispelMagic" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APdi" +C;X9;K"APdi" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y217;K"rwat" +C;X2;K"Rune of the Watcher" +C;X3;K"RuneoftheWatcher" +C;X4;K1 +C;X5;K"PowerUp" +C;X6;K0 +C;X7;K0 +C;X8;K"APwt" +C;X9;K"APwt" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\runicobject\runicobject.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y218;K"sclp" +C;X2;K"secret level powerup" +C;X3;K"secretlevelpowerup" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K1 +C;X12;K200 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K60 +C;X23;K0 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\QuestionMark\QuestionMark.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y219;K"pclr" +C;X2;K"Clarity Potion" +C;X3;K"ClarityPotion" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpr" +C;X9;K"AIpr" +C;X10;K0 +C;X11;K1 +C;X12;K67 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K45 +C;X23;K0 +C;X24;K160 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y220;K"plcl" +C;X2;K"Lesser Clarity Potion" +C;X3;K"LesserClarityPotion" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpl" +C;X9;K"AIpr" +C;X10;K0 +C;X11;K1 +C;X12;K57 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K30 +C;X23;K0 +C;X24;K70 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y221;K"silk" +C;X2;K"Spider Silk" +C;X3;K"SpiderSilk" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIwb" +C;X9;K"AIwb" +C;X10;K0 +C;X11;K4 +C;X12;K81 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K60 +C;X23;K0 +C;X24;K50 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y222;K"vamp" +C;X2;K"Potion of Vampirism" +C;X3;K"PotionofVampirism" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpv" +C;X9;K"AIpv" +C;X10;K0 +C;X11;K1 +C;X12;K39 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K45 +C;X23;K0 +C;X24;K75 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y223;K"sreg" +C;X2;K"Scroll of Regeneration" +C;X3;K"ScrollofRegeneration" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIsl" +C;X9;K"AIsl" +C;X10;K0 +C;X11;K1 +C;X12;K70 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K2 +C;X22;K90 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y224;K"ssan" +C;X2;K"Staff of Sanctuary" +C;X3;K"StaffofSanctuary" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"ANsa" +C;X9;K"ANsa" +C;X10;K0 +C;X11;K"-" +C;X12;K3 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K1 +C;X1;Y225;K"tcas" +C;X2;K"Tiny Castle" +C;X3;K"TinyCastle" +C;X4;K1 +C;X5;K"Purchasable" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbl" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K800 +C;X25;K300 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y226;K"tbsm" +C;X2;K"Tiny Blacksmith" +C;X3;K"TinyBlacksmith" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbb" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K50 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y227;K"tfar" +C;X2;K"Tiny Farm" +C;X3;K"TinyFarm" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbf" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K75 +C;X25;K20 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y228;K"tlum" +C;X2;K"Tiny Lumber Mill" +C;X3;K"TinyLumberMill" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbr" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y229;K"tbar" +C;X2;K"Tiny Barracks" +C;X3;K"TinyBarracks" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbs" +C;X9;K"AIbl" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K160 +C;X25;K50 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y230;K"tbak" +C;X2;K"Tiny Altar of Kings" +C;X3;K"TinyAltarofKings" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIbh" +C;X9;K"AIbh" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K180 +C;X25;K50 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y231;K"gldo" +C;X2;K"Orb of Kil'jaeden" +C;X3;K"OrbofKil'jaeden" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIgd" +C;X9;K"AIfb" +C;X10;K0 +C;X11;K"-" +C;X12;K95 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y232;K"wtlg" +C;X2;K"Wirt's Leg" +C;X3;K"Wirt'sLeg" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y233;K"wolg" +C;X2;K"Wirt's Other Leg" +C;X3;K"Wirt'sOtherLeg" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y234;K"mgtk" +C;X2;K"Magtheridon's Keys" +C;X3;K"Magtheridon'sKeys" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y235;K"stre" +C;X2;K"Staff of Reanimation" +C;X3;K"StaffofReanimation" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AInd" +C;X9;K"AUan" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y236;K"horl" +C;X2;K"Holy Relic" +C;X3;K"HolyRelic" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIae" +C;X9;K"AOae" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K950 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y237;K"hbth" +C;X2;K"Helm of Battlethirst" +C;X3;K"HelmofBattlethirst" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIxk,AIa4,AIs4" +C;X9;K"Absk" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K4200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y238;K"blba" +C;X2;K"Bladebane Armor" +C;X3;K"BladebaneArmor" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId7,AIad" +C;X9;K"AHad" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y239;K"rugt" +C;X2;K"Runed Gauntlets" +C;X3;K"RunedGauntlets" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId3,AIs3" +C;X9;K"AIab" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K725 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y240;K"frhg" +C;X2;K"Firehand Gauntlets" +C;X3;K"FirehandGauntlets" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId5,AIs2" +C;X9;K"AIas" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y241;K"gvsm" +C;X2;K"Gloves of Spell Mastery" +C;X3;K"GlovesofSpellMastery" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIcm,AIi6" +C;X9;K"Acmg" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y242;K"crdt" +C;X2;K"Crown of the Deathlord" +C;X3;K"CrownoftheDeathlord" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfz,AIlf,AImz" +C;X9;K"ANfd" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K6400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y243;K"arsc" +C;X2;K"Arcane Scroll" +C;X3;K"ArcaneScroll" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIdb" +C;X9;K"AIdb" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y244;K"scul" +C;X2;K"Scroll of the Unholy Legion" +C;X3;K"ScrolloftheUnholyLegion" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIan" +C;X9;K"AIan" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K950 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y245;K"tmsc" +C;X2;K"Tome of Sacrifices" +C;X3;K"TomeofSacrifices" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIdp,AImz" +C;X9;K"AUdp" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1250 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y246;K"dtsb" +C;X2;K"Drek'thar's Spellbook" +C;X3;K"Drek'thar'sSpellbook" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItp,AImv,AIsr" +C;X9;K"AItp" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y247;K"grsl" +C;X2;K"Grimoire of Souls" +C;X3;K"GrimoireofSouls" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpx" +C;X9;K"AImi" +C;X10;K0 +C;X11;K10 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y248;K"arsh" +C;X2;K"Arcanite Shield" +C;X3;K"ArcaniteShield" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId5,AIdd" +C;X9;K"Adef" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y249;K"shdt" +C;X2;K"Shield of the Deathlord" +C;X3;K"ShieldoftheDeathlord" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIlf,AImz,AId0,AIcf" +C;X9;K"AIcf" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K9000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y250;K"shhn" +C;X2;K"Shield of Honor" +C;X3;K"ShieldofHonor" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId8,AIcd" +C;X9;K"AOac" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3350 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y251;K"shen" +C;X2;K"Enchanted Shield" +C;X3;K"EnchantedShield" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AId2,AIlz" +C;X9;K"AIml" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K650 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y252;K"thdm" +C;X2;K"Thunderlizard Diamond" +C;X3;K"ThunderlizardDiamond" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIcl" +C;X9;K"AOcl" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1190 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y253;K"stpg" +C;X2;K"Stuffed Penguin" +C;X3;K"StuffedPenguin" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIpz" +C;X9;K"AIha" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Units\Critters\Penguin\Penguin.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y254;K"shrs" +C;X2;K"Shimmerglaze Roast" +C;X3;K"ShimmerglazeRoast" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIhx" +C;X9;K"AIhe" +C;X10;K0 +C;X11;K6 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K150 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y255;K"bfhr" +C;X2;K"Bloodfeather's Heart" +C;X3;K"Bloodfeather'sHeart" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIaz" +C;X9;K"AIab" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K2500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y256;K"cosl" +C;X2;K"Celestial Orb of Souls" +C;X3;K"CelestialOrbofSouls" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrx" +C;X9;K"AHre" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K10000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y257;K"shcw" +C;X2;K"Shaman Claws" +C;X3;K"ShamanClaws" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIlx" +C;X9;K"AIll" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K950 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y258;K"srbd" +C;X2;K"Searing Blade" +C;X3;K"SearingBlade" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIfw,AIcs" +C;X9;K"AOcr" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1650 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y259;K"frgd" +C;X2;K"Frostguard" +C;X3;K"Frostguard" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIft,AId5" +C;X9;K"AIob" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1400 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y260;K"envl" +C;X2;K"Enchanted Vial" +C;X3;K"EnchantedVial" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIp3" +C;X9;K"AIrg" +C;X10;K0 +C;X11;K5 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K450 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y261;K"rump" +C;X2;K"Rusty Mining Pick" +C;X3;K"RustyMiningPick" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItg,AIbx" +C;X9;K"AHbh" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K100 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y262;K"mort" +C;X2;K"Mogrin's Report" +C;X3;K"Mogrin'sReport" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y263;K"srtl" +C;X2;K"Serathil" +C;X3;K"Serathil" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIsx,AItf" +C;X9;K"AIas" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K5500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y264;K"stwa" +C;X2;K"Sturdy War Axe" +C;X3;K"SturdyWarAxe" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItj" +C;X9;K"AIat" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K600 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y265;K"klmm" +C;X2;K"Killmaim" +C;X3;K"Killmaim" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AItx,AIva" +C;X9;K"AIva" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K7500 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y266;K"rots" +C;X2;K"Rod of the Sea" +C;X3;K"RodoftheSea" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIwm,AIx2" +C;X9;K"ANwm" +C;X10;K0 +C;X11;K5 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y267;K"axas" +C;X2;K"Ancestral Staff" +C;X3;K"AncestralStaff" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIsh,AIae" +C;X9;K"AOsf" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K3000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y268;K"mnsf" +C;X2;K"Mindstaff" +C;X3;K"Mindstaff" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AI2m,AIba" +C;X9;K"AHab" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K1800 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y269;K"schl" +C;X2;K"Scepter of Healing" +C;X3;K"ScepterofHealing" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIhl,AIgx" +C;X9;K"AHhb" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K4200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y270;K"asbl" +C;X2;K"Assassin's Blade" +C;X3;K"Assassin'sBlade" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIsz,AItj" +C;X9;K"Aspo" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K2000 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y271;K"kgal" +C;X2;K"Keg of Ale" +C;X3;K"KegofAle" +C;X4;K1 +C;X5;K"Miscellaneous" +C;X6;K0 +C;X7;K0 +C;X8;K"AIrm,Arel" +C;X9;K"Arel" +C;X10;K0 +C;X11;K"-" +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1 +C;X22;K180 +C;X23;K0 +C;X24;K850 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\TreasureChest\treasurechest.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y272;K"dphe" +C;X2;K"Thunder Hawk Egg" +C;X3;K"ThunderHawkEgg" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Units\Human\Phoenix\PhoenixEgg.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K100 +C;X33;K100 +C;X34;K255 +C;X35;K0 +C;X1;Y273;K"dkfw" +C;X2;K"Keg of Thunderwater" +C;X3;K"KegofThunderwater" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Buildings\Other\BarrelsUnit0\BarrelsUnit0.mdl" +C;X30;K1 +C;X31;K80 +C;X32;K255 +C;X33;K255 +C;X34;K255 +C;X35;K0 +C;X1;Y274;K"dthb" +C;X2;K"Thunderbloom Bulb" +C;X3;K"ThunderbloomBulb" +C;X4;K1 +C;X5;K"Campaign" +C;X6;K0 +C;X7;K0 +C;X8;K"_" +C;X10;K0 +C;X11;K"-" +C;X12;K200 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X21;K1 +C;X22;K120 +C;X23;K0 +C;X24;K200 +C;X25;K0 +C;X26;K75 +C;X27;K0 +C;X28;K"Wood" +C;X29;K"Objects\InventoryItems\Shimmerweed\Shimmerweed.mdl" +C;X30;K1 +C;X31;K0 +C;X32;K255 +C;X33;K140 +C;X34;K140 +C;X35;K0 +E diff --git a/share/mpq/units/units/itemfunc.txt b/share/mpq/units/units/itemfunc.txt new file mode 100644 index 0000000..c6952fe --- /dev/null +++ b/share/mpq/units/units/itemfunc.txt @@ -0,0 +1,1071 @@ +//townhall tier 1 dependency +[TWN1] +DependencyOr=htow,ogre,etol,unpl +XPFactor=0 + +//townhall teir 2 dependency +[TWN2] +DependencyOr=hkee,ostr,etoa,unp1 +XPFactor=0 + +//townhall teir 3 dependency +[TWN3] +DependencyOr=hcas,ofrt,etoe,unp2 +XPFactor=0 + +//altar dependency +[TALT] +DependencyOr=halt,oalt,eate,uaod + + + +[amrc] +Art=ReplaceableTextures\CommandButtons\BTNAmulet.blp + +[ankh] +Art=ReplaceableTextures\CommandButtons\BTNAnkh.blp + +[belv] +Art=ReplaceableTextures\CommandButtons\BTNBoots.blp + +[bgst] +Art=ReplaceableTextures\CommandButtons\BTNBelt.blp + +[bspd] +Art=ReplaceableTextures\CommandButtons\BTNBootsOfSpeed.blp + +[ccmd] +Art=ReplaceableTextures\CommandButtons\BTNScepterOfMastery.blp + +[ciri] +Art=ReplaceableTextures\CommandButtons\BTNRobeOfTheMagi.blp + +[ckng] +Art=ReplaceableTextures\CommandButtons\BTNHelmutPurple.blp + +[clsd] +Art=ReplaceableTextures\CommandButtons\BTNCloak.blp + +[crys] +Art=ReplaceableTextures\CommandButtons\BTNCrystalBall.blp + +[desc] +Art=ReplaceableTextures\CommandButtons\BTNDaggerOfEscape.blp + +[flag] +Art=ReplaceableTextures\CommandButtons\BTNHumanCaptureFlag.blp + +[nflg] +Art=ReplaceableTextures\CommandButtons\BTNNightElfCaptureFlag.blp + +[oflg] +Art=ReplaceableTextures\CommandButtons\BTNOrcCaptureFlag.blp + +[uflg] +Art=ReplaceableTextures\CommandButtons\BTNUndeadCaptureFlag.blp + +[gemt] +Art=ReplaceableTextures\CommandButtons\BTNGem.blp + +[gobm] +Art=ReplaceableTextures\CommandButtons\BTNGoblinLandMine.blp + +[gsou] +Art=ReplaceableTextures\CommandButtons\BTNSoulGem.blp + +[soul] +Art=ReplaceableTextures\CommandButtons\BTNUsedSoulGem.blp + +[mdpb] +Art=ReplaceableTextures\CommandButtons\BTNPebble.blp + +// slippers of agility +2 +[rag1] +Art=ReplaceableTextures\CommandButtons\BTNSlippersOfAgility.blp + +// claws of attack +3 +[rat3] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +[rin1] +Art=ReplaceableTextures\CommandButtons\BTNMantleOfIntelligence.blp + +// ring of protection +2 +[rde1] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +// ring of protection +3 +[rde2] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +// ring of protection +4 +[rde3] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +[rhth] +Art=ReplaceableTextures\CommandButtons\BTNPeriapt1.blp + +[rst1] +Art=ReplaceableTextures\CommandButtons\BTNGauntletsOfOgrePower.blp + +//orb of darkness +[odef] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[ofir] +Buttonpos=0,2 +Requires=hcas +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFire.blp + +[ofro] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfFrost.blp + +[olig] +Buttonpos=2,2 +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNOrbOfLightning.blp + +[oli2] +Buttonpos=0,2 +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNOrbOfLightning.blp + +[oven] +Buttonpos=0,2 +Requires=etoe +Art=ReplaceableTextures\CommandButtons\BTNOrbOfVenom.blp + +[ocor] +Buttonpos=0,2 +Requires=unp2 +Art=ReplaceableTextures\CommandButtons\BTNOrbOfCorruption.blp + +// potion of divinity +[pdiv] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfDivinity.blp + +[phea] +Requires=TWN2 +Buttonpos=0,1 +Art=ReplaceableTextures\CommandButtons\BTNPotionGreenSmall.blp + +[pghe] +Art=ReplaceableTextures\CommandButtons\BTNPotionGreen.blp + +[pinv] +Art=ReplaceableTextures\CommandButtons\BTNLesserInvisibility.blp + +[pgin] +Art=ReplaceableTextures\CommandButtons\BTNGreaterInvisibility.blp + +[pman] +Requires=TWN2 +Buttonpos=1,1 +Art=ReplaceableTextures\CommandButtons\BTNPotionBlueSmall.blp + +[pgma] +Art=ReplaceableTextures\CommandButtons\BTNPotionBlueBig.blp + +[pnvu] +Art=ReplaceableTextures\CommandButtons\BTNGreaterInvulneralbility.blp + +[pnvl] +Buttonpos=2,2 +Art=ReplaceableTextures\CommandButtons\BTNLesserInvulneralbility.blp + +[pres] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfRestoration.blp + +//potion of speed +[pspd] +Art=ReplaceableTextures\CommandButtons\BTNPotionRed.blp + +[rlif] +Art=ReplaceableTextures\CommandButtons\BTNRingSkull.blp + +[rwiz] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNSobiMask.blp + +[shea] +Requires=unp2 +Buttonpos=1,2 +Art=ReplaceableTextures\CommandButtons\BTNScrollOfTownPortal.blp + +[sman] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfProtection.blp + +[spro] +Art=ReplaceableTextures\CommandButtons\BTNScroll.blp + +[sres] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHealing.blp + +// Staff of Silence +[ssil] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfSilence.blp + +[stwp] +Requires=TWN2 +Buttonpos=2,1 +Art=ReplaceableTextures\CommandButtons\BTNScrollUber.blp + +[tels] +Art=ReplaceableTextures\CommandButtons\BTNTelescope.blp + +[tdex] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +[texp] +Art=ReplaceableTextures\CommandButtons\BTNTomeBrown.blp + +[tint] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +[tkno] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp + +[tstr] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +[ward] +Art=ReplaceableTextures\CommandButtons\BTNDrum.blp + +[will] +Art=ReplaceableTextures\CommandButtons\BTNWand.blp + +[wneg] +ButtonPos=3,1 +Requires=unp1 +Art=ReplaceableTextures\CommandButtons\BTNWandSkull.blp + +[fgrd] +Art=ReplaceableTextures\CommandButtons\BTNRedDragon.blp + +[fgrg] +Art=ReplaceableTextures\CommandButtons\BTNRockGolem.blp + +[fgdg] +Art=ReplaceableTextures\CommandButtons\BTNDoomGuard.blp + +[fgfh] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp + +[fgsk] +Art=ReplaceableTextures\CommandButtons\BTNBookOfTheDead.blp + +[ktrm] +Art=ReplaceableTextures\CommandButtons\BTNUrnOfKelThuzad.blp + +[sehr] +Art=ReplaceableTextures\CommandButtons\BTNHeartOfSearinox.blp + +[azhr] +Art=ReplaceableTextures\CommandButtons\BTNHeartOfAszune.blp + +[bzbe] +Art=ReplaceableTextures\CommandButtons\BTNVialEmpty.blp + +[bzbf] +Art=ReplaceableTextures\CommandButtons\BTNVialFull.blp + +[cnhn] +Art=ReplaceableTextures\CommandButtons\BTNHornOfCenarius.blp + +[glsk] +Art=ReplaceableTextures\CommandButtons\BTNGuldanSkull.blp + +[engs] +Art=ReplaceableTextures\CommandButtons\BTNEnchantedGemstone.blp + +[k3m1] +Art=ReplaceableTextures\CommandButtons\BTN3M1.blp + +[k3m2] +Art=ReplaceableTextures\CommandButtons\BTN3M2.blp + +[k3m3] +Art=ReplaceableTextures\CommandButtons\BTN3M3.blp + +[modt] +Art=ReplaceableTextures\CommandButtons\BTNMaskOfDeath.blp + +// scroll of animate dead +[sand] +Art=ReplaceableTextures\CommandButtons\BTNSnazzyScrollPurple.blp + +// scroll of resurrection +[srrc] +Art=ReplaceableTextures\CommandButtons\BTNSnazzyScroll.blp + +// scroll of the beast +[sror] +Art=ReplaceableTextures\CommandButtons\BTNSnazzyScrollGreen.blp + +[infs] +Art=ReplaceableTextures\CommandButtons\BTNInfernalStone.blp + +// Ice Shard +[shar] +Art=ReplaceableTextures\CommandButtons\BTNIceShard.blp + +// Amulet of the Wild +[wild] +Art=ReplaceableTextures\CommandButtons\BTNAmuletOftheWild.blp + +[wswd] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp + +[whwd] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp + +[wlsd] +Art=ReplaceableTextures\CommandButtons\BTNStarWand.blp + +[wcyc] +Art=ReplaceableTextures\CommandButtons\BTNWandOfCyclone.blp + +//wand of necromancy +[rnec] +Art=ReplaceableTextures\CommandButtons\BTNRodOfNecromancy.blp + +// antibody potion +[pams] +Requires=etoe +Buttonpos=1,2 +Art=ReplaceableTextures\CommandButtons\BTNSnazzyPotion.blp + +// cloak of flames +[clfm] +Art=ReplaceableTextures\CommandButtons\BTNCloakOfFlames.blp + +// talisman of evasion +[evtl] +Art=ReplaceableTextures\CommandButtons\BTNTalisman.blp + +[nspi] +Art=ReplaceableTextures\CommandButtons\BTNNecklace.blp + +// lion horn of +[lhst] +Art=ReplaceableTextures\CommandButtons\BTNLionHorn.blp + +// khadgar's pipe of insight +[kpin] +Art=ReplaceableTextures\CommandButtons\BTNPipeOfInsight.blp + +// scourge bone chimes +[sbch] +Art=ReplaceableTextures\CommandButtons\BTNBoneChimes.blp + +// alleria's flute of accuracy +[afac] +Art=ReplaceableTextures\CommandButtons\BTNAlleriaFlute.blp + +// ancient janggo of endurance +[ajen] +Art=ReplaceableTextures\CommandButtons\BTNJanggo.blp + +// legion doom-horn +[lgdh] +Art=ReplaceableTextures\CommandButtons\BTNHornOfDoom.blp + +// hood of cunning +[hcun] +Art=ReplaceableTextures\CommandButtons\BTNHoodOfCunning.blp + +// medallion of courage +[mcou] +Art=ReplaceableTextures\CommandButtons\BTNMedalionOfCourage.blp + +// helm of valor +[hval] +Art=ReplaceableTextures\CommandButtons\BTNHelmOfValor.blp + +// circlet of nobility +[cnob] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNCirclet.blp + +// periapt of vitality +[prvt] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNPeriapt.blp + +// tome of greater experience +[tgxp] +Art=ReplaceableTextures\CommandButtons\BTNManual3.blp + +// mana stone +[mnst] +Art=ReplaceableTextures\CommandButtons\BTNManaStone.blp + +// health stone +[hlst] +Art=ReplaceableTextures\CommandButtons\BTNHealthStone.blp + +[tpow] +Art=ReplaceableTextures\CommandButtons\BTNTomeRed.blp + +[tst2] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +[tin2] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +[tdx2] +Art=ReplaceableTextures\CommandButtons\BTNTome.blp + +// ring of protection +1 +[rde0] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +// ring of protection +5 +[rde4] +Art=ReplaceableTextures\CommandButtons\BTNRingGreen.blp + +// claws of attack +6 +[rat6] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +// claws of attack +9 +[rat9] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +// claws of attack +12 +[ratc] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +// claws of attack +15 +[ratf] +Art=ReplaceableTextures\CommandButtons\BTNClawsOfAttack.blp + +// manual of health +[manh] +Art=ReplaceableTextures\CommandButtons\BTNManual.blp + +// pendant of mana +[pmna] +Art=ReplaceableTextures\CommandButtons\BTNPendantOfMana.blp + +// pendant of energy +[penr] +Art=ReplaceableTextures\CommandButtons\BTNPendantOfEnergy.blp + +// gloves of celerity +[gcel] +Art=ReplaceableTextures\CommandButtons\BTNGlove.blp + +// the ledger, 'null' quest item +[ledg] +Art=ReplaceableTextures\CommandButtons\BTNSorceressMaster.blp + +// Talisman of the Wild, quest reward +[totw] +Art=ReplaceableTextures\CommandButtons\BTNStone.blp + +[kybl] +Art=ReplaceableTextures\CommandButtons\BTNBloodKey.blp + +[kygh] +Art=ReplaceableTextures\CommandButtons\BTNGhostKey.blp + +[kysn] +Art=ReplaceableTextures\CommandButtons\BTNSunKey.blp + +[kymn] +Art=ReplaceableTextures\CommandButtons\BTNMoonKey.blp + +[phlt] +Art=ReplaceableTextures\CommandButtons\BTNUndeadShrine.blp + +[gopr] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp + +[ches] +Art=ReplaceableTextures\CommandButtons\BTNCheese.blp + +// maul of strength +[mlst] +Art=ReplaceableTextures\CommandButtons\BTNHammer.blp + +// Ring of Superiority +[rnsp] +Art=ReplaceableTextures\CommandButtons\BTNGoldRing.blp + +// Bracer of Agility +[brag] +Art=ReplaceableTextures\CommandButtons\BTNRingPurple.blp + +// Skull Shield +[sksh] +Art=ReplaceableTextures\CommandButtons\BTNGrimWard.blp + +// Voodoo Doll +[vddl] +Art=ReplaceableTextures\CommandButtons\BTNShadowPact.blp + +// Spider Ring +[sprn] +Art=ReplaceableTextures\CommandButtons\BTNRingVioletSpider.blp + +// Totem of Might +[tmmt] +Art=ReplaceableTextures\CommandButtons\BTNEntrapmentWard.blp + +// Ancient Figurine +[anfg] +Art=ReplaceableTextures\CommandButtons\BTNClayFigurine.blp + +// Lion's Ring +[lnrn] +Art=ReplaceableTextures\CommandButtons\BTNRingLionHead.blp + +// Ironwood Branch +[iwbr] +Art=ReplaceableTextures\CommandButtons\BTNNatureTouchGrow.blp + +// Jade Ring +[jdrn] +Art=ReplaceableTextures\CommandButtons\BTNRingJadeFalcon.blp + +// Druid Pouch +[drph] +Art=ReplaceableTextures\CommandButtons\BTNDust.blp + +// Healing Salve +[hslv] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNHealingSalve.blp + +// Clarity Potion +[pclr] +Buttonpos=1,2 +Requires=etoe +Art=ReplaceableTextures\CommandButtons\BTNPotionOfClarity.blp + +// Lesser Clarity Potion +[plcl] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNLesserClarityPotion.blp + +// Minor Rejuvenation Potion +[rej1] +Art=ReplaceableTextures\CommandButtons\BTNMinorRejuvPotion.blp + +// Lesser Rejuvenation Potion +[rej2] +Art=ReplaceableTextures\CommandButtons\BTNLesserRejuvPotion.blp + +// Rejuvenation Potion +[rej3] +Art=ReplaceableTextures\CommandButtons\BTNRejuvPotion.blp + +// Greater Rejuvenation Potion +[rej4] +Art=ReplaceableTextures\CommandButtons\BTNGreaterRejuvPotion.blp + +// Lesser Rejuvenation Scroll +[rej5] +Art=ReplaceableTextures\CommandButtons\BTNLesserRejuvScroll.blp + +// Greater Rejuvenation Scroll +[rej6] +Art=ReplaceableTextures\CommandButtons\BTNGreaterRejuvScroll.blp + +// Scroll of Regeneration +[sreg] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNScrollOfRegenerationGreen.blp + +// Chest of Gold +[gold] +Art=ReplaceableTextures\CommandButtons\BTNChestOfGold.blp + +// Bundle of Lumber +[lmbr] +Art=ReplaceableTextures\CommandButtons\BTNBundleOfLumber.blp + +// Flare Gun +[fgun] +Art=ReplaceableTextures\CommandButtons\BTNFlare.blp + +// Potion of Omniscience +[pomn] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfOmniscience.blp + +// Wand of Neutralization +[wneu] +Art=ReplaceableTextures\CommandButtons\BTNWandOfNeutralization.blp + +// Spider Silk +[silk] +Art=ReplaceableTextures\CommandButtons\BTNSpiderSilkBroach.blp + +// Monster Lure +[lure] +Art=ReplaceableTextures\CommandButtons\BTNMonsterLure.blp + +//Horn of Fog +[sfog] +Art=ReplaceableTextures\CommandButtons\BTNHornOfFog.blp + + +// Sacrificial Skull +[skul] +ButtonPos=2,0 +Requires=ugrv +Art=ReplaceableTextures\CommandButtons\BTNSacrificialSkull.blp + +// Moonstone +[moon] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNMoonStone.blp + +// Vampiric Potion +[vamp] +Art=ReplaceableTextures\CommandButtons\BTNPotionOfVampirism.blp + +// Runed Bracers +[brac] +Art=ReplaceableTextures\CommandButtons\BTNRunedBracers.blp + +// Wand of Mana Steal +[woms] +Art=ReplaceableTextures\CommandButtons\BTNWandOfManaSteal.blp + +// Tiny Castle +[tcas] +Requires=hcas +Art=ReplaceableTextures\CommandButtons\BTNTinyCastle.blp + +// Tiny Scout Tower +[tsct] +Buttonpos=3,1 +Requires=hkee +Art=ReplaceableTextures\CommandButtons\BTNHumanWatchTower.blp + +// Tiny Great Hall +[tgrh] +Buttonpos=1,2 +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNGreathall.blp + +// Wand of Shadowsight +[wshs] +Art=ReplaceableTextures\CommandButtons\BTNWandOfShadowSight.blp + +// Tome of Retraining +[tret] +Buttonpos=0,2 +Art=ReplaceableTextures\CommandButtons\BTNTomeOfRetraining.blp + +// Staff of Teleportation +[stel] +Buttonpos=3,1 +Art=ReplaceableTextures\CommandButtons\BTNStaffOfTeleportation.blp + +// Staff of Preservation +[spre] +Buttonpos=3,1 +Requires=etoa +Art=ReplaceableTextures\CommandButtons\BTNStaffOfPreservation.blp + +// Mechanical Critter +[mcri] +ButtonPos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNMechanicalCritter.blp + +// Amulet of Spell Shield +[spsh] +Art=ReplaceableTextures\CommandButtons\BTNSpellShieldAmulet.blp + +// Spell Book +[sbok] +Art=ReplaceableTextures\CommandButtons\BTNSpellBookBLS.blp + +// Staff of Sanctuary +[ssan] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfSanctuary.blp +Requires=hcas +Buttonpos=1,2 + +// Scroll of Speed +[shas] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNScrollOfHaste.blp + +// Dust of Appearance +[dust] +Art=ReplaceableTextures\CommandButtons\BTNDustOfAppearance.blp +Buttonpos=3,0 + +// Orb of Slow +[oslo] +Art=ReplaceableTextures\CommandButtons\BTNOrbofSlowness.blp + +// staff of negation +[sneg] +Art=ReplaceableTextures\CommandButtons\BTNStaffOfNegation.blp + +// Rune of Rebirth +[rreb] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +// Glyph of Ultravision +[guvi] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp + +// Diamond of Summoning +[dsum] +Art=ReplaceableTextures\CommandButtons\BTNDarkSummoning.blp + +//startvarious runes and glyphs +//glyph of omniscience +[gomn] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp + +//glyph of foritfication +[gfor] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp + +//rune of spirit link +[rspl] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of spell shield +[rsps] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of resurrection, lesser +[rre1] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of resurrection, greater +[rre2] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of speed +[rspd] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of mana +[rman] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of mana greater +[rma2] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of restoration +[rres] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of heal lesser +[rhe1] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of heal +[rhe2] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of heal greater +[rhe3] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of dispelling +[rdis] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//rune of the watcher +[rwat] +Art=ReplaceableTextures\CommandButtons\BTNRune.blp + +//END various runes and glyphs + +//#RESTNOBETA +//shadow orbs, campaign items +[sor1] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor2] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor3] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor4] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor5] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor6] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor7] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor8] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +[sor9] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +// shadow orb 10 +[sora] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +// shadow orb fragment +[sorf] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDarkness.blp + +// frostwyrm skull shield +[fwss] +Art=ReplaceableTextures\CommandButtons\BTNGrimWard.blp + +// gem fragment +[gmfr] +Art=ReplaceableTextures\CommandButtons\BTNGem.blp + +// archmagi rings +[ram1] +Art=ReplaceableTextures\CommandButtons\BTNRingJadeFalcon.blp + +[ram2] +Art=ReplaceableTextures\CommandButtons\BTNRingJadeFalcon.blp + +[ram3] +Art=ReplaceableTextures\CommandButtons\BTNRingJadeFalcon.blp + +[ram4] +Art=ReplaceableTextures\CommandButtons\BTNRingJadeFalcon.blp + +// shamanic totem +[shtm] +Art=ReplaceableTextures\CommandButtons\BTNEntrapmentWard.blp + +// essence of aszune +[esaz] +Art=ReplaceableTextures\CommandButtons\BTNHeartOfAszune.blp + +[jpnt] +Art=ReplaceableTextures\CommandButtons\BTNScrollOfProtection.blp + +// shimmerweed +[shwd] +Art=ReplaceableTextures\CommandButtons\BTNShimmerWeed.blp + +// battle standard +[btst] +Art=ReplaceableTextures\CommandButtons\BTNOrcBattleStandard.blp + +// skeletal artifact +[skrt] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfCorruption.blp + +// thunder lizard egg +[thle] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardEgg.blp + +// secret level powerup +[sclp] +Art=ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp + +// orb of gul'dan +[gldo] +Art=ReplaceableTextures\CommandButtons\BTNUsedSoulGem.blp + +// wirt's leg +[wtlg] +Art=ReplaceableTextures\CommandButtons\BTNWirtsLeg.blp + +// wirt's other leg +[wolg] +Art=ReplaceableTextures\CommandButtons\BTNWirtsOtherLeg.blp + +[tbsm] +Art=ReplaceableTextures\CommandButtons\BTNBlacksmith.blp + +[tfar] +Art=ReplaceableTextures\CommandButtons\BTNFarm.blp + +[tlum] +Art=ReplaceableTextures\CommandButtons\BTNHumanLumberMill.blp + +[tbar] +Art=ReplaceableTextures\CommandButtons\BTNHumanBarracks.blp + +[tbak] +Art=ReplaceableTextures\CommandButtons\BTNAltarOfKings.blp + +[mgtk] +Art=ReplaceableTextures\CommandButtons\BTNBlood&GhostKey.blp + +// staff of reanimation +[stre] +Art=ReplaceableTextures\CommandButtons\BTNWandSkull.blp + +// holy relic +[horl] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp + +// helm of battlethirst +[hbth] +Art=ReplaceableTextures\CommandButtons\BTNUnholyAura.blp + +// Bladebane Armor +[blba] +Art=ReplaceableTextures\CommandButtons\BTNArmorGolem.blp + +// Runed Gauntlets +[rugt] +Art=ReplaceableTextures\CommandButtons\BTNImprovedUnholyStrength.blp + +// Firehand Gauntlets +[frhg] +Art=ReplaceableTextures\CommandButtons\BTNAdvancedUnholyStrength.blp + +// Gloves of Spell Mastery +[gvsm] +Art=ReplaceableTextures\CommandButtons\BTNSpellSteal.blp + +// Crown of the Deathlord +[crdt] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp + +// Arcane Scroll +[arsc] +Art=ReplaceableTextures\CommandButtons\BTNBansheeAdept.blp + +// scroll of the unholy legion +[scul] +Art=ReplaceableTextures\CommandButtons\BTNBansheeMaster.blp + +// tome of sacrifices +[tmsc] +Art=ReplaceableTextures\CommandButtons\BTNNecromancerAdept.blp + +// drek'thar's spellbook +[dtsb] +Art=ReplaceableTextures\CommandButtons\BTNSorceressMaster.blp + +// Grimoire of Souls +[grsl] +Art=ReplaceableTextures\CommandButtons\BTNNecromancerMaster.blp + +// Arcanite Shield +[arsh] +Art=ReplaceableTextures\CommandButtons\BTNArcaniteArmor.blp + +// Shield of the Deathlord +[shdt] +Art=ReplaceableTextures\CommandButtons\BTNLightningShield.blp + +// Shield of Honor +[shhn] +Art=ReplaceableTextures\CommandButtons\BTNHumanArmorUpThree.blp + +// Enchanted Shield +[shen] +Art=ReplaceableTextures\CommandButtons\BTNThoriumArmor.blp + +// Thunderlizard Diamond +[thdm] +Art=ReplaceableTextures\CommandButtons\BTNEnchantedGemstone.blp + +/ Stuffed Penguin +[stpg] +Art=ReplaceableTextures\CommandButtons\BTNPenguin.blp + +// Shimmerglaze Roast +[shrs] +Art=ReplaceableTextures\CommandButtons\BTNMonsterLure.blp + +// Bloodfeather's Heart +[bfhr] +Art=ReplaceableTextures\CommandButtons\BTNPhilosophersStone.blp + +// Celestial Orb of Souls +[cosl] +Art=ReplaceableTextures\CommandButtons\BTNUsedSoulGem.blp + +// Shaman Claws +[shcw] +Art=ReplaceableTextures\CommandButtons\BTNShamanMaster.blp + +// Searing Blade +[srbd] +Art=ReplaceableTextures\CommandButtons\BTNArcaniteMelee.blp + +// Frostguard +[frgd] +Art=ReplaceableTextures\CommandButtons\BTNThoriumMelee.blp + +// Enchanted Vial +[envl] +Art=ReplaceableTextures\CommandButtons\BTNVialFull.blp + +// Rusty Mining Pick +[rump] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp + +// Mogrin's Report +[mort] +Art=ReplaceableTextures\CommandButtons\BTNSpy.blp + +// Serathil +[srtl] +Art=ReplaceableTextures\CommandButtons\BTNOrcMeleeUpThree.blp + +// Sturdy War Axe +[stwa] +Art=ReplaceableTextures\CommandButtons\BTNOrcMeleeUpOne.blp + +// Killmaim +[klmm] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWalkerAdeptTraining.blp + +// Rod of the Sea +[rots] +Art=ReplaceableTextures\CommandButtons\BTNWitchDoctorAdept.blp + +// Ancestral Staff +[axas] +Art=ReplaceableTextures\CommandButtons\BTNWitchDoctorMaster.blp + +// Mindstaff +[mnsf] +Art=ReplaceableTextures\CommandButtons\BTNBrilliance.blp + +// Scepter of Healing +[schl] +Art=ReplaceableTextures\CommandButtons\BTNPriestAdept.blp + +// Assassin's Blade +[asbl] +Art=ReplaceableTextures\CommandButtons\BTNDaggerOfEscape.blp + +// Keg of Ale +[kgal] +Art=ReplaceableTextures\CommandButtons\BTNBarrel.blp + +// thunder hawk egg +[dphe] +//no button because its a powerup +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardEgg.blp + +// Keg of Thunderwater +[dkfw] +//no button because its a powerup +Art=ReplaceableTextures\CommandButtons\BTNBarrel.blp + +// Thunderbloom Bulb +[dthb] +//no button because its a powerup +Art=ReplaceableTextures\CommandButtons\BTNManaFlareOff.blp + + + + diff --git a/share/mpq/units/units/itemstrings.txt b/share/mpq/units/units/itemstrings.txt new file mode 100644 index 0000000..8f37770 --- /dev/null +++ b/share/mpq/units/units/itemstrings.txt @@ -0,0 +1,1875 @@ +//names of dependecies +[TWN1] +Name=城镇大厅或者大厅或者生命之树或者大墓地 + +[TWN2] +Name=主城或者要塞或者远古之树或者亡者大厅 + +[TWN3] +Name=城堡或者堡垒或者永恒之树或者黑色城堡 + +[TALT] +Name=一个祭坛 + +[amrc] +Name=召唤护身符 +Hotkey=R +Tip=购买召唤护身符(|cffffcc00R|r) +Ubertip="将目标区域内个玩家的单位传送到英雄的旁边。" +Description=能将单位传送到使用者身边。 + +[ankh] +Name=重生十字章 +Hotkey=A +Tip=购买重生十字章(|cffffcc00A|r) +Ubertip="在英雄死后自动让其复活,并让其拥有点的生命值。" +Description=能让携带者重生。 + +[belv] +Name=奎尔萨拉斯之靴 +6 +Hotkey=E +Tip=购买奎尔萨拉斯之靴(|cffffcc00E|r) +Ubertip="能增加英雄6点的敏捷度。" +Description=能提高英雄敏捷度。 + +[bgst] +Name=巨人力量腰带+6 +Hotkey=B +Tip=购买巨人力量腰带(|cffffcc00B|r) +Ubertip="能增加英雄6点的力量。" +Description=增加力量属性。 + +[bspd] +Name=速度之靴 +Hotkey=S +Tip=购买速度之靴(|cffffcc00S|r) +Ubertip="能增加英雄的移动速度。" +Description=能增加移动速度。 + +[ccmd] +Name=统治权杖 +Hotkey=C +Tip=购买统治权杖(|cffffcc00C|r) +Ubertip="能将敌方非英雄单位占为己有。这种控制权的改变而且是永久性的。|n不能被用在英雄和级别高于的中立单位上。|n可使用次。" +Description=能控制敌方的非英雄单位。 + +[ciri] +Name=法师长袍 +6 +Hotkey=R +Tip=购买法师长袍(|cffffcc00R|r) +Ubertip="增加英雄6点的智力。" +Description=能提高智力属性。 + +[ckng] +Name=国王之冠 +5 +Hotkey=K +Tip=购买国王之冠(|cffffcc00K|r) +Ubertip="能增加英雄5点的力量,智力和敏捷度。" +Description="提高5点的敏捷度,力量和智力。" + +[clsd] +Name=影子风衣 +Hotkey=C +Tip=购买影子风衣( |cffffcc00C|r) +Ubertip="能在夜间让英雄隐形, 但是当英雄移动,攻击或者使用某种技能的话,隐形效果就会消失。" +Description=能提供英雄夜间隐形的能力。 + +[crys] +Name=水晶球 +Hotkey=C +Tip=购买水晶球(|cffffcc00C|r) +Ubertip="驱散一定区域内的战争迷雾,也能看到隐形单位。|n持续秒。" +Description=能显示地图上的一片区域。 + +[desc] +Name=科勒恩的逃脱匕首 +Hotkey=E +Tip=购买逃脱匕首(|cffffcc00E|r) +Ubertip="允许英雄传送一小段距离。" +Description=传送英雄一小段距离。 + +[flag] +Name=人族旗帜 +Tip=购买人族旗帜 +Ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +Description=能在某些特殊的场景内获得。 + +[nflg] +Name=暗夜精灵族旗帜 +Tip=购买暗夜精灵族旗帜 +Ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +Description=能在某些特殊的场景内获得。 + +[oflg] +Name=兽族旗帜 +Tip=购买兽族旗帜 +Ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +Description=能在某些特殊的场景内获得。 + +[uflg] +Name=不死族旗帜 +Tip=购买不死族旗帜 +Ubertip="特殊的物品,常被用来当作某些场景内获胜的条件。" +Description=能在某些特殊的场景内获得。 + +[gemt] +Name=显形宝石 +Hotkey=G +Tip=购买显形宝石(|cffffcc00G|r) +Ubertip="能让英雄看到敌方的隐形单位。" +Description=能看到隐形单位。 + +[gobm] +Name=地精地雷 +Hotkey=L +Tip=购买地精地雷(|cffffcc00L|r) +Ubertip="在地上放置一个地精地雷以后,如果有敌人靠近地雷,则地雷就会自动爆炸从而对一定范围内的单位都造成伤害。|n可使用次。" +Description=爆炸性的地雷。 + +[gsou] +Name=灵魂宝石 +Hotkey=G +Tip=购买灵魂宝石(|cffffcc00G|r) +Ubertip="能俘获敌人英雄的灵魂,但是你自己拥有宝石的英雄被杀死之后,宝石里的敌方英雄灵魂就会重新被释放出来。而且,当你的英雄用灵魂宝石俘获了敌方英雄之后,你的这个英雄就会处于敌人的视野之下。" +Description=能盗取敌人英雄的灵魂。 + +[guvi] +Name=夜视浮雕 +Hotkey=U +Tip=购买夜视浮雕(|cffffcc00U|r) +Ubertip="给予你所有的单位有和白天视野等同的夜间视力。" +Description=增进夜间视野 + +[gfor] +Name=防御浮雕 +Hotkey=F +Tip=购买防御浮雕(|cffffcc00F|r) +Ubertip="增强你的建筑物的装甲和耐久度。" +Description=增强建筑物的装甲和耐久度 + +[soul] +Name=灵魂 +Tip=购买灵魂 +Ubertip="一个被灵魂宝石所俘获的灵魂。" +Description=这是一个受困的灵魂。 + +[mdpb] +Name=美杜莎之石 +Purchase Medusa Pebble +Hotkey=P +Tip=购买美杜莎之石(|cffffcc00P|r) +Ubertip="能将敌人的一个非英雄单位永远地变成一块石头。" +Description=将目标变为冰冷的石头。 + +[rag1] +Name=敏捷便鞋 +3 +Hotkey=A +Tip=购买敏捷便鞋 +3(|cffffcc00A|r) +Ubertip="增加英雄3点的敏捷度。" +Description=增加英雄3点的敏捷度。 + +[rat3] +Name=攻击之爪 +3 +Hotkey=K +Tip=购买攻击之爪 +3(|cffffcc00K|r) +Ubertip="增加英雄3点的攻击力。" +Description=增加3点的攻击力。 + +[rin1] +Name=智力斗篷 +3 +Hotkey=I +Tip=购买智力斗篷 +3(|cffffcc00I|r) +Ubertip="增加英雄3点的智力。" +Description=增加英雄3点的智力。 + +[rde1] +Name=守护指环 +2 +Hotkey=2 +Tip=购买守护指环 +(|cffffcc002|r) +Ubertip="增加英雄2点的护甲。" +Description=增加英雄2点的护甲。 + +[rde2] +Name=守护指环 +3 +Hotkey=3 +Tip=购买守护指环 +(|cffffcc003|r) +Ubertip="增加英雄3点的护甲。" +Description=增加英雄3点的护甲。 + +[rde3] +Name=守护指环 +4 +Hotkey=4 +Tip=购买守护指环 +(|cffffcc004|r) +Ubertip="增加英雄4点的护甲。" +Description=增加英雄4点的护甲。 + +[rhth] +Name=卡嘉医疗宝石 +Hotkey=H +Tip=购买卡嘉医疗宝石(|cffffcc00H|r) +Ubertip="增加点的生命值。" +Description=增加英雄的生命值。 + +[rst1] +Name=食人鬼手套 +3 +Hotkey=S +Tip=购买食人鬼手套 +3(|cffffcc00S|r) +Ubertip="增加英雄3点的力量。" +Description=增加英雄3点的力量。 + +[ofir] +Name=火焰之球 +Hotkey=F +Tip=购买火焰之球(|cffffcc00F|r) +Ubertip="能让英雄的攻击带有点的火焰伤害,而且英雄的攻击在攻击空中单位的时候会变成远程攻击,还有一定的溅射效果。" +Description=能使得英雄的让攻击带有火焰伤害。 + +[ofro] +Name=霜冻之球 +Hotkey=R +Tip=购买霜冻之球(|cffffcc00R|r) +Ubertip="能让英雄的攻击带有点的冷冻伤害。而且这种攻击在攻击空中单位的时候会变成远程攻击,还能在秒内减慢敌人的进攻和移动速度。" +Description=使得英雄的攻击带有冷冻伤害。 + +[olig] +Name=闪电之球 +Hotkey=L +Tip=购买闪电之球(|cffffcc00L|r) +Ubertip="能增加英雄点的攻击力。也使得英雄的攻击在攻击空中单位的时候会变为远程攻击,还能驱逐魔法和在秒内减慢敌人的移动速度。|n|cffffcc00对召唤出来的单位能造成 点的伤害。" +Description=使得英雄的攻击能带有闪电伤害。 + +[oli2] +Name=闪电之球 +Hotkey=L +Tip=购买闪电之球(|cffffcc00L|r) +Ubertip="能增加英雄点的攻击力。也使得英雄的攻击在攻击空中单位的时候会变为远程攻击,还能驱逐魔法和在秒内减慢敌人的移动速度。|n|cffffcc00对召唤出来的单位能造成 点的伤害。" +Description=使得英雄的攻击能带有闪电伤害。 + +[oven] +Name=毒液之球 +Hotkey=V +Tip=购买毒液之球(|cffffcc00V|r) +Ubertip="增加英雄点的攻击力。英雄的攻击也会在攻击空中单位的时候具有远程能力并能在秒内对目标造成中毒效果。" +Description=能让攻击带有毒性。 + +[odef] +Name=黑暗之球 +Hotkey=B +Tip=购买黑暗之球(|cffffcc00B|r) +Ubertip="增加英雄点的攻击力。英雄的攻击也会在攻击空中单位的时候具有远程能力,而且如果一下子就杀死敌方某个单位的话,那么还会出现一个为你作战的黑暗之奴。黑暗之奴持续秒。" +Description=攻击能创造出黑暗之奴。 + +[ocor] +Name=腐蚀之球 +Hotkey=B +Tip=购买腐蚀之球(|cffffcc00B|r) +Ubertip="增加英雄点的攻击力。英雄的攻击在攻击空中单位的时候也变为远程,而且能在秒内削弱敌人的护甲。" +Description=攻击能削弱敌人的护甲。 + +[pdiv] +Name=神圣药水 +Hotkey=D +Tip=购买神圣药水(|cffffcc00D|r) +Ubertip="在秒内让英雄变为无敌。" +Description=将英雄变为无敌。 + +[phea] +Name=生命药水 +Hotkey=P +Tip=购买生命药水(|cffffcc00P|r) +Ubertip="恢复点的生命值。" +Description=恢复损失的生命值。 + +[pghe] +Name=大生命药水 +Hotkey=R +Tip=购买大生命药水(|cffffcc00R|r) +Ubertip="能恢复 点的生命值。" +Description=恢复损失的生命值。 + +[pinv] +Name=隐形药水 +Hotkey=I +Tip=购买隐形药水(|cffffcc00I|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内使得英雄处于隐形状态,但是当英雄攻击或者使用某项技能和魔法的时候,隐形效果就会消失。" +Description=能让英雄暂时隐身。 + +[pgin] +Name=大隐形药水 +Hotkey=I +Tip=购买大隐形药水(|cffffcc00I|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内使得英雄处于隐形状态,但是当英雄攻击或者使用某项技能和魔法的时候,隐形效果就会消失。" +Description=能让英雄暂时隐身。 + +[pman] +Name=魔法药水 +Hotkey=M +Tip=购买魔法药水(|cffffcc00M|r) +Ubertip="恢复点的魔法值。" +Description=能恢复魔法值。 + +[pgma] +Name=大魔法药水 +Hotkey=M +Tip=购买大魔法药水(|cffffcc00M|r) +Ubertip="恢复点的魔法值。" +Description=能恢复魔法值。 + +[pnvu] +Name=无敌药水 +Hotkey=I +Tip=购买无敌药水(|cffffcc00I|r) +Ubertip="在秒内使得英雄无敌。任何魔法都不能攻击一个处于无敌状态的英雄。" +Description=暂时让英雄变为无敌。 + +[pnvl] +Name=较小的无敌药水 +Hotkey=N +Tip=购买较小的无敌药水(|cffffcc00N|r) +Ubertip="在秒内使得英雄无敌。任何魔法都不能攻击一个处于无敌状态的英雄。" +Description=暂时让英雄变为无敌。 + +[pres] +Name=恢复药水 +Hotkey=R +Tip=购买恢复药水(|cffffcc00R|r) +Ubertip="能恢复点生命值和点的魔法值。" +Description=能恢复生命值和魔法值。 + +[pspd] +Name=速度药水 +Hotkey=S +Tip=购买速度药水(|cffffcc00S|r) +Ubertip="在秒内提高 %的移动速度。" +Description=能暂时提高英雄的移动速度。 + +[rlif] +Name=恢复指环 +Hotkey=R +Tip=购买恢复指环(|cffffcc00R|r) +Ubertip="提高英雄每秒 点的生命值恢复速度。" +Description=能加快英雄生命值的恢复速度。 + +[rwiz] +Name=艺人面罩 +Hotkey=B +Tip=购买艺人面罩(|cffffcc00B|r) +Ubertip="提高英雄 % 的魔法值恢复速度。" +Description=能加快英雄的魔法值恢复速度。 + +[sfog] +Name=乌云号角 +Hotkey=C +Tip=购买乌云号角(|cffffcc00C|r) +Ubertip="能让英雄施放乌云技能,从而可以使得一定范围内敌人所有的防御塔在秒内都失去攻击能力。" +Description=能让敌人的防御塔失去攻击能力。 + +[rhe1] +Name=小型治疗神符 +Hotkey=H +Tip=购买小型治疗神符(|cffffcc00H|r) +Ubertip="治疗所有附近友方非机械单位点生命值。" +Description=恢复英雄周围单位的生命值。 + +[rhe2] +Name=治疗神符 +Hotkey=H +Tip=购买治疗神符(|cffffcc00H|r) +Ubertip="治疗所有附近友方非机械单位点生命值。" +Description=恢复英雄周围单位的生命值。 + +[rhe3] +Name=大型治疗神符 +Hotkey=H +Tip=购买大型治疗神符(|cffffcc00H|r) +Ubertip="给附近所有非机械友军单位治疗点生命值。" +Description=恢复英雄周围单位的生命值。 + +[shea] +Name=医疗卷轴 +Hotkey=H +Tip=购买医疗卷轴(|cffffcc00H|r) +Ubertip="能恢复英雄周围非机械单位点的生命值。" +Description=恢复英雄周围单位的生命值。 + +[sman] +Name=魔法卷轴 +Hotkey=M +Tip=购买魔法卷轴(|cffffcc00M|r) +Ubertip="能恢复英雄周围单位 点的魔法值。" +Description=恢复英雄周围单位的魔法值。 + +[rman] +Name=魔法神符 +Hotkey=M +Tip=购买魔法神符(|cffffcc00M|r) +Ubertip="周围的友军单位恢复点魔法值。" +Description=恢复英雄周围单位的魔法值。 + +[rma2] +Name=大型魔法神符 +Hotkey=M +Tip=购买大型魔法神符(|cffffcc00M|r) +Ubertip="给附近所有友军单位恢复点魔法值。" +Description=恢复英雄周围单位的魔法值。 + +[spro] +Name=守护卷轴 +Hotkey=R +Tip=购买守护卷轴(|cffffcc00R|r) +Ubertip="在秒内提高英雄周围单位点的护甲。" +Description=暂时提高周围单位的护甲。 + +[sres] +Name=恢复卷轴 +Hotkey=R +Tip=购买恢复卷轴(|cffffcc00R|r) +Ubertip="能恢复英雄周围非机械单位点的生命值和点的魔法值。" +Description=恢复周围单位的魔法值和生命值。 + +[rres] +Name=恢复神符 +Hotkey=R +Tip=购买恢复神符(|cffffcc00R|r) +Ubertip="恢复英雄周围区域内非机械单位 点生命值和 魔法值。" +Description=恢复周围单位的魔法值和生命值。 + +[ssil] +Name=沉默权杖 +Hotkey=E +Tip=购买沉默权杖(|cffffcc00E|r) +Ubertip="阻止一定区域内所有敌人施放魔法。" +Description=能阻止敌人施放魔法。 + +[stwp] +Name=回城卷轴 +Hotkey=T +Tip=购买回城卷轴(|cffffcc00T|r) +Ubertip="将英雄和英雄周围的单位传送到指定的一个己方或者友军城镇。" +Description=将单位传送到己方或者友军的城镇。 + +[tels] +Name=地精夜视镜 +Hotkey=T +Tip=购买地精夜视镜(|cffffcc00T|r) +Ubertip="能提高英雄在夜间的视野范围。" +Description=能提高夜间的视野范围。 + +[tdex] +Name=敏捷之书 +Hotkey=A +Tip=购买敏捷之书(|cffffcc00A|r) +Ubertip="永久性地提高英雄点的敏捷度。" +Description=能永久地增加英雄敏捷度。 + +[texp] +Name=经验之书 +Hotkey=E +Tip=购买经验之书(|cffffcc00E|r) +Ubertip="给予英雄 点的经验值。" +Description=给予英雄额外的经验值。 + +[tint] +Name=智力之书 +Hotkey=T +Tip=购买智力之书(|cffffcc00T|r) +Ubertip="能永久地增加英雄点的智力。" +Description=能永久地增加英雄的智力。 + +[tkno] +Name=能量之书 +Hotkey=P +Tip=购买能量之书(|cffffcc00P|r) +Ubertip="能提高英雄个等级。" +Description=能提高英雄的经验等级。 + +[tstr] +Name=力量之书 +Hotkey=S +Tip=购买力量之书(|cffffcc00S|r) +Ubertip="能永久性地提高英雄点的力量。" +Description=能永久性地提高英雄的力量。 + +[ward] +Name=战歌之鼓 +Hotkey=W +Tip=购买战歌之鼓(|cffffcc00W|r) +Ubertip="能增加周围单位 %的攻击力。|n不能和命令光环同时使用。" +Description=增加附近单位的作战效率。 + +[will] +Name=幻象权杖 +Hotkey=I +Tip=购买幻象权杖(|cffffcc00I|r) +Ubertip="能制造目标单位的一个幻象。幻象不具备任何的攻击力,遭受敌人进攻的伤害值也会翻成原有的 倍。在秒之后或者生命值达到零之后幻象会自动消失。|n一共可以使用 次。" +Description=能制造幻象。 + +[wneg] +Name=否决权杖 +Hotkey=N +Tip=购买否决权杖(|cffffcc00N|r) +Ubertip="能驱散一定范围内所有的魔法效果。|n可使用次。|n|cffffcc00对召唤出来的单位能造成 点的伤害。|r" +Description=驱散一定区域内的魔法。 + +[rdis] +Name=驱魔神符 +Hotkey=D +Tip=购买驱魔神符(|cffffcc00D|r) +Ubertip="驱散所有附近的魔法效果。|n|cffffcc00给召唤单位造成的伤害。|r" +Description=在周围的区域内驱散魔法 + +[rwat] +Name=岗哨神符 +Hotkey=W +Tip=购买岗哨神符(|cffffcc00W|r) +Ubertip="在激活后建立一个无敌的岗哨守卫。" +Description=在此地建立一个无敌的岗哨守卫。 + +[fgrd] +Name=红龙之卵 +Tip=购买红龙之卵(|cffffcc00E|r) +Hotkey=E +Ubertip="召唤强大的红龙来为你战斗。|n持续秒。" +Description=能召唤出强大的红龙。 + +[fgrg] +Name=岩石印记 +Tip=购买岩石印记 +Ubertip="召唤岩石傀儡来为你战斗。|n持续秒。" +Description=召唤一个岩石傀儡。 + +[fgdg] +Name=恶魔雕像 +Tip=购买恶魔雕像 +Ubertip="召唤出一毁灭守卫来为你战斗。|n持续秒。" +Description=召唤毁灭守卫。 + +[fgfh] +Name=长钉衣领 +Tip=购买长钉衣领 +Ubertip="召唤一名邪恶漫步者为你作战。|n持续秒。" +Description=召唤邪恶漫步者。 + +[fgsk] +Name=死亡之书 +Tip=购买死亡之书 +Ubertip="召唤出 个骷髅战士和个骷髅弓箭手。|n持续秒。" +Description=召唤骷髅兵。 + +[ktrm] +Name=泰瑞纳斯国王的骨灰瓮 +Tip=购买泰瑞纳斯国王的骨灰瓮 +Ubertip="里面盛放着泰瑞纳斯国王的骨灰,现在它却被恶魔提克迪奥斯挑选来存放克尔苏加德的残骸。" +Description=里面盛放着泰瑞纳斯国王的骨灰。 + +[sehr] +Name=赛瑞诺克斯之心 +Tip=购买赛瑞诺克斯之心 +Ubertip="赛瑞诺克斯之心能赋予圆球龙的力量。" +Description=赛瑞诺克斯之心。 + +[azhr] +Name=埃苏尼之心 +Tip=购买埃苏尼之心 +Ubertip="传说被囚禁的埃苏尼灵魂一直在寻找着她的这颗心。" +Description=埃苏尼之心。 + +[bzbe] +Name=空瓶 +Tip=购买空瓶 +Ubertip="能盛放生命之泉泉水的一个魔法容器。" +Description=这是一个空瓶。 + +[bzbf] +Name=盛满泉水的瓶子 +Tip=购买盛满泉水的瓶子 +Ubertip="能盛放生命之泉泉水的一个魔法容器。" +Description=这个瓶子内盛满了泉水。 + +[cnhn] +Name=赛纳留斯的号角 +Tip=购买赛纳留斯的号角 +Ubertip="这个暗夜精灵族的神器据说能召唤来所有暗夜精灵的灵魂,它能赋予英雄点生命值和每秒点的生命值恢复速度。" +Description=这是赛纳留斯的号角。 + +[glsk] +Name=古尔丹之颅 +Tip=购买古尔丹之颅 +Ubertip="古尔丹曾是一个恶魔魔法的使用者,不幸的是召唤出来的恶魔反而杀害了他。" +Description=这是古尔丹的头颅。 + +[engs] +Name=魔法宝石 +Tip=购买魔法宝石 +Ubertip="这件宝物据说有着凯尔爱尼的神秘力量,能给建筑物增加完美的防御。" +Description=这是一块魔法宝石。 + +[k3m1] +Name=月亮水晶 +Tip=购买月亮水晶 +Ubertip="来自杰那拉的翠绿眼睛,能打开大门守护者的心灵。" +Description=它是三月之钥的一部分。 + +[k3m2] +Name=三月之钥的另外一个部分 +Tip=购买三月之钥的另外一个部分 +Ubertip="来自哈尼尔的紫色岩石能打开大门守护者的心灵。" +Description=这是三月之钥的另外一个部分。 + +[k3m3] +Name=三月之钥 +Tip=购买三月之钥 +Ubertip="来自艾奴莱的蓝色身躯,能打开大门守护者的心灵。" +Description=这是完整的三月之钥。 + +[modt] +Name=死亡面罩 +Tip=购买死亡面罩 +Ubertip="能使英雄的攻击将%对敌人造成的伤害转换成自己的生命值。" +Description="这面罩能于英雄攻击时汲取生命值。" + +[sand] +Name=操作死尸卷轴 +Tip=购买操作死尸卷轴 +Ubertip="复活周围个单位来为你战斗。持续时间为秒。" +Description=操作死尸来为你战斗。 + +[srrc] +Name=复活卷轴 +Tip=购买复活卷轴 +Ubertip="能复活你个死去的单位。" +Description=恢复你死亡单位的生命,继续战斗。 + +[rre1] +Name=小型复活神符 +Tip=购买小型复活神符 +Ubertip="恢复你附近死亡的单位点生命值。" +Description=恢复你死亡单位的生命,继续战斗。 + +[rre2] +Name=大型复活神符 +Tip=购买大型复活神符 +Ubertip="恢复你附近死亡的单位点生命值。" +Description=恢复你死亡单位的生命,继续战斗。 + +[rspl] +Name=灵魂锁链神符 +Tip=购买灵魂锁链神符 +Ubertip="将几个单位的灵魂联系在一起,使得%某个单位受到的伤害被分配到其他灵魂连在一起的单位身上。" +Description=灵魂连在一起的单位会共同承受伤害。 + +[sror] +Name=野兽卷轴 +Tip=购买野兽卷轴 +Ubertip="在秒内提高附近友军单位%的攻击力。" +Description=能提高附近单位的攻击力。 + +[infs] +Name=恶魔岩石 +Tip=购买恶魔岩石 +Ubertip="召唤一个地狱火从天而降,造成点的伤害,并让敌方地面单位在秒内处于昏晕状态。地狱火持续秒。" +Description=召唤地狱火恶魔。 + +[shar] +Name=冰冻碎片 +Tip=购买冰冻碎片 +Ubertip="召唤出一个冰冻幽灵。冰冻幽灵持续秒。" +Description=召唤冰冻幽灵。 + +[wild] +Name=野性护身符 +Tip=购买野性护身符 +Ubertip="召唤出一个熊怪战士。熊怪持续秒。" +Description=召唤熊怪。 + +[wswd] +Name=岗哨守卫 +Tip=购买岗哨守卫 +Ubertip="在秒内放置一个哨兵守卫来监视一定的区域。|n一共可以使用次。" +Description=召唤岗哨守卫。 + +[whwd] +Name=治疗守卫 +Tip=购买治疗守卫 +Ubertip="放置一个守卫来治疗周围的单位持续时间为 秒。|n一共可以使用次。" +Description=召唤治疗守卫。 + +[wlsd] +Name=闪电护盾权杖 +Tip=购买闪电护盾权杖 +Ubertip="使得英雄能在某个单位身上施放闪电护盾魔法,围绕在该单位身上的护盾能对周围的单位造成每秒的伤害。|n一共可以使用次。|n持续秒。" +Description=能施放闪电护盾魔法。 + +[wcyc] +Name=飓风权杖 +Tip=购买飓风权杖 +Ubertip="允许英雄施放飓风。飓风将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。" +Description=施放飓风魔法。 + +[rnec] +Name=巫术妖棍 +Hotkey=R +Tip=购买巫术妖棍(|cffffcc00R|r) +Ubertip="从一具死尸中召唤出两个骷髅战士。|n可使用次。" +Description=从一具死尸中召唤出两个骷髅战士。 + +[pams] +Name=抗体药水 +Hotkey=A +Tip=购买抗体药水(|cffffcc00A|r) +Ubertip="使英雄在秒内对所有的魔法免疫。" +Description=使英雄对魔法免疫。 + +[clfm] +Name=火焰风衣 +Tip=火焰风衣 +Ubertip="使得英雄处于火焰的包围之中,每秒对周围的地面单位造成 点的伤害。|n不能和献祭一起使用。" +Description=让英雄处于烈焰之中。 + +[evtl] +Name=闪避护符 +Tip=购买闪避护符 +Ubertip="能让英雄有% 的概率躲避掉敌人的攻击。|n不能和闪避以及醉拳技能一起使用。" +Description=让英雄更加难以被攻击到。 + +[nspi] +Name=魔法免疫项链 +Tip=购买魔法免疫项链 +Ubertip="让英雄对魔法免疫。" +Description=让英雄的魔法免疫。 + +[lhst] +Name=风暴狮角 +Tip=购买风暴狮角 +Ubertip="使得英雄和周围的单位增加点的护甲。|n不能和专注光环同时使用。" +Description=在英雄周围产生一保护性的光环。 + +[kpin] +Name=卡嘉长萧 +Tip=购买卡嘉长萧 +Ubertip="使得英雄和周围单位的魔法值恢复速度加快 。|n不能和辉煌光环同时使用。" +Description=能使周围单位的魔法值恢复地更快。 + +[sbch] +Name=天灾骨钟 +Tip=购买天灾骨钟 +Ubertip="使得近战型英雄和附近的近战型单位能将他们自己%的攻击力转换成生命值。|n不能和吸血光环同时使用。" +Description=附近单位能将自己的攻击力转换成生命值。 + +[afac] +Name=阿利亚之笛 +Tip=购买阿利亚之笛 +Ubertip="增加附近远程攻击型单位 %的攻击力。|n不能和强击光环同时使用。" +Description="增加附近导弹攻击型单位的攻击力。" + +[ajen] +Name=古之忍耐姜歌 +Tip=购买古之忍耐姜歌 +Ubertip="增加英雄和附近单位的攻击速度和移动速度。|n不能和耐久光环同时使用。" +Description=增加附近单位的移动速度和攻击速度。 + +[lgdh] +Name=毁灭之角 +Tip=购买毁灭之角 +Ubertip="增加英雄和附近单位的生命值恢复速度和移动速度。|n不能和邪恶光环同时使用。" +Description=提高周围单位生命值恢复速度和移动速度。 + +[hcun] +Name=灵巧头巾 +Tip=购买灵巧头巾 +Ubertip="增加英雄4点的敏捷度和智力。" +Description=能提高英雄的智力和敏捷度。 + +[mcou] +Name=勇气勋章 +Tip=购买勇气勋章 +Ubertip="增加英雄4点力量和智力。" +Description=能增加英雄的智力和力量。 + +[hval] +Name=英勇面具 +Tip=购买英勇面具 +Ubertip="增加英雄4点的力量和敏捷度。" +Description=能增加英雄的力量和敏捷度。 + +[cnob] +Name=贵族圆环 +Hotkey=C +Tip=购买贵族圆环(|cffffcc00C|r) +Ubertip="增加英雄2点的智力,敏捷度和力量。" +Description="增加英雄2点的智力,敏捷度和力量。" + +[prvt] +Name=生命护身符 +Hotkey=V +Tip=购买生命护身符(|cffffcc00V|r) +Ubertip="增加英雄点的生命值。" +Description=增加英雄的生命值。 + +[tgxp] +Name=超级经验之书 +Tip=购买超级经验之书 +Ubertip="给予英雄点的经验值。" +Description=给予英雄额外的经验值。 + +[mnst] +Name=魔法石 +Tip=购买魔法石 +Ubertip="加快英雄%的魔法恢复速度。也可以一次使用掉来增加点的魔法。" +Description="能加快魔法恢复速度。也能一次性使用掉从而增加英雄的魔法值。" + +[hlst] +Name=医疗石 +Tip=购买医疗石 +Ubertip="提高英雄每秒点的生命值恢复速度。也能一次性地使用掉从而增加点的生命值。" +Description="提高英雄的生命值恢复速度,也能一次性使用掉从而增加生命值。" + +[tpow] +Name=知识之书 +Tip=购买知识之书 +Ubertip="增加英雄1点的智力,敏捷度和力量。" +Description="增加英雄1点的智力,敏捷度和力量。" + +[tst2] +Name=力量之书 +2 +Tip=购买力量之书 +2 +Ubertip="增加2点的力量。" +Description=能永久性地提高英雄的力量。 + +[tin2] +Name=智力之书 +2 +Tip=购买智力之书 +2 +Ubertip="能永久地增加英雄2点的智力。" +Description=能永久地增加英雄的智力。 + +[tdx2] +Name=敏捷之书 +2 +Tip=购买敏捷之书+2 +Ubertip="能永久地增加英雄2点的敏捷度。" +Description=能永久地增加英雄敏捷度。 + +[rde0] +Name=守护指环 +1 +Hotkey=1 +Tip=购买守护指环 +(|cffffcc001|r) +Ubertip="增加英雄1点的护甲。" +Description=增加英雄1点的护甲。 + +[rde4] +Name=守护指环 +5 +Hotkey=5 +Tip=购买守护指环 +(|cffffcc005|r) +Ubertip="能增加英雄5点的护甲" +Description=增加英雄5点的护甲。 + +[rat6] +Name=攻击之爪 +6 +Tip=购买攻击之爪 +6 +Ubertip="能增加英雄6点的攻击力。" +Description=增加英雄6点的攻击力。 + +[rat9] +Name=攻击之爪 +9 +Hotkey=C +Tip=购买攻击之爪 +9(|cffffcc00C|r) +Ubertip="增加英雄9点的攻击力。" +Description=增加英雄9点的攻击力。 + +[ratc] +Name=攻击之爪 +12 +Tip=购买攻击之爪 +12 +Ubertip="增加英雄12点的攻击力。" +Description=增加英雄12点的攻击力。 + +[ratf] +Name=攻击之爪 +15 +Tip=购买攻击之爪 +15 +Ubertip="增加英雄15点的攻击力。" +Description=增加英雄15点的攻击力。 + +[manh] +Name=生命手册 +Tip=购买生命手册 +Ubertip="增加英雄点的生命值。" +Description=永久性地增加英雄50点的生命值。 + +[pmna] +Name=魔法垂饰 +Tip=购买魔法垂饰 +Ubertip="增加点的魔法最大值。" +Description=能增加魔法最大值。 + +[penr] +Name=能量垂饰 +Tip=购买能量垂饰 +Ubertip="增加英雄点的魔法最大值。" +Description=能增加魔法最大值。 + +[gcel] +Name=加速手套 +Tip=购买加速手套 +Ubertip="增加英雄%的攻击速度。" +Description=增加英雄攻击速度。 + +[ledg] +Name=吉拉德的帐本 +Tip=购买吉拉德的帐本 +Ubertip="里面似乎充满着无聊的数字和事实记载。" +Description=帐本。 + +[totw] +Name=野性护符 +Tip=购买野性护符 +Ubertip="这块神秘的石头能召唤出一两栖鱼人来为你战斗。|n一共可以召唤次。|n持续秒。" +Description=召唤两栖鱼人。 + +[kybl] +Name=鲜血钥匙 +Tip=购买鲜血钥匙 +Ubertip="这钥匙沾满了鲜血。" +Description=一把鲜血钥匙。 + +[kygh] +Name=魔鬼钥匙 +Tip=购买魔鬼钥匙 +Ubertip="这钥匙带着一股神秘的色彩。" +Description=一把魔鬼钥匙。 + +[kysn] +Name=太阳钥匙 +Tip=购买太阳钥匙 +Ubertip="这钥匙散发着炫耀的光芒。" +Description=一把发光的钥匙。 + +[kymn] +Name=月之钥匙 +Tip=购买月之钥匙 +Ubertip="这钥匙散发着一种昏暗的色彩。" +Description=一把黯淡无光的钥匙。 + +[phlt] +Name=李维特 +Tip=购买李维特 +Ubertip="神秘的物品。" +Description="神秘的物品。" + +[gopr] +Name=净化浮雕 +Tip=购买净化浮雕 +Ubertip="由古代的德鲁伊所造,有着无穷的医疗力量。" +Description=一块浮雕。 + +[ches] +Name=奶酪 +Tip=购买奶酪 +Ubertip="这只是奶酪而已!" +Description=这是奶酪! + +[mlst] +Name=力量之锤 +Tip=购买力量之锤 +Ubertip="增加英雄1点的力量。" +Description=增加英雄1点的力量。 + +[rnsp] +Name=优越之戒 +Tip=购买优越之戒 +Ubertip="增加英雄1点的智力,敏捷度和力量。" +Description="增加1点的力量,敏捷度和智力。" + +[brag] +Name=敏捷腰带 +Tip=购买敏捷腰带 +Ubertip="增加英雄1点的敏捷度。" +Description=增加英雄1点的敏捷度。 + +[sksh] +Name=防护面具 +Tip=购买防护面具 +Ubertip="增加英雄1点的力量。" +Description=增加英雄1点的力量。 + +[vddl] +Name=巫毒玩偶 +Tip=购买巫毒玩偶 +Ubertip="增加英雄1点的智力。" +Description=增加英雄1点的智力。 + +[sprn] +Name=蜘蛛戒指 +Tip=购买蜘蛛戒指 +Ubertip="增加英雄1点的敏捷度。" +Description=增加英雄1点的敏捷度。 + +[tmmt] +Name=力量图腾 +Tip=购买力量图腾 +Ubertip="增加英雄1点的力量。" +Description=增加英雄1点的力量。 + +[anfg] +Name=远古雕像 +Tip=购买远古雕像 +Ubertip="增加英雄1点的智力。" +Description=增加英雄1点的智力。 + +[lnrn] +Name=雄狮之戒 +Tip=购买雄狮之戒 +Ubertip="增加英雄1点的敏捷度。" +Description=增加英雄1点的敏捷度。 + +[iwbr] +Name=铁树枝干 +Tip=购买铁树枝干 +Ubertip="增加英雄1点的力量。" +Description=增加英雄1点的力量。 + +[jdrn] +Name=灵巧指环 +Tip=购买灵巧指环 +Ubertip="增加英雄1点的敏捷度。" +Description=增加英雄1点的敏捷度。 + +[drph] +Name=德鲁伊布袋 +Tip=购买德鲁伊布袋 +Ubertip="增加英雄1点的智力。" +Description=增加英雄1点的智力。 + +// Healing Salve +[hslv] +Name=医疗剂 +Hotkey=H +Tip=购买医疗剂(|cffffcc00H|r) +Ubertip="|cff87ceeb非战斗类消耗型物品|r|n使用后在秒内恢复目标单位的生命值点。|n可使用次。" +Description=在一定的时间内恢复目标单位的生命值。 + +// Clarity Potion +[pclr] +Name=净化药水 +Hotkey=Y +Tip=购买净化药水(|cffffcc00Y|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的魔法值。" +Description=在一定的时间内恢复英雄的魔法值。 + +// Lesser Clarity Potion +[plcl] +Name=小净化药水 +Hotkey=C +Tip=购买小净化药水(|cffffcc00C|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的魔法值。" +Description=在一定的时间内恢复英雄的魔法值。 + +// Minor Replenishment Potion +[rej1] +Name=小型恢复药水 +Hotkey=R +Tip=购买微型恢复药水(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +Description=恢复生命值和魔法值。 + +// Lesser Replenishment Potion +[rej2] +Name=小型恢复药水 +Hotkey=R +Tip=购买小型恢复药水(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +Description=恢复生命值和魔法值。 + +// Replenishment Potion +[rej3] +Name=恢复药水 +Hotkey=R +Tip=购买恢复药水(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +Description=恢复生命值和魔法值。 + +// Greater Replenishment Potion +[rej4] +Name=大型恢复药水 +Hotkey=R +Tip=购买大型恢复药水(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄点的生命值和点的魔法值。" +Description=恢复生命值和魔法值。 + +// Lesser Replenishment Scroll +[rej5] +Name=小型恢复卷轴 +Hotkey=R +Tip=购买小型恢复卷轴(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄以及周围单位点的生命值和点的魔法值。" +Description=恢复周围单位的生命值和魔法值。 + +// Greater Replenishment Scroll +[rej6] +Name=大型恢复卷轴 +Hotkey=R +Tip=购买大型恢复卷轴(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄以及周围单位点的生命值和点的魔法值。" +Description=恢复周围单位的生命值和魔法值。 + +// Scroll of Regeneration +[sreg] +Name=恢复卷轴 +Hotkey=R +Tip=购买恢复卷轴(|cffffcc00R|r) +Ubertip="|cff87ceeb非战斗类一次性物品|r|n在秒内恢复英雄周围所有非机械单位点的生命值。" +Description=恢复周围单位的生命值。 + +// Gold +[gold] +Name=金币 +Tip=购买金币 +Ubertip="给予玩家个单位的黄金。" +Description=给予玩家一定数量的黄金。 + +// Bundle of Lumber +[lmbr] +Name=木材堆 +Tip=购买木材堆 +Ubertip="给予玩家个单位的木材。" +Description=给予玩家一定数量的黄金。 + +[fgun] +Name=信号枪 +Hotkey=F +Tip=购买信号枪(|cffffcc00F|r) +Ubertip="显示地图上的某块区域。|n可使用次。" +Description="显示地图上的某块区域。" + +// Potion of Omniscience +[pomn] +Name=全知药水 +Hotkey=O +Tip=购买全知药水(|cffffcc00O|r) +Ubertip="使用后显示整个地图秒。" +Description="显示整个地图。" + +// Glyph of Omniscience +[gomn] +Name=全知浮雕 +Hotkey=O +Tip=购买全知浮雕(|cffffcc00O|r) +Ubertip="使用后显示整个地图秒。" +Description="显示整个地图。" + +[wneu] +Name=中和权杖 +Hotkey=N +Tip=购买中和权杖(|cffffcc00N|r) +Ubertip="投掷出一道魔法能量波,在不同的单位间跳跃次从而驱散各类的魔法效果。|n可使用次。" +Description=能驱逐魔法效果。 + +[silk] +Name=蜘蛛丝饰针 +Hotkey=S +Tip=购买蜘蛛丝饰针(|cffffcc00S|r) +Ubertip="将敌人的空中单位捕获到地面,被捕获到地面的空中单位能被地面单位攻击。|n可使用次。" +Description=捕获某个敌方的空中单位。 + +[lure] +Name=怪兽诱捕守卫 +Hotkey=L +Tip=购买怪兽诱捕守卫(|cffffcc00L|r) +Ubertip="召唤出一个能吸引中立单位的守卫。" +Description=召唤出一个能吸引中立单位的守卫。 + + +[skul] +Name=献祭头骨 +Hotkey=K +Tip=购买献祭头骨(|cffffcc00K|r) +Ubertip="在指定的区域创造出一片荒芜之地来。" +Description=在指定的区域创造出一片荒芜之地来。 + +[moon] +Name=月亮石 +Hotkey=N +Tip=购买月亮石(|cffffcc00N|r) +Ubertip="制造日蚀,阻挡阳光,以创造人造夜晚。|n持续秒。" +Description=使白天变成黑夜。 + +[brac] +Name=神秘腰带 +Hotkey=R +Tip=购买神秘腰带(|cffffcc00R|r) +Ubertip="减少%英雄受到的魔法伤害。" +Description=削弱英雄受到的魔法攻击。 + +[vamp] +Name=吸血药水 +Hotkey=V +Tip=购买吸血药水(|cffffcc00V|r) +Ubertip="增加英雄点的攻击力,且让英雄在攻击的同时能增加自己的生命值。|n持续秒。" +Description=增加英雄的攻击力,且让英雄在攻击的同时能增加自己的生命值。 + +[woms] +Name=魔法盗取权杖 +Hotkey=W +Tip=购买魔法盗取权杖(|cffffcc00W|r) +Ubertip="盗取目标单位身上的魔法值。|n一共可以使用次。" +Description=能盗取目标单位的魔法值。 + +[tcas] +Name=小城堡 +Hotkey=A +Tip=购买小城堡(|cffffcc00A|r) +Ubertip="能在目标区域内创建出一座城堡来。" +Description="能在目标区域内创建出一座城堡来。" + +[tgrh] +Name=小型的大厅 +Hotkey=G +Tip=购买小型的大厅(|cffffcc00G|r) +Ubertip="在目标区域创建出一座大厅。对于人族, 暗夜精灵族和不死族来讲则分别会创建出城镇大厅,生命之树和大墓地。" +Description="创建出一道巨大的墙壁来。" + +[tsct] +Name=象牙塔 +Hotkey=V +Tip=购买象牙塔(|cffffcc00V|r) +Ubertip="能在指定的区域内创建出一座哨塔来。" +Description="能在指定的区域内创建出一座哨塔来。" + +[wshs] +Name=影子权杖 +Hotkey=W +Tip=购买影子权杖(|cffffcc00W|r) +Ubertip="能让玩家拥有敌方目标单位的视野直到该单位身上的魔法被驱逐。|n可使用次。" +Description="能让玩家拥有敌方目标单位的视野直到该单位身上的魔法被驱逐。" + +[tret] +Name=再训练之书 +Hotkey=O +Tip=购买再训练之书(|cffffcc00O|r) +Ubertip="取消英雄所学的所有魔法,让英雄能重新选择技能。" +Description="取消英雄所学的所有魔法,让英雄能重新选择技能。" + +[sneg] +Name=否决权杖 +Hotkey=N +Tip=购买否决权杖(|cffffcc00N|r) +Ubertip="能驱散一定范围内所有的魔法效果。|n|cffffcc00对召唤出来的单位能造成点的伤害。|r" +Description=驱散一定区域内的魔法。 + +[stel] +Name=传送权杖 +Hotkey=E +Tip=购买传送权杖(|cffffcc00E|r) +Ubertip="将英雄传送到目标地面单位或者建筑物。" +Description=能传送英雄。 + +[spre] +Name=保存权杖 +Hotkey=E +Tip=购买保存权杖(|cffffcc00E|r) +Ubertip="将一个目标单位传送到最高等级的主基地。" +Description=将目标单位传送回城。 + +[mcri] +Name=机械类的小玩艺 +Hotkey=E +Tip=购买机械类的小玩艺(|cffffcc00E|r) +Ubertip="能召唤出一个玩家所能控制的小玩艺来进行侦察。" +Description=能召唤出一个玩家所能控制的小玩艺来进行侦察。 + +// Amulet of Spell Shield +[spsh] +Name=魔法护盾护身符 +Hotkey=A +Tip=魔法盾护身符(|cffffcc00A|r) +Ubertip="每隔秒就阻止敌人向自己的英雄施放魔法。" +Description=驱散敌人的魔法。 + +// Rune of Shielding +[rsps] +Name=护盾神符 +Hotkey=S +Tip=购买护盾神符(|cffffcc00S|r) +Ubertip="给附近友军单位一个魔法护盾,能够抵御下一次敌人施在他们身上的负面魔法。" +Description=给予附近的单位一个阻挡敌人魔法的护盾。 + +// Spell book +[sbok] +Name=魔法书 +Hotkey=B +Tip=购买魔法书(|cffffcc00B|r) +Ubertip="书中所包含的魔法技能是随机出现的。" +Description=书中所包含的魔法技能是随机出现的。 + +// Staff of Sanctuary +[ssan] +Name=避难权杖 +Hotkey=N +Tip=购买避难权杖(|cffffcc00N|r) +Ubertip="T将目标单位传送到你最高等级的主基地,让其处于昏晕状态并以每秒点的速度来恢复其生命值直到该单位补满生命值为止。" +Description=传送并医疗某个单位。 + +// Scroll of Speed +[shas] +Name=速度卷轴 +Hotkey=S +Tip=购买速度卷轴(|cffffcc00S|r) +Ubertip="让英雄和周围的单位拥有最快的移动速度。|n持续秒。" +Description=增加单位的移动速度。 + +// Rune of Speed +[rspd] +Name=速度神符 +Hotkey=D +Tip=购买速度神符(|cffffcc00D|r) +Ubertip="增加附近所有联盟单位移动速度到最大移动速度。|n持续 秒。" +Description=增加单位的移动速度。 + +// Dust of Appearance +[dust] +Name=尘土之影 +Hotkey=D +Tip=购买尘土之影(|cffffcc00D|r) +Ubertip="显示英雄周围的隐形单位。|n一共可以使用次。|n持续秒。" +Description=显示敌方的隐形单位。 + +// Orb of Slow +[oslo] +Name=减速之球 +Hotkey=S +Tip=购买减速之球(|cffffcc00S|r) +Ubertip="增加英雄点的攻击力。英雄的攻击在攻击空中单位的时候也变为远程攻击并能在秒内减慢敌方单位 %的攻击速度和%的移动速度。" +Description=使攻击带有减慢效果。 + +// Rune of Rebirth +[rreb] +Name=重生神符 +Hotkey=B +Tip=购买重生神符(|cffffcc00B|r) +Ubertip="把拥有这个神符的怪物置于控制之下。" +Description=把怪物变成你的。 + +// Diamond of Summoning +[dsum] +Name=召唤钻石 +Hotkey=D +Tip=购买召唤钻石(|cffffcc00D|r) +Ubertip="使用后传送目标区域内个玩家的单位到英雄所在的位置。" +Description=召唤你的单位到你英雄身边。 + +//#RESTNOBETA +[sor1] +Name=影子之球 +1 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你1点的攻击力。" +Description="古尔丹影子之球" + +[sor2] +Name=影子之球 +2 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你2点的攻击力。" +Description="古尔丹影子之球" + +[sor3] +Name=影子之球 +3 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你3点的攻击力。" +Description="古尔丹影子之球" + +[sor4] +Name=影子之球 +4 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你4点的攻击力和1点的护甲。" +Description="古尔丹影子之球" + +[sor5] +Name=影子之球 +5 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你5点的攻击力和1点的护甲。" +Description="古尔丹影子之球" + +[sor6] +Name=影子之球 +6 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你6点的攻击力和1点的护甲。" +Description="古尔丹影子之球" + +[sor7] +Name=影子之球 +7 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你7点的攻击力和2点的护甲。" +Description="古尔丹影子之球" + +[sor8] +Name=影子之球 +8 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你8点的攻击力和2点的护甲。" +Description="古尔丹影子之球" + +[sor9] +Name=影子之球 +9 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你9点的攻击力和2点的护甲,并能加快生命值恢复速度。" +Description="古尔丹影子之球" + +[sora] +Name=影子之球 +10 +Hotkey=O +Tip=购买影子之球(|cffffcc00O|r) +Ubertip="这个宝物被注入了兽族古代影子议会的力量,从而能增加你10点的攻击力和3点的护甲,并能加快生命值恢复速度。" +Description="古尔丹影子之球" + +[sorf] +Name=影子之球碎片 +Hotkey=O +Tip=购买影子之球碎片(|cffffcc00O|r) +Ubertip="一件宝物的碎片" +Description="影子之球的碎片" + +[fwss] +Name=冰霜巨龙头骨护盾 +Hotkey=F +Tip=购买冰霜巨龙头骨护盾(|cffffcc00F|r) +Ubertip="这个冰霜巨龙的头骨已经被改装成了一块坚固的护盾。能增加英雄2点的护甲并减少%英雄所受到的魔法攻击。" +Description="一件强大的不死族宝物。" + +[gmfr] +Name=宝石碎片 +Hotkey=G +Tip=宝石碎片(|cffffcc00G|r) +Ubertip="戒指宝石的碎片" +Description="戒指宝石的碎片" + +[ram1] +Name=大魔法师指环 +EditorSuffix=(版本 1) +Hotkey=R +Tip=购买大魔法师指环(|cffffcc00R|r) +Ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄1点的智力,敏捷度和力量。" +Description="一件强有力的宝物,上面还装饰有碎宝石。" + +[ram2] +Name=大魔法师指环 +EditorSuffix=(版本 2) +Hotkey=R +Tip=购买大魔法师指环(|cffffcc00R|r) +Ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄2点的智力,敏捷度和力量。" +Description="一件强有力的宝物,上面还装饰有碎宝石。" + +[ram3] +Name=大魔法师指环 +EditorSuffix=(版本 3) +Hotkey=R +Tip=购买大魔法师指环(|cffffcc00R|r) +Ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄3点的智力,敏捷度和力量。" +Description="一件强有力的宝物,上面还装饰有碎宝石。" + +[ram4] +Name=大魔法师指环 +EditorSuffix=(版本 4) +Hotkey=R +Tip=购买大魔法师指环(|cffffcc00R|r) +Ubertip="一件强有力的宝物,上面还装饰有碎宝石。增加英雄3点的智力,敏捷度和力量。还能加快英雄周围单位的魔法恢复速度。" +Description="一件强有力的宝物,上面还装饰有碎宝石。" + +[shtm] +Name=萨满图腾 +Hotkey=H +Tip=购买萨满图腾(|cffffcc00H|r) +Ubertip="萨满图腾中蕴含着萨满祭司强大的魔法力量。能让携带者施放净化魔法。" +Description="一件强大的兽族宝物。" + +[esaz] +Name=埃苏尼之精髓 +Hotkey=E +Tip=购买埃苏尼之精髓(|cffffcc00E|r) +Ubertip="传说中有一个兽族发现了神奇的埃苏尼之心。现在这个就是埃苏尼之心的一部分。它具有医疗英雄的能力。这是一个永久性的物品。" +Description="一件强大的暗夜精灵族宝物。" + +[jpnt] +Name=给吉安娜?普罗德摩尔的便条 +Hotkey=J +Tip=购买给吉安娜-普罗德摩尔的便条(|cffffcc00J|r) +Ubertip="萨尔给吉安娜-普罗德摩尔的便条。" +Description="吉安娜-普罗德摩尔的便条。" + +[shwd] +Name=荧光草 +Hotkey=S +Tip=购买荧光草(|cffffcc00S|r) +Ubertip="令人惊奇的植物,据说能够奇迹般地增强智力。" +Description="一种荧光植物。" + +[btst] +Name=战斗标准 +Tip=购买战斗标准 +Ubertip="萨尔兽族氏族的战斗标准,骄傲地带上它吧。" +Description="萨尔的战斗标准" + +[skrt] +Name=骸骨宝物 +Tip=购买骸骨宝物 +Ubertip="这件古老的人工制品能够诱陷那些死于暴力的不死族,迫使他们为了永恒的生命重新体验生命的最后瞬间。" +Description="灵魂宴席-吞噬者" + +[thle] +Name=雷霆蜥蜴之蛋 +Tip=购买雷霆蜥蜴之蛋 +Ubertip="这只巨大的蛋如果没有母体的温度是不会孵化的。" +Description="巨蜥蜴之蛋。" + +[sclp] +Name=秘密关卡激活 +Tip=购买秘密关卡激活 +Ubertip="开启一个秘密关卡!" +Description="开启一个秘密关卡!" + +[gldo] +Name=基尔加丹之球 +Hotkey=K +Tip=购买基尔加丹之球(|cffffcc00K|r) +Ubertip="让英雄的攻击带有点的火焰伤害。而且英雄在攻击空中单位的时候会变成远程攻击,还有一定的溅射效果。" +Description=能使得英雄的让攻击带有火焰伤害。 + +[wtlg] +Name=怀特之腿 +Hotkey=L +Tip=购买怀特之腿(|cffffcc00L|r) +Ubertip="是否这个打开的空间门释放我们在暗黑破坏神世界的亲爱的朋友们?如果是这样, 那是个玩家,还是个恶魔?燃烧军团到底征服了多少个世界?是否燃烧军团的恶魔们和那些避难所中的是同一类呢?思维已经混乱。" +Description=一条腿。 + +[wolg] +Name=怀特的另一条腿 +Hotkey=O +Tip=购买怀特的另一条腿(|cffffcc00O|r) +Ubertip="也许过分热心的冒险者在他的旅途结束之前窥视到了这个,以为它能给予他在屠杀中的最后机会。但他并不知道这能将他领向何处。" +Description=另一条腿。 + +[tbsm] +Name=微型铁匠铺 +Hotkey=B +Tip=购买微型铁匠铺(|cffffcc00B|r) +Ubertip="在目标地点建造一个铁匠铺。" +Description="建造一个铁匠铺。" + +[tfar] +Name=微型农场 +Hotkey=F +Tip=购买微型农场(|cffffcc00F|r) +Ubertip="在目标地点建造一个农场。" +Description="建造一个农场。" + +[tlum] +Name=微型伐木场 +Hotkey=R +Tip=购买微型伐木场(|cffffcc00R|r) +Ubertip="在目标地点建造一座伐木场。" +Description="建造一座伐木场。" + +[tbar] +Name=微型兵营 +Hotkey=B +Tip=购买微型兵营(|cffffcc00B|r) +Ubertip="在目标地点建造一个兵营。" +Description="建造一个兵营。" + +[tbak] +Name=微型国王祭坛 +Hotkey=K +Tip=购买微型国王祭坛(|cffffcc00K|r) +Ubertip="在目标地点建造一个国王祭坛。" +Description="建造国王祭坛。" + +[mgtk] +Name=魔法钥匙串 +Hotkey=K +Tip=购买魔法钥匙串(|cffffcc00K|r) +Ubertip="这串钥匙能打开所有的大门。" +Description="一串钥匙。" + +[stre] +Name=鼓舞权杖 +Hotkey=R +Tip=购买鼓舞权杖(|cffffcc00R|r) +Ubertip="复活附近几个尸体来为你战斗。持续秒。" +Description="能复活一个尸体。" + +[horl] +Name=稀有神器 +Hotkey=S +Tip=购买稀有神器(|cffffcc00S|r) +Ubertip="一种威力巨大的神器,由古代的兽族萨满祭司所造。|n提高英雄和周围单位的进攻速度和移动速度。|n不能和耐久光环一起使用。" +Description="一种罕见的萨满宝物。" + +[hbth] +Name=战舰之舵 +Hotkey=B +Tip=购买战舰之舵(|cffffcc00B|r) +Ubertip="|cff8b00ff特有的|r|n让英雄处于狂暴愤怒的状态,从而增加其%的攻击速度。但是同时也会对自身造成每秒点的伤害。还能增加其4点的力量和敏捷度属性。" +Description="|cff8b00ff特有的|r|n这个神奇的舵能让你扭转战局。" + +[blba] +Name=剑刃护甲 +Hotkey=A +Tip=购买剑刃护甲(|cffffcc00A|r) +Ubertip="提高周围单位点的防御。增加英雄点的护甲。" +Description="提高护甲。" + +[rugt] +Name=神秘手套 +Hotkey=R +Tip=购买神秘手套(|cffffcc00R|r) +Ubertip="当携带的时候增加英雄3点的力量和护甲。" +Description="能增加力量和护甲。" + +[frhg] +Name=火焰手套 +Hotkey=F +Tip=购买火焰手套(|cffffcc00F|r) +Ubertip="增加英雄点的护甲和%的进攻速度。" +Description="能增加护甲和进攻速度。" + +[gvsm] +Name=法术大师手套 +Hotkey=S +Tip=购买法术大师手套(|cffffcc00S|r) +Ubertip="|cff8b00ff特有的|r|n能控制召唤出来的单位。同时能增加英雄点的智力。" +Description="|cff8b00ff特有的|r|n这手套有着神秘的魔法力量。" + +[crdt] +Name=死亡领主皇冠 +Hotkey=D +Tip=购买死亡领主皇冠(|cffffcc00D|r) +Ubertip="|cffff8c00神器|r|n使得能射出痛苦之箭来对敌人造成点的伤害。同时能增加点的生命值和点的魔法值。|n|cffffcc00历史|r|n|cffffdead据说死亡领主曾经是一个光荣的圣骑士。在他弃明投暗之后残忍地杀害了自己的家人。|r" +Description="|cffff8c00宝物|r|n一个结构简单的皇冠,上面刻着一些圣骑士的规章制度。" + +[arsc] +Name=神秘卷轴 +Hotkey=A +Tip=购买神秘卷轴(|cffffcc00A|r) +Ubertip="一种强大的卷轴。能恢复点的生命值,点的魔法值。并能增加周围单位点的护甲。" +Description="恢复生命值,魔法值,并能提高周围单位的护甲。" + +[scul] +Name=邪恶军团卷轴 +Hotkey=I +Tip=购买邪恶军团卷轴(|cffffcc00I|r) +Ubertip="复活附近具尸体来为你战斗。持续秒。" +Description="能复活尸体。" + +[tmsc] +Name=牺牲之书 +Hotkey=T +Tip=购买牺牲之书(|cffffcc00T|r) +Ubertip="|cff8b00ff特有的|r|n牺牲附近的一个非英雄单位来补充英雄的生命值。在装备之后也能增加英雄点的魔法值。" +Description="|cff8b00ff特有的|r|n一本看上去充满着邪气的书,上面有着亡灵巫师的符文。" + +[dtsb] +Name=德雷克萨尔魔法书 +Hotkey=D +Tip=购买德雷克萨尔魔法书(|cffffcc00D|r) +Ubertip="|cffff8c00神器|r|n能让你传送回自己的基地。并能减少%受到的魔法伤害和增加英雄点的魔法值。|n|cffffcc00历史|r|n|cffffdead这本魔法书里面很多页都是来自肯瑞托魔法师的作品。他们都阵亡在了古代的战场上。|r" +Description="|cffff8c00宝物|r|n一本外表简单的魔法书,由先知德雷克萨尔所编写。" + +[grsl] +Name=灵魂宝物 +Hotkey=G +Tip=购买灵魂宝物(|cffffcc00G|r) +Ubertip="|cff87ceeb特有的消耗性物品|r|n这本强有力的书在使用一次之后能永久地增加英雄点的生命值。|n包含次使用次数。" +Description="|cff87ceeb特有的一次性物品|r|n永久性地增加英雄的生命值。" + +[arsh] +Name=芒硝护盾 +Hotkey=A +Tip=购买芒硝护盾(|cffffcc00A|r) +Ubertip="减少%受到的远程攻击伤害。并增加英雄点的护甲。" +Description="一种发着闪亮光芒的护盾,由芒硝钾制成。" + +[shdt] +Name=死亡领主护盾 +Hotkey=D +Tip=购买死亡领主护盾(|cffffcc00D|r) +Ubertip="|cffff8c00神器|r|n使得英雄陷于火焰的包围之中,对周围的单位造成每秒的伤害。同时增加英雄点的护甲,点的生命值,点的魔法值。|n|cffffcc00历史|r|n|cffffdead当阿尔塞斯开始屠杀自己的子民的时候,死亡领主在洛旦伦大陆许多其他的地方也实行着同样的罪行。|r" +Description="|cffff8c00宝物|r|n一个魔法护盾。上面刻着一些圣骑士的规章制度。" + +[shhn] +Name=荣誉护盾 +Hotkey=H +Tip=购买荣誉护盾(|cffffcc00H|r) +Ubertip="|cff8b00ff特有的|r|n增加周围单位%的攻击力。同时增加英雄点的护甲。" +Description="|cff8b00ff特有的|r|n一个海军指挥官的护盾。" + +[shen] +Name=施魔护盾 +Hotkey=E +Tip=购买施魔护盾(|cffffcc00E|r) +Ubertip="增加英雄点的护甲和点的生命值。" +Description="增加护甲和生命值。" + +[thdm] +Name=雷霆蜥蜴钻石 +Hotkey=T +Tip=购买雷霆蜥蜴钻石(|cffffcc00T|r) +Ubertip="|cff32cd32特有的|r|n能射出闪电之箭对多个敌人造成伤害。" +Description="|cff32cd32特有的|r|n大型的钻石。" + +[stpg] +Name=时钟企鹅 +Hotkey=P +Tip=购买时钟企鹅(|cffffcc0P|r) +Ubertip="这个可爱的企鹅玩具最初由地精工人萨拉哈尔为半人马所造。由于半人马从来都没有见过企鹅的样子,所以他们对其充满着敬畏之情并将它们放在祭坛里进行膜拜。" +Description="一个能发出唧唧声的可爱时钟企鹅玩具。" + +[shrs] +Name=烤肉 +Hotkey=S +Tip=购买烤肉(|cffffcc00S|r) +Ubertip="一块散发着微光的烤肉。在吃了之后能恢复点的生命值 。|n包含次使用次数。" +Description="恢复生命值。" + +[bfhr] +Name=血羽之心 +Hotkey=B +Tip=购买血羽之心(|cffffcc00B|r) +Ubertip="|cff8b00ff特有的|r|n当携带的时候增加英雄点的敏捷度。" +Description="|cff8b00ff特有的|r|n血羽的心。" + +[cosl] +Name=灵魂之球 +Hotkey=C +Tip=购买灵魂之球(|cffffcc00C|r) +Ubertip="|cffff8c00神器|r|n能将阵亡的个非英雄单位复活。|n|cffffcc00历史|r|n|cffffdead这个神器由古代的泰坦巨人所造。神灵的灵魂之球从上天带来了伟大的力量来复活那些在战场上英雄牺牲的勇士。|r" +Description="|cffff8c00宝物|r|n一个散发着白光的球,充满着宁静和祥和的气息。" + +[shcw] +Name=萨满利爪 +Hotkey=S +Tip=购买萨满利爪(|cffffcc00S|r) +Ubertip="|cff8b00ff特有的|r|n这装备是在萨满学完所有技能之后得到的。能增加点的攻击力。并使得英雄有一定的概率来驱散魔法和在 秒内减慢敌人的移动速度。" +Description="|cff8b00ff特有的|r|n增加攻击力和驱散魔法。" + +[srbd] +Name=灼热之刀 +Hotkey=B +Tip=购买灼热之刀(|cffffcc00B|r) +Ubertip="增加英雄点的火焰攻击力。英雄的攻击也带有溅射效果,能对目标周围的单位同时造成伤害。同时英雄有%的概率能对目标造成倍于普通攻击的伤害。" +Description="能增加攻击力。" + +[frgd] +Name=霜冻守卫 +Hotkey=F +Tip=购买霜冻守卫(|cffffcc00F|r) +Ubertip="携带的时候增加英雄点的霜冻攻击伤害和点的护甲。英雄的攻击也能减慢敌人的移动和攻击速度。" +Description="能增加攻击力。" + +[envl] +Name=魔法小瓶 +Hotkey=E +Tip=购买魔法小瓶(|cffffcc00E|r) +Ubertip="恢复点的生命值和点的魔法值。持续秒。|n包含次使用次数。" +Description="恢复生命值和魔法值。" + +[rump] +Name=生锈的矿铲 +Hotkey=R +Tip=购买生锈的矿铲(|cffffcc00R|r) +Ubertip="这把笨重的铲子有着巨大的力量。增加英雄点的攻击力并给予其%的概率来击晕对手。" +Description="增加英雄的攻击力并给予其一定的概率来击晕对手。" + +[mort] +Name=莫哥林的报告 +Hotkey=M +Tip=购买莫哥林的报告(|cffffcc00M|r) +Ubertip="这信被魔法力量给封住了。信的前面潦草地写着萨尔这两个字。" +Description="一封来自萨尔的信。" + +[srtl] +Name=瑟拉思尔 +Hotkey=S +Tip=购买瑟拉思尔(|cffffcc00S|r) +Ubertip="|cffff8c00神器|r|n增加英雄%的攻击速度和点的攻击力。|n|cffffcc00历史|r|n|cffffdead这把巨大的战斧是为了卡斯德拉克所造。并在血河战争中被是使用。随着黑疤部落的灭亡,这把战斧也最终不知了去向。那滋盖尔是卡斯德拉克唯一一个还健在的亲戚。|r" +Description="|cffff8c00宝物|r|n这把巨大的斧子上面有着很多的刮痕和兽族的符文。" + +[stwa] +Name=战斧 +Hotkey=W +Tip=购买战斧(|cffffcc00W|r) +Ubertip="增加英雄点的攻击力。" +Description="能增加攻击力。" + +[klmm] +Name=远古战斧 +Hotkey=K +Tip=购买远古战斧(|cffffcc00K|r) +Ubertip="|cffff8c00神器|r|n增加英雄点的攻击力。并使英雄的攻击能汲取生命值。|n|cffffcc00历史|r|n|cffffdead当德瑟林发现他的爱人阿鲁娜投进了别人的怀抱。他前去荒地好好地痛苦了一场。结果从沙子里面飞出了一把巨大的战斧。德瑟林拿着这把从天而降的斧子杀了阿鲁娜和她的情人。随后他用自己最大的力气把这把神奇的战斧投向了大海的最深处。|r" +Description="|cffff8c00宝物|r|n一把月牙型的战斧,上面散发着鲜血和盐水的味道。" + +[rots] +Name=海之权杖 +Hotkey=R +Tip=购买海之权杖(|cffffcc00R|r) +Ubertip="|cff87ceeb特有的消耗性物品|r|n能召唤个两栖鱼人人来为你战斗。同时能增加英雄2点的智力,力量和敏捷度。|n包含次使用次数。" +Description="|cff87ceeb特有的消耗性物品|r|n能召唤出两栖鱼人。" + +[axas] +Name=先祖权杖 +Hotkey=A +Tip=购买先祖权杖(|cffffcc00A|r) +Ubertip="|cffff8c00神器|r|n召唤出个巨魔狂暴战士来为你战斗。并且使得英雄和其周围的单位加快攻击和移动速度。|n|cffffcc00历史|r|n|cffffdead巫医几代人的名字都被刻在了这个做工精细的权杖上。持有这个权杖的人能在危急的时刻求助于来自他们的伟大魔法力量。|r" +Description="|cffff8c00宝物|r|n在这个美妙的权杖上刻着许多的名字。" + +[mnsf] +Name=心灵权杖 +Hotkey=M +Tip=购买心灵权杖(|cffffcc00M|r) +Ubertip="增加英雄点的魔法值。并给予英雄和其周围的单位更快的魔法恢复速度。" +Description="增加魔法值。" + +[schl] +Name=医疗权杖 +Hotkey=H +Tip=购买医疗权杖(|cffffcc00H|r) +Ubertip="能治愈一个友军单位。同时也能加快英雄和周围单位%的生命值恢复速度。" +Description="一把具有医疗能力的权杖。" + +[asbl] +Name=刺客佩刀 +Hotkey=A +Tip=购买刺客佩刀(|cffffcc00A|r) +Ubertip="当携带的时候,提高英雄点的攻击力。英雄的攻击在一定的时间内也能对敌人造成持续性的伤害,每秒点。还能减慢敌人的移动和攻击速度。" +Description="能增加攻击力。" + +[kgal] +Name=麦酒桶 +Hotkey=K +Tip=购买麦酒桶(|cffffcc00K|r) +Ubertip="提高生命值和魔法值恢复速度。" +Description="提高生命值和魔法值恢复速度。" + +[dphe] +Name=雷霆凤凰蛋 +Hotkey=H +Tip=购买雷霆凤凰(|cffffcc00H|r) +Ubertip="一个稀有的雷电之鹰蛋。" +Description="一个稀有的雷电之鹰蛋。" + +[dkfw] +Name=雷霆水桶 +Hotkey=K +Tip=购买雷霆水桶(|cffffcc00K|r) +Ubertip="一个小桶,里面装着卡兹莫丹大陆上最烈性的酒。" +Description="一个小桶,里面装着卡兹莫丹大陆上最烈性的酒。" + + +[dthb] +Name=雷电花芯 +Hotkey=T +Tip=购买雷电花芯(|cffffcc00T|r) +Ubertip="一种奇异的植物,以其不稳定性和危险性而著称。" +Description="一种奇异的植物,以其不稳定性和危险性而著称。" diff --git a/share/mpq/units/units/miscdata.txt b/share/mpq/units/units/miscdata.txt new file mode 100644 index 0000000..839579a --- /dev/null +++ b/share/mpq/units/units/miscdata.txt @@ -0,0 +1,94 @@ +[Misc] + +// Range around selected ground area to search for a target +CloseEnoughRange=100 + +// Radius of building blight dispel +BuildingUnblightRadius=350 + +// Radius of creep notification when a new building gets placed +BuildingPlacementNotifyRadius=600 + +// Radius of creep notification when a neutral building is in use +NeutralUseNotifyRadius=900 + +// the angle in degrees structures face +BuildingAngle=270 +RootAngle=250 + +// half angle in radians that a unit must meet to be facing his target +AttackHalfAngle=0.5 +FoggedAttackRevealRadius=200.0 +DyingRevealRadius=500.0 + +// death and decay impact gameplay, so duration is specified +BoneDecayTime=88 +StructureDecayTime=30 +DecayTime=2 +DissipateTime=3 +CancelTime=6 +BulletDeathTime=5 +EffectDeathTime=5 +FogFlashTime=3 +CreepCampPathingCellDistance=26 + +// follow ranges +FollowRange=300 +StructureFollowRange=100 +FollowItemRange=1000 + +// distance target can move between starting cast and spell effect +SpellCastRangeBuffer=300 + +// largest possible collision radius for any widget +MaxCollisionRadius=200 + +// rally point vertical offset when set on non-units +RallyZOffset=200 + +// duration of art animations that get scaled +ScaledAnimTime=60 + +// max random reaction delay (seconds) +ReactionDelay=0.25 + +// missile chance to miss if target is moving or on high ground +ChanceToMiss=0.25 + +// game-seconds per game-day +DayLength=480 +Dawn=6 +Dusk=18 + +// earth has a 24 hour day, how many does Azeroth have +DayHours=24 + +// maximum amount of gold a gold mine can have +GoldMineMaxGold=1000000 + +// this is the amount where a gold mine is considered low. +LowGoldAmount=1500 + +// the length that a mine is considered owned after the last peon leaves it. +GoldMineOwnDuration=2.0 + +// this is the speed units change visibility (smaller = "cloak" slower) +InvisSpeed=0.4 + +// All selection circles will have this added to their z coord +SelectionCircleBaseZ=16 + +// item shadow data +ItemShadowFile=Shadow +ItemShadowSize=120,120 +ItemShadowOffset=50,50 + +// seconds between attack notifications +AttackNotifyDelay=30.0 +AttackNotifyRange=1250 + +// alliance resource trading increments +TradingIncSmall=100 +TradingIncLarge=200 + +MissDamageReduction=0.5 \ No newline at end of file diff --git a/share/mpq/units/units/miscgame.txt b/share/mpq/units/units/miscgame.txt new file mode 100644 index 0000000..969675f --- /dev/null +++ b/share/mpq/units/units/miscgame.txt @@ -0,0 +1,216 @@ +[Misc] +MagicImmunesResistDamage=1 +MagicImmunesResistThorns=0 +MagicImmunesResistLeech=0 +MagicImmunesResistUltimates=0 +CycloneStasis=0 +DepCheckAlias=1 +MassTeleportCluster=1 +DarkSummoningCluster=1 +TownPortalCluster=1 +AmuletOfRecallCluster=1 +MorphLandClosest=1 +MorphAlternateDisable=0 +InvulnSummonDispelDamage=1 +ConstructionDamageRefundPenalty=1 +UpgradeDamageRefundPenalty=0 +AllowMultiBounce=1 +EnsnareIsMagic=0 +WebIsMagic=0 +IllusionsGetAttackBonus=0 +IllusionsGetAttackSpeedBonus=0 +IllusionsGetMoveSpeedBonus=0 +IllusionsGetDefenseBonus=0 +IllusionsCanRestoreLife=0 +IllusionsCanRestoreMana=0 +IllusionsBestowAuras=0 +IllusionsGetAutocast=0 +InvisibleUnitsBestowAuras=0 +PolymorphedUnitsBestowAuras=0 +BurrowedUnitsBestowAuras=0 +AnimatedUnitsBestowAuras=0 +FlyingHeroesBestowAuras=0 +MoveSpeedBonusesStack=1 +DrainUsesEtheralBonus=0 +DrainTransfersLife=0 +DrainTransfersMana=0 +DrainGivesBonusLife=0 +DrainGivesBonusMana=0 +EtherealDamageBonusAlly=1 +CanDeactivateAvatar=0 +CanDeactivateAvengerForm=0 +CanDeactivateBarkskin=1 +CanDeactivateBearForm=1 +CanDeactivateBladestorm=0 +CanDeactivateBurrow=1 +CanDeactivateCallToArms=1 +CanDeactivateChemicalRage=0 +CanDeactivateCorporealForm=1 +CanDeactivateDefend=1 +CanDeactivateDivineShield=1 +CanDeactivateImmolation=1 +CanDeactivateManaFlare=0 +CanDeactivateManaShield=1 +CanDeactivateMetamorphosis=0 +CanDeactivateRavenForm=1 +CanDeactivateRoboGoblin=1 +CanDeactivateStoneForm=1 +CanDeactivateSubmerge=1 +CanDeactivateWindWalk=0 +RelativeUpgradeCost=1 +DefendDeflection=0 +ItemSaleAggroRange=0 +UnitSaleAggroRange=0 +AbilSaleAggroRange=0 +AbolishMagicDispelSmart=0 +UpgradeInProgressIdChange=1 + +GlobalExperience=1 +MaxLevelHeroesDrainExp=1 +BuildingKillsGiveExp=0 + +DisplayEnemyInventory=1 +DisplayBuildingStatus=0 + +// Max revival cost of a hero +HeroMaxReviveCostGold=700 +HeroMaxReviveCostLumber=0 +HeroMaxReviveTime=150 + +// Max awaken (tavern) cost of a hero +HeroMaxAwakenCostGold=1400 +HeroMaxAwakenCostLumber=350 + +// Hero Revive & Awaken returning stats +HeroReviveManaStart=1 +HeroReviveManaFactor=0.0 +HeroReviveLifeFactor=1.0 +HeroAwakenManaStart=0 +HeroAwakenManaFactor=0.0 +HeroAwakenLifeFactor=0.5 + +// the distance at which heroes still gain XP for dying units +HeroExpRange=1200 + +// factors for calculating the cost, time to revive a hero +// goldRevivalCost = originalCost * (ReviveBaseFactor + (ReviveLevelFactor*(level-1))) +// but not exceeding originalCost * ReviveMaxFactor +// lumberRevivalCost = originalCost * (ReviveBaseLumberFactor + (ReviveLumberLevelFactor*(level-1))) +// but not exceeding originalCost * ReviveMaxFactor +// revivalTime = originalTime * level * ReviveTimeFactor +// but not exceeding originalTime * ReviveMaxTimeFactor +ReviveBaseFactor=.40 +ReviveLevelFactor=.10 +ReviveBaseLumberFactor=0 +ReviveLumberLevelFactor=0 +ReviveMaxFactor=4.0 +ReviveTimeFactor=0.65 +ReviveMaxTimeFactor=2.0 + +AwakenBaseFactor=.80 +AwakenLevelFactor=.20 +AwakenBaseLumberFactor=.80 +AwakenLumberLevelFactor=.20 +AwakenMaxFactor=8.0 + +// Note: Maps saved with a Reign of Chaos version of the editor will use 25 for the +// min unit speed value since it wasn't increased to 150 until Frozen Throne. +MinUnitSpeed=150 +MaxUnitSpeed=400 +MinBldgSpeed=25 +MaxBldgSpeed=400 + +FrostMoveSpeedDecrease=0.5 +FrostAttackSpeedDecrease=0.25 + +// Experience & Level Information +// +MaxHeroLevel=10 +MaxUnitLevel=20 +NeedHeroXP=200 +GrantHeroXP=100,120,160,220,300 +GrantNormalXP=25 +HeroFactorXP=80,70,60,50,0 +SummonedKillFactor=0.5 +StrAttackBonus=1.0 +StrHitPointBonus=25 +StrRegenBonus=0.05 +IntManaBonus=15 +IntRegenBonus=0.05 +AgiDefenseBonus=0.30 +AgiDefenseBase=-2 +AgiMoveBonus=0 +AgiAttackSpeedBonus=0.02 + +// Formula constants for hero levels beyond the tables... +// The three constants are used to define a table as: +// +// f(x) = A*f(x-1) + B*x + C +// +// where A,B,C are the constants given below +// +NeedHeroXPFormulaA=1 +NeedHeroXPFormulaB=100 +NeedHeroXPFormulaC=0 +GrantHeroXPFormulaA=1 +GrantHeroXPFormulaB=0 +GrantHeroXPFormulaC=100 +GrantNormalXPFormulaA=1 +GrantNormalXPFormulaB=5 +GrantNormalXPFormulaC=5 + +// Hero ability level skip +// The required hero level for a given ability level is: +// +// baseReq + levelSkip*abilityLevel +// + +HeroAbilityLevelSkip=2 + +// Hero Inventory Items +DropItemRange=100 +GiveItemRange=150 +PickupItemRange=150 +PawnItemRange=300 +PawnItemRate=0.50 + +// combat related entries +CallForHelp=600 +CreepCallForHelp=600 +DefenseArmor=0.06 + +// Damage bonus lists: SMALL, MEDIUM, LARGE, FORT, NORMAL, HERO, DIVINE, NONE +DamageBonusNormal=1.00,1.50,1.00,0.70,1.00,1.00,0.05,1.00 +DamageBonusPierce=2.00,0.75,1.00,0.35,1.00,0.50,0.05,1.50 +DamageBonusSiege=1.00,0.50,1.00,1.50,1.00,0.50,0.05,1.50 +DamageBonusMagic=1.25,0.75,2.00,0.35,1.00,0.50,0.05,1.00 +DamageBonusChaos=1.00,1.00,1.00,1.00,1.00,1.00,1.00,1.00 +DamageBonusSpells=1.00,1.00,1.00,1.00,1.00,0.75,0.05,1.00 +DamageBonusHero=1.00,1.00,1.00,0.50,1.00,1.00,0.05,1.00 + +// Ethereal Damage bonus values: NORMAL, PIERCE, SIEGE, MAGIC, CHAOS, SPELLS, HERO +EtherealDamageBonus=0,0,0,1.66,0,1.66,0 +EtherealHealBonus=1.66 + +// After a unit has strayed 'GuardDistance' from where it started, +// that unit begins thinking about heading back to its start position. +// If the unit has move 'GuardDistance' away from "home" at any time +// and spends 'GuardReturnTime' seconds chasing a target without getting +// attacked by anyone, the unit indeed turns around and heads home. +// If a creep goes beyond 'MaxGuardDistance' then it always returns home +// regardless of who's attacking it. +// +GuardDistance=600 +MaxGuardDistance=1000 +GuardReturnTime=5.0 + +// refund rates +ConstructionRefundRate=0.75 // for cancelled construction +ResearchRefundRate=1.0 // for cancelled research of spells or unit improvements +ReviveRefundRate=1.0 // for cancelled hero revival +TrainRefundRate=1.0 // currently applied regardless of location in queue +UpgradeRefundRate=0.75 // for a cancelled structure upgrade + +ConstructionLifeDrainRate=10.0 // hp per second drained when building construction is halted + +MissDamageReduction=0.5 \ No newline at end of file diff --git a/share/mpq/units/units/miscmetadata.slk b/share/mpq/units/units/miscmetadata.slk new file mode 100644 index 0000000..a5731ef --- /dev/null +++ b/share/mpq/units/units/miscmetadata.slk @@ -0,0 +1,4337 @@ +ID;PWXL;N;E +B;X19;Y300;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"section" +C;X5;K"index" +C;X6;K"displayName" +C;X7;K"sort" +C;X8;K"type" +C;X9;K"importType" +C;X10;K"stringExt" +C;X11;K"caseSens" +C;X12;K"canBeEmpty" +C;X13;K"minVal" +C;X14;K"maxVal" +C;X15;K"forceNonNeg" +C;X16;K"version" +C;X17;K"InBeta" +C;X18;K"changeFlags" +C;X19;K"category" +C;X1;Y2;K"gexp" +C;X2;K"GlobalExperience" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GEXP" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y3;K"bgxp" +C;X2;K"BuildingKillsGiveExp" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BGXP" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y4;K"mhdx" +C;X2;K"MaxLevelHeroesDrainExp" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHDX" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y5;K"dbst" +C;X2;K"DisplayBuildingStatus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DBST" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y6;K"dein" +C;X2;K"DisplayEnemyInventory" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DEIN" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y7;K"mhel" +C;X2;K"MaxHeroLevel" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHEL" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y8;K"mule" +C;X2;K"MaxUnitLevel" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MULE" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K10 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y9;K"mxpn" +C;X2;K"NeedHeroXP" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MXPN" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K2000000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y10;K"xpn1" +C;X2;K"NeedHeroXPFormulaA" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_XPN1" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y11;K"xpn2" +C;X2;K"NeedHeroXPFormulaB" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_XPN2" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y12;K"xpn3" +C;X2;K"NeedHeroXPFormulaC" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_XPN3" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y13;K"mhrc" +C;X2;K"HeroMaxReviveCostGold" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHRC" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y14;K"mhrl" +C;X2;K"HeroMaxReviveCostLumber" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHRL" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y15;K"mhrt" +C;X2;K"HeroMaxReviveTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHRT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y16;K"mhac" +C;X2;K"HeroMaxAwakenCostGold" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHAC" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y17;K"mhal" +C;X2;K"HeroMaxAwakenCostLumber" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MHAL" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y18;K"hrms" +C;X2;K"HeroReviveManaStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HRMS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y19;K"hrmf" +C;X2;K"HeroReviveManaFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HRMF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y20;K"hrlf" +C;X2;K"HeroReviveLifeFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HRLF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y21;K"hams" +C;X2;K"HeroAwakenManaStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HAMS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y22;K"hamf" +C;X2;K"HeroAwakenManaFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HAMF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y23;K"half" +C;X2;K"HeroAwakenLifeFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HALF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y24;K"bubr" +C;X2;K"BuildingUnblightRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BUBR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y25;K"bcnr" +C;X2;K"BuildingPlacementNotifyRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BCNR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y26;K"nunr" +C;X2;K"NeutralUseNotifyRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_NUNR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y27;K"farr" +C;X2;K"FoggedAttackRevealRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FARR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y28;K"dfrr" +C;X2;K"DyingRevealRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DFRR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y29;K"bdet" +C;X2;K"BoneDecayTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BDET" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y30;K"sdet" +C;X2;K"StructureDecayTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SDET" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y31;K"dect" +C;X2;K"DecayTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DECT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y32;K"dist" +C;X2;K"DissipateTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DIST" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y33;K"folr" +C;X2;K"FollowRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FOLR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y34;K"fols" +C;X2;K"StructureFollowRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FOLS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y35;K"foli" +C;X2;K"FollowItemRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FOLI" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y36;K"scrb" +C;X2;K"SpellCastRangeBuffer" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SCRB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y37;K"read" +C;X2;K"ReactionDelay" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_READ" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y38;K"chtm" +C;X2;K"ChanceToMiss" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CHTM" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y39;K"dayl" +C;X2;K"DayLength" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DAYL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y40;K"dawn" +C;X2;K"Dawn" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DAWN" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y41;K"dusk" +C;X2;K"Dusk" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DUSK" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y42;K"dayh" +C;X2;K"DayHours" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DAYH" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y43;K"gmmg" +C;X2;K"GoldMineMaxGold" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GMMG" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y44;K"hexr" +C;X2;K"HeroExpRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HEXR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y45;K"rbfg" +C;X2;K"ReviveBaseFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RBFG" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y46;K"rlfg" +C;X2;K"ReviveLevelFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RLFG" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y47;K"rbfl" +C;X2;K"ReviveBaseLumberFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RBFL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y48;K"rlfl" +C;X2;K"ReviveLumberLevelFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RLFL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y49;K"rmaf" +C;X2;K"ReviveMaxFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RMAF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y50;K"rbft" +C;X2;K"ReviveTimeFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RBFT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y51;K"rmtf" +C;X2;K"ReviveMaxTimeFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RMTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y52;K"awbf" +C;X2;K"AwakenBaseFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AWBF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y53;K"awlf" +C;X2;K"AwakenLevelFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AWLF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y54;K"awbl" +C;X2;K"AwakenBaseLumberFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AWBL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y55;K"awll" +C;X2;K"AwakenLumberLevelFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AWLL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y56;K"awmf" +C;X2;K"AwakenMaxFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AWMF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y57;K"loga" +C;X2;K"LowGoldAmount" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_LOGA" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y58;K"gmod" +C;X2;K"GoldMineOwnDuration" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GMOD" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y59;K"invs" +C;X2;K"InvisSpeed" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_INVS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y60;K"from" +C;X2;K"FrostMoveSpeedDecrease" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FROM" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y61;K"froa" +C;X2;K"FrostAttackSpeedDecrease" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FROA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y62;K"gnxp" +C;X2;K"GrantNormalXP" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_GNXP" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2000000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y63;K"gnxa" +C;X2;K"GrantNormalXPFormulaA" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GNXA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y64;K"gnxb" +C;X2;K"GrantNormalXPFormulaB" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GNXB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y65;K"gnxc" +C;X2;K"GrantNormalXPFormulaC" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GNXC" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y66;K"ghxp" +C;X2;K"GrantHeroXP" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_GHXP" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2000000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y67;K"ghfa" +C;X2;K"GrantHeroXPFormulaA" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GHFA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y68;K"ghfb" +C;X2;K"GrantHeroXPFormulaB" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GHFB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y69;K"ghfc" +C;X2;K"GrantHeroXPFormulaC" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GHFC" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y70;K"hfxp" +C;X2;K"HeroFactorXP" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_HFXP" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y71;K"satb" +C;X2;K"StrAttackBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SATB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y72;K"shpb" +C;X2;K"StrHitPointBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SHPB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y73;K"sreb" +C;X2;K"StrRegenBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SREB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y74;K"imab" +C;X2;K"IntManaBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IMAB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y75;K"imrb" +C;X2;K"IntRegenBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IMRB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y76;K"adeb" +C;X2;K"AgiDefenseBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ADEB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y77;K"adba" +C;X2;K"AgiDefenseBase" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ADBA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K-1000 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y78;K"amvb" +C;X2;K"AgiMoveBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AMVB" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y79;K"aasb" +C;X2;K"AgiAttackSpeedBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AASB" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y80;K"drop" +C;X2;K"DropItemRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DROP" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y81;K"give" +C;X2;K"GiveItemRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GIVE" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y82;K"pick" +C;X2;K"PickupItemRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_PICK" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y83;K"pair" +C;X2;K"PawnItemRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_PAIR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y84;K"paif" +C;X2;K"PawnItemRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_PAIF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y85;K"cfhr" +C;X2;K"CallForHelp" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CFHR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y86;K"cfhc" +C;X2;K"CreepCallForHelp" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CFHC" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y87;K"defa" +C;X2;K"DefenseArmor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DEFA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y88;K"ctno" +C;X2;K"DamageBonusNormal" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTNO" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y89;K"ctpi" +C;X2;K"DamageBonusPierce" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTPI" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y90;K"ctsi" +C;X2;K"DamageBonusSiege" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTSI" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y91;K"ctma" +C;X2;K"DamageBonusMagic" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTMA" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y92;K"ctch" +C;X2;K"DamageBonusChaos" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTCH" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y93;K"ctsp" +C;X2;K"DamageBonusSpells" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTSP" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y94;K"cthe" +C;X2;K"DamageBonusHero" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CTHE" +C;X8;K"defenseTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y95;K"guad" +C;X2;K"GuardDistance" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GUAD" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y96;K"guam" +C;X2;K"MaxGuardDistance" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GUAM" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y97;K"guat" +C;X2;K"GuardReturnTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GUAT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y98;K"rrco" +C;X2;K"ConstructionRefundRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RRCO" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y99;K"rrre" +C;X2;K"ResearchRefundRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RRRE" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y100;K"rrhr" +C;X2;K"ReviveRefundRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RRHR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y101;K"rrtu" +C;X2;K"TrainRefundRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RRTU" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y102;K"rrbu" +C;X2;K"UpgradeRefundRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RRBU" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y103;K"ande" +C;X2;K"AttackNotifyDelay" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ANDE" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y104;K"anra" +C;X2;K"AttackNotifyRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ANRA" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y105;K"tras" +C;X2;K"TradingIncSmall" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TRAS" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y106;K"tral" +C;X2;K"TradingIncLarge" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TRAL" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y107;K"hals" +C;X2;K"HeroAbilityLevelSkip" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_HALS" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K5 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y108;K"cldr" +C;X2;K"ConstructionLifeDrainRate" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CLDR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y109;K"bang" +C;X2;K"BuildingAngle" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BANG" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K360 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y110;K"rang" +C;X2;K"RootAngle" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RANG" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K360 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y111;K"budt" +C;X2;K"BulletDeathTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BUDT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y112;K"efdt" +C;X2;K"EffectDeathTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EFDT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y113;K"cadt" +C;X2;K"CancelTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CADT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y114;K"ffdt" +C;X2;K"FogFlashTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FFDT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y115;K"mcor" +C;X2;K"MaxCollisionRadius" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MCOR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1024 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y116;K"rzof" +C;X2;K"RallyZOffset" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RZOF" +C;X8;K"real" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K2048 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y117;K"sant" +C;X2;K"ScaledAnimTime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SANT" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y118;K"skif" +C;X2;K"SummonedKillFactor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SKIF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y119;K"fcap" +C;X2;K"FoodCeiling" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FCAP" +C;X8;K"int" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K300 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y120;K"upku" +C;X2;K"UpkeepUsage" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_UPKU" +C;X8;K"intList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K300 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y121;K"upkg" +C;X2;K"UpkeepGoldTax" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_UPKG" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y122;K"upkw" +C;X2;K"UpkeepLumberTax" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_UPKW" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y123;K"edbo" +C;X2;K"EtherealDamageBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_EDBO" +C;X8;K"attackTable" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y124;K"ehbo" +C;X2;K"EtherealHealBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_EHBO" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y125;K"mxus" +C;X2;K"MaxUnitSpeed" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MXUS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K522 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y126;K"mnus" +C;X2;K"MinUnitSpeed" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MNUS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K522 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y127;K"mxbs" +C;X2;K"MaxBldgSpeed" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MXBS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K522 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y128;K"mnbs" +C;X2;K"MinBldgSpeed" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MNBS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K522 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y129;K"mdre" +C;X2;K"MissDamageReduction" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MDRE" +C;X8;K"unreal" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y130;K"cccr" +C;X2;K"CreepCampPathingCellDistance" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CCCR" +C;X8;K"int" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K128 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y131;K"hero" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"HERO" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_HERO" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y132;K"talt" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TALT" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TALT" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y133;K"twn1" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN1" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN1" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y134;K"twn2" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN2" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN2" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y135;K"twn3" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN3" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN3" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y136;K"twn4" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN4" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN4" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y137;K"twn5" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN5" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN5" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y138;K"twn6" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN6" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN6" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y139;K"twn7" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN7" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN7" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y140;K"twn8" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN8" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN8" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y141;K"twn9" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K"TWN9" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TWN9" +C;X8;K"unitList" +C;X10;K0 +C;X11;K1 +C;X12;K1 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y142;K"txp1" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN1" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP1" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y143;K"txp2" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN2" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP2" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y144;K"txp3" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN3" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP3" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y145;K"txp4" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN4" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP4" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y146;K"txp5" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN5" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP5" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y147;K"txp6" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN6" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP6" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y148;K"txp7" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN7" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP7" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y149;K"txp8" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN8" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP8" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y150;K"txp9" +C;X2;K"XPFactor" +C;X3;K"Profile" +C;X4;K"TWN9" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_TXP9" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y151;K"eqnh" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"HERO" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQNH" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y152;K"eqna" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TALT" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQNA" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y153;K"eqn1" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN1" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN1" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y154;K"eqn2" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN2" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN2" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y155;K"eqn3" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN3" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN3" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y156;K"eqn4" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN4" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN4" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y157;K"eqn5" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN5" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN5" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y158;K"eqn6" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN6" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN6" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y159;K"eqn7" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN7" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN7" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y160;K"eqn8" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN8" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN8" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y161;K"eqn9" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K"TWN9" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EQN9" +C;X8;K"string" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X14;K"TTDesc" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y162;K"mird" +C;X2;K"MagicImmunesResistDamage" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MIRD" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y163;K"mirt" +C;X2;K"MagicImmunesResistThorns" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MIRT" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y164;K"mirl" +C;X2;K"MagicImmunesResistLeech" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MIRL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y165;K"miru" +C;X2;K"MagicImmunesResistUltimates" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MIRU" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y166;K"cyst" +C;X2;K"CycloneStasis" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CYST" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y167;K"dcal" +C;X2;K"DepCheckAlias" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DCAL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y168;K"mtcl" +C;X2;K"MassTeleportCluster" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MTCL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y169;K"dscl" +C;X2;K"DarkSummoningCluster" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DSCL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y170;K"tpcl" +C;X2;K"TownPortalCluster" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TPCL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y171;K"arcl" +C;X2;K"AmuletOfRecallCluster" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ARCL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y172;K"mlcl" +C;X2;K"MorphLandClosest" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MLCL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y173;K"madi" +C;X2;K"MorphAlternateDisable" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MADI" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y174;K"isdd" +C;X2;K"InvulnSummonDispelDamage" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ISDD" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y175;K"cdrp" +C;X2;K"ConstructionDamageRefundPenalty" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDRP" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y176;K"udrp" +C;X2;K"UpgradeDamageRefundPenalty" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_UDRP" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y177;K"ambo" +C;X2;K"AllowMultiBounce" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AMBO" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y178;K"eima" +C;X2;K"EnsnareIsMagic" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EIMA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y179;K"wima" +C;X2;K"WebIsMagic" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_WIMA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y180;K"igab" +C;X2;K"IllusionsGetAttackBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IGAB" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y181;K"iasb" +C;X2;K"IllusionsGetAttackSpeedBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IASB" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y182;K"igmb" +C;X2;K"IllusionsGetMoveSpeedBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IGMB" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y183;K"igdb" +C;X2;K"IllusionsGetDefenseBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IGDB" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y184;K"icrl" +C;X2;K"IllusionsCanRestoreLife" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ICRL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y185;K"icrm" +C;X2;K"IllusionsCanRestoreMana" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ICRM" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y186;K"ibau" +C;X2;K"IllusionsBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IBAU" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y187;K"igau" +C;X2;K"IllusionsGetAutocast" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IGAU" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y188;K"inba" +C;X2;K"InvisibleUnitsBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_INBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y189;K"puba" +C;X2;K"PolymorphedUnitsBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_PUBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y190;K"buba" +C;X2;K"BurrowedUnitsBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BUBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y191;K"auba" +C;X2;K"AnimatedUnitsBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AUBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y192;K"fhba" +C;X2;K"FlyingHeroesBestowAuras" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FHBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y193;K"msbs" +C;X2;K"MoveSpeedBonusesStack" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MSBS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y194;K"dueb" +C;X2;K"DrainUsesEtheralBonus" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DUEB" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y195;K"dtli" +C;X2;K"DrainTransfersLife" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DTLI" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y196;K"dtma" +C;X2;K"DrainTransfersMana" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DTMA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y197;K"dgbl" +C;X2;K"DrainGivesBonusLife" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DGBL" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y198;K"dgbm" +C;X2;K"DrainGivesBonusMana" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DGBM" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y199;K"edba" +C;X2;K"EtherealDamageBonusAlly" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_EDBA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y200;K"cdav" +C;X2;K"CanDeactivateAvatar" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDAV" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y201;K"cdaf" +C;X2;K"CanDeactivateAvengerForm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDAF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y202;K"cdbs" +C;X2;K"CanDeactivateBarkskin" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDBS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y203;K"cdbf" +C;X2;K"CanDeactivateBearForm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDBF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y204;K"cdbm" +C;X2;K"CanDeactivateBladestorm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDBM" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y205;K"cdbu" +C;X2;K"CanDeactivateBurrow" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDBU" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y206;K"cdca" +C;X2;K"CanDeactivateCallToArms" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDCA" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y207;K"cdcr" +C;X2;K"CanDeactivateChemicalRage" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDCR" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y208;K"cdcf" +C;X2;K"CanDeactivateCorporealForm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDCF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y209;K"cdde" +C;X2;K"CanDeactivateDefend" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDDE" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y210;K"cdds" +C;X2;K"CanDeactivateDivineShield" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDDS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y211;K"cdim" +C;X2;K"CanDeactivateImmolation" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDIM" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y212;K"cdmf" +C;X2;K"CanDeactivateManaFlare" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDMF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y213;K"cdms" +C;X2;K"CanDeactivateManaShield" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDMS" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y214;K"cdme" +C;X2;K"CanDeactivateMetamorphosis" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDME" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y215;K"cdrf" +C;X2;K"CanDeactivateRavenForm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDRF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y216;K"cdrg" +C;X2;K"CanDeactivateRoboGoblin" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDRG" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y217;K"cdsf" +C;X2;K"CanDeactivateStoneForm" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDSF" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y218;K"cdsu" +C;X2;K"CanDeactivateSubmerge" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDSU" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y219;K"cdww" +C;X2;K"CanDeactivateWindWalk" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CDWW" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y220;K"ruco" +C;X2;K"RelativeUpgradeCost" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_RUCO" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y221;K"dede" +C;X2;K"DefendDeflection" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_DEDE" +C;X8;K"bool" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y222;K"isar" +C;X2;K"ItemSaleAggroRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ISAR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y223;K"usar" +C;X2;K"UnitSaleAggroRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_USAR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y224;K"asar" +C;X2;K"AbilSaleAggroRange" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ASAR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y225;K"itsf" +C;X2;K"ItemShadowFile" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ITSF" +C;X8;K"shadowTexture" +C;X9;K"Image" +C;X10;K1 +C;X11;K1 +C;X12;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y226;K"itso" +C;X2;K"ItemShadowOffset" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_ITSO" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K-1000000 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y227;K"itss" +C;X2;K"ItemShadowSize" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_ITSS" +C;X8;K"unrealList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y228;K"fbdr" +C;X2;K"FadeBuffMinDuration" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FBDR" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1000000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y229;K"fbna" +C;X2;K"FadeBuffMinAlpha" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FBNA" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y230;K"fbxa" +C;X2;K"FadeBuffMaxAlpha" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_FBXA" +C;X8;K"int" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y231;K"cstc" +C;X2;K"CriticalStrikeTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CSTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y232;K"csth" +C;X2;K"CriticalStrikeTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CSTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y233;K"cstv" +C;X2;K"CriticalStrikeTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CSTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y234;K"cstl" +C;X2;K"CriticalStrikeTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CSTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y235;K"cstf" +C;X2;K"CriticalStrikeTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CSTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y236;K"mbtc" +C;X2;K"ManaBurnTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MBTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y237;K"mbth" +C;X2;K"ManaBurnTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MBTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y238;K"mbtv" +C;X2;K"ManaBurnTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MBTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y239;K"mbtl" +C;X2;K"ManaBurnTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MBTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y240;K"mbtf" +C;X2;K"ManaBurnTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MBTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y241;K"mstc" +C;X2;K"MissTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MSTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y242;K"msth" +C;X2;K"MissTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MSTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y243;K"mstv" +C;X2;K"MissTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_MSTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y244;K"mstl" +C;X2;K"MissTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MSTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y245;K"mstf" +C;X2;K"MissTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MSTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y246;K"sstc" +C;X2;K"ShadowStrikeTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_SSTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y247;K"ssth" +C;X2;K"ShadowStrikeTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y248;K"sstv" +C;X2;K"ShadowStrikeTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_SSTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y249;K"sstl" +C;X2;K"ShadowStrikeTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y250;K"sstf" +C;X2;K"ShadowStrikeTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y251;K"botc" +C;X2;K"BountyTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_BOTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y252;K"both" +C;X2;K"BountyTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BOTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y253;K"botv" +C;X2;K"BountyTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_BOTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y254;K"botl" +C;X2;K"BountyTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BOTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y255;K"botf" +C;X2;K"BountyTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_BOTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y256;K"lmtc" +C;X2;K"LumberTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_LMTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y257;K"lmth" +C;X2;K"LumberTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_LMTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y258;K"lmtv" +C;X2;K"LumberTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_LMTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y259;K"lmtl" +C;X2;K"LumberTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_LMTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y260;K"lmtf" +C;X2;K"LumberTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_LMTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y261;K"gdtc" +C;X2;K"GoldTextColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_GDTC" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y262;K"gdth" +C;X2;K"GoldTextHeight" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GDTH" +C;X8;K"unreal" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K0.5 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y263;K"gdtv" +C;X2;K"GoldTextVelocity" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_GDTV" +C;X8;K"unrealList" +C;X10;K3 +C;X11;K1 +C;X12;K0 +C;X13;K-10 +C;X14;K10 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y264;K"gdtl" +C;X2;K"GoldTextLifetime" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GDTL" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y265;K"gdtf" +C;X2;K"GoldTextFadeStart" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_GDTF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y266;K"qito" +C;X2;K"QuestIndicatorTimeout" +C;X3;K"Profile" +C;X4;K"QuestIndicatorTimeout" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_QITO" +C;X8;K"unreal" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y267;K"mrgx" +C;X2;K"MeleeRangeMax" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_MRGX" +C;X8;K"unreal" +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K10000 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y268;K"atkf" +C;X2;K"AttackFast" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ATKF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y269;K"atkn" +C;X2;K"AttackAverage" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ATKN" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y270;K"atks" +C;X2;K"AttackSlow" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_ATKS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y271;K"akvs" +C;X2;K"AttackVerySlow" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_AKVS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K100 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y272;K"spdf" +C;X2;K"SpeedFast" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SPDF" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K522 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y273;K"spdn" +C;X2;K"SpeedAverage" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SPDN" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K522 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y274;K"spds" +C;X2;K"SpeedSlow" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SPDS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K522 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y275;K"spvs" +C;X2;K"SpeedVerySlow" +C;X3;K"Profile" +C;X4;K"InfoPanel" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SPVS" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K522 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y276;K"iwzo" +C;X2;K"ImageWalkableZOffset" +C;X3;K"Profile" +C;X4;K"SelectionCircle" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_IWZO" +C;X8;K"unreal" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K-1000000 +C;X14;K1000000 +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X1;Y277;K"crfd" +C;X2;K"ColorFriend" +C;X3;K"Profile" +C;X4;K"SelectionCircle" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CRFD" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y278;K"crem" +C;X2;K"ColorEnemy" +C;X3;K"Profile" +C;X4;K"SelectionCircle" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CREM" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y279;K"picr" +C;X2;K"PingColor" +C;X3;K"Profile" +C;X4;K"PingColor" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_PICR" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y280;K"pacr" +C;X2;K"PingAttackColor" +C;X3;K"Profile" +C;X4;K"PingColor" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_PACR" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y281;K"pvcr" +C;X2;K"PingAdvisorColor" +C;X3;K"Profile" +C;X4;K"PingColor" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_PVCR" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y282;K"ppcr" +C;X2;K"PingWaypointColor" +C;X3;K"Profile" +C;X4;K"PingColor" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_PPCR" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y283;K"ttna" +C;X2;K"ToolTipName" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TTNA" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y284;K"ttds" +C;X2;K"ToolTipDesc" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TTDS" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y285;K"ttcs" +C;X2;K"ToolTipCost" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_TTCS" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y286;K"cedb" +C;X2;K"ChatEditBar" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CEDB" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y287;K"cbnb" +C;X2;K"CommandButtonNumber" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_CBNB" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y288;K"wftm" +C;X2;K"WorldFrameTopMessage" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_WFTM" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y289;K"wfum" +C;X2;K"WorldFrameUnitMessage" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_WFUM" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y290;K"wfcm" +C;X2;K"WorldFrameChatMessage" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_WFCM" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y291;K"invy" +C;X2;K"Inventory" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_INVY" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y292;K"ptst" +C;X2;K"PortraitStats" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_PTST" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y293;K"utpn" +C;X2;K"UnitTipPlayerName" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_UTPN" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y294;K"utds" +C;X2;K"UnitTipDesc" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_UTDS" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y295;K"ssnn" +C;X2;K"ScoreScreenNormal" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSNN" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y296;K"ssnl" +C;X2;K"ScoreScreenLarge" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSNL" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y297;K"ssnt" +C;X2;K"ScoreScreenTeam" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_SSNT" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y298;K"wfmg" +C;X2;K"WorldFrameMessage" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_WFMG" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y299;K"ldbd" +C;X2;K"LeaderBoard" +C;X3;K"Profile" +C;X4;K"FontHeights" +C;X5;K0 +C;X6;K"WESTRING_MISCVAL_LDBD" +C;X8;K"unreal" +C;X10;K4 +C;X11;K1 +C;X12;K0 +C;X13;K0.0001 +C;X14;K0.032 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X1;Y300;K"caoa" +C;X2;K"LavaSpawnColor" +C;X3;K"Profile" +C;X4;K"Misc" +C;X5;K-1 +C;X6;K"WESTRING_MISCVAL_CAOA" +C;X8;K"intList" +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K255 +C;X15;K1 +C;X16;K1 +C;X17;K0 +E diff --git a/share/mpq/units/units/neutralabilityfunc.txt b/share/mpq/units/units/neutralabilityfunc.txt new file mode 100644 index 0000000..a89aab4 --- /dev/null +++ b/share/mpq/units/units/neutralabilityfunc.txt @@ -0,0 +1,2401 @@ +//----------------------------------------------------------------------------- +// FIRELORD +//----------------------------------------------------------------------------- + +// Incinerate +[ANic] +Art=ReplaceableTextures\PassiveButtons\PASBTNIncinerate.blp +Researchart=ReplaceableTextures\CommandButtons\BTNIncinerate.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +order=incinerate +Missileart=Abilities\Weapons\LordofFlameMissile\LordofFlameMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 + +// Incinerate (Arrow) +[ANia] +Art=ReplaceableTextures\CommandButtons\BTNIncinerateOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNIncinerateOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNIncinerate.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Researchbuttonpos=2,0 +order=incineratearrow +orderon=incineratearrowon +orderoff=incineratearrowon +Missileart=Abilities\Weapons\LordofFlameMissile\LordofFlameMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 + +[BNic] +Buffart=ReplaceableTextures\CommandButtons\BTNIncinerate.blp +Specialart=Abilities\Spells\Other\Incinerate\FireLordDeathExplode.mdl +Targetart=Abilities\Spells\Other\Incinerate\IncinerateBuff.mdl +Targetattach=chest + +// Soul Burn +[ANso] +Art=ReplaceableTextures\CommandButtons\BTNSoulBurn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSoulBurn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +order=soulburn + +[BNso] +Buffart=ReplaceableTextures\CommandButtons\BTNSoulBurn.blp +Targetart=Abilities\Spells\Other\SoulBurn\SoulBurnbuff.mdl +Targetattach=overhead + +// Summon Lava Spawn +[ANlm] +Art=ReplaceableTextures\CommandButtons\BTNLavaSpawn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLavaSpawn.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +order=slimemonster + +[BNlm] +// SpecialArt is used when the lava monster splits, and is played on the source +Missileart=Abilities\Weapons\LavaSpawnMissile\LavaSpawnBirthMissile.mdl +Missilespeed=200 +MissileHoming=1 +Missilearc=.99 + +// Volcano +[ANvc] +Art=ReplaceableTextures\CommandButtons\BTNVolcano.blp +Researchart=ReplaceableTextures\CommandButtons\BTNVolcano.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Animnames=stand,channel +order=volcano + +[BNvc] +Buffart=ReplaceableTextures\CommandButtons\BTNVolcano.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +[XNvc] +Specialart=Abilities\Spells\Other\Volcano\VolcanoDeath.mdl +Effectsoundlooped=VolcanoLoop +Missileart=Abilities\Spells\Other\Volcano\VolcanoMissile.mdl +Missilespeed=400 +MissileHoming=1 +Missilearc=0.8 + +//----------------------------------------------------------------------------- +// TINKER +//----------------------------------------------------------------------------- + +// Summon Factory 0 +[ANsy] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Researchart=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Units\Creeps\HeroTinkerFactory\HeroTinkerFactoryMissle.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 +Animnames=spell,Slam +Order=summonfactory + +// Summon Factory 1 +[ANs1] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Researchart=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Units\Creeps\HeroTinkerFactory\HeroTinkerFactoryMissle.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 +Animnames=spell,Slam +Order=summonfactory + +// Summon Factory 2 +[ANs2] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Researchart=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Units\Creeps\HeroTinkerFactory\HeroTinkerFactoryMissle.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 +Animnames=spell,Slam +Order=summonfactory + +// Summon Factory 3 +[ANs3] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Researchart=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Units\Creeps\HeroTinkerFactory\HeroTinkerFactoryMissle.mdl +Missilespeed=1000 +MissileHoming=1 +Missilearc=0.35 +Animnames=spell,Slam +Order=summonfactory + +[BNfy] + +// Cluster Rockets 0 +[ANcs] +Art=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Researchart=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=clusterrockets +Missileart=Abilities\Spells\Other\TinkerRocket\TinkerRocketMissile.mdl +Missilespeed=700 +MissileHoming=1 +Missilearc=0.2 +Animnamescount=4 +Animnames=spell,one +Animnames1=spell,two +Animnames2=spell,three +Animnames3=spell,three + +// Cluster Rockets 1 +[ANc1] +Art=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Researchart=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=clusterrockets +Missileart=Abilities\Spells\Other\TinkerRocket\TinkerRocketMissile.mdl +Missilespeed=700 +MissileHoming=1 +Missilearc=0.2 +Animnamescount=4 +Animnames=spell,one +Animnames1=spell,two +Animnames2=spell,three +Animnames3=spell,three + +// Cluster Rockets 2 +[ANc2] +Art=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Researchart=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=clusterrockets +Missileart=Abilities\Spells\Other\TinkerRocket\TinkerRocketMissile.mdl +Missilespeed=700 +MissileHoming=1 +Missilearc=0.2 +Animnamescount=4 +Animnames=spell,one +Animnames1=spell,two +Animnames2=spell,three +Animnames3=spell,three + +// Cluster Rockets 3 +[ANc3] +Art=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Researchart=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=clusterrockets +Missileart=Abilities\Spells\Other\TinkerRocket\TinkerRocketMissile.mdl +Missilespeed=700 +MissileHoming=1 +Missilearc=0.2 +Animnamescount=4 +Animnames=spell,one +Animnames1=spell,two +Animnames2=spell,three +Animnames3=spell,three + +[BNcs] +Buffart=ReplaceableTextures\CommandButtons\BTNClusterRockets.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +[XNcs] + +// Engineering Upgrade +[ANeg] +Art=ReplaceableTextures\CommandButtons\PASBTNEngineeringUpgrade.blp +Researchart=ReplaceableTextures\CommandButtons\BTNEngineeringUpgrade.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=engineeringupgrade + +[BNeg] +Buffart=ReplaceableTextures\CommandButtons\BTNEngineeringUpgrade.blp +Targetart=Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestLeft.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestRight.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountLeft.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountRight.mdl +Targetattachcount=4 +Targetattach=chest,left +Targetattach1=chest,right +Targetattach2=chest,mount,left +Targetattach3=chest,mount,right + +// Robo-Goblin 0 +[ANrg] +Art=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Unart=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Researchart=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Order=robogoblin +Unorder=unrobogoblin + +// Robo-Goblin 1 +[ANg1] +Art=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Unart=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Researchart=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Order=robogoblin +Unorder=unrobogoblin + +// Robo-Goblin 2 +[ANg2] +Art=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Unart=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Researchart=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Order=robogoblin +Unorder=unrobogoblin + +// Robo-Goblin 3 +[ANg3] +Art=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Unart=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Researchart=ReplaceableTextures\CommandButtons\BTNROBOGOBLIN.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Researchbuttonpos=3,0 +Order=robogoblin +Unorder=unrobogoblin + +// Demolish 0 +[ANde] +Art=ReplaceableTextures\PassiveButtons\PASBTNDemolish.blp +Buttonpos=1,1 +Order=demolish + +// Demolish 1 +[ANd1] +Art=ReplaceableTextures\PassiveButtons\PASBTNDemolish.blp +Buttonpos=1,1 +Order=demolish + +// Demolish 2 +[ANd2] +Art=ReplaceableTextures\PassiveButtons\PASBTNDemolish.blp +Buttonpos=1,1 +Order=demolish + +// Demolish 3 +[ANd3] +Art=ReplaceableTextures\PassiveButtons\PASBTNDemolish.blp +Buttonpos=1,1 +Order=demolish + +// Factory 0 +[ANfy] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 + +// Factory 1 +[ANf1] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 + +// Factory 2 +[ANf2] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 + +// Factory 3 +[ANf3] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Buttonpos=0,2 + +[BNcg] + +//----------------------------------------------------------------------------- +// ALCHEMIST +//----------------------------------------------------------------------------- + +// Healing Spray +[ANhs] +Art=ReplaceableTextures\CommandButtons\BTNHealingSpray.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHealingSpray.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Other\HealingSpray\HealBottleMissile.mdl +Missilespeed=700 +Missilearc=0.4 +Casterart= +Order=healingspray +Animnames=spell,looping + +[BNhs] +Buffart=ReplaceableTextures\CommandButtons\BTNHealingSpray.blp + +[XNhs] +Specialart=Abilities\Spells\Human\Heal\HealTarget.mdl + +// Acid Bomb +[ANab] +Art=ReplaceableTextures\CommandButtons\BTNAcidBomb.blp +Researchart=ReplaceableTextures\CommandButtons\BTNAcidBomb.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Missileart=Abilities\Spells\Other\AcidBomb\BottleMissile.mdl +Missilespeed=700 +Missilearc=0.4 +MissileHoming=1 +order=acidbomb +Animnames=Attack,two,Spell + +[BNab] +Buffart=ReplaceableTextures\CommandButtons\BTNAcidBomb.blp +Targetart=Abilities\Spells\Other\AcidBomb\BottleImpact.mdl +Targetattach=chest + +// Chemical Rage +[ANcr] +Art=ReplaceableTextures\CommandButtons\BTNChemicalRage.blp +Researchart=ReplaceableTextures\CommandButtons\BTNChemicalRage.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +order=chemicalrage + +[BNcr] +Buffart=ReplaceableTextures\CommandButtons\BTNChemicalRage.blp + +// Transmute +[ANtm] +Art=ReplaceableTextures\CommandButtons\BTNTransmute.blp +Researchart=ReplaceableTextures\CommandButtons\BTNTransmute.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Missileart=Abilities\Spells\Other\Transmute\GoldBottleMissile.mdl +Missilespeed=700 +Missilearc=0.4 +MissileHoming=1 +order=transmute +Animnames=Attack,two,Spell + +[BNtm] +Buffart=ReplaceableTextures\CommandButtons\BTNTransmute.blp +Specialart=Abilities\Spells\Other\Transmute\PileofGold.mdl + +//----------------------------------------------------------------------------- +//----------------------------------------------------------------------------- + + +//glyph of foritifaciton +[AIgf] + +//Glyph of Ultravision +[AIgu] + +//slow on tornado +[Aasl] + +//tornado damage +[Atdg] + +//Tornado Spin +[Atsp] + +//Tornado Wander +[Atwa] + + +//spawn skeleton +[Asod] + + + + +// Orb of Annihilation +[ANak] +Art=ReplaceableTextures\CommandButtons\BTNQuillSpray.blp +Unart=ReplaceableTextures\CommandButtons\BTNQuillSprayOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Missileart=Abilities\Weapons\QuillSprayMissile\QuillSprayMissile.mdl +Missilespeed=1500 +MissileHoming=1 + +// Blink (beastmaster bear) +[ANbl] +Art=ReplaceableTextures\CommandButtons\BTNBearBlink.blp +Buttonpos=0,2 +Order=blink +// Art to play at the new coordinate +Areaeffectart=Abilities\Spells\NightElf\Blink\BlinkTarget.mdl +// Art to leave behind at old coordinate +Specialart=Abilities\Spells\NightElf\Blink\BlinkCaster.mdl +Animnames=spell,throw + +// Burrow (Barbed Arachnathid) +[Abu5] +Art=ReplaceableTextures\CommandButtons\BTNCryptFiendBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNCryptFiendUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=burrow +Unorder=unburrow + +// Parasite (Eredar) +[ACpa] +Art=ReplaceableTextures\CommandButtons\BTNParasiteOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNParasiteOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Missileart=Abilities\Spells\Other\Parasite\ParasiteMissile.mdl +Missilespeed=1900 +Missilehoming=1 +Orderon=parasiteon +Orderoff=parasiteoff +Order=parasite + +// Siphon Mana (Creep) +[ACsm] +Art=ReplaceableTextures\CommandButtons\BTNManaDrain.blp +Buttonpos=2,2 +Effectsoundlooped=SiphonManaLoop +Animnames=stand,channel +LightningEffect=DRAB,DRAL,DRAM + +// Banish +[ACbn] +Art=ReplaceableTextures\CommandButtons\BTNBanish.blp +Buttonpos=1,2 +Order=banish + +// Devour Magic (Creep) +[ACde] +Art=ReplaceableTextures\CommandButtons\BTNDevourMagic.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Undead\DevourMagic\DevourMagicBirthMissile.mdl +Missilespeed=1500 +MissileHoming=1 + +// Chain Dispel +[Ache] +Buttonpos=1,2 +Art=ReplaceableTextures\CommandButtons\BTNWandOfNeutralization.blp +Missileart=Abilities\Spells\Items\WandOfNeutralization\NeutralizationMissile.mdl +Missilespeed=900 +MissileHoming=1 + + + +// Hardened Skin +[Ansk] +Art=ReplaceableTextures\PassiveButtons\PASBTNHardenedSkin.blp +Buttonpos=2,2 +Casterart= + +// Mana Shield +[ANms] +Art=ReplaceableTextures\CommandButtons\BTNNeutralManaShield.blp +Unart=ReplaceableTextures\CommandButtons\BTNNeutralManaShieldOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNNeutralManaShield.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Researchbuttonpos=2,0 +Effectsound=ManaShieldCastSound +Orderon=manashieldon +Orderoff=manashieldoff + +[BNms] +Buffart=ReplaceableTextures\CommandButtons\BTNNeutralManaShield.blp +Targetart=Abilities\Spells\Human\ManaShield\ManaShieldCaster.mdl + +// Rain of Fire +[ANrf] +Art=ReplaceableTextures\CommandButtons\BTNFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Casterart= +Order=rainoffire +Animnames=spell,looping + +// Rain of Fire (creep, greater) +[ACrg] +Art=ReplaceableTextures\CommandButtons\BTNFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Casterart= +Order=rainoffire +Animnames=spell,looping + +[BNrd] +Buffart=ReplaceableTextures\CommandButtons\BTNFire.blp +Targetart=Abilities\Spells\Human\FlameStrike\FlameStrikeDamageTarget.mdl + +[XErf] +Effectart=Abilities\Spells\Demon\RainOfFire\RainOfFireTarget.mdl +Effectsoundlooped=RainOfFireLoop +Effectsound=RainOfFireWave + +// Frost Arrows +[ANfa] +Art=ReplaceableTextures\CommandButtons\BTNColdArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNColdArrowsOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNColdArrows.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\FrostArrows\NagaColdArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Animnames=attack + +// Cold Arrows +[AHca] +Art=ReplaceableTextures\CommandButtons\BTNColdArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNColdArrowsOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNColdArrows.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Weapons\ColdArrow\ColdArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Animnames=attack + +// Cold Arrow Buff (Non-Stacking) +[BHca] +Buffart=ReplaceableTextures\CommandButtons\BTNColdArrows.blp +Targetart= + +// Cold Arrow Buff (Stacking) +[Bcsd] +Buffart=ReplaceableTextures\CommandButtons\BTNColdArrows.blp +Targetart= + +// Cold Arrow Buff (Stack Info) +[Bcsi] + +// Cleaving Attack +[ANca] +Art=ReplaceableTextures\PassiveButtons\PASBTNCleavingAttack.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNCleavingAttack.blp +Researchbuttonpos=2,0 +Specialart=Abilities\Spells\Other\Cleave\CleaveDamageTarget.mdl +Specialattach=chest + +// Cleaving Attack (creep) +[ACce] +Art=ReplaceableTextures\PassiveButtons\PASBTNCleavingAttack.blp +Buttonpos=1,2 +Specialart=Abilities\Spells\Other\Cleave\CleaveDamageTarget.mdl +Specialattach=chest + +// Howl of Terror +[ANht] +Art=ReplaceableTextures\CommandButtons\BTNHowlOfTerror.blp +Buttonpos=1,2 +Researchart=ReplaceableTextures\CommandButtons\BTNHowlOfTerror.blp +Researchbuttonpos=1,0 +Casterart=Abilities\Spells\Other\HowlOfTerror\HowlCaster.mdl +Order=howlofterror +Animnames=spell,slam + +[BNht] +Buffart=ReplaceableTextures\CommandButtons\BTNHowlOfTerror.blp +Targetart=Abilities\Spells\Other\HowlOfTerror\HowlTarget.mdl + +// Howl of Terror +[Acht] +Art=ReplaceableTextures\CommandButtons\BTNHowlOfTerror.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\Other\HowlOfTerror\HowlCaster.mdl +Order=howlofterror +Animnames=spell,slam + +// Doom +[ANdo] +Art=ReplaceableTextures\CommandButtons\BTNDoom.blp +Buttonpos=3,2 +Researchart=ReplaceableTextures\CommandButtons\BTNDoom.blp +Researchbuttonpos=3,0 +Order=doom + +[BNdo] +Buffart=ReplaceableTextures\CommandButtons\BTNDoom.blp +Targetart=Abilities\Spells\Other\Doom\DoomTarget.mdl + +[BNdi] +// no buffart, this is not displayed +Targetart=Abilities\Spells\Other\Doom\DoomDeath.mdl +Effectart=Abilities\Spells\Other\Doom\DoomDeath.mdl + +// Earth, Storm, and Fire +[ANef] +Art=ReplaceableTextures\CommandButtons\BTNStormEarth&Fire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStormEarth&Fire.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl +Order=elementalfury +Missileart=Units\Creeps\FirePandarenBrewmaster\FirePandarenBrewmaster_Missile.mdl,Units\Creeps\StormPandarenBrewmaster\StormPandarenBrewmaster_Missile.mdl,Units\Creeps\EarthPandarenBrewmaster\EarthPandarenBrewmaster_Missile.mdl +Missilearc=0.75 +Missilespeed=150 +Effectsound=StormEarthFireSound +Animnames=spell,throw + +[BNef] +Buffart=ReplaceableTextures\CommandButtons\BTNStormEarth&Fire.blp +// Effectart on birth +Effectart=Abilities\Spells\Orc\MirrorImage\MirrorImageDeathCaster.mdl +// Specialart on death +Specialart=Abilities\Spells\Orc\MirrorImage\MirrorImageDeathCaster.mdl + +// Wind Walk (Creep) +[ANwk] +Art=ReplaceableTextures\CommandButtons\BTNWindWalkOn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWindWalkOn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Effectsound=WindWalk +Order=windwalk + +// Taunt (neutral) +[ANta] +Art=ReplaceableTextures\CommandButtons\BTNPandaTaunt.blp +Buttonpos=0,2 +Order=taunt +Casterart=Abilities\Spells\NightElf\Taunt\TauntCaster.mdl + +// Life Drain +[ANdr] +Art=ReplaceableTextures\CommandButtons\BTNLifeDrain.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLifeDrain.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Effectsoundlooped=DrainLoop +Animnames=spell,channel +LightningEffect=DRAB,DRAL,DRAM + +// Life Drain(Creep) +[ACdr] +Art=ReplaceableTextures\CommandButtons\BTNLifeDrain.blp +Buttonpos=0,2 +Effectsoundlooped=DrainLoop +Animnames=stand,channel +LightningEffect=DRAB,DRAL,DRAM + +// Unit Inventory (2 slot) +// undead +[Aiun] +Requires=Rupm +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp + +// orc +[Aion] +Requires=Ropm +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp + +// human +[Aihn] +Requires=Rhpm +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp + +// night elf +[Aien] +Requires=Repm +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp + +// Summon Grizzly +[ANsg] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Buttonpos=0,2 +Researchart=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=summongrizzly +Animnames=spell,slam + +[BNsg] +Buffart=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Summon Quillbeast +[ANsq] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Buttonpos=1,2 +Researchart=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Researchbuttonpos=1,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=summonquillbeast +Animnames=spell,slam + +[BNsq] +Buffart=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Summon War Eagle +[ANsw] +Art=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=summonwareagle +Animnames=spell,slam + +[BNsw] +Buffart=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Stampede +[ANst] +Art=ReplaceableTextures\CommandButtons\BTNStampede.blp +Buttonpos=3,2 +Researchart=ReplaceableTextures\CommandButtons\BTNStampede.blp +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl +Missileart=Abilities\Spells\Other\Stampede\StampedeMissile.mdl +Missilespeed=500 +Effectsoundlooped=StampedeLoop +//#LINENOBETA +Effectsound=StampedeCast +Order=stampede +Animnames=spell,looping + +// Hex (Creep) +[AChx] +Art=ReplaceableTextures\CommandButtons\BTNHex.blp +Buttonpos=1,2 +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl +Order=hex + +// Entangling Roots Seaweed Version (Creep) +[Aenw] +Art=ReplaceableTextures\CommandButtons\BTNEntanglingRoots.blp +Buttonpos=0,2 +Casterart= +Order=entanglingroots + +// Healing Wave (creep) +[AChV] +Art=ReplaceableTextures\CommandButtons\BTNHealingWave.blp +Buttonpos=0,2 +Targetart=Abilities\Spells\Orc\HealingWave\HealingWaveTarget.mdl +Order=healingwave +Animnames=spell,throw +LightningEffect=HWPB,HWSB + +// Silence (Creep) +[ACsi] +Art=ReplaceableTextures\CommandButtons\BTNSilence.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSilence.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=silence +Effectart=Abilities\Spells\Other\Silence\SilenceAreaBirth.mdl + +// Mana Shield(Creep) +[ACmf] +Art=ReplaceableTextures\CommandButtons\BTNNeutralManaShield.blp +Unart=ReplaceableTextures\CommandButtons\BTNneutralManaShieldOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNNeutralManaShield.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Effectsound=ManaShieldCastSound +Order=manashield + +// Shadow Strike +[ACss] +Art=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Researchart=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Missileart=Abilities\Spells\NightElf\shadowstrike\ShadowStrikeMissile.mdl +Missilespeed=1200 +MissileArc=0.0 +MissileHoming=1 +Order=shadowstrike + +// Frost Bolt +[ACcb] +Art=ReplaceableTextures\CommandButtons\BTNFrostBolt.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Other\FrostBolt\FrostBoltMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Order=thunderbolt +Animnames=spell,throw + +// Breath of Frost (creep) +[ACbf] +Art=ReplaceableTextures\CommandButtons\BTNBreathOfFrost.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Other\BreathOfFrost\BreathOfFrostMissile.mdl +Missilespeed=1050 +Order=breathoffire +Animnames=spell,slam + +[BCbf] +Buffart=ReplaceableTextures\CommandButtons\BTNBreathOfFrost.blp +Targetart=Abilities\Spells\Other\BreathOfFrost\BreathOfFrostTarget.mdl +Targetattach= + +// Breath of Fire (creep) +[ACbc] +Art=ReplaceableTextures\CommandButtons\BTNFireForTheCannon.blp +Researchart=ReplaceableTextures\CommandButtons\BTNFireForTheCannon.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Other\BreathOfFire\BreathOfFireMissile.mdl +Missilespeed=1050 +Targetart=Abilities\Spells\Other\BreathOfFire\BreathOfFireDamage.mdl +Order=breathoffire +Animnames=spell,slam + +// Flame Strike +[ACfs] +Art=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=flamestrike +// Beware art +Effectart=Abilities\Spells\Human\FlameStrike\FlameStrikeTarget.mdl +// Impact art +Specialart=Abilities\Spells\Human\FlameStrike\FlameStrike1.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike2.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike.mdl +Animnames=spell,channel + +// Flame Strike (improved creep) +[ANfs] +Art=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=flamestrike +// Beware art +Effectart=Abilities\Spells\Human\FlameStrike\FlameStrikeTarget.mdl +// Impact art +Specialart=Abilities\Spells\Human\FlameStrike\FlameStrike1.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike2.mdl,Abilities\Spells\Human\FlameStrike\FlameStrike.mdl +Animnames=spell,channel + +// Impale +[ACmp] +Art=ReplaceableTextures\CommandButtons\BTNImpale.blp +Researchart=ReplaceableTextures\CommandButtons\BTNImpale.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Specialart=Abilities\Spells\Undead\Impale\ImpaleMissTarget.mdl +Order=impale + +// Neutral Build +[ANbu] +Art=ReplaceableTextures\CommandButtons\BTNBasicStruct.blp +Buttonpos=0,2 +Order=build + +// Inventory +[AInv] + +// Thorns +[ANth] +Art=ReplaceableTextures\PassiveButtons\PASBTNThornShield.blp +Researchart=ReplaceableTextures\CommandButtons\BTNThornShield.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Order=Thornyshield +Unorder=Unthornyshield + +// Thorns, dragon turtle, 2,2 button pos +[ANt2] +Art=ReplaceableTextures\PassiveButtons\PASBTNThornShield.blp +Researchart=ReplaceableTextures\CommandButtons\BTNThornShield.blp +Buttonpos=2,2 +Researchbuttonpos=1,0 +Order=Thornyshield + + +// Mind Rot +[ANmr] +Art=ReplaceableTextures\CommandButtons\BTNTemp.blp +Buttonpos=0,2 +Order=mindrot + +[BNmr] +Buffart=ReplaceableTextures\CommandButtons\BTNTemp.blp + +// Preservation +[ANpr] + +// Pulverize (sea giant) +[ACpv] +Art=ReplaceableTextures\PassiveButtons\PASBTNSeaGiantPulverize.blp +Buttonpos=0,2 +Animnames=slam + +// Spell Shield +[ANss] + +// Breath of Fire +[ANbf] +Art=ReplaceableTextures\CommandButtons\BTNBreathOfFire.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBreathOfFire.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Other\BreathOfFire\BreathOfFireMissile.mdl +Missilespeed=1050 +Order=breathoffire +Animnames=spell,slam + +[BNbf] +Buffart=ReplaceableTextures\CommandButtons\BTNBreathOfFire.blp +Targetart=Abilities\Spells\Other\BreathOfFire\BreathOfFireDamage.mdl +Targetattach= + +// Drunken Brawler +[ANdb] +Art=ReplaceableTextures\PassiveButtons\PASBTNDrunkenDodge.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDrunkenDodge.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 + +// Drunken Haze +[ANdh] +Art=ReplaceableTextures\CommandButtons\BTNStrongDrink.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStrongDrink.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\StrongDrink\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Order=drunkenhaze + +[BNdh] +Buffart=ReplaceableTextures\CommandButtons\BTNStrongDrink.blp +Targetart=Abilities\Spells\Other\StrongDrink\BrewmasterTarget.mdl +Targetattach=overhead + +// Silence +[ANsi] +Art=ReplaceableTextures\CommandButtons\BTNSilence.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSilence.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=silence +Effectart=Abilities\Spells\Other\Silence\SilenceAreaBirth.mdl + +[BNsi] +Buffart=ReplaceableTextures\CommandButtons\BTNSilence.blp +Targetart=Abilities\Spells\Other\Silence\SilenceTarget.mdl +Targetattach=overhead + +// Black Arrow +[ANba] +Art=ReplaceableTextures\CommandButtons\BTNTheBlackArrowOnOff.blp +Unart=ReplaceableTextures\CommandButtons\BTNTheBlackArrowOnOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNTheBlackArrow.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\BlackArrow\BlackArrowMissile.mdl +Missilespeed=1050 +MissileHoming=1 +Orderon=blackarrowon +Orderoff=blackarrowoff +Order=blackarrow +Animnames=attack + +[BNba] +Buffart=ReplaceableTextures\CommandButtons\BTNTheBlackArrow.blp + +[BNdm] +Buffart=ReplaceableTextures\CommandButtons\BTNTheBlackArrow.blp + +// Black Arrow +[ACbk] +Art=ReplaceableTextures\CommandButtons\BTNTheBlackArrowOnOff.blp +Unart=ReplaceableTextures\CommandButtons\BTNTheBlackArrowOnOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Missileart=Abilities\Spells\Other\BlackArrow\BlackArrowMissile.mdl +Missilespeed=1050 +MissileHoming=1 +Orderon=blackarrowon +Orderoff=blackarrowoff +Order=blackarrow +Animnames=attack + +// Charm (Creep) +[ACch] +Art=ReplaceableTextures\CommandButtons\BTNCharm.blp +Buttonpos=3,2 +Order=charm +Targetart=Abilities\Spells\Other\Charm\CharmTarget.mdl +Targetattach=overhead + +// Charm +[ANch] +Art=ReplaceableTextures\CommandButtons\BTNCharm.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCharm.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=charm +Targetart=Abilities\Spells\Other\Charm\CharmTarget.mdl +Targetattach=overhead + +[BNch] +//disabled because charm is now permanent +//Buffart=ReplaceableTextures\CommandButtons\BTNCharm.blp + +// Monsoon +[ANmo] +Art=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Casterart= +Order=monsoon +Animnames=stand,channel + +[ANmd] +Targetart=Abilities\Spells\Other\Monsoon\MonsoonBoltTarget.mdl +Targetattach=origin + +[BNmo] +Buffart=ReplaceableTextures\CommandButtons\BTNMonsoon.blp + +[XNmo] +Effectart=Abilities\Spells\Other\Monsoon\MonsoonRain.mdl +Effectsoundlooped=MonsoonLoop + +// creep monsoon +[ACmo] +Art=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=monsoon +Animnames=stand,channel + +// Watery Minion +[ANwm] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=wateryminion + +[BNwm] +Buffart=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// watery minion makrura +[Aslp] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=wateryminion + +// Tornado +[ANto] +Art=ReplaceableTextures\CommandButtons\BTNTornado.blp +Researchart=ReplaceableTextures\CommandButtons\BTNTornado.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Casterart= +Order=tornado +Animnames=spell,channel + +// Tornado - Slow Aura +[Basl] +Buffart=ReplaceableTextures\CommandButtons\BTNTornado.blp +Targetart=Abilities\Spells\Other\Tornado\Tornado_Target.mdl + +// Tornado - Spin +[Btsp] +Buffart=ReplaceableTextures\CommandButtons\BTNTornado.blp +Effectart=Abilities\Spells\Other\Tornado\TornadoElementalSmall.mdl +Effectattach=sprite,first + +[XNto] +Effectart=Abilities\Spells\Other\Tornado\Tornado.mdl + +[BNto] +Effectsoundlooped=TornadoLoop + +// Healing Ward (Creep) +[AChw] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp +Buttonpos=0,2 +Order=healingward + +// Rejuvenation (Furbolg) +[ACr2] +Art=ReplaceableTextures\CommandButtons\BTNRejuvenation.blp +Buttonpos=0,2 +order=rejuvination + +// magic immunity (creep) +[ACmi] +Art=ReplaceableTextures\PassiveButtons\PASBTNGenericSpellImmunity.blp +Buttonpos=2,2 + +// Magic Immunity (Archimonde) +[ACm2] +Art=ReplaceableTextures\PassiveButtons\PASBTNGenericSpellImmunity.blp +Buttonpos=1,1 + +// Magic Immunity (Dragons) +[ACm3] +Art=ReplaceableTextures\PassiveButtons\PASBTNGenericSpellImmunity.blp +Buttonpos=1,2 + +// creep polymorph +[ACpy] +Art=ReplaceableTextures\CommandButtons\BTNPolymorph.blp +Buttonpos=2,2 +Casterart= +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphTarget.mdl +Effectart=Abilities\Spells\Human\Polymorph\PolyMorphFallingSheepArt.mdl +Order=polymorph + +// creep possession +[ACps] +Art=ReplaceableTextures\CommandButtons\BTNPossession.blp +Buttonpos=2,2 +Missileart=Abilities\Spells\Undead\Possession\PossessionMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=possession + +// creep purge +[ACpu] +Art=ReplaceableTextures\CommandButtons\BTNPurge.blp +Specialart=Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl +Buttonpos=0,2 +Order=purge + +// general detect invis +[Adtg] +Art=ReplaceableTextures\PassiveButtons\PASBTNScout.blp +Buttonpos=0,2 + +// general detect invis +[ANtr] +Art=ReplaceableTextures\PassiveButtons\PASBTNScout.blp +Buttonpos=0,2 + +// Revenge +[Arng] +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Targetart=Abilities\Weapons\Mortar\MortarMissile.mdl + +// Dark Conversion +[ANdc] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=darkconversion + +[BNdc] +Buffart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Targetart=Abilities\Spells\Undead\Sleep\SleepTarget.mdl +Targetattach=overhead +Effectart=Abilities\Spells\Demon\DarkConversion\ZombifyTarget.mdl + +// Dark Conversion (Fast) +[SNdc] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=darkconversion + +// Soul Preservation +[ANsl] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=soulpreservation + +[BNsl] +Buffart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Effectsound=SoulPreservation + +// Inferno (Tichondrius) +[SNin] +Researchart=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Art=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=inferno +Effectart=Units\Demon\Infernal\InfernalBirth.mdl + +// Dark Portal +[ANdp] +Art=ReplaceableTextures\CommandButtons\BTNDizzy.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDizzy.blp +Effectart=Abilities\Spells\Demon\DarkPortal\DarkPortalTarget.mdl +Buttonpos=0,2 +Researchbuttonpos=0,0 + +// Rain of Chaos +[ANrc] +Art=ReplaceableTextures\CommandButtons\BTNInfernalStone.blp +Researchart=ReplaceableTextures\CommandButtons\BTNInfernalStone.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Animnames=spell,slam + +// Rain of Chaos (modified button pos) +[ANr3] +Art=ReplaceableTextures\CommandButtons\BTNInfernalStone.blp +Researchart=ReplaceableTextures\CommandButtons\BTNInfernalStone.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Animnames=spell,slam + +// Finger of Death +[ANfd] +Art=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Targetart=Abilities\Spells\Demon\DemonBoltImpact\DemonBoltImpact.mdl +LightningEffect=AFOD + +// Finger of Pain +[ACfd] +Art=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Demon\DemonBoltImpact\DemonBoltImpact.mdl +LightningEffect=AFOD + +// Finger of Pain +[ACf3] +Art=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Buttonpos=2,1 +Researchbuttonpos=0,1 +Targetart=Abilities\Spells\Demon\DemonBoltImpact\DemonBoltImpact.mdl +LightningEffect=AFOD + +// Finger of Death +[Afod] +Art=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCorpseExplode.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Targetart=Abilities\Spells\Demon\DemonBoltImpact\DemonBoltImpact.mdl +LightningEffect=AFOD + +// Cargo Hold Death +[Achd] + +[Bchd] +Buffart=ReplaceableTextures\CommandButtons\BTNDizzy.blp +Targetart=Abilities\Spells\Orc\StasisTrap\StasisTotemTarget.mdl +Targetattach=overhead + +// permanent immolation +[ANpi] +Art=ReplaceableTextures\PassiveButtons\PASBTNImmolation.blp +Buttonpos=0,2 + +// Permanent immolation buff +[BNpi] +Targetart= +Specialart=Abilities\Spells\NightElf\Immolation\ImmolationDamage.mdl +Specialattach=head + +[Apig] +Art=ReplaceableTextures\PassiveButtons\PASBTNImmolation.blp +Buttonpos=0,2 + +[Bpig] +Targetart=Abilities\Spells\Other\ImmolationRed\ImmolationRedTarget.mdl +Targetattach=chest +Specialart=Abilities\Spells\Other\ImmolationRed\ImmolationRedDamage.mdl +Specialattach=chest + +// Bunker +[Abun] +Effectsound=LoadUnload + +[Sbtl] +Art=ReplaceableTextures\CommandButtons\BTNBattleStations.blp +Buttonpos=0,2 +Effectsound=BurrowBattleStations +Order=battlestations + +// Cargo Hold +[Acar] +Effectsound=LoadUnload + +// Cargo Load +[Aloa] +Art=ReplaceableTextures\CommandButtons\BTNLoad.blp +Buttonpos=0,2 +Order=load + +// Cargo Unload +[Adro] +Art=ReplaceableTextures\CommandButtons\BTNUnLoad.blp +Buttonpos=1,2 +Order=unload + +[Sdro] +Art=ReplaceableTextures\CommandButtons\BTNUnLoad.blp +Buttonpos=1,2 +Order=unload + +// Cargo Unload (Instant) +[Adri] +Art=ReplaceableTextures\CommandButtons\BTNUnLoad.blp +Buttonpos=1,2 +Order=unload + +// Neutral Spell +[AAns] +Art=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=0,0 + +// Reveal +[Andt] +Art=ReplaceableTextures\CommandButtons\BTNReveal.blp +Buttonpos=0,0 + +// Currently Unused +// Neutral G2L Exchange +[ANgl] +Art=ReplaceableTextures\CommandButtons\BTNGLExchange.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\Other\TempSpellArt\TempSpellArt.mdl +Targetart=Abilities\Spells\Other\TempSpellArt\TempSpellArt.mdl + +// Currently Unused +// Neutral L2G Exchange +[ANlg] +Art=ReplaceableTextures\CommandButtons\BTNLGExchange.blp +Buttonpos=0,0 +Casterart=Abilities\Spells\Other\TempSpellArt\TempSpellArt.mdl +Targetart=Abilities\Spells\Other\TempSpellArt\TempSpellArt.mdl + +// imparts ANrl, life regeneration, on nearby units, this ability is on Fountain of Life (nmoo) +[ANre] + +// persistent life regeneration, per unit +[ANrl] +Targetart=Abilities\Spells\Other\ANrm\ANrmTarget.mdl +Effectsoundlooped=FountainOfLifeLoop + +// persistent mana regeneration, per unit +[ANrm] +Targetart=Abilities\Spells\Other\ANrl\ANrlTarget.mdl +Effectsoundlooped=FountainOfLifeLoop + +// cargo hold meat wagon +[Sch2] +Effectsound=LoadUnload + +// cargo hold transport +[Sch3] +Effectsound=LoadUnload + +// cargo hold tank +[Sch4] +Effectsound=LoadUnload + +// cargo hold ship +[Sch5] +Effectsound=LoadUnload + +// 'select hero to use' ability for neutral buildings +[Aneu] +Art=ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelectHeroOff.blp +Buttonpos=0,0 +Unbuttonpos=3,2 +Casterart=Abilities\Spells\Other\Aneu\AneuCaster.mdl +Targetart=Abilities\Spells\Other\Aneu\AneuTarget.mdl +Casterattach=overhead +Targetattach=overhead + +// select any unit +[Ane2] +Art=ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelectHeroOff.blp +Buttonpos=0,0 +Unbuttonpos=3,2 +Casterart=Abilities\Spells\Other\Aneu\AneuCaster.mdl +Targetart=Abilities\Spells\Other\Aneu\AneuTarget.mdl +Casterattach=overhead +Targetattach=overhead + +// 'select hero to use' ability for allied buildings +[Aall] +Art=ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelectHeroOff.blp +Buttonpos=0,0 +Unbuttonpos=3,2 +Casterart=Abilities\Spells\Other\Aneu\AneuCaster.mdl +Targetart=Abilities\Spells\Other\Aneu\AneuTarget.mdl +Casterattach=overhead +Targetattach=overhead + +// expand view ability +//[ANex] +//Art=ReplaceableTextures\CommandButtons\BTNExpandedView.blp +//Buttonpos=0,0 + +// Inferno +[ANin] +Researchart=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Art=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Effectart=Units\Demon\Infernal\InfernalBirth.mdl +Order=inferno + +// Spy +[ANsp] +Art=ReplaceableTextures\CommandButtons\BTNSpy.blp +Buttonpos=0,0 + +// Kaboom! +[Asds] +Art=ReplaceableTextures\CommandButtons\BTNSelfDestructOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelfDestructOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=selfdestruct + +// Kaboom! (clockwerk, level 1) +[Asdg] +Art=ReplaceableTextures\CommandButtons\BTNSelfDestructOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelfDestructOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=selfdestruct + +// Kaboom! (clockwerk, level 2) +[Asd2] +Art=ReplaceableTextures\CommandButtons\BTNSelfDestructOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelfDestructOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=selfdestruct + +// Kaboom! (clockwerk, level 3) +[Asd3] +Art=ReplaceableTextures\CommandButtons\BTNSelfDestructOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSelfDestructOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=selfdestruct + +// Medivh Crow Form +[Amrf] +Art=ReplaceableTextures\CommandButtons\BTNRavenForm.blp +Unart=ReplaceableTextures\CommandButtons\BTNMedivh.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=ravenform +Unorder=unravenform + +// Neutral Unit Healing +[Anhe] +Art=ReplaceableTextures\CommandButtons\BTNHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNHealOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=heal +Orderon=healon +Orderoff=healoff + +// Creep slow +[ACsw] +Art=ReplaceableTextures\CommandButtons\BTNSlowOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSlowOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart=Abilities\Spells\Human\Slow\SlowCaster.mdl +Order=slow +Orderon=slowon +Orderoff=slowoff + +// Creep Thunder Clap +[ACtc] +Art=ReplaceableTextures\CommandButtons\BTNGolemThunderclap.blp +Buttonpos=1,2 +Casterart=Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl +Casterattach=origin +Effectart= +Order=creepthunderclap +Animnames=spell,slam + +[BCtc] +Buffart=ReplaceableTextures\CommandButtons\BTNGolemThunderclap.blp +Targetart=Abilities\Spells\Orc\StasisTrap\StasisTotemTarget.mdl +Targetattach=overhead + +// Creep Thunder Clap (Thunder Lizard) +[ACt2] +Art=ReplaceableTextures\CommandButtons\BTNGolemThunderclap.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\Human\Thunderclap\ThunderClapCaster.mdl +Casterattach=origin +Effectart= +Order=creepthunderclap +Animnames=spell,slam + +// Creep Storm Bolt +[ACtb] +Art=ReplaceableTextures\CommandButtons\BTNGolemStormBolt.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\RockBoltMissile\RockBoltMissile.mdl +Missilearc=.30 +Missilespeed=1000 +Order=creepthunderbolt +Animnames=spell,throw + +// creep bloodlust (B hotkey version) +[ACbb] +Art=ReplaceableTextures\CommandButtons\BTNBloodLustOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNBloodLustOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=bloodlust +OrderOn=bloodluston +OrderOff=bloodlustoff + +// Quill Beast Frenzy (beastmaster) +[Afzy] +Art=ReplaceableTextures\CommandButtons\BTNBloodLustOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNBloodLustOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=frenzy +OrderOn=frenzyon +OrderOff=frenzyoff + +[Bfzy] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNBloodLust.blp +Targetart=Abilities\Spells\Orc\Bloodlust\BloodlustTarget.mdl,Abilities\Spells\Orc\Bloodlust\BloodlustSpecial.mdl +Targetattachcount=2 +Targetattach=hand,left +Targetattach1=hand,right + +// creep bloodlust +[ACbl] +Art=ReplaceableTextures\CommandButtons\BTNBloodLustOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNBloodLustOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=bloodlust +OrderOn=bloodluston +OrderOff=bloodlustoff + +// creep cannibalize +[ACcn] +Art=ReplaceableTextures\CommandButtons\BTNCannibalize.blp +Buttonpos=0,2 +Order=cannibalize +Animnames=spell,channel + +// Dragon Creep Devour +[ACdv] +Art=ReplaceableTextures\CommandButtons\BTNRedDragonDevour.blp +Buttonpos=0,2 +Order=creepdevour +Animnames=attack,spell + +// demon reincarnation +[ANrn] +Art=ReplaceableTextures\PassiveButtons\PASBTNReincarnation.blp +Researchart=ReplaceableTextures\CommandButtons\BTNReincarnation.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl + +// Creep Firebolt +[ANfb] +Art=ReplaceableTextures\CommandButtons\BTNFireBolt.blp +Buttonpos=0,2 +Researchart=ReplaceableTextures\CommandButtons\BTNFireBolt.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Animnames=spell,throw + +// spawn spiderlings on death +[Assp] + +// spawn spiders on death +[Aspd] + +// spawn hydra on death +[Aspy] + +// spawn hydra hatchling on death +[Aspt] + +[AOac] +Art=ReplaceableTextures\PassiveButtons\PASBTNGnollCommandAura.blp +Buttonpos=0,2 +Targetart=Abilities\Spells\Orc\WarDrums\DrumsCasterHeal.mdl +Targetattach=origin + +[ACac] +Art=ReplaceableTextures\PassiveButtons\PASBTNGnollCommandAura.blp +Buttonpos=0,2 +Targetart=Abilities\Spells\Orc\WarDrums\DrumsCasterHeal.mdl +Targetattach=origin + +[BOac] +SpellDetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNGnollCommandAura.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +[Btlf] +Buffart=ReplaceableTextures\CommandButtons\BTNAcorn.blp + +[ACad] +Art=ReplaceableTextures\CommandButtons\BTNAnimateDead.blp +Buttonpos=3,2 +Specialart=Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl +Order=animatedead + +[ACrn] +Tip=Reincarnation +Art=ReplaceableTextures\PassiveButtons\PASBTNReincarnation.blp +Buttonpos=3,2 +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl + +// demon mana burn +[Ambd] +Art=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\NightElf\ManaBurn\ManaBurnTarget.mdl +Order=manaburn +LightningEffect=MBUR + +// version 2 mana burn +[Amnb] +Art=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\NightElf\ManaBurn\ManaBurnTarget.mdl +Order=manaburn +LightningEffect=MBUR + +// version 2 mana burn +[Ambb] +Art=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\NightElf\ManaBurn\ManaBurnTarget.mdl +Order=manaburn +LightningEffect=MBUR + +// creep sleep +[ACsl] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Buttonpos=1,2 +Order=sleep + +// Sleep always +[Asla] +Casterart=Abilities\Spells\Other\CreepSleep\CreepSleepTarget.mdl +Casterattach=overhead +Effectsoundlooped=CreepSleepSnoreLoop + +// creeps sleeping +[ACsp] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Casterart=Abilities\Spells\Other\CreepSleep\CreepSleepTarget.mdl +Casterattach=overhead +Order=creepsleep +Effectsoundlooped=CreepSleepSnoreLoop + +// creep brilliance aura +[ACba] +Art=ReplaceableTextures\PassiveButtons\PASBTNBrilliance.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Human\Brilliance\Brilliance.mdl +Targetattach=origin + +// creep trueshot aura +[ACat] +Art=ReplaceableTextures\PassiveButtons\PASBTNTrueShot.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\NightElf\TrueshotAura\TrueshotAura.mdl +Targetattach=origin + +// anti magic shell +[ACam] +Art=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Buttonpos=1,2 +Requires=Ruba +Order=antimagicshell + +// creep bash +[ACbh] +Art=ReplaceableTextures\PassiveButtons\PASBTNBash.blp +Buttonpos=2,2 +Order=bash + +// beastmaster bash +[ANbh] +Art=ReplaceableTextures\PassiveButtons\PASBTNBash.blp +Buttonpos=1,2 +Order=bash + +// beastmaster maul +[ANb2] +Art=ReplaceableTextures\PassiveButtons\PASBTNBash.blp +Buttonpos=1,2 +Order=bash + +// creep blizzard +[ACbz] +Art=ReplaceableTextures\CommandButtons\BTNBlizzard.blp +Buttonpos=0,2 +Casterart= +Order=blizzard +Animnames=spell,looping + +// creep carrion swarm +[ACca] +Art=ReplaceableTextures\CommandButtons\BTNCarrionSwarm.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Undead\CarrionSwarm\CarrionSwarmMissile.mdl +Missilespeed=1100 +Specialart=Abilities\Spells\Undead\CarrionSwarm\CarrionSwarmDamage.mdl +Order=carrionswarm +Animnames=attack,slam + +// creep chain lightning +[ACcl] +Art=ReplaceableTextures\CommandButtons\BTNChainLightning.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Orc\LightningBolt\LightningBoltMissile.mdl +Missilespeed=1500 +Targetart=Abilities\Weapons\Bolt\BoltImpact.mdl +Order=chainlightning +Animnames=spell,throw +LightningEffect=CLPB,CLSB + +// creep cold arrows +[ACcw] +Art=ReplaceableTextures\CommandButtons\BTNColdArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNColdArrowsOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Missileart=Abilities\Weapons\ColdArrow\ColdArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Animnames=attack + +// creep cripple +[ACcr] +Art=ReplaceableTextures\CommandButtons\BTNCripple.blp +Buttonpos=2,2 +order=cripple + +// creep critical strike +[ACct] +Art=ReplaceableTextures\PassiveButtons\PASBTNCriticalStrike.blp +Buttonpos=2,2 + +// creep curse +[ACcs] +Art=ReplaceableTextures\CommandButtons\BTNCurseOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNCurseOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=curse +Orderon=curseon +Orderoff=curseoff + +// creep cyclone +[ACcy] +Art=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Buttonpos=1,2 +order=cyclone + +// cenarius' cyclone +[SCc1] +Art=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Buttonpos=1,1 +order=cyclone + +// creep death coil +[ACdc] +Art=ReplaceableTextures\CommandButtons\BTNDeathCoil.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Undead\DeathCoil\DeathCoilMissile.mdl +Missilespeed=1100 +MissileHoming=1 +Specialart=Abilities\Spells\Undead\DeathCoil\DeathCoilSpecialArt.mdl +Order=deathcoil + +// creep divine shield +[ACds] +Art=ReplaceableTextures\CommandButtons\BTNDivineIntervention.blp +Unart=ReplaceableTextures\CommandButtons\BTNDivineShieldOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Order=divineshield +Unorder=undivineshield + +// creep entangling roots +[Aenr] +Art=ReplaceableTextures\CommandButtons\BTNEntanglingRoots.blp +Buttonpos=0,2 +Order=entanglingroots + +// creep evasion +[ACev] +Art=ReplaceableTextures\PassiveButtons\PASBTNEvasion.blp +Buttonpos=2,2 + +// creep evasion 100% +[ACes] +Art=ReplaceableTextures\PassiveButtons\PASBTNEvasion.blp +Buttonpos=2,2 + +// creep faerie fire +[ACff] +Art=ReplaceableTextures\CommandButtons\BTNFaerieFireOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFaerieFireOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +order=faeriefire +orderon=faeriefireon +orderoff=faeriefireoff + +// creep feral spirit +[ACsf] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Buttonpos=2,2 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl +Order=spiritwolf + +// creep spirit pig +[ACs9] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp +Buttonpos=1,2 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl +Order=spiritwolf + +// creep fire bolt +[ACfb] +Art=ReplaceableTextures\CommandButtons\BTNFireBolt.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Animnames=spell,throw + +// creep force of nature +[ACfr] +Art=ReplaceableTextures\CommandButtons\BTNEnt.blp +Buttonpos=1,2 +Order=forceofnature + +// creep frost armor (old) +[ACfa] +Art=ReplaceableTextures\CommandButtons\BTNFrostArmor.blp +Buttonpos=1,2 +Order=frostarmor + +// creep frost armor (new, autocast) +[ACf2] +Art=ReplaceableTextures\CommandButtons\BTNFrostArmorOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFrostArmorOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Order=frostarmor +Orderon=frostarmoron +Orderoff=frostarmoroff + +// creep frost nova +[ACfn] +Art=ReplaceableTextures\CommandButtons\BTNGlacier.blp +Buttonpos=0,2 +Effectart=Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl +Order=frostnova +Animnames=spell,slam + +// archimonde's ghoul's lumber +[Ahr2] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Order=harvest + +// goblin shredders lumber +[Ahr3] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Order=harvest + +// creep heal normal +[Anh1] +Art=ReplaceableTextures\CommandButtons\BTNHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNHealOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=heal +Orderon=healon +Orderoff=healoff + +// creep heal high +[Anh2] +Art=ReplaceableTextures\CommandButtons\BTNHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNHealOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=heal +Orderon=healon +Orderoff=healoff + +// creep immolation +[ACim] +Art=ReplaceableTextures\CommandButtons\BTNImmolationOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNImmolationOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Order=immolation +Unorder=unimmolation + +// creep inner fire +[ACif] +Art=ReplaceableTextures\CommandButtons\BTNInnerFireOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNInnerFireOff.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Effectsound=InnerFireCast +Order=innerfire +Orderon=innerfireon +Orderoff=innerfireoff + +// creep lightning shield +[ACls] +Art=ReplaceableTextures\CommandButtons\BTNLightningShield.blp +Buttonpos=1,2 +Order=lightningshield + +// burrow load +[Sloa] +Art=ReplaceableTextures\CommandButtons\BTNLoad.blp +Buttonpos=0,2 +Order=load + +// ship load +[Slo3] +Art=ReplaceableTextures\CommandButtons\BTNLoad.blp +Buttonpos=0,2 +Order=load + +// creep rain of fire +[ACrf] +Art=ReplaceableTextures\CommandButtons\BTNFire.blp +Buttonpos=3,2 +Casterart= +Order=rainoffire + +// creep raise dead +[ACrd] +Art=ReplaceableTextures\CommandButtons\BTNRaiseDeadOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNRaiseDeadOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Effectart=Abilities\Spells\Undead\RaiseSkeletonWarrior\RaiseSkeleton.mdl +Order=raisedead +Orderon=raisedeadon +Orderoff=raisedeadoff + +// creep rejuvenation +[ACrj] +Art=ReplaceableTextures\CommandButtons\BTNRejuvenation.blp +Buttonpos=1,2 +order=rejuvination + +// human repair +[Ahrp] +Art=ReplaceableTextures\CommandButtons\BTNRepairOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNRepairOff.blp +Buttonpos=1,1 +Unbuttonpos=1,1 +Order=repair +Orderon=repairon +Orderoff=repairoff +Animnames=stand,work + +// creep roar +[ACro] +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=roar +Animnames=spell,slam + +// skeletal orc champion roar +[ACr1] +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=roar +Animnames=spell,slam + +// root Ancients +[Aro1] +Art=ReplaceableTextures\CommandButtons\BTNRoot.blp +Unart=ReplaceableTextures\CommandButtons\BTNUproot.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=root +Unorder=unroot + +// root ancient protector +[Aro2] +Art=ReplaceableTextures\CommandButtons\BTNRoot.blp +Unart=ReplaceableTextures\CommandButtons\BTNUproot.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=root +Unorder=unroot + +// creep searing arrows +[ACsa] +Art=ReplaceableTextures\CommandButtons\BTNSearingArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSearingArrowsOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Missileart=Abilities\Weapons\SearingArrow\SearingArrowMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=flamingarrows +Unorder=unflamingarrows +Animnames=attack + +// sell items +[Asid] +Art=ReplaceableTextures\CommandButtons\BTNSell.blp + +// sell units +[Asud] +Art=ReplaceableTextures\CommandButtons\BTNHire.blp + +// creep shockwave +[ACsh] +Art=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl +Missilespeed=1050 +Order=shockwave +Animnames=attack,slam + +// trap shockwave +[ACst] +Art=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl +Missilespeed=1050 +Order=shockwave +Animnames=attack,slam + +// creep thorns aura +[ACah] +Art=ReplaceableTextures\PassiveButtons\PASBTNThorns.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\NightElf\ThornsAura\ThornsAura.mdl +Targetattach=origin + +// creep unholy aura +[ACua] +Art=ReplaceableTextures\PassiveButtons\PASBTNUnholyAura.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Undead\UnholyAura\UnholyAura.mdl +Targetattach=origin + +// creep unholy frenzy +[ACuf] +Art=ReplaceableTextures\CommandButtons\BTNUnholyFrenzy.blp +Buttonpos=1,2 +Order=unholyfrenzy + +// vampiric attack +[SCva] +Art=ReplaceableTextures\CommandButtons\BTNFrostMourne.blp +Specialart=Abilities\Spells\Undead\VampiricAura\VampiricAuraTarget.mdl +Missileart=Abilities\Spells\Items\WandOfNeutralization\NeutralizationMissile.mdl + +// creep vampiric aura +[ACvp] +Art=ReplaceableTextures\PassiveButtons\PASBTNVampiricAura.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Undead\VampiricAura\VampiricAura.mdl +Targetattach=origin + +// generic creep war stomp +[Awrs] +Art=ReplaceableTextures\CommandButtons\BTNWarStomp.blp +Buttonpos=1,2 +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Order=stomp +Animnames=slam + +// hydra creep war stomp +[Awrh] +Art=ReplaceableTextures\CommandButtons\BTNHydraWarStomp.blp +Buttonpos=1,2 +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Order=stomp +Animnames=slam + +// Sea Giant creep war stomp +[Awrg] +Art=ReplaceableTextures\CommandButtons\BTNSeaGiantWarStomp.blp +Buttonpos=1,2 +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Order=stomp +Animnames=slam + +// creep devotion aura +[ACav] +Art=ReplaceableTextures\PassiveButtons\PASBTNDevotion.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Human\DevotionAura\DevotionAura.mdl +Targetattach=origin + +// creep envenomed spears +[ACvs] +Art=ReplaceableTextures\PassiveButtons\PASBTNEnvenomedSpear.blp +Buttonpos=0,2 + +// creep web +[ACwb] +Art=ReplaceableTextures\CommandButtons\BTNWebOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNWebOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Missileart=Abilities\Spells\Undead\Web\Webmissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=web +Orderon=webon +Orderoff=weboff + +// mana regeneration aura +[Aarm] +Art= + +[Barm] +Spelldetail=1 +Buffart= +Targetart=Abilities\Spells\Other\ANrl\ANrlTarget.mdl +Effectsoundlooped=FountainOfLifeLoop + +// life regeneration aura creep +[ACnr] +Art=ReplaceableTextures\CommandButtons\BTNHeal.blp + +[ANre] +Art=ReplaceableTextures\CommandButtons\BTNHeal.blp + +// super death and decay +[SNdd] +Art=ReplaceableTextures\CommandButtons\BTNDeathAndDecay.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDeathAndDecay.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=deathanddecay +Animnames=spell,looping + +// dispel magic +[Adsm] +Art=ReplaceableTextures\CommandButtons\BTNDispelMagic.blp +Buttonpos=0,2 +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Specialart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=dispel + +// creep auto-dispel +[ACdm] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOff.blp +Requires=Resi +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=autodispel +Orderon=autodispelon +Orderoff=autodispeloff + +// creep auto-dispel (button pos 1,2) +[ACd2] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOff.blp +Requires=Resi +Buttonpos=1,2 +Unbuttonpos=1,2 +Casterart= +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=autodispel +Orderon=autodispelon +Orderoff=autodispeloff + +// super earthquake +[SNeq] +Art=ReplaceableTextures\CommandButtons\BTNEarthquake.blp +Researchart=ReplaceableTextures\CommandButtons\BTNEarthquake.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=earthquake +Animnames=spell,looping + +// endurance aura +[SCae] +Art=ReplaceableTextures\PassiveButtons\PASBTNCommand.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Orc\CommandAura\CommandAura.mdl +Targetattach=origin + +// ensnare +[ACen] +Art=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Buttonpos=0,2 +Requires=Roen +Missileart=Abilities\Spells\Orc\Ensnare\EnsnareMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=ensnare +Animnames=spell,entangle + +// Crushing Wave +[ACcv] +Art=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Other\CrushingWave\CrushingWaveMissile.mdl +Missilespeed=1100 +Specialart=Abilities\Spells\Other\CrushingWave\CrushingWaveDamage.mdl +Order=carrionswarm +Animnames=attack,slam + +// Crushing Wave (Dragon Turtle, 1,2 UI position) +[ACc2] +Art=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\CrushingWave\CrushingWaveMissile.mdl +Missilespeed=1100 +Specialart=Abilities\Spells\Other\CrushingWave\CrushingWaveDamage.mdl +Order=carrionswarm +Animnames=attack,slam + +// Crushing Wave (Lesser Version) +[ACc3] +Art=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCrushingWave.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Spells\Other\CrushingWave\CrushingWaveMissile.mdl +Missilespeed=1100 +Specialart=Abilities\Spells\Other\CrushingWave\CrushingWaveDamage.mdl +Order=carrionswarm +Animnames=attack,slam + +// summon sea elemental +[ACwe] +Art=ReplaceableTextures\CommandButtons\BTNSeaElemental.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSeaElemental.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=waterelemental + +// neutral interact +[Anei] +Art=ReplaceableTextures\CommandButtons\BTNSelectUnit.blp +Buttonpos=3,2 + +// permanent flyer immolation +[Apmf] +Art=ReplaceableTextures\PassiveButtons\PASBTNImmolation.blp +Buttonpos=0,2 + +// Neutral Resistant Skin +[ACrk] +Art=ReplaceableTextures\PassiveButtons\PASBTNThickFur.blp +Buttonpos=3,2 + + +// Neutral Resistant Skin (altered button pos) +[ACsk] +Art=ReplaceableTextures\PassiveButtons\PASBTNThickFur.blp +Buttonpos=3,1 + + +// Forked Lightning +[ANfl] +Art=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Specialart=Abilities\Weapons\Bolt\BoltImpact.mdl +Order=forkedlightning +LightningEffect=FORK + +// Forked Lightning +[ACfl] +Art=ReplaceableTextures\CommandButtons\BTNMonsoon.blp +Buttonpos=0,2 +Specialart=Abilities\Weapons\Bolt\BoltImpact.mdl +Order=forkedlightning +LightningEffect=FORK diff --git a/share/mpq/units/units/neutralabilitystrings.txt b/share/mpq/units/units/neutralabilitystrings.txt new file mode 100644 index 0000000..ac8780e --- /dev/null +++ b/share/mpq/units/units/neutralabilitystrings.txt @@ -0,0 +1,2602 @@ +//----------------------------------------------------------------------------- +// FIRELORD +//----------------------------------------------------------------------------- + +// Incinerate +[ANic] +Name=燃灰 +Tip=燃灰 - [|cffffcc00等级 1|r],燃灰 - [|cffffcc00等级 2|r],燃灰 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00c|r)燃灰- [|cffffcc00等级 %d|r]" +Ubertip="每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次是两倍,第三次是三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。" +Researchubertip="每次攻击都带有火焰伤害。第一次攻击将带有一定的附加伤害,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 2|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 3|r - 附加伤害,燃灰伤害。" +Hotkey=C +Researchhotkey=C + +// Incinerate (Arrow) +[ANia] +Name=燃灰 +Tip=(|cffffcc00c|r)燃灰 - [|cffffcc00等级 1|r],(|cffffcc00c|r)燃灰 - [|cffffcc00等级 2|r],(|cffffcc00c|r)燃灰 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00c|r)燃灰- [|cffffcc00等级 %d|r]" +Ubertip="每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次是两倍,第三次是三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。","每次攻击都带有火焰伤害。第一次攻击的伤害值是,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成点的伤害。" +Researchubertip="每次攻击都带有火焰伤害。第一次攻击将带有一定的附加伤害,第二次攻击的附加伤害会是第一次的两倍,第三次为三倍,以此类推。|n|n如果某个单位是遭到这个攻击而死去的,那么他的燃灰会对周围的单位造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 2|r - 附加伤害, 燃灰伤害。|n|cffffcc00等级 3|r - 附加伤害,燃灰伤害。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=C +Researchhotkey=C +EditorSuffix= (箭矢) + +[BNic] +Bufftip=燃灰 +Buffubertip="这个单位处于了烈焰之中,在死去之后会对周围的单位造成一定的伤害。" + +// Soul Burn +[ANso] +Name=灵魂燃烧 +Tip=(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 1|r],(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 2|r],(|cffffcc00B|r)灵魂燃烧 - [|cffffcc00等级 3|r] +Researchtip=" (|cffffcc00B|r)学习灵魂燃烧 - [|cffffcc00等级 %d|r]" +Ubertip="让一个单位处于烈焰的包围之中,对其造成每秒点的伤害,让其不能施放魔法,并减少其%的攻击力。|n持续 秒。","让一个单位处于烈焰的包围之中,对其造成每秒<点的伤害,让其不能施放魔法,并减少其% 的攻击力。|n持续 秒。","让一个单位处于烈焰的包围之中,对其造成每秒 点的伤害,让其不能施放魔法,并减少其% 的攻击力。|n持续 秒。" +Researchubertip="让火焰包围敌人,让其在一段时间之内持续受到伤害,并阻止其施放任何魔法和减少其%的攻击力。 |n|n|cffffcc00等级 1|r - 100 点伤害, 持续秒。|n|cffffcc00等级 2|r - 225 点伤害, 持续 秒。|n|cffffcc00等级 3|r - 375 点伤害, 持续秒。|n|n灵魂燃烧在英雄身上持续的时间会减半。" +Hotkey=B +Researchhotkey=B + +[BNso] +Bufftip=灵魂燃烧 +Buffubertip="该单位受到了灵魂燃烧的作用。不能施放魔法,攻击力会减小,并在一定时间内会持续受到伤害。" + +// Summmon Lava Spawn +[ANlm] +Name=召唤炎魔 +Tip=(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 1|r],(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 2|r],(|cffffcc00w|r)召唤炎魔 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00w|r)学习召唤炎魔 - [|cffffcc00等级 %d|r]" +Ubertip="召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r","召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n|n具有点生命值, - 的攻击力。|n持续 秒。|n|n|cffffcc00能攻击地面和空中单位。|r" +Researchubertip="召唤出一个炎魔。在炎魔攻击的时候,它能吸收目标的生命,并将其转换成自己的能量,最终裂变成两个炎魔。|n持续 秒。|n|n|cffffcc00等级 1|r - 生命值, - 攻击力。|n|cffffcc00等级 2|r - 生命值, - 攻击力。|n|cffffcc00等级 3|r - 生命值, - 攻击力。|n|n|cffffcc00能攻击地面和空中单位。|r +Hotkey=W +Researchhotkey=W + +[BNlm] +Bufftip=炎魔 +Buffubertip="炎魔" + +// Volcano +[ANvc] +Name=火山爆发 +Tip="(|cffffcc00V|r)火山爆发" +Researchtip=" (|cffffcc00V|r)学习火山爆发" +Ubertip="让大地陷入火山爆发的状态。在秒内,一共个灼热的熔岩会喷向周围的单位,对每个目标造成点的伤害,并在 秒内让其处于昏晕状态。对于建筑物来说,他们受到的伤害将是正常单位的倍。|n持续35 秒。" +Researchubertip="让大地陷入火山爆发的状态。在秒内,一共个灼热的熔岩会喷向周围的单位,对每个目标造成 的伤害,并在 秒内让其处于昏晕状态。对于建筑物来说,他们受到的伤害将是正常单位的倍。|n持续35 秒。" +Hotkey=V +Researchhotkey=V + +[BNvc] +Bufftip=火山爆发 +Buffubertip="火山爆发" + +//----------------------------------------------------------------------------- +// TINKERER +//----------------------------------------------------------------------------- + +// Pocket Factory +[ANsy] +Name=口袋工厂 +Tip=(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r] +Ubertip="建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r" +Hotkey=F +Researchtip="(|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +Researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +Researchhotkey=F + +// Pocket Factory +[ANs1] +Name=口袋工厂 +Tip=(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r] +Ubertip="建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r" +Hotkey=F +Researchtip="(|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +Researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +Researchhotkey=F// Pocket Factory +EditorSuffix= (Upgrade 1) + +[ANs2] +Name=口袋工厂 +Tip=(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r] +Ubertip="建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r" +Hotkey=F +Researchtip=" (|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +Researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +Researchhotkey=F +EditorSuffix= (Upgrade 2) + +// Pocket Factory +[ANs3] +Name=口袋工厂 +Tip=(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 1|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 2|r],(|cffffcc00F|r)口袋工厂 - [|cffffcc00等级 3|r] +Ubertip="建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r","建造一座能自动生成地精的工厂。|n|n地精将具有 点的生命值,具有 - 点攻击力,在死亡的时候还会发生爆炸,对周围的单位造成点的伤害。|n工厂持续 秒。 |n|n|cffffcc00地精只攻击地面单位。|r" +Hotkey=F +Researchtip=" (|cffffcc00F|r)学习口袋工厂 - [|cffffcc00等级 %d|r]" +Researchubertip="建造一座能自动生成地精的工厂。这些地精都是人工的地精。它们是强大的攻击者,在阵亡之后还能发生爆炸从而对周围的造成一定的伤害。|n|n|cffffcc00等级 1|r – 爆炸具有 攻击力。|n|cffffcc00等级 2|r – 爆炸具有 攻击力。|n|cffffcc00等级 3|r – 爆炸具有 攻击力。|n工厂持续 秒。" +Researchhotkey=F +EditorSuffix= (Upgrade 3) + +[BNfy] +Bufftip=口袋工厂 +Buffubertip="口袋工厂" + +// Cluster Rockets +[ANcs] +Name=火箭群 +Tip=(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r] +Researchtip=" (|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +Ubertip="对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。" +Researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +Hotkey=R +Researchhotkey=R + +// 火箭群 +[ANc1] +Name=火箭群 +Tip=(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +Ubertip="对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。" +Researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +Hotkey=R +Researchhotkey=R +EditorSuffix= (Upgrade Level 1) + +// Cluster Rockets +[ANc2] +Name=火箭群 +Tip=(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +Ubertip="对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。" +Researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +Hotkey=R +Researchhotkey=R +EditorSuffix= (Upgrade Level 2) + +// Cluster Rockets +[ANc3] +Name=火箭群 +Tip=(|cffffcc00R|r)火箭群 - [|cffffcc00等级 1|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 2|r],(|cffffcc00R|r)火箭群 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00R|r)学习火箭群 - [|cffffcc00等级 %d|r]" +Ubertip="对某个区域用火箭进行攻击,对周围的地面单位造成35点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成65点的伤害,并在 秒内让其处于昏晕状态。","对某个区域用火箭进行攻击,对周围的地面单位造成100点的伤害,并在 秒内让其处于昏晕状态。" +Researchubertip="对某个区域用火箭进行攻击,使目标在 秒内处于昏晕状态,并对其造成一定程度的伤害。|n|n|cffffcc00等级 1|r - 35 攻击力。|n|cffffcc00等级 2|r - 65 攻击力。|n|cffffcc00等级 3|r - 100 攻击力。" +Hotkey=R +Researchhotkey=R +EditorSuffix= (Upgrade Level 3) + +[BNcs] +Bufftip=火箭群 +Buffubertip="火箭群" + +// Engineering Upgrade +[ANeg] +Name=工程升级 +Tip=工程升级 - [|cffffcc00等级 1|r],工程升级 - [|cffffcc00等级 2|r],工程升级 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00E|r)学习工程升级- [|cffffcc00等级 %d|r]" +Ubertip="改进修补匠的技能,增加其点的攻击力和提高其%的移动速度。","改进修补匠的技能,增加其点的攻击力和提高其% 的移动速度。","改进修补匠的技能,增加其点的攻击力和提高其% 的移动速度。" +Researchubertip="提高修补匠的技能。|n|n|cffffcc00火箭群|r - 大区域|n|cffffcc00口袋工厂|r – 能更快地建造出人工地精。|n|cffffcc00机器人地精|r – 增加护甲和力量。 |n|n同时提高攻击力和加快修补匠的移动速度。|n|n|cffffcc00等级 1|r - + 攻击力, +% 移动速度。|n|cffffcc00等级 2|r - + 攻击力, +% 移动速度。|n|cffffcc00等级 3|r - + 攻击力, +% 移动速度。" +Hotkey=E +Researchhotkey=E + +[BNeg] +Bufftip=工程升级 + +// Robo-Goblin +[ANrg] +Name=机器人地精 +Tip="(|cffffcc00b|r)机器人地精" +Untip="(|cffffcc00T|r)恢复到修补匠形态" +Researchtip="(|cffffcc00b|r)学习机器人地精" +Ubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Unubertip="恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。" +Researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Hotkey=B +Unhotkey=T +Researchhotkey=B + +// Robo-Goblin +[ANg1] +Name=机器人地精 +Tip="(|cffffcc00b|r)机器人地精" +Untip="(|cffffcc00T|r)恢复到修补匠形态" +Researchtip="(|cffffcc00b|r)学习机器人地精" +Ubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Unubertip="恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。" +Researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Hotkey=B +Unhotkey=T +Researchhotkey=B +EditorSuffix= (Upgrade Level 1) + +// Robo-Goblin +[ANg2] +Name=机器人地精 +Tip="(|cffffcc00b|r)机器人地精" +Untip="(|cffffcc00T|r)恢复到修补匠形态" +Researchtip="(|cffffcc00b|r)学习机器人地精" +Ubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Unubertip="恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。" +Researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Hotkey=B +Unhotkey=T +Researchhotkey=B +EditorSuffix= (Upgrade Level 2) + +// Robo-Goblin +[ANg3] +Name=机器人地精 +Tip="(|cffffcc00b|r)机器人地精" +Untip="(|cffffcc00T|r)恢复到修补匠形态" +Researchtip="(|cffffcc00b|r)学习机器人地精" +Ubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 点额外力量属性和 点额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Unubertip="恢复到原先的修补匠形态,不再得到机器人地精的那些附加属性。" +Researchubertip="让修补匠变成一个机器人地精,具有以下的一些属性。|n|n- 额外力量属性和额外护甲。|n-使用恶魔技能,能对建筑物造成额外的伤害。|n-修补匠变成机器人了,这个会让他对于大多数的进攻魔法和少数有益魔法免疫。" +Hotkey=B +Unhotkey=T +Researchhotkey=B +EditorSuffix= (Upgrade Level 3) + +// Demolish +[ANde] +Name=粉碎 +Tip="粉碎" +Ubertip="使得对于建筑物的攻击加倍的伤害。" +Hotkey= + +// Demolish +[ANd1] +Name=粉碎 +Tip="粉碎 - 升级 等级 1" +Ubertip="使得对于建筑物的攻击加倍的伤害。" +Hotkey= +EditorSuffix= (Upgrade Level 1) + +// Demolish +[ANd2] +Name=粉碎 +Tip="粉碎 - 升级 等级 2" +Ubertip="使得对于建筑物的攻击加倍的伤害。" +Hotkey= +EditorSuffix= (Upgrade Level 2) + +// Demolish +[ANd3] +Name=粉碎 +Tip="粉碎 - 升级 等级 3" +Ubertip="使得对于建筑物的攻击加倍的伤害。" +Hotkey= +EditorSuffix= (Upgrade Level 3) + +[ANfy] +Name=工厂 +Tip="工厂" +Ubertip="工厂." +Hotkey= + +[ANf1] +Name=工厂 +Tip="工厂 - 升级 等级 1" +Ubertip="工厂." +Hotkey= +EditorSuffix= (Upgrade Level 1) + +[ANf2] +Name=工厂 +Tip="工厂 - 升级 等级 2" +Ubertip="工厂." +Hotkey= +EditorSuffix= (Upgrade Level 2) + +[ANf3] +Name=工厂 +Tip="工厂 - 升级 等级 3" +Ubertip="工厂." +Hotkey= +EditorSuffix= (Upgrade Level 3) + +[BNcg] +Bufftip="人工地精" +Buffubertip="人工地精." + +// Kaboom! (Clockwerk goblin level 1) +[Asdg] +Name=卡布恩 +Tip=卡布恩(|cffffcc00B|r) +Ubertip="对一定区域造成点伤害。对付建筑物和数目特别地有效。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r" +Unubertip="|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r" +Hotkey=B +Unhotkey=B +EditorSuffix=(时钟 地精-等级 1) + +// Kaboom! (Clockwerk goblin level 2) +[Asd2] +Name=卡布恩 +Tip=卡布恩(|cffffcc00B|r) +Ubertip="对一定区域造成点伤害。对付建筑物和数目特别地有效。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r" +Unubertip="|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r" +Hotkey=B +Unhotkey=B +EditorSuffix= (时钟 地精-等级 2) + +// Kaboom! (Clockwerk goblin level 3) +[Asd3] +Name=卡布恩 +Tip=卡布恩(|cffffcc00B|r) +Ubertip="对一定区域造成点伤害。对付建筑物和数目特别地有效。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r" +Unubertip="|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r" +Hotkey=B +Unhotkey=B +EditorSuffix= (时钟 地精-等级 3) + +//----------------------------------------------------------------------------- +// ALCHEMIST +//----------------------------------------------------------------------------- + +// Healing Spray +[ANhs] +Name=医疗气雾 +Tip=(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 1|r],(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 2|r],(|cffffcc00e|r)医疗气雾 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00e|r)学习医疗气雾 - [|cffffcc00等级 %d|r]" +Ubertip="喷出 阵医疗迷雾。每阵迷雾能医治点的伤害。","喷出 点的伤害。","喷出阵医疗迷雾。每阵迷雾能医治点的伤害。" +Researchubertip="喷出迷雾对一定区域的单位进行治疗。|n|n|cffffcc00等级 1|r - 阵迷雾,每阵迷雾能医治点伤害。|n|cffffcc00等级 2|r - 阵迷雾,每阵迷雾能医治点伤害。 |n|cffffcc00等级 3|r - 阵迷雾,每阵迷雾能医治点伤害。" +Hotkey=E +Researchhotkey=E + +[BNhs] +Bufftip=医疗气雾 +Buffubertip="这个单位正在接受医疗气雾的治疗。" + +// Acid Bomb +[ANab] +Name=酸性炸弹 +Tip=(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 1|r],(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 2|r],(|cffffcc00B|r)酸性炸弹 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00B|r)学习酸性炸弹 - [|cffffcc00等级 %d|r]" +Ubertip="投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。|n|n减少点护甲; 具有每秒 点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。","投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。","投掷出一瓶酸性液体,然后对其周围的单位同时也造成伤害。|n|n减少点护甲; 具有每秒点的攻击力; 对周围的单位造成一定程度的伤害。|n持续 秒。" +Researchubertip="向目标扔出一瓶酸液。在冲击之下,酸液瓶会被打碎,对周围的敌人造成一定程度的伤害。|n|n减少护甲,对于首个目标造成持续高伤害。对于周围的目标造成的伤害会稍小一些。|n持续 秒。|n|n|cffffcc00等级 1|r - 每秒最大点伤害。减少点护甲。|n|cffffcc00等级 2|r - 每秒最大点伤害。减少点护甲。|n|cffffcc00Level 3|r - 每秒最大点伤害。减少点护甲。" +Hotkey=B +Researchhotkey=B + +[BNab] +Bufftip=酸性炸弹 +Buffubertip="这个单位遭到了酸性炸弹的攻击。 它的护甲被减弱,并会持续地受到伤害。" + +// Chemical Rage +[ANcr] +Name=化学风暴 +Tip=(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 1|r],(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 2|r],(|cffffcc00R|r)化学风暴 - [|cffffcc00等级 3|r] +Researchtip="(|cffffcc00R|r)学习化学风暴 - [|cffffcc00等级 %d|r]"" +Ubertip="炼金术士让其食人魔进入了一种狂暴的状态,从而提高了%的移动速度和% 的攻击速度,持续时间 秒。","炼金术士让其食人魔进入了一种狂暴的状态,从而提高了% 的攻击速度,持续时间 秒。","炼金术士让其食人魔进入了一种狂暴的状态,从而提高了% 的移动速度和% 的攻击速度,持续时间 秒。" +Researchubertip="炼金术士让其食人魔进入了一种狂暴的状态,从而提高了%的移动速度和一定的攻击速度。|n持续 秒。|n|n|cffffcc00等级 1|r – 提高%的攻击速度。|n|cffffcc00等级 2|r – 提高% 的攻击速度。|n|cffffcc00等级 3|r – 提高% 的攻击速度。" +Hotkey=R +Researchhotkey=R + +[BNcr] +Bufftip=化学风暴 +Buffubertip="这个单位受到了化学风暴的作用。他的移动速度和攻击速度都得到了提高。" + +// Transmute +[ANtm] +Name=点金术 +Tip="(|cffffcc00T|r)点金术" +Researchtip=" (|cffffcc00T|r)学习点金术" +Ubertip="立刻杀死某个单位,然后将其变成金币,补充到你的国库中。|n点金术不能被用在英雄和高于等级的野外生物上。" +Researchubertip="立刻杀死某个单位,然后将其变成金币,补充到你的国库中。|n点金术不能被用在英雄和高于等级的野外生物上。" +Hotkey=T +Researchhotkey=T + +[BNtm] +Bufftip=点金术 +Buffubertip="这个单位受到了点金术的作用。将会变成金币。" + +//----------------------------------------------------------------------------- +//----------------------------------------------------------------------------- + + +//glyph of fortification +[AIgf] +Name=防御浮雕 + +[AIgu] +Name=防御浮雕 + +//tornado slow +[Aasl] +Name=减速光环 +EditorSuffix= (龙卷风) + +[Atdg] +Name=建筑物破坏光环 +EditorSuffix= (龙卷风) + +[Atsp] +Name=龙卷旋风 +EditorSuffix= (龙卷风) + +[Atwa] +Name=龙卷风漫步者 +EditorSuffix= (龙卷风) + + +// Orb of Annihilation (Quill Spray) +[ANak] +Name=刚毛飞射 +Tip="刚毛飞射(|cffffcc00Q|r)" +Ubertip="增加豪猪 点伤害力并使其造成区域性伤害。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=Q +Unhotkey=Q + +// Blink (beastmaster bear) +[ANbl] +Name=闪烁 +EditorSuffix=(中立的) +Tip=闪烁(|cffffcc00B|r) +Ubertip="将熊传送到附近的某个区域,使得它能在战斗中自由来去。" +Hotkey=B + +//chain dispel +[Ache] +Name=瓦解光线 +Hotkey=R +Tip=施放瓦解光线(|cffffcc00R|r) +Ubertip="召唤一道压制魔法能量流,可以弹跳次,在其轨迹上驱散敌单位。" + +// Burrow (Barbed Arachnathid) +[Abu5] +Name=钻地 +EditorSuffix= (中立但是带有敌意) +Tip=钻地(|cffffcc00B|r) +Untip=钻出地面(|cffffcc00B|r) +Ubertip="阿卡那瑟德钻入地面而消失不见。" +Unubertip="阿卡那瑟德钻出地面,又再次出现。" +Hotkey=B +Unhotkey=B + +// Parasite +[ACpa] +Name=寄生虫 +Tip=寄生虫(|cffffcc00R|r) +Ubertip="用一个致命的寄生虫折磨目标单位,使它每秒受到的伤害,持续秒。如果命中单位在寄生虫仍有效果的时候死亡,一个战士将会从尸体上诞生。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +// Siphon Mana +[ACsm] +Name=魔法吸吮 +EditorSuffix= (中立但是带有敌意) +Tip=魔法吸吮(|cffffcc00N|r) +Ubertip="从一个敌人身上吸收魔法能量给血魔法师,每秒吸取点魔法值。|n持续秒。" +Hotkey=N + + +// Devour Magic +[ACde] +Name=吞噬魔法 +EditorSuffix= (中立但是带有敌意) +Tip="吞噬魔法(|cffffcc00D|r)" +Ubertip="吸收一定范围内所有单位身上的魔法效果。每个单位给予破坏者点的生命值和点魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=D + + +// Hardened Skin +[Ansk] +Name=硬化皮肤 +Tip=硬化皮肤 +Ubertip="减少所有对此单位的伤害。伤害值不能低于。" +Hotkey=K + +// Mana Shield +[ANms] +Name=魔法护盾 +Tip=激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 1|r],激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 2|r],激活魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 3|r] +Ubertip="激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收1点伤害。","激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收1.5点伤害。","激活一个护盾,护盾会使用女海巫的魔法能量来吸收伤害,每一点魔法能量吸收2点伤害。" +Untip=取消魔法护盾(|cffffcc00N|r) +Hotkey=N +Unhotkey=N +Researchtip="学习魔法护盾(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +Researchubertip="建立一个护盾,用女海巫的魔法能量来吸收伤害。|n|n|cffffcc00等级 1|r - 每一点魔法能量能吸收1点的伤害。|n|cffffcc00等级 2|r -每一点魔法能量能吸收1.5点的伤害。|n|cffffcc00等级 3|r - 每一点魔法能量能吸收2点的伤害。" +Researchhotkey=N + +[BNms] +Bufftip=魔法护盾 +Buffubertip="这个单位身上有着魔法护盾,所以他暂时对物理攻击和负面魔法有着一定的抵抗能力。" + +// Rain of Fire +[ANrf] +Name=火焰雨 +Tip=火焰雨(|cffffcc00F|r)- [|cffffcc00等级 1|r],火焰雨(|cffffcc00F|r)- [|cffffcc00等级 2|r],火焰雨(|cffffcc00F|r)- [|cffffcc00等级 3|r] +Ubertip="召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成点的伤害。|n持续阵。","召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成点的伤害。|n持续阵。","召唤来一阵阵的火焰雨从天而降,每阵火焰雨会造成阵。|n持续阵。" +Hotkey=F +Researchtip=学习火焰雨(|cffffcc00F|r) - [|cffffcc00等级 %d|r] +Researchhotkey=F +Researchubertip="召唤来一阵阵的火焰雨从天而降从而对一定范围内的敌人造成伤害,每阵火焰雨在对敌人造成初始伤害之后,在随后的秒内还会对其造成持续性的伤害。|n|n|cffffcc00等级 1|r -点伤害,阵火焰雨,每秒点伤害。|n|cffffcc00等级 2|r -点伤害,阵火焰雨,每秒点伤害。|n|cffffcc00等级 3|r -点伤害,阵火焰雨,每秒点伤害。" + +[BNrd] +Bufftip=火焰雨 +Buffubertip="该单位受到火焰雨的攻击,它将不断受到伤害。" + +// Rain of Fire (greater, creep) +[ACrg] +Name=火焰雨 +EditorSuffix= (中立但是带有敌意 1) +Tip=火焰雨(|cffffcc00F|r) +Ubertip="召唤出一阵阵的火焰雨来对一定区域内的敌人造成伤害。每阵火焰雨能造成点的初始伤害。随后在秒内能造成每秒点的伤害。|n持续阵。" +Hotkey=F + +// Frost Arrows +[ANfa] +Name=霜冻之箭 +Tip=霜冻之箭(|cffffcc00R|r)- [|cffffcc00等级 1|r],霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 2|r],霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 3|r] +Ubertip="每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,攻击值为 。在秒内使敌人减慢%的攻击速度和%的移动速度。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +Researchtip="学习霜冻之箭(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="每次攻击带有冰冻效果,造成额外的伤害。使敌人单位减慢攻击和移动速度。 |n|n|cffffcc00等级 1|r - % 攻击速度, % 移动速度, 点额外伤害。 |n|cffffcc00等级 2|r - % 攻击速度, % 移动速度,点额外伤害。 |n|cffffcc00等级 3|r - % 攻击速度, % 移动速度,点额外伤害。" +Researchhotkey=R + +// Cold Arrows +[AHca] +Name=冰冻冷箭 +Tip=冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 1|r],冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 2|r],冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。","每次攻击带有冰冻效果,在秒内秒内使敌人减慢%的攻击速度和%的移动速度。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=C +Unhotkey=C +Researchtip="学习冰冻冷箭(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="每次攻击带有冰冻效果,使敌人单位减慢攻击和移动。|n|n|cffffcc00等级 1|r - %攻击速度,%移动速度,持续秒。|n|cffffcc00等级 2|r - %攻击速度,%移动速度,持续秒。|n|cffffcc00等级 3|r - %攻击速度,%移动速度,持续秒。" +Researchhotkey=C + +[BHca] +Bufftip=冰冻冷箭 +Buffubertip="该单位被冰冻冷箭给击中了,其攻击速度和移动速度都会减慢。" +EditorSuffix= (没有堆积) + +[Bcsd] +Bufftip=冰冻冷箭 +Buffubertip="该单位被冰冻冷箭给击中了,其攻击速度和移动速度都会减慢。" +EditorSuffix= (堆积) + +[Bcsi] +EditorName=冰冻冷箭 +EditorSuffix= (信息) + +// Howl of Terror +[ANht] +Name=恐怖嚎叫 +Tip=恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 1|r],恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 2|r],恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 3|r] +Ubertip="深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。","深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。","深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害%,持续秒。" +Hotkey=T +Researchtip="学习恐怖嚎叫(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="深渊魔王发出恐怖的嚎叫,使周围敌人在恐惧中战栗,丢失当前的魔法效果,减少他们的伤害力。|n持续秒。|n|n|cffffcc00等级 1|r - 攻击减少%。|n|cffffcc00等级 2|r - 攻击减少%。|n|cffffcc00等级 3|r - 攻击减少%。" +Researchhotkey=T + +// Howl of Terror +[Acht] +Name=恐怖嚎叫 +EditorSuffix= (中立但是带有敌意) +Tip=恐怖嚎叫(|cffffcc00W|r) +Ubertip="发出恐怖的嚎叫,降低周围敌单位的攻击力%,秒。" +Hotkey=W + +[BNht] +Bufftip=恐怖嚎叫 +Buffubertip="这个单位被恐怖嚎叫震住了;它已经丢失了魔法效果,并将持续一段时间减弱攻击。" + +// Cleaving Attack +[ANca] +Name=分裂攻击 +Tip=分裂攻击 - [|cffffcc00等级 1|r],分裂攻击 - [|cffffcc00等级 2|r],分裂攻击 - [|cffffcc00等级 3|r] +Ubertip="深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。","深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。","深渊魔王使用如下方式攻击,%的伤害施加在第一位的攻击对象上。" +Researchtip="学习分裂攻击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="深渊魔王同时对多个敌人单位造成伤害。|n|n|cffffcc00等级 1|r - %溅射伤害。|n|cffffcc00等级 2|r - %溅射伤害。|n|cffffcc00等级 3|r - %溅射伤害。" +Researchhotkey=C + +// Cleaving Attack +[ACce] +Name=分裂攻击 +EditorSuffix= (中立但是带有敌意) +Tip=分裂攻击 +Ubertip="该生物的攻击力量对主目标附近的敌人都造成%的伤害力。" + +// Doom +[ANdo] +Name=魔鬼缠身 +Tip=魔鬼缠身(|cffffcc00D|r) +Ubertip="使一个目标遭到魔鬼缠身。被折磨的单位不能施放任何魔法并且每秒受到点伤害直到他死去。在他死亡时,一个巨大的魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +Hotkey=D +Researchtip="学习魔鬼缠身(|cffffcc00D|r)" +Researchubertip="使一个目标遭到魔鬼缠身。被折磨的单位不能施放任何魔法并且每秒受到点伤害直到他死去。在他死亡时,一个巨大的魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +Researchhotkey=D + +[BNdo] +Bufftip=魔鬼缠身 +Buffubertip="这个单位受到魔鬼缠身的折磨;它不能施放任何魔法也将会持续受到伤害直到死亡,一个魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" + +[BNdi] +Bufftip=魔鬼缠身 +Buffubertip="这个单位受到魔鬼缠身的折磨;它将会持续受到伤害直到死亡,一个魔鬼将会从他的尸体上诞生。魔鬼缠身不能被驱散或取消。" +EditorSuffix= (奴) + +// Storm, Earth, and Fire +[ANef] +Name="火土风暴" +Tip="学习火土风暴(|cffffcc00E|r)" +Ubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。" +Hotkey=E +Researchtip="学习火土风暴(|cffffcc00E|r)" +Researchubertip="熊猫酒仙分身成3元素形体,制造出3个特殊的战士。他们中任何一个在召唤时限内还活着,熊猫酒仙就会再生。" +Researchhotkey=E + +[BNef] +Bufftip="熊猫人元素" +Buffubertip="我是一个熊猫人元素 ,崇拜我吧。" + +// Wind Walk (pandaren) +[ANwk] +Name=疾风步 +EditorSuffix= (中立但是带有敌意) +Tip=疾风步(|cffffcc00W|r) +Ubertip="允许熊猫人隐形,移动速度快%。如果熊猫人攻击某单位它就会显形,这次攻击将会增加 。" +Hotkey=W + +// Taunt +[ANta] +Name=嘲讽 +EditorSuffix= (中立但是带有敌意) +Tip=嘲讽(|cffffcc00T|r) +Ubertip="最近的个单位会强迫攻击这个单位。" +Hotkey=T + +// Banish (Creep) +[ACbn] +Name=驱散 +EditorSuffix= (中立但是带有敌意) +Tip=驱逐(|cffffcc00B|r) +Ubertip="将一个非机械单位变为气态并减缓其移动速度%,秒。气态生物无法攻击,但他们可以施放魔法,而某些魔法也可以对他们产生极大的作用。" +Hotkey=B + + +// Life Drain +[ANdr] +Name=生命汲取 +Tip=生命汲取(|cffffcc00D|r) - [|cffffcc00等级 1|r],生命汲取(|cffffcc00D|r) - [|cffffcc00等级 2|r],生命汲取(|cffffcc00D|r) - [|cffffcc00等级 3|r] +Ubertip="汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。","汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。","汲取目标单位每秒点的生命值并将其给予黑暗游侠。|n持续秒。" +Hotkey=D +Researchtip="学习生命汲取(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +Researchubertip="汲取目标单位一定点数的生命值并将其给予黑暗游侠。|n持续秒。|n|n|cffffcc00等级 1|r - 每秒汲取点。|n|cffffcc00等级 2|r - 每秒汲取点。|n|cffffcc00等级 3|r - 每秒汲取点。 " +Researchhotkey=D + +// Life Drain (Creep) +[ACdr] +Name=生命汲取 +EditorSuffix= (中立但是带有敌意) +Tip=生命汲取(|cffffcc00R|r) +Ubertip="汲取目标单位一定点数的生命值并将其给予黑暗游侠生命值/秒。|n持续秒。" +Hotkey=R + +// Breath of Fire +[ANbf] +Name=火焰呼吸 +Tip=火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒 点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。" +Hotkey=F +Researchtip="学习火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="对敌人吐出一道火焰,在一开始对其就造成伤害之后,如果对方身上有醉酒云雾的话那还能在一定时间内持续地对其造成伤害。|n持续秒。 |n|n|cffffcc00等级 1|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 2|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 3|r -最初造成点的伤害,随后造成每秒点的伤害。" +Researchhotkey=F + +// Unit Inventory (2 slot) +[Aiun] +Name=单位物品栏 +EditorSuffix= (不死族) +Tip="单位物品栏" +Ubertip="让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。" + +[Aion] +Name=单位物品栏 +EditorSuffix= (兽族) +Tip="单位物品栏" +Ubertip="让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。" + +[Aihn] +Name=单位物品栏 +EditorSuffix= (人族) +Tip="单位物品栏" +Ubertip="让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。" + +[Aien] +Name=单位物品栏 +EditorSuffix= (暗夜精灵族) +Tip="单位物品栏" +Ubertip="让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。" + +// Summon Bear +[ANsg] +Name=召唤熊 +Tip=召唤熊(|cffffcc00G|r) - [|cffffcc00等级 1|r],召唤熊(|cffffcc00G|r) - [|cffffcc00等级 2|r],召唤熊(|cffffcc00G|r) - [|cffffcc00等级 3|r] +Ubertip="召唤一头威力强大,生命值点的熊来攻击你的敌人。|n持续秒。","召唤一头威力强大,生命值点的熊来攻击你的敌人,具有重击的技能。|n持续秒。","召唤一头威力强大,生命值点的熊来攻击你的敌人,具有重击和闪烁的技能。|n持续秒。" +Hotkey=G +Researchtip=学习召唤熊(|cffffcc00G|r) - [|cffffcc00等级 %d|r] +Researchubertip="召唤一头威力强大的熊来攻击你的敌人。|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值,点攻击力。|n|n|cffffcc00等级 2|r - 点生命值,点攻击力,具有重击技能。|n|n|cffffcc00等级 3|r - 点生命值,点攻击力,具有重击和闪烁的技能。" +Researchhotkey=G + +[BNsg] +Bufftip=熊 +Buffubertip="一只残忍的熊。" + +// Summon Quilbeast +[ANsq] +Name=召唤豪猪 +Tip=召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 1|r],召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 2|r],召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 3|r] +Ubertip="召唤一只愤怒的生命值点的豪猪来为你作战。|n持续秒。","召唤一只愤怒的生命值点的豪猪来为你作战,拥有狂热技能。|n持续秒。","召唤一只愤怒的点生命值的豪猪来为你作战,拥有狂热并造成区域伤害。|n持续秒。" +Hotkey=Q +Researchtip=学习召唤豪猪(|cffffcc00Q|r) - [|cffffcc00等级 %d|r] +Researchubertip="召唤一只愤怒的豪猪来为你作战。|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值, 点攻击力。|n|n|cffffcc00等级 2|r - 点生命值,点攻击力,有狂热技能。|n|n|cffffcc00等级 3|r - 点生命值,点区域伤害,有狂热技能。" +Researchhotkey=Q + +[BNsq] +Bufftip=豪猪 +Buffubertip="一只愤怒的豪猪。" + +// Summon Hawk +[ANsw] +Name=召唤战鹰 +Tip=召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 1|r],召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 2|r],召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。","召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。","召唤一只生命值点的战鹰来侦察敌人,拥有真实视域技能。|n持续秒。" +Hotkey=W +Researchtip=学习召唤战鹰(|cffffcc00W|r) - [|cffffcc00等级 %d|r] +Researchubertip="召唤一只骄傲的战鹰来侦察敌人|n持续秒。|n|n|cffffcc00等级 1|r - 点生命值,有真实视域技能。|n|cffffcc00等级 2|r - 点生命值,点攻击力,有真实视域技能。|n|cffffcc00等级 3|r - 点生命值,点攻击力,有真实视域技能并且隐形。" +Researchhotkey=W + +[BNsw] +Bufftip=战鹰 +Buffubertip="A proud hawk." + +// Stampede +[ANst] +Name=惊吓 +Tip=惊吓(|cffffcc00T|r) +Ubertip="召唤成群的狂暴雷蜥蜴轰炸驯兽师的敌人。每个轰炸的蜥蜴造成伤害,持续秒。" +Hotkey=T +Researchtip=学习惊吓(|cffffcc00T|r) +Researchubertip="召唤成群的狂暴雷蜥蜴轰炸驯兽师的敌人。每个轰炸的蜥蜴造成伤害,持续秒。" +Researchhotkey=T + +// Hex +[AChx] +Name=妖术 +EditorSuffix= (中立但是带有敌意) +Tip=妖术(|cffffcc00X|r) +Ubertip="在秒内将敌方的某个单位变成某种小动物。" +Hotkey=X + +// Entangling Roots Seaweed Version (Creep) +[Aenw] +Name=纠缠根须 +EditorSuffix= (中立但是带有敌意 2) +Tip=纠缠根须(|cffffcc00E|r) +Ubertip="从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。" +Hotkey=E + +// Healing Wave (Creep) +[AChv] +Name=医疗波 +EditorSuffix= (中立但是带有敌意) +Tip=医疗波(|cffffcc00E|r) +Ubertip="召唤出一道能跳跃次的医疗能量波。增加第一个目标 点的生命值,每次跳跃都将削弱这道能量波的医疗能力。" +Hotkey=E + +// Silence(Creep) +[ACsi] +Name=沉默魔法 +EditorSuffix= (中立但是带有敌意) +Tip=沉默魔法(|cffffcc00E|r) +Ubertip="在秒内阻止一定区域内所有敌人施放魔法。" +Hotkey=E + +// Mana Shield(Creep) +[ACmf] +Name=魔法护盾 +EditorSuffix= (中立但是带有敌意) +Tip=魔法护盾(|cffffcc00N|r) +Ubertip="激活可以每点魔力可以吸收伤害力的护盾。" +Untip=取消魔法护盾(|cffffcc00N|r) +Hotkey=N +Unhotkey=N + +// Shadow Strike +[ACss] +EditorSuffix= (中立但是带有敌意) +Tip=暗影突袭(|cffffcc00D|r) +Ubertip="投掷出一把毒性的匕首,能对敌方单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害。持续秒。在短时间内匕首上的毒性效果能减慢目标单位的攻击速度和移动速度。" +Hotkey=D + +// Frost Bolt +[ACcb] +Name=霜冻闪电 +Tip=冰霜之箭(|cffffcc00F|r) +Ubertip="向敌人投掷出一冰块碎片,对其造成点的伤害并使其在秒内处于昏晕状态。" +Hotkey=F + +// Breath of Frost(Creep) +[ACbf] +Name=霜冻闪电 +Tip=霜冻闪电(|cffffcc00F|r) +Ubertip="吐出带有攻击力的冰霜,最初造成点的伤害,随后在秒内对目标单位造成每秒点的伤害。" +Hotkey=F + +[BCbf] +Bufftip=霜冻闪电 +Buffubertip="该单位遭到了霜冻闪电的攻击,因此会持续地受到伤害。" + +// Breath of Fire (Creep) +[ACbc] +Name=火焰呼吸 +EditorSuffix= (中立但是带有敌意) +Tip=火焰呼吸(|cffffcc00F|r) +Ubertip="对敌人呼出带有攻击力的火焰,造成点伤害力。" +Hotkey=F + +// Flame Strike +[ACfs] +Name=烈焰风暴 +EditorSuffix= (中立但是带有敌意) +Tip=烈焰风暴(|cffffcc00F|r) +Ubertip="召唤出一道巨大的火焰,持续时间为2秒,每秒对敌方的地面单位造成45点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。" +Hotkey=F + +// Flame Strike +[ANfs] +Name=烈焰风暴 +EditorSuffix= (中立但是带有敌意 2) +Tip=烈焰风暴(|cffffcc00F|r) +Ubertip="召唤出一道巨大的火焰,持续时间为3秒,每秒对敌方的地面单位造成75点的伤害。在火焰慢慢熄灭的过程中,敌方单位将持续受到极度轻微的伤害。" +Hotkey=F + +// Impale +[ACmp] +Name=穿刺 +EditorSuffix= (中立但是带有敌意) +Tip=穿刺(|cffffcc00E|r) +Ubertip="震击地面,发出一道直线力量之波,造成点伤害力,并将敌地面单位抛入空中,使其晕眩秒。" +Hotkey=E + +// Inventory +[AInv] +Name=物品栏 +EditorSuffix= (英雄) + +// Spiked Shell +[ANth] +Name=尖刺外壳 +Tip=尖刺外壳 +Ubertip="海龟身上的尖刺能将敌人%的攻击力化为对敌人的伤害。" + +// Spiked Shell, 2,2 button pos, dragon turtle +[ANt2] +Name=尖刺外壳 +Tip=尖刺外壳 +Ubertip="海龟身上的尖刺能将敌人%的攻击力化为对敌人的伤害。" +EditorSuffix="(2,2 按钮)" + +// Mind Rot +[ANmr] +Name=心灵腐烂 +Tip=心灵腐烂(|cffffcc00R|r) +Ubertip="在秒消耗目标单位点的魔法值。" +Hotkey=R + +[BNmr] +Bufftip=心灵腐烂 +Buffubertip="该单位受到了心灵腐烂的攻击,因此其魔法值将在一定时间内持续地被减少。" + +// Preservation +[ANpr] + +// Spell Shield +[ANss] + +// Breath of Fire +[ANbf] +Name=火焰呼吸 +Tip=火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 1|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 2|r],火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒 点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。","对敌人呼出带有攻击力的火焰。最初造成点的伤害。并在秒内持续受到每秒点的伤害。" +Hotkey=F +Researchtip="学习火焰呼吸(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="对敌人吐出一道火焰,在一开始对其就造成伤害之后,如果对方身上有醉酒云雾的话那还能在一定时间内持续地对其造成伤害。|n持续秒。 |n|n|cffffcc00等级 1|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 2|r -最初造成点的伤害,随后造成每秒点的伤害。|n|cffffcc00等级 3|r -最初造成点的伤害,随后造成每秒点的伤害。" +Researchhotkey=F + +[BNbf] +Bufftip=火焰呼吸 +Buffubertip="该单位受到了火焰呼吸的攻击,因此它会持续地受到火焰的伤害。" + +// Drunken Brawler +[ANdb] +Name=醉拳 +Tip=醉拳 - [|cffffcc00等级 1|r],醉拳 - [|cffffcc00等级 2|r],醉拳 - [|cffffcc00等级 3|r] +Ubertip="给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。","给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。","给予%的概率来躲避敌人的攻击和%的概率来施放出倍于普通伤害的攻击。" +Researchtip="学习醉拳(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="给予一定的概率来躲避来自敌人的攻击和%的概率来施放额外的攻击伤害。|n|n|cffffcc00等级 1|r - %的概率躲避攻击,施放倍于普通伤害的攻击。|n|cffffcc00等级 2|r - %的概率躲避攻击,施放倍于普通伤害的攻击。|n|cffffcc00等级 3|r - %的概率躲避攻击,施放倍于普通伤害的攻击。" +Researchhotkey=B + +// Drunken Haze +[ANdh] +Name=醉酒云雾 +Tip=醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 1|r],醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 2|r],醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 3|r] +Ubertip="用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。","用酒精浸透目标单位,减慢其%的移送速度,并使其有%的概率不能击中其他单位。带有醉酒云雾的单位遭到火焰呼吸攻击的话,那么就会自动引燃身上的酒精从而持续受到火焰的伤害。|n持续秒。" +Hotkey=D +Researchtip="学习醉酒云雾(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使敌方单位被酒精溅湿,造成其移动速度减慢,并使其攻击容易落空。当单位被施以醉酒云雾后再被火焰吐息积中,他们会被点燃并随着时间的流逝而受到伤害。|n持续秒钟 |n|n|cffffcc00等级1|r - %移动速度减缓,%落空机率。|n|cffffcc00等级2|r - %移动速度减缓,%落空机率。|n|cffffcc00等级3|r - %移动速度减缓,%落空机率。" +Researchhotkey=D + +[BNdh] +Bufftip=醉酒云雾 +Buffubertip="该单位遭到了醉酒云雾的攻击,因此其移动速度被减慢了,并有一定的概率不能击中其他单位。" + +// Silence +[ANsi] +Name=沉默魔法 +Tip=沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 1|r],沉默魔法 (|cffffcc00E|r)- [|cffffcc00等级 2|r],沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="在秒内阻止一小块区域内所有的敌人施放魔法。","在秒内阻止一普通大小区域内所有的敌人施放魔法。","在秒内阻止一大型区域内所有的敌人施放魔法。" +Hotkey=E +Researchtip="学习沉默魔法(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="阻止一定范围内的所有敌人施放魔法。魔法的效果范围和持续时间会随着等级的增加而增加。|n|n|cffffcc00等级 1|r - 小范围,持续秒。|n|cffffcc00等级 2|r - 中等范围,持续秒。|n|cffffcc00等级 3|r - 大型范围,持续秒。" +Researchhotkey=E + +[BNsi] +Bufftip=沉默魔法 +Buffubertip="该单位受到了沉默魔法的攻击,因此其不能施放任何魔法。" + +// Black Arrow +[ANba] +Name=黑暗之箭 +Tip=黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 1|r],黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 2|r],黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 3|r] +Ubertip="增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。","增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。","增加点的攻击力。被黑暗之箭射死的单位会变成具有点生命值的骷髅兵。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Researchtip="学习黑暗之箭(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="增加额外的攻击力。被黑暗之箭射死的单位会变成骷髅兵。|n|n|cffffcc00等级 1|r - 增加点攻击力,骷髅兵具有点生命值。|n|cffffcc00等级 2|r - 增加点攻击力,骷髅兵具有点生命值。|n|cffffcc00等级 3|r - 增加点攻击力,骷髅兵具有点生命值。" +Researchhotkey=B + +[BNba] +Bufftip=黑暗之箭 +Buffubertip="该单位受到了黑暗之箭的攻击,如果其死亡的话,那么就会变成一个骷髅兵。" + +[BNdm] +Bufftip=黑暗之奴 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Black Arrow +[ACbk] +Name=黑暗之箭 +EditorSuffix= (中立但是带有敌意) +Tip=黑暗之箭(|cffffcc00B|r) +Ubertip="增加点伤害力。被黑暗之箭杀死的单位会变成骷髅。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B + +// Charm (Creep) +[ACch] +Name=符咒 +EditorSuffix= (中立但是带有敌意) +Tip=符咒(|cffffcc00R|r) +Ubertip="控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。" +Hotkey=R + +// Charm +[ANch] +Name=符咒 +Tip=符咒(|cffffcc00C|r) +Ubertip="控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。" +Hotkey=C +Researchtip=学习符咒(|cffffcc00C|r) +Researchubertip="控制某个敌方单位。|n符咒不能被用在英雄和等级高于的中立单位上。" +Researchhotkey=C + +// Monsoon +[ANmo] +Name=季风 +Tip=季风(|cffffcc00N|r) - [|cffffcc00等级 1|r],季风(|cffffcc00N|r) - [|cffffcc00等级 2|r],季风(|cffffcc00N|r) - [|cffffcc00等级 3|r] +Ubertip="在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。","在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。","在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。" +Hotkey=N +Researchtip="学习季风(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +Researchubertip="在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 小型的区域。|n|cffffcc00等级 2|r - 中等大小的区域。|n|cffffcc00等级 3|r - 大型的区域。" +Researchhotkey=N + +[BNmo] +Bufftip=季风 +Buffubertip="该单位受到了季风的攻击,因此它会受到来自闪电的伤害。" + +// creep monsoon +[ACmo] +Name=季风 +Tip=季风(|cffffcc00N|r) - [|cffffcc00等级 1|r],季风(|cffffcc00N|r) - [|cffffcc00等级 2|r],季风(|cffffcc00N|r) - [|cffffcc00等级 3|r] +Ubertip="在一小块区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。","在一中等区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。","在一大块区域内召唤出闪电风暴对敌人造成伤害力。|n持续秒。" +Hotkey=N +Researchtip="学习季风(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +Researchubertip="在一小块区域内召唤出闪电风暴对敌人造成点的伤害。|n持续秒。|n|n|cffffcc00等级 1|r - 小型的区域。|n|cffffcc00等级 2|r - 中等大小的区域。|n|cffffcc00等级 3|r - 大型的区域。" +Researchhotkey=N + +// Watery Minion +[ANwm] +Name=水奴 +Tip=水奴(|cffffcc00W|r) +Ubertip="召唤出个仆人来为你效力。|n持续秒。" +Hotkey=W + +[BNwm] +Bufftip=水奴 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// watery minion makrura +[Aslp] +Name=召唤巨虾 +Tip=召唤 (|cffffcc00r|r) 巨虾 +Ubertip="召唤只马库拉巨虾去执行主人的意愿。|n持续秒。" +Hotkey=R + +// Tornado +[ANto] +Name=龙卷风 +Tip=龙卷风(|cffffcc00T|r) +Ubertip="召唤一股可控制的强劲龙卷风,可以减慢敌人单位移动速度,随机将敌地面单位抛入空中,并对敌建筑造成伤害。|n持续秒。" +Hotkey=T +Researchtip="学习龙卷风(|cffffcc00T|r)" +Researchubertip="召唤一股可控制的强劲龙卷风,可以减慢敌人单位移动速度,随机将敌地面单位抛入空中,并对敌建筑造成伤害。|n持续秒。" +Researchhotkey=T + +// Tornado - Slow Aura +[Basl] +Bufftip=龙卷风 +Buffubertip="该单位受到了龙卷风的袭击,它的移动速度被暂时降低了。" +EditorSuffix= (减速光环) + +// Tornado - Spin +[Btsp] +Bufftip=龙卷旋风 +Buffubertip="该单位受到了龙卷风的袭击;因此被投掷到了空中。" + +// Tornado - timed life +[BNto] +Bufftip=龙卷风 +EditorSuffix= (有时间限制) + +// Healing Ward (Creep) +[AChw] +Name=治疗守卫 +Tip=治疗守卫(|cffffcc00E|r) +Ubertip="召唤出一个不能移动的治疗守卫。能以每秒%的速度来恢复周围非机械单位的生命值。|n持续秒。" +Hotkey=E +EditorSuffix= (中立但是带有敌意) + +// Rejuvenation (Furbolg) +[ACr2] +Name=生命恢复 +Tip=生命恢复(|cffffcc00E|r) +Ubertip="在秒内恢复目标单位点的生命值。" +Hotkey=E +EditorSuffix=(熊怪) + +// Magic Immunity (Archimonde) +[ACm2] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" + +// Magic Immunity (Dragons) +[ACm3] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" + +[Arng] +Name=复仇 + +// general detect invis +[Adtg] +Name=真实视域 +EditorSuffix= (中立的 1) +Tip=真实视域 +Ubertip="显示周围的隐形单位。" + +// general detect invis (War eagle) +[ANtr] +Name=真实视域 +EditorSuffix= (中立的 2) +Tip=真实视域 +Ubertip="显示周围的隐形单位。" + +// blighted gold mine +[Abgm] +Name=闹鬼金矿技能 + +// entangled gold mine +[Aegm] +Name=缠绕金矿技能 + +// tree of life art attachment +[Atol] +Name=生命之树升级技能 + +// waygate ability +[Awrp] +Name=传送门技能 + +// Dark Conversion +[ANdc] +Name=黑暗转换 +Tip=黑暗转换(|cffffcc00K|r) +Ubertip="让一个村民陷入睡眠,并将其变成僵尸。" +Hotkey=K +Researchtip="学习黑暗转换(|cffffcc00K|r)" +Researchubertip="让一个村民陷入睡眠,并将其变成僵尸。" +Researchhotkey=K +EditorSuffix= (马哥尼斯) + +[BNdc] +Bufftip=黑暗转换 +Buffubertip="这个村民受到了黑暗转换的攻击,因此会陷入睡眠并变成一个僵尸。" + +// Dark Conversion (Fast) +[SNdc] +Name=黑暗转换 +Tip=黑暗转换(|cffffcc00K|r) +Ubertip="让一个村民陷入睡眠,并将其变成僵尸。" +Hotkey=K +Researchtip="学习黑暗转换(|cffffcc00K|r)" +Researchubertip="让一个村民陷入睡眠,并将其变成僵尸。" +Researchhotkey=K +EditorSuffix=" (马哥尼斯,快的)" + +// Soul Preservation +[ANsl] +Name=灵魂保存 +Tip=灵魂保存(|cffffcc00L|r) +Ubertip="将一个僵尸放入下面的地域以备后用。" +Hotkey=L +Researchtip="学习灵魂保存(|cffffcc00L|r)" +Researchubertip="将一个僵尸放入下面的地域以备后用。" +Researchhotkey=L +EditorSuffix= (马哥尼斯) + +[BNsp] +Bufftip=灵魂保存 +Buffubertip="该单位以被保存留为后用。" + +// Inferno (Tichondrius) +[SNin] +Name=地狱火 +Tip=地狱火(|cffffcc00N|r) +Ubertip="召唤出一个地狱火恶魔从天而降,对一定区域内敌方的地面单位造成点的伤害并使其在秒内处于昏晕状态。地狱火恶魔持续秒。" +Hotkey=N +Researchtip=学习地狱火(|cffffcc00N|r) +Researchubertip="召唤出一个地狱火恶魔从天而降,对一定区域内敌方的地面单位造成点的伤害并使其在秒内处于昏晕状态。地狱火恶魔持续秒。" +Researchhotkey=N +EditorSuffix= (提科恩迪斯) + +[ANfd] +Name=死亡之指 +Tip=死亡之指(|cffffcc00F|r) +Ubertip="能立刻杀死某个生物或者摧毁某个建筑物。完全地摧毁它。" +Hotkey=F +Researchtip=学习死亡之指(|cffffcc00F|r) +Researchubertip="能立刻杀死某个生物或者摧毁某个建筑物。完全地摧毁它。" +Researchhotkey=F +EditorSuffix= (阿克蒙德) + +[ACfd] +Name=痛苦之指 +Tip=痛苦之指(|cffffcc00F|r) +Ubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +Hotkey=F +Researchtip=学习痛苦之指(|cffffcc00F|r) +Researchubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +Researchhotkey=F +EditorSuffix= (中立但是带有敌意) + +[ACf3] +Name=痛苦之指 +Tip=痛苦之指(|cffffcc00F|r) +Ubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +Hotkey=F +Researchtip=学习痛苦之指(|cffffcc00F|r) +Researchubertip="能残忍地杀害敌人的单位或者猛烈地破坏敌人的建筑物。" +Researchhotkey=F +EditorSuffix= (中立但是带有敌意) + +[Afod] +Name=死亡之指 +Tip=死亡之指(|cffffcc00F|r) +Ubertip="能立刻杀死某个生物或者摧毁某个建筑物。" +Hotkey=F +Researchtip=学习死亡之指(|cffffcc00F|r) +Researchubertip="能立刻杀死某个生物或者摧毁某个建筑物。" +Researchhotkey=F +EditorSuffix= (中立但是带有敌意) + +[ANdp] +Name=黑暗之门 +Tip=黑暗之门(|cffffcc00D|r) +Ubertip="开启一扇黑暗之门,从中会走出各种各样的恶魔来为阿克蒙德效力。" +Hotkey=D +Researchtip=学习黑暗之门(|cffffcc00D|r) +Researchubertip="开启一扇黑暗之门,从中会走出各种各样的恶魔来为阿克蒙德效力。" +Researchhotkey=D +EditorSuffix= (阿克蒙德) + +[ANrc] +Name=混乱之雨 +Tip=混乱之雨(|cffffcc00R|r) +Ubertip="召唤出几个地狱火恶魔从天而降。" +Hotkey=R +Researchtip=学习混乱之雨(|cffffcc00R|r) +Researchubertip="召唤出几个地狱火恶魔从天而降。" +Researchhotkey=R +EditorSuffix= (阿克蒙德) + +//rain of chaos button pos 0,2, balnazzar +[ANr3] +Name=混乱之雨 +Tip=混乱之雨(|cffffcc00R|r) +Ubertip="召唤出几个地狱火恶魔从天而降。" +Hotkey=R +Researchtip=学习混乱之雨(|cffffcc00R|r) +Researchubertip="召唤出几个地狱火恶魔从天而降。" +Researchhotkey=R +EditorSuffix= (巴那泽尔) + +// Creep Devotion Aura +[ACav] +Name=专注光环 +EditorSuffix= (中立但是带有敌意) +Tip=专注光环 +Ubertip="提高周围单位点的护甲。" + +// Cargo Hold Death +[Achd] +Name=运输船保持原位 + +[Bchd] +Bufftip=击晕 +Buffubertip="该单位被击晕了,因此其移动速度和攻击速度都减慢了。" + +// Cargo Load +[Aloa] +Name=装载 +Tip=装载(|cffffcc00L|r) +Ubertip="装载一个指定的友方地面单位。" +Hotkey=L +EditorSuffix= (地精飞艇) + +// Cargo Unload +[Adro] +Name=卸载 +EditorSuffix= (地精飞艇) +Tip=卸载全部(|cffffcc00U|r) +Ubertip="在指定区域卸载全部单位。" +Hotkey=U +EditorSuffix= (地精飞艇) + +[Sdro] +Name=卸载 +EditorSuffix= (海上运输船) +Tip=卸载全部(|cffffcc00U|r) +Ubertip="在指定区域卸载全部单位。" +Hotkey=U + +// Cargo Unload (Instant) +[Adri] +Name=立刻卸载 +Tip=卸载全部(|cffffcc00U|r) +Ubertip="卸载全部单位。" +Hotkey=U +EditorSuffix= (被缠绕的金矿) + +[Asla] +Name=一直睡眠 +Tip=睡眠(|cffffcc00S|r) +Ubertip="催眠单位,直到被唤醒。" + +// devour cargo hold +[Advc] +Name=吞噬货物 + +// permanent immolation +[ANpi] +Name=永久的献祭 +EditorSuffix= (中立但是带有敌意 1) +Tip=永久的献祭 +Ubertip="对周围的敌人每秒造成点伤害。" + +[Apig] +Name=永久的献祭 +EditorSuffix= (中立但是带有敌意 2) +Tip=永久的献祭 +Ubertip="烧伤附近的敌人,造成每秒点伤害。 + +// bunker, orc burrow cargo hold +[Abun] +Name=货物保持 (兽族地洞) + +// chaos orc burrow battle stations +[Sbtl] +Name=战备状态 +Tip=战备状态(|cffffcc00B|r) +Ubertip="使得附近的苦工跑入地洞从而对来犯的敌人进行反击。" +Hotkey=B +EditorSuffix= (混乱的兽族地洞) + +// cargo hold, generic +[Acar] +Name=货物保持 + +// Neutral Spell +[AAns] +Name=收费 +Tip=收费( |cffffcc00G|r) +Ubertip="向某个玩家收取固定数额的金子和木材。" +Hotkey=G + +// Reveal +[Andt] +Name=显示 +Tip=显示(|cffffcc00R|r) +Ubertip="显示地图上的某块区域。|n能看到隐形单位。|n持续秒。" +Hotkey=R + +// Currently Unused +// Neutral G2L Exchange +[ANgl] +Name=用黄金交换木材 +Tip=用%d黄金交换%d木材(|cffffcc00L|r) +Hotkey=L + +// Currently Unused +// Neutral L2G Exchange +[ANlg] +Name=用木材交换黄金 +Tip=用%d木材交换%d黄金( |cffffcc00G|r) +Hotkey=G + +[ANre] +Name=生命恢复光环 + +[ANrl] +Name=生命值恢复速度 + +// 'select hero to use' ability for neutral buildings +[Aneu] +Name=选择英雄 +Tip=选择英雄(|cffffcc00H|r) +Untip=取消选定英雄(|cffffcc00H|r) +Hotkey=H +Unhotkey=H + +// select any unit, for buildings +[Ane2] +Name=选择单位 +Tip=选择单位(|cffffcc00U|r) +Untip=取消选定单位(|cffffcc00U|) +Hotkey=U +Unhotkey=U + +// Inferno +[ANin] +Name=地狱火 +Tip=地狱火(|cffffcc00I|r) +Ubertip="召唤出一地狱火恶魔从天而降,对一定区域内的敌人造成伤害。" +Hotkey=I +Researchtip=学习地狱火(|cffffcc00I|r) +Researchhotkey=I +EditorSuffix= (中立但是带有敌意) +Globalmessage= +Globalsound= + +[BNin] +Bufftip=地狱火 +Buffubertip="这个地狱火是大型的。" + +// Spy +[ANsp] +Name=间谍 +Tip=间谍(|cffffcc00Y|r) +Hotkey=Y + +// Kaboom! +[Asds] +Name=卡布恩 +Tip=卡布恩(|cffffcc00B|r) +Ubertip="对一定区域造成点伤害。对付建筑物和数目特别地有效。" +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。|r|r" +Unubertip="|cffc3dbff|cffc3dbff点击右键以取消自动施放功能。|r|r" +Hotkey=B +Unhotkey=B +EditorSuffix= (地精工兵) + +// Medivh Crow Form +[Amrf] +Name=乌鸦形态 +Tip=乌鸦形态(|cffffcc00F|r) +Ubertip="变为一只乌鸦。" +Hotkey=F +Untip=人族形态(|cffffcc00F|r) +Unubertip="变为一个人族。" +Unhotkey=F + +// Neutral Unit Healing +[Anhe] +Name=医疗 +EditorSuffix= (中立但是带有敌意 1) +Tip=医疗(|cffffcc00E|r) +Ubertip="医疗一个非机械友军单位。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=E +Unhotkey=E + +// Creep slow +[ACsw] +Name=减速 +Hotkey=W +Unhotkey=W +Tip=减速(|cffffcc00W|r) +Ubertip="减慢%的攻击速度和%的移动速度。持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" + +// Creep Thunder Clap +[ACtc] +Name=雷霆一击 +Tip=雷霆一击(|cffffcc00L|r) +Ubertip="震击地面,对周围的敌方地面单位造成点的伤害。并减慢其移动和攻击速度。" +Hotkey=L +EditorSuffix= (中立但是带有敌意) + +[BCtc] +Bufftip=雷霆一击 +Buffubertip="该单位受到了雷霆一击的攻击,因此其移动速度和攻击速度都减慢了。" + +// Creep Thunder Clap (Thunder Lizard) +[ACt2] +Name=雷霆一击 +Tip=雷霆一击(|cffffcc00L|r) +Ubertip="震击地面,对周围的敌方地面单位造成点的伤害。并减慢其移动和攻击速度。" +Hotkey=L +EditorSuffix= (雷霆蜥蜴) + +// Creep Storm Bolt +[ACtb] +Name=投石 +Tip=投石(|cffffcc00B|r) +Ubertip="一块巨石被投向敌人,对其造成点的伤害并在秒内使其处于昏晕状态。" +Hotkey=B + +// Creep Berserker Rage +[ACbr] +Name=狂暴愤怒 +Tip=狂暴愤怒(|cffffcc00B|r) +Ubertip="在秒内提高%的攻击速度。" +Hotkey=B + +// Creep Bloodlust (B hotkey version) +[ACbb] +Name=嗜血术 +EditorSuffix= (中立但是带有敌意 2) +Tip=嗜血术(|cffffcc00B|r) +Ubertip="在秒内增加目标单位%的攻击速度和%的移动速度。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B + +// Frenzy +[Afzy] +Name=狂热 +Tip=狂热(|cffffcc00F|r) +Ubertip="增加%的攻击速度,%的移动速度。持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=F +Unhotkey=F + +[Bfzy] +Bufftip=狂热 +Buffubertip="该单位处于狂热中,其攻击速率和移动速度都增加了。" + +// Creep Bloodlust +[ACbl] +Name=嗜血术 +EditorSuffix= (中立但是带有敌意 1) +Tip=嗜血术(|cffffcc00L|r) +Ubertip="在秒内增加目标单位%的攻击速度和%的移动速度。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=L +Unhotkey=L + +// Creep Ensnare +[ACen] +Name=诱捕 +Tip=诱捕(|cffffcc00E|r) +Ubertip="将敌方的某个空中单位捕获到地面能动弹。被诱捕的空中单位能像地面单位一样遭到攻击。|n持续秒。" +Hotkey=E + +// Dragon Creep Devour +[ACdv] +Name=吞噬 +EditorSuffix= (中立但是带有敌意) +Tip=吞噬(|cffffcc00D|r) +Ubertip="吞噬某个敌方单位,对其造成每秒点的伤害。如果吞噬者在咀嚼目标单位的过程中被杀,那么被吞噬的单位会从其口中跳出来。" +Hotkey=D + +// Creep Sleep +[ACsp] +Name=睡眠 + +// demon reincarnation +[ANrn] +Name=重生 +Tip=重生 +Ubertip="当被杀时,恶魔自动会复活。重生有秒的施放/攻击间隔时间。" +Researchtip=重生(|cffffcc00R|r) +Researchubertip="当被杀时,恶魔自动会复活。重生有秒的施放/攻击间隔时间。" +Hotkey=R +Unhotkey=R +Researchhotkey=R +EditorSuffix= (玛诺洛斯) + +// Creep Firebolt (like storm bolt, only fiery) +[ANfb] +Name=霹雳闪电 +Tip=霹雳闪电(|cffffcc00B|r) +Ubertip="对敌人投掷出一道霹雳闪电将其击晕。" +Hotkey=B +Researchtip="学习霹雳闪电(|cffffcc00B|r),等级 %d" +Researchhotkey=B +EditorSuffix= (中立但是带有敌意) + +//spawn skeleton +[Asod] +Name=产卵之骨 +EditorSuffix= (黑暗之箭) + +// spawn spiderlings (nerubian) on death +[Assp] +Name=小蜘蛛 +EditorSuffix= (中立但是带有敌意) + +// spawn spiders on death +[Aspd] +Name=小蜘蛛 +EditorSuffix= (中立但是带有敌意) + +// spawn hydra on death +[Aspy] +Name=诞生刺蛇 + +// spawn hydra hatchling on death +[Aspt] +Name=诞生刺蛇幼虫 + +[AOac] +Name=命令光环 +Tip=命令光环 +Ubertip="增加附近单位的攻击力。" + +[Boac] +Bufftip=命令光环 +Buffubertip="该单位处于命令光环的作用之下,因此其攻击力得到了增强。" + +[ACac] +Name=命令光环 +Tip=命令光环 +Ubertip="增加附近单位的攻击力。" + +[Btlf] +Bufftip=定时的生命 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +[ACad] +Name=操纵死尸 +Tip=操纵死尸(|cffffcc00D|r) +Ubertip="复活个阵亡单位。持续时间为秒。" +Hotkey=D +EditorSuffix=(中立但是带有敌意) + +[ACrn] +Name=重生 +Tip=重生 +ubertip="当被杀时,该单位自动会复活。重生有秒的施放/攻击间隔时间。" +EditorSuffix=(中立但是带有敌意) + +// creep (demon) mana burn +[Ambd] +Name=法力燃烧 +EditorSuffix= (中立但是带有敌意 1) +Tip=法力燃烧(|cffffcc00N|r) +Ubertip="射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。" +Hotkey=N + +[Amnb] +Name=法力燃烧 +EditorSuffix= (中立但是带有敌意 2) +Tip=法力燃烧(|cffffcc00N|r) +Ubertip="射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。" +Hotkey=N + +[Ambb] +Name=法力燃烧 +EditorSuffix= (中立但是带有敌意 3) +Tip=法力燃烧(|cffffcc00B|r) +Ubertip="射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。" +Hotkey=B + + +// AOE damage upon death +[Adda] +Name=范围性攻击伤害 +EditorSuffix= (工兵) + +// ghost (shade) +[Agho] +Name=幽灵 + +// Ghost (visible) +[Aeth] +Name=幽灵 +EditorSuffix= (可见的) + +// gold mine ability +[Agld] +Name=金矿能力 + +// goblin mine +[Amin] +Name=金矿 - 爆炸了 +EditorSuffix= (地精地雷) + +// permanent invis +[Apiv] +Name=永久的隐形 + +// return resources +[Artn] +Name=返回 + +// invulnerable +[Avul] +Name=无敌的 +EditorSuffix= (中立的) + +// critter wander +[Awan] +Name=游荡者 +EditorSuffix= (中立的) + +// Malganis dark summoning +[AUmd] +Name=黑暗召唤(马哥尼斯) + +[Aarm] +Name=魔法恢复光环 + +[Barm] +Bufftip=魔法恢复光环 +Buffubertip="该单位处于魔法恢复光环的作用之下,因此其魔法恢复速度得到了加快。" + +// +// below is a section by which aliased abilities, typically used by neutral hostile units, +// can be denoted as different from normal abilities +// + +[ACnr] +Name=生命恢复光环 +EditorSuffix= (中立的) + +[ANre] +Name=生命恢复光环 +EditorSuffix= (中立的) + +// meat wagon cargo hold +[Sch2] +Name=保持原位 +EditorSuffix=(绞肉车) + +// transport cargo hold +[Sch3] +Name=保持原位 +EditorSuffix= (地精飞艇) + +// Tank cargo hold +[Sch4] +Name=保持原位 +EditorSuffix= (罐) + +// Boat cargo hold +[Sch5] +Name=保持原位 +EditorSuffix= (船) + +[Argd] +Name=送回黄金 + +[Argl] +Name=送回黄金和木材 + +[Arlm] +Name=送回木材 + +[Amnz] +Name=范围性攻击伤害 +EditorSuffix=(大矿) + +// animate dead +[Aand] +EditorSuffix=(中立但是带有敌意) + +// anti-magic shield +[ACam] +Name=反魔法外壳 +Tip=反魔法外壳(|cffffcc00N|r) +Ubertip="使目标单位对所有魔法免疫。|n持续秒。" +Hotkey=N +EditorSuffix=(中立但是带有敌意) + +// brilliance aura +[ACba] +Name=辉煌光环 +Tip=辉煌光环 +Ubertip="增加周围单位每秒点的魔法恢复速度。" +EditorSuffix=(中立但是带有敌意) + +// bash +[ACbh] +Name=重击 +EditorSuffix= (中立但是带有敌意 1) +Tip=重击 +Ubertip="给予%的概率能造成点的额外伤害,并在秒内击晕敌人。" + +// bash +[ANbh] +Name=重击 +EditorSuffix= (中立但是带有敌意 2) +Tip=重击 +Ubertip="给予%的概率能造成点的额外伤害并在秒内击晕敌人。" + +// bash +[ANb2] +Name=大锤 +EditorSuffix= (中立但是带有敌意 3/大锤) +Tip=大锤 +Ubertip="使得有%的概率让一次进攻能施放出点的额外伤害,并能在秒内让对手处于昏晕状态。" + + + +// devotion aura +[ACad] +EditorSuffix=(中立但是带有敌意) + +// disease cloud/plague +[Aap1] +EditorSuffix=(憎恶) + +[Aap2] +EditorSuffix=(瘟疫守卫) + +[Aap3] +EditorSuffix=(中立但是带有敌意) + +[Aap4] +EditorSuffix=(中立但是带有敌意且没有攻击力) + +// trueshot aura +[ACat] +Name=强击光环 +Tip=强击光环 +Ubertip="提高周围友军单位%的远程攻击力。" +EditorSuffix=(中立但是带有敌意) + +// Blight +[Abli] +Name=荒芜之地 + +// blight dispel +[Abds] +Name=小型荒芜之地驱散 + +[Abdl] +Name=大型荒芜之地驱散 + +// blight growth +[Abgs] +Name=小型荒芜之地蔓延 + +[Abgl] +Name=大型荒芜之地蔓延 + +// blizzard +[ACbz] +Name=暴风雪 +Tip=暴风雪(|cffffcc00B|r) +Ubertip="召唤出阵冰片波从天而降,每阵冰片波能造成点的伤害。" +Hotkey=B +EditorSuffix=(中立但是带有敌意) + + +// cannibalize +[ACcn] +Name=吞食尸体 +Tip=吞食尸体(|cffffcc00C|r) +Ubertip="吞食一个附近的尸体,每秒治疗生命值。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +// carrion swarm +[ACca] +Name=腐臭蜂群 +Tip=腐臭蜂群(|cffffcc00C|r) +Ubertip="释放出一群怪异的生物对一条线上的敌人造成点的伤害。最大伤害值能达到点。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +// chain lightning +[ACcl] +Name=闪电链 +Tip=闪电链(|cffffcc00C|r) +Ubertip="投掷出一道闪电对第一个敌人造成点的伤害,闪电一共跳跃次。每次闪电的攻击力会随着跳跃次数增加而递减。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +// cold arrows +[ACcw] +Name=冰冻冷箭 +Tip=冰冻冷箭(|cffffcc00C|r) +Ubertip="增加额外的攻击力,并能使目标减速,但是冰冻冷箭也会消耗一定的魔法值。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=C +Unhotkey=C +EditorSuffix=(中立但是带有敌意) + +// cripple +[ACcr] +Name=残废 +Tip=残废(|cffffcc00C|r) +Ubertip="减慢目标单位%的攻击力并减慢其%的移动速度和%的攻击速度。|n持续秒。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +// critical strike +[ACct] +Name=致命一击 +Tip=致命一击 +Ubertip="给予%的概率使得该单位能施放出常规攻击倍的伤害值。" +EditorSuffix=(中立但是带有敌意) + +// curse +[ACcs] +Name=诅咒 +Tip=诅咒(|cffffcc00C|r) +Ubertip="诅咒敌人的某个单位使其有%的概率不能击中自己的目标。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=C +Unhotkey=C +EditorSuffix=(中立但是带有敌意) + +// cyclone +[ACcy] +Name=飓风 +Tip=飓风(|cffffcc00C|r) +Ubertip="将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +[SCc1] +Name=飓风 +Tip=飓风(|cffffcc00C|r) +Ubertip="将目标单位投掷到空中,使其不能移动,攻击和施放任何的魔法技能。而且其他单位也不能在这期间攻击它。|n持续秒。" +Hotkey=C +EditorSuffix=(赛纳留斯) + +// goblin mine damage aoe +[Amnx] +Name=范围性攻击伤害 +EditorSuffix=(地精地雷) + +// super death and decay +[SNdd] +Name=死亡凋零 +Tip=死亡凋零(|cffffcc00D|r) +Ubertip="对有效范围内的单位每秒造成相当于%生命值的伤害,也能摧毁树木。|n持续秒。" +Hotkey=D +Researchtip="学习死亡凋零(|cffffcc00D|r)" +Researchubertip="对有效范围内的单位每秒造成相当于%生命值的伤害,也能摧毁树木。" +Researchhotkey=D +EditorSuffix=(中立但是带有敌意) + +// death coil +[ACdc] +Name=死亡缠绕 +Tip=死亡缠绕(|cffffcc00C|r) +Ubertip="能治愈某个友军单位点生命值,并对某个敌方单位造成一半数值的伤害。" +Hotkey=C +EditorSuffix=(中立但是带有敌意) + +// detection +[Adt1] +EditorSuffix=(岗哨守卫) + +[Adt2] +EditorSuffix=(阴影) + +[Adt3] +EditorSuffix=(矮人直升机) + +// dispel magic +[Adsm] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00D|r) +UberTip="驱逐一定范围内所有魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=D +EditorSuffix=(中立但是带有敌意) + +// auto-dispel magic +[ACdm] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00B|r) +Ubertip="驱散敌人身上的正面效果魔法和友军单位身上的负面效果魔法。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B +EditorSuffix=(中立但是带有敌意) + +// auto-dispel magic (button pos 1,2) +[ACd2] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00B|r) +Ubertip="驱散敌人身上的正面效果魔法和友军单位身上的负面效果魔法。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B +EditorSuffix="(中立的单位但是是敌对的,第二位置)" + +// divine shield +[ACds] +Name=神圣护甲 +Tip=激活神圣护甲(|cffffcc00D|r) +Ubertip="能在秒内使得该单位对所有的攻击和魔法免疫。" +Untip=取消神圣护甲(|cffffcc00D|r) +Hotkey=D +Unhotkey=D +EditorSuffix=(中立但是带有敌意) + +// super earthquake +[SNeq] +Name=地震 +Tip=地震(|cffffcc00E|r) +Ubertip="使大地摇动,对建筑物造成每秒点的伤害并能让处于有效范围内的单位减速%。|n持续秒。" +Hotkey=E +Researchtip="学习地震(|cffffcc00E|r)" +Researchubertip="使大地摇动,对建筑物造成每秒点的伤害并能让处于有效范围内的单位减速%。持续秒。" +Researchhotkey=E +EditorSuffix=(中立但是带有敌意) + +// endurance aura +[SCae] +Name=耐久光环 +Tip=耐久光环 +Ubertip="增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。" +EditorSuffix=(中立但是带有敌意) + +// ensnare +[ACen] +Name=诱捕 +Tip=诱捕(|cffffcc00E|r) +Ubertip="将敌方的某个空中单位捕获到地面能动弹。被诱捕的空中单位能像地面单位一样遭到攻击。|n持续秒。" +Hotkey=E +EditorSuffix=(中立但是带有敌意) + +// entangling roots +[Aenr] +Name=纠缠根须 +EditorSuffix= (中立但是带有敌意 1) +Tip=纠缠根须(|cffffcc00E|r) +Ubertip="从地面冒出根须使目标在秒内不能动弹,并对其造成每秒点的伤害。" +Hotkey=E + +// evasion +[ACev] +Name=闪避 +Tip=闪避 +Ubertip="给予%的概率来躲避掉敌人的攻击" +EditorSuffix=(中立但是带有敌意) + +[ACes] +Name=闪避 +Tip=闪避 +Ubertip="给予%的概率来躲避掉敌人的攻击。" +EditorSuffix=(中立但是带有敌意 100%) + +// faerie fire +[ACff] +Name=精灵之火 +Tip=精灵之火(|cffffcc00R|r) +Ubertip="降低敌目标单位的防御力点并得到该单位的视野。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +EditorSuffix=(中立但是带有敌意) + +// feral spirit +[ACsf] +Name=野兽幽魂 +Tip=野兽幽魂(|cffffcc00T|r) +Ubertip="能召唤出条幽灵狼来。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=T +EditorSuffix=(中立但是带有敌意) + +// spirit pig +[ACs9] +Name=野兽幽魂 +Tip=野兽幽魂(|cffffcc00T|r) +Ubertip="能召唤出个野猪幽灵来。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=T +EditorSuffix="(中立但是带有敌意,野猪)" + +// firebolt +[ACfb] +Name=霹雳闪电 +Tip=霹雳闪电(|cffffcc00B|r) +Ubertip="对敌人投掷出一道霹雳闪电将其击晕。" +Hotkey=B +EditorSuffix=(中立但是带有敌意) + +// force of nature +[ACfr] +Name=自然之力 +Tip=自然之力(|cffffcc00F|r) +Ubertip="将一小块区域内的树木转化成个树人。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F +EditorSuffix=(中立但是带有敌意) + +// frost armor (old, creep) +[ACfa] +Name=霜冻护甲 +Tip=霜冻护甲(|cffffcc00F|r) +Ubertip="霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。" +Hotkey=F +EditorSuffix= (中立但是带有敌意) + +// frost armor (new, creep, autocast) +[ACf2] +Name=霜冻护甲 +Tip=霜冻护甲(|cffffcc00F|r) +Ubertip="霜冻护甲能增加目标单位点的护甲防御,攻击该单位的近战型敌人也会在秒内减速。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=F +EditorSuffix= (自动施放) (中立但是带有敌意) + +// frost armor (autocast) +[ACfu] +Name=霜冻护甲 +Tip=霜冻护甲(|cffffcc00F|r) +Ubertip="使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=F +EditorSuffix= (自动施放) (中立但是带有敌意) + +// frost nova +[ACfn] +Name=霜冻新星 +Tip=霜冻新星(|cffffcc00N|r) +Ubertip="用一阵霜冻来攻击目标单位,造成点的常规伤害和点的霜冻新星伤害。并在秒内减慢被攻击单位的速度。" +Hotkey=N +EditorSuffix=(中立但是带有敌意) + +// archimonde's ghouls harvest lumber +[Ahr2] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="从树木上采集木材资源。" +Untip=返送资源(|cffffcc00E|r) +Unubertip="将采集到的木材运送到最近的木材存储点。" +Hotkey=G +Unhotkey=E +EditorSuffix=(阿克蒙德的食尸鬼在采伐木材) + +// goblin shredder's harvest lumber +[Ahr3] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="从树木上采集木材资源。" +Untip=返送资源(|cffffcc00E|r) +Unubertip="将采集到的木材运送到最近的木材存储点。" +Hotkey=G +Unhotkey=E +EditorSuffix=(地精正在采集木材) + +// heal +[Anh1] +Name=医疗 +EditorSuffix=(中立但是带有敌意 2) +Tip=医疗(|cffffcc00E|r) +Ubertip="医疗一个非机械友军单位。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=E +Unhotkey=E + +[Anh2] +Name=医疗 +EditorSuffix=(中立但是带有敌意 3) +Tip=医疗(|cffffcc00E|r) +Ubertip="医疗一个非机械友军单位。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=E +Unhotkey=E + +// healing ward +[AChd] +EditorSuffix=(中立但是带有敌意) + +// immolation +[ACim] +Name=献祭 +Tip=激活献祭(|cffffcc00L|r) +Ubertip="激活献祭将会让该单位处于火焰的包围之中,对周围的地面单位能造成每秒点的伤害。|n该技能会持续地消耗魔法值。" +Unubertip="取消献祭来停止对魔法的消耗。" +Hotkey=L +Untip=取消献祭(|cffffcc00L|r) +Unhotkey=L +EditorSuffix=(中立但是带有敌意) + +[ACma] +EditorSuffix=(总是有效) + +// inner fire +[ACif] +Name=心灵之火 +Tip=心灵之火(|cffffcc00F|r) +Ubertip="增加目标友军单位%的攻击力和的防御力。|n持续秒。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=F +Unhotkey=F +EditorSuffix=(中立但是带有敌意) + +// lightning shield +[ACls] +Name=闪电护盾 +Tip=闪电护盾(|cffffcc00L|r) +Ubertip="在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。" +Hotkey=L +EditorSuffix=(中立但是带有敌意) + +// load, orc burrow +[Sloa] +Name=装载 +Tip=装载(|cffffcc00L|r) +Ubertip="装载一个指定的友方地面单位。" +Hotkey=L +EditorSuffix=(兽族地洞) + +// load ships +[Slo3] +Name=装载 +Tip=装载(|cffffcc00L|r) +Ubertip="装载一个指定的友方地面单位。" +Hotkey=L +EditorSuffix= (船只) + +// magic immunity +[ACmi] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" +EditorSuffix=(中立但是带有敌意) + +[ACm2] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" +EditorSuffix=(阿克蒙德) + +[ACm3] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" +EditorSuffix=(龙) + +// polymorph +[ACpy] +Name=变形术 +Tip=变形术(|cffffcc00O|r) +Ubertip="使得敌人的一个单位变成一头小绵羊,保有原有的生命值和防御,但是会使其丧失攻击力。|n不能被用在英雄身上。|n持续秒。" +Hotkey=O +EditorSuffix=(中立但是带有敌意) + +// possession +[ACps] +Name=占据 +Tip=占据(|cffffcc00O|r) +Ubertip="占据目标单位的灵魂,但是同时也会摧毁施放者的身体。|n占据魔法不能用在飞行单位,英雄和高于级的野生单位身上。" +Hotkey=O +EditorSuffix=(中立但是带有敌意) + +// pulverize +[ACpv] +Name=粉碎 +Tip=粉碎 +Ubertip="给予%的概率能对周围的单位造成点的伤害。" +EditorSuffix=(中立但是带有敌意) + +// purge +[ACpu] +Name=净化 +Tip=净化(|cffffcc00G|r) +Ubertip="去除目标单位上的所有魔法效果,并以分之1的速度来减慢其移动速度。目标单位会在秒内慢慢恢复自己的速度。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=G +EditorSuffix=(中立但是带有敌意) + +// rain of fire +[ACrf] +Name=火焰雨 +EditorSuffix= (中立但是带有敌意 2) +Tip=火焰雨(|cffffcc00F|r) +Ubertip="召唤出一阵阵的火焰雨,每阵能造成点的伤害。|n持续阵。" +Hotkey=F + +// raise dead +[ACrd] +Name=复活死尸 +Tip=复活死尸(|cffffcc00R|) +Untip="|cffc3dbff点击右键以激活自动施放功能。" +Ubertip="从一具尸体中召唤出个骷髅战士。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=R +Unhotkey=R +EditorSuffix=(中立但是带有敌意) + +// rejuvenation +[ACrj] +Name=生命恢复 +Tip=生命恢复(|cffffcc00E|r) +Ubertip="在秒内治疗目标友方单位生命值。" +Hotkey=E +EditorSuffix=(中立但是带有敌意) + +// human repair +[Ahrp] +Name=修理 +Tip=修理(|cffffcc00R|r) +Ubertip="修理建筑物和机械单位,需要消耗资源。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +EditorSuffix=(人族) + +// roar +[ACro] +Name=咆哮 +Tip=咆哮(|cffffcc00R|r) +Ubertip="增加周围友军单位%的攻击力。|n持续秒。" +Hotkey=R +EditorSuffix=(中立但是带有敌意) + +// roar skeletal orc champion +[ACr1] +Name=咆哮 +Tip=咆哮(|cffffcc00R|r) +Ubertip="增加周围友军单位%的攻击力。|n持续秒。" +Hotkey=R +EditorSuffix= (兽族战士骷髅) + +// root +[Aro1] +Name=扎根 +Tip=扎根(|cffffcc00R|r) +Ubertip="使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人。同时使古树变成加强型护甲。" +Hotkey=R +Untip=起立(|cffffcc00R|r) +Unubertip="使得古树从地上拔起自己的根须从而能进行移动或者近战的战斗。同时使古树变成重型护甲。" +Unhotkey=R +EditorSuffix=(古树) + +[Aro2] +Name=扎根 +Tip=扎根(|cffffcc00R|r) +Ubertip="使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人。同时使古树变成加强型护甲。" +Hotkey=R +Untip=起立(|cffffcc00R|r) +Unubertip="使得古树从地上拔起自己的根须从而能进行移动或者近战的战斗。同时使古树变成重型护甲。" +Unhotkey=R +EditorSuffix=(远古守护者) + +// searing arrows +[ACsa] +Name=灼热之箭 +Tip=灼热之箭(|cffffcc00R|r) +Ubertip="能增加点的火焰伤害,但是会消耗魔法。" +Untip="|cffc3dbff点击右键以激活自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +EditorSuffix=(中立但是带有敌意) + +// sell items +[Asid] +Name=出售物品 +Tip=出售物品 +Ubertip="能卖出你所拥有的物品。" + +// sell units +[Asud] +Name=出售单位 +Tip=出售单位 +Ubertip="能卖出你自己的单位。" + +// shockwave +[ACsh] +Name=震荡波 +Tip=震荡波(|cffffcc00W|r) +Ubertip="一道强劲的震荡波能对一直线上的敌人造成点的伤害。" +Hotkey=W +EditorSuffix=(中立但是带有敌意) + +[ACst] +Name=震荡波 +Tip=震荡波(|cffffcc00W|r) +Ubertip="一道强劲的震荡波能对一直线上的敌人造成点的伤害。" +Hotkey=W +EditorSuffix=(陷阱) + +// sleep +[ACsl] +Name=睡眠 +Tip=睡眠(|cffffcc00L|r) +Ubertip="让目标单位在秒内处于睡眠状态。如果该单位遭到攻击就会自动醒来。" +Hotkey=L +EditorSuffix=(中立但是带有敌意) + +// slow +[ACsw] +EditorSuffix=(中立但是带有敌意) + +// thorns aura +[ACah] +Name=荆棘光环 +Tip=荆棘光环 +Ubertip="给周围单位提供荆棘光环的保护,如果近战型的敌人来攻击它们就会受到每次相当于自身%攻击力的伤害。" +EditorSuffix=(中立但是带有敌意) + +// unholy aura +[ACua] +Name=邪恶光环 +Tip=邪恶光环 +Ubertip="提高周围单位%的移动速度和%的生命值恢复速度。" +EditorSuffix=(中立但是带有敌意) + +// unholy frenzy +[ACuf] +Name=邪恶狂热 +Tip=邪恶狂热(|cffffcc00U|r) +Ubertip="增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。" +Hotkey=U +EditorSuffix=(中立但是带有敌意) + +// vampiric attack +[SCva] +Name=窃取生命 +EditorSuffix= (霜之哀伤) + +// vampiric aura +[ACvp] +Name=吸血光环 +Tip=吸血光环 +Ubertip="周围的单位能将他们自己对敌人%的伤害值转化成自己的生命值。" +EditorSuffix=(中立但是带有敌意) + +// war stomp +[Awrs] +Name=战争践踏 +EditorSuffix= (中立但是带有敌意 1) +Tip=战争践踏(|cffffcc00T|r) +Ubertip="重击地面,对周围的地面单位造成点的伤害并使其在秒内保持眩晕状态。" +Hotkey=T +EditorSuffix=(中立但是带有敌意) + +// war stomp (Ancient Hydra) +[Awrh] +Name=战争践踏 +EditorSuffix= (中立但是带有敌意 2) +Tip=战争践踏(|cffffcc00T|r) +Ubertip="重击地面,对周围的地面单位造成秒内保持眩晕状态。" +Hotkey=T +EditorSuffix=(中立但是带有敌意) + +// war stomp (Sea Giant) +[Awrg] +Name=战争践踏 +EditorSuffix= (中立但是带有敌意 3) +Tip=战争践踏(|cffffcc00T|r) +Ubertip="重击地面,对周围的地面单位造成点的伤害并使其在秒内保持眩晕状态。" +Hotkey=T +EditorSuffix=(中立但是带有敌意) + +// Pulverize (sea giant) +[ACpv] +Name=粉碎 +Tip=粉碎 +Ubertip="给予%的概率能对周围的单位造成点的伤害。" + +// venom spears +[ACvs] +Name=浸毒武器 +Tip=浸毒武器 +Ubertip="每秒能造成点的毒性伤害。|n持续秒。" +EditorSuffix=(中立但是带有敌意) + +// web +[ACwb] +Name=蛛网 +Tip=蛛网(|cffffcc00W|r) +Untip="|cffc3dbff|cffc3dbff点击右键以激活自动施放功能。" +Ubertip="将目标单位用一张网来捕获到地面,从而地面上的单位可以对其进行攻击。|n持续秒。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=W +Unhotkey=W +EditorSuffix=(中立但是带有敌意) + +// Crushing Wave +[ACcv] +Name=冲击波 +Tip=冲击波(|cffffcc00C|r) +Ubertip="发射出一道巨大的能量波,对一线上的敌人造成点的伤害,总共能造成点的伤害。" +Hotkey=C + +// Crushing Wave (dragon turtle) +[ACc2] +Name=冲击波 +Tip=冲击波(|cffffcc00C|r) +Ubertip="发射出一道巨大的能量波,对一直线上的每个敌方地面单位造成点的伤害。总共会造成点的伤害。" +Hotkey=C +EditorSuffix=(较小的) + +// Crushing Wave (lesser version) +[ACc3] +Name=冲击波 +Tip=冲击波(|cffffcc00C|r) +Ubertip="发射出一道巨大的能量波,对一直线上的每个敌方地面单位造成点的伤害。总共会造成点的伤害。" +Hotkey=C +EditorSuffix=(较小的) + +// summon sea elemental +[ACwe] +Name=召唤海元素 +Tip=召唤海元素(|cffffcc00E|r) +Ubertip="召唤一个强大的有点生命值的海元素,具有 - 的伤害值。|n持续秒。" +Hotkey=E + +// neutral interact +[Anei] +Name=选择使用者 +Tip=选择使用者(|cffffcc00U|r) +Hotkey=U + +// permanent flyer immolation +[Apmf] +Name=凤凰火焰 +Tip=凤凰火焰 +EditorSuffix=(飞行单位) +Ubertip="对周围敌方的飞行单位造成每秒点的伤害。" + +// neutral version of resistant skin +[ACrk] +Name=抗性皮肤 +EditorSuffix= (中立但是带有敌意 1) +Tip=抗性皮肤 +Ubertip="减少负面魔法的持续时间,使单位对某些魔法免疫。" + +// neutral version of resistant skin (altered button pos) +[ACsk] +Name=抗性皮肤 +EditorSuffix= (中立但是带有敌意 2) +Tip=抗性皮肤 +Ubertip="减少负面魔法的持续时间,使单位对某些魔法免疫。" + + +// Forked Lightning +[ANfl] +Name=叉状闪电 +Tip=叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 1|r],叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 2|r],叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。","召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。","召唤一道锥形闪电伤害海女巫面前的多个敌人,至多 个敌单位, 点伤害。" +Hotkey=F +Researchtip="学习叉状闪电(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤一道锥形闪电伤害女海巫面前的多个敌人。|n|n|cffffcc00等级 1|r - 伤害/单位。|n|cffffcc00等级 2|r - 伤害/单位。|n|cffffcc00等级 3|r - 伤害力/单位。" +Researchhotkey=F + +// Forked Lightning +[ACfl] +Name=叉状闪电 +EditorSuffix= (中立但是带有敌意) +Tip=叉状闪电(|cffffcc00R|r) +Ubertip="召唤一道锥形闪电伤害女海巫面前的多个敌人,至多个敌单位,点伤害。" +Hotkey=R + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BNpi] +EditorName=永久的献祭 +EditorSuffix= (中立的单位但是是敌对的1) + +[Bpig] +EditorName=永久的献祭 +EditorSuffix= (中立的单位但是是敌对的 2) + +[BNsl] +EditorName=灵魂保存 + +[BNst] +EditorName=惊吓 + +[BNrf] +EditorName=火焰雨(区域魔法) + +[Bfre] +EditorName=冰冻 + +[Bsha] +EditorName=共享视野 + +[Btdg] +EditorName=龙卷风伤害 + +[Btsa] +EditorName=龙卷风旋转 (区域魔法) + +[ANmd] +EditorName=季风 + +[XErc] +EditorName=混乱之雨(效果) + +[XErf] +EditorName=火焰雨(效果) + +[XIct] +EditorName=能更改时间的物品 + +[XNmo] +EditorName=季风(效果) + +[BNva] +EditorName=Volcano (Area) + +[XNvc] +EditorName=Volcano (Effect) + +[XNcs] +EditorName=Cluster Rockets (Effect) + +[XNhs] +EditorName=Healing Spray (Effect) \ No newline at end of file diff --git a/share/mpq/units/units/neutralunitfunc.txt b/share/mpq/units/units/neutralunitfunc.txt new file mode 100644 index 0000000..7924014 --- /dev/null +++ b/share/mpq/units/units/neutralunitfunc.txt @@ -0,0 +1,2959 @@ +// permits dependencies upon heroes +[HERO] +DependencyOr=Hamg,Hblm,Hmkg,Hpal,Obla,Ofar,Oshd,Otch,Edem,Ekee,Emoo,Ewar,Ucrl,Udea,Udre,Ulic,Npbm,Nbrn,Nngs,Nplh,Nbst + +[nwad] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp + +// skeletal archer +[nska] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonArcher.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 + +// skeleton +[nske] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + + +// skeletal archer (Summoned) +[nsca] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonArcher.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 + +// skeleton (Summoned) +[nsce] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +// giant skeleton +[nskg] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +// skeletal marksman +[nskm] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonArcher.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 + +// burning archer +[nskf] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNSkeletonArcher.blp +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +// wind serpent 1 +[nws1] +Art=ReplaceableTextures\CommandButtons\BTNDragonHawk.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\DragonHawkMissile\DragonHawkMissile.mdl +Missilearc=0.15 +Missilespeed=1100 +MissileHoming=1 +Attachmentanimprops=medium + +// wind serpent 2 +[nws2] +Art=ReplaceableTextures\CommandButtons\BTNDragonHawk.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\DragonHawkMissile\DragonHawkMissile.mdl +Missilearc=0.15 +Missilespeed=1100 +MissileHoming=1 +Attachmentanimprops=medium + +// bandit 1 +[nban] +Art=ReplaceableTextures\CommandButtons\BTNBandit.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// brigand +[nbrg] +Art=ReplaceableTextures\CommandButtons\BTNBanditSpearThrower.blp +Missileart=Abilities\Weapons\Banditmissile\Banditmissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// bandit 2 +[nrog] +Art=ReplaceableTextures\CommandButtons\BTNBandit.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// bandit 3 +[nenf] +Art=ReplaceableTextures\CommandButtons\BTNBandit.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// bandit lord +[nbld] +Art=ReplaceableTextures\CommandButtons\BTNBanditLord.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// assassin +[nass] +Art=ReplaceableTextures\CommandButtons\BTNBanditSpearThrower.blp +Missileart=Abilities\Weapons\Banditmissile\Banditmissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// black dragon whelp +[nbdr] +Art=ReplaceableTextures\CommandButtons\BTNBlackDragon.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.00 +Missilespeed=900 +Attachmentanimprops=medium + +// black drake +[nbdk] +Art=ReplaceableTextures\CommandButtons\BTNBlackDragon.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.00 +Missilespeed=900 +Attachmentanimprops=medium + +// black dragon +[nbwm] +Attachmentanimprops=medium +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.00 +Art=ReplaceableTextures\CommandButtons\BTNBlackDragon.blp + +// blue dragon whelp +[nadw] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNAzureDragon.blp +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 + +// blue drake +[nadk] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNAzureDragon.blp +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 + +// blue dragon +[nadr] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNAzureDragon.blp +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 + +// bronze dragon whelp +[nbzw] +Attachmentanimprops=medium +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Art=ReplaceableTextures\CommandButtons\BTNBronzeDragon.blp + +// bronze drake +[nbzk] +Attachmentanimprops=medium +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Art=ReplaceableTextures\CommandButtons\BTNBronzeDragon.blp + +// bronze dragon +[nbzd] +Attachmentanimprops=medium +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Art=ReplaceableTextures\CommandButtons\BTNBronzeDragon.blp + +// green dragon whelp +[ngrw] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNGreenDragon.blp +Missileart=Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +// green drake +[ngdk] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNGreenDragon.blp +Missileart=Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +// green dragon +[ngrd] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNGreenDragon.blp +Missileart=Abilities\Weapons\GreenDragonMissile\GreenDragonMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +// red dragon whelp +[nrdk] +Art=ReplaceableTextures\CommandButtons\BTNRedDragon.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.00 +Missilespeed=900 +Attachmentanimprops=medium + +// red drake +[nrdr] +Art=ReplaceableTextures\CommandButtons\BTNRedDragon.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.00 +Missilespeed=900 +Attachmentanimprops=medium + +// red dragon +[nrwm] +Art=ReplaceableTextures\CommandButtons\BTNRedDragon.blp +Attachmentanimprops=medium +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.00 +Missilespeed=900 + +// black dragon roost +[ndrk] +Art=ReplaceableTextures\CommandButtons\BTNBlackDragonRoost.blp +Sellunits=nbdr,nbdk,nbwm + +// blue dragon roost +[ndru] +Art=ReplaceableTextures\CommandButtons\BTNBlueDragonRoost.blp +Sellunits=nadw,nadk,nadr + +// bronze dragon roost +[ndrz] +Art=ReplaceableTextures\CommandButtons\BTNDragonRoost.blp +Sellunits=nbzw,nbzk,nbzd + +// green dragon roost +[ndrg] +Art=ReplaceableTextures\CommandButtons\BTNGreenDragonRoost.blp +Sellunits=ngrw,ngdk,ngrd + +// red dragon roost +[ndrr] +Art=ReplaceableTextures\CommandButtons\BTNDragonRoost.blp +Sellunits=nrdk,nrdr,nrwm + +// centaur archer +[ncea] +Art=ReplaceableTextures\CommandButtons\BTNCentaurArcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// centaur impaler +[ncim] +Art=ReplaceableTextures\CommandButtons\BTNCentaurArcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// centaur outrunner +[ncen] +Art=ReplaceableTextures\CommandButtons\BTNcentaur.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// centaur drudge +[ncer] +Art=ReplaceableTextures\CommandButtons\BTNcentaur.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// centaur sorceror +[ncks] +Art=ReplaceableTextures\CommandButtons\BTNCentaurKhan.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// centaur khan +[ncnk] +Art=ReplaceableTextures\CommandButtons\BTNCentaurKhan.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Dark Troll High Priest +[ndth] +Art=ReplaceableTextures\CommandButtons\BTNDarkTrollShadowPriest.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Dark Troll Shadow Priest +[ndtp] +Art=ReplaceableTextures\CommandButtons\BTNDarkTrollShadowPriest.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Dark troll +[ndtr] +Art=ReplaceableTextures\CommandButtons\BTNDarkTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// dark troll berserker +[ndtb] +Art=ReplaceableTextures\CommandButtons\BTNDarkTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// dark troll trapper +[ndtt] +Art=ReplaceableTextures\CommandButtons\BTNDarkTrollTrapper.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// dark troll warlord +[ndtw] +Art=ReplaceableTextures\CommandButtons\BTNDarkTrollTrapper.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// berserk elemental +[nelb] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +// enraged elemental +[nele] +Art=ReplaceableTextures\CommandButtons\BTNSummonWaterElemental.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +[nenc] +Art=ReplaceableTextures\CommandButtons\BTNCorruptedEnt.blp +Attachmentanimprops=medium + +[nenp] +Art=ReplaceableTextures\CommandButtons\BTNCorruptedEnt.blp +Attachmentanimprops=medium + +[nepl] +Art=ReplaceableTextures\CommandButtons\BTNCorruptedEnt.blp +Attachmentanimprops=medium + +// fel stalker +[nfel] +Art=ReplaceableTextures\CommandButtons\BTNFelHound.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Forest Troll High Priest +[nfsh] +Art=ReplaceableTextures\CommandButtons\BTNForestTrollShadowPriest.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// Forest Troll Shadow Priest +[nfsp] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNForestTrollShadowPriest.blp +Missileart=Abilities\Weapons\FireballMissile\FireballMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// forest troll 1 +[nftr] +Art=ReplaceableTextures\CommandButtons\BTNForestTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// forest troll berserker +[nftb] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNForestTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// forest troll 3 +[nftt] +Art=ReplaceableTextures\CommandButtons\BTNForestTrollTrapper.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// forest troll king +[nftk] +Art=ReplaceableTextures\CommandButtons\BTNForestTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +[nnom] +// Goblin Laboratory +[ngad] +Art=ReplaceableTextures\CommandButtons\BTNAmmoDump.blp +Sellunits=ngsp,nzep,ngir + +// goblin merchant +[ngme] +Art=ReplaceableTextures\CommandButtons\BTNMerchant.blp +Sellitems=stwp,bspd,dust,tret,prvt,cnob,stel,pnvl,shea,spro,pinv + +// goblin shipyard +[nshp] +Art=ReplaceableTextures\CommandButtons\BTNGoblinShipyard.blp +Sellunits=nbot + +// rock golem 1 +[ngrk] +Buttonpos=2,0 +Attachmentanimprops=large +Art=ReplaceableTextures\CommandButtons\BTNRockGolem.blp + +// rock golem 2 +[ngst] +Attachmentanimprops=large +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.0 +Missilespeed=1000 +Art=ReplaceableTextures\CommandButtons\BTNRockGolem.blp + +// rock golem 3 +[nggr] +Attachmentanimprops=large +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.0 +Missilespeed=1000 +Art=ReplaceableTextures\CommandButtons\BTNRockGolem.blp + +// battle golem +[narg] +Attachmentanimprops=large +Art=ReplaceableTextures\CommandButtons\BTNArmorGolem.blp + +// war golem +[nwrg] +Attachmentanimprops=large +Art=ReplaceableTextures\CommandButtons\BTNArmorGolem.blp + +// siege golem +[nsgg] +Attachmentanimprops=large +Art=ReplaceableTextures\CommandButtons\BTNArmorGolem.blp + +// goblin shredder +[ngir] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNJunkGolem.blp + +// Furbolg level 4 +[nfrl] +Art=ReplaceableTextures\CommandButtons\BTNFurbolg.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Furbolg Tracker level 6 +[nfrb] +Art=ReplaceableTextures\CommandButtons\BTNFurbolgTracker.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Furbolg Champion level 7 +[nfrg] +Art=ReplaceableTextures\CommandButtons\BTNFurbolg.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Furbolg Ursa Warrior level 8 +[nfra] +Art=ReplaceableTextures\CommandButtons\BTNFurbolgElder.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Furbolg Shaman level 4 +[nfrs] +Art=ReplaceableTextures\CommandButtons\BTNFurbolgShaman.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Furbolg Elder Shaman level 7 +[nfre] +Art=ReplaceableTextures\CommandButtons\BTNFurbolgShaman.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// ghost +[ngh1] +Art=ReplaceableTextures\CommandButtons\BTNGhost.blp +Missileart=Abilities\Weapons\BansheeMissile\BansheeMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 + +// wraith +[ngh2] +Art=ReplaceableTextures\CommandButtons\BTNGhost.blp +Missileart=Abilities\Weapons\BansheeMissile\BansheeMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 + +// gnoll poacher +[ngna] +Art=ReplaceableTextures\CommandButtons\BTNGnollArcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// gnoll assassin +[ngns] +Art=ReplaceableTextures\CommandButtons\BTNGnollArcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\PoisonArrow\PoisonArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// gnoll 1 +[ngno] +Art=ReplaceableTextures\CommandButtons\BTNGnoll.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// gnoll brute +[ngnb] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNGnoll.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// gnoll warden +[ngnw] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNGnollWarden.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// gnoll overseer +[ngnv] +Buttonpos=3,0 +Art=ReplaceableTextures\CommandButtons\BTNGnollKing.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Gold Mine +[ngol] +Art=ReplaceableTextures\CommandButtons\BTNGoldMine.blp + +// goblin sapper +[ngsp] +Art=ReplaceableTextures\CommandButtons\BTNGoblinSapper.blp +Buttonpos=0,0 + +// harpy scout +[nhar] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNHarpy.blp +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 + +// harpy rogue +[nhrr] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNHarpy.blp +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 + +// harpy wind witch +[nhrw] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNHarpyWitch.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// harpy hag +[nhrh] +Art=ReplaceableTextures\CommandButtons\BTNHarpyWitch.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// harpy queen +[nhrq] +Art=ReplaceableTextures\CommandButtons\BTNHarpyQueen.blp +Missileart=Abilities\Weapons\GargoyleMissile\GargoyleMissile.mdl +Missilearc=0.0 +Missilespeed=1000 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// fallen priest +[nhfp] +Art=ReplaceableTextures\CommandButtons\BTNAcolyte.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// deceiver +[nhdc] +Art=ReplaceableTextures\CommandButtons\BTNAcolyte.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// heretic +[nhhr] +Art=ReplaceableTextures\CommandButtons\BTNAcolyte.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// ice troll +[nitr] +Art=ReplaceableTextures\CommandButtons\BTNIceTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ice troll berserker +[nits] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNIceTrollBeserker.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ice troll trapper +[nitt] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNICeTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ice troll warlord +[nitw] +Art=ReplaceableTextures\CommandButtons\BTNICeTroll.blp +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ice troll high priest +[nith] +Art=ReplaceableTextures\CommandButtons\BTNIceTrollShaman.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ice troll priest +[nitp] +Art=ReplaceableTextures\CommandButtons\BTNIceTrollShadowPriest.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// kobold +[nkob] +Art=ReplaceableTextures\CommandButtons\BTNKobold.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// kobold geomancer +[nkog] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNKoboldGeomancer.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// kobold taskmaster +[nkol] +Art=ReplaceableTextures\CommandButtons\BTNKobold.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// kobold tunneler +[nkot] +Art=ReplaceableTextures\CommandButtons\BTNKobold.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// lightning lizard +[nltl] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizard.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// monster lure +[nlur] +Art=ReplaceableTextures\CommandButtons\BTNMonsterLure.blp + +// thunder lizard +[nthl] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizard.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// storm wyrm +[nstw] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizard.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// murloc flesheater +[nmfs] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNMurlocFlesheater.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// murloc mutant +[nmmu] +Art=ReplaceableTextures\CommandButtons\BTNMurlocMutant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// murloc plaguebearer +[nmpg] +Art=ReplaceableTextures\CommandButtons\BTNMurlocMutant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// murloc tiderunner +[nmrl] +Art=ReplaceableTextures\CommandButtons\BTNMurloc.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// murloc huntsman +[nmrr] +Art=ReplaceableTextures\CommandButtons\BTNMurloc.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// murloc nightcrawler +[nmrm] +Art=ReplaceableTextures\CommandButtons\BTNMurlocNightCrawler.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// owlbear +[nowb] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNOwlBear.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// enraged owlbear +[nowe] +Art=ReplaceableTextures\CommandButtons\BTNOwlBear.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// berserk owlbear +[nowk] +Art=ReplaceableTextures\CommandButtons\BTNOwlBear.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// razormane scout +[nrzs] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// razormane brute +[nrzb] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// razormane medicine man +[nrzm] +Buttonpos=3,0 +Art=ReplaceableTextures\CommandButtons\BTNRazorManeChief.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// razormane chieftain +[nrzg] +Art=ReplaceableTextures\CommandButtons\BTNRazorManeChief.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + + +// quillboar +[nrzt] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// quillboar hunter +[nqbh] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nspd] +Art=ReplaceableTextures\CommandButtons\BTNNerubian.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nnwa] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNNerubian.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nnwl] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNNerubianQueen.blp +Missileart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissile.mdl +Missilearc=0.15 +Missilespeed=500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nnws] +Art=ReplaceableTextures\CommandButtons\BTNnerubianSpiderLord.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nnwr] +Art=ReplaceableTextures\CommandButtons\BTNnerubianSpiderLord.blp +Missileart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissile.mdl +Missilearc=0.15 +Missilespeed=500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nnwq] +Art=ReplaceableTextures\CommandButtons\BTNNerubianQueen.blp +Missileart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissile.mdl +Missilearc=0.15 +Missilespeed=500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Mercenary Camp Lord Summer +[nmer] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nftb,nfsp,nogm,ngrk + +// Lord Fall +[nmr2] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=ngnb,ngnw,nomg,ngrk + +// Lord Winter +[nmr3] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=ngnv,nits,nitt,ngrk + +// Barrens +[nmr4] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=ncen,nhrr,nrzm,nhrw + +// Ashenvale +[nmr5] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nsts,nfrs,nthl + +// Felwood +[nmr6] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nmfs,nslf,nstl + +// Northrend +[nmr7] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nnwa,nits,nrvs,nnwl + +// Cityscape +[nmr8] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nrog,nass,nkog,nfsh + +// Dalaran +[nmr9] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nrog,nass,nkog,nfsh + +// Village (fall) +[nmr0] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nkob,nmrr,nass,nkog + +// Dungeon +[nmra] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nskf,nkog,nowb + +// Underground +[nmrb] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nskf,nkog,nowb + +// Sunken Ruins +[nmrc] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nmsn,nlsn,nlds,ntrt + +// Icecrown Glacier +[nmrd] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=nanm,nbdm,nmgw,nfps + +// outland +[nmre] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=npfl,ndrm,nvdw,ndrd + +// black citadel +[nmrf] +Art=ReplaceableTextures\CommandButtons\BTNMercenaryCamp.blp +Sellunits=npfl,ndrm,nvdw,ndrd + + +// Tavern +[ntav] +Art=ReplaceableTextures\CommandButtons\BTNTavern.blp +Sellunits=Nngs,Nbrn,Npbm,Nplh,Nbst + +// Fountain of Power +[nmoo] +Art=ReplaceableTextures\CommandButtons\BTNFountainOfLife.blp + +// fountain of health +[nfoh] +Art=ReplaceableTextures\CommandButtons\BTNFountainOfLife.blp + +// Marketplace +[nmrk] +Art=ReplaceableTextures\CommandButtons\BTNBlackMarket.blp + + +// ogre 1 +[nogr] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNOgre.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// ogre 2 +[nogm] +Buttonpos=3,0 +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNOgre.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// ogre lord +[nogl] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNOgreLord.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// ogre magi +[nomg] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNOgreMagi.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// fire revenant +[nrvf] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// frost revenant +[nrvs] +Buttonpos=3,0 +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// lightning revenant +[nrvl] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// ice revenant +[nrvi] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// death revenant +[nrvd] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// sludge minion +[nslm] +Art=ReplaceableTextures\CommandButtons\BTNSludgeCreature.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +//sludge flinger +[nslf] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNSludgeCreature.blp +Missileart=Abilities\Weapons\SludgeMissile\SludgeMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// sludge monstrosity +[nsln] +Art=ReplaceableTextures\CommandButtons\BTNSludgeCreature.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// salamander hatchling +[nslh] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardSalamander.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// salamander +[nslr] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardSalamander.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// salamander vizier +[nslv] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardVizier.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// salamander lord +[nsll] +Art=ReplaceableTextures\CommandButtons\BTNThunderLizardSalamander.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// satyr Trickster +[nsat] +Art=ReplaceableTextures\CommandButtons\BTNSatyrTrickster.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// satyr shadowdancer +[nsts] +Art=ReplaceableTextures\CommandButtons\BTNSatyrTrickster.blp +Missileart=Abilities\Weapons\BlackKeeperMissile\BlackKeeperMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// satyr hellcaller +[nsth] +Art=ReplaceableTextures\CommandButtons\BTNSatyr.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// satyr soulstealer +[nstl] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNSatyr.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// satyr +[nsty] +Art=ReplaceableTextures\CommandButtons\BTNSatyr.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// black spider +[nspb] +Art=ReplaceableTextures\CommandButtons\BTNSpiderBlack.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// spider +[nspr] +Art=ReplaceableTextures\CommandButtons\BTNSpider.blp +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// giant spider +[nsgt] +Art=ReplaceableTextures\CommandButtons\BTNSpider.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// spitting spider +[nssp] +Art=ReplaceableTextures\CommandButtons\BTNSpiderBlue.blp +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// brood mother +[nsbm] +Art=ReplaceableTextures\CommandButtons\BTNSpiderBlue.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// green spider +[nspg] +Art=ReplaceableTextures\CommandButtons\BTNSpiderGreen.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// sasquatch +[nsqt] +Art=ReplaceableTextures\CommandButtons\BTNSasquatch.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// elder sasquatch +[nsqe] +Art=ReplaceableTextures\CommandButtons\BTNSasquatchShaman.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// sasquatch oracle +[nsqo] +Art=ReplaceableTextures\CommandButtons\BTNSasquatch.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// ancient sasquatch +[nsqa] +Art=ReplaceableTextures\CommandButtons\BTNSasquatch.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// dog +[ndog] +Art=ReplaceableTextures\CommandButtons\BTNWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// pig critter +[npig] +Art=ReplaceableTextures\CommandButtons\BTNPig.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// stag critter +[nder] +Art=ReplaceableTextures\CommandButtons\BTNStag.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nsea] +Art=ReplaceableTextures\CommandButtons\BTNSeal.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nshe] +Art=ReplaceableTextures\CommandButtons\BTNSheep.blp +RandomSoundLabel=SheepRandomSounds +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nshf] +Art=ReplaceableTextures\CommandButtons\BTNSheep.blp +RandomSoundLabel=SheepRandomSounds + +[nsha] +Art=ReplaceableTextures\CommandButtons\BTNSheep.blp +RandomSoundLabel=SheepRandomSounds +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nshw] +Art=ReplaceableTextures\CommandButtons\BTNSheep.blp +RandomSoundLabel=SheepRandomSounds +Animprops=swim +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// vulture +[nvul] +Art=ReplaceableTextures\CommandButtons\BTNVulture.blp + +// male villager +[nvil] +Art=ReplaceableTextures\CommandButtons\BTNVillagerMan.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// kid villager +[nvlk] +Art=ReplaceableTextures\CommandButtons\BTNVillagerKid.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// female villager +[nvlw] +Art=ReplaceableTextures\CommandButtons\BTNVillagerWoman.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// wendigo +[nwen] +Art=ReplaceableTextures\CommandButtons\BTNWendigo.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// timber wolf +[nwlt] +Art=ReplaceableTextures\CommandButtons\BTNTimberWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// giant wolf +[nwlg] +Art=ReplaceableTextures\CommandButtons\BTNTimberWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// dire wolf +[nwld] +Art=ReplaceableTextures\CommandButtons\BTNDireWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// white wolf +[nwwf] +Art=ReplaceableTextures\CommandButtons\BTNTimberWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// giant white wolf +[nwwg] +Art=ReplaceableTextures\CommandButtons\BTNTimberWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// white dire wolf +[nwwd] +Art=ReplaceableTextures\CommandButtons\BTNTimberWolf.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// elder wendigo +[nwnr] +Art=ReplaceableTextures\CommandButtons\BTNWendigo.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// ancient wendigo +[nwna] +Art=ReplaceableTextures\CommandButtons\BTNWendigo.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// wendigo shaman +[nwns] +Art=ReplaceableTextures\CommandButtons\BTNWendigo.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// rogue wizard +[nwzr] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +// renegade wizard +[nwzg] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +// apprentice wizard +[nwiz] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\PriestMissile\PriestMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +// dark wizard +[nwzd] +Art=ReplaceableTextures\CommandButtons\BTNBanditMage.blp +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nzep] +Art=ReplaceableTextures\CommandButtons\BTNGoblinZeppelin.blp +Buttonpos=0,0 +MovementSoundLabel=GoblinZeppelinMovement +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops=large + +[ninf] +Art=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Attachmentanimprops=large + +[nbal] +Art=ReplaceableTextures\CommandButtons\BTNDoomGuard.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[nba2] +Art=ReplaceableTextures\CommandButtons\BTNDoomGuard.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[nglm] +Art=ReplaceableTextures\CommandButtons\BTNGoblinLandMine.blp + +[nwgt] +Art=ReplaceableTextures\CommandButtons\BTNWaygate.blp + +[ncnt] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nct1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nct2] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[ntnt] +Art=ReplaceableTextures\CommandButtons\BTNTaurenHut.blp + +[ntt2] +Art=ReplaceableTextures\CommandButtons\BTNTaurenHut.blp + +[ngnh] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[ngt2] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nten] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[ntn2] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nfh0] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nfh1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nfr1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nfr2] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nth0] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nth1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[ncb0] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb1] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb2] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb3] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb4] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb5] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb6] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb7] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb8] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncb9] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncba] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncbb] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncbc] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncbd] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncbe] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[ncbf] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp +Attachmentanimprops=large + +[nmh0] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nmh1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +// nerubian ziggurat +[nnzg] +Art=ReplaceableTextures\CommandButtons\BTNNerubianZiggurat.blp + +// circle of power +[ncop] +Art=ReplaceableTextures\CommandButtons\BTNCOP.blp + +[ncp2] +Art=ReplaceableTextures\CommandButtons\BTNCOP.blp + +[ncp3] +Art=ReplaceableTextures\CommandButtons\BTNCOP.blp + +// harpy nest +[nhns] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +// owl +[nowl] +Art=ReplaceableTextures\CommandButtons\BTNScout.blp + +// owl 2 +[now2] +Art=ReplaceableTextures\CommandButtons\BTNScout.blp + +// owl 3 +[now3] +Art=ReplaceableTextures\CommandButtons\BTNScout.blp + +// spirit pig +[nspp] +Art=ReplaceableTextures\CommandButtons\BTNRazorback.blp + +// Pandaren Brewmaster +[Npbm] +Art=ReplaceableTextures\CommandButtons\BTNPandarenBrewmaster.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=2,1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-pandarenbrewmaster.blp + +// fire +[npn1] +Art=ReplaceableTextures\CommandButtons\BTNFireBrewmaster.blp +Attachmentanimprops=medium + +// storm +[npn2] +Art=ReplaceableTextures\CommandButtons\BTNStormBrewmaster.blp +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Attachmentanimprops=medium + +// earth +[npn3] +Art=ReplaceableTextures\CommandButtons\BTNEarthBrewmaster.blp +Attachmentanimprops=medium + +// Dark Ranger +[Nbrn] +Art=ReplaceableTextures\CommandButtons\BTNBansheeRanger.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Buttonpos=1,1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-bansheeranger.blp + +[ndr1] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +[ndr2] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +[ndr3] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +// Firelord +[Nfir] +Art=ReplaceableTextures\CommandButtons\BTNHeroAvatarOfFlame.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Buttonpos=3,1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\LordofFlameMissile\LordofFlameMissile.mdl +Missilearc=0.08 +MissileHoming=1 +Missilespeed=1200 +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-avatarofflame.blp + +//lava spawn 1 +[nlv1] +Art=ReplaceableTextures\CommandButtons\BTNLavaSpawn.blp +Missileart=Abilities\Weapons\LavaSpawnMissile\LavaSpawnMissile.mdl +Missilearc=0.15 +MissileHoming=1 +Missilespeed=1000 +Attachmentanimprops=medium + +//lava spawn 2 +[nlv2] +Art=ReplaceableTextures\CommandButtons\BTNLavaSpawn.blp +Missileart=Abilities\Weapons\LavaSpawnMissile\LavaSpawnMissile.mdl +Missilearc=0.15 +MissileHoming=1 +Missilespeed=1000 +Attachmentanimprops=medium + +//lava spawn 3 +[nlv3] +Art=ReplaceableTextures\CommandButtons\BTNLavaSpawn.blp +Missileart=Abilities\Weapons\LavaSpawnMissile\LavaSpawnMissile.mdl +Missilearc=0.15 +MissileHoming=1 +Missilespeed=1000 +Attachmentanimprops=medium + + +// Alchemist +[Nalc] +Art=ReplaceableTextures\CommandButtons\BTNHeroAlchemist.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=3,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +DependencyOr=Nalm,Nal2,Nal3 +// do NOT put a similar DependencyOr on Nalm +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-alchemist.blp + +// Alchemist +[Nalm] +Art=ReplaceableTextures\CommandButtons\BTNHeroAlchemist.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=3,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-alchemist.blp + +// Alchemist +[Nal2] +Art=ReplaceableTextures\CommandButtons\BTNHeroAlchemist.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=3,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-alchemist.blp + +// Alchemist +[Nal3] +Art=ReplaceableTextures\CommandButtons\BTNHeroAlchemist.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=3,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-alchemist.blp + +// Tinker +[Ntin] +Art=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=2,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-tinker.blp + +// Tinker -- Robo Goblin +[Nrob] +Art=ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Missileart=Abilities\Weapons\BrewmasterMissile\BrewmasterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Buttonpos=2,2 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl +Attachmentanimprops=large +Attachmentlinkprops=alternate +Boneprops=alternate +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-tinker.blp + +// clockwerk goblin +[ncgb] +Art=ReplaceableTextures\CommandButtons\BTNClockWerkGoblin.blp +Attachmentanimprops=medium + +// clockwerk goblin +[ncg1] +Art=ReplaceableTextures\CommandButtons\BTNClockWerkGoblin.blp +Attachmentanimprops=medium + +// clockwerk goblin +[ncg2] +Art=ReplaceableTextures\CommandButtons\BTNClockWerkGoblin.blp +Attachmentanimprops=medium + +// clockwerk goblin +[ncg3] +Art=ReplaceableTextures\CommandButtons\BTNClockWerkGoblin.blp +Attachmentanimprops=medium + +// pocket factory (Level 1) +[nfac] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Attachmentanimprops=medium + +// pocket factory (level 2) +[nfa1] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Attachmentanimprops=medium + +// pocket factory (Level 3) +[nfa2] +Art=ReplaceableTextures\CommandButtons\BTNPocketFactory.blp +Attachmentanimprops=medium + +// Skink critter +[nskk] +Art=ReplaceableTextures\CommandButtons\BTNSkink.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// crab critter +[ncrb] +Art=ReplaceableTextures\CommandButtons\BTNSpinyCrab.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Chicken critter +[nech] +Art=ReplaceableTextures\CommandButtons\BTNCritterChicken.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Frog critter +[nfro] +Art=ReplaceableTextures\CommandButtons\BTNHex.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Rabbit critter +[necr] +Art=ReplaceableTextures\CommandButtons\BTNCritterRabbit.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// Raccoon critter +[nrac] +Art=ReplaceableTextures\CommandButtons\BTNRacoon.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + + +// hermit crab critter +[nhmc] +Art=ReplaceableTextures\CommandButtons\BTNHermitCrab.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// albatross critter +[nalb] +Art=ReplaceableTextures\CommandButtons\BTNAlbatross.blp +Buttonpos=0,0 + +// sea turtle hatchling +[ntrh] +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleGreen.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// sea turtle +[ntrs] +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleGreen.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// giant sea turtle +[ntrt] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleGreen.blp +Missileart=Abilities\Weapons\WaterElementalMissile\WaterElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// gargantuan sea turtle +[ntrg] +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleGreen.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// dragon turtle +[ntrd] +Art=ReplaceableTextures\CommandButtons\BTNSeaTurtleRed.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// hydra +[nhyd] +Art=ReplaceableTextures\CommandButtons\BTNGreenHydra.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// hydra hatchling +[nhyh] +Art=ReplaceableTextures\CommandButtons\BTNGreenHydra.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// elder hydra +[nehy] +Art=ReplaceableTextures\CommandButtons\BTNGreenHydra.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// ancient hydra +[nahy] +Art=ReplaceableTextures\CommandButtons\BTNGreenHydra.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// lobstrokk prawn +[nlpr] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +[nlps] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +// lobstrokk snarecaster +[nltc] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkGreen.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\MakuraMissile\MakuraMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +// lobstrokk pool dweller +[nlpd] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +// lobstrokk deep seer +[nlds] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkGreen.blp +Buttonpos=3,0 +Missileart=Abilities\Weapons\MakuraMissile\MakuraMissile.mdl +Missilearc=0.0 +Missilespeed=900 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +// lobstrokk snapper +[nlsn] +Buttonpos=1,0 +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkRed.blp +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=medium + +// lobstrokk tidal lord +[nlkl] +Art=ReplaceableTextures\CommandButtons\BTNLobstrokkBlue.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl +Attachmentanimprops=large + +// mur'gul cliffrunner +[nmcf] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// mur'gul blood-gill +[nmbg] +Art=ReplaceableTextures\CommandButtons\BTNMurgulBloodGill.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\MurgulMagicMissile\MurgulMagicMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// mur'gul tidewarrior +[nmtw] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// mur'gul snarecaster +[nmsn] +Art=ReplaceableTextures\CommandButtons\BTNMurgulShadowCaster.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\MurgulMagicMissile\MurgulMagicMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// mur'gul reaver +[nmrv] +Art=ReplaceableTextures\CommandButtons\BTNMurgulBloodGill.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// mur'gul shadowcaster +[nmsc] +Art=ReplaceableTextures\CommandButtons\BTNMurgulShadowCaster.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\MurgulMagicMissile\MurgulMagicMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// spider crab +[nscb] +Art=ReplaceableTextures\CommandButtons\BTNSpiderCrab.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// revenant of the tides +[ntrv] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// revenant of the seas +[nsrv] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// revenant of the depths +[ndrv] +Art=ReplaceableTextures\CommandButtons\BTNRevenant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// deeplord revenant +[nlrv] +Art=ReplaceableTextures\CommandButtons\BTNDeepLordRevenant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// reef elemental +[nrel] +Art=ReplaceableTextures\CommandButtons\BTNSeaElemental.blp +Missileart=Abilities\Weapons\SeaElementalMissile\SeaElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +// sea elemental +[nsel] +Art=ReplaceableTextures\CommandButtons\BTNSeaElemental.blp +Missileart=Abilities\Weapons\SeaElementalMissile\SeaElementalMissile.mdl +Missilearc=0.15 +Missilespeed=1300 +Attachmentanimprops=medium + +// sea giant +[nsgn] +Art=ReplaceableTextures\CommandButtons\BTNSeaGiant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// sea giant hunter +[nsgh] +Art=ReplaceableTextures\CommandButtons\BTNSeaGiantGreen.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// sea giant behemoth +[nsgb] +Art=ReplaceableTextures\CommandButtons\BTNSeaGiant.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// skeletal orc +[nsko] +Art=ReplaceableTextures\CommandButtons\BTNSkeletalOrc.blp +Buttonpos=0,0 + +// skeletal orc grunt +[nsog] +Art=ReplaceableTextures\CommandButtons\BTNSkeletalOrcGrunt.blp +Buttonpos=0,0 + +// skeletal orc champion +[nsoc] +Art=ReplaceableTextures\CommandButtons\BTNSkeletalOrcChampion.blp +Buttonpos=0,0 + +// stormreaver apprentice +[nsra] +Art=ReplaceableTextures\CommandButtons\BTNOrcWarlock.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// stormreaver hermit +[nsrh] +Art=ReplaceableTextures\CommandButtons\BTNOrcWarlock.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// stormreaver necrolyte +[nsrn] +Art=ReplaceableTextures\CommandButtons\BTNOrcWarlock.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// stormreaver warlock +[nsrw] +Art=ReplaceableTextures\CommandButtons\BTNOrcWarlock.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nbot] +Art=ReplaceableTextures\CommandButtons\BTNTransport.blp +Buttonpos=0,0 +Attachmentanimprops=large + +// Pandaren level 5 +[nfrp] +Art=ReplaceableTextures\CommandButtons\BTNFurbolgPanda.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Naga Sea Witch +[Nngs] +Art=ReplaceableTextures\CommandButtons\BTNNagaSeaWitch.blp +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +Buttonpos=0,1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\NagaArrowMissile\NagaArrowMissile.mdl +Missilearc=0.08 +Missilespeed=1200 +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-seawitch.blp + +// neutral hireable pit lord +[Nplh] +Art=ReplaceableTextures\CommandButtons\BTNPitLord.blp +Buttonpos=0,2 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-pitlord.blp + +// Beastmaster +[Nbst] +Art=ReplaceableTextures\CommandButtons\BTNBeastMaster.blp +Buttonpos=1,2 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large +Requirescount=3 +Requires=TALT +Requires1=TWN2,TALT +Requires2=TWN3,TALT +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-beastmaster.blp + +// grizzly bears +[ngz1] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=medium + +[ngz2] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=medium + +[ngz3] +Art=ReplaceableTextures\CommandButtons\BTNGrizzlyBear.blp +Attachmentanimprops=medium + +// war eagles +[nwe1] +Art=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +[nwe2] +Art=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +[nwe3] +Art=ReplaceableTextures\CommandButtons\BTNWarEagle.blp +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.00 +Missilespeed=1500 + +// quillbeasts +[nqb1] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Attachmentanimprops=medium + +[nqb2] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Attachmentanimprops=medium + +[nqb3] +Art=ReplaceableTextures\CommandButtons\BTNQuillBeast.blp +Missileart=Abilities\Weapons\BristleBackMissile\BristleBackMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Attachmentanimprops=medium + +[ntor] +Art=ReplaceableTextures\CommandButtons\BTNTornado.blp + +[nsc2] +Art=ReplaceableTextures\CommandButtons\BTNSpiderCrab.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nsc3] +Art=ReplaceableTextures\CommandButtons\BTNSpiderCrab.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + + + + +//#RESTNOBETA + + +// mammoth +[nmam] +Art=ReplaceableTextures\CommandButtons\BTNMammoth.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// icetusk mammoth +[nmit] +Art=ReplaceableTextures\CommandButtons\BTNMammoth.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// dire mammoth +[nmdr] +Art=ReplaceableTextures\CommandButtons\BTNBlackMammoth.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// forgotten one +[nfgo] +Art=ReplaceableTextures\CommandButtons\BTNForgottenOne.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +[nfgt] +Art=ReplaceableTextures\CommandButtons\BTNTentacle.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// tuskarr fighter +[ntkf] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarBrown.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// tuskarr spearman +[ntka] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarGold.blp +Buttonpos=0,0 +Missileart=abilities\weapons\TuskarSpear\TuskarSpear.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// tuskarr warrior +[ntkw] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarBrown.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// tuskarr trapper +[ntkt] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarGold.blp +Buttonpos=1,0 +Missileart=abilities\weapons\TuskarSpear\TuskarSpear.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// tuskarr chieftain +[ntkc] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarBlack.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +// tuskarr healer +[ntkh] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarBrown.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\PriestMissile\PriestMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// tuskarr sorceror +[ntks] +Art=ReplaceableTextures\CommandButtons\BTNTuskaarBrown.blp +Buttonpos=0,0 +Missileart=abilities\weapons\TuskarSpear\TuskarSpear.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// blue dragonspawn meddler +[nbdm] +Art=ReplaceableTextures\CommandButtons\BTNBlueDragonSpawn.blp +Buttonpos=1,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// blue dragonspawn warrior +[nbdw] +Art=ReplaceableTextures\CommandButtons\BTNBlueDragonSpawn.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// blue dragonspawn overseer +[nbdo] +Art=ReplaceableTextures\CommandButtons\BTNpurpleDragonSpawn.blp +Buttonpos=0,0 +Attachmentanimprops=medium +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// blue dragonspawn apprentice +[nbda] +Art=ReplaceableTextures\CommandButtons\BTNGreenDragonSpawn.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// blue dragonspawn sorceror +[nbds] +Art=ReplaceableTextures\CommandButtons\BTNGreenDragonSpawn.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// magnataur warrior +[nmgw] +Art=ReplaceableTextures\CommandButtons\BTNMagnataur.blp +Buttonpos=3,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// magnataur reaver +[nmgr] +Art=ReplaceableTextures\CommandButtons\BTNMagnataurBrown.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.10 +Missilespeed=1000 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// magnataur destroyer +[nmgd] +Art=ReplaceableTextures\CommandButtons\BTNBlueMagnataur.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.10 +Missilespeed=1000 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// crystal arachnathid +[nanc] +DependencyOr=nbnc +Art=ReplaceableTextures\CommandButtons\BTNArachnathidGreen.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// barbed arachnathid +[nanb] +DependencyOr=nbnb +Art=ReplaceableTextures\CommandButtons\BTNArachnathid.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// barbed arachnathid (merc) +[nanm] +DependencyOr=nbnb +Art=ReplaceableTextures\CommandButtons\BTNArachnathid.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + + +[nbnb] +Art=ReplaceableTextures\CommandButtons\BTNArachnathid.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// warrior arachnathid +[nanw] +DependencyOr=nbnw +Art=ReplaceableTextures\CommandButtons\BTNArachnathidGreen.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + + +// earth-borer arachnathid +[nane] +DependencyOr=nbne +Art=ReplaceableTextures\CommandButtons\BTNArachnathid.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\HarpyMissile\HarpyMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// overlord arachnathid +[nano] +DependencyOr=nbno +Art=ReplaceableTextures\CommandButtons\BTNArachnathidpurple.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// faceless one trickster +[nfor] +Art=ReplaceableTextures\CommandButtons\BTNFacelessOne.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// faceless one terror +[nfot] +Art=ReplaceableTextures\CommandButtons\BTNFacelessOne.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// faceless one deathbringer +[nfod] +Art=ReplaceableTextures\CommandButtons\BTNFacelessOne.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// unbroken darkhunter +[nubk] +Art=ReplaceableTextures\CommandButtons\BTNUnbroken.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// unbroken rager +[nubr] +Art=ReplaceableTextures\CommandButtons\BTNUnbroken.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// unbroken darkweaver +[nubw] +Art=ReplaceableTextures\CommandButtons\BTNUnbroken.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// polar bear +[nplb] +Art=ReplaceableTextures\CommandButtons\BTNFrostBear.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// giant polar bear +[nplg] +Art=ReplaceableTextures\CommandButtons\BTNFrostBear.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +// watery minion cliffrunner +[ncfs] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// watery minion tidewarrior +[ntws] +Art=ReplaceableTextures\CommandButtons\BTNMurgulTideWarrior.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// watery minion snarecaster +[nsns] +Art=ReplaceableTextures\CommandButtons\BTNMurgulShadowCaster.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\MurgulMagicMissile\MurgulMagicMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonSmallDeathExplode\DemonSmallDeathExplode.mdl + +// polar furbolg +[nfpl] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolg.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// polar furbolg champion +[nfpc] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolg.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Polar Furbolg Elder Shaman level 8 +[nfpe] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolgShaman.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Polar Furbolg Shaman level 5 +[nfps] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolgShaman.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// Polar Furbolg Ursa Warrior level 9 +[nfpu] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolgElder.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +// Polar Furbolg Tracker level 6 +[nfpt] +Art=ReplaceableTextures\CommandButtons\BTNPolarFurbolgTracker.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Attachmentanimprops=medium + +// infected granary +[ngni] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp + +// grain warehouse +[ngwr] +Art=ReplaceableTextures\CommandButtons\BTNGenericHumanBuilding.blp + +// wyvern cage 1 +[nwc1] +Art=ReplaceableTextures\CommandButtons\BTNCage.blp + +// wyvern cage 2 +[nwc2] +Art=ReplaceableTextures\CommandButtons\BTNCage.blp + +// magic vault +[nmgv] +Art=ReplaceableTextures\CommandButtons\BTNMagicVault.blp + +// treasure box +[nitb] +Art=ReplaceableTextures\CommandButtons\BTNIcyTreasureBox.blp + + +// Outland dragon roost +[ndro] +Art=ReplaceableTextures\CommandButtons\BTNBlackDragonRoost.blp +Sellunits=nnht,nndk,nndr + +// penguin critter +[npng] +Art=ReplaceableTextures\CommandButtons\BTNPenguin.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[npnw] +Art=ReplaceableTextures\CommandButtons\BTNPenguin.blp +Animprops=swim +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// rat critter +[nrat] +Art=ReplaceableTextures\CommandButtons\BTNYouDirtyRat!.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +// snowy owl critter +[nsno] +Art=ReplaceableTextures\CommandButtons\BTNSnowOwl.blp +Buttonpos=0,0 + +// felboar critter +[nfbr] +Art=ReplaceableTextures\CommandButtons\BTNFelBoar.blp +Buttonpos=0,0 + +// dune worm critter +[ndwm] +Art=ReplaceableTextures\CommandButtons\BTNDuneWorm.blp +Buttonpos=0,0 + +[nvk2] +Art=ReplaceableTextures\CommandButtons\BTNVillagerKid2.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nvl2] +Art=ReplaceableTextures\CommandButtons\BTNVillagerMan1.blp +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[nzom] +Art=ReplaceableTextures\CommandButtons\BTNZombie.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +//fel beast +[npfl] +Buttonpos=0,0 +Art=ReplaceableTextures\CommandButtons\BTNPurpleFelhound.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +//fel ravager +[npfm] +Art=ReplaceableTextures\CommandButtons\BTNPurpleFelhound.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + + +// succubus/demonness +[ndqn] +Art=ReplaceableTextures\CommandButtons\BTNDemoness.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[ndqv] +Art=ReplaceableTextures\CommandButtons\BTNBlueDemoness.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[ndqt] +Art=ReplaceableTextures\CommandButtons\BTNDemoness.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[ndqp] +Art=ReplaceableTextures\CommandButtons\BTNBlueDemoness.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[ndqs] +Art=ReplaceableTextures\CommandButtons\BTNBlueDemoness.blp +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +// mur'gul huts +[nmg0] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +[nmg1] +Art=ReplaceableTextures\CommandButtons\BTNGenericCreepBuilding.blp + +// felguard +[nfgu] +Art=ReplaceableTextures\CommandButtons\BTNFelGuard.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl + +[nfgb] +Art=ReplaceableTextures\CommandButtons\BTNFelGuard.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[nfov] +Art=ReplaceableTextures\CommandButtons\BTNFelGuardBlue.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=large + +// infernal contraption +[ninc] +Art=ReplaceableTextures\CommandButtons\BTNInfernalCannon.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.08 +Missilespeed=700 +Attachmentanimprops=large + +[ninm] +Art=ReplaceableTextures\CommandButtons\BTNInfernalCannon.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.08 +Missilespeed=700 +Attachmentanimprops=large + +[nina] +Art=ReplaceableTextures\CommandButtons\BTNInfernalFlameCannon.blp +Missileart=Abilities\Weapons\RedDragonBreath\RedDragonMissile.mdl +Missilearc=0.08 +Missilespeed=700 +Attachmentanimprops=large + +[ndrf] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrp] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrw] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrd] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=3,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrt] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=2,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrn] +Art=ReplaceableTextures\CommandButtons\BTNDranai.blp +Buttonpos=2,0 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrm] +Art=ReplaceableTextures\CommandButtons\BTNDranaiMage.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrh] +Art=ReplaceableTextures\CommandButtons\BTNDranaiMage.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + +[ndrs] +Art=ReplaceableTextures\CommandButtons\BTNDranaiMage.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Human\HumanLargeDeathExplode\HumanLargeDeathExplode.mdl + + + +// lesser voidwalker +[nvdl] +Art=ReplaceableTextures\CommandButtons\BTNVoidWalker.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\VoidWalkerMissile\VoidWalkerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 + +// voidwalker +[nvdw] +Buttonpos=2,0 +Art=ReplaceableTextures\CommandButtons\BTNVoidWalker.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\VoidWalkerMissile\VoidWalkerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium + +//greater voidwalker +[nvdg] +Buttonpos=3,0 +Art=ReplaceableTextures\CommandButtons\BTNVoidWalker.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\VoidWalkerMissile\VoidWalkerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=large + +[nvde] +Art=ReplaceableTextures\CommandButtons\BTNVoidWalker.blp +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Missileart=Abilities\Weapons\VoidWalkerMissile\VoidWalkerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=large + +// nether dragon hatchling +[nnht] +Art=ReplaceableTextures\CommandButtons\BTNNetherDragon.blp +Attachmentanimprops=medium +Missileart=Abilities\Weapons\AvengerMissile\AvengerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 + + +// nether drake +[nndk] +Art=ReplaceableTextures\CommandButtons\BTNNetherDragon.blp +Attachmentanimprops=medium +Missileart=Abilities\Weapons\AvengerMissile\AvengerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 + +// nether dragon +[nndr] +Art=ReplaceableTextures\CommandButtons\BTNNetherDragon.blp +Attachmentanimprops=medium +Missileart=Abilities\Weapons\AvengerMissile\AvengerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 + +// eredar sorceror +[ners] +Art=ReplaceableTextures\CommandButtons\BTNEredarWarlockPurple.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium + +[nerd] +Art=ReplaceableTextures\CommandButtons\BTNEredarWarlockPurple.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium + +[nerw] +Art=ReplaceableTextures\CommandButtons\BTNEredarWarlockPurple.blp +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium + +[nogo] +Art=ReplaceableTextures\CommandButtons\BTNOneHeadedOgre.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +[nogn] +Art=ReplaceableTextures\CommandButtons\BTNOneHeadedOgre.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +[noga] +Art=ReplaceableTextures\CommandButtons\BTNArmoredOge.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +[ndh0] +Art=ReplaceableTextures\CommandButtons\BTNDranaiHut.blp + +[ndh1] +Art=ReplaceableTextures\CommandButtons\BTNDranaiHut.blp + +[ndch] +Art=ReplaceableTextures\CommandButtons\BTNDranaiChiefHut.blp + +[njgb] +Art=ReplaceableTextures\CommandButtons\BTNJungleBeast.blp +Attachmentanimprops=large + +[njga] +Art=ReplaceableTextures\CommandButtons\BTNJungleBeast.blp +Attachmentanimprops=medium + +[njg1] +Art=ReplaceableTextures\CommandButtons\BTNJungleBeast.blp +Attachmentanimprops=medium diff --git a/share/mpq/units/units/neutralunitstrings.txt b/share/mpq/units/units/neutralunitstrings.txt new file mode 100644 index 0000000..73694d7 --- /dev/null +++ b/share/mpq/units/units/neutralunitstrings.txt @@ -0,0 +1,2451 @@ +// permits dependencies upon heroes +[HERO] +Name=一个英雄 + +[nwad] +Name=观察守卫 + +[nska] +Name=骷髅弓箭手 +Tip=雇用骷髅弓箭手 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nske] +Name=骷髅战士 +Tip=雇用骷髅战士 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsca] +Name=骷髅弓箭手 +Tip=雇佣骷髅弓箭手 +Ubertip="轻型的远程攻击单位。 |n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsce] +Name=骷髅战士 +Tip=雇佣骷髅战士 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nskg] +Name=巨型骷髅战士 +Tip=雇用巨型骷髅战士 +Ubertip="大型近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nskm] +Name=骷髅射手 +Hotkey=K +Tip=雇用骷髅射手(|cffffcc00K|r) +Ubertip="轻型的远程攻击单位,具有冰冻冷箭技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nskf] +Name=火焰弓箭手 +Hotkey=B +Tip=雇用烈焰弓箭手(|cffffcc00B|r) +Ubertip="轻型的远程攻击单位,能射出灼热之箭。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// dragon hawk 1 +[nws1] +Name=龙鹰 +Hotkey=D +Tip=训练龙鹰(|cffffcc00D|r) +Ubertip="重型的远程攻击单位,能诱捕敌方单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nban] +Name=强盗 +Hotkey=B +Tip=雇用强盗(|cffffcc00B|r) +Ubertip="轻型的近战单位,具有影遁技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nbrg] +Name=土匪 +Tip=雇用土匪 +Ubertip="轻型的远程攻击单位,具有影遁技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nrog] +Name=流氓 +Hotkey=R +Tip=雇用流氓(|cffffcc00R|r) +Ubertip="轻型的近战单位,具有影遁技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nenf] +Name=强制者 +Hotkey=E +Tip=雇用强制者(|cffffcc00E|r) +Ubertip="轻型的近战单位,具有影遁和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nbld] +Name=强盗领主 +Tip=雇用强盗领主 +Ubertip="重型的近战单位,具有影遁和专注光环技能,还具有神圣护甲。|n|n|cffffcc00能攻击地面单位。|r" + +[nass] +Name=刺客 +Tip=雇用刺客(|cffffcc00A|r) +Hotkey=A +Ubertip="中型的远程攻击单位,能射出毒箭并具有影遁技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbdk] +Name=黑蜉蝣 +Tip=召唤黑蜉蝣(|cffffcc00K|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=K + +[nrdk] +Name=红幼龙 +Tip=召唤红幼龙(|cffffcc00W|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W + +[nbdr] +Name=红幼龙 +Tip=召唤黑幼龙( |cffffcc00W|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W + +[nrdr] +Name=红蜉蝣 +Tip=召唤红蜉蝣(|cffffcc00K|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=K + +[nbwm] +Name=黑龙 +Tip=召唤黑龙(|cffffcc00D|r) +Ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=D + +[nrwm] +Name=红龙 +Hotkey=D +Tip=召唤红龙(|cffffcc00D|r) +Ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nadr] +Name=蓝龙 +Tip=召唤蓝龙( |cffffcc00D|r) +Hotkey=D +Ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nadw] +Name=蓝幼龙 +Tip=召唤蓝幼龙( |cffffcc00W|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W + +[nadk] +Name=蓝蜉蝣 +Tip=召唤蜉蝣(|cffffcc00K|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=K + +[nbzd] +Name=青龙 +Tip=召唤青龙(|cffffcc00D|r) +Hotkey=D +Ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbzk] +Name=青蜉蝣 +Tip=召唤青蜉蝣(|cffffcc00K|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=K + +[nbzw] +Name=青幼龙 +Tip=召唤青幼龙(|cffffcc00W|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W + +[ngrd] +Name=绿龙 +Tip=召唤绿龙(|cffffcc00D|r) +Hotkey=D +Ubertip="重型的远程攻击飞行单位,能吞噬对手并对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngdk] +Name=绿蜉蝣 +Tip=召唤绿蜉蝣(|cffffcc00K|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=K + +[ngrw] +Name=绿幼龙 +Tip=召唤绿幼龙(|cffffcc00W|r) +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W + +// red dragon roost building +[ndrr] +Name=红龙巢穴 +Tip=建造红龙巢穴 +Description=使得你能召唤来强大的红龙。 + +// green dragon roost building +[ndrg] +Name=绿龙巢穴 +Tip=建造绿龙巢穴 +Description=让你能召唤绿龙。 + +// bronze dragon roost building +[ndrz] +Name=青龙巢穴 +Tip=建造青龙巢穴 +Description=让你能召唤青龙。 + +// black dragon roost building +[ndrk] +Name=黑龙巢穴 +Tip=建造黑龙巢穴 +Description=使得你能召唤来强大的黑龙。 + +// blue dragon roost building +[ndru] +Name=蓝龙巢穴 +Tip=建造蓝龙巢穴 +Description=使得你能召唤来强大的蓝龙。 + +[ncea] +Name=半人马弓箭手 +Tip=雇用半人马弓箭手(|cffffcc00A|r) +Hotkey=A +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ncim] +Name=半人马刺客 +Tip=雇用半人马刺客 +Ubertip="远程攻击单位,能射出灼热之箭。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ncen] +Name=半人马先行者 +Tip=雇用半人马先行者(|cffffcc00O|r) +Ubertip="手中挥舞着巨斧的近战型单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=O + +[ncer] +Name=半人马苦工 +Hotkey=D +Tip=雇用半人马苦工(|cffffcc00D|r) +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ncks] +Name=半人马巫师 +Tip=雇用半人马巫师 +Ubertip="远程攻击单位,能施放驱魔技能和嗜血术。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ncnk] +Name=半人马可汗 +Tip=雇用半人马可汗 +Ubertip="拥有耐久光环的重型近战单位。还有战争践踏和重生技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndth] +Name=黑魔高级牧师 +Hotkey=H +Tip=雇用黑魔高级牧师(|cffffcc00H|r) +Ubertip="有着医疗能力的魔法兵种,还能施放睡眠术。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndtp] +Name=黑魔影子牧师 +Hotkey=P +Tip=雇用黑魔影子牧师(|cffffcc00P|r) +Ubertip="有着医疗能力的魔法兵种,也能进行远程攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndtb] +Name=黑魔狂战士 +Hotkey=B +Tip=雇用黑魔狂战士(|cffffcc00B|r) +Ubertip="脾气暴躁的斧手。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndtw] +Name=黑魔首领 +Hotkey=W +Tip=雇用黑魔首领( |cffffcc00W|r) +Ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndtr] +Name=黑暗巨魔 +Hotkey=T +Tip=雇用黑暗巨魔(|cffffcc00T|r) +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ndtt] +Name=黑魔猎手 +Hotkey=D +Tip=雇用黑魔猎手(|cffffcc00D|r) +Ubertip="轻型远程攻击单位,能诱捕对手。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nelb] +Name=狂暴元素 +Tip=召唤狂暴元素 +Ubertip="重型近战单位,能施放霜冻新星,而且对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nele] +Name=狂怒元素 +Tip=召唤狂怒元素 +Ubertip="近战型单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nenc] +Name=堕落树人 +Tip=召唤堕落树人 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nenp] +Name=毒性树人 +Tip=召唤毒性树人 +Ubertip="近战单位,能使对手中毒,能施放纠缠根须技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nepl] +Name=灾祸树人 +Tip=召唤灾祸树人 +Ubertip="近战单位,能让对手得上疾病,还能施放纠缠根须技能。|n|n|cffffcc00能攻击地面单位。|r" + +// fel hunter +[nfel] +Name=邪恶漫步者 +Tip=召唤邪恶漫步者 +Ubertip="魔鬼野兽,能施放法力燃烧技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nfsh] +Name=树魔高级牧师 +Hotkey=H +Tip=雇用树魔高级牧师(|cffffcc00H|r) +Ubertip="魔法单位,具有医疗能力,具有驱逐魔法和心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfsp] +Name=树魔影子牧师 +Hotkey=P +Tip=雇用树魔影子牧师(|cffffcc00P|r) +Ubertip="魔法单位,具有医疗能力,能施放驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nftr] +Name=森林巨魔 +Hotkey=T +Tip=雇用森林巨魔(|cffffcc00T|r) +Ubertip="投掷巨斧的恶魔。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nftb] +Name=树魔狂战士 +Hotkey=B +Tip=雇用树魔狂战士( |cffffcc00B|r) +Ubertip="脾气暴躁的斧手。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nftt] +Name=树魔猎手 +Hotkey=F +Tip=雇用树魔猎手( |cffffcc00F|r) +Ubertip="能诱捕对手的中型远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nftk] +Name=树魔首领 +Hotkey=W +Tip=雇用树魔首领(|cffffcc00W|r) +Ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngad] +Name=地精实验室 +Tip=建造地精实验室 +Description=使得你能充分利用地精科技的优势。 + +[ngme] +Name=地精商店 +Tip=建造地精商店 +Description=这里会出售各类的魔法物品。 + +[nshp] +Name=地精船坞 +Tip=建造地精船坞 +Description=能在这里买到船只。 + +[ngrk] +Name=泥潭傀儡 +Hotkey=U +Tip=召唤泥潭傀儡(|cffffcc00U|r) +Ubertip="近战单位,能让敌人减速。还对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[ngst] +Name=岩石傀儡 +Tip=召唤岩石傀儡 +Ubertip="近战单位,能投掷巨石,对所有魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nggr] +Name=花岗岩傀儡 +Tip=召唤花岗岩傀儡 +Ubertip="重型近战单位,能重击对手,对所有魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[narg] +Name=傀儡战士 +Tip=召唤傀儡战士 +Ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nwrg] +Name=战争傀儡 +Tip=召唤战争傀儡 +Ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nsgg] +Name=攻城傀儡 +Tip=召唤攻城傀儡 +Ubertip="重型的近战单位,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[ngir] +Name=地精撕裂者 +Hotkey=G +Tip=雇用地精撕裂者(|cffffcc00G|r) +Ubertip="近战单位,由钢铁做成,还特别擅长于采集大量的木材资源。|n|n|cffffcc00能攻击地面单位和树木。|r" + +// Furbolg level 4 +[nfrl] +Name=熊怪 +Tip=雇用熊怪 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +// Furbolg Tracker level 6 +[nfrb] +Name=熊怪追踪者 +Tip=雇用熊怪追踪者 +Ubertip="重型的近战单位,具有精灵之火技能。|n|n|cffffcc00能攻击地面单位。|r" + +// Furbolg Champion level 7 +[nfrg] +Name=熊怪战士 +Tip=雇用熊怪战士 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +// Furbolg level 9 +[nfra] +Name=熊怪乌萨战士 +Tip=雇用熊怪乌萨战士 +Ubertip="重型的近战单位,具有命令光环和战争践踏这两个技能。|n|n|cffffcc00能攻击地面单位。|r" + +// Furbolg Shaman level 4 +[nfrs] +Name=熊怪萨满 +Tip=雇用熊怪萨满(|cffffcc00F|r) +Hotkey=F +Ubertip="中型的远程攻击单位,能进行闪电攻击,具有生命恢复技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// Furbolg Elder Shaman level 7 +[nfre] +Name=熊怪萨满长者 +Tip=雇用熊怪萨满长者 +Ubertip="远程攻击单位,能投掷闪电的,还能施放生命恢复技能和闪电护盾。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngh1] +Name=幽灵 +Tip=召唤幽灵 +Ubertip="轻型远程攻击单位,能施放占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngh2] +Name=幽魂 +Tip=召唤幽魂 +Ubertip="重型远程攻击单位,能施放诅咒技能和占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngna] +Name=豺狼偷猎者 +Tip=雇用豺狼偷猎者(|cffffcc00A|r) +Hotkey=A +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngns] +Name=豺狼刺客 +Tip=雇用豺狼刺客(|cffffcc00S|r) +Hotkey=S +Ubertip="轻型的远程攻击单位,能射出毒箭。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngno] +Name=豺狼 +Tip=雇用豺狼(|cffffcc00R|r) +Hotkey=R +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ngnb] +Name=豺狼野兽 +Tip=雇用豺狼野兽(|cffffcc00B|r) +Hotkey=B +Ubertip="轻型近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ngnw] +Name=豺狼守望者 +Tip=雇用豺狼守望者(|cffffcc00W|r) +Hotkey=W +Ubertip="远程攻击单位,能施放出一道道闪电,还能施放净化魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngnv] +Name=豺狼首领 +Tip=雇用豺狼首领(|cffffcc00O|r) +Hotkey=O +Ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" + +[ngol] +Name=金矿 +Tip=建造金矿 +Description=黄金的主要来源。 + +[ngsp] +Name=地精工兵 +Tip=雇用地精工兵(|cffffcc00S|r) +Ubertip="它们特别擅长于对付敌人的建筑物。|n|cffffcc00能攻击地面单位和树木。|r" +Hotkey=S + +[nhar] +Name=女妖侦察者 +Tip=雇用鹰身女妖侦察兵 +Ubertip="轻型飞行单位,能投掷出尖羽毛。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhrr] +Name=鹰身女妖流氓 +Tip=雇用鹰身女妖流氓(|cffffcc00R|r) +Hotkey=R +Ubertip="轻型飞行单位,能投掷出尖羽毛。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhrw] +Name=鹰身女妖巫婆 +Tip=雇用鹰身女妖巫婆(|cffffcc00W|r) +Hotkey=W +Ubertip="飞行单位,能施放出闪电进行攻击,也能施放精灵之火和驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhrh] +Name=女妖风暴巫师 +Tip=雇用女妖风暴巫师 +Ubertip="飞行单位,能施放出闪电进行攻击,拥有诅咒技能和睡眠术。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhrq] +Name=女妖女皇 +Tip=雇用女妖女皇 +Ubertip="重型的远程攻击飞行单位,拥有生命恢复技能和飓风魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// heretics +[nhfp] +Name=堕落牧师 +Tip=雇用堕落牧师 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhdc] +Name=欺骗者 +Tip=雇用欺骗者 +Ubertip="轻型单位,能射出火焰进行攻击,拥有诅咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhhr] +Name=异教徒 +Tip=雇用异教徒 +Ubertip="中型单位,能射出火焰进行攻击,拥有复活死尸和腐臭蜂群这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nitr] +Name=冰之巨魔 +Tip=雇用冰之巨魔 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nits] +Name=冰魔狂战士 +Tip=雇用冰魔狂战士(|cffffcc00B|r) +Hotkey=B +Ubertip="中型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nitt] +Name=冰魔猎手 +Tip=雇用冰魔猎手(|cffffcc00T|r) +Hotkey=T +Ubertip="中型远程攻击单位,能诱捕对手。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nitw] +Name=冰魔首领 +Tip=雇用冰魔首领 +Ubertip="重型远程攻击单位,带有强击光环。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nith] +Name=冰魔高级牧师 +Tip=雇用冰魔高级牧师 +Ubertip="魔法单位,具有医疗能力,具有驱魔技能和霜冻护甲。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nitp] +Name=冰魔牧师 +Tip=雇用冰魔牧师 +Ubertip="魔法单位,具有医疗能力。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nkob] +Name=狗头人 +Tip=雇用狗头人( |cffffcc00K|r) +Hotkey=K +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nkog] +Name=狗头人占卜者 +Tip=雇用狗头人占卜者(|cffffcc00G|r) +Hotkey=G +Ubertip="轻型远程攻击单位,具有减速魔法和驱魔技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nkol] +Name=狗头人首领 +Tip=雇用狗头人首领 +Ubertip="重型近战单位,带有命令光环,还拥有重击技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nkot] +Name=地穴狗头人 +Tip=雇用地穴狗头人 +Ubertip="轻型近战单位,拥有重击技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nltl] +Name=闪电蜥蜴 +Tip=召唤闪电蜥蜴 +Ubertip="远程攻击单位,能施放出一道道闪电,还能施放净化魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nlur] +Name=怪兽诱捕守卫 +Tip=召唤怪兽诱捕守卫 +Ubertip="能吸引附近怪兽的守卫。" + +[nthl] +Name=雷霆蜥蜴 +Tip=召唤雷霆蜥蜴(|cffffcc00T|r) +Hotkey=T +Ubertip="重型远程攻击单位,能重击对手。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nstw] +Name=风暴巨龙 +Tip=召唤风暴巨龙 +Ubertip="重型远程攻击单位,能射出闪电。具有吞噬技,闪电链和闪电护盾这三项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nmfs] +Name=两栖食肉者 +Tip=雇用两栖食肉者(|cffffcc00M|r) +Hotkey=M +Ubertip="轻型的近战单位,具有吞食尸体技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nmmu] +Name=变异两栖人 +Tip=雇用变异两栖人 +Ubertip="中型近战单位,具有残废技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nmpg] +Name=两栖苦难者 +Tip=雇用两栖苦难者 +Ubertip="轻型近战单位,能使得对手生上疾病。|n|n|cffffcc00能攻击地面单位。|r" + +[nmrl] +Name=两栖追随者 +Tip=雇用两栖追随者 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmrr] +Name=两栖人猎手 +Tip=雇用两栖猎手(|cffffcc00H|r) +Hotkey=H +Ubertip="轻型近战单位,能诱捕对手。|n|n|cffffcc00能攻击地面单位。|r" + +[nmrm] +Name=两栖夜行者 +Tip=雇用两栖夜行者 +Ubertip="近战单位,能让对手中毒,还具有夜间隐形能力。|n|n|cffffcc00能攻击地面单位。|r" + +[nowb] +Name=迅猛野兽 +Tip=召唤迅猛野兽(|cffffcc00W|r) +Hotkey=W +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nowe] +Name=暴怒野兽 +Tip=召唤暴怒野兽 + +[nowk] +Name=狂性野兽 +Tip=召唤狂性野兽 +Ubertip="重型的近战单位,具有重击和战争践踏技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nrzs] +Name=尖毛兽侦察兵 +Tip=雇用尖毛兽侦察兵 + +[nrzb] +Name=尖毛兽野蛮人 +Tip=雇用尖毛兽野蛮人 + +[nrzm] +Name=尖毛兽医生 +Tip=雇用尖毛兽医生(|cffffcc00M|r) +Hotkey=M +Ubertip="中型单位,具有医疗守卫和野兽幽魂技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nrzg] +Name=尖毛兽酋长 +Tip=雇用尖毛兽酋长 +Ubertip="重型的近战单位,具有荆棘光环技能,并能向敌人投出巨大的石头。|n|n|cffffcc00能攻击地面单位。|r" + +[nrzt] +Name=豪猪 +Tip=雇用豪猪 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nqbh] +Name=豪猪猎手 +Tip=雇用豪猪猎手 +Ubertip="中型的远程攻击单位,具有闪避技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nspd] +Name=小蜘蛛 +Tip=召唤小蜘蛛 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nnwa] +Name=蛛网怪战士 +Tip=召唤蛛网怪战士(|cffffcc00W|r) +Hotkey=W +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nnwl] +Name=蛛网怪织网者 +Tip=召唤蛛网怪织网者(|cffffcc00N|r) +Hotkey=N +Ubertip="轻型远程攻击单位能施放捕网和复活死尸技能。|n|n|cffffcc00攻击地面单位。|r" + +[nnws] +Name=蛛网怪首领 +Tip=召唤蛛网怪首领 +Ubertip="巨型近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nnwr] +Name=蛛网怪预言者 +Tip=召唤蛛网怪预言者 +Ubertip="巨型近战单位,具有驱魔技能和复活死尸技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nnwq] +Name=蛛网怪女皇 +Tip=召唤蛛网怪女皇 +Ubertip="重型近战单位,带有邪恶光环。还拥有复活死尸和腐臭蜂群这两项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nmer] +Name=雇佣兵营地 +EditorSuffix= (洛丹伦的夏天) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr2] +Name=雇佣兵营地 +EditorSuffix= (洛丹伦的秋天) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr3] +Name=雇佣兵营地 +EditorSuffix= (洛丹伦的冬日) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr4] +Name=雇佣兵营地 +EditorSuffix= (荒地) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr5] +Name=雇佣兵营地 +EditorSuffix= (白杨谷) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr6] +Name=雇佣兵营地 +EditorSuffix= (费尔伍德) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr7] +Name=雇佣兵营地 +EditorSuffix= (诺森德) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr8] +Name=雇佣兵营地 +EditorSuffix= (城邦) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr9] +Name=雇佣兵营地 +EditorSuffix= (达拉然) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmr0] +Name=雇佣兵营地 +EditorSuffix= (村庄) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmra] +Name=雇佣兵营地 +EditorSuffix= (地牢) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmrb] +Name=雇佣兵营地 +EditorSuffix= (地下) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmrc] +Name=雇佣兵营地 +EditorSuffix= (下沉的废墟) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[ntav] +Name=小酒馆 +Tip=建造小酒馆 +Description=能让你雇用各式各样的英雄。 + +[nmoo] +Name=魔法之泉 +Tip=建造魔法之泉 +Description=能快速恢复周围非机械单位的魔法值。 + +[nfoh] +Name=生命之泉 +Tip=建造生命之泉 +Description=能快速恢复周围非机械单位的魔法值。 + +[nmrk] +Name=市场 +Tip=建造市场 +Description=能让你买到各类的物品。 + + +// ogre 1 +[nogr] +Name=食人鬼战士 +Tip=雇用食人鬼战士(|cffffcc00W|r) +Ubertip="这是食人鬼族的一种标准单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=W + +// ogre 2 +[nogm] +Name=食人鬼拳手 +Tip=雇用食人鬼拳手(|cffffcc00M|r) +Ubertip="这是食人鬼族的一种大型单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=M + +// ogre lord +[nogl] +Name=食人鬼首领 +Tip=雇用食人鬼首领(|cffffcc00L|r) +Ubertip="带有防御光环还能施放震荡波。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=L + +// ogre magi +[nomg] +Name=食人鬼魔法师 +Tip=雇用食人鬼魔法师(|cffffcc00G|r) +Ubertip="食人鬼族的一种魔法单位,能施放嗜血术。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=G + +[nrvf] +Name=火焰幽魂 +Tip=召唤火焰幽魂 +Ubertip="轻型近战单位,具有献祭技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nrvs] +Name=霜冻幽魂 +Tip=召唤霜冻幽魂(|cffffcc00F|r) +Hotkey=F +Ubertip="中型近战单位,具有暴风雪魔法。|n|n|cffffcc00能攻击地面单位。|r" + +[nrvl] +Name=闪电幽魂 +Tip=召唤闪电幽魂 +Ubertip="重型近战单位,具有闪电链和净化两种技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nrvi] +Name=冰之幽魂 +Tip=召唤冰之幽魂 +Ubertip="重型近战单位,带有吸血光环。还能施放霜冻新星。|n|n|cffffcc00能攻击地面单位。|r" + +[nrvd] +Name=死亡幽魂 +Tip=召唤死亡幽魂 +Ubertip="重型近战单位,具有复活死尸,死亡缠绕和操作死尸这三项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nslm] +Name=淤泥战士 +Tip=召唤淤泥战士 +Ubertip="轻型的近战单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面单位。|r" + +[nslf] +Name=淤泥投手 +Tip=召唤淤泥投手(|cffffcc00F|r) +Hotkey=F +Ubertip="轻型的远程攻击单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsln] +Name=淤泥怪物 +Tip=召唤淤泥怪物 +Ubertip="中型的近战单位,能减慢敌人的速度。|n|n|cffffcc00能攻击地面单位。|r" + +[nslh] +Name=小蜥蜴 +Tip=召唤小蜥蜴 + +[nslr] +Name=蜥蜴怪物 +Tip=召唤蜥蜴怪物 +Ubertip="中型的远程攻击单位,能施放献祭魔法和霹雳闪电。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nslv] +Name=大型蜥蜴怪物 +Tip=召唤大型蜥蜴怪物 +Ubertip="重型的远程攻击单位,能施放驱魔,法力燃烧和嗜血技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsll] +Name=蜥蜴领主 +Tip=召唤蜥蜴领主 +Ubertip="重型的远程攻击单位。能吞噬对手,还具有献祭和火焰雨技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// satyr 1 +[nsat] +Name=赛特斯之魔法师 +Tip=雇用赛特斯之魔法师 +Ubertip="能射出地狱火的轻型远程攻击单位。还具有净化技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// satyr 2 +[nsts] +Name=赛特斯之黑暗舞者 +Tip=雇用赛特斯之黑暗舞者( |cffffcc00S|r) +Hotkey=S +Ubertip="轻型远程攻击单位,具有夜间隐形能力,还拥有诅咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +// satyr 3 +[nsth] +Name=赛特斯之地狱使者 +Tip=雇用赛特斯之地狱使者 +Ubertip="重型近战单位,带有邪恶光环,还拥有操作死尸技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nstl] +Name=赛特斯之灵魂盗贼 +Tip=雇用赛特斯之灵魂盗贼( |cffffcc00S|r) +Hotkey=S +Ubertip="中型近战单位,具有法力燃烧,复活死尸这两项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsty] +Name=赛特斯 +Tip=雇用赛特斯 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nspb] +Name=黑蜘蛛 +Tip=召唤黑蜘蛛 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nspr] +Name=蜘蛛 +Tip=召唤蜘蛛 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsgt] +Name=巨型蜘蛛 +Tip=召唤巨型蜘蛛 +Ubertip="中型的近战单位。能用毒素伤害敌人。还能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nssp] +Name=毒液蜘蛛 +Tip=召唤毒液蜘蛛 +Ubertip="轻型远程攻击单位,能向对手吐出毒液。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsbm] +Name=血浴之母 +Tip=召唤血浴之母 +Ubertip="重型近战单位,能使对手中毒。还具有诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nspg] +Name=森林蜘蛛 +Tip=召唤森林蜘蛛 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsqt] +Name=野人 +Tip=召唤野人 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsqe] +Name=野人长者 +Tip=召唤野人长者 +Ubertip="重型近战单位,能重击对手,拥有自然之力技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsqo] +Name=野人神使 +Tip=召唤野人神使 +Ubertip="重型近战单位,具有咆哮技能。还具有生命恢复术。|n|n|cffffcc00能攻击地面单位。|r" + +[nsqa] +Name=古代野人 +Tip=召唤古代野人 +Ubertip="重型近战单位,能重击对手。还具有自然之力和生命恢复这两项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ndog] +Name=野狗 +Tip=召唤野狗 +Ubertip="你可以召唤野狗的灵魂来保护你。" + +[npig] +Name=野猪 +Tip=召唤野猪 +Ubertip="你可以召唤野猪的灵魂来保护你。" + +[nder] +Name=雄鹿 +Tip=召唤雄鹿 +Ubertip="召唤雄鹿的灵魂来保护你。" + +[nsea] +Name=海豹 +Tip=召唤海豹 +Ubertip="召唤海豹的灵魂来保护你。" + +[nshe] +Name=绵羊 +Tip=召唤绵羊 +Ubertip="召唤绵羊的灵魂来拯救你。" + +[nsha] +Name=绵羊 +Tip=召唤绵羊 +Ubertip="召唤绵羊的灵魂来拯救你。" +EditorSuffix= (两栖的) + +[nshw] +Name=绵羊 +Tip=召唤绵羊 +Ubertip="召唤绵羊的灵魂来拯救你。" +EditorSuffix= (水生的) + +[nshf] +Name=乳羊 +Tip=召唤乳羊 +Ubertip="召唤乳羊的灵魂来保护你。" + +// male villager +[nvil] +Name=村民 +Tip=雇用村民 +Ubertip="一个热心的村民。" +EditorSuffix= (男性) + +// kid villager +[nvlk] +Name=小孩 +Ubertip="一个小村民。" +Tip=雇用村民 + +// female villager +[nvlw] +Name=村民 +Tip=雇用村民 +Ubertip="一位聪慧的村民。" +EditorSuffix= (女性) + +[nvul] +Name=秃鹰 +Tip=召唤秃鹰 +Ubertip="可以召唤秃鹰的灵魂来保护你。" + +[nwen] +Name=雪怪 +Tip=召唤雪怪 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nwlt] +Name=大灰狼 +Tip=召唤大灰狼 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nwlg] +Name=巨狼 +Tip=召唤巨狼 +Ubertip="中型的近战单位,拥有致命一击这个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwld] +Name=恐怖之狼 +Tip=召唤恐怖之狼 +Ubertip="中型近战单位,具有致命一击和咆哮这两个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwwf] +Name=霜冻之狼 +Tip=召唤霜冻之狼 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nwwg] +Name=巨型霜冻之狼 +Tip=召唤霜冻之狼 +Ubertip="中型近战单位,具有致命一击技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwwd] +Name=恐怖霜冻之狼 +Tip=召唤恐怖霜冻之狼 +Ubertip="中型近战单位,具有致命一击和咆哮这两个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwnr] +Name=雪怪长者 +Tip=召唤雪怪长者 +Ubertip="重型近战单位,能重击对手。|n|n|cffffcc00能攻击地面单位。|r" + +[nwna] +Name=远古雪怪 +Tip=召唤远古雪怪 +Ubertip="重型近战单位,具有重击,战争践踏和重生这三项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwns] +Name=雪怪萨满祭司 +Tip=召唤雪怪萨满祭司 +Ubertip="重型近战单位,具有咆哮和生命恢复这两项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nwzr] +Name=流氓巫师 +Tip=雇用流氓巫师 +Ubertip="轻型远程攻击单位,能施放霜冻护甲。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nwzg] +Name=巫师变节者 +Tip=雇用巫师变节者 +Ubertip="中型远程攻击单位,具有净化和闪电护盾这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nwiz] +Name=巫师学徒 +Tip=雇用巫师学徒 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nwzd] +Name=黑暗巫师 +Tip=雇用黑暗巫师 +Ubertip="重型远程攻击单位,带有辉煌光环。还具有复活死尸和变形术这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nzep] +Name=地精飞艇 +Tip=雇用地精飞艇( |cffffcc00Z|r) +Ubertip="飞行的运输工具。" +Hotkey=Z + +[ninf] +Name=地狱火 +Tip=召唤地狱火 +Ubertip="重型近战单位,被熊熊的火焰包围着,能对周围的地面单位造成持续伤害。还对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nbal] +Name=毁灭守卫 +Tip=召唤毁灭守卫 +Ubertip="重型远程攻击单位,具有驱魔,战争践踏,残废术和火焰雨这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +//summoned doom guard +[nba2] +Name=毁灭守卫 +Tip=召唤毁灭守卫 +Ubertip="重型的远程攻击单位。能施放驱逐魔法,战争践踏,残废和火焰雨这几项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + + +[nglm] +Name=地精地雷 + +[nwgt] +Name=传送门 +Tip=建造传送门 +Description=可以将单位传送到另外一个传送门那里。 + +[ncnt] +Name=半人马帐篷 +Tip=建造半人马帐篷 +Description=一种小型的掩蔽建筑。 + +[nct1] +Name=半人马帐篷 +Tip=建造半人马帐篷 +Description=一种小型的掩蔽建筑。 +EditorSuffix=(2) + +[nct2] +Name=半人马帐篷 +Tip=建造半人马帐篷 +Description=一种小型的掩蔽建筑。 +EditorSuffix=(3) + +[ntnt] +Name=牛头人帐篷 +Tip=建造牛头人帐篷 +Description=一种牢固的掩蔽建筑。 + +[ntt2] +Name=牛头人帐篷 +Tip=建造牛头人帐篷 +Description=一种牢固的掩蔽建筑。 + +[ngnh] +Name=豺狼人小屋 +Tip=建造豺狼人小屋 +Description=由石头和木材构成的一种小屋。 + +[ngt2] +Name=豺狼人小屋 +Tip=建造豺狼人小屋 +Description=由石头和木材构成的一种小屋。 +EditorSuffix= 2 + +[nten] +Name=帐篷 +Tip=建造帐篷 +Description=一种有着奇异装饰的帆布帐篷。 + +[ntn2] +Name=帐篷 +Tip=建造帐篷 +Description=有着奇异装饰的帆布帐篷。 +EditorSuffix= 2 + +[nfh0] +Name=森林巨魔小屋 +Tip=建造森林巨魔小屋 +Description=某些巨魔的家。 + +[nfh1] +Name=森林巨魔小屋 +Tip=建造森林巨魔小屋 +Description=某些巨魔的家。 + +[nfr1] +Name=熊怪小屋 +Tip=建造熊怪小屋 +Description=某些熊怪的家。 + +[nfr2] +Name=熊怪小屋 +Tip=建造熊怪小屋 +Description=某些熊怪的家。 + +[nth0] +Name=冰之巨魔小屋 +Tip=建造冰之巨魔小屋 +Description=一种覆盖着白雪的住处。 + +[nth1] +Name=冰之巨魔小屋 +Tip=建造冰之巨魔小屋 +Description=一种覆盖着白雪的住处。 + +[ncb0] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 0 +Description=一座大型的石头建筑物。 + +[ncb1] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 1 +Description=一座大型的石头建筑物。 + +[ncb2] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 2 +Description=一座大型的石头建筑物。 + +[ncb3] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 3 +Description=一座大型的石头建筑。 + +[ncb4] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 4 +Description=一座大型的石头建筑物。 + +[ncb5] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 5 +Description=一座大型的石头建筑物。 + +[ncb6] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 6 +Description=一座大型的石头建筑物。 + +[ncb7] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 7 +Description=一座大型的石头建筑物。 + +[ncb8] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 8 +Description=一座大型的石头建筑物。 + +[ncb9] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 9 +Description=一座大型的石头建筑物。 + +[ncba] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 10 +Description=一座大型的石头建筑物。 + +[ncbb] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 11 +Description=一座大型的石头建筑物。 + +[ncbc] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 12 +Description=一座大型的石头建筑物。 + +[ncbd] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 13 +Description=一座大型的石头建筑物。 + +[ncbe] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 14 +Description=一座大型的石头建筑物。 + +[ncbf] +Name=城市建筑物 +Tip=建造城市建筑物 +EditorSuffix= 15 +Description=一座大型的石头建筑物。 + +[nmh0] +Name=两栖鱼人小屋 +Tip=建造两栖鱼人小屋 +EditorSuffix= 0 +Description=一种由竹子做成的小型了望塔。 + +[nmh1] +Name=两栖鱼人小屋 +Tip=建造两栖鱼人小屋 +EditorSuffix= 1 +Description=一种由竹子做成的大型了望塔。 + +[nnzg] +Name=通灵塔 +Tip=建造通灵塔 +Description=一种小型的岩石神塔。 + +[ncop] +Name=能量圈 +Tip=建造能量圈 +Description=一种发着能量之光的圆形底座。 + +[ncp2] +Name=能量圈 +Tip=建造能量圈 +Description=一种发着能量之光的圆形底座。 +EditorSuffix=(中型) + +[ncp3] +Name=能量圈 +Tip=建造能量圈 +Description=一种发着能量之光的大型圆形底座。 +EditorSuffix=(大型的) + +[nhns] +Name=女妖巢穴 +Tip=建造女妖巢穴 +Description=里面的木质骨架上有着一些零星的残骸。 + +[nowl] +Name=猫头鹰侦察者 +EditorSuffix= (等级 1) + +[now2] +Name=猫头鹰侦察者 +EditorSuffix= (等级 2) + +[now3] +Name=猫头鹰侦察者 +EditorSuffix= (等级 3) + +[nspp] +Name=灵魂之猪 + +// neutral heroes +[Npbm] +Name=熊猫酒仙 +Propernames=魔杰-黑啤酒,辛杰-蜜酒,克沙-野麦,塔特萨-甜猪,姆斯-酒炉,金托-芦苇酒,玛萨-烈啤酒,泊尔-桶酒 +Hotkey=N +Tip=召唤熊猫酒仙(|cffffcc00N|r) +Ubertip="战士型英雄,特别擅长于近战。能学习火焰呼吸、醉酒云雾、醉拳和火土风暴这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活熊猫酒仙(|cffffcc00N|r) +Awakentip=复活熊猫酒仙(|cffffcc00N|r) + +[npn1] +Name=火焰 +Tip=召唤火(|cffffcc00F|r) +Ubertip="凶猛的火之熊猫战士。有永久献祭和抗性皮肤技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F + +[npn2] +Name=风暴 +Tip=召唤雷(|cffffcc00T|r) +Ubertip="迅捷的风之熊猫战士。有抗性皮肤,可以施放驱散魔法、飓风和疾风步。|n|n|cffffcc00攻击陆地和空中单位。|r" +Hotkey=T + +[npn3] +Name=大地 +Tip=召唤地(|cffffcc00E|r) +Ubertip="强健的地之熊猫战士。有抗性皮肤及魔法免疫。可以施放粉碎和嘲讽技能。|n|n|cffffcc00攻击陆地单位。|r" +Hotkey=E + +[Nbrn] +Name=黑暗游侠 +Propernames=纳拉-迈步,阿恩雅-恒歌,安瑟斯-日弓,斯里-死步,西恩迪-鹰矛,米拉-破凋,阿摩拉-鹰眼,斯勒恩-鬼歌,索门德-菲佐 +Hotkey=R +Tip=召唤黑暗游侠(|cffffcc00R|r) +Ubertip="灵巧型的英雄,擅长于与对手周旋。能学习到沉默魔法,黑暗之箭,生命汲取和符咒这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活黑暗游侠(|cffffcc00R|r) +Awakentip=复活黑暗游侠(|cffffcc00R|r) + +[ndr1] +Name=小黑暗之奴 +Tip=召唤黑暗之奴 + +[ndr2] +Name=黑暗之奴 +Tip=召唤黑暗之奴 + +[ndr3] +Name=大黑暗之奴 +Tip=召唤黑暗之奴 + +[Nfir] +Name=火焰巨魔 +Propernames=拉格尔,哈特斯,布雷泽,海特富莱,沃尔卡,富莱夏尔,卡尔,斯莫,辛格尔 +Hotkey=O +Tip=(|cffffcc00o|r)召唤火焰巨魔 +Ubertip="神秘型英雄,擅长于破坏魔法并施放出巨大的火焰攻击力。能学习到燃灰、灵魂燃烧、召唤炎魔和火山爆发技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=(|cffffcc00o|r)复活火焰巨魔 +Awakentip=(|cffffcc00o|r)复活火焰巨魔 + +//lava spawn1 +[nlv1] +Name=炎魔 +EditorSuffix= (等级 1) + +//lava spawn2 +[nlv2] +Name=炎魔 +EditorSuffix= (等级 2) + +//lava spawn3 +[nlv3] +Name=炎魔 +EditorSuffix= (等级 3) + +//alchemist +[Nalc] +Name=炼金术士 +Propernames=拉泽尔•拿破仑,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯 +Hotkey=X +Tip= (|cffffcc00X|r)召唤炼金术士 +Ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=(|cffffcc00X|r)复活炼金术士 +Awakentip=(|cffffcc00X|r)复活炼金术士 + +//alchemist +[Nalm] +Name=炼金术士 +Propernames=拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯 +Hotkey=X +Tip= (|cffffcc00X|r)召唤炼金术士 +Ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=(|cffffcc00X|r)复活炼金术士 +Awakentip=(|cffffcc00X|r)复活炼金术士 +EditorSuffix= (Morph level 1) + +//alchemist (morph, 2) +[Nal2] +Name=炼金术士 +Propernames=拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯 +Hotkey=X +Tip= (|cffffcc00X|r)召唤炼金术士 +Ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=(|cffffcc00X|r)复活炼金术士 +Awakentip=(|cffffcc00X|r)复活炼金术士 +EditorSuffix= (Morph level 2) + +//alchemist (morph, 3) +[Nal3] +Name=炼金术士 +Propernames=拉泽尔,尼费尔,爱泽尔,拉皮斯,萨维尔,菲克修斯 +Hotkey=X +Tip= (|cffffcc00X|r)召唤炼金术士 +Ubertip="战斗型英雄,有着出色的防御和进攻能力。能学习到医疗烟雾、药剂之怒、酸性炸弹和变形技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=(|cffffcc00X|r)复活炼金术士 +Awakentip=(|cffffcc00X|r)复活炼金术士 +EditorSuffix= (Morph level 3) + +// Tinker +[Ntin] +Name=修补匠 +Propernames=盖茨,力克特,美卡,特克,普拉格,拉斯特 +Hotkey=Z +Tip= (|cffffcc00Z|r)召唤修补匠 +Ubertip="敏捷性的英雄,特别擅长于战斗和承受攻击。能学习到火箭群、口袋工厂、工程升级和机器人地精技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip= (|cffffcc00Z|r)复活修补匠 +Awakentip=(|cffffcc00Z|r)复活修补匠 + +// Tinker (morph / robo-goblin) +[Nrob] +Name=修补匠 +Propernames=盖茨,力克特,美卡,特克,普拉格,拉斯特 +Hotkey=Z +Tip= (|cffffcc00Z|r)召唤修补匠 +Ubertip="敏捷性的英雄,特别擅长于战斗和承受攻击。能学习到火箭群、口袋工厂、工程升级和机器人地精技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip= (|cffffcc00Z|r)复活修补匠 +Awakentip=(|cffffcc00Z|r)复活修补匠 + +[ncgb] +Name=人工地精 +Tip=(|cffffcc00C|r)召唤人工地精 +Ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[ncg1] +Name=人工地精 +Tip=(|cffffcc00C|r)召唤人工地精 +Ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[ncg2] +Name=人工地精 +Tip=(|cffffcc00C|r)召唤人工地精 +Ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[ncg3] +Name=人工地精 +Tip=(|cffffcc00C|r)召唤人工地精 +Ubertip="战士型机械地精。在一定时期之后会爆炸。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[nfac] +Name=口袋工厂 +Tip= (|cffffcc00F|r)召唤口袋工厂 +Ubertip="工厂能生产出人工地精。" +Hotkey=F +EditorSuffix= (Level 1) + +[nfa1] +Name=口袋工厂 +Tip= (|cffffcc00F|r)召唤口袋工厂 +Ubertip="工厂能生产出人工地精。" +Hotkey=F +EditorSuffix= (Level 2) + +[nfa2] +Name=口袋工厂 +Tip= (|cffffcc00F|r)召唤口袋工厂 +Ubertip="工厂能生产出人工地精。" +Hotkey=F +EditorSuffix= (Level 3) + +[nskk] +Name=小蜥蜴 +Tip=召唤小蜥蜴 +Ubertip="召唤出小蜥蜴的灵魂来挽救你。" + +[ncrb] +Name=螃蟹 +Tip=召唤螃蟹 +Ubertip="能召唤一个螃蟹的灵魂来挽救你。" + +[nhmc] +Name=螃蟹隐士 +Tip=召唤螃蟹隐士 +Ubertip="能召唤一个螃蟹隐士的灵魂来挽救你。" + +[nech] +Name=小鸡 +Tip=调用小鸡 +Ubertip="召唤令人惊吓的小鸡来帮助你。" + +[nfro] +Name=青蛙 +Tip=调用青蛙 +Ubertip="召唤令人惊吓的青蛙来帮助你。" + +[necr] +Name=兔子 +Tip=调用兔子 +Ubertip="召唤令人惊吓的兔子来帮助你。" + +[nrac] +Name=浣熊 +Tip=调用浣熊 +Ubertip="召唤令人惊吓的浣熊来帮助你。" + +[nalb] +Name=信天翁 +Tip=召唤信天翁 +Ubertip="能召唤出信天翁的灵魂来挽救你。" + +[ntrh] +Name=小海龟 +Tip=雇用小海龟 +Ubertip="轻型的远程攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntrs] +Name=海龟 +Tip=雇用海龟 +Ubertip="轻型的近战攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntrt] +Name=大海龟 +Tip=雇用巨型海龟(|cffffcc00T|r) +Ubertip="中型的远程攻击单位,身上的尖刺外壳能对周围敌人的近战单位造成伤害。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=T + +[ntrg] +Name=大海龟 +Tip=雇用大海龟 +Ubertip="重型近战两栖单位,身上的尖刺外壳对敌方的近战单位能造成伤害。|n|n|cffffcc00能攻击地面单位。|r" + +[ntrd] +Name=龙龟 +Tip=雇用龙龟 +Ubertip="重型近战两栖单位,具有吞噬和尖刺外壳技能。还能施放冲击波。|n|n|cffffcc00能攻击地面单位。|r" + +[nhyd] +Name=九头怪蛇 +Tip=雇用九头怪蛇 +Ubertip="轻型远程攻击两栖单位,具有慢性毒药技能。当该单位被杀死的时候,许多小九头怪蛇就会从其尸体中冒出来。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nhyh] +Name=小九头怪蛇 +Tip=雇用小九头怪蛇 +Ubertip="中型远程攻击两栖单位,具有慢性毒药技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nehy] +Name=九头怪蛇长者 +Tip=雇用九头怪蛇长者 +Ubertip="重型的远程攻击两栖单位,具有精灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nahy] +Name=远古九头怪蛇 +Tip=雇用远古九头怪蛇 +Ubertip="重型的远程攻击两栖单位,具有吞噬、战争践踏和慢性毒药这三项技能。当该单位被杀死的时候,许多小九头怪蛇就会从其尸体中冒出来。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nlpr] +Name=巨虾 +Tip=雇用巨虾 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nlps] +Name=召唤出来的巨虾 +Tip=召唤出来的巨虾 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nltc] +Name=马库拉潮汐召唤者 +Tip=雇用马库拉潮汐召唤者 +Ubertip="轻型的远程攻击单位,具有医疗和霜冻护甲两个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nlpd] +Name=马库拉池人 +Tip=雇用马库拉池人 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nlds] +Name=马库拉先知 +Tip=雇用马库拉池人(|cffffcc00D|r) +Ubertip="中型的远程攻击单位,能施放纠缠根须和召唤巨虾。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=D + +[nlsn] +Name=马库拉甲鱼 +Tip=雇用马库拉甲鱼(|cffffcc00R|r) +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=R + +[nlkl] +Name=马库拉潮汐领主 +Tip=雇用马库拉潮汐领主 +Ubertip="重型的近战单位,具有专注光环和分裂攻击这两个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nmcf] +Name=穆格尔岩人 +Tip=雇用穆格尔岩人 +Ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmbg] +Name=穆格尔血女巫 +Tip=雇用穆格尔血女巫 +Ubertip="轻型远程攻击两栖单位,具有医疗技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nmtw] +Name=穆格尔潮汐战士 +Tip=雇用穆格尔潮汐战士 +Ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmsn] +Name=穆格尔猎人 +Tip=雇用穆格尔猎人(|cffffcc00G|r) +Ubertip="中型远程攻击两栖单位,具有驱逐魔法及减速技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=G + +[nmrv] +Name=穆格尔掠夺者 +Tip=雇用穆格尔掠夺者 +Ubertip="重型近战两栖单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" + +[nmsc] +Name=穆格尔影子法师 +Tip=雇用穆格尔影子法师 +Ubertip="重型的远程攻击两栖单位,具有诅咒和妖术两种技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nscb] +Name=蜘蛛螃蟹 +Tip=雇用蜘蛛螃蟹(|cffffcc00C|r) +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[ntrv] +Name=潮汐幽灵 +Tip=雇用潮汐幽灵 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsrv] +Name=海之幽灵 +Tip=雇用海之幽灵 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrv] +Name=深渊幽灵 +Tip=雇用深渊幽灵 +Ubertip="重型的近战单位,能召唤海元素。|n|n|cffffcc00能攻击地面单位。|r" + +[nlrv] +Name=深渊领主幽灵 +Tip=雇用深渊领主幽灵 +Ubertip="重型的近战单位,具有冲击波和霜冻护甲这两项技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nrel] +Name=暗礁元素 +Tip=召唤暗礁元素 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsel] +Name=海元素 +Tip=召唤海元素 +Ubertip="中型的远程攻击单位,具有重击技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsgn] +Name=海巨人 +Tip=召唤海巨人 +Ubertip="轻型近战两栖单位,具有粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsgh] +Name=深海巨猎人 +Tip=召唤深海巨猎人 +Ubertip="重型近战两栖单位,具有诱捕和粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsgb] +Name=深海巨兽 +Tip=召唤深海巨兽 +Ubertip="重型近战两栖单位,具有投石,战争践踏和粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsko] +Name=兽族骷髅 +Tip=召唤兽族骷髅 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsog] +Name=兽族步兵骷髅 +Tip=召唤兽族步兵骷髅 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsoc] +Name=兽族战士骷髅 +Tip=召唤兽族战士骷髅 +Ubertip="重型的近战单位,具有死亡缠绕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nsra] +Name=风暴撕裂者学徒 +Tip=雇用风暴撕裂者学徒 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsrh] +Name=风暴撕裂者隐士 +Tip=雇用风暴撕裂者隐士 +Ubertip="轻型的远程攻击单位,具有净化技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsrn] +Name=风暴撕裂者术士 +Tip=雇用风暴撕裂者术士 +Ubertip="重型的远程攻击单位,具有嗜血术和闪电链这两个技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nsrw] +Name=风暴撕裂者巫师 +Tip=雇用风暴撕裂者巫师 +Ubertip="重型的远程攻击单位,具有季风和操纵死尸这两项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbot] +Name=运输船 +Hotkey=T +Tip=雇用运输船(|cffffcc00T|r) +Ubertip="能运载单位的海上船只。" + +[nfrp] +Name=熊猫 +Tip=雇用熊猫 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[Nngs] +Name=娜迦女海巫 +Propernames=阿纳-康多拉,茜拉-暗影,乌瑟拉-蛇鬃,毒舌女巫,毒蛇女巫,黑暗女巫,塞丽娜-鳞伤,阿斯帕拉-瑟芭斯,维恩娜-海之风暴,查理布-迪莎 +Hotkey=G +Tip=召唤娜迦女海巫(|cffffcc00G|r) +Ubertip="一位神秘的英雄,擅长于远距离战斗。能学习到叉状闪电、霜冻之箭、魔法护盾和龙卷风。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活娜迦女海巫(|cffffcc00G|r) +Awakentip=复活娜迦女海巫(|cffffcc00G|r) + +[Nplh] +Name=深渊魔王 +Propernames=阿哥勒尔,布鲁特里斯,蒙哥瑟德,迪斯麦斯,高哥那斯,麦哥瑟里登 +Hotkey=I +Tip=召唤深渊魔王(|cffffcc00I|r) +Ubertip="战士型英雄,善于恐吓敌人。可以学习火焰雨、恐怖嚎叫、分裂攻击和魔鬼缠身。|n|n|cffffcc00攻击地面单位。|r" +Revivetip=复活深渊魔王(|cffffcc00I|r) +Awakentip=复活深渊魔王(|cffffcc00I|r) + +[Nbst] +Name=驯兽师 +Propernames=玛格-熊锤,塔克-熊爪,高须-鹰爪毒牙,马克思-大鹏鬃毛,盖兹-野猪獠牙,莫克-鹏喙,吉须-鹰眼 +Hotkey=S +Tip=召唤驯兽师(|cffffcc00S|r) +Ubertip="战斗型英雄,善于在战场上召唤野兽来加入战斗。可以学习召唤灰熊,召唤豪猪,召唤战鹰和惊吓四个技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活驯兽师(|cffffcc00S|r) +Awakentip=复活驯兽师(|cffffcc00S|r) + +[ngz1] +Name=熊 +EditorSuffix= (等级 1) + +[ngz2] +Name=怒熊 +EditorSuffix= (等级 2) + +[ngz3] +Name=灵魂之熊 +EditorSuffix= (等级 3) + +[nwe1] +Name=战鹰 +EditorSuffix= (等级 1) + +[nwe2] +Name=雷霆战鹰 +EditorSuffix= (等级 2) + +[nwe3] +Name=影子战鹰 +EditorSuffix= (等级 3) + +[nqb1] +Name=豪猪 +EditorSuffix= (等级 1) + +[nqb2] +Name=凶恶豪猪 +EditorSuffix= (等级 2) + +[nqb3] +Name=影子豪猪 +EditorSuffix= (等级 3) + +[ntor] +Name=龙卷风 + +[nsc2] +Name=蜘蛛螃蟹肢体撕裂者 +Tip=雇用蜘蛛螃蟹(|cffffcc00C|r) +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[nsc3] +Name=蜘蛛螃蟹巨兽 +Tip=雇用蜘蛛螃蟹(|cffffcc00C|r) +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +//#RestNoBeta + + + +[nmam] +Name=猛犸 +Tip=雇用猛犸 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmit] +Name=冰牙猛犸 +Tip=雇用冰牙猛犸 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nmdr] +Name=恐怖猛犸 +Tip=雇用恐怖猛犸 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nfgo] +Name=遗忘者 +Tip=雇用遗忘者 +Ubertip="远古的神秘生物,能对敌人吐出火焰进行攻击。能学习到产卵触角,霹雳闪电和符咒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfgt] +Name=触须 +Ubertip="来自地底的粗糙触角。|n|n|cffffcc00攻击地面单位。|r" + +[ntkf] +Name=图斯卡尔格斗者 +Tip=雇用图斯卡尔格斗者 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ntka] +Name=图斯卡尔枪兵 +Tip=雇用图斯卡尔枪兵 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntkw] +Name=图斯卡尔战士 +Tip=雇用图斯卡尔战士 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ntkt] +Name=图斯卡尔猎人 +Tip=雇用图斯卡尔猎人 +Ubertip="中型的远程攻击单位,具有诱捕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntkc] +Name=图斯卡尔酋长 +Tip=雇用图斯卡尔酋长 +Ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" + +[ntkh] +Name=图斯卡尔巫师 +Tip=雇用图斯卡尔巫师 +Ubertip="轻型的远程攻击单位,具有医疗和驱逐魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ntks] +Name=图斯卡尔男巫 +Tip=雇用图斯卡尔男巫 +Ubertip="中型的远程攻击单位,具有心灵之火技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbdm] +Name=龙卵盗贼 +Tip=雇用龙卵盗贼(|cffffcc00D|r) +Hotkey=D +Ubertip="轻型的近战单位,具有闪避技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nbdw] +Name=龙卵战士 +Tip=雇用龙卵战士 +Ubertip="重型的近战单位,具有闪避技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nbdo] +Name=龙卵领主 +Tip=雇用龙卵领主 +Ubertip="重型的近战单位,具有霜冻闪电,专注光环和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nbda] +Name=龙卵学徒 +Tip=雇用龙卵学徒 +Ubertip="轻型的远程攻击单位,具有闪避和生命恢复技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbds] +Name=龙之男巫 +Tip=雇用龙之男巫 +Ubertip="中型的远程攻击单位,具有闪避和霜冻新星技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nmgw] +Name=玛格娜托战士 +Tip=雇用玛格娜托战士(|cffffcc00W|r) +Hotkey=W +Ubertip="重型的近战单位。对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nmgr] +Name=玛格娜托撕裂者 +Tip=雇用玛格娜托撕裂者 +Ubertip="重型的近战单位。能对敌人投掷霜冻之箭,对魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nmgd] +Name=玛格娜托破坏者 +Tip=雇用玛格娜托破坏者 +Ubertip="重型的近战单位,具有重击和投掷冰箭技能,魔法免疫。|n|n|cffffcc00能攻击地面单位。|r" + +[nanc] +Name=水晶阿卡那瑟德 +Tip=雇用水晶阿卡那瑟德 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nanb] +Name=阿卡那瑟德刺人 +Tip=雇用阿卡那瑟德刺人(|cffffcc00B|r) +Hotkey=B +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nanm] +Name=阿卡那瑟德刺人 +Tip=雇用阿卡那瑟德刺人(|cffffcc00B|r) +Hotkey=B +Ubertip="轻型远程攻击单位,具有钻地技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nbnb] +Name=钻地的阿卡那瑟德刺人 +Tip=雇用阿卡那瑟德刺人 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nanw] +Name=阿卡那瑟德战士 +Tip=雇用阿卡那瑟德战士 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nane] +Name=阿卡那瑟德掘地者 +Tip=雇用阿卡那瑟德掘地者 +Ubertip="中型的远程攻击单位,具有浸毒武器和暗影突袭技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nano] +Name=阿卡那瑟德领主 +Tip=雇用阿卡那瑟德领主 +Ubertip="重型的近战单位,具有命令光环。|n|n|cffffcc00能攻击地面单位。|r" + +[nfor] +Name=无名骗士 +Tip=雇用无名骗士 +Ubertip="重型的近战单位,具有净化和诅咒技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nfot] +Name=无名恐怖者 +Tip=雇用无名恐怖者 +Ubertip="重型的远程攻击单位,能发射闪电攻击,同时具有睡眠和魔法护盾技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfod] +Name=无名死灵 +Tip=雇用无名死灵 +Ubertip="重型的远程攻击,能进行闪电攻击,施放沉默魔法和操纵死尸技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nubk] +Name=无敌黑暗猎人 +Tip=雇用无敌黑暗猎人 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nubr] +Name=无敌狂暴者 +Tip=雇用无敌狂暴者 +Ubertip="中型的近战单位。能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nubw] +Name=无敌黑暗舞者 +Tip=雇用无敌黑暗舞者 +Ubertip="中型近战单位,具有邪恶狂热技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nplb] +Name=北极熊 +Tip=雇用北极熊 +Ubertip="中型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nplg] +Name=巨型北极熊 +Tip=雇用巨型北极熊 +Ubertip="重型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ncfs] +Name=水奴 +Tip=召唤水奴 +Ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ntws] +Name=水奴 +Tip=召唤水奴 +Ubertip="轻型近战两栖单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nsns] +Name=水奴 +Tip=召唤水奴 +Ubertip="中型远程攻击两栖单位,具有驱逐魔法及减速技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ngni] +Name=腐烂谷仓 +Tip=建造腐烂谷仓 +Description=里面都是糜烂的谷物。 + +[ngwr] +Name=谷仓 +Tip=建造谷仓 +Description=一种为了存贮粮食而造的建筑物。 + +[nfpl] +Name=北极熊怪 +Tip=雇用北极熊怪 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nfpc] +Name=北极熊怪战士 +Tip=雇用北极熊怪战士 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nfpe] +Name=北极熊怪萨满长者 +Tip=雇用北极熊怪萨满长者 +Ubertip="重型的远程攻击单位,具有霜冻新星和医疗波技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfps] +Name=北极熊怪萨满 +Tip=雇用北极熊怪萨满(|cffffcc00F|r) +Hotkey=F +Ubertip="中型的远程攻击单位,具有驱逐魔法和霜冻护甲技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nfpu] +Name=北极熊怪乌萨战士 +Tip=雇用北极熊怪乌萨战士 +Ubertip="重型的近战单位,具有命令光环和战争践踏技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nfpt] +Name=北极熊怪追踪者 +Tip=雇用北极熊怪追踪者 +Ubertip="重型的近战单位,能减速敌人。|n|n|cffffcc00能攻击地面单位。|r" + +[nmgv] +Name=魔法宝箱 +Tip=Purchase Magic |cffffcc00V|rault +Hotkey=V +Tip=建造魔法宝箱 +Ubertip="在每个盒子里面都藏着一个秘密。" +Description=有着神秘文字封印的箱子,在这种箱子里面往往有着宝物。 + +[nitb] +Name=冰之宝盒 +Tip=购买冰之宝盒(|cffffcc00B|r) +Hotkey=B +Tip=Build Treasure Box +Ubertip="里面有着宝藏。" +Description=被寒冰封印着的盒子,通常在这种盒子里面有着神奇的宝物。 + +[nmrd] +Name=雇佣兵营地 +EditorSuffix= (寒冰皇冠冰川) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmre] +Name=雇佣兵营地 +EditorSuffix= (边缘之地) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +[nmrf] +Name=雇佣兵营地 +EditorSuffix= (黑色城堡) +Tip=建造雇佣兵营地 +Description=能让你雇用各式各样的雇佣兵。 + +// outland dragon roost building +[ndro] +Name=耐瑟龙栖木 +Tip=建造耐瑟龙之栖木 +Description=允许你召唤耐瑟龙。 + +[npng] +Name=企鹅 +Tip=召唤企鹅 +Ubertip="能召唤出企鹅的灵魂来挽救你。" + +[npnw] +Name=企鹅 +Tip=召唤企鹅 +Ubertip="能召唤出企鹅的灵魂来挽救你。" +EditorSuffix= (水生的) + +[nrat] +Name=老鼠 +Tip=召唤老鼠 +Ubertip="召唤出老鼠的灵魂来挽救你。" + +[nsno] +Name=雪鹰 +Tip=召唤雪鹰 +Ubertip="召唤出雪鹰的灵魂来挽救你。" + +[nfbr] +Name=野猪 +Tip=召唤野猪 +Ubertip="召唤出野猪的灵魂来挽救你。" + +[ndwm] +Name=沙丘之虫 +Tip=呼出沙丘之虫 +Ubertip="召唤沙丘之虫的灵魂来保护你。" + +[nvk2] +Name=小孩 +Tip=雇用村民 +Ubertip="一个小村民。" +EditorSuffix= (2) + +[nvl2] +Name=村民 +Tip=雇用村民 +Ubertip="一个热心的村民。" +EditorSuffix= (男性 2) + +[nwc1] +Name=双足飞龙牢笼 +Tip=建造双足飞龙牢笼 +EditorSuffix= (1) +Description=专门设计为囚禁双足飞龙的笼子。 + +[nwc2] +Name=双足飞龙牢笼 +Tip=建造双足飞龙牢笼 +EditorSuffix= (2) +Description=专门设计为囚禁双足飞龙的笼子。 + +[nzom] +Name=僵尸 +Tip=召唤僵尸 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[npfl] +Name=狂暴野兽 +Tip=召唤狂暴野兽(|cffffcc00F|r) +Hotkey=F +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[npfm] +Name=狂暴洗劫者 +Tip=召唤狂暴洗劫者 +Ubertip="重型近战单位,可以施放黑暗之箭及吞噬魔法。|n|n|cffffcc00攻击陆地单位。|r" + +[ndqn] +Name=女妖精 +Tip=雇用女妖精 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndqv] +Name=恶男 +Tip=雇用恶男 +Ubertip="中型近战单位,可以施放沉默魔法。|n|n|cffffcc00攻击陆地单位。|r" + +[ndqt] +Name=恶妇 +Tip=雇用恶妇 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndqp] +Name=痛苦少女 +Tip=雇用痛苦少女 +Ubertip="重型近战单位,可以施放生命汲取和暗影突袭技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ndqs] +Name=苦难女王 +Tip=雇用苦难女王 +Ubertip="重型近战单位,有死亡缠绕,邪恶光环和符咒技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nmg0] +Name=穆格尔小屋 +Tip=建造穆格尔小屋 +EditorSuffix= 0 +Description=一种由竹子做成的小型了望塔。 + +[nmg1] +Name=穆格尔小屋 +Tip=建造穆格尔小屋 +EditorSuffix= 1 +Description=一种由竹子做成的大型了望塔。 + +[nfgu] +Name=狂暴守卫 +Tip=雇用狂暴守卫 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[nfgb] +Name=血恶魔 +Tip=雇用血恶魔 +Ubertip="中型近战单位。有分裂攻击技能。|n|n|cffffcc00攻击陆地单位。|r" + +[nfov] +Name=领主 +Tip=雇用领主 +Ubertip="重型近战单位,有分裂攻击,吸血光环和恐怖嚎叫技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrf] +Name=达拉内尔守卫 +Tip=雇用达拉内尔守卫 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrt] +Name=达拉内尔漫步者 +Tip=雇用达拉内尔漫步者 +Ubertip="重型的近战单位。具有隐形,诱捕和闪避技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrn] +Name=达拉内尔辩护者 +Tip=雇用达拉内尔辩护者 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrp] +Name=达拉内尔护卫 +Tip=雇用达拉内尔护卫 +Ubertip="轻型近战单位,有诱捕技能。|n|n|cffffcc00攻击陆地单位。|r" + +[ndrw] +Name=达拉内尔哨兵 +Tip=雇用达拉内尔哨兵 +Ubertip="轻型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[ndrd] +Name=达拉内尔暗黑屠杀者 +Tip=雇用达拉内尔黑暗屠杀者(|cffffcc00S|r) +Hotkey=S +Ubertip="中型近战单位,有献祭技能。|n|n|cffffcc00攻击陆地单位。|r" + +[ndrm] +Name=达拉内尔信徒 +Tip=雇用达拉内尔信徒(|cffffcc00D|r) +Hotkey=D +Ubertip="轻型远程单位,可以施放治疗。|n|n|cffffcc00攻击陆地和空中单位。|r" + +[ndrh] +Name=达拉内尔先驱 +Tip=雇用达拉内尔先驱 +Ubertip="中型远程单位,有嗜血术和瓦解光线技能。|n|n|cffffcc00攻击陆地和空中单位。|r" + +[ndrs] +Name=达拉内尔先知 +Tip=雇用达拉内尔先知 +Ubertip="重型远程攻击单位,具有辉煌光环。 可以施放减速和医疗波技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ninc] +Name=地狱火机关人 +Tip=雇用地狱火机关人 +Ubertip="中型远程单位,能射出炽烈之箭。|n|n|cffffcc00能攻击陆地和空中单位。|r" + +[ninm] +Name=地狱火机械人 +Tip=雇用地狱火机械人 +Ubertip="重型远程单位,能射出炽烈之箭。可以施放火焰呼吸。|n|n|cffffcc00能攻击陆地和空中单位。|r" + +[nina] +Name=地狱战舰 +Tip=雇用地狱战舰 +Ubertip="重型远程攻击单位,能发射炽烈之箭。可以施放地狱火。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nvdl] +Name=小型虚无行者 +Tip=雇用小型虚无行者 +Ubertip="轻型的远程攻击单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nvdw] +Name=虚无行者 +Tip=雇用虚无行者(|cffffcc00V|r) +Hotkey=V +Ubertip="轻型远程单位,有冰冻之箭。|n|n|cffffcc00攻击陆地和空中单位。|r" + +[nvdg] +Name=巨大虚无行者长老 +Tip=雇用巨大虚无行者(|cffffcc00V|r) +Hotkey=V +Ubertip="重型远程攻击单位。可以施放闪电链和霜冻护甲技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nvde] +Name=虚无行者长老 +Tip=雇用虚无行者长老 +Ubertip="重型远程攻击单位,可以施放吞噬魔法和叉状闪电技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nnht] +Name=耐瑟幼龙 +Tip=雇用耐瑟幼龙(|cffffcc00H|r) +Hotkey=H +Ubertip="小型的远程攻击飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nndk] +Name=耐瑟蜉蝣 +Tip=雇用耐瑟蜉蝣(|cffffcc00K|r) +Hotkey=K +Ubertip="重型远程飞行单位。|n|n|cffffcc00攻击陆地和空中单位。|r" + +[nndr] +Name=耐瑟龙 +Tip=雇用耐瑟龙(|cffffcc00D|r) +Hotkey=D +Ubertip="重型远程飞行单位,可以残废敌人并且对魔法免疫。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ners] +Name=埃瑞达男巫 +Tip=雇用埃瑞达男巫 +Ubertip="轻型远程攻击单位,可以施放驱逐魔法和睡眠技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nerd] +Name=埃瑞达-信魔者 +Tip=雇用埃瑞达-信魔者 +Ubertip="重型远程攻击单位,可以施放寄生虫和霹雳闪电技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[nerw] +Name=埃瑞达法师 +Tip=雇用埃瑞达法师 +Ubertip="重型远程单位,有重击技能。可以施放痛苦之指和魔力护盾。|n|n|cffffcc00攻击陆地和空中单位。|r" + +[nogo] +Name=石槌食人魔 +Tip=雇用石槌食人魔 +Ubertip="强大的战士。 虽然有勇无谋,却是一部优秀的战争机器。能施放诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[nogn] +Name=石槌法师 +Tip=雇用石槌法师 +Ubertip="强大的魔法师。智慧而又果断,这些食人魔法师以神秘的魔法支持着他们的战士同胞。具有咆哮技能。|n|n|cffffcc00能攻击地面单位。|r" + +[noga] +Name=石槌酋长 +Tip=雇用石槌酋长 +Ubertip="食人魔之王。这强壮的食人魔可以徒手撕裂猛兽。具有嘲讽,重击和耐久光环技能。|n|n|cffffcc00能攻击地面单位。|r" + +[ndh0] +Name=达拉内尔小屋 +Tip=建造达拉内尔小屋 +Ubertip="一个简陋的达拉内尔农家小屋。" + +[ndh1] +Name=达拉内尔小屋 +Tip=建造达拉内尔小屋 +Ubertip="一个简陋的达拉内尔农家小屋。" + +[ndch] +Name=达拉内尔酋长之屋 +Tip=达拉内尔酋长之屋 +Ubertip="达拉内尔酋长之屋。" + +[njgb] +Name=怒之丛林漫步者 +Tip=召唤怒之丛林漫步者 +Ubertip="重型近战单位,能重击对手。|n|n|cffffcc00攻击地面单位。|r" + +[njga] +Name=丛林漫步者长老 +Tip=召唤丛林漫步者长老 +Ubertip="重型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + +[njg1] +Name=丛林漫步者 +Tip=召唤丛林漫步者 +Ubertip="中型的近战单位。|n|n|cffffcc00能攻击地面单位。|r" + diff --git a/share/mpq/units/units/neutralupgradefunc.txt b/share/mpq/units/units/neutralupgradefunc.txt new file mode 100644 index 0000000..31bfbe5 --- /dev/null +++ b/share/mpq/units/units/neutralupgradefunc.txt @@ -0,0 +1,8 @@ +// Non-race-specific upgrades +// glyph of fortification +[Rgfo] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp,ReplaceableTextures\CommandButtons\BTNGlyph.blp,ReplaceableTextures\CommandButtons\BTNGlyph.blp + +// glyph of ultravision +[Rguv] +Art=ReplaceableTextures\CommandButtons\BTNGlyph.blp \ No newline at end of file diff --git a/share/mpq/units/units/neutralupgradestrings.txt b/share/mpq/units/units/neutralupgradestrings.txt new file mode 100644 index 0000000..5bc3ad1 --- /dev/null +++ b/share/mpq/units/units/neutralupgradestrings.txt @@ -0,0 +1,11 @@ +// Non-race-specific upgrades +// glyph of fortification +[Rgfo] +Name=防御浮雕,防御浮雕,防御浮雕 +EditorSuffix= (升级 1),(升级 2),(升级 3) + +// glyph of ultravision +[Rguv] +Name=夜视浮雕 +EditorSuffix= (升级) + diff --git a/share/mpq/units/units/nightelfabilityfunc.txt b/share/mpq/units/units/nightelfabilityfunc.txt new file mode 100644 index 0000000..607e6a7 --- /dev/null +++ b/share/mpq/units/units/nightelfabilityfunc.txt @@ -0,0 +1,842 @@ +// Vengeance +[Avng] +Art=ReplaceableTextures\CommandButtons\BTNAvengingWatcherOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNAvengingWatcherOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=Vengeance +Orderon=Vengeanceon +Orderoff=Vengeanceoff + +[Bvng] +Buffart=ReplaceableTextures\CommandButtons\BTNAvengingWatcher.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Mana Flare +[Amfl] +Art=ReplaceableTextures\CommandButtons\BTNManaFlare.blp +Unart=ReplaceableTextures\CommandButtons\BTNManaFlareOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Order=manaflareon +Unorder=manaflareoff + +[Bmfl] +Buffart=ReplaceableTextures\CommandButtons\BTNManaFlare.blp +Targetart=Abilities\Spells\Human\ManaFlare\ManaFlareBase.mdl +Targetattach=overhead +Effectsoundlooped=ManaFlareLoop +LightningEffect=MFPB + +[Bmfa] +Buffart=ReplaceableTextures\CommandButtons\BTNManaFlare.blp +Targetart=Abilities\Spells\Human\ManaFlare\ManaFlareTarget.mdl +Targetattach=overhead +Missileart=Abilities\Spells\Human\ManaFlare\ManaFlareMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Specialart=Abilities\Spells\Human\ManaFlare\ManaFlareBoltImpact.mdl + +// Phase Shift +[Apsh] +Art=ReplaceableTextures\CommandButtons\BTNPhaseShiftOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNPhaseShiftOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Effectsound=ShadowMeld +Orderon=phaseshifton +Orderoff=phaseshiftoff +Order=phaseshift +Specialart=Abilities\Spells\NightElf\FaerieDragonInvis\FaerieDragon_Invis.mdl + +[Bpsh] +Buffart=ReplaceableTextures\CommandButtons\BTNPhaseShift.blp +Specialart=Abilities\Spells\NightElf\FaerieDragonInvis\FaerieDragon_Invis.mdl + +// Ethereal +[Aetl] +Art=ReplaceableTextures\CommandButtons\BTNTemp.blp +Buttonpos=2,2 + +// Sphere +[Asp1] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl +Targetattachcount=1 +Targetattach=sprite,first +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Sphere +[Asp2] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl +Targetattachcount=2 +Targetattach=sprite,first +Targetattach1=sprite,second +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Sphere +[Asp3] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl +Targetattachcount=3 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,third +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Sphere +[Asp4] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl +Targetattachcount=4 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,third +Targetattach3=sprite,fourth +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Sphere +[Asp5] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs5.mdl +Targetattachcount=5 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,third +Targetattach3=sprite,fourth +Targetattach4=sprite,fifth +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs5.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Sphere +[Asp6] +Targetart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs5.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs6.mdl +Targetattachcount=6 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,third +Targetattach3=sprite,fourth +Targetattach4=sprite,fifth +Targetattach5=sprite,sixth +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs1.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs2.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs3.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs4.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs5.mdl,Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceOrbs6.mdl +Missilearc=0.05 +Missilespeed=1400 + +// Night Elf Build +[AEbu] +Art=ReplaceableTextures\CommandButtons\BTNNightElfBuild.blp +Buttonpos=0,2 +Order=nightelfbuild + +// Grab Tree +[Agra] +Art=ReplaceableTextures\CommandButtons\BTNGrabTree.blp +Buttonpos=1,2 +Order=grabtree +Animnames=spell,eattree + +// Hardened Skin +[Assk] +Requires=Rehs +Art=ReplaceableTextures\PassiveButtons\PASBTNHardenedSkin.blp +Buttonpos=2,2 +Casterart= + +// Resistant Skin +[Arsk] +Art=ReplaceableTextures\PassiveButtons\PASBTNResistantSkin.blp +Buttonpos=3,2 +Casterart= +Requires=Rers + +// Taunt +[Atau] +Art=ReplaceableTextures\CommandButtons\BTNTaunt.blp +Buttonpos=0,2 +Order=taunt +Casterart=Abilities\Spells\NightElf\Taunt\TauntCaster.mdl + +[Btau] +Buffart=ReplaceableTextures\CommandButtons\BTNTaunt.blp + +// Blink +[AEbl] +Art=ReplaceableTextures\CommandButtons\BTNBlink.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBlink.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=blink +// Art to play at the new coordinate +Areaeffectart=Abilities\Spells\NightElf\Blink\BlinkTarget.mdl +// Art to leave behind at old coordinate +Specialart=Abilities\Spells\NightElf\Blink\BlinkCaster.mdl +Animnames=spell,throw + +// Fan of Knives +[AEfk] +Art=ReplaceableTextures\CommandButtons\BTNFanOfKnives.blp +Researchart=ReplaceableTextures\CommandButtons\BTNFanOfKnives.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Order=fanofknives +Casterart= +Effectart=Abilities\Spells\NightElf\FanOfKnives\FanOfKnivesCaster.mdl +Missileart=Abilities\Spells\NightElf\FanOfKnives\FanOfKnivesMissile.mdl +Missilespeed=700 +MissileArc=0.10 +Animnames=spell,slam + +// Shadow Strike +[AEsh] +Art=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Researchart=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Missileart=Abilities\Spells\NightElf\shadowstrike\ShadowStrikeMissile.mdl +Missilespeed=1200 +MissileArc=0.0 +MissileHoming=1 +Order=shadowstrike + +// Shadow Strike Non Stack Buff +[BEsh] +Buffart=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Targetart=Abilities\Spells\NightElf\shadowstrike\shadowstrike.mdl +Targetattach=overhead + +// Shadow Strike Stack Buff +[BEsi] +Buffart=ReplaceableTextures\CommandButtons\BTNShadowStrike.blp +Targetart=Abilities\Spells\NightElf\shadowstrike\shadowstrike.mdl +Targetattach=overhead + +// Spirit of Vengeance +[AEsv] +Art=ReplaceableTextures\CommandButtons\BTNSpiritOfVengeance.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSpiritOfVengeance.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Missileart=Abilities\Spells\NightElf\SpiritOfVengeance\SpiritOfVengeanceBirthMissile.mdl +Missilespeed=700 +MissileArc=0.50 +Targetart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl +Order=spiritofvengeance + +[BEsv] +Buffart=ReplaceableTextures\CommandButtons\BTNSpiritOfVengeance.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// Cargo Load entangled mine +[Slo2] +Art=ReplaceableTextures\CommandButtons\BTNLoad.blp +Buttonpos=0,2 +Order=load + +// Impaling Bolt - see unitfunc +//[Aimp] +//Requires=Repb +//Art=ReplaceableTextures\PassiveButtons\PASBTNImpalingBolt.blp +//Buttonpos=0,2 + +// Moon Glaive +[Amgl] +Requires=Remg +Art=ReplaceableTextures\PassiveButtons\PASBTNUpgradeMoonGlaive.blp +Buttonpos=1,2 + +// Moon Glaive +[Amgr] +Art=ReplaceableTextures\PassiveButtons\PASBTNUpgradeMoonGlaive.blp +Buttonpos=1,2 + +// Slow poison +[Aspo] +Art=ReplaceableTextures\PassiveButtons\PASBTNSlowPoison.blp +Buttonpos=1,2 + +// Slow Poison Non Stack Buff +[Bspo] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNSlowPoison.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Slow Poison Stack Buff +[Bssd] +Spelldetail=2 +Buffart=ReplaceableTextures\PassiveButtons\PASBTNSlowPoison.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Shadow Meld passive nighttime cloaking ability, with its "Hide" button +[Ashm] +Art=ReplaceableTextures\CommandButtons\BTNAmbush.blp +Buttonpos=2,1 +Effectsound=ShadowMeld +Order=ambush + +// Shadow Meld passive nighttime cloaking ability, with its "Hide" button +[Ahid] +Art=ReplaceableTextures\CommandButtons\BTNAmbush.blp +Buttonpos=2,1 +Effectsound=ShadowMeld +Order=ambush + +// instant +[Sshm] +Art=ReplaceableTextures\CommandButtons\BTNAmbush.blp +Buttonpos=2,1 +Effectsound=ShadowMeld +Order=ambush + +// Sentinel +[Aesn] +Requires=Resc +Art=ReplaceableTextures\CommandButtons\BTNSentinel.blp +Buttonpos=0,2 +MissileSpeed=1500 +Missileart=Units\NightElf\Owl\Owl.mdl +Order=sentinel + +// Sentinel +[Aesr] +Art=ReplaceableTextures\CommandButtons\BTNSentinel.blp +Buttonpos=0,2 +MissileSpeed=1500 +Missileart=Units\NightElf\Owl\Owl.mdl +Order=sentinel + +[XEsn] +Targetart=Units\NightElf\Owl\Owl.mdl +Targetattach=overhead + +// Eat Tree +[Aeat] +Art=ReplaceableTextures\CommandButtons\BTNEatTree.blp +Buttonpos=0,2 +Specialart=Abilities\Spells\NightElf\EatTree\EatTreeSprite.mdl +Specialattach=eattree +Order=eattree + +// Moon pool mana battery +[Ambt] +Art=ReplaceableTextures\CommandButtons\BTNManaRechargeOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNManaRechargeOff.blp +Buttonpos=0,0 +Unbuttonpos=0,0 +// One for each normal race, and a special one for demons and their corrupted moon well. +Effectart=Abilities\Spells\NightElf\MoonWell\MoonWellTarget.mdl,Abilities\Spells\NightElf\MoonWell\MoonWellTarget.mdl,Abilities\Spells\NightElf\MoonWell\MoonWellTarget.mdl,Abilities\Spells\NightElf\MoonWell\MoonWellTarget.mdl,Abilities\Spells\NightElf\MoonWell\CorruptedMoonWellTarget.mdl +Casterart=Abilities\Spells\NightElf\MoonWell\MoonWellCasterArt.mdl +Specialart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=recharge + +// Wisp Harvest +[Awha] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Targetart=Abilities\Spells\NightElf\TargetArtLumber\TargetArtLumber.mdl +Targetattach=origin +Effectsoundlooped=WispHarvestLoop +Order=harvest + +// Wisp Harvest (Invulnerable) +[Awh2] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Targetart=Abilities\Spells\NightElf\TargetArtLumber\TargetArtLumber.mdl +Targetattach=origin +Effectsoundlooped=WispHarvestLoop +Order=harvest + +// Detonate +[Adtn] +// no longer requires anything...4-5-2002 Pardo +//Requires=Rewd +Art=ReplaceableTextures\CommandButtons\BTNWispSplode.blp +Buttonpos=1,2 +Specialart=Units\NightElf\Wisp\WispExplode.mdl +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=detonate + +// Wisp Healing +[Awhe] +Art=ReplaceableTextures\CommandButtons\BTNWispHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNWispHealOff.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Requires=Rewh +Casterart= +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=wispheal +Orderon=wisphealon +Orderoff=wisphealoff + +// Entangle +[Aent] +Art=ReplaceableTextures\CommandButtons\BTNGoldMine.blp +Buttonpos=1,2 +Casterart=Abilities\Spells\NightElf\EntangleMine\Roots.mdl +Casterattach=origin +Order=entangle + +// Entangled Gold Mine Cargo +[Aenc] +Art=ReplaceableTextures\CommandButtons\BTNLoad.blp +Unart=ReplaceableTextures\CommandButtons\BTNUnload.blp +Buttonpos=1,2 +Unbuttonpos=0,2 +Effectsound=WispLoad + +// Root +[Aroo] +Art=ReplaceableTextures\CommandButtons\BTNRoot.blp +Unart=ReplaceableTextures\CommandButtons\BTNUproot.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=root +Unorder=unroot + +// Bear Form +[Abrf] +Art=ReplaceableTextures\CommandButtons\BTNBearForm.blp +Unart=ReplaceableTextures\CommandButtons\BTNDruidOfTheClaw.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Requires=Redc +Requiresamount=2 +Order=bearform +Unorder=unbearform + +// Crow Form +[Arav] +Art=ReplaceableTextures\CommandButtons\BTNRavenForm.blp +Unart=ReplaceableTextures\CommandButtons\BTNDruidOfTheTalon.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Requires=Redt +Order=ravenform +Unorder=unravenform + +// Auto-Dispel Magic +[Aadm] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNDryadDispelMagicOff.blp +Requires=Resi +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart= +Targetart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Order=autodispel +Orderon=autodispelon +Orderoff=autodispeloff + +// Spell Immunity +[Amim] +Art=ReplaceableTextures\PassiveButtons\PASBTNMagicImmunity.blp +Buttonpos=2,2 + +// Ultravision +[Ault] +Requires=Reuv + +//Elune's Grace +[Aegr] +Art=ReplaceableTextures\PassiveButtons\PASBTNElunesBlessing.blp +Buttonpos=1,2 + +// Couple +[Acoa] +Art=ReplaceableTextures\CommandButtons\BTNHippogriffRider.blp +Buttonpos=0,2 +Requires=Reht +Effectsound=HippogryphTaming +//Order=?? + +// Couple (Archer) +[Aco2] +Art=ReplaceableTextures\CommandButtons\BTNHippogriffRider.blp +Buttonpos=0,2 +Requires=Reht +//Order=?? + +[Acoh] +Art=ReplaceableTextures\CommandButtons\BTNHippogriffRider.blp +Buttonpos=0,2 +Requires=Reht +Effectsound=HippogryphTaming +//Order=?? + +// Couple (Hippo) +[Aco3] +Art=ReplaceableTextures\CommandButtons\BTNHippogriffRider.blp +Buttonpos=0,2 +Requires=Reht +Effectsound=HippogryphTaming +//Order=?? + +// Decouple +[Adec] +Art=ReplaceableTextures\CommandButtons\BTNArcher.blp +Buttonpos=0,2 +Requires=Reht +Effectsound=HippogryphTaming +Order=decouple + +// Corrosive Breath +[Acor] +Art=ReplaceableTextures\PassiveButtons\PASBTNCorrosiveBreath.blp +Buttonpos=0,2 +Requires=Recb +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl +Missilespeed=1000 +Order=corrosivebreath + +[Bcor] +Buffart=ReplaceableTextures\CommandButtons\BTNCorrosiveBreath.blp +Targetart=Abilities\Spells\NightElf\CorrosiveBreath\ChimaeraAcidTargetArt.mdl +Targetattach= + +// Mana Burn +[AEmb] +Art=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNManaBurn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\NightElf\ManaBurn\ManaBurnTarget.mdl +Order=manaburn +LightningEffect=MBUR + +// Immolation +[AEim] +Art=ReplaceableTextures\CommandButtons\BTNImmolationOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNImmolationOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNImmolationOn.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Order=immolation +Unorder=unimmolation + +[BEim] +Buffart=ReplaceableTextures\CommandButtons\BTNImmolationOn.blp +Targetart=Abilities\Spells\NightElf\Immolation\ImmolationTarget.mdl +Specialart=Abilities\Spells\NightElf\Immolation\ImmolationDamage.mdl +Specialattach=head + +// Evasion +[AEev] +Art=ReplaceableTextures\PassiveButtons\PASBTNEvasion.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNEvasion.blp +Researchbuttonpos=2,0 + +// Metamorphosis +[AEme] +Art=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=metamorphosis + +// Illidan Metamorphosis +[AEIl] +Art=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=metamorphosis + +// Evil Illidan Metamorphosis +[AEvi] +Art=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=metamorphosis + +[BEme] +Buffart=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp + +// Entangling Roots +[AEer] +Art=ReplaceableTextures\CommandButtons\BTNEntanglingRoots.blp +Researchart=ReplaceableTextures\CommandButtons\BTNEntanglingRoots.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Casterart= +Order=entanglingroots + +[BEer] +Buffart=ReplaceableTextures\CommandButtons\BTNEntanglingRoots.blp +Targetart=Abilities\Spells\NightElf\EntanglingRoots\EntanglingRootsTarget.mdl +Targetattach=origin + +// Force of Nature +[AEfn] +Art=ReplaceableTextures\CommandButtons\BTNEnt.blp +Researchart=ReplaceableTextures\CommandButtons\BTNEnt.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Specialart= +Order=forceofnature + +[BEfn] +Buffart=ReplaceableTextures\CommandButtons\BTNEnt.blp + +// Thorns Aura +[AEah] +Art=ReplaceableTextures\PassiveButtons\PASBTNThorns.blp +Researchart=ReplaceableTextures\CommandButtons\BTNThorns.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\NightElf\ThornsAura\ThornsAura.mdl +Targetattach=origin + +[BEah] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNThorns.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin +Specialart=Abilities\Spells\NightElf\ThornsAura\ThornsAuraDamage.mdl +Specialattach=head + +// Tranquility +[AEtq] +Art=ReplaceableTextures\CommandButtons\BTNTranquility.blp +Researchart=ReplaceableTextures\CommandButtons\BTNTranquility.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=tranquility +Animnames=stand,channel + +// Tranquility life regeneration +[AEtr] +Targetart=Abilities\Spells\NightElf\Tranquility\TranquilityTarget.mdl + +[XEtq] +Effectart=Abilities\Spells\NightElf\Tranquility\Tranquility.mdl +Effectsoundlooped=TranquilityLoop + +// Scout +[AEst] +Art=ReplaceableTextures\CommandButtons\BTNScout.blp +Researchart=ReplaceableTextures\CommandButtons\BTNScout.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +MissileSpeed=650 +Missileart=Units\NightElf\Owl\Owl.mdl +Order=scout + +// Searing Arrows +[AHfa] +Art=ReplaceableTextures\CommandButtons\BTNSearingArrowsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSearingArrowsOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSearingArrows.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +Missileart=Abilities\Weapons\SearingArrow\SearingArrowMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=flamingarrows +Unorder=unflamingarrows +Animnames=attack + +// Trueshot Aura +[AEar] +Art=ReplaceableTextures\PassiveButtons\PASBTNTrueShot.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNTrueShot.blp +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\NightElf\TrueshotAura\TrueshotAura.mdl +Targetattach=origin + +[BEar] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNTrueShot.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Starfall +[AEsf] +Art=ReplaceableTextures\CommandButtons\BTNStarfall.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStarfall.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Casterart= +Order=starfall +Animnames=spell,looping + +// Starfall life drain +[AEsd] +Targetart=Abilities\Spells\NightElf\Starfall\StarfallTarget.mdl +Targetattach=origin + +[XEsf] +Effectart=Abilities\Spells\NightElf\Starfall\StarfallCaster.mdl + +// beefy starfall - campaign spell +[AEsb] +Art=ReplaceableTextures\CommandButtons\BTNStarfall.blp +Researchart=ReplaceableTextures\CommandButtons\BTNStarfall.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Casterart= +Order=starfall +Animnames=spell,looping + +// Faerie Fire +[Afae] +Art=ReplaceableTextures\CommandButtons\BTNFaerieFireOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFaerieFireOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +order=faeriefire +orderon=faeriefireon +orderoff=faeriefireoff + +// Faerie Fire (storm crow form) +[Afa2] +Requires=Reec +Art=ReplaceableTextures\CommandButtons\BTNFaerieFireOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFaerieFireOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +order=faeriefire +orderon=faeriefireon +orderoff=faeriefireoff + +[Bfae] +Spelldetail=1 +Targetart=Abilities\Spells\NightElf\FaerieFire\FaerieFireTarget.mdl +Targetattach=head +Buffart=ReplaceableTextures\CommandButtons\BTNFaerieFire.blp + +// Cyclone +[Acyc] +Art=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Buttonpos=1,2 +Requires=Redt +Requiresamount=2 +order=cyclone + +[Bcyc] +Buffart=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Effectart=Abilities\Spells\NightElf\Cyclone\CycloneTarget.mdl +Targetattach=sprite,first +Effectsoundlooped=CycloneLoop + +[Bcy2] +Buffart=ReplaceableTextures\CommandButtons\BTNCyclone.blp +Effectart=Abilities\Spells\NightElf\Cyclone\CycloneTarget.mdl +Effectattach=sprite,first +Effectsoundlooped=CycloneLoop + +// Rejuvenation +[Arej] +Art=ReplaceableTextures\CommandButtons\BTNRejuvenation.blp +Buttonpos=1,2 +Requires=Redc +order=rejuvination + +[Brej] +Buffart=ReplaceableTextures\CommandButtons\BTNRejuvenation.blp +TargetArt=Abilities\Spells\NightElf\Rejuvenation\RejuvenationTarget.mdl +Targetattach=chest + +// Renew +[Aren] +Art=ReplaceableTextures\CommandButtons\BTNWispHealOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNWispHealOff.blp +Buttonpos=1,1 +Unbuttonpos=1,1 +Casterart= +Targetart= +Effectsoundlooped=WispRenewLoop +Order=renew +Orderon=renewon +Orderoff=renewoff +Animnames=stand,work + +// Roar +[Aroa] +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=roar +Animnames=spell,slam + +// Roar (bear form) +[Ara2] +Requires=Reeb +Art=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Buttonpos=0,2 +Casterart=Abilities\Spells\NightElf\BattleRoar\RoarCaster.mdl +Order=roar +Animnames=spell,slam + +[Broa] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNBattleRoar.blp +Targetart=Abilities\Spells\NightElf\BattleRoar\RoarTarget.mdl +Targetattach=overhead + +// Lightning attack +[Alit] +Missileart=Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilespeed=1500 +Targetart=Abilities\Weapons\Bolt\BoltImpact.mdl +LightningEffect=CHIM + +// tree of life upgrade ability +[Atol] +Targetart=Abilities\Spells\NightElf\TreeofLifeUpgrade\TreeofLifeUpgradeTargetArt.mdl,Abilities\Spells\NightElf\TreeofLifeUpgrade\TreeofLifeUpgradeTargetArtHand.mdl,Abilities\Spells\NightElf\TreeofLifeUpgrade\TreeofLifeUpgradeTargetArtHand.mdl +Targetattachcount=3 +Targetattach=origin +Targetattach1=hand,left +Targetattach2=hand,right + +// used by creep ability +[Bbar] +Buffart=ReplaceableTextures\CommandButtons\BTNBarkskin.blp +Targetart=Abilities\Spells\NightElf\Barkskin\BarkSkinTarget.mdl +Targetattach=chest + +// 'damaged' attachment effect, small +[Xfns] +TargetArt=Environment\NightElfBuildingFire\ElfSmallBuildingFire2.mdl,Environment\NightElfBuildingFire\ElfSmallBuildingFire1.mdl +Targetattachcount=2 +Targetattach=sprite,first +Targetattach1=sprite,fourth +Effectsoundlooped=NightElfFireSmall + +// medium +[Xfnm] +TargetArt=Environment\NightElfBuildingFire\ElfLargeBuildingFire2.mdl,Environment\NightElfBuildingFire\ElfSmallBuildingFire1.mdl,Environment\NightElfBuildingFire\ElfLargeBuildingFire0.mdl,Environment\NightElfBuildingFire\ElfSmallBuildingFire2.mdl +Targetattachcount=4 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fourth +Targetattach3=sprite,fifth +Effectsoundlooped=NightElfFireMedium + +// large +[Xfnl] +TargetArt=Environment\NightElfBuildingFire\ElfLargeBuildingFire1.mdl,Environment\NightElfBuildingFire\ElfLargeBuildingFire0.mdl,Environment\NightElfBuildingFire\ElfLargeBuildingFire0.mdl,Environment\NightElfBuildingFire\ElfSmallBuildingFire1.mdl,Environment\NightElfBuildingFire\ElfLargeBuildingFire2.mdl,Environment\NightElfBuildingFire\ElfSmallBuildingFire0.mdl +Targetattachcount=6 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fifth +Targetattach3=sprite,third +Targetattach4=sprite,fourth +Targetattach5=sprite,sixth +Effectsoundlooped=NightElfFireLarge diff --git a/share/mpq/units/units/nightelfabilitystrings.txt b/share/mpq/units/units/nightelfabilitystrings.txt new file mode 100644 index 0000000..216980d --- /dev/null +++ b/share/mpq/units/units/nightelfabilitystrings.txt @@ -0,0 +1,758 @@ +// Vengeance +[Avng] +Name=复仇之魂 +Tip=复仇之魂(|cffffcc00V|r) +Ubertip="从倒下的友军尸体身上召唤出不可伤害的野兽幽魂。持续秒或直到化身死亡。" +Hotkey=V +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" + +[Bvng] +Bufftip=复仇之魂 +Buffubertip="复仇之魂在此。" + +// Mana Flare +[Amfl] +Name=魔力之焰 +Tip=魔力之焰(|cffffcc00F|r) +Untip=停止魔力之焰(|cffffcc00F|r) +Ubertip="在周围敌方单位施放魔法的时候,让精灵龙对其造成伤害。同时增加精灵龙点的护甲。|n持续秒。" +Unubertip="停止魔力之焰通道" +Hotkey=F +Unhotkey=F + +[Bmfl] +Bufftip=魔力之焰 +Buffubertip="该单位身上有魔力之焰的作用;周围任何敌方单位施放魔法都会受到伤害。" + +[Bmfa] +Bufftip=魔力之焰 +Buffubertip="该单位身上有魔力之焰的作用;周围任何敌方单位施放魔法都会受到伤害。" +EditorSuffix= (额外的) + +// Phase Shift +[Apsh] +Name=变相移动 +Tip=变相移动(|cffffcc00E|r) +Ubertip="让该单位一旦遭到攻击就处于消失的状态之中。在短时间内不再受到任何的伤害。|n持续秒。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=E +Unhotkey=E + +[Bpsh] +Bufftip=变相移动 +Buffubertip="该单位处于消失的状态中,因此在短时间内不会受到任何的伤害。" + +// Ethereal +[Aetl] +Name=虚无状态 +Tip=虚无状态 +Ubertip="处于虚无形态的单位不能攻击,但是能施放魔法,敌方的魔法能对其造成额外的伤害。" +Hotkey=E + +// Sphere +[Asp1] +Name=球体 +EditorSuffix= (复仇之魂-等级 1) + +// Sphere +[Asp2] +Name=球体 +EditorSuffix= (复仇之魂-等级 2) + +// Sphere +[Asp3] +Name=球体 +EditorSuffix= (复仇之魂-等级 3) + +// Sphere +[Asp4] +Name=球体 +EditorSuffix= (复仇之魂-等级 4) + +// Sphere +[Asp5] +Name=球体 +EditorSuffix= (复仇之魂-等级 5) + +// Sphere +[Asp6] +Name=球体 +EditorSuffix= (复仇之魂-等级 6) + +// War Club +[Agra] +Name=战棍 +Tip=战棍(|cffffcc00W|r) +Ubertip="让山岭巨人拔起一棵树木从而拥有攻城能力,并且增加远程攻击范围。|n持续次攻击。" +Hotkey=W + +// Hardened Skin +[Assk] +Name=硬化皮肤 +Tip=硬化皮肤 +Ubertip="降低所有施加在山岭巨人身上的伤害点。攻击不能低于点。" +Hotkey=K + +// Resistant Skin +[Arsk] +Name=抗性皮肤 +Tip=抗性皮肤 +Ubertip="降低负性魔法的持续时间,并让山岭巨人对某些特定魔法免疫。" +Hotkey=E + +// Taunt +[Atau] +Name=嘲讽 +Tip=嘲讽(|cffffcc00T|r) +Ubertip="最近的个单位会强迫攻击这个单位。" +Hotkey=T + +[Btau] +Bufftip=嘲讽 +Buffubertip="这个单位现在是免疫的。" + +// Blink +[AEbl] +Name=闪烁 +Tip=闪烁(|cffffcc00B|r) - [|cffffcc00等级 1|r],闪烁(|cffffcc00B|r) - [|cffffcc00等级 2|r],闪烁(|cffffcc00B|r)- [|cffffcc00等级 3|r] +Ubertip="能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。","能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。","能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。" +Hotkey=B +Researchtip="学习闪烁(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能让守望者瞬间移动一段距离,从而逃离战场或者快速加入战斗。|n|n|cffffcc00等级 1|r -秒魔法施放间隔时间,消耗点魔法。|n|cffffcc00等级 2|r -秒魔法施放间隔时间,消耗点魔法。|n|cffffcc00等级 3|r -秒魔法施放间隔时间,消耗点魔法。" +Researchhotkey=B + +// Fan of Knives +[AEfk] +Name=刀阵旋风 +Tip=刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 1|r],刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 2|r],刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。","守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。","守望者对周围的敌人发射出锋利的尖刀进行伤害,每把尖刀造成点的伤害。" +Hotkey=F +Researchtip="学习刀阵旋风(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="守望者对周围的敌人发射出锋利的尖刀进行伤害。|n|n|cffffcc00等级 1|r - 对每个目标造成点伤害。|n|cffffcc00等级 2|r - 对每个目标造成点伤害。|n|cffffcc00等级 3|r - 对每个目标造成点伤害。" +Researchhotkey=F + +// Shadow Strike +[AEsh] +Name=暗影突袭 +Tip=暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 1|r],暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 2|r],暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 3|r] +Ubertip="投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。","投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。","投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成点的伤害,随后每秒造成点的伤害,持续秒。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。" +Hotkey=D +Researchtip="学习暗影突袭(|cffffcc00D|r) - [|cffffcc00等级 %d|r]" +Researchubertip="投掷出一把毒性的匕首,能对敌方的地面单位造成巨大的伤害。最初造成很大的伤害,随后每秒造成一定的伤害。匕首上的毒素能在短时间内减慢目标单位的攻击速度和移动速度。|n|n|cffffcc00等级 1|r - 点初始伤害, 点持续伤害。 |n|cffffcc00等级 2|r - 点初始伤害,点持续伤害。 |n|cffffcc00等级 3|r - 点初始伤害,点持续伤害。." +Researchhotkey=D + +// Shadow Strike Non Stack Buff +[BEsh] +Bufftip=暗影突袭 +Buffubertip="This unit was hit by Shadow Strike; it will take damage over time and move more slowly." + +// Shadow Strike Stack Buff +[BEsi] +Bufftip=暗影突袭 +Buffubertip="This unit was hit by Shadow Strike; it will take damage over time and move more slowly." + +// Vengeance +[AEsv] +Name=复仇之魂 +Tip=复仇之魂(|cffffcc00V|r) +Ubertip="召唤出一个强大的复仇天神,复仇天神能从周围的尸体中复活许多无敌的幽灵来为你战斗。当复仇天神死掉的时候,那些幽灵也会自动消失。|n持续秒。" +Hotkey=V +Researchtip="学习复仇之魂(|cffffcc00V|r)" +Researchubertip="召唤出一个强大的复仇天神,复仇天神能从周围的尸体中复活许多无敌的幽灵来为你战斗。当复仇天神死掉的时候,那些幽灵也会自动消失。|n持续秒。" +Researchhotkey=V + +[BEsv] +Bufftip=复仇之魂 +Buffubertip="复仇之魂暴怒中。" + +// Cargo Load entangled mine +[Slo2] +Name=装载小精灵 +Tip=装载小精灵(|cffffcc00L|r) +Ubertip="装载一个小精灵。" +Hotkey=L + +// see unitstrings +//[Aimp] +//Name=Vorpal Blades +//Tip=Vorpal Blades +//Ubertip="Permits the glaives launched by the Glaive Thrower to strike through initial ground targets and damage those behind." + +[Amgl] +Name=月刃 +Tip=月刃 +Ubertip="使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。" + +[Amgr] +Name=月刃 +EditorSuffix= (娜萨) +Tip=月刃 +Ubertip="使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。" + +[Aspo] +Name=慢性毒药 +Tip=慢性毒药 +Ubertip="慢性毒药攻击能造成每秒点的伤害,并在秒内减慢敌人%的移动速度和%的攻击速度。" + +// Slow Poison Non Stack Buff +[Bspo] +Bufftip=慢性毒药 +Buffubertip="该单位受到了慢性毒药的攻击,因此其移动速度和攻击速度都减慢了,而且会在一定时间内持续地受到伤害。" +EditorSuffix= (没有堆积) + +// Slow Poison Stack Buff +[Bssd] +Bufftip=慢性毒药 +Buffubertip="该单位受到了慢性毒药的攻击;因此其移动速度和攻击速度都减慢了,而且会在一定时间内持续地受到伤害。" +EditorSuffix= (堆积) + +// Shadow Meld passive nighttime cloaking ability, with its "Hide" button +[Ashm] +Name=影遁 +Tip=隐藏(|cffffcc00I|r) +Ubertip="让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。" +Hotkey=I + +[Sshm] +Name=影遁 +Tip=隐藏(|cffffcc00I|r) +Ubertip="让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。" +Hotkey=I +EditorSuffix= (立刻的) + +// Shadow Meld passive nighttime cloaking ability, with its "Hide" button +[Ahid] +Name=影遁 +Tip=隐藏(|cffffcc00I|r) +Ubertip="让单位停止自动攻击敌人,可以使其影遁,在夜间变的隐形。" +Hotkey=I +EditorSuffix= (阿卡玛) + +// Sentinel +[Aesn] +Name=哨兵 +Tip=哨兵(|cffffcc00E|r) +Ubertip="能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。" +Hotkey=E + +// Sentinel +[Aesr] +Name=哨兵 +EditorSuffix= (娜萨) +Tip=哨兵(|cffffcc00E|r) +Ubertip="能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。" +Hotkey=E + +// Eat Tree +[Aeat] +Name=吞食树木 +Tip=吞食树木(|cffffcc00E|r) +Ubertip="吞食一棵树木以在秒内恢复点的生命值。" +Hotkey=E + +// Moon pool mana battery +[Ambt] +Name=补充魔法和生命值 +Tip=补充魔法和生命值(|cffffcc00R|r) +Ubertip="恢复一个目标单位的魔法和生命值。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +Order=补充魔法和生命值 + +// Wisp Harvest +[Awha] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="你可以从缠绕金矿中采集黄金,从树木中采集木材。" +Hotkey=G +EditorSuffix= (小精灵能采集黄金和木材) + +// Wisp Harvest (Invulnerable) +[Awh2] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="你可以从缠绕金矿中采集黄金,从树木中采集木材。" +Hotkey=G +EditorSuffix= (小精灵可以采集黄金和木材-远古灵魂) + +// Detonate +[Adtn] +Name=爆炸 +Tip=爆炸(|cffffcc00D|r) +Ubertip="会毁灭掉小精灵,但可以消除一定范围内所有的魔法效果并会吸收周围每个单位点的魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=D + +// Wisp Healing +[Awhe] +Name=医疗 +Tip=医疗(|cffffcc00L|r) +Ubertip="医疗周围受伤的友军单位。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=L +Unhotkey=L + +// Entangle +[Aent] +Name=缠绕金矿 +Tip=缠绕金矿(|cffffcc00G|r) +Ubertip="在小精灵采集金矿之前,你必须先将金矿缠绕。" +Hotkey=G + +// Entangled Gold Mine Cargo +[Aenc] +Name=装载 +EditorSuffix= (缠绕金矿) +Tip=装载(|cffffcc00L|r) +Ubertip="让某个小精灵进入金矿。" +Hotkey=L +Untip=卸载全部(|cffffcc00U|r) +Unubertip="将所有小精灵从金矿中移开。" +Unhotkey=U + +// Root +[Aroo] +Name=扎根 +Tip=扎根(|cffffcc00R|r) +Ubertip="使得暗夜精灵族的古树固定在地上,从而能生产各种单位。对远古保护者来说,这就意味着它能向空中投掷大量的岩石以攻击来犯的敌人,同时使古树变成加强型护甲。" +Hotkey=R +Untip=拔根(|cffffcc00R|r) +Unubertip="使得古树从地上拔起自己的根须从而能进行移动。同时使古树具有重型护甲。" +Unhotkey=R + +// Bear Form +[Abrf] +Name=变熊 +Tip=变熊(|cffffcc00F|r) +Ubertip="将德鲁伊变成一头威力巨大的熊,但是其魔法恢复速度会变慢。" +Hotkey=F +Untip=恢复暗夜精灵族状态(|cffffcc00F|r) +Unubertip="让德鲁伊变为暗夜精灵形态。" +Unhotkey=F + +[Sbr2] +EditorSuffix= (可选的) + +// Crow Form +[Arav] +Name=风暴之鸦 +Tip=风暴之鸦状态(|cffffcc00F|r) +Ubertip="让德鲁伊变为风暴乌鸦,从而可以飞翔在天空中。" +Hotkey=F +Untip=恢复暗夜精灵族状态(|cffffcc00F|r) +Unubertip="让德鲁伊变为暗夜精灵形态。" +Unhotkey=F + +[Sra2] +EditorSuffix= (可选的) + +// Auto-Dispel Magic +[Aadm] +Name=驱逐魔法 +Tip=驱逐魔法(|cffffcc00B|r) +Ubertip="能去除敌方单位身上有利的魔法效果和友军单位身上不利的魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B + +// Spell Immunity +[Amim] +Name=魔法免疫 +Tip=魔法免疫 +Ubertip="让目标单位对所有魔法免疫。" + +// Ultravision +[Ault] +Name=夜视能力 + +//Elune's Grace +[Aegr] +Name=艾鲁尼之优雅 +Tip=艾鲁尼之优雅 +Ubertip="减少来自穿刺攻击的伤害到原来的%,并减少来自魔法攻击的伤害到原来的%。" + +// Mount Hippogryph +[Acoa] +Name=骑乘角鹰兽 +EditorSuffix=(年长的) +Tip=骑乘角鹰兽(|cffffcc00U|r) +Ubertip="骑在角鹰兽身上以后,弓箭手可以从空中进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U +Order=骑乘角鹰兽 + +// Mount Hippogryph +[Aco2] +Name=骑乘角鹰兽 +Tip=骑乘角鹰兽(|cffffcc00U|r) +Ubertip="骑在角鹰兽身上以后,弓箭手可以从空中进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U +Order=双目标 + +// Pick up Archer +[Acoh] +Name=搭载弓箭手 +EditorSuffix=(年长的) +Tip=搭载弓箭手(|cffffcc00U|r) +Ubertip="搭载一个弓箭手使其能在空中对敌人进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U +Order=搭载弓箭手 + +// Pick up Archer +[Aco3] +Name=搭载弓箭手 +Tip=搭载弓箭手(|cffffcc00U|r) +Ubertip="搭载一个弓箭手使其能在空中对敌人进行攻击。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U +Order=双目标 + +// Dismount +[Adec] +Name=卸载 +Tip=卸载弓箭手和角鹰兽(|cffffcc00U|r) +Ubertip="将弓箭手从角鹰兽身上卸载下来。" +Hotkey=U + +// Corrosive Breath +[Acor] +Name=腐蚀喷吐 +Tip=腐蚀喷吐 +Ubertip="能喷出一团腐蚀性液体,对破坏建筑物特别的有效。" + +[Bcor] +Bufftip=腐蚀喷吐 +Buffubertip="该建筑物受到了腐蚀喷吐的攻击,因此其在一定的时间内会受到持续的伤害。" + +// Mana Burn +[AEmb] +Name=法力燃烧 +Tip=法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 1|r],法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 2|r],法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 3|r] +Ubertip="射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。","射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。","射出一道能量波从而消耗掉目标单位点的魔法值。目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。" +Hotkey=B +Researchtip="学习法力燃烧(|cffffcc00B|r) - [|cffffcc00等级 %d|r]" +Researchubertip="射出一道能量波来消耗掉目标单位一定的魔法值,目标单位的魔法值在燃烧的过程中,也会对其造成同等数量的伤害值。|n|n|cffffcc00等级 1|r - 消耗掉目标点魔法。|n|cffffcc00等级 2|r - 消耗掉目标点魔法。|n|cffffcc00等级 3|r - 消耗掉目标点魔法。" +Researchhotkey=B + +// Immolation +[AEim] +Name=献祭 +Tip=激活献祭(|cffffcc00L|r) - [|cffffcc00等级 1|r],激活献祭(|cffffcc00L|r) - [|cffffcc00等级 2|r],激活献祭(|cffffcc00L|r) - [|cffffcc00等级 3|r] +Ubertip="激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。","激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。","激活献祭之后会让该单位处于火焰的包围之中,对周围的地面单位会造成每秒点的伤害。|n该技能会持续地消耗魔法值。" +Unubertip="取消献祭之后可以停止消耗魔法。 +Hotkey=L +Untip=取消献祭(|cffffcc00L|r) +Unhotkey=L +Researchtip="学习献祭(|cffffcc00L|r) - [|cffffcc00等级 %d|r]" +Researchubertip="让恶魔猎手处于火焰的包围之中,并对周围的敌方地面单位造成一定的伤害。|n该技能会持续地消耗魔法值。|n|n|cffffcc00等级 1|r - 每秒点的伤害。|n|cffffcc00等级 2|r - 每秒点的伤害。|n|cffffcc00等级 3|r - 每秒点的伤害。" +Researchhotkey=L + +[BEim] +Bufftip=献祭 +Buffubertip="该单位有着献祭技能,因此其周围的地面单位会持续受到伤害。" + +// Evasion +[AEev] +Name=闪避 +Tip=闪避 - [|cffffcc00等级 1|r],闪避 - [|cffffcc00等级 2|r],闪避 - [|cffffcc00等级 3|r] +Ubertip="给予%的概率让恶魔猎手躲避掉敌人的攻击。","给予%的概率让恶魔猎手躲避掉敌人的攻击。","给予%的概率让恶魔猎手躲避掉敌人的攻击。" +Researchtip="学习闪避(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="给予一定的概率使得恶魔猎手躲避掉敌人的攻击。|n|n|cffffcc00等级 1|r - %的概率躲避掉敌人的攻击。|n|cffffcc00等级 2|r - %的概率躲避掉敌人的攻击。|n|cffffcc00等级 3|r - %的概率躲避掉敌人的攻击。" +Researchhotkey=E + +// Metamorphosis +[AEme] +Name=变身 +Tip=变身(|cffffcc00T|r) +Ubertip="让恶魔猎手变身为一个威力巨大的恶魔。该恶魔具有远程攻击能力并会增加点的生命值。|n持续秒。" +Hotkey=T +Researchtip=学习变身(|cffffcc00T|r) +Researchubertip="让恶魔猎手变身为一个威力巨大的恶魔。该恶魔具有远程攻击能力并会增加点的生命值。|n持续秒。" +Researchhotkey=T +Globalmessage= +Globalsound= + +// Illidan Metamorphosis +[AEIl] +Name=变身 +Tip=变身(|cffffcc00T|r) +Ubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +Hotkey=T +Researchtip=学习变身(|cffffcc00T|r) +Researchubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +Researchhotkey=T +EditorSuffix= (尤迪安) +Globalmessage= +Globalsound= + +// Illidan Metamorphosis +[AEvi] +Name=变身 +Tip=变身(|cffffcc00T|r) +Ubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +Hotkey=T +Researchtip=学习变身(|cffffcc00T|r) +Researchubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" +Researchhotkey=T +EditorSuffix= (邪恶的尤迪安) +Globalmessage= +Globalsound= + +[BEme] +Bufftip=变身 +Buffubertip="让恶魔猎手变身为一个威力巨大的恶魔,该恶魔具有远程攻击能力。" + +// Entangling Roots +[AEer] +Name=纠缠根须 +Tip=纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 1|r],纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 2|r],纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。","从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。","从地下伸出缠绕的根须将目标在秒内固定住,并对其造成每秒点的伤害。" +Hotkey=E +Researchtip="学习纠缠根须(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="从地下伸出缠绕的根须将目标暂时固定,并造成持续伤害。|n|n|cffffcc00等级 1|r - 伤害/秒,持续秒。|n|cffffcc00等级 2|r - 伤害/秒,持续秒。|n|cffffcc00等级 3|r - 伤害/秒,持续秒。" +Researchhotkey=E + +[BEer] +Bufftip=纠缠根须 +Buffubertip="该单位受到了纠缠根须的攻击,因此其不能移动并在一定时间内会持续受到伤害。" + +// Force of Nature +[AEfn] +Name=自然之力 +Tip=自然之力(|cffffcc00F|r) - [|cffffcc00等级 1|r],自然之力(|cffffcc00F|r) - [|cffffcc00等级 2|r],自然之力(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","将一定范围内的树木转化成个树人,树人具有点生命值和-点的攻击力。可以学会自然之祝福能力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F +Researchtip="学习自然之力(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="将一定范围内的树木转化成树人,每个树人具有点的生命值和-点的攻击力。可以学会自然之祝福能力。|n|n|cffffcc00能攻击地面单位。|r|n|n|cffffcc00等级 1|r - 召唤个树人,持续时间秒。|n|cffffcc00等级 2|r - 召唤个树人,持续时间秒。|n|cffffcc00等级 3|r - 召唤个树人,持续时间秒。" +Researchhotkey=F + +[BEfn] +Bufftip=自然之力 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Thorns Aura +[AEah] +Name=荆棘光环 +Tip=荆棘光环 - [|cffffcc00等级 1|r],荆棘光环 - [|cffffcc00等级 2|r],荆棘光环 - [|cffffcc00等级 3|r] +Ubertip="该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。","该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。","该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到相当于%自身攻击力的伤害。" +Researchtip="学习荆棘光环(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="该光环能给予周围的友军单位一个具有攻击力的护盾保护,敌人对这些单位进行一次近战攻击就会受到一定的伤害。|n|n|cffffcc00等级 1|r - 返回%的伤害。|n|cffffcc00等级 2|r - 返回%的伤害。|n|cffffcc00等级 3|r - 返回%的伤害。" +Researchhotkey=R + + +[BEah] +Bufftip=荆棘光环 +Buffubertip="该单位处在荆棘光环的作用之下,因此近战单位攻击它会受到伤害。" + +// Tranquility +[AEtq] +Name=宁静 +Tip=宁静(|cffffcc00T|r) +Ubertip="在一大片范围内召唤出一阵强大的能量雨,能以每秒点的速度恢复其中友军单位的生命值。|n持续秒。" +Hotkey=T +Researchtip="学习宁静(|cffffcc00T|r)" +Researchubertip="在一大片范围内召唤出一阵强大的能量雨,能以每秒点的速度恢复其中友军单位的生命值。|n持续秒。" +Researchhotkey=T +Globalmessage= +Globalsound= + +// Scout +[AEst] +Name=侦察 +Tip=侦察(|cffffcc00C|r) - [|cffffcc00等级 1|r],侦察(|cffffcc00C|r) - [|cffffcc00等级 2|r],侦察(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。","能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。","能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n持续秒。" +Hotkey=C +Researchtip="学习侦察(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能召唤出一头用来侦察地图的猫头鹰。|n能看见隐形单位。|n|n|cffffcc00等级 1|r -消耗点魔法值来召唤出一头猫头鹰。|n|cffffcc00等级 2|r -消耗点魔法值来召唤出一头猫头鹰。|n|cffffcc00等级 3|r -消耗点魔法值来召唤出一头猫头鹰。" +Researchhotkey=C + +[BEst] +Bufftip=侦察 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Searing Arrows +[AHfa] +Name=灼热之箭 +Tip=灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 1|r],灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 2|r],灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 3|r] +Ubertip="增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。","增加点的火焰伤害,但是每次攻击会消耗一定的魔法值。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +Researchtip="学习灼热之箭(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="通过附加的火焰伤害来增加女祭司的攻击力。|n|n|cffffcc00等级 1|r - 增加点的伤害。|n|cffffcc00等级 2|r - 增加点的伤害。|n|cffffcc00等级 3|r - 增加点的伤害。" +Researchhotkey=R + +// Trueshot Aura +[AEar] +Name=强击光环 +Tip=强击光环 - [|cffffcc00等级 1|r],强击光环 - [|cffffcc00等级 2|r],强击光环 - [|cffffcc00等级 3|r] +Ubertip="一种能增加周围友军单位%远程攻击力的光环。","一种能增加周围友军单位%远程攻击力的光环。","一种能增加周围友军单位%远程攻击力的光环。" +Researchtip="学习强击光环(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="一种能增加周围友军单位远程攻击力的光环。|n|n|cffffcc00等级 1|r - 增加%的远程攻击力。|n|cffffcc00等级 2|r - 增加%的远程攻击力。|n|cffffcc00等级 3|r - 增加%的远程攻击力。" +Researchhotkey=T + +[BEar] +Bufftip=强击光环 +Buffubertip="该单位处在强击光环的作用之下,因此其远程攻击力得到了加强。" + +// Starfall +[AEsf] +Name=群星坠落 +Tip=群星坠落(|cffffcc00F|r) +Ubertip="召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。" +Hotkey=F +Researchtip=学习群星坠落(|cffffcc00F|r) +Researchubertip="召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。" +Researchhotkey=F + +// beefy starfall - campaign spell +[AEsb] +Name=群星坠落 +Tip=群星坠落(|cffffcc00F|r) +Ubertip="每隔秒就召唤出一阵强大的流星雨,每阵流星雨能对周围的单位造成点的伤害。|n持续秒。" +Hotkey=F +Researchtip=学习群星坠落(|cffffcc00F|r) +Researchubertip="召唤出一阵阵的流星雨,每阵流星雨对敌人造成点的伤害。|n持续秒。" +Researchhotkey=F +EditorSuffix= (更加强大的) + +// Faerie Fire +[Afae] +Name=精灵之火 +Tip=精灵之火(|cffffcc00R|r) +Ubertip="减少目标单位点的护甲,并能拥有该单位的视野。|n持续秒。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +// Faerie Fire +[Afa2] +Name=精灵之火 +EditorSuffix=(变形) +Tip=精灵之火(|cffffcc00R|r) +Ubertip="减少目标单位点的护甲,并能拥有该单位的视野。|n持续秒。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +[Bfae] +Bufftip=精灵之火 +Buffubertip="该单位受到了精灵之火的作用,因此其护甲被削弱了,而且还会被敌人看见。" + +// Cyclone +//Unused line: When that unit lands, its movement speed is slowed by a factor of , and it will regain 1/ of its movement every seconds. +[Acyc] +Name=飓风 +Tip=飓风(|cffffcc00C|r) +Ubertip="将目标单位投掷到空中,使其不能移动、攻击和施放任何的魔法技能.而且其他单位也不能在这期间攻击它。|n持续秒。" +Hotkey=C + +[Bcyc] +Bufftip=飓风 +Buffubertip="该单位处在飓风的作用之下,因此其不能移动,攻击和施放魔法。" + +[Bcy2] +Bufftip=飓风 +Buffubertip="该单位处在飓风的作用之下,因此其不能移动,攻击和施放魔法。" +EditorSuffix= (额外的) + +// Rejuvenation +[Arej] +Name=生命恢复 +Tip=生命恢复(|cffffcc00E|r) +Ubertip="在秒内恢复目标友军单位点的生命值。" +Hotkey=E + +[Brej] +Bufftip=生命恢复 +Buffubertip="该单位具有生命恢复技能,因此其能持续地恢复自己的生命值。" + +// Renew +[Aren] +Name=更新 +Tip=更新(|cffffcc00R|r) +Ubertip="让友方的暗夜精灵建筑物、联盟建筑物与友方的机械单位焕然一新。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +// Roar +[Aroa] +Name=咆哮 +Tip=咆哮(|cffffcc00R|r) +Ubertip="增加周围友军单位%的攻击力。|n持续秒。" +Hotkey=R + +// Roar +[Ara2] +Name=咆哮 +EditorSuffix=(变形) +Tip=咆哮(|cffffcc00R|r) +Ubertip="增加周围友军单位%的攻击力。|n持续秒。" +Hotkey=R + +[Broa] +Bufftip=咆哮 +Buffubertip="该单位具有咆哮技能,因此其攻击力得到了加强。" + +[Alit] +Name=闪电攻击 + +// used by creep ability +[Bbar] +Bufftip=树皮 +Buffubertip="该单位具有树皮技能,因此其护甲得到了加强。" + +// tree of life upgrade +[Atol] + + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BEia] +EditorName=献祭(施法者) + +[Beat] +EditorName=吃树 + +[Bgra] +EditorName=拔树 + +[Bssi] +EditorName=慢性毒药(信息) + +[AEsd] +EditorName=群星坠落(目标) + +[AEtr] +EditorName=宁静(目标) + +[Bult] +EditorName=夜视能力 + +[XEsf] +EditorName=群星坠落(效果) + +[XEtq] +EditorName=宁静(效果) + +[XEsn] +EditorName=哨兵(效果) + +[Xfns] +EditorName=建筑物伤害 - 暗夜精灵族 小 + +[Xfnm] +EditorName=建筑物伤害 - 暗夜精灵族 中 + +[Xfnl] +EditorName=建筑物伤害 - 暗夜精灵族 大 diff --git a/share/mpq/units/units/nightelfunitfunc.txt b/share/mpq/units/units/nightelfunitfunc.txt new file mode 100644 index 0000000..8ba4ba2 --- /dev/null +++ b/share/mpq/units/units/nightelfunitfunc.txt @@ -0,0 +1,402 @@ +[ebal] +Requires=edob +Art=ReplaceableTextures\CommandButtons\BTNGlaiveThrower.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\GlaiveMissile\GlaiveMissile.mdl +Missilearc=0.05 +Missilespeed=1400 +Targetart=Abilities\Weapons\GlaiveMissile\GlaiveMissileTarget.mdl +Attachmentanimprops=large + +[etrp] +Requires=edob +Art=ReplaceableTextures\CommandButtons\BTNTreant.blp +Buttonpos=3,0 +Missileart=Abilities\Weapons\AncientProtectorMissile\AncientProtectorMissile.mdl +Missilearc=0.10 +Missilespeed=750 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[echm] +Art=ReplaceableTextures\CommandButtons\BTNChimaera.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\ChimaeraAcidMissile\ChimaeraAcidMissile.mdl,Abilities\Weapons\ChimaeraLightningMissile\ChimaeraLightningMissile.mdl +Missilearc=0.0,0.0 +Missilespeed=1200,1500 +Attachmentanimprops=large + +[edoc] +Requires=etoa +DependencyOr=edcm +// do NOT put a similar DependencyOr under edcm +Art=ReplaceableTextures\CommandButtons\BTNDruidOfTheClaw.blp +Buttonpos=1,0 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +Casterupgradeart=UI\Widgets\Console\Human\infocard-druidofclaw.blp + +[edcm] +Requires=etoa +Art=ReplaceableTextures\CommandButtons\BTNBearForm.blp +Buttonpos=1,0 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=large +Attachmentlinkprops=alternate +Boneprops=alternate +Casterupgradeart=UI\Widgets\Console\Human\infocard-druidofclaw.blp +Animprops=alternateex + +// Ancient of Wonders +[eden] +Art=ReplaceableTextures\CommandButtons\BTNAncientOfWonders.blp +Buttonpos=2,2 +Makeitems=moon,plcl,dust,phea,pman,stwp,spre,oven,pams +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[edot] +DependencyOr=edtm +// do NOT put a similar DependencyOr under edtm +Art=ReplaceableTextures\CommandButtons\BTNDruidOfTheTalon.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\DruidoftheTalonMissile\DruidoftheTalonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-druidoftalon.blp + +[edtm] +Art=ReplaceableTextures\CommandButtons\BTNRavenForm.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\DruidoftheTalonMissile\DruidoftheTalonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Attachmentlinkprops=alternate +Boneprops=alternate +Casterupgradeart=UI\Widgets\Console\Human\infocard-druidoftalon.blp +Animprops=alternateex + +// Entangled Gold Mine +[egol] +Art=ReplaceableTextures\CommandButtons\BTNGoldMine.blp +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[ewsp] +Builds=etol,emow,edos,eaom,eate,eaow,eaoe,edob,etrp,eden +Art=ReplaceableTextures\CommandButtons\BTNWisp.blp +Buttonpos=0,0 +Specialart=Units\NightElf\Wisp\WispExplode.mdl + +[Edem] +Art=ReplaceableTextures\CommandButtons\BTNHeroDemonHunter.blp +Buttonpos=0,2 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe +DependencyOr=Edmm +// do NOT put a similar DependencyOr on Edmm +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +[Edmm] +Art=ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +Buttonpos=0,2 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe +Missileart=Abilities\Weapons\DemonHunterMissile\DemonHunterMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +Attachmentlinkprops=alternate +Boneprops=alternate +Animprops=alternateex +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-demonhunter.blp + +[Ekee] +Art=ReplaceableTextures\CommandButtons\BTNKeeperOfTheGrove.blp +Buttonpos=1,2 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe +Missileart=Abilities\Weapons\KeeperGroveMissile\KeeperGroveMissile.mdl +Missilearc=0.10 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-keeperofthegrove.blp + +[Emoo] +Art=ReplaceableTextures\CommandButtons\BTNPriestessOfTheMoon.blp +Buttonpos=2,2 +Missileart=Abilities\Weapons\MoonPriestessMissile\MoonPriestessMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-priestessofthemoon.blp + +[Ewar] +Art=ReplaceableTextures\CommandButtons\BTNHeroWarden.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\WardenMissile\WardenMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-warden.blp + +[esen] +Requires=edob +Art=ReplaceableTextures\CommandButtons\BTNHuntress.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\SentinelMissile\SentinelMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl +Attachmentanimprops=medium + +[earc] +Art=ReplaceableTextures\CommandButtons\BTNArcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[edry] +Art=ReplaceableTextures\CommandButtons\BTNDryad.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Dryadmissile\Dryadmissile.mdl +Missilearc=0.15 +Missilespeed=1000 +Specialart=Objects\Spawnmodels\NightElf\NightElfLargeDeathExplode\NightElfLargeDeathExplode.mdl + +[efon] +Art=ReplaceableTextures\CommandButtons\BTNEnt.blp +Buttonpos=0,0 +Attachmentanimprops=medium + +[ehip] +Art=ReplaceableTextures\CommandButtons\BTNHippogriff.blp +Buttonpos=0,0 +Attachmentanimprops=medium + +[ehpr] +Art=ReplaceableTextures\CommandButtons\BTNHippogriffRider.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\Arrow\ArrowMissile.mdl +Missilearc=0.15 +Missilespeed=1500 +Attachmentanimprops=medium + +[etol] +Upgrade=etoa +Trains=ewsp +Art=ReplaceableTextures\CommandButtons\BTNTreeOfLife.blp +Buttonpos=0,0 +Researches=Renb,Repm +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Attachmentanimprops=large +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[etoa] +Upgrade=etoe +Trains=ewsp +Art=ReplaceableTextures\CommandButtons\BTNTreeOfAges.blp +Buttonpos=0,2 +Researches=Renb,Repm +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=Upgrade,First +Attachmentanimprops=upgrade,first,large +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[etoe] +Requires=eate +Trains=ewsp +Art=ReplaceableTextures\CommandButtons\BTNTreeOfEternity.blp +Buttonpos=0,2 +Researches=Renb,Repm +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=Upgrade,Second +Attachmentanimprops=upgrade,second,large +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[edob] +Requires=etol +Art=ReplaceableTextures\CommandButtons\BTNHuntersHall.blp +Buttonpos=2,0 +Researches=Resm,Rema,Resw,Rerh,Reuv,Rews +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[eate] +Trains=Edem,Ekee,Emoo,Ewar +Art=ReplaceableTextures\CommandButtons\BTNAltarOfElders.blp +Buttonpos=1,1 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium +Revive=1 + +[eaoe] +Requires=etoa,edob +Trains=edry,edoc,emtg +Researches=Resi,Redc,Rers,Rehs,Reeb +Art=ReplaceableTextures\CommandButtons\BTNAncientOfLore.blp +Buttonpos=2,1 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[eaom] +Trains=earc,esen,ebal +Art=ReplaceableTextures\CommandButtons\BTNAncientOfTheEarth.blp +Buttonpos=1,0 +Researches=Resc,Reib,Remk,Remg,Repb +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[eaow] +Requires=etoa +Trains=ehip,edot,efdr +Researches=Redt,Reht,Reec +Art=ReplaceableTextures\CommandButtons\BTNAncientOfTheMoon.blp +Buttonpos=0,2 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl +Attachmentanimprops=medium + +[edos] +Requires=etoe,eaow +Researches=Recb +Trains=echm +Art=ReplaceableTextures\CommandButtons\BTNChimaeraRoost.blp +Buttonpos=1,2 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +[emow] +Art=ReplaceableTextures\CommandButtons\BTNMoonWell.blp +Buttonpos=0,1 +BuildingSoundLabel=NightElfGrowingLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\NightElf\NECancelDeath\NECancelDeath.mdl + +// spirit of vengeance +[espv] +Art=ReplaceableTextures\CommandButtons\BTNSpiritOfVengeance.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\SpiritOfVengeanceMissile\SpiritOfVengeanceMissile.mdl +Missilearc=0.10 +Missilespeed=1200 +MissileHoming=1 +Attachmentanimprops=medium + +// little spirit of vengeance +[even] +Art=ReplaceableTextures\CommandButtons\BTNAvengingWatcher.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\VengeanceMissile\VengeanceMissile.mdl +Missilearc=0.10 +Missilespeed=1200 +MissileHoming=1 + +// mountain giant +[emtg] +Requires=etoa,eden +Art=ReplaceableTextures\CommandButtons\BTNMountainGiant.blp +Buttonpos=2,0 +Attachmentanimprops=large + +// faerie dragon +[efdr] +Requires=eden +Art=ReplaceableTextures\CommandButtons\BTNFaerieDragon.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\FaerieDragonMissile\FaerieDragonMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +[Aimp] +Requires=Repb +Art=ReplaceableTextures\PassiveButtons\PASBTNVorpalBlades.blp +Buttonpos=0,2 + +//#RESTNOBETA +[etrs] +Art=ReplaceableTextures\CommandButtons\BTNNightElfTransport.blp +Attachmentanimprops=large + +[edes] +Art=ReplaceableTextures\CommandButtons\BTNNightElfDestroyer.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large + +[ebsh] +Art=ReplaceableTextures\CommandButtons\BTNNightElfBattleCruiser.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large + +[eshy] +Art=ReplaceableTextures\CommandButtons\BTNNightElfShipyard.blp +Sellunits= \ No newline at end of file diff --git a/share/mpq/units/units/nightelfunitstrings.txt b/share/mpq/units/units/nightelfunitstrings.txt new file mode 100644 index 0000000..c3522b9 --- /dev/null +++ b/share/mpq/units/units/nightelfunitstrings.txt @@ -0,0 +1,258 @@ +[ebal] +Name=投刃车 +Hotkey=T +Tip=训练投刃车(|cffffcc00T|r) +Ubertip="远距离的攻城武器。对付建筑物特别地有效。还能得到穿刺剑刃的升级。从而能攻击树木。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[etrp] +Name=远古守护者 +Hotkey=P +Tip=建造远古保护者(|cffffcc00P|r) +Ubertip="防御性古树。在扎根以后,会向空中投掷大量的石块以对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[echm] +Name=奇美拉 +Hotkey=C +Tip=训练奇美拉(|cffffcc00C|r) +Ubertip="双头飞龙。能学到腐蚀喷吐技能。|n|n|cffffcc00能攻击地面单位。|r" + +[edoc] +Name=利爪德鲁伊 +EditorSuffix= (暗夜精灵族形态) +Hotkey=C +Tip=训练利爪德鲁伊(|cffffcc00C|r) +Ubertip="近战型的魔法施放单位。一开始能施放咆哮技能,从而增加攻击力。随后还能学习到生命恢复,变熊和利爪之痕技能。|n|n|cffffcc00能攻击地面单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 咆哮","- 咆哮|n- 生命恢复","- 咆哮|n- 生命恢复|n- 变熊" + +[edcm] +Name=利爪德鲁伊 +EditorSuffix= (变熊) +Hotkey=C +Tip=训练利爪德鲁伊(|cffffcc00C|r) +Ubertip="近战型的魔法施放单位。一开始能施放咆哮技能,从而增加攻击力。随后还能学习到生命恢复,变熊和利爪之痕技能。|n|n|cffffcc00能攻击地面单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 咆哮","- 咆哮|n- 生命恢复","- 咆哮|n- 生命恢复|n- 变熊" + +[edot] +Name=猛禽德鲁伊 +EditorSuffix= (暗夜精灵族形态) +Hotkey=T +Tip=训练猛禽德鲁伊(|cffffcc00T|r) +Ubertip="灵活的魔法单位。一开始就能施放精灵之火,从而能降低某个单位的护甲并让其不能隐形。随后还能学习到风暴之鸦,飓风和猛禽之痕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 精灵之火","- 精灵之火|n- 风暴之鸦","- 精灵之火|n- 风暴之鸦|n- 飓风" + +[edtm] +Name=猛禽德鲁伊 +EditorSuffix= (风暴之鸦形态) +Hotkey=T +Tip=训练猛禽德鲁伊(|cffffcc00T|r) +Ubertip="灵活的魔法单位。一开始就能施放精灵之火,从而能降低某个单位的护甲并让其不能隐形。随后还能学习到风暴之鸦,飓风和猛禽之痕技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 精灵之火","- 精灵之火|n- 风暴之鸦","- 精灵之火|n- 风暴之鸦|n- 飓风" + +[egol] +Name=被缠绕的金矿 +Tip=缠绕金矿( |cffffcc00G|r) +Ubertip="冒出一些根须缠绕在金矿上,使得小精灵能采集资源。" + +[ewsp] +Name=小精灵 +Hotkey=W +Tip=训练小精灵(|cffffcc00W|r) +Ubertip="暗夜精灵族基本的工人单位。能采集金矿和木材。还能建造精灵族的建筑物并进行修理更新。|n能自我爆炸从而伤害到周围被召唤出来的单位并吸收一定范围内所有单位的魔法值。" + +[Edem] +Name=恶魔猎手 +Hotkey=D +Tip=召唤恶魔猎手(|cffffcc00D|r) +Ubertip="一种灵活的英雄,能学习到献祭,闪避法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +Propernames=影之歌,影之愤怒,黑暗语者,追火者,黑暗舞者,黑暗恐惧,黑暗悲伤,信德维拉,伤痛杀手,地狱守护者,狂怒之人,愤怒狂奔者,火焰舞者,血之愤怒,恐惧剑刃 + + +[Edmm] +Name=恶魔猎手 +EditorSuffix= (恶魔形态) +Hotkey=D +Tip=召唤恶魔猎手(|cffffcc00D|r) +Ubertip="一种灵活的英雄,能学习到献祭,闪避法力燃烧和变身这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活恶魔猎手(|cffffcc00D|r) +Awakentip=复活恶魔猎手(|cffffcc00D|r) +Propernames=影之歌,影之愤怒,黑暗语者,追火者,黑暗舞者,黑暗恐惧,黑暗悲伤,信德维拉,伤痛杀手,地狱守护者,狂怒之人,愤怒狂奔者,火焰舞者,血之愤怒,恐惧剑刃 + +[Ekee] +Name=丛林守护者 +Hotkey=K +Tip=召唤丛林守护者(|cffffcc00K|r) +Ubertip="一种神秘的英雄,特别擅长于自然类的魔法。能学习到纠缠根须,自然之力,荆刺光环和宁静这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活丛林守护者(|cffffcc00K|r) +Awakentip=复活丛林守护者(|cffffcc00K|r) +Propernames=拉罗德,安奴比理司,南迪倍,卡理法可司,斑德拉尔,马罗内,哥尔比恩,达哥达,奴达,奥哥玛,塞恩特理司,塞理德恩 + +[Emoo] +Name=月之女祭司 +Hotkey=P +Tip=召唤月之女祭司(|cffffcc00P|r) +Ubertip="战士型英雄,擅长于远程攻击。能学习到侦察,灼热之箭,强击光环和群星坠落这四项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活月之女祭司(|cffffcc00P|r) +Awakentip=复活月之女祭司(|cffffcc00P|r) +Propernames=卡塞理司,阿多拉,摩拉,费莱理,安娜拉,可拉,摩维,德拉司,米拉,塞塔,特伽拉,阿理尔,迪安娜 + +[Ewar] +Name=守望者 +Hotkey=W +Tip=召唤守望者(|cffffcc00W|r) +Ubertip="灵巧型英雄,能在战场上来去自如,能学习到闪烁, 刀阵旋风, 暗影突袭和复仇之魂这四项技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活守望者(|cffffcc00W|r) +Awakentip=复活守望者(|cffffcc00W|r) +Propernames=阿尔萨-铁牢,铁乌鸦,马林恩-刀翼,沙粒斯-暗黑猎人,司拉-月亮守望者,萨瑟斯,玛莱斯-魔影,绮理-星踪,阿纳雅-堕林,米拉那-星光,费尔哈拉-星月,德拉尼穆-风语,科达娜-堕歌,娜尔美娜-黑随 + +[esen] +Name=女猎手 +Hotkey=H +Tip=训练女猎手(|cffffcc00H|r) +Ubertip="灵活的远程攻击单位,能学习到哨兵和月刃技能。|n|n|cffffcc00能攻击地面单位。|r" + +[earc] +Name=弓箭手 +Hotkey=A +Tip=训练弓箭手(|cffffcc00A|r) +Ubertip="基本的远程攻击单位。能学习到射击术,硬弓和驯服角鹰兽这三项技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[edry] +Name=树妖 +Hotkey=D +Tip=训练树妖(|cffffcc00D|r) +Ubertip="她的毒性攻击能减慢敌人的速度并慢慢地消耗敌人的生命值。她还具有驱魔技能和魔法免疫技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[efon] +Name=树人 + +[ehip] +Name=角鹰兽 +Hotkey=H +Tip=训练角鹰兽(|cffffcc00H|r) +Ubertip="近战型飞行单位。能学习到驯服角鹰兽技能。|n|n|cffffcc00能攻击空中单位。|r" + +[ehpr] +Name=角鹰兽骑士 +Hotkey=R +Tip=骑乘角鹰兽(|cffffcc00R|r) +Ubertip="弓箭手骑乘在了角鹰兽上面就成为了角鹰兽骑士。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[etol] +Name=生命之树 +Hotkey=T +Tip=建造生命之树(|cffffcc00T|r) +Ubertip="暗夜精灵族的基本建筑物。能训练小精灵和缠绕金矿。在升级到了远古之树和永恒之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" + +[etoa] +Name=远古之树 +Hotkey=U +Tip=升级到远古之树(|cffffcc00U|r) +Ubertip="升级到了远古之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" + +[etoe] +Name=永恒之树 +Hotkey=U +Tip=升级到永恒之树(|cffffcc00U|r) +Ubertip="升级到了永恒之树之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面单位。|r" + +[edob] +Name=猎手大厅 +Hotkey=H +Tip=建造猎手大厅(|cffffcc00H|r) +Ubertip="能对所有单位的攻防进行升级,还包括对夜视能力的升级。" + +[eate] +Name=长者祭坛 +Hotkey=A +Tip=建造长者祭坛(|cffffcc00A|r) +Ubertip="能召唤新的英雄和复活阵亡的英雄。" + +[eden] +Name=奇迹古树 +Hotkey=D +Tip=建造奇迹古树(|cffffcc00D|r) +Ubertip="建造出一个能出售物品的商店。商店内的物品是由你的生命之树的升级情况(生命之树, 远古之树, 永恒之树)和你所拥有的建筑物种类而定的。|n|n|cffffcc00能攻击地面单位。|r" + +[eaoe] +Name=知识古树 +Hotkey=L +Tip=建造知识古树(|cffffcc00L|r) +Ubertip="能生产出暗夜精灵族的地面魔法单位:利爪德鲁伊,山岭巨人和树妖。|n还包括对利爪德鲁伊,驱魔技能,利爪之痕,硬化皮肤和抗性皮肤的升级。|n|n|cffffcc00能攻击地面单位。|r" + +[eaom] +Name=战争古树 +Hotkey=R +Tip=建造战争古树(|cffffcc00R|r) +Ubertip="能生产出:弓箭手,女猎手和投刃车。|n还包括对弓箭手,女猎手和投刃车的各类升级。|n|n|cffffcc00能攻击地面单位。|r" + +[eaow] +Name=风之古树 +Hotkey=W +Tip=建造风之古树(|cffffcc00W|r) +Ubertip="能生产出:角鹰兽,猛禽德鲁伊和精灵龙。|n还包括对角鹰兽和猛禽德鲁伊的各类升级。比如猛禽之痕和训练角鹰兽。|n|n|cffffcc00能攻击地面单位。|r" + +[edos] +Name=奇美拉栖木 +Hotkey=C +Tip=建造奇美拉栖木(|cffffcc00C|r) +Ubertip="能训练出奇美拉怪兽。|n还包括对腐蚀喷吐的研究。" + +[emow] +Name=月亮井 +Hotkey=M +Tip=建造月亮井(|cffffcc00M|r) +Ubertip="提供人口,从而增加可造单位数量的最大值。还能补充暗夜精灵族单位的魔法值和生命值。在夜间它也能自我恢复魔法能量。还能得到月井之春技能的升级。" + +[espv] +Name=复仇天神 + +[even] +Name=复仇之魂 + +[emtg] +Name=山岭巨人 +Hotkey=G +Tip=训练山岭巨人(|cffffcc00G|r) +Ubertip="大型的近战单位,善于吸收敌人的进攻。具有嘲讽和拔树技能。也能学习到硬化皮肤和抗性皮肤这两个技能。|n|n|cffffcc00能攻击地面单位。|r" + +[efdr] +Name=精灵龙 +Hotkey=F +Tip=训练精灵龙(|cffffcc00F|r) +Ubertip="小型的飞行单位,擅长伤害敌人的魔法单位。具有变相移动,魔力之焰和魔法免疫技能。|n|n|Cffffcc00能攻击地面和空中单位。|r" + +[Aimp] +Name=穿刺剑刃 +Tip=穿刺剑刃 +Ubertip="使得投刃车发射出去的剑刃能刺穿敌人而伤害到站在后面的其他单位。同时使得投刃车能攻击树木。" + +//#RESTNOBETA +[etrs] +Name=暗夜精灵族运输船 +Hotkey=T +Tip=雇用暗夜精灵族运输船(|cffffcc00T|r) +Ubertip="能够运送单位的运输船。" + +[edes] +Name=暗夜精灵族护卫舰 +Hotkey=F +Tip=雇用护卫舰(|cffffcc00F|r) +Ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ebsh] +Name=暗夜精灵族战舰 +Hotkey=B +Tip=雇用战舰(|cffffcc00B|r) +Ubertip="强大的攻城舰船,能够很好地攻击地面建筑物和敌人的船只。|n|n|cffffcc00攻击地面单位。|r" + +[eshy] +Name=暗夜精灵族船坞 +Tip=建造暗夜精灵族船坞 +Ubertip="船只建造工厂。能建造出暗夜精灵族的运输船,护卫舰和战舰。" +Description=出售船只 diff --git a/share/mpq/units/units/nightelfupgradefunc.txt b/share/mpq/units/units/nightelfupgradefunc.txt new file mode 100644 index 0000000..f1aa71b --- /dev/null +++ b/share/mpq/units/units/nightelfupgradefunc.txt @@ -0,0 +1,123 @@ +[Resm] +Art=ReplaceableTextures\CommandButtons\BTNStrengthOfTheMoon.blp,ReplaceableTextures\CommandButtons\BTNImprovedStrengthOfTheMoon.blp,ReplaceableTextures\CommandButtons\BTNAdvancedStrengthOfTheMoon.blp +Buttonpos=0,0 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe + +[Resw] +Art=ReplaceableTextures\CommandButtons\BTNStrengthOfTheWild.blp,ReplaceableTextures\CommandButtons\BTNImprovedStrengthOfTheWild.blp,ReplaceableTextures\CommandButtons\BTNAdvancedStrengthOfTheWild.blp +Buttonpos=1,0 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe + +[Rema] +Art=ReplaceableTextures\CommandButtons\BTNMoonArmor.blp,ReplaceableTextures\CommandButtons\BTNImprovedMoonArmor.blp,ReplaceableTextures\CommandButtons\BTNAdvancedMoonArmor.blp +Buttonpos=0,1 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe + +[Rerh] +Art=ReplaceableTextures\CommandButtons\BTNReinforcedHides.blp,ReplaceableTextures\CommandButtons\BTNImprovedReinforcedHides.blp,ReplaceableTextures\CommandButtons\BTNAdvancedReinforcedHides.blp +Buttonpos=1,1 +Requirescount=3 +Requires= +Requires1=etoa +Requires2=etoe + +[Reuv] +Art=ReplaceableTextures\CommandButtons\BTNUltravision.blp +Buttonpos=2,0 + +[Renb] +Art=ReplaceableTextures\CommandButtons\BTNNaturesBlessing.blp +Buttonpos=2,0 +Requires=etoa + +[Reib] +Art=ReplaceableTextures\CommandButtons\BTNImprovedBows.blp +Buttonpos=0,1 +Requires=etoa + +[Remk] +Art=ReplaceableTextures\CommandButtons\BTNMarksmanship.blp +Buttonpos=0,2 +Requires=edob,etoe + +[Resc] +Art=ReplaceableTextures\CommandButtons\BTNSentinel.blp +Buttonpos=1,1 +Requires=edob,etoa + +[Remg] +Art=ReplaceableTextures\CommandButtons\BTNUpgradeMoonGlaive.blp +Buttonpos=1,2 +Requires=edob,etoe + +[Redt] +Art=ReplaceableTextures\CommandButtons\BTNDOTAdeptTraining.blp,ReplaceableTextures\CommandButtons\BTNDOTMasterTraining.blp +Buttonpos=1,2 +Requirescount=2 +Requires= +Requires1=etoe + +[Redc] +Art=ReplaceableTextures\CommandButtons\BTNDOCAdeptTraining.blp,ReplaceableTextures\CommandButtons\BTNDOCMasterTraining.blp +Buttonpos=1,2 +Requirescount=2 +Requires= +Requires1=etoe + +[Resi] +Art=ReplaceableTextures\CommandButtons\BTNDryadDispelMagic.blp +Buttonpos=0,2 + +[Reht] +Art=ReplaceableTextures\CommandButtons\BTNTameHippogriff.blp +Buttonpos=0,2 + +[Recb] +Art=ReplaceableTextures\CommandButtons\BTNCorrosiveBreath.blp +Buttonpos=0,2 + +[Repb] +Art=ReplaceableTextures\CommandButtons\BTNVorpalBlades.blp +Buttonpos=2,2 +Requires=etoa,edob + +[Rehs] +Art=ReplaceableTextures\CommandButtons\BTNHardenedSkin.blp +Buttonpos=2,1 +Requires=etoe,eden + +[Rers] +Art=ReplaceableTextures\CommandButtons\BTNResistantSkin.blp +Buttonpos=2,2 +Requires=etoe,eden + +[Reeb] +Art=ReplaceableTextures\CommandButtons\BTNEnchantedBears.blp +Buttonpos=1,1 +Requires=Redc +Requiresamount=2 + +[Reec] +Art=ReplaceableTextures\CommandButtons\BTNEnchantedCrows.blp +Buttonpos=1,1 +Requires=Redt +Requiresamount=2 + +[Rews] +Art=ReplaceableTextures\CommandButtons\BTNWellSpring.blp +Buttonpos=3,0 +Requires=etoe + +[Repm] +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp +Buttonpos=3,0 +Requires=eden \ No newline at end of file diff --git a/share/mpq/units/units/nightelfupgradestrings.txt b/share/mpq/units/units/nightelfupgradestrings.txt new file mode 100644 index 0000000..e857941 --- /dev/null +++ b/share/mpq/units/units/nightelfupgradestrings.txt @@ -0,0 +1,132 @@ +[Resm] +Name=月之力量,中级月之力量,高级月之力量 +Tip=升级到月之力量(|cffffcc00M|r),升级到中级月之力量(|cffffcc00M|r),升级到高级月之力量(|cffffcc00M|r) +Ubertip="增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。","进一步增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。","进一步增加弓箭手,女猎手,投刃车和角鹰兽骑士的攻击力。" +Hotkey=M,M,M + +[Resw] +Name=野性力量,中级野性力量,高级野性力量 +Tip=升级到野性力量(|cffffcc00W|r),升级到中级野性力量(|cffffcc00W|r),升级到高级野性力量(|cffffcc00W|r) +Ubertip="增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的攻击力。" +Hotkey=W,W,W + +[Rema] +Name=月之护甲,中级月之护甲,高级月之护甲 +Tip=升级到月之护甲(|cffffcc00A|r),升级到中级月之护甲(|cffffcc00A|r),升级到高级月之护甲(|cffffcc00A|r) +Ubertip="增加弓箭手,女猎手和角鹰兽骑士的防御力。","进一步增加弓箭手,女猎手和角鹰兽骑士的防御力。","进一步增加弓箭手,女猎手和角鹰兽骑士的防御力。" +Hotkey=A,A,A + +[Rerh] +Name=加强隐藏,中级加强隐藏,高级加强隐藏 +Tip=升级到加强隐藏(|cffffcc00R|r),升级到中级加强隐藏(|cffffcc00R|r),升级到高级加强隐藏(|cffffcc00R|r) +Ubertip="增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。","进一步增加变熊之后的利爪德鲁伊,变为风暴之鸦之后的猛禽德鲁伊,树妖,角鹰兽,山岭巨人,精灵龙和奇美拉怪兽的护甲。" +Hotkey=R,R,R + +[Reuv] +Name=夜视能力 +Tip=升级到夜视能力(|cffffcc00U|r) +Ubertip="使得暗夜精灵族单位能在夜间和白天看得一样远。" +Hotkey=U + +[Renb] +Name=自然的祝福 +Tip=研究自然的祝福(|cffffcc00N|r) +Ubertip="能提高所有古树和树人的移动速度和护甲。" +Hotkey=N + +[Reib] +Name=硬弓 +Tip=研究硬弓(|cffffcc00I|r) +Ubertip="增加弓箭手和角鹰兽骑士的攻击范围。" +Hotkey=I + +[Remk] +Name=射击术 +Tip=研究射击术(|cffffcc00M|r) +Ubertip="能增加弓箭手和角鹰兽骑士点的攻击力。" +Hotkey=M + +[Resc] +Name=哨兵 +Tip=研究哨兵(|cffffcc00S|r) +Ubertip="使得女猎手能放出一只猫头鹰栖息在一棵树上进行侦察。|n能看见隐形单位。" +Hotkey=S + +[Remg] +Name=升级月刃 +Tip=升级月刃(|cffffcc00G|r) +Ubertip="使得女猎手的月刃剑能在攻击的时候进行弹射,从而伤害到敌人其他的单位。" +Hotkey=G + +[Redt] +Name=猛禽德鲁伊专家训练,猛禽德鲁伊大师训练 +Tip=猛禽德鲁伊专家训练(|cffffcc00A|r), 猛禽德鲁伊大师训练(|cffffcc00A|r) +Ubertip="增加猛禽德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有风暴之鸦技能。","增加猛禽德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有飓风技能。" +Hotkey=A,A + +[Redc] +Name=利爪德鲁伊专家训练,利爪德鲁伊大师训练 +Tip=利爪德鲁伊专家训练(|cffffcc00L|r), 利爪德鲁伊大师训练(|cffffcc00L|r) +Ubertip="增加利爪德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有生命恢复技能。","增加利爪德鲁伊暗夜精灵状态下的魔法最大值,魔法恢复速度,生命值和攻击力。并使其拥有变熊技能。" +Hotkey=L,L + +[Resi] +Name=驱逐魔法 +Tip=研究驱散魔法(|cffffcc00S|r) +Ubertip="使得树妖能去除掉敌人身上的有利魔法效果和友军单位身上的不利魔法效果。|n能伤害召唤出来的单位。" +Hotkey=S + +[Reht] +Name=驯服角鹰兽 +Tip=研究驯服角鹰兽(|cffffcc00I|r) +Ubertip="使得弓箭手能骑乘在角鹰兽的背上从而成为角鹰兽骑士。角鹰兽骑士既能攻击地面单位也能攻击空中单位。" +Hotkey=I + +[Recb] +Name=腐蚀喷吐 +Tip=研究腐蚀喷吐(|cffffcc00B|r) +Ubertip="使得奇美拉怪兽能对敌方的建筑物喷出酸性的毒汁。" +Hotkey=B + +[Repb] +Name=穿刺剑刃 +Tip=研究穿刺剑刃(|cffffcc00P|r) +Ubertip="使得投刃车的攻击能穿透敌人从而对其他站在后面的敌方单位也造成一定伤害。同时也能让投刃车能攻击树木。" +Hotkey=P + +[Rers] +Name=抗性皮肤 +Tip=研究抗性皮肤(|cffffcc00T|r) +Ubertip="让山岭巨人增加对魔法攻击的抵抗力。" +Hotkey=T + +[Rehs] +Name=硬化皮肤 +Tip=研究硬化皮肤(|cffffcc00H|r) +Ubertip="让山岭巨人增加对攻击伤害的抵抗力。" +Hotkey=H + +[Reeb] +Name=利爪之痕 +Tip=研究利爪之痕(|cffffcc00M|r) +Ubertip="让利爪德鲁伊在野熊的状态下能施放咆哮技能。" +Hotkey=M + +[Reec] +Name=猛禽之痕 +Tip=研究猛禽之痕(|cffffcc00M|r) +Ubertip="让猛禽德鲁伊在风暴之鸦的状态下能施放精灵之火技能。" +Hotkey=M + +[Rews] +Name=月井之春 +Tip=研究月井之春(|cffffcc00E|r) +Ubertip="月亮井所能存储的魔法值增加点,魔法值恢复速度加快%。" +Hotkey=E + +[Repm] +Name=背包技能 +EditorSuffix= (暗夜精灵族) +Tip=研究背包技能(|cffffcc00B|r) +Ubertip="给予指定的暗夜精灵地面单位携带物品的能力。" +Hotkey=B diff --git a/share/mpq/units/units/orcabilityfunc.txt b/share/mpq/units/units/orcabilityfunc.txt new file mode 100644 index 0000000..333e998 --- /dev/null +++ b/share/mpq/units/units/orcabilityfunc.txt @@ -0,0 +1,635 @@ +// Balls of Fire +[Abof] +Art=ReplaceableTextures\PassiveButtons\PASBTNFireRocks.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\DemolisherFireMissile\DemolisherFireMissile.mdl +Missilearc=0.35 +Missilespeed=900 +Requires=Robf + +[Bbof] +Buffart=ReplaceableTextures\CommandButtons\BTNWallOfFire.blp +Targetart=Abilities\Spells\Human\FlameStrike\FlameStrikeDamageTarget.mdl + +[Xbof] +Effectart=Abilities\Spells\Human\FlameStrike\FlameStrikeEmbers.mdl +Effectsoundlooped=HumanFireLarge + +// Berserk +[Absk] +Art=ReplaceableTextures\CommandButtons\BTNBerserkForTrolls.blp +Buttonpos=0,2 +Order=berserk + +[Bbsk] +Buffart=ReplaceableTextures\CommandButtons\BTNBerserkForTrolls.blp +Targetart=Abilities\Spells\Orc\TrollBerserk\HeadhunterWEAPONSLeft.mdl,Abilities\Spells\Orc\TrollBerserk\HeadhunterWEAPONSRight.mdl +Targetattachcount=2 +Targetattach=weapon,left +Targetattach1=weapon,right + +// Berserker Upgrade +[Sbsk] +Requires=Robk + +// Reinforced Burrows Upgrade +[Arbr] +Targetart=Abilities\Spells\Orc\ReinforcedTrollBurrow\ReinforcedTrollBurrowTarget.mdl + +// Ancestral Spirit +[Aast] +Requires=Rowt +Requiresamount=2 +Art=ReplaceableTextures\CommandButtons\BTNAncestralSpirit.blp +Buttonpos=2,2 +Casterart=Abilities\Spells\Orc\AncestralSpirit\AncestralSpiritCaster.mdl +Targetart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl + +// Disenchant +[Adch] +Requires=Rowt +Requiresamount=1 +Art=ReplaceableTextures\CommandButtons\BTNDisenchant.blp +Buttonpos=1,2 +Targetart=Abilities\Spells\Orc\Disenchant\DisenchantSpecialArt.mdl +Targetattach=head +Effectsound=Disenchant + +// Disenchant (new) +[Adcn] +Requires=Rowt +Requiresamount=1 +Art=ReplaceableTextures\CommandButtons\BTNDisenchant.blp +Buttonpos=1,2 +Targetart=Abilities\Spells\Orc\Disenchant\DisenchantSpecialArt.mdl +Targetattach=head +Effectsound=Disenchant + +// Corporeal Form +[Acpf] +Art=ReplaceableTextures\CommandButtons\BTNSpiritwalker.blp +Unart=ReplaceableTextures\CommandButtons\BTNEtherealFormOn.blp +Casterart=Abilities\Spells\Orc\EtherealForm\SpiritWalkerChange.mdl +Casterattach=chest +Buttonpos=3,2 +Unbuttonpos=3,2 +//#LINENOBETA +Effectsound=SpiritwalkerMorph +Order=corporealform +Unorder=uncorporealform + +// Ethereal Form +[Aetf] +Art=ReplaceableTextures\CommandButtons\BTNEtherealFormOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNSpiritwalker.blp +Casterart=Abilities\Spells\Orc\EtherealForm\SpiritWalkerChange.mdl +Casterattach=chest +Buttonpos=3,2 +Unbuttonpos=3,2 +//#LINENOBETA +Effectsound=SpiritwalkerMorph +Order=etherealform +Unorder=unetherealform + +// Spirit Link +[Aspl] +Art=ReplaceableTextures\CommandButtons\BTNSpiritLink.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Targetart=Abilities\Spells\Orc\SpiritLink\SpiritLinkZapTarget.mdl +Casterart=Abilities\Spells\Orc\SpiritLink\SpiritLinkZapTarget.mdl +Order=spiritlink +LightningEffect=SPLK + +[Bspl] +Buffart=ReplaceableTextures\CommandButtons\BTNSpiritLink.blp +Targetart=Abilities\Spells\Orc\SpiritLink\SpiritLinkTarget.mdl +Targetattach=chest + +// Pack Mule +[Apak] +Requires=Ropm +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp + +// Liquid Fire +[Aliq] +Art=ReplaceableTextures\PassiveButtons\PASBTNLiquidFire.blp +Buttonpos=1,2 +Requires=Rolf + +[Bliq] +Buffart=ReplaceableTextures\PassiveButtons\PASBTNLiquidFire.blp +Targetart=Abilities\Spells\Orc\LiquidFire\Liquidfire.mdl +Effectsoundlooped=LiquidFireLoop + +[Mliq] +Missileart=Abilities\Spells\Orc\LiquidFire\BatRiderMissile.mdl +Missilespeed=900 +Missilearc=0.35 + +// Unstable Concoction +[Auco] +Art=ReplaceableTextures\CommandButtons\BTNUnstableConcoction.blp +Unart=ReplaceableTextures\CommandButtons\BTNUnstableConcoction.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=unstableconcoction +Orderon=unstableconcoctionon +Orderoff=unstableconcoctionoff + +// Orc Build +[AObu] +Art=ReplaceableTextures\CommandButtons\BTNBasicStruct.blp +Buttonpos=0,2 +Order=orcbuild + +// Healing Wave +[AOhw] +Art=ReplaceableTextures\CommandButtons\BTNHealingWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHealingWave.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Targetart=Abilities\Spells\Orc\HealingWave\HealingWaveTarget.mdl +Order=healingwave +Animnames=spell,throw +LightningEffect=HWPB,HWSB + +// Hex +[AOhx] +Art=ReplaceableTextures\CommandButtons\BTNHex.blp +Researchart=ReplaceableTextures\CommandButtons\BTNHex.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Specialart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl +Order=hex + +[BOhx] +Buffart=ReplaceableTextures\CommandButtons\BTNHex.blp +Effectart=Abilities\Spells\Human\Polymorph\PolyMorphDoneGround.mdl + +// Serpent Ward +[AOsw] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Order=ward + +// Voodoo +[AOvd] +Art=ReplaceableTextures\CommandButtons\BTNBigBadVoodooSpell.blp +Researchart=ReplaceableTextures\CommandButtons\BTNBigBadVoodooSpell.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=voodoo +Animnames=stand,channel + +[BOvd] +Buffart=ReplaceableTextures\CommandButtons\BTNBigBadVoodooSpell.blp +Targetart=Abilities\Spells\Orc\Voodoo\VoodooAuraTarget.mdl +Targetattach=overhead + +[BOvc] +Targetart=Abilities\Spells\Orc\Voodoo\VoodooAura.mdl + +// Warlock Firebolt +[Awfb] +Art=ReplaceableTextures\CommandButtons\BTNFireBolt.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\FireBallMissile\FireBallMissile.mdl +Missilespeed=1000 +MissileHoming=1 +Animnames=spell,throw + +// Chaos conversion +[Acha] +Requires=Roch + +[Achl] +Requires=Roch + +[Sca1] +Requires=Roch + +[Sca2] +Requires=Roch + +[Sca3] +Requires=Roch + +[Sca4] +Requires=Roch + +[Sca5] +Requires=Roch + +[Sca6] +Requires=Roch + +// battle stations, load all peons into a bunker +[Abtl] +Art=ReplaceableTextures\CommandButtons\BTNBattleStations.blp +Buttonpos=0,2 +Effectsound=BurrowBattleStations +Order=battlestations + +// stand down, send peons back to work +[Astd] +Art=ReplaceableTextures\CommandButtons\BTNBacktoWork.blp +Buttonpos=1,2 +Effectsound= +Order=standdown + +// Ensnare +[Aens] +Art=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Buttonpos=0,2 +Requires=Roen +Missileart=Abilities\Spells\Orc\Ensnare\EnsnareMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=ensnare + +// Ensnare buff +[Bens] +Buffart=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Targetart=Abilities\Spells\Orc\Ensnare\ensnareTarget.mdl +Targetattach=origin + +// Ensnare buff on ground units +[Beng] +Buffart=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Targetart=Abilities\Spells\Orc\Ensnare\ensnareTarget.mdl + +// Ensnare buff on air units +[Bena] +Buffart=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Targetart=Abilities\Spells\Orc\Ensnare\ensnare_AirTarget.mdl +Targetattach=chest,mount + +// Totem Smash, Pulverize, whatnot +[Awar] +Art=ReplaceableTextures\PassiveButtons\PASBTNSmash.blp +Buttonpos=0,2 +Requires=Rows +Animnames=slam + +// Devour +[Adev] +Art=ReplaceableTextures\CommandButtons\BTNDevour.blp +Buttonpos=0,2 +Specialart=Abilities\Spells\Orc\Devour\DevourEffectArt.mdl +Targetattach=head,mount +Order=devour + +// Devour buff +[Bdvv] +Buffart=ReplaceableTextures\CommandButtons\BTNDevour.blp + +// Purge (classic) +[Aprg] +Art=ReplaceableTextures\CommandButtons\BTNPurge.blp +Specialart=Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl +Specialattach=origin +Buttonpos=0,2 +Order=purge + +// Purge (expansion melee) +[Apg2] +Art=ReplaceableTextures\CommandButtons\BTNPurge.blp +Specialart=Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl +Specialattach=origin +Buttonpos=0,2 +Order=purge + + +[Bprg] +Buffart=ReplaceableTextures\CommandButtons\BTNPurge.blp +Targetart=Abilities\Spells\Orc\Purge\PurgeBuffTarget.mdl +Targetattach=origin + +// Lightning Shield +[Alsh] +Art=ReplaceableTextures\CommandButtons\BTNLightningShield.blp +Buttonpos=1,2 +Requires=Rost +Order=lightningshield + +[Blsh] +Buffart=ReplaceableTextures\CommandButtons\BTNLightningShield.blp +Targetart=Abilities\Spells\Orc\LightningShield\LightningShieldTarget.mdl +Targetattach=origin +Specialart=Abilities\Spells\Orc\LightningShield\LightningShieldBuff.mdl + +// Bloodlust +[Ablo] +Art=ReplaceableTextures\CommandButtons\BTNBloodLustOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNBloodLustOff.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Requires=Rost +Requiresamount=2 +Order=bloodlust +OrderOn=bloodluston +OrderOff=bloodlustoff + +[Bblo] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNBloodLust.blp +Targetart=Abilities\Spells\Orc\Bloodlust\BloodlustTarget.mdl,Abilities\Spells\Orc\Bloodlust\BloodlustSpecial.mdl +Targetattachcount=2 +Targetattach=hand,left +Targetattach1=hand,right + +// Sentry Ward +[Aeye] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp +Buttonpos=0,2 +Order=evileye + +[Beye] +Buffart=ReplaceableTextures\CommandButtons\BTNSentryWard.blp + +// Stasis Trap spell +[Asta] +Art=ReplaceableTextures\CommandButtons\BTNStasisTrap.blp +Buttonpos=1,2 +Requires=Rowd +Order=stasistrap + +// Stasis Trap trigger buff +[Bstt] +Buffart=ReplaceableTextures\CommandButtons\BTNStasisTrap.blp + +// Stasis Trap effect buff +[Bsta] +Buffart=ReplaceableTextures\CommandButtons\BTNStasisTrap.blp +Targetart=Abilities\Spells\Human\Thunderclap\ThunderclapTarget.mdl +Targetattach=overhead + +// Healing Ward +[Ahwd] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp +Buttonpos=2,2 +Requires=Rowd +Requiresamount=2 +Order=healingward + +[Bhwd] +Buffart=ReplaceableTextures\CommandButtons\BTNHealingWard.blp + +// Healing Ward Regeneration Aura +[Aoar] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp + +[Boar] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNHealingWard.blp +Targetart=Abilities\Spells\Other\ANrm\ANrmTarget.mdl +Effectsoundlooped=FountainOfLifeLoop + +// Envenomed Spears +[Aven] +Art=ReplaceableTextures\PassiveButtons\PASBTNEnvenomedSpear.blp +Buttonpos=0,2 +Requires=Rovs + +// Poison Sting +[Apoi] +Art=ReplaceableTextures\PassiveButtons\PASBTNPoisonSting.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\PoisonSting\PoisonStingMissile.mdl +Missilespeed=1500 +MissileHoming=1 + +// Poison Sting (Orb of Venom) +[Apo2] +Art=ReplaceableTextures\PassiveButtons\PASBTNPoisonSting.blp +Buttonpos=0,0 +Missileart=Abilities\Spells\Items\OrbVenom\OrbVenomMissile.mdl +MissileHoming=1 + +// Poison Sting Non Stack Buff +[Bpoi] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNEnvenomedSpear.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Poison Sting Stack Buff +[Bpsd] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNEnvenomedSpear.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Venom Non Stack Buff +[BIpb] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNOrbOfVenom.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Venom Stack Buff +[BIpd] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNOrbOfVenom.blp +Targetart=Abilities\Weapons\PoisonSting\PoisonStingTarget.mdl + +// Tracking (Passive) +[Anit] +Requires=Ronv + +// Pillage (Passive) +[Asal] +Requires=Ropg +Art=ReplaceableTextures\PassiveButtons\PASBTNPillage.blp +Buttonpos=1,2 + +// Spiked Barricades (Passive) +[Aspi] +Targetart=Abilities\Spells\Orc\SpikeBarrier\SpikeBarrier.mdl + +// War Drums Aura +[Aakb] +Art=ReplaceableTextures\PassiveButtons\PASBTNDrum.blp +Buttonpos=1,2 +Targetart=Abilities\Spells\Orc\WarDrums\DrumsCasterHeal.mdl +Targetattach=origin + +[Bakb] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNDrum.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Wind Walk +[AOwk] +Art=ReplaceableTextures\CommandButtons\BTNWindWalkOn.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWindWalkOn.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Effectsound=WindWalk +Order=windwalk + +[BOwk] +Buffart=ReplaceableTextures\CommandButtons\BTNWindWalkOn.blp + +// Mirror Image +[AOmi] +Art=ReplaceableTextures\CommandButtons\BTNMirrorImage.blp +Researchart=ReplaceableTextures\CommandButtons\BTNMirrorImage.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Targetart=Abilities\Spells\Other\Levelup\LevelupCaster.mdl +Specialart=Abilities\Spells\Orc\MirrorImage\MirrorImageCaster.mdl +Missileart=Abilities\Spells\Orc\MirrorImage\MirrorImageMissile.mdl +Missilespeed=1000 +Order=mirrorimage + +[BOmi] +Buffart=ReplaceableTextures\CommandButtons\BTNMirrorImage.blp +Specialart=Abilities\Spells\Orc\MirrorImage\MirrorImageDeathCaster.mdl + +// Critical Strike +[AOcr] +Art=ReplaceableTextures\PassiveButtons\PASBTNCriticalStrike.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCriticalStrike.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 + +// Bladestorm +[AOww] +Art=ReplaceableTextures\CommandButtons\BTNWhirlwind.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWhirlwind.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=whirlwind + +// Chain Lightning +[AOcl] +Art=ReplaceableTextures\CommandButtons\BTNChainLightning.blp +Researchart=ReplaceableTextures\CommandButtons\BTNChainLightning.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Orc\LightningBolt\LightningBoltMissile.mdl +Missilespeed=1500 +Targetart=Abilities\Weapons\Bolt\BoltImpact.mdl +Order=chainlightning +Animnames=spell,chain +LightningEffect=CLPB,CLSB + +// Far Sight +[AOfs] +Art=ReplaceableTextures\CommandButtons\BTNFarSight.blp +Researchart=ReplaceableTextures\CommandButtons\BTNFarSight.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=farsight + +// Earthquake +[AOeq] +Art=ReplaceableTextures\CommandButtons\BTNEarthquake.blp +Researchart=ReplaceableTextures\CommandButtons\BTNEarthquake.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=earthquake +Animnames=spell,looping + +[BOeq] +Buffart=ReplaceableTextures\CommandButtons\BTNEarthquake.blp +Targetart=Abilities\Spells\Orc\StasisTrap\StasisTotemTarget.mdl +Targetattach=overhead + +[XOeq] +Effectart=Abilities\Spells\Orc\EarthQuake\EarthQuakeTarget.mdl +Effectsoundlooped=EarthquakeLoop + +// Shockwave +[AOsh] +Art=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Researchart=ReplaceableTextures\CommandButtons\BTNShockWave.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Orc\Shockwave\ShockwaveMissile.mdl +Missilespeed=1050 +Order=shockwave +Animnames=attack,slam + +// Endurance Aura +[AOae] +Art=ReplaceableTextures\PassiveButtons\PASBTNCommand.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNCommand.blp +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Orc\CommandAura\CommandAura.mdl +Targetattach=origin + +[BOae] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNCommand.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Reincarnation +[AOre] +Art=ReplaceableTextures\PassiveButtons\PASBTNReincarnation.blp +Researchart=ReplaceableTextures\CommandButtons\BTNReincarnation.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Effectart=Abilities\Spells\Orc\Reincarnation\ReincarnationTarget.mdl +Casterart= +Targetart= + +// Feral Spirit +[AOsf] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Specialart=Abilities\Spells\Orc\FeralSpirit\feralspirittarget.mdl +Order=spiritwolf + +[BOsf] +Buffart=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Effectart=Abilities\Spells\Orc\FeralSpirit\feralspiritdone.mdl + +// War Stomp (Chieftan) +[AOws] +Art=ReplaceableTextures\CommandButtons\BTNWarStomp.blp +Researchart=ReplaceableTextures\CommandButtons\BTNWarStomp.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Casterart=Abilities\Spells\Orc\WarStomp\WarStompCaster.mdl +Order=stomp +Animnames=spell,slam + +[BOws] +Buffart=ReplaceableTextures\CommandButtons\BTNWarStomp.blp + +// 'damaged' attachment effect, small +[Xfos] +TargetArt=Environment\SmallBuildingFire\SmallBuildingFire2.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl +Targetattachcount=2 +Targetattach=sprite,first +Targetattach1=sprite,fourth +Effectsoundlooped=HumanFireSmall + +// medium +[Xfom] +TargetArt=Environment\LargeBuildingFire\LargeBuildingFire2.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\SmallBuildingFire\SmallBuildingFire2.mdl +Targetattachcount=4 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fourth +Targetattach3=sprite,fifth +Effectsoundlooped=HumanFireMedium + +// large +[Xfol] +TargetArt=Environment\LargeBuildingFire\LargeBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\LargeBuildingFire\LargeBuildingFire0.mdl,Environment\SmallBuildingFire\SmallBuildingFire1.mdl,Environment\LargeBuildingFire\LargeBuildingFire1.mdl,Environment\SmallBuildingFire\SmallBuildingFire0.mdl +Targetattachcount=6 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fifth +Targetattach3=sprite,third +Targetattach4=sprite,fourth +Targetattach5=sprite,sixth +Effectsoundlooped=HumanFireLarge diff --git a/share/mpq/units/units/orcabilitystrings.txt b/share/mpq/units/units/orcabilitystrings.txt new file mode 100644 index 0000000..8d2595c --- /dev/null +++ b/share/mpq/units/units/orcabilitystrings.txt @@ -0,0 +1,588 @@ +// burning oil +[Abof] +Name=燃烧之油 +Tip=燃烧之油 +Ubertip="用凝固汽油浇在粉碎者的弹药上,使它们能够点燃地面,烧伤敌人。" + +[Bbof] +Bufftip="燃烧之油" +Buffubertip="此单位已被燃烧之油烧着,它将不断的受到伤害。" + +// Berserk +[Absk] +Name=狂战士 +Tip="狂战士(|cffffcc00B|r)" +Ubertip="让该单位增加%的攻击速度,但是同时会受到额外%的伤害。" +Hotkey=B + +[Bbsk] +Bufftip=狂战士 +Buffubertip="该单位处于狂热愤怒的作用之下,因此攻击力得到了加强,但是同时也会受到更多的伤害。" + +// Berserker Upgrade +[Sbsk] +Name=狂暴愤怒升级 + +// Reinforced Burrows Upgrade +[Arbr] +Name=加强型地洞升级 +Tip=加强型地洞 +Ubertip="给予地洞加强型的护甲。" + +// Ancestral Spirit +[Aast] +Name=先祖幽灵 +Tip="远古神灵(|cffffcc00C|r)" +Ubertip="将一个死亡的非英雄牛头人重新复活。复活的牛头人具有先前%的生命值。" +Hotkey=C + +// Disenchant +[Adch] +Name=消魔 +EditorSuffix=(年长的) +Tip="消魔(|cffffcc00D|r)" +Ubertip="驱散目标区域单位身上所有的魔法效果。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=D + +// Disenchant (new) +[Adcn] +Name=消魔 +Tip="消魔(|cffffcc00D|r)" +Ubertip="驱散目标区域上的所有的魔法效果。|n|cffffcc00对敌对召唤单位造成点的伤害。|r" +Hotkey=D + +// Corporeal Form +[Acpf] +Name=灵肉形态 +Tip="灵肉形态(|cffffcc00F|r)" +Untip="虚无形态(|cffffcc00F|r)" +Ubertip="让灵魂行者处于灵肉形态,从而能进行攻击也会遭到敌方物理攻击的伤害。" +Unubertip="让灵魂行者处于虚无形态,从而对物理攻击免疫,但是自己也会丧失物理进攻能力。此外灵魂行者能施放魔法,但是敌人的魔法也会对其造成额外的伤害。" +Hotkey=F +Unhotkey=F + +// Ethereal Form +[Aetf] +Name=虚无形态 +Tip="虚无形态(|cffffcc00F|r)" +Untip="灵肉形态(|cffffcc00F|r)" +Ubertip="让灵魂行者处于虚无形态,从而对物理攻击免疫,但是自己也会丧失物理进攻能力。此外灵魂行者能施放魔法,但是敌人的魔法也会对其造成额外的伤害。" +Unubertip="让灵魂行者处于灵肉形态,从而能进行攻击也会遭到敌方物理攻击的伤害。" +Hotkey=F +Unhotkey=F + +// Spirit Link +[Aspl] +Name=灵魂锁链 +Tip="灵魂锁链(|cffffcc00R|r)" +Ubertip="链接个单位在一起。所有被灵魂锁链作用的单位都可以将其%受到的伤害转移到其他单位身上。|n持续秒。" +Hotkey=R + +[Bspl] +Bufftip=灵魂锁链 +Buffubertip="该单位处于灵魂锁链的作用之下,因此其遭到攻击的话会将其受到的伤害转移一部分到其他处于灵魂锁链作用之下的单位。" + +// Pack Mule +[Apak] +Name=行囊技能 +Tip="行囊技能" +Ubertip="让该单位能为英雄携带物品。物品在处于该单位物品栏里的时候不能被使用。" + +// Liquid Fire +[Aliq] +Name=液体炸弹 +Tip="液体炸弹" +Ubertip="对建筑物投掷出液体炸弹从而对其造成持续性的伤害。正在受到液体炸弹作用的建筑物不能被修复,并将其攻击速率下降%。" + +// Unstable Concoction +[Auco] +Name=不稳定化合物 +Tip="不稳定化合物(|cffffcc00C|r)" +Ubertip="制造出一次强力爆炸,对目标敌方空中单位造成点伤害,对周围敌空中单位造成点伤害。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=C +Unhotkey=C + +// Healing Wave +[AOhw] +Name=医疗波 +Tip=医疗波(|cffffcc00E|r) - [|cffffcc00等级 1|r],医疗波(|cffffcc00E|r) - [|cffffcc00等级 2|r],医疗波(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。","召唤出一道能跳跃次的医疗能量波,对首个目标能恢复点的生命值。每次跳跃都会削弱医疗波的医疗能力。" +Hotkey=E +Researchtip="学习医疗波(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出一道能进行跳跃的医疗能量波,每次跳跃都会削弱医疗波的医疗能力。|n|n|cffffcc00等级 1|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 2|r - 恢复点生命值,跳跃次。|n|cffffcc00等级 3|r - 恢复点生命值,跳跃次。" +Researchhotkey=E + +// Hex +[AOhx] +Name=妖术 +Tip=妖术(|cffffcc00X|r) - [|cffffcc00等级 1|r],妖术(|cffffcc00X|r) - [|cffffcc00等级 2|r],妖术(|cffffcc00X|r) - [|cffffcc00等级 3|r] +Ubertip="让目标单位在秒内变成一只随机的小动物秒。","让目标单位在秒内变成一只随机的小动物秒。","让目标单位在秒内变成一只随机的小动物秒。" +Hotkey=X +Researchtip="学习妖术(|cffffcc00X|r) - [|cffffcc00等级 %d|r]" +Researchubertip="让目标单位在秒内变成一只随机的小动物, 废除其特殊技能的使用。|n|n|cffffcc00等级 1|r - 持续秒。|n|cffffcc00等级 2|r - 持续秒。|n|cffffcc00等级 3|r - 持续秒。" +Researchhotkey=X + +[BOhx] +Bufftip=妖术 +Buffubertip="该单位受到了妖术的作用,因此其变成了一只小动物。" + +// Serpent Ward +[AOsw] +Name=毒蛇守卫 +Tip=毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 1|r],毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 2|r],毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r","唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。守卫具有点生命值并对魔法免疫。攻击力为 - 点。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=W +Researchtip="学习毒蛇守卫(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出一个固定不动的毒蛇守卫来为暗影猎手攻击。并对魔法免疫。|n持续秒。|n|n|cffffcc00能攻击地面和空中单位。|r|n|n|cffffcc00等级 1|r - 点生命值, - 点攻击力。|n|cffffcc00等级 2|r - 点生命值, - 点攻击力。|n|cffffcc00等级 3|r - 点生命值, - 点攻击力。" +Researchhotkey=W + +// Generic ward buff +[BOwd] +Bufftip=守卫 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Voodoo +[AOvd] +Name=巫毒 +Tip=巫毒(|cffffcc00V|r) +Ubertip="将在暗影猎手附近一定区域内的所有友军单位都变为无敌。|n但是暗影猎手自己不会变为无敌。|n持续秒。" +Hotkey=V +Researchtip="学习巫毒(|cffffcc00V|r)" +Researchubertip="将在暗影猎手附近一定区域内的所有友军单位都变为无敌。|n但是暗影猎手自己不会变为无敌。|n持续秒。" +Researchhotkey=V + +[BOvd] +Bufftip=巫毒 +Buffubertip="该单位处在巫毒的作用之下, 因此暂时是无敌的。" + +// firebolt +[Awfb] +Name=霹雳闪电 +Tip=霹雳闪电(|cffffcc00F|r) +Ubertip="能将敌人击晕。" +Hotkey=F +EditorSuffix=(巫师) + +[Acha] +Name=混乱的 + +[Sca1] +EditorSuffix= (兽族步兵) + +[Sca2] +EditorSuffix= (掠夺者) + +[Sca3] +EditorSuffix= (萨满祭司) + +[Sca4] +EditorSuffix= (科多兽) + +[Sca5] +EditorSuffix= (苦工) + +[Sca6] +EditorSuffix= (格罗姆) + +[Achl] +Name=装载 + +// Pulverize +[Awar] +Name=粉碎 +Tip=粉碎 +Ubertip="给予%的概率使得攻击能对周围的单位造成点的伤害。" + +[Abtl] +Name=战斗位置 +Tip=战斗位置(|cffffcc00B|r) +Ubertip="使得附近的苦工跑入地洞从而对来犯的敌人进行反击。" +Hotkey=B + +[Astd] +Name=卸载苦工 +Tip=卸载苦工(|cffffcc00D|r) +Ubertip="使得地洞内的苦工重新回到自己的工作岗位上。" +Hotkey=D + +// Ensnare +[Aens] +Name=诱捕 +Tip=诱捕(|cffffcc00E|r) +Ubertip="能将一个目标空中单位固定在地面上,使其在秒内不能移动。" +Hotkey=E + +// Ensnare buff on ground units +[Beng] +Bufftip=诱捕 +Buffubertip="该单位被诱捕了,因此其不能移动和飞行。" +EditorSuffix= (地面的) + +// Ensnare buff on air units +[Bena] +Bufftip=诱捕 +Buffubertip="该单位被诱捕了,因此其不能移动和飞行。" +EditorSuffix= (空中的) + +// Pulverize - passive +[Awar] +Name=粉碎 + +// Devour +[Adev] +Name=吞噬 +Tip=吞噬(|cffffcc00D|r) +Ubertip="吞噬敌方目标单位,将其慢慢咀嚼,每秒对其造成点的伤害。在咀嚼目标的过程中,如果科多兽遭到杀害,那么它肚中的被吞噬单位就会从中跳出来。" +Hotkey=D + +// Devour buff +[Bdvv] +Bufftip=吞噬 +Buffubertip="该单位被吞噬了,因此会持续地受到伤害。" + +// Purge (classic) +[Aprg] +Name=净化 +Tip=净化(|cffffcc00G|r) +Ubertip="去除目标单位上的所有魔法效果,并以分之1的速度来减慢其移动速度。目标单位会在秒内慢慢恢复自己的速度。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=G + +// Purge (expansion melee) +[Apg2] +Name=净化 +Tip=净化(|cffffcc00G|r) +Ubertip="去除目标单位身上所有的魔法效果。敌方单位会被固定住,持续时间为秒。并且他们的移动速度也会以的一个因子值来被减慢。不过在秒的时间内,他们的移动速度会慢慢地恢复过来。|n|cffffcc00对召唤出来地单位造成点的伤害。|r" +Hotkey=G + +[Bprg] +Bufftip=净化 +Buffubertip="该单位受到了净化的作用; 因此其移动速度被减慢了,而且身上所有的魔法效果都消失了。" + +// Lightning Shield +[Alsh] +Name=闪电护盾 +Tip=闪电护盾(|cffffcc00L|r) +Ubertip="在目标单位周围形成一个带电护罩,能对其周围的单位造成每秒点的伤害。|n持续秒。" +Hotkey=L + +[Blsh] +Bufftip=闪电护盾 +Buffubertip="该单位处在闪电护盾的作用之下,因此周围所有的单位都会受到一定的伤害。" + +// Bloodlust +[Ablo] +Name=嗜血术 +Tip=嗜血术(|cffffcc00B|r) +Ubertip="增加一个友军单位%的攻击速度和%的移动速度。|n持续秒。" +Untip="|cffc3dbff点击右键以启动自动施放功能。|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B + +[Bblo] +Bufftip=嗜血术 +Buffubertip="该单位具有嗜血术,因此其攻击速度和移动速度都加快了。" + +// Sentry Ward +[Aeye] +Name=岗哨守卫 +Tip=岗哨守卫(|cffffcc00W|r) +Ubertip="能召唤出一个固定隐形的守卫来监视一定的区域。|n能看见隐形单位。|n持续秒。" +Hotkey=W + +[Beye] +Bufftip=岗哨守卫 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Stasis Trap spell +[Asta] +Name=静止陷阱 +Tip=静止陷阱(|cffffcc00T|r) +Ubertip="召唤出一个固定隐形的陷阱来击晕靠近的敌方地面单位。当有敌方的地点单位靠近陷阱的时候会自动激活守卫。|n持续秒。|n眩晕效果持续秒。" +Hotkey=T + +// Stasis Trap trigger buff +[Bstt] +Bufftip=静止陷阱 +Buffubertip="这个守卫被激活的话会击晕周围敌方的地面单位。" + +// Stasis Trap effect buff +[Bsta] +Bufftip=静止陷阱 +Buffubertip="该单位被静止陷阱击中了,因此不能移动,进攻和施放魔法。" + +// Healing Ward +[Ahwd] +Name=治疗守卫 +Tip=治疗守卫(|cffffcc00E|r) +Ubertip="召唤出一个固定的守卫,该守卫能以每秒%的速度来恢复周围友军非机械单位的生命值。|n持续秒。" +Hotkey=E +EditorSuffix= (巨魔巫医) + +[Bhwd] +Bufftip=治疗守卫 +Buffubertip="这个守卫能恢复周围单位的生命值。" + +// Healing Ward Aura +[Aoar] +Name=治疗守卫光环 +EditorSuffix= (治疗守卫) + +[Boar] +Bufftip=治疗守卫光环 +Buffubertip="加快生命值恢复速度。" + +// Envenomed Spears +[Aven] +Name=浸毒武器 +Tip=浸毒武器 +Ubertip="能造成每秒点的毒性伤害。|n持续秒。" + +// currently unused +// Poison Sting +[Apoi] +Name=毒刺 +Hotkey=T +Tip=毒刺(|cffffcc00T|r) + +// Poison Sting (Orb of Venom) +[Apo2] +Name=毒刺 +Hotkey=T +Tip=毒刺(|cffffcc00T|r) +EditorSuffix= (毒液之球) + +// Poison Sting Non Stack Buff +[Bpoi] +Bufftip=毒 +Buffubertip="该单位被毒刺攻击了, 因此会持续受到伤害。" +EditorSuffix= (没有堆积) + +// Poison Sting Stack Buff +[Bpsd] +Bufftip=毒 +Buffubertip="该单位被毒刺攻击了, 因此会持续受到伤害。" +EditorSuffix= (堆积) + +[Bpsi] +EditorName=毒药(信息) + +// currently unused +// Tracking (Passive) +[Anit] +Name=跟踪 + +// Spiked Barricades (Passive) +[Aspi] +Name=尖形路障 + +// Pillage (Passive) +[Asal] +Name=掠夺 +Tip=掠夺 +Ubertip="能使对敌方建筑物的攻击带来一定的资源。" + +// War Drums Aura +[Aakb] +Name=战鼓 +Tip=战鼓 +Ubertip="能增加周围友军单位的攻击力。" + +[Bakb] +Bufftip=战鼓 +Buffubertip="该单位受到了战鼓的作用,因此攻击力得到了加强。" + +// Wind Walk +[AOwk] +Name=疾步风 +Tip=疾步风(|cffffcc00W|r) - [|cffffcc00等级 1|r],疾步风(|cffffcc00W|r) - [|cffffcc00等级 2|r],疾步风(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。","使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。","使得剑圣在秒内隐形并增加%的移动速度。如果此时剑圣进行攻击的话,那么就不再隐形,但是攻击力会增加点。" +Hotkey=W +Researchtip="学习疾步风(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使得剑圣在一定时间内隐形并加快移动速度,如果此时进行攻击的话,那么就不再隐形但会造成更多的伤害。|n|n|cffffcc00等级 1|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。|n|cffffcc00等级 2|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。|n|cffffcc00等级 3|r -消耗点魔法,加快%的移动速度,增加点的伤害,持续秒。" +Researchhotkey=W + +[BOwk] +Bufftip=疾步风 +Buffubertip="此单位处于疾步风的作用之下, 因此其变为隐形了,移动地也更加快了。隐形状态中的第一次攻击会造成额外的伤害。" + +// Mirror Image +[AOmi] +Name=镜像 +Tip=镜像(|cffffcc00R|r) - [|cffffcc00等级 1|r],镜像(|cffffcc00R|r) - [|cffffcc00等级 2|r],镜像(|cffffcc00R|r) - [|cffffcc00等级 3|r] +Ubertip="制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。","制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。","制造出个幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n持续秒。" +Hotkey=R +Researchtip="学习镜像(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="制造出一定数量的幻象来迷惑敌人。同时也会驱逐掉剑圣身上所有的魔法效果。|n|n|cffffcc00等级 1|r - 创造出个幻象。|n|cffffcc00等级 2|r - 创造出个幻象。|n|cffffcc00等级 3|r - 创造出个幻象。" +Researchhotkey=R + +[BOmi] +Bufftip=镜像 +Buffubertip="一个剑圣的幻象。" + +// Critical Strike +[AOcr] +Name=致命一击 +Tip=致命一击 - [|cffffcc00等级 1|r],致命一击 - [|cffffcc00等级 2|r],致命一击 - [|cffffcc00等级 3|r] +Ubertip="给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。","给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。","给予%的概率使得剑圣的攻击能造成倍于一般攻击的伤害值。" +Researchtip="学习致命一击(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="给予一定的概率使得攻击力能大大增强。|n|n|cffffcc00等级 1|r -%的概率,倍于一般攻击的伤害值。|n|cffffcc00等级 2|r -%的概率,倍于一般攻击的伤害值。|n|cffffcc00等级 3|r -%的概率,倍于一般攻击的伤害值。" +Researchhotkey=C + +// Bladestorm +[AOww] +Name=剑刃风暴 +Tip=剑刃风暴(|cffffcc00B|r) +Ubertip="使得剑圣周围能形成一股具有极强攻击力的剑刃风暴。对周围敌方的地面单位造成每秒点的伤害。|n持续秒。" +Hotkey=B +Researchtip=学习剑刃风暴(|cffffcc00B|r) +Researchubertip="使得剑圣周围能形成一股具有极强攻击力的剑刃风暴。对周围敌方的地面单位造成每秒点的伤害。|n持续秒。" +Researchhotkey=B +Globalmessage= +Globalsound= + +// Chain Lightning +[AOcl] +Name=闪电链 +Tip=闪电链(|cffffcc00C|r) - [|cffffcc00等级 1|r],闪电链(|cffffcc00C|r) - [|cffffcc00等级 2|r],闪电链(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。","投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。","投掷出一道具有攻击力的闪电,第一个单位造成点的伤害,然后闪电跳跃向周围个敌方的其他单位。每次跳跃都会减小闪电的攻击力。" +Hotkey=C +Researchtip="学习闪电链(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="投掷出一道能进行跳跃的闪电。每次跳跃都会减小闪电的攻击力。|n|n|cffffcc00等级 1|r - 点伤害,跳跃次。|n|cffffcc00等级 2|r - 点伤害,跳跃次。|n|cffffcc00等级 3|r - 点伤害,跳跃次。" +Researchhotkey=C + +// Far Sight +[AOfs] +Name=透视 +Tip=透视(|cffffcc00F|r) - [|cffffcc00等级 1|r],透视(|cffffcc00F|r) - [|cffffcc00等级 2|r],透视(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="能在秒内驱散目标区域内的战争迷雾。也能看到隐形单位。" +Hotkey=F +Researchtip="学习透视(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能在一定时间内驱散目标区域内的战争迷雾。还能看见敌方的隐形单位。|n|n|cffffcc00等级 1|r - 消耗点魔法。|n|cffffcc00等级 2|r - 消耗点魔法。|n|cffffcc00等级 3|r - 消耗点魔法。" +Researchhotkey=F + +// Feral Spirit +[AOsf] +Name=野兽幽魂 +Tip=野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 1|r],野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 2|r],野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 3|r] +Ubertip="召唤出条幽狼来为你战斗。每头狼具有点生命值和 -点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条拥有致命一击技能的幽狼来为你战斗。每头狼具有点生命值和-点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r","召唤出条拥有致命一击和隐形技能的幽狼来为你战斗。每头狼具有点生命值和-点的攻击力。|n持续秒。|n|n|cffffcc00能攻击地面单位。|r" +Researchtip="学习野兽幽魂(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="召唤出头幽狼来为你战斗。|n持续秒。|n|n|cffffcc00等级 1|r -点生命值,-点的攻击力。|n|cffffcc00等级 2|r -点生命值,-点攻击力,且具有致命一击技能。|n|cffffcc00等级 3|r -点生命值,-点攻击力,且具有致命一击和隐形技能。" +Hotkey=T +Researchhotkey=T + + +[BOsf] +Bufftip=野兽幽魂 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Earthquake +[AOeq] +Name=地震 +Tip=地震(|cffffcc00E|r) +Ubertip="使得大地发生颤抖,对有效范围内的建筑物造成每秒点的伤害,并使该范围内的单位减速%。|n持续秒。" +Hotkey=E +Researchtip="学习地震(|cffffcc00E|r)" +Researchubertip="使得大地发生颤抖,对有效范围内的建筑物造成每秒点的伤害,并使该范围内的单位减速%。持续秒。" +Researchhotkey=E + +[BOeq] +Bufftip=地震 +Buffubertip="该单位处于地震的作用之下,因此其移动速度被减慢了。" + +// Shockwave +[AOsh] +Name=震荡波 +Tip=震荡波(|cffffcc00W|r) - [|cffffcc00等级 1|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 2|r],震荡波(|cffffcc00W|r) - [|cffffcc00等级 3|r] +Ubertip="能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。","能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。","能发出一道向前的能量波,对一条线上的敌方地面单位造成点的伤害。" +Hotkey=W +Researchtip="学习震荡波(|cffffcc00W|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能发出一道向前的能量波,对一条线上的敌方地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点的伤害。|n|cffffcc00等级 2|r - 点的伤害。|n|cffffcc00等级 3|r - 点的伤害。" +Researchhotkey=W + +// Endurance Aura +[AOae] +Name=耐久光环 +Tip=耐久光环 - [|cffffcc00等级 1|r],耐久光环 - [|cffffcc00等级 2|r],耐久光环 - [|cffffcc00等级 3|r] +Ubertip="增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。","增加周围单位%的移动速度和%的攻击速度。" +Researchtip="学习耐久光环(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能增加周围单位的移动速度和攻击速度。|n|n|cffffcc00等级 1|r - 提高%的移动速度和%的攻击速度。|n|cffffcc00等级 2|r - 提高%的移动速度和%的攻击速度。|n|cffffcc00等级 3|r - 提高%的移动速度和%的攻击速度。" +Researchhotkey=E + +[BOae] +Bufftip=耐久光环 +Buffubertip="该单位处在耐久光环的作用之下,因此其移动速度和攻击速度都加快了。" + +// Reincarnation +[AOre] +Name=重生 +Tip=重生 +Ubertip="使当牛头人酋长被杀时,它就会自动复活。重生技能有秒的魔法施放间隔时间。" +Researchtip=学习重生(|cffffcc00R|r) +Researchubertip="使当牛头人酋长被杀时,它就会自动复活。重生技能有秒的魔法施放间隔时间。" +Researchhotkey=R +Globalmessage= +Globalsound= + +// War Stomp (Chieftan) +[AOws] +Name=战争践踏 +Tip=战争践踏(|cffffcc00T|r) - [|cffffcc00等级 1|r],战争践踏(|cffffcc00T|r) - [|cffffcc00等级 2|r],战争践踏(|cffffcc00T|r) - [|cffffcc00等级 3|r] +Ubertip="重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。","重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。","重击地面,对周围的地面单位造成点的伤害并在秒内使其处于昏晕状态。" +Researchtip="学习战争践踏(|cffffcc00T|r) - [|cffffcc00等级 %d|r]" +Researchubertip="重击地面,对周围的地面单位造成一定的伤害。|n|n|cffffcc00等级 1|r - 点伤害,秒眩晕效果。|n|cffffcc00等级 2|r - 点伤害,秒眩晕效果。|n|cffffcc00等级 3|r - 点伤害,秒眩晕效果。" +Hotkey=T +Researchhotkey=T + + +[BOws] +Bufftip=战争践踏 +Buffubertip="该单位受到了战争践踏的作用,因此其在短时间内不能移动,攻击和施放魔法。" + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BOea] +EditorName=地震 (施法者) + +[BOsh] +EditorName=震荡波(施法者) + +[BOvc] +EditorName=巫毒(施法者) + +[BOww] +EditorName=剑刃风暴(施法者) + +[Bdig] +EditorName=吞噬 (施法者) + +[Bens] +EditorName=诱捕(一般的) + +[Bliq] +EditorName=液体炸弹 + +[Blsa] +EditorName=闪电护盾(施法者) + +[XOeq] +EditorName=地震 (效果) + +[XOre] +EditorName=重生(效果) + +[Xbof] +EditorName=燃烧之油(效果) + +[Xfos] +EditorName=建筑物伤害 – 兽族 小 + +[Xfom] +EditorName=建筑物伤害 – 兽族 中 + +[Xfol] +EditorName=建筑物伤害 – 兽族 大 diff --git a/share/mpq/units/units/orcunitfunc.txt b/share/mpq/units/units/orcunitfunc.txt new file mode 100644 index 0000000..53f4ed7 --- /dev/null +++ b/share/mpq/units/units/orcunitfunc.txt @@ -0,0 +1,386 @@ +[oalt] +Attachmentanimprops=medium +Trains=Obla,Ofar,Otch,Oshd +Art=ReplaceableTextures\CommandButtons\BTNAltarOfStorms.blp +Buttonpos=1,1 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Revive=1 + +[oang] +Art=ReplaceableTextures\CommandButtons\BTNGuardianWard.blp +Missileart=Abilities\Weapons\AncestralGuardianMissile\AncestralGuardianMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 + +[obar] +Attachmentanimprops=medium +Trains=ogru,ohun,otbk,ocat +Art=ReplaceableTextures\CommandButtons\BTNBarracks.blp +Buttonpos=1,0 +Researches=Robs,Rotr,Robk,Robf +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[obea] +Attachmentanimprops=medium +Requires=ostr +Trains=orai,okod,owyv,otbr +Art=ReplaceableTextures\CommandButtons\BTNBeastiary.blp +Buttonpos=3,1 +Researches=Roen,Rovs,Rwdm,Rolf +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[Obla] +Art=ReplaceableTextures\CommandButtons\BTNHeroBlademaster.blp +Buttonpos=0,2 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-blademaster.blp + +[ocat] +Requires=ofor,ostr +Art=ReplaceableTextures\CommandButtons\BTNDemolisher.blp +Buttonpos=0,0 +Missileart=abilities\weapons\DemolisherMissile\DemolisherMissile.mdl +Missilearc=0.35 +Missilespeed=900 + +[odoc] +//Requires=ofor +Art=ReplaceableTextures\CommandButtons\BTNWitchDoctor.blp +Buttonpos=1,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Missileart=Abilities\Weapons\WitchDoctorMissile\WitchDoctorMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-witchdoctor.blp + +[oeye] +Art=ReplaceableTextures\CommandButtons\BTNSentryWard.blp + +[Ofar] +Art=ReplaceableTextures\CommandButtons\BTNHeroFarseer.blp +Buttonpos=1,2 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-farseer.blp + +[ofor] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNForge.blp +Buttonpos=2,0 +Researches=Rome,Roar,Rora,Rosp,Rorb +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[ofrt] +Attachmentanimprops=large +Requires=oalt +Trains=opeo +Researches=Ropg,Ropm +Art=ReplaceableTextures\CommandButtons\BTNFortress.blp +Buttonpos=0,2 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,second +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[ogre] +Attachmentanimprops=large +Upgrade=ostr +Trains=opeo +Researches=Ropg,Ropm +Art=ReplaceableTextures\CommandButtons\BTNGreathall.blp +Buttonpos=0,0 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[ogru] +Art=ReplaceableTextures\CommandButtons\BTNGrunt.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[ohun] +DependencyOr=otbk +Requires=ofor +Art=ReplaceableTextures\CommandButtons\BTNHeadhunter.blp +Buttonpos=1,0 +Missileart=abilities\weapons\huntermissile\huntermissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[otbk] +Requires=ofor +Art=ReplaceableTextures\CommandButtons\BTNHeadHunterBerserker.blp +Buttonpos=1,0 +Missileart=abilities\weapons\huntermissile\huntermissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Attachmentlinkprops=alternate +Boneprops=alternate +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Animprops=alternate + +[ohwd] +Art=ReplaceableTextures\CommandButtons\BTNHealingWard.blp + +[okod] +Requires=ofor +Art=ReplaceableTextures\CommandButtons\BTNKotoBeast.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\Axe\AxeMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large + +[osld] +Attachmentanimprops=medium +Requires=ostr +Trains=oshm,odoc,ospm +Art=ReplaceableTextures\CommandButtons\BTNSpiritLodge.blp +Buttonpos=2,1 +Researches=Rowd,Rost,Rowt +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[opeo] +Builds=ogre,otrb,orbr,obar,ofor,oalt,obea,osld,otto,owtw,ovln +Art=ReplaceableTextures\CommandButtons\BTNPeon.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl + +[orai] +Art=ReplaceableTextures\CommandButtons\BTNRaider.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +[oshm] +Art=ReplaceableTextures\CommandButtons\BTNShaman.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Orc\OrcSmallDeathExplode\OrcSmallDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-shaman.blp + +[ostr] +Attachmentanimprops=large +Upgrade=ofrt +Trains=opeo +Researches=Ropg,Ropm +Art=ReplaceableTextures\CommandButtons\BTNStronghold.blp +Buttonpos=0,2 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Animprops=upgrade,first +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[osw1] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Attachmentanimprops=medium + +[osw2] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Attachmentanimprops=medium + +[osw3] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWolf.blp +Attachmentanimprops=medium + +[osp1] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Missileart=Abilities\Weapons\SerpentWardMissile\SerpentWardMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +[osp2] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Missileart=Abilities\Weapons\SerpentWardMissile\SerpentWardMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +[osp3] +Art=ReplaceableTextures\CommandButtons\BTNSerpentWard.blp +Missileart=Abilities\Weapons\SerpentWardMissile\SerpentWardMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 + +[Oshd] +Art=ReplaceableTextures\CommandButtons\BTNShadowHunter.blp +Buttonpos=0,1 +Missileart=Abilities\Weapons\ShadowHunterMissile\ShadowHunterMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-shadowhunter.blp + +[otau] +Requires=otto +Art=ReplaceableTextures\CommandButtons\BTNTauren.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=medium + +[otbr] +Requires=ofrt,ovln +Art=ReplaceableTextures\CommandButtons\BTNTrollBatRider.blp +Buttonpos=3,0 +Missileart=Abilities\Weapons\BatTrollMissile\BatTrollMissile.mdl +Missilearc=0.15 +Missilespeed=900 +Attachmentanimprops=medium + +[Otch] +Art=ReplaceableTextures\CommandButtons\BTNHeroTaurenChieftain.blp +Buttonpos=2,2 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl +Attachmentanimprops=large +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-taurenchieftain.blp + +[otrb] +Art=ReplaceableTextures\CommandButtons\BTNTrollBurrow.blp +Buttonpos=0,1 +Missileart=abilities\weapons\huntermissile\huntermissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[orbr] +Art=ReplaceableTextures\CommandButtons\BTNReinforcedBurrows.blp +Buttonpos=0,1 +Missileart=abilities\weapons\huntermissile\huntermissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[otto] +Attachmentanimprops=medium +Requires=ofrt,ofor +Researches=Rows +Trains=otau +Art=ReplaceableTextures\CommandButtons\BTNTaurenTotem.blp +Buttonpos=0,2 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[owyv] +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNWyvernRider.blp +Buttonpos=2,0 +Missileart=abilities\weapons\WyvernSpear\WyvernSpearMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +Attachmentanimprops=medium + +[otot] +Art=ReplaceableTextures\CommandButtons\BTNStasisTrap.blp + +// Voodoo Lounge +[ovln] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNVoodooLounge.blp +Buttonpos=1,2 +Makeitems=shas,hslv,dust,phea,pman,stwp,tgrh,oli2 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl + +[owtw] +Requires=ofor +Art=ReplaceableTextures\CommandButtons\BTNOrcTower.blp +Missileart=Abilities\Weapons\GuardTowerMissile\GuardTowerMissile.mdl +Missilearc=0.15 +Missilespeed=1800 +Buttonpos=3,0 +BuildingSoundLabel=OrcBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Human\HCancelDeath\HCancelDeath.mdl +Attachmentanimprops=Alternate + +[ospw] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNSpiritWalker.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\SorceressMissile\SorceressMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-spiritwalker.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +[ospm] +Attachmentanimprops=medium +Art=ReplaceableTextures\CommandButtons\BTNSpiritWalker.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\SorceressMissile\SorceressMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Casterupgradeart=UI\Widgets\Console\Human\infocard-spiritwalker.blp +Specialart=Objects\Spawnmodels\Orc\OrcLargeDeathExplode\OrcLargeDeathExplode.mdl + +//#RESTNOBETA +[oshy] +Art=ReplaceableTextures\CommandButtons\BTNGoblinShipyard.blp +Sellunits=obot + +[obot] +Art=ReplaceableTextures\CommandButtons\BTNOrcishTransport.blp +Buttonpos=0,0 +Attachmentanimprops=large + +[odes] +Art=ReplaceableTextures\CommandButtons\BTNOrcDestroyer.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\BoatMissile\BoatMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large \ No newline at end of file diff --git a/share/mpq/units/units/orcunitstrings.txt b/share/mpq/units/units/orcunitstrings.txt new file mode 100644 index 0000000..4313fcd --- /dev/null +++ b/share/mpq/units/units/orcunitstrings.txt @@ -0,0 +1,261 @@ +[oalt] +Name=风暴祭坛 +Hotkey=A +Tip=建造风暴祭坛(|cffffcc00A|r) +Ubertip="能召唤新的英雄和复活阵亡的英雄。" + +[oang] +Name=远古守护者 + +[obar] +Name=兵营 +Hotkey=B +Tip=建造兵营(|cffffcc00B|r) +Ubertip="主要部队生产建筑。训练步兵,猎头者和粉碎者。|n同时包括狂暴力量,狂暴愤怒,巨魔再生和燃烧汽油的升级。" + +[obea] +Name=兽栏 +Hotkey=E +Tip=建造兽栏(|cffffcc00E|r) +Ubertip="能训练出掠夺者,科多兽,风骑士和巨魔蝙蝠骑士。|n这里还包括诱捕,浸毒武器,战鼓和液体炸弹的升级。" + +[Obla] +Name=剑圣 +Propernames=托伽拉,尼可拉,卡金德,米恺撒,萨穆罗,阿可喏斯,玛组鲁,尤舒拉,达舍,可伽米,阿拉斯凯奇,穆哥尔,朱倍尔 +Hotkey=B +Tip=召唤剑圣(|cffffcc00B|r) +Ubertip="一种较为灵活的英雄,特别擅长于一对一。能学习到镜像,疾步风,致命一击和剑刃风暴这四种技能。|n|n|cffffcc00能攻击地面单位。" +Revivetip=复活剑圣(|cffffcc00B|r) +Awakentip=复活剑圣(|cffffcc00B|r) + +[ocat] +Name=粉碎者 +Hotkey=D +Tip=训练粉碎者(|cffffcc00D|r) +Ubertip="远程攻城武器。对建筑很有效,但缓慢而昂贵。可以学会燃烧之油技能。|n|n|cffffcc00攻击地面单位和树木。|r" + +[odoc] +Name=巨魔巫医 +Hotkey=W +Tip=训练巨魔巫医(|cffffcc00W|r) +Ubertip="魔法单位,一开始能施放岗哨魔法,从而能侦察到一定的区域。随后这种单位还能学习到静止陷阱和治疗守卫。|n|n|cffffcc00能攻击地面和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 岗哨守卫","- 岗哨守卫|n- 静止陷阱","- 岗哨守卫|n- 静止陷阱|n- 治疗守卫" + +[otot] +Name=静止陷阱 + +[oeye] +Name=岗哨守卫 + +[Ofar] +Name=先知 +Propernames=伽德尔,尼盖尔,卡滋尔,玛奇斯,巴尔,盖罗,卡伽尔,那滋盖尔,摩盖尔,卡拉盖尔,费恩理斯 +Hotkey=F +Tip=召唤先知(|cffffcc00F|r) +Ubertip="一种神秘的英雄,特别擅长于远程攻击和侦察。能学习到闪电链,透视,野兽幽魂和地震这四种技能。|n|n|cffffcc00能攻击地面单位和空中单位。" +Revivetip=复活先知(|cffffcc00F|r) +Awakentip=复活先知(|cffffcc00F|r) + +[ofor] +Name=战争磨坊 +Hotkey=M +Tip=建造战争磨坊(|cffffcc00M|r) +Ubertip="能存储采集到的木材。|n这里还包括对兽族各种单位的攻防升级,尖刺障碍和加强型防御也是在这里进行研究的。" + +[ofrt] +Name=堡垒 +Hotkey=U +Tip=升级到堡垒(|cffffcc00U|r) +Ubertip="升级到了堡垒之后能让玩家建造许多新的建筑物和单位。" + +[ogre] +Name=大厅 +Hotkey=H +Tip=建造大厅(|cffffcc00H|r) +Ubertip="兽族的基本建筑物。能训练出苦工,在升级到了要塞和堡垒之后能让玩家建造许多新的建筑物和单位。" + +[ogru] +Name=兽族步兵 +Hotkey=G +Tip=训练兽族步兵(|cffffcc00G|r) +Ubertip="基本的兽族地面单位。能得到狂暴力量的升级。|n|n|cffffcc00能攻击地面单位。|r" + +[ohun] +Name=巨魔猎头者 +Hotkey=T +Tip=训练巨魔猎头者(|cffffcc00T|r) +Ubertip="能有效对空的单位。能学习到巨魔再生和狂暴愤怒技能。|n|n|cffffcc00能攻击地面和空中单位。|r " + +[otbk] +Name=巨魔狂暴战士 +Hotkey=T +Tip=训练巨魔狂暴战士(|cffffcc00T|r) +Ubertip="能有效对空的投矛战士,拥有狂暴愤怒技能,从而增加了攻击力但是也会因此而受到额外的伤害。能学习巨魔再生技能。|n|n|cffffcc00能攻击地面和空中单位。|r " + +[ohwd] +Name=治疗守卫 + +[okod] +Name=科多兽 +Hotkey=K +Tip=训练科多兽(|cffffcc00K|r) +Ubertip="笨重的战争野兽,上面骑着一个兽族鼓手。能学到战鼓和吞噬技能。战鼓能提高周围单位的攻击力,它本身也能进行升级。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[osld] +Name=灵魂归宿 +Hotkey=S +Tip=建造灵魂归宿(|cffffcc00S|r) +Ubertip="能生产出兽族的魔法单位:萨满祭司,巨魔巫医和灵魂行者。|n这里也可以进行对萨满祭司,巨魔巫医和灵魂行者的各种魔法升级。" + +[opeo] +Name=苦工 +Hotkey=P +Tip=训练苦工(|cffffcc00P|r) +Ubertip="兽族的基本工人单位。能采集黄金和木材。还能建造建筑物和进行修理。在钻入地洞以后还能对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面单位和树木。|r" + +[orai] +Name=掠夺者 +Hotkey=R +Tip=训练掠夺者(|cffffcc00R|r) +Ubertip="一种机动性很强的狼骑士。对付建筑物特别的有效,能学习到诱捕技能。|n|n|cffffcc00能攻击地面单位。|r" + +[oshm] +Name=萨满祭司 +Hotkey=S +Tip=萨满祭司 (|cffffcc00S|r) +Ubertip="魔法单位。一开始能施放净化技能,从而能减慢敌人的速度和驱逐其身上的魔法效果。随后还能学习到闪电护盾和嗜血术。|n|n|cffffcc00能攻击地面单位和空中单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 净化","- 净化|n- 闪电护盾","- 净化|n- 闪电护盾|n- 嗜血术" + +[ostr] +Name=要塞 +Hotkey=U +Tip=升级到要塞(|cffffcc00U|r) +Ubertip="在升级到要塞以后能使玩家建造许多新的建筑物和单位。" + +[osw1] +Name=幽魂之狼 +EditorSuffix= (等级 1) + +[osw2] +Name=恐惧之狼 +EditorSuffix= (等级 2) + +[osw3] +Name=阴影之狼 +EditorSuffix= (等级 3) + +[osp1] +Name=毒蛇守卫 +EditorSuffix= (等级 1) + +[osp2] +Name=毒蛇守卫 +EditorSuffix= (等级 2) + +[osp3] +Name=毒蛇守卫 +EditorSuffix= (等级 3) + +[otau] +Name=牛头人 +Hotkey=T +Tip=训练牛头人(|cffffcc00T|r) +Ubertip="大型的单位,能学习到粉碎技能。|n|n|cffffcc00能攻击地面单位。|r" + +[otbr] +Name=巨魔蝙蝠骑士 +Hotkey=B +Tip=训练巨魔蝙蝠骑士(|cffffcc00B|r) +Ubertip="轻型的飞行单位,有着出色的感官。擅长于摧毁敌人的建筑物,具有不稳定化合物技能,使得巨魔蝙蝠骑士能利用爆炸来伤害周围的空中单位。还能学习到液体炸弹和巨魔再生技能。|n|n|cffffcc00能攻击地面单位。|r" + +[Oshd] +Name=暗影猎手 +Propernames=祖尔科斯,祖尔阿巴,祖尔拉贾斯,祖尔玛拉恩,乔乔-缩头者,萨卡-匝恩,萨卡提-拉,梅兹尔-克瑞 +Hotkey=H +Tip=召唤暗影猎手(|cffffcc00H|r) +Ubertip="灵巧型的英雄,擅长于医疗和巫毒魔法。能学习到医疗波,妖术,毒蛇守卫和巫毒技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活暗影猎手(|cffffcc00H|r) +Awakentip=复活暗影猎手(|cffffcc00H|r) + +[Otch] +Name=牛头人酋长 +Propernames=玛恩,塞盖尔,塔穆,德恩,卡穆,可尔,穆恩尔,盖罗可,玛拉尔,塞阿尔 +Hotkey=T +Tip=召唤牛头人酋长(|cffffcc00T|r) +Ubertip="一种战士型英雄,特别擅长于近战和吸收伤害。能学习到震荡波,战争践踏,耐久光环和重生这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活牛头人酋长(|cffffcc00T|r) +Awakentip=复活牛头人酋长(|cffffcc00T|r) + +[otrb] +Name=兽族地洞 +Hotkey=O +Tip=建造兽族地洞(|cffffcc00O|r) +Ubertip="能提供人口,从而增加可造单位数量的最大值。苦工在进入其中以后还能对来犯的敌人进行反击。能进行加强型防御升级。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[orbr] +Name=加强型地洞 +Hotkey=O +Tip=建造加强型地洞(|cffffcc00O|r) +Ubertip="提供人口,从而增加你可造单位的数量。苦工还可以钻入地洞从而对来犯的敌人进行反击。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[otto] +Name=牛头人图腾 +Hotkey=T +Tip=建造牛头人图腾(|cffffcc00T|r) +Ubertip="能训练出牛头人来。|n还包括对粉碎技能的研究。" + +[ovln] +Name=巫毒商店 +Hotkey=V +Tip=建造巫毒商店(|cffffcc00V|r) +Ubertip="建造出一个能出售物品的商店。可以购买的物品种类取决于你的大厅升级情况(大厅, 要塞, 堡垒)和你所拥有的建筑物种类。" + +[owyv] +Name=风骑士 +Hotkey=W +Tip=训练风骑士(|cffffcc00W|r) +Ubertip="一种高度机动的飞行单位。特别擅长于侦察。能获得浸毒武器的升级。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[owtw] +Name=了望塔 +Hotkey=W +Tip=建造了望塔(|cffffcc00W|r) +Ubertip="防御性建筑,能得到到加强型防御升级。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ospw] +DependencyOr=ospm +Name=灵魂行者 +Hotkey=T +Tip=训练灵魂行者(|cffffcc00T|r) +Ubertip="诡秘的牛头人法师。具有虚无形态技能,从而能让其对物理攻击免疫。还具有灵魂锁链技能,从而能对敌人进行连锁伤害。同时也能学习到消魔和先祖幽灵技能。|n|cffffcc00能攻击地面单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 虚无形态|n- 灵魂锁链","- 虚无形态|n- 灵魂锁链|n- 消魔","- 虚无形态|n- 灵活锁链|n- 消魔|n- 先组幽灵" + +[ospm] +Name=灵魂行者 +Hotkey=T +Tip=训练灵魂行者(|cffffcc00T|r) +Ubertip="诡秘的牛头人法师。具有虚无形态技能,从而能让其对物理攻击免疫。还具有灵魂锁链技能,从而能对敌人进行连锁伤害。同时也能学习到消魔和先祖幽灵技能。|n|cffffcc00能攻击地面单位。|r" +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 虚无形态|n- 灵魂锁链","- 虚无形态|n- 灵魂锁链|n- 消魔","- 虚无形态|n- 灵活锁链|n- 消魔|n- 先组幽灵" +EditorSuffix= (虚无状态) +//#RESTNOBETA +[oshy] +Name=兽族船坞 +Tip=建造兽族船坞 +Ubertip="船只建造工厂。能建造出兽族的运输船,护卫舰和战舰。" +Description=出售船只 + +[obot] +Name=兽族运输船 +Hotkey=T +Tip=雇用运输船(|cffffcc00T|r) +Ubertip="能够运送单位的运输船。" + +[odes] +Name=兽族护卫舰 +Hotkey=F +Tip=雇用护卫舰(|cffffcc00F|r) +Ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" diff --git a/share/mpq/units/units/orcupgradefunc.txt b/share/mpq/units/units/orcupgradefunc.txt new file mode 100644 index 0000000..e3eae17 --- /dev/null +++ b/share/mpq/units/units/orcupgradefunc.txt @@ -0,0 +1,117 @@ +[Roch] +Art=ReplaceableTextures\CommandButtons\BTNOrcMeleeUpOne.blp + +[Rome] +Art=ReplaceableTextures\CommandButtons\BTNOrcMeleeUpOne.blp,ReplaceableTextures\CommandButtons\BTNOrcMeleeUpTwo.blp,ReplaceableTextures\CommandButtons\BTNOrcMeleeUpThree.blp +Buttonpos=0,0 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt + +[Rora] +Art=ReplaceableTextures\CommandButtons\BTNSteelRanged.blp,ReplaceableTextures\CommandButtons\BTNThoriumRanged.blp,ReplaceableTextures\CommandButtons\BTNArcaniteRanged.blp +Buttonpos=1,0 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt + +[Roar] +Art=ReplaceableTextures\CommandButtons\BTNSteelArmor.blp,ReplaceableTextures\CommandButtons\BTNThoriumArmor.blp,ReplaceableTextures\CommandButtons\BTNArcaniteArmor.blp +Buttonpos=0,1 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt + +[Rwdm] +Art=ReplaceableTextures\CommandButtons\BTNDrum.blp +Buttonpos=1,2 +Requires=ofrt,ofor + +// Pillage (formerly salvage) +[Ropg] +Art=ReplaceableTextures\CommandButtons\BTNPillage.blp +Buttonpos=2,0 + +[Robs] +Art=ReplaceableTextures\CommandButtons\BTNBerserk.blp +Buttonpos=0,2 +Requires=ostr + +[Rows] +Art=ReplaceableTextures\CommandButtons\BTNSmash.blp +Buttonpos=0,2 + +[Roen] +Art=ReplaceableTextures\CommandButtons\BTNEnsnare.blp +Buttonpos=0,2 + + + +[Rovs] +Art=ReplaceableTextures\CommandButtons\BTNEnvenomedSpear.blp +Buttonpos=2,1 +Requires=ofrt + +[Rowd] +Art=ReplaceableTextures\CommandButtons\BTNWitchDoctorAdept.blp,ReplaceableTextures\CommandButtons\BTNWitchDoctorMaster.blp +Buttonpos=1,2 +Requirescount=2 +Requires= +Requires1=ofrt + +[Rost] +Art=ReplaceableTextures\CommandButtons\BTNShamanAdept.blp,ReplaceableTextures\CommandButtons\BTNShamanMaster.blp +Buttonpos=0,2 +Requirescount=2 +Requires= +Requires1=ofrt + +[Rosp] +Art=ReplaceableTextures\CommandButtons\BTNSpikedBarricades.blp,ReplaceableTextures\CommandButtons\BTNImprovedSpikedBarricades.blp,ReplaceableTextures\CommandButtons\BTNAdvancedSpikedBarricades.blp +Buttonpos=2,0 +Requirescount=3 +Requires= +Requires1=ostr +Requires2=ofrt + +[Rotr] +Art=ReplaceableTextures\CommandButtons\BTNRegenerate.blp +Buttonpos=1,1 +Requires=ostr,ofor + +[Rolf] +Art=ReplaceableTextures\CommandButtons\BTNLiquidFire.blp +Buttonpos=2,2 +Requires=ofrt,ovln + +[Ropm] +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp +Buttonpos=3,0 +Requires=ovln + +[Rowt] +Art=ReplaceableTextures\CommandButtons\BTNSpiritWalkerAdeptTraining.blp,ReplaceableTextures\CommandButtons\BTNSpiritWalkerMasterTraining.blp +Buttonpos=2,2 +Requirescount=2 +Requires= +Requires1=ofrt + +[Robk] +Art=ReplaceableTextures\CommandButtons\BTNHeadHunterBerserker.blp +Buttonpos=1,2 +Requires=ofrt,ofor + +[Rorb] +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNReinforcedBurrows.blp +Buttonpos=2,1 + +[Robf] +Requires=ofrt +Art=ReplaceableTextures\CommandButtons\BTNFireRocks.blp +Buttonpos=2,2 + + diff --git a/share/mpq/units/units/orcupgradestrings.txt b/share/mpq/units/units/orcupgradestrings.txt new file mode 100644 index 0000000..702ab97 --- /dev/null +++ b/share/mpq/units/units/orcupgradestrings.txt @@ -0,0 +1,118 @@ +[Roch] +Name=混乱的 + +[Rome] +Name=钢铁近战武器,金属近战武器,终极近战武器 +Tip=升级到钢铁近战武器(|cffffcc00M|r),升级到金属近战武器(|cffffcc00M|r),升级到终极近战武器(|cffffcc00M|r) +Ubertip="增加兽族步兵,掠夺者,牛头人的攻击力。","进一步增加兽族步兵,掠夺者,牛头人的攻击力。","进一步增加兽族步兵,掠夺者,牛头人的攻击力。" +Hotkey=M,M,M + +[Rora] +Name=钢铁远程武器,金属远程武器,终极远程武器 +Tip=升级到钢铁远程武器(|cffffcc00R|r),升级到金属远程武器(|cffffcc00R|r),升级到终极远程武器(|cffffcc00R|r) +Ubertip="能增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。","进一步增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。","进一步增加巨魔猎头者,风骑士,粉碎者和巨魔蝙蝠骑士的远程攻击力。" +Hotkey=R,R,R + +[Roar] +Name=钢铁护甲,金属护甲,终极护甲 +Tip=升级到钢铁护甲(|cffffcc00A|r),升级到钢铁护甲(|cffffcc00A|r),升级到终极护甲(|cffffcc00A|r) +Ubertip="增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。","进一步增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。","进一步增加兽族步兵,掠夺者,牛头人,巨魔猎头者,巨魔蝙蝠骑士,风骑士和粉碎者的护甲。" +Hotkey=A,A,A + +[Rwdm] +Name=战鼓攻击力升级 +Tip=升级战鼓(|cffffcc00D|r) +Ubertip="经过升级以后,科多兽的战鼓光环能给予周围的单位更多的攻击力附加值。" +Hotkey=D + +// pillage +[Ropg] +Name=掠夺 +Tip=掠夺(|cffffcc00G|r) +Ubertip="使得苦工,兽族步兵和掠夺者对敌人建筑物的攻击能掠夺到一定的资源。" +Hotkey=G + +[Robs] +Name=狂暴力量 +Tip=研究狂暴力量(|cffffcc00B|r) +Ubertip="能增加兽族步兵点的生命值和点的攻击力。" +Hotkey=B + +[Rows] +Name=粉碎 +Tip=研究粉碎(|cffffcc00P|r) +Ubertip="让牛头人具有粉碎技能,从而使得牛头人具有一定的概率造成范围性攻击。" +Hotkey=P + +[Roen] +Name=诱捕 +Tip=诱捕(|cffffcc00N|r) +Ubertip="使得掠夺者能将目标空中单位困在地面上而不能移动。" +Hotkey=N + +[Rovs] +Name=浸毒武器 +Tip=研究浸毒武器(|cffffcc00E|r) +Ubertip="使得风骑士的攻击带有毒性。一个被浸毒武器攻击到的单位会在一段时间内持续受到伤害。" +Hotkey=E + +[Rowd] +Name=巫医专家训练,巫医大师训练 +Tip=巫医专家训练(|cffffcc00D|r),巫医大师训练(|cffffcc00D|r) +Ubertip="增加巫医的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得静止陷阱技能。","增加巫医的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得静止治疗守卫技能。" +Hotkey=D,D + +[Rost] +Name=萨满祭司专家训练,萨满祭司大师训练 +Tip=萨满祭司专家训练(|cffffcc00M|r), 萨满祭司大师训练(|cffffcc00M|r) +Ubertip="增加萨满祭司的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得闪电护盾技能。","增加萨满祭司的魔法最大值,魔法恢复速度,生命值和攻击力。还能使其获得嗜血术。" +Hotkey=M,M + +[Rosp] +Name=尖刺障碍,中级尖刺障碍,高级尖刺障碍 +Tip=升级到尖刺障碍(|cffffcc00S|r),升级到中级尖刺障碍(|cffffcc00S|r),升级到高级尖刺障碍(|cffffcc00S|r) +Ubertip="使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。","使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。","使得兽族的建筑物周围都布满了具有攻击力的尖刺,如果敌人每进行一次近战攻击就会受到点伤害。" +Hotkey=S,S,S + +[Rotr] +Name=巨魔再生,中级巨魔再生,高级巨魔再生 +Tip=研究巨魔再生(|cffffcc00R|r),研究中级巨魔再生(|cffffcc00R|r),研究高级巨魔再生(|cffffcc00R|r) +Ubertip="加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。","进一步加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。","进一步加快巫医,巨魔蝙蝠骑士和巨魔猎头者的生命值恢复。" +Hotkey=R + +[Rolf] +Name=液体炸弹 +Tip=研究液体炸弹(|cffffcc00L|r) +Ubertip="让巨魔蝙蝠骑士具有液体炸弹技能,从而可以对敌人的建筑物造成持续性的伤害,被液体炸弹攻击到的各类防御塔都会被减慢攻击速度。" +Hotkey=L + +[Ropm] +Name=背包技能 +EditorSuffix= (兽族) +Tip=研究背包技能(|cffffcc00B|r) +Ubertip="让某个特定的兽族地面单位能替英雄携带物品。" +Hotkey=B + +[Rowt] +Name=灵魂行者专家训练,灵魂行者大师训练 +Tip=灵魂行者专家训练(|cffffcc00R|r),)灵魂行者大师训练(|cffffcc00R|r) +Ubertip="增加灵魂行者的最大魔法值,魔法恢复速度和最大生命值。并让其具有消魔技能。","增加灵魂行者的最大魔法值,魔法恢复速度和最大生命值。并让其具有先祖幽灵技能。" +Hotkey=R,R + +[Robk] +Name=狂暴愤怒升级 +Tip=升级狂战士(|cffffcc00E|r) +Ubertip="将巨魔猎头者变为巨魔狂暴战士。使其拥有更多的生命值和狂暴愤怒技能。" +Hotkey=E + +[Rorb] +Name=加强型防御 +Tip=加强型防御(|cffffcc00D|r) +Ubertip="升级地洞和了望塔从而让它们拥有加强型的护甲。" +Hotkey=D + +[Robf] +Name=燃烧之油 +Tip=燃烧之油(|cffffcc00N|r) +Ubertip="升级粉碎者,使其能投出包裹石油的燃烧石块,从而能燃烧地面。" +Hotkey=N diff --git a/share/mpq/units/units/undeadabilityfunc.txt b/share/mpq/units/units/undeadabilityfunc.txt new file mode 100644 index 0000000..a55ec60 --- /dev/null +++ b/share/mpq/units/units/undeadabilityfunc.txt @@ -0,0 +1,787 @@ +// Replenish Life & Mana +[Arpb] +Art=ReplaceableTextures\CommandButtons\BTNReplenishManaOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNReplenishManaOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart=Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCaster.mdl +Casterattach=origin +Specialart=Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCasterOverhead.mdl +Specialattach=overhead +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=replenish +Orderon=replenishon +Orderoff=replenishoff + +[Brpb] +Buffart=ReplaceableTextures\CommandButtons\BTNReplenishMana.blp + +// Replenish Life (Obsidian Statue) +[Arpl] +Art=ReplaceableTextures\CommandButtons\BTNReplenishHealthOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNReplenishHealthOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Casterart=Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCaster.mdl +Casterattach=origin +Specialart=Abilities\Spells\Undead\ReplenishHealth\ReplenishHealthCasterOverhead.mdl +Specialattach=overhead +Targetart=Abilities\Spells\Human\Heal\HealTarget.mdl +Order=replenishlife +Orderon=replenishlifeon +Orderoff=replenishlifeoff + +[Brpl] +Buffart=ReplaceableTextures\CommandButtons\BTNReplenishHealth.blp + +// Spirit Touch (Obsidian Statue) +[Arpm] +Art=ReplaceableTextures\CommandButtons\BTNReplenishManaOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNReplenishManaOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Casterart=Abilities\Spells\Undead\ReplenishMana\ReplenishManaCaster.mdl +Casterattach=origin +Specialart=Abilities\Spells\Undead\ReplenishMana\ReplenishManaCasterOverhead.mdl +Specialattach=overhead +Targetart=Abilities\Spells\Undead\ReplenishMana\SpiritTouchTarget.mdl +//#LINENOBETA +Effectsound=SpiritTouch +Order=replenishmana +Orderon=replenishmanaon +Orderoff=replenishmanaoff + +[Brpm] +Buffart=ReplaceableTextures\CommandButtons\BTNReplenishMana.blp + +// Exhume Corpses +[Aexh] +Art=ReplaceableTextures\PassiveButtons\PASBTNExhumeCorpses.blp +Buttonpos=3,2 +Requires=Ruex + +// Moon pool mana battery +[Amb2] +Art=ReplaceableTextures\CommandButtons\BTNReplenishManaOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNReplenishManaOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Casterart=Abilities\Spells\Undead\ReplenishMana\ReplenishManaCaster.mdl +Specialart=Abilities\Spells\Items\AIma\AImaTarget.mdl +Order=recharge + +// Destroyer Form +[Aave] +Art=ReplaceableTextures\CommandButtons\BTNDestroyer.blp +Unart=ReplaceableTextures\CommandButtons\BTNObsidianStatue.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=sphinxform +Unorder=unsphinxform +Requires=Rusp + +// Orb of Death +[Afak] +Art=ReplaceableTextures\CommandButtons\BTNOrbOfDeathOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNOrbOfDeathOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Missileart=Abilities\Spells\Undead\OrbOfDeath\AnnihilationMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Animnames=attack + +// Devour Magic +[Advm] +Art=ReplaceableTextures\CommandButtons\BTNDevourMagic.blp +Buttonpos=0,2 +Specialart=Abilities\Spells\Human\DispelMagic\DispelMagicTarget.mdl +Missileart=Abilities\Spells\Undead\DevourMagic\DevourMagicBirthMissile.mdl +Missilespeed=1200 +Missilearc=0.10 +MissileHoming=1 + +// Blight-like Regeneration Aura (to be renamed) +[Aabr] +Art=ReplaceableTextures\PassiveButtons\PASBTNRegenerationAura.blp +Buttonpos=2,2 +Targetart=Abilities\Spells\Undead\RegenerationAura\ObsidianRegenAura.mdl +Targetattach=origin + +[Babr] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNRegenerationAura.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +// Absorb Mana +[Aabs] +Art=ReplaceableTextures\CommandButtons\BTNAbsorbMagic.blp +Buttonpos=0,2 +Missileart=Abilities\Spells\Undead\AbsorbMana\AbsorbManaBirthMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=absorbmana + +// Undead Build +[AUbu] +Art=ReplaceableTextures\CommandButtons\BTNScourgeBuild.blp +Buttonpos=0,2 +Order=undeadbuild + +// Burrow +[Abur] +Requires=Rubu +Art=ReplaceableTextures\CommandButtons\BTNCryptFiendBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNCryptFiendUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=burrow +Unorder=unburrow + +// Burrow (lvl 2 scarab) +[Abu2] +Art=ReplaceableTextures\CommandButtons\BTNCryptFiendBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNCryptFiendUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=burrow +Unorder=unburrow + +// Burrow (lvl 3 scarab) +[Abu3] +Art=ReplaceableTextures\CommandButtons\BTNCryptFiendBurrow.blp +Unart=ReplaceableTextures\CommandButtons\BTNCryptFiendUnBurrow.blp +Buttonpos=3,2 +Unbuttonpos=3,2 +Order=burrow +Unorder=unburrow + + +// Impale +[AUim] +Art=ReplaceableTextures\CommandButtons\BTNImpale.blp +Researchart=ReplaceableTextures\CommandButtons\BTNImpale.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Effectsound=ImpaleCast +Specialart=Abilities\Spells\Undead\Impale\ImpaleMissTarget.mdl +Order=impale + +[BUim] +Buffart=ReplaceableTextures\CommandButtons\BTNImpale.blp +Effectart=Abilities\Spells\Undead\Impale\ImpaleHitTarget.mdl +Effectattach=sprite,first +Targetart=Abilities\Spells\Human\StormBolt\StormBoltTarget.mdl +Targetattach=overhead + +// Thorny Shield +[AUts] +Art=ReplaceableTextures\PassiveButtons\PASBTNThornShield.blp +//Unart=ReplaceableTextures\CommandButtons\BTNThornyShieldOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNThornShield.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchbuttonpos=1,0 +// This ability is now passive... +//Order=Thornyshield +//Unorder=Unthornyshield + +[BUts] +Buffart=ReplaceableTextures\CommandButtons\BTNThornShield.blp +Targetart=Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestLeft.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestRight.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountLeft.mdl,Abilities\Spells\Undead\ThornyShield\ThornyShieldTargetChestMountRight.mdl +Targetattachcount=4 +Targetattach=chest,left +Targetattach1=chest,right +Targetattach2=chest,mount,left +Targetattach3=chest,mount,right + +// Carrion Scarabs +[AUcb] +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabsOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNCarrionScarabsOff.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp +Buttonpos=2,2 +Unbuttonpos=2,2 +Researchbuttonpos=2,0 +Order=Carrionscarabs +Orderon=Carrionscarabson +Orderoff=Carrionscarabsoff + +[BUcb] +Buffart=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +// Locust Swarm +[AUls] +Art=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Researchart=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=Locustswarm +Effectsoundlooped=LocustSwarmLoop + +// Buff on locust +[BUlo] +Buffart=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp + +// Meat Wagon Cargo Hold +[Amtc] +Effectsound=LoadUnload + +// True Sight +[Atru] +Art=ReplaceableTextures\PassiveButtons\PASBTNShadeTrueSight.blp +Buttonpos=0,2 + +// Acolyte Harvest +[Aaha] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Effectsound=AcolyteMining +Order=harvest + +// Ghoul Harvest +[Ahrl] +Art=ReplaceableTextures\CommandButtons\BTNGatherGold.blp +Unart=ReplaceableTextures\CommandButtons\BTNReturnGoods.blp +Buttonpos=3,1 +UnButtonpos=3,1 +Order=harvest + +// Unsummon +[Auns] +Art=ReplaceableTextures\CommandButtons\BTNUnsummonBuilding.blp +Buttonpos=1,2 +Order=unsummon + +[Buns] +Buffart=ReplaceableTextures\CommandButtons\BTNUnsummonBuilding.blp +Targetart=Abilities\Spells\Undead\Unsummon\UnsummonTarget.mdl +Effectsoundlooped=AcolyteUnsummonLoop + +// Haunted Gold Mine - Manages the ring of acolytes that is formed around a +// haunted gold mine. This ability has no UI, and shouldn't be exposed to +// scripts or the map editor. It is only here to specify art paths. +[Abgm] +Effectart=Abilities\Spells\Undead\UndeadMine\UndeadMineCircle.mdl +Effectsoundlooped=MineDomeLoop + +// Graveyard +[Agyd] +SpecialArt=Abilities\Spells\Undead\Graveyard\GraveMarker.mdl + +// Sacrifice (Acolyte's button) +[Alam] +Art=ReplaceableTextures\CommandButtons\BTNSacrifice.blp +Buttonpos=3,2 +Requires=usap +Order=sacrifice + +// Sacrifice (Sacrificial Pit's button) +[Asac] +Art=ReplaceableTextures\CommandButtons\BTNSacrifice.blp +Buttonpos=0,0 +Order=sacrifice + +// Cannibalize +[Acan] +Requires=Ruac +Art=ReplaceableTextures\CommandButtons\BTNCannibalize.blp +Buttonpos=0,2 +Order=cannibalize +Animnames=stand,channel + +// Cannibalize (abomination) +[Acn2] +Requires=Ruac +Art=ReplaceableTextures\CommandButtons\BTNCannibalize.blp +Buttonpos=0,2 +Order=cannibalize +Animnames=stand,channel + +// Spider Attack +[Aspa] +// Uses missile art and speed from the unit's attack. + +[Bspa] +Buffart=ReplaceableTextures\CommandButtons\BTNSpider.blp +Targetart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissileTarget.mdl +Targetattach=origin + +// Web +[Aweb] +Art=ReplaceableTextures\CommandButtons\BTNWebOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNWebOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Requires=Ruwb +Missileart=Abilities\Spells\Undead\Web\Webmissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=web +Orderon=webon +Orderoff=weboff + +// Web buff on ground units +[Bweb] +Buffart=ReplaceableTextures\CommandButtons\BTNWeb.blp +Targetart=Abilities\Spells\Undead\Web\WebTarget.mdl +Targetattach=origin + +// Web buff on air units +[Bwea] +Buffart=ReplaceableTextures\CommandButtons\BTNWeb.blp +Targetart=Abilities\Spells\Undead\Web\Web_AirTarget.mdl +Targetattach=chest,mount + +// Stone Form +[Astn] +Art=ReplaceableTextures\CommandButtons\BTNStoneForm.blp +Unart=ReplaceableTextures\CommandButtons\BTNGargoyle.blp +Requires=Rusf +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=stoneform +Unorder=unstoneform + +// Load corpse +[Amel] +Art=ReplaceableTextures\CommandButtons\BTNUndeadLoadOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNUndeadLoadOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=loadcorpse + +// Unload corpse +[Amed] +Art=ReplaceableTextures\CommandButtons\BTNUndeadUnLoad.blp +Buttonpos=1,2 +Order=unloadcorpse + +// Disease Cloud +[Aapl] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=1,2 +Requires=Rupc +Targetart=Abilities\Spells\Undead\PlagueCloud\PlagueCloudCaster.mdl + +[Aap1] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=1,2 +Requires=Rupc +Targetart=Abilities\Spells\Undead\PlagueCloud\PlagueCloudCaster.mdl + +[Aap2] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=0,2 +Requires=Rupc +Targetart= + +[Aap3] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=1,2 +Requires=Rupc +Targetart=Abilities\Spells\Undead\PlagueCloud\PlagueCloudCaster.mdl + +[Aap4] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=1,2 +Requires=Rupc +Targetart=Abilities\Spells\Undead\PlagueCloud\PlagueCloudCaster.mdl + +[Bapl] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNPlagueCloud.blp +Targetart=Units\Undead\PlagueCloud\PlagueCloudtarget.mdl +Targetattach=head + +// Disease Cloud +[Apts] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp +Buttonpos=2,2 +Requires=Rupc + +// Frost Breath +[Afrb] +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl + +// Frost Attack +[Afra] +Art=ReplaceableTextures\PassiveButtons\PASBTNFrost.blp +Buttonpos=0,2 +Missileart=Abilities\Weapons\ZigguratFrostMissile\ZigguratFrostMissile.mdl + + +// Frost Attack (1,2) button pos +[Afr2] +Art=ReplaceableTextures\PassiveButtons\PASBTNFrost.blp +Buttonpos=1,2 +Missileart=Abilities\Weapons\ZigguratFrostMissile\ZigguratFrostMissile.mdl + + +// Freezing Breath +[Afrz] +Art=ReplaceableTextures\PassiveButtons\PASBTNFreezingBreath.blp +Buttonpos=0,2 +Requires=Rufb +Missileart=Abilities\Spells\Undead\FreezingBreath\FreezingBreathMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Order=freezingbreath + +[Bfrz] +Buffart=ReplaceableTextures\CommandButtons\BTNFreezingBreath.blp +Targetart=Abilities\Spells\Undead\FreezingBreath\FreezingBreathTargetArt.mdl +Targetattach=origin + +// Raise Dead +[Arai] +Art=ReplaceableTextures\CommandButtons\BTNRaiseDeadOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNRaiseDeadOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Effectart=Abilities\Spells\Undead\RaiseSkeletonWarrior\RaiseSkeleton.mdl +Order=raisedead +Orderon=raisedeadon +Orderoff=raisedeadoff + +[Brai] +Buffart=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +// Unholy Frenzy +[Auhf] +Art=ReplaceableTextures\CommandButtons\BTNUnholyFrenzy.blp +Buttonpos=1,2 +Requires=Rune +Order=unholyfrenzy + +// Unholy Frenzy (Warlock) +[Suhf] +Art=ReplaceableTextures\CommandButtons\BTNUnholyFrenzy.blp +Buttonpos=1,2 +Order=unholyfrenzy + +[Buhf] +Buffart=ReplaceableTextures\CommandButtons\BTNUnholyFrenzy.blp +Targetart=Abilities\Spells\Undead\UnholyFrenzy\UnholyFrenzyTarget.mdl +Targetattach=overhead + +// Curse +[Acrs] +Art=ReplaceableTextures\CommandButtons\BTNCurseOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNCurseOff.blp +Buttonpos=0,2 +Unbuttonpos=0,2 +Order=curse +Orderon=curseon +Orderoff=curseoff + +[Bcrs] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNCurse.blp +Targetart=Abilities\Spells\Undead\Curse\CurseTarget.mdl +Targetattach=overhead + +// Anti-magic Shell +[Aams] +Art=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Buttonpos=1,2 +Requires=Ruba +Order=antimagicshell + +// Anti-magic Shell +[Aam2] +Art=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Buttonpos=1,2 +Requires=Ruba +Order=antimagicshell + +[Bams] +Buffart=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Targetart=Abilities\Spells\Undead\AntiMagicShell\AntiMagicShell.mdl +Targetattach=overhead + +[Bam2] +Buffart=ReplaceableTextures\CommandButtons\BTNAntiMagicShell.blp +Targetart=Abilities\Spells\Undead\AntiMagicShell\AntiMagicShell.mdl +Targetattach=overhead + +// Possession +[Apos] +Art=ReplaceableTextures\CommandButtons\BTNPossession.blp +Buttonpos=2,2 +SpecialArt= +Requires=Ruba +Requiresamount=2 +Missileart=Abilities\Spells\Undead\Possession\PossessionMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=possession + +// Possession +[Aps2] +Art=ReplaceableTextures\CommandButtons\BTNPossession.blp +Buttonpos=2,2 +SpecialArt= +Requires=Ruba +Requiresamount=2 +Missileart=Abilities\Spells\Undead\Possession\PossessionMissile.mdl +Missilespeed=1500 +MissileHoming=1 +Order=possession + +[Bpos] +Buffart=ReplaceableTextures\CommandButtons\BTNPossession.blp +Targetart=Abilities\Spells\Undead\Possession\PossessionTarget.mdl +Targetattach=overhead + +// Buff for looping caster art. +[Bpoc] +Targetart=Abilities\Spells\Undead\Possession\PossessionCaster.mdl +Targetattach=overhead + +// Death Coil +[AUdc] +Art=ReplaceableTextures\CommandButtons\BTNDeathCoil.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDeathCoil.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Undead\DeathCoil\DeathCoilMissile.mdl +Missilespeed=1100 +MissileHoming=1 +Specialart=Abilities\Spells\Undead\DeathCoil\DeathCoilSpecialArt.mdl +Order=deathcoil + +// Death Pact +[AUdp] +Art=ReplaceableTextures\CommandButtons\BTNDeathPact.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDeathPact.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Casterart=Abilities\Spells\Undead\DeathPact\DeathPactCaster.mdl +Targetart=Abilities\Spells\Undead\DeathPact\DeathPactTarget.mdl +Targetattach=origin +Order=deathpact + +// (this is the shield on the caster.) +// unused these days +[BUdp] +Buffart=ReplaceableTextures\CommandButtons\BTNDeathPact.blp +Targetart=Abilities\Spells\Undead\DeathPact\DeathPactCaster.mdl +Targetattach=origin + +// Animate Dead +[AUan] +Art=ReplaceableTextures\CommandButtons\BTNAnimateDead.blp +Researchart=ReplaceableTextures\CommandButtons\BTNAnimateDead.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Specialart=Abilities\Spells\Undead\AnimateDead\AnimateDeadTarget.mdl +Order=animatedead + +[BUan] +Buffart=ReplaceableTextures\CommandButtons\BTNAnimateDead.blp +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +// Carrion Swarm +[AUcs] +Art=ReplaceableTextures\CommandButtons\BTNCarrionSwarm.blp +Researchart=ReplaceableTextures\CommandButtons\BTNCarrionSwarm.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Missileart=Abilities\Spells\Undead\CarrionSwarm\CarrionSwarmMissile.mdl +Missilespeed=1100 +Specialart=Abilities\Spells\Undead\CarrionSwarm\CarrionSwarmDamage.mdl +Order=carrionswarm +Animnames=attack,slam + +// Sleep +[AUsl] +Art=ReplaceableTextures\CommandButtons\BTNSleep.blp +Researchart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Buttonpos=1,2 +Researchbuttonpos=1,0 +Order=sleep + +[BUsl] +Buffart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Targetart=Abilities\Spells\Undead\Sleep\SleepTarget.mdl +Targetattach=overhead +Effectsoundlooped=CreepSleepSnoreLoop + +// Sleep stun buff +[BUst] +Buffart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Targetart=Abilities\Spells\Undead\Sleep\SleepSpecialArt.mdl + +// Sleep pause buff +[BUsp] +Buffart=ReplaceableTextures\CommandButtons\BTNSleep.blp +Targetart=Abilities\Spells\Undead\Sleep\SleepSpecialArt.mdl + +// Vampiric Aura +[AUav] +Art=ReplaceableTextures\PassiveButtons\PASBTNVampiricAura.blp +Buttonpos=2,2 +Researchart=ReplaceableTextures\CommandButtons\BTNVampiricAura.blp +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Undead\VampiricAura\VampiricAura.mdl +Targetattach=origin + +[BUav] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNVampiricAura.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin +Specialart=Abilities\Spells\Undead\VampiricAura\VampiricAuraTarget.mdl +Specialattach=origin + +// Frost Nova +[AUfn] +Art=ReplaceableTextures\CommandButtons\BTNGlacier.blp +Researchart=ReplaceableTextures\CommandButtons\BTNGlacier.blp +Buttonpos=0,2 +Researchbuttonpos=0,0 +Effectart=Abilities\Spells\Undead\FrostNova\FrostNovaTarget.mdl +Order=frostnova + +// Frost Armor +[AUfa] +Art=ReplaceableTextures\CommandButtons\BTNFrostArmor.blp +Buttonpos=1,2 +Researchart=ReplaceableTextures\CommandButtons\BTNFrostArmor.blp +Researchbuttonpos=1,0 +Order=frostarmor + +// Frost Armor (Autocast) +[AUfu] +Art=ReplaceableTextures\CommandButtons\BTNFrostArmorOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNFrostArmorOff.blp +Buttonpos=1,2 +Unbuttonpos=1,2 +Researchart=ReplaceableTextures\CommandButtons\BTNFrostArmor.blp +Researchbuttonpos=1,0 +Order=frostarmor +Orderon=frostarmoron +Orderoff=frostarmoroff + +[BUfa] +Spelldetail=1 +Buffart=ReplaceableTextures\CommandButtons\BTNFrostArmor.blp +Targetart=Abilities\Spells\Undead\FrostArmor\FrostArmorTarget.mdl +Targetattach=chest +Specialart=Abilities\Spells\Undead\FrostArmor\FrostArmorDamage.mdl +Specialattach=chest + +// Dark Ritual +[AUdr] +Art=ReplaceableTextures\CommandButtons\BTNDarkRitual.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDarkRitual.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Casterart=Abilities\Spells\Undead\DarkRitual\DarkRitualCaster.mdl +Targetart=Abilities\Spells\Undead\DarkRitual\DarkRitualTarget.mdl +Order=darkritual + +// Death And Decay +[AUdd] +Art=ReplaceableTextures\CommandButtons\BTNDeathAndDecay.blp +Researchart=ReplaceableTextures\CommandButtons\BTNDeathAndDecay.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=deathanddecay +Animnames=stand,channel + +[XUdd] +Effectart=Abilities\Spells\Undead\DeathandDecay\DeathandDecayTarget.mdl +Effectsoundlooped=DeathAndDecayLoop + +[BUdd] +Buffart=ReplaceableTextures\CommandButtons\BTNDeathAndDecay.blp +Targetart=Abilities\Spells\Undead\DeathandDecay\DeathandDecayDamage.mdl + +// Cripple +[Acri] +Art=ReplaceableTextures\CommandButtons\BTNCripple.blp +Requires=Rune +Requiresamount=2 +Buttonpos=2,2 +order=cripple + +// Cripple (Warlock) +[Scri] +Art=ReplaceableTextures\CommandButtons\BTNCripple.blp +Buttonpos=2,2 +order=cripple + +[Bcri] +Buffart=ReplaceableTextures\CommandButtons\BTNCripple.blp +Targetart=Abilities\Spells\Undead\Cripple\CrippleTarget.mdl + +// Restore +[Arst] +Art=ReplaceableTextures\CommandButtons\BTNRepairOn.blp +Unart=ReplaceableTextures\CommandButtons\BTNRepairOff.blp +Buttonpos=1,1 +Unbuttonpos=1,1 +Effectsoundlooped=AcolyteRestoreLoop +Order=restoration +Orderon=restorationon +Orderoff=restorationoff +Animnames=stand,work + +// Unholy Aura +[AUau] +Art=ReplaceableTextures\PassiveButtons\PASBTNUnholyAura.blp +Researchart=ReplaceableTextures\CommandButtons\BTNUnholyAura.blp +Buttonpos=2,2 +Researchbuttonpos=2,0 +Targetart=Abilities\Spells\Undead\UnholyAura\UnholyAura.mdl +Targetattach=origin + +[BUau] +Spelldetail=2 +Buffart=ReplaceableTextures\CommandButtons\BTNUnholyAura.blp +Targetart=Abilities\Spells\Other\GeneralAuraTarget\GeneralAuraTarget.mdl +Targetattach=origin + +[AUin] +Researchart=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Art=ReplaceableTextures\CommandButtons\BTNInfernal.blp +Buttonpos=3,2 +Researchbuttonpos=3,0 +Order=inferno +Effectart=Units\Demon\Infernal\InfernalBirth.mdl + +// 'damaged' attachment effect, small +[Xfus] +TargetArt=Environment\UndeadBuildingFire\UndeadSmallBuildingFire2.mdl,Environment\UndeadBuildingFire\UndeadSmallBuildingFire1.mdl +Targetattachcount=2 +Targetattach=sprite,first +Targetattach1=sprite,fourth +Effectsoundlooped=UndeadFireSmall + +// medium +[Xfum] +TargetArt=Environment\UndeadBuildingFire\UndeadLargeBuildingFire2.mdl,Environment\UndeadBuildingFire\UndeadSmallBuildingFire1.mdl,Environment\UndeadBuildingFire\UndeadLargeBuildingFire0.mdl,Environment\UndeadBuildingFire\UndeadSmallBuildingFire2.mdl +Targetattachcount=4 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fourth +Targetattach3=sprite,fifth +Effectsoundlooped=UndeadFireMedium + +// large +[Xful] +TargetArt=Environment\UndeadBuildingFire\UndeadLargeBuildingFire1.mdl,Environment\UndeadBuildingFire\UndeadLargeBuildingFire0.mdl,Environment\UndeadBuildingFire\UndeadLargeBuildingFire0.mdl,Environment\UndeadBuildingFire\UndeadSmallBuildingFire1.mdl,Environment\UndeadBuildingFire\UndeadLargeBuildingFire2.mdl,Environment\UndeadBuildingFire\UndeadSmallBuildingFire0.mdl +Targetattachcount=6 +Targetattach=sprite,first +Targetattach1=sprite,second +Targetattach2=sprite,fifth +Targetattach3=sprite,third +Targetattach4=sprite,fourth +Targetattach5=sprite,sixth +Effectsoundlooped=UndeadFireLarge diff --git a/share/mpq/units/units/undeadabilitystrings.txt b/share/mpq/units/units/undeadabilitystrings.txt new file mode 100644 index 0000000..a1d0742 --- /dev/null +++ b/share/mpq/units/units/undeadabilitystrings.txt @@ -0,0 +1,687 @@ +// Replenish Life & Mana +[Arpb] +Name=补充魔法和生命值 +Tip=恢复(|cffffcc00R|r) +Ubertip="恢复一个目标单位的魔法和生命值。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R + +[Brpb] +Bufftip=恢复 +Buffubertip="这个单位被恢复魔法击中;它的一部分生命值和魔法值被恢复。" + +// Replenish Life (Obsidian Statue) +[Arpl] +Name=枯萎精髓 +Tip=枯萎精髓(|cffffcc00B|r) +Ubertip="恢复附近友军点生命值。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=B +Unhotkey=B + +[Brpl] +Bufftip=枯萎精髓 +Buffubertip="此单位已被枯萎精髓击中;它的生命值已完全恢复。" + +// Spirit Touch (Obsidian Statue) +[Arpm] +Name=灵魂触摸 +Tip=灵魂触摸(|cffffcc00C|r) +Ubertip="恢复附近友军点魔法值。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=C +Unhotkey=C +Order=恢复魔法值 +Orderon=恢复魔法值 开 +Orderoff=恢复魔法值 关 + +[Brpm] +Bufftip=灵魂触摸 +Buffubertip="这个单位被灵魂触摸击中;它的一些能量被恢复了。" + +// Exhume Corpses +[Aexh] +Name=挖掘尸体 +Tip=挖掘尸体 +Ubertip="每秒让绞肉车制造出一具尸体。" + +// Obsidian Statue mana battery +[Amb2] +Name=恢复魔法 +Tip=恢复魔法(|cffffcc00R|r) +Ubertip="恢复一个目标单位的魔法值。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=R +Unhotkey=R +Order=恢复 + +// Destroyer Form +[Aave] +Name=破坏者形态 + +// Orb of Annihilation +[Afak] +Name=毁灭之球 +Tip="毁灭之球(|cffffcc00O|r)" +Ubertip="增加破坏者点的攻击力并让其攻击具有范围伤害效果。" +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。|r|r" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。|r" +Hotkey=O +Unhotkey=O + +// Devour Magic +[Advm] +Name=吞噬魔法 +Tip="吞噬魔法(|cffffcc00D|r)" +Ubertip="吸收一定范围内所有单位身上的魔法效果。每个单位给予破坏者点的生命值和点魔法值。|n|cffffcc00对召唤出来的单位造成点的伤害。|r" +Hotkey=D + +// Aura of Blight +[Aabr] +Name=荒芜光环 +Tip=荒芜光环 +Ubertip="让周围不死族友军单位加快其生命值恢复速度。不能和荒芜光环一起发挥作用。" + +[Babr] +Bufftip=荒芜光环 +Buffubertip="该单位处在荒芜光环的作用之下,因此其生命值恢复速度加快了。" + +// Absorb Mana +[Aabs] +Name=吸收魔法 +Tip="吸收魔法(|cffffcc00B|r)" +Ubertip="将你某个单位的魔法值全部给予破坏者。" +Hotkey=B + +// Burrow +[Abur] +Name=钻地 +EditorSuffix= (穴居恶魔) +Tip=钻地(|cffffcc00B|r) +Untip=出地(|cffffcc00B|r) +Ubertip="穴居恶魔钻入地下从而变为隐形的,在此期间它能以每秒点的速度来恢复自己的生命值。|n穴居恶魔在此期间也不能进行攻击。" +Unubertip="穴居恶魔从地底下钻出来从而重新变为可见的。" +Hotkey=B +Unhotkey=B + +// Burrow (scarab lvl 2) +[Abu2] +Name=钻地 +EditorSuffix= (圣甲虫 等级 2) +Tip=钻地(|cffffcc00B|r) +Untip=出地(|cffffcc00B|r) +Ubertip="让腐尸甲虫钻入地下从而变为隐形的。" +Unubertip="让腐尸甲虫钻出地面从而重新变为可见的。" +Hotkey=B +Unhotkey=B + +// Burrow (scarab lvl 3) +[Abu3] +Name=钻地 +EditorSuffix= (圣甲虫 等级 3) +Tip=钻地(|cffffcc00B|r) +Untip=出地(|cffffcc00B|r) +Ubertip="让腐尸甲虫钻入地下从而变为隐形的。" +Unubertip="让腐尸甲虫钻出地面从而重新变为可见的。" +Hotkey=B +Unhotkey=B + +// Impale +[AUim] +Name=穿刺 +Tip=穿刺(|cffffcc00E|r) - [|cffffcc00等级 1|r],穿刺(|cffffcc00E|r) - [|cffffcc00等级 2|r],穿刺(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。","以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。","以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成点伤害力,并将其轨迹上的敌地面单位抛入空中,使他们晕眩秒。" +Hotkey=E +Researchtip="学习穿刺(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="以地穴领主的巨爪震击地面,射出一道直线形尖刺蔓藤,造成极大伤害并将其轨迹上的敌地面单位抛入空中。|n|n|cffffcc00等级 1|r - 伤害力,秒晕眩。|n|cffffcc00等级 2|r - 伤害力,秒晕眩。|n|cffffcc00等级 3|r - 伤害力,秒晕眩。" +Researchhotkey=E + +[BUim] +Bufftip=穿刺 +Buffubertip="该单位被穿刺攻击了,因此在短时间内会被抛在空中。" + +[AUts] +Name=尖刺外壳 +Tip=尖刺外壳 - [|cffffcc00等级 1|r],尖刺外壳 - [|cffffcc00等级 2|r],尖刺外壳 - [|cffffcc00等级 3|r] +Ubertip="增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。","增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。","增加地穴领主点的护甲并能将敌人%的近战攻击弹射回去。" +Researchtip="学习尖刺外壳(|cffffcc00S|r) - [|cffffcc00等级 %d|r]" +Researchubertip="在地穴领主的身上形成一层带有尖刺的保护壳,增加其防御能力并能弹射敌人的近战攻击。|n|n|cffffcc00等级 1|r - 弹射%的伤害,增加点护甲。|n|cffffcc00等级 2|r - 弹射%的伤害,增加点护甲。|n|cffffcc00等级 3|r - 弹射%点的伤害,增加点护甲。" +Researchhotkey=S + +// Carrion Beetles +[AUcb] +Name=腐尸甲虫 +Tip=腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 1|r],腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 2|r],腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和 -点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。","从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和-点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。","从目标尸体中召唤出条甲虫来。每条甲虫具有点生命值和-点的攻击力。在被杀死之前,甲虫能一直存在。|n最多条甲虫。" +Hotkey=C +Researchtip="学习腐尸甲虫(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="从目标尸体中召唤出条甲虫来。但是每次你只能控制 条甲虫。|n|n|cffffcc00等级 1|r - 点生命值, - 点攻击力。|n|cffffcc00等级 2|r - 点生命值, - 点攻击力,甲虫且具有钻地技能。|n|cffffcc00等级 3|r - 点生命值, - 点攻击力,甲虫且具有钻地技能。" +Researchhotkey=C +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" + +[BUcb] +Bufftip=腐尸甲虫 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Locust Swarm +[AUls] +Name=蝗虫群 +Tip=蝗虫群(|cffffcc00L|r) +Ubertip="召唤出一群蝗虫来攻击敌人。在它们啃咬敌人的血肉的时候,会将其转化为一种能量物质,在蝗虫返回到地穴领主身边的时候该物质能恢复地穴领主的生命值。|n持续 秒。" +Hotkey=L +Researchtip="学习蝗虫群(|cffffcc00L|r)" +Researchubertip="召唤出一群蝗虫来攻击敌人。在它们啃咬敌人的血肉的时候,会将其转化为一种能量物质,在蝗虫返回到地穴领主身边的时候该物质能恢复地穴领主的生命值。|n持续 秒。" +Researchhotkey=L + +[BUlo] +Bufftip=蝗虫群 + +// Meat Wagon Cargo Hold +[Amtc] +Name=保持原位 + +// True Sight +[Atru] +Name=真实视域 +Tip=真实视域 +Ubertip="显示周围的隐形单位。" +EditorSuffix= (阴影) + +// Acolyte Harvest +[Aaha] +Name=采集 +Tip=采集(|cffffcc00G|r) +Ubertip="从缠绕金矿那里采集黄金。" +Untip=返送资源(|cffffcc00R|r) +Unubertip="将采集到的资源送到最近的基地。" +Hotkey=G +Unhotkey=R +EditorSuffix= (侍僧采集黄金) + +// Unsummon +[Auns] +Name=反召唤建筑 +Tip=反召唤建筑物(|cffffcc00U|r) +Ubertip="反召唤建筑物可以取回%的花费资源。" +Hotkey=U + +[Buns] +Bufftip=反召唤 + +// Graveyard +[Agyd] +Name=创建尸体 +//Tip=Create C|cffffcc00o|rrpse +//Ubertip="Create a corpse." +//Hotkey=O + +// Sacrifice (Acolyte's button) +[Alam] +Name=牺牲 +Tip=牺牲(|cffffcc00C|r) +Ubertip="将一个侍僧送入牺牲深渊将其变成阴影。阴影是一种隐形单位,本身也能看到敌方的隐形单位。|n阴影不能攻击敌人。" +Hotkey=C +EditorSuffix= (侍僧) + +// Sacrifice (Sacrificial Pit's button) +[Asac] +Name=牺牲 +Tip=牺牲(|cffffcc00C|r) +Ubertip="将一个侍僧送入牺牲深渊将其变成阴影。阴影是一种隐形单位,本身也能看到敌方的隐形单位。|n阴影不能攻击敌人。" +Hotkey=C +EditorSuffix= (牺牲深渊) + +// Cannibalize +[Acan] +Name=吞食尸体 +Tip=吞食尸体(|cffffcc00C|r) +Ubertip="消耗周围的某个尸体来以每秒点的速度恢复自己的生命值。" +Hotkey=C + +// Cannibalize +[Acn2] +Name=吞食尸体 +Tip=吞食尸体(|cffffcc00C|r) +Ubertip="吞食一个附近的尸体,每秒治疗点生命值。" +Hotkey=C + +// Spider Attack +[Aspa] +Name=蜘蛛攻击 +// This ability modifies the unit's attack. + +[Bspa] +Bufftip=小蜘蛛 + +// Web +[Aweb] +Name=蛛网 +Tip=蛛网(|cffffcc00W|r) +Untip="|cffc3dbff|cffc3dbff点击右键以启动自动施放功能。" +Ubertip="将目标单位用一张网来捕获到地面,从而地面上的单位可以对其进行攻击。|n持续秒。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=W +Unhotkey=W + +// Web buff on ground units +[Bweb] +Bufftip=蛛网 +Buffubertip="该单位遭到了蛛网的攻击,因此被固定在了地面上而不能移动。" +EditorSuffix= (地面的) + +// Web buff on air units +[Bwea] +Bufftip=蛛网 +Buffubertip="该单位遭到了蛛网的攻击,因此被固定在了地面上而不能移动。" +EditorSuffix= (空中的) + +// Stone Form +[Astn] +Name=石像形态 +Tip=石像形态(|cffffcc00F|r) +Ubertip="将石像鬼变成一尊雕像。雕像对所有魔法免疫,护甲也会增强,而且还能以每秒点的速度来恢复自己的生命值。|n石像鬼在这种状态下不能攻击敌人。" +Hotkey=F +Untip=石像鬼状态(|cffffcc00F|r) +Unubertip="让石像鬼重新回到空中。" +Unhotkey=F + +// Load Corpse +[Amel] +Name=得到尸体 +Tip=得到尸体(|cffffcc00C|r) +Ubertip="捡起附近的一个尸体来做备用。" +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=C +Unhotkey=C + +// Unload Corpse +[Amed] +Name=卸载尸体 +Tip=卸载尸体(|cffffcc00D|r) +Ubertip="将所有尸体都卸载下来以立刻使用它们。" +Hotkey=D + +// Disease Cloud +[Aapl] +Name=疾病云雾 +Tip=疾病云雾 +Ubertip="用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。" + +[Aap1] +Name=疾病云雾 +Tip=疾病云雾 +Ubertip="用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。" + +// Disease Cloud +[Aap2] +Name=疾病云雾 +EditorSuffix= (瘟疫守卫) + +[Aap3] +Name=疾病云雾 +Tip=疾病云雾 +Ubertip="用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。" +EditorSuffix= (中立敌对) + +[Aap4] +Name=疾病云雾 +Tip=疾病云雾 +Ubertip="用疾病来感染周围的敌人。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。" +EditorSuffix= (中立敌对 无伤害) + +[Bapl] +Bufftip=疾病 +Buffubertip="该单位受到了疾病云雾的攻击,因此会在短时间内持续地受到伤害。" + +// Disease Cloud +[Apts] +Name=疾病云雾 +Tip=疾病云雾 +Ubertip="在每次攻击的时候都能释放出疾病云雾。疾病云雾每秒能对敌人造成点的伤害。|n持续秒。" +EditorSuffix= (绞肉车) + +// Frost Breath +[Afrb] +Name=霜冻呼吸 +// This ability modifies the unit's attack. + +// Frost Attack +[Afra] +Name=霜之攻击 +Tip=霜之攻击 +Ubertip="给单位的攻击增加冰冻效果,可以减慢敌单位的移动速度。" + +// Frost Attack (1,2 button pos version) +[Afr2] +Name=霜冻攻击 +Tip=霜冻攻击 +Ubertip="在单位攻击的基础上增加冰冻效果,能减慢敌人的移动速度。" + +// Freezing Breath +[Afrz] +Name=冰冻喷吐 +Tip=冰冻喷吐 +Ubertip="用在建筑物上时,能在段时间内使其失去应有的功效。|n持续秒。" + +[Bfrz] +Bufftip=冰冻喷吐 +Buffubertip="该单位被冻住了,因此失去了原有的功效并不能被修理。" + +// Raise Dead +[Arai] +Name=复活死尸 +Tip=复活死尸(|cffffcc00R|r) +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Ubertip="从一具尸体中召唤出个骷髅战士。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=R +Unhotkey=R + +[Brai] +Bufftip=骷髅战士 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Unholy Frenzy +[Auhf] +Name=邪恶狂热 +Tip=邪恶狂热(|cffffcc00U|r) +Ubertip="增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。" +Hotkey=U + +// Unholy Frenzy (Warlock) +[Suhf] +Name=邪恶狂热 +Tip=邪恶狂热(|cffffcc00U|r) +Ubertip="增加目标单位%的攻击速度,但是每秒也会消耗目标点的生命值。|n持续秒。" +Hotkey=U +EditorSuffix= (巫师) + +[Buhf] +Bufftip=邪恶狂热 +Buffubertip="该单位受到了邪恶狂热的作用,因此攻击速度加快了,但是也会持续地受到伤害。" + +// Curse +[Acrs] +Name=诅咒 +Tip=诅咒(|cffffcc00C|r) +Ubertip="诅咒敌人的某个单位使其有 %的概率不能击中自己的目标。|n持续秒。" +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=C +Unhotkey=C + +[Bcrs] +Bufftip=诅咒 +Buffubertip="该单位受到了诅咒的作用,因此在攻击的时候会有一定的概率击空。" + +// Anti-magic Shell +[Aams] +Name=反魔法外壳 +Tip=反魔法外壳(|cffffcc00N|r) +Ubertip="使得目标单位对所有的魔法免疫。|n持续秒。" +Hotkey=N + +// Anti-magic Shell +[Aam2] +Name=反魔法外壳 +Tip=反魔法外壳(|cffffcc00N|r) +Ubertip="建立一道屏障,使得目标单位能少受点的魔法伤害。|n持续秒。" +Hotkey=N +EditorSuffix= (魔法抗性) + +[Bams] +Bufftip=反魔法外壳 +Buffubertip="该单位具有反魔法外壳,因此对魔法免疫,反魔法外壳可以被驱逐掉。" + +[Bam2] +Bufftip=反魔法外壳 +Buffubertip="这个单位具有反魔法外壳,攻击魔法对于该单位的伤害效果将减少。" +EditorSuffix= (额外的) + +// Possession +[Apos] +Name=占据 +Tip=占据(|cffffcc00O|r) +Ubertip="占据敌方目标单位的灵魂,从而让您能永久性地控制该单位。|n占据魔法不能用在飞行单位,英雄和高于级的野生单位身上。" +Hotkey=O + +// Possession +[Aps2] +Name=占据 +Tip=占据(|cffffcc00O|r) +Ubertip="将目标单位和女妖震晕秒,在这个期间,女妖将受到额外的伤害。女妖会将永久地控制目标单位,但是与此同时,施法者的身体也将会被毁掉。|n占据魔法不能被使用在飞行单位,英雄和级别高于的野生单位身上。" +Hotkey=O +EditorSuffix= (通魔) + +[Bpos] +Bufftip=占据 +Buffubertip="该单位被占据了。" + +// Death Coil +[AUdc] +Name=死亡缠绕 +Tip=死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 1|r],死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 2|r],死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。","能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。","能恢复友军某个不死单位点的生命值或者对敌人的某个单位造成一半数值的伤害。" +Hotkey=C +Researchtip="学习死亡缠绕(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能治疗友军的某个不死单位或者伤害敌人的某个单位。|n|n|cffffcc00等级 1|r - 恢复点生命值。|n|cffffcc00等级 2|r - 恢复点生命值。|n|cffffcc00等级 3|r - 恢复点生命值。" +Researchhotkey=C + +// Unholy Aura +[AUau] +Name=邪恶光环 +Tip=邪恶光环 - [|cffffcc00等级 1|r],邪恶光环 - [|cffffcc00等级 2|r],邪恶光环 - [|cffffcc00等级 3|r] +Ubertip="增加周围友军单位%的移动速度和生命恢复速度。","增加周围友军单位%的移动速度和生命恢复速度。","增加周围友军单位%的移动速度和生命恢复速度。" +Researchtip="学习邪恶光环(|cffffcc00U|r) - [|cffffcc00等级 %d|r]" +Researchubertip="增加周围友军单位的移动速度和生命恢复速度。|n|n|cffffcc00等级 1|r - 增加%的移动速度和小幅度的生命恢复速度。|n|cffffcc00等级 2|r - 增加%的移动速度和中等幅度的生命恢复速度。|n|cffffcc00等级 3|r - 增加%的移动速度和大幅度的生命恢复速度。" +Researchhotkey=U + +[BUau] +Bufftip=邪恶光环 +Buffubertip="该单位处在邪恶光环的作用之下; 因此它的移动速度和生命值恢复速度都加快了。" + +// Death Pact +[AUdp] +Name=死亡契约 +Tip=死亡契约(|cffffcc00E|r) - [|cffffcc00等级 1|r],死亡契约(|cffffcc00E|r) - [|cffffcc00等级 2|r],死亡契约(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。","杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。","杀死一个友军单位,将其%的生命值转化成死亡骑士的生命值。" +Hotkey=E +Researchtip="学习死亡契约(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="杀死一个友军单位,将其一定百分比的生命值转成死亡骑士的生命值。|n|n|cffffcc00等级 1|r - 转化%。|n|cffffcc00等级 2|r -转化 %。|n|cffffcc00等级 3|r - 转化%。" +Researchhotkey=E + +// Animate Dead +[AUan] +Name=操纵死尸 +Tip=操纵死尸(|cffffcc00D|r) +Ubertip="复活个阵亡单位,持续时间为秒。" +Hotkey=D +Researchtip="学习操纵死尸(|cffffcc00D|r)" +Researchubertip="复活个阵亡单位,持续时间为秒。" +Researchhotkey=D +Globalmessage= +Globalsound= + +[BUan] +Bufftip=操纵死尸 +Buffubertip="召唤出来的单位会受到驱逐魔法的伤害。" + +// Carrion Swarm +[AUcs] +Name=腐臭蜂群 +Tip=腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 1|r],腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 2|r],腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 3|r] +Ubertip="放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。","放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。","放出一群蝙蝠和昆虫对一线上的敌人造成点的伤害。" +Hotkey=C +Researchtip="学习腐臭蜂群(|cffffcc00C|r) - [|cffffcc00等级 %d|r]" +Researchubertip="放出一群蝙蝠和昆虫对一线上的敌人造成一定的伤害。|n|n|cffffcc00等级 1|r - 对每个单位造成点的伤害。|n|cffffcc00等级 2|r - 对每个单位造成点的伤害。|n|cffffcc00等级 3|r - 对每个单位造成点的伤害。" +Researchhotkey=C + +// Sleep +[AUsl] +Name=睡眠 +Tip=睡眠(|cffffcc00E|r) - [|cffffcc00等级 1|r],睡眠(|cffffcc00E|r) - [|cffffcc00等级 2|r],睡眠(|cffffcc00E|r) - [|cffffcc00等级 3|r] +Ubertip="在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。","在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。","在秒内使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。" +Hotkey=E +Researchtip="学习睡眠(|cffffcc00E|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使目标单位处于睡眠状态。该单位被攻击以后会自动醒来。|n|n|cffffcc00等级 1|r -秒的睡眠时间,消耗点魔法。|n|cffffcc00等级 2|r -秒的睡眠时间,消耗点魔法。|n|cffffcc00等级 3|r -秒的睡眠时间,消耗点魔法。" +Researchhotkey=E + +[BUsl] +Bufftip=睡眠 +Buffubertip="该单位正在睡眠,因此其不能移动,攻击或者施放魔法。如果遭到攻击就会自动苏醒过来。" + +// Vampiric Aura +[AUav] +Name=吸血光环 +Tip=吸血光环 - [|cffffcc00等级 1|r],吸血光环 - [|cffffcc00等级 2|r],吸血光环 - [|cffffcc00等级 3|r] +Ubertip="附近的单位可以将%对敌人的伤害值转成自己的生命值。","附近的单位可以将%对敌人的伤害值转成自己的生命值。","附近的单位可以将%对敌人的伤害值转成自己的生命值。" +Researchtip="学习吸血光环(|cffffcc00V|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能对敌人进行一轮冰冻攻击,对其造成一定伤害并使其减速。|n|n|cffffcc00等级 1|r -点常规伤害,点新星伤害。|n|cffffcc00等级 2|r -点常规伤害,点新星伤害。|n|cffffcc00等级 3|r -点常规伤害,点新星伤害。" +Researchhotkey=V + +[BUav] +Bufftip=吸血光环 +Buffubertip="该单位处在吸血光环的作用之下,因此它对敌人的攻击会恢复自己的生命值。" + +// Frost Nova +[AUfn] +Name=霜冻新星 +Tip=霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 1|r],霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 2|r],霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 3|r] +Ubertip="对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。","对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。","对敌人造成点的常规伤害和的新星伤害。所具有的冰冻效果能在秒内减慢敌人的移动和进攻速度。" +Hotkey=N +Researchtip="学习霜冻新星(|cffffcc00N|r) - [|cffffcc00等级 %d|r]" +Researchubertip="能对敌人进行一轮冰冻攻击,对其造成一定伤害并使其减速。|n|n|cffffcc00等级 1|r -点常规伤害,点新星伤害。|n|cffffcc00等级 2|r -点常规伤害,点新星伤害。|n|cffffcc00等级 3|r -点常规伤害,点新星伤害。" +Researchhotkey=N + +// Frost Armor +[AUfa] +Name=霜冻护甲 +Tip=霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 1|r],霜冻护甲(|cffffcc00F|r)- [|cffffcc00等级 2|r],霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。" +Hotkey=F +Researchtip="学习霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使目标身上具有一层霜冻保护。这保护层能增加一定的护甲并使近战攻击该目标的敌人在一定时间内减速。|n|n|cffffcc00等级 1|r - 增加点护甲。|n|cffffcc00等级 2|r - 增加点护甲。|n|cffffcc00等级 3|r - 增加点护甲。" +Researchhotkey=F + +// Frost Armor (Autocast) +[AUfu] +Name=霜冻护甲 +EditorSuffix= (自动施放) +Tip=霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 1|r],霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 2|r],霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 3|r] +Ubertip="使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。","使目标身上具有一层霜冻保护。这保护层能增加点的护甲并使近战攻击该目标的敌人在秒内减速。|n持续秒。" +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=F +Researchtip="学习霜冻护甲(|cffffcc00F|r) - [|cffffcc00等级 %d|r]" +Researchubertip="使目标身上具有一层霜冻保护。这保护层能增加一定的护甲并使近战攻击该目标的敌人在一定时间内减速。|n|n|cffffcc00等级 1|r - 增加点护甲。|n|cffffcc00等级 2|r - 增加点护甲。|n|cffffcc00等级 3|r - 增加点护甲。" +Researchhotkey=F + +[BUfa] +Bufftip=霜冻护甲 +Buffubertip="该单位有着霜冻护甲; 因此其护甲加强了,攻击它的近战单位也会被在短时间内减速。" + +// Dark Ritual +[AUdr] +Name=黑暗仪式 +Tip=黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 1|r],黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 2|r],黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 3|r] +Ubertip="牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。","牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。","牺牲一个友军单位来将其%的生命值转化成巫妖的魔法值。" +Hotkey=R +Researchtip="学习黑暗仪式(|cffffcc00R|r) - [|cffffcc00等级 %d|r]" +Researchubertip="牺牲一个友军单位来将其一定百分比的生命值转化成巫妖的魔法值。|n|n|cffffcc00等级 1|r - 转化%的生命值。|n|cffffcc00等级 2|r - 转化%的生命值。|n|cffffcc00等级 3|r - 转化%的生命值。" +Researchhotkey=R + +// Death And Decay +[AUdd] +Name=死亡凋零 +Tip=死亡凋零(|cffffcc00D|r) +Ubertip="能以每秒%的速度来消耗有效范围内一切单位和建筑物的生命值。也能摧毁树木。|n持续秒。" +Hotkey=D +Researchtip="学习死亡凋零(|cffffcc00D|r)" +Researchubertip="能以每秒%的速度来消耗有效范围内一切单位和建筑物的生命值。也能摧毁树木。|n持续秒。" +Researchhotkey=D + +[BUdd] +Bufftip=死亡凋零 +Buffubertip="该单位受到了死亡凋零的作用,因此会持续地受到伤害。" + +// Cripple +[Acri] +Name=残废 +Tip=残废(|cffffcc00C|r) +Ubertip="减慢目标单位%的移动速度和%攻击速度,并减弱其%的攻击力。|n持续秒。" +Hotkey=C + +// Cripple (Warlock) +[Scri] +Name=残废 +Tip=残废(|cffffcc00C|r) +Ubertip="减慢目标单位%的移动速度和%攻击速度,并减弱其%的攻击力。|n持续秒。" +Hotkey=C +EditorSuffix= (巫师) + +[Bcri] +Bufftip=残废 +Buffubertip="该单位受到了残废技能的作用,因此其移动速度和攻击速度都减慢了,攻击力也被削弱了许多。" + +// Restore +[Arst] +Name=恢复 +Tip=恢复(|cffffcc00R|r) +Ubertip="使得侍僧能修复建筑物和机械单位。" +Untip="|cffc3dbff点击右键以启动自动施放功能。" +Unubertip="|cffc3dbff点击右键以取消自动施放功能。" +Hotkey=R +Unhotkey=R + +[AUin] +Name=地狱火 +Tip=地狱火(|cffffcc00N|r) +Ubertip="召唤出一地狱火恶魔从天而降,对地面上的敌人造成点的伤害,并在秒内使其处于昏晕状态。地狱火恶魔持续秒。" +Hotkey=N +Researchtip=学习地狱火(|cffffcc00N|r) +Researchubertip="召唤出一地狱火恶魔从天而降,对地面上的敌人造成点的伤害,并在秒内使其处于昏晕状态。地狱火恶魔持续秒。" +Researchhotkey=N + +//---------------------------------------------------- +// Buffs with no in-game text +// EditorName is for the Object Editor list only + +[BUcs] +EditorName=腐臭蜂群(施法者) + +[BUsp] +EditorName=睡眠 (暂停) + +[BUst] +EditorName=睡眠(震晕) + +[BUts] +EditorName=尖刺外壳 + +[Bplg] +EditorName=疾病云雾 + +[BUad] +EditorName=操纵死尸(额外的) + +[Bpoc] +EditorName=占据 (施法者) + +[XUdd] +EditorName=死亡凋零(效果) + +[Xfus] +EditorName=建筑物伤害 – 不死族 小 + +[Xfum] +EditorName=建筑物伤害 – 不死族 中 + +[Xful] +EditorName=建筑物伤害 – 不死族 大 diff --git a/share/mpq/units/units/undeadunitfunc.txt b/share/mpq/units/units/undeadunitfunc.txt new file mode 100644 index 0000000..7612254 --- /dev/null +++ b/share/mpq/units/units/undeadunitfunc.txt @@ -0,0 +1,421 @@ +[Ucrl] +Art=ReplaceableTextures\CommandButtons\BTNHeroCryptLord.blp +Buttonpos=0,1 +RequiresCount=3 +Requires= +Requires1=unp1 +Requires2=unp2 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-cryptlord.blp + +[uaco] +Builds=unpl,uzig,usep,ugrv,uaod,utod,uslh,ubon,usap,ugol,utom +Art=ReplaceableTextures\CommandButtons\BTNAcolyte.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[uabo] +Requires=unp2 +Art=ReplaceableTextures\CommandButtons\BTNAbomination.blp +Buttonpos=1,0 +Specialart=Units\Undead\Abomination\AbominationExplosion.mdl +Attachmentanimprops=large + +[Udea] +Art=ReplaceableTextures\CommandButtons\BTNHeroDeathKnight.blp +Buttonpos=0,2 +RequiresCount=3 +Requires= +Requires1=unp1 +Requires2=unp2 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-deathknight.blp + +[uban] +//Requires=unp2 +Art=ReplaceableTextures\CommandButtons\BTNBanshee.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\BansheeMissile\BansheeMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-banshee.blp + +[ucrm] +Requires=ugrv +Art=ReplaceableTextures\CommandButtons\BTNCryptFiend.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissile.mdl +Missilearc=0.15 +Missilespeed=500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[ucry] +DependencyOr=ucrm +// do NOT put a similar DependencyOr under ucrm +Requires=ugrv +Art=ReplaceableTextures\CommandButtons\BTNCryptFiend.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\CryptFiendMissile\CryptFiendMissile.mdl +Missilearc=0.15 +Missilespeed=500 +Specialart=Objects\Spawnmodels\Demon\DemonLargeDeathExplode\DemonLargeDeathExplode.mdl +Attachmentanimprops=medium + +[Udre] +Art=ReplaceableTextures\CommandButtons\BTNHeroDreadLord.blp +Buttonpos=1,2 +RequiresCount=3 +Requires= +Requires1=unp1 +Requires2=unp2 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-dreadlord.blp + +[ufro] +Art=ReplaceableTextures\CommandButtons\BTNFrostWyrm.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\FrostWyrmMissile\FrostWyrmMissile.mdl +Missilearc=0.1 +Missilespeed=800 +MissileHoming=1 +Attachmentanimprops=large + +[ugar] +Requires=ugrv,unp2 +DependencyOr=ugrm +// do NOT put a similar DependencyOr under ugrm +Art=ReplaceableTextures\CommandButtons\BTNGargoyle.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\GargoyleMissile\GargoyleMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium + +[ugrm] +Requires=ugrv,unp2 +Art=ReplaceableTextures\CommandButtons\BTNStoneForm.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\GargoyleMissile\GargoyleMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=medium +Attachmentlinkprops=alternate + +[ugho] +Art=ReplaceableTextures\CommandButtons\BTNGhoul.blp +Buttonpos=0,0 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl + +[Ulic] +Art=ReplaceableTextures\CommandButtons\BTNLichVersion2.blp +Buttonpos=2,2 +Missileart=Abilities\Weapons\LichMissile\LichMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +RequiresCount=3 +Requires= +Requires1=unp1 +Requires2=unp2 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Attachmentanimprops=medium +ScoreScreenIcon=UI\Glues\ScoreScreen\scorescreen-hero-lich.blp + +[unec] +Art=ReplaceableTextures\CommandButtons\BTNNecromancer.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\NecromancerMissile\NecromancerMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UndeadLargeDeathExplode\UndeadLargeDeathExplode.mdl +Casterupgradeart=UI\Widgets\Console\Human\infocard-necromancer.blp + +[uske] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonWarrior.blp + +[uplg] +Art=ReplaceableTextures\PassiveButtons\PASBTNPlagueCloud.blp + +[uskm] +Art=ReplaceableTextures\CommandButtons\BTNSkeletonMage.blp +Missileart=Abilities\Weapons\SkeletalMageMissile\SkeletalMageMissile.mdl +Missilearc=0.00 +Missilespeed=900 +MissileHoming=1 + +[uaod] +Trains=Udea,Ulic,Udre,Ucrl +Art=ReplaceableTextures\CommandButtons\BTNAltarOfDarkness.blp +Buttonpos=1,1 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium +Revive=1 + +[unpl] +Upgrade=unp1 +Trains=uaco +Researches=Rupm +Art=ReplaceableTextures\CommandButtons\BTNNecropolis.blp +Buttonpos=0,0 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\ZigguratMissile\ZigguratMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +[unp1] +Upgrade=unp2 +Trains=uaco +Researches=Rupm +Animprops=upgrade,first +Art=ReplaceableTextures\CommandButtons\BTNHallOfTheDead.blp +Buttonpos=0,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\ZigguratMissile\ZigguratMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +[unp2] +Requires=uaod +Trains=uaco +Researches=Rupm +Animprops=upgrade,second +Art=ReplaceableTextures\CommandButtons\BTNBlackCitadel.blp +Buttonpos=0,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\ZigguratMissile\ZigguratMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +[usep] +Trains=ugho,ucry,ugar +Art=ReplaceableTextures\CommandButtons\BTNCrypt.blp +Buttonpos=1,0 +Researches=Ruac,Ruwb,Rugf,Rusf,Rubu +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +[utod] +Requires=unp1,ugrv +Researches=Rune,Ruba +Trains=unec,uban +Art=ReplaceableTextures\CommandButtons\BTNTempleOfTheDamned.blp +Buttonpos=2,1 +Researches=Rusl,Rusm +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +// Tomb of Relics +[utom] +Art=ReplaceableTextures\CommandButtons\BTNTombOfRelics.blp +Buttonpos=2,2 +Makeitems=rnec,plcl,skul,phea,pman,stwp,ocor,shea +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +// Undead Controlled Gold Mine +[ugol] +Art=ReplaceableTextures\CommandButtons\BTNGoldMine.blp +Buttonpos=2,0 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +[uzig] +Upgrade=uzg1,uzg2 +Art=ReplaceableTextures\CommandButtons\BTNZiggurat.blp +Buttonpos=0,1 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +[uzg1] +Requires=ugrv +Animprops=upgrade,first +Art=ReplaceableTextures\CommandButtons\BTNZigguratUpgrade.blp +Buttonpos=0,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\ZigguratMissile\ZigguratMissile.mdl +Missilearc=0.15 +Missilespeed=900 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +[uzg2] +Animprops=upgrade,second +Art=ReplaceableTextures\CommandButtons\BTNFrostTower.blp +Buttonpos=1,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Missileart=Abilities\Weapons\ZigguratFrostMissile\ZigguratFrostMissile.mdl +Missilearc=0.00 +Missilespeed=1200 +MissileHoming=1 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +[umtw] +Art=ReplaceableTextures\CommandButtons\BTNMeatWagon.blp +Buttonpos=0,0 +Missileart=Abilities\Weapons\MeatwagonMissile\MeatwagonMissile.mdl +Missilearc=0.3 +Missilespeed=900 +Attachmentanimprops=large + +[ubon] +Requires=unp2,usap +Trains=ufro +Researches=Rufb +Art=ReplaceableTextures\CommandButtons\BTNBoneyard.blp +Buttonpos=1,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +[usap] +Requires=unp1 +Art=ReplaceableTextures\CommandButtons\BTNSacrificialPit.blp +Buttonpos=0,2 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=medium + +[uslh] +Requires=unp1,ugrv +Researches=Rupc,Rusp,Ruex +Trains=umtw,uabo,uobs +Art=ReplaceableTextures\CommandButtons\BTNSlaughterhouse.blp +Buttonpos=3,1 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl + +// shade +[ushd] +Art=ReplaceableTextures\CommandButtons\BTNShade.blp + +// graveyard +[ugrv] +Researches=Rume,Ruar,Rura,Rucr +Art=ReplaceableTextures\CommandButtons\BTNGraveyard.blp +Buttonpos=3,0 +BuildingSoundLabel=UndeadBuildingConstructionLoop +LoopingSoundFadeIn=512 +LoopingSoundFadeOut=512 +Specialart=Objects\Spawnmodels\Undead\UCancelDeath\UCancelDeath.mdl +Attachmentanimprops=large + +// carrion scarabs +[ucs1] +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +[ucs2] +DependencyOr=ucsB +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +[ucsB] +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +[ucs3] +DependencyOr=ucsC +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +[ucsC] +Art=ReplaceableTextures\CommandButtons\BTNCarrionScarabs.blp + +// locust +[uloc] +Art=ReplaceableTextures\CommandButtons\BTNLocustSwarm.blp +Missileart=Abilities\Weapons\LocustMissile\LocustMissile.mdl +Missilearc=0.15 +Missilespeed=500 + +// obsidian statue +[uobs] +DependencyOr=ubsp +Art=ReplaceableTextures\CommandButtons\BTNObsidianStatue.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\FarseerMissile\FarseerMissile.mdl +Missilearc=0.15 +Missilespeed=1200 +MissileHoming=1 +Attachmentanimprops=large +Requires=utom + +// obsidian destroyer +[ubsp] +Art=ReplaceableTextures\CommandButtons\BTNDestroyer.blp +Missileart=Abilities\Weapons\AvengerMissile\AvengerMissile.mdl +Missilearc=0.0 +Missilespeed=900 +MissileHoming=1 +Attachmentanimprops=large +Attachmentlinkprops=alternate +Animprops=alternate + +//#RESTNOBETA +[ubot] +Art=ReplaceableTextures\CommandButtons\BTNUndeadTransport.blp +Attachmentanimprops=large +Buttonpos=0,0 + +[udes] +Art=ReplaceableTextures\CommandButtons\BTNUndeadDestroyer.blp +Buttonpos=1,0 +Missileart=Abilities\Weapons\BoatMissile\BoatMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large + +[uubs] +Art=ReplaceableTextures\CommandButtons\BTNUndeadBattleShip.blp +Buttonpos=2,0 +Missileart=Abilities\Weapons\BoatMissile\BoatMissile.mdl +Missilearc=0.10 +Missilespeed=900 +Attachmentanimprops=large \ No newline at end of file diff --git a/share/mpq/units/units/undeadunitstrings.txt b/share/mpq/units/units/undeadunitstrings.txt new file mode 100644 index 0000000..4abf54c --- /dev/null +++ b/share/mpq/units/units/undeadunitstrings.txt @@ -0,0 +1,267 @@ +[Ucrl] +Name=地穴领主 +Propernames=特比斯,特费司,阿努比,墨菲斯,圣荷如斯,内皮理,阿拉卡拉穆,托尔藤,帕拉何 +Tip=召唤地穴领主(|cffffcc00C|r) +Hotkey=C +Ubertip="战士型英雄,擅长于控制昆虫进行攻击。能学习到穿刺,尖刺外壳, 腐尸甲虫和蝗虫群这四个技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活地穴首领(|cffffcc00C|r) +Awakentip=复活地穴首领(|cffffcc00C|r) + +[uaco] +Name=侍僧 +Tip=训练侍僧(|cffffcc00C|r) +Ubertip="不死族的基本工人单位。能召唤建筑物,采集黄金和进行修复工作。在牺牲深渊里牺牲以后侍僧还可以变为阴影。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=C + +[uabo] +Name=憎恶 +Tip=训练憎恶(|cffffcc00A|r) +Ubertip="重型的近战单位。能学习到疾病云雾和吞食尸体技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=A + +[Udea] +Name=死亡骑士 +Propernames=夜之哀伤,灵之领主,死亡风暴,玛达泽尔,黑神领主,光之领主,血浴男爵,血刃男爵,恐惧公爵,愤之公爵,霜之男爵,黑镰领主,哀冬公爵,皮尔喏得尔男爵,摩特男爵 +Tip=召唤死亡骑士(|cffffcc00D|r) +Ubertip="是人族圣骑士的邪恶对手。能学习到死亡缠绕,死亡契约,邪恶光环和操纵死尸这四种技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活死亡骑士(|cffffcc00D|r) +Awakentip=复活死亡骑士(|cffffcc00D|r) +Hotkey=D + +[uban] +Name=女妖 +Tip=训练女妖(|cffffcc00B|r) +Ubertip="魔法单位,一开始能施放诅咒技能,从而让敌人有一定的概率击空。随后还能学习到反魔法外壳和占据魔法。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=B +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 诅咒","- 诅咒|n- 反魔法外壳","- 诅咒|n- 反魔法外壳|n- 占据" + +[ucrm] +Name=钻入地下的穴居恶魔 +Tip=训练穴居恶魔(|cffffcc00F|r) +Ubertip="远程攻击单位。能学习到蛛网和钻地技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F + +[ucry] +Name=穴居恶魔 +Tip=训练穴居恶魔(|cffffcc00F|r) +Ubertip="远程攻击单位。能学习到蛛网和钻地技能。|n|n|cffffcc00能攻击地面单位。|r" +Hotkey=F + +[Udre] +Name=恐惧魔王 +Propernames=特罗达尔,内罗司,布里克尔,内卡罗司,费罗司,德塞克斯,玛迪比恩,尼克塞塔斯,哥尔比恩,拉塞盖罗斯,阿玛克斯,滋费恩,罗塞拉斯,泽内塔,穆里奇,阿尔盖蒙,白尼或尔,维恩盖 +Tip=召唤恐惧魔王(|cffffcc00E|r) +Ubertip="一种狡猾的英雄,能学习到腐臭蜂群,睡眠,吸血光环和地狱火技能。|n|n|cffffcc00能攻击地面单位。|r" +Revivetip=复活恐惧魔王(|cffffcc00E|r) +Awakentip=复活恐惧魔王(|cffffcc00E|r) +Hotkey=E + +[ufro] +Name=冰霜巨龙 +Tip=训练冰霜巨龙(|cffffcc00F|r) +Ubertip="重型的飞行单位,能学习到冰冻喷吐技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=F + +[ugar] +Name=石像鬼 +Tip=训练石像鬼(|cffffcc00A|r) +Ubertip="飞行单位。能学习到石像形态技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=A + +[ugrm] +Name=石像形态下的石像鬼 +Tip=训练石像鬼(|cffffcc00A|r) +Ubertip="飞行单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=A + +[ugho] +Name=食尸鬼 +Tip=训练食尸鬼(|cffffcc00G|r) +Ubertip="基本的地面单位,也能采集木材。能学习到吞食尸体和食尸鬼狂热技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +Hotkey=G + +[Ulic] +Name=巫妖 +Propernames=奥丁-霜之毒,拉斯-破碎之刺,摩本特-法尔,瑞奇-冬之颤,召唤师阿拉吉,卡里那吉-丧钟,拉克-冰颅,迪恩-霜火,卡里斯-幽灵之子,维尼穆-冰刃,永恒之纳泽,拉斯-霜之语,霜冻舞者,奇那魔斯,克瑞普提克-屠魂者,阿兰迪尔-凌 +Tip=召唤巫妖(|cffffcc00L|r) +Ubertip="一种神秘的英雄,能学习到霜冻护甲,霜冻新星,黑暗仪式和死亡凋零技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Revivetip=复活巫妖(|cffffcc00L|r) +Awakentip=复活巫妖(|cffffcc00L|r) +Hotkey=L + +[unec] +Name=不死族巫师 +Tip=训练不死族巫师(|cffffcc00N|r) +Ubertip="一种魔法单位。一开始能施放复活死尸技能。随后还能学习到邪恶狂热和残废技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=N +Casterupgradename=初级,专家级,大师级 +Casterupgradetip="- 复活死尸","- 复活死尸|n- 邪恶狂热","- 复活死尸|n- 邪恶狂热|n- 残废" + +[uske] +Name=骷髅战士 +Tip=召唤骷髅战士 + +[uskm] +Name=骷髅魔法师 +Tip=召唤骷髅魔法师 + +[uplg] +Name=疾病云雾 + +[uaod] +Name=黑暗祭坛 +Tip=召唤黑暗祭坛(|cffffcc00A|r) +Ubertip="能召唤新的英雄和复活阵亡的英雄。" +Hotkey=A + +[unpl] +Name=大墓地 +Tip=召唤大墓地(|cffffcc00N|r) +Ubertip="不死族的基本建筑物。能训练出侍僧和存贮采集到木材资源。在升级到了亡者大厅和黑色城堡之后能让玩家建造许多新的建筑物和单位。" +Hotkey=N + +[unp1] +Name=亡者大厅 +Tip=升级到亡者大厅(|cffffcc00U|r) +Ubertip="升级到了亡者大厅之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U + +[unp2] +Name=黑色城堡 +Tip=黑色城堡(|cffffcc00U|r) +Ubertip="升级到了亡者大厅之后能让玩家建造许多新的建筑物和单位。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=U + +[usep] +Name=地穴 +Tip=召唤地穴(|cffffcc00C|r) +Ubertip="主要的产兵建筑物,能训练出食尸鬼,穴居恶魔和石像鬼。还包括对食尸鬼狂热,吞食尸体,石像形态,蛛网和钻地的研究。" +Hotkey=C + +[utod] +Name=诅咒神庙 +Tip=召唤诅咒神庙(|cffffcc00T|r) +Ubertip="能训练出不死族巫师和女妖。|n还包括对不死族巫师和女妖的升级,骨质增强术和骷髅法术也是在这里研究的。" +Hotkey=T + +[utom] +Name=古墓废墟 +Hotkey=R +Tip=召唤古墓废墟(|cffffcc00R|r) +Ubertip="建造出一个能出售物品的商店。商店内的物品种类取决于你的大墓地的升级情况(大墓地, 亡者大厅, 黑色城堡)以及你所拥有的建筑物种类。" + +[ugol] +Name=闹鬼金矿 +Tip=闹鬼金矿(|cffffcc00G|r) +Ubertip="在金矿被闹鬼了之后侍僧才可以从中采集黄金资源。" +Hotkey=G + +[uzig] +Name=通灵塔 +Tip=召唤通灵塔(|cffffcc00Z|r) +Ubertip="能提供人口,从而增加可造单位数量的最大值。在经过升级以后能变成一个可以攻击地面单位和空中单位的建筑物。" +Hotkey=Z + +[uzg1] +Name=幽魂之塔 +Tip=升级到幽魂之塔(|cffffcc00T|r) +Ubertip="防御性建筑物。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=T + +[uzg2] +Name=蛛网怪塔 +Tip=升级蛛网怪塔(|cffffcc00N|r) +Ubertip="升级到防御建筑,造成冰冻伤害,减慢敌人单位速度。|n|n|cffffcc00攻击地面和空中单位|r" +Hotkey=N + +[umtw] +Name=绞肉车 +Tip=训练绞肉车(|cffffcc00M|r) +Ubertip="能存放尸体,也是一种远程的攻城武器。对付建筑物特别地有效,但是自己本身也移动缓慢而容易遭受攻击。还能学习到疾病云雾技能。|n|n|cffffcc00能攻击地面单位和树木。|r" +Hotkey=M + +[ubon] +Name=埋骨地 +Tip=召唤埋骨地(|cffffcc00B|r) +Ubertip="能生产出霜冻巨龙。还包括对冰冻喷吐的研究。" +Hotkey=B + +[usap] +Name=牺牲深渊 +Tip=召唤牺牲深渊(|cffffcc00S|r) +Ubertip="能将侍僧转化成阴影。阴影是一种能看见敌方隐形单位的隐形单位。自己本身也不能攻击敌人。" +Hotkey=S + +[uslh] +Name=屠宰场 +Tip=召唤屠宰场(|cffffcc00H|r) +Ubertip="能生产出憎恶、绞肉车和十胜石雕像。还包括对疾病云雾,破坏者形态的研究。" +Hotkey=H + +[ushd] +Name=阴影 +Tip=训练阴影 +Ubertip="一个永远隐形的灵魂,能看见其他隐形单位,但是不能进攻。" + +[ugrv] +Name=坟场 +Tip=召唤坟场(|cffffcc00V|r) +Ubertip="能对不死族单位的攻防进行升级。也能产生尸体和存放收集到木材资源。" +Hotkey=V + +[ucs1] +Name=腐尸甲虫 +EditorSuffix= (等级 1) + +[ucs2] +Name=腐尸甲虫 +EditorSuffix= (等级 2) + +[ucsB] +Name=钻入地下的腐尸甲虫 +EditorSuffix= (等级 2) + +[ucs3] +Name=腐尸甲虫 +EditorSuffix= (等级 3) + +[ucsC] +Name=钻入地下的腐尸甲虫 +EditorSuffix= (等级 3) + +[uloc] +Name=蝗虫 + +[uobs] +Name=十胜石雕像 +Tip=建造十胜石雕像(|cffffcc00O|r) +Hotkey=O +Ubertip="一种坚固的雕像,能帮助你恢复自己部队的生命值和魔法值。具有灵魂触摸,枯萎精髓技能,还可以学习到破坏者形态技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +[ubsp] +Name=破坏者 +Tip=变形为破坏者(|cffffcc00T|r) +Hotkey=T +Ubertip="巨大飞行单位,必须吞噬魔法才能保持其自己的魔法能量。特别擅长于伤害敌人的魔法单位和聚集在一起的敌军。具有魔法免疫,吞噬魔法,吸收魔法和毁灭之球技能。|n|n|cffffcc00能攻击地面和空中单位。|r" + +//#RESTNOBETA +[ubot] +Name=不死族运输船 +Hotkey=T +Tip=雇用运输船(|cffffcc00T|r) +Ubertip="能够运送单位的运输船。" + + +[udes] +Name=不死族族护卫舰 +Hotkey=F +Tip=雇用驱逐舰(|cffffcc00F|r) +Ubertip="多功能的战斗舰船,擅长于攻击空中单位。|n|n|cffffcc00能攻击地面和空中单位。|r" + + +[uubs] +Name=不死族战舰 +Hotkey=B +Tip=雇用战舰(|cffffcc00B|r) +Ubertip="强大的攻城舰船能够很好地攻击地面建筑物和敌人的船只。|n|n|cffffcc00攻击地面单位。|r" diff --git a/share/mpq/units/units/undeadupgradefunc.txt b/share/mpq/units/units/undeadupgradefunc.txt new file mode 100644 index 0000000..aee5694 --- /dev/null +++ b/share/mpq/units/units/undeadupgradefunc.txt @@ -0,0 +1,102 @@ +[Rusp] +Art=ReplaceableTextures\CommandButtons\BTNDestroyer.blp +ButtonPos=2,2 +Requires=unp2,utom + +[Rume] +Art=ReplaceableTextures\CommandButtons\BTNUnholyStrength.blp,ReplaceableTextures\CommandButtons\BTNImprovedUnholyStrength.blp,ReplaceableTextures\CommandButtons\BTNAdvancedUnholyStrength.blp +Buttonpos=0,0 +Requirescount=3 +Requires= +Requires1=unp1 +Requires2=unp2 + +[Rura] +Art=ReplaceableTextures\CommandButtons\BTNCreatureAttack.blp,ReplaceableTextures\CommandButtons\BTNImprovedCreatureAttack.blp,ReplaceableTextures\CommandButtons\BTNAdvancedCreatureAttack.blp +Buttonpos=1,0 +Requirescount=3 +Requires= +Requires1=unp1 +Requires2=unp2 + +[Ruar] +Art=ReplaceableTextures\CommandButtons\BTNUnholyArmor.blp,ReplaceableTextures\CommandButtons\BTNImprovedUnholyArmor.blp,ReplaceableTextures\CommandButtons\BTNAdvancedUnholyArmor.blp +Buttonpos=0,1 +Requirescount=3 +Requires= +Requires1=unp1 +Requires2=unp2 + +[Rucr] +Art=ReplaceableTextures\CommandButtons\BTNCreatureCarapace.blp,ReplaceableTextures\CommandButtons\BTNImprovedCreatureCarapace.blp,ReplaceableTextures\CommandButtons\BTNAdvancedCreatureCarapace.blp +Buttonpos=1,1 +Requirescount=3 +Requires= +Requires1=unp1 +Requires2=unp2 + +[Ruac] +Art=ReplaceableTextures\CommandButtons\BTNCannibalize.blp +Buttonpos=0,1 + +[Rugf] +Art=ReplaceableTextures\CommandButtons\BTNGhoulFrenzy.blp +Buttonpos=0,2 +Requires=ugrv,unp2 + +[Ruwb] +Art=ReplaceableTextures\CommandButtons\BTNWeb.blp +Buttonpos=1,2 +Requires=ugrv,unp1 + +[Rusf] +Art=ReplaceableTextures\CommandButtons\BTNStoneForm.blp +Buttonpos=2,2 +Requires=ugrv,unp2 + +[Rune] +Art=ReplaceableTextures\CommandButtons\BTNNecromancerAdept.blp,ReplaceableTextures\CommandButtons\BTNNecromancerMaster.blp +Buttonpos=0,2 +Requirescount=2 +Requires= +Requires1=unp2 + +[Ruba] +Art=ReplaceableTextures\CommandButtons\BTNBansheeAdept.blp,ReplaceableTextures\CommandButtons\BTNBansheeMaster.blp +Buttonpos=1,2 +Requirescount=2 +Requires= +Requires1=unp2 + +[Rufb] +Art=ReplaceableTextures\CommandButtons\BTNFreezingBreath.blp +Buttonpos=0,2 + +[Rusl] +Art=ReplaceableTextures\CommandButtons\BTNSkeletalLongevity.blp +Buttonpos=2,2 + +[Rupc] +Art=ReplaceableTextures\CommandButtons\BTNPlagueCloud.blp +Buttonpos=1,2 +Requires=unp2 + +[Rusm] +Requires=unp2 +Art=ReplaceableTextures\CommandButtons\BTNSkeletonMage.blp +Buttonpos=2,1 + +[Rubu] +Art=ReplaceableTextures\CommandButtons\BTNCryptFiendBurrow.blp +Buttonpos=1,1 +Requires=unp1,ugrv + +[Ruex] +Art=ReplaceableTextures\CommandButtons\BTNExhumeCorpses.blp +Buttonpos=0,2 +Requires=unp2 + +[Rupm] +Art=ReplaceableTextures\CommandButtons\BTNPackBeast.blp +Buttonpos=3,0 +Requires=utom \ No newline at end of file diff --git a/share/mpq/units/units/undeadupgradestrings.txt b/share/mpq/units/units/undeadupgradestrings.txt new file mode 100644 index 0000000..7bbf479 --- /dev/null +++ b/share/mpq/units/units/undeadupgradestrings.txt @@ -0,0 +1,109 @@ +[Rusp] +Name=破坏者形态 +Tip=研究破坏者形态(|cffffcc00X|r) +Ubertip="让十胜石雕像能变成破坏者,一种必须吞噬其他单位的魔法能量来维持自己的魔法能量的大型飞行单位。破坏者具有吞噬魔法,吸收魔法,魔法免疫和毁灭之球技能。|n|n|cffffcc00能攻击地面和空中单位。|r" +Hotkey=X + +[Rume] +Name=邪恶力量,中级邪恶力量,高级邪恶力量 +Tip=升级到邪恶力量(|cffffcc00S|r),升级到中级邪恶力量(|cffffcc00S|r),升级到高级邪恶力量(|cffffcc00S|r) +Ubertip="增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。","进一步增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。","进一步增加食尸鬼,绞肉车,憎恶,骷髅战士和骷髅魔法师的攻击力。" +Hotkey=S,S,S + +[Rura] +Name=生物攻击,中级生物攻击,高级生物攻击 +Tip=升级到生物攻击(|cffffcc00A|r),升级到中级生物攻击(|cffffcc00A|r),升级到高级生物攻击(|cffffcc00A|r) +Ubertip="增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。","进一步增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。","进一步增加穴居恶魔、石像鬼、冰霜巨龙和破坏者的攻击力。" +Hotkey=A,A,A + +[Ruar] +Name=邪恶装甲,中级邪恶装甲,高级邪恶装甲 +Tip=升级到邪恶装甲(|cffffcc00U|r),升级到中级邪恶装甲(|cffffcc00U|r),升级到高级邪恶装甲(|cffffcc00U|r) +Ubertip="增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。","进一步增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。","进一步增加食尸鬼,憎恶,骷髅战士和骷髅魔法师的防御力。" +Hotkey=U,U,U + +[Rucr] +Name=生物甲壳,中级生物甲壳,高级生物甲壳 +Tip=升级到生物甲壳(|cffffcc00C|r),升级到中级生物甲壳(|cffffcc00C|r),升级到生物甲壳(|cffffcc00C|r) +Ubertip="增加地穴恶魔、石像鬼、 冰霜巨龙和破坏者的护甲。 ","进一步增加地穴恶魔、石像鬼、冰霜巨龙和破坏者的护甲。 ","进一步增加地穴恶魔、石像鬼、冰霜巨龙和破坏者的护甲。" +Hotkey=C,C,C + +[Ruac] +Name=吞食尸体 +Tip=研究吞食尸体(|cffffcc00C|r) +Ubertip="使得食尸鬼和憎恶能吞食附近的一个尸体来恢复自己的生命值。" +Hotkey=C + +[Rugf] +Name=食尸鬼狂热 +Tip=研究食尸鬼狂热(|cffffcc00Z|r) +Ubertip="增加食尸鬼%的攻击速度并加快其移动速度。" +Hotkey=Z + +[Ruwb] +Name=蛛网 +Tip=研究蛛网(|cffffcc00W|r) +Ubertip="使得穴居恶魔能将敌人的某个空中单位捕获到地面,从而让己方的地面单位可以对其进行攻击。" +Hotkey=W + +[Rusf] +Name=石像形态 +Tip=研究石像形态(|cffffcc00S|r) +Ubertip="石像形态技能能使石像鬼变成一座具有极高护甲,魔法免疫,生命值恢复加快的雕像。在这期间石像鬼也不能攻击任何敌人。" +Hotkey=S + +[Rune] +Name=不死族巫师专家训练,不死族巫师大师训练 +Tip=不死族巫师专家训练(|cffffcc00E|r),不死族巫师大师训练(|cffffcc00E|r) +Ubertip="增加不死族巫师的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有邪恶狂热技能。","增加不死族巫师的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有残废技能。" +Hotkey=E,E + +[Ruba] +Name=女妖专家训练,女妖大师训练 +Tip=女妖专家训练(|cffffcc00A|r),女妖大师训练(|cffffcc00A|r) +Ubertip="增加女妖的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有反魔法外壳技能。","增加女妖的魔法最大值,魔法恢复速度,生命值和攻击力。并使其具有占据技能。" +Hotkey=A,A + +[Rufb] +Name=冰冻喷吐 +Tip=研究冰冻喷吐(|cffffcc00B|r) +Ubertip="使得霜冻巨龙的攻击能在一段时间内使受攻击的建筑物暂时失去功效。" +Hotkey=B + +[Rusl] +Name=骨质增强术 +Tip=研究骨质增强术(|cffffcc00S|r) +Ubertip="能增加召唤出来的骷髅战士的持续时间秒。" +Hotkey=S + +[Rupc] +Name=疾病云雾 +Tip=研究疾病云雾(|cffffcc00D|r) +Ubertip="使得憎恶能带有疾病云雾光环,从而在内对周围的单位造成每秒点的伤害。而绞肉车的攻击也可以带有疾病效果从而在秒内对周围的单位造成每秒点的伤害。|n不死族的单位对疾病云雾免疫。" +Hotkey=D + +[Rusm] +Name=骷髅法术 +Tip=研究骷髅法术(|cffffcc00M|r) +Ubertip="让复活死尸技能召唤出来的两个骷髅中的一个成为骷髅魔法师。" +Hotkey=M + +[Rubu] +Name=钻地 +Tip=研究钻地(|cffffcc00B|r) +Ubertip="让穴居恶魔具有钻地技能。钻地的穴居恶魔是隐形的,并获得提升的生命恢复速度,但不可攻击。" +Hotkey=B + + +[Ruex] +Name=挖掘尸体 +Tip=挖掘尸体(|cffffcc00E|r) +Ubertip="让绞肉车能制造出尸体。" +Hotkey=E + +[Rupm] +Name=背包技能 +EditorSuffix= (不死族) +Tip=研究背包技能(|cffffcc00B|r) +Ubertip="给予指定的不死族地面单位携带物品的能力。" +Hotkey=B diff --git a/share/mpq/units/units/unitabilities.slk b/share/mpq/units/units/unitabilities.slk new file mode 100644 index 0000000..0fa4a59 --- /dev/null +++ b/share/mpq/units/units/unitabilities.slk @@ -0,0 +1,5111 @@ +ID;PWXL;N;E +B;X7;Y837;D0 +C;X1;Y1;K"unitAbilID" +C;X2;K"sortAbil" +C;X3;K"comment(s)" +C;X4;K"auto" +C;X5;K"abilList" +C;X6;K"heroAbilList" +C;X7;K"InBeta" +C;X1;Y2;K"Hamg" +C;X2;K"a1" +C;X3;K"HeroArchMage" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHbz,AHab,AHwe,AHmt" +C;X7;K1 +C;X1;Y3;K"Hblm" +C;X2;K"a1" +C;X3;K"HeroBloodMage" +C;X4;K"_" +C;X5;K"AInv,Asph" +C;X6;K"AHfs,AHbn,AHdr,AHpx" +C;X7;K1 +C;X1;Y4;K"Hmkg" +C;X2;K"a1" +C;X3;K"HeroMountainKing" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHtc,AHtb,AHbh,AHav" +C;X7;K1 +C;X1;Y5;K"Hpal" +C;X2;K"a1" +C;X3;K"HeroPaladin" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K1 +C;X1;Y6;K"hbot" +C;X2;K"a2" +C;X3;K"transport ship" +C;X4;K"_" +C;X5;K"Sch5,Slo3,Sdro" +C;X7;K0 +C;X1;Y7;K"hbsh" +C;X2;K"a2" +C;X3;K"battleship" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y8;K"hdes" +C;X2;K"a2" +C;X3;K"destroyer" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y9;K"hdhw" +C;X2;K"a2" +C;X3;K"blood elf dragon hawk" +C;X4;K"_" +C;X5;K"Aclf,Amls" +C;X7;K1 +C;X1;Y10;K"hfoo" +C;X2;K"a2" +C;X3;K"Footman" +C;X4;K"_" +C;X5;K"Adef,Aihn" +C;X7;K1 +C;X1;Y11;K"hgry" +C;X2;K"a2" +C;X3;K"GryphonRider" +C;X4;K"_" +C;X5;K"Asth" +C;X7;K1 +C;X1;Y12;K"hgyr" +C;X2;K"a2" +C;X3;K"Flying Machine" +C;X4;K"_" +C;X5;K"Agyb,Agyv,Aflk" +C;X7;K1 +C;X1;Y13;K"hkni" +C;X2;K"a2" +C;X3;K"Knight" +C;X4;K"_" +C;X5;K"Aihn" +C;X7;K1 +C;X1;Y14;K"hmil" +C;X2;K"a2" +C;X3;K"Militia" +C;X4;K"_" +C;X5;K"Ahar,Amil,Ahrp" +C;X7;K1 +C;X1;Y15;K"hmpr" +C;X2;K"a2" +C;X3;K"Priest" +C;X4;K"Ahea" +C;X5;K"Ahea,Ainf,Adis,Aihn" +C;X7;K1 +C;X1;Y16;K"hmtm" +C;X2;K"a2" +C;X3;K"MortarTeam" +C;X4;K"_" +C;X5;K"Afla,Afsh" +C;X7;K1 +C;X1;Y17;K"hmtt" +C;X2;K"a2" +C;X3;K"Siege Engine" +C;X4;K"_" +C;X5;K"Srtt,Aroc" +C;X7;K1 +C;X1;Y18;K"hpea" +C;X2;K"a2" +C;X3;K"Peasant" +C;X4;K"_" +C;X5;K"Ahar,Amil,Ahrp" +C;X7;K1 +C;X1;Y19;K"hphx" +C;X2;K"a2" +C;X3;K"Phoenix" +C;X4;K"_" +C;X5;K"Aphx,ACmi,ACrk,Apxf" +C;X7;K1 +C;X1;Y20;K"hpxe" +C;X2;K"a2" +C;X3;K"Phoenix Egg" +C;X4;K"_" +C;X5;K"Aphx,ACrk,ACmi" +C;X7;K1 +C;X1;Y21;K"hrif" +C;X2;K"a2" +C;X3;K"Rifleman" +C;X4;K"_" +C;X5;K"Aihn" +C;X7;K1 +C;X1;Y22;K"hrtt" +C;X2;K"a2" +C;X3;K"siege engine upgraded" +C;X4;K"_" +C;X5;K"Aroc" +C;X7;K1 +C;X1;Y23;K"hsor" +C;X2;K"a2" +C;X3;K"Sorceress" +C;X4;K"Aslo" +C;X5;K"Aivs,Aply,Aslo,Aihn" +C;X7;K1 +C;X1;Y24;K"hspt" +C;X2;K"a2" +C;X3;K"Blood Elf Spell Breaker" +C;X4;K"Asps" +C;X5;K"Asps,Acmg,Amim,Afbk,Aihn" +C;X7;K1 +C;X1;Y25;K"hwat" +C;X2;K"a2" +C;X3;K"WaterElemental" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y26;K"hwt2" +C;X2;K"a2" +C;X3;K"WaterElemental level 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y27;K"hwt3" +C;X2;K"a2" +C;X3;K"WaterElemental level 3" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y28;K"halt" +C;X2;K"a3" +C;X3;K"AltarofKings" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y29;K"harm" +C;X2;K"a3" +C;X3;K"Workshop" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y30;K"hars" +C;X2;K"a3" +C;X3;K"ArcaneSanctum" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y31;K"hatw" +C;X2;K"a3" +C;X3;K"Arcane Tower" +C;X4;K"_" +C;X5;K"Abds,Afbt,AHta,Adts" +C;X7;K1 +C;X1;Y32;K"hbar" +C;X2;K"a3" +C;X3;K"HumanBarracks" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y33;K"hbla" +C;X2;K"a3" +C;X3;K"Blacksmith" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y34;K"hcas" +C;X2;K"a3" +C;X3;K"Castle" +C;X4;K"_" +C;X5;K"Abdl,Amic,Argl" +C;X7;K1 +C;X1;Y35;K"hctw" +C;X2;K"a3" +C;X3;K"CannonTower" +C;X4;K"_" +C;X5;K"Abds,Adts" +C;X7;K1 +C;X1;Y36;K"hgra" +C;X2;K"a3" +C;X3;K"GryphonAviary" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y37;K"hgtw" +C;X2;K"a3" +C;X3;K"GuardTower" +C;X4;K"_" +C;X5;K"Abds,Adts" +C;X7;K1 +C;X1;Y38;K"hhou" +C;X2;K"a3" +C;X3;K"Farm" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y39;K"hkee" +C;X2;K"a3" +C;X3;K"Keep" +C;X4;K"_" +C;X5;K"Abdl,Amic,Argl" +C;X7;K1 +C;X1;Y40;K"hlum" +C;X2;K"a3" +C;X3;K"LumberMill" +C;X4;K"_" +C;X5;K"Abds,Arlm" +C;X7;K1 +C;X1;Y41;K"hshy" +C;X2;K"a3" +C;X3;K"Human Shipyard" +C;X4;K"_" +C;X5;K"Ane2,Abds" +C;X7;K0 +C;X1;Y42;K"htow" +C;X2;K"a3" +C;X3;K"TownHall" +C;X4;K"_" +C;X5;K"Abdl,Amic,Argl" +C;X7;K1 +C;X1;Y43;K"hvlt" +C;X2;K"a3" +C;X3;K"Arcane Vault" +C;X4;K"_" +C;X5;K"Abds,Aall,Apit" +C;X7;K1 +C;X1;Y44;K"hwtw" +C;X2;K"a3" +C;X3;K"Scout Tower" +C;X4;K"_" +C;X5;K"Abds,Adts" +C;X7;K1 +C;X1;Y45;K"Obla" +C;X2;K"b1" +C;X3;K"HeroBladeMaster" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOwk,AOcr,AOmi,AOww" +C;X7;K1 +C;X1;Y46;K"Ofar" +C;X2;K"b1" +C;X3;K"HeroFarSeer" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOfs,AOsf,AOcl,AOeq" +C;X7;K1 +C;X1;Y47;K"Oshd" +C;X2;K"b1" +C;X3;K"HeroShadowHunter" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOhw,AOhx,AOsw,AOvd" +C;X7;K1 +C;X1;Y48;K"Otch" +C;X2;K"b1" +C;X3;K"HeroTaurenChieftain" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOsh,AOae,AOre,AOws" +C;X7;K1 +C;X1;Y49;K"nwad" +C;X2;K"b2" +C;X3;K"WatcherWard" +C;X4;K"_" +C;X5;K"Adt1,Aeth,Avul" +C;X7;K1 +C;X1;Y50;K"obot" +C;X2;K"b2" +C;X3;K"orcish transport" +C;X4;K"_" +C;X5;K"Sch5,Slo3,Sdro" +C;X7;K0 +C;X1;Y51;K"ocat" +C;X2;K"b2" +C;X3;K"Demolisher" +C;X4;K"_" +C;X5;K"Abof" +C;X7;K1 +C;X1;Y52;K"odes" +C;X2;K"b2" +C;X3;K"orcish destroyer" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y53;K"odoc" +C;X2;K"b2" +C;X3;K"WitchDoctor" +C;X4;K"_" +C;X5;K"Aeye,Ahwd,Asta,Aion" +C;X7;K1 +C;X1;Y54;K"oeye" +C;X2;K"b2" +C;X3;K"SentryWard" +C;X4;K"_" +C;X5;K"Adt1,Aeth" +C;X7;K1 +C;X1;Y55;K"ogru" +C;X2;K"b2" +C;X3;K"Grunt" +C;X4;K"_" +C;X5;K"Asal,Aion" +C;X7;K1 +C;X1;Y56;K"ohun" +C;X2;K"b2" +C;X3;K"HeadHunter" +C;X4;K"_" +C;X5;K"Sbsk,Aion" +C;X7;K1 +C;X1;Y57;K"ohwd" +C;X2;K"b2" +C;X3;K"HealingWard" +C;X4;K"_" +C;X5;K"Aoar" +C;X7;K1 +C;X1;Y58;K"okod" +C;X2;K"b2" +C;X3;K"KodoBeast" +C;X4;K"_" +C;X5;K"Aakb,Advc,Adev,Apak" +C;X7;K1 +C;X1;Y59;K"opeo" +C;X2;K"b2" +C;X3;K"Peon" +C;X4;K"_" +C;X5;K"Ahar,Arep,Asal" +C;X7;K1 +C;X1;Y60;K"orai" +C;X2;K"b2" +C;X3;K"WolfRider" +C;X4;K"_" +C;X5;K"Aens,Asal,Aion" +C;X7;K1 +C;X1;Y61;K"oshm" +C;X2;K"b2" +C;X3;K"Shaman" +C;X4;K"Ablo" +C;X5;K"Ablo,Alsh,Aprg,Aion" +C;X7;K1 +C;X1;Y62;K"osp1" +C;X2;K"b2" +C;X3;K"Serpent Ward 1" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y63;K"osp2" +C;X2;K"b2" +C;X3;K"Serpent Ward 2" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y64;K"osp3" +C;X2;K"b2" +C;X3;K"Serpent Ward 3" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y65;K"osp4" +C;X2;K"b2" +C;X3;K"Serpent Ward 4" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K0 +C;X1;Y66;K"ospm" +C;X2;K"b2" +C;X3;K"spiritwalkerMorph" +C;X4;K"_" +C;X5;K"Acpf,Aspl,Adcn,Aast,Aion" +C;X7;K1 +C;X1;Y67;K"ospw" +C;X2;K"b2" +C;X3;K"spiritwalker" +C;X4;K"_" +C;X5;K"Acpf,Aspl,Adcn,Aast,Aion" +C;X7;K1 +C;X1;Y68;K"osw1" +C;X2;K"b2" +C;X3;K"spirit wolf level 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y69;K"osw2" +C;X2;K"b2" +C;X3;K"spirit wolf 2" +C;X4;K"_" +C;X5;K"ACct" +C;X7;K1 +C;X1;Y70;K"osw3" +C;X2;K"b2" +C;X3;K"spirit wolf 3" +C;X4;K"_" +C;X5;K"ACct,Apiv" +C;X7;K1 +C;X1;Y71;K"otau" +C;X2;K"b2" +C;X3;K"Tauren" +C;X4;K"_" +C;X5;K"Awar,Aion" +C;X7;K1 +C;X1;Y72;K"otbk" +C;X2;K"b2" +C;X3;K"Berserker" +C;X4;K"_" +C;X5;K"Absk,Aion" +C;X7;K1 +C;X1;Y73;K"otbr" +C;X2;K"b2" +C;X3;K"Troll Batrider" +C;X4;K"_" +C;X5;K"Aliq,Auco" +C;X7;K1 +C;X1;Y74;K"otot" +C;X2;K"b2" +C;X3;K"StasisTrapward" +C;X4;K"_" +C;X5;K"Aeth" +C;X7;K1 +C;X1;Y75;K"owyv" +C;X2;K"b2" +C;X3;K"Wind Rider" +C;X4;K"_" +C;X5;K"Aven" +C;X7;K1 +C;X1;Y76;K"oalt" +C;X2;K"b3" +C;X3;K"AltarofStorms" +C;X4;K"_" +C;X5;K"Abds,Aspi" +C;X7;K1 +C;X1;Y77;K"obar" +C;X2;K"b3" +C;X3;K"Barracks" +C;X4;K"_" +C;X5;K"Abds,Aspi" +C;X7;K1 +C;X1;Y78;K"obea" +C;X2;K"b3" +C;X3;K"Beastiary" +C;X4;K"_" +C;X5;K"Abds,Aspi" +C;X7;K1 +C;X1;Y79;K"ofor" +C;X2;K"b3" +C;X3;K"Forge" +C;X4;K"_" +C;X5;K"Abds,Aspi,Arlm" +C;X7;K1 +C;X1;Y80;K"ofrt" +C;X2;K"b3" +C;X3;K"Fortress" +C;X4;K"_" +C;X5;K"Abdl,Aspi,Argl" +C;X7;K1 +C;X1;Y81;K"ogre" +C;X2;K"b3" +C;X3;K"GreatHall" +C;X4;K"_" +C;X5;K"Abdl,Aspi,Argl" +C;X7;K1 +C;X1;Y82;K"oshy" +C;X2;K"b3" +C;X3;K"Orc Shipyard" +C;X4;K"_" +C;X5;K"Ane2,Abds" +C;X7;K0 +C;X1;Y83;K"osld" +C;X2;K"b3" +C;X3;K"SpiritLodge" +C;X4;K"_" +C;X5;K"Abds,Aspi" +C;X7;K1 +C;X1;Y84;K"ostr" +C;X2;K"b3" +C;X3;K"Stronghold" +C;X4;K"_" +C;X5;K"Abdl,Aspi,Argl" +C;X7;K1 +C;X1;Y85;K"otrb" +C;X2;K"b3" +C;X3;K"OrcBurrow" +C;X4;K"_" +C;X5;K"Abds,Aspi,Abun,Abtl,Astd,Arbr" +C;X7;K1 +C;X1;Y86;K"otto" +C;X2;K"b3" +C;X3;K"Tauren Totem" +C;X4;K"_" +C;X5;K"Abds,Aspi" +C;X7;K1 +C;X1;Y87;K"ovln" +C;X2;K"b3" +C;X3;K"Voodoo Lounge" +C;X4;K"_" +C;X5;K"Abds,Aall,Aspi,Apit" +C;X7;K1 +C;X1;Y88;K"owtw" +C;X2;K"b3" +C;X3;K"Watch Tower" +C;X4;K"_" +C;X5;K"Abds,Arbr,Aspi" +C;X7;K1 +C;X1;Y89;K"Edem" +C;X2;K"c1" +C;X3;K"HeroDemonHunter" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEmb,AEim,AEev,AEme" +C;X7;K1 +C;X1;Y90;K"Edmm" +C;X2;K"c1" +C;X3;K"HeroDemonHunterMorph" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEmb,AEim,AEev,AEme" +C;X7;K1 +C;X1;Y91;K"Ekee" +C;X2;K"c1" +C;X3;K"HeroKeeperoftheGrove" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K1 +C;X1;Y92;K"Emoo" +C;X2;K"c1" +C;X3;K"HeroMoonPriestess" +C;X4;K"_" +C;X5;K"Ashm,AInv,Ault" +C;X6;K"AHfa,AEst,AEar,AEsf" +C;X7;K1 +C;X1;Y93;K"Ewar" +C;X2;K"c1" +C;X3;K"HeroWarden" +C;X4;K"_" +C;X5;K"Ashm,AInv,Ault" +C;X6;K"AEbl,AEfk,AEsh,AEsv" +C;X7;K1 +C;X1;Y94;K"earc" +C;X2;K"c2" +C;X3;K"Archer" +C;X4;K"_" +C;X5;K"Aco2,Ashm,Aien,Ault" +C;X7;K1 +C;X1;Y95;K"ebal" +C;X2;K"c2" +C;X3;K"Glaive Thrower" +C;X4;K"_" +C;X5;K"Aimp,Ault" +C;X7;K1 +C;X1;Y96;K"ebsh" +C;X2;K"c2" +C;X3;K"night elf battleship" +C;X4;K"_" +C;X5;K"Ault" +C;X7;K0 +C;X1;Y97;K"echm" +C;X2;K"c2" +C;X3;K"Chimaera" +C;X4;K"_" +C;X5;K"Acor,Alit,Ault" +C;X7;K1 +C;X1;Y98;K"edcm" +C;X2;K"c2" +C;X3;K"DruidoftheClawMorph" +C;X4;K"_" +C;X5;K"Abrf,Ara2,Aien,Ault" +C;X7;K1 +C;X1;Y99;K"edes" +C;X2;K"c2" +C;X3;K"night elf destroyer" +C;X4;K"_" +C;X5;K"Ault" +C;X7;K0 +C;X1;Y100;K"edoc" +C;X2;K"c2" +C;X3;K"DruidoftheClaw" +C;X4;K"_" +C;X5;K"Abrf,Arej,Aroa,Aien,Ault" +C;X7;K1 +C;X1;Y101;K"edot" +C;X2;K"c2" +C;X3;K"DruidoftheTalon" +C;X4;K"Afae" +C;X5;K"Acyc,Arav,Afae,Aien,Ault" +C;X7;K1 +C;X1;Y102;K"edry" +C;X2;K"c2" +C;X3;K"Dryad" +C;X4;K"Aadm" +C;X5;K"Aadm,Amim,Aspo,Aien,Ault" +C;X7;K1 +C;X1;Y103;K"edtm" +C;X2;K"c2" +C;X3;K"DruidoftheTalonMorph" +C;X4;K"Afae" +C;X5;K"Arav,Afa2,Ault" +C;X7;K1 +C;X1;Y104;K"efdr" +C;X2;K"c2" +C;X3;K"faerie dragon" +C;X4;K"Apsh" +C;X5;K"Amim,Amfl,Apsh,Ault" +C;X7;K1 +C;X1;Y105;K"efon" +C;X2;K"c2" +C;X3;K"Ent" +C;X4;K"_" +C;X5;K"Ault" +C;X7;K1 +C;X1;Y106;K"ehip" +C;X2;K"c2" +C;X3;K"Hippogryph" +C;X4;K"_" +C;X5;K"Aco3,Ault" +C;X7;K1 +C;X1;Y107;K"ehpr" +C;X2;K"c2" +C;X3;K"Hippogryph Rider" +C;X4;K"_" +C;X5;K"Adec,Ault" +C;X7;K1 +C;X1;Y108;K"emtg" +C;X2;K"c2" +C;X3;K"Mountain Giant" +C;X4;K"_" +C;X5;K"Atau,Agra,Arsk,Assk,Aien" +C;X7;K1 +C;X1;Y109;K"esen" +C;X2;K"c2" +C;X3;K"Huntress" +C;X4;K"_" +C;X5;K"Aesn,Ashm,Amgl,Aien,Ault" +C;X7;K1 +C;X1;Y110;K"espv" +C;X2;K"c2" +C;X3;K"Spirit of Vengeance" +C;X4;K"Avng" +C;X5;K"ACmi,Asp1,ACrk,Avng" +C;X7;K1 +C;X1;Y111;K"even" +C;X2;K"c2" +C;X3;K"Vengeance" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K1 +C;X1;Y112;K"ewsp" +C;X2;K"c2" +C;X3;K"Wisp" +C;X4;K"_" +C;X5;K"Adtn,Aren,Awha,Ault" +C;X7;K1 +C;X1;Y113;K"eaoe" +C;X2;K"c3" +C;X3;K"AncientofLore" +C;X4;K"_" +C;X5;K"Abds,Aeat,Aro1" +C;X7;K1 +C;X1;Y114;K"eaom" +C;X2;K"c3" +C;X3;K"AncientofWar" +C;X4;K"_" +C;X5;K"Abds,Aeat,Aro1" +C;X7;K1 +C;X1;Y115;K"eaow" +C;X2;K"c3" +C;X3;K"AncientofWind" +C;X4;K"_" +C;X5;K"Abds,Aeat,Aro1" +C;X7;K1 +C;X1;Y116;K"eate" +C;X2;K"c3" +C;X3;K"AltarofElders" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y117;K"eden" +C;X2;K"c3" +C;X3;K"Ancient of Wonders" +C;X4;K"_" +C;X5;K"Abds,Aall,Aeat,Aro1,Apit" +C;X7;K1 +C;X1;Y118;K"edob" +C;X2;K"c3" +C;X3;K"HuntersHall" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y119;K"edos" +C;X2;K"c3" +C;X3;K"ChimaeraRoost" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K1 +C;X1;Y120;K"egol" +C;X2;K"c3" +C;X3;K"EntangledGoldMine" +C;X4;K"_" +C;X5;K"Abds,Aenc,Slo2,Adri,Aegm" +C;X7;K1 +C;X1;Y121;K"emow" +C;X2;K"c3" +C;X3;K"MoonWell" +C;X4;K"_" +C;X5;K"Abds,Ambt" +C;X7;K1 +C;X1;Y122;K"eshy" +C;X2;K"c3" +C;X3;K"Night Elf Shipyard" +C;X4;K"_" +C;X5;K"Abds,Ane2" +C;X7;K0 +C;X1;Y123;K"etoa" +C;X2;K"c3" +C;X3;K"TreeofAges" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Abdl,Atol,Arlm" +C;X7;K1 +C;X1;Y124;K"etoe" +C;X2;K"c3" +C;X3;K"TreeofEternity" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Abdl,Atol,Arlm" +C;X7;K1 +C;X1;Y125;K"etol" +C;X2;K"c3" +C;X3;K"TreeofLife" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Abdl,Atol,Arlm" +C;X7;K1 +C;X1;Y126;K"etrp" +C;X2;K"c3" +C;X3;K"Ancient Protector" +C;X4;K"_" +C;X5;K"Abds,Aeat,Aro2" +C;X7;K1 +C;X1;Y127;K"Ucrl" +C;X2;K"d1" +C;X3;K"HeroCryptLord" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUim,AUts,AUcb,AUls" +C;X7;K1 +C;X1;Y128;K"Udea" +C;X2;K"d1" +C;X3;K"HeroDeathKnight" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUdc,AUdp,AUau,AUan" +C;X7;K1 +C;X1;Y129;K"Udre" +C;X2;K"d1" +C;X3;K"HeroDreadLord" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUav,AUsl,AUcs,AUin" +C;X7;K1 +C;X1;Y130;K"Ulic" +C;X2;K"d1" +C;X3;K"HeroLich" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUfn,AUfu,AUdr,AUdd" +C;X7;K1 +C;X1;Y131;K"uabo" +C;X2;K"d2" +C;X3;K"Abomination" +C;X4;K"_" +C;X5;K"Aap1,Aiun,Acn2" +C;X7;K1 +C;X1;Y132;K"uaco" +C;X2;K"d2" +C;X3;K"Acolyte" +C;X4;K"_" +C;X5;K"Aaha,Arst,Alam,Auns" +C;X7;K1 +C;X1;Y133;K"uban" +C;X2;K"d2" +C;X3;K"Banshee" +C;X4;K"Acrs" +C;X5;K"Aams,Acrs,Apos,Aiun" +C;X7;K1 +C;X1;Y134;K"ubsp" +C;X2;K"d2" +C;X3;K"destroyer" +C;X4;K"Afak" +C;X5;K"Advm,Afak,Aave,Aabs,ACmi" +C;X7;K1 +C;X1;Y135;K"ucrm" +C;X2;K"d2" +C;X3;K"CryptFiendMorph" +C;X4;K"_" +C;X5;K"Aspa,Abur,Aiun" +C;X7;K1 +C;X1;Y136;K"ucry" +C;X2;K"d2" +C;X3;K"CryptFiend" +C;X4;K"Aweb" +C;X5;K"Aweb,Aspa,Abur,Aiun" +C;X7;K1 +C;X1;Y137;K"ucs1" +C;X2;K"d2" +C;X3;K"Carrion Scarab level 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y138;K"ucs2" +C;X2;K"d2" +C;X3;K"Carrion Scarab level 2" +C;X4;K"_" +C;X5;K"Abu2" +C;X7;K1 +C;X1;Y139;K"ucs3" +C;X2;K"d2" +C;X3;K"Carrion Scarab level 3" +C;X4;K"_" +C;X5;K"Abu3" +C;X7;K1 +C;X1;Y140;K"ucsB" +C;X2;K"d2" +C;X3;K"Carrion Scarab level 2 -burrowed" +C;X4;K"_" +C;X5;K"Abu2" +C;X7;K1 +C;X1;Y141;K"ucsC" +C;X2;K"d2" +C;X3;K"Carrion Scarab level 3 -burrowed" +C;X4;K"_" +C;X5;K"Abu3" +C;X7;K1 +C;X1;Y142;K"ufro" +C;X2;K"d2" +C;X3;K"FrostWyrm" +C;X4;K"_" +C;X5;K"Afrz,Afrb" +C;X7;K1 +C;X1;Y143;K"ugar" +C;X2;K"d2" +C;X3;K"Gargoyle" +C;X4;K"_" +C;X5;K"Astn" +C;X7;K1 +C;X1;Y144;K"ugho" +C;X2;K"d2" +C;X3;K"Ghoul" +C;X4;K"_" +C;X5;K"Acan,Ahrl,Aiun" +C;X7;K1 +C;X1;Y145;K"ugrm" +C;X2;K"d2" +C;X3;K"GargoyleMorphed" +C;X4;K"_" +C;X5;K"Astn,ACmi" +C;X7;K1 +C;X1;Y146;K"uloc" +C;X2;K"d2" +C;X3;K"Locust" +C;X4;K"_" +C;X5;K"Aloc" +C;X7;K1 +C;X1;Y147;K"umtw" +C;X2;K"d2" +C;X3;K"MeatWagon" +C;X4;K"_" +C;X5;K"Sch2,Amel,Amed,Apts,Aexh" +C;X7;K1 +C;X1;Y148;K"unec" +C;X2;K"d2" +C;X3;K"Necromancer" +C;X4;K"_" +C;X5;K"Acri,Arai,Auhf,Aiun" +C;X7;K1 +C;X1;Y149;K"uobs" +C;X2;K"d2" +C;X3;K"Obsidian Statue" +C;X4;K"_" +C;X5;K"Arpl,Arpm,Aave" +C;X7;K1 +C;X1;Y150;K"uplg" +C;X2;K"d2" +C;X3;K"PlagueWard" +C;X4;K"_" +C;X5;K"Aap2" +C;X7;K1 +C;X1;Y151;K"ushd" +C;X2;K"d2" +C;X3;K"Shade" +C;X4;K"_" +C;X5;K"Atru,Agho" +C;X7;K1 +C;X1;Y152;K"uske" +C;X2;K"d2" +C;X3;K"SkeletonWarrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y153;K"uskm" +C;X2;K"d2" +C;X3;K"Skeletal Mage" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y154;K"uubs" +C;X2;K"d2" +C;X3;K"undead battleship" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y155;K"uaod" +C;X2;K"d3" +C;X3;K"AltarofDarkness" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y156;K"ubon" +C;X2;K"d3" +C;X3;K"Boneyard" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y157;K"ugol" +C;X2;K"d3" +C;X3;K"UndeadGoldMine" +C;X4;K"_" +C;X5;K"Abgl,Abgm" +C;X7;K1 +C;X1;Y158;K"ugrv" +C;X2;K"d3" +C;X3;K"Graveyard" +C;X4;K"_" +C;X5;K"Abgs,Agyd,Arlm" +C;X7;K1 +C;X1;Y159;K"unp1" +C;X2;K"d3" +C;X3;K"Halls of the Dead" +C;X4;K"_" +C;X5;K"Abgl,Arlm" +C;X7;K1 +C;X1;Y160;K"unp2" +C;X2;K"d3" +C;X3;K"Black Citadel" +C;X4;K"_" +C;X5;K"Abgl,Arlm" +C;X7;K1 +C;X1;Y161;K"unpl" +C;X2;K"d3" +C;X3;K"Necropolis" +C;X4;K"_" +C;X5;K"Abgl,Arlm" +C;X7;K1 +C;X1;Y162;K"usap" +C;X2;K"d3" +C;X3;K"SacrificialPit" +C;X4;K"_" +C;X5;K"Abgs,Asac" +C;X7;K1 +C;X1;Y163;K"usep" +C;X2;K"d3" +C;X3;K"Crypt" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y164;K"ushp" +C;X2;K"d3" +C;X3;K"undead shipyard" +C;X4;K"_" +C;X5;K"Abgs,Ane2" +C;X7;K0 +C;X1;Y165;K"uslh" +C;X2;K"d3" +C;X3;K"Slaughterhouse" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y166;K"utod" +C;X2;K"d3" +C;X3;K"TempleoftheDamned" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y167;K"utom" +C;X2;K"d3" +C;X3;K"Tomb of Relics" +C;X4;K"_" +C;X5;K"Aall,Abgs,Apit" +C;X7;K1 +C;X1;Y168;K"uzg1" +C;X2;K"d3" +C;X3;K"Ziggurat Upgrade" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y169;K"uzg2" +C;X2;K"d3" +C;X3;K"Frost Tower" +C;X4;K"_" +C;X5;K"Abgs,Afra" +C;X7;K1 +C;X1;Y170;K"uzig" +C;X2;K"d3" +C;X3;K"Ziggurat" +C;X4;K"_" +C;X5;K"Abgs" +C;X7;K1 +C;X1;Y171;K"Nbrn" +C;X2;K"n1" +C;X3;K"HeroBansheeRanger" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANsi,ANba,ANdr,ANch" +C;X7;K1 +C;X1;Y172;K"Nbst" +C;X2;K"n1" +C;X3;K"HeroBeastMaster" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANsg,ANsq,ANsw,ANst" +C;X7;K1 +C;X1;Y173;K"Nngs" +C;X2;K"n1" +C;X3;K"HeroNagaSeaWitch" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANfl,ANfa,ANms,ANto" +C;X7;K1 +C;X1;Y174;K"Npbm" +C;X2;K"n1" +C;X3;K"HeroPandarenBrewmaster" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANbf,ANdh,ANdb,ANef" +C;X7;K1 +C;X1;Y175;K"Nalc" +C;X2;K"n1" +C;X3;K"HeroAlchemist" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANhs,ANab,ANcr,ANtm" +C;X7;K1 +C;X1;Y176;K"Nalm" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANhs,ANab,ANcr,ANtm" +C;X7;K1 +C;X1;Y177;K"Nal2" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph2" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANhs,ANab,ANcr,ANtm" +C;X7;K1 +C;X1;Y178;K"Nal3" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph3" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANhs,ANab,ANcr,ANtm" +C;X7;K1 +C;X1;Y179;K"Ntin" +C;X2;K"n1" +C;X3;K"HeroTinker" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANsy,ANcs,ANeg,ANrg" +C;X7;K1 +C;X1;Y180;K"Nrob" +C;X2;K"n1" +C;X3;K"HeroTinkerMorph" +C;X4;K"_" +C;X5;K"AInv,ANde" +C;X6;K"ANsy,ANcs,ANeg,ANrg" +C;X7;K1 +C;X1;Y181;K"ncgb" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin (lvl 1)" +C;X4;K"_" +C;X5;K"Asdg" +C;X7;K1 +C;X1;Y182;K"ncg1" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin (lvl 2)" +C;X4;K"_" +C;X5;K"Asd2" +C;X7;K1 +C;X1;Y183;K"ncg2" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin (lvl 3)" +C;X4;K"_" +C;X5;K"Asd3" +C;X7;K1 +C;X1;Y184;K"ncg3" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin (lvl 3)" +C;X4;K"_" +C;X5;K"Asd3" +C;X7;K1 +C;X1;Y185;K"nfac" +C;X2;K"n1a" +C;X3;K"pocket factory" +C;X4;K"_" +C;X5;K"ARal" +C;X7;K0 +C;X1;Y186;K"nfa1" +C;X2;K"n1a" +C;X3;K"pocket factory" +C;X4;K"_" +C;X5;K"ARal" +C;X7;K0 +C;X1;Y187;K"nfa2" +C;X2;K"n1a" +C;X3;K"pocket factory" +C;X4;K"_" +C;X5;K"ARal" +C;X7;K0 +C;X1;Y188;K"Nplh" +C;X2;K"n1" +C;X3;K"HeroPitLord" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANrf,ANht,ANca,ANdo" +C;X7;K1 +C;X1;Y189;K"Nfir" +C;X2;K"n1" +C;X3;K"FireLord" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANic,ANso,ANlm,ANvc" +C;X7;K1 +C;X1;Y190;K"nlv1" +C;X2;K"a2" +C;X3;K"LavaSpawn1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y191;K"nlv2" +C;X2;K"a2" +C;X3;K"LavaSpawn2" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y192;K"nlv3" +C;X2;K"a2" +C;X3;K"LavaSpawn3" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y193;K"ndr1" +C;X2;K"n1a" +C;X3;K"DarkMinion1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y194;K"ndr2" +C;X2;K"n1a" +C;X3;K"DarkMinion2" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y195;K"ndr3" +C;X2;K"n1a" +C;X3;K"DarkMinion3" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y196;K"ngz1" +C;X2;K"n1a" +C;X3;K"grizzly bear 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y197;K"ngz2" +C;X2;K"n1a" +C;X3;K"grizzly bear 2" +C;X4;K"_" +C;X5;K"ANbh" +C;X7;K1 +C;X1;Y198;K"ngz3" +C;X2;K"n1a" +C;X3;K"grizzly bear 3" +C;X4;K"_" +C;X5;K"ANbh,ANbl" +C;X7;K1 +C;X1;Y199;K"ngzc" +C;X2;K"n1a" +C;X3;K"misha 1" +C;X4;K"_" +C;X5;K"ACrk" +C;X7;K0 +C;X1;Y200;K"ngzd" +C;X2;K"n1a" +C;X3;K"misha 2" +C;X4;K"_" +C;X5;K"ANbh,ACrk" +C;X7;K0 +C;X1;Y201;K"ngza" +C;X2;K"n2" +C;X3;K"misha 3" +C;X4;K"_" +C;X5;K"ANb2,ACrk" +C;X7;K0 +C;X1;Y202;K"ngz4" +C;X2;K"n1a" +C;X3;K"misha 4" +C;X4;K"_" +C;X5;K"ANb2,ACrk" +C;X7;K0 +C;X1;Y203;K"npn1" +C;X2;K"n1a" +C;X3;K"Fire pandaren split" +C;X4;K"_" +C;X5;K"Apig,ACrk" +C;X7;K1 +C;X1;Y204;K"npn2" +C;X2;K"n1a" +C;X3;K"Wind pandaren split" +C;X4;K"_" +C;X5;K"Adsm,ACcy,ACrk,ANwk" +C;X7;K1 +C;X1;Y205;K"npn3" +C;X2;K"n1a" +C;X3;K"Earth pandaren split" +C;X4;K"_" +C;X5;K"ACmi,ACpv,ANta,ACrk" +C;X7;K1 +C;X1;Y206;K"npn4" +C;X2;K"n1a" +C;X3;K"Fire pandaren split2" +C;X4;K"_" +C;X5;K"Apig,ACrk" +C;X7;K1 +C;X1;Y207;K"npn5" +C;X2;K"n1a" +C;X3;K"Wind pandaren split2" +C;X4;K"_" +C;X5;K"Adsm,ACcy,ACrk,ANwk" +C;X7;K1 +C;X1;Y208;K"npn6" +C;X2;K"n1a" +C;X3;K"Earth pandaren split2" +C;X4;K"_" +C;X5;K"ACmi,ACpv,ANta,ACrk" +C;X7;K1 +C;X1;Y209;K"nqb1" +C;X2;K"n1a" +C;X3;K"quillbeast 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y210;K"nqb2" +C;X2;K"n1a" +C;X3;K"quillbeast 2" +C;X4;K"Afzy" +C;X5;K"Afzy" +C;X7;K1 +C;X1;Y211;K"nqb3" +C;X2;K"n1a" +C;X3;K"quillbeast 3" +C;X4;K"Afzy" +C;X5;K"Afzy" +C;X7;K1 +C;X1;Y212;K"nqb4" +C;X2;K"n1a" +C;X3;K"quillbeast 4" +C;X4;K"Afzy" +C;X5;K"Afzy" +C;X7;K0 +C;X1;Y213;K"nwe1" +C;X2;K"n1a" +C;X3;K"war eagle 1" +C;X4;K"_" +C;X5;K"ANtr" +C;X7;K1 +C;X1;Y214;K"nwe2" +C;X2;K"n1a" +C;X3;K"war eagle 2" +C;X4;K"_" +C;X5;K"ANtr,Alit" +C;X7;K1 +C;X1;Y215;K"nwe3" +C;X2;K"n1a" +C;X3;K"war eagle 3" +C;X4;K"_" +C;X5;K"ANtr,Alit,Apiv" +C;X7;K1 +C;X1;Y216;K"nadk" +C;X2;K"n2" +C;X3;K"blue drake" +C;X4;K"_" +C;X5;K"Afrb" +C;X7;K1 +C;X1;Y217;K"nadr" +C;X2;K"n2" +C;X3;K"blue dragon" +C;X4;K"_" +C;X5;K"Advc,ACdv,Afrb,ACmi" +C;X7;K1 +C;X1;Y218;K"nadw" +C;X2;K"n2" +C;X3;K"blue dragon whelp" +C;X4;K"_" +C;X5;K"Afrb" +C;X7;K1 +C;X1;Y219;K"nahy" +C;X2;K"n2" +C;X3;K"ancient hydra" +C;X4;K"_" +C;X5;K"Aspo,Awrh,ACdv,Advc,Aspy" +C;X7;K1 +C;X1;Y220;K"nanb" +C;X2;K"n2" +C;X3;K"barbed arachnathid" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y221;K"nanm" +C;X2;K"n2" +C;X3;K"Barbed Arachnathid (merc)" +C;X4;K"_" +C;X5;K"Abu5" +C;X7;K0 +C;X1;Y222;K"nanc" +C;X2;K"n2" +C;X3;K"crystal arachnathid" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y223;K"nane" +C;X2;K"n2" +C;X3;K"arachnathid earth-borer" +C;X4;K"_" +C;X5;K"ACvs,ACss" +C;X7;K0 +C;X1;Y224;K"nano" +C;X2;K"n2" +C;X3;K"arachnathid overlord" +C;X4;K"_" +C;X5;K"ACac" +C;X7;K0 +C;X1;Y225;K"nanw" +C;X2;K"n2" +C;X3;K"arachnathid warrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y226;K"narg" +C;X2;K"n2" +C;X3;K"battle golem" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y227;K"nass" +C;X2;K"n2" +C;X3;K"assassin" +C;X4;K"_" +C;X5;K"Ashm,ACvs" +C;X7;K1 +C;X1;Y228;K"nbal" +C;X2;K"n2" +C;X3;K"doomguard" +C;X4;K"_" +C;X5;K"ACcr,Adsm,Awrs,ACrf,ACsk" +C;X7;K1 +C;X1;Y229;K"nba2" +C;X2;K"n2" +C;X3;K"doomguard(summoned)" +C;X4;K"_" +C;X5;K"ACcr,Adsm,Awrs,ACrf,ACsk" +C;X7;K1 +C;X1;Y230;K"nban" +C;X2;K"n2" +C;X3;K"bandit" +C;X4;K"_" +C;X5;K"Ashm" +C;X7;K1 +C;X1;Y231;K"nbda" +C;X2;K"n2" +C;X3;K"blue dragonspawn apprentice" +C;X4;K"_" +C;X5;K"ACrj,ACev" +C;X7;K0 +C;X1;Y232;K"nbdk" +C;X2;K"n2" +C;X3;K"black drake" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y233;K"nbdm" +C;X2;K"n2" +C;X3;K"blue dragonspawn meddler" +C;X4;K"_" +C;X5;K"ACev" +C;X7;K0 +C;X1;Y234;K"nbdo" +C;X2;K"n2" +C;X3;K"blue dragonspawn overseer" +C;X4;K"_" +C;X5;K"ACev,ACav,ACbf" +C;X7;K0 +C;X1;Y235;K"nbdr" +C;X2;K"n2" +C;X3;K"black whelp" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y236;K"nbds" +C;X2;K"n2" +C;X3;K"blue dragonspawn sorceror" +C;X4;K"_" +C;X5;K"ACfn,ACev" +C;X7;K0 +C;X1;Y237;K"nbdw" +C;X2;K"n2" +C;X3;K"blue dragonspawn warrior" +C;X4;K"_" +C;X5;K"ACev" +C;X7;K0 +C;X1;Y238;K"nbld" +C;X2;K"n2" +C;X3;K"bandit lord" +C;X4;K"_" +C;X5;K"Ashm,ACav,ACds" +C;X7;K1 +C;X1;Y239;K"nbnb" +C;X2;K"n2" +C;X3;K"barbed arachnathid burrowed" +C;X4;K"_" +C;X5;K"Abu5" +C;X7;K0 +C;X1;Y240;K"nbot" +C;X2;K"n2" +C;X3;K"transport ship" +C;X4;K"_" +C;X5;K"Sch5,Slo3,Sdro" +C;X7;K1 +C;X1;Y241;K"nbrg" +C;X2;K"n2" +C;X3;K"brigand" +C;X4;K"_" +C;X5;K"Ashm" +C;X7;K1 +C;X1;Y242;K"nbwm" +C;X2;K"n2" +C;X3;K"black dragon" +C;X4;K"_" +C;X5;K"Advc,ACdv,ACmi" +C;X7;K1 +C;X1;Y243;K"nbzd" +C;X2;K"n2" +C;X3;K"bronze dragon" +C;X4;K"_" +C;X5;K"Advc,ACdv,Alit,ACmi" +C;X7;K1 +C;X1;Y244;K"nbzk" +C;X2;K"n2" +C;X3;K"bronze drake" +C;X4;K"_" +C;X5;K"Alit" +C;X7;K1 +C;X1;Y245;K"nbzw" +C;X2;K"n2" +C;X3;K"bronze dragon whelp" +C;X4;K"_" +C;X5;K"Alit" +C;X7;K1 +C;X1;Y246;K"ncea" +C;X2;K"n2" +C;X3;K"CentaurArcher" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y247;K"ncen" +C;X2;K"n2" +C;X3;K"Centaur outrunner" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y248;K"ncer" +C;X2;K"n2" +C;X3;K"centaur drudge" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y249;K"ncfs" +C;X2;K"n2" +C;X3;K"watery minion cliffrunner" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y250;K"ncim" +C;X2;K"n2" +C;X3;K"centaur impaler" +C;X4;K"_" +C;X5;K"ACsa" +C;X7;K1 +C;X1;Y251;K"ncks" +C;X2;K"n2" +C;X3;K"centaur sorceror" +C;X4;K"Ablo" +C;X5;K"ACbl,ACdm" +C;X7;K1 +C;X1;Y252;K"ncnk" +C;X2;K"n2" +C;X3;K"centaur khan" +C;X4;K"_" +C;X5;K"SCae,ACrn,Awrs" +C;X7;K1 +C;X1;Y253;K"ndqn" +C;X2;K"n2" +C;X3;K"succubus" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y254;K"ndqp" +C;X2;K"n2" +C;X3;K"maiden of pain" +C;X4;K"_" +C;X5;K"ACdr,ACss" +C;X7;K0 +C;X1;Y255;K"ndqs" +C;X2;K"n2" +C;X3;K"queen of suffering" +C;X4;K"_" +C;X5;K"ACdc,ACua,ACch" +C;X7;K0 +C;X1;Y256;K"ndqt" +C;X2;K"n2" +C;X3;K"vile temptress" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y257;K"ndqv" +C;X2;K"n2" +C;X3;K"vile tormentor" +C;X4;K"_" +C;X5;K"ACsi" +C;X7;K0 +C;X1;Y258;K"ndrv" +C;X2;K"n2" +C;X3;K"revenant of the depths" +C;X4;K"_" +C;X5;K"ACwe" +C;X7;K1 +C;X1;Y259;K"ndtb" +C;X2;K"n2" +C;X3;K"dark troll berserker" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y260;K"ndth" +C;X2;K"n2" +C;X3;K"dark troll high priest" +C;X4;K"Anhe" +C;X5;K"Anh2,ACsl" +C;X7;K1 +C;X1;Y261;K"ndtp" +C;X2;K"n2" +C;X3;K"dark troll shadow priest" +C;X4;K"Anhe" +C;X5;K"Anh1" +C;X7;K1 +C;X1;Y262;K"ndtr" +C;X2;K"n2" +C;X3;K"darkTroll" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y263;K"ndtt" +C;X2;K"n2" +C;X3;K"darkTrollTrapper" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K1 +C;X1;Y264;K"ndtw" +C;X2;K"n2" +C;X3;K"darkTrollwarlord" +C;X4;K"_" +C;X5;K"ACat" +C;X7;K1 +C;X1;Y265;K"nehy" +C;X2;K"n2" +C;X3;K"elder hydra" +C;X4;K"Afae" +C;X5;K"ACff" +C;X7;K1 +C;X1;Y266;K"nelb" +C;X2;K"n2" +C;X3;K"berserk elemental" +C;X4;K"_" +C;X5;K"ACmi,ACfn" +C;X7;K1 +C;X1;Y267;K"nele" +C;X2;K"n2" +C;X3;K"enraged elemental" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y268;K"nenc" +C;X2;K"n2" +C;X3;K"corrupted ent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y269;K"nenf" +C;X2;K"n2" +C;X3;K"enforcer" +C;X4;K"_" +C;X5;K"Ashm,ACev" +C;X7;K1 +C;X1;Y270;K"nenp" +C;X2;K"n2" +C;X3;K"poison ent" +C;X4;K"_" +C;X5;K"Aenr,ACvs" +C;X7;K1 +C;X1;Y271;K"nepl" +C;X2;K"n2" +C;X3;K"plague ent" +C;X4;K"_" +C;X5;K"Aenr,Aap3" +C;X7;K1 +C;X1;Y272;K"nerd" +C;X2;K"n2" +C;X3;K"Eredar Diabolist" +C;X4;K"ANpa" +C;X5;K"ACpa,ANfb" +C;X7;K0 +C;X1;Y273;K"ners" +C;X2;K"n2" +C;X3;K"Eredar Sorceror" +C;X4;K"Aadm" +C;X5;K"ACdm,ACsl" +C;X7;K0 +C;X1;Y274;K"nerw" +C;X2;K"n2" +C;X3;K"Eredar Warlock" +C;X4;K"_" +C;X5;K"ACbh,ACfd,ACmf" +C;X7;K0 +C;X1;Y275;K"nfel" +C;X2;K"n2" +C;X3;K"Fel Stalker" +C;X4;K"_" +C;X5;K"Ambb" +C;X7;K1 +C;X1;Y276;K"nfgb" +C;X2;K"n2" +C;X3;K"bloodfiend" +C;X4;K"_" +C;X5;K"ACce" +C;X7;K0 +C;X1;Y277;K"nfgo" +C;X2;K"n2" +C;X3;K"forgotten one" +C;X4;K"_" +C;X5;K"ACfb,ACch,ACtn" +C;X7;K0 +C;X1;Y278;K"nfgt" +C;X2;K"n2" +C;X3;K"forgotten one tentacle" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y279;K"nfgu" +C;X2;K"n2" +C;X3;K"felguard" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y280;K"nfod" +C;X2;K"n2" +C;X3;K"faceless one deathbringer" +C;X4;K"_" +C;X5;K"ACad,ACsi" +C;X7;K0 +C;X1;Y281;K"nfor" +C;X2;K"n2" +C;X3;K"faceless one trickster" +C;X4;K"Acrs" +C;X5;K"ACcs,ACpu" +C;X7;K0 +C;X1;Y282;K"nfot" +C;X2;K"n2" +C;X3;K"faceless one terror" +C;X4;K"_" +C;X5;K"ACsl,ACmf" +C;X7;K0 +C;X1;Y283;K"nfov" +C;X2;K"n2" +C;X3;K"overlord" +C;X4;K"_" +C;X5;K"Acht,ACce,ACvp" +C;X7;K0 +C;X1;Y284;K"nfpc" +C;X2;K"n2" +C;X3;K"Polar Furbolg Champion" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y285;K"nfpe" +C;X2;K"n2" +C;X3;K"Polar Furbolg Elder Shaman" +C;X4;K"_" +C;X5;K"AChv,ACfn" +C;X7;K0 +C;X1;Y286;K"nfpl" +C;X2;K"n2" +C;X3;K"Polar Furbolg" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y287;K"nfps" +C;X2;K"n2" +C;X3;K"Polar Furbolg Shaman" +C;X4;K"AUfu" +C;X5;K"ACf2,ACdm" +C;X7;K0 +C;X1;Y288;K"nfpt" +C;X2;K"n2" +C;X3;K"Polar Furbolg Tracker" +C;X4;K"Aslo" +C;X5;K"ACsw" +C;X7;K0 +C;X1;Y289;K"nfpu" +C;X2;K"n2" +C;X3;K"Polar Furbolg Ursa Warrior" +C;X4;K"_" +C;X5;K"Awrs,ACac" +C;X7;K0 +C;X1;Y290;K"nfra" +C;X2;K"n2" +C;X3;K"Furbolg Ursa Warrior" +C;X4;K"_" +C;X5;K"Awrs,ACac" +C;X7;K1 +C;X1;Y291;K"nfrb" +C;X2;K"n2" +C;X3;K"Furbolg Tracker" +C;X4;K"Afae" +C;X5;K"ACff" +C;X7;K1 +C;X1;Y292;K"nfre" +C;X2;K"n2" +C;X3;K"Furbolg Elder Shaman" +C;X4;K"_" +C;X5;K"ACr2,ACls" +C;X7;K1 +C;X1;Y293;K"nfrg" +C;X2;K"n2" +C;X3;K"Furbolg Champion" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y294;K"nfrl" +C;X2;K"n2" +C;X3;K"Furbolg" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y295;K"nfrp" +C;X2;K"n2" +C;X3;K"Furbolg Panda" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y296;K"nfrs" +C;X2;K"n2" +C;X3;K"Furbolg Shaman" +C;X4;K"_" +C;X5;K"ACr2" +C;X7;K1 +C;X1;Y297;K"nfsh" +C;X2;K"n2" +C;X3;K"forest troll high priest" +C;X4;K"Anhe" +C;X5;K"Anh2,ACif,ACd2" +C;X7;K1 +C;X1;Y298;K"nfsp" +C;X2;K"n2" +C;X3;K"forest troll shadow priest" +C;X4;K"Anhe" +C;X5;K"Anh1,ACdm" +C;X7;K1 +C;X1;Y299;K"nftb" +C;X2;K"n2" +C;X3;K"forest troll berserker" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y300;K"nftk" +C;X2;K"n2" +C;X3;K"ForestTrollKing" +C;X4;K"_" +C;X5;K"ACat" +C;X7;K1 +C;X1;Y301;K"nftr" +C;X2;K"n2" +C;X3;K"ForestTroll" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y302;K"nftt" +C;X2;K"n2" +C;X3;K"ForestTrollTrapper" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K1 +C;X1;Y303;K"ngdk" +C;X2;K"n2" +C;X3;K"green drake" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y304;K"nggr" +C;X2;K"n2" +C;X3;K"granite golem" +C;X4;K"_" +C;X5;K"ACmi,ACtb,ACtc" +C;X7;K1 +C;X1;Y305;K"ngh1" +C;X2;K"n2" +C;X3;K"ghost" +C;X4;K"_" +C;X5;K"ACps" +C;X7;K1 +C;X1;Y306;K"ngh2" +C;X2;K"n2" +C;X3;K"wraith" +C;X4;K"Acrs" +C;X5;K"ACps,ACcs" +C;X7;K1 +C;X1;Y307;K"ngir" +C;X2;K"n2" +C;X3;K"goblin shredder" +C;X4;K"_" +C;X5;K"Ahr3" +C;X7;K1 +C;X1;Y308;K"nglm" +C;X2;K"n2" +C;X3;K"GoblinLandMine" +C;X4;K"_" +C;X5;K"Amnx,Amin" +C;X7;K1 +C;X1;Y309;K"ngna" +C;X2;K"n2" +C;X3;K"Gnoll Poacher" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y310;K"ngnb" +C;X2;K"n2" +C;X3;K"gnoll brute" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y311;K"ngno" +C;X2;K"n2" +C;X3;K"Gnoll Robber" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y312;K"ngns" +C;X2;K"n2" +C;X3;K"Gnoll Assassin" +C;X4;K"_" +C;X5;K"ACvs" +C;X7;K1 +C;X1;Y313;K"ngnv" +C;X2;K"n2" +C;X3;K"gnoll king" +C;X4;K"_" +C;X5;K"ACac" +C;X7;K1 +C;X1;Y314;K"ngnw" +C;X2;K"n2" +C;X3;K"gnoll warden" +C;X4;K"_" +C;X5;K"ACpu" +C;X7;K1 +C;X1;Y315;K"ngrd" +C;X2;K"n2" +C;X3;K"green dragon" +C;X4;K"_" +C;X5;K"Advc,ACdv,ACmi" +C;X7;K1 +C;X1;Y316;K"ngrk" +C;X2;K"n2" +C;X3;K"mud golem" +C;X4;K"Aslo" +C;X5;K"ACmi,ACsw" +C;X7;K1 +C;X1;Y317;K"ngrw" +C;X2;K"n2" +C;X3;K"green dragon whelp" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y318;K"ngsp" +C;X2;K"n2" +C;X3;K"GoblinSapper" +C;X4;K"_" +C;X5;K"Asds" +C;X7;K1 +C;X1;Y319;K"ngst" +C;X2;K"n2" +C;X3;K"rock golem" +C;X4;K"_" +C;X5;K"ACmi,ACtb" +C;X7;K1 +C;X1;Y320;K"nhar" +C;X2;K"n2" +C;X3;K"Harpy Scout" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y321;K"nhdc" +C;X2;K"n2" +C;X3;K"deceiver" +C;X4;K"Acrs" +C;X5;K"ACcs" +C;X7;K1 +C;X1;Y322;K"nhfp" +C;X2;K"n2" +C;X3;K"fallen priest" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y323;K"nhhr" +C;X2;K"n2" +C;X3;K"heretic" +C;X4;K"Arai" +C;X5;K"ACrd,ACca" +C;X7;K1 +C;X1;Y324;K"nhrh" +C;X2;K"n2" +C;X3;K"harpy hag" +C;X4;K"Acrs" +C;X5;K"ACcs,ACsl" +C;X7;K1 +C;X1;Y325;K"nhrq" +C;X2;K"n2" +C;X3;K"harpy queen" +C;X4;K"_" +C;X5;K"ACr2,ACcy" +C;X7;K1 +C;X1;Y326;K"nhrr" +C;X2;K"n2" +C;X3;K"harpy rogue" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y327;K"nhrw" +C;X2;K"n2" +C;X3;K"harpy witch" +C;X4;K"Afae" +C;X5;K"ACff" +C;X7;K1 +C;X1;Y328;K"nhyc" +C;X2;K"n2" +C;X3;K"campaign hydra" +C;X4;K"_" +C;X5;K"Advc,ACdv,ANth,Ansk" +C;X7;K0 +C;X1;Y329;K"nhyd" +C;X2;K"n2" +C;X3;K"hydra" +C;X4;K"_" +C;X5;K"Aspo, Aspt" +C;X7;K1 +C;X1;Y330;K"nhyh" +C;X2;K"n2" +C;X3;K"hydra hatchling" +C;X4;K"_" +C;X5;K"Aspo" +C;X7;K1 +C;X1;Y331;K"nina" +C;X2;K"n2" +C;X3;K"infernal automaton" +C;X4;K"_" +C;X5;K"ANin" +C;X7;K0 +C;X1;Y332;K"ninc" +C;X2;K"n2" +C;X3;K"infernal contraption" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y333;K"ninf" +C;X2;K"n2" +C;X3;K"infernal" +C;X4;K"_" +C;X5;K"ACmi,ANpi,ACrk" +C;X7;K1 +C;X1;Y334;K"ninm" +C;X2;K"n2" +C;X3;K"infernal machine" +C;X4;K"_" +C;X5;K"ACbc" +C;X7;K0 +C;X1;Y335;K"nith" +C;X2;K"n2" +C;X3;K"ice troll high priest" +C;X4;K"Anhe" +C;X5;K"Anh2,ACf2,ACd2" +C;X7;K1 +C;X1;Y336;K"nitp" +C;X2;K"n2" +C;X3;K"ice troll shadow priest" +C;X4;K"Anhe" +C;X5;K"Anh1" +C;X7;K1 +C;X1;Y337;K"nitr" +C;X2;K"n2" +C;X3;K"IceTroll" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y338;K"nits" +C;X2;K"n2" +C;X3;K"ice troll berserker" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y339;K"nitt" +C;X2;K"n2" +C;X3;K"ice troll trapper" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K1 +C;X1;Y340;K"nitw" +C;X2;K"n2" +C;X3;K"ice troll warlord" +C;X4;K"_" +C;X5;K"ACat" +C;X7;K1 +C;X1;Y341;K"njgb" +C;X2;K"n2" +C;X3;K"Enranged Jungle Stalker" +C;X4;K"_" +C;X5;K"ACtc" +C;X7;K0 +C;X1;Y342;K"njga" +C;X2;K"n2" +C;X3;K"Elder Jungle Stalker" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y343;K"njg1" +C;X2;K"n2" +C;X3;K"Jungle Stalker" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y344;K"nkob" +C;X2;K"n2" +C;X3;K"Kobold" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y345;K"nkog" +C;X2;K"n2" +C;X3;K"kobold geomancer" +C;X4;K"Aslo" +C;X5;K"ACsw,ACdm" +C;X7;K1 +C;X1;Y346;K"nkol" +C;X2;K"n2" +C;X3;K"kobold taskmaster" +C;X4;K"_" +C;X5;K"ACac,ACbh" +C;X7;K1 +C;X1;Y347;K"nkot" +C;X2;K"n2" +C;X3;K"kobold tunneler" +C;X4;K"_" +C;X5;K"ACbh" +C;X7;K1 +C;X1;Y348;K"nlds" +C;X2;K"n2" +C;X3;K"makrura deep seer" +C;X4;K"_" +C;X5;K"Aenw,Aslp" +C;X7;K1 +C;X1;Y349;K"nlkl" +C;X2;K"n2" +C;X3;K"makrura tidal lord" +C;X4;K"_" +C;X5;K"ACce,ACav" +C;X7;K1 +C;X1;Y350;K"nlpd" +C;X2;K"n2" +C;X3;K"makrura pool dweller" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y351;K"nlpr" +C;X2;K"n2" +C;X3;K"makrura prawn" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y352;K"nlps" +C;X2;K"n2" +C;X3;K"makrura prawn summoned" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y353;K"nlrv" +C;X2;K"n2" +C;X3;K"deeplord revenant" +C;X4;K"AUfu" +C;X5;K"ACcv,ACf2" +C;X7;K1 +C;X1;Y354;K"nlsn" +C;X2;K"n2" +C;X3;K"makrura snapper" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y355;K"nltc" +C;X2;K"n2" +C;X3;K"makrura tide caller" +C;X4;K"Anhe" +C;X5;K"Anh1,ACf2" +C;X7;K1 +C;X1;Y356;K"nltl" +C;X2;K"n2" +C;X3;K"lightning lizard" +C;X4;K"_" +C;X5;K"Alit,ACpu" +C;X7;K1 +C;X1;Y357;K"nlur" +C;X2;K"n2" +C;X3;K"monster lure ward" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y358;K"nmam" +C;X2;K"n2" +C;X3;K"Mammoth" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y359;K"nmbg" +C;X2;K"n2" +C;X3;K"mur'gul blood-gill" +C;X4;K"Anhe" +C;X5;K"Anh1" +C;X7;K1 +C;X1;Y360;K"nmcf" +C;X2;K"n2" +C;X3;K"mur'gul cliffrunner" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y361;K"nmdr" +C;X2;K"n2" +C;X3;K"Dire Mammoth" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y362;K"nmfs" +C;X2;K"n2" +C;X3;K"murloc flesheater" +C;X4;K"_" +C;X5;K"ACcn" +C;X7;K1 +C;X1;Y363;K"nmgd" +C;X2;K"n2" +C;X3;K"Magnataur Destroyer" +C;X4;K"_" +C;X5;K"ACmi,ACcb,ACtc" +C;X7;K0 +C;X1;Y364;K"nmgr" +C;X2;K"n2" +C;X3;K"Magnataur Reaver" +C;X4;K"_" +C;X5;K"ACmi,ACcb" +C;X7;K0 +C;X1;Y365;K"nmgw" +C;X2;K"n2" +C;X3;K"Magnataur Warrior" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K0 +C;X1;Y366;K"nmit" +C;X2;K"n2" +C;X3;K"Icetusk Mammoth" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y367;K"nmmu" +C;X2;K"n2" +C;X3;K"murloc mutant" +C;X4;K"_" +C;X5;K"ACcr" +C;X7;K1 +C;X1;Y368;K"nmpg" +C;X2;K"n2" +C;X3;K"murloc plaguebearer" +C;X4;K"_" +C;X5;K"Aap3" +C;X7;K1 +C;X1;Y369;K"nmrl" +C;X2;K"n2" +C;X3;K"murloc fisherman" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y370;K"nmrm" +C;X2;K"n2" +C;X3;K"murloc nightcrawler" +C;X4;K"_" +C;X5;K"ACvs,Ashm" +C;X7;K1 +C;X1;Y371;K"nmrr" +C;X2;K"n2" +C;X3;K"murloc huntsman" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K1 +C;X1;Y372;K"nmrv" +C;X2;K"n2" +C;X3;K"mur'gul reaver" +C;X4;K"_" +C;X5;K"ACac" +C;X7;K1 +C;X1;Y373;K"nmsc" +C;X2;K"n2" +C;X3;K"mur'gul shadowcaster" +C;X4;K"Acrs" +C;X5;K"AChx,ACcs" +C;X7;K1 +C;X1;Y374;K"nmsn" +C;X2;K"n2" +C;X3;K"mur'gul snarecaster" +C;X4;K"Aslo" +C;X5;K"ACsw,ACdm" +C;X7;K1 +C;X1;Y375;K"nmtw" +C;X2;K"n2" +C;X3;K"mur'gul tidewarrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y376;K"nmyr" +C;X2;K"n2" +C;X3;K"naga myrmidon" +C;X4;K"_" +C;X5;K"ANen,Asb1" +C;X7;K0 +C;X1;Y377;K"nmys" +C;X2;K"n2" +C;X3;K"naga myrmidon submerged" +C;X4;K"_" +C;X5;K"Asb1" +C;X7;K0 +C;X1;Y378;K"nndk" +C;X2;K"n2" +C;X3;K"nether drake" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y379;K"nndr" +C;X2;K"n2" +C;X3;K"nether dragon" +C;X4;K"_" +C;X5;K"ACmi,ACcr" +C;X7;K0 +C;X1;Y380;K"nnht" +C;X2;K"n2" +C;X3;K"nether dragon hatchling" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y381;K"nnmg" +C;X2;K"n2" +C;X3;K"naga mur'gul" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y382;K"nnrg" +C;X2;K"n2" +C;X3;K"naga royal guard" +C;X4;K"_" +C;X5;K"Asb2,ACcv,ACcb,ACwe,ACsk" +C;X7;K0 +C;X1;Y383;K"nnrs" +C;X2;K"n2" +C;X3;K"naga royal guard submerged" +C;X4;K"_" +C;X5;K"Asb2" +C;X7;K0 +C;X1;Y384;K"nnsu" +C;X2;K"n2" +C;X3;K"naga summoner" +C;X4;K"ANpa" +C;X5;K"Acny,ACfu,ANpa,Ahnl" +C;X7;K0 +C;X1;Y385;K"nnsw" +C;X2;K"n2" +C;X3;K"naga siren" +C;X4;K"ANpa" +C;X5;K"Acny,ACfu,ANpa" +C;X7;K0 +C;X1;Y386;K"nnwa" +C;X2;K"n2" +C;X3;K"nerubian warrior" +C;X4;K"_" +C;X5;K"Assp" +C;X7;K1 +C;X1;Y387;K"nnwl" +C;X2;K"n2" +C;X3;K"nerubian webspinner" +C;X4;K"Aweb" +C;X5;K"ACwb,ACrd,Aspa" +C;X7;K1 +C;X1;Y388;K"nnwq" +C;X2;K"n2" +C;X3;K"nerubian queen" +C;X4;K"Arai" +C;X5;K"ACua,ACca,ACrd,Aspa" +C;X7;K1 +C;X1;Y389;K"nnwr" +C;X2;K"n2" +C;X3;K"nerubian seer" +C;X4;K"Arai" +C;X5;K"ACrd,ACdm,Aspa" +C;X7;K1 +C;X1;Y390;K"nnws" +C;X2;K"n2" +C;X3;K"nerubian spider lord" +C;X4;K"_" +C;X5;K"Assp" +C;X7;K1 +C;X1;Y391;K"noga" +C;X2;K"n2" +C;X3;K"Stonemaul Warchief" +C;X4;K"_" +C;X5;K"SCae,ANta,ACbh" +C;X7;K0 +C;X1;Y392;K"nogl" +C;X2;K"n2" +C;X3;K"ogre lord" +C;X4;K"_" +C;X5;K"ACav,ACsh" +C;X7;K1 +C;X1;Y393;K"nogm" +C;X2;K"n2" +C;X3;K"ogre mauler" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y394;K"nogn" +C;X2;K"n2" +C;X3;K"Stonemaul Magi" +C;X4;K"_" +C;X5;K"ACro" +C;X7;K0 +C;X1;Y395;K"nogo" +C;X2;K"n2" +C;X3;K"Stonemaul Ogre" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K0 +C;X1;Y396;K"nogr" +C;X2;K"n2" +C;X3;K"Ogre Warrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y397;K"nomg" +C;X2;K"n2" +C;X3;K"ogre magi" +C;X4;K"Ablo" +C;X5;K"ACbb" +C;X7;K1 +C;X1;Y398;K"nowb" +C;X2;K"n2" +C;X3;K"owlbear" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y399;K"nowe" +C;X2;K"n2" +C;X3;K"enraged owlbear" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y400;K"nowk" +C;X2;K"n2" +C;X3;K"berserk owlbear" +C;X4;K"_" +C;X5;K"ACbh,Awrs" +C;X7;K1 +C;X1;Y401;K"npfl" +C;X2;K"n2" +C;X3;K"felbeast" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y402;K"npfm" +C;X2;K"n2" +C;X3;K"fel ravager" +C;X4;K"ANba" +C;X5;K"ACbk,ACde" +C;X7;K0 +C;X1;Y403;K"nplb" +C;X2;K"n2" +C;X3;K"polar bear" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y404;K"nplg" +C;X2;K"n2" +C;X3;K"giant polar bear" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y405;K"nqbh" +C;X2;K"n2" +C;X3;K"quillboar hunter" +C;X4;K"_" +C;X5;K"ACev" +C;X7;K1 +C;X1;Y406;K"nrdk" +C;X2;K"n2" +C;X3;K"Red Dragon Whelp" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y407;K"nrdr" +C;X2;K"n2" +C;X3;K"Red Drake" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y408;K"nrel" +C;X2;K"n2" +C;X3;K"reef elemental" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y409;K"nrog" +C;X2;K"n2" +C;X3;K"rogue" +C;X4;K"_" +C;X5;K"Ashm" +C;X7;K1 +C;X1;Y410;K"nrvd" +C;X2;K"n2" +C;X3;K"death revenant" +C;X4;K"Arai" +C;X5;K"ACrd,ACdc,ACad" +C;X7;K1 +C;X1;Y411;K"nrvf" +C;X2;K"n2" +C;X3;K"fire revenant" +C;X4;K"_" +C;X5;K"ACim" +C;X7;K1 +C;X1;Y412;K"nrvi" +C;X2;K"n2" +C;X3;K"ice revenant" +C;X4;K"_" +C;X5;K"ACvp,ACfn" +C;X7;K1 +C;X1;Y413;K"nrvl" +C;X2;K"n2" +C;X3;K"lightning revenant" +C;X4;K"_" +C;X5;K"ACpu,ACcl" +C;X7;K1 +C;X1;Y414;K"nrvs" +C;X2;K"n2" +C;X3;K"frost revenant" +C;X4;K"_" +C;X5;K"ACbz" +C;X7;K1 +C;X1;Y415;K"nrwm" +C;X2;K"n2" +C;X3;K"Red Dragon" +C;X4;K"_" +C;X5;K"Advc,ACdv,ACmi" +C;X7;K1 +C;X1;Y416;K"nrzb" +C;X2;K"n2" +C;X3;K"razormane brute" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y417;K"nrzg" +C;X2;K"n2" +C;X3;K"razormane chieftain" +C;X4;K"_" +C;X5;K"ACah,ACtb" +C;X7;K1 +C;X1;Y418;K"nrzm" +C;X2;K"n2" +C;X3;K"razormane medicine man" +C;X4;K"_" +C;X5;K"AChw,ACs9" +C;X7;K1 +C;X1;Y419;K"nrzs" +C;X2;K"n2" +C;X3;K"razormane scout" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y420;K"nrzt" +C;X2;K"n2" +C;X3;K"quillboar" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y421;K"nsat" +C;X2;K"n2" +C;X3;K"Satyr Trickster" +C;X4;K"_" +C;X5;K"ACpu" +C;X7;K1 +C;X1;Y422;K"nsbm" +C;X2;K"n2" +C;X3;K"brood mother" +C;X4;K"_" +C;X5;K"ACvs,ACen,Aspd" +C;X7;K1 +C;X1;Y423;K"nsbs" +C;X2;K"n2" +C;X3;K"snap dragon submerged" +C;X4;K"_" +C;X5;K"Asb3" +C;X7;K0 +C;X1;Y424;K"nsc2" +C;X2;K"n2" +C;X3;K"spider crab 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y425;K"nsc3" +C;X2;K"n2" +C;X3;K"spider crab 3" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y426;K"nscb" +C;X2;K"n2" +C;X3;K"spider crab" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y427;K"nsel" +C;X2;K"n2" +C;X3;K"sea elemental" +C;X4;K"_" +C;X5;K"ACbh" +C;X7;K1 +C;X1;Y428;K"nsgb" +C;X2;K"n2" +C;X3;K"sea giant behemoth" +C;X4;K"_" +C;X5;K"ACpv,Awrs,ACtb" +C;X7;K1 +C;X1;Y429;K"nsgg" +C;X2;K"n2" +C;X3;K"siege golem" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y430;K"nsgh" +C;X2;K"n2" +C;X3;K"sea giant hunter" +C;X4;K"_" +C;X5;K"ACpv,ACen" +C;X7;K1 +C;X1;Y431;K"nsgn" +C;X2;K"n2" +C;X3;K"sea giant" +C;X4;K"_" +C;X5;K"ACpv" +C;X7;K1 +C;X1;Y432;K"nsgt" +C;X2;K"n2" +C;X3;K"giant spider" +C;X4;K"_" +C;X5;K"ACvs,ACen" +C;X7;K1 +C;X1;Y433;K"nska" +C;X2;K"n2" +C;X3;K"skeletal archer" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y434;K"nske" +C;X2;K"n2" +C;X3;K"SkeletonWarrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y435;K"nsca" +C;X2;K"n2" +C;X3;K"SkeletalArcher(Summoned)" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y436;K"nsce" +C;X2;K"n2" +C;X3;K"SkeletonWarrior(Summoned)" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y437;K"nskf" +C;X2;K"n2" +C;X3;K"burning archer" +C;X4;K"_" +C;X5;K"ACsa" +C;X7;K1 +C;X1;Y438;K"nskg" +C;X2;K"n2" +C;X3;K"giant SkeletonWarrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y439;K"nskm" +C;X2;K"n2" +C;X3;K"skeletal marksman" +C;X4;K"_" +C;X5;K"ACcw" +C;X7;K1 +C;X1;Y440;K"nsko" +C;X2;K"n2" +C;X3;K"skeletal orc" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y441;K"nslf" +C;X2;K"n2" +C;X3;K"sludge flinger" +C;X4;K"Aslo" +C;X5;K"ACsw" +C;X7;K1 +C;X1;Y442;K"nslh" +C;X2;K"n2" +C;X3;K"salamander hatchling" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y443;K"nsll" +C;X2;K"n2" +C;X3;K"salamander lord" +C;X4;K"_" +C;X5;K"ACim,ACrf,Advc,ACdv" +C;X7;K1 +C;X1;Y444;K"nslm" +C;X2;K"n2" +C;X3;K"sludge minion" +C;X4;K"Aslo" +C;X5;K"ACsw" +C;X7;K1 +C;X1;Y445;K"nsln" +C;X2;K"n2" +C;X3;K"sludge monstrosity" +C;X4;K"Aslo" +C;X5;K"ACsw" +C;X7;K1 +C;X1;Y446;K"nslr" +C;X2;K"n2" +C;X3;K"salamander" +C;X4;K"_" +C;X5;K"ACim,ACfb" +C;X7;K1 +C;X1;Y447;K"nslv" +C;X2;K"n2" +C;X3;K"salamander vizier" +C;X4;K"Ablo" +C;X5;K"ACbl,Ambd,ACdm" +C;X7;K1 +C;X1;Y448;K"nsnp" +C;X2;K"n2" +C;X3;K"snap dragon" +C;X4;K"_" +C;X5;K"Aspo,Asb3" +C;X7;K0 +C;X1;Y449;K"nsns" +C;X2;K"n2" +C;X3;K"watery minion snarecaster" +C;X4;K"Aslo" +C;X5;K"ACsw,ACdm" +C;X7;K0 +C;X1;Y450;K"nsoc" +C;X2;K"n2" +C;X3;K"skeletal orc champion" +C;X4;K"_" +C;X5;K"ACdc" +C;X7;K1 +C;X1;Y451;K"nsog" +C;X2;K"n2" +C;X3;K"skeletal orc grunt" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y452;K"nspb" +C;X2;K"n2" +C;X3;K"black spider" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y453;K"nspd" +C;X2;K"n2" +C;X3;K"spiderling" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y454;K"nspg" +C;X2;K"n2" +C;X3;K"green spider" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y455;K"nspp" +C;X2;K"n2" +C;X3;K"spirit pig" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y456;K"nspr" +C;X2;K"n2" +C;X3;K"spider" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y457;K"nsqa" +C;X2;K"n2" +C;X3;K"ancient sasquatch" +C;X4;K"_" +C;X5;K"ACtc,ACfr,ACrn" +C;X7;K1 +C;X1;Y458;K"nsqe" +C;X2;K"n2" +C;X3;K"elder sasquatch" +C;X4;K"_" +C;X5;K"ACbh,ACfr" +C;X7;K1 +C;X1;Y459;K"nsqo" +C;X2;K"n2" +C;X3;K"sasquatch oracle" +C;X4;K"_" +C;X5;K"ACrj,ACro" +C;X7;K1 +C;X1;Y460;K"nsqt" +C;X2;K"n2" +C;X3;K"sasquatch" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y461;K"nsra" +C;X2;K"n2" +C;X3;K"stormreaver apprentice" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y462;K"nsrh" +C;X2;K"n2" +C;X3;K"stormreaver hermit" +C;X4;K"_" +C;X5;K"ACpu" +C;X7;K1 +C;X1;Y463;K"nsrn" +C;X2;K"n2" +C;X3;K"stormreaver necrolyte" +C;X4;K"Ablo" +C;X5;K"ACbl,ACcl" +C;X7;K1 +C;X1;Y464;K"nsrv" +C;X2;K"n2" +C;X3;K"revenant of the seas" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y465;K"nsrw" +C;X2;K"n2" +C;X3;K"stormreaver warlock" +C;X4;K"_" +C;X5;K"ACmo,ACad" +C;X7;K1 +C;X1;Y466;K"nssp" +C;X2;K"n2" +C;X3;K"spitting spider" +C;X4;K"_" +C;X5;K"ACvs" +C;X7;K1 +C;X1;Y467;K"nsth" +C;X2;K"n2" +C;X3;K"Satyr Hellcaller" +C;X4;K"Ablo" +C;X5;K"ACbl,ACua,ACad" +C;X7;K1 +C;X1;Y468;K"nstl" +C;X2;K"n2" +C;X3;K"Satyr Soulstealer" +C;X4;K"Arai" +C;X5;K"Ambd,ACrd" +C;X7;K1 +C;X1;Y469;K"nsts" +C;X2;K"n2" +C;X3;K"Satyr Shadowdancer" +C;X4;K"Acrs" +C;X5;K"ACcs,Ashm" +C;X7;K1 +C;X1;Y470;K"nstw" +C;X2;K"n2" +C;X3;K"storm wyrm" +C;X4;K"_" +C;X5;K"Alit,ACls,ACcl,Advc,ACdv" +C;X7;K1 +C;X1;Y471;K"nsty" +C;X2;K"n2" +C;X3;K"satyr" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y472;K"nthl" +C;X2;K"n2" +C;X3;K"thunder lizard" +C;X4;K"_" +C;X5;K"Alit,ACt2" +C;X7;K1 +C;X1;Y473;K"ntka" +C;X2;K"n2" +C;X3;K"tuskarr spearman" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y474;K"ntkc" +C;X2;K"n2" +C;X3;K"tuskarr chieftain" +C;X4;K"_" +C;X5;K"ACac" +C;X7;K0 +C;X1;Y475;K"ntkf" +C;X2;K"n2" +C;X3;K"tuskarr figher" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y476;K"ntkh" +C;X2;K"n2" +C;X3;K"tuskarr healer" +C;X4;K"Anhe" +C;X5;K"ACdm,Anh1" +C;X7;K0 +C;X1;Y477;K"ntks" +C;X2;K"n2" +C;X3;K"tuskarr sorceror" +C;X4;K"Ainf" +C;X5;K"ACif" +C;X7;K0 +C;X1;Y478;K"ntkt" +C;X2;K"n2" +C;X3;K"tuskarr trapper" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K0 +C;X1;Y479;K"ntkw" +C;X2;K"n2" +C;X3;K"tuskarr warrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y480;K"ntor" +C;X2;K"n2" +C;X3;K"tornado" +C;X4;K"_" +C;X5;K"Atdg,Atsp,Atwa,Aasl" +C;X7;K1 +C;X1;Y481;K"ntrd" +C;X2;K"n2" +C;X3;K"dragon turtle" +C;X4;K"_" +C;X5;K"ACc2,ACdv,Advc,ANt2" +C;X7;K1 +C;X1;Y482;K"ntrg" +C;X2;K"n2" +C;X3;K"gargantuan sea turtle" +C;X4;K"_" +C;X5;K"ANth" +C;X7;K1 +C;X1;Y483;K"ntrh" +C;X2;K"n2" +C;X3;K"sea turtle hatchling" +C;X4;K"_" +C;X5;K"ANth" +C;X7;K1 +C;X1;Y484;K"ntrs" +C;X2;K"n2" +C;X3;K"sea turtle" +C;X4;K"_" +C;X5;K"ANth" +C;X7;K1 +C;X1;Y485;K"ntrt" +C;X2;K"n2" +C;X3;K"giant sea turtle" +C;X4;K"_" +C;X5;K"ANth" +C;X7;K1 +C;X1;Y486;K"ntrv" +C;X2;K"n2" +C;X3;K"revenant of the tides" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y487;K"ntws" +C;X2;K"n2" +C;X3;K"watery minion tidewarrior" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y488;K"nubk" +C;X2;K"n2" +C;X3;K"unbroken darkhunter" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y489;K"nubr" +C;X2;K"n2" +C;X3;K"unbroken rager" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K0 +C;X1;Y490;K"nubw" +C;X2;K"n2" +C;X3;K"unbroken darkweaver" +C;X4;K"_" +C;X5;K"ACuf" +C;X7;K0 +C;X1;Y491;K"nvde" +C;X2;K"n2" +C;X3;K"elder voidwalker" +C;X4;K"_" +C;X5;K"ACfl,ACde" +C;X7;K0 +C;X1;Y492;K"nvdg" +C;X2;K"n2" +C;X3;K"greater voidwalker" +C;X4;K"AUfu" +C;X5;K"ACf2,ACcl" +C;X7;K0 +C;X1;Y493;K"nvdl" +C;X2;K"n2" +C;X3;K"lesser voidwalker" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y494;K"nvdw" +C;X2;K"n2" +C;X3;K"voidwalker" +C;X4;K"AHca" +C;X5;K"ACcw" +C;X7;K0 +C;X1;Y495;K"nwen" +C;X2;K"n2" +C;X3;K"Wendigo" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y496;K"nwgs" +C;X2;K"n2" +C;X3;K"Naga Coutl" +C;X4;K"Aadm" +C;X5;K"Andm" +C;X7;K0 +C;X1;Y497;K"nwiz" +C;X2;K"n2" +C;X3;K"wizard" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y498;K"nwld" +C;X2;K"n2" +C;X3;K"dire wolf" +C;X4;K"_" +C;X5;K"ACct,ACro" +C;X7;K1 +C;X1;Y499;K"nwlg" +C;X2;K"n2" +C;X3;K"giant wolf" +C;X4;K"_" +C;X5;K"ACct" +C;X7;K1 +C;X1;Y500;K"nwlt" +C;X2;K"n2" +C;X3;K"timber wolf" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y501;K"nwna" +C;X2;K"n2" +C;X3;K"ancient wendigo" +C;X4;K"_" +C;X5;K"Awrs,ACbh,ACrn" +C;X7;K1 +C;X1;Y502;K"nwnr" +C;X2;K"n2" +C;X3;K"elder wendigo" +C;X4;K"_" +C;X5;K"ACbh" +C;X7;K1 +C;X1;Y503;K"nwns" +C;X2;K"n2" +C;X3;K"wendigo shaman" +C;X4;K"_" +C;X5;K"ACrj,ACro" +C;X7;K1 +C;X1;Y504;K"nwrg" +C;X2;K"n2" +C;X3;K"war golem" +C;X4;K"_" +C;X5;K"ACmi" +C;X7;K1 +C;X1;Y505;K"nws1" +C;X2;K"n2" +C;X3;K"dragon hawk" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K1 +C;X1;Y506;K"nwwd" +C;X2;K"n2" +C;X3;K"white dire wolf" +C;X4;K"_" +C;X5;K"ACct,ACro" +C;X7;K1 +C;X1;Y507;K"nwwf" +C;X2;K"n2" +C;X3;K"white wolf" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y508;K"nwwg" +C;X2;K"n2" +C;X3;K"giant white wolf" +C;X4;K"_" +C;X5;K"ACct" +C;X7;K1 +C;X1;Y509;K"nwzd" +C;X2;K"n2" +C;X3;K"dark wizard" +C;X4;K"Arai" +C;X5;K"ACrd,ACba,ACpy" +C;X7;K1 +C;X1;Y510;K"nwzg" +C;X2;K"n2" +C;X3;K"renegade wizard" +C;X4;K"_" +C;X5;K"ACpu,ACls" +C;X7;K1 +C;X1;Y511;K"nwzr" +C;X2;K"n2" +C;X3;K"rogue wizard" +C;X4;K"AUfu" +C;X5;K"ACf2" +C;X7;K1 +C;X1;Y512;K"nzep" +C;X2;K"n2" +C;X3;K"GoblinZeppelin" +C;X4;K"_" +C;X5;K"Sch3,Achd,Aloa,Adro" +C;X7;K1 +C;X1;Y513;K"nzom" +C;X2;K"n2" +C;X3;K"Zombie" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y514;K"nchp" +C;X2;K"n2" +C;X3;K"chaplain" +C;X4;K"Anhe" +C;X5;K"Anh2,ACif,Adsm" +C;X7;K0 +C;X1;Y515;K"nhym" +C;X2;K"n2" +C;X3;K"hydromancer" +C;X4;K"Aslo" +C;X5;K"ACsw,ACpy,ACc3" +C;X7;K0 +C;X1;Y516;K"nalb" +C;X2;K"o2" +C;X3;K"Albatross" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y517;K"ncrb" +C;X2;K"o2" +C;X3;K"Crab" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y518;K"nech" +C;X2;K"o2" +C;X3;K"Chicken" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y519;K"nfro" +C;X2;K"o2" +C;X3;K"Frog" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y520;K"necr" +C;X2;K"o2" +C;X3;K"Rabbit" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y521;K"nrac" +C;X2;K"o2" +C;X3;K"Raccoon" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y522;K"nder" +C;X2;K"o2" +C;X3;K"deer" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y523;K"ndog" +C;X2;K"o2" +C;X3;K"dog" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y524;K"ndwm" +C;X2;K"o2" +C;X3;K"Dune Worm" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y525;K"nfbr" +C;X2;K"o2" +C;X3;K"Felboar" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y526;K"nhmc" +C;X2;K"o2" +C;X3;K"Hermit Crab" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y527;K"now2" +C;X2;K"o2" +C;X3;K"owl 2 (scout)" +C;X4;K"_" +C;X5;K"Avul,ACmi,Adtg" +C;X7;K1 +C;X1;Y528;K"now3" +C;X2;K"o2" +C;X3;K"owl 3 (scout)" +C;X4;K"_" +C;X5;K"Avul,ACmi,Adtg" +C;X7;K1 +C;X1;Y529;K"nowl" +C;X2;K"o2" +C;X3;K"owl (scout)" +C;X4;K"_" +C;X5;K"Avul,ACmi,Adtg" +C;X7;K1 +C;X1;Y530;K"npig" +C;X2;K"o2" +C;X3;K"Pig" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y531;K"npng" +C;X2;K"o2" +C;X3;K"Penguin" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y532;K"npnw" +C;X2;K"o2" +C;X3;K"Penguin, water" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y533;K"nrat" +C;X2;K"o2" +C;X3;K"Rat" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y534;K"nsea" +C;X2;K"o2" +C;X3;K"Seal" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y535;K"nsha" +C;X2;K"o2" +C;X3;K"Amphibious Sheep" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y536;K"nshe" +C;X2;K"o2" +C;X3;K"Sheep" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y537;K"nshf" +C;X2;K"o2" +C;X3;K"Flying Sheep" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y538;K"nshw" +C;X2;K"o2" +C;X3;K"Secret Watery Sheep" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y539;K"nskk" +C;X2;K"o2" +C;X3;K"Skink" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y540;K"nsno" +C;X2;K"o2" +C;X3;K"Snowy Owl" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K0 +C;X1;Y541;K"nvil" +C;X2;K"o2" +C;X3;K"Villager Man" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y542;K"nvk2" +C;X2;K"o2" +C;X3;K"Villager Kid 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y543;K"nvl2" +C;X2;K"o2" +C;X3;K"Villager Man 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y544;K"nvlk" +C;X2;K"o2" +C;X3;K"Villager Kid" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y545;K"nvlw" +C;X2;K"o2" +C;X3;K"Villager Woman" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y546;K"nvul" +C;X2;K"o2" +C;X3;K"Vulture" +C;X4;K"_" +C;X5;K"Awan" +C;X7;K1 +C;X1;Y547;K"ncb0" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y548;K"ncb1" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y549;K"ncb2" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y550;K"ncb3" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y551;K"ncb4" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y552;K"ncb5" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y553;K"ncb6" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y554;K"ncb7" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y555;K"ncb8" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y556;K"ncb9" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y557;K"ncba" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y558;K"ncbb" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y559;K"ncbc" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y560;K"ncbd" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y561;K"ncbe" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y562;K"ncbf" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y563;K"ncnt" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y564;K"ncop" +C;X2;K"p3" +C;X3;K"circle of power" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K1 +C;X1;Y565;K"ncp2" +C;X2;K"p3" +C;X3;K"circle of power medium" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K1 +C;X1;Y566;K"ncp3" +C;X2;K"p3" +C;X3;K"circle of power large" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K1 +C;X1;Y567;K"nct1" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y568;K"nct2" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y569;K"ndch" +C;X2;K"p3" +C;X3;K"draenei chieftain hut" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y570;K"ndh0" +C;X2;K"p3" +C;X3;K"draenei hut 0" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y571;K"ndh1" +C;X2;K"p3" +C;X3;K"draenei hut 1" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y572;K"ndh2" +C;X2;K"p3" +C;X3;K"draenei haven" +C;X4;K"_" +C;X5;K"Abdl,Argl" +C;X7;K0 +C;X1;Y573;K"ndh3" +C;X2;K"p3" +C;X3;K"draenei barracks" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y574;K"ndh4" +C;X2;K"p3" +C;X3;K"draenei seer's den" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y575;K"ndrg" +C;X2;K"p3" +C;X3;K"Dragon Roost green" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y576;K"ndrk" +C;X2;K"p3" +C;X3;K"Dragon Roost black" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y577;K"ndro" +C;X2;K"p3" +C;X3;K"Dragon Roost Outland" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K0 +C;X1;Y578;K"ndrr" +C;X2;K"p3" +C;X3;K"Dragon Roost red" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y579;K"ndru" +C;X2;K"p3" +C;X3;K"Dragon Roost blue" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y580;K"ndrz" +C;X2;K"p3" +C;X3;K"Dragon Roost bronze" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y581;K"nfh0" +C;X2;K"p3" +C;X3;K"Forest Troll Hut 0" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y582;K"nfh1" +C;X2;K"p3" +C;X3;K"Forest Troll Hut 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y583;K"nfoh" +C;X2;K"p3" +C;X3;K"Fountain of Health" +C;X4;K"_" +C;X5;K"Avul,ACnr" +C;X7;K1 +C;X1;Y584;K"nfr1" +C;X2;K"p3" +C;X3;K"Furbolg Hut 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y585;K"nfr2" +C;X2;K"p3" +C;X3;K"Furbolg Hut 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y586;K"ngad" +C;X2;K"p3" +C;X3;K"Goblin Ammo Dump" +C;X4;K"_" +C;X5;K"Ane2,Andt,Avul" +C;X7;K1 +C;X1;Y587;K"ngme" +C;X2;K"p3" +C;X3;K"goblin merchant" +C;X4;K"_" +C;X5;K"Aneu,Avul,Apit" +C;X7;K1 +C;X1;Y588;K"ngnh" +C;X2;K"p3" +C;X3;K"Gnoll Hut" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y589;K"ngni" +C;X2;K"p3" +C;X3;K"Infected Granary" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y590;K"ngol" +C;X2;K"p3" +C;X3;K"GoldMine" +C;X4;K"_" +C;X5;K"Agld,Avul" +C;X7;K1 +C;X1;Y591;K"ngt2" +C;X2;K"p3" +C;X3;K"Gnoll Hut" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y592;K"ngwr" +C;X2;K"p3" +C;X3;K"grain warehouse" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y593;K"nhns" +C;X2;K"p3" +C;X3;K"harpy nest" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y594;K"nmer" +C;X2;K"p3" +C;X3;K"MercenaryCamp L" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y595;K"nmg0" +C;X2;K"p3" +C;X3;K"Mur'gul Hut 0" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y596;K"nmg1" +C;X2;K"p3" +C;X3;K"Mur'gul Hut 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y597;K"nmh0" +C;X2;K"p3" +C;X3;K"Murloc Hut 0" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y598;K"nmh1" +C;X2;K"p3" +C;X3;K"Murloc Hut 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y599;K"nmoo" +C;X2;K"p3" +C;X3;K"Fountain of Life" +C;X4;K"_" +C;X5;K"Avul,ANre" +C;X7;K1 +C;X1;Y600;K"nmr0" +C;X2;K"p3" +C;X3;K"MercenaryCamp V" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y601;K"nmr2" +C;X2;K"p3" +C;X3;K"MercenaryCamp F" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y602;K"nmr3" +C;X2;K"p3" +C;X3;K"MercenaryCamp W" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y603;K"nmr4" +C;X2;K"p3" +C;X3;K"MercenaryCamp B" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y604;K"nmr5" +C;X2;K"p3" +C;X3;K"MercenaryCamp A" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y605;K"nmr6" +C;X2;K"p3" +C;X3;K"MercenaryCamp C" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y606;K"nmr7" +C;X2;K"p3" +C;X3;K"MercenaryCamp N" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y607;K"nmr8" +C;X2;K"p3" +C;X3;K"MercenaryCamp Y" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y608;K"nmr9" +C;X2;K"p3" +C;X3;K"MercenaryCamp X" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y609;K"nmra" +C;X2;K"p3" +C;X3;K"MercenaryCamp D" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y610;K"nmrb" +C;X2;K"p3" +C;X3;K"MercenaryCamp G" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y611;K"nmrc" +C;X2;K"p3" +C;X3;K"MercenaryCamp Z" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y612;K"nmrd" +C;X2;K"p3" +C;X3;K"MercenaryCamp I" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K0 +C;X1;Y613;K"nmre" +C;X2;K"p3" +C;X3;K"MercenaryCamp O" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K0 +C;X1;Y614;K"nmrf" +C;X2;K"p3" +C;X3;K"MercenaryCamp K" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K0 +C;X1;Y615;K"nmrk" +C;X2;K"p3" +C;X3;K"Marketplace" +C;X4;K"_" +C;X5;K"Aneu,Asid,Avul,Asud,Apit" +C;X7;K1 +C;X1;Y616;K"nnzg" +C;X2;K"p3" +C;X3;K"nerubian ziggurat" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y617;K"nshp" +C;X2;K"p3" +C;X3;K"Goblin Shipyard" +C;X4;K"_" +C;X5;K"Ane2,Avul" +C;X7;K1 +C;X1;Y618;K"ntav" +C;X2;K"p3" +C;X3;K"Tavern" +C;X4;K"_" +C;X5;K"Ane2,Avul,Aawa" +C;X7;K1 +C;X1;Y619;K"nten" +C;X2;K"p3" +C;X3;K"Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y620;K"nth0" +C;X2;K"p3" +C;X3;K"Ice Troll Hut 0" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y621;K"nth1" +C;X2;K"p3" +C;X3;K"Ice Troll Hut 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y622;K"ntn2" +C;X2;K"p3" +C;X3;K"Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y623;K"ntnt" +C;X2;K"p3" +C;X3;K"Tauren Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y624;K"ntt2" +C;X2;K"p3" +C;X3;K"Tauren Tent" +C;X4;K"_" +C;X5;K"_" +C;X7;K1 +C;X1;Y625;K"nwgt" +C;X2;K"p3" +C;X3;K"WayGate" +C;X4;K"_" +C;X5;K"Awrp,Avul" +C;X7;K1 +C;X1;Y626;K"Ecen" +C;X2;K"z1" +C;X3;K"cenarius" +C;X4;K"_" +C;X5;K"AInv,SCc1" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K0 +C;X1;Y627;K"Eevi" +C;X2;K"z1" +C;X3;K"evil illidan" +C;X4;K"_" +C;X5;K"AInv,Ault,ANcl" +C;X6;K"AEmb,AEim,AEev,AEvi" +C;X7;K0 +C;X1;Y628;K"Eevm" +C;X2;K"z1" +C;X3;K"evil illidanmorphed" +C;X4;K"_" +C;X5;K"AInv,Ault,ANcl" +C;X6;K"AEmb,AEim,AEev,AEvi" +C;X7;K0 +C;X1;Y629;K"Efur" +C;X2;K"z1" +C;X3;K"furion" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K0 +C;X1;Y630;K"Eidm" +C;X2;K"z1" +C;X3;K"illidan demon form" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEmb,AEim,AEev" +C;X7;K0 +C;X1;Y631;K"Eill" +C;X2;K"z1" +C;X3;K"illidan" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEmb,AEim,AEev,AEIl" +C;X7;K0 +C;X1;Y632;K"Eilm" +C;X2;K"z1" +C;X3;K"illidanmorphed" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEmb,AEim,AEev,AEIl" +C;X7;K0 +C;X1;Y633;K"Ekgg" +C;X2;K"z1" +C;X3;K"keeper ghost" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K0 +C;X1;Y634;K"Emfr" +C;X2;K"z1" +C;X3;K"Mal'furion" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K0 +C;X1;Y635;K"Emns" +C;X2;K"z1" +C;X3;K"Mal'furion no stag" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AEer,AEfn,AEah,AEtq" +C;X7;K0 +C;X1;Y636;K"Etyr" +C;X2;K"z1" +C;X3;K"Tyrande" +C;X4;K"_" +C;X5;K"AInv,Ashm,Ault" +C;X6;K"AHfa,AEst,AEar,AEsf" +C;X7;K0 +C;X1;Y637;K"Ewrd" +C;X2;K"z1" +C;X3;K"Maiev" +C;X4;K"_" +C;X5;K"Ashm,AInv,Ault" +C;X6;K"AEbl,AEfk,AEsh,AEsv" +C;X7;K0 +C;X1;Y638;K"Hant" +C;X2;K"z1" +C;X3;K"antonidus" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHbz,AHab,AHwe,AHmt" +C;X7;K0 +C;X1;Y639;K"Hapm" +C;X2;K"z1" +C;X3;K"Admiral Proudmoore" +C;X4;K"_" +C;X5;K"AInv" +C;X7;K0 +C;X1;Y640;K"Harf" +C;X2;K"z1" +C;X3;K"arthas w/ frostmourne" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y641;K"Hart" +C;X2;K"z1" +C;X3;K"arthas" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y642;K"Hdgo" +C;X2;K"z1" +C;X3;K"Dagren the Orcslayer" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y643;K"Hhkl" +C;X2;K"z1" +C;X3;K"Halahk the Lifebringer" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y644;K"Hjai" +C;X2;K"z1" +C;X3;K"jaina" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHbz,AHab,AHwe,AHmt" +C;X7;K0 +C;X1;Y645;K"Hkal" +C;X2;K"z1" +C;X3;K"Kael" +C;X4;K"_" +C;X5;K"AInv,Asph" +C;X6;K"AHfs,AHbn,AHdr,AHpx" +C;X7;K0 +C;X1;Y646;K"Hlgr" +C;X2;K"z1" +C;X3;K"Lord Garithos" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANsh,AHhb,AHad,ANav" +C;X7;K0 +C;X1;Y647;K"Hmbr" +C;X2;K"z1" +C;X3;K"muradin bronzebeard" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHtc,AHtb,AHbh,AHav" +C;X7;K0 +C;X1;Y648;K"Hmgd" +C;X2;K"z1" +C;X3;K"Magroth the Defender" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y649;K"Hpb1" +C;X2;K"z1" +C;X3;K"Paladin Boss 1" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y650;K"Hpb2" +C;X2;K"z1" +C;X3;K"Paladin Boss 2" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y651;K"Huth" +C;X2;K"z1" +C;X3;K"uther" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHhb,AHds,AHre,AHad" +C;X7;K0 +C;X1;Y652;K"Hvsh" +C;X2;K"z1" +C;X3;K"Lady Vashj" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANfl,ANfa,ANms,ANto" +C;X7;K0 +C;X1;Y653;K"Hvwd" +C;X2;K"z1" +C;X3;K"sylvanus windrunner" +C;X4;K"_" +C;X5;K"AInv,Ault" +C;X6;K"AHca,AEst,AEar,AEsf" +C;X7;K0 +C;X1;Y654;K"Nbbc" +C;X2;K"z1" +C;X3;K"blackrock blademaster" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOwk,AOcr,AOmi,AOww" +C;X7;K0 +C;X1;Y655;K"Nklj" +C;X2;K"z1" +C;X3;K"Kiljaeden" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y656;K"Nkjx" +C;X2;K"z1" +C;X3;K"Kiljaeden - cinematic only" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y657;K"Nmag" +C;X2;K"z1" +C;X3;K"Magtheridon" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANrf,ANht,ANca,ANdo" +C;X7;K0 +C;X1;Y658;K"Nman" +C;X2;K"z1" +C;X3;K"Mannoroth" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOsh,AHtc,AOeq,ANrn" +C;X7;K0 +C;X1;Y659;K"Npld" +C;X2;K"z1" +C;X3;K"Pit Lord" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOsh,AHtc,AOeq,ANrn" +C;X7;K1 +C;X1;Y660;K"Nsjs" +C;X2;K"z1" +C;X3;K"Chen Stormstout" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANcf,Acdh,Acdb,Acef,Aamk" +C;X7;K0 +C;X1;Y661;K"Ocbh" +C;X2;K"z1" +C;X3;K"cairne bloodhoof" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOsh,AOae,AOre,AOws" +C;X7;K0 +C;X1;Y662;K"Ocb2" +C;X2;K"z1" +C;X3;K"cairne bloodhoof (war3x)" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOs2,AOr2,AOr3,AOw2,Aamk" +C;X7;K0 +C;X1;Y663;K"Odrt" +C;X2;K"z1" +C;X3;K"Drek'Thar" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOfs,AOsf,AOcl,AOeq" +C;X7;K0 +C;X1;Y664;K"Ogld" +C;X2;K"z1" +C;X3;K"Gul'dan" +C;X4;K"_" +C;X5;K"AInv" +C;X7;K0 +C;X1;Y665;K"Ogrh" +C;X2;K"z1" +C;X3;K"grom hellscream" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOwk,AOcr,AOmi,AOww" +C;X7;K0 +C;X1;Y666;K"Opgh" +C;X2;K"z1" +C;X3;K"possessed grom hellscream" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOwk,AOcr,AOmi,AOww" +C;X7;K0 +C;X1;Y667;K"Orex" +C;X2;K"z1" +C;X3;K"Rexxar" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"Arsg,Arsq,ANsb,Arsp,Aamk" +C;X7;K0 +C;X1;Y668;K"Orkn" +C;X2;K"z1" +C;X3;K"Rokhan" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANhw,ANhx,Arsw,AOls,Aamk" +C;X7;K0 +C;X1;Y669;K"Osam" +C;X2;K"z1" +C;X3;K"Samuro" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOwk,AOcr,AOmi,AOww" +C;X7;K0 +C;X1;Y670;K"Otcc" +C;X2;K"z1" +C;X3;K"cairne bloodhoof cinematic" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOsh,AOae,AOre,AOws" +C;X7;K0 +C;X1;Y671;K"Othr" +C;X2;K"z1" +C;X3;K"thrall" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AOfs,AOsf,AOcl,AOeq" +C;X7;K0 +C;X1;Y672;K"Uanb" +C;X2;K"z1" +C;X3;K"anub'arak" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUim,AUts,AUcb,AUls" +C;X7;K0 +C;X1;Y673;K"Ubal" +C;X2;K"z1" +C;X3;K"balnazzar" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUsl,AUav,ANr3,AOeq,ACf3" +C;X7;K0 +C;X1;Y674;K"Uclc" +C;X2;K"z1" +C;X3;K"kelthuzadlich cinematic" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUfn,AUfu,AUdr,AUdd" +C;X7;K0 +C;X1;Y675;K"Udth" +C;X2;K"z1" +C;X3;K"detheroc" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUsl,AEsh,AUcs,AUdd" +C;X7;K0 +C;X1;Y676;K"Uear" +C;X2;K"z1" +C;X3;K"evil arthas" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUdc,AUdp,AUau,AUan" +C;X7;K0 +C;X1;Y677;K"Uktl" +C;X2;K"z1" +C;X3;K"kelthuzadlich" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUfn,AUfu,AUdr,AUdd" +C;X7;K0 +C;X1;Y678;K"Umal" +C;X2;K"z1" +C;X3;K"malganis" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUsl,AUcs,ANsl,ANdc" +C;X7;K0 +C;X1;Y679;K"Usyl" +C;X2;K"z1" +C;X3;K"Evil Sylvanas" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"ANsi,ANba,ANdr,ANch" +C;X7;K0 +C;X1;Y680;K"Utic" +C;X2;K"z1" +C;X3;K"tichondrius" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUsl,AUcs,ANrc,ANfd" +C;X7;K0 +C;X1;Y681;K"Uvar" +C;X2;K"z1" +C;X3;K"varimathras" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUsl,AUav,ANrf,ANdo" +C;X7;K0 +C;X1;Y682;K"Uvng" +C;X2;K"z1" +C;X3;K"Vengyr" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AUav,AUsl,AUcs,AUin" +C;X7;K0 +C;X1;Y683;K"Uwar" +C;X2;K"z1" +C;X3;K"archimonde" +C;X4;K"_" +C;X5;K"AInv,ACm2" +C;X6;K"ANrc,ANdp,ANfd,AHbh" +C;X7;K0 +C;X1;Y684;K"Hgam" +C;X2;K"z1" +C;X3;K"ghostly archmage" +C;X4;K"_" +C;X5;K"AInv" +C;X6;K"AHbz,AHab,AHwe,AHmt" +C;X7;K0 +C;X1;Y685;K"eilw" +C;X2;K"z2" +C;X3;K"illidan wagon" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y686;K"enec" +C;X2;K"z2" +C;X3;K"night elf courier" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y687;K"ensh" +C;X2;K"z2" +C;X3;K"Naisha" +C;X4;K"_" +C;X5;K"Aesr,Ashm,Amgr" +C;X7;K0 +C;X1;Y688;K"eshd" +C;X2;K"z2" +C;X3;K"shandris" +C;X4;K"_" +C;X5;K"Ashm" +C;X7;K0 +C;X1;Y689;K"etrs" +C;X2;K"z2" +C;X3;K"night elf transport ship" +C;X4;K"_" +C;X5;K"Sch5,Slo3,Sdro" +C;X7;K0 +C;X1;Y690;K"hbew" +C;X2;K"z2" +C;X3;K"blood elf wagon" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y691;K"hcth" +C;X2;K"z2" +C;X3;K"captain thornby" +C;X4;K"_" +C;X5;K"Adef" +C;X7;K0 +C;X1;Y692;K"hhdl" +C;X2;K"z2" +C;X3;K"headless rider" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y693;K"hhes" +C;X2;K"z2" +C;X3;K"high elven swordsman" +C;X4;K"_" +C;X5;K"Adef" +C;X7;K0 +C;X1;Y694;K"hrdh" +C;X2;K"z2" +C;X3;K"pack horse" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y695;K"Naka" +C;X2;K"z2" +C;X3;K"akama" +C;X4;K"_" +C;X5;K"AInv,Apiv,Ahid" +C;X6;K"ACs7,AOcl,AEsh,ANr2" +C;X7;K0 +C;X1;Y696;K"nsw1" +C;X2;K"b2" +C;X3;K"spirit beast level 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y697;K"nsw2" +C;X2;K"b2" +C;X3;K"spirit beast level 2" +C;X4;K"_" +C;X5;K"Afbb" +C;X7;K0 +C;X1;Y698;K"nsw3" +C;X2;K"b2" +C;X3;K"spirit beast level 3" +C;X4;K"_" +C;X5;K"Afbb,Ambb" +C;X7;K0 +C;X1;Y699;K"ncat" +C;X2;K"b2" +C;X3;K"Catapult(Draenei)" +C;X4;K"_" +C;X5;K"Abof" +C;X7;K0 +C;X1;Y700;K"nbee" +C;X2;K"z2" +C;X3;K"blood elf engineer" +C;X4;K"_" +C;X5;K"Ahar,Ahrp" +C;X7;K0 +C;X1;Y701;K"nbel" +C;X2;K"z2" +C;X3;K"blood elf lieutenant" +C;X4;K"Asps" +C;X5;K"Asps,Amim,Aiun" +C;X7;K0 +C;X1;Y702;K"nbsp" +C;X2;K"z2" +C;X3;K"battleship" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y703;K"nchg" +C;X2;K"z2" +C;X3;K"chaos grunt" +C;X4;K"_" +C;X5;K"Asal" +C;X7;K0 +C;X1;Y704;K"nchr" +C;X2;K"z2" +C;X3;K"ChaosWolfRider" +C;X4;K"_" +C;X5;K"Aens,Asal" +C;X7;K0 +C;X1;Y705;K"nchw" +C;X2;K"z2" +C;X3;K"ChaosWarlock" +C;X4;K"_" +C;X5;K"Awfb,Suhf,Scri" +C;X7;K0 +C;X1;Y706;K"nckb" +C;X2;K"z2" +C;X3;K"Chaos Kodo Beast" +C;X4;K"_" +C;X5;K"Aakb,Advc,Adev" +C;X7;K0 +C;X1;Y707;K"ncpn" +C;X2;K"z2" +C;X3;K"Chaos Peon" +C;X4;K"_" +C;X5;K"Ahar,Arep,Asal" +C;X7;K0 +C;X1;Y708;K"ndmu" +C;X2;K"z2" +C;X3;K"dalaran mutant" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y709;K"ndrd" +C;X2;K"z2" +C;X3;K"draenei darkslayer" +C;X4;K"_" +C;X5;K"ACim" +C;X7;K0 +C;X1;Y710;K"ndrf" +C;X2;K"z2" +C;X3;K"draenei guardian" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y711;K"ndrn" +C;X2;K"z2" +C;X3;K"draenei vindicator" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y712;K"ndrt" +C;X2;K"z2" +C;X3;K"draenei stalker" +C;X4;K"_" +C;X5;K"Apiv,ACev,ACen" +C;X7;K0 +C;X1;Y713;K"ndrh" +C;X2;K"z2" +C;X3;K"draenei harbinger" +C;X4;K"Ablo" +C;X5;K"Ache,ACbb" +C;X7;K0 +C;X1;Y714;K"ndrl" +C;X2;K"z2" +C;X3;K"draenei laborer" +C;X4;K"_" +C;X5;K"Ahar,Arep" +C;X7;K0 +C;X1;Y715;K"ndsa" +C;X2;K"z2" +C;X3;K"draenei salamander" +C;X4;K"_" +C;X5;K"Alit" +C;X7;K1 +C;X1;Y716;K"ndrj" +C;X2;K"z2" +C;X3;K"dalaran reject" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y717;K"ndrm" +C;X2;K"z2" +C;X3;K"draenei disciple" +C;X4;K"Anhe" +C;X5;K"Anh1" +C;X7;K0 +C;X1;Y718;K"ndrp" +C;X2;K"z2" +C;X3;K"draenei protector" +C;X4;K"_" +C;X5;K"ACen" +C;X7;K0 +C;X1;Y719;K"ndrs" +C;X2;K"z2" +C;X3;K"draenei seer" +C;X4;K"Aslo" +C;X5;K"Aslo,ACba,AChv" +C;X7;K0 +C;X1;Y720;K"ndrw" +C;X2;K"z2" +C;X3;K"draenei watcher" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y721;K"negz" +C;X2;K"z2" +C;X3;K"engineer gazlowe" +C;X4;K"_" +C;X5;K"Asds" +C;X7;K0 +C;X1;Y722;K"nemi" +C;X2;K"z2" +C;X3;K"emissary" +C;X4;K"Ahea" +C;X5;K"Ahea,Ainf,Adis" +C;X7;K0 +C;X1;Y723;K"nfgl" +C;X2;K"z2" +C;X3;K"flesh golem" +C;X4;K"_" +C;X5;K"ACsh,ACcr" +C;X7;K0 +C;X1;Y724;K"ngbl" +C;X2;K"z2" +C;X3;K"goblin blaster" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y725;K"nhea" +C;X2;K"z2" +C;X3;K"high elven archer" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y726;K"nhef" +C;X2;K"z2" +C;X3;K"high elven female" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y727;K"nhem" +C;X2;K"z2" +C;X3;K"high elven male" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y728;K"nhew" +C;X2;K"z2" +C;X3;K"blood elf worker" +C;X4;K"_" +C;X5;K"Ahar,Ahrp" +C;X7;K0 +C;X1;Y729;K"njks" +C;X2;K"z2" +C;X3;K"jailor kassan" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y730;K"nmdm" +C;X2;K"z2" +C;X3;K"medivh morphed" +C;X4;K"_" +C;X5;K"Amrf" +C;X7;K0 +C;X1;Y731;K"nmed" +C;X2;K"z2" +C;X3;K"medivh" +C;X4;K"_" +C;X5;K"Amrf" +C;X7;K0 +C;X1;Y732;K"nmpe" +C;X2;K"z2" +C;X3;K"naga peon" +C;X4;K"_" +C;X5;K"ANha,Arep" +C;X7;K0 +C;X1;Y733;K"nmsh" +C;X2;K"z2" +C;X3;K"misha the bear" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y734;K"nser" +C;X2;K"z2" +C;X3;K"searinox" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y735;K"nspc" +C;X2;K"z2" +C;X3;K"support column" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y736;K"nssn" +C;X2;K"z2" +C;X3;K"night elf assassin" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y737;K"nthr" +C;X2;K"z2" +C;X3;K"tharifas" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y738;K"nw2w" +C;X2;K"z2" +C;X3;K"War2 Warlock" +C;X4;K"_" +C;X5;K"ACfb,ACuf,ACcr" +C;X7;K0 +C;X1;Y739;K"nwat" +C;X2;K"z2" +C;X3;K"sentry" +C;X4;K"Ablo" +C;X5;K"ACbl" +C;X7;K0 +C;X1;Y740;K"odkt" +C;X2;K"z2" +C;X3;K"Drak'Thul" +C;X4;K"_" +C;X5;K"ACmo,ACad" +C;X7;K0 +C;X1;Y741;K"ogrk" +C;X2;K"z2" +C;X3;K"Gar'thok" +C;X4;K"_" +C;X5;K"Asal,Aion" +C;X7;K0 +C;X1;Y742;K"ojgn" +C;X2;K"z2" +C;X3;K"actual orc juggernaut unit" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y743;K"omtg" +C;X2;K"z2" +C;X3;K"mathog" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y744;K"onzg" +C;X2;K"z2" +C;X3;K"nazgrel" +C;X4;K"_" +C;X5;K"Aens,Asal,Aion" +C;X7;K0 +C;X1;Y745;K"oosc" +C;X2;K"z2" +C;X3;K"kodo beast (riderless)" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y746;K"oswy" +C;X2;K"z2" +C;X3;K"spirit wyvern" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y747;K"ovlj" +C;X2;K"z2" +C;X3;K"vol'jin" +C;X4;K"_" +C;X5;K"Aeye,Ahwd,Asta,Aion" +C;X7;K0 +C;X1;Y748;K"owar" +C;X2;K"z2" +C;X3;K"orc warchief" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y749;K"ownr" +C;X2;K"z2" +C;X3;K"wyvern" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y750;K"uabc" +C;X2;K"z2" +C;X3;K"Abomination cinematic" +C;X4;K"_" +C;X5;K"Aap1" +C;X7;K0 +C;X1;Y751;K"uarb" +C;X2;K"z2" +C;X3;K"air barge" +C;X4;K"_" +C;X5;K"Sch3,Achd,Aloa,Adro" +C;X7;K0 +C;X1;Y752;K"ubdd" +C;X2;K"z2" +C;X3;K"dead azurelore" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y753;K"ubdr" +C;X2;K"z2" +C;X3;K"azurelore" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y754;K"ubot" +C;X2;K"z2" +C;X3;K"undead transport ship" +C;X4;K"_" +C;X5;K"Sch5,Slo3,Sdro" +C;X7;K0 +C;X1;Y755;K"udes" +C;X2;K"z2" +C;X3;K"undead destroyer" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y756;K"uktg" +C;X2;K"z2" +C;X3;K"kelthuzadghost" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y757;K"uktn" +C;X2;K"z2" +C;X3;K"kelthuzadnecro" +C;X4;K"_" +C;X5;K"Acri,Arai,Auhf" +C;X7;K0 +C;X1;Y758;K"uswb" +C;X2;K"z2" +C;X3;K"sylvanus banshee" +C;X4;K"Acrs" +C;X5;K"ACam,Acrs" +C;X7;K0 +C;X1;Y759;K"hprt" +C;X2;K"z2" +C;X3;K"portal unit" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y760;K"haro" +C;X2;K"z3" +C;X3;K"Arcane Observatory" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y761;K"nbfl" +C;X2;K"z3" +C;X3;K"Fountain of Blood" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y762;K"nbsm" +C;X2;K"z3" +C;X3;K"book of summoning pedestal" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y763;K"nbt1" +C;X2;K"z3" +C;X3;K"boulder tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y764;K"nbt2" +C;X2;K"z3" +C;X3;K"boulder tower upgraded" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y765;K"nbwd" +C;X2;K"z3" +C;X3;K"barrow den" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y766;K"ncap" +C;X2;K"z3" +C;X3;K"corrupted Ancient Protector" +C;X4;K"_" +C;X5;K"Aeat,Aro2" +C;X7;K0 +C;X1;Y767;K"ncaw" +C;X2;K"z3" +C;X3;K"corrupted AncientofWar" +C;X4;K"_" +C;X5;K"Aeat,Aro1" +C;X7;K0 +C;X1;Y768;K"ncmw" +C;X2;K"z3" +C;X3;K"corrupted MoonWell" +C;X4;K"_" +C;X5;K"Ambt" +C;X7;K0 +C;X1;Y769;K"ncta" +C;X2;K"z3" +C;X3;K"corrupted treeofAges" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Atol" +C;X7;K0 +C;X1;Y770;K"ncte" +C;X2;K"z3" +C;X3;K"corrupted treeofEternity" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Atol" +C;X7;K0 +C;X1;Y771;K"nctl" +C;X2;K"z3" +C;X3;K"corrupted treeofLife" +C;X4;K"_" +C;X5;K"Aent,Aeat,Aro1,Atol" +C;X7;K0 +C;X1;Y772;K"ndfl" +C;X2;K"z3" +C;X3;K"Defiled Fountain of Life" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y773;K"ndgt" +C;X2;K"z3" +C;X3;K"dalaran guard tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y774;K"ndke" +C;X2;K"z3" +C;X3;K"dark portal (southeast)" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y775;K"ndkw" +C;X2;K"z3" +C;X3;K"dark portal (southwest)" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y776;K"ndmg" +C;X2;K"z3" +C;X3;K"demon gate" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y777;K"ndrb" +C;X2;K"z3" +C;X3;K"Dragon Building" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y778;K"ndt1" +C;X2;K"z3" +C;X3;K"cold tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y779;K"ndt2" +C;X2;K"z3" +C;X3;K"cold tower upgraded" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y780;K"nef0" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y781;K"nef1" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y782;K"nef2" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y783;K"nef3" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y784;K"nef4" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y785;K"nef5" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y786;K"nef6" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y787;K"nef7" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y788;K"nefm" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y789;K"negf" +C;X2;K"z3" +C;X3;K"elven guard fire tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y790;K"negm" +C;X2;K"z3" +C;X3;K"elven guard magic tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y791;K"negt" +C;X2;K"z3" +C;X3;K"elven guard tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y792;K"net1" +C;X2;K"z3" +C;X3;K"energy tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y793;K"net2" +C;X2;K"z3" +C;X3;K"energy tower upgraded" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y794;K"nfnp" +C;X2;K"z3" +C;X3;K"purple fountain" +C;X4;K"_" +C;X5;K"ACnr,ANre,Avul" +C;X7;K0 +C;X1;Y795;K"nfrm" +C;X2;K"z3" +C;X3;K"frostmourne pedestal" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y796;K"nfrt" +C;X2;K"z3" +C;X3;K"Fruit Stand" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y797;K"nft1" +C;X2;K"z3" +C;X3;K"flame tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y798;K"nft2" +C;X2;K"z3" +C;X3;K"flame tower upgraded" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y799;K"nfv0" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y800;K"nfv1" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y801;K"nfv2" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y802;K"nfv3" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y803;K"nfv4" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y804;K"ngob" +C;X2;K"z3" +C;X3;K"gemstone obelisk" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y805;K"nhcn" +C;X2;K"z3" +C;X3;K"horn of cenarius pedestal" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y806;K"nheb" +C;X2;K"z3" +C;X3;K"High Elven Barracks" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y807;K"nico" +C;X2;K"z3" +C;X3;K"icecrown obelisk" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y808;K"nitb" +C;X2;K"z3" +C;X3;K"treasure box" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y809;K"nmgv" +C;X2;K"z3" +C;X3;K"magic vault" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y810;K"nnad" +C;X2;K"z3" +C;X3;K"altar of the depths - naga altar" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y811;K"nnfm" +C;X2;K"z3" +C;X3;K"coral bed - naga farm" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y812;K"nnsa" +C;X2;K"z3" +C;X3;K"shrine of azshara - naga caster barracks" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y813;K"nnsg" +C;X2;K"z3" +C;X3;K"spawning grounds - naga barracks" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y814;K"nntg" +C;X2;K"z3" +C;X3;K"tidal guardian - naga tower" +C;X4;K"_" +C;X5;K"Abds" +C;X7;K0 +C;X1;Y815;K"nntt" +C;X2;K"z3" +C;X3;K"temple of tides - naga town hall" +C;X4;K"_" +C;X5;K"Argl,Abds" +C;X7;K0 +C;X1;Y816;K"npgf" +C;X2;K"z3" +C;X3;K"pig farm" +C;X4;K"_" +C;X5;K"Aspi" +C;X7;K0 +C;X1;Y817;K"npgr" +C;X2;K"z3" +C;X3;K"power generator" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y818;K"nshr" +C;X2;K"z3" +C;X3;K"shrine" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y819;K"ntt1" +C;X2;K"z3" +C;X3;K"death tower" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y820;K"ntx2" +C;X2;K"z3" +C;X3;K"death tower upgraded" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y821;K"nvr0" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y822;K"nvr1" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y823;K"nvr2" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y824;K"nwc1" +C;X2;K"z3" +C;X3;K"wyvern cage 1" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y825;K"nwc2" +C;X2;K"z3" +C;X3;K"wyvern cage 2" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y826;K"ocbw" +C;X2;K"z3" +C;X3;K"Chaos OrcBurrow" +C;X4;K"_" +C;X5;K"Abds,Aspi,Abun,Sbtl,Astd,Arbr" +C;X7;K0 +C;X1;Y827;K"nzin" +C;X2;K"z3" +C;X3;K"zone indicator" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y828;K"nbse" +C;X2;K"z3" +C;X3;K"bindstone southeast" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y829;K"nbsw" +C;X2;K"z3" +C;X3;K"bindstone southwest" +C;X4;K"_" +C;X5;K"Avul" +C;X7;K0 +C;X1;Y830;K"zcso" +C;X2;K"z9" +C;X3;K"Chaos Space Orc" +C;X4;K"_" +C;X5;K"Arng" +C;X7;K0 +C;X1;Y831;K"zhyd" +C;X2;K"z9" +C;X3;K"hydralisk" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y832;K"zjug" +C;X2;K"z9" +C;X3;K"orc juggernaut" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y833;K"zmar" +C;X2;K"z9" +C;X3;K"Marine" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y834;K"zshv" +C;X2;K"z9" +C;X3;K"kobold shoveler" +C;X4;K"_" +C;X5;K"ACcl" +C;X7;K0 +C;X1;Y835;K"zsmc" +C;X2;K"z9" +C;X3;K"sammy cube" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y836;K"zzrg" +C;X2;K"z9" +C;X3;K"zergling" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +C;X1;Y837;K"nzlc" +C;X2;K"z2" +C;X3;K"cinematic lich king" +C;X4;K"_" +C;X5;K"_" +C;X7;K0 +E diff --git a/share/mpq/units/units/unitbalance.slk b/share/mpq/units/units/unitbalance.slk new file mode 100644 index 0000000..dc61217 --- /dev/null +++ b/share/mpq/units/units/unitbalance.slk @@ -0,0 +1,51058 @@ +ID;PWXL;N;E +B;X61;Y837;D0 +C;X1;Y1;K"unitBalanceID" +C;X2;K"sortBalance" +C;X3;K"sort2" +C;X4;K"comment(s)" +C;X5;K"level" +C;X7;K"type" +C;X8;K"goldcost" +C;X9;K"lumbercost" +C;X10;K"goldRep" +C;X11;K"lumberRep" +C;X12;K"fmade" +C;X13;K"fused" +C;X14;K"bountydice" +C;X15;K"bountysides" +C;X16;K"bountyplus" +C;X17;K"lumberbountydice" +C;X18;K"lumberbountysides" +C;X19;K"lumberbountyplus" +C;X20;K"stockMax" +C;X21;K"stockRegen" +C;X22;K"stockStart" +C;X23;K"HP" +C;X24;K"realHP" +C;X25;K"regenHP" +C;X26;K"regenType" +C;X27;K"manaN" +C;X28;K"realM" +C;X29;K"mana0" +C;X30;K"regenMana" +C;X31;K"def" +C;X32;K"defUp" +C;X33;K"realdef" +C;X34;K"defType" +C;X35;K"spd" +C;X36;K"minSpd" +C;X37;K"maxSpd" +C;X38;K"bldtm" +C;X39;K"reptm" +C;X40;K"sight" +C;X41;K"nsight" +C;X42;K"STR" +C;X43;K"INT" +C;X44;K"AGI" +C;X45;K"STRplus" +C;X46;K"INTplus" +C;X47;K"AGIplus" +C;X48;K"abilTest" +C;X49;K"Primary" +C;X50;K"upgrades" +C;X51;K"tilesets" +C;X52;K"nbrandom" +C;X53;K"isbldg" +C;X54;K"preventPlace" +C;X55;K"requirePlace" +C;X56;K"repulse" +C;X57;K"repulseParam" +C;X58;K"repulseGroup" +C;X59;K"repulsePrio" +C;X60;K"collision" +C;X61;K"InBeta" +C;X1;Y2;K"Hamg" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroArchMage" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K450 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K14 +C;X43;K19 +C;X44;K17 +C;X45;K1.8 +C;X46;K3.2 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y3;K"Hblm" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroBloodMage" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K19 +C;X44;K14 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y4;K"Hmkg" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroMountainKing" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2.3 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K15 +C;X44;K11 +C;X45;K3 +C;X46;K1.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y5;K"Hpal" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroPaladin" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y6;K"hbot" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"transport ship" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K50 +C;X10;K170 +C;X11;K50 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y7;K"hbsh" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"human battleship" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K500 +C;X9;K200 +C;X10;K500 +C;X11;K200 +C;X12;K" - " +C;X13;K0 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1000 +C;X24;K1000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y8;K"hdes" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"human frigate" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K250 +C;X9;K100 +C;X10;K250 +C;X11;K100 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1500 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y9;K"hdhw" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"blood elf dragon hawk" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K235 +C;X9;K40 +C;X10;K235 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K575 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K150 +C;X30;K0.75 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K65 +C;X40;K1600 +C;X41;K900 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhla,Rhme,Rguv,Rhan,Rhcd" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y10;K"hfoo" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Footman" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K420 +C;X24;K420 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme,Rhde,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y11;K"hgry" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"GryphonRider" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K280 +C;X9;K70 +C;X10;K280 +C;X11;K70 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K825 +C;X24;K825 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1600 +C;X41;K900 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhan,Rhla,Rhhb,Rhme,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y12;K"hgyr" +C;X2;K"a2" +C;X3;K"fly1" +C;X4;K"Flying Machine" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K90 +C;X9;K30 +C;X10;K90 +C;X11;K30 +C;X12;K" - " +C;X13;K1 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K175 +C;X24;K175 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K13 +C;X39;K13 +C;X40;K1800 +C;X41;K1100 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhra,Rhgb,Rhfc,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y13;K"hkni" +C;X2;K"a2" +C;X3;K"me2" +C;X4;K"Knight" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K245 +C;X9;K60 +C;X10;K245 +C;X11;K60 +C;X12;K" - " +C;X13;K4 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K800 +C;X24;K800 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K45 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme,Rhan,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y14;K"hmil" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Militia" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y15;K"hmpr" +C;X2;K"a2" +C;X3;K"cas" +C;X4;K"Priest" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K10 +C;X10;K135 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K290 +C;X24;K290 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhpt,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y16;K"hmtm" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"MortarTeam" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K70 +C;X10;K180 +C;X11;K70 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K360 +C;X24;K360 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K32 +C;X39;K32 +C;X40;K1400 +C;X41;K1200 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhla,Rhra,Rhfl,Rhfs,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y17;K"hmtt" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"Siege Engine" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K195 +C;X9;K60 +C;X10;K195 +C;X11;K60 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"fort" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhra,Rhrt,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y18;K"hpea" +C;X2;K"a2" +C;X3;K"peo" +C;X4;K"Peasant" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhlh,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y19;K"hphx" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"Phoenix" +C;X5;K0 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1250 +C;X24;K1250 +C;X25;K-25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1600 +C;X41;K900 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y20;K"hpxe" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"Phoenix Egg" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y21;K"hrif" +C;X2;K"a2" +C;X3;K"ran" +C;X4;K"Rifleman" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K520 +C;X24;K520 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhla,Rhra,Rhri,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y22;K"hrtt" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"siege engine upgraded" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K195 +C;X9;K60 +C;X10;K195 +C;X11;K60 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"fort" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhra,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y23;K"hsor" +C;X2;K"a2" +C;X3;K"cas" +C;X4;K"Sorceress" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K20 +C;X10;K155 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K325 +C;X24;K325 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhst,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y24;K"hspt" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Blood Elf Spell Breaker" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K30 +C;X10;K215 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K650 +C;X24;K650 +C;X25;K0.5 +C;X26;K"always" +C;X27;K250 +C;X28;K250 +C;X29;K75 +C;X30;K0.8 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme,Rhss,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y25;K"hwat" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y26;K"hwt2" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental level 2" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K675 +C;X24;K675 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y27;K"hwt3" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental level 3" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K900 +C;X24;K900 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y28;K"nlv1" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn" +C;X5;K3 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K425 +C;X24;K425 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y29;K"nlv2" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn2" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y30;K"nlv3" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn3" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y31;K"halt" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"AltarofKings" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K50 +C;X10;K180 +C;X11;K50 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y32;K"harm" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Workshop" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K140 +C;X9;K140 +C;X10;K140 +C;X11;K140 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y33;K"hars" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"ArcaneSanctum" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K150 +C;X9;K140 +C;X10;K150 +C;X11;K140 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1050 +C;X24;K1050 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y34;K"hatw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"Arcane Tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K80 +C;X9;K60 +C;X10;K110 +C;X11;K80 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y35;K"hbar" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"HumanBarracks" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K160 +C;X9;K60 +C;X10;K160 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y36;K"hbla" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Blacksmith" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K140 +C;X9;K60 +C;X10;K140 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y37;K"hcas" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Castle" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,Mechanical" +C;X8;K380 +C;X9;K230 +C;X10;K1085 +C;X11;K645 +C;X12;K12 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2500 +C;X24;K2500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K172 +C;X61;K1 +C;X1;Y38;K"hctw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"CannonTower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K100 +C;X10;K200 +C;X11;K120 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K75 +C;X39;K75 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y39;K"hgra" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"GryphonAviary" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K240 +C;X10;K120 +C;X11;K240 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K75 +C;X39;K75 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K100 +C;X61;K1 +C;X1;Y40;K"hgtw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"GuardTower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K80 +C;X9;K60 +C;X10;K110 +C;X11;K80 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y41;K"hhou" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K80 +C;X9;K20 +C;X10;K80 +C;X11;K20 +C;X12;K6 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y42;K"hkee" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Keep" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,Mechanical" +C;X8;K320 +C;X9;K210 +C;X10;K705 +C;X11;K415 +C;X12;K12 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K1 +C;X1;Y43;K"hlum" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"LumberMill" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K145 +C;X9;K0 +C;X10;K145 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y44;K"hshy" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"human shipyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y45;K"htow" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"TownHall" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,Mechanical" +C;X8;K385 +C;X9;K205 +C;X10;K385 +C;X11;K205 +C;X12;K12 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K180 +C;X39;K180 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K1 +C;X1;Y46;K"hvlt" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Arcane Vault" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K130 +C;X9;K30 +C;X10;K130 +C;X11;K30 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K485 +C;X24;K485 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1000 +C;X41;K750 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y47;K"hwtw" +C;X2;K"a3" +C;X3;K"xbui" +C;X4;K"Scout Tower" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K30 +C;X9;K20 +C;X10;K30 +C;X11;K20 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"small" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1600 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhac,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y48;K"Obla" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroBladeMaster" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.9 +C;X34;K"hero" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K16 +C;X44;K23 +C;X45;K2 +C;X46;K2.25 +C;X47;K1.75 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y49;K"Ofar" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroFarSeer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K19 +C;X44;K18 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y50;K"Oshd" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroShadowHunter" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K17 +C;X44;K20 +C;X45;K2 +C;X46;K2.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y51;K"Otch" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroTaurenChieftain" +C;X5;K5 +C;X6;KFALSE +C;X7;K"Tauren" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K725 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K210 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K14 +C;X44;K10 +C;X45;K3.2 +C;X46;K1.3 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y52;K"ncat" +C;X2;K"b2" +C;X3;K"art" +C;X4;K"Demolisher(Draenei)" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K220 +C;X9;K50 +C;X10;K220 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K425 +C;X24;K425 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Robf,Rguv" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y53;K"nsw1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 1" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y54;K"nsw2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 2" +C;X5;K3 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y55;K"nsw3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 3" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K400 +C;X24;K400 +C;X25;K0.25 +C;X26;K"always" +C;X27;K150 +C;X28;K150 +C;X29;K150 +C;X30;K0.375 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y56;K"nwad" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"WatcherWard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1600 +C;X41;K1600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y57;K"obot" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"orcish transport" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K50 +C;X10;K170 +C;X11;K50 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y58;K"ocat" +C;X2;K"b2" +C;X3;K"art" +C;X4;K"Demolisher" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K220 +C;X9;K50 +C;X10;K220 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K425 +C;X24;K425 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Robf,Rolf,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y59;K"odes" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"orcish destroyer" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K250 +C;X9;K100 +C;X10;K250 +C;X11;K100 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1500 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y60;K"odoc" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"WitchDoctor" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K25 +C;X10;K145 +C;X11;K25 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K315 +C;X24;K315 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rowd,Rotr,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y61;K"oeye" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"SentryWard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1600 +C;X41;K1600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y62;K"ogru" +C;X2;K"b2" +C;X3;K"me1" +C;X4;K"Grunt" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K0 +C;X10;K200 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Robs,Ropg,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y63;K"ohun" +C;X2;K"b2" +C;X3;K"ran" +C;X4;K"HeadHunter" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K20 +C;X10;K135 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K350 +C;X24;K350 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Rotr,Ropm,Robk,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y64;K"ohwd" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"Healing Ward" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K5 +C;X24;K5 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y65;K"okod" +C;X2;K"b2" +C;X3;K"xx" +C;X4;K"KodoBeast" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K60 +C;X10;K255 +C;X11;K60 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1000 +C;X24;K1000 +C;X25;K0.25 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rwdm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y66;K"opeo" +C;X2;K"b2" +C;X3;K"peo" +C;X4;K"Peon" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K250 +C;X24;K250 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ropg,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y67;K"orai" +C;X2;K"b2" +C;X3;K"me1" +C;X4;K"Raider" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K610 +C;X24;K610 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Roen,Ropg,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y68;K"oshm" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"Shaman" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K20 +C;X10;K130 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K335 +C;X24;K335 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rost,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y69;K"osp1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"serpent ward 1" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K75 +C;X24;K75 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K0 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y70;K"osp2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"serpent ward 2" +C;X5;K2 +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K135 +C;X24;K135 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K0 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y71;K"osp3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"serpent ward 3" +C;X5;K3 +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K135 +C;X24;K135 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K0 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y72;K"osp4" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"serpent ward 4" +C;X5;K3 +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K135 +C;X24;K135 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K0 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y73;K"ospm" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"SpiritwalkerMorph" +C;X5;K3 +C;X6;KFALSE +C;X7;K"Tauren" +C;X8;K195 +C;X9;K35 +C;X10;K195 +C;X11;K35 +C;X12;K" - " +C;X13;K3 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K0.25 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K100 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K42 +C;X39;K42 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rowt,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y74;K"ospw" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"Spiritwalker" +C;X5;K3 +C;X6;KFALSE +C;X7;K"Tauren" +C;X8;K195 +C;X9;K35 +C;X10;K195 +C;X11;K35 +C;X12;K" - " +C;X13;K3 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K0.25 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K100 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K42 +C;X39;K42 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rowt,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y75;K"osw1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit wolf level 1" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y76;K"osw2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit wolf level 2" +C;X5;K3 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y77;K"osw3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit wolf level 3" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K400 +C;X24;K400 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y78;K"otau" +C;X2;K"b2" +C;X3;K"me2" +C;X4;K"Tauren" +C;X5;K5 +C;X6;KFALSE +C;X7;K"Tauren" +C;X8;K280 +C;X9;K80 +C;X10;K280 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1300 +C;X24;K1300 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K44 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Rows,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y79;K"otbk" +C;X2;K"b2" +C;X3;K"ran" +C;X4;K"Berserker" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K20 +C;X10;K135 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Rotr,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y80;K"otbr" +C;X2;K"b2" +C;X3;K"fly1" +C;X4;K"Troll Batrider" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K160 +C;X9;K40 +C;X10;K160 +C;X11;K40 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K1400 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Rguv,Rotr" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y81;K"otot" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"StasisTrapward" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y82;K"owyv" +C;X2;K"b2" +C;X3;K"fly2" +C;X4;K"Wind Rider" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K265 +C;X9;K40 +C;X10;K265 +C;X11;K40 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rora,Rovs,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y83;K"oalt" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"AltarofStorms" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K50 +C;X10;K180 +C;X11;K50 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y84;K"obar" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Barracks" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K50 +C;X10;K180 +C;X11;K50 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y85;K"obea" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Beastiary" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K145 +C;X9;K140 +C;X10;K145 +C;X11;K140 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1100 +C;X24;K1100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y86;K"ofor" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Lumber Forge" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K205 +C;X9;K0 +C;X10;K205 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1000 +C;X24;K1000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y87;K"ofrt" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Fortress" +C;X5;K"-" +C;X6;KFALSE +C;X7;K"TownHall,Mechanical" +C;X8;K345 +C;X9;K210 +C;X10;K1045 +C;X11;K585 +C;X12;K10 +C;X13;K" - " +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2500 +C;X24;K2500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K1 +C;X1;Y88;K"ogre" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"GreatHall" +C;X5;K"-" +C;X6;KFALSE +C;X7;K"TownHall,Mechanical" +C;X8;K385 +C;X9;K185 +C;X10;K385 +C;X11;K185 +C;X12;K10 +C;X13;K" - " +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K150 +C;X39;K150 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K1 +C;X1;Y89;K"oshy" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"orc shipyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y90;K"osld" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"SpiritLodge" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K150 +C;X9;K150 +C;X10;K150 +C;X11;K150 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K800 +C;X24;K800 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y91;K"ostr" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Stronghold" +C;X5;K"-" +C;X6;KFALSE +C;X7;K"TownHall,Mechanical" +C;X8;K315 +C;X9;K190 +C;X10;K700 +C;X11;K375 +C;X12;K10 +C;X13;K" - " +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K1 +C;X1;Y92;K"otrb" +C;X2;K"b3" +C;X3;K"tow" +C;X4;K"OrcBurrow" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K160 +C;X9;K40 +C;X10;K160 +C;X11;K40 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K1 +C;X33;K2 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rorb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y93;K"otto" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Tauren Totem" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K90 +C;X9;K200 +C;X10;K90 +C;X11;K200 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y94;K"ovln" +C;X2;K"b3" +C;X3;K"xbui" +C;X4;K"Voodoo Lounge" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K130 +C;X9;K30 +C;X10;K130 +C;X11;K30 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1000 +C;X41;K750 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y95;K"owtw" +C;X2;K"b3" +C;X3;K"tow" +C;X4;K"WatchTower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K110 +C;X9;K80 +C;X10;K110 +C;X11;K80 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K1 +C;X33;K3 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rorb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y96;K"Edem" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroDemonHunter" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K575 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K16 +C;X44;K22 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y97;K"Edmm" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroDemonHunterMorph" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K750 +C;X25;K1 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K16 +C;X44;K20 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y98;K"Ekee" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroKeeperoftheGrove" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K500 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.5 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K900 +C;X42;K16 +C;X43;K18 +C;X44;K15 +C;X45;K1.8 +C;X46;K2.7 +C;X47;K1.5 +C;X48;K6 +C;X49;K"INT" +C;X50;K"Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y99;K"Emoo" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroMoonPriestess" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.7 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K19 +C;X45;K1.9 +C;X46;K2.6 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y100;K"Ewar" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroWarden" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K20 +C;X45;K2.4 +C;X46;K2 +C;X47;K1.6 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y101;K"earc" +C;X2;K"c2" +C;X3;K"ran" +C;X4;K"Archer" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K10 +C;X10;K130 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K310 +C;X24;K310 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Reib,Remk,Reuv,Repm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y102;K"ebal" +C;X2;K"c2" +C;X3;K"art" +C;X4;K"Glaive Thrower" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K210 +C;X9;K65 +C;X10;K210 +C;X11;K65 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K48 +C;X39;K48 +C;X40;K1400 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Reuv,Repb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y103;K"ebsh" +C;X2;K"c2" +C;X3;K"zz" +C;X4;K"night elf battleship" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K500 +C;X9;K200 +C;X10;K500 +C;X11;K200 +C;X12;K" - " +C;X13;K0 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1000 +C;X24;K1000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y104;K"echm" +C;X2;K"c2" +C;X3;K"fly2" +C;X4;K"Chimaera" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K330 +C;X9;K70 +C;X10;K330 +C;X11;K70 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K65 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Recb,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y105;K"edcm" +C;X2;K"c2" +C;X3;K"me2" +C;X4;K"DruidoftheClawMorph" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K80 +C;X10;K255 +C;X11;K80 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K810 +C;X24;K810 +C;X25;K1 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K100 +C;X30;K0.333333333333333 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Reuv,Redc,Repm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y106;K"edes" +C;X2;K"c2" +C;X3;K"zz" +C;X4;K"night elf destroyer" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K250 +C;X9;K100 +C;X10;K250 +C;X11;K100 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1500 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y107;K"edoc" +C;X2;K"c2" +C;X3;K"cas" +C;X4;K"DruidoftheClaw" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K80 +C;X10;K255 +C;X11;K80 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K430 +C;X24;K430 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K100 +C;X30;K0.666666666666667 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Redc,Reuv,Repm,Reeb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y108;K"edot" +C;X2;K"c2" +C;X3;K"cas" +C;X4;K"DruidoftheTalon" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K20 +C;X10;K135 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Redt,Reuv,Repm,Reec" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y109;K"edry" +C;X2;K"c2" +C;X3;K"ran" +C;X4;K"Dryad" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K60 +C;X10;K145 +C;X11;K60 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K435 +C;X24;K435 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Resi,Reuv,Repm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y110;K"edtm" +C;X2;K"c2" +C;X3;K"fly1" +C;X4;K"DruidoftheTalonMorph" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K20 +C;X10;K135 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K1 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Reuv,Redt" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y111;K"efdr" +C;X2;K"c2" +C;X3;K"fly1" +C;X4;K"faerie dragon" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K25 +C;X10;K155 +C;X11;K25 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1600 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y112;K"efon" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"Treant" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K5 +C;X33;K0 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Reuv,Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y113;K"ehip" +C;X2;K"c2" +C;X3;K"fly1" +C;X4;K"Hippogryph" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K160 +C;X9;K20 +C;X10;K160 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K525 +C;X24;K525 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Reht,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y114;K"ehpr" +C;X2;K"c2" +C;X3;K"fly2" +C;X4;K"Hippogryph Rider" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K30 +C;X10;K290 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K835 +C;X24;K835 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Reib,Remk,Reht,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y115;K"emtg" +C;X2;K"c2" +C;X3;K"art" +C;X4;K"Mountain Giant" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K7 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1400 +C;X24;K1400 +C;X25;K1.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resw,Rerh,Rers,Rehs,Repm,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y116;K"esen" +C;X2;K"c2" +C;X3;K"me1" +C;X4;K"Huntress" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K195 +C;X9;K20 +C;X10;K195 +C;X11;K20 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"none" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Resc,Reuv,Remg,Repm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y117;K"espv" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"spirit of vengeance" +C;X5;K7 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1200 +C;X24;K1200 +C;X25;K1.6 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K2 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y118;K"even" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"vengeance" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K1.6 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y119;K"ewsp" +C;X2;K"c2" +C;X3;K"peo" +C;X4;K"Wisp" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K60 +C;X9;K0 +C;X10;K60 +C;X11;K0 +C;X12;K"-" +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K120 +C;X24;K120 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K14 +C;X39;K14 +C;X40;K1000 +C;X41;K750 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rewd,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y120;K"eaoe" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"AncientofLore" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K155 +C;X9;K145 +C;X10;K155 +C;X11;K145 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y121;K"eaom" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"AncientofWar" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K150 +C;X9;K60 +C;X10;K150 +C;X11;K60 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y122;K"eaow" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"AncientofWind" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K150 +C;X9;K140 +C;X10;K150 +C;X11;K140 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y123;K"eate" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"AltarofElders" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K50 +C;X10;K180 +C;X11;K50 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K"-" +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y124;K"eden" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"Ancient of Wonders" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K90 +C;X9;K30 +C;X10;K90 +C;X11;K30 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1000 +C;X41;K750 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y125;K"edob" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"HuntersHall" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K210 +C;X9;K100 +C;X10;K210 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1100 +C;X24;K1100 +C;X25;K"-" +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y126;K"edos" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"ChimaeraRoost" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K100 +C;X9;K230 +C;X10;K100 +C;X11;K230 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y127;K"egol" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"EntangledGoldMine" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K800 +C;X24;K800 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y128;K"emow" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"MoonWell" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K300 +C;X28;K300 +C;X29;K100 +C;X30;K1.25 +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rews,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K1 +C;X1;Y129;K"eshy" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"nightelf shipyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y130;K"etoa" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"TreeofAges" +C;X5;K2 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K320 +C;X9;K180 +C;X10;K660 +C;X11;K365 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1700 +C;X24;K1700 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y131;K"etoe" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"TreeofEternity" +C;X5;K3 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K350 +C;X9;K220 +C;X10;K1010 +C;X11;K585 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K130 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y132;K"etol" +C;X2;K"c3" +C;X3;K"xbui" +C;X4;K"TreeofLife" +C;X5;K1 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K340 +C;X9;K185 +C;X10;K340 +C;X11;K185 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1300 +C;X24;K1300 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K110 +C;X39;K110 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y133;K"etrp" +C;X2;K"c3" +C;X3;K"tow" +C;X4;K"Ancient Protector" +C;X5;K3 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K135 +C;X9;K80 +C;X10;K135 +C;X11;K80 +C;X12;K" - " +C;X13;K"-" +C;X14;K3 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y134;K"Ucrl" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroCryptLord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K25 +C;X24;K675 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K210 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K14 +C;X44;K14 +C;X45;K3.2 +C;X46;K1.6 +C;X47;K1.2 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y135;K"Udea" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroDeathKnight" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K675 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K255 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K23 +C;X43;K17 +C;X44;K12 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y136;K"Udre" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroDreadLord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K2.5 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y137;K"Ulic" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroLich" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K300 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K20 +C;X44;K14 +C;X45;K2 +C;X46;K3.4 +C;X47;K1 +C;X48;K6.4 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y138;K"uabo" +C;X2;K"d2" +C;X3;K"me2" +C;X4;K"Abomination" +C;X5;K4 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K240 +C;X9;K70 +C;X10;K240 +C;X11;K70 +C;X12;K" - " +C;X13;K4 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1080 +C;X24;K1080 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K45 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruar,Rume,Rupc,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y139;K"uaco" +C;X2;K"d2" +C;X3;K"peo" +C;X4;K"Acolyte" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon,undead" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y140;K"uban" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Banshee" +C;X5;K2 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K155 +C;X9;K30 +C;X10;K155 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K285 +C;X24;K285 +C;X25;K2 +C;X26;K"blight" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruba,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y141;K"ubsp" +C;X2;K"d2" +C;X3;K"fly2" +C;X4;K"destroyer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K100 +C;X9;K50 +C;X10;K300 +C;X11;K85 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K900 +C;X24;K900 +C;X25;K2 +C;X26;K"blight" +C;X27;K400 +C;X28;K400 +C;X29;K0 +C;X30;K-3 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"small" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K60 +C;X40;K1400 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Rusp,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y142;K"ucrm" +C;X2;K"d2" +C;X3;K"ran" +C;X4;K"CryptFiendMorph" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K215 +C;X9;K40 +C;X10;K215 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K550 +C;X24;K550 +C;X25;K10 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Ruwb,Rubu,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y143;K"ucry" +C;X2;K"d2" +C;X3;K"ran" +C;X4;K"CryptFiend" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K215 +C;X9;K40 +C;X10;K215 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K550 +C;X24;K550 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Ruwb,Rubu,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y144;K"ucs1" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion scarab level 1" +C;X5;K1 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K140 +C;X24;K140 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y145;K"ucs2" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion scarab level 2" +C;X5;K2 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K275 +C;X24;K275 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y146;K"ucs3" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion scarab level 3" +C;X5;K3 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K410 +C;X24;K410 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y147;K"ucsB" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion scarab level 2 -burrowed" +C;X5;K2 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K275 +C;X24;K275 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y148;K"ucsC" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion scarab level 3 -burrowed" +C;X5;K3 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K410 +C;X24;K410 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y149;K"ufro" +C;X2;K"d2" +C;X3;K"fly2" +C;X4;K"FrostWyrm" +C;X5;K6 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K7 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1350 +C;X24;K1350 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Rufb,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y150;K"ugar" +C;X2;K"d2" +C;X3;K"fly1" +C;X4;K"Gargoyle" +C;X5;K2 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K185 +C;X9;K30 +C;X10;K185 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K410 +C;X24;K410 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"none" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Rusf,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y151;K"ugho" +C;X2;K"d2" +C;X3;K"me1" +C;X4;K"Ghoul" +C;X5;K2 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K330 +C;X24;K330 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruar,Rume,Rugf,Ruac,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y152;K"ugrm" +C;X2;K"d2" +C;X3;K"fly1" +C;X4;K"GargoyleMorphed" +C;X5;K2 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K185 +C;X9;K30 +C;X10;K185 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K410 +C;X24;K410 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K15 +C;X32;K2 +C;X33;K15 +C;X34;K"none" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rura,Rucr,Rusf,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y153;K"uloc" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"locust" +C;X5;K0 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K65 +C;X24;K65 +C;X25;K0.25 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y154;K"umtw" +C;X2;K"d2" +C;X3;K"art" +C;X4;K"MeatWagon" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K230 +C;X9;K50 +C;X10;K230 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K380 +C;X24;K380 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rupc,Rume,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y155;K"unec" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Necromancer" +C;X5;K2 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K145 +C;X9;K20 +C;X10;K145 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K305 +C;X24;K305 +C;X25;K2 +C;X26;K"blight" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.666666666666667 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rusl,Rune,Rusm,Rupm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y156;K"uobs" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Obsidian Statue" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K200 +C;X9;K35 +C;X10;K200 +C;X11;K35 +C;X12;K" - " +C;X13;K3 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K800 +C;X24;K800 +C;X25;K"-" +C;X26;K"none" +C;X27;K600 +C;X28;K600 +C;X29;K400 +C;X30;K1.5 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rusp,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y157;K"uplg" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"PlagueWard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y158;K"ushd" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"Shade" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K125 +C;X24;K125 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y159;K"uske" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"SkeletonWarrior" +C;X5;K1 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K3 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K180 +C;X24;K180 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruar,Rume,Rusl,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y160;K"uskm" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"Skeletal Mage" +C;X5;K1 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K3 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K230 +C;X24;K230 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruar,Rume,Rusl,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y161;K"uubs" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"undead battleship" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K500 +C;X9;K200 +C;X10;K500 +C;X11;K200 +C;X12;K" - " +C;X13;K0 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1000 +C;X24;K1000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y162;K"uaod" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"AltarofDarkness" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K180 +C;X9;K50 +C;X10;K180 +C;X11;K50 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y163;K"ubon" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Boneyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K125 +C;X9;K250 +C;X10;K125 +C;X11;K250 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y164;K"ugol" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Haunted Mine" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K255 +C;X9;K220 +C;X10;K255 +C;X11;K220 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K950 +C;X24;K950 +C;X25;K0 +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y165;K"ugrv" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Graveyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K215 +C;X9;K0 +C;X10;K215 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y166;K"unp1" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Halls of the Dead" +C;X5;K2 +C;X6;KTRUE +C;X7;K"TownHall,undead,Mechanical" +C;X8;K320 +C;X9;K210 +C;X10;K575 +C;X11;K210 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1750 +C;X24;K1750 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K196 +C;X61;K1 +C;X1;Y167;K"unp2" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Black Citadel" +C;X5;K3 +C;X6;KTRUE +C;X7;K"TownHall,undead,Mechanical" +C;X8;K345 +C;X9;K250 +C;X10;K920 +C;X11;K460 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K140 +C;X39;K120 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K196 +C;X61;K1 +C;X1;Y168;K"unpl" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Necropolis" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,undead,Mechanical" +C;X8;K255 +C;X9;K0 +C;X10;K255 +C;X11;K0 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K120 +C;X39;K120 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K196 +C;X61;K1 +C;X1;Y169;K"usap" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"SacrificialPit" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K75 +C;X9;K150 +C;X10;K75 +C;X11;K150 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y170;K"usep" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Crypt" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K200 +C;X9;K50 +C;X10;K200 +C;X11;K50 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1300 +C;X24;K1300 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y171;K"ushp" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"undead shipyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K750 +C;X24;K750 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y172;K"uslh" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Slaughterhouse" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K140 +C;X9;K135 +C;X10;K140 +C;X11;K135 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y173;K"utod" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"TempleoftheDamned" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K155 +C;X9;K140 +C;X10;K155 +C;X11;K140 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1100 +C;X24;K1100 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K1 +C;X1;Y174;K"utom" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Tomb of Relics" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K130 +C;X9;K30 +C;X10;K130 +C;X11;K30 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K475 +C;X24;K475 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1000 +C;X41;K750 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y175;K"uzg1" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Spirit Tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K145 +C;X9;K40 +C;X10;K295 +C;X11;K90 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K550 +C;X24;K550 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K120 +C;X61;K1 +C;X1;Y176;K"uzg2" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Frost Tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K100 +C;X9;K20 +C;X10;K250 +C;X11;K70 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K550 +C;X24;K550 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K120 +C;X61;K1 +C;X1;Y177;K"uzig" +C;X2;K"d3" +C;X3;K"xbui" +C;X4;K"Ziggurat" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"undead,Mechanical" +C;X8;K150 +C;X9;K50 +C;X10;K150 +C;X11;K50 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K550 +C;X24;K550 +C;X25;K0 +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"blighted" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K120 +C;X61;K1 +C;X1;Y178;K"Nal2" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroAlchemistMorph2" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K0.1 +C;X34;K"hero" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K18 +C;X44;K7 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y179;K"Nal3" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroAlchemistMorph3" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K0.1 +C;X34;K"hero" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K18 +C;X44;K7 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y180;K"Nalc" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroAlchemist" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K0.1 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K18 +C;X44;K7 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y181;K"Nalm" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroAlchemistMorph" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K0.1 +C;X34;K"hero" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K18 +C;X44;K7 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y182;K"Nbrn" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroBansheeRanger" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K550 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.7 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K19 +C;X45;K1.9 +C;X46;K2.6 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y183;K"Nbst" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"Beastmaster" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K725 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K3.2 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K15 +C;X44;K14 +C;X45;K2.9 +C;X46;K1.8 +C;X47;K1.3 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y184;K"Nfir" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"FireLord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K18 +C;X44;K20 +C;X45;K2 +C;X46;K2.5 +C;X47;K1.6 +C;X48;K6.1 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y185;K"Nngs" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroNagaSeaWitch" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K330 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K22 +C;X44;K16 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y186;K"Npbm" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroPandarenBrewmaster" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K650 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K3.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K15 +C;X44;K14 +C;X45;K3 +C;X46;K1.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y187;K"Nplh" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"neutral pit lord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K700 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K210 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K14 +C;X44;K14 +C;X45;K3.2 +C;X46;K1.5 +C;X47;K1.3 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y188;K"Nrob" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroTinkerMorph" +C;X5;K5 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K315 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K4.5 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K21 +C;X44;K15 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y189;K"Ntin" +C;X2;K"n1" +C;X3;K"uher" +C;X4;K"HeroTinker" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K315 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K4.5 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K21 +C;X44;K15 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y190;K"ncg1" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Clockwerk Goblin (lvl 2)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y191;K"ncg2" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Clockwerk Goblin (lvl 3)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y192;K"ncg3" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Clockwerk Goblin (lvl 4)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y193;K"ncgb" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Clockwerk Goblin (lvl 1)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y194;K"ndr1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion1" +C;X5;K2 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y195;K"ndr2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion2" +C;X5;K3 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K260 +C;X24;K260 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y196;K"ndr3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion3" +C;X5;K4 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K320 +C;X24;K320 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K330 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y197;K"nfa1" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"pocket factory" +C;X5;K5 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K50 +C;X40;K800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y198;K"nfa2" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"pocket factory" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K50 +C;X40;K800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y199;K"nfac" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"pocket factory" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K300 +C;X24;K300 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K0 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K50 +C;X40;K800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y200;K"ngz1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear 1" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y201;K"ngz2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear 2" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K900 +C;X24;K900 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y202;K"ngz3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear 3" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1200 +C;X24;K1200 +C;X25;K1.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y203;K"ngz4" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 4" +C;X5;K7 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K2250 +C;X24;K2250 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K370 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y204;K"ngzc" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 1" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y205;K"ngzd" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 2" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1200 +C;X24;K1200 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y206;K"npn1" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Fire pandaren split" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y207;K"npn2" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Wind pandaren split" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1000 +C;X24;K1000 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y208;K"npn3" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Earth pandaren split" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y209;K"npn4" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Fire pandaren split2" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1350 +C;X24;K1350 +C;X25;K4 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y210;K"npn5" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Wind pandaren split2" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K2 +C;X26;K"always" +C;X27;K750 +C;X28;K750 +C;X29;K750 +C;X30;K1.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y211;K"npn6" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Earth pandaren split2" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K0 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K"-" +C;X22;K"-" +C;X23;K2250 +C;X24;K2250 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y212;K"nqb1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 1" +C;X5;K3 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K425 +C;X24;K425 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y213;K"nqb2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 2" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K515 +C;X24;K515 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y214;K"nqb3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 3" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K1.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y215;K"nqb4" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 4" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y216;K"nwe1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 1" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y217;K"nwe2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 2" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K625 +C;X24;K625 +C;X25;K1 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y218;K"nwe3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 3" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K875 +C;X24;K875 +C;X25;K1.5 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K1 +C;X1;Y219;K"nadk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,W,I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y220;K"nadr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,W,I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y221;K"nadw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragon whelp" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,W,I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y222;K"nahy" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient hydra" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K1600 +C;X24;K1600 +C;X25;K25 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y223;K"nanb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K75 +C;X9;K5 +C;X10;K75 +C;X11;K5 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K60 +C;X23;K200 +C;X24;K200 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y224;K"nanc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"crystal arachnathid" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K200 +C;X24;K200 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y225;K"nane" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachanthid earth-borer" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y226;K"nanm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid(merc)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K75 +C;X9;K5 +C;X10;K75 +C;X11;K5 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K60 +C;X23;K200 +C;X24;K200 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y227;K"nano" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachnathid overlord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y228;K"nanw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachnathid warrior" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y229;K"narg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"battle golem" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K500 +C;X24;K500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y230;K"nass" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"assassin" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K30 +C;X10;K200 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K110 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y231;K"nba2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"doom guard(Summoned)" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K"-" +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1600 +C;X24;K1600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y232;K"nbal" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"doom guard" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K"-" +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1350 +C;X24;K1350 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y233;K"nban" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bandit" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y234;K"nbda" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn apprentice" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K350 +C;X24;K350 +C;X25;K0.5 +C;X26;K"always" +C;X27;K250 +C;X28;K250 +C;X29;K250 +C;X30;K0.625 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y235;K"nbdk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"F" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y236;K"nbdm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn meddler" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K115 +C;X9;K0 +C;X10;K115 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K220 +C;X23;K500 +C;X24;K500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y237;K"nbdo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn overseer" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y238;K"nbdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black dragon whelp" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"F" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y239;K"nbds" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn sorceror" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K675 +C;X24;K675 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y240;K"nbdw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn warrior" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K775 +C;X24;K775 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y241;K"nbld" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bandit lord" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y242;K"nbnb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid burrowed" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K75 +C;X9;K5 +C;X10;K75 +C;X11;K5 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K60 +C;X23;K200 +C;X24;K200 +C;X25;K10 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y243;K"nbot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"transport ship" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K50 +C;X10;K170 +C;X11;K50 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K110 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y244;K"nbrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"brigand" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y245;K"nbwm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"F" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y246;K"nbzd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y247;K"nbzk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y248;K"nbzw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze dragon whelp" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y249;K"ncea" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"CentaurArcher" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y250;K"ncen" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Centaur outrunner" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K0 +C;X10;K155 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K60 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y251;K"ncer" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur drudge" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y252;K"ncfs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion cliffrunner" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y253;K"nchp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Chaplain" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K10 +C;X10;K135 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K370 +C;X24;K370 +C;X25;K0.25 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K200 +C;X30;K1.33333333333333 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y254;K"ncim" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Centaur impaler" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K350 +C;X24;K350 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y255;K"ncks" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur sorceror" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K1 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y256;K"ncnk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur khan" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K900 +C;X24;K900 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y257;K"ndqn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"succubus" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K160 +C;X22;K0 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y258;K"ndqp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"maiden of pain" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K410 +C;X22;K0 +C;X23;K1050 +C;X24;K1050 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y259;K"ndqs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"queen of suffering" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K510 +C;X22;K0 +C;X23;K1600 +C;X24;K1600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y260;K"ndqt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"vile temptress" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K310 +C;X22;K0 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y261;K"ndqv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"vile tormentor" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K260 +C;X22;K0 +C;X23;K510 +C;X24;K510 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y262;K"ndrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the depths" +C;X5;K8 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y263;K"ndtb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll berserker" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y264;K"ndth" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll high priest" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y265;K"ndtp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll shadow priest" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y266;K"ndtr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTroll" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y267;K"ndtt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTrollTrapper" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y268;K"ndtw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTrollwarlord" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y269;K"nehy" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder hydra" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K850 +C;X24;K850 +C;X25;K15 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y270;K"nelb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"berserk elemental" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"X,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y271;K"nele" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enraged elemental" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"X,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y272;K"nenc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"corrupted treant" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y273;K"nenf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enforcer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K500 +C;X24;K500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y274;K"nenp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"poison treant" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K290 +C;X24;K290 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y275;K"nepl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"plague treant" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y276;K"nerd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"eredar diabolist" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K630 +C;X24;K630 +C;X25;K1 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y277;K"ners" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"eredar sorceror" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K425 +C;X24;K425 +C;X25;K1 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y278;K"nerw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"eredar warlock" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1350 +C;X24;K1350 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y279;K"nfel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fel stalker" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y280;K"nfgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bloodfiend (felguard)" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K210 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y281;K"nfgo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Forgotten One" +C;X5;K15 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K250 +C;X10;K595 +C;X11;K250 +C;X12;K" - " +C;X13;K10 +C;X14;K15 +C;X15;K5 +C;X16;K1000 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K760 +C;X22;K440 +C;X23;K4000 +C;X24;K4000 +C;X25;K10 +C;X26;K"always" +C;X27;K1000 +C;X28;K1000 +C;X29;K1000 +C;X30;K5 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y282;K"nfgt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forgotten one tentacle" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K0 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y283;K"nfgu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"felguard" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y284;K"nfod" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one deathbringer" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K1900 +C;X24;K1900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y285;K"nfor" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one trickster" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K675 +C;X24;K675 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y286;K"nfot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one terror" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1150 +C;X24;K1150 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y287;K"nfov" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"overlord (felguard)" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K310 +C;X22;K0 +C;X23;K775 +C;X24;K775 +C;X25;K0.25 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y288;K"nfpc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Champion" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y289;K"nfpe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Elder Shaman" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y290;K"nfpl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y291;K"nfps" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Shaman" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K220 +C;X9;K30 +C;X10;K220 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K330 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y292;K"nfpt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Tracker" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y293;K"nfpu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Ursa Warrior" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K8 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y294;K"nfra" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Ursa Warrior" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y295;K"nfrb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Tracker" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y296;K"nfre" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Elder Shaman" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y297;K"nfrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Champion" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y298;K"nfrl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y299;K"nfrp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Panda" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y300;K"nfrs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Shaman" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K360 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y301;K"nfsh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll high priest" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K245 +C;X9;K40 +C;X10;K245 +C;X11;K40 +C;X12;K" - " +C;X13;K4 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y302;K"nfsp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll shadow priest" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K60 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y303;K"nftb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll berserker" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K195 +C;X9;K30 +C;X10;K195 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K220 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y304;K"nftk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Forest Troll Warlord" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y305;K"nftr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ForestTroll" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y306;K"nftt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ForestTrollTrapper" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y307;K"ngdk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Green Drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y308;K"nggr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"granite golem" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K1.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,D,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y309;K"ngh1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ghost" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y310;K"ngh2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"wraith" +C;X5;K6 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y311;K"ngir" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"goblin shredder" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K375 +C;X9;K100 +C;X10;K375 +C;X11;K100 +C;X12;K" - " +C;X13;K4 +C;X14;K6 +C;X15;K3 +C;X16;K85 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K300 +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y312;K"nglm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"goblin land mine" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"standon,ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K#VALUE! +C;X22;K0 +C;X23;K100 +C;X24;K100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y313;K"ngna" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Poacher" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y314;K"ngnb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gnoll brute" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y315;K"ngno" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Robber" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y316;K"ngns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Assassin" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K320 +C;X24;K320 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y317;K"ngnv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Overseer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K245 +C;X9;K35 +C;X10;K245 +C;X11;K35 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y318;K"ngnw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gnoll warden" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K180 +C;X23;K330 +C;X24;K330 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y319;K"ngrd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y320;K"ngrk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mud golem" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K115 +C;X9;K10 +C;X10;K115 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K220 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,D,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y321;K"ngrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Green Dragon Whelp" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y322;K"ngsp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"GoblinSapper" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Sapper" +C;X8;K215 +C;X9;K100 +C;X10;K215 +C;X11;K100 +C;X12;K" - " +C;X13;K2 +C;X14;K2 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K210 +C;X22;K440 +C;X23;K100 +C;X24;K100 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y323;K"ngst" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rock golem" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K675 +C;X24;K675 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,D,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y324;K"ngza" +C;X2;K"n2" +C;X3;K"sum" +C;X4;K"misha 3" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K310 +C;X22;K0 +C;X23;K1800 +C;X24;K1800 +C;X25;K1.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y325;K"nhar" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Harpy Scout" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K540 +C;X23;K210 +C;X24;K210 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y326;K"nhdc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"deceiver" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y327;K"nhfp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fallen priest" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y328;K"nhhr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"heretic" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y329;K"nhrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy hag" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y330;K"nhrq" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy queen" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y331;K"nhrr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy rogue" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K360 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y332;K"nhrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy witch" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K190 +C;X9;K30 +C;X10;K190 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K640 +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y333;K"nhyc" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"Naga Dragon Turtle" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K320 +C;X9;K65 +C;X10;K320 +C;X11;K65 +C;X12;K" - " +C;X13;K5 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1400 +C;X41;K950 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y334;K"nhyd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydra" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K575 +C;X24;K575 +C;X25;K10 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y335;K"nhyh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydra hatchling" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K350 +C;X24;K350 +C;X25;K4 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y336;K"nhym" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydromancer" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K20 +C;X10;K155 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K405 +C;X24;K405 +C;X25;K0.25 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K200 +C;X30;K1.33333333333333 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y337;K"nina" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal automaton" +C;X5;K10 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K220 +C;X9;K50 +C;X10;K220 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K510 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K64 +C;X61;K0 +C;X1;Y338;K"ninc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal contraption" +C;X5;K5 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K220 +C;X9;K50 +C;X10;K220 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K260 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y339;K"ninf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Infernal" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K"-" +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K1 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y340;K"ninm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal machine" +C;X5;K8 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K220 +C;X9;K50 +C;X10;K220 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K0 +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K350 +C;X28;K350 +C;X29;K350 +C;X30;K0.875 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K36 +C;X39;K36 +C;X40;K1400 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y341;K"nith" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll high priest" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y342;K"nitp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll priest" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y343;K"nitr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"IceTroll" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y344;K"nits" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll berserker" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K195 +C;X9;K30 +C;X10;K195 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K220 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y345;K"nitt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll trapper" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K160 +C;X9;K20 +C;X10;K160 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y346;K"nitw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll warlord" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y347;K"njg1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Jungle Stalker" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y348;K"njga" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Elder Jungle Stalker" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K300 +C;X9;K0 +C;X10;K300 +C;X11;K0 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y349;K"njgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Enranged Jungle Stalker" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1600 +C;X24;K1600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y350;K"nkob" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Kobold" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K70 +C;X9;K0 +C;X10;K70 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K60 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,Y,X,V,Q,G,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y351;K"nkog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Kobold Geomancer" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,Y,X,V,Q,G,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y352;K"nkol" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"kobold taskmaster" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K650 +C;X24;K650 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,Y,X,V,Q,G,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y353;K"nkot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"kobold tunneler" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K325 +C;X24;K325 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,Y,X,V,Q,G,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y354;K"nlds" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura deep seer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K400 +C;X9;K100 +C;X10;K400 +C;X11;K100 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K480 +C;X24;K480 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y355;K"nlkl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura tidal lord" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K800 +C;X24;K800 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y356;K"nlpd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura pool dweller" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K210 +C;X24;K210 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y357;K"nlpr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura prawn" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K170 +C;X24;K170 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y358;K"nlps" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura prawn Summoned" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K170 +C;X24;K170 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y359;K"nlrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"deeplord revenant" +C;X5;K10 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K2100 +C;X24;K2100 +C;X25;K0.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K300 +C;X30;K1.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y360;K"nlsn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura snapper" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K250 +C;X9;K0 +C;X10;K250 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K260 +C;X23;K620 +C;X24;K620 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y361;K"nltc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura tide caller" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y362;K"nltl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lightning lizard" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,A,C,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y363;K"nlur" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Monster Lure ward" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Ward" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K#VALUE! +C;X22;K0 +C;X23;K200 +C;X24;K200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1600 +C;X41;K1600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y364;K"nmam" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Mammoth" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y365;K"nmbg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul blood-gill" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y366;K"nmcf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul cliffrunner" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y367;K"nmdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Dire Mammoth" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1550 +C;X24;K1550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y368;K"nmfs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc flesheater" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K110 +C;X9;K0 +C;X10;K110 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y369;K"nmgd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur destroyer" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K2100 +C;X24;K2100 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K64 +C;X61;K0 +C;X1;Y370;K"nmgr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur reaver" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K350 +C;X28;K350 +C;X29;K350 +C;X30;K0.875 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y371;K"nmgw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur warrior" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K270 +C;X9;K15 +C;X10;K270 +C;X11;K15 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y372;K"nmit" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Icetusk Mammoth" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K925 +C;X24;K925 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y373;K"nmmu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc mutant" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y374;K"nmpg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc plaguebearer" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y375;K"nmrl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc tiderunner" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,B,N,A,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y376;K"nmrm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc nightcrawler" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,B,N,A,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y377;K"nmrr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc huntsman" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K110 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q,Y,X,B,N,A,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y378;K"nmrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul reaver" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y379;K"nmsc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul shadowcaster" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y380;K"nmsn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul snarecaster" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y381;K"nmtw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul tidewarrior" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y382;K"nmyr" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga myrmidon" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K225 +C;X9;K55 +C;X10;K225 +C;X11;K55 +C;X12;K" - " +C;X13;K4 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K210 +C;X22;K0 +C;X23;K1080 +C;X24;K1080 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb,Rnen" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y383;K"nmys" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga myrmidon submerged" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K225 +C;X9;K55 +C;X10;K225 +C;X11;K55 +C;X12;K" - " +C;X13;K4 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K210 +C;X22;K0 +C;X23;K1080 +C;X24;K1080 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb,Rnen" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y384;K"nndk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nether drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y385;K"nndr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nether dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y386;K"nnht" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nether dragon hatchling" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y387;K"nnmg" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga mur'gul reaver" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y388;K"nnrg" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga royal guard" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K300 +C;X9;K100 +C;X10;K300 +C;X11;K100 +C;X12;K" - " +C;X13;K4 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K310 +C;X22;K0 +C;X23;K1350 +C;X24;K1350 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1600 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y389;K"nnrs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga royal guard submerged" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K300 +C;X9;K100 +C;X10;K300 +C;X11;K100 +C;X12;K" - " +C;X13;K4 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K310 +C;X22;K0 +C;X23;K1350 +C;X24;K1350 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1600 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y390;K"nnsu" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga siren" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K20 +C;X10;K130 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K110 +C;X22;K60 +C;X23;K350 +C;X24;K350 +C;X25;K1 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rnsw,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y391;K"nnsw" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga siren" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K20 +C;X10;K130 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K110 +C;X22;K60 +C;X23;K350 +C;X24;K350 +C;X25;K1 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rnsw,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y392;K"nnwa" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian warrior" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K0 +C;X10;K170 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y393;K"nnwl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian webspinner" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K140 +C;X9;K25 +C;X10;K140 +C;X11;K25 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K220 +C;X23;K350 +C;X24;K350 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y394;K"nnwq" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian queen" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y395;K"nnwr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian seer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y396;K"nnws" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian spider lord" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y397;K"noga" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Stonemaul Warchief" +C;X5;K11 +C;X6;KFALSE +C;X7;K"_" +C;X8;K600 +C;X9;K150 +C;X10;K600 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K9 +C;X15;K3 +C;X16;K180 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K560 +C;X22;K440 +C;X23;K3300 +C;X24;K3300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K64 +C;X61;K0 +C;X1;Y398;K"nogl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre lord" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y399;K"nogm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre mauler" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K240 +C;X9;K0 +C;X10;K240 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K850 +C;X24;K850 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y400;K"nogn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Stonemaul Magi" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K360 +C;X9;K40 +C;X10;K360 +C;X11;K40 +C;X12;K" - " +C;X13;K5 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K1060 +C;X24;K1060 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y401;K"nogo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Stonemaul Ogre" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K300 +C;X9;K0 +C;X10;K300 +C;X11;K0 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K1060 +C;X24;K1060 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y402;K"nogr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Ogre Warrior" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y403;K"nomg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre magi" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y404;K"nowb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"wildkin" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K0 +C;X10;K155 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K220 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y405;K"nowe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enraged wildkin" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y406;K"nowk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"berserk Wildkin" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y407;K"npfl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Fel Beast" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K125 +C;X9;K0 +C;X10;K125 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K390 +C;X24;K390 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y408;K"npfm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Fel Ravager" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y409;K"nplb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"polar bear" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K0 +C;X10;K155 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y410;K"nplg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant polar bear" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y411;K"nqbh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"quillboar hunter" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y412;K"nrdk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Red Dragon Whelp" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y413;K"nrdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Red Drake" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y414;K"nrel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"reef elemental" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y415;K"nrog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rogue" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y416;K"nrvd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"death revenant" +C;X5;K9 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K1.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y417;K"nrvf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fire revenant" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y418;K"nrvi" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice revenant" +C;X5;K8 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y419;K"nrvl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lightning revenant" +C;X5;K6 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y420;K"nrvs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"frost revenant" +C;X5;K4 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y421;K"nrwm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Red Dragon" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K920 +C;X23;K2200 +C;X24;K2200 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y422;K"nrzb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane brute" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y423;K"nrzg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane chieftain" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y424;K"nrzm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane medicine man" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K280 +C;X9;K60 +C;X10;K280 +C;X11;K60 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y425;K"nrzs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane scout" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y426;K"nrzt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"quillboar" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y427;K"nsat" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Satyr Trickster" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y428;K"nsbm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"brood mother" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y429;K"nsbs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga snap dragon submerged" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K25 +C;X10;K200 +C;X11;K25 +C;X12;K" - " +C;X13;K3 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K160 +C;X22;K60 +C;X23;K500 +C;X24;K500 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y430;K"nsc2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab 2" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y431;K"nsc3" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab 3" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K240 +C;X9;K0 +C;X10;K240 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K850 +C;X24;K850 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y432;K"nsca" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletonArcher(Summoned)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y433;K"nscb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y434;K"nsce" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletonWarrior(Summoned)" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y435;K"nsel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea elemental" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y436;K"nsgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea giant behemoth" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K210 +C;X9;K85 +C;X10;K210 +C;X11;K85 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K200 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y437;K"nsgg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"siege golem" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1900 +C;X24;K1900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y438;K"nsgh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea giant hunter" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K210 +C;X9;K85 +C;X10;K210 +C;X11;K85 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K725 +C;X24;K725 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K200 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y439;K"nsgn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea giant" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K210 +C;X9;K85 +C;X10;K210 +C;X11;K85 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K350 +C;X24;K350 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K200 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y440;K"nsgt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant spider" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y441;K"nska" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal archer" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y442;K"nske" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletonWarrior" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y443;K"nskf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"burning archer" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K180 +C;X9;K25 +C;X10;K180 +C;X11;K25 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K60 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y444;K"nskg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant SkeletonWarrior" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K380 +C;X24;K380 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K47 +C;X61;K1 +C;X1;Y445;K"nskm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal marksman" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y446;K"nsko" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K70 +C;X9;K0 +C;X10;K70 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y447;K"nslf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge flinger" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K330 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y448;K"nslh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander hatchling" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y449;K"nsll" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander lord" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K1800 +C;X24;K1800 +C;X25;K2 +C;X26;K"always" +C;X27;K700 +C;X28;K700 +C;X29;K700 +C;X30;K1.75 +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y450;K"nslm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge minion" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y451;K"nsln" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge monstrosity" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C,D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y452;K"nslr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y453;K"nslv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander vizier" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y454;K"nsnp" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga snap dragon" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K25 +C;X10;K200 +C;X11;K25 +C;X12;K" - " +C;X13;K3 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K160 +C;X22;K60 +C;X23;K500 +C;X24;K500 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsb" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y455;K"nsns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion snarecaster" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y456;K"nsoc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc champion" +C;X5;K8 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K70 +C;X9;K0 +C;X10;K70 +C;X11;K0 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y457;K"nsog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc grunt" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K240 +C;X9;K0 +C;X10;K240 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K850 +C;X24;K850 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y458;K"nspb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black spider" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y459;K"nspd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spiderling" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y460;K"nspg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green spider" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y461;K"nspp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spirit pig" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K110 +C;X22;K440 +C;X23;K200 +C;X24;K200 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y462;K"nspr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y463;K"nsqa" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient sasquatch" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1200 +C;X24;K1200 +C;X25;K1.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y464;K"nsqe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder sasquatch" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y465;K"nsqo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sasquatch oracle" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y466;K"nsqt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sasquatch" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y467;K"nsra" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver apprentice" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K5 +C;X10;K85 +C;X11;K5 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y468;K"nsrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver hermit" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K20 +C;X10;K145 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y469;K"nsrn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver necrolyte" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K20 +C;X10;K145 +C;X11;K20 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K675 +C;X24;K675 +C;X25;K0.5 +C;X26;K"always" +C;X27;K350 +C;X28;K350 +C;X29;K350 +C;X30;K0.875 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y470;K"nsrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the seas" +C;X5;K5 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K900 +C;X24;K900 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y471;K"nsrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver warlock" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K20 +C;X10;K145 +C;X11;K20 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y472;K"nssp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spitting spider" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y473;K"nsth" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr hellcaller" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1100 +C;X24;K1100 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y474;K"nstl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr soulstealer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y475;K"nsts" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr shadowdancer" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K330 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y476;K"nstw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"storm wyrm" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K1.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,A,C,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y477;K"nsty" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Satyr" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y478;K"nthl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"thunder lizard" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B,A,C,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y479;K"ntka" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr spearman" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y480;K"ntkc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr chieftain" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K"-" +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y481;K"ntkf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr fighter" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K250 +C;X24;K250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y482;K"ntkh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr healer" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y483;K"ntks" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr sorceror" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K10 +C;X10;K155 +C;X11;K10 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y484;K"ntkt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr trapper" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K225 +C;X9;K40 +C;X10;K225 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K135 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y485;K"ntkw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr warrior" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y486;K"ntor" +C;X2;K"n2" +C;X3;K"sum" +C;X4;K"tornado" +C;X5;K4 +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K210 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K60 +C;X36;K60 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y487;K"ntrd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dragon turtle" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K510 +C;X22;K440 +C;X23;K2000 +C;X24;K2000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K64 +C;X61;K1 +C;X1;Y488;K"ntrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gargantuan sea turtle" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K1250 +C;X24;K1250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y489;K"ntrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea turtle hatchling" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K220 +C;X24;K220 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y490;K"ntrs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea turtle" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K250 +C;X24;K250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y491;K"ntrt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant sea turtle" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K235 +C;X9;K35 +C;X10;K235 +C;X11;K35 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K60 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y492;K"ntrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the tides" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K375 +C;X24;K375 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y493;K"ntws" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion tidewarrior" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y494;K"nubk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken darkhunter" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K250 +C;X24;K250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y495;K"nubr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken rager" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y496;K"nubw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken darkweaver" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y497;K"nvde" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder voidwalker" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K4 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1500 +C;X24;K1500 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y498;K"nvdg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"greater voidwalker" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K240 +C;X9;K45 +C;X10;K240 +C;X11;K45 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K1 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y499;K"nvdl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lesser voidwalker" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y500;K"nvdw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"voidwalker" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K125 +C;X9;K15 +C;X10;K125 +C;X11;K15 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K365 +C;X24;K365 +C;X25;K1 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K200 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y501;K"nwen" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Wendigo" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y502;K"nwgs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga coutl" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K235 +C;X9;K30 +C;X10;K235 +C;X11;K30 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K110 +C;X22;K0 +C;X23;K525 +C;X24;K525 +C;X25;K1 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K50 +C;X30;K0.5 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rguv,Rnam,Rnat,Rnsi" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K8 +C;X61;K0 +C;X1;Y503;K"nwiz" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"apprentice wizard" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K180 +C;X24;K180 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K1 +C;X1;Y504;K"nwld" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dire wolf" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y505;K"nwlg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant wolf" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K47 +C;X61;K1 +C;X1;Y506;K"nwlt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"timber wolf" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y507;K"nwna" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient wendigo" +C;X5;K9 +C;X6;KFALSE +C;X7;K"_" +C;X8;K435 +C;X9;K150 +C;X10;K435 +C;X11;K150 +C;X12;K" - " +C;X13;K8 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K460 +C;X22;K440 +C;X23;K1200 +C;X24;K1200 +C;X25;K1.5 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K90 +C;X39;K90 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y508;K"nwnr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder wendigo" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y509;K"nwns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Wendigo shaman" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K340 +C;X9;K100 +C;X10;K340 +C;X11;K100 +C;X12;K" - " +C;X13;K6 +C;X14;K5 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K360 +C;X22;K440 +C;X23;K950 +C;X24;K950 +C;X25;K0.5 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y510;K"nwrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"war golem" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K1000 +C;X24;K1000 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y511;K"nws1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dragon hawk" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K280 +C;X9;K70 +C;X10;K280 +C;X11;K70 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K700 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1600 +C;X41;K900 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhla" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y512;K"nwwd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"white dire wolf" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K290 +C;X9;K80 +C;X10;K290 +C;X11;K80 +C;X12;K" - " +C;X13;K5 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K310 +C;X22;K440 +C;X23;K750 +C;X24;K750 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y513;K"nwwf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"white wolf" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K10 +C;X10;K120 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K110 +C;X22;K440 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y514;K"nwwg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant white wolf" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K440 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K47 +C;X61;K1 +C;X1;Y515;K"nwzd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark wizard" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K6 +C;X15;K3 +C;X16;K70 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K410 +C;X22;K440 +C;X23;K1200 +C;X24;K1200 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K500 +C;X30;K1.25 +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y516;K"nwzg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"renegade wizard" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K50 +C;X10;K255 +C;X11;K50 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K260 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K400 +C;X30;K1 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y517;K"nwzr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rogue wizard" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K170 +C;X9;K20 +C;X10;K170 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K160 +C;X22;K440 +C;X23;K340 +C;X24;K340 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K1 +C;X1;Y518;K"nzep" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"GoblinZeppelin" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K240 +C;X9;K60 +C;X10;K240 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K1 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K30 +C;X22;K220 +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y519;K"nzom" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Zombie" +C;X5;K1 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K50 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y520;K"nalb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Albatross" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y521;K"ncrb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Crab" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y522;K"nder" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"deer" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,V,Q" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y523;K"ndog" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Dog" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y524;K"ndwm" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Dune Worm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y525;K"nech" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Chicken" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,L,F,W,V,Q,X,J,Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y526;K"necr" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Rabbit" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,L,F,W,V,Q,X,J,Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y527;K"nfbr" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Felboar" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y528;K"nfro" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Frog" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,L,F,W,D,Z,G,V,Q,X,J,Y,C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y529;K"nhmc" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Hermit Crab" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y530;K"now2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"owl 2" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K40 +C;X24;K40 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1500 +C;X41;K1500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y531;K"now3" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"owl 3" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K40 +C;X24;K40 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K2200 +C;X41;K2200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y532;K"nowl" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"owl" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K40 +C;X24;K40 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K1000 +C;X41;K1000 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y533;K"npig" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Pig" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,B" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y534;K"npng" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Penguin" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y535;K"npnw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Penguin, water" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K1 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y536;K"nrac" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Raccoon" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,L,F,W,V,Q,X,J,Y" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y537;K"nrat" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Rat" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D,G" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y538;K"nsea" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Seal" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N,I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y539;K"nsha" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Amphibious Sheep" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y540;K"nshe" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Sheep" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y541;K"nshf" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Flying Sheep" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"_" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y542;K"nshw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Sheep of the Water!!!" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,Y,X,V,Q,J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K1 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y543;K"nskk" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Skink" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K200 +C;X36;K200 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y544;K"nsno" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Snowy Owl" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K100 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y545;K"nvil" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Man" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K60 +C;X24;K60 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y546;K"nvk2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Kid 2" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y547;K"nvl2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Man 2" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K60 +C;X24;K60 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y548;K"nvlk" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Kid" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y549;K"nvlw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Woman" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K60 +C;X24;K60 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y550;K"nvul" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Vulture" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K100 +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K350 +C;X41;K350 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y551;K"ncb0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y552;K"ncb1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y553;K"ncb2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y554;K"ncb3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y555;K"ncb4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y556;K"ncb5" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y557;K"ncb6" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y558;K"ncb7" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y559;K"ncb8" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y560;K"ncb9" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y561;K"ncba" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y562;K"ncbb" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y563;K"ncbc" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y564;K"ncbd" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y565;K"ncbe" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y566;K"ncbf" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y567;K"ncnt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y568;K"ncop" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"circle of power" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"standon" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K200 +C;X41;K200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y569;K"ncp2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"circle of power medium" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"standon" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K300 +C;X41;K300 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y570;K"ncp3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"circle of power large" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"standon" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K400 +C;X41;K400 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K1 +C;X1;Y571;K"nct1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y572;K"nct2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y573;K"ndch" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei chieftain hut" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y574;K"ndh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei hut 0" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y575;K"ndh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y576;K"ndh2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei haven" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,Mechanical" +C;X8;K400 +C;X9;K195 +C;X10;K400 +C;X11;K195 +C;X12;K50 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K180 +C;X39;K3 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y577;K"ndh3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei warrior's hall" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K55 +C;X10;K170 +C;X11;K55 +C;X12;K50 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1250 +C;X24;K1250 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K3 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y578;K"ndh4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei seer's lodge" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K100 +C;X9;K140 +C;X10;K100 +C;X11;K140 +C;X12;K50 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1150 +C;X24;K1150 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K3 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y579;K"ndrg" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost green" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C,Z" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y580;K"ndrk" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost black" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"F" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y581;K"ndro" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost outland" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y582;K"ndrr" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost red" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y583;K"ndru" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost blue" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W,N,I" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y584;K"ndrz" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost bronze" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y585;K"nfh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Forest Troll Hut 0" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y586;K"nfh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Forest Troll Hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,V,Q" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y587;K"nfoh" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Fountain of Health" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y588;K"nfr1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Furbolg Hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y589;K"nfr2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Furbolg Hut 2" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A,C" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y590;K"ngad" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Goblin Ammo Dump" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y591;K"ngme" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"goblin merchant" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y592;K"ngnh" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Gnoll Hut" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y593;K"ngni" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Infected Granary" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y594;K"ngol" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"GoldMine" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K0 +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y595;K"ngt2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Gnoll Hut" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y596;K"ngwr" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"grain warehouse" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K600 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y597;K"nhns" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"harpy nest" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y598;K"nmer" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp L" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y599;K"nmg0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Mur'gul Hut 0" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y600;K"nmg1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Mur'gul Hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y601;K"nmh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Murloc Hut 0" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,B,A,C,N" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y602;K"nmh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Murloc Hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"L,F,W,B,A,C,N" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y603;K"nmoo" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Fountain of Life" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y604;K"nmr0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp V" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"V,Q" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y605;K"nmr2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp F" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"F" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y606;K"nmr3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp W" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"W" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y607;K"nmr4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp B" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y608;K"nmr5" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp A" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"A" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y609;K"nmr6" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp C" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"C" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y610;K"nmr7" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp N" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y611;K"nmr8" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp Y" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Y" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y612;K"nmr9" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp X" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"X,J" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y613;K"nmra" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp D" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"D" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y614;K"nmrb" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp G" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"G" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y615;K"nmrc" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp Z" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"Z" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y616;K"nmrd" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp I" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y617;K"nmre" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp O" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y618;K"nmrf" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp K" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"K" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y619;K"nmrk" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Marketplace" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y620;K"nnzg" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"nerubian ziggurat" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I,N" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y621;K"nshp" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Goblin Shipyard" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y622;K"ntav" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tavern" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K1 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y623;K"nten" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K75 +C;X24;K75 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y624;K"nth0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Ice Troll Hut 0" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y625;K"nth1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Ice Troll Hut 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y626;K"ntn2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K75 +C;X24;K75 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y627;K"ntnt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tauren Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y628;K"ntt2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tauren Tent" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K125 +C;X24;K125 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K0 +C;X41;K0 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"B" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y629;K"nwgt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"WayGate" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral,standon" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K0 +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K1 +C;X1;Y630;K"Ecen" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cenarius" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K2675 +C;X24;K3100 +C;X25;K3 +C;X26;K"always" +C;X27;K55 +C;X28;K325 +C;X29;K200 +C;X30;K2 +C;X31;K0 +C;X32;K0 +C;X33;K2.5 +C;X34;K"divine" +C;X35;K400 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K17 +C;X43;K18 +C;X44;K15 +C;X45;K4 +C;X46;K5 +C;X47;K0.6 +C;X48;K9.6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y631;K"Eevi" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"evil illidan" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K625 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K21 +C;X43;K16 +C;X44;K22 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y632;K"Eevm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"evil illidan demon form" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K750 +C;X25;K1 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K16 +C;X44;K20 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y633;K"Efur" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"furion" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K0 +C;X10;K425 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K525 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K2 +C;X33;K4.5 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K17 +C;X43;K18 +C;X44;K15 +C;X45;K1.8 +C;X46;K2.7 +C;X47;K1.5 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y634;K"Eidm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidan demon form" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K750 +C;X25;K1 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K16 +C;X44;K20 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y635;K"Eill" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidan" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K625 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K21 +C;X43;K16 +C;X44;K22 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y636;K"Eilm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidanmorphed" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K750 +C;X25;K1 +C;X26;K"night" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K16 +C;X44;K20 +C;X45;K2.4 +C;X46;K2.1 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y637;K"Ekgg" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"HeroKeeperoftheGrove ghost" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K500 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.5 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K900 +C;X42;K16 +C;X43;K18 +C;X44;K15 +C;X45;K1.8 +C;X46;K2.7 +C;X47;K1.5 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y638;K"Emfr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Mal'furion" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K0 +C;X10;K425 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K525 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K2 +C;X33;K4.5 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K17 +C;X43;K18 +C;X44;K15 +C;X45;K1.8 +C;X46;K2.7 +C;X47;K1.5 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y639;K"Emns" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Mal'furion no stag" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K525 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K2 +C;X33;K4.5 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K17 +C;X43;K18 +C;X44;K15 +C;X45;K1.8 +C;X46;K2.7 +C;X47;K1.5 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y640;K"Etyr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Tyrande" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K225 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.7 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K19 +C;X45;K1.9 +C;X46;K2.6 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y641;K"Ewrd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Maiev" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K20 +C;X45;K2.4 +C;X46;K2 +C;X47;K1.6 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y642;K"Hant" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"antonidus" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K19 +C;X44;K17 +C;X45;K1.8 +C;X46;K3.2 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y643;K"Hapm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Admiral Proudmoore" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y644;K"Harf" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"arthas w/ frostmourne" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y645;K"Hart" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"arthas" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y646;K"Hdgo" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Dagren the Orcslayer" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y647;K"Hgam" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"ghostly archmage" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K450 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K14 +C;X43;K19 +C;X44;K17 +C;X45;K1.8 +C;X46;K3.2 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y648;K"Hhkl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Halahk the Lifebringer" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y649;K"Hjai" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"jaina" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K19 +C;X44;K17 +C;X45;K1.8 +C;X46;K3.2 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y650;K"Hkal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kael" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K500 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.5 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K16 +C;X43;K19 +C;X44;K15 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y651;K"Hlgr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Lord Garithos" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y652;K"Hmbr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"muradin bronzebeard" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K200 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2.3 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K24 +C;X43;K15 +C;X44;K11 +C;X45;K3 +C;X46;K1.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y653;K"Hmgd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Magroth the Defender" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y654;K"Hpb1" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Paladin Boss 1" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y655;K"Hpb2" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Paladin Boss 2" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y656;K"Huth" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"uther" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y657;K"Hvsh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Lady Vashj" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K300 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K20 +C;X44;K14 +C;X45;K2 +C;X46;K3.4 +C;X47;K1 +C;X48;K6.4 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y658;K"Hvwd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"sylvanus windrunner" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.7 +C;X34;K"hero" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K19 +C;X45;K1.9 +C;X46;K2.6 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y659;K"Naka" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Akama" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K5 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K2 +C;X33;K5 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K19 +C;X44;K20 +C;X45;K2 +C;X46;K2.8 +C;X47;K1.2 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y660;K"Nbbc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"blackrock blademaster" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.9 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K16 +C;X44;K23 +C;X45;K2 +C;X46;K2.25 +C;X47;K1.75 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y661;K"Nkjx" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kiljaeden - cinematic only" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y662;K"Nklj" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kiljaeden" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y663;K"Nmag" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Magtheridon" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K725 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K1.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K16 +C;X44;K13 +C;X45;K3 +C;X46;K1.8 +C;X47;K1.2 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y664;K"Nman" +C;X2;K"z1" +C;X3;K"zz" +C;X4;K"mannoroth" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K4250 +C;X24;K5000 +C;X25;K1 +C;X26;K"always" +C;X27;K0 +C;X28;K300 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K2 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1800 +C;X41;K800 +C;X42;K30 +C;X43;K20 +C;X44;K17 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y665;K"Npld" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"pit lord" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K850 +C;X25;K1 +C;X26;K"always" +C;X27;K0 +C;X28;K300 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K2 +C;X33;K3.1 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K30 +C;X43;K20 +C;X44;K17 +C;X45;K3 +C;X46;K2 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"C" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y666;K"Nsjs" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Sinjo Stormstout" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K105 +C;X23;K100 +C;X24;K675 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K23 +C;X43;K15 +C;X44;K12 +C;X45;K3 +C;X46;K1.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y667;K"Ocb2" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof (war3x)" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K725 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K210 +C;X29;K200 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K14 +C;X44;K10 +C;X45;K3.2 +C;X46;K1.3 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y668;K"Ocbh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K725 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K210 +C;X29;K200 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K14 +C;X44;K10 +C;X45;K3.2 +C;X46;K1.3 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y669;K"Odrt" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Drek'Thar" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K19 +C;X44;K18 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y670;K"Ogld" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Gul'dan" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K120 +C;X23;K100 +C;X24;K650 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K255 +C;X29;K100 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.9 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K22 +C;X43;K17 +C;X44;K13 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y671;K"Ogrh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"grom hellscream" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.9 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K16 +C;X44;K23 +C;X45;K2 +C;X46;K2.25 +C;X47;K1.75 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y672;K"Opgh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"possessed grom hellscream" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K575 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.9 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K19 +C;X43;K16 +C;X44;K23 +C;X45;K2 +C;X46;K2.25 +C;X47;K1.75 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y673;K"Orex" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Rexxar" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K0 +C;X22;K135 +C;X23;K100 +C;X24;K725 +C;X25;K0.5 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K3.2 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K18 +C;X44;K14 +C;X45;K2.9 +C;X46;K2 +C;X47;K1.3 +C;X48;K6.2 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y674;K"Orkn" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Rokhan" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K475 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K270 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K15 +C;X43;K18 +C;X44;K20 +C;X45;K2 +C;X46;K2.5 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y675;K"Osam" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Samuro" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K240 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K4.9 +C;X34;K"hero" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K16 +C;X44;K23 +C;X45;K2 +C;X46;K2.25 +C;X47;K1.75 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y676;K"Otcc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof cinematic" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K725 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K210 +C;X29;K200 +C;X30;K0.01 +C;X31;K1 +C;X32;K0 +C;X33;K2 +C;X34;K"hero" +C;X35;K250 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K25 +C;X43;K14 +C;X44;K10 +C;X45;K3.2 +C;X46;K1.3 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y677;K"Othr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"thrall" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K500 +C;X25;K0.25 +C;X26;K"always" +C;X27;K0 +C;X28;K285 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.4 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K16 +C;X43;K19 +C;X44;K18 +C;X45;K2 +C;X46;K3 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y678;K"Uanb" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"anub'arak" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K25 +C;X24;K675 +C;X25;K2 +C;X26;K"blight" +C;X27;K0 +C;X28;K210 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K26 +C;X43;K14 +C;X44;K14 +C;X45;K3.2 +C;X46;K1.6 +C;X47;K1.2 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y679;K"Ubal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"balnazzar" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y680;K"Uclc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"kelthuzadlich cinematic" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K450 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K300 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K14 +C;X43;K20 +C;X44;K14 +C;X45;K1.6 +C;X46;K3.4 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y681;K"Udth" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"dethecus" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y682;K"Uear" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"evil arthas" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K675 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K255 +C;X29;K200 +C;X30;K0.01 +C;X31;K2 +C;X32;K0 +C;X33;K3.6 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K23 +C;X43;K17 +C;X44;K12 +C;X45;K2.7 +C;X46;K1.8 +C;X47;K1.5 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y683;K"Uktl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"kelthuzadlich" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K450 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K300 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.2 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K14 +C;X43;K20 +C;X44;K14 +C;X45;K1.6 +C;X46;K3.4 +C;X47;K1 +C;X48;K6 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y684;K"Umal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"malganis" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K2.5 +C;X47;K1 +C;X48;K6 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y685;K"Usyl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Evil Sylvanas" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K550 +C;X25;K0.5 +C;X26;K"night" +C;X27;K0 +C;X28;K225 +C;X29;K100 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K3.7 +C;X34;K"hero" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1800 +C;X41;K800 +C;X42;K18 +C;X43;K15 +C;X44;K19 +C;X45;K1.9 +C;X46;K2.6 +C;X47;K1.5 +C;X48;K6 +C;X49;K"AGI" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y686;K"Utic" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"tichondrius" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"divine" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y687;K"Uvar" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"varimathras" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y688;K"Uvng" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"vengyr" +C;X5;K5 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K600 +C;X25;K1 +C;X26;K"blight" +C;X27;K0 +C;X28;K270 +C;X29;K200 +C;X30;K0.01 +C;X31;K0 +C;X32;K0 +C;X33;K2.8 +C;X34;K"hero" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K20 +C;X43;K18 +C;X44;K16 +C;X45;K2.5 +C;X46;K4.5 +C;X47;K1 +C;X48;K8 +C;X49;K"STR" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y689;K"Uwar" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"archimonde" +C;X5;K5 +C;X6;KTRUE +C;X7;K"_" +C;X8;K425 +C;X9;K100 +C;X10;K425 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K0 +C;X23;K2000 +C;X24;K2525 +C;X25;K3 +C;X26;K"always" +C;X27;K0 +C;X28;K300 +C;X29;K200 +C;X30;K2 +C;X31;K0 +C;X32;K2 +C;X33;K3.1 +C;X34;K"divine" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K55 +C;X39;K55 +C;X40;K1800 +C;X41;K800 +C;X42;K21 +C;X43;K20 +C;X44;K17 +C;X45;K3 +C;X46;K4 +C;X47;K3 +C;X48;K10 +C;X49;K"INT" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y690;K"eilw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"illidan wagon" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K195 +C;X9;K35 +C;X10;K195 +C;X11;K35 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K330 +C;X24;K330 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y691;K"enec" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf courier" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K10 +C;X39;K10 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y692;K"ensh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Naisha" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K195 +C;X9;K20 +C;X10;K195 +C;X11;K20 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K1.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Resc,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y693;K"eshd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"shandris" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K20 +C;X10;K215 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K1 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Reib,Remk,Reuv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y694;K"etrs" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf transport ship" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K50 +C;X10;K170 +C;X11;K50 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y695;K"hbew" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf wagon" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K195 +C;X9;K35 +C;X10;K195 +C;X11;K35 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y696;K"hcth" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"the captain" +C;X5;K6 +C;X6;KTRUE +C;X7;K"_" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K600 +C;X24;K600 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y697;K"hhdl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"riderless horse" +C;X5;K1 +C;X6;KTRUE +C;X7;K"_" +C;X8;K240 +C;X9;K40 +C;X10;K240 +C;X11;K40 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K100 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhan" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y698;K"hhes" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven swordsman" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K420 +C;X24;K420 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhar,Rhme,Rhde,Rhpm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y699;K"hprt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"portal unit" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y700;K"hrdh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"pack horse" +C;X5;K1 +C;X6;KTRUE +C;X7;K"_" +C;X8;K240 +C;X9;K40 +C;X10;K240 +C;X11;K40 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K100 +C;X24;K100 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y701;K"nbee" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf engineer" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhlh,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y702;K"nbel" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf lieutenant" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K20 +C;X10;K155 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K750 +C;X24;K750 +C;X25;K0.25 +C;X26;K"always" +C;X27;K250 +C;X28;K250 +C;X29;K100 +C;X30;K0.625 +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y703;K"nbsp" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"battleship" +C;X5;K1 +C;X6;KTRUE +C;X7;K"mechanical" +C;X8;K0 +C;X9;K0 +C;X10;K45 +C;X11;K50 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"N" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y704;K"nchg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"chaos grunt" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K0 +C;X10;K200 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K780 +C;X24;K780 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Robs,Ropg" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y705;K"nchr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"ChaosWolfRider" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K690 +C;X24;K690 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Roen,Ropg" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y706;K"nchw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"ChaosWarlock" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K220 +C;X9;K0 +C;X10;K220 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K360 +C;X24;K360 +C;X25;K1 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K75 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y707;K"nckb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Chaos Kodo Beast" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K255 +C;X9;K60 +C;X10;K255 +C;X11;K60 +C;X12;K" - " +C;X13;K4 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K1 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"small" +C;X35;K220 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rwdm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y708;K"ncpn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Chaos Peon" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K70 +C;X9;K0 +C;X10;K70 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K320 +C;X24;K320 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ropg" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y709;K"ndmu" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"dalaran mutant" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K120 +C;X9;K0 +C;X10;K120 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K330 +C;X24;K330 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K18 +C;X39;K18 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y710;K"ndrd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei darkslayer" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K260 +C;X9;K40 +C;X10;K260 +C;X11;K40 +C;X12;K" - " +C;X13;K4 +C;X14;K3 +C;X15;K3 +C;X16;K17 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K210 +C;X22;K330 +C;X23;K525 +C;X24;K525 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K150 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y711;K"ndrf" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei guardian" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K50 +C;X22;K0 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y712;K"ndrh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei harbinger" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K165 +C;X9;K20 +C;X10;K165 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K170 +C;X22;K0 +C;X23;K450 +C;X24;K450 +C;X25;K0.5 +C;X26;K"always" +C;X27;K400 +C;X28;K400 +C;X29;K200 +C;X30;K1 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y713;K"ndrj" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"dalaran reject" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y714;K"ndrl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei laborer" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K280 +C;X24;K280 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K200 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ropg" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y715;K"ndrm" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei disciple" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K15 +C;X10;K155 +C;X11;K15 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K90 +C;X22;K135 +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.8 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y716;K"ndrn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Draeni Vindicator" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K225 +C;X9;K15 +C;X10;K225 +C;X11;K15 +C;X12;K" - " +C;X13;K4 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K130 +C;X22;K0 +C;X23;K900 +C;X24;K900 +C;X25;K1.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K4 +C;X32;K2 +C;X33;K4 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y717;K"ndrp" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei protector" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K5 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K90 +C;X22;K0 +C;X23;K325 +C;X24;K325 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y718;K"ndrs" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei seer" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K210 +C;X9;K30 +C;X10;K210 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K250 +C;X22;K0 +C;X23;K775 +C;X24;K775 +C;X25;K1 +C;X26;K"always" +C;X27;K500 +C;X28;K500 +C;X29;K250 +C;X30;K1.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K28 +C;X40;K1400 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y719;K"ndrt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Draeni Stalker" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K270 +C;X9;K30 +C;X10;K270 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K130 +C;X22;K0 +C;X23;K465 +C;X24;K465 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y720;K"ndrw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei watcher" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K135 +C;X9;K0 +C;X10;K135 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K1 +C;X15;K3 +C;X16;K7 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K130 +C;X22;K0 +C;X23;K400 +C;X24;K400 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y721;K"ndsa" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei salamander" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K40 +C;X10;K215 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K4 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K250 +C;X22;K440 +C;X23;K625 +C;X24;K625 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O,K" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K1 +C;X1;Y722;K"negz" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"engineer gazlowe" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Sapper" +C;X8;K215 +C;X9;K100 +C;X10;K215 +C;X11;K100 +C;X12;K" - " +C;X13;K2 +C;X14;K2 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K45 +C;X22;K440 +C;X23;K100 +C;X24;K100 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y723;K"nemi" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"emissary" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K205 +C;X9;K0 +C;X10;K205 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhpt" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y724;K"nfgl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"flesh golem" +C;X5;K11 +C;X6;KFALSE +C;X7;K"_" +C;X8;K500 +C;X9;K150 +C;X10;K500 +C;X11;K150 +C;X12;K" - " +C;X13;K5 +C;X14;K10 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K5600 +C;X24;K5600 +C;X25;K3 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K1.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"J" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y725;K"ngbl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"goblin blaster" +C;X5;K6 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K375 +C;X9;K100 +C;X10;K375 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K85 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K440 +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y726;K"nhea" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven archer" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K10 +C;X10;K130 +C;X11;K10 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K310 +C;X24;K310 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Resm,Rema,Reib,Remk,Reuv,Repm" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y727;K"nhef" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven female" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K10 +C;X39;K10 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y728;K"nhem" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven male" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K15 +C;X24;K15 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K10 +C;X39;K10 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y729;K"nhew" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf worker" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K220 +C;X24;K220 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhlh,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y730;K"njks" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"jailor kassan" +C;X5;K1 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K1 +C;X15;K3 +C;X16;K3 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K240 +C;X24;K240 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y731;K"nmdm" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"medivh morphed" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K185 +C;X9;K0 +C;X10;K185 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y732;K"nmed" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"medivh" +C;X5;K2 +C;X6;KTRUE +C;X7;K"_" +C;X8;K185 +C;X9;K0 +C;X10;K185 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K22 +C;X39;K22 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y733;K"nmpe" +C;X2;K"z2" +C;X3;K"zzn" +C;X4;K"naga peon" +C;X5;K1 +C;X6;KFALSE +C;X7;K"Peon" +C;X8;K75 +C;X9;K0 +C;X10;K75 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K250 +C;X24;K250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K190 +C;X36;K0 +C;X37;K0 +C;X38;K15 +C;X39;K15 +C;X40;K800 +C;X41;K600 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y734;K"nmsh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"misha the bear" +C;X5;K4 +C;X6;KFALSE +C;X7;K"_" +C;X8;K155 +C;X9;K0 +C;X10;K155 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K2 +C;X15;K3 +C;X16;K9 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K475 +C;X24;K475 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y735;K"nser" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"searinox" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K510 +C;X9;K120 +C;X10;K510 +C;X11;K120 +C;X12;K" - " +C;X13;K6 +C;X14;K12 +C;X15;K3 +C;X16;K50 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1250 +C;X24;K1250 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K280 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y736;K"nspc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"support column" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K50 +C;X24;K50 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y737;K"nssn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf assassin" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K195 +C;X9;K20 +C;X10;K195 +C;X11;K20 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K550 +C;X24;K550 +C;X25;K0.5 +C;X26;K"always" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"large" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y738;K"nthr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"tharifas" +C;X5;K8 +C;X6;KFALSE +C;X7;K"_" +C;X8;K510 +C;X9;K150 +C;X10;K510 +C;X11;K150 +C;X12;K" - " +C;X13;K6 +C;X14;K8 +C;X15;K3 +C;X16;K140 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K800 +C;X24;K800 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"small" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y739;K"nw2w" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"War2Warlock" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K0 +C;X10;K215 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K250 +C;X24;K250 +C;X25;K0.25 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K75 +C;X30;K0.75 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rost" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y740;K"nwat" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"watcher" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K140 +C;X9;K0 +C;X10;K140 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K300 +C;X24;K300 +C;X25;K0.5 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K75 +C;X30;K0.5 +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K280 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y741;K"nzlc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"cinematic lich king" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K100 +C;X24;K100 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K1 +C;X39;K1 +C;X40;K600 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y742;K"odkt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Drak'Thul" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K20 +C;X10;K145 +C;X11;K20 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K60 +C;X22;K440 +C;X23;K675 +C;X24;K675 +C;X25;K0.5 +C;X26;K"always" +C;X27;K350 +C;X28;K350 +C;X29;K350 +C;X30;K0.875 +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K900 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y743;K"ogrk" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Gar'thok" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K200 +C;X9;K0 +C;X10;K200 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K2 +C;X33;K1 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Robs,Ropg,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y744;K"ojgn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"actual orc juggernaut unit" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K500 +C;X9;K200 +C;X10;K500 +C;X11;K200 +C;X12;K" - " +C;X13;K0 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1000 +C;X24;K1000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"large" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1600 +C;X41;K1200 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y745;K"omtg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"mathog" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K340 +C;X24;K340 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y746;K"onzg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"nazgrel" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K180 +C;X9;K40 +C;X10;K180 +C;X11;K40 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K610 +C;X24;K610 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K28 +C;X39;K28 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome,Roen,Ropg,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y747;K"oosc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"riderless kodo beast" +C;X5;K1 +C;X6;KTRUE +C;X7;K"_" +C;X8;K195 +C;X9;K35 +C;X10;K195 +C;X11;K35 +C;X12;K" - " +C;X13;K"-" +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K330 +C;X24;K330 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K180 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y748;K"oswy" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"spirit wyvern" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K520 +C;X24;K520 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y749;K"ovlj" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"vol'jin" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K145 +C;X9;K25 +C;X10;K145 +C;X11;K25 +C;X12;K" - " +C;X13;K2 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K315 +C;X24;K315 +C;X25;K0.25 +C;X26;K"always" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"none" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rowd,Rotr,Ropm,Rguv" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y750;K"owar" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"orc warchief" +C;X5;K2 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K340 +C;X24;K340 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Roar,Rome" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y751;K"ownr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"wyvern" +C;X5;K5 +C;X6;KFALSE +C;X7;K"_" +C;X8;K130 +C;X9;K0 +C;X10;K130 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K520 +C;X24;K520 +C;X25;K0.5 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y752;K"uabc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Abomination cinematic" +C;X5;K4 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K240 +C;X9;K70 +C;X10;K240 +C;X11;K70 +C;X12;K" - " +C;X13;K4 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1080 +C;X24;K1080 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K2 +C;X33;K2 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Ruar,Rume,Rupc" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y753;K"uarb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"air barge" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K240 +C;X9;K60 +C;X10;K240 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K1 +C;X15;K3 +C;X16;K25 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K30 +C;X22;K440 +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y754;K"ubdd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"undead azurelore" +C;X5;K6 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K385 +C;X9;K120 +C;X10;K385 +C;X11;K120 +C;X12;K" - " +C;X13;K7 +C;X14;K8 +C;X15;K3 +C;X16;K30 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1100 +C;X24;K1100 +C;X25;K2 +C;X26;K"blight" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K1600 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y755;K"ubdr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"azurelore" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K595 +C;X9;K200 +C;X10;K595 +C;X11;K200 +C;X12;K" - " +C;X13;K8 +C;X14;K8 +C;X15;K3 +C;X16;K150 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K120 +C;X22;K920 +C;X23;K1800 +C;X24;K1800 +C;X25;K2 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K6 +C;X32;K2 +C;X33;K6 +C;X34;K"small" +C;X35;K300 +C;X36;K0 +C;X37;K0 +C;X38;K100 +C;X39;K100 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y756;K"ubot" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"undead transport ship" +C;X5;K2 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K170 +C;X9;K50 +C;X10;K170 +C;X11;K50 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K15 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K320 +C;X36;K0 +C;X37;K0 +C;X38;K25 +C;X39;K25 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y757;K"udes" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"undead frigate" +C;X5;K4 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K250 +C;X9;K100 +C;X10;K250 +C;X11;K100 +C;X12;K" - " +C;X13;K0 +C;X14;K5 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K60 +C;X22;K0 +C;X23;K575 +C;X24;K575 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K350 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1500 +C;X41;K1000 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K1 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y758;K"uktg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"kelthuzad ghost" +C;X5;K2 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K195 +C;X9;K0 +C;X10;K195 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y759;K"uktn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"kelthuzadnecro" +C;X5;K2 +C;X6;KTRUE +C;X7;K"undead" +C;X8;K195 +C;X9;K0 +C;X10;K195 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K280 +C;X24;K280 +C;X25;K0.5 +C;X26;K"night" +C;X27;K200 +C;X28;K200 +C;X29;K75 +C;X30;K0.5 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"large" +C;X35;K240 +C;X36;K0 +C;X37;K0 +C;X38;K30 +C;X39;K30 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K"-" +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K16 +C;X61;K0 +C;X1;Y760;K"uswb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"sylvanus banshee" +C;X5;K3 +C;X6;KFALSE +C;X7;K"undead" +C;X8;K225 +C;X9;K0 +C;X10;K225 +C;X11;K0 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K400 +C;X24;K400 +C;X25;K1 +C;X26;K"always" +C;X27;K300 +C;X28;K300 +C;X29;K75 +C;X30;K0.8 +C;X31;K3 +C;X32;K2 +C;X33;K3 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K35 +C;X39;K35 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y761;K"haro" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Arcane Observatory" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K240 +C;X9;K100 +C;X10;K240 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K5 +C;X32;K0 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K600 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K0 +C;X1;Y762;K"nbfl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Fountain of Blood" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y763;K"nbse" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"bindstone southeast" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y764;K"nbsm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"book of summoning pedestal" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K50 +C;X24;K50 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y765;K"nbsw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"bindstone southwest" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y766;K"nbt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"boulder tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y767;K"nbt2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"boulder tower upgraded" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y768;K"nbwd" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"barrow den" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K210 +C;X9;K100 +C;X10;K210 +C;X11;K100 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1100 +C;X24;K1100 +C;X25;K"-" +C;X26;K"none" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K0 +C;X33;K2 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y769;K"ncap" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted Ancient Protector" +C;X5;K3 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K240 +C;X9;K130 +C;X10;K240 +C;X11;K130 +C;X12;K" - " +C;X13;K"-" +C;X14;K3 +C;X15;K3 +C;X16;K40 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K0.5 +C;X26;K"night" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K3 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y770;K"ncaw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"AncientofWar" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Ancient" +C;X8;K255 +C;X9;K70 +C;X10;K255 +C;X11;K70 +C;X12;K"-" +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K800 +C;X24;K800 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K5 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y771;K"ncmw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted MoonWell" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K155 +C;X9;K40 +C;X10;K155 +C;X11;K40 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K300 +C;X28;K300 +C;X29;K300 +C;X30;K1.25 +C;X31;K2 +C;X32;K0 +C;X33;K2 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y772;K"ncta" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted treeofAges" +C;X5;K1 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K270 +C;X9;K80 +C;X10;K695 +C;X11;K80 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K3 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y773;K"ncte" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted treeofEternity" +C;X5;K1 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K300 +C;X9;K120 +C;X10;K995 +C;X11;K200 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2500 +C;X24;K2500 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K3 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K80 +C;X39;K80 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y774;K"nctl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted treeofLife" +C;X5;K1 +C;X6;KTRUE +C;X7;K"TownHall,Ancient" +C;X8;K385 +C;X9;K0 +C;X10;K385 +C;X11;K0 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K0.5 +C;X26;K"night" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K2 +C;X32;K3 +C;X33;K2 +C;X34;K"fort" +C;X35;K40 +C;X36;K0 +C;X37;K0 +C;X38;K110 +C;X39;K110 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K"-" +C;X47;K"-" +C;X48;K"-" +C;X49;K"_" +C;X50;K"Renb" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y775;K"ndfl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Defiled Fountain of Life" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y776;K"ndgt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dalaran guard tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y777;K"ndke" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dark portal (southeast)" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K400 +C;X41;K400 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y778;K"ndkw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dark portal (southwest)" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K400 +C;X41;K400 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"O" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y779;K"ndmg" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"demon gate" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K2000 +C;X24;K2000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K400 +C;X41;K400 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y780;K"ndrb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Dragon Building" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K2 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y781;K"ndt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"cold tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y782;K"ndt2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"cold tower upgraded" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y783;K"nef0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y784;K"nef1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y785;K"nef2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y786;K"nef3" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y787;K"nef4" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y788;K"nef5" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y789;K"nef6" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y790;K"nef7" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K1 +C;X32;K1 +C;X33;K1 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y791;K"nefm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K70 +C;X9;K20 +C;X10;K70 +C;X11;K20 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K400 +C;X24;K400 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K40 +C;X39;K40 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y792;K"negf" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven guard fire tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K550 +C;X24;K550 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y793;K"negm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven guard magic tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K450 +C;X24;K450 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y794;K"negt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven guard tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y795;K"net1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"energy tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y796;K"net2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"energy tower upgraded" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y797;K"nfnp" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"purple fountain" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical,neutral" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y798;K"nfrm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"frostmourne pedestal" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y799;K"nfrt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"fruit stand" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y800;K"nft1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"flame tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y801;K"nft2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"flame tower upgraded" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y802;K"nfv0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y803;K"nfv1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y804;K"nfv2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y805;K"nfv3" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y806;K"nfv4" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y807;K"ngob" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"gemstone obelisk" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y808;K"nhcn" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"horn of cenarius pedestal" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y809;K"nheb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"High Elf Barracks" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K255 +C;X9;K80 +C;X10;K255 +C;X11;K80 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y810;K"nico" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"icecrown obelisk" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"I" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y811;K"nitb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"treasure box" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y812;K"nmgv" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"magic vault" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y813;K"nnad" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"altar of the depths - naga altar" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K255 +C;X9;K100 +C;X10;K255 +C;X11;K100 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K900 +C;X24;K900 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y814;K"nnfm" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"coral bed - naga farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K115 +C;X9;K40 +C;X10;K115 +C;X11;K40 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1200 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y815;K"nnsa" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"shrine of azshara - naga caster barracks" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K180 +C;X9;K70 +C;X10;K180 +C;X11;K70 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1050 +C;X24;K1050 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K70 +C;X39;K70 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y816;K"nnsg" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"spawning grounds - naga barracks" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K205 +C;X9;K60 +C;X10;K205 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K144 +C;X61;K0 +C;X1;Y817;K"nntg" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"tidal guardian - naga tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K130 +C;X9;K80 +C;X10;K130 +C;X11;K80 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K50 +C;X39;K50 +C;X40;K1800 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y818;K"nntt" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"temple of tides - naga town hall" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"TownHall,Mechanical" +C;X8;K385 +C;X9;K150 +C;X10;K385 +C;X11;K150 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1500 +C;X24;K1500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K180 +C;X39;K180 +C;X40;K900 +C;X41;K600 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unwalkable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K176 +C;X61;K0 +C;X1;Y819;K"npgf" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"pig farm" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K115 +C;X9;K40 +C;X10;K115 +C;X11;K40 +C;X12;K15 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y820;K"npgr" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"power generator" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y821;K"nshr" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"shrine" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y822;K"ntt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"death tower" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y823;K"ntx2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"death tower upgraded" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K120 +C;X9;K60 +C;X10;K120 +C;X11;K60 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K5 +C;X32;K1 +C;X33;K5 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K45 +C;X39;K45 +C;X40;K1900 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y824;K"nvr0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y825;K"nvr1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y826;K"nvr2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K1200 +C;X24;K1200 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y827;K"nwc1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"wyvern cage 1" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y828;K"nwc2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"wyvern cage 2" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K500 +C;X24;K500 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K900 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y829;K"nzin" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"zone indicator" +C;X5;K"-" +C;X6;KTRUE +C;X7;K"_" +C;X8;K50 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K" - " +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K150000 +C;X24;K150000 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"fort" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K3 +C;X39;K3 +C;X40;K500 +C;X41;K500 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K50 +C;X61;K0 +C;X1;Y830;K"ocbw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Chaos OrcBurrow" +C;X5;K1 +C;X6;KTRUE +C;X7;K"Mechanical" +C;X8;K160 +C;X9;K70 +C;X10;K160 +C;X11;K70 +C;X12;K10 +C;X13;K"-" +C;X14;K0 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K"-" +C;X21;K"-" +C;X22;K"-" +C;X23;K600 +C;X24;K600 +C;X25;K"-" +C;X26;K"none" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K2 +C;X32;K0 +C;X33;K2 +C;X34;K"large" +C;X35;K"-" +C;X36;K0 +C;X37;K0 +C;X38;K60 +C;X39;K60 +C;X40;K800 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rosp,Rorb,Rgfo" +C;X51;K"*" +C;X52;K"-" +C;X53;K1 +C;X54;K"unbuildable" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K72 +C;X61;K0 +C;X1;Y831;K"zcso" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"chaos space orc" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K10 +C;X10;K215 +C;X11;K10 +C;X12;K" - " +C;X13;K3 +C;X14;K6 +C;X15;K3 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K540 +C;X24;K540 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y832;K"zhyd" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"hydralisk" +C;X5;K7 +C;X6;KFALSE +C;X7;K"_" +C;X8;K280 +C;X9;K30 +C;X10;K280 +C;X11;K30 +C;X12;K" - " +C;X13;K3 +C;X14;K7 +C;X15;K3 +C;X16;K100 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K120 +C;X22;K0 +C;X23;K700 +C;X24;K700 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y833;K"zjug" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"orc juggernaut" +C;X5;K6 +C;X6;KFALSE +C;X7;K"Mechanical" +C;X8;K205 +C;X9;K30 +C;X10;K205 +C;X11;K30 +C;X12;K" - " +C;X13;K4 +C;X14;K6 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K520 +C;X24;K520 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"small" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K1 +C;X57;K2 +C;X58;K1 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y834;K"zmar" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"Marine" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K215 +C;X9;K0 +C;X10;K215 +C;X11;K0 +C;X12;K" - " +C;X13;K2 +C;X14;K6 +C;X15;K3 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K30 +C;X22;K0 +C;X23;K520 +C;X24;K520 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"Rhla,Rhra,Rhri" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K32 +C;X61;K0 +C;X1;Y835;K"zshv" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"shoveler" +C;X5;K10 +C;X6;KFALSE +C;X7;K"_" +C;X8;K680 +C;X9;K200 +C;X10;K680 +C;X11;K200 +C;X12;K" - " +C;X13;K5 +C;X14;K9 +C;X15;K3 +C;X16;K300 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X21;K120 +C;X22;K440 +C;X23;K850 +C;X24;K850 +C;X25;K2 +C;X26;K"always" +C;X27;K600 +C;X28;K600 +C;X29;K600 +C;X30;K0.8 +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K20 +C;X39;K20 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K" - " +C;X44;K" - " +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +C;X1;Y836;K"zsmc" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"sammy cube" +C;X5;K6 +C;X6;KFALSE +C;X7;K"_" +C;X8;K425 +C;X9;K150 +C;X10;K425 +C;X11;K150 +C;X12;K" - " +C;X13;K4 +C;X14;K8 +C;X15;K3 +C;X16;K200 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K120 +C;X22;K0 +C;X23;K500 +C;X24;K500 +C;X25;K1 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K48 +C;X61;K0 +C;X1;Y837;K"zzrg" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"zergling" +C;X5;K3 +C;X6;KFALSE +C;X7;K"_" +C;X8;K85 +C;X9;K0 +C;X10;K85 +C;X11;K0 +C;X12;K" - " +C;X13;K1 +C;X14;K3 +C;X15;K3 +C;X16;K20 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K3 +C;X21;K120 +C;X22;K0 +C;X23;K250 +C;X24;K250 +C;X25;K0.25 +C;X26;K"always" +C;X27;K" - " +C;X28;K" - " +C;X29;K" - " +C;X30;K" - " +C;X31;K0 +C;X32;K2 +C;X33;K0 +C;X34;K"medium" +C;X35;K270 +C;X36;K0 +C;X37;K0 +C;X38;K26 +C;X39;K26 +C;X40;K1400 +C;X41;K800 +C;X42;K" - " +C;X43;K"-" +C;X44;K"-" +C;X45;K" - " +C;X46;K" - " +C;X47;K" - " +C;X48;K"-" +C;X49;K"_" +C;X50;K"_" +C;X51;K"*" +C;X52;K"-" +C;X53;K0 +C;X54;K"_" +C;X55;K"_" +C;X56;K0 +C;X57;K0 +C;X58;K0 +C;X59;K0 +C;X60;K31 +C;X61;K0 +E diff --git a/share/mpq/units/units/unitdata.slk b/share/mpq/units/units/unitdata.slk new file mode 100644 index 0000000..6542104 --- /dev/null +++ b/share/mpq/units/units/unitdata.slk @@ -0,0 +1,25950 @@ +ID;PWXL;N;E +B;X32;Y837;D0 +C;X1;Y1;K"unitID" +C;X2;K"sort" +C;X3;K"comment(s)" +C;X4;K"race" +C;X5;K"prio" +C;X6;K"threat" +C;X7;K"valid" +C;X8;K"deathType" +C;X9;K"death" +C;X10;K"canSleep" +C;X11;K"cargoSize" +C;X12;K"movetp" +C;X13;K"moveHeight" +C;X14;K"moveFloor" +C;X15;K"turnRate" +C;X16;K"propWin" +C;X17;K"orientInterp" +C;X18;K"formation" +C;X19;K"targType" +C;X20;K"pathTex" +C;X21;K"fatLOS" +C;X22;K"points" +C;X23;K"buffType" +C;X24;K"buffRadius" +C;X25;K"nameCount" +C;X26;K"canFlee" +C;X27;K"requireWaterRadius" +C;X28;K"isBuildOn" +C;X29;K"canBuildOn" +C;X30;K"InBeta" +C;X31;K"version" +C;X1;Y2;K"Hamg" +C;X2;K"a1" +C;X3;K"HeroArchMage" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.8 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K13 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y3;K"Hblm" +C;X2;K"a1" +C;X3;K"HeroBloodMage" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y4;K"Hmkg" +C;X2;K"a1" +C;X3;K"HeroMountainKing" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K13 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y5;K"Hpal" +C;X2;K"a1" +C;X3;K"HeroPaladin" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K15 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y6;K"hbot" +C;X2;K"a2" +C;X3;K"transport ship" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y7;K"hbsh" +C;X2;K"a2" +C;X3;K"battleship" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y8;K"hdes" +C;X2;K"a2" +C;X3;K"destroyer" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.2 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y9;K"hdhw" +C;X2;K"a2" +C;X3;K"blood elf dragon hawk" +C;X4;K"human" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.13 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y10;K"hfoo" +C;X2;K"a2" +C;X3;K"Footman" +C;X4;K"human" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.04 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y11;K"hgry" +C;X2;K"a2" +C;X3;K"GryphonRider" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.67 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y12;K"hgyr" +C;X2;K"a2" +C;X3;K"Flying Machine" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.67 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K2 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y13;K"hkni" +C;X2;K"a2" +C;X3;K"Knight" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K5.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y14;K"hmil" +C;X2;K"a2" +C;X3;K"Militia" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.34 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y15;K"hmpr" +C;X2;K"a2" +C;X3;K"Priest" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y16;K"hmtm" +C;X2;K"a2" +C;X3;K"MortarTeam" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.5 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y17;K"hmtt" +C;X2;K"a2" +C;X3;K"Siege Engine" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K4 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y18;K"hpea" +C;X2;K"a2" +C;X3;K"Peasant" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.34 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y19;K"hphx" +C;X2;K"a2" +C;X3;K"Phoenix" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.7 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y20;K"hpxe" +C;X2;K"a2" +C;X3;K"Phoenix Egg" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y21;K"hrif" +C;X2;K"a2" +C;X3;K"Rifleman" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y22;K"hrtt" +C;X2;K"a2" +C;X3;K"siege engine upgraded" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K4 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y23;K"hsor" +C;X2;K"a2" +C;X3;K"Sorceress" +C;X4;K"human" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.87 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y24;K"hspt" +C;X2;K"a2" +C;X3;K"Blood Elf Spell Breaker" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y25;K"hwat" +C;X2;K"a2" +C;X3;K"WaterElemental" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y26;K"hwt2" +C;X2;K"a2" +C;X3;K"WaterElemental level 2" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y27;K"hwt3" +C;X2;K"a2" +C;X3;K"WaterElemental level 3" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y28;K"nlv1" +C;X2;K"a2" +C;X3;K"LavaSpawn1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K6 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y29;K"nlv2" +C;X2;K"a2" +C;X3;K"LavaSpawn2" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K6 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y30;K"nlv3" +C;X2;K"a2" +C;X3;K"LavaSpawn3" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K6 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y31;K"halt" +C;X2;K"a3" +C;X3;K"AltarofKings" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.335 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y32;K"harm" +C;X2;K"a3" +C;X3;K"Workshop" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.335 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y33;K"hars" +C;X2;K"a3" +C;X3;K"ArcaneSanctum" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y34;K"hatw" +C;X2;K"a3" +C;X3;K"Arcane Tower" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.67 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y35;K"hbar" +C;X2;K"a3" +C;X3;K"HumanBarracks" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y36;K"hbla" +C;X2;K"a3" +C;X3;K"Blacksmith" +C;X4;K"human" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y37;K"hcas" +C;X2;K"a3" +C;X3;K"Castle" +C;X4;K"human" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.17 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y38;K"hctw" +C;X2;K"a3" +C;X3;K"CannonTower" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y39;K"hgra" +C;X2;K"a3" +C;X3;K"GryphonAviary" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y40;K"hgtw" +C;X2;K"a3" +C;X3;K"GuardTower" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y41;K"hhou" +C;X2;K"a3" +C;X3;K"Farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y42;K"hkee" +C;X2;K"a3" +C;X3;K"Keep" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.17 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y43;K"hlum" +C;X2;K"a3" +C;X3;K"LumberMill" +C;X4;K"human" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y44;K"hshy" +C;X2;K"a3" +C;X3;K"human shipyard" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K384 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y45;K"htow" +C;X2;K"a3" +C;X3;K"TownHall" +C;X4;K"human" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.17 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y46;K"hvlt" +C;X2;K"a3" +C;X3;K"Arcane Vault" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y47;K"hwtw" +C;X2;K"a3" +C;X3;K"Scout Tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y48;K"Obla" +C;X2;K"b1" +C;X3;K"HeroBladeMaster" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K14 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y49;K"Ofar" +C;X2;K"b1" +C;X3;K"HeroFarSeer" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K11 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y50;K"Oshd" +C;X2;K"b1" +C;X3;K"HeroShadowHunter" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.77 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y51;K"Otch" +C;X2;K"b1" +C;X3;K"HeroTaurenChieftain" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K10 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y52;K"ncat" +C;X2;K"b2" +C;X3;K"Demolisher(Draenei)" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.34 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y53;K"nsw1" +C;X2;K"b2" +C;X3;K"spirit beast level 1" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y54;K"nsw2" +C;X2;K"b2" +C;X3;K"spirit beast level 2" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y55;K"nsw3" +C;X2;K"b2" +C;X3;K"spirit beast level 3" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y56;K"nwad" +C;X2;K"b2" +C;X3;K"WatcherWard" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y57;K"obot" +C;X2;K"b2" +C;X3;K"orcish transport" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y58;K"ocat" +C;X2;K"b2" +C;X3;K"Demolisher" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.34 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y59;K"odes" +C;X2;K"b2" +C;X3;K"orcish destroyer" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.2 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y60;K"odoc" +C;X2;K"b2" +C;X3;K"WitchDoctor" +C;X4;K"orc" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.97 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y61;K"oeye" +C;X2;K"b2" +C;X3;K"SentryWard" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y62;K"ogru" +C;X2;K"b2" +C;X3;K"Grunt" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y63;K"ohun" +C;X2;K"b2" +C;X3;K"HeadHunter" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y64;K"ohwd" +C;X2;K"b2" +C;X3;K"Healing Ward" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y65;K"okod" +C;X2;K"b2" +C;X3;K"KodoBeast" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K2 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y66;K"opeo" +C;X2;K"b2" +C;X3;K"Peon" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y67;K"orai" +C;X2;K"b2" +C;X3;K"WolfRider" +C;X4;K"orc" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.87 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y68;K"oshm" +C;X2;K"b2" +C;X3;K"Shaman" +C;X4;K"orc" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.37 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y69;K"osp1" +C;X2;K"b2" +C;X3;K"Serpent Ward 1" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y70;K"osp2" +C;X2;K"b2" +C;X3;K"Serpent Ward 2" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y71;K"osp3" +C;X2;K"b2" +C;X3;K"Serpent Ward 3" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y72;K"osp4" +C;X2;K"b2" +C;X3;K"Serpent Ward 4" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y73;K"ospm" +C;X2;K"b2" +C;X3;K"spiritwalkermorph" +C;X4;K"orc" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y74;K"ospw" +C;X2;K"b2" +C;X3;K"spiritwalker" +C;X4;K"orc" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y75;K"osw1" +C;X2;K"b2" +C;X3;K"spirit wolf level 1" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y76;K"osw2" +C;X2;K"b2" +C;X3;K"spirit wolf level 2" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y77;K"osw3" +C;X2;K"b2" +C;X3;K"spirit wolf level 3" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y78;K"otau" +C;X2;K"b2" +C;X3;K"Tauren" +C;X4;K"orc" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.14 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y79;K"otbk" +C;X2;K"b2" +C;X3;K"Berserker" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y80;K"otbr" +C;X2;K"b2" +C;X3;K"Troll Batrider" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y81;K"otot" +C;X2;K"b2" +C;X3;K"StasisTrapward" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y82;K"owyv" +C;X2;K"b2" +C;X3;K"Wind Rider" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.1 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y83;K"oalt" +C;X2;K"b3" +C;X3;K"AltarofStorms" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y84;K"obar" +C;X2;K"b3" +C;X3;K"Barracks" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y85;K"obea" +C;X2;K"b3" +C;X3;K"Beastiary" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y86;K"ofor" +C;X2;K"b3" +C;X3;K"Forge" +C;X4;K"orc" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y87;K"ofrt" +C;X2;K"b3" +C;X3;K"Fortress" +C;X4;K"orc" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y88;K"ogre" +C;X2;K"b3" +C;X3;K"GreatHall" +C;X4;K"orc" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y89;K"oshy" +C;X2;K"b3" +C;X3;K"orc shipyard" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K384 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y90;K"osld" +C;X2;K"b3" +C;X3;K"SpiritLodge" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y91;K"ostr" +C;X2;K"b3" +C;X3;K"Stronghold" +C;X4;K"orc" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y92;K"otrb" +C;X2;K"b3" +C;X3;K"OrcBurrow" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y93;K"otto" +C;X2;K"b3" +C;X3;K"Tauren Totem" +C;X4;K"orc" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y94;K"ovln" +C;X2;K"b3" +C;X3;K"Voodoo Lounge" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y95;K"owtw" +C;X2;K"b3" +C;X3;K"WatchTower" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y96;K"Edem" +C;X2;K"c1" +C;X3;K"HeroDemonHunter" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K15 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y97;K"Edmm" +C;X2;K"c1" +C;X3;K"HeroDemonHunterMorph" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K15 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y98;K"Ekee" +C;X2;K"c1" +C;X3;K"HeroKeeperoftheGrove" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K13 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y99;K"Emoo" +C;X2;K"c1" +C;X3;K"HeroMoonPriestess" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K13 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y100;K"Ewar" +C;X2;K"c1" +C;X3;K"HeroWarden" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y101;K"earc" +C;X2;K"c2" +C;X3;K"Archer" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y102;K"ebal" +C;X2;K"c2" +C;X3;K"Glaive Thrower" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.34 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y103;K"ebsh" +C;X2;K"c2" +C;X3;K"night elf battleship" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y104;K"echm" +C;X2;K"c2" +C;X3;K"Chimaera" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y105;K"edcm" +C;X2;K"c2" +C;X3;K"DruidoftheClawMorph" +C;X4;K"nightelf" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y106;K"edes" +C;X2;K"c2" +C;X3;K"night elf destroyer" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.2 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y107;K"edoc" +C;X2;K"c2" +C;X3;K"DruidoftheClaw" +C;X4;K"nightelf" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y108;K"edot" +C;X2;K"c2" +C;X3;K"DruidoftheTalon" +C;X4;K"nightelf" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K4.335 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y109;K"edry" +C;X2;K"c2" +C;X3;K"Dryad" +C;X4;K"nightelf" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y110;K"edtm" +C;X2;K"c2" +C;X3;K"DruidoftheTalonMorph" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K4.335 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.6 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y111;K"efdr" +C;X2;K"c2" +C;X3;K"faerie dragon" +C;X4;K"nightelf" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.13 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K4 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y112;K"efon" +C;X2;K"c2" +C;X3;K"Ent" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.14 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y113;K"ehip" +C;X2;K"c2" +C;X3;K"Hippogryph" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y114;K"ehpr" +C;X2;K"c2" +C;X3;K"Hippogryph Rider" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y115;K"emtg" +C;X2;K"c2" +C;X3;K"Mountain Giant" +C;X4;K"nightelf" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.34 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y116;K"esen" +C;X2;K"c2" +C;X3;K"Huntress" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y117;K"espv" +C;X2;K"c2" +C;X3;K"spirit of vengeance" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y118;K"even" +C;X2;K"c2" +C;X3;K"vengeance" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.13 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y119;K"ewsp" +C;X2;K"c2" +C;X3;K"Wisp" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y120;K"eaoe" +C;X2;K"c3" +C;X3;K"AncientofLore" +C;X4;K"nightelf" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y121;K"eaom" +C;X2;K"c3" +C;X3;K"AncientofWar" +C;X4;K"nightelf" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y122;K"eaow" +C;X2;K"c3" +C;X3;K"AncientofWind" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y123;K"eate" +C;X2;K"c3" +C;X3;K"AltarofElders" +C;X4;K"nightelf" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y124;K"eden" +C;X2;K"c3" +C;X3;K"Ancient of Wonders" +C;X4;K"nightelf" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.2 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y125;K"edob" +C;X2;K"c3" +C;X3;K"HuntersHall" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y126;K"edos" +C;X2;K"c3" +C;X3;K"ChimaeraRoost" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y127;K"egol" +C;X2;K"c3" +C;X3;K"EntangledGoldMine" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Goldmine.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"resource" +C;X24;K7 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y128;K"emow" +C;X2;K"c3" +C;X3;K"MoonWell" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y129;K"eshy" +C;X2;K"c3" +C;X3;K"nightelf shipyard" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K384 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y130;K"etoa" +C;X2;K"c3" +C;X3;K"TreeofAges" +C;X4;K"nightelf" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y131;K"etoe" +C;X2;K"c3" +C;X3;K"TreeofEternity" +C;X4;K"nightelf" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y132;K"etol" +C;X2;K"c3" +C;X3;K"TreeofLife" +C;X4;K"nightelf" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y133;K"etrp" +C;X2;K"c3" +C;X3;K"Ancient Protector" +C;X4;K"nightelf" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y134;K"Ucrl" +C;X2;K"d1" +C;X3;K"HeroCryptLord" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y135;K"Udea" +C;X2;K"d1" +C;X3;K"HeroDeathKnight" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K15 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y136;K"Udre" +C;X2;K"d1" +C;X3;K"HeroDreadLord" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K18 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y137;K"Ulic" +C;X2;K"d1" +C;X3;K"HeroLich" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K3 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K15 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y138;K"uabo" +C;X2;K"d2" +C;X3;K"Abomination" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.17 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y139;K"uaco" +C;X2;K"d2" +C;X3;K"Acolyte" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y140;K"uban" +C;X2;K"d2" +C;X3;K"Banshee" +C;X4;K"undead" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.17 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K50 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y141;K"ubsp" +C;X2;K"d2" +C;X3;K"destroyer" +C;X4;K"undead" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.67 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y142;K"ucrm" +C;X2;K"d2" +C;X3;K"CryptFiendMorph" +C;X4;K"undead" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.04 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y143;K"ucry" +C;X2;K"d2" +C;X3;K"CryptFiend" +C;X4;K"undead" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.04 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y144;K"ucs1" +C;X2;K"d2" +C;X3;K"carrion scarab level 1" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y145;K"ucs2" +C;X2;K"d2" +C;X3;K"carrion scarab level 2" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y146;K"ucs3" +C;X2;K"d2" +C;X3;K"carrion scarab level 3" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y147;K"ucsB" +C;X2;K"d2" +C;X3;K"carrion scarab level 2 -burrowed" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y148;K"ucsC" +C;X2;K"d2" +C;X3;K"carrion scarab level 3 -burrowed" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y149;K"ufro" +C;X2;K"d2" +C;X3;K"FrostWyrm" +C;X4;K"undead" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y150;K"ugar" +C;X2;K"d2" +C;X3;K"Gargoyle" +C;X4;K"undead" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y151;K"ugho" +C;X2;K"d2" +C;X3;K"Ghoul" +C;X4;K"undead" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y152;K"ugrm" +C;X2;K"d2" +C;X3;K"GargoyleMorphed" +C;X4;K"undead" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y153;K"uloc" +C;X2;K"d2" +C;X3;K"locust" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K150 +C;X14;K45 +C;X15;K0.2 +C;X16;K170 +C;X17;K0 +C;X18;K0 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y154;K"umtw" +C;X2;K"d2" +C;X3;K"MeatWagon" +C;X4;K"undead" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.7 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y155;K"unec" +C;X2;K"d2" +C;X3;K"Necromancer" +C;X4;K"undead" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y156;K"uobs" +C;X2;K"d2" +C;X3;K"Obsidian Statue" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K0 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y157;K"uplg" +C;X2;K"d2" +C;X3;K"PlagueWard" +C;X4;K"undead" +C;X5;K0 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y158;K"ushd" +C;X2;K"d2" +C;X3;K"Shade" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K3 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y159;K"uske" +C;X2;K"d2" +C;X3;K"SkeletonWarrior" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y160;K"uskm" +C;X2;K"d2" +C;X3;K"Skeletal Mage" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y161;K"uubs" +C;X2;K"d2" +C;X3;K"undead battleship" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y162;K"uaod" +C;X2;K"d3" +C;X3;K"AltarofDarkness" +C;X4;K"undead" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y163;K"ubon" +C;X2;K"d3" +C;X3;K"Boneyard" +C;X4;K"undead" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y164;K"ugol" +C;X2;K"d3" +C;X3;K"UndeadGoldMine" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Goldmine.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"resource" +C;X24;K7 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K1 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y165;K"ugrv" +C;X2;K"d3" +C;X3;K"Graveyard" +C;X4;K"undead" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y166;K"unp1" +C;X2;K"d3" +C;X3;K"Halls of the Dead" +C;X4;K"undead" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\UndeadNecropolis.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y167;K"unp2" +C;X2;K"d3" +C;X3;K"Black Citadel" +C;X4;K"undead" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\UndeadNecropolis.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y168;K"unpl" +C;X2;K"d3" +C;X3;K"Necropolis" +C;X4;K"undead" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\UndeadNecropolis.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y169;K"usap" +C;X2;K"d3" +C;X3;K"SacrificialPit" +C;X4;K"undead" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y170;K"usep" +C;X2;K"d3" +C;X3;K"Crypt" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y171;K"ushp" +C;X2;K"d3" +C;X3;K"undead shipyard" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K384 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y172;K"uslh" +C;X2;K"d3" +C;X3;K"Slaughterhouse" +C;X4;K"undead" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y173;K"utod" +C;X2;K"d3" +C;X3;K"TempleoftheDamned" +C;X4;K"undead" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y174;K"utom" +C;X2;K"d3" +C;X3;K"Tomb of Relics" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y175;K"uzg1" +C;X2;K"d3" +C;X3;K"Spirit Tower" +C;X4;K"undead" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y176;K"uzg2" +C;X2;K"d3" +C;X3;K"Frost Tower" +C;X4;K"undead" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y177;K"uzig" +C;X2;K"d3" +C;X3;K"Ziggurat" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y178;K"Nal2" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph2" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y179;K"Nal3" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph3" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y180;K"Nalc" +C;X2;K"n1" +C;X3;K"HeroAlchemist" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y181;K"Nalm" +C;X2;K"n1" +C;X3;K"HeroAlchemistMorph" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y182;K"Nbrn" +C;X2;K"n1" +C;X3;K"HeroBansheeRanger" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y183;K"Nbst" +C;X2;K"n1" +C;X3;K"Beastmaster" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K7 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y184;K"Nfir" +C;X2;K"n1" +C;X3;K"FireLord" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y185;K"Nngs" +C;X2;K"n1" +C;X3;K"HeroNagaSorceror" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K9 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y186;K"Npbm" +C;X2;K"n1" +C;X3;K"HeroPandarenBrewmaster" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K8 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y187;K"Nplh" +C;X2;K"n1" +C;X3;K"neutral pit lord" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K5 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y188;K"Nrob" +C;X2;K"n1" +C;X3;K"HeroTinkerMorph" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y189;K"Ntin" +C;X2;K"n1" +C;X3;K"HeroTinker" +C;X4;K"creeps" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y190;K"ncg1" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin(lvl 2)" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y191;K"ncg2" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin(lvl 3)" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y192;K"ncg3" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin(lvl 4)" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y193;K"ncgb" +C;X2;K"n1a" +C;X3;K"Clockwerk Goblin(lvl 1)" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y194;K"ndr1" +C;X2;K"n1a" +C;X3;K"DarkMinion1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y195;K"ndr2" +C;X2;K"n1a" +C;X3;K"DarkMinion2" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y196;K"ndr3" +C;X2;K"n1a" +C;X3;K"DarkMinion3" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y197;K"nfa1" +C;X2;K"n1a" +C;X3;K"Pocket Factory" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y198;K"nfa2" +C;X2;K"n1a" +C;X3;K"Pocket Factory" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y199;K"nfac" +C;X2;K"n1a" +C;X3;K"Pocket Factory" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y200;K"ngz1" +C;X2;K"n1a" +C;X3;K"grizzly bear 1" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y201;K"ngz2" +C;X2;K"n1a" +C;X3;K"grizzly bear 2" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y202;K"ngz3" +C;X2;K"n1a" +C;X3;K"grizzly bear 3" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y203;K"ngz4" +C;X2;K"n1a" +C;X3;K"misha 4" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y204;K"ngzc" +C;X2;K"n1a" +C;X3;K"misha 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y205;K"ngzd" +C;X2;K"n1a" +C;X3;K"misha 2" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y206;K"npn1" +C;X2;K"n1a" +C;X3;K"Fire pandaren split" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y207;K"npn2" +C;X2;K"n1a" +C;X3;K"Wind pandaren split" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y208;K"npn3" +C;X2;K"n1a" +C;X3;K"Earth pandaren split" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y209;K"npn4" +C;X2;K"n1a" +C;X3;K"Fire pandaren split2" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y210;K"npn5" +C;X2;K"n1a" +C;X3;K"Wind pandaren split2" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y211;K"npn6" +C;X2;K"n1a" +C;X3;K"Earth pandaren split2" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y212;K"nqb1" +C;X2;K"n1a" +C;X3;K"quillbeast 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.37 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y213;K"nqb2" +C;X2;K"n1a" +C;X3;K"quillbeast 2" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.37 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y214;K"nqb3" +C;X2;K"n1a" +C;X3;K"quillbeast 3" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.37 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y215;K"nqb4" +C;X2;K"n1a" +C;X3;K"quillbeast 4" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.37 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y216;K"nwe1" +C;X2;K"n1a" +C;X3;K"war eagle 1" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.6 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y217;K"nwe2" +C;X2;K"n1a" +C;X3;K"war eagle 2" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.6 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y218;K"nwe3" +C;X2;K"n1a" +C;X3;K"war eagle 3" +C;X4;K"other" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.6 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y219;K"nadk" +C;X2;K"n2" +C;X3;K"blue drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y220;K"nadr" +C;X2;K"n2" +C;X3;K"blue dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y221;K"nadw" +C;X2;K"n2" +C;X3;K"blue dragon whelp" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y222;K"nahy" +C;X2;K"n2" +C;X3;K"ancient hydra" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y223;K"nanb" +C;X2;K"n2" +C;X3;K"barbed arachnathid" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y224;K"nanc" +C;X2;K"n2" +C;X3;K"crystal arachnathid" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y225;K"nane" +C;X2;K"n2" +C;X3;K"arachnathid earth-borer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y226;K"nanm" +C;X2;K"n2" +C;X3;K"barbed arachnathid(merc)" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y227;K"nano" +C;X2;K"n2" +C;X3;K"arachnathid overlord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y228;K"nanw" +C;X2;K"n2" +C;X3;K"arachnathid warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y229;K"narg" +C;X2;K"n2" +C;X3;K"battle golem" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y230;K"nass" +C;X2;K"n2" +C;X3;K"assassin" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y231;K"nba2" +C;X2;K"n2" +C;X3;K"Doom Guard(summoned)" +C;X4;K"demon" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y232;K"nbal" +C;X2;K"n2" +C;X3;K"Doom Guard" +C;X4;K"demon" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y233;K"nban" +C;X2;K"n2" +C;X3;K"bandit" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y234;K"nbda" +C;X2;K"n2" +C;X3;K"blue dragonspawn apprentice" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.33 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y235;K"nbdk" +C;X2;K"n2" +C;X3;K"black drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y236;K"nbdm" +C;X2;K"n2" +C;X3;K"blue dragonspawn meddler" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.33 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y237;K"nbdo" +C;X2;K"n2" +C;X3;K"blue dragonspawn overseer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.33 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y238;K"nbdr" +C;X2;K"n2" +C;X3;K"black whelp" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y239;K"nbds" +C;X2;K"n2" +C;X3;K"blue dragonspawn sorceror" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.33 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y240;K"nbdw" +C;X2;K"n2" +C;X3;K"blue dragonspawn warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.33 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y241;K"nbld" +C;X2;K"n2" +C;X3;K"bandit lord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y242;K"nbnb" +C;X2;K"n2" +C;X3;K"barbed arachnathid burrowed" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y243;K"nbot" +C;X2;K"n2" +C;X3;K"transport ship" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y244;K"nbrg" +C;X2;K"n2" +C;X3;K"brigand" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y245;K"nbwm" +C;X2;K"n2" +C;X3;K"black dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y246;K"nbzd" +C;X2;K"n2" +C;X3;K"bronze dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y247;K"nbzk" +C;X2;K"n2" +C;X3;K"bronze drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y248;K"nbzw" +C;X2;K"n2" +C;X3;K"bronze dragon whelp" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y249;K"ncea" +C;X2;K"n2" +C;X3;K"CentaurArcher" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y250;K"ncen" +C;X2;K"n2" +C;X3;K"Centaur outrunner" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y251;K"ncer" +C;X2;K"n2" +C;X3;K"centaur drudge" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y252;K"ncfs" +C;X2;K"n2" +C;X3;K"watery minion cliffrunner" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y253;K"nchp" +C;X2;K"n2" +C;X3;K"chaplain" +C;X4;K"human" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y254;K"ncim" +C;X2;K"n2" +C;X3;K"Centaur impaler" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y255;K"ncks" +C;X2;K"n2" +C;X3;K"centaur sorceror" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y256;K"ncnk" +C;X2;K"n2" +C;X3;K"centaur khan" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y257;K"ndqn" +C;X2;K"n2" +C;X3;K"succubus" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y258;K"ndqp" +C;X2;K"n2" +C;X3;K"maiden of pain" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y259;K"ndqs" +C;X2;K"n2" +C;X3;K"queen of suffering" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y260;K"ndqt" +C;X2;K"n2" +C;X3;K"vile temptress" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y261;K"ndqv" +C;X2;K"n2" +C;X3;K"vile tormentor" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.23 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y262;K"ndrv" +C;X2;K"n2" +C;X3;K"revenant of the depths" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y263;K"ndtb" +C;X2;K"n2" +C;X3;K"dark troll berserker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y264;K"ndth" +C;X2;K"n2" +C;X3;K"dark troll high priest" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y265;K"ndtp" +C;X2;K"n2" +C;X3;K"dark troll shadow priest" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y266;K"ndtr" +C;X2;K"n2" +C;X3;K"darkTroll" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y267;K"ndtt" +C;X2;K"n2" +C;X3;K"darkTrollTrapper" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y268;K"ndtw" +C;X2;K"n2" +C;X3;K"darkTrollwarlord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y269;K"nehy" +C;X2;K"n2" +C;X3;K"elder hydra" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y270;K"nelb" +C;X2;K"n2" +C;X3;K"berserk elemental" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y271;K"nele" +C;X2;K"n2" +C;X3;K"enraged elemental" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y272;K"nenc" +C;X2;K"n2" +C;X3;K"corrupted ent" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y273;K"nenf" +C;X2;K"n2" +C;X3;K"enforcer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y274;K"nenp" +C;X2;K"n2" +C;X3;K"poison ent" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y275;K"nepl" +C;X2;K"n2" +C;X3;K"plague ent" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y276;K"nerd" +C;X2;K"n2" +C;X3;K"eredar diabolist" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y277;K"ners" +C;X2;K"n2" +C;X3;K"eredar sorceror" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y278;K"nerw" +C;X2;K"n2" +C;X3;K"eredar warlock" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y279;K"nfel" +C;X2;K"n2" +C;X3;K"fel stalker" +C;X4;K"demon" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y280;K"nfgb" +C;X2;K"n2" +C;X3;K"bloodfiend" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y281;K"nfgo" +C;X2;K"n2" +C;X3;K"Forgotten One" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K0.97 +C;X10;K1 +C;X11;K1 +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"PathTextures\8x8Default.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y282;K"nfgt" +C;X2;K"n2" +C;X3;K"forgotten one tentacle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.07 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y283;K"nfgu" +C;X2;K"n2" +C;X3;K"felguard" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y284;K"nfod" +C;X2;K"n2" +C;X3;K"faceless one deathbringer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y285;K"nfor" +C;X2;K"n2" +C;X3;K"faceless one trickster" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y286;K"nfot" +C;X2;K"n2" +C;X3;K"faceless one terror" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y287;K"nfov" +C;X2;K"n2" +C;X3;K"overlord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y288;K"nfpc" +C;X2;K"n2" +C;X3;K"Polar Furbolg Champion" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y289;K"nfpe" +C;X2;K"n2" +C;X3;K"Polar Furbolg Elder Shaman" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y290;K"nfpl" +C;X2;K"n2" +C;X3;K"Polar Furbolg" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y291;K"nfps" +C;X2;K"n2" +C;X3;K"Polar Furbolg Shaman" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y292;K"nfpt" +C;X2;K"n2" +C;X3;K"Polar Furbolg Tracker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y293;K"nfpu" +C;X2;K"n2" +C;X3;K"Polar Furbolg Ursa Warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y294;K"nfra" +C;X2;K"n2" +C;X3;K"Furbolg Ursa Warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y295;K"nfrb" +C;X2;K"n2" +C;X3;K"Furbolg Tracker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y296;K"nfre" +C;X2;K"n2" +C;X3;K"Furbolg Elder Shaman" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y297;K"nfrg" +C;X2;K"n2" +C;X3;K"Furbolg Champion" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y298;K"nfrl" +C;X2;K"n2" +C;X3;K"Furbolg" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y299;K"nfrp" +C;X2;K"n2" +C;X3;K"Furbolg Panda" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y300;K"nfrs" +C;X2;K"n2" +C;X3;K"Furbolg Shaman" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y301;K"nfsh" +C;X2;K"n2" +C;X3;K"forest troll high priest" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y302;K"nfsp" +C;X2;K"n2" +C;X3;K"forest troll shadow priest" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y303;K"nftb" +C;X2;K"n2" +C;X3;K"forest troll berserker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y304;K"nftk" +C;X2;K"n2" +C;X3;K"ForestTrollKing" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y305;K"nftr" +C;X2;K"n2" +C;X3;K"ForestTroll" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y306;K"nftt" +C;X2;K"n2" +C;X3;K"ForestTrollTrapper" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y307;K"ngdk" +C;X2;K"n2" +C;X3;K"green drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y308;K"nggr" +C;X2;K"n2" +C;X3;K"granite golem" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y309;K"ngh1" +C;X2;K"n2" +C;X3;K"ghost" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.17 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K50 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y310;K"ngh2" +C;X2;K"n2" +C;X3;K"wraith" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.17 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K50 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y311;K"ngir" +C;X2;K"n2" +C;X3;K"goblin shredder" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y312;K"nglm" +C;X2;K"n2" +C;X3;K"goblin land mine" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y313;K"ngna" +C;X2;K"n2" +C;X3;K"Gnoll Poacher" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y314;K"ngnb" +C;X2;K"n2" +C;X3;K"gnoll brute" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y315;K"ngno" +C;X2;K"n2" +C;X3;K"Gnoll Robber" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y316;K"ngns" +C;X2;K"n2" +C;X3;K"Gnoll Assassin" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y317;K"ngnv" +C;X2;K"n2" +C;X3;K"gnoll king" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y318;K"ngnw" +C;X2;K"n2" +C;X3;K"gnoll warden" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y319;K"ngrd" +C;X2;K"n2" +C;X3;K"green dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y320;K"ngrk" +C;X2;K"n2" +C;X3;K"mud golem" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y321;K"ngrw" +C;X2;K"n2" +C;X3;K"green dragon whelp" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y322;K"ngsp" +C;X2;K"n2" +C;X3;K"GoblinSapper" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y323;K"ngst" +C;X2;K"n2" +C;X3;K"rock golem" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y324;K"ngza" +C;X2;K"n2" +C;X3;K"misha 3" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y325;K"nhar" +C;X2;K"n2" +C;X3;K"Harpy Scout" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y326;K"nhdc" +C;X2;K"n2" +C;X3;K"deceiver" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y327;K"nhfp" +C;X2;K"n2" +C;X3;K"fallen priest" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y328;K"nhhr" +C;X2;K"n2" +C;X3;K"heretic" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y329;K"nhrh" +C;X2;K"n2" +C;X3;K"harpy hag" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y330;K"nhrq" +C;X2;K"n2" +C;X3;K"harpy queen" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y331;K"nhrr" +C;X2;K"n2" +C;X3;K"harpy rogue" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y332;K"nhrw" +C;X2;K"n2" +C;X3;K"harpy witch" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y333;K"nhyc" +C;X2;K"n2" +C;X3;K"campaign turtle" +C;X4;K"naga" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y334;K"nhyd" +C;X2;K"n2" +C;X3;K"hydra" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y335;K"nhyh" +C;X2;K"n2" +C;X3;K"hydra hatchling" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y336;K"nhym" +C;X2;K"n2" +C;X3;K"hydromancer" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y337;K"nina" +C;X2;K"n2" +C;X3;K"infernal automaton" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.67 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y338;K"ninc" +C;X2;K"n2" +C;X3;K"infernal contraption" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.67 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y339;K"ninf" +C;X2;K"n2" +C;X3;K"Infernal" +C;X4;K"demon" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y340;K"ninm" +C;X2;K"n2" +C;X3;K"infernal machine" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.67 +C;X10;K0 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y341;K"nith" +C;X2;K"n2" +C;X3;K"ice troll high priest" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y342;K"nitp" +C;X2;K"n2" +C;X3;K"ice troll shadow priest" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y343;K"nitr" +C;X2;K"n2" +C;X3;K"IceTroll" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y344;K"nits" +C;X2;K"n2" +C;X3;K"ice troll berserker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y345;K"nitt" +C;X2;K"n2" +C;X3;K"ice troll trapper" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y346;K"nitw" +C;X2;K"n2" +C;X3;K"ice troll warlord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y347;K"njg1" +C;X2;K"n2" +C;X3;K"Jungle Stalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y348;K"njga" +C;X2;K"n2" +C;X3;K"Elder Jungle Stalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y349;K"njgb" +C;X2;K"n2" +C;X3;K"Enranged Jungle Stalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y350;K"nkob" +C;X2;K"n2" +C;X3;K"Kobold" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y351;K"nkog" +C;X2;K"n2" +C;X3;K"Kobold Geomancer" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y352;K"nkol" +C;X2;K"n2" +C;X3;K"kobold leader" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y353;K"nkot" +C;X2;K"n2" +C;X3;K"kobold tunneler" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y354;K"nlds" +C;X2;K"n2" +C;X3;K"makrura deep seer" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y355;K"nlkl" +C;X2;K"n2" +C;X3;K"makrura tidal lord" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y356;K"nlpd" +C;X2;K"n2" +C;X3;K"makrura pool dweller" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y357;K"nlpr" +C;X2;K"n2" +C;X3;K"makrura prawn" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y358;K"nlps" +C;X2;K"n2" +C;X3;K"makrura prawn summoned" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y359;K"nlrv" +C;X2;K"n2" +C;X3;K"deeplord revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y360;K"nlsn" +C;X2;K"n2" +C;X3;K"makrura snapper" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y361;K"nltc" +C;X2;K"n2" +C;X3;K"makrura tide caller" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y362;K"nltl" +C;X2;K"n2" +C;X3;K"lightning lizard" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y363;K"nlur" +C;X2;K"n2" +C;X3;K"Monster Lure ward" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ward" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y364;K"nmam" +C;X2;K"n2" +C;X3;K"Mammoth" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y365;K"nmbg" +C;X2;K"n2" +C;X3;K"mur'gul blood-gill" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y366;K"nmcf" +C;X2;K"n2" +C;X3;K"mur'gul cliffrunner" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y367;K"nmdr" +C;X2;K"n2" +C;X3;K"Dire Mammoth" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y368;K"nmfs" +C;X2;K"n2" +C;X3;K"murloc flesheater" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y369;K"nmgd" +C;X2;K"n2" +C;X3;K"magnataur destroyer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y370;K"nmgr" +C;X2;K"n2" +C;X3;K"magnataur reaver" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y371;K"nmgw" +C;X2;K"n2" +C;X3;K"magnataur warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y372;K"nmit" +C;X2;K"n2" +C;X3;K"Icetusk Mammoth" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y373;K"nmmu" +C;X2;K"n2" +C;X3;K"murloc mutant" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y374;K"nmpg" +C;X2;K"n2" +C;X3;K"murloc plaguebearer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y375;K"nmrl" +C;X2;K"n2" +C;X3;K"murloc fisherman" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y376;K"nmrm" +C;X2;K"n2" +C;X3;K"murloc nightcrawler" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y377;K"nmrr" +C;X2;K"n2" +C;X3;K"murloc huntsman" +C;X4;K"creeps" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y378;K"nmrv" +C;X2;K"n2" +C;X3;K"mur'gul reaver" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y379;K"nmsc" +C;X2;K"n2" +C;X3;K"mur'gul shadowcaster" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y380;K"nmsn" +C;X2;K"n2" +C;X3;K"mur'gul snarecaster" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y381;K"nmtw" +C;X2;K"n2" +C;X3;K"mur'gul tidewarrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y382;K"nmyr" +C;X2;K"n2" +C;X3;K"naga myrmidon" +C;X4;K"naga" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y383;K"nmys" +C;X2;K"n2" +C;X3;K"naga myrmidon submerged" +C;X4;K"naga" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y384;K"nndk" +C;X2;K"n2" +C;X3;K"nether drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.13 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y385;K"nndr" +C;X2;K"n2" +C;X3;K"nether dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.13 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y386;K"nnht" +C;X2;K"n2" +C;X3;K"nether hatchling" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.13 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y387;K"nnmg" +C;X2;K"n2" +C;X3;K"naga mur'gul" +C;X4;K"naga" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y388;K"nnrg" +C;X2;K"n2" +C;X3;K"naga royal guard" +C;X4;K"naga" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y389;K"nnrs" +C;X2;K"n2" +C;X3;K"naga royal guard submerged" +C;X4;K"naga" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y390;K"nnsu" +C;X2;K"n2" +C;X3;K"naga summoner" +C;X4;K"naga" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y391;K"nnsw" +C;X2;K"n2" +C;X3;K"naga siren" +C;X4;K"naga" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y392;K"nnwa" +C;X2;K"n2" +C;X3;K"nerubian warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y393;K"nnwl" +C;X2;K"n2" +C;X3;K"nerubian webspinner" +C;X4;K"creeps" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y394;K"nnwq" +C;X2;K"n2" +C;X3;K"nerubian queen" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y395;K"nnwr" +C;X2;K"n2" +C;X3;K"nerubian seer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y396;K"nnws" +C;X2;K"n2" +C;X3;K"nerubian spider lord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y397;K"noga" +C;X2;K"n2" +C;X3;K"Stonemaul Warchief" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y398;K"nogl" +C;X2;K"n2" +C;X3;K"ogre lord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y399;K"nogm" +C;X2;K"n2" +C;X3;K"ogre mauler" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y400;K"nogn" +C;X2;K"n2" +C;X3;K"Stonemaul Magi" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y401;K"nogo" +C;X2;K"n2" +C;X3;K"Stonemaul Ogre" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y402;K"nogr" +C;X2;K"n2" +C;X3;K"Ogre Warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y403;K"nomg" +C;X2;K"n2" +C;X3;K"ogre magi" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y404;K"nowb" +C;X2;K"n2" +C;X3;K"owlbear" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y405;K"nowe" +C;X2;K"n2" +C;X3;K"enraged owlbear" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y406;K"nowk" +C;X2;K"n2" +C;X3;K"berserk owlbear" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y407;K"npfl" +C;X2;K"n2" +C;X3;K"purple felhound" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y408;K"npfm" +C;X2;K"n2" +C;X3;K"purple felhound" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y409;K"nplb" +C;X2;K"n2" +C;X3;K"polar bear" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.97 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y410;K"nplg" +C;X2;K"n2" +C;X3;K"giant polar bear" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.97 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y411;K"nqbh" +C;X2;K"n2" +C;X3;K"quillboar hunter" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y412;K"nrdk" +C;X2;K"n2" +C;X3;K"Red Dragon Whelp" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y413;K"nrdr" +C;X2;K"n2" +C;X3;K"Red Drake" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y414;K"nrel" +C;X2;K"n2" +C;X3;K"reef elemental" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y415;K"nrog" +C;X2;K"n2" +C;X3;K"rogue" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y416;K"nrvd" +C;X2;K"n2" +C;X3;K"death revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y417;K"nrvf" +C;X2;K"n2" +C;X3;K"fire revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y418;K"nrvi" +C;X2;K"n2" +C;X3;K"ice revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y419;K"nrvl" +C;X2;K"n2" +C;X3;K"lightning revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y420;K"nrvs" +C;X2;K"n2" +C;X3;K"frost revenant" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y421;K"nrwm" +C;X2;K"n2" +C;X3;K"Red Dragon" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y422;K"nrzb" +C;X2;K"n2" +C;X3;K"razormane brute" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y423;K"nrzg" +C;X2;K"n2" +C;X3;K"razormane chieftain" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y424;K"nrzm" +C;X2;K"n2" +C;X3;K"razormane medicine man" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y425;K"nrzs" +C;X2;K"n2" +C;X3;K"razormane scout" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y426;K"nrzt" +C;X2;K"n2" +C;X3;K"quillboar" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y427;K"nsat" +C;X2;K"n2" +C;X3;K"Satyr Trickster" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y428;K"nsbm" +C;X2;K"n2" +C;X3;K"brood mother" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y429;K"nsbs" +C;X2;K"n2" +C;X3;K"snap dragon submerged" +C;X4;K"naga" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y430;K"nsc2" +C;X2;K"n2" +C;X3;K"spider crab" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y431;K"nsc3" +C;X2;K"n2" +C;X3;K"spider crab" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y432;K"nsca" +C;X2;K"n2" +C;X3;K"skeletal archer(summoned)" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y433;K"nscb" +C;X2;K"n2" +C;X3;K"spider crab" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y434;K"nsce" +C;X2;K"n2" +C;X3;K"SkeletonWarrior(summoned)" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y435;K"nsel" +C;X2;K"n2" +C;X3;K"sea elemental" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y436;K"nsgb" +C;X2;K"n2" +C;X3;K"sea giant behemoth" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.34 +C;X10;K1 +C;X11;K2 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y437;K"nsgg" +C;X2;K"n2" +C;X3;K"siege golem" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y438;K"nsgh" +C;X2;K"n2" +C;X3;K"sea giant hunter" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.34 +C;X10;K1 +C;X11;K2 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y439;K"nsgn" +C;X2;K"n2" +C;X3;K"sea giant" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.34 +C;X10;K1 +C;X11;K2 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K30 +C;X17;K1 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y440;K"nsgt" +C;X2;K"n2" +C;X3;K"giant spider" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y441;K"nska" +C;X2;K"n2" +C;X3;K"skeletal archer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y442;K"nske" +C;X2;K"n2" +C;X3;K"SkeletonWarrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y443;K"nskf" +C;X2;K"n2" +C;X3;K"burning archer" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y444;K"nskg" +C;X2;K"n2" +C;X3;K"giant SkeletonWarrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y445;K"nskm" +C;X2;K"n2" +C;X3;K"skeletal marksman" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y446;K"nsko" +C;X2;K"n2" +C;X3;K"skeletal orc" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y447;K"nslf" +C;X2;K"n2" +C;X3;K"sludge flinger" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y448;K"nslh" +C;X2;K"n2" +C;X3;K"salamander hatchling" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y449;K"nsll" +C;X2;K"n2" +C;X3;K"salamander lord" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y450;K"nslm" +C;X2;K"n2" +C;X3;K"sludge minion" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y451;K"nsln" +C;X2;K"n2" +C;X3;K"sludge monstrosity" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y452;K"nslr" +C;X2;K"n2" +C;X3;K"salamander" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y453;K"nslv" +C;X2;K"n2" +C;X3;K"salamander vizier" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y454;K"nsnp" +C;X2;K"n2" +C;X3;K"snap dragon" +C;X4;K"naga" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y455;K"nsns" +C;X2;K"n2" +C;X3;K"watery minion snarecaster" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y456;K"nsoc" +C;X2;K"n2" +C;X3;K"skeletal orc champion" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y457;K"nsog" +C;X2;K"n2" +C;X3;K"skeletal orc grunt" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K5.034 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y458;K"nspb" +C;X2;K"n2" +C;X3;K"black spider" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y459;K"nspd" +C;X2;K"n2" +C;X3;K"spiderling" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y460;K"nspg" +C;X2;K"n2" +C;X3;K"green spider" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y461;K"nspp" +C;X2;K"n2" +C;X3;K"spirit pig" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y462;K"nspr" +C;X2;K"n2" +C;X3;K"spider" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y463;K"nsqa" +C;X2;K"n2" +C;X3;K"ancient sasquatch" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y464;K"nsqe" +C;X2;K"n2" +C;X3;K"elder sasquatch" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y465;K"nsqo" +C;X2;K"n2" +C;X3;K"sasquatch oracle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y466;K"nsqt" +C;X2;K"n2" +C;X3;K"sasquatch" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y467;K"nsra" +C;X2;K"n2" +C;X3;K"stormreaver apprentice" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y468;K"nsrh" +C;X2;K"n2" +C;X3;K"stormreaver hermit" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y469;K"nsrn" +C;X2;K"n2" +C;X3;K"stormreaver necrolyte" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y470;K"nsrv" +C;X2;K"n2" +C;X3;K"revenant of the seas" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y471;K"nsrw" +C;X2;K"n2" +C;X3;K"stormreaver warlock" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y472;K"nssp" +C;X2;K"n2" +C;X3;K"spitting spider" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y473;K"nsth" +C;X2;K"n2" +C;X3;K"satyr hellcaller" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y474;K"nstl" +C;X2;K"n2" +C;X3;K"satyr soulstealer" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y475;K"nsts" +C;X2;K"n2" +C;X3;K"satyr shadowdancer" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y476;K"nstw" +C;X2;K"n2" +C;X3;K"storm wyrm" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y477;K"nsty" +C;X2;K"n2" +C;X3;K"satyr" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y478;K"nthl" +C;X2;K"n2" +C;X3;K"thunder lizard" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y479;K"ntka" +C;X2;K"n2" +C;X3;K"tuskarr spearman" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y480;K"ntkc" +C;X2;K"n2" +C;X3;K"tuskarr chieftain" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y481;K"ntkf" +C;X2;K"n2" +C;X3;K"tuskarr fighter" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y482;K"ntkh" +C;X2;K"n2" +C;X3;K"tuskarr healer" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y483;K"ntks" +C;X2;K"n2" +C;X3;K"tuskarr sorceror" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y484;K"ntkt" +C;X2;K"n2" +C;X3;K"tuskarr trapper" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y485;K"ntkw" +C;X2;K"n2" +C;X3;K"tuskarr warrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y486;K"ntor" +C;X2;K"n2" +C;X3;K"tornado" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y487;K"ntrd" +C;X2;K"n2" +C;X3;K"dragon turtle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y488;K"ntrg" +C;X2;K"n2" +C;X3;K"gargantuan sea turtle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y489;K"ntrh" +C;X2;K"n2" +C;X3;K"sea turtle hatchling" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y490;K"ntrs" +C;X2;K"n2" +C;X3;K"sea turtle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y491;K"ntrt" +C;X2;K"n2" +C;X3;K"giant sea turtle" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y492;K"ntrv" +C;X2;K"n2" +C;X3;K"revenant of the tides" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K9.2 +C;X10;K1 +C;X11;K1 +C;X12;K"hover" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y493;K"ntws" +C;X2;K"n2" +C;X3;K"watery minion tidewarrior" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.67 +C;X10;K1 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y494;K"nubk" +C;X2;K"n2" +C;X3;K"unbroken darkhunter" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y495;K"nubr" +C;X2;K"n2" +C;X3;K"unbroken rager" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y496;K"nubw" +C;X2;K"n2" +C;X3;K"unbroken darkweaver" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.57 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y497;K"nvde" +C;X2;K"n2" +C;X3;K"elder voidwalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y498;K"nvdg" +C;X2;K"n2" +C;X3;K"greater voidwalker" +C;X4;K"creeps" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y499;K"nvdl" +C;X2;K"n2" +C;X3;K"lesser voidwalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y500;K"nvdw" +C;X2;K"n2" +C;X3;K"voidwalker" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.67 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K30 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y501;K"nwen" +C;X2;K"n2" +C;X3;K"Wendigo" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y502;K"nwgs" +C;X2;K"n2" +C;X3;K"naga coutl" +C;X4;K"naga" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.1 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y503;K"nwiz" +C;X2;K"n2" +C;X3;K"wizard" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y504;K"nwld" +C;X2;K"n2" +C;X3;K"dire wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y505;K"nwlg" +C;X2;K"n2" +C;X3;K"giant wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y506;K"nwlt" +C;X2;K"n2" +C;X3;K"timber wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y507;K"nwna" +C;X2;K"n2" +C;X3;K"ancient wendigo" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y508;K"nwnr" +C;X2;K"n2" +C;X3;K"elder wendigo" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y509;K"nwns" +C;X2;K"n2" +C;X3;K"wendigo shaman" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y510;K"nwrg" +C;X2;K"n2" +C;X3;K"war golem" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y511;K"nws1" +C;X2;K"n2" +C;X3;K"dragon hawk" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2.1 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y512;K"nwwd" +C;X2;K"n2" +C;X3;K"white dire wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y513;K"nwwf" +C;X2;K"n2" +C;X3;K"white wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y514;K"nwwg" +C;X2;K"n2" +C;X3;K"giant white wolf" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y515;K"nwzd" +C;X2;K"n2" +C;X3;K"dark wizard" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y516;K"nwzg" +C;X2;K"n2" +C;X3;K"renegade wizard" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y517;K"nwzr" +C;X2;K"n2" +C;X3;K"rogue wizard" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y518;K"nzep" +C;X2;K"n2" +C;X3;K"GoblinZeppelin" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y519;K"nzom" +C;X2;K"n2" +C;X3;K"Zombie" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y520;K"nalb" +C;X2;K"o2" +C;X3;K"Albatross" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y521;K"ncrb" +C;X2;K"o2" +C;X3;K"Crab" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y522;K"nder" +C;X2;K"o2" +C;X3;K"deer" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y523;K"ndog" +C;X2;K"o2" +C;X3;K"Dog" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y524;K"ndwm" +C;X2;K"o2" +C;X3;K"Dune Worm" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y525;K"nech" +C;X2;K"o2" +C;X3;K"Chicken" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y526;K"necr" +C;X2;K"o2" +C;X3;K"Rabbit" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y527;K"nfbr" +C;X2;K"o2" +C;X3;K"Felboar" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y528;K"nfro" +C;X2;K"o2" +C;X3;K"Frog" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y529;K"nhmc" +C;X2;K"o2" +C;X3;K"Hermit Crab" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y530;K"now2" +C;X2;K"o2" +C;X3;K"owlscout 2" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y531;K"now3" +C;X2;K"o2" +C;X3;K"owlscout 3" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y532;K"nowl" +C;X2;K"o2" +C;X3;K"owlscout" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y533;K"npig" +C;X2;K"o2" +C;X3;K"Pig" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y534;K"npng" +C;X2;K"o2" +C;X3;K"Penguin" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y535;K"npnw" +C;X2;K"o2" +C;X3;K"Penguin, water" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.33 +C;X10;K0 +C;X11;K1 +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y536;K"nrac" +C;X2;K"o2" +C;X3;K"Raccoon" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y537;K"nrat" +C;X2;K"o2" +C;X3;K"Rat" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y538;K"nsea" +C;X2;K"o2" +C;X3;K"Seal" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y539;K"nsha" +C;X2;K"o2" +C;X3;K"Amph. Sheep" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y540;K"nshe" +C;X2;K"o2" +C;X3;K"Sheep" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y541;K"nshf" +C;X2;K"o2" +C;X3;K"Flying Sheep" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y542;K"nshw" +C;X2;K"o2" +C;X3;K"Water Sheep (speccccial sheep)" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y543;K"nskk" +C;X2;K"o2" +C;X3;K"Skink" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.66 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y544;K"nsno" +C;X2;K"o2" +C;X3;K"Snowy Owl" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.5 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K0 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y545;K"nvil" +C;X2;K"o2" +C;X3;K"Villager Man" +C;X4;K"commoner" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y546;K"nvk2" +C;X2;K"o2" +C;X3;K"Villager Kid 2" +C;X4;K"commoner" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K6 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y547;K"nvl2" +C;X2;K"o2" +C;X3;K"Villager Man 2" +C;X4;K"commoner" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y548;K"nvlk" +C;X2;K"o2" +C;X3;K"Villager Kid" +C;X4;K"commoner" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K6 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y549;K"nvlw" +C;X2;K"o2" +C;X3;K"Villager Woman" +C;X4;K"commoner" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K5 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y550;K"nvul" +C;X2;K"o2" +C;X3;K"Vulture" +C;X4;K"critters" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K1 +C;X18;K4 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y551;K"ncb0" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding0-2.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y552;K"ncb1" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding0-2.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y553;K"ncb2" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding0-2.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y554;K"ncb3" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding3-5.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y555;K"ncb4" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding3-5.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y556;K"ncb5" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding3-5.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y557;K"ncb6" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding6-8.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y558;K"ncb7" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding6-8.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y559;K"ncb8" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding6-8.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y560;K"ncb9" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding9-11.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y561;K"ncba" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding9-11.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y562;K"ncbb" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding9-11.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y563;K"ncbc" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuildingLarge_0.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y564;K"ncbd" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuildingLarge_135.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y565;K"ncbe" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuildingLarge_90.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y566;K"ncbf" +C;X2;K"p3" +C;X3;K"city building" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuildingLarge_45.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y567;K"ncnt" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y568;K"ncop" +C;X2;K"p3" +C;X3;K"Circle Of Power" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4unbuildable.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y569;K"ncp2" +C;X2;K"p3" +C;X3;K"Circle Of Power medium" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6unbuildable.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y570;K"ncp3" +C;X2;K"p3" +C;X3;K"Circle Of Power large" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8unbuildable.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y571;K"nct1" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y572;K"nct2" +C;X2;K"p3" +C;X3;K"Centaur Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y573;K"ndch" +C;X2;K"p3" +C;X3;K"draenei chieftain hut" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y574;K"ndh0" +C;X2;K"p3" +C;X3;K"draenei hut 0" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y575;K"ndh1" +C;X2;K"p3" +C;X3;K"draenei hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y576;K"ndh2" +C;X2;K"p3" +C;X3;K"draenei outpost" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y577;K"ndh3" +C;X2;K"p3" +C;X3;K"draenei warriors hall" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y578;K"ndh4" +C;X2;K"p3" +C;X3;K"draenei seer's lodge" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y579;K"ndrg" +C;X2;K"p3" +C;X3;K"Dragon Roost green" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y580;K"ndrk" +C;X2;K"p3" +C;X3;K"Dragon Roost black" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y581;K"ndro" +C;X2;K"p3" +C;X3;K"Dragon Roost Outland" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y582;K"ndrr" +C;X2;K"p3" +C;X3;K"Dragon Roost red" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y583;K"ndru" +C;X2;K"p3" +C;X3;K"Dragon Roost blue" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y584;K"ndrz" +C;X2;K"p3" +C;X3;K"Dragon Roost bronze" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y585;K"nfh0" +C;X2;K"p3" +C;X3;K"Forest Troll Hut 0" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y586;K"nfh1" +C;X2;K"p3" +C;X3;K"Forest Troll Hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y587;K"nfoh" +C;X2;K"p3" +C;X3;K"Fountain of Health" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y588;K"nfr1" +C;X2;K"p3" +C;X3;K"Furbolg Hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y589;K"nfr2" +C;X2;K"p3" +C;X3;K"Furbolg Hut 2" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y590;K"ngad" +C;X2;K"p3" +C;X3;K"Goblin Ammo Dump" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y591;K"ngme" +C;X2;K"p3" +C;X3;K"goblin merchant" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y592;K"ngnh" +C;X2;K"p3" +C;X3;K"Gnoll Hut" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y593;K"ngni" +C;X2;K"p3" +C;X3;K"Infected Granary" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y594;K"ngol" +C;X2;K"p3" +C;X3;K"GoldMine" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Goldmine.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"resource" +C;X24;K7 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K1 +C;X30;K1 +C;X31;K0 +C;X1;Y595;K"ngt2" +C;X2;K"p3" +C;X3;K"Gnoll Hut" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y596;K"ngwr" +C;X2;K"p3" +C;X3;K"grain warehouse" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\CityBuilding6-8.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y597;K"nhns" +C;X2;K"p3" +C;X3;K"harpy nest" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y598;K"nmer" +C;X2;K"p3" +C;X3;K"MercenaryCamp L" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y599;K"nmg0" +C;X2;K"p3" +C;X3;K"Murloc Hut 0" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y600;K"nmg1" +C;X2;K"p3" +C;X3;K"Murloc Hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y601;K"nmh0" +C;X2;K"p3" +C;X3;K"Murloc Hut 0" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y602;K"nmh1" +C;X2;K"p3" +C;X3;K"Murloc Hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y603;K"nmoo" +C;X2;K"p3" +C;X3;K"Fountain of Life" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y604;K"nmr0" +C;X2;K"p3" +C;X3;K"MercenaryCamp V" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y605;K"nmr2" +C;X2;K"p3" +C;X3;K"MercenaryCamp F" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y606;K"nmr3" +C;X2;K"p3" +C;X3;K"MercenaryCamp W" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y607;K"nmr4" +C;X2;K"p3" +C;X3;K"MercenaryCamp B" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y608;K"nmr5" +C;X2;K"p3" +C;X3;K"MercenaryCamp A" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y609;K"nmr6" +C;X2;K"p3" +C;X3;K"MercenaryCamp C" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y610;K"nmr7" +C;X2;K"p3" +C;X3;K"MercenaryCamp N" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y611;K"nmr8" +C;X2;K"p3" +C;X3;K"MercenaryCamp Y" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y612;K"nmr9" +C;X2;K"p3" +C;X3;K"MercenaryCamp X" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y613;K"nmra" +C;X2;K"p3" +C;X3;K"MercenaryCamp D" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y614;K"nmrb" +C;X2;K"p3" +C;X3;K"MercenaryCamp G" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y615;K"nmrc" +C;X2;K"p3" +C;X3;K"MercenaryCamp Z" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y616;K"nmrd" +C;X2;K"p3" +C;X3;K"MercenaryCamp I" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y617;K"nmre" +C;X2;K"p3" +C;X3;K"MercenaryCamp O" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y618;K"nmrf" +C;X2;K"p3" +C;X3;K"MercenaryCamp K" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y619;K"nmrk" +C;X2;K"p3" +C;X3;K"Marketplace" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y620;K"nnzg" +C;X2;K"p3" +C;X3;K"nerubian ziggurat" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y621;K"nshp" +C;X2;K"p3" +C;X3;K"Goblin Shipyard" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K384 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y622;K"ntav" +C;X2;K"p3" +C;X3;K"Tavern" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K1 +C;X1;Y623;K"nten" +C;X2;K"p3" +C;X3;K"Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y624;K"nth0" +C;X2;K"p3" +C;X3;K"Ice Troll Hut 0" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y625;K"nth1" +C;X2;K"p3" +C;X3;K"Ice Troll Hut 1" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y626;K"ntn2" +C;X2;K"p3" +C;X3;K"Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y627;K"ntnt" +C;X2;K"p3" +C;X3;K"Tauren Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y628;K"ntt2" +C;X2;K"p3" +C;X3;K"Tauren Tent" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y629;K"nwgt" +C;X2;K"p3" +C;X3;K"WayGate" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\Waygate.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K1 +C;X31;K0 +C;X1;Y630;K"Ecen" +C;X2;K"z1" +C;X3;K"cenarius" +C;X4;K"nightelf" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y631;K"Eevi" +C;X2;K"z1" +C;X3;K"evil illidan" +C;X4;K"nightelf" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K4.1 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y632;K"Eevm" +C;X2;K"z1" +C;X3;K"evil illidan demon form" +C;X4;K"nightelf" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.77 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y633;K"Efur" +C;X2;K"z1" +C;X3;K"furion" +C;X4;K"nightelf" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y634;K"Eidm" +C;X2;K"z1" +C;X3;K"illidan demon form" +C;X4;K"nightelf" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y635;K"Eill" +C;X2;K"z1" +C;X3;K"illidan" +C;X4;K"nightelf" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y636;K"Eilm" +C;X2;K"z1" +C;X3;K"illidanmorphed" +C;X4;K"nightelf" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y637;K"Ekgg" +C;X2;K"z1" +C;X3;K"HeroKeeperoftheGrove ghost" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y638;K"Emfr" +C;X2;K"z1" +C;X3;K"Mal'furion" +C;X4;K"nightelf" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.167 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y639;K"Emns" +C;X2;K"z1" +C;X3;K"Mal'furion no stag" +C;X4;K"nightelf" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K4.33 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y640;K"Etyr" +C;X2;K"z1" +C;X3;K"Tyrande" +C;X4;K"nightelf" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y641;K"Ewrd" +C;X2;K"z1" +C;X3;K"Maiev" +C;X4;K"nightelf" +C;X5;K13 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y642;K"Hant" +C;X2;K"z1" +C;X3;K"antonidus" +C;X4;K"human" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.8 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y643;K"Hapm" +C;X2;K"z1" +C;X3;K"Admiral Proudmoore" +C;X4;K"human" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y644;K"Harf" +C;X2;K"z1" +C;X3;K"arthas w/ frostmourne" +C;X4;K"human" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y645;K"Hart" +C;X2;K"z1" +C;X3;K"arthas" +C;X4;K"human" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y646;K"Hdgo" +C;X2;K"z1" +C;X3;K"Dagren the Orcslayer" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y647;K"Hgam" +C;X2;K"z1" +C;X3;K"ghostly archmage" +C;X4;K"human" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.8 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y648;K"Hhkl" +C;X2;K"z1" +C;X3;K"Halahk the Lifebringer" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y649;K"Hjai" +C;X2;K"z1" +C;X3;K"jaina" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.8 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y650;K"Hkal" +C;X2;K"z1" +C;X3;K"Kael" +C;X4;K"human" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y651;K"Hlgr" +C;X2;K"z1" +C;X3;K"Lord Garithos" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K5.1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y652;K"Hmbr" +C;X2;K"z1" +C;X3;K"muradin bronzebeard" +C;X4;K"human" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y653;K"Hmgd" +C;X2;K"z1" +C;X3;K"Magroth the Defender" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y654;K"Hpb1" +C;X2;K"z1" +C;X3;K"paladin boss 1" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y655;K"Hpb2" +C;X2;K"z1" +C;X3;K"paladin boss 2" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y656;K"Huth" +C;X2;K"z1" +C;X3;K"uther" +C;X4;K"human" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y657;K"Hvsh" +C;X2;K"z1" +C;X3;K"Lady Vashj" +C;X4;K"naga" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y658;K"Hvwd" +C;X2;K"z1" +C;X3;K"sylvanas windrunner" +C;X4;K"human" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y659;K"Naka" +C;X2;K"z1" +C;X3;K"Akama" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y660;K"Nbbc" +C;X2;K"z1" +C;X3;K"blackrock blademaster" +C;X4;K"orc" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y661;K"Nkjx" +C;X2;K"z1" +C;X3;K"Kiljaeden - cinematic only" +C;X4;K"undead" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y662;K"Nklj" +C;X2;K"z1" +C;X3;K"Kiljaeden" +C;X4;K"undead" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y663;K"Nmag" +C;X2;K"z1" +C;X3;K"Magtheridon" +C;X4;K"undead" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y664;K"Nman" +C;X2;K"z1" +C;X3;K"mannoroth" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y665;K"Npld" +C;X2;K"z1" +C;X3;K"pit lord" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K6 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y666;K"Nsjs" +C;X2;K"z1" +C;X3;K"Chen Stormstout" +C;X4;K"orc" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y667;K"Ocb2" +C;X2;K"z1" +C;X3;K"cairne bloodhoof" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y668;K"Ocbh" +C;X2;K"z1" +C;X3;K"cairne bloodhoof" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y669;K"Odrt" +C;X2;K"z1" +C;X3;K"Drek'Thar" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K4 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y670;K"Ogld" +C;X2;K"z1" +C;X3;K"Gul'Dan" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y671;K"Ogrh" +C;X2;K"z1" +C;X3;K"grom hellscream" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y672;K"Opgh" +C;X2;K"z1" +C;X3;K"possessed grom hellscream" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y673;K"Orex" +C;X2;K"z1" +C;X3;K"Rexxar" +C;X4;K"orc" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y674;K"Orkn" +C;X2;K"z1" +C;X3;K"Rokhan" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y675;K"Osam" +C;X2;K"z1" +C;X3;K"Samuro" +C;X4;K"orc" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1.9 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y676;K"Otcc" +C;X2;K"z1" +C;X3;K"cairne bloodhoof cinematic" +C;X4;K"orc" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y677;K"Othr" +C;X2;K"z1" +C;X3;K"thrall" +C;X4;K"orc" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y678;K"Uanb" +C;X2;K"z1" +C;X3;K"anub'arak" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y679;K"Ubal" +C;X2;K"z1" +C;X3;K"balnazzar" +C;X4;K"undead" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y680;K"Uclc" +C;X2;K"z1" +C;X3;K"kelthuzadlich cinematic" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y681;K"Udth" +C;X2;K"z1" +C;X3;K"dethecus" +C;X4;K"undead" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y682;K"Uear" +C;X2;K"z1" +C;X3;K"evil arthas" +C;X4;K"undead" +C;X5;K13 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y683;K"Uktl" +C;X2;K"z1" +C;X3;K"kelthuzadlich" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y684;K"Umal" +C;X2;K"z1" +C;X3;K"malganis" +C;X4;K"undead" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y685;K"Usyl" +C;X2;K"z1" +C;X3;K"Evil Sylvanas" +C;X4;K"undead" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.5 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y686;K"Utic" +C;X2;K"z1" +C;X3;K"tichondrius" +C;X4;K"undead" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y687;K"Uvar" +C;X2;K"z1" +C;X3;K"varimathras" +C;X4;K"undead" +C;X5;K11 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y688;K"Uvng" +C;X2;K"z1" +C;X3;K"vengyr" +C;X4;K"undead" +C;X5;K10 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y689;K"Uwar" +C;X2;K"z1" +C;X3;K"archimonde" +C;X4;K"undead" +C;X5;K12 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K1 +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y690;K"eilw" +C;X2;K"z2" +C;X3;K"illidan wagon" +C;X4;K"nightelf" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.83 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y691;K"enec" +C;X2;K"z2" +C;X3;K"night elf courier" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y692;K"ensh" +C;X2;K"z2" +C;X3;K"Naisha" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y693;K"eshd" +C;X2;K"z2" +C;X3;K"shandris" +C;X4;K"nightelf" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y694;K"etrs" +C;X2;K"z2" +C;X3;K"night elf transport ship" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3.73 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y695;K"hbew" +C;X2;K"z2" +C;X3;K"blood elf wagon" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.83 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y696;K"hcth" +C;X2;K"z2" +C;X3;K"the captain" +C;X4;K"human" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.04 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y697;K"hhdl" +C;X2;K"z2" +C;X3;K"headless rider" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K5.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y698;K"hhes" +C;X2;K"z2" +C;X3;K"high elven swordsman" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3.04 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y699;K"hprt" +C;X2;K"z2" +C;X3;K"portal unit" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y700;K"hrdh" +C;X2;K"z2" +C;X3;K"pack horse" +C;X4;K"human" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K5.1 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K5 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y701;K"nbee" +C;X2;K"z2" +C;X3;K"blood elf engineer" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y702;K"nbel" +C;X2;K"z2" +C;X3;K"blood elf lieutenant" +C;X4;K"human" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y703;K"nbsp" +C;X2;K"z2" +C;X3;K"battleship" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y704;K"nchg" +C;X2;K"z2" +C;X3;K"chaos grunt" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y705;K"nchr" +C;X2;K"z2" +C;X3;K"ChaosWolfRider" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.87 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y706;K"nchw" +C;X2;K"z2" +C;X3;K"ChaosWarlock" +C;X4;K"orc" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.334 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y707;K"nckb" +C;X2;K"z2" +C;X3;K"Chaos Kodo Beast" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K2 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y708;K"ncpn" +C;X2;K"z2" +C;X3;K"Chaos Peon" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y709;K"ndmu" +C;X2;K"z2" +C;X3;K"dalaran mutant" +C;X4;K"creeps" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.67 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y710;K"ndrd" +C;X2;K"z2" +C;X3;K"draenei darkslayer" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y711;K"ndrf" +C;X2;K"z2" +C;X3;K"draenei guardian" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y712;K"ndrh" +C;X2;K"z2" +C;X3;K"draenei harbinger" +C;X4;K"creeps" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y713;K"ndrj" +C;X2;K"z2" +C;X3;K"dalaran reject" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.03 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y714;K"ndrl" +C;X2;K"z2" +C;X3;K"draenei laborer" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y715;K"ndrm" +C;X2;K"z2" +C;X3;K"draenei disciple" +C;X4;K"creeps" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y716;K"ndrn" +C;X2;K"z2" +C;X3;K"draenei vindicator" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y717;K"ndrp" +C;X2;K"z2" +C;X3;K"draenei protector" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y718;K"ndrs" +C;X2;K"z2" +C;X3;K"draenei seer" +C;X4;K"creeps" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y719;K"ndrt" +C;X2;K"z2" +C;X3;K"draenei stalker" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y720;K"ndrw" +C;X2;K"z2" +C;X3;K"draenei watcher" +C;X4;K"creeps" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y721;K"ndsa" +C;X2;K"z2" +C;X3;K"draenei salamander" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K1 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y722;K"negz" +C;X2;K"z2" +C;X3;K"engineer gazlowe" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K2 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y723;K"nemi" +C;X2;K"z2" +C;X3;K"emissary" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y724;K"nfgl" +C;X2;K"z2" +C;X3;K"flesh golem" +C;X4;K"creeps" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y725;K"ngbl" +C;X2;K"z2" +C;X3;K"goblin blaster" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y726;K"nhea" +C;X2;K"z2" +C;X3;K"high elven archer" +C;X4;K"human" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y727;K"nhef" +C;X2;K"z2" +C;X3;K"high elven female" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K5 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y728;K"nhem" +C;X2;K"z2" +C;X3;K"high elven male" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y729;K"nhew" +C;X2;K"z2" +C;X3;K"high elven male" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y730;K"njks" +C;X2;K"z2" +C;X3;K"jailor kassan" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y731;K"nmdm" +C;X2;K"z2" +C;X3;K"medivh morphed" +C;X4;K"human" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.6 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y732;K"nmed" +C;X2;K"z2" +C;X3;K"medivh" +C;X4;K"human" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y733;K"nmpe" +C;X2;K"z2" +C;X3;K"naga peon" +C;X4;K"naga" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2 +C;X10;K0 +C;X11;K1 +C;X12;K"amph" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y734;K"nmsh" +C;X2;K"z2" +C;X3;K"misha the bear" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y735;K"nser" +C;X2;K"z2" +C;X3;K"searinox" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y736;K"nspc" +C;X2;K"z2" +C;X3;K"support column" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y737;K"nssn" +C;X2;K"z2" +C;X3;K"night elf assassin" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y738;K"nthr" +C;X2;K"z2" +C;X3;K"tharifas" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K1 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y739;K"nw2w" +C;X2;K"z2" +C;X3;K"War2Warlock" +C;X4;K"orc" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.334 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y740;K"nwat" +C;X2;K"z2" +C;X3;K"watcher" +C;X4;K"nightelf" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y741;K"nzlc" +C;X2;K"z2" +C;X3;K"cinematic lich king" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.94 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y742;K"odkt" +C;X2;K"z2" +C;X3;K"Drak'Thul" +C;X4;K"orc" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.5 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y743;K"ogrk" +C;X2;K"z2" +C;X3;K"Gar'thok" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y744;K"ojgn" +C;X2;K"z2" +C;X3;K"actual orc juggernaut unit" +C;X4;K"orc" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.733 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y745;K"omtg" +C;X2;K"z2" +C;X3;K"mathog" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y746;K"onzg" +C;X2;K"z2" +C;X3;K"nazgrel" +C;X4;K"orc" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.87 +C;X10;K0 +C;X11;K1 +C;X12;K"horse" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y747;K"oosc" +C;X2;K"z2" +C;X3;K"kodo beast (riderless)" +C;X4;K"orc" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K1 +C;X18;K4 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y748;K"oswy" +C;X2;K"z2" +C;X3;K"spirit wyvern" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y749;K"ovlj" +C;X2;K"z2" +C;X3;K"vol'jin" +C;X4;K"orc" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.97 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K5 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y750;K"owar" +C;X2;K"z2" +C;X3;K"orc warchief" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.75 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K4 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y751;K"ownr" +C;X2;K"z2" +C;X3;K"wyvern" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K240 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K1 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y752;K"uabc" +C;X2;K"z2" +C;X3;K"Abomination cinematic" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K2.17 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K1 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y753;K"uarb" +C;X2;K"z2" +C;X3;K"air barge" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K280 +C;X14;K90 +C;X15;K0.5 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y754;K"ubdd" +C;X2;K"z2" +C;X3;K"dead azurelore" +C;X4;K"undead" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K2 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.4 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y755;K"ubdr" +C;X2;K"z2" +C;X3;K"azurelore" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"fly" +C;X13;K325 +C;X14;K90 +C;X15;K0.1 +C;X16;K61 +C;X17;K3 +C;X18;K2 +C;X19;K"air" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y756;K"ubot" +C;X2;K"z2" +C;X3;K"undead transport" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.733 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y757;K"udes" +C;X2;K"z2" +C;X3;K"undead destroyer" +C;X4;K"undead" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3.733 +C;X10;K0 +C;X11;K"-" +C;X12;K"float" +C;X13;K0 +C;X14;K0 +C;X15;K0.2 +C;X16;K15 +C;X17;K3 +C;X18;K3 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y758;K"uktg" +C;X2;K"z2" +C;X3;K"kelthuzadghost" +C;X4;K"undead" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y759;K"uktn" +C;X2;K"z2" +C;X3;K"kelthuzadnecro" +C;X4;K"undead" +C;X5;K8 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y760;K"uswb" +C;X2;K"z2" +C;X3;K"sylvanus banshee" +C;X4;K"undead" +C;X5;K7 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.17 +C;X10;K0 +C;X11;K1 +C;X12;K"hover" +C;X13;K50 +C;X14;K0 +C;X15;K0.6 +C;X16;K61 +C;X17;K2 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y761;K"haro" +C;X2;K"z3" +C;X3;K"Arcane Observatory" +C;X4;K"human" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6.66 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\ArcaneObservatoryPath.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y762;K"nbfl" +C;X2;K"z3" +C;X3;K"Fountain of Blood" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y763;K"nbse" +C;X2;K"z3" +C;X3;K"bindstone southeast" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y764;K"nbsm" +C;X2;K"z3" +C;X3;K"book of summoning pedestal" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y765;K"nbsw" +C;X2;K"z3" +C;X3;K"bindstone southwest" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y766;K"nbt1" +C;X2;K"z3" +C;X3;K"boulder tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y767;K"nbt2" +C;X2;K"z3" +C;X3;K"boulder tower upgraded" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y768;K"nbwd" +C;X2;K"z3" +C;X3;K"barrow den" +C;X4;K"nightelf" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y769;K"ncap" +C;X2;K"z3" +C;X3;K"corrupted Ancient Protector" +C;X4;K"nightelf" +C;X5;K4 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y770;K"ncaw" +C;X2;K"z3" +C;X3;K"corrupted AncientofWar" +C;X4;K"nightelf" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y771;K"ncmw" +C;X2;K"z3" +C;X3;K"corrupted MoonWell" +C;X4;K"demon" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y772;K"ncta" +C;X2;K"z3" +C;X3;K"corrupted TreeofAges" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y773;K"ncte" +C;X2;K"z3" +C;X3;K"corrupted TreeofEternity" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y774;K"nctl" +C;X2;K"z3" +C;X3;K"corrupted TreeofLife" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K6 +C;X10;K0 +C;X11;K"-" +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.4 +C;X16;K60 +C;X17;K3 +C;X18;K4 +C;X19;K"structure" +C;X20;K"PathTextures\12x12TreeOfLife.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y775;K"ndfl" +C;X2;K"z3" +C;X3;K"Defiled Fountain of Life" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y776;K"ndgt" +C;X2;K"z3" +C;X3;K"dalaran guard tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y777;K"ndke" +C;X2;K"z3" +C;X3;K"dark portal (southeast)" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\DarkPortalSE.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y778;K"ndkw" +C;X2;K"z3" +C;X3;K"dark portal (southwest)" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\DarkPortalSW.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y779;K"ndmg" +C;X2;K"z3" +C;X3;K"demon gate" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\DemonGatePath.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y780;K"ndrb" +C;X2;K"z3" +C;X3;K"Dragon Building" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y781;K"ndt1" +C;X2;K"z3" +C;X3;K"cold tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y782;K"ndt2" +C;X2;K"z3" +C;X3;K"cold tower upgraded" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y783;K"nef0" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y784;K"nef1" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y785;K"nef2" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y786;K"nef3" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y787;K"nef4" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y788;K"nef5" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y789;K"nef6" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y790;K"nef7" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y791;K"nefm" +C;X2;K"z3" +C;X3;K"elven farm" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y792;K"negf" +C;X2;K"z3" +C;X3;K"elven guard fire tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y793;K"negm" +C;X2;K"z3" +C;X3;K"elven guard magic tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y794;K"negt" +C;X2;K"z3" +C;X3;K"elven guard tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K15 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y795;K"net1" +C;X2;K"z3" +C;X3;K"energy tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y796;K"net2" +C;X2;K"z3" +C;X3;K"energy tower upgraded" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y797;K"nfnp" +C;X2;K"z3" +C;X3;K"purple fountain" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y798;K"nfrm" +C;X2;K"z3" +C;X3;K"frostmourne pedestal" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y799;K"nfrt" +C;X2;K"z3" +C;X3;K"fruit stand" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y800;K"nft1" +C;X2;K"z3" +C;X3;K"flame tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y801;K"nft2" +C;X2;K"z3" +C;X3;K"flame tower upgraded" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y802;K"nfv0" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y803;K"nfv1" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y804;K"nfv2" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y805;K"nfv3" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y806;K"nfv4" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y807;K"ngob" +C;X2;K"z3" +C;X3;K"gemstone obelisk" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y808;K"nhcn" +C;X2;K"z3" +C;X3;K"horn of cenarius pedestal" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y809;K"nheb" +C;X2;K"z3" +C;X3;K"High Elven Barracks" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y810;K"nico" +C;X2;K"z3" +C;X3;K"icecrown obelisk" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y811;K"nitb" +C;X2;K"z3" +C;X3;K"treasure box" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y812;K"nmgv" +C;X2;K"z3" +C;X3;K"magic vault" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y813;K"nnad" +C;X2;K"z3" +C;X3;K"altar of the depths - naga altar" +C;X4;K"naga" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\10x10Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y814;K"nnfm" +C;X2;K"z3" +C;X3;K"coral bed - naga farm" +C;X4;K"naga" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y815;K"nnsa" +C;X2;K"z3" +C;X3;K"shrine of azshara - naga caster barracks" +C;X4;K"naga" +C;X5;K5 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y816;K"nnsg" +C;X2;K"z3" +C;X3;K"spawning grounds - naga barracks" +C;X4;K"naga" +C;X5;K9 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"factory" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y817;K"nntg" +C;X2;K"z3" +C;X3;K"tidal guardian - naga tower" +C;X4;K"naga" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y818;K"nntt" +C;X2;K"z3" +C;X3;K"temple of tides - naga town hall" +C;X4;K"naga" +C;X5;K6 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\16x16Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"townhall" +C;X24;K8 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y819;K"npgf" +C;X2;K"z3" +C;X3;K"Pig Farm" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y820;K"npgr" +C;X2;K"z3" +C;X3;K"power generator" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y821;K"nshr" +C;X2;K"z3" +C;X3;K"shrine" +C;X4;K"undead" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\12x12Simple.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y822;K"ntt1" +C;X2;K"z3" +C;X3;K"death tower" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y823;K"ntx2" +C;X2;K"z3" +C;X3;K"death tower upgraded" +C;X4;K"human" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.34 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\4x4SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y824;K"nvr0" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y825;K"nvr1" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y826;K"nvr2" +C;X2;K"z3" +C;X3;K"elven fishing village" +C;X4;K"nightelf" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K2.33 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y827;K"nwc1" +C;X2;K"z3" +C;X3;K"wyvern cage 1" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y828;K"nwc2" +C;X2;K"z3" +C;X3;K"wyvern cage 2" +C;X4;K"orc" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K3 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\8x8Round.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y829;K"nzin" +C;X2;K"z3" +C;X3;K"zone indicator" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K1 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\2x2UnBuildable.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K1 +C;X1;Y830;K"ocbw" +C;X2;K"z3" +C;X3;K"Chaos OrcBurrow" +C;X4;K"orc" +C;X5;K3 +C;X6;K1 +C;X7;K1 +C;X8;K2 +C;X9;K0.64 +C;X10;K0 +C;X11;K"-" +C;X12;K"_" +C;X13;K0 +C;X14;K0 +C;X15;K"-" +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"structure" +C;X20;K"PathTextures\6x6SimpleSolid.tga" +C;X21;K0 +C;X22;K100 +C;X23;K"buffer" +C;X24;K9 +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y831;K"zcso" +C;X2;K"z9" +C;X3;K"chaos space orc" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y832;K"zhyd" +C;X2;K"z9" +C;X3;K"hydralisk" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y833;K"zjug" +C;X2;K"z9" +C;X3;K"orc juggernaut" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"fly" +C;X13;K1 +C;X14;K0 +C;X15;K0.1 +C;X16;K15 +C;X17;K3 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y834;K"zmar" +C;X2;K"z9" +C;X3;K"Marine" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y835;K"zshv" +C;X2;K"z9" +C;X3;K"shoveler" +C;X4;K"other" +C;X5;K1 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K3 +C;X10;K1 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.5 +C;X16;K60 +C;X17;K0 +C;X18;K0 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y836;K"zsmc" +C;X2;K"z9" +C;X3;K"sammy cube" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K0 +C;X9;K0.1 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +C;X1;Y837;K"zzrg" +C;X2;K"z9" +C;X3;K"zergling" +C;X4;K"other" +C;X5;K2 +C;X6;K1 +C;X7;K1 +C;X8;K3 +C;X9;K1.7 +C;X10;K0 +C;X11;K1 +C;X12;K"foot" +C;X13;K0 +C;X14;K0 +C;X15;K0.6 +C;X16;K60 +C;X17;K0 +C;X18;K2 +C;X19;K"ground" +C;X20;K"_" +C;X21;K0 +C;X22;K100 +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K1 +C;X27;K0 +C;X28;K0 +C;X29;K0 +C;X30;K0 +C;X31;K0 +E diff --git a/share/mpq/units/units/unitglobalstrings.txt b/share/mpq/units/units/unitglobalstrings.txt new file mode 100644 index 0000000..3926486 --- /dev/null +++ b/share/mpq/units/units/unitglobalstrings.txt @@ -0,0 +1,5 @@ +[Categories] +GiantClass=巨型 +UndeadClass=不死族 +MechanicalClass=机械类 +TaurenClass=牛头人族 diff --git a/share/mpq/units/units/unitmetadata.slk b/share/mpq/units/units/unitmetadata.slk new file mode 100644 index 0000000..8fbd18d --- /dev/null +++ b/share/mpq/units/units/unitmetadata.slk @@ -0,0 +1,4963 @@ +ID;PWXL;N;E +B;X23;Y268;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"category" +C;X6;K"displayName" +C;X7;K"sort" +C;X8;K"type" +C;X9;K"changeFlags" +C;X10;K"importType" +C;X11;K"stringExt" +C;X12;K"caseSens" +C;X13;K"canBeEmpty" +C;X14;K"minVal" +C;X15;K"maxVal" +C;X16;K"forceNonNeg" +C;X17;K"useHero" +C;X18;K"useUnit" +C;X19;K"useBuilding" +C;X20;K"useItem" +C;X21;K"useSpecific" +C;X22;K"version" +C;X23;K"section" +C;X1;Y2;K"iabi" +C;X2;K"abilList" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"abil" +C;X6;K"WESTRING_UEVAL_IABI" +C;X7;K"c6c00" +C;X8;K"abilityList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K4 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y3;K"iarm" +C;X2;K"armor" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_IARM" +C;X7;K"c5b03" +C;X8;K"armorType" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y4;K"icla" +C;X2;K"class" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ICLA" +C;X7;K"c1a03" +C;X8;K"itemClass" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y5;K"iclb" +C;X2;K"colorB" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ICLB" +C;X7;K"c1a04" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y6;K"iclg" +C;X2;K"colorG" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ICLG" +C;X7;K"c1a04" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y7;K"iclr" +C;X2;K"colorR" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ICLR" +C;X7;K"c1a04" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y8;K"icid" +C;X2;K"cooldownID" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ICID" +C;X7;K"c6c01" +C;X8;K"abilCode" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y9;K"idrp" +C;X2;K"drop" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IDRP" +C;X7;K"c9a06" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y10;K"idro" +C;X2;K"droppable" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IDRO" +C;X7;K"c9a05" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y11;K"ifil" +C;X2;K"file" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_IFIL" +C;X7;K"c1a01" +C;X8;K"model" +C;X9;K"m" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y12;K"igol" +C;X2;K"goldcost" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IGOL" +C;X7;K"c2a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y13;K"ihtp" +C;X2;K"HP" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IHTP" +C;X7;K"c3a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K500000 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y14;K"iicd" +C;X2;K"ignoreCD" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IICD" +C;X7;K"c5a000" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y15;K"ilev" +C;X2;K"Level" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ILEV" +C;X7;K"c1a04" +C;X8;K"int" +C;X9;K"c" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K8 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y16;K"ilum" +C;X2;K"lumbercost" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ILUM" +C;X7;K"c2a01" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y17;K"imor" +C;X2;K"morph" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IMOR" +C;X7;K"c9a07" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y18;K"ilvo" +C;X2;K"oldLevel" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ILVO" +C;X7;K"c1a04a" +C;X8;K"int" +C;X9;K"c" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y19;K"iper" +C;X2;K"perishable" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IPER" +C;X7;K"c9a04" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y20;K"iprn" +C;X2;K"pickRandom" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IPRN" +C;X7;K"c9a05" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y21;K"ipow" +C;X2;K"powerup" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IPOW" +C;X7;K"c9a06" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y22;K"ipri" +C;X2;K"prio" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IPRI" +C;X7;K"c4a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y23;K"isca" +C;X2;K"scale" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ISCA" +C;X7;K"c1a03" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0.1 +C;X15;K10 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y24;K"issc" +C;X2;K"selSize" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ISSC" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y25;K"isel" +C;X2;K"sellable" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ISEL" +C;X7;K"c6c02" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y26;K"ipaw" +C;X2;K"pawnable" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IPAW" +C;X7;K"c6c02a" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K1 +C;X1;Y27;K"isto" +C;X2;K"stockMax" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ISTO" +C;X7;K"c9a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y28;K"istr" +C;X2;K"stockRegen" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ISTR" +C;X7;K"c9a01" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y29;K"isst" +C;X2;K"stockStart" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ISST" +C;X7;K"c9a000" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y30;K"iusa" +C;X2;K"usable" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IUSA" +C;X7;K"c9a03" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y31;K"iuse" +C;X2;K"uses" +C;X3;K"ItemData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_IUSE" +C;X7;K"c9a02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y32;K"uani" +C;X2;K"animProps" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UANI" +C;X7;K"c1a010" +C;X8;K"stringList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y33;K"uico" +C;X2;K"Art" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UICO" +C;X7;K"c1a02" +C;X8;K"icon" +C;X9;K"i" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y34;K"iico" +C;X2;K"Art" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_IICO" +C;X7;K"c1a02" +C;X8;K"icon" +C;X9;K"i" +C;X10;K"Image" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K1 +C;X22;K0 +C;X1;Y35;K"uaap" +C;X2;K"Attachmentanimprops" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UAAP" +C;X7;K"c1a010a" +C;X8;K"stringList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y36;K"ualp" +C;X2;K"Attachmentlinkprops" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UALP" +C;X7;K"c1a010b" +C;X8;K"stringList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y37;K"uawt" +C;X2;K"Awakentip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UAWT" +C;X7;K"d0a02a" +C;X8;K"string" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y38;K"ubpr" +C;X2;K"Boneprops" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UBPR" +C;X7;K"c1a010c" +C;X8;K"stringList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y39;K"ubsl" +C;X2;K"BuildingSoundLabel" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_UBSL" +C;X7;K"d8b00" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y40;K"ubui" +C;X2;K"Builds" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UBUI" +C;X7;K"c5a010" +C;X8;K"unitList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y41;K"ubpx" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UBPX" +C;X7;K"c2a03x" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K1 +C;X1;Y42;K"ubpy" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UBPY" +C;X7;K"c2a03y" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K2 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K1 +C;X1;Y43;K"ucua" +C;X2;K"Casterupgradeart" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCUA" +C;X7;K"c6c03" +C;X8;K"icon" +C;X10;K"Image" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y44;K"ucun" +C;X2;K"Casterupgradename" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UCUN" +C;X7;K"c6c01" +C;X8;K"stringList" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y45;K"ucut" +C;X2;K"Casterupgradetip" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UCUT" +C;X7;K"c6c02" +C;X8;K"stringList" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K0 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y46;K"udep" +C;X2;K"DependencyOr" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UDEP" +C;X7;K"c5a00a" +C;X8;K"unitList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y47;K"ides" +C;X2;K"Description" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_IDES" +C;X7;K"d0a05" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y48;K"unsf" +C;X2;K"EditorSuffix" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UNSF" +C;X7;K"c1a000" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K50 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y49;K"uhot" +C;X2;K"Hotkey" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UHOT" +C;X7;K"d0a01" +C;X8;K"char" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y50;K"ulfi" +C;X2;K"LoopingSoundFadeIn" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_ULFI" +C;X7;K"d8b03" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K12700 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y51;K"ulfo" +C;X2;K"LoopingSoundFadeOut" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_ULFO" +C;X7;K"d8b04" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K0 +C;X15;K12700 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y52;K"umki" +C;X2;K"Makeitems" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UMKI" +C;X7;K"c5a05a" +C;X8;K"itemList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X15;K12 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y53;K"uma1" +C;X2;K"Missilearc" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UMA1" +C;X7;K"c6a06a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y54;K"uma2" +C;X2;K"Missilearc" +C;X3;K"Profile" +C;X4;K1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UMA2" +C;X7;K"c6b06a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y55;K"ua1m" +C;X2;K"Missileart" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1M" +C;X7;K"c6a05" +C;X8;K"model" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y56;K"ua2m" +C;X2;K"Missileart" +C;X3;K"Profile" +C;X4;K1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2M" +C;X7;K"c6b05" +C;X8;K"model" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y57;K"umh1" +C;X2;K"MissileHoming" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UMH1" +C;X7;K"c6a06b" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y58;K"umh2" +C;X2;K"MissileHoming" +C;X3;K"Profile" +C;X4;K1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UMH2" +C;X7;K"c6b06b" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y59;K"ua1z" +C;X2;K"Missilespeed" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1Z" +C;X7;K"c6a06" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y60;K"ua2z" +C;X2;K"Missilespeed" +C;X3;K"Profile" +C;X4;K1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2Z" +C;X7;K"c6b06" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y61;K"umsl" +C;X2;K"MovementSoundLabel" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_UMSL" +C;X7;K"d8b01" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y62;K"unam" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UNAM" +C;X7;K"c1a00" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTName" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y63;K"upro" +C;X2;K"Propernames" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UPRO" +C;X7;K"c1a001" +C;X8;K"stringList" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y64;K"ursl" +C;X2;K"RandomSoundLabel" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_URSL" +C;X7;K"d8b02" +C;X8;K"soundLabel" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y65;K"urqc" +C;X2;K"Requirescount" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQC" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X15;K9 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y66;K"ureq" +C;X2;K"Requires" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UREQ" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y67;K"urq1" +C;X2;K"Requires1" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ1" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y68;K"urq2" +C;X2;K"Requires2" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ2" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y69;K"urq3" +C;X2;K"Requires3" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ3" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y70;K"urq4" +C;X2;K"Requires4" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ4" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y71;K"urq5" +C;X2;K"Requires5" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ5" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y72;K"urq6" +C;X2;K"Requires6" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ6" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y73;K"urq7" +C;X2;K"Requires7" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ7" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y74;K"urq8" +C;X2;K"Requires8" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQ8" +C;X7;K"c5a00" +C;X8;K"techList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y75;K"urqa" +C;X2;K"Requiresamount" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URQA" +C;X7;K"c5a00a" +C;X8;K"intList" +C;X9;K"s" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K1 +C;X1;Y76;K"ures" +C;X2;K"Researches" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URES" +C;X7;K"c5a03" +C;X8;K"upgradeList" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y77;K"urev" +C;X2;K"Revive" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UREV" +C;X7;K"c5a000" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y78;K"utpr" +C;X2;K"Revivetip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UTPR" +C;X7;K"d0a02" +C;X8;K"string" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y79;K"ussi" +C;X2;K"ScoreScreenIcon" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USSI" +C;X7;K"c1a02a" +C;X8;K"icon" +C;X10;K"Image" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y80;K"usei" +C;X2;K"Sellitems" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_USEI" +C;X7;K"c5a05" +C;X8;K"itemList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K12 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y81;K"useu" +C;X2;K"Sellunits" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_USEU" +C;X7;K"c5a04" +C;X8;K"unitList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K12 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y82;K"uspa" +C;X2;K"Specialart" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USPA" +C;X7;K"d9b00" +C;X8;K"modelList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y83;K"utaa" +C;X2;K"Targetart" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UTAA" +C;X7;K"d9b01" +C;X8;K"modelList" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y84;K"utip" +C;X2;K"Tip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UTIP" +C;X7;K"d0a00" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTDesc" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y85;K"utra" +C;X2;K"Trains" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UTRA" +C;X7;K"c5a01" +C;X8;K"unitList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y86;K"urva" +C;X2;K"Reviveat" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_URVA" +C;X7;K"c5a01" +C;X8;K"unitList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y87;K"utub" +C;X2;K"Ubertip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UTUB" +C;X7;K"d0a03" +C;X8;K"string" +C;X9;K"t" +C;X11;K1 +C;X12;K1 +C;X13;K1 +C;X15;K"TTUber" +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K1 +C;X22;K0 +C;X1;Y88;K"uupt" +C;X2;K"Upgrade" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UUPT" +C;X7;K"c5a000" +C;X8;K"unitList" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X15;K12 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y89;K"uabi" +C;X2;K"abilList" +C;X3;K"UnitAbilities" +C;X4;K-1 +C;X5;K"abil" +C;X6;K"WESTRING_UEVAL_UABI" +C;X7;K"c6c00" +C;X8;K"abilityList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y90;K"udaa" +C;X2;K"auto" +C;X3;K"UnitAbilities" +C;X4;K-1 +C;X5;K"abil" +C;X6;K"WESTRING_UEVAL_UDAA" +C;X7;K"c6c01" +C;X8;K"abilCode" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y91;K"uhab" +C;X2;K"heroAbilList" +C;X3;K"UnitAbilities" +C;X4;K-1 +C;X5;K"abil" +C;X6;K"WESTRING_UEVAL_UHAB" +C;X7;K"c6c00" +C;X8;K"heroAbilityList" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X15;K5 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y92;K"uagi" +C;X2;K"AGI" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UAGI" +C;X7;K"c3a05" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y93;K"uagp" +C;X2;K"AGIplus" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UAGP" +C;X7;K"c3a06" +C;X8;K"unreal" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y94;K"ubld" +C;X2;K"bldtm" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UBLD" +C;X7;K"c2a06" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y95;K"ubdi" +C;X2;K"bountydice" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UBDI" +C;X7;K"c8a08" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y96;K"ubba" +C;X2;K"bountyplus" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UBBA" +C;X7;K"c8a07" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y97;K"ubsi" +C;X2;K"bountysides" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UBSI" +C;X7;K"c8a09" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y98;K"ulbd" +C;X2;K"lumberbountydice" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULBD" +C;X7;K"c8a10" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y99;K"ulba" +C;X2;K"lumberbountyplus" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULBA" +C;X7;K"c8a11" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y100;K"ulbs" +C;X2;K"lumberbountysides" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULBS" +C;X7;K"c8a12" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y101;K"ucol" +C;X2;K"collision" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UCOL" +C;X7;K"c1a07" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1024 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y102;K"udef" +C;X2;K"def" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDEF" +C;X7;K"c5b00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y103;K"udty" +C;X2;K"defType" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDTY" +C;X7;K"c5b02" +C;X8;K"defenseType" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y104;K"udup" +C;X2;K"defUp" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDUP" +C;X7;K"c5b01" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y105;K"ufma" +C;X2;K"fmade" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UFMA" +C;X7;K"c2a030" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K300 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y106;K"ufoo" +C;X2;K"fused" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UFOO" +C;X7;K"c2a03" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K300 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y107;K"ugol" +C;X2;K"goldcost" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UGOL" +C;X7;K"c2a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y108;K"ugor" +C;X2;K"goldRep" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UGOR" +C;X7;K"c2a02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y109;K"uhpm" +C;X2;K"HP" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHPM" +C;X7;K"c4a00" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K500000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y110;K"uint" +C;X2;K"INT" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UINT" +C;X7;K"c3a03" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y111;K"uinp" +C;X2;K"INTplus" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UINP" +C;X7;K"c3a04" +C;X8;K"unreal" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y112;K"ubdg" +C;X2;K"isbldg" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UBDG" +C;X7;K"c1a001a" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y113;K"ulev" +C;X2;K"level" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULEV" +C;X7;K"c8a04" +C;X8;K"int" +C;X9;K"c" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y114;K"ulum" +C;X2;K"lumbercost" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULUM" +C;X7;K"c2a01" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y115;K"ulur" +C;X2;K"lumberRep" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_ULUR" +C;X7;K"c2a02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y116;K"umpi" +C;X2;K"mana0" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UMPI" +C;X7;K"c4a05" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y117;K"umpm" +C;X2;K"manaN" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UMPM" +C;X7;K"c4a03" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y118;K"umas" +C;X2;K"maxSpd" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMAS" +C;X7;K"c7a03b" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K522 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y119;K"umis" +C;X2;K"minSpd" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMIS" +C;X7;K"c7a03a" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K522 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y120;K"unbr" +C;X2;K"nbrandom" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UNBR" +C;X7;K"c1c00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y121;K"usin" +C;X2;K"nsight" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USIN" +C;X7;K"c8a02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1800 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y122;K"upap" +C;X2;K"preventPlace" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UPAP" +C;X7;K"c1a09a" +C;X8;K"pathingListPrevent" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y123;K"upra" +C;X2;K"Primary" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UPRA" +C;X7;K"c3a00" +C;X8;K"attributeType" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y124;K"uhpr" +C;X2;K"regenHP" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHPR" +C;X7;K"c4a01" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y125;K"umpr" +C;X2;K"regenMana" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UMPR" +C;X7;K"c4a04" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y126;K"uhrt" +C;X2;K"regenType" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHRT" +C;X7;K"c4a02" +C;X8;K"regenType" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y127;K"urtm" +C;X2;K"reptm" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_URTM" +C;X7;K"c2a07" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y128;K"urpo" +C;X2;K"repulse" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_URPO" +C;X7;K"d7b00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y129;K"urpg" +C;X2;K"repulseGroup" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_URPG" +C;X7;K"d7b02" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1024 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y130;K"urpp" +C;X2;K"repulseParam" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_URPP" +C;X7;K"d7b01" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K4 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y131;K"urpr" +C;X2;K"repulsePrio" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_URPR" +C;X7;K"d7b03" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y132;K"upar" +C;X2;K"requirePlace" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UPAR" +C;X7;K"c1a09b" +C;X8;K"pathingListRequire" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y133;K"usid" +C;X2;K"sight" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USID" +C;X7;K"c8a01" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1800 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y134;K"umvs" +C;X2;K"spd" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMVS" +C;X7;K"c7a03" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K522 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y135;K"usma" +C;X2;K"stockMax" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USMA" +C;X7;K"c9a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K32 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y136;K"usrg" +C;X2;K"stockRegen" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USRG" +C;X7;K"c9a01" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y137;K"usst" +C;X2;K"stockStart" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USST" +C;X7;K"c9a000" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y138;K"ustr" +C;X2;K"STR" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USTR" +C;X7;K"c3a01" +C;X8;K"int" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y139;K"ustp" +C;X2;K"STRplus" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USTP" +C;X7;K"c3a02" +C;X8;K"unreal" +C;X9;K"s" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y140;K"util" +C;X2;K"tilesets" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UTIL" +C;X7;K"c1a06c" +C;X8;K"tilesetList" +C;X9;K"c" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y141;K"utyp" +C;X2;K"type" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UTYP" +C;X7;K"c2a04" +C;X8;K"unitClass" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y142;K"upgr" +C;X2;K"upgrades" +C;X3;K"UnitBalance" +C;X4;K-1 +C;X5;K"tech" +C;X6;K"WESTRING_UEVAL_UPGR" +C;X7;K"c5a02" +C;X8;K"upgradeList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y143;K"uabr" +C;X2;K"buffRadius" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UABR" +C;X7;K"d4b01" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K24 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y144;K"uabt" +C;X2;K"buffType" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UABT" +C;X7;K"d4b00" +C;X8;K"aiBuffer" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y145;K"ucbo" +C;X2;K"canBuildOn" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UCBO" +C;X7;K"c7a07" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y146;K"ufle" +C;X2;K"canFlee" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UFLE" +C;X7;K"c8a031" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y147;K"usle" +C;X2;K"canSleep" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_USLE" +C;X7;K"c8a030" +C;X8;K"bool" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y148;K"ucar" +C;X2;K"cargoSize" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UCAR" +C;X7;K"c8a03" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K8 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y149;K"udtm" +C;X2;K"death" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UDTM" +C;X7;K"c1b10" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0.1 +C;X15;K20 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y150;K"udea" +C;X2;K"deathType" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDEA" +C;X7;K"c1b09" +C;X8;K"deathType" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y151;K"ulos" +C;X2;K"fatLOS" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ULOS" +C;X7;K"d3b00" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y152;K"ufor" +C;X2;K"formation" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UFOR" +C;X7;K"c7a05" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K9 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K0 +C;X20;K0 +C;X22;K0 +C;X1;Y153;K"uibo" +C;X2;K"isBuildOn" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UIBO" +C;X7;K"c7a06" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y154;K"umvf" +C;X2;K"moveFloor" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMVF" +C;X7;K"c7a02a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y155;K"umvh" +C;X2;K"moveHeight" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMVH" +C;X7;K"c7a02" +C;X8;K"unreal" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y156;K"umvt" +C;X2;K"movetp" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMVT" +C;X7;K"c7a01" +C;X8;K"moveType" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y157;K"upru" +C;X2;K"nameCount" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"text" +C;X6;K"WESTRING_UEVAL_UPRU" +C;X7;K"c1a001a" +C;X8;K"int" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y158;K"uori" +C;X2;K"orientInterp" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UORI" +C;X7;K"c7a04b" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K8 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y159;K"upat" +C;X2;K"pathTex" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UPAT" +C;X7;K"c1a09" +C;X8;K"pathingTexture" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y160;K"upoi" +C;X2;K"points" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UPOI" +C;X7;K"c8a05" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y161;K"upri" +C;X2;K"prio" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UPRI" +C;X7;K"c8a06" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y162;K"uprw" +C;X2;K"propWin" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UPRW" +C;X7;K"c7a04a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K1 +C;X15;K180 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y163;K"urac" +C;X2;K"race" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_URAC" +C;X7;K"c1a001" +C;X8;K"unitRace" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y164;K"upaw" +C;X2;K"requireWaterRadius" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"path" +C;X6;K"WESTRING_UEVAL_UPAW" +C;X7;K"c1a09c" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y165;K"utar" +C;X2;K"targType" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UTAR" +C;X7;K"c7a00" +C;X8;K"targetList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y166;K"umvr" +C;X2;K"turnRate" +C;X3;K"UnitData" +C;X4;K-1 +C;X5;K"move" +C;X6;K"WESTRING_UEVAL_UMVR" +C;X7;K"c7a04" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0.1 +C;X15;K3 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y167;K"uarm" +C;X2;K"armor" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UARM" +C;X7;K"c5b03" +C;X8;K"armorType" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y168;K"uble" +C;X2;K"blend" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UBLE" +C;X7;K"c7a04c" +C;X8;K"real" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y169;K"uclb" +C;X2;K"blue" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCLB" +C;X7;K"c1a06" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y170;K"ushb" +C;X2;K"buildingShadow" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHB" +C;X7;K"c1a10a" +C;X8;K"shadowTexture" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y171;K"ucam" +C;X2;K"campaign" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UCAM" +C;X7;K"c1a06f" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y172;K"utcc" +C;X2;K"customTeamColor" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UTCC" +C;X7;K"c1a06b" +C;X8;K"bool" +C;X9;K"s" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y173;K"udro" +C;X2;K"dropItems" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UDRO" +C;X7;K"c1a06g" +C;X8;K"bool" +C;X9;K"s" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y174;K"uept" +C;X2;K"elevPts" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UEPT" +C;X7;K"d5c00" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K4 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y175;K"uerd" +C;X2;K"elevRad" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UERD" +C;X7;K"d5c01" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y176;K"umdl" +C;X2;K"file" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UMDL" +C;X7;K"c1a01" +C;X8;K"model" +C;X9;K"m" +C;X10;K"Model" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y177;K"uver" +C;X2;K"fileVerFlags" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UVER" +C;X7;K"c1a01a" +C;X8;K"versionFlags" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K3 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y178;K"ufrd" +C;X2;K"fogRad" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UFRD" +C;X7;K"d5c02" +C;X8;K"real" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y179;K"uclg" +C;X2;K"green" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCLG" +C;X7;K"c1a05" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y180;K"uhos" +C;X2;K"hostilePal" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UHOS" +C;X7;K"c8a10" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y181;K"uine" +C;X2;K"inEditor" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UINE" +C;X7;K"c1a06d0" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y182;K"umxp" +C;X2;K"maxPitch" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UMXP" +C;X7;K"d5b00" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K180 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y183;K"umxr" +C;X2;K"maxRoll" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UMXR" +C;X7;K"d5b01" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K180 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y184;K"usca" +C;X2;K"modelScale" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USCA" +C;X7;K"c1a03" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0.1 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y185;K"unbm" +C;X2;K"nbmmIcon" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UNBM" +C;X7;K"c1c01" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y186;K"uhhb" +C;X2;K"hideHeroBar" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHHB" +C;X7;K"c1c01" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y187;K"uhhm" +C;X2;K"hideHeroMinimap" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHHM" +C;X7;K"c1c01" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y188;K"uhhd" +C;X2;K"hideHeroDeathMsg" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHHD" +C;X7;K"c1c01" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X22;K1 +C;X1;Y189;K"uhom" +C;X2;K"hideOnMinimap" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"stats" +C;X6;K"WESTRING_UEVAL_UHOM" +C;X7;K"c1c01" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y190;K"uocc" +C;X2;K"occH" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UOCC" +C;X7;K"d6c03" +C;X8;K"unreal" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y191;K"uclr" +C;X2;K"red" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCLR" +C;X7;K"c1a04" +C;X8;K"int" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K255 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y192;K"urun" +C;X2;K"run" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_URUN" +C;X7;K"d6c01" +C;X8;K"real" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y193;K"ussc" +C;X2;K"scale" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USSC" +C;X7;K"c1a08" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0.1 +C;X15;K20 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y194;K"uscb" +C;X2;K"scaleBull" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USCB" +C;X7;K"c1a08a" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y195;K"usew" +C;X2;K"selCircOnWater" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USEW" +C;X7;K"c1a12" +C;X8;K"bool" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y196;K"uslz" +C;X2;K"selZ" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USLZ" +C;X7;K"d6c02" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y197;K"ushh" +C;X2;K"shadowH" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHH" +C;X7;K"c1a11b" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y198;K"ushr" +C;X2;K"shadowOnWater" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHR" +C;X7;K"c1a11e" +C;X8;K"bool" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y199;K"ushw" +C;X2;K"shadowW" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHW" +C;X7;K"c1a11a" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y200;K"ushx" +C;X2;K"shadowX" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHX" +C;X7;K"c1a11c" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y201;K"ushy" +C;X2;K"shadowY" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHY" +C;X7;K"c1a11d" +C;X8;K"real" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2048 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y202;K"uspe" +C;X2;K"special" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_USPE" +C;X7;K"c1a06e" +C;X8;K"bool" +C;X9;K"c" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y203;K"utco" +C;X2;K"teamColor" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UTCO" +C;X7;K"c1a06a" +C;X8;K"teamColor" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y204;K"utss" +C;X2;K"tilesetSpecific" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UTSS" +C;X7;K"c1a06d" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y205;K"uubs" +C;X2;K"uberSplat" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UUBS" +C;X7;K"c1a10" +C;X8;K"uberSplat" +C;X9;K"m" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y206;K"ushu" +C;X2;K"unitShadow" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_USHU" +C;X7;K"c1a11" +C;X8;K"shadowImage" +C;X9;K"m" +C;X10;K"Image" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y207;K"usnd" +C;X2;K"unitSound" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"sound" +C;X6;K"WESTRING_UEVAL_USND" +C;X7;K"c1a10" +C;X8;K"unitSound" +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y208;K"uuch" +C;X2;K"useClickHelper" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"editor" +C;X6;K"WESTRING_UEVAL_UUCH" +C;X7;K"c1c02" +C;X8;K"bool" +C;X9;K"m" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y209;K"uwal" +C;X2;K"walk" +C;X3;K"UnitUI" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UWAL" +C;X7;K"d6c00" +C;X8;K"real" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K2000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y210;K"uacq" +C;X2;K"acquire" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UACQ" +C;X7;K"c8a00" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y211;K"ua1t" +C;X2;K"atkType1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1T" +C;X7;K"c6a03" +C;X8;K"attackType" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y212;K"ua2t" +C;X2;K"atkType2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2T" +C;X7;K"c6b03" +C;X8;K"attackType" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y213;K"ubs1" +C;X2;K"backSw1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UBS1" +C;X7;K"c6a08a" +C;X8;K"unreal" +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y214;K"ubs2" +C;X2;K"backSw2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UBS2" +C;X7;K"c6b08a" +C;X8;K"unreal" +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y215;K"ucbs" +C;X2;K"castbsw" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCBS" +C;X7;K"d2b01" +C;X8;K"unreal" +C;X11;K3 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y216;K"ucpt" +C;X2;K"castpt" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UCPT" +C;X7;K"d2b00" +C;X8;K"unreal" +C;X11;K3 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y217;K"ua1c" +C;X2;K"cool1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1C" +C;X7;K"c6a08" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y218;K"ua2c" +C;X2;K"cool2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2C" +C;X7;K"c6b08" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K3600 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y219;K"udl1" +C;X2;K"damageLoss1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDL1" +C;X7;K"c6a12a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y220;K"udl2" +C;X2;K"damageLoss2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDL2" +C;X7;K"c6b12a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y221;K"ua1d" +C;X2;K"dice1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1D" +C;X7;K"c6a071" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y222;K"ua2d" +C;X2;K"dice2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2D" +C;X7;K"c6b071" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y223;K"ua1b" +C;X2;K"dmgplus1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1B" +C;X7;K"c6a070" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K500000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y224;K"ua2b" +C;X2;K"dmgplus2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2B" +C;X7;K"c6b070" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K500000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y225;K"udp1" +C;X2;K"dmgpt1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDP1" +C;X7;K"c6a08" +C;X8;K"unreal" +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y226;K"udp2" +C;X2;K"dmgpt2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDP2" +C;X7;K"c6b08" +C;X8;K"unreal" +C;X11;K3 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y227;K"udu1" +C;X2;K"dmgUp1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDU1" +C;X7;K"c6a073" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y228;K"udu2" +C;X2;K"dmgUp2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UDU2" +C;X7;K"c6b073" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y229;K"ua1f" +C;X2;K"Farea1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1F" +C;X7;K"c6a09" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y230;K"ua2f" +C;X2;K"Farea2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2F" +C;X7;K"c6b09" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y231;K"ua1h" +C;X2;K"Harea1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1H" +C;X7;K"c6a10" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y232;K"ua2h" +C;X2;K"Harea2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2H" +C;X7;K"c6b10" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y233;K"uhd1" +C;X2;K"Hfact1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UHD1" +C;X7;K"c6a10a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y234;K"uhd2" +C;X2;K"Hfact2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UHD2" +C;X7;K"c6b10a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y235;K"uisz" +C;X2;K"impactSwimZ" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UISZ" +C;X7;K"c5a04a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y236;K"uimz" +C;X2;K"impactZ" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_UIMZ" +C;X7;K"c5a04" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y237;K"ulsz" +C;X2;K"launchSwimZ" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ULSZ" +C;X7;K"c5a03d" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y238;K"ulpx" +C;X2;K"launchX" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ULPX" +C;X7;K"c5a03a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y239;K"ulpy" +C;X2;K"launchY" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ULPY" +C;X7;K"c5a03b" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y240;K"ulpz" +C;X2;K"launchZ" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"art" +C;X6;K"WESTRING_UEVAL_ULPZ" +C;X7;K"c5a03c" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K-1000 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y241;K"uamn" +C;X2;K"minRange" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UAMN" +C;X7;K"c6a00" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y242;K"ua1q" +C;X2;K"Qarea1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1Q" +C;X7;K"c6a11" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y243;K"ua2q" +C;X2;K"Qarea2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2Q" +C;X7;K"c6b11" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K1000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y244;K"uqd1" +C;X2;K"Qfact1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UQD1" +C;X7;K"c6a11a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y245;K"uqd2" +C;X2;K"Qfact2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UQD2" +C;X7;K"c6b11a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y246;K"ua1r" +C;X2;K"rangeN1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1R" +C;X7;K"c6a02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y247;K"ua2r" +C;X2;K"rangeN2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2R" +C;X7;K"c6b02" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K20000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y248;K"urb1" +C;X2;K"RngBuff1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_URB1" +C;X7;K"c6a02a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K2000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y249;K"urb2" +C;X2;K"RngBuff2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_URB2" +C;X7;K"c6b02a" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K2000 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y250;K"uwu1" +C;X2;K"showUI1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UWU1" +C;X7;K"c6a01a" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y251;K"uwu2" +C;X2;K"showUI2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UWU2" +C;X7;K"c6b01a" +C;X8;K"bool" +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y252;K"ua1s" +C;X2;K"sides1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1S" +C;X7;K"c6a072" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y253;K"ua2s" +C;X2;K"sides2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2S" +C;X7;K"c6b072" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y254;K"usd1" +C;X2;K"spillDist1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_USD1" +C;X7;K"c6a12b" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y255;K"usd2" +C;X2;K"spillDist2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_USD2" +C;X7;K"c6b12b" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y256;K"usr1" +C;X2;K"spillRadius1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_USR1" +C;X7;K"c6a12c" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y257;K"usr2" +C;X2;K"spillRadius2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_USR2" +C;X7;K"c6b12c" +C;X8;K"unreal" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K10000 +C;X16;K1 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y258;K"ua1p" +C;X2;K"splashTargs1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1P" +C;X7;K"c6a12" +C;X8;K"targetList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y259;K"ua2p" +C;X2;K"splashTargs2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2P" +C;X7;K"c6b12" +C;X8;K"targetList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y260;K"utc1" +C;X2;K"targCount1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UTC1" +C;X7;K"c6a7a" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y261;K"utc2" +C;X2;K"targCount2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UTC2" +C;X7;K"c6b7a" +C;X8;K"int" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X14;K0 +C;X15;K100 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y262;K"ua1g" +C;X2;K"targs1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1G" +C;X7;K"c6a07" +C;X8;K"targetList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y263;K"ua2g" +C;X2;K"targs2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2G" +C;X7;K"c6b07" +C;X8;K"targetList" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y264;K"uaen" +C;X2;K"weapsOn" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UAEN" +C;X7;K"c6a01" +C;X8;K"attackBits" +C;X11;K0 +C;X12;K1 +C;X13;K0 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y265;K"ua1w" +C;X2;K"weapTp1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA1W" +C;X7;K"c6a04" +C;X8;K"weaponType" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y266;K"ua2w" +C;X2;K"weapTp2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UA2W" +C;X7;K"c6b04" +C;X8;K"weaponType" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K0 +C;X1;Y267;K"ucs1" +C;X2;K"weapType1" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UCS1" +C;X7;K"c6a04a" +C;X8;K"combatSound" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +C;X1;Y268;K"ucs2" +C;X2;K"weapType2" +C;X3;K"UnitWeapons" +C;X4;K-1 +C;X5;K"combat" +C;X6;K"WESTRING_UEVAL_UCS2" +C;X7;K"c6b04a" +C;X8;K"combatSound" +C;X11;K0 +C;X12;K1 +C;X13;K1 +C;X16;K0 +C;X17;K1 +C;X18;K1 +C;X19;K1 +C;X20;K0 +C;X22;K1 +E diff --git a/share/mpq/units/units/unitui.slk b/share/mpq/units/units/unitui.slk new file mode 100644 index 0000000..e152bdb --- /dev/null +++ b/share/mpq/units/units/unitui.slk @@ -0,0 +1,41644 @@ +ID;PWXL;N;E +B;X51;Y837;D0 +C;X1;Y1;K"unitUIID" +C;X2;K"sortUI" +C;X3;K"file" +C;X4;K"fileVerFlags" +C;X5;K"unitSound" +C;X6;K"tilesetSpecific" +C;X7;K"name" +C;X8;K"unitClass" +C;X9;K"special" +C;X10;K"campaign" +C;X11;K"inEditor" +C;X12;K"hiddenInEditor" +C;X13;K"hostilePal" +C;X14;K"dropItems" +C;X15;K"nbmmIcon" +C;X16;K"useClickHelper" +C;X17;K"hideHeroBar" +C;X18;K"hideHeroMinimap" +C;X19;K"hideHeroDeathMsg" +C;X20;K"hideOnMinimap" +C;X21;K"blend" +C;X22;K"scale" +C;X23;K"scaleBull" +C;X24;K"maxPitch" +C;X25;K"maxRoll" +C;X26;K"elevPts" +C;X27;K"elevRad" +C;X28;K"fogRad" +C;X29;K"walk" +C;X30;K"run" +C;X31;K"selZ" +C;X32;K"weap1" +C;X33;K"weap2" +C;X34;K"teamColor" +C;X35;K"customTeamColor" +C;X36;K"armor" +C;X37;K"modelScale" +C;X38;K"red" +C;X39;K"green" +C;X40;K"blue" +C;X41;K"uberSplat" +C;X42;K"unitShadow" +C;X43;K"buildingShadow" +C;X44;K"shadowW" +C;X45;K"shadowH" +C;X46;K"shadowX" +C;X47;K"shadowY" +C;X48;K"shadowOnWater" +C;X49;K"selCircOnWater" +C;X50;K"occH" +C;X51;K"InBeta" +C;X1;Y2;K"Hamg" +C;X2;K"a1" +C;X3;K"units\human\HeroArchMage\HeroArchMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"archmage" +C;X8;K"HHero02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y3;K"Hblm" +C;X2;K"a1" +C;X3;K"units\human\HeroBloodElf\HeroBloodElf" +C;X4;K0 +C;X5;K"BloodElfSorceror" +C;X6;K0 +C;X7;K"bloodmage" +C;X8;K"HHero04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K65 +C;X47;K65 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y4;K"Hmkg" +C;X2;K"a1" +C;X3;K"units\human\HeroMountainKing\HeroMountainKing" +C;X4;K0 +C;X5;K"HeroMountainKing" +C;X6;K0 +C;X7;K"mountainking" +C;X8;K"HHero03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K150 +C;X45;K150 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y5;K"Hpal" +C;X2;K"a1" +C;X3;K"units\human\HeroPaladin\HeroPaladin" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"paladin" +C;X8;K"HHero01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K65 +C;X47;K65 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y6;K"hbot" +C;X2;K"a2" +C;X3;K"units\creeps\HumanTransportShip\HumanTransportShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"humantransportship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y7;K"hbsh" +C;X2;K"a2" +C;X3;K"units\creeps\HumanBattleship\HumanBattleship" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"humanbattleship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K400 +C;X45;K400 +C;X46;K180 +C;X47;K180 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y8;K"hdes" +C;X2;K"a2" +C;X3;K"units\creeps\HumanDestroyerShip\HumanDestroyerShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"humandestroyer" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y9;K"hdhw" +C;X2;K"a2" +C;X3;K"units\human\BloodElfDragonHawk\BloodElfDragonHawk" +C;X4;K0 +C;X5;K"BloodElfDragonHawk" +C;X6;K0 +C;X7;K"dragonhawk" +C;X8;K"HUnit15" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y10;K"hfoo" +C;X2;K"a2" +C;X3;K"units\human\Footman\Footman" +C;X4;K0 +C;X5;K"Footman" +C;X6;K0 +C;X7;K"footman" +C;X8;K"HUnit02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y11;K"hgry" +C;X2;K"a2" +C;X3;K"units\human\GryphonRider\GryphonRider" +C;X4;K0 +C;X5;K"GryphonRider" +C;X6;K0 +C;X7;K"gryphonrider" +C;X8;K"HUnit08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y12;K"hgyr" +C;X2;K"a2" +C;X3;K"units\human\Gyrocopter\Gyrocopter" +C;X4;K2 +C;X5;K"Gyrocopter" +C;X6;K0 +C;X7;K"flyingmachine" +C;X8;K"HUnit07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y13;K"hkni" +C;X2;K"a2" +C;X3;K"units\human\Knight\Knight" +C;X4;K0 +C;X5;K"Knight" +C;X6;K0 +C;X7;K"knight" +C;X8;K"HUnit03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y14;K"hmil" +C;X2;K"a2" +C;X3;K"units\human\Militia\Militia" +C;X4;K0 +C;X5;K"Peasant" +C;X6;K0 +C;X7;K"militia" +C;X8;K"HUnit13" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y15;K"hmpr" +C;X2;K"a2" +C;X3;K"units\human\Priest\Priest" +C;X4;K2 +C;X5;K"Priest" +C;X6;K0 +C;X7;K"priest" +C;X8;K"HUnit09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y16;K"hmtm" +C;X2;K"a2" +C;X3;K"units\human\MortarTeam\MortarTeam" +C;X4;K0 +C;X5;K"MortarTeam" +C;X6;K0 +C;X7;K"mortarteam" +C;X8;K"HUnit05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y17;K"hmtt" +C;X2;K"a2" +C;X3;K"units\human\WarWagon\WarWagon" +C;X4;K2 +C;X5;K"SteamTank" +C;X6;K0 +C;X7;K"siegeengine" +C;X8;K"HUnit11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K3 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y18;K"hpea" +C;X2;K"a2" +C;X3;K"units\human\Peasant\Peasant" +C;X4;K0 +C;X5;K"Peasant" +C;X6;K0 +C;X7;K"peasant" +C;X8;K"HUnit01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y19;K"hphx" +C;X2;K"a2" +C;X3;K"units\human\phoenix\phoenix" +C;X4;K0 +C;X5;K"Phoenix" +C;X6;K0 +C;X7;K"phoenix" +C;X8;K"HUnit21" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y20;K"hpxe" +C;X2;K"a2" +C;X3;K"units\human\phoenix\phoenix" +C;X4;K0 +C;X5;K"PhoenixEgg" +C;X6;K0 +C;X7;K"phoenixegg" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y21;K"hrif" +C;X2;K"a2" +C;X3;K"units\human\Rifleman\Rifleman" +C;X4;K0 +C;X5;K"Rifleman" +C;X6;K0 +C;X7;K"rifleman" +C;X8;K"HUnit04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y22;K"hrtt" +C;X2;K"a2" +C;X3;K"units\human\WarWagon\WarWagon" +C;X4;K2 +C;X5;K"SteamTank" +C;X6;K0 +C;X7;K"rocketengine" +C;X8;K"HUnit12" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K3 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y23;K"hsor" +C;X2;K"a2" +C;X3;K"units\human\Sorceress\Sorceress" +C;X4;K2 +C;X5;K"Sorceress" +C;X6;K0 +C;X7;K"sorceress" +C;X8;K"HUnit10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y24;K"hspt" +C;X2;K"a2" +C;X3;K"units\human\BloodElfSpellThief\BloodElfSpellThief" +C;X4;K0 +C;X5;K"SpellBreaker" +C;X6;K0 +C;X7;K"spellbreaker" +C;X8;K"HUnit14" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y25;K"hwat" +C;X2;K"a2" +C;X3;K"units\human\WaterElemental\WaterElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"waterelemental1" +C;X8;K"HUnit16" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y26;K"hwt2" +C;X2;K"a2" +C;X3;K"units\human\WaterElemental\WaterElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"waterelemental2" +C;X8;K"HUnit17" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K192 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y27;K"hwt3" +C;X2;K"a2" +C;X3;K"units\human\WaterElemental\WaterElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"waterelemental3" +C;X8;K"HUnit18" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K192 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y28;K"halt" +C;X2;K"a3" +C;X3;K"buildings\human\AltarofKings\AltarofKings" +C;X4;K0 +C;X5;K"AltarofKings" +C;X6;K0 +C;X7;K"altarofkings" +C;X8;K"HBuilding05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowAltarofKings" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y29;K"harm" +C;X2;K"a3" +C;X3;K"buildings\human\Workshop\Workshop" +C;X4;K0 +C;X5;K"Workshop" +C;X6;K0 +C;X7;K"workshop" +C;X8;K"HBuilding09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowArmory" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y30;K"hars" +C;X2;K"a3" +C;X3;K"buildings\human\ArcaneSanctum\ArcaneSanctum" +C;X4;K0 +C;X5;K"ArcaneSanctum" +C;X6;K0 +C;X7;K"arcanesanctum" +C;X8;K"HBuilding10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.75 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowArcaneSanctum" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y31;K"hatw" +C;X2;K"a3" +C;X3;K"buildings\human\HumanTower\HumanTower" +C;X4;K0 +C;X5;K"ArcaneTower" +C;X6;K0 +C;X7;K"humanarcanetower" +C;X8;K"HBuilding15" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowGuardTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y32;K"hbar" +C;X2;K"a3" +C;X3;K"buildings\human\HumanBarracks\HumanBarracks" +C;X4;K0 +C;X5;K"HumanBarracks" +C;X6;K0 +C;X7;K"humanbarracks" +C;X8;K"HBuilding06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowHumanBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y33;K"hbla" +C;X2;K"a3" +C;X3;K"buildings\human\Blacksmith\Blacksmith" +C;X4;K0 +C;X5;K"Blacksmith" +C;X6;K0 +C;X7;K"blacksmith" +C;X8;K"HBuilding08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowBlacksmith" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y34;K"hcas" +C;X2;K"a3" +C;X3;K"buildings\human\TownHall\TownHall" +C;X4;K0 +C;X5;K"Castle" +C;X6;K1 +C;X7;K"castle" +C;X8;K"HBuilding03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HCAS" +C;X42;K"_" +C;X43;K"ShadowCastle" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y35;K"hctw" +C;X2;K"a3" +C;X3;K"buildings\human\HumanTower\HumanTower" +C;X4;K0 +C;X5;K"CannonTower" +C;X6;K0 +C;X7;K"cannontower" +C;X8;K"HBuilding14" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y36;K"hgra" +C;X2;K"a3" +C;X3;K"buildings\human\GryphonAviary\GryphonAviary" +C;X4;K0 +C;X5;K"GryphonAviary" +C;X6;K0 +C;X7;K"gryphonaviary" +C;X8;K"HBuilding11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowGryphonAviary" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y37;K"hgtw" +C;X2;K"a3" +C;X3;K"buildings\human\HumanTower\HumanTower" +C;X4;K0 +C;X5;K"GuardTower" +C;X6;K0 +C;X7;K"guardtower" +C;X8;K"HBuilding13" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowGuardTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y38;K"hhou" +C;X2;K"a3" +C;X3;K"buildings\human\Farm\Farm" +C;X4;K0 +C;X5;K"Farm" +C;X6;K0 +C;X7;K"farm" +C;X8;K"HBuilding04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowHouse" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y39;K"hkee" +C;X2;K"a3" +C;X3;K"buildings\human\TownHall\TownHall" +C;X4;K0 +C;X5;K"Keep" +C;X6;K1 +C;X7;K"keep" +C;X8;K"HBuilding02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HTOW" +C;X42;K"_" +C;X43;K"ShadowKeep" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y40;K"hlum" +C;X2;K"a3" +C;X3;K"buildings\human\HumanLumbermill\HumanLumbermill" +C;X4;K0 +C;X5;K"HumanLumberMill" +C;X6;K0 +C;X7;K"humanlumbermill" +C;X8;K"HBuilding07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowHumanLumberMill" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y41;K"hshy" +C;X2;K"a3" +C;X3;K"buildings\human\HumanShipyard\HumanShipyard" +C;X4;K0 +C;X5;K"GoblinShipyard" +C;X6;K0 +C;X7;K"humanshipyard" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowHumanShipyard" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y42;K"htow" +C;X2;K"a3" +C;X3;K"buildings\human\TownHall\TownHall" +C;X4;K0 +C;X5;K"TownHall" +C;X6;K1 +C;X7;K"townhall" +C;X8;K"HBuilding01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HTOW" +C;X42;K"_" +C;X43;K"ShadowTownhall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y43;K"hvlt" +C;X2;K"a3" +C;X3;K"buildings\human\ArcaneVault\ArcaneVault" +C;X4;K0 +C;X5;K"ArcaneVault" +C;X6;K0 +C;X7;K"arcanevault" +C;X8;K"HBuilding16" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowArcaneVault" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y44;K"hwtw" +C;X2;K"a3" +C;X3;K"buildings\human\HumanTower\HumanTower" +C;X4;K0 +C;X5;K"ScoutTower" +C;X6;K0 +C;X7;K"scouttower" +C;X8;K"HBuilding12" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y45;K"Obla" +C;X2;K"b1" +C;X3;K"units\orc\HeroBladeMaster\HeroBladeMaster" +C;X4;K0 +C;X5;K"HeroBladeMaster" +C;X6;K0 +C;X7;K"blademaster" +C;X8;K"OHero01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y46;K"Ofar" +C;X2;K"b1" +C;X3;K"units\orc\HeroFarSeer\HeroFarSeer" +C;X4;K0 +C;X5;K"HeroFarSeer" +C;X6;K0 +C;X7;K"farseer" +C;X8;K"OHero02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y47;K"Oshd" +C;X2;K"b1" +C;X3;K"units\orc\HeroShadowHunter\HeroShadowHunter" +C;X4;K0 +C;X5;K"HeroShadowHunter" +C;X6;K0 +C;X7;K"shadowhunter" +C;X8;K"OHero07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y48;K"Otch" +C;X2;K"b1" +C;X3;K"units\orc\HeroTaurenChieftain\HeroTaurenChieftain" +C;X4;K0 +C;X5;K"HeroTaurenChieftain" +C;X6;K0 +C;X7;K"taurenchieftain" +C;X8;K"OHero03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y49;K"nwad" +C;X2;K"b2" +C;X3;K"units\orc\WatcherWard\WatcherWard" +C;X4;K0 +C;X5;K"SentryWard" +C;X6;K0 +C;X7;K"watcherward" +C;X8;K"OUnit12" +C;X9;K1 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y50;K"obot" +C;X2;K"b2" +C;X3;K"units\creeps\OrcishTransportShip\OrcishTransportShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"orcishtransportship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y51;K"ocat" +C;X2;K"b2" +C;X3;K"units\orc\catapult\catapult" +C;X4;K2 +C;X5;K"Catapult" +C;X6;K0 +C;X7;K"demolisher" +C;X8;K"OUnit06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y52;K"odes" +C;X2;K"b2" +C;X3;K"units\creeps\OrcishDestroyerShip\OrcishDestroyerShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"orcishdestroyer" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y53;K"odoc" +C;X2;K"b2" +C;X3;K"units\orc\WitchDoctor\WitchDoctor" +C;X4;K0 +C;X5;K"WitchDoctor" +C;X6;K0 +C;X7;K"witchdoctor" +C;X8;K"OUnit10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y54;K"oeye" +C;X2;K"b2" +C;X3;K"units\orc\SentryWard\SentryWard" +C;X4;K0 +C;X5;K"SentryWard" +C;X6;K0 +C;X7;K"sentryward" +C;X8;K"OUnit12" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y55;K"ogru" +C;X2;K"b2" +C;X3;K"units\orc\Grunt\Grunt" +C;X4;K0 +C;X5;K"Grunt" +C;X6;K0 +C;X7;K"grunt" +C;X8;K"OUnit02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y56;K"ohun" +C;X2;K"b2" +C;X3;K"units\orc\HeadHunter\HeadHunter" +C;X4;K2 +C;X5;K"HeadHunter" +C;X6;K0 +C;X7;K"headhunter" +C;X8;K"OUnit05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y57;K"ohwd" +C;X2;K"b2" +C;X3;K"units\orc\HealingWard\HealingWard" +C;X4;K0 +C;X5;K"HealingWard" +C;X6;K0 +C;X7;K"healingward" +C;X8;K"OUnit17" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y58;K"okod" +C;X2;K"b2" +C;X3;K"units\orc\KotoBeast\KotoBeast" +C;X4;K0 +C;X5;K"KotoBeast" +C;X6;K0 +C;X7;K"kotobeast" +C;X8;K"OUnit07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K310 +C;X45;K280 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y59;K"opeo" +C;X2;K"b2" +C;X3;K"units\orc\Peon\Peon" +C;X4;K0 +C;X5;K"Peon" +C;X6;K0 +C;X7;K"peon" +C;X8;K"OUnit01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y60;K"orai" +C;X2;K"b2" +C;X3;K"units\orc\WolfRider\WolfRider" +C;X4;K0 +C;X5;K"WolfRider" +C;X6;K0 +C;X7;K"wolfrider" +C;X8;K"OUnit03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K360 +C;X30;K360 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y61;K"oshm" +C;X2;K"b2" +C;X3;K"units\orc\Shaman\Shaman" +C;X4;K0 +C;X5;K"Shaman" +C;X6;K0 +C;X7;K"shaman" +C;X8;K"OUnit11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K275 +C;X30;K275 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K150 +C;X45;K150 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y62;K"osp1" +C;X2;K"b2" +C;X3;K"units\orc\SerpentWard\SerpentWard" +C;X4;K0 +C;X6;K0 +C;X7;K"serpentward1" +C;X8;K"OUnit21" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y63;K"osp2" +C;X2;K"b2" +C;X3;K"units\orc\SerpentWard\SerpentWard" +C;X4;K0 +C;X6;K0 +C;X7;K"serpentward2" +C;X8;K"OUnit22" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y64;K"osp3" +C;X2;K"b2" +C;X3;K"units\orc\SerpentWard\SerpentWard" +C;X4;K0 +C;X6;K0 +C;X7;K"serpentward3" +C;X8;K"OUnit23" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y65;K"osp4" +C;X2;K"b2" +C;X3;K"units\orc\SerpentWard\SerpentWard" +C;X4;K0 +C;X6;K0 +C;X7;K"serpentward4" +C;X8;K"OUnit23" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y66;K"ospm" +C;X2;K"b2" +C;X3;K"units\orc\spiritwalker\spiritwalker" +C;X4;K0 +C;X5;K"SpiritWalker" +C;X6;K0 +C;X7;K"spiritwalkermorph" +C;X8;K"OUnit25" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K275 +C;X30;K275 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y67;K"ospw" +C;X2;K"b2" +C;X3;K"units\orc\spiritwalker\spiritwalker" +C;X4;K0 +C;X5;K"SpiritWalker" +C;X6;K0 +C;X7;K"spiritwalker" +C;X8;K"OUnit24" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y68;K"osw1" +C;X2;K"b2" +C;X3;K"units\orc\Spiritwolf\Spiritwolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"spiritwolf1" +C;X8;K"OUnit14" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y69;K"osw2" +C;X2;K"b2" +C;X3;K"units\orc\Spiritwolf\Spiritwolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"spiritwolf2" +C;X8;K"OUnit15" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K170 +C;X39;K170 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y70;K"osw3" +C;X2;K"b2" +C;X3;K"units\orc\Spiritwolf\Spiritwolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"spiritwolf3" +C;X8;K"OUnit16" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K170 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y71;K"otau" +C;X2;K"b2" +C;X3;K"units\orc\Tauren\Tauren" +C;X4;K0 +C;X5;K"Tauren" +C;X6;K0 +C;X7;K"tauren" +C;X8;K"OUnit04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y72;K"otbk" +C;X2;K"b2" +C;X3;K"units\orc\HeadHunter\HeadHunter" +C;X4;K2 +C;X5;K"HeadHunter" +C;X6;K0 +C;X7;K"berserker" +C;X8;K"OUnit26" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y73;K"otbr" +C;X2;K"b2" +C;X3;K"units\orc\BatTroll\BatTroll" +C;X4;K0 +C;X5;K"TrollBatrider" +C;X6;K0 +C;X7;K"trollbatrider" +C;X8;K"OUnit09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y74;K"otot" +C;X2;K"b2" +C;X3;K"units\orc\StasisTotem\StasisTotem" +C;X4;K0 +C;X5;K"StasisTotem" +C;X6;K0 +C;X7;K"stasistraptotem" +C;X8;K"OUnit13" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y75;K"owyv" +C;X2;K"b2" +C;X3;K"units\orc\WyvernRider\WyvernRider" +C;X4;K0 +C;X5;K"WyvernRider" +C;X6;K0 +C;X7;K"windrider" +C;X8;K"OUnit08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K0 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y76;K"oalt" +C;X2;K"b3" +C;X3;K"buildings\orc\AltarofStorms\AltarofStorms" +C;X4;K0 +C;X5;K"AltarofStorms" +C;X6;K0 +C;X7;K"altarofstorms" +C;X8;K"OBuilding04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowAltarofStorms" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y77;K"obar" +C;X2;K"b3" +C;X3;K"buildings\orc\OrcBarracks\OrcBarracks" +C;X4;K0 +C;X5;K"OrcBarracks" +C;X6;K0 +C;X7;K"orcbarracks" +C;X8;K"OBuilding05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowOrcBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y78;K"obea" +C;X2;K"b3" +C;X3;K"buildings\orc\Beastiary\Beastiary" +C;X4;K0 +C;X5;K"Beastiary" +C;X6;K0 +C;X7;K"beastiary" +C;X8;K"OBuilding09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowBeastiary" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y79;K"ofor" +C;X2;K"b3" +C;X3;K"buildings\orc\WarMill\WarMill" +C;X4;K0 +C;X5;K"WarMill" +C;X6;K0 +C;X7;K"warmill" +C;X8;K"OBuilding06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowForge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y80;K"ofrt" +C;X2;K"b3" +C;X3;K"buildings\orc\GreatHall\GreatHall" +C;X4;K0 +C;X5;K"Fortress" +C;X6;K0 +C;X7;K"fortress" +C;X8;K"OBuilding03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"ShadowFortress" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y81;K"ogre" +C;X2;K"b3" +C;X3;K"buildings\orc\GreatHall\GreatHall" +C;X4;K0 +C;X5;K"GreatHall" +C;X6;K0 +C;X7;K"greathall" +C;X8;K"OBuilding01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"ShadowGreatHall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y82;K"oshy" +C;X2;K"b3" +C;X3;K"buildings\other\GoblinShipyard\GoblinShipyard" +C;X4;K0 +C;X5;K"GoblinShipyard" +C;X6;K0 +C;X7;K"orcshipyard" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"ShadowGoblinShipyard" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y83;K"osld" +C;X2;K"b3" +C;X3;K"buildings\orc\SpiritLodge\SpiritLodge" +C;X4;K0 +C;X5;K"SpiritLodge" +C;X6;K0 +C;X7;K"spiritlodge" +C;X8;K"OBuilding08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowSpiritLodge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y84;K"ostr" +C;X2;K"b3" +C;X3;K"buildings\orc\GreatHall\GreatHall" +C;X4;K0 +C;X5;K"Stronghold" +C;X6;K0 +C;X7;K"stronghold" +C;X8;K"OBuilding02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"ShadowStronghold" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y85;K"otrb" +C;X2;K"b3" +C;X3;K"buildings\orc\TrollBurrow\TrollBurrow" +C;X4;K0 +C;X5;K"TrollBurrow" +C;X6;K0 +C;X7;K"trollburrow" +C;X8;K"OBuilding10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"ShadowTrollBurrow" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y86;K"otto" +C;X2;K"b3" +C;X3;K"buildings\orc\TaurenTotem\TaurenTotem" +C;X4;K0 +C;X5;K"TaurenTotem" +C;X6;K0 +C;X7;K"taurentotem" +C;X8;K"OBuilding07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowTaurenTotem" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y87;K"ovln" +C;X2;K"b3" +C;X3;K"buildings\orc\VoodooLounge\VoodooLounge" +C;X4;K0 +C;X5;K"VoodooLounge" +C;X6;K0 +C;X7;K"voodoolounge" +C;X8;K"OBuilding12" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.01 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowGoblinMerchant" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y88;K"owtw" +C;X2;K"b3" +C;X3;K"buildings\orc\WatchTower\WatchTower" +C;X4;K0 +C;X5;K"WatchTower" +C;X6;K0 +C;X7;K"watchtower" +C;X8;K"OBuilding11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"ShadowGuardTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y89;K"Edem" +C;X2;K"c1" +C;X3;K"units\nightelf\HeroDemonHunter\HeroDemonHunter" +C;X4;K0 +C;X5;K"HeroDemonHunter" +C;X6;K0 +C;X7;K"demonhunter" +C;X8;K"EHero03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y90;K"Edmm" +C;X2;K"c1" +C;X3;K"units\nightelf\HeroDemonHunter\HeroDemonHunter" +C;X4;K0 +C;X5;K"HeroDemonHunterMorphed" +C;X6;K0 +C;X7;K"demonhuntermorphed" +C;X8;K"EHero04" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y91;K"Ekee" +C;X2;K"c1" +C;X3;K"units\nightelf\HeroKeeperoftheGrove\HeroKeeperoftheGrove" +C;X4;K0 +C;X5;K"HeroKeeperoftheGrove" +C;X6;K0 +C;X7;K"keeperofthegrove" +C;X8;K"EHero01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y92;K"Emoo" +C;X2;K"c1" +C;X3;K"units\nightelf\HeroMoonPriestess\HeroMoonPriestess" +C;X4;K0 +C;X5;K"HeroMoonPriestess" +C;X6;K0 +C;X7;K"priestessofthemoon" +C;X8;K"EHero02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y93;K"Ewar" +C;X2;K"c1" +C;X3;K"units\nightelf\herowarden\herowarden" +C;X4;K0 +C;X5;K"HeroWarden" +C;X6;K0 +C;X7;K"warden" +C;X8;K"EHero07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y94;K"earc" +C;X2;K"c2" +C;X3;K"units\nightelf\Archer\Archer" +C;X4;K0 +C;X5;K"Archer" +C;X6;K0 +C;X7;K"archer" +C;X8;K"EUnit02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y95;K"ebal" +C;X2;K"c2" +C;X3;K"units\nightelf\Ballista\Ballista" +C;X4;K2 +C;X5;K"Ballista" +C;X6;K0 +C;X7;K"glaivethrower" +C;X8;K"EUnit05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y96;K"ebsh" +C;X2;K"c2" +C;X3;K"units\creeps\NightElfBattleship\NightElfBattleship" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"nightelfbattleship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K400 +C;X45;K400 +C;X46;K180 +C;X47;K180 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y97;K"echm" +C;X2;K"c2" +C;X3;K"units\nightelf\Chimaera\Chimaera" +C;X4;K0 +C;X5;K"Chimaera" +C;X6;K0 +C;X7;K"chimaera" +C;X8;K"EUnit08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K0 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y98;K"edcm" +C;X2;K"c2" +C;X3;K"units\nightelf\DruidoftheClaw\DruidoftheClaw" +C;X4;K0 +C;X5;K"DruidoftheClawMorphed" +C;X6;K0 +C;X7;K"druidoftheclawmorphed" +C;X8;K"EUnit12" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y99;K"edes" +C;X2;K"c2" +C;X3;K"units\nightelf\NightElfDestroyerShip\NightElfDestroyerShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"nightelfdestroyer" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y100;K"edoc" +C;X2;K"c2" +C;X3;K"units\nightelf\DruidoftheClaw\DruidoftheClaw" +C;X4;K0 +C;X5;K"DruidoftheClaw" +C;X6;K0 +C;X7;K"druidoftheclaw" +C;X8;K"EUnit11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y101;K"edot" +C;X2;K"c2" +C;X3;K"units\nightelf\DruidoftheTalon\DruidoftheTalon" +C;X4;K0 +C;X5;K"DruidoftheTalon" +C;X6;K0 +C;X7;K"druidofthetalon" +C;X8;K"EUnit09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y102;K"edry" +C;X2;K"c2" +C;X3;K"units\nightelf\Dryad\Dryad" +C;X4;K0 +C;X5;K"Dryad" +C;X6;K0 +C;X7;K"dryad" +C;X8;K"EUnit04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y103;K"edtm" +C;X2;K"c2" +C;X3;K"units\nightelf\DruidoftheTalon\DruidoftheTalon" +C;X4;K0 +C;X5;K"DruidoftheTalonMorphed" +C;X6;K0 +C;X7;K"druidofthetalonmorphed" +C;X8;K"EUnit10" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y104;K"efdr" +C;X2;K"c2" +C;X3;K"units\nightelf\FaerieDragon\FaerieDragon" +C;X4;K0 +C;X5;K"FaerieDragon" +C;X6;K0 +C;X7;K"faeriedragon" +C;X8;K"EUnit21" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K33 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y105;K"efon" +C;X2;K"c2" +C;X3;K"units\nightelf\Ent\Ent" +C;X4;K0 +C;X5;K"Ent" +C;X6;K0 +C;X7;K"forceofnature" +C;X8;K"EUnit14" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y106;K"ehip" +C;X2;K"c2" +C;X3;K"units\nightelf\Hippogryph\Hippogryph" +C;X4;K0 +C;X5;K"Hippogryph" +C;X6;K0 +C;X7;K"hippogryph" +C;X8;K"EUnit06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K230 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y107;K"ehpr" +C;X2;K"c2" +C;X3;K"units\nightelf\RiddenHippogryph\RiddenHippogryph" +C;X4;K0 +C;X5;K"RiddenHippogryph" +C;X6;K0 +C;X7;K"riddenhippogryph" +C;X8;K"EUnit07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y108;K"emtg" +C;X2;K"c2" +C;X3;K"units\nightelf\MountainGiant\MountainGiant" +C;X4;K0 +C;X5;K"MountainGiant" +C;X6;K0 +C;X7;K"mountaingiant" +C;X8;K"EUnit13" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y109;K"esen" +C;X2;K"c2" +C;X3;K"units\nightelf\Huntress\Huntress" +C;X4;K0 +C;X5;K"Huntress" +C;X6;K0 +C;X7;K"huntress" +C;X8;K"EUnit03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y110;K"espv" +C;X2;K"c2" +C;X3;K"units\nightelf\SpiritOfVengeance\SpiritOfVengeance" +C;X4;K0 +C;X5;K"SpiritOfVengeance" +C;X6;K0 +C;X7;K"spiritofvengeance" +C;X8;K"EUnit15" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y111;K"even" +C;X2;K"c2" +C;X3;K"units\nightelf\Vengeance\Vengeance" +C;X4;K0 +C;X5;K"Vengeance" +C;X6;K0 +C;X7;K"vengeance" +C;X8;K"EUnit21" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y112;K"ewsp" +C;X2;K"c2" +C;X3;K"units\nightelf\Wisp\Wisp" +C;X4;K0 +C;X5;K"Wisp" +C;X6;K0 +C;X7;K"wisp" +C;X8;K"EUnit01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y113;K"eaoe" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AncientOfLore\AncientOfLore" +C;X4;K0 +C;X5;K"AncientOfLore" +C;X6;K0 +C;X7;K"ancientoflore" +C;X8;K"EBuilding07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientofLore" +C;X44;K400 +C;X45;K400 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y114;K"eaom" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AncientOfWar\AncientOfWar" +C;X4;K0 +C;X5;K"AncientOfWar" +C;X6;K0 +C;X7;K"ancientofwar" +C;X8;K"EBuilding06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientofWar" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y115;K"eaow" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AncientOfWind\AncientOfWind" +C;X4;K0 +C;X5;K"AncientOfWind" +C;X6;K0 +C;X7;K"ancientofwind" +C;X8;K"EBuilding08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientofWind" +C;X44;K400 +C;X45;K400 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y116;K"eate" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AltarOfElders\AltarOfElders" +C;X4;K0 +C;X5;K"AltarOfElders" +C;X6;K0 +C;X7;K"altarofelders" +C;X8;K"EBuilding05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowAltarofElders" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y117;K"eden" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AncientOfWonder\AncientOfWonder" +C;X4;K0 +C;X5;K"AncientOfWonder" +C;X6;K0 +C;X7;K"ancientofwonders" +C;X8;K"EBuilding13" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientofWind" +C;X44;K400 +C;X45;K400 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y118;K"edob" +C;X2;K"c3" +C;X3;K"buildings\nightelf\HuntersHall\HuntersHall" +C;X4;K0 +C;X5;K"HuntersHall" +C;X6;K0 +C;X7;K"huntershall" +C;X8;K"EBuilding09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.2 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowHuntersHall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y119;K"edos" +C;X2;K"c3" +C;X3;K"buildings\nightelf\ChimaeraRoost\ChimaeraRoost" +C;X4;K0 +C;X5;K"ChimaeraRoost" +C;X6;K0 +C;X7;K"chimaeraroost" +C;X8;K"EBuilding11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowChimaeraRoost" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y120;K"egol" +C;X2;K"c3" +C;X3;K"buildings\nightelf\EntangledGoldMine\EntangledGoldMine" +C;X4;K0 +C;X5;K"EntangledGoldMine" +C;X6;K0 +C;X7;K"entangledgoldmine" +C;X8;K"EBuilding12" +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y121;K"emow" +C;X2;K"c3" +C;X3;K"buildings\nightelf\MoonWell\MoonWell" +C;X4;K0 +C;X5;K"MoonWell" +C;X6;K0 +C;X7;K"moonwell" +C;X8;K"EBuilding04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ESMB" +C;X42;K"_" +C;X43;K"ShadowMoonWell" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y122;K"eshy" +C;X2;K"c3" +C;X3;K"buildings\NightElf\NightElfShipyard\NightElfShipyard" +C;X4;K0 +C;X5;K"GoblinShipyard" +C;X6;K0 +C;X7;K"nightelfshipyard" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowHumanShipyard" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y123;K"etoa" +C;X2;K"c3" +C;X3;K"buildings\nightelf\TreeofLife\TreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"treeofages" +C;X8;K"EBuilding02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y124;K"etoe" +C;X2;K"c3" +C;X3;K"buildings\nightelf\TreeofLife\TreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"treeofeternity" +C;X8;K"EBuilding03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y125;K"etol" +C;X2;K"c3" +C;X3;K"buildings\nightelf\TreeofLife\TreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"treeoflife" +C;X8;K"EBuilding01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y126;K"etrp" +C;X2;K"c3" +C;X3;K"buildings\nightelf\AncientProtector\AncientProtector" +C;X4;K0 +C;X5;K"AncientProtector" +C;X6;K0 +C;X7;K"ancientprotector" +C;X8;K"EBuilding10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K125 +C;X30;K125 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ESMA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientProtector" +C;X44;K300 +C;X45;K300 +C;X46;K125 +C;X47;K125 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y127;K"Ucrl" +C;X2;K"d1" +C;X3;K"units\undead\HeroCryptLord\HeroCryptLord" +C;X4;K0 +C;X5;K"HeroCryptLord" +C;X6;K0 +C;X7;K"cryptlord" +C;X8;K"UHero06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K30 +C;X25;K30 +C;X26;K"-" +C;X27;K100 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K112 +C;X47;K112 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y128;K"Udea" +C;X2;K"d1" +C;X3;K"units\undead\HeroDeathKnight\HeroDeathKnight" +C;X4;K0 +C;X5;K"HeroDeathKnight" +C;X6;K0 +C;X7;K"deathknight" +C;X8;K"UHero01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y129;K"Udre" +C;X2;K"d1" +C;X3;K"units\undead\HeroDreadLord\HeroDreadLord" +C;X4;K0 +C;X5;K"HeroDreadLord" +C;X6;K0 +C;X7;K"dreadlord" +C;X8;K"UHero03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y130;K"Ulic" +C;X2;K"d1" +C;X3;K"units\undead\HeroLich\HeroLich" +C;X4;K2 +C;X5;K"HeroLich" +C;X6;K0 +C;X7;K"lich" +C;X8;K"UHero02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y131;K"uabo" +C;X2;K"d2" +C;X3;K"units\undead\Abomination\Abomination" +C;X4;K0 +C;X5;K"Abomination" +C;X6;K0 +C;X7;K"abomination" +C;X8;K"UUnit04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K2.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y132;K"uaco" +C;X2;K"d2" +C;X3;K"units\undead\Acolyte\Acolyte" +C;X4;K0 +C;X5;K"Acolyte" +C;X6;K0 +C;X7;K"acolyte" +C;X8;K"UUnit01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"WoodLightBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y133;K"uban" +C;X2;K"d2" +C;X3;K"units\undead\Banshee\Banshee" +C;X4;K0 +C;X5;K"Banshee" +C;X6;K0 +C;X7;K"banshee" +C;X8;K"UUnit10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y134;K"ubsp" +C;X2;K"d2" +C;X3;K"units\undead\ObsidianStatue\ObsidianStatue" +C;X4;K0 +C;X5;K"ObsidianDestroyer" +C;X6;K0 +C;X7;K"obsidiandestroyer" +C;X8;K"UUnit15" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y135;K"ucrm" +C;X2;K"d2" +C;X3;K"units\undead\CryptFiend\CryptFiend" +C;X4;K0 +C;X5;K"CryptFiend" +C;X6;K0 +C;X7;K"cryptfiendmorph" +C;X8;K"UUnit07" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y136;K"ucry" +C;X2;K"d2" +C;X3;K"units\undead\CryptFiend\CryptFiend" +C;X4;K0 +C;X5;K"CryptFiend" +C;X6;K0 +C;X7;K"cryptfiend" +C;X8;K"UUnit06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y137;K"ucs1" +C;X2;K"d2" +C;X3;K"units\undead\scarab\scarab" +C;X4;K0 +C;X5;K"Scarab" +C;X6;K0 +C;X7;K"carrionscarab1" +C;X8;K"UUnit17" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K63 +C;X30;K63 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y138;K"ucs2" +C;X2;K"d2" +C;X3;K"units\undead\scarab\scarab" +C;X4;K0 +C;X5;K"Scarab" +C;X6;K0 +C;X7;K"carrionscarab2" +C;X8;K"UUnit18" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K63 +C;X30;K63 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K170 +C;X39;K170 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y139;K"ucs3" +C;X2;K"d2" +C;X3;K"units\undead\scarab\scarab" +C;X4;K0 +C;X5;K"Scarab" +C;X6;K0 +C;X7;K"carrionscarab3" +C;X8;K"UUnit19" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K63 +C;X30;K63 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K170 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y140;K"ucsB" +C;X2;K"d2" +C;X3;K"units\undead\scarab\scarab" +C;X4;K0 +C;X5;K"Scarab" +C;X6;K0 +C;X7;K"carrionscarabburrowed2" +C;X8;K"UUnit18" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K63 +C;X30;K63 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K170 +C;X39;K170 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y141;K"ucsC" +C;X2;K"d2" +C;X3;K"units\undead\scarab\scarab" +C;X4;K0 +C;X5;K"Scarab" +C;X6;K0 +C;X7;K"carrionscarabburrowed3" +C;X8;K"UUnit19" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K63 +C;X30;K63 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K170 +C;X40;K170 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y142;K"ufro" +C;X2;K"d2" +C;X3;K"units\undead\FrostWyrm\FrostWyrm" +C;X4;K0 +C;X5;K"FrostWyrm" +C;X6;K0 +C;X7;K"frostwyrm" +C;X8;K"UUnit15" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K140 +C;X47;K140 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y143;K"ugar" +C;X2;K"d2" +C;X3;K"units\undead\Gargoyle\Gargoyle" +C;X4;K0 +C;X5;K"Gargoyle" +C;X6;K0 +C;X7;K"gargoyle" +C;X8;K"UUnit08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y144;K"ugho" +C;X2;K"d2" +C;X3;K"units\undead\Ghoul\Ghoul" +C;X4;K0 +C;X5;K"Ghoul" +C;X6;K0 +C;X7;K"ghoul" +C;X8;K"UUnit03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y145;K"ugrm" +C;X2;K"d2" +C;X3;K"units\undead\Gargoyle\Gargoyle" +C;X4;K0 +C;X5;K"Gargoyle" +C;X6;K0 +C;X7;K"gargoylemorphed" +C;X8;K"UUnit09" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y146;K"uloc" +C;X2;K"d2" +C;X3;K"units\undead\Locust\Locust" +C;X4;K0 +C;X6;K0 +C;X7;K"locust" +C;X9;K1 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K700 +C;X30;K700 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K35 +C;X45;K35 +C;X46;K17 +C;X47;K17 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y147;K"umtw" +C;X2;K"d2" +C;X3;K"units\undead\MeatWagon\MeatWagon" +C;X4;K0 +C;X5;K"MeatWagon" +C;X6;K0 +C;X7;K"meatwagon" +C;X8;K"UUnit05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K260 +C;X45;K260 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y148;K"unec" +C;X2;K"d2" +C;X3;K"units\undead\Necromancer\Necromancer" +C;X4;K0 +C;X5;K"Necromancer" +C;X6;K0 +C;X7;K"necromancer" +C;X8;K"UUnit11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y149;K"uobs" +C;X2;K"d2" +C;X3;K"units\undead\ObsidianStatue\ObsidianStatue" +C;X4;K0 +C;X5;K"ObsidianStatue" +C;X6;K0 +C;X7;K"obsidianstatue" +C;X8;K"UUnit14" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K2.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y150;K"uplg" +C;X2;K"d2" +C;X3;K"units\undead\PlagueCloud\PlagueCloud" +C;X4;K0 +C;X5;K"PlagueCloud" +C;X6;K0 +C;X7;K"plagueward" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y151;K"ushd" +C;X2;K"d2" +C;X3;K"units\undead\Shade\Shade" +C;X4;K0 +C;X5;K"Shade" +C;X6;K0 +C;X7;K"shade" +C;X8;K"UUnit02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K1.5 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y152;K"uske" +C;X2;K"d2" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletonwarrior" +C;X8;K"UUnit12" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y153;K"uskm" +C;X2;K"d2" +C;X3;K"units\undead\SkeletonMage\SkeletonMage" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletalmage" +C;X8;K"UUnit13" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y154;K"uubs" +C;X2;K"d2" +C;X3;K"units\creeps\UndeadShipBattleShip\UndeadShipBattleShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"undeadbattleship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K400 +C;X45;K400 +C;X46;K180 +C;X47;K180 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y155;K"uaod" +C;X2;K"d3" +C;X3;K"buildings\undead\AltarOfDarkness\AltarOfDarkness" +C;X4;K0 +C;X5;K"AltarOfDarkness" +C;X6;K0 +C;X7;K"altarofdarkness" +C;X8;K"UBuilding07" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowAltarOfDarkness" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y156;K"ubon" +C;X2;K"d3" +C;X3;K"buildings\undead\BoneYard\BoneYard" +C;X4;K0 +C;X5;K"BoneYard" +C;X6;K0 +C;X7;K"boneyard" +C;X8;K"UBuilding13" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowBoneYard" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y157;K"ugol" +C;X2;K"d3" +C;X3;K"buildings\undead\HauntedMine\HauntedMine" +C;X4;K0 +C;X5;K"HauntedMine" +C;X6;K0 +C;X7;K"undeadgoldmine2" +C;X8;K"UBuilding14" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y158;K"ugrv" +C;X2;K"d3" +C;X3;K"buildings\undead\Graveyard\Graveyard" +C;X4;K0 +C;X5;K"Graveyard" +C;X6;K0 +C;X7;K"graveyard" +C;X8;K"UBuilding10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y159;K"unp1" +C;X2;K"d3" +C;X3;K"buildings\undead\Necropolis\Necropolis" +C;X4;K0 +C;X5;K"Necropolisu1" +C;X6;K0 +C;X7;K"necropolis1" +C;X8;K"UBuilding02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ULAR" +C;X42;K"_" +C;X43;K"ShadowHallsoftheDead" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y160;K"unp2" +C;X2;K"d3" +C;X3;K"buildings\undead\Necropolis\Necropolis" +C;X4;K0 +C;X5;K"Necropolisu2" +C;X6;K0 +C;X7;K"necropolis2" +C;X8;K"UBuilding03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ULAR" +C;X42;K"_" +C;X43;K"ShadowBlackCitidel" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y161;K"unpl" +C;X2;K"d3" +C;X3;K"buildings\undead\Necropolis\Necropolis" +C;X4;K0 +C;X5;K"Necropolis" +C;X6;K0 +C;X7;K"necropolis" +C;X8;K"UBuilding01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ULAR" +C;X42;K"_" +C;X43;K"ShadowNecropolis" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y162;K"usap" +C;X2;K"d3" +C;X3;K"buildings\undead\SacrificialPit\SacrificialPit" +C;X4;K0 +C;X5;K"SacrificialPit" +C;X6;K0 +C;X7;K"sacrificialpit" +C;X8;K"UBuilding09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowSacrificialPit" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y163;K"usep" +C;X2;K"d3" +C;X3;K"buildings\undead\Crypt\Crypt" +C;X4;K0 +C;X5;K"Crypt" +C;X6;K0 +C;X7;K"crypt" +C;X8;K"UBuilding08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowCrypt" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y164;K"ushp" +C;X2;K"d3" +C;X3;K"buildings\undead\UndeadShipyard\UndeadShipyard" +C;X4;K0 +C;X5;K"GoblinShipyard" +C;X6;K0 +C;X7;K"undeadshipyard" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y165;K"uslh" +C;X2;K"d3" +C;X3;K"buildings\undead\Slaughterhouse\Slaughterhouse" +C;X4;K0 +C;X5;K"Slaughterhouse" +C;X6;K0 +C;X7;K"slaughterhouse" +C;X8;K"UBuilding11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowSlaughterHouse" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y166;K"utod" +C;X2;K"d3" +C;X3;K"buildings\undead\TempleOfTheDamned\TempleOfTheDamned" +C;X4;K0 +C;X5;K"TempleOfTheDamned" +C;X6;K0 +C;X7;K"templeofthedamned" +C;X8;K"UBuilding12" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowTempleoftheDamned" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y167;K"utom" +C;X2;K"d3" +C;X3;K"buildings\undead\TombOfRelics\TombOfRelics" +C;X4;K0 +C;X5;K"TombOfRelics" +C;X6;K0 +C;X7;K"tombofrelics" +C;X8;K"UBuilding15" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"UMED" +C;X42;K"_" +C;X43;K"ShadowTombOfRelics" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y168;K"uzg1" +C;X2;K"d3" +C;X3;K"buildings\undead\Ziggurat\Ziggurat" +C;X4;K0 +C;X5;K"ZigguratUpgrade" +C;X6;K0 +C;X7;K"ziggurat1" +C;X8;K"UBuilding05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"USMA" +C;X42;K"_" +C;X43;K"ShadowZiggurat" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y169;K"uzg2" +C;X2;K"d3" +C;X3;K"buildings\undead\Ziggurat\Ziggurat" +C;X4;K0 +C;X5;K"FrostTower" +C;X6;K0 +C;X7;K"frosttower" +C;X8;K"UBuilding06" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"USMA" +C;X42;K"_" +C;X43;K"ShadowZiggurat" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y170;K"uzig" +C;X2;K"d3" +C;X3;K"buildings\undead\Ziggurat\Ziggurat" +C;X4;K0 +C;X5;K"Ziggurat" +C;X6;K0 +C;X7;K"ziggurat" +C;X8;K"UBuilding04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"USMA" +C;X42;K"_" +C;X43;K"ShadowZiggurat" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y171;K"Nbrn" +C;X2;K"n1" +C;X3;K"Units\Creeps\BansheeRanger\BansheeRanger" +C;X4;K0 +C;X5;K"DarkRanger" +C;X6;K0 +C;X7;K"darkranger" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y172;K"Nbst" +C;X2;K"n1" +C;X3;K"Units\Creeps\Beastmaster\Beastmaster" +C;X4;K0 +C;X5;K"Beastmaster" +C;X6;K0 +C;X7;K"beastmaster" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y173;K"Nngs" +C;X2;K"n1" +C;X3;K"units\naga\HeroNagaSeawitch\HeroNagaSeawitch" +C;X4;K0 +C;X5;K"SeaWitch" +C;X6;K0 +C;X7;K"seawitch" +C;X8;K"naga" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y174;K"Npbm" +C;X2;K"n1" +C;X3;K"Units\Creeps\PandarenBrewmaster\PandarenBrewmaster" +C;X4;K0 +C;X5;K"PandarenBrewmaster" +C;X6;K0 +C;X7;K"pandarenbrewmaster" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y175;K"Nalc" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroGoblinAlchemist\HeroGoblinAlchemist" +C;X4;K0 +C;X5;K"HeroGoblinAlchemist" +C;X6;K0 +C;X7;K"alchemist" +C;X8;K"alchemist" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y176;K"Nalm" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroGoblinAlchemist\HeroGoblinAlchemist" +C;X4;K0 +C;X5;K"HeroGoblinAlchemist" +C;X6;K0 +C;X7;K"alchemistmorph" +C;X8;K"alchemist" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y177;K"Nal2" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroGoblinAlchemist\HeroGoblinAlchemist" +C;X4;K0 +C;X5;K"HeroGoblinAlchemist" +C;X6;K0 +C;X7;K"alchemistmorph2" +C;X8;K"alchemist" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y178;K"Nal3" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroGoblinAlchemist\HeroGoblinAlchemist" +C;X4;K0 +C;X5;K"HeroGoblinAlchemist" +C;X6;K0 +C;X7;K"alchemistmorph3" +C;X8;K"alchemist" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y179;K"Ntin" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroTinker\HeroTinker" +C;X4;K0 +C;X5;K"HeroTinker" +C;X6;K0 +C;X7;K"tinker" +C;X8;K"tinker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K220 +C;X45;K220 +C;X46;K72 +C;X47;K72 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y180;K"Nrob" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroTinker\HeroTinker" +C;X4;K0 +C;X5;K"HeroTinker" +C;X6;K0 +C;X7;K"robogoblintinker" +C;X8;K"tinker" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y181;K"ncgb" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerRobot\HeroTinkerRobot" +C;X4;K0 +C;X5;K"ClockwerkGoblin" +C;X6;K0 +C;X7;K"clockwerkgoblin1" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y182;K"ncg1" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerRobot\HeroTinkerRobot" +C;X4;K0 +C;X5;K"ClockwerkGoblin" +C;X6;K0 +C;X7;K"clockwerkgoblin2" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K110 +C;X45;K110 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y183;K"ncg2" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerRobot\HeroTinkerRobot" +C;X4;K0 +C;X5;K"ClockwerkGoblin" +C;X6;K0 +C;X7;K"clockwerkgoblin3" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y184;K"ncg3" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerRobot\HeroTinkerRobot" +C;X4;K0 +C;X5;K"ClockwerkGoblin" +C;X6;K0 +C;X7;K"clockwerkgoblin4" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K130 +C;X45;K130 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y185;K"nfac" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerFactory\HeroTinkerFactory" +C;X4;K0 +C;X5;K"PocketFactory" +C;X6;K0 +C;X7;K"pocketfactory" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.9 +C;X38;K155 +C;X39;K155 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowHumanBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y186;K"nfa1" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerFactory\HeroTinkerFactory" +C;X4;K0 +C;X5;K"PocketFactory" +C;X6;K0 +C;X7;K"pocketfactory2" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.9 +C;X38;K155 +C;X39;K155 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowHumanBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y187;K"nfa2" +C;X2;K"n1a" +C;X3;K"Units\Creeps\HeroTinkerFactory\HeroTinkerFactory" +C;X4;K0 +C;X5;K"PocketFactory" +C;X6;K0 +C;X7;K"pocketfactory3" +C;X8;K"clockwerk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.9 +C;X38;K155 +C;X39;K155 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"ShadowHumanBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y188;K"Nplh" +C;X2;K"n1" +C;X3;K"units\demon\HeroPitLord\HeroPitLord" +C;X4;K0 +C;X5;K"HeroPitLord" +C;X6;K0 +C;X7;K"pitlord" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K125 +C;X30;K350 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y189;K"Nfir" +C;X2;K"n1" +C;X3;K"Units\Creeps\HeroFlameLord\HeroFlameLord" +C;X4;K0 +C;X5;K"HeroFireLord" +C;X6;K0 +C;X7;K"firelord" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y190;K"nlv1" +C;X2;K"a2" +C;X3;K"Units\Creeps\LavaSpawn\LavaSpawn" +C;X4;K0 +C;X5;K"LavaSpawn" +C;X6;K0 +C;X7;K"lavaspawn" +C;X8;K"lavaspawn" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y191;K"nlv2" +C;X2;K"a2" +C;X3;K"Units\Creeps\LavaSpawn\LavaSpawn" +C;X4;K0 +C;X5;K"LavaSpawn" +C;X6;K0 +C;X7;K"lavaspawn2" +C;X8;K"lavaspawn" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y192;K"nlv3" +C;X2;K"a2" +C;X3;K"Units\Creeps\LavaSpawn\LavaSpawn" +C;X4;K0 +C;X5;K"LavaSpawn" +C;X6;K0 +C;X7;K"lavaspawn3" +C;X8;K"lavaspawn" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y193;K"ndr1" +C;X2;K"n1a" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"darkminion1" +C;X8;K"skeleton" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K230 +C;X39;K230 +C;X40;K230 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y194;K"ndr2" +C;X2;K"n1a" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"darkminion2" +C;X8;K"skeleton" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K200 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y195;K"ndr3" +C;X2;K"n1a" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"darkminion3" +C;X8;K"skeleton" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.4 +C;X38;K150 +C;X39;K150 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y196;K"ngz1" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"grizzlybear1" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y197;K"ngz2" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"grizzlybear2" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y198;K"ngz3" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"grizzlybear3" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y199;K"ngzc" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"misha1" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y200;K"ngzd" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"misha2" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y201;K"ngza" +C;X2;K"n2" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"misha3" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y202;K"ngz4" +C;X2;K"n1a" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"misha4" +C;X8;K"bear" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y203;K"npn1" +C;X2;K"n1a" +C;X3;K"Units\Creeps\FirePandarenBrewmaster\FirePandarenBrewmaster" +C;X4;K0 +C;X5;K"FirePandarenBrewmaster" +C;X6;K0 +C;X7;K"panda1" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y204;K"npn2" +C;X2;K"n1a" +C;X3;K"Units\Creeps\StormPandarenBrewmaster\StormPandarenBrewmaster" +C;X4;K0 +C;X5;K"StormPandarenBrewmaster" +C;X6;K0 +C;X7;K"panda2" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y205;K"npn3" +C;X2;K"n1a" +C;X3;K"Units\Creeps\EarthPandarenBrewmaster\EarthPandarenBrewmaster" +C;X4;K0 +C;X5;K"EarthPandarenBrewmaster" +C;X6;K0 +C;X7;K"panda3" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y206;K"npn4" +C;X2;K"n1a" +C;X3;K"Units\Creeps\FirePandarenBrewmaster\FirePandarenBrewmaster" +C;X4;K0 +C;X5;K"FirePandarenBrewmaster" +C;X6;K0 +C;X7;K"panda4" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y207;K"npn5" +C;X2;K"n1a" +C;X3;K"Units\Creeps\StormPandarenBrewmaster\StormPandarenBrewmaster" +C;X4;K0 +C;X5;K"StormPandarenBrewmaster" +C;X6;K0 +C;X7;K"panda5" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y208;K"npn6" +C;X2;K"n1a" +C;X3;K"Units\Creeps\EarthPandarenBrewmaster\EarthPandarenBrewmaster" +C;X4;K0 +C;X5;K"EarthPandarenBrewmaster" +C;X6;K0 +C;X7;K"panda6" +C;X8;K"panda" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y209;K"nqb1" +C;X2;K"n1a" +C;X3;K"Units\Creeps\QuillBeast\QuillBeast" +C;X4;K0 +C;X5;K"QuillBeast" +C;X6;K0 +C;X7;K"quillbeast1" +C;X8;K"quillbeast" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y210;K"nqb2" +C;X2;K"n1a" +C;X3;K"Units\Creeps\QuillBeast\QuillBeast" +C;X4;K0 +C;X5;K"QuillBeast" +C;X6;K0 +C;X7;K"quillbeast2" +C;X8;K"quillbeast" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y211;K"nqb3" +C;X2;K"n1a" +C;X3;K"Units\Creeps\QuillBeast\QuillBeast" +C;X4;K0 +C;X5;K"QuillBeast" +C;X6;K0 +C;X7;K"quillbeast3" +C;X8;K"quillbeast" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y212;K"nqb4" +C;X2;K"n1a" +C;X3;K"Units\Creeps\QuillBeast\QuillBeast" +C;X4;K0 +C;X5;K"QuillBeast" +C;X6;K0 +C;X7;K"quillbeast4" +C;X8;K"quillbeast" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y213;K"nwe1" +C;X2;K"n1a" +C;X3;K"units\creeps\WarEagle\WarEagle" +C;X4;K0 +C;X5;K"WarEagle" +C;X6;K0 +C;X7;K"wareagle1" +C;X8;K"eagle" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y214;K"nwe2" +C;X2;K"n1a" +C;X3;K"units\creeps\WarEagle\WarEagle" +C;X4;K0 +C;X5;K"WarEagle" +C;X6;K0 +C;X7;K"wareagle2" +C;X8;K"eagle" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y215;K"nwe3" +C;X2;K"n1a" +C;X3;K"units\creeps\WarEagle\WarEagle" +C;X4;K0 +C;X5;K"WarEagle" +C;X6;K0 +C;X7;K"wareagle3" +C;X8;K"eagle" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y216;K"nadk" +C;X2;K"n2" +C;X3;K"units\creeps\AzureDragon\AzureDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"azuredrake" +C;X8;K"dragone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K150 +C;X39;K180 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y217;K"nadr" +C;X2;K"n2" +C;X3;K"units\creeps\AzureDragon\AzureDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"azuredragon" +C;X8;K"dragone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K180 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y218;K"nadw" +C;X2;K"n2" +C;X3;K"units\creeps\AzureDragonWelp\AzureDragonWelp" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"azuredragonwhelp" +C;X8;K"dragone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K150 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y219;K"nahy" +C;X2;K"n2" +C;X3;K"Units\Creeps\Hydra\Hydra" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"ancienthydra" +C;X8;K"hydra" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y220;K"nanb" +C;X2;K"n2" +C;X3;K"Units\Creeps\Archnathid\Archnathid" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"barbedarachnathid" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.65 +C;X38;K200 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y221;K"nanm" +C;X2;K"n2" +C;X3;K"Units\Creeps\Archnathid\Archnathid" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"barbedarachnathidmerc" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.65 +C;X38;K200 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y222;K"nanc" +C;X2;K"n2" +C;X3;K"Units\Creeps\ArchnathidGreen\ArchnathidGreen" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"crystalarachnathid" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.65 +C;X38;K200 +C;X39;K255 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y223;K"nane" +C;X2;K"n2" +C;X3;K"Units\Creeps\Archnathid\Archnathid" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"earthborerarachnathid" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y224;K"nano" +C;X2;K"n2" +C;X3;K"Units\Creeps\Archnathidpurple\Archnathidpurple" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"overlordarachnathid" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y225;K"nanw" +C;X2;K"n2" +C;X3;K"Units\Creeps\ArchnathidGreen\ArchnathidGreen" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"warriorarachnathid" +C;X8;K"arachnathid" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K140 +C;X30;K140 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y226;K"narg" +C;X2;K"n2" +C;X3;K"units\creeps\GolemStatue\GolemStatue" +C;X4;K0 +C;X6;K0 +C;X7;K"battlegolem" +C;X8;K"golemb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y227;K"nass" +C;X2;K"n2" +C;X3;K"units\creeps\BanditSpearThrower\BanditSpearThrower" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"assassin" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K150 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y228;K"nbal" +C;X2;K"n2" +C;X3;K"units\demon\DoomGuard\DoomGuard" +C;X4;K0 +C;X5;K"DoomGuard" +C;X6;K0 +C;X7;K"doomguard" +C;X8;K"zzdemon" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y229;K"nba2" +C;X2;K"n2" +C;X3;K"units\demon\DoomGuard\DoomGuard" +C;X4;K0 +C;X5;K"DoomGuard" +C;X6;K0 +C;X7;K"doomguardsummoned" +C;X8;K"zzdemon" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y230;K"nban" +C;X2;K"n2" +C;X3;K"units\creeps\Bandit\Bandit" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"bandit" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K200 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y231;K"nbda" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSpawnGreen\DragonSpawnGreen" +C;X4;K0 +C;X5;K"DragonSpawn" +C;X6;K0 +C;X7;K"bluedragonspawnapprentice" +C;X8;K"bluedragonspawn" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K120 +C;X30;K375 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K210 +C;X39;K255 +C;X40;K210 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y232;K"nbdk" +C;X2;K"n2" +C;X3;K"units\creeps\BlackDragon\BlackDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"blackdrake" +C;X8;K"dragonb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y233;K"nbdm" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSpawnBlue\DragonSpawnBlue" +C;X4;K0 +C;X5;K"DragonSpawn" +C;X6;K0 +C;X7;K"bluedragonspawnmeddler" +C;X8;K"bluedragonspawn" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K120 +C;X30;K375 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K210 +C;X39;K210 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y234;K"nbdo" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSpawnBlue\DragonSpawnBlue" +C;X4;K0 +C;X5;K"DragonSpawn" +C;X6;K0 +C;X7;K"bluedragonspawnoverseer" +C;X8;K"bluedragonspawn" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K120 +C;X30;K375 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y235;K"nbdr" +C;X2;K"n2" +C;X3;K"units\creeps\BlackDragonWelp\BlackDragonWelp" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"blackdragonwhelp" +C;X8;K"dragonb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y236;K"nbds" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSpawnGreen\DragonSpawnGreen" +C;X4;K0 +C;X5;K"DragonSpawn" +C;X6;K0 +C;X7;K"bluedragonspawnsorceror" +C;X8;K"bluedragonspawn" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K120 +C;X30;K375 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y237;K"nbdw" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSpawnPurple\DragonSpawnPurple" +C;X4;K0 +C;X5;K"DragonSpawn" +C;X6;K0 +C;X7;K"bluedragonspawnwarrior" +C;X8;K"bluedragonspawn" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K120 +C;X30;K375 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K235 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y238;K"nbld" +C;X2;K"n2" +C;X3;K"units\creeps\BanditLord\BanditLord" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"banditlord" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y239;K"nbnb" +C;X2;K"n2" +C;X3;K"Units\Creeps\Archnathid\Archnathid" +C;X4;K0 +C;X5;K"Arachnathid" +C;X6;K0 +C;X7;K"barbedarachnathidburrowed" +C;X8;K"arachnathid" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.65 +C;X38;K200 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y240;K"nbot" +C;X2;K"n2" +C;X3;K"units\creeps\HumanTransportShip\HumanTransportShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"transportship" +C;X8;K"boat" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y241;K"nbrg" +C;X2;K"n2" +C;X3;K"units\creeps\BanditSpearThrower\BanditSpearThrower" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"brigand" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K200 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y242;K"nbwm" +C;X2;K"n2" +C;X3;K"units\creeps\BlackDragon\BlackDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"blackdragon" +C;X8;K"dragonb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y243;K"nbzd" +C;X2;K"n2" +C;X3;K"units\creeps\BronzeDragon\BronzeDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"bronzedragon" +C;X8;K"dragonc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K180 +C;X40;K120 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y244;K"nbzk" +C;X2;K"n2" +C;X3;K"units\creeps\BronzeDragon\BronzeDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"bronzedrake" +C;X8;K"dragonc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y245;K"nbzw" +C;X2;K"n2" +C;X3;K"units\creeps\BronzeDragonWelp\BronzeDragonWelp" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"bronzedragonwhelp" +C;X8;K"dragonc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K180 +C;X40;K80 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y246;K"ncea" +C;X2;K"n2" +C;X3;K"units\creeps\CentaurArcher\CentaurArcher" +C;X4;K0 +C;X5;K"CentaurArcher" +C;X6;K0 +C;X7;K"centaurarcher" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K150 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y247;K"ncen" +C;X2;K"n2" +C;X3;K"units\creeps\Centaur\Centaur" +C;X4;K0 +C;X5;K"Centaur" +C;X6;K0 +C;X7;K"centauroutrunner" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.45 +C;X38;K255 +C;X39;K255 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y248;K"ncer" +C;X2;K"n2" +C;X3;K"units\creeps\Centaur\Centaur" +C;X4;K0 +C;X5;K"Centaur" +C;X6;K0 +C;X7;K"centaurdrudge" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y249;K"ncfs" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulTideWarrior\MurgulTideWarrior" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"wateryminioncliffrunner" +C;X8;K"wateryminion" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K128 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K90 +C;X45;K90 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y250;K"ncim" +C;X2;K"n2" +C;X3;K"units\creeps\CentaurArcher\CentaurArcher" +C;X4;K0 +C;X5;K"CentaurArcher" +C;X6;K0 +C;X7;K"centaurimpaler" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.35 +C;X38;K255 +C;X39;K120 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y251;K"ncks" +C;X2;K"n2" +C;X3;K"units\creeps\CentaurKhan\CentaurKhan" +C;X4;K0 +C;X5;K"Centaur" +C;X6;K0 +C;X7;K"centaursorceror" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K150 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y252;K"ncnk" +C;X2;K"n2" +C;X3;K"units\creeps\CentaurKhan\CentaurKhan" +C;X4;K0 +C;X5;K"Centaur" +C;X6;K0 +C;X7;K"centaurkhan" +C;X8;K"centaur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K325 +C;X30;K325 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y253;K"ndqn" +C;X2;K"n2" +C;X3;K"units\demon\Demoness\Demoness" +C;X4;K0 +C;X5;K"Demoness" +C;X6;K0 +C;X7;K"succubus" +C;X8;K"succubus" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y254;K"ndqp" +C;X2;K"n2" +C;X3;K"units\demon\DemonessBlue\DemonessBlue" +C;X4;K0 +C;X5;K"Demoness" +C;X6;K0 +C;X7;K"maidenofpain" +C;X8;K"succubus" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y255;K"ndqs" +C;X2;K"n2" +C;X3;K"units\demon\DemonessBlue\DemonessBlue" +C;X4;K0 +C;X5;K"Demoness" +C;X6;K0 +C;X7;K"queenofsuffering" +C;X8;K"succubus" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y256;K"ndqt" +C;X2;K"n2" +C;X3;K"units\demon\Demoness\Demoness" +C;X4;K0 +C;X5;K"Demoness" +C;X6;K0 +C;X7;K"viletemptress" +C;X8;K"succubus" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y257;K"ndqv" +C;X2;K"n2" +C;X3;K"units\demon\DemonessBlue\DemonessBlue" +C;X4;K0 +C;X5;K"Demoness" +C;X6;K0 +C;X7;K"viletormentor" +C;X8;K"succubus" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K120 +C;X40;K190 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y258;K"ndrv" +C;X2;K"n2" +C;X3;K"units\creeps\RevenantOfTheWaves\RevenantOfTheWaves" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"revenantofthedepths" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y259;K"ndtb" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTroll\DarkTroll" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"darktrollberserker" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K180 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y260;K"ndth" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTrollShadowPriest\DarkTrollShadowPriest" +C;X4;K0 +C;X5;K"ForestTrollShadowPriest" +C;X6;K0 +C;X7;K"darktrollhighpriest" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K200 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y261;K"ndtp" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTrollShadowPriest\DarkTrollShadowPriest" +C;X4;K0 +C;X5;K"ForestTrollShadowPriest" +C;X6;K0 +C;X7;K"darktrollshadowpriest" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y262;K"ndtr" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTroll\DarkTroll" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"darktroll" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.85 +C;X38;K100 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y263;K"ndtt" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTrollTrapper\DarkTrollTrapper" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"darktrolltrapper" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K100 +C;X39;K255 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y264;K"ndtw" +C;X2;K"n2" +C;X3;K"units\creeps\DarkTrollTrapper\DarkTrollTrapper" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"darktrollwarlord" +C;X8;K"darktroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K200 +C;X40;K110 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y265;K"nehy" +C;X2;K"n2" +C;X3;K"Units\Creeps\Hydra\Hydra" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"elderhydra" +C;X8;K"hydra" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K150 +C;X39;K110 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y266;K"nelb" +C;X2;K"n2" +C;X3;K"units\human\WaterElemental\WaterElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"bereserkelemental" +C;X8;K"elemental" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K50 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y267;K"nele" +C;X2;K"n2" +C;X3;K"units\human\WaterElemental\WaterElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"enragedelemental" +C;X8;K"elemental" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K120 +C;X40;K165 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y268;K"nenc" +C;X2;K"n2" +C;X3;K"units\creeps\CorruptedEnt\CorruptedEnt" +C;X4;K0 +C;X5;K"CorruptedEnt" +C;X6;K0 +C;X7;K"corruptedent" +C;X8;K"ent" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.9 +C;X38;K255 +C;X39;K140 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y269;K"nenf" +C;X2;K"n2" +C;X3;K"units\creeps\Bandit\Bandit" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"enforcer" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.45 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y270;K"nenp" +C;X2;K"n2" +C;X3;K"units\creeps\CorruptedEnt\CorruptedEnt" +C;X4;K0 +C;X5;K"CorruptedEnt" +C;X6;K0 +C;X7;K"poisonent" +C;X8;K"ent" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.35 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.25 +C;X38;K170 +C;X39;K255 +C;X40;K60 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y271;K"nepl" +C;X2;K"n2" +C;X3;K"units\creeps\CorruptedEnt\CorruptedEnt" +C;X4;K0 +C;X5;K"CorruptedEnt" +C;X6;K0 +C;X7;K"plagueent" +C;X8;K"ent" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.45 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.4 +C;X38;K150 +C;X39;K160 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y272;K"nerd" +C;X2;K"n2" +C;X3;K"units\demon\EredarWarlockPurple\EredarWarlockPurple" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"eredardiabolist" +C;X8;K"eredar" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.65 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y273;K"ners" +C;X2;K"n2" +C;X3;K"units\demon\EredarWarlock\EredarWarlock" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"eredarsorceror" +C;X8;K"eredar" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y274;K"nerw" +C;X2;K"n2" +C;X3;K"units\demon\EredarWarlock\EredarWarlock" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"eredarwarlock" +C;X8;K"eredar" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y275;K"nfel" +C;X2;K"n2" +C;X3;K"units\demon\felhound\felhound" +C;X4;K2 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"felstalker" +C;X8;K"felstalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y276;K"nfgb" +C;X2;K"n2" +C;X3;K"units\demon\Felgaurd\Felgaurd" +C;X4;K0 +C;X5;K"DoomGuard" +C;X6;K0 +C;X7;K"bloodfiend" +C;X8;K"felguard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.35 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K280 +C;X30;K280 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.35 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y277;K"nfgo" +C;X2;K"n2" +C;X3;K"Units\Creeps\ForgottenOne\ForgottenOne" +C;X4;K0 +C;X6;K0 +C;X7;K"forgottenone" +C;X8;K"forgottenone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"NGOL" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y278;K"nfgt" +C;X2;K"n2" +C;X3;K"Units\Creeps\ForgottenOne\ForgottenOneTent" +C;X4;K0 +C;X6;K0 +C;X7;K"tentacle" +C;X8;K"forgottenone" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K90 +C;X45;K90 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y279;K"nfgu" +C;X2;K"n2" +C;X3;K"units\demon\Felgaurd\Felgaurd" +C;X4;K0 +C;X5;K"DoomGuard" +C;X6;K0 +C;X7;K"felguard" +C;X8;K"felguard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K280 +C;X30;K280 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y280;K"nfod" +C;X2;K"n2" +C;X3;K"Units\Creeps\FacelessOne\FacelessOne" +C;X4;K0 +C;X5;K"FacelessOne" +C;X6;K0 +C;X7;K"facelessonedeathbringer" +C;X8;K"facelessone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y281;K"nfor" +C;X2;K"n2" +C;X3;K"Units\Creeps\FacelessOne\FacelessOne" +C;X4;K0 +C;X5;K"FacelessOne" +C;X6;K0 +C;X7;K"facelessonetrickster" +C;X8;K"facelessone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K180 +C;X39;K180 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y282;K"nfot" +C;X2;K"n2" +C;X3;K"Units\Creeps\FacelessOne\FacelessOne" +C;X4;K0 +C;X5;K"FacelessOne" +C;X6;K0 +C;X7;K"facelessoneterror" +C;X8;K"facelessone" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.85 +C;X38;K255 +C;X39;K150 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y283;K"nfov" +C;X2;K"n2" +C;X3;K"units\demon\FelgaurdBlue\FelgaurdBlue" +C;X4;K0 +C;X5;K"DoomGuard" +C;X6;K0 +C;X7;K"overlord" +C;X8;K"felguard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K280 +C;X30;K280 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y284;K"nfpc" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolg\PolarFurbolg" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolgchampion" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K120 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y285;K"nfpe" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolgTracker\PolarFurbolgTracker" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolgeldershaman" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y286;K"nfpl" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolg\PolarFurbolg" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolg" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y287;K"nfps" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolgTracker\PolarFurbolgTracker" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolgshaman" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y288;K"nfpt" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolgTracker\PolarFurbolgTracker" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolgtracker" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y289;K"nfpu" +C;X2;K"n2" +C;X3;K"units\creeps\PolarFurbolg\PolarFurbolg" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"polarfurbolgursawarrior" +C;X8;K"polarfurbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y290;K"nfra" +C;X2;K"n2" +C;X3;K"units\creeps\FurbolgElder\FurbolgElder" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgancient" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y291;K"nfrb" +C;X2;K"n2" +C;X3;K"units\creeps\FurbolgTracker\FurbolgTracker" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgtracker" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y292;K"nfre" +C;X2;K"n2" +C;X3;K"units\creeps\FurbolgShaman\FurbolgShaman" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgeldershaman" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y293;K"nfrg" +C;X2;K"n2" +C;X3;K"units\creeps\Furbolg\Furbolg" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgchampion" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K120 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y294;K"nfrl" +C;X2;K"n2" +C;X3;K"units\creeps\Furbolg\Furbolg" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolg" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y295;K"nfrp" +C;X2;K"n2" +C;X3;K"units\creeps\FurbolgPanda\FurbolgPanda" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgpanda" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y296;K"nfrs" +C;X2;K"n2" +C;X3;K"units\creeps\FurbolgShaman\FurbolgShaman" +C;X4;K0 +C;X5;K"Furbolg" +C;X6;K0 +C;X7;K"furbolgshaman" +C;X8;K"furbolg" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y297;K"nfsh" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTrollShadowPriest\ForestTrollShadowPriest" +C;X4;K0 +C;X5;K"ForestTrollShadowPriest" +C;X6;K0 +C;X7;K"foresttrollhighpriest" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K130 +C;X39;K255 +C;X40;K130 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y298;K"nfsp" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTrollShadowPriest\ForestTrollShadowPriest" +C;X4;K0 +C;X5;K"ForestTrollShadowPriest" +C;X6;K0 +C;X7;K"foresttrollshadowpriest" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K255 +C;X39;K220 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y299;K"nftb" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTroll\ForestTroll" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"foresttrollberserker" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K130 +C;X39;K255 +C;X40;K130 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y300;K"nftk" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTrollTrapper\ForestTrollTrapper" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"foresttrollking" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y301;K"nftr" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTroll\ForestTroll" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"foresttroll" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K220 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y302;K"nftt" +C;X2;K"n2" +C;X3;K"units\creeps\ForestTrollTrapper\ForestTrollTrapper" +C;X4;K0 +C;X5;K"ForestTroll" +C;X6;K0 +C;X7;K"foresttrolltrapper" +C;X8;K"foresttroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y303;K"ngdk" +C;X2;K"n2" +C;X3;K"units\creeps\GreenDragon\GreenDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"greendrake" +C;X8;K"dragond" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K180 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y304;K"nggr" +C;X2;K"n2" +C;X3;K"units\creeps\RockGolem\RockGolem" +C;X4;K0 +C;X5;K"RockGolem" +C;X6;K0 +C;X7;K"granitegolem" +C;X8;K"golema" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"RockHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K150 +C;X39;K100 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y305;K"ngh1" +C;X2;K"n2" +C;X3;K"units\creeps\BansheeGhost\BansheeGhost" +C;X4;K0 +C;X5;K"Ghost" +C;X6;K0 +C;X7;K"ghost" +C;X8;K"ghost" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.05 +C;X38;K110 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y306;K"ngh2" +C;X2;K"n2" +C;X3;K"units\creeps\BansheeGhost\BansheeGhost" +C;X4;K0 +C;X5;K"Ghost" +C;X6;K0 +C;X7;K"wraith" +C;X8;K"ghost" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y307;K"ngir" +C;X2;K"n2" +C;X3;K"units\creeps\IronGolem\IronGolem" +C;X4;K0 +C;X5;K"IronGolem" +C;X6;K0 +C;X7;K"goblinshredder" +C;X8;K"goblin" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y308;K"nglm" +C;X2;K"n2" +C;X3;K"units\creeps\GoblinLandMine\GoblinLandMine" +C;X4;K0 +C;X5;K"GoblinLandMine" +C;X6;K0 +C;X7;K"goblinlandmine" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y309;K"ngna" +C;X2;K"n2" +C;X3;K"units\creeps\GnollArcher\GnollArcher" +C;X4;K0 +C;X5;K"GnollArcher" +C;X6;K0 +C;X7;K"gnollpoacher" +C;X8;K"gnolla" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y310;K"ngnb" +C;X2;K"n2" +C;X3;K"units\creeps\Gnoll\Gnoll" +C;X4;K0 +C;X5;K"Gnoll" +C;X6;K0 +C;X7;K"gnollbrute" +C;X8;K"gnollb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K140 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y311;K"ngno" +C;X2;K"n2" +C;X3;K"units\creeps\Gnoll\Gnoll" +C;X4;K0 +C;X5;K"Gnoll" +C;X6;K0 +C;X7;K"gnoll1" +C;X8;K"gnollb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y312;K"ngns" +C;X2;K"n2" +C;X3;K"units\creeps\GnollArcher\GnollArcher" +C;X4;K0 +C;X5;K"GnollArcher" +C;X6;K0 +C;X7;K"gnollassassin" +C;X8;K"gnolla" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K100 +C;X39;K100 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y313;K"ngnv" +C;X2;K"n2" +C;X3;K"units\creeps\GnollOverseer\GnollOverseer" +C;X4;K0 +C;X5;K"GnollKing" +C;X6;K0 +C;X7;K"gnollking" +C;X8;K"gnollb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y314;K"ngnw" +C;X2;K"n2" +C;X3;K"units\creeps\GnollWarden\GnollWarden" +C;X4;K0 +C;X5;K"Gnoll" +C;X6;K0 +C;X7;K"gnoll3" +C;X8;K"gnollb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y315;K"ngrd" +C;X2;K"n2" +C;X3;K"units\creeps\GreenDragon\GreenDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"greendragon" +C;X8;K"dragond" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K180 +C;X39;K255 +C;X40;K150 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y316;K"ngrk" +C;X2;K"n2" +C;X3;K"units\creeps\RockGolem\RockGolem" +C;X4;K0 +C;X5;K"RockGolem" +C;X6;K0 +C;X7;K"mudgolem" +C;X8;K"golema" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"RockHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.6 +C;X38;K150 +C;X39;K110 +C;X40;K70 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y317;K"ngrw" +C;X2;K"n2" +C;X3;K"units\creeps\GreenDragonWelp\GreenDragonWelp" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"greendragonwhelp" +C;X8;K"dragond" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K230 +C;X40;K0 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y318;K"ngsp" +C;X2;K"n2" +C;X3;K"units\creeps\GoblinSapper\GoblinSapper" +C;X4;K0 +C;X5;K"GoblinSapper" +C;X6;K0 +C;X7;K"goblinsapper" +C;X8;K"goblin" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y319;K"ngst" +C;X2;K"n2" +C;X3;K"units\creeps\RockGolem\RockGolem" +C;X4;K0 +C;X5;K"RockGolem" +C;X6;K0 +C;X7;K"rockgolem" +C;X8;K"golema" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"RockHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.05 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y320;K"nhar" +C;X2;K"n2" +C;X3;K"units\creeps\Harpy\Harpy" +C;X4;K0 +C;X5;K"Harpy" +C;X6;K0 +C;X7;K"harpyscout" +C;X8;K"harpy" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K140 +C;X40;K120 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y321;K"nhdc" +C;X2;K"n2" +C;X3;K"units\undead\Acolyte\Acolyte" +C;X4;K0 +C;X5;K"Acolyte" +C;X6;K0 +C;X7;K"deceiver" +C;X8;K"heretic" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K170 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y322;K"nhfp" +C;X2;K"n2" +C;X3;K"units\undead\Acolyte\Acolyte" +C;X4;K0 +C;X5;K"Acolyte" +C;X6;K0 +C;X7;K"fallenpriest" +C;X8;K"heretic" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K120 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y323;K"nhhr" +C;X2;K"n2" +C;X3;K"units\undead\Acolyte\Acolyte" +C;X4;K0 +C;X5;K"Acolyte" +C;X6;K0 +C;X7;K"heretic" +C;X8;K"heretic" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y324;K"nhrh" +C;X2;K"n2" +C;X3;K"units\creeps\HarpyWitch\HarpyWitch" +C;X4;K0 +C;X5;K"Harpy" +C;X6;K0 +C;X7;K"harpyhag" +C;X8;K"harpy" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K0 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.7 +C;X38;K100 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y325;K"nhrq" +C;X2;K"n2" +C;X3;K"units\creeps\HarpyQueen\HarpyQueen" +C;X4;K0 +C;X5;K"Harpy" +C;X6;K0 +C;X7;K"harpyqueen" +C;X8;K"harpy" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K0 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y326;K"nhrr" +C;X2;K"n2" +C;X3;K"units\creeps\Harpy\Harpy" +C;X4;K0 +C;X5;K"Harpy" +C;X6;K0 +C;X7;K"harpyrogue" +C;X8;K"harpy" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.7 +C;X38;K255 +C;X39;K255 +C;X40;K150 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y327;K"nhrw" +C;X2;K"n2" +C;X3;K"units\creeps\HarpyWitch\HarpyWitch" +C;X4;K0 +C;X5;K"Harpy" +C;X6;K0 +C;X7;K"harpywitch" +C;X8;K"harpy" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y328;K"nhyc" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSeaTurtleRange\DragonSeaTurtleRange" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"campaignturtle" +C;X8;K"turtle" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y329;K"nhyd" +C;X2;K"n2" +C;X3;K"Units\Creeps\Hydra\Hydra" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"hydra" +C;X8;K"hydra" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y330;K"nhyh" +C;X2;K"n2" +C;X3;K"Units\Creeps\Hydra\Hydra" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"hydrahatchling" +C;X8;K"hydra" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K125 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y331;K"nina" +C;X2;K"n2" +C;X3;K"units\creeps\InfernalCannonFlame\InfernalCannonFlame" +C;X4;K0 +C;X5;K"InfernalMachine" +C;X6;K0 +C;X7;K"infernaljuggernaut" +C;X8;K"infernalmachine" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y332;K"ninc" +C;X2;K"n2" +C;X3;K"units\creeps\InfernalCannonCannon\InfernalCannonCannon" +C;X4;K0 +C;X5;K"InfernalMachine" +C;X6;K0 +C;X7;K"infernalcontraption" +C;X8;K"infernalmachine" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y333;K"ninf" +C;X2;K"n2" +C;X3;K"units\demon\Infernal\Infernal" +C;X4;K0 +C;X5;K"Infernal" +C;X6;K0 +C;X7;K"infernal" +C;X8;K"zzdemon" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"RockHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y334;K"ninm" +C;X2;K"n2" +C;X3;K"units\creeps\InfernalCannonCannon\InfernalCannonCannon" +C;X4;K0 +C;X5;K"InfernalMachine" +C;X6;K0 +C;X7;K"infernalmachine" +C;X8;K"infernalmachine" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K150 +C;X40;K135 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y335;K"nith" +C;X2;K"n2" +C;X3;K"units\creeps\IceTrollShadowPriest\IceTrollShadowPriest" +C;X4;K0 +C;X5;K"IceTrollShadowPriest" +C;X6;K0 +C;X7;K"icetrollhighpriest" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K170 +C;X39;K130 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y336;K"nitp" +C;X2;K"n2" +C;X3;K"units\creeps\IceTrollShadowPriest\IceTrollShadowPriest" +C;X4;K0 +C;X5;K"IceTrollShadowPriest" +C;X6;K0 +C;X7;K"icetrollshadowpriest" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K190 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y337;K"nitr" +C;X2;K"n2" +C;X3;K"units\creeps\IceTroll\IceTroll" +C;X4;K0 +C;X5;K"IceTroll" +C;X6;K0 +C;X7;K"icetroll" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K190 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y338;K"nits" +C;X2;K"n2" +C;X3;K"units\creeps\IceTroll\IceTroll" +C;X4;K0 +C;X5;K"IceTroll" +C;X6;K0 +C;X7;K"icetrollberserker" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K170 +C;X39;K130 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y339;K"nitt" +C;X2;K"n2" +C;X3;K"units\creeps\IceTroll\IceTroll" +C;X4;K0 +C;X5;K"IceTroll" +C;X6;K0 +C;X7;K"icetrolltrapper" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K170 +C;X39;K255 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y340;K"nitw" +C;X2;K"n2" +C;X3;K"units\creeps\IceTroll\IceTroll" +C;X4;K0 +C;X5;K"IceTroll" +C;X6;K0 +C;X7;K"icetrollwarlord" +C;X8;K"icetroll" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y341;K"njgb" +C;X2;K"n2" +C;X3;K"units\creeps\JungleBeast\JungleBeast" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"enrangedjunglestalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y342;K"njga" +C;X2;K"n2" +C;X3;K"units\creeps\JungleBeast\JungleBeast" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"elderjunglestalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.45 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y343;K"njg1" +C;X2;K"n2" +C;X3;K"units\creeps\JungleBeast\JungleBeast" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"junglestalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y344;K"nkob" +C;X2;K"n2" +C;X3;K"units\creeps\Kobold\Kobold" +C;X4;K0 +C;X5;K"Kobold" +C;X6;K0 +C;X7;K"kobold" +C;X8;K"kobold" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K165 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y345;K"nkog" +C;X2;K"n2" +C;X3;K"units\creeps\KoboldGeomancer\KoboldGeomancer" +C;X4;K0 +C;X5;K"Kobold" +C;X6;K0 +C;X7;K"koboldgeomancer" +C;X8;K"kobold" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y346;K"nkol" +C;X2;K"n2" +C;X3;K"units\creeps\Kobold\Kobold" +C;X4;K0 +C;X5;K"Kobold" +C;X6;K0 +C;X7;K"koboldtaskmaster" +C;X8;K"kobold" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y347;K"nkot" +C;X2;K"n2" +C;X3;K"units\creeps\Kobold\Kobold" +C;X4;K0 +C;X5;K"Kobold" +C;X6;K0 +C;X7;K"kobolttunneler" +C;X8;K"kobold" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K150 +C;X40;K180 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y348;K"nlds" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkblue\Lobstrokkblue" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokkdeepseer" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K250 +C;X39;K250 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y349;K"nlkl" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkgreen\Lobstrokkgreen" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokktidallord" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y350;K"nlpd" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkred\Lobstrokkred" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokkpooldweller" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.65 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.6 +C;X38;K125 +C;X39;K255 +C;X40;K225 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y351;K"nlpr" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkred\Lobstrokkred" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokkprawn" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y352;K"nlps" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkred\Lobstrokkred" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokkprawnsummoned" +C;X8;K"lobstrokk" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y353;K"nlrv" +C;X2;K"n2" +C;X3;K"units\creeps\RevenantOfTheWaves\RevenantOfTheWaves" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"deeplordrevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.6 +C;X38;K100 +C;X39;K175 +C;X40;K175 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y354;K"nlsn" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkred\Lobstrokkred" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokksnapper" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.9 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K150 +C;X39;K255 +C;X40;K125 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y355;K"nltc" +C;X2;K"n2" +C;X3;K"Units\Creeps\Lobstrokkblue\Lobstrokkblue" +C;X4;K0 +C;X5;K"Lobstrokk" +C;X6;K0 +C;X7;K"lobstrokktidecaller" +C;X8;K"lobstrokk" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.57 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y356;K"nltl" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizard\ThunderLizard" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"lightninglizard" +C;X8;K"lightninglizard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y357;K"nlur" +C;X2;K"n2" +C;X3;K"Units\Creeps\MonsterLure\MonsterLure" +C;X4;K0 +C;X6;K0 +C;X7;K"monsterlure" +C;X9;K1 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y358;K"nmam" +C;X2;K"n2" +C;X3;K"Units\Creeps\Mammoth\Mammoth" +C;X4;K0 +C;X5;K"Mammoth" +C;X6;K0 +C;X7;K"mammoth" +C;X8;K"mammoth" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y359;K"nmbg" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulBloodGill\MurgulBloodGill" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulbloodgill" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K35 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y360;K"nmcf" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulTideWarrior\MurgulTideWarrior" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulcliffrunner" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K128 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K90 +C;X45;K90 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y361;K"nmdr" +C;X2;K"n2" +C;X3;K"Units\Creeps\MammothBlack\MammothBlack" +C;X4;K0 +C;X5;K"Mammoth" +C;X6;K0 +C;X7;K"diremammoth" +C;X8;K"mammoth" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y362;K"nmfs" +C;X2;K"n2" +C;X3;K"units\creeps\MurlocFlesheater\MurlocFlesheater" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murlocflesheater" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y363;K"nmgd" +C;X2;K"n2" +C;X3;K"Units\Creeps\MagnataurBlue\MagnataurBlue" +C;X4;K0 +C;X5;K"Magnataur" +C;X6;K0 +C;X7;K"magnataurdestroyer" +C;X8;K"magnataur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.45 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y364;K"nmgr" +C;X2;K"n2" +C;X3;K"Units\Creeps\Magnataur\Magnataur" +C;X4;K0 +C;X5;K"Magnataur" +C;X6;K0 +C;X7;K"magnataurreaver" +C;X8;K"magnataur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.325 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y365;K"nmgw" +C;X2;K"n2" +C;X3;K"Units\Creeps\MagnataurBrown\MagnataurBrown" +C;X4;K0 +C;X5;K"Magnataur" +C;X6;K0 +C;X7;K"magnataurwarrior" +C;X8;K"magnataur" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.125 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y366;K"nmit" +C;X2;K"n2" +C;X3;K"Units\Creeps\Mammoth\Mammoth" +C;X4;K0 +C;X5;K"Mammoth" +C;X6;K0 +C;X7;K"icetuskmammoth" +C;X8;K"mammoth" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K255 +C;X39;K165 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y367;K"nmmu" +C;X2;K"n2" +C;X3;K"units\creeps\MurlocMutant\MurlocMutant" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murlocmutant" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y368;K"nmpg" +C;X2;K"n2" +C;X3;K"units\creeps\MurlocMutant\MurlocMutant" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murlocplaguebearer" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y369;K"nmrl" +C;X2;K"n2" +C;X3;K"units\creeps\Murloc\Murloc" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murloctiderunner" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K200 +C;X39;K255 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y370;K"nmrm" +C;X2;K"n2" +C;X3;K"units\creeps\MurlocNightcrawler\MurlocNightcrawler" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murlocnightcrawler" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y371;K"nmrr" +C;X2;K"n2" +C;X3;K"units\creeps\MurlocWarrior\MurlocWarrior" +C;X4;K2 +C;X5;K"Murloc" +C;X6;K0 +C;X7;K"murlochuntsman" +C;X8;K"murloc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y372;K"nmrv" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulReaver\MurgulReaver" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulreaver" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.45 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y373;K"nmsc" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulShadowCaster\MurgulShadowCaster" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulshadowcaster" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y374;K"nmsn" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulShadowCaster\MurgulShadowCaster" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulsnarecaster" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.1 +C;X38;K192 +C;X39;K192 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y375;K"nmtw" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulTideWarrior\MurgulTideWarrior" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgultidewarrior" +C;X8;K"murgul" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y376;K"nmyr" +C;X2;K"n2" +C;X3;K"units\naga\NagaMyrmidon\NagaMyrmidon" +C;X4;K0 +C;X5;K"NagaMyrmidon" +C;X6;K0 +C;X7;K"nagamyrmidon" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y377;K"nmys" +C;X2;K"n2" +C;X3;K"units\naga\NagaMyrmidon\NagaMyrmidon" +C;X4;K0 +C;X5;K"NagaMyrmidon" +C;X6;K0 +C;X7;K"nagamyrmidonmorph" +C;X8;K"naga" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y378;K"nndk" +C;X2;K"n2" +C;X3;K"units\creeps\NetherDragon\NetherDragon" +C;X4;K0 +C;X5;K"NetherDragon" +C;X6;K0 +C;X7;K"netherdrake" +C;X8;K"dragonf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y379;K"nndr" +C;X2;K"n2" +C;X3;K"units\creeps\NetherDragon\NetherDragon" +C;X4;K0 +C;X5;K"NetherDragon" +C;X6;K0 +C;X7;K"netherdragon" +C;X8;K"dragonf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.35 +C;X38;K60 +C;X39;K255 +C;X40;K0 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y380;K"nnht" +C;X2;K"n2" +C;X3;K"units\creeps\NetherDragon\NetherDragon" +C;X4;K0 +C;X5;K"NetherDragon" +C;X6;K0 +C;X7;K"netherdragonhatchling" +C;X8;K"dragonf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.65 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.65 +C;X38;K255 +C;X39;K50 +C;X40;K50 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y381;K"nnmg" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulReaver\MurgulReaver" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"nagamurgul" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.1 +C;X38;K200 +C;X39;K170 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y382;K"nnrg" +C;X2;K"n2" +C;X3;K"units\naga\NagaRoyalGuard\NagaRoyalGuard" +C;X4;K0 +C;X5;K"NagaRoyalGuard" +C;X6;K0 +C;X7;K"nagaroyalguard" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y383;K"nnrs" +C;X2;K"n2" +C;X3;K"units\naga\NagaRoyalGuard\NagaRoyalGuard" +C;X4;K0 +C;X5;K"NagaRoyalGuard" +C;X6;K0 +C;X7;K"nagaroyalguardmorph" +C;X8;K"naga" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y384;K"nnsu" +C;X2;K"n2" +C;X3;K"Units\Naga\NagaSummoner\NagaSummoner" +C;X4;K0 +C;X5;K"NagaSiren" +C;X6;K0 +C;X7;K"summoner" +C;X8;K"naga" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y385;K"nnsw" +C;X2;K"n2" +C;X3;K"Units\Naga\NagaSiren\NagaSiren" +C;X4;K0 +C;X5;K"NagaSiren" +C;X6;K0 +C;X7;K"siren" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y386;K"nnwa" +C;X2;K"n2" +C;X3;K"units\creeps\Nerubian\Nerubian" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"nerubianwarrior" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y387;K"nnwl" +C;X2;K"n2" +C;X3;K"units\creeps\NerubianSpiderLord\NerubianSpiderLord" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"nerubianwebspinner" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K130 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y388;K"nnwq" +C;X2;K"n2" +C;X3;K"units\creeps\NerubianQueen\NerubianQueen" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"nerubianqueen" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y389;K"nnwr" +C;X2;K"n2" +C;X3;K"units\creeps\NerubianQueen\NerubianQueen" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"nerubianseer" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K160 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y390;K"nnws" +C;X2;K"n2" +C;X3;K"units\creeps\NerubianSpiderLord\NerubianSpiderLord" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"nerubianspiderlord" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.55 +C;X38;K255 +C;X39;K255 +C;X40;K155 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y391;K"noga" +C;X2;K"n2" +C;X3;K"units\creeps\OgreOneHeadedArmored\OgreOneHeadedArmored" +C;X4;K0 +C;X5;K"OgreOneHead" +C;X6;K0 +C;X7;K"stonemaulwarchief" +C;X8;K"ogre" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2.1 +C;X38;K255 +C;X39;K235 +C;X40;K215 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y392;K"nogl" +C;X2;K"n2" +C;X3;K"units\creeps\OgreLord\OgreLord" +C;X4;K0 +C;X5;K"Ogre" +C;X6;K0 +C;X7;K"ogrelord" +C;X8;K"ogre" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.7 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y393;K"nogm" +C;X2;K"n2" +C;X3;K"units\creeps\Ogre\Ogre" +C;X4;K0 +C;X5;K"Ogre" +C;X6;K0 +C;X7;K"ogre2" +C;X8;K"ogre" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K160 +C;X40;K160 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y394;K"nogn" +C;X2;K"n2" +C;X3;K"units\creeps\OgreMagi\OgreMagi" +C;X4;K0 +C;X5;K"Ogre" +C;X6;K0 +C;X7;K"stonemaulmagi" +C;X8;K"ogre" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K225 +C;X40;K235 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y395;K"nogo" +C;X2;K"n2" +C;X3;K"units\creeps\OgreOneHeaded\OgreOneHeaded" +C;X4;K0 +C;X5;K"OgreOneHead" +C;X6;K0 +C;X7;K"stonemaulogre" +C;X8;K"ogre" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K230 +C;X40;K210 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y396;K"nogr" +C;X2;K"n2" +C;X3;K"units\creeps\Ogre\Ogre" +C;X4;K0 +C;X5;K"Ogre" +C;X6;K0 +C;X7;K"ogre1" +C;X8;K"ogre" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y397;K"nomg" +C;X2;K"n2" +C;X3;K"units\creeps\OgreMagi\OgreMagi" +C;X4;K0 +C;X5;K"Ogre" +C;X6;K0 +C;X7;K"ogremagi" +C;X8;K"ogre" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y398;K"nowb" +C;X2;K"n2" +C;X3;K"units\creeps\Owlbear\Owlbear" +C;X4;K0 +C;X5;K"Owlbear" +C;X6;K0 +C;X7;K"owlbear" +C;X8;K"owlbear" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y399;K"nowe" +C;X2;K"n2" +C;X3;K"units\creeps\Owlbear\Owlbear" +C;X4;K0 +C;X5;K"Owlbear" +C;X6;K0 +C;X7;K"enragedowlbear" +C;X8;K"owlbear" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K160 +C;X40;K160 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y400;K"nowk" +C;X2;K"n2" +C;X3;K"units\creeps\Owlbear\Owlbear" +C;X4;K0 +C;X5;K"Owlbear" +C;X6;K0 +C;X7;K"berserkowlbear" +C;X8;K"owlbear" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y401;K"npfl" +C;X2;K"n2" +C;X3;K"units\creeps\FelstalkerPurple\FelstalkerPurple" +C;X4;K0 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"purplefelstalker" +C;X8;K"felstalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K240 +C;X39;K255 +C;X40;K240 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y402;K"npfm" +C;X2;K"n2" +C;X3;K"units\creeps\FelstalkerPurple\FelstalkerPurple" +C;X4;K0 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"felravager" +C;X8;K"felstalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y403;K"nplb" +C;X2;K"n2" +C;X3;K"units\creeps\PolarBear\PolarBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"polarbear" +C;X8;K"polarbear" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.8 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.95 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y404;K"nplg" +C;X2;K"n2" +C;X3;K"units\creeps\PolarBear\PolarBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"giantpolarbear" +C;X8;K"polarbear" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K160 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y405;K"nqbh" +C;X2;K"n2" +C;X3;K"units\creeps\Bristleback\Bristleback" +C;X4;K0 +C;X5;K"Bristleback" +C;X6;K0 +C;X7;K"quillboarhunter" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K140 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y406;K"nrdk" +C;X2;K"n2" +C;X3;K"units\creeps\RedDragonWelp\RedDragonWelp" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"reddragonwhelp" +C;X8;K"dragona" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K200 +C;X40;K50 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y407;K"nrdr" +C;X2;K"n2" +C;X3;K"units\creeps\RedDragon\RedDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"reddrake" +C;X8;K"dragona" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K100 +C;X40;K200 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y408;K"nrel" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaElemental\SeaElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"reefelemental" +C;X8;K"elemental" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y409;K"nrog" +C;X2;K"n2" +C;X3;K"units\creeps\Bandit\Bandit" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"rogue" +C;X8;K"bandit" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K150 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y410;K"nrvd" +C;X2;K"n2" +C;X3;K"units\creeps\Revenant\Revenant" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"deathrevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y411;K"nrvf" +C;X2;K"n2" +C;X3;K"units\creeps\Revenant\Revenant" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"firerevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K0.9 +C;X38;K255 +C;X39;K120 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y412;K"nrvi" +C;X2;K"n2" +C;X3;K"units\creeps\Revenant\Revenant" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"icerevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.3 +C;X38;K150 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y413;K"nrvl" +C;X2;K"n2" +C;X3;K"units\creeps\Revenant\Revenant" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"lightningrevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y414;K"nrvs" +C;X2;K"n2" +C;X3;K"units\creeps\Revenant\Revenant" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"frostrevenant" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K180 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y415;K"nrwm" +C;X2;K"n2" +C;X3;K"units\creeps\RedDragon\RedDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"reddragon" +C;X8;K"dragona" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K150 +C;X47;K150 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y416;K"nrzb" +C;X2;K"n2" +C;X3;K"units\creeps\RazorMane\RazorMane" +C;X4;K0 +C;X5;K"RazorMane" +C;X6;K0 +C;X7;K"razormanebrute" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y417;K"nrzg" +C;X2;K"n2" +C;X3;K"units\creeps\RazorManeChief\RazorManeChief" +C;X4;K0 +C;X5;K"RazorMane" +C;X6;K0 +C;X7;K"razormanechieftain" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y418;K"nrzm" +C;X2;K"n2" +C;X3;K"units\creeps\RazorManeChief\RazorManeChief" +C;X4;K0 +C;X5;K"RazorMane" +C;X6;K0 +C;X7;K"razormanemedicineman" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y419;K"nrzs" +C;X2;K"n2" +C;X3;K"units\creeps\RazorMane\RazorMane" +C;X4;K0 +C;X5;K"RazorMane" +C;X6;K0 +C;X7;K"razormanescout" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y420;K"nrzt" +C;X2;K"n2" +C;X3;K"units\creeps\Bristleback\Bristleback" +C;X4;K0 +C;X5;K"Bristleback" +C;X6;K0 +C;X7;K"quillboar" +C;X8;K"razormane" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K170 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y421;K"nsat" +C;X2;K"n2" +C;X3;K"units\creeps\SatyrTrickster\SatyrTrickster" +C;X4;K0 +C;X5;K"Satyr" +C;X6;K0 +C;X7;K"satyrtrickster" +C;X8;K"satyr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y422;K"nsbm" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderBlue\SpiderBlue" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"broodmother" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K80 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y423;K"nsbs" +C;X2;K"n2" +C;X3;K"units\naga\SnapDragon\SnapDragon" +C;X4;K0 +C;X5;K"SnapDragon" +C;X6;K0 +C;X7;K"snapdragonmorph" +C;X8;K"naga" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K120 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y424;K"nsc2" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderCrabCreep\SpiderCrabCreep" +C;X4;K0 +C;X6;K0 +C;X7;K"spidercrab2" +C;X8;K"crab" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y425;K"nsc3" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderCrabCreep\SpiderCrabCreep" +C;X4;K0 +C;X6;K0 +C;X7;K"spidercrab3" +C;X8;K"crab" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.72 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.35 +C;X38;K255 +C;X39;K175 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y426;K"nscb" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderCrabCreep\SpiderCrabCreep" +C;X4;K0 +C;X6;K0 +C;X7;K"spidercrab" +C;X8;K"crab" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K100 +C;X39;K125 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y427;K"nsel" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaElemental\SeaElemental" +C;X4;K0 +C;X5;K"WaterElemental" +C;X6;K0 +C;X7;K"seaelemental" +C;X8;K"elemental" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K100 +C;X39;K190 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y428;K"nsgb" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaGiant\SeaGiant" +C;X4;K0 +C;X5;K"SeaGiant" +C;X6;K0 +C;X7;K"seagiantbehemoth" +C;X8;K"giant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y429;K"nsgg" +C;X2;K"n2" +C;X3;K"units\creeps\GolemStatue\GolemStatue" +C;X4;K0 +C;X6;K0 +C;X7;K"siegegolem" +C;X8;K"golemb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.5 +C;X38;K255 +C;X39;K120 +C;X40;K180 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K260 +C;X45;K260 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y430;K"nsgh" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaGiantGreen\SeaGiantGreen" +C;X4;K0 +C;X5;K"SeaGiant" +C;X6;K0 +C;X7;K"seagianthunter" +C;X8;K"giant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y431;K"nsgn" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaGiant\SeaGiant" +C;X4;K0 +C;X5;K"SeaGiant" +C;X6;K0 +C;X7;K"seagiant" +C;X8;K"giant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y432;K"nsgt" +C;X2;K"n2" +C;X3;K"units\creeps\Spider\Spider" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"giantspider" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y433;K"nska" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonArcher\SkeletonArcher" +C;X4;K0 +C;X5;K"SkeletonArcher" +C;X6;K0 +C;X7;K"skeletalarcher" +C;X8;K"zSkeletonArcher" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y434;K"nske" +C;X2;K"n2" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeleton" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y435;K"nsca" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonArcher\SkeletonArcher" +C;X4;K0 +C;X5;K"SkeletonArcher" +C;X6;K0 +C;X7;K"skeletalarchersummoned" +C;X8;K"zSkeletonArcher" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y436;K"nsce" +C;X2;K"n2" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletonsummoned" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y437;K"nskf" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonArcher\SkeletonArcher" +C;X4;K0 +C;X5;K"SkeletonArcher" +C;X6;K0 +C;X7;K"burningarcher" +C;X8;K"zSkeletonArcher" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.3 +C;X38;K255 +C;X39;K100 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y438;K"nskg" +C;X2;K"n2" +C;X3;K"units\undead\Skeleton\Skeleton" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"giantskeleton" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.35 +C;X38;K255 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y439;K"nskm" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonArcher\SkeletonArcher" +C;X4;K0 +C;X5;K"SkeletonArcher" +C;X6;K0 +C;X7;K"skeletalmarksman" +C;X8;K"zSkeletonArcher" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.3 +C;X38;K100 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y440;K"nsko" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonOrc\SkeletonOrc" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletalorc" +C;X8;K"skeletalorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y441;K"nslf" +C;X2;K"n2" +C;X3;K"units\creeps\SludgeMonster\SludgeMonster" +C;X4;K0 +C;X5;K"SludgeMonster" +C;X6;K0 +C;X7;K"sludgeflinger" +C;X8;K"sludgemonster" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K100 +C;X40;K180 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y442;K"nslh" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizardSalamander\ThunderLizardSalamander" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"salamanderhatchling" +C;X8;K"salamander" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.6 +C;X38;K255 +C;X39;K255 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y443;K"nsll" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizardSalamander\ThunderLizardSalamander" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"salamanderlord" +C;X8;K"salamander" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K310 +C;X45;K280 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y444;K"nslm" +C;X2;K"n2" +C;X3;K"units\creeps\SludgeMonster\SludgeMonster" +C;X4;K0 +C;X5;K"SludgeMonster" +C;X6;K0 +C;X7;K"sludgeminion" +C;X8;K"sludgemonster" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y445;K"nsln" +C;X2;K"n2" +C;X3;K"units\creeps\SludgeMonster\SludgeMonster" +C;X4;K0 +C;X5;K"SludgeMonster" +C;X6;K0 +C;X7;K"sludgemonstrosity" +C;X8;K"sludgemonster" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y446;K"nslr" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizardSalamander\ThunderLizardSalamander" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"salamander" +C;X8;K"salamander" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.95 +C;X38;K255 +C;X39;K150 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y447;K"nslv" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizardVizier\ThunderLizardVizier" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"salamandervizier" +C;X8;K"salamander" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y448;K"nsnp" +C;X2;K"n2" +C;X3;K"units\naga\SnapDragon\SnapDragon" +C;X4;K0 +C;X5;K"SnapDragon" +C;X6;K0 +C;X7;K"snapdragon" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K120 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y449;K"nsns" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulShadowCaster\MurgulShadowCaster" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"wateryminionsnarecaster" +C;X8;K"wateryminion" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.1 +C;X38;K192 +C;X39;K192 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y450;K"nsoc" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonOrc\SkeletonOrc" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletalorcchampion" +C;X8;K"skeletalorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.5 +C;X38;K175 +C;X39;K175 +C;X40;K250 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y451;K"nsog" +C;X2;K"n2" +C;X3;K"units\creeps\SkeletonOrc\SkeletonOrc" +C;X4;K0 +C;X5;K"Skeleton" +C;X6;K0 +C;X7;K"skeletalorcgrunt" +C;X8;K"skeletalorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.3 +C;X38;K150 +C;X39;K255 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y452;K"nspb" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderBlack\SpiderBlack" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"spiderblack" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y453;K"nspd" +C;X2;K"n2" +C;X3;K"units\creeps\Nerubian\Nerubian" +C;X4;K0 +C;X5;K"Nerubian" +C;X6;K0 +C;X7;K"spiderling" +C;X8;K"nerubian" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.6 +C;X38;K120 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y454;K"nspg" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderGreen\SpiderGreen" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"forestspider" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.6 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y455;K"nspp" +C;X2;K"n2" +C;X3;K"units\creeps\SpiritPig\SpiritPig" +C;X4;K0 +C;X5;K"RazorMane" +C;X6;K0 +C;X7;K"spiritpig" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y456;K"nspr" +C;X2;K"n2" +C;X3;K"units\creeps\Spider\Spider" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"spider" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.5 +C;X38;K200 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y457;K"nsqa" +C;X2;K"n2" +C;X3;K"units\creeps\Sasquatch\Sasquatch" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"ancientsasquatch" +C;X8;K"sasquatch" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.45 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K170 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y458;K"nsqe" +C;X2;K"n2" +C;X3;K"units\creeps\SasquatchShaman\SasquatchShaman" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"eldersasquatch" +C;X8;K"sasquatch" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K170 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y459;K"nsqo" +C;X2;K"n2" +C;X3;K"units\creeps\Sasquatch\Sasquatch" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"sasquatchoracle" +C;X8;K"sasquatch" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.35 +C;X38;K255 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y460;K"nsqt" +C;X2;K"n2" +C;X3;K"units\creeps\Sasquatch\Sasquatch" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"sasquatch" +C;X8;K"sasquatch" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y461;K"nsra" +C;X2;K"n2" +C;X3;K"units\creeps\OrcWarlock\OrcWarlock" +C;X4;K0 +C;X5;K"ShamanX" +C;X6;K0 +C;X7;K"stormreaverapprentice" +C;X8;K"stormreaverorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K175 +C;X40;K150 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y462;K"nsrh" +C;X2;K"n2" +C;X3;K"units\creeps\OrcWarlock\OrcWarlock" +C;X4;K0 +C;X5;K"ShamanX" +C;X6;K0 +C;X7;K"stormreaverhermit" +C;X8;K"stormreaverorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y463;K"nsrn" +C;X2;K"n2" +C;X3;K"units\creeps\OrcWarlock\OrcWarlock" +C;X4;K0 +C;X5;K"ShamanX" +C;X6;K0 +C;X7;K"stormreavernecrolyte" +C;X8;K"stormreaverorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K100 +C;X39;K200 +C;X40;K200 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y464;K"nsrv" +C;X2;K"n2" +C;X3;K"units\creeps\RevenantOfTheWaves\RevenantOfTheWaves" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"revenantoftheseas" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.05 +C;X38;K100 +C;X39;K100 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y465;K"nsrw" +C;X2;K"n2" +C;X3;K"units\creeps\OrcWarlock\OrcWarlock" +C;X4;K0 +C;X5;K"ShamanX" +C;X6;K0 +C;X7;K"stormreaverwarlock" +C;X8;K"stormreaverorc" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y466;K"nssp" +C;X2;K"n2" +C;X3;K"units\creeps\SpiderBlue\SpiderBlue" +C;X4;K0 +C;X5;K"Spider" +C;X6;K0 +C;X7;K"spittingspider" +C;X8;K"giantspider" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y467;K"nsth" +C;X2;K"n2" +C;X3;K"units\creeps\satyrhellcaller\satyrhellcaller" +C;X4;K0 +C;X5;K"Satyr" +C;X6;K0 +C;X7;K"satyrhellcaller" +C;X8;K"satyr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K500 +C;X30;K500 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K255 +C;X39;K255 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y468;K"nstl" +C;X2;K"n2" +C;X3;K"units\creeps\Satyr\Satyr" +C;X4;K0 +C;X5;K"Satyr" +C;X6;K0 +C;X7;K"satyrsoulstealer" +C;X8;K"satyr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.8 +C;X38;K255 +C;X39;K130 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y469;K"nsts" +C;X2;K"n2" +C;X3;K"units\creeps\SatyrTrickster\SatyrTrickster" +C;X4;K0 +C;X5;K"Satyr" +C;X6;K0 +C;X7;K"satyrshadowdancer" +C;X8;K"satyr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K180 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y470;K"nstw" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizard\ThunderLizard" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"stormwyrm" +C;X8;K"lightninglizard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K310 +C;X45;K280 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y471;K"nsty" +C;X2;K"n2" +C;X3;K"units\creeps\Satyr\Satyr" +C;X4;K0 +C;X5;K"Satyr" +C;X6;K0 +C;X7;K"satyr" +C;X8;K"satyr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y472;K"nthl" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizard\ThunderLizard" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"thunderlizard" +C;X8;K"lightninglizard" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y473;K"ntka" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarRanged\tuskarRanged" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrspearman" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y474;K"ntkc" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarLord\tuskarLord" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrchieftain" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y475;K"ntkf" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskar\tuskar" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrfighter" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y476;K"ntkh" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarLord\tuskarLord" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrhealer" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.75 +C;X38;K255 +C;X39;K190 +C;X40;K95 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y477;K"ntks" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarRanged\tuskarRanged" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrsorceror" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.66 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K225 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y478;K"ntkt" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarRanged\tuskarRanged" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrtrapper" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.66 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K190 +C;X40;K95 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y479;K"ntkw" +C;X2;K"n2" +C;X3;K"Units\Creeps\tuskarLord\tuskarLord" +C;X4;K0 +C;X5;K"Tuskarr" +C;X6;K0 +C;X7;K"tuskarrwarrior" +C;X8;K"tuskarr" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.66 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K190 +C;X40;K95 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y480;K"ntor" +C;X2;K"n2" +C;X3;K"Abilities\Spells\Other\Tornado\TornadoElemental" +C;X4;K0 +C;X6;K0 +C;X7;K"tornado" +C;X9;K1 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K60 +C;X30;K60 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y481;K"ntrd" +C;X2;K"n2" +C;X3;K"Units\Creeps\DragonSeaTurtle\DragonSeaTurtle" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"dragonturtle" +C;X8;K"turtle" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K150 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K310 +C;X45;K280 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y482;K"ntrg" +C;X2;K"n2" +C;X3;K"Units\Creeps\GiantSeaTurtle\GiantSeaTurtle" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"gargantuanseaturtle" +C;X8;K"turtle" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K120 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K210 +C;X45;K210 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y483;K"ntrh" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaTurtleRange\SeaTurtleRange" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"seaturtlehatchling" +C;X8;K"turtle" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.4 +C;X38;K192 +C;X39;K192 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y484;K"ntrs" +C;X2;K"n2" +C;X3;K"Units\Creeps\SeaTurtle\SeaTurtle" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"seaturtle" +C;X8;K"turtle" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K60 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.5 +C;X38;K180 +C;X39;K255 +C;X40;K192 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y485;K"ntrt" +C;X2;K"n2" +C;X3;K"Units\Creeps\GiantSeaTurtleRange\GiantSeaTurtleRange" +C;X4;K0 +C;X5;K"GiantSeaTurtle" +C;X6;K0 +C;X7;K"giantseaturtle" +C;X8;K"turtle" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K25 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K192 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y486;K"ntrv" +C;X2;K"n2" +C;X3;K"units\creeps\RevenantOfTheWaves\RevenantOfTheWaves" +C;X4;K0 +C;X5;K"Revenant" +C;X6;K0 +C;X7;K"revenantofthetides" +C;X8;K"revenant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K0.9 +C;X38;K255 +C;X39;K200 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y487;K"ntws" +C;X2;K"n2" +C;X3;K"Units\Creeps\MurgulTideWarrior\MurgulTideWarrior" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"wateryminiontidewarrior" +C;X8;K"wateryminion" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y488;K"nubk" +C;X2;K"n2" +C;X3;K"Units\Creeps\Unbroken\Unbroken" +C;X4;K0 +C;X5;K"Unbroken" +C;X6;K0 +C;X7;K"unbrokendarkhunter" +C;X8;K"unbroken" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K480 +C;X30;K480 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.55 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y489;K"nubr" +C;X2;K"n2" +C;X3;K"Units\Creeps\Unbroken\Unbroken" +C;X4;K0 +C;X5;K"Unbroken" +C;X6;K0 +C;X7;K"unbrokenrager" +C;X8;K"unbroken" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K480 +C;X30;K480 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.65 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y490;K"nubw" +C;X2;K"n2" +C;X3;K"Units\Creeps\Unbroken\Unbroken" +C;X4;K0 +C;X5;K"Unbroken" +C;X6;K0 +C;X7;K"unbrokendarkweaver" +C;X8;K"unbroken" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K480 +C;X30;K480 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K255 +C;X39;K100 +C;X40;K100 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y491;K"nvde" +C;X2;K"n2" +C;X3;K"units\creeps\VoidWalker\VoidWalker" +C;X4;K0 +C;X5;K"ObsidianDestroyer" +C;X6;K0 +C;X7;K"eldervoidwalker" +C;X8;K"voidwalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.5 +C;X38;K255 +C;X39;K50 +C;X40;K50 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y492;K"nvdg" +C;X2;K"n2" +C;X3;K"units\creeps\VoidWalker\VoidWalker" +C;X4;K0 +C;X5;K"ObsidianDestroyer" +C;X6;K0 +C;X7;K"greatervoidwalker" +C;X8;K"voidwalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K1.3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.3 +C;X38;K80 +C;X39;K80 +C;X40;K80 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y493;K"nvdl" +C;X2;K"n2" +C;X3;K"units\creeps\VoidWalker\VoidWalker" +C;X4;K0 +C;X5;K"ObsidianDestroyer" +C;X6;K0 +C;X7;K"lesservoidwalker" +C;X8;K"voidwalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y494;K"nvdw" +C;X2;K"n2" +C;X3;K"units\creeps\VoidWalker\VoidWalker" +C;X4;K0 +C;X5;K"ObsidianDestroyer" +C;X6;K0 +C;X7;K"voidwalker" +C;X8;K"voidwalker" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.15 +C;X38;K50 +C;X39;K50 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K130 +C;X45;K130 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y495;K"nwen" +C;X2;K"n2" +C;X3;K"units\creeps\Wendigo\Wendigo" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"wendigo1" +C;X8;K"wendigo" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y496;K"nwgs" +C;X2;K"n2" +C;X3;K"units\naga\WindSerpent\WindSerpent" +C;X4;K0 +C;X5;K"WingedSerpent" +C;X6;K0 +C;X7;K"nagacoutl" +C;X8;K"naga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.7 +C;X38;K150 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y497;K"nwiz" +C;X2;K"n2" +C;X3;K"units\creeps\HumanMage\HumanMage" +C;X4;K0 +C;X5;K"HumanMage" +C;X6;K0 +C;X7;K"apprenticewizard" +C;X8;K"mage" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y498;K"nwld" +C;X2;K"n2" +C;X3;K"units\creeps\DireWolf\DireWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"direwolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y499;K"nwlg" +C;X2;K"n2" +C;X3;K"units\creeps\TimberWolf\TimberWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"giantwolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K150 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y500;K"nwlt" +C;X2;K"n2" +C;X3;K"units\creeps\TimberWolf\TimberWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"timberwolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y501;K"nwna" +C;X2;K"n2" +C;X3;K"units\creeps\Wendigo\Wendigo" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"ancientwendigo" +C;X8;K"wendigo" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.65 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y502;K"nwnr" +C;X2;K"n2" +C;X3;K"units\creeps\Wendigo\Wendigo" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"elderwendigo" +C;X8;K"wendigo" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K220 +C;X30;K220 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.3 +C;X38;K255 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y503;K"nwns" +C;X2;K"n2" +C;X3;K"units\creeps\WendigoShaman\WendigoShaman" +C;X4;K0 +C;X5;K"Wendigo" +C;X6;K0 +C;X7;K"wendigoshaman" +C;X8;K"wendigo" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K130 +C;X39;K160 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y504;K"nwrg" +C;X2;K"n2" +C;X3;K"units\creeps\GolemStatue\GolemStatue" +C;X4;K0 +C;X6;K0 +C;X7;K"wargolem" +C;X8;K"golemb" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.25 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y505;K"nws1" +C;X2;K"n2" +C;X3;K"units\creeps\WindSerpent\WindSerpent" +C;X4;K0 +C;X5;K"DragonHawk" +C;X6;K0 +C;X7;K"windserpent" +C;X8;K"windserpent" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K170 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y506;K"nwwd" +C;X2;K"n2" +C;X3;K"units\creeps\WhiteWolf\WhiteWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"whitedirewolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.45 +C;X38;K150 +C;X39;K120 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y507;K"nwwf" +C;X2;K"n2" +C;X3;K"units\creeps\WhiteWolf\WhiteWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"whitewolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y508;K"nwwg" +C;X2;K"n2" +C;X3;K"units\creeps\WhiteWolf\WhiteWolf" +C;X4;K0 +C;X5;K"SpiritWolf" +C;X6;K0 +C;X7;K"giantwhitewolf" +C;X8;K"wolf" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K150 +C;X39;K120 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y509;K"nwzd" +C;X2;K"n2" +C;X3;K"units\creeps\BanditMage\BanditMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"darkwizard" +C;X8;K"mage" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y510;K"nwzg" +C;X2;K"n2" +C;X3;K"units\creeps\BanditMage\BanditMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"renegadewizard" +C;X8;K"mage" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K190 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y511;K"nwzr" +C;X2;K"n2" +C;X3;K"units\creeps\BanditMage\BanditMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"roguewizard" +C;X8;K"mage" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y512;K"nzep" +C;X2;K"n2" +C;X3;K"units\creeps\GoblinZeppelin\GoblinZeppelin" +C;X4;K0 +C;X5;K"GoblinZeppelin" +C;X6;K0 +C;X7;K"goblinzeppelin" +C;X8;K"goblin" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y513;K"nzom" +C;X2;K"n2" +C;X3;K"units\creeps\Zombie\Zombie" +C;X4;K0 +C;X5;K"Zombie" +C;X6;K0 +C;X7;K"zombie" +C;X8;K"UUnit16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K150 +C;X40;K150 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y514;K"nchp" +C;X2;K"n2" +C;X3;K"units\creeps\HumanMage\HumanMage" +C;X4;K0 +C;X5;K"Priest" +C;X6;K0 +C;X7;K"chaplain" +C;X8;K"mage" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y515;K"nhym" +C;X2;K"n2" +C;X3;K"units\creeps\BanditMage\BanditMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"hydromancer" +C;X8;K"mage" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K170 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y516;K"nalb" +C;X2;K"o2" +C;X3;K"units\critters\Albatross\Albatross" +C;X4;K0 +C;X5;K"Albatross" +C;X6;K0 +C;X7;K"albatross" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y517;K"nfro" +C;X2;K"o2" +C;X3;K"units\critters\Frog\Frog" +C;X4;K0 +C;X5;K"Frog" +C;X6;K0 +C;X7;K"frog" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y518;K"nech" +C;X2;K"o2" +C;X3;K"units\critters\EasterChicken\EasterChicken" +C;X4;K0 +C;X5;K"Chicken" +C;X6;K0 +C;X7;K"chicken" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y519;K"necr" +C;X2;K"o2" +C;X3;K"units\critters\EasterRabbit\EasterRabbit" +C;X4;K0 +C;X5;K"Rabbit" +C;X6;K0 +C;X7;K"rabbit" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y520;K"nrac" +C;X2;K"o2" +C;X3;K"units\critters\Raccoon\Raccoon" +C;X4;K0 +C;X5;K"Raccoon" +C;X6;K0 +C;X7;K"raccoon" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y521;K"ncrb" +C;X2;K"o2" +C;X3;K"units\critters\SpiderCrab\SpiderCrab" +C;X4;K0 +C;X6;K0 +C;X7;K"crab" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y522;K"nder" +C;X2;K"o2" +C;X3;K"units\critters\BlackStagMale\BlackStagMale" +C;X4;K0 +C;X6;K0 +C;X7;K"deer" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y523;K"ndog" +C;X2;K"o2" +C;X3;K"units\critters\BrownWolf\BrownWolf" +C;X4;K0 +C;X5;K"Wolf" +C;X6;K0 +C;X7;K"dog" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K360 +C;X30;K360 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y524;K"ndwm" +C;X2;K"o2" +C;X3;K"units\critters\DuneWorm\DuneWorm" +C;X4;K0 +C;X6;K0 +C;X7;K"duneworm" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y525;K"nfbr" +C;X2;K"o2" +C;X3;K"units\critters\Felboar\Felboar" +C;X4;K0 +C;X5;K"QuillBeast" +C;X6;K0 +C;X7;K"felboar" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y526;K"nhmc" +C;X2;K"o2" +C;X3;K"units\critters\HermitCrab\HermitCrab" +C;X4;K0 +C;X6;K0 +C;X7;K"hermitcrab" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y527;K"now2" +C;X2;K"o2" +C;X3;K"units\nightelf\OwlSCOUT\OwlSCOUT" +C;X4;K0 +C;X5;K"owl" +C;X6;K0 +C;X7;K"owl2" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y528;K"now3" +C;X2;K"o2" +C;X3;K"units\nightelf\OwlSCOUT\OwlSCOUT" +C;X4;K0 +C;X5;K"owl" +C;X6;K0 +C;X7;K"owl3" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y529;K"nowl" +C;X2;K"o2" +C;X3;K"units\nightelf\OwlSCOUT\OwlSCOUT" +C;X4;K0 +C;X5;K"owl" +C;X6;K0 +C;X7;K"owl" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y530;K"npig" +C;X2;K"o2" +C;X3;K"units\critters\Pig\Pig" +C;X4;K0 +C;X5;K"Pig" +C;X6;K0 +C;X7;K"pig" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y531;K"npng" +C;X2;K"o2" +C;X3;K"units\critters\Penguin\Penguin" +C;X4;K0 +C;X5;K"Penguin" +C;X6;K0 +C;X7;K"penguin" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y532;K"npnw" +C;X2;K"o2" +C;X3;K"units\critters\Penguin\Penguin" +C;X4;K0 +C;X5;K"Penguin" +C;X6;K0 +C;X7;K"waterpenguin" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y533;K"nrat" +C;X2;K"o2" +C;X3;K"units\critters\Rat\Rat" +C;X4;K0 +C;X5;K"Rat" +C;X6;K0 +C;X7;K"rat" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y534;K"nsea" +C;X2;K"o2" +C;X3;K"units\critters\Seal\Seal" +C;X4;K0 +C;X5;K"Seal" +C;X6;K0 +C;X7;K"seal" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y535;K"nsha" +C;X2;K"o2" +C;X3;K"units\critters\Sheep\Sheep" +C;X4;K0 +C;X5;K"Sheep" +C;X6;K0 +C;X7;K"amphibioussheep" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y536;K"nshe" +C;X2;K"o2" +C;X3;K"units\critters\Sheep\Sheep" +C;X4;K0 +C;X5;K"Sheep" +C;X6;K0 +C;X7;K"sheep" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y537;K"nshf" +C;X2;K"o2" +C;X3;K"units\critters\FlyingSheep\FlyingSheep" +C;X4;K0 +C;X5;K"Sheep" +C;X6;K0 +C;X7;K"flyingsheep" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y538;K"nshw" +C;X2;K"o2" +C;X3;K"units\critters\Sheep\Sheep" +C;X4;K0 +C;X5;K"Sheep" +C;X6;K0 +C;X7;K"watersheep" +C;X8;K"animal" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K1 +C;X1;Y539;K"nskk" +C;X2;K"o2" +C;X3;K"units\critters\Skink\Skink" +C;X4;K0 +C;X5;K"Skink" +C;X6;K0 +C;X7;K"skink" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.9 +C;X23;K1 +C;X24;K60 +C;X25;K60 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K50 +C;X45;K50 +C;X46;K25 +C;X47;K25 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y540;K"nsno" +C;X2;K"o2" +C;X3;K"units\critters\SnowOwl\SnowOwl" +C;X4;K0 +C;X5;K"SnowOwl" +C;X6;K0 +C;X7;K"snowyowl" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K110 +C;X30;K110 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K60 +C;X45;K60 +C;X46;K30 +C;X47;K30 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y541;K"nvil" +C;X2;K"o2" +C;X3;K"units\critters\VillagerMan\VillagerMan" +C;X4;K0 +C;X5;K"VillagerMan" +C;X6;K0 +C;X7;K"villagerman" +C;X8;K"animal" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y542;K"nvk2" +C;X2;K"o2" +C;X3;K"units\critters\VillagerKid1\VillagerKid1" +C;X4;K0 +C;X5;K"VillagerKid" +C;X6;K0 +C;X7;K"villagerkid2" +C;X8;K"animal" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y543;K"nvl2" +C;X2;K"o2" +C;X3;K"units\critters\VillagerMan1\VillagerMan1" +C;X4;K0 +C;X5;K"VillagerMan2" +C;X6;K0 +C;X7;K"villagerman2" +C;X8;K"animal" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y544;K"nvlk" +C;X2;K"o2" +C;X3;K"units\critters\VillagerKid\VillagerKid" +C;X4;K0 +C;X5;K"VillagerKid" +C;X6;K0 +C;X7;K"villagerkid" +C;X8;K"animal" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y545;K"nvlw" +C;X2;K"o2" +C;X3;K"units\critters\VillagerWoman\VillagerWoman" +C;X4;K0 +C;X5;K"VillagerWoman" +C;X6;K0 +C;X7;K"villagerwoman" +C;X8;K"animal" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.05 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y546;K"nvul" +C;X2;K"o2" +C;X3;K"units\critters\Vulture\Vulture" +C;X4;K0 +C;X5;K"Vulture" +C;X6;K0 +C;X7;K"vulture" +C;X8;K"animal" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K70 +C;X45;K70 +C;X46;K35 +C;X47;K35 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y547;K"ncb0" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall45_0\CityBuildingSmall45_0" +C;X4;K0 +C;X5;K"CityBuilding0" +C;X6;K0 +C;X7;K"citybuildingSmall 0" +C;X8;K"CityBuilding0" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y548;K"ncb1" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall45_1\CityBuildingSmall45_1" +C;X4;K0 +C;X5;K"CityBuilding1" +C;X6;K0 +C;X7;K"citybuildingSmall 1" +C;X8;K"CityBuilding1" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y549;K"ncb2" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall45_2\CityBuildingSmall45_2" +C;X4;K0 +C;X5;K"CityBuilding2" +C;X6;K0 +C;X7;K"citybuildingSmall 2" +C;X8;K"CityBuilding2" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y550;K"ncb3" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall90_0\CityBuildingSmall90_0" +C;X4;K0 +C;X5;K"CityBuilding3" +C;X6;K0 +C;X7;K"citybuildingSmall 3" +C;X8;K"CityBuilding3" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y551;K"ncb4" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall90_1\CityBuildingSmall90_1" +C;X4;K0 +C;X5;K"CityBuilding4" +C;X6;K0 +C;X7;K"citybuildingSmall 4" +C;X8;K"CityBuilding4" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y552;K"ncb5" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall90_2\CityBuildingSmall90_2" +C;X4;K0 +C;X5;K"CityBuilding5" +C;X6;K0 +C;X7;K"citybuildingSmall 5" +C;X8;K"CityBuilding5" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y553;K"ncb6" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall135_0\CityBuildingSmall135_0" +C;X4;K0 +C;X5;K"CityBuilding6" +C;X6;K0 +C;X7;K"citybuildingSmall 6" +C;X8;K"CityBuilding6" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y554;K"ncb7" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall135_1\CityBuildingSmall135_1" +C;X4;K0 +C;X5;K"CityBuilding7" +C;X6;K0 +C;X7;K"citybuildingSmall 7" +C;X8;K"CityBuilding7" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y555;K"ncb8" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall135_2\CityBuildingSmall135_2" +C;X4;K0 +C;X5;K"CityBuilding8" +C;X6;K0 +C;X7;K"citybuildingSmall 8" +C;X8;K"CityBuilding8" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y556;K"ncb9" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall0_0\CityBuildingSmall0_0" +C;X4;K0 +C;X5;K"CityBuilding9" +C;X6;K0 +C;X7;K"citybuildingSmall 9" +C;X8;K"CityBuilding9" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y557;K"ncba" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall0_1\CityBuildingSmall0_1" +C;X4;K0 +C;X5;K"CityBuildinga" +C;X6;K0 +C;X7;K"citybuildingSmall a" +C;X8;K"CityBuildinga" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y558;K"ncbb" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingSmall0_2\CityBuildingSmall0_2" +C;X4;K0 +C;X5;K"CityBuildingb" +C;X6;K0 +C;X7;K"citybuildingSmall b" +C;X8;K"CityBuildingb" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y559;K"ncbc" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingLarge_0\CityBuildingLarge_0" +C;X4;K0 +C;X5;K"CityBuildingc" +C;X6;K0 +C;X7;K"CityBuildingLarge 0" +C;X8;K"CityBuildingc" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K200 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y560;K"ncbd" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingLarge_45\CityBuildingLarge_45" +C;X4;K0 +C;X5;K"CityBuildingd" +C;X6;K0 +C;X7;K"CityBuildingLarge 1" +C;X8;K"CityBuildingd" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K200 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y561;K"ncbe" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingLarge_90\CityBuildingLarge_90" +C;X4;K0 +C;X5;K"CityBuildinge" +C;X6;K0 +C;X7;K"CityBuildingLarge 2" +C;X8;K"CityBuildinge" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K200 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y562;K"ncbf" +C;X2;K"p3" +C;X3;K"buildings\other\CityBuildingLarge_135\CityBuildingLarge_135" +C;X4;K0 +C;X5;K"CityBuildingf" +C;X6;K0 +C;X7;K"CityBuildingLarge 3" +C;X8;K"CityBuildingf" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K200 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y563;K"ncnt" +C;X2;K"p3" +C;X3;K"buildings\other\CentaurTent\CentaurTent" +C;X4;K0 +C;X5;K"CentaurTent" +C;X6;K0 +C;X7;K"centaurtent" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y564;K"ncop" +C;X2;K"p3" +C;X3;K"buildings\other\CircleOfPower\CircleOfPower" +C;X4;K0 +C;X5;K"CircleOfPower" +C;X6;K0 +C;X7;K"circleofpower" +C;X8;K"Neutral22" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y565;K"ncp2" +C;X2;K"p3" +C;X3;K"buildings\other\CircleOfPower\CircleOfPower" +C;X4;K0 +C;X5;K"CircleOfPower" +C;X6;K0 +C;X7;K"circleofpowermedium" +C;X8;K"Neutral23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y566;K"ncp3" +C;X2;K"p3" +C;X3;K"buildings\other\CircleOfPower\CircleOfPower" +C;X4;K0 +C;X5;K"CircleOfPower" +C;X6;K0 +C;X7;K"circleofpowerlarge" +C;X8;K"Neutral24" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y567;K"nct1" +C;X2;K"p3" +C;X3;K"buildings\other\CentaurTent1\CentaurTent1" +C;X4;K0 +C;X5;K"CentaurTent" +C;X6;K0 +C;X7;K"centaurtent1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y568;K"nct2" +C;X2;K"p3" +C;X3;K"buildings\other\CentaurTent2\CentaurTent2" +C;X4;K0 +C;X5;K"CentaurTent" +C;X6;K0 +C;X7;K"centaurtent2" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y569;K"ndch" +C;X2;K"p3" +C;X3;K"buildings\other\ChieftainHut\ChieftainHut" +C;X4;K0 +C;X6;K0 +C;X7;K"chieftainhut" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y570;K"ndh0" +C;X2;K"p3" +C;X3;K"buildings\other\DraneiHut0\DraneiHut0" +C;X4;K0 +C;X5;K"DraeneiHut" +C;X6;K0 +C;X7;K"draneihut0" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y571;K"ndh1" +C;X2;K"p3" +C;X3;K"buildings\other\DraneiHut1\DraneiHut1" +C;X4;K0 +C;X5;K"DraeneiHut" +C;X6;K0 +C;X7;K"draneihut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y572;K"ndh2" +C;X2;K"p3" +C;X3;K"buildings\other\ChieftainHut\ChieftainHut" +C;X4;K0 +C;X5;K"DraeneiChieftainHut" +C;X6;K0 +C;X7;K"draeneihaven" +C;X8;K"draeneibldg" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y573;K"ndh3" +C;X2;K"p3" +C;X3;K"buildings\other\DraneiHut0\DraneiHut0" +C;X4;K0 +C;X5;K"DraeneiHut" +C;X6;K0 +C;X7;K"draeneiwarriorshall" +C;X8;K"draeneibldg" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y574;K"ndh4" +C;X2;K"p3" +C;X3;K"buildings\other\DraneiHut1\DraneiHut1" +C;X4;K0 +C;X5;K"DraeneiHut" +C;X6;K0 +C;X7;K"draeneiseerden" +C;X8;K"draeneibldg" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.25 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y575;K"ndrg" +C;X2;K"p3" +C;X3;K"buildings\other\DragonBuildingGreen\DragonBuildingGreen" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"greendragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y576;K"ndrk" +C;X2;K"p3" +C;X3;K"buildings\other\DragonBuildingBlack\DragonBuildingBlack" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"blackdragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y577;K"ndro" +C;X2;K"p3" +C;X3;K"buildings\other\DragonBuildingBlack\DragonBuildingBlack" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"outlanddragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y578;K"ndrr" +C;X2;K"p3" +C;X3;K"buildings\other\DragonBuilding\DragonBuilding" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"reddragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y579;K"ndru" +C;X2;K"p3" +C;X3;K"buildings\other\DragonBuildingBlue\DragonBuildingBlue" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"bluedragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y580;K"ndrz" +C;X2;K"p3" +C;X3;K"buildings\other\DragonRoost\DragonRoost" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"bronzedragonroost" +C;X8;K"Neutral09" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y581;K"nfh0" +C;X2;K"p3" +C;X3;K"buildings\other\ForestTrollHut0\ForestTrollHut0" +C;X4;K0 +C;X5;K"ForestTrollHut0" +C;X6;K0 +C;X7;K"foresttrollhut0" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y582;K"nfh1" +C;X2;K"p3" +C;X3;K"buildings\other\ForestTrollHut1\ForestTrollHut1" +C;X4;K0 +C;X5;K"ForestTrollHut1" +C;X6;K0 +C;X7;K"foresttrollhut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y583;K"nfoh" +C;X2;K"p3" +C;X3;K"buildings\other\FountainOfLife\FountainOfHealth" +C;X4;K0 +C;X5;K"FountainOfLife" +C;X6;K0 +C;X7;K"fountainofhealth" +C;X8;K"Neutral03" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y584;K"nfr1" +C;X2;K"p3" +C;X3;K"buildings\other\FurbolgHut\FurbolgHut" +C;X4;K0 +C;X5;K"FurbolgHut" +C;X6;K0 +C;X7;K"furbolghut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y585;K"nfr2" +C;X2;K"p3" +C;X3;K"buildings\other\FurbolgHut2\FurbolgHut2" +C;X4;K0 +C;X5;K"FurbolgHut" +C;X6;K0 +C;X7;K"furbolghut2" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y586;K"ngad" +C;X2;K"p3" +C;X3;K"buildings\other\AmmoDump\AmmoDump" +C;X4;K0 +C;X5;K"AmmoDump" +C;X6;K0 +C;X7;K"goblinammodump" +C;X8;K"Neutral05" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y587;K"ngme" +C;X2;K"p3" +C;X3;K"buildings\other\Merchant\Merchant" +C;X4;K0 +C;X5;K"Merchant" +C;X6;K0 +C;X7;K"goblinmerchant" +C;X8;K"Neutral02" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowGoblinMerchant" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y588;K"ngnh" +C;X2;K"p3" +C;X3;K"buildings\other\GnollHut\GnollHut" +C;X4;K0 +C;X5;K"GnollHut" +C;X6;K0 +C;X7;K"gnollhut" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y589;K"ngni" +C;X2;K"p3" +C;X3;K"buildings\other\GranaryInfected\GranaryInfected" +C;X4;K0 +C;X5;K"GranaryInfected" +C;X6;K0 +C;X7;K"granaryinfected" +C;X8;K"UBuilding17" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y590;K"ngol" +C;X2;K"p3" +C;X3;K"buildings\other\GoldMine\GoldMine" +C;X4;K0 +C;X5;K"GoldMine" +C;X6;K0 +C;X7;K"goldmine" +C;X8;K"Neutral01" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"NGOL" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y591;K"ngt2" +C;X2;K"p3" +C;X3;K"buildings\other\GnollHut2\GnollHut2" +C;X4;K0 +C;X5;K"GnollHut" +C;X6;K0 +C;X7;K"gnollhut2" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y592;K"ngwr" +C;X2;K"p3" +C;X3;K"buildings\other\GrainWarehouse\GrainWarehouse" +C;X4;K0 +C;X5;K"GrainWarehouse" +C;X6;K0 +C;X7;K"grainwarehouse" +C;X8;K"GrainWarehouse" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K128 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y593;K"nhns" +C;X2;K"p3" +C;X3;K"buildings\other\HarpyNest\HarpyNest" +C;X4;K0 +C;X5;K"HarpyNest" +C;X6;K0 +C;X7;K"harpynest" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y594;K"nmer" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampl" +C;X8;K"Neutral10" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K0 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y595;K"nmg0" +C;X2;K"p3" +C;X3;K"buildings\other\MurlocHut0\MurlocHut0" +C;X4;K0 +C;X5;K"MurlocHut0" +C;X6;K0 +C;X7;K"murgulhut0" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y596;K"nmg1" +C;X2;K"p3" +C;X3;K"buildings\other\MurlocHut1\MurlocHut1" +C;X4;K0 +C;X5;K"MurlocHut1" +C;X6;K0 +C;X7;K"murgulhut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y597;K"nmh0" +C;X2;K"p3" +C;X3;K"buildings\other\MurlocHut0\MurlocHut0" +C;X4;K0 +C;X5;K"MurlocHut0" +C;X6;K0 +C;X7;K"murlochut0" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y598;K"nmh1" +C;X2;K"p3" +C;X3;K"buildings\other\MurlocHut1\MurlocHut1" +C;X4;K0 +C;X5;K"MurlocHut1" +C;X6;K0 +C;X7;K"murlochut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y599;K"nmoo" +C;X2;K"p3" +C;X3;K"buildings\other\FountainOfMana\FountainOfMana" +C;X4;K0 +C;X5;K"FountainOfLife" +C;X6;K0 +C;X7;K"fountainofmana" +C;X8;K"Neutral04" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y600;K"nmr0" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampv" +C;X8;K"Neutral19" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K5 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y601;K"nmr2" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampf" +C;X8;K"Neutral11" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K12 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y602;K"nmr3" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampw" +C;X8;K"Neutral12" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y603;K"nmr4" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampb" +C;X8;K"Neutral13" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K11 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y604;K"nmr5" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampa" +C;X8;K"Neutral14" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K10 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y605;K"nmr6" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampc" +C;X8;K"Neutral15" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K6 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y606;K"nmr7" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampn" +C;X8;K"Neutral16" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K3 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y607;K"nmr8" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampy" +C;X8;K"Neutral17" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K9 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y608;K"nmr9" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampx" +C;X8;K"Neutral18" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K8 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y609;K"nmra" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampd" +C;X8;K"Neutral20" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K0 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y610;K"nmrb" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampg" +C;X8;K"Neutral21" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K0 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y611;K"nmrc" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampz" +C;X8;K"Neutral27" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y612;K"nmrd" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampi" +C;X8;K"Neutral28" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K9 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y613;K"nmre" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampo" +C;X8;K"Neutral29" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K12 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y614;K"nmrf" +C;X2;K"p3" +C;X3;K"buildings\other\Mercenary\Mercenary" +C;X4;K0 +C;X5;K"Mercenary" +C;X6;K0 +C;X7;K"mercenarycampk" +C;X8;K"Neutral30" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K3 +C;X35;K0 +C;X36;K"Wood" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowMercenaryCamp" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y615;K"nmrk" +C;X2;K"p3" +C;X3;K"buildings\other\Marketplace\Marketplace" +C;X4;K0 +C;X5;K"Marketplace" +C;X6;K0 +C;X7;K"marketplace" +C;X8;K"Neutral26" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K0 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y616;K"nnzg" +C;X2;K"p3" +C;X3;K"buildings\other\NerubianZiggurat\NerubianZiggurat" +C;X4;K0 +C;X5;K"NerubianZiggurat" +C;X6;K0 +C;X7;K"nerubianziggurat" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"USMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y617;K"nshp" +C;X2;K"p3" +C;X3;K"buildings\other\GoblinShipyard\GoblinShipyard" +C;X4;K0 +C;X5;K"GoblinShipyard" +C;X6;K0 +C;X7;K"goblinshipyard" +C;X8;K"Neutral29" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowGoblinShipyard" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y618;K"ntav" +C;X2;K"p3" +C;X3;K"buildings\other\Tavern\Tavern" +C;X4;K0 +C;X5;K"Cantina" +C;X6;K0 +C;X7;K"cantina" +C;X8;K"Neutral25" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K0 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y619;K"nten" +C;X2;K"p3" +C;X3;K"buildings\other\Tent\Tent" +C;X4;K0 +C;X5;K"Tent" +C;X6;K0 +C;X7;K"tent" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y620;K"nth0" +C;X2;K"p3" +C;X3;K"buildings\other\IceTrollHut0\IceTrollHut0" +C;X4;K0 +C;X5;K"IceTrollHut0" +C;X6;K0 +C;X7;K"icetrollhut0" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y621;K"nth1" +C;X2;K"p3" +C;X3;K"buildings\other\IceTrollHut1\IceTrollHut1" +C;X4;K0 +C;X5;K"IceTrollHut1" +C;X6;K0 +C;X7;K"icetrollhut1" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y622;K"ntn2" +C;X2;K"p3" +C;X3;K"buildings\other\Tent1\Tent1" +C;X4;K0 +C;X5;K"Tent" +C;X6;K0 +C;X7;K"tent2" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y623;K"ntnt" +C;X2;K"p3" +C;X3;K"buildings\other\TaurenTent\TaurenTent" +C;X4;K0 +C;X5;K"TaurenTent" +C;X6;K0 +C;X7;K"taurentent" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y624;K"ntt2" +C;X2;K"p3" +C;X3;K"buildings\other\TaurenTent2\TaurenTent2" +C;X4;K0 +C;X5;K"TaurenTent2" +C;X6;K0 +C;X7;K"taurentent2" +C;X8;K"NeutralZZZ" +C;X9;K1 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K1 +C;X1;Y625;K"nwgt" +C;X2;K"p3" +C;X3;K"buildings\other\Waygate\Waygate" +C;X4;K0 +C;X5;K"Waygate" +C;X6;K0 +C;X7;K"waygate" +C;X8;K"Neutral08" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K1 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y626;K"Ecen" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroKeeperoftheGrove\HeroKeeperoftheGrove" +C;X4;K0 +C;X5;K"HeroKeeperoftheGrove" +C;X6;K0 +C;X7;K"cenarius" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K200 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y627;K"Eevi" +C;X2;K"z1" +C;X3;K"units\nightelf\EvilIllidan\IllidanEvil" +C;X4;K0 +C;X5;K"EvilIllidan" +C;X6;K0 +C;X7;K"evilillidan" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y628;K"Eevm" +C;X2;K"z1" +C;X3;K"units\nightelf\EvilIllidan\IllidanEvil" +C;X4;K0 +C;X5;K"EvilIllidanMorphed" +C;X6;K0 +C;X7;K"evilillidandemonform" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y629;K"Efur" +C;X2;K"z1" +C;X3;K"units\nightelf\Furion\Furion" +C;X4;K0 +C;X5;K"Furion" +C;X6;K0 +C;X7;K"furion" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y630;K"Eidm" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroDemonHunter\HeroDemonHunter" +C;X4;K0 +C;X5;K"IllidanMorphed" +C;X6;K0 +C;X7;K"illidandemonform" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y631;K"Eill" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroDemonHunter\HeroDemonHunter" +C;X4;K0 +C;X5;K"Illidan" +C;X6;K0 +C;X7;K"illidan" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y632;K"Eilm" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroDemonHunter\HeroDemonHunter" +C;X4;K0 +C;X5;K"IllidanMorphed" +C;X6;K0 +C;X7;K"illidanmorphed" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K350 +C;X30;K350 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y633;K"Ekgg" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroKeeperoftheGroveGhost\HeroKeeperoftheGroveGhost" +C;X4;K0 +C;X5;K"HeroKeeperoftheGrove" +C;X6;K0 +C;X7;K"keeperofthegroveghost" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y634;K"Emfr" +C;X2;K"z1" +C;X3;K"units\nightelf\MalFurion\MalFurion" +C;X4;K0 +C;X5;K"MalFurion" +C;X6;K0 +C;X7;K"malfurion" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y635;K"Emns" +C;X2;K"z1" +C;X3;K"units\nightelf\MalFurion\MalFurionNoStag" +C;X4;K0 +C;X5;K"Furion" +C;X6;K0 +C;X7;K"malfurionnostag" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K270 +C;X30;K270 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K55 +C;X47;K55 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y636;K"Etyr" +C;X2;K"z1" +C;X3;K"units\nightelf\HeroMoonPriestess\HeroMoonPriestess" +C;X4;K0 +C;X5;K"Tyrande" +C;X6;K0 +C;X7;K"tyrande" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y637;K"Ewrd" +C;X2;K"z1" +C;X3;K"units\nightelf\Maiev\Maiev" +C;X4;K0 +C;X5;K"Maiev" +C;X6;K0 +C;X7;K"maiev" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y638;K"Hant" +C;X2;K"z1" +C;X3;K"units\human\HeroArchMage\HeroArchMage" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"antonidus" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y639;K"Hapm" +C;X2;K"z1" +C;X3;K"units\other\Proudmoore\Proudmoore" +C;X4;K0 +C;X5;K"Proudmoore" +C;X6;K0 +C;X7;K"admiralproudmoore" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y640;K"Harf" +C;X2;K"z1" +C;X3;K"units\human\ArthaswithSword\ArthaswithSword" +C;X4;K0 +C;X5;K"Arthas" +C;X6;K0 +C;X7;K"arthaswithfrostmourne" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y641;K"Hart" +C;X2;K"z1" +C;X3;K"units\human\Arthas\Arthas" +C;X4;K0 +C;X5;K"Arthas" +C;X6;K0 +C;X7;K"arthas" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y642;K"Hdgo" +C;X2;K"z1" +C;X3;K"units\human\HeroPaladinBoss2\HeroPaladinBoss2" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"dagren" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y643;K"Hhkl" +C;X2;K"z1" +C;X3;K"units\human\HeroPaladinBoss\HeroPaladinBoss" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"halahk" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y644;K"Hjai" +C;X2;K"z1" +C;X3;K"units\human\Jaina\Jaina" +C;X4;K0 +C;X5;K"Jaina" +C;X6;K0 +C;X7;K"jaina" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K5 +C;X25;K5 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K400 +C;X30;K400 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y645;K"Hkal" +C;X2;K"z1" +C;X3;K"units\human\Kael\Kael" +C;X4;K0 +C;X5;K"Kael" +C;X6;K0 +C;X7;K"kael" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K170 +C;X45;K170 +C;X46;K65 +C;X47;K65 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y646;K"Hlgr" +C;X2;K"z1" +C;X3;K"units\creeps\LordGarithos\LordGarithos" +C;X4;K0 +C;X5;K"Garithos" +C;X6;K0 +C;X7;K"lordgarithos" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y647;K"Hmbr" +C;X2;K"z1" +C;X3;K"units\human\Muradin\Muradin" +C;X4;K0 +C;X5;K"Muradin" +C;X6;K0 +C;X7;K"muradinbronzebeard" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y648;K"Hmgd" +C;X2;K"z1" +C;X3;K"units\human\HeroPaladin\HeroPaladin" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"margoth" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y649;K"Hpb1" +C;X2;K"z1" +C;X3;K"units\human\HeroPaladinBoss\HeroPaladinBoss" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"paladinboss1" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y650;K"Hpb2" +C;X2;K"z1" +C;X3;K"units\human\HeroPaladinBoss2\HeroPaladinBoss2" +C;X4;K0 +C;X5;K"HeroPaladin" +C;X6;K0 +C;X7;K"paladinboss2" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y651;K"Huth" +C;X2;K"z1" +C;X3;K"units\human\Uther\Uther" +C;X4;K0 +C;X5;K"Uther" +C;X6;K0 +C;X7;K"uther" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y652;K"Hvsh" +C;X2;K"z1" +C;X3;K"units\naga\LadyVashj\LadyVashj" +C;X4;K0 +C;X5;K"SeaWitch" +C;X6;K0 +C;X7;K"ladyvashj" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y653;K"Hvwd" +C;X2;K"z1" +C;X3;K"units\creeps\SylvanusWindrunner\SylvanusWindrunner" +C;X4;K0 +C;X5;K"Sylvanus" +C;X6;K0 +C;X7;K"sylvanuswindrunner" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y654;K"Nbbc" +C;X2;K"z1" +C;X3;K"units\demon\HeroChaosBladeMaster\HeroChaosBladeMaster" +C;X4;K0 +C;X5;K"HeroBladeMaster" +C;X6;K0 +C;X7;K"blackrockblademaster" +C;X8;K"OHero04" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y655;K"Nklj" +C;X2;K"z1" +C;X3;K"units\demon\Kiljaeden\Kiljaeden" +C;X4;K0 +C;X6;K0 +C;X7;K"kiljaeden" +C;X8;K"zzdemon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y656;K"Nkjx" +C;X2;K"z1" +C;X3;K"units\other\KiljaedenCinema\KiljaedenCinema" +C;X4;K0 +C;X6;K0 +C;X7;K"kiljaedencinematic" +C;X8;K"zzdemon" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y657;K"Nmag" +C;X2;K"z1" +C;X3;K"units\demon\HeroPitLord\HeroPitLord" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"magtheridon" +C;X8;K"zzdemon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K125 +C;X30;K350 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.35 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y658;K"Nman" +C;X2;K"z1" +C;X3;K"units\demon\Mannoroth\Mannoroth" +C;X4;K0 +C;X5;K"Pitlord" +C;X6;K0 +C;X7;K"mannoroth" +C;X8;K"UUnit15" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K90 +C;X30;K90 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.7 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K300 +C;X45;K300 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y659;K"Npld" +C;X2;K"z1" +C;X3;K"units\demon\PitLord\PitLord" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"oldpitlord" +C;X8;K"zzdemon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1.35 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y660;K"Nsjs" +C;X2;K"z1" +C;X3;K"Units\Creeps\PandarenBrewmaster\PandarenBrewmaster" +C;X4;K0 +C;X5;K"PandarenBrewmaster" +C;X6;K0 +C;X7;K"sinjostormstout" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y661;K"Ocbh" +C;X2;K"z1" +C;X3;K"units\orc\HeroTaurenChieftainCIN\HeroTaurenChieftainCIN" +C;X4;K0 +C;X5;K"Cairne" +C;X6;K0 +C;X7;K"cairnebloodhoof" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y662;K"Ocb2" +C;X2;K"z1" +C;X3;K"units\orc\HeroTaurenChieftainCIN\HeroTaurenChieftainCIN" +C;X4;K0 +C;X5;K"Cairne" +C;X6;K0 +C;X7;K"cairnebloodhoofexp" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y663;K"Odrt" +C;X2;K"z1" +C;X3;K"units\orc\HeroFarSeer\HeroFarSeer" +C;X4;K0 +C;X5;K"DrekThar" +C;X6;K0 +C;X7;K"drekthar" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y664;K"Ogld" +C;X2;K"z1" +C;X3;K"units\orc\OrcWarlockGuldan\OrcWarlockGuldan" +C;X4;K0 +C;X5;K"PitLord" +C;X6;K0 +C;X7;K"guldan" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"MetalHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y665;K"Ogrh" +C;X2;K"z1" +C;X3;K"units\orc\Hellscream\Hellscream" +C;X4;K0 +C;X5;K"Grom" +C;X6;K0 +C;X7;K"gromhellscream" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y666;K"Opgh" +C;X2;K"z1" +C;X3;K"units\demon\ChaosHellscream\ChaosHellscream" +C;X4;K0 +C;X5;K"Grom" +C;X6;K0 +C;X7;K"possessedgromhellscream" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y667;K"Orex" +C;X2;K"z1" +C;X3;K"Units\Other\Rexxar\Rexxar" +C;X4;K0 +C;X5;K"Beastmaster" +C;X6;K0 +C;X7;K"rexxar" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y668;K"Orkn" +C;X2;K"z1" +C;X3;K"units\orc\HeroShadowHunter\HeroShadowHunter" +C;X4;K0 +C;X5;K"Rokhan" +C;X6;K0 +C;X7;K"rokhan" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K85 +C;X47;K85 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y669;K"Osam" +C;X2;K"z1" +C;X3;K"units\orc\HeroBladeMaster\HeroBladeMaster" +C;X4;K0 +C;X5;K"HeroBladeMaster" +C;X6;K0 +C;X7;K"samuro" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y670;K"Otcc" +C;X2;K"z1" +C;X3;K"units\orc\HeroTaurenChieftainCIN\HeroTaurenChieftainCIN" +C;X4;K0 +C;X5;K"Cairne" +C;X6;K0 +C;X7;K"cairnebloodhoofcinematic" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y671;K"Othr" +C;X2;K"z1" +C;X3;K"units\orc\Thrall\Thrall" +C;X4;K0 +C;X5;K"Thrall" +C;X6;K0 +C;X7;K"thrall" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y672;K"Uanb" +C;X2;K"z1" +C;X3;K"units\undead\Anubarak\Anubarak" +C;X4;K0 +C;X5;K"HeroCryptLord" +C;X6;K0 +C;X7;K"anubarak" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K30 +C;X25;K30 +C;X26;K"-" +C;X27;K100 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K112 +C;X47;K112 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y673;K"Ubal" +C;X2;K"z1" +C;X3;K"units\undead\Tichondrius\Tichondrius" +C;X4;K0 +C;X5;K"HeroDreadLord" +C;X6;K0 +C;X7;K"balnazzar" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.9 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.6 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y674;K"Uclc" +C;X2;K"z1" +C;X3;K"units\undead\HeroLichCIN\HeroLichCIN" +C;X4;K0 +C;X5;K"KelThuzadLich" +C;X6;K0 +C;X7;K"kelthuzadlichcinematic" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y675;K"Udth" +C;X2;K"z1" +C;X3;K"units\undead\HeroDreadLord\HeroDreadLord" +C;X4;K0 +C;X5;K"HeroDreadLord" +C;X6;K0 +C;X7;K"detheroc" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y676;K"Uear" +C;X2;K"z1" +C;X3;K"units\undead\EvilArthas\UndeadArthas" +C;X4;K0 +C;X5;K"EvilArthas" +C;X6;K0 +C;X7;K"evilarthas" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.85 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K380 +C;X30;K380 +C;X31;K0 +C;X32;K"MetalHeavySlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y677;K"Uktl" +C;X2;K"z1" +C;X3;K"units\undead\HeroLich\HeroLich" +C;X4;K2 +C;X5;K"KelThuzadLich" +C;X6;K0 +C;X7;K"kelthuzadlich" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y678;K"Umal" +C;X2;K"z1" +C;X3;K"units\undead\HeroDreadLord\HeroDreadLord" +C;X4;K0 +C;X5;K"HeroDreadLord" +C;X6;K0 +C;X7;K"malganis" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y679;K"Usyl" +C;X2;K"z1" +C;X3;K"Units\Undead\EvilSylvanas\EvilSylvanas" +C;X4;K0 +C;X5;K"EvilSylvanas" +C;X6;K0 +C;X7;K"evilsylvanas" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y680;K"Utic" +C;X2;K"z1" +C;X3;K"units\undead\Tichondrius\Tichondrius" +C;X4;K0 +C;X5;K"Tichondrius" +C;X6;K0 +C;X7;K"tichondrius" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y681;K"Uvar" +C;X2;K"z1" +C;X3;K"units\undead\Tichondrius\Tichondrius" +C;X4;K0 +C;X5;K"Varimathras" +C;X6;K0 +C;X7;K"varimathras" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y682;K"Uvng" +C;X2;K"z1" +C;X3;K"units\undead\HeroDreadLord\HeroDreadLord" +C;X4;K0 +C;X5;K"HeroDreadLord" +C;X6;K0 +C;X7;K"vengyr" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y683;K"Uwar" +C;X2;K"z1" +C;X3;K"units\demon\Warlock\Warlock" +C;X4;K0 +C;X5;K"Warlock" +C;X6;K0 +C;X7;K"archimonde" +C;X8;K"UUnit16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.1 +C;X23;K1 +C;X24;K5 +C;X25;K5 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K100 +C;X47;K100 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y684;K"Hgam" +C;X2;K"z1" +C;X3;K"units\other\HeroArchMageGhost\HeroArchMageGhost" +C;X4;K0 +C;X5;K"HeroArchMage" +C;X6;K0 +C;X7;K"ghostlyarchmage" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K260 +C;X30;K260 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y685;K"eilw" +C;X2;K"z2" +C;X3;K"units\other\IllidanEvilCaged\IllidanEvilCaged" +C;X4;K0 +C;X5;K"PrisonWagon" +C;X6;K0 +C;X7;K"illidanwagon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y686;K"enec" +C;X2;K"z2" +C;X3;K"units\nightelf\Runner\Runner" +C;X4;K0 +C;X5;K"Runner" +C;X6;K0 +C;X7;K"nightelfrunner" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y687;K"ensh" +C;X2;K"z2" +C;X3;K"units\nightelf\Huntress\Huntress" +C;X4;K0 +C;X5;K"Naisha" +C;X6;K0 +C;X7;K"naisha" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K125 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y688;K"eshd" +C;X2;K"z2" +C;X3;K"units\nightelf\Shandris\Shandris" +C;X4;K0 +C;X5;K"Shandris" +C;X6;K0 +C;X7;K"shandris" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y689;K"etrs" +C;X2;K"z2" +C;X3;K"units\nightelf\NightElfTransportShip\NightElfTransportShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"nightelftransportship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y690;K"hbew" +C;X2;K"z2" +C;X3;K"units\other\BloodElfWagon\BloodElfWagon" +C;X4;K0 +C;X6;K0 +C;X7;K"bloodelfwagon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y691;K"hcth" +C;X2;K"z2" +C;X3;K"units\human\TheCaptain\TheCaptain" +C;X4;K0 +C;X5;K"Captain" +C;X6;K0 +C;X7;K"thecaptain" +C;X8;K" " +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y692;K"hhdl" +C;X2;K"z2" +C;X3;K"units\human\KnightNoRider\KnightNoRider" +C;X4;K0 +C;X5;K"KnightNoRider" +C;X6;K0 +C;X7;K"riderlesshorse" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y693;K"hhes" +C;X2;K"z2" +C;X3;K"units\human\TheCaptain\TheCaptain" +C;X4;K0 +C;X5;K"HighElfSwordsman" +C;X6;K0 +C;X7;K"highelvenswordsman" +C;X8;K" " +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K180 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y694;K"hrdh" +C;X2;K"z2" +C;X3;K"units\critters\PackHorse\PackHorse" +C;X4;K0 +C;X5;K"KnightNoRider" +C;X6;K0 +C;X7;K"packhorse" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y695;K"Naka" +C;X2;K"z1" +C;X3;K"units\other\DranaiAkama\DranaiAkama" +C;X4;K0 +C;X5;K"Akama" +C;X6;K0 +C;X7;K"akama" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y696;K"nsw1" +C;X2;K"z2" +C;X3;K"units\creeps\FelstalkerPurple\FelstalkerPurple" +C;X4;K0 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"spiritbeast" +C;X8;K"felstalkersum" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y697;K"nsw2" +C;X2;K"z2" +C;X3;K"units\creeps\FelstalkerPurple\FelstalkerPurple" +C;X4;K0 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"spiritbeast2" +C;X8;K"felstalkersum" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.7 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y698;K"nsw3" +C;X2;K"z2" +C;X3;K"units\creeps\FelstalkerPurple\FelstalkerPurple" +C;X4;K0 +C;X5;K"Felhound" +C;X6;K0 +C;X7;K"spiritbeast3" +C;X8;K"felstalkersum" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K220 +C;X39;K220 +C;X40;K220 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y699;K"ncat" +C;X2;K"z2" +C;X3;K"units\orc\catapult\catapult" +C;X4;K2 +C;X5;K"Catapult" +C;X6;K0 +C;X7;K"demolisherdraenei" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K45 +C;X25;K45 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K280 +C;X45;K280 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y700;K"nbee" +C;X2;K"z2" +C;X3;K"units\critters\HighElfPeasant\HighElfPeasant" +C;X4;K0 +C;X5;K"BloodElfEngineer" +C;X6;K0 +C;X7;K"bloodelfengineer" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y701;K"nbel" +C;X2;K"z2" +C;X3;K"units\other\BloodElfLieutenant\BloodElfLieutenant" +C;X4;K0 +C;X5;K"SpellBreaker" +C;X6;K0 +C;X7;K"bloodelflieutenant" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K300 +C;X30;K300 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y702;K"nbsp" +C;X2;K"z2" +C;X3;K"doodads\northrend\water\Battleship\Battleship" +C;X4;K0 +C;X6;K0 +C;X7;K"battleship" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y703;K"nchg" +C;X2;K"z2" +C;X3;K"units\demon\ChaosGrunt\ChaosGrunt" +C;X4;K0 +C;X5;K"ChaosGrunt" +C;X6;K0 +C;X7;K"chaosgrunt" +C;X8;K"OUnit20" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y704;K"nchr" +C;X2;K"z2" +C;X3;K"units\demon\ChaosWolfRider\ChaosWolfRider" +C;X4;K0 +C;X5;K"WolfRider" +C;X6;K0 +C;X7;K"chaoswolfrider" +C;X8;K"OUnit21" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K360 +C;X30;K360 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y705;K"nchw" +C;X2;K"z2" +C;X3;K"units\demon\ChaosWarlock\ChaosWarlock" +C;X4;K0 +C;X5;K"Shaman" +C;X6;K0 +C;X7;K"chaoswarlock" +C;X8;K"OUnit19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K150 +C;X45;K150 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y706;K"nckb" +C;X2;K"z2" +C;X3;K"units\demon\ChaosKotoBeast\ChaosKotoBeast" +C;X4;K0 +C;X5;K"KotoBeast" +C;X6;K0 +C;X7;K"chaoskotobeast" +C;X8;K"OUnit22" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K310 +C;X45;K280 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y707;K"ncpn" +C;X2;K"z2" +C;X3;K"units\demon\ChaosPeon\ChaosPeon" +C;X4;K0 +C;X5;K"Peon" +C;X6;K0 +C;X7;K"chaospeon" +C;X8;K"OUnit23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y708;K"ndmu" +C;X2;K"z2" +C;X3;K"units\other\DalaranMutant\DalaranMutant" +C;X4;K0 +C;X5;K"Zombie" +C;X6;K0 +C;X7;K"dalaranmutant" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y709;K"ndrd" +C;X2;K"z2" +C;X3;K"units\other\DranaiWhite\DranaiWhite" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneidarkslayer" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y710;K"ndrn" +C;X2;K"z2" +C;X3;K"units\other\DranaiWhite\DranaiWhite" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneivindicator" +C;X8;K"draenei" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y711;K"ndrt" +C;X2;K"z2" +C;X3;K"units\other\Dranai\Dranai" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneistalker" +C;X8;K"draenei" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y712;K"ndrf" +C;X2;K"z2" +C;X3;K"units\other\Dranai\Dranai" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneiguardian" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.85 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K0.8 +C;X38;K255 +C;X39;K165 +C;X40;K165 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y713;K"ndrh" +C;X2;K"z2" +C;X3;K"units\other\DranaiMage\DranaiMage" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneiharbinger" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.05 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K140 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y714;K"ndrj" +C;X2;K"z2" +C;X3;K"units\other\DalaranReject\DalaranReject" +C;X4;K0 +C;X5;K"Zombie" +C;X6;K0 +C;X7;K"dalaranreject" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.45 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K200 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y715;K"ndrm" +C;X2;K"z2" +C;X3;K"units\other\DranaiMage\DranaiMage" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneidisciple" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.85 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K255 +C;X39;K255 +C;X40;K140 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y716;K"ndrp" +C;X2;K"z2" +C;X3;K"units\other\DranaiWhite\DranaiWhite" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneiprotector" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.95 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K0.9 +C;X38;K165 +C;X39;K165 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y717;K"ndrs" +C;X2;K"z2" +C;X3;K"units\other\DranaiMage\DranaiMage" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneiseer" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K185 +C;X30;K185 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y718;K"ndrw" +C;X2;K"z2" +C;X3;K"units\other\Dranai\Dranai" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneiwatcher" +C;X8;K"draenei" +C;X9;K0 +C;X10;K0 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.05 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y719;K"ndrl" +C;X2;K"z2" +C;X3;K"units\other\Dranai\Dranai" +C;X4;K0 +C;X5;K"Draenei" +C;X6;K0 +C;X7;K"draeneilaborer" +C;X8;K"draenei" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K0.8 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.8 +C;X38;K210 +C;X39;K210 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y720;K"ndsa" +C;X2;K"n2" +C;X3;K"units\creeps\ThunderLizardVizier\ThunderLizardVizier" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"draeneisalamander" +C;X8;K"salamander" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K190 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K1 +C;X1;Y721;K"negz" +C;X2;K"z2" +C;X3;K"units\creeps\GoblinSapper\GoblinSapper" +C;X4;K0 +C;X5;K"GoblinSapper" +C;X6;K0 +C;X7;K"engineergazlowe" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y722;K"nemi" +C;X2;K"z2" +C;X3;K"units\creeps\HumanMage\HumanMage" +C;X4;K0 +C;X5;K"HumanMage" +C;X6;K0 +C;X7;K"emissary" +C;X8;K"HUnit16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y723;K"nfgl" +C;X2;K"z2" +C;X3;K"units\other\FleshGolem\FleshGolem" +C;X4;K0 +C;X5;K"abomination" +C;X6;K0 +C;X7;K"fleshgolem" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"WoodMediumBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.75 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y724;K"ngbl" +C;X2;K"z2" +C;X3;K"units\creeps\IronGolem\IronGolem" +C;X4;K0 +C;X5;K"IronGolem" +C;X6;K0 +C;X7;K"goblinblaster" +C;X8;K"goblin" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Metal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y725;K"nhea" +C;X2;K"z2" +C;X3;K"units\creeps\HighElfArcher\HighElfArcher" +C;X4;K0 +C;X5;K"Archer" +C;X6;K0 +C;X7;K"highelvenarcher" +C;X8;K"HUnit20" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y726;K"nhef" +C;X2;K"z2" +C;X3;K"units\critters\ElfVillagerWoman\ElfVillagerWoman" +C;X4;K0 +C;X5;K"VillagerWoman" +C;X6;K0 +C;X7;K"highelvenfemale" +C;X8;K"HUnit17" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y727;K"nhem" +C;X2;K"z2" +C;X3;K"units\critters\HighElfPeasant\HighElfPeasant" +C;X4;K0 +C;X5;K"VillagerMan" +C;X6;K0 +C;X7;K"highelvenmale" +C;X8;K"HUnit19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y728;K"nhew" +C;X2;K"z2" +C;X3;K"units\critters\HighElfPeasant\HighElfPeasant" +C;X4;K0 +C;X5;K"BloodElfWorker" +C;X6;K0 +C;X7;K"bloodelfworker" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y729;K"njks" +C;X2;K"z2" +C;X3;K"units\creeps\Bandit\Bandit" +C;X4;K0 +C;X5;K"Bandit" +C;X6;K0 +C;X7;K"jailorkassan" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.5 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y730;K"nmdm" +C;X2;K"z2" +C;X3;K"units\creeps\Medivh\Medivh" +C;X4;K0 +C;X5;K"Medivh" +C;X6;K0 +C;X7;K"medivhmorphed" +C;X8;K"HUnit23" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y731;K"nmed" +C;X2;K"z2" +C;X3;K"units\creeps\Medivh\Medivh" +C;X4;K0 +C;X5;K"Medivh" +C;X6;K0 +C;X7;K"medivh" +C;X8;K"HUnit22" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y732;K"nmpe" +C;X2;K"z2" +C;X3;K"units\creeps\MurgulSlave\MurgulSlave" +C;X4;K0 +C;X5;K"murloc" +C;X6;K0 +C;X7;K"murgulslave" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K180 +C;X30;K180 +C;X31;K0 +C;X32;K"MetalLightChop" +C;X33;K"AxeMediumChop" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y733;K"nmsh" +C;X2;K"z2" +C;X3;K"units\creeps\GrizzlyBear\GrizzlyBear" +C;X4;K0 +C;X5;K"GrizzlyBear" +C;X6;K0 +C;X7;K"misha" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.4 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y734;K"nser" +C;X2;K"z2" +C;X3;K"units\creeps\BlackDragon\BlackDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"searinox" +C;X8;K"HUnit24" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K200 +C;X40;K200 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K220 +C;X45;K220 +C;X46;K110 +C;X47;K110 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y735;K"nspc" +C;X2;K"z2" +C;X3;K"doodads\underground\terrain\SupportBeam\SupportBeam" +C;X4;K0 +C;X6;K0 +C;X7;K"supportcolumn" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K80 +C;X45;K80 +C;X46;K40 +C;X47;K40 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y736;K"nssn" +C;X2;K"z2" +C;X3;K"units\creeps\assassin\assassin" +C;X4;K0 +C;X5;K"Assassin" +C;X6;K0 +C;X7;K"nightelfassassin" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y737;K"nthr" +C;X2;K"z2" +C;X3;K"units\creeps\GreenDragon\GreenDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"tharifas" +C;X8;K"EUnit14" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.25 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.4 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y738;K"nw2w" +C;X2;K"z2" +C;X3;K"units\creeps\ChaosWarlockGreen\ChaosWarlockGreen" +C;X4;K0 +C;X5;K"Shaman" +C;X6;K0 +C;X7;K"war2warlock" +C;X8;K"OUnit18" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.15 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K250 +C;X30;K250 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K150 +C;X45;K150 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y739;K"nwat" +C;X2;K"z2" +C;X3;K"units\creeps\watcher\watcher" +C;X4;K0 +C;X5;K"Watcher" +C;X6;K0 +C;X7;K"watcher" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K20 +C;X28;K0 +C;X29;K290 +C;X30;K290 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y740;K"odkt" +C;X2;K"z2" +C;X3;K"units\creeps\OrcWarlockRed\OrcWarlockRed" +C;X4;K0 +C;X5;K"ShamanX" +C;X6;K0 +C;X7;K"drakthul" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.2 +C;X38;K255 +C;X39;K220 +C;X40;K255 +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y741;K"ogrk" +C;X2;K"z2" +C;X3;K"units\orc\Grunt\Grunt" +C;X4;K0 +C;X5;K"Grunt" +C;X6;K0 +C;X7;K"garthok" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y742;K"ojgn" +C;X2;K"z2" +C;X3;K"Units\Critters\OrcJuggernaught\OrcJuggernaught" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"juggernaut" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y743;K"omtg" +C;X2;K"z2" +C;X3;K"units\demon\ChaosWarlord\ChaosWarlord" +C;X4;K0 +C;X5;K"ChaosWarlord" +C;X6;K0 +C;X7;K"mathog" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y744;K"onzg" +C;X2;K"z2" +C;X3;K"units\orc\WolfRider\WolfRider" +C;X4;K0 +C;X5;K"Nazgrel" +C;X6;K0 +C;X7;K"nazgrel" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.6 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K360 +C;X30;K360 +C;X31;K0 +C;X32;K"MetalMediumSlice" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K190 +C;X45;K190 +C;X46;K75 +C;X47;K75 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y745;K"oosc" +C;X2;K"z2" +C;X3;K"units\orc\KotoBeastNoRider\KotoBeastNoRider" +C;X4;K0 +C;X5;K"KotoBeastNoRider" +C;X6;K0 +C;X7;K"kotobeastnorider" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K45 +C;X25;K10 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K240 +C;X45;K240 +C;X46;K120 +C;X47;K120 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y746;K"oswy" +C;X2;K"z2" +C;X3;K"units\orc\SpiritWyvern\SpiritWyvern" +C;X4;K0 +C;X5;K"Hippogryph" +C;X6;K0 +C;X7;K"spiritwyvern" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K0 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y747;K"ovlj" +C;X2;K"z2" +C;X3;K"units\orc\WitchDoctor\WitchDoctor" +C;X4;K0 +C;X5;K"WitchDoctor" +C;X6;K0 +C;X7;K"voljin" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y748;K"owar" +C;X2;K"z2" +C;X3;K"units\demon\ChaosWarlord\ChaosWarlord" +C;X4;K0 +C;X5;K"ChaosWarlord" +C;X6;K0 +C;X7;K"chaoswarlord" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K1 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K60 +C;X47;K60 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y749;K"ownr" +C;X2;K"z2" +C;X3;K"units\orc\RiderlessWyvern\RiderlessWyvern" +C;X4;K0 +C;X5;K"Hippogryph" +C;X6;K0 +C;X7;K"riderlesswyvern" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.75 +C;X23;K1 +C;X24;K33 +C;X25;K0 +C;X26;K2 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K180 +C;X45;K180 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y750;K"uabc" +C;X2;K"z2" +C;X3;K"units\undead\AbominationCIN\AbominationCIN" +C;X4;K0 +C;X5;K"Abomination" +C;X6;K0 +C;X7;K"abominationcinematic" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.3 +C;X22;K2.1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K210 +C;X30;K210 +C;X31;K0 +C;X32;K"MetalHeavyChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K230 +C;X45;K230 +C;X46;K95 +C;X47;K95 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y751;K"uarb" +C;X2;K"z2" +C;X3;K"units\undead\UndeadAirBarge\UndeadAirBarge" +C;X4;K0 +C;X6;K0 +C;X7;K"airbarge" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K80 +C;X47;K80 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y752;K"ubdd" +C;X2;K"z2" +C;X3;K"units\undead\FrostWyrm\FrostWyrm" +C;X4;K0 +C;X5;K"FrostWyrm" +C;X6;K0 +C;X7;K"azurelordfrostwyrm" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K2.5 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K350 +C;X45;K350 +C;X46;K175 +C;X47;K175 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y753;K"ubdr" +C;X2;K"z2" +C;X3;K"units\creeps\AzureDragon\AzureDragon" +C;X4;K0 +C;X5;K"AzureDragon" +C;X6;K0 +C;X7;K"azureloredragon" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.7 +C;X23;K1 +C;X24;K33 +C;X25;K25 +C;X26;K2 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K230 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K2.25 +C;X38;K200 +C;X39;K180 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K400 +C;X45;K400 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y754;K"ubot" +C;X2;K"z2" +C;X3;K"units\creeps\UndeadTransportShip\UndeadTransportShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"undeadtransportship" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y755;K"udes" +C;X2;K"z2" +C;X3;K"units\creeps\UndeadDestroyerShip\UndeadDestroyerShip" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"undeaddestroyer" +C;X8;K"boat" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K200 +C;X45;K200 +C;X46;K90 +C;X47;K90 +C;X48;K1 +C;X49;K1 +C;X50;K0 +C;X51;K0 +C;X1;Y756;K"uktg" +C;X2;K"z2" +C;X3;K"units\undead\KelThuzadGhost\KelThuzadGhost" +C;X4;K0 +C;X5;K"KelThuzadLich" +C;X6;K0 +C;X7;K"kelthuzadghost" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K125 +C;X39;K255 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y757;K"uktn" +C;X2;K"z2" +C;X3;K"units\undead\Kelthuzad\Kelthuzad" +C;X4;K0 +C;X5;K"KelThuzadNecro" +C;X6;K0 +C;X7;K"kelthuzadnecro" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.25 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1.15 +C;X38;K125 +C;X39;K255 +C;X40;K200 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K140 +C;X45;K140 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y758;K"uswb" +C;X2;K"z2" +C;X3;K"units\creeps\BansheeGhost\BansheeGhost" +C;X4;K0 +C;X5;K"Banshee" +C;X6;K0 +C;X7;K"sylvanusbanshee" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1.3 +C;X38;K120 +C;X39;K150 +C;X40;K255 +C;X41;K"_" +C;X42;K"ShadowFlyer" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y759;K"hprt" +C;X2;K"z2" +C;X3;K"doodads\cinematic\ShimmeringPortal\ShimmeringPortal" +C;X4;K0 +C;X6;K0 +C;X7;K"shimmeringportal" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K25 +C;X25;K25 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y760;K"haro" +C;X2;K"z3" +C;X3;K"buildings\other\ArcaneObservatory\ArcaneObservatory" +C;X4;K0 +C;X5;K"ArcaneObservatory" +C;X6;K0 +C;X7;K"arcaneobservatory" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K6.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K100 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowArcaneObservatory" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y761;K"nbfl" +C;X2;K"z3" +C;X3;K"buildings\other\FountainOfLifeBlood\FountainOfLifeBlood" +C;X4;K0 +C;X5;K"FountainOfLifeBlood" +C;X6;K0 +C;X7;K"bloodfountain" +C;X8;K"OBuilding14" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y762;K"nbsm" +C;X2;K"z3" +C;X3;K"buildings\other\BookOfSummoning\BookOfSummoning" +C;X4;K0 +C;X5;K"BookOfSummoning" +C;X6;K0 +C;X7;K"bookofsummoning" +C;X8;K"UBuilding19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y763;K"nbt1" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"bouldertower" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y764;K"nbt2" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"bouldertowerupgrade" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y765;K"nbwd" +C;X2;K"z3" +C;X3;K"buildings\other\BarrowDens\BarrowDens" +C;X4;K0 +C;X5;K"BarrowDen" +C;X6;K0 +C;X7;K"barrowden" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.2 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDB" +C;X42;K"_" +C;X43;K"ShadowHuntersHall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y766;K"ncap" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedAncientProtector\CorruptedAncientProtector" +C;X4;K0 +C;X5;K"AncientProtector" +C;X6;K0 +C;X7;K"corruptedancientprotector" +C;X8;K"EBuilding17" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K125 +C;X30;K125 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ESMA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientProtector" +C;X44;K300 +C;X45;K300 +C;X46;K125 +C;X47;K125 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y767;K"ncaw" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedAncientofWar\CorruptedAncientofWar" +C;X4;K0 +C;X5;K"AncientOfWar" +C;X6;K0 +C;X7;K"corruptedancientofwar" +C;X8;K"EBuilding18" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowAncientofWar" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y768;K"ncmw" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedMoonWell\CorruptedMoonWell" +C;X4;K0 +C;X5;K"MoonWell" +C;X6;K0 +C;X7;K"corruptedmoonwell" +C;X8;K"EBuilding13" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"ESMB" +C;X42;K"_" +C;X43;K"ShadowMoonWell" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y769;K"ncta" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedTreeofLife\CorruptedTreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"corruptedtreeofages" +C;X8;K"EBuilding15" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.15 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y770;K"ncte" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedTreeofLife\CorruptedTreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"corruptedtreeofeternity" +C;X8;K"EBuilding16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1.3 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y771;K"nctl" +C;X2;K"z3" +C;X3;K"buildings\demon\CorruptedTreeofLife\CorruptedTreeofLife" +C;X4;K0 +C;X5;K"TreeofLife" +C;X6;K0 +C;X7;K"corruptedtreeoflife" +C;X8;K"EBuilding14" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.4 +C;X22;K4.75 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K100 +C;X30;K100 +C;X31;K0 +C;X32;K"WoodHeavyBash" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"EMDA" +C;X42;K"Shadow" +C;X43;K"ShadowTreeofLife" +C;X44;K500 +C;X45;K500 +C;X46;K200 +C;X47;K200 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y772;K"ndfl" +C;X2;K"z3" +C;X3;K"buildings\other\FountainOfLifeDefiled\FountainOfLifeDefiled" +C;X4;K0 +C;X5;K"FountainOfLifeDefiled" +C;X6;K0 +C;X7;K"defiledfountainoflife" +C;X8;K"OBuilding15" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y773;K"ndgt" +C;X2;K"z3" +C;X3;K"buildings\other\DalaranGuardTower\DalaranGuardTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"dalaranguardtower" +C;X8;K"HBuilding21" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y774;K"ndke" +C;X2;K"z3" +C;X3;K"buildings\other\DarkPortal2\DarkPortal2" +C;X4;K0 +C;X6;K0 +C;X7;K"darkportalse" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K8.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"DPSE" +C;X42;K"_" +C;X43;K"ShadowPortalSE" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y775;K"ndkw" +C;X2;K"z3" +C;X3;K"buildings\other\DarkPortal\DarkPortal" +C;X4;K0 +C;X6;K0 +C;X7;K"darkportalsw" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K8.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"DPSW" +C;X42;K"_" +C;X43;K"ShadowPortalSW" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y776;K"ndmg" +C;X2;K"z3" +C;X3;K"buildings\demon\DemonGate\DemonGate" +C;X4;K0 +C;X5;K"DemonGate" +C;X6;K0 +C;X7;K"demongate" +C;X8;K"UBuilding16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"NDGS" +C;X42;K"_" +C;X43;K"ShadowDemonGate" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y777;K"ndrb" +C;X2;K"z3" +C;X3;K"buildings\other\DragonBuilding\DragonBuilding" +C;X4;K0 +C;X5;K"DragonRoost" +C;X6;K0 +C;X7;K"dragonbuilding" +C;X8;K"OBuilding13" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OLAR" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y778;K"ndt1" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"coldtower" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y779;K"ndt2" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"coldtowerupgrade" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y780;K"nef0" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding0\ElvenVillageBuilding0" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm0" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y781;K"nef1" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding1\ElvenVillageBuilding1" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm1" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y782;K"nef2" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding2\ElvenVillageBuilding2" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm2" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y783;K"nef3" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding3\ElvenVillageBuilding3" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm3" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y784;K"nef4" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding4\ElvenVillageBuilding4" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm4" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y785;K"nef5" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding5\ElvenVillageBuilding5" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm5" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y786;K"nef6" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding6\ElvenVillageBuilding6" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm6" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y787;K"nef7" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenVillageBuilding7\ElvenVillageBuilding7" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm7" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y788;K"nefm" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFarm\ElvenFarm" +C;X4;K0 +C;X5;K"ElvenFarm" +C;X6;K0 +C;X7;K"elvenfarm" +C;X8;K"HBuilding23" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y789;K"negf" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenGuardFireTower\ElvenGuardFireTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"earthfurytower" +C;X8;K"HBuilding19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y790;K"negm" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenGuardMagicTower\ElvenGuardMagicTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"skyfurytower" +C;X8;K"HBuilding18" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y791;K"negt" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenGuardTower\ElvenGuardTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"elvenguardtower" +C;X8;K"HBuilding20" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y792;K"net1" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"energytower" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y793;K"net2" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"energytowerupgrade" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y794;K"nfnp" +C;X2;K"z3" +C;X3;K"buildings\other\FountainOfPower\FountainOfPower" +C;X4;K0 +C;X5;K"FountainOfLife" +C;X6;K0 +C;X7;K"purplefountain" +C;X8;K"EBuilding19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OMED" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y795;K"nfrm" +C;X2;K"z3" +C;X3;K"buildings\other\Frostmourne\Frostmourne" +C;X4;K0 +C;X5;K"Frostmourne" +C;X6;K0 +C;X7;K"frostmourne" +C;X8;K"UBuilding18" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y796;K"nfrt" +C;X2;K"z3" +C;X3;K"buildings\other\FruitStand\FruitStand" +C;X4;K0 +C;X6;K0 +C;X7;K"fruitstand" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y797;K"nft1" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"flametower" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y798;K"nft2" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"flametowerupgrade" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y799;K"nfv0" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuilding0\ElvenFishVillageBuilding0" +C;X4;K0 +C;X6;K0 +C;X7;K"elvenfishingvillage0" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y800;K"nfv1" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuilding1\ElvenFishVillageBuilding1" +C;X4;K0 +C;X6;K0 +C;X7;K"elvenfishingvillage1" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y801;K"nfv2" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuilding2\ElvenFishVillageBuilding2" +C;X4;K0 +C;X6;K0 +C;X7;K"elvenfishingvillage2" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y802;K"nfv3" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuilding3\ElvenFishVillageBuilding3" +C;X4;K0 +C;X6;K0 +C;X7;K"elvenfishingvillage3" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y803;K"nfv4" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuilding4\ElvenFishVillageBuilding4" +C;X4;K0 +C;X6;K0 +C;X7;K"elvenfishingvillage4" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y804;K"ngob" +C;X2;K"z3" +C;X3;K"buildings\other\BridgeObelisk\BridgeObelisk" +C;X4;K0 +C;X6;K0 +C;X7;K"gemstoneobelisk" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y805;K"nhcn" +C;X2;K"z3" +C;X3;K"buildings\other\HornOfCenarius\HornOfCenarius" +C;X4;K0 +C;X5;K"HornOfCenarius" +C;X6;K0 +C;X7;K"hornofcenarius" +C;X8;K"EBuilding19" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y806;K"nheb" +C;X2;K"z3" +C;X3;K"buildings\other\MageTower\MageTower" +C;X4;K0 +C;X5;K"MageTower" +C;X6;K0 +C;X7;K"highelfbarracks" +C;X8;K"HBuilding22" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowHighElvenBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y807;K"nico" +C;X2;K"z3" +C;X3;K"doodads\cinematic\IcecrownObelisk\IcecrownObelisk" +C;X4;K0 +C;X6;K0 +C;X7;K"icecrownobelisk" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y808;K"nitb" +C;X2;K"z3" +C;X3;K"buildings\other\IceCrownTreasureBox\IceCrownTreasureBox" +C;X4;K0 +C;X6;K0 +C;X7;K"treasurebox" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"ShadowMagicVault" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y809;K"nmgv" +C;X2;K"z3" +C;X3;K"buildings\other\MagicVault\MagicVault" +C;X4;K0 +C;X6;K0 +C;X7;K"magicvault" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"ShadowMagicVault" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y810;K"nnad" +C;X2;K"z3" +C;X3;K"buildings\naga\AltarOfDepths\AltarOfDepths" +C;X4;K0 +C;X5;K"AltarOfDepths" +C;X6;K0 +C;X7;K"altarofthedepths" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowAltarOfDepths" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y811;K"nnfm" +C;X2;K"z3" +C;X3;K"buildings\naga\CoralBed\CoralBed" +C;X4;K0 +C;X5;K"CoralBed" +C;X6;K0 +C;X7;K"coralbed" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y812;K"nnsa" +C;X2;K"z3" +C;X3;K"buildings\naga\ShrineOfAshjara\ShrineOfAshjara" +C;X4;K0 +C;X5;K"ShrineOfAzshara" +C;X6;K0 +C;X7;K"shrineofazshara" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K0.9 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HMED" +C;X42;K"_" +C;X43;K"ShadowShrineOfAzshara" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y813;K"nnsg" +C;X2;K"z3" +C;X3;K"buildings\naga\SpawningGrounds\SpawningGrounds" +C;X4;K0 +C;X5;K"SpawningGrounds" +C;X6;K0 +C;X7;K"spawninggrounds" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HLAR" +C;X42;K"_" +C;X43;K"ShadowHumanBarracks" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y814;K"nntg" +C;X2;K"z3" +C;X3;K"buildings\naga\TidalGuardian\TidalGuardian" +C;X4;K0 +C;X5;K"TidalGuardian" +C;X6;K0 +C;X7;K"tidalguardian" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.5 +C;X22;K3.25 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowTrollBurrow" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y815;K"nntt" +C;X2;K"z3" +C;X3;K"buildings\naga\TempleofTides\TempleofTides" +C;X4;K0 +C;X5;K"TempleOfTides" +C;X6;K0 +C;X7;K"templeoftides" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K5.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"NLAR" +C;X42;K"_" +C;X43;K"ShadowTempleOfTides" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y816;K"npgf" +C;X2;K"z3" +C;X3;K"buildings\other\PigFarm\PigFarm" +C;X4;K0 +C;X5;K"PigFarm" +C;X6;K0 +C;X7;K"pigfarm" +C;X8;K"OBuilding12" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y817;K"npgr" +C;X2;K"z3" +C;X3;K"buildings\other\PowerGenerator\PowerGenerator" +C;X4;K0 +C;X6;K0 +C;X7;K"powergenerator" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y818;K"nshr" +C;X2;K"z3" +C;X3;K"buildings\other\SacrificialAltar\SacrificialAltar" +C;X4;K0 +C;X5;K"SacrificialAltar" +C;X6;K0 +C;X7;K"shrine" +C;X8;K"UBuilding14" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowLarge" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y819;K"ntt1" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"deathtower" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y820;K"ntx2" +C;X2;K"z3" +C;X3;K"buildings\other\TowerDefenseTower\TowerDefenseTower" +C;X4;K0 +C;X5;K"ElvenGuardTower" +C;X6;K0 +C;X7;K"deathtowerupgrade" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.5 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"HSMA" +C;X42;K"_" +C;X43;K"ShadowCannonTower" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y821;K"nvr0" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuildingRuined0\ElvenFishVillageBuildingRuined0" +C;X4;K0 +C;X6;K0 +C;X7;K"ruinedelvenfishingvillage0" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y822;K"nvr1" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuildingRuined1\ElvenFishVillageBuildingRuined1" +C;X4;K0 +C;X6;K0 +C;X7;K"ruinedelvenfishingvillage1" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y823;K"nvr2" +C;X2;K"z3" +C;X3;K"buildings\other\ElvenFishVillageBuildingRuined2\ElvenFishVillageBuildingRuined2" +C;X4;K0 +C;X6;K0 +C;X7;K"ruinedelvenfishingvillage2" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y824;K"nwc1" +C;X2;K"z3" +C;X3;K"buildings\other\WyvernCage\WyvernCage" +C;X4;K0 +C;X6;K0 +C;X7;K"wyverncage1" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y825;K"nwc2" +C;X2;K"z3" +C;X3;K"buildings\other\WyvernCage2\WyvernCage2" +C;X4;K0 +C;X6;K0 +C;X7;K"wyverncage2" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.3 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y826;K"ocbw" +C;X2;K"z3" +C;X3;K"buildings\orc\TrollBurrow\TrollBurrow" +C;X4;K0 +C;X5;K"TrollBurrow" +C;X6;K0 +C;X7;K"chaosorcburrow" +C;X8;K"OBuilding16" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K2.75 +C;X23;K1 +C;X24;K15 +C;X25;K15 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"ShadowTrollBurrow" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y827;K"nzin" +C;X2;K"z3" +C;X3;K"Doodads\Terrain\LOSBlocker\IntentionallyLeftBlank" +C;X4;K0 +C;X6;K0 +C;X7;K"zoneindicator" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K1 +C;X16;K1 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y828;K"nbse" +C;X2;K"z3" +C;X3;K"Doodads\Cinematic\RessurectionStoneSE\RessurectionStoneSE" +C;X4;K0 +C;X6;K0 +C;X7;K"bindstonese" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y829;K"nbsw" +C;X2;K"z3" +C;X3;K"Doodads\Cinematic\RessurectionStoneSW\RessurectionStoneSW" +C;X4;K0 +C;X6;K0 +C;X7;K"bindstonesw" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K0 +C;X14;K1 +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K3.5 +C;X23;K1 +C;X24;K7 +C;X25;K7 +C;X26;K4 +C;X27;K50 +C;X28;K0 +C;X29;K200 +C;X30;K200 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Stone" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"OSMA" +C;X42;K"_" +C;X43;K"BuildingShadowSmall" +C;X48;K1 +C;X49;K0 +C;X50;K200 +C;X51;K0 +C;X1;Y830;K"zcso" +C;X2;K"z9" +C;X3;K"Units\Critters\ChaosSpaceOrc\ChaosSpaceOrc" +C;X4;K0 +C;X5;K"ChaosSpaceOrc" +C;X6;K0 +C;X7;K"chaosspaceorc" +C;X8;K"ZspecialChaosSpaceOrc" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y831;K"zhyd" +C;X2;K"z9" +C;X3;K"Units\Critters\Hydralisk\Hydralisk" +C;X4;K0 +C;X5;K"Hydralisk" +C;X6;K0 +C;X7;K"hydralisk" +C;X8;K"ZspecialHydralisk" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y832;K"zjug" +C;X2;K"z9" +C;X3;K"Units\Critters\OrcJuggernaught\OrcJuggernaught" +C;X4;K0 +C;X5;K"Boat" +C;X6;K0 +C;X7;K"orcjuggernaut" +C;X8;K"ZspecialOrcJuggernaut" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K0 +C;X25;K0 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Wood" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y833;K"zmar" +C;X2;K"z9" +C;X3;K"Units\Critters\Marine\Marine" +C;X4;K0 +C;X5;K"TerranMarine" +C;X6;K0 +C;X7;K"marine" +C;X8;K"ZspecialMarine" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y834;K"zshv" +C;X2;K"z9" +C;X3;K"Units\Critters\Shoveler\Shoveler" +C;X4;K0 +C;X5;K"Kobold" +C;X6;K0 +C;X7;K"theshoveler" +C;X8;K"ZspecialShoveler" +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K1 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K30 +C;X28;K0 +C;X29;K150 +C;X30;K150 +C;X31;K0 +C;X32;K"MetalMediumChop" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K0.85 +C;X38;K255 +C;X39;K255 +C;X40;K165 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K100 +C;X45;K100 +C;X46;K45 +C;X47;K45 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y835;K"zsmc" +C;X2;K"z9" +C;X3;K"Units\Critters\SammyCube\SammyCube" +C;X4;K0 +C;X5;K"SammyCube" +C;X6;K0 +C;X7;K"sammycube" +C;X8;K"ZspecialSammyCube" +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K1 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1.2 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K160 +C;X45;K160 +C;X46;K70 +C;X47;K70 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y836;K"zzrg" +C;X2;K"z9" +C;X3;K"Units\Critters\zergling\zergling" +C;X4;K0 +C;X5;K"Zergling" +C;X6;K0 +C;X7;K"zergling" +C;X8;K"ZspecialZergling" +C;X9;K0 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K1 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Flesh" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"Shadow" +C;X43;K"_" +C;X44;K120 +C;X45;K120 +C;X46;K50 +C;X47;K50 +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +C;X1;Y837;K"nzlc" +C;X2;K"z2" +C;X3;K"doodads\cinematic\lichking\lichking" +C;X4;K0 +C;X6;K0 +C;X7;K"lichking" +C;X9;K1 +C;X10;K1 +C;X11;K1 +C;X12;K0 +C;X13;K"-" +C;X14;K1 +C;X15;K"-" +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K0 +C;X20;K0 +C;X21;K0.15 +C;X22;K4 +C;X23;K1 +C;X24;K10 +C;X25;K10 +C;X26;K"-" +C;X27;K50 +C;X28;K0 +C;X29;K240 +C;X30;K240 +C;X31;K0 +C;X32;K"_" +C;X33;K"_" +C;X34;K-1 +C;X35;K0 +C;X36;K"Ethereal" +C;X37;K1 +C;X38;K255 +C;X39;K255 +C;X40;K255 +C;X41;K"_" +C;X42;K"_" +C;X43;K"_" +C;X48;K1 +C;X49;K0 +C;X50;K0 +C;X51;K0 +E diff --git a/share/mpq/units/units/unitweapons.slk b/share/mpq/units/units/unitweapons.slk new file mode 100644 index 0000000..18956d9 --- /dev/null +++ b/share/mpq/units/units/unitweapons.slk @@ -0,0 +1,64530 @@ +ID;PWXL;N;E +B;X79;Y838;D0 +C;X1;Y1;K"unitWeapID" +C;X2;K"sortWeap" +C;X3;K"sort2" +C;X4;K"comment(s)" +C;X5;K"weapsOn" +C;X6;K"acquire" +C;X7;K"minRange" +C;X8;K"castpt" +C;X9;K"castbsw" +C;X10;K"launchX" +C;X11;K"launchY" +C;X12;K"launchZ" +C;X13;K"launchSwimZ" +C;X14;K"impactZ" +C;X15;K"impactSwimZ" +C;X16;K"weapType1" +C;X17;K"targs1" +C;X18;K"showUI1" +C;X19;K"rangeN1" +C;X20;K"RngTst" +C;X21;K"RngBuff1" +C;X22;K"atkType1" +C;X23;K"weapTp1" +C;X24;K"cool1" +C;X25;K"mincool1" +C;X26;K"dice1" +C;X27;K"sides1" +C;X28;K"dmgplus1" +C;X29;K"dmgUp1" +C;X30;K"mindmg1" +C;X31;K"avgdmg1" +C;X32;K"maxdmg1" +C;X33;K"dmgpt1" +C;X34;K"backSw1" +C;X35;K"Farea1" +C;X36;K"Harea1" +C;X37;K"Qarea1" +C;X38;K"Hfact1" +C;X39;K"Qfact1" +C;X40;K"splashTargs1" +C;X41;K"targCount1" +C;X42;K"damageLoss1" +C;X43;K"spillDist1" +C;X44;K"spillRadius1" +C;X45;K"DmgUpg" +C;X46;K"dmod1" +C;X47;K"DPS" +C;X48;K"weapType2" +C;X49;K"targs2" +C;X50;K"showUI2" +C;X51;K"rangeN2" +C;X52;K"RngTst2" +C;X53;K"RngBuff2" +C;X54;K"atkType2" +C;X55;K"weapTp2" +C;X56;K"cool2" +C;X57;K"mincool2" +C;X58;K"dice2" +C;X59;K"sides2" +C;X60;K"dmgplus2" +C;X61;K"dmgUp2" +C;X62;K"mindmg2" +C;X63;K"avgdmg2" +C;X64;K"maxdmg2" +C;X65;K"dmgpt2" +C;X66;K"backSw2" +C;X67;K"Farea2" +C;X68;K"Harea2" +C;X69;K"Qarea2" +C;X70;K"Hfact2" +C;X71;K"Qfact2" +C;X72;K"splashTargs2" +C;X73;K"targCount2" +C;X74;K"damageLoss2" +C;X75;K"spillDist2" +C;X76;K"spillRadius2" +C;X77;K"InBeta" +C;X1;Y2;K"Hamg" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroArchMage" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.85 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y3;K"Hblm" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroBloodMage" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.85 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y4;K"Hmkg" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroMountainKing" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.22 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.15315315315315 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y5;K"Hpal" +C;X2;K"a1" +C;X3;K"uher" +C;X4;K"HeroPaladin" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y6;K"hbot" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"human transport ship" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y7;K"hbsh" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"human battleship" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K900 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K75 +C;X29;K"-" +C;X30;K78 +C;X31;K91.5 +C;X32;K105 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K100 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K45.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y8;K"hdes" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"human frigate" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K70 +C;X12;K30 +C;X13;K30 +C;X14;K60 +C;X15;K30 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K54 +C;X29;K"-" +C;X30;K55 +C;X31;K62 +C;X32;K69 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K25 +C;X36;K35 +C;X37;K50 +C;X38;K0.3 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K59 +C;X47;K41.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y9;K"hdhw" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"blood elf dragon hawk" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.03 +C;X10;K0 +C;X11;K-17 +C;X12;K33 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K18 +C;X29;K"-" +C;X30;K19 +C;X31;K20 +C;X32;K21 +C;X33;K0.43 +C;X34;K0.633 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K11.4285714285714 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y10;K"hfoo" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Footman" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y11;K"hgry" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"GryphonRider" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.5 +C;X10;K12 +C;X11;K-17 +C;X12;K33 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"mline" +C;X24;K2.2 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.8 +C;X34;K0.87 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground,structure,enemy,debris" +C;X41;K1 +C;X42;K0.2 +C;X43;K0 +C;X44;K50 +C;X45;K"-" +C;X46;K"-" +C;X47;K22.7272727272727 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K450 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K2.4 +C;X57;K"-" +C;X58;K1 +C;X59;K11 +C;X60;K44 +C;X61;K"-" +C;X62;K45 +C;X63;K50 +C;X64;K55 +C;X65;K0.8 +C;X66;K0.87 +C;X67;K"-" +C;X68;K" - " +C;X69;K" - " +C;X70;K" - " +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y12;K"hgyr" +C;X2;K"a2" +C;X3;K"fly1" +C;X4;K"Flying Machine" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"instant" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.03 +C;X34;K0.97 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K3.75 +C;X48;K"_" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K100 +C;X52;K"-" +C;X53;K125 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K2 +C;X60;K6 +C;X61;K"-" +C;X62;K7 +C;X63;K7.5 +C;X64;K8 +C;X65;K0.633 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y13;K"hkni" +C;X2;K"a2" +C;X3;K"me2" +C;X4;K"Knight" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K25 +C;X29;K"-" +C;X30;K27 +C;X31;K31 +C;X32;K35 +C;X33;K0.66 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K20.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y14;K"hmil" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Militia" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.39 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K10.4166666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y15;K"hmpr" +C;X2;K"a2" +C;X3;K"cas" +C;X4;K"Priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K4.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y16;K"hmtm" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"MortarTeam" +C;X5;K3 +C;X6;K1150 +C;X7;K250 +C;X8;K1.1 +C;X9;K0.9 +C;X10;K30 +C;X11;K25 +C;X12;K0 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,item,ward" +C;X18;K1 +C;X19;K1150 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K3.5 +C;X25;K"-" +C;X26;K1 +C;X27;K13 +C;X28;K51 +C;X29;K"-" +C;X30;K52 +C;X31;K58 +C;X32;K64 +C;X33;K1 +C;X34;K1.1 +C;X35;K25 +C;X36;K150 +C;X37;K250 +C;X38;K0.4 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K16.5714285714286 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K1000 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K3.5 +C;X57;K"-" +C;X58;K1 +C;X59;K13 +C;X60;K51 +C;X61;K"-" +C;X62;K52 +C;X63;K58 +C;X64;K64 +C;X65;K1 +C;X66;K1.1 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y17;K"hmtt" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"Siege Engine" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"structure,debris" +C;X18;K1 +C;X19;K192 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"instant" +C;X24;K2.1 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K23.8095238095238 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K2 +C;X57;K"-" +C;X58;K1 +C;X59;K2 +C;X60;K12 +C;X61;K11 +C;X62;K13 +C;X63;K13.5 +C;X64;K14 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K" - " +C;X69;K" - " +C;X70;K" - " +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y18;K"hpea" +C;X2;K"a2" +C;X3;K"peo" +C;X4;K"Peasant" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K4 +C;X29;K"-" +C;X30;K5 +C;X31;K5.5 +C;X32;K6 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.75 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y19;K"hphx" +C;X2;K"a2" +C;X3;K"fly2" +C;X4;K"phoenix" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K20 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"msplash" +C;X24;K1.4 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K68 +C;X32;K75 +C;X33;K0.43 +C;X34;K0.633 +C;X35;K25 +C;X36;K66 +C;X37;K125 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K59 +C;X47;K48.5714285714286 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y20;K"hpxe" +C;X2;K"a2" +C;X3;K"zz" +C;X4;K"phoenix egg" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y21;K"hrif" +C;X2;K"a2" +C;X3;K"ran" +C;X4;K"Rifleman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"instant" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K18 +C;X31;K21 +C;X32;K24 +C;X33;K0.17 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K14 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y22;K"hrtt" +C;X2;K"a2" +C;X3;K"art" +C;X4;K"siege engine upgraded" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K-60 +C;X12;K100 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"structure,debris" +C;X18;K1 +C;X19;K192 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"instant" +C;X24;K2.1 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K23.8095238095238 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K2 +C;X57;K"-" +C;X58;K1 +C;X59;K2 +C;X60;K12 +C;X61;K11 +C;X62;K13 +C;X63;K13.5 +C;X64;K14 +C;X65;K0.125 +C;X66;K0.875 +C;X67;K"-" +C;X68;K" - " +C;X69;K" - " +C;X70;K" - " +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y23;K"hsor" +C;X2;K"a2" +C;X3;K"cas" +C;X4;K"Sorceress" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.45 +C;X9;K1.08 +C;X10;K0 +C;X11;K0 +C;X12;K85 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K9 +C;X32;K10 +C;X33;K0.75 +C;X34;K0.78 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K5.14285714285714 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y24;K"hspt" +C;X2;K"a2" +C;X3;K"me1" +C;X4;K"Spell Breaker" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K250 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K7.36842105263158 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y25;K"hwat" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K16.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y26;K"hwt2" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental level 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K29 +C;X29;K"-" +C;X30;K31 +C;X31;K35 +C;X32;K39 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K23.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y27;K"hwt3" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"WaterElemental level 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K39 +C;X29;K"-" +C;X30;K41 +C;X31;K45 +C;X32;K49 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K30 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y28;K"halt" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"AltarofKings" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y29;K"harm" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Workshop" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y30;K"hars" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"ArcaneSanctum" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y31;K"hatw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"Arcane Tower" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K245 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K9 +C;X32;K10 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K9 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y32;K"hbar" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"HumanBarracks" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y33;K"hbla" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Blacksmith" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y34;K"hcas" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Castle" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y35;K"hctw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"CannonTower" +C;X5;K3 +C;X6;K800 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,ward,item" +C;X18;K1 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K22 +C;X28;K89 +C;X29;K"-" +C;X30;K90 +C;X31;K100.5 +C;X32;K111 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K50 +C;X36;K100 +C;X37;K125 +C;X38;K0.5 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,notself" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K84 +C;X47;K40.2 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K800 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K22 +C;X60;K89 +C;X61;K"-" +C;X62;K90 +C;X63;K100.5 +C;X64;K111 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y36;K"hgra" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"GryphonAviary" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y37;K"hgtw" +C;X2;K"a3" +C;X3;K"tow" +C;X4;K"GuardTower" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K145 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K0.9 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K27.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y38;K"hhou" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y39;K"hkee" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Keep" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y40;K"hlum" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"LumberMill" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y41;K"hshy" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"human shipyard" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y42;K"htow" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"TownHall" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y43;K"hvlt" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Arcane Vault" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y44;K"hwtw" +C;X2;K"a3" +C;X3;K"zz" +C;X4;K"Scout Tower" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y45;K"Obla" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroBladeMaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K10 +C;X11;K40 +C;X12;K50 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.77 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.33 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.34463276836158 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.33 +C;X66;K0.84 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y46;K"Ofar" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroFarSeer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.07 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.19298245614035 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y47;K"Oshd" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroShadowHunter" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.07 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.19298245614035 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y48;K"Otch" +C;X2;K"b1" +C;X3;K"uher" +C;X4;K"HeroTaurenChieftain" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.8 +C;X10;K20 +C;X11;K60 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.36 +C;X34;K0.97 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.36 +C;X66;K0.97 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y49;K"nwad" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"WatcherWard" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y50;K"obot" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"orc transport ship" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y51;K"ocat" +C;X2;K"b2" +C;X3;K"art" +C;X4;K"Demolisher" +C;X5;K3 +C;X6;K1150 +C;X7;K250 +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,item,ward" +C;X18;K1 +C;X19;K1150 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K4.5 +C;X25;K"-" +C;X26;K1 +C;X27;K21 +C;X28;K81 +C;X29;K"-" +C;X30;K82 +C;X31;K92 +C;X32;K102 +C;X33;K0.1 +C;X34;K1.9 +C;X35;K25 +C;X36;K50 +C;X37;K150 +C;X38;K0.4 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20.4444444444444 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K1000 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"msplash" +C;X56;K4.5 +C;X57;K200 +C;X58;K1 +C;X59;K21 +C;X60;K81 +C;X61;K"-" +C;X62;K82 +C;X63;K92 +C;X64;K102 +C;X65;K0.1 +C;X66;K1.9 +C;X67;K25 +C;X68;K50 +C;X69;K150 +C;X70;K0.4 +C;X71;K0.25 +C;X72;K"ground,structure,debris,tree,wall" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y52;K"odes" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"orc frigate" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K54 +C;X29;K"-" +C;X30;K55 +C;X31;K62 +C;X32;K69 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K25 +C;X36;K35 +C;X37;K50 +C;X38;K0.3 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K59 +C;X47;K41.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y53;K"odoc" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"WitchDoctor" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.35 +C;X9;K0.52 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K12 +C;X32;K14 +C;X33;K0.73 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K6.85714285714286 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y54;K"oeye" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"SentryWard" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y55;K"ogru" +C;X2;K"b2" +C;X3;K"me1" +C;X4;K"Grunt" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K12.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y56;K"ohun" +C;X2;K"b2" +C;X3;K"ran" +C;X4;K"HeadHunter" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K-5 +C;X11;K-34 +C;X12;K113 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2.31 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.31 +C;X34;K0.86 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K10.8225108225108 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y57;K"ohwd" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"Healing Ward" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y58;K"okod" +C;X2;K"b2" +C;X3;K"xx" +C;X4;K"KodoBeast" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.44 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K18 +C;X32;K20 +C;X33;K0.85 +C;X34;K0.32 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K12.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y59;K"opeo" +C;X2;K"b2" +C;X3;K"peo" +C;X4;K"Peon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K3 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.5 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y60;K"orai" +C;X2;K"b2" +C;X3;K"me1" +C;X4;K"Raider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"normal" +C;X24;K1.85 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.5135135135135 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y61;K"oshm" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"Shaman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.6 +C;X9;K1.4 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K2.1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.43 +C;X34;K0.74 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K4.04761904761905 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y62;K"osp1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"Serpent Ward 1" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K12 +C;X32;K13 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y63;K"osp2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"Serpent Ward 2" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K24.5 +C;X32;K26 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K16.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y64;K"osp3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"Serpent Ward 3" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K43 +C;X32;K45 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K28.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y65;K"osp4" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"Serpent Ward 4" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K43 +C;X32;K45 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K50 +C;X36;K75 +C;X37;K150 +C;X38;K0.4 +C;X39;K0.2 +C;X40;K"ground,air,structure,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K28.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y66;K"ospm" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"SpiritwalkerMorph" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.68 +C;X9;K0.59 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y67;K"ospw" +C;X2;K"b2" +C;X3;K"cas" +C;X4;K"Spiritwalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.68 +C;X9;K0.59 +C;X10;K10 +C;X11;K94 +C;X12;K110 +C;X13;K0 +C;X14;K110 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K19.5 +C;X32;K22 +C;X33;K0.5 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K26 +C;X47;K11.1428571428571 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y68;K"osw1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spiritwolf level 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K11.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y69;K"osw2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spiritwolf level 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K16.5 +C;X32;K17 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K16.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y70;K"osw3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spiritwolf level 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K21.5 +C;X32;K22 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K21.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y71;K"otau" +C;X2;K"b2" +C;X3;K"me2" +C;X4;K"Tauren" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.68 +C;X9;K0.59 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K29 +C;X29;K"-" +C;X30;K30 +C;X31;K33 +C;X32;K36 +C;X33;K0.467 +C;X34;K0.863 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K17.3684210526316 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y72;K"otbk" +C;X2;K"b2" +C;X3;K"ran" +C;X4;K"Berserker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K-5 +C;X11;K-34 +C;X12;K113 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2.31 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.31 +C;X34;K0.86 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K10.8225108225108 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y73;K"otbr" +C;X2;K"b2" +C;X3;K"fly1" +C;X4;K"Troll Batrider" +C;X5;K1 +C;X6;K1000 +C;X7;K"-" +C;X8;K0 +C;X9;K0 +C;X10;K-35 +C;X11;K30 +C;X12;K51 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.6 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K6.38888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y74;K"otot" +C;X2;K"b2" +C;X3;K"zz" +C;X4;K"StasisTrapward" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y75;K"owyv" +C;X2;K"b2" +C;X3;K"fly2" +C;X4;K"Wind Rider" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K-35 +C;X11;K30 +C;X12;K51 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K37 +C;X29;K"-" +C;X30;K39 +C;X31;K43 +C;X32;K47 +C;X33;K0.6 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K21.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y76;K"oalt" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"AltarofStorms" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y77;K"obar" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Barracks" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y78;K"obea" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Beastiary" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y79;K"ofor" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Forge" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y80;K"ofrt" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Fortress" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y81;K"ogre" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"GreatHall" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y82;K"oshy" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"orc shipyard" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y83;K"osld" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"SpiritLodge" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y84;K"ostr" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Stronghold" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y85;K"otrb" +C;X2;K"b3" +C;X3;K"tow" +C;X4;K"OrcBurrow" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K4 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K37.5 +C;X32;K41 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y86;K"otto" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Tauren Totem" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y87;K"ovln" +C;X2;K"b3" +C;X3;K"zz" +C;X4;K"Voodoo Lounge" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y88;K"owtw" +C;X2;K"b3" +C;X3;K"tow" +C;X4;K"WatchTower" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K135 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K0.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17 +C;X32;K18 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K28.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y89;K"Edem" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroDemonHunter" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.47 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.7 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.64705882352941 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y90;K"Edmm" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroDemonHunterMorph" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.47 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.26 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K8.125 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.26 +C;X66;K0.64 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y91;K"Ekee" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroKeeperoftheGrove" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.7 +C;X9;K0.8 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.18 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.29357798165138 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y92;K"Emoo" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroMoonPriestess" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.46 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.84552845528455 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y93;K"Ewar" +C;X2;K"c1" +C;X3;K"uher" +C;X4;K"HeroWarden" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K25 +C;X11;K0 +C;X12;K80 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K11 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K12 +C;X32;K22 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K5.85365853658537 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y94;K"earc" +C;X2;K"c2" +C;X3;K"ran" +C;X4;K"Archer" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K11 +C;X11;K62 +C;X12;K71 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17 +C;X32;K18 +C;X33;K0.72 +C;X34;K0.28 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K11.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y95;K"ebal" +C;X2;K"c2" +C;X3;K"art" +C;X4;K"Glaive Thrower" +C;X5;K1 +C;X6;K1150 +C;X7;K250 +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,wall,item,ward" +C;X18;K1 +C;X19;K1150 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"aline" +C;X24;K3.5 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K44.5 +C;X32;K50 +C;X33;K0.1 +C;X34;K1.9 +C;X35;K25 +C;X36;K50 +C;X37;K150 +C;X38;K0.4 +C;X39;K0.25 +C;X40;K"ground,structure,debris,wall" +C;X41;K1 +C;X42;K0.2 +C;X43;K0 +C;X44;K50 +C;X45;K"low" +C;X46;K48 +C;X47;K12.7142857142857 +C;X48;K"_" +C;X49;K"ground,structure,debris,wall,item,ward,tree" +C;X50;K1 +C;X51;K1150 +C;X52;K"@" +C;X53;K250 +C;X54;K"siege" +C;X55;K"aline" +C;X56;K3.5 +C;X57;K"-" +C;X58;K1 +C;X59;K12 +C;X60;K38 +C;X61;K"-" +C;X62;K39 +C;X63;K44.5 +C;X64;K50 +C;X65;K0.1 +C;X66;K1.9 +C;X67;K25 +C;X68;K50 +C;X69;K150 +C;X70;K0.4 +C;X71;K0.25 +C;X72;K"ground,structure,debris,wall,tree" +C;X73;K1 +C;X74;K0.2 +C;X75;K0 +C;X76;K50 +C;X77;K1 +C;X1;Y96;K"ebsh" +C;X2;K"c2" +C;X3;K"zz" +C;X4;K"night elf battleship" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K900 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K75 +C;X29;K"-" +C;X30;K78 +C;X31;K91.5 +C;X32;K105 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K100 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K45.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y97;K"echm" +C;X2;K"c2" +C;X3;K"fly2" +C;X4;K"Chimaera" +C;X5;K2 +C;X6;K900 +C;X7;K"-" +C;X8;K0.7 +C;X9;K0.3 +C;X10;K10 +C;X11;K105 +C;X12;K-18 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"structure,debris" +C;X18;K1 +C;X19;K850 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"missile" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.7 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K" - " +C;X39;K" - " +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20 +C;X48;K"_" +C;X49;K"ground,item,ward,structure,debris" +C;X50;K1 +C;X51;K450 +C;X52;K"-" +C;X53;K250 +C;X54;K"magic" +C;X55;K"msplash" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K17 +C;X60;K66 +C;X61;K"-" +C;X62;K67 +C;X63;K75 +C;X64;K83 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K50 +C;X68;K150 +C;X69;K250 +C;X70;K0.5 +C;X71;K0.1 +C;X72;K"ground,debris" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y98;K"edcm" +C;X2;K"c2" +C;X3;K"me2" +C;X4;K"DruidoftheClawMorph" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K29.5 +C;X32;K32 +C;X33;K0.5 +C;X34;K0.83 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K19.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y99;K"edes" +C;X2;K"c2" +C;X3;K"zz" +C;X4;K"night elf frigate" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K54 +C;X29;K"-" +C;X30;K55 +C;X31;K62 +C;X32;K69 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K25 +C;X36;K35 +C;X37;K50 +C;X38;K0.3 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K59 +C;X47;K41.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y100;K"edoc" +C;X2;K"c2" +C;X3;K"me2" +C;X4;K"DruidoftheClaw" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.17 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K18 +C;X29;K"-" +C;X30;K19 +C;X31;K20.5 +C;X32;K22 +C;X33;K0.33 +C;X34;K0.53 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y101;K"edot" +C;X2;K"c2" +C;X3;K"cas" +C;X4;K"DruidoftheTalon" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.7 +C;X9;K1.97 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K12 +C;X32;K13 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K7.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y102;K"edry" +C;X2;K"c2" +C;X3;K"ran" +C;X4;K"Dryad" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K-25 +C;X11;K40 +C;X12;K125 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K16 +C;X32;K17 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K15 +C;X47;K8 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y103;K"edtm" +C;X2;K"c2" +C;X3;K"cas" +C;X4;K"DruidoftheTalonMorph" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"air" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K34 +C;X29;K"-" +C;X30;K35 +C;X31;K38 +C;X32;K41 +C;X33;K0.6 +C;X34;K0.57 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K21.7142857142857 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y104;K"efdr" +C;X2;K"c2" +C;X3;K"fly1" +C;X4;K"faerie dragon" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K70 +C;X12;K11 +C;X13;K0 +C;X14;K11 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K13.5 +C;X32;K14 +C;X33;K0.5 +C;X34;K0.8 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K11 +C;X47;K7.71428571428571 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y105;K"efon" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"Treant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K16 +C;X32;K17 +C;X33;K0.467 +C;X34;K0.533 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K15 +C;X47;K9.14285714285714 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y106;K"ehip" +C;X2;K"c2" +C;X3;K"fly1" +C;X4;K"Hippogryph" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"air" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.05 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K49 +C;X29;K"-" +C;X30;K50 +C;X31;K53.5 +C;X32;K57 +C;X33;K0.6 +C;X34;K0.37 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K50.9523809523809 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y107;K"ehpr" +C;X2;K"c2" +C;X3;K"fly2" +C;X4;K"Hippogryph Rider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.1 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17 +C;X32;K18 +C;X33;K0.633 +C;X34;K0.337 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K15.4545454545455 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y108;K"emtg" +C;X2;K"c2" +C;X3;K"art" +C;X4;K"Mountain Giant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K3 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,tree,wall,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K2 +C;X27;K7 +C;X28;K26 +C;X29;K"-" +C;X30;K28 +C;X31;K34 +C;X32;K40 +C;X33;K0.49 +C;X34;K1 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K25 +C;X47;K13.6 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,tree,wall,item,ward" +C;X50;K1 +C;X51;K250 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K2 +C;X59;K8 +C;X60;K32 +C;X61;K"-" +C;X62;K34 +C;X63;K41 +C;X64;K48 +C;X65;K0.49 +C;X66;K1 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y109;K"esen" +C;X2;K"c2" +C;X3;K"me1" +C;X4;K"Huntress" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.4 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K225 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"mbounce" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17 +C;X32;K18 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K400 +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground,structure,debris,enemy" +C;X41;K2 +C;X42;K0.5 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.44444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y110;K"espv" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"spirit of vengeance" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K70 +C;X11;K0 +C;X12;K140 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K30.5 +C;X32;K36 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K22.5925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y111;K"even" +C;X2;K"c2" +C;X3;K"sum" +C;X4;K"vengeance" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K15 +C;X11;K0 +C;X12;K45 +C;X13;K0 +C;X14;K50 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K16 +C;X32;K18 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K11.8518518518519 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y112;K"ewsp" +C;X2;K"c2" +C;X3;K"zz" +C;X4;K"Wisp" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y113;K"eaoe" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"AncientofLore" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K45.5 +C;X32;K50 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K18.2 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K10 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K45.5 +C;X64;K50 +C;X65;K0.5 +C;X66;K0.67 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y114;K"eaom" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"AncientofWar" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.59 +C;X34;K0.81 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K11 +C;X60;K44 +C;X61;K"-" +C;X62;K45 +C;X63;K50 +C;X64;K55 +C;X65;K0.59 +C;X66;K0.81 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y115;K"eaow" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"AncientofWind" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K37 +C;X29;K"-" +C;X30;K38 +C;X31;K42 +C;X32;K46 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K16.8 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K9 +C;X60;K37 +C;X61;K"-" +C;X62;K38 +C;X63;K42 +C;X64;K46 +C;X65;K0.5 +C;X66;K0.67 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y116;K"eate" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"AltarofElders" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y117;K"eden" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"Ancient of Wonders" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K9.2 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"@" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K5 +C;X60;K20 +C;X61;K"-" +C;X62;K21 +C;X63;K23 +C;X64;K25 +C;X65;K0.5 +C;X66;K0.67 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y118;K"edob" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"HuntersHall" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y119;K"edos" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"ChimaeraRoost" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y120;K"egol" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"EntangledGoldMine" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y121;K"emow" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"MoonWell" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y122;K"eshy" +C;X2;K"c3" +C;X3;K"zz" +C;X4;K"nightelf shipyard" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y123;K"etoa" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"TreeofAges" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K200 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K54.5 +C;X32;K60 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K21.8 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K12 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K54.5 +C;X64;K60 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y124;K"etoe" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"TreeofEternity" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K180 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K59 +C;X29;K"-" +C;X30;K60 +C;X31;K67 +C;X32;K74 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K26.8 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K15 +C;X60;K59 +C;X61;K"-" +C;X62;K60 +C;X63;K67 +C;X64;K74 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y125;K"etol" +C;X2;K"c3" +C;X3;K"yy" +C;X4;K"TreeofLife" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K45.5 +C;X32;K50 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K18.2 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K10 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K45.5 +C;X64;K50 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y126;K"etrp" +C;X2;K"c3" +C;X3;K"tow" +C;X4;K"Ancient Protector" +C;X5;K3 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K80 +C;X12;K310 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K25 +C;X29;K"-" +C;X30;K26 +C;X31;K29.5 +C;X32;K33 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K19.6666666666667 +C;X48;K"_" +C;X49;K"air,ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K700 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K2 +C;X57;K"-" +C;X58;K1 +C;X59;K10 +C;X60;K44 +C;X61;K"-" +C;X62;K45 +C;X63;K49.5 +C;X64;K54 +C;X65;K0.6 +C;X66;K0.4 +C;X67;K25 +C;X68;K75 +C;X69;K125 +C;X70;K0.15 +C;X71;K0.05 +C;X72;K"ground,structure,debris,wall,enemy,neutral" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y127;K"Ucrl" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroCryptLord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K130 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y128;K"Udea" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroDeathKnight" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.452 +C;X9;K1.008 +C;X10;K-20 +C;X11;K60 +C;X12;K76 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.33 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.56 +C;X34;K0.41 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.00429184549356 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.56 +C;X66;K0.41 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y129;K"Udre" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroDreadLord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.53 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y130;K"Ulic" +C;X2;K"d1" +C;X3;K"uher" +C;X4;K"HeroLich" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K130 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y131;K"uabo" +C;X2;K"d2" +C;X3;K"me2" +C;X4;K"Abomination" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K32 +C;X29;K"-" +C;X30;K33 +C;X31;K36 +C;X32;K39 +C;X33;K0.5 +C;X34;K1.17 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K18.9473684210526 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y132;K"uaco" +C;X2;K"d2" +C;X3;K"peo" +C;X4;K"Acolyte" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K9.5 +C;X32;K10 +C;X33;K0.4 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K3.8 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y133;K"uban" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Banshee" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K11 +C;X32;K13 +C;X33;K0.56 +C;X34;K0.51 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K7.33333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y134;K"ubsp" +C;X2;K"d2" +C;X3;K"fly2" +C;X4;K"destroyer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.83 +C;X9;K0.51 +C;X10;K55 +C;X11;K115 +C;X12;K10 +C;X13;K0 +C;X14;K10 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"msplash" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K22.5 +C;X32;K24 +C;X33;K0.633 +C;X34;K0.337 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K16.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y135;K"ucrm" +C;X2;K"d2" +C;X3;K"ran" +C;X4;K"CryptFiendMorph" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K100 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y136;K"ucry" +C;X2;K"d2" +C;X3;K"ran" +C;X4;K"CryptFiend" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K100 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K30.5 +C;X32;K33 +C;X33;K0.64 +C;X34;K0.36 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K15.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y137;K"ucs1" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion beetle level 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K5.66666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y138;K"ucs2" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion beetle level 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K16.5 +C;X32;K18 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y139;K"ucs3" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion beetle level 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K21 +C;X29;K"-" +C;X30;K22 +C;X31;K24.5 +C;X32;K27 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K26 +C;X47;K16.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y140;K"ucsB" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion beetle level 2 -burrowed" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y141;K"ucsC" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"carrion beetle level 3 -burrowed" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y142;K"ufro" +C;X2;K"d2" +C;X3;K"fly2" +C;X4;K"FrostWyrm" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.4 +C;X10;K0 +C;X11;K115 +C;X12;K-60 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K3 +C;X25;K"-" +C;X26;K2 +C;X27;K11 +C;X28;K83 +C;X29;K"-" +C;X30;K85 +C;X31;K95 +C;X32;K105 +C;X33;K0.5 +C;X34;K0.55 +C;X35;K25 +C;X36;K50 +C;X37;K200 +C;X38;K0.2 +C;X39;K0.1 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K38 +C;X47;K31.6666666666667 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K3 +C;X57;K"-" +C;X58;K1 +C;X59;K11 +C;X60;K83 +C;X61;K"-" +C;X62;K84 +C;X63;K89 +C;X64;K94 +C;X65;K0.5 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y143;K"ugar" +C;X2;K"d2" +C;X3;K"fly1" +C;X4;K"Gargoyle" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"air" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.4 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K65.5 +C;X32;K70 +C;X33;K0.33 +C;X34;K1 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K40 +C;X47;K46.7857142857143 +C;X48;K"_" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K2.2 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K17 +C;X61;K"-" +C;X62;K18 +C;X63;K19.5 +C;X64;K21 +C;X65;K0.633 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y144;K"ugho" +C;X2;K"d2" +C;X3;K"me1" +C;X4;K"Ghoul" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.3 +C;X25;K"-" +C;X26;K2 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K12 +C;X31;K13 +C;X32;K14 +C;X33;K0.39 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K10 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.35 +C;X57;K"-" +C;X58;K2 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K2 +C;X64;K2 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y145;K"ugrm" +C;X2;K"d2" +C;X3;K"fly1" +C;X4;K"GargoyleMorphed" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y146;K"uloc" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"locust" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K0 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,air,item" +C;X18;K1 +C;X19;K10 +C;X20;K"-" +C;X21;K250 +C;X22;K"spells" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K13.5 +C;X32;K14 +C;X33;K0 +C;X34;K0 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K11 +C;X47;K13.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y147;K"umtw" +C;X2;K"d2" +C;X3;K"art" +C;X4;K"MeatWagon" +C;X5;K3 +C;X6;K1150 +C;X7;K250 +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K-30 +C;X12;K150 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,item,ward" +C;X18;K1 +C;X19;K1150 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K4 +C;X25;K"-" +C;X26;K1 +C;X27;K18 +C;X28;K70 +C;X29;K"-" +C;X30;K71 +C;X31;K79.5 +C;X32;K88 +C;X33;K0.7 +C;X34;K1.3 +C;X35;K25 +C;X36;K50 +C;X37;K150 +C;X38;K0.4 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K19.875 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K1000 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K4 +C;X57;K"-" +C;X58;K1 +C;X59;K18 +C;X60;K70 +C;X61;K"-" +C;X62;K71 +C;X63;K79.5 +C;X64;K88 +C;X65;K0.7 +C;X66;K1.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y148;K"unec" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Necromancer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K4.72222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y149;K"uobs" +C;X2;K"d2" +C;X3;K"cas" +C;X4;K"Obsidian Statue" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K575 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K2.1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K3.57142857142857 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y150;K"uplg" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"PlagueWard" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y151;K"ushd" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"Shade" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y152;K"uske" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"SkeletonWarrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K7.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y153;K"uskm" +C;X2;K"d2" +C;X3;K"sum" +C;X4;K"Skeletal Mage" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-10 +C;X11;K75 +C;X12;K70 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.66666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y154;K"uubs" +C;X2;K"d2" +C;X3;K"zz" +C;X4;K"undead battleship" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K900 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K75 +C;X29;K"-" +C;X30;K78 +C;X31;K91.5 +C;X32;K105 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K100 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K45.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y155;K"uaod" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"AltarofDarkness" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y156;K"ubon" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Boneyard" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y157;K"ugol" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"UndeadGoldMine" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y158;K"ugrv" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Graveyard" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K" - " +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K" - " +C;X34;K" - " +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y159;K"unp1" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Halls of the Dead" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K260 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K0 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K45.5 +C;X32;K50 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K45.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y160;K"unp2" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Black Citadel" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K260 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K0 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K54.5 +C;X32;K60 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K54.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y161;K"unpl" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Necropolis" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K260 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K0 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y162;K"usap" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"SacrificialPit" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y163;K"usep" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Crypt" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y164;K"ushp" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Undead Shipyard" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y165;K"uslh" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Slaughterhouse" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K200 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y166;K"utod" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"TempleoftheDamned" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y167;K"utom" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Tomb of Relics" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y168;K"uzg1" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Spirit Tower" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K145 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K29.5 +C;X32;K32 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K29.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y169;K"uzg2" +C;X2;K"d3" +C;X3;K"tow" +C;X4;K"Nerubian Tower" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K145 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K11.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y170;K"uzig" +C;X2;K"d3" +C;X3;K"zz" +C;X4;K"Ziggurat" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y171;K"Nbrn" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"Hero Banshee Ranger" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.42 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.89256198347107 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y172;K"Nbst" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"Beastmaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.8 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y173;K"nnht" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"nether dragon hatchling" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K-30 +C;X12;K30 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.4 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K24 +C;X61;K"-" +C;X62;K25 +C;X63;K26.5 +C;X64;K28 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y174;K"npfl" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"Fel Beast" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y175;K"ndr1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K7.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y176;K"ndr2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K16 +C;X32;K17 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K15 +C;X47;K8 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y177;K"ndr3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"DarkMinion3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17.5 +C;X32;K19 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y178;K"ngz1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear level 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K18 +C;X29;K"-" +C;X30;K19 +C;X31;K20 +C;X32;K21 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K13.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y179;K"ngz2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear level 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K29 +C;X32;K30 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K19.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y180;K"ngz3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"grizzly bear level 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K37 +C;X29;K"-" +C;X30;K38 +C;X31;K39 +C;X32;K40 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K26 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y181;K"ngzc" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K29.5 +C;X32;K31 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K19.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y182;K"ngzd" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K37 +C;X29;K"-" +C;X30;K38 +C;X31;K39.5 +C;X32;K41 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K26.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y183;K"ngza" +C;X2;K"n2" +C;X3;K"sum" +C;X4;K"misha 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K45 +C;X29;K"-" +C;X30;K46 +C;X31;K47.5 +C;X32;K49 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K31.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y184;K"ngz4" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"misha 4" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K57 +C;X29;K"-" +C;X30;K59 +C;X31;K64 +C;X32;K69 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K42.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y185;K"npn1" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"Fire pandaren split" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K50 +C;X29;K"-" +C;X30;K52 +C;X31;K57 +C;X32;K62 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K42.2222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y186;K"npn2" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Wind pandaren split" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K35 +C;X29;K"-" +C;X30;K37 +C;X31;K40 +C;X32;K43 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K26.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y187;K"npn3" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Earth pandaren split" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K35 +C;X29;K"-" +C;X30;K37 +C;X31;K40 +C;X32;K43 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K29.6296296296296 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y188;K"npn4" +C;X2;K"n1" +C;X3;K"zz" +C;X4;K"Fire pandaren split2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K3 +C;X27;K6 +C;X28;K75 +C;X29;K"-" +C;X30;K78 +C;X31;K85.5 +C;X32;K93 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K63.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y189;K"npn5" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Wind pandaren split2" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K4 +C;X28;K52 +C;X29;K"-" +C;X30;K55 +C;X31;K59.5 +C;X32;K64 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K13 +C;X47;K39.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y190;K"npn6" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Earth pandaren split2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K3 +C;X27;K4 +C;X28;K52 +C;X29;K"-" +C;X30;K55 +C;X31;K59.5 +C;X32;K64 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K13 +C;X47;K44.0740740740741 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y191;K"npng" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"Penguin" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y192;K"nqb2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 2" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K3 +C;X28;K24 +C;X29;K"-" +C;X30;K26 +C;X31;K28 +C;X32;K30 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K13 +C;X47;K18.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y193;K"nqb3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 3" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K3 +C;X28;K36 +C;X29;K"-" +C;X30;K39 +C;X31;K42 +C;X32;K45 +C;X33;K0.633 +C;X34;K0.337 +C;X35;K75 +C;X36;K100 +C;X37;K150 +C;X38;K0.3 +C;X39;K0.15 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K28 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y194;K"nqb4" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"quillbeast 4" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K4 +C;X27;K3 +C;X28;K48 +C;X29;K"-" +C;X30;K52 +C;X31;K56 +C;X32;K60 +C;X33;K0.633 +C;X34;K0.337 +C;X35;K100 +C;X36;K125 +C;X37;K175 +C;X38;K0.4 +C;X39;K0.25 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K9 +C;X47;K37.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y195;K"nqbh" +C;X2;K"n1a" +C;X3;K"zz" +C;X4;K"quillboar hunter" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y196;K"nwe1" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 1" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y197;K"nwe2" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0 +C;X39;K0 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K15.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y198;K"nwe3" +C;X2;K"n1a" +C;X3;K"sum" +C;X4;K"war eagle 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K4 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K52.5 +C;X32;K57 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0 +C;X39;K0 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K13 +C;X47;K35 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y199;K"nadk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K100 +C;X12;K-20 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K36.5 +C;X32;K42 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K20.2777777777778 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K44.5 +C;X64;K48 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y200;K"nadr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-20 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K42 +C;X29;K"-" +C;X30;K45 +C;X31;K61.5 +C;X32;K78 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K41 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"msplash" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K58 +C;X61;K"-" +C;X62;K61 +C;X63;K73 +C;X64;K85 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y201;K"nadw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragon whelp" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K60 +C;X12;K-10 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K26.5 +C;X32;K30 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K14.7222222222222 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K20 +C;X61;K"-" +C;X62;K21 +C;X63;K22.5 +C;X64;K24 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y202;K"nahy" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient hydra" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K70 +C;X11;K200 +C;X12;K200 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward,air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K2 +C;X27;K11 +C;X28;K75 +C;X29;K"-" +C;X30;K77 +C;X31;K87 +C;X32;K97 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K38 +C;X47;K58 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y203;K"nanb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y204;K"nanm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid(merc)" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y205;K"nanc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"crystal arachnathid" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y206;K"nane" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachnathid earth-borer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K26.5 +C;X32;K29 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K26 +C;X47;K16.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y207;K"nano" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachnathid overlord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y208;K"nanw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"arachnathid warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y209;K"narg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"battle golem" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.51851851851852 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y210;K"nass" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"assassin" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K27.5 +C;X32;K30 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K17.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y211;K"nbal" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Doom Guard" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"air" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K44.5 +C;X32;K48 +C;X33;K0.5 +C;X34;K0.7 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K24.7222222222222 +C;X48;K"MetalHeavySlice" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"normal" +C;X56;K1.35 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K34 +C;X61;K"-" +C;X62;K35 +C;X63;K35 +C;X64;K38.5 +C;X65;K0.5 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y212;K"nba2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Doom Guard(summoned)" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"air" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K44.5 +C;X32;K48 +C;X33;K0.5 +C;X34;K0.7 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K24.7222222222222 +C;X48;K"MetalHeavySlice" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"normal" +C;X56;K1.35 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K34 +C;X61;K"-" +C;X62;K35 +C;X63;K35 +C;X64;K38.5 +C;X65;K0.5 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y213;K"nban" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bandit" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y214;K"nbda" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn apprentice" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K175 +C;X11;K0 +C;X12;K95 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K31 +C;X32;K34 +C;X33;K0.83 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K17.2222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y215;K"nbdk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K60 +C;X12;K-20 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K39.5 +C;X32;K45 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K21.9444444444444 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K52.5 +C;X64;K56 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y216;K"nbdm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn meddler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.83 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K17.037037037037 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y217;K"nbdo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn overseer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.83 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y218;K"nbdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black dragon whelp" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K90 +C;X12;K-20 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K24 +C;X61;K"-" +C;X62;K25 +C;X63;K26.5 +C;X64;K28 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y219;K"nbds" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn sorceror" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K175 +C;X11;K0 +C;X12;K95 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31.5 +C;X32;K34 +C;X33;K0.83 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K23.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y220;K"nbdw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"blue dragonspawn warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.83 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y221;K"nbld" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bandit lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y222;K"nbnb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"barbed arachnathid burrowed (merc)" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y223;K"nbot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"transport ship" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y224;K"nbrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"brigand" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y225;K"nbwm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-30 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K67 +C;X61;K"-" +C;X62;K70 +C;X63;K82 +C;X64;K94 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y226;K"nbzd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K160 +C;X12;K-50 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"msplash" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K67 +C;X61;K"-" +C;X62;K70 +C;X63;K82 +C;X64;K94 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y227;K"nbzk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-30 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K39.5 +C;X32;K45 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K21.9444444444444 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K52.5 +C;X64;K56 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y228;K"nbzw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bronze dragon whelp" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K60 +C;X12;K-20 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K24 +C;X61;K"-" +C;X62;K25 +C;X63;K26.5 +C;X64;K28 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y229;K"ncea" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"CentaurArcher" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y230;K"ncen" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Centaur outrunner" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y231;K"ncer" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur drudge" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y232;K"ncfs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion cliffrunner" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y233;K"ncim" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Centaur impaler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K27.5 +C;X32;K30 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K17.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y234;K"ncks" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur sorceror" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y235;K"ncnk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"centaur khan" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y236;K"ndqn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"succubus" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K16 +C;X32;K17 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K15 +C;X47;K11.8518518518519 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y237;K"ndqp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"maiden of pain" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K53 +C;X29;K"-" +C;X30;K54 +C;X31;K57 +C;X32;K60 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K42.2222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y238;K"ndqs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"queen of suffering" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K68 +C;X29;K"-" +C;X30;K69 +C;X31;K73 +C;X32;K77 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K37 +C;X47;K54.0740740740741 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y239;K"ndqt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"vile temptress" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y240;K"ndqv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"vile tormentor" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K34 +C;X32;K37 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K21.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y241;K"ndrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the depths" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y242;K"ndtb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll berserker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K20.3125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y243;K"ndth" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll high priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y244;K"ndtp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark troll shadow priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K20.5 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K11.3888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y245;K"ndtr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTroll" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y246;K"ndtt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTrollTrapper" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.3 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y247;K"ndtw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"darkTrollWarlord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y248;K"nehy" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder hydra" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K60 +C;X11;K150 +C;X12;K150 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K34 +C;X29;K"-" +C;X30;K35 +C;X31;K39.5 +C;X32;K44 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y249;K"nelb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"berserk elemental" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K43 +C;X32;K47 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K37 +C;X47;K23.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y250;K"nele" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enraged elemental" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K21 +C;X32;K25 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K11.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y251;K"nenc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"corrupted treant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.467 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y252;K"nenf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enforcer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31.5 +C;X32;K34 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K23.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y253;K"nenp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"poison treant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.467 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y254;K"nepl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"plague treant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K31 +C;X29;K"-" +C;X30;K32 +C;X31;K34 +C;X32;K36 +C;X33;K0.467 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K25.1851851851852 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y255;K"nerd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Eredar Diabolist" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K60 +C;X12;K160 +C;X13;K0 +C;X14;K130 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K31 +C;X32;K34 +C;X33;K0.5 +C;X34;K0.6 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K17.2222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y256;K"ners" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Eredar Sorceror" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K140 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K22.5 +C;X32;K24 +C;X33;K0.5 +C;X34;K0.6 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K12.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y257;K"nerw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Eredar Warlock" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K75 +C;X12;K190 +C;X13;K0 +C;X14;K150 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.5 +C;X34;K0.6 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K28.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y258;K"nfel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fel stalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y259;K"nfgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"bloodfiend (felguard)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K24.5 +C;X32;K26 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.1481481481481 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y260;K"nfgo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Forgotten One" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K2 +C;X25;K"-" +C;X26;K2 +C;X27;K15 +C;X28;K40 +C;X29;K"-" +C;X30;K170 +C;X31;K56 +C;X32;K70 +C;X33;K0.26 +C;X34;K0.64 +C;X35;K50 +C;X36;K100 +C;X37;K200 +C;X38;K0.4 +C;X39;K0.2 +C;X40;K"ground,structure,debris,air,notself" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K51 +C;X47;K28 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y261;K"nfgt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forgotten one tentacle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K180 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K25 +C;X29;K"-" +C;X30;K26 +C;X31;K28 +C;X32;K30 +C;X33;K0.6 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K18.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y262;K"nfgu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"felguard" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.51851851851852 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y263;K"nfod" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one deathbringer" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-40 +C;X11;K90 +C;X12;K80 +C;X13;K0 +C;X14;K180 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K100 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"normal" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K12 +C;X60;K45 +C;X61;K"-" +C;X62;K48 +C;X63;K64.5 +C;X64;K81 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K" - " +C;X68;K" - " +C;X69;K" - " +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K"-" +C;X78;K35 +C;X79;K43 +C;X1;Y264;K"nfor" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one trickster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-25 +C;X11;K50 +C;X12;K40 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y265;K"nfot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"faceless one terror" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-30 +C;X11;K70 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K44.5 +C;X32;K48 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K24.7222222222222 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K100 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"normal" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K44.5 +C;X64;K48 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K" - " +C;X68;K" - " +C;X69;K" - " +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K"-" +C;X78;K33 +C;X79;K24.7222222222222 +C;X1;Y266;K"nfov" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"overlord (felguard)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K25 +C;X29;K"-" +C;X30;K26 +C;X31;K27.5 +C;X32;K29 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K20.3703703703704 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y267;K"nfpc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Champion" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y268;K"nfpe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Elder Shaman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K35 +C;X32;K39 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K19.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y269;K"nfpl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y270;K"nfps" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Shaman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y271;K"nfpt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Tracker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y272;K"nfpu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Polar Furbolg Ursa Warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y273;K"nfra" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Ursa Warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y274;K"nfrb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Tracker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y275;K"nfre" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Elder Shaman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K35 +C;X32;K39 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K19.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y276;K"nfrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Champion" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y277;K"nfrl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y278;K"nfrp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Panda" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y279;K"nfrs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Furbolg Shaman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y280;K"nfsh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll high priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y281;K"nfsp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll shadow priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K20.5 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K11.3888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y282;K"nftb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"forest troll berserker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K20.3125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y283;K"nftk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ForestTrollWarlord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y284;K"nftr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ForestTroll" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y285;K"nftt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ForestTrollTrapper" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.3 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y286;K"ngdk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-20 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K39.5 +C;X32;K45 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K21.9444444444444 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K52.5 +C;X64;K56 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y287;K"nggr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"granite golem" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K60 +C;X12;K220 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"RockHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K64.5 +C;X32;K68 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K47.7777777777778 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.35 +C;X57;K"-" +C;X58;K1 +C;X59;K6 +C;X60;K45 +C;X61;K"-" +C;X62;K46 +C;X63;K48.5 +C;X64;K51 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y288;K"ngh1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ghost" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.56 +C;X34;K0.51 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y289;K"ngh2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"wraith" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K36 +C;X32;K41 +C;X33;K0.56 +C;X34;K0.51 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K44 +C;X47;K20 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y290;K"ngir" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"goblin shredder" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.4 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K31 +C;X29;K"-" +C;X30;K34 +C;X31;K47.5 +C;X32;K61 +C;X33;K0.3 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K33.9285714285714 +C;X48;K"MetalHeavySlice" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.35 +C;X57;K"-" +C;X58;K10 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K10 +C;X63;K10 +C;X64;K10 +C;X65;K0.3 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y291;K"nglm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"goblin land mine" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y292;K"ngna" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Poacher" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-20 +C;X11;K0 +C;X12;K40 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y293;K"ngnb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gnoll brute" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y294;K"ngno" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Robber" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y295;K"ngns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Gnoll Assassin" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-20 +C;X11;K0 +C;X12;K40 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y296;K"ngnv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gnoll overseer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y297;K"ngnw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gnoll warden" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K1.23 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y298;K"ngrd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-30 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K45 +C;X61;K"-" +C;X62;K48 +C;X63;K60 +C;X64;K72 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y299;K"ngrk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mud golem" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"RockHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y300;K"ngrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green dragon whelp" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K60 +C;X12;K-10 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K24 +C;X61;K"-" +C;X62;K25 +C;X63;K26.5 +C;X64;K28 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y301;K"ngsp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"GoblinSapper" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y302;K"ngst" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rock golem" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K60 +C;X12;K220 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"RockHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K1.35 +C;X57;K"-" +C;X58;K1 +C;X59;K5 +C;X60;K28 +C;X61;K"-" +C;X62;K29 +C;X63;K31 +C;X64;K33 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y303;K"nhar" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Harpy Scout" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K8.5 +C;X32;K10 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K4.72222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y304;K"nhdc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"deceiver" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y305;K"nhfp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fallen priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K8.5 +C;X32;K10 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K4.72222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y306;K"nhhr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"heretic" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y307;K"nhrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy hag" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y308;K"nhrq" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy queen" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K28 +C;X32;K32 +C;X33;K0.35 +C;X34;K0.3 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.5555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y309;K"nhrr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy rogue" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y310;K"nhrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"harpy witch" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y311;K"nhyc" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"Naga Dragon Turtle" +C;X5;K3 +C;X6;K900 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K100 +C;X12;K75 +C;X13;K-50 +C;X14;K110 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,item,ward" +C;X18;K1 +C;X19;K480 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K24.5 +C;X32;K26 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K14 +C;X48;K"_" +C;X49;K"structure,tree" +C;X50;K1 +C;X51;K450 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K18 +C;X60;K62 +C;X61;K"-" +C;X62;K63 +C;X63;K71.5 +C;X64;K80 +C;X65;K0.7 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y312;K"nhyd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydra" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K50 +C;X11;K100 +C;X12;K100 +C;X13;K0 +C;X14;K70 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K25 +C;X29;K"-" +C;X30;K26 +C;X31;K28.5 +C;X32;K31 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K17.8125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y313;K"nhyh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydra hatchling" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K30 +C;X11;K30 +C;X12;K100 +C;X13;K0 +C;X14;K50 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y314;K"nina" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal automaton" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.8 +C;X10;K0 +C;X11;K30 +C;X12;K60 +C;X13;K0 +C;X14;K110 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K65 +C;X32;K69 +C;X33;K0.5 +C;X34;K0.8 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K37 +C;X47;K40.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y315;K"ninc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal contraption" +C;X5;K1 +C;X6;K625 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.8 +C;X10;K0 +C;X11;K-30 +C;X12;K80 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K30.5 +C;X32;K33 +C;X33;K0.5 +C;X34;K0.8 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K19.0625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y316;K"ninf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Infernal" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"RockHeavyBash" +C;X17;K"ground,structure,debris,item,ward,tree" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K54.5 +C;X32;K60 +C;X33;K0.26 +C;X34;K0.74 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K40.3703703703704 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y317;K"ninm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"infernal machine" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.8 +C;X10;K0 +C;X11;K-45 +C;X12;K120 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.5 +C;X34;K0.8 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y318;K"nith" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll high priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y319;K"nitp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll shadow priest" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K20.5 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K11.3888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y320;K"nitr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"IceTroll" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y321;K"nits" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll berserker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K20.3125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y322;K"nitt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll trapper" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y323;K"nitw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice troll warlord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y324;K"njgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Enraged Jungle Stalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K64.5 +C;X32;K68 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K47.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y325;K"njga" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Elder Jungle Stalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K38 +C;X32;K40 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K28.1481481481481 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y326;K"njg1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Jungle Stalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y327;K"nkob" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Kobold" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y328;K"nkog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"kobold geomancer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y329;K"nkol" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"kobold overseer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y330;K"nkot" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"kobold tunneler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y331;K"nlds" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makruradeep seer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y332;K"nlkl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura tidal lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y333;K"nlpd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura pool dweller" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K10.5 +C;X32;K13 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K26 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y334;K"nlpr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura prawn" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y335;K"nlps" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura prawn summoned" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y336;K"nlrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"deeplord revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K68 +C;X29;K"-" +C;X30;K69 +C;X31;K73 +C;X32;K77 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K37 +C;X47;K54.0740740740741 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y337;K"nlsn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura snapper" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K25 +C;X29;K"-" +C;X30;K26 +C;X31;K28 +C;X32;K30 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K20.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y338;K"nltc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"makrura tide caller" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y339;K"nltl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lightning lizard" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K100 +C;X12;K20 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K18.5 +C;X32;K22 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K12.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y340;K"nlur" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Monster Lure Ward" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y341;K"nmam" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Mammoth" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K15 +C;X32;K16 +C;X33;K0.5 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K11.1111111111111 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y342;K"nmbg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul blood-gill" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y343;K"nmcf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul cliffrunner" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y344;K"nmdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Dire Mammoth" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K65 +C;X32;K69 +C;X33;K0.5 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K37 +C;X47;K48.1481481481481 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y345;K"nmfs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc flesheater" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.45 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K13.5 +C;X32;K14 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K11 +C;X47;K10 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y346;K"nmgd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur destroyer" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.66 +C;X9;K0.84 +C;X10;K-100 +C;X11;K40 +C;X12;K360 +C;X13;K0 +C;X14;K150 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K75 +C;X29;K"-" +C;X30;K76 +C;X31;K80.5 +C;X32;K85 +C;X33;K0.66 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K40 +C;X47;K53.6666666666667 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.35 +C;X57;K1.5 +C;X58;K1 +C;X59;K8 +C;X60;K60 +C;X61;K"-" +C;X62;K61 +C;X63;K64.5 +C;X64;K68 +C;X65;K0.66 +C;X66;K0.84 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y347;K"nmgr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur reaver" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.66 +C;X9;K0.84 +C;X10;K-80 +C;X11;K35 +C;X12;K300 +C;X13;K0 +C;X14;K140 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K53 +C;X29;K"-" +C;X30;K54 +C;X31;K57.5 +C;X32;K61 +C;X33;K0.66 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K38.3333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.35 +C;X57;K1.5 +C;X58;K1 +C;X59;K5 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K43 +C;X64;K45 +C;X65;K0.66 +C;X66;K0.84 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y348;K"nmgw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"magnataur warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.66 +C;X9;K0.84 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K28.5 +C;X32;K30 +C;X33;K0.66 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K19 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y349;K"nmit" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Icetusk Mammoth" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.5 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y350;K"nmmu" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc mutant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.45 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K27 +C;X32;K29 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K22 +C;X47;K20 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y351;K"nmpg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc plaguebearer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y352;K"nmrm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc nightcrawler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y353;K"nmrr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"murloc huntsman" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.45 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K5 +C;X29;K"-" +C;X30;K6 +C;X31;K8 +C;X32;K10 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K5.92592592592593 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y354;K"nmrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul reaver" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.45 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y355;K"nmsc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul shadowcaster" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K35 +C;X32;K39 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K19.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y356;K"nmsh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"misha the bear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K17.037037037037 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y357;K"nmtw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"mur'gul tidewarrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y358;K"nmyr" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga myrmidon" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K32 +C;X29;K"-" +C;X30;K33 +C;X31;K36 +C;X32;K39 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K18.9473684210526 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y359;K"nmys" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga myrmidon submerged" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y360;K"nnad" +C;X2;K"n2" +C;X3;K"zzm" +C;X4;K"altar of the depths - naga altar" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y361;K"nndr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nether dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K80 +C;X12;K5 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.4 +C;X34;K0.5 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"msplash" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K67 +C;X61;K"-" +C;X62;K70 +C;X63;K82 +C;X64;K94 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y362;K"nnfm" +C;X2;K"n2" +C;X3;K"zzm" +C;X4;K"coral bed - naga farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-30 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y363;K"nnmg" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"Naga Mur'Gul Reaver" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K90 +C;X12;K-20 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.7 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K12.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y364;K"nnrg" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga royal guard" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.7 +C;X25;K"-" +C;X26;K2 +C;X27;K7 +C;X28;K45 +C;X29;K"-" +C;X30;K47 +C;X31;K53 +C;X32;K59 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K25 +C;X47;K31.1764705882353 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y365;K"nnrs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga royal guard submerged" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y366;K"nnsa" +C;X2;K"n2" +C;X3;K"zzm" +C;X4;K"shrine of azshara - naga caster barracks" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y367;K"nnsw" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga siren" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.7 +C;X10;K25 +C;X11;K170 +C;X12;K85 +C;X13;K10 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K10.5 +C;X32;K12 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K6 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y368;K"nntg" +C;X2;K"n2" +C;X3;K"zzm" +C;X4;K"tidal guardian - naga tower" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.7 +C;X10;K0 +C;X11;K0 +C;X12;K85 +C;X13;K10 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K5 +C;X28;K30 +C;X29;K"-" +C;X30;K33 +C;X31;K39 +C;X32;K45 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K26 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y369;K"nnwl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian webspinner" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.64 +C;X34;K0.36 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K14.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y370;K"nnwq" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian queen" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K35.5 +C;X32;K40 +C;X33;K0.64 +C;X34;K0.36 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K22.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y371;K"nnwr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian seer" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K29 +C;X29;K"-" +C;X30;K30 +C;X31;K33 +C;X32;K36 +C;X33;K0.64 +C;X34;K0.36 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y372;K"nnws" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian spider lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y373;K"nnzg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"nerubian ziggurat" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y374;K"nogl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y375;K"nogm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre mauler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.527 +C;X9;K0.673 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y376;K"nogn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Stonemaul Magi" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y377;K"nogo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Stonemaul Ogre" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K130 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y378;K"nogr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Ogre Warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y379;K"nomg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ogre magi" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y380;K"now2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"owlscout 2" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.56 +C;X9;K0.61 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y381;K"nowe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"enraged owlbear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y382;K"nowk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"berserk owlbear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y383;K"nowl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"owlscout" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y384;K"npfm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Fel Ravager" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y385;K"npgf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Pig Farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y386;K"Npld" +C;X2;K"n2" +C;X3;K"vher" +C;X4;K"pit lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K10 +C;X29;K"-" +C;X30;K12 +C;X31;K17 +C;X32;K22 +C;X33;K0.8 +C;X34;K0.7 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K22 +C;X47;K8.29268292682927 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.8 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y387;K"Nplh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Neutral Pit Lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.8 +C;X34;K0.7 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.8 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y388;K"Nfir" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"FireLord" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.67 +C;X9;K0.4 +C;X10;K-12 +C;X11;K100 +C;X12;K130 +C;X13;K30 +C;X14;K120 +C;X15;K30 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.77777777777778 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y389;K"nlv1" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K6 +C;X27;K5 +C;X28;K7 +C;X29;K"-" +C;X30;K13 +C;X31;K25 +C;X32;K37 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K16.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y390;K"nlv2" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K70 +C;X13;K0 +C;X14;K70 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K6 +C;X27;K5 +C;X28;K15 +C;X29;K"-" +C;X30;K21 +C;X31;K33 +C;X32;K45 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K7 +C;X47;K22 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y391;K"nlv3" +C;X2;K"a2" +C;X3;K"sum" +C;X4;K"LavaSpawn3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K80 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,air,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K6 +C;X27;K5 +C;X28;K26 +C;X29;K"-" +C;X30;K32 +C;X31;K44 +C;X32;K56 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K25 +C;X36;K50 +C;X37;K75 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"enemy,ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K7 +C;X47;K29.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y392;K"nrat" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Rat" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K10 +C;X11;K-48 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y393;K"nrdr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Red Drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K30 +C;X12;K-20 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K41.5 +C;X32;K47 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K23.0555555555556 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"missile" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K50 +C;X61;K"-" +C;X62;K51 +C;X63;K54.5 +C;X64;K58 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y394;K"nrel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Reef Elemental" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K80 +C;X13;K80 +C;X14;K60 +C;X15;K60 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K11.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y395;K"nrmf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"MercenaryCamp K" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y396;K"nrog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rogue" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y397;K"nrvd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"death revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K64.5 +C;X32;K68 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K47.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y398;K"nrvf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"fire revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y399;K"nrvi" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ice revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y400;K"nrvl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lightning revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y401;K"nrvs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"frost revenant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19 +C;X32;K20 +C;X33;K0.65 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K14.0740740740741 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y402;K"nrwm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Red Dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-30 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"missile" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K45 +C;X61;K"-" +C;X62;K48 +C;X63;K60 +C;X64;K72 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y403;K"nrzb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane brute" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y404;K"nrzg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane chieftain" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y405;K"nrzm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane medicine man" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y406;K"nrzs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"razormane scout" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y407;K"nrzt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"quillboar" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K10 +C;X11;K-48 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y408;K"nsat" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Satyr Trickster" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K8.5 +C;X32;K10 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K4.72222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y409;K"nsbm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"brood mother" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y410;K"nsbs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga snap dragon submerged" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K10 +C;X11;K-48 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y411;K"nsc2" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y412;K"nsc3" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y413;K"nscb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider crab shorecrawler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y414;K"nsel" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Sea Elemental" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y415;K"nsgb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Sea Giant Behemoth" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.75 +C;X10;K0 +C;X11;K0 +C;X12;K200 +C;X13;K40 +C;X14;K200 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K42 +C;X29;K"-" +C;X30;K43 +C;X31;K46 +C;X32;K49 +C;X33;K0.6 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K34.0740740740741 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y416;K"nsgg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"siege golem" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y417;K"nsgh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Sea Giant Hunter" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.75 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K30 +C;X14;K160 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K19 +C;X29;K"-" +C;X30;K20 +C;X31;K21.5 +C;X32;K23 +C;X33;K0.6 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y418;K"nsgn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Sea Giant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.6 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K8.33333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y419;K"nsgt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant spider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y420;K"nska" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal archer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-11 +C;X11;K74 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y421;K"nske" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletonWarrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K7.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y422;K"nsca" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletalArcher(Summoned)" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-11 +C;X11;K74 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y423;K"nsce" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"SkeletonWarrior(Summoned)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K7.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y424;K"nskf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"burning archer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-11 +C;X11;K74 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y425;K"nskg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant skeleton warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K15 +C;X32;K18 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K29 +C;X47;K7.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y426;K"nskm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal marksman" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K-11 +C;X11;K74 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.7 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y427;K"nsko" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y428;K"nslf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge flinger" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y429;K"nslh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander hatchling" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K60 +C;X12;K10 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K24.5 +C;X32;K28 +C;X33;K0.5 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K13.6111111111111 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y430;K"nsll" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander lord" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K140 +C;X12;K20 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.4 +C;X25;K"-" +C;X26;K3 +C;X27;K8 +C;X28;K43 +C;X29;K"-" +C;X30;K46 +C;X31;K56.5 +C;X32;K67 +C;X33;K0.5 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K24 +C;X47;K40.3571428571429 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y431;K"nslm" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge minion" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y432;K"nsln" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sludge monstrosity" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y433;K"nslr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K100 +C;X12;K20 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K29 +C;X29;K"-" +C;X30;K30 +C;X31;K34.5 +C;X32;K39 +C;X33;K0.5 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K19.1666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y434;K"nslv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"salamander vizier" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K80 +C;X12;K20 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K30 +C;X29;K"-" +C;X30;K31 +C;X31;K35 +C;X32;K39 +C;X33;K0.5 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K19.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y435;K"nsnp" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga snap dragon" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K30 +C;X13;K10 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,air,structure,debris,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K27 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K22 +C;X47;K13.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y436;K"nsns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion snarecaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y437;K"nsoc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc champion" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.6 +C;X10;K20 +C;X11;K50 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y438;K"nsog" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"skeletal orc grunt" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.56 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y439;K"nspb" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"black spider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y440;K"nspd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spiderling" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y441;K"nspg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"green spider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y442;K"nspp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spirit pig" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K11.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y443;K"nspr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodLightBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y444;K"nsqa" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient sasquatch" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K64.5 +C;X32;K68 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K47.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y445;K"nsqe" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder sasquatch" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y446;K"nsqo" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sasquatch oracle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y447;K"nsqt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sasquatch" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y448;K"nsra" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver apprentice" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K16 +C;X29;K"-" +C;X30;K17 +C;X31;K18.5 +C;X32;K20 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K10.2777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y449;K"nsrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver hermit" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K12.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y450;K"nsrn" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver necrolyte" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K21.9444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y451;K"nsrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the seas" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y452;K"nsrw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"stormreaver warlock" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward,air" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K8 +C;X28;K73 +C;X29;K"-" +C;X30;K75 +C;X31;K82 +C;X32;K89 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K45.5555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y453;K"nssp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"spitting spider" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.4 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y454;K"nsth" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr hellcaller" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K52 +C;X32;K55 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K38.5185185185185 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y455;K"nstl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr soulstealer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y456;K"nsts" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr shadowdancer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y457;K"nstw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"storm wyrm" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K150 +C;X12;K20 +C;X13;K0 +C;X14;K140 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K45 +C;X29;K"-" +C;X30;K46 +C;X31;K50.5 +C;X32;K55 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K40 +C;X47;K28.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y458;K"nsty" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"satyr" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y459;K"nthl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"thunder lizard" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K120 +C;X12;K20 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K30.5 +C;X32;K34 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K16.9444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y460;K"ntka" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr spearman" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K11 +C;X11;K62 +C;X12;K71 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y461;K"ntkc" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr chieftain" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K43 +C;X29;K"-" +C;X30;K44 +C;X31;K46.5 +C;X32;K49 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K34.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y462;K"ntkf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr fighter" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y463;K"ntkh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr healer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K125 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y464;K"ntks" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr sorceror" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K37 +C;X32;K40 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K20.5555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y465;K"ntkt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr trapper" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K31 +C;X32;K34 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K19.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y466;K"ntkw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"tuskarr warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.36 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K17.037037037037 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y467;K"ntor" +C;X2;K"n2" +C;X3;K"sum" +C;X4;K"tornado" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y468;K"ntrd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dragon turtle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K19 +C;X28;K64 +C;X29;K"-" +C;X30;K65 +C;X31;K74 +C;X32;K83 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K30 +C;X36;K70 +C;X37;K100 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K73 +C;X47;K54.8148148148148 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y469;K"ntrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"gargantuan sea turtle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K42.5 +C;X32;K46 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K31.4814814814815 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y470;K"ntrh" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea turtle hatchling" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K15 +C;X12;K10 +C;X13;K-15 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward,air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y471;K"ntrs" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"sea turtle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K5 +C;X29;K"-" +C;X30;K6 +C;X31;K8 +C;X32;K10 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K5.92592592592593 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y472;K"ntrt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant sea turtle" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K25 +C;X13;K-40 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward,air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K20.3125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y473;K"ntrv" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"revenant of the tides" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y474;K"ntws" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"watery minion tidewarrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.55 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y475;K"nubk" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken darkhunter" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y476;K"nubr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken rager" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K17.037037037037 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y477;K"nubw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"unbroken darkweaver" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K23 +C;X29;K"-" +C;X30;K24 +C;X31;K25.5 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K18.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y478;K"nvde" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder voidwalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K100 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K67 +C;X29;K"-" +C;X30;K68 +C;X31;K71.5 +C;X32;K75 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K52.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y479;K"nvdg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"greater voidwalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K80 +C;X11;K0 +C;X12;K80 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39.5 +C;X32;K43 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K24.6875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y480;K"nvdl" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"lesser voidwalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K40 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K8.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y481;K"nvdw" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"voidwalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K70 +C;X11;K0 +C;X12;K70 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K15.625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y482;K"nwen" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Wendigo" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y483;K"nwgs" +C;X2;K"n2" +C;X3;K"zzn" +C;X4;K"naga coutl" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K30 +C;X12;K51 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K450 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K40 +C;X29;K"-" +C;X30;K42 +C;X31;K46 +C;X32;K50 +C;X33;K0.33 +C;X34;K1 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K25.5555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y484;K"nwiz" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"apprentice wizard" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K8.5 +C;X32;K10 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K4.72222222222222 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y485;K"nwld" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dire wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y486;K"nwlg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y487;K"nwlt" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"timber wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y488;K"nwna" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"ancient wendigo" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K60 +C;X29;K"-" +C;X30;K61 +C;X31;K64.5 +C;X32;K68 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K33 +C;X47;K47.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y489;K"nwnr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"elder wendigo" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y490;K"nwns" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Wendigo shaman" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y491;K"nwrg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"war golem" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.56 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y492;K"nws1" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dragon hawk" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.03 +C;X10;K-87 +C;X11;K-17 +C;X12;K33 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K45.5 +C;X32;K50 +C;X33;K0.43 +C;X34;K0.633 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K22.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y493;K"nwwd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"white dire wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y494;K"nwwf" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"white wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y495;K"nwwg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"giant white wolf" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K14.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y496;K"nwzd" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"dark wizard" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K50 +C;X11;K0 +C;X12;K120 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K43 +C;X32;K47 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K37 +C;X47;K23.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y497;K"nwzg" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"renegade wizard" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K30 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K29 +C;X29;K"-" +C;X30;K30 +C;X31;K34.5 +C;X32;K39 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K19.1666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y498;K"nwzr" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"rogue wizard" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K25 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.8888888888889 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y499;K"nzep" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"GoblinZeppelin" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y500;K"nzom" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"Zombie" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y501;K"nhym" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"hydromancer" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K25 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K9 +C;X32;K10 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K5.14285714285714 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y502;K"nchp" +C;X2;K"n2" +C;X3;K"zz" +C;X4;K"chaplain" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K4.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y503;K"nalb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Albatross" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y504;K"ncrb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Crab" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y505;K"nech" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Chicken" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y506;K"nfro" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Frog" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y507;K"necr" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Rabbit" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y508;K"nrac" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Raccoon" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y509;K"nder" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"deer" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y510;K"ndog" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Dog" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y511;K"ndwm" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Dune Worm" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y512;K"nfbr" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Felboar" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y513;K"nhmc" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Hermit Crab" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y514;K"now3" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"owlscout 3" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y515;K"nowb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"owlbear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K18 +C;X29;K"-" +C;X30;K19 +C;X31;K20.5 +C;X32;K22 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K15.1851851851852 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y516;K"Npbm" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Hero Pandaren Brewmaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.22 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.15315315315315 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y517;K"Nalc" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroAlchemist" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K0 +C;X29;K"-" +C;X30;K3 +C;X31;K16.5 +C;X32;K30 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K6.6 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K3 +C;X59;K10 +C;X60;K0 +C;X61;K"-" +C;X62;K3 +C;X63;K16.5 +C;X64;K30 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y518;K"Nalm" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroAlchemistMorph" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K0 +C;X29;K"-" +C;X30;K3 +C;X31;K16.5 +C;X32;K30 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K8.25 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K3 +C;X59;K10 +C;X60;K0 +C;X61;K"-" +C;X62;K3 +C;X63;K16.5 +C;X64;K30 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y519;K"Nal2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroAlchemistMorph2" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.42 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K0 +C;X29;K"-" +C;X30;K3 +C;X31;K16.5 +C;X32;K30 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K11.6197183098592 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K3 +C;X59;K10 +C;X60;K0 +C;X61;K"-" +C;X62;K3 +C;X63;K16.5 +C;X64;K30 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y520;K"Nal3" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroAlchemistMorph3" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.11 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K0 +C;X29;K"-" +C;X30;K3 +C;X31;K16.5 +C;X32;K30 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K14.8648648648649 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K3 +C;X59;K10 +C;X60;K0 +C;X61;K"-" +C;X62;K3 +C;X63;K16.5 +C;X64;K30 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y521;K"Ntin" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroTinker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.53 +C;X9;K0.5 +C;X10;K-48 +C;X11;K13 +C;X12;K143 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.5 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y522;K"Nrob" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"HeroTinkerMorph" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.53 +C;X9;K0.5 +C;X10;K48 +C;X11;K11 +C;X12;K157 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.5 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y523;K"ncgb" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"Clockwerk Goblin (lvl 1)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y524;K"ncg1" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"Clockwerk Goblin (lvl 2)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y525;K"ncg2" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"Clockwerk Goblin (lvl 3)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y526;K"ncg3" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"Clockwerk Goblin (lvl 4)" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K8.5 +C;X32;K9 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K8.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y527;K"nfac" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"pocket factory" +C;X5;K0 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y528;K"nfa1" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"pocket factory" +C;X5;K0 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y529;K"nfa2" +C;X2;K"n1" +C;X3;K"sum" +C;X4;K"pocket factory" +C;X5;K0 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y530;K"nplb" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"polar bear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K23 +C;X32;K25 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K17.037037037037 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y531;K"npnw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Penguin, water" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y532;K"nqb1" +C;X2;K"o2" +C;X3;K"sum" +C;X4;K"quillbeast 1" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K550 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K12 +C;X29;K"-" +C;X30;K13 +C;X31;K14 +C;X32;K15 +C;X33;K0.5 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K15 +C;X47;K9.33333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y533;K"nrdk" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Red Dragon Whelp" +C;X5;K3 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K-30 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K24 +C;X29;K"-" +C;X30;K25 +C;X31;K28.5 +C;X32;K32 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K15.8333333333333 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K4 +C;X60;K24 +C;X61;K"-" +C;X62;K25 +C;X63;K26.5 +C;X64;K28 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y534;K"nsea" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Seal" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y535;K"nsha" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Amphibious Sheep" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y536;K"nshe" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Sheep" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y537;K"nshf" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Flying Sheep" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y538;K"nshw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Water Sheep (please, no more sheep)" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y539;K"nskk" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Skink" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y540;K"nsno" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Snowy Owl" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y541;K"nvil" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Man" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y542;K"nvk2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Kid 2" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y543;K"nvl2" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Man 2" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y544;K"nvlk" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Kid" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y545;K"nvlw" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Villager Woman" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y546;K"nvul" +C;X2;K"o2" +C;X3;K"zz" +C;X4;K"Vulture" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y547;K"ncb0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y548;K"ncb1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y549;K"ncb2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y550;K"ncb3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y551;K"ncb4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y552;K"ncb5" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y553;K"ncb6" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y554;K"ncb7" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y555;K"ncb8" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y556;K"ncb9" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y557;K"ncba" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y558;K"ncbb" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y559;K"ncbc" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y560;K"ncbd" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y561;K"ncbe" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y562;K"ncbf" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"city building" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K240 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y563;K"ncnt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y564;K"ncop" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Circle Of Power" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y565;K"ncp2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Circle Of Power medium" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y566;K"ncp3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Circle Of Power large" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y567;K"nct1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y568;K"nct2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Centaur Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y569;K"ndch" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei chieftain hut" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y570;K"ndh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei hut 0" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y571;K"ndh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y572;K"ndh2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei outpost" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y573;K"ndh3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei barracks" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y574;K"ndh4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"draenei seer's lodge" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y575;K"ndrg" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost green" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y576;K"ndrk" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost black" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y577;K"ndro" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost Outland" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y578;K"ndrr" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost red" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y579;K"ndru" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost blue" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y580;K"ndrz" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Dragon Roost bronze" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y581;K"nfh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Forest Troll Hut 0" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y582;K"nfh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Forest Troll Hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y583;K"nfoh" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Fountain of Health" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y584;K"nfr1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Furbolg Hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y585;K"nfr2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Furbolg Hut 2" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y586;K"ngad" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Goblin Ammo Dump" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y587;K"ngme" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"goblin merchant" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y588;K"ngnh" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Gnoll Hut" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y589;K"ngni" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Infected Granary" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K140 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y590;K"ngol" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"GoldMine" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y591;K"ngt2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Gnoll Hut" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y592;K"ngwr" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"grain warehouse" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K200 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y593;K"nhns" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"harpy nest" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y594;K"nmer" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp L" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y595;K"nmg0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"mur'gul hut 0" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y596;K"nmg1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"mur'gul hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y597;K"nmh0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Murloc Hut 0" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y598;K"nmh1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Murloc Hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y599;K"nmoo" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Fountain of Life" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y600;K"nmr0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp V" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y601;K"nmr2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp F" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y602;K"nmr3" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp W" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y603;K"nmr4" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp B" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y604;K"nmr5" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp A" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y605;K"nmr6" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp C" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y606;K"nmr7" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp N" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y607;K"nmr8" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp Y" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y608;K"nmr9" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp X" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y609;K"nmra" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp D" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y610;K"nmrb" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp G" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y611;K"nmrc" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp Z" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y612;K"nmrd" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp I" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y613;K"nmre" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp O" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y614;K"nmrf" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"MercenaryCamp K" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y615;K"nmrk" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Marketplace" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y616;K"nmrl" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"murloc fisherman" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K9.5 +C;X32;K10 +C;X33;K0.66 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.03703703703704 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y617;K"noga" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Stonemaul Warchief" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K2 +C;X27;K10 +C;X28;K94 +C;X29;K"-" +C;X30;K96 +C;X31;K105 +C;X32;K114 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K77.7777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y618;K"nshp" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Goblin Shipyard" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y619;K"ntav" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tavern" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y620;K"nten" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y621;K"nth0" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Ice Troll Hut 0" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y622;K"nth1" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Ice Troll Hut 1" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y623;K"ntn2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y624;K"ntnt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tauren Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y625;K"ntt2" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"Tauren Tent" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y626;K"nwgt" +C;X2;K"p3" +C;X3;K"zz" +C;X4;K"WayGate" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y627;K"Ecen" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cenarius" +C;X5;K1 +C;X6;K1000 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K1000 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K8 +C;X27;K8 +C;X28;K40 +C;X29;K"-" +C;X30;K48 +C;X31;K76 +C;X32;K104 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K2 +C;X47;K38 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y628;K"Eevi" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Evil Illidan" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K125 +C;X13;K125 +C;X14;K125 +C;X15;K125 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.7 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.64705882352941 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.26 +C;X66;K0.64 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y629;K"Eevm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Evil Illidan demon form" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K160 +C;X14;K125 +C;X15;K125 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K12 +C;X29;K"-" +C;X30;K14 +C;X31;K25 +C;X32;K36 +C;X33;K0.26 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K41 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.26 +C;X66;K0.64 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y630;K"Efur" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"furion" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.17 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.18 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.29357798165138 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y631;K"Eidm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidan demon form" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K12 +C;X29;K"-" +C;X30;K14 +C;X31;K25 +C;X32;K36 +C;X33;K0.26 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K41 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.26 +C;X66;K0.64 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y632;K"Eill" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidan" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.7 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.3 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.64705882352941 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y633;K"Eilm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"illidanmorphed" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K160 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.6 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K12 +C;X29;K"-" +C;X30;K14 +C;X31;K25 +C;X32;K36 +C;X33;K0.26 +C;X34;K0.64 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K41 +C;X47;K15.625 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.26 +C;X66;K0.64 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y634;K"Ekgg" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"HeroKeeperoftheGrove ghost" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.7 +C;X9;K0.8 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.18 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.29357798165138 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y635;K"Emfr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Mal'furion" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.17 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.18 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.29357798165138 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y636;K"Emns" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Mal'furion No Stag" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.17 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.18 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.4 +C;X34;K0.77 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.29357798165138 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.4 +C;X66;K0.77 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y637;K"Etyr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"tyrande" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.46 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.84552845528455 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y638;K"Ewrd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Maiev" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K25 +C;X11;K0 +C;X12;K80 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K11 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K12 +C;X32;K22 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K5.85365853658537 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y639;K"Hant" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"antonidus" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.85 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y640;K"Hapm" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Admiral Proudmoore" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K22 +C;X29;K"-" +C;X30;K24 +C;X31;K29 +C;X32;K34 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.1818181818182 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y641;K"Harf" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"arthas w/ frostmourne" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K22 +C;X29;K"-" +C;X30;K24 +C;X31;K29 +C;X32;K34 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.1818181818182 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y642;K"Hart" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"arthas" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y643;K"Hdgo" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Dagren the Orcslayer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.433 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y644;K"Hhkl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Halahk the Lifebringer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.433 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y645;K"Hjai" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"jaina" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.4 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.4 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y646;K"Hkal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kael" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.85 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y647;K"Hlgr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Lord Garithos" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y648;K"Hmbr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"muradin bronzebeard" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.22 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.633 +C;X34;K0.366 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.15315315315315 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.633 +C;X66;K0.366 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y649;K"Hmgd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Margoth the Defender" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.433 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y650;K"Hpb1" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"paladin boss 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.433 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y651;K"Hpb2" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"paladin boss 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.433 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.433 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y652;K"Huth" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"uther" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.2 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.433 +C;X34;K0.567 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.18181818181818 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.433 +C;X66;K0.567 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y653;K"Hvsh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Lady Vashj" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.73 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y654;K"Hvwd" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"sylvanus windrunner" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward,wall" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.46 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.7 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.84552845528455 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.7 +C;X66;K0.58 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y655;K"Nbbc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"blackrock blademaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.77 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.33 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.34463276836158 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.33 +C;X66;K0.84 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y656;K"Nklj" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kiljaeden" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K70 +C;X13;K0 +C;X14;K70 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y657;K"Nkjx" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Kiljaeden - cinematic only" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K70 +C;X13;K0 +C;X14;K70 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y658;K"Nmag" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Magtheridon" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K200 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.8 +C;X34;K0.7 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.8 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y659;K"Nman" +C;X2;K"z1" +C;X3;K"zz" +C;X4;K"mannoroth" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K200 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"normal" +C;X24;K1.3 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K14 +C;X29;K"-" +C;X30;K15 +C;X31;K18.5 +C;X32;K22 +C;X33;K0.833 +C;X34;K0.45 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K14.2307692307692 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.833 +C;X66;K0.45 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y660;K"nplg" +C;X2;K"z1" +C;X3;K"zz" +C;X4;K"giant polar bear" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K36 +C;X32;K38 +C;X33;K0.63 +C;X34;K0.67 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K26.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y661;K"Nsjs" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Sinjo Stormstout" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.22 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.35 +C;X34;K0.65 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.15315315315315 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.35 +C;X66;K0.65 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y662;K"Ocbh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.8 +C;X10;K0 +C;X11;K100 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.36 +C;X34;K0.97 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.36 +C;X66;K0.97 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y663;K"Ocb2" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.8 +C;X10;K0 +C;X11;K100 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.36 +C;X34;K0.97 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.36 +C;X66;K0.97 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y664;K"Odrt" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Drek'Thar" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.07 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.19298245614035 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y665;K"Ogld" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Gul'Dan" +C;X5;K1 +C;X6;K1500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K1.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K1500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K4 +C;X27;K20 +C;X28;K80 +C;X29;K"-" +C;X30;K84 +C;X31;K122 +C;X32;K160 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K46 +C;X47;K53.5087719298246 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y666;K"Ogrh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"grom hellscream" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.77 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.34463276836158 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y667;K"Opgh" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"possessed grom hellscream" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.77 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K12 +C;X29;K"-" +C;X30;K14 +C;X31;K25 +C;X32;K36 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K41 +C;X47;K14.1242937853107 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y668;K"Orex" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Rexxar" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K10 +C;X29;K"-" +C;X30;K12 +C;X31;K17 +C;X32;K22 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K22 +C;X47;K8.29268292682927 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K6 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K7 +C;X64;K12 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y669;K"Orkn" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Rokhan" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.07 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.19298245614035 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y670;K"Osam" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Samuro" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K10 +C;X11;K40 +C;X12;K50 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.77 +C;X25;K"-" +C;X26;K2 +C;X27;K12 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K13 +C;X32;K24 +C;X33;K0.33 +C;X34;K0.84 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K7.34463276836158 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.33 +C;X66;K0.84 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y671;K"Otcc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"cairne bloodhoof cinematic" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.8 +C;X10;K0 +C;X11;K100 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.05 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.36 +C;X34;K0.97 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.41463414634146 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.36 +C;X66;K0.97 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y672;K"Othr" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"thrall" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.6 +C;X9;K1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.28 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.19298245614035 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y673;K"Uanb" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Anub'arak" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.4 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K130 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y674;K"Ubal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Balnazzar" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K1.53 +C;X10;K0 +C;X11;K0 +C;X12;K140 +C;X13;K0 +C;X14;K200 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y675;K"Uclc" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"kelthuzadlich cinematic" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y676;K"Udth" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Dethecus" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.9 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y677;K"Uear" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"evil arthas" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.452 +C;X9;K1.008 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavySlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K2.33 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.56 +C;X34;K0.41 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.00429184549356 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.56 +C;X66;K0.41 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y678;K"Uktl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"kelthuzadlich" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.4 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.63157894736842 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y679;K"Umal" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"malganis" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.9 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y680;K"Usyl" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Evil Sylvanas" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.4 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.46 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.84552845528455 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.3 +C;X66;K0.7 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y681;K"Utic" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"tichondrius" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.9 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y682;K"Uvar" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Varimathras" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.9 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y683;K"Uvng" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Vengyr" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.9 +C;X9;K1.1 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.55 +C;X34;K0.55 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.88888888888889 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y684;K"Uwar" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Archimonde" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K40 +C;X12;K120 +C;X13;K0 +C;X14;K90 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K2 +C;X25;K"-" +C;X26;K6 +C;X27;K20 +C;X28;K0 +C;X29;K"-" +C;X30;K6 +C;X31;K63 +C;X32;K120 +C;X33;K0.5 +C;X34;K0.6 +C;X35;K50 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,air,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K31.5 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.5 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y685;K"Hgam" +C;X2;K"z1" +C;X3;K"vher" +C;X4;K"Ghostly Archmage" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K2.4 +C;X10;K15 +C;X11;K0 +C;X12;K66 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K5 +C;X32;K8 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K2.34741784037559 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.55 +C;X66;K0.85 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y686;K"eilw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"illidan wagon" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y687;K"enec" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf courier" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y688;K"ensh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Naisha" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.4 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K225 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"mbounce" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K29 +C;X32;K31 +C;X33;K0.46 +C;X34;K0.54 +C;X35;K400 +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"ground,structure,debris,item,ward,enemy" +C;X41;K5 +C;X42;K0.5 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K16.1111111111111 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y689;K"eshd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Shandris" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K11 +C;X11;K62 +C;X12;K71 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.3 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K26 +C;X29;K"-" +C;X30;K27 +C;X31;K29.5 +C;X32;K32 +C;X33;K0.72 +C;X34;K0.28 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K22.6923076923077 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y690;K"etrs" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf transport ship" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y691;K"hbew" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf wagon" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y692;K"hcth" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"the captain" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K19 +C;X29;K"-" +C;X30;K20 +C;X31;K20.5 +C;X32;K21 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K20.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y693;K"hhdl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"headless rider" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y694;K"hhes" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven swordsman" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y695;K"hrdh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"pack horse" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y696;K"Naka" +C;X2;K"z1" +C;X3;K"zz" +C;X4;K"Akama" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K70 +C;X12;K150 +C;X13;K0 +C;X14;K150 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"normal" +C;X24;K1.8 +C;X25;K"-" +C;X26;K2 +C;X27;K8 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K9 +C;X32;K16 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y697;K"nsw1" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 1" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K11 +C;X31;K11.5 +C;X32;K12 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K11.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y698;K"nsw2" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 2" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K16.5 +C;X32;K17 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K16.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y699;K"nsw3" +C;X2;K"b2" +C;X3;K"sum" +C;X4;K"spirit beast level 3" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K21.5 +C;X32;K22 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K21.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y700;K"ncat" +C;X2;K"b2" +C;X3;K"art" +C;X4;K"Demolisher(draenei)" +C;X5;K3 +C;X6;K1150 +C;X7;K250 +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,item,ward" +C;X18;K1 +C;X19;K1150 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K4.5 +C;X25;K"-" +C;X26;K3 +C;X27;K21 +C;X28;K81 +C;X29;K"-" +C;X30;K84 +C;X31;K114 +C;X32;K144 +C;X33;K0.1 +C;X34;K1.9 +C;X35;K25 +C;X36;K50 +C;X37;K150 +C;X38;K0.4 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K59 +C;X47;K25.3333333333333 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K1000 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K4.5 +C;X57;K"-" +C;X58;K1 +C;X59;K21 +C;X60;K81 +C;X61;K"-" +C;X62;K82 +C;X63;K92 +C;X64;K102 +C;X65;K0.1 +C;X66;K1.9 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y701;K"nbee" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf engineer" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K3 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.5 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y702;K"nbel" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf lieutenant" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K200 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K35 +C;X29;K"-" +C;X30;K37 +C;X31;K42 +C;X32;K47 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.1052631578947 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y703;K"nbsp" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"battleship" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y704;K"nchg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"chaos grunt" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.2 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y705;K"nchr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"ChaosWolfRider" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.65 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K15.1515151515152 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y706;K"nchw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"ChaosWarlock" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.43 +C;X34;K0.74 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K14.2857142857143 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y707;K"nckb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"ChaosKodoBeast" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.2 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K18 +C;X32;K20 +C;X33;K0.85 +C;X34;K0.32 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K15 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y708;K"ncpn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Chaos Peon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K3 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.5 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y709;K"ndmu" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"dalaran mutant" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.3 +C;X25;K"-" +C;X26;K2 +C;X27;K2 +C;X28;K10 +C;X29;K"-" +C;X30;K12 +C;X31;K13 +C;X32;K14 +C;X33;K0.39 +C;X34;K0.44 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K10 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y710;K"ndrd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei darkslayer" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K18 +C;X29;K"-" +C;X30;K19 +C;X31;K20 +C;X32;K21 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K15 +C;X47;K14.8148148148148 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y711;K"ndrn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei vindicator" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31 +C;X32;K33 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K22 +C;X47;K22.962962962963 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y712;K"ndrt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei stalker" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1 +C;X25;K"-" +C;X26;K5 +C;X27;K3 +C;X28;K27 +C;X29;K"-" +C;X30;K32 +C;X31;K37 +C;X32;K42 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K7 +C;X47;K37 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y713;K"ndrf" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei guardian" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y714;K"ndrh" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei harbinger" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K28 +C;X29;K"-" +C;X30;K29 +C;X31;K31.5 +C;X32;K34 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K26 +C;X47;K17.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y715;K"ndrj" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"dalaran reject" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K7.77777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y716;K"ndrm" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei disciple" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K21 +C;X29;K"-" +C;X30;K22 +C;X31;K24 +C;X32;K26 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K22 +C;X47;K13.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y717;K"ndrp" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei protector" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K11 +C;X29;K"-" +C;X30;K12 +C;X31;K12.5 +C;X32;K13 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.25925925925926 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y718;K"ndrs" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei seer" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.67 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K35 +C;X29;K"-" +C;X30;K36 +C;X31;K39 +C;X32;K42 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K21.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y719;K"ndrw" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei watcher" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y720;K"ndrl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei laborer" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K5 +C;X29;K"-" +C;X30;K6 +C;X31;K6.5 +C;X32;K7 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K3.25 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y721;K"ndsa" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"draenei salamander" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K120 +C;X12;K20 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K32 +C;X29;K"-" +C;X30;K33 +C;X31;K36.5 +C;X32;K40 +C;X33;K0.5 +C;X34;K0.56 +C;X35;K25 +C;X36;K125 +C;X37;K200 +C;X38;K0.2 +C;X39;K0.05 +C;X40;K"ground,air,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K33 +C;X47;K18.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y722;K"negz" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"engineer gazlowe" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K0.47 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y723;K"nemi" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"emissary" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K2 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K7 +C;X29;K"-" +C;X30;K8 +C;X31;K10.5 +C;X32;K13 +C;X33;K0.59 +C;X34;K0.58 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K26 +C;X47;K5.25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y724;K"nfgl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"flesh golem" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K3 +C;X27;K8 +C;X28;K36 +C;X29;K"-" +C;X30;K39 +C;X31;K49.5 +C;X32;K60 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K24 +C;X47;K36.6666666666667 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y725;K"ngbl" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"goblin blaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K200 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.4 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K31 +C;X29;K"-" +C;X30;K34 +C;X31;K47.5 +C;X32;K61 +C;X33;K0.3 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K33.9285714285714 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y726;K"nhea" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven archer" +C;X5;K1 +C;X6;K800 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K11 +C;X11;K62 +C;X12;K71 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K3 +C;X28;K15 +C;X29;K"-" +C;X30;K16 +C;X31;K17 +C;X32;K18 +C;X33;K0.72 +C;X34;K0.28 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K11.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y727;K"nhef" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven female" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y728;K"nhem" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"high elven male" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y729;K"nhew" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"blood elf worker" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K3 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.5 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1.1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y730;K"njks" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Jailor Kassan" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K6 +C;X28;K38 +C;X29;K"-" +C;X30;K39 +C;X31;K41.5 +C;X32;K44 +C;X33;K0.5 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K26 +C;X47;K30.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y731;K"nmdm" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"medivh morphed" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.1 +C;X25;K"-" +C;X26;K1 +C;X27;K16 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K16.5 +C;X32;K24 +C;X33;K0.6 +C;X34;K0.49 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K62 +C;X47;K15 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y732;K"nmed" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"medivh" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.1 +C;X25;K"-" +C;X26;K1 +C;X27;K16 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K16.5 +C;X32;K24 +C;X33;K0.6 +C;X34;K0.49 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K62 +C;X47;K15 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y733;K"nmpe" +C;X2;K"z2" +C;X3;K"zzn" +C;X4;K"naga peon - murgul" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"MetalLightChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K90 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K3 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K6 +C;X29;K"-" +C;X30;K7 +C;X31;K7.5 +C;X32;K8 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K2.5 +C;X48;K"AxeMediumChop" +C;X49;K"tree" +C;X50;K1 +C;X51;K66 +C;X52;K"-" +C;X53;K120 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K1 +C;X57;K"-" +C;X58;K1 +C;X59;K1 +C;X60;K0 +C;X61;K"-" +C;X62;K1 +C;X63;K1 +C;X64;K1 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y734;K"nmsn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"mur'gul snarecaster" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.75 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.6 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y735;K"nser" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"searinox" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K100 +C;X12;K-20 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.1 +C;X25;K1.5 +C;X26;K5 +C;X27;K16 +C;X28;K20 +C;X29;K"-" +C;X30;K25 +C;X31;K62.5 +C;X32;K100 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K28 +C;X47;K56.8181818181818 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y736;K"nspc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"support column" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y737;K"nssn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"night elf assassin" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K11 +C;X11;K62 +C;X12;K71 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K650 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K12.5 +C;X32;K16 +C;X33;K0.3 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K33 +C;X47;K12.5 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y738;K"nthr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"tharifas" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-20 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K14 +C;X28;K51 +C;X29;K"-" +C;X30;K54 +C;X31;K73.5 +C;X32;K93 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K40 +C;X47;K49 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y739;K"nw2w" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"War2 Warlock" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K2 +C;X27;K3 +C;X28;K14 +C;X29;K"-" +C;X30;K16 +C;X31;K18 +C;X32;K20 +C;X33;K0.43 +C;X34;K0.74 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K13 +C;X47;K10.2857142857143 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y740;K"nwat" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Watcher" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K10.5 +C;X32;K11 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K11 +C;X47;K6.5625 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y741;K"odkt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Drak'Thul, orc warlock" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K27 +C;X29;K"-" +C;X30;K28 +C;X31;K32.5 +C;X32;K37 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K40 +C;X47;K18.0555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y742;K"ogrk" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Gar'thok" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.6 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K17 +C;X29;K"-" +C;X30;K18 +C;X31;K19.5 +C;X32;K21 +C;X33;K0.33 +C;X34;K0.64 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K18 +C;X47;K12.1875 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y743;K"ojgn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"actual orc juggernaut unit" +C;X5;K1 +C;X6;K900 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K900 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2 +C;X25;K"-" +C;X26;K3 +C;X27;K10 +C;X28;K75 +C;X29;K"-" +C;X30;K78 +C;X31;K91.5 +C;X32;K105 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K100 +C;X36;K150 +C;X37;K250 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K29 +C;X47;K45.75 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y744;K"omtg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"mathog" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.1 +C;X25;K"-" +C;X26;K2 +C;X27;K8 +C;X28;K2 +C;X29;K"-" +C;X30;K4 +C;X31;K11 +C;X32;K18 +C;X33;K0.5 +C;X34;K0.468 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K29 +C;X47;K10 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y745;K"onzg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"nazgrel" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.6 +C;X9;K0.2 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumSlice" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"normal" +C;X24;K1.85 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K22 +C;X29;K"-" +C;X30;K23 +C;X31;K25 +C;X32;K27 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K13.5135135135135 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y746;K"oosc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"kodo beast (riderless)" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y747;K"oswy" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"spirit wyvern" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y748;K"ovlj" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"vol'jin" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.35 +C;X9;K0.52 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K5 +C;X28;K9 +C;X29;K"-" +C;X30;K10 +C;X31;K12 +C;X32;K14 +C;X33;K0.73 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K22 +C;X47;K6.85714285714286 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y749;K"owar" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"orc warchief" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.3 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.1 +C;X25;K"-" +C;X26;K2 +C;X27;K8 +C;X28;K2 +C;X29;K"-" +C;X30;K4 +C;X31;K11 +C;X32;K18 +C;X33;K0.5 +C;X34;K0.468 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K29 +C;X47;K10 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y750;K"ownr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"wyvern" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"air" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.2 +C;X25;K"-" +C;X26;K2 +C;X27;K3 +C;X28;K36 +C;X29;K"-" +C;X30;K38 +C;X31;K40 +C;X32;K42 +C;X33;K0.6 +C;X34;K0.37 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K13 +C;X47;K33.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y751;K"uabc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Abomination cinematic" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K100 +C;X15;K0 +C;X16;K"MetalHeavyChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.9 +C;X25;K"-" +C;X26;K1 +C;X27;K7 +C;X28;K32 +C;X29;K"-" +C;X30;K33 +C;X31;K36 +C;X32;K39 +C;X33;K0.5 +C;X34;K1.17 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K29 +C;X47;K18.9473684210526 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y752;K"uarb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Air Barge" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y753;K"ubdd" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"azurelore - frost wyrm" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.4 +C;X10;K0 +C;X11;K115 +C;X12;K-60 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K3 +C;X25;K"-" +C;X26;K2 +C;X27;K11 +C;X28;K83 +C;X29;K"-" +C;X30;K85 +C;X31;K95 +C;X32;K105 +C;X33;K0.5 +C;X34;K0.55 +C;X35;K25 +C;X36;K50 +C;X37;K200 +C;X38;K0.2 +C;X39;K0.1 +C;X40;K"ground,air,structure,debris,enemy" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K38 +C;X47;K31.6666666666667 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K3 +C;X57;K"-" +C;X58;K1 +C;X59;K11 +C;X60;K83 +C;X61;K"-" +C;X62;K84 +C;X63;K89 +C;X64;K94 +C;X65;K0.5 +C;X66;K0.55 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y754;K"ubdr" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"azurelore - dragon" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K1 +C;X9;K0.51 +C;X10;K0 +C;X11;K120 +C;X12;K-20 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K3 +C;X27;K12 +C;X28;K45 +C;X29;K"-" +C;X30;K48 +C;X31;K64.5 +C;X32;K81 +C;X33;K0.94 +C;X34;K0.56 +C;X35;K75 +C;X36;K150 +C;X37;K225 +C;X38;K0.5 +C;X39;K0.25 +C;X40;K"ground" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K35 +C;X47;K43 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"chaos" +C;X55;K"msplash" +C;X56;K1.5 +C;X57;K"-" +C;X58;K3 +C;X59;K9 +C;X60;K45 +C;X61;K"-" +C;X62;K48 +C;X63;K60 +C;X64;K72 +C;X65;K0.94 +C;X66;K0.56 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y755;K"ubot" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"undead transport ship" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y756;K"udes" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"undead frigate" +C;X5;K1 +C;X6;K650 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"msplash" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K54 +C;X29;K"-" +C;X30;K55 +C;X31;K62 +C;X32;K69 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K25 +C;X36;K35 +C;X37;K50 +C;X38;K0.3 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,enemy,neutral" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K59 +C;X47;K41.3333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y757;K"uktg" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"kelthuzadghost" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y758;K"uktn" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"kelthuzadnecro" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K10.5 +C;X32;K12 +C;X33;K0.53 +C;X34;K0.47 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K5.83333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y759;K"uswb" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"Sylvanus Banshee" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.83 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K1.4 +C;X25;K"-" +C;X26;K1 +C;X27;K9 +C;X28;K20 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.56 +C;X34;K0.51 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K37 +C;X47;K17.8571428571429 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y760;K"hprt" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"portal unit" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.5 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y761;K"haro" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Arcane Observatory" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K"-" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K"-" +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y762;K"nbfl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Fountain of Blood" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y763;K"nbsm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"book of summoning pedestal" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y764;K"nbt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"boulder tower" +C;X5;K3 +C;X6;K800 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K110 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,ward,item" +C;X18;K1 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K22 +C;X28;K89 +C;X29;K"-" +C;X30;K90 +C;X31;K100.5 +C;X32;K111 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K50 +C;X36;K100 +C;X37;K125 +C;X38;K0.5 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,notself" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K84 +C;X47;K40.2 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K800 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K22 +C;X60;K89 +C;X61;K"-" +C;X62;K90 +C;X63;K100.5 +C;X64;K111 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y765;K"nbt2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"boulder tower upgraded" +C;X5;K3 +C;X6;K800 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K135 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,debris,tree,wall,ward,item" +C;X18;K1 +C;X19;K800 +C;X20;K"-" +C;X21;K250 +C;X22;K"siege" +C;X23;K"artillery" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K22 +C;X28;K89 +C;X29;K"-" +C;X30;K90 +C;X31;K100.5 +C;X32;K111 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K50 +C;X36;K100 +C;X37;K125 +C;X38;K0.5 +C;X39;K0.1 +C;X40;K"ground,structure,debris,tree,wall,notself" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K84 +C;X47;K40.2 +C;X48;K"_" +C;X49;K"structure" +C;X50;K1 +C;X51;K800 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"missile" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K22 +C;X60;K89 +C;X61;K"-" +C;X62;K90 +C;X63;K100.5 +C;X64;K111 +C;X65;K0.3 +C;X66;K0.3 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y766;K"nbwd" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"barrow den" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y767;K"ncap" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted ancient protector" +C;X5;K3 +C;X6;K700 +C;X7;K200 +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K80 +C;X12;K195 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.5 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K37.5 +C;X32;K41 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"air,ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K700 +C;X52;K"-" +C;X53;K250 +C;X54;K"siege" +C;X55;K"msplash" +C;X56;K2 +C;X57;K"-" +C;X58;K2 +C;X59;K12 +C;X60;K41 +C;X61;K"-" +C;X62;K43 +C;X63;K54 +C;X64;K65 +C;X65;K0.6 +C;X66;K0.4 +C;X67;K50 +C;X68;K75 +C;X69;K125 +C;X70;K0.5 +C;X71;K0.1 +C;X72;K"ground,structure,debris,tree,wall" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y768;K"ncaw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted Ancient of War" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K11 +C;X28;K44 +C;X29;K"-" +C;X30;K45 +C;X31;K50 +C;X32;K55 +C;X33;K0.59 +C;X34;K0.81 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K11 +C;X60;K44 +C;X61;K"-" +C;X62;K45 +C;X63;K50 +C;X64;K55 +C;X65;K0.59 +C;X66;K0.81 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y769;K"ncmw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted MoonWell" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y770;K"ncta" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted TreeofAges" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K48 +C;X29;K"-" +C;X30;K49 +C;X31;K54.5 +C;X32;K60 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K21.8 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K12 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K54.5 +C;X64;K60 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y771;K"ncte" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted TreeofEternity" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K15 +C;X28;K59 +C;X29;K"-" +C;X30;K60 +C;X31;K67 +C;X32;K74 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K26.8 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K15 +C;X60;K59 +C;X61;K"-" +C;X62;K60 +C;X63;K67 +C;X64;K74 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y772;K"nctl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"corrupted TreeofLife" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"WoodHeavyBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K0 +C;X19;K128 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K2.5 +C;X25;K"-" +C;X26;K1 +C;X27;K10 +C;X28;K40 +C;X29;K"-" +C;X30;K41 +C;X31;K45.5 +C;X32;K50 +C;X33;K0.4 +C;X34;K0.6 +C;X35;K"-" +C;X36;K"-" +C;X37;K"-" +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K18.2 +C;X48;K"WoodHeavyBash" +C;X49;K"ground,structure,debris,item,ward" +C;X50;K1 +C;X51;K128 +C;X52;K"-" +C;X53;K250 +C;X54;K"normal" +C;X55;K"normal" +C;X56;K2.5 +C;X57;K"-" +C;X58;K1 +C;X59;K10 +C;X60;K40 +C;X61;K"-" +C;X62;K41 +C;X63;K45.5 +C;X64;K50 +C;X65;K0.4 +C;X66;K0.6 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y773;K"ndfl" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Defiled Fountain of Life" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y774;K"ndgt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dalaran guard tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y775;K"ndke" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dark portal (southeast)" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y776;K"ndkw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"dark portal (southwest)" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y777;K"ndmg" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"demon gate" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y778;K"ndrb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Dragon Building" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y779;K"ndt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"cold tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K140 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y780;K"ndt2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"cold tower upgraded" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K235 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y781;K"nef0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y782;K"nef1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y783;K"nef2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y784;K"nef3" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y785;K"nef4" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y786;K"nef5" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y787;K"nef6" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y788;K"nef7" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y789;K"nefm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven farm" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y790;K"negf" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"earth fury tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y791;K"negm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"sky fury tower" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"air" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1.2 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K20.8333333333333 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y792;K"negt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven guard tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y793;K"net1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"energy tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K210 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y794;K"net2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"energy tower upgraded" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y795;K"nfnp" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Purple Fountain" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y796;K"nfrm" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"frostmourne pedestal" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y797;K"nfrt" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"fruit stand" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y798;K"nft1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"flame tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K140 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y799;K"nft2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"flame tower upgraded" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K235 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y800;K"nfv0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y801;K"nfv1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y802;K"nfv2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y803;K"nfv3" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y804;K"nfv4" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y805;K"ngob" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"gemstone obelisk" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y806;K"nhcn" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"horn of cenarius pedestal" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y807;K"nheb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"High Elven Barracks" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y808;K"nico" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"icecrown obelisk" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y809;K"nitb" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"icy treasure box" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y810;K"nmgv" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"magic vault" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y811;K"nndk" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"nether drake" +C;X5;K3 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K80 +C;X12;K5 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K500 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.8 +C;X25;K"-" +C;X26;K1 +C;X27;K12 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K39.5 +C;X32;K45 +C;X33;K0.4 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K48 +C;X47;K21.9444444444444 +C;X48;K"_" +C;X49;K"air" +C;X50;K1 +C;X51;K300 +C;X52;K"-" +C;X53;K250 +C;X54;K"pierce" +C;X55;K"msplash" +C;X56;K1.8 +C;X57;K"-" +C;X58;K1 +C;X59;K8 +C;X60;K48 +C;X61;K"-" +C;X62;K49 +C;X63;K52.5 +C;X64;K56 +C;X65;K0.5 +C;X66;K0.5 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y812;K"Nngs" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Hero Naga Sorceress" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K0.67 +C;X9;K0.4 +C;X10;K-12 +C;X11;K100 +C;X12;K130 +C;X13;K30 +C;X14;K120 +C;X15;K30 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"hero" +C;X23;K"missile" +C;X24;K1.9 +C;X25;K"-" +C;X26;K2 +C;X27;K6 +C;X28;K0 +C;X29;K"-" +C;X30;K2 +C;X31;K7 +C;X32;K12 +C;X33;K0.73 +C;X34;K0.54 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K3.68421052631579 +C;X48;K"_" +C;X49;K"ground,structure,debris,air,item,ward" +C;X50;K1 +C;X51;K500 +C;X52;K"-" +C;X53;K250 +C;X54;K"hero" +C;X55;K"missile" +C;X56;K2.13 +C;X57;K"-" +C;X58;K2 +C;X59;K4 +C;X60;K0 +C;X61;K"-" +C;X62;K2 +C;X63;K5 +C;X64;K8 +C;X65;K0.46 +C;X66;K0.54 +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y813;K"nnsg" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"spawning grounds - naga barracks" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y814;K"nnsu" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"naga summoner" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"magic" +C;X23;K"missile" +C;X24;K1.75 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K8 +C;X29;K"-" +C;X30;K9 +C;X31;K10.5 +C;X32;K12 +C;X33;K0.5 +C;X34;K0.5 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"low" +C;X46;K18 +C;X47;K6 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y815;K"nntt" +C;X2;K"z3" +C;X3;K"zzm" +C;X4;K"temple of tides - naga town hall" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K144 +C;X13;K0 +C;X14;K80 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y816;K"nnwa" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"nerubian warrior" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K160 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K2 +C;X28;K13 +C;X29;K"-" +C;X30;K14 +C;X31;K14.5 +C;X32;K15 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K11 +C;X47;K10.7407407407407 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y817;K"npgr" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"power generator" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y818;K"npig" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Pig" +C;X5;K0 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K1 +C;X1;Y819;K"nshr" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"shrine" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y820;K"ntt1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"death tower" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K180 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y821;K"ntx2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"death tower upgraded" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K255 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K1 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K19 +C;X29;K"-" +C;X30;K21 +C;X31;K25 +C;X32;K29 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K25 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y822;K"nvr0" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y823;K"nvr1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y824;K"nvr2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"elven fishing village" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y825;K"nwc1" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"wyvern cage 1" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y826;K"nwc2" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"wyvern cage 2" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y827;K"ocbw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"Chaos Orc Burrow" +C;X5;K1 +C;X6;K700 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K700 +C;X20;K"-" +C;X21;K250 +C;X22;K"chaos" +C;X23;K"missile" +C;X24;K4 +C;X25;K"-" +C;X26;K1 +C;X27;K8 +C;X28;K33 +C;X29;K"-" +C;X30;K34 +C;X31;K37.5 +C;X32;K41 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"-" +C;X46;K"-" +C;X47;K9.375 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y828;K"nzin" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"zone indicator" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y829;K"nbse" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"bind stone southeast" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y830;K"nbsw" +C;X2;K"z3" +C;X3;K"zz" +C;X4;K"bind stone southwest" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y831;K"zcso" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"chaos space orc" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K300 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"missile" +C;X24;K0.9 +C;X25;K"-" +C;X26;K2 +C;X27;K5 +C;X28;K80 +C;X29;K"-" +C;X30;K82 +C;X31;K86 +C;X32;K90 +C;X33;K0.17 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K19 +C;X47;K95.5555555555556 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y832;K"zhyd" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"hydralisk" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"instant" +C;X24;K1 +C;X25;K"-" +C;X26;K4 +C;X27;K10 +C;X28;K80 +C;X29;K"-" +C;X30;K84 +C;X31;K102 +C;X32;K120 +C;X33;K0.3 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K24 +C;X47;K102 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y833;K"zjug" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"orc juggernaut" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"msplash" +C;X24;K1.6 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K80 +C;X29;K"-" +C;X30;K82 +C;X31;K85 +C;X32;K88 +C;X33;K0.17 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K53.125 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y834;K"zmar" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"Marine" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K400 +C;X20;K"-" +C;X21;K250 +C;X22;K"pierce" +C;X23;K"instant" +C;X24;K0.9 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K80 +C;X29;K"-" +C;X30;K82 +C;X31;K85 +C;X32;K88 +C;X33;K0.17 +C;X34;K0.7 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K94.4444444444444 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y835;K"zshv" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"shoveler" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K0.5 +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"MetalMediumChop" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K5 +C;X27;K15 +C;X28;K200 +C;X29;K"-" +C;X30;K205 +C;X31;K240 +C;X32;K275 +C;X33;K0.38 +C;X34;K0.6 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K27 +C;X47;K177.777777777778 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y836;K"zsmc" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"sammy cube" +C;X5;K1 +C;X6;K600 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"ground,structure,debris,air,item,ward" +C;X18;K1 +C;X19;K600 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"missile" +C;X24;K2.13 +C;X25;K"-" +C;X26;K2 +C;X27;K4 +C;X28;K80 +C;X29;K"-" +C;X30;K82 +C;X31;K85 +C;X32;K88 +C;X33;K0.55 +C;X34;K0.85 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K16 +C;X47;K39.906103286385 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y837;K"zzrg" +C;X2;K"z9" +C;X3;K"zzz" +C;X4;K"zergling" +C;X5;K1 +C;X6;K500 +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"WoodMediumBash" +C;X17;K"ground,structure,debris,item,ward" +C;X18;K1 +C;X19;K100 +C;X20;K"-" +C;X21;K250 +C;X22;K"normal" +C;X23;K"normal" +C;X24;K1.35 +C;X25;K"-" +C;X26;K1 +C;X27;K4 +C;X28;K21 +C;X29;K"-" +C;X30;K22 +C;X31;K23.5 +C;X32;K25 +C;X33;K0.3 +C;X34;K0.3 +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K"high" +C;X46;K18 +C;X47;K17.4074074074074 +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +C;X1;Y838;K"nzlc" +C;X2;K"z2" +C;X3;K"zz" +C;X4;K"cinematic lich king" +C;X5;K0 +C;X6;K"-" +C;X7;K"-" +C;X8;K"-" +C;X9;K0.51 +C;X10;K0 +C;X11;K0 +C;X12;K60 +C;X13;K0 +C;X14;K120 +C;X15;K0 +C;X16;K"_" +C;X17;K"_" +C;X18;K1 +C;X19;K"-" +C;X20;K"-" +C;X21;K"-" +C;X22;K"normal" +C;X23;K"_" +C;X24;K0 +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"-" +C;X29;K"-" +C;X30;K" - " +C;X31;K"-" +C;X32;K" - " +C;X33;K"-" +C;X34;K"-" +C;X35;K" - " +C;X36;K" - " +C;X37;K" - " +C;X38;K"-" +C;X39;K"-" +C;X40;K"_" +C;X41;K1 +C;X42;K0 +C;X43;K0 +C;X44;K0 +C;X45;K#VALUE! +C;X46;K#VALUE! +C;X47;K#VALUE! +C;X48;K"_" +C;X49;K"_" +C;X50;K1 +C;X51;K"-" +C;X52;K"-" +C;X53;K"-" +C;X54;K"normal" +C;X55;K"_" +C;X56;K"-" +C;X57;K"-" +C;X58;K"-" +C;X59;K"-" +C;X60;K"-" +C;X61;K"-" +C;X62;K" - " +C;X63;K"-" +C;X64;K" - " +C;X65;K"-" +C;X66;K"-" +C;X67;K"-" +C;X68;K"-" +C;X69;K"-" +C;X70;K"-" +C;X71;K"-" +C;X72;K"_" +C;X73;K1 +C;X74;K0 +C;X75;K0 +C;X76;K0 +C;X77;K0 +E diff --git a/share/mpq/units/units/upgradedata.slk b/share/mpq/units/units/upgradedata.slk new file mode 100644 index 0000000..31a82c3 --- /dev/null +++ b/share/mpq/units/units/upgradedata.slk @@ -0,0 +1,2973 @@ +ID;PWXL;N;E +B;X33;Y90;D0 +C;X1;Y1;K"upgradeid" +C;X2;K"comments" +C;X3;K"class" +C;X4;K"race" +C;X5;K"sort" +C;X6;K"used" +C;X7;K"global" +C;X8;K"maxlevel" +C;X9;K"inherit" +C;X10;K"goldbase" +C;X11;K"goldmod" +C;X12;K"lumberbase" +C;X13;K"lumbermod" +C;X14;K"timebase" +C;X15;K"timemod" +C;X16;K"effect1" +C;X17;K"base1" +C;X18;K"mod1" +C;X19;K"code1" +C;X20;K"effect2" +C;X21;K"base2" +C;X22;K"mod2" +C;X23;K"code2" +C;X24;K"effect3" +C;X25;K"base3" +C;X26;K"mod3" +C;X27;K"code3" +C;X28;K"effect4" +C;X29;K"base4" +C;X30;K"mod4" +C;X31;K"code4" +C;X32;K"version" +C;X33;K"InBeta" +C;X1;Y2;K"Rhme" +C;X2;K"human melee attack" +C;X3;K"melee" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K75 +C;X12;K50 +C;X13;K125 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y3;K"Rhra" +C;X2;K"human ranged attack" +C;X3;K"ranged" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K75 +C;X12;K50 +C;X13;K125 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y4;K"Rhhb" +C;X2;K"human hammer bounce" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K125 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"rasd" +C;X17;K200 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y5;K"Rhar" +C;X2;K"human armor" +C;X3;K"armor" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K125 +C;X11;K25 +C;X12;K75 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y6;K"Rhgb" +C;X2;K"human gyro bombs" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K150 +C;X11;K50 +C;X12;K100 +C;X13;K0 +C;X14;K35 +C;X15;K0 +C;X16;K"renw" +C;X17;K3 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y7;K"Rhac" +C;X2;K"human architecture" +C;X3;K"armor" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K25 +C;X12;K100 +C;X13;K75 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"rhpo" +C;X21;K0.2 +C;X22;K0.2 +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y8;K"Rhde" +C;X2;K"human footman defend" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K150 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y9;K"Rhan" +C;X2;K"human animal breeding" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K150 +C;X11;K0 +C;X12;K250 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"rhpx" +C;X17;K150 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y10;K"Rhpt" +C;X2;K"human priest training" +C;X3;K"caster" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y11;K"Rhst" +C;X2;K"human sorceress training" +C;X3;K"caster" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y12;K"Rhla" +C;X2;K"human leather armor" +C;X3;K"armor" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K50 +C;X12;K100 +C;X13;K75 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y13;K"Rhri" +C;X2;K"human rifleman plus range" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K125 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"ratr" +C;X17;K200 +C;X18;K200 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y14;K"Rhlh" +C;X2;K"human lumber harvesting" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K100 +C;X12;K0 +C;X13;K0 +C;X14;K60 +C;X15;K15 +C;X16;K"rlum" +C;X17;K5 +C;X18;K5 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y15;K"Rhse" +C;X2;K"human magical sentinal" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K50 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y16;K"Rhfl" +C;X2;K"human flare" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K50 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y17;K"Rhss" +C;X2;K"human control magic" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y18;K"Rhrt" +C;X2;K"human rocket tank" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K1 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"rtma" +C;X17;K1 +C;X18;K"-" +C;X19;K"hmtt" +C;X20;K"rtma" +C;X21;K-1 +C;X22;K"-" +C;X23;K"hrtt" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y19;K"Rhpm" +C;X2;K"human backpack" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y20;K"Rhfc" +C;X2;K"human flak cannon" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y21;K"Rhfs" +C;X2;K"human frag shards" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y22;K"Rhcd" +C;X2;K"human cloud research" +C;X3;K"_" +C;X4;K"human" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K35 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y23;K"Rome" +C;X2;K"orc melee attack" +C;X3;K"melee" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K50 +C;X12;K75 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y24;K"Rora" +C;X2;K"orc ranged attack" +C;X3;K"ranged" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K50 +C;X12;K100 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y25;K"Roar" +C;X2;K"orc armor" +C;X3;K"armor" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K75 +C;X12;K75 +C;X13;K150 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y26;K"Rwdm" +C;X2;K"orc war drums damage" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"raud" +C;X17;K0.1 +C;X18;K0.1 +C;X19;K"Aakb" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y27;K"Ropg" +C;X2;K"orc pillage" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y28;K"Robs" +C;X2;K"orc grunt berserk" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"rhpx" +C;X17;K100 +C;X18;K"-" +C;X19;K"-" +C;X20;K"ratx" +C;X21;K3 +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y29;K"Rows" +C;X2;K"orc tauren smash" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K250 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y30;K"Roen" +C;X2;K"orc raider ensare" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y31;K"Rovs" +C;X2;K"orc wyvern venom spear" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y32;K"Rowd" +C;X2;K"orc witch doctor training" +C;X3;K"caster" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y33;K"Rost" +C;X2;K"orc shaman training" +C;X3;K"caster" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y34;K"Rosp" +C;X2;K"orc spiked barricade" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K25 +C;X11;K25 +C;X12;K75 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rspi" +C;X17;K4 +C;X18;K6 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y35;K"Rotr" +C;X2;K"orc troll regeneration" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K35 +C;X15;K0 +C;X16;K"rhpr" +C;X17;K0.8 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y36;K"Rolf" +C;X2;K"orc liquid fire" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K125 +C;X13;K0 +C;X14;K75 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y37;K"Roch" +C;X2;K"orc chaos conversion" +C;X3;K"_" +C;X4;K"demon" +C;X5;K"_" +C;X6;K1 +C;X7;K1 +C;X8;K1 +C;X9;K0 +C;X10;K0 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K0 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y38;K"Rowt" +C;X2;K"orc spiritwalker training" +C;X3;K"caster" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K150 +C;X18;K150 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.42 +C;X22;K0.42 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K60 +C;X26;K60 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y39;K"Rorb" +C;X2;K"orc reinforced defense" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K200 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"rart" +C;X17;K1 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y40;K"Robk" +C;X2;K"orc berserkers" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K1 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K175 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"rtma" +C;X17;K1 +C;X18;K"-" +C;X19;K"ohun" +C;X20;K"rtma" +C;X21;K-1 +C;X22;K"-" +C;X23;K"otbk" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y41;K"Ropm" +C;X2;K"orc backpack" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y42;K"Robf" +C;X2;K"orc naptha" +C;X3;K"_" +C;X4;K"orc" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y43;K"Rume" +C;X2;K"undead unholy strength" +C;X3;K"melee" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K125 +C;X11;K75 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y44;K"Rura" +C;X2;K"undead creature attack" +C;X3;K"ranged" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K50 +C;X12;K50 +C;X13;K75 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y45;K"Ruar" +C;X2;K"undead unholy armor" +C;X3;K"armor" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K125 +C;X11;K75 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y46;K"Ruac" +C;X2;K"undead ghoul cannibalize" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K0 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y47;K"Rugf" +C;X2;K"undead ghoul frenzy" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"rats" +C;X17;K0.25 +C;X18;K"-" +C;X19;K"-" +C;X20;K"rmvx" +C;X21;K80 +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y48;K"Ruwb" +C;X2;K"undead fiend web" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y49;K"Rusf" +C;X2;K"undead gargoyle stone" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y50;K"Rune" +C;X2;K"undead necromancer training" +C;X3;K"caster" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y51;K"Ruba" +C;X2;K"undead banshee training" +C;X3;K"caster" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y52;K"Rufb" +C;X2;K"undead frost wyrm breath" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K150 +C;X11;K0 +C;X12;K275 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y53;K"Rusl" +C;X2;K"undead skeleton life span" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"rrai" +C;X17;K15 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y54;K"Rucr" +C;X2;K"undead creature armor" +C;X3;K"armor" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K50 +C;X12;K75 +C;X13;K125 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y55;K"Rupc" +C;X2;K"undead plague cloud" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K200 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y56;K"Rusm" +C;X2;K"undead skeletal mastery" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K125 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"rlev" +C;X17;K1 +C;X18;K1 +C;X19;K"Arai" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y57;K"Rubu" +C;X2;K"undead burrowing" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y58;K"Rusp" +C;X2;K"undead avenger transform" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y59;K"Ruex" +C;X2;K"undead exhume corpses" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K125 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y60;K"Rupm" +C;X2;K"undead backpack" +C;X3;K"_" +C;X4;K"undead" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y61;K"Resm" +C;X2;K"nightelf strength of moon" +C;X3;K"melee" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K125 +C;X11;K50 +C;X12;K75 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y62;K"Resw" +C;X2;K"nightelf strength of wild" +C;X3;K"ranged" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K75 +C;X12;K75 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y63;K"Rema" +C;X2;K"nightelf moon armor" +C;X3;K"armor" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K50 +C;X12;K75 +C;X13;K75 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y64;K"Rerh" +C;X2;K"nightelf reinforced hides" +C;X3;K"armor" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K50 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y65;K"Reuv" +C;X2;K"nightelf ultravision" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K50 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y66;K"Renb" +C;X2;K"nightelf nature's blessing" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K150 +C;X11;K0 +C;X12;K200 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"rmvx" +C;X17;K40 +C;X18;K"-" +C;X19;K"-" +C;X20;K"rarm" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y67;K"Resc" +C;X2;K"nightelf scout" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y68;K"Remg" +C;X2;K"nightelf moon glaive upgrade" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K35 +C;X15;K0 +C;X16;K"ratc" +C;X17;K1 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y69;K"Reib" +C;X2;K"nightelf improved bows" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K35 +C;X15;K0 +C;X16;K"ratr" +C;X17;K200 +C;X18;K200 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y70;K"Remk" +C;X2;K"nightelf marksmanship" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K175 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"ratx" +C;X17;K3 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y71;K"Redt" +C;X2;K"nightelf DoT training" +C;X3;K"caster" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y72;K"Redc" +C;X2;K"nightelf DoC training" +C;X3;K"caster" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K45 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K75 +C;X26;K75 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K1 +C;X30;K1 +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y73;K"Resi" +C;X2;K"nightelf abolish magic" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K50 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y74;K"Recb" +C;X2;K"nightelf corrosive breath" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K125 +C;X11;K0 +C;X12;K225 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"renw" +C;X17;K3 +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y75;K"Reht" +C;X2;K"nightelf hippogryph taming" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y76;K"Repb" +C;X2;K"nightelf impaling bolt" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K125 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K60 +C;X15;K0 +C;X16;K"rasd" +C;X17;K200 +C;X18;K"-" +C;X19;K"-" +C;X20;K"renw" +C;X21;K2 +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K0 +C;X33;K1 +C;X1;Y77;K"Rers" +C;X2;K"nightelf resistant skin" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K75 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y78;K"Rehs" +C;X2;K"nightelf hardened skin" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K250 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y79;K"Reeb" +C;X2;K"nightelf enchanted bears" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K25 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y80;K"Reec" +C;X2;K"nightelf enchanted crows" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K25 +C;X11;K0 +C;X12;K100 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y81;K"Rews" +C;X2;K"nightelf well spring" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K75 +C;X11;K0 +C;X12;K150 +C;X13;K0 +C;X14;K30 +C;X15;K0 +C;X16;K"rmnx" +C;X17;K200 +C;X18;K"-" +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.83 +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y82;K"Repm" +C;X2;K"nightelf backpack" +C;X3;K"_" +C;X4;K"nightelf" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K0 +C;X10;K50 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y83;K"Rgfo" +C;X2;K"glyph of fortification" +C;X3;K"_" +C;X4;K"unknown" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K100 +C;X11;K50 +C;X12;K100 +C;X13;K50 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"rhpo" +C;X21;K0.2 +C;X22;K0.2 +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y84;K"Rguv" +C;X2;K"glyph of ultravision" +C;X3;K"_" +C;X4;K"unknown" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K100 +C;X11;K50 +C;X12;K100 +C;X13;K50 +C;X14;K60 +C;X15;K15 +C;X16;K"rauv" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K1 +C;X1;Y85;K"Rnen" +C;X2;K"naga myrmidon ensnare" +C;X3;K"_" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K75 +C;X13;K0 +C;X14;K40 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K0 +C;X1;Y86;K"Rnsw" +C;X2;K"naga sea witch training" +C;X3;K"caster" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K2 +C;X9;K1 +C;X10;K100 +C;X11;K0 +C;X12;K50 +C;X13;K100 +C;X14;K60 +C;X15;K15 +C;X16;K"rmnx" +C;X17;K100 +C;X18;K100 +C;X19;K"-" +C;X20;K"rmnr" +C;X21;K0.325 +C;X22;K0.325 +C;X23;K"-" +C;X24;K"rhpx" +C;X25;K40 +C;X26;K40 +C;X27;K"-" +C;X28;K"ratd" +C;X29;K0 +C;X30;K0 +C;X31;K"-" +C;X32;K1 +C;X33;K0 +C;X1;Y87;K"Rnsi" +C;X2;K"naga abolish magic" +C;X3;K"_" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K50 +C;X11;K0 +C;X12;K50 +C;X13;K0 +C;X14;K45 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K0 +C;X1;Y88;K"Rnat" +C;X2;K"naga attack" +C;X3;K"melee" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K150 +C;X11;K75 +C;X12;K75 +C;X13;K150 +C;X14;K60 +C;X15;K15 +C;X16;K"ratd" +C;X17;K1 +C;X18;K1 +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K0 +C;X1;Y89;K"Rnam" +C;X2;K"naga armor" +C;X3;K"armor" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K125 +C;X11;K100 +C;X12;K75 +C;X13;K150 +C;X14;K60 +C;X15;K15 +C;X16;K"rarm" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K0 +C;X1;Y90;K"Rnsb" +C;X2;K"naga submerge" +C;X3;K"_" +C;X4;K"naga" +C;X5;K"_" +C;X6;K1 +C;X7;K0 +C;X8;K1 +C;X9;K1 +C;X10;K25 +C;X11;K0 +C;X12;K25 +C;X13;K0 +C;X14;K20 +C;X15;K0 +C;X16;K"_" +C;X17;K"-" +C;X18;K"-" +C;X19;K"-" +C;X20;K"_" +C;X21;K"-" +C;X22;K"-" +C;X23;K"-" +C;X24;K"_" +C;X25;K"-" +C;X26;K"-" +C;X27;K"-" +C;X28;K"_" +C;X29;K"-" +C;X30;K"-" +C;X31;K"-" +C;X32;K1 +C;X33;K0 +E diff --git a/share/mpq/units/units/upgradeeffectmetadata.slk b/share/mpq/units/units/upgradeeffectmetadata.slk new file mode 100644 index 0000000..2a0ef3f --- /dev/null +++ b/share/mpq/units/units/upgradeeffectmetadata.slk @@ -0,0 +1,566 @@ +ID;PWXL;N;E +B;X21;Y56;D0 +C;X1;Y1;K"ID" +C;X2;K"effectID" +C;X3;K"comment" +C;X4;K"dataType" +C;X5;K"displayName" +C;X6;K"type" +C;X7;K"minVal" +C;X8;K"maxVal" +C;X9;K"forceNonNeg" +C;X10;K"version" +C;X11;K"stringExt" +C;X12;K"caseSens" +C;X13;K"canBeEmpty" +C;X14;K"importType" +C;X15;K"field" +C;X16;K"slk" +C;X17;K"index" +C;X18;K"sort" +C;X19;K"changeFlags" +C;X20;K"category" +C;X21;K"section" +C;X1;Y2;K"atdb" +C;X2;K"ratd" +C;X3;K"Attack Dice" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ATDB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y3;K"atdm" +C;X2;K"ratd" +C;X3;K"Attack Dice" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ATDM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y4;K"levb" +C;X2;K"rlev" +C;X3;K"Spell Level" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_LEVB" +C;X6;K"int" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y5;K"levm" +C;X2;K"rlev" +C;X3;K"Spell Level" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_LEVM" +C;X6;K"int" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y6;K"levc" +C;X2;K"rlev" +C;X3;K"Spell Level" +C;X4;K"Code" +C;X5;K"WESTRING_EEVAL_LEVC" +C;X6;K"abilCode" +C;X9;K0 +C;X10;K1 +C;X1;Y7;K"hpxb" +C;X2;K"rhpx" +C;X3;K"Hit Points" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_HPXB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y8;K"hpxm" +C;X2;K"rhpx" +C;X3;K"Hit Points" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_HPXM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y9;K"mnxb" +C;X2;K"rmnx" +C;X3;K"Mana Points" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MNXB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y10;K"mnxm" +C;X2;K"rmnx" +C;X3;K"Mana Points" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MNXM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y11;K"mvxb" +C;X2;K"rmvx" +C;X3;K"Movement Speed" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MVXB" +C;X6;K"int" +C;X7;K-400 +C;X8;K400 +C;X9;K0 +C;X10;K1 +C;X1;Y12;K"mvxm" +C;X2;K"rmvx" +C;X3;K"Movement Speed" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MVXM" +C;X6;K"int" +C;X7;K-400 +C;X8;K400 +C;X9;K0 +C;X10;K1 +C;X1;Y13;K"mnrb" +C;X2;K"rmnr" +C;X3;K"Mana Regen" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MNRB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y14;K"mnrm" +C;X2;K"rmnr" +C;X3;K"Mana Regen" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MNRM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y15;K"hpob" +C;X2;K"rhpo" +C;X3;K"Hit Points %" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_HPOB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y16;K"hpom" +C;X2;K"rhpo" +C;X3;K"Hit Points %" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_HPOM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y17;K"manb" +C;X2;K"rman" +C;X3;K"Mana Points %" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MANB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y18;K"manm" +C;X2;K"rman" +C;X3;K"Mana Points %" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MANM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y19;K"movb" +C;X2;K"rmov" +C;X3;K"Movement Speed %" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MOVB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y20;K"movm" +C;X2;K"rmov" +C;X3;K"Movement Speed %" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MOVM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y21;K"atxb" +C;X2;K"ratx" +C;X3;K"Attack Damage" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ATXB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y22;K"atxm" +C;X2;K"ratx" +C;X3;K"Attack Damage" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ATXM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y23;K"lumb" +C;X2;K"rlum" +C;X3;K"Lumber" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_LUMB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y24;K"lumm" +C;X2;K"rlum" +C;X3;K"Lumber" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_LUMM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y25;K"atrb" +C;X2;K"ratr" +C;X3;K"Attack Range" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ATRB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y26;K"atrm" +C;X2;K"ratr" +C;X3;K"Attack Range" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ATRM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y27;K"atsb" +C;X2;K"rats" +C;X3;K"Attack Speed" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ATSB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y28;K"atsm" +C;X2;K"rats" +C;X3;K"Attack Speed" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ATSM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y29;K"spib" +C;X2;K"rspi" +C;X3;K"Spiked Barricade Damage" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_SPIB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y30;K"spim" +C;X2;K"rspi" +C;X3;K"Spiked Barricade Damage" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_SPIM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y31;K"hprb" +C;X2;K"rhpr" +C;X3;K"Hit Point Regeneration" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_HPRB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y32;K"hprm" +C;X2;K"rhpr" +C;X3;K"Hit Point Regeneration" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_HPRM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y33;K"sigb" +C;X2;K"rsig" +C;X3;K"Sight Range" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_SIGB" +C;X6;K"int" +C;X7;K-1800 +C;X8;K1800 +C;X9;K0 +C;X10;K1 +C;X1;Y34;K"sigm" +C;X2;K"rsig" +C;X3;K"Sight Range" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_SIGM" +C;X6;K"int" +C;X7;K-1800 +C;X8;K1800 +C;X9;K0 +C;X10;K1 +C;X1;Y35;K"atcb" +C;X2;K"ratc" +C;X3;K"Attack Target Count" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ATCB" +C;X6;K"int" +C;X7;K-10000 +C;X8;K10000 +C;X9;K0 +C;X10;K1 +C;X1;Y36;K"atcm" +C;X2;K"ratc" +C;X3;K"Attack Target Count" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ATCM" +C;X6;K"int" +C;X7;K-10000 +C;X8;K10000 +C;X9;K0 +C;X10;K1 +C;X1;Y37;K"adlb" +C;X2;K"radl" +C;X3;K"Attack Damage Loss" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ADLB" +C;X6;K"unreal" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y38;K"adlm" +C;X2;K"radl" +C;X3;K"Attack Damage Loss" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ADLM" +C;X6;K"unreal" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y39;K"minb" +C;X2;K"rmin" +C;X3;K"Gold Harvest" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_MINB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y40;K"minm" +C;X2;K"rmin" +C;X3;K"Gold Harvest" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_MINM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y41;K"raib" +C;X2;K"rrai" +C;X3;K"Raise Dead Duration" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_RAIB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y42;K"raim" +C;X2;K"rrai" +C;X3;K"Raise Dead Duration" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_RAIM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y43;K"entb" +C;X2;K"rent" +C;X3;K"Entangle Gold Amount" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ENTB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y44;K"entm" +C;X2;K"rent" +C;X3;K"Entangle Gold Amount" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ENTM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y45;K"enwb" +C;X2;K"renw" +C;X3;K"Enable Weapons" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ENWB" +C;X6;K"attackBits" +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K1 +C;X1;Y46;K"audb" +C;X2;K"raud" +C;X3;K"Aura Radius" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_AUDB" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y47;K"audm" +C;X2;K"raud" +C;X3;K"Aura Radius" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_AUDM" +C;X6;K"unreal" +C;X7;K-100 +C;X8;K100 +C;X9;K0 +C;X10;K1 +C;X1;Y48;K"asdb" +C;X2;K"rasd" +C;X3;K"Attack Spill Distance" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ASDB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y49;K"asdm" +C;X2;K"rasd" +C;X3;K"Attack Spill Distance" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ASDM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y50;K"asrb" +C;X2;K"rasr" +C;X3;K"Attack Spill Radius" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ASRB" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y51;K"asrm" +C;X2;K"rasr" +C;X3;K"Attack Spill Radius" +C;X4;K"Mod" +C;X5;K"WESTRING_EEVAL_ASRM" +C;X6;K"int" +C;X7;K-100000 +C;X8;K100000 +C;X9;K0 +C;X10;K1 +C;X1;Y52;K"roob" +C;X2;K"rroo" +C;X3;K"Rooted Weapons" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_ROOB" +C;X6;K"attackBits" +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K1 +C;X1;Y53;K"urob" +C;X2;K"ruro" +C;X3;K"Rooted Weapons" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_UROB" +C;X6;K"attackBits" +C;X7;K0 +C;X8;K3 +C;X9;K0 +C;X10;K1 +C;X1;Y54;K"uart" +C;X2;K"rart" +C;X3;K"Armor Type" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_UART" +C;X6;K"defenseTypeInt" +C;X9;K0 +C;X10;K1 +C;X1;Y55;K"utma" +C;X2;K"rtma" +C;X3;K"Tech Max Allowed" +C;X4;K"Base" +C;X5;K"WESTRING_EEVAL_UTMA" +C;X6;K"techAvail" +C;X9;K0 +C;X10;K1 +C;X1;Y56;K"ttma" +C;X2;K"rtma" +C;X3;K"Tech Max Allowed" +C;X4;K"Code" +C;X5;K"WESTRING_EEVAL_TTMA" +C;X6;K"unitCode" +C;X9;K0 +C;X10;K1 +E diff --git a/share/mpq/units/units/upgrademetadata.slk b/share/mpq/units/units/upgrademetadata.slk new file mode 100644 index 0000000..cce0246 --- /dev/null +++ b/share/mpq/units/units/upgrademetadata.slk @@ -0,0 +1,689 @@ +ID;PWXL;N;E +B;X22;Y38;D0 +C;X1;Y1;K"ID" +C;X2;K"field" +C;X3;K"slk" +C;X4;K"index" +C;X5;K"repeat" +C;X6;K"appendIndex" +C;X7;K"effectType" +C;X8;K"effectIndex" +C;X9;K"category" +C;X10;K"displayName" +C;X11;K"sort" +C;X12;K"type" +C;X13;K"changeFlags" +C;X14;K"importType" +C;X15;K"stringExt" +C;X16;K"caseSens" +C;X17;K"canBeEmpty" +C;X18;K"minVal" +C;X19;K"maxVal" +C;X20;K"forceNonNeg" +C;X21;K"version" +C;X22;K"section" +C;X1;Y2;K"gnam" +C;X2;K"Name" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"text" +C;X10;K"WESTRING_GEVAL_GNAM" +C;X11;K"a1a00" +C;X12;K"string" +C;X13;K"t" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X19;K"TTName" +C;X20;K0 +C;X21;K1 +C;X1;Y3;K"gnsf" +C;X2;K"EditorSuffix" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"text" +C;X10;K"WESTRING_GEVAL_GNSF" +C;X11;K"a1a01" +C;X12;K"string" +C;X13;K"t" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X1;Y4;K"grac" +C;X2;K"race" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GRAC" +C;X11;K"a1a02" +C;X12;K"unitRace" +C;X13;K"c" +C;X15;K0 +C;X16;K0 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y5;K"gtp1" +C;X2;K"Tip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"text" +C;X10;K"WESTRING_GEVAL_GTP1" +C;X11;K"d0a01" +C;X12;K"string" +C;X13;K"t" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X19;K"TTDesc" +C;X20;K0 +C;X21;K1 +C;X1;Y6;K"gub1" +C;X2;K"Ubertip" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"text" +C;X10;K"WESTRING_GEVAL_GUB1" +C;X11;K"d0b01" +C;X12;K"string" +C;X13;K"t" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X19;K"TTUber" +C;X20;K0 +C;X21;K1 +C;X1;Y7;K"ghk1" +C;X2;K"Hotkey" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"text" +C;X10;K"WESTRING_GEVAL_GHK1" +C;X11;K"d0c01" +C;X12;K"char" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y8;K"gbpx" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K0 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"art" +C;X10;K"WESTRING_GEVAL_GBPX" +C;X11;K"b2a00" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K3 +C;X20;K0 +C;X21;K1 +C;X1;Y9;K"gbpy" +C;X2;K"Buttonpos" +C;X3;K"Profile" +C;X4;K1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"art" +C;X10;K"WESTRING_GEVAL_GBPY" +C;X11;K"b2a01" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K2 +C;X20;K0 +C;X21;K1 +C;X1;Y10;K"gar1" +C;X2;K"Art" +C;X3;K"Profile" +C;X4;K0 +C;X5;K1 +C;X6;K0 +C;X8;K0 +C;X9;K"art" +C;X10;K"WESTRING_GEVAL_GAR1" +C;X11;K"d0d01" +C;X12;K"icon" +C;X13;K"i" +C;X14;K"Image" +C;X15;K0 +C;X16;K0 +C;X17;K1 +C;X19;K200 +C;X20;K0 +C;X21;K1 +C;X1;Y11;K"gcls" +C;X2;K"class" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GCLS" +C;X11;K"c1a02" +C;X12;K"upgradeClass" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X19;K50 +C;X20;K0 +C;X21;K1 +C;X1;Y12;K"glvl" +C;X2;K"maxlevel" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GLVL" +C;X11;K"d0a00" +C;X12;K"int" +C;X13;K"s" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K1 +C;X19;K100 +C;X20;K0 +C;X21;K1 +C;X1;Y13;K"gglb" +C;X2;K"goldbase" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GGLB" +C;X11;K"c1a04" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y14;K"gglm" +C;X2;K"goldmod" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GGLM" +C;X11;K"c1a05" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y15;K"glmb" +C;X2;K"lumberbase" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GLMB" +C;X11;K"c1a06" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y16;K"glmm" +C;X2;K"lumbermod" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GLMM" +C;X11;K"c1a07" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y17;K"gtib" +C;X2;K"timebase" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GTIB" +C;X11;K"c1a08" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K300 +C;X20;K0 +C;X21;K1 +C;X1;Y18;K"gtim" +C;X2;K"timemod" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GTIM" +C;X11;K"c1a09" +C;X12;K"int" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K300 +C;X20;K0 +C;X21;K1 +C;X1;Y19;K"gef1" +C;X2;K"effect1" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"EffectID" +C;X8;K1 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GEF1" +C;X11;K"c1a10" +C;X12;K"upgradeEffect" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y20;K"gba1" +C;X2;K"base1" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Base" +C;X8;K1 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GBA1" +C;X11;K"c1a11" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y21;K"gmo1" +C;X2;K"mod1" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Mod" +C;X8;K1 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GMO1" +C;X11;K"c1a12" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y22;K"gco1" +C;X2;K"code1" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Code" +C;X8;K1 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GCO1" +C;X11;K"c1a13" +C;X12;K"string" +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K32 +C;X20;K0 +C;X21;K1 +C;X1;Y23;K"gef2" +C;X2;K"effect2" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"EffectID" +C;X8;K2 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GEF2" +C;X11;K"c1b10" +C;X12;K"upgradeEffect" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y24;K"gba2" +C;X2;K"base2" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Base" +C;X8;K2 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GBA2" +C;X11;K"c1b11" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y25;K"gmo2" +C;X2;K"mod2" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Mod" +C;X8;K2 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GMO2" +C;X11;K"c1b12" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y26;K"gco2" +C;X2;K"code2" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Code" +C;X8;K2 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GCO2" +C;X11;K"c1b13" +C;X12;K"string" +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K32 +C;X20;K0 +C;X21;K1 +C;X1;Y27;K"gef3" +C;X2;K"effect3" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"EffectID" +C;X8;K3 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GEF3" +C;X11;K"c1c10" +C;X12;K"upgradeEffect" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y28;K"gba3" +C;X2;K"base3" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Base" +C;X8;K3 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GBA3" +C;X11;K"c1c11" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y29;K"gmo3" +C;X2;K"mod3" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Mod" +C;X8;K3 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GMO3" +C;X11;K"c1c12" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y30;K"gco3" +C;X2;K"code3" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Code" +C;X8;K3 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GCO3" +C;X11;K"c1c13" +C;X12;K"string" +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K32 +C;X20;K0 +C;X21;K1 +C;X1;Y31;K"gef4" +C;X2;K"effect4" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"EffectID" +C;X8;K4 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GEF4" +C;X11;K"c1d10" +C;X12;K"upgradeEffect" +C;X15;K1 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y32;K"gba4" +C;X2;K"base4" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Base" +C;X8;K4 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GBA4" +C;X11;K"c1d11" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y33;K"gmo4" +C;X2;K"mod4" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Mod" +C;X8;K4 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GMO4" +C;X11;K"c1d12" +C;X12;K"unreal" +C;X15;K0 +C;X16;K0 +C;X17;K0 +C;X18;K0 +C;X19;K99999 +C;X20;K0 +C;X21;K1 +C;X1;Y34;K"gco4" +C;X2;K"code4" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X7;K"Code" +C;X8;K4 +C;X9;K"data" +C;X10;K"WESTRING_GEVAL_GCO4" +C;X11;K"c1d13" +C;X12;K"string" +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X18;K0 +C;X19;K32 +C;X20;K0 +C;X21;K1 +C;X1;Y35;K"ginh" +C;X2;K"inherit" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GINH" +C;X11;K"c1a03" +C;X12;K"bool" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X20;K0 +C;X21;K1 +C;X1;Y36;K"greq" +C;X2;K"Requires" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K1 +C;X6;K1 +C;X8;K0 +C;X9;K"tech" +C;X10;K"WESTRING_GEVAL_GREQ" +C;X11;K"d0a00a" +C;X12;K"techList" +C;X15;K0 +C;X16;K1 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y37;K"grqc" +C;X2;K"Requiresamount" +C;X3;K"Profile" +C;X4;K-1 +C;X5;K1 +C;X6;K1 +C;X8;K0 +C;X9;K"tech" +C;X10;K"WESTRING_GEVAL_GRQC" +C;X11;K"d0a00b" +C;X12;K"intList" +C;X15;K0 +C;X16;K0 +C;X17;K1 +C;X20;K0 +C;X21;K1 +C;X1;Y38;K"glob" +C;X2;K"global" +C;X3;K"UpgradeData" +C;X4;K-1 +C;X5;K0 +C;X6;K0 +C;X8;K0 +C;X9;K"stats" +C;X10;K"WESTRING_GEVAL_GLOB" +C;X11;K"c1a03a" +C;X12;K"bool" +C;X15;K0 +C;X16;K1 +C;X17;K0 +C;X20;K0 +C;X21;K1 +E diff --git a/share/mpq/ydtrigger/action.txt b/share/mpq/ydtrigger/action.txt new file mode 100644 index 0000000..3752b2c --- /dev/null +++ b/share/mpq/ydtrigger/action.txt @@ -0,0 +1,176 @@ +[YDWERegionMultiple] +title = "收纳盒" +description = "-------- ${注释文本} --------" +comment = "" +category = TC_COMMENT +[[.args]] +type = scriptcode + +[YDWEEnumUnitsInRangeMultiple] +title = "选取单位 -- 圆形范围" +description = "选取以(${坐标X}, ${坐标Y})为圆心,${半径}为半径的圆范围内的单位做动作" +comment = "选取范围内的单位做动作" +category = TC_YDBF +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" + +[YDWESetAnyTypeLocalVariable] +title = "局部变量 -- 设置" +description = "设置 [${类型}] loc_${变量名} = ${null}" +comment = "设置局部变量,可以指定变量类型.在1.24下不可直接将变量置为null" +category = TC_YDBF +[[.args]] +type = typename +[[.args]] +type = scriptcode +[[.args]] +type = Null + +[YDWESetAnyTypeLocalArray] +title = "局部变量 -- 设置数组 [New!]" +description = "设置 [${类型}] loc_${变量名}[${索引}] = ${null}" +comment = "设置局部变量数组,注意: 数组不能穿透逆天计时器、逆天触发器" +category = TC_YDBF +[[.args]] +type = typename +[[.args]] +type = scriptcode +[[.args]] +type = integer +default = 0 +[[.args]] +type = Null + +[YDWEForLoopLocVarMultiple] +title = "局部变量 -- 循环" +description = "循环 loop_${局部变量名} 从 ${开始} 到 ${结束}" +comment = "" +category = TC_YDBF +[[.args]] +type = scriptcode +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" + +[YDWETimerStartMultiple] +title = "计时器 -- 运行" +description = "运行 ${计时器},周期: ${时间} 秒,模式: ${模式}" +comment = "让计时器运行多个动作。计时器内不能使用等待。" +category = TC_YDBF +[[.args]] +type = timer +default = "CreateTimer" +[[.args]] +type = real +default = "0.03" +min = 0 +[[.args]] +type = periodicoption +default = "PeriodicOptionOneTime" + +[YDWETimerStartFlush] +title = "计时器 -- 清除" +description = "清除当前逆天计时器" +comment = "删除当前逆天计时器,并清空缓存或哈希表." +category = TC_YDBF +[[.args]] +type = nothing + +[YDWERegisterTriggerMultiple] +title = "触发器 -- 注册" +description = "注册 ${触发器}" +comment = "触发器内不能使用等待。" +category = TC_YDBF +[[.args]] +type = trigger +default = "CreateTrigger" + +[YDWERegisterTriggerFlush] +title = "触发器 -- 清除" +description = "清除当前逆天触发器" +comment = "删除当前逆天触发器,并清空缓存或哈希表." +category = TC_YDBF +[[.args]] +type = nothing + +[YDWEExecuteTriggerMultiple] +title = "触发器 -- 运行 [New!]" +description = "运行 ${触发器}, ${条件}" +comment = "" +category = TC_YDBF +[[.args]] +type = trigger +[[.args]] +type = tirggerexecute +default = "tirggerexecute_notcondition" + +[YDWESaveAnyTypeDataByUserData] +title = "自定义值 -- 设置" +description = "设置 [${类型}] ${null} 的 ${属性} 为 [${类型}]${null}" +comment = "设置某个数据的自定义属性,如设置[单位]李启铭_的_爸爸_为[单位]李刚。" +category = TC_YDBF +[[.args]] +type = typename +[[.args]] +type = Null +[[.args]] +type = scriptcode +[[.args]] +type = typename +[[.args]] +type = Null + +[YDWEFlushAllByUserData] +title = "自定义值 -- 清除全部" +description = "清空 [${类型}] ${null} 的所有自定义属性。" +comment = "清空某个数据所有的自定义属性。" +category = TC_YDBF +[[.args]] +type = typename +[[.args]] +type = Null + +[YDWEFlushAnyTypeDataByUserData] +title = "自定义值 -- 清除" +description = "清空 [${类型}] ${null} 的[${类型}] ${属性}" +comment = "清空某个数据的某项自定义属性。" +category = TC_YDBF +[[.args]] +type = typename +[[.args]] +type = Null +[[.args]] +type = typename +[[.args]] +type = scriptcode + +[YDWEActivateTrigger] +title = "激活触发" +description = "激活 ${Trigger} ( ${On/Off} 兼容模式 )" +comment = "不要多次激活一个触发器。不要激活未开启休眠的触发器。打开兼容模式会略微影响效率,若关闭兼容模式,请保证该动作在需要激活的触发器之后,否则会有语法错误。" +category = TC_TRIGGER +[[.args]] +type = trigger +[[.args]] +type = onoffoption +default = "OnOffOn" + +[YDWEWaitForLocalVariable] +title = "等待(局部变量专用)[YDWE]" +description = "等待 ${Time} 秒(局部变量专用)" +comment = "使用逆天系列的UI,无需使用它。" +category = TC_YDHIDE +[[.args]] +type = real +default = "2" +min = 0 diff --git a/share/mpq/ydtrigger/call.txt b/share/mpq/ydtrigger/call.txt new file mode 100644 index 0000000..05d0255 --- /dev/null +++ b/share/mpq/ydtrigger/call.txt @@ -0,0 +1,66 @@ +[YDWECustomScriptCode] +title = "自定义代码" +description = "${Jass 代码}" +comment = "可以在任何有返回值的地方输入一行代码. 比如: 杀死(自定义代码:GetTriggerUnit())。" +category = TC_YDBF +returns = AnyReturnType +[[.args]] +type = scriptcode + +[YDWEGetAnyTypeLocalVariable] +title = "局部变量 -- 读取" +description = "loc_${变量名}" +comment = "可以获取到任意类型的局部变量。" +category = TC_YDBF +returns = AnyReturnType +[[.args]] +type = scriptcode + +[YDWEGetAnyTypeLocalArray] +title = "局部变量 -- 读取数组 [New!]" +description = "loc_${变量名}[${索引}]" +comment = "可以获取到任意类型的局部变量数组。" +category = TC_YDBF +returns = AnyReturnType +[[.args]] +type = scriptcode +[[.args]] +type = integer +default = 0 + +[YDWEForLoopLocVarIndex] +title = "局部变量 -- 读取(循环数)" +description = "loop_${变量名}" +comment = "用来获取当前循环中的循环数,是个真正的Jass局部变量。" +category = TC_YDBF +returns = integer +[[.args]] +type = scriptcode + +[YDWELoadAnyTypeDataByUserData] +title = "自定义值 -- 读取" +description = "获取 [${类型}] ${null} 的 ${属性}" +comment = "从某个数据上获取自定义值,如获取[单位] 恶魔猎手 的 命中率 。" +category = TC_YDBF +returns = AnyReturnType +[[.args]] +type = typename +[[.args]] +type = Null +[[.args]] +type = scriptcode + +[YDWEHaveSavedAnyTypeDataByUserData] +title = "自定义值 -- 是否存有" +description = "[${类型}] ${null} 拥有 [${类型}] ${属性}" +comment = "判断某个数据的自定义值是否存在,如[单位] 恶魔猎手 拥有[物品] 圣剑。" +category = TC_YDBF +returns = boolean +[[.args]] +type = typename +[[.args]] +type = Null +[[.args]] +type = typename +[[.args]] +type = scriptcode diff --git a/share/mpq/ydtrigger/define.txt b/share/mpq/ydtrigger/define.txt new file mode 100644 index 0000000..39f134a --- /dev/null +++ b/share/mpq/ydtrigger/define.txt @@ -0,0 +1,57 @@ +[TriggerCategories] +TC_YDLC=变量[YDWE],ReplaceableTextures\WorldEditUI\Editor-ScriptVariable.blp,1 + +[TriggerTypes] +typename=1,0,0,参数类型,string +objecttype=1,0,0,物体类型,string +tirggerexecute=1,0,0,运行触发器,boolean + +[TriggerParams] +typename01_integer=0,typename,1,整数 +typename02_real=0,typename,2,实数 +typename03_boolean=0,typename,3,真值 +typename04_string=0,typename,4,字符串 +typename05_timer=0,typename,5,计时器 +typename06_trigger=0,typename,6,触发器 +typename07_unit=0,typename,7,单位 +typename08_unitcode=0,typename,8,单位类型 +typename09_abilcode=0,typename,9,技能 +typename10_item=0,typename,10,物品 +typename11_itemcode=0,typename,11,物品类型 +typename12_group=0,typename,12,单位组 +typename13_player=0,typename,13,玩家 +typename14_location=0,typename,14,点 +typename15_destructable=0,typename,15,可破坏物 +typename16_force=0,typename,16,玩家组 +typename17_rect=0,typename,17,矩形区域 +typename18_region=0,typename,18,不规则区域 +typename19_sound=0,typename,19,声音 +typename20_effect=0,typename,20,特效 +typename21_unitpool=0,typename,21,单位池 +typename22_itempool=0,typename,22,物品池 +typename23_quest=0,typename,23,任务 +typename24_questitem=0,typename,24,任务目标项 +typename25_timerdialog=0,typename,25,计时器窗口 +typename26_leaderboard=0,typename,26,排行榜 +typename27_multiboard=0,typename,27,多面板 +typename28_multiboarditem=0,typename,28,多面板项目 +typename29_trackable=0,typename,29,可追踪物 +typename30_dialog=0,typename,30,对话框 +typename31_button=0,typename,31,对话框按钮 +typename32_texttag=0,typename,32,漂浮文字 +typename33_lightning=0,typename,33,闪电 +typename34_image=0,typename,34,图像 +typename35_fogstate=0,typename,35,迷雾 +typename36_fogmodifier=0,typename,36,可见度修正器 +typename37_radian=0,typename,37,弧度 +typename38_degree=0,typename,38,角度 +typename39_frame=0,typename,39,Frame +objecttype00_abilcode=0,objecttype,YDWE_OBJECT_TYPE_ABILITY,WESTRING_OBJTAB_ABILITIES +objecttype01_buffcode=0,objecttype,YDWE_OBJECT_TYPE_BUFF,WESTRING_OBJTAB_BUFFS +objecttype02_unitcode=0,objecttype,YDWE_OBJECT_TYPE_UNIT,WESTRING_OBJTAB_UNITS +objecttype03_itemcode=0,objecttype,YDWE_OBJECT_TYPE_ITEM,WESTRING_OBJTAB_ITEMS +objecttype04_techcode=0,objecttype,YDWE_OBJECT_TYPE_UPGRADE,WESTRING_OBJTAB_UPGRADES +objecttype05_doodadcode=0,objecttype,YDWE_OBJECT_TYPE_DOODAD,WESTRING_OBJTAB_DOODADS +objecttype06_destructablecode=0,objecttype,YDWE_OBJECT_TYPE_DESTRUCTABLE,WESTRING_OBJTAB_DESTRUCTABLES +tirggerexecute_notcondition=0,tirggerexecute,false,无视条件 +tirggerexecute_hascondition=0,tirggerexecute,true,检查条件 diff --git a/share/mpq/ydtrigger/event.txt b/share/mpq/ydtrigger/event.txt new file mode 100644 index 0000000..0714878 --- /dev/null +++ b/share/mpq/ydtrigger/event.txt @@ -0,0 +1,7 @@ +[YDWEDisableRegister] +title = "休眠 [YDWE]" +description = "休眠" +comment = "休眠后,当前触发器不会在读取地图时进行注册,需要手动激活." +category = TC_NOTHING +[[.args]] +type = nothing diff --git a/share/mpq/ydwe/action.txt b/share/mpq/ydwe/action.txt new file mode 100644 index 0000000..74c4598 --- /dev/null +++ b/share/mpq/ydwe/action.txt @@ -0,0 +1,14826 @@ +[DoNothing] +title = "不做任何动作" +description = "不做任何动作" +comment = "" +category = TC_NOTHING +[[.args]] +type = nothing + +[ExecuteFunc] +title = "运行函数 [R]" +description = "运行: ${函数名}" +comment = "使用该功能运行的函数与触发独立, 只能运行自定义无参数函数." +category = TC_NOTHING +[[.args]] +type = string + +[CommentString] +title = "文本注释" +description = "-------- ${注释文本} --------" +comment = "" +category = TC_COMMENT +[[.args]] +type = scriptcode + +[CustomScriptCode] +title = "自定义代码" +description = "自定义代码: ${Jass 代码}" +comment = "输入一行代码. 比如: call my_func(udg_my_var)" +category = TC_CUSTOM +[[.args]] +type = scriptcode + +[TriggerSleepAction] +title = "等待(玩家时间)" +description = "等待 ${Time} 秒" +comment = "该延迟功能受真实时间的影响(也就是玩家机器上的时间). 因此每个玩家所延迟的时间可能不一致." +category = TC_WAIT +[[.args]] +type = real +default = "2" +min = 0 + +[PolledWait] +title = "等待(游戏时间)" +description = "等待 ${Time} 秒(游戏时间)" +comment = "该延迟功能受游戏时间的影响.通过调整游戏速度来调节该功能的具体延迟时间的长短." +category = TC_WAIT +[[.args]] +type = real +default = "2" +min = 0 + +[YDWEWaitForLocalVariable] +title = "等待(局部变量专用)[YDWE]" +description = "等待 ${Time} 秒(局部变量专用)" +comment = "当触发器内有局部变量,需要用到等待动作时,必须采用这个局部变量专用等待动作,不然触发器无法用于多人。" +category = TC_WAIT +[[.args]] +type = real +default = "2" +min = 0 + +[WaitForCondition] +title = "等待(条件成立)" +description = "检查 ${条件} 每隔 ${Interval} 秒(直到条件成立)" +comment = "采用的是'while-do'类型的方式等待,比较耗CPU资源.注意不要造成过多的不成立的条件." +category = TC_WAIT +[[.args]] +type = boolexpr +[[.args]] +type = real +default = "1" +min = 0.1 + +[WaitForSoundBJ] +title = "等待(声音结束)" +description = "等待直到 ${Sound} 在 ${Time} 秒后结束播放." +comment = "该功能只对于当前播放的3D-音效有效. 如果该音效未播放或已经结束, 则该功能无效." +script_name = TriggerWaitForSound +category = TC_WAIT +[[.args]] +type = sound +[[.args]] +type = real +default = "0" + +[SetVariable] +title = "设置变量" +description = "设置 ${变量} = ${Value}" +comment = "给变量赋值." +category = TC_SETVARIABLE +[[.args]] +type = AnyGlobal +[[.args]] +type = Null + +[ReturnAction] +title = "跳过剩余动作" +description = "跳过剩余动作" +comment = "跳过剩余动作,直接中止触发运行. 但是在组动作中无效." +category = TC_SKIPACTIONS +[[.args]] +type = nothing + +[YDWEExitLoop] +title = "退出循环" +description = "退出循环" +comment = "退出循环,也能退出逆天选取单位动作." +script_name = DoNothing() YDNL exitwhen true// +category = TC_SKIPACTIONS +[[.args]] +type = nothing + +[IfThenElseMultiple] +title = "If / Then / Else (多项功能)" +description = "如果(所有的条件成立) 则运行 (Then - 动作) 否则运行 (Else - 动作)" +comment = "" +category = TC_LOGIC +[[.args]] +type = nothing + +[IfThenElse] +title = "If / Then / Else (单项功能)" +description = "如果 ${条件} 成立,则运行 ${Action} 否则运行 ${Action}" +comment = "" +category = TC_LOGIC +[[.args]] +type = boolexpr +[[.args]] +type = code +default = "DoNothing" +[[.args]] +type = code +default = "DoNothing" + +[ForLoopAMultiple] +title = "使用循环整数A (做多项动作)" +description = "循环 循环整数A 从 ${开始} 到 ${结束}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" + +[ForLoopBMultiple] +title = "使用循环整数B (做多项动作)" +description = "循环 循环整数B 从 ${开始} 到 ${结束}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" + +[ForLoopVarMultiple] +title = "使用整数变量 (做多项动作)" +description = "循环 ${整数变量} 从 ${开始} 到 ${结束}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integervar +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" + +[ForLoopA] +title = "使用循环整数A (做动作)" +description = "循环 循环整数A 从 ${开始} 到 ${结束}, 运行 ${动作}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" +[[.args]] +type = code +default = "DoNothing" + +[ForLoopB] +title = "使用循环整数B (做动作)" +description = "循环 循环整数B 从 ${开始} 到 ${结束}, 运行 ${动作}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" +[[.args]] +type = code +default = "DoNothing" + +[ForLoopVar] +title = "使用整数变量 (做动作)" +description = "循环 ${整数变量} 从 ${开始} 到 ${结束}, do ${动作}" +comment = "后一个整数一定要比前一个整数要大." +category = TC_FORLOOP +[[.args]] +type = integervar +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" +[[.args]] +type = code +default = "DoNothing" + +[SetForLoopIndexA] +title = "设置循环整数A [R]" +description = "设置循环整数A的值为 ${数值}" +comment = "" +category = TC_FORLOOP +[[.args]] +type = integer +default = "10" + +[SetForLoopIndexB] +title = "设置循环整数B [R]" +description = "设置循环整数B的值为 ${数值}" +comment = "" +category = TC_FORLOOP +[[.args]] +type = integer +default = "10" + +[StartMeleeAI] +title = "启用对战AI" +description = "为 ${Player} 启用对战AI: ${Script}" +comment = "AI只能对电脑玩家使用,当运行该动作后,与之配匹的电脑玩家会强制执行该AI脚本." +category = TC_AI +[[.args]] +type = player +default = "Player00" +[[.args]] +type = aiscript +default = "\"map.ai\"" + +[StartCampaignAI] +title = "启用战役AI" +description = "为 ${Player} 启用战役AI: ${Script}" +comment = "AI只能对电脑玩家使用,当运行该动作后,与之配匹的电脑玩家会强制执行该AI脚本." +category = TC_AI +[[.args]] +type = player +default = "Player00" +[[.args]] +type = aiscript +default = "\"map.ai\"" + +[CommandAI] +title = "发送AI命令" +description = "对 ${Player} 发送AI命令:(${命令}, ${数据})" +comment = "发送的AI命令将被AI脚本所使用." +category = TC_AI +[[.args]] +type = player +default = "Player00" +[[.args]] +type = integer +[[.args]] +type = integer + +[PauseCompAI] +title = "暂停/恢复 AI脚本运行 [R]" +description = "设定 ${Player} ${暂停/恢复} 当前AI脚本的运行" +comment = "事实上该函数是有问题的,可以这么理解:设玩家当前AI脚本的运行状态R为0,暂停1次则R+1,恢复1次则R-1,仅当R=0时该玩家才会运行AI. 在使用前请先理解这段话的意思." +category = TC_AI +[[.args]] +type = player +default = "Player00" +[[.args]] +type = pauseresumeoption +default = "PauseResumePause" + +[RemoveGuardPosition] +title = "忽视指定单位的警戒点" +description = "忽视 ${单位} 的警戒点" +comment = "单位将不会自动返回原警戒点. 一个很有用的功能就是刷怪进攻时忽视单位警戒范围的话,怪就不会想家了." +category = TC_AI +[[.args]] +type = unit + +[RemoveAllGuardPositions] +title = "忽视所有单位的警戒点" +description = "忽视 ${Player} 的所有单位的警戒点" +comment = "单位将不会自动返回原警戒点. 一个很有用的功能就是刷怪进攻时忽视单位警戒范围的话,怪就不会想家了." +category = TC_AI +[[.args]] +type = player +default = "Player00" + +[RecycleGuardPosition] +title = "恢复指定单位的警戒点" +description = "恢复 ${单位} 的警戒点" +comment = "这个动作通过 AI 来恢复特定单位的警戒点." +category = TC_AI +[[.args]] +type = unit + +[SetUnitCreepGuard] +title = "锁定指定单位的警戒点 [R]" +description = "设置 ${单位} 的警戒点: ${option}" +comment = "锁定并防止 AI 脚本改动单位警戒点." +category = TC_AI +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = lockunlockoption +default = "LockUnLockLock" + +[LockGuardPosition] +title = "锁定指定单位的警戒点" +description = "锁定 ${单位} 的警戒点" +comment = "锁定并防止 AI 脚本改动单位警戒点." +category = TC_AI +[[.args]] +type = unit + +[YDWEJumpTimer] +title = "跳跃函数" +description = "命令 ${单位} 向 ${方向} 方向跳跃,距离为 ${距离} ,持续 ${时间} 秒,刷新周期 ${I},最大高度 ${高度}。" +comment = "当最大高度设置为0,则为普通的移动。" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = degree +default = "0" +min = 0 +max = 360 +[[.args]] +type = real +default = "800" +min = 0 +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "0.01" +min = 0.03 +[[.args]] +type = real +default = "300" +min = 0 + +[YDWEMeatHook] +title = "肉钩<钩肥大战>" +description = "让单位 ${单位} 向 ${点} 放出一条钩子,钩头为 ${钩头},链条为 ${链条},最远距离可达 ${实数},链条间距为 ${实数},对敌对单位造成伤害 ${实数},刷新周期为 ${实数}。" +comment = " 钩肥大战里的钩子,由Ors和Everguo优化代码。请务必从演示地图里复制钩子和钩条单位,算我求大家了-.-" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location +default = "GetSpellTargetLoc" +[[.args]] +type = unitcode +[[.args]] +type = unitcode +[[.args]] +type = real +default = "2000" +min = 0 +[[.args]] +type = real +default = "35" +min = 0 +[[.args]] +type = real +default = "100" +min = 0 +[[.args]] +type = real +default = "0.03" +min = 0.01 + +[YDWETimerPatternJumpAttack] +title = "跳劈函数" +description = "命令 ${单位} 向 ${方向} 方向跳劈,距离为 ${距离} ,持续时间 ${时间},刷新周期 ${I},最大高度 ${高度},对途经敌人造成伤害值 ${伤害量},在敌人的 ${部位} 附加特效 ${特效}。" +comment = "当伤害值设置为0,则敌人身上不出现特效。代码由Fetrix_sai修改。" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = degree +default = "0" +min = 0 +max = 360 +[[.args]] +type = real +default = "800" +min = 0 +[[.args]] +type = real +default = "1" +min = 0.01 +[[.args]] +type = real +default = "0.03" +min = 0.01 +[[.args]] +type = real +default = "100" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = string +default = "\"chest\"" +[[.args]] +type = modelfile + +[YDWETimerPatternMoonPriestessArrow] +title = "月神箭" +description = "命令 ${单位} 向 ${方向} 方向飞行,距离为 ${距离} ,持续 ${时间} 秒,刷新周期 ${I},生成带有 ${整数} 级 ${技能} 的 ${辅助单位},对目标施放 ${技能} ,在目标的 ${部位} 附加 ${特效}。" +comment = " 由辅助单位给目标添加眩晕等状态。代码由Fetrix_sai修改。" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = degree +default = "0" +min = 0 +max = 360 +[[.args]] +type = real +default = "800" +min = 0 +[[.args]] +type = real +default = "1" +min = 0.01 +[[.args]] +type = real +default = "0.03" +min = 0.01 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = abilcode +[[.args]] +type = unitcode +[[.args]] +type = unitorderutarg +default = "UnitOrderAttackUnit" +[[.args]] +type = string +default = "\"overhead\"" +[[.args]] +type = modelfile + +[YDWETimerPatternRushSlide] +title = "冲锋" +description = "命令 ${单位} 向 ${方向} 方向冲锋,射程为 ${距离} ,持续 ${时间} 秒,刷新周期 ${I},对途经敌人伤害值 ${实数},摧毁树木 ${布尔},不计算碰撞 ${布尔},无视地形 ${布尔} ,在目标的 ${部位} 附加 ${特效}(地面),附加 ${特效}(水中)" +comment = " 代码由Fetrix_sai修改" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = degree +default = "0" +min = 0 +max = 360 +[[.args]] +type = real +default = "800" +min = 0 +[[.args]] +type = real +default = "1" +min = 0.01 +[[.args]] +type = real +default = "0.03" +min = 0.01 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = boolean +default = "false" +[[.args]] +type = boolean +default = "false" +[[.args]] +type = boolean +default = "false" +[[.args]] +type = string +default = "\"origin\"" +[[.args]] +type = modelfile +[[.args]] +type = modelfile + +[YDWEAroundSystem] +title = "万能环绕函数" +description = "命令 ${单位} 围绕 ${单位} 环绕,角速度为 ${实数},离心速度为 ${实数},提升速度为 ${实数},持续 ${实数} 秒\"\",\"\"刷\"\"新\"\"周\"\"期\"\"为 ${实数} 秒" +comment = "角速度为正,顺时针旋转,反之逆时针;离心速度为正,远离目标,反之靠近;提升速度为正,则高度上升,反之下降。" +category = TC_YDST +[[.args]] +type = unit +default = "GetLastCreatedUnit" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "8" +[[.args]] +type = real +default = "3" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "5" +min = 0 +[[.args]] +type = real +default = "0.03" +min = 0.01 + +[YDWENewItemsFormula] +title = "物品合成系统" +description = "将材料1( ${类型},${整数})、材料2( ${类型},${整数})、材料3( ${类型},${整数})\"\"、\"\"材\"\"料\"\"4\"\"( ${类型},${整数})、材料5( ${类型},${整数})、材料6( ${类型},${整数})合成 ${物品} " +comment = "填写物品合成所需的材料及其数量,最多可以填6种;当所需材料数量为0时,对应材料将被忽略。" +category = TC_YDST +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "ches" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "bzbe" + +[YDWE_TP_PauseTimerPeriodic] +title = "新中心计时器-终止运行" +description = "终止运行索引为 ${计时器运行索引} 的计时器运行 " +comment = "当中心计时器运行某个触发器时,会生成一个运行索引;可以通过该运行索引来终止本次计时器运行。" +category = TC_YDST +[[.args]] +type = integer + +[YDWE_TP_SetTimeInterval] +title = "新中心计时器-修改运行间隔" +description = "修改运行索引为 ${计时器运行索引} 的计时器运行间隔为 ${实数}" +comment = "当中心计时器运行某个触发器时,会生成一个运行索引;可以中途修改计时器某次运行的时间间隔。" +category = TC_YDST +[[.args]] +type = integer +[[.args]] +type = real +default = "0.03" +min = 0.01 + +[YDWEAttackWaveTimer] +title = "刷兵系统" +description = "为玩家 ${玩家} 创建 ${n} 个 ${单位类型} 在点 ${初始点} 面向 ${角度},命令他们攻击到点 ${目标点},刷新周期 ${周期}。" +comment = "3C的刷兵系统,也可用于防守RPG,按周期生成每波单位向指定点进攻。" +category = TC_YDST +[[.args]] +type = player +default = "Player00" +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = unitcode +default = "hfoo" +min = 0 +[[.args]] +type = location +min = 0 +[[.args]] +type = degree +default = "RealUnitFacing" +min = 0 +max = 360 +[[.args]] +type = location +[[.args]] +type = real +default = "2" +min = 0.01 + +[YDWERemoveAttackWaveByUnitID] +title = "取消刷兵(输入参数)" +description = "停止创建 ${单位},地点为 ${初始点},周期是 ${周期}" +comment = "取消刷兵,注意这里填写的参数要与前面刷兵系统一致,不然无法停止刷兵。" +category = TC_YDST +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = location +[[.args]] +type = real +default = "2" +min = 0.01 + +[YDWERemoveAttackWaveByTimer] +title = "取消刷兵(删除计时器)" +description = "删除刷兵计时器 ${计时器}" +comment = "取消刷兵,并能自动清空缓存。" +category = TC_YDST +[[.args]] +type = timer +default = "YDWERemoveAttackWaveReturnTimer" + +[YDWEDoubleItemSlotByAbility] +title = "多重物品栏(技能触发)" +description = "当 ${单位} 使用技能 ${背包技能} 时切换背包,辅助单位为 ${背包单位},背包个数为 ${整数}" +comment = "切换背包时会触发单位获得和掉落物品事件;背包技能和背包单位的设置请参考example文件夹中的辅助地图。" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = unitcode +[[.args]] +type = integer +default = "3" +min = 1 +max = 10 + +[YDWEDoubleItemSlotByItem] +title = "多重物品栏(物品触发)" +description = "当 ${单位} 使用物品 ${背包物品} 时切换背包,辅助单位为 ${背包单位},背包个数为 ${整数}" +comment = "切换背包时会触发单位获得和掉落物品事件;背包物品和背包单位的设置请参考example文件夹中的辅助地图。" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +[[.args]] +type = unitcode +[[.args]] +type = integer +default = "3" +min = 1 +max = 10 + +[YDWEGeneralBounsSystemUnitSetBonus] +title = "万能属性系统-设置属性<茄子制作>" +description = "设置 ${单位} 的附加 ${属性} ${计算} ${数值}" +comment = "" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = bonusType +default = "bonusTypeA" +[[.args]] +type = unitstatechangetype +default = "unitstatechangetypeA" +[[.args]] +type = integer +default = "300" + +[YDWESetGuard] +title = "佣兵系统" +description = "命令 ${单位} 跟随 ${单位},刷新周期 ${timeout},巡逻半径 ${guardRanger},返回半径 ${returnRanger},传送半径 ${outRanger},巡逻概率 ${percent}%" +comment = "让一个佣兵跟随主人,可以在主人身边巡逻,当远离主人后自动返回或传送到主人身边。" +category = TC_YDAI +[[.args]] +type = unit +[[.args]] +type = unit +[[.args]] +type = real +default = "2" +min = 0.01 +[[.args]] +type = real +default = "800" +min = 0 +[[.args]] +type = real +default = "1200" +min = 0 +[[.args]] +type = real +default = "1500" +min = 0 +[[.args]] +type = integer +default = "75" +min = 0 +max = 100 + +[YDWERemoveGuard] +title = "取消佣兵" +description = "取消 ${单位} 的跟随" +comment = "让一个佣兵不再跟随主人。备注:如果佣兵是召唤生物那么不必取消,因为当佣兵或主人死亡后,系统会自动取消跟随。" +category = TC_YDAI +[[.args]] +type = unit + +[YDWEAIRecordAbility] +title = "AI-技能绑定英雄" +description = "给单位 ${英雄} 绑定技能 ${技能1} ${技能2} ${技能3} ${技能4} ${技能5}" +comment = "为单位绑定5个技能,如果英雄只有4个技能,那么第5个技能请设置为空。" +category = TC_YDAI +[[.args]] +type = unitcode +default = "Hamg" +[[.args]] +type = abilcode +[[.args]] +type = abilcode +[[.args]] +type = abilcode +[[.args]] +type = abilcode +[[.args]] +type = abilcode + +[YDWEAIRecordLearn_sequence] +title = "AI-技能学习顺序绑定英雄" +description = "给单位 ${英雄} 设置技能学习顺序为( ${技能1} ${技能2} ${技能3} ${技能4} ${技能5} )" +comment = "单位会按输入的等级去学习对应的技能,切记技能学习顺序要按^等级^等级...^等级^的格式输入。" +category = TC_YDAI +[[.args]] +type = unitcode +default = "Hamg" +[[.args]] +type = string +default = "^1^3^5^" +[[.args]] +type = string +default = "^2^4^7^" +[[.args]] +type = string +default = "^8^9^10^" +[[.args]] +type = string +default = "^6^" +[[.args]] +type = string +default = "null" + +[YDWEHeroLearnSkillAI] +title = "AI-自动学习对应技能" +description = "让英雄 ${英雄} 自动学习技能,所学技能对应的英雄等级为 ${整数}" +comment = "英雄会学习与等级对应的技能,这些技能必须在之前绑定给英雄。" +category = TC_YDAI +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "1" +min = 1 + +[YDWEHeroMaxSkillAI] +title = "AI-自动学习全部技能" +description = "让英雄 ${英雄} 自动学习所有技能。" +comment = "英雄会洗去之前学习过的技能,并根据技能表顺序学习完所有技能。" +category = TC_YDAI +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWEAddAIOrder] +title = "AI-自动施放技能" +description = "让单位 ${单位} 在 ${整数}时 ${目标}施放技能,技能施放方式为(对单位-${命令}、对点-${命令}、立即-${命令}),施放概率为 ${整数}%" +comment = "让单位有一定概率施放技能,命令要与技能目标一致;代码由Red_Wolf和Fetrix_sai优化。" +category = TC_YDAI +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = attackorattackedevent +default = "attackorattackedeventB" +[[.args]] +type = targettype +default = "targettypeA" +[[.args]] +type = unitorderutarg +default = "UnitOrderAttackUnitnull" +[[.args]] +type = unitorderptarg +default = "UnitOrderAttacknull" +[[.args]] +type = unitordernotarg +default = "UnitOrderStopnull" +[[.args]] +type = integer +default = "20" +min = 1 +max = 100 + +[YDWE_PreloadSL_SetFile] +title = "设置存档索引(存档名单)" +description = "为${玩家}在『${目录名}』下,将〖${存档名}〗的索引设置为→[${整数}]" +comment = "高级功能,当目录下有多个玩家存档时,为存档添加整数索引,建立起存档文件名字与索引的对应关系。" +category = TC_YDSL +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 16 + +[YDWE_PreloadSL_Save] +title = "保存玩家存档" +description = "为${玩家}在『${目录名}』〖${存档名}〗下保存存档,该存档含有[${整数}]个数据项" +comment = "保存一个玩家存档在指定路径下,注意存档的数据项数目不要填错。" +category = TC_YDSL +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 500 + +[YDWE_PreloadSL_Load] +title = "读取玩家存档" +description = "为${玩家}从『${目录名}』〖${存档名}〗上读取存档,该存档含有[${整数}]个数据项" +comment = "获取指定目录下某个玩家存档,必须填写正确的文件名和数据项数目。" +category = TC_YDSL +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 500 + +[YDWE_PreloadSL_Set] +title = "添加存档数据" +description = "为${玩家}添加 ※${数据注释},在当前存档[${数据项索引}]上,添加┠${数据}┨" +comment = "把数据写入到玩家存档,需要填入正确的数据项索引,注释则可以随意填写。" +category = TC_YDSL +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 500 +[[.args]] +type = integer + +[YDWELocalVariableInitiliation] +title = "开启局部变量功能" +description = "开启局部变量功能" +comment = "必须在局部变量赋值之前启用;若触发器内没有等待动作,可以不启用;有等待需求时必须选用局部变量专用等待动作。" +category = TC_YDLC +[[.args]] +type = nothing + +[YDWELocalVariableEnd] +title = "清空局部变量" +description = "清空局部变量" +comment = "清空本触发器内用到的全部局部变量,避免内存泄露;使用本动作之前请确保局部变量已经使用完毕。" +category = TC_YDLC +[[.args]] +type = nothing + +[YDWESetLocalVariableInteger] +title = "设置 整数 局部变量" +description = "设置 local_${i} = ${整数}" +comment = "为整数局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "0" + +[YDWESetLocalVariableIntegerArray] +title = "设置 整数 局部变量数组" +description = "设置 local_${i}[${index}] = ${整数}" +comment = "为整数局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "0" + +[YDWESetLocalVariableReal] +title = "设置 实数 局部变量" +description = "设置 local_${R} = ${实数}" +comment = "为实数局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = real +default = "0" + +[YDWESetLocalVariableRealArray] +title = "设置 实数 局部变量数组" +description = "设置 local_${R}[${index}] = ${实数}" +comment = "为实数局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = real +default = "0" + +[YDWESetLocalVariableString] +title = "设置 字符串 局部变量" +description = "设置 local_${str} = ${字符串}" +comment = "为字符串局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = string +default = "null" + +[YDWESetLocalVariableStringArray] +title = "设置 字符串 局部变量数组" +description = "设置 local_${str}[${index}] = ${字符串}" +comment = "为字符串局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = string +default = "null" + +[YDWESetLocalVariableBoolean] +title = "设置 真值 局部变量" +description = "设置 local_${bl} = ${真值}" +comment = "为真值局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = boolean +default = "false" + +[YDWESetLocalVariableBooleanArray] +title = "设置 真值 局部变量数组" +description = "设置 local_${bl}[${index}] = ${真值}" +comment = "为真值局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = boolean +default = "false" + +[YDWESetLocalVariableUnit] +title = "设置 单位 局部变量" +description = "设置 local_${u} = ${单位}" +comment = "为单位局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWESetLocalVariableUnitArray] +title = "设置 单位 局部变量数组" +description = "设置 local_${u}[${index}] = ${单位}" +comment = "为单位局部变量赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWESetLocalVariableUnitID] +title = "设置 单位类型 局部变量" +description = "设置 local_${uid} = ${单位类型}" +comment = "为单位类型局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = unitcode +default = "hfoo" + +[YDWESetLocalVariableUnitIDArray] +title = "设置 单位类型 局部变量数组" +description = "设置 local_${uid}[${index}] = ${单位类型}" +comment = "为单位类型局部变量赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = unitcode +default = "hfoo" + +[YDWESetLocalVariableAbilityID] +title = "设置 技能类型 局部变量" +description = "设置 local_${ab} = ${技能}" +comment = "为单位类型局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = abilcode +default = "Aloc" + +[YDWESetLocalVariableAbilityIDArray] +title = "设置 技能类型 局部变量数组" +description = "设置 local_${ab}[${index}] = ${技能}" +comment = "为单位类型局部变量赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = abilcode +default = "Aloc" + +[YDWESetLocalVariableItem] +title = "设置 物品 局部变量" +description = "设置 local_${it} = ${物品}" +comment = "为物品局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWESetLocalVariableItemArray] +title = "设置 物品 局部变量数组" +description = "设置 local_${it}[${index}] = ${物品}" +comment = "为物品局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWESetLocalVariableItemID] +title = "设置 物品类型 局部变量" +description = "设置 local_${itid} = ${物品类型}" +comment = "为物品类型局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = itemcode +default = "spsh" + +[YDWESetLocalVariableItemIDArray] +title = "设置 物品类型 局部变量数组" +description = "设置 local_${itid}[${index}] = ${物品类型}" +comment = "为物品类型局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = itemcode +default = "spsh" + +[YDWESetLocalVariableLocation] +title = "设置 点 局部变量" +description = "设置 local_${point} = ${点}" +comment = "为点局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = location +default = "GetSpellTargetLoc" + +[YDWESetLocalVariableLocationArray] +title = "设置 点 局部变量数组" +description = "设置 local_${point}[${index}] = ${点}" +comment = "为点局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = location +default = "GetSpellTargetLoc" + +[YDWESetLocalVariableGroup] +title = "设置 单位组 局部变量" +description = "设置 local_${g} = ${单位组}" +comment = "为单位组局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = group +default = "bj_lastCreatedGroup" + +[YDWESetLocalVariableGroupArray] +title = "设置 单位组 局部变量数组" +description = "设置 local_${g}[${index}] = ${单位组}" +comment = "为单位组局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = group +default = "bj_lastCreatedGroup" + +[YDWESetLocalVariableEffect] +title = "设置 特效 局部变量" +description = "设置 local_${e} = ${特效}" +comment = "为特效局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWESetLocalVariableEffectArray] +title = "设置 特效 局部变量数组" +description = "设置 local_${e}[${index}] = ${特效}" +comment = "为特效局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWESetLocalVariableRect] +title = "设置 地区 局部变量" +description = "设置 local_${rt} = ${地区}" +comment = "为地区局部变量赋值,参数处填入该变量的名字;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = rect +default = "GetCurrentCameraBoundsMapRectBJ" + +[YDWESetLocalVariableRectArray] +title = "设置 地区 局部变量数组" +description = "设置 local_${rt}[${index}] = ${地区}" +comment = "为地区局部变量数组赋值,参数处填入该变量的名字和数组索引;该变量在本条触发器内有效。" +category = TC_YDLC +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = rect +default = "GetCurrentCameraBoundsMapRectBJ" + +[SetRandomSeed] +title = "设置随机种子" +description = "设置随机种子数为:${整数}" +comment = "设置游戏的随机种子,随机种子会影响随机整数,攻击骰子之类的随机数。" +category = TC_NOTHING +[[.args]] +type = integer +min = 0 + +[YDWESetMapLimitCoordinate] +title = "设置地图边界坐标 [YDWE]" +description = "设置地图的边界坐标为 ( X坐标最小值 ${实数},X坐标最大值 ${实数},Y坐标最小值 ${实数},Y坐标最大值 ${实数} )" +comment = "边界坐标的设置会影响钩子、跳跃等技能在地图边界处的表现形式;默认的边界坐标是镜头范围的边界,新手慎用本设置!" +category = TC_RECT +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real + +[YDWEFlushMissionByInteger] +title = "清空 目录 (整数路径)" +description = "清空目录-> ${整数}" +comment = "通过输入的路径,系统会根据当前魔兽版本从GameCache或HashTable上清空目录。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 + +[YDWEFlushMissionByString] +title = "清空 目录 (字符串路径)" +description = "清空目录-> ${字符串}" +comment = "通过输入的路径,系统会根据当前魔兽版本从GameCache或HashTable上清空目录。" +category = TC_YDLD +[[.args]] +type = string +default = "null" + +[YDWESaveIntegerByInteger] +title = "存储 整数 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储整数-> ${整数}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储整数数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" + +[YDWESaveIntegerByString] +title = "存储 整数 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储整数-> ${整数}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储整数数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = integer +default = "0" + +[YDWESaveRealByInteger] +title = "存储 实数 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储实数-> ${实数}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储实数数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = real +default = "0" + +[YDWESaveRealByString] +title = "存储 实数 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储实数-> ${实数}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储实数数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = real +default = "0" + +[YDWESaveStringByInteger] +title = "存储 字符串 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储字符串-> ${字符串}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储字符串数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = string +default = "null" + +[YDWESaveStringByString] +title = "存储 字符串 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储字符串-> ${字符串}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储字符串数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" + +[YDWESaveBooleanByInteger] +title = "存储 真值 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储真值-> ${真值}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储真值数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = boolean +default = "false" + +[YDWESaveBooleanByString] +title = "存储 真值 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储真值-> ${真值}" +comment = "通过输入的路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储真值数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = boolean +default = "false" + +[YDWESaveUnitByInteger] +title = "存储 单位 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储单位-> ${单位}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWESaveUnitByString] +title = "存储 单位 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储单位-> ${单位}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWESaveUnitIDByInteger] +title = "存储 单位类型 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储单位类型 -> ${单位类型}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位类型数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = unitcode +default = "hfoo" + +[YDWESaveUnitIDByString] +title = "存储 单位类型 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储单位类型-> ${单位类型}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位类型数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = unitcode +default = "hfoo" + +[YDWESaveAbilityIDByInteger] +title = "存储 技能 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储技能 -> ${技能}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储技能数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = abilcode +default = "Aloc" + +[YDWESaveAbilityIDByString] +title = "存储 技能 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储技能-> ${技能}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储技能数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = abilcode +default = "Aloc" + +[YDWESaveItemByInteger] +title = "存储 物品 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储物品-> ${物品}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储物品数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWESaveItemByString] +title = "存储 物品 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储物品-> ${物品}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储物品数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWESaveItemIDByInteger] +title = "存储 物品类型 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储物品类型-> ${物品类型}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储物品类型数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = itemcode +default = "texp" + +[YDWESaveItemIDByString] +title = "存储 物品类型 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储物品类型-> ${物品类型}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储物品类型数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = itemcode +default = "texp" + +[YDWESavePlayerByInteger] +title = "存储 玩家 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储玩家-> ${玩家}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储玩家数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = player +default = "GetEnumPlayer" + +[YDWESavePlayerByString] +title = "存储 玩家 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储玩家-> ${玩家}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储玩家数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = player +default = "GetEnumPlayer" + +[YDWESaveTimerByInteger] +title = "存储 计时器 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储计时器-> ${计时器}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储计时器数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = timer +default = "GetExpiredTimer" + +[YDWESaveTimerByString] +title = "存储 计时器 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储计时器-> ${计时器}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储计时器数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = timer +default = "GetExpiredTimer" + +[YDWESaveTriggerByInteger] +title = "存储 触发器 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储触发器-> ${触发器}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[YDWESaveTriggerByString] +title = "存储 触发器 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储触发器-> ${触发器}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[YDWESaveLocationByInteger] +title = "存储 点 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储点-> ${点}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储点数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = location +default = "GetSpellTargetLoc" + +[YDWESaveLocationByString] +title = "存储 点 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储点-> ${点}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储点数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = location +default = "GetSpellTargetLoc" + +[YDWESaveGroupByInteger] +title = "存储 单位组 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储单位组-> ${单位组}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位组数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = group +default = "GetLastCreatedGroup" + +[YDWESaveGroupByString] +title = "存储 单位组 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储单位组-> ${单位组}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储单位组数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = group +default = "GetLastCreatedGroup" + +[YDWESaveMultiboardByInteger] +title = "存储 多面板 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储多面板-> ${多面板}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储多面板数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[YDWESaveMultiboardByString] +title = "存储 多面板 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储多面板-> ${多面板}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储多面板数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[YDWESaveMultiboardItemByInteger] +title = "存储 多面板项目 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储多面板项目-> ${多面板项目}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储多面板项目数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = multiboarditem + +[YDWESaveMultiboardItemByString] +title = "存储 多面板项目 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储多面板项目-> ${多面板项目}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储多面板项目数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = multiboarditem + +[YDWESaveTextTagByInteger] +title = "存储 漂浮文字 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储漂浮文字-> ${漂浮文字}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储漂浮文字数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" + +[YDWESaveTextTagByString] +title = "存储 漂浮文字 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储漂浮文字-> ${漂浮文字}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储漂浮文字数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" + +[YDWESaveLightningByInteger] +title = "存储 闪电 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储闪电-> ${闪电}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储闪电数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[YDWESaveLightningByString] +title = "存储 闪电 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储闪电-> ${闪电}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储闪电数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[YDWESaveRegionByInteger] +title = "存储 区域 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储区域-> ${区域}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储区域数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = region +default = "GetTriggeringRegion" + +[YDWESaveRegionByString] +title = "存储 区域 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储区域-> ${区域}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储区域数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = region +default = "GetTriggeringRegion" + +[YDWESaveRectByInteger] +title = "存储 地区 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储地区-> ${地区}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储地区数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = rect +default = "GetCurrentCameraBoundsMapRectBJ" + +[YDWESaveRectByString] +title = "存储 地区 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储地区-> ${地区}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储地区数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = rect +default = "GetCurrentCameraBoundsMapRectBJ" + +[YDWESaveLeaderboardByInteger] +title = "存储 排行榜 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储排行榜-> ${排行榜}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储排行榜数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[YDWESaveLeaderboardByString] +title = "存储 排行榜 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储排行榜-> ${排行榜}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储排行榜数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[YDWESaveEffectByInteger] +title = "存储 特效 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储特效-> ${特效}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储特效数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWESaveEffectByString] +title = "存储 特效 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储特效-> ${特效}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储特效数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWESaveDestructableByInteger] +title = "存储 可破坏物 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储可破坏物-> ${可破坏物}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储可破坏物数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[YDWESaveDestructableByString] +title = "存储 可破坏物 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储可破坏物-> ${可破坏物}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储可破坏物数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[YDWESaveTriggerConditionByInteger] +title = "存储 触发器条件 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储触发器条件-> ${触发器条件}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器条件数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = triggercondition + +[YDWESaveTriggerConditionByString] +title = "存储 触发器条件 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储触发器条件-> ${触发器条件}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器条件数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = triggercondition + +[YDWESaveTriggerActionByInteger] +title = "存储 触发器动作 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储触发器动作-> ${触发器动作}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器动作数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = triggeraction + +[YDWESaveTriggerActionByString] +title = "存储 触发器动作 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储触发器动作-> ${触发器动作}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储触发器动作数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = triggeraction + +[YDWESaveTriggerEventByInteger] +title = "存储 事件 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储事件-> ${事件}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储事件数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = event + +[YDWESaveTriggerEventByString] +title = "存储 事件 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储事件-> ${事件}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储事件数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = event + +[YDWESaveForceByInteger] +title = "存储 势力 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储势力-> ${势力}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储势力数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = force + +[YDWESaveForceByString] +title = "存储 势力 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储势力-> ${势力}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储势力数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = force + +[YDWESaveBoolexprByInteger] +title = "存储 布尔表达式 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储布尔表达式-> ${布尔表达式}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储布尔表达式数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = boolexpr + +[YDWESaveBoolexprByString] +title = "存储 布尔表达式 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储布尔表达式-> ${布尔表达式}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储布尔表达式数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = boolexpr + +[YDWESaveSoundByInteger] +title = "存储 声音 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储声音-> ${声音}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储声音数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = sound + +[YDWESaveSoundByString] +title = "存储 声音 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储声音-> ${声音}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储声音数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = sound + +[YDWESaveTimerDialogByInteger] +title = "存储 计时器窗口 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储计时器窗口-> ${计时器窗口}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储计时器窗口数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = timerdialog + +[YDWESaveTimerDialogByString] +title = "存储 计时器窗口 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储计时器窗口-> ${计时器窗口}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储计时器窗口数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = timerdialog + +[YDWESaveTrackableByInteger] +title = "存储 可追踪物 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储可追踪物-> ${可追踪物}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储可追踪物数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = trackable + +[YDWESaveTrackableByString] +title = "存储 可追踪物 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储可追踪物-> ${可追踪物}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储可追踪物数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = trackable + +[YDWESaveDialogByInteger] +title = "存储 对话框 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储对话框-> ${对话框}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储对话框数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = dialog + +[YDWESaveDialogByString] +title = "存储 对话框 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储对话框-> ${对话框}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储对话框数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = dialog + +[YDWESaveButtonByInteger] +title = "存储 对话框按钮 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储对话框按钮-> ${对话框按钮}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储对话框按钮数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = button + +[YDWESaveButtonByString] +title = "存储 对话框按钮 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储对话框按钮-> ${对话框按钮}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储对话框按钮数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = button + +[YDWESaveQuestByInteger] +title = "存储 任务 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储任务-> ${任务}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储任务数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[YDWESaveQuestByString] +title = "存储 任务 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储任务-> ${任务}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储任务数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[YDWESaveQuestItemByString] +title = "存储 任务目标项 (字符串路径)" +description = "存储目录-> ${字符串},标签-> ${字符串},存储任务目标项 -> ${任务目标项}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储任务目标项数据。" +category = TC_YDLD +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = questitem +default = "GetLastCreatedQuestItemBJ" + +[YDWESaveQuestItemByInteger] +title = "存储 任务目标项 (整数路径)" +description = "存储目录-> ${整数},标签-> ${整数},存储任务目标项-> ${任务目标项}" +comment = "通过输入路径,系统会根据当前魔兽版本采用Return bug+GC或HashTable存储任务目标项数据。" +category = TC_YDLD +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = questitem +default = "GetLastCreatedQuestItemBJ" + +[YDWECreateEwsp] +title = "创建环绕单位" +description = "围绕 ${单位} 创建 ${单位类型} 共 ${n}个 ,旋转半径 ${R},持续 ${T} 秒,刷新周期 ${I},旋转角速度每个周期 ${S}。" +comment = "刷新周期越小动画越连续,但也越耗资源" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "300" +min = 0 +[[.args]] +type = real +default = "20" +min = 0 +[[.args]] +type = real +default = "0.01" +min = 0.01 +[[.args]] +type = real +default = "1" + +[YDWECreateLine] +title = "生成丝带" +description = "在 ${单位} 身上生成丝带,特效单位类型为 ${单位类型},数目为 ${整数},角度偏移 ${实数},间距为 ${实数},持续时间为 ${实数},刷新周期为 ${实数},初始高度为 ${实数},高度等差为 ${实数},模型尺寸初始为 ${实数},尺寸等差为 ${实数}。" +comment = " 好看的丝带~" +category = TC_YDST +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "ewsp" +[[.args]] +type = integer +default = "12" +min = 0 +[[.args]] +type = degree +default = "50" +min = -360 +max = 360 +[[.args]] +type = real +default = "60" +min = 0 +[[.args]] +type = real +default = "30" +min = 0 +[[.args]] +type = real +default = "0.03" +min = 0.01 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "10" +min = 0 +[[.args]] +type = real +default = "100" +min = 1.0 +max = 1000.0 +[[.args]] +type = real +default = "30" + +[YDWEInitCinematicSystem] +title = "开启电影系统" +description = "开启Script System电影系统" +comment = "电影系统必需开启后才能使用,YDWE会自动加载对应的函数库。" +category = TC_SCRIPTSET +[[.args]] +type = nothing + +[YDWECinematicCameraDisable] +title = "关闭电影系统" +description = "关闭Script System电影系统" +comment = "电影系统关闭之后,无法再使用相关触发器动作。" +category = TC_SCRIPTSET +[[.args]] +type = nothing + +[YDWECinSInitTempPoint] +title = "设置演员出生点" +description = "设置演员单位出生在 ${点\",系统会在该点创建单位\"}" +comment = "系统默认演员单位出生在(0,0)点,通过这条动作可以修改出生点位置。如果要删除这个点,请在单位生成完毕后再删除。" +category = TC_SCRIPTSET +[[.args]] +type = location +default = "Location" + +[YDWEScriptSystemPeriod] +title = "设置电影系统刷新周期" +description = "设置电影系统刷新周期为 ${刷新周期\" 秒\"}" +comment = "电影系统默认刷新周期是0.02秒,通过这里设定可以改变刷新周期。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "0.02" + +[YDWEParticlePeriod] +title = "设置粒子系统刷新周期" +description = "设置粒子系统刷新周期为 ${刷新周期\" 秒\"}" +comment = "粒子系统包含单位移动和转向等与单位有关函数,默认刷新周期是0.02秒。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "0.02" + +[YDWECameraPeriod] +title = "设置镜头系统刷新周期" +description = "设置镜头系统刷新周期为 ${刷新周期\" 秒\"}" +comment = "镜头系统包含镜头移动和锁定等函数,默认刷新周期是0.02秒。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "0.02" + +[YDWEFadeFilterUnit] +title = "设置滤镜单位" +description = "设置滤镜辅助单位类型为 ${单位类型}" +comment = "电影系统带有一个滤镜模型,通过它可以获得更好的视觉效果。" +category = TC_SCRIPTSET +[[.args]] +type = unitcode + +[YDWEWriteToScene] +title = "记录当前场景" +description = "记录当前场景为 ${整数}" +comment = "告诉系统本幕场景的序号。" +category = TC_SCRIPTSET +[[.args]] +type = integer +default = "1" +min = 1 + +[YDWEPlayScene] +title = "播放场景" +description = "播放场景 ${整数}" +comment = "播放指定的场景。" +category = TC_SCRIPTSET +[[.args]] +type = integer +default = "1" +min = 1 + +[YDWEScriptNextScene] +title = "设置下一幕场景播放时间" +description = "在时间线 ${实数} 秒时播放下一幕场景" +comment = "电影系统将一部电影分为若干场景,每处场景可以在指定时间播放。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 + +[YDWEScriptExternalFunc] +title = "运行外部函数" +description = "在时间线 ${实数} 秒时运行函数 ${字符串}" +comment = "可以运行电影系统之外的函数,填入函数的名字即可。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = string +default = "EverguoIsHandsome" + +[YDWEScriptSubtitleLine] +title = "显示字幕线" +description = "在时间线 ${实数} 秒时显示字幕线 ${字符串}" +comment = "可以屏幕上显示一行文字。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = string +default = "EverguoIsHandsome" + +[YDWEScriptSubtitleClear] +title = "清除字幕线" +description = "在时间线 ${实数} 秒时清除字幕线" +comment = "清除屏幕上显示的文字。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 + +[YDWEActorCreate] +title = "创建演员" +description = "为玩家 ${玩家} 创建一个演员单位,编号为 ${整数},单位类型为 ${整数}" +comment = "电影里出场的演员,必须通过这条动作来生成;每个演员需要设置一个终身编号,如9527,系统会通过这个编号来让演员进行表演。" +category = TC_SCRIPTSET +[[.args]] +type = player +default = "Player00" +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = unitcode +default = "Edem" + +[YDWEScriptActAbilityLvl] +title = "添加技能" +description = "在时间线 ${实数} 秒时为演员 ${整数} 添加技能 ${技能},等级为 ${整数}" +comment = "在演员后面的参数填写演员的编号,如9527,就可以为演员添加一个技能;可以设置技能的等级。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = abilcode +default = "Aloc" +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEScriptActAnimPlay] +title = "播放动画" +description = "在时间线 ${实数} 秒时播放演员 ${整数} 的动画 ${整数},动画混合时间为 ${实数} 秒" +comment = "在动画后面的参数填写该动画的索引,0为默认动画;动画混合时间是上一个动画到下一个动画的过渡时间,为0则立即切换。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActAnimSpeed] +title = "调整动画速度" +description = "在时间线 ${实数} 秒时调整演员 ${整数} 的动画速度为 ${实数} x100%" +comment = "在动画后面的参数填写该动画的索引,0为默认动画;动画混合时间是上一个动画到下一个动画的过渡时间,为0则立即切换。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "1" + +[YDWEScriptActAnimReset] +title = "重置动画" +description = "在时间线 ${实数} 秒时重置演员 ${整数} 的动画" +comment = "重置单位的动画,即播放单位的默认动画;这个动画通常是站立,索引为0。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 + +[YDWEActorWalkProperties] +title = "单位行走设置" +description = "设置单位类型 ${单位类型} 的行走动画索引为 ${整数},行走动画播放时间为 ${实数},单位移动速度为 ${实数}" +comment = "设置单位的行走动画参数,在本系统里单位的行走是通过不断移动单位并播放行走动画来模拟实现。" +category = TC_SCRIPTSET +[[.args]] +type = unitcode +default = "Edem" +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActWalk] +title = "单位行走" +description = "在时间线 ${实数} 秒时让演员 ${整数} 走到目的地(坐标X ${实数},坐标Y ${实数}),时间为 ${实数},动画混合时间为 ${实数} 秒" +comment = "让单位在指定时间内跑到指定坐标;在使用这条动作之前,必须先设置好单位行走参数。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActSlide] +title = "单位滑行" +description = "在时间线 ${实数} 秒时让演员 ${整数} 滑行到目的地(坐标X ${实数},坐标Y ${实数}),时间为 ${实数} 秒,最大高度为 ${实数}" +comment = "设置单位的行走动画参数,在本系统里单位的行走是通过不断移动单位并播放行走动画来模拟实现。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActTurn] +title = "单位转向" +description = "在时间线 ${实数} 秒时让演员 ${整数} 朝向角度 ${实数},时间为 ${实数},旋转方向为 ${整数}" +comment = "让单位在指定时间内旋转到朝向某个角度;当选择最近方向,单位会自动选择用时最短的旋转方式。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = degree +default = "0" +min = 0 +max = 360 +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = turnclockwise +default = "turnclockwiseA" + +[YDWEScriptActFace] +title = "锁定单位身体朝向" +description = "在时间线 ${实数} 秒时锁定演员 ${整数} 的身体朝向演员 ${整数},部位为 ${部位},偏移坐标为( X ${Xoffset},Y ${Yoffset},Z ${offset} ),动画混合时间为 ${实数} 秒" +comment = "让单位的头部或胸部一直朝向目标单位的偏移坐标点处,直到重置身体朝向为止;坐标偏移以目标单位脚下为原点。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = integer +default = "2" +min = 1 +[[.args]] +type = headORchest +default = "headORchestA" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActFaceReset] +title = "重置单位身体朝向" +description = "在时间线 ${实数} 秒时重置演员 ${整数} 的身体朝向,动画混合时间为 ${实数}" +comment = "让单位的身体朝向恢复正常。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActColour] +title = "改变单位颜色" +description = "在时间线 ${实数} 秒时改变演员 ${整数} 的颜色比例为( 红 ${红}%,绿 ${绿}%,蓝 ${蓝}% ),可见度为 ${可见度}%,指定时间为 ${时间} 秒" +comment = "在指定时间内逐渐改变单位的颜色比例和可见度到指定值,单位默认颜色比列均是100%,可见度为0时单位完全透明。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActSize] +title = "改变单位身体尺寸" +description = "在时间线 ${实数} 秒时改变演员 ${整数} 的身体尺寸为 ${实数},指定时间为 ${实数} 秒" +comment = "在指定时间内逐渐改变单位的身体尺寸为目标值,1.0为单位正常身体尺寸。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "1.0" +min = 0.01 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWECameraSetupAssign] +title = "设置镜头" +description = "设置镜头 ${镜头} 的编号为 ${整数}" +comment = "设置镜头的编号,系统会根据镜头这个编号来调用镜头。" +category = TC_SCRIPTSET +[[.args]] +type = camerasetup +default = "GetCurrentCameraSetup" +[[.args]] +type = integer +default = "1" +min = 1 + +[YDWEScriptCamera] +title = "应用镜头" +description = "在时间线 ${实数} 秒时应用镜头 ${整数},指定时间为 ${实数},镜头切换方式为 ${整数}" +comment = "在指定时间内将当前镜头切换到目标镜头;可以选择镜头切换方式,当选择立即切换,指定时间的参数会被忽略。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = camerachangetype +default = "camerachangetypeA" + +[YDWEScriptCameraStat] +title = "改变镜头参数" +description = "在时间线 ${实数} 秒时设置当前镜头的参数 ${整数} 在指定时间 ${实数} 内改变为 ${实数},速度为 ${实数},镜头切换方式为 ${整数}" +comment = "在指定时间内将改变当前镜头的某个属性到目标值;当选择立即切换,指定时间、目标值和速度的参数会被忽略。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = camerastattype +default = "camerastattypeA" +min = 1 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "200" +[[.args]] +type = real +default = "200" +[[.args]] +type = camerachangetype +default = "camerachangetypeA" + +[YDWEScriptCameraIgnoreTerrain] +title = "镜头忽略悬崖" +description = "在时间线 ${实数} 秒时设置镜头移动时 ${真值} 悬崖高度" +comment = "如果选择不忽略,那么镜头在移动时,会随着地形起伏而抖动;选择忽略,如果镜头高度低于地表,会看到地表下的天空。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = cameratgnoreterrain +default = "cameratgnoreterrainA" + +[YDWEScriptActCameraLock] +title = "锁定镜头位置" +description = "在时间线 ${实数} 秒时锁定镜头位置到演员 ${整数},偏移坐标为( X ${Xoffset},Y ${Yoffset},Z ${offset} ),镜头运动是否平滑(${真值}),指定时间为 ${实数} 秒" +comment = "在指定时间内将镜头位置锁定在目标单位的偏移坐标点处,如果镜头运动选择不平滑,那么镜头将按线性移动。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = boolean +default = "true" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActCameraLockReset] +title = "重置镜头位置" +description = "在时间线 ${实数} 秒时重置镜头位置,镜头运动是否平滑(${真值}),指定时间为 ${实数} 秒" +comment = "在指定时间内解除镜头位置锁定,如果镜头运动选择不平滑,那么镜头将按线性移动。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = boolean +default = "true" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActCameraFace] +title = "锁定镜头角度" +description = "在时间线 ${实数} 秒时锁定镜头角度到演员 ${整数},偏移坐标为( X ${Xoffset},Y ${Yoffset},Z ${offset} ),镜头运动是否平滑(${真值}),指定时间为 ${实数} 秒" +comment = "在指定时间内将镜头角度锁定在目标单位的偏移坐标点处,如果镜头运动选择不平滑,那么镜头将按线性移动。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = boolean +default = "true" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActCameraFaceReset] +title = "重置镜头角度" +description = "在时间线 ${实数} 秒时重置镜头角度,镜头运动是否平滑(${真值}),指定时间为 ${实数} 秒" +comment = "在指定时间内解除镜头角度锁定,如果镜头运动选择不平滑,那么镜头将按线性移动。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = boolean +default = "true" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptFog] +title = "设置迷雾" +description = "在时间线 ${实数} 秒时设置迷雾,Z轴起始 ${实数},Z轴结束 ${实数},颜色比例为( 红 ${红}%,绿 ${绿}%,蓝 ${蓝}% ),指定时间为 ${实数} 秒" +comment = "迷雾在指定时间内变化到指定值。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "3000" +min = 0 +[[.args]] +type = real +default = "5000" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptFade] +title = "设置滤镜" +description = "在时间线 ${实数} 秒时设置滤镜,颜色比例为( 红 ${红}%,绿 ${绿}%,蓝 ${蓝}% ),透明度为 ${实数}%,指定时间为 ${实数} 秒" +comment = "滤镜在指定时间内变化到指定值。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptPlaySound] +title = "播放声音" +description = "在时间线 ${实数} 秒时播放声音,路径为 ${字符串},播放速率为 ${实数},音量为 ${整数}" +comment = "播放声音;在路径处填写声音文件的路径;1.0为正常播放速率,0.5为半速,2.0为两倍速率;音量是声音大小,取值于0-127之间。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = string +default = "null" +[[.args]] +type = real +default = "0" +min = 0 +max = 10 +[[.args]] +type = integer +default = "0" +min = 0 +max = 127 + +[YDWEScriptPointEffect] +title = "创建特效(指定点)" +description = "在时间线 ${实数} 秒时创建特效在空间坐标( X ${实数},Y ${实数},Z ${实数} ),路径为 ${字符串},特效存在时间为 ${实数} 秒" +comment = "创建特效在空间坐标处,可以设置特效存在的时间。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = string +default = "null" +[[.args]] +type = real +default = "0" +min = 0 + +[YDWEScriptActEffect] +title = "创建特效(绑定单位)" +description = "在时间线 ${实数} 秒时创建特效在演员 ${整数} 身上,特效路径为 ${字符串},附加部位为 ${字符串},特效存在时间为 ${实数}" +comment = "创建特效在单位身上,可以设置特效附加部位和存在时间。" +category = TC_SCRIPTSET +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = string +default = "null" +[[.args]] +type = string +default = "null" +[[.args]] +type = real +default = "0" +min = 0 + +[DisableTrigger] +title = "关闭触发" +description = "关闭 ${Trigger}" +comment = "" +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[EnableTrigger] +title = "开启触发" +description = "开启 ${Trigger}" +comment = "" +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[ConditionalTriggerExecute] +title = "运行触发(检查条件)" +description = "运行 ${触发} (检查条件)" +comment = "如果其触发条件成立则运行触发动作." +category = TC_TRIGGER +[[.args]] +type = trigger + +[YDWETimerRunTrigger] +title = "计时器系统-运行触发器" +description = "在 ${时间} 秒后运行 ${触发器}" +comment = "启动中心计时器,在指定时间之后运行触发器。" +category = TC_TRIGGER +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[YDWETimerRunPeriodicTrigger] +title = "计时器系统-循环运行触发器" +description = "每隔 ${时间} 秒运行 ${触发器},永久运行 ${真值},运行 ${整数} 次,运行标识 ${整数}。" +comment = "启动中心计时器,按指定间隔时间运行触发器;当永久运行为真,运行次数会被忽略;运行标识是自定义一个值,用来区别其它运行。" +category = TC_TRIGGER +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = trigger +default = "GetTriggeringTrigger" +[[.args]] +type = boolean +default = "false" +[[.args]] +type = integer +default = "5" +min = 0 +[[.args]] +type = integer +default = "0" + +[YDWETimerRunPeriodicTriggerOver] +title = "计时器系统-终止运行触发器" +description = "停止运行 ${触发器},运行标识 ${整数}。" +comment = "使中心计时器不再运行该触发器;若触发器同一时间被多次运行且运行标识相同,中心计时器会停止对该触发器所有运行。" +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" +[[.args]] +type = integer +default = "0" + +[TriggerExecute] +title = "运行触发(无视条件)" +description = "运行 ${触发} (无视条件)" +comment = "无视事件和条件,运行触发动作." +category = TC_TRIGGER +[[.args]] +type = trigger + +[QueuedTriggerAddBJ] +title = "添加到触发队列" +description = "添加 ${触发} 到触发队列(${Checking/Ignoring} 条件)" +comment = "个人认为触发队列属于没用的功能." +category = TC_TRIGGER +[[.args]] +type = trigger +[[.args]] +type = checkingignoringoption +default = "CheckingIgnoringChecking" + +[QueuedTriggerRemoveBJ] +title = "移出触发队列" +description = "将 ${触发} 移出触发队列" +comment = "如果触发正在运行,从队列移出该单位将允许后面的触发运行,但不影响本身的动作." +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[QueuedTriggerClearBJ] +title = "清空触发队列" +description = "清空触发队列中所有触发" +comment = "" +category = TC_TRIGGER +[[.args]] +type = nothing + +[QueuedTriggerClearInactiveBJ] +title = "清空未运行触发" +description = "清空触发队列中所有未运行触发" +comment = "只有正在运行的触发不会被移出队列." +category = TC_TRIGGER +[[.args]] +type = nothing + +[AddTriggerEvent] +title = "触发添加事件" +description = "为 ${触发} 添加事件: ${事件}" +comment = "使用该功能可以在游戏中为其他触发添加事件." +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" +[[.args]] +type = eventcall + +[DestroyTrigger] +title = "删除触发器 [R]" +description = "删除 ${触发器}" +comment = "对不再使用的触发器可以使用该动作来删除." +category = TC_TRIGGER +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[CreateNUnitsAtLoc] +title = "创建单位(面向角度)" +description = "创建 ${Number} 个 ${单位} 给 ${Player} 在 ${指定点} ,面向角度为 ${Direction} 度" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向. 使用'最后创建的单位组'来获取创建的所有单位. 使用'最后创建的单位'来获取创建的单个单位." +category = TC_UNIT +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = degree +default = "RealUnitFacing" +min = 0 +max = 360 + +[CreateNUnitsAtLocFacingLocBJ] +title = "创建单位(面向点)" +description = "创建 ${Number} ${单位} 给 ${Player} 在 ${指定点} ,面向 ${指定点}" +comment = "使用'最后创建的单位组'来获取创建的所有单位. 使用'最后创建的单位'来获取创建的单个单位." +category = TC_UNIT +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = location + +[CreateCorpseLocBJ] +title = "创建尸体" +description = "创建一个 ${单位} 的尸体给 ${Player} 在 ${指定点}" +comment = "不是所有单位都有尸体形态. 使用'最后创建的单位'来获取该尸体." +category = TC_UNIT +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location + +[CreatePermanentCorpseLocBJ] +title = "创建永久性尸体" +description = "创建一个 ${Style} ${单位} 尸体给 ${Player} 在 ${指定点} 面向角度为 ${Direction} 度" +comment = "肉态尸体经常会自动变为骨态尸体." +category = TC_UNIT +[[.args]] +type = corpsetype +default = "CorpseTypeBone" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = degree +default = "GetRandomDirectionDeg" +min = 0 +max = 360 + +[" CreateUnit"] +title = "创建单位(指定坐标) [C]" +description = "为玩家 ${玩家} 创建一个 ${单位} 在(X坐标: ${输入坐标} Y坐标: ${输入坐标} ), 面向角度: ${facing}" +comment = "不能被'最后创建的单位'捕获之" +category = TC_UNIT +[[.args]] +type = player +[[.args]] +type = unitcode +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = degree +default = "RealUnitFacing" + +[" CreateUnitAtLoc"] +title = "创建单位(指定点) [C]" +description = "为玩家 ${玩家} 创建一个 ${单位} 在 ${指定点} 面向角度:${Face} 度" +comment = "不能被'最后创建的单位'捕获之" +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = location +[[.args]] +type = degree +default = "0" + +[KillUnit] +title = "杀死" +description = "杀死 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[RemoveUnit] +title = "删除" +description = "删除 ${单位}" +comment = "被删除的单位不会留下尸体. 如果是英雄则不能再被复活." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWETimerRemoveUnit] +title = "计时器系统-删除单位[YDWE]" +description = "在 ${时间} 秒后删除 ${单位}" +comment = "启动中心计时器,在指定时间之后删除单位。" +category = TC_UNIT +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = unit +default = "GetTriggerUnit" + +[ExplodeUnitBJ] +title = "爆炸" +description = "使 ${单位} 爆炸而死" +comment = "爆炸死亡不会留下尸体." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[ReplaceUnitBJ] +title = "替换" +description = "将 ${单位} 替换为 ${单位类型} 使用 ${Property Usage} 生命和魔法" +comment = "使用'最后替换的单位'来获取该单位. 如果是不死族金矿被替换,经常还会留下一个普通的金矿. 实际上就是创建加删除单位" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = unitstatemethod +default = "UnitStateMethodRelative" + +[ShowUnit] +title = "显示/隐藏 [R]" +description = "设置 ${单位} 的状态为 ${显示/隐藏}" +comment = "隐藏单位不会被'区域内单位'所选取." +category = TC_UNIT +[[.args]] +type = unit +default = "bj_lastCreatedUnit" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[ShowUnitHide] +title = "隐藏" +description = "隐藏 ${单位}" +comment = "使用'单位 - 显示'来显示该单位. 隐藏单位不会被'区域内单位'所选取." +category = TC_UNIT +[[.args]] +type = unit + +[ShowUnitShow] +title = "显示" +description = "显示 ${单位}" +comment = "使用'单位 - 隐藏'来显示该单位. 隐藏单位不会被'区域内单位'所选取." +category = TC_UNIT +[[.args]] +type = unit + +[SetUnitColor] +title = "改变队伍颜色" +description = "改变 ${单位} 的队伍颜色为 ${Color}" +comment = "改变队伍颜色并不会改变单位所属." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = playercolor +default = "Color00" + +[SetUnitOwner] +title = "改变所属" +description = "改变 ${单位} 所属为 ${Player} 并 ${Change/Retain Color}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = colorchangeoption +default = "ChangeColorTrue" + +[UnitShareVision] +title = "共享视野 [R]" +description = "设置 ${单位} 的视野对 ${Player} ${on/off}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[UnitShareVisionBJ] +title = "共享视野" +description = "${Grant/Deny} 共享 ${单位} 的视野对 ${Player}" +comment = "" +category = TC_UNIT +[[.args]] +type = sharedontoption +default = "ShareDontOptionShare" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[SetUnitPosition] +title = "移动单位(立即)(指定坐标) [R]" +description = "立即移动 ${单位} 到(${X},${Y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetUnitPositionLoc] +title = "移动单位(立即)(指定点)" +description = "立即移动 ${单位} 到 ${指定点}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location + +[SetUnitPositionLocFacingBJ] +title = "移动单位面向角度(立即)" +description = "立即移动 ${单位} 到 ${指定点} ,面向角度 ${Direction} 度" +comment = "建议使用'移动单位'+'设置面向角度'动作. 面向角度采用角度制,0度为正东方向,90度为正北方向." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location +[[.args]] +type = degree +default = "RealUnitFacing" + +[SetUnitPositionLocFacingLocBJ] +title = "移动单位面向点(立即)" +description = "立即移动 ${单位} 到 ${指定点} ,并面向 ${指定点}" +comment = "建议使用'移动单位'+'设置面向角度'动作." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location +[[.args]] +type = location + +[SetUnitX] +title = "设置X坐标 [R]" +description = "设置 ${单位} 的X坐标为 ${X}" +comment = "注意如果坐标超出地图边界是会出错的." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" + +[SetUnitY] +title = "设置Y坐标 [R]" +description = "设置 ${单位} 的Y坐标为 ${Y}" +comment = "注意如果坐标超出地图边界是会出错的." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" + +[SetUnitRallyPoint] +title = "设置集结点(指定点)" +description = "设置 ${单位} 的集结点到 ${指定点}" +comment = "建议用发布'setrally'命令来实现该功能." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location + +[SetUnitRallyUnit] +title = "设置集结点(指定单位)" +description = "设置 ${单位} 的集结点到 ${单位}" +comment = "建议用发布'setrally'命令来实现该功能." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit + +[SetUnitRallyDestructable] +title = "设置集结点(指定物件)" +description = "设置 ${单位} 的集结点到 ${物件}" +comment = "建议用发布'setrally'命令来实现该功能." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = destructable + +[SetUnitState] +title = "设置单位属性 [R]" +description = "设置 ${单位} 的 ${属性} 为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitstatesec +default = "UnitStateLifeSec" +[[.args]] +type = real +default = "100" + +[SetUnitLifePercentBJ] +title = "设置生命值(百分比)" +description = "设置 ${单位} 的生命值为 ${Percent}%" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetUnitManaPercentBJ] +title = "设置魔法值(百分比)" +description = "设置 ${单位} 的魔法值为 ${Percent}%" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetUnitLifeBJ] +title = "设置生命值(指定值)" +description = "设置 ${单位} 的生命值为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "GetUnitStateSwap" +min = 0 + +[SetUnitManaBJ] +title = "设置魔法值(指定值)" +description = "设置 ${单位} 的魔法值为 ${Value}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +min = 0 + +[SetUnitInvulnerable] +title = "设置无敌/可攻击" +description = "设置 ${单位} ${Invulnerable/Vulnerable}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = invulnerableoption +default = "InvulnerabilityInvulnerable" + +[PauseUnit] +title = "暂停/恢复 [R]" +description = "设置 ${单位} ${Pause/Unpause}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = pauseunpauseoption +default = "PauseUnpauseOptionPause" + +[PauseUnitBJ] +title = "暂停/恢复" +description = "${Pause/Unpause} ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = pauseunpauseoption +default = "PauseUnpauseOptionPause" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[PauseAllUnitsBJ] +title = "暂停/恢复 所有单位" +description = "${Pause/Unpause} 所有单位" +comment = "该动作只作用于当前存在于地图的单位. 对于之后创建或复活的单位并不会受到影响." +category = TC_UNIT +[[.args]] +type = pauseunpauseoption +default = "PauseUnpauseOptionPause" + +[UnitPauseTimedLife] +title = "暂停/恢复生命周期 [R]" +description = "使 ${单位} ${Pause/Unpause} 生命周期" +comment = "只有召唤单位有生命周期." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = pauseunpauseoption +default = "PauseUnpauseOptionPause" + +[UnitPauseTimedLifeBJ] +title = "暂停/恢复生命周期" +description = "${Pause/Unpause} ${单位} 的生命周期" +comment = "只有召唤单位有生命周期." +category = TC_UNIT +[[.args]] +type = pauseunpauseoption +default = "PauseUnpauseOptionPause" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitApplyTimedLife] +title = "设置生命周期 [R]" +description = "为 ${单位} 设置 ${Buff Type} 类型的生命周期,持续时间为 ${Duration} 秒" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = timedlifebuffcode +default = "TimedLifeBuffCodeWaterElemental" +[[.args]] +type = real +default = "60" +min = 0 + +[UnitApplyTimedLifeBJ] +title = "设置生命周期" +description = "设置 ${Duration} 秒 ${Buff Type} 类型的生命周期对 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = real +default = "60" +min = 0 +[[.args]] +type = timedlifebuffcode +default = "TimedLifeBuffCodeGeneric" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SetUnitExplodedBJ] +title = "设置死亡方式" +description = "设置 ${单位} ${Explode/Die Normally} 在死亡时" +comment = "" +script_name = SetUnitExploded +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = explodedontoption +default = "ExplodeDontExplode" + +[UnitSuspendDecay] +title = "暂停尸体腐烂 [R]" +description = " 设置 ${单位} 的尸体腐烂状态: ${Suspend/Resume}" +comment = "只对已完成死亡动作的尸体有效." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = suspendresumeoption_R +default = "SuspendResumeSuspend_R" + +[UnitSuspendDecayBJ] +title = "暂停尸体腐烂" +description = "${Suspend/Resume} 尸体腐烂对 ${单位}" +comment = "只对已完成死亡动作的尸体有效." +category = TC_UNIT +[[.args]] +type = suspendresumeoption +default = "SuspendResumeSuspend" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitResetCooldown] +title = "重置技能CD" +description = "重置 ${单位} 的所有技能冷却时间" +comment = "如果要重置单一技能的CD,可以通过删除技能+添加技能+设置技能等级来完成." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitSetConstructionProgress] +title = "设置建筑建造进度条" +description = "设置 ${Building} 的建造进度条为 ${Progress}%" +comment = "只作用于正在建造的建筑." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "50" +min = 0 +max = 100 + +[UnitSetUpgradeProgress] +title = "设置建筑升级进度条" +description = "设置 ${Building} 的升级进度条为 ${Progress}%" +comment = "只作用于正在升级的建筑. 是建筑A升级为建筑B的升级,不是科技的研究." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "50" +min = 0 +max = 100 + +[UnitAddSleepPerm] +title = "控制单位睡眠状态" +description = "使 ${单位} ${Sleep/Remain Awake}" +comment = "使用该功能前必须用触发为单位添加'一直睡眠'技能." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = sleepwakeoption +default = "SleepWakeOptionSleep" + +[UnitSetCanSleepBJ] +title = "设置单位夜晚睡眠" +description = "设置 ${单位} ${Sleep/Remain Awake} 在夜晚" +comment = "只对中立单位有效. 并不影响催眠魔法." +script_name = UnitAddSleep +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = sleepwakeoption +default = "SleepWakeOptionSleep" + +[UnitWakeUpBJ] +title = "叫醒" +description = "叫醒 ${单位}" +comment = "不影响催眠魔法效果." +script_name = UnitWakeUp +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitGenerateAlarms] +title = "设置警报开启/关闭" +description = "设置警报对 ${单位} ${On/Off}" +comment = "只作用于建筑." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = onoffoption +default = "OnOffOff" + +[RescueUnitBJ] +title = "营救单位" +description = "营救 ${单位} ,改变所属为 ${Player} 并 ${Change/Retain Color}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = colorchangeoption +default = "ChangeColorTrue" + +[SetUnitRescuable] +title = "设置可否营救(对玩家) [R]" +description = "设置 ${单位} 对 ${玩家}${Rescuable/Unrescuable}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = rescuableoption +default = "RescuableOptionRescuable" + +[MakeUnitRescuableToForceBJ] +title = "设置可否营救(对玩家组)" +description = "设置 ${单位} ${Rescuable/Unrescuable} 对 ${玩家组}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = rescuableoption +default = "RescuableOptionRescuable" +[[.args]] +type = force +default = "Force00" + +[SetUnitRescueRange] +title = "设置营救范围" +description = "设置 ${单位} 的营救范围为 ${Range}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = real +default = "384" +min = 0 + +[YDWEFlyEnable] +title = "设置单位可以飞行 [YDWE]" +description = "让单位 ${地面单位} 变得可以飞行。" +comment = "让一个地面单位变得可以飞行,可以设置其飞行高度。" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWELifeChange] +title = "设置单位生命上限 [YDWE]" +description = "设置 ${单位} 的生命上限 ${变化} ${整数} ,关联技能为 ${辅助技能}" +comment = "如果修改后单位生命上限小于0,单位会立即死亡;关联技能的设置请参考example文件夹下的辅助地图。" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitstatechangetype +default = "unitstatechangetypeA" +[[.args]] +type = integer +default = "300" +min = 0 +max = 99999 +[[.args]] +type = abilcode + +[YDWEManaChange] +title = "设置单位魔法上限 [YDWE]" +description = "设置 ${单位} 的魔法上限 ${变化} ${整数} ,关联技能为 ${辅助技能}" +comment = "如果修改后单位魔法上限小于0,单位的魔法栏将消失;关联技能的设置请参考example文件夹下的辅助地图。" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitstatechangetype +default = "unitstatechangetypeA" +[[.args]] +type = integer +default = "300" +min = 0 +max = 99999 +[[.args]] +type = abilcode + +[SetRescueUnitColorChangeBJ] +title = "设置营救颜色(单位)" +description = "设置单位 ${Change/Retain Color} 当被营救时" +comment = "默认情况单位被营救时会改变颜色. 不影响已经被营救的单位." +category = TC_UNIT +[[.args]] +type = colorchangeoption +default = "ChangeColorFalse" + +[SetRescueBuildingColorChangeBJ] +title = "设置营救颜色(建筑)" +description = "设置建筑 ${Change/Retain Color} 当被营救时" +comment = "默认建筑被营救时不会改变颜色. 不影响已经被营救的建筑." +category = TC_UNIT +[[.args]] +type = colorchangeoption +default = "ChangeColorFalse" + +[SetUnitUseFood] +title = "允许/禁止 人口占用 [R]" +description = "设置 ${单位} : ${Enable/Disable} 其人口占用" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[SetUnitUseFoodBJ] +title = "允许/禁止 人口占用" +description = "${Enable/Disable} ${单位} 的人口占用" +comment = "" +category = TC_UNIT +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = unit + +[SetUnitFacing] +title = "设置单位面向角度 [R]" +description = "设置 ${单位} 的面向角度为 ${Angle} 度" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向。速度等于单位的转身速度。" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = degree +default = "RealUnitFacing" + +[SetUnitFacingTimed] +title = "设置单位面向角度(指定时间)" +description = "设置 ${单位} 的面向角度为 ${Angle} 度,使用时间 ${Time} 秒" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向。不能超过单位的转身速度。" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = degree +default = "RealUnitFacing" +[[.args]] +type = real +default = "0" +min = 0 + +[SetUnitFacingToFaceUnitTimed] +title = "设置单位面向单位" +description = "设置 ${单位} 面向 ${目标单位} ,使用时间 ${Time} 秒" +comment = "只是面向当前单位所在点而已. 并不会因为单位位置改变而改变目标位置." +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = unit +[[.args]] +type = real +default = "0" +min = 0 + +[SetUnitFacingToFaceLocTimed] +title = "设置单位面向点" +description = "设置 ${单位} 面向 ${点} ,使用时间 ${Time} 秒" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = location +[[.args]] +type = real +default = "0" +min = 0 + +[SetUnitMoveSpeed] +title = "设置移动速度" +description = "设置 ${单位} 的移动速度为 ${Speed}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = real +default = "GetUnitDefaultMoveSpeed" + +[SetUnitPathing] +title = "设置碰撞开关" +description = "设置 ${单位} ${On/Off} 碰撞" +comment = "关闭碰撞的单位无视障碍物,但其他单位仍视其为障碍物." +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = pathingoption +default = "PathingOff" + +[SetUnitAcquireRangeBJ] +title = "设置主动攻击范围" +description = "设置 ${单位} 的主动攻击范围为 ${数值}" +comment = "" +script_name = SetUnitAcquireRange +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = real + +[SetUnitUserData] +title = "设置自定义值" +description = "设置 ${单位} 的自定义值为 ${Index}" +comment = "单位自定义值仅用于触发器. 可用来给单位绑定一个整型数据." +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = integer +default = "0" + +[UnitRemoveBuffs] +title = "删除魔法效果(指定极性) [R]" +description = "删除 ${单位} 的附带Buff,(${Include/Exclude} 正面Buff, ${Include/Exclude} 负面Buff)" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" + +[UnitRemoveBuffsEx] +title = "删除魔法效果(详细类别) [R]" +description = "删除 ${单位} 的附带Buff,(${Include/Exclude} 正面Buff, ${Include/Exclude} 负面Buff${Include/Exclude} 魔法Buff, ${Include/Exclude} 物理Buff${Include/Exclude} 生命周期, ${Include/Exclude} 光环效果${Include/Exclude} 不可驱散Buff)" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" + +[UnitRemoveBuffNT] +title = "删除指定魔法效果 [R]" +description = "删除 ${单位} 的 ${魔法效果}" +comment = "" +script_name = UnitRemoveAbility +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = buffcode + +[UnitRemoveBuffsBJ] +title = "删除魔法效果(指定类别)" +description = "删除 ${Buff Type} 魔法效果从 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = bufftype +default = "BuffTypeAll" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitRemoveBuffsExBJ] +title = "删除魔法效果(详细类别)" +description = "删除 ${Buff Type} ${Buff Resist} Buff从 ${单位}(${Include/Exclude} 生命周期, ${Include/Exclude} 光环)" +comment = "buff性质选项第4项为无效选项, 仅为兼容而保留." +category = TC_UNIT +[[.args]] +type = buffpolarity +default = "BuffPolarityEither" +[[.args]] +type = buffresist +default = "BuffResistEither" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" + +[UnitRemoveBuffBJ] +title = "删除指定魔法效果" +description = "删除 ${魔法效果} 从 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = buffcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitAddAbility] +title = "添加技能 [R]" +description = "为 ${单位} 添加 ${技能}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[UnitAddAbilityBJ] +title = "添加技能" +description = "添加 ${技能} 给 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitRemoveAbility] +title = "删除技能 [R]" +description = "为 ${单位} 删除 ${技能}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[UnitRemoveAbilityBJ] +title = "删除技能" +description = "删除 ${技能} 从 ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitMakeAbilityPermanent] +title = "设置技能永久性 [R]" +description = "设置 ${单位} ${是否} ${技能} 永久性" +comment = "如触发添加给单位的技能就是非永久性的,非永久性技能在变身并回复之后会丢失掉. 这类情况就需要设置技能永久性." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = onoffoption +default = "OnOffOn" +[[.args]] +type = abilcode + +[UnitAddType] +title = "添加类别 [R]" +description = "为 ${单位} 添加 ${Classification} 类别" +comment = "已去除所有无效类别." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unittypeaddable +default = "UnitTypeMechanicalAdd" + +[UnitAddTypeBJ] +title = "添加类别" +description = "添加 ${Classification} 类别到 ${单位}" +comment = "并非所有类别都是可以添加的,建议使用新函数." +category = TC_UNIT +[[.args]] +type = unittype +default = "UnitTypeMechanical" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitRemoveType] +title = "删除类别 [R]" +description = "为 ${单位} 删除 ${Classification} 类别" +comment = "已去除所有无效类别." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unittypeaddable +default = "UnitTypeMechanicalAdd" + +[UnitRemoveTypeBJ] +title = "删除类别" +description = "删除 ${Classification} 类别从 ${单位}" +comment = "并非所有类别都是可以删除的,建议使用新函数." +category = TC_UNIT +[[.args]] +type = unittype +default = "UnitTypeMechanical" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[DecUnitAbilityLevel] +title = "降低技能等级 [R]" +description = "使 ${单位} 的 ${技能} 等级降低1级" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[DecUnitAbilityLevelSwapped] +title = "降低技能等级" +description = "降低 ${技能} 等级对 ${单位}" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IncUnitAbilityLevel] +title = "提升技能等级 [R]" +description = "使 ${单位} 的 ${技能} 等级提升1级" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[IncUnitAbilityLevelSwapped] +title = "提升技能等级" +description = "提升 ${技能} 等级对 ${单位}" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SetUnitAbilityLevel] +title = "设置技能等级 [R]" +description = "设置 ${单位} 的 ${技能} 等级为 ${Level}" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode +[[.args]] +type = integer +default = "1" +min = 1 + +[SetUnitAbilityLevelSwapped] +title = "设置技能等级" +description = "设置 ${技能} 等级对 ${单位} 为 ${Level}" +comment = "改变死亡单位的光环技能会导致魔兽崩溃." +category = TC_UNIT +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "1" +min = 1 + +[IssueImmediateOrder] +title = "发布命令(无目标)" +description = "对 ${单位} 发布 ${Order} 命令" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitordernotarg +default = "UnitOrderStop" + +[IssuePointOrder] +title = "发布命令(指定坐标)" +description = "对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssuePointOrderLoc] +title = "发布命令(指定点)" +description = "对 ${单位} 发布 ${Order} 命令到目标点: ${指定点}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = location + +[IssueTargetOrder] +title = "发布命令(指定单位)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderutarg +default = "UnitOrderAttackUnit" +[[.args]] +type = unit + +[IssueTargetDestructableOrder] +title = "发布命令(指定可破坏物)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "" +script_name = IssueTargetOrder +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderdtarg +default = "UnitOrderHarvestDestructible" +[[.args]] +type = destructable + +[IssueTargetItemOrder] +title = "发布命令(指定物品)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "" +script_name = IssueTargetOrder +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderitarg +default = "UnitOrderSmartItem" +[[.args]] +type = item + +[IssueImmediateOrderById] +title = "发布命令(无目标)(ID)" +description = "对 ${单位} 发布 ${Order} 命令" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodenotarg +default = "OrderCodeStop" + +[IssuePointOrderById] +title = "发布命令(指定坐标)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssuePointOrderByIdLoc] +title = "发布命令(指定点)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标点: ${指定点}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = location + +[IssueTargetOrderById] +title = "发布命令(指定单位)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeutarg +default = "OrderCodeAttackUnit" +[[.args]] +type = unit + +[IssueTargetDestructableOrderById] +title = "发布命令(指定可破坏物)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "" +script_name = IssueTargetOrderById +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodedtarg +default = "OrderCodeHarvestDestructible" +[[.args]] +type = destructable + +[IssueTargetItemOrderById] +title = "发布命令(指定物品)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "" +script_name = IssueTargetOrderById +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeitarg +default = "OrderCodeSmartItem" +[[.args]] +type = item + +[IssueNeutralImmediateOrder] +title = "发布中介命令(无目标)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitordernotarg +default = "UnitOrderStop" + +[IssueNeutralPointOrder] +title = "发布中介命令(指定坐标)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderNeutralDetectAOE" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueNeutralTargetOrder] +title = "发布中介命令(指定单位)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderutarg +default = "UnitOrderNeutralInterAct" +[[.args]] +type = unit + +[IssueNeutralTargetDestructableOrder] +title = "发布中介命令(指定可破坏物)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrder +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderdtarg +default = "UnitOrderHarvestDestructible" +[[.args]] +type = destructable + +[IssueNeutralTargetItemOrder] +title = "发布中介命令(指定物品)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrder +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderitarg +default = "UnitOrderSmartItem" +[[.args]] +type = item + +[IssueNeutralImmediateOrderById] +title = "发布中介命令(无目标)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodenotarg +default = "OrderCodeStop" + +[IssueNeutralPointOrderById] +title = "发布中介命令(指定坐标)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeNeutralDetectAOE" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueNeutralTargetOrderById] +title = "发布中介命令(指定单位)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeutarg +default = "OrderCodeNeutralInterAct" +[[.args]] +type = unit + +[IssueNeutralTargetDestructableOrderById] +title = "发布中介命令(指定可破坏物)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodedtarg +default = "OrderCodeHarvestDestructible" +[[.args]] +type = destructable + +[IssueNeutralTargetItemOrderById] +title = "发布中介命令(指定物品)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeitarg +default = "OrderCodeSmartItem" +[[.args]] +type = item + +[YDWEIssueNeutralImmediateOrderById] +title = "发布中介命令(无目标)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId + +[YDWEIssueNeutralPointOrderById] +title = "发布中介命令(指定坐标)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralPointOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[YDWEIssueNeutralTargetOrderById] +title = "发布中介命令(指定单位)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = unit + +[YDWEIssueNeutralTargetDestructableOrderById] +title = "发布中介命令(指定可破坏物)(自定义ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = "851983" +[[.args]] +type = destructable + +[YDWEIssueNeutralTargetItemOrderById] +title = "发布中介命令(指定物品)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = item + +[IssueTrainOrderByIdBJ] +title = "发布训练/升级命令" +description = "命令 ${单位} 建造/升级为 ${单位类型}" +comment = "该升级是指A单位升级为B单位,而不是科技升级." +script_name = IssueImmediateOrderById +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" + +[IssueUpgradeOrderByIdBJ] +title = "发布研究科技命令" +description = "命令 ${单位} 研究 ${Tech-Type}" +comment = "" +script_name = IssueImmediateOrderById +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = techcode +default = "Rhde" + +[IssueBuildOrderById] +title = "发布建造命令(指定坐标) [R]" +description = "命令 ${单位} 建造 ${单位类型} 在坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hbar" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueBuildOrderByIdLocBJ] +title = "发布建造命令(指定点)" +description = "命令 ${单位} 建造 ${单位类型} 在 ${指定点}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hbar" +[[.args]] +type = location + +[UnitDropItemPoint] +title = "发布丢弃物品命令(指定坐标) [R]" +description = "命令 ${单位} 丢弃物品 ${物品} 到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[UnitDropItemPointLoc] +title = "发布丢弃物品命令(指定点)" +description = "命令 ${单位} 丢弃物品 ${物品} 到 ${指定点}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = location + +[UnitDropItemSlot] +title = "移动物品到物品栏 [R]" +description = "命令 ${单位} 移动 ${物品} 到物品栏# ${Index}" +comment = "只有当单位持有该物品时才有效. 注意: 该函数中物品栏编号从0-5,而不是1-6." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = integer +default = "0" +min = 0 +max = 5 + +[UnitDropItemSlotBJ] +title = "移动物品到物品栏" +description = "命令 ${单位} 移动 ${物品} 到物品栏第 ${Index} 格" +comment = "只有当单位持有该物品时才有效." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = integer +default = "1" +min = 1 +max = 6 + +[UnitDropItemTargetBJ] +title = "发布给予物品命令" +description = "命令 ${单位} 把 ${物品} 给 ${单位}" +comment = "" +script_name = UnitDropItemTarget +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = unit + +[IssueBuyUnitOrder] +title = "发布购买单位命令 [R]" +description = "使 ${玩家} 从 ${单位} 处购买 ${单位类型}" +comment = "" +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" + +[IssueBuyItemOrder] +title = "发布购买物品命令 [R]" +description = "使 ${玩家} 从 ${单位} 处购买 ${物品类型}" +comment = "先让商店对玩家单位发布'中立商店 - 选择'命令,再使用该函数就能实现指定单位的购买物品了." +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "ckng" + +[UnitDamagePoint] +title = "伤害区域 [R]" +description = "命令 ${单位} 在 ${Seconds} 秒后对半径为 ${Size} 圆心为(${X},${Y})的范围造成 ${Amount} 点伤害(${是} 攻击伤害, ${是}远程攻击) 攻击类型: ${AttackType} 伤害类型: ${DamageType} 装甲类型: ${WeaponType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "500" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "100" +[[.args]] +type = isnotoption +default = "IsNotIs" +[[.args]] +type = isnotoption +default = "IsNotNot" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" + +[UnitDamagePointLoc] +title = "伤害区域" +description = "命令 ${单位} 在 ${Seconds} 秒后对半径为 ${Size} 圆心为 ${指定点} 的范围造成${Amount} 点伤害,攻击类型: ${AttackType} 伤害类型: ${DamageType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "500" +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = real +default = "100" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" + +[UnitDamageTarget] +title = "伤害目标 [R]" +description = "命令 ${单位} 对 ${Target} 造成 ${Amount} 点伤害(${是} 攻击伤害, ${是}远程攻击) 攻击类型: ${AttackType} 伤害类型: ${DamageType} 武器类型: ${WeaponType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "500" +[[.args]] +type = isnotoption +default = "IsNotIs" +[[.args]] +type = isnotoption +default = "IsNotNot" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" + +[UnitDamageTargetBJ] +title = "伤害目标" +description = "命令 ${单位} 对 ${Target} 造成 ${Amount} 点伤害,攻击类型: ${AttackType} 伤害类型: ${DamageType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "500" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" + +[YDWECreateUnitPool] +title = "创建单位池 [YDWE]" +description = "新建一个单位池" +comment = "新建一个单位池,该单位池可以被<最后创建的单位池>获得。" +category = TC_UNITPOOL +[[.args]] +type = nothing + +[UnitPoolAddUnitType] +title = "添加单位类型 [R]" +description = "在 ${单位池} 中添加一个 ${单位} 比重为 ${数值}" +comment = "比重越高被选择的机率越大" +category = TC_UNITPOOL +[[.args]] +type = unitpool +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = real +default = "1" + +[UnitPoolRemoveUnitType] +title = "删除单位类型 [R]" +description = "从 ${单位池} 中删除 ${单位}" +comment = "" +category = TC_UNITPOOL +[[.args]] +type = unitpool +[[.args]] +type = unitcode +default = "hfoo" + +[PlaceRandomUnit] +title = "选择放置单位 [R]" +description = "从 ${单位池} 中为 ${玩家} 任意选择一个单位并放置到点( ${X} , ${Y} ) 面向 ${度}" +comment = "" +category = TC_UNITPOOL +[[.args]] +type = unitpool +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[YDWEPlaceRandomUnit] +title = "选择放置单位 [YDWE]" +description = "从 ${单位池} 中为 ${玩家} 任意选择一个单位并放置到点( ${X} , ${Y} ) 面向 ${度}" +comment = "该单位可以被<最后从单位池中取出的单位>获取。" +category = TC_UNITPOOL +[[.args]] +type = unitpool +default = "bj_lastCreatedUnitPool" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[DestroyUnitPool] +title = "删除单位池 [R]" +description = "删除 ${单位池}" +comment = "" +category = TC_UNITPOOL +[[.args]] +type = unitpool + +[ForGroupMultiple] +title = "选取单位组内单位做动作(多个动作)" +description = "选取 ${单位组} 内所有单位做动作" +comment = "使用'选取单位'来取代相应的单位. 对于单位组内每个单位都会运行一次动作(包括死亡的,不包括隐藏的). 等待不能在组动作中运行." +script_name = ForGroupBJ +category = TC_UNITGROUP +[[.args]] +type = group + +[ForGroup] +title = "选取单位组内单位做动作" +description = "选取 ${单位组} 内所有单位 ${做动作}" +comment = "使用'选取单位'来取代相应的单位. 对于单位组内每个单位都会运行一次动作(包括死亡的,不包括隐藏的). 等待不能在组动作中运行." +script_name = ForGroupBJ +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = code +default = "DoNothing" + +[GroupEnumUnitsInRange] +title = "选取单位添加到单位组(坐标)" +description = "为 ${单位组} 添加以( ${坐标X} , ${坐标Y} )为圆心,${半径} 为半径的圆范围内,满足 ${条件} 的单位" +comment = "" +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = boolexpr + +[GroupEnumUnitsInRangeCounted] +title = "选取单位添加到单位组(坐标)(不建议使用)" +description = "为 ${单位组} 添加以( ${坐标X} , ${坐标Y} )为圆心,${半径} 为半径的圆范围内,满足 ${条件} 的单位。无效项( ${N} )" +comment = "最后一项是无效项,建议用上一个UI" +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = boolexpr +[[.args]] +type = integer +default = "5" +min = 0 + +[GroupEnumUnitsInRangeOfLoc] +title = "选取单位添加到单位组(点)" +description = "为 ${单位组} 添加以 ${点} 为圆心,${半径} 为半径的圆范围内,满足 ${条件} 的单位" +comment = "" +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = boolexpr + +[GroupEnumUnitsInRangeOfLocCounted] +title = "选取单位添加到单位组(点)(不建议使用)" +description = "为 ${单位组} 添加以 ${点} 为圆心,${半径} 为半径的圆范围内,满足 ${条件} 的单位。无效项( ${N} )" +comment = "最后一项是无效项,建议用上一个UI" +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = boolexpr +[[.args]] +type = integer +default = "5" +min = 0 + +[GroupAddUnit] +title = "添加单位 [R]" +description = "为 ${单位组} 添加 ${单位}" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GroupAddUnitSimple] +title = "添加单位" +description = "添加 ${单位} 到 ${单位组}" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = group + +[GroupAddGroup] +title = "添加单位组" +description = "添加 ${单位组} 内所有单位到 ${单位组}" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = group + +[GroupRemoveUnit] +title = "移除单位 [R]" +description = "为 ${单位组} 删除 ${单位}" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GroupRemoveUnitSimple] +title = "移除单位" +description = "把 ${单位} 从 ${单位组} 移除" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = group + +[GroupRemoveGroup] +title = "移除单位组" +description = "把 ${单位组} 中的单位从 ${单位组} 移除" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = group + +[GroupClear] +title = "清空单位组" +description = "清空 ${单位组} 内所有单位" +comment = "并不影响单位本身." +category = TC_UNITGROUP +[[.args]] +type = group + +[DestroyGroup] +title = "删除单位组 [R]" +description = "删除 ${单位组}" +comment = "" +category = TC_UNITGROUP +[[.args]] +type = group + +[GroupImmediateOrder] +title = "发布命令(无目标)" +description = "对 ${单位组}发布 ${Order}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitordernotarg +default = "UnitOrderStop" + +[GroupPointOrder] +title = "发布命令(指定坐标) [R]" +description = "对 ${单位组}发布 ${Order} 命令,目标点:(${X},${Y})" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GroupPointOrderLoc] +title = "发布命令(指定点)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${指定点}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = location + +[GroupTargetOrder] +title = "发布命令(指定单位)" +description = "对 ${单位组} 发布 ${Order} 命令,目标: ${单位}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitorderutarg +default = "UnitOrderAttackUnit" +[[.args]] +type = unit + +[GroupTargetDestructableOrder] +title = "发布命令(指定可破坏物)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${可破坏物}" +comment = "最多只能对单位组中12个单位发布命令." +script_name = GroupTargetOrder +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitorderdtarg +default = "UnitOrderHarvestDestructible" +[[.args]] +type = destructable + +[GroupTargetItemOrder] +title = "发布命令(指定物品)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${物品}" +comment = "最多只能对单位组中12个单位发布命令." +script_name = GroupTargetOrder +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = unitorderitarg +default = "UnitOrderAttackItem" +[[.args]] +type = item + +[GroupImmediateOrderById] +title = "发布命令(无目标)(ID)" +description = "对 ${单位组}发布 ${Order}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodenotarg +default = "OrderCodeStop" + +[GroupPointOrderById] +title = "发布命令(指定坐标)(ID)" +description = "对 ${单位组}发布 ${Order} 命令,目标点:(${X},${Y})" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GroupPointOrderByIdLoc] +title = "发布命令(指定点)(ID)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${指定点}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = location + +[GroupTargetOrderById] +title = "发布命令(指定单位)(ID)" +description = "对 ${单位组} 发布 ${Order} 命令,目标: ${单位}" +comment = "最多只能对单位组中12个单位发布命令." +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodeutarg +default = "OrderCodeAttackUnit" +[[.args]] +type = unit + +[GroupTargetDestructableOrderById] +title = "发布命令(指定可破坏物)(ID)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${可破坏物}" +comment = "最多只能对单位组中12个单位发布命令." +script_name = GroupTargetOrder +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodedtarg +default = "OrderCodeHarvestDestructible" +[[.args]] +type = destructable + +[GroupTargetItemOrderById] +title = "发布命令(指定物品)(ID)" +description = "对 ${单位组}发布 ${Order} 命令,目标: ${物品}" +comment = "最多只能对单位组中12个单位发布命令." +script_name = GroupTargetOrder +category = TC_UNITGROUP +[[.args]] +type = group +[[.args]] +type = ordercodeitarg +default = "OrderCodeAttackItem" +[[.args]] +type = item + +[GroupTrainOrderByIdBJ] +title = "发布发布训练/升级命令" +description = "命令 ${单位组} 训练/升级为 ${单位类型}" +comment = "最多只能对单位组中12个单位发布命令." +script_name = GroupImmediateOrderById +category = TC_UNITGROUP +[[.args]] +type = group +default = "GetUnitsInRectAll" +[[.args]] +type = unitcode +default = "hfoo" + +[CreateUbersplatBJ] +title = "创建地面纹理变化" +description = "创建一个地面纹理变化在 ${指定点} ,使用图像: ${Type} 颜色值:(${Red}%, ${Green}%, ${Blue}%) 透明度${Transparency}% (${Enable/Disable} 暂停状态, ${Enble/Disable} 跳过出生动画)" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的. 使用'地面纹理变化 - 设置永久渲染状态' 来显示创建的纹理变化. 暂停状态表示动画播放完毕后是否继续保留该纹理变化." +category = TC_UBERSPLAT +[[.args]] +type = location +[[.args]] +type = ubersplattype +default = "UbersplatTypeNGOL" +[[.args]] +type = real +default = "100" +[[.args]] +type = real +default = "100" +[[.args]] +type = real +default = "100" +[[.args]] +type = real +default = "0" +[[.args]] +type = allowdontoption +default = "AllowDontDont" +[[.args]] +type = allowdontoption +default = "AllowDontDont" + +[DestroyUbersplat] +title = "删除地面纹理变化" +description = "删除 ${Ubersplat}" +comment = "" +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" + +[ResetUbersplat] +title = "重置地面纹理变化" +description = "重置 ${Ubersplat}" +comment = "" +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" + +[FinishUbersplat] +title = "结束地面纹理变化" +description = "结束 ${Ubersplat}" +comment = "在动画播放完毕时自动清除该地面纹理变化." +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" + +[ShowUbersplat] +title = "显示/隐藏 地面纹理变化[R]" +description = "设置 ${Ubersplat} 状态为 ${Show/Hide}" +comment = "" +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "bj_lastCreatedUbersplat" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[ShowUbersplatBJ] +title = "显示/隐藏 地面纹理变化" +description = "${Show/Hide} ${Ubersplat}" +comment = "" +category = TC_UBERSPLAT +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" + +[SetUbersplatRender] +title = "设置渲染状态" +description = "设置 ${Ubersplat} : ${Enable/Disable} 渲染状态" +comment = "未发现有任何作用." +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetUbersplatRenderAlways] +title = "设置永久渲染状态" +description = "设置 ${Ubersplat} : ${Enable/Disable} 永久渲染状态" +comment = "要显示地面纹理变化则必须开启该项." +category = TC_UBERSPLAT +[[.args]] +type = ubersplat +default = "GetLastCreatedUbersplat" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[MoveLocation] +title = "移动点 [R]" +description = "移动 ${点} 到(${X},${Y})" +comment = "该点必须是一个变量. 因为移动一个不可重用的点是无意义的." +category = TC_LOCATION +[[.args]] +type = location +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[RemoveLocation] +title = "清除点 [R]" +description = "清除 ${点}" +comment = "点是堆积最多的垃圾资源,不需要再使用的点都要记得清除掉." +category = TC_LOCATION +[[.args]] +type = location + +[TransmissionFromUnitWithNameBJ] +title = "播送单位消息(指定单位)" +description = "对 ${玩家组} 播送信息,发言单位: ${单位} 显示名字: ${文字} ,播放音效: ${音效} 显示信息: ${文字} 持续时间: ${Method} ${Time} 秒并 ${Wait/Don't Wait}" +comment = "'没有声音'的持续时间为5秒. 等待表示其他动作需要等待信息播放完毕后才能运行." +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = unit +[[.args]] +type = StringExt +[[.args]] +type = sound +default = "SoundNull" +[[.args]] +type = StringExt +[[.args]] +type = addsettooption +default = "AddSetToAdd" +[[.args]] +type = real +default = "0" +[[.args]] +type = waitdontoption +default = "WaitDontWait" + +[TransmissionFromUnitTypeWithNameBJ] +title = "播送单位消息(指定单位-类型)" +description = "对 ${玩家组} 播送信息,发言单位: ${Player} 的 ${单位类型} 显示名字: ${文字} 发言位置: ${指定点} 播放音效: ${音效} 显示信息: ${文字} 持续时间: ${Method} ${Time} 秒并 ${Wait/Don't Wait}" +comment = "'没有声音'的持续时间为5秒. 等待表示其他动作需要等待信息播放完毕后才能运行." +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = StringExt +[[.args]] +type = location +[[.args]] +type = sound +default = "SoundNull" +[[.args]] +type = StringExt +[[.args]] +type = addsettooption +default = "AddSetToAdd" +[[.args]] +type = real +default = "0" +[[.args]] +type = waitdontoption +default = "WaitDontWait" + +[ForceCinematicSubtitlesBJ] +title = "字幕显示" +description = "${On/Off} 电影字幕显示功能" +comment = "该功能和'游戏菜单-声音选项'中的字幕选项中有一项为开时即能够显示电影字幕." +script_name = ForceCinematicSubtitles +category = TC_CINEMATIC +[[.args]] +type = onoffoption +default = "OnOffOn" + +[CinematicModeBJ] +title = "电影模式" +description = "${On/Off} 电影模式对 ${玩家组}" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = onoffoption +default = "OnOffOn" +[[.args]] +type = force +default = "GetPlayersAll" + +[CinematicModeExBJ] +title = "电影模式(指定时间)" +description = "${On/Off} 电影模式对 ${玩家组} ,转换时间为 ${Time} 秒" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = onoffoption +default = "OnOffOn" +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = real +default = "0.2" + +[CinematicFadeBJ] +title = "淡入淡出滤镜" +description = "${Fade Type} 使用 ${Duration} 秒时间,使用图片: ${Texture} 颜色值:(${Red}%, ${Green}%, ${Blue}%) 透明度: ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_CINEMATIC +[[.args]] +type = fadetypeoption +default = "FadeTypeOptionFadeOutIn" +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = cinefiltertexture +default = "CineFilterTextureWhite" +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[CinematicFilterGenericBJ] +title = "高级滤镜" +description = "持续时间: ${Duration} 秒,混合方式: ${Blending Method} 使用图片: ${Texture} 开始颜色值:(${Red}%, ${Green}%, ${Blue}%) 透明度: ${Transparency}% ,结束颜色值:(${Red}%, ${Green}%, ${Blue}%) 透明度:${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_CINEMATIC +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = blendmode +default = "BlendModeBlend" +[[.args]] +type = cinefiltertexture +default = "CineFilterTextureWhite" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[DisplayCineFilterBJ] +title = "显示/隐藏 滤镜" +description = "${Show/Hide} 滤镜" +comment = "" +script_name = DisplayCineFilter +category = TC_CINEMATIC +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[PingMinimap] +title = "小地图信号(所有玩家) [R]" +description = "对所有玩家发送小地图信号到坐标(${X},${Y}) 持续时间: ${Duration} 秒" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1" +min = 0 + +[PingMinimapLocForForce] +title = "小地图信号(指定玩家组)" +description = "对 ${玩家组} 发送小地图信号到 ${指定点} ,持续时间: ${Duration} 秒" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = location +[[.args]] +type = real +default = "1" +min = 0 + +[PingMinimapEx] +title = "小地图信号(指定颜色)(所有玩家) [R]" +description = "对所有玩家发送小地图信号到坐标(${X},${Y}) 持续时间: ${Duration} 秒, 信号颜色:(${Red},${Green},${Blue}) 信号类型: ${Style}" +comment = "颜色格式为(红,绿,蓝). 颜色值取值范围为0-255." +category = TC_CINEMATIC +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "0" +min = 0 +max = 255 +[[.args]] +type = pingstyle +default = "PingStyleNormal" + +[PingMinimapLocForForceEx] +title = "小地图信号(指定颜色)(指定玩家组)" +description = "对 ${玩家组} 发送小地图信号到 ${指定点} ,持续时间: ${Duration} 秒,信号类型: ${Style} 信号颜色:(${Red}%, ${Green}%, ${Blue}%)" +comment = "颜色格式为(红,绿,蓝). 警告信号总是红色不可变." +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = location +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = minimappingstyle +default = "MinimapPingStyleSimple" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[UnitAddIndicator] +title = "闪动指示器(对单位) [R]" +description = "对 ${单位} 闪动指示器,使用颜色:(${Red}%, ${Green}%, ${Blue}%) Alpha通道值: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和Alpha通道值取值范围为0-255." +script_name = AddIndicator +category = TC_CINEMATIC +[[.args]] +type = unit +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[UnitAddIndicatorBJ] +title = "闪动指示器(对单位)" +description = "对 ${单位} 闪动指示器,使用颜色(${Red}%, ${Green}%, ${Blue}%) 透明度 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_CINEMATIC +[[.args]] +type = unit +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[DestructableAddIndicator] +title = "闪动指示器(对可破坏物) [R]" +description = "对 ${可破坏物} 闪动指示器,使用颜色:(${Red}%, ${Green}%, ${Blue}%) Alpha通道值: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和Alpha通道值取值范围为0-255." +script_name = AddIndicator +category = TC_CINEMATIC +[[.args]] +type = destructable +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[DestructableAddIndicatorBJ] +title = "闪动指示器(对可破坏物)" +description = "对 ${可破坏物} 闪动指示器,使用颜色(${Red}%, ${Green}%, ${Blue}%) 透明度 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_CINEMATIC +[[.args]] +type = destructable +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[ItemAddIndicator] +title = "闪动指示器(对物品) [R]" +description = "对 ${物品} 闪动指示器,使用颜色:(${Red}%, ${Green}%, ${Blue}%) Alpha通道值: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和Alpha通道值取值范围为0-255." +script_name = AddIndicator +category = TC_CINEMATIC +[[.args]] +type = item +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[ItemAddIndicatorBJ] +title = "闪动指示器(对物品)" +description = "对 ${物品} 闪动指示器,使用颜色(${Red}%, ${Green}%, ${Blue}%) 透明度 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_CINEMATIC +[[.args]] +type = item +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[ShowInterface] +title = "开启/关闭 信箱模式(所有玩家) [R]" +description = "${开启/关闭} 信箱模式,转换时间为 ${Duration} 秒" +comment = "使用电影镜头模式,隐藏游戏界面." +category = TC_CINEMATIC +[[.args]] +type = onoffnotoption +default = "OnOffNotOff" +[[.args]] +type = real +default = "2" +min = 0 + +[ShowInterfaceForceOff] +title = "信箱模式开启(指定玩家组)" +description = "对 ${玩家组} 开启信箱模式,转换时间为 ${Duration} 秒" +comment = "使用电影镜头模式,隐藏游戏界面." +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = real +default = "2" +min = 0 + +[ShowInterfaceForceOn] +title = "信箱模式开启关闭(指定玩家组)" +description = "对 ${玩家组} 关闭信箱模式,转换时间为 ${Duration} 秒" +comment = "关闭信箱模式,返回游戏界面." +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = real +default = "2" +min = 0 + +[EnableUserControl] +title = "启用/禁用玩家控制权(所有玩家) [R]" +description = "${启用/禁用} 玩家控制权" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetUserControlForceOff] +title = "禁用玩家控制权(指定玩家组)" +description = "禁用 ${玩家组} 的控制权" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" + +[SetUserControlForceOn] +title = "启用玩家控制权(指定玩家组)" +description = "启用 ${玩家组} 的控制权" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = force +default = "GetPlayersAll" + +[EnableOcclusion] +title = "允许/禁止闭塞(所有玩家) [R]" +description = "${Enable/Disable} 闭塞" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[EnableOcclusionBJ] +title = "允许/禁止闭塞(指定玩家组)" +description = "${Enable/Disable} 闭塞对 ${玩家组}" +comment = "" +category = TC_CINEMATIC +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = force +default = "GetPlayersAll" + +[EnableWorldFogBoundary] +title = "允许/禁止 边界染色(所有玩家) [R]" +description = "${Enable/Disable} 边界染色,应用于所有玩家" +comment = "禁用边界染色时边界为普通地形,不显示为黑色,但仍是不可通行的." +category = TC_CINEMATIC +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[EnableWorldFogBoundaryBJ] +title = "允许/禁止 边界染色(指定玩家组)" +description = "${Enable/Disable} 边界染色,应用于 ${玩家组}" +comment = "禁用边界染色时边界为普通地形,不显示为黑色,但仍是不可通行的." +category = TC_CINEMATIC +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = force +default = "GetPlayersAll" + +[SetUnitAnimation] +title = "播放单位动画" +description = "播放 ${Unit} 的 ${动画名} 动作" +comment = "通过 '重置单位动作' 恢复到普通的动作." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = string +default = "\"stand\"" + +[SetUnitAnimationByIndex] +title = "播放单位指定序号动动作 [R]" +description = "播放 ${单位} 的第${序号} 号动作" +comment = "可以指定播放所有的单位动画,不过需要自己多尝试.每个单位的动作序号不一样的." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = integer +default = "0" + +[SetUnitAnimationWithRarity] +title = "播放单位动运作(指定概率)" +description = "播放 ${单位} 的 ${Animation Name} 动作,只用 ${Rarity} 动作" +comment = "通过 '重置单位动作' 恢复到普通的动作." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = string +default = "\"stand\"" +[[.args]] +type = raritycontrol +default = "RarityControlFrequent" + +[QueueUnitAnimationBJ] +title = "单位动画加入队列" +description = "把 ${单位} 的 ${Animation Name} 动作添加到动作队列" +comment = "单位按队列中运作的先后顺序播放动作." +script_name = QueueUnitAnimation +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = string +default = "\"stand\"" + +[ResetUnitAnimation] +title = "重置单位动画" +description = "重置 ${单位} 的动作,恢复到普通状态" +comment = "无论该单位在什么动作,都将把单位的动作恢复到普通状态(也就是'stand'动作的状态)." +category = TC_ANIMATION +[[.args]] +type = unit + +[AddUnitAnimationProperties] +title = "添加/删除 单位动画附加名 [R]" +description = "给 ${单位} 附加动作 ${Tag} ,状态为 ${Add/Remove}" +comment = "比如恶魔猎手添加'alternate'会显示为恶魔形态;农民添加'gold'则为背负黄金形态." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = string +default = "\"alternate\"" +[[.args]] +type = addremoveoption +default = "AddRemoveAdd" + +[AddUnitAnimationPropertiesBJ] +title = "添加/删除单位动画附加名" +description = "${Add/Remove} ${Tag} 动画附加名给 ${单位}" +comment = "比如恶魔猎手添加'alternate'会显示为恶魔形态;农民添加'gold'则为背负黄金形态." +category = TC_ANIMATION +[[.args]] +type = addremoveoption +default = "AddRemoveAdd" +[[.args]] +type = string +default = "\"alternate\"" +[[.args]] +type = unit + +[SetUnitLookAt] +title = "锁定身体朝向" +description = "锁定 ${单位} 的 ${Source} 朝向 ${目标单位} ,偏移坐标 (${X}, ${Y}, ${Z})" +comment = "单位的该身体部件会一直朝向目标单位的偏移坐标点处,直到使用'重置身体朝向'. 坐标偏移以目标单位脚下为坐标原点." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = unitfacingbone +default = "UnitFacingBoneHead" +[[.args]] +type = unit +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "90" + +[ResetUnitLookAt] +title = "重置身体朝向" +description = "重置 ${单位} 的身体朝向" +comment = "恢复单位的身体朝向为正常状态." +category = TC_ANIMATION +[[.args]] +type = unit + +[SetUnitScale] +title = "改变单位尺寸(按倍数) [R]" +description = "改变 ${单位} 的尺寸缩放为:(${X},${Y},${Z})" +comment = "缩放尺寸使用(长,宽,高)格式." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = real +default = "1" +min = 0 + +[SetUnitScalePercent] +title = "改变单位尺寸(按比例)" +description = "设置 ${Unit} 的缩放尺寸为 (${X}%, ${Y}%, ${Z}%)" +comment = "缩放尺寸使用(长,宽,高)格式." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = real +default = "100" +min = 0 +[[.args]] +type = real +default = "100" +min = 0 +[[.args]] +type = real +default = "100" +min = 0 + +[SetUnitVertexColor] +title = "改变单位的颜色(RGB:0-255) [R]" +description = "改变 ${单位} 的颜色值: (${Red},${Green},${Blue}), 透明值: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). 大多数单位使用(255,255,255)的颜色值和255的Alpha值. 透明值为0是不可见的.颜色值和Alpha值取值范围为0-255." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[SetUnitVertexColorBJ] +title = "改变单位颜色(RGB:0-100%)" +description = "改变 ${单位} 的颜色比例: (${Red}%, ${Green}%, ${Blue}%),透明度: ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 大多数单位使用100%的颜色值和0%透明度. 100%透明度是完全透明的." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[SetUnitTimeScale] +title = "改变单位动画播放速度(按倍数) [R]" +description = "改变 ${单位} 的动画播放速度为正常速度的 ${Percent} 倍" +comment = "设置1倍动画播放速度来恢复正常状态." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = real +default = "1" +min = 0 + +[SetUnitTimeScalePercent] +title = "改变单位动画播放速度(按百分比)" +description = "改变 ${单位} 的动画播放速度为正常速度的 ${Percent}%" +comment = "设置100%动画播放速度来恢复正常状态." +category = TC_ANIMATION +[[.args]] +type = unit +[[.args]] +type = real +default = "100" +min = 0 + +[SetUnitTurnSpeedBJ] +title = "改变单位转身速度" +description = "改变 ${单位} 的转身速度为 ${Value}" +comment = "转身速度表示单位改变面向方向时的速度,数值(0-1)越小表示转身越慢,为0则无法转身。" +script_name = SetUnitTurnSpeed +category = TC_ANIMATION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0.5" +min = 0 +max = 1 + +[SetUnitBlendTimeBJ] +title = "改变单位混合时间" +description = "改变 ${单位} 的混合时间为 ${数值}" +comment = "单位动画图像混合时间. 决定身体部件连接的快慢,比如攻击时手臂挥舞的速度. 默认值0.15,增大该值会导致动作僵硬化." +script_name = SetUnitBlendTime +category = TC_ANIMATION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real + +[SetUnitFlyHeightBJ] +title = "改变单位飞行高度" +description = "改变 ${单位} 的飞行高度为 ${数值} ,变换速率: ${数值}" +comment = "飞行单位可以直接改变飞行高度. 其他单位通过添加/删除 替换为飞行单位的变身技能(如乌鸦形态)之后,也能改变飞行高度." +script_name = SetUnitFlyHeight +category = TC_ANIMATION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +[[.args]] +type = real + +[SetUnitPropWindow] +title = "改变单位转向角度(弧度制) [R]" +description = "改变 ${单位} 的转向角度为 ${数值} (弧度制)" +comment = "设置单位转身时的转向角度. 数值越大转向幅度越大. " +category = TC_ANIMATION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = radian + +[SetUnitPropWindowBJ] +title = "改变单位转向角度(角度制)" +description = "改变 ${单位} 的转向角度为 ${数值} 度" +comment = "设置单位转身时的转向角度. 数值越大转向幅度越大. 大于360度的角将作为359度角处理." +category = TC_ANIMATION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = degree + +[SetDestructableAnimationBJ] +title = "播放可破坏物动画" +description = "播放 ${可破坏物} 的 ${Animation Name} 动作" +comment = "" +script_name = SetDestructableAnimation +category = TC_ANIMATION +[[.args]] +type = destructable +[[.args]] +type = string +default = "\"stand\"" + +[QueueDestructableAnimationBJ] +title = "将可破坏物动画加入队列" +description = "将 ${可破坏物} 的 ${Animation Name} 动作加入队列" +comment = "" +script_name = QueueDestructableAnimation +category = TC_ANIMATION +[[.args]] +type = destructable +[[.args]] +type = string +default = "\"stand\"" + +[SetDestructableAnimationSpeed] +title = "改变可破坏物动画播放速度 [R]" +description = "改变 ${可破坏物} 的动画播放速度为正常的 ${Percent}倍" +comment = "设置1倍动画播放速度来恢复正常状态." +category = TC_ANIMATION +[[.args]] +type = destructable +[[.args]] +type = real +default = "1.0" + +[SetDestAnimationSpeedPercent] +title = "改变可破坏物动画播放速度" +description = "改变 ${可破坏物} 的动画播放速度为正常的 ${Percent}%" +comment = "设置100%动画播放速度来恢复正常状态." +category = TC_ANIMATION +[[.args]] +type = destructable +[[.args]] +type = real +default = "100" + +[SetDoodadAnimationRect] +title = "播放矩形区域内地形装饰物动画 [R]" +description = "播放 ${Rect} 内所有 ${装饰物类型} 的 ${Animation Name} 动作(${允许/禁止} 随机播放)" +comment = "特殊动画名: 'show', 'hide', 'soundon', 'soundoff'. 随机播放:比如某装饰物有好几个'stand'动作,则允许该项时会随机抽取某个动作播放,而禁止该项时只播放首个动作." +category = TC_ANIMATION +[[.args]] +type = rect +default = "bj_mapInitialPlayableArea" +[[.args]] +type = doodadcode +[[.args]] +type = string +default = "\"death\"" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[SetDoodadAnimationRectBJ] +title = "播放矩形区域内地形装饰物动画" +description = "播放 ${Animation Name} 动作对所有 ${装饰物类型} 在 ${Rect} 内" +comment = "特殊动画名: 'show', 'hide', 'soundon', 'soundoff'" +category = TC_ANIMATION +[[.args]] +type = string +default = "\"death\"" +[[.args]] +type = doodadcode +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[SetDoodadAnimation] +title = "播放圆范围内地形装饰物动画 [R]" +description = "选取圆心为(${X},${Y}),半径为 ${半径} 的圆范围内的 ${装饰物类型}(选取方式:${选取方式}), 做 ${Animation Name} 动作(${允许/禁止} 随机播放)" +comment = "特殊动画名: 'show', 'hide', 'soundon', 'soundoff'. 随机播放:比如某装饰物有好几个'stand'动作,则允许该项时会随机抽取某个动作播放,而禁止该项时只播放首个动作." +category = TC_ANIMATION +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "128" +[[.args]] +type = doodadcode +[[.args]] +type = nearestonlyoption +default = "NearestOnlyOff" +[[.args]] +type = string +default = "\"death\"" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[SetDoodadAnimationBJ] +title = "播放圆范围内地形装饰物动画" +description = "播放 ${Animation Name} 动作对所有 ${装饰物类型} 在半径为 ${Radius} 圆心为 ${指定点} 的圆范围内" +comment = "特殊动画名: 'show', 'hide', 'soundon', 'soundoff'" +category = TC_ANIMATION +[[.args]] +type = string +default = "\"death\"" +[[.args]] +type = doodadcode +[[.args]] +type = real +default = "128" +[[.args]] +type = location + +[DialogDisplay] +title = "显示/隐藏 [R]" +description = "对 ${Player} 设置 ${对话框} 的状态为 ${Show/Hide}" +comment = "对话框不能应用于地图初始化事件." +category = TC_DIALOG +[[.args]] +type = player +default = "Player00" +[[.args]] +type = dialog +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[DialogDisplayBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${Dialog} 对 ${Player}" +comment = "对话框不能应用于地图初始化事件." +category = TC_DIALOG +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = dialog +[[.args]] +type = player +default = "Player00" + +[DialogSetMessageBJ] +title = "改变标题" +description = "改变 ${Dialog} 的标题为 ${Title}" +comment = "" +script_name = DialogSetMessage +category = TC_DIALOG +[[.args]] +type = dialog +[[.args]] +type = StringExt + +[DialogAddButtonBJ] +title = "添加对话按钮" +description = "为 ${Dialog} 添加一个对话按钮,按钮标签为 ${Text}" +comment = "使用'最后创建的对话按钮'来获得创建的对话按钮." +category = TC_DIALOG +[[.args]] +type = dialog +[[.args]] +type = StringExt + +[DialogAddButtonWithHotkeyBJ] +title = "添加对话框按钮(有快捷键) [R]" +description = "为 ${对话框} 添加一个按钮,按钮标题为: ${文字},快捷键为: ${HotKey}" +comment = "使用'最后创建的对话按钮'来获得创建的对话按钮." +category = TC_DIALOG +[[.args]] +type = dialog +[[.args]] +type = StringExt +[[.args]] +type = hotkeyint +default = "HotKeyIntNull" + +[DialogAddQuitButton] +title = "添加退出游戏按钮 [R]" +description = "为 ${对话框} 添加退出游戏按钮(${跳过} 计分屏) 按钮标题为: ${文字} 快捷键为: ${HotKey}" +comment = "该函数创建的按钮并不被纪录到'最后创建的对话框按钮'.当该按钮被点击时会退出游戏" +category = TC_DIALOG +[[.args]] +type = dialog +[[.args]] +type = useskipoption +default = "UseSkipOptionUse" +[[.args]] +type = StringExt +[[.args]] +type = hotkeyint +default = "HotKeyIntNull" + +[DialogClearBJ] +title = "清空" +description = "清空 ${Dialog}" +comment = "清除对话框的标题和按钮." +script_name = DialogClear +category = TC_DIALOG +[[.args]] +type = dialog + +[DialogDestroy] +title = "删除 [R]" +description = "删除 ${对话框}" +comment = "将对话框清除出内存.一般来说对话框并不需要删除." +category = TC_DIALOG +[[.args]] +type = dialog + +[MeleeStartingVisibility] +title = "使用对战昼夜设置" +description = "使用对战昼夜设置" +comment = "" +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeStartingHeroLimit] +title = "英雄限制" +description = "使用对战英雄设置" +comment = "每个对战英雄只能建造1个. 最大英雄数量为3." +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeGrantHeroItems] +title = "英雄初始物品" +description = "给首发英雄一个回城卷轴" +comment = "" +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeStartingResources] +title = "设置初始资源" +description = "设置初始资源" +comment = "" +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeClearExcessUnits] +title = "删除多余单位" +description = "删除已使用开始点附近的中立生物" +comment = "" +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeStartingUnits] +title = "创建初始单位" +description = "创建对战初始单位" +comment = "" +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeStartingAI] +title = "运行AI" +description = "对电脑玩家运行对战AI脚本" +comment = "动作运行之前玩家要有初始单位和资源." +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeInitVictoryDefeat] +title = "强制胜利/失败条件" +description = "强制使用对战胜利/失败条件" +comment = "动作运行之前玩家要有单位." +category = TC_MELEE +[[.args]] +type = nothing + +[MeleeStartingUnitsForPlayer] +title = "创建初始单位(指定玩家)" +description = "创建 ${Race} 的对战初始单位给 ${Player} 在 ${指定点} (${Include/Exclude} 英雄)" +comment = "" +category = TC_MELEE +[[.args]] +type = race +default = "RaceHuman" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +default = "GetPlayerStartLocationLoc" +[[.args]] +type = includeoption +default = "InclusionInclude" + +[CreateMultiboardBJ] +title = "创建" +description = "创建一个列数为 ${Columns} 行数为 ${Rows} 标题为 ${文字} 的多面板" +comment = "多面板不能在地图初始化时显示." +category = TC_MULTIBOARD +[[.args]] +type = integer +default = "1" +min = 1 +max = 16 +[[.args]] +type = integer +default = "1" +min = 1 +max = 32 +[[.args]] +type = StringExt +max = 512 + +[DestroyMultiboardBJ] +title = "删除" +description = "删除 ${Multiboard}" +comment = "" +script_name = DestroyMultiboard +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardDisplay] +title = "显示/隐藏 [R]" +description = "设置 ${Multiboard} ${Show/Hide}" +comment = "多面板不能在地图初始化时显示." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[MultiboardDisplayBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${Multiboard}" +comment = "多面板不能在地图初始化时显示." +category = TC_MULTIBOARD +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardSuppressDisplay] +title = "显示/隐藏多面板模式 [R]" +description = "${打开/关闭} 隐藏多面板模式" +comment = "隐藏多面板模式将无法显示多面板." +category = TC_MULTIBOARD +[[.args]] +type = onoffoption +default = "OnOffOn" + +[MultiboardAllowDisplayBJ] +title = "显示/隐藏多面板模式" +description = "${Show/Hide} 多面板模式" +comment = "隐藏多面板模式将无法显示多面板." +category = TC_MULTIBOARD +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[MultiboardMinimize] +title = "最大/最小化 [R]" +description = "设置 ${Multiboard} ${Minimize/Maximize}" +comment = "最小化的多面板只显示标题." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = minimizeoption +default = "Minimize" + +[MultiboardMinimizeBJ] +title = "最大/最小化" +description = "${Minimize/Maximize} ${Multiboard}" +comment = "最小化的多面板只显示标题." +category = TC_MULTIBOARD +[[.args]] +type = minimizeoption +default = "Minimize" +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardClear] +title = "清空多面板" +description = "清空 ${Multiboard}" +comment = "清空该多面板中的所有行和列." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardSetTitleText] +title = "设置标题" +description = "设置 ${Multiboard} 的标题为 ${文字}" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = StringExt +max = 512 + +[MultiboardSetTitleTextColor] +title = "设置标题颜色 [R]" +description = "设置 ${Multiboard} 的标题颜色为(${Red},${Green},${Blue}), Alpha值为 ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha值为0是不可见的. 颜色值和Alpha值取值范围为0-255." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[MultiboardSetTitleTextColorBJ] +title = "设置标题颜色" +description = "设置 ${Multiboard} 的标题颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[MultiboardSetRowCount] +title = "设置行数" +description = "设置 ${Multiboard} 的行数为 ${Rows}" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 1 +max = 32 + +[MultiboardSetColumnCount] +title = "设置列数" +description = "设置 ${Multiboard} 的列数为 ${Columns}" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 1 +max = 16 + +[MultiboardSetItemStyle] +title = "设置指定项目显示风格 [R]" +description = "设置 ${多面板项目} 的显示风格: ${Show/Hide} 文字 ${Show/Hide} 图标" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[MultiboardSetItemValue] +title = "设置指定项目文本 [R]" +description = "设置 ${多面板项目} 的项目文本为 ${文字}" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem +[[.args]] +type = StringExt + +[MultiboardSetItemValueColor] +title = "设置指定项目颜色 [R]" +description = "设置 ${多面板项目} 的项目颜色为(${Red},${Green},${Blue}), Alpha值为 ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha值为0是不可见的. 颜色值和Alpha值取值范围为0-255." +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[MultiboardSetItemWidth] +title = "设置指定项目宽度 [R]" +description = "设置 ${多面板项目} 的项目宽度为 ${Width} 倍屏幕宽度" +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem +[[.args]] +type = real +default = "0.03" +min = 0 +max = 1 + +[MultiboardSetItemIcon] +title = "设置指定项目图标 [R]" +description = "设置 ${多面板项目} 的项目图标为 ${Icon File}" +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem +[[.args]] +type = imagefile +default = "\"UI\\Feedback\\Resources\\ResourceGold.blp\"" + +[MultiboardSetItemsStyle] +title = "设置所有项目显示风格 [R]" +description = "设置 ${多面板} 的所有项目显示风格: ${Show/Hide} 文字 ${Show/Hide} 图标" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[MultiboardSetItemsValue] +title = "设置所有项目文本 [R]" +description = "设置 ${多面板} 的所有项目文本为 ${文字}" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +[[.args]] +type = StringExt + +[MultiboardSetItemsValueColor] +title = "设置所有项目颜色 [R]" +description = "设置 ${多面板} 的所有项目颜色为(${Red},${Green},${Blue}), Alpha值为 ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha值为0是不可见的. 颜色值和Alpha值取值范围为0-255." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[MultiboardSetItemsWidth] +title = "设置所有项目宽度 [R]" +description = "设置 ${多面板} 的所有项目宽度为 ${Width} 倍屏幕宽度" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = real +default = "0.03" +min = 0 +max = 1 + +[MultiboardSetItemsIcon] +title = "设置所有项目图标 [R]" +description = "设置 ${多面板} 的所有项目图标为 ${Icon File}" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = imagefile +default = "\"UI\\Feedback\\Resources\\ResourceGold.blp\"" + +[MultiboardSetItemStyleBJ] +title = "设置项目显示风格" +description = "设置 ${Multiboard} 第 ${Column} 列,第 ${Row} 行项目的显示风格: ${Show/Hide} 文字 ${Show/Hide} 图标" +comment = "可以设置行/列数为0来指代所有的行/列. " +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[MultiboardSetItemValueBJ] +title = "设置项目文本" +description = "设置 ${Multiboard} 第 ${Column} 列,第 ${Row} 行的项目文本为 ${文字}" +comment = "可以设置行/列数为0来指代所有的行/列." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = StringExt +max = 128 + +[MultiboardSetItemColorBJ] +title = "设置项目颜色" +description = "设置 ${Multiboard} 第 ${Column} 列,第 ${Row} 行的项目颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "可以设置行/列数为0来指代所有的行/列. 颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[MultiboardSetItemWidthBJ] +title = "设置项目宽度" +description = "设置 ${Multiboard} 第 ${Column} 列,第 ${Row} 行的项目宽度为屏幕的 ${Width}%" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = real +default = "3" +min = 0 +max = 100 + +[MultiboardSetItemIconBJ] +title = "设置项目图标" +description = "设置 ${Multiboard} 第 ${Column} 列,第 ${Row} 行的项目图标为 ${Icon File}" +comment = "" +category = TC_MULTIBOARD +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = imagefile +default = "\"UI\\Feedback\\Resources\\ResourceGold.blp\"" + +[MultiboardReleaseItem] +title = "删除多面板项目 [R]" +description = "删除 ${多面板项目}" +comment = "并不会影响对多面板的显示. 多面板项目指向多面板但不附属于多面板." +category = TC_MULTIBOARD +[[.args]] +type = multiboarditem + +[AddWeatherEffectSaveLast] +title = "添加天气效果" +description = "给 ${Rect} 添加天气效果: ${Weather Id}" +comment = "用'最后添加的天气效果'来获得所添加的天气效果." +category = TC_ENVIRONMENT +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = weathereffectcode +default = "WeatherAshenvaleHeavyRain" + +[EnableWeatherEffect] +title = "启用/禁用 天气效果" +description = "设置 ${Weather Effect} 的状态为: ${On/Off}" +comment = "可以使用'环境 - 创建天气效果'动作来创建天气效果." +category = TC_ENVIRONMENT +[[.args]] +type = weathereffect +default = "GetLastCreatedWeatherEffect" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[RemoveWeatherEffectBJ] +title = "删除天气效果" +description = "删除 ${天气效果}" +comment = "" +script_name = RemoveWeatherEffect +category = TC_ENVIRONMENT +[[.args]] +type = weathereffect +default = "GetLastCreatedWeatherEffect" + +[TerrainDeformationCraterBJ] +title = "创建地形变化:弹坑" +description = "创建一个持续 ${Duration} 秒的 ${Type} 弹坑变形在 ${指定点} ,半径: ${Radius}深度: ${Depth}" +comment = "使用'最后创建的地形变化'来获取该变化. 深度可取负数. 永久地形变化在保存游戏时不会被记录." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "0.5" +min = 0.01 +[[.args]] +type = cratertype +default = "CraterTypeTemporary" +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 1 +[[.args]] +type = real +default = "64" + +[TerrainDeformationRippleBJ] +title = "创建地形变化:波纹" +description = "创建一个持续 ${Duration} 秒的 ${Type} 波纹变形在 ${指定点} ,开始半径: ${Radius} ,结束半径: ${Radius} ,深度: ${Depth} 周期: ${Time} 秒,波间距: ${Distance}" +comment = "使用'最后创建的地形变化'来获取该变化." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "4" +min = 0.01 +[[.args]] +type = rippletype +default = "RippleTypeNormal" +[[.args]] +type = location +[[.args]] +type = real +default = "1024" +min = 0 +[[.args]] +type = real +default = "1024" +min = 1 +[[.args]] +type = real +default = "64" +[[.args]] +type = real +default = "1" +min = 0.01 +[[.args]] +type = real +default = "512" +min = 1 + +[TerrainDeformationWaveBJ] +title = "创建地形变化:冲击波" +description = "创建一个持续 ${Duration} 秒的冲击波变形从 ${Source} 到 ${Target} ,半径: ${Radius} ,深度: ${Depth} ,效果存在时间: ${Delay} 秒" +comment = "使用'最后创建的地形变化'来获取该变化. 深度可取负数." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "0.5" +min = 0.01 +[[.args]] +type = location +[[.args]] +type = location +[[.args]] +type = real +default = "256" +min = 0 +[[.args]] +type = real +default = "96" +[[.args]] +type = real +default = "0" +min = 0 + +[TerrainDeformationRandomBJ] +title = "创建地形变化:随机" +description = "创建一个持续 ${Duration} 秒的随机变形变形在 ${指定点} ,半径: ${Radius} 最小深度: ${Minimum} 最大深度: ${Maximum}, 变形间隔: ${Update Interval} 秒" +comment = "使用'最后创建的地形变化'来获取该变化." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "4" +min = 0.01 +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = real +default = "-32" +[[.args]] +type = real +default = "32" +[[.args]] +type = real +default = "0.1" +min = 0.01 + +[TerrainDeformStop] +title = "停止地形变化 [R]" +description = "停止 ${Terrain Deformation} ,衰退时间: ${Duration} 毫秒" +comment = "地形变化会平滑地过渡到无." +category = TC_ENVIRONMENT +[[.args]] +type = terraindeformation +default = "bj_lastCreatedTerrainDeformation" +[[.args]] +type = integer +default = "0" +min = 0 + +[TerrainDeformationStopBJ] +title = "停止地形变化" +description = "停止 ${Terrain Deformation} ,衰退时间: ${Duration} 秒" +comment = "地形变化会平滑地过渡到无." +category = TC_ENVIRONMENT +[[.args]] +type = terraindeformation +default = "GetLastCreatedTerrainDeformation" +[[.args]] +type = real +default = "0" +min = 0 + +[TerrainDeformStopAll] +title = "停止所有地形变化" +description = "停止所有地形变化" +comment = "包括由技能引起的地形变化." +category = TC_ENVIRONMENT +[[.args]] +type = nothing + +[SetWaterDeforms] +title = "开启/关闭 水面变形" +description = "${On/Off} 水面变形" +comment = "开启时当发生地形变化时水面高度也会随着变化. 对永久变形无效." +category = TC_ENVIRONMENT +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetTerrainType] +title = "改变地形类型(指定坐标) [R]" +description = "改变(${X},${Y})处的地形为 ${Terrain Type} ,使用样式: ${Variation} 范围: ${Area} 形状: ${Shape}" +comment = "地形样式-1表示随机样式. 范围即地形编辑器中的刷子大小.1表示128x128范围" +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = terraintype +default = "TerrainTypeLdrt" +[[.args]] +type = integer +default = "-1" +[[.args]] +type = integer +default = "1" +[[.args]] +type = terrainshape +default = "TerrainShapeCircle" + +[SetTerrainTypeBJ] +title = "改变地形类型(指定点)" +description = "改变 ${指定点} 处的地形为 ${Terrain Type} ,使用样式: ${Variation} 范围: ${Area} 形状: ${Shape}" +comment = "地形样式-1表示随机样式. 范围即地形编辑器中的刷子大小.1表示128x128范围" +category = TC_ENVIRONMENT +[[.args]] +type = location +[[.args]] +type = terraintype +default = "TerrainTypeLdrt" +[[.args]] +type = integer +default = "-1" +[[.args]] +type = integer +default = "1" +[[.args]] +type = terrainshape +default = "TerrainShapeCircle" + +[SetTerrainPathable] +title = "设置地形通行状态(指定坐标) [R]" +description = "设置(${X},${Y})处单元点的 ${Pathing} 地形通行状态为: ${On/Off}" +comment = "例:设置'建造'通行状态为开,则该点可以建造建筑. 一个单元点范围为32x32." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = pathingtype +default = "PathingTypeWalkability" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetTerrainPathableBJ] +title = "设置地形通行状态(指定点)" +description = "设置 ${指定点} 处单元点的 ${Pathing} 地形通行状态为: ${On/Off}" +comment = "例:设置'建造'通行状态为开,则该点可以建造建筑. 一个单元点范围为32x32." +category = TC_ENVIRONMENT +[[.args]] +type = location +[[.args]] +type = pathingtype +default = "PathingTypeWalkability" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetWaterBaseColor] +title = "设置水颜色 [R]" +description = "设置水颜色为:(${Red},${Green},${Blue}), 透明值为: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). 透明值0为不可见. 颜色值和透明道值取值范围为0-255." +category = TC_ENVIRONMENT +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[SetWaterBaseColorBJ] +title = "设置水颜色" +description = "设置水颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 100%透明的水是不可见的." +category = TC_ENVIRONMENT +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[SetSkyModel] +title = "设置天空" +description = "设置天空模型为 ${Sky}" +comment = "" +category = TC_ENVIRONMENT +[[.args]] +type = skymodelstring +default = "SkyModelNone" + +[SetTerrainFogEx] +title = "设置迷雾 [R]" +description = "迷雾风格: ${Style}, Z轴开始端: ${Z-Start}, Z轴结束端: ${Z-End}, 密度: ${Density} 颜色:(${Red},${Green},${Blue})" +comment = "颜色格式为(红,绿,蓝). 取值范围0.00-1.00." +category = TC_ENVIRONMENT +[[.args]] +type = fogstyle +default = "FogStyleLinear" +[[.args]] +type = real +default = "1000" +min = 0 +[[.args]] +type = real +default = "8000" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "1" +min = 0 +max = 1 +[[.args]] +type = real +default = "1" +min = 0 +max = 1 +[[.args]] +type = real +default = "1" +min = 0 +max = 1 + +[SetTerrainFogExBJ] +title = "设置迷雾" +description = "迷雾风格: ${Style}, Z轴开始端: ${Z-Start}, Z轴结束端: ${Z-End}, 密度: ${Density} 颜色:(${Red}%, ${Green}%, ${Blue}%)" +comment = "颜色格式为(红,绿,蓝)." +category = TC_ENVIRONMENT +[[.args]] +type = fogstyle +default = "FogStyleLinear" +[[.args]] +type = real +default = "1000" +min = 0 +[[.args]] +type = real +default = "8000" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[ResetTerrainFogBJ] +title = "重置迷雾" +description = "重置迷雾为默认设置" +comment = "" +script_name = ResetTerrainFog +category = TC_ENVIRONMENT +[[.args]] +type = nothing + +[SetBlightRect] +title = "创建/删除荒芜地表(矩形区域) [R]" +description = "为 ${Player} 在 ${Region} ${Create/Remove} 一块荒芜地表" +comment = "" +category = TC_ENVIRONMENT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = rect +default = "bj_mapInitialPlayableArea" +[[.args]] +type = createremoveoption +default = "CreateRemoveCreate" + +[SetBlightRectBJ] +title = "创建/删除荒芜地表(矩形区域)" +description = "${Create/Remove} 一块荒芜地表给 ${Player} 在 ${Region}" +comment = "" +category = TC_ENVIRONMENT +[[.args]] +type = createremoveoption +default = "CreateRemoveCreate" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[SetBlight] +title = "创建/删除荒芜地表(圆范围)(指定坐标) [R]" +description = "为 ${Player} 在圆心为(${X},${Y}),半径为 ${R} 的圆范围内 ${Create/Remove} 一块荒芜地表" +comment = "" +category = TC_ENVIRONMENT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = createremoveoption +default = "CreateRemoveCreate" + +[SetBlightRadiusLocBJ] +title = "创建/删除荒芜地表(圆范围)(指定点)" +description = "${Create/Remove} 一块荒芜地表给 ${Player} 在圆心为 ${指定点} 半径为 ${Radius} 的圆范围" +comment = "" +category = TC_ENVIRONMENT +[[.args]] +type = createremoveoption +default = "CreateRemoveCreate" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 0 + +[StartTimerBJ] +title = "运行计时器" +description = "运行 ${计时器},模式: ${模式},周期: ${时间} 秒" +comment = "" +category = TC_TIMER +[[.args]] +type = timer +[[.args]] +type = periodicoption +default = "PeriodicOptionOneTime" +[[.args]] +type = real +default = "30" +min = 0 + +[PauseTimer] +title = "暂停计时器 [R]" +description = "暂停 ${计时器}" +comment = "" +category = TC_TIMER +[[.args]] +type = timer +default = "bj_lastStartedTimer" + +[TimerStart] +title = "运行计时器 [C]" +description = "运行 ${计时器},周期: ${时间} 秒,模式: ${模式},运行函数: ${函数}" +comment = "等同于TimerStart" +category = TC_TIMER +[[.args]] +type = timer +[[.args]] +type = real +default = "0.03" +[[.args]] +type = periodicoption +default = "PeriodicOptionOneTime" +min = 0 +[[.args]] +type = scriptcode + +[ResumeTimer] +title = "恢复计时器 [R]" +description = "恢复 ${计时器}" +comment = "" +category = TC_TIMER +[[.args]] +type = timer +default = "bj_lastStartedTimer" + +[PauseTimerBJ] +title = "暂停/恢复 计时器" +description = "${Pause/Resume} ${Timer}" +comment = "" +category = TC_TIMER +[[.args]] +type = pauseresumeoption +default = "PauseResumePause" +[[.args]] +type = timer +default = "GetLastCreatedTimerBJ" + +[DestroyTimer] +title = "删除计时器 [R]" +description = "删除 ${计时器}" +comment = "一般来说,计时器并不需要删除.只为某些有特别需求的用户提供." +category = TC_TIMER +[[.args]] +type = timer +default = "bj_lastStartedTimer" + +[YDWETimerDestroyTimer] +title = "计时器系统-删除计时器[YDWE]" +description = "在 ${时间} 秒后删除 ${计时器}" +comment = "启动中心计时器,在指定时间之后删除计时器。" +category = TC_TIMER +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = timer +default = "GetLastCreatedTimerBJ" + +[CreateTimerDialogBJ] +title = "创建计时器窗口" +description = "为 ${计时器} 创建计时器窗口,标题: ${文字}" +comment = "计时器窗口不能在地图初始化时显示." +category = TC_TIMER +[[.args]] +type = timer +default = "GetLastCreatedTimerBJ" +[[.args]] +type = StringExt + +[DestroyTimerDialogBJ] +title = "删除计时器窗口" +description = "删除 ${计时器窗口}" +comment = "" +script_name = DestroyTimerDialog +category = TC_TIMER +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" + +[TimerDialogDisplay] +title = "显示/隐藏 计时器窗口(所有玩家) [R]" +description = "设置 ${计时器窗口} 的状态为${Show/Hide}" +comment = "计时器窗口不能在地图初始化时显示." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "bj_lastCreatedTimerDialog" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[TimerDialogDisplayBJ] +title = "显示/隐藏 计时器窗口(所有玩家)" +description = "${Show/Hide} ${计时器窗口}" +comment = "计时器窗口不能在地图初始化时显示." +category = TC_TIMER +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" + +[TimerDialogDisplayForPlayerBJ] +title = "显示/隐藏 计时器窗口(指定玩家)" +description = "${Show/Hide} ${计时器窗口} 应用于 ${Player}" +comment = "计时器窗口不能在地图初始化时显示." +category = TC_TIMER +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" +[[.args]] +type = player +default = "Player00" + +[TimerDialogSetTitleBJ] +title = "改变计时器窗口标题" +description = "改变 ${Timer Window} 的标题为 ${Title}" +comment = "" +script_name = TimerDialogSetTitle +category = TC_TIMER +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" +[[.args]] +type = StringExt + +[TimerDialogSetTitleColor] +title = "改变计时器窗口文字颜色 [R]" +description = "改变 ${Timer Window} 文字颜色为(${Red},${Green},${Blue}) 透明值为: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和透明值值取值范围为0-255." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "bj_lastCreatedTimerDialog" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[TimerDialogSetTitleColorBJ] +title = "改变计时器窗口标题颜色" +description = "改变 ${Timer Window} 的标题颜色为 (${红}%, ${绿}%, ${蓝}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[TimerDialogSetTimeColor] +title = "改变计时器窗口计时颜色 [R]" +description = "改变 ${Timer Window} 的计间颜色为(${Red},${Green},${Blue}) 透明值为: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和透明值值取值范围为0-255." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "bj_lastCreatedTimerDialog" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[TimerDialogSetTimeColorBJ] +title = "改变计时器窗口计时颜色" +description = "改变 ${Timer Window} 的计时颜色为 (${红}%, ${绿}%, ${蓝}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "GetLastCreatedTimerDialogBJ" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[TimerDialogSetSpeed] +title = "设置计时器窗口速率 [R]" +description = "设置 ${Timer Window} 的时间流逝速度为 ${Factor} 倍" +comment = " 同时计时器显示时间也会随之变化. 就是说60秒的计时器设置为2倍速则显示时间也会变为120秒." +category = TC_TIMER +[[.args]] +type = timerdialog +default = "bj_lastCreatedTimerDialog" +[[.args]] +type = real +default = "1" + +[CameraSetupApplyForceDuration] +title = "应用镜头(所有玩家)(限时) [R]" +description = "将 ${镜头} 应用方式设置为 ${Apply Method},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = camerasetup +[[.args]] +type = cameraapplyoption +default = "CameraApply" +[[.args]] +type = real +default = "0" +min = 0 + +[CameraSetupApplyForPlayer] +title = "应用镜头(指定玩家)(限时)" +description = "${应用方式} ${镜头} 作用于 ${Player},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = cameraapplyoption +default = "CameraApply" +[[.args]] +type = camerasetup +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +min = 0 + +[PanCameraToTimed] +title = "平移镜头(所有玩家)(限时) [R]" +description = "平移玩家镜头到(${X},${Y}),持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +min = 0 + +[PanCameraToTimedLocForPlayer] +title = "平移镜头(指定玩家)(限时)" +description = "平移 ${Player} 的镜头到 ${点},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = real +default = "0" +min = 0 + +[PanCameraToTimedWithZ] +title = "指定高度平移镜头(所有玩家)(限时) [R]" +description = "平移玩家镜头到(${X},${Y}),镜头距离地面高度为 ${Z},持续 ${Time} 秒" +comment = "在指定移动路径上镜头不会低于地面高度." +category = TC_CAMERA +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +min = 0 + +[PanCameraToTimedLocWithZForPlayer] +title = "指定高度平移镜头(指定玩家)(限时)" +description = "平移 ${Player} 的镜头到 ${Point} 距离地面高度为 ${Z},持续 ${Time} 秒" +comment = "在指定移动路径上镜头不会低于地面高度." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +min = 0 + +[SmartCameraPanBJ] +title = "在必要时平移镜头(指定玩家)(限时)" +description = "在必要时平移 ${Player} 的镜头到 ${指定点} ,持续 ${Time} 秒" +comment = "如果距离过远则直接跳转镜头,如果过近则不做动作." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = real +default = "0.5" +min = 0 + +[SetCameraField] +title = "设置镜头属性(所有玩家)(限时) [R]" +description = "设置玩家的镜头属性 ${Field} 为 ${数值},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = camerafield +default = "CameraFieldTargetDistance" +[[.args]] +type = real +default = "CameraSetupGetField" +[[.args]] +type = real +default = "0" +min = 0 + +[SetCameraFieldForPlayer] +title = "设置镜头属性(指定玩家)(限时)" +description = "设置 ${Player} 的镜头属性 ${Field} 为 ${Value},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = camerafield +default = "CameraFieldTargetDistance" +[[.args]] +type = real +default = "CameraSetupGetFieldSwap" +[[.args]] +type = real +default = "0" +min = 0 + +[SetCameraRotateMode] +title = "指定点旋转镜头(所有玩家)(弧度)(限时) [R]" +description = "以(${X},${Y})为中心,旋转弧度为${Rad}, 持续: ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = radian +default = "RealPi" +[[.args]] +type = real +default = "2" +min = 0 + +[RotateCameraAroundLocBJ] +title = "指定点旋转镜头(指定玩家)(角度)(限时)" +description = "旋转角度为${Angle} 度,以 ${点} 为中心,应用于 ${Player},持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = degree +default = "90" +[[.args]] +type = location +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "2" +min = 0 + +[SetCameraTargetController] +title = "锁定镜头到单位(所有玩家) [R]" +description = "锁定玩家镜头到 ${单位}, 偏移坐标(${X}, ${Y}) ,使用 ${Rotation Source}" +comment = "偏移坐标(X,Y)以单位脚底为原点坐标." +category = TC_CAMERA +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = cameraorientationoption +default = "CameraOrientationNormal" + +[SetCameraTargetControllerNoZForPlayer] +title = "锁定镜头到单位(指定玩家)" +description = "锁定 ${Player} 的镜头到 ${单位}, 偏移坐标(${X}, ${Y}) ,使用 ${Rotation Source}" +comment = "偏移坐标(X,Y)以单位脚底为原点坐标." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = cameraorientationoption +default = "CameraOrientationNormal" + +[SetCameraOrientController] +title = "锁定镜头到单位(固定镜头源)(所有玩家) [R]" +description = "锁定玩家镜头到 ${单位}, 偏移坐标(${X}, ${Y})" +comment = "偏移坐标(X,Y)以单位脚底为原点坐标." +category = TC_CAMERA +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetCameraOrientControllerForPlayerBJ] +title = "锁定镜头到单位(固定镜头源)(指定玩家)" +description = "锁定 ${Player} 的镜头到 ${单位}, 偏移坐标(${X}, ${Y})" +comment = "偏移坐标(X,Y)以单位脚底为原点坐标." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetCinematicCamera] +title = "播放电影镜头(所有玩家) [R]" +description = "对所有玩家播放电影镜头: ${Camera File}" +comment = "在'Objects\\CinematicCameras'目录下有一些电影镜头,可用Mpq工具来查询." +category = TC_CAMERA +[[.args]] +type = modelfile +default = "\"cinematic.mdl\"" + +[SetCinematicCameraForPlayer] +title = "播放电影镜头(指定玩家)" +description = "对 ${Player} 播放电影镜头: ${Camera File}" +comment = "在'Objects\\CinematicCameras'目录下有一些电影镜头,可用Mpq工具来查询." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = modelfile +default = "\"cinematic.mdl\"" + +[StopCamera] +title = "停止播放镜头(所有玩家) [R]" +description = "让所有玩家停止播放镜头" +comment = "比如在平移镜头的过程中可用该动作来中断平移." +category = TC_CAMERA + +[StopCameraForPlayerBJ] +title = "停止播放镜头(指定玩家)" +description = "让 ${Player} 停止播放镜头" +comment = "比如在平移镜头的过程中可用该动作来中断平移." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" + +[ResetToGameCamera] +title = "重置游戏镜头(所有玩家) [R]" +description = "重置玩家镜头为游戏默认状态,持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = real +default = "0" +min = 0 + +[ResetToGameCameraForPlayer] +title = "重置游戏镜头(指定玩家)" +description = "重置 ${Player} 的镜头为游戏默认状态,持续 ${Time} 秒" +comment = "" +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +min = 0 + +[CameraSetSmoothingFactorBJ] +title = "设置镜头平滑参数" +description = "设置镜头平滑参数为 ${Factor}" +comment = "数值越大,镜头转换越平滑." +script_name = CameraSetSmoothingFactor +category = TC_CAMERA +[[.args]] +type = real +default = "1" +min = 0 + +[CameraResetSmoothingFactorBJ] +title = "重置镜头平滑参数" +description = "重置镜头平滑参数为游戏默认值" +comment = "其实就是设置镜头平滑参数为0." +category = TC_CAMERA +[[.args]] +type = nothing + +[CameraSetSourceNoiseEx] +title = "摇晃镜头源(所有玩家) [R]" +description = "摇晃玩家的镜头源, 摇晃幅度: ${Magnitude} 速率: ${Velocity} 摇晃方式: ${方式}" +comment = "使用'镜头 - 重置镜头'或设置摇晃幅度和速率为0来停止摇晃." +category = TC_CAMERA +[[.args]] +type = real +default = "10" +[[.args]] +type = real +default = "0.1" +[[.args]] +type = vertonlyoption +default = "VertOnlyOff" + +[CameraSetSourceNoiseForPlayer] +title = "摇晃镜头源(指定玩家)" +description = "摇晃 ${Player} 的镜头源, 摇晃幅度: ${Magnitude} 速率: ${Velocity}" +comment = "使用'镜头 - 重置镜头'或'镜头 - 停止摇晃镜头'来停止摇晃." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "10" +[[.args]] +type = real +default = "0.1" + +[CameraSetTargetNoiseEx] +title = "摇晃镜头目标(所有玩家) [R]" +description = "摇晃玩家的镜头源, 摇晃幅度: ${Magnitude} 速率: ${Velocity} 摇晃方式: ${方式}" +comment = "使用'镜头 - 重置镜头'或设置摇晃幅度和速率为0来停止摇晃." +category = TC_CAMERA +[[.args]] +type = real +default = "10" +[[.args]] +type = real +default = "0.1" +[[.args]] +type = vertonlyoption +default = "VertOnlyOff" + +[CameraSetTargetNoiseForPlayer] +title = "摇晃镜头目标(指定玩家)" +description = "摇晃 ${Player} 的镜头目标, 摇晃幅度: ${Magnitude} 速率: ${Velocity}" +comment = "使用'镜头 - 重置镜头'或'镜头 - 停止摇晃镜头'来停止摇晃." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "10" +[[.args]] +type = real +default = "0.1" + +[CameraSetEQNoiseForPlayer] +title = "震动镜头(指定玩家)" +description = "震动 ${Player} 的镜头, 震动幅度: ${Magnitude}" +comment = "使用'镜头 - 重置镜头'或'镜头 - 停止震动镜头'来停止震动." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "3" +min = 0 + +[CameraClearNoiseForPlayer] +title = "停止摇晃/震动镜头(指定玩家)" +description = "停止 ${Player} 镜头的摇晃和震动" +comment = "可以用本地玩家实现对所有玩家停止摇晃/震动镜头." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" + +[SetCameraBounds] +title = "设置可用镜头区域(所有玩家) [R]" +description = "设置玩家可用镜头区域: 左下角(${X},${Y}), 左上角(${X},${Y}), 右上角(${X},${Y}), 右下角(${X},${Y})" +comment = "该动作同样会影响小地图的显示. 但小地图的图片是无法改变的. 实际可用区域要大于可用镜头区域." +category = TC_CAMERA +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = real + +[AdjustCameraBoundsForPlayerBJ] +title = "扩张/收缩 可用镜头区域(指定玩家)" +description = "${Extend/Shrink} ${Player} 的可用镜头区域, 西: ${West} ,东 ${East} ,北: ${North} ,南: ${South}" +comment = "该动作同样会影响小地图的显示. 但小地图的图片是无法改变的. 实际可用区域要大于可用镜头区域." +category = TC_CAMERA +[[.args]] +type = cameraboundsadjusttype +default = "CameraBoundsAdjustAdd" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetCameraBoundsToRectForPlayerBJ] +title = "设置可用镜头区域(指定玩家)" +description = "设置 ${Player} 的可用镜头区域为 ${地区}" +comment = "该动作同样会影响小地图的显示. 但小地图的图片是无法改变的. 实际可用区域要大于可用镜头区域." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = rect + +[SetCameraQuickPosition] +title = "设置空格键转向点(所有玩家) [R]" +description = "设置玩家的空格键转向点为(${X},${Y})" +comment = "按下空格键时镜头转向的位置." +category = TC_CAMERA +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetCameraQuickPositionLocForPlayer] +title = "设置空格键转向点(指定玩家)" +description = "设置 ${Player} 的空格键转向点为 ${指定点}" +comment = "按下空格键时镜头转向的位置." +category = TC_CAMERA +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location + +[FogEnable] +title = "启用/禁用 战争迷雾 [R]" +description = "${启用/禁用} 战争迷雾" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = enableddisabledoption +default = "EnabledDisabledDisabled" + +[FogEnableOn] +title = "启用战争迷雾" +description = "启用战争迷雾" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = nothing + +[FogEnableOff] +title = "禁用战争迷雾" +description = "禁用战争迷雾" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = nothing + +[FogMaskEnable] +title = "启用/禁用黑色阴影 [R]" +description = "${启用/禁用} 黑色阴影" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = enableddisabledoption +default = "EnabledDisabledDisabled" + +[FogMaskEnableOn] +title = "启用黑色阴影" +description = "启用黑色阴影" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = nothing + +[FogMaskEnableOff] +title = "禁用黑色阴影" +description = "禁用黑色阴影" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = nothing + +[CreateFogModifierRectBJ] +title = "创建可见度修正器(矩形区域)" +description = "创建一个状态为 ${Enabled/Disabled} 的可见度修正器给 ${Player} ,设置 ${Visibility State} 在 ${Region}" +comment = "会创建可见度修正器." +category = TC_VISIBILITY +[[.args]] +type = enableddisabledoption +default = "EnabledDisabledEnabled" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[CreateFogModifierRadiusLocBJ] +title = "创建可见度修正器(圆范围)" +description = "创建一个状态为 ${Enabled/Disabled} 的可见度修正器给 ${Player} ,设置 ${Visibility State} 在圆心为 ${指定点} 半径为 ${Radius} 的圆范围" +comment = "会创建可见度修正器." +category = TC_VISIBILITY +[[.args]] +type = enableddisabledoption +default = "EnabledDisabledEnabled" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = location +[[.args]] +type = real +default = "512" +min = 0 + +[FogModifierStart] +title = "启用可见度修正器" +description = "启用 ${Visibility Modifier}" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = fogmodifier +default = "GetLastCreatedFogModifier" + +[FogModifierStop] +title = "禁用可见度修正器" +description = "禁用 ${Visibility Modifier}" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = fogmodifier +default = "GetLastCreatedFogModifier" + +[DestroyFogModifier] +title = "删除可见度修正器" +description = "删除 ${Visibility Modifier}" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = fogmodifier +default = "GetLastCreatedFogModifier" + +[SetFogStateRect] +title = "设置地图迷雾(矩形区域) [R]" +description = "为 ${玩家} 设置 ${FogStateVisible} 在 ${矩形区域} (对盟友 ${共享} 视野)" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = rect +[[.args]] +type = sharevisionoption +default = "ShareVisionShare" + +[SetFogStateRadius] +title = "设置地图迷雾(圆范围) [R]" +description = "为 ${玩家} 设置 ${FogStateVisible} 在圆心为(${X},${Y}) 半径为 ${数值} 的范围, (对盟友 ${共享} 视野)" +comment = "" +category = TC_VISIBILITY +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +[[.args]] +type = sharevisionoption +default = "ShareVisionShare" + +[CreateDestructableLoc] +title = "创建可破坏物" +description = "创建 ${可破坏物类型} 在 ${指定点} ,面向角度: ${Direction} 尺寸缩放: ${Scale} 样式: ${Variation}" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向. 使用'最后创建的可破坏物'来获取创建的物体." +category = TC_DESTRUCT +[[.args]] +type = destructablecode +default = "LTlt" +[[.args]] +type = location +[[.args]] +type = degree +default = "GetRandomDirectionDeg" +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 + +[CreateDeadDestructableLocBJ] +title = "创建可破坏物(死亡)" +description = "创建死亡的 ${可破坏物类型} 在 ${指定点} ,面向角度: ${Direction} 尺寸缩放: ${Scale} 样式: ${Variation}" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向. 使用'最后创建的可破坏物'来获取创建的物体." +category = TC_DESTRUCT +[[.args]] +type = destructablecode +default = "LTlt" +[[.args]] +type = location +[[.args]] +type = degree +default = "GetRandomDirectionDeg" +[[.args]] +type = real +default = "1" +min = 0 +[[.args]] +type = integer +default = "0" +min = 0 + +[KillDestructable] +title = "杀死" +description = "杀死 ${可破坏物}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[RemoveDestructable] +title = "删除" +description = "删除 ${可破坏物}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[DestructableRestoreLife] +title = "复活" +description = "复活 ${Destructible} ,设置生命值为 ${Value} 并 ${Show/Hide} 生长动画" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" +[[.args]] +type = real +default = "GetDestructableMaxLife" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[ShowDestructable] +title = "显示/隐藏 [R]" +description = "设置 ${可破坏物} 的状态为 ${Show/Hide}" +comment = "隐藏的可破坏物不被显示,但仍影响通行和视线." +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "bj_lastCreatedDestructable" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[ShowDestructableBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${可破坏物}" +comment = "隐藏的可破坏物不被显示,但仍影响通行和视线." +category = TC_DESTRUCT +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[SetDestructableLifePercentBJ] +title = "设置生命值(百分比)" +description = "设置 ${可破坏物} 的生命值为 ${Percent}%" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetDestructableLife] +title = "设置生命值(指定值)" +description = "设置 ${可破坏物} 的生命值为 ${Value}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" +[[.args]] +type = real +default = "GetDestructableMaxLife" +min = 0 + +[SetDestructableMaxLifeBJ] +title = "设置最大生命值" +description = "设置 ${可破坏物} 的最大生命值为 ${Value}" +comment = "" +script_name = SetDestructableMaxLife +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" +[[.args]] +type = real +default = "100" +min = 0 + +[ModifyGateBJ] +title = "打开/关闭/破坏大门" +description = "${Open/Close/Destroy} ${大门}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = gateoperation +default = "GateOperationOpen" +[[.args]] +type = destructable + +[ChangeElevatorWalls] +title = "打开/关闭升降机墙壁" +description = "${Open/Close} ${Walls} 对 ${升降机}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = elevatorwallop +default = "ElevatorWallOpClose" +[[.args]] +type = elevatorwalltype +default = "ElevatorWallTypeAll" +[[.args]] +type = destructable + +[ChangeElevatorHeight] +title = "设置升降机高度" +description = "设置 ${升降机} 的高度为 ${Height}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +[[.args]] +type = integer +default = "1" +min = 1 +max = 3 + +[SetDestructableInvulnerableBJ] +title = "设置无敌/可攻击" +description = "设置 ${可破坏物} ${Invulnerable/Vulnerable}" +comment = "" +script_name = SetDestructableInvulnerable +category = TC_DESTRUCT +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" +[[.args]] +type = invulnerableoption +default = "InvulnerabilityInvulnerable" + +[SetDestructableOccluderHeight] +title = "设置闭塞高度" +description = "设置 ${可破坏物} 的闭塞高度为 ${Height}" +comment = "" +category = TC_DESTRUCT +[[.args]] +type = destructable +[[.args]] +type = real +default = "128" + +[EnumDestructablesInRectAllMultiple] +title = "选取矩形区域内可破坏物做动作(多个动作)" +description = "选取 ${矩形区域} 内所有可破坏物做动作" +comment = "组动作中可使用'选取的可破坏物'来获取对应的可破坏物. 每个可破坏物都会运行一次动作(包括死亡和隐藏的). 等待不能在组动作中运行." +script_name = EnumDestructablesInRectAll +category = TC_DESTRUCT +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[EnumDestructablesInCircleBJMultiple] +title = "选取指定点范围内可破坏物做动作(多个动作)" +description = "选取 ${Radius} 范围以 ${指定点} 为中心的区域内所有可破坏物做动作(多个动作)" +comment = "组动作中可使用'选取的可破坏物'来获取对应的可破坏物. 每个可破坏物都会运行一次动作(包括死亡和隐藏的). 等待不能在组动作中运行." +script_name = EnumDestructablesInCircleBJ +category = TC_DESTRUCT +[[.args]] +type = real +default = "256" +[[.args]] +type = location + +[EnumDestructablesInRectAll] +title = "选取矩形区域内可破坏物做动作" +description = "选取 ${矩形区域} 内所有可破坏物 ${做动作}" +comment = "组动作中可使用'选取的可破坏物'来获取对应的可破坏物. 每个可破坏物都会运行一次动作(包括死亡和隐藏的). 等待不能在组动作中运行." +category = TC_DESTRUCT +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = code +default = "DoNothing" + +[EnumDestructablesInCircleBJ] +title = "选取指定点范围内可破坏物做动作" +description = "选取 ${Radius} 范围以 ${指定点}为中心的区域内所有可破坏物 ${做动作}" +comment = "组动作中可使用'选取的可破坏物'来获取对应的可破坏物. 每个可破坏物都会运行一次动作(包括死亡和隐藏的). 等待不能在组动作中运行." +category = TC_DESTRUCT +[[.args]] +type = real +default = "256" +[[.args]] +type = location +[[.args]] +type = code +default = "DoNothing" + +[CreateLeaderboardBJ] +title = "创建" +description = "对 ${玩家组} 创建排行榜,使用标题: ${文字}" +comment = "排行榜不能在地图初始化时显示. 标题为空则不显示标题栏." +category = TC_LEADERBOARD +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = StringExt + +[DestroyLeaderboardBJ] +title = "删除" +description = "删除 ${排行榜}" +comment = "" +script_name = DestroyLeaderboard +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[LeaderboardClear] +title = "清空 [R]" +description = "清空 ${排行榜}" +comment = "清空排行榜中所有内容." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "bj_lastCreatedLeaderboard" + +[LeaderboardSortItemsBJ] +title = "排序" +description = "将 ${排行榜} 按 ${Field} 使用 ${Ascending/Descending} 排列" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = leaderboardsortoption +default = "LeaderboardSortByValue" +[[.args]] +type = ascendingoption +default = "AscendingOptionDescending" + +[LeaderboardDisplay] +title = "显示/隐藏 [R]" +description = "设置 ${排行榜} ${Show/Hide}" +comment = "排行榜不能在地图初始化时显示." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "bj_lastCreatedLeaderboard" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[LeaderboardDisplayBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${排行榜}" +comment = "排行榜不能在地图初始化时显示." +category = TC_LEADERBOARD +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[PlayerSetLeaderboard] +title = "设置玩家使用的排行榜 [R]" +description = "设置 ${Player} 使用 ${排行榜}" +comment = "每个玩家只能显示一个排行榜." +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "bj_lastCreatedLeaderboard" + +[LeaderboardSetLabelBJ] +title = "设置标题" +description = "设置 ${Leaderboard} 的标题为 ${文字}" +comment = "" +script_name = LeaderboardSetLabel +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = StringExt + +[LeaderboardSetLabelColor] +title = "设置文字颜色 [R]" +description = "设置 ${Leaderboard} 的文字颜色为(${Red},${Green},${Blue}) Alpha通道值为: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和Alpha通道值取值范围为0-255." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "bj_lastCreatedLeaderboard" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[LeaderboardSetLabelColorBJ] +title = "设置文字颜色" +description = "设置 ${Leaderboard} 的文字颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[LeaderboardSetValueColor] +title = "设置数值颜色 [R]" +description = "设置 ${Leaderboard} 的数值颜色为(${Red},${Green},${Blue}) Alpha通道值为: ${Transparency}" +comment = "颜色格式为(红,绿,蓝). Alpha通道值0为不可见. 颜色值和Alpha通道值取值范围为0-255." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "bj_lastCreatedLeaderboard" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "204" +min = 0 +max = 255 +[[.args]] +type = integer +default = "51" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[LeaderboardSetValueColorBJ] +title = "设置数值颜色" +description = "设置 ${Leaderboard} 的数值颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[LeaderboardSetStyleBJ] +title = "设置显示样式" +description = "设置 ${Leaderboard} 的显示样式: ${Show/Hide} 标题, ${Show/Hide} 文字, ${Show/Hide} 分数, ${Show/Hide} 图标" +comment = "" +script_name = LeaderboardSetStyle +category = TC_LEADERBOARD +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[LeaderboardAddItemBJ] +title = "添加玩家" +description = "添加 ${Player} 到 ${Leaderboard} ,使用名字: ${文字} 设置分数: ${Value}" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = StringExt +[[.args]] +type = integer +default = "0" + +[LeaderboardRemovePlayerItemBJ] +title = "移除玩家" +description = "把 ${Player} 从 ${Leaderboard} 移除" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[LeaderboardSetPlayerItemLabelBJ] +title = "改变玩家名字" +description = "设置 ${Player} 在 ${Leaderboard} 中的名字为 ${文字}" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = StringExt + +[LeaderboardSetPlayerItemLabelColorBJ] +title = "设置玩家名字颜色" +description = "设置 ${Player} 在 ${Leaderboard} 中的名字颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[LeaderboardSetPlayerItemValueBJ] +title = "改变玩家分数" +description = "设置 ${Player} 在 ${Leaderboard} 中的分数为: ${Value}" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = integer +default = "0" + +[LeaderboardSetPlayerItemValueColorBJ] +title = "改变玩家分数颜色" +description = "设置 ${Player} 在 ${Leaderboard} 中的分数颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "80" +min = 0 +max = 100 +[[.args]] +type = real +default = "20" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[LeaderboardSetPlayerItemStyleBJ] +title = "设置玩家显示样式" +description = "设置 ${Player} 在 ${Leaderboard} 中的显示样式: ${Show/Hide} 名字, ${Show/Hide} 分数, ${Show/Hide} 图标" +comment = "" +category = TC_LEADERBOARD +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[CreateTextTagLocBJ] +title = "创建漂浮文字(指定地点)" +description = "创建漂浮文字: ${文字} 在 ${指定点},Z轴高度: ${Z} ,字体大小: ${Size} ,颜色值:(${Red}%, ${Green}%, ${Blue}%) ,透明度: ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_TEXTTAG +[[.args]] +type = StringExt +[[.args]] +type = location +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "10" +min = 1 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[CreateTextTagUnitBJ] +title = "创建漂浮文字(指定单位)" +description = "创建漂浮文字: ${文字} 在 ${单位}的头顶, Z轴偏移 ${Z},字体大小: ${Size} ,颜色值:(${Red}%, ${Green}%, ${Blue}%) ,透明度: ${Transparency}%" +comment = "该方式创建的漂浮文字并不会跟随单位一起移动. 颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_TEXTTAG +[[.args]] +type = StringExt +[[.args]] +type = unit +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "10" +min = 1 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[DestroyTextTagBJ] +title = "删除" +description = "删除 ${Floating Text}" +comment = "游戏最多允许存在100个漂浮文字,所以请及时删除不再使用的漂浮文字." +script_name = DestroyTextTag +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" + +[YDWETimerDestroyTextTag] +title = "计时器系统-删除漂浮文字[YDWE]" +description = "在 ${时间} 秒后删除 ${漂浮文字}" +comment = "启动中心计时器,在指定时间之后删除漂浮文字。" +category = TC_TEXTTAG +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" + +[SetTextTagVisibility] +title = "显示/隐藏 (所有玩家) [R]" +description = "对所有玩家 ${Show/Hide} ${Floating Text}" +comment = "" +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "bj_lastCreatedTextTag" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[ShowTextTagForceBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${Floating Text} 对 ${玩家组}" +comment = "" +category = TC_TEXTTAG +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = force +default = "GetPlayersAll" + +[SetTextTagVelocity] +title = "设置速率 [R]" +description = "设置 ${Floating Text} 的X轴速率: ${XSpeed} ,Y轴速率: ${YSpeed}" +comment = "对移动后的漂浮文字设置速率,该漂浮文字会先回到原点再向设定的角度移动. 这里的1约等于游戏中的1800速度." +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "bj_lastCreatedTextTag" +[[.args]] +type = real +default = "64" +[[.args]] +type = real +default = "90" + +[SetTextTagVelocityBJ] +title = "设置速率" +description = "设置 ${Floating Text} 的移动速率为 ${Speed} ,方向为 ${Angle} 度" +comment = "对移动后的漂浮文字设置速率,该漂浮文字会先回到原点再向设定的角度移动. 方向采用角度制,0度为正东方向,90度为正北方向." +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = real +default = "64" +[[.args]] +type = degree +default = "90" + +[SetTextTagColor] +title = "改变颜色 [R]" +description = "改变 ${Floating Text} 的颜色为(${Red},${Green},${Blue}) 透明值为 ${Transparency}" +comment = "颜色格式为(红,绿,蓝). 透明值0为不可见. 颜色值和透明值取值范围为0-255." +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "bj_lastCreatedTextTag" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[SetTextTagColorBJ] +title = "改变颜色" +description = "改变 ${Floating Text} 的颜色为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 +max = 100 + +[SetTextTagPos] +title = "改变位置(坐标) [R]" +description = "改变 ${Floating Text} 的位置为(${X},${Y}) ,Z轴高度为 ${Z}" +comment = "" +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "bj_lastCreatedTextTag" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetTextTagPosBJ] +title = "改变位置(点)" +description = "改变 ${Floating Text} 的位置为 ${指定点} ,Z轴高度为 ${Z}" +comment = "" +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = location +[[.args]] +type = real +default = "0" + +[SetTextTagPosUnitBJ] +title = "改变位置(单位)" +description = "改变 ${Floating Text} 的位置到 ${单位} 头顶Z轴偏移 ${Z} 处" +comment = "" +script_name = SetTextTagPosUnit +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = unit +[[.args]] +type = real +default = "0" + +[SetTextTagText] +title = "改变文字内容 [R]" +description = "改变 ${Floating Text} 的内容为 ${文字} ,字体大小: ${Size}" +comment = "采用原始字体大小单位. 字体大小不能超过0.5." +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "bj_lastCreatedTextTag" +[[.args]] +type = StringExt +[[.args]] +type = real +default = "0.23" + +[SetTextTagTextBJ] +title = "改变文字内容" +description = "改变 ${Floating Text} 的内容为 ${文字} ,字体大小: ${Size}" +comment = "" +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = StringExt +[[.args]] +type = real +default = "10" + +[SetTextTagSuspendedBJ] +title = "暂停/恢复" +description = "设置 ${Floating Text} : ${Enable/Disable} 暂停状态" +comment = "暂停状态暂停漂浮文字的移动和生命计时." +script_name = SetTextTagSuspended +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetTextTagPermanentBJ] +title = "设置永久显示" +description = "设置 ${Floating Text} : ${Enable/Disable} 永久显示." +comment = "" +script_name = SetTextTagPermanent +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetTextTagLifespanBJ] +title = "设置显示时间" +description = "设置 ${Floating Text} 的显示时间为 ${Time} 秒" +comment = "该动作并不影响永久性漂浮文字. 当显示时间到期时,系统会自动清除该漂浮文字." +script_name = SetTextTagLifespan +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = real +default = "5" + +[SetTextTagFadepointBJ] +title = "设置消逝时间点" +description = "设置 ${Floating Text} 的消逝时间点为 ${Time} 秒" +comment = "该动作并不影响永久性漂浮文字. 当漂浮文字存在时间到达该值时会开始淡化消逝." +script_name = SetTextTagFadepoint +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = real +default = "4" + +[SetTextTagAgeBJ] +title = "设置已存在时间" +description = "设置 ${Floating Text} 的已存在时间为 ${Time} 秒" +comment = "该动作并不影响永久性漂浮文字. " +script_name = SetTextTagAge +category = TC_TEXTTAG +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" +[[.args]] +type = real +default = "0" + +[RegionAddRect] +title = "添加区域 [R]" +description = "对 ${不规则区域} 添加 ${矩形区域}" +comment = "区域是游戏中一个游戏地区的集合体,可以包含地区和点." +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = rect + +[RegionClearRect] +title = "移除区域 [R]" +description = "在 ${不规则区域} 中移除 ${矩形区域}" +comment = "" +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = rect + +[RegionAddCell] +title = "添加单元点(指定坐标) [R]" +description = "对 ${不规则区域} 添加单元点: (${X},${Y})" +comment = "单元点大小为32x32." +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[RegionAddCellAtLoc] +title = "添加单元点(指定点) [R]" +description = "对 ${不规则区域} 添加单元点: ${点}" +comment = "单元点大小为32x32." +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = location + +[RegionClearCell] +title = "移除单元点(指定坐标) [R]" +description = "在 ${不规则区域} 中移除单元点: (${X},${Y})" +comment = "单元点大小为32x32." +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[RegionClearCellAtLoc] +title = "移除单元点(指定点) [R]" +description = "在 ${不规则区域} 中移除单元点: ${点}" +comment = "单元点大小为32x32." +category = TC_REGION +[[.args]] +type = region +[[.args]] +type = location + +[RemoveRegion] +title = "删除不规则区域 [R]" +description = "删除 ${不规则区域}" +comment = "" +category = TC_REGION +[[.args]] +type = region + +[SetRect] +title = "设置矩形区域(指定坐标) [R]" +description = "重新设置 ${矩形区域} ,左下角坐标为(${X},${Y}), 右上角坐标为(${X},${Y})" +comment = "该区域必须是一个变量. 重新设置矩形区域的大小和位置." +category = TC_RECT +[[.args]] +type = rect +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetRectFromLoc] +title = "设置矩形区域(指定点) [R]" +description = "重新设置 ${矩形区域} ,左下角点为 ${点} 右上角点为 ${点}" +comment = "该区域必须是一个变量. 重新设置矩形区域的大小和位置." +category = TC_RECT +[[.args]] +type = rect +[[.args]] +type = location +[[.args]] +type = location + +[MoveRectTo] +title = "移动矩形区域(指定坐标) [R]" +description = "移动 ${矩形区域} 到(${X},${Y})" +comment = "该区域必须是一个变量. 目标点将作为该区域的新中心点." +category = TC_RECT +[[.args]] +type = rect +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[MoveRectToLoc] +title = "移动矩形区域(指定点)" +description = "移动 ${矩形区域} 到 ${目标点}" +comment = "该区域必须是一个变量. 目标点将作为该区域的新中心点." +category = TC_RECT +[[.args]] +type = rect +[[.args]] +type = location + +[RemoveRect] +title = "删除矩形区域 [R]" +description = "删除 ${矩形区域}" +comment = "" +category = TC_RECT +[[.args]] +type = rect + +[QuestMessageBJ] +title = "发送任务信息" +description = "对 ${玩家组} 发送 ${Quest Message Type} 信息: ${文字}" +comment = "" +category = TC_QUEST +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = questmessagetype +default = "QuestMessageTypeUpdated" +[[.args]] +type = StringExt + +[CreateQuestBJ] +title = "创建任务" +description = "创建一个 ${Quest Type} 任务,标题: ${文字} 任务说明: ${文字} 任务图标: ${Icon Path}" +comment = "" +category = TC_QUEST +[[.args]] +type = questtypeoption +default = "QuestTypeReqDiscovered" +[[.args]] +type = StringExt +max = 24 +[[.args]] +type = StringExt +[[.args]] +type = imagefile +default = "\"ReplaceableTextures\\CommandButtons\\BTNAmbush.blp\"" + +[DestroyQuestBJ] +title = "删除任务" +description = "删除 ${Quest}" +comment = "被删除的任务将不再显示在任务列表." +script_name = DestroyQuest +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[QuestSetEnabled] +title = "启用/禁用 任务 [R]" +description = "设置 ${Quest} ${Enable/Disable}" +comment = "被禁用的任务将不会显示在任务列表." +category = TC_QUEST +[[.args]] +type = quest +default = "bj_lastCreatedQuest" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[QuestSetEnabledBJ] +title = "启用/禁用任务" +description = "${Enable/Disable} ${Quest}" +comment = "被禁用的任务将不会显示在任务列表." +category = TC_QUEST +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[QuestSetCompletedBJ] +title = "设置任务完成" +description = "设置 ${Quest} ${Completed/Incomplete}" +comment = "" +script_name = QuestSetCompleted +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = completionoption +default = "CompletionOptionCompleted" + +[QuestSetFailedBJ] +title = "设置任务失败" +description = "设置 ${Quest} ${Failed/Not Failed}" +comment = "" +script_name = QuestSetFailed +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = failureoption +default = "FailureOptionFailed" + +[QuestSetDiscoveredBJ] +title = "设置任务被发现" +description = "设置 ${Quest} ${Discovered/Undiscovered}" +comment = "" +script_name = QuestSetDiscovered +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = discoveredoption +default = "DiscoveredOptionDiscovered" + +[QuestSetTitleBJ] +title = "设置任务标题" +description = "设置 ${Quest} 的标题为 ${文字}" +comment = "" +script_name = QuestSetTitle +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = StringExt + +[QuestSetDescriptionBJ] +title = "设置任务说明" +description = "设置 ${Quest} 的任务说明为: ${文字}" +comment = "" +script_name = QuestSetDescription +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = StringExt + +[CreateQuestItemBJ] +title = "创建任务项目" +description = "为 ${Quest} 创建一个任务项目: ${文字}" +comment = "" +category = TC_QUEST +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = StringExt + +[QuestItemSetCompletedBJ] +title = "设置任务项目完成" +description = "设置 ${Quest Requirement} ${Completed/Incomplete}" +comment = "" +script_name = QuestItemSetCompleted +category = TC_QUEST +[[.args]] +type = questitem +default = "GetLastCreatedQuestItemBJ" +[[.args]] +type = completionoption +default = "CompletionOptionCompleted" + +[QuestItemSetDescriptionBJ] +title = "改变任务项目说明" +description = "改变 ${Quest Requirement} 的说明为: ${文字}" +comment = "" +script_name = QuestItemSetDescription +category = TC_QUEST +[[.args]] +type = questitem +default = "GetLastCreatedQuestItemBJ" +[[.args]] +type = StringExt + +[CreateDefeatConditionBJ] +title = "创建失败条件" +description = "创建失败条件: ${文字}" +comment = "失败条件会在每个任务中显示." +category = TC_QUEST +[[.args]] +type = StringExt + +[DestroyDefeatConditionBJ] +title = "删除失败条件" +description = "删除 ${Defeat Condition}" +comment = "被删除的失败条件会从每个任务中移除." +script_name = DestroyDefeatCondition +category = TC_QUEST +[[.args]] +type = defeatcondition +default = "GetLastCreatedDefeatConditionBJ" + +[DefeatConditionSetDescriptionBJ] +title = "改变失败条件说明" +description = "改变 ${Defeat Condition} 的说明为: ${文字}" +comment = "" +script_name = DefeatConditionSetDescription +category = TC_QUEST +[[.args]] +type = defeatcondition +default = "GetLastCreatedDefeatConditionBJ" +[[.args]] +type = StringExt + +[FlashQuestDialogButtonBJ] +title = "闪动任务按钮" +description = "闪动任务按钮" +comment = "" +script_name = FlashQuestDialogButton +category = TC_QUEST +[[.args]] +type = nothing + +[AddLightningLoc] +title = "创建闪电效果" +description = "创建一道 ${Type} 闪电效果,从 ${点} 到 ${点}" +comment = "" +category = TC_LIGHTNING +[[.args]] +type = lightningtype +default = "LightningTypeCLPB" +[[.args]] +type = location +[[.args]] +type = location + +[DestroyLightningBJ] +title = "删除闪电效果" +description = "删除 ${Lightning}" +comment = "" +script_name = DestroyLightning +category = TC_LIGHTNING +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[YDWETimerDestroyLightning] +title = "计时器系统-删除闪电效果[YDWE]" +description = "在 ${时间} 秒后删除 ${闪电效果}" +comment = "启动中心计时器,在指定时间之后删除闪电效果。" +category = TC_LIGHTNING +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[MoveLightningEx] +title = "移动闪电效果(指定坐标) [R]" +description = "移动 ${Lightning} 到新位置,(${Boolean} 检查可见性) 新起始点: (${X},${Y},${Z}) 新终结点: (${X},${Y},${Z})" +comment = "可指定Z坐标. 允许检查可见性则在指定起始点和终结点都不可见时将不移动闪电效果." +category = TC_LIGHTNING +[[.args]] +type = lightning +default = "bj_lastCreatedLightning" +[[.args]] +type = allowdontoption +default = "AllowDontDont" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[MoveLightningLoc] +title = "移动闪电效果(指定点)" +description = "移动 ${Lightning} ,使其连接 ${点} 到 ${点}" +comment = "" +category = TC_LIGHTNING +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" +[[.args]] +type = location +[[.args]] +type = location + +[SetLightningColorBJ] +title = "改变闪电效果颜色" +description = "改变 ${Lightning} 的颜色值为(${Red} ${Green} ${Blue}) Alpha通道值为 ${Alpha}" +comment = "颜色格式为(红,绿,蓝). 颜色和Alpha通道值取值范围0-1. Alpha通道值为0即完全透明." +script_name = SetLightningColor +category = TC_LIGHTNING +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "1" + +[PlaySoundBJ] +title = "播放音效" +description = "播放 ${音效}" +comment = "音效不能在地图初始化时播放. 注意3D音效必须指定地点播放." +category = TC_SOUND +[[.args]] +type = sound + +[PlaySoundAtPointBJ] +title = "播放3D音效(指定点)" +description = "播放 ${3D音效} ,音量: ${Volume}% 播放位置: ${指定点} Z轴高度: ${Z}" +comment = "音效不能在地图初始化时播放. 该动作只能用于播放3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = location +[[.args]] +type = real +default = "0" + +[PlaySoundOnUnitBJ] +title = "播放3D音效(跟随单位)" +description = "播放 ${3D音效} ,音量: ${Volume}%, 跟随单位: ${目标单位}" +comment = "音效不能在地图初始化时播放. 该动作只能用于播放3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = unit + +[PlaySoundFromOffsetBJ] +title = "跳播音效" +description = "播放 ${音效},音量: ${Volume}%,跳过开始 ${Offset} 秒" +comment = "音效不能在地图初始化时播放.该动作不能用于3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +default = "100" +min = 0 +max = 100 +[[.args]] +type = real +default = "0" +min = 0 + +[StopSoundBJ] +title = "停止音效" +description = "停止播放 ${音效} ${After Fading/Immediately}" +comment = "" +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = fadedontoption +default = "FadeDontFade" + +[KillSoundWhenDoneBJ] +title = "删除音效" +description = "删除 ${音效}" +comment = "如果音效正在播放则在播放结束时删除." +script_name = KillSoundWhenDone +category = TC_SOUND +[[.args]] +type = sound + +[SetSoundVolume] +title = "设置音效音量 [R]" +description = "设置 ${音效} 的音量为 ${Volume}" +comment = "音量取值范围0-127." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = integer +default = "127" +min = 0 +max = 127 + +[SetSoundVolumeBJ] +title = "设置音效音量" +description = "设置 ${音效} 的音量为 ${Volume}%" +comment = "" +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetSoundPlayPosition] +title = "设置音效播放时间点 [R]" +description = "设置 ${音效} 的播放时间点为 ${Offset} 毫秒" +comment = "音效必须是正在播放的. 不能用于3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = integer +default = "0" +min = 0 + +[SetSoundOffsetBJ] +title = "设置音效播放时间点" +description = "设置播放时间点为 ${Offset} 秒对 ${音效}" +comment = "音效必须是正在播放的. 不能用于3D音效." +category = TC_SOUND +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = sound + +[SetSoundDistanceCutoffBJ] +title = "设置声音截断距离" +description = "设置 ${音效} 的截断距离为 ${数值}" +comment = "地图距离,玩家镜头距离音源超过该范围则切断声音." +script_name = SetSoundDistanceCutoff +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real + +[SetSoundPitchBJ] +title = "设置声音速率" +description = "设置 ${音效} 的速率为 ${数值}" +comment = "表示正常速率的倍数." +script_name = SetSoundPitch +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real + +[AttachSoundToUnitBJ] +title = "绑定单位" +description = "将 ${3D音效} 绑定到 ${单位}" +comment = "该动作仅用于3D音效." +script_name = AttachSoundToUnit +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = unit + +[SetSoundPosition] +title = "设置3D音效位置(指定坐标) [R]" +description = "设置 ${3D音效} 的播放位置为(${X},${Y}), Z轴高度为 ${Z}" +comment = "该动作仅用于3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetSoundPositionLocBJ] +title = "设置3D音效位置(指定点)" +description = "设置 ${3D音效} 的播放位置为 ${指定点} Z轴高度为 ${Z}" +comment = "该动作仅用于3D音效." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = location +[[.args]] +type = real +default = "0" + +[SetSoundDistances] +title = "设置3D音效衰减范围" +description = "设置 ${3D音效} 的衰减最小范围: ${数值} 最大范围: ${数值}" +comment = "该动作仅用于3D音效. 注意不一定要达到最大范围,音量衰减到一定程度也会变没的." +category = TC_SOUND +[[.args]] +type = sound +[[.args]] +type = real +min = 0 +[[.args]] +type = real +min = 0 + +[SetStackedSoundBJ] +title = "添加/删除区域音效" +description = "${Add/Remove} ${3D音效} 到 ${地区}" +comment = "该动作仅用于3D音效." +category = TC_SOUND +[[.args]] +type = addremoveoption +default = "AddRemoveAdd" +[[.args]] +type = sound +[[.args]] +type = rect + +[SetAmbientDaySound] +title = "使用白天环境音效" +description = "使用 ${Theme} 白天环境音效" +comment = "" +category = TC_SOUND +[[.args]] +type = ambientthemeday +default = "AmbientThemeDayL" + +[SetAmbientNightSound] +title = "使用夜晚环境音效" +description = "使用 ${Theme} 夜晚环境音效" +comment = "" +category = TC_SOUND +[[.args]] +type = ambientthemenight +default = "AmbientThemeNightL" + +[EnableDawnDusk] +title = "允许/禁止昼夜交替音效" +description = "${Enable/Disable} 昼夜交替音效" +comment = "" +category = TC_SOUND +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetMapMusic] +title = "设置背景音乐列表 [R]" +description = "设置背景音乐列表为: ${Music} , ${允许/禁止} 随机播放, 开始播放序号为 ${Index}" +comment = "可指定播放文件或播放目录." +category = TC_SOUND +[[.args]] +type = musicfile +default = "MusicFileMusic" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = integer +default = "0" + +[SetMapMusicIndexedBJ] +title = "设置背景音乐列表(指定播放)" +description = "设置背景音乐列表为: ${Music} ,播放序号: ${Index}" +comment = "可指定播放文件或播放目录." +category = TC_SOUND +[[.args]] +type = musicfile +default = "MusicFileMusic" +[[.args]] +type = integer +default = "0" + +[SetMapMusicRandomBJ] +title = "设置背景音乐列表(随机播放)" +description = "设置背景音乐列表为: ${Music} ,随机播放" +comment = "可指定播放文件或播放目录." +category = TC_SOUND +[[.args]] +type = musicfile +default = "MusicFileMusic" + +[ClearMapMusicBJ] +title = "清空背景音乐列表" +description = "清空背景音乐列表" +comment = "" +script_name = ClearMapMusic +category = TC_SOUND +[[.args]] +type = nothing + +[PlayMusicBJ] +title = "播放背景音乐" +description = "播放 ${背景音乐}" +comment = "" +category = TC_SOUND +[[.args]] +type = musicfile + +[PlayMusicExBJ] +title = "跳播背景音乐" +description = "播放 ${背景音乐} ,跳过开始 ${Offset} 秒,淡入时间: ${Fade Time} 秒" +comment = "" +category = TC_SOUND +[[.args]] +type = musicfile +[[.args]] +type = real +default = "0" +min = 0 +[[.args]] +type = real +default = "0" +min = 0 + +[StopMusicBJ] +title = "停止背景音乐" +description = "停止背景音乐 ${After Fading/Immediately}" +comment = "" +script_name = StopMusic +category = TC_SOUND +[[.args]] +type = fadedontoption +default = "FadeDontFade" + +[ResumeMusicBJ] +title = "恢复背景音乐" +description = "恢复背景音乐" +comment = "" +script_name = ResumeMusic +category = TC_SOUND +[[.args]] +type = nothing + +[SetMusicVolume] +title = "设置背景音乐音量 [R]" +description = "设置背景音乐音量为 ${Volume}" +comment = "音量取值范围为0-127." +category = TC_SOUND +[[.args]] +type = integer +default = "127" +min = 0 +max = 127 + +[SetMusicVolumeBJ] +title = "设置背景音乐音量" +description = "设置背景音乐音量为 ${Volume}%" +comment = "" +category = TC_SOUND +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetMusicPlayPosition] +title = "设置背景音乐播放时间点 [R]" +description = "设置当前背景音乐的播放时间点为 ${Offset} 毫秒" +category = TC_SOUND +[[.args]] +type = integer +default = "0" +min = 0 + +[SetMusicOffsetBJ] +title = "设置背景音乐播放时间点" +description = "设置当前背景音乐的播放时间点为 ${Offset} 秒" +comment = "" +category = TC_SOUND +[[.args]] +type = real +default = "0" +min = 0 + +[PlayThematicMusic] +title = "播放主题音乐 [C]" +description = "播放 ${Music Theme} 主题音乐" +comment = "播放主题音乐一次,然后恢复原来的音乐." +script_name = PlayThematicMusic +category = TC_SOUND +[[.args]] +type = musictheme +default = "MusicThemeHeroicVictory" + +[PlayThematicMusicBJ] +title = "播放主题音乐" +description = "播放 ${Music Theme} 主题音乐" +comment = "播放主题音乐一次,然后恢复原来的音乐." +script_name = PlayThematicMusic +category = TC_SOUND +[[.args]] +type = musictheme +default = "MusicThemeHeroicVictory" + +[PlayThematicMusicEx] +title = "跳播主题音乐 [R]" +description = "播放 ${Music Theme} 主题音乐,跳过开始 ${Offset} 毫秒" +category = TC_SOUND +[[.args]] +type = musictheme +default = "MusicThemeHeroicVictory" +[[.args]] +type = integer +default = "0" +min = 0 + +[PlayThematicMusicExBJ] +title = "跳播主题音乐" +description = "播放 ${Music Theme} 主题音乐,跳过开始 ${Offset} 秒" +comment = "播放主题音乐一次,然后恢复原来的音乐." +category = TC_SOUND +[[.args]] +type = musictheme +default = "MusicThemeHeroicVictory" +[[.args]] +type = real +default = "0" +min = 0 + +[EndThematicMusic] +title = "停止主题音乐[C]" +description = "停止正在播放的主题音乐" +comment = "" +script_name = EndThematicMusic +category = TC_SOUND +[[.args]] +type = nothing + +[EndThematicMusicBJ] +title = "停止主题音乐" +description = "停止正在播放的主题音乐" +comment = "" +script_name = EndThematicMusic +category = TC_SOUND +[[.args]] +type = nothing + +[SetThematicMusicPlayPosition] +title = "设置主题音乐播放时间点 [R]" +description = "设置当前主题音乐播放时间点为 ${Offset} 毫秒" +comment = "" +category = TC_SOUND +[[.args]] +type = integer +default = "0" +min = 0 + +[SetThematicMusicOffsetBJ] +title = "设置主题音乐播放时间点" +description = "设置当前主题音乐播放时间点为 ${Offset} 秒" +comment = "" +category = TC_SOUND +[[.args]] +type = real +default = "0" +min = 0 + +[VolumeGroupSetVolume] +title = "设置多通道音量 [R]" +description = "设置 ${Volume Channel} 的音量为 ${Volume}" +comment = "音量取值范围0-1." +category = TC_SOUND +[[.args]] +type = volumegroup +default = "VolumeGroupMusic" +[[.args]] +type = real +default = "1" +min = 0 +max = 1 + +[VolumeGroupSetVolumeBJ] +title = "设置多通道音量" +description = "设置 ${Volume Channel} 的音量为 ${Volume}%" +comment = "" +category = TC_SOUND +[[.args]] +type = volumegroup +default = "VolumeGroupMusic" +[[.args]] +type = real +default = "100" +min = 0 +max = 100 + +[SetCineModeVolumeGroupsBJ] +title = "设置电影多通道音量环境" +description = "设置多通道音量为电影模式" +comment = "" +category = TC_SOUND +[[.args]] +type = nothing + +[SetSpeechVolumeGroupsBJ] +title = "设置语音多通道音量环境" +description = "设置多通道音量为语音模式" +comment = "语音模式即电影的播送单位消息功能." +category = TC_SOUND +[[.args]] +type = nothing + +[VolumeGroupResetBJ] +title = "重置多通道音量" +description = "重置所有通道音量为预设值." +category = TC_SOUND +[[.args]] +type = nothing + +[AddSpecialEffectLocBJ] +title = "创建特效(指定点)" +description = "在 ${指定点} 创建特效: ${Model File}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = location +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl\"" + +[AddSpecialEffectTargetUnitBJ] +title = "创建特效(绑定单位)" +description = "创建并绑定特效到 ${Attachment Point} 对 ${单位} ,使用模型: ${Model File}" +comment = "" +category = TC_SPECIALEFFECT +[[.args]] +type = string +default = "\"overhead\"" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Other\\TalkToMe\\TalkToMe.mdl\"" + +[DestroyEffectBJ] +title = "删除特效" +description = "删除 ${Special Effect}" +comment = "" +script_name = DestroyEffect +category = TC_SPECIALEFFECT +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWETimerDestroyEffect] +title = "计时器系统-删除特效[YDWE]" +description = "在 ${时间} 秒后删除 ${特效}" +comment = "启动中心计时器,在指定时间之后删除特效。" +category = TC_SPECIALEFFECT +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = effect +default = "bj_lastCreatedEffect" + +[CreateImageBJ] +title = "创建" +description = "使用图像: ${Image} 大小: ${Size} 创建点: ${指定点} Z轴偏移: ${Z} 图像类型: ${Type}" +comment = "使用'图像 - 设置永久渲染状态'才能显示图像. 创建点作为图像的左下角位置. 该功能存在Bug,会在图像上和右面多出256象素. 所以需要支持Alpha通道的图像且上和右面最后一行像素为透明才能完美显示." +category = TC_IMAGE +[[.args]] +type = string +default = "\"ReplaceableTextures\\Splats\\AuraRune9b.blp\"" +[[.args]] +type = real +default = "256" +[[.args]] +type = location +[[.args]] +type = real +default = "0" +[[.args]] +type = imagetype +default = "ImageTypeIndicator" + +[DestroyImage] +title = "删除" +description = "删除 ${图像}" +comment = "" +category = TC_IMAGE +[[.args]] +type = image + +[ShowImage] +title = "显示/隐藏 [R]" +description = "设置 ${Image} ${Show/Hide}" +comment = "" +category = TC_IMAGE +[[.args]] +type = image +default = "bj_lastCreatedImage" +[[.args]] +type = showhideoption +default = "ShowHideShow" + +[ShowImageBJ] +title = "显示/隐藏图像" +description = "${Show/Hide} ${Image}" +comment = "" +category = TC_IMAGE +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = image +default = "GetLastCreatedImage" + +[SetImageConstantHeight] +title = "设置图像高度" +description = "设置 ${Image} ${Enable/Disable} Z轴显示,并设置高度为 ${Height}" +comment = "实际显示高度为图像高度+Z轴偏移. 只有允许Z轴显示时才有效." +category = TC_IMAGE +[[.args]] +type = image +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = real +default = "0" + +[SetImagePosition] +title = "改变图像位置(指定坐标) [R]" +description = "改变 ${Image} 的位置为(${X},${Y}),Z轴偏移为 ${Z}" +comment = "指图像的左下角位置." +category = TC_IMAGE +[[.args]] +type = image +default = "bj_lastCreatedImage" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetImagePositionBJ] +title = "改变图像位置(指定点)" +description = "改变 ${Image} 的位置为 ${Position} ,Z轴偏移为 ${Z}" +comment = "指图像的左下角位置." +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = location +[[.args]] +type = real +default = "0" + +[SetImageColor] +title = "改变图像颜色 [R]" +description = "设置 ${Image} 的颜色值为(${Red},${Green},${Blue}) Alpha值为 ${Alpha}" +comment = "颜色格式为(红,绿,蓝). Alpha值为0是不可见的. 颜色值和Alpha值取值范围0-255." +category = TC_IMAGE +[[.args]] +type = image +default = "bj_lastCreatedImage" +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 +[[.args]] +type = integer +default = "255" +min = 0 +max = 255 + +[SetImageColorBJ] +title = "改变图像颜色" +description = "设置 ${Image} 的颜色值为(${Red}%, ${Green}%, ${Blue}%) 透明度为 ${Transparency}%" +comment = "颜色格式为(红,绿,蓝). 透明度100%是不可见的." +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = real +default = "100.0" +min = 0.0 +max = 100.0 +[[.args]] +type = real +default = "100.0" +min = 0.0 +max = 100.0 +[[.args]] +type = real +default = "100.0" +min = 0.0 +max = 100.0 +[[.args]] +type = real +default = "0.0" +min = 0.0 +max = 100.0 + +[SetImageRender] +title = "设置图像渲染状态" +description = "设置 ${Image} : ${Enable/Disable} 显示状态" +comment = "未发现有任何作用." +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetImageRenderAlways] +title = "设置图像永久渲染状态" +description = "设置 ${Image} : ${Enable/Disable} 永久显示状态" +comment = "要显示图像则必须开启该项." +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetImageAboveWater] +title = "图像水面显示状态" +description = "设置 ${Image} : ${Enable/Disable} 水面显示, ${Enable/Disable} 水的Alpha通道" +comment = "前者设置图像在水面或是水底显示. 后者设置图像是否受水的Alpha通道影响. " +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetImageType] +title = "改变图像类型" +description = "改变 ${Image} 类型为 ${Type}" +comment = "" +category = TC_IMAGE +[[.args]] +type = image +default = "GetLastCreatedImage" +[[.args]] +type = imagetype +default = "ImageTypeIndicator" + +[SetPlayerState] +title = "设置属性" +description = "设置 ${Player} 的 ${Property} 为 ${Value}" +comment = "" +script_name = SetPlayerStateBJ +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerstate +default = "PlayerStateGold" +[[.args]] +type = integer +default = "750" + +[AdjustPlayerStateBJ] +title = "增加属性" +description = "增加 ${Value} ${Player} 的 ${Property}" +comment = "使用负数来减少." +category = TC_PLAYER +[[.args]] +type = integer +default = "1000" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerstate +default = "PlayerStateGold" + +[SetPlayerFlag] +title = "开启/关闭 玩家参数 [R]" +description = "设置 ${Player} 属性: ${Player Flag} ${On/Off}" +comment = "开启玩家12的'给与奖励'表示杀死玩家12单位会获得金钱奖励." +script_name = SetPlayerState +category = TC_PLAYER +[[.args]] +type = player +default = "PlayerNA" +[[.args]] +type = playerflag +default = "PlayerFlagGivesBounty" +[[.args]] +type = onoffintoption +default = "OnOffIntOff" + +[SetPlayerFlagBJ] +title = "开启/关闭 玩家参数" +description = "设置 ${Player Flag} ${On/Off} 对 ${Player}" +comment = "开启玩家12的'给与奖励'表示杀死玩家12单位会获得金钱奖励." +category = TC_PLAYER +[[.args]] +type = playerflag +default = "PlayerFlagGivesBounty" +[[.args]] +type = onoffoption +default = "OnOffOff" +[[.args]] +type = player +default = "PlayerNA" + +[SetPlayerTaxRate] +title = "设置税率 [R]" +description = "设置 ${Player} 交纳给 ${Player} 的 ${Resource} 所得税为 ${Rate} %" +comment = "缴纳所得税所损失的资源可以通过'玩家得分'的'税务损失的黄金/木材'来获取. 所得税最高为100%. 且玩家1对玩家2和玩家3都交纳80%所得税.则玩家1采集黄金时将给玩家2 8黄金,玩家3 2黄金." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" +[[.args]] +type = playerresource +default = "PlayerResourceGold" +[[.args]] +type = integer +default = "0" +min = 0 +max = 100 + +[SetPlayerTaxRateBJ] +title = "设置税率" +description = "设置 ${Rate} %的 ${Resource} 所得税, ${Player} 交纳给 ${Player}" +comment = "缴纳所得税所损失的资源可以通过'玩家得分'的'税务损失的黄金/木材'来获取. 所得税最高为100%. 且玩家1对玩家2和玩家3都交纳80%所得税.则玩家1采集黄金时将给玩家2 8黄金,玩家3 2黄金." +category = TC_PLAYER +[[.args]] +type = integer +default = "0" +min = 0 +max = 100 +[[.args]] +type = playerresource +default = "PlayerResourceGold" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" + +[SetPlayerTeam] +title = "设置玩家队伍" +description = "设置 ${Player} 的队伍为 ${队伍ID}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = integer +default = "0" + +[EnableCreepSleepBJ] +title = "允许/禁止 中立生物睡眠" +description = "${Enable/Disable} 中立生物睡眠" +comment = "只影响夜晚的睡眠. 不影响催眠魔法." +category = TC_PLAYER +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[SetPlayerAllianceStateBJ] +title = "设置联盟状态" +description = "命令 ${Player} 设置对 ${Player} 的联盟状态为 ${Alliance Setting}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" +[[.args]] +type = alliancesetting +default = "AllianceSettingAlliedVision" + +[SetPlayerAlliance] +title = "设置联盟状态(指定项目) [R]" +description = "命令 ${Player} 对 ${Player} 设置 ${Alliance Type} ${On/Off}" +comment = "注意:可以对玩家自己设置联盟状态. 可用来实现一些特殊效果." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" +[[.args]] +type = alliancetype +default = "AllianceTypePassive" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetPlayerAllianceBJ] +title = "设置联盟状态(指定项目)" +description = "命令 ${Player} 设置 ${Alliance Type} ${On/Off} 对 ${Player}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = alliancetype +default = "AllianceTypePassive" +[[.args]] +type = onoffoption +default = "OnOffOn" +[[.args]] +type = player +default = "Player01" + +[SetPlayerAbilityAvailable] +title = "允许/禁用 技能 [R]" +description = "设置 ${Player} 的 ${技能} 为 ${Enable/Disable}" +comment = "设置玩家能否使用该技能." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = abilcode +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[SetPlayerAbilityAvailableBJ] +title = "允许/禁用 技能" +description = "${Enable/Disable} ${技能} 对 ${Player}" +comment = "设置玩家能否使用该技能." +category = TC_PLAYER +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = abilcode +[[.args]] +type = player +default = "Player00" + +[SetPlayerUnitAvailableBJ] +title = "设置单位可用性" +description = "设置 ${单位类型} ${Available/Unavailable} 对 ${Player}" +comment = "设置玩家能否建造该单位." +category = TC_PLAYER +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = availabilityoption +default = "AvailabilityOptionAvailable" +[[.args]] +type = player +default = "Player00" + +[SetPlayerUnitMaxAllowed] +title = "限制单位可建造数量" +description = "限制 ${单位类型} 的可建造数量为 ${Limit} 对 ${Player}" +comment = "-1为无限制,0为不能生产." +script_name = SetPlayerTechMaxAllowedSwap +category = TC_PLAYER +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = integer +default = "1" +min = -1 +[[.args]] +type = player +default = "Player00" + +[SetPlayerMaxHeroesAllowed] +title = "限制英雄数量" +description = "限制英雄数量为 ${Limit} 对 ${Player}" +comment = "-1为无限制,0为不能生产." +category = TC_PLAYER +[[.args]] +type = integer +default = "3" +min = -1 +[[.args]] +type = player +default = "Player00" + +[AddPlayerTechResearched] +title = "增加科技等级" +description = "增加 ${玩家} 的 ${科技} 科技 ${整数} 级" +comment = "科技等级不能倒退。" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = techcode +[[.args]] +type = integer +default = "0" +min = 0 + +[SetPlayerTechResearchedSwap] +title = "设置科技等级" +description = "设置 ${科技} 的等级为 ${Level} 对 ${Player}" +comment = "科技等级不能倒退." +category = TC_PLAYER +[[.args]] +type = techcode +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = player +default = "Player00" + +[SetPlayerTechMaxAllowedSwap] +title = "设置最大科技等级" +description = "设置 ${科技} 的等级为 ${Level} 对 ${Player}" +comment = "科技等级不能倒退." +category = TC_PLAYER +[[.args]] +type = techcode +[[.args]] +type = integer +default = "0" +min = 0 +[[.args]] +type = player +default = "Player00" + +[SetPlayerColor] +title = "改变玩家颜色 [R]" +description = "将 ${Player} 的玩家颜色改为 ${Color}" +comment = "不改变现有单位的颜色." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playercolor +default = "Color00" + +[SetPlayerColorBJ] +title = "改变玩家颜色" +description = "将 ${Player} 的玩家颜色改为 ${Color} ,并 ${Changing/Retaining color} 玩家单位颜色" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playercolor +default = "Color00" +[[.args]] +type = playerchangecoloroption +default = "PlayerChangeColorChange" + +[SetPlayerHandicap] +title = "设置生命上限 [R]" +description = "设置 ${Player} 的生命障碍为正常的 ${Percent}倍" +comment = "生命上限影响玩家拥有单位的生命最大值. 生命之书并不受生命上限限制,所以对英雄血量可能会有偏差." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "1" +min = 0.01 +max = 10000 + +[SetPlayerHandicapBJ] +title = "设置生命上限" +description = "设置 ${Player} 的生命障碍为正常的 ${Percent}%" +comment = "生命上限影响玩家拥有单位的生命最大值. 生命之书并不受生命上限限制,所以对英雄血量可能会有偏差." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "100" +min = 1 +max = 10000 + +[SetPlayerOnScoreScreen] +title = "显示/隐藏计分屏显示 [R]" +description = "设置 ${Player} ${Show/Hide} 在计分屏的显示." +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[SetPlayerOnScoreScreenBJ] +title = "显示/隐藏计分屏显示" +description = "${Show/Hide} ${Player} 在计分屏的显示." +comment = "" +category = TC_PLAYER +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = player +default = "Player00" + +[SetPlayerName] +title = "更改名字" +description = "更改 ${Player} 的名字为 ${文字}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = StringExt + +[RemovePlayer] +title = "踢除玩家" +description = "踢除 ${Player} ,玩家的游戏结果为 ${文字}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playergameresult +default = "GameResultLose" + +[ForForceMultiple] +title = "选取玩家组内玩家做动作(多个动作)" +description = "选取 ${玩家组} 内所有玩家做动作" +comment = "玩家组动作中可使用'选取玩家'来获取对应的玩家. 等待不能在组动作中运行." +script_name = ForForce +category = TC_PLAYERGROUP +[[.args]] +type = force +default = "GetPlayersAll" + +[ForForce] +title = "选取玩家组内玩家做动作" +description = "选取 ${玩家组} 内所有玩家 ${做动作}" +comment = "玩家组动作中可使用'选取玩家'来获取对应的玩家. 等待不能在组动作中运行." +category = TC_PLAYERGROUP +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = code +default = "DoNothing" + +[ForceAddPlayer] +title = "添加玩家 [R]" +description = " ${玩家组} 添加 ${玩家}" +comment = "并不影响玩家本身." +category = TC_PLAYERGROUP +[[.args]] +type = force +[[.args]] +type = player +default = "Player00" + +[ForceAddPlayerSimple] +title = "添加玩家" +description = "添加 ${Player} 到 ${玩家组}" +comment = "并不影响玩家本身." +category = TC_PLAYERGROUP +[[.args]] +type = player +default = "Player00" +[[.args]] +type = force + +[ForceRemovePlayer] +title = "移除玩家 [R]" +description = "从 ${玩家组} 中移除 ${玩家}" +comment = "并不影响玩家本身." +category = TC_PLAYERGROUP +[[.args]] +type = force +[[.args]] +type = player +default = "Player00" + +[ForceRemovePlayerSimple] +title = "移除玩家" +description = "将 ${Player} 从 ${玩家组} 移除" +comment = "并不影响玩家本身." +category = TC_PLAYERGROUP +[[.args]] +type = player +default = "Player00" +[[.args]] +type = force + +[ForceClear] +title = "清空玩家组" +description = "清空 ${玩家组} 内所有玩家" +comment = "并不影响玩家本身." +category = TC_PLAYERGROUP +[[.args]] +type = force + +[SetForceAllianceStateBJ] +title = "设置联盟" +description = "命令 ${Player} 设置对 ${Player} 的联盟状态为 ${Alliance Setting}" +comment = "" +category = TC_PLAYERGROUP +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = alliancesetting +default = "AllianceSettingAlliedVision" + +[DestroyForce] +title = "删除玩家组 [R]" +description = "删除 ${玩家组}" +comment = "注意: 不要删除系统预置的玩家组." +category = TC_PLAYERGROUP +[[.args]] +type = force + +[CreateItemLoc] +title = "创建" +description = "创建 ${物品} 在 ${指定点}" +comment = "" +category = TC_ITEM +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = location + +[CreateItem] +title = "创建" +description = "新建 ${物品} 在(${X},${Y})" +comment = "" +category = TC_ITEM +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = real +[[.args]] +type = real + +[RemoveItem] +title = "删除" +description = "删除 ${物品}" +comment = "" +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" + +[YDWETimerRemoveItem] +title = "计时器系统-删除物品[YDWE]" +description = "在 ${时间} 秒后删除 ${物品}" +comment = "启动中心计时器,在指定时间之后删除物品。" +category = TC_ITEM +[[.args]] +type = real +default = "2" +min = 0 +[[.args]] +type = item +default = "GetLastCreatedItem" + +[YDWEItemAbilityStorage] +title = "物品属性系统-添加技能给物品[YDWE]" +description = "为 ${物品类型} 添加 ${技能}" +comment = "将技能添加给物品,英雄获得物品后,会获得额外的技能;这些技能会出现在单位身上,因此尽量不要添加带有图标的技能。" +category = TC_ITEM +[[.args]] +type = itemcode +default = "spsh" +[[.args]] +type = abilcode +default = "AIfg" + +[SetItemVisible] +title = "显示/隐藏 [R]" +description = "设置 ${物品} 的状态为: ${Show/Hide}" +comment = "只对在地面的物品有效,不会影响在物品栏中的物品. 单位通过触发得到一个隐藏物品时,会自动显示该物品." +category = TC_ITEM +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[SetItemVisibleBJ] +title = "显示/隐藏" +description = "${Show/Hide} ${物品}" +comment = "只对在地面的物品有效,不会影响在物品栏中的物品. 单位通过触发得到一个隐藏物品时,会自动显示该物品." +category = TC_ITEM +[[.args]] +type = showhideoption +default = "ShowHideHide" +[[.args]] +type = item +default = "GetLastCreatedItem" + +[SetItemPosition] +title = "移动物品到坐标(立即)(指定坐标) [R]" +description = "移动 ${物品} 到(${X},${Y})" +comment = "" +category = TC_ITEM +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[SetItemPositionLoc] +title = "移动物品到指定点(立即)(指定点)" +description = "移动 ${物品} 到 ${指定点}" +comment = "" +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = location + +[SetItemLifeBJ] +title = "设置物品生命值" +description = "设置 ${物品} 的生命值为 ${Value}" +comment = "" +script_name = SetWidgetLife +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = real +default = "50" +min = 0 + +[SetItemCharges] +title = "设置物品使用次数" +description = "设置 ${物品} 的使用次数为 ${Charges}" +comment = "设置为0可以使物品能无限次使用." +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = integer +default = "1" +min = 0 + +[SetItemInvulnerableBJ] +title = "设置物品无敌/可攻击" +description = "设置 ${物品} ${Invulnerable/Vulnerable}" +comment = "" +script_name = SetItemInvulnerable +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = invulnerableoption +default = "InvulnerabilityInvulnerable" + +[SetItemPawnable] +title = "设置物品可否抵押" +description = "设置 ${物品} ${Pawnable/Unpawnable}" +comment = "不可抵押物品不能被卖到商店." +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = pawnableoption +default = "PawnableOptionPawnable" + +[SetItemDroppableBJ] +title = "设置物品可否丢弃" +description = "设置${物品} ${Droppable/Undroppable}" +comment = "不可掉落物品在被捡起之后就不能移动和丢弃.(但可通过触发实现)" +script_name = SetItemDroppable +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = dropnodropoption +default = "DropNoDropOptionNoDrop" + +[SetItemDropID] +title = "设置重生神符的产生单位类型" +description = "设置 ${物品} 产生 ${单位类型}" +comment = "设置重生神符对应的单位类型后,当英雄吃了重生神符,则会产生指定类型的单位。" +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = unitcode +default = "hfoo" + +[SetItemDropOnDeathBJ] +title = "设置物品死亡是否掉落" +description = "设置 ${物品} ${Drop from/Stay with} 在持有者死亡时" +comment = "" +script_name = SetItemDropOnDeath +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = droppableoption +default = "DroppableOptionDrop" + +[SetItemPlayerBJ] +title = "改变物品所属玩家" +description = "改变 ${物品} 的所属玩家为: ${Player} 并 ${Change/Retain Color}" +comment = "不是所有物品都能改变颜色. 所属玩家与持有者无关,默认为中立被动玩家." +script_name = SetItemPlayer +category = TC_ITEM +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = colorchangeoption +default = "ChangeColorTrue" + +[SetItemUserData] +title = "设置物品自定义值" +description = "设置 ${物品} 的自定义值为 ${Index}" +comment = "物品自定义值只用于触发器. 可以用来为物品绑定一个整型数据." +category = TC_ITEM +[[.args]] +type = item +[[.args]] +type = integer +default = "0" + +[EnumItemsInRectBJMultiple] +title = "选取矩形区域内物品做动作(多个动作)" +description = "选取 ${矩形区域} 内所有物品做动作" +comment = "组动作中可使用'选取物品'来获取对应的物品. 区域内每个物品都会运行一次动作(包括隐藏物品,不包括物品栏中的物品). 等待不能在组动作中运行." +script_name = EnumItemsInRectBJ +category = TC_ITEM +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[EnumItemsInRectBJ] +title = "选取矩形区域内物品做动作" +description = "选取 ${矩形区域} 内所有物品 ${做动作}" +comment = "组动作中可使用'选取物品'来获取对应的物品. 区域内每个物品都会运行一次动作(包括隐藏物品,不包括单位身上的物品). 等待不能在组动作中运行." +category = TC_ITEM +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = code +default = "DoNothing" + +[YDWECreateItemPool] +title = "创建物品池 [YDWE]" +description = "新建一个物品池" +comment = "新建一个物品池,该物品池可以被<最后创建的物品池>获得。" +category = TC_ITEMPOOL +[[.args]] +type = nothing + +[ItemPoolAddItemType] +title = "添加物品类型 [R]" +description = "在 ${物品池} 中添加一个 ${物品} 比重为 ${数值}" +comment = "比重越高被选择的机率越大." +category = TC_ITEMPOOL +[[.args]] +type = itempool +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = real +default = "1" + +[ItemPoolRemoveItemType] +title = "删除物品类型 [R]" +description = "从 ${物品池} 中删除 ${物品}" +comment = "" +category = TC_ITEMPOOL +[[.args]] +type = itempool +[[.args]] +type = itemcode +default = "texp" + +[PlaceRandomItem] +title = "选择放置物品 [R]" +description = "从 ${物品池} 中任意选择一个物品并放置到( ${X} , ${Y} )点" +comment = "" +category = TC_ITEMPOOL +[[.args]] +type = itempool +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[YDWEPlaceRandomItem] +title = "选择放置物品 [YDWE]" +description = "从 ${物品池} 中选择一个物品并放置到点( ${X} , ${Y} ) " +comment = "该物品可以被<最后从物品池中取出的物品>获取。" +category = TC_ITEMPOOL +[[.args]] +type = itempool +default = "bj_lastCreatedItemPool" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[DestroyItemPool] +title = "删除物品池 [R]" +description = "删除 ${物品池}" +comment = "" +category = TC_ITEMPOOL +[[.args]] +type = itempool + +[ClearSelectionForPlayer] +title = "清空选择(指定玩家)" +description = "清空 ${Player} 的选择" +comment = "使玩家取消选择所有已选单位." +category = TC_UNITSEL +[[.args]] +type = player +default = "Player00" + +[SelectGroupForPlayerBJ] +title = "选择单位组(指定玩家)" +description = "选择 ${单位组} 对 ${Player}" +comment = "使玩家取消选择所有单位,并选择单位组中最多12个单位." +category = TC_UNITSEL +[[.args]] +type = group +[[.args]] +type = player +default = "Player00" + +[SelectUnitForPlayerSingle] +title = "选择单位(指定玩家)" +description = "选择 ${单位} 对 ${Player}" +comment = "使玩家取消选择所有单位,并选择该单位." +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[SelectUnitAddForPlayer] +title = "添加选择单位(指定玩家)" +description = "添加选择 ${单位} 对 ${Player}" +comment = "使玩家添加选择该单位." +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[SelectUnitRemoveForPlayer] +title = "取消选择单位(指定玩家)" +description = "取消选择 ${单位} 对 ${Player}" +comment = "使玩家取消选择该单位." +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[ClearSelection] +title = "清空选择(所有玩家)" +description = "清空所有玩家的选择" +comment = "使玩家取消选择所有已选单位." +category = TC_UNITSEL +[[.args]] +type = nothing + +[SelectGroupBJ] +title = "选择单位组(所有玩家)" +description = "命令所有玩家选择 ${单位组}" +comment = "使所有玩家取消选择所有单位,并选择单位组中最多12个单位." +category = TC_UNITSEL +[[.args]] +type = group + +[SelectUnitSingle] +title = "选择单位(所有玩家)" +description = "命令所有玩家选择 ${单位}" +comment = "使玩家取消选择所有已选单位,并选择该单位." +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SelectUnitAdd] +title = "添加选择单位(所有玩家)" +description = "命令所有玩家添加选择 ${单位}" +comment = "" +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SelectUnitRemove] +title = "取消选择单位(所有玩家)" +description = "命令所有玩家取消选择 ${单位}" +comment = "" +category = TC_UNITSEL +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SelectHeroSkill] +title = "学习技能" +description = "命令 ${Hero} 学习技能 ${Skill}" +comment = "只有当英雄有剩余技能点时有效." +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = heroskillcode +default = "HeroSkillBlizzard" + +[SetHeroLevelNT] +title = "提升等级 [R]" +description = "提升 ${Hero} 的英雄等级到 ${Level} , ${Show/Hide} 升级动画" +comment = "只能提升等级. 英雄经验将重置为该等级的初始值." +script_name = SetHeroLevel +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "2" +min = 1 +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[UnitStripHeroLevel] +title = "降低等级 [R]" +description = "降低 ${Hero} ${Level} 个等级" +comment = "只能降低等级. 英雄经验将重置为该等级的初始值." +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "1" +min = 1 + +[SetHeroLevel] +title = "设置等级" +description = "设置 ${Hero} 的英雄等级为 ${Level} , ${Show/Hide} 升级动画" +comment = "如果等级有变动,英雄经验将重置为该等级的初始值." +script_name = SetHeroLevelBJ +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "2" +min = 1 +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[SetHeroXP] +title = "设置经验值" +description = "设置 ${Hero} 的经验值为 ${Quantity} , ${Show/Hide} 升级动画" +comment = "经验值不能倒退." +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "4000" +min = 0 +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[AddHeroXP] +title = "增加经验值 [R]" +description = "增加 ${Hero} ${Quantity} 点经验值, ${Show/Hide} 升级动画" +comment = "经验值不能倒退." +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "1000" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[AddHeroXPSwapped] +title = "增加经验值" +description = "增加 ${Quantity} 经验值给 ${Hero} , ${Show/Hide} 升级动画" +comment = "经验值不能倒退." +category = TC_HERO +[[.args]] +type = integer +default = "1000" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[SuspendHeroXP] +title = "允许/禁止经验获取 [R]" +description = "${Enable/Disable} ${Hero} 的经验获取" +comment = "" +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = suspendresumeoption_R +default = "SuspendResumeSuspend_R" + +[SuspendHeroXPBJ] +title = "允许/禁止经验获取" +description = "${Enable/Disable} ${Hero} 的经验获取" +comment = "" +category = TC_HERO +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[SetPlayerHandicapXP] +title = "设置经验获得率 [R]" +description = "设置 ${Player} 的经验获得率为正常的 ${Value} 倍" +comment = "" +category = TC_HERO +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "1" +min = 0 + +[SetPlayerHandicapXPBJ] +title = "设置经验获得率" +description = "设置 ${Player} 的经验获得率为 ${Percent}%" +comment = "" +category = TC_HERO +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "100" +min = 0 + +[ReviveHero] +title = "立即复活(指定坐标) [R]" +description = "立即复活 ${英雄} 在(${X},${Y}), ${Show/Hide} 复活动画" +comment = "如果英雄正在祭坛复活,则会退回部分花费(默认为100%)." +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[ReviveHeroLoc] +title = "立即复活(指定点)" +description = "立即复活 ${英雄} 在 ${指定点} , ${Show/Hide} 复活动画" +comment = "如果英雄正在祭坛复活,则会退回部分花费(默认为100%)." +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = location +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[SetHeroStr] +title = "设置英雄力量 [R]" +description = "设置 ${英雄} 的力量为 ${Value} ,(${Permanent}永久奖励)" +comment = "永久奖励貌似无效项,不需要理会." +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = integer +default = "10" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetHeroAgi] +title = "设置英雄敏捷 [R]" +description = "设置 ${英雄} 的敏捷为 ${Value} ,(${Permanent}永久奖励)" +comment = "永久奖励貌似无效项,不需要理会." +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = integer +default = "10" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[SetHeroInt] +title = "设置英雄智力 [R]" +description = "设置 ${英雄} 的智力为 ${Value} ,(${Permanent}永久奖励)" +comment = "永久奖励貌似无效项,不需要理会." +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = integer +default = "10" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[ModifyHeroStat] +title = "修改英雄属性" +description = "修改 ${Attribute} 对 ${英雄} : ${Modify} ${Value} 点" +comment = "" +category = TC_HERO +[[.args]] +type = herostat +default = "HeroStatStr" +[[.args]] +type = unit +[[.args]] +type = modifymethod +default = "ModifyMethodAdd" +[[.args]] +type = integer +default = "10" + +[UnitModifySkillPoints] +title = "添加剩余技能点 [R]" +description = "增加 ${英雄} ${Value} 点剩余技能点" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = integer +default = "1" + +[ModifyHeroSkillPoints] +title = "修改剩余技能点" +description = "修改 ${英雄} 的剩余技能点: ${Modify} ${Value} 点" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = modifymethod +default = "ModifyMethodAdd" +[[.args]] +type = integer +default = "1" + +[SetReservedLocalHeroButtons] +title = "保留英雄图标" +description = "为玩家保留 ${Number} 个左上角英雄图标." +comment = "因为共享单位而被控制的其他玩家英雄的图标将在保留位置之后开始显示." +category = TC_HERO +[[.args]] +type = integer +default = "3" +min = 0 +max = 6 + +[UnitAddItem] +title = "给予物品 [R]" +description = "给予 ${单位} ${物品}" +comment = "" +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" + +[UnitAddItemSwapped] +title = "给予物品" +description = "把 ${物品} 给 ${单位}" +comment = "" +category = TC_HERO +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitAddItemByIdSwapped] +title = "创建物品给英雄" +description = "创建 ${物品类型} 给 ${单位}" +comment = "" +category = TC_HERO +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitAddItemToSlotById] +title = "新建物品到指定物品栏 [R]" +description = "给予 ${单位} ${物品类型} 并放在物品栏# ${数值}" +comment = "注意: 物品栏编号从0-5,而不是1-6. 该动作创建的物品不被'最后创建的物品'所记录." +category = TC_HERO +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = integer +default = "0" + +[UnitRemoveItemSwapped] +title = "丢弃物品(指定物品)" +description = "丢弃 ${物品} ,从 ${单位} 身上" +comment = "物品将被丢弃在英雄脚下." +category = TC_HERO +[[.args]] +type = item +[[.args]] +type = unit + +[UnitRemoveItemFromSlotSwapped] +title = "丢弃物品(指定物品栏)" +description = "丢弃物品栏中第 ${Index} 格的物品,从 ${单位} 身上" +comment = "如果物品存在则会被丢弃在英雄脚下." +category = TC_HERO +[[.args]] +type = integer +default = "1" +min = 1 +max = 6 +[[.args]] +type = unit + +[UnitUseItem] +title = "使用物品(无目标)" +description = "命令 ${单位} 使用 ${物品}" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = item +default = "GetLastCreatedItem" + +[UnitUseItemPoint] +title = "使用物品(指定坐标)" +description = "命令 ${单位} 使用 ${物品} ,目标坐标:(${X},${Y})" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[UnitUseItemPointLoc] +title = "使用物品(指定点)" +description = "命令 ${单位} 使用 ${物品} ,目标点: ${指定点}" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = location + +[UnitUseItemTarget] +title = "使用物品(对单位)" +description = "命令 ${单位} 使用 ${物品} ,目标: ${单位}" +comment = "" +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = unit + +[UnitUseItemDestructable] +title = "使用物品(对可破坏物)" +description = "命令 ${单位} 使用 ${物品} ,目标: ${可破坏物}" +comment = "" +script_name = UnitUseItemTarget +category = TC_HERO +[[.args]] +type = unit +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = destructable + +[DisplayTextToPlayer] +title = "对玩家显示文本消息(自动限时) [R]" +description = "对 ${玩家} 在屏幕位移(${X},${Y})处显示文本: ${文字}" +comment = "显示时间取决于文字长度. 位移的取值在0-1之间. 可使用'本地玩家'实现对所有玩家发送消息." +category = TC_GAME +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = StringExt + +[DisplayTimedTextToPlayer] +title = "对玩家显示文本消息(指定时间) [R]" +description = "对 ${玩家} 在屏幕位移(${X},${Y})处显示 ${时间} 秒的文本信息: ${文字}" +comment = "位移的取值在0-1之间. 可使用'本地玩家[R]'实现对所有玩家发送消息." +category = TC_GAME +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "30" +[[.args]] +type = StringExt + +[DisplayTextToForce] +title = "对玩家组显示文本消息(自动限时)" +description = "对 ${玩家组} 发送文本信息: ${文字}" +comment = "显示时间取决于文字长度." +category = TC_GAME +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = StringExt + +[DisplayTimedTextToForce] +title = "对玩家组显示文本消息(指定时间)" +description = "对 ${玩家组} 发送显示 ${Time} 秒的文本信息: ${文字}" +comment = "" +category = TC_GAME +[[.args]] +type = force +default = "GetPlayersAll" +[[.args]] +type = real +default = "30" +min = 0 +[[.args]] +type = StringExt + +[BJDebugMsg] +title = "显示Debug消息 [C]" +description = "显示Debug信息: ${文字}" +comment = "对玩家发送持续60秒的信息. 一般用于地图调试." +category = TC_GAME +[[.args]] +type = StringExt + +[ClearTextMessagesBJ] +title = "清空文本信息(指定玩家组)" +description = "清空 ${玩家组} 屏幕上的文本信息" +comment = "" +category = TC_GAME +[[.args]] +type = force +default = "GetPlayersAll" + +[ClearTextMessages] +title = "清空文本信息(所有玩家) [R]" +description = "清空玩家屏幕上的文本信息" +comment = "" +category = TC_GAME +[[.args]] +type = nothing + +[PauseGame] +title = "暂停/恢复游戏 [R]" +description = "${暂停/恢复} 游戏" +comment = "" +category = TC_GAME +[[.args]] +type = pauseresumeoption +default = "PauseResumePause" + +[PauseGameOn] +title = "暂停游戏" +description = "暂停游戏" +comment = "" +category = TC_GAME +[[.args]] +type = nothing + +[PauseGameOff] +title = "恢复游戏" +description = "恢复游戏" +comment = "" +category = TC_GAME +[[.args]] +type = nothing + +[SetGameSpeed] +title = "设定游戏速度" +description = "设定游戏速度为 ${Speed}" +comment = "你可以通过'游戏 - 锁定游戏速度'动作来锁定游戏速度." +category = TC_GAME +[[.args]] +type = gamespeed +default = "GameSpeedNormal" + +[LockGameSpeedBJ] +title = "锁定游戏速度" +description = "锁定游戏速度" +comment = "使用该动作后无法改变游戏速度." +category = TC_GAME +[[.args]] +type = nothing + +[UnlockGameSpeedBJ] +title = "解除锁定游戏速度" +description = "解除锁定游戏速度" +comment = "解除'游戏 - 锁定游戏速度'对游戏速度的锁定." +category = TC_GAME +[[.args]] +type = nothing + +[SetMapFlag] +title = "设置地图参数" +description = "设置 ${Map Flag} 为 ${On/Off}" +comment = "" +category = TC_GAME +[[.args]] +type = mapflag +default = "MapFlagUseHandicaps" +[[.args]] +type = onoffoption +default = "OnOffOn" + +[SetGameDifficulty] +title = "设置游戏难度 [R]" +description = "设置当前游戏难度为 ${GameDifficulty}" +comment = "游戏难度只是作为运行AI的一个参考值,没有AI的地图该功能无用." +category = TC_GAME +[[.args]] +type = gamedifficulty +default = "GameDifficultyNormal" + +[SetTimeOfDay] +title = "设置游戏时间" +description = "设置游戏时间为 ${Time}" +comment = "游戏时间采用24小时制." +category = TC_GAME +[[.args]] +type = real +default = "12" +min = 0 +max = 24 + +[SetTimeOfDayScale] +title = "设置昼夜时间流逝速度 [R]" +description = "设置昼夜时间流逝速度为默认值的 ${Value}倍" +comment = "设置100%来恢复正常值. 该值并不影响游戏速度." +category = TC_GAME +[[.args]] +type = real +default = "0" +min = 0 + +[SetTimeOfDayScalePercentBJ] +title = "设置昼夜时间流逝速度" +description = "设置昼夜时间流逝速度为默认值的 ${Percent}%" +comment = "设置100%来恢复正常值. 该值并不影响游戏速度." +category = TC_GAME +[[.args]] +type = real +default = "0" +min = 0 + +[UseTimeOfDayBJ] +title = "开启/关闭 昼夜交替" +description = "${On/Off} 昼夜交替" +comment = "" +category = TC_GAME +[[.args]] +type = onoffoption +default = "OnOffOff" + +[DoNotSaveReplay] +title = "关闭游戏录像功能 [R]" +description = "关闭游戏录像功能" +comment = "游戏结束时不保存游戏录像." +category = TC_GAME + +[Cheat] +title = "输入作弊码 [R]" +description = "输入作弊码: ${String}" +comment = "作弊码只在单机有效." +category = TC_GAME +[[.args]] +type = string +default = "\"greedisgood 999999\"" + +[ShareEverythingWithTeam] +title = "共享视野和完全控制权" +description = "设置 ${Player} 对盟友共享视野和完全控制权" +comment = "当玩家互相为盟友时才有效. 同时玩家也会获得其盟友的单位控制权." +category = TC_GAME +[[.args]] +type = player +default = "Player00" + +[MakeUnitsPassiveForPlayer] +title = "设置玩家单位为中立受害单位" +description = "改变 ${Player} 所有单位为中立受害单位" +comment = "默认状态中立受害受所有玩家欺凌而不抵抗." +category = TC_GAME +[[.args]] +type = player +default = "Player00" + +[CustomVictoryBJ] +title = "游戏胜利" +description = "设置 ${Player} 胜利(${Show/Skip} 胜利对话框, ${Show/Skip} 计分屏)" +comment = "" +category = TC_GAME +[[.args]] +type = player +default = "Player00" +[[.args]] +type = useskipoption +default = "UseSkipOptionUse" +[[.args]] +type = useskipoption +default = "UseSkipOptionUse" + +[CustomDefeatBJ] +title = "游戏失败" +description = "设置 ${Player} 失败并显示失败信息: ${文字}" +comment = "" +category = TC_GAME +[[.args]] +type = player +default = "Player00" +[[.args]] +type = StringExt +default = "WESTRING_PEVENT_DEFEAT_MSG" + +[SetNextLevelBJ] +title = "设置下一关卡" +description = "设置下一关卡为 ${Level}" +comment = "设置游戏结束后的下一关卡." +category = TC_GAME +[[.args]] +type = string +default = "\"Maps\\MapName.w3m\"" + +[ChangeLevel] +title = "切换关卡 [R]" +description = "切换到关卡: ${Filename} (${Show/Skip} 计分屏)" +comment = "" +category = TC_GAME +[[.args]] +type = anyfile +default = "\"LoadFile.w3z\"" +[[.args]] +type = useskipoption +default = "UseSkipOptionSkip" + +[SaveGame] +title = "保存进度 [R]" +description = "保存游戏进度为: ${Filename}" +comment = "" +category = TC_GAME +[[.args]] +type = anyfile +default = "\"SaveFile.w3z\"" + +[LoadGameBJ] +title = "读取进度" +description = "读取游戏进度 ${Filename} (${Show/Skip} 计分屏)" +comment = "" +script_name = LoadGame +category = TC_GAME +[[.args]] +type = anyfile +default = "\"LoadFile.w3z\"" +[[.args]] +type = useskipoption +default = "UseSkipOptionSkip" + +[SaveAndLoadGameBJ] +title = "保存并读取进度" +description = "保存游戏进度为: ${Filename} 并读取进度: ${Filename} (${Show/Skip} 计分屏)" +comment = "" +category = TC_GAME +[[.args]] +type = anyfile +default = "\"SaveFile.w3z\"" +[[.args]] +type = anyfile +default = "\"LoadFile.w3z\"" +[[.args]] +type = useskipoption +default = "UseSkipOptionSkip" + +[SaveAndChangeLevelBJ] +title = "保存并切换关卡" +description = "保存游戏进度为: ${Filename} 并切换到关卡: ${Filename} (${Show/Skip} 计分屏)" +comment = "" +category = TC_GAME +[[.args]] +type = anyfile +default = "\"SaveFile.w3z\"" +[[.args]] +type = anyfile +default = "\"Maps\\MapName.w3x\"" +[[.args]] +type = useskipoption +default = "UseSkipOptionSkip" + +[RenameSaveDirectoryBJ] +title = "重命名存档文件夹" +description = "更改 ${源文件夹} 的名字为 ${目标文件夹}" +comment = "" +script_name = RenameSaveDirectory +category = TC_GAME +[[.args]] +type = anyfile +[[.args]] +type = anyfile + +[RemoveSaveDirectoryBJ] +title = "删除存档文件夹" +description = "删除 ${文件夹}" +comment = "文件夹内的内容都会被删除." +script_name = RemoveSaveDirectory +category = TC_GAME +[[.args]] +type = anyfile + +[CopySaveGameBJ] +title = "复制存档文件" +description = "复制 ${源文件} 并保存为 ${目标文件}" +comment = "该动作只在响应'保存/读取进度'时有效,每个事件中最多能用16次." +script_name = CopySaveGame +category = TC_GAME +[[.args]] +type = anyfile +[[.args]] +type = anyfile + +[SetCampaignMenuRaceBJ] +title = "设置战役背景" +description = "设置战役背景为 ${Campaign}" +comment = "" +category = TC_GAME +[[.args]] +type = campaignindex +default = "CampaignIndexH" + +[SetMissionAvailableBJ] +title = "允许/禁止 关卡" +description = "${Enable/Disable} ${Mission}" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = missionindex +default = "MissionIndexH01" + +[SetCampaignAvailableBJ] +title = "允许/禁止 战役" +description = "${Enable/Disable} ${Campaign}" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = campaignindex +default = "CampaignIndexH" + +[SetCinematicAvailableBJ] +title = "允许/禁止 开场电影" +description = "${Enable/Disable} ${Cinematic}" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = cinematicindex +default = "CinematicIndexHED" + +[ShowCustomCampaignButton] +title = "显示/隐藏 自定义战役按钮" +description = "${Show/Hide} 自定义战役按钮 #${Number}" +comment = "" +category = TC_GAME +[[.args]] +type = showhideoption +default = "ShowHideShow" +[[.args]] +type = integer +default = "1" +min = 1 + +[DisableRestartMission] +title = "禁用 重新开始任务按钮" +description = "设置 重新开始任务按钮可以点击为 ${}" +comment = "当单人游戏时,可以设置重新开始任务按钮能否允许点击。" +category = TC_GAME +[[.args]] +type = boolean +default = "false" + +[SetAllyColorFilterState] +title = "设置联盟颜色显示" +description = "设置联盟颜色显示状态为 ${State}" +comment = "0为不开启. 1为小地图显示. 2为小地图和游戏都显示. 相当于游戏中Alt+A功能." +category = TC_GAME +[[.args]] +type = integer +default = "0" +min = 0 +max = 2 + +[SetCreepCampFilterState] +title = "设置小地图中立生物显示" +description = "小地图 ${Show/Hide} 中立生物" +comment = "相当于游戏中Alt+R功能." +category = TC_GAME +[[.args]] +type = showhideoption +default = "ShowHideHide" + +[EnableMinimapFilterButtons] +title = "允许/禁用小地图按钮" +description = "${Enable/Disable} 联盟颜色显示按钮, ${Enable/Disable} 中立生物显示按钮" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[EnableSelect] +title = "允许/禁用选择" +description = "${Enable/Disable} 选择和取消选择功能 (${Enable/Disable} 显示选择圈)" +comment = "禁用选择后仍可以通过触发来选择物体. 只有允许选择功能时才会显示选择圈." +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[EnableDragSelect] +title = "允许/禁用框选" +description = "${Enable/Disable} 框选功能 (${Enable/Disable} 显示选择框)" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[EnablePreSelect] +title = "允许/禁用预选" +description = "${Enable/Disable} 预选功能 (${Enable/Disable} 显示预选圈,生命槽,物体信息)" +comment = "" +category = TC_GAME +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" + +[ForceUIKeyBJ] +title = "强制按键" +description = "命令 ${Player} 按下 ${Key} 键" +comment = "" +category = TC_GAME +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +default = "\"A\"" + +[ForceUICancelBJ] +title = "强制按Esc键" +description = "命令 ${Player} 按下Esc键" +comment = "" +category = TC_GAME +[[.args]] +type = player +default = "Player00" + +[Preload] +title = "预载文件" +description = "预载 ${文件}" +comment = "可以事先载入文件并调入到游戏内存,以加快游戏的速度." +category = TC_GAME +[[.args]] +type = anyfile + +[PreloadEnd] +title = "开始预载" +description = "开始预载, 超时设置 ${Time} 秒" +comment = "将文件调入到游戏内存中." +category = TC_GAME +[[.args]] +type = real +default = "0.5" + +[Preloader] +title = "批量预载" +description = "预载所有在 ${文件} 中列出的文件" +comment = "" +category = TC_GAME +[[.args]] +type = preloadfile + +[InitGameCacheBJ] +title = "创建游戏缓存" +description = "创建游戏缓存,使用文件名: ${Filename}" +comment = "" +category = TC_GAMECACHE +[[.args]] +type = string +default = "\"MapName.w3v\"" + +[SaveGameCacheBJ] +title = "本地保存游戏缓存" +description = "保存 ${Game Cache} 到本地硬盘" +comment = "只对单机游戏有效,保存缓存数据到本地硬盘,主要用来实现战役关卡间的数据传递." +script_name = SaveGameCache +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[StoreUnitBJ] +title = "记录单位" +description = "记录 ${单位} ,使用名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache}" +comment = "使用'游戏缓存 - 读取单位'来读取该数值. 名称和类别名不能包含空格." +category = TC_GAMECACHE +[[.args]] +type = unit +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[StoreReal] +title = "记录实数" +description = "缓存: ${Game Cache} 类别名: ${Category} 使用名称: ${文字} 记录: ${实数}" +comment = "使用'游戏缓存 - 读取实数'来读取该数值. 名称和类别名不能包含空格." +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string +[[.args]] +type = real + +[StoreInteger] +title = "记录整数" +description = "缓存: ${Game Cache} 类别名: ${Category} 使用名称: ${文字} 记录: ${整数}" +comment = "使用'游戏缓存 - 读取整数'来读取该数值. 名称和类别名不能包含空格." +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +[[.args]] +type = string +[[.args]] +type = integer + +[StoreBoolean] +title = "记录布尔值" +description = "缓存: ${Game Cache} 类别名: ${Category} 使用名称: ${文字} 记录: ${布尔值}" +comment = "使用'游戏缓存 - 读取布尔值'来读取该值. 名称和类别名不能包含空格." +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string +[[.args]] +type = boolean + +[StoreString] +title = "记录字符串" +description = "缓存: ${Game Cache} 类别名: ${Category} 使用名称: ${文字} 记录: ${字符串}" +comment = "使用'游戏缓存 - 读取字符串'来读取该值. 名称和类别名不能包含空格." +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string +[[.args]] +type = string + +[RestoreUnitLocFacingAngleBJ] +title = "读取单位(面向角度)" +description = "从缓存读取单位, 名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache} ,所属玩家: ${Player} 创建点: ${点} 面向角度: ${Angle}" +comment = "使用'最后读取的单位'来获取该单位. 如果不存在该缓存数据,则'最后读取的单位'将被设为null." +category = TC_GAMECACHE +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = degree +default = "0" + +[RestoreUnitLocFacingPointBJ] +title = "读取单位(面向点)" +description = "从缓存读取单位, 名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache} ,所属玩家: ${Player} 创建点: ${点} 面向: ${指定点}" +comment = "使用'最后读取的单位'来获取该单位. 如果不存在该缓存数据,则'最后读取的单位'将被设为null." +category = TC_GAMECACHE +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = location + +[ReloadGameCachesFromDisk] +title = "读取本地缓存数据" +description = "从本地硬盘读取缓存数据" +comment = "只对单机游戏有效,从本地硬盘读取缓存数据,主要用来实现战役关卡间的数据传递." +category = TC_GAMECACHE +[[.args]] +type = nothing + +[FlushGameCacheBJ] +title = "删除缓存" +description = "删除 ${GameCache}" +comment = "删除并清空该缓存的所有数据." +script_name = FlushGameCache +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[FlushStoredMission] +title = "删除类别" +description = "删除缓存 ${GameCache} 中 ${Category} 类别" +comment = "清空该类别下的所有缓存数据." +category = TC_GAMECACHE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" + +[InitHashtableBJ] +title = "<1.24> 新建哈希表" +description = "创建一个新的哈希表" +comment = "您可以使用哈希表来储存临时数据" +category = TC_HASHTABLE + +[InitHashtable] +title = "<1.24> 新建哈希表 [C]" +description = "创建一个新的哈希表" +comment = "您可以使用哈希表来储存临时数据" +category = TC_HASHTABLE + +[SaveRealBJ] +title = "<1.24> 保存实数" +description = "保存实数 ${Value} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取实数' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = real +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveReal] +title = "<1.24> 保存实数 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存实数 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取实数' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = real + +[SaveIntegerBJ] +title = "<1.24> 保存整数" +description = "保存整数 ${Value} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取整数' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveInteger] +title = "<1.24> 保存整数 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存整数 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取整数' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[SaveBooleanBJ] +title = "<1.24> 保存布尔" +description = "保存布尔 ${Value} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取布尔' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = boolean +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveBoolean] +title = "<1.24> 保存布尔 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存布尔 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取布尔' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = boolean + +[SaveStringBJ] +title = "<1.24> 保存字符串" +description = "保存字符串 ${Value} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取字符串' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = string +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveStr] +title = "<1.24> 保存字符串 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存字符串 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取字符串' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = string + +[SaveAgentHandle] +title = "<1.24> 保存实体对象 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存对象 ${Value}" +comment = "实体对象即一切需要计算变量连接数的对象" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = agent + +[SavePlayerHandleBJ] +title = "<1.24> 保存玩家" +description = "保存玩家 ${Player} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取玩家' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = player +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SavePlayerHandle] +title = "<1.24> 保存玩家 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存玩家 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取玩家' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = player + +[SaveDestructableHandleBJ] +title = "<1.24> 保存可破坏物" +description = "保存可破坏物 ${Destructable} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取可破坏物' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = destructable +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveDestructableHandle] +title = "<1.24> 保存可破坏物 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存可破坏物 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取可破坏物' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = destructable + +[SaveItemHandleBJ] +title = "<1.24> 保存物品" +description = "保存物品 ${Item} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取物品' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = item +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveItemHandle] +title = "<1.24> 保存物品 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存物品 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取物品' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = item + +[SaveUnitHandleBJ] +title = "<1.24> 保存单位" +description = "保存单位 ${Unit} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取单位' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = unit +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveUnitHandle] +title = "<1.24> 保存单位 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存单位 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取单位' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = unit + +[YDWESaveAbilityHandleBJ] +title = "<1.24> 保存技能" +description = "保存技能 ${Ability} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取技能' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = abilcode +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[YDWESaveAbilityHandle] +title = "<1.24> 保存技能 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存技能 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取技能' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "1" +[[.args]] +type = abilcode + +[SaveTimerHandleBJ] +title = "<1.24> 保存计时器" +description = "保存计时器 ${Timer} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取计时器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = timer +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTimerHandle] +title = "<1.24> 保存计时器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存计时器 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取计时器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = timer + +[SaveTriggerHandleBJ] +title = "<1.24> 保存触发器" +description = "保存触发器 ${Trigger} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取触发器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = trigger +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTriggerHandle] +title = "<1.24> 保存触发器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存触发器 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取触发器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = trigger + +[SaveTriggerConditionHandleBJ] +title = "<1.24> 保存触发条件" +description = "保存触发条件 ${Triggercondition} 在子索引 ${Value} of ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取触发条件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = triggercondition +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTriggerConditionHandle] +title = "<1.24> 保存触发条件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存触发条件 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取触发条件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = triggercondition + +[SaveTriggerActionHandleBJ] +title = "<1.24> 保存触发动作" +description = "保存触发动作 ${Triggeraction} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取触发动作' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = triggeraction +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTriggerActionHandle] +title = "<1.24> 保存触发动作 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存触发动作 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取触发动作' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = triggeraction + +[SaveTriggerEventHandleBJ] +title = "<1.24> 保存触发事件" +description = "保存触发事件 ${Event} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取触发事件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = event +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTriggerEventHandle] +title = "<1.24> 保存触发事件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存触发事件 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取触发事件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = event + +[SaveForceHandleBJ] +title = "<1.24> 保存玩家组" +description = "保存玩家组 ${Force} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取玩家组' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = force +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveForceHandle] +title = "<1.24> 保存玩家组 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存玩家组 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取玩家组' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = force + +[SaveGroupHandleBJ] +title = "<1.24> 保存单位组" +description = "保存单位组${Group} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取单位组' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = group +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveGroupHandle] +title = "<1.24> 保存单位组 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存单位组 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取单位组' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = group + +[SaveLocationHandleBJ] +title = "<1.24> 保存点" +description = "保存点 ${Location} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取点' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = location +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveLocationHandle] +title = "<1.24> 保存点 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存点 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取点' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = location + +[SaveRegionHandleBJ] +title = "<1.24> 保存区域(不规则)" +description = "保存区域(不规则) ${Region} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取区域(不规则)' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = region +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveRegionHandle] +title = "<1.24> 保存区域(不规则) [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存区域(不规则) ${Value}" +comment = "使用 '哈希表 - 从哈希表提取区域(不规则)' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = region + +[SaveRectHandleBJ] +title = "<1.24> 保存区域(矩型)" +description = "保存区域(矩型) ${Rect} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取区域(矩型)' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = rect +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveRectHandle] +title = "<1.24> 保存区域(矩型) [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存区域(矩型) ${Value}" +comment = "使用 '哈希表 - 从哈希表提取区域(矩型)' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = rect + +[SaveBooleanExprHandleBJ] +title = "<1.24> 保存布尔表达式" +description = "保存布尔表达式 ${Boolexpr} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取布尔表达式' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = boolexpr +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveBooleanExprHandle] +title = "<1.24> 保存布尔表达式 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存布尔表达式 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取布尔表达式' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = boolexpr + +[SaveSoundHandleBJ] +title = "<1.24> 保存音效" +description = "保存音效 ${Sound} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取音效' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = sound +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveSoundHandle] +title = "<1.24> 保存音效 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存音效 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取音效' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = sound + +[SaveEffectHandleBJ] +title = "<1.24> 保存特效" +description = "保存特效${Effect} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取特效' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = effect +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveEffectHandle] +title = "<1.24> 保存特效 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存特效 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取特效' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = effect + +[SaveUnitPoolHandleBJ] +title = "<1.24> 保存单位池" +description = "保存单位池 ${Unitpool} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取单位池' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = unitpool +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveUnitPoolHandle] +title = "<1.24> 保存单位池 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存单位池 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取单位池' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = unitpool + +[SaveItemPoolHandleBJ] +title = "<1.24> 保存物品池" +description = "保存物品池 ${Itempool} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取物品池' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = itempool +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveItemPoolHandle] +title = "<1.24> 保存物品池 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存物品池 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取物品池' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = itempool + +[SaveQuestHandleBJ] +title = "<1.24> 保存任务" +description = "保存任务 ${Quest} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取任务' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = quest +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveQuestHandle] +title = "<1.24> 保存任务 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存任务 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取任务' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = quest + +[SaveQuestItemHandleBJ] +title = "<1.24> 保存任务要求" +description = "保存任务要求 ${Questitem} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取任务要求' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = questitem +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveQuestItemHandle] +title = "<1.24> 保存任务要求 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存任务要求 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取任务要求' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = questitem + +[SaveDefeatConditionHandleBJ] +title = "<1.24> 保存失败条件" +description = "保存失败条件 ${Defeatcondition} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取失败条件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = defeatcondition +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveDefeatConditionHandle] +title = "<1.24> 保存失败条件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存失败条件 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取失败条件' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = defeatcondition + +[SaveTimerDialogHandleBJ] +title = "<1.24> 保存计时器窗口" +description = "保存计时器窗口 ${Timerdialog} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取计时器窗口' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = timerdialog +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTimerDialogHandle] +title = "<1.24> 保存计时器窗口 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存计时器窗口 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取计时器窗口' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = timerdialog + +[SaveLeaderboardHandleBJ] +title = "<1.24> 保存排行榜" +description = "保存排行榜 ${Leaderboard} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取排行榜' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = leaderboard +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveLeaderboardHandle] +title = "<1.24> 保存排行榜 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存排行榜 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取排行榜' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = leaderboard + +[SaveMultiboardHandleBJ] +title = "<1.24> 保存多面板" +description = "保存多面板 ${Multiboard} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取多面板' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = multiboard +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveMultiboardHandle] +title = "<1.24> 保存多面板 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存多面板 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取多面板' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = multiboard + +[SaveMultiboardItemHandleBJ] +title = "<1.24> 保存多面板项目" +description = "保存多面板项目 ${Multiboarditem} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取多面板项目' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = multiboarditem +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveMultiboardItemHandle] +title = "<1.24> 保存多面板项目 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存多面板项目 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取多面板项目' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = multiboarditem + +[SaveTrackableHandleBJ] +title = "<1.24> 保存可追踪物" +description = "保存可追踪物 ${Trackable} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取可追踪物' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = trackable +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTrackableHandle] +title = "<1.24> 保存可追踪物 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存可追踪物 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取可追踪物' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = trackable + +[SaveDialogHandleBJ] +title = "<1.24> 保存对话框" +description = "保存对话框 ${Dialog} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取对话框' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = dialog +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveDialogHandle] +title = "<1.24> 保存对话框 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存对话框 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取对话框' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = dialog + +[SaveButtonHandleBJ] +title = "<1.24> 保存对话框按钮" +description = "保存对话框按钮 ${Button} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取对话框按钮' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = button +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveButtonHandle] +title = "<1.24> 保存对话框按钮 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存对话框按钮 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取对话框按钮' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = button + +[SaveTextTagHandleBJ] +title = "<1.24> 保存漂浮文字" +description = "保存漂浮文字 ${Texttag} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取漂浮文字' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = texttag +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveTextTagHandle] +title = "<1.24> 保存漂浮文字 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存漂浮文字 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取漂浮文字' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = texttag + +[SaveLightningHandleBJ] +title = "<1.24> 保存闪电效果" +description = "保存闪电效果 ${Lightning} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取闪电效果' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = lightning +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveLightningHandle] +title = "<1.24> 保存闪电效果 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存闪电效果 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取闪电效果' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = lightning + +[SaveImageHandleBJ] +title = "<1.24> 保存图像" +description = "保存图像 ${Image} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取图像' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = image +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveImageHandle] +title = "<1.24> 保存图像 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存图像 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取图像' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = image + +[SaveUbersplatHandleBJ] +title = "<1.24> 保存地面纹理变化" +description = "保存地面纹理变化 ${Ubersplat} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取地面纹理变化' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = ubersplat +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveUbersplatHandle] +title = "<1.24> 保存地面纹理变化 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存地面纹理变化 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取地面纹理变化' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = ubersplat + +[SaveFogStateHandleBJ] +title = "<1.24> 保存迷雾状态" +description = "保存迷雾状态 ${Fogstate} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取迷雾状态' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = fogstate +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveFogStateHandle] +title = "<1.24> 保存迷雾状态 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存迷雾状态 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取迷雾状态' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = fogstate + +[SaveFogModifierHandleBJ] +title = "<1.24> 保存可见度修正器" +description = "保存可见度修正器 ${Fogmodifier} 在子索引 ${Value} 主索引 ${Value} 位于 ${Hashtable} 之内" +comment = "使用 '哈希表 - 从哈希表提取可见度修正器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = fogmodifier +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[SaveFogModifierHandle] +title = "<1.24> 保存可见度修正器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存可见度修正器 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取可见度修正器' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = fogmodifier + +[SaveHashtableHandle] +title = "<1.24> 保存哈希表 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 中保存哈希表 ${Value}" +comment = "使用 '哈希表 - 从哈希表提取哈希表' 可以取出保存的值" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "bj_lastCreatedHashtable" + +[FlushParentHashtableBJ] +title = "<1.24> 清空哈希表" +description = "<1.24> 清空 ${Hashtable}" +comment = "清空哈希表所有数据" +script_name = FlushParentHashtable +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[FlushParentHashtable] +title = "<1.24> 清空哈希表 [C]" +description = "清空 ${Hashtable}" +comment = "清空哈希表所有数据" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[FlushChildHashtableBJ] +title = "<1.24> 清空哈希表主索引" +description = "<1.24> 清空 ${Value} 位于 ${Hashtable} 之内" +comment = "清空哈希表主索引下的所有数据" +category = TC_HASHTABLE +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[FlushChildHashtable] +title = "<1.24> 清空哈希表主索引 [C]" +description = "清空 ${Hashtable} 中位于主索引 ${Value} 之内的所有数据" +comment = "清空哈希表主索引下的所有数据" +category = TC_HASHTABLE +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer + +[AddResourceAmountBJ] +title = "增加黄金储量" +description = "增加 ${Quantity} 黄金储量给 ${金矿}" +comment = "使用负数来减少黄金储量." +category = TC_NEUTRALBUILDING +[[.args]] +type = integer +default = "5000" +[[.args]] +type = unit + +[SetResourceAmount] +title = "设置黄金储量" +description = "设置 ${金矿} 的黄金储量为 ${Quantity}" +comment = "" +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +[[.args]] +type = integer +default = "12500" +min = 0 + +[BlightGoldMineForPlayer] +title = "创建不死族金矿(立即)" +description = "将 ${金矿} 变为 ${Player} 的不死族金矿" +comment = "金矿的储金量不会改变." +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +[[.args]] +type = player +default = "Player00" + +[WaygateActivateBJ] +title = "启用/禁用 传送门" +description = "${Enable/Disable} ${传送门}" +comment = "" +category = TC_NEUTRALBUILDING +[[.args]] +type = enabledisableoption +default = "EnableDisableEnable" +[[.args]] +type = unit + +[WaygateSetDestination] +title = "设置传送门目的坐标 [R]" +description = "设置 ${传送门} 的目的地为(${X},${Y})" +comment = "" +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[WaygateSetDestinationLocBJ] +title = "设置传送门目的点" +description = "设置 ${传送门} 的目的地为 ${Target}" +comment = "" +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +[[.args]] +type = location + +[SetAltMinimapIcon] +title = "设置小地图特殊标志" +description = "设置小地图特殊标志为 ${Image}" +comment = "必须使用16x16的图像." +category = TC_NEUTRALBUILDING +[[.args]] +type = imagefile +default = "\"UI\\Minimap\\Minimap-Tower\"" + +[UnitSetUsesAltIconBJ] +title = "开启/关闭 小地图特殊标志" +description = "${On/Off} ${单位} 的小地图特殊标志" +comment = "使用'中立建筑 - 设置小地图特殊标志'动作来设置显示的标志. 默认为中立建筑标志." +category = TC_NEUTRALBUILDING +[[.args]] +type = onoffoption +default = "OnOffOn" +[[.args]] +type = unit + +[AddItemToStockBJ] +title = "添加物品(指定市场)" +description = "添加 ${物品类型} 到 ${Marketplace} 并设置库存量: ${Count} 最大库存量: ${Max}" +comment = "只影响有'出售物品'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "1" + +[AddItemToAllStock] +title = "添加物品(所有市场)" +description = "添加 ${物品类型} 到所有市场并设置库存量: ${Count} 最大库存量: ${Max}" +comment = "影响所有拥有'出售物品'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "1" + +[AddUnitToStockBJ] +title = "添加单位(指定市场)" +description = "添加 ${单位类型} 到 ${Marketplace} 并设置库存量: ${Count} 最大库存量: ${Max}" +comment = "只影响有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "1" + +[AddUnitToAllStock] +title = "添加单位(所有市场)" +description = "添加 ${单位类型} 到所有市场并设置库存量: ${Count} 最大库存量: ${Max}" +comment = "影响所有拥有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "1" + +[RemoveItemFromStockBJ] +title = "删除物品(指定市场)" +description = "删除 ${物品类型} 从 ${Marketplace}" +comment = "只影响有'出售物品'技能的单位" +category = TC_NEUTRALBUILDING +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[RemoveItemFromAllStock] +title = "删除物品(所有市场)" +description = "删除 ${物品类型} 从所有市场" +comment = "影响所有拥有'出售物品'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = itemcode +default = "texp" + +[RemoveUnitFromStockBJ] +title = "删除单位(指定市场)" +description = "删除 ${单位类型} 从 ${Marketplace}" +comment = "只影响有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[RemoveUnitFromAllStock] +title = "删除单位(所有市场)" +description = "删除 ${单位类型} 从所有市场" +comment = "影响所有拥有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unitcode +default = "hfoo" + +[SetItemTypeSlots] +title = "限制物品种类(指定市场)" +description = "限制 ${Marketplace} 的可出售物品种类数为 ${Quantity}" +comment = "只影响有'出售物品'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "6" + +[SetAllItemTypeSlots] +title = "限制物品种类(所有市场)" +description = "限制所有市场的可出售物品种类数为 ${Quantity}" +comment = "影响所有拥有'出售物品'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = integer +default = "6" + +[SetUnitTypeSlots] +title = "限制单位种类(指定市场)" +description = "限制 ${Marketplace} 的可出售单位种类数为 ${Quantity}" +comment = "只影响有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = integer +default = "6" + +[SetAllUnitTypeSlots] +title = "限制单位种类(所有市场)" +description = "限制所有市场的可出售单位种类数为 ${Quantity}" +comment = "影响所有拥有'出售单位'技能的单位." +category = TC_NEUTRALBUILDING +[[.args]] +type = integer +default = "6" + +[YDWEMemoryLeakHelperMapIsOpenMemoryLeakHelper] +title = "自动排泄系统-开启系统自动排泄功能" +description = "设置系统自动排泄功能开启 ${false}" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = boolean +default = "false" + +[YDWEMemoryLeakHelperDisplayLeaks] +title = "自动排泄系统-显示泄露" +description = "显示点、单位组和特效泄露的数目" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = nothing + +[YDWEMemoryLeakHelperProtectLastCaughtHandle] +title = "自动排泄系统-保护最后生成的句柄" +description = "保护最后生成的点、单位组和特效句柄,使其不被系统自动清除" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = nothing + +[YDWEMemoryLeakHelperProtectLocation] +title = "自动排泄系统-保护-点" +description = "保护点 ${点},使其不被系统自动清除" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = location + +[YDWEMemoryLeakHelperProtectGroup] +title = "自动排泄系统-保护-单位组" +description = "保护单位组 ${单位组},使其不被系统自动清除" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = group + +[YDWEMemoryLeakHelperProtectEffect] +title = "自动排泄系统-保护-特效" +description = "保护特效 ${特效},使其不被系统自动清除" +comment = "自动排泄系统从收集到的反馈来看不是很理想,请尽量不要使用它。" +category = TC_YDHIDE +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[StoreRealBJ] +title = "记录实数" +description = "记录 ${实数} ,使用名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +[[.args]] +type = real +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[StoreIntegerBJ] +title = "记录整数" +description = "记录 ${整数} ,使用名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +[[.args]] +type = integer +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[StoreBooleanBJ] +title = "记录布尔值" +description = "记录 ${布尔值} ,使用名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +[[.args]] +type = boolean +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[StoreStringBJ] +title = "记录字符串" +description = "记录 ${字符串} ,使用名称: ${文字} 类别名: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +[[.args]] +type = string +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[FlushGameCache] +title = "删除缓存 [C]" +description = "删除 ${GameCache}" +comment = "删除并清空该缓存的所有数据.和原版UI完全一致,但却不能兼容原版UI,它的存在完全是在添乱啊" +script_name = FlushGameCache +category = TC_YDHIDE +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[FlushStoredMissionBJ] +title = "删除类别" +description = "删除类别 ${Category} 在缓存 ${GameCache} 中" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[YDWESetAttackDamageWeaponType] +title = "设置默认攻击|伤害|武器类型 [YDWE]" +description = "设置默认攻击类型为 ${攻击类型},伤害类型为 ${伤害类型},武器类型为 ${武器类型}" +comment = "设置一些技能(如钩子、月神箭)需要用到的攻击|伤害|武器类型,系统会按设置的攻击|伤害|武器类型对目标造成伤害。" +category = TC_UNIT +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" diff --git a/share/mpq/ydwe/call.txt b/share/mpq/ydwe/call.txt new file mode 100644 index 0000000..fb9343f --- /dev/null +++ b/share/mpq/ydwe/call.txt @@ -0,0 +1,9902 @@ +[R2I] +title = "转换实数为整数" +description = "转换 ${Real} 为整数" +comment = "舍弃小数部分." +category = TC_CONV +returns = integer +[[.args]] +type = real +default = "GetUnitStateSwap" + +[S2I] +title = "转换字符串为整数" +description = "转换 ${String} 为整数" +comment = "" +category = TC_CONV +returns = integer +[[.args]] +type = string +default = "GetEventPlayerChatString" + +[I2R] +title = "转换整数为实数" +description = "转换 ${Integer} 为实数" +comment = "" +category = TC_CONV +returns = real +[[.args]] +type = integer +default = "GetUnitPointValueByType" + +[S2R] +title = "转换字符串为实数" +description = "转换 ${String} 为实数" +comment = "" +category = TC_CONV +returns = real +[[.args]] +type = string +default = "GetEventPlayerChatString" + +[Deg2Rad] +title = "转换角度为弧度" +description = "转换角度 ${Degrees} 为弧度" +comment = "" +category = TC_CONV +returns = radian +[[.args]] +type = degree +default = "0" + +[Rad2Deg] +title = "转换弧度为角度" +description = "转换弧度 ${Radians} 为角度" +comment = "" +category = TC_CONV +returns = degree +[[.args]] +type = radian +default = "0" + +[YDWEDeg2R] +title = "转换角度为实数" +description = "转换角度 ${Degrees} 为实数" +comment = "" +category = TC_CONV +returns = real +[[.args]] +type = degree + +[YDWERad2R] +title = "转换弧度为实数" +description = "转换弧度 ${Radians} 为实数" +comment = "" +category = TC_CONV +returns = real +[[.args]] +type = radian + +[YDWER2Deg] +title = "转换实数为角度" +description = "转换实数 ${Real} 为角度" +comment = "" +category = TC_CONV +returns = degree +[[.args]] +type = real + +[YDWER2Rad] +title = "转换实数为弧度" +description = "转换实数 ${Real} 为弧度" +comment = "" +category = TC_CONV +returns = radian +[[.args]] +type = real + +[I2S] +title = "转换整数为字符串" +description = "转换 ${Integer} 为字符串" +comment = "" +category = TC_CONV +returns = string +[[.args]] +type = integer +default = "GetConvertedPlayerId" + +[R2S] +title = "转换实数为字符串" +description = "转换 ${Real} 为字符串" +comment = "" +category = TC_CONV +returns = string +[[.args]] +type = real +default = "GetUnitStateSwap" + +[R2SW] +title = "格式转换实数为字符串" +description = "转换 ${Real} 为字符串,最小宽度: ${Width} ,小数位数: ${Precision}" +comment = "如: 转换(1.234, 7, 2)后为'' 1.23''. 转换(1.234, 2, 5)后为''1.23400''." +category = TC_CONV +returns = string +[[.args]] +type = real +default = "GetUnitStateSwap" +[[.args]] +type = integer +default = "1" +min = 0 +[[.args]] +type = integer +default = "2" +min = 0 + +[OperatorIntegerAdd] +title = "加 < ﹢ > [New!]" +description = "${整数} + ${整数}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[OperatorIntegerSubtract] +title = "减 < ﹣ > [New!]" +description = "${整数} - ${整数}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[OperatorIntegerMultiply] +title = "乘 < × > [New!]" +description = "${整数} × ${整数}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[OperatorIntegerDivide] +title = "除 < ÷ > [New!]" +description = "${整数} ÷ ${整数}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[OperatorRealAdd] +title = "加 < ﹢ > [New!]" +description = "${实数} + ${实数}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[OperatorRealSubtract] +title = "减 < ﹣ > [New!]" +description = "${实数} - ${实数}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[OperatorRealMultiply] +title = "乘 < × > [New!]" +description = "${实数} × ${实数}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[OperatorRealDivide] +title = "除 < ÷ > [New!]" +description = "${实数} ÷ ${实数}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[OperatorDegreeAdd] +title = "加 < ﹢ >" +description = "${角度} + ${角度}" +comment = "" +category = TC_MATH +returns = degree +[[.args]] +type = degree +[[.args]] +type = degree + +[OperatorDegreeSubtract] +title = "减 < ﹣ >" +description = "${角度} - ${角度}" +comment = "" +category = TC_MATH +returns = degree +[[.args]] +type = degree +[[.args]] +type = degree + +[OperatorDegreeMultiply] +title = "乘 < × >" +description = "${角度} × ${实数}" +comment = "" +category = TC_MATH +returns = degree +[[.args]] +type = degree +[[.args]] +type = real + +[OperatorDegreeDivide] +title = "除 < ÷ >" +description = "${角度} ÷ ${实数}" +comment = "" +category = TC_MATH +returns = degree +[[.args]] +type = degree +[[.args]] +type = real + +[OperatorRadianAdd] +title = "加 < ﹢ >" +description = "${弧度} ﹢ ${弧度}" +comment = "" +category = TC_MATH +returns = radian +[[.args]] +type = radian +[[.args]] +type = real + +[OperatorRadianSubtract] +title = "减 < ﹣ >" +description = "${弧度} ﹣ ${弧度}" +comment = "" +category = TC_MATH +returns = radian +[[.args]] +type = radian +[[.args]] +type = real + +[OperatorRadianMultiply] +title = "乘 < × >" +description = "${弧度} × ${实数}" +comment = "" +category = TC_MATH +returns = radian +[[.args]] +type = radian +[[.args]] +type = real + +[OperatorRadianDivide] +title = "除 < ÷ >" +description = "${弧度} ÷ ${实数}" +comment = "" +category = TC_MATH +returns = radian +[[.args]] +type = radian +[[.args]] +type = real + +[YDWEIsTriggerEventId] +title = "判断触发的事件 [YDWE]" +description = "当前触发的事件为 ${事件}" +comment = "任意单位事件 等于 玩家单位事件,指定单位事件 等于 单位事件" +category = TC_NOTHING +returns = boolean +[[.args]] +type = eventid + +[YDWEGetLocalVariableBoolean] +title = "局部变量" +description = "local_${bl}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = boolean +[[.args]] +type = string + +[YDWEGetLocalVariableBooleanArray] +title = "局部变量数组" +description = "local_${bl}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = boolean +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableInteger] +title = "局部变量" +description = "local_${i}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = integer +[[.args]] +type = string + +[YDWEGetLocalVariableIntegerArray] +title = "局部变量数组" +description = "local_${i}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = integer +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableReal] +title = "局部变量" +description = "local_${R}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = real +[[.args]] +type = string + +[YDWEGetLocalVariableRealArray] +title = "局部变量数组" +description = "local_${R}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = real +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableString] +title = "局部变量" +description = "local_${str}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = string +[[.args]] +type = string + +[YDWEGetLocalVariableStringArray] +title = "局部变量数组" +description = "local_${str}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = string +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableLocation] +title = "局部变量" +description = "local_${point}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = location +[[.args]] +type = string + +[YDWEGetLocalVariableLocationArray] +title = "局部变量数组" +description = "local_${point}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = location +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableRect] +title = "局部变量" +description = "local_${rt}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = rect +[[.args]] +type = string + +[YDWEGetLocalVariableRectArray] +title = "局部变量数组" +description = "local_${rt}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = rect +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableUnit] +title = "局部变量" +description = "local_${u}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = unit +[[.args]] +type = string + +[YDWEGetLocalVariableUnitArray] +title = "局部变量数组" +description = "local_${u}[${index}]" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = unit +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableUnitID] +title = "局部变量" +description = "local_${uid}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = unitcode +[[.args]] +type = string + +[YDWEGetLocalVariableUnitIDArray] +title = "局部变量数组" +description = "local_${uid}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = unitcode +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableItem] +title = "局部变量" +description = "local_${it}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = item +[[.args]] +type = string + +[YDWEGetLocalVariableItemArray] +title = "局部变量数组" +description = "local_${it}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = item +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableItemID] +title = "局部变量" +description = "local_${itid}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = itemcode +[[.args]] +type = string + +[YDWEGetLocalVariableItemIDArray] +title = "局部变量数组" +description = "local_${itid}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = itemcode +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableAbilityID] +title = "局部变量" +description = "local_${abid}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = abilcode +[[.args]] +type = string + +[YDWEGetLocalVariableAbilityIDArray] +title = "局部变量数组" +description = "local_${abid}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = abilcode +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableGroup] +title = "局部变量" +description = "local_${g}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = group +[[.args]] +type = string + +[YDWEGetLocalVariableGroupArray] +title = "局部变量数组" +description = "local_${g}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = group +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetLocalVariableEffect] +title = "局部变量" +description = "local_${e}" +comment = "获取一个局部变量,参数处填入该变量的名字;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = effect +[[.args]] +type = string + +[YDWEGetLocalVariableEffectArray] +title = "局部变量数组" +description = "local_${e}[${index}]" +comment = "获取一个局部变量数组,参数处填入该变量的名字和数组索引;局部变量仅在当前触发器下有效。" +category = TC_YDLC +returns = effect +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +min = 0 + +[YDWEGetBooleanByInteger] +title = "获取 真值 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取真值" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取真值数据。" +category = TC_YDLD +returns = boolean +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetBooleanByString] +title = "获取 真值 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取真值" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取真值数据。" +category = TC_YDLD +returns = boolean +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetIntegerByInteger] +title = "获取 整数 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取整数" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取整数数据。" +category = TC_YDLD +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetIntegerByString] +title = "获取 整数 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取整数" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取整数数据。" +category = TC_YDLD +returns = integer +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetRealByInteger] +title = "获取 实数 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取实数" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取实数数据。" +category = TC_YDLD +returns = real +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetRealByString] +title = "获取 实数 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取实数" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取实数数据。" +category = TC_YDLD +returns = real +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetStringByInteger] +title = "获取 字符串 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取字符串" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取字符串数据。" +category = TC_YDLD +returns = string +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetStringByString] +title = "获取 字符串 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取字符串" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取字符串数据。" +category = TC_YDLD +returns = string +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetLocationByInteger] +title = "获取 点 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取点" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取点数据。" +category = TC_YDLD +returns = location +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetLocationByString] +title = "获取 点 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取点" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取点数据。" +category = TC_YDLD +returns = location +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetRegionByInteger] +title = "获取 区域 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取区域" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取区域数据。" +category = TC_YDLD +returns = region +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetRegionByString] +title = "获取 区域 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取区域" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取区域数据。" +category = TC_YDLD +returns = region +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetRectByInteger] +title = "获取 地区 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取地区" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取地区数据。" +category = TC_YDLD +returns = rect +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetRectByString] +title = "获取 区域 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取地区" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取地区数据。" +category = TC_YDLD +returns = rect +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetUnitByInteger] +title = "获取 单位 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取单位" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位数据。" +category = TC_YDLD +returns = unit +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetUnitByString] +title = "获取 单位 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取单位" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位数据。" +category = TC_YDLD +returns = unit +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetUnitIDByInteger] +title = "获取 单位类型 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取单位类型" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位类型数据。" +category = TC_YDLD +returns = unitcode +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetUnitIDByString] +title = "获取 单位类型 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取单位类型" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位类型数据。" +category = TC_YDLD +returns = unitcode +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetDestructableByInteger] +title = "获取 可破坏物 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取可破坏物" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取可破坏物数据。" +category = TC_YDLD +returns = destructable +[[.args]] +type = integer +min = 0 +max = 1 +[[.args]] +type = integer +min = 0 +max = 1 + +[YDWEGetDestructableByString] +title = "获取 可破坏物 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取可破坏物" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取可破坏物数据。" +category = TC_YDLD +returns = destructable +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetItemByInteger] +title = "获取 物品 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取物品" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取物品数据。" +category = TC_YDLD +returns = item +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetItemByString] +title = "获取 物品 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取物品" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取物品数据。" +category = TC_YDLD +returns = item +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetItemIDByInteger] +title = "获取 物品类型 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取物品类型" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取物品类型数据。" +category = TC_YDLD +returns = itemcode +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetItemIDByString] +title = "获取 物品类型 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取物品类型" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取物品类型数据。" +category = TC_YDLD +returns = itemcode +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetAbilityIDByInteger] +title = "获取 技能 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取技能" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取技能数据。" +category = TC_YDLD +returns = abilcode +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetAbilityIDByString] +title = "获取 技能 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取技能" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取技能数据。" +category = TC_YDLD +returns = abilcode +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetPlayerByInteger] +title = "获取 玩家 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取玩家" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取玩家数据。" +category = TC_YDLD +returns = player +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetPlayerByString] +title = "获取 玩家 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取玩家" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取玩家数据。" +category = TC_YDLD +returns = player +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetGroupByInteger] +title = "获取 单位组 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取单位组" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位组数据。" +category = TC_YDLD +returns = group +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetGroupByString] +title = "获取 单位组 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取单位组" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取单位组数据。" +category = TC_YDLD +returns = group +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetForceByInteger] +title = "获取 势力 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取势力" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取势力数据。" +category = TC_YDLD +returns = force +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetForceByString] +title = "获取 势力 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取势力" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取势力数据。" +category = TC_YDLD +returns = force +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTriggerConditionByInteger] +title = "获取 触发器条件 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取触发器条件" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器条件数据。" +category = TC_YDLD +returns = triggercondition +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTriggerConditionByString] +title = "获取 触发器条件 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取触发器条件" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器条件数据。" +category = TC_YDLD +returns = triggercondition +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTriggerActionByInteger] +title = "获取 触发器动作 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取触发器动作" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器动作数据。" +category = TC_YDLD +returns = triggeraction +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTriggerActionByString] +title = "获取 触发器动作 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取触发器动作" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器动作数据。" +category = TC_YDLD +returns = triggeraction +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTriggerEventByInteger] +title = "获取 事件 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取事件" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取事件数据。" +category = TC_YDLD +returns = event +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTriggerEventByString] +title = "获取 事件 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取事件" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取事件数据。" +category = TC_YDLD +returns = event +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetBoolexprByInteger] +title = "获取 布尔表达式 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取布尔表达式" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取布尔表达式数据。" +category = TC_YDLD +returns = boolexpr +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetBoolexprByString] +title = "获取 布尔表达式 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取布尔表达式" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取布尔表达式数据。" +category = TC_YDLD +returns = boolexpr +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTriggerByInteger] +title = "获取 触发器 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取触发器" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器数据。" +category = TC_YDLD +returns = trigger +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTriggerByString] +title = "获取 触发器 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取触发器" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取触发器数据。" +category = TC_YDLD +returns = trigger +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetEffectByInteger] +title = "获取 特效 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取特效" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取特效数据。" +category = TC_YDLD +returns = effect +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetEffectByString] +title = "获取 特效 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取特效" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取特效数据。" +category = TC_YDLD +returns = effect +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetLightningByInteger] +title = "获取 闪电 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取闪电" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取闪电数据。" +category = TC_YDLD +returns = lightning +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetLightningByString] +title = "获取 闪电 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取闪电" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取闪电数据。" +category = TC_YDLD +returns = lightning +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetSoundByInteger] +title = "获取 音效 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取音效" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取音效数据。" +category = TC_YDLD +returns = sound +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetSoundByString] +title = "获取 音效 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取音效" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取音效数据。" +category = TC_YDLD +returns = sound +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetQuestByInteger] +title = "获取 任务 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取任务" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取任务数据。" +category = TC_YDLD +returns = quest +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetQuestByString] +title = "获取 任务 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取任务" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取任务数据。" +category = TC_YDLD +returns = quest +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetQuestItemByInteger] +title = "获取 任务目标项 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取任务目标项" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取任务目标项数据。" +category = TC_YDLD +returns = questitem +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetQuestItemByString] +title = "获取 任务目标项 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取任务目标项" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取任务目标项数据。" +category = TC_YDLD +returns = questitem +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetDialogByInteger] +title = "获取 对话框 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取对话框" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取对话框数据。" +category = TC_YDLD +returns = dialog +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetDialogByString] +title = "获取 对话框 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取对话框" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取对话框数据。" +category = TC_YDLD +returns = dialog +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetButtonByInteger] +title = "获取 对话框按钮 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取对话框按钮" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取对话框按钮数据。" +category = TC_YDLD +returns = button +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetButtonByString] +title = "获取 对话框按钮 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取对话框按钮" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取对话框按钮数据。" +category = TC_YDLD +returns = button +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetLeaderboardByInteger] +title = "获取 排行榜 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取排行榜" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取排行榜数据。" +category = TC_YDLD +returns = leaderboard +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetLeaderboardByString] +title = "获取 排行榜 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取排行榜" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取排行榜数据。" +category = TC_YDLD +returns = leaderboard +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetMultiBoardByInteger] +title = "获取 多面板 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取多面板" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取多面板数据。" +category = TC_YDLD +returns = multiboard +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetMultiBoardByString] +title = "获取 多面板 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取多面板" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取多面板数据。" +category = TC_YDLD +returns = multiboard +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetMultiBoardItemByInteger] +title = "获取 多面板项目 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取多面板项目" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取多面板项目数据。" +category = TC_YDLD +returns = multiboarditem +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWEGetMultiBoardItemByString] +title = "获取 多面板项目 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取多面板项目" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取多面板项目数据。" +category = TC_YDLD +returns = multiboarditem +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTimerByInteger] +title = "获取 计时器 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取计时器" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取计时器数据。" +category = TC_YDLD +returns = timer +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTimerByString] +title = "获取 计时器 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取计时器" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取计时器数据。" +category = TC_YDLD +returns = timer +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTimerDialogByInteger] +title = "获取 计时器窗口 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取计时器窗口" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取计时器窗口数据。" +category = TC_YDLD +returns = timerdialog +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTimerDialogByString] +title = "获取 计时器窗口 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取计时器窗口" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取计时器窗口数据。" +category = TC_YDLD +returns = timerdialog +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTrackableByInteger] +title = "获取 可追踪物 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取可追踪物" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取可追踪物数据。" +category = TC_YDLD +returns = trackable +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTrackableByString] +title = "获取 可追踪物 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取可追踪物" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取可追踪物数据。" +category = TC_YDLD +returns = trackable +[[.args]] +type = string +[[.args]] +type = string + +[YDWEGetTextTagByInteger] +title = "获取 漂浮文字 (整数路径)" +description = "从存储目录-> ${整数},标签-> ${整数} 上获取漂浮文字" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取漂浮文字数据。" +category = TC_YDLD +returns = texttag +[[.args]] +type = integer +min = 0 +[[.args]] +type = integer +min = 0 + +[YDWEGetTextTagByString] +title = "获取 漂浮文字 (字符串路径)" +description = "从存储目录-> ${字符串},标签-> ${字符串} 上获取漂浮文字" +comment = "通过输入的路径,系统会根据当前魔兽版本从缓存或HashTable上获取漂浮文字数据。" +category = TC_YDLD +returns = texttag +[[.args]] +type = string +[[.args]] +type = string + +[YDWEIsItemSwitch] +title = "单位切换背包[YDWE]" +description = "${单位} 正在切换背包" +comment = "判断单位是否在切换背包,避免单位切换背包时触发获得和掉落物品事件。" +category = TC_YDST +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWE_TP_GetExpiredTimerIndex] +title = "新中心计时器-获取当前到期计时器运行索引" +description = "获取当前到期计时器运行索引" +comment = "当中心计时器运行某个触发器时,会生成一个运行索引;可以通过本条API来获取当前到期的计时器运行索引。" +category = TC_YDST +returns = integer + +[YDWE_TP_NewTimerPeriodic] +title = "新中心计时器-开启新的运行索引" +description = "开启中心计时器一个新的运行索引,时间间隔为 ${时间} 秒,是否循环 ${真值},运行触发器 ${触发器}" +comment = "当中心计时器运行某个触发器时,会生成一个运行索引;本条API会按设置的参数来运行触发器,并返回一个运行索引。" +category = TC_YDST +returns = integer +[[.args]] +type = real +default = "0.03" +min = 0.01 +[[.args]] +type = boolean +default = "true" +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[YDWEGeneralBounsSystemUnitGetBonus] +title = "万能属性系统-获取属性<茄子制作>" +description = "获取 ${单位} 附加 ${属性}" +comment = "" +category = TC_YDST +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = bonusType +default = "bonusTypeA" + +[YDWE_TP_GetElapsedTime] +title = "获取中心计时器逝去时间" +description = "获取运行索引为 ${计时器运行索引} 的计时器逝去时间" +comment = "" +category = TC_YDST +returns = real +[[.args]] +type = integer + +[YDWE_TP_GetRemainingTime] +title = "获取中心计时器剩余时间" +description = "获取运行索引为 ${计时器运行索引} 的计时器剩余时间" +comment = "" +category = TC_YDST +returns = real +[[.args]] +type = integer + +[YDWE_TP_GetTimeout] +title = "获取中心计时器刷新周期" +description = "获取运行索引为 ${计时器运行索引} 的计时器刷新周期" +comment = "" +category = TC_YDST +returns = real +[[.args]] +type = integer + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = boolean +[[.args]] +type = scriptcode + +[StringLength] +title = "字符串长度" +description = "${String}的长度" +comment = "" +category = TC_NOTHING +returns = integer +[[.args]] +type = string +default = "GetEventPlayerChatString" + +[" "] +title = "其它格式整数 [R]" +description = "其它格式整数: ${整数}" +comment = "可以在这使用如0x1ab3和'A001'之类的整数形式,或是直接写算术表达式. " +category = TC_NOTHING +returns = integer +[[.args]] +type = scriptcode + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = real +[[.args]] +type = scriptcode + +[GetLocationX] +title = "点的X轴坐标" +description = "${点} 的X轴坐标" +comment = "" +category = TC_NOTHING +returns = real +[[.args]] +type = location + +[GetLocationY] +title = "点的Y轴坐标" +description = "${点} 的Y轴坐标" +comment = "" +category = TC_NOTHING +returns = real +[[.args]] +type = location + +[GetLocationZ] +title = "点的Z轴高度 [R]" +description = "${点} 的Z轴高度" +comment = "" +category = TC_NOTHING +returns = real +[[.args]] +type = location + +[OperatorString] +title = "连接字符串 Lv2" +description = "${字符串1} + ${字符串2}" +comment = "" +category = TC_NOTHING +returns = string +[[.args]] +type = string +default = null +[[.args]] +type = string +default = null + +[YDWEOperatorString3] +title = "连接字符串 Lv3 [New!]" +description = "${字符串1} + ${字符串2} + ${字符串3}" +comment = "" +category = TC_NOTHING +returns = string +[[.args]] +type = string +default = null +[[.args]] +type = string +default = null +[[.args]] +type = string +default = null + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = string +[[.args]] +type = scriptcode + +[GetObjectName] +title = "物体名称 [C]" +description = "${物体ID} 的名称" +comment = "如'A01Z',物体编辑器中物体的名字" +category = TC_NOTHING +returns = string +[[.args]] +type = scriptcode + +[SubStringBJ] +title = "截取字符串" +description = "截取 ${字符串} 的 ${Start} - ${End} 字节部分" +comment = "例: 截取''Grunts stink''的2 - 4字节部分 = ''run''." +category = TC_NOTHING +returns = string +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "5" + +[SubString] +title = "截取字符串 [R]" +description = "截取 ${字符串} 的 ${Start} - ${End} 字节部分(不包括首字节)" +comment = "例: 截取''Grunts stink''的2 - 4字节部分 = ''un''." +category = TC_NOTHING +returns = string +[[.args]] +type = string +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "5" + +[GetRectCenter] +title = "矩形区域中心" +description = "${矩形区域} 的中心点" +comment = "会创建点." +category = TC_NOTHING +returns = location +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRandomLocInRect] +title = "矩形区域内随机点" +description = "${矩形区域} 内的随机点" +comment = "会创建点." +category = TC_NOTHING +returns = location +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = location +[[.args]] +type = scriptcode + +[OffsetLocation] +title = "坐标位移点" +description = "${指定点} 坐标位移 (${X}, ${Y})处" +comment = "会创建点." +category = TC_NOTHING +returns = location +[[.args]] +type = location +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[PolarProjectionBJ] +title = "极坐标位移点" +description = "从 ${指定点} 开始,距离 ${Distance} ,方向为 ${Angle} 度的位移处" +comment = "会创建点." +category = TC_NOTHING +returns = location +[[.args]] +type = location +[[.args]] +type = real +default = "256" +[[.args]] +type = degree +default = "0" + +[GetCurrentCameraBoundsMapRectBJ] +title = "当前可用镜头范围" +description = "当前可用镜头范围" +comment = "会创建矩形区域. 注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_NOTHING +returns = rect + +[GetCameraBoundsMapRect] +title = "初始可用镜头范围" +description = "初始可用镜头范围" +comment = "在地图编辑器的地图属性中设置." +category = TC_NOTHING +returns = rect + +[GetPlayableMapRect] +title = "可用地图区域" +description = "可用地图区域" +comment = "在地图编辑器的地图属性中设置." +category = TC_NOTHING +returns = rect + +[GetEntireMapRect] +title = "完整地图区域" +description = "完整地图区域" +comment = "在地图编辑器的地图属性中设置. 会创建矩形区域." +script_name = GetWorldBounds +category = TC_NOTHING +returns = rect + +[YDWEGetRect] +title = "新建矩形区域(指定中心坐标)[YDWE]" +description = "以坐标(${x},${y})为中心,创建长${实数},宽${实数}的矩形区域。" +comment = "会创建矩形区域" +category = TC_NOTHING +returns = rect +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "100" +min = 0 +[[.args]] +type = real +default = "50" +min = 0 + +[OffsetRectBJ] +title = "位移创建矩形区域" +description = "与 ${矩形区域} 位移 (${X}, ${Y}) 坐标之后等价的矩形区域" +comment = "会创建矩形区域." +category = TC_NOTHING +returns = rect +[[.args]] +type = rect +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[RectFromCenterSizeBJ] +title = "新建矩形区域(指定中心点)" +description = "以 ${指定点} 为中心,宽 ${数值} ,高 ${数值} 的矩形区域" +comment = "会创建矩形区域." +category = TC_NOTHING +returns = rect +[[.args]] +type = location +[[.args]] +type = real +[[.args]] +type = real + +[Rect] +title = "新建矩形区域(指定边角坐标)" +description = "左下角为(${X1}, ${Y1}),右上角为(${X2}, ${Y2})的矩形区域" +comment = "会创建矩形区域." +category = TC_NOTHING +returns = rect +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[RectFromLoc] +title = "新建矩形区域(指定边角点)" +description = "左下角为 ${点1} ,右上角为 ${点2} 的矩形区域" +comment = "会创建矩形区域." +category = TC_NOTHING +returns = rect +[[.args]] +type = location +default = "Location" +[[.args]] +type = location +default = "Location" + +[CreateUnit] +title = "新建单位(指定坐标) [R]" +description = "新建 ${玩家} 的 ${单位} 在(${X},${Y}),面向角度:${Face} 度" +comment = "在坐标创建单位,不能被'最后创建的单位'获得。" +category = TC_NOTHING +returns = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[CreateUnitAtLoc] +title = "新建单位(指定点) [R]" +description = "新建 ${玩家} 的 ${单位} 在 ${点} 面向角度:${Face} 度" +comment = "" +category = TC_NOTHING +returns = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = location +[[.args]] +type = degree +default = "0" + +[CreateCorpse] +title = "新建尸体 [R]" +description = "新建 ${玩家} 的 ${单位} 的尸体在(${X},${Y}),面向角度:${Face} 度" +comment = "" +category = TC_NOTHING +returns = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[CreateBlightedGoldmine] +title = "新建不死族金矿 [R]" +description = "新建 ${玩家} 的不死族金矿在(${X},${Y}),面向角度:${Face} 度" +comment = "" +category = TC_NOTHING +returns = unit +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[GetEnumUnit] +title = "选取单位" +description = "选取单位" +comment = "使用'选取单位做动作'时, 指代相应的单位." +category = TC_NOTHING +returns = unit + +[GetFilterUnit] +title = "匹配单位" +description = "匹配单位" +comment = "在'选取单位满足条件'之类功能的条件中,指代被判断单位." +category = TC_NOTHING +returns = unit + +[FirstOfGroup] +title = "单位组中第一个单位" +description = "${单位组} 中第一个单位" +category = TC_NOTHING +returns = unit +[[.args]] +type = group + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = unit +[[.args]] +type = scriptcode + +[GroupPickRandomUnit] +title = "单位组中随机单位" +description = "${单位组} 中随机选取的一个单位" +comment = "" +category = TC_NOTHING +returns = unit +[[.args]] +type = group + +[CreateUnitPool] +title = "新建单位池 [R]" +description = "新建的空单位池" +comment = "会创建单位池。" +category = TC_NOTHING +use_in_event = 0 +returns = unitpool + +[GetUnitTypeId] +title = "指定单位的类型" +description = "${单位} 的类型" +comment = "" +category = TC_NOTHING +returns = unitcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = unitcode +[[.args]] +type = scriptcode + +[ChooseRandomCreepBJ] +title = "随机中立单位类型" +description = "一个等级 ${Level} 的随机中立单位类型" +comment = "-1代表所有等级." +script_name = ChooseRandomCreep +category = TC_NOTHING +returns = unitcode +[[.args]] +type = integer +default = "1" +min = -1 +max = 10 + +[ChooseRandomNPBuildingBJ] +title = "随机中立建筑类型" +description = "随机中立建筑类型" +comment = "" +script_name = ChooseRandomNPBuilding +category = TC_NOTHING +returns = unitcode + +[CreateDestructableZ] +title = "新建可破坏物 [R]" +description = "新建的 ${可破坏物类型} 在(${X},${Y},${Z}),面向角度: ${Direction} 尺寸缩放: ${Scale} 样式: ${Variation}" +comment = "坐标为(X,Y,Z)格式. 面向角度采用角度制,0度为正东方向,90度为正北方向." +category = TC_NOTHING +returns = destructable +[[.args]] +type = destructablecode +default = "LTlt" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "GetRandomDirectionDeg" +[[.args]] +type = real +default = "1" +[[.args]] +type = integer +default = "0" + +[CreateDeadDestructableZ] +title = "新建可破坏物(死亡的) [R]" +description = "新建死亡的 ${可破坏物类型} 在(${X},${Y},${Z\"),面向角度: \"}${Direction} 尺寸缩放: ${Scale} 样式: ${Variation}" +comment = "坐标为(X,Y,Z)格式. 面向角度采用角度制,0度为正东方向,90度为正北方向." +category = TC_NOTHING +returns = destructable +[[.args]] +type = destructablecode +default = "LTlt" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "GetRandomDirectionDeg" +[[.args]] +type = real +default = "1" +[[.args]] +type = integer +default = "0" + +[RandomDestructableInRectSimpleBJ] +title = "矩形区域内的随机可破坏物" +description = "${矩形区域} 内随机选取一个可破坏物" +comment = "" +category = TC_NOTHING +returns = destructable +[[.args]] +type = rect + +[RandomDestructableInRectBJ] +title = "矩形区域内的随机可破坏物(指定条件)" +description = "${矩形区域} 内满足 ${条件} 的一个随机可破坏物" +comment = "使用'匹配的可破坏物'来指代条件中用于比较的可破坏物." +category = TC_NOTHING +returns = destructable +[[.args]] +type = rect +[[.args]] +type = boolexpr + +[GetEnumDestructable] +title = "选取的可破坏物" +description = "选取的可破坏物" +comment = "使用'选取可破坏物做动作'时, 指代相应的可破坏物." +category = TC_NOTHING +returns = destructable + +[GetFilterDestructable] +title = "匹配的可破坏物" +description = "匹配的可破坏物" +comment = "在'选取可破坏物满足条件'之类功能的条件中,指代被判断的可破坏物." +category = TC_NOTHING +returns = destructable + +[GetDestructableTypeId] +title = "指定可破坏物的类型" +description = "${可破坏物} 的类型" +comment = "" +category = TC_NOTHING +returns = destructablecode +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[CreateItem] +title = "新建物品 [R]" +description = "新建 ${物品} 在(${X},${Y})" +comment = "" +category = TC_NOTHING +returns = item +[[.args]] +type = itemcode +default = "texp" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[UnitDropItem] +title = "单位掉落的物品" +description = "让 ${单位} 掉落一件 ${物品}" +comment = "在单位所在区域(32x32)内的随机点创建一个物品,注意当单位站在不可通行路径旁边时,该物品可能掉落其中而无法拾取。" +category = TC_NOTHING +returns = item +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "texp" + +[RandomItemInRectSimpleBJ] +title = "矩形区域内随机物品" +description = "${矩形区域} 内随机选取的一个物品" +comment = "" +category = TC_NOTHING +use_in_event = 0 +returns = item +[[.args]] +type = rect + +[RandomItemInRectBJ] +title = "矩形区域内随机物品(指定条件)" +description = "${矩形区域} 内满足 ${条件} 的一个随机物品" +comment = "使用'匹配物品'来指代条件中用于比较的物品." +category = TC_NOTHING +use_in_event = 0 +returns = item +[[.args]] +type = rect +[[.args]] +type = boolexpr + +[GetEnumItem] +title = "选取物品" +description = "选取物品" +comment = "使用'选取物品做动作'时, 指代相应的物品." +category = TC_NOTHING +use_in_event = 0 +returns = item + +[GetFilterItem] +title = "匹配物品" +description = "匹配物品" +comment = "在'选取物品满足条件'之类功能的条件中,指代被判断单位." +category = TC_NOTHING +use_in_event = 0 +returns = item + +[UnitItemInSlot] +title = "单位持有物品" +description = "${单位} 物品栏第 ${Index} 格的物品" +comment = "第一个单位格的位置为0." +category = TC_NOTHING +returns = item +[[.args]] +type = unit +[[.args]] +type = integer +default = "0" +min = 0 +max = 5 + +[UnitItemInSlotBJ] +title = "单位持有物品" +description = "${单位} 物品栏第 ${Index} 格的物品" +comment = "第一个单位格的位置为1." +category = TC_NOTHING +returns = item +[[.args]] +type = unit +[[.args]] +type = integer +default = "1" +min = 1 +max = 6 + +[GetItemOfTypeFromUnitBJ] +title = "单位持有物品(指定类型)" +description = "${单位} 所持有的 ${物品类型}" +comment = "注意:有多个相同物品时,只能获取第一个物品。" +category = TC_NOTHING +returns = item +[[.args]] +type = unit +[[.args]] +type = itemcode +default = "texp" + +[CreateItemPool] +title = "新建物品池 [R]" +description = "新建的空物品池" +comment = "会创建物品池." +category = TC_NOTHING +use_in_event = 0 +returns = itempool + +[YDWEGetLastItemPool] +title = "最后创建的物品池 [YDWE]" +description = "最后创建的物品池" +comment = "该物品池必须是由YDWE提供的<创建物品池>动作生成,不然无法获取。" +category = TC_NOTHING +use_in_event = 0 +returns = itempool + +[YDWEGetLastPoolAbstractedItem] +title = "最后从物品池里取出的物品[YDWE]" +description = "最后从物品池里取出的物品" +comment = "该物品必须是由YDWE提供的<选择放置物品>动作生成,不然无法获取。" +category = TC_NOTHING +use_in_event = 0 +returns = item + +[GetItemType] +title = "指定物品的分类" +description = "${物品} 的分类" +comment = "" +category = TC_NOTHING +returns = itemtype +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemTypeId] +title = "指定物品的类型" +description = "${物品} 的类型" +comment = "" +category = TC_NOTHING +returns = itemcode +[[.args]] +type = item +default = "GetLastCreatedItem" + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = itemcode +[[.args]] +type = scriptcode + +[ChooseRandomItemExBJ] +title = "随机物品类型(指定分类)" +description = "等级 ${Level} 的随机 ${Class} 物品类型" +comment = "该功能为新版函数,使用新版等级作为参照对象. -1表示任何等级." +category = TC_NOTHING +returns = itemcode +[[.args]] +type = integer +default = "1" +min = -1 +[[.args]] +type = itemtype +default = "ItemTypeAny" + +[ChooseRandomItemBJ] +title = "随机物品类型" +description = "等级 ${Level} 的随机物品类型" +comment = "该功能为ROC版函数,使用旧版等级作为参照对象. -1表示任何等级." +script_name = ChooseRandomItem +category = TC_NOTHING +returns = itemcode +[[.args]] +type = integer +default = "1" +min = -1 + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = abilcode +[[.args]] +type = scriptcode + +[GetEnumPlayer] +title = "选取玩家" +description = "选取玩家" +comment = "使用'选取玩家做动作'时, 指代相应的玩家." +category = TC_NOTHING +returns = player + +[GetFilterPlayer] +title = "匹配玩家" +description = "匹配玩家" +comment = "在'选取玩家满足条件'之类功能的条件中,指代被判断玩家." +category = TC_NOTHING +returns = player + +[GetOwningPlayer] +title = "单位所有者" +description = "${单位} 的所有者" +comment = "" +category = TC_NOTHING +returns = player +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetItemPlayer] +title = "物品所属玩家" +description = "${物品} 的所属玩家" +comment = "与持有者无关,默认为中立被动玩家." +category = TC_NOTHING +returns = player +[[.args]] +type = item +default = "GetLastCreatedItem" + +[ForcePickRandomPlayer] +title = "玩家组中随机玩家" +description = "${玩家组} 中随机抽取的一名玩家." +comment = "" +category = TC_NOTHING +returns = player +[[.args]] +type = force + +[GetLocalPlayer] +title = "本地玩家 [R]" +description = "本地玩家" +comment = "指代玩家自己,所以对每个玩家返回值都不一样. 如果不清楚该函数的话千万别用,因为很可能因为不同步而导致掉线." +category = TC_NOTHING +returns = player + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = player +[[.args]] +type = scriptcode + +[CreateGroup] +title = "新建的单位组 [R]" +description = "新建的空单位组" +comment = "会创建单位组." +category = TC_NOTHING +returns = group + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = group +[[.args]] +type = scriptcode + +[GetRandomSubGroup] +title = "单位组中随机单位" +description = "随机获取 ${Count} 个单位从 ${单位组}" +comment = "会创建单位组.该函数不能使用设置 bj_wantDestroyGroup=true来清除group,会导致该动作无效." +category = TC_NOTHING +use_in_event = 0 +returns = group +[[.args]] +type = integer +default = "4" +[[.args]] +type = group +default = "GetUnitsInRectAll" + +[GetUnitsInRectAll] +title = "矩形区域内的单位" +description = "${矩形区域} 内的所有单位" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetUnitsInRectOfPlayer] +title = "矩形区域内的玩家单位" +description = "${矩形区域} 内属于 ${Player} 的所有单位" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = player +default = "Player00" + +[GetUnitsInRectMatching] +title = "矩形区域内的单位(指定条件)" +description = "${矩形区域} 内满足 ${条件} 的所有单位" +comment = "使用'匹配单位'指代条件中用于比较的单位. 会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = boolexpr + +[GetUnitsInRangeOfLocAll] +title = "圆范围内单位" +description = "半径为 ${Radius} 圆心为 ${指定点} 的圆范围内所有单位" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = location +default = "GetRectCenter" + +[GetUnitsInRangeOfLocMatching] +title = "圆范围内单位(指定条件)" +description = "半径为 ${Radius} 圆心为 ${指定点} 且满足 ${条件} 的所有单位" +comment = "使用'匹配单位'指代条件中用于比较的单位. 会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = real +default = "512" +min = 0 +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = boolexpr + +[GetUnitsOfPlayerAll] +title = "玩家单位" +description = "属于 ${Player} 的所有单位" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = player +default = "Player00" + +[GetUnitsOfPlayerAndTypeId] +title = "玩家单位(指定单位类型)" +description = "属于 ${Player} 的所有 ${单位类型}" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unitcode +default = "hfoo" + +[GetUnitsOfPlayerMatching] +title = "玩家单位(指定条件)" +description = "属于 ${Player} 并满足 ${条件} 的所有单位" +comment = "使用'匹配单位'指代条件中用于比较的单位. 会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = player +default = "Player00" +[[.args]] +type = boolexpr + +[GetUnitsOfTypeIdAll] +title = "所有指定类型单位" +description = "所有 ${单位类型}" +comment = "会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = unitcode +default = "hfoo" + +[GetUnitsSelectedAll] +title = "玩家选择单位" +description = "${Player} 选择的所有单位" +comment = "不能用于触发条件. 会创建单位组." +category = TC_NOTHING +returns = group +[[.args]] +type = player +default = "Player00" + +[CreateForce] +title = "新建玩家组 [R]" +description = "新建空玩家组" +comment = "会创建玩家组." +category = TC_NOTHING +returns = force + +[GetPlayersAll] +title = "所有玩家" +description = "所有玩家" +comment = "包括未使用玩家和中立玩家." +category = TC_NOTHING +returns = force + +[GetPlayersByMapControl] +title = "所有指定控制者的玩家" +description = "所有 ${Control Type} 控制的玩家" +comment = "会创建玩家组." +category = TC_NOTHING +returns = force +[[.args]] +type = mapcontrol +default = "MapControlComputer" + +[GetPlayersMatching] +title = "所有符合条件的玩家" +description = "所有符合 ${条件} 的玩家" +comment = "使用'匹配玩家'指代条件中用于比较的玩家,包括未使用玩家和中立玩家. 会创建玩家组." +category = TC_NOTHING +returns = force +[[.args]] +type = boolexpr + +[GetPlayersAllies] +title = "玩家的盟友" +description = "所有 ${Player} 的联盟玩家" +comment = "需要双方互为联盟状态,包括自己,不包括中立玩家. 会创建玩家组." +category = TC_NOTHING +returns = force +[[.args]] +type = player +default = "Player00" + +[GetPlayersEnemies] +title = "玩家的敌人" +description = "所有 ${Player} 的敌对玩家" +comment = "对其敌对的所有玩家,不包括中立玩家. 会创建玩家组." +category = TC_NOTHING +returns = force +[[.args]] +type = player +default = "Player00" + +[GetForceOfPlayer] +title = "转换玩家为玩家组" +description = "转换 ${Player} 为玩家组" +comment = "会创建玩家组." +category = TC_NOTHING +returns = force +[[.args]] +type = player +default = "Player00" + +[GetPlayerRace] +title = "玩家的种族" +description = "${Player} 的种族" +comment = "" +category = TC_NOTHING +returns = race +[[.args]] +type = player +default = "Player00" + +[GetUnitRace] +title = "单位种族" +description = "${单位} 所属种族" +comment = "物体编辑器中设置的单位所属种族." +category = TC_NOTHING +returns = race +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetCurrentCameraSetup] +title = "玩家当前镜头" +description = "玩家当前镜头" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线. 会创建镜头对象,但每个玩家只会有一个当前镜头." +category = TC_NOTHING +returns = camerasetup + +[CreateFogModifierRect] +title = "新建可见度修正器(矩形区域) [R]" +description = "新建的 ${玩家} 可见度修正器. 可见度: ${FogStateVisible} 影响区域: ${矩形区域} (对盟友 ${共享} 视野, ${覆盖} 单位视野)" +comment = "会创建可见度修正器." +category = TC_NOTHING +returns = fogmodifier +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = rect +[[.args]] +type = sharevisionoption +default = "ShareVisionShare" +[[.args]] +type = converunitoption +default = "ConverUnitNot" + +[CreateFogModifierRadius] +title = "新建可见度修正器(圆范围) [R]" +description = "新建的 ${玩家} 可见度修正器. 可见度: ${FogStateVisible} 圆心坐标:(${X},${Y}) 半径: ${数值} (对盟友 ${共享} 视野, ${覆盖} 单位视野)" +comment = "会创建可见度修正器." +category = TC_NOTHING +returns = fogmodifier +[[.args]] +type = player +default = "Player00" +[[.args]] +type = fogstate +default = "FogStateVisible" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +[[.args]] +type = sharevisionoption +default = "ShareVisionShare" +[[.args]] +type = converunitoption +default = "ConverUnitNot" + +[GetTriggeringTrigger] +title = "当前触发" +description = "当前触发" +comment = "当前所运行的触发器." +category = TC_NOTHING +returns = trigger + +[GetGameDifficulty] +title = "当前游戏难度" +description = "当前游戏难度" +comment = "" +category = TC_NOTHING +returns = gamedifficulty + +[GetAIDifficulty] +title = "玩家的AI难度" +description = "${Player} 的对战AI难度" +comment = "对非AI玩家返回普通难度." +category = TC_NOTHING +returns = aidifficulty +[[.args]] +type = player +default = "Player00" + +[GetGameSpeed] +title = "当前游戏速度" +description = "当前游戏速度" +comment = "" +category = TC_NOTHING +returns = gamespeed + +[GetPlayerController] +title = "玩家控制者" +description = "${Player} 的控制者" +comment = "" +category = TC_NOTHING +returns = mapcontrol +[[.args]] +type = player +default = "Player00" + +[GetPlayerColor] +title = "玩家颜色" +description = "${Player} 的颜色" +comment = "" +category = TC_NOTHING +returns = playercolor +[[.args]] +type = player +default = "Player00" + +[GetPlayerSlotState] +title = "玩家游戏状态" +description = "${Player} 的游戏状态" +comment = "" +category = TC_NOTHING +returns = playerslotstate +[[.args]] +type = player +default = "Player00" + +[AddSpecialEffect] +title = "新建特效(创建到坐标) [R]" +description = "新建特效 ${Model File} 在(${X},${Y})处" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Other\\TalkToMe\\TalkToMe.mdl\"" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[AddSpecialEffectLoc] +title = "新建特效(创建到点) [R]" +description = "新建特效 ${Model File} 在 ${指定点} 处" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Other\\TalkToMe\\TalkToMe.mdl\"" +[[.args]] +type = location + +[AddSpecialEffectTarget] +title = "新建特效(创建到单位) [R]" +description = "新建特效 ${Model File} 并绑定到 ${单位} 的 ${Attachment Point} 附加点上" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Other\\TalkToMe\\TalkToMe.mdl\"" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = string +default = "\"overhead\"" + +[AddSpellEffectById] +title = "新建特效(指定技能,创建到坐标) [R]" +description = "${技能} 的 ${EffectType} , 创建到坐标(${X},${Y})" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = abilcode +[[.args]] +type = effecttype +default = "EffectTypeEffect" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[AddSpellEffectByIdLoc] +title = "新建特效(指定技能,创建到点) [R]" +description = "${技能} 的 ${EffectType} , 创建到 ${指定点}" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = abilcode +[[.args]] +type = effecttype +default = "EffectTypeEffect" +[[.args]] +type = location + +[AddSpellEffectTargetById] +title = "新建特效(指定技能,创建到单位) [R]" +description = "${技能} 的 ${EffectType} , 绑定到 ${单位} 的 ${String} 附加点" +comment = "会创建特效." +category = TC_NOTHING +returns = effect +[[.args]] +type = abilcode +[[.args]] +type = effecttype +default = "EffectTypeEffect" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = string +default = "\"overhead\"" + +[CreateImage] +title = "新建图像 [R]" +description = "新建图像: ${Image} 大小:(${X},${Y},${Z}) 创建点:(${X},${Y},${Z}) 原点坐标:(${X},${Y},${Z}) 图像类型: ${Type}" +comment = "使用'图像 - 设置永久渲染状态'动作才能显示图像. 大小、创建点和原点格式为(X,Y,Z). 创建点作为图像的左下角位置. 会创建图像." +category = TC_NOTHING +use_in_event = 0 +returns = image +[[.args]] +type = string +default = "\"ReplaceableTextures\\Splats\\AuraRune9b.blp\"" +[[.args]] +type = real +default = "256" +[[.args]] +type = real +default = "256" +[[.args]] +type = real +default = "256" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = imagetype +default = "ImageTypeIndicator" + +[CreateUbersplat] +title = "新建地面纹理变化 [R]" +description = "新建的地面纹理变化在点(${X},${Y}),使用图像: ${Type} 颜色值为(${Red},${Green},${Blue}) Alpha值为${Transparency} (${Enable/Disable} 暂停状态, ${Enble/Disable} 跳过出生动画)" +comment = "颜色值和Alpha值取值范围0-255. 使用'地面纹理变化 - 设置永久渲染状态' 来显示创建的纹理变化. 暂停状态表示动画播放完毕后是否继续保留该纹理变化. 会创建纹理变化." +category = TC_NOTHING +use_in_event = 0 +returns = ubersplat +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = ubersplattype +default = "UbersplatTypeNGOL" +[[.args]] +type = integer +default = "255" +[[.args]] +type = integer +default = "255" +[[.args]] +type = integer +default = "255" +[[.args]] +type = integer +default = "255" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" +[[.args]] +type = enabledisableoption +default = "EnableDisableDisable" + +[AddWeatherEffect] +title = "新建天气效果 [R]" +description = "新建的在 ${矩形区域} 的天气效果: ${WeatherId}" +comment = "会创建天气效果." +category = TC_NOTHING +returns = weathereffect +[[.args]] +type = rect +[[.args]] +type = weathereffectcode + +[TerrainDeformCrater] +title = "新建地形变化:弹坑 [R]" +description = "新建的弹坑变形. 中心坐标:(${X},${Y}) 半径: ${Radius} 深度: ${Depth} 持续时间: ${Duration} 毫秒, 变化类型: ${Type}" +comment = "深度可取负数. 永久地形变化在保存游戏时不会被记录." +category = TC_NOTHING +returns = terraindeformation +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "512" +min = 0.01 +[[.args]] +type = real +default = "96" +[[.args]] +type = integer +default = "4000" +min = 1 +[[.args]] +type = cratertype +default = "CraterTypeTemporary" + +[TerrainDeformRipple] +title = "新建地形变化:波纹 [R]" +description = "新建的波纹变形. 中心坐标:(${X},${Y}) 最终半径: ${Radius} 深度: ${Depth} 持续时间: ${Duration} 毫秒, 变化次数: ${Count} 面波数: ${SpaceWave} 总波数: ${TimeWave} 初始半径率: ${数值} 变化类型: ${Type}" +comment = "初始半径率=初始半径/最终半径." +category = TC_NOTHING +returns = terraindeformation +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1024" +min = 0.01 +[[.args]] +type = real +default = "96" +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = integer +default = "4000" +min = 1 +[[.args]] +type = real +default = "4" +min = 0.01 +[[.args]] +type = real +default = "16" +min = 0.01 +[[.args]] +type = real +default = "1" +min = 0.01 +[[.args]] +type = rippletype +default = "RippleTypeNormal" + +[TerrainDeformWave] +title = "新建地形变化:冲击波 [R]" +description = "新建的冲击波变形. 起始坐标:(${X},${Y}) 波方向:(${X},${Y}) 波距离: ${distance} 波速度: ${speed} 波半径: ${radius} 深度: ${Depth} 变形效果持续时间: ${Delay} 毫秒, 变化次数: ${Count}" +comment = "深度可取负数. 方向以(X,Y)坐标形式表示,如(1,1)表示45度." +category = TC_NOTHING +returns = terraindeformation +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1024" +min = 0.01 +[[.args]] +type = real +default = "1024" +min = 0.01 +[[.args]] +type = real +default = "256" +min = 0.01 +[[.args]] +type = real +default = "96" +min = 0.01 +[[.args]] +type = integer +default = "1000" +min = 1 +[[.args]] +type = integer +default = "1" +min = 1 + +[TerrainDeformRandom] +title = "新建地形变化:随机 [R]" +description = "新建的随机变形. 中心坐标:(${X},${Y}) 半径: ${Radius} 最小高度变化: ${Depth} 最大高度变化: ${Depth} 持续时间: ${Duration} 毫秒, 变化周期: ${Duration} 毫秒" +comment = "" +category = TC_NOTHING +returns = terraindeformation +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1024" +min = 0.01 +[[.args]] +type = real +default = "-96" +[[.args]] +type = real +default = "96" +[[.args]] +type = integer +default = "4000" +min = 1 +[[.args]] +type = integer +default = "100" +min = 1 + +[DialogAddButton] +title = "添加对话框按钮 [R]" +description = "给 ${对话框} 添加按钮, 使用标题: ${文字} 快捷键: ${HotKey}" +comment = "会创建对话框按钮." +category = TC_NOTHING +returns = button +[[.args]] +type = dialog +default = "GetClickedDialogBJ" +[[.args]] +type = StringExt +[[.args]] +type = hotkeyint +default = "HotKeyNull" + +[CreateLeaderboard] +title = "新建排行榜 [R]" +description = "新建的空排行榜" +comment = "会创建排行榜." +category = TC_NOTHING +returns = leaderboard + +[PlayerGetLeaderboardBJ] +title = "玩家使用的排行榜" +description = "${Player} 使用的排行榜" +comment = "每个玩家只能使用1个排行榜." +script_name = PlayerGetLeaderboard +category = TC_NOTHING +returns = leaderboard +[[.args]] +type = player +default = "Player00" + +[CreateMultiboard] +title = "新建多面板 [R]" +description = "新建的空多面板" +comment = "会创建多面板." +category = TC_NOTHING +use_in_event = 0 +returns = multiboard + +[MultiboardGetItem] +title = "多面板项目 [R]" +description = "${多面板} 的第 ${X} 行,第 ${Y} 列项" +comment = "(0,0)作为多面板首项,会创建多面板项目." +category = TC_NOTHING +use_in_event = 0 +returns = multiboarditem +[[.args]] +type = multiboard +default = "bj_lastCreatedMultiboard" +[[.args]] +type = integer +default = "0" +[[.args]] +type = integer +default = "0" + +[CreateTimer] +title = "新建计时器 [R]" +description = "新建的计时器" +comment = "会创建计时器." +category = TC_NOTHING +returns = timer + +[YDWERemoveAttackWaveReturnTimer] +title = "最后创建的刷兵计时器[YDWE]" +description = "最后创建的刷兵计时器" +comment = "响应刷兵系统" +category = TC_NOTHING +returns = timer + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = timer +[[.args]] +type = scriptcode + +[CreateTrackable] +title = "新建可追踪物 [R]" +description = "新建的可追踪物, 使用模型: ${模型名字} 所在位置: ( ${X轴} , ${Y轴} ) 面向角度: ${数值} 度" +comment = "可用来响应鼠标的移动和点击. 会创建可追踪物." +category = TC_NOTHING +returns = trackable +[[.args]] +type = modelfile +default = "\"Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.mdl\"" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "输入一行Jass代码" +category = TC_NOTHING +returns = hashtable +[[.args]] +type = scriptcode + +[CreateTextTag] +title = "新建漂浮文字 [R]" +description = "新建的空漂浮文字" +comment = "会创建漂浮文字." +category = TC_NOTHING +use_in_event = 0 +returns = texttag + +[" UnitAddAbility"] +title = "添加技能 [C]" +description = "为 ${单位} 添加 ${技能}" +comment = "添加成功返回true." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[" UnitRemoveAbility"] +title = "删除技能 [C]" +description = "为 ${单位} 删除 ${技能}" +comment = "删除成功返回true." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[IssueImmediateOrder] +title = "发布命令(无目标)" +description = "对 ${单位} 发布 ${Order} 命令" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitordernotarg +default = "UnitOrderStop" + +[IssuePointOrder] +title = "发布命令(指定坐标) [R]" +description = "对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssuePointOrderLoc] +title = "发布命令(指定点)" +description = "对 ${单位} 发布 ${Order} 命令到目标点: ${指定点}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderMove" +[[.args]] +type = location + +[IssueTargetOrder] +title = "发布命令(指定单位)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderutarg +default = "UnitOrderAttackUnit" +[[.args]] +type = unit + +[IssueTargetDestructableOrder] +title = "发布命令(指定可破坏物)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "" +script_name = IssueTargetOrder +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderdtarg +default = "UnitOrderHarvestDestructible" +[[.args]] +type = destructable + +[IssueTargetItemOrder] +title = "发布命令(指定物品)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "" +script_name = IssueTargetOrder +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderitarg +default = "UnitOrderSmartItem" +[[.args]] +type = item + +[IssueImmediateOrderById] +title = "发布命令(无目标)(ID)" +description = "对 ${单位} 发布 ${Order} 命令" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodenotarg +default = "OrderCodeStop" + +[IssuePointOrderById] +title = "发布命令(指定坐标)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssuePointOrderByIdLoc] +title = "发布命令(指定点)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标点: ${指定点}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeMove" +[[.args]] +type = location + +[IssueTargetOrderById] +title = "发布命令(指定单位)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeutarg +default = "OrderCodeAttackUnit" +[[.args]] +type = unit + +[IssueTargetDestructableOrderById] +title = "发布命令(指定可破坏物)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "" +script_name = IssueTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodedtarg +default = "OrderCodeHarvestDestructible" +[[.args]] +type = destructable + +[IssueTargetItemOrderById] +title = "发布命令(指定物品)(ID)" +description = "对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "" +script_name = IssueTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeitarg +default = "OrderCodeSmartItem" +[[.args]] +type = item + +[IssueNeutralImmediateOrder] +title = "发布中介命令(无目标)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitordernotarg +default = "UnitOrderStop" + +[IssueNeutralPointOrder] +title = "发布中介命令(指定坐标)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderptarg +default = "UnitOrderNeutralDetectAOE" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueNeutralTargetOrder] +title = "发布中介命令(指定单位)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderutarg +default = "UnitOrderNeutralInterAct" +[[.args]] +type = unit + +[IssueNeutralTargetDestructableOrder] +title = "发布中介命令(指定可破坏物)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrder +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderdtarg +default = "UnitOrderHarvestDestructible" +[[.args]] +type = destructable + +[IssueNeutralTargetItemOrder] +title = "发布中介命令(指定物品)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrder +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitorderitarg +default = "UnitOrderSmartItem" +[[.args]] +type = item + +[IssueNeutralImmediateOrderById] +title = "发布中介命令(无目标)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodenotarg +default = "OrderCodeStop" + +[IssueNeutralPointOrderById] +title = "发布中介命令(指定坐标)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeptarg +default = "OrderCodeNeutralDetectAOE" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueNeutralTargetOrderById] +title = "发布中介命令(指定单位)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令." +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeutarg +default = "OrderCodeNeutralInterAct" +[[.args]] +type = unit + +[IssueNeutralTargetDestructableOrderById] +title = "发布中介命令(指定可破坏物)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodedtarg +default = "OrderCodeHarvestDestructible" +[[.args]] +type = destructable + +[IssueNeutralTargetItemOrderById] +title = "发布中介命令(指定物品)(ID)" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令." +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercodeitarg +default = "OrderCodeSmartItem" +[[.args]] +type = item + +[YDWEIssueNeutralImmediateOrderById] +title = "发布中介命令(无目标)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId + +[YDWEIssueNeutralPointOrderById] +title = "发布中介命令(指定坐标)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到坐标:(${X},${Y})" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralPointOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[YDWEIssueNeutralTargetOrderById] +title = "发布中介命令(指定单位)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${单位}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = unit + +[YDWEIssueNeutralTargetDestructableOrderById] +title = "发布中介命令(指定可破坏物)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${可破坏物}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = destructable + +[YDWEIssueNeutralTargetItemOrderById] +title = "发布中介命令(指定物品)(自定义ID) [New!]" +description = "使 ${玩家} 对 ${单位} 发布 ${Order} 命令到目标: ${物品}" +comment = "可以用来对非本玩家单位发布命令,能直接输入数字命令ID。" +script_name = IssueNeutralTargetOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = ordercode +default = YDWEAbilityId2OrderId +[[.args]] +type = item + +[IssueTrainOrderByIdBJ] +title = "发布训练/升级命令" +description = "命令 ${单位} 建造/升级为 ${单位类型}" +comment = "该升级是指A单位升级为B单位,而不是科技升级." +script_name = IssueImmediateOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" + +[IssueUpgradeOrderByIdBJ] +title = "发布研究科技命令" +description = "命令 ${单位} 研究 ${Tech-Type}" +comment = "" +script_name = IssueImmediateOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = techcode +default = "Rhde" + +[IssueBuildOrderById] +title = "发布建造命令(指定坐标) [R]" +description = "命令 ${单位} 建造 ${单位类型} 在坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hbar" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IssueBuildOrderByIdLocBJ] +title = "发布建造命令(指定点)" +description = "命令 ${单位} 建造 ${单位类型} 在 ${指定点}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hbar" +[[.args]] +type = location + +[UnitDropItemPoint] +title = "发布丢弃物品命令(指定坐标) [R]" +description = "命令 ${单位} 丢弃物品 ${物品} 到坐标:(${X},${Y})" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[UnitDropItemPointLoc] +title = "发布丢弃物品命令(指定点)" +description = "命令 ${单位} 丢弃物品 ${物品} 到 ${指定点}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = location + +[UnitDropItemSlot] +title = "移动物品到物品栏 [R]" +description = "命令 ${单位} 移动 ${物品} 到物品栏# ${Index}" +comment = "只有当单位持有该物品时才有效. 注意: 该函数中物品栏编号从0-5,而不是1-6." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "bj_lastCreatedItem" +[[.args]] +type = integer +default = "0" +min = 0 +max = 5 + +[UnitDropItemSlotBJ] +title = "移动物品到物品栏" +description = "命令 ${单位} 移动 ${物品} 到物品栏第 ${Index} 格" +comment = "只有当单位持有该物品时才有效." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = integer +default = "1" +min = 1 +max = 6 + +[UnitDropItemTargetBJ] +title = "发布给予物品命令" +description = "命令 ${单位} 把 ${物品} 给 ${单位}" +comment = "" +script_name = UnitDropItemTarget +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = unit + +[IssueBuyUnitOrder] +title = "发布购买单位命令 [R]" +description = "使 ${玩家} 从 ${单位} 处购买 ${单位类型}" +comment = "" +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitcode +default = "hfoo" + +[IssueBuyItemOrder] +title = "发布购买物品命令 [R]" +description = "使 ${玩家} 从 ${单位} 处购买 ${物品类型}" +comment = "先让商店对玩家单位发布'中立商店 - 选择'命令,再使用该函数就能实现指定单位的购买物品了." +script_name = IssueNeutralImmediateOrderById +category = TC_UNIT +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "ckng" + +[UnitDamagePoint] +title = "伤害区域 [R]" +description = "命令 ${单位} 在 ${Seconds} 秒后对半径为 ${Size} 圆心为(${X},${Y})的范围造成 ${Amount} 点伤害(${是} 攻击伤害, ${是}远程攻击) 攻击类型: ${AttackType} 伤害类型: ${DamageType} 装甲类型: ${WeaponType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "500" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "100" +[[.args]] +type = isnotoption +default = "IsNotIs" +[[.args]] +type = isnotoption +default = "IsNotNot" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" + +[UnitDamagePointLoc] +title = "伤害区域" +description = "命令 ${单位} 在 ${Seconds} 秒后对半径为 ${Size} 圆心为 ${指定点} 的范围造成${Amount} 点伤害,攻击类型: ${AttackType} 伤害类型: ${DamageType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "500" +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = real +default = "100" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" + +[UnitDamageTarget] +title = "伤害目标 [R]" +description = "命令 ${单位} 对 ${Target} 造成 ${Amount} 点伤害(${是} 攻击伤害, ${是}远程攻击) 攻击类型: ${AttackType} 伤害类型: ${DamageType} 武器类型: ${WeaponType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "500" +[[.args]] +type = isnotoption +default = "IsNotIs" +[[.args]] +type = isnotoption +default = "IsNotNot" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" +[[.args]] +type = weapontype +default = "WEAPON_TYPE_WHOKNOWS" + +[UnitDamageTargetBJ] +title = "伤害目标" +description = "命令 ${单位} 对 ${Target} 造成 ${Amount} 点伤害,攻击类型: ${AttackType} 伤害类型: ${DamageType}" +comment = "该动作不会打断单位动作. 由该动作伤害/杀死单位同样正常触发'受到伤害'和'死亡'单位事件." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "500" +[[.args]] +type = attacktype +default = "AttackTypeNormal" +[[.args]] +type = damagetype +default = "DamageTypeNormal" + +[IsUnit] +title = "单位检查" +description = "${单位} 与 ${单位}相同" +comment = "用来判断两个单位是否相等。" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetLastCreatedUnit" + +[IsUnitDetected] +title = "被检测到" +description = "${单位} 处在 ${玩家} 的真实视野范围内" +comment = "用来判断单位在这个玩家反隐形范围内,注:不包含该玩家同盟的反隐范围。" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitType] +title = "单位类别检查" +description = "${单位} 是 ${Type}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unittype +default = "UnitTypeStructure" + +[IsUnitRace] +title = "单位种族检查" +description = "${单位} 是 ${Race}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = race +default = "RaceHuman" + +[IsUnitIdType] +title = "单位类别检查(指定单位类型)" +description = "${单位类型} 是 ${Type}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unitcode +default = "GetUnitTypeId" +[[.args]] +type = unittype +default = "UnitTypeStructure" + +[IsHeroUnitId] +title = "单位类型是英雄单位" +description = "${UnitType} 是英雄单位" +category = TC_UNIT +returns = boolean +[[.args]] +type = unitcode +default = "hfoo" + +[IsUnitInGroup] +title = "在单位组" +description = "${单位} 在 ${单位组} 中" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = group + +[IsUnitInRange] +title = "在指定单位范围内 [R]" +description = "${单位} 在距离 ${指定单位} ${范围} 范围内" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +[[.args]] +type = real +default = "600" + +[IsUnitInRangeXY] +title = "在指定坐标范围内 [R]" +description = "${单位} 在距离坐标(${X},${Y}) ${范围} 范围内" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "600" + +[IsUnitInRangeLoc] +title = "在指定点范围内 [R]" +description = "${单位} 在距离 ${指定点} ${范围} 范围内" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = location +[[.args]] +type = real +default = "600" + +[RectContainsUnit] +title = "在矩形区域内" +description = "${矩形区域} 内存在 ${单位}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitInRegion] +title = "在不规则区域内 [R]" +description = "${不规则区域} 内存在 ${单位}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = region +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitAliveBJ] +title = "单位生命值大于零" +description = "${单位} 生命值大于零" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitDeadBJ] +title = "单位生命值不大于零" +description = "${单位} 生命值不大于零" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitPausedBJ] +title = "单位暂停" +description = "${单位} 处于暂停状态" +comment = "" +script_name = IsUnitPaused +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitHiddenBJ] +title = "单位隐藏" +description = "${单位} 处于隐藏状态" +comment = "可通过'单位 - 隐藏'动作来析藏单位. 运输机,灵魂之球,祭坛中的单位都被认为是隐藏状态." +script_name = IsUnitHidden +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitIllusionBJ] +title = "单位是镜像" +description = "${单位} 是镜像单位" +comment = "" +script_name = IsUnitIllusion +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitCanSleepPerm] +title = "允许控制睡眠状态" +description = "允许控制 ${单位} 的睡眠状态" +comment = "即该单位拥有'一直睡眠'技能." +script_name = UnitCanSleepPerm +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitCanSleepBJ] +title = "允许夜晚睡眠" +description = "${单位} 会在夜晚进入睡眠" +comment = "中立生物才会睡眠." +script_name = UnitCanSleep +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitIsSleepingBJ] +title = "正在睡眠" +description = "${单位} 正在睡眠" +comment = "中立生物才会睡眠. 不包括催眠魔法." +script_name = UnitIsSleeping +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[DoesUnitGenerateAlarms] +title = "开启警报" +description = "${单位} 处于开启警报状态" +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitLoadedBJ] +title = "被装载" +description = "${单位} 被装载中" +comment = "被飞艇,船等有运输功能的单位装载." +script_name = IsUnitLoaded +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsUnitInTransportBJ] +title = "被指定单位装载" +description = "${单位} 被 ${运输机} 装载中" +comment = "" +script_name = IsUnitInTransport +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit + +[IsUnitSelected] +title = "被玩家选择" +description = "${单位} 被 ${Player} 选择" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitAlly] +title = "是玩家的同盟单位" +description = "${单位} 是 ${Player} 的同盟单位" +comment = "包括中立状态. 单向判断玩家对单位是否为不侵犯状态." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitEnemy] +title = "是玩家的敌对单位" +description = "${单位} 是 ${Player} 的敌对单位" +comment = "不包括中立状态. 单向判断玩家对单位是否为敌对侵犯." +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitOwnedByPlayer] +title = "是玩家的单位" +description = "${单位} 属于 ${Player}" +comment = "判断单位是否属于这个玩家。" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitInForce] +title = "是玩家组里玩家的单位" +description = "${单位} 属于 ${玩家组} 里的玩家" +comment = "判断单位是否属于这个玩家组里的玩家。" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = force +default = "GetPlayersAll" + +[UnitHasBuffBJ] +title = "拥有魔法效果" +description = "${单位} 拥有 ${魔法效果}" +comment = "" +category = TC_UNIT +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = buffcode + +[CountUnitsInGroup] +title = "单位组中单位数量" +description = "${单位组} 中的单位数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = group +default = "GetUnitsInRectAll" + +[CountLivingPlayerUnitsOfTypeId] +title = "玩家拥有单位数量" +description = "${单位类型} 的数量对 ${Player}" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" + +[GetUnitFoodUsed] +title = "单位使用人口数量" +description = "${单位} 使用的人口数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitFoodMade] +title = "单位提供人口数量" +description = "${单位} 提供的人口数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetFoodUsed] +title = "单位使用人口数量(指定单位类型)" +description = "${单位类型} 使用的人口数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[GetFoodMade] +title = "单位提供人口数量(指定单位类型)" +description = "${单位类型} 提供的人口数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[GetUnitPointValue] +title = "单位附加值" +description = "${单位} 的附加值" +comment = "单位附加值不可改变. 可以做一些特殊用途. 比如TD地图中的建筑贩卖价格." +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitPointValueByType] +title = "单位附加值(指定单位类型)" +description = "${单位类型} 的附加值" +comment = "单位附加值不可改变. 可以做一些特殊用途. 比如TD地图中的建筑贩卖价格." +category = TC_UNIT +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[GetUnitUserData] +title = "单位自定义值" +description = "${单位} 的自定义值" +comment = "可使用'单位 - 设置自定义值'来设置该值." +category = TC_UNIT +returns = integer +[[.args]] +type = unit + +[GetUnitLevel] +title = "单位等级" +description = "${单位} 的等级" +comment = "对于英雄则会返回其英雄等级." +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitAbilityLevel] +title = "单位技能等级 [R]" +description = "${单位} 的 ${技能} 技能等级" +comment = "如果单位没有该技能,则返回0." +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[GetUnitAbilityLevelSwapped] +title = "单位技能等级" +description = "${技能} 的等级对 ${单位}" +comment = "如果单位没有该技能,则返回0." +category = TC_UNIT +returns = integer +[[.args]] +type = abilcode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitInventoryCount] +title = "持有物品数量" +description = "${单位} 所持有的物品数量" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitInventorySizeBJ] +title = "物品栏格数" +description = "${单位} 的物品栏格数" +comment = "" +script_name = UnitInventorySize +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[UnitCountBuffsEx] +title = "拥有Buff数量 [R]" +description = "${单位} 的附带Buff数量,(${Include/Exclude} 正面Buff, ${Include/Exclude} 负面Buff${Include/Exclude} 魔法Buff, ${Include/Exclude} 物理Buff${Include/Exclude} 生命周期, ${Include/Exclude} 光环效果${Include/Exclude} 不可驱散Buff)" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoptionnot +default = "InclusionIncludeNot" + +[UnitCountBuffsExBJ] +title = "拥有Buff数量" +description = "${Buff Type} ${Buff Resist} Buff数量在 ${单位} 身上(${Include/Exclude} 生命周期, ${Include/Exclude} 光环)" +comment = "" +category = TC_UNIT +returns = integer +[[.args]] +type = buffpolarity +default = "BuffPolarityEither" +[[.args]] +type = buffresist +default = "BuffResistEither" +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = includeoption +default = "InclusionInclude" +[[.args]] +type = includeoption +default = "InclusionInclude" + +[GetUnitState] +title = "属性 [R]" +description = "${单位} 的 ${Property}" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unitstate +default = "UnitStateLife" + +[GetUnitStateSwap] +title = "属性" +description = "${Property} 对于 ${单位}" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unitstate +default = "UnitStateLife" +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitLifePercent] +title = "生命百分比" +description = "${单位} 的生命百分比" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitManaPercent] +title = "魔法百分比" +description = "${单位} 的魔法百分比" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitX] +title = "单位所在X轴坐标 [R]" +description = "${单位} 所在X轴坐标" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitY] +title = "单位所在Y轴坐标 [R]" +description = "${单位} 所在Y轴坐标" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitFacing] +title = "面向角度" +description = "${单位} 的面向角度" +comment = "采用角度制. 0度为正东方向, 90度为正北方向." +category = TC_UNIT +returns = degree +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitMoveSpeed] +title = "当前移动速度" +description = "${单位} 的当前移动速度" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitDefaultMoveSpeed] +title = "默认移动速度" +description = "${单位} 的默认移动速度" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitAcquireRange] +title = "当前主动攻击范围" +description = "${单位} 的当前主动攻击范围" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitDefaultAcquireRange] +title = "默认主动攻击范围" +description = "${单位} 的默认主动攻击范围" +comment = "" +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitTurnSpeed] +title = "当前转身速度" +description = "${单位} 的当前转身速度" +comment = "转身速度表示单位改变面向方向时的速度. 数值越小表示转身越慢." +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitDefaultTurnSpeed] +title = "默认转身速度" +description = "${单位} 的默认转身速度" +comment = "转身速度表示单位改变面向方向时的速度. 数值越小表示转身越慢." +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitPropWindow] +title = "当前转向角度(弧度制) [R]" +description = "${单位} 的当前转向角度(弧度制)" +comment = "单位转身时的转向角度. 数值越大转向幅度越大. " +category = TC_UNIT +returns = radian +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitPropWindowBJ] +title = "当前转向角度(角度制)" +description = "${单位} 的当前转向角度" +comment = "单位转身时的转向角度. 数值越大转向幅度越大." +category = TC_UNIT +returns = degree +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitDefaultPropWindowBJ] +title = "默认转向角度" +description = "${单位} 的默认转向角度" +comment = "单位转身时的转向角度. 数值越大转向幅度越大." +script_name = GetUnitDefaultPropWindow +category = TC_UNIT +returns = degree +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitFlyHeight] +title = "当前飞行高度" +description = "${单位} 的当前飞行高度" +comment = "飞行单位可以直接改变飞行高度. 其他单位通过添加/删除 替换为飞行单位的变身技能(如乌鸦形态)之后,也能改变飞行高度." +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitDefaultFlyHeight] +title = "默认飞行高度" +description = "${单位} 的默认飞行高度" +comment = "飞行单位可以直接改变飞行高度. 其他单位通过添加/删除 替换为飞行单位的变身技能(如乌鸦形态)之后,也能改变飞行高度." +category = TC_UNIT +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitName] +title = "单位名字" +description = "${单位} 的名字" +comment = "" +category = TC_UNIT +returns = string +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitLoc] +title = "单位位置" +description = "${单位} 的位置" +comment = "会创建点." +category = TC_UNIT +returns = location +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitRallyPoint] +title = "单位集结点" +description = "${单位} 的集结点位置" +comment = "如果单位没有设置集结点,则返回null. 设置自己为集结点可取消集结点设置. 会创建点." +category = TC_UNIT +returns = location +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitRallyUnit] +title = "单位集结点目标" +description = "${单位} 的集结点目标" +comment = "如果指定单位没有设置集结点到单位目标,则返回null." +category = TC_UNIT +use_in_event = 0 +returns = unit +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitCurrentOrder] +title = "当前命令ID" +description = "${单位} 的当前命令ID." +comment = "" +category = TC_UNIT +use_in_event = 0 +returns = ordercode +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetUnitRallyDestructable] +title = "单位集结点目标" +description = "${单位} 的集结点目标" +comment = "如果指定单位没有设置集结点到可破坏物上,则返回null." +category = TC_UNIT +use_in_event = 0 +returns = destructable +[[.args]] +type = unit +default = "GetTriggerUnit" + +[" CreateNUnitsAtLoc"] +title = "创建单位(面向角度) [C]" +description = "创建 ${Number} 个 ${单位} 给 ${Player} 在 ${指定点} ,面向角度为 ${Direction} 度" +comment = "面向角度采用角度制,0度为正东方向,90度为正北方向. 使用'最后创建的单位组'来获取创建的所有单位. 使用'最后创建的单位'来获取创建的单个单位." +category = TC_UNIT +returns = group +[[.args]] +type = integer +default = "1" +min = 1 +[[.args]] +type = unitcode +default = "hfoo" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = location +[[.args]] +type = degree +default = "RealUnitFacing" +min = 0 +max = 360 + +[IsTriggerEnabled] +title = "触发开启" +description = "${触发} 处于开启状态" +comment = "" +category = TC_TRIGGER +returns = boolean +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[TriggerEvaluate] +title = "触发条件成立" +description = "${触发} 的条件成立" +comment = "" +category = TC_TRIGGER +returns = boolean +[[.args]] +type = trigger + +[IsTriggerQueuedBJ] +title = "触发在队列中" +description = "${触发} 在队列中" +comment = "可使用'触发器 - 添加到队列'和'触发器 - 移出队列'动作来操作触发队列." +category = TC_TRIGGER +returns = boolean +[[.args]] +type = trigger + +[IsTriggerQueueEmptyBJ] +title = "触发队列为空" +description = "触发队列为空" +comment = "可使用'触发器 - 添加到队列'和'触发器 - 移出队列'动作来操作触发队列." +category = TC_TRIGGER +returns = boolean + +[GetTriggerEvalCount] +title = "触发条件判断次数" +description = "${Trigger} 的触发条件判断次数" +comment = "" +category = TC_TRIGGER +returns = integer +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[GetTriggerExecCount] +title = "触发动作运行次数" +description = "${Trigger} 的触发动作运行次数" +comment = "" +category = TC_TRIGGER +returns = integer +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[QueuedTriggerCountBJ] +title = "队列中触发数量" +description = "触发队列中的触发数量" +comment = "可使用'触发器 - 添加到队列'和'触发器 - 移出队列'动作来操作触发队列." +category = TC_TRIGGER +returns = integer + +[GetTriggerName] +title = "触发名字" +description = "当前触发的名字" +comment = "" +category = TC_TRIGGER +returns = string + +[CreateTrigger] +title = "新建触发 [R]" +description = "新建触发" +comment = "会创建一个新的触发器,如果对该功能不熟悉请慎用." +category = TC_TRIGGER +returns = trigger + +[IsUnitGroupEmptyBJ] +title = "单位组为空" +description = "${单位组} 为空" +comment = "" +category = TC_UNITGROUP +returns = boolean +[[.args]] +type = group + +[IsUnitGroupInRectBJ] +title = "单位组中单位在矩形区域内" +description = "${单位组} 中所有单位在 ${矩形区域} 内" +comment = "" +category = TC_UNITGROUP +returns = boolean +[[.args]] +type = group +[[.args]] +type = rect + +[IsUnitGroupDeadBJ] +title = "单位组中所有单位死亡" +description = "${单位组} 中所有单位死亡" +comment = "" +category = TC_UNITGROUP +returns = boolean +[[.args]] +type = group + +[IsMultiboardDisplayed] +title = "多面板显示" +description = "${Multiboard} 是显示的" +comment = "" +category = TC_MULTIBOARD +use_in_event = 0 +returns = boolean +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[IsMultiboardMinimized] +title = "多面板最小化" +description = "${Multiboard} 是最小化的" +comment = "" +category = TC_MULTIBOARD +use_in_event = 0 +returns = boolean +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardGetRowCount] +title = "行数" +description = "${Multiboard} 的行数" +comment = "" +category = TC_MULTIBOARD +returns = integer +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardGetColumnCount] +title = "列数" +description = "${Multiboard} 的列数" +comment = "" +category = TC_MULTIBOARD +returns = integer +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[MultiboardGetTitleText] +title = "多面板标题" +description = "${Multiboard} 的标题" +comment = "" +category = TC_MULTIBOARD +returns = string +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[IsPointBlighted] +title = "坐标点被荒芜地表覆盖 [R]" +description = "坐标点(${X},${Y})被荒芜地表覆盖" +comment = "" +category = TC_ENVIRONMENT +returns = boolean +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IsPointBlightedBJ] +title = "点被荒芜地表覆盖" +description = "${指定点} 被荒芜地表覆盖" +comment = "" +category = TC_ENVIRONMENT +returns = boolean +[[.args]] +type = location + +[IsTerrainPathable] +title = "地形通行状态关闭(指定坐标) [R]" +description = "坐标(${X},${Y})处的 ${Pathing Type} 通行状态为关闭" +comment = "指定类型单位不能通行即通行状态为关闭. 如该点不能造建筑就是'建造'通行状态为关闭. 可使用'环境 - 设置地形通行状态'来改变通行状态." +category = TC_ENVIRONMENT +returns = boolean +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = pathingtype +default = "PathingTypeWalkability" + +[IsTerrainPathableBJ] +title = "地形通行状态关闭(指定点)" +description = "${指定点} 处的 ${Pathing Type} 通行状态为关闭" +comment = "指定类型单位不能通行即通行状态为关闭. 如该点不能造建筑就是'建造'通行状态为关闭. 可使用'环境 - 设置地形通行状态'来改变通行状态." +category = TC_ENVIRONMENT +returns = boolean +[[.args]] +type = location +[[.args]] +type = pathingtype +default = "PathingTypeWalkability" + +[GetTerrainCliffLevel] +title = "地形悬崖高度(指定坐标) [R]" +description = "坐标(${X},${Y})处的地形悬崖高度" +comment = "悬崖高度:深水区为0, 浅水区为1, 平原为2, 之后每层+1." +category = TC_ENVIRONMENT +returns = integer +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GetTerrainCliffLevelBJ] +title = "地形悬崖高度(指定点)" +description = "${指定点} 处的地形悬崖高度" +comment = "悬崖高度:深水区为0, 浅水区为1, 平原为2, 之后每层+1." +category = TC_ENVIRONMENT +returns = integer +[[.args]] +type = location + +[GetTerrainVariance] +title = "地形样式(指定坐标) [R]" +description = "坐标(${X},${Y})处的地形样式" +comment = "" +category = TC_ENVIRONMENT +returns = integer +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GetTerrainVarianceBJ] +title = "地形样式(指定点)" +description = "${指定点} 处的地形样式" +comment = "" +category = TC_ENVIRONMENT +returns = integer +[[.args]] +type = location +default = "GetRectCenter" + +[GetTerrainType] +title = "指定坐标地形 [R]" +description = "坐标(${X},${Y})处的地形" +comment = "" +category = TC_ENVIRONMENT +returns = terraintype +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GetTerrainTypeBJ] +title = "指定点地形" +description = "${指定点} 处的地形" +comment = "" +category = TC_ENVIRONMENT +returns = terraintype +[[.args]] +type = location + +[IsFogEnabled] +title = "战争迷雾开启" +description = "战争迷雾开启" +comment = "" +category = TC_VISIBILITY +returns = boolean + +[IsFogMaskEnabled] +title = "黑色阴影开启" +description = "黑色阴影开启" +comment = "" +category = TC_VISIBILITY +returns = boolean + +[IsUnitVisible] +title = "单位可见" +description = "${单位} 对 ${Player} 可见" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitInvisible] +title = "单位不可见" +description = "${单位} 对 ${Player} 不可见" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitFogged] +title = "单位在迷雾中" +description = "${单位} 在 ${Player} 的迷雾范围内" +comment = "黑色阴影内的单位不被计算在内." +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsUnitMasked] +title = "单位在黑色阴影中" +description = "${单位} 在 ${Player} 的黑色阴影内" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = player +default = "Player00" + +[IsLocationVisibleToPlayer] +title = "点可见" +description = "${指定点}对 ${Player} 可见" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = player +default = "Player00" + +[IsVisibleToPlayer] +title = "坐标可见" +description = "坐标(${x},${y}) 对 ${玩家} 可见" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = player +default = "Player00" + +[IsLocationFoggedToPlayer] +title = "点在迷雾中" +description = "${指定点} 在 ${Player} 的迷雾范围内" +comment = "黑色阴影内的点不被计算在内." +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = player +default = "Player00" + +[IsFoggedToPlayer] +title = "坐标在迷雾中" +description = "坐标(${x},${y}) 在 ${玩家} 的迷雾范围内" +comment = "黑色阴影内的坐标不被计算在内。" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = player +default = "Player00" + +[IsLocationMaskedToPlayer] +title = "点在黑色阴影中" +description = "${指定点} 在 ${Player} 的黑色阴影内" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = location +default = "GetRectCenter" +[[.args]] +type = player +default = "Player00" + +[IsMaskedToPlayer] +title = "坐标在黑色阴影中" +description = "坐标(${x},${y}) 在 ${玩家} 的黑色阴影内" +comment = "" +category = TC_VISIBILITY +returns = boolean +[[.args]] +type = real +[[.args]] +type = real +[[.args]] +type = player +default = "Player00" + +[IsDestructableAliveBJ] +title = "可破坏物存活" +description = "${可破坏物} 是存活的" +comment = "" +category = TC_DESTRUCT +returns = boolean +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[IsDestructableDeadBJ] +title = "可破坏物死亡" +description = "${可破坏物} 是死亡的" +comment = "" +category = TC_DESTRUCT +returns = boolean +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[IsDestructableInvulnerableBJ] +title = "物件无敌" +description = "${物件} 是无敌的" +comment = "" +script_name = IsDestructableInvulnerable +category = TC_DESTRUCT +returns = boolean +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetElevatorHeight] +title = "升降机高度" +description = "${升降机} 的高度" +comment = "可以使用'可破坏物 - 设置升降机高度'来设置升降机高度." +category = TC_DESTRUCT +returns = integer +[[.args]] +type = destructable + +[GetDestructableLife] +title = "生命值" +description = "${可破坏物} 的当前生命值" +comment = "" +category = TC_DESTRUCT +returns = real +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableMaxLife] +title = "最大生命值" +description = "${可破坏物} 的最大生命值" +comment = "" +category = TC_DESTRUCT +returns = real +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableOccluderHeight] +title = "闭塞高度" +description = "${可破坏物} 的闭塞高度" +comment = "" +category = TC_DESTRUCT +returns = real +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableX] +title = "可破坏物所在X轴坐标 [R]" +description = "${可破坏物} 所在X轴坐标" +comment = "" +category = TC_DESTRUCT +returns = real +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableY] +title = "可破坏物所在Y轴坐标 [R]" +description = "${可破坏物} 所在Y轴坐标" +category = TC_DESTRUCT +returns = real +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableName] +title = "物件名字" +description = "${物件} 的名字" +comment = "" +category = TC_DESTRUCT +returns = string +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[GetDestructableLoc] +title = "可破坏物位置" +description = "${可破坏物} 的位置" +comment = "会创建点." +category = TC_DESTRUCT +returns = location +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[LeaderboardHasPlayerItemBJ] +title = "玩家在排行榜" +description = "${Leaderboard} 中包含 ${Player}" +comment = "" +script_name = LeaderboardHasPlayerItem +category = TC_LEADERBOARD +returns = boolean +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" +[[.args]] +type = player +default = "Player00" + +[LeaderboardGetPlayerIndexBJ] +title = "排行榜位置" +description = "${Player} 在 ${Leaderboard} 的排名" +comment = "" +category = TC_LEADERBOARD +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[LeaderboardGetItemCount] +title = "行数" +description = "${Leaderboard} 的行数" +comment = "" +category = TC_LEADERBOARD +returns = integer +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[LeaderboardGetIndexedPlayerBJ] +title = "玩家所在排行榜位置" +description = "第 ${Position} 位玩家在 ${Leaderboard} 中" +comment = "" +category = TC_LEADERBOARD +use_in_event = 0 +returns = player +[[.args]] +type = integer +default = "1" +min = 1 +max = 16 +[[.args]] +type = leaderboard +default = "GetLastCreatedLeaderboard" + +[IsPointInRegion] +title = "包含坐标" +description = "${不规则区域} 内包含坐标(${X},${Y})" +comment = "TC_REGION" +category = TC_REGION +returns = boolean +[[.args]] +type = region +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[IsLocationInRegion] +title = "包含点" +description = "${不规则区域} 内包含点: ${点}" +comment = "TC_REGION" +category = TC_REGION +returns = boolean +[[.args]] +type = region +[[.args]] +type = location + +[RectContainsLoc] +title = "包含点" +description = "${矩形区域} 内包含 ${点}" +comment = "" +category = TC_RECT +returns = boolean +[[.args]] +type = rect +default = "GetPlayableMapRect" +[[.args]] +type = location + +[GetRectCenterX] +title = "中心X坐标" +description = "${矩形区域} 的中心X坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectCenterY] +title = "中心Y坐标" +description = "${矩形区域} 的中心Y坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectMinX] +title = "左下角X坐标" +description = "${矩形区域} 的左下角X坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectMinY] +title = "左下角Y坐标" +description = "${矩形区域} 的左下角Y坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectMaxX] +title = "右上角X坐标" +description = "${矩形区域} 的右上角X坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectMaxY] +title = "右上角Y坐标" +description = "${矩形区域} 的右上角Y坐标" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[GetRectWidthBJ] +title = "宽度" +description = "${矩形区域} 的宽度" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect + +[GetRectHeightBJ] +title = "高度" +description = "${矩形区域} 的高度" +comment = "" +category = TC_RECT +returns = real +[[.args]] +type = rect + +[IsQuestItemCompleted] +title = "任务项目完成" +description = "${Quest Requirement} 已完成" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = questitem +default = "GetLastCreatedQuestItemBJ" + +[IsQuestEnabled] +title = "任务激活" +description = "${Quest} 已激活" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[IsQuestCompleted] +title = "任务完成" +description = "${Quest} 已完成" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[IsQuestFailed] +title = "任务失败" +description = "${Quest} 失败" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[IsQuestDiscovered] +title = "任务被发现" +description = "${Quest} 已被发现" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[IsQuestRequired] +title = "是主要任务" +description = "${Quest} 是主要任务" +comment = "" +category = TC_QUEST +returns = boolean +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" + +[CreateQuest] +title = "新建任务 [R]" +description = "新建任务 " +comment = "新建一个任务.注:这条毫无用处,别用——everguo" +category = TC_QUEST +returns = quest + +[YDWECreateQuest] +title = "新建任务[YDWE]" +description = "新建一个 ${Quest Type} 任务,标题: ${文字} 任务说明: ${文字} 任务图标: ${Icon Path}" +comment = "新建一个任务;YDWE新增。" +script_name = CreateQuestBJ +category = TC_QUEST +returns = quest +[[.args]] +type = questtypeoption +default = "QuestTypeReqDiscovered" +[[.args]] +type = StringExt +max = 24 +[[.args]] +type = StringExt +[[.args]] +type = imagefile +default = "\"ReplaceableTextures\\CommandButtons\\BTNAmbush.blp\"" + +[YDWECreateQuestItem] +title = "创建任务目标项[YDWE]" +description = "为 ${Quest} 创建一个任务目标项: ${文字}" +comment = "新建一个任务目标项;YDWE新增功能。" +script_name = CreateQuestItemBJ +category = TC_QUEST +returns = questitem +[[.args]] +type = quest +default = "GetLastCreatedQuestBJ" +[[.args]] +type = StringExt + +[IsPlayerFlagSetBJ] +title = "玩家参数开启" +description = "${Player Flag} 为允许,对 ${Player}" +comment = "" +category = TC_PLAYER +returns = boolean +[[.args]] +type = playerflag +default = "PlayerFlagGivesBounty" +[[.args]] +type = player +default = "PlayerNA" + +[IsPlayerAlly] +title = "是玩家的盟友" +description = "${Player} 是 ${Player} 的盟友" +comment = "包括中立状态. 单向判断玩家A对玩家B联盟不侵犯,即表示玩家A是玩家B的盟友." +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "GetTriggerPlayer" +[[.args]] +type = player +default = "Player00" + +[IsPlayerEnemy] +title = "是玩家的敌人" +description = "${Player} 是 ${Player} 的敌人" +comment = "不包括中立状态. 单向判断玩家A对玩家B敌对侵犯,即表示玩家A是玩家B的盟友." +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "GetTriggerPlayer" +[[.args]] +type = player +default = "Player00" + +[IsPlayerObserver] +title = "玩家是裁判或观察者 [R]" +description = "${Player}是裁判或观察者" +comment = "" +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "GetTriggerPlayer" + +[IsPlayerRacePrefSet] +title = "玩家的种族选择" +description = "${Player} 选择了 ${RacePreference}" +comment = "" +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "GetTriggerPlayer" +[[.args]] +type = racepreference +default = "RacePrefRandom" + +[GetPlayerAlliance] +title = "联盟状态设置" +description = "${Player} 对 ${Player} 开启 ${Alliance Type}" +comment = "" +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "GetTriggerPlayer" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = alliancetype +default = "AllianceTypePassive" + +[IsPlayerInForce] +title = "在玩家组" +description = "${Player} 在 ${玩家组} 中" +comment = "" +category = TC_PLAYER +returns = boolean +[[.args]] +type = player +default = "Player00" +[[.args]] +type = force +default = "GetPlayersAll" + +[GetPlayerState] +title = "玩家属性" +description = "${Player} ${Property}" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerstate +default = "PlayerStateGold" + +[GetPlayerTaxRate] +title = "玩家税率 [R]" +description = "${Player} 需要交纳给 ${Player} 的 ${Resource} 所得税" +comment = "所得税取值范围0-100." +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" +[[.args]] +type = playerresource +default = "PlayerResourceGold" + +[GetPlayerTaxRateBJ] +title = "玩家税率" +description = "${Resource} 所得税, ${Player} 交纳给 ${Player}" +comment = "所得税取值范围0-100." +category = TC_PLAYER +returns = integer +[[.args]] +type = playerresource +default = "PlayerResourceGold" +[[.args]] +type = player +default = "Player00" +[[.args]] +type = player +default = "Player01" + +[GetPlayerScore] +title = "玩家得分" +description = "${Player} ${Score}" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerscore +default = "PlayerScoreTotal" + +[GetConvertedPlayerId] +title = "玩家ID" +description = "${Player} 的玩家ID" +comment = "玩家ID取值1-16." +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "GetTriggerPlayer" + +[GetPlayerId] +title = "玩家ID - 1 [R]" +description = "${Player} 的玩家ID - 1" +comment = "玩家ID取值1-16." +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "GetTriggerPlayer" + +[GetPlayerStructureCount] +title = "建筑数量" +description = "${Player} 拥有的建筑数量(${Include/Exclude} 未完成的)" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetPlayerUnitCount] +title = "非建筑单位数量" +description = "${Player} 拥有的非建筑单位数量(${Include/Exclude} 未完成的)" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetPlayerTechCountSimple] +title = "当前科技等级" +description = "${科技} 的当前等级对 ${Player}" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = techcode +[[.args]] +type = player +default = "Player00" + +[GetPlayerTechMaxAllowedSwap] +title = "最大科技等级" +description = "${科技} 的最大等级对 ${Player}" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = techcode +[[.args]] +type = player +default = "Player00" + +[GetPlayerTeam] +title = "玩家队伍" +description = "${Player} 所属队伍编号" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = player +default = "Player00" + +[CountPlayersInForceBJ] +title = "玩家组中玩家数量" +description = "${玩家组} 中的玩家数量" +comment = "" +category = TC_PLAYER +returns = integer +[[.args]] +type = force +default = "GetPlayersByMapControl" + +[GetPlayerHandicapXPBJ] +title = "经验增长率" +description = "${Player} 的经验增长率" +comment = "百分比数值, 默认值为100." +category = TC_PLAYER +returns = real +[[.args]] +type = player +default = "Player00" + +[GetPlayerHandicapBJ] +title = "生命障碍" +description = "${Player} 的生命障碍" +comment = "百分比数值, 默认值为100." +category = TC_PLAYER +returns = real +[[.args]] +type = player +default = "Player00" + +[GetPlayerName] +title = "玩家名字" +description = "${Player} 的名字" +comment = "" +category = TC_PLAYER +returns = string +[[.args]] +type = player +default = "GetTriggerPlayer" + +[GetPlayerStartLocationLoc] +title = "玩家开始位置" +description = "${Player} 的游戏开始位置" +comment = "会创建点." +category = TC_PLAYER +returns = location +[[.args]] +type = player +default = "Player00" + +[CheckItemStatus] +title = "物品状态检查" +description = "${物品} 是 ${Status} 的" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = itemstatus +default = "ItemStatusHidden" + +[CheckItemcodeStatus] +title = "物品类型状态检查" +description = "${物品类型} 是 ${Status} 的" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = itemcode +default = "GetItemTypeId" +[[.args]] +type = itemcodestatus +default = "ItemcodeStatusPowerup" + +[IsItemVisible] +title = "物品可见 [R]" +description = "${物品} 是可见的" +comment = "物品不被隐藏且不被单位持有时即为可见的." +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "bj_lastCreatedItem" + +[IsItemHiddenBJ] +title = "物品隐藏" +description = "${物品} 是隐藏的" +comment = "单位持有的物品也被认为是隐藏的. 建议使用物品可见=False来作判断." +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "GetLastCreatedItem" + +[IsItemOwned] +title = "物品被持有" +description = "${物品} 是被持有的" +comment = "在物品栏中的物品都是被持有的. 就算单位正处于死亡状态." +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item + +[IsItemPowerup] +title = "物品是拾取时自动使用的 [R]" +description = "${物品} 是拾取时自动使用类物品" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "bj_lastCreatedItem" + +[IsItemSellable] +title = "物品可被市场随机出售 [R]" +description = "${物品} 可被市场随机出售" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "bj_lastCreatedItem" + +[IsItemPawnable] +title = "物品可被抵押 [R]" +description = "${物品} 可被抵押" +comment = "" +category = TC_ITEM +use_in_event = 0 +returns = boolean +[[.args]] +type = item +default = "bj_lastCreatedItem" + +[RectContainsItem] +title = "物品在矩形区域" +description = "${物品} 在 ${矩形区域}" +comment = "单位持有的物品不会被计算在内." +category = TC_ITEM +returns = boolean +[[.args]] +type = item +default = "GetLastCreatedItem" +[[.args]] +type = rect + +[IsItemInvulnerable] +title = "物品无敌" +description = "${物品} 是无敌的" +comment = "" +category = TC_ITEM +returns = boolean +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetInventoryIndexOfItemTypeBJ] +title = "物品在物品栏的序号 [C]" +description = "${单位} 所持有的 ${物品类型} 的物品栏序号" +comment = "如果单位没有该类型的物品则返回0" +category = TC_ITEM +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "texp" + +[GetItemLevel] +title = "物品等级" +description = "${物品} 的物品等级" +comment = "" +category = TC_ITEM +returns = integer +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemCharges] +title = "使用次数" +description = "${物品} 的使用次数" +comment = "无限使用物品将返回0." +category = TC_ITEM +returns = integer +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemUserData] +title = "物品自定义值" +description = "${物品} 的自定义值" +comment = "可以使用'物品 - 设置自定义值'来设置该值." +category = TC_ITEM +returns = integer +[[.args]] +type = item + +[GetItemLifeBJ] +title = "生命值" +description = "${物品} 的当前生命值" +comment = "" +category = TC_ITEM +returns = real +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemX] +title = "物品的X轴坐标 [R]" +description = "${物品} 的X轴坐标" +comment = "" +category = TC_ITEM +returns = real +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemY] +title = "物品的Y轴坐标 [R]" +description = "${物品} 的Y轴坐标" +comment = "" +category = TC_ITEM +returns = real +[[.args]] +type = item +default = "GetLastCreatedItem" + +[GetItemName] +title = "物品名字" +description = "${物品} 的名字" +comment = "" +category = TC_ITEM +returns = string +[[.args]] +type = item +default = "GetManipulatedItem" + +[GetItemLoc] +title = "物品位置" +description = "${物品} 的位置" +comment = "会创建点." +category = TC_ITEM +returns = location +[[.args]] +type = item +default = "GetLastCreatedItem" + +[UnitHasItem] +title = "持有物品" +description = "${Hero} 拥有 ${物品}" +comment = "" +category = TC_HERO +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetLastCreatedItem" + +[UnitHasItemOfTypeBJ] +title = "持有物品(指定类型)" +description = "${Hero} 拥有 ${物品类型}" +comment = "" +category = TC_HERO +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = itemcode +default = "texp" + +[IsSuspendedXP] +title = "经验不可获得" +description = "${Hero} 不可获得经验" +comment = "可使用'英雄 - 允许/禁止经验获取'来设置该项." +category = TC_HERO +returns = boolean +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetHeroLevel] +title = "英雄等级" +description = "${英雄} 的英雄等级" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetHeroXP] +title = "英雄经验值" +description = "${英雄} 的经验值" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[GetHeroStr] +title = "英雄力量 [R]" +description = "${英雄} 的力量值(${Include/Exclude} 加成)" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetHeroAgi] +title = "英雄敏捷 [R]" +description = "${英雄} 的敏捷值(${Include/Exclude} 加成)" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetHeroInt] +title = "英雄智力 [R]" +description = "${英雄} 的智力值(${Include/Exclude} 加成)" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetHeroStatBJ] +title = "英雄属性" +description = "${Attribute} 对 ${英雄} (${Include/Exclude} 加成)" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = herostat +default = "HeroStatStr" +[[.args]] +type = unit +[[.args]] +type = includeoption +default = "InclusionExclude" + +[GetHeroSkillPoints] +title = "未分配技能点数" +description = "${英雄} 的未分配技能点数" +comment = "" +category = TC_HERO +returns = integer +[[.args]] +type = unit + +[GetHeroProperName] +title = "英雄称谓" +description = "${Hero} 的称谓" +comment = "如圣骑士会返回'无惧的布赞恩'而不是'圣骑士'." +category = TC_HERO +returns = string +[[.args]] +type = unit +default = "GetTriggerUnit" + +[IsMapFlagSet] +title = "地图参数设置" +description = "${Map Flag} 已设置" +comment = "" +category = TC_GAME +returns = boolean +[[.args]] +type = mapflag +default = "MapFlagUseHandicaps" + +[IsCustomCampaignButtonVisibile] +title = "自定义战役按钮可见" +description = "自定义战役按钮# ${Number} 可见" +comment = "" +category = TC_GAME +use_in_event = 0 +returns = boolean +[[.args]] +type = integer +default = "1" +min = 1 + +[GetCreepCampFilterState] +title = "小地图中立生物显示开启" +description = "小地图中立生物显示开启" +comment = "" +category = TC_GAME +returns = boolean + +[SaveGameExists] +title = "游戏存档存在" +description = "${存档文件} 已存在" +comment = "" +category = TC_GAME +use_in_event = 0 +returns = boolean +[[.args]] +type = anyfile + +[IsNoVictoryCheat] +title = "无法胜利 [R]" +description = "玩家开启作弊模式: 无法胜利" +comment = "单机作弊码开启的模式." +category = TC_GAME +use_in_event = 0 +returns = boolean + +[IsNoDefeatCheat] +title = "无法失败 [R]" +description = "玩家开启作弊模式: 无法失败" +comment = "单机作弊码开启的模式." +category = TC_GAME +use_in_event = 0 +returns = boolean + +[GetPlayers] +title = "玩家数量" +description = "玩家数量" +comment = "地图编辑器中开启的玩家数量(1-12)." +category = TC_GAME +returns = integer + +[GetTeams] +title = "队伍数量" +description = "队伍数量" +comment = "" +category = TC_GAME +returns = integer + +[GetAllyColorFilterState] +title = "联盟颜色显示设置" +description = "联盟颜色显示设置" +comment = "0为不开启. 1为小地图显示. 2为小地图和游戏都显示." +category = TC_GAME +returns = integer + +[GetTournamentFinishNowRule] +title = "比赛结束规则" +description = "比赛结束规则" +comment = "1表示游戏开始时间已经超过限定时,无法以平局结束. 其他值表示游戏还在初期阶段,此时退出游戏将以平局结束.." +category = TC_GAME +use_in_event = 0 +returns = integer + +[GetTournamentScore] +title = "对战比赛得分" +description = "${Player} 的当前对战比赛得分" +comment = "对战游戏时如果游戏时间过长,系统将以该值来决定胜负." +category = TC_GAME +use_in_event = 0 +returns = integer +[[.args]] +type = player +default = "Player00" + +[GetTimeOfDay] +title = "游戏时间" +description = "游戏时间" +comment = "游戏中的昼夜时间." +category = TC_GAME +returns = real + +[GetTimeOfDayScalePercentBJ] +title = "昼夜时间流逝速度" +description = "昼夜时间流逝速度" +comment = "百分比数值, 100为默认值." +category = TC_GAME +returns = real + +[GetAbilityName] +title = "技能名称" +description = "${技能} 的名称" +comment = "" +script_name = GetObjectName +category = TC_GAME +returns = string +[[.args]] +type = abilcode + +[GetAbilityEffectBJ] +title = "技能效果路径名" +description = "${技能} 的 ${EffectType} 路径名(序号: ${Index})" +comment = "返回技能效果的模型路径,不管该效果是否存在.实际上就是技能编辑器中按Ctrl+D看到的文本内容. 该效果有多个模型时,序号表示取哪一个模型,如果该序号对应的文本内容不存在则返回上一序号." +script_name = GetAbilityEffectById +category = TC_GAME +returns = string +[[.args]] +type = abilcode +[[.args]] +type = effecttype +default = "EffectTypeEffect" +[[.args]] +type = integer +default = "0" + +[GetAbilitySoundBJ] +title = "技能音效名" +description = "${技能} 的 ${SoundType} 名字" +comment = "同样,实际上就是技能编辑器中按Ctrl+D看到的文本内容." +script_name = GetAbilitySoundById +category = TC_GAME +returns = string +[[.args]] +type = abilcode +[[.args]] +type = soundtype +default = "SoundTypeEffect" + +[GetStoredBoolean] +title = "读取布尔值[R]" +description = "从${Game Cache}中读取布尔值,类别: ${Category},名称: ${文字}" +comment = "如果该值不存在则返回false." +category = TC_GAMECACHE +returns = boolean +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string + +[HaveStoredValue] +title = "缓存项存在" +description = "名称为 ${文字} 的 ${Type} 类缓存项被保存在类别: ${Category} 缓存: ${Game Cache}" +comment = "" +category = TC_GAMECACHE +use_in_event = 0 +returns = boolean +[[.args]] +type = string +[[.args]] +type = cachevaluetype +default = "CacheValueTypeUnit" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[GetStoredInteger] +title = "缓存读取整数 [C]" +description = "从${Game Cache}中读取整数值,类别: ${Category},名称: ${文字}" +comment = "如果该值不存在则返回0." +category = TC_GAMECACHE +returns = integer +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string + +[GetStoredReal] +title = "缓存读取实数 [C]" +description = "从 ${Game Cache} 中读取实数,类别: ${Category} 名称: ${文字}" +comment = "如果该值不存在则返回0." +category = TC_GAMECACHE +returns = real +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string + +[GetStoredString] +title = "读取字符串 [C]" +description = "从 ${Game Cache} 中读取字符串,类别: ${Category} 名称: ${文字}" +comment = "如果该值不存在,则返回空字符串. 注意,空字符串不等于null" +category = TC_GAMECACHE +returns = string +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = string + +[InitGameCache] +title = "新建游戏缓存 [R]" +description = "新建游戏缓存: ${缓存名}" +comment = "创建一个新的游戏缓存,一个地图最多只有有256个游戏缓存." +category = TC_GAMECACHE +returns = gamecache +[[.args]] +type = string +default = "\"MapName.w3v\"" + +[WaygateIsActiveBJ] +title = "传送门激活" +description = "${传送门} 处于激活状态" +comment = "" +script_name = WaygateIsActive +category = TC_NEUTRALBUILDING +returns = boolean +[[.args]] +type = unit + +[GetResourceAmount] +title = "储金量" +description = "${金矿} 的储金量" +comment = "只对金矿有效." +category = TC_NEUTRALBUILDING +returns = integer +[[.args]] +type = unit + +[WaygateGetDestinationX] +title = "传送门目的地X坐标" +description = "${传送门} 的目的地X坐标" +comment = "" +category = TC_NEUTRALBUILDING +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[WaygateGetDestinationY] +title = "传送门目的地Y坐标" +description = "${传送门} 的目的地Y坐标" +comment = "" +category = TC_NEUTRALBUILDING +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" + +[WaygateGetDestinationLocBJ] +title = "传送门目的地" +description = "${传送门} 的目的地" +comment = "会创建点." +category = TC_NEUTRALBUILDING +returns = location +[[.args]] +type = unit + +[LoadBooleanBJ] +title = "<1.24> 从哈希表提取布尔" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取布尔" +comment = "如果不存在则返回False" +category = TC_HASHTABLE +returns = boolean +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadBoolean] +title = "<1.24> 从哈希表提取布尔 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取布尔" +comment = "如果不存在则返回False" +category = TC_HASHTABLE +returns = boolean +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[HaveSavedValue] +title = "<1.24> 哈希项存在" +description = "子索引为 ${Value} 的 ${Type} 类数据被保存在主索引为 ${Value} 的 ${Hashtable} 中" +comment = "" +category = TC_HASHTABLE +use_in_event = 0 +returns = boolean +[[.args]] +type = integer +[[.args]] +type = hashtablevaluetype +default = "HashtableValueTypeHandle" +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[GetHandleIdBJ] +title = "<1.24> 获取对象的h2i值" +description = "转换 ${Handle} 为整数" +comment = "创建一个对应该handle的临时密钥,可以在哈希表中作为索引号使用.当该handle被彻底销毁时,密钥会被回收." +category = TC_HASHTABLE +returns = integer +[[.args]] +type = handle + +[GetHandleId] +title = "<1.24> 获取对象的h2i值 [C]" +description = "转换 ${Handle} 为整数" +comment = "创建一个对应该handle的临时密钥,可以在哈希表中作为索引号使用.当该handle被彻底销毁时,密钥会被回收." +category = TC_HASHTABLE +returns = integer +[[.args]] +type = handle + +[StringHashBJ] +title = "<1.24> 获取字符串的哈希值" +description = "转换 ${String} 为整数" +comment = "创建一个对应该字符串的永久密钥,可以在哈希表中作为索引号使用" +category = TC_HASHTABLE +returns = integer +[[.args]] +type = string + +[LoadIntegerBJ] +title = "<1.24> 从哈希表提取整数" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取整数" +comment = "如果不存在则返回0" +category = TC_HASHTABLE +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadInteger] +title = "<1.24> 从哈希表提取整数 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取整数" +comment = "如果不存在则返回0" +category = TC_HASHTABLE +returns = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadRealBJ] +title = "<1.24> 从哈希表提取实数" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取实数" +comment = "如果不存在则返回0.00" +category = TC_HASHTABLE +returns = real +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadReal] +title = "<1.24> 从哈希表提取实数 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取实数" +comment = "如果不存在则返回0.00" +category = TC_HASHTABLE +returns = real +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadStringBJ] +title = "<1.24> 从哈希表提取字符串" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取字符串" +comment = "如果不存在则返回空字符串" +category = TC_HASHTABLE +use_in_event = 0 +returns = string +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadStr] +title = "<1.24> 从哈希表提取字符串 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取字符串" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +use_in_event = 0 +returns = string +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadPlayerHandleBJ] +title = "<1.24> 从哈希表提取玩家" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取玩家" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = player +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadPlayerHandle] +title = "<1.24> 从哈希表提取玩家 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取玩家" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = player +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadDestructableHandleBJ] +title = "<1.24> 从哈希表提取可破坏物" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取可破坏物" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = destructable +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadDestructableHandle] +title = "<1.24> 从哈希表提取可破坏物 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取可破坏物" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = destructable +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadItemHandleBJ] +title = "<1.24> 从哈希表提取物品" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取物品" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = item +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadItemHandle] +title = "<1.24> 从哈希表提取物品 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取物品" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = item +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadUnitHandleBJ] +title = "<1.24> 从哈希表提取单位" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取单位" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = unit +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadUnitHandle] +title = "<1.24> 从哈希表提取单位 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取单位" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = unit +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[YDWELoadAbilityHandleBJ] +title = "<1.24> 从哈希表提取技能" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取技能" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = abilcode +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[YDWELoadAbilityHandle] +title = "<1.24> 从哈希表提取技能 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取技能" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = abilcode +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTimerHandleBJ] +title = "<1.24> 从哈希表提取计时器" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取计时器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = timer +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTimerHandle] +title = "<1.24> 从哈希表提取计时器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取计时器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = timer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTriggerHandleBJ] +title = "<1.24> 从哈希表提取触发器" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取触发器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = trigger +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTriggerHandle] +title = "<1.24> 从哈希表提取触发器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取触发器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = trigger +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTriggerConditionHandleBJ] +title = "<1.24> 从哈希表提取触发条件" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取触发条件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = triggercondition +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTriggerConditionHandle] +title = "<1.24> 从哈希表提取触发条件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取触发条件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = triggercondition +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTriggerActionHandleBJ] +title = "<1.24> 从哈希表提取触发动作" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取触发动作" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = triggeraction +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTriggerActionHandle] +title = "<1.24> 从哈希表提取触发动作 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取触发动作" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = triggeraction +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTriggerEventHandleBJ] +title = "<1.24> 从哈希表提取触发事件" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取触发事件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = event +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTriggerEventHandle] +title = "<1.24> 从哈希表提取触发事件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取触发事件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = event +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadForceHandleBJ] +title = "<1.24> 从哈希表提取玩家组" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取玩家组" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = force +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadForceHandle] +title = "<1.24> 从哈希表提取玩家组 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取玩家组" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = force +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadGroupHandleBJ] +title = "<1.24> 从哈希表提取单位组" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取单位组" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = group +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadGroupHandle] +title = "<1.24> 从哈希表提取单位组 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取单位组" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = group +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadLocationHandleBJ] +title = "<1.24> 从哈希表提取点" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取点" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = location +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadLocationHandle] +title = "<1.24> 从哈希表提取点 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取点" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = location +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadRegionHandleBJ] +title = "<1.24> 从哈希表提取区域(不规则)" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取区域(不规则)" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = region +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadRegionHandle] +title = "<1.24> 从哈希表提取区域(不规则) [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取区域(不规则)" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = region +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadRectHandleBJ] +title = "<1.24> 从哈希表提取区域(矩型)" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取区域(矩型)" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = rect +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadRectHandle] +title = "<1.24> 从哈希表提取区域(矩型) [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取区域(矩型)" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = rect +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadBooleanExprHandleBJ] +title = "<1.24> 从哈希表提取布尔表达式" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取布尔表达式" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = boolexpr +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadBooleanExprHandle] +title = "<1.24> 从哈希表提取布尔表达式 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取布尔表达式" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = boolexpr +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadSoundHandleBJ] +title = "<1.24> 从哈希表提取音效" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取音效" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = sound +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadSoundHandle] +title = "<1.24> 从哈希表提取音效 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取音效" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = sound +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadEffectHandleBJ] +title = "<1.24> 从哈希表提取特效" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取特效" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = effect +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadEffectHandle] +title = "<1.24> 从哈希表提取特效 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取特效" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = effect +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadUnitPoolHandleBJ] +title = "<1.24> 从哈希表提取单位池" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取单位池" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = unitpool +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadUnitPoolHandle] +title = "<1.24> 从哈希表提取单位池 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取单位池" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = unitpool +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadItemPoolHandleBJ] +title = "<1.24> 从哈希表提取物品池" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取物品池" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = itempool +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadItemPoolHandle] +title = "<1.24> 从哈希表提取物品池 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取物品池" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = itempool +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadQuestHandleBJ] +title = "<1.24> 从哈希表提取任务" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取任务" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = quest +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadQuestHandle] +title = "<1.24> 从哈希表提取任务 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取任务" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = quest +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadQuestItemHandleBJ] +title = "<1.24> 从哈希表提取任务要求" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取任务要求" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = questitem +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadQuestItemHandle] +title = "<1.24> 从哈希表提取任务要求 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取任务要求" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = questitem +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadDefeatConditionHandleBJ] +title = "<1.24> 从哈希表提取失败条件" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取失败条件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = defeatcondition +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadDefeatConditionHandle] +title = "<1.24> 从哈希表提取失败条件 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取失败条件" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = defeatcondition +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTimerDialogHandleBJ] +title = "<1.24> 从哈希表提取计时器窗口" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取计时器窗口" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = timerdialog +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTimerDialogHandle] +title = "<1.24> 从哈希表提取计时器窗口 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取计时器窗口" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = timerdialog +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadLeaderboardHandleBJ] +title = "<1.24> 从哈希表提取排行榜" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取排行榜" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = leaderboard +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadLeaderboardHandle] +title = "<1.24> 从哈希表提取排行榜 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取排行榜" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = leaderboard +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadMultiboardHandleBJ] +title = "<1.24> 从哈希表提取多面板" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取多面板" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = multiboard +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadMultiboardHandle] +title = "<1.24> 从哈希表提取多面板 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取多面板" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = multiboard +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadMultiboardItemHandleBJ] +title = "<1.24> 从哈希表提取多面板项目" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取多面板项目" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = multiboarditem +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadMultiboardItemHandle] +title = "<1.24> 从哈希表提取多面板项目 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取多面板项目" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = multiboarditem +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTrackableHandleBJ] +title = "<1.24> 从哈希表提取可追踪物" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取可追踪物" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = trackable +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTrackableHandle] +title = "<1.24> 从哈希表提取可追踪物 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取可追踪物" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = trackable +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadDialogHandleBJ] +title = "<1.24> 从哈希表提取对话框" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取对话框" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = dialog +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadDialogHandle] +title = "<1.24> 从哈希表提取对话框 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取对话框" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = dialog +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadButtonHandleBJ] +title = "<1.24> 从哈希表提取对话框按钮" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取对话框按钮" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = button +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadButtonHandle] +title = "<1.24> 从哈希表提取对话框按钮 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取对话框按钮" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = button +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadTextTagHandleBJ] +title = "<1.24> 从哈希表提取漂浮文字" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取漂浮文字" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = texttag +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadTextTagHandle] +title = "<1.24> 从哈希表提取漂浮文字 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取漂浮文字" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = texttag +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadLightningHandleBJ] +title = "<1.24> 从哈希表提取闪电效果" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取闪电效果" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = lightning +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadLightningHandle] +title = "<1.24> 从哈希表提取闪电效果 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取闪电效果" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = lightning +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadImageHandleBJ] +title = "<1.24> 从哈希表提取图象" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取图象" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = image +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadImageHandle] +title = "<1.24> 从哈希表提取图象 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取图象" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = image +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadUbersplatHandleBJ] +title = "<1.24> 从哈希表提取地面纹理变化" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取地面纹理变化" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = ubersplat +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadUbersplatHandle] +title = "<1.24> 从哈希表提取地面纹理变化 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取地面纹理变化" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = ubersplat +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadFogStateHandleBJ] +title = "<1.24> 从哈希表提取迷雾状态" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取迷雾状态" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = fogstate +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadFogStateHandle] +title = "<1.24> 从哈希表提取迷雾状态 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取迷雾状态" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = fogstate +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[LoadFogModifierHandleBJ] +title = "<1.24> 从哈希表提取可见度修正器" +description = "在子索引 ${Value} 主索引 ${Value} 的 ${Hashtable} 内提取可见度修正器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = fogmodifier +[[.args]] +type = integer +[[.args]] +type = integer +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" + +[LoadFogModifierHandle] +title = "<1.24> 从哈希表提取可见度修正器 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取可见度修正器" +comment = "如果不存在则返回空" +category = TC_HASHTABLE +returns = fogmodifier +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[OperatorInt] +title = "算术运算 Lv2" +description = "${数值} ${运算符} ${数值}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = ArithmeticOperator +default = "OperatorAdd" +[[.args]] +type = integer +default = "1" + +[OperatorReal] +title = "算术运算 Lv2" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +default = "0" +[[.args]] +type = ArithmeticOperator +default = "OperatorAdd" +[[.args]] +type = real +default = "0" + +[YDWEOperatorInt3] +title = "算术运算 Lv3 [New!]" +description = "${数值} ${运算符} ${数值} ${运算符} ${数值}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = YArithmeticOperator +default = "YOperatorAdd" +[[.args]] +type = integer +default = "0" +[[.args]] +type = YArithmeticOperator +default = "YOperatorAdd" +[[.args]] +type = integer +default = "0" + +[YDWEOperatorReal3] +title = "算术运算 Lv3 [New!]" +description = "${数值} ${运算符} ${数值} ${运算符} ${数值}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = YArithmeticOperator +default = "YOperatorAdd" +[[.args]] +type = real +default = "0" +[[.args]] +type = YArithmeticOperator +default = "YOperatorAdd" +[[.args]] +type = real +default = "0" + +[YDWE_PreloadSL_Get] +title = "获取存档数据" +description = "从${玩家}获取 ※${数据注释},从当前存档[${数据项索引}]上获取" +comment = "从玩家本地存档上获取数据,需要填入正确的数据项索引,标签即该项数据的注释。" +category = TC_YDSL +returns = integer +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 500 + +[YDWE_PreloadSL_GetFile] +title = "获取存档名(存档名单)[YDWE]" +description = "为${玩家}在『${目录名}』下,获取索引为[${整数}]的存档名" +comment = "高级功能,获取指定目录下某个玩家存档文件的名字,填写正确的索引,即可获得对应存档名。" +category = TC_YDSL +returns = string +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = integer +min = 1 +max = 16 + +[GetForLoopIndexA] +title = "循环整数A" +description = "循环整数A" +comment = "" +category = TC_FORLOOP +returns = integer + +[GetForLoopIndexB] +title = "循环整数B" +description = "循环整数B" +comment = "" +category = TC_FORLOOP +returns = integer + +[OrderId2StringBJ] +title = "转换命令ID为字符串" +description = "转换 ${Order} 为命令字符串" +comment = "如''harvest'', ''move'', ''smart'', ''attack''都是命令字符串." +category = TC_CONVERSION +returns = string +[[.args]] +type = ordercode +default = "GetIssuedOrderIdBJ" + +[UnitId2StringBJ] +title = "转换单位类型为字符串" +description = "转换 ${单位类型} 为字符串" +comment = "" +category = TC_CONVERSION +returns = string +[[.args]] +type = unitcode +default = "GetUnitTypeId" + +[GetLocalizedString] +title = "本地字符串 [R]" +description = "本地字符串: ${文字}" +comment = "获取ui\\framedef\\globalstrings.fdf中定义的字符串." +category = TC_CONVERSION +use_in_event = 0 +returns = string +[[.args]] +type = string + +[StringIdentity] +title = "本地字符串" +description = "本地字符串: ${文字}" +comment = "获取ui\\framedef\\globalstrings.fdf中定义的字符串." +script_name = GetLocalizedString +category = TC_CONVERSION +use_in_event = 0 +returns = string +[[.args]] +type = string + +[GetLocalizedHotkey] +title = "本地热键 " +description = "本地热键: ${文字}" +comment = "获取ui\\miscui.txt中定义的热键." +category = TC_CONVERSION +use_in_event = 0 +returns = integer +[[.args]] +type = string + +[StringCase] +title = "大小写转换" +description = "转换 ${字符串} 为 ${Lower/Upper Case} 形式" +comment = "" +category = TC_CONVERSION +returns = string +[[.args]] +type = StringExt +[[.args]] +type = stringcaseoption +default = "StringCaseLower" + +[Location] +title = "坐标点" +description = "坐标(${X}, ${Y})" +comment = "会创建点." +category = TC_CONVERSION +returns = location +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[String2UnitIdBJ] +title = "转换字符串为单位类型" +description = "转换 ${字符串} 为单位类型" +comment = "" +script_name = UnitId +category = TC_CONVERSION +returns = unitcode +[[.args]] +type = string +default = "footman" + +[String2OrderIdBJ] +title = "转换命令字符串为命令ID" +description = "转换 ${字符串} 为命令ID" +comment = "如''harvest'', ''move'', ''smart'', ''attack''都是命令字符串." +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = string +default = "stop" + +[UnitId2OrderIdBJ] +title = "转换单位类型为命令ID" +description = "转换 ${单位类型} 为命令ID" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = unitcode +default = "hfoo" + +[ConvertedPlayer] +title = "转换玩家ID为玩家" +description = "玩家 ${Player Index}" +comment = "玩家ID取值1-16." +category = TC_CONVERSION +returns = player +[[.args]] +type = integer +default = "1" +min = 1 +max = 16 + +[YDWEGetGameCurrentTime] +title = "计时器系统-获取游戏当前时间" +description = "获取游戏当前时间" +comment = "获得从游戏开始到目前流逝的时间,以秒为单位。" +category = TC_YDST +returns = integer + +[YDWETimerSystemGetRunIndex] +title = "计时器系统-获取中心计时器当前执行索引" +description = "获取中心计时器当前执行索引" +comment = "获得中心计时器运行触发器或函数目前为止的执行次数。" +category = TC_YDST +returns = integer + +[YDWEGetUnitItemSoftId] +title = "物品在物品栏中的位置[YDWE]" +description = "获取 ${单位} 物品栏中 ${物品} 的位置" +comment = "返回物品所在单位物品栏中的位置,为1-6之间的某个值;若单位身上不存在该物品,则返回0。" +category = TC_YDST +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWEConverUnitcodeToInt] +title = "显示单位类型为整数[YDWE]" +description = "显示<${单位类型}>为整数" +comment = "单位类型本身是个整数,因此无需转换;该功能主要用于存储系统的路径设置中。" +category = TC_YDST +returns = integer +[[.args]] +type = unitcode + +[YDWEConverItemcodeToInt] +title = "显示物品类型为整数[YDWE]" +description = "显示<${物品类型}>为整数" +comment = "物品类型本身是个整数,因此无需转换;该功能主要用于存储系统的路径设置中。" +category = TC_YDST +returns = integer +[[.args]] +type = itemcode + +[YDWEConverAbilcodeToInt] +title = "显示技能类型为整数[YDWE]" +description = "显示<${技能类型}>为整数" +comment = "技能类型本身是个整数,因此无需转换;该功能主要用于存储系统的路径设置中。" +category = TC_YDST +returns = integer +[[.args]] +type = abilcode + +[YDWEConverOrdercodeToInt] +title = "显示命令ID为整数[YDWE]" +description = "显示<${命令ID}>为整数" +comment = "命令ID本身是个整数,因此无需转换;该功能主要用于存储系统的路径设置中。" +category = TC_YDST +returns = integer +[[.args]] +type = ordercode + +[YDWEI2UnitId] +title = "转换整数为单位Id [YDWE]" +description = "转换 ${整数} 为单位Id" +comment = "将一个整数转换成单位ID,如输入1751543663,将转成步兵的ID。" +category = TC_YDST +returns = unitcode +[[.args]] +type = integer + +[YDWEI2ItemId] +title = "转换整数为物品Id [YDWE]" +description = "转换 ${整数} 为物品Id" +comment = "将一个整数转换成物品ID,如输入1936749416,将转成魔法护盾的ID。" +category = TC_YDST +returns = itemcode +[[.args]] +type = integer + +[YDWES2Id] +title = "转换字符串为Id [YDWE]" +description = "需要转换成ID的字符串为:${字符窜}" +comment = "将一个字符串转换成单位、物品等目标的ID;如spsh转换后为'spsh',届时可以通过聊天输入字符串来创建单位或物品。" +category = TC_YDST +returns = integer +[[.args]] +type = string +default = "spsh" + +[YDWES2UnitId] +title = "转换字符串为单位Id [YDWE]" +description = "需要转换成单位Id的字符窜为:${字符窜}" +comment = "将一个字符窜转换成单位ID,如输入hfoo,将转成步兵的ID。" +category = TC_YDST +returns = unitcode +[[.args]] +type = string +default = "hfoo" + +[YDWES2ItemId] +title = "转换字符串为物品Id [YDWE]" +description = "需要转换成物品Id的字符串为:${字符窜}" +comment = "将一个字符串转换成物品ID,如输入spsh,将转成魔法护盾的ID。" +category = TC_YDST +returns = itemcode +[[.args]] +type = string +default = "spsh" + +[YDWEGetUnitGoldCost] +title = "获取 黄金消耗 (单位类型)" +description = "获取 ${单位} 建造时消耗的黄金" +comment = "本触发只能获取普通单位建造时消耗的黄金,若填入英雄单位,将会获得固定值425" +category = TC_YDST +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[YDWEGetUnitWoodCost] +title = "获取 木头消耗 (单位类型)" +description = "获取 ${单位} 建造时消耗的木头" +comment = "本触发只能获取普通单位建造时消耗的木头,若填入英雄单位,将会获得固定值100" +category = TC_YDST +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[YDWEGetUnitBuildTime] +title = "获取 建造时间 (单位类型)" +description = "获取 ${单位} 建造时需要的时间" +comment = "本触发只能获取普通单位建造时需要的时间,若填入英雄单位,将会获得固定值55" +category = TC_YDST +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[YDWEGetUnitFoodUsed] +title = "获取 消耗人口 (单位)" +description = "获取 ${单位} 建造时消耗的人口" +comment = "本触发只能获取普通单位建造时消耗的人口,若填入英雄单位,将会获得固定值5" +category = TC_YDST +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWEGetUnitFoodMade] +title = "获取 提供人口 (单位)" +description = "获取 ${单位} 建造后提供的人口" +comment = "本触发只能获取普通单位建造后提供的人口,若填入英雄单位,将会获得固定值0" +category = TC_YDST +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWECoordinateX] +title = "修正X坐标 [YDWE]" +description = "需要修正的X坐标为:${实数}" +comment = "设修正X坐标,强制它大于地图边界最小值,小于地图边界最大值,避免弹出游戏错误。" +category = TC_YDST +returns = real +[[.args]] +type = real + +[YDWECoordinateY] +title = "修正Y坐标 [YDWE]" +description = "需要修正的Y坐标为:${实数}" +comment = "设修正Y坐标,强制它大于地图边界最小值,小于地图边界最大值,避免弹出游戏错误。" +category = TC_YDST +returns = real +[[.args]] +type = real + +[YDWEDistanceBetweenUnits] +title = "两个单位之间的距离 [YDWE]" +description = "从${单位}到${单位}的距离" +comment = "获取两个单位之间的距离。" +category = TC_YDST +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetLastCreatedUnit" + +[YDWEAngleBetweenUnits] +title = "两个单位之间的角度 [YDWE]" +description = "从${单位}到${单位}的角度" +comment = "获取两个单位之间的角度。" +category = TC_YDST +returns = degree +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = unit +default = "GetLastCreatedUnit" + +[YDWEGetUnitArmor] +title = "获取单位护甲" +description = "获取 ${单位} 的护甲值,关联技能为 ${辅助技能}" +comment = "可以获取单位的护甲值;需要保证混乱攻击对所有护甲均为100%伤害。关联技能的设置请参考example文件夹下的辅助地图。" +category = TC_YDST +returns = real +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = abilcode + +[YDWEId2S] +title = "转换Id为字符串" +description = "需要转换的Id为:${整数}" +comment = "将一个单位、物品等目标的Id转换成字符串;如'spsh'转换后为spsh。" +category = TC_YDST +returns = string +[[.args]] +type = integer +default = "'spsh'" + +[YDWEGetPlayerColorString] +title = "附加上玩家颜色" +description = "|c[${玩家}]${Start}|r" +comment = "" +category = TC_YDST +returns = string +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string + +[GetLastAbilityCastingUnit] +title = "获取最后结束施放特殊技能的单位" +description = "获取最后结束施放特殊技能的单位" +comment = "响应单位释放特殊技能事件,当技能释放完毕后,可以获取最后施放特殊技能的单位。" +category = TC_YDST +returns = unit + +[GetLastAbilityTargetUnit] +title = "获取最后被特殊技能命中的单位" +description = "获取最后被特殊技能命中的单位" +comment = "响应单位释放可以命中目标的特殊技能事件,如钩子、月神箭;当技能命中目标后,可以获取最后被特殊技能命中的单位。" +category = TC_YDST +returns = unit + +[YDWEInitHashtable] +title = "新建哈希表(YDWE)" +description = "新建哈希表" +comment = "获得一个新哈希表。" +category = TC_YDST +use_in_event = 0 +returns = hashtable + +[GetLearnedSkillLevel] +title = "学习技能等级" +description = "学习技能等级" +comment = "响应'学习技能'单位事件,指代被学习技能的等级. 注意,该值为学习后的等级." +category = TC_EVENTRESPONSE +returns = integer + +[GetEventDamage] +title = "伤害值" +description = "单位所受伤害" +comment = "响应'受到伤害'单位事件,指代单位所受伤害." +category = TC_EVENTRESPONSE +returns = real + +[GetOrderPointX] +title = "命令发布点X坐标 [R]" +description = "命令发布点X坐标" +comment = "用坐标代替点可以省去创建、删除点的麻烦." +category = TC_EVENTRESPONSE +returns = real + +[GetOrderPointY] +title = "命令发布点Y坐标 [R]" +description = "命令发布点Y坐标" +comment = "用坐标代替点可以省去创建、删除点的麻烦." +category = TC_EVENTRESPONSE +returns = real + +[GetSpellTargetX] +title = "技能施放点X坐标" +description = "获取技能目标点的X坐标" +comment = "这是1.24的函数,但已加入函数库,在1.20也可以使用。" +category = TC_EVENTRESPONSE +returns = real + +[GetSpellTargetY] +title = "技能施放点Y坐标" +description = "获取技能目标点的Y坐标" +comment = "这是1.24的函数,但已加入函数库,在1.20也可以使用。" +category = TC_EVENTRESPONSE +returns = real + +[GetTournamentFinishSoonTimeRemaining] +title = "比赛剩余时间" +description = "比赛剩余时间" +comment = "响应'比赛事件'游戏将要结束. 单位为秒." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = real + +[GetEventPlayerChatString] +title = "输入的聊天信息" +description = "输入的聊天信息" +comment = "" +category = TC_EVENTRESPONSE +returns = string + +[GetEventPlayerChatStringMatched] +title = "匹配的聊天信息" +description = "匹配的聊天信息" +comment = "" +category = TC_EVENTRESPONSE +returns = string + +[GetSaveBasicFilename] +title = "存档文件名" +description = "存档文件名" +comment = "响应'游戏 - 保存进度'事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = string + +[GetOrderPointLoc] +title = "命令发布点" +description = "命令发布点" +comment = "响应'发布指定点目标命令'单位事件. 会创建点." +category = TC_EVENTRESPONSE +returns = location + +[GetSpellTargetLoc] +title = "技能施放点" +description = "技能施放点" +comment = "响应'技能施放'单位事件. 注意技能施放结束将无法捕获该点. 会创建点." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = location + +[CreateRegion] +title = "新建区域 [R]" +description = "新建区域" +comment = "会创建一个新的不规则区域,如果不往该区域添加点或地区,则该区域无效果." +category = TC_REGION +use_in_event = 0 +returns = region + +[GetTriggeringRegion] +title = "触发区域 [R]" +description = "触发区域" +comment = "响应单位进入/离开不规则区域事件." +category = TC_EVENTRESPONSE +returns = region + +[GetAttackedUnitBJ] +title = "被攻击单位" +description = "被攻击单位" +comment = "响应'被攻击'单位事件." +script_name = GetTriggerUnit +category = TC_EVENTRESPONSE +returns = unit + +[GetAttacker] +title = "攻击单位" +description = "攻击单位" +comment = "响应'被攻击'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetBuyingUnit] +title = "购买者" +description = "购买者" +comment = "响应'出售单位','出售物品'或'抵押物品'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetCancelledStructure] +title = "被取消的建筑" +description = "被取消的建筑" +comment = "响应'取消建造建筑'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetSpellAbilityUnit] +title = "施法单位" +description = "施法单位" +comment = "响应'施放技能'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetConstructingStructure] +title = "正在建造的建筑" +description = "正在建造的建筑" +comment = "响应'开始建造建筑'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetConstructedStructure] +title = "完成的建筑" +description = "完成的建筑" +comment = "响应'完成建造建筑'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetEventDamageSource] +title = "伤害来源" +description = "伤害来源" +comment = "响应'受到伤害'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetDecayingUnit] +title = "腐化的单位" +description = "腐化的单位" +comment = "响应'开始腐化'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetDyingUnit] +title = "死亡单位" +description = "死亡单位" +comment = "响应'死亡'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetEnteringUnit] +title = "进入的单位" +description = "进入的单位" +comment = "响应'单位进入区域'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetManipulatingUnit] +title = "操作物品的单位" +description = "操作物品的单位" +comment = "响应'使用/获得/丢失物品'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetKillingUnitBJ] +title = "凶手单位" +description = "凶手单位" +comment = "响应'死亡'单位事件. 如果不是被单位所杀(比如负数邪恶光环)则返回null." +script_name = GetKillingUnit +category = TC_EVENTRESPONSE +returns = unit + +[GetLearningUnit] +title = "学习技能的英雄" +description = "学习技能的英雄" +comment = "响应'学习技能'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetLeavingUnit] +title = "离开的单位" +description = "离开的单位" +comment = "响应'单位离开区域'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetLevelingUnit] +title = "升级的英雄" +description = "升级的英雄" +comment = "响应'提升等级'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetLoadedUnitBJ] +title = "被装载单位" +description = "被装载单位" +comment = "响应'被装载'单位事件." +script_name = GetLoadedUnit +category = TC_EVENTRESPONSE +returns = unit + +[GetOrderedUnit] +title = "发布命令的单位" +description = "发布命令的单位" +comment = "响应'发布命令'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetChangingUnit] +title = "被改变所有者的单位" +description = "被改变所有者的单位" +comment = "响应'改变所有者'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetResearchingUnit] +title = "研究科技的单位" +description = "研究科技的单位" +comment = "响应'开始/取消/完成科技研究'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetRevivableUnit] +title = "可复活英雄" +description = "可复活英雄" +comment = "响应'变为可复活的'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetRevivingUnit] +title = "复活英雄" +description = "复活英雄" +comment = "响应'开始/取消/完成复活'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetSellingUnit] +title = "贩卖者" +description = "贩卖者" +comment = "响应'出售单位','出售物品'或'抵押物品'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetSoldUnit] +title = "被贩卖单位" +description = "被贩卖单位" +comment = "响应'出售单位'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = unit + +[GetSummonedUnit] +title = "召唤单位" +description = "召唤单位" +comment = "响应'召唤单位'单位事件,指代被召唤单位." +category = TC_EVENTRESPONSE +returns = unit + +[GetSummoningUnit] +title = "召唤者" +description = "召唤者" +comment = "响应'召唤单位'单位事件." +category = TC_EVENTRESPONSE +returns = unit + +[GetOrderTargetUnit] +title = "命令发布目标" +description = "命令发布目标" +comment = "响应'发布指定物体目标命令'单位事件并以单位为目标时." +category = TC_EVENTRESPONSE +returns = unit + +[GetSpellTargetUnit] +title = "技能施放目标" +description = "技能施放目标" +comment = "响应'施放技能'单位事件并以单位为目标时. 注意: 技能施放结束将无法捕获施放目标." +category = TC_EVENTRESPONSE +returns = unit + +[GetEventTargetUnit] +title = "事件目标单位" +description = "事件目标单位" +comment = "响应'注意到/获取攻击目标'单位事件,指代目标单位." +category = TC_EVENTRESPONSE +returns = unit + +[GetTrainedUnit] +title = "训练单位" +description = "训练单位" +comment = "响应'完成训练单位'单位事件,指代被训练单位." +category = TC_EVENTRESPONSE +returns = unit + +[GetTransportUnitBJ] +title = "运输单位" +description = "运输单位" +comment = "响应'被装载'单位事件.指代作为载体的单位." +script_name = GetTransportUnit +category = TC_EVENTRESPONSE +returns = unit + +[GetTriggerUnit] +title = "触发单位" +description = "触发单位" +comment = "" +category = TC_EVENTRESPONSE +returns = unit + +[GetTrainedUnitType] +title = "训练单位类型" +description = "训练单位类型" +comment = "响应'开始/取消/完成训练单位'单位事件, 指代所训练的单位类型." +category = TC_EVENTRESPONSE +returns = unitcode + +[GetIssuedOrderIdBJ] +title = "发布的命令ID" +description = "发布的命令ID" +comment = "响应'发布命令'单位事件." +script_name = GetIssuedOrderId +category = TC_EVENTRESPONSE +returns = ordercode + +[GetDyingDestructable] +title = "死亡的可破坏物" +description = "死亡的可破坏物" +comment = "响应'可破坏物死亡'事件." +category = TC_EVENTRESPONSE +returns = destructable + +[GetOrderTargetDestructable] +title = "命令发布目标(可破坏物)" +description = "命令发布目标" +comment = "响应'发布指定物体目标命令'单位事件并以可破坏物为目标时." +category = TC_EVENTRESPONSE +returns = destructable + +[GetSpellTargetDestructable] +title = "技能施放目标(可破坏物)" +description = "技能施放目标" +comment = "响应'施放技能'单位事件并以可破坏物为目标时. 注意: 技能施放结束将无法捕获施放目标." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = destructable + +[GetManipulatedItem] +title = "被操作物品" +description = "被操作物品" +comment = "响应'使用/得到/丢弃物品'单位事件." +category = TC_EVENTRESPONSE +returns = item + +[GetSoldItem] +title = "被售出物品" +description = "被售出物品" +comment = "响应'出售物品'或'抵押物品'单位事件." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = item + +[GetOrderTargetItem] +title = "命令发布目标" +description = "命令发布目标" +comment = "响应'发布指定物体目标命令'单位事件并以物品为目标时." +category = TC_EVENTRESPONSE +returns = item + +[GetSpellTargetItem] +title = "技能施放目标" +description = "技能施放目标" +comment = "响应施放技能单位事件并以物品为目标时. 注意: 技能施放结束将无法捕获施放目标." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = item + +[GetResearched] +title = "被研究科技" +description = "被研究科技" +comment = "响应'开始/取消/完成科技研究'单位事件." +category = TC_EVENTRESPONSE +returns = techcode + +[GetSpellAbilityId] +title = "施放技能" +description = "施放技能" +comment = "响应施放技能单位事件, 指代被施放的技能." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = abilcode + +[GetLearnedSkill] +title = "学习技能 [R]" +description = "学习技能" +comment = "响应'学习技能'单位事件, 指代被学习的技能." +category = TC_EVENTRESPONSE +returns = abilcode + +[GetLearnedSkillBJ] +title = "学习技能" +description = "学习技能" +comment = "响应'学习技能'单位事件, 指代被学习的技能. 新函数在'技能'类别中." +script_name = GetLearnedSkill +category = TC_EVENTRESPONSE +returns = heroskillcode + +[GetChangingUnitPrevOwner] +title = "原所有者" +description = "原所有者" +comment = "响应'改变所有者'单位事件,指代单位原来的所有者." +category = TC_EVENTRESPONSE +use_in_event = 0 +returns = player + +[GetTriggerPlayer] +title = "触发玩家" +description = "触发玩家" +comment = "" +category = TC_EVENTRESPONSE +returns = player + +[GetClickedDialogBJ] +title = "点击的对话框" +description = "点击的对话框" +comment = "响应'对话框 - 点击对话框/按钮'事件." +script_name = GetClickedDialog +category = TC_EVENTRESPONSE +returns = dialog + +[GetClickedButtonBJ] +title = "点击的对话框按钮" +description = "点击的对话框按钮" +comment = "响应'对话框 - 点击对话框/按钮'事件." +script_name = GetClickedButton +category = TC_EVENTRESPONSE +returns = button + +[GetExpiredTimer] +title = "到期的计时器" +description = "到期的计时器" +comment = "响应'时间 - 计时器到期'事件." +category = TC_EVENTRESPONSE +returns = timer + +[GetTriggeringTrackable] +title = "事件响应 - 触发可追踪物 [R]" +description = "事件响应 - 触发可追踪物" +comment = "" +category = TC_EVENTRESPONSE +returns = trackable + +[GetRandomInt] +title = "随机整数" +description = "随机整数,最小值: ${Minimum} 最大值: ${Maximum}" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +default = "1" +[[.args]] +type = integer +default = "10" + +[IMinBJ] +title = "取较小值" +description = "取(${整数1}, ${整数2})中较小值" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[IMaxBJ] +title = "取较大值" +description = "取(${整数1}, ${整数2})中较大值" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[IAbsBJ] +title = "绝对值" +description = "${整数} 的绝对值" +comment = "" +category = TC_MATH +returns = integer +[[.args]] +type = integer + +[ISignBJ] +title = "符号标志" +description = "${整数} 的符号标志" +comment = "负数为-1. 非负数为1." +category = TC_MATH +returns = integer +[[.args]] +type = integer + +[StringHash] +title = "获取字符串的哈希值" +description = "(${String})的哈希值" +comment = "获取一个对应该字符串的密钥,不同的字符串的密钥基本不可能相同,也很难找到两个不同的字符串他们有着相同的密钥。可以用于制作密码等功能。" +category = TC_MATH +returns = integer +[[.args]] +type = string + +[ModuloInteger] +title = "模" +description = "${被除数} mod ${除数}" +comment = "取模计算,例: 13 mod 5 = 3." +category = TC_MATH +returns = integer +[[.args]] +type = integer +[[.args]] +type = integer + +[GetRandomReal] +title = "随机实数" +description = "随机实数,最小值: ${Minimum} 最大值: ${Maximum}" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "1" + +[GetRandomDirectionDeg] +title = "随机角度" +description = "随机角度" +comment = "0-360的随机角度." +category = TC_MATH +returns = degree + +[GetRandomPercentageBJ] +title = "随机百分数" +description = "随机百分数" +comment = "0-100的随机实数." +category = TC_MATH +returns = real + +[DistanceBetweenPoints] +title = "两点间距" +description = "${点} 和 ${点} 之间的距离" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = location +[[.args]] +type = location + +[AngleBetweenPoints] +title = "两点间方向" +description = "${点} 到 ${点} 的角度" +comment = "取值-180 - 180." +category = TC_MATH +returns = degree +[[.args]] +type = location +[[.args]] +type = location + +[RMinBJ] +title = "取较小值" +description = "取(${实数1}, ${实数2})中较小值" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[RMaxBJ] +title = "取较大值" +description = "取(${实数1}, ${实数2})中较大值" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[RAbsBJ] +title = "绝对值" +description = "${实数} 的绝对值" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real + +[RSignBJ] +title = "符号标志" +description = "${实数} 的符号标志" +comment = "负数为-1. 非负数为1." +category = TC_MATH +returns = real +[[.args]] +type = real + +[ModuloReal] +title = "模" +description = "${被除数} mod ${除数}" +comment = "取模计算,例: 9.0 mod 2.5 = 1.5." +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[Pow] +title = "幂运算" +description = "${实数} 的 ${实数} 次幂" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +[[.args]] +type = real + +[SquareRoot] +title = "平方根" +description = "${实数} 的平方根" +comment = "" +category = TC_MATH +returns = real +[[.args]] +type = real +min = 0 + +[SinBJ] +title = "正弦(角度)" +description = "Sin(${Angle})" +comment = "采用角度制计算." +category = TC_MATH +returns = real +[[.args]] +type = degree +default = "GetUnitFacing" + +[CosBJ] +title = "余弦(角度)" +description = "Cos(${Angle})" +comment = "采用角度制计算." +category = TC_MATH +returns = real +[[.args]] +type = degree +default = "GetUnitFacing" + +[TanBJ] +title = "正切(角度)" +description = "Tan(${Angle})" +comment = "采用角度制计算." +category = TC_MATH +returns = real +[[.args]] +type = degree +default = "GetUnitFacing" + +[AsinBJ] +title = "反正弦(角度)" +description = "Asin(${数值})" +comment = "采用角度制计算. 返回角度取值-90 — 90." +category = TC_MATH +returns = degree +[[.args]] +type = real +min = -1 +max = 1 + +[AcosBJ] +title = "反余弦(角度)" +description = "Acos(${数值})" +comment = "采用角度制计算. 返回角度取值0 — 180." +category = TC_MATH +returns = degree +[[.args]] +type = real +min = -1 +max = 1 + +[AtanBJ] +title = "反正切(角度)" +description = "Atan(${数值})" +comment = "采用角度制计算. 返回角度取值-90 — 90." +category = TC_MATH +returns = degree +[[.args]] +type = real + +[Atan2BJ] +title = "反正切(角度)(Y:X)" +description = "Atan(${Y} : ${X})" +comment = "采用角度制计算. 返回角度取值-90 — 90." +category = TC_MATH +returns = degree +[[.args]] +type = real +[[.args]] +type = real + +[Sin] +title = "正弦(弧度) [R]" +description = "Sin(${Angle})" +comment = "采用弧度制计算. " +category = TC_MATH +returns = real +[[.args]] +type = radian +default = "bj_PI" + +[Cos] +title = "余弦(弧度) [R]" +description = "Cos(${Angle})" +comment = "采用弧度制计算. " +category = TC_MATH +returns = real +[[.args]] +type = radian +default = "bj_PI" + +[Tan] +title = "正切(弧度) [R]" +description = "Tan(${Angle})" +comment = "采用弧度制计算. " +category = TC_MATH +returns = real +[[.args]] +type = radian +default = "bj_PI" + +[Asin] +title = "反正弦(弧度) [R]" +description = "Asin(${数值})" +comment = "采用弧度制计算. 返回弧度取值-π/2 — π/2. " +category = TC_MATH +returns = radian +[[.args]] +type = real +default = "0" +min = -1 +max = 1 + +[Acos] +title = "反余弦(弧度) [R]" +description = "Acos(${数值})" +comment = "采用弧度制计算. 返回弧度取值0 — π. " +category = TC_MATH +returns = radian +[[.args]] +type = real +default = "0" +min = -1 +max = 1 + +[Atan] +title = "反正切(弧度) [R]" +description = "Atan(${数值})" +comment = "采用弧度制计算. 返回弧度取值-π/2 — π/2. " +category = TC_MATH +returns = radian +[[.args]] +type = real +default = "0" + +[Atan2] +title = "反正切(Y:X)(弧度) [R]" +description = "Atan(${Y} : ${X})" +comment = "采用弧度制计算. 返回弧度取值-π/2 — π/2. " +category = TC_MATH +returns = radian +[[.args]] +type = real +[[.args]] +type = real + +[YDWELogarithmLg] +title = "对数函数(10为底)" +description = "Lg(${x})" +comment = "10^n=x,那么lg(x)=n,如lg(100)=2;鸣谢zyl910" +category = TC_MATH +returns = real +[[.args]] +type = real +min = 0.01 + +[YDWELogarithmLn] +title = "对数函数(e为底)" +description = "Ln(${x})" +comment = "e^n=x,那么ln(x)=n,e即自然对数,约等于2.718281828;鸣谢zyl910" +category = TC_MATH +returns = real +[[.args]] +type = real +min = 0.01 + +[YDWELogarithmLog] +title = "对数函数(任意底)" +description = "Log(${a})(${b})" +comment = "a^n=b,那么log(a)(b)=n,如log(2)(4)=2;鸣谢zyl910" +category = TC_MATH +returns = real +[[.args]] +type = real +min = 0.01 +[[.args]] +type = real +min = 0.01 + +[GetLastTransmissionDurationBJ] +title = "最后发言长度" +description = "最后发言长度" +comment = "最后一次使用'电影 - 播送单位消息'动作的单位发言时间." +category = TC_CINEMATIC +returns = real + +[TimerGetElapsed] +title = "逝去时间" +description = "${计时器} 的逝去时间" +comment = "" +category = TC_TIMER +returns = real +[[.args]] +type = timer + +[TimerGetRemaining] +title = "剩余时间" +description = "${计时器} 的剩余时间" +comment = "" +category = TC_TIMER +returns = real +[[.args]] +type = timer + +[TimerGetTimeout] +title = "设置时间" +description = "${计时器} 设置的时间" +comment = "" +category = TC_TIMER +returns = real +[[.args]] +type = timer + +[CreateTimerDialog] +title = "新建计时器窗口 [R]" +description = "为 ${计时器} 新建计时窗口" +comment = "为一个计时器创建一个新建计时器窗口." +category = TC_TIMER +returns = timerdialog +[[.args]] +type = timer + +[CameraSetupGetField] +title = "镜头属性(指定镜头) [R]" +description = "${镜头} 的 ${Camera Field}" +comment = "" +category = TC_CAMERA +returns = real +[[.args]] +type = camerasetup +[[.args]] +type = camerafield +default = "CameraFieldTargetDistance" + +[CameraSetupGetFieldSwap] +title = "镜头属性(指定镜头)" +description = "${Camera Field} 对 ${镜头}" +comment = "" +category = TC_CAMERA +returns = real +[[.args]] +type = camerafield +default = "CameraFieldTargetDistance" +[[.args]] +type = camerasetup + +[GetCameraField] +title = "镜头属性(当前镜头)" +description = "当前镜头的 ${Camera Field}" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real +[[.args]] +type = camerafield +default = "CameraFieldTargetDistance" + +[GetCameraTargetPositionX] +title = "当前镜头目标X坐标" +description = "当前镜头目标X坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[GetCameraTargetPositionY] +title = "当前镜头目标Y坐标" +description = "当前镜头目标Y坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[GetCameraTargetPositionZ] +title = "当前镜头目标Z坐标" +description = "当前镜头目标Z坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[GetCameraEyePositionX] +title = "当前镜头源X坐标" +description = "当前镜头源X坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[GetCameraEyePositionY] +title = "当前镜头源Y坐标" +description = "当前镜头源Y坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[GetCameraEyePositionZ] +title = "当前镜头源Z坐标" +description = "当前镜头源Z坐标" +comment = "注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = real + +[CameraSetupGetDestPositionLoc] +title = "镜头目标点" +description = "${镜头} 的目标点" +comment = "会创建点." +category = TC_CAMERA +returns = location +[[.args]] +type = camerasetup + +[GetCameraTargetPositionLoc] +title = "当前镜头目标点" +description = "当前镜头目标点" +comment = "会创建点. 注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = location + +[GetCameraEyePositionLoc] +title = "当前镜头源位置" +description = "当前镜头源位置" +comment = "会创建点. 注意:该函数对各玩家返回值不同,请确定你知道自己在做什么,否则很容易引起掉线." +category = TC_CAMERA +returns = location + +[GetLightningColorRBJ] +title = "红颜色值" +description = "${Lightning} 的红颜色值" +comment = "取值范围0-1. 可使用'闪电效果 - 改变颜色'动作来改变颜色值." +script_name = GetLightningColorR +category = TC_LIGHTNING +use_in_event = 0 +returns = real +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[GetLightningColorGBJ] +title = "绿颜色值" +description = "${Lightning} 的绿颜色值" +comment = "取值范围0-1. 可使用'闪电效果 - 改变颜色'动作来改变颜色值." +script_name = GetLightningColorG +category = TC_LIGHTNING +use_in_event = 0 +returns = real +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[GetLightningColorBBJ] +title = "蓝颜色值" +description = "${Lightning} 的蓝颜色值" +comment = "取值范围0-1. 可使用'闪电效果 - 改变颜色'动作来改变颜色值." +script_name = GetLightningColorB +category = TC_LIGHTNING +use_in_event = 0 +returns = real +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[GetLightningColorABJ] +title = "Alpha通道值" +description = "${Lightning} 的Alpha通道值" +comment = "取值范围0-1. Alpha通道值为0是完全透明的. 可使用'闪电效果 - 改变颜色'动作来改变Alpha通道值." +script_name = GetLightningColorA +category = TC_LIGHTNING +use_in_event = 0 +returns = real +[[.args]] +type = lightning +default = "GetLastCreatedLightningBJ" + +[AddLightning] +title = "新建闪电效果 [R]" +description = "新建闪电效果: ${闪电效果} (${Boolean}检查可见性) 起始点:(${X},${Y}) 终结点:(${X},${Y})" +comment = "会创建闪电效果. 允许检查可见性则在起始点和终结点都不可见时将不创建闪电效果." +category = TC_LIGHTNING +returns = lightning +[[.args]] +type = lightningtype +default = "LightningTypeCLPB" +[[.args]] +type = allowdontoption +default = "AllowDontDont" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[AddLightningEx] +title = "新建闪电效果(指定Z轴) [R]" +description = "新建闪电效果: ${闪电效果} (${Boolean}检查可见性) 起始点:(${X},${Y},${Z}) 终结点:(${X},${Y},${Z})" +comment = "会创建闪电效果. 允许检查可见性则在起始点和终结点都不可见时将不创建闪电效果." +category = TC_LIGHTNING +returns = lightning +[[.args]] +type = lightningtype +default = "LightningTypeCLPB" +[[.args]] +type = allowdontoption +default = "AllowDontDont" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[GetSoundDurationBJ] +title = "音效长度" +description = "${音效} 的长度" +comment = "单位为秒." +category = TC_SOUND +returns = real +[[.args]] +type = sound +default = "GetLastPlayedSound" + +[GetSoundFileDurationBJ] +title = "音乐长度" +description = "${音乐} 的长度" +comment = "单位为秒." +category = TC_SOUND +returns = real +[[.args]] +type = musicfile +default = "GetLastPlayedMusic" + +[GetLastCreatedUnit] +title = "最后创建的单位" +description = "最后创建的单位" +comment = "最后一个使用'单位 - 创建'动作创建的单位." +category = TC_LAST +returns = unit + +[GetLastRestoredUnitBJ] +title = "最后读取的单位" +description = "最后读取的单位" +comment = "最后一个使用'游戏缓存 - 读取单位'动作创建的单位." +category = TC_LAST +returns = unit + +[GetLastReplacedUnitBJ] +title = "最后替换的单位" +description = "最后替换的单位" +comment = "最后一个使用'单位 - 替换'替换的单位." +category = TC_LAST +returns = unit + +[GetLastHauntedGoldMine] +title = "最后创建的不死族金矿" +description = "最后创建的不死族金矿" +comment = "最后一个使用'中立建筑 - 创建不死族金矿'创建的不死族金矿." +category = TC_LAST +returns = unit + +[YDWEGetLastUnitPool] +title = "最后创建的单位池 [YDWE]" +description = "最后创建的单位池" +comment = "该单位池必须是由YDWE提供的<创建单位池>动作生成,不然无法获取。" +category = TC_LAST +use_in_event = 0 +returns = unitpool + +[GetLastCreatedDestructable] +title = "最后创建的可破坏物" +description = "最后创建的可破坏物" +comment = "最后一个使用 '可破坏物 - 创建'动作创建的可破坏物." +category = TC_LAST +returns = destructable + +[GetLastCreatedItem] +title = "最后创建的物品" +description = "最后创建的物品" +comment = "最后一个使用'物品 - 创建'或'英雄 - 创建物品给英雄'动作创建的物品." +category = TC_LAST +returns = item + +[GetLastRemovedItem] +title = "最后丢弃的物品" +description = "最后丢弃的物品" +comment = "最后一个使用'英雄 - 丢弃物品'动作丢弃的物品." +category = TC_LAST +returns = item + +[GetLastMovedItemInItemSlot] +title = "最后在物品栏中移动的物品 [YDWE]" +description = "最后在物品栏中移动的物品" +comment = "最后一个单位在物品栏中移动的物品" +category = TC_LAST +returns = item + +[GetLastCombinedItem] +title = "最后被合成的物品 [YDWE]" +description = "最后被合成的物品" +comment = "最后由物品合成系统合成的物品" +category = TC_LAST +returns = item + +[GetLastCreatedGroup] +title = "最后创建的单位组" +description = "最后创建的单位组" +comment = "最后一批通过'单位 - 创建'动作创建的单位." +category = TC_LAST +returns = group + +[GetLastCreatedFogModifier] +title = "最后创建的可见度修正器" +description = "最后创建的可见度修正器" +comment = "最后一个由'可见度 - 创建可见度修正器'动作创建的可见度修正器." +category = TC_LAST +returns = fogmodifier + +[GetLastCreatedEffectBJ] +title = "最后创建的特效" +description = "最后创建的特效" +comment = "最后一个使用'特殊效果 - 创建特效'动作创建的效果." +category = TC_LAST +returns = effect + +[GetLastCreatedLightningBJ] +title = "最后创建的闪电效果" +description = "最后创建的闪电效果" +comment = "最后一个使用'闪电效果 - 创建'动作创建的闪电效果." +category = TC_LAST +use_in_event = 0 +returns = lightning + +[GetLastCreatedImage] +title = "最后创建的图像" +description = "最后创建的图像" +comment = "最后一个使用'图像 - 创建'动作创建的图像." +category = TC_LAST +use_in_event = 0 +returns = image + +[GetLastCreatedUbersplat] +title = "最后创建的地面纹理变化" +description = "最后创建的地面纹理变化" +comment = "最后一个使用'地面纹理 - 创建'动作创建的纹理变化." +category = TC_LAST +use_in_event = 0 +returns = ubersplat + +[GetLastCreatedWeatherEffect] +title = "最后创建的天气效果" +description = "最后创建的天气效果" +comment = "最后一个使用'环境 - 创建天气效果'动作创建的天气效果." +category = TC_LAST +returns = weathereffect + +[GetLastCreatedTerrainDeformation] +title = "最后创建的地形变化" +description = "最后创建的地形变化" +comment = "最后一个由'环境 - 创建地形变化'动作创建的地形变化." +category = TC_LAST +use_in_event = 0 +returns = terraindeformation + +[GetLastPlayedSound] +title = "最后播放的音效" +description = "最后播放的音效" +comment = "最后一个由'声音 - 播放音效'或'电影 - 播放单位消息'动作播放的音效." +category = TC_LAST +returns = sound + +[GetLastPlayedMusic] +title = "最后播放的音乐" +description = "最后播放的音乐" +comment = "最后一个由'声音 - 播放音乐'动作播放的音乐." +category = TC_LAST +returns = musicfile + +[GetLastCreatedQuestBJ] +title = "最后创建的任务" +description = "最后创建的任务" +comment = "最后一个由'任务 - 创建任务'动作创建的任务." +category = TC_LAST +returns = quest + +[GetLastCreatedQuestItemBJ] +title = "最后创建的任务项目" +description = "最后创建的任务项目" +comment = "最后一个由'任务 - 创建任务项目'动作创建的任务项目." +category = TC_LAST +returns = questitem + +[GetLastCreatedDefeatConditionBJ] +title = "最后创建的失败条件" +description = "最后创建的失败条件" +comment = "最后一个由'任务 - 创建失败条件'动作创建的失败条件." +category = TC_LAST +returns = defeatcondition + +[GetLastCreatedButtonBJ] +title = "最后创建的对话框按钮" +description = "最后创建的对话框按钮" +comment = "最后一个由'对话框 - 创建对话框按钮'动作创建的对话框按钮." +category = TC_LAST +returns = button + +[GetLastCreatedLeaderboard] +title = "最后创建的排行榜" +description = "最后创建的排行榜" +comment = "最后一个由'排行榜 - 创建排行榜'动作创建的排行榜." +category = TC_LAST +returns = leaderboard + +[GetLastCreatedMultiboard] +title = "最后创建的多面板" +description = "最后创建的多面板" +comment = "最后一个由'多面板 - 创建多面板'动作创建的多面板." +category = TC_LAST +use_in_event = 0 +returns = multiboard + +[GetLastCreatedTimerBJ] +title = "最后启用的计时器" +description = "最后启用的计时器" +comment = "最后一个由'计时器 - 启用计时器'动作启用的计时器." +category = TC_LAST +returns = timer + +[GetLastCreatedTimerDialogBJ] +title = "最后创建的计时器窗口" +description = "最后创建的计时器窗口" +comment = "最后一个由'计时器 - 创建计时器窗口'动作创建的计时器窗口." +category = TC_LAST +returns = timerdialog + +[GetLastCreatedGameCacheBJ] +title = "最后创建的游戏缓存" +description = "最后创建的游戏缓存" +comment = "最后一个由'游戏缓存 - 创建缓存'动作创建的缓存." +category = TC_LAST +returns = gamecache + +[GetLastCreatedHashtableBJ] +title = "最后创建的哈希表" +description = "最后创建的哈希表" +comment = "能得到通过 '哈希表 - 新建哈希表' 最后一次创建的哈希表" +category = TC_LAST +returns = hashtable + +[LoadHashtableHandle] +title = "<1.24> 从哈希表提取哈希表 [C]" +description = "在 ${Hashtable} 的主索引 ${Value} 子索引 ${Value} 内提取哈希表" +comment = "如果不存在则返回空" +category = TC_LAST +returns = hashtable +[[.args]] +type = hashtable +default = "GetLastCreatedHashtableBJ" +[[.args]] +type = integer +[[.args]] +type = integer + +[GetLastCreatedTextTag] +title = "最后创建的漂浮文字" +description = "最后创建的漂浮文字" +comment = "最后一个由'漂浮文字 - 创建漂浮文字'动作创建的漂浮文字." +category = TC_LAST +use_in_event = 0 +returns = texttag + +[YDWECinSActor] +title = "演员单位" +description = "电影系统里编号为(${整数})的演员" +comment = "获取Script System电影系统中的演员单位。" +category = TC_SCRIPTSET +returns = unit +[[.args]] +type = integer +default = "1" +min = 1 + +[PlaceRandomUnit] +title = "选择放置单位 [R]" +description = "从 ${单位池} 中为 ${玩家} 任意选择一个单位并放置到点( ${X} , ${Y} ) 面向 ${度}" +comment = "从单位池中随机选取一个单位类型." +category = TC_UNITPOOL +returns = unit +[[.args]] +type = unitpool +[[.args]] +type = player +default = "Player00" +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" +[[.args]] +type = degree +default = "0" + +[YDWEGetLastPoolAbstractedUnit] +title = "最后从单位池里取出的单位" +description = "最后从单位池里取出的单位" +comment = "该单位必须是由YDWE提供的<选择放置单位>动作生成,不然无法获取。" +category = TC_UNITPOOL +returns = unit + +[PlaceRandomItem] +title = "选择放置物品 [R]" +description = "从 ${物品池} 中任意选择一个物品并放置到( ${X} , ${Y} )点" +comment = "" +category = TC_ITEMPOOL +returns = item +[[.args]] +type = itempool +[[.args]] +type = real +default = "0" +[[.args]] +type = real +default = "0" + +[DialogCreate] +title = "新建对话框 [R]" +description = "新建对话框" +comment = "创建新的对话框." +category = TC_DIALOG +returns = dialog + +[YDWEGetUnitID] +title = "获取 单位 的整数地址" +description = "获取 ${单位} 的整数地址" +comment = "可以把一个单位转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = unit +default = "GetTriggerUnit" + +[YDWEGetPlayerID] +title = "获取 玩家 的整数地址" +description = "获取 ${玩家} 的整数地址" +comment = "可以把一个玩家转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = player +default = "GetTriggerPlayer" + +[YDWEGetItemID] +title = "获取 物品 的整数地址" +description = "获取 ${物品} 的整数地址" +comment = "可以把一个物品转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = item +default = "GetManipulatedItem" + +[YDWEGetTimerID] +title = "获取 计时器 的整数地址" +description = "获取 ${计时器} 的整数地址" +comment = "可以把一个计时器转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = timer +default = "GetLastCreatedTimerBJ" + +[YDWEGetTriggerID] +title = "获取 触发器 的整数地址" +description = "获取 ${触发器} 的整数地址" +comment = "可以把一个触发器转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = trigger +default = "GetTriggeringTrigger" + +[YDWEGetGroupID] +title = "获取 单位组 的整数地址" +description = "获取 ${单位组} 的整数地址" +comment = "可以把一个单位组转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = group +default = "GetLastCreatedGroup" + +[YDWEGetLocationID] +title = "获取 点 的整数地址" +description = "获取 ${点} 的整数地址" +comment = "可以把一个点转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = location + +[YDWEGetUnitTypeID] +title = "获取 单位类型 的整数地址" +description = "获取 ${单位类型} 的整数地址" +comment = "可以把一个单位类型转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = unitcode +default = "hfoo" + +[YDWEGetAbilityTypeID] +title = "获取 技能类型 的整数地址" +description = "获取 ${技能类型} 的整数地址" +comment = "可以把一个技能类型转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = abilcode +default = "Aloc" + +[YDWEGetItemTypeID] +title = "获取 物品类型 的整数地址" +description = "获取 ${物品类型} 的整数地址" +comment = "可以把一个物品类型转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = itemcode +default = "spsh" + +[YDWEGetMultiboardID] +title = "获取 多面板 的整数地址" +description = "获取 ${多面板} 的整数地址" +comment = "可以把一个多面板转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = multiboard +default = "GetLastCreatedMultiboard" + +[YDWEGetMultiboardItemID] +title = "获取 多面板项目 的整数地址" +description = "获取 ${多面板项目} 的整数地址" +comment = "可以把一个多面板项目转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = multiboarditem + +[YDWEGetTextTagID] +title = "获取 漂浮文字 的整数地址" +description = "获取 ${漂浮文字} 的整数地址" +comment = "可以把一个漂浮文字转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = texttag +default = "GetLastCreatedTextTag" + +[YDWEGetLightningID] +title = "获取 闪电 的整数地址" +description = "获取 ${闪电} 的整数地址" +comment = "可以把一个闪电成转整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = lightning +default = "bj_lastCreatedLightning" + +[YDWEGetRegionID] +title = "获取 区域 的整数地址" +description = "获取 ${区域} 的整数地址" +comment = "可以把一个区域转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = region +default = "GetTriggeringRegion" + +[YDWEGetRectID] +title = "获取 地区 的整数地址" +description = "获取 ${地区} 的整数地址" +comment = "可以把一个地区转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = rect +default = "GetPlayableMapRect" + +[YDWEGetLeaderboardID] +title = "获取 排行榜 的整数地址" +description = "获取 ${排行榜} 的整数地址" +comment = "可以把一个排行榜转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = leaderboard +default = "DestroyLeaderboard" + +[YDWEGetEffectID] +title = "获取 特效 的整数地址" +description = "获取 ${特效} 的整数地址" +comment = "可以把一个特效转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = effect +default = "GetLastCreatedEffectBJ" + +[YDWEGetDestructableID] +title = "获取 可破坏物 的整数地址" +description = "获取 ${可破坏物} 的整数地址" +comment = "可以把一个可破坏物转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = destructable +default = "GetLastCreatedDestructable" + +[YDWEGetTriggerConditionID] +title = "获取 触发器条件 的整数地址" +description = "获取 ${触发器条件} 的整数地址" +comment = "可以把一个触发器条件转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = triggercondition + +[YDWEGetTriggerActionID] +title = "获取 触发器动作 的整数地址" +description = "获取 ${触发器动作} 的整数地址" +comment = "可以把一个触发器动作转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = triggeraction + +[YDWEGetTriggerEventID] +title = "获取 事件 的整数地址" +description = "获取 ${事件} 的整数地址" +comment = "可以把一个事件转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = event + +[YDWEGetForceID] +title = "获取 势力 的整数地址" +description = "获取 ${势力} 的整数地址" +comment = "可以把一个势力转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = force + +[YDWEGetBoolexprID] +title = "获取 布尔表达式 的整数地址" +description = "获取 ${布尔表达式} 的整数地址" +comment = "可以把一个布尔表达式转成整数,方便存入缓存或Hash表。" +category = TC_YDID +returns = integer +[[.args]] +type = boolexpr + +[GetStoredBooleanBJ] +title = "读取布尔值" +description = "从游戏缓存读取布尔值,名称: ${文字} 类别: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +returns = boolean +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[GetStoredIntegerBJ] +title = "缓存读取整数" +description = "从游戏缓存读取整数,名称: ${文字} 类别: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +returns = integer +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[GetStoredRealBJ] +title = "缓存读取实数" +description = "从游戏缓存读取实数,名称: ${文字} 类别: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +returns = real +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[GetStoredStringBJ] +title = "读取字符串" +description = "从游戏缓存读取字符串,名称: ${文字} 类别: ${Category} 缓存: ${Game Cache}" +comment = "原版UI,英文的语序的关系,为了使UI读起来更流畅,添加了一层封装,但这对中文来说就是画蛇添足了" +category = TC_YDHIDE +use_in_event = 0 +returns = string +[[.args]] +type = string +[[.args]] +type = string +default = "\"Category\"" +[[.args]] +type = gamecache +default = "GetLastCreatedGameCacheBJ" + +[YDWEConvert] +title = "命令ID" +description = "${ID}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = integer + +[YDWEAbilityId2OrderId] +title = "技能的命令ID [New!]" +description = "${技能} 的 ${类型}" +comment = "技能ID一定要用常量" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = abilcode +default = 'AHbz' +[[.args]] +type = OrderType +default = OrderTypeOrder + +[YDWEUOrderId2OrderId] +title = "单位目标命令" +description = "${命令}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = ordercodeutarg + +[YDWEPOrderId2OrderId] +title = "点目标命令" +description = "${命令}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = ordercodeptarg + +[YDWEDOrderId2OrderId] +title = "可破坏物目标命令" +description = "${命令}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = ordercodedtarg + +[YDWEIOrderId2OrderId] +title = "物品目标命令" +description = "${命令}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = ordercodeitarg + +[YDWENOrderId2OrderId] +title = "无目标命令" +description = "${命令}" +comment = "" +category = TC_CONVERSION +returns = ordercode +[[.args]] +type = ordercodenotarg diff --git a/share/mpq/ydwe/condition.txt b/share/mpq/ydwe/condition.txt new file mode 100644 index 0000000..888f4a7 --- /dev/null +++ b/share/mpq/ydwe/condition.txt @@ -0,0 +1,547 @@ +[OperatorCompareBoolean] +title = "布尔表达式" +description = "${表达式A} ${Operator} ${表达式B}" +comment = "" +category = TC_CONDITION +[[.args]] +type = boolean +default = "IsUnitType" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = boolean +default = "true" + +[" "] +title = "自定义代码 [C]" +description = "代码: ${Jass代码}" +comment = "条件内不可输入局部变量,如有必要,可用全局变量或GetTriggerUnit()之类的代替" +category = TC_CONDITION +[[.args]] +type = scriptcode + +[OperatorCompareTrigger] +title = "触发" +description = "${触发} ${Operator} ${触发}" +comment = "" +category = TC_CONDITION +[[.args]] +type = trigger +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = trigger + +[OperatorCompareUnit] +title = "单位" +description = "${Value} ${Operator} ${单位}" +comment = "" +category = TC_CONDITION +[[.args]] +type = unit +default = "GetTriggerUnit" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = unit + +[OperatorCompareUnitCode] +title = "单位类型" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = unitcode +default = "GetUnitTypeId" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = unitcode +default = "hfoo" + +[OperatorCompareTerrainType] +title = "地形" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = terraintype +default = "GetTerrainTypeBJ" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = terraintype +default = "TerrainTypeLdrt" + +[OperatorComparePoint] +title = "点 [R]" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = location +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = location + +[OperatorCompareDialog] +title = "对话框 [R]" +description = "${对话框} ${Operator} ${对话框}" +comment = "" +category = TC_CONDITION +[[.args]] +type = dialog +default = "GetClickedDialogBJ" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = dialog + +[OperatorCompareButton] +title = "对话框按钮" +description = "${对话框按钮} ${Operator} ${对话框按钮}" +comment = "" +category = TC_CONDITION +[[.args]] +type = button +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = button + +[OperatorCompareMeleeDifficulty] +title = "对战AI难度" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = aidifficulty +default = "GetAIDifficulty" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = aidifficulty +default = "AIDifficultyNormal" + +[OperatorCompareAbilityId] +title = "技能" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = abilcode +default = "GetSpellAbilityId" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = abilcode +default = "AUan" + +[OperatorCompareTimer] +title = "计时器 [R]" +description = "${计时器} ${Operator} ${计时器}" +comment = "" +category = TC_CONDITION +[[.args]] +type = timer +default = "GetExpiredTimer" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = timer + +[OperatorCompareTechCode] +title = "科技研究" +description = "${Value} ${Operator} ${科技}" +comment = "" +category = TC_CONDITION +[[.args]] +type = techcode +default = "GetResearched" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = techcode + +[OperatorCompareDestructible] +title = "可破坏物" +description = "${可破坏物} ${Operator} ${可破坏物}" +comment = "" +category = TC_CONDITION +[[.args]] +type = destructable +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = destructable + +[OperatorCompareDestructableCode] +title = "可破坏物类型" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = destructablecode +default = "GetDestructableTypeId" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = destructablecode +default = "LTlt" + +[OperatorCompareTrackable] +title = "可追踪物 [R]" +description = "${值} ${Operator} ${值}" +comment = "" +category = TC_CONDITION +[[.args]] +type = trackable +default = "GetTriggeringTrackable" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = trackable +default = "GetTriggeringTrackable" + +[OperatorCompareOrderCode] +title = "命令ID" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = ordercode +default = "GetIssuedOrderIdBJ" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = ordercode +default = "String2OrderIdBJ" + +[OperatorCompareBuffId] +title = "魔法效果" +description = "${魔法效果} ${Operator} ${魔法效果}" +comment = "" +category = TC_CONDITION +[[.args]] +type = buffcode +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = buffcode + +[OperatorCompareRegion] +title = "区域(矩形) [R]" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = rect +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = rect + +[OperatorCompareRegionR] +title = "区域(不规则) [R]" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = region +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = region + +[OperatorCompareReal] +title = "实数" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = real +default = "10" +[[.args]] +type = ComparisonOperator +default = "OperatorGreaterEq" +[[.args]] +type = real +default = "10" + +[OperatorCompareDegree] +title = "角度" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = degree +default = "10" +[[.args]] +type = ComparisonOperator +default = "OperatorGreaterEq" +[[.args]] +type = degree +default = "10" + +[OperatorCompareRadian] +title = "弧度" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = radian +default = "10" +[[.args]] +type = ComparisonOperator +default = "OperatorGreaterEq" +[[.args]] +type = radian +default = "10" + +[OperatorComparePlayer] +title = "玩家" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = player +default = "GetOwningPlayer" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = player +default = "Player00" + +[OperatorComparePlayerColor] +title = "玩家颜色" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = playercolor +default = "GetPlayerColor" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = playercolor +default = "Color00" + +[OperatorComparePlayerControl] +title = "玩家控制者" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = mapcontrol +default = "GetPlayerController" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = mapcontrol +default = "MapControlUser" + +[OperatorComparePlayerSlotStatus] +title = "玩家游戏状态" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = playerslotstate +default = "GetPlayerSlotState" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = playerslotstate +default = "PlayerSlotStatePlaying" + +[OperatorCompareItem] +title = "物品" +description = "${物品} ${Operator} ${物品}" +comment = "" +category = TC_CONDITION +[[.args]] +type = item +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = item + +[OperatorCompareItemType] +title = "物品分类" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = itemtype +default = "GetItemType" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = itemtype +default = "ItemTypePowerup" + +[OperatorCompareItemCode] +title = "物品类型" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = itemcode +default = "GetItemTypeId" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = itemcode +default = "texp" + +[OperatorCompareHeroSkill] +title = "学习技能" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = heroskillcode +default = "GetLearnedSkillBJ" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = heroskillcode +default = "HeroSkillBlizzard" + +[OperatorCompareGameDifficulty] +title = "游戏难度" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = gamedifficulty +default = "GetGameDifficulty" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = gamedifficulty +default = "GameDifficultyNormal" + +[OperatorCompareGameSpeed] +title = "游戏速度" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = gamespeed +default = "GetGameSpeed" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = gamespeed +default = "GameSpeedNormal" + +[OperatorCompareInteger] +title = "整数" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = integer +default = "0" +[[.args]] +type = ComparisonOperator +default = "OperatorEqual" +[[.args]] +type = integer +default = "0" + +[OperatorCompareRace] +title = "种族" +description = "${Value} ${Operator} ${Value}" +comment = "" +category = TC_CONDITION +[[.args]] +type = race +default = "GetPlayerRace" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = race +default = "RaceHuman" + +[OperatorCompareString] +title = "字符串" +description = "${Value} ${Operator} ${字符串}" +comment = "" +category = TC_CONDITION +[[.args]] +type = string +default = "GetEventPlayerChatString" +[[.args]] +type = EqualNotEqualOperator +default = "OperatorEqualENE" +[[.args]] +type = string + +[GetBooleanAnd] +title = "And" +description = "${条件 1} 且 ${条件 2}" +comment = "条件1 和条件2 均成立." +category = TC_CONDITION +[[.args]] +type = boolcall +[[.args]] +type = boolcall + +[GetBooleanOr] +title = "Or" +description = "${条件 1} or ${条件 2}" +comment = "条件1 和条件2 任意成立." +category = TC_CONDITION +[[.args]] +type = boolcall +[[.args]] +type = boolcall + +[AndMultiple] +title = "And, 多项条件" +description = "And - 所有条件成立" +comment = "用该功能添加的条件必须为主体之下." +category = TC_CONDITION +[[.args]] +type = nothing + +[OrMultiple] +title = "Or, 多项条件" +description = "Or - 任意条件成立" +comment = "用该功能添加的条件必须为主体之下." +category = TC_CONDITION +[[.args]] +type = nothing diff --git a/share/mpq/ydwe/define.txt b/share/mpq/ydwe/define.txt new file mode 100644 index 0000000..9c3d346 --- /dev/null +++ b/share/mpq/ydwe/define.txt @@ -0,0 +1,2720 @@ +[TriggerCategories] +TC_ARITHMETIC=WESTRING_TRIGCAT_ARITHMETIC,ReplaceableTextures\WorldEditUI\Actions-AI,1 +TC_NOTHING=WESTRING_TRIGCAT_NOTHING,ReplaceableTextures\CommandButtons\BTNPillage.blp,1 +TC_COMMENT=WESTRING_TRIGCAT_COMMENT,ReplaceableTextures\WorldEditUI\Actions-Comment,1 +TC_CUSTOM=WESTRING_TRIGCAT_CUSTOM,ReplaceableTextures\CommandButtons\BTNSpellSteal.blp,1 +TC_CONDITION=WESTRING_TRIGCAT_CONDITION,ReplaceableTextures\WorldEditUI\Actions-Logical,1 +TC_WAIT=WESTRING_TRIGCAT_WAIT,ReplaceableTextures\WorldEditUI\Actions-Wait,1 +TC_SETVARIABLE=WESTRING_TRIGCAT_SETVARIABLE,ReplaceableTextures\WorldEditUI\Actions-SetVariables,1 +TC_SKIPACTIONS=WESTRING_TRIGCAT_SKIPACTIONS,ReplaceableTextures\CommandButtons\BTNTemp.blp,1 +TC_LOGIC=WESTRING_TRIGCAT_LOGIC,ReplaceableTextures\WorldEditUI\Actions-Logical,1 +TC_FORLOOP=WESTRING_TRIGCAT_FORLOOP,ReplaceableTextures\WorldEditUI\Actions-Logical,1 +TC_LAST=WESTRING_TRIGCAT_LAST,ReplaceableTextures\WorldEditUI\Actions-SetVariables,1 +TC_YDST=[系统],ReplaceableTextures\CommandButtons\BTNMetamorphosis.blp +TC_YDLD=[存储],ReplaceableTextures\CommandButtons\BTNLoad.blp +TC_YDLC=[变量],ReplaceableTextures\WorldEditUI\Editor-ScriptVariable.blp +TC_YDAI=[AI],ReplaceableTextures\CommandButtons\BTNHeroTinker.blp +TC_YDET=[事件],UI\Widgets\ToolTips\Human\ToolTipStonesIcon.blp +TC_YDBF=[逆天],ReplaceableTextures\CommandButtons\BTNInfernal.blp +TC_YDSL=[存档],ReplaceableTextures\CommandButtons\BTNTome.blp +TC_SCRIPTSET=[电影],ReplaceableTextures\WorldEditUI\Doodad-Cinematic.blp +TC_AI=WESTRING_TRIGCAT_AI,ReplaceableTextures\WorldEditUI\Actions-AI +TC_TRIGGER=WESTRING_TRIGCAT_TRIGGER,ReplaceableTextures\CommandButtons\BTNEngineeringUpgrade.blp +TC_UNIT=WESTRING_TRIGCAT_UNIT,ReplaceableTextures\WorldEditUI\Actions-Unit +TC_UNITPOOL=单位池,ReplaceableTextures\WorldEditUI\Actions-Unit +TC_UNITGROUP=WESTRING_TRIGCAT_UNITGROUP,ReplaceableTextures\WorldEditUI\Actions-UnitGroup +TC_UBERSPLAT=WESTRING_TRIGCAT_UBERSPLAT,ReplaceableTextures\CommandButtons\BTNEarthquake.blp +TC_LOCATION=点,ReplaceableTextures\CommandButtons\BTNStun.blp +TC_CINEMATIC=WESTRING_TRIGCAT_CINEMATIC,ReplaceableTextures\WorldEditUI\Actions-Camera +TC_ANIMATION=WESTRING_TRIGCAT_ANIMATION,ReplaceableTextures\WorldEditUI\Actions-Animation +TC_DIALOG=WESTRING_TRIGCAT_DIALOG,ReplaceableTextures\WorldEditUI\Actions-Dialog +TC_MELEE=WESTRING_TRIGCAT_MELEE,ReplaceableTextures\WorldEditUI\Actions-Melee +TC_MULTIBOARD=WESTRING_TRIGCAT_MULTIBOARD,ReplaceableTextures\WorldEditUI\Actions-Quest +TC_ENVIRONMENT=WESTRING_TRIGCAT_ENVIRONMENT,ReplaceableTextures\WorldEditUI\Actions-Environment +TC_CAMERA=WESTRING_TRIGCAT_CAMERA,ReplaceableTextures\WorldEditUI\Actions-Camera +TC_TIMER=WESTRING_TRIGCAT_TIMER,ReplaceableTextures\WorldEditUI\Events-Time +TC_VISIBILITY=WESTRING_TRIGCAT_VISIBILITY,ReplaceableTextures\WorldEditUI\Actions-Visibility +TC_DESTRUCT=WESTRING_TRIGCAT_DESTRUCT,ReplaceableTextures\WorldEditUI\Actions-Destructibles +TC_TRACKABLE=可追踪物,ReplaceableTextures\WorldEditUI\Actions-Game +TC_LEADERBOARD=WESTRING_TRIGCAT_LEADERBOARD,ReplaceableTextures\WorldEditUI\Actions-Quest +TC_TEXTTAG=WESTRING_TRIGCAT_TEXTTAG,ReplaceableTextures\CommandButtons\BTNSpy.blp +TC_REGION=区域(不规则),ReplaceableTextures\WorldEditUI\Actions-Region +TC_RECT=区域(矩形),ReplaceableTextures\WorldEditUI\Actions-Region +TC_YDID=获取整数,ReplaceableTextures\CommandButtons\BTNSelectHeroOn.blp +TC_QUEST=WESTRING_TRIGCAT_QUEST,ReplaceableTextures\WorldEditUI\Actions-Quest +TC_LIGHTNING=WESTRING_TRIGCAT_LIGHTNING,ReplaceableTextures\CommandButtons\BTNChainLightning.blp +TC_EVENTRESPONSE=WESTRING_TRIGCAT_EVENTRESPONSE,ReplaceableTextures\CommandButtons\BTNBerserkForTrolls.blp +TC_SOUND=WESTRING_TRIGCAT_SOUND,ReplaceableTextures\WorldEditUI\Actions-Sound +TC_TIME=WESTRING_TRIGCAT_TIME,ReplaceableTextures\WorldEditUI\Events-Time +TC_MATH=WESTRING_TRIGCAT_MATH,ReplaceableTextures\WorldEditUI\Actions-Logical +TC_SPECIALEFFECT=WESTRING_TRIGCAT_SPECIALEFFECT,ReplaceableTextures\WorldEditUI\Actions-Animation +TC_IMAGE=WESTRING_TRIGCAT_IMAGE,ReplaceableTextures\CommandButtons\BTNStaffOfPreservation.blp +TC_PLAYER=WESTRING_TRIGCAT_PLAYER,ReplaceableTextures\WorldEditUI\Actions-Player +TC_PLAYERGROUP=WESTRING_TRIGCAT_PLAYERGROUP,ReplaceableTextures\WorldEditUI\Actions-PlayerGroup +TC_ITEM=WESTRING_TRIGCAT_ITEM,ReplaceableTextures\WorldEditUI\Actions-Item +TC_ITEMPOOL=物品池,ReplaceableTextures\WorldEditUI\Actions-Item +TC_UNITSEL=WESTRING_TRIGCAT_UNITSEL,ReplaceableTextures\WorldEditUI\Actions-UnitSelection +TC_HERO=WESTRING_TRIGCAT_HERO,ReplaceableTextures\WorldEditUI\Actions-Hero +TC_GAME=WESTRING_TRIGCAT_GAME,ReplaceableTextures\WorldEditUI\Actions-Game +TC_GAMECACHE=WESTRING_TRIGCAT_GAMECACHE,ReplaceableTextures\WorldEditUI\Actions-SetVariables +TC_NEUTRALBUILDING=WESTRING_TRIGCAT_NEUTRALBUILDING,ReplaceableTextures\WorldEditUI\Actions-Goldmine +TC_CONV=,ReplaceableTextures\WorldEditUI\Actions-AI +TC_CONVERSION=WESTRING_TRIGCAT_CONVERSION,ReplaceableTextures\WorldEditUI\Actions-AI +TC_HASHTABLE=WESTRING_TRIGCAT_HASHTABLE,ReplaceableTextures\WorldEditUI\Editor-Toolbar-SaveMap +TC_OBSOLETE=WESTRING_TRIGCAT_OBSOLETE,ReplaceableTextures\WorldEditUI\Editor-TriggerFunction +TC_DEBUG=WESTRING_TRIGCAT_DEBUG,ReplaceableTextures\WorldEditUI\Editor-TriggerFunction +TC_YDHIDE=不推荐使用,ReplaceableTextures\CommandButtons\BTNCancel.blp +TC_AI_TOWN=WESTRING_TRIGCAT_AI_TOWN,none +TC_AI_HERO=WESTRING_TRIGCAT_AI_HERO,none +TC_AI_RESOURCES=WESTRING_TRIGCAT_AI_RESOURCES,none +TC_AI_MISC=WESTRING_TRIGCAT_AI_MISC,none +TC_AI_UNIT=WESTRING_TRIGCAT_AI_UNIT,none +TC_AI_UPGRADE=WESTRING_TRIGCAT_AI_UPGRADE,none +TC_AI_COMMAND=WESTRING_TRIGCAT_AI_COMMAND,none + +[TriggerTypes] +boolean=0,1,1,WESTRING_TRIGTYPE_boolean +integer=0,1,1,WESTRING_TRIGTYPE_integer +real=0,1,1,WESTRING_TRIGTYPE_real +string=0,1,1,WESTRING_TRIGTYPE_string +destructable=0,1,1,WESTRING_TRIGTYPE_destructable +destructablecode=0,1,1,WESTRING_TRIGTYPE_destructablecode,integer +item=0,1,1,WESTRING_TRIGTYPE_item +itemcode=0,1,1,WESTRING_TRIGTYPE_itemcode,integer +itempool=0,1,0,物品池 +unit=0,1,1,WESTRING_TRIGTYPE_unit +group=0,1,0,WESTRING_TRIGTYPE_group +unitcode=0,1,1,WESTRING_TRIGTYPE_unitcode,integer +unitpool=0,1,0,单位池 +player=0,1,1,WESTRING_TRIGTYPE_player +force=0,1,0,WESTRING_TRIGTYPE_force +location=0,1,1,WESTRING_TRIGTYPE_location +rect=0,1,1,WESTRING_TRIGTYPE_rect +region=0,1,1,不规则区域 +trigger=0,1,1,WESTRING_TRIGTYPE_trigger +dialog=0,1,0,WESTRING_TRIGTYPE_dialog +button=0,1,0,WESTRING_TRIGTYPE_button +timer=0,1,0,WESTRING_TRIGTYPE_timer +timerdialog=0,1,0,WESTRING_TRIGTYPE_timerdialog +texttag=1,1,0,WESTRING_TRIGTYPE_texttag +leaderboard=0,1,0,WESTRING_TRIGTYPE_leaderboard +multiboard=1,1,0,WESTRING_TRIGTYPE_multiboard +multiboarditem=1,1,0,多面板项目 +camerasetup=0,1,0,WESTRING_TRIGTYPE_camerasetup +trackable=0,1,0,可追踪物 +image=1,1,1,WESTRING_TRIGTYPE_image +sound=0,1,0,WESTRING_TRIGTYPE_sound +effect=0,1,0,WESTRING_TRIGTYPE_effect +lightning=1,1,1,WESTRING_TRIGTYPE_lightning +gamecache=0,1,0,WESTRING_TRIGTYPE_gamecache +abilcode=0,1,1,WESTRING_TRIGTYPE_abilcode,integer +buffcode=1,1,1,WESTRING_TRIGTYPE_buffcode,integer +ordercode=0,1,1,WESTRING_TRIGTYPE_ordercode,integer +race=0,1,1,WESTRING_TRIGTYPE_race +quest=0,1,0,WESTRING_TRIGTYPE_quest +questitem=0,1,0,WESTRING_TRIGTYPE_questitem +techcode=0,1,1,WESTRING_TRIGTYPE_techcode,integer +terraindeformation=1,1,0,WESTRING_TRIGTYPE_terraindeformation +ubersplat=1,1,1,WESTRING_TRIGTYPE_ubersplat +fogmodifier=0,1,0,WESTRING_TRIGTYPE_fogmodifier +weathereffect=0,1,0,WESTRING_TRIGTYPE_weathereffect +boolexpr=0,1,0,布尔表达式 +radian=0,1,1,弧度,real +degree=0,1,1,角度,real +hashtable=0,1,0,WESTRING_TRIGTYPE_hashtable +code=0,1,0,WESTRING_TRIGTYPE_code +handle=0,0,0,WESTRING_TRIGTYPE_handle +agent=0,0,0,WESTRING_TRIGTYPE_agent,agent +unitstatechangetype=0,0,0,单位状态修改类型,integer +bonusType=0,0,0,属性类型,integer +eventid=0,0,0,事件ID +event=0,0,0,WESTRING_TRIGTYPE_event +triggercondition=0,0,0,WESTRING_TRIGTYPE_triggercondition +triggeraction=0,0,0,WESTRING_TRIGTYPE_triggeraction +defeatcondition=0,0,0,WESTRING_TRIGTYPE_defeatcondition +gamespeed=0,0,1,WESTRING_TRIGTYPE_gamespeed +playercolor=0,0,1,WESTRING_TRIGTYPE_playercolor +itemtype=1,0,1,WESTRING_TRIGTYPE_itemtype +effecttype=1,0,1,WESTRING_TRIGTYPE_effecttype +pathingtype=1,0,1,WESTRING_TRIGTYPE_pathingtype +attacktype=1,0,1,WESTRING_TRIGTYPE_attacktype +weapontype=1,0,1,WESTRING_TRIGTYPE_weapontype +damagetype=1,0,1,WESTRING_TRIGTYPE_damagetype +lightningtype=1,0,1,WESTRING_TRIGTYPE_lightningtype,string +soundtype=1,0,1,WESTRING_TRIGTYPE_soundtype +imagetype=1,0,1,WESTRING_TRIGTYPE_imagetype,integer +terrainshape=1,0,1,WESTRING_TRIGTYPE_terrainshape,integer +terraintype=1,0,1,WESTRING_TRIGTYPE_terraintype,integer +ubersplattype=1,0,1,WESTRING_TRIGTYPE_ubersplattype,string +turnclockwise=0,0,1,单位转向类型,integer +headORchest=0,0,1,头部或胸部,integer +camerachangetype=0,0,1,镜头切换方式,integer +camerastattype=0,0,1,镜头参数类型,integer +cameratgnoreterrain=0,0,1,镜头忽略悬崖,boolean +attackorattackedevent=0,0,1,事件类型,integer +targettype=0,0,1,目标类型,integer +unittype=0,0,0,WESTRING_TRIGTYPE_unittype +alliancetype=0,0,0,WESTRING_TRIGTYPE_alliancetype +playerstate=0,0,0,WESTRING_TRIGTYPE_playerstate +playerscore=1,0,0,WESTRING_TRIGTYPE_playerscore +playergameresult=0,0,0,WESTRING_TRIGTYPE_playergameresult +unitstate=0,0,0,WESTRING_TRIGTYPE_unitstate +playerunitevent=0,0,0,WESTRING_TRIGTYPE_playerunitevent +unitevent=0,0,0,WESTRING_TRIGTYPE_unitevent +limitop=0,0,0,WESTRING_TRIGTYPE_limitop +gamedifficulty=0,0,1,WESTRING_TRIGTYPE_gamedifficulty +gameevent=1,0,0,WESTRING_TRIGTYPE_gameevent +aidifficulty=0,0,1,WESTRING_TRIGTYPE_aidifficulty +mapdensity=0,0,1,WESTRING_TRIGTYPE_mapdensity +mapcontrol=0,0,1,WESTRING_TRIGTYPE_mapcontrol +mapflag=0,0,0,WESTRING_TRIGTYPE_mapflag +playerslotstate=0,0,1,WESTRING_TRIGTYPE_playerslotstate +camerafield=0,0,0,WESTRING_TRIGTYPE_camerafield +raritycontrol=0,0,0,WESTRING_TRIGTYPE_raritycontrol +blendmode=0,0,0,WESTRING_TRIGTYPE_blendmode +fogstate=0,0,0,WESTRING_TRIGTYPE_fogstate +volumegroup=0,0,0,WESTRING_TRIGTYPE_volumegroup +keyeventtype=1,0,0,WESTRING_TRIGTYPE_keyeventtype,integer +keyeventkey=1,0,0,WESTRING_TRIGTYPE_keyeventkey,integer +colorchangeoption=0,0,0,WESTRING_TRIGTYPE_colorchangeoption,boolean +playerchangecoloroption=0,0,0,WESTRING_TRIGTYPE_playerchangecoloroption,boolean +chatmatchtype=0,0,0,WESTRING_TRIGTYPE_chatmatchtype,boolean +unitfacingbone=0,0,0,WESTRING_TRIGTYPE_unitfacingbone,string +includeoption=0,0,0,WESTRING_TRIGTYPE_inclusionoption,boolean +cameraapplyoption=0,0,0,WESTRING_TRIGTYPE_cameraapplyoption,boolean +cameraorientationoption=0,0,0,WESTRING_TRIGTYPE_cameraorientationoption,boolean +invulnerableoption=0,0,0,WESTRING_TRIGTYPE_invulnerableoption,boolean +availabilityoption=0,0,0,WESTRING_TRIGTYPE_availabilityoption,boolean +showhideoption=0,0,0,WESTRING_TRIGTYPE_showhideoption,boolean +minimizeoption=1,0,0,WESTRING_TRIGTYPE_minimizeoption,boolean +skymodelstring=0,0,0,WESTRING_TRIGTYPE_skymodelstring,string,Model +cinefiltertexture=0,0,0,WESTRING_TRIGTYPE_cinefiltertexture,string,Image +pathingoption=0,0,0,WESTRING_TRIGTYPE_pathingoption,boolean +pawnableoption=1,0,0,WESTRING_TRIGTYPE_pawnableoption,boolean +dropnodropoption=0,0,0,WESTRING_TRIGTYPE_dropnodropoption,boolean +droppableoption=0,0,0,WESTRING_TRIGTYPE_droppableoption,boolean +beforeafteroption=0,0,0,WESTRING_TRIGTYPE_beforeafteroption,boolean +onoffoption=0,0,0,WESTRING_TRIGTYPE_onoffoption,boolean +enabledisableoption=0,0,0,WESTRING_TRIGTYPE_enabledisableoption,boolean +enableddisabledoption=0,0,0,WESTRING_TRIGTYPE_enableddisabledoption,boolean +rescuableoption=0,0,0,WESTRING_TRIGTYPE_rescuableoption,boolean +allowdontoption=0,0,0,WESTRING_TRIGTYPE_allowdontoption,boolean +fadedontoption=0,0,0,WESTRING_TRIGTYPE_fadedontoption,boolean +unitorderutarg=0,0,0,单位目标命令,string +unitorderptarg=0,0,0,点目标命令,string +unitorderdtarg=0,0,0,可破坏物目标命令,string +unitorderitarg=1,0,0,物品目标命令,string +unitordernotarg=0,0,0,无目标命令,string +ordercodeutarg=0,0,0,单位目标命令,integer +ordercodeptarg=0,0,0,点目标命令,integer +ordercodedtarg=0,0,0,可破坏物目标命令,integer +ordercodeitarg=1,0,0,物品目标命令,integer +ordercodenotarg=0,0,0,无目标命令,integer +heroskillcode=0,0,0,WESTRING_TRIGTYPE_heroskillcode,integer +weathereffectcode=0,0,0,WESTRING_TRIGTYPE_weathereffectcode,integer +alliancesetting=0,0,0,WESTRING_TRIGTYPE_alliancesetting,integer +addsettooption=0,0,0,WESTRING_TRIGTYPE_addsettooption,integer +modifymethod=1,0,0,WESTRING_TRIGTYPE_modifymethod,integer +waitdontoption=0,0,0,WESTRING_TRIGTYPE_waitdontoption,boolean +cratertype=1,0,0,WESTRING_TRIGTYPE_cratertype,boolean +rippletype=1,0,0,WESTRING_TRIGTYPE_rippletype,boolean +createremoveoption=0,0,0,WESTRING_TRIGTYPE_createremoveoption,boolean +addremoveoption=0,0,0,WESTRING_TRIGTYPE_addremoveoption,boolean +questtypeoption=0,0,0,WESTRING_TRIGTYPE_questtypeoption,integer +questmessagetype=0,0,0,WESTRING_TRIGTYPE_questmessagetype,integer +herostat=1,0,0,WESTRING_TRIGTYPE_herostat,integer +completionoption=0,0,0,WESTRING_TRIGTYPE_completionoption,boolean +failureoption=0,0,0,WESTRING_TRIGTYPE_failureoption,boolean +discoveredoption=0,0,0,WESTRING_TRIGTYPE_discoveredoption,boolean +pauseresumeoption=0,0,0,WESTRING_TRIGTYPE_pauseresumeoption,boolean +periodicoption=0,0,0,WESTRING_TRIGTYPE_periodicoption,boolean +leaderboardsortoption=0,0,0,WESTRING_TRIGTYPE_leaderboardsortoption,integer +ascendingoption=0,0,0,WESTRING_TRIGTYPE_ascendingoption,boolean +sleepwakeoption=0,0,0,WESTRING_TRIGTYPE_sleepwakeoption,boolean +pauseunpauseoption=0,0,0,WESTRING_TRIGTYPE_pauseunpauseoption,boolean +sharedontoption=0,0,0,WESTRING_TRIGTYPE_sharedontoption,boolean +fadetypeoption=0,0,0,WESTRING_TRIGTYPE_fadetypeoption,boolean +bufftype=0,0,0,WESTRING_TRIGTYPE_bufftype,integer +buffpolarity=1,0,0,WESTRING_TRIGTYPE_buffpolarity,integer +buffresist=1,0,0,WESTRING_TRIGTYPE_buffresist,integer +cameraboundsadjusttype=0,0,0,WESTRING_TRIGTYPE_cameraboundsadjusttype,integer +availableoption=0,0,0,WESTRING_TRIGTYPE_availableoption,boolean +explodedontoption=0,0,0,WESTRING_TRIGTYPE_explodedontoption,boolean +suspendresumeoption=0,0,0,WESTRING_TRIGTYPE_suspendresumeoption,boolean +suspendresumeoption_R=0,0,0,WESTRING_TRIGTYPE_suspendresumeoption,boolean +missionindex=0,0,0,WESTRING_TRIGTYPE_missionindex,integer +campaignindex=0,0,0,WESTRING_TRIGTYPE_campaignindex,integer +cinematicindex=0,0,0,WESTRING_TRIGTYPE_cinematicindex,integer +musictheme=0,0,0,WESTRING_TRIGTYPE_musictheme,string,Sound +ambientthemeday=0,0,0,WESTRING_TRIGTYPE_ambientthemeday,string +ambientthemenight=0,0,0,WESTRING_TRIGTYPE_ambientthemenight,string +unitstatemethod=0,0,0,WESTRING_TRIGTYPE_unitstatemethod,string +checkingignoringoption=0,0,0,WESTRING_TRIGTYPE_checkingignoringoption,string +playerflag=0,0,0,WESTRING_TRIGTYPE_playerflag,playerstate +playerresource=1,0,0,WESTRING_TRIGTYPE_playerresource,playerstate +gateoperation=0,0,0,WESTRING_TRIGTYPE_gateoperation,integer +elevatorwallop=1,0,0,WESTRING_TRIGTYPE_elevatorwallop,boolean +elevatorwalltype=1,0,0,WESTRING_TRIGTYPE_elevatorwalltype,integer +useskipoption=0,0,0,WESTRING_TRIGTYPE_useskipoption,boolean +seldeseloption=0,0,0,WESTRING_TRIGTYPE_seldeseloption,boolean +cachevaluetype=1,0,0,WESTRING_TRIGTYPE_cachevaluetype,integer +fogstyle=0,0,0,WESTRING_TRIGTYPE_fogstyle,integer +timedlifebuffcode=1,0,0,WESTRING_TRIGTYPE_timedlifebuffcode,integer +aicaptaintype=1,0,0,WESTRING_TRIGTYPE_aicaptaintype,boolean +aicommandpop=1,0,0,WESTRING_TRIGTYPE_aicommandpop,boolean +scriptcode=1,0,0,WESTRING_TRIGTYPE_scriptcode,string +itemstatus=1,0,0,WESTRING_TRIGTYPE_itemstatus,integer +itemcodestatus=1,0,0,WESTRING_TRIGTYPE_itemcodestatus,integer +minimappingstyle=1,0,0,WESTRING_TRIGTYPE_minimappingstyle,integer +corpsetype=1,0,0,WESTRING_TRIGTYPE_corpsetype,integer +stringcaseoption=1,0,0,WESTRING_TRIGTYPE_stringcaseoption,boolean +hashtablevaluetype=1,0,0,WESTRING_TRIGTYPE_hashtablevaluetype,integer +unitstatesec=0,0,0,WESTRING_TRIGTYPE_unitstate,unitstate +nearestonlyoption=0,0,0,选取方式,boolean +vertonlyoption=0,0,0,晃动方式,boolean +includeoptionnot=0,0,0,WESTRING_TRIGTYPE_inclusionoption,boolean +unittypeaddable=0,0,0,WESTRING_TRIGTYPE_unittype,unittype +isnotoption=0,0,0,判断选项,boolean +pingstyle=1,0,0,WESTRING_TRIGTYPE_minimappingstyle,boolean +hotkeyint=0,0,0,快捷键,integer +sharevisionoption=0,0,0,共享视野选项,boolean +converunitoption=0,0,0,覆盖选项,boolean +lockunlockoption=0,0,0,锁定选项,boolean +onoffintoption=0,0,0,WESTRING_TRIGTYPE_onoffoption,integer +onoffnotoption=0,0,0,WESTRING_TRIGTYPE_onoffoption,boolean +aiscript=0,0,0,WESTRING_TRIGTYPE_aiscript,string,AIScript,1 +modelfile=0,0,0,WESTRING_TRIGTYPE_modelfile,string,Model,1 +anyfile=0,0,0,WESTRING_TRIGTYPE_anyfile,string,Any,1 +preloadfile=0,0,0,WESTRING_TRIGTYPE_preloadfile,string,Preload,1 +imagefile=0,0,0,WESTRING_TRIGTYPE_imagefile,string,Image,1 +StringExt=0,0,0,WESTRING_TRIGTYPE_StringExt,string +AnyGlobal=0,0,0,WESTRING_TRIGTYPE_AnyGlobal +AnyType=0,0,0,WESTRING_TRIGTYPE_AnyType +VarAsString_Real=0,0,0,WESTRING_TRIGTYPE_VarAsString_Real +ArithmeticOperator=0,0,0,WESTRING_TRIGTYPE_ArithmeticOperator +ComparisonOperator=0,0,0,WESTRING_TRIGTYPE_ComparisonOperator +EqualNotEqualOperator=0,0,0,WESTRING_TRIGTYPE_EqualNotEqualOperator +boolcall=0,0,0,WESTRING_TRIGTYPE_boolcall +eventcall=1,0,0,WESTRING_TRIGTYPE_eventcall +doodadcode=0,0,0,WESTRING_TRIGTYPE_doodadcode,integer +musicfile=0,0,0,WESTRING_TRIGTYPE_musicfile,string +integervar=1,0,0,WESTRING_TRIGTYPE_integer,integer +abilevent=0,0,0,技能类型,integer +racepreference=0,0,0,种族选项 +AbilityState=0,0,0,技能属性,integer +AbilityDataInteger=0,0,0,技能数据 (整数),integer +AbilityDataReal=0,0,0,技能数据 (实数),integer +AbilityDataString=0,0,0,技能数据 (字符串),integer +ChatRecipient=0,0,0,频道类型,integer +ItemDataString=0,0,0,物品数据 (字符串),integer +YArithmeticOperator=0,0,0,WESTRING_TRIGTYPE_ArithmeticOperator +OrderType=0,0,0,命令类型 + +[TriggerTypeDefaults] +boolean=false,WESTRING_FALSE +integer=0 +real=0 +group=CreateGroup(),WESTRING_TRIGDEFAULT_GROUP +force=CreateForce(),WESTRING_TRIGDEFAULT_FORCE +timer=CreateTimer(),WESTRING_TRIGDEFAULT_TIMER +dialog=DialogCreate(),WESTRING_TRIGDEFAULT_DIALOG +region=CreateRegion(),新建不规则区域 + +[TriggerParams] +bonusTypeC=0,bonusType,3,攻击 +bonusTypeD=0,bonusType,2,防御 +bonusTypeA=0,bonusType,0,生命上限 +bonusTypeB=0,bonusType,1,魔法上限 +unitstatechangetypeA=0,unitstatechangetype,0,增加 +unitstatechangetypeB=0,unitstatechangetype,1,减少 +unitstatechangetypeC=0,unitstatechangetype,2,等于 +turnclockwiseA=0,turnclockwise,1,逆时针 +turnclockwiseB=0,turnclockwise,-1,顺时针 +turnclockwiseC=0,turnclockwise,0,最近方向 +headORchestA=0,headORchest,0,头部 +headORchestB=0,headORchest,1,胸部 +camerachangetypeA=0,camerachangetype,1,立即 +camerachangetypeB=0,camerachangetype,2,线性 +camerachangetypeC=0,camerachangetype,3,平滑 +camerachangetypeD=0,camerachangetype,4,平滑后停止 +camerastattypeA=0,camerastattype,1,X坐标(目标X轴) +camerastattypeB=0,camerastattype,2,Y坐标(目标Y轴) +camerastattypeC=0,camerastattype,3,Z坐标(Z轴偏移) +camerastattypeD=0,camerastattype,4,面向角度(Z轴旋转角度) +camerastattypeE=0,camerastattype,5,仰角(X轴旋转角度) +camerastattypeF=0,camerastattype,6,倾斜角度(Y轴旋转角度) +camerastattypeG=0,camerastattype,7,视野范围(镜头区域) +camerastattypeH=0,camerastattype,8,远处裁景(远处截断距离) +camerastattypeI=0,camerastattype,9,镜头目标距离(镜头距离) +cameratgnoreterrainA=0,cameratgnoreterrain,false,不忽略 +cameratgnoreterrainB=0,cameratgnoreterrain,true,忽略 +attackorattackedeventA=0,attackorattackedevent,0,被攻击 +attackorattackedeventB=0,attackorattackedevent,1,攻击 +targettypeA=0,targettype,1,对敌人 +targettypeB=0,targettype,2,对点 +targettypeC=0,targettype,3,立即 +targettypeD=0,targettype,4,对自己 +OperatorAdd=0,ArithmeticOperator,"+",WESTRING_ARITHMETICOPERATOR_ADD +OperatorSubtract=0,ArithmeticOperator,"-",WESTRING_ARITHMETICOPERATOR_SUBTRACT +OperatorMultiply=0,ArithmeticOperator,"*",WESTRING_ARITHMETICOPERATOR_MULTIPLY +OperatorDivide=0,ArithmeticOperator,"/",WESTRING_ARITHMETICOPERATOR_DIVIDE +YOperatorAdd=0,YArithmeticOperator,"+",WESTRING_ARITHMETICOPERATOR_ADD +YOperatorSubtract=0,YArithmeticOperator,"-",WESTRING_ARITHMETICOPERATOR_SUBTRACT +YOperatorMultiply=0,YArithmeticOperator,"*",WESTRING_ARITHMETICOPERATOR_MULTIPLY +YOperatorDivide=0,YArithmeticOperator,"/",WESTRING_ARITHMETICOPERATOR_DIVIDE +OperatorEqual=0,ComparisonOperator,"==",WESTRING_COMPARISONOPERATOR_EQUAL +OperatorNotEqual=0,ComparisonOperator,"!=",WESTRING_COMPARISONOPERATOR_NOTEQUAL +OperatorGreater=0,ComparisonOperator,">",WESTRING_COMPARISONOPERATOR_GREATER +OperatorGreaterEq=0,ComparisonOperator,">=",WESTRING_COMPARISONOPERATOR_GREATEREQ +OperatorLess=0,ComparisonOperator,"<",WESTRING_COMPARISONOPERATOR_LESS +OperatorLessEq=0,ComparisonOperator,"<=",WESTRING_COMPARISONOPERATOR_LESSEQ +OperatorEqualENE=0,EqualNotEqualOperator,"==",WESTRING_EQUALNOTEQUALOPERATOR_EQUAL +OperatorNotEqualENE=0,EqualNotEqualOperator,"!=",WESTRING_EQUALNOTEQUALOPERATOR_NOTEQUAL +bj_forLoopAIndex=0,integer,bj_forLoopAIndex,循环整数A [R] +bj_forLoopBIndex=0,integer,bj_forLoopBIndex,循环整数B [R] +abileventA=0,abilevent,1,环绕(特效) +abileventB=0,abilevent,2,跳跃 +abileventC=0,abilevent,3,丝带 +abileventD=0,abilevent,4,钩子(命中) +abileventE=0,abilevent,5,钩子(返回) +abileventF=0,abilevent,6,冲锋 +abileventG=0,abilevent,7,跳劈 +abileventH=0,abilevent,8,月神箭(命中) +abileventI=0,abilevent,9,月神箭(消失) +abileventJ=0,abilevent,10,环绕(模板) +RealQueueDelayQuest=0,real,bj_QUEUE_DELAY_QUEST,WESTRING_QUEUE_DELAY_QUEST +RealQueueDelayHint=0,real,bj_QUEUE_DELAY_HINT,WESTRING_QUEUE_DELAY_HINT +RealQueueDelaySecret=0,real,bj_QUEUE_DELAY_SECRET,WESTRING_QUEUE_DELAY_SECRET +RealHandicapEasy=0,real,bj_HANDICAP_EASY,WESTRING_HANDICAP_EASY +RealCellWidth=0,real,bj_CELLWIDTH,WESTRING_REAL_CELLWIDTH +RealUnitFacing=0,degree,bj_UNIT_FACING,WESTRING_REAL_UNITFACING +RealCamDefDistance=0,real,bj_CAMERA_DEFAULT_DISTANCE,WESTRING_CAMDEFAULT_DISTANCE +RealCamDefFarZ=0,real,bj_CAMERA_DEFAULT_FARZ,WESTRING_CAMDEFAULT_FARZ +RealCamDefAoA=0,real,bj_CAMERA_DEFAULT_AOA,WESTRING_CAMDEFAULT_AOA +RealCamDefFoV=0,real,bj_CAMERA_DEFAULT_FOV,WESTRING_CAMDEFAULT_FOV +RealCamDefRoll=0,real,bj_CAMERA_DEFAULT_ROLL,WESTRING_CAMDEFAULT_ROLL +RealCamDefRotation=0,real,bj_CAMERA_DEFAULT_ROTATION,WESTRING_CAMDEFAULT_ROTATION +bj_lastTransmissionDuration=0,real,bj_lastTransmissionDuration,最后发言长度 [R] +RealE=0,real,bj_E,WESTRING_REAL_E +RealPi=0,real,bj_PI,WESTRING_REAL_PI +ScriptCode00=0,scriptcode,exitwhen true,退出当前循环 [R] +ScriptCode01=0,scriptcode,call DisableTrigger(bj_cineSceneBeingSkipped),禁用ESC跳过电影消息 [R] +ScriptCode02=0,scriptcode,call EnableTrigger(bj_cineSceneBeingSkipped),启用ESC跳过电影消息 [R] +Player00=0,player,Player(0),WESTRING_PLAYER_00 +PlayerALL=0,player,Player(n),任意玩家 +Player01=0,player,Player(1),WESTRING_PLAYER_01 +Player02=0,player,Player(2),WESTRING_PLAYER_02 +Player03=0,player,Player(3),WESTRING_PLAYER_03 +Player04=0,player,Player(4),WESTRING_PLAYER_04 +Player05=0,player,Player(5),WESTRING_PLAYER_05 +Player06=0,player,Player(6),WESTRING_PLAYER_06 +Player07=0,player,Player(7),WESTRING_PLAYER_07 +Player08=0,player,Player(8),WESTRING_PLAYER_08 +Player09=0,player,Player(9),WESTRING_PLAYER_09 +Player10=0,player,Player(10),WESTRING_PLAYER_10 +Player11=0,player,Player(11),WESTRING_PLAYER_11 +PlayerNA=0,player,Player(PLAYER_NEUTRAL_AGGRESSIVE),WESTRING_PLAYER_NA +PlayerNV=0,player,Player(bj_PLAYER_NEUTRAL_VICTIM),WESTRING_PLAYER_NV +PlayerNE=0,player,Player(bj_PLAYER_NEUTRAL_EXTRA),WESTRING_PLAYER_NE +PlayerNP=0,player,Player(PLAYER_NEUTRAL_PASSIVE),WESTRING_PLAYER_NP +Force00=0,force,bj_FORCE_PLAYER[0],WESTRING_FORCE_00 +Force01=0,force,bj_FORCE_PLAYER[1],WESTRING_FORCE_01 +Force02=0,force,bj_FORCE_PLAYER[2],WESTRING_FORCE_02 +Force03=0,force,bj_FORCE_PLAYER[3],WESTRING_FORCE_03 +Force04=0,force,bj_FORCE_PLAYER[4],WESTRING_FORCE_04 +Force05=0,force,bj_FORCE_PLAYER[5],WESTRING_FORCE_05 +Force06=0,force,bj_FORCE_PLAYER[6],WESTRING_FORCE_06 +Force07=0,force,bj_FORCE_PLAYER[7],WESTRING_FORCE_07 +Force08=0,force,bj_FORCE_PLAYER[8],WESTRING_FORCE_08 +Force09=0,force,bj_FORCE_PLAYER[9],WESTRING_FORCE_09 +Force10=0,force,bj_FORCE_PLAYER[10],WESTRING_FORCE_10 +Force11=0,force,bj_FORCE_PLAYER[11],WESTRING_FORCE_11 +ForceNA=0,force,bj_FORCE_PLAYER[PLAYER_NEUTRAL_AGGRESSIVE],WESTRING_FORCE_NA +ForceNV=0,force,bj_FORCE_PLAYER[bj_PLAYER_NEUTRAL_VICTIM],WESTRING_FORCE_NV +ForceNE=0,force,bj_FORCE_PLAYER[bj_PLAYER_NEUTRAL_EXTRA],WESTRING_FORCE_NE +ForceNP=0,force,bj_FORCE_PLAYER[PLAYER_NEUTRAL_PASSIVE],WESTRING_FORCE_NP +bj_FORCE_ALL_PLAYERS=0,force,bj_FORCE_ALL_PLAYERS,全部玩家 [R] +Color00=0,playercolor,PLAYER_COLOR_RED,WESTRING_UNITCOLOR_00 +Color01=0,playercolor,PLAYER_COLOR_BLUE,WESTRING_UNITCOLOR_01 +Color02=0,playercolor,PLAYER_COLOR_CYAN,WESTRING_UNITCOLOR_02 +Color03=0,playercolor,PLAYER_COLOR_PURPLE,WESTRING_UNITCOLOR_03 +Color04=0,playercolor,PLAYER_COLOR_YELLOW,WESTRING_UNITCOLOR_04 +Color05=0,playercolor,PLAYER_COLOR_ORANGE,WESTRING_UNITCOLOR_05 +Color06=0,playercolor,PLAYER_COLOR_GREEN,WESTRING_UNITCOLOR_06 +Color07=0,playercolor,PLAYER_COLOR_PINK,WESTRING_UNITCOLOR_07 +Color08=0,playercolor,PLAYER_COLOR_LIGHT_GRAY,WESTRING_UNITCOLOR_08 +Color09=0,playercolor,PLAYER_COLOR_LIGHT_BLUE,WESTRING_UNITCOLOR_09 +Color10=0,playercolor,PLAYER_COLOR_AQUA,WESTRING_UNITCOLOR_10 +Color11=0,playercolor,PLAYER_COLOR_BROWN,WESTRING_UNITCOLOR_11 +Color12=1,playercolor,ConvertPlayerColor(12),WESTRING_UNITCOLOR_12 +RaceHuman=0,race,RACE_HUMAN,WESTRING_TRIGRACE_HUMAN +RaceOrc=0,race,RACE_ORC,WESTRING_TRIGRACE_ORC +RaceUndead=0,race,RACE_UNDEAD,WESTRING_TRIGRACE_UNDEAD +RaceNightElf=0,race,RACE_NIGHTELF,WESTRING_TRIGRACE_NIGHTELF +RaceDemon=0,race,RACE_DEMON,WESTRING_TRIGRACE_DEMON +RaceUnknown=0,race,ConvertRace(0),没有 +RaceOther=0,race,ConvertRace(7),其他 +RaceCreeps=0,race,ConvertRace(8),野外生物 +RaceCommoner=0,race,ConvertRace(9),平民 +RaceCritters=0,race,ConvertRace(10),动物 +RaceNaga=0,race,ConvertRace(11),娜迦 +ItemTypeAny=1,itemtype,ITEM_TYPE_ANY,WESTRING_ITEMTYPE_ANY +ItemTypePermanent=1,itemtype,ITEM_TYPE_PERMANENT,WESTRING_ITEMTYPE_PERMANENT +ItemTypeCharged=1,itemtype,ITEM_TYPE_CHARGED,WESTRING_ITEMTYPE_CHARGED +ItemTypePowerup=1,itemtype,ITEM_TYPE_POWERUP,WESTRING_ITEMTYPE_POWERUP +ItemTypeArtifact=1,itemtype,ITEM_TYPE_ARTIFACT,WESTRING_ITEMTYPE_ARTIFACT +ItemTypePurchasable=1,itemtype,ITEM_TYPE_PURCHASABLE,WESTRING_ITEMTYPE_PURCHASABLE +ItemTypeCampaign=1,itemtype,ITEM_TYPE_CAMPAIGN,WESTRING_ITEMTYPE_CAMPAIGN +ItemTypeMiscellaneous=1,itemtype,ITEM_TYPE_MISCELLANEOUS,WESTRING_ITEMTYPE_MISCELLANEOUS +ItemTypeUnknown=1,itemtype,ITEM_TYPE_UNKNOWN,WESTRING_ITEMTYPE_UNKNOWN +HotKeyIntNull=0,hotkeyint,0,无 +HotKeyIntA=0,hotkeyint,'A',A +HotKeyIntB=0,hotkeyint,'B',B +HotKeyIntC=0,hotkeyint,'C',C +HotKeyIntD=0,hotkeyint,'D',D +HotKeyIntE=0,hotkeyint,'E',E +HotKeyIntF=0,hotkeyint,'F',F +HotKeyIntG=0,hotkeyint,'G',G +HotKeyIntH=0,hotkeyint,'H',H +HotKeyIntI=0,hotkeyint,'I',I +HotKeyIntJ=0,hotkeyint,'J',J +HotKeyIntK=0,hotkeyint,'K',K +HotKeyIntL=0,hotkeyint,'L',L +HotKeyIntM=0,hotkeyint,'M',M +HotKeyIntN=0,hotkeyint,'N',N +HotKeyIntO=0,hotkeyint,'O',O +HotKeyIntP=0,hotkeyint,'P',P +HotKeyIntQ=0,hotkeyint,'Q',Q +HotKeyIntR=0,hotkeyint,'R',R +HotKeyIntS=0,hotkeyint,'S',S +HotKeyIntT=0,hotkeyint,'T',T +HotKeyIntU=0,hotkeyint,'U',U +HotKeyIntV=0,hotkeyint,'V',V +HotKeyIntW=0,hotkeyint,'W',W +HotKeyIntX=0,hotkeyint,'X',X +HotKeyIntY=0,hotkeyint,'Y',Y +HotKeyIntZ=0,hotkeyint,'Z',Z +HotKeyInttilde=0,hotkeyint,256,~ +HotKeyInt1=0,hotkeyint,'1',1 +HotKeyInt2=0,hotkeyint,'2',2 +HotKeyInt3=0,hotkeyint,'3',3 +HotKeyInt4=0,hotkeyint,'4',4 +HotKeyInt5=0,hotkeyint,'5',5 +HotKeyInt6=0,hotkeyint,'6',6 +HotKeyInt7=0,hotkeyint,'7',7 +HotKeyInt8=0,hotkeyint,'8',8 +HotKeyInt9=0,hotkeyint,'9',9 +HotKeyInt0=0,hotkeyint,'0',0 +HotKeyInt-=0,hotkeyint,273,- +HotKeyIntequals=0,hotkeyint,272,= +HotKeyInt\=0,hotkeyint,276,\ +HotKeyIntBackspace=0,hotkeyint,514,Backspace +HotKeyInt[=0,hotkeyint,274,[ +HotKeyInt]=0,hotkeyint,275,] +HotKeyInt;=0,hotkeyint,277,; +HotKeyInt'=0,hotkeyint,278,' +HotKeyIntcomma=0,hotkeyint,279,"," +HotKeyInt.=0,hotkeyint,280,. +HotKeyInt/=0,hotkeyint,281,/ +HotKeyIntF1=0,hotkeyint,768,F1 +HotKeyIntF2=0,hotkeyint,769,F2 +HotKeyIntF3=0,hotkeyint,770,F3 +HotKeyIntF4=0,hotkeyint,771,F4 +HotKeyIntF5=0,hotkeyint,772,F5 +HotKeyIntF6=0,hotkeyint,773,F6 +HotKeyIntF7=0,hotkeyint,774,F7 +HotKeyIntF8=0,hotkeyint,775,F8 +HotKeyIntF9=0,hotkeyint,776,F9 +HotKeyIntF10=0,hotkeyint,777,F10 +HotKeyIntF11=0,hotkeyint,778,F11 +HotKeyIntF12=0,hotkeyint,779,F12 +HotKeyIntEsc=0,hotkeyint,512,Esc +HotKeyIntTab=0,hotkeyint,515,Tab +HotKeyIntCapsLock=0,hotkeyint,526,CapsLock +HotKeyIntLeft=0,hotkeyint,516,Left +HotKeyIntRight=0,hotkeyint,518,Right +HotKeyIntUp=0,hotkeyint,517,Up +HotKeyIntDown=0,hotkeyint,519,Down +HotKeyIntPrintScreen=0,hotkeyint,530,PrintScreen +HotKeyIntScrollLock=0,hotkeyint,528,ScrollLock +HotKeyIntPause=0,hotkeyint,529,Pause +HotKeyIntInsert=0,hotkeyint,520,Insert +HotKeyIntDelete=0,hotkeyint,521,Delete +HotKeyIntHome=0,hotkeyint,522,Home +HotKeyIntEnd=0,hotkeyint,523,End +HotKeyIntPageUp=0,hotkeyint,524,PageUp +HotKeyIntPageDown=0,hotkeyint,525,PageDown +HotKeyIntNumpad1=0,hotkeyint,258,Numpad1 +HotKeyIntNumpad2=0,hotkeyint,259,Numpad2 +HotKeyIntNumpad3=0,hotkeyint,260,Numpad3 +HotKeyIntNumpad4=0,hotkeyint,261,Numpad4 +HotKeyIntNumpad5=0,hotkeyint,262,Numpad5 +HotKeyIntNumpad6=0,hotkeyint,263,Numpad6 +HotKeyIntNumpad7=0,hotkeyint,264,Numpad7 +HotKeyIntNumpad8=0,hotkeyint,265,Numpad8 +HotKeyIntNumpad9=0,hotkeyint,266,Numpad9 +HotKeyIntNumpad0=0,hotkeyint,257,Numpad0 +HotKeyIntNumLock=0,hotkeyint,527,NumLock +HotKeyIntNumpad/=0,hotkeyint,270,Numpad/ +HotKeyIntNumpad*=0,hotkeyint,269,Numpad* +HotKeyIntNumpad-=0,hotkeyint,268,Numpad- +HotKeyIntNumpad+=0,hotkeyint,267,Numpad+ +HotKeyIntNumpad.=0,hotkeyint,271,Numpad. +bj_lastLoadPreloadSLResult=0,boolean,bj_lastLoadPreloadSLResult,最后读取的存档为有效 [YDWE] +UnitNull=0,unit,null,WESTRING_TRIGUNIT_NULL +bj_lastCreatedUnit=0,unit,bj_lastCreatedUnit,最后创建的单位 [R] +bj_lastLoadedUnit=0,unit,bj_lastLoadedUnit,最后读取的单位 [R] +bj_lastReplacedUnit=0,unit,bj_lastReplacedUnit,最后替换的单位 [R] +bj_lastHauntedGoldMine=0,unit,bj_lastHauntedGoldMine,最后创建的不死族金矿 [R] +bj_lastPoolAbstractedUnit=0,unit,bj_lastPoolAbstractedUnit,最后从单位池中取出的单位 [YDWE] +bj_lastAbilityCastingUnit=0,unit,bj_lastAbilityCastingUnit,最后施放特殊技能的单位 [YDWE] +bj_lastAbilityTargetUnit=0,unit,bj_lastAbilityTargetUnit,最后被特殊技能命中的单位 [YDWE] +bj_lastCreatedUnitPool=0,unitpool,bj_lastCreatedUnitPool,最后创建的单位池 [YDWE] +UnitTypeNull=0,unitcode,0,WESTRING_TRIGUNITTYPE_NULL +bj_lastCreatedGroup=0,group,bj_lastCreatedGroup,最后创建的单位组 [R] +ItemNull=0,item,null,WESTRING_TRIGITEM_NULL +bj_lastCreatedItem=0,item,bj_lastCreatedItem,最后创建的物品 [R] +bj_lastRemovedItem=0,item,bj_lastRemovedItem,最后丢弃的物品 [R] +bj_lastMovedItemInItemSlot=0,item,bj_lastMovedItemInItemSlot,最后在物品栏中移动的物品 [YDWE] +bj_lastCreatedItemPool=0,itempool,bj_lastCreatedItemPool,最后创建的物品池 [YDWE] +DestructableNull=0,destructable,null,WESTRING_TRIGDESTRUCTABLE_NULL +bj_lastCreatedDestructable=0,destructable,bj_lastCreatedDestructable,最后创建的可破坏物 [R] +bj_lastCreatedQuest=0,quest,bj_lastCreatedQuest,最后创建的任务 [R] +bj_lastCreatedQuestItem=0,questitem,bj_lastCreatedQuestItem,最后创建的任务项目 [R] +bj_lastCreatedDefeatCondition=0,defeatcondition,bj_lastCreatedDefeatCondition,最后创建的失败条件 [R] +bj_lastCreatedLeaderboard=0,leaderboard,bj_lastCreatedLeaderboard,最后创建的排行榜 [R] +bj_lastCreatedMultiboard=0,multiboard,bj_lastCreatedMultiboard,最后创建的多面板 [R] +bj_lastStartedTimer=0,timer,bj_lastStartedTimer,最后启用的计时器 [R] +bj_lastCreatedTimerDialog=0,timerdialog,bj_lastCreatedTimerDialog,最后创建的计时器窗口 [R] +bj_lastCreatedButton=0,button,bj_lastCreatedButton,最后创建的对话框按钮 [R] +RectNull=0,rect,null,WESTRING_TRIGRECT_NULL +bj_mapInitialPlayableArea=0,rect,bj_mapInitialPlayableArea,可用地图区域 [R] +bj_mapInitialCameraBounds=0,rect,bj_mapInitialCameraBounds,初始可用镜头区域 [R] +bj_lastCreatedEffect=0,effect,bj_lastCreatedEffect,最后创建的特效 [R] +bj_lastCreatedLightning=0,lightning,bj_lastCreatedLightning,最后创建的闪电效果 [R] +bj_lastCreatedImage=0,image,bj_lastCreatedImage,最后创建的图像 [R] +bj_lastCreatedUbersplat=0,ubersplat,bj_lastCreatedUbersplat,最后创建的地面纹理变化 [R] +bj_lastCreatedWeatherEffect=0,weathereffect,bj_lastCreatedWeatherEffect,最后创建的天气效果 [R] +bj_lastCreatedTerrainDeformation=0,terraindeformation,bj_lastCreatedTerrainDeformation,最后创建的地形变化 [R] +bj_lastCreatedFogModifier=0,fogmodifier,bj_lastCreatedFogModifier,最后创建的可见度修正器 [R] +bj_lastCreatedGameCache=0,gamecache,bj_lastCreatedGameCache,最后创建的游戏缓存 [R] +bj_lastCreatedTextTag=0,texttag,bj_lastCreatedTextTag,最后创建的漂浮文字 [R] +SoundNull=0,sound,null,WESTRING_TRIGSOUND_NULL +bj_lastPlayedSound=0,sound,bj_lastPlayedSound,最后播放的音效 [R] +MusicFileMusic=0,musicfile,`music`,WESTRING_TRIGMUSICFILE_MUSIC +bj_lastPlayedMusic=0,musicfile,bj_lastPlayedMusic,最后播放的音乐 [R] +bj_lastSetAttackType=0,attacktype,bj_lastSetAttackType,最后设置的攻击类型 [YDWE] +bj_lastSetDamageType=0,damagetype,bj_lastSetDamageType,最后设置的伤害类型 [YDWE] +bj_lastSetWeaponType=0,weapontype,bj_lastSetWeaponType,最后设置的武器类型 [YDWE] +LimitOpEqual=0,limitop,EQUAL,WESTRING_LIMITOP_EQUAL +LimitOpNotEqual=0,limitop,NOT_EQUAL,WESTRING_LIMITOP_NOTEQUAL +LimitOpLessThan=0,limitop,LESS_THAN,WESTRING_LIMITOP_LESSTHAN +LimitOpLessThanOrEqual=0,limitop,LESS_THAN_OR_EQUAL,WESTRING_LIMITOP_LESSTHANOREQUAL +LimitOpGreaterThan=0,limitop,GREATER_THAN,WESTRING_LIMITOP_GREATERTHAN +LimitOpGreaterThanOrEqual=0,limitop,GREATER_THAN_OR_EQUAL,WESTRING_LIMITOP_GREATERTHANOREQUAL +GameResultWin=0,playergameresult,PLAYER_GAME_RESULT_VICTORY,WESTRING_VICTORY +GameResultLose=0,playergameresult,PLAYER_GAME_RESULT_DEFEAT,WESTRING_DEFEAT +GameResultDraw=0,playergameresult,PLAYER_GAME_RESULT_TIE,WESTRING_DRAW +MapFlagUseHandicaps=0,mapflag,MAP_USE_HANDICAPS,WESTRING_MAPFLAG_USEHANDICAPS +MapFlagObservers=0,mapflag,MAP_OBSERVERS,WESTRING_MAPFLAG_OBSERVERS +MapFlagObserversChat=0,mapflag,MAP_OBSERVERS_ON_DEATH,WESTRING_MAPFLAG_OBSERVERSONDEATH +MapFlagResourceTradingLock=0,mapflag,MAP_LOCK_RESOURCE_TRADING,WESTRING_MAPFLAG_RESOURCETRADINGLOCK +MapFlagResourceTradingAllies=0,mapflag,MAP_RESOURCE_TRADING_ALLIES_ONLY,WESTRING_MAPFLAG_RESOURCETRADINGALLIES +MapFlagAllianceChangesLock=0,mapflag,MAP_LOCK_ALLIANCE_CHANGES,WESTRING_MAPFLAG_ALLIANCECHANGESLOCK +MapFlagAllianceChangesHidden=0,mapflag,MAP_ALLIANCE_CHANGES_HIDDEN,WESTRING_MAPFLAG_ALLIANCECHANGESHIDDEN +MapFlagMapReloaded=1,mapflag,MAP_RELOADED,WESTRING_MAPFLAG_MAPRELOADED +MapFlagRandomHeroes=1,mapflag,MAP_RANDOM_HERO,WESTRING_MAPFLAG_RANDOM_HERO +MapFlagRandomRaces=1,mapflag,MAP_RANDOM_RACES,WESTRING_MAPFLAG_RANDOM_RACES +MapFlagFogHideTerrain=1,mapflag,MAP_FOG_HIDE_TERRAIN,WESTRING_MAPFLAG_FOG_HIDE_TERRAIN +MapFlagFogMapExplored=1,mapflag,MAP_FOG_MAP_EXPLORED,WESTRING_MAPFLAG_FOG_MAP_EXPLORED +MapFlagFogAlwaysVisible=1,mapflag,MAP_FOG_ALWAYS_VISIBLE,WESTRING_MAPFLAG_FOG_ALWAYS_VISIBLE +PlayerStateGold=0,playerstate,PLAYER_STATE_RESOURCE_GOLD,WESTRING_PSTATE_GOLD +PlayerStateLumber=0,playerstate,PLAYER_STATE_RESOURCE_LUMBER,WESTRING_PSTATE_LUMBER +PlayerStateHeroTokens=0,playerstate,PLAYER_STATE_RESOURCE_HERO_TOKENS,WESTRING_PSTATE_HEROTOKENS +PlayerStateGoldUpkeepRate=0,playerstate,PLAYER_STATE_GOLD_UPKEEP_RATE,WESTRING_PSTATE_UPKEEPGOLD +PlayerStateLumberUpkeepRate=0,playerstate,PLAYER_STATE_LUMBER_UPKEEP_RATE,WESTRING_PSTATE_UPKEEPLUMBER +PlayerStateGoldGathered=0,playerstate,PLAYER_STATE_GOLD_GATHERED,WESTRING_PSTATE_GOLDGATHERED +PlayerStateLumberGathered=0,playerstate,PLAYER_STATE_LUMBER_GATHERED,WESTRING_PSTATE_LUMBER_GATHERED +PlayerStateFoodUsed=0,playerstate,PLAYER_STATE_RESOURCE_FOOD_USED,WESTRING_PSTATE_FOODUSED +PlayerStateFoodCap=0,playerstate,PLAYER_STATE_RESOURCE_FOOD_CAP,WESTRING_PSTATE_FOODCAP +PlayerStateFoodLimit=0,playerstate,PLAYER_STATE_FOOD_CAP_CEILING,WESTRING_PSTATE_FOODCAPLIMIT +PlayerStateGameResult=0,playerstate,PLAYER_STATE_GAME_RESULT,WESTRING_PSTATE_GAMERESULT +PlayerResourceGold=1,playerresource,PLAYER_STATE_RESOURCE_GOLD,WESTRING_PRESOURCE_GOLD +PlayerResourceLumber=1,playerresource,PLAYER_STATE_RESOURCE_LUMBER,WESTRING_PRESOURCE_LUMBER +PlayerScoreUnitsTrained=1,playerscore,PLAYER_SCORE_UNITS_TRAINED,WESTRING_PSCORE_UNITSTRAINED +PlayerScoreUnitsKilled=1,playerscore,PLAYER_SCORE_UNITS_KILLED,WESTRING_PSCORE_UNITSKILLED +PlayerScoreStructBuilt=1,playerscore,PLAYER_SCORE_STRUCT_BUILT,WESTRING_PSCORE_STRUCTBUILT +PlayerScoreStructRazed=1,playerscore,PLAYER_SCORE_STRUCT_RAZED,WESTRING_PSCORE_STRUCTRAZED +PlayerScoreTechPercent=1,playerscore,PLAYER_SCORE_TECH_PERCENT,WESTRING_PSCORE_TECHPERCENT +PlayerScoreFoodProd=1,playerscore,PLAYER_SCORE_FOOD_MAXPROD,WESTRING_PSCORE_FOODPROD +PlayerScoreFoodUsed=1,playerscore,PLAYER_SCORE_FOOD_MAXUSED,WESTRING_PSCORE_FOODUSED +PlayerScoreHeroesKilled=1,playerscore,PLAYER_SCORE_HEROES_KILLED,WESTRING_PSCORE_HEROESKILLED +PlayerScoreItemsGained=1,playerscore,PLAYER_SCORE_ITEMS_GAINED,WESTRING_PSCORE_ITEMSGAINED +PlayerScoreMercsHired=1,playerscore,PLAYER_SCORE_MERCS_HIRED,WESTRING_PSCORE_MERCSHIRED +PlayerScoreGoldTotal=1,playerscore,PLAYER_SCORE_GOLD_MINED_TOTAL,WESTRING_PSCORE_GOLDTOTAL +PlayerScoreGoldUpkeep=1,playerscore,PLAYER_SCORE_GOLD_MINED_UPKEEP,WESTRING_PSCORE_GOLDUPKEEP +PlayerScoreGoldLostUpkeep=1,playerscore,PLAYER_SCORE_GOLD_LOST_UPKEEP,WESTRING_PSCORE_GOLDLOSTUPKEEP +PlayerScoreGoldLostTax=1,playerscore,PLAYER_SCORE_GOLD_LOST_TAX,WESTRING_PSCORE_GOLDLOSTTAX +PlayerScoreGoldGiven=1,playerscore,PLAYER_SCORE_GOLD_GIVEN,WESTRING_PSCORE_GOLDGIVEN +PlayerScoreGoldReceived=1,playerscore,PLAYER_SCORE_GOLD_RECEIVED,WESTRING_PSCORE_GOLDRECEIVED +PlayerScoreLumberTotal=1,playerscore,PLAYER_SCORE_LUMBER_TOTAL,WESTRING_PSCORE_LUMBERTOTAL +PlayerScoreLumberLostUpkeep=1,playerscore,PLAYER_SCORE_LUMBER_LOST_UPKEEP,WESTRING_PSCORE_LUMBERLOSTUPKEEP +PlayerScoreLumberLostTax=1,playerscore,PLAYER_SCORE_LUMBER_LOST_TAX,WESTRING_PSCORE_LUMBERLOSTTAX +PlayerScoreLumberGiven=1,playerscore,PLAYER_SCORE_LUMBER_GIVEN,WESTRING_PSCORE_LUMBERGIVEN +PlayerScoreLumberReceived=1,playerscore,PLAYER_SCORE_LUMBER_RECEIVED,WESTRING_PSCORE_LUMBERECEIVED +PlayerScoreUnitTotal=1,playerscore,PLAYER_SCORE_UNIT_TOTAL,WESTRING_PSCORE_UNITTOTAL +PlayerScoreHeroTotal=1,playerscore,PLAYER_SCORE_HERO_TOTAL,WESTRING_PSCORE_HEROTOTAL +PlayerScoreResourceTotal=1,playerscore,PLAYER_SCORE_RESOURCE_TOTAL,WESTRING_PSCORE_RESOURCETOTAL +PlayerScoreTotal=1,playerscore,PLAYER_SCORE_TOTAL,WESTRING_PSCORE_TOTAL +PlayerFlagUnfollowable=0,playerflag,PLAYER_STATE_UNFOLLOWABLE,WESTRING_PFLAG_UNFOLLOWABLE +PlayerFlagGivesBounty=0,playerflag,PLAYER_STATE_GIVES_BOUNTY,WESTRING_PFLAG_GIVESBOUNTY +PlayerFlagAlliedVictory=0,playerflag,PLAYER_STATE_ALLIED_VICTORY,WESTRING_PFLAG_ALLIEDVICTORY +GateOperationClosed=0,gateoperation,bj_GATEOPERATION_CLOSE,WESTRING_GATEOPERATION_CLOSE +GateOperationOpen=0,gateoperation,bj_GATEOPERATION_OPEN,WESTRING_GATEOPERATION_OPEN +GateOperationDestroyed=0,gateoperation,bj_GATEOPERATION_DESTROY,WESTRING_GATEOPERATION_DESTROY +ElevatorWallOpClose=1,elevatorwallop,false,WESTRING_ELEVATORWALLOP_CLOSE +ElevatorWallOpOpen=1,elevatorwallop,true,WESTRING_ELEVATORWALLOP_OPEN +ElevatorWallTypeAll=1,elevatorwalltype,bj_ELEVATOR_WALL_TYPE_ALL,WESTRING_ELEVATORWALLTYPE_ALL +ElevatorWallTypeEast=1,elevatorwalltype,bj_ELEVATOR_WALL_TYPE_EAST,WESTRING_ELEVATORWALLTYPE_EAST +ElevatorWallTypeNorth=1,elevatorwalltype,bj_ELEVATOR_WALL_TYPE_NORTH,WESTRING_ELEVATORWALLTYPE_NORTH +ElevatorWallTypeSouth=1,elevatorwalltype,bj_ELEVATOR_WALL_TYPE_SOUTH,WESTRING_ELEVATORWALLTYPE_SOUTH +ElevatorWallTypeWest=1,elevatorwalltype,bj_ELEVATOR_WALL_TYPE_WEST,WESTRING_ELEVATORWALLTYPE_WEST +UseSkipOptionUse=0,useskipoption,true,WESTRING_USESKIPOPTION_USE +UseSkipOptionSkip=0,useskipoption,false,WESTRING_USESKIPOPTION_SKIP +SelDeselOptionSel=0,seldeseloption,true,WESTRING_SELDESELOPTION_SEL +SelDeselOptionDesel=0,seldeseloption,false,WESTRING_SELDESELOPTION_DESEL +AICaptainAttack=1,aicaptaintype,true,WESTRING_AICAPTAIN_ATTACK +AICaptainDefense=1,aicaptaintype,false,WESTRING_AICAPTAIN_DEFENSE +AICommandPop=1,aicommandpop,true,WESTRING_AICOMMAND_REMOVE +AICommandLeave=1,aicommandpop,false,WESTRING_AICOMMAND_LEAVE +CacheValueTypeBoolean=1,cachevaluetype,bj_GAMECACHE_BOOLEAN,WESTRING_CACHEVALUETYPE_BOOLEAN +CacheValueTypeInteger=1,cachevaluetype,bj_GAMECACHE_INTEGER,WESTRING_CACHEVALUETYPE_INTEGER +CacheValueTypeReal=1,cachevaluetype,bj_GAMECACHE_REAL,WESTRING_CACHEVALUETYPE_REAL +CacheValueTypeUnit=1,cachevaluetype,bj_GAMECACHE_UNIT,WESTRING_CACHEVALUETYPE_UNIT +CacheValueTypeString=1,cachevaluetype,bj_GAMECACHE_STRING,WESTRING_CACHEVALUETYPE_STRING +HashtableValueTypeBoolean=1,hashtablevaluetype,bj_HASHTABLE_BOOLEAN,WESTRING_CACHEVALUETYPE_BOOLEAN +HashtableValueTypeInteger=1,hashtablevaluetype,bj_HASHTABLE_INTEGER,WESTRING_CACHEVALUETYPE_INTEGER +HashtableValueTypeReal=1,hashtablevaluetype,bj_HASHTABLE_REAL,WESTRING_CACHEVALUETYPE_REAL +HashtableValueTypeString=1,hashtablevaluetype,bj_HASHTABLE_STRING,WESTRING_CACHEVALUETYPE_STRING +HashtableValueTypeHandle=1,hashtablevaluetype,bj_HASHTABLE_HANDLE,WESTRING_CACHEVALUETYPE_HANDLE +bj_lastCreatedHashtable=0,hashtable,bj_lastCreatedHashtable,最后创建的哈希表 [C] +MapControlNone=0,mapcontrol,MAP_CONTROL_NONE,WESTRING_MAPCONTROL_NONE +MapControlUser=0,mapcontrol,MAP_CONTROL_USER,WESTRING_MAPCONTROL_USER +MapControlComputer=0,mapcontrol,MAP_CONTROL_COMPUTER,WESTRING_MAPCONTROL_COMPUTER +MapControlRescuable=0,mapcontrol,MAP_CONTROL_RESCUABLE,WESTRING_MAPCONTROL_RESCUABLE +MapControlNeutral=0,mapcontrol,MAP_CONTROL_NEUTRAL,WESTRING_MAPCONTROL_NEUTRAL +MapControlCreep=0,mapcontrol,MAP_CONTROL_CREEP,WESTRING_MAPCONTROL_CREEP +PlayerSlotStateEmpty=0,playerslotstate,PLAYER_SLOT_STATE_EMPTY,WESTRING_PSLOT_EMPTY +PlayerSlotStatePlaying=0,playerslotstate,PLAYER_SLOT_STATE_PLAYING,WESTRING_PSLOT_PLAYING +PlayerSlotStateLeft=0,playerslotstate,PLAYER_SLOT_STATE_LEFT,WESTRING_PSLOT_LEFT +PlayerUnitEventDeath=0,playerunitevent,EVENT_PLAYER_UNIT_DEATH,WESTRING_PUEVENT_DEATH +PlayerUnitEventDecay=0,playerunitevent,EVENT_PLAYER_UNIT_DECAY,WESTRING_PUEVENT_DECAY +PlayerUnitEventChangesOwner=1,playerunitevent,EVENT_PLAYER_UNIT_CHANGE_OWNER,WESTRING_PUEVENT_CHANGESOWNER +PlayerUnitEventHero_Level=0,playerunitevent,EVENT_PLAYER_HERO_LEVEL,WESTRING_PUEVENT_HEROLEVEL +PlayerUnitEventHero_Skill=0,playerunitevent,EVENT_PLAYER_HERO_SKILL,WESTRING_PUEVENT_HEROSKILL +PlayerUnitEventHero_Revivable=0,playerunitevent,EVENT_PLAYER_HERO_REVIVABLE,WESTRING_PUEVENT_HEROREVIVABLE +PlayerUnitEventHeroUseItem=0,playerunitevent,EVENT_PLAYER_UNIT_USE_ITEM,WESTRING_PUEVENT_HEROUSEITEM +PlayerUnitEventHeroPickUpItem=0,playerunitevent,EVENT_PLAYER_UNIT_PICKUP_ITEM,WESTRING_PUEVENT_HEROPICKUPITEM +PlayerUnitEventHeroDropItem=0,playerunitevent,EVENT_PLAYER_UNIT_DROP_ITEM,WESTRING_PUEVENT_HERODROPITEM +PlayerUnitEventSell=1,playerunitevent,EVENT_PLAYER_UNIT_SELL,WESTRING_PUEVENT_SELL +PlayerUnitEventSellItem=1,playerunitevent,EVENT_PLAYER_UNIT_SELL_ITEM,WESTRING_PUEVENT_SELLITEM +PlayerUnitEventPawnItem=1,playerunitevent,EVENT_PLAYER_UNIT_PAWN_ITEM,WESTRING_PUEVENT_PAWNITEM +PlayerUnitEventAttacked=0,playerunitevent,EVENT_PLAYER_UNIT_ATTACKED,WESTRING_PUEVENT_ATTACKED +PlayerUnitEventRescued=0,playerunitevent,EVENT_PLAYER_UNIT_RESCUED,WESTRING_PUEVENT_RESCUED +PlayerUnitEventSummoned=0,playerunitevent,EVENT_PLAYER_UNIT_SUMMON,WESTRING_PUEVENT_SUMMONED +PlayerUnitEventSpellChannel=1,playerunitevent,EVENT_PLAYER_UNIT_SPELL_CHANNEL,WESTRING_PUEVENT_SPELLCHANNEL +PlayerUnitEventSpellCast=1,playerunitevent,EVENT_PLAYER_UNIT_SPELL_CAST,WESTRING_PUEVENT_SPELLCAST +PlayerUnitEventSpellEndCast=1,playerunitevent,EVENT_PLAYER_UNIT_SPELL_ENDCAST,WESTRING_PUEVENT_SPELLENDCAST +PlayerUnitEventSpellEffect=1,playerunitevent,EVENT_PLAYER_UNIT_SPELL_EFFECT,WESTRING_PUEVENT_SPELLEFFECT +PlayerUnitEventSpellFinish=1,playerunitevent,EVENT_PLAYER_UNIT_SPELL_FINISH,WESTRING_PUEVENT_SPELLFINISH +PlayerUnitEventLoaded=0,playerunitevent,EVENT_PLAYER_UNIT_LOADED,WESTRING_PUEVENT_LOADED +PlayerUnitEventTrain_Start=0,playerunitevent,EVENT_PLAYER_UNIT_TRAIN_START,WESTRING_PUEVENT_TRAINSTART +PlayerUnitEventTrain_Cancel=0,playerunitevent,EVENT_PLAYER_UNIT_TRAIN_CANCEL,WESTRING_PUEVENT_TRAINCANCEL +PlayerUnitEventTrain_Finish=0,playerunitevent,EVENT_PLAYER_UNIT_TRAIN_FINISH,WESTRING_PUEVENT_TRAINFINISH +PlayerUnitEventConstruct_Start=0,playerunitevent,EVENT_PLAYER_UNIT_CONSTRUCT_START,WESTRING_PUEVENT_CONSTRUCTSTART +PlayerUnitEventConstruct_Cancel=0,playerunitevent,EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL,WESTRING_PUEVENT_CONSTRUCTCANCEL +PlayerUnitEventConstruct_Finish=0,playerunitevent,EVENT_PLAYER_UNIT_CONSTRUCT_FINISH,WESTRING_PUEVENT_CONSTRUCTFINISH +PlayerUnitEventReviveStart=0,playerunitevent,EVENT_PLAYER_HERO_REVIVE_START,WESTRING_PUEVENT_REVIVESTART +PlayerUnitEventReviveCancel=0,playerunitevent,EVENT_PLAYER_HERO_REVIVE_CANCEL,WESTRING_PUEVENT_REVIVECANCEL +PlayerUnitEventReviveFinish=0,playerunitevent,EVENT_PLAYER_HERO_REVIVE_FINISH,WESTRING_PUEVENT_REVIVEFINISH +PlayerUnitEventUpgrade_Start=0,playerunitevent,EVENT_PLAYER_UNIT_UPGRADE_START,WESTRING_PUEVENT_UPGRADESTART +PlayerUnitEventUpgrade_Cancel=0,playerunitevent,EVENT_PLAYER_UNIT_UPGRADE_CANCEL,WESTRING_PUEVENT_UPGRADECANCEL +PlayerUnitEventUpgrade_Finish=0,playerunitevent,EVENT_PLAYER_UNIT_UPGRADE_FINISH,WESTRING_PUEVENT_UPGRADEFINISH +PlayerUnitEventResearch_Start=0,playerunitevent,EVENT_PLAYER_UNIT_RESEARCH_START,WESTRING_PUEVENT_RESEARCHSTART +PlayerUnitEventResearch_Cancel=0,playerunitevent,EVENT_PLAYER_UNIT_RESEARCH_CANCEL,WESTRING_PUEVENT_RESEARCHCANCEL +PlayerUnitEventResearch_Finish=0,playerunitevent,EVENT_PLAYER_UNIT_RESEARCH_FINISH,WESTRING_PUEVENT_RESEARCHFINISH +PlayerUnitEventIssued_Unit_Order=0,playerunitevent,EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER,WESTRING_PUEVENT_ISSUEDUNITORDER +PlayerUnitEventIssued_Point_Order=0,playerunitevent,EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER,WESTRING_PUEVENT_ISSUEDPOINTORDER +PlayerUnitEventIssued_Order=0,playerunitevent,EVENT_PLAYER_UNIT_ISSUED_ORDER,WESTRING_PUEVENT_ISSUEDORDER +UnitEventDeath=0,unitevent,EVENT_UNIT_DEATH,WESTRING_UEVENT_DEATH +UnitEventDecay=0,unitevent,EVENT_UNIT_DECAY,WESTRING_UEVENT_DECAY +UnitEventChangesOwner=1,unitevent,EVENT_UNIT_CHANGE_OWNER,WESTRING_UEVENT_CHANGESOWNER +UnitEventDamaged=0,unitevent,EVENT_UNIT_DAMAGED,WESTRING_UEVENT_DAMAGED +UnitEventHeroLevel=0,unitevent,EVENT_UNIT_HERO_LEVEL,WESTRING_UEVENT_HEROLEVEL +UnitEventHeroSkill=0,unitevent,EVENT_UNIT_HERO_SKILL,WESTRING_UEVENT_HEROSKILL +UnitEventHeroRevivable=0,unitevent,EVENT_UNIT_HERO_REVIVABLE,WESTRING_UEVENT_HEROREVIVABLE +UnitEventHeroUseItem=0,unitevent,EVENT_UNIT_USE_ITEM,WESTRING_UEVENT_HEROUSEITEM +UnitEventHeroPickUpItem=0,unitevent,EVENT_UNIT_PICKUP_ITEM,WESTRING_UEVENT_HEROPICKUPITEM +UnitEventHeroDropItem=0,unitevent,EVENT_UNIT_DROP_ITEM,WESTRING_UEVENT_HERODROPITEM +UnitEventSell=1,unitevent,EVENT_UNIT_SELL,WESTRING_UEVENT_SELL +UnitEventSellItem=1,unitevent,EVENT_UNIT_SELL_ITEM,WESTRING_UEVENT_SELLITEM +UnitEventPawnItem=1,unitevent,EVENT_UNIT_PAWN_ITEM,WESTRING_UEVENT_PAWNITEM +UnitEventAttacked=0,unitevent,EVENT_UNIT_ATTACKED,WESTRING_UEVENT_ATTACKED +UnitEventRescued=0,unitevent,EVENT_UNIT_RESCUED,WESTRING_UEVENT_RESCUED +UnitEventSelected=0,unitevent,EVENT_UNIT_SELECTED,WESTRING_UEVENT_SELECTED +UnitEventDeselected=0,unitevent,EVENT_UNIT_DESELECTED,WESTRING_UEVENT_DESELECTED +UnitEventSummon=0,unitevent,EVENT_UNIT_SUMMON,"召唤一个单位" +UnitEventSpellChannel=1,unitevent,EVENT_UNIT_SPELL_CHANNEL,WESTRING_UEVENT_SPELLCHANNEL +UnitEventSpellCast=1,unitevent,EVENT_UNIT_SPELL_CAST,WESTRING_UEVENT_SPELLCAST +UnitEventSpellEndCast=1,unitevent,EVENT_UNIT_SPELL_ENDCAST,WESTRING_UEVENT_SPELLENDCAST +UnitEventSpellEffect=1,unitevent,EVENT_UNIT_SPELL_EFFECT,WESTRING_UEVENT_SPELLEFFECT +UnitEventSpellFinish=1,unitevent,EVENT_UNIT_SPELL_FINISH,WESTRING_UEVENT_SPELLFINISH +UnitEventLoaded=0,unitevent,EVENT_UNIT_LOADED,WESTRING_UEVENT_LOADED +UnitEventAcquiredTarget=0,unitevent,EVENT_UNIT_ACQUIRED_TARGET,WESTRING_UEVENT_ACQUIREDTARGET +UnitEventTargetInRange=0,unitevent,EVENT_UNIT_TARGET_IN_RANGE,WESTRING_UEVENT_TARGETINRANGE +UnitEventTrainStart=0,unitevent,EVENT_UNIT_TRAIN_START,WESTRING_UEVENT_TRAINSTART +UnitEventTrainCancel=0,unitevent,EVENT_UNIT_TRAIN_CANCEL,WESTRING_UEVENT_TRAINCANCEL +UnitEventTrainFinish=0,unitevent,EVENT_UNIT_TRAIN_FINISH,WESTRING_UEVENT_TRAINFINISH +UnitEventReviveStart=0,unitevent,EVENT_UNIT_HERO_REVIVE_START,WESTRING_UEVENT_REVIVESTART +UnitEventReviveCancel=0,unitevent,EVENT_UNIT_HERO_REVIVE_CANCEL,WESTRING_UEVENT_REVIVECANCEL +UnitEventReviveFinish=0,unitevent,EVENT_UNIT_HERO_REVIVE_FINISH,WESTRING_UEVENT_REVIVEFINISH +UnitEventUpgradeStart=0,unitevent,EVENT_UNIT_UPGRADE_START,WESTRING_UEVENT_UPGRADESTART +UnitEventUpgradeCancel=0,unitevent,EVENT_UNIT_UPGRADE_CANCEL,WESTRING_UEVENT_UPGRADECANCEL +UnitEventUpgradeFinish=0,unitevent,EVENT_UNIT_UPGRADE_FINISH,WESTRING_UEVENT_UPGRADEFINISH +UnitEventResearchStart=0,unitevent,EVENT_UNIT_RESEARCH_START,WESTRING_UEVENT_RESEARCHSTART +UnitEventResearchCancel=0,unitevent,EVENT_UNIT_RESEARCH_CANCEL,WESTRING_UEVENT_RESEARCHCANCEL +UnitEventResearchFinish=0,unitevent,EVENT_UNIT_RESEARCH_FINISH,WESTRING_UEVENT_RESEARCHFINISH +UnitEventIssueUnitOrder=0,unitevent,EVENT_UNIT_ISSUED_TARGET_ORDER,WESTRING_UEVENT_ISSUEUNITORDER +UnitEventIssuePointOrder=0,unitevent,EVENT_UNIT_ISSUED_POINT_ORDER,WESTRING_UEVENT_ISSUEPOINTORDER +UnitEventIssueOrder=0,unitevent,EVENT_UNIT_ISSUED_ORDER,WESTRING_UEVENT_ISSUEORDER +UnitStateLife=0,unitstate,UNIT_STATE_LIFE,WESTRING_USTATE_LIFE +UnitStateMaxLife=0,unitstate,UNIT_STATE_MAX_LIFE,WESTRING_USTATE_MAXLIFE +UnitStateMana=0,unitstate,UNIT_STATE_MANA,WESTRING_USTATE_MANA +UnitStateMaxMana=0,unitstate,UNIT_STATE_MAX_MANA,WESTRING_USTATE_MAXMANA +UnitStateLifeSec=0,unitstatesec,UNIT_STATE_LIFE,WESTRING_USTATE_LIFE +UnitStateManaSec=0,unitstatesec,UNIT_STATE_MANA,WESTRING_USTATE_MANA +KeyEventTypeDepress=1,keyeventtype,bj_KEYEVENTTYPE_DEPRESS,WESTRING_KEYEVENTTYPE_DEPRESS +KeyEventTypeRelease=1,keyeventtype,bj_KEYEVENTTYPE_RELEASE,WESTRING_KEYEVENTTYPE_RELEASE +KeyEventKeyLeft=1,keyeventkey,bj_KEYEVENTKEY_LEFT,WESTRING_KEYEVENTKEY_LEFT +KeyEventKeyRight=1,keyeventkey,bj_KEYEVENTKEY_RIGHT,WESTRING_KEYEVENTKEY_RIGHT +KeyEventKeyDown=1,keyeventkey,bj_KEYEVENTKEY_DOWN,WESTRING_KEYEVENTKEY_DOWN +KeyEventKeyUp=1,keyeventkey,bj_KEYEVENTKEY_UP,WESTRING_KEYEVENTKEY_UP +UnitTypeStructure=0,unittype,UNIT_TYPE_STRUCTURE,WESTRING_UNITTYPE_STRUCTURE +UnitTypeHero=0,unittype,UNIT_TYPE_HERO,WESTRING_UNITTYPE_HERO +UnitTypeDead=0,unittype,UNIT_TYPE_DEAD,死亡的 +UnitTypeGround=0,unittype,UNIT_TYPE_GROUND,WESTRING_UNITTYPE_GROUND +UnitTypeFlying=0,unittype,UNIT_TYPE_FLYING,WESTRING_UNITTYPE_FLYING +UnitTypeAttacksGround=0,unittype,UNIT_TYPE_ATTACKS_GROUND,WESTRING_UNITTYPE_ATTACKSGROUND +UnitTypeAttacksFlying=0,unittype,UNIT_TYPE_ATTACKS_FLYING,WESTRING_UNITTYPE_ATTACKSFLYING +UnitTypeMeleeAttacker=0,unittype,UNIT_TYPE_MELEE_ATTACKER,WESTRING_UNITTYPE_MELEEATTACKER +UnitTypeRangedAttacker=0,unittype,UNIT_TYPE_RANGED_ATTACKER,WESTRING_UNITTYPE_RANGEDATTACKER +UnitTypeSummoned=0,unittype,UNIT_TYPE_SUMMONED,WESTRING_UNITTYPE_SUMMONED +UnitTypePlagued=0,unittype,UNIT_TYPE_PLAGUED,WESTRING_UNITTYPE_PLAGUED +UnitTypeSnared=0,unittype,UNIT_TYPE_SNARED,WESTRING_UNITTYPE_SNARED +UnitTypeStunned=0,unittype,UNIT_TYPE_STUNNED,WESTRING_UNITTYPE_STUNNED +UnitTypeGiant=0,unittype,UNIT_TYPE_GIANT,泰坦族 +UnitTypeTauren=0,unittype,UNIT_TYPE_TAUREN,牛头人 +UnitTypeUndead=0,unittype,UNIT_TYPE_UNDEAD,WESTRING_UNITTYPE_UNDEAD +UnitTypeMechanical=0,unittype,UNIT_TYPE_MECHANICAL,WESTRING_UNITTYPE_MECHANICAL +UnitTypeAncient=0,unittype,UNIT_TYPE_ANCIENT,WESTRING_UNITTYPE_ANCIENT +UnitTypePeon=0,unittype,UNIT_TYPE_PEON,WESTRING_UNITTYPE_PEON +UnitTypeTownHall=0,unittype,UNIT_TYPE_TOWNHALL,WESTRING_UNITTYPE_TOWNHALL +UnitTypeSapper=0,unittype,UNIT_TYPE_SAPPER,WESTRING_UNITTYPE_SAPPER +UnitTypePoisoned=0,unittype,UNIT_TYPE_POISONED,WESTRING_UNITTYPE_POISONED +UnitTypePolymorphed=0,unittype,UNIT_TYPE_POLYMORPHED,WESTRING_UNITTYPE_POLYMORPHED +UnitTypeSleeping=0,unittype,UNIT_TYPE_SLEEPING,WESTRING_UNITTYPE_SLEEPING +UnitTypeResistant=1,unittype,UNIT_TYPE_RESISTANT,WESTRING_UNITTYPE_RESISTANT +UnitTypeEthereal=1,unittype,UNIT_TYPE_ETHEREAL,WESTRING_UNITTYPE_ETHEREAL +UnitTypeMagicImmune=0,unittype,UNIT_TYPE_MAGIC_IMMUNE,WESTRING_UNITTYPE_MAGICIMMUNE +UnitTypeSummonedAdd=0,unittypeaddable,UNIT_TYPE_SUMMONED,WESTRING_UNITTYPE_SUMMONED +UnitTypeUndeadAdd=0,unittypeaddable,UNIT_TYPE_UNDEAD,WESTRING_UNITTYPE_UNDEAD +UnitTypeMechanicalAdd=0,unittypeaddable,UNIT_TYPE_MECHANICAL,WESTRING_UNITTYPE_MECHANICAL +UnitTypeAncientAdd=0,unittypeaddable,UNIT_TYPE_ANCIENT,WESTRING_UNITTYPE_ANCIENT +UnitTypePeonAdd=0,unittypeaddable,UNIT_TYPE_PEON,WESTRING_UNITTYPE_PEON +UnitTypeTownHallAdd=0,unittypeaddable,UNIT_TYPE_TOWNHALL,WESTRING_UNITTYPE_TOWNHALL +UnitTypeSapperAdd=0,unittypeaddable,UNIT_TYPE_SAPPER,WESTRING_UNITTYPE_SAPPER +UnitTypeGiantAdd=0,unittypeaddable,UNIT_TYPE_GIANT,泰坦族 +UnitTypeTaurenAdd=0,unittypeaddable,UNIT_TYPE_TAUREN,牛头人 +GameSpeedSlowest=0,gamespeed,MAP_SPEED_SLOWEST,WESTRING_GAMESPEED_SLOWEST +GameSpeedSlow=0,gamespeed,MAP_SPEED_SLOW,WESTRING_GAMESPEED_SLOW +GameSpeedNormal=0,gamespeed,MAP_SPEED_NORMAL,WESTRING_GAMESPEED_NORMAL +GameSpeedFast=0,gamespeed,MAP_SPEED_FAST,WESTRING_GAMESPEED_FAST +GameSpeedFastest=0,gamespeed,MAP_SPEED_FASTEST,WESTRING_GAMESPEED_FASTEST +GameDifficultyEasy=0,gamedifficulty,MAP_DIFFICULTY_EASY,WESTRING_GAMEDIFFICULTY_EASY +GameDifficultyNormal=0,gamedifficulty,MAP_DIFFICULTY_NORMAL,WESTRING_GAMEDIFFICULTY_NORMAL +GameDifficultyHard=0,gamedifficulty,MAP_DIFFICULTY_HARD,WESTRING_GAMEDIFFICULTY_HARD +AIDifficultyNewbie=0,aidifficulty,AI_DIFFICULTY_NEWBIE,WESTRING_AIDIFFICULTY_NEWBIE +AIDifficultyNormal=0,aidifficulty,AI_DIFFICULTY_NORMAL,WESTRING_AIDIFFICULTY_NORMAL +AIDifficultyInsane=0,aidifficulty,AI_DIFFICULTY_INSANE,WESTRING_AIDIFFICULTY_INSANE +MapDensityNone=0,mapdensity,MAP_DENSITY_NONE,WESTRING_MAPDENSITY_NONE +MapDensityLight=0,mapdensity,MAP_DENSITY_LIGHT,WESTRING_MAPDENSITY_LIGHT +MapDensityMedium=0,mapdensity,MAP_DENSITY_MEDIUM,WESTRING_MAPDENSITY_MEDIUM +MapDensityHeavy=0,mapdensity,MAP_DENSITY_HEAVY,WESTRING_MAPDENSITY_HEAVY +AllianceSettingUnallied=0,alliancesetting,bj_ALLIANCE_UNALLIED,WESTRING_ALLIANCE_UNALLIED +AllianceSettingUnalliedVision=0,alliancesetting,bj_ALLIANCE_UNALLIED_VISION,WESTRING_ALLIANCE_UNALLIEDVISION +AllianceSettingNeutral=0,alliancesetting,bj_ALLIANCE_NEUTRAL,WESTRING_ALLIANCE_NEUTRAL +AllianceSettingNeutralVision=1,alliancesetting,bj_ALLIANCE_NEUTRAL_VISION,WESTRING_ALLIANCE_NEUTRAL_VISION +AllianceSettingAllied=0,alliancesetting,bj_ALLIANCE_ALLIED,WESTRING_ALLIANCE_ALLIED +AllianceSettingAlliedVision=0,alliancesetting,bj_ALLIANCE_ALLIED_VISION,WESTRING_ALLIANCE_ALLIEDVISION +AllianceSettingAlliedUnits=0,alliancesetting,bj_ALLIANCE_ALLIED_UNITS,WESTRING_ALLIANCE_ALLIEDUNITS +AllianceSettingAlliedAdvUnits=0,alliancesetting,bj_ALLIANCE_ALLIED_ADVUNITS,WESTRING_ALLIANCE_ALLIEDADVUNITS +AllianceTypePassive=0,alliancetype,ALLIANCE_PASSIVE,WESTRING_ALLIANCE_PASSIVE +AllianceTypeSharedVision=0,alliancetype,ALLIANCE_SHARED_VISION,WESTRING_ALLIANCE_SHAREDVISION +AllianceTypeSharedControl=0,alliancetype,ALLIANCE_SHARED_CONTROL,WESTRING_ALLIANCE_SHAREDCONTROL +AllianceTypeSharedFullControl=0,alliancetype,ALLIANCE_SHARED_ADVANCED_CONTROL,WESTRING_ALLIANCE_SHAREDFULLCONTROL +AllianceTypeXP=0,alliancetype,ALLIANCE_SHARED_XP,WESTRING_ALLIANCE_XP +AllianceTypeSpells=0,alliancetype,ALLIANCE_SHARED_SPELLS,WESTRING_ALLIANCE_SPELLS +AllianceTypeHelpRequest=0,alliancetype,ALLIANCE_HELP_REQUEST,WESTRING_ALLIANCE_HELPREQUEST +AllianceTypeHelpResponse=0,alliancetype,ALLIANCE_HELP_RESPONSE,WESTRING_ALLIANCE_HELPRESPONSE +AttackTypeNormal=1,attacktype,ATTACK_TYPE_NORMAL,WESTRING_UE_ATTACKTYPE_SPELLS +AttackTypeMelee=1,attacktype,ATTACK_TYPE_MELEE,WESTRING_UE_ATTACKTYPE_NORMAL +AttackTypePierce=1,attacktype,ATTACK_TYPE_PIERCE,WESTRING_UE_ATTACKTYPE_PIERCE +AttackTypeSiege=1,attacktype,ATTACK_TYPE_SIEGE,WESTRING_UE_ATTACKTYPE_SIEGE +AttackTypeMagic=1,attacktype,ATTACK_TYPE_MAGIC,WESTRING_UE_ATTACKTYPE_MAGIC +AttackTypeChaos=1,attacktype,ATTACK_TYPE_CHAOS,WESTRING_UE_ATTACKTYPE_CHAOS +AttackTypeHero=1,attacktype,ATTACK_TYPE_HERO,WESTRING_UE_ATTACKTYPE_HERO +DamageTypeUnknown=1,damagetype,DAMAGE_TYPE_UNKNOWN,WESTRING_DAMAGE_TYPE_UNKNOWN +DamageTypeNormal=1,damagetype,DAMAGE_TYPE_NORMAL,WESTRING_DAMAGE_TYPE_NORMAL +DamageTypeEnhanced=1,damagetype,DAMAGE_TYPE_ENHANCED,WESTRING_DAMAGE_TYPE_ENHANCED +DamageTypeFire=1,damagetype,DAMAGE_TYPE_FIRE,WESTRING_DAMAGE_TYPE_FIRE +DamageTypeCold=1,damagetype,DAMAGE_TYPE_COLD,WESTRING_DAMAGE_TYPE_COLD +DamageTypeLightning=1,damagetype,DAMAGE_TYPE_LIGHTNING,WESTRING_DAMAGE_TYPE_LIGHTNING +DamageTypePoison=1,damagetype,DAMAGE_TYPE_POISON,WESTRING_DAMAGE_TYPE_POISON +DamageTypeDisease=1,damagetype,DAMAGE_TYPE_DISEASE,WESTRING_DAMAGE_TYPE_DISEASE +DamageTypeDivine=1,damagetype,DAMAGE_TYPE_DIVINE,WESTRING_DAMAGE_TYPE_DIVINE +DamageTypeMagic=1,damagetype,DAMAGE_TYPE_MAGIC,WESTRING_DAMAGE_TYPE_MAGIC +DamageTypeSonic=1,damagetype,DAMAGE_TYPE_SONIC,WESTRING_DAMAGE_TYPE_SONIC +DamageTypeAcid=1,damagetype,DAMAGE_TYPE_ACID,WESTRING_DAMAGE_TYPE_ACID +DamageTypeForce=1,damagetype,DAMAGE_TYPE_FORCE,WESTRING_DAMAGE_TYPE_FORCE +DamageTypeDeath=1,damagetype,DAMAGE_TYPE_DEATH,WESTRING_DAMAGE_TYPE_DEATH +DamageTypeMind=1,damagetype,DAMAGE_TYPE_MIND,WESTRING_DAMAGE_TYPE_MIND +DamageTypePlant=1,damagetype,DAMAGE_TYPE_PLANT,WESTRING_DAMAGE_TYPE_PLANT +DamageTypeDefensive=1,damagetype,DAMAGE_TYPE_DEFENSIVE,WESTRING_DAMAGE_TYPE_DEFENSIVE +DamageTypeDemolition=1,damagetype,DAMAGE_TYPE_DEMOLITION,WESTRING_DAMAGE_TYPE_DEMOLITION +DamageTypeSlowPoison=1,damagetype,DAMAGE_TYPE_SLOW_POISON,WESTRING_DAMAGE_TYPE_SLOW_POISON +DamageTypeSpiritLink=1,damagetype,DAMAGE_TYPE_SPIRIT_LINK,WESTRING_DAMAGE_TYPE_SPIRIT_LINK +DamageTypeShadowStrike=1,damagetype,DAMAGE_TYPE_SHADOW_STRIKE,WESTRING_DAMAGE_TYPE_SHADOW_STRIKE +DamageTypeUniversal=1,damagetype,DAMAGE_TYPE_UNIVERSAL,WESTRING_DAMAGE_TYPE_UNIVERSAL +WEAPON_TYPE_WHOKNOWS=1,weapontype,WEAPON_TYPE_WHOKNOWS,无 +WeaponTypeMetalLightChop=1,weapontype,WEAPON_TYPE_METAL_LIGHT_CHOP,WESTRING_UE_COMBATSOUND_METALLIGHTCHOP +WeaponTypeMetalMediumChop=1,weapontype,WEAPON_TYPE_METAL_MEDIUM_CHOP,WESTRING_UE_COMBATSOUND_METALMEDIUMCHOP +WeaponTypeMetalHeavyChop=1,weapontype,WEAPON_TYPE_METAL_HEAVY_CHOP,WESTRING_UE_COMBATSOUND_METALHEAVYCHOP +WeaponTypeMetalLightSlice=1,weapontype,WEAPON_TYPE_METAL_LIGHT_SLICE,WESTRING_UE_COMBATSOUND_METALLIGHTSLICE +WeaponTypeMetalMediumSlice=1,weapontype,WEAPON_TYPE_METAL_MEDIUM_SLICE,WESTRING_UE_COMBATSOUND_METALMEDIUMSLICE +WeaponTypeMetalHeavySlice=1,weapontype,WEAPON_TYPE_METAL_HEAVY_SLICE,WESTRING_UE_COMBATSOUND_METALHEAVYSLICE +WeaponTypeMetalMediumBash=1,weapontype,WEAPON_TYPE_METAL_MEDIUM_BASH,WESTRING_UE_COMBATSOUND_METALMEDIUMBASH +WeaponTypeMetalHeavyBash=1,weapontype,WEAPON_TYPE_METAL_HEAVY_BASH,WESTRING_UE_COMBATSOUND_METALHEAVYBASH +WeaponTypeWoodLightBash=1,weapontype,WEAPON_TYPE_WOOD_LIGHT_BASH,WESTRING_UE_COMBATSOUND_WOODLIGHTBASH +WeaponTypeWoodMediumBash=1,weapontype,WEAPON_TYPE_WOOD_MEDIUM_BASH,WESTRING_UE_COMBATSOUND_WOODMEDIUMBASH +WeaponTypeWoodHeavyBash=1,weapontype,WEAPON_TYPE_WOOD_HEAVY_BASH,WESTRING_UE_COMBATSOUND_WOODHEAVYBASH +WeaponTypeAxeMediumChop=1,weapontype,WEAPON_TYPE_AXE_MEDIUM_CHOP,WESTRING_UE_COMBATSOUND_AXEMEDIUMCHOP +WeaponTypeRockHeavyBash=1,weapontype,WEAPON_TYPE_ROCK_HEAVY_BASH,WESTRING_UE_COMBATSOUND_ROCKHEAVYBASH +PathingTypeAny=1,pathingtype,PATHING_TYPE_ANY,WESTRING_PATHINGTYPE_ANY +PathingTypeWalkability=1,pathingtype,PATHING_TYPE_WALKABILITY,WESTRING_PATHINGTYPE_WALKABILITY +PathingTypeFlyability=1,pathingtype,PATHING_TYPE_FLYABILITY,WESTRING_PATHINGTYPE_FLYABILITY +PathingTypeBuildability=1,pathingtype,PATHING_TYPE_BUILDABILITY,WESTRING_PATHINGTYPE_BUILDABILITY +PathingTypePeonHarvestPathing=1,pathingtype,PATHING_TYPE_PEONHARVESTPATHING,WESTRING_PATHINGTYPE_PEONHARVESTPATHING +PathingTypeBlightPathing=1,pathingtype,PATHING_TYPE_BLIGHTPATHING,WESTRING_PATHINGTYPE_BLIGHTPATHING +PathingTypeFloatability=1,pathingtype,PATHING_TYPE_FLOATABILITY,WESTRING_PATHINGTYPE_FLOATABILITY +PathingTypeAmphibiousPathing=1,pathingtype,PATHING_TYPE_AMPHIBIOUSPATHING,WESTRING_PATHINGTYPE_AMPHIBIOUSPATHING +CameraFieldTargetDistance=0,camerafield,CAMERA_FIELD_TARGET_DISTANCE,WESTRING_CAMERA_TARGETDISTANCE +CameraFieldFarZ=0,camerafield,CAMERA_FIELD_FARZ,WESTRING_CAMERA_FARZ +CameraFieldAOA=0,camerafield,CAMERA_FIELD_ANGLE_OF_ATTACK,WESTRING_CAMERA_AOA +CameraFieldFOV=0,camerafield,CAMERA_FIELD_FIELD_OF_VIEW,WESTRING_CAMERA_FOV +CameraFieldRoll=0,camerafield,CAMERA_FIELD_ROLL,WESTRING_CAMERA_ROLL +CameraFieldRotation=0,camerafield,CAMERA_FIELD_ROTATION,WESTRING_CAMERA_ROTATION +CameraFieldZOffset=1,camerafield,CAMERA_FIELD_ZOFFSET,WESTRING_CAMERA_ZOFFSET +RarityControlFrequent=0,raritycontrol,RARITY_FREQUENT,WESTRING_RARITY_FREQUENT +RarityControlRare=0,raritycontrol,RARITY_RARE,WESTRING_RARITY_RARE +BlendModeNone=0,blendmode,BLEND_MODE_NONE,WESTRING_BLENDMODE_NONE +BlendModeBlend=0,blendmode,BLEND_MODE_BLEND,WESTRING_BLENDMODE_BLEND +BlendModeAdditive=0,blendmode,BLEND_MODE_ADDITIVE,WESTRING_BLENDMODE_ADDITIVE +BlendModeModulate=0,blendmode,BLEND_MODE_MODULATE,WESTRING_BLENDMODE_MODULATE +BlendModeModulate2x=0,blendmode,BLEND_MODE_MODULATE_2X,WESTRING_BLENDMODE_MODULATE_2X +BlendModeKeyAlpha=0,blendmode,BLEND_MODE_KEYALPHA,WESTRING_BLENDMODE_KEYALPHA +VolumeGroupAmbient=0,volumegroup,SOUND_VOLUMEGROUP_AMBIENTSOUNDS,WESTRING_VOLUMEGROUP_AMBIENTSOUNDS +VolumeGroupSpells=0,volumegroup,SOUND_VOLUMEGROUP_SPELLS,WESTRING_VOLUMEGROUP_SPELLS +VolumeGroupCombat=0,volumegroup,SOUND_VOLUMEGROUP_COMBAT,WESTRING_VOLUMEGROUP_COMBAT +VolumeGroupFire=0,volumegroup,SOUND_VOLUMEGROUP_FIRE,WESTRING_VOLUMEGROUP_FIRE +VolumeGroupMusic=0,volumegroup,SOUND_VOLUMEGROUP_MUSIC,WESTRING_VOLUMEGROUP_MUSIC +VolumeGroupUnitMovement=0,volumegroup,SOUND_VOLUMEGROUP_UNITMOVEMENT,WESTRING_VOLUMEGROUP_UNITMOVEMENT +VolumeGroupUnitSounds=0,volumegroup,SOUND_VOLUMEGROUP_UNITSOUNDS,WESTRING_VOLUMEGROUP_UNITSOUNDS +VolumeGroupUI=0,volumegroup,SOUND_VOLUMEGROUP_UI,WESTRING_VOLUMEGROUP_UI +EffectTypeEffect=1,effecttype,EFFECT_TYPE_EFFECT,WESTRING_EFFECT_TYPE_EFFECT +EffectTypeTarget=1,effecttype,EFFECT_TYPE_TARGET,WESTRING_EFFECT_TYPE_TARGET +EffectTypeCaster=1,effecttype,EFFECT_TYPE_CASTER,WESTRING_EFFECT_TYPE_CASTER +EffectTypeSpecial=1,effecttype,EFFECT_TYPE_SPECIAL,WESTRING_EFFECT_TYPE_SPECIAL +EffectTypeAreaEffect=1,effecttype,EFFECT_TYPE_AREA_EFFECT,WESTRING_EFFECT_TYPE_AREA_EFFECT +EffectTypeMissile=1,effecttype,EFFECT_TYPE_MISSILE,WESTRING_EFFECT_TYPE_MISSILE +EffectTypeLightning=1,effecttype,EFFECT_TYPE_LIGHTNING,WESTRING_EFFECT_TYPE_LIGHTNING +SoundTypeEffect=1,soundtype,SOUND_TYPE_EFFECT,WESTRING_SOUND_TYPE_EFFECT +SoundTypeEffectLooped=1,soundtype,SOUND_TYPE_EFFECT_LOOPED,WESTRING_SOUND_TYPE_EFFECT_LOOPED +FogStateMasked=0,fogstate,FOG_OF_WAR_MASKED,WESTRING_FOGSTATE_MASKED +FogStateFogged=0,fogstate,FOG_OF_WAR_FOGGED,WESTRING_FOGSTATE_FOGGED +FogStateVisible=0,fogstate,FOG_OF_WAR_VISIBLE,WESTRING_FOGSTATE_VISIBLE +FogStyleLinear=0,fogstyle,0,WESTRING_FOGSTYLE_LINEAR +FogStyleExp1=0,fogstyle,1,WESTRING_FOGSTYLE_EXP1 +FogStyleExp2=0,fogstyle,2,WESTRING_FOGSTYLE_EXP2 +TimedLifeBuffCodeAnimateDead=1,timedlifebuffcode,'BUan',WESTRING_TIMEDLIFEBUFFCODE_ANIMATEDEAD +TimedLifeBuffCodePlagueWard=1,timedlifebuffcode,'Bapl',WESTRING_TIMEDLIFEBUFFCODE_PLAGUEWARD +TimedLifeBuffCodeForceOfNature=1,timedlifebuffcode,'BEfn',WESTRING_TIMEDLIFEBUFFCODE_FORCEOFNATURE +TimedLifeBuffCodeGeneric=1,timedlifebuffcode,'BTLF',WESTRING_TIMEDLIFEBUFFCODE_GENERIC +TimedLifeBuffCodeHealingWard=1,timedlifebuffcode,'Bhwd',WESTRING_TIMEDLIFEBUFFCODE_HEALINGWARD +TimedLifeBuffCodeRaiseDead=1,timedlifebuffcode,'Brai',WESTRING_TIMEDLIFEBUFFCODE_RAISEDEAD +TimedLifeBuffCodeWaterElemental=1,timedlifebuffcode,'BHwe',WESTRING_TIMEDLIFEBUFFCODE_WATERELEMENTAL +ItemStatusHidden=1,itemstatus,bj_ITEM_STATUS_HIDDEN,WESTRING_ITEMSTATUS_HIDDEN +ItemStatusOwned=1,itemstatus,bj_ITEM_STATUS_OWNED,WESTRING_ITEMSTATUS_OWNED +ItemStatusInvulnerable=1,itemstatus,bj_ITEM_STATUS_INVULNERABLE,WESTRING_ITEMSTATUS_INVULNERABLE +ItemStatusPowerup=1,itemstatus,bj_ITEM_STATUS_POWERUP,WESTRING_ITEMSTATUS_POWERUP +ItemStatusSellable=1,itemstatus,bj_ITEM_STATUS_SELLABLE,WESTRING_ITEMSTATUS_SELLABLE +ItemStatusPawnable=1,itemstatus,bj_ITEM_STATUS_PAWNABLE,WESTRING_ITEMSTATUS_PAWNABLE +ItemcodeStatusPowerup=1,itemcodestatus,bj_ITEMCODE_STATUS_POWERUP,WESTRING_ITEMCODESTATUS_POWERUP +ItemcodeStatusSellable=1,itemcodestatus,bj_ITEMCODE_STATUS_SELLABLE,WESTRING_ITEMCODESTATUS_SELLABLE +ItemcodeStatusPawnable=1,itemcodestatus,bj_ITEMCODE_STATUS_PAWNABLE,WESTRING_ITEMCODESTATUS_PAWNABLE +MinimapPingStyleSimple=1,minimappingstyle,bj_MINIMAPPINGSTYLE_SIMPLE,WESTRING_MINIMAPPINGSTYLE_SIMPLE +MinimapPingStyleFlashy=1,minimappingstyle,bj_MINIMAPPINGSTYLE_FLASHY,WESTRING_MINIMAPPINGSTYLE_FLASHY +MinimapPingStyleAttack=1,minimappingstyle,bj_MINIMAPPINGSTYLE_ATTACK,WESTRING_MINIMAPPINGSTYLE_ATTACK +CorpseTypeFlesh=1,corpsetype,bj_CORPSETYPE_FLESH,WESTRING_CORPSETYPE_FLESH +CorpseTypeBone=1,corpsetype,bj_CORPSETYPE_BONE,WESTRING_CORPSETYPE_BONE +StringCaseLower=1,stringcaseoption,false,WESTRING_STRINGCASE_LOWER +StringCaseUpper=1,stringcaseoption,true,WESTRING_STRINGCASE_UPPER +ChangeColorTrue=0,colorchangeoption,true,WESTRING_CHANGECOLOR_CHANGE +ChangeColorFalse=0,colorchangeoption,false,WESTRING_CHANGECOLOR_RETAIN +PlayerChangeColorChange=0,playerchangecoloroption,true,WESTRING_SETPLAYERCOLOR_CHANGE +PlayerChangeColorRetain=0,playerchangecoloroption,false,WESTRING_SETPLAYERCOLOR_RETAIN +ChatMatchTypeExact=0,chatmatchtype,true,WESTRING_CHATMATCH_EXACT +ChatMatchTypeSubstring=0,chatmatchtype,false,WESTRING_CHATMATCH_SUBSTRING +UnitFacingBoneHead=0,unitfacingbone,`bone_head`,WESTRING_UNITFACINGBONE_HEAD +UnitFacingBoneChest=0,unitfacingbone,`bone_chest`,WESTRING_UNITFACINGBONE_CHEST +InclusionInclude=0,includeoption,true,WESTRING_INCLUSION_INCLUDE +InclusionExclude=0,includeoption,false,WESTRING_INCLUSION_EXCLUDE +InclusionIncludeNot=0,includeoptionnot,false,WESTRING_INCLUSION_INCLUDE +InclusionExcludeNot=0,includeoptionnot,true,WESTRING_INCLUSION_EXCLUDE +CameraApply=0,cameraapplyoption,true,WESTRING_CAMERAAPPLYOPTION_APPLY +CameraApplyNoPan=0,cameraapplyoption,false,WESTRING_CAMERAAPPLYOPTION_APPLYNOPAN +CameraOrientationNormal=0,cameraorientationoption,false,WESTRING_CAMERAORIENTATION_NORMAL +CameraOrientationInherit=0,cameraorientationoption,true,WESTRING_CAMERAORIENTATION_INHERIT +InvulnerabilityInvulnerable=0,invulnerableoption,true,WESTRING_INVULNERABILITY_INVULNERABLE +InvulnerabilityVulnerable=0,invulnerableoption,false,WESTRING_INVULNERABILITY_VULNERABLE +AvailabilityOptionAvailable=0,availabilityoption,true,WESTRING_AVAILABILITY_AVAILABLE +AvailabilityOptionUnavailable=0,availabilityoption,false,WESTRING_AVAILABILITY_UNAVAILABLE +ShowHideHide=0,showhideoption,false,WESTRING_SHOWHIDE_HIDE +ShowHideShow=0,showhideoption,true,WESTRING_SHOWHIDE_SHOW +Minimize=1,minimizeoption,true,WESTRING_MINIMIZEOPTION_MINIMIZE +Maximize=1,minimizeoption,false,WESTRING_MINIMIZEOPTION_MAXIMIZE +SkyModelNone=0,skymodelstring,null,WESTRING_SKYMODEL_NONE +SkyModelSky08=0,skymodelstring,`Environment\\Sky\\BlizzardSky\\BlizzardSky.mdl`,WESTRING_SKYMODEL_SKY08 +SkyModelSky02=0,skymodelstring,`Environment\\Sky\\DalaranSky\\DalaranSky.mdl`,WESTRING_SKYMODEL_SKY02 +SkyModelSky06=0,skymodelstring,`Environment\\Sky\\FelwoodSky\\FelwoodSky.mdl`,WESTRING_SKYMODEL_SKY06 +SkyModelSky07=0,skymodelstring,`Environment\\Sky\\FoggedSky\\FoggedSky.mdl`,WESTRING_SKYMODEL_SKY07 +SkyModelSky01=0,skymodelstring,`Environment\\Sky\\Sky\\SkyLight.mdl`,WESTRING_SKYMODEL_SKY01 +SkyModelSky03=0,skymodelstring,`Environment\\Sky\\LordaeronFallSky\\LordaeronFallSky.mdl`,WESTRING_SKYMODEL_SKY03 +SkyModelSky04=0,skymodelstring,`Environment\\Sky\\LordaeronSummerSky\\LordaeronSummerSky.mdl`,WESTRING_SKYMODEL_SKY04 +SkyModelSky05=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSky\\LordaeronWinterSky.mdl`,WESTRING_SKYMODEL_SKY05 +SkyModelSky09=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSkyBrightGreen\\LordaeronWinterSkyBrightGreen.mdl`,WESTRING_SKYMODEL_SKY09 +SkyModelSky10=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSkyPink\\LordaeronWinterSkyPink.mdl`,WESTRING_SKYMODEL_SKY10 +SkyModelSky11=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSkyPurple\\LordaeronWinterSkyPurple.mdl`,WESTRING_SKYMODEL_SKY11 +SkyModelSky12=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSkyRed\\LordaeronWinterSkyRed.mdl`,WESTRING_SKYMODEL_SKY12 +SkyModelSky13=0,skymodelstring,`Environment\\Sky\\LordaeronWinterSkyYellow\\LordaeronWinterSkyYellow.mdl`,WESTRING_SKYMODEL_SKY13 +SkyModelSky14=1,skymodelstring,`Environment\\Sky\\Outland_Sky\\Outland_Sky.mdl`,WESTRING_SKYMODEL_SKY14 +CineFilterTextureWhite=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\White_mask.blp`,WESTRING_CINEFILTERTEX_WHITE +CineFilterTextureBlack=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\Black_mask.blp`,WESTRING_CINEFILTERTEX_BLACK +CineFilterTextureHaze=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\HazeFilter_mask.blp`,WESTRING_CINEFILTERTEX_HAZE +CineFilterTextureGroundFog=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\GroundFog_mask.blp`,WESTRING_CINEFILTERTEX_GROUNDFOG +CineFilterTextureHazeAndFog=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\HazeAndFogFilter_Mask.blp`,WESTRING_CINEFILTERTEX_HAZEANDFOG +CineFilterTextureDiagonal=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\DiagonalSlash_mask.blp`,WESTRING_CINEFILTERTEX_DIAGONAL +CineFilterTextureDream=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\DreamFilter_Mask.blp`,WESTRING_CINEFILTERTEX_DREAM +CineFilterTextureScope=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\Scope_Mask.blp`,WESTRING_CINEFILTERTEX_SCOPE +CineFilterTexturePow=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\SpecialPowMask.blp`,WESTRING_CINEFILTERTEX_POW +CineFilterTextureSplat=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\SpecialSplatMask.blp`,WESTRING_CINEFILTERTEX_SPLAT +CineFilterTexturePanda=0,cinefiltertexture,`ReplaceableTextures\\CameraMasks\\Panda-n-Cub.blp`,WESTRING_CINEFILTERTEX_PANDA +MusicThemeArthas=1,musictheme,`Sound\\Music\\mp3Music\\ArthasTheme.mp3`,WESTRING_MUSICTHEME_ARTHAS +MusicThemeBloodElf=1,musictheme,`Sound\\Music\\mp3Music\\BloodElfTheme.mp3`,WESTRING_MUSICTHEME_BLOODELF +MusicThemeComradeship=0,musictheme,`Sound\\Music\\mp3Music\\Comradeship.mp3`,WESTRING_MUSICTHEME_COMRADESHIP +MusicThemeCredits=0,musictheme,`Sound\\Music\\mp3Music\\Credits.mp3`,WESTRING_MUSICTHEME_CREDITS +MusicThemeDarkAgents=0,musictheme,`Sound\\Music\\mp3Music\\DarkAgents.mp3`,WESTRING_MUSICTHEME_DARKAGENTS +MusicThemeDarkVictory=0,musictheme,`Sound\\Music\\mp3Music\\DarkVictory.mp3`,WESTRING_MUSICTHEME_DARKVICTORY +MusicThemeDoom=0,musictheme,`Sound\\Music\\mp3Music\\Doom.mp3`,WESTRING_MUSICTHEME_DOOM +MusicThemeHeroicVictory=0,musictheme,`Sound\\Music\\mp3Music\\HeroicVictory.mp3`,WESTRING_MUSICTHEME_HEROIC_VICTORY +MusicThemeHuman1=0,musictheme,`Sound\\Music\\mp3Music\\Human1.mp3`,WESTRING_MUSICTHEME_HUMAN1 +MusicThemeHuman2=0,musictheme,`Sound\\Music\\mp3Music\\Human2.mp3`,WESTRING_MUSICTHEME_HUMAN2 +MusicThemeHuman3=0,musictheme,`Sound\\Music\\mp3Music\\Human3.mp3`,WESTRING_MUSICTHEME_HUMAN3 +MusicThemeHumanX1=1,musictheme,`Sound\\Music\\mp3Music\\HumanX1.mp3`,WESTRING_MUSICTHEME_HUMANX1 +MusicThemeDefeatHuman=0,musictheme,`Sound\\Music\\mp3Music\\HumanDefeat.mp3`,WESTRING_MUSICTHEME_DEFEAT_HUMAN +MusicThemeVictoryHuman=0,musictheme,`Sound\\Music\\mp3Music\\HumanVictory.mp3`,WESTRING_MUSICTHEME_VICTORY_HUMAN +MusicThemeIllidan=1,musictheme,`Sound\\Music\\mp3Music\\IllidansTheme.mp3`,WESTRING_MUSICTHEME_ILLIDAN +MusicThemeLichKing=1,musictheme,`Sound\\Music\\mp3Music\\LichKingTheme.mp3`,WESTRING_MUSICTHEME_LICHKING +MusicThemeMainScreen=0,musictheme,`Sound\\Music\\mp3Music\\MainScreen.mp3`,WESTRING_MUSICTHEME_MAINSCREEN +MusicThemeMainScreenX=1,musictheme,`Sound\\Music\\mp3Music\\War3XMainScreen.mp3`,WESTRING_MUSICTHEME_MAINSCREENX +MusicThemeNaga=1,musictheme,`Sound\\Music\\mp3Music\\NagaTheme.mp3`,WESTRING_MUSICTHEME_NAGA +MusicThemeNightElf1=0,musictheme,`Sound\\Music\\mp3Music\\NightElf1.mp3`,WESTRING_MUSICTHEME_NIGHTELF1 +MusicThemeNightElf2=0,musictheme,`Sound\\Music\\mp3Music\\NightElf2.mp3`,WESTRING_MUSICTHEME_NIGHTELF2 +MusicThemeNightElf3=0,musictheme,`Sound\\Music\\mp3Music\\NightElf3.mp3`,WESTRING_MUSICTHEME_NIGHTELF3 +MusicThemeNightElfX1=1,musictheme,`Sound\\Music\\mp3Music\\NightElfX1.mp3`,WESTRING_MUSICTHEME_NIGHTELFX1 +MusicThemeDefeatNightElf=0,musictheme,`Sound\\Music\\mp3Music\\NightElfDefeat.mp3`,WESTRING_MUSICTHEME_DEFEAT_NIGHTELF +MusicThemeVictoryNightElf=0,musictheme,`Sound\\Music\\mp3Music\\NightElfVictory.mp3`,WESTRING_MUSICTHEME_VICTORY_NIGHTELF +MusicThemeOrc1=0,musictheme,`Sound\\Music\\mp3Music\\Orc1.mp3`,WESTRING_MUSICTHEME_ORC1 +MusicThemeOrc2=0,musictheme,`Sound\\Music\\mp3Music\\Orc2.mp3`,WESTRING_MUSICTHEME_ORC2 +MusicThemeOrc3=0,musictheme,`Sound\\Music\\mp3Music\\Orc3.mp3`,WESTRING_MUSICTHEME_ORC3 +MusicThemeOrcX1=1,musictheme,`Sound\\Music\\mp3Music\\OrcX1.mp3`,WESTRING_MUSICTHEME_ORCX1 +MusicThemeDefeatOrc=0,musictheme,`Sound\\Music\\mp3Music\\OrcDefeat.mp3`,WESTRING_MUSICTHEME_DEFEAT_ORC +MusicThemeOrcTheme=1,musictheme,`Sound\\Music\\mp3Music\\OrcTheme.mp3`,WESTRING_MUSICTHEME_ORC_THEME +MusicThemeVictoryOrc=0,musictheme,`Sound\\Music\\mp3Music\\OrcVictory.mp3`,WESTRING_MUSICTHEME_VICTORY_ORC +MusicThemePersuit=1,musictheme,`Sound\\Music\\mp3Music\\PursuitTheme.mp3`,WESTRING_MUSICTHEME_PURSUIT +MusicThemeSadMystery=0,musictheme,`Sound\\Music\\mp3Music\\SadMystery.mp3`,WESTRING_MUSICTHEME_SADMYSTERY +MusicThemeTension=0,musictheme,`Sound\\Music\\mp3Music\\Tension.mp3`,WESTRING_MUSICTHEME_TENSION +MusicThemeTragicConfrontation=0,musictheme,`Sound\\Music\\mp3Music\\TragicConfrontation.mp3`,WESTRING_MUSICTHEME_TRAGICCONFRONTATION +MusicThemeUndead1=0,musictheme,`Sound\\Music\\mp3Music\\Undead1.mp3`,WESTRING_MUSICTHEME_UNDEAD1 +MusicThemeUndead2=0,musictheme,`Sound\\Music\\mp3Music\\Undead2.mp3`,WESTRING_MUSICTHEME_UNDEAD2 +MusicThemeUndead3=0,musictheme,`Sound\\Music\\mp3Music\\Undead3.mp3`,WESTRING_MUSICTHEME_UNDEAD3 +MusicThemeUndeadX1=1,musictheme,`Sound\\Music\\mp3Music\\UndeadX1.mp3`,WESTRING_MUSICTHEME_UNDEADX1 +MusicThemeDefeatUndead=0,musictheme,`Sound\\Music\\mp3Music\\UndeadDefeat.mp3`,WESTRING_MUSICTHEME_DEFEAT_UNDEAD +MusicThemeVictoryUndead=0,musictheme,`Sound\\Music\\mp3Music\\UndeadVictory.mp3`,WESTRING_MUSICTHEME_VICTORY_UNDEAD +AmbientThemeDayA=0,ambientthemeday,`AshenvaleDay`,WESTRING_AMBIENTTHEMEDAY_A +AmbientThemeDayB=0,ambientthemeday,`BarrensDay`,WESTRING_AMBIENTTHEMEDAY_B +AmbientThemeDayK=1,ambientthemeday,`BlackCitadelDay`,WESTRING_AMBIENTTHEMEDAY_K +AmbientThemeDayY=0,ambientthemeday,`CityScapeDay`,WESTRING_AMBIENTTHEMEDAY_Y +AmbientThemeDayX=0,ambientthemeday,`DalaranDay`,WESTRING_AMBIENTTHEMEDAY_X +AmbientThemeDayJ=1,ambientthemeday,`DalaranRuinsDay`,WESTRING_AMBIENTTHEMEDAY_J +AmbientThemeDayD=0,ambientthemeday,`DungeonDay`,WESTRING_AMBIENTTHEMEDAY_D +AmbientThemeDayC=0,ambientthemeday,`FelwoodDay`,WESTRING_AMBIENTTHEMEDAY_C +AmbientThemeDayI=1,ambientthemeday,`IceCrownDay`,WESTRING_AMBIENTTHEMEDAY_I +AmbientThemeDayF=0,ambientthemeday,`LordaeronFallDay`,WESTRING_AMBIENTTHEMEDAY_F +AmbientThemeDayL=0,ambientthemeday,`LordaeronSummerDay`,WESTRING_AMBIENTTHEMEDAY_L +AmbientThemeDayW=0,ambientthemeday,`LordaeronWinterDay`,WESTRING_AMBIENTTHEMEDAY_W +AmbientThemeDayN=0,ambientthemeday,`NorthrendDay`,WESTRING_AMBIENTTHEMEDAY_N +AmbientThemeDayO=1,ambientthemeday,`BlackCitadelDay`,WESTRING_AMBIENTTHEMEDAY_O +AmbientThemeDayZ=1,ambientthemeday,`SunkenRuinsDay`,WESTRING_AMBIENTTHEMEDAY_Z +AmbientThemeDayV=0,ambientthemeday,`VillageDay`,WESTRING_AMBIENTTHEMEDAY_V +AmbientThemeDayQ=0,ambientthemeday,`VillageFallDay`,WESTRING_AMBIENTTHEMEDAY_Q +AmbientThemeNightA=0,ambientthemenight,`AshenvaleNight`,WESTRING_AMBIENTTHEMENIGHT_A +AmbientThemeNightB=0,ambientthemenight,`BarrensNight`,WESTRING_AMBIENTTHEMENIGHT_B +AmbientThemeNightK=1,ambientthemenight,`BlackCitadelNight`,WESTRING_AMBIENTTHEMENIGHT_K +AmbientThemeNightY=0,ambientthemenight,`CityScapeNight`,WESTRING_AMBIENTTHEMENIGHT_Y +AmbientThemeNightX=0,ambientthemenight,`DalaranNight`,WESTRING_AMBIENTTHEMENIGHT_X +AmbientThemeNightJ=1,ambientthemenight,`DalaranRuinsNight`,WESTRING_AMBIENTTHEMENIGHT_J +AmbientThemeNightD=0,ambientthemenight,`DungeonNight`,WESTRING_AMBIENTTHEMENIGHT_D +AmbientThemeNightC=0,ambientthemenight,`FelwoodNight`,WESTRING_AMBIENTTHEMENIGHT_C +AmbientThemeNightI=1,ambientthemenight,`IceCrownNight`,WESTRING_AMBIENTTHEMENIGHT_I +AmbientThemeNightF=0,ambientthemenight,`LordaeronFallNight`,WESTRING_AMBIENTTHEMENIGHT_F +AmbientThemeNightL=0,ambientthemenight,`LordaeronSummerNight`,WESTRING_AMBIENTTHEMENIGHT_L +AmbientThemeNightW=0,ambientthemenight,`LordaeronWinterNight`,WESTRING_AMBIENTTHEMENIGHT_W +AmbientThemeNightN=0,ambientthemenight,`NorthrendNight`,WESTRING_AMBIENTTHEMENIGHT_N +AmbientThemeNightO=1,ambientthemenight,`BlackCitadelNight`,WESTRING_AMBIENTTHEMENIGHT_O +AmbientThemeNightZ=1,ambientthemenight,`SunkenRuinsNight`,WESTRING_AMBIENTTHEMENIGHT_Z +AmbientThemeNightV=0,ambientthemenight,`VillageNight`,WESTRING_AMBIENTTHEMENIGHT_V +AmbientThemeNightQ=0,ambientthemenight,`VillageFallNight`,WESTRING_AMBIENTTHEMENIGHT_Q +UnitStateMethodAbsolute=0,unitstatemethod,bj_UNIT_STATE_METHOD_ABSOLUTE,WESTRING_UNITSTATEMETHOD_ABSOLUTE +UnitStateMethodRelative=0,unitstatemethod,bj_UNIT_STATE_METHOD_RELATIVE,WESTRING_UNITSTATEMETHOD_RELATIVE +UnitStateMethodDefaults=0,unitstatemethod,bj_UNIT_STATE_METHOD_DEFAULTS,WESTRING_UNITSTATEMETHOD_DEFAULTS +UnitStateMethodMaximum=0,unitstatemethod,bj_UNIT_STATE_METHOD_MAXIMUM,WESTRING_UNITSTATEMETHOD_MAXIMUM +CheckingIgnoringChecking=0,checkingignoringoption,true,WESTRING_CHECKINGIGNORINGOPTION_CHECKING +CheckingIgnoringIgnoring=0,checkingignoringoption,false,WESTRING_CHECKINGIGNORINGOPTION_IGNORING +PathingOn=0,pathingoption,true,WESTRING_PATHING_ON +PathingOff=0,pathingoption,false,WESTRING_PATHING_OFF +PawnableOptionPawnable=1,pawnableoption,true,WESTRING_PAWNABLEOPTION_PAWNABLE +PawnableOptionUnpawnable=1,pawnableoption,false,WESTRING_PAWNABLEOPTION_UNPAWNABLE +DropNoDropOptionDrop=0,dropnodropoption,true,WESTRING_DROPNODROPOPTION_DROP +DropNoDropOptionNoDrop=0,dropnodropoption,false,WESTRING_DROPNODROPOPTION_NODROP +DroppableOptionDrop=0,droppableoption,true,WESTRING_DROPPABLE_DROP +DroppableOptionNoDrop=0,droppableoption,false,WESTRING_DROPPABLE_NODROP +BeforeAfterBefore=0,beforeafteroption,false,WESTRING_BEFOREAFTER_BEFORE +BeforeAfterAfter=0,beforeafteroption,true,WESTRING_BEFOREAFTER_AFTER +OnOffOn=0,onoffoption,true,WESTRING_ONOFF_ON +OnOffOff=0,onoffoption,false,WESTRING_ONOFF_OFF +EnableDisableEnable=0,enabledisableoption,true,WESTRING_ENABLEDISABLE_ENABLE +EnableDisableDisable=0,enabledisableoption,false,WESTRING_ENABLEDISABLE_DISABLE +EnabledDisabledEnabled=0,enableddisabledoption,true,WESTRING_ENABLEDDISABLED_ENABLED +EnabledDisabledDisabled=0,enableddisabledoption,false,WESTRING_ENABLEDDISABLED_DISABLED +RescuableOptionRescuable=0,rescuableoption,true,WESTRING_RESCUABLEOPTION_RESCUABLE +RescuableOptionUnrescuable=0,rescuableoption,false,WESTRING_RESCUABLEOPTION_UNRESCUABLE +AllowDontAllow=0,allowdontoption,true,WESTRING_ALLOWDONTOPTION_ALLOW +AllowDontDont=0,allowdontoption,false,WESTRING_ALLOWDONTOPTION_DONT +FadeDontFade=0,fadedontoption,true,WESTRING_FADEDONTOPTION_FADE +FadeDontDont=0,fadedontoption,false,WESTRING_FADEDONTOPTION_DONT +AddSetToAdd=0,addsettooption,bj_TIMETYPE_ADD,WESTRING_ADDSETTOOPTION_ADD +AddSetToSub=0,addsettooption,bj_TIMETYPE_SUB,WESTRING_ADDSETTOOPTION_SUB +AddSetToSet=0,addsettooption,bj_TIMETYPE_SET,WESTRING_ADDSETTOOPTION_SET +ModifyMethodAdd=1,modifymethod,bj_MODIFYMETHOD_ADD,WESTRING_MODIFYMETHOD_ADD +ModifyMethodSub=1,modifymethod,bj_MODIFYMETHOD_SUB,WESTRING_MODIFYMETHOD_SUB +ModifyMethodSet=1,modifymethod,bj_MODIFYMETHOD_SET,WESTRING_MODIFYMETHOD_SET +WaitDontWait=0,waitdontoption,true,WESTRING_WAITDONTOPTION_WAIT +WaitDontDont=0,waitdontoption,false,WESTRING_WAITDONTOPTION_DONT +CraterTypeTemporary=1,cratertype,false,WESTRING_CRATERTYPE_TEMPORARY +CraterTypePermanent=1,cratertype,true,WESTRING_CRATERTYPE_PERMANENT +RippleTypeNormal=1,rippletype,false,WESTRING_RIPPLETYPE_NORMAL +RippleTypeDepression=1,rippletype,true,WESTRING_RIPPLETYPE_DEPRESSION +CreateRemoveCreate=0,createremoveoption,true,WESTRING_CREATEREMOVEOPTION_CREATE +CreateRemoveRemove=0,createremoveoption,false,WESTRING_CREATEREMOVEOPTION_REMOVE +AddRemoveAdd=0,addremoveoption,true,WESTRING_ADDREMOVEOPTION_ADD +AddRemoveRemove=0,addremoveoption,false,WESTRING_ADDREMOVEOPTION_REMOVE +QuestTypeReqDiscovered=0,questtypeoption,bj_QUESTTYPE_REQ_DISCOVERED,WESTRING_QUESTTYPE_REQ_DISCOVERED +QuestTypeOptDiscovered=0,questtypeoption,bj_QUESTTYPE_OPT_DISCOVERED,WESTRING_QUESTTYPE_OPT_DISCOVERED +QuestTypeReqUndiscovered=0,questtypeoption,bj_QUESTTYPE_REQ_UNDISCOVERED,WESTRING_QUESTTYPE_REQ_UNDISCOVERED +QuestTypeOptUndiscovered=0,questtypeoption,bj_QUESTTYPE_OPT_UNDISCOVERED,WESTRING_QUESTTYPE_OPT_UNDISCOVERED +QuestMessageTypeDiscovered=0,questmessagetype,bj_QUESTMESSAGE_DISCOVERED,WESTRING_QUESTMESSAGE_DISCOVERED +QuestMessageTypeUpdated=0,questmessagetype,bj_QUESTMESSAGE_UPDATED,WESTRING_QUESTMESSAGE_UPDATED +QuestMessageTypeCompleted=0,questmessagetype,bj_QUESTMESSAGE_COMPLETED,WESTRING_QUESTMESSAGE_COMPLETED +QuestMessageTypeFailed=0,questmessagetype,bj_QUESTMESSAGE_FAILED,WESTRING_QUESTMESSAGE_FAILED +QuestMessageTypeRequirement=0,questmessagetype,bj_QUESTMESSAGE_REQUIREMENT,WESTRING_QUESTMESSAGE_REQUIREMENT +QuestMessageTypeMissionFailed=0,questmessagetype,bj_QUESTMESSAGE_MISSIONFAILED,WESTRING_QUESTMESSAGE_MISSIONFAILED +QuestMessageTypeAlwaysHint=0,questmessagetype,bj_QUESTMESSAGE_ALWAYSHINT,WESTRING_QUESTMESSAGE_ALWAYSHINT +QuestMessageTypeHint=0,questmessagetype,bj_QUESTMESSAGE_HINT,WESTRING_QUESTMESSAGE_HINT +QuestMessageTypeSecret=0,questmessagetype,bj_QUESTMESSAGE_SECRET,WESTRING_QUESTMESSAGE_SECRET +QuestMessageTypeWarning=1,questmessagetype,bj_QUESTMESSAGE_WARNING,WESTRING_QUESTMESSAGE_WARNING +QuestMessageTypeUnitAcquired=0,questmessagetype,bj_QUESTMESSAGE_UNITACQUIRED,WESTRING_QUESTMESSAGE_UNITACQUIRED +QuestMessageTypeUnitAvailable=0,questmessagetype,bj_QUESTMESSAGE_UNITAVAILABLE,WESTRING_QUESTMESSAGE_UNITAVAILABLE +QuestMessageTypeItemAcquired=0,questmessagetype,bj_QUESTMESSAGE_ITEMACQUIRED,WESTRING_QUESTMESSAGE_ITEMACQUIRED +HeroStatStr=1,herostat,bj_HEROSTAT_STR,WESTRING_HEROSTAT_STR +HeroStatAgi=1,herostat,bj_HEROSTAT_AGI,WESTRING_HEROSTAT_AGI +HeroStatInt=1,herostat,bj_HEROSTAT_INT,WESTRING_HEROSTAT_INT +CompletionOptionCompleted=0,completionoption,true,WESTRING_COMPLETIONOPTION_COMPLETED +CompletionOptionIncomplete=0,completionoption,false,WESTRING_COMPLETIONOPTION_INCOMPLETE +FailureOptionFailed=0,failureoption,true,WESTRING_FAILUREOPTION_FAILED +FailureOptionNotFailed=0,failureoption,false,WESTRING_FAILUREOPTION_NOTFAILED +DiscoveredOptionDiscovered=0,discoveredoption,true,WESTRING_DISCOVEREDOPTION_DISCOVERED +DiscoveredOptionUndiscovered=0,discoveredoption,false,WESTRING_DISCOVEREDOPTION_UNDISCOVERED +PauseResumePause=0,pauseresumeoption,true,WESTRING_PAUSERESUMEOPTION_PAUSE +PauseResumeResume=0,pauseresumeoption,false,WESTRING_PAUSERESUMEOPTION_RESUME +PeriodicOptionOneTime=0,periodicoption,false,WESTRING_PERIODICOPTION_ONETIME +PeriodicOptionPeriodic=0,periodicoption,true,WESTRING_PERIODICOPTION_PERIODIC +LeaderboardSortByValue=0,leaderboardsortoption,bj_SORTTYPE_SORTBYVALUE,WESTRING_LEADERBOARDSORT_BYVALUE +LeaderboardSortByPlayer=0,leaderboardsortoption,bj_SORTTYPE_SORTBYPLAYER,WESTRING_LEADERBOARDSORT_BYPLAYER +LeaderboardSortByLabel=0,leaderboardsortoption,bj_SORTTYPE_SORTBYLABEL,WESTRING_LEADERBOARDSORT_BYLABEL +AscendingOptionAscending=0,ascendingoption,true,WESTRING_ASCENDINGOPTION_ASCENDING +AscendingOptionDescending=0,ascendingoption,false,WESTRING_ASCENDINGOPTION_DESCENDING +SleepWakeOptionSleep=0,sleepwakeoption,true,WESTRING_SLEEPWAKEOPTION_SLEEP +SleepWakeOptionWake=0,sleepwakeoption,false,WESTRING_SLEEPWAKEOPTION_WAKE +PauseUnpauseOptionPause=0,pauseunpauseoption,true,WESTRING_PAUSEUNPAUSEOPTION_PAUSE +PauseUnpauseOptionUnpause=0,pauseunpauseoption,false,WESTRING_PAUSEUNPAUSEOPTION_UNPAUSE +ShareDontOptionShare=0,sharedontoption,true,WESTRING_SHAREDONTOPTION_SHARE +ShareDontOptionDont=0,sharedontoption,false,WESTRING_SHAREDONTOPTION_DONT +FadeTypeOptionFadeOutIn=0,fadetypeoption,bj_CINEFADETYPE_FADEOUTIN,WESTRING_FADETYPEOPTION_FADEOUTIN +FadeTypeOptionFadeOut=0,fadetypeoption,bj_CINEFADETYPE_FADEOUT,WESTRING_FADETYPEOPTION_FADEOUT +FadeTypeOptionFadeIn=0,fadetypeoption,bj_CINEFADETYPE_FADEIN,WESTRING_FADETYPEOPTION_FADEIN +BuffTypeAll=0,bufftype,bj_REMOVEBUFFS_ALL,WESTRING_BUFFTYPE_ALL +BuffTypeNonTLife=1,bufftype,bj_REMOVEBUFFS_NONTLIFE,WESTRING_BUFFTYPE_NONTLIFE +BuffTypePositive=0,bufftype,bj_REMOVEBUFFS_POSITIVE,WESTRING_BUFFTYPE_POSITIVE +BuffTypeNegative=0,bufftype,bj_REMOVEBUFFS_NEGATIVE,WESTRING_BUFFTYPE_NEGATIVE +BuffPolarityPositive=1,buffpolarity,bj_BUFF_POLARITY_POSITIVE,WESTRING_BUFF_POLARITY_POSITIVE +BuffPolarityNegative=1,buffpolarity,bj_BUFF_POLARITY_NEGATIVE,WESTRING_BUFF_POLARITY_NEGATIVE +BuffPolarityEither=1,buffpolarity,bj_BUFF_POLARITY_EITHER,WESTRING_BUFF_POLARITY_EITHER +BuffResistMagic=1,buffresist,bj_BUFF_RESIST_MAGIC,WESTRING_BUFF_RESIST_MAGIC +BuffResistPhysical=1,buffresist,bj_BUFF_RESIST_PHYSICAL,WESTRING_BUFF_RESIST_PHYSICAL +BuffResistEither=1,buffresist,bj_BUFF_RESIST_EITHER,WESTRING_BUFF_RESIST_EITHER +BuffResistBoth=1,buffresist,bj_BUFF_RESIST_BOTH,WESTRING_BUFF_RESIST_BOTH +CameraBoundsAdjustAdd=0,cameraboundsadjusttype,bj_CAMERABOUNDS_ADJUST_ADD,WESTRING_CAMERABOUNDSADJUST_ADD +CameraBoundsAdjustSub=0,cameraboundsadjusttype,bj_CAMERABOUNDS_ADJUST_SUB,WESTRING_CAMERABOUNDSADJUST_SUB +AvailableOptionAvailable=0,availableoption,true,WESTRING_AVAILABLEOPTION_AVAILABLE +AvailableOptionUnavailable=0,availableoption,false,WESTRING_AVAILABLEOPTION_UNAVAILABLE +ExplodeDontExplode=0,explodedontoption,true,WESTRING_EXPLODEDONTOPTION_EXPLODE +ExplodeDontDont=0,explodedontoption,false,WESTRING_EXPLODEDONTOPTION_DONT +SuspendResumeSuspend=0,suspendresumeoption,true,WESTRING_SUSPENDRESUMEOPTION_SUSPEND +SuspendResumeResume=0,suspendresumeoption,false,WESTRING_SUSPENDRESUMEOPTION_RESUME +SuspendResumeSuspend_R=0,suspendresumeoption_R,true,WESTRING_SUSPENDRESUMEOPTION_SUSPEND +SuspendResumeResume_R=0,suspendresumeoption_R,false,WESTRING_SUSPENDRESUMEOPTION_RESUME +GameEventTourneySoon=1,gameevent,EVENT_GAME_TOURNAMENT_FINISH_SOON,WESTRING_GAMEEVENT_TOURNAMENTFINISHSOON +GameEventTourneyNow=1,gameevent,EVENT_GAME_TOURNAMENT_FINISH_NOW,WESTRING_GAMEEVENT_TOURNAMENTFINISHNOW +NearestOnlyOn=0,nearestonlyoption,true,只选取最近的一个单位 +NearestOnlyOff=0,nearestonlyoption,false,选取范围内所有单位 +IsNotIs=0,isnotoption,true,是 +IsNotNot=0,isnotoption,false,不是 +LockUnLockLock=0,lockunlockoption,true,锁定 +LockUnLockUnLock=0,lockunlockoption,false,解除锁定 +VertOnlyOn=0,vertonlyoption,true,垂直晃动 +VertOnlyOff=0,vertonlyoption,false,水平晃动 +PingStyleNormal=0,pingstyle,true,惊叹号 +PingStyleExtra=0,pingstyle,false,普通 +ShareVisionShare=0,sharevisionoption,true,共享 +ShareVisionNot=0,sharevisionoption,false,不共享 +ConverUnitConver=0,converunitoption,true,覆盖 +ConverUnitNot=0,converunitoption,false,不覆盖 +OnOffIntOn=0,onoffintoption,1,WESTRING_ONOFF_ON +OnOffIntOff=0,onoffintoption,0,WESTRING_ONOFF_OFF +OnOffNotOn=0,onoffnotoption,true,WESTRING_ONOFF_OFF +OnOffNotOff=0,onoffnotoption,false,WESTRING_ONOFF_ON +MissionIndexT00=0,missionindex,bj_MISSION_INDEX_T00,WESTRING_MISSION_INDEX_T00 +MissionIndexT01=0,missionindex,bj_MISSION_INDEX_T01,WESTRING_MISSION_INDEX_T01 +MissionIndexH00=0,missionindex,bj_MISSION_INDEX_H00,WESTRING_MISSION_INDEX_H00 +MissionIndexH01=0,missionindex,bj_MISSION_INDEX_H01,WESTRING_MISSION_INDEX_H01 +MissionIndexH02=0,missionindex,bj_MISSION_INDEX_H02,WESTRING_MISSION_INDEX_H02 +MissionIndexH03=0,missionindex,bj_MISSION_INDEX_H03,WESTRING_MISSION_INDEX_H03 +MissionIndexH04=0,missionindex,bj_MISSION_INDEX_H04,WESTRING_MISSION_INDEX_H04 +MissionIndexH05=0,missionindex,bj_MISSION_INDEX_H05,WESTRING_MISSION_INDEX_H05 +MissionIndexH06=0,missionindex,bj_MISSION_INDEX_H06,WESTRING_MISSION_INDEX_H06 +MissionIndexH07=0,missionindex,bj_MISSION_INDEX_H07,WESTRING_MISSION_INDEX_H07 +MissionIndexH08=0,missionindex,bj_MISSION_INDEX_H08,WESTRING_MISSION_INDEX_H08 +MissionIndexH09=0,missionindex,bj_MISSION_INDEX_H09,WESTRING_MISSION_INDEX_H09 +MissionIndexH10=0,missionindex,bj_MISSION_INDEX_H10,WESTRING_MISSION_INDEX_H10 +MissionIndexH11=0,missionindex,bj_MISSION_INDEX_H11,WESTRING_MISSION_INDEX_H11 +MissionIndexU00=0,missionindex,bj_MISSION_INDEX_U00,WESTRING_MISSION_INDEX_U00 +MissionIndexU01=0,missionindex,bj_MISSION_INDEX_U01,WESTRING_MISSION_INDEX_U01 +MissionIndexU02=0,missionindex,bj_MISSION_INDEX_U02,WESTRING_MISSION_INDEX_U02 +MissionIndexU03=0,missionindex,bj_MISSION_INDEX_U03,WESTRING_MISSION_INDEX_U03 +MissionIndexU05=0,missionindex,bj_MISSION_INDEX_U05,WESTRING_MISSION_INDEX_U05 +MissionIndexU07=0,missionindex,bj_MISSION_INDEX_U07,WESTRING_MISSION_INDEX_U07 +MissionIndexU08=0,missionindex,bj_MISSION_INDEX_U08,WESTRING_MISSION_INDEX_U08 +MissionIndexU09=0,missionindex,bj_MISSION_INDEX_U09,WESTRING_MISSION_INDEX_U09 +MissionIndexU10=0,missionindex,bj_MISSION_INDEX_U10,WESTRING_MISSION_INDEX_U10 +MissionIndexU11=0,missionindex,bj_MISSION_INDEX_U11,WESTRING_MISSION_INDEX_U11 +MissionIndexO00=0,missionindex,bj_MISSION_INDEX_O00,WESTRING_MISSION_INDEX_O00 +MissionIndexO01=0,missionindex,bj_MISSION_INDEX_O01,WESTRING_MISSION_INDEX_O01 +MissionIndexO02=0,missionindex,bj_MISSION_INDEX_O02,WESTRING_MISSION_INDEX_O02 +MissionIndexO03=0,missionindex,bj_MISSION_INDEX_O03,WESTRING_MISSION_INDEX_O03 +MissionIndexO04=0,missionindex,bj_MISSION_INDEX_O04,WESTRING_MISSION_INDEX_O04 +MissionIndexO05=0,missionindex,bj_MISSION_INDEX_O05,WESTRING_MISSION_INDEX_O05 +MissionIndexO06=0,missionindex,bj_MISSION_INDEX_O06,WESTRING_MISSION_INDEX_O06 +MissionIndexO07=0,missionindex,bj_MISSION_INDEX_O07,WESTRING_MISSION_INDEX_O07 +MissionIndexO08=0,missionindex,bj_MISSION_INDEX_O08,WESTRING_MISSION_INDEX_O08 +MissionIndexO09=0,missionindex,bj_MISSION_INDEX_O09,WESTRING_MISSION_INDEX_O09 +MissionIndexO10=0,missionindex,bj_MISSION_INDEX_O10,WESTRING_MISSION_INDEX_O10 +MissionIndexN00=0,missionindex,bj_MISSION_INDEX_N00,WESTRING_MISSION_INDEX_N00 +MissionIndexN01=0,missionindex,bj_MISSION_INDEX_N01,WESTRING_MISSION_INDEX_N01 +MissionIndexN02=0,missionindex,bj_MISSION_INDEX_N02,WESTRING_MISSION_INDEX_N02 +MissionIndexN03=0,missionindex,bj_MISSION_INDEX_N03,WESTRING_MISSION_INDEX_N03 +MissionIndexN04=0,missionindex,bj_MISSION_INDEX_N04,WESTRING_MISSION_INDEX_N04 +MissionIndexN05=0,missionindex,bj_MISSION_INDEX_N05,WESTRING_MISSION_INDEX_N05 +MissionIndexN06=0,missionindex,bj_MISSION_INDEX_N06,WESTRING_MISSION_INDEX_N06 +MissionIndexN07=0,missionindex,bj_MISSION_INDEX_N07,WESTRING_MISSION_INDEX_N07 +MissionIndexXN00=1,missionindex,bj_MISSION_INDEX_XN00,WESTRING_MISSION_INDEX_XN00 +MissionIndexXN01=1,missionindex,bj_MISSION_INDEX_XN01,WESTRING_MISSION_INDEX_XN01 +MissionIndexXN02=1,missionindex,bj_MISSION_INDEX_XN02,WESTRING_MISSION_INDEX_XN02 +MissionIndexXN03=1,missionindex,bj_MISSION_INDEX_XN03,WESTRING_MISSION_INDEX_XN03 +MissionIndexXN04=1,missionindex,bj_MISSION_INDEX_XN04,WESTRING_MISSION_INDEX_XN04 +MissionIndexXN05=1,missionindex,bj_MISSION_INDEX_XN05,WESTRING_MISSION_INDEX_XN05 +MissionIndexXN06=1,missionindex,bj_MISSION_INDEX_XN06,WESTRING_MISSION_INDEX_XN06 +MissionIndexXN07=1,missionindex,bj_MISSION_INDEX_XN07,WESTRING_MISSION_INDEX_XN07 +MissionIndexXN08=1,missionindex,bj_MISSION_INDEX_XN08,WESTRING_MISSION_INDEX_XN08 +MissionIndexXN09=1,missionindex,bj_MISSION_INDEX_XN09,WESTRING_MISSION_INDEX_XN09 +MissionIndexXN10=1,missionindex,bj_MISSION_INDEX_XN10,WESTRING_MISSION_INDEX_XN10 +MissionIndexXH00=1,missionindex,bj_MISSION_INDEX_XH00,WESTRING_MISSION_INDEX_XH00 +MissionIndexXH01=1,missionindex,bj_MISSION_INDEX_XH01,WESTRING_MISSION_INDEX_XH01 +MissionIndexXH02=1,missionindex,bj_MISSION_INDEX_XH02,WESTRING_MISSION_INDEX_XH02 +MissionIndexXH03=1,missionindex,bj_MISSION_INDEX_XH03,WESTRING_MISSION_INDEX_XH03 +MissionIndexXH04=1,missionindex,bj_MISSION_INDEX_XH04,WESTRING_MISSION_INDEX_XH04 +MissionIndexXH05=1,missionindex,bj_MISSION_INDEX_XH05,WESTRING_MISSION_INDEX_XH05 +MissionIndexXH06=1,missionindex,bj_MISSION_INDEX_XH06,WESTRING_MISSION_INDEX_XH06 +MissionIndexXH07=1,missionindex,bj_MISSION_INDEX_XH07,WESTRING_MISSION_INDEX_XH07 +MissionIndexXH08=1,missionindex,bj_MISSION_INDEX_XH08,WESTRING_MISSION_INDEX_XH08 +MissionIndexXH09=1,missionindex,bj_MISSION_INDEX_XH09,WESTRING_MISSION_INDEX_XH09 +MissionIndexXU00=1,missionindex,bj_MISSION_INDEX_XU00,WESTRING_MISSION_INDEX_XU00 +MissionIndexXU01=1,missionindex,bj_MISSION_INDEX_XU01,WESTRING_MISSION_INDEX_XU01 +MissionIndexXU02=1,missionindex,bj_MISSION_INDEX_XU02,WESTRING_MISSION_INDEX_XU02 +MissionIndexXU03=1,missionindex,bj_MISSION_INDEX_XU03,WESTRING_MISSION_INDEX_XU03 +MissionIndexXU04=1,missionindex,bj_MISSION_INDEX_XU04,WESTRING_MISSION_INDEX_XU04 +MissionIndexXU05=1,missionindex,bj_MISSION_INDEX_XU05,WESTRING_MISSION_INDEX_XU05 +MissionIndexXU06=1,missionindex,bj_MISSION_INDEX_XU06,WESTRING_MISSION_INDEX_XU06 +MissionIndexXU07=1,missionindex,bj_MISSION_INDEX_XU07,WESTRING_MISSION_INDEX_XU07 +MissionIndexXU08=1,missionindex,bj_MISSION_INDEX_XU08,WESTRING_MISSION_INDEX_XU08 +MissionIndexXU09=1,missionindex,bj_MISSION_INDEX_XU09,WESTRING_MISSION_INDEX_XU09 +MissionIndexXU10=1,missionindex,bj_MISSION_INDEX_XU10,WESTRING_MISSION_INDEX_XU10 +MissionIndexXU11=1,missionindex,bj_MISSION_INDEX_XU11,WESTRING_MISSION_INDEX_XU11 +MissionIndexXU12=1,missionindex,bj_MISSION_INDEX_XU12,WESTRING_MISSION_INDEX_XU12 +MissionIndexXU13=1,missionindex,bj_MISSION_INDEX_XU13,WESTRING_MISSION_INDEX_XU13 +MissionIndexXO00=1,missionindex,bj_MISSION_INDEX_XO00,WESTRING_MISSION_INDEX_XO00 +CampaignIndexT=0,campaignindex,bj_CAMPAIGN_INDEX_T,WESTRING_CAMPAIGN_INDEX_T +CampaignIndexH=0,campaignindex,bj_CAMPAIGN_INDEX_H,WESTRING_CAMPAIGN_INDEX_H +CampaignIndexU=0,campaignindex,bj_CAMPAIGN_INDEX_U,WESTRING_CAMPAIGN_INDEX_U +CampaignIndexO=0,campaignindex,bj_CAMPAIGN_INDEX_O,WESTRING_CAMPAIGN_INDEX_O +CampaignIndexN=0,campaignindex,bj_CAMPAIGN_INDEX_N,WESTRING_CAMPAIGN_INDEX_N +CampaignIndexXN=1,campaignindex,bj_CAMPAIGN_INDEX_XN,WESTRING_CAMPAIGN_INDEX_XN +CampaignIndexXH=1,campaignindex,bj_CAMPAIGN_INDEX_XH,WESTRING_CAMPAIGN_INDEX_XH +CampaignIndexXU=1,campaignindex,bj_CAMPAIGN_INDEX_XU,WESTRING_CAMPAIGN_INDEX_XU +CampaignIndexXO=1,campaignindex,bj_CAMPAIGN_INDEX_XO,WESTRING_CAMPAIGN_INDEX_XO +CinematicIndexTOP=0,cinematicindex,bj_CINEMATICINDEX_TOP,WESTRING_CINEMATICTYPE_TOP +CinematicIndexHOP=0,cinematicindex,bj_CINEMATICINDEX_HOP,WESTRING_CINEMATICTYPE_HOP +CinematicIndexHED=0,cinematicindex,bj_CINEMATICINDEX_HED,WESTRING_CINEMATICTYPE_HED +CinematicIndexUED=0,cinematicindex,bj_CINEMATICINDEX_UED,WESTRING_CINEMATICTYPE_UED +CinematicIndexOED=0,cinematicindex,bj_CINEMATICINDEX_OED,WESTRING_CINEMATICTYPE_OED +CinematicIndexNED=0,cinematicindex,bj_CINEMATICINDEX_NED,WESTRING_CINEMATICTYPE_NED +CinematicIndexXOP=1,cinematicindex,bj_CINEMATICINDEX_XOP,WESTRING_CINEMATICTYPE_XOP +CinematicIndexXED=1,cinematicindex,bj_CINEMATICINDEX_XED,WESTRING_CINEMATICTYPE_XED +UnitOrderAttackUnitnull=0,unitorderutarg,null,无 +UnitOrderAttackUnit=0,unitorderutarg,`attack`,WESTRING_UNITORDERUTARG_ATTACK +UnitOrderAttackUnitOnce=0,unitorderutarg,`attackonce`,WESTRING_UNITORDERUTARG_ATTACKONCE +UnitOrderMoveUnit=0,unitorderutarg,`move`,WESTRING_UNITORDERUTARG_MOVE +UnitOrderAIMoveUnit=0,unitorderutarg,`AImove`,AImove +UnitOrderSmartUnit=1,unitorderutarg,`smart`,WESTRING_UNITORDERUTARG_SMART +UnitOrderSetRallyUnit=0,unitorderutarg,`setrally`,WESTRING_UNITORDERPTARG_SETRALLY +UnitOrderPatrolUnit=0,unitorderutarg,`patrol`,WESTRING_UNITORDERPTARG_PATROL +UnitOrderHarvest=0,unitorderutarg,`harvest`,WESTRING_UNITORDERUTARG_HARVEST +UnitOrderRevive=0,unitorderutarg,`revive`,WESTRING_UNITORDERUTARG_REVIVE +UnitOrderLoad=0,unitorderutarg,`load`,WESTRING_UNITORDERUTARG_LOAD +UnitOrderUnload=0,unitorderutarg,`unload`,WESTRING_UNITORDERUTARG_UNLOAD +UnitOrderBoard=0,unitorderutarg,`board`,WESTRING_UNITORDERUTARG_BOARD +UnitOrderForceBoard=0,unitorderutarg,`forceboard`,WESTRING_UNITORDERUTARG_FORCEBOARD +UnitOrderRepair=0,unitorderutarg,`repair`,WESTRING_UNITORDERUTARG_REPAIR +UnitOrderInnerFire=0,unitorderutarg,`innerfire`,WESTRING_UNITORDERUTARG_INNERFIRE +UnitOrderDispel=0,unitorderutarg,`dispel`,WESTRING_UNITORDERUTARG_DISPEL +UnitOrderHeal=0,unitorderutarg,`heal`,WESTRING_UNITORDERUTARG_HEAL +UnitOrderSlow=0,unitorderutarg,`slow`,WESTRING_UNITORDERUTARG_SLOW +UnitOrderInvisibility=0,unitorderutarg,`invisibility`,WESTRING_UNITORDERUTARG_INVISIBILITY +UnitOrderPolymorph=0,unitorderutarg,`polymorph`,WESTRING_UNITORDERUTARG_POLYMORPH +UnitOrderControlMagic=1,unitorderutarg,`controlmagic`,WESTRING_UNITORDERUTARG_CONTROLMAGIC +UnitOrderSpellSteal=1,unitorderutarg,`spellsteal`,WESTRING_UNITORDERUTARG_SPELLSTEAL +UnitOrderAerialShackles=1,unitorderutarg,`magicleash`,WESTRING_UNITORDERUTARG_AERIALSHACKLES +UnitOrderMassTeleport=0,unitorderutarg,`massteleport`,WESTRING_UNITORDERUTARG_MASSTELEPORT +UnitOrderBanish=1,unitorderutarg,`banish`,WESTRING_UNITORDERUTARG_BANISH +UnitOrderSiphonMana=1,unitorderutarg,`drain`,WESTRING_UNITORDERUTARG_SIPHONMANA +UnitOrderThunderBolt=0,unitorderutarg,`thunderbolt`,WESTRING_UNITORDERUTARG_THUNDERBOLT +UnitOrderHolyBolt=0,unitorderutarg,`holybolt`,WESTRING_UNITORDERUTARG_HOLYBOLT +UnitOrderRepairO=0,unitorderutarg,`repair`,WESTRING_UNITORDERUTARG_REPAIRO +UnitOrderEnsnare=0,unitorderutarg,`ensnare`,WESTRING_UNITORDERUTARG_ENSNARE +UnitOrderUnstableConcoction=1,unitorderutarg,`unstableconcoction`,WESTRING_UNITORDERUTARG_UNSTABLECONCOCTION +UnitOrderPurge=0,unitorderutarg,`purge`,WESTRING_UNITORDERUTARG_PURGE +UnitOrderLightningShield=0,unitorderutarg,`lightningshield`,WESTRING_UNITORDERUTARG_LIGHTNINGSHIELD +UnitOrderBloodlust=0,unitorderutarg,`bloodlust`,WESTRING_UNITORDERUTARG_BLOODLUST +UnitOrderSpiritLink=1,unitorderutarg,`spiritlink`,WESTRING_UNITORDERUTARG_SPIRITLINK +UnitOrderAncestralSpiritTarg=1,unitorderutarg,`ancestralspirittarg`,兽族灵魂行者 - 先祖幽灵(无效) +UnitOrderDevour=0,unitorderutarg,`devour`,WESTRING_UNITORDERUTARG_DEVOUR +UnitOrderChainLightning=0,unitorderutarg,`chainlightning`,WESTRING_UNITORDERUTARG_CHAINLIGHTNING +UnitOrderHealingWave=1,unitorderutarg,`healingwave`,WESTRING_UNITORDERUTARG_HEALINGWAVE +UnitOrderHex=1,unitorderutarg,`hex`,WESTRING_UNITORDERUTARG_HEX +UnitOrderRenew=0,unitorderutarg,`renew`,WESTRING_UNITORDERUTARG_RENEW +UnitOrderEntangle=0,unitorderutarg,`entangle`,WESTRING_UNITORDERUTARG_ENTANGLE +UnitOrderEntangleInstant=0,unitorderutarg,`entangleinstant`,WESTRING_UNITORDERUTARG_ENTANGLEINSTANT +UnitOrderReplenish=0,unitorderutarg,`recharge`,WESTRING_UNITORDERUTARG_REPLENISH +UnitOrderMountHippogryph=0,unitorderutarg,`mounthippogryph`,WESTRING_UNITORDERUTARG_MOUNTHIPPOGRYPH +UnitOrderLoadArcher=0,unitorderutarg,`coupletarget`,WESTRING_UNITORDERUTARG_LOADARCHER +UnitOrderAutoDispel=0,unitorderutarg,`autodispel`,WESTRING_UNITORDERUTARG_AUTODISPEL +UnitOrderFaerieFire=0,unitorderutarg,`faeriefire`,WESTRING_UNITORDERUTARG_FAERIEFIRE +UnitOrderCyclone=0,unitorderutarg,`cyclone`,WESTRING_UNITORDERUTARG_CYCLONE +UnitOrderRejuvination=0,unitorderutarg,`rejuvination`,WESTRING_UNITORDERUTARG_REJUVINATION +UnitOrderVengeance=1,unitorderutarg,`vengeance`,WESTRING_UNITORDERUTARG_VENGEANCE +UnitOrderManaBurn=0,unitorderutarg,`manaburn`,WESTRING_UNITORDERUTARG_MANABURN +UnitOrderEntanglingRoots=0,unitorderutarg,`entanglingroots`,WESTRING_UNITORDERUTARG_ENTANGLINGROOTS +UnitOrderShadowStrike=1,unitorderutarg,`shadowstrike`,WESTRING_UNITORDERUTARG_SHADOWSTRIKE +UnitOrderRestoration=0,unitorderutarg,`restoration`,WESTRING_UNITORDERUTARG_RESTORE +UnitOrderSacrificeAcolyte=0,unitorderutarg,`sacrifice`,WESTRING_UNITORDERUTARG_SACRIFICEACOLYTE +UnitOrderSacrifice=0,unitorderutarg,`requestsacrifice`,WESTRING_UNITORDERUTARG_SACRIFICE +UnitOrderUnsummon=0,unitorderutarg,`unsummon`,WESTRING_UNITORDERUTARG_UNSUMMON +UnitOrderWeb=0,unitorderutarg,`web`,WESTRING_UNITORDERUTARG_WEB +UnitOrderRaiseDead=0,unitorderutarg,`raisedead`,WESTRING_UNITORDERUTARG_RAISEDEAD +UnitOrderUnholyFrenzy=0,unitorderutarg,`unholyfrenzy`,WESTRING_UNITORDERUTARG_UNHOLYFRENZY +UnitOrderCripple=0,unitorderutarg,`cripple`,WESTRING_UNITORDERUTARG_CRIPPLE +UnitOrderCurse=0,unitorderutarg,`curse`,WESTRING_UNITORDERUTARG_CURSE +UnitOrderAntiMagicShell=0,unitorderutarg,`antimagicshell`,WESTRING_UNITORDERUTARG_ANTIMAGICSHELL +UnitOrderPossession=0,unitorderutarg,`possession`,WESTRING_UNITORDERUTARG_POSSESSION +UnitOrderAbsorbMana=1,unitorderutarg,`absorb`,WESTRING_UNITORDERUTARG_ABSORBMANA +UnitOrderFlamingAttack=1,unitorderutarg,`flamingattacktarg`,WESTRING_UNITORDERUTARG_FLAMINGATTACK +UnitOrderImpale=1,unitorderutarg,`impale`,WESTRING_UNITORDERUTARG_IMPALE +UnitOrderCarrionScarabs=1,unitorderutarg,`carrionscarabs`,WESTRING_UNITORDERUTARG_CARRIONSCARABS +UnitOrderDeathCoil=0,unitorderutarg,`deathcoil`,WESTRING_UNITORDERUTARG_DEATHCOIL +UnitOrderDeathPact=0,unitorderutarg,`deathpact`,WESTRING_UNITORDERUTARG_DEATHPACT +UnitOrderSleep=0,unitorderutarg,`sleep`,WESTRING_UNITORDERUTARG_SLEEP +UnitOrderFrostNova=0,unitorderutarg,`frostnova`,WESTRING_UNITORDERUTARG_FROSTNOVA +UnitOrderFrostArmor=0,unitorderutarg,`frostarmor`,WESTRING_UNITORDERUTARG_FROSTARMOR +UnitOrderDarkRitual=0,unitorderutarg,`darkritual`,WESTRING_UNITORDERUTARG_DARKRITUAL +UnitTargetOrderBreathOfFrost=1,unitorderutarg,`breathoffrost`,中立 - 霜冻吐息 +UnitOrderCreepDevour=1,unitorderutarg,`creepdevour`,WESTRING_UNITORDERUTARG_CREEPDEVOUR +UnitOrderFirebolt=0,unitorderutarg,`firebolt`,WESTRING_UNITORDERUTARG_FIREBOLT +UnitOrderCreepHeal=0,unitorderutarg,`creepheal`,WESTRING_UNITORDERUTARG_CREEPHEAL +UnitOrderCreepThunderBolt=0,unitorderutarg,`creepthunderbolt`,WESTRING_UNITORDERUTARG_CREEPTHUNDERBOLT +UnitOrderParasite=1,unitorderutarg,`parasite`,WESTRING_UNITORDERUTARG_PARASITE +UnitOrderSelfDestructUnit=1,unitorderutarg,`selfdestruct`,WESTRING_UNITORDERUTARG_SELFDESTRUCT +UnitOrderBlackArrow=1,unitorderutarg,`blackarrow`,WESTRING_UNITORDERUTARG_BLACKARROW +UnitOrderCharm=1,unitorderutarg,`charm`,WESTRING_UNITORDERUTARG_CHARM +UnitOrderLifeDrain=1,unitorderutarg,`drain`,WESTRING_UNITORDERUTARG_LIFEDRAIN +UnitOrderColdArrow=1,unitorderutarg,`coldarrowstarg`,WESTRING_UNITORDERUTARG_COLDARROW +UnitOrderForkedLightning=1,unitorderutarg,`forkedlightning`,WESTRING_UNITORDERUTARG_FORKEDLIGHTNING +UnitOrderStrongDrink=1,unitorderutarg,`drunkenhaze`,WESTRING_UNITORDERUTARG_STRONGDRINK +UnitOrderDoom=1,unitorderutarg,`doom`,WESTRING_UNITORDERUTARG_DOOM +UnitOrderAcidBomb=1,unitorderutarg,`acidbomb`,WESTRING_UNITORDERUTARG_ACIDBOMB +UnitOrderTransmute=1,unitorderutarg,`transmute`,WESTRING_UNITORDERUTARG_TRANSMUTE +UnitOrderSoulBurn=1,unitorderutarg,`soulburn`,WESTRING_UNITORDERUTARG_SOULBURN +UnitOrderPoisonArrow=0,unitorderutarg,`poisonarrowstarg`,WESTRING_UNITORDERUTARG_POISONARROW +UnitOrderIncinerateArrow=1,unitorderutarg,`incineratearrow`,WESTRING_UNITORDERUTARG_INCINERATEARROW +UnitOrderFingerOfDeath=0,unitorderutarg,`fingerofdeath`,WESTRING_UNITORDERUTARG_FINGEROFDEATH +UnitOrderDarkConversion=0,unitorderutarg,`darkconversion`,WESTRING_UNITORDERUTARG_DARKCONVERSION +UnitOrderSoulPreservation=0,unitorderutarg,`soulpreservation`,WESTRING_UNITORDERUTARG_SOULPRESERVATION +UnitOrderDarkConversionFast=0,unitorderutarg,`darkconversion`,WESTRING_UNITORDERUTARG_DARKCONVERSIONFAST +UnitOrderNeutralInterAct=0,unitorderutarg,`neutralinteract`,中立商店 - 选择单位 +UnitOrderAttacknull=0,unitorderptarg,null,无 +UnitOrderAttack=0,unitorderptarg,`attack`,WESTRING_UNITORDERPTARG_ATTACK +UnitOrderAttackGround=0,unitorderptarg,`attackground`,WESTRING_UNITORDERPTARG_ATTACKGROUND +UnitOrderMove=0,unitorderptarg,`move`,WESTRING_UNITORDERPTARG_MOVE +UnitOrderAIMove=0,unitorderptarg,`AImove`,AImove +UnitOrderPatrol=0,unitorderptarg,`patrol`,WESTRING_UNITORDERPTARG_PATROL +UnitOrderSmartPoint=1,unitorderptarg,`smart`,WESTRING_UNITORDERPTARG_SMART +UnitOrderSetRally=0,unitorderptarg,`setrally`,WESTRING_UNITORDERPTARG_SETRALLY +UnitOrderUnloadAll=0,unitorderptarg,`unloadall`,WESTRING_UNITORDERPTARG_UNLOADALL +UnitOrderFlare=0,unitorderptarg,`flare`,WESTRING_UNITORDERPTARG_FLARE +UnitOrderCloudOfFog=1,unitorderptarg,`cloudoffog`,WESTRING_UNITORDERPTARG_CLOUDOFFOG +UnitOrderBlizzard=0,unitorderptarg,`blizzard`,WESTRING_UNITORDERPTARG_BLIZZARD +UnitOrderFlameStrike=1,unitorderptarg,`flamestrike`,WESTRING_UNITORDERPTARG_FLAMESTRIKE +UnitOrderSentryWard=0,unitorderptarg,`evileye`,WESTRING_UNITORDERPTARG_SENTRYWARD +UnitOrderStasisTrap=0,unitorderptarg,`stasistrap`,WESTRING_UNITORDERPTARG_STASISTRAP +UnitOrderHealingWard=0,unitorderptarg,`healingward`,WESTRING_UNITORDERPTARG_HEALINGWARD +UnitOrderDisenchant=1,unitorderptarg,`disenchant`,WESTRING_UNITORDERPTARG_DISENCHANT +UnitOrderFarSight=0,unitorderptarg,`farsight`,WESTRING_UNITORDERPTARG_FARSIGHT +UnitOrderEarthquake=0,unitorderptarg,`earthquake`,WESTRING_UNITORDERPTARG_EARTHQUAKE +UnitOrderSerpentWard=1,unitorderptarg,`ward`,WESTRING_UNITORDERPTARG_SERPENTWARD +UnitOrderShockwave=0,unitorderptarg,`shockwave`,WESTRING_UNITORDERPTARG_SHOCKWAVE +UnitOrderRoot=0,unitorderptarg,`root`,WESTRING_UNITORDERPTARG_ROOT +UnitOrderDetonate=0,unitorderptarg,`detonate`,WESTRING_UNITORDERPTARG_DETONATE +UnitOrderForceOfNature=0,unitorderptarg,`forceofnature`,WESTRING_UNITORDERPTARG_FORCEOFNATURE +UnitOrderStarfall=0,unitorderptarg,`obsolete`,WESTRING_UNITORDERPTARG_STARFALL +UnitOrderBlink=1,unitorderptarg,`blink`,WESTRING_UNITORDERPTARG_BLINK +UnitOrderDevourMagic=1,unitorderptarg,`devourmagic`,WESTRING_UNITORDERPTARG_DEVOURMAGIC +UnitOrderImpalePoint=1,unitorderptarg,`impale`,WESTRING_UNITORDERPTARG_IMPALE +UnitOrderCarrionSwarm=0,unitorderptarg,`carrionswarm`,WESTRING_UNITORDERPTARG_CARRIONSWARM +UnitOrderDarkSummoning=0,unitorderptarg,`dreadlordinferno`,WESTRING_UNITORDERPTARG_DARKSUMMONING +UnitOrderDeathAndDecay=0,unitorderptarg,`deathanddecay`,WESTRING_UNITORDERPTARG_DEATHANDDECAY +UnitOrderBreathOfFrost=1,unitorderptarg,`breathoffrost`,WESTRING_UNITORDERPTARG_BREATHOFFROST +UnitOrderMonsoon=1,unitorderptarg,`monsoon`,WESTRING_UNITORDERPTARG_MONSOON +UnitOrderSelfDestruct=0,unitorderptarg,`selfdestruct`,WESTRING_UNITORDERPTARG_SELFDESTRUCT +UnitOrderInferno=0,unitorderptarg,`inferno`,WESTRING_UNITORDERPTARG_INFERNO +UnitOrderStampede=1,unitorderptarg,`stampede`,WESTRING_UNITORDERPTARG_STAMPEDE +UnitOrderSilence=1,unitorderptarg,`silence`,WESTRING_UNITORDERPTARG_SILENCE +UnitOrderTornado=1,unitorderptarg,`tornado`,WESTRING_UNITORDERPTARG_TORNADO +UnitOrderBreathOfFire=1,unitorderptarg,`breathoffire`,WESTRING_UNITORDERPTARG_BREATHOFFIRE +UnitOrderHeroRainOfFire=1,unitorderptarg,`rainoffire`,WESTRING_UNITORDERPTARG_HERORAINOFFIRE +UnitOrderHealingSpray=1,unitorderptarg,`healingspray`,WESTRING_UNITORDERPTARG_HEALINGSPRAY +UnitOrderClusterRockets=1,unitorderptarg,`clusterrockets`,WESTRING_UNITORDERPTARG_CLUSTERROCKETS +UnitOrderSummonFactory=1,unitorderptarg,`summonfactory`,WESTRING_UNITORDERPTARG_SUMMONFACTORY +UnitOrderVolcano=1,unitorderptarg,`volcano`,WESTRING_UNITORDERPTARG_VOLCANO +UnitOrderDarkPortal=0,unitorderptarg,`darkportal`,WESTRING_UNITORDERPTARG_DARKPORTAL +UnitOrderRainOfChaos=0,unitorderptarg,`rainofchaos`,WESTRING_UNITORDERPTARG_RAINOFCHAOS +UnitOrderRainOfFire=0,unitorderptarg,`rainoffire`,WESTRING_UNITORDERPTARG_RAINOFFIRE +UnitOrderDarkSummoningOld=0,unitorderptarg,`darksummoning`,WESTRING_UNITORDERPTARG_DARKSUMMONINGOLD +UnitOrderNeutralDetectAOE=0,unitorderptarg,`neutraldetectaoe`,地精实验室 - 侦查 +UnitOrderAttackDestructible=0,unitorderdtarg,`attack`,WESTRING_UNITORDERDTARG_ATTACK +UnitOrderAttackDestructibleOnce=0,unitorderdtarg,`attackonce`,WESTRING_UNITORDERUTARG_ATTACKONCE +UnitOrderSmartDestructible=1,unitorderdtarg,`smart`,WESTRING_UNITORDERDTARG_SMART +UnitOrderSetRallyDestructible=0,unitorderdtarg,`setrally`,WESTRING_UNITORDERPTARG_SETRALLY +UnitOrderHarvestDestructible=0,unitorderdtarg,`harvest`,WESTRING_UNITORDERDTARG_HARVEST +UnitOrderMoveDestructible=0,unitorderdtarg,`move`,WESTRING_UNITORDERPTARG_MOVE +UnitOrderAIMoveDestructible=0,unitorderdtarg,`AImove`,AImove +UnitOrderConsumeTree=0,unitorderdtarg,`eattree`,WESTRING_UNITORDERDTARG_CONSUMETREE +UnitOrderSentinel=0,unitorderdtarg,`sentinel`,WESTRING_UNITORDERDTARG_SENTINEL +UnitOrderGrabTree=1,unitorderdtarg,`grabtree`,WESTRING_UNITORDERDTARG_GRABTREE +UnitOrderAttackItem=1,unitorderitarg,`attack`,WESTRING_UNITORDERITARG_ATTACK +UnitOrderAttackItemOnce=1,unitorderitarg,`attackonce`,WESTRING_UNITORDERITARG_ATTACKONCE +UnitOrderMoveItem=1,unitorderitarg,`move`,移动(无效) +UnitOrderSmartItem=1,unitorderitarg,`smart`,WESTRING_UNITORDERITARG_SMART +UnitOrderSetRallyItem=0,unitorderitarg,`setrally`,WESTRING_UNITORDERPTARG_SETRALLY +UnitOrderStopnull=0,unitordernotarg,null,无 +UnitOrderStop=0,unitordernotarg,`stop`,WESTRING_UNITORDERNOTARG_STOP +UnitOrderHoldPosition=0,unitordernotarg,`holdposition`,WESTRING_UNITORDERNOTARG_HOLDPOSITION +UnitOrderAutoHarvestGold=0,unitordernotarg,`autoharvestgold`,WESTRING_UNITORDERNOTARG_AUTOHARVESTGOLD +UnitOrderAutoHarvestLumber=0,unitordernotarg,`autoharvestlumber`,WESTRING_UNITORDERNOTARG_AUTOHARVESTLUMBER +UnitOrderReturnResources=0,unitordernotarg,`returnresources`,WESTRING_UNITORDERNOTARG_RETURNRESOURCES +UnitOrderBuild=1,unitordernotarg,`build`,WESTRING_UNITORDERNOTARG_BUILD +UnitOrderLevelup=1,unitordernotarg,`levelup`,WESTRING_UNITORDERNOTARG_LEVELUP +UnitOrderHumanBuild=1,unitordernotarg,`humanbuild`,WESTRING_UNITORDERNOTARG_HUMANBUILD +UnitOrderTownBellOn=0,unitordernotarg,`townbellon`,WESTRING_UNITORDERNOTARG_TOWNBELLON +UnitOrderTownBellOff=0,unitordernotarg,`townbelloff`,WESTRING_UNITORDERNOTARG_TOWNBELLOFF +UnitOrderMilitia=0,unitordernotarg,`militia`,WESTRING_UNITORDERNOTARG_MILITIA +UnitOrderMilitiaOff=0,unitordernotarg,`militiaoff`,WESTRING_UNITORDERNOTARG_MILITIAOFF +UnitOrderRepairOn=0,unitordernotarg,`repairon`,WESTRING_UNITORDERNOTARG_REPAIRON +UnitOrderRepairOff=0,unitordernotarg,`repairoff`,WESTRING_UNITORDERNOTARG_REPAIROFF +UnitOrderDefend=0,unitordernotarg,`defend`,WESTRING_UNITORDERNOTARG_DEFEND +UnitOrderUnDefend=0,unitordernotarg,`undefend`,WESTRING_UNITORDERNOTARG_UNDEFEND +UnitOrderHealOn=0,unitordernotarg,`healon`,WESTRING_UNITORDERNOTARG_HEALON +UnitOrderHealOff=0,unitordernotarg,`healoff`,WESTRING_UNITORDERNOTARG_HEALOFF +UnitOrderInnerFireOn=0,unitordernotarg,`innerfireon`,WESTRING_UNITORDERNOTARG_INNERFIREON +UnitOrderInnerFireOff=0,unitordernotarg,`innerfireoff`,WESTRING_UNITORDERNOTARG_INNERFIREOFF +UnitOrderSlowOn=0,unitordernotarg,`slowon`,WESTRING_UNITORDERNOTARG_SLOWON +UnitOrderSlowOff=0,unitordernotarg,`slowoff`,WESTRING_UNITORDERNOTARG_SLOWOFF +UnitOrderSpellStealOn=1,unitordernotarg,`spellstealon`,WESTRING_UNITORDERNOTARG_SPELLSTEALON +UnitOrderSpellStealOff=1,unitordernotarg,`spellstealoff`,WESTRING_UNITORDERNOTARG_SPELLSTEALOFF +UnitOrderMagicDefense=1,unitordernotarg,`magicdefense`,人族破法者 - 激活魔法防御 +UnitOrderMagicUnDefense=1,unitordernotarg,`magicundefense`,人族破法者 - 取消魔法防御 +UnitOrderWaterElemental=0,unitordernotarg,`waterelemental`,WESTRING_UNITORDERNOTARG_WATERELEMENTAL +UnitOrderPhoenix=1,unitordernotarg,`summonphoenix`,WESTRING_UNITORDERNOTARG_PHOENIX +UnitOrderThunderClap=0,unitordernotarg,`thunderclap`,WESTRING_UNITORDERNOTARG_THUNDERCLAP +UnitOrderAvatar=0,unitordernotarg,`avatar`,WESTRING_UNITORDERNOTARG_AVATAR +UnitOrderDivineShield=0,unitordernotarg,`divineshield`,WESTRING_UNITORDERNOTARG_DIVINESHIELD +UnitOrderUnDivineShield=0,unitordernotarg,`undivineshield`,WESTRING_UNITORDERNOTARG_UNDIVINESHIELD +UnitOrderResurrection=0,unitordernotarg,`resurrection`,WESTRING_UNITORDERNOTARG_RESURRECTION +UnitOrderOrcBuild=1,unitordernotarg,`orcbuild`,WESTRING_UNITORDERNOTARG_ORCBUILD +UnitOrderBattleStations=0,unitordernotarg,`battlestations`,WESTRING_UNITORDERNOTARG_BATTLESTATIONS +UnitOrderStandDown=0,unitordernotarg,`standdown`,WESTRING_UNITORDERNOTARG_STANDDOWN +UnitOrderRepairOOn=0,unitordernotarg,`repairon`,WESTRING_UNITORDERNOTARG_REPAIROON +UnitOrderRepairOOff=0,unitordernotarg,`repairoff`,WESTRING_UNITORDERNOTARG_REPAIROOFF +UnitOrderBerserk=1,unitordernotarg,`berserk`,WESTRING_UNITORDERNOTARG_BERSERK +UnitOrderBloodlustOn=0,unitordernotarg,`bloodluston`,WESTRING_UNITORDERNOTARG_BLOODLUSTON +UnitOrderBloodlustOff=0,unitordernotarg,`bloodlustoff`,WESTRING_UNITORDERNOTARG_BLOODLUSTOFF +UnitOrderAncestralSpirit=1,unitordernotarg,`ancestralspirit`,WESTRING_UNITORDERNOTARG_ANCESTRALSPIRIT +UnitOrderEtherealForm=1,unitordernotarg,`uncorporealform`,WESTRING_UNITORDERNOTARG_ETHEREALFORM +UnitOrderCorporealForm=1,unitordernotarg,`corporealform`,WESTRING_UNITORDERNOTARG_CORPOREALFORM +UnitOrderWindWalk=0,unitordernotarg,`windwalk`,WESTRING_UNITORDERNOTARG_WINDWALK +UnitOrderMirrorImage=0,unitordernotarg,`mirrorimage`,WESTRING_UNITORDERNOTARG_MIRRORIMAGE +UnitOrderWhirlWind=0,unitordernotarg,`whirlwind`,WESTRING_UNITORDERNOTARG_BLADESTORM +UnitOrderSpiritWolf=0,unitordernotarg,`spiritwolf`,WESTRING_UNITORDERNOTARG_FERALSPIRIT +UnitOrderVoodoo=1,unitordernotarg,`voodoo`,WESTRING_UNITORDERNOTARG_VOODOO +UnitOrderStomp=0,unitordernotarg,`stomp`,WESTRING_UNITORDERNOTARG_WARSTOMP +UnitOrderNightElfBuild=1,unitordernotarg,`nightelfbuild`,WESTRING_UNITORDERNOTARG_NIGHTELFBUILD +UnitOrderUnRoot=0,unitordernotarg,`unroot`,WESTRING_UNITORDERNOTARG_UNROOT +UnitOrderAutoEntangle=1,unitordernotarg,`autoentangle`,WESTRING_UNITORDERNOTARG_AUTOENTANGLE +UnitOrderAutoEntangleInstant=1,unitordernotarg,`autoentangleinstant`,WESTRING_UNITORDERNOTARG_AUTOENTANGLEINSTANT +UnitOrderReplenishOn=1,unitordernotarg,`rechargeon`,WESTRING_UNITORDERNOTARG_REPLENISHON +UnitOrderReplenishOff=1,unitordernotarg,`rechargeoff`,WESTRING_UNITORDERNOTARG_REPLENISHOFF +UnitOrderAmbush=0,unitordernotarg,`ambush`,WESTRING_UNITORDERNOTARG_HIDE +UnitOrderRenewOn=0,unitordernotarg,`renewon`,WESTRING_UNITORDERNOTARG_RENEWON +UnitOrderRenewOff=0,unitordernotarg,`renewoff`,WESTRING_UNITORDERNOTARG_RENEWOFF +UnitOrderCoupleInstant1=1,unitordernotarg,`coupleinstant`,WESTRING_UNITORDERNOTARG_COUPLEINSTANT1 +UnitOrderCoupleInstant2=1,unitordernotarg,`coupleinstant`,WESTRING_UNITORDERNOTARG_COUPLEINSTANT2 +UnitOrderDecouple=1,unitordernotarg,`decouple`,WESTRING_UNITORDERNOTARG_DECOUPLE +UnitOrderAutoDispelOn=0,unitordernotarg,`autodispelon`,WESTRING_UNITORDERNOTARG_AUTODISPELON +UnitOrderAutoDispelOff=0,unitordernotarg,`autodispeloff`,WESTRING_UNITORDERNOTARG_AUTODISPELOFF +UnitOrderFaerieFireOn=0,unitordernotarg,`faeriefireon`,WESTRING_UNITORDERNOTARG_FAERIEFIREON +UnitOrderFaerieFireOff=0,unitordernotarg,`faeriefireoff`,WESTRING_UNITORDERNOTARG_FAERIEFIREOFF +UnitOrderRavenForm=0,unitordernotarg,`ravenform`,WESTRING_UNITORDERNOTARG_RAVENFORM +UnitOrderUnRavenForm=0,unitordernotarg,`unravenform`,WESTRING_UNITORDERNOTARG_UNRAVENFORM +UnitOrderRoar=0,unitordernotarg,`roar`,WESTRING_UNITORDERNOTARG_ROAR +UnitOrderBearForm=0,unitordernotarg,`bearform`,WESTRING_UNITORDERNOTARG_BEARFORM +UnitOrderUnBearForm=0,unitordernotarg,`unbearform`,WESTRING_UNITORDERNOTARG_UNBEARFORM +UnitOrderTaunt=1,unitordernotarg,`taunt`,WESTRING_UNITORDERNOTARG_TAUNT +UnitOrderManaFlareOn=1,unitordernotarg,`manaflareon`,WESTRING_UNITORDERNOTARG_MANAFLAREON +UnitOrderManaFlareOff=1,unitordernotarg,`manaflareoff`,WESTRING_UNITORDERNOTARG_MANAFLAREOFF +UnitOrderPhaseShift=1,unitordernotarg,`phaseshift`,WESTRING_UNITORDERNOTARG_PHASESHIFT +UnitOrderPhaseShiftOn=1,unitordernotarg,`phaseshifton`,WESTRING_UNITORDERNOTARG_PHASESHIFTON +UnitOrderPhaseShiftOff=1,unitordernotarg,`phaseshiftoff`,WESTRING_UNITORDERNOTARG_PHASESHIFTOFF +UnitOrderVengeanceInstant=1,unitordernotarg,`vengeanceinstant`,WESTRING_UNITORDERNOTARG_VENGEANCEINSTANT +UnitOrderVengeanceOn=1,unitordernotarg,`vengeanceon`,WESTRING_UNITORDERNOTARG_VENGEANCEON +UnitOrderVengeanceOff=1,unitordernotarg,`vengeanceoff`,WESTRING_UNITORDERNOTARG_VENGEANCEOFF +UnitOrderImmolation=0,unitordernotarg,`immolation`,WESTRING_UNITORDERNOTARG_IMMOLATION +UnitOrderUnImmolation=0,unitordernotarg,`unimmolation`,WESTRING_UNITORDERNOTARG_UNIMMOLATION +UnitOrderMetamorphosis=0,unitordernotarg,`metamorphosis`,WESTRING_UNITORDERNOTARG_METAMORPHOSIS +UnitOrderTranquility=0,unitordernotarg,`tranquility`,WESTRING_UNITORDERNOTARG_TRANQUILITY +UnitOrderSearingArrows=0,unitordernotarg,`flamingarrows`,WESTRING_UNITORDERNOTARG_SEARINGARROWS +UnitOrderUnSearingArrows=0,unitordernotarg,`unflamingarrows`,WESTRING_UNITORDERNOTARG_UNSEARINGARROWS +UnitOrderScout=0,unitordernotarg,`scout`,WESTRING_UNITORDERNOTARG_SCOUT +UnitOrderStarfall2=0,unitordernotarg,`starfall`,WESTRING_UNITORDERNOTARG_STARFALL +UnitOrderFanOfKnives=1,unitordernotarg,`fanofknives`,WESTRING_UNITORDERNOTARG_FANOFKNIVES +UnitOrderSpiritOfVengeance=1,unitordernotarg,`spiritofvengeance`,WESTRING_UNITORDERNOTARG_SPIRITOFVENGEANCE +UnitOrderUndeadBuild=1,unitordernotarg,`undeadbuild`,WESTRING_UNITORDERNOTARG_UNDEADBUILD +UnitOrderRestorationOn=0,unitordernotarg,`restorationon`,WESTRING_UNITORDERNOTARG_RESTOREON +UnitOrderRestorationOff=0,unitordernotarg,`restorationoff`,WESTRING_UNITORDERNOTARG_RESTOREOFF +UnitOrderCannibalize=0,unitordernotarg,`cannibalize`,WESTRING_UNITORDERNOTARG_CANNIBALIZE +UnitOrderWebOn=0,unitordernotarg,`webon`,WESTRING_UNITORDERNOTARG_WEBON +UnitOrderWebOff=0,unitordernotarg,`weboff`,WESTRING_UNITORDERNOTARG_WEBOFF +UnitOrderBurrow=1,unitordernotarg,`burrow`,WESTRING_UNITORDERNOTARG_BURROW +UnitOrderUnBurrow=1,unitordernotarg,`unburrow`,WESTRING_UNITORDERNOTARG_UNBURROW +UnitOrderLoadCorpse=0,unitordernotarg,`loadcorpse`,WESTRING_UNITORDERNOTARG_LOADCORPSE +UnitOrderUnloadAllCorpses=0,unitordernotarg,`unloadallcorpses`,WESTRING_UNITORDERNOTARG_UNLOADALLCORPSES +UnitOrderStoneForm=0,unitordernotarg,`stoneform`,WESTRING_UNITORDERNOTARG_STONEFORM +UnitOrderUnStoneForm=0,unitordernotarg,`unstoneform`,WESTRING_UNITORDERNOTARG_UNSTONEFORM +UnitOrderRaiseDeadInstant=1,unitordernotarg,`instant`,WESTRING_UNITORDERNOTARG_RAISEDEAD +UnitOrderRaiseDeadOn=0,unitordernotarg,`raisedeadon`,WESTRING_UNITORDERNOTARG_RAISEDEADON +UnitOrderRaiseDeadOff=0,unitordernotarg,`raisedeadoff`,WESTRING_UNITORDERNOTARG_RAISEDEADOFF +UnitOrderCurseOn=0,unitordernotarg,`curseon`,WESTRING_UNITORDERNOTARG_CURSEON +UnitOrderCurseOff=0,unitordernotarg,`curseoff`,WESTRING_UNITORDERNOTARG_CURSEOFF +UnitOrderFlamingAttackOn=1,unitordernotarg,`flamingattack`,WESTRING_UNITORDERNOTARG_FLAMINGATTACKON +UnitOrderFlamingAttackOff=1,unitordernotarg,`unflamingattack`,WESTRING_UNITORDERNOTARG_FLAMINGATTACKOFF +UnitOrderSphinxForm=1,unitordernotarg,`avengerform`,WESTRING_UNITORDERNOTARG_SPHINXFORM +UnitOrderReplenishLife=1,unitordernotarg,`replenishlife`,WESTRING_UNITORDERNOTARG_REPLENISHLIFE +UnitOrderReplenishLifeOn=1,unitordernotarg,`replenishlifeon`,WESTRING_UNITORDERNOTARG_REPLENISHLIFEON +UnitOrderReplenishLifeOff=1,unitordernotarg,`replenishlifeoff`,WESTRING_UNITORDERNOTARG_REPLENISHLIFEOFF +UnitOrderReplenishMana=1,unitordernotarg,`replenishmana`,WESTRING_UNITORDERNOTARG_REPLENISHMANA +UnitOrderReplenishManaOn=1,unitordernotarg,`replenishmanaon`,WESTRING_UNITORDERNOTARG_REPLENISHMANAON +UnitOrderReplenishManaOff=1,unitordernotarg,`replenishmanaoff`,WESTRING_UNITORDERNOTARG_REPLENISHMANAOFF +UnitOrderCarrionScarabsInstant=1,unitordernotarg,`carrionscarabsinstant`,"不死族地穴领主 - 召唤腐尸甲虫" +UnitOrderCarrionScarabsOn=1,unitordernotarg,`carrionscarabson`,WESTRING_UNITORDERNOTARG_CARRIONSCARABSON +UnitOrderCarrionScarabsOff=1,unitordernotarg,`carrionscarabsoff`,WESTRING_UNITORDERNOTARG_CARRIONSCARABSOFF +UnitOrderCarrionScarabsInstant=1,unitordernotarg,`carrionscarabsinstant`,WESTRING_UNITORDERNOTARG_CARRIONSCARABS +UnitOrderLocustSwarm=1,unitordernotarg,`locustswarm`,WESTRING_UNITORDERNOTARG_LOCUSTSWARM +UnitOrderAnimateDead=0,unitordernotarg,`animatedead`,WESTRING_UNITORDERNOTARG_ANIMATEDEAD +UnitOrderFrostArmorOn=0,unitordernotarg,`frostarmoron`,WESTRING_UNITORDERNOTARG_FROSTARMORON +UnitOrderFrostArmorOff=0,unitordernotarg,`frostarmoroff`,WESTRING_UNITORDERNOTARG_FROSTARMOROFF +UnitOrderNagaBuild=1,unitordernotarg,`nagabuild`,WESTRING_UNITORDERNOTARG_NAGABUILD +UnitOrderSubmerge=1,unitordernotarg,`submerge`,娜迦 - 潜水 +UnitOrderUnSubmerge=1,unitordernotarg,`unsubmerge`,娜迦 - 取消潜水 +UnitOrderParasiteOn=1,unitordernotarg,`parasiteon`,娜迦海妖 - 激活寄生虫 +UnitOrderParasiteOff=1,unitordernotarg,`parasiteoff`,娜迦海妖 - 取消寄生虫 +UnitOrderCreepAnimateDead=0,unitordernotarg,`creepanimatedead`,WESTRING_UNITORDERNOTARG_CREEPANIMATEDEAD +UnitOrderCreepHealOn=0,unitordernotarg,`creephealon`,WESTRING_UNITORDERNOTARG_CREEPHEALON +UnitOrderCreepHealOff=0,unitordernotarg,`creephealoff`,WESTRING_UNITORDERNOTARG_CREEPHEALOFF +UnitOrderRevenge=0,unitordernotarg,`revenge`,WESTRING_UNITORDERNOTARG_REVENGE +UnitOrderCreepThunderClap=0,unitordernotarg,`creepthunderclap`,WESTRING_UNITORDERNOTARG_CREEPTHUNDERCLAP +UnitOrderWateryMinion=1,unitordernotarg,`wateryminion`,WESTRING_UNITORDERNOTARG_WATERYMINION +UnitOrderSelfDestructOn=1,unitordernotarg,`selfdestructon`,WESTRING_UNITORDERNOTARG_SELFDESTRUCTON +UnitOrderSelfDestructOff=1,unitordernotarg,`selfdestructoff`,WESTRING_UNITORDERNOTARG_SELFDESTRUCTOFF +UnitOrderSummonGrizzly=1,unitordernotarg,`summongrizzly`,WESTRING_UNITORDERNOTARG_SUMMONGRIZZLY +UnitOrderSummonQuillbeast=1,unitordernotarg,`summonquillbeast`,WESTRING_UNITORDERNOTARG_SUMMONQUILLBEAST +UnitOrderSummonWarEagle=1,unitordernotarg,`summonwareagle`,WESTRING_UNITORDERNOTARG_SUMMONWAREAGLE +UnitOrderBlackArrowOn=1,unitordernotarg,`blackarrowon`,WESTRING_UNITORDERNOTARG_BLACKARROWON +UnitOrderBlackArrowOff=1,unitordernotarg,`blackarrowoff`,WESTRING_UNITORDERNOTARG_BLACKARROWOFF +UnitOrderColdArrowOn=1,unitordernotarg,`coldarrows`,WESTRING_UNITORDERNOTARG_COLDARROWON +UnitOrderColdArrowOff=1,unitordernotarg,`uncoldarrows`,WESTRING_UNITORDERNOTARG_COLDARROWOFF +UnitOrderManaShieldOn=1,unitordernotarg,`manashieldon`,WESTRING_UNITORDERNOTARG_MANASHIELDON +UnitOrderManaShieldOff=1,unitordernotarg,`manashieldoff`,WESTRING_UNITORDERNOTARG_MANASHIELDOFF +UnitOrderElementalFury=1,unitordernotarg,`elementalfury`,WESTRING_UNITORDERNOTARG_ELEMENTALFURY +UnitOrderHowlOfTerror=1,unitordernotarg,`howlofterror`,WESTRING_UNITORDERNOTARG_HOWLOFTERROR +UnitOrderPoisonArrows=0,unitordernotarg,`poisonarrows`,WESTRING_UNITORDERNOTARG_POISONARROWON +UnitOrderUnPoisonArrows=0,unitordernotarg,`unpoisonarrows`,WESTRING_UNITORDERNOTARG_POISONARROWOFF +UnitOrderChemicalRage=1,unitordernotarg,`chemicalrage`,WESTRING_UNITORDERNOTARG_CHEMICALRAGE +UnitOrderRoboGoblin=1,unitordernotarg,`robogoblin`,WESTRING_UNITORDERNOTARG_ROBOGOBLIN +UnitOrderUnRoboGoblin=1,unitordernotarg,`unrobogoblin`,WESTRING_UNITORDERNOTARG_UNROBOGOBLIN +UnitOrderLavaMonster=1,unitordernotarg,`lavamonster`,WESTRING_UNITORDERNOTARG_LAVAMONSTER +UnitOrderIncinerateArrowOn=1,unitordernotarg,`incineratearrowon`,WESTRING_UNITORDERNOTARG_INCINERATEARROWON +UnitOrderIncinerateArrowOff=1,unitordernotarg,`incineratearrowoff`,WESTRING_UNITORDERNOTARG_INCINERATEARROWOFF +UnitOrderChannel=1,unitordernotarg,`channel`,WESTRING_UNITORDERNOTARG_CHANNEL +UnitOrderMedivhRavenForm=0,unitordernotarg,`ravenform`,WESTRING_UNITORDERNOTARG_MEDIVHRAVENFORM +UnitOrderMedivhUnRavenForm=0,unitordernotarg,`unravenform`,WESTRING_UNITORDERNOTARG_MEDIVHUNRAVENFORM +UnitOrderRexxarBattleRoar=1,unitordernotarg,`battleroar`,WESTRING_UNITORDERNOTARG_REXXARBATTLEROAR +UnitOrderColdArrows=0,unitordernotarg,`coldarrows`,WESTRING_UNITORDERNOTARG_COLDARROWS +UnitOrderUnColdArrows=0,unitordernotarg,`uncoldarrows`,WESTRING_UNITORDERNOTARG_UNCOLDARROWS +OrderCodeAttackUnit=0,ordercodeutarg,851983,WESTRING_UNITORDERUTARG_ATTACK +OrderCodeAttackUnitOnce=0,ordercodeutarg,851985,WESTRING_UNITORDERUTARG_ATTACKONCE +OrderCodeMoveUnit=0,ordercodeutarg,851986,WESTRING_UNITORDERUTARG_MOVE +OrderCodeAIMoveUnit=0,ordercodeutarg,851988,AImove +OrderCodeSmartUnit=1,ordercodeutarg,851971,WESTRING_UNITORDERUTARG_SMART +OrderCodeSetRallyUnit=0,ordercodeutarg,851980,WESTRING_UNITORDERPTARG_SETRALLY +OrderCodePatrolUnit=0,ordercodeutarg,851990,WESTRING_UNITORDERPTARG_PATROL +OrderCodeHarvest=0,ordercodeutarg,852018,WESTRING_UNITORDERUTARG_HARVEST +OrderCodeRevive=0,ordercodeutarg,852039,WESTRING_UNITORDERUTARG_REVIVE +OrderCodeLoad=0,ordercodeutarg,852046,WESTRING_UNITORDERUTARG_LOAD +OrderCodeUnload=0,ordercodeutarg,852047,WESTRING_UNITORDERUTARG_UNLOAD +OrderCodeBoard=0,ordercodeutarg,852043,WESTRING_UNITORDERUTARG_BOARD +OrderCodeForceBoard=0,ordercodeutarg,852044,WESTRING_UNITORDERUTARG_FORCEBOARD +OrderCodeRepair=0,ordercodeutarg,852024,WESTRING_UNITORDERUTARG_REPAIR +OrderCodeInnerFire=0,ordercodeutarg,852066,WESTRING_UNITORDERUTARG_INNERFIRE +OrderCodeDispel=0,ordercodeutarg,852057,WESTRING_UNITORDERUTARG_DISPEL +OrderCodeHeal=0,ordercodeutarg,852063,WESTRING_UNITORDERUTARG_HEAL +OrderCodeSlow=0,ordercodeutarg,852075,WESTRING_UNITORDERUTARG_SLOW +OrderCodeInvisibility=0,ordercodeutarg,852069,WESTRING_UNITORDERUTARG_INVISIBILITY +OrderCodePolymorph=0,ordercodeutarg,852074,WESTRING_UNITORDERUTARG_POLYMORPH +OrderCodeControlMagic=1,ordercodeutarg,852474,WESTRING_UNITORDERUTARG_CONTROLMAGIC +OrderCodeSpellSteal=1,ordercodeutarg,852483,WESTRING_UNITORDERUTARG_SPELLSTEAL +OrderCodeAerialShackles=1,ordercodeutarg,852480,WESTRING_UNITORDERUTARG_AERIALSHACKLES +OrderCodeMassTeleport=0,ordercodeutarg,852093,WESTRING_UNITORDERUTARG_MASSTELEPORT +OrderCodeBanish=1,ordercodeutarg,852486,WESTRING_UNITORDERUTARG_BANISH +OrderCodeSiphonMana=1,ordercodeutarg,852487,WESTRING_UNITORDERUTARG_SIPHONMANA +OrderCodeThunderBolt=0,ordercodeutarg,852095,WESTRING_UNITORDERUTARG_THUNDERBOLT +OrderCodeHolyBolt=0,ordercodeutarg,852092,WESTRING_UNITORDERUTARG_HOLYBOLT +OrderCodeRepairO=0,ordercodeutarg,852024,WESTRING_UNITORDERUTARG_REPAIRO +OrderCodeEnsnare=0,ordercodeutarg,852106,WESTRING_UNITORDERUTARG_ENSNARE +OrderCodeUnstableConcoction=1,ordercodeutarg,852500,WESTRING_UNITORDERUTARG_UNSTABLECONCOCTION +OrderCodePurge=0,ordercodeutarg,852111,WESTRING_UNITORDERUTARG_PURGE +OrderCodeLightningShield=0,ordercodeutarg,852110,WESTRING_UNITORDERUTARG_LIGHTNINGSHIELD +OrderCodeBloodlust=0,ordercodeutarg,852101,WESTRING_UNITORDERUTARG_BLOODLUST +OrderCodeSpiritLink=1,ordercodeutarg,854299,WESTRING_UNITORDERUTARG_SPIRITLINK +OrderCodeDevour=0,ordercodeutarg,852104,WESTRING_UNITORDERUTARG_DEVOUR +OrderCodeChainLightning=0,ordercodeutarg,852119,WESTRING_UNITORDERUTARG_CHAINLIGHTNING +OrderCodeHealingWave=1,ordercodeutarg,852501,WESTRING_UNITORDERUTARG_HEALINGWAVE +OrderCodeHex=1,ordercodeutarg,852502,WESTRING_UNITORDERUTARG_HEX +OrderCodeRenew=0,ordercodeutarg,852161,WESTRING_UNITORDERUTARG_RENEW +OrderCodeEntangle=0,ordercodeutarg,852147,WESTRING_UNITORDERUTARG_ENTANGLE +OrderCodeEntangleInstant=0,ordercodeutarg,852148,WESTRING_UNITORDERUTARG_ENTANGLEINSTANT +OrderCodeReplenish=0,ordercodeutarg,852157,WESTRING_UNITORDERUTARG_REPLENISH +OrderCodeLoadArcher=0,ordercodeutarg,852507,WESTRING_UNITORDERUTARG_LOADARCHER +OrderCodeAutoDispel=0,ordercodeutarg,852132,WESTRING_UNITORDERUTARG_AUTODISPEL +OrderCodeFaerieFire=0,ordercodeutarg,852149,WESTRING_UNITORDERUTARG_FAERIEFIRE +OrderCodeCyclone=0,ordercodeutarg,852144,WESTRING_UNITORDERUTARG_CYCLONE +OrderCodeRejuvination=0,ordercodeutarg,852160,WESTRING_UNITORDERUTARG_REJUVINATION +OrderCodeVengeance=1,ordercodeutarg,852521,WESTRING_UNITORDERUTARG_VENGEANCE +OrderCodeManaBurn=0,ordercodeutarg,852179,WESTRING_UNITORDERUTARG_MANABURN +OrderCodeEntanglingRoots=0,ordercodeutarg,852171,WESTRING_UNITORDERUTARG_ENTANGLINGROOTS +OrderCodeShadowStrike=1,ordercodeutarg,852527,WESTRING_UNITORDERUTARG_SHADOWSTRIKE +OrderCodeRestoration=0,ordercodeutarg,852202,WESTRING_UNITORDERUTARG_RESTORE +OrderCodeSacrificeAcolyte=0,ordercodeutarg,852205,WESTRING_UNITORDERUTARG_SACRIFICEACOLYTE +OrderCodeSacrifice=0,ordercodeutarg,852201,WESTRING_UNITORDERUTARG_SACRIFICE +OrderCodeUnsummon=0,ordercodeutarg,852210,WESTRING_UNITORDERUTARG_UNSUMMON +OrderCodeWeb=0,ordercodeutarg,852211,WESTRING_UNITORDERUTARG_WEB +OrderCodeRaiseDead=0,ordercodeutarg,852197,WESTRING_UNITORDERUTARG_RAISEDEAD +OrderCodeUnholyFrenzy=0,ordercodeutarg,852209,WESTRING_UNITORDERUTARG_UNHOLYFRENZY +OrderCodeCripple=0,ordercodeutarg,852189,WESTRING_UNITORDERUTARG_CRIPPLE +OrderCodeCurse=0,ordercodeutarg,852190,WESTRING_UNITORDERUTARG_CURSE +OrderCodeAntiMagicShell=0,ordercodeutarg,852186,WESTRING_UNITORDERUTARG_ANTIMAGICSHELL +OrderCodePossession=0,ordercodeutarg,852196,WESTRING_UNITORDERUTARG_POSSESSION +OrderCodeAbsorbMana=1,ordercodeutarg,852529,WESTRING_UNITORDERUTARG_ABSORBMANA +OrderCodeFlamingAttack=1,ordercodeutarg,852539,WESTRING_UNITORDERUTARG_FLAMINGATTACK +OrderCodeImpale=1,ordercodeutarg,852555,WESTRING_UNITORDERUTARG_IMPALE +OrderCodeCarrionScarabs=1,ordercodeutarg,852551,WESTRING_UNITORDERUTARG_CARRIONSCARABS +OrderCodeDeathCoil=0,ordercodeutarg,852222,WESTRING_UNITORDERUTARG_DEATHCOIL +OrderCodeDeathPact=0,ordercodeutarg,852223,WESTRING_UNITORDERUTARG_DEATHPACT +OrderCodeSleep=0,ordercodeutarg,852227,WESTRING_UNITORDERUTARG_SLEEP +OrderCodeFrostNova=0,ordercodeutarg,852226,WESTRING_UNITORDERUTARG_FROSTNOVA +OrderCodeFrostArmor=0,ordercodeutarg,852225,WESTRING_UNITORDERUTARG_FROSTARMOR +OrderCodeDarkRitual=0,ordercodeutarg,852219,WESTRING_UNITORDERUTARG_DARKRITUAL +OrderTargetCodeBreathOfFrost=1,ordercodeutarg,852560,WESTRING_UNITORDERPTARG_BREATHOFFROST +OrderCodeCreepDevour=1,ordercodeutarg,852247,WESTRING_UNITORDERUTARG_CREEPDEVOUR +OrderCodeFirebolt=0,ordercodeutarg,852231,WESTRING_UNITORDERUTARG_FIREBOLT +OrderCodeCreepHeal=0,ordercodeutarg,852248,WESTRING_UNITORDERUTARG_CREEPHEAL +OrderCodeCreepThunderBolt=0,ordercodeutarg,852252,WESTRING_UNITORDERUTARG_CREEPTHUNDERBOLT +OrderCodeParasite=1,ordercodeutarg,852601,WESTRING_UNITORDERUTARG_PARASITE +OrderCodeSelfDestructUnit=1,ordercodeutarg,852040,WESTRING_UNITORDERUTARG_SELFDESTRUCT +OrderCodeBlackArrow=1,ordercodeutarg,852577,WESTRING_UNITORDERUTARG_BLACKARROW +OrderCodeCharm=1,ordercodeutarg,852581,WESTRING_UNITORDERUTARG_CHARM +OrderCodeLifeDrain=1,ordercodeutarg,852487,WESTRING_UNITORDERUTARG_LIFEDRAIN +OrderCodeColdArrow=1,ordercodeutarg,852243,WESTRING_UNITORDERUTARG_COLDARROW +OrderCodeForkedLightning=1,ordercodeutarg,852587,WESTRING_UNITORDERUTARG_FORKEDLIGHTNING +OrderCodeStrongDrink=1,ordercodeutarg,852585,WESTRING_UNITORDERUTARG_STRONGDRINK +OrderCodeDoom=1,ordercodeutarg,852583,WESTRING_UNITORDERUTARG_DOOM +OrderCodeAcidBomb=1,ordercodeutarg,852662,WESTRING_UNITORDERUTARG_ACIDBOMB +OrderCodeTransmute=1,ordercodeutarg,852665,WESTRING_UNITORDERUTARG_TRANSMUTE +OrderCodeSoulBurn=1,ordercodeutarg,852668,WESTRING_UNITORDERUTARG_SOULBURN +OrderCodePoisonArrow=0,ordercodeutarg,852254,WESTRING_UNITORDERUTARG_POISONARROW +OrderCodeIncinerateArrow=1,ordercodeutarg,852670,WESTRING_UNITORDERUTARG_INCINERATEARROW +OrderCodeFingerOfDeath=0,ordercodeutarg,852230,WESTRING_UNITORDERUTARG_FINGEROFDEATH +OrderCodeDarkConversion=0,ordercodeutarg,852228,WESTRING_UNITORDERUTARG_DARKCONVERSION +OrderCodeSoulPreservation=0,ordercodeutarg,852242,WESTRING_UNITORDERUTARG_SOULPRESERVATION +OrderCodeDarkConversionFast=0,ordercodeutarg,852228,WESTRING_UNITORDERUTARG_DARKCONVERSIONFAST +OrderCodeNeutralInterAct=0,ordercodeutarg,852566,中立商店 - 选择单位 +OrderCodeItemIllusion=1,ordercodeutarg,852274,物品技能 - 幻象权杖 +OrderCodeItemChainDispel=1,ordercodeutarg,852615,物品技能 - 连锁驱逐 +OrderCodeAttack=0,ordercodeptarg,851983,WESTRING_UNITORDERPTARG_ATTACK +OrderCodeAttackGround=0,ordercodeptarg,851984,WESTRING_UNITORDERPTARG_ATTACKGROUND +OrderCodeMove=0,ordercodeptarg,851986,WESTRING_UNITORDERPTARG_MOVE +OrderCodeAIMove=0,ordercodeptarg,851988,AImove +OrderCodePatrol=0,ordercodeptarg,851990,WESTRING_UNITORDERPTARG_PATROL +OrderCodeSmartPoint=1,ordercodeptarg,851971,WESTRING_UNITORDERPTARG_SMART +OrderCodeSetRally=0,ordercodeptarg,851980,WESTRING_UNITORDERPTARG_SETRALLY +OrderCodeUnloadAll=0,ordercodeptarg,`852048`,WESTRING_UNITORDERPTARG_UNLOADALL +OrderCodeFlare=0,ordercodeptarg,852060,WESTRING_UNITORDERPTARG_FLARE +OrderCodeCloudOfFog=1,ordercodeptarg,852473,WESTRING_UNITORDERPTARG_CLOUDOFFOG +OrderCodeReveal=1,ordercodeptarg,852270,人族神秘之塔 - 显示 +OrderCodeBlizzard=0,ordercodeptarg,852089,WESTRING_UNITORDERPTARG_BLIZZARD +OrderCodeFlameStrike=1,ordercodeptarg,852488,WESTRING_UNITORDERPTARG_FLAMESTRIKE +OrderCodeSentryWard=0,ordercodeptarg,852105,WESTRING_UNITORDERPTARG_SENTRYWARD +OrderCodeStasisTrap=0,ordercodeptarg,852114,WESTRING_UNITORDERPTARG_STASISTRAP +OrderCodeHealingWard=0,ordercodeptarg,852109,WESTRING_UNITORDERPTARG_HEALINGWARD +OrderCodeDisenchant=1,ordercodeptarg,852495,WESTRING_UNITORDERPTARG_DISENCHANT +OrderCodeFarSight=0,ordercodeptarg,852122,WESTRING_UNITORDERPTARG_FARSIGHT +OrderCodeEarthquake=0,ordercodeptarg,852121,WESTRING_UNITORDERPTARG_EARTHQUAKE +OrderCodeSerpentWard=1,ordercodeptarg,852504,WESTRING_UNITORDERPTARG_SERPENTWARD +OrderCodeShockwave=0,ordercodeptarg,852125,WESTRING_UNITORDERPTARG_SHOCKWAVE +OrderCodeRoot=0,ordercodeptarg,852165,WESTRING_UNITORDERPTARG_ROOT +OrderCodeDetonate=0,ordercodeptarg,852145,WESTRING_UNITORDERPTARG_DETONATE +OrderCodeForceOfNature=0,ordercodeptarg,852176,WESTRING_UNITORDERPTARG_FORCEOFNATURE +OrderCodeStarfall=0,ordercodeptarg,`obsolete`,WESTRING_UNITORDERPTARG_STARFALL +OrderCodeBlink=1,ordercodeptarg,852525,WESTRING_UNITORDERPTARG_BLINK +OrderCodeDevourMagic=1,ordercodeptarg,852536,WESTRING_UNITORDERPTARG_DEVOURMAGIC +OrderCodeImpalePoint=1,ordercodeptarg,852555,WESTRING_UNITORDERPTARG_IMPALE +OrderCodeCarrionSwarm=0,ordercodeptarg,852218,WESTRING_UNITORDERPTARG_CARRIONSWARM +OrderCodeDarkSummoning=0,ordercodeptarg,852224,WESTRING_UNITORDERPTARG_DARKSUMMONING +OrderCodeDeathAndDecay=0,ordercodeptarg,852221,WESTRING_UNITORDERPTARG_DEATHANDDECAY +OrderCodeBreathOfFrost=1,ordercodeptarg,852560,WESTRING_UNITORDERPTARG_BREATHOFFROST +OrderCodeMonsoon=1,ordercodeptarg,852591,WESTRING_UNITORDERPTARG_MONSOON +OrderCodeSelfDestruct=0,ordercodeptarg,852040,WESTRING_UNITORDERPTARG_SELFDESTRUCT +OrderCodeInferno=0,ordercodeptarg,852232,WESTRING_UNITORDERPTARG_INFERNO +OrderCodeStampede=1,ordercodeptarg,852593,WESTRING_UNITORDERPTARG_STAMPEDE +OrderCodeSilence=1,ordercodeptarg,852592,WESTRING_UNITORDERPTARG_SILENCE +OrderCodeTornado=1,ordercodeptarg,852597,WESTRING_UNITORDERPTARG_TORNADO +OrderCodeBreathOfFire=1,ordercodeptarg,852580,WESTRING_UNITORDERPTARG_BREATHOFFIRE +OrderCodeHeroRainOfFire=1,ordercodeptarg,852238,WESTRING_UNITORDERPTARG_HERORAINOFFIRE +OrderCodeHealingSpray=1,ordercodeptarg,852664,WESTRING_UNITORDERPTARG_HEALINGSPRAY +OrderCodeClusterRockets=1,ordercodeptarg,852652,WESTRING_UNITORDERPTARG_CLUSTERROCKETS +OrderCodeSummonFactory=1,ordercodeptarg,852658,WESTRING_UNITORDERPTARG_SUMMONFACTORY +OrderCodeVolcano=1,ordercodeptarg,852669,WESTRING_UNITORDERPTARG_VOLCANO +OrderCodeDarkPortal=0,ordercodeptarg,852229,WESTRING_UNITORDERPTARG_DARKPORTAL +OrderCodeRainOfChaos=0,ordercodeptarg,852237,WESTRING_UNITORDERPTARG_RAINOFCHAOS +OrderCodeRainOfFire=0,ordercodeptarg,852238,WESTRING_UNITORDERPTARG_RAINOFFIRE +OrderCodeDarkSummoningOld=0,ordercodeptarg,852220,WESTRING_UNITORDERPTARG_DARKSUMMONINGOLD +OrderCodeNeutralDetectAOE=0,ordercodeptarg,852023,地精实验室 - 侦查 +OrderCodeAttackDestructible=0,ordercodedtarg,851983,WESTRING_UNITORDERDTARG_ATTACK +OrderCodeAttackDestructibleOnce=0,ordercodedtarg,851985,WESTRING_UNITORDERUTARG_ATTACKONCE +OrderCodeSmartDestructible=1,ordercodedtarg,851971,WESTRING_UNITORDERDTARG_SMART +OrderCodeSetRallyDestructible=0,ordercodedtarg,851980,WESTRING_UNITORDERPTARG_SETRALLY +OrderCodeHarvestDestructible=0,ordercodedtarg,852018,WESTRING_UNITORDERDTARG_HARVEST +OrderCodeMoveDestructible=0,ordercodedtarg,851986,WESTRING_UNITORDERPTARG_MOVE +OrderCodeAIMoveDestructible=0,ordercodedtarg,851988,AImove +OrderCodeConsumeTree=0,ordercodedtarg,852146,WESTRING_UNITORDERDTARG_CONSUMETREE +OrderCodeSentinel=0,ordercodedtarg,852182,WESTRING_UNITORDERDTARG_SENTINEL +OrderCodeGrabTree=1,ordercodedtarg,852511,WESTRING_UNITORDERDTARG_GRABTREE +OrderCodeAttackItem=1,ordercodeitarg,851983,WESTRING_UNITORDERITARG_ATTACK +OrderCodeAttackItemOnce=1,ordercodeitarg,851985,WESTRING_UNITORDERITARG_ATTACKONCE +OrderCodeSmartItem=1,ordercodeitarg,851988,WESTRING_UNITORDERITARG_SMART +OrderCodeSetRallyItem=0,ordercodeitarg,851980,WESTRING_UNITORDERPTARG_SETRALLY +OrderCodeMoveItem0=1,ordercodeitarg,852002,移动物品到第1格 +OrderCodeMoveItem1=1,ordercodeitarg,852003,移动物品到第2格 +OrderCodeMoveItem2=1,ordercodeitarg,852004,移动物品到第3格 +OrderCodeMoveItem3=1,ordercodeitarg,852005,移动物品到第4格 +OrderCodeMoveItem4=1,ordercodeitarg,852006,移动物品到第5格 +OrderCodeMoveItem5=1,ordercodeitarg,852007,移动物品到第6格 +OrderCodeRandomItem=1,ordercodeitarg,852622,物品技能 - 随机物品 +OrderCodeStop=0,ordercodenotarg,851972,WESTRING_UNITORDERNOTARG_STOP +OrderCodeStun=0,ordercodeutarg,851973,昏迷 [New!] +OrderCodeHoldPosition=0,ordercodenotarg,851993,WESTRING_UNITORDERNOTARG_HOLDPOSITION +OrderCodeAutoHarvestGold=0,ordercodenotarg,852021,WESTRING_UNITORDERNOTARG_AUTOHARVESTGOLD +OrderCodeAutoHarvestLumber=0,ordercodenotarg,852022,WESTRING_UNITORDERNOTARG_AUTOHARVESTLUMBER +OrderCodeReturnResources=0,ordercodenotarg,852020,WESTRING_UNITORDERNOTARG_RETURNRESOURCES +OrderCodeBuild=1,ordercodenotarg,851994,WESTRING_UNITORDERNOTARG_BUILD +OrderCodeHeroSkill=1,ordercodenotarg,852000,打开技能菜单 +OrderCodeCancel=0,ordercodenotarg,851976,取消(训练、升级、研究) +OrderCodeUseItem0=1,ordercodenotarg,852008,使用第1格物品(无效) +OrderCodeUseItem1=1,ordercodenotarg,852009,使用第2格物品(无效) +OrderCodeUseItem2=1,ordercodenotarg,852010,使用第3格物品(无效) +OrderCodeUseItem3=1,ordercodenotarg,852011,使用第4格物品(无效) +OrderCodeUseItem4=1,ordercodenotarg,852012,使用第5格物品(无效) +OrderCodeUseItem5=1,ordercodenotarg,852013,使用第6格物品(无效) +OrderCodeHumanBuild=1,ordercodenotarg,851995,WESTRING_UNITORDERNOTARG_HUMANBUILD +OrderCodeTownBellOn=0,ordercodenotarg,852082,WESTRING_UNITORDERNOTARG_TOWNBELLON +OrderCodeTownBellOff=0,ordercodenotarg,852083,WESTRING_UNITORDERNOTARG_TOWNBELLOFF +OrderCodeMilitia=0,ordercodenotarg,852072,WESTRING_UNITORDERNOTARG_MILITIA +OrderCodeMilitiaOff=0,ordercodenotarg,852073,WESTRING_UNITORDERNOTARG_MILITIAOFF +OrderCodeRepairOn=0,ordercodenotarg,852025,WESTRING_UNITORDERNOTARG_REPAIRON +OrderCodeRepairOff=0,ordercodenotarg,852026,WESTRING_UNITORDERNOTARG_REPAIROFF +OrderCodeDefend=0,ordercodenotarg,852055,WESTRING_UNITORDERNOTARG_DEFEND +OrderCodeUnDefend=0,ordercodenotarg,852056,WESTRING_UNITORDERNOTARG_UNDEFEND +OrderCodeHealOn=0,ordercodenotarg,852064,WESTRING_UNITORDERNOTARG_HEALON +OrderCodeHealOff=0,ordercodenotarg,852065,WESTRING_UNITORDERNOTARG_HEALOFF +OrderCodeInnerFireOn=0,ordercodenotarg,852067,WESTRING_UNITORDERNOTARG_INNERFIREON +OrderCodeInnerFireOff=0,ordercodenotarg,852068,WESTRING_UNITORDERNOTARG_INNERFIREOFF +OrderCodeSlowOn=0,ordercodenotarg,852076,WESTRING_UNITORDERNOTARG_SLOWON +OrderCodeSlowOff=0,ordercodenotarg,852077,WESTRING_UNITORDERNOTARG_SLOWOFF +OrderCodeSpellStealOn=1,ordercodenotarg,852484,WESTRING_UNITORDERNOTARG_SPELLSTEALON +OrderCodeSpellStealOff=1,ordercodenotarg,852485,WESTRING_UNITORDERNOTARG_SPELLSTEALOFF +OrderCodeMagicDefense=1,ordercodenotarg,852478,人族破法者 - 激活魔法防御 +OrderCodeMagicUnDefense=1,ordercodenotarg,852479,人族破法者 - 取消魔法防御 +OrderCodeWaterElemental=0,ordercodenotarg,852097,WESTRING_UNITORDERNOTARG_WATERELEMENTAL +OrderCodePhoenix=1,ordercodenotarg,852489,WESTRING_UNITORDERNOTARG_PHOENIX +OrderCodeThunderClap=0,ordercodenotarg,852096,WESTRING_UNITORDERNOTARG_THUNDERCLAP +OrderCodeAvatar=0,ordercodenotarg,852086,WESTRING_UNITORDERNOTARG_AVATAR +OrderCodeDivineShield=0,ordercodenotarg,852090,WESTRING_UNITORDERNOTARG_DIVINESHIELD +OrderCodeUnDivineShield=0,ordercodenotarg,852091,WESTRING_UNITORDERNOTARG_UNDIVINESHIELD +OrderCodeResurrection=0,ordercodenotarg,852094,WESTRING_UNITORDERNOTARG_RESURRECTION +OrderCodeOrcBuild=1,ordercodenotarg,851996,WESTRING_UNITORDERNOTARG_ORCBUILD +OrderCodeBattleStations=0,ordercodenotarg,852099,WESTRING_UNITORDERNOTARG_BATTLESTATIONS +OrderCodeStandDown=0,ordercodenotarg,852113,WESTRING_UNITORDERNOTARG_STANDDOWN +OrderCodeRepairOOn=0,ordercodenotarg,852025,WESTRING_UNITORDERNOTARG_REPAIROON +OrderCodeRepairOOff=0,ordercodenotarg,852026,WESTRING_UNITORDERNOTARG_REPAIROOFF +OrderCodeBerserk=1,ordercodenotarg,852100,WESTRING_UNITORDERNOTARG_BERSERK +OrderCodeBloodlustOn=0,ordercodenotarg,852102,WESTRING_UNITORDERNOTARG_BLOODLUSTON +OrderCodeBloodlustOff=0,ordercodenotarg,852103,WESTRING_UNITORDERNOTARG_BLOODLUSTOFF +OrderCodeAncestralSpirit=1,ordercodenotarg,852490,WESTRING_UNITORDERNOTARG_ANCESTRALSPIRIT +OrderCodeEtherealForm=1,ordercodenotarg,852494,WESTRING_UNITORDERNOTARG_ETHEREALFORM +OrderCodeCorporealForm=1,ordercodenotarg,852493,WESTRING_UNITORDERNOTARG_CORPOREALFORM +OrderCodeWindWalk=0,ordercodenotarg,852129,WESTRING_UNITORDERNOTARG_WINDWALK +OrderCodeMirrorImage=0,ordercodenotarg,852123,WESTRING_UNITORDERNOTARG_MIRRORIMAGE +OrderCodeWhirlWind=0,ordercodenotarg,852128,WESTRING_UNITORDERNOTARG_BLADESTORM +OrderCodeSpiritWolf=0,ordercodenotarg,852126,WESTRING_UNITORDERNOTARG_FERALSPIRIT +OrderCodeVoodoo=1,ordercodenotarg,852503,WESTRING_UNITORDERNOTARG_VOODOO +OrderCodeStomp=0,ordercodenotarg,852127,WESTRING_UNITORDERNOTARG_WARSTOMP +OrderCodeNightElfBuild=1,ordercodenotarg,851997,WESTRING_UNITORDERNOTARG_NIGHTELFBUILD +OrderCodeUnRoot=0,ordercodenotarg,852166,WESTRING_UNITORDERNOTARG_UNROOT +OrderCodeAutoEntangle=1,ordercodenotarg,852505,WESTRING_UNITORDERNOTARG_AUTOENTANGLE +OrderCodeAutoEntangleInstant=1,ordercodenotarg,852506,WESTRING_UNITORDERNOTARG_AUTOENTANGLEINSTANT +OrderCodeReplenishOn=1,ordercodenotarg,852158,WESTRING_UNITORDERNOTARG_REPLENISHON +OrderCodeReplenishOff=1,ordercodenotarg,852159,WESTRING_UNITORDERNOTARG_REPLENISHOFF +OrderCodeAmbush=0,ordercodenotarg,852131,WESTRING_UNITORDERNOTARG_HIDE +OrderCodeRenewOn=0,ordercodenotarg,852162,WESTRING_UNITORDERNOTARG_RENEWON +OrderCodeRenewOff=0,ordercodenotarg,852163,WESTRING_UNITORDERNOTARG_RENEWOFF +OrderCodeCoupleInstant1=1,ordercodenotarg,852508,WESTRING_UNITORDERNOTARG_COUPLEINSTANT1 +OrderCodeCoupleInstant2=1,ordercodenotarg,852508,WESTRING_UNITORDERNOTARG_COUPLEINSTANT2 +OrderCodeDecouple=1,ordercodenotarg,852509,WESTRING_UNITORDERNOTARG_DECOUPLE +OrderCodeAutoDispelOn=0,ordercodenotarg,852133,WESTRING_UNITORDERNOTARG_AUTODISPELON +OrderCodeAutoDispelOff=0,ordercodenotarg,852134,WESTRING_UNITORDERNOTARG_AUTODISPELOFF +OrderCodeFaerieFireOn=0,ordercodenotarg,852150,WESTRING_UNITORDERNOTARG_FAERIEFIREON +OrderCodeFaerieFireOff=0,ordercodenotarg,852151,WESTRING_UNITORDERNOTARG_FAERIEFIREOFF +OrderCodeRavenForm=0,ordercodenotarg,852155,WESTRING_UNITORDERNOTARG_RAVENFORM +OrderCodeUnRavenForm=0,ordercodenotarg,852156,WESTRING_UNITORDERNOTARG_UNRAVENFORM +OrderCodeRoar=0,ordercodenotarg,852164,WESTRING_UNITORDERNOTARG_ROAR +OrderCodeBearForm=0,ordercodenotarg,852138,WESTRING_UNITORDERNOTARG_BEARFORM +OrderCodeUnBearForm=0,ordercodenotarg,852139,WESTRING_UNITORDERNOTARG_UNBEARFORM +OrderCodeTaunt=1,ordercodenotarg,852520,WESTRING_UNITORDERNOTARG_TAUNT +OrderCodeManaFlareOn=1,ordercodenotarg,852512,WESTRING_UNITORDERNOTARG_MANAFLAREON +OrderCodeManaFlareOff=1,ordercodenotarg,852513,WESTRING_UNITORDERNOTARG_MANAFLAREOFF +OrderCodePhaseShift=1,ordercodenotarg,852514,WESTRING_UNITORDERNOTARG_PHASESHIFT +OrderCodePhaseShiftOn=1,ordercodenotarg,852515,WESTRING_UNITORDERNOTARG_PHASESHIFTON +OrderCodePhaseShiftOff=1,ordercodenotarg,852516,WESTRING_UNITORDERNOTARG_PHASESHIFTOFF +OrderCodeVengeanceInstant=1,ordercodenotarg,852524,WESTRING_UNITORDERNOTARG_VENGEANCEINSTANT +OrderCodeVengeanceOn=1,ordercodenotarg,852522,WESTRING_UNITORDERNOTARG_VENGEANCEON +OrderCodeVengeanceOff=1,ordercodenotarg,852523,WESTRING_UNITORDERNOTARG_VENGEANCEOFF +OrderCodeImmolation=0,ordercodenotarg,852177,WESTRING_UNITORDERNOTARG_IMMOLATION +OrderCodeUnImmolation=0,ordercodenotarg,852178,WESTRING_UNITORDERNOTARG_UNIMMOLATION +OrderCodeMetamorphosis=0,ordercodenotarg,852180,WESTRING_UNITORDERNOTARG_METAMORPHOSIS +OrderCodeTranquility=0,ordercodenotarg,852184,WESTRING_UNITORDERNOTARG_TRANQUILITY +OrderCodeSearingArrows=0,ordercodenotarg,852174,WESTRING_UNITORDERNOTARG_SEARINGARROWS +OrderCodeUnSearingArrows=0,ordercodenotarg,852175,WESTRING_UNITORDERNOTARG_UNSEARINGARROWS +OrderCodeScout=0,ordercodenotarg,852181,WESTRING_UNITORDERNOTARG_SCOUT +OrderCodeStarfall2=0,ordercodenotarg,852183,WESTRING_UNITORDERNOTARG_STARFALL +OrderCodeFanOfKnives=1,ordercodenotarg,852526,WESTRING_UNITORDERNOTARG_FANOFKNIVES +OrderCodeSpiritOfVengeance=1,ordercodenotarg,852528,WESTRING_UNITORDERNOTARG_SPIRITOFVENGEANCE +OrderCodeUndeadBuild=1,ordercodenotarg,851998,WESTRING_UNITORDERNOTARG_UNDEADBUILD +OrderCodeRestorationOn=0,ordercodenotarg,852203,WESTRING_UNITORDERNOTARG_RESTOREON +OrderCodeRestorationOff=0,ordercodenotarg,852204,WESTRING_UNITORDERNOTARG_RESTOREOFF +OrderCodeCannibalize=0,ordercodenotarg,852188,WESTRING_UNITORDERNOTARG_CANNIBALIZE +OrderCodeWebOn=0,ordercodenotarg,852212,WESTRING_UNITORDERNOTARG_WEBON +OrderCodeWebOff=0,ordercodenotarg,852213,WESTRING_UNITORDERNOTARG_WEBOFF +OrderCodeBurrow=1,ordercodenotarg,852533,WESTRING_UNITORDERNOTARG_BURROW +OrderCodeUnBurrow=1,ordercodenotarg,852534,WESTRING_UNITORDERNOTARG_UNBURROW +OrderCodeLoadCorpse=0,ordercodenotarg,852050,WESTRING_UNITORDERNOTARG_LOADCORPSE +OrderCodeUnloadAllCorpses=0,ordercodenotarg,852054,WESTRING_UNITORDERNOTARG_UNLOADALLCORPSES +OrderCodeStoneForm=0,ordercodenotarg,852206,WESTRING_UNITORDERNOTARG_STONEFORM +OrderCodeUnStoneForm=0,ordercodenotarg,852207,WESTRING_UNITORDERNOTARG_UNSTONEFORM +OrderCodeRaiseDeadInstant=1,ordercodenotarg,852200,WESTRING_UNITORDERNOTARG_RAISEDEAD +OrderCodeRaiseDeadOn=0,ordercodenotarg,852198,WESTRING_UNITORDERNOTARG_RAISEDEADON +OrderCodeRaiseDeadOff=0,ordercodenotarg,852199,WESTRING_UNITORDERNOTARG_RAISEDEADOFF +OrderCodeCurseOn=0,ordercodenotarg,852191,WESTRING_UNITORDERNOTARG_CURSEON +OrderCodeCurseOff=0,ordercodenotarg,852192,WESTRING_UNITORDERNOTARG_CURSEOFF +OrderCodeFlamingAttackOn=1,ordercodenotarg,852540,WESTRING_UNITORDERNOTARG_FLAMINGATTACKON +OrderCodeFlamingAttackOff=1,ordercodenotarg,852541,WESTRING_UNITORDERNOTARG_FLAMINGATTACKOFF +OrderCodeSphinxForm=1,ordercodenotarg,852531,WESTRING_UNITORDERNOTARG_SPHINXFORM +OrderCodeReplenishLife=1,ordercodenotarg,852545,WESTRING_UNITORDERNOTARG_REPLENISHLIFE +OrderCodeReplenishLifeOn=1,ordercodenotarg,852546,WESTRING_UNITORDERNOTARG_REPLENISHLIFEON +OrderCodeReplenishLifeOff=1,ordercodenotarg,852547,WESTRING_UNITORDERNOTARG_REPLENISHLIFEOFF +OrderCodeReplenishMana=1,ordercodenotarg,852548,WESTRING_UNITORDERNOTARG_REPLENISHMANA +OrderCodeReplenishManaOn=1,ordercodenotarg,852549,WESTRING_UNITORDERNOTARG_REPLENISHMANAON +OrderCodeReplenishManaOff=1,ordercodenotarg,852550,WESTRING_UNITORDERNOTARG_REPLENISHMANAOFF +OrderCodeCarrionScarabsInstant=1,ordercodenotarg,852554,"不死族地穴领主 - 召唤腐尸甲虫" +OrderCodeCarrionScarabsOn=1,ordercodenotarg,852552,WESTRING_UNITORDERNOTARG_CARRIONSCARABSON +OrderCodeCarrionScarabsOff=1,ordercodenotarg,852553,WESTRING_UNITORDERNOTARG_CARRIONSCARABSOFF +OrderCodeCarrionScarabsInstant=1,ordercodenotarg,852554,WESTRING_UNITORDERNOTARG_CARRIONSCARABS +OrderCodeLocustSwarm=1,ordercodenotarg,852556,WESTRING_UNITORDERNOTARG_LOCUSTSWARM +OrderCodeAnimateDead=0,ordercodenotarg,852217,WESTRING_UNITORDERNOTARG_ANIMATEDEAD +OrderCodeFrostArmorOn=0,ordercodenotarg,852458,WESTRING_UNITORDERNOTARG_FROSTARMORON +OrderCodeFrostArmorOff=0,ordercodenotarg,852459,WESTRING_UNITORDERNOTARG_FROSTARMOROFF +OrderCodeNagaBuild=1,ordercodenotarg,852467,WESTRING_UNITORDERNOTARG_NAGABUILD +OrderCodeSubmerge=1,ordercodenotarg,852604,娜迦 - 潜水 +OrderCodeUnSubmerge=1,ordercodenotarg,852605,娜迦 - 取消潜水 +OrderCodeParasiteOn=1,ordercodenotarg,852602,娜迦海妖 - 激活寄生虫 +OrderCodeParasiteOff=1,ordercodenotarg,852603,娜迦海妖 - 取消寄生虫 +OrderCodeCreepAnimateDead=0,ordercodenotarg,852246,WESTRING_UNITORDERNOTARG_CREEPANIMATEDEAD +OrderCodeCreepHealOn=0,ordercodenotarg,852249,WESTRING_UNITORDERNOTARG_CREEPHEALON +OrderCodeCreepHealOff=0,ordercodenotarg,852250,WESTRING_UNITORDERNOTARG_CREEPHEALOFF +OrderCodeRevenge=0,ordercodenotarg,852241,WESTRING_UNITORDERNOTARG_REVENGE +OrderCodeCreepThunderClap=0,ordercodenotarg,852253,WESTRING_UNITORDERNOTARG_CREEPTHUNDERCLAP +OrderCodeWateryMinion=1,ordercodenotarg,852598,WESTRING_UNITORDERNOTARG_WATERYMINION +OrderCodeSelfDestructOn=1,ordercodenotarg,852041,WESTRING_UNITORDERNOTARG_SELFDESTRUCTON +OrderCodeSelfDestructOff=1,ordercodenotarg,852042,WESTRING_UNITORDERNOTARG_SELFDESTRUCTOFF +OrderCodeSummonGrizzly=1,ordercodenotarg,852594,WESTRING_UNITORDERNOTARG_SUMMONGRIZZLY +OrderCodeSummonQuillbeast=1,ordercodenotarg,852595,WESTRING_UNITORDERNOTARG_SUMMONQUILLBEAST +OrderCodeSummonWarEagle=1,ordercodenotarg,852596,WESTRING_UNITORDERNOTARG_SUMMONWAREAGLE +OrderCodeBlackArrowOn=1,ordercodenotarg,852578,WESTRING_UNITORDERNOTARG_BLACKARROWON +OrderCodeBlackArrowOff=1,ordercodenotarg,852579,WESTRING_UNITORDERNOTARG_BLACKARROWOFF +OrderCodeColdArrowOn=1,ordercodenotarg,852244,WESTRING_UNITORDERNOTARG_COLDARROWON +OrderCodeColdArrowOff=1,ordercodenotarg,852245,WESTRING_UNITORDERNOTARG_COLDARROWOFF +OrderCodeManaShieldOn=1,ordercodenotarg,852589,WESTRING_UNITORDERNOTARG_MANASHIELDON +OrderCodeManaShieldOff=1,ordercodenotarg,852590,WESTRING_UNITORDERNOTARG_MANASHIELDOFF +OrderCodeElementalFury=1,ordercodenotarg,852586,WESTRING_UNITORDERNOTARG_ELEMENTALFURY +OrderCodeHowlOfTerror=1,ordercodenotarg,852588,WESTRING_UNITORDERNOTARG_HOWLOFTERROR +OrderCodePoisonArrows=0,ordercodenotarg,852255,WESTRING_UNITORDERNOTARG_POISONARROWON +OrderCodeUnPoisonArrows=0,ordercodenotarg,852256,WESTRING_UNITORDERNOTARG_POISONARROWOFF +OrderCodeChemicalRage=1,ordercodenotarg,852663,WESTRING_UNITORDERNOTARG_CHEMICALRAGE +OrderCodeRoboGoblin=1,ordercodenotarg,852656,WESTRING_UNITORDERNOTARG_ROBOGOBLIN +OrderCodeUnRoboGoblin=1,ordercodenotarg,852657,WESTRING_UNITORDERNOTARG_UNROBOGOBLIN +OrderCodeLavaMonster=1,ordercodenotarg,852667,WESTRING_UNITORDERNOTARG_LAVAMONSTER +OrderCodeIncinerateArrowOn=1,ordercodenotarg,852671,WESTRING_UNITORDERNOTARG_INCINERATEARROWON +OrderCodeIncinerateArrowOff=1,ordercodenotarg,852672,WESTRING_UNITORDERNOTARG_INCINERATEARROWOFF +OrderCodeChannel=1,ordercodenotarg,852600,WESTRING_UNITORDERNOTARG_CHANNEL +OrderCodeMedivhRavenForm=0,ordercodenotarg,852155,WESTRING_UNITORDERNOTARG_MEDIVHRAVENFORM +OrderCodeMedivhUnRavenForm=0,ordercodenotarg,852156,WESTRING_UNITORDERNOTARG_MEDIVHUNRAVENFORM +OrderCodeRexxarBattleRoar=1,ordercodenotarg,852599,WESTRING_UNITORDERNOTARG_REXXARBATTLEROAR +OrderCodeColdArrows=0,ordercodenotarg,852244,WESTRING_UNITORDERNOTARG_COLDARROWS +OrderCodeUnColdArrows=0,ordercodenotarg,852245,WESTRING_UNITORDERNOTARG_UNCOLDARROWS +OrderCodeDustOfAppearance=1,ordercodenotarg,852621,物品技能 - 月亮石 +OrderCodeDustOfAppearance=1,ordercodenotarg,852625,物品技能 - 显影之尘 +HeroSkillBlizzard=0,heroskillcode,'AHbz',WESTRING_HEROSKILL_BLIZZARD +HeroSkillWaterElemental=0,heroskillcode,'AHwe',WESTRING_HEROSKILL_WATERELEMENTAL +HeroSkillBrillianceAura=0,heroskillcode,'AHab',WESTRING_HEROSKILL_BRILLIANCEAURA +HeroSkillMassTeleport=0,heroskillcode,'AHmt',WESTRING_HEROSKILL_MASSTELEPORT +HeroSkillFlameStrike=1,heroskillcode,'AHfs',WESTRING_HEROSKILL_FLAMESTRIKE +HeroSkillBanish=1,heroskillcode,'AHbn',WESTRING_HEROSKILL_BANISH +HeroSkillSiphonMana=1,heroskillcode,'AHdr',WESTRING_HEROSKILL_SIPHONMANA +HeroSkillPhoenix=1,heroskillcode,'AHpx',WESTRING_HEROSKILL_PHOENIX +HeroSkillStormBolt=0,heroskillcode,'AHtb',WESTRING_HEROSKILL_STORMBOLT +HeroSkillThunderClap=0,heroskillcode,'AHtc',WESTRING_HEROSKILL_THUNDERCLAP +HeroSkillBash=0,heroskillcode,'AHbh',WESTRING_HEROSKILL_BASH +HeroSkillAvatar=0,heroskillcode,'AHav',WESTRING_HEROSKILL_AVATAR +HeroSkillDivineShield=0,heroskillcode,'AHds',WESTRING_HEROSKILL_DIVINESHIELD +HeroSkillHolyBolt=0,heroskillcode,'AHhb',WESTRING_HEROSKILL_HOLYBOLT +HeroSkillDevotionAura=0,heroskillcode,'AHad',WESTRING_HEROSKILL_DEVOTIONAURA +HeroSkillResurrection=0,heroskillcode,'AHre',WESTRING_HEROSKILL_RESURRECTION +HeroSkillWindWalk=0,heroskillcode,'AOwk',WESTRING_HEROSKILL_WINDWALK +HeroSkillMirrorImage=0,heroskillcode,'AOmi',WESTRING_HEROSKILL_MIRRORIMAGE +HeroSkillCriticalStrike=0,heroskillcode,'AOcr',WESTRING_HEROSKILL_CRITICALSTRIKE +HeroSkillWhirlwind=0,heroskillcode,'AOww',WESTRING_HEROSKILL_WHIRLWIND +HeroSkillChainLightning=0,heroskillcode,'AOcl',WESTRING_HEROSKILL_CHAINLIGHTNING +HeroSkillFarSight=0,heroskillcode,'AOfs',WESTRING_HEROSKILL_FARSIGHT +HeroSkillSpiritWolf=0,heroskillcode,'AOsf',WESTRING_HEROSKILL_SPIRITWOLF +HeroSkillEarthquake=0,heroskillcode,'AOeq',WESTRING_HEROSKILL_EARTHQUAKE +HeroSkillHealingWave=1,heroskillcode,'AOhw',WESTRING_HEROSKILL_HEALINGWAVE +HeroSkillHex=1,heroskillcode,'AOhx',WESTRING_HEROSKILL_HEX +HeroSkillSerpentWard=1,heroskillcode,'AOsw',WESTRING_HEROSKILL_SERPENTWARD +HeroSkillVoodoo=1,heroskillcode,'AOvd',WESTRING_HEROSKILL_VOODOO +HeroSkillShockwave=0,heroskillcode,'AOsh',WESTRING_HEROSKILL_SHOCKWAVE +HeroSkillWarStomp=0,heroskillcode,'AOws',WESTRING_HEROSKILL_WARSTOMP +HeroSkillEnduranceAura=0,heroskillcode,'AOae',WESTRING_HEROSKILL_ENDURANCEAURA +HeroSkillReincarnation=0,heroskillcode,'AOre',WESTRING_HEROSKILL_REINCARNATION +HeroSkillImpale=1,heroskillcode,'AUim',WESTRING_HEROSKILL_IMPALE +HeroSkillThornyShield=1,heroskillcode,'AUts',WESTRING_HEROSKILL_THORNYSHIELD +HeroSkillCarrionScarabs=1,heroskillcode,'AUcb',WESTRING_HEROSKILL_CARRIONSCARABS +HeroSkillLocustSwarm=1,heroskillcode,'AUls',WESTRING_HEROSKILL_LOCUSTSWARM +HeroSkillDeathCoil=0,heroskillcode,'AUdc',WESTRING_HEROSKILL_DEATHCOIL +HeroSkillDeathPact=0,heroskillcode,'AUdp',WESTRING_HEROSKILL_DEATHPACT +HeroSkillUnholyAura=0,heroskillcode,'AUau',WESTRING_HEROSKILL_UNHOLYAURA +HeroSkillAnimateDead=0,heroskillcode,'AUan',WESTRING_HEROSKILL_ANIMATEDEAD +HeroSkillCarrionSwarm=0,heroskillcode,'AUcs',WESTRING_HEROSKILL_CARRIONSWARM +HeroSkillSleep=0,heroskillcode,'AUsl',WESTRING_HEROSKILL_SLEEP +HeroSkillVampiricAura=0,heroskillcode,'AUav',WESTRING_HEROSKILL_VAMPIRICAURA +HeroSkillDarkSummoning=0,heroskillcode,'AUin',WESTRING_HEROSKILL_DARKSUMMONING +HeroSkillFrostNova=0,heroskillcode,'AUfn',WESTRING_HEROSKILL_FROSTNOVA +HeroSkillFrostArmor=0,heroskillcode,'AUfa',WESTRING_HEROSKILL_FROSTARMOR +HeroSkillDarkRitual=0,heroskillcode,'AUdr',WESTRING_HEROSKILL_DARKRITUAL +HeroSkillDeathAndDecay=0,heroskillcode,'AUdd',WESTRING_HEROSKILL_DEATHANDDECAY +HeroSkillManaBurn=0,heroskillcode,'AEmb',WESTRING_HEROSKILL_MANABURN +HeroSkillImmolation=0,heroskillcode,'AEim',WESTRING_HEROSKILL_IMMOLATION +HeroSkillEvasion=0,heroskillcode,'AEev',WESTRING_HEROSKILL_EVASION +HeroSkillMetamorphosis=0,heroskillcode,'AEme',WESTRING_HEROSKILL_METAMORPHOSIS +HeroSkillEntanglingRoots=0,heroskillcode,'AEer',WESTRING_HEROSKILL_ENTANGLINGROOTS +HeroSkillForceOfNature=0,heroskillcode,'AEfn',WESTRING_HEROSKILL_FORCEOFNATURE +HeroSkillThornsAura=0,heroskillcode,'AEah',WESTRING_HEROSKILL_THORNSAURA +HeroSkillTranquility=0,heroskillcode,'AEtq',WESTRING_HEROSKILL_TRANQUILITY +HeroSkillScout=0,heroskillcode,'AEst',WESTRING_HEROSKILL_SCOUT +HeroSkillSearingArrows=0,heroskillcode,'AHfa',WESTRING_HEROSKILL_SEARINGARROWS +HeroSkillTrueshotAura=0,heroskillcode,'AEar',WESTRING_HEROSKILL_TRUESHOTAURA +HeroSkillStarfall=0,heroskillcode,'AEsf',WESTRING_HEROSKILL_STARFALL +HeroSkillFanOfKnives=1,heroskillcode,'AEfk',WESTRING_HEROSKILL_FANOFKNIVES +HeroSkillBlink=1,heroskillcode,'AEbl',WESTRING_HEROSKILL_BLINK +HeroSkillShadowTouch=1,heroskillcode,'AEsh',WESTRING_HEROSKILL_SHADOWTOUCH +HeroSkillSpiritOfVengeance=1,heroskillcode,'AEsv',WESTRING_HEROSKILL_SPIRITOFVENGEANCE +HeroSkillGrizzly=1,heroskillcode,'ANsg',WESTRING_HEROSKILL_GRIZZLY +HeroSkillQuillbeast=1,heroskillcode,'ANsq',WESTRING_HEROSKILL_QUILLBEAST +HeroSkillWarEagle=1,heroskillcode,'ANsw',WESTRING_HEROSKILL_WAREAGLE +HeroSkillStampede=1,heroskillcode,'ANst',WESTRING_HEROSKILL_STAMPEDE +HeroSkillSilence=1,heroskillcode,'ANsi',WESTRING_HEROSKILL_SILENCE +HeroSkillBlackArrow=1,heroskillcode,'ANba',WESTRING_HEROSKILL_BLACKARROW +HeroSkillLifeDrain=1,heroskillcode,'ANdr',WESTRING_HEROSKILL_LIFEDRAIN +HeroSkillCharm=1,heroskillcode,'ANch',WESTRING_HEROSKILL_CHARM +HeroSkillForkedLightning=1,heroskillcode,'ANfl',WESTRING_HEROSKILL_FORKEDLIGHTNING +HeroSkillColdArrow=1,heroskillcode,'ANfa',WESTRING_HEROSKILL_COLDARROW +HeroSkillManaShield=1,heroskillcode,'ANms',WESTRING_HEROSKILL_MANASHIELD +HeroSkillTornado=1,heroskillcode,'ANto',WESTRING_HEROSKILL_TORNADO +HeroSkillBreathOfFire=1,heroskillcode,'ANbf',WESTRING_HEROSKILL_BREATHOFFIRE +HeroSkillStrongDrink=1,heroskillcode,'ANdh',WESTRING_HEROSKILL_STRONGDRINK +HeroSkillDrunkenBrawler=1,heroskillcode,'ANdb',WESTRING_HEROSKILL_DRUNKENBRAWLER +HeroSkillElementalFury=1,heroskillcode,'ANef',WESTRING_HEROSKILL_ELEMENTALFURY +HeroSkillRainOfFire=1,heroskillcode,'ANrf',WESTRING_HEROSKILL_RAINOFFIRE +HeroSkillHowlOfTerror=1,heroskillcode,'ANht',WESTRING_HEROSKILL_HOWLOFTERROR +HeroSkillCleavingAttack=1,heroskillcode,'ANca',WESTRING_HEROSKILL_CLEAVINGATTACK +HeroSkillDoom=1,heroskillcode,'ANdo',WESTRING_HEROSKILL_DOOM +HeroSkillAcidBomb=1,heroskillcode,'ANab',WESTRING_HEROSKILL_ACIDBOMB +HeroSkillChemicalRage=1,heroskillcode,'ANcr',WESTRING_HEROSKILL_CHEMICALRAGE +HeroSkillHealingSpray=1,heroskillcode,'ANhs',WESTRING_HEROSKILL_HEALINGSPRAY +HeroSkillTransmute=1,heroskillcode,'ANtm',WESTRING_HEROSKILL_TRANSMUTE +HeroSkillEngineeringUpgrade=1,heroskillcode,'ANeg',WESTRING_HEROSKILL_ENGINEERINGUPGRADE +HeroSkillClusterRockets=1,heroskillcode,'ANcs',WESTRING_HEROSKILL_CLUSTERROCKETS +HeroSkillSummonFactory=1,heroskillcode,'ANsy',WESTRING_HEROSKILL_SUMMONFACTORY +HeroSkillRoboGoblin=1,heroskillcode,'ANrg',WESTRING_HEROSKILL_ROBOGOBLIN +HeroSkillIncinerate=1,heroskillcode,'ANic',WESTRING_HEROSKILL_INCINERATE +HeroSkillIncinerateArrow=1,heroskillcode,'ANia',WESTRING_HEROSKILL_INCINERATEARROW +HeroSkillSoulBurn=1,heroskillcode,'ANso',WESTRING_HEROSKILL_SOULBURN +HeroSkillLavaMonster=1,heroskillcode,'ANlm',WESTRING_HEROSKILL_LAVAMONSTER +HeroSkillVolcano=1,heroskillcode,'ANvc',WESTRING_HEROSKILL_VOLCANO +HeroSkillChainLightning2=1,heroskillcode,'AOcl',WESTRING_HEROSKILL_AKAMA_CHAINLIGHTNING +HeroSkillSpiritBeast=1,heroskillcode,'ACs7',WESTRING_HEROSKILL_AKAMA_FERALSPIRIT +HeroSkillShadowTouch2=1,heroskillcode,'AEsh',WESTRING_HEROSKILL_AKAMA_SHADOWTOUCH +HeroSkillReincarnation2=1,heroskillcode,'ANr2',WESTRING_HEROSKILL_AKAMA_REINCARNATION +HeroSkillDarkPortal=0,heroskillcode,'ANdp',WESTRING_HEROSKILL_DARKPORTAL +HeroSkillRainOfChaos=0,heroskillcode,'ANrc',WESTRING_HEROSKILL_RAINOFCHAOS +HeroSkillArchiBash=0,heroskillcode,'AHah',WESTRING_HEROSKILL_ARCHIBASH +HeroSkillFingerOfDeath=0,heroskillcode,'ANfd',WESTRING_HEROSKILL_FINGEROFDEATH +HeroSkillBalnaSleep=1,heroskillcode,'AUsl',WESTRING_HEROSKILL_BALNA_SLEEP +HeroSkillBalnaVampiricAura=1,heroskillcode,'AUav',WESTRING_HEROSKILL_BALNA_VAMPIRICAURA +HeroSkillBalnaRainOfChaos=1,heroskillcode,'ANr3',WESTRING_HEROSKILL_BALNA_RAINOFCHAOS +HeroSkillBalnaFingerOfPain=1,heroskillcode,'ACf3',WESTRING_HEROSKILL_BALNA_FINGEROFPAIN +HeroSkillBalnaEarthquake=1,heroskillcode,'AOeq',WESTRING_HEROSKILL_BALNA_EARTHQUAKE +HeroSkillChenBreathOfFire=1,heroskillcode,'ANcf',WESTRING_HEROSKILL_CHEN_BREATHOFFIRE +HeroSkillChenStrongDrink=1,heroskillcode,'Acdh',WESTRING_HEROSKILL_CHEN_STRONGDRINK +HeroSkillChenDrunkenBrawler=1,heroskillcode,'Acdb',WESTRING_HEROSKILL_CHEN_DRUNKENBRAWLER +HeroSkillChenElementalFury=1,heroskillcode,'Acef',WESTRING_HEROSKILL_CHEN_ELEMENTALFURY +HeroSkillChenAttributeBonus=1,heroskillcode,'Aamk',WESTRING_HEROSKILL_CHEN_ATTRIBUTEBONUS +HeroSkillDetheSleep=1,heroskillcode,'AUsl',WESTRING_HEROSKILL_DETHE_SLEEP +HeroSkillDetheShadowTouch=1,heroskillcode,'AEsh',WESTRING_HEROSKILL_DETHE_SHADOWTOUCH +HeroSkillDetheCarrionSwarm=1,heroskillcode,'AUcs',WESTRING_HEROSKILL_DETHE_CARRIONSWARM +HeroSkillDetheDeathAndDecay=1,heroskillcode,'AUdd',WESTRING_HEROSKILL_DETHE_DEATHANDDECAY +HeroSkillGaritShockwave=1,heroskillcode,'ANsh',WESTRING_HEROSKILL_GARIT_SHOCKWAVE +HeroSkillGaritHolyLight=1,heroskillcode,'AHhb',WESTRING_HEROSKILL_GARIT_HOLYLIGHT +HeroSkillGaritDevotionAura=1,heroskillcode,'AHad',WESTRING_HEROSKILL_GARIT_DEVOTIONAURA +HeroSkillGaritAvatar=1,heroskillcode,'ANav',WESTRING_HEROSKILL_GARIT_AVATAR +HeroSkillIllimorphosis=0,heroskillcode,'AEIl',WESTRING_HEROSKILL_ILLIMORPHOSIS +HeroSkillEvilIllimorphosis=0,heroskillcode,'AEvi',WESTRING_HEROSKILL_EVILILLIMORPHOSIS +HeroSkillMalganisSleep=0,heroskillcode,'ANdc',WESTRING_HEROSKILL_DARKCONVERSION +HeroSkillSoulPreservation=0,heroskillcode,'ANsl',WESTRING_HEROSKILL_SOULPRESERVATION +HeroSkillManarothReincarnation=0,heroskillcode,'ANrn',WESTRING_HEROSKILL_MANAROTHREINCARNATION +HeroSkillRexxarGrizzly=1,heroskillcode,'Arsg',WESTRING_HEROSKILL_REXXAR_GRIZZLY +HeroSkillRexxarQuillbeast=1,heroskillcode,'Arsq',WESTRING_HEROSKILL_REXXAR_QUILLBEAST +HeroSkillRexxarStormBolt=1,heroskillcode,'ANsb',WESTRING_HEROSKILL_REXXAR_STORMBOLT +HeroSkillRexxarStampede=1,heroskillcode,'Arsp',WESTRING_HEROSKILL_REXXAR_STAMPEDE +HeroSkillRexxarAttributeBonus=1,heroskillcode,'Aamk',WESTRING_HEROSKILL_REXXAR_ATTRIBUTEBONUS +HeroSkillRokhanHealingWave=1,heroskillcode,'ANhw',WESTRING_HEROSKILL_ROKHAN_HEALINGWAVE +HeroSkillRokhanHex=1,heroskillcode,'ANhx',WESTRING_HEROSKILL_ROKHAN_HEX +HeroSkillRokhanSerpentWard=1,heroskillcode,'Arsw',WESTRING_HEROSKILL_ROKHAN_SERPENTWARD +HeroSkillRokhanVoodooSpirits=1,heroskillcode,'AOls',WESTRING_HEROSKILL_ROKHAN_VOODOOSPIRITS +HeroSkillRokhanAttributeBonus=1,heroskillcode,'Aamk',WESTRING_HEROSKILL_ROKHAN_ATTRIBUTEBONUS +HeroSkillColdArrows=0,heroskillcode,'AHca',WESTRING_HEROSKILL_COLDARROWS +HeroSkillTichondriusInferno=0,heroskillcode,'SNin',WESTRING_HEROSKILL_TICHONDRIUSINFERNO +HeroSkillVarimSleep=1,heroskillcode,'AUsl',WESTRING_HEROSKILL_VARIM_SLEEP +HeroSkillVarimVampiricAura=1,heroskillcode,'AUav',WESTRING_HEROSKILL_VARIM_VAMPIRICAURA +HeroSkillVarimRainOfFire=1,heroskillcode,'ANrf',WESTRING_HEROSKILL_VARIM_RAINOFFIRE +HeroSkillVarimDoom=1,heroskillcode,'ANdo',WESTRING_HEROSKILL_VARIM_DOOM +HeroSkillInfernal=0,heroskillcode,'ANin',WESTRING_HEROSKILL_INFERNAL +HeroSkillMalganisSleepFast=0,heroskillcode,'SNdc',WESTRING_HEROSKILL_DARKCONVERSIONFAST +HeroSkillDarkSummoningOld=0,heroskillcode,'AUds',WESTRING_HEROSKILL_DARKSUMMONINGOLD +WeatherAshenvaleHeavyRain=0,weathereffectcode,'RAhr',WESTRING_WEATHER_ASHENVALEHEAVYRAIN +WeatherAshenvaleLightRain=0,weathereffectcode,'RAlr',WESTRING_WEATHER_ASHENVALELIGHTRAIN +WeatherDalaranShield=0,weathereffectcode,'MEds',WESTRING_WEATHER_DALARANSHIELD +WeatherDungeonHeavyBlueFog=0,weathereffectcode,'FDbh',WESTRING_WEATHER_DUNGEONHEAVYBLUEFOG +WeatherDungeonLightBlueFog=0,weathereffectcode,'FDbl',WESTRING_WEATHER_DUNGEONBLUEFOG +WeatherDungeonHeavyGreenFog=0,weathereffectcode,'FDgh',WESTRING_WEATHER_DUNGEONHEAVYGREENFOG +WeatherDungeonLightGreenFog=0,weathereffectcode,'FDgl',WESTRING_WEATHER_DUNGEONGREENFOG +WeatherDungeonHeavyRedFog=0,weathereffectcode,'FDrh',WESTRING_WEATHER_DUNGEONHEAVYREDFOG +WeatherDungeonLightRedFog=0,weathereffectcode,'FDrl',WESTRING_WEATHER_DUNGEONREDFOG +WeatherDungeonHeavyWhiteFog=0,weathereffectcode,'FDwh',WESTRING_WEATHER_DUNGEONHEAVYWHITEFOG +WeatherDungeonLightWhiteFog=0,weathereffectcode,'FDwl',WESTRING_WEATHER_DUNGEONWHITEFOG +WeatherLordaeronHeavyRain=0,weathereffectcode,'RLhr',WESTRING_WEATHER_LORDAERONHEAVYRAIN +WeatherLordaeronLightRain=0,weathereffectcode,'RLlr',WESTRING_WEATHER_LORDAERONLIGHTRAIN +WeatherNorthrendBlizzard=0,weathereffectcode,'SNbs',WESTRING_WEATHER_NORTHRENDBLIZZARD +WeatherNorthrendHeavySnow=0,weathereffectcode,'SNhs',WESTRING_WEATHER_NORTHRENDHEAVYSNOW +WeatherNorthrendLightSnow=0,weathereffectcode,'SNls',WESTRING_WEATHER_NORTHRENDLIGHTSNOW +WeatherOutlandWind=1,weathereffectcode,'WOcw',WESTRING_WEATHER_OUTLANDWIND +WeatherOutlandWindLight=1,weathereffectcode,'WOlw',WESTRING_WEATHER_OUTLANDWINDLIGHT +WeatherRaysOfLight=0,weathereffectcode,'LRaa',WESTRING_WEATHER_RAYSOFLIGHT +WeatherRaysOfMoonlight=0,weathereffectcode,'LRma',WESTRING_WEATHER_RAYSOFMOONLIGHT +WeatherHeavyWind=0,weathereffectcode,'WNcw',WESTRING_WEATHER_WIND +TerrainTypeLdrt=1,terraintype,'Ldrt',WESTRING_TERRAINTYPE_Ldrt +TerrainTypeLdro=1,terraintype,'Ldro',WESTRING_TERRAINTYPE_Ldro +TerrainTypeLdrg=1,terraintype,'Ldrg',WESTRING_TERRAINTYPE_Ldrg +TerrainTypeLrok=1,terraintype,'Lrok',WESTRING_TERRAINTYPE_Lrok +TerrainTypeLgrs=1,terraintype,'Lgrs',WESTRING_TERRAINTYPE_Lgrs +TerrainTypeLgrd=1,terraintype,'Lgrd',WESTRING_TERRAINTYPE_Lgrd +TerrainTypeFdrt=1,terraintype,'Fdrt',WESTRING_TERRAINTYPE_Fdrt +TerrainTypeFdro=1,terraintype,'Fdro',WESTRING_TERRAINTYPE_Fdro +TerrainTypeFdrg=1,terraintype,'Fdrg',WESTRING_TERRAINTYPE_Fdrg +TerrainTypeFrok=1,terraintype,'Frok',WESTRING_TERRAINTYPE_Frok +TerrainTypeFgrs=1,terraintype,'Fgrs',WESTRING_TERRAINTYPE_Fgrs +TerrainTypeFgrd=1,terraintype,'Fgrd',WESTRING_TERRAINTYPE_Fgrd +TerrainTypeWdrt=1,terraintype,'Wdrt',WESTRING_TERRAINTYPE_Wdrt +TerrainTypeWdro=1,terraintype,'Wdro',WESTRING_TERRAINTYPE_Wdro +TerrainTypeWsng=1,terraintype,'Wsng',WESTRING_TERRAINTYPE_Wsng +TerrainTypeWrok=1,terraintype,'Wrok',WESTRING_TERRAINTYPE_Wrok +TerrainTypeWgrs=1,terraintype,'Wgrs',WESTRING_TERRAINTYPE_Wgrs +TerrainTypeWsnw=1,terraintype,'Wsnw',WESTRING_TERRAINTYPE_Wsnw +TerrainTypeBdrt=1,terraintype,'Bdrt',WESTRING_TERRAINTYPE_Bdrt +TerrainTypeBdrh=1,terraintype,'Bdrh',WESTRING_TERRAINTYPE_Bdrh +TerrainTypeBdrr=1,terraintype,'Bdrr',WESTRING_TERRAINTYPE_Bdrr +TerrainTypeBdrg=1,terraintype,'Bdrg',WESTRING_TERRAINTYPE_Bdrg +TerrainTypeBdsr=1,terraintype,'Bdsr',WESTRING_TERRAINTYPE_Bdsr +TerrainTypeBdsd=1,terraintype,'Bdsd',WESTRING_TERRAINTYPE_Bdsd +TerrainTypeBflr=1,terraintype,'Bflr',WESTRING_TERRAINTYPE_Bflr +TerrainTypeBgrr=1,terraintype,'Bgrr',WESTRING_TERRAINTYPE_Bgrr +TerrainTypeAdrt=1,terraintype,'Adrt',WESTRING_TERRAINTYPE_Adrt +TerrainTypeAdrd=1,terraintype,'Adrd',WESTRING_TERRAINTYPE_Adrd +TerrainTypeAgrs=1,terraintype,'Agrs',WESTRING_TERRAINTYPE_Agrs +TerrainTypeArck=1,terraintype,'Arck',WESTRING_TERRAINTYPE_Arck +TerrainTypeAgrd=1,terraintype,'Agrd',WESTRING_TERRAINTYPE_Agrd +TerrainTypeAvin=1,terraintype,'Avin',WESTRING_TERRAINTYPE_Avin +TerrainTypeAdrg=1,terraintype,'Adrg',WESTRING_TERRAINTYPE_Adrg +TerrainTypeAlvd=1,terraintype,'Alvd',WESTRING_TERRAINTYPE_Alvd +TerrainTypeCdrt=1,terraintype,'Cdrt',WESTRING_TERRAINTYPE_Cdrt +TerrainTypeCdrd=1,terraintype,'Cdrd',WESTRING_TERRAINTYPE_Cdrd +TerrainTypeCpos=1,terraintype,'Cpos',WESTRING_TERRAINTYPE_Cpos +TerrainTypeCrck=1,terraintype,'Crck',WESTRING_TERRAINTYPE_Crck +TerrainTypeCvin=1,terraintype,'Cvin',WESTRING_TERRAINTYPE_Cvin +TerrainTypeCgrs=1,terraintype,'Cgrs',WESTRING_TERRAINTYPE_Cgrs +TerrainTypeClvg=1,terraintype,'Clvg',WESTRING_TERRAINTYPE_Clvg +TerrainTypeNdrt=1,terraintype,'Ndrt',WESTRING_TERRAINTYPE_Ndrt +TerrainTypeNdrd=1,terraintype,'Ndrd',WESTRING_TERRAINTYPE_Ndrd +TerrainTypeNrck=1,terraintype,'Nrck',WESTRING_TERRAINTYPE_Nrck +TerrainTypeNgrs=1,terraintype,'Ngrs',WESTRING_TERRAINTYPE_Ngrs +TerrainTypeNice=1,terraintype,'Nice',WESTRING_TERRAINTYPE_Nice +TerrainTypeNsnw=1,terraintype,'Nsnw',WESTRING_TERRAINTYPE_Nsnw +TerrainTypeNsnr=1,terraintype,'Nsnr',WESTRING_TERRAINTYPE_Nsnr +TerrainTypeYdrt=1,terraintype,'Ydrt',WESTRING_TERRAINTYPE_Ydrt +TerrainTypeYdtr=1,terraintype,'Ydtr',WESTRING_TERRAINTYPE_Ydtr +TerrainTypeYblm=1,terraintype,'Yblm',WESTRING_TERRAINTYPE_Yblm +TerrainTypeYbtl=1,terraintype,'Ybtl',WESTRING_TERRAINTYPE_Ybtl +TerrainTypeYsqd=1,terraintype,'Ysqd',WESTRING_TERRAINTYPE_Ysqd +TerrainTypeYrtl=1,terraintype,'Yrtl',WESTRING_TERRAINTYPE_Yrtl +TerrainTypeYgsb=1,terraintype,'Ygsb',WESTRING_TERRAINTYPE_Ygsb +TerrainTypeYhdg=1,terraintype,'Yhdg',WESTRING_TERRAINTYPE_Yhdg +TerrainTypeYwmb=1,terraintype,'Ywmb',WESTRING_TERRAINTYPE_Ywmb +TerrainTypeVdrt=1,terraintype,'Vdrt',WESTRING_TERRAINTYPE_Vdrt +TerrainTypeVdrr=1,terraintype,'Vdrr',WESTRING_TERRAINTYPE_Vdrr +TerrainTypeVcrp=1,terraintype,'Vcrp',WESTRING_TERRAINTYPE_Vcrp +TerrainTypeVcbp=1,terraintype,'Vcbp',WESTRING_TERRAINTYPE_Vcbp +TerrainTypeVstp=1,terraintype,'Vstp',WESTRING_TERRAINTYPE_Vstp +TerrainTypeVgrs=1,terraintype,'Vgrs',WESTRING_TERRAINTYPE_Vgrs +TerrainTypeVrck=1,terraintype,'Vrck',WESTRING_TERRAINTYPE_Vrck +TerrainTypeVgrt=1,terraintype,'Vgrt',WESTRING_TERRAINTYPE_Vgrt +TerrainTypeQdrt=1,terraintype,'Qdrt',WESTRING_TERRAINTYPE_Qdrt +TerrainTypeQdrr=1,terraintype,'Qdrr',WESTRING_TERRAINTYPE_Qdrr +TerrainTypeQcrp=1,terraintype,'Qcrp',WESTRING_TERRAINTYPE_Qcrp +TerrainTypeQcbp=1,terraintype,'Qcbp',WESTRING_TERRAINTYPE_Qcbp +TerrainTypeQstp=1,terraintype,'Qstp',WESTRING_TERRAINTYPE_Qstp +TerrainTypeQgrs=1,terraintype,'Qgrs',WESTRING_TERRAINTYPE_Qgrs +TerrainTypeQrck=1,terraintype,'Qrck',WESTRING_TERRAINTYPE_Qrck +TerrainTypeQgrt=1,terraintype,'Qgrt',WESTRING_TERRAINTYPE_Qgrt +TerrainTypeXdrt=1,terraintype,'Xdrt',WESTRING_TERRAINTYPE_Xdrt +TerrainTypeXdtr=1,terraintype,'Xdtr',WESTRING_TERRAINTYPE_Xdtr +TerrainTypeXblm=1,terraintype,'Xblm',WESTRING_TERRAINTYPE_Xblm +TerrainTypeXbtl=1,terraintype,'Xbtl',WESTRING_TERRAINTYPE_Xbtl +TerrainTypeXsqd=1,terraintype,'Xsqd',WESTRING_TERRAINTYPE_Xsqd +TerrainTypeXrtl=1,terraintype,'Xrtl',WESTRING_TERRAINTYPE_Xrtl +TerrainTypeXgsb=1,terraintype,'Xgsb',WESTRING_TERRAINTYPE_Xgsb +TerrainTypeXhdg=1,terraintype,'Xhdg',WESTRING_TERRAINTYPE_Xhdg +TerrainTypeXwmb=1,terraintype,'Xwmb',WESTRING_TERRAINTYPE_Xwmb +TerrainTypeDdrt=1,terraintype,'Ddrt',WESTRING_TERRAINTYPE_Ddrt +TerrainTypeDbrk=1,terraintype,'Dbrk',WESTRING_TERRAINTYPE_Dbrk +TerrainTypeDrds=1,terraintype,'Drds',WESTRING_TERRAINTYPE_Drds +TerrainTypeDlvc=1,terraintype,'Dlvc',WESTRING_TERRAINTYPE_Dlvc +TerrainTypeDlav=1,terraintype,'Dlav',WESTRING_TERRAINTYPE_Dlav +TerrainTypeDdkr=1,terraintype,'Ddkr',WESTRING_TERRAINTYPE_Ddkr +TerrainTypeDgrs=1,terraintype,'Dgrs',WESTRING_TERRAINTYPE_Dgrs +TerrainTypeDsqd=1,terraintype,'Dsqd',WESTRING_TERRAINTYPE_Dsqd +TerrainTypeGdrt=1,terraintype,'Gdrt',WESTRING_TERRAINTYPE_Gdrt +TerrainTypeGbrk=1,terraintype,'Gbrk',WESTRING_TERRAINTYPE_Gbrk +TerrainTypeGrds=1,terraintype,'Grds',WESTRING_TERRAINTYPE_Grds +TerrainTypeGlvc=1,terraintype,'Glvc',WESTRING_TERRAINTYPE_Glvc +TerrainTypeGlav=1,terraintype,'Glav',WESTRING_TERRAINTYPE_Glav +TerrainTypeGdkr=1,terraintype,'Gdkr',WESTRING_TERRAINTYPE_Gdkr +TerrainTypeGgrs=1,terraintype,'Ggrs',WESTRING_TERRAINTYPE_Ggrs +TerrainTypeGsqd=1,terraintype,'Gsqd',WESTRING_TERRAINTYPE_Gsqd +TerrainTypeZdrt=1,terraintype,'Zdrt',WESTRING_TERRAINTYPE_Zdrt +TerrainTypeZdtr=1,terraintype,'Zdtr',WESTRING_TERRAINTYPE_Zdtr +TerrainTypeZdrg=1,terraintype,'Zdrg',WESTRING_TERRAINTYPE_Zdrg +TerrainTypeZbks=1,terraintype,'Zbks',WESTRING_TERRAINTYPE_Zbks +TerrainTypeZsan=1,terraintype,'Zsan',WESTRING_TERRAINTYPE_Zsan +TerrainTypeZbkl=1,terraintype,'Zbkl',WESTRING_TERRAINTYPE_Zbkl +TerrainTypeZtil=1,terraintype,'Ztil',WESTRING_TERRAINTYPE_Ztil +TerrainTypeZgrs=1,terraintype,'Zgrs',WESTRING_TERRAINTYPE_Zgrs +TerrainTypeZvin=1,terraintype,'Zvin',WESTRING_TERRAINTYPE_Zvin +TerrainTypeIdrt=1,terraintype,'Idrt',WESTRING_TERRAINTYPE_Idrt +TerrainTypeIdtr=1,terraintype,'Idtr',WESTRING_TERRAINTYPE_Idtr +TerrainTypeIdki=1,terraintype,'Idki',WESTRING_TERRAINTYPE_Idki +TerrainTypeIbkb=1,terraintype,'Ibkb',WESTRING_TERRAINTYPE_Ibkb +TerrainTypeIrbk=1,terraintype,'Irbk',WESTRING_TERRAINTYPE_Irbk +TerrainTypeItbk=1,terraintype,'Itbk',WESTRING_TERRAINTYPE_Itbk +TerrainTypeIice=1,terraintype,'Iice',WESTRING_TERRAINTYPE_Iice +TerrainTypeIbsq=1,terraintype,'Ibsq',WESTRING_TERRAINTYPE_Ibsq +TerrainTypeIsnw=1,terraintype,'Isnw',WESTRING_TERRAINTYPE_Isnw +TerrainTypeOdrt=1,terraintype,'Odrt',WESTRING_TERRAINTYPE_Odrt +TerrainTypeOdtr=1,terraintype,'Odtr',WESTRING_TERRAINTYPE_Odtr +TerrainTypeOsmb=1,terraintype,'Osmb',WESTRING_TERRAINTYPE_Osmb +TerrainTypeOfst=1,terraintype,'Ofst',WESTRING_TERRAINTYPE_Ofst +TerrainTypeOlgb=1,terraintype,'Olgb',WESTRING_TERRAINTYPE_Olgb +TerrainTypeOrok=1,terraintype,'Orok',WESTRING_TERRAINTYPE_Orok +TerrainTypeOfsl=1,terraintype,'Ofsl',WESTRING_TERRAINTYPE_Ofsl +TerrainTypeOaby=1,terraintype,'Oaby',WESTRING_TERRAINTYPE_Oaby +TerrainTypeKdrt=1,terraintype,'Kdrt',WESTRING_TERRAINTYPE_Kdrt +TerrainTypeKfsl=1,terraintype,'Kfsl',WESTRING_TERRAINTYPE_Kfsl +TerrainTypeKdtr=1,terraintype,'Kdtr',WESTRING_TERRAINTYPE_Kdtr +TerrainTypeKfst=1,terraintype,'Kfst',WESTRING_TERRAINTYPE_Kfst +TerrainTypeKsmb=1,terraintype,'Ksmb',WESTRING_TERRAINTYPE_Ksmb +TerrainTypeKlgb=1,terraintype,'Klgb',WESTRING_TERRAINTYPE_Klgb +TerrainTypeKsqt=1,terraintype,'Ksqt',WESTRING_TERRAINTYPE_Ksqt +TerrainTypeKdkt=1,terraintype,'Kdkt',WESTRING_TERRAINTYPE_Kdkt +TerrainTypeJdrt=1,terraintype,'Jdrt',WESTRING_TERRAINTYPE_Jdrt +TerrainTypeJdtr=1,terraintype,'Jdtr',WESTRING_TERRAINTYPE_Jdtr +TerrainTypeJblm=1,terraintype,'Jblm',WESTRING_TERRAINTYPE_Jblm +TerrainTypeJbtl=1,terraintype,'Jbtl',WESTRING_TERRAINTYPE_Jbtl +TerrainTypeJsqd=1,terraintype,'Jsqd',WESTRING_TERRAINTYPE_Jsqd +TerrainTypeJrtl=1,terraintype,'Jrtl',WESTRING_TERRAINTYPE_Jrtl +TerrainTypeJgsb=1,terraintype,'Jgsb',WESTRING_TERRAINTYPE_Jgsb +TerrainTypeJhdg=1,terraintype,'Jhdg',WESTRING_TERRAINTYPE_Jhdg +TerrainTypeJwmb=1,terraintype,'Jwmb',WESTRING_TERRAINTYPE_Jwmb +TerrainTypecAc2=1,terraintype,'cAc2',WESTRING_TERRAINTYPE_cAc2 +TerrainTypecAc1=1,terraintype,'cAc1',WESTRING_TERRAINTYPE_cAc1 +TerrainTypecBc2=1,terraintype,'cBc2',WESTRING_TERRAINTYPE_cBc2 +TerrainTypecBc1=1,terraintype,'cBc1',WESTRING_TERRAINTYPE_cBc1 +TerrainTypecKc1=1,terraintype,'cKc1',WESTRING_TERRAINTYPE_cKc1 +TerrainTypecKc2=1,terraintype,'cKc2',WESTRING_TERRAINTYPE_cKc2 +TerrainTypecYc2=1,terraintype,'cYc2',WESTRING_TERRAINTYPE_cYc2 +TerrainTypecYc1=1,terraintype,'cYc1',WESTRING_TERRAINTYPE_cYc1 +TerrainTypecXc2=1,terraintype,'cXc2',WESTRING_TERRAINTYPE_cXc2 +TerrainTypecXc1=1,terraintype,'cXc1',WESTRING_TERRAINTYPE_cXc1 +TerrainTypecJc2=1,terraintype,'cJc2',WESTRING_TERRAINTYPE_cJc2 +TerrainTypecJc1=1,terraintype,'cJc1',WESTRING_TERRAINTYPE_cJc1 +TerrainTypecDc2=1,terraintype,'cDc2',WESTRING_TERRAINTYPE_cDc2 +TerrainTypecDc1=1,terraintype,'cDc1',WESTRING_TERRAINTYPE_cDc1 +TerrainTypecCc2=1,terraintype,'cCc2',WESTRING_TERRAINTYPE_cCc2 +TerrainTypecCc1=1,terraintype,'cCc1',WESTRING_TERRAINTYPE_cCc1 +TerrainTypecIc2=1,terraintype,'cIc2',WESTRING_TERRAINTYPE_cIc2 +TerrainTypecIc1=1,terraintype,'cIc1',WESTRING_TERRAINTYPE_cIc1 +TerrainTypecFc2=1,terraintype,'cFc2',WESTRING_TERRAINTYPE_cFc2 +TerrainTypecFc1=1,terraintype,'cFc1',WESTRING_TERRAINTYPE_cFc1 +TerrainTypecLc2=1,terraintype,'cLc2',WESTRING_TERRAINTYPE_cLc2 +TerrainTypecLc1=1,terraintype,'cLc1',WESTRING_TERRAINTYPE_cLc1 +TerrainTypecWc2=1,terraintype,'cWc2',WESTRING_TERRAINTYPE_cWc2 +TerrainTypecWc1=1,terraintype,'cWc1',WESTRING_TERRAINTYPE_cWc1 +TerrainTypecNc2=1,terraintype,'cNc2',WESTRING_TERRAINTYPE_cNc2 +TerrainTypecNc1=1,terraintype,'cNc1',WESTRING_TERRAINTYPE_cNc1 +TerrainTypecOc1=1,terraintype,'cOc1',WESTRING_TERRAINTYPE_cOc1 +TerrainTypecOc2=1,terraintype,'cOc2',WESTRING_TERRAINTYPE_cOc2 +TerrainTypecZc2=1,terraintype,'cZc2',WESTRING_TERRAINTYPE_cZc2 +TerrainTypecZc1=1,terraintype,'cZc1',WESTRING_TERRAINTYPE_cZc1 +TerrainTypecGc2=1,terraintype,'cGc2',WESTRING_TERRAINTYPE_cGc2 +TerrainTypecGc1=1,terraintype,'cGc1',WESTRING_TERRAINTYPE_cGc1 +TerrainTypecVc2=1,terraintype,'cVc2',WESTRING_TERRAINTYPE_cVc2 +TerrainTypecVc1=1,terraintype,'cVc1',WESTRING_TERRAINTYPE_cVc1 +TerrainTypecQc2=1,terraintype,'cQc2',WESTRING_TERRAINTYPE_cQc2 +TerrainTypecQc1=1,terraintype,'cQc1',WESTRING_TERRAINTYPE_cQc1 +TerrainShapeCircle=1,terrainshape,0,WESTRING_TERRAINSHAPE_CIRCLE +TerrainShapeSquare=1,terrainshape,1,WESTRING_TERRAINSHAPE_SQUARE +LightningTypeCLPB=1,lightningtype,`CLPB`,WESTRING_LIGHTNINGTYPE_CLPB +LightningTypeCLSB=1,lightningtype,`CLSB`,WESTRING_LIGHTNINGTYPE_CLSB +LightningTypeDRAB=1,lightningtype,`DRAB`,WESTRING_LIGHTNINGTYPE_DRAB +LightningTypeDRAL=1,lightningtype,`DRAL`,WESTRING_LIGHTNINGTYPE_DRAL +LightningTypeDRAM=1,lightningtype,`DRAM`,WESTRING_LIGHTNINGTYPE_DRAM +LightningTypeAFOD=1,lightningtype,`AFOD`,WESTRING_LIGHTNINGTYPE_AFOD +LightningTypeFORK=1,lightningtype,`FORK`,WESTRING_LIGHTNINGTYPE_FORK +LightningTypeHWPB=1,lightningtype,`HWPB`,WESTRING_LIGHTNINGTYPE_HWPB +LightningTypeHWSB=1,lightningtype,`HWSB`,WESTRING_LIGHTNINGTYPE_HWSB +LightningTypeCHIM=1,lightningtype,`CHIM`,WESTRING_LIGHTNINGTYPE_CHIM +LightningTypeLEAS=1,lightningtype,`LEAS`,WESTRING_LIGHTNINGTYPE_LEAS +LightningTypeMBUR=1,lightningtype,`MBUR`,WESTRING_LIGHTNINGTYPE_MBUR +LightningTypeMFPB=1,lightningtype,`MFPB`,WESTRING_LIGHTNINGTYPE_MFPB +LightningTypeSPLK=1,lightningtype,`SPLK`,WESTRING_LIGHTNINGTYPE_SPLK +ImageTypeShadow=1,imagetype,0,WESTRING_IMAGETYPE_SHADOW +ImageTypeSelection=1,imagetype,1,WESTRING_IMAGETYPE_SELECTION +ImageTypeIndicator=1,imagetype,2,WESTRING_IMAGETYPE_INDICATOR +ImageTypeOcclusionMark=1,imagetype,3,WESTRING_IMAGETYPE_OCCLUSIONMARK +ImageTypeUbersplat=1,imagetype,4,WESTRING_IMAGETYPE_UBERSPLAT +ImageTypeLast=1,imagetype,5,WESTRING_IMAGETYPE_LAST +UbersplatTypeTEST=1,ubersplattype,`TEST`,WESTRING_UBERSPLAT_TEST +UbersplatTypeLSDS=1,ubersplattype,`LSDS`,WESTRING_UBERSPLAT_LSDS +UbersplatTypeLSDM=1,ubersplattype,`LSDM`,WESTRING_UBERSPLAT_LSDM +UbersplatTypeLSDL=1,ubersplattype,`LSDL`,WESTRING_UBERSPLAT_LSDL +UbersplatTypeHCRT=1,ubersplattype,`HCRT`,WESTRING_UBERSPLAT_HCRT +UbersplatTypeUDSU=1,ubersplattype,`UDSU`,WESTRING_UBERSPLAT_UDSU +UbersplatTypeDNCS=1,ubersplattype,`DNCS`,WESTRING_UBERSPLAT_DNCS +UbersplatTypeHMTP=1,ubersplattype,`HMTP`,WESTRING_UBERSPLAT_HMTP +UbersplatTypeSCTP=1,ubersplattype,`SCTP`,WESTRING_UBERSPLAT_SCTP +UbersplatTypeAMRC=1,ubersplattype,`AMRC`,WESTRING_UBERSPLAT_AMRC +UbersplatTypeDRKC=1,ubersplattype,`DRKC`,WESTRING_UBERSPLAT_DRKC +UbersplatTypeDOSB=1,ubersplattype,`DOSB`,WESTRING_UBERSPLAT_DOSB +UbersplatTypeDOMB=1,ubersplattype,`DOMB`,WESTRING_UBERSPLAT_DOMB +UbersplatTypeDOLB=1,ubersplattype,`DOLB`,WESTRING_UBERSPLAT_DOLB +UbersplatTypeDHSB=1,ubersplattype,`DHSB`,WESTRING_UBERSPLAT_DHSB +UbersplatTypeDHMB=1,ubersplattype,`DHMB`,WESTRING_UBERSPLAT_DHMB +UbersplatTypeDHLB=1,ubersplattype,`DHLB`,WESTRING_UBERSPLAT_DHLB +UbersplatTypeDUSB=1,ubersplattype,`DUSB`,WESTRING_UBERSPLAT_DUSB +UbersplatTypeDUMB=1,ubersplattype,`DUMB`,WESTRING_UBERSPLAT_DUMB +UbersplatTypeDULB=1,ubersplattype,`DULB`,WESTRING_UBERSPLAT_DULB +UbersplatTypeDNSB=1,ubersplattype,`DNSB`,WESTRING_UBERSPLAT_DNSB +UbersplatTypeDNMB=1,ubersplattype,`DNMB`,WESTRING_UBERSPLAT_DNMB +UbersplatTypeDNSA=1,ubersplattype,`DNSA`,WESTRING_UBERSPLAT_DNSA +UbersplatTypeDNMA=1,ubersplattype,`DNMA`,WESTRING_UBERSPLAT_DNMA +UbersplatTypeHSMA=1,ubersplattype,`HSMA`,WESTRING_UBERSPLAT_HSMA +UbersplatTypeHMED=1,ubersplattype,`HMED`,WESTRING_UBERSPLAT_HMED +UbersplatTypeHLAR=1,ubersplattype,`HLAR`,WESTRING_UBERSPLAT_HLAR +UbersplatTypeOSMA=1,ubersplattype,`OSMA`,WESTRING_UBERSPLAT_OSMA +UbersplatTypeOMED=1,ubersplattype,`OMED`,WESTRING_UBERSPLAT_OMED +UbersplatTypeOLAR=1,ubersplattype,`OLAR`,WESTRING_UBERSPLAT_OLAR +UbersplatTypeUSMA=1,ubersplattype,`USMA`,WESTRING_UBERSPLAT_USMA +UbersplatTypeUMED=1,ubersplattype,`UMED`,WESTRING_UBERSPLAT_UMED +UbersplatTypeULAR=1,ubersplattype,`ULAR`,WESTRING_UBERSPLAT_ULAR +UbersplatTypeESMA=1,ubersplattype,`ESMA`,WESTRING_UBERSPLAT_ESMA +UbersplatTypeEMDA=1,ubersplattype,`EMDA`,WESTRING_UBERSPLAT_EMDA +UbersplatTypeESMB=1,ubersplattype,`ESMB`,WESTRING_UBERSPLAT_ESMB +UbersplatTypeEMDB=1,ubersplattype,`EMDB`,WESTRING_UBERSPLAT_EMDB +UbersplatTypeHTOW=1,ubersplattype,`HTOW`,WESTRING_UBERSPLAT_HTOW +UbersplatTypeHCAS=1,ubersplattype,`HCAS`,WESTRING_UBERSPLAT_HCAS +UbersplatTypeNGOL=1,ubersplattype,`NGOL`,WESTRING_UBERSPLAT_NGOL +UbersplatTypeTHND=1,ubersplattype,`THND`,WESTRING_UBERSPLAT_THND +UbersplatTypeNDGS=1,ubersplattype,`NDGS`,WESTRING_UBERSPLAT_NDGS +UbersplatTypeCLTS=1,ubersplattype,`CLTS`,WESTRING_UBERSPLAT_CLTS +UbersplatTypeHFS1=1,ubersplattype,`HFS1`,WESTRING_UBERSPLAT_HFS1 +UbersplatTypeHFS2=1,ubersplattype,`HFS2`,WESTRING_UBERSPLAT_HFS2 +UbersplatTypeUSBR=1,ubersplattype,`USBR`,WESTRING_UBERSPLAT_USBR +UbersplatTypeNLAR=1,ubersplattype,`NLAR`,WESTRING_UBERSPLAT_NLAR +UbersplatTypeNMED=1,ubersplattype,`NMED`,WESTRING_UBERSPLAT_NMED +UbersplatTypeDPSW=1,ubersplattype,`DPSW`,WESTRING_UBERSPLAT_DPSW +UbersplatTypeDPSE=1,ubersplattype,`DPSE`,WESTRING_UBERSPLAT_DPSE +UbersplatTypeNVOL=1,ubersplattype,`NVOL`,WESTRING_UBERSPLAT_NVOL +UbersplatTypeNVCR=1,ubersplattype,`NVCR`,WESTRING_UBERSPLAT_NVCR +RacePrefHuman=0,racepreference,RACE_PREF_HUMAN,WESTRING_RACE_HUMAN +RacePrefOrc=0,racepreference,RACE_PREF_ORC,WESTRING_RACE_ORC +RacePrefNightElf=0,racepreference,RACE_PREF_NIGHTELF,WESTRING_RACE_NIGHTELF +RacePrefUndead=0,racepreference,RACE_PREF_UNDEAD,WESTRING_RACE_UNDEAD +RacePrefRandom=0,racepreference,RACE_PREF_RANDOM,随机 +ID_EVENT_GAME_VICTORY=0,eventid,EVENT_GAME_VICTORY,"(000)游戏事件 - 游戏胜利" +ID_EVENT_GAME_END_LEVEL=0,eventid,EVENT_GAME_END_LEVEL,"(001)游戏事件 - 游戏结束" +ID_EVENT_GAME_VARIABLE_LIMIT=0,eventid,EVENT_GAME_VARIABLE_LIMIT,"(002)游戏事件 - 变量改变" +ID_EVENT_GAME_STATE_LIMIT=0,eventid,EVENT_GAME_STATE_LIMIT,"(003)游戏事件 - 状态改变" +ID_EVENT_GAME_TIMER_EXPIRED=0,eventid,EVENT_GAME_TIMER_EXPIRED,"(004)游戏事件 - 计时器到期" +ID_EVENT_GAME_ENTER_REGION=0,eventid,EVENT_GAME_ENTER_REGION,"(005)游戏事件 - 进入区域" +ID_EVENT_GAME_LEAVE_REGION=0,eventid,EVENT_GAME_LEAVE_REGION,"(006)游戏事件 - 离开区域" +ID_EVENT_GAME_TRACKABLE_HIT=0,eventid,EVENT_GAME_TRACKABLE_HIT,"(007)游戏事件 - 鼠标点击可追踪物" +ID_EVENT_GAME_TRACKABLE_TRACK=0,eventid,EVENT_GAME_TRACKABLE_TRACK,"(008)游戏事件 - 鼠标移动到可追踪物" +ID_EVENT_GAME_SHOW_SKILL=0,eventid,EVENT_GAME_SHOW_SKILL,"(009)游戏事件 - 英雄技能按钮被点击" +ID_EVENT_GAME_SHOW_SKILL=0,eventid,EVENT_GAME_SHOW_SKILL,"(010)游戏事件 - 建造建筑按钮被点击" +ID_EVENT_PLAYER_STATE_LIMIT=0,eventid,EVENT_PLAYER_STATE_LIMIT,"(011)玩家事件 - 属性变化" +ID_EVENT_PLAYER_ALLIANCE_CHANGED=0,eventid,EVENT_PLAYER_ALLIANCE_CHANGED,"(012)玩家事件 - 联盟状态变化" +ID_EVENT_PLAYER_DEFEAT=0,eventid,EVENT_PLAYER_DEFEAT,"(013)玩家事件 - 游戏失败" +ID_EVENT_PLAYER_VICTORY=0,eventid,EVENT_PLAYER_VICTORY,"(014)玩家事件 - 游戏胜利" +ID_EVENT_PLAYER_LEAVE=0,eventid,EVENT_PLAYER_LEAVE,"(015)玩家事件 - 离开游戏" +ID_EVENT_PLAYER_CHAT=0,eventid,EVENT_PLAYER_CHAT,"(016)玩家事件 - (废弃的事件)" +ID_EVENT_PLAYER_END_CINEMATIC=0,eventid,EVENT_PLAYER_END_CINEMATIC,"(017)玩家事件 - 按下Esc键" +ID_EVENT_PLAYER_UNIT_ATTACKED=0,eventid,EVENT_PLAYER_UNIT_ATTACKED,"(018)玩家单位事件 - 被攻击" +ID_EVENT_PLAYER_UNIT_RESCUED=0,eventid,EVENT_PLAYER_UNIT_RESCUED,"(019)玩家单位事件 - 被营救" +ID_EVENT_PLAYER_UNIT_DEATH=0,eventid,EVENT_PLAYER_UNIT_DEATH,"(020)玩家单位事件 - 死亡" +ID_EVENT_PLAYER_UNIT_DECAY=0,eventid,EVENT_PLAYER_UNIT_DECAY,"(021)玩家单位事件 - 开始腐化" +ID_EVENT_PLAYER_UNIT_DETECTED=0,eventid,EVENT_PLAYER_UNIT_DETECTED,"(022)玩家单位事件 - 被侦测到" +ID_EVENT_PLAYER_UNIT_HIDDEN=0,eventid,EVENT_PLAYER_UNIT_HIDDEN,"(023)玩家单位事件 - 被隐藏" +ID_EVENT_PLAYER_UNIT_SELECTED=0,eventid,EVENT_PLAYER_UNIT_SELECTED,"(024)玩家单位事件 - 被选择" +ID_EVENT_PLAYER_UNIT_DESELECTED=0,eventid,EVENT_PLAYER_UNIT_DESELECTED,"(025)玩家单位事件 - 被取消选择" +ID_EVENT_PLAYER_UNIT_CONSTRUCT_START=0,eventid,EVENT_PLAYER_UNIT_CONSTRUCT_START,"(026)玩家单位事件 - 开始被建造" +ID_EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL=0,eventid,EVENT_PLAYER_UNIT_CONSTRUCT_CANCEL,"(027)玩家单位事件 - 被取消建造" +ID_EVENT_PLAYER_UNIT_CONSTRUCT_FINISH=0,eventid,EVENT_PLAYER_UNIT_CONSTRUCT_FINISH,"(028)玩家单位事件 - 完成建造" +ID_EVENT_PLAYER_UNIT_UPGRADE_START=0,eventid,EVENT_PLAYER_UNIT_UPGRADE_START,"(029)玩家单位事件 - 开始建筑升级" +ID_EVENT_PLAYER_UNIT_UPGRADE_CANCEL=0,eventid,EVENT_PLAYER_UNIT_UPGRADE_CANCEL,"(030)玩家单位事件 - 取消建筑升级" +ID_EVENT_PLAYER_UNIT_UPGRADE_FINISH=0,eventid,EVENT_PLAYER_UNIT_UPGRADE_FINISH,"(031)玩家单位事件 - 完成建筑升级" +ID_EVENT_PLAYER_UNIT_TRAIN_START=0,eventid,EVENT_PLAYER_UNIT_TRAIN_START,"(032)玩家单位事件 - 开始训练单位" +ID_EVENT_PLAYER_UNIT_TRAIN_CANCEL=0,eventid,EVENT_PLAYER_UNIT_TRAIN_CANCEL,"(033)玩家单位事件 - 取消训练单位" +ID_EVENT_PLAYER_UNIT_TRAIN_FINISH=0,eventid,EVENT_PLAYER_UNIT_TRAIN_FINISH,"(034)玩家单位事件 - 完成训练单位" +ID_EVENT_PLAYER_UNIT_RESEARCH_START=0,eventid,EVENT_PLAYER_UNIT_RESEARCH_START,"(035)玩家单位事件 - 开始研究科技" +ID_EVENT_PLAYER_UNIT_RESEARCH_CANCEL=0,eventid,EVENT_PLAYER_UNIT_RESEARCH_CANCEL,"(036)玩家单位事件 - 取消研究科技" +ID_EVENT_PLAYER_UNIT_RESEARCH_FINISH=0,eventid,EVENT_PLAYER_UNIT_RESEARCH_FINISH,"(037)玩家单位事件 - 完成研究科技" +ID_EVENT_PLAYER_UNIT_ISSUED_ORDER=0,eventid,EVENT_PLAYER_UNIT_ISSUED_ORDER,"(038)玩家单位事件 - 发布无目标指令" +ID_EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER=0,eventid,EVENT_PLAYER_UNIT_ISSUED_POINT_ORDER,"(039)玩家单位事件 - 发布指定点目标指令" +ID_EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER=0,eventid,EVENT_PLAYER_UNIT_ISSUED_TARGET_ORDER,"(040)玩家单位事件 - 发布指定物体目标指令" +ID_EVENT_PLAYER_HERO_LEVEL=0,eventid,EVENT_PLAYER_HERO_LEVEL,"(041)玩家单位事件 - 提升等级" +ID_EVENT_PLAYER_HERO_SKILL=0,eventid,EVENT_PLAYER_HERO_SKILL,"(042)玩家单位事件 - 学习技能" +ID_EVENT_PLAYER_HERO_REVIVABLE=0,eventid,EVENT_PLAYER_HERO_REVIVABLE,"(043)玩家单位事件 - 变得可重生" +ID_EVENT_PLAYER_HERO_REVIVE_START=0,eventid,EVENT_PLAYER_HERO_REVIVE_START,"(044)玩家单位事件 - 开始复活英雄" +ID_EVENT_PLAYER_HERO_REVIVE_CANCEL=0,eventid,EVENT_PLAYER_HERO_REVIVE_CANCEL,"(045)玩家单位事件 - 取消复活英雄" +ID_EVENT_PLAYER_HERO_REVIVE_FINISH=0,eventid,EVENT_PLAYER_HERO_REVIVE_FINISH,"(046)玩家单位事件 - 完成复活英雄" +ID_EVENT_PLAYER_UNIT_SUMMON=0,eventid,EVENT_PLAYER_UNIT_SUMMON,"(047)玩家单位事件 - 被召唤" +ID_EVENT_PLAYER_UNIT_DROP_ITEM=0,eventid,EVENT_PLAYER_UNIT_DROP_ITEM,"(048)玩家单位事件 - 丢弃物品" +ID_EVENT_PLAYER_UNIT_PICKUP_ITEM=0,eventid,EVENT_PLAYER_UNIT_PICKUP_ITEM,"(049)玩家单位事件 - 获得物品" +ID_EVENT_PLAYER_UNIT_USE_ITEM=0,eventid,EVENT_PLAYER_UNIT_USE_ITEM,"(050)玩家单位事件 - 使用物品" +ID_EVENT_PLAYER_UNIT_LOADED=0,eventid,EVENT_PLAYER_UNIT_LOADED,"(051)玩家单位事件 - 被运输机装载" +ID_EVENT_UNIT_DAMAGED=0,eventid,EVENT_UNIT_DAMAGED,"(052)单位事件 - 接受伤害" +ID_EVENT_UNIT_DEATH=0,eventid,EVENT_UNIT_DEATH,"(053)单位事件 - 死亡" +ID_EVENT_UNIT_DECAY=0,eventid,EVENT_UNIT_DECAY,"(054)单位事件 - 开始腐化" +ID_EVENT_UNIT_DETECTED=0,eventid,EVENT_UNIT_DETECTED,"(055)单位事件 - 被侦测到" +ID_EVENT_UNIT_HIDDEN=0,eventid,EVENT_UNIT_HIDDEN,"(056)单位事件 - 被隐藏" +ID_EVENT_UNIT_SELECTED=0,eventid,EVENT_UNIT_SELECTED,"(057)单位事件 - 被选择" +ID_EVENT_UNIT_DESELECTED=0,eventid,EVENT_UNIT_DESELECTED,"(058)单位事件 - 被取消选择" +ID_EVENT_UNIT_STATE_LIMIT=0,eventid,EVENT_UNIT_STATE_LIMIT,"(059)单位事件 - 生命值/魔法值发生变化" +ID_EVENT_UNIT_ACQUIRED_TARGET=0,eventid,EVENT_UNIT_ACQUIRED_TARGET,"(060)单位事件 - 注意到攻击目标" +ID_EVENT_UNIT_TARGET_IN_RANGE=0,eventid,EVENT_UNIT_TARGET_IN_RANGE,"(061)单位事件 - 获取攻击目标" +ID_EVENT_UNIT_ATTACKED=0,eventid,EVENT_UNIT_ATTACKED,"(062)单位事件 - 被攻击" +ID_EVENT_UNIT_RESCUED=0,eventid,EVENT_UNIT_RESCUED,"(063)单位事件 - 被营救" +ID_EVENT_UNIT_CONSTRUCT_CANCEL=0,eventid,EVENT_UNIT_CONSTRUCT_CANCEL,"(064)单位事件 - 被取消建造" +ID_EVENT_UNIT_CONSTRUCT_FINISH=0,eventid,EVENT_UNIT_CONSTRUCT_FINISH,"(065)单位事件 - 完成建造" +ID_EVENT_UNIT_UPGRADE_START=0,eventid,EVENT_UNIT_UPGRADE_START,"(066)单位事件 - 开始建筑升级" +ID_EVENT_UNIT_UPGRADE_CANCEL=0,eventid,EVENT_UNIT_UPGRADE_CANCEL,"(067)单位事件 - 取消建筑升级" +ID_EVENT_UNIT_UPGRADE_FINISH=0,eventid,EVENT_UNIT_UPGRADE_FINISH,"(068)单位事件 - 完成建筑升级" +ID_EVENT_UNIT_TRAIN_START=0,eventid,EVENT_UNIT_TRAIN_START,"(069)单位事件 - 开始训练单位" +ID_EVENT_UNIT_TRAIN_CANCEL=0,eventid,EVENT_UNIT_TRAIN_CANCEL,"(070)单位事件 - 取消训练单位" +ID_EVENT_UNIT_TRAIN_FINISH=0,eventid,EVENT_UNIT_TRAIN_FINISH,"(071)单位事件 - 完成训练单位" +ID_EVENT_UNIT_RESEARCH_START=0,eventid,EVENT_UNIT_RESEARCH_START,"(072)单位事件 - 开始研究科技" +ID_EVENT_UNIT_RESEARCH_CANCEL=0,eventid,EVENT_UNIT_RESEARCH_CANCEL,"(073)单位事件 - 取消研究科技" +ID_EVENT_UNIT_RESEARCH_FINISH=0,eventid,EVENT_UNIT_RESEARCH_FINISH,"(074)单位事件 - 完成研究科技" +ID_EVENT_UNIT_ISSUED_ORDER=0,eventid,EVENT_UNIT_ISSUED_ORDER,"(075)单位事件 - 发布无目标指令" +ID_EVENT_UNIT_ISSUED_POINT_ORDER=0,eventid,EVENT_UNIT_ISSUED_POINT_ORDER,"(076)单位事件 - 发布指定点目标指令" +ID_EVENT_UNIT_ISSUED_TARGET_ORDER=0,eventid,EVENT_UNIT_ISSUED_TARGET_ORDER,"(077)单位事件 - 发布指定物体目标指令" +ID_EVENT_UNIT_HERO_LEVEL=0,eventid,EVENT_UNIT_HERO_LEVEL,"(078)单位事件 - 提升等级" +ID_EVENT_UNIT_HERO_SKILL=0,eventid,EVENT_UNIT_HERO_SKILL,"(079)单位事件 - 学习技能" +ID_EVENT_UNIT_HERO_REVIVABLE=0,eventid,EVENT_UNIT_HERO_REVIVABLE,"(080)单位事件 - 变得可重生" +ID_EVENT_UNIT_HERO_REVIVE_START=0,eventid,EVENT_UNIT_HERO_REVIVE_START,"(081)单位事件 - 开始复活英雄" +ID_EVENT_UNIT_HERO_REVIVE_CANCEL=0,eventid,EVENT_UNIT_HERO_REVIVE_CANCEL,"(082)单位事件 - 取消复活英雄" +ID_EVENT_UNIT_HERO_REVIVE_FINISH=0,eventid,EVENT_UNIT_HERO_REVIVE_FINISH,"(083)单位事件 - 完成复活英雄" +ID_EVENT_UNIT_SUMMON=0,eventid,EVENT_UNIT_SUMMON,"(084)单位事件 - 召唤一个单位" +ID_EVENT_UNIT_DROP_ITEM=0,eventid,EVENT_UNIT_DROP_ITEM,"(085)单位事件 - 丢弃物品" +ID_EVENT_UNIT_PICKUP_ITEM=0,eventid,EVENT_UNIT_PICKUP_ITEM,"(086)单位事件 - 获得物品" +ID_EVENT_UNIT_USE_ITEM=0,eventid,EVENT_UNIT_USE_ITEM,"(087)单位事件 - 使用物品" +ID_EVENT_UNIT_LOADED=0,eventid,EVENT_UNIT_LOADED,"(088)单位事件 - 被运输机装载" +ID_EVENT_WIDGET_DEATH=0,eventid,EVENT_WIDGET_DEATH,"(089)widget事件 - 死亡" +ID_EVENT_DIALOG_BUTTON_CLICK=0,eventid,EVENT_DIALOG_BUTTON_CLICK,"(090)对话框事件 - 对话框按钮被点击" +ID_EVENT_DIALOG_CLICK=0,eventid,EVENT_DIALOG_CLICK,"(091)对话框事件 - 对话框被点击" +ID_EVENT_PLAYER_CHAT2=0,eventid,ConvertPlayerEvent(96),"(096)玩家事件 - 输入聊天消息" +ID_EVENT_GAME_LOADED=0,eventid,EVENT_GAME_LOADED,"(256)游戏事件 - 游戏读档" +ID_EVENT_GAME_TOURNAMENT_FINISH_SOON=0,eventid,EVENT_GAME_TOURNAMENT_FINISH_SOON,"(257)游戏事件 - 游戏将在现在结束" +ID_EVENT_GAME_TOURNAMENT_FINISH_NOW=0,eventid,EVENT_GAME_TOURNAMENT_FINISH_NOW,"(258)游戏事件 - 游戏将在不久结束" +ID_EVENT_GAME_SAVE=0,eventid,EVENT_GAME_SAVE,"(259)游戏事件 - 游戏存档" +ID_EVENT_PLAYER_ARROW_LEFT_DOWN=0,eventid,EVENT_PLAYER_ARROW_LEFT_DOWN,"(261)玩家键盘事件 - 按下Left键" +ID_EVENT_PLAYER_ARROW_LEFT_UP=0,eventid,EVENT_PLAYER_ARROW_LEFT_UP,"(262)玩家键盘事件 - 松开Left键" +ID_EVENT_PLAYER_ARROW_RIGHT_DOWN=0,eventid,EVENT_PLAYER_ARROW_RIGHT_DOWN,"(263)玩家键盘事件 - 按下Right键" +ID_EVENT_PLAYER_ARROW_RIGHT_UP=0,eventid,EVENT_PLAYER_ARROW_RIGHT_UP,"(264)玩家键盘事件 - 松开Right键" +ID_EVENT_PLAYER_ARROW_DOWN_DOWN=0,eventid,EVENT_PLAYER_ARROW_DOWN_DOWN,"(265)玩家键盘事件 - 按下Down键" +ID_EVENT_PLAYER_ARROW_DOWN_UP=0,eventid,EVENT_PLAYER_ARROW_DOWN_UP,"(266)玩家键盘事件 - 松开Down键" +ID_EVENT_PLAYER_ARROW_UP_DOWN=0,eventid,EVENT_PLAYER_ARROW_UP_DOWN,"(267)玩家键盘事件 - 按下Up键" +ID_EVENT_PLAYER_ARROW_UP_UP=0,eventid,EVENT_PLAYER_ARROW_UP_UP,"(268)玩家键盘事件 - 松开Up键" +ID_EVENT_PLAYER_UNIT_SELL=0,eventid,EVENT_PLAYER_UNIT_SELL,"(269)玩家单位事件 - 出售单位" +ID_EVENT_PLAYER_UNIT_CHANGE_OWNER=0,eventid,EVENT_PLAYER_UNIT_CHANGE_OWNER,"(270)玩家单位事件 - 改变所有者" +ID_EVENT_PLAYER_UNIT_SELL_ITEM=0,eventid,EVENT_PLAYER_UNIT_SELL_ITEM,"(271)玩家单位事件 - 出售物品" +ID_EVENT_PLAYER_UNIT_SPELL_CHANNEL=0,eventid,EVENT_PLAYER_UNIT_SPELL_CHANNEL,"(272)玩家单位事件 - 准备施放技能" +ID_EVENT_PLAYER_UNIT_SPELL_CAST=0,eventid,EVENT_PLAYER_UNIT_SPELL_CAST,"(273)玩家单位事件 - 开始施放技能" +ID_EVENT_PLAYER_UNIT_SPELL_EFFECT=0,eventid,EVENT_PLAYER_UNIT_SPELL_EFFECT,"(273)玩家单位事件 - 发动技能效果" +ID_EVENT_PLAYER_UNIT_SPELL_FINISH=0,eventid,EVENT_PLAYER_UNIT_SPELL_FINISH,"(275)玩家单位事件 - 施放技能结束" +ID_EVENT_PLAYER_UNIT_SPELL_ENDCAST=0,eventid,EVENT_PLAYER_UNIT_SPELL_ENDCAST,"(276)玩家单位事件 - 停止施放技能" +ID_EVENT_PLAYER_UNIT_PAWN_ITEM=0,eventid,EVENT_PLAYER_UNIT_PAWN_ITEM,"(277)玩家单位事件 - 抵押物品" +ID_EVENT_UNIT_SELL=0,eventid,EVENT_UNIT_SELL,"(286)单位事件 - 出售单位" +ID_EVENT_UNIT_CHANGE_OWNER=0,eventid,EVENT_UNIT_CHANGE_OWNER,"(287)单位事件 - 改变所有者" +ID_EVENT_UNIT_SELL_ITEM=0,eventid,EVENT_PLAYER_SELL_ITEM,"(288)单位事件 - 出售物品" +ID_EVENT_UNIT_SPELL_CHANNEL=0,eventid,EVENT_UNIT_SPELL_CHANNEL,"(289)单位事件 - 准备施放技能" +ID_EVENT_UNIT_SPELL_CAST=0,eventid,EVENT_UNIT_SPELL_CAST,"(290)单位事件 - 开始施放技能" +ID_EVENT_UNIT_SPELL_EFFECT=0,eventid,EVENT_UNIT_SPELL_EFFECT,"(291)单位事件 - 发动技能效果" +ID_EVENT_UNIT_SPELL_FINISH=0,eventid,EVENT_UNIT_SPELL_FINISH,"(292)单位事件 - 施放技能结束" +ID_EVENT_UNIT_SPELL_ENDCAST=0,eventid,EVENT_UNIT_SPELL_ENDCAST,"(293)单位事件 - 停止施放技能" +ID_EVENT_UNIT_PAWN_ITEM=0,eventid,EVENT_UNIT_PAWN_ITEM,"(294)单位事件 - 抵押物品" +ABILITY_STATE_COOLDOWN=0,AbilityState,1,冷却时间 +ABILITY_DATA_COST=0,AbilityDataInteger,104,魔法消耗 +ABILITY_DATA_UNITID=0,AbilityDataInteger,117,单位类型 +ABILITY_DATA_HOTKET=0,AbilityDataInteger,200,热键 +ABILITY_DATA_UNHOTKET=0,AbilityDataInteger,201,关闭热键 +ABILITY_DATA_RESEARCH_HOTKEY=0,AbilityDataInteger,202,学习热键 +ABILITY_DATA_CAST=0,AbilityDataReal,101,施放时间 +ABILITY_DATA_DUR=0,AbilityDataReal,102,持续时间(普通) +ABILITY_DATA_HERODUR=0,AbilityDataReal,103,持续时间(英雄) +ABILITY_DATA_COOL=0,AbilityDataReal,105,施放间隔 +ABILITY_DATA_AREA=0,AbilityDataReal,106,影响区域 +ABILITY_DATA_RNG=0,AbilityDataReal,107,施法距离 +ABILITY_DATA_DATA_A=0,AbilityDataReal,108,数据A +ABILITY_DATA_DATA_B=0,AbilityDataReal,109,数据B +ABILITY_DATA_DATA_C=0,AbilityDataReal,110,数据C +ABILITY_DATA_DATA_D=0,AbilityDataReal,111,数据D +ABILITY_DATA_DATA_E=0,AbilityDataReal,112,数据E +ABILITY_DATA_DATA_F=0,AbilityDataReal,113,数据F +ABILITY_DATA_DATA_G=0,AbilityDataReal,114,数据G +ABILITY_DATA_DATA_H=0,AbilityDataReal,115,数据H +ABILITY_DATA_DATA_I=0,AbilityDataReal,116,数据I +ABILITY_DATA_NAME=0,AbilityDataString,203,名字 +ABILITY_DATA_ART=0,AbilityDataString,204,图标 +ABILITY_DATA_TARGET_ART=0,AbilityDataString,205,目标效果 +ABILITY_DATA_CASTER_ART=0,AbilityDataString,206,施法者效果 +ABILITY_DATA_EFFECT_ART=0,AbilityDataString,207,目标点效果 +ABILITY_DATA_AREAEFFECT_ART=0,AbilityDataString,208,区域效果 +ABILITY_DATA_MISSILE_ART=0,AbilityDataString,209,投射物 +ABILITY_DATA_SPECIAL_ART=0,AbilityDataString,210,特殊效果 +ABILITY_DATA_LIGHTNING_EFFECT=0,AbilityDataString,211,闪电效果 +ABILITY_DATA_BUFF_TIP=0,AbilityDataString,212,buff提示 +ABILITY_DATA_BUFF_UBERTIP=0,AbilityDataString,213,buff提示(扩展) +ABILITY_DATA_RESEARCH_TIP=0,AbilityDataString,214,学习提示 +ABILITY_DATA_TIP=0,AbilityDataString,215,提示 +ABILITY_DATA_UNTIP=0,AbilityDataString,216,关闭提示 +ABILITY_DATA_RESEARCH_UBERTIP=0,AbilityDataString,217,学习提示(扩展) +ABILITY_DATA_UBERTIP=0,AbilityDataString,218,提示(扩展) +ABILITY_DATA_UNUBERTIP=0,AbilityDataString,219,关闭提示(扩展) +CHAT_RECIPIENT_ALL=0,ChatRecipient,0,所有人频道 +CHAT_RECIPIENT_ALLIES=0,ChatRecipient,1,盟友频道 +CHAT_RECIPIENT_OBSERVERS=0,ChatRecipient,2,观看者/裁判频道 +CHAT_RECIPIENT_PRIVATE=0,ChatRecipient,3,私人频道 +ITEM_DATA_ART=0,ItemDataString,1,图标 +ITEM_DATA_UBERTIP=0,ItemDataString,3,提示(扩展) +ITEM_DATA_TIP=0,ItemDataString,4,提示 +OrderTypeOrder=0,OrderType,`Order`,使用 +OrderTypeUnorder=0,OrderType,`Unorder`,关闭 +OrderTypeOrderon=0,OrderType,`Orderon`,激活 +OrderTypeOrderoff=0,OrderType,`Orderoff`,取消激活 + +[DefaultTriggerCategories] +NumCategories=1 +Category01="欢迎使用世界编辑器" + +[DefaultTriggers] +NumTriggers=1 +Trigger01Name="简介" +Trigger01Comment= +Trigger01Category=1 +Trigger01Events=0 +Trigger01Event01=DzTriggerRegisterMallItemSyncData +Trigger01Conditions=0 +Trigger01Condition01=OperatorCompareString,DzGetTriggerMallItem,OperatorEqualENE,"商品key" +Trigger01Condition02=OperatorComparePlayer,DzGetTriggerMallItemPlayer,OperatorEqualENE,Player00 +Trigger01Actions=4 +Trigger01Action01=CommentString,"欢迎使用世界编辑器,开始你的地图创造之旅。" +Trigger01Action02=CommentString,"你可以从dz.163.com获取最新编辑器咨询。" +Trigger01Action03=CommentString,"当你的地图意外损坏时,你可以在backups目录找到你最近26次保存的地图。" +Trigger01Action04=CommentString,"任何疑问请加官方作者群:QQ35063417。" + + + +DzAPI_Map_GameResult_CommitData +DzAPI_Map_GameResult_CommitTitle + +DzAPI_Map_GameResult_CommitGameMode +DzAPI_Map_GameResult_CommitGameResult + +[AIFunctionStrings] +TownThreatened="基地被攻击" +TownThreatened="基地被攻击" +TownThreatenedHint=" +TownHasMine="基地有金矿" +TownHasMine="#",~ID," 基地有金矿" +TownHasHall="基地有主建筑" +TownHasHall="#",~ID," 基地有主建筑" +CaptainIsHome="攻击指挥官在家" +CaptainIsHome="攻击指挥官在家" +CaptainIsFull="攻击组准备完毕" +CaptainIsFull="攻击组准备完毕" +CaptainIsEmpty="攻击组为空" +CaptainIsEmpty="攻击组为空" +CaptainRetreating="攻击指挥官撤退" +CaptainRetreating="攻击指挥官撤退" +CaptainAtGoal="攻击指挥官到达目的地" +CaptainAtGoal="攻击指挥官到达目的地" +CaptainInCombat="指挥官在战斗" +CaptainInCombat=~Captain Type," 指挥官在战斗" +CreepsOnMap="存在中立生物" +CreepsOnMap="存在中立生物" +ExpansionNeeded="需要扩张" +ExpansionNeeded="需要扩张" +ExpansionNeededHint="当AI需要开分矿时返回True." +GetUnitCount="单位总数" +GetUnitCount=~单位类型," 的总数" +GetUnitCountHint="包括正在建造的单位." +GetUnitCountDone="已完成单位总数" +GetUnitCountDone="已完成 ",~单位类型," 的总数" +GetUnitCountDoneHint="不包括包括正在建造的单位." +GetTownUnitCount="单位总数(指定基地)" +GetTownUnitCount=~单位类型," 的总数在#",~Town," 基地(只取已完成单位: ",~Option,")" +GetTownUnitCountHint="" +GetMinesOwned="拥有金矿数量" +GetMinesOwned="拥有金矿数量" +GetMinesOwnedHint="AI玩家正在使用的金矿数量." +GetGoldOwned="未被使用的金矿数量" +GetGoldOwned="未被使用的金矿数量" +GetGoldOwnedHint="未被采集保持满储金量的金矿." +TownWithMine="有金矿的基地ID" +TownWithMine="有金矿的基地ID" +TownWithMineHint="返回编号最靠前的有金矿的基地" +GetGold="当前黄金资源" +GetGold="当前黄金资源" +GetGoldHint="当前AI玩家拥有的黄金资源" +GetWood="当前木材资源" +GetWood="当前木材资源" +GetWoodHint="当前AI玩家拥有的木材资源" +GetUnitGoldCost="单位造价(黄金)" +GetUnitGoldCost="建造 ",~单位类型," 所需黄金" +GetUnitWoodCost="单位造价(木材)" +GetUnitWoodCost="建造 ",~单位类型," 所需木材" +GetUnitBuildTime="单位建造时间" +GetUnitBuildTime=~单位类型," 的建造时间" +GetUnitBuildTimeHint="时间单位为秒." +GetUpgradeLevel="当前科技等级" +GetUpgradeLevel="当前",~科技," 的等级" +GetUpgradeGoldCost="科技升级花费黄金" +GetUpgradeGoldCost=~科技," 升级花费黄金" +GetUpgradeWoodCost="科技升级花费木材" +GetUpgradeWoodCost=~科技," 升级花费木材" +GetNextExpansion="下一个扩张点ID" +GetNextExpansion="下一个扩张点ID" +GetNextExpansionHint= +FoodUsed="已使用人口" +FoodUsed="已使用人口" +FoodUsedHint="AI玩家的当前人口数" +TotalFoodProduced="可用人口数" +TotalFoodProduced="可用人口数" +TotalFoodProducedHint="AI玩家的当前可使用人口数" +GetFoodMade="单位提供人口数量" +GetFoodMade=~单位类型," 可提供的人口数量" +CommandsWaiting="等待命令数量" +CommandsWaiting="等待命令数量" +CommandsWaitingHint="命令可以通过触发动作'AI - 发送AI命令'发送给AI玩家." +CheckLastCommand="最后一条命令" +CheckLastCommand="最后一条发送的命令, ",~Option," 命令" +CheckLastCommandHint="命令可以通过触发动作'AI - 发送AI命令'发送给AI玩家." +CheckLastCommandData="最后一条命令数据" +CheckLastCommandData="最后一条发送命令的数据, ",~Option," 命令" +CheckLastCommandDataHint="命令可以通过触发动作'AI - 发送AI命令'发送给AI玩家." +CaptainGroupSize="攻击组人数" +CaptainGroupSize="攻击组人数" +CaptainGroupSizeHint="攻击组当前人数." +CaptainReadinessHP="攻击组生命级别" +CaptainReadinessHP="攻击组生命级别" +CaptainReadinessHPHint="生命级别为所有攻击组单位的平均百分比血量,最高为100." +CaptainReadinessMa="攻击魔法级别" +CaptainReadinessMa="攻击组魔法级别" +CaptainReadinessMaHint="魔法级别为所有攻击组单位的平均百分比魔法值,最高为100." +CurrentAttackWave="当前攻击波数" +CurrentAttackWave="当前攻击波数" +CurrentAttackWaveHint="攻击波数在AI编辑器攻击表中定义." +MeleeDifficulty="对战难度等级" +MeleeDifficulty="对战难度等级" diff --git a/share/mpq/ydwe/event.txt b/share/mpq/ydwe/event.txt new file mode 100644 index 0000000..4b1eb09 --- /dev/null +++ b/share/mpq/ydwe/event.txt @@ -0,0 +1,431 @@ +[MapInitializationEvent] +title = "地图初始化" +description = "地图初始化" +comment = "该事件发生在读取地图时." +category = TC_NOTHING +[[.args]] +type = nothing + +[YDWESyStemAnyUnitDamagedRegistTrigger] +title = "任意单位伤害事件" +description = "任意单位 接受伤害" +comment = "若触发器动作里有对单位造成伤害动作,会引起死循环,最好加入条件判断或在伤害前关闭当前触发器。不推荐新手使用。" +category = TC_YDET + +[YDWESyStemItemUnmovableRegistTrigger] +title = "任意单位移动物品事件" +description = "任意单位 移动物品栏里的物品" +comment = "若触发器动作里有移动物品的动作,会引起死循环,最好将移动物品的动作放到别的触发器内或移动物品前关闭当前触发器。" +category = TC_YDET + +[YDWESyStemItemCombineRegistTrigger] +title = "任意单位合成物品事件" +description = "任意单位 合成一件物品" +comment = "用来响应物品合成系统,当有物品被合成时,可以用‘最后合成的物品’捕捉到;合成该物品的单位则可用‘触发单位’捕捉到" +category = TC_YDET + +[YDWESyStemAbilityCastingOverRegistTrigger] +title = "任意单位施放特殊技能结束" +description = "任意单位施放特殊技能 ${特殊技能} 结束" +comment = "用来响应跳跃、环绕、钩子等YDWE提供的特殊技能,可用‘最后结束施放特殊技能的单位’来捕捉施放技能单位" +category = TC_YDET +[[.args]] +type = abilevent +default = "abileventA" + +[TriggerRegisterUnitEvent] +title = "指定单位事件" +description = "${指定单位} ${事件}" +comment = "" +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = unitevent +default = "UnitEventDeath" + +[TriggerRegisterPlayerUnitEventSimple] +title = "玩家单位事件" +description = "${Player} 的单位 ${Event}" +comment = "" +category = TC_UNIT +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerunitevent +default = "PlayerUnitEventDeath" + +[TriggerRegisterAnyUnitEventBJ] +title = "任意单位事件" +description = "任意单位 ${Event}" +comment = "" +category = TC_UNIT +[[.args]] +type = playerunitevent +default = "PlayerUnitEventDeath" + +[TriggerRegisterEnterRectSimple] +title = "单位进入矩形区域" +description = "任意单位进入 ${矩形区域}" +comment = "使用'事件响应 - 进入的单位'来响应进入该区域的单位. 事实上是创建不规则区域,并注册单位进入不规则区域事件,所以之后改动该矩形区域对事件不会产生任何影响." +category = TC_UNIT +[[.args]] +type = rect + +[TriggerRegisterLeaveRectSimple] +title = "单位离开矩形区域" +description = "任意单位离开 ${矩形区域}" +comment = "使用'事件响应 - 离开的单位'来响应离开该区域的单位. 事实上是创建不规则区域,并注册单位离开不规则区域事件,所以之后改动该矩形区域对事件不会产生任何影响." +category = TC_UNIT +[[.args]] +type = rect + +[TriggerRegisterEnterRegionSimple] +title = "单位进入不规则区域 [R]" +description = "任意单位进入 ${区域}" +comment = "使用'事件响应 - 进入的单位'来响应进入该区域的单位. 该事件需要在其他触发为其添加." +category = TC_UNIT +[[.args]] +type = region + +[TriggerRegisterLeaveRegionSimple] +title = "单位离开不规则区域 [R]" +description = "任意单位离开 ${区域}" +comment = "使用'事件响应 - 离开的单位'来响应离开该区域的单位. 该事件需要在其他触发为其添加." +category = TC_UNIT +[[.args]] +type = region + +[TriggerRegisterEnterRegion] +title = "单位进入不规则区域(指定条件) [R]" +description = "单位进入 ${区域} 并满足 ${条件}" +comment = "使用'事件响应 - 进入的单位'来响应进入该区域的单位. 该事件需要在其他触发为其添加." +category = TC_UNIT +[[.args]] +type = region +[[.args]] +type = boolexpr +default = "BoolExprNull" + +[TriggerRegisterLeaveRegion] +title = "单位离开不规则区域(指定条件) [R]" +description = "单位离开 ${区域} 并满足 ${条件}" +comment = "使用'事件响应 - 离开的单位'来响应离开该区域的单位. 该事件需要在其他触发为其添加." +category = TC_UNIT +[[.args]] +type = region +[[.args]] +type = boolexpr +default = "BoolExprNull" + +[TriggerRegisterUnitInRangeSimple] +title = "进入指定单位的范围" +description = "任意单位进入 ${范围} 以 ${Unit} 为中心的范围内" +comment = "通过 '事件响应 - 触发单位' 来获取进入范围的单位." +category = TC_UNIT +[[.args]] +type = real +default = "0" +[[.args]] +type = unit + +[TriggerRegisterUnitLifeEvent] +title = "生命值变化" +description = "${指定单位} 的生命值变为 ${Operation} ${Value}" +comment = "从不成立变为成立时触发该事件. 注意:该参照值在注册事件时即被确定为常量,是不会变动的." +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = limitop +default = "LimitOpLessThan" +[[.args]] +type = real +default = "50" + +[TriggerRegisterUnitManaEvent] +title = "魔法值变化" +description = "${指定单位} 的魔法值变为${Operation} ${Value}" +comment = "从不成立变为成立时触发该事件. 注意:该参照值在注册事件时即被确定为常量,是不会变动的." +category = TC_UNIT +[[.args]] +type = unit +[[.args]] +type = limitop +default = "LimitOpLessThan" +[[.args]] +type = real +default = "50" + +[TriggerRegisterDialogEventBJ] +title = "对话框被点击" +description = "${对话框} 被点击" +comment = "通过 '事件响应 - 被点击的对话框' 操作事件中的对话框." +script_name = TriggerRegisterDialogEvent +category = TC_DIALOG +[[.args]] +type = dialog + +[TriggerRegisterDialogButtonEvent] +title = "对话框按钮被点击 [R]" +description = "${对话框按钮} 被点击" +comment = "指定对话框按钮被点击,该事件一般需要在其他触发为其添加." +category = TC_DIALOG +[[.args]] +type = button + +[TriggerRegisterDeathEvent] +title = "可破坏物死亡" +description = "${可破坏物} 死亡" +comment = "使用'事件响应 - 死亡的可破坏物'来获取死亡物体." +category = TC_DESTRUCT +[[.args]] +type = destructable + +[TriggerRegisterDestDeathInRegionEvent] +title = "可破坏物在区域内死亡(矩形区域)" +description = "可破坏物在 ${矩形区域} 内死亡" +comment = "默认该事件只能监视最多64个可破坏物. 可以使用'设置 bj_destInRegionDiesCount'来设置该值. 不建议新手使用该触发." +category = TC_DESTRUCT +[[.args]] +type = rect + +[TriggerRegisterTrackableHitEvent] +title = "鼠标点击可追踪物 [R]" +description = "鼠标点击 ${可追踪物}" +comment = "" +category = TC_TRACKABLE +[[.args]] +type = trackable + +[TriggerRegisterTrackableTrackEvent] +title = "鼠标移动到追踪对象 [R]" +description = "鼠标移动到 ${可追踪物}" +comment = "" +category = TC_TRACKABLE +[[.args]] +type = trackable + +[TriggerRegisterTimerEventSingle] +title = "游戏计时(单次)" +description = "当游戏逝去 ${Time} 秒" +comment = "从事件开始的那一刻开始计时." +category = TC_TIME +[[.args]] +type = real +default = "5" +min = 0 + +[TriggerRegisterTimerEventPeriodic] +title = "游戏计时(循环)" +description = "每当游戏逝去 ${Time} 秒" +comment = "从事件开始的那一刻开始计时,直到计时完毕后双重新开始计时." +category = TC_TIME +[[.args]] +type = real +default = "2" +min = 0 + +[TriggerRegisterTimerExpireEventBJ] +title = "计时器到期" +description = "${计时器} 到期" +comment = "当计时器到0时触发该事件. 循环计时器可以多次触发该事件. 使用'事件响应 - 到期的计时器'来获取该计时器." +script_name = TriggerRegisterTimerExpireEvent +category = TC_TIME +[[.args]] +type = timer + +[TriggerRegisterPlayerChatEvent] +title = "输入聊天信息" +description = "${玩家} 输入 ${Text} ,信息过滤方式 ${Match Type}" +comment = "事件ID是(096)" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = string +[[.args]] +type = chatmatchtype +default = "ChatMatchTypeExact" + +[TriggerRegisterPlayerEventEndCinematic] +title = "按下Esc键" +description = "${玩家} 按下Esc键(跳过电影)" +comment = "该事件在玩家按下'Escape'键时触发(可能是玩家要跳过当前所播放的电影)." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" + +[TriggerRegisterPlayerSelectionEventBJ] +title = "选择单位事件" +description = "${玩家} ${Selects/Deselects} 一个单位" +comment = "通过'事件回应 - 触发单位' 操作被玩家选择的单位." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = seldeseloption +default = "SelDeselOptionSel" + +[TriggerRegisterPlayerKeyEventBJ] +title = "键盘事件" +description = "${玩家} ${Presses/Releases} ${Key} " +comment = "目前游戏只支持'Up/Down/Left/Right'四个方向键." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = keyeventtype +default = "KeyEventTypeDepress" +[[.args]] +type = keyeventkey +default = "KeyEventKeyLeft" + +[TriggerRegisterPlayerStateEvent] +title = "属性事件" +description = "${玩家} 的 ${Property} 属性 ${Operation} ${值}" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = playerstate +default = "PlayerStateGold" +[[.args]] +type = limitop +default = "LimitOpGreaterThanOrEqual" +[[.args]] +type = real +default = "1000" + +[TriggerRegisterPlayerEventAllianceChanged] +title = "联盟状态事件(任意状态)" +description = "${玩家} 改变联盟状态设定" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" + +[TriggerRegisterPlayerAllianceChange] +title = "联盟状态更改(指定项目)" +description = "${Player} 更改 ${Alliance Type} 设置" +comment = "当改变项目为【共享单位】时,(触发玩家)会不生效,此时不建议使用【任意玩家】事件。" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" +[[.args]] +type = alliancetype +default = "AllianceTypePassive" + +[TriggerRegisterPlayerEventVictory] +title = "游戏胜利" +description = "${玩家} 胜利后离开游戏" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" + +[TriggerRegisterPlayerEventDefeat] +title = "游戏失败" +description = "${玩家} 失败后离开游戏" +comment = "" +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" + +[TriggerRegisterPlayerEventLeave] +title = "离开游戏" +description = "${玩家} 离开游戏" +comment = "这个事件通过玩家离开游戏来开启." +category = TC_PLAYER +[[.args]] +type = player +default = "Player00" + +[TriggerRegisterItemDeathEvent] +title = "物品被破坏 [R]" +description = "${物品} 被破坏" +comment = "" +script_name = TriggerRegisterDeathEvent +category = TC_ITEM +[[.args]] +type = item + +[TriggerRegisterGameStateEventTimeOfDay] +title = "游戏时间事件" +description = "当游戏时间 ${Operation} ${时间}" +comment = "游戏时间采用24小时制.早上从6:00开始,下午从18:00开始." +category = TC_GAME +[[.args]] +type = limitop +default = "LimitOpEqual" +[[.args]] +type = real +default = "12" +min = 0 +max = 24 + +[TriggerRegisterVariableEvent] +title = "实数变量事件" +description = "${变量} 的值 ${Operation} ${值}" +comment = "这个事件只适用于实数类型的变量." +category = TC_GAME +[[.args]] +type = VarAsString_Real +[[.args]] +type = limitop +default = "LimitOpEqual" +[[.args]] +type = real +default = "0" + +[TriggerRegisterGameLoadedEventBJ] +title = "游戏读档" +description = "读取游戏存档" +comment = "当游戏读取完毕时,该事件生效." +category = TC_GAME +[[.args]] +type = nothing + +[TriggerRegisterGameSavedEventBJ] +title = "游戏存档" +description = "保存游戏存档" +comment = "在切入保存游戏界面前,该事件生效." +category = TC_GAME +[[.args]] +type = nothing + +[TriggerRegisterShowSkillEventBJ] +title = "英雄技能按钮被点击" +description = "英雄技能按钮被点击" +comment = "" +category = TC_GAME +[[.args]] +type = nothing + +[TriggerRegisterBuildSubmenuEventBJ] +title = "建造建筑按钮被点击" +description = "建造建筑按钮被点击" +comment = "" +category = TC_GAME +[[.args]] +type = nothing + +[TriggerRegisterGameEvent] +title = "比赛游戏事件" +description = "该游戏将在 ${Event Type} 后结束" +comment = "该事件只出现在Battle.net的自动匹配游戏." +category = TC_GAME +[[.args]] +type = gameevent +default = "GameEventTourneyNow" diff --git a/share/script/YDWE.lua b/share/script/YDWE.lua new file mode 100644 index 0000000..c0963a4 --- /dev/null +++ b/share/script/YDWE.lua @@ -0,0 +1,43 @@ +-------------------------------------------------------------------------- +-- YD编辑器的主配置和代码文件 +-- 本文件编码为UTF-8,在处理字符串时要注意使用iconv库转换 +-------------------------------------------------------------------------- + +require "log" + +log.debug("********************* ydwe initialize start *********************") + +do + local real_require = require + require = function (str, ...) + if not package.loaded[str] then + log.trace("Initializing '" .. str .. "'") + end + return real_require(str, ...) + end +end + +require "sys" +require "filesystem" +require "gui" +require "util" +require "event" +require "virtual_mpq" +require "registry" +require "version" +require "localization" +require "config" +require "plugin" +require "uiloader" +require "check_object" +require "ffi.loadlibrary" +require "ffi.gui" + +require "ydwe_on_menu" +require "ydwe_on_save" +require "ydwe_on_test" +require "ydwe_on_startup" +require "ydwe_on_dialog_message" +require "ydwe_on_new_object_id" + +log.debug("********************* ydwe initialize end *********************") diff --git a/share/script/check_object.lua b/share/script/check_object.lua new file mode 100644 index 0000000..2532f80 --- /dev/null +++ b/share/script/check_object.lua @@ -0,0 +1,141 @@ +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" +if not fs.exists(root) then + root = fs.ydwe_path() +end + +require 'util' +local w3xparser = require 'w3xparser' +local lni = require 'lni-c' + +local w2l = root / 'plugin' / 'w3x2lni' +local mpq = root / 'share' / 'mpq' / 'units' +local prebuilt = w2l / 'script' / 'prebuilt' + +local info = lni(assert(io.load(w2l / 'script' / 'info.ini')), 'info') +local typedefine = lni(assert(io.load(prebuilt / 'defined' / 'typedefine.ini')), 'defined') + +local select = select +local tonumber = tonumber +local tostring = tostring +local string_unpack = string.unpack +local string_pack = string.pack +local string_lower = string.lower +local string_sub = string.sub +local math_floor = math.floor +local table_concat = table.concat + +local buf_pos +local unpack_buf +local unpack_pos +local has_level +local metadata +local check_bufs + +local function set_pos(...) + unpack_pos = select(-1, ...) + return ... +end + +local function unpack(str) + return set_pos(string_unpack(str, unpack_buf, unpack_pos)) +end + +local function unpack_data(name) + local id, type = unpack 'c4l' + local id = string_unpack('z', id) + local except + local meta = metadata[id] + if meta then + except = typedefine[string_lower(meta.type)] or 3 + else + except = type + end + if type ~= except then + if type == 3 or except == 3 then + except = type + else + check_bufs[#check_bufs+1] = string_sub(unpack_buf, buf_pos, unpack_pos - 5) + check_bufs[#check_bufs+1] = string_pack('l', except) + buf_pos = unpack_pos + end + end + if has_level then + unpack 'll' + if type ~= except then + check_bufs[#check_bufs+1] = string_sub(unpack_buf, buf_pos, unpack_pos - 1) + buf_pos = unpack_pos + end + end + local value + if type == 0 then + value = unpack 'l' + elseif type == 1 or type == 2 then + value = unpack 'f' + else + value = unpack 'z' + end + if type ~= except then + local format, newvalue + if except == 0 then + format = 'l' + newvalue = math_floor(value) + elseif except == 1 or except == 2 then + format = 'f' + newvalue = value + 0.0 + end + check_bufs[#check_bufs+1] = string_pack(format, newvalue) + buf_pos = unpack_pos + log.debug(('convert object type:[%s][%s] - [%d][%s] --> [%d][%s]'):format(name, id, type, value, except, newvalue)) + end + unpack 'l' +end + +local function unpack_obj() + local parent, name, count = unpack 'c4c4l' + for i = 1, count do + unpack_data(name) + end +end + +local function unpack_chunk() + local count = unpack 'l' + for i = 1, count do + unpack_obj() + end +end + +local function unpack_head() + unpack 'l' +end + +local function check(type, buf) + buf_pos = 1 + unpack_pos = 1 + unpack_buf = buf + has_level = info.key.max_level[type] + metadata = w3xparser.slk(io.load(mpq / info.metadata[type])) + check_bufs = {} + + unpack_head() + unpack_chunk() + unpack_chunk() + + if buf_pos > 1 then + check_bufs[#check_bufs+1] = unpack_buf:sub(buf_pos) + return table_concat(check_bufs) + end + + return buf +end + +local function init() + local storm = require 'ffi.storm' + for _, type in ipairs {'ability', 'unit', 'item', 'doodad', 'destructable', 'buff', 'upgrade'} do + local filename = info.obj[type] + virtual_mpq.watch(filename, function () + return check(type, storm.load_file(filename)) + end) + end +end + +init() diff --git a/share/script/compile/cjass.lua b/share/script/compile/cjass.lua new file mode 100644 index 0000000..e278e97 --- /dev/null +++ b/share/script/compile/cjass.lua @@ -0,0 +1,40 @@ +require "sys" +require "filesystem" +require "util" + +cjass = {} + +cjass.path = fs.ydwe_path() / "plugin" / "AdicHelper" +cjass.exe_path = cjass.path / "AdicHelper.exe" + +-- 使用cJass编译地图 +-- map_path - 地图路径,fs.path对象 +-- option - 附加编译选项, table,支持选项为: +-- enable_jasshelper_debug - 启用Debug模式,true/false +-- runtime_version - 魔兽版本 +-- 返回:true编译成功,false编译失败 +function cjass.do_compile(self, map_path, option) + local parameter = option.runtime_version:is_new() and " /v24" or " /v23" + .. (option.enable_jasshelper_debug and " /dbg" or "") + + local command_line = string.format('"%s"%s /mappars="%s"', + self.exe_path:string(), + parameter, + map_path:string() + ) + + return sys.spawn(command_line, self.path, true) +end + +function cjass.compile(self, map_path, option) + log.trace("CJass compilation start.") + local result = self:do_compile(map_path, option) + + if result then + log.debug("CJass compilation succeeded.") + else + log.error("CJass compilation failed.") + end + + return result +end diff --git a/share/script/compile/inject_code.lua b/share/script/compile/inject_code.lua new file mode 100644 index 0000000..dcd29f3 --- /dev/null +++ b/share/script/compile/inject_code.lua @@ -0,0 +1,181 @@ + +inject_code = {} + +-- 注入代码表 +inject_code.new_table = {} +inject_code.old_table = {} + +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" +if not fs.exists(root) then + root = fs.ydwe_path() +end + +function inject_code:inject_file(op, path_in_archive) + op.inject_file(root / "share" / "mpq" / "units" / path_in_archive, path_in_archive) +end + +-- 侦测需要注入哪些代码 +-- op.input - 脚本的路径,fs.path变量 +-- op.option - 选项,table类型,支持成员: +-- runtime_version - 表示魔兽版本 +-- 返回:一个table,数组形式,包含所有需要注入的文件名(注意不是fs.path) +function inject_code:detect(op) + -- 结果变量 + local r = {} + -- 读入所有文本 + local s, e = io.load(op.input) + -- 文件存在 + if s then + -- 检查是否有需要注入的函数 + local all_table = op.option.runtime_version:is_new() and self.new_table or self.old_table + + for function_name, file in pairs(all_table) do + if not r[file] and s:find(function_name) then + r[file] = true + end + end + else + log.error("Error occured when opening map script.") + log.error(e) + end + return r +end + +-- 注入代码到Jass代码文件(最常见的是war3map.j)中 +-- op.output - war3map.j的路径,fs.path对象 +-- tbl - 所有需要注入的代码文件路径,table,table中可以是 +-- string - 此时为YDWE / "jass" 目录下的对应名称的文件 +-- fs.path - 此时取其路径 +-- 注:该table必须是数组形式的,哈希表形式的不处理 +-- 返回值:0 - 成功;-1 - 出错失败;1 - 什么都没做 +function inject_code:do_inject(op, tbl) + -- 结果 + local result = 1 + if tbl and next(tbl) then + -- 默认成功 + result = 0 + log.trace("Writing code to " .. op.output:filename():string()) + + -- 打开文件供写入(追加模式) + local map_script_file, e = io.open(op.output, "a+b") + if map_script_file then + -- 循环处理每个需要注入的文件 + for path in pairs(tbl) do + log.trace("Injecting " .. path:string()) + local code_content, e = io.load(path) + if code_content then + -- 插入代码到原文件最后 + map_script_file:write(code_content) + -- 写上一个换行符(我日他妈的cJass你居然不支持Linux格式的换行符) + map_script_file:write("\r\n") + -- 成功 + log.trace("Injection completed") + else + result = -1 + log.error("Error occured when reading code to inject.") + log.error(e) + end + end + + -- 关闭文件 + map_script_file:close() + else + result = -1 + log.error("Error occured when writing code to map script") + log.error(e) + end + end + + return result +end + + +function inject_code:compile(op) + op.output = op.input + return self:do_inject(op, self:detect(op)) +end + +-- 扫描注入代码 +-- config_dir - 需要扫描的路径 +-- 返回值无,修改全局变量inject_code_table_new以及inject_code_table_old +-- inject_code_table_new - 新版(1.24)函数表 +-- inject_code_table_old - 旧版函数表 +function inject_code:scan(config_dir) + local counter = 0 + log.trace("Scanning for inject files in " .. config_dir:string()) + local once = {} + -- 遍历目录 + for full_path in config_dir:list_directory() do + if fs.is_directory(full_path) then + -- 递归处理 + counter = counter + self:scan(full_path) + elseif full_path:extension():string() == ".cfg" then + -- 插入新表 + local new_table = {} + local old_table = {} + + -- 解析状态,默认0 + -- 0 - 1.24/1.20通用 + -- 1 - 1.24专用 + -- 2 - 1.20专用 + local state = 0 + + -- 循环处理每一行 + for line in io.lines(full_path) do + -- 插入函数名 + local trimed = line:trim() + if trimed ~= "" and trimed:sub(1, 1) ~= "#" then + if trimed == "[general]" then + state = 0 + elseif trimed == "[new]" then + state = 1 + elseif trimed == "[old]" then + state = 2 + else + if state == 0 then + table.insert(new_table, trimed) + table.insert(old_table, trimed) + elseif state == 1 then + table.insert(new_table, trimed) + elseif state == 2 then + table.insert(old_table, trimed) + end + end + end + end + + -- 插入全局表中(替换文件扩展名) + local substitution = full_path + substitution = substitution:replace_extension(fs.path(".j")) + local function insert(file, a, b) + for _, fname in ipairs(a) do + if b[fname] then + local unuse = file + log.warn('注入函数['..fname..']重复定义') + if fs.last_write_time(file) > fs.last_write_time(b[fname]) then + unuse = b[fname] + b[fname] = file + end + if not once[fname] then + log.warn('注入函数['..fname..']重复定义') + log.warn(' 生效', b[fname], fs.last_write_time(b[fname])) + log.warn(' 失效', unuse, fs.last_write_time(unuse) ) + once[fname] = true + end + else + b[fname] = file + end + end + end + insert(substitution, old_table, self.old_table) + insert(substitution, new_table, self.new_table) + counter = counter + 1 + end + end + return counter +end + +function inject_code:initialize() + local counter = self:scan(root / "jass") + log.trace(string.format("Scanned file: %d", counter)) +end diff --git a/share/script/compile/jasshelper.lua b/share/script/compile/jasshelper.lua new file mode 100644 index 0000000..837d2e6 --- /dev/null +++ b/share/script/compile/jasshelper.lua @@ -0,0 +1,181 @@ +require "sys" +require "filesystem" +require "util" +require "mpq_util" +local storm = require 'ffi.storm' +local stormlib = require 'ffi.stormlib' + +jasshelper = {} + +jasshelper.path = fs.ydwe_path() / "plugin" / "jasshelper" +jasshelper.exe_path = jasshelper.path / "jasshelper.exe" + +local config = [[ +[jasscompiler] +%q +"%s$COMMONJ $BLIZZARDJ $WAR3MAPJ" +]] + + +-- 根据版本获取YDWE自带的Jass库函数(bj和cj)路径 +-- version - 魔兽版本,数 +-- 返回:cj路径,bj路径,都是fs.path +function jasshelper.default_jass_libs(self, version) + if version:is_new() then + return (fs.ydwe_path() / "jass" / "system" / "ht" / "common.j"), + (fs.ydwe_path() / "jass" / "system" / "ht" / "blizzard.j") + else + return (fs.ydwe_path() / "jass" / "system" / "rb" / "common.j"), + (fs.ydwe_path() / "jass" / "system" / "rb" / "blizzard.j") + end +end + +-- 准备魔兽争霸3的Jass库函数(common.j和blizzard.j)供语法检查用 +-- 如果地图中有,则优先使用地图的,否则使用自带的 +-- map_path - 地图路径,fs.path对象 +-- 返回2个值:cj路径,bj路径,都是fs.path。 +function jasshelper.prepare_jass_libs(self, map_path, version) + local common_j_path = self.path / "common.j" + local blizzard_j_path = self.path / "blizzard.j" + local map_has_cj = false + local map_has_bj = false + + -- 从地图中解压缩两个重要文件到jasshelper目录(供语法检查用) + local mpq = stormlib.open(map_path, true) + if mpq then + -- 如果地图中导入了,优先使用地图的 + if mpq:has_file("common.j") then + mpq:extract("common.j", common_j_path) + map_has_cj = true + elseif mpq:has_file("scripts\\common.j") then + mpq:extract("scripts\\common.j", common_j_path) + map_has_cj = true + end + + if mpq:has_file("blizzard.j") then + mpq:extract("blizzard.j", blizzard_j_path) + map_has_bj = true + elseif mpq:has_file("scripts\\blizzard.j") then + mpq:extract("scripts\\blizzard.j", blizzard_j_path) + map_has_bj = true + end + mpq:close() + else + log.warn("Cannot open map archive, using default bj and cj instead.") + end + + -- 是否和当前版本一致? + local use_default = (war3_version:is_new() == version:is_new()) + local default_common_j_path, default_blizzard_j_path = self:default_jass_libs(version) + if not map_has_cj then + if use_default then + if storm.has_file("common.j") then + storm.extract_file(common_j_path, "common.j") + elseif storm.has_file("scripts\\common.j") then + storm.extract_file(common_j_path, "scripts\\common.j") + else + common_j_path = default_common_j_path + end + else + common_j_path = default_common_j_path + end + end + if not map_has_bj then + if use_default then + if storm.has_file("blizzard.j") then + storm.extract_file(blizzard_j_path, "blizzard.j") + elseif storm.has_file("scripts\\blizzard.j") then + storm.extract_file(blizzard_j_path, "scripts\\blizzard.j") + else + blizzard_j_path = default_blizzard_j_path + end + else + blizzard_j_path = default_blizzard_j_path + end + end + + return common_j_path, blizzard_j_path +end + + +-- 使用JassHelper编译地图 +-- map_path - 地图路径,fs.path对象 +-- common_j_path - common.j路径,fs.path对象 +-- blizzard_j_path - blizzard.j路径,fs.path对象 +-- option - 编译选项, table,目前支持参数: +-- enable_jasshelper - 启用JassHelper,true/false +-- enable_jasshelper_debug - 启用JassHelper的Debug,true/false +-- enable_jasshelper_optimization - 启用优化,true/false +-- 返回:true编译成功,false编译失败 +function jasshelper.do_compile(self, map_path, common_j_path, blizzard_j_path, option) + local parameter = "" + + -- 需要做vJass编译? + if option.enable_jasshelper then + -- debug选项(--debug) + if option.enable_jasshelper_debug then + parameter = parameter .. " --debug" + end + -- (关闭)优化选项(--nooptimize) + if not option.enable_jasshelper_optimization then + parameter = parameter .. " --nooptimize" + end + else + -- 不编译vJass选项(--nopreprocessor) + parameter = parameter .. " --nopreprocessor" + end + + if option.enable_jasshelper_scriptonly then + return mpq_util:update_file(map_path, 'war3map.j', + function (map_handle, in_script_path) + local out_script_path = fs.ydwe_path() / "logs" / "jasshelper.j" + + -- 生成命令行 + local command_line = string.format('"%s"%s --scriptonly "%s" "%s" "%s" "%s"', + self.exe_path:string(), + parameter, + common_j_path:string(), + blizzard_j_path:string(), + in_script_path:string(), + out_script_path:string() + ) + -- 执行并获取结果 + if not sys.spawn(command_line, fs.ydwe_path(), true) then + return nil + end + + return out_script_path + end + ) + else + -- 生成命令行 + local command_line = string.format('"%s"%s "%s" "%s" "%s"', + self.exe_path:string(), + parameter, + common_j_path:string(), + blizzard_j_path:string(), + map_path:string() + ) + + -- 执行并获取结果 + return sys.spawn(command_line, fs.ydwe_path(), true) + end + +end + +function jasshelper.compile(self, map_path, option) + log.trace("JassHelper compilation start.") + local common_j_path, blizzard_j_path = self:prepare_jass_libs(map_path, option.runtime_version) + if option.pjass == '1' then + io.save(fs.ydwe_path() / 'jasshelper.conf', config:format('../pjass/pjass-classic.exe', '')) + else + if option.runtime_version:is_new() then + io.save(fs.ydwe_path() / 'jasshelper.conf', config:format('../pjass/pjass-latest.exe', '')) + else + io.save(fs.ydwe_path() / 'jasshelper.conf', config:format('../pjass/pjass-latest.exe', '+rb ')) + end + end + local res = self:do_compile(map_path, common_j_path, blizzard_j_path, option) + fs.remove(fs.ydwe_path() / 'jasshelper.conf') + return res +end diff --git a/share/script/compile/native.lua b/share/script/compile/native.lua new file mode 100644 index 0000000..df935b1 --- /dev/null +++ b/share/script/compile/native.lua @@ -0,0 +1,114 @@ +require "sys" +require "filesystem" +require "util" +require "mpq_util" + +native = {} +native.list = {} +native.file = {} + +local function slice_cut(slice, pattern) + for i, s in ipairs(slice) do + local f, l = s:find(pattern) + if f then + slice[i] = s:sub(1, f-1) + table.insert(slice, i+1, s:sub(l+1)) + return true + end + end + return false +end + +function native:inject(input, output) + local inbuf = io.load(input) + if not inbuf then + return false + end + local first, last = inbuf:find('endglobals\r') + if not first then + return false + end + local inject = {} + local inglobal = inbuf:sub(1, first-1) + local infunc = { inbuf:sub(last+1) } + for native, file in pairs(self.list) do + if slice_cut(infunc, native) then + inject[file] = self.file[file] + end + end + if not next(inject) then + return false + end + local global = { } + local func = { } + for _, buf in pairs(inject) do + local _, globals_first = buf:find('globals\r') + local globals_last, function_first = buf:find('endglobals\r') + if globals_first and globals_last then + table.insert(global, buf:sub(globals_first+1, globals_last-1)) + else + function_first = -1 + end + table.insert(func, buf:sub(function_first+1)) + end + + local t = {} + table.insert(t, inglobal) + table.move(global, 1, #global, #t+1, t) + table.insert(t, 'endglobals\r\n') + table.move(func, 1, #func, #t+1, t) + table.move(infunc, 1, #infunc, #t+1, t) + return io.save(output, table.concat(t)) +end + +function native:compile(op) + local native = fs.ydwe_path() / "jass" / "native" + if not fs.exists(native) or not next(self.list) then + return + end + log.info('Native compilation start.') + return mpq_util:update_file(op.map_path, 'war3map.j', + function (_, input) + local output = fs.ydwe_path() / "logs" / "native.j" + if not self:inject(input, output) then + return input + end + return output + end + ) +end + +function native:scan(path) + local buf = io.load(path) + if not buf then + return + end + local t = {} + local pos = 1 + while true do + local f, l = buf:find('native %w+ takes [%w, ]+', pos) + if not f then + table.insert(t, buf:sub(pos+1)) + break + end + local native = buf:sub(f, l) + self.list[native] = path + log.info('Native scan ', path, 'found', native) + table.insert(t, buf:sub(pos, f-1)) + pos = l+1 + end + self.file[path] = table.concat(t) +end + +function native:initialize() + local native = fs.ydwe_path() / "jass" / "native" + if not fs.exists(native) then + return + end + for fullpath in native:list_directory() do + if fs.is_directory(fullpath) then + elseif fullpath:extension():string() == ".j" then + self:scan(fullpath) + end + end +end diff --git a/share/script/compile/template.lua b/share/script/compile/template.lua new file mode 100644 index 0000000..0c3d0ad --- /dev/null +++ b/share/script/compile/template.lua @@ -0,0 +1,139 @@ + +local select=select +local load=load +local string=string +local table=table +local storm = require 'ffi.storm' + +local function result(...) + return select("#",...), select(1,...) +end + +local function precompile(code, output_func, lua_codes) + if lua_codes == nil then + lua_codes = {''} + end + local start_tag = '' + + local start1, end1 = string.find(code, start_tag, 1, true) + local start2 = nil + local end2 = 0 + local cEqual = string.byte('=', 1) + while start1 ~= nil do + if start1 > end2 + 1 then + table.insert(lua_codes, output_func..'('..string.format("%q", string.sub(code, end2 + 1, start1 - 1))..')') + end + start2, end2 = string.find(code, end_tag, end1 + 1, true) + if start2 ~= nil then + if string.byte(code, end1 + 1) ~= cEqual then + table.insert(lua_codes, string.sub(code, end1 + 1, start2 - 1)) + else + table.insert(lua_codes, output_func..'('..string.sub(code, end1 + 2, start2 - 1)..')') + end + start1, end1 = string.find(code, start_tag, end2 + 1, true) + else + -- end tag not found + end2 = end1 + start1 = nil + -- we could error it, but we ignore it here + end + end + table.insert(lua_codes, output_func..'('..string.format("%q", string.sub(code, end2 + 1))..')') + return +end + +local function map_file_import(path_in_archive) + return function (buf, is_path) + if is_path then + log.trace("[stormlib]import file", path_in_archive) + __map_handle__:add_file(path_in_archive, __map_path__:parent_path() / buf) + return + else + local temp_file_path = fs.ydwe_path() / "logs" / "import" / path_in_archive + fs.create_directories(temp_file_path:parent_path()) + if not io.save(temp_file_path, buf) then + log.error("failed: save " .. temp_file_path:string()) + return + end + log.trace("[stormlib]import file", path_in_archive) + __map_handle__:add_file(path_in_archive, temp_file_path) + return + end + end +end + +local function string_hash(str) + return string.format('0x%08X', storm.string_hash(str)) +end + +template = {} + +function template:do_compile(op) + local code, err = io.load(op.input) + if not code then + log.error("Template read " .. op.input:string() .. ". Error: " .. err) + return false, err + end + + local lua_codes = {''} + table.insert(lua_codes, "local __jass_result__ = {''}") + table.insert(lua_codes, "local function __jass_output__(str) table.insert(__jass_result__, str) end") + local r, err = pcall(precompile, code, '__jass_output__', lua_codes) + if not r then + return r, err + end + + package.loaded['slk'] = nil + __map_handle__ = op.map_handle + __map_path__ = op.map_path + local env = { + import = map_file_import, + StringHash = string_hash, + ability2order = require 'computed.ability2order', + } + setmetatable(env, {__index = _G}) + table.insert(lua_codes, "return table.concat(__jass_result__)") + local f, err = load(table.concat(lua_codes, '\n'), nil, 't', env) + if not f then + return f, err + end + + local suc, content = xpcall(f, function(msg) return debug.traceback(msg) end) + if not suc then + return false, content + end + if package.loaded['slk'] then + package.loaded['slk']:refresh(__map_handle__.handle) + end + return true, content +end + +function template:compile(op) + log.trace("Template compilation start.") + op.output = fs.ydwe_path() / "logs" / "lua_processed.j" + local success, content = self:do_compile(op) + if not success then + if content then + local msg = content + local pos = content:find 'stack traceback:' + if pos then + msg = msg:sub(1, pos-1) + end + gui.error_message(nil, __(msg)) + else + gui.error_message(nil, _("Unknown")) + end + log.error("Template error processing: " .. tostring(content)) + return false + end + + local result, err = io.save(op.output, content) + if not result then + log.error("Template write " .. op.output:string() .. ". Error: " .. err) + return false + end + + log.debug("Template compilation succeeded.") + return true +end diff --git a/share/script/compile/wave.lua b/share/script/compile/wave.lua new file mode 100644 index 0000000..6fc2554 --- /dev/null +++ b/share/script/compile/wave.lua @@ -0,0 +1,97 @@ +require "sys" +require "filesystem" +require "util" + +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" +if not fs.exists(root) then + root = fs.ydwe_path() +end + +wave = {} +wave.path = fs.ydwe_path() / "plugin" / "wave" +wave.exe_path = wave.path / "Wave.exe" +wave.sys_include_path = wave.path / "include" +wave.plugin_include_path = fs.ydwe_path() / "plugin" +wave.jass_include_path = root / "jass" +wave.force_file_path = wave.sys_include_path / "WaveForce.i" + +local function pathstring(path) + local str = path:string() + if str:sub(-1) == '\\' then + return '"' .. str .. ' "' + else + return '"' .. str .. '"' + end +end + +-- 预处理代码 +-- op.input - 输入文件路径 +-- op.option - 预处理选项,table,支持的值有 +-- runtime_version - 表示魔兽版本 +-- enable_jasshelper_debug - 布尔值,是否是调试模式 +-- enable_yd_trigger - 布尔值,是否启用YD触发器 +-- 返回:number, info, path - 子进程返回值;预处理输出信息;输出文件路径 +function wave:do_compile(op) + local cmd = '' + cmd = cmd .. '--autooutput ' + cmd = cmd .. string.format('--sysinclude=%s ', pathstring(self.sys_include_path)) + cmd = cmd .. string.format('--sysinclude=%s ', pathstring(self.plugin_include_path)) + cmd = cmd .. string.format('--include=%s ', pathstring(op.map_path:parent_path())) + cmd = cmd .. string.format('--include=%s ', pathstring(self.jass_include_path)) + cmd = cmd .. string.format('--define=WARCRAFT_VERSION=%d ', 100 * op.option.runtime_version.major + op.option.runtime_version.minor) + cmd = cmd .. string.format('--define=YDWE_VERSION_STRING=\\"%s\\" ', tostring(ydwe_version)) + if op.option.enable_jasshelper_debug then + cmd = cmd .. '--define=DEBUG=1 ' + end + if tonumber(global_config["ScriptInjection"]["Option"]) == 0 then + cmd = cmd .. "--define=SCRIPT_INJECTION=1 " + end + if not op.option.enable_yd_trigger then + cmd = cmd .. '--define=DISABLE_YDTRIGGER=1 ' + end + if fs.exists(self.force_file_path) then + cmd = cmd .. string.format('--forceinclude=%s ', self.force_file_path:filename():string()) + end + cmd = cmd .. "--extended --c99 --preserve=2 --line=0 " + + local command_line = string.format('%s %s %s', pathstring(self.exe_path), cmd, pathstring(op.input)) + -- 启动进程 + local proc, out_rd, err_rd, in_wr = sys.spawn_pipe(command_line, nil) + if proc then + local out = out_rd:read("*a") + local err = err_rd:read("*a") + local exit_code = proc:wait() + proc:close() + proc = nil + return exit_code, out, err + else + return -1, nil, nil + end +end + +function wave:compile(op) + log.trace("Wave compilation start.") + + local map_script_file = io.open(op.input, "a+b") + if map_script_file then + map_script_file:write("/**/\r\n") + map_script_file:close() + end + + -- 输出路径 + op.output = op.input:parent_path() / (op.input:stem():string() .. ".i") + + local exit_code, out, err = self:do_compile(op) + + -- 退出码0代表成功 + if exit_code ~= 0 then + if out and err then + gui.error_message(nil, _("Preprocessor failed with message:\nstdout:%s\nstderr: %s"), out, err) + else + gui.error_message(nil, _("Cannot start preprocessor process.")) + end + return false + end + + return true +end diff --git a/share/script/computed/ability2order.lua b/share/script/computed/ability2order.lua new file mode 100644 index 0000000..71f2985 --- /dev/null +++ b/share/script/computed/ability2order.lua @@ -0,0 +1,29 @@ +local order_list = require 'computed.order_list' +local order_id = require 'computed.order_id' + +return function (skill, type) + if skill:sub(1,1) == "'" and skill:sub(-1,-1) == "'" then + skill = skill:sub(2, -2) + else + skill = tonumber(skill) + if skill == nil then + return 0 + end + end + local ability = require 'slk'.ability + if not ability[skill] then + return 0 + end + local code = ability[skill].code + if code == 'ANcl' then + local order = ability[skill].DataF1 + if not order then + return 0 + end + return order_id[order] or 0 + end + if not order_list[type] then + return 0 + end + return order_list[type][code] or 0 +end diff --git a/share/script/computed/order_id.lua b/share/script/computed/order_id.lua new file mode 100644 index 0000000..f035b05 --- /dev/null +++ b/share/script/computed/order_id.lua @@ -0,0 +1,352 @@ +local order2id = { + smart = 0xD0003, + stop = 0xD0004, + setrally = 0xD000C, + getitem = 0xD000D, + attack = 0xD000F, + attackground = 0xD0010, + attackonce = 0xD0011, + move = 0xD0012, + AImove = 0xD0014, + patrol = 0xD0016, + holdposition = 0xD0019, + build = 0xD001A, + humanbuild = 0xD001B, + orcbuild = 0xD001C, + nightelfbuild = 0xD001D, + undeadbuild = 0xD001E, + resumebuild = 0xD001F, + dropitem = 0xD0021, + detectaoe = 0xD002F, + resumeharvesting = 0xD0031, + harvest = 0xD0032, + returnresources = 0xD0034, + autoharvestgold = 0xD0035, + autoharvestlumber = 0xD0036, + neutraldetectaoe = 0xD0037, + repair = 0xD0038, + repairon = 0xD0039, + repairoff = 0xD003A, + revive = 0xD0047, + selfdestruct = 0xD0048, + selfdestructon = 0xD0049, + selfdestructoff = 0xD004A, + board = 0xD004B, + forceboard = 0xD004C, + load = 0xD004E, + unload = 0xD004F, + unloadall = 0xD0050, + unloadallinstant = 0xD0051, + loadcorpse = 0xD0052, + loadcorpseinstant = 0xD0055, + unloadallcorpses = 0xD0056, + defend = 0xD0057, + undefend = 0xD0058, + dispel = 0xD0059, + flare = 0xD005C, + heal = 0xD005F, + healon = 0xD0060, + healoff = 0xD0061, + innerfire = 0xD0062, + innerfireon = 0xD0063, + innerfireoff = 0xD0064, + invisibility = 0xD0065, + militiaconvert = 0xD0067, + militia = 0xD0068, + militiaoff = 0xD0069, + polymorph = 0xD006A, + slow = 0xD006B, + slowon = 0xD006C, + slowoff = 0xD006D, + tankdroppilot = 0xD006F, + tankloadpilot = 0xD0070, + tankpilot = 0xD0071, + townbellon = 0xD0072, + townbelloff = 0xD0073, + avatar = 0xD0076, + unavatar = 0xD0077, + blizzard = 0xD0079, + divineshield = 0xD007A, + undivineshield = 0xD007B, + holybolt = 0xD007C, + massteleport = 0xD007D, + resurrection = 0xD007E, + thunderbolt = 0xD007F, + thunderclap = 0xD0080, + waterelemental = 0xD0081, + battlestations = 0xD0083, + berserk = 0xD0084, + bloodlust = 0xD0085, + bloodluston = 0xD0086, + bloodlustoff = 0xD0087, + devour = 0xD0088, + evileye = 0xD0089, + ensnare = 0xD008A, + ensnareon = 0xD008B, + ensnareoff = 0xD008C, + healingward = 0xD008D, + lightningshield = 0xD008E, + purge = 0xD008F, + standdown = 0xD0091, + stasistrap = 0xD0092, + chainlightning = 0xD0097, + earthquake = 0xD0099, + farsight = 0xD009A, + mirrorimage = 0xD009B, + shockwave = 0xD009D, + spiritwolf = 0xD009E, + stomp = 0xD009F, + whirlwind = 0xD00A0, + windwalk = 0xD00A1, + unwindwalk = 0xD00A2, + ambush = 0xD00A3, + autodispel = 0xD00A4, + autodispelon = 0xD00A5, + autodispeloff = 0xD00A6, + barkskin = 0xD00A7, + barkskinon = 0xD00A8, + barkskinoff = 0xD00A9, + bearform = 0xD00AA, + unbearform = 0xD00AB, + corrosivebreath = 0xD00AC, + loadarcher = 0xD00AE, + mounthippogryph = 0xD00AF, + cyclone = 0xD00B0, + detonate = 0xD00B1, + eattree = 0xD00B2, + entangle = 0xD00B3, + entangleinstant = 0xD00B4, + faeriefire = 0xD00B5, + faeriefireon = 0xD00B6, + faeriefireoff = 0xD00B7, + ravenform = 0xD00BB, + unravenform = 0xD00BC, + recharge = 0xD00BD, + rechargeon = 0xD00BE, + rechargeoff = 0xD00BF, + rejuvination = 0xD00C0, + renew = 0xD00C1, + renewon = 0xD00C2, + renewoff = 0xD00C3, + roar = 0xD00C4, + root = 0xD00C5, + unroot = 0xD00C6, + entanglingroots = 0xD00CB, + flamingarrowstarg = 0xD00CD, + flamingarrows = 0xD00CE, + unflamingarrows = 0xD00CF, + forceofnature = 0xD00D0, + immolation = 0xD00D1, + unimmolation = 0xD00D2, + manaburn = 0xD00D3, + metamorphosis = 0xD00D4, + scout = 0xD00D5, + sentinel = 0xD00D6, + starfall = 0xD00D7, + tranquility = 0xD00D8, + acolyteharvest = 0xD00D9, + antimagicshell = 0xD00DA, + blight = 0xD00DB, + cannibalize = 0xD00DC, + cripple = 0xD00DD, + curse = 0xD00DE, + curseon = 0xD00DF, + curseoff = 0xD00E0, + freezingbreath = 0xD00E3, + possession = 0xD00E4, + raisedead = 0xD00E5, + raisedeadon = 0xD00E6, + raisedeadoff = 0xD00E7, + instant = 0xD00E8, + requestsacrifice = 0xD00E9, + restoration = 0xD00EA, + restorationon = 0xD00EB, + restorationoff = 0xD00EC, + sacrifice = 0xD00ED, + stoneform = 0xD00EE, + unstoneform = 0xD00EF, + unholyfrenzy = 0xD00F1, + unsummon = 0xD00F2, + web = 0xD00F3, + webon = 0xD00F4, + weboff = 0xD00F5, + wispharvest = 0xD00F6, + auraunholy = 0xD00F7, + auravampiric = 0xD00F8, + animatedead = 0xD00F9, + carrionswarm = 0xD00FA, + darkritual = 0xD00FB, + darksummoning = 0xD00FC, + deathanddecay = 0xD00FD, + deathcoil = 0xD00FE, + deathpact = 0xD00FF, + dreadlordinferno = 0xD0100, + frostarmor = 0xD0101, + frostnova = 0xD0102, + sleep = 0xD0103, + darkconversion = 0xD0104, + darkportal = 0xD0105, + fingerofdeath = 0xD0106, + firebolt = 0xD0107, + inferno = 0xD0108, + gold2lumber = 0xD0109, + lumber2gold = 0xD010A, + spies = 0xD010B, + rainofchaos = 0xD010D, + rainoffire = 0xD010E, + request_hero = 0xD010F, + disassociate = 0xD0110, + revenge = 0xD0111, + soulpreservation = 0xD0112, + coldarrowstarg = 0xD0113, + coldarrows = 0xD0114, + uncoldarrows = 0xD0115, + creepanimatedead = 0xD0116, + creepdevour = 0xD0117, + creepheal = 0xD0118, + creephealon = 0xD0119, + creephealoff = 0xD011A, + creepthunderbolt = 0xD011C, + creepthunderclap = 0xD011D, + poisonarrowstarg = 0xD011E, + poisonarrows = 0xD011F, + unpoisonarrows = 0xD0120, + frostarmoron = 0xD01EA, + frostarmoroff = 0xD01EB, + awaken = 0xD01F2, + nagabuild = 0xD01F3, + mount = 0xD01F5, + dismount = 0xD01F6, + cloudoffog = 0xD01F9, + controlmagic = 0xD01FA, + magicdefense = 0xD01FE, + magicundefense = 0xD01FF, + magicleash = 0xD0200, + phoenixfire = 0xD0201, + phoenixmorph = 0xD0202, + spellsteal = 0xD0203, + spellstealon = 0xD0204, + spellstealoff = 0xD0205, + banish = 0xD0206, + drain = 0xD0207, + flamestrike = 0xD0208, + summonphoenix = 0xD0209, + ancestralspirit = 0xD020A, + ancestralspirittarget = 0xD020B, + corporealform = 0xD020D, + uncorporealform = 0xD020E, + disenchant = 0xD020F, + etherealform = 0xD0210, + unetherealform = 0xD0211, + spiritlink = 0xD0213, + unstableconcoction = 0xD0214, + healingwave = 0xD0215, + hex = 0xD0216, + voodoo = 0xD0217, + ward = 0xD0218, + autoentangle = 0xD0219, + autoentangleinstant = 0xD021A, + coupletarget = 0xD021B, + coupleinstant = 0xD021C, + decouple = 0xD021D, + grabtree = 0xD021F, + manaflareon = 0xD0220, + manaflareoff = 0xD0221, + phaseshift = 0xD0222, + phaseshifton = 0xD0223, + phaseshiftoff = 0xD0224, + phaseshiftinstant = 0xD0225, + taunt = 0xD0228, + vengeance = 0xD0229, + vengeanceon = 0xD022A, + vengeanceoff = 0xD022B, + vengeanceinstant = 0xD022C, + blink = 0xD022D, + fanofknives = 0xD022E, + shadowstrike = 0xD022F, + spiritofvengeance = 0xD0230, + absorb = 0xD0231, + avengerform = 0xD0233, + unavengerform = 0xD0234, + burrow = 0xD0235, + unburrow = 0xD0236, + devourmagic = 0xD0238, + flamingattacktarg = 0xD023B, + flamingattack = 0xD023C, + unflamingattack = 0xD023D, + replenish = 0xD023E, + replenishon = 0xD023F, + replenishoff = 0xD0240, + replenishlife = 0xD0241, + replenishlifeon = 0xD0242, + replenishlifeoff = 0xD0243, + replenishmana = 0xD0244, + replenishmanaon = 0xD0245, + replenishmanaoff = 0xD0246, + carrionscarabs = 0xD0247, + carrionscarabson = 0xD0248, + carrionscarabsoff = 0xD0249, + carrionscarabsinstant = 0xD024A, + impale = 0xD024B, + locustswarm = 0xD024C, + breathoffrost = 0xD0250, + frenzy = 0xD0251, + frenzyon = 0xD0252, + frenzyoff = 0xD0253, + mechanicalcritter = 0xD0254, + mindrot = 0xD0255, + neutralinteract = 0xD0256, + preservation = 0xD0258, + sanctuary = 0xD0259, + shadowsight = 0xD025A, + spellshield = 0xD025B, + spellshieldaoe = 0xD025C, + spirittroll = 0xD025D, + steal = 0xD025E, + attributemodskill = 0xD0260, + blackarrow = 0xD0261, + blackarrowon = 0xD0262, + blackarrowoff = 0xD0263, + breathoffire = 0xD0264, + charm = 0xD0265, + doom = 0xD0267, + drunkenhaze = 0xD0269, + elementalfury = 0xD026A, + forkedlightning = 0xD026B, + howlofterror = 0xD026C, + manashieldon = 0xD026D, + manashieldoff = 0xD026E, + monsoon = 0xD026F, + silence = 0xD0270, + stampede = 0xD0271, + summongrizzly = 0xD0272, + summonquillbeast = 0xD0273, + summonwareagle = 0xD0274, + tornado = 0xD0275, + wateryminion = 0xD0276, + battleroar = 0xD0277, + channel = 0xD0278, + parasite = 0xD0279, + parasiteon = 0xD027A, + parasiteoff = 0xD027B, + submerge = 0xD027C, + unsubmerge = 0xD027D, + neutralspell = 0xD0296, + militiaunconvert = 0xD02AB, + clusterrockets = 0xD02AC, + robogoblin = 0xD02B0, + unrobogoblin = 0xD02B1, + summonfactory = 0xD02B2, + acidbomb = 0xD02B6, + chemicalrage = 0xD02B7, + healingspray = 0xD02B8, + transmute = 0xD02B9, + lavamonster = 0xD02BB, + soulburn = 0xD02BC, + volcano = 0xD02BD, + incineratearrow = 0xD02BE, + incineratearrowon = 0xD02BF, + incineratearrowoff = 0xD02C0, +} + +return order2id diff --git a/share/script/computed/order_list.lua b/share/script/computed/order_list.lua new file mode 100644 index 0000000..ac12276 --- /dev/null +++ b/share/script/computed/order_list.lua @@ -0,0 +1,490 @@ +return { +['Order'] = { + AAns = 0xD0296, + ACad = 0xD00F9, + ACam = 0xD00DA, + ACbb = 0xD0085, + ACbc = 0xD0264, + ACbf = 0xD0264, + ACbk = 0xD0261, + ACbl = 0xD0085, + ACbn = 0xD0206, + ACbz = 0xD0079, + ACc2 = 0xD00FA, + ACc3 = 0xD00FA, + ACca = 0xD00FA, + ACcb = 0xD007F, + ACch = 0xD0265, + ACcl = 0xD0097, + ACcn = 0xD00DC, + ACcr = 0xD00DD, + ACcs = 0xD00DE, + ACcv = 0xD00FA, + ACcy = 0xD00B0, + ACd2 = 0xD00A4, + ACdc = 0xD00FE, + ACdm = 0xD00A4, + ACds = 0xD007A, + ACdv = 0xD0117, + ACen = 0xD008A, + ACf2 = 0xD0101, + ACfa = 0xD0101, + ACff = 0xD00B5, + ACfl = 0xD026B, + ACfn = 0xD0102, + ACfr = 0xD00D0, + ACfs = 0xD0208, + ACfu = 0xD0101, + AChv = 0xD0215, + AChw = 0xD008D, + AChx = 0xD0216, + ACif = 0xD0062, + ACim = 0xD00D1, + ACls = 0xD008E, + ACmo = 0xD026F, + ACmp = 0xD024B, + ACpa = 0xD0279, + ACps = 0xD00E4, + ACpu = 0xD008F, + ACpy = 0xD006A, + ACr1 = 0xD00C4, + ACr2 = 0xD00C0, + ACrd = 0xD00E5, + ACrf = 0xD010E, + ACrg = 0xD010E, + ACrj = 0xD00C0, + ACro = 0xD00C4, + ACs7 = 0xD009E, + ACs8 = 0xD009E, + ACs9 = 0xD009E, + ACsa = 0xD00CE, + ACsf = 0xD009E, + ACsh = 0xD009D, + ACsi = 0xD0270, + ACsl = 0xD0103, + ACss = 0xD022F, + ACst = 0xD009D, + ACsw = 0xD006B, + ACt2 = 0xD011D, + ACtb = 0xD011C, + ACtc = 0xD011D, + ACuf = 0xD00F1, + ACwb = 0xD00F3, + ACwe = 0xD0081, + AEIl = 0xD00D4, + AEbl = 0xD022D, + AEbu = 0xD001D, + AEer = 0xD00CB, + AEfk = 0xD022E, + AEfn = 0xD00D0, + AEim = 0xD00D1, + AEmb = 0xD00D3, + AEme = 0xD00D4, + AEpa = 0xD011E, + AEsb = 0xD00D7, + AEsf = 0xD00D7, + AEsh = 0xD022F, + AEst = 0xD00D5, + AEsv = 0xD0230, + AEtq = 0xD00D8, + AEvi = 0xD00D4, + AGbu = 0xD01F3, + AHav = 0xD0076, + AHbn = 0xD0206, + AHbu = 0xD001B, + AHbz = 0xD0079, + AHds = 0xD007A, + AHfa = 0xD00CE, + AHfs = 0xD0208, + AHhb = 0xD007C, + AHmt = 0xD007D, + AHpx = 0xD0209, + AHre = 0xD007E, + AHtb = 0xD007F, + AHtc = 0xD0080, + AHwe = 0xD0081, + AIan = 0xD00F9, + AIbk = 0xD022D, + AIcl = 0xD0097, + AIcm = 0xD0203, + AIcy = 0xD00B0, + AIdd = 0xD0057, + AIdp = 0xD00FF, + AIdv = 0xD007A, + AIfg = 0xD01F9, + AIhl = 0xD007C, + AIhw = 0xD008D, + AIin = 0xD0108, + AIls = 0xD008E, + AInd = 0xD00F9, + AIos = 0xD006B, + AIpg = 0xD008F, + AIps = 0xD008F, + AIrr = 0xD00C4, + AIrs = 0xD007E, + AIrx = 0xD007E, + AIse = 0xD0270, + AIsh = 0xD009E, + AIsw = 0xD0089, + AIuf = 0xD00F1, + AIwm = 0xD0276, + AIxk = 0xD0084, + AIxs = 0xD00DA, + ANab = 0xD02B6, + ANav = 0xD0076, + ANba = 0xD0261, + ANbf = 0xD0264, + ANbl = 0xD022D, + ANbr = 0xD0277, + ANbs = 0xD0261, + ANbu = 0xD001A, + ANc1 = 0xD02AC, + ANc2 = 0xD02AC, + ANc3 = 0xD02AC, + ANcf = 0xD0264, + ANch = 0xD0265, + ANcl = 0xD0278, + ANcr = 0xD02B7, + ANcs = 0xD02AC, + ANdc = 0xD0104, + ANdh = 0xD0269, + ANdo = 0xD0267, + ANef = 0xD026A, + ANen = 0xD008A, + ANfl = 0xD026B, + ANfs = 0xD0208, + ANg1 = 0xD02B0, + ANg2 = 0xD02B0, + ANg3 = 0xD02B0, + ANha = 0xD0032, + ANhs = 0xD02B8, + ANht = 0xD026C, + ANhw = 0xD0215, + ANhx = 0xD0216, + ANia = 0xD02BE, + ANin = 0xD0108, + ANmo = 0xD026F, + ANmr = 0xD0255, + ANpa = 0xD0279, + ANrf = 0xD010E, + ANrg = 0xD02B0, + ANs1 = 0xD02B2, + ANs2 = 0xD02B2, + ANs3 = 0xD02B2, + ANsb = 0xD007F, + ANsg = 0xD0272, + ANsh = 0xD009D, + ANsi = 0xD0270, + ANsl = 0xD0112, + ANso = 0xD02BC, + ANsq = 0xD0273, + ANst = 0xD0271, + ANsw = 0xD0274, + ANsy = 0xD02B2, + ANta = 0xD0228, + ANtm = 0xD02B9, + ANto = 0xD0275, + ANvc = 0xD02BD, + ANwk = 0xD00A1, + ANwm = 0xD0276, + AObu = 0xD001C, + AOcl = 0xD0097, + AOeq = 0xD0099, + AOfs = 0xD009A, + AOhw = 0xD0215, + AOhx = 0xD0216, + AOmi = 0xD009B, + AOs2 = 0xD009D, + AOsf = 0xD009E, + AOsh = 0xD009D, + AOsw = 0xD0218, + AOvd = 0xD0217, + AOw2 = 0xD009F, + AOwk = 0xD00A1, + AOws = 0xD009F, + AOww = 0xD00A0, + APrl = 0xD007E, + APrr = 0xD007E, + APwt = 0xD0089, + AUan = 0xD00F9, + AUbu = 0xD001E, + AUcs = 0xD00FA, + AUdc = 0xD00FE, + AUdd = 0xD00FD, + AUdp = 0xD00FF, + AUdr = 0xD00FB, + AUds = 0xD00FC, + AUfa = 0xD0101, + AUfn = 0xD0102, + AUfu = 0xD0101, + AUim = 0xD024B, + AUin = 0xD0108, + AUsl = 0xD0103, + Aadm = 0xD00A4, + Aaha = 0xD0032, + Aam2 = 0xD00DA, + Aamk = 0xD0260, + Aams = 0xD00DA, + Aawa = 0xD01F2, + Ablo = 0xD0085, + Abrf = 0xD00AA, + Absk = 0xD0084, + Abtl = 0xD0083, + Abu2 = 0xD0235, + Abu3 = 0xD0235, + Abu5 = 0xD0235, + Abur = 0xD0235, + Acan = 0xD00DC, + Acdh = 0xD0269, + Acef = 0xD026A, + Acht = 0xD026C, + Aclf = 0xD01F9, + Acmg = 0xD01FA, + Acn2 = 0xD00DC, + Acny = 0xD00B0, + Acor = 0xD00AC, + Acpf = 0xD020D, + Acri = 0xD00DD, + Acrs = 0xD00DE, + Acyc = 0xD00B0, + Adec = 0xD021D, + Adef = 0xD0057, + Adev = 0xD0088, + Adis = 0xD0059, + Adri = 0xD004F, + Adro = 0xD004F, + Adsm = 0xD0059, + Adtn = 0xD00B1, + Aeat = 0xD00B2, + Aenr = 0xD00CB, + Aens = 0xD008A, + Aent = 0xD00B3, + Aenw = 0xD00CB, + Aesn = 0xD00D6, + Aesr = 0xD00D6, + Aetf = 0xD0210, + Aeye = 0xD0089, + Afa2 = 0xD00B5, + Afae = 0xD00B5, + Afla = 0xD005C, + Afrz = 0xD00E3, + Afzy = 0xD0251, + Agra = 0xD021F, + Ahar = 0xD0032, + Ahea = 0xD005F, + Ahid = 0xD00A3, + Ahnl = 0xD00C4, + Ahr2 = 0xD0032, + Ahr3 = 0xD0032, + Ahrl = 0xD0032, + Ahrp = 0xD0038, + Ahwd = 0xD008D, + Ainf = 0xD0062, + Aivs = 0xD0065, + Alam = 0xD00ED, + Aloa = 0xD004E, + Alsh = 0xD008E, + Amb2 = 0xD00BD, + Ambb = 0xD00D3, + Ambd = 0xD00D3, + Ambt = 0xD00BD, + Amdf = 0xD01FE, + Amel = 0xD0052, + Amfl = 0xD0220, + Amic = 0xD0072, + Amil = 0xD0068, + Amls = 0xD0200, + Amnb = 0xD00D3, + Amrf = 0xD00BB, + Andm = 0xD00A4, + Anh1 = 0xD005F, + Anh2 = 0xD005F, + Anhe = 0xD005F, + Apg2 = 0xD008F, + Aply = 0xD006A, + Apos = 0xD00E4, + Aprg = 0xD008F, + Aps2 = 0xD00E4, + Apsh = 0xD0222, + Ara2 = 0xD00C4, + Arai = 0xD00E5, + Arav = 0xD00BB, + Arej = 0xD00C0, + Aren = 0xD00C1, + Arep = 0xD0038, + Arev = 0xD0047, + Aro1 = 0xD00C5, + Aro2 = 0xD00C5, + Aroa = 0xD00C4, + Arpb = 0xD023E, + Arpl = 0xD0241, + Arpm = 0xD0244, + Arsg = 0xD009E, + Arsp = 0xD0271, + Arsq = 0xD0273, + Arst = 0xD00EA, + Asac = 0xD00ED, + Asb1 = 0xD027C, + Asb2 = 0xD027C, + Asb3 = 0xD027C, + Asd2 = 0xD0048, + Asd3 = 0xD0048, + Asdg = 0xD0048, + Asds = 0xD0048, + Ashm = 0xD00A3, + Aslo = 0xD006B, + Aslp = 0xD0276, + Aspl = 0xD0213, + Asps = 0xD0203, + Asta = 0xD0092, + Astd = 0xD0091, + Astn = 0xD00EE, + Atau = 0xD0228, + Auco = 0xD0214, + Auhf = 0xD00F1, + Auns = 0xD00F2, + Aweb = 0xD00F3, + Awh2 = 0xD0032, + Awha = 0xD0032, + Awrg = 0xD009F, + Awrh = 0xD009F, + Awrs = 0xD009F, + SCc1 = 0xD00B0, + SNdc = 0xD0104, + SNdd = 0xD00FD, + SNeq = 0xD0099, + SNin = 0xD0108, + Sbtl = 0xD0083, + Scri = 0xD00DD, + Sdro = 0xD004F, + Slo2 = 0xD004E, + Slo3 = 0xD004E, + Sloa = 0xD004E, + Sshm = 0xD00A3, + Suhf = 0xD00F1, +}, +['Unorder'] = { + ACds = 0xD007B, + ACim = 0xD00D2, + ACsa = 0xD00CF, + AEim = 0xD00D2, + AHds = 0xD007B, + AHfa = 0xD00CF, + ANg1 = 0xD02B1, + ANg2 = 0xD02B1, + ANg3 = 0xD02B1, + ANrg = 0xD02B1, + Abrf = 0xD00AB, + Abu2 = 0xD0236, + Abu3 = 0xD0236, + Abu5 = 0xD0236, + Abur = 0xD0236, + Acpf = 0xD020E, + Adef = 0xD0058, + Aetf = 0xD0211, + Amdf = 0xD01FF, + Amfl = 0xD0221, + Amic = 0xD0073, + Amil = 0xD0069, + Amrf = 0xD00BC, + Arav = 0xD00BC, + Aro1 = 0xD00C6, + Aro2 = 0xD00C6, + Asb1 = 0xD027D, + Asb2 = 0xD027D, + Asb3 = 0xD027D, + Astn = 0xD00EF, +}, +['Orderon'] = { + ACbb = 0xD0086, + ACbk = 0xD0262, + ACbl = 0xD0086, + ACcs = 0xD00DF, + ACd2 = 0xD00A5, + ACdm = 0xD00A5, + ACf2 = 0xD01EA, + ACff = 0xD00B6, + ACfu = 0xD01EA, + ACif = 0xD0063, + ACpa = 0xD027A, + ACrd = 0xD00E6, + ACsw = 0xD006C, + ACwb = 0xD00F4, + AEpa = 0xD011F, + ANba = 0xD0262, + ANia = 0xD02BF, + ANms = 0xD026D, + ANpa = 0xD027A, + AUfu = 0xD01EA, + Aadm = 0xD00A5, + Ablo = 0xD0086, + Acrs = 0xD00DF, + Afa2 = 0xD00B6, + Afae = 0xD00B6, + Afzy = 0xD0252, + Ahea = 0xD0060, + Ahrp = 0xD0039, + Ainf = 0xD0063, + Andm = 0xD00A5, + Anh1 = 0xD0060, + Anh2 = 0xD0060, + Anhe = 0xD0060, + Apsh = 0xD0223, + Arai = 0xD00E6, + Aren = 0xD00C2, + Arep = 0xD0039, + Arpb = 0xD023F, + Arpl = 0xD0242, + Arpm = 0xD0245, + Arst = 0xD00EB, + Aslo = 0xD006C, + Asps = 0xD0204, + Aweb = 0xD00F4, +}, +['Orderoff'] = { + ACbb = 0xD0087, + ACbk = 0xD0263, + ACbl = 0xD0087, + ACcs = 0xD00E0, + ACd2 = 0xD00A6, + ACdm = 0xD00A6, + ACf2 = 0xD01EB, + ACff = 0xD00B7, + ACfu = 0xD01EB, + ACif = 0xD0064, + ACpa = 0xD027B, + ACrd = 0xD00E7, + ACsw = 0xD006D, + ACwb = 0xD00F5, + AEpa = 0xD0120, + ANba = 0xD0263, + ANia = 0xD02BF, + ANms = 0xD026E, + ANpa = 0xD027B, + AUfu = 0xD01EB, + Aadm = 0xD00A6, + Ablo = 0xD0087, + Acrs = 0xD00E0, + Afa2 = 0xD00B7, + Afae = 0xD00B7, + Afzy = 0xD0253, + Ahea = 0xD0061, + Ahrp = 0xD003A, + Ainf = 0xD0064, + Andm = 0xD00A6, + Anh1 = 0xD0061, + Anh2 = 0xD0061, + Anhe = 0xD0061, + Apsh = 0xD0224, + Arai = 0xD00E7, + Aren = 0xD00C3, + Arep = 0xD003A, + Arpb = 0xD0240, + Arpl = 0xD0243, + Arpm = 0xD0246, + Arst = 0xD00EC, + Aslo = 0xD006D, + Asps = 0xD0205, + Aweb = 0xD00F5, +}, +} \ No newline at end of file diff --git a/share/script/config.lua b/share/script/config.lua new file mode 100644 index 0000000..80dd598 --- /dev/null +++ b/share/script/config.lua @@ -0,0 +1,67 @@ +require "util" + +local file = fs.ydwe_path() / "bin" / "EverConfig.cfg" + +local tbl_index = { + MapSave = { + Option = "0" + }, + HostTest = { + Option = "0" + }, + War3Patch = { + Option = "0" + }, + MapTest = { + EnableHost = "0", + LaunchRenderingEngine = "Direct3D 8", + LaunchWindowed = "1", + LaunchFullWindowed = "0", + LaunchWideScreenSupport = "1", + LaunchLockingMouse = "0", + LaunchFixedRatioWindowed = "0", + LaunchDisableSecurityAccess = "0", + }, + ScriptCompiler = { + EnableJassHelper = "1", + EnableJassHelperDebug = "0", + EnableJassHelperScriptOnly = "0", + EnableJassHelperOptimization = "1", + EnableCJass = "0", + }, + PJass = { + Option = "0" + }, + ScriptInjection = { + Option = "0" + }, + ThirdPartyPlugin = { + EnableDotNetSupport = "0", + EnableTesh = "1", + EnableYDTrigger = "1", + }, + FeatureToggle = { + EnableManualNewId = "0", + EnableTriggerCopyEncodingAutoConversion = "1", + EnableShowInternalAttributeId = "0", + }, + Font = { + FontEnable = "0", + FontName = "", + FontSize = "12", + }, +} + +function global_config_reload() + local tbl = sys.ini_load(file) + if not tbl then + tbl = {} + end + tbl = setmetatable(tbl, {__index = tbl_index}) + global_config = tbl + + -- 根据ydweworldedit.exe的路径计算 + fs.__war3_path = fs.get(fs.DIR_EXE):remove_filename() + log.debug('war3 path ' .. fs.__war3_path:string()) +end +global_config_reload() diff --git a/share/script/dotnet.lua b/share/script/dotnet.lua new file mode 100644 index 0000000..cf0f50b --- /dev/null +++ b/share/script/dotnet.lua @@ -0,0 +1,69 @@ +require "registry" + +local function is_dotnet_installed() + return fs.exists(fs.get(fs.DIR_SYSTEM) / "MSCorEE.dll") +end + +local function is_dotnet_version_20_installed() + local reg = registry.open [[HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727]] + local value = reg["Install"] + return value and (value ~= 0) +end + +local function is_dotnet_version_35_installed() + local reg = registry.open [[HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v3.5]] + local value = reg["Install"] + return value and (value ~= 0) +end + +dotnet = {} + +function dotnet:load (path, entry) + local suc, res = pcall( + function() + return clr.object(path, entry) + end + ) + if suc then + return res + else + return nil, res + end +end + +function dotnet:call (obj, name) + if not self.initialized then + return nil + end + + local suc, res = pcall( + function() + return obj:call(name) + end + ) + if suc then + return res + else + return nil, res + end +end + +function dotnet:initialize () + if not self.initialized then + if not is_dotnet_installed() then + log.error("Current platform does not support .net") + return false + end + + local success, err = pcall(require, "clr") + if not success then + log.error("Failed to load .net components") + return false + end + log.debug(".net component loaded successfully.") + self.initialized = true + end + return true +end + +dotnet:initialize() diff --git a/share/script/ffi/gui.lua b/share/script/ffi/gui.lua new file mode 100644 index 0000000..ea09e53 --- /dev/null +++ b/share/script/ffi/gui.lua @@ -0,0 +1,80 @@ +local ffi = require 'ffi' +ffi.cdef[[ + unsigned int CreateMenu(); + int AppendMenuW(unsigned int hMenu, unsigned int uFlags, unsigned int uIDNewltem, const wchar_t* lpNewltem); + int MessageBoxW(unsigned int hWnd, const wchar_t* lpText, const wchar_t* lpCaption, unsigned int uType); + unsigned int GetForegroundWindow(); + unsigned int GetDlgItem(unsigned int hDlg, int nIDDlgItem); + int EnableWindow(unsigned int hWnd, int bEnable); +]] + +local uni = require 'ffi.unicode' +local generate_id = 48886 +local message_map = {} + +gui.MB_ICONQUESTION = 0x00000020 +gui.MB_OK = 0x00000000 +gui.MB_YESNO = 0x00000004 +gui.IDYES = 6 +gui.MF_STRING = 0x00000000 +gui.MF_POPUP = 0x00000010 +gui.WM_COMMAND = 0x0111 +gui.WM_SETTEXT = 0x000C + +local mt = {} +mt.__index = mt +function mt:add(name, callback) + message_map[generate_id] = callback + local wname = uni.u2w(name) + ffi.C.AppendMenuW(self.handle, gui.MF_STRING, generate_id, wname) + generate_id = generate_id + 1 +end + +function gui.menu(main_menu, name) + local handle = ffi.C.CreateMenu() + local wname = uni.u2w(name) + ffi.C.AppendMenuW(main_menu, gui.MF_STRING | gui.MF_POPUP, handle, wname) + return setmetatable({handle = handle}, mt) +end + +-- 当WE的窗口过程收到消息时执行 +-- event_data - 事件参数,table,包含以下值 +-- handle, message, wparam, lparam,具体不解释 +-- 返回非负数会调用原窗口函数。返回负数则直接吃掉消息 +function event.EVENT_WINDOW_MESSAGE(event_data) + -- 只处理菜单信息 + if event_data.message == gui.WM_COMMAND then + -- 菜单ID(低16位) + local menu_id = (event_data.wparam & 0xFFFF) + if message_map[menu_id] then + message_map[menu_id]() + end + end + return 0 +end + +local function messagebox(hwnd, text, caption, type) + local wtext = uni.u2w(text) + local wcaption = uni.u2w(caption) + return ffi.C.MessageBoxW(hwnd, wtext, wcaption, type) +end + +function gui.error_message(hwnd, fmt, ...) + return messagebox(hwnd, fmt:format(...), _("Error") ,gui.MB_ICONQUESTION | gui.MB_OK) +end + +function gui.message(hwnd, fmt, ...) + return messagebox(hwnd, fmt:format(...), _("YDWE") ,gui.MB_ICONQUESTION | gui.MB_OK) +end + +function gui.yesno_message(hwnd, fmt, ...) + return messagebox(hwnd, fmt:format(...), _("YDWE"), gui.MB_ICONQUESTION | gui.MB_YESNO) == gui.IDYES +end + +function gui.get_foreground_window() + return ffi.C.GetForegroundWindow() +end + +function gui.enable_dialog_item(hwnd, id, enable) + return ffi.C.EnableWindow(ffi.C.GetDlgItem(hwnd, id), enable) +end diff --git a/share/script/ffi/loadlibrary.lua b/share/script/ffi/loadlibrary.lua new file mode 100644 index 0000000..88180f5 --- /dev/null +++ b/share/script/ffi/loadlibrary.lua @@ -0,0 +1,16 @@ +local ffi = require 'ffi' +ffi.cdef[[ + void* LoadLibraryW(const wchar_t* lpLibFileName); + int FreeLibrary(void* hLibModule); +]] + +local uni = require 'ffi.unicode' + +function sys.load_library(path) + local wpath = uni.u2w(path:string()) + return ffi.C.LoadLibraryW(wpath) +end + +function sys.unload_library(module) + return ffi.C.FreeLibrary(module) +end diff --git a/share/script/ffi/storm.lua b/share/script/ffi/storm.lua new file mode 100644 index 0000000..fa0364f --- /dev/null +++ b/share/script/ffi/storm.lua @@ -0,0 +1,65 @@ +local ffi = require 'ffi' +ffi.cdef[[ + uint32_t LoadLibraryA(const char* lpFileName); + typedef void (*ffi_anyfunc)(); + ffi_anyfunc GetProcAddress(uint32_t hModule, uint32_t ord); + + typedef bool (*__stdcall SFileOpenArchive)(const char* szArchivename, unsigned long dwPriority, unsigned long dwFlags, uint32_t* handle); + typedef bool (*__stdcall SFileLoadFile)(const char* filename, const void** pbuf, uint32_t* plen, uint32_t reservelen, void* overlapped_ptr); + typedef bool (*__stdcall SFileUnloadFile)(const void* buf); + typedef bool (*__stdcall SFileExists)(const char* name); + typedef uint32_t (*__stdcall SStrHash)(const char* str); +]] + +local uni = require 'ffi.unicode' +local storm = ffi.C.LoadLibraryA('storm.dll') +local SFileOpenArchive = ffi.cast('SFileOpenArchive', ffi.C.GetProcAddress(storm, 266)) +local SFileLoadFile = ffi.cast('SFileLoadFile', ffi.C.GetProcAddress(storm, 279)) +local SFileUnloadFile = ffi.cast('SFileUnloadFile', ffi.C.GetProcAddress(storm, 280)) +local SFileExists = ffi.cast('SFileExists', ffi.C.GetProcAddress(storm, 288)) +local SStrHash = ffi.cast('SStrHash', ffi.C.GetProcAddress(storm, 590)) + +local storm = {} + +function storm.open(path, priority) + local apath = uni.u2a(path:string()) + local phandle = ffi.new('uint32_t[1]', 0) + if not SFileOpenArchive(apath, priority, 0, phandle) then + return nil + end + return phandle[0] +end + +function storm.extract_file(path, name) + local aname = uni.u2a(name) + local pbuf = ffi.new('void*[1]', 0) + local plen = ffi.new('uint32_t[1]', 0) + if not SFileLoadFile(aname, pbuf, plen, 0, nil) then + return false + end + local buf = ffi.string(pbuf[0], plen[0]) + SFileUnloadFile(pbuf[0]) + return io.save(path, buf) +end + +function storm.load_file(name) + local aname = uni.u2a(name) + local pbuf = ffi.new('void*[1]', 0) + local plen = ffi.new('uint32_t[1]', 0) + if not SFileLoadFile(aname, pbuf, plen, 0, nil) then + return false + end + local buf = ffi.string(pbuf[0], plen[0]) + SFileUnloadFile(pbuf[0]) + return buf +end + +function storm.has_file(name) + return SFileExists(name) +end + +function storm.string_hash(str) + return SStrHash(str) +end + +return storm diff --git a/share/script/ffi/stormlib.lua b/share/script/ffi/stormlib.lua new file mode 100644 index 0000000..71cfd7e --- /dev/null +++ b/share/script/ffi/stormlib.lua @@ -0,0 +1,272 @@ +local ffi = require 'ffi' +ffi.cdef[[ + struct SFILE_CREATE_MPQ { + unsigned long cbSize; // Size of this structure, in bytes + unsigned long dwMpqVersion; // Version of the MPQ to be created + void* pvUserData; // Reserved, must be NULL + unsigned long cbUserData; // Reserved, must be 0 + unsigned long dwStreamFlags; // Stream flags for creating the MPQ + unsigned long dwFileFlags1; // File flags for (listfile). 0 = default + unsigned long dwFileFlags2; // File flags for (attributes). 0 = default + unsigned long dwFileFlags3; // File flags for (signature). 0 = default + unsigned long dwAttrFlags; // Flags for the (attributes) file. If 0, no attributes will be created + unsigned long dwSectorSize; // Sector size for compressed files + unsigned long dwRawChunkSize; // Size of raw data chunk + unsigned long dwMaxFileCount; // File limit for the MPQ + }; + + bool SFileCreateArchive2(const wchar_t* szMpqName, struct SFILE_CREATE_MPQ* pCreateInfo, uint32_t* phMpq); + bool SFileOpenArchive(const wchar_t* szMpqName, unsigned long dwPriority, unsigned long dwFlags, uint32_t* phMpq); + bool SFileCloseArchive(uint32_t hMpq); + bool SFileAddFileEx(uint32_t hMpq, const wchar_t* szFileName, const char* szArchivedName, unsigned long dwFlags, unsigned long dwCompression, unsigned long dwCompressionNext); + bool SFileExtractFile(uint32_t hMpq, const char* szToExtract, const wchar_t* szExtracted, unsigned long dwSearchScope); + bool SFileHasFile(uint32_t hMpq, const char* szFileName); + bool SFileSetMaxFileCount(uint32_t hMpq, unsigned long dwMaxFileCount); + + bool SFileCreateFile(uint32_t hMpq, const char* szArchivedName, unsigned long long FileTime, unsigned long dwFileSize, unsigned long lcLocale, unsigned long dwFlags, uint32_t* phFile); + bool SFileWriteFile(uint32_t hFile, const void* pvData, unsigned long dwSize, unsigned long dwCompression); + bool SFileFinishFile(uint32_t hFile); + bool SFileOpenFileEx(uint32_t hMpq, const char* szFileName, unsigned long dwSearchScope, uint32_t* phFile); + bool SFileReadFile(uint32_t hFile, void* lpBuffer, unsigned long dwToRead, unsigned long* pdwRead, void* lpOverlapped); + unsigned long SFileGetFileSize(uint32_t hFile, unsigned long* pdwFileSizeHigh); + bool SFileCloseFile(uint32_t hFile); + + unsigned long SFileGetLocale(); + + unsigned long GetLastError(); +]] +ffi.cdef[[ + struct SYSTEMTIME { + unsigned short wYear; + unsigned short wMonth; + unsigned short wDayOfWeek; + unsigned short wDay; + unsigned short wHour; + unsigned short wMinute; + unsigned short wSecond; + unsigned short wMilliseconds; + }; + struct FILETIME { + unsigned long dwLowDateTime; + unsigned long dwHighDateTime; + }; + void GetSystemTime(struct SYSTEMTIME* lpSystemTime); + int SystemTimeToFileTime(const struct SYSTEMTIME* lpSystemTime, struct FILETIME*lpFileTime); +]] + +require 'filesystem' +local uni = require 'ffi.unicode' +local stormlib = ffi.load('stormlib') + +local function current_filetime() + local systemtime = ffi.new('struct SYSTEMTIME') + local filetime = ffi.new('struct FILETIME') + ffi.C.GetSystemTime(systemtime) + if not ffi.C.SystemTimeToFileTime(systemtime, filetime) then + return 0 + end + return filetime.dwLowDateTime | (filetime.dwHighDateTime << 32) +end + + +local wfile = {} +wfile.__index = wfile + +function wfile:close() + if self.handle == 0 then + return + end + stormlib.SFileFinishFile(self.handle) + self.handle = 0 +end + +function wfile:write(buf) + if self.handle == 0 then + return false + end + return stormlib.SFileWriteFile(self.handle, buf, #buf, 0x02) +end + +local rfile = {} +rfile.__index = rfile + +function rfile:close() + if self.handle == 0 then + return + end + stormlib.SFileCloseFile(self.handle) + self.handle = 0 +end + +function rfile:size() + if self.handle == 0 then + return 0 + end + local size_hi = ffi.new('unsigned long[1]', 0) + local size_lo = stormlib.SFileGetFileSize(self.handle, size_hi) + return size_lo | (size_hi[0] << 32) +end + +function rfile:read(n) + if self.handle == 0 then + return nil + end + if not n then + n = self:size() + end + local buf = ffi.new('char[?]', n) + local pread = ffi.new('unsigned long[1]', 0) + if not stormlib.SFileReadFile(self.handle, buf, n, pread, nil) then + return nil + end + return ffi.string(buf, pread[0]) +end + +local archive = {} +archive.__index = archive + +function archive:close() + if self.handle == 0 then + return + end + stormlib.SFileCloseArchive(self.handle) + self.handle = 0 +end + +function archive:add_file(name, path) + if self.handle == 0 then + return false + end + local wpath = uni.u2w(path:string()) + return stormlib.SFileAddFileEx(self.handle, wpath, name, + 0x00000200 | 0x80000000, -- MPQ_FILE_COMPRESS | MPQ_FILE_REPLACEEXISTING, + 0x02, -- MPQ_COMPRESSION_ZLIB, + 0x02 --MPQ_COMPRESSION_ZLIB + ) +end + +function archive:extract(name, path) + if self.handle == 0 then + return false + end + local dir = path:parent_path() + if not fs.exists(dir) then + fs.create_directories(dir) + end + local wpath = uni.u2w(path:string()) + return stormlib.SFileExtractFile(self.handle, name, wpath, + 0 --SFILE_OPEN_FROM_MPQ + ) +end + +function archive:has_file(name) + if self.handle == 0 then + return false + end + return stormlib.SFileHasFile(self.handle, name) +end + +function archive:open_file(name) + if self.handle == 0 then + return nil + end + local phandle = ffi.new('uint32_t[1]', 0) + if not stormlib.SFileOpenFileEx(self.handle, name, 0, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, rfile) +end + +function archive:create_file(name, size, filetime) + if self.handle == 0 then + return nil + end + if not filetime then + filetime = current_filetime() + end + local phandle = ffi.new('uint32_t[1]', 0) + if not stormlib.SFileCreateFile(self.handle, name, filetime, size, stormlib.SFileGetLocale(), 0x00000200 | 0x80000000, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, wfile) +end + +function archive:load_file(name) + if self.handle == 0 then + return nil + end + local file = self:open_file(name) + if not file then + return nil + end + local content = file:read() + file:close() + return content +end + +function archive:save_file(name, buf, filetime) + if self.handle == 0 then + return false + end + local file = self:create_file(name, #buf, filetime) + if not file then + return false + end + file:write(buf) + file:close() + return true +end + +function archive:__pairs() + local content = self:load_file('(listfile)') + if not content then + error('(listfile)导出失败') + return + end + if content:sub(1, 3) == '\xEF\xBB\xBF' then + content = content:sub(4) + end + return content:gmatch '[^\n\r]+' +end + +local m = {} +function m.open(path, readonly, filecount) + local wpath = uni.u2w(path:string()) + local phandle = ffi.new('uint32_t[1]', 0) + local flag = 0 + if readonly then + flag = 0x100 + end + if not stormlib.SFileOpenArchive(wpath, 0, flag, phandle) then + return nil + end + if filecount then + stormlib.SFileSetMaxFileCount(phandle[0], filecount) + end + return setmetatable({ handle = phandle[0] }, archive) +end +function m.create(path, filecount) + local wpath = uni.u2w(path:string()) + local phandle = ffi.new('uint32_t[1]', 0) + local info = ffi.new('struct SFILE_CREATE_MPQ') + info.cbSize = ffi.sizeof('struct SFILE_CREATE_MPQ') + info.dwMpqVersion = 0 --MPQ_FORMAT_VERSION_1 + info.pvUserData = nil + info.cbUserData = 0 + info.dwStreamFlags = 0 --STREAM_PROVIDER_FLAT | BASE_PROVIDER_FILE + info.dwFileFlags1 = 0x80000000 --MPQ_FILE_EXISTS + info.dwFileFlags2 = 0x80000000 --MPQ_FILE_EXISTS + info.dwFileFlags3 = 0x80000000 --MPQ_FILE_EXISTS + info.dwAttrFlags = 7 --MPQ_ATTRIBUTE_CRC32 | MPQ_ATTRIBUTE_FILETIME | MPQ_ATTRIBUTE_MD5 + info.dwSectorSize = 0x10000 + info.dwRawChunkSize = 0 + info.dwMaxFileCount = filecount + if not stormlib.SFileCreateArchive2(wpath, info, phandle) then + return nil + end + return setmetatable({ handle = phandle[0] }, archive) +end +function m.attach(handle) + return setmetatable({ handle = handle }, archive) +end +return m diff --git a/share/script/ffi/unicode.lua b/share/script/ffi/unicode.lua new file mode 100644 index 0000000..fdea30f --- /dev/null +++ b/share/script/ffi/unicode.lua @@ -0,0 +1,49 @@ +local ffi = require 'ffi' +ffi.cdef[[ + int MultiByteToWideChar(unsigned int CodePage, unsigned long dwFlags, const char* lpMultiByteStr, int cbMultiByte, wchar_t* lpWideCharStr, int cchWideChar); + int WideCharToMultiByte(unsigned int CodePage, unsigned long dwFlags, const wchar_t* lpWideCharStr, int cchWideChar, char* lpMultiByteStr, int cchMultiByte, const char* lpDefaultChar, int* pfUsedDefaultChar); +]] + +local CP_UTF8 = 65001 +local CP_ACP = 0 + +local function u2w(input) + local wlen = ffi.C.MultiByteToWideChar(CP_UTF8, 0, input, #input, nil, 0) + local wstr = ffi.new('wchar_t[?]', wlen+1) + ffi.C.MultiByteToWideChar(CP_UTF8, 0, input, #input, wstr, wlen) + return wstr, wlen +end + +local function a2w(input) + local wlen = ffi.C.MultiByteToWideChar(CP_ACP, 0, input, #input, nil, 0) + local wstr = ffi.new('wchar_t[?]', wlen+1) + ffi.C.MultiByteToWideChar(CP_ACP, 0, input, #input, wstr, wlen) + return wstr, wlen +end + +local function w2u(wstr, wlen) + local len = ffi.C.WideCharToMultiByte(CP_UTF8, 0, wstr, wlen, nil, 0, nil, nil) + local str = ffi.new('char[?]', len+1) + ffi.C.WideCharToMultiByte(CP_UTF8, 0, wstr, wlen, str, len, nil, nil) + return ffi.string(str) +end + +local function w2a(wstr, wlen) + local len = ffi.C.WideCharToMultiByte(CP_ACP, 0, wstr, wlen, nil, 0, nil, nil) + local str = ffi.new('char[?]', len) + ffi.C.WideCharToMultiByte(CP_ACP, 0, wstr, wlen, str, len, nil, nil) + return ffi.string(str) +end + +return { + u2w = u2w, + a2w = a2w, + w2u = w2u, + w2a = w2a, + u2a = function (input) + return w2a(u2w(input)) + end, + a2u = function (input) + return w2u(a2w(input)) + end, +} diff --git a/share/script/localization.lua b/share/script/localization.lua new file mode 100644 index 0000000..2b3bb07 --- /dev/null +++ b/share/script/localization.lua @@ -0,0 +1,14 @@ +require "i18n" +require "util" +local uni = require 'ffi.unicode' + +function _(str) + return i18n.gettext(str) +end + +function __(str) + return uni.u2a(str) +end + +i18n.textdomain("MainScript"); +i18n.bindtextdomain("MainScript", fs.ydwe_path() / "share" / "locale") diff --git a/share/script/mapdump.lua b/share/script/mapdump.lua new file mode 100644 index 0000000..8347c8f --- /dev/null +++ b/share/script/mapdump.lua @@ -0,0 +1,100 @@ + +local function tohex(n) + return (n & 0xFF) + ..' '..((n >> 8) & 0xFF) + ..' '..((n >> 16) & 0xFF) + ..' '..((n >> 24) & 0xFF) +end + +local function tohex2(n) + return (n & 0xFF) + ..' '..((n >> 8) & 0xFF) +end + +return function (input, jass, write) + local maphash = require 'maphash' + local size, info, crc, sha1_a, sha1_b, sha1_c, sha1_d, sha1_e = maphash(input, jass) + write('map_size = ' .. tohex(size)) + write('map_info = ' .. tohex(info)) + write('map_crc = ' .. tohex(crc)) + write('map_sha1 = ' .. tohex(sha1_a)..' '..tohex(sha1_b)..' '..tohex(sha1_c)..' '..tohex(sha1_d)..' '..tohex(sha1_e)) + + local stormlib = require 'ffi.stormlib' + local map = stormlib.open(input, true) + if not map then + return error('Couldn\'t open map.') + end + local w2l = require 'w3x2lni' + local info = w2l:read_w3i(map:load_file 'war3map.w3i') + map:close() + local map_options = (info['选项']['对战地图'] << 2) + | (info['选项']['自定义玩家分组'] << 5) + | (info['选项']['自定义队伍'] << 6) + write('map_options = ' .. map_options) + write('map_width = ' .. tohex2(info['地形']['地图宽度'])) + write('map_height = ' .. tohex2(info['地形']['地图长度'])) + local n = info['玩家']['玩家数量'] + local players = {} + for i = 1, n do + local t = info['玩家'..i] + if t['类型'] == 1 or t['类型'] == 2 then + local ply = {} + ply.pid = 0 + ply.download_status = 255 + if t['类型'] == 1 then + ply.slot_status = 0 + ply.computer = 0 + elseif t['类型'] == 2 then + ply.slot_status = 2 + ply.computer = 1 + else + ply.slot_status = 1 + ply.computer = 0 + end + ply.colour = t['玩家'] + if t['种族'] == 1 then + -- human + ply.race = 1 + elseif t['种族'] == 2 then + -- orc + ply.race = 2 + elseif t['种族'] == 3 then + -- undead + ply.race = 8 + elseif t['种族'] == 4 then + -- nightelf + ply.race = 4 + else + -- random + ply.race = 32 + end + ply.computer_type = 1 + ply.handicap = 100 + + table.insert(players, ply) + end + end + for i = 1, info['队伍']['队伍数量'] do + for _, c in ipairs(info['队伍'..i]['玩家列表']) do + for _, ply in ipairs(players) do + if ply.colour + 1 == c then + ply.team = i - 1 + break + end + end + end + end + for i, ply in ipairs(players) do + write(('map_slot%d = %d %d %d %d %d %d %d %d %d'):format(i + , ply.pid + , ply.download_status + , ply.slot_status + , ply.computer + , ply.team + , ply.colour + , ply.race + , ply.computer_type + , ply.handicap + )) + end +end diff --git a/share/script/mpq_util.lua b/share/script/mpq_util.lua new file mode 100644 index 0000000..b5fc8f7 --- /dev/null +++ b/share/script/mpq_util.lua @@ -0,0 +1,86 @@ + +local storm = require 'ffi.storm' +local stormlib = require 'ffi.stormlib' + +mpq_util = {} + +-- 从地图中解压出文件来然后调用回调函数更新 +-- map_path - 地图路径,fs.path +-- path_in_archive - 地图压缩包中的路径,string +-- process_function - 函数,必须接收一个fs.path对象,返回一个fs.path对象 +-- 形如 function (in_path) return out_path end +-- 返回值:true表示成功,false表示失败 +function mpq_util:update_file(map_path, path_in_archive, process_function) + -- 结果 + local result = false + log.trace("mpq_util.update_file.") + + -- 打开MPQ(地图) + local mpq = stormlib.open(map_path) + if mpq then + -- 确定解压路径 + local extract_file_path = fs.ydwe_path() / "logs" / "file.out" + -- 将文件解压 + if mpq:has_file(path_in_archive) and + mpq:extract(path_in_archive, extract_file_path) + then + log.trace(path_in_archive .. " has been extracted from " .. map_path:filename():string()) + + -- 调用处理函数处理 + local success, out_file_path = pcall(process_function, mpq, extract_file_path) + -- 如果函数正常结束(没有出错) + if success then + -- 如果函数成功完成任务 + if out_file_path then + -- 替换文件 + result = mpq:add_file(path_in_archive, out_file_path) + else + -- 出现了错误 + log.error("Processor function cannot complete its task.") + end + else + -- 记录出错原因 + log.error(out_file_path) + end + + -- 删除临时文件 + --pcall(fs.remove_all, extract_file_path) + else + log.error("Cannot extract " .. path_in_archive) + end + + -- 关闭地图 + mpq:close() + else + log.error("Cannot open map archive " .. map_path:string()) + end + + return result +end + +-- 从主程序的mpq目录下载入MPQ +-- mpqname - MPQ的文件名 +-- 返回值:MPQ句柄 +function mpq_util:load_mpq(mpqname, priority) + local result = 0 + local mpq = fs.ydwe_path() / "share" / "mpq" / mpqname + + if fs.exists(mpq) then + virtual_mpq.open_path(mpq, priority) + return result + end + + mpq = fs.ydwe_path() / "share" / "mpq" / (mpqname .. ".mpq") + if fs.exists(mpq) then + result = storm.open(mpq, priority) + if result then + log.debug("Loaded " .. mpq:filename():string()) + else + log.error("Cannot load " .. mpq:filename():string()) + end + else + log.error("Cannot find " .. mpq:filename():string()) + end + + return result +end diff --git a/share/script/plugin.lua b/share/script/plugin.lua new file mode 100644 index 0000000..7e6806f --- /dev/null +++ b/share/script/plugin.lua @@ -0,0 +1,108 @@ +require "util" + +plugin = {} +plugin.loaders = {} +plugin.path = fs.ydwe_path() / "plugin" +plugin.blacklist = { 'YDTileLimitBreaker', 'YDCustomObjectId' } + +function plugin.load (self, plugin_config_path) + log.trace("Load plugin config " .. plugin_config_path:string()) + + local plugin_config = sys.ini_load(plugin_config_path) + if not plugin_config then + log.error("Cannot found plugin config.") + return + end + + local plugin_name = plugin_config['Info']['PluginName'] + + if plugin_name == '' then + log.error("Cannot plugin name.") + return + end + + for _, v in pairs(plugin.blacklist) do + if v == plugin_name then + log.trace("Blacklist.") + return + end + end + + if self.loaders[plugin_name] then + log.error(plugin_name .. " already exists.") + return + end + + if 0 == tonumber(plugin_config['Load']['Enable']) then + log.debug("Disable " .. plugin_name .. ".") + return + end + + local plugin_loader_path = plugin_config['Load']['Loader'] + if plugin_loader_path == '' then + log.error("Cannot find " .. plugin_name .. "'s loader.") + return + end + plugin_loader_path = plugin_config_path:parent_path() / plugin_loader_path + if not fs.exists(plugin_loader_path) then + log.error(plugin_name .. "'loader does not exist.") + return + end + + local s, r = pcall(dofile, __(plugin_loader_path:string())) + if not s then + log.error("Error in initialize " .. plugin_name .. "'s loader: ".. r) + return + end + + self.loaders[plugin_name] = r + + local plugin_dll_path = plugin_config['Load']['Dll'] + if plugin_dll_path == '' then + log.error("Cannot find " .. plugin_name .. "'s dll.") + return + end + plugin_dll_path = plugin_config_path:parent_path() / plugin_dll_path + if not fs.exists(plugin_dll_path) then + log.error(plugin_name .. "'dll does not exist. " .. plugin_dll_path:string()) + return + end + + s, r = pcall(self.loaders[plugin_name].load, plugin_dll_path) + + if not s then + log.error("Error in load " .. plugin_name .. ": ".. r) + self.loaders[plugin_name] = nil + return + end + + if not r then + self.loaders[plugin_name] = nil + return + end + + log.debug(plugin_name .. " loaded successfully.") + return +end + +function plugin.load_directory (self, plugin_dir) + -- 遍历目录 + for full_path in plugin_dir:list_directory() do + if fs.is_directory(full_path) then + self:load_directory(full_path) + elseif full_path:extension():string() == ".plcfg" then + self:load(full_path) + end + end +end + +function plugin.load_all (self) + self:load_directory(self.path) +end + +function plugin.unload_all (self) + for name, loader in pairs(self.loaders) do + log.trace("Unload plugin " .. name .. ".") + pcall(loader.unload) + end +end diff --git a/share/script/slk.lua b/share/script/slk.lua new file mode 100644 index 0000000..fa9ca9d --- /dev/null +++ b/share/script/slk.lua @@ -0,0 +1,500 @@ +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" +if not fs.exists(root) then + root = fs.ydwe_path() +end + +local w2l = require 'w3x2lni' +w2l:initialize(root / 'plugin' / 'w3x2lni') +w2l.mpq = root / 'share' / 'mpq' / 'units' + +function message(...) +end + +local slk +local obj +local default +local metadata +local used +local dynamics +local all +local all_chs +local old +local new + +local function try_value(t, key) + if not t then + return nil, nil, nil + end + key = key:lower() + if key == 'code' then + return 'code', t._code, nil + end + if key:sub(1, 1) == '_' then + return nil, nil, nil + end + local value = t[key] + if value then + if type(value) == 'table' then + return key, value[1], nil + else + return key, value, nil + end + end + local ikey = key .. ':1' + local value = t[ikey] + if value then + return ikey, value, nil + end + local pos = key:find("%d+$") + if not pos then + return key, nil, nil + end + local nkey = key:sub(1, pos-1) + local ikey = nkey .. ':' .. key:sub(pos) + local value = t[ikey] + if value then + return ikey, value, nil + end + local value = t[nkey] + if not value or type(value) ~= 'table' then + return nkey, nil, level + end + local level = tonumber(key:sub(pos)) + return nkey, value, level +end + +local function get_default(t) + local tp = type(t[1]) + if tp == 'number' then + if math.type(t[1]) == 'integer' then + return 0 + else + return 0.0 + end + elseif tp == 'string' then + return '' + else + return nil + end +end + +local function get_meta(key, meta1, meta2) + if key:sub(1, 1) == '_' then + return nil, nil + end + key = key:lower() + local meta = meta1 and meta1[key] or meta2 and meta2[key] + if meta then + if meta['repeat'] then + return meta, 1 + else + return meta, nil + end + end + local ikey = key .. ':1' + local meta = meta1 and meta1[ikey] or meta2 and meta2[ikey] + if meta then + return meta, nil + end + local pos = key:find("%d+$") + if not pos then + return nil, nil + end + local nkey = key:sub(1, pos-1) + local ikey = nkey .. ':' .. key:sub(pos) + local meta = meta1 and meta1[ikey] or meta2 and meta2[ikey] + if meta then + return meta, nil + end + local meta = meta1 and meta1[nkey] or meta2 and meta2[nkey] + if meta and meta['repeat'] then + return meta, tonumber(key:sub(pos)) + end + return nil, nil +end + +local function to_type(value, tp) + if tp == 0 then + value = tonumber(value) + if not value then + return nil + end + return math.floor(value) + elseif tp == 1 or tp == 2 then + return tonumber(value) + else + return tostring(value) + end +end + +local chars = {} +local string_list = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' +for i = 1, #string_list do + chars[i] = string_list:sub(i, i) +end +local function find_id(objs, dynamics, source, tag, ttype) + local id = dynamics[tag] + if id then + local obj = all[id:lower()] + if not obj then + return id + elseif obj._create then + return nil + else + dynamics[tag] = nil + dynamics[id] = nil + end + end + local first + if ttype == 'unit' or ttype == 'ability' or ttype == 'buff' then + first = source:sub(1, 1) + elseif ttype == 'item' then + first = 'I' + elseif ttype == 'destructable' then + first = 'B' + elseif ttype == 'doodad' then + first = 'D' + elseif ttype == 'upgrade' then + first = 'R' + end + if not all_chs[first] then + all_chs[first] = {1, 1, 1} + end + local chs = all_chs[first] + while true do + local id = first .. chars[chs[3]] .. chars[chs[2]] .. chars[chs[1]] + local lid = id:lower() + if not all[lid] and not dynamics[id] then + return id + end + for x = 1, 3 do + chs[x] = chs[x] + 1 + if chars[chs[x]] then + break + else + chs[x] = 1 + if x == 3 then + return nil + end + end + end + end +end + +local function create_object(t, ttype, name) + local mt = {} + function mt:__index(key) + local key, value, level = try_value(t, key) + if not value then + return '' + end + if not level then + return value + end + if level > t._max_level then + return get_default(value) or '' + end + return value[level] or '' + end + function mt:__newindex(key, nvalue) + local objt = obj[ttype][name] + if not objt or not objt.w2lobject then + return + end + local parent = objt._parent + local objd = default[ttype][parent] + local meta, level = get_meta(key, metadata[ttype], objd._code and metadata[objd._code]) + if not meta then + return + end + nvalue = to_type(nvalue, meta.type) + if not nvalue then + return + end + key = meta.field:lower() + local dvalue + if level then + dvalue = objd[key][level] or (not meta.profile and objd[key][#objd[key]]) + else + dvalue = objd[key] + end + if nvalue == dvalue then + return + end + if meta.type == 3 and #nvalue > 1023 then + nvalue = nvalue:sub(1, 1023) + end + if level then + if not objt[key] then + objt[key] = {} + end + objt[key][level] = nvalue + else + objt[key] = nvalue + end + used[ttype] = true + end + function mt:__pairs() + if not t then + return function() end + end + local nkey + local key + local level + return function () + if level then + level = level + 1 + local olevel = level + if t._max_level <= level then + level = nil + end + return key .. olevel, t[nkey][olevel] or '' + end + nkey = next(t, nkey) + if nkey == '_code' then + return 'code', t._code + end + local meta + while true do + if not nkey then + return + end + meta = get_meta(nkey, metadata[ttype], t._code and metadata[t._code]) + if meta then + break + end + nkey = next(t, nkey) + end + key = meta.field:gsub(':', '') + if type(t[nkey]) ~= 'table' then + return key, t[nkey] or '' + end + if t._max_level > 1 then + level = 1 + end + return key .. 1, t[nkey][1] or '' + end + end + local o = {} + function o:new(id) + local objd = default[ttype][name] + if not objd then + return create_object(nil, ttype, '') + end + if type(id) ~= 'string' then + return create_object(nil, ttype, '') + end + local w2lobject + if #id == 4 and not id:find('%W') then + w2lobject = 'static' + if obj[ttype][id] then + return create_object(nil, ttype, '') + end + else + w2lobject = 'dynamic|' .. id + id = find_id(obj[ttype], dynamics[ttype], name, w2lobject, ttype) + if not id then + return create_object(nil, ttype, '') + end + dynamics[ttype][w2lobject] = id + end + local new_obj = { + _id = id, + _parent = name, + _type = ttype, + _obj = true, + _code = objd._code, + _create = true, + w2lobject = w2lobject, + } + obj[ttype][id] = new_obj + all[id:lower()] = new_obj + used[ttype] = true + if old[id] then + old[id] = nil + else + new[id] = new_obj + end + return create_object(nil, ttype, id) + end + function o:get_id() + return name + end + return setmetatable(o, mt) +end + +local function create_proxy(slk, type) + local t = slk[type] + local mt = {} + function mt:__index(key) + return create_object(t[key], type, key) + end + function mt:__newindex() + end + function mt:__pairs() + return function (_, key) + local nkey = next(t, key) + if not nkey then + return + end + return nkey, self[nkey] + end + end + return setmetatable({}, mt) +end + +local function mark_obj(ttype, objs) + if not objs then + return + end + for name, obj in pairs(objs) do + if obj.w2lobject then + objs[name] = nil + old[name] = obj + used[ttype] = true + local pos = obj.w2lobject:find('|', 1, false) + if pos then + local kind = obj.w2lobject:sub(1, pos-1) + if kind == 'dynamic' then + dynamics[ttype][obj.w2lobject] = name + dynamics[ttype][name] = obj.w2lobject + end + end + else + all[name:lower()] = obj + end + end +end + +local function set_config() + local config = w2l.config + -- 转换后的目标格式(lni, obj, slk) + config.target_format = 'obj' + -- 是否分析slk文件 + config.read_slk = false + -- 是否分析lni文件 + config.read_lni = false + -- 分析slk时寻找id最优解的次数,0表示无限,寻找次数越多速度越慢 + config.find_id_times = 0 + -- 移除与模板完全相同的数据 + config.remove_same = false + -- 移除超出等级的数据 + config.remove_exceeds_level = false + -- 移除只在WE使用的文件 + config.remove_we_only = false + -- 移除没有引用的对象 + config.remove_unuse_object = false + -- mdx压缩 + config.mdx_squf = false + -- 转换为地图还是目录(mpq, dir) + config.target_storage = 'mpq' + + -- 复制一份物编文件 + config.copy_obj = true +end + +local function to_list(tbl) + local list = {} + for k in pairs(tbl) do + list[#list+1] = k + end + table.sort(list) + return list +end + +local displaytype = { + unit = '单位', + ability = '技能', + item = '物品', + buff = '魔法效果', + upgrade = '科技', + doodad = '装饰物', + destructable = '可破坏物', +} + +local function get_displayname(o1, o2) + local name + if o1._type == 'buff' then + name = o1.bufftip or o1.editorname or o2.bufftip or o2.editorname + elseif o1._type == 'upgrade' then + name = o1.name[1] or o2.name[1] + else + name = o1.name or o2.name + end + return name:sub(1, 100):gsub('\r\n', ' ') +end + +local function create_report() + local lold = to_list(old) + local lnew = to_list(new) + local lines = {} + if #lold > 0 then + lines[#lines+1] = ('移除了 %d 个对象'):format(#lold) + for i = 1, math.min(10, #lold) do + local o = old[lold[i]] + lines[#lines+1] = ("[%s][%s] '%s'"):format(displaytype[o._type], get_displayname(o, slk[o._type][o._parent]), o._id) + end + end + if #lnew > 0 then + if #lines > 0 then + lines[#lines+1] = '' + end + lines[#lines+1] = ('新建了 %d 个对象'):format(#lnew) + for i = 1, math.min(10, #lnew) do + local o = new[lnew[i]] + lines[#lines+1] = ("[%s][%s] '%s'"):format(displaytype[o._type], get_displayname(o, slk[o._type][o._parent]), o._id) + end + end + if #lines > 0 then + table.insert(lines, 1, '编辑器刚刚帮你修改了物编数据,建议重新打开地图,以便查看变化') + table.insert(lines, 2, '') + gui.message(nil, table.concat(lines, '\r\n')) + end +end + +local slk_proxy = {} + +function slk_proxy:refresh(mappath) + if not next(used) then + return + end + create_report() + local archive = require 'archive' + local ar = archive(mappath, 'w') + for _, name in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable'} do + if used[name] then + local buf = w2l:backend_obj(name, obj[name]) + log.debug('refresh object: ' .. w2l.info.obj[name]) + ar:save_file(w2l.info.obj[name], buf) + end + end + ar:close() +end + +local function initialize(mappath) + slk = {} + obj = {} + used = {} + all = {} + dynamics = {} + old = {} + new = {} + all_chs = {} + default = w2l:get_default() + metadata = w2l:metadata() + local archive = require 'archive' + local ar = archive(mappath) + set_config() + w2l:frontend(ar, slk) + for _, name in ipairs {'ability', 'buff', 'unit', 'item', 'upgrade', 'doodad', 'destructable', 'misc'} do + slk_proxy[name] = create_proxy(slk, name) + dynamics[name] = {} + obj[name] = slk['copyed_'..name] + mark_obj(name, obj[name]) + end + ar:close() +end + +initialize(__map_handle__.handle) + +return slk_proxy diff --git a/share/script/stringify_slk.lua b/share/script/stringify_slk.lua new file mode 100644 index 0000000..be57315 --- /dev/null +++ b/share/script/stringify_slk.lua @@ -0,0 +1,59 @@ +local table_concat = table.concat + +local current_x, current_y +local function get_data(x, y, k) + local str = {} + str[#str+1] = 'C' + if x ~= current_x then + current_x = x + str[#str+1] = ('X%d'):format(x) + end + if y ~= current_y then + current_y = y + str[#str+1] = ('Y%d'):format(y) + end + if tonumber(k) then + str[#str+1] = ('K%s'):format(k) + else + str[#str+1] = ('K"%s"'):format(k) + end + return table_concat(str, ';') +end + +local current_titles +local function insert_title(buf, title) + local x = #current_titles+1 + current_titles[x] = title + current_titles[title] = x + buf[#buf+1] = get_data(x, 1, title) + return x +end + +local function get_title(buf, title) + return current_titles[title] or insert_title(buf, title) +end + +local function insert_obj(buf, tbl) + local y = 1 + for name, obj in pairs(tbl) do + y = y + 1 + buf[#buf+1] = get_data(1, y, name) + for key, value in pairs(obj) do + local str = get_data(get_title(buf, key), y, value) + buf[#buf+1] = str + end + end + return y +end + +return function(t, id_title) + local buf = {'ID;PWXL;N;E', ''} + current_x = nil + current_y = nil + current_titles = {} + insert_title(buf, id_title) + local y = insert_obj(buf, t) + buf[#buf+1] = 'E' + buf[2] = ('B;X%d;Y%d;D%d'):format(#current_titles, y, 0) + return table_concat(buf, '\r\n') +end diff --git a/share/script/ui-builder/init.lua b/share/script/ui-builder/init.lua new file mode 100644 index 0000000..7d63531 --- /dev/null +++ b/share/script/ui-builder/init.lua @@ -0,0 +1,7 @@ +return { + old_reader = require 'ui-builder.old-reader', + new_reader = require 'ui-builder.new-reader', + old_writer = require 'ui-builder.old-writer', + new_writer = require 'ui-builder.new-writer', + merge = require 'ui-builder.merge', +} diff --git a/share/script/ui-builder/merge.lua b/share/script/ui-builder/merge.lua new file mode 100644 index 0000000..c74b85e --- /dev/null +++ b/share/script/ui-builder/merge.lua @@ -0,0 +1,80 @@ + +local function table_remove(a, k) + for i, v in ipairs(a) do + if v == k then + table.remove(a, i) + break + end + end +end + +local function table_append(a, b) + for _, bv in ipairs(b) do + for i, av in ipairs(a) do + if av[1] == bv[1] then + table.remove(a, i) + break + end + end + end + local pos = 1 + for _, v in ipairs(b) do + table.insert(a, pos, v) + pos = pos + 1 + end +end + +local function merge_define(a, b) + for section, keyvalue in pairs(b) do + if not a[section] then + a[section] = {} + end + table_append(a[section], keyvalue) + end +end + +local function merge_ui(type, a, b) + local aca = a.categories[type] + local bca = b.categories[type] + local aui = a.ui[type] + local bui = b.ui[type] + for k, bv in pairs(bui) do + if aui[k] then + table_remove(aca[aui[k].category], aui[k]) + end + aui[k] = bv + end + local pos = 1 + for _, category in ipairs(bca) do + if not aca[category] then + table.insert(aca, pos, category) + pos = pos + 1 + aca[category] = bca[category] + else + for i, v in ipairs(aca) do + if v == category then + pos = i + 1 + break + end + end + local a, b = aca[category], bca[category] + local pos = 1 + for _, v in ipairs(b) do + table.insert(a, pos, v) + pos = pos + 1 + end + end + end +end + +return function (a, b) + if not a then + return b + end + merge_define(a.ui.define, b.ui.define) + merge_ui('event', a, b) + merge_ui('condition', a, b) + merge_ui('action', a, b) + merge_ui('call', a, b) + return a +end diff --git a/share/script/ui-builder/new-reader.lua b/share/script/ui-builder/new-reader.lua new file mode 100644 index 0000000..56cfa41 --- /dev/null +++ b/share/script/ui-builder/new-reader.lua @@ -0,0 +1,135 @@ +local lni = require 'lni-c' + +local mt = {} +mt.__index = mt + +local function switch(value) + return function (mapping) + if mapping[value] then + mapping[value]() + end + end +end + +function mt:read_ui(type, path) + local f = io.open(path, "r") + if not f then + return + end + local lastkey + local last + local function savelast() + if not last then + return + end + last.name = lastkey + if type == 'call' then + if not last.use_in_event then + last.use_in_event = '1' + end + end + if not self.categories[type][last.category] then + self.categories[type][last.category] = {} + table.insert(self.categories[type], last.category) + end + table.insert(self.categories[type][last.category], last) + end + local t = setmetatable({}, { + __newindex = function(_, key, value) + self.ui[type][key] = value + savelast() + lastkey = key + last = value + end, + }) + local buf = f:read 'a' + f:close() + lni(buf, type, t) + savelast() +end + +function mt:reset() + self.ui = { + define = {}, + event = {}, + condition = {}, + action = {}, + call = {}, + } + self.categories = { + event = {}, + condition = {}, + action = {}, + call = {}, + } +end + +function mt:parse_define(section, key, value) + if not self.ui.define[section] then + self.ui.define[section] = {} + end + table.insert(self.ui.define[section], {key, value}) +end + +function mt:parse(section, key, value) + switch(section) { + TriggerCategories = function () + self:parse_define(section, key, value) + end, + TriggerTypes = function () + self:parse_define(section, key, value) + end, + TriggerTypeDefaults = function () + self:parse_define(section, key, value) + end, + TriggerParams = function () + self:parse_define(section, key, value) + end, + DefaultTriggerCategories = function () + self:parse_define(section, key, value) + end, + DefaultTriggers = function () + self:parse_define(section, key, value) + end, + AIFunctionStrings = function () + self:parse_define(section, key, value) + end, + } +end + +function mt:read_define(path) + local f = io.open(path, "r") + if not f then + return + end + local section = nil + for line in f:lines() do + if line:sub(1,1) == "[" then + section = line:sub(2, #line - 1) + elseif line:sub(1,2) == "//" then + elseif line ~= "" then + local first = line:find("=") + if first then + local key = line:sub(1, first - 1) + local value = line:sub(first + 1) or "" + self:parse(section, key, value) + end + end + end + f:close() +end + +function mt:read(path) + self:reset() + self:read_define(path / [[define.txt]]) + self:read_ui('event', path / [[event.txt]]) + self:read_ui('condition', path / [[condition.txt]]) + self:read_ui('action', path / [[action.txt]]) + self:read_ui('call', path / [[call.txt]]) +end + +return function(path) + local obj = setmetatable({}, mt) + obj:read(path) + return obj +end diff --git a/share/script/ui-builder/new-writer.lua b/share/script/ui-builder/new-writer.lua new file mode 100644 index 0000000..d6b1010 --- /dev/null +++ b/share/script/ui-builder/new-writer.lua @@ -0,0 +1,85 @@ +local mt = {} +mt.__index = mt + +function mt:stringify_section(str, t, section) + if not t[section] then + return + end + table.insert(str, ('[%s]'):format(section)) + for _, l in ipairs(t[section]) do + table.insert(str, ('%s=%s'):format(l[1], l[2])) + end + table.insert(str, '') +end + +function mt:stringify_define(t) + local str = {} + self:stringify_section(str, t, 'TriggerCategories') + self:stringify_section(str, t, 'TriggerTypes') + self:stringify_section(str, t, 'TriggerTypeDefaults') + self:stringify_section(str, t, 'TriggerParams') + self:stringify_section(str, t, 'DefaultTriggerCategories') + self:stringify_section(str, t, 'DefaultTriggers') + self:stringify_section(str, t, 'AIFunctionStrings') + return table.concat(str, '\n') +end + +local function constr(str) + if str:find('%s') then + return ('%q'):format(str) + end + return str +end + +function mt:stringify_ui(t) + local str = {} + for _, category in ipairs(t) do + for _, u in ipairs(t[category]) do + table.insert(str, ('[%s]'):format(constr(u.name))) + table.insert(str, ('title = %q'):format(u.title)) + table.insert(str, ('description = %q'):format(u.description)) + if u.comment then + table.insert(str, ('comment = %q'):format(u.comment)) + end + if u.script_name then + table.insert(str, ('script_name = %s'):format(u.script_name)) + end + table.insert(str, ('category = %s'):format(u.category)) + if u.use_in_event and u.use_in_event ~= '1' then + table.insert(str, ('use_in_event = %s'):format(u.use_in_event)) + end + if u.returns then + table.insert(str, ('returns = %s'):format(u.returns)) + end + for _, arg in ipairs(u.args) do + table.insert(str, '[[.args]]') + table.insert(str, ('type = %s'):format(arg.type)) + if arg.default then + table.insert(str, ('default = %q'):format(arg.default)) + end + if arg.min then + table.insert(str, ('min = %s'):format(arg.min)) + end + if arg.max then + table.insert(str, ('max = %s'):format(arg.max)) + end + end + table.insert(str, '') + end + end + return table.concat(str, '\n') +end + + +function mt:write(t) + return self:stringify_define(t.ui.define) + , self:stringify_ui(t.categories.event) + , self:stringify_ui(t.categories.condition) + , self:stringify_ui(t.categories.action) + , self:stringify_ui(t.categories.call) +end + +return function(t) + local obj = setmetatable({}, mt) + return obj:write(t) +end diff --git a/share/script/ui-builder/old-reader.lua b/share/script/ui-builder/old-reader.lua new file mode 100644 index 0000000..32d10f9 --- /dev/null +++ b/share/script/ui-builder/old-reader.lua @@ -0,0 +1,249 @@ +local mt = {} +mt.__index = mt + +local function switch(value) + return function (mapping) + if mapping[value] then + mapping[value]() + end + end +end + +local function str_trim(str, p) + return str:gsub('^'..p..'*(.-)$', '%1'):gsub('^(.-)'..p..'*$', '%1') +end + +local function str_split(str, p) + local rt = {} + local l = 1 + local state = 0 + for i = 1, #str do + local c = str:sub(i,i) + if state == 0 then + if c == '"' then + state = 1 + elseif c == p then + table.insert(rt, str:sub(l, i - 1)) + l = i + 1 + end + elseif state == 1 then + if c == '"' then + state = 0 + end + end + end + if l <= #str then + table.insert(rt, str:sub(l, #str)) + end + return rt +end + +function mt:accept_ui(type, name, key, value) + if not self.ui[type][name] then + self.ui[type][name] = { name = name } + end + local ui = self.ui[type][name] + switch(key) { + args = function () + local r = str_split(value, ',') + if type == 'call' then + ui.use_in_event = r[2] + ui.returns = r[3] + table.remove(r, 1) + table.remove(r, 1) + table.remove(r, 1) + else + table.remove(r, 1) + end + ui.args = {} + for _, v in ipairs(r) do + table.insert(ui.args, { type = v }) + end + end, + default = function () + local r = str_split(value, ',') + for i, v in ipairs(ui.args) do + if r[i] and r[i] ~= '_' then + v.default = r[i] + end + end + end, + limit = function () + local r = str_split(value, ',') + for i, v in ipairs(ui.args) do + if r[2*i-1] and r[2*i-1] ~= '_' then + v.min = r[2*i-1] + end + if r[2*i] and r[2*i] ~= '_' then + v.max = r[2*i] + end + end + end, + category = function () + ui.category = value + if not self.categories[type][ui.category] then + self.categories[type][ui.category] = {} + table.insert(self.categories[type], ui.category) + end + table.insert(self.categories[type][ui.category], ui) + end, + script_name = function () + ui.script_name = value + end, + description = function () + if not ui.title then + ui.title = str_trim(value, '"') + return + end + if ui.description then + return + end + local str = '' + local r = str_split(value, ',') + for _, s in ipairs(r) do + s = str_trim(s, '%s') + if s:sub(1,1) == '~' then + str = str .. '${' .. s:sub(2) .. '}' + else + str = str .. str_trim(s, '"') + end + end + ui.description = str + end, + comment = function () + ui.comment = str_trim(value, '"') + end, + } +end + +function mt:parse_ui(type, subtype, key, value) + if subtype == 'data' then + if key:sub(1,1) ~= '_' then + self:accept_ui(type, key, 'args', value) + elseif key:sub(- #'_Defaults', -1) == '_Defaults' then + self:accept_ui(type, key:sub(2, -1 - #'_Defaults'), 'default', value) + elseif key:sub(- #'_Limits', -1) == '_Limits' then + self:accept_ui(type, key:sub(2, -1 - #'_Limits'), 'limit', value) + elseif key:sub(- #'_Category', -1) == '_Category' then + self:accept_ui(type, key:sub(2, -1 - #'_Category'), 'category', value) + elseif key:sub(- #'_ScriptName', -1) == '_ScriptName' then + self:accept_ui(type, key:sub(2, -1 - #'_ScriptName'), 'script_name', value) + elseif key:sub(- #'_UseWithAI', -1) == '_UseWithAI' then + elseif key:sub(- #'_AIDefaults', -1) == '_AIDefaults' then + else + error('无法解析: ' .. key) + end + elseif subtype == 'string' then + if key:sub(- #'Hint', -1) == 'Hint' then + self:accept_ui(type, key:sub(1, -1 - #'Hint'), 'comment', value) + else + self:accept_ui(type, key, 'description', value) + end + else + error('未知类型: ' .. subtype) + end +end + +function mt:parse_define(section, key, value) + if not self.ui.define[section] then + self.ui.define[section] = {} + end + table.insert(self.ui.define[section], {key, value}) +end + +function mt:parse(section, key, value) + switch(section) { + TriggerEvents = function () + self:parse_ui('event', 'data', key, value) + end, + TriggerEventStrings = function () + self:parse_ui('event', 'string', key, value) + end, + TriggerConditions = function () + self:parse_ui('condition', 'data', key, value) + end, + TriggerConditionStrings = function () + self:parse_ui('condition', 'string', key, value) + end, + TriggerActions = function () + self:parse_ui('action', 'data', key, value) + end, + TriggerActionStrings = function () + self:parse_ui('action', 'string', key, value) + end, + TriggerCalls = function () + self:parse_ui('call', 'data', key, value) + end, + TriggerCallStrings = function () + self:parse_ui('call', 'string', key, value) + end, + TriggerCategories = function () + self:parse_define(section, key, value) + end, + TriggerTypes = function () + self:parse_define(section, key, value) + end, + TriggerTypeDefaults = function () + self:parse_define(section, key, value) + end, + TriggerParams = function () + self:parse_define(section, key, value) + end, + DefaultTriggerCategories = function () + self:parse_define(section, key, value) + end, + DefaultTriggers = function () + self:parse_define(section, key, value) + end, + AIFunctionStrings = function () + self:parse_define(section, key, value) + end, + } +end + +function mt:readfile(path) + local f = assert(io.open(path, "r")) + local section = nil + for line in f:lines() do + if line:sub(1,1) == "[" then + section = line:sub(2, #line - 1) + elseif line:sub(1,2) == "//" then + elseif line ~= "" then + local first = line:find("=") + if first then + local key = line:sub(1, first - 1) + local value = line:sub(first + 1) or "" + self:parse(section, key, value) + end + end + end + f:close() +end + +function mt:reset() + self.ui = { + define = {}, + event = {}, + condition = {}, + action = {}, + call = {}, + } + self.categories = { + event = {}, + condition = {}, + action = {}, + call = {}, + } +end + +function mt:read(path) + self:reset() + self:readfile(path / [[TriggerData.txt]]) + self:readfile(path / [[TriggerStrings.txt]]) +end + +return function(path) + local obj = setmetatable({}, mt) + obj:read(path) + return obj +end diff --git a/share/script/ui-builder/old-writer.lua b/share/script/ui-builder/old-writer.lua new file mode 100644 index 0000000..f2cc0e1 --- /dev/null +++ b/share/script/ui-builder/old-writer.lua @@ -0,0 +1,99 @@ +local mt = {} +mt.__index = mt + +function mt:stringify_section(str, t, section) + if not t[section] then + return + end + table.insert(str, ('[%s]'):format(section)) + for _, l in ipairs(t[section]) do + table.insert(str, ('%s=%s'):format(l[1], l[2])) + end + table.insert(str, '') +end + +function mt:stringify_ui(data_title, string_title, t) + table.insert(self.data, ('[%s]'):format(data_title)) + table.insert(self.string, ('[%s]'):format(string_title)) + + for _, category in ipairs(t) do + for _, u in ipairs(t[category]) do + table.insert(self.string, ('%s=%q'):format(u.name, u.title)) + table.insert(self.string, ('%s="%s"'):format(u.name, u.description:gsub('${(.-)}', '",~%1,"'))) + if u.comment then + table.insert(self.string, ('%sHint=%q'):format(u.name, u.comment)) + end + + local args = '' + local defaults = '' + local limits = '' + local has_default = false + local has_limit = false + if u.use_in_event then + args = args .. ',' .. u.use_in_event + end + if u.returns then + args = args .. ',' .. u.returns + end + if u.args then + for i, arg in ipairs(u.args) do + args = args .. ',' .. arg.type + if arg.default then + has_default = true + defaults = defaults .. arg.default .. ',' + else + defaults = defaults .. '_,' + end + if arg.min then + has_limit = true + limits = limits .. arg.min .. ',' + else + limits = limits .. '_,' + end + if arg.max then + has_limit = true + limits = limits .. arg.max .. ',' + else + limits = limits .. '_,' + end + end + end + table.insert(self.data, ('%s=1%s'):format(u.name, args)) + if has_default then + table.insert(self.data, ('_%s_Defaults=%s'):format(u.name, defaults:sub(1, -2))) + end + if has_limit then + table.insert(self.data, ('_%s_Limits=%s'):format(u.name, limits:sub(1, -2))) + end + table.insert(self.data, ('_%s_Category=%s'):format(u.name, u.category)) + if u.script_name then + table.insert(self.data, ('_%s_ScriptName=%s'):format(u.name, u.script_name)) + end + + table.insert(self.data, '') + table.insert(self.string, '') + end + end +end + +function mt:write(t) + self.data = {} + self.string = {} + self:stringify_section(self.data, t.ui.define, 'TriggerCategories') + self:stringify_section(self.data, t.ui.define, 'TriggerTypes') + self:stringify_section(self.data, t.ui.define, 'TriggerTypeDefaults') + self:stringify_section(self.data, t.ui.define, 'TriggerParams') + self:stringify_ui('TriggerEvents','TriggerEventStrings',t.categories.event) + self:stringify_ui('TriggerConditions','TriggerConditionStrings',t.categories.condition) + self:stringify_ui('TriggerActions','TriggerActionStrings',t.categories.action) + self:stringify_ui('TriggerCalls','TriggerCallStrings',t.categories.call) + self:stringify_section(self.data, t.ui.define, 'DefaultTriggerCategories') + self:stringify_section(self.data, t.ui.define, 'DefaultTriggers') + self:stringify_section(self.data, t.ui.define, 'AIFunctionStrings') + return table.concat(self.data, '\n'), table.concat(self.string, '\n') +end + +return function(t) + local obj = setmetatable({}, mt) + return obj:write(t) +end diff --git a/share/script/uiloader.lua b/share/script/uiloader.lua new file mode 100644 index 0000000..a7145a9 --- /dev/null +++ b/share/script/uiloader.lua @@ -0,0 +1,172 @@ +require "registry" +require "util" +local stringify_slk = require 'stringify_slk' +local ui = require 'ui-builder.init' +local txt = (require 'w3xparser').txt +local ini = (require 'w3xparser').ini +local slk = (require 'w3xparser').slk +local lni = require 'lni-c' +local info = lni(io.load(fs.ydwe_path() / 'plugin' / 'w3x2lni' / 'script' / 'info.ini')) + +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" / "share" / "mpq" +if not fs.exists(root) then + root = fs.ydwe_path() / 'share' / 'mpq' +end + +local loader = {} + +local function is_enable_japi() + local ok, result = pcall(function () + local tbl = sys.ini_load(fs.ydwe_path() / 'plugin' / 'warcraft3' / 'config.cfg') + return tbl['Enable']['yd_jass_api.dll'] ~= '0' + end) + if not ok then return true end + return result +end + +function loader:config() + self.list = {} + local f, err = io.open(root / 'config', 'r') + if not f then + log.error('Open ' .. (root / 'config'):string() .. ' failed.') + return false + end + local enable_ydtrigger = global_config["ThirdPartyPlugin"]["EnableYDTrigger"] ~= "0" + local enable_japi = is_enable_japi() + for line in f:lines() do + if not enable_ydtrigger and (string.trim(line) == 'ydtrigger') then + -- do nothing + elseif not enable_japi and (string.trim(line) == 'japi') then + -- do nothing + else + table.insert(self.list, root / string.trim(line)) + end + end + f:close() + return true +end + +local data, string +function loader:triggerdata(name, callback) + log.trace("virtual_mpq 'triggerdata'") + if #self.list == 0 then + return nil + end + local t = nil + for _, path in ipairs(self.list) do + if fs.exists(path / 'ui') then + t = ui.merge(t, ui.old_reader(path / 'ui')) + else + t = ui.merge(t, ui.new_reader(path)) + end + end + data, string = ui.old_writer(t) + return data +end + +function loader:triggerstrings(name, callback) + log.trace("virtual_mpq 'triggerstrings'") + if #self.list == 0 then + return nil + end + local r = string + data, string = nil, nil + return r +end + +function loader:worldeditstrings() + log.trace("virtual_mpq 'worldeditstrings'") + local t = ini(io.load(root / 'units' / 'ui' / 'WorldEditStrings.txt'), 'WorldEditStrings') + --t.WorldEditStrings.WESTRING_APPNAME = 'YD WorldEdit [ ' .. tostring(ydwe_version) .. ' ]' + local str = {} + str[#str+1] = "[WorldEditStrings]" + for k, v in pairs(t.WorldEditStrings) do + str[#str+1] = k .. '="' .. v .. '"' + end + return table.concat(str, '\n') +end + +local function stringify_txt(t) + local buf = {} + for id, o in pairs(t) do + buf[#buf+1] = ('[%s]'):format(id) + for k, v in pairs(o) do + for i = 1, #v do + if v[i]:find(',', 1, true) then + v[i] = '"' .. v[i] .. '"' + end + end + buf[#buf+1] = ('%s=%s'):format(k, table.concat(v, ',')) + end + end + return table.concat(buf, '\r\n') +end + +function loader:initialize() + self:config() + virtual_mpq.watch('UI\\TriggerData.txt', function (name) return self:triggerdata() end) + virtual_mpq.watch('UI\\TriggerStrings.txt', function (name) return self:triggerstrings() end) + virtual_mpq.watch('UI\\WorldEditStrings.txt', function (name) return self:worldeditstrings() end) + + for _, filename in ipairs(info.txt) do + if info.txt[1] ~= filename then + virtual_mpq.watch(filename, function () return '' end) + end + end + virtual_mpq.watch(info.txt[1], function () + local t = {} + for _, filename in pairs(info.txt) do + txt(io.load(root / 'units' / filename), filename, t) + end + txt(io.load(root / 'units' / 'ui' / 'ydwetip.txt'), 'ydwetip', t) + + local replace = {} + txt(io.load(root / 'units' / 'ui' / 'editorsuffix.txt'), 'editorsuffix', replace) + for id, o in pairs(replace) do + if not t[id] then + t[id] = o + else + for k, v in pairs(o) do + t[id][k] = v + end + end + end + return stringify_txt(t) + end) + virtual_mpq.watch('units\\abilitydata.slk', function () + local t = slk(io.load(root / 'units' / 'units' / 'abilitydata.slk'), 'abilitydata.slk') + for _, o in pairs(t) do + o.useInEditor = 1 + end + return stringify_slk(t, 'alias') + end) + virtual_mpq.watch('units\\abilitybuffdata.slk', function () + local t = slk(io.load(root / 'units' / 'units' / 'abilitybuffdata.slk'), 'abilitybuffdata.slk') + local function insert(code, sort, race) + t[code] = { + code = code, + comments = 'YDWE', + isEffect = 0, + version = 1, + useInEditor = 1, + sort = sort, + race = race, + InBeta = 1 + } + end + insert('Bdbl', 'hero', 'human') + insert('Bdbm', 'hero', 'human') + insert('BHtb', 'unit', 'other') + insert('Bsta', 'unit', 'orc') + insert('Bdbb', 'hero', 'human') + insert('BIpb', 'item', 'other') + insert('BIpd', 'item', 'other') + insert('Btlf', 'unit', 'other') + return stringify_slk(t, 'alias') + end) + virtual_mpq.event(function(_, name) + log.info('OpenPathAsArchive', name) + end) +end + +uiloader = loader diff --git a/share/script/util.lua b/share/script/util.lua new file mode 100644 index 0000000..822d9f1 --- /dev/null +++ b/share/script/util.lua @@ -0,0 +1,196 @@ +require "sys" +require "filesystem" +local uni = require 'ffi.unicode' + + +-- 根据ydwebase.dll的路径计算 +fs.__ydwe_path = fs.get(fs.DIR_MODULE):remove_filename():remove_filename() +log.debug('ydwe path ' .. fs.__ydwe_path:string()) + +function fs.ydwe_path() + return fs.__ydwe_path +end + +function fs.war3_path() + return fs.__war3_path +end + + +local root = fs.ydwe_path():parent_path():remove_filename():remove_filename() / "Component" +if not fs.exists(root) then + root = fs.ydwe_path() +end + +package.path = package.path .. ';' .. uni.u2a((root / 'plugin' / 'w3x2lni' / 'script' / '?.lua'):string()) + + +-- 给路径末尾,扩展名前添加内容 +-- 效果:("abc.w3x", "def") -> "abcdef.w3x" +function fs.aux_filename(self, str) + return self:parent_path() / (self:stem():string() .. str .. self:extension():string()) +end + +io.__open = io.open +function io.open(file_path, mode) + local f, e = io.__open(__(file_path:string()), mode) + if f then + if not mode or (not mode:match('b') and mode:match('r')) then + if f:read(3) ~= '\xEF\xBB\xBF' then + f:seek('set', 0) + end + end + end + return f, e +end + +io.__lines = io.lines +function io.lines(file_path) + return io.__lines(__(file_path:string())) +end + +-- 载入一个文件的内容 +-- file_path - 文件路径, 必须是fs.path类型 +-- 返回文件内容, nil表示出错 +function io.load(file_path) + local f, e = io.open(file_path, "rb") + + if f then + local content = f:read("*a") + f:close() + return content + else + return nil, e + end +end + +-- 保存一个文件的内容 +-- file_path - 文件路径, 必须是fs.path类型 +-- content - 文件内容,必须是字符串 +-- 返回true表示成功,false表示失败 +function io.save(file_path, content) + local f, e = io.open(file_path, "wb") + + if f then + f:write(content) + f:close() + return true + else + return false, e + end +end + +-- 比较2个浮点数是否相等 +-- a, b - 要比较的2个浮点数 +-- eps - 精确度阈值 +-- 返回值:true表示2个数的差在精确阈值内(相等),false表明不在阈值内 +function math.feq(a, b, eps) + if not eps then eps = 1e-10 end + return math.abs(a - b) < eps +end + +function string.trim (self) + return self:gsub("^%s*(.-)%s*$", "%1") +end + +function string.from_objectid (id) + return string.pack('= self:new() + end, + new = function (self) + if not _war3_version_124 then + _war3_version_124 = sys.war3_version { major = 1, minor = 24} + end + return _war3_version_124 + end, + old = function (self) + if not _war3_version_120 then + _war3_version_120 = sys.war3_version { major = 1, minor = 20} + end + return _war3_version_120 + end, +} + +local _war3_version__mt = { + __index = _war3_version__index, + __lt = _version__lt, + __le = _version__le, + __eq = _version__eq, + __tostring = _version__tostring, +} + +function sys.war3_version (c) + return setmetatable(_version_initialize(c), _war3_version__mt) +end diff --git a/share/script/ydwe_on_dialog_message.lua b/share/script/ydwe_on_dialog_message.lua new file mode 100644 index 0000000..60d80bc --- /dev/null +++ b/share/script/ydwe_on_dialog_message.lua @@ -0,0 +1,21 @@ +local wes = sys.ini_load(fs.ydwe_path() / "share" / "mpq" / "units" / "ui" / "worldeditstrings.txt") +local WESTRING_MODIFYTEXTURES = wes['WorldEditStrings']['WESTRING_MODIFYTEXTURES'] +local tiledialog = 0 + +function event.EVENT_DIALOG_MESSAGE(event_data) + if event_data.message == gui.WM_SETTEXT then + if event_data.lparam == WESTRING_MODIFYTEXTURES then + tiledialog = event_data.handle + end + elseif event_data.message == gui.WM_COMMAND then + if event_data.handle == tiledialog then + -- Delete style + gui.enable_dialog_item(event_data.handle, 0x10, true) + -- Add style + gui.enable_dialog_item(event_data.handle, 0x11, true) + -- Replace style + gui.enable_dialog_item(event_data.handle, 0x12, true) + end + end + return 0 +end diff --git a/share/script/ydwe_on_menu.lua b/share/script/ydwe_on_menu.lua new file mode 100644 index 0000000..4181bde --- /dev/null +++ b/share/script/ydwe_on_menu.lua @@ -0,0 +1,113 @@ + + +-- 主窗口句柄 +local main_window_handle = nil + +-- 启动配置对话框 +local function launch_config() + local config_program = fs.ydwe_path() / "bin" / "YDWEConfig.exe" + local command_line = string.format('"%s"', config_program:string()) + sys.spawn(command_line, fs.ydwe_path()) +end + +-- 启动魔兽 +local function launch_warcraft3() + local config_program = fs.ydwe_path() / "bin" / "YDWEConfig.exe" + local command_line = string.format('"%s" -launchwar3', config_program:string()) + sys.spawn(command_line, fs.ydwe_path()) +end + +-- 显示最近一次编译错误 +local function show_last_error() + local jasshelper_path = fs.ydwe_path() / "plugin" / "jasshelper" / "jasshelper.exe" + local command_line = string.format('"%s" --showerrors', jasshelper_path:string()) + sys.spawn(command_line, fs.ydwe_path()) +end + +-- 显示JassHelper版本 +local function show_jasshelper_version() + local jasshelper_path = fs.ydwe_path() / "plugin" / "jasshelper" / "jasshelper.exe" + local command_line = string.format('"%s" --about', jasshelper_path:string()) + sys.spawn(command_line, fs.ydwe_path()) +end + +-- 显示cJass版本 +local function show_cjass_version() + local cjass_path = fs.ydwe_path() / "plugin" / "AdicHelper" / "AdicHelper.exe" + local command_line = cjass_path:string() + sys.spawn(command_line, fs.ydwe_path()) +end + +-- 打开平台官网 +local function open_platform_site() + os.execute('explorer "http://dz.163.com"') +end + +-- 打开作者之家 +local function open_authors_home_site() + os.execute('explorer "http://rpg.dz.163.com/"') +end + +-- Lua测试 +local function lua_test() + -- 打开对话框让用户输入 + local ok, script_string = gui.prompt_for_input( + main_window_handle, -- 父窗口句柄 + _("Lua Test"), -- 标题栏 + _("Please enter the lua script to execute"), -- 提示语句 + "", -- 文本编辑区初始文字 + _("OK"), -- “确定”按钮文本 + _("Cancel") -- “取消"按钮文本 + ) + + if ok then + log.trace("Execute code: " .. script_string) + local code = load(script_string) + if code then + local ok, result = pcall(code) + if ok then + log.trace("Code execution OK. Result: " .. tostring(result)) + else + gui.error_message(nil, _("Error occured when executing code: ") .. tostring(result)) + log.warn("Code execution failed. Error: " .. tostring(result)) + end + else + gui.error_message(nil, _("There are syntax errors in your code.")) + log.warn("Syntax error found in the code.") + end + end +end + +-- 初始化菜单 +-- event_data - 事件参数,table,包含以下值 +-- main_window_handle - 主窗口的handle +-- main_menu_handle - 主菜单的handle +-- 返回值:一律返回0 +function event.EVENT_INIT_MENU(event_data) + log.debug("********************* on menuinit start *********************") + + -- 处理一下Tile Limit Breaker插件 + if plugin then + if plugin.loaders['YDTileLimitBreaker'] and plugin.loaders['YDTileLimitBreaker'].start then + plugin.loaders['YDTileLimitBreaker'].start() + end + end + + local menu = gui.menu(event_data.main_menu_handle, _("&YDWE")) + menu:add(_("YDWE &Config"), launch_config) + menu:add(_("Launch &Warcraft3"), launch_warcraft3) + menu:add(_("Show las&t compile result"), show_last_error) + menu:add(_("Show J&assHelper version"), show_jasshelper_version) + menu:add(_("Show c&Jass version"), show_cjass_version) + menu:add(_("&Lua Test"), lua_test) + local menu2 = gui.menu(event_data.main_menu_handle, _("&Platform")) + menu2:add(_("Launch Platform &official website"), open_platform_site) + menu2:add(_("Launch Author's &Home"), open_authors_home_site) + menu2:add(_("Cre&dits"), show_credit) + + main_window_handle = event_data.main_window_handle + + log.debug("********************* on menuinit end *********************") + + return 0 +end diff --git a/share/script/ydwe_on_new_object_id.lua b/share/script/ydwe_on_new_object_id.lua new file mode 100644 index 0000000..edfd354 --- /dev/null +++ b/share/script/ydwe_on_new_object_id.lua @@ -0,0 +1,111 @@ +require "filesystem" +require "util" +require "localization" +local ffi = require "ffi" +local lni = require 'lni-c' + +local path = fs.ydwe_path() / 'plugin' / 'w3x2lni' / 'script' / 'prebuilt' / 'default' +local default = {} +local function get_default(type) + if not default[type] then + default[type] = lni(io.load(path / (type .. '.ini'))) + end + return default[type] +end + +local object = {} + +local object_type = { + [0] = 'unit', + [1] = 'item', + [2] = 'destructable', + [3] = 'doodad', + [4] = 'ability', + [5] = 'buff', + [6] = 'upgrade', +} + +function object:original_has (this_, id_string_) + local this_ptr_ = ffi.cast('uint32_t*', this_) + local ptr = this_ptr_[7] + 4 + local size = this_ptr_[6] + + for i = 0, size-2 do + local id = ffi.cast('uint32_t*', ptr)[0] + if string.from_objectid(id) == id_string_ then + return true + end + ptr = ptr + 24 + end + + return false +end + +function object:custom_has (type_, id_string_) + if not object_type[type_] then + return false + end + if not get_default(object_type[type_])[id_string_] then + return false + end + return true +end + + +-- 在新建物体的时候调用,本函数根据用户的操作决定新ID值 +-- object_type - 整数类型,物体的类型 +-- default_id - 整数类型,系统生成的ID +-- 返回值:新建物体的最终ID,必须是整数类型 +function event.EVENT_NEW_OBJECT_ID(event_data) + log.debug("**************** on new object id start ****************") + + local object_type = event_data.object_type + local default_id = event_data.default_id + -- 刷新配置数据 + global_config_reload() + + -- 如果没有选择手动输入则直接返回 + if tonumber(global_config["FeatureToggle"]["EnableManualNewId"]) == 0 then + log.trace("Disable.") + return default_id + end + + -- 获取当前窗口 + local foregroundWindow = gui.get_foreground_window() + + -- 循环直到输入合法或者放弃 + while true do + -- 打开对话框让用户输入 + local ok, id_string = gui.prompt_for_input( + foregroundWindow, -- 父窗口句柄 + _("New Object Id"), -- 标题栏 + _("Please input new object ID, or cancel to use the default one."), -- 提示语句 + string.from_objectid(default_id), -- 文本编辑区初始文字 + _("OK"), -- “确定”按钮文本 + _("Cancel") -- “取消"按钮文本 + ) + + -- 用户点了确定,验证输入是否合法。如果点了取消,使用系统默认 + if not ok then + log.trace("User cancel.") + return default_id + end + + -- 检查输入是否合法(字符串长度是否为4) + if #id_string ~= 4 then + log.trace("User input error(" .. tostring(id_string) .. ").") + -- 提示错误 + gui.error_message(foregroundWindow, _("You have entered an invalid ID. The ID must contain just 4 letters or digits. It cannot contain chars other than those in ASCII.")) + elseif object:custom_has(object_type, id_string) or object:original_has(event_data.class, id_string) then + log.trace("User input error(" .. tostring(id_string) .. ").") + -- 提示错误 + gui.error_message(foregroundWindow, _("You have entered an invalid ID. This ID already exists.")) + else + -- 合法,转换为整数返回 + log.trace("Result " .. tostring(id_string)) + return string.to_objectid(id_string) + end + + end + return 0 +end diff --git a/share/script/ydwe_on_save.lua b/share/script/ydwe_on_save.lua new file mode 100644 index 0000000..f3be7bc --- /dev/null +++ b/share/script/ydwe_on_save.lua @@ -0,0 +1,211 @@ +require "compile.inject_code" +require "compile.wave" +require "compile.template" +require "compile.cjass" +require "compile.jasshelper" +require "compile.native" +require "mpq_util" + +-- 确定应当把地图保存为适合老版本(< 1.24)还是新版本(>= 1.24)的 +-- 对于保存为双份,按照当前魔兽版本处理 +-- save_type - 保存类型,0到3的取值,意义同设置程序,从上到下依次为0到3 +-- runtime_version - 魔兽版本 +-- 返回值: 数,如果保存的目标版本和当前版本一致,返回当前版本,否则视情况返回1.20或者1.24(和当前版本不同) +local function determine_map_version(save_type, runtime_version) + -- 固定旧版本 + if save_type == 1 then + return runtime_version:is_new() and runtime_version:old() or runtime_version + -- 固定新版本 + elseif save_type == 2 then + return runtime_version:is_new() and runtime_version or runtime_version:new() + else + -- 按照当前版本或者双份 + return runtime_version + end +end + +-- 编译地图 +-- map_path - 地图路径,string或者fs.path +-- option - 编译选项,table类型,支持的选项: +-- enable_preprocessor - 启用wave预处理器,true/false +-- enable_jasshelper - 启用JassHelper,true/false +-- enable_jasshelper_debug - 启用JassHelper的Debug,true/false +-- enable_jasshelper_optimization - 启用优化,true/false +-- enable_cjass - 启用cJass编译器,true/false +-- script_injection - 代码注入选项,整数,0表示智能注入,1表示不注入 +-- runtime_version - 魔兽版本 +-- 返回:true表示成功,false表示失败 +local function compile_map(map_path, option) + -- 统一处理fs.path + if type(map_path) == "string" then map_path = fs.path(map_path) end + -- 结果 + local result = nil + + log.trace("Save version " .. tostring(option.runtime_version)) + + local compile_t = { + ['option'] = option, + ['map_path'] = map_path, + } + + -- 如果JassHelper开启,执行正常编译 + if option.enable_jasshelper then + result = mpq_util:update_file(map_path, "war3map.j", + -- 解压缩地图脚本,处理然后写回 + function (map_handle, in_script_path) + -- 开始处理 + log.trace("Processing " .. in_script_path:filename():string()) + + compile_t.input = in_script_path + compile_t.output = nil + compile_t.map_handle = map_handle + compile_t.inject_file = function (file_path, path_in_archive) + log.trace("[stormlib]import file", path_in_archive) + return map_handle:add_file(path_in_archive, file_path) + end + + -- 未启用用cJass + if not option.enable_cjass then + -- 根据注入选项进行处理(由于Lua的closure,此处可以访问“父”函数的局部变量) + if option.script_injection == 0 then + if not inject_code:compile(compile_t) then + return nil + end + compile_t.input = compile_t.output + end + + -- Wave预处理 + if not wave:compile(compile_t) then + return nil + end + compile_t.input = compile_t.output + end + + if not template:compile(compile_t) then + return nil + end + + return compile_t.output + end + ) + + -- 开始调用编译工具编译 + if result then + -- 调用cJass + if option.enable_cjass then + result = cjass:compile(map_path, option) + end + + -- 调用jasshelepr + if result then + result = jasshelper:compile(map_path, option) + end + end + + native:compile(compile_t) + else + -- 只做语法检查 + result = jasshelper:compile(map_path, option) + end + + return result +end + +-- 本函数当保存地图时调用 +-- event_data - 事件参数。table类型,包含了以下成员 +-- map_path - 保存的地图路径,字符串类型 +-- 返回值:0和正数表示保存成功,负数表示保存失败。如果成功编译,一般返回0 +function event.EVENT_SAVE_MAP(event_data) + log.debug("********************* on save start *********************") + + -- 刷新配置数据 + global_config_reload() + + -- 当前保存的地图路径 + local map_path = fs.path(event_data.map_path) + log.trace("Saving " .. map_path:string()) + + -- 获取保存类型 + local save_type = tonumber(global_config["MapSave"]["Option"]) + + -- 获取保存选项 + local save_option = { + -- 是否启用JassHelper + enable_jasshelper = (global_config["ScriptCompiler"]["EnableJassHelper"] ~= "0"), + -- 是否使用脚本模式编译 + enable_jasshelper_scriptonly = (global_config["ScriptCompiler"]["EnableJassHelperScriptOnly"] == "1"), + -- 是否是调试模式 + enable_jasshelper_debug = (global_config["ScriptCompiler"]["EnableJassHelperDebug"] == "1"), + -- 是否优化地图 + enable_jasshelper_optimization = (global_config["ScriptCompiler"]["EnableJassHelperOptimization"] ~= "0"), + -- 是否启用cJass + enable_cjass = (global_config["ScriptCompiler"]["EnableCJass"] == "1"), + -- 目标魔兽版本 + runtime_version = determine_map_version(save_type, war3_version), + -- 代码注入选项 + script_injection = tonumber(global_config["ScriptInjection"]["Option"]), + -- 是否启用YDTrigger + enable_yd_trigger = plugin.loaders['YDTrigger'] ~= nil, + -- pjass的版本 + pjass = global_config["PJass"]["Option"], + } + + -- cjass和脚本注入不能共存 + if save_option.enable_cjass then + save_option.script_injection = false + end + + -- 如果保存双份,需要预先拷贝 + local map_path_aux = nil + if save_type == 3 then + -- 决定第二份的路径 + if save_option.runtime_version:is_new() then + map_path_aux = fs.aux_filename(map_path, "hashtable") + else + map_path_aux = fs.aux_filename(map_path, "returnbug") + end + + log.trace("Making copy of the original map.") + + -- true代表覆盖现有文件。false不会覆盖 + pcall(fs.copy_file, map_path, map_path_aux, true) + end + + -- 编译地图 + local result = compile_map(map_path, save_option) + + -- 如果有第二份,此时处理第二份 + if map_path_aux then + log.trace("Processing second map") + save_option.runtime_version = save_option.runtime_version:is_new() and save_option.runtime_version:old() or save_option.runtime_version:new() + compile_map(map_path_aux, save_option) + end + + log.debug("Result " .. tostring(result)) + log.debug("********************* on save end *********************") + + if result then return 0 else return -1 end +end + +-- 本函数当保存地图时调用 +-- event_data - 事件参数。table类型,包含了以下成员 +-- map_path - 保存的地图路径,字符串类型 +function event.EVENT_PRE_SAVE_MAP(event_data) + log.debug("********************* on pre_save start *********************") + local map_path = fs.path(event_data.map_path) + log.trace("Saving " .. map_path:string()) + + -- 如果地图文件带有只读属性,则先询问是否去掉只读属性 + -- 128 == 0200 S_IWUSR + if fs.exists(map_path) and 0 == (map_path:permissions() & 128) then + if gui.yesno_message(nil, _("Whether to remove the read-only attribute from \"%s\"?"), map_path:string()) then + log.trace("Remove the read-only attribute.") + map_path:add_permissions(128) + else + log.trace("Don't the remove read-only attribute.") + end + end + + log.debug("********************* on pre_save end *********************") + return 0 +end diff --git a/share/script/ydwe_on_startup.lua b/share/script/ydwe_on_startup.lua new file mode 100644 index 0000000..3acf4c0 --- /dev/null +++ b/share/script/ydwe_on_startup.lua @@ -0,0 +1,232 @@ +require "compile.inject_code" +require "compile.native" +local stormlib = require 'ffi.stormlib' + +-- 版本信息 +ydwe_version = sys.version {} +war3_version = sys.war3_version {} + +local function initialize_reg() + local reg = registry.open [[HKEY_CURRENT_USER\Software\Blizzard Entertainment\WorldEdit]] + -- 不弹用户协议 + --reg["Has Been Run"] = { registry.REG_DWORD, 1 } + if not reg["Visible UI Elements"] then + -- 关掉刷子表 + reg["Visible UI Elements"] = { registry.REG_DWORD, 0x2B } + end + if not reg["New Map On Startup"] then + -- 启动时不创建新地图 + reg["New Map On Startup"] = { registry.REG_DWORD, 0 } + end + -- 某些UI的颜色 + local reg = registry.open [[HKEY_CURRENT_USER\Software\Blizzard Entertainment\WorldEdit\Trigger Display Colors]] + reg["TC_YDHIDE"] = { registry.REG_DWORD, 0xffff0000 } + reg["TC_COMMENT"] = { registry.REG_DWORD, 0xff008000 } +end + +-- 检查魔兽目录下是否有可能引起冲突的文件夹 +local function check_conflicting_ui() + log.trace("check_conflicting_ui") + local file_list = {"ui/WarcraftIIIFTLogo.blp", "ui/miscdata.txt", "ui/triggerdata.txt", "ui/triggerstrings.txt", "ui/worldeditdata.txt", "ui/worldeditstrings.txt"} + local found = false + + for index, file in ipairs(file_list) do + if fs.exists(fs.war3_path() / file) then + found = true + break + end + end + + if found then + if gui.yesno_message(nil, string.format(_("YDWE has detected that there is a directory named \"%s\" located in Warcraft 3 installation directory. It may prevent YDWE from working. Do you want to delete it?"), 'UI'), _("YDWE")) then + for index, file in ipairs(file_list) do + log.debug("remove file " .. (fs.war3_path() / file):string()) + pcall(fs.remove_all, fs.war3_path() / file) + end + end + end +end + +local function check_conflicting_units() + log.trace("check_conflicting_units") + local units_dir = fs.war3_path() / 'Units' + local found = false + + for file in units_dir:list_directory() do + if not fs.is_directory(file) then + found = true + break + end + end + + if found then + if gui.yesno_message(nil, _("YDWE has detected that there is a directory named \"%s\" located in Warcraft 3 installation directory. It may prevent YDWE from working. Do you want to delete it?"), 'Units') then + for file in units_dir:list_directory() do + if not fs.is_directory(file) then + log.debug("remove file " .. file:string()) + pcall(fs.remove_all, file) + end + end + end + end +end + +-- 清除可能引起冲突的文件 +local function clear_potential_conflicting() + log.trace("clear_potential_conflicting") + -- 需要清理的文件列表 + local file_list = {"MiscData.txt", "TriggerData.txt", "TriggerStrings.txt", "WorldEditData.txt", "WorldEditLayout.txt", "WorldEditStrings.txt", "war3map.j", "blizzard.j", "Scripts/blizzard.j", "common.j", "Scripts/common.j"} + + for index, file in ipairs(file_list) do + if fs.exists(fs.war3_path() / file) then + log.debug("remove file " .. (fs.war3_path() / file):string()) + pcall(fs.remove, fs.war3_path() / file) + end + end +end + +-- 从魔兽中得到是否是1.24。通过搜索common.j有没有导出StringHash +-- 返回值:两个,魔兽版本,错误信息。如果没有错误,错误信息为nil +local function get_war3_version_from_script() + local err = "Cannot extract file from warcraft" + local common_j_path = fs.ydwe_path() / "logs" / "common.j" + local mpq = stormlib.open(fs.war3_path() / 'War3Patch.mpq', true) + if mpq then + if mpq:has_file("common.j") then + mpq:extract("common.j", common_j_path) + elseif mpq:has_file("scripts\\common.j") then + mpq:extract("scripts\\common.j", common_j_path) + else + return war3_version, err + end + mpq:close() + + local s, e = io.load(common_j_path) + if not s then + return war3_version, e + end + + if s:find("StringHash") then + return war3_version:new(), nil + else + return war3_version:old(), nil + end + end + + return war3_version, err +end + +-- 检测魔兽的版本 +local function check_war3_version() + log.trace("check_war3_version") + + -- 检查“版本转换器”等造成的game.dll和war3patch.mpq不一致的问题 + if tonumber(global_config["MapSave"]["Option"]) == 0 then + -- 检测魔兽中包含的脚本文件所代表的版本 + local script_war3_version, e = get_war3_version_from_script() + + if e then + log.warn("Cannot get warcraft 3 version from script: " .. e) + else + -- 二者如果不一致,则提示 + if war3_version:is_new() ~= script_war3_version:is_new() then + gui.error_message(nil, _("YDWE has detected that your game.dll and war3patch.mpq mismatch. It may be caused by the so called \"Warcraft Version Converter\". This situation will cause a failure on saving and testing maps. It is strongly recommended to use the offical patched provided by Blizzard.")) + end + end + end +end + + +-- 显示制作者和感谢信息 +function show_credit() + we.message_show(" ----------------------------------------------") + we.message_show(" Welcome to WorldEdit ") + we.message_show(" ----------------------------------------------") + we.message_show(" Official website: http://rpg.dz.163.com/") + we.message_show(" ") + we.message_show(" *** THANKS ***") + we.message_show(" YDWE Team") + we.message_show(" JassNewGenPack for ideas at www.wc3c.net") + we.message_show(" Vexorian for his jasshelper compiler") + we.message_show(" ADOLF and VD for their cjass compiler & TESH") + we.message_show(" ...") + we.message_show(" And all users & supporters, including") + we.message_show(" YOU") +end + + +-- 本函数在编辑器启动时调用,可以在本函数中载入一些插件 +-- event_data - 事件参数 +-- 暂无内容 +-- 返回值:返回非负数表示成功,负数表示失败 +function event.EVENT_WE_START(event_data) + log.debug("********************* on startup start *********************") + + -- 读取版本 + ydwe_version = sys.version { file = fs.ydwe_path() / "ydwe.exe" } + war3_version = sys.war3_version { file = fs.war3_path() / "game.dll" } + + log.debug("ydwe version " .. tostring(ydwe_version)) + log.debug("war3 version " .. tostring(war3_version)) + + -- 刷新配置数据 + global_config_reload() + + -- 检测UI和Units目录 + check_conflicting_ui() + check_conflicting_units() + + -- 检查魔兽目录下是否有可能引起冲突的文件夹 + clear_potential_conflicting() + + -- 检测魔兽的版本 + check_war3_version() + + -- 载入Patch MPQ + mpq_util:load_mpq("units", 14) + mpq_util:load_mpq("war3", 14) + + -- 加载插件 + plugin:load_all() + + -- 初始化UI加载器 + uiloader:initialize() + + -- 载入注入代码配置 + inject_code:initialize() + native:initialize() + + initialize_reg() + + -- 显示感谢信息 + show_credit() + + log.debug("********************* on startup end *********************") + + return 0 +end + +-- 本函数在编辑器关闭时调用,可以在本函数中作一些清理工作 +-- event_data - 事件参数。table类型,暂时没有内容。 +-- 返回值:一定要返回0 +function event.EVENT_WE_EXIT(event_data) + log.debug("********************* on exit start *********************") + + plugin:unload_all() + + log.debug("********************* on exit end *********************") + + return 0 +end + +-- 在WE载入MSS引擎解码器时调用,过滤载入的dll +-- event_data - 事件参数,table,包含以下值 +-- library_name - 解码器路径,字符串 +-- 返回非负数表示允许载入,负数表示不允许。无特殊情况一般返回0 + +function event.EVENT_MSS_LOAD(event_data) + log.debug("Loading provider " .. event_data.library_name) + + -- 全部放行 + return 0 +end diff --git a/share/script/ydwe_on_test.lua b/share/script/ydwe_on_test.lua new file mode 100644 index 0000000..70b95cc --- /dev/null +++ b/share/script/ydwe_on_test.lua @@ -0,0 +1,197 @@ +local stormlib = require 'ffi.stormlib' +local w2l = require 'w3x2lni' +local mapdump = require 'mapdump' + +local mt = {} +mt.__index = mt + +function mt:process_create(command_line, current_dir) + if self.h then + self.h:kill() + self.h = nil + end + + local p = sys.process() + p:hide_window() + if not p:create(nil, command_line, current_dir) then + log.error('Executed failed: ', command_line) + return + end + log.trace('Executed: ', command_line) + self.h = p +end + +function mt:__gc() + if self.h then + self.h:kill() + self.h = nil + end +end + +local ydhost = setmetatable({}, mt) + +local function getplayernum(mappath) + local ok, result = pcall(function() + local map = stormlib.open(mappath, true) + if not map then + return 0 + end + local w3i = map:load_file('war3map.w3i') + local tbl = w2l:read_w3i(w3i) + local n = 0 + if tbl['选项']['自定义玩家分组'] == 0 then + n = tbl['玩家']['玩家数量'] + else + for i = 1, tbl['玩家']['玩家数量'] do + if tbl['玩家'..i]['类型'] == 1 then + n = n + 1 + end + end + end + map:close() + return n + end) + if ok then return result end + return 0 +end + + +local function single_test(commandline, mappath) + return '"' .. (fs.war3_path() / 'war3.exe'):string() .. '" -loadfile "' .. mappath:string() .. '"' .. commandline +end + +local function path_sub(a, b) + local i = a + local r = fs.path('') + while i ~= '' and i ~= b do + r = i:filename() / r + i = i:parent_path() + end + return r +end + +local function host_copy_dll(curdir) + pcall(fs.copy_file, fs.ydwe_path() / 'bin' / 'vcruntime140.dll', curdir / 'vcruntime140.dll', true) + pcall(fs.copy_file, fs.ydwe_path() / 'bin' / 'msvcp140.dll', curdir / 'msvcp140.dll', true) +end + +local function get_war3_version() + if global_config["War3Patch"]["Option"] == "1" then + if global_config["MapSave"]["Option"] == "1" then + return sys.war3_version { + major = 1, + minor = 20, + revision = 4, + build = 6074, + } + else + return sys.war3_version { + major = 1, + minor = 24, + revision = 4, + build = 6387, + } + end + elseif global_config["War3Patch"]["Option"] == "2" then + return sys.war3_version { + file = fs.ydwe_path() / 'share' / 'patch' / global_config["War3Patch"]["DirName"] / 'Game.dll' + } + end + return war3_version +end + +local function host_save_config(curdir, mappath, autostart) + local ver = get_war3_version() + local jasspath + if ver:is_new() then + jasspath = fs.ydwe_path() / "jass" / "system" / "ht" + else + jasspath = fs.ydwe_path() / "jass" / "system" / "rb" + end + local of = io.open(curdir / 'map.cfg', 'wb') + local ok, e = pcall(mapdump, mappath, jasspath, + function(s) + of:write(s .. '\n') + end + ) + of:close() + if not ok then + log.error('') + end + local tbl = { + lan_war3version = ver.minor, + bot_defaultgamename = mappath:filename():string(), + bot_autostart = autostart, + bot_mappath = path_sub(mappath, fs.war3_path()):string(), + bot_mapcfgpath = 'map.cfg', + } + local str = '' + for k, v in pairs(tbl) do + str = str .. tostring(k) .. ' = ' .. tostring(v) .. '\n' + end + io.save(curdir / 'ydhost.cfg', str) +end + +local function host_test(commandline, mappath) + local host_test = tonumber(global_config["HostTest"]["Option"]) + local curdir = fs.ydwe_path() / 'plugin' / 'ydhost' + host_copy_dll(curdir) + host_save_config(curdir, mappath, host_test + 1) + ydhost:process_create(curdir / 'ydhost.exe', curdir) + local cmd = '"' .. (fs.war3_path() / 'war3.exe'):string() .. '"' .. commandline .. ' -auto' + if host_test == 0 then + return cmd, 1 + end + return cmd, getplayernum(mappath) +end + +-- 本函数在测试地图时使用 +-- event_data - 事件参数,table,包含以下值 +-- map_path - 保存的地图路径,字符串类型 +-- application_name - 应用程序名,字符串对象 +-- command_line - 命令行,字符串对象 +-- 返回:非负表示成功,负数表示失败。如成功且无特殊情况原则上应该返回0 +function event.EVENT_TEST_MAP(event_data) + log.debug("********************* on test start *********************") + + -- 刷新配置数据 + global_config_reload() + + -- 获取当前测试的地图名 + local mappath = fs.path(event_data.map_path) + log.debug("Testing " .. mappath:string()) + log.debug("Testing " .. event_data.command_line) + + -- 附加命令行 + local commandline = "" + local n = 0 + + -- 是否OpenGL方式? + if global_config["MapTest"]["LaunchRenderingEngine"] == "OpenGL" then + commandline = commandline .. " -opengl" + end + + -- 是否窗口方式? + if global_config["MapTest"]["LaunchWindowed"] ~= "0" then + commandline = commandline .. " -window" + end + + commandline = commandline .. ' -ydwe "' .. fs.ydwe_path():string() .. '"' + + log.debug("Testing " .. tostring(global_config["MapTest"]["EnableHost"])) + if global_config["MapTest"]["EnableHost"] == "1" then + commandline, n = host_test(commandline, mappath) + else + commandline, n = single_test(commandline, mappath), 1 + end + + local result = false + -- 启动魔兽开始测试... + for i = 1, n do + local war3_helper_dll = fs.ydwe_path() / "plugin" / "warcraft3" / "yd_loader.dll" + result = sys.spawn_inject(event_data.application_name, commandline, nil, war3_helper_dll) + end + + log.debug("********************* on test end *********************") + if result then return 0 else return -1 end +end diff --git a/【第一次必看】新手教程.txt b/【第一次必看】新手教程.txt new file mode 100644 index 0000000..87fe38c --- /dev/null +++ b/【第一次必看】新手教程.txt @@ -0,0 +1,21 @@ +1,请检查您的魔兽争霸是否为1.27版本,或用魔兽争霸官方对战平台重新下载一份魔兽争霸1.27, +请注意:魔兽争霸和编辑器建议单独放到盘符下,举例: +-编辑器为:F:\WorldEdit v1.2.9D;魔兽争霸为:F:\Warcraft III Frozen Throne; +请注意: +-不推荐中文路径目录或多重套娃行为,例如:F:\dzclient\魔兽争霸 中文版\WorldEdit v1.2.9D +-v1.2.9D等格式仅为编辑器或作者之家发布更新的版本号,实际仍为魔兽争霸1.27版本的编辑器; + +2,如第一次使用作者之家下载的魔兽争霸1.27版本编辑器,请解压:【第一次使用需要手动安装插件.rar】 +并将里面的内容直接复制粘贴到魔兽争霸目录下 + +3,如曾经启动过魔兽争霸 1.32重制版 或1.32编辑器/启动器等,因魔兽争霸版本间注册表高版本覆盖低版本会导致版本冲突, +请运行一下注册表修复.reg即可修复;如仍存在类似问题,请修复按键盘win+R键,输入regedit, +找到如下路径分别删除【WorldEdit】和【Warcraft III】,用于直接清空魔兽争霸全部的注册表 +HKEY_CURRENT_USER\SOFTWARE\Blizzard Entertainment\WorldEdit +HKEY_CURRENT_USER\SOFTWARE\Blizzard Entertainment\Warcraft III + +4,编辑器或在平台上开房间如出现崩溃等情况,在无触发问题下,可以设置窗口化并锁定鼠标启动,且开启OpenGL模式 +如设置后可正常启动,请检查模型相关的格式或贴图倍数是否异常(魔兽争霸贴图格式为*32倍数) + + +5,制图学习交流,可加入-魔兽地图萌新学院qq群:583702917 \ No newline at end of file diff --git a/【第一次必看】编辑器新手教程-图文升级版.docx b/【第一次必看】编辑器新手教程-图文升级版.docx new file mode 100644 index 0000000..2a290f3 Binary files /dev/null and b/【第一次必看】编辑器新手教程-图文升级版.docx differ diff --git a/更新内容(网易).txt b/更新内容(网易).txt new file mode 100644 index 0000000..c17e00e --- /dev/null +++ b/更新内容(网易).txt @@ -0,0 +1,13 @@ +ҵapi£ + +1.¼ +עʵʱƷ¼ +ҹƷЧ +2. +жʵʩƷ +ж̳ǵ߹ +3. +ָҵߵĹ + +һߴ5Ʒʾ5Ʒʾһ + diff --git a/注册表修复.reg b/注册表修复.reg new file mode 100644 index 0000000..e092bec Binary files /dev/null and b/注册表修复.reg differ